Advertisement
Guest User

Untitled

a guest
Sep 21st, 2019
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.38 KB | None | 0 0
  1. <xf:title page="{$page}">{$user.username}</xf:title>
  2. <xf:h1 hidden="true" />
  3.  
  4. <xf:macro template="metadata_macros" name="metadata"
  5. arg-shareUrl="{{ link('canonical:members', $user) }}"
  6. arg-canonicalUrl="{{ link('canonical:members', $user, {'page': $page}) }}"
  7. arg-imageUrl="{$user.getAvatarUrl('o', null, true)}" />
  8.  
  9. <xf:page option="ldJsonHtml">
  10. <script type="application/ld+json">
  11. {
  12. "@context": "https://schema.org",
  13. "@type": "Person",
  14. "name": "{$user.username|escape('json')}",
  15. "image": "{$user.getAvatarUrl('o', null, true)|escape('json')}"
  16. }
  17. </script>
  18. </xf:page>
  19.  
  20. <xf:css src="member.less" />
  21.  
  22. <div class="block">
  23. <div class="block-container">
  24. <div class="block-body">
  25. <div class="memberHeader">
  26.  
  27. <div class="memberHeader-main">
  28. <span class="memberHeader-avatar">
  29. <span class="avatarWrapper">
  30. <xf:avatar user="{$user}" size="l"
  31. href="{{ $user.getAvatarUrl('o') ?: '' }}" />
  32. <xf:if is="$user.user_id == $xf.visitor.user_id && $xf.visitor.canUploadAvatar()">
  33. <a class="avatarWrapper-update" href="{{ link('account/avatar') }}" data-xf-click="overlay"><span>{{ phrase('edit') }}</span></a>
  34. </xf:if>
  35. </span>
  36. </span>
  37. <div class="memberHeader-content memberHeader-content--info">
  38. <xf:if contentcheck="true">
  39. <div class="memberHeader-actionTop">
  40. <xf:contentcheck>
  41. <!--[XF:action_top_start]-->
  42. <xf:if contentcheck="true">
  43. <div class="buttonGroup">
  44. <xf:contentcheck>
  45. <xf:if is="$user.canBeReported()">
  46. <xf:button href="{{ link('members/report', $user) }}"
  47. class="button--link" overlay="true">
  48. {{ phrase('report_verb') }}
  49. </xf:button>
  50. </xf:if>
  51. <xf:if contentcheck="true">
  52. <div class="buttonGroup-buttonWrapper">
  53. <xf:button class="button--link menuTrigger" data-xf-click="menu" aria-expanded="false" aria-haspopup="true">{{ phrase('moderator_tools') }}</xf:button>
  54. <div class="menu" data-menu="menu" aria-hidden="true">
  55. <div class="menu-content">
  56. <h3 class="menu-header">{{ phrase('moderator_tools') }}</h3>
  57. <xf:contentcheck>
  58. <xf:macro template="member_macros" name="moderator_menu_actions"
  59. arg-user="{$user}"
  60. arg-context="profile" />
  61. </xf:contentcheck>
  62. </div>
  63. </div>
  64. </div>
  65. </xf:if>
  66. </xf:contentcheck>
  67. </div>
  68. </xf:if>
  69. <!--[XF:action_top_end]-->
  70. </xf:contentcheck>
  71. </div>
  72. </xf:if>
  73.  
  74. <h1 class="memberHeader-name"><xf:username user="{$user}" rich="true" href="" /></h1>
  75.  
  76. <xf:if contentcheck="true">
  77. <div class="memberHeader-banners">
  78. <xf:contentcheck><xf:userbanners user="$user" /></xf:contentcheck>
  79. </div>
  80. </xf:if>
  81.  
  82. <xf:userblurb user="$user" tag="div" class="memberHeader-blurb" />
  83.  
  84. <div class="memberHeader-blurb">
  85. <dl class="pairs pairs--inline">
  86. <dt>{{ phrase('joined') }}</dt>
  87. <dd><xf:date time="$user.register_date" /></dd>
  88. </dl>
  89. </div>
  90.  
  91. <xf:if contentcheck="true">
  92. <div class="memberHeader-blurb">
  93. <dl class="pairs pairs--inline">
  94. <dt>{{ phrase('last_seen') }}</dt>
  95. <dd dir="auto">
  96. <xf:contentcheck><xf:useractivity user="$user" class="pairs--plainLabel" /></xf:contentcheck>
  97. </dd>
  98. </dl>
  99. </div>
  100. </xf:if>
  101. </div>
  102. </div>
  103.  
  104. <div class="memberHeader-content">
  105. <div class="memberHeader-stats">
  106. <div class="pairJustifier">
  107. <xf:macro template="member_macros" name="member_stat_pairs"
  108. arg-user="{$user}"
  109. arg-context="profile" />
  110. </div>
  111. </div>
  112.  
  113. <xf:if contentcheck="true">
  114. <hr class="memberHeader-separator" />
  115.  
  116. <div class="memberHeader-buttons">
  117. <xf:contentcheck>
  118. <xf:macro template="member_macros" name="member_action_buttons"
  119. arg-user="{$user}"
  120. arg-context="profile" />
  121. </xf:contentcheck>
  122. </div>
  123. </xf:if>
  124. </div>
  125.  
  126. </div>
  127. </div>
  128. <h2 class="block-tabHeader block-tabHeader--memberTabs tabs hScroller"
  129. data-xf-init="tabs h-scroller"
  130. data-panes=".js-memberTabPanes"
  131. data-state="replace"
  132. role="tablist">
  133. <span class="hScroller-scroll">
  134. <!--[XF:tabs:start]-->
  135. <xf:if is="$user.canViewPostsOnProfile()">
  136. <a href="{{ link('members', $user) }}"
  137. class="tabs-tab is-active"
  138. role="tab"
  139. aria-controls="profile-posts">{{ phrase('profile_posts') }}</a>
  140. </xf:if>
  141.  
  142. <xf:if is="$user.canViewLatestActivity()">
  143. <a href="{{ link('members/latest-activity', $user) }}"
  144. rel="nofollow"
  145. class="tabs-tab"
  146. id="latest-activity"
  147. role="tab">{{ phrase('latest_activity') }}</a>
  148. </xf:if>
  149.  
  150. <a href="{{ link('members/recent-content', $user) }}"
  151. rel="nofollow"
  152. class="tabs-tab"
  153. id="recent-content"
  154. role="tab">{{ phrase('postings') }}</a>
  155.  
  156. <!--[XF:tabs:after_recent_content]-->
  157.  
  158. <a href="{{ link('members/about', $user) }}"
  159. class="tabs-tab"
  160. id="about"
  161. role="tab">{{ phrase('about') }}</a>
  162.  
  163. <xf:if is="$xf.visitor.canViewWarnings() && $user.warning_count">
  164. <a href="{{ link('members/warnings', $user) }}"
  165. class="tabs-tab"
  166. id="warnings"
  167. role="tab">{{ phrase('warnings') }}</a>
  168. </xf:if>
  169. <!--[XF:tabs:end]-->
  170. </span>
  171. </h2>
  172. </div>
  173. </div>
  174.  
  175. <xf:ad position="member_view_below_tabs" arg-user="{$user}" />
  176.  
  177. <ul class="tabPanes js-memberTabPanes">
  178. <!--[XF:tab_panes:start]-->
  179. <xf:if is="$user.canViewPostsOnProfile()">
  180. <li class="is-active" role="tabpanel" id="profile-posts">
  181. <xf:js src="xf/inline_mod.js" min="1" />
  182. <div class="block block--messages" data-xf-init="inline-mod" data-type="profile_post" data-href="{{ link('inline-mod') }}">
  183. <div class="block-container">
  184. <div class="block-body js-replyNewMessageContainer">
  185. <xf:if is="$user.canPostOnProfile()">
  186. <xf:set var="$firstProfilePost" value="{$profilePosts|first}" />
  187. <xf:macro template="profile_post_macros" name="quick_post"
  188. arg-user="{$user}"
  189. arg-lastDate="{{ $firstProfilePost.post_date ?: 0 }}"
  190. arg-containerSelector="< .js-replyNewMessageContainer" />
  191. </xf:if>
  192.  
  193. <xf:if is="$profilePosts is not empty">
  194. <xf:foreach loop="$profilePosts" value="$profilePost">
  195. <xf:macro template="profile_post_macros"
  196. name="{{ $profilePost.message_state == 'deleted' ? 'profile_post_deleted' : 'profile_post' }}"
  197. arg-profilePost="{$profilePost}" />
  198. </xf:foreach>
  199. <xf:else />
  200. <div class="block-row js-replyNoMessages">{{ phrase('there_no_messages_on_xs_profile_yet', {'name': $user.username}) }}</div>
  201. </xf:if>
  202. </div>
  203. </div>
  204.  
  205. <div class="block-outer block-outer--after">
  206. <xf:pagenav
  207. page="{$page}" perpage="{$perPage}" total="{$total}"
  208. link="members" data="{$user}"
  209. wrapperclass="block-outer-main" />
  210. <div class="block-outer-opposite">
  211. <xf:showignored />
  212. <xf:if is="$canInlineMod">
  213. <xf:macro template="inline_mod_macros" name="button" />
  214. </xf:if>
  215. </div>
  216. </div>
  217. </div>
  218. </li>
  219. </xf:if>
  220.  
  221. <xf:if is="$user.canViewLatestActivity()">
  222. <li data-href="{{ link('members/latest-activity', $user) }}" role="tabpanel" aria-labelledby="latest-activity">
  223. <div class="blockMessage">{{ phrase('loading...') }}</div>
  224. </li>
  225. </xf:if>
  226.  
  227. <li data-href="{{ link('members/recent-content', $user) }}" role="tabpanel" aria-labelledby="recent-content">
  228. <div class="blockMessage">{{ phrase('loading...') }}</div>
  229. </li>
  230.  
  231. <!--[XF:tab_panes:after_recent_content]-->
  232.  
  233. <li data-href="{{ link('members/about', $user) }}" role="tabpanel" aria-labelledby="about">
  234. <div class="blockMessage">{{ phrase('loading...') }}</div>
  235. </li>
  236.  
  237. <xf:if is="$xf.visitor.canViewWarnings() && $user.warning_count">
  238. <li data-href="{{ link('members/warnings', $user) }}" role="tabpanel" aria-labelledby="warnings">
  239. <div class="blockMessage">{{ phrase('loading...') }}</div>
  240. </li>
  241. </xf:if>
  242. <!--[XF:tab_panes:end]-->
  243. </ul>
  244.  
  245. <xf:widgetpos id="member_view_sidebar" context-user="{$user}" position="sidebar" />
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement