generic-skin 3.1.1 → 3.2.0

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.
@@ -9,7 +9,7 @@ Vue.component('categoria-foro', {
9
9
  }
10
10
  },
11
11
  template: `
12
- <section v-bind:class="'category-element ' + slugName">
12
+ <section :class="'category-element ' + slugName">
13
13
  <slot></slot>
14
14
  </section>
15
15
  `
@@ -23,7 +23,7 @@ Vue.component('cabecera-foro', {
23
23
  },
24
24
  template: `
25
25
  <div class="forum-head regular-head">
26
- <titulo-especial v-bind:data-title="dataTitle"></titulo-especial>
26
+ <titulo-especial :data-title="dataTitle"></titulo-especial>
27
27
  </div>
28
28
  `
29
29
  });
@@ -36,7 +36,7 @@ Vue.component('cabcategoria-foro', {
36
36
  },
37
37
  template: `
38
38
  <div class="forum-head category-head">
39
- <titulo-especial v-bind:data-title="dataTitle"></titulo-especial>
39
+ <titulo-especial :data-title="dataTitle"></titulo-especial>
40
40
  </div>
41
41
  `
42
42
  });
@@ -49,7 +49,7 @@ Vue.component('cabespecial-foro', {
49
49
  },
50
50
  template: `
51
51
  <div class="forum-head special-head">
52
- <titulo-especial v-bind:data-title="dataTitle"></titulo-especial>
52
+ <titulo-especial :data-title="dataTitle"></titulo-especial>
53
53
  </div>
54
54
  `
55
55
  });
@@ -75,7 +75,7 @@ Vue.component('subforo-foro', {
75
75
  }
76
76
  },
77
77
  template: `
78
- <section v-bind:class="'subforum-element ' + slugId + ' ' + slugName">
78
+ <section :class="'subforum-element ' + slugId + ' ' + slugName">
79
79
  <slot></slot>
80
80
  </section>
81
81
  `
@@ -91,7 +91,7 @@ Vue.component('lista-temas-cabecera', {
91
91
  template: `
92
92
  <ul class="topiclist-header no-style">
93
93
  <li v-for="element in elementos">
94
- <titulo-especial v-bind:data-title="element"></titulo-especial>
94
+ <titulo-especial :data-title="element"></titulo-especial>
95
95
  </li>
96
96
  </ul>
97
97
  `
@@ -117,7 +117,7 @@ Vue.component('tema-foro', {
117
117
  }
118
118
  },
119
119
  template: `
120
- <section v-bind:class="'topic-element ' + slugId + ' ' + slugName">
120
+ <section :class="'topic-element ' + slugId + ' ' + slugName">
121
121
  <slot></slot>
122
122
  </section>
123
123
  `
@@ -142,7 +142,7 @@ Vue.component('mando-foro', {
142
142
  });
143
143
  },
144
144
  template: `
145
- <section v-bind:id="dataId" v-bind:class="isStatusClass">
145
+ <section :id="dataId" :class="isStatusClass">
146
146
  <template v-if="dataApp === 'true'">
147
147
  <div class="left page-pagination">
148
148
  <slot name="pagination"></slot>
@@ -163,7 +163,7 @@ Vue.component('mando-foro', {
163
163
  Vue.component('titulo-especial', {
164
164
  props: ['dataTitle'],
165
165
  template: `
166
- <h3 class="is-tweakeable"><span class="is-measurable">{{ dataTitle }}</span></h3>
166
+ <h3 class="is-tweakeable"><span class="is-measurable" v-html="dataTitle"></span></h3>
167
167
  `
168
168
  });
169
169
 
@@ -177,7 +177,7 @@ Vue.component('cuerpo-widget', {
177
177
  },
178
178
  template: `
179
179
  <div class="plank-content">
180
- <div v-bind:class="currentClass">
180
+ <div :class="currentClass">
181
181
  <slot></slot>
182
182
  </div>
183
183
  </div>
@@ -193,7 +193,7 @@ Vue.component('separador-foro', {
193
193
  },
194
194
  template: `
195
195
  <section class="forumseparator-element">
196
- <img v-bind:src="image" />
196
+ <img :src="image" />
197
197
  </section>
198
198
  `
199
199
  });
@@ -212,12 +212,12 @@ Vue.component('tema-ref', {
212
212
  },
213
213
  template: `
214
214
  <div class="ltopic-element">
215
- <a class="ltopic-last" v-bind:href="dataInfo.lastpost.url" target="_blank" v-bind:title="'Ir al último mensaje del tema «' + dataInfo.name + '»'">
215
+ <a class="ltopic-last" :href="dataInfo.lastpost.url" target="_blank" :title="'Ir al último mensaje del tema «' + dataInfo.name + '»'">
216
216
  <i class="fas fa-link"></i>
217
217
  </a>
218
218
  <div class="ltopic-data">
219
- <a class="ltopic-title" v-bind:href="dataInfo.url" target="_blank" v-bind:title="'Ir al tema «' + dataInfo.name + '»'">{{ dataInfo.name }}</a>
220
- <small class="ltopic-info"><a v-bind:href="dataInfo.lastpost.who.url" target="_blank" v-bind:style="userColor" v-bind:title="'Ir al ' + profileName + ' de «' + dataInfo.lastpost.who.name + '»'">{{ dataInfo.lastpost.who.name | just-name }}</a>, {{ dataInfo.lastpost.date }} en <a v-bind:href="dataInfo.forum.url" target="_blank" v-bind:title="'Ir al subforo «' + dataInfo.forum.name + '»'">{{ dataInfo.forum.name }}</a></small>
219
+ <a class="ltopic-title" :href="dataInfo.url" target="_blank" :title="'Ir al tema «' + dataInfo.name + '»'">{{ dataInfo.name }}</a>
220
+ <small class="ltopic-info"><a :href="dataInfo.lastpost.who.url" target="_blank" :style="userColor" :title="'Ir al ' + profileName + ' de «' + dataInfo.lastpost.who.name + '»'">{{ dataInfo.lastpost.who.name | just-name }}</a>, {{ dataInfo.lastpost.date }} en <a :href="dataInfo.forum.url" target="_blank" :title="'Ir al subforo «' + dataInfo.forum.name + '»'">{{ dataInfo.forum.name }}</a></small>
221
221
  </div>
222
222
  </div>
223
223
  `
@@ -263,11 +263,11 @@ Vue.component('boton-foro', {
263
263
  classList.add('btn-' + FNR.utility.genSlug(this.dataName, '-'));
264
264
  },
265
265
  template: `
266
- <a v-bind:href="realUrl" targer="_blank" v-bind:class="realClass" v-bind:title="dataName">
266
+ <a :href="realUrl" targer="_blank" :class="realClass" :title="dataName">
267
267
  <span class="icon">
268
- <i v-bind:class="dataIcon"></i>
268
+ <i :class="dataIcon"></i>
269
269
  </span>
270
- <span v-bind:class="realName">{{ dataName }}</span>
270
+ <span :class="realName">{{ dataName }}</span>
271
271
  <span v-if="dataInput === 'true'" class="input-real">
272
272
  <slot name="input"></slot>
273
273
  </span>
@@ -356,15 +356,15 @@ Vue.component('controles-foro', {
356
356
  </nav>
357
357
  <nav class="right">
358
358
  <section id="forum-navbar-desktop" class="is-hidden-touch">
359
- <navbar-foro v-bind:data-username="userName" v-bind:data-userlevel="userLevel" v-bind:data-userid="userId" v-bind:data-userlog="userLog" v-bind:data-usermp="userMP" v-bind:data-userout="userOut" />
359
+ <navbar-foro :data-username="userName" :data-userlevel="userLevel" :data-userid="userId" :data-userlog="userLog" :data-usermp="userMP" :data-userout="userOut" />
360
360
  </section>
361
361
  <section id="forum-navbar-mobile" class="is-hidden-desktop">
362
362
  <div id="hmg-button" v-on:click="turnActive()" class="is-pointer">
363
363
  <i class="fas fa-bars"></i>
364
364
  </div>
365
- <div id="hmg-menu" v-bind:class="isActiveClass">
365
+ <div id="hmg-menu" :class="isActiveClass">
366
366
  <h3>{{ userName | just-name }}<i class="fas fa-times is-pointer" v-on:click="turnActive()"></i></h3>
367
- <navbar-foro v-bind:data-username="userName" v-bind:data-userlevel="userLevel" v-bind:data-userid="userId" v-bind:data-userlog="userLog" v-bind:data-usermp="userMP" v-bind:data-userout="userOut" />
367
+ <navbar-foro :data-username="userName" :data-userlevel="userLevel" :data-userid="userId" :data-userlog="userLog" :data-usermp="userMP" :data-userout="userOut" />
368
368
  </div>
369
369
  <div class="bg-active" v-on:click="turnActive()"></div>
370
370
  </section>
@@ -430,7 +430,7 @@ Vue.component('navbar-foro', {
430
430
  });
431
431
  },
432
432
  template: `
433
- <ul v-bind:class="isStatusClass">
433
+ <ul :class="isStatusClass">
434
434
  <template v-if="!dataUserlog">
435
435
  <li class="navbar-item">
436
436
  <a href="/register" title="Registrarse en el foro">
@@ -451,17 +451,17 @@ Vue.component('navbar-foro', {
451
451
  </template>
452
452
  <template v-else>
453
453
  <li class="navbar-item is-hidden-desktop" v-for="link in links">
454
- <a v-bind:href="link.url" v-bind:title="'Ir a «' + link.name + '»'">
454
+ <a :href="link.url" :title="'Ir a «' + link.name + '»'">
455
455
  <div class="icon">
456
- <i v-bind:class="link.icon"></i>
456
+ <i :class="link.icon"></i>
457
457
  </div>
458
458
  <div class="text">{{ link.name }}</div>
459
459
  </a>
460
460
  </li>
461
461
  <li class="navbar-item" v-for="item in items">
462
- <a v-bind:href="item.url" v-bind:title="'Ir a «' + item.name + '»'">
462
+ <a :href="item.url" :title="'Ir a «' + item.name + '»'">
463
463
  <div class="icon">
464
- <i v-bind:class="item.icon"></i>
464
+ <i :class="item.icon"></i>
465
465
  </div>
466
466
  <div class="text">{{ item.name }}</div>
467
467
  </a>
@@ -490,13 +490,13 @@ Vue.component('navbar-foro', {
490
490
  <div class="text">Panel Administrador</div>
491
491
  </a>
492
492
  </template>
493
- <a class="navbar-item" v-bind:href="directions.ucp" target="_blank" title="Ir al «Panel de Usuario»">
493
+ <a class="navbar-item" :href="directions.ucp" target="_blank" title="Ir al «Panel de Usuario»">
494
494
  <div class="icon">
495
495
  <i class="fas fa-sliders-h"></i>
496
496
  </div>
497
497
  <div class="text">Panel Usuario</div>
498
498
  </a>
499
- <a class="navbar-item" v-bind:href="'/u' + dataUserid" v-bind:title="'Ir a tu ' + profileName">
499
+ <a class="navbar-item" :href="'/u' + dataUserid" :title="'Ir a tu ' + profileName">
500
500
  <div class="icon">
501
501
  <i class="far fa-id-card"></i>
502
502
  </div>
@@ -508,7 +508,7 @@ Vue.component('navbar-foro', {
508
508
  </div>
509
509
  <div class="text">Temas personales</div>
510
510
  </a>
511
- <a class="navbar-item" v-bind:href="dataUserout" title="Cerrar sesión">
511
+ <a class="navbar-item" :href="dataUserout" title="Cerrar sesión">
512
512
  <div class="icon">
513
513
  <i class="fas fa-sign-out-alt"></i>
514
514
  </div>
@@ -519,7 +519,7 @@ Vue.component('navbar-foro', {
519
519
  <div class="select-container">
520
520
  <select v-model="multiAccount.position" v-on:change="changeAccount()" v-on:click="$event.stopPropagation()">
521
521
  <option value="-1" hidden selected>Selec. personaje</option>
522
- <option v-for="(account, index) in multiAccount.accounts" v-bind:value="index">{{ account.name }}</option>
522
+ <option v-for="(account, index) in multiAccount.accounts" :value="index">{{ account.name }}</option>
523
523
  </select>
524
524
  </div>
525
525
  </template>
@@ -539,7 +539,7 @@ Vue.component('links-ayuda', {
539
539
  },
540
540
  template: `
541
541
  <div class="columns is-multiline is-gapless is-vcentered">
542
- <a target="_blank" v-bind:href="link.url" v-bind:title="'Ir a «' + link.name + '»'" class="column" v-for="link in links">{{ link.name }}</a>
542
+ <a target="_blank" :href="link.url" :title="'Ir a «' + link.name + '»'" class="column" v-for="link in links">{{ link.name }}</a>
543
543
  </div>
544
544
  `
545
545
  });
@@ -553,7 +553,7 @@ Vue.component('links-anuncios', {
553
553
  template: `
554
554
  <div id="anmt-main">
555
555
  <template v-for="(announcement, index) in announcements">
556
- <a target="_blank" v-bind:href="announcement.url" v-bind:title="'Ir al anuncio «' + announcement.name + '»'" class="anmt-element"><span class="anmt-title">{{ announcement.name }}</span><span class="anmt-date">{{ announcement.date }}</span></a>
556
+ <a target="_blank" :href="announcement.url" :title="'Ir al anuncio «' + announcement.name + '»'" class="anmt-element"><span class="anmt-title">{{ announcement.name }}</span><span class="anmt-date">{{ announcement.date }}</span></a>
557
557
  <div class="anmt-sep" v-if="(announcements.length - 1) !== index"></div>
558
558
  </template>
559
559
  </div>
@@ -568,7 +568,7 @@ Vue.component('links-staff', {
568
568
  },
569
569
  template: `
570
570
  <div id="admin-main">
571
- <a target="_blank" v-bind:href="admin.url" class="admin-element" v-bind:style="'background-image: url(' + admin.avatar + ')'" v-bind:title="admin.title" v-for="admin in staff"><span class="admin-name">{{ admin.name }}</span><span class="admin-desc">{{ admin.desc }}</span></a>
571
+ <a target="_blank" :href="admin.url" class="admin-element" :style="'background-image: url(' + admin.avatar + ')'" :title="admin.title" v-for="admin in staff"><span class="admin-name">{{ admin.name }}</span><span class="admin-desc">{{ admin.desc }}</span></a>
572
572
  </div>
573
573
  `
574
574
  });
@@ -576,41 +576,33 @@ Vue.component('links-staff', {
576
576
  Vue.component('sabias-que', {
577
577
  data() {
578
578
  return {
579
- content: {}
579
+ content: forumContent.sq[Math.floor(Math.random() * forumContent.sq.length)]
580
580
  }
581
581
  },
582
582
  created() {
583
- const sq = forumContent.sq;
584
-
585
- this.content = sq[Math.floor(Math.random() * sq.length)];
586
-
587
583
  setInterval(() => {
588
- this.content = sq[Math.floor(Math.random() * sq.length)];
584
+ this.content = forumContent.sq[Math.floor(Math.random() * forumContent.sq.length)];
589
585
  }, 12000);
590
586
  },
591
587
  template: `
592
- <img id="sq-img" v-bind:src="current" alt="¿Sabías que?" />
588
+ <img id="sq-img" :src="content" alt="¿Sabías que?" />
593
589
  `
594
590
  });
595
591
 
596
592
  Vue.component('busquedas', {
597
593
  data() {
598
594
  return {
599
- content: {}
595
+ content: forumContent.searches[Math.floor(Math.random() * forumContent.searches.length)]
600
596
  }
601
597
  },
602
598
  created() {
603
- const search = forumContent.searches;
604
-
605
- this.content = search[Math.floor(Math.random() * search.length)];
606
-
607
599
  setInterval(() => {
608
- this.content = search[Math.floor(Math.random() * search.length)];
600
+ this.content = forumContent.searches[Math.floor(Math.random() * forumContent.searches.length)];
609
601
  }, 16000);
610
602
  },
611
603
  template: `
612
- <a id="search-img" v-bind:href="current.url" target="_blank" v-bind:title="current.desc">
613
- <img v-bind:src="current.img" alt="Búsqueda" />
604
+ <a id="search-img" :href="content.url" target="_blank" :title="content.desc">
605
+ <img :src="content.img" alt="Búsqueda" />
614
606
  </a>
615
607
  `
616
608
  });
@@ -672,8 +664,8 @@ Vue.component('wiki-index-items-d', {
672
664
  <ul>
673
665
  <li v-for="content in dataContent">
674
666
  <div class="wiki-controls">
675
- <router-link v-bind:to="content.id" v-if="!content.children.length" v-bind:title="'Ir al artículo de «' + content.name + '»'">{{ content.name }}</router-link>
676
- <a class="wiki-cascade" v-bind:title="'Desplegar categoría de «' + content.name + '»'" v-else>
667
+ <router-link :to="content.id" v-if="!content.children.length" :title="'Ir al artículo de «' + content.name + '»'">{{ content.name }}</router-link>
668
+ <a class="wiki-cascade" :title="'Desplegar categoría de «' + content.name + '»'" v-else>
677
669
  <span class="text">{{ content.name }}</span>
678
670
  <span class="icon">
679
671
  <i class="fas fa-plus"></i>
@@ -681,7 +673,7 @@ Vue.component('wiki-index-items-d', {
681
673
  </span>
682
674
  </a>
683
675
  </div>
684
- <wiki-index-items-d v-if="content.children.length" v-bind:data-content="content.children"></wiki-index-items-d>
676
+ <wiki-index-items-d v-if="content.children.length" :data-content="content.children"></wiki-index-items-d>
685
677
  </li>
686
678
  </ul>
687
679
  `
@@ -723,37 +715,37 @@ Vue.component('wiki-index', {
723
715
  <aside class="wiki-index is-content profile-sticky">
724
716
  <div class="is-hidden-touch">
725
717
  <h3>Contenido</h3>
726
- <wiki-index-items-d v-bind:data-content="indexContent"></wiki-index-items-d>
718
+ <wiki-index-items-d :data-content="indexContent"></wiki-index-items-d>
727
719
  </div>
728
720
  <div class="select-container is-hidden-desktop">
729
721
  <select>
730
722
  <option value="-1" hidden selected>Contenido</option>
731
723
  <template v-for="content in indexContent">
732
724
  <template v-if="content.children.length">
733
- <option v-bind:value="content.id" disabled >— {{ content.name }}</option>
725
+ <option :value="content.id" disabled >— {{ content.name }}</option>
734
726
  <template v-for="content in content.children">
735
727
  <template v-if="content.children.length">
736
- <option v-bind:value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
728
+ <option :value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
737
729
  <template v-for="content in content.children">
738
730
  <template v-if="content.children.length">
739
- <option v-bind:value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
731
+ <option :value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
740
732
  <template v-for="content in content.children">
741
733
  <template v-if="content.children.length">
742
- <option v-bind:value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
734
+ <option :value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
743
735
  <template v-for="content in content.children">
744
- <option v-bind:value="content.id">&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
736
+ <option :value="content.id">&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
745
737
  </template>
746
738
  </template>
747
- <option v-bind:value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
739
+ <option :value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
748
740
  </template>
749
741
  </template>
750
- <option v-bind:value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
742
+ <option :value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
751
743
  </template>
752
744
  </template>
753
- <option v-bind:value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
745
+ <option :value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>
754
746
  </template>
755
747
  </template>
756
- <option v-bind:value="content.id" v-else >— {{ content.name }}</option>
748
+ <option :value="content.id" v-else >— {{ content.name }}</option>
757
749
  </template>
758
750
  </select>
759
751
  </div>
@@ -810,9 +802,9 @@ Vue.component('wiki-nav', {
810
802
  template: `
811
803
  <div class="wiki-nav" v-if="more">
812
804
  <h2>Navegación</h2>
813
- <template v-if="nav.prev !== false">* <router-link v-bind:to="nav.prev.path" v-bind:title="'Ir al artículo «' + nav.prev.component.page_name + '»'">Página anterior: {{ nav.prev.component.page_name }}</router-link></template>
805
+ <template v-if="nav.prev !== false">* <router-link :to="nav.prev.path" :title="'Ir al artículo «' + nav.prev.component.page_name + '»'">Página anterior: {{ nav.prev.component.page_name }}</router-link></template>
814
806
  <br v-if="nav.prev !== false && nav.next !== false"/>
815
- <template v-if="nav.next !== false">* <router-link v-bind:to="nav.next.path" v-bind:title="'Ir al artículo «' + nav.next.component.page_name + '»'">Página siguiente: {{ nav.next.component.page_name }}</router-link></template>
807
+ <template v-if="nav.next !== false">* <router-link :to="nav.next.path" :title="'Ir al artículo «' + nav.next.component.page_name + '»'">Página siguiente: {{ nav.next.component.page_name }}</router-link></template>
816
808
  </div>
817
809
  `
818
810
  });
@@ -831,7 +823,7 @@ Vue.component('wiki-children', {
831
823
  template: `
832
824
  <div class="wiki-nav" v-if="nav.length > 0">
833
825
  <h2>{{ dataName }}</h2>
834
- <template v-for="route in nav">* <router-link v-bind:to="route.path" v-bind:title="'Ir al artículo «' + route.component.page_name + '»'">{{ route.component.page_name }}</router-link><br/></template>
826
+ <template v-for="route in nav">* <router-link :to="route.path" :title="'Ir al artículo «' + route.component.page_name + '»'">{{ route.component.page_name }}</router-link><br/></template>
835
827
  </div>
836
828
  `
837
829
  });
@@ -1030,7 +1022,7 @@ Vue.component('expediente-usuario', {
1030
1022
  template: `
1031
1023
  <section class="profile-element">
1032
1024
  <cabespecial-foro><template slot="title">Perfil de {{ profile.name }}</template></cabespecial-foro>
1033
- <section v-bind:class="currentClass">
1025
+ <section :class="currentClass">
1034
1026
  <section id="profile-head">
1035
1027
  <div id="profile-minifields" class="profile-container is-align-items-flex-start wiki-index is-content has-text-left" v-if="lengthBigFields">
1036
1028
  <h3>Contenido</h3>
@@ -1053,18 +1045,18 @@ Vue.component('expediente-usuario', {
1053
1045
  </ul>
1054
1046
  </div>
1055
1047
  <ul id="profile-minifields" class="profile-container is-align-items-center wiki-index is-content" v-else>
1056
- <li v-bind:id="'profile-minifield-' + field.id" v-for="field in usableMiniFields" class="minifield-element">
1048
+ <li :id="'profile-minifield-' + field.id" v-for="field in usableMiniFields" class="minifield-element">
1057
1049
  <span class="minifield-label">{{ field.title }}</span>
1058
1050
  <span class="minifield-content">{{ field.content }}</span>
1059
1051
  </li>
1060
1052
  </ul>
1061
- <div id="profile-userinfo" v-bind:style="'background-image: url(' + userCover + ');'">
1053
+ <div id="profile-userinfo" :style="'background-image: url(' + userCover + ');'">
1062
1054
  <div id="profile-userdata">
1063
1055
  <div id="profile-rank">{{ userRank }}</div>
1064
1056
  <div id="profile-username">{{ profile.name }}</div>
1065
1057
  </div>
1066
1058
  <div id="profile-usergest" v-if="Object.keys(profile.admin).length">
1067
- <a v-bind:href="profile.admin.admin" v-bind:title="'Administrar a «' + profile.name + '»'" target="_blank">Administrar</a> / <a v-bind:href="profile.admin.ban" v-bind:title="'Banear a «' + profile.name + '»'" target="_blank">Banear</a>
1059
+ <a :href="profile.admin.admin" :title="'Administrar a «' + profile.name + '»'" target="_blank">Administrar</a> / <a :href="profile.admin.ban" :title="'Banear a «' + profile.name + '»'" target="_blank">Banear</a>
1068
1060
  </div>
1069
1061
  </div>
1070
1062
  </section>
@@ -1080,27 +1072,27 @@ Vue.component('expediente-usuario', {
1080
1072
  <div class="column is-half is-half-mobile">
1081
1073
  <ul class="profile-links">
1082
1074
  <li>
1083
- <a v-bind:href="profile.links.posts" v-bind:title="'Mensajes de «' + profile.name + '»'" target="_blank">
1084
- <i v-bind:class="config.contactFields.mensajes"></i> Mensajes
1075
+ <a :href="profile.links.posts" :title="'Mensajes de «' + profile.name + '»'" target="_blank">
1076
+ <i :class="config.contactFields.mensajes"></i> Mensajes
1085
1077
  </a>
1086
1078
  </li>
1087
1079
  <li>
1088
- <a v-bind:href="profile.links.topics" v-bind:title="'Temas de «' + profile.name + '»'" target="_blank">
1089
- <i v-bind:class="config.contactFields.temas"></i> Temas
1080
+ <a :href="profile.links.topics" :title="'Temas de «' + profile.name + '»'" target="_blank">
1081
+ <i :class="config.contactFields.temas"></i> Temas
1090
1082
  </a>
1091
1083
  </li>
1092
1084
  <li v-if="profile.contact.mensaje_privado !== undefined">
1093
- <a v-bind:href="profile.contact.mensaje_privado.content" v-bind:title="'Enviar un mensaje privado a «' + profile.name + '»'" target="_blank">
1094
- <i v-bind:class="config.contactFields.mp"></i> Mensaje Privado
1085
+ <a :href="profile.contact.mensaje_privado.content" :title="'Enviar un mensaje privado a «' + profile.name + '»'" target="_blank">
1086
+ <i :class="config.contactFields.mp"></i> Mensaje Privado
1095
1087
  </a>
1096
1088
  </li>
1097
1089
  </ul>
1098
1090
  </div>
1099
1091
  <div class="column is-half is-half-mobile">
1100
1092
  <ul class="profile-links">
1101
- <li v-bind:id="'profile-link-' + field.id" v-for="field in usableLinkFields">
1102
- <a v-bind:href="field.url" v-bind:title="field.desc" target="_blank">
1103
- <i v-bind:class="field.icon"></i> {{ field.title }}
1093
+ <li :id="'profile-link-' + field.id" v-for="field in usableLinkFields">
1094
+ <a :href="field.url" :title="field.desc" target="_blank">
1095
+ <i :class="field.icon"></i> {{ field.title }}
1104
1096
  </a>
1105
1097
  </li>
1106
1098
  </ul>
@@ -1114,14 +1106,14 @@ Vue.component('expediente-usuario', {
1114
1106
  <aside id="profile-infominifields" class="wiki-index profile-sticky">
1115
1107
  <h3>Datos básicos</h3>
1116
1108
  <ul class="p-0">
1117
- <li v-bind:id="'profile-minifield-' + field.id" v-for="field in usableMiniFields" class="minifield-element">
1109
+ <li :id="'profile-minifield-' + field.id" v-for="field in usableMiniFields" class="minifield-element">
1118
1110
  <span class="minifield-label">{{ field.title }}</span>
1119
1111
  <span class="minifield-content">{{ field.content }}</span>
1120
1112
  </li>
1121
1113
  </ul>
1122
1114
  </aside>
1123
1115
  <ul id="profile-infofields">
1124
- <li v-bind:id="'profile-field-' + field.id" class="profilefield-element" v-for="field in usableBigFields" v-if="field.content.length">
1116
+ <li :id="'profile-field-' + field.id" class="profilefield-element" v-for="field in usableBigFields" v-if="field.content.length">
1125
1117
  <div class="field-head">
1126
1118
  <h4>{{ field.title }}</h4>
1127
1119
  <h6>{{ field.subtitle }}</h6>
@@ -1136,7 +1128,7 @@ Vue.component('expediente-usuario', {
1136
1128
  <span>Extras</span>
1137
1129
  </div>
1138
1130
  <ul class="profile-container profile-extra-space">
1139
- <li v-bind:id="'profile-extrafield-' + field.id" class="extrafield-element" v-for="field in usableExtraFields" v-if="field.content.length">
1131
+ <li :id="'profile-extrafield-' + field.id" class="extrafield-element" v-for="field in usableExtraFields" v-if="field.content.length">
1140
1132
  <div class="extrafield-head">
1141
1133
  <h4>{{ field.title }}</h4>
1142
1134
  </div>
@@ -1156,7 +1148,7 @@ Vue.component('expediente-usuario', {
1156
1148
  </div>
1157
1149
  <ul id="chronology-element" class="is-two-columns-list">
1158
1150
  <template v-for="element in chronologyField">
1159
- <elemento-cronologia v-bind:data-element="element" data-type="profile" />
1151
+ <elemento-cronologia :data-element="element" data-type="profile" />
1160
1152
  </template>
1161
1153
  </ul>
1162
1154
  </li>
@@ -1166,7 +1158,7 @@ Vue.component('expediente-usuario', {
1166
1158
  </div>
1167
1159
  <ul id="relationships-element" class="is-two-columns-list">
1168
1160
  <template v-for="element in relationshipsField">
1169
- <elemento-relaciones v-bind:data-element="element" data-type="profile" />
1161
+ <elemento-relaciones :data-element="element" data-type="profile" />
1170
1162
  </template>
1171
1163
  </ul>
1172
1164
  </li>
@@ -1,2 +1,2 @@
1
- Vue.component("categoria-foro",{props:["dataId"],computed:{slugName:function(){const n=this.dataId.indexOf("<h2>")>-1?FNR.utility.genSlug(this.dataId.split("<h2>")[1].split("</h2>")[0],"-"):FNR.utility.genSlug(this.dataId,"-");return"category-"+n}},template:"\n <section v-bind:class=\"'category-element ' + slugName\">\n \t\t<slot></slot>\n </section>\n "}),Vue.component("cabecera-foro",{data:function(){return{dataTitle:void 0===this.$slots.title[0].tag?this.$slots.title[0].text:this.$slots.title[0].children[0].text}},template:'\n <div class="forum-head regular-head">\n <titulo-especial v-bind:data-title="dataTitle"></titulo-especial>\n </div>\n '}),Vue.component("cabcategoria-foro",{data:function(){return{dataTitle:void 0===this.$slots.title[0].tag?this.$slots.title[0].text:this.$slots.title[0].children[0].text}},template:'\n <div class="forum-head category-head">\n <titulo-especial v-bind:data-title="dataTitle"></titulo-especial>\n </div>\n '}),Vue.component("cabespecial-foro",{data:function(){return{dataTitle:void 0===this.$slots.title[0].tag?this.$slots.title[0].text:this.$slots.title[0].children[0].text}},template:'\n <div class="forum-head special-head">\n <titulo-especial v-bind:data-title="dataTitle"></titulo-especial>\n </div>\n '}),Vue.component("subforo-foro",{props:["dataId"],computed:{slugId:function(){let n="";return window.location.pathname.match(/f(\d+)-/)?n=window.location.pathname.match(/f(\d+)-/)[1]:window.location.pathname.match(/f(\d+)p(\d+)-/)&&(n=window.location.pathname.match(/f(\d+)p(\d+)-/)[1]),"subforum-"+n},slugName:function(){const n=this.dataId.indexOf("<h2>")>-1?FNR.utility.genSlug(this.dataId.split("<h2>")[1].split("</h2>")[0],"-"):FNR.utility.genSlug(this.dataId,"-");return"subforum-"+n}},template:"\n <section v-bind:class=\"'subforum-element ' + slugId + ' ' + slugName\">\n \t\t<slot></slot>\n </section>\n "}),Vue.component("lista-temas-cabecera",{props:["dataElements"],data:function(){return{elementos:JSON.parse(this.dataElements.replace(/'/g,'"'))}},template:'\n <ul class="topiclist-header no-style">\n <li v-for="element in elementos">\n <titulo-especial v-bind:data-title="element"></titulo-especial>\n </li>\n </ul>\n '}),Vue.component("tema-foro",{computed:{slugId:function(){let n="";return window.location.pathname.match(/t(\d+)-/)?n=window.location.pathname.match(/t(\d+)-/)[1]:window.location.pathname.match(/t(\d+)p(\d+)-/)&&(n=window.location.pathname.match(/t(\d+)p(\d+)-/)[1]),"topic-"+n},slugName:function(){const n=FNR.utility.genSlug(void 0===this.$slots.title[0].tag?this.$slots.title[0].text:this.$slots.title[0].children[0].text,"-");return"topic-"+n}},template:"\n <section v-bind:class=\"'topic-element ' + slugId + ' ' + slugName\">\n \t\t<slot></slot>\n </section>\n "}),Vue.component("mando-foro",{props:["dataId","dataApp"],data:function(){return{children:0}},computed:{isStatusClass:function(){return this.children>0?"forum-controls":"forum-controls not-show"}},created(){Object.values(this.$slots).map(n=>{this.children+=n.length})},template:'\n <section v-bind:id="dataId" v-bind:class="isStatusClass">\n <template v-if="dataApp === \'true\'">\n <div class="left page-pagination">\n <slot name="pagination"></slot>\n </div>\n <ul class="right no-style page-buttons">\n <slot name="controls"></slot>\n </ul>\n </template>\n <template v-else>\n <div class="left page-pagination"></div>\n <ul class="right no-style page-buttons"></ul>\n </template>\n </section>\n '}),Vue.component("titulo-especial",{props:["dataTitle"],computed:{cleaned:function(){return this.dataTitle.indexOf("<h2>")>-1?this.dataTitle.split("<h2>")[1].split("</h2>")[0]:this.dataTitle},minimized:function(){return FNR.utility.genSlug(this.cleaned," ")}},template:'\n <h3 class="is-tweakeable"><span class="is-measurable" v-html="cleaned"></span></h3>\n '}),Vue.component("cuerpo-widget",{props:["dataClass"],computed:{currentClass:function(){return void 0===this.dataClass?"plank-inner":"plank-inner "+this.dataClass}},template:'\n <div class="plank-content">\n <div v-bind:class="currentClass">\n <slot></slot>\n </div>\t\t\t\t\t\t \n </div>\n '}),Vue.component("separador-foro",{props:["dataFaction"],data:function(){return{image:forumDefaults.separator}},template:'\n <section class="forumseparator-element">\n <img v-bind:src="image" />\n </section>\n '}),Vue.component("tema-ref",{props:["dataInfo"],data:function(){return{profileName:forumConfig.profileOptions.profileName||"perfil"}},computed:{userColor:function(){return"color: "+this.dataInfo.lastpost.who.color}},template:'\n <div class="ltopic-element">\n <a class="ltopic-last" v-bind:href="dataInfo.lastpost.url" target="_blank" v-bind:title="\'Ir al último mensaje del tema «\' + dataInfo.name + \'»\'">\n <i class="fas fa-link"></i>\n </a>\n <div class="ltopic-data">\n <a class="ltopic-title" v-bind:href="dataInfo.url" target="_blank" v-bind:title="\'Ir al tema «\' + dataInfo.name + \'»\'">{{ dataInfo.name }}</a>\n <small class="ltopic-info"><a v-bind:href="dataInfo.lastpost.who.url" target="_blank" v-bind:style="userColor" v-bind:title="\'Ir al \' + profileName + \' de «\' + dataInfo.lastpost.who.name + \'»\'">{{ dataInfo.lastpost.who.name | just-name }}</a>, {{ dataInfo.lastpost.date }} en <a v-bind:href="dataInfo.forum.url" target="_blank" v-bind:title="\'Ir al subforo «\' + dataInfo.forum.name + \'»\'">{{ dataInfo.forum.name }}</a></small>\n </div>\n </div>\n '}),Vue.component("campo-foro",{props:["dataName"],mounted(){const n=this.$el.parentElement.classList;n.add("field-element"),n.add("field-"+FNR.utility.genSlug(this.dataName,"-"))},template:'\n <div class="forum-field">\n <div class="field-name">{{ dataName | capitalize }}</div>\n <div class="field-content">\n <slot></slot>\n </div>\n </div>\n '}),Vue.component("boton-foro",{props:["dataUrl","dataName","dataIcon","dataType","dataInput"],computed:{realClass:function(){return"true"===this.dataInput?"forum-button is-input":"forum-button"},realName:function(){return"text"+("no-name"===this.dataType?" is-hidden-touch":"")},realUrl:function(){return"true"===this.dataInput?"javascript:{}":this.dataUrl}},mounted(){const n=this.$el.parentElement.classList;n.add("btn-element"),n.add("btn-"+FNR.utility.genSlug(this.dataName,"-"))},template:'\n <a v-bind:href="realUrl" targer="_blank" v-bind:class="realClass" v-bind:title="dataName">\n <span class="icon">\n <i v-bind:class="dataIcon"></i>\n </span>\n <span v-bind:class="realName">{{ dataName }}</span>\n <span v-if="dataInput === \'true\'" class="input-real">\n <slot name="input"></slot>\n </span>\n </a>\n '}),Vue.component("cargando-foro",{props:["dataText"],template:'\n <section id="loading-element">\n <div id="loading-content">\n <i class="fas fa-circle-notch fa-spin"></i>\n <span>{{ dataText }}</span>\n </div>\n </section>\n '}),Vue.component("aviso-foro",{template:' \n <div class="forum-infoblock">\n <h5>Antes de proceder recuerda:</h5>\n <slot></slot>\n </div>\n '}),Vue.component("afiliaciones-foro",{data:function(){return{afis:{}}},created(){FNR.forum.getAffiliates().then(n=>{this.afis=n})},template:'\n <ul v-html="afis.normal" class="no-style"></ul>\n '}),Vue.component("controles-foro",{data:function(){return{maPage:0,userName:_userdata.username,userLevel:_userdata.user_level,userId:_userdata.user_id,userLog:_userdata.session_logged_in,userMP:0,userOut:"",isActive:!1}},computed:{isActiveClass:function(){return"has-bg"+(this.isActive?" visible":" not-visible")}},methods:{turnActive:function(){this.isActive=!this.isActive}},created(){0!==this.userLog&&(null!==document.getElementById("i_icon_mini_new_message")&&null!==document.getElementById("i_icon_mini_new_message").title.match(/[0-255]/)&&(this.userMP=parseInt(document.getElementById("i_icon_mini_new_message").title.match(/[0-255]/)[0])),this.userOut=document.getElementById("logout").href)},template:'\n <div class="main-body">\n \t\t<nav id="forum-breadcrumb" class="breadcrumb has-succeeds-separator left" aria-label="breadcrumbs">\n \t<ul>\n \t<li>\n \t<a href="/" title="Ir a «Inicio»">Inicio</a>\n \t</li>\n \t</ul>\n \t</nav>\n <nav class="right"> \n <section id="forum-navbar-desktop" class="is-hidden-touch">\n <navbar-foro v-bind:data-username="userName" v-bind:data-userlevel="userLevel" v-bind:data-userid="userId" v-bind:data-userlog="userLog" v-bind:data-usermp="userMP" v-bind:data-userout="userOut" />\n </section>\n <section id="forum-navbar-mobile" class="is-hidden-desktop">\n <div id="hmg-button" v-on:click="turnActive()" class="is-pointer">\n <i class="fas fa-bars"></i>\n </div>\n <div id="hmg-menu" v-bind:class="isActiveClass">\n <h3>{{ userName | just-name }}<i class="fas fa-times is-pointer" v-on:click="turnActive()"></i></h3>\n <navbar-foro v-bind:data-username="userName" v-bind:data-userlevel="userLevel" v-bind:data-userid="userId" v-bind:data-userlog="userLog" v-bind:data-usermp="userMP" v-bind:data-userout="userOut" />\n </div>\n <div class="bg-active" v-on:click="turnActive()"></div>\n </section>\n <section v-if="maPage === 1" id="multiaccount-transition">\n <cargando-foro data-text="Cambiando de cuenta…"></cargando-foro>\n </section>\n </nav>\n </div>\n '}),Vue.component("navbar-foro",{props:["dataUsername","dataUserlevel","dataUserid","dataUserlog","dataUsermp","dataUserout"],data:function(){return{profileName:forumConfig.profileOptions.profileName||"perfil",items:forumContent.navbar,directions:forumConfig.usableDirections,multiAccount:{status:!1,position:-1,accounts:[]}}},computed:{isStatusClass:function(){return(1===this.dataUserlog?"is-logged":"is-unlogged")+(1===this.dataUserlevel?" is-admin":" is-user")},mpText:function(){return"Mensajería"+(0!==this.dataUsermp?" ("+this.dataUsermp+")":"")},links:function(){return forumContent.links.filter(n=>void 0!==n.icon)}},methods:{changeAccount:function(){this.$parent.maPage=1,FNR.user.changeAccount(this.dataUserout,this.multiAccount.accounts[this.multiAccount.position].name,this.multiAccount.accounts[this.multiAccount.position].password).then(n=>{n&&window.location.reload()})}},created(){this.multiAccount.status=!1!==FNR.cache.getData("usermultiaccounts")&&!1!==FNR.cache.getData("userpassword"),this.multiAccount.accounts=(!1===FNR.cache.getData("usermultiaccounts")?[]:FNR.cache.getData("usermultiaccounts").map(n=>({name:n.name,password:sjcl.decrypt(FNR.cache.getData("userpassword"),n.password)}))).filter(n=>n.name!==_userdata.username).sort((n,e)=>n.name<e.name?-1:n.name>e.name?1:0)},template:'\n <ul v-bind:class="isStatusClass">\n <template v-if="!dataUserlog">\n <li class="navbar-item">\n <a href="/register" title="Registrarse en el foro">\n <div class="icon">\n <i class="fas fa-user-plus"></i>\n </div>\n <div class="text">Registrarse</div>\n </a>\n </li>\n <li class="navbar-item">\n <a href="/login" title="Iniciar sesión en el foro">\n <div class="icon">\n <i class="fas fa-sign-in-alt"></i>\n </div>\n <div class="text">Conectarse</div>\n </a>\n </li>\n </template>\n <template v-else>\n <li class="navbar-item is-hidden-desktop" v-for="link in links">\n <a v-bind:href="link.url" v-bind:title="\'Ir a «\' + link.name + \'»\'">\n <div class="icon">\n <i v-bind:class="link.icon"></i>\n </div>\n <div class="text">{{ link.name }}</div>\n </a>\n </li>\n <li class="navbar-item" v-for="item in items">\n <a v-bind:href="item.url" v-bind:title="\'Ir a «\' + item.name + \'»\'">\n <div class="icon">\n <i v-bind:class="item.icon"></i>\n </div>\n <div class="text">{{ item.name }}</div>\n </a>\n </li>\n <li class="navbar-item">\n <a href="/privmsg?folder=inbox" title="Ir a tu mensajería privada">\n <div class="icon">\n <i class="fas fa-envelope"></i>\n </div>\n <div class="text">{{ mpText }}</div>\n </a>\n </li>\n <li class="navbar-item has-dropdown is-dropeable has-bg">\n <a class="navbar-link is-pointer" title="Accionar menú de usuario">\n <div class="icon">\n <i class="fas fa-user"></i>\n </div>\n <div class="text">{{ dataUsername | just-name }}</div>\n </a>\n <div class="navbar-dropdown is-right">\n <template v-if="dataUserlevel === 1">\n <a class="navbar-item" href="/admin" target="_blank" title="Ir al «Panel de Administrador»">\n <div class="icon">\n <i class="fas fa-cogs"></i>\n </div>\n <div class="text">Panel Administrador</div>\n </a>\n </template>\n <a class="navbar-item" v-bind:href="directions.ucp" target="_blank" title="Ir al «Panel de Usuario»">\n <div class="icon">\n <i class="fas fa-sliders-h"></i>\n </div>\n <div class="text">Panel Usuario</div>\n </a>\n <a class="navbar-item" v-bind:href="\'/u\' + dataUserid" v-bind:title="\'Ir a tu \' + profileName">\n <div class="icon">\n <i class="far fa-id-card"></i>\n </div>\n <div class="text">{{ profileName | capitalize }}</div>\n </a>\n <a class="navbar-item" href="/search?search_id=egosearch" title="Ir a tus temas personales">\n <div class="icon">\n <i class="fas fa-archive"></i>\n </div>\n <div class="text">Temas personales</div>\n </a>\n <a class="navbar-item" v-bind:href="dataUserout" title="Cerrar sesión">\n <div class="icon">\n <i class="fas fa-sign-out-alt"></i>\n </div>\n <div class="text">Cerrar sesión</div>\n </a>\n <template v-if="multiAccount.status">\n <hr/>\n <div class="select-container">\n <select v-model="multiAccount.position" v-on:change="changeAccount()" v-on:click="$event.stopPropagation()">\n <option value="-1" hidden selected>Selec. personaje</option>\n <option v-for="(account, index) in multiAccount.accounts" v-bind:value="index">{{ account.name }}</option>\n </select>\n </div>\n </template>\n </div>\n </li>\n </template>\n </ul>\n '}),Vue.component("links-ayuda",{data:function(){return{links:forumContent.links}},template:'\n <div class="columns is-multiline is-gapless is-vcentered">\n <a target="_blank" v-bind:href="link.url" v-bind:title="\'Ir a «\' + link.name + \'»\'" class="column" v-for="link in links">{{ link.name }}</a>\n </div>\n '}),Vue.component("links-anuncios",{data:function(){return{announcements:forumContent.announcements}},template:'\n <div id="anmt-main">\n <template v-for="(announcement, index) in announcements">\n <a target="_blank" v-bind:href="announcement.url" v-bind:title="\'Ir al anuncio «\' + announcement.name + \'»\'" class="anmt-element"><span class="anmt-title">{{ announcement.name }}</span><span class="anmt-date">{{ announcement.date }}</span></a>\n <div class="anmt-sep" v-if="(announcements.length - 1) !== index"></div>\n </template>\n </div>\n '}),Vue.component("links-staff",{data:function(){return{staff:forumContent.staff}},template:'\n <div id="admin-main">\n <a target="_blank" v-bind:href="admin.url" class="admin-element" v-bind:style="\'background-image: url(\' + admin.avatar + \')\'" v-bind:title="admin.title" v-for="admin in staff"><span class="admin-name">{{ admin.name }}</span><span class="admin-desc">{{ admin.desc }}</span></a>\n </div>\n '}),Vue.component("sabias-que",{data:function(){return{content:{}}},created(){const n=forumContent.sq;this.content=n[Math.floor(Math.random()*n.length)],setInterval(()=>{this.content=n[Math.floor(Math.random()*n.length)]},12e3)},template:'\n <img id="sq-img" v-bind:src="current" alt="¿Sabías que?" />\n '}),Vue.component("busquedas",{data:function(){return{content:{}}},created(){const n=forumContent.searches;this.content=n[Math.floor(Math.random()*n.length)],setInterval(()=>{this.content=n[Math.floor(Math.random()*n.length)]},16e3)},template:'\n <a id="search-img" v-bind:href="current.url" target="_blank" v-bind:title="current.desc">\n <img v-bind:src="current.img" alt="Búsqueda" />\n </a>\n '}),Vue.component("note-info",{template:'\n <div class="admin-block admin-note">\n <div class="admin-icon fas fa-caret-right"></div>\n <div class="admin-content admin-title">\n <slot></slot>\n </div>\n </div>\n '}),Vue.component("redirect",{props:["dataTo"],computed:{currentStatus:function(){return!!window.location.pathname.match(/t(\d+)-/)}},created(){this.currentStatus&&window.location.replace(this.dataTo)},template:'\n <div class="is-content">\n <template v-if="!currentStatus">\n <p>No hay mensaje.</p>\n </template>\n </div>\n '}),Vue.component("quote",{props:["dataFrom","from"],template:'\n <div class="admin-block admin-box user-coolquote">\n <div class="coolquote-quote">\n <div class="fas fa-quote-left"></div>\n <div class="coolquote-content">\n <slot></slot>\n </div>\n <div class="fas fa-quote-right"></div>\n </div>\n <div class="coolquote-from">{{ dataFrom }}{{ from }}</div>\n </div>\n '}),Vue.component("wiki-index-items-d",{props:["dataContent"],template:'\n <ul>\n <li v-for="content in dataContent">\n <div class="wiki-controls">\n <router-link v-bind:to="content.id" v-if="!content.children.length" v-bind:title="\'Ir al artículo de «\' + content.name + \'»\'">{{ content.name }}</router-link>\n <a class="wiki-cascade" v-bind:title="\'Desplegar categoría de «\' + content.name + \'»\'" v-else>\n <span class="text">{{ content.name }}</span>\n <span class="icon">\n <i class="fas fa-plus"></i>\n <i class="fas fa-minus"></i>\n </span>\n </a>\n </div>\n <wiki-index-items-d v-if="content.children.length" v-bind:data-content="content.children"></wiki-index-items-d>\n </li>\n </ul>\n '}),Vue.component("wiki-index",{computed:{indexContent:function(){const n=t=>e.filter(n=>n.component.page_parent===t).map(e=>({id:e.path,name:e.component.page_name,children:n(e.component.page_name)})),e=routes.filter(n=>void 0!==n.component).filter(n=>!n.component.page_skip);return e.filter(n=>void 0===n.component.page_parent).map(e=>({id:e.path,name:e.component.page_name,children:n(e.component.page_name)}))}},template:'\n <aside class="wiki-index is-content profile-sticky">\n <div class="is-hidden-touch">\n <h3>Contenido</h3>\n <wiki-index-items-d v-bind:data-content="indexContent"></wiki-index-items-d>\n </div>\n <div class="select-container is-hidden-desktop">\n <select>\n <option value="-1" hidden selected>Contenido</option>\n <template v-for="content in indexContent">\n <template v-if="content.children.length">\n <option v-bind:value="content.id" disabled >— {{ content.name }}</option>\n <template v-for="content in content.children">\n <template v-if="content.children.length">\n <option v-bind:value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n <template v-for="content in content.children">\n <template v-if="content.children.length">\n <option v-bind:value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n <template v-for="content in content.children">\n <template v-if="content.children.length">\n <option v-bind:value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n <template v-for="content in content.children">\n <option v-bind:value="content.id">&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n </template>\n </template>\n <option v-bind:value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n </template>\n </template>\n <option v-bind:value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n </template>\n </template>\n <option v-bind:value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n </template>\n </template>\n <option v-bind:value="content.id" v-else >— {{ content.name }}</option>\n </template>\n </select>\n </div>\n </aside>\n '}),Vue.component("wiki-contenido",{props:["dataMode"],template:'\n <div class="wiki-body has-small-topiclist">\n <wiki-index></wiki-index>\n <template v-if="dataMode === \'app\'">\n <slot></slot>\n </template>\n <template v-else>\n <section class="wiki-content is-dramatic">\n <slot></slot>\n </section>\n </template>\n </div>\n '}),Vue.component("wiki-nav",{computed:{more:function(){return routes.filter(n=>n.component).filter(n=>n.component.page_parent===routes.filter(n=>n.path===router.history.current.path)[0].component.page_parent).length>1},nav:function(){const n=routes.filter(n=>n.component).filter(n=>n.component.page_parent===routes.filter(n=>n.path===router.history.current.path)[0].component.page_parent),e=n.map(n=>n.path).indexOf(router.history.current.path);return{next:!(e+1>=n.length)&&n[e+1],prev:!(e-1<0)&&n[e-1]}}},template:'\n <div class="wiki-nav" v-if="more">\n <h2>Navegación</h2>\n <template v-if="nav.prev !== false">* <router-link v-bind:to="nav.prev.path" v-bind:title="\'Ir al artículo «\' + nav.prev.component.page_name + \'»\'">Página anterior: {{ nav.prev.component.page_name }}</router-link></template>\n <br v-if="nav.prev !== false && nav.next !== false"/>\n <template v-if="nav.next !== false">* <router-link v-bind:to="nav.next.path" v-bind:title="\'Ir al artículo «\' + nav.next.component.page_name + \'»\'">Página siguiente: {{ nav.next.component.page_name }}</router-link></template>\n </div>\n '}),Vue.component("wiki-children",{props:["dataName","dataCategory"],computed:{nav:function(){return routes.filter(n=>n.component).filter(n=>n.component.page_parent===this.dataCategory)}},template:'\n <div class="wiki-nav" v-if="nav.length > 0">\n <h2>{{ dataName }}</h2>\n <template v-for="route in nav">* <router-link v-bind:to="route.path" v-bind:title="\'Ir al artículo «\' + route.component.page_name + \'»\'">{{ route.component.page_name }}</router-link><br/></template>\n </div>\n '}),Vue.component("modal-foro",{props:["dataTitle"],methods:{modalClose:function(){this.$parent.state.modal=!1,this.$emit("modal-close")}},template:' \n <div id="forum-modal">\n <div class="modal-element">\n <div class="modal-title">\n <h3>{{ dataTitle }}</h3>\n <a v-on:click="modalClose()">\n <i class="fas fa-times"></i>\n </a>\n </div>\n <div class="modal-content">\n <div class="is-content">\n <slot name="content"></slot>\n </div>\n <slot name="controls"></slot>\n </div>\n </div>\n <div class="is-bgmodal bg-active" v-on:click="modalClose()"></div>\n </div>\n '}),Vue.component("controles-modal",{template:' \n <div class="modal-buttons">\n <slot></slot>\n </div>\n '}),Vue.component("expediente-usuario",{data:function(){return{info:{name:_userdata.username,level:_userdata.user_level,log:_userdata.session_logged_in},config:forumConfig.profileUser,profile:profile}},computed:{userRank:function(){return this.profile.fields[forumConfig.profileOptions.profileRank].content},userCite:function(){return this.profile.fields[forumConfig.profileOptions.profileCite].content},userCover:function(){return this.profile.fields[forumConfig.profileOptions.profileCover].content},usableMiniFields:function(){return void 0!==this.config.miniFields&&this.config.miniFields.length?Object.entries(this.profile.fields).filter(n=>this.config.miniFields.indexOf(n[0])>-1).map(n=>({id:n[0],title:n[1].label,content:n[1].content})).sort((n,e)=>this.config.miniFields.indexOf(n.id)>this.config.miniFields.indexOf(e.id)?1:-1).map(n=>({id:FNR.utility.genSlug(n.title,"-"),title:n.title,content:n.content})):[]},usableBigFields:function(){return void 0!==this.config.mainFields&&Object.keys(this.config.mainFields).length?Object.entries(this.profile.fields).filter(n=>Object.keys(this.config.mainFields).indexOf(n[0])>-1).map(n=>({id:n[0],title:n[1].label,subtitle:this.config.mainFields[n[0]],content:" &nbsp;-"===n[1].content?"":n[1].content})).sort((n,e)=>Object.keys(this.config.mainFields).indexOf(n.id)>Object.keys(this.config.mainFields).indexOf(e.id)?1:-1).map(n=>({id:FNR.utility.genSlug(n.title,"-"),title:n.title,subtitle:n.subtitle,content:n.content})):[]},lengthBigFields:function(){let n=0;return this.usableBigFields.map(e=>{void 0!==e.content&&(n+=e.content.length)}),n},usableExtraFields:function(){return void 0!==this.config.extraFields&&this.config.extraFields.length?Object.entries(this.profile.fields).filter(n=>this.config.extraFields.indexOf(n[0])>-1).map(n=>({id:n[0],title:n[1].label,content:" &nbsp;-"===n[1].content?"":n[1].content})).sort((n,e)=>this.config.extraFields.indexOf(n.id)>this.config.extraFields.indexOf(e.id)?1:-1).map(n=>({id:FNR.utility.genSlug(n.title,"-"),title:n.title,content:n.content})):[]},lengthExtraFields:function(){let n=0;return this.usableExtraFields.map(e=>{void 0!==e.content&&(n+=e.content.length)}),n},usableLinkFields:function(){return this.profile.contact.length?[]:Object.entries(this.profile.contact).filter(n=>"Mensaje Privado"!==n[1].label).map(n=>({id:FNR.utility.genSlug(n[1].label,"-"),title:n[1].label,url:n[1].content,icon:this.config.contactFields[n[0]],desc:"Ir a "+n[1].label+" de «"+this.profile.name+"»"}))},chronologyField:function(){return void 0!==this.config.cronoField&&this.config.cronoField.length?FNR.utility.genArray(this.profile.fields[FNR.utility.genSlug(this.config.cronoField,"_")].content):[]},relationshipsField:function(){return void 0!==this.config.relaField&&this.config.relaField.length?FNR.utility.genArray(this.profile.fields[FNR.utility.genSlug(this.config.relaField,"_")].content):[]},lengthHistoryFields:function(){let n=0;return n+=this.chronologyField.length,n+=this.relationshipsField.length,n},currentClass:function(){return"usergroup-"+this.profile.colour}},
2
- template:' \n <section class="profile-element"> \n <cabespecial-foro><template slot="title">Perfil de {{ profile.name }}</template></cabespecial-foro>\n <section v-bind:class="currentClass">\n <section id="profile-head">\n <div id="profile-minifields" class="profile-container is-align-items-flex-start wiki-index is-content has-text-left" v-if="lengthBigFields">\n <h3>Contenido</h3>\n <ul>\n <li v-if="lengthBigFields">\n <div class="wiki-controls">\n <a href="#anchor-info">Información</a>\n </div>\n </li>\n <li v-if="lengthExtraFields">\n <div class="wiki-controls">\n <a href="#anchor-extras">Extras</a>\n </div>\n </li>\n <li v-if="lengthHistoryFields">\n <div class="wiki-controls">\n <a href="#anchor-history">Historial</a>\n </div>\n </li>\n </ul>\n </div>\n <ul id="profile-minifields" class="profile-container is-align-items-center wiki-index is-content" v-else>\n <li v-bind:id="\'profile-minifield-\' + field.id" v-for="field in usableMiniFields" class="minifield-element">\n <span class="minifield-label">{{ field.title }}</span>\n <span class="minifield-content">{{ field.content }}</span>\n </li>\n </ul>\n <div id="profile-userinfo" v-bind:style="\'background-image: url(\' + userCover + \');\'">\n <div id="profile-userdata">\n <div id="profile-rank">{{ userRank }}</div>\n <div id="profile-username">{{ profile.name }}</div>\n </div>\n <div id="profile-usergest" v-if="Object.keys(profile.admin).length">\n <a v-bind:href="profile.admin.admin" v-bind:title="\'Administrar a «\' + profile.name + \'»\'" target="_blank">Administrar</a> / <a v-bind:href="profile.admin.ban" v-bind:title="\'Banear a «\' + profile.name + \'»\'" target="_blank">Banear</a>\n </div>\n </div>\n </section>\n <section id="profile-subhead">\n <div class="columns is-vcentered">\n <div class="column is-6 is-full-mobile">\n <div id="profile-quote" class="is-content">\n <quote>{{ userCite }}</quote>\n </div>\n </div>\n <div class="column is-5 is-offset-1 is-full-mobile is-offset-0-mobile">\n <div class="columns is-flex is-vcentered">\n <div class="column is-half is-half-mobile">\n <ul class="profile-links">\n <li>\n <a v-bind:href="profile.links.posts" v-bind:title="\'Mensajes de «\' + profile.name + \'»\'" target="_blank">\n <i v-bind:class="config.contactFields.mensajes"></i> Mensajes\n </a>\n </li>\n <li>\n <a v-bind:href="profile.links.topics" v-bind:title="\'Temas de «\' + profile.name + \'»\'" target="_blank">\n <i v-bind:class="config.contactFields.temas"></i> Temas\n </a>\n </li>\n <li v-if="profile.contact.mensaje_privado !== undefined">\n <a v-bind:href="profile.contact.mensaje_privado.content" v-bind:title="\'Enviar un mensaje privado a «\' + profile.name + \'»\'" target="_blank">\n <i v-bind:class="config.contactFields.mp"></i> Mensaje Privado\n </a>\n </li>\n </ul>\n </div>\n <div class="column is-half is-half-mobile">\n <ul class="profile-links">\n <li v-bind:id="\'profile-link-\' + field.id" v-for="field in usableLinkFields">\n <a v-bind:href="field.url" v-bind:title="field.desc" target="_blank">\n <i v-bind:class="field.icon"></i> {{ field.title }}\n </a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n </div>\n </section>\n <section id="profile-fields" class="profile-container is-relative" v-if="lengthBigFields">\n <a id="anchor-info" class="page-anchor"></a>\n <aside id="profile-infominifields" class="wiki-index profile-sticky">\n <h3>Datos básicos</h3>\n <ul class="p-0">\n <li v-bind:id="\'profile-minifield-\' + field.id" v-for="field in usableMiniFields" class="minifield-element">\n <span class="minifield-label">{{ field.title }}</span>\n <span class="minifield-content">{{ field.content }}</span>\n </li>\n </ul>\n </aside>\n <ul id="profile-infofields">\n <li v-bind:id="\'profile-field-\' + field.id" class="profilefield-element" v-for="field in usableBigFields" v-if="field.content.length">\n <div class="field-head">\n <h4>{{ field.title }}</h4>\n <h6>{{ field.subtitle }}</h6>\n </div>\n <div class="field-content is-content" v-html="field.content"></div>\n </li>\n </ul>\n </section>\n <section id="profile-extras" class="profile-extra is-relative" v-if="lengthExtraFields">\n <a id="anchor-extras" class="page-anchor"></a>\n <div class="profile-extra-header">\n <span>Extras</span>\n </div>\n <ul class="profile-container profile-extra-space">\n <li v-bind:id="\'profile-extrafield-\' + field.id" class="extrafield-element" v-for="field in usableExtraFields" v-if="field.content.length">\n <div class="extrafield-head">\n <h4>{{ field.title }}</h4>\n </div>\n <div class="extrafield-content is-content" v-html="field.content"></div>\n </li>\n </ul>\n </section>\n <section id="profile-history" class="profile-extra is-relative" v-if="lengthHistoryFields">\n <a id="anchor-history" class="page-anchor"></a>\n <div class="profile-extra-header">\n <span>Historial</span>\n </div>\n <ul class="profile-container profile-extra-space">\n <li id="profile-extrafield-chronology" class="extrafield-element" v-if="chronologyField.length">\n <div class="extrafield-head">\n <h4>Cronología</h4>\n </div>\n <ul id="chronology-element" class="is-two-columns-list">\n <template v-for="element in chronologyField">\n <elemento-cronologia v-bind:data-element="element" data-type="profile" />\n </template>\n </ul>\n </li>\n <li id="profile-extrafield-relationships" class="extrafield-element" v-if="relationshipsField.length">\n <div class="extrafield-head">\n <h4>Relaciones</h4>\n </div>\n <ul id="relationships-element" class="is-two-columns-list">\n <template v-for="element in relationshipsField">\n <elemento-relaciones v-bind:data-element="element" data-type="profile" />\n </template>\n </ul>\n </li>\n </ul>\n </section>\n </section>\n </section>\n '}),Vue.component("cuerpo-principal",{props:["dataTitle"],computed:{title:function(){return void 0===this.dataTitle?"":this.dataTitle}},template:' \n <div class="main-slat">\n <div class="mainslat-title" v-if="title.length">{{ title }}</div>\n <div class="mainslat-content">\n <slot></slot>\n </div>\n </div>\n '}),Vue.component("cuerpo-interior",{props:["dataTitle"],computed:{title:function(){return void 0===this.dataTitle?"":this.dataTitle}},template:' \n <div class="slat-interior">\n <div class="slatinterior-title" v-if="title.length">{{ title }}</div>\n <div class="slatinterior-content">\n <slot></slot>\n </div>\n </div>\n '}),Vue.component("cuerpo-lista",{props:["dataTitle"],computed:{title:function(){return void 0===this.dataTitle?"":this.dataTitle}},template:' \n <div class="slat-list">\n <div class="slatlist-title" v-if="title.length">{{ title }}</div>\n <ol class="slatlist-content">\n <slot></slot>\n </ol>\n </div>\n '});
1
+ Vue.component("categoria-foro",{props:["dataId"],computed:{slugName(){const e=this.dataId.indexOf("<h2>")>-1?FNR.utility.genSlug(this.dataId.split("<h2>")[1].split("</h2>")[0],"-"):FNR.utility.genSlug(this.dataId,"-");return"category-"+e}},template:"\n <section :class=\"'category-element ' + slugName\">\n \t\t<slot></slot>\n </section>\n "}),Vue.component("cabecera-foro",{data(){return{dataTitle:void 0===this.$slots.title[0].tag?this.$slots.title[0].text:this.$slots.title[0].children[0].text}},template:'\n <div class="forum-head regular-head">\n <titulo-especial :data-title="dataTitle"></titulo-especial>\n </div>\n '}),Vue.component("cabcategoria-foro",{data(){return{dataTitle:void 0===this.$slots.title[0].tag?this.$slots.title[0].text:this.$slots.title[0].children[0].text}},template:'\n <div class="forum-head category-head">\n <titulo-especial :data-title="dataTitle"></titulo-especial>\n </div>\n '}),Vue.component("cabespecial-foro",{data(){return{dataTitle:void 0===this.$slots.title[0].tag?this.$slots.title[0].text:this.$slots.title[0].children[0].text}},template:'\n <div class="forum-head special-head">\n <titulo-especial :data-title="dataTitle"></titulo-especial>\n </div>\n '}),Vue.component("subforo-foro",{props:["dataId"],computed:{slugId(){let e="";return window.location.pathname.match(/f(\d+)-/)?e=window.location.pathname.match(/f(\d+)-/)[1]:window.location.pathname.match(/f(\d+)p(\d+)-/)&&(e=window.location.pathname.match(/f(\d+)p(\d+)-/)[1]),"subforum-"+e},slugName(){const e=this.dataId.indexOf("<h2>")>-1?FNR.utility.genSlug(this.dataId.split("<h2>")[1].split("</h2>")[0],"-"):FNR.utility.genSlug(this.dataId,"-");return"subforum-"+e}},template:"\n <section :class=\"'subforum-element ' + slugId + ' ' + slugName\">\n \t\t<slot></slot>\n </section>\n "}),Vue.component("lista-temas-cabecera",{props:["dataElements"],data(){return{elementos:JSON.parse(this.dataElements.replace(/'/g,'"'))}},template:'\n <ul class="topiclist-header no-style">\n <li v-for="element in elementos">\n <titulo-especial :data-title="element"></titulo-especial>\n </li>\n </ul>\n '}),Vue.component("tema-foro",{computed:{slugId(){let e="";return window.location.pathname.match(/t(\d+)-/)?e=window.location.pathname.match(/t(\d+)-/)[1]:window.location.pathname.match(/t(\d+)p(\d+)-/)&&(e=window.location.pathname.match(/t(\d+)p(\d+)-/)[1]),"topic-"+e},slugName(){const e=FNR.utility.genSlug(void 0===this.$slots.title[0].tag?this.$slots.title[0].text:this.$slots.title[0].children[0].text,"-");return"topic-"+e}},template:"\n <section :class=\"'topic-element ' + slugId + ' ' + slugName\">\n \t\t<slot></slot>\n </section>\n "}),Vue.component("mando-foro",{props:["dataId","dataApp"],data:()=>({children:0}),computed:{isStatusClass(){return this.children>0?"forum-controls":"forum-controls not-show"}},created(){Object.values(this.$slots).map(e=>{this.children+=e.length})},template:'\n <section :id="dataId" :class="isStatusClass">\n <template v-if="dataApp === \'true\'">\n <div class="left page-pagination">\n <slot name="pagination"></slot>\n </div>\n <ul class="right no-style page-buttons">\n <slot name="controls"></slot>\n </ul>\n </template>\n <template v-else>\n <div class="left page-pagination"></div>\n <ul class="right no-style page-buttons"></ul>\n </template>\n </section>\n '}),Vue.component("titulo-especial",{props:["dataTitle"],template:'\n <h3 class="is-tweakeable"><span class="is-measurable" v-html="dataTitle"></span></h3>\n '}),Vue.component("cuerpo-widget",{props:["dataClass"],computed:{currentClass(){return void 0===this.dataClass?"plank-inner":"plank-inner "+this.dataClass}},template:'\n <div class="plank-content">\n <div :class="currentClass">\n <slot></slot>\n </div>\t\t\t\t\t\t \n </div>\n '}),Vue.component("separador-foro",{props:["dataFaction"],data:()=>({image:forumDefaults.separator}),template:'\n <section class="forumseparator-element">\n <img :src="image" />\n </section>\n '}),Vue.component("tema-ref",{props:["dataInfo"],data:()=>({profileName:forumConfig.profileOptions.profileName||"perfil"}),computed:{userColor(){return"color: "+this.dataInfo.lastpost.who.color}},template:'\n <div class="ltopic-element">\n <a class="ltopic-last" :href="dataInfo.lastpost.url" target="_blank" :title="\'Ir al último mensaje del tema «\' + dataInfo.name + \'»\'">\n <i class="fas fa-link"></i>\n </a>\n <div class="ltopic-data">\n <a class="ltopic-title" :href="dataInfo.url" target="_blank" :title="\'Ir al tema «\' + dataInfo.name + \'»\'">{{ dataInfo.name }}</a>\n <small class="ltopic-info"><a :href="dataInfo.lastpost.who.url" target="_blank" :style="userColor" :title="\'Ir al \' + profileName + \' de «\' + dataInfo.lastpost.who.name + \'»\'">{{ dataInfo.lastpost.who.name | just-name }}</a>, {{ dataInfo.lastpost.date }} en <a :href="dataInfo.forum.url" target="_blank" :title="\'Ir al subforo «\' + dataInfo.forum.name + \'»\'">{{ dataInfo.forum.name }}</a></small>\n </div>\n </div>\n '}),Vue.component("campo-foro",{props:["dataName"],mounted(){const e=this.$el.parentElement.classList;e.add("field-element"),e.add("field-"+FNR.utility.genSlug(this.dataName,"-"))},template:'\n <div class="forum-field">\n <div class="field-name">{{ dataName | capitalize }}</div>\n <div class="field-content">\n <slot></slot>\n </div>\n </div>\n '}),Vue.component("boton-foro",{props:["dataUrl","dataName","dataIcon","dataType","dataInput"],computed:{realClass(){return"true"===this.dataInput?"forum-button is-input":"forum-button"},realName(){return"text"+("no-name"===this.dataType?" is-hidden-touch":"")},realUrl(){return"true"===this.dataInput?"javascript:{}":this.dataUrl}},mounted(){const e=this.$el.parentElement.classList;e.add("btn-element"),e.add("btn-"+FNR.utility.genSlug(this.dataName,"-"))},template:'\n <a :href="realUrl" targer="_blank" :class="realClass" :title="dataName">\n <span class="icon">\n <i :class="dataIcon"></i>\n </span>\n <span :class="realName">{{ dataName }}</span>\n <span v-if="dataInput === \'true\'" class="input-real">\n <slot name="input"></slot>\n </span>\n </a>\n '}),Vue.component("cargando-foro",{props:["dataText"],template:'\n <section id="loading-element">\n <div id="loading-content">\n <i class="fas fa-circle-notch fa-spin"></i>\n <span>{{ dataText }}</span>\n </div>\n </section>\n '}),Vue.component("aviso-foro",{template:' \n <div class="forum-infoblock">\n <h5>Antes de proceder recuerda:</h5>\n <slot></slot>\n </div>\n '}),Vue.component("afiliaciones-foro",{data:()=>({afis:{}}),created(){FNR.forum.getAffiliates().then(e=>{this.afis=e})},template:'\n <ul v-html="afis.normal" class="no-style"></ul>\n '}),Vue.component("controles-foro",{data:()=>({maPage:0,userName:_userdata.username,userLevel:_userdata.user_level,userId:_userdata.user_id,userLog:_userdata.session_logged_in,userMP:0,userOut:"",isActive:!1}),computed:{isActiveClass(){return"has-bg"+(this.isActive?" visible":" not-visible")}},methods:{turnActive(){this.isActive=!this.isActive}},created(){0!==this.userLog&&(null!==document.getElementById("i_icon_mini_new_message")&&null!==document.getElementById("i_icon_mini_new_message").title.match(/[0-255]/)&&(this.userMP=parseInt(document.getElementById("i_icon_mini_new_message").title.match(/[0-255]/)[0])),this.userOut=document.getElementById("logout").href)},template:'\n <div class="main-body">\n \t\t<nav id="forum-breadcrumb" class="breadcrumb has-succeeds-separator left" aria-label="breadcrumbs">\n \t<ul>\n \t<li>\n \t<a href="/" title="Ir a «Inicio»">Inicio</a>\n \t</li>\n \t</ul>\n \t</nav>\n <nav class="right"> \n <section id="forum-navbar-desktop" class="is-hidden-touch">\n <navbar-foro :data-username="userName" :data-userlevel="userLevel" :data-userid="userId" :data-userlog="userLog" :data-usermp="userMP" :data-userout="userOut" />\n </section>\n <section id="forum-navbar-mobile" class="is-hidden-desktop">\n <div id="hmg-button" v-on:click="turnActive()" class="is-pointer">\n <i class="fas fa-bars"></i>\n </div>\n <div id="hmg-menu" :class="isActiveClass">\n <h3>{{ userName | just-name }}<i class="fas fa-times is-pointer" v-on:click="turnActive()"></i></h3>\n <navbar-foro :data-username="userName" :data-userlevel="userLevel" :data-userid="userId" :data-userlog="userLog" :data-usermp="userMP" :data-userout="userOut" />\n </div>\n <div class="bg-active" v-on:click="turnActive()"></div>\n </section>\n <section v-if="maPage === 1" id="multiaccount-transition">\n <cargando-foro data-text="Cambiando de cuenta…"></cargando-foro>\n </section>\n </nav>\n </div>\n '}),Vue.component("navbar-foro",{props:["dataUsername","dataUserlevel","dataUserid","dataUserlog","dataUsermp","dataUserout"],data:()=>({profileName:forumConfig.profileOptions.profileName||"perfil",items:forumContent.navbar,directions:forumConfig.usableDirections,multiAccount:{status:!1,position:-1,accounts:[]}}),computed:{isStatusClass(){return(1===this.dataUserlog?"is-logged":"is-unlogged")+(1===this.dataUserlevel?" is-admin":" is-user")},mpText(){return"Mensajería"+(0!==this.dataUsermp?" ("+this.dataUsermp+")":"")},links:()=>forumContent.links.filter(e=>void 0!==e.icon)},methods:{changeAccount(){this.$parent.maPage=1,FNR.user.changeAccount(this.dataUserout,this.multiAccount.accounts[this.multiAccount.position].name,this.multiAccount.accounts[this.multiAccount.position].password).then(e=>{e&&window.location.reload()})}},created(){this.multiAccount.status=!1!==FNR.cache.getData("usermultiaccounts")&&!1!==FNR.cache.getData("userpassword"),this.multiAccount.accounts=(!1===FNR.cache.getData("usermultiaccounts")?[]:FNR.cache.getData("usermultiaccounts").map(e=>({name:e.name,password:sjcl.decrypt(FNR.cache.getData("userpassword"),e.password)}))).filter(e=>e.name!==_userdata.username).sort((e,n)=>e.name<n.name?-1:e.name>n.name?1:0)},template:'\n <ul :class="isStatusClass">\n <template v-if="!dataUserlog">\n <li class="navbar-item">\n <a href="/register" title="Registrarse en el foro">\n <div class="icon">\n <i class="fas fa-user-plus"></i>\n </div>\n <div class="text">Registrarse</div>\n </a>\n </li>\n <li class="navbar-item">\n <a href="/login" title="Iniciar sesión en el foro">\n <div class="icon">\n <i class="fas fa-sign-in-alt"></i>\n </div>\n <div class="text">Conectarse</div>\n </a>\n </li>\n </template>\n <template v-else>\n <li class="navbar-item is-hidden-desktop" v-for="link in links">\n <a :href="link.url" :title="\'Ir a «\' + link.name + \'»\'">\n <div class="icon">\n <i :class="link.icon"></i>\n </div>\n <div class="text">{{ link.name }}</div>\n </a>\n </li>\n <li class="navbar-item" v-for="item in items">\n <a :href="item.url" :title="\'Ir a «\' + item.name + \'»\'">\n <div class="icon">\n <i :class="item.icon"></i>\n </div>\n <div class="text">{{ item.name }}</div>\n </a>\n </li>\n <li class="navbar-item">\n <a href="/privmsg?folder=inbox" title="Ir a tu mensajería privada">\n <div class="icon">\n <i class="fas fa-envelope"></i>\n </div>\n <div class="text">{{ mpText }}</div>\n </a>\n </li>\n <li class="navbar-item has-dropdown is-dropeable has-bg">\n <a class="navbar-link is-pointer" title="Accionar menú de usuario">\n <div class="icon">\n <i class="fas fa-user"></i>\n </div>\n <div class="text">{{ dataUsername | just-name }}</div>\n </a>\n <div class="navbar-dropdown is-right">\n <template v-if="dataUserlevel === 1">\n <a class="navbar-item" href="/admin" target="_blank" title="Ir al «Panel de Administrador»">\n <div class="icon">\n <i class="fas fa-cogs"></i>\n </div>\n <div class="text">Panel Administrador</div>\n </a>\n </template>\n <a class="navbar-item" :href="directions.ucp" target="_blank" title="Ir al «Panel de Usuario»">\n <div class="icon">\n <i class="fas fa-sliders-h"></i>\n </div>\n <div class="text">Panel Usuario</div>\n </a>\n <a class="navbar-item" :href="\'/u\' + dataUserid" :title="\'Ir a tu \' + profileName">\n <div class="icon">\n <i class="far fa-id-card"></i>\n </div>\n <div class="text">{{ profileName | capitalize }}</div>\n </a>\n <a class="navbar-item" href="/search?search_id=egosearch" title="Ir a tus temas personales">\n <div class="icon">\n <i class="fas fa-archive"></i>\n </div>\n <div class="text">Temas personales</div>\n </a>\n <a class="navbar-item" :href="dataUserout" title="Cerrar sesión">\n <div class="icon">\n <i class="fas fa-sign-out-alt"></i>\n </div>\n <div class="text">Cerrar sesión</div>\n </a>\n <template v-if="multiAccount.status">\n <hr/>\n <div class="select-container">\n <select v-model="multiAccount.position" v-on:change="changeAccount()" v-on:click="$event.stopPropagation()">\n <option value="-1" hidden selected>Selec. personaje</option>\n <option v-for="(account, index) in multiAccount.accounts" :value="index">{{ account.name }}</option>\n </select>\n </div>\n </template>\n </div>\n </li>\n </template>\n </ul>\n '}),Vue.component("links-ayuda",{data:()=>({links:forumContent.links}),template:'\n <div class="columns is-multiline is-gapless is-vcentered">\n <a target="_blank" :href="link.url" :title="\'Ir a «\' + link.name + \'»\'" class="column" v-for="link in links">{{ link.name }}</a>\n </div>\n '}),Vue.component("links-anuncios",{data:()=>({announcements:forumContent.announcements}),template:'\n <div id="anmt-main">\n <template v-for="(announcement, index) in announcements">\n <a target="_blank" :href="announcement.url" :title="\'Ir al anuncio «\' + announcement.name + \'»\'" class="anmt-element"><span class="anmt-title">{{ announcement.name }}</span><span class="anmt-date">{{ announcement.date }}</span></a>\n <div class="anmt-sep" v-if="(announcements.length - 1) !== index"></div>\n </template>\n </div>\n '}),Vue.component("links-staff",{data:()=>({staff:forumContent.staff}),template:'\n <div id="admin-main">\n <a target="_blank" :href="admin.url" class="admin-element" :style="\'background-image: url(\' + admin.avatar + \')\'" :title="admin.title" v-for="admin in staff"><span class="admin-name">{{ admin.name }}</span><span class="admin-desc">{{ admin.desc }}</span></a>\n </div>\n '}),Vue.component("sabias-que",{data:()=>({content:forumContent.sq[Math.floor(Math.random()*forumContent.sq.length)]}),created(){setInterval(()=>{this.content=forumContent.sq[Math.floor(Math.random()*forumContent.sq.length)]},12e3)},template:'\n <img id="sq-img" :src="content" alt="¿Sabías que?" />\n '}),Vue.component("busquedas",{data:()=>({content:forumContent.searches[Math.floor(Math.random()*forumContent.searches.length)]}),created(){setInterval(()=>{this.content=forumContent.searches[Math.floor(Math.random()*forumContent.searches.length)]},16e3)},template:'\n <a id="search-img" :href="content.url" target="_blank" :title="content.desc">\n <img :src="content.img" alt="Búsqueda" />\n </a>\n '}),Vue.component("note-info",{template:'\n <div class="admin-block admin-note">\n <div class="admin-icon fas fa-caret-right"></div>\n <div class="admin-content admin-title">\n <slot></slot>\n </div>\n </div>\n '}),Vue.component("redirect",{props:["dataTo"],computed:{currentStatus:()=>!!window.location.pathname.match(/t(\d+)-/)},created(){this.currentStatus&&window.location.replace(this.dataTo)},template:'\n <div class="is-content">\n <template v-if="!currentStatus">\n <p>No hay mensaje.</p>\n </template>\n </div>\n '}),Vue.component("quote",{props:["dataFrom","from"],template:'\n <div class="admin-block admin-box user-coolquote">\n <div class="coolquote-quote">\n <div class="fas fa-quote-left"></div>\n <div class="coolquote-content">\n <slot></slot>\n </div>\n <div class="fas fa-quote-right"></div>\n </div>\n <div class="coolquote-from">{{ dataFrom }}{{ from }}</div>\n </div>\n '}),Vue.component("wiki-index-items-d",{props:["dataContent"],template:'\n <ul>\n <li v-for="content in dataContent">\n <div class="wiki-controls">\n <router-link :to="content.id" v-if="!content.children.length" :title="\'Ir al artículo de «\' + content.name + \'»\'">{{ content.name }}</router-link>\n <a class="wiki-cascade" :title="\'Desplegar categoría de «\' + content.name + \'»\'" v-else>\n <span class="text">{{ content.name }}</span>\n <span class="icon">\n <i class="fas fa-plus"></i>\n <i class="fas fa-minus"></i>\n </span>\n </a>\n </div>\n <wiki-index-items-d v-if="content.children.length" :data-content="content.children"></wiki-index-items-d>\n </li>\n </ul>\n '}),Vue.component("wiki-index",{computed:{indexContent(){const e=t=>n.filter(e=>e.component.page_parent===t).map(n=>({id:n.path,name:n.component.page_name,children:e(n.component.page_name)})),n=routes.filter(e=>void 0!==e.component).filter(e=>!e.component.page_skip);return n.filter(e=>void 0===e.component.page_parent).map(n=>({id:n.path,name:n.component.page_name,children:e(n.component.page_name)}))}},template:'\n <aside class="wiki-index is-content profile-sticky">\n <div class="is-hidden-touch">\n <h3>Contenido</h3>\n <wiki-index-items-d :data-content="indexContent"></wiki-index-items-d>\n </div>\n <div class="select-container is-hidden-desktop">\n <select>\n <option value="-1" hidden selected>Contenido</option>\n <template v-for="content in indexContent">\n <template v-if="content.children.length">\n <option :value="content.id" disabled >— {{ content.name }}</option>\n <template v-for="content in content.children">\n <template v-if="content.children.length">\n <option :value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n <template v-for="content in content.children">\n <template v-if="content.children.length">\n <option :value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n <template v-for="content in content.children">\n <template v-if="content.children.length">\n <option :value="content.id" disabled >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n <template v-for="content in content.children">\n <option :value="content.id">&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n </template>\n </template>\n <option :value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n </template>\n </template>\n <option :value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n </template>\n </template>\n <option :value="content.id" v-else >&nbsp&nbsp&nbsp&nbsp— {{ content.name }}</option>\n </template>\n </template>\n <option :value="content.id" v-else >— {{ content.name }}</option>\n </template>\n </select>\n </div>\n </aside>\n '}),Vue.component("wiki-contenido",{props:["dataMode"],template:'\n <div class="wiki-body has-small-topiclist">\n <wiki-index></wiki-index>\n <template v-if="dataMode === \'app\'">\n <slot></slot>\n </template>\n <template v-else>\n <section class="wiki-content is-dramatic">\n <slot></slot>\n </section>\n </template>\n </div>\n '}),Vue.component("wiki-nav",{computed:{more:()=>routes.filter(e=>e.component).filter(e=>e.component.page_parent===routes.filter(e=>e.path===router.history.current.path)[0].component.page_parent).length>1,nav(){const e=routes.filter(e=>e.component).filter(e=>e.component.page_parent===routes.filter(e=>e.path===router.history.current.path)[0].component.page_parent),n=e.map(e=>e.path).indexOf(router.history.current.path);return{next:!(n+1>=e.length)&&e[n+1],prev:!(n-1<0)&&e[n-1]}}},template:'\n <div class="wiki-nav" v-if="more">\n <h2>Navegación</h2>\n <template v-if="nav.prev !== false">* <router-link :to="nav.prev.path" :title="\'Ir al artículo «\' + nav.prev.component.page_name + \'»\'">Página anterior: {{ nav.prev.component.page_name }}</router-link></template>\n <br v-if="nav.prev !== false && nav.next !== false"/>\n <template v-if="nav.next !== false">* <router-link :to="nav.next.path" :title="\'Ir al artículo «\' + nav.next.component.page_name + \'»\'">Página siguiente: {{ nav.next.component.page_name }}</router-link></template>\n </div>\n '}),Vue.component("wiki-children",{props:["dataName","dataCategory"],computed:{nav(){return routes.filter(e=>e.component).filter(e=>e.component.page_parent===this.dataCategory)}},template:'\n <div class="wiki-nav" v-if="nav.length > 0">\n <h2>{{ dataName }}</h2>\n <template v-for="route in nav">* <router-link :to="route.path" :title="\'Ir al artículo «\' + route.component.page_name + \'»\'">{{ route.component.page_name }}</router-link><br/></template>\n </div>\n '}),Vue.component("modal-foro",{props:["dataTitle"],methods:{modalClose(){this.$parent.state.modal=!1,this.$emit("modal-close")}},template:' \n <div id="forum-modal">\n <div class="modal-element">\n <div class="modal-title">\n <h3>{{ dataTitle }}</h3>\n <a v-on:click="modalClose()">\n <i class="fas fa-times"></i>\n </a>\n </div>\n <div class="modal-content">\n <div class="is-content">\n <slot name="content"></slot>\n </div>\n <slot name="controls"></slot>\n </div>\n </div>\n <div class="is-bgmodal bg-active" v-on:click="modalClose()"></div>\n </div>\n '}),Vue.component("controles-modal",{template:' \n <div class="modal-buttons">\n <slot></slot>\n </div>\n '}),Vue.component("expediente-usuario",{data:()=>({info:{name:_userdata.username,level:_userdata.user_level,log:_userdata.session_logged_in},config:forumConfig.profileUser,profile:profile}),computed:{userRank(){return this.profile.fields[forumConfig.profileOptions.profileRank].content},userCite(){return this.profile.fields[forumConfig.profileOptions.profileCite].content},userCover(){return this.profile.fields[forumConfig.profileOptions.profileCover].content},usableMiniFields(){return void 0!==this.config.miniFields&&this.config.miniFields.length?Object.entries(this.profile.fields).filter(e=>this.config.miniFields.indexOf(e[0])>-1).map(e=>({id:e[0],title:e[1].label,content:e[1].content})).sort((e,n)=>this.config.miniFields.indexOf(e.id)>this.config.miniFields.indexOf(n.id)?1:-1).map(e=>({id:FNR.utility.genSlug(e.title,"-"),title:e.title,content:e.content})):[]},usableBigFields(){return void 0!==this.config.mainFields&&Object.keys(this.config.mainFields).length?Object.entries(this.profile.fields).filter(e=>Object.keys(this.config.mainFields).indexOf(e[0])>-1).map(e=>({id:e[0],title:e[1].label,subtitle:this.config.mainFields[e[0]],content:" &nbsp;-"===e[1].content?"":e[1].content})).sort((e,n)=>Object.keys(this.config.mainFields).indexOf(e.id)>Object.keys(this.config.mainFields).indexOf(n.id)?1:-1).map(e=>({id:FNR.utility.genSlug(e.title,"-"),title:e.title,subtitle:e.subtitle,content:e.content})):[]},lengthBigFields(){let e=0;return this.usableBigFields.map(n=>{void 0!==n.content&&(e+=n.content.length)}),e},usableExtraFields(){return void 0!==this.config.extraFields&&this.config.extraFields.length?Object.entries(this.profile.fields).filter(e=>this.config.extraFields.indexOf(e[0])>-1).map(e=>({id:e[0],title:e[1].label,content:" &nbsp;-"===e[1].content?"":e[1].content})).sort((e,n)=>this.config.extraFields.indexOf(e.id)>this.config.extraFields.indexOf(n.id)?1:-1).map(e=>({id:FNR.utility.genSlug(e.title,"-"),title:e.title,content:e.content})):[]},lengthExtraFields(){let e=0;return this.usableExtraFields.map(n=>{void 0!==n.content&&(e+=n.content.length)}),e},usableLinkFields(){return this.profile.contact.length?[]:Object.entries(this.profile.contact).filter(e=>"Mensaje Privado"!==e[1].label).map(e=>({id:FNR.utility.genSlug(e[1].label,"-"),title:e[1].label,url:e[1].content,icon:this.config.contactFields[e[0]],desc:"Ir a "+e[1].label+" de «"+this.profile.name+"»"}))},chronologyField(){return void 0!==this.config.cronoField&&this.config.cronoField.length?FNR.utility.genArray(this.profile.fields[FNR.utility.genSlug(this.config.cronoField,"_")].content):[]},relationshipsField(){return void 0!==this.config.relaField&&this.config.relaField.length?FNR.utility.genArray(this.profile.fields[FNR.utility.genSlug(this.config.relaField,"_")].content):[]},lengthHistoryFields(){let e=0;return e+=this.chronologyField.length,e+=this.relationshipsField.length,e},currentClass(){return"usergroup-"+this.profile.colour}},
2
+ template:' \n <section class="profile-element"> \n <cabespecial-foro><template slot="title">Perfil de {{ profile.name }}</template></cabespecial-foro>\n <section :class="currentClass">\n <section id="profile-head">\n <div id="profile-minifields" class="profile-container is-align-items-flex-start wiki-index is-content has-text-left" v-if="lengthBigFields">\n <h3>Contenido</h3>\n <ul>\n <li v-if="lengthBigFields">\n <div class="wiki-controls">\n <a href="#anchor-info">Información</a>\n </div>\n </li>\n <li v-if="lengthExtraFields">\n <div class="wiki-controls">\n <a href="#anchor-extras">Extras</a>\n </div>\n </li>\n <li v-if="lengthHistoryFields">\n <div class="wiki-controls">\n <a href="#anchor-history">Historial</a>\n </div>\n </li>\n </ul>\n </div>\n <ul id="profile-minifields" class="profile-container is-align-items-center wiki-index is-content" v-else>\n <li :id="\'profile-minifield-\' + field.id" v-for="field in usableMiniFields" class="minifield-element">\n <span class="minifield-label">{{ field.title }}</span>\n <span class="minifield-content">{{ field.content }}</span>\n </li>\n </ul>\n <div id="profile-userinfo" :style="\'background-image: url(\' + userCover + \');\'">\n <div id="profile-userdata">\n <div id="profile-rank">{{ userRank }}</div>\n <div id="profile-username">{{ profile.name }}</div>\n </div>\n <div id="profile-usergest" v-if="Object.keys(profile.admin).length">\n <a :href="profile.admin.admin" :title="\'Administrar a «\' + profile.name + \'»\'" target="_blank">Administrar</a> / <a :href="profile.admin.ban" :title="\'Banear a «\' + profile.name + \'»\'" target="_blank">Banear</a>\n </div>\n </div>\n </section>\n <section id="profile-subhead">\n <div class="columns is-vcentered">\n <div class="column is-6 is-full-mobile">\n <div id="profile-quote" class="is-content">\n <quote>{{ userCite }}</quote>\n </div>\n </div>\n <div class="column is-5 is-offset-1 is-full-mobile is-offset-0-mobile">\n <div class="columns is-flex is-vcentered">\n <div class="column is-half is-half-mobile">\n <ul class="profile-links">\n <li>\n <a :href="profile.links.posts" :title="\'Mensajes de «\' + profile.name + \'»\'" target="_blank">\n <i :class="config.contactFields.mensajes"></i> Mensajes\n </a>\n </li>\n <li>\n <a :href="profile.links.topics" :title="\'Temas de «\' + profile.name + \'»\'" target="_blank">\n <i :class="config.contactFields.temas"></i> Temas\n </a>\n </li>\n <li v-if="profile.contact.mensaje_privado !== undefined">\n <a :href="profile.contact.mensaje_privado.content" :title="\'Enviar un mensaje privado a «\' + profile.name + \'»\'" target="_blank">\n <i :class="config.contactFields.mp"></i> Mensaje Privado\n </a>\n </li>\n </ul>\n </div>\n <div class="column is-half is-half-mobile">\n <ul class="profile-links">\n <li :id="\'profile-link-\' + field.id" v-for="field in usableLinkFields">\n <a :href="field.url" :title="field.desc" target="_blank">\n <i :class="field.icon"></i> {{ field.title }}\n </a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n </div>\n </section>\n <section id="profile-fields" class="profile-container is-relative" v-if="lengthBigFields">\n <a id="anchor-info" class="page-anchor"></a>\n <aside id="profile-infominifields" class="wiki-index profile-sticky">\n <h3>Datos básicos</h3>\n <ul class="p-0">\n <li :id="\'profile-minifield-\' + field.id" v-for="field in usableMiniFields" class="minifield-element">\n <span class="minifield-label">{{ field.title }}</span>\n <span class="minifield-content">{{ field.content }}</span>\n </li>\n </ul>\n </aside>\n <ul id="profile-infofields">\n <li :id="\'profile-field-\' + field.id" class="profilefield-element" v-for="field in usableBigFields" v-if="field.content.length">\n <div class="field-head">\n <h4>{{ field.title }}</h4>\n <h6>{{ field.subtitle }}</h6>\n </div>\n <div class="field-content is-content" v-html="field.content"></div>\n </li>\n </ul>\n </section>\n <section id="profile-extras" class="profile-extra is-relative" v-if="lengthExtraFields">\n <a id="anchor-extras" class="page-anchor"></a>\n <div class="profile-extra-header">\n <span>Extras</span>\n </div>\n <ul class="profile-container profile-extra-space">\n <li :id="\'profile-extrafield-\' + field.id" class="extrafield-element" v-for="field in usableExtraFields" v-if="field.content.length">\n <div class="extrafield-head">\n <h4>{{ field.title }}</h4>\n </div>\n <div class="extrafield-content is-content" v-html="field.content"></div>\n </li>\n </ul>\n </section>\n <section id="profile-history" class="profile-extra is-relative" v-if="lengthHistoryFields">\n <a id="anchor-history" class="page-anchor"></a>\n <div class="profile-extra-header">\n <span>Historial</span>\n </div>\n <ul class="profile-container profile-extra-space">\n <li id="profile-extrafield-chronology" class="extrafield-element" v-if="chronologyField.length">\n <div class="extrafield-head">\n <h4>Cronología</h4>\n </div>\n <ul id="chronology-element" class="is-two-columns-list">\n <template v-for="element in chronologyField">\n <elemento-cronologia :data-element="element" data-type="profile" />\n </template>\n </ul>\n </li>\n <li id="profile-extrafield-relationships" class="extrafield-element" v-if="relationshipsField.length">\n <div class="extrafield-head">\n <h4>Relaciones</h4>\n </div>\n <ul id="relationships-element" class="is-two-columns-list">\n <template v-for="element in relationshipsField">\n <elemento-relaciones :data-element="element" data-type="profile" />\n </template>\n </ul>\n </li>\n </ul>\n </section>\n </section>\n </section>\n '}),Vue.component("cuerpo-principal",{props:["dataTitle"],computed:{title(){return void 0===this.dataTitle?"":this.dataTitle}},template:' \n <div class="main-slat">\n <div class="mainslat-title" v-if="title.length">{{ title }}</div>\n <div class="mainslat-content">\n <slot></slot>\n </div>\n </div>\n '}),Vue.component("cuerpo-interior",{props:["dataTitle"],computed:{title(){return void 0===this.dataTitle?"":this.dataTitle}},template:' \n <div class="slat-interior">\n <div class="slatinterior-title" v-if="title.length">{{ title }}</div>\n <div class="slatinterior-content">\n <slot></slot>\n </div>\n </div>\n '}),Vue.component("cuerpo-lista",{props:["dataTitle"],computed:{title(){return void 0===this.dataTitle?"":this.dataTitle}},template:' \n <div class="slat-list">\n <div class="slatlist-title" v-if="title.length">{{ title }}</div>\n <ol class="slatlist-content">\n <slot></slot>\n </ol>\n </div>\n '});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "generic-skin",
3
- "version": "3.1.1",
3
+ "version": "3.2.0",
4
4
  "description": "Generic Forum Skin for Forumotion created by Gaylien.",
5
5
  "main": "readme.md",
6
6
  "scripts": {