This is more scary. First of all, it doesn't make sense to combined `strip_html=True` with `safe` because there's no need to use `safe` if the HTML is stripped. 
Secondly, I think it's probably not a good idea to allow newline character to become `<br>` here. We have less space in the sidebar so I think it's nice that all linebreaks collapse into one paragraph. 

Now, the `words=10` is really scary too. What if you have something like this:
```
one two three four five six <a href="http://something">seven eight nine ten eleven</a> twelve thirteen.
```
If you chop that at 10 words you'll get 
```
one two three four five six <a href="http://something">seven eight nine ten...
```
which means you're exposing invalid HTML. 

It's basically too risky. 
I think we should, for the sidebar, strip ALL HTML and not allow any HTML or linebreaks.

Basically, I think you should leave it the way it was to start with but add `strip_html=True`. 

However, that's not enough. Even the name `strip_html` isn't good. It sounds like it "strips" it which to me sounds like "removes" or "rids". But that's not what it does. What it does is that it replaces the HTML with wiki/markdown looking text. And even worse, it only does this if the event doesn't have a short_description!

I think you should extend `short_desc()` to take  a new parameter called `remove_html`. When that's set to True, it should convert:

```
one two <a href="http://www.something">three</a> four.
```
to 
```
one two three four.
```
So, finally it should look something like this:

```
<p>{{ short_desc(live, 10, remove_html=True) }}
```
You're going to need to write lots of tests but I'm happy to help you.