Files
reddit/r2/r2/templates/trophycase.html
ketralnis 2869eaf8b9 New features:
* Activate negative-result caching for HardCache chain
    * begin migration to pylibmc:
       * Add pylibmc to the list of required packages in preparation for the replacement of the memcached library
       * Start using pylibmc for the rendercaches
    * Tweak the computation of the normalized hot page to be a bit faster when the precomputer is available, by relying on the precomputer's internal permacached structure.
    * Default to a SelfEmptyingCache for scripts run from `paster run'.  Note that processes that run forever are still responsible for resetting their local-caches, but this can now be done with g.reset_caches()
    * threaded messaging patch part 1: backend changes only.  This will allow migrate.py to be run to move new onto inbox and will start tracking message trees for users.
    * Specify some queries to run at most once per day
    * Refactored safemarkdown() and added soup testing

    Additions:
    * Added _byID_rel()
    * Made error messages more verbose for:
       1. byID lookups of too-big thing_ids
       2. memcache failures
       3. Solr Nones
    * Award._all_awards() now sorts by date
    * Trophy.by_{account,award}() now cache properly
    * new feedback page with helpful links
    * Try to reduce the length of the query-queue by not adding known-long queries at all, rather than adding them and skipping them
    * whitespace clean up
    * simplify the 'why did my CC get denied' email checking.
    * added missing translation strings and users now get PMs when they are added as translators

    Bugfixes:
    * Fix a bug in unsaving
    * BeautifulSoup stopped hosting 3.0.7a, but 3.0.8 still uses the good parser
    * Better search error handling
    * Properly reset the cache-chains (incl. the hardcache; d'oh!) per-request
    * Fix an attribute error on listings where some items have author_ids and some don't
    * Bug when forcing recalculation of memoized functions
    * the subreddit creation and edit form aren't dealing with errors properly
    * buttons fix
2010-05-17 13:27:17 -07:00

120 lines
3.4 KiB
HTML

## The contents of this file are subject to the Common Public Attribution
## License Version 1.0. (the "License"); you may not use this file except in
## compliance with the License. You may obtain a copy of the License at
## http://code.reddit.com/LICENSE. The License is based on the Mozilla Public
## License Version 1.1, but Sections 14 and 15 have been added to cover use of
## software over a computer network and provide for limited attribution for the
## Original Developer. In addition, Exhibit A has been modified to be consistent
## with Exhibit B.
##
## Software distributed under the License is distributed on an "AS IS" basis,
## WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
## the specific language governing rights and limitations under the License.
##
## The Original Code is Reddit.
##
## The Original Developer is the Initial Developer. The Initial Developer of the
## Original Code is CondeNet, Inc.
##
## All portions of the code written by CondeNet are Copyright (c) 2006-2010
## CondeNet, Inc. All Rights Reserved.
###############################################################################
<%namespace file="printablebuttons.html" import="ynbutton" />
<%def name="trophy_info(trophy, center)">
<td class="trophy-info"
%if center:
colspan="2"
%endif
>
<div>
%if hasattr(trophy, "url"):
<a href="${trophy.url}">
%endif
<img class="trophy-icon" src="${trophy._thing2.imgurl % 40}" />
<br/>
<span class="trophy-name">${trophy._thing2.title}</span>
<br/>
%if hasattr(trophy, "description"):
<span class="trophy-description">${trophy.description}</span>
<br/>
%endif
%if hasattr(trophy, "url"):
</a>
%endif
%if c.user_is_admin:
${ynbutton(_("remove"), _("removed"), "removetrophy", "hide_thing",
hidden_data=dict(trophy_fn=trophy._id36))}
%endif
</div>
</td>
</%def>
%if c.user_is_admin and thing.cup_info:
<div class="cup-info-box">
cup:
&#32;
<img src="${thing.cup_info['img_url']}" alt="[image not found]" />
<br/>
&laquo;
<tt>${thing.cup_info["label_template"] % dict(user=thing.user.name)}</tt>
&raquo;
<br/>
show cup until:
${thing.cup_info["expiration"].astimezone(g.display_tz).strftime("%Y-%m-%d %H:%M:%S %Z")}
&#32;
${ynbutton(_("remove"), _("removed"), "removecup", "hide_thing",
hidden_data=dict(account=thing.user.name))}
</div>
%endif
## for now
%if not thing.trophies:
<div class="dust">${_("dust")}</div>
%endif
<%def name="trophy_table(trophies, header='')">
${unsafe(header)}
<table class="trophy-table">
%for i, trophy in enumerate(trophies):
%if i % 2 == 0:
<tr>
%endif
${trophy_info(trophy, i == len(trophies) - 1)}
%if i % 2 == 1:
</tr>
%endif
%endfor
%if len(trophies) % 2 == 1:
</tr>
%endif
</table>
</%def>
${trophy_table(thing.trophies)}
%if thing.dupe_trophies:
<p>
(
<a href="javascript:void(0)"
onclick="$('.dupe-trophies').show();$(this).parent().hide();return false">
${_("%d more") % len(thing.dupe_trophies)}
</a>
)
</p>
<div class="dupe-trophies" style="display: none">
${trophy_table(thing.dupe_trophies)}
</div>
%endif
%if c.user_is_admin and thing.invisible_trophies:
${trophy_table(thing.invisible_trophies, "<p>Invisibles:</p>")}
%endif