overlay extra details for persona_preview
This commit is contained in:
Родитель
0c65e9ff98
Коммит
982799c16e
|
@ -137,11 +137,11 @@ def addon_listing_header(context, url_base, sort_opts, selected, experimental):
|
|||
|
||||
@register.inclusion_tag('addons/persona_preview.html')
|
||||
@jinja2.contextfunction
|
||||
def persona_preview(context, persona, size='large', linked=True):
|
||||
def persona_preview(context, persona, size='large', linked=True, extra=None):
|
||||
preview_map = {'large': persona.preview_url,
|
||||
'small': persona.thumb_url}
|
||||
|
||||
c = dict(context.items())
|
||||
c.update({'persona': persona, 'addon': persona.addon, 'linked': linked,
|
||||
'size': size, 'preview': preview_map[size]})
|
||||
'size': size, 'preview': preview_map[size], 'extra': extra})
|
||||
return c
|
||||
|
|
|
@ -375,7 +375,7 @@ class Persona(caching.base.CachingMixin, models.Model):
|
|||
tens = (self.persona_id // 10) % 10
|
||||
return base_url % {
|
||||
'units': units, 'tens': tens, 'file': filename,
|
||||
'id': self.persona_id
|
||||
'id': self.persona_id,
|
||||
}
|
||||
|
||||
@amo.cached_property
|
||||
|
@ -394,7 +394,7 @@ class Persona(caching.base.CachingMixin, models.Model):
|
|||
hexcolor = lambda color: '#%s' % color
|
||||
addon = self.addon
|
||||
return json.dumps({
|
||||
'id': unicode(self.persona_id), # Personas dislikes ints
|
||||
'id': unicode(self.persona_id), # Personas dislikes ints
|
||||
'name': unicode(addon.name),
|
||||
'accentcolor': hexcolor(self.accentcolor),
|
||||
'textcolor': hexcolor(self.textcolor),
|
||||
|
|
|
@ -5,7 +5,22 @@
|
|||
<{{ tag }} {{ ('href="%s" ' % addon.get_url_path())|safe if
|
||||
linked else '' }}
|
||||
title="{{ addon.name }}" style="background-image:url('{{ preview }}')"
|
||||
data-browsertheme="{{ persona.json_data }}"></{{ tag }}>
|
||||
data-browsertheme="{{ persona.json_data }}">
|
||||
{% if extra == 'created' %}
|
||||
<span class="crearatingted">
|
||||
{{ _('Added {0}')|f(addon.created|datetime) }}
|
||||
</span>
|
||||
{% elif extra == 'popular' %}
|
||||
<span class="users">
|
||||
{{ _('<b>{0}</b> users')|f(addon.persona.popularity|numberfmt)|safe }}
|
||||
</span>
|
||||
{% elif extra == 'rating' %}
|
||||
{# TODO(jbalogh): call this rating when remora is gone. #}
|
||||
<span class="reviews">
|
||||
{{ addon.bayesian_rating|stars }} {{ addon.total_reviews|numberfmt }}
|
||||
</span>
|
||||
{% endif %}
|
||||
</{{ tag }}>
|
||||
|
||||
{% if linked %}
|
||||
{# TODO persona install button on hover #}
|
||||
|
|
Загрузка…
Ссылка в новой задаче