details.html 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244
  1. {% extends "cranefly/profiles/profile.html" %}
  2. {% load i18n %}
  3. {% load humanize %}
  4. {% load url from future %}
  5. {% import "_forms.html" as form_theme with context %}
  6. {% import "cranefly/macros.html" as macros with context %}
  7. {% block title %}{{ macros.page_title(_('Member Details'), profile.username) }}{% endblock %}
  8. {% block tab %}
  9. <div class="user-details">
  10. <div class="row">
  11. <div class="span6">
  12. <table class="table table-striped">
  13. <thead>
  14. <tr>
  15. <th colspan="2">
  16. {% trans %}Account Details{% endtrans %}
  17. </th>
  18. </tr>
  19. </thead>
  20. <tbody>
  21. {% if acl.users.can_see_users_emails() %}
  22. <tr>
  23. <td class="span2">
  24. <strong>{% trans %}E-mail Address{% endtrans %}</strong>
  25. </td>
  26. <td class="span4">
  27. <a href="mailto:{{ profile.email }}">{{ profile.email }}</a>
  28. </td>
  29. </tr>
  30. {% endif %}
  31. <tr>
  32. <td class="span2">
  33. <strong>{% trans %}Member Since{% endtrans %}</strong>
  34. </td>
  35. <td class="span4">
  36. {{ profile.join_date|date }}
  37. </td>
  38. </tr>
  39. <tr>
  40. <td class="span2">
  41. <strong>{% trans %}Last Seen{% endtrans %}</strong>
  42. </td>
  43. <td class="span4">
  44. {% if not hidden or acl.users.can_see_hidden_users() %}
  45. {{ profile.last_date|reltimesince }} <span class="muted">{{ profile.last_date|date("DATETIME_FORMAT") }}</span>
  46. {% else %}
  47. <em class="muted">{% trans %}Hidden{% endtrans %}</em>
  48. {% endif %}
  49. </td>
  50. </tr>
  51. </tbody>
  52. </table>
  53. <table class="table table-striped">
  54. <thead>
  55. <tr>
  56. <th colspan="2">
  57. {% trans %}Forums Activity{% endtrans %}
  58. </th>
  59. </tr>
  60. </thead>
  61. <tbody>
  62. <tr>
  63. <td class="span2">
  64. <strong>{% trans %}Posts Written{% endtrans %}</strong>
  65. </td>
  66. <td class="span4">
  67. {{ profile.posts|intcomma }}
  68. </td>
  69. </tr>
  70. <tr>
  71. <td class="span2">
  72. <strong>{% trans %}Threads Started{% endtrans %}</strong>
  73. </td>
  74. <td class="span4">
  75. {{ profile.threads|intcomma }}
  76. </td>
  77. </tr>
  78. <tr>
  79. <td class="span2">
  80. <strong>{% trans %}Votes Cast{% endtrans %}</strong>
  81. </td>
  82. <td class="span4">
  83. {{ profile.votes|intcomma }}
  84. </td>
  85. </tr>
  86. </tbody>
  87. </table>
  88. </div>
  89. <div class="span6">
  90. <table class="table table-striped">
  91. <thead>
  92. <tr>
  93. <th colspan="2">
  94. {% trans %}Ranking Performance{% endtrans %}
  95. </th>
  96. </tr>
  97. </thead>
  98. <tbody>
  99. <tr>
  100. <td class="span2">
  101. <strong>{% trans %}Rank{% endtrans %}</strong>
  102. </td>
  103. <td class="span4">
  104. {% if profile.rank %}{{ _(profile.rank.name) }}{% else %}<em>{% trans %}Not Ranked{% endtrans %}</em>{% endif %}
  105. </td>
  106. </tr>
  107. {% if settings.ranking_positions_visible or settings.ranking_scores_visible %}
  108. <tr>
  109. <td class="span2">
  110. <strong>{% if settings.ranking_positions_visible %}{% trans %}Ranking Position{% endtrans %}{% else %}{% trans %}Score{% endtrans %}{% endif %}</strong>
  111. </td>
  112. <td class="span4">
  113. {% if settings.ranking_positions_visible %}
  114. #{{ profile.get_ranking()|intcomma }}{% if settings.ranking_scores_visible %} <span class="muted">{{ profile.score|intcomma }}</span>{% endif %}
  115. {% else %}{{ profile.score|intcomma }}
  116. {% endif %}
  117. </td>
  118. </tr>
  119. {% endif %}
  120. <tr>
  121. <td class="span2">
  122. <strong>{% trans %}Karma Received{% endtrans %}</strong>
  123. </td>
  124. <td class="span4">
  125. <span class="label label-success">+ {{ profile.karma_p }}</span> / <span class="label label-important">- {{ profile.karma_n }}</span></strong>
  126. </td>
  127. </tr>
  128. <tr>
  129. <td class="span2">
  130. <strong>{% trans %}Karma Given{% endtrans %}</strong>
  131. </td>
  132. <td class="span4">
  133. <span class="label label-success">+ {{ profile.karma_given_p }}</span> / <span class="label label-important">- {{ profile.karma_given_n }}</span></strong>
  134. </td>
  135. </tr>
  136. </tbody>
  137. </table>
  138. <table class="table table-striped">
  139. <thead>
  140. <tr>
  141. <th colspan="2">
  142. {% trans %}Interactions{% endtrans %}
  143. </th>
  144. </tr>
  145. </thead>
  146. <tbody>
  147. <tr>
  148. <td class="span2">
  149. <strong>{% trans %}Followers{% endtrans %}</strong>
  150. </td>
  151. <td class="span4">
  152. {{ profile.followers|intcomma }}
  153. </td>
  154. </tr>
  155. <tr>
  156. <td class="span2">
  157. <strong>{% trans %}Following{% endtrans %}</strong>
  158. </td>
  159. <td class="span4">
  160. {{ profile.following|intcomma }}
  161. </td>
  162. </tr>
  163. </tbody>
  164. </table>
  165. </div>
  166. </div>
  167. {% if acl.users.can_see_users_trails() %}
  168. <hr>
  169. <div class="row">
  170. <div class="span6">
  171. <table class="table table-striped">
  172. <thead>
  173. <tr>
  174. <th colspan="2">
  175. {% trans %}Registration Details{% endtrans %}
  176. </th>
  177. </tr>
  178. </thead>
  179. <tbody>
  180. <tr>
  181. <td class="span2">
  182. <strong>{% trans %}IP Address{% endtrans %}</strong>
  183. </td>
  184. <td class="span4">
  185. {{ profile.join_ip }}
  186. </td>
  187. </tr>
  188. <tr>
  189. <td class="span2">
  190. <strong>{% trans %}UserAgent String{% endtrans %}</strong>
  191. </td>
  192. <td class="span4">
  193. {% if profile.join_agent %}{{ profile.join_agent }}{% else %}<em class="muted">{% trans %}Created from console{% endtrans %}</em>{% endif %}
  194. </td>
  195. </tr>
  196. </tbody>
  197. </table>
  198. </div>
  199. <div class="span6">
  200. <table class="table table-striped">
  201. <thead>
  202. <tr>
  203. <th colspan="2">
  204. {% trans %}Last Visit Details{% endtrans %}
  205. </th>
  206. </tr>
  207. </thead>
  208. <tbody>
  209. <tr>
  210. <td class="span2">
  211. <strong>{% trans %}IP Address{% endtrans %}</strong>
  212. </td>
  213. <td class="span4">
  214. {{ profile.last_ip }}
  215. </td>
  216. </tr>
  217. <tr>
  218. <td class="span2">
  219. <strong>{% trans %}UserAgent String{% endtrans %}</strong>
  220. </td>
  221. <td class="span4">
  222. {% if profile.last_agent %}{{ profile.last_agent }}{% else %}<em class="muted">{% trans %}Created from console{% endtrans %}</em>{% endif %}
  223. </td>
  224. </tr>
  225. </tbody>
  226. </table>
  227. </div>
  228. </div>
  229. </div>
  230. {% endif %}
  231. {% endblock %}