nodebb-theme-persona 11.3.1 → 11.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (220) hide show
  1. package/.eslintrc +2 -2
  2. package/README.md +14 -14
  3. package/languages/de/persona.json +3 -3
  4. package/languages/en-GB/persona.json +2 -2
  5. package/languages/en-US/persona.json +2 -2
  6. package/languages/fr/persona.json +3 -3
  7. package/languages/pl/persona.json +3 -3
  8. package/languages/pt-PT/persona.json +2 -2
  9. package/languages/tr/persona.json +4 -4
  10. package/languages/zh-CN/persona.json +4 -4
  11. package/less/bootstrap/.csscomb.json +297 -297
  12. package/less/bootstrap/.csslintrc +19 -19
  13. package/less/bootstrap/alerts.less +73 -73
  14. package/less/bootstrap/badges.less +66 -66
  15. package/less/bootstrap/bootstrap.less +50 -50
  16. package/less/bootstrap/breadcrumbs.less +26 -26
  17. package/less/bootstrap/button-groups.less +243 -243
  18. package/less/bootstrap/buttons.less +160 -160
  19. package/less/bootstrap/carousel.less +269 -269
  20. package/less/bootstrap/close.less +34 -34
  21. package/less/bootstrap/code.less +69 -69
  22. package/less/bootstrap/component-animations.less +33 -33
  23. package/less/bootstrap/forms.less +574 -574
  24. package/less/bootstrap/glyphicons.less +305 -305
  25. package/less/bootstrap/grid.less +84 -84
  26. package/less/bootstrap/input-groups.less +166 -166
  27. package/less/bootstrap/jumbotron.less +50 -50
  28. package/less/bootstrap/labels.less +64 -64
  29. package/less/bootstrap/list-group.less +124 -124
  30. package/less/bootstrap/media.less +61 -61
  31. package/less/bootstrap/mixins/alerts.less +14 -14
  32. package/less/bootstrap/mixins/background-variant.less +8 -8
  33. package/less/bootstrap/mixins/border-radius.less +18 -18
  34. package/less/bootstrap/mixins/buttons.less +52 -52
  35. package/less/bootstrap/mixins/center-block.less +7 -7
  36. package/less/bootstrap/mixins/clearfix.less +22 -22
  37. package/less/bootstrap/mixins/forms.less +85 -85
  38. package/less/bootstrap/mixins/gradients.less +59 -59
  39. package/less/bootstrap/mixins/grid-framework.less +91 -91
  40. package/less/bootstrap/mixins/grid.less +122 -122
  41. package/less/bootstrap/mixins/hide-text.less +21 -21
  42. package/less/bootstrap/mixins/image.less +33 -33
  43. package/less/bootstrap/mixins/labels.less +12 -12
  44. package/less/bootstrap/mixins/list-group.less +29 -29
  45. package/less/bootstrap/mixins/nav-divider.less +10 -10
  46. package/less/bootstrap/mixins/nav-vertical-align.less +9 -9
  47. package/less/bootstrap/mixins/opacity.less +8 -8
  48. package/less/bootstrap/mixins/pagination.less +23 -23
  49. package/less/bootstrap/mixins/panels.less +24 -24
  50. package/less/bootstrap/mixins/progress-bar.less +10 -10
  51. package/less/bootstrap/mixins/reset-filter.less +8 -8
  52. package/less/bootstrap/mixins/resize.less +6 -6
  53. package/less/bootstrap/mixins/responsive-visibility.less +15 -15
  54. package/less/bootstrap/mixins/size.less +10 -10
  55. package/less/bootstrap/mixins/tab-focus.less +9 -9
  56. package/less/bootstrap/mixins/table-row.less +28 -28
  57. package/less/bootstrap/mixins/text-emphasis.less +8 -8
  58. package/less/bootstrap/mixins/text-overflow.less +8 -8
  59. package/less/bootstrap/mixins/vendor-prefixes.less +227 -227
  60. package/less/bootstrap/mixins.less +39 -39
  61. package/less/bootstrap/modals.less +150 -150
  62. package/less/bootstrap/navbar.less +660 -660
  63. package/less/bootstrap/navs.less +242 -242
  64. package/less/bootstrap/normalize.less +427 -427
  65. package/less/bootstrap/pager.less +54 -54
  66. package/less/bootstrap/pagination.less +88 -88
  67. package/less/bootstrap/panels.less +265 -265
  68. package/less/bootstrap/popovers.less +135 -135
  69. package/less/bootstrap/print.less +107 -107
  70. package/less/bootstrap/progress-bars.less +87 -87
  71. package/less/bootstrap/responsive-embed.less +35 -35
  72. package/less/bootstrap/responsive-utilities.less +194 -194
  73. package/less/bootstrap/scaffolding.less +161 -161
  74. package/less/bootstrap/tables.less +234 -234
  75. package/less/bootstrap/theme.less +273 -273
  76. package/less/bootstrap/thumbnails.less +36 -36
  77. package/less/bootstrap/tooltip.less +102 -102
  78. package/less/bootstrap/type.less +302 -302
  79. package/less/bootstrap/utilities.less +55 -55
  80. package/less/bootstrap/variables.less +861 -861
  81. package/less/bootstrap/wells.less +29 -29
  82. package/less/bootstrap-flipped.css +1550 -1550
  83. package/less/categories.less +235 -235
  84. package/less/chats.less +622 -622
  85. package/less/flags.less +42 -42
  86. package/less/footer.less +17 -17
  87. package/less/ip-blacklist.less +6 -6
  88. package/less/keyframes.less +152 -152
  89. package/less/mixins.less +6 -0
  90. package/less/mobile.less +291 -291
  91. package/less/modules/composer-default.less +16 -16
  92. package/less/modules/cookie-consent.less +12 -12
  93. package/less/modules/fab.less +32 -32
  94. package/less/modules/morph.less +268 -268
  95. package/less/modules/necro-post.less +8 -8
  96. package/less/modules/nprogress.less +80 -80
  97. package/less/modules/usercard.less +64 -64
  98. package/less/noscript.less +82 -82
  99. package/less/notifications.less +37 -37
  100. package/less/outgoing.less +8 -8
  101. package/less/persona.less +47 -47
  102. package/less/post-queue.less +19 -19
  103. package/less/register.less +75 -75
  104. package/less/rtl.less +132 -132
  105. package/less/style.less +4 -0
  106. package/less/tags.less +36 -36
  107. package/less/topic.less +7 -1
  108. package/less/users.less +72 -72
  109. package/less/variables.less +6 -6
  110. package/package.json +6 -6
  111. package/public/.eslintrc +2 -2
  112. package/public/admin.js +5 -14
  113. package/public/modules/autohidingnavbar.js +220 -220
  114. package/public/modules/quickreply.js +11 -14
  115. package/public/persona.js +21 -22
  116. package/templates/account/blocks.tpl +34 -34
  117. package/templates/account/categories.tpl +28 -28
  118. package/templates/account/consent.tpl +68 -68
  119. package/templates/account/edit/email.tpl +30 -30
  120. package/templates/account/edit/password.tpl +31 -31
  121. package/templates/account/edit/username.tpl +29 -29
  122. package/templates/account/followers.tpl +16 -16
  123. package/templates/account/following.tpl +16 -16
  124. package/templates/account/groups.tpl +16 -16
  125. package/templates/account/info.tpl +187 -187
  126. package/templates/account/posts.tpl +18 -18
  127. package/templates/account/sessions.tpl +31 -31
  128. package/templates/account/topics.tpl +30 -30
  129. package/templates/account/uploads.tpl +42 -42
  130. package/templates/admin/plugins/persona.tpl +28 -28
  131. package/templates/alert.tpl +15 -15
  132. package/templates/categories.tpl +31 -31
  133. package/templates/category.tpl +62 -62
  134. package/templates/chats.tpl +15 -15
  135. package/templates/flags/list.tpl +71 -71
  136. package/templates/footer.tpl +18 -18
  137. package/templates/groups/details.tpl +272 -272
  138. package/templates/groups/list.tpl +46 -46
  139. package/templates/groups/members.tpl +8 -8
  140. package/templates/ip-blacklist.tpl +55 -55
  141. package/templates/login.tpl +90 -90
  142. package/templates/modules/taskbar.tpl +2 -2
  143. package/templates/modules/usercard.tpl +36 -36
  144. package/templates/notifications.tpl +64 -64
  145. package/templates/partials/acceptTos.tpl +8 -8
  146. package/templates/partials/account/category-item.tpl +22 -22
  147. package/templates/partials/account/header.tpl +46 -46
  148. package/templates/partials/breadcrumbs.tpl +18 -18
  149. package/templates/partials/buttons/newTopic.tpl +15 -15
  150. package/templates/partials/categories/item.tpl +46 -46
  151. package/templates/partials/categories/lastpost.tpl +26 -26
  152. package/templates/partials/categories/link.tpl +10 -10
  153. package/templates/partials/category/sort.tpl +14 -14
  154. package/templates/partials/category/subcategory.tpl +17 -17
  155. package/templates/partials/category/tags.tpl +4 -4
  156. package/templates/partials/category/tools.tpl +80 -80
  157. package/templates/partials/category/watch.tpl +22 -22
  158. package/templates/partials/category-filter-content.tpl +18 -18
  159. package/templates/partials/category-filter-right.tpl +2 -2
  160. package/templates/partials/category-filter.tpl +2 -2
  161. package/templates/partials/category-selector-right.tpl +2 -2
  162. package/templates/partials/category-selector.tpl +2 -2
  163. package/templates/partials/change_owner_modal.tpl +22 -22
  164. package/templates/partials/chats/dropdown.tpl +33 -33
  165. package/templates/partials/chats/messages.tpl +6 -6
  166. package/templates/partials/chats/recent_room.tpl +24 -24
  167. package/templates/partials/chats-menu.tpl +10 -10
  168. package/templates/partials/cookie-consent.tpl +4 -4
  169. package/templates/partials/delete_posts_modal.tpl +18 -18
  170. package/templates/partials/fork_thread_modal.tpl +21 -21
  171. package/templates/partials/groups/list.tpl +20 -20
  172. package/templates/partials/groups/memberlist.tpl +39 -39
  173. package/templates/partials/menu.tpl +238 -238
  174. package/templates/partials/merge_topics_modal.tpl +57 -57
  175. package/templates/partials/modals/flag_modal.tpl +44 -44
  176. package/templates/partials/modals/manage_room.tpl +10 -10
  177. package/templates/partials/modals/manage_room_users.tpl +6 -6
  178. package/templates/partials/modals/post_history.tpl +36 -36
  179. package/templates/partials/modals/rename_room.tpl +3 -3
  180. package/templates/partials/modals/votes_modal.tpl +10 -10
  181. package/templates/partials/move_thread_modal.tpl +16 -16
  182. package/templates/partials/paginator.tpl +44 -44
  183. package/templates/partials/post_bar.tpl +20 -20
  184. package/templates/partials/posts_list.tpl +7 -7
  185. package/templates/partials/quick-search-results.tpl +30 -30
  186. package/templates/partials/slideout-menu.tpl +26 -26
  187. package/templates/partials/tags_list.tpl +4 -4
  188. package/templates/partials/thread_tools.tpl +7 -7
  189. package/templates/partials/topic/badge.tpl +4 -4
  190. package/templates/partials/topic/browsing-users.tpl +12 -12
  191. package/templates/partials/topic/deleted-message.tpl +10 -10
  192. package/templates/partials/topic/navigation-post.tpl +11 -11
  193. package/templates/partials/topic/navigator.tpl +31 -31
  194. package/templates/partials/topic/necro-post.tpl +2 -2
  195. package/templates/partials/topic/post-menu.tpl +4 -4
  196. package/templates/partials/topic/post.tpl +104 -104
  197. package/templates/partials/topic/quickreply.tpl +20 -20
  198. package/templates/partials/topic/reply-button.tpl +26 -26
  199. package/templates/partials/topic/selection-tooltip.tpl +2 -2
  200. package/templates/partials/topic/sort.tpl +9 -9
  201. package/templates/partials/topic/stats.tpl +11 -11
  202. package/templates/partials/topic/tags.tpl +4 -4
  203. package/templates/partials/topic/watch.tpl +20 -20
  204. package/templates/partials/topics_list.tpl +3 -3
  205. package/templates/partials/users_list.tpl +39 -39
  206. package/templates/partials/users_list_menu.tpl +10 -10
  207. package/templates/popular.tpl +61 -61
  208. package/templates/post-queue.tpl +75 -75
  209. package/templates/recent.tpl +51 -51
  210. package/templates/reset.tpl +23 -23
  211. package/templates/reset_code.tpl +41 -41
  212. package/templates/tag.tpl +35 -35
  213. package/templates/tags.tpl +30 -30
  214. package/templates/top.tpl +61 -61
  215. package/templates/tos.tpl +4 -4
  216. package/templates/unread.tpl +49 -49
  217. package/templates/unsubscribe.tpl +6 -6
  218. package/templates/users.tpl +47 -47
  219. package/theme.json +6 -6
  220. package/theme.less +1 -1
package/public/persona.js CHANGED
@@ -1,16 +1,14 @@
1
- "use strict";
2
-
3
- /*globals ajaxify, config, utils, app, socket, window, document, $*/
1
+ 'use strict';
4
2
 
5
3
  $(document).ready(function () {
6
4
  setupNProgress();
7
5
  setupEditedByIcon();
8
6
  setupQuickReply();
9
7
  configureNavbarHiding();
10
- fixHeaderPadding();
8
+ updatePanelOffset();
11
9
 
12
10
  $(window).on('resize', utils.debounce(configureNavbarHiding, 200));
13
- $(window).on('resize', fixHeaderPadding);
11
+ $(window).on('resize', updatePanelOffset);
14
12
 
15
13
  $(window).on('action:app.loggedIn', function () {
16
14
  setupMobileMenu();
@@ -21,25 +19,25 @@ $(document).ready(function () {
21
19
  setupMobileMenu();
22
20
  });
23
21
 
24
- function fixHeaderPadding() {
22
+ function updatePanelOffset() {
25
23
  var env = utils.findBootstrapEnvironment();
26
24
  const headerEl = document.getElementById('header-menu');
27
- const panelEl = document.getElementById('panel');
28
25
 
29
- if (!headerEl || !panelEl) {
26
+ if (!headerEl) {
30
27
  return;
31
28
  }
32
29
 
33
30
  const headerRect = headerEl.getBoundingClientRect();
34
31
  const headerStyle = window.getComputedStyle(headerEl);
35
32
 
36
- let paddingTop = headerRect.y + headerRect.height + (parseInt(headerStyle.marginTop, 10) || 0) + (parseInt(headerStyle.marginBottom, 10) || 0);
33
+ let offset = headerRect.y + headerRect.height +
34
+ (parseInt(headerStyle.marginTop, 10) || 0) + (parseInt(headerStyle.marginBottom, 10) || 0);
37
35
  // body element itself introduces a hardcoded 70px padding on desktop resolution
38
36
  if (env === 'lg') {
39
- paddingTop -= 70;
37
+ offset -= 70;
40
38
  }
41
39
 
42
- panelEl.style.paddingTop = `${paddingTop}px`;
40
+ document.documentElement.style.setProperty('--panel-offset', `${offset}px`);
43
41
  }
44
42
 
45
43
  var lastBSEnv = '';
@@ -53,7 +51,7 @@ $(document).ready(function () {
53
51
  return;
54
52
  }
55
53
  lastBSEnv = env;
56
- var navbarEl = $(".navbar-fixed-top");
54
+ var navbarEl = $('.navbar-fixed-top');
57
55
  navbarEl.autoHidingNavbar('destroy').removeData('plugin_autoHidingNavbar');
58
56
  navbarEl.css('top', '');
59
57
 
@@ -65,7 +63,7 @@ $(document).ready(function () {
65
63
 
66
64
  function fixTopCss(topValue) {
67
65
  if (ajaxify.data.template.topic) {
68
- $('.topic .topic-header').css({top: topValue });
66
+ $('.topic .topic-header').css({ top: topValue });
69
67
  } else {
70
68
  var topicListHeader = $('.topic-list-header');
71
69
  if (topicListHeader.length) {
@@ -75,12 +73,12 @@ $(document).ready(function () {
75
73
  }
76
74
 
77
75
  navbarEl.off('show.autoHidingNavbar')
78
- .on('show.autoHidingNavbar', function() {
76
+ .on('show.autoHidingNavbar', function () {
79
77
  fixTopCss('');
80
78
  });
81
79
 
82
80
  navbarEl.off('hide.autoHidingNavbar')
83
- .on('hide.autoHidingNavbar', function() {
81
+ .on('hide.autoHidingNavbar', function () {
84
82
  fixTopCss('0px');
85
83
  });
86
84
  }
@@ -165,7 +163,8 @@ $(document).ready(function () {
165
163
  function setupEditedByIcon() {
166
164
  function activateEditedTooltips() {
167
165
  $('[data-pid] [component="post/editor"]').each(function () {
168
- var el = $(this), icon;
166
+ var el = $(this);
167
+ var icon;
169
168
 
170
169
  if (!el.attr('data-editor')) {
171
170
  return;
@@ -360,7 +359,7 @@ $(document).ready(function () {
360
359
  }
361
360
  });
362
361
  });
363
- })
362
+ });
364
363
  }
365
364
  }
366
365
 
@@ -450,13 +449,13 @@ $(document).ready(function () {
450
449
  }
451
450
 
452
451
  function setupFavouriteMorph(parent, uid, username) {
453
- require(['api'], function (api) {
452
+ require(['api', 'alerts'], function (api, alerts) {
454
453
  parent.find('.btn-morph').click(function (ev) {
455
454
  var type = $(this).hasClass('plus') ? 'follow' : 'unfollow';
456
455
  var method = $(this).hasClass('plus') ? 'put' : 'del';
457
456
 
458
457
  api[method]('/users/' + uid + '/follow').then(() => {
459
- app.alertSuccess('[[global:alert.' + type + ', ' + username + ']]');
458
+ alerts.success('[[global:alert.' + type + ', ' + username + ']]');
460
459
  });
461
460
 
462
461
  $(this).toggleClass('plus').toggleClass('heart');
@@ -466,9 +465,9 @@ $(document).ready(function () {
466
465
  $(this).prepend('<b class="drop"></b>');
467
466
  }
468
467
 
469
- var drop = $(this).find('b.drop').removeClass('animate'),
470
- x = ev.pageX - drop.width() / 2 - $(this).offset().left,
471
- y = ev.pageY - drop.height() / 2 - $(this).offset().top;
468
+ var drop = $(this).find('b.drop').removeClass('animate');
469
+ var x = ev.pageX - (drop.width() / 2) - $(this).offset().left;
470
+ var y = ev.pageY - (drop.height() / 2) - $(this).offset().top;
472
471
 
473
472
  drop.css({ top: y + 'px', left: x + 'px' }).addClass('animate');
474
473
  });
@@ -1,35 +1,35 @@
1
- <div class="account">
2
- <!-- IMPORT partials/account/header.tpl -->
3
-
4
- <div class="users row">
5
- <h1>[[pages:account/blocks, {username}]]</h1>
6
-
7
- <div class="col-sm-8 col-xs-12">
8
- <ul id="users-container" class="users-container" data-nextstart="{nextStart}">
9
- <!-- IMPORT partials/users_list.tpl -->
10
- </ul>
11
- <div class="alert alert-warning text-center"<!-- IF users.length --> style="display: none;"<!-- END -->>[[user:has_no_blocks]]</div>
12
- <!-- IMPORT partials/paginator.tpl -->
13
- </div>
14
- <div class="col-sm-4 col-xs-12">
15
- <div class="panel panel-default">
16
- <div class="panel-body form">
17
- <div class="form-group">
18
- <label for="user-search">[[users:search]]</label>
19
- <input class="form-control" type="text" id="user-search" placeholder="[[users:enter_username]]" />
20
- <ul class="block-edit list-group">
21
- {{{ each edit }}}
22
- <li class="list-group-item clearfix">
23
- <button class="btn btn-sm btn-primary pull-right" data-uid="{../uid}" data-action="toggle">[[user:block_toggle]]</button>
24
- <div class="pull-left">
25
- <a href="{config.relative_path}/uid/{../uid}">{buildAvatar(edit, "sm", true)} {../username}</a>
26
- </div>
27
- </li>
28
- {{{ end }}}
29
- </ul>
30
- </div>
31
- </div>
32
- </div>
33
- </div>
34
- </div>
1
+ <div class="account">
2
+ <!-- IMPORT partials/account/header.tpl -->
3
+
4
+ <div class="users row">
5
+ <h1>[[pages:account/blocks, {username}]]</h1>
6
+
7
+ <div class="col-sm-8 col-xs-12">
8
+ <ul id="users-container" class="users-container" data-nextstart="{nextStart}">
9
+ <!-- IMPORT partials/users_list.tpl -->
10
+ </ul>
11
+ <div class="alert alert-warning text-center"<!-- IF users.length --> style="display: none;"<!-- END -->>[[user:has_no_blocks]]</div>
12
+ <!-- IMPORT partials/paginator.tpl -->
13
+ </div>
14
+ <div class="col-sm-4 col-xs-12">
15
+ <div class="panel panel-default">
16
+ <div class="panel-body form">
17
+ <div class="form-group">
18
+ <label for="user-search">[[users:search]]</label>
19
+ <input class="form-control" type="text" id="user-search" placeholder="[[users:enter_username]]" />
20
+ <ul class="block-edit list-group">
21
+ {{{ each edit }}}
22
+ <li class="list-group-item clearfix">
23
+ <button class="btn btn-sm btn-primary pull-right" data-uid="{../uid}" data-action="toggle">[[user:block_toggle]]</button>
24
+ <div class="pull-left">
25
+ <a href="{config.relative_path}/uid/{../uid}">{buildAvatar(edit, "sm", true)} {../username}</a>
26
+ </div>
27
+ </li>
28
+ {{{ end }}}
29
+ </ul>
30
+ </div>
31
+ </div>
32
+ </div>
33
+ </div>
34
+ </div>
35
35
  </div>
@@ -1,28 +1,28 @@
1
- <div class="account">
2
- <!-- IMPORT partials/account/header.tpl -->
3
-
4
- <div class="row">
5
- <h1>{title}</h1>
6
- <div class="col-lg-12">
7
- <div class="btn-group bottom-sheet" component="category/watch/all">
8
- <button class="btn btn-default dropdown-toggle" data-toggle="dropdown" type="button">
9
- <span>[[user:change_all]]</span>
10
- <span class="caret"></span>
11
- </button>
12
- <ul class="dropdown-menu">
13
- <li><a href="#" component="category/watching" data-state="watching"><i class="fa fa-fw fa-inbox"></i> [[category:watching]]<p class="help-text"><small>[[category:watching.description]]</small></p></a></li>
14
- <li><a href="#" component="category/notwatching" data-state="notwatching"><i class="fa fa-fw fa-clock-o"></i> [[category:not-watching]]<p class="help-text"><small>[[category:not-watching.description]]</small></p></a></li>
15
- <li><a href="#" component="category/ignoring" data-state="ignoring"><i class="fa fa-fw fa-eye-slash"></i> [[category:ignoring]]<p class="help-text"><small>[[category:ignoring.description]]</small></p></a></li>
16
- </ul>
17
- </div>
18
- </div>
19
- <div class="col-lg-12">
20
- <ul class="categories" itemscope itemtype="http://www.schema.org/ItemList">
21
- {{{each categories}}}
22
- <!-- IMPORT partials/account/category-item.tpl -->
23
- {{{end}}}
24
- </ul>
25
- <!-- IMPORT partials/paginator.tpl -->
26
- </div>
27
- </div>
28
- </div>
1
+ <div class="account">
2
+ <!-- IMPORT partials/account/header.tpl -->
3
+
4
+ <div class="row">
5
+ <h1>{title}</h1>
6
+ <div class="col-lg-12">
7
+ <div class="btn-group bottom-sheet" component="category/watch/all">
8
+ <button class="btn btn-default dropdown-toggle" data-toggle="dropdown" type="button">
9
+ <span>[[user:change_all]]</span>
10
+ <span class="caret"></span>
11
+ </button>
12
+ <ul class="dropdown-menu">
13
+ <li><a href="#" component="category/watching" data-state="watching"><i class="fa fa-fw fa-inbox"></i> [[category:watching]]<p class="help-text"><small>[[category:watching.description]]</small></p></a></li>
14
+ <li><a href="#" component="category/notwatching" data-state="notwatching"><i class="fa fa-fw fa-clock-o"></i> [[category:not-watching]]<p class="help-text"><small>[[category:not-watching.description]]</small></p></a></li>
15
+ <li><a href="#" component="category/ignoring" data-state="ignoring"><i class="fa fa-fw fa-eye-slash"></i> [[category:ignoring]]<p class="help-text"><small>[[category:ignoring.description]]</small></p></a></li>
16
+ </ul>
17
+ </div>
18
+ </div>
19
+ <div class="col-lg-12">
20
+ <ul class="categories" itemscope itemtype="http://www.schema.org/ItemList">
21
+ {{{each categories}}}
22
+ <!-- IMPORT partials/account/category-item.tpl -->
23
+ {{{end}}}
24
+ </ul>
25
+ <!-- IMPORT partials/paginator.tpl -->
26
+ </div>
27
+ </div>
28
+ </div>
@@ -1,69 +1,69 @@
1
- <div class="account">
2
- <!-- IMPORT partials/account/header.tpl -->
3
- <h2>[[user:consent.title]]</h2>
4
- <p class="lead">[[user:consent.lead]]</p>
5
- <p>[[user:consent.intro]]</p>
6
-
7
- <hr />
8
-
9
- <div class="row">
10
- <div class="col-sm-6">
11
- <!-- IF gdpr_consent -->
12
- <div class="alert alert-success">
13
- <i class="fa fa-check pull-right fa-3x"></i>
14
- [[user:consent.received]]
15
- </div>
16
- <!-- ELSE -->
17
- <div class="alert alert-warning">
18
- [[user:consent.not_received]]
19
- <br /><br />
20
- <div class="text-center">
21
- <button class="btn btn-warning" data-action="consent">[[user:consent.give]]</button>
22
- </div>
23
- </div>
24
- <!-- END -->
25
- <div class="panel panel-default">
26
- <div class="panel-body">
27
- <p>[[user:consent.email_intro]]</p>
28
- <!-- IF digest.enabled -->
29
- <p>[[user:consent.digest_frequency, {digest.frequency}]]</p>
30
- <!-- ELSE -->
31
- [[user:consent.digest_off]]
32
- <!-- END -->
33
-
34
- <div class="text-center">
35
- <a class="btn btn-default" href="./settings">
36
- <i class="fa fa-cog"></i>
37
- [[pages:account/settings]]
38
- </a>
39
- </div>
40
- </div>
41
- </div>
42
- </div>
43
- <div class="col-sm-6">
44
- <div class="panel panel-default">
45
- <div class="panel-body">
46
- <p><strong>[[user:consent.right_of_access]]</strong></p>
47
- <p>[[user:consent.right_of_access_description]]</p>
48
- <p><strong>[[user:consent.right_to_rectification]]</strong></p>
49
- <p>[[user:consent.right_to_rectification_description]]</p>
50
- <p><strong>[[user:consent.right_to_erasure]]</strong></p>
51
- <p>[[user:consent.right_to_erasure_description]]</p>
52
- <p><strong>[[user:consent.right_to_data_portability]]</strong></p>
53
- <p>[[user:consent.right_to_data_portability_description]]</p>
54
-
55
- <div class="btn-group-vertical btn-block">
56
- <a data-action="export-profile" class="btn btn-default">
57
- <i class="fa fa-download"></i> [[user:consent.export_profile]]
58
- </a>
59
- <a data-action="export-posts" class="btn btn-default">
60
- <i class="fa fa-download"></i> [[user:consent.export_posts]]
61
- </a>
62
- <a data-action="export-uploads" class="btn btn-default">
63
- <i class="fa fa-download"></i> [[user:consent.export_uploads]]
64
- </a>
65
- </div>
66
- </div>
67
- </div>
68
- </div>
1
+ <div class="account">
2
+ <!-- IMPORT partials/account/header.tpl -->
3
+ <h2>[[user:consent.title]]</h2>
4
+ <p class="lead">[[user:consent.lead]]</p>
5
+ <p>[[user:consent.intro]]</p>
6
+
7
+ <hr />
8
+
9
+ <div class="row">
10
+ <div class="col-sm-6">
11
+ <!-- IF gdpr_consent -->
12
+ <div class="alert alert-success">
13
+ <i class="fa fa-check pull-right fa-3x"></i>
14
+ [[user:consent.received]]
15
+ </div>
16
+ <!-- ELSE -->
17
+ <div class="alert alert-warning">
18
+ [[user:consent.not_received]]
19
+ <br /><br />
20
+ <div class="text-center">
21
+ <button class="btn btn-warning" data-action="consent">[[user:consent.give]]</button>
22
+ </div>
23
+ </div>
24
+ <!-- END -->
25
+ <div class="panel panel-default">
26
+ <div class="panel-body">
27
+ <p>[[user:consent.email_intro]]</p>
28
+ <!-- IF digest.enabled -->
29
+ <p>[[user:consent.digest_frequency, {digest.frequency}]]</p>
30
+ <!-- ELSE -->
31
+ [[user:consent.digest_off]]
32
+ <!-- END -->
33
+
34
+ <div class="text-center">
35
+ <a class="btn btn-default" href="./settings">
36
+ <i class="fa fa-cog"></i>
37
+ [[pages:account/settings]]
38
+ </a>
39
+ </div>
40
+ </div>
41
+ </div>
42
+ </div>
43
+ <div class="col-sm-6">
44
+ <div class="panel panel-default">
45
+ <div class="panel-body">
46
+ <p><strong>[[user:consent.right_of_access]]</strong></p>
47
+ <p>[[user:consent.right_of_access_description]]</p>
48
+ <p><strong>[[user:consent.right_to_rectification]]</strong></p>
49
+ <p>[[user:consent.right_to_rectification_description]]</p>
50
+ <p><strong>[[user:consent.right_to_erasure]]</strong></p>
51
+ <p>[[user:consent.right_to_erasure_description]]</p>
52
+ <p><strong>[[user:consent.right_to_data_portability]]</strong></p>
53
+ <p>[[user:consent.right_to_data_portability_description]]</p>
54
+
55
+ <div class="btn-group-vertical btn-block">
56
+ <a data-action="export-profile" class="btn btn-default">
57
+ <i class="fa fa-download"></i> [[user:consent.export_profile]]
58
+ </a>
59
+ <a data-action="export-posts" class="btn btn-default">
60
+ <i class="fa fa-download"></i> [[user:consent.export_posts]]
61
+ </a>
62
+ <a data-action="export-uploads" class="btn btn-default">
63
+ <i class="fa fa-download"></i> [[user:consent.export_uploads]]
64
+ </a>
65
+ </div>
66
+ </div>
67
+ </div>
68
+ </div>
69
69
  </div>
@@ -1,30 +1,30 @@
1
- <div class="account">
2
- <!-- IMPORT partials/account/header.tpl -->
3
-
4
- <form class="form-horizontal edit-form">
5
- <div class="control-group">
6
- <label class="control-label" for="inputNewEmail">[[user:email]]</label>
7
- <div class="controls">
8
- <input class="form-control" type="text" id="inputNewEmail" placeholder="[[user:email]]" value="{email}">
9
- </div>
10
- </div>
11
-
12
- <!-- disables autocomplete on FF --><input type="password" style="display:none">
13
-
14
- <!-- IF isSelf -->
15
- <div class="control-group">
16
- <label class="control-label" for="inputCurrentPassword">[[user:current_password]]</label>
17
- <div class="controls">
18
- <input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current_password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
19
- </div>
20
- </div>
21
- <!-- ENDIF isSelf -->
22
-
23
- <input type="hidden" name="uid" id="inputUID" value="{uid}" />
24
-
25
- <br/>
26
- <div class="form-actions">
27
- <button id="submitBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change_email]]</button>
28
- </div>
29
- </form>
30
- </div>
1
+ <div class="account">
2
+ <!-- IMPORT partials/account/header.tpl -->
3
+
4
+ <form class="form-horizontal edit-form">
5
+ <div class="control-group">
6
+ <label class="control-label" for="inputNewEmail">[[user:email]]</label>
7
+ <div class="controls">
8
+ <input class="form-control" type="text" id="inputNewEmail" placeholder="[[user:email]]" value="{email}">
9
+ </div>
10
+ </div>
11
+
12
+ <!-- disables autocomplete on FF --><input type="password" style="display:none">
13
+
14
+ <!-- IF isSelf -->
15
+ <div class="control-group">
16
+ <label class="control-label" for="inputCurrentPassword">[[user:current_password]]</label>
17
+ <div class="controls">
18
+ <input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current_password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
19
+ </div>
20
+ </div>
21
+ <!-- ENDIF isSelf -->
22
+
23
+ <input type="hidden" name="uid" id="inputUID" value="{uid}" />
24
+
25
+ <br/>
26
+ <div class="form-actions">
27
+ <button id="submitBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change_email]]</button>
28
+ </div>
29
+ </form>
30
+ </div>
@@ -1,32 +1,32 @@
1
- <div class="account">
2
- <!-- IMPORT partials/account/header.tpl -->
3
-
4
- <form class="edit-form">
5
- <!-- disables autocomplete on FF --><input type="password" style="display:none">
6
-
7
- <!-- IF isSelf -->
8
- <div class="form-group">
9
- <label class="control-label" for="inputCurrentPassword">[[user:current_password]]</label>
10
- <div class="controls">
11
- <input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current_password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
12
- </div>
13
- </div>
14
- <!-- ENDIF isSelf -->
15
-
16
- <div class="form-group">
17
- <label class="control-label" for="inputNewPassword">[[user:password]]</label>
18
- <input class="form-control" type="password" id="inputNewPassword" placeholder="[[user:password]]" value="">
19
- <span class="form-feedback" id="password-notify"></span>
20
- </div>
21
-
22
- <div class="form-group">
23
- <label class="control-label" for="inputNewPasswordAgain">[[user:confirm_password]]</label>
24
- <input class="form-control" type="password" id="inputNewPasswordAgain" placeholder="[[user:confirm_password]]" value="">
25
- <span class="form-feedback" id="password-confirm-notify"></span>
26
- </div>
27
-
28
- <div class="form-actions">
29
- <button id="changePasswordBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change_password]]</button>
30
- </div>
31
- </form>
1
+ <div class="account">
2
+ <!-- IMPORT partials/account/header.tpl -->
3
+
4
+ <form class="edit-form">
5
+ <!-- disables autocomplete on FF --><input type="password" style="display:none">
6
+
7
+ <!-- IF isSelf -->
8
+ <div class="form-group">
9
+ <label class="control-label" for="inputCurrentPassword">[[user:current_password]]</label>
10
+ <div class="controls">
11
+ <input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current_password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
12
+ </div>
13
+ </div>
14
+ <!-- ENDIF isSelf -->
15
+
16
+ <div class="form-group">
17
+ <label class="control-label" for="inputNewPassword">[[user:password]]</label>
18
+ <input class="form-control" type="password" id="inputNewPassword" placeholder="[[user:password]]" value="">
19
+ <span class="form-feedback" id="password-notify"></span>
20
+ </div>
21
+
22
+ <div class="form-group">
23
+ <label class="control-label" for="inputNewPasswordAgain">[[user:confirm_password]]</label>
24
+ <input class="form-control" type="password" id="inputNewPasswordAgain" placeholder="[[user:confirm_password]]" value="">
25
+ <span class="form-feedback" id="password-confirm-notify"></span>
26
+ </div>
27
+
28
+ <div class="form-actions">
29
+ <button id="changePasswordBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change_password]]</button>
30
+ </div>
31
+ </form>
32
32
  </div>
@@ -1,30 +1,30 @@
1
- <div class="account">
2
- <!-- IMPORT partials/account/header.tpl -->
3
-
4
- <form class="form-horizontal edit-form">
5
- <div class="control-group">
6
- <label class="control-label" for="inputNewUsername">[[user:username]]</label>
7
- <div class="controls">
8
- <input class="form-control" type="text" id="inputNewUsername" placeholder="[[user:username]]" value="{username}">
9
- </div>
10
- </div>
11
-
12
- <!-- disables autocomplete on FF --><input type="password" style="display:none">
13
-
14
- <!-- IF isSelf -->
15
- <div class="control-group">
16
- <label class="control-label" for="inputCurrentPassword">[[user:current_password]]</label>
17
- <div class="controls">
18
- <input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current_password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
19
- </div>
20
- </div>
21
- <!-- ENDIF isSelf -->
22
-
23
- <input type="hidden" name="uid" id="inputUID" value="{uid}" />
24
-
25
- <br/>
26
- <div class="form-actions">
27
- <button id="submitBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change_username]]</button>
28
- </div>
29
- </form>
1
+ <div class="account">
2
+ <!-- IMPORT partials/account/header.tpl -->
3
+
4
+ <form class="form-horizontal edit-form">
5
+ <div class="control-group">
6
+ <label class="control-label" for="inputNewUsername">[[user:username]]</label>
7
+ <div class="controls">
8
+ <input class="form-control" type="text" id="inputNewUsername" placeholder="[[user:username]]" value="{username}">
9
+ </div>
10
+ </div>
11
+
12
+ <!-- disables autocomplete on FF --><input type="password" style="display:none">
13
+
14
+ <!-- IF isSelf -->
15
+ <div class="control-group">
16
+ <label class="control-label" for="inputCurrentPassword">[[user:current_password]]</label>
17
+ <div class="controls">
18
+ <input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current_password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
19
+ </div>
20
+ </div>
21
+ <!-- ENDIF isSelf -->
22
+
23
+ <input type="hidden" name="uid" id="inputUID" value="{uid}" />
24
+
25
+ <br/>
26
+ <div class="form-actions">
27
+ <button id="submitBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change_username]]</button>
28
+ </div>
29
+ </form>
30
30
  </div>
@@ -1,17 +1,17 @@
1
- <div class="account">
2
- <!-- IMPORT partials/account/header.tpl -->
3
-
4
- <div class="users row">
5
- <h1>[[pages:{template.name}, {username}]]</h1>
6
-
7
- <ul id="users-container" class="users-container" data-nextstart="{nextStart}">
8
- <!-- IMPORT partials/users_list.tpl -->
9
- </ul>
10
-
11
- <!-- IF !users.length -->
12
- <div class="alert alert-warning text-center">[[user:has_no_follower]]</div>
13
- <!-- ENDIF !users.length -->
14
-
15
- <!-- IMPORT partials/paginator.tpl -->
16
- </div>
1
+ <div class="account">
2
+ <!-- IMPORT partials/account/header.tpl -->
3
+
4
+ <div class="users row">
5
+ <h1>[[pages:{template.name}, {username}]]</h1>
6
+
7
+ <ul id="users-container" class="users-container" data-nextstart="{nextStart}">
8
+ <!-- IMPORT partials/users_list.tpl -->
9
+ </ul>
10
+
11
+ <!-- IF !users.length -->
12
+ <div class="alert alert-warning text-center">[[user:has_no_follower]]</div>
13
+ <!-- ENDIF !users.length -->
14
+
15
+ <!-- IMPORT partials/paginator.tpl -->
16
+ </div>
17
17
  </div>