## 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 reddit Inc.
##
## All portions of the code written by reddit are Copyright (c) 2006-2012
## reddit Inc. All Rights Reserved.
###############################################################################

<%namespace file="utils.html" import="plain_link" />

<%def name="flair(user, enabled=None)">
  %if enabled is None:
    <% enabled = user.flair_enabled %>
  %endif
  %if user.has_flair and enabled:
    <span class="flair ${user.flair_css_class}" title="${user.flair_text}">${user.flair_text}</span>
  %endif
</%def>

%if context_deleted and not c.user_is_admin:
  <span class="author">[deleted]</span>
%else:
  %if thing.user_deleted:
    <span class="author">[deleted]</span>
  %elif thing.name == '[blocked]':
    <span class="author">${_(thing.thing.original_author.name)}</span>
  %else:
    %if thing.flair_position == 'left':
      ${flair(thing, enabled=thing.force_show_flair)}
    %endif
    <%
      classes = [thing.author_cls, 'id-%s' % thing.fullname]
      if thing.include_flair_selector:
          classes.append('flairselectable')
    %>
    ${plain_link(thing.name + thing.karma, "/user/%s" % thing.name,
                 _class = ' '.join(classes),
                 _sr_path = False, target='_blank' if c.user.pref_newwindow else target, title=thing.author_title)}
    %if thing.flair_position == 'right':
      ${flair(thing, enabled=thing.force_show_flair)}
    %endif
    %if thing.include_flair_selector:
      (<a class="flairselectbtn" href="javascript://void(0)">${_('edit')}</a>)
      <div class="flairselector drop-choices"></div>
      <form><input type="hidden" name="name" value="${thing.name}"></form>
    %endif
    <span class="userattrs">
    %if thing.attribs:
      [
      %for priority, abbv, css_class, label, attr_link, img in thing.attribs:
        %if attr_link:
          <a class="${css_class}" title="${label}"
          %if target:
             target="${target}"
          %endif
             href="${attr_link}">
          %if img:
            <% (src, alt, width, height) = img %>
            <img src="${src}" alt="${alt}" width="${width}" height="${height}"/>
          %else:
            ${unsafe(abbv)}
          %endif
          </a>
        %else:
          <span class="${css_class}" title="${label}">${abbv}</span>
        %endif
        ## this is a hack to print a comma after all but the final attr
        %if priority != thing.attribs[-1][0]:
          ,
        %endif
      %endfor
      ]
    %endif
    </span>
  %endif
%endif

%if thing.ip_span:
  ${unsafe(thing.ip_span)}
%endif

%if c.user_is_admin and thing.context_thing:
  &#32;
  <a class="adminbox" href="/details/${thing.context_thing._fullname}">i</a>
%endif
