skin-dt-32 0.7.0 → 0.7.2
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.
- package/config/vueComponents.js +2 -2
- package/config/vueComponents.min.js +2 -2
- package/general.js +1 -1
- package/general.min.js +1 -1
- package/package.json +1 -1
package/config/vueComponents.js
CHANGED
|
@@ -866,11 +866,11 @@ Vue.component('footer-foro', {
|
|
|
866
866
|
<h3 class="section-title">Créditos</h3>
|
|
867
867
|
<ul class="no-style">
|
|
868
868
|
<li v-for="credit in credits" v-html="credit"></li>
|
|
869
|
-
<li class="is-hidden-mobile">El diseño y programación de la skin <a href="https://darktimes-skin.foroactivo.com/" title="Ir al sitio web de «Dark Times»">Dark Times</a> por <a href="https://zatrapa-gaylien.tumblr.com/" title="Ir al sitio web de «Gaylien»">Gaylien</a>. Agradecimiento especial a los equipos desarrolladores de <a href="https://vuejs.org/" title="Ir al sitio web de «Vue»">Vue</a> y <a href="https://bulma.io/" title="Ir al sitio web de «Bulma»">Bulma</a> por sus respectivos <em>Frameworks</em>.</li>
|
|
869
|
+
<li class="is-hidden-mobile">El diseño y programación de la skin <a target="_blank" href="https://darktimes-skin.foroactivo.com/" title="Ir al sitio web de «Dark Times»">Dark Times</a> por <a target="_blank" href="https://zatrapa-gaylien.tumblr.com/" title="Ir al sitio web de «Gaylien»">Gaylien</a>. Agradecimiento especial a los equipos desarrolladores de <a target="_blank" href="https://vuejs.org/" title="Ir al sitio web de «Vue»">Vue</a> y <a target="_blank" href="https://bulma.io/" title="Ir al sitio web de «Bulma»">Bulma</a> por sus respectivos <em>Frameworks</em>.</li>
|
|
870
870
|
<li id="credits-social" v-if="social.length">
|
|
871
871
|
<ul class="no-style">
|
|
872
872
|
<li v-for="platform in social">
|
|
873
|
-
<a :href="platform.url" :title="'Ir a «' + platform.name + '»'"><em :class="platform.icon"></em> {{ platform.name }}</a>
|
|
873
|
+
<a target="_blank" :href="platform.url" :title="'Ir a «' + platform.name + '»'"><em :class="platform.icon"></em> {{ platform.name }}</a>
|
|
874
874
|
</li>
|
|
875
875
|
</ul>
|
|
876
876
|
</li>
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Vue.component("titulo-especial",{props:["title"],computed:{cleanedTitle(){return FNR.utility.genSlug(this.title," ")}},template:'\n <h3 class="is-tweakeable"><span class="is-measurable" v-html="title"></span><small v-html="cleanedTitle"></small></h3>\n '}),Vue.component("cabecera-foro",{data(){return{title:void 0===this.$slots.title[0].tag?Vue.filter("mini-sanitize")(this.$slots.title[0].text):Vue.filter("mini-sanitize")(this.$slots.title[0].children[0].text)}},computed:{cleanedTitle(){return FNR.utility.genSlug(this.title," ")}},template:'\n <div class="forum-head regular-head">\n <i class="fa-solid fa-caret-right"></i>\n <h3><span v-html="title"></span><small v-html="cleanedTitle"></small></h3>\n </div>\n '}),Vue.component("cabcategoria-foro",{data(){return{title:void 0===this.$slots.title[0].tag?Vue.filter("mini-sanitize")(this.$slots.title[0].text):Vue.filter("mini-sanitize")(this.$slots.title[0].children[0].text)}},computed:{cleanedTitle(){return FNR.utility.genSlug(this.title," ")}},template:'\n <div class="forum-head category-head">\n <i class="fa-solid fa-caret-right"></i>\n <h3><span v-html="title"></span><small v-html="cleanedTitle"></small></h3>\n </div>\n '}),Vue.component("cabespecial-foro",{data(){return{title:void 0===this.$slots.title[0].tag?Vue.filter("mini-sanitize")(this.$slots.title[0].text):Vue.filter("mini-sanitize")(this.$slots.title[0].children[0].text)}},computed:{cleanedTitle(){return FNR.utility.genSlug(this.title," ")}},template:'\n <div class="forum-head special-head">\n <i class="fa-solid fa-caret-right"></i>\n <h3><span v-html="title"></span><small v-html="cleanedTitle"></small></h3>\n </div>\n '}),Vue.component("controles-foro",{data:()=>({maPage:0,userName:_userdata.username,userAvatar:_userdata.avatar.split('src="')[1].split('"')[0],userLevel:_userdata.user_level,userId:_userdata.user_id,userLog:_userdata.session_logged_in,userMP:0,userOut:"",isActive:!1,profileName:forumConfig.profileOptions.profileName||"perfil"}),computed:{isActiveClass(){return"has-bg"+(this.isActive?" visible":" not-visible")}},methods:{turnActive(){this.isActive=!this.isActive}},created(){0!==this.userLog&&(null!==document.querySelector("#i_icon_mini_new_message")&&null!==document.querySelector("#i_icon_mini_new_message").title.match(/[0-255]/)&&(this.userMP=parseInt(document.querySelector("#i_icon_mini_new_message").title.match(/[0-255]/)[0])),this.userOut=document.querySelector("#logout").href)},template:'\n <div :class="\'main-body\' + (isActive ? \' is-on\' : \'\')"> \n <div id="hmg-button" @click="turnActive()" class="is-pointer">\n <i class="fas fa-bars"></i>\n </div>\n <div class="top">\n <template v-if="userId !== -1">\n <a :href="\'/u\' + userId" :title="\'Ir a tu \' + profileName" class="user">\n <div class="user-avatar">\n <img :src="userAvatar" :alt="\'Avatar de \' + userName" />\n </div>\n <span>{{ userName | just-name }}</span>\n </a>\n </template>\n <template v-else>\n <a href="/" title="Ir a «Inicio»" class="user">\n <span>Invitado</span>\n </a>\n </template>\n <div id="hmg-close">\n <i class="fas fa-times is-pointer" @click="turnActive()"></i>\n </div>\n </div>\n <nav class="bottom"> \n <navbar-foro :username="userName" :userlevel="userLevel" :userid="userId" :userlog="userLog" :usermp="userMP" :userout="userOut" />\n <section v-if="maPage === 1" id="multiaccount-transition">\n <cargando-foro text="Cambiando de cuenta…"></cargando-foro>\n </section>\n </nav>\n </div>\n '}),Vue.component("navbar-foro",{props:["username","userlevel","userid","userlog","usermp","userout"],data:()=>({profileName:forumConfig.profileOptions.profileName||"perfil",items:forumContent.navbar,navigation:forumContent.links,directions:forumConfig.usableDirections,multiAccount:{status:!1,position:-1,accounts:[]}}),computed:{isStatusClass(){return(1===this.userlog?"is-logged":"is-unlogged")+(1===this.userlevel?" is-admin":" is-user")},mpText(){return 0!==this.usermp?"Tienes "+this.usermp+" mensaje"+(1===this.usermp?"":"s")+" pendientes":"Ir a tu mensajería privada"},links(){return this.navigation.filter(s=>void 0!==s.icon)}},methods:{changeAccount(){this.$parent.maPage=1,FNR.user.changeAccount(this.userout,this.multiAccount.accounts[this.multiAccount.position].name,this.multiAccount.accounts[this.multiAccount.position].password).then(s=>{s&&window.location.reload()})}},created(){this.multiAccount.status=!1!==FNR.cache.getData("usermultiaccounts")&&!1!==FNR.cache.getData("userpassword")&&FNR.cache.getData("usermultiaccounts").length>1,this.multiAccount.accounts=(!1===FNR.cache.getData("usermultiaccounts")?[]:FNR.cache.getData("usermultiaccounts").map(s=>({name:s.name,password:sjcl.decrypt(FNR.cache.getData("userpassword"),s.password)}))).filter(s=>s.name!==_userdata.username).sort((s,t)=>s.name<t.name?-1:s.name>t.name?1:0)},template:'\n <ul :class="isStatusClass">\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 <template v-if="!userlog">\n <li class="navbar-item">\n <a href="/register" title="Registrarse en el foro">\n <div class="icon">\n <i class="fa-solid 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="fa-solid 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">\n <a :href="\'/u\' + userid" :title="\'Ir a tu \' + profileName">\n <div class="icon">\n <i class="fa-solid fa-id-card"></i>\n </div>\n <div class="text">Perfil</div>\n </a>\n </li>\n <li class="navbar-item">\n <a href="/search?search_id=egosearch" title="Ir a tus temas personales">\n <div class="icon">\n <i class="fa-solid fa-archive"></i>\n </div>\n <div class="text">Temas</div>\n </a>\n </li>\n <li class="navbar-item">\n <a href="/privmsg?folder=inbox" :title="mpText">\n <div class="icon">\n <template v-if="usermp === 0">\n <i class="fa-solid fa-envelope"></i>\n </template>\n <template v-else>\n <i class="fa-solid fa-message-exclamation"></i>\n </template>\n </div>\n <div class="text">Mensajería</div>\n </a>\n </li>\n <li class="navbar-item">\n <a :href="directions.ucp" title="Ir al «Panel de Usuario»">\n <div class="icon">\n <i class="fa-solid fa-sliders-h"></i>\n </div>\n <div class="text">Editar</div>\n </a>\n </li>\n <template v-if="multiAccount.status">\n <li class="navbar-item">\n <select title="Cambiar de cuenta" v-model="multiAccount.position" @change="changeAccount()" @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 <a :href="directions.ucp" title="Ir al «Panel de Usuario»">\n <div class="icon">\n <i class="fa-solid fa-address-book"></i>\n </div>\n <div class="text">Cuentas</div>\n </a>\n </li>\n </template>\n <template v-if="userlevel === 1">\n <li class="navbar-item">\n <a href="/admin" title="Ir al «Panel de Administrador»">\n <div class="icon">\n <i class="fa-solid fa-cogs"></i>\n </div>\n <div class="text">Administrar</div>\n </a>\n </li>\n </template>\n <li class="navbar-item">\n <a :href="userout" title="Cerrar sesión">\n <div class="icon">\n <i class="fa-solid fa-sign-out-alt"></i>\n </div>\n <div class="text">Salir</div>\n </a>\n </li>\n </template>\n </ul>\n '}),Vue.component("header-foro",{props:["sitename"],data:()=>({name:forumData.name,image:forumDefaults.logo}),template:'\n <section id="page-header" class="main-body">\n <a href="/" :title="\'Ir al índice de «\' + sitename + \'»\'" id="forum-logo">\n <template v-if="image">\n <img :src="image" :alt="name" />\n </template>\n <template v-else>\n <slot name="logo"></slot>\n </template>\n </a>\n </section>\n '}),Vue.component("foro-foro",{props:["url","name","posts","topics","lasturl"],data(){return{lastname:void 0===this.$slots["last-name"]?"":this.$slots["last-name"][0].text}},mounted(){const s=null!==this.url.match(/f(\d+)-/),t=s?"forum":"category",i=this.$el.parentElement.classList,e=FNR.utility.genSlug(this.name,"-"),n=s?this.url.match(/f(\d+)-/)[1]:this.url.match(/c(\d+)-/)[1];i.add(`${t}-element`),i.add(`${t}-${n}`),i.add(`${t}-${e}`)},template:'\n <section class="forum-forum">\n <a class="forum-header" :href="url" :title="\'Ir al subforo «\' + name + \'»\'">\n <div class="forum-title is-tweakeable">\n <span class="is-measurable">{{ name }}</span>\n </div>\n <div class="forum-stats">{{ posts }} mensajes — {{ topics }} temas</div>\n </a>\n <div class="forum-content">\n <ul class="columns is-gapless is-multiline">\n <li class="column is-full is-half-desktop">\n <div class="forum-info">\n <ul class="columns is-gapless is-multiline">\n <li class="column is-full is-two-thirds-desktop">\n <div class="forum-misc">\n <div class="forum-last">\n <template v-if="lasturl.length">\n <div class="lastpost-content">\n <div class="is-hidden-desktop">\n <a :href="lasturl" :title="\'Último mensaje en el tema «\' + lastname + \'» por \'" class="lastpost-link">{{ lastname }}</a> por <slot name="last-who"></slot>, <slot name="last-date"></slot>\n </div>\n <div class="is-hidden-touch"></div>\n </div>\n </template>\n <template v-else>Este subforo no tiene mensajes</template>\n </div>\n </div>\n </li>\n <li class="column is-one-third is-hidden-touch">\n <div class="lastpost-user">\n <div class="lastpost-avatar">\n <slot name="last-avatar"></slot>\n </div>\n <div class="lastpost-name"></div>\n </div>\n </li>\n </ul>\n </div>\n </li>\n <li class="column is-full is-half-desktop">\n <div class="forum-interior">\n <slot name="desc"></slot>\n </div>\n </li>\n </ul>\n </div>\n </section>\n '}),Vue.component("temas-foro",{props:["type","url","replies","views","quick","lastpost","mode"],data(){return{title:void 0===this.$slots.title[0].tag?this.$slots.title[0].text:this.$slots.title[0].children[0].text}},computed:{currentMode(){const s=void 0!==forumConfig.skinOptions.showTopicType&&forumConfig.skinOptions.showTopicType;return this.mode.indexOf("<strong>")>-1&&s?this.mode.split("<strong>")[1].split(":</strong>")[0]:""},currentType(){let s=this.type;return window.location.pathname.indexOf("/merge")>-1?s="radio":window.location.pathname.indexOf("/modcp")>-1&&(s="checkbox"),s},currentClass(){const s={mp:"mp",draft:"draft",radio:"mp",checkbox:"mp",followed:"mp"};return"topiclist-topic"+("normal"!==this.currentType?" topic-"+s[this.currentType]:"")}},mounted(){const s=["checkbox","radio"],t=this.$el.parentElement.classList;"normal"!==this.currentType&&t.add("is-not-lastpost"),s.indexOf(this.currentType)>-1&&t.add("is-mod")},template:'\n <div :class="currentClass">\n <template v-if="currentType === \'draft\'">\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Ir al tema «\' + title + \'»\'">{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-repliesandviews">\n {{ replies }} - {{ views }}\n </div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <a class="topic-lastpost" :href="quick" :title="\'Ir al bosquejo «\' + title + \'»\'">\n <i class="fas fa-pencil-alt"></i>\n </a>\n </div>\n </template>\n <template v-else-if="currentType === \'followed\'">\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Ir al tema «\' + title + \'»\'">{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-repliesandviews">\n {{ replies }} - {{ views }}\n </div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <div class="topic-lastpost" title="¡Seleccióname!">\n <slot name="radio"></slot>\n </div>\n </div>\n </template>\n <template v-else-if="currentType === \'mp\'">\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Ir al mensaje privado «\' + title + \'»\'">{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-pagination">{{ views }}</div>\n <div class="topic-extra-separador">-</div>\n <div class="topic-author">Por <slot name="who"></slot></div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <div class="topic-lastpost" title="¡Seleccióname!">\n <div class="forum-checkbox">\n <div class="checkbox-content">\n <div class="checkbox-click">\n <i class="fas fa-check"></i>\n </div>\n </div>\n <div class="checkbox-real"><slot name="checkbox"></slot></div>\n </div>\n </div>\n </div>\n <div class="to-process">\n <slot name="status"></slot>\n </div>\n </template>\n <template v-else-if="currentType === \'radio\'">\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Ir al tema «\' + title + \'»\'">{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-author">Por <slot name="topic-author"></slot></div>\n <div class="topic-repliesandviews">\n {{ replies }}\n </div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <div class="topic-lastpost" title="¡Seleccióname!">\n <div class="forum-checkbox">\n <div class="checkbox-content">\n <div class="checkbox-click">\n <i class="fas fa-check"></i>\n </div>\n </div>\n <div class="checkbox-real"><slot name="checkbox"></slot></div>\n </div>\n </div>\n </div>\n <div class="to-process">\n <slot name="status"></slot>\n </div>\n </template>\n <template v-else-if="currentType === \'checkbox\'">\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Separar tema «\' + title + \'»\'">{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-author">{{ lastpost }}</div>\n <div class="topic-repliesandviews">\n {{ replies }}\n </div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <div class="topic-lastpost" title="¡Seleccióname!">\n <div class="forum-checkbox">\n <div class="checkbox-content">\n <div class="checkbox-click">\n <i class="fas fa-check"></i>\n </div>\n </div>\n <div class="checkbox-real"><slot name="checkbox"></slot></div>\n </div>\n </div>\n </div>\n <div class="to-process">\n <slot name="status"></slot>\n </div>\n </template>\n <template v-else>\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Ir al tema «\' + title + \'»\'"><template v-if="currentMode.length">{{ currentMode }}: </template>{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-pagination to-process">Páginas: <slot name="pagination"></slot></div>\n <div class="topic-extra-separador">-</div>\n <div class="topic-author">Por <slot name="topic-author"></slot></div>\n <div class="topic-repliesandviews">\n {{ replies }} - {{ views }}\n </div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <slot name="last-avatar"></slot>\n <div class="topic-last">\n <a class="topic-lastpost">\n <i class="fas fa-link"></i> Último mensaje\n </a>\n Por <span class="topic-lastauthor"></span>\n <br />\n <span class="topic-lastdate"></span>\n </div>\n </div>\n <div class="to-process">\n <slot name="status"></slot>\n <slot name="last-post"></slot>\n </div>\n </template>\n </div>\n '}),Vue.component("mensaje-foro",{props:["id","online","edited","date"],computed:{slugId(){return"post-"+this.id},currentClass(){return"postlist-post"+this.online},currentDate(){const s=s=>s.split("el ")[1];return this.date.length?(this.date.indexOf("el")>-1?s(this.date).trim():this.date.trim())+(this.edited.length&&-1===this.edited.indexOf("not-show")?' <a title="'+this.edited.split("<br /><br />")[1].split(",")[0]+'">Editado</a> ':""):""}},template:'\n <section :id="slugId" :class="currentClass">\n <a :id="id" class="page-anchor" />\n <div class="post-header">\n <div class="header-side"></div>\n </div>\n <div class="post-content">\n <div class="post-info">\n <div class="post-side">\n <a :href="\'#\' + id" title="Enlace permanente" class="post-permalink">\n <i class="fas fa-link"></i>\n </a>\n <div class="post-title" v-html="currentDate" v-if="currentDate.length"></div>\n </div>\n <ul class="post-buttons"></ul>\n </div>\n <div class="is-content">\n <slot name="content"></slot>\n </div>\n </div>\n <div class="post-profile">\n <slot name="profile"></slot>\n </div>\n </section>\n '}),Vue.component("memberitem-foro",{props:["profile","type"],data(){return{configType:"none"!==this.profile,configName:forumConfig.profileOptions.profileName||"perfil",configRank:forumConfig.profileOptions.profileRank,url:"/",title:`Ir al índice de «${forumData.name}»`,mp:"/",name:"Usuario",avatar:forumDefaults.avatar,alt:"Avatar por defecto",rank:"Miembro",group:"usergroup-unknown",messages:0,lastvisit:"Cargando…",currentlyLooking:""}},created(){this.$slots.name&&(this.$slots.name[0].text?this.name=this.$slots.name[0].text:this.name=this.$slots.name[0].children[0].children[0].text||"Buscador"),this.$slots.avatar&&(this.avatar=this.$slots.avatar[0].data.attrs.src),this.$slots.posts&&(this.messages=this.$slots.posts[0].text),this.$slots.last&&(this.lastvisit=this.$slots.last[0].text),this.$slots.site&&(this.currentlyLooking=this.$slots.site[0].children[0].text),this.configType&&FNR.user.getProfile(this.profile.split("/u")[1],.25).then(s=>{this.url=s.links.profile,this.title=`Ir al ${this.configName} de «${s.name}»`,this.mp=s.links.mp,this.alt=`Avatar de «${s.name}»`,this.rank=s.fields[this.configRank].content,this.group="usergroup-"+s.colour,this.$slots.name||(this.name=s.name),this.$slots.avatar||(this.avatar=s.avatar),this.$slots.posts||(this.messages=s.messages.public),this.$slots.last||(this.lastvisit=s.lastvisit)})},template:'\n <a :class="\'memberitem-element \' + group" :href="url" :title="title">\n <div class="memberlist-name">\n <h3 class="is-tweakeable">\n <span class="is-measurable">{{ name }}</span>\n </h3>\n <div v-if="type === \'memberlist\'" class="is-tweakeable">\n <span class="is-measurable">{{ currentlyLooking ? currentlyLooking : lastvisit }}</span>\n </div>\n </div>\n <img class="memberlist-avatar" :src="avatar" :alt="alt" />\n </a>\n '}),Vue.component("estadisticas-foro",{props:["msg","users"],data:()=>({lastTopics:[],userLog:_userdata.session_logged_in}),created(){FNR.forum.getTopics(forumConfig.skinOptions.excludedForums,forumConfig.skinOptions.lastTopics).then(s=>{this.lastTopics=s})},template:'\n <ul class="columns is-multiline is-gapless">\n <li id="bloque-estadisticas" class="column is-one-third is-full-touch">\n <div id="new-connected">\n <h6>Ahora</h6>\n <div class="has-users">\n <span class="curconnected-users"></span>\n </div>\n </div>\n <div id="past-connected">\n <h6>Últimas <span class="lastconnected-hour"></span> horas</h6>\n <div class="has-users">\n <span class="lastconnected-users"></span>\n </div>\n </div>\n </li>\n <li id="bloque-grupos" class="column is-two-thirds is-full-touch">\n <div id="image-banner"></div>\n <ul id="census"></ul>\n </li>\n <li id="bloque-ultimostemas" class="column is-full">\n <h6>Últimos temas</h6>\n <ul class="ltopic-list">\n <li v-for="topic in lastTopics">\n <tema-ref :info="topic"></tema-ref>\n </li>\n </ul>\n <small>También tienes la lista <a href="/latest" title="Ir a la página de «Últimos temas»">general</a><template v-if="userLog !== 0"> o desde tu <a href="/search?search_id=newposts" title="Ir a la página de «Desde última conexión»">ultima conexión</a></template>.</small>\n </li>\n \t</ul>\n '}),Vue.component("tema-ref",{props:["info"],data:()=>({profileName:forumConfig.profileOptions.profileName||"perfil"}),computed:{userColor(){return"color: "+this.info.lastpost.who.color}},template:'\n <div class="ltopic-element">\n <a class="ltopic-last" :href="info.lastpost.url" :title="\'Ir al último mensaje del tema «\' + info.name + \'»\'">\n <i class="fas fa-link"></i>\n </a>\n <a class="ltopic-title" :href="info.url" :title="\'Ir al tema «\' + info.name + \'»\'"><span>{{ info.name }}</span></a>\n <small class="ltopic-info"><a :href="info.lastpost.who.url" :style="userColor" :title="\'Ir al \' + profileName + \' de «\' + info.lastpost.who.name + \'»\'">{{ info.lastpost.who.name | just-name }}</a>, {{ info.lastpost.date }} en <a :href="info.forum.url" :title="\'Ir al subforo «\' + info.forum.name + \'»\'">{{ info.forum.name }}</a></small>\n </div>\n '}),Vue.component("footer-foro",{data:()=>({afis:{},normal:forumConfig.usableDirections.normal,credits:forumCredits.paragraphs,social:forumCredits.social}),created(){FNR.forum.getAffiliates().then(s=>{this.afis=s})},template:'\n <section id="page-afiliates" class="main-body">\n <categoria-foro id="afiliados">\n <div class="forum-head category-head">\n <i class="fa-solid fa-caret-right"></i>\n <h3><span>Afiliados <span class="extra">+</span> Créditos</span><small>afiliados <span class="extra">+</span> creditos</small></h3>\n </div>\n <ul class="columns is-gapless">\n <li id="forum-affiliates" class="column is-two-thirds is-full-touch">\n <ul class="columns is-gapless is-multiline">\n <li id="forum-affiliates-sisters" class="column is-full affiliates-collection">\n <h3 class="section-title">Hermanas</h3>\n <ul v-html="afis.sister" class="no-style"></ul>\n </li>\n <li id="forum-affiliates-elite" class="column is-full">\n <ul class="columns is-gapless is-multiline">\n <li class="column is-two-thirds is-full-touch affiliates-collection">\n <h3 class="section-title">Élite</h3>\n <ul v-html="afis.elite" class="no-style"></ul>\n </li>\n <li class="column is-one-third is-full-touch affiliates-collection">\n <h3 class="section-title">Directorios</h3>\n <ul v-html="afis.directory" class="no-style"></ul>\n </li>\n </ul>\n </li>\n <li id="forum-affiliates-regular" class="column is-full" v-if="normal.length">\n <h3 class="section-title"><a :href="normal" title="Ir a «Afiliaciones Normales»"><i class="fas fa-link"></i> Normales</a></h3>\n </li>\n </ul>\n </li>\n <li id="forum-cred" class="column is-full-touch">\n <div class="is-content">\n <h3 class="section-title">Créditos</h3>\n <ul class="no-style">\n <li v-for="credit in credits" v-html="credit"></li>\n <li class="is-hidden-mobile">El diseño y programación de la skin <a href="https://darktimes-skin.foroactivo.com/" title="Ir al sitio web de «Dark Times»">Dark Times</a> por <a href="https://zatrapa-gaylien.tumblr.com/" title="Ir al sitio web de «Gaylien»">Gaylien</a>. Agradecimiento especial a los equipos desarrolladores de <a href="https://vuejs.org/" title="Ir al sitio web de «Vue»">Vue</a> y <a href="https://bulma.io/" title="Ir al sitio web de «Bulma»">Bulma</a> por sus respectivos <em>Frameworks</em>.</li>\n <li id="credits-social" v-if="social.length">\n <ul class="no-style">\n <li v-for="platform in social">\n <a :href="platform.url" :title="\'Ir a «\' + platform.name + \'»\'"><em :class="platform.icon"></em> {{ platform.name }}</a>\n </li>\n </ul>\n </li> \n </ul>\n </div>\n </li>\n </ul>\n </categoria-foro>\n </section>\n '}),Vue.component("tablon-titulo",{props:["title"],template:'\n <h4 class="plank-title">\n <i class="fa-solid fa-caret-right"></i><span v-html="title"></span>\n </h4>\n '}),Vue.component("tablon-superior",{data:()=>({
|
|
2
|
-
name:forumData.name}),template:'\n <section id="topbar-section" class="basic-element">\n <categoria-foro id="tablon">\n <ul class="columns is-gapless is-multiline">\n <li class="column is-full">\n <div id="plank-anmt" class="plank-block">\n <tablon-titulo title="Anuncios <span class=\'extra\'>+</span> Novedades"></tablon-titulo>\n <links-anuncios></links-anuncios>\n </div>\n </li>\n <li class="column is-full is-two-thirds-desktop">\n <ul class="columns is-gapless is-multiline">\n <li class="column is-full">\n <div id="plank-staff" class="plank-block">\n <tablon-titulo title="Administración"></tablon-titulo>\n <links-staff></links-staff>\n </div>\n </li>\n <li class="column is-half">\n <div id="plank-search" class="plank-block">\n <tablon-titulo title="Búsquedas"></tablon-titulo>\n <busquedas></busquedas>\n </div>\n </li>\n <li class="column is-half">\n <div id="plank-sq" class="plank-block">\n <tablon-titulo title="¿Sabías qué?"></tablon-titulo>\n <sabias-que></sabias-que>\n </div>\n </li>\n </ul>\n </li>\n <li class="column is-full is-one-third-desktop">\n <div id="plank-help" class="plank-block">\n <tablon-titulo title="Ayuda"></tablon-titulo>\n <links-ayuda></links-ayuda>\n </div>\n </li>\n </ul>\n </categoria-foro>\n <categoria-foro id="navegacion">\n <ul class="columns is-gapless is-multiline">\n <li class="column">\n <nav id="forum-breadcrumb" class="breadcrumb has-succeeds-separator left" aria-label="breadcrumbs">\n <ul>\n <li>\n <a href="/" title="Ir a «Inicio»">{{ name }}</a>\n </li>\n </ul>\n </nav>\n </li>\n </ul>\n </categoria-foro>\n </section>\n '}),Vue.component("links-ayuda",{data:()=>({links:forumContent.links}),template:'\n <div id="help-main">\n <a :href="link.url" :title="\'Ir a «\' + link.name + \'»\'" v-for="link in links">{{ link.name }}</a>\n </div>\n '}),Vue.component("links-anuncios",{data:()=>({announcements:forumContent.announcements.list}),template:'\n <ul class="columns is-multiline">\n <li v-for="announcement in announcements" class="column is-one-quarter is-half-tablet is-half-mobile">\n <a :href="announcement.url" :title="\'Ir al anuncio «\' + announcement.name + \'»\'" class="anmt-element">\n <span class="anmt-title">{{ announcement.name }}</span>\n <span class="anmt-date">{{ announcement.date }}</span>\n </a>\n </li>\n </ul>\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 <div id="sq-img" class="msg-element topbar-element" :style="\'background-image: url(\' + content + \')\'"></div>\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" class="msg-element topbar-element" :style="\'background-image: url(\' + content.img + \')\'" :href="content.url" :title="content.desc"></a>\n '});
|
|
1
|
+
Vue.component("titulo-especial",{props:["title"],computed:{cleanedTitle(){return FNR.utility.genSlug(this.title," ")}},template:'\n <h3 class="is-tweakeable"><span class="is-measurable" v-html="title"></span><small v-html="cleanedTitle"></small></h3>\n '}),Vue.component("cabecera-foro",{data(){return{title:void 0===this.$slots.title[0].tag?Vue.filter("mini-sanitize")(this.$slots.title[0].text):Vue.filter("mini-sanitize")(this.$slots.title[0].children[0].text)}},computed:{cleanedTitle(){return FNR.utility.genSlug(this.title," ")}},template:'\n <div class="forum-head regular-head">\n <i class="fa-solid fa-caret-right"></i>\n <h3><span v-html="title"></span><small v-html="cleanedTitle"></small></h3>\n </div>\n '}),Vue.component("cabcategoria-foro",{data(){return{title:void 0===this.$slots.title[0].tag?Vue.filter("mini-sanitize")(this.$slots.title[0].text):Vue.filter("mini-sanitize")(this.$slots.title[0].children[0].text)}},computed:{cleanedTitle(){return FNR.utility.genSlug(this.title," ")}},template:'\n <div class="forum-head category-head">\n <i class="fa-solid fa-caret-right"></i>\n <h3><span v-html="title"></span><small v-html="cleanedTitle"></small></h3>\n </div>\n '}),Vue.component("cabespecial-foro",{data(){return{title:void 0===this.$slots.title[0].tag?Vue.filter("mini-sanitize")(this.$slots.title[0].text):Vue.filter("mini-sanitize")(this.$slots.title[0].children[0].text)}},computed:{cleanedTitle(){return FNR.utility.genSlug(this.title," ")}},template:'\n <div class="forum-head special-head">\n <i class="fa-solid fa-caret-right"></i>\n <h3><span v-html="title"></span><small v-html="cleanedTitle"></small></h3>\n </div>\n '}),Vue.component("controles-foro",{data:()=>({maPage:0,userName:_userdata.username,userAvatar:_userdata.avatar.split('src="')[1].split('"')[0],userLevel:_userdata.user_level,userId:_userdata.user_id,userLog:_userdata.session_logged_in,userMP:0,userOut:"",isActive:!1,profileName:forumConfig.profileOptions.profileName||"perfil"}),computed:{isActiveClass(){return"has-bg"+(this.isActive?" visible":" not-visible")}},methods:{turnActive(){this.isActive=!this.isActive}},created(){0!==this.userLog&&(null!==document.querySelector("#i_icon_mini_new_message")&&null!==document.querySelector("#i_icon_mini_new_message").title.match(/[0-255]/)&&(this.userMP=parseInt(document.querySelector("#i_icon_mini_new_message").title.match(/[0-255]/)[0])),this.userOut=document.querySelector("#logout").href)},template:'\n <div :class="\'main-body\' + (isActive ? \' is-on\' : \'\')"> \n <div id="hmg-button" @click="turnActive()" class="is-pointer">\n <i class="fas fa-bars"></i>\n </div>\n <div class="top">\n <template v-if="userId !== -1">\n <a :href="\'/u\' + userId" :title="\'Ir a tu \' + profileName" class="user">\n <div class="user-avatar">\n <img :src="userAvatar" :alt="\'Avatar de \' + userName" />\n </div>\n <span>{{ userName | just-name }}</span>\n </a>\n </template>\n <template v-else>\n <a href="/" title="Ir a «Inicio»" class="user">\n <span>Invitado</span>\n </a>\n </template>\n <div id="hmg-close">\n <i class="fas fa-times is-pointer" @click="turnActive()"></i>\n </div>\n </div>\n <nav class="bottom"> \n <navbar-foro :username="userName" :userlevel="userLevel" :userid="userId" :userlog="userLog" :usermp="userMP" :userout="userOut" />\n <section v-if="maPage === 1" id="multiaccount-transition">\n <cargando-foro text="Cambiando de cuenta…"></cargando-foro>\n </section>\n </nav>\n </div>\n '}),Vue.component("navbar-foro",{props:["username","userlevel","userid","userlog","usermp","userout"],data:()=>({profileName:forumConfig.profileOptions.profileName||"perfil",items:forumContent.navbar,navigation:forumContent.links,directions:forumConfig.usableDirections,multiAccount:{status:!1,position:-1,accounts:[]}}),computed:{isStatusClass(){return(1===this.userlog?"is-logged":"is-unlogged")+(1===this.userlevel?" is-admin":" is-user")},mpText(){return 0!==this.usermp?"Tienes "+this.usermp+" mensaje"+(1===this.usermp?"":"s")+" pendientes":"Ir a tu mensajería privada"},links(){return this.navigation.filter(s=>void 0!==s.icon)}},methods:{changeAccount(){this.$parent.maPage=1,FNR.user.changeAccount(this.userout,this.multiAccount.accounts[this.multiAccount.position].name,this.multiAccount.accounts[this.multiAccount.position].password).then(s=>{s&&window.location.reload()})}},created(){this.multiAccount.status=!1!==FNR.cache.getData("usermultiaccounts")&&!1!==FNR.cache.getData("userpassword")&&FNR.cache.getData("usermultiaccounts").length>1,this.multiAccount.accounts=(!1===FNR.cache.getData("usermultiaccounts")?[]:FNR.cache.getData("usermultiaccounts").map(s=>({name:s.name,password:sjcl.decrypt(FNR.cache.getData("userpassword"),s.password)}))).filter(s=>s.name!==_userdata.username).sort((s,t)=>s.name<t.name?-1:s.name>t.name?1:0)},template:'\n <ul :class="isStatusClass">\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 <template v-if="!userlog">\n <li class="navbar-item">\n <a href="/register" title="Registrarse en el foro">\n <div class="icon">\n <i class="fa-solid 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="fa-solid 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">\n <a :href="\'/u\' + userid" :title="\'Ir a tu \' + profileName">\n <div class="icon">\n <i class="fa-solid fa-id-card"></i>\n </div>\n <div class="text">Perfil</div>\n </a>\n </li>\n <li class="navbar-item">\n <a href="/search?search_id=egosearch" title="Ir a tus temas personales">\n <div class="icon">\n <i class="fa-solid fa-archive"></i>\n </div>\n <div class="text">Temas</div>\n </a>\n </li>\n <li class="navbar-item">\n <a href="/privmsg?folder=inbox" :title="mpText">\n <div class="icon">\n <template v-if="usermp === 0">\n <i class="fa-solid fa-envelope"></i>\n </template>\n <template v-else>\n <i class="fa-solid fa-message-exclamation"></i>\n </template>\n </div>\n <div class="text">Mensajería</div>\n </a>\n </li>\n <li class="navbar-item">\n <a :href="directions.ucp" title="Ir al «Panel de Usuario»">\n <div class="icon">\n <i class="fa-solid fa-sliders-h"></i>\n </div>\n <div class="text">Editar</div>\n </a>\n </li>\n <template v-if="multiAccount.status">\n <li class="navbar-item">\n <select title="Cambiar de cuenta" v-model="multiAccount.position" @change="changeAccount()" @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 <a :href="directions.ucp" title="Ir al «Panel de Usuario»">\n <div class="icon">\n <i class="fa-solid fa-address-book"></i>\n </div>\n <div class="text">Cuentas</div>\n </a>\n </li>\n </template>\n <template v-if="userlevel === 1">\n <li class="navbar-item">\n <a href="/admin" title="Ir al «Panel de Administrador»">\n <div class="icon">\n <i class="fa-solid fa-cogs"></i>\n </div>\n <div class="text">Administrar</div>\n </a>\n </li>\n </template>\n <li class="navbar-item">\n <a :href="userout" title="Cerrar sesión">\n <div class="icon">\n <i class="fa-solid fa-sign-out-alt"></i>\n </div>\n <div class="text">Salir</div>\n </a>\n </li>\n </template>\n </ul>\n '}),Vue.component("header-foro",{props:["sitename"],data:()=>({name:forumData.name,image:forumDefaults.logo}),template:'\n <section id="page-header" class="main-body">\n <a href="/" :title="\'Ir al índice de «\' + sitename + \'»\'" id="forum-logo">\n <template v-if="image">\n <img :src="image" :alt="name" />\n </template>\n <template v-else>\n <slot name="logo"></slot>\n </template>\n </a>\n </section>\n '}),Vue.component("foro-foro",{props:["url","name","posts","topics","lasturl"],data(){return{lastname:void 0===this.$slots["last-name"]?"":this.$slots["last-name"][0].text}},mounted(){const s=null!==this.url.match(/f(\d+)-/),t=s?"forum":"category",i=this.$el.parentElement.classList,e=FNR.utility.genSlug(this.name,"-"),n=s?this.url.match(/f(\d+)-/)[1]:this.url.match(/c(\d+)-/)[1];i.add(`${t}-element`),i.add(`${t}-${n}`),i.add(`${t}-${e}`)},template:'\n <section class="forum-forum">\n <a class="forum-header" :href="url" :title="\'Ir al subforo «\' + name + \'»\'">\n <div class="forum-title is-tweakeable">\n <span class="is-measurable">{{ name }}</span>\n </div>\n <div class="forum-stats">{{ posts }} mensajes — {{ topics }} temas</div>\n </a>\n <div class="forum-content">\n <ul class="columns is-gapless is-multiline">\n <li class="column is-full is-half-desktop">\n <div class="forum-info">\n <ul class="columns is-gapless is-multiline">\n <li class="column is-full is-two-thirds-desktop">\n <div class="forum-misc">\n <div class="forum-last">\n <template v-if="lasturl.length">\n <div class="lastpost-content">\n <div class="is-hidden-desktop">\n <a :href="lasturl" :title="\'Último mensaje en el tema «\' + lastname + \'» por \'" class="lastpost-link">{{ lastname }}</a> por <slot name="last-who"></slot>, <slot name="last-date"></slot>\n </div>\n <div class="is-hidden-touch"></div>\n </div>\n </template>\n <template v-else>Este subforo no tiene mensajes</template>\n </div>\n </div>\n </li>\n <li class="column is-one-third is-hidden-touch">\n <div class="lastpost-user">\n <div class="lastpost-avatar">\n <slot name="last-avatar"></slot>\n </div>\n <div class="lastpost-name"></div>\n </div>\n </li>\n </ul>\n </div>\n </li>\n <li class="column is-full is-half-desktop">\n <div class="forum-interior">\n <slot name="desc"></slot>\n </div>\n </li>\n </ul>\n </div>\n </section>\n '}),Vue.component("temas-foro",{props:["type","url","replies","views","quick","lastpost","mode"],data(){return{title:void 0===this.$slots.title[0].tag?this.$slots.title[0].text:this.$slots.title[0].children[0].text}},computed:{currentMode(){const s=void 0!==forumConfig.skinOptions.showTopicType&&forumConfig.skinOptions.showTopicType;return this.mode.indexOf("<strong>")>-1&&s?this.mode.split("<strong>")[1].split(":</strong>")[0]:""},currentType(){let s=this.type;return window.location.pathname.indexOf("/merge")>-1?s="radio":window.location.pathname.indexOf("/modcp")>-1&&(s="checkbox"),s},currentClass(){const s={mp:"mp",draft:"draft",radio:"mp",checkbox:"mp",followed:"mp"};return"topiclist-topic"+("normal"!==this.currentType?" topic-"+s[this.currentType]:"")}},mounted(){const s=["checkbox","radio"],t=this.$el.parentElement.classList;"normal"!==this.currentType&&t.add("is-not-lastpost"),s.indexOf(this.currentType)>-1&&t.add("is-mod")},template:'\n <div :class="currentClass">\n <template v-if="currentType === \'draft\'">\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Ir al tema «\' + title + \'»\'">{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-repliesandviews">\n {{ replies }} - {{ views }}\n </div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <a class="topic-lastpost" :href="quick" :title="\'Ir al bosquejo «\' + title + \'»\'">\n <i class="fas fa-pencil-alt"></i>\n </a>\n </div>\n </template>\n <template v-else-if="currentType === \'followed\'">\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Ir al tema «\' + title + \'»\'">{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-repliesandviews">\n {{ replies }} - {{ views }}\n </div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <div class="topic-lastpost" title="¡Seleccióname!">\n <slot name="radio"></slot>\n </div>\n </div>\n </template>\n <template v-else-if="currentType === \'mp\'">\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Ir al mensaje privado «\' + title + \'»\'">{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-pagination">{{ views }}</div>\n <div class="topic-extra-separador">-</div>\n <div class="topic-author">Por <slot name="who"></slot></div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <div class="topic-lastpost" title="¡Seleccióname!">\n <div class="forum-checkbox">\n <div class="checkbox-content">\n <div class="checkbox-click">\n <i class="fas fa-check"></i>\n </div>\n </div>\n <div class="checkbox-real"><slot name="checkbox"></slot></div>\n </div>\n </div>\n </div>\n <div class="to-process">\n <slot name="status"></slot>\n </div>\n </template>\n <template v-else-if="currentType === \'radio\'">\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Ir al tema «\' + title + \'»\'">{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-author">Por <slot name="topic-author"></slot></div>\n <div class="topic-repliesandviews">\n {{ replies }}\n </div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <div class="topic-lastpost" title="¡Seleccióname!">\n <div class="forum-checkbox">\n <div class="checkbox-content">\n <div class="checkbox-click">\n <i class="fas fa-check"></i>\n </div>\n </div>\n <div class="checkbox-real"><slot name="checkbox"></slot></div>\n </div>\n </div>\n </div>\n <div class="to-process">\n <slot name="status"></slot>\n </div>\n </template>\n <template v-else-if="currentType === \'checkbox\'">\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Separar tema «\' + title + \'»\'">{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-author">{{ lastpost }}</div>\n <div class="topic-repliesandviews">\n {{ replies }}\n </div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <div class="topic-lastpost" title="¡Seleccióname!">\n <div class="forum-checkbox">\n <div class="checkbox-content">\n <div class="checkbox-click">\n <i class="fas fa-check"></i>\n </div>\n </div>\n <div class="checkbox-real"><slot name="checkbox"></slot></div>\n </div>\n </div>\n </div>\n <div class="to-process">\n <slot name="status"></slot>\n </div>\n </template>\n <template v-else>\n <div class="topic-main">\n <div class="topic-icon"></div>\n <div class="topic-container">\n <span class="topic-title">\n <a :href="url" :title="\'Ir al tema «\' + title + \'»\'"><template v-if="currentMode.length">{{ currentMode }}: </template>{{ title }}</a>\n </span>\n <div class="topic-extra">\n <div class="topic-pagination to-process">Páginas: <slot name="pagination"></slot></div>\n <div class="topic-extra-separador">-</div>\n <div class="topic-author">Por <slot name="topic-author"></slot></div>\n <div class="topic-repliesandviews">\n {{ replies }} - {{ views }}\n </div>\n </div>\n </div>\n </div>\n <div class="topic-quicklink">\n <slot name="last-avatar"></slot>\n <div class="topic-last">\n <a class="topic-lastpost">\n <i class="fas fa-link"></i> Último mensaje\n </a>\n Por <span class="topic-lastauthor"></span>\n <br />\n <span class="topic-lastdate"></span>\n </div>\n </div>\n <div class="to-process">\n <slot name="status"></slot>\n <slot name="last-post"></slot>\n </div>\n </template>\n </div>\n '}),Vue.component("mensaje-foro",{props:["id","online","edited","date"],computed:{slugId(){return"post-"+this.id},currentClass(){return"postlist-post"+this.online},currentDate(){const s=s=>s.split("el ")[1];return this.date.length?(this.date.indexOf("el")>-1?s(this.date).trim():this.date.trim())+(this.edited.length&&-1===this.edited.indexOf("not-show")?' <a title="'+this.edited.split("<br /><br />")[1].split(",")[0]+'">Editado</a> ':""):""}},template:'\n <section :id="slugId" :class="currentClass">\n <a :id="id" class="page-anchor" />\n <div class="post-header">\n <div class="header-side"></div>\n </div>\n <div class="post-content">\n <div class="post-info">\n <div class="post-side">\n <a :href="\'#\' + id" title="Enlace permanente" class="post-permalink">\n <i class="fas fa-link"></i>\n </a>\n <div class="post-title" v-html="currentDate" v-if="currentDate.length"></div>\n </div>\n <ul class="post-buttons"></ul>\n </div>\n <div class="is-content">\n <slot name="content"></slot>\n </div>\n </div>\n <div class="post-profile">\n <slot name="profile"></slot>\n </div>\n </section>\n '}),Vue.component("memberitem-foro",{props:["profile","type"],data(){return{configType:"none"!==this.profile,configName:forumConfig.profileOptions.profileName||"perfil",configRank:forumConfig.profileOptions.profileRank,url:"/",title:`Ir al índice de «${forumData.name}»`,mp:"/",name:"Usuario",avatar:forumDefaults.avatar,alt:"Avatar por defecto",rank:"Miembro",group:"usergroup-unknown",messages:0,lastvisit:"Cargando…",currentlyLooking:""}},created(){this.$slots.name&&(this.$slots.name[0].text?this.name=this.$slots.name[0].text:this.name=this.$slots.name[0].children[0].children[0].text||"Buscador"),this.$slots.avatar&&(this.avatar=this.$slots.avatar[0].data.attrs.src),this.$slots.posts&&(this.messages=this.$slots.posts[0].text),this.$slots.last&&(this.lastvisit=this.$slots.last[0].text),this.$slots.site&&(this.currentlyLooking=this.$slots.site[0].children[0].text),this.configType&&FNR.user.getProfile(this.profile.split("/u")[1],.25).then(s=>{this.url=s.links.profile,this.title=`Ir al ${this.configName} de «${s.name}»`,this.mp=s.links.mp,this.alt=`Avatar de «${s.name}»`,this.rank=s.fields[this.configRank].content,this.group="usergroup-"+s.colour,this.$slots.name||(this.name=s.name),this.$slots.avatar||(this.avatar=s.avatar),this.$slots.posts||(this.messages=s.messages.public),this.$slots.last||(this.lastvisit=s.lastvisit)})},template:'\n <a :class="\'memberitem-element \' + group" :href="url" :title="title">\n <div class="memberlist-name">\n <h3 class="is-tweakeable">\n <span class="is-measurable">{{ name }}</span>\n </h3>\n <div v-if="type === \'memberlist\'" class="is-tweakeable">\n <span class="is-measurable">{{ currentlyLooking ? currentlyLooking : lastvisit }}</span>\n </div>\n </div>\n <img class="memberlist-avatar" :src="avatar" :alt="alt" />\n </a>\n '}),Vue.component("estadisticas-foro",{props:["msg","users"],data:()=>({lastTopics:[],userLog:_userdata.session_logged_in}),created(){FNR.forum.getTopics(forumConfig.skinOptions.excludedForums,forumConfig.skinOptions.lastTopics).then(s=>{this.lastTopics=s})},template:'\n <ul class="columns is-multiline is-gapless">\n <li id="bloque-estadisticas" class="column is-one-third is-full-touch">\n <div id="new-connected">\n <h6>Ahora</h6>\n <div class="has-users">\n <span class="curconnected-users"></span>\n </div>\n </div>\n <div id="past-connected">\n <h6>Últimas <span class="lastconnected-hour"></span> horas</h6>\n <div class="has-users">\n <span class="lastconnected-users"></span>\n </div>\n </div>\n </li>\n <li id="bloque-grupos" class="column is-two-thirds is-full-touch">\n <div id="image-banner"></div>\n <ul id="census"></ul>\n </li>\n <li id="bloque-ultimostemas" class="column is-full">\n <h6>Últimos temas</h6>\n <ul class="ltopic-list">\n <li v-for="topic in lastTopics">\n <tema-ref :info="topic"></tema-ref>\n </li>\n </ul>\n <small>También tienes la lista <a href="/latest" title="Ir a la página de «Últimos temas»">general</a><template v-if="userLog !== 0"> o desde tu <a href="/search?search_id=newposts" title="Ir a la página de «Desde última conexión»">ultima conexión</a></template>.</small>\n </li>\n \t</ul>\n '}),Vue.component("tema-ref",{props:["info"],data:()=>({profileName:forumConfig.profileOptions.profileName||"perfil"}),computed:{userColor(){return"color: "+this.info.lastpost.who.color}},template:'\n <div class="ltopic-element">\n <a class="ltopic-last" :href="info.lastpost.url" :title="\'Ir al último mensaje del tema «\' + info.name + \'»\'">\n <i class="fas fa-link"></i>\n </a>\n <a class="ltopic-title" :href="info.url" :title="\'Ir al tema «\' + info.name + \'»\'"><span>{{ info.name }}</span></a>\n <small class="ltopic-info"><a :href="info.lastpost.who.url" :style="userColor" :title="\'Ir al \' + profileName + \' de «\' + info.lastpost.who.name + \'»\'">{{ info.lastpost.who.name | just-name }}</a>, {{ info.lastpost.date }} en <a :href="info.forum.url" :title="\'Ir al subforo «\' + info.forum.name + \'»\'">{{ info.forum.name }}</a></small>\n </div>\n '}),Vue.component("footer-foro",{data:()=>({afis:{},normal:forumConfig.usableDirections.normal,credits:forumCredits.paragraphs,social:forumCredits.social}),created(){FNR.forum.getAffiliates().then(s=>{this.afis=s})},template:'\n <section id="page-afiliates" class="main-body">\n <categoria-foro id="afiliados">\n <div class="forum-head category-head">\n <i class="fa-solid fa-caret-right"></i>\n <h3><span>Afiliados <span class="extra">+</span> Créditos</span><small>afiliados <span class="extra">+</span> creditos</small></h3>\n </div>\n <ul class="columns is-gapless">\n <li id="forum-affiliates" class="column is-two-thirds is-full-touch">\n <ul class="columns is-gapless is-multiline">\n <li id="forum-affiliates-sisters" class="column is-full affiliates-collection">\n <h3 class="section-title">Hermanas</h3>\n <ul v-html="afis.sister" class="no-style"></ul>\n </li>\n <li id="forum-affiliates-elite" class="column is-full">\n <ul class="columns is-gapless is-multiline">\n <li class="column is-two-thirds is-full-touch affiliates-collection">\n <h3 class="section-title">Élite</h3>\n <ul v-html="afis.elite" class="no-style"></ul>\n </li>\n <li class="column is-one-third is-full-touch affiliates-collection">\n <h3 class="section-title">Directorios</h3>\n <ul v-html="afis.directory" class="no-style"></ul>\n </li>\n </ul>\n </li>\n <li id="forum-affiliates-regular" class="column is-full" v-if="normal.length">\n <h3 class="section-title"><a :href="normal" title="Ir a «Afiliaciones Normales»"><i class="fas fa-link"></i> Normales</a></h3>\n </li>\n </ul>\n </li>\n <li id="forum-cred" class="column is-full-touch">\n <div class="is-content">\n <h3 class="section-title">Créditos</h3>\n <ul class="no-style">\n <li v-for="credit in credits" v-html="credit"></li>\n <li class="is-hidden-mobile">El diseño y programación de la skin <a target="_blank" href="https://darktimes-skin.foroactivo.com/" title="Ir al sitio web de «Dark Times»">Dark Times</a> por <a target="_blank" href="https://zatrapa-gaylien.tumblr.com/" title="Ir al sitio web de «Gaylien»">Gaylien</a>. Agradecimiento especial a los equipos desarrolladores de <a target="_blank" href="https://vuejs.org/" title="Ir al sitio web de «Vue»">Vue</a> y <a target="_blank" href="https://bulma.io/" title="Ir al sitio web de «Bulma»">Bulma</a> por sus respectivos <em>Frameworks</em>.</li>\n <li id="credits-social" v-if="social.length">\n <ul class="no-style">\n <li v-for="platform in social">\n <a target="_blank" :href="platform.url" :title="\'Ir a «\' + platform.name + \'»\'"><em :class="platform.icon"></em> {{ platform.name }}</a>\n </li>\n </ul>\n </li> \n </ul>\n </div>\n </li>\n </ul>\n </categoria-foro>\n </section>\n '}),Vue.component("tablon-titulo",{props:["title"],
|
|
2
|
+
template:'\n <h4 class="plank-title">\n <i class="fa-solid fa-caret-right"></i><span v-html="title"></span>\n </h4>\n '}),Vue.component("tablon-superior",{data:()=>({name:forumData.name}),template:'\n <section id="topbar-section" class="basic-element">\n <categoria-foro id="tablon">\n <ul class="columns is-gapless is-multiline">\n <li class="column is-full">\n <div id="plank-anmt" class="plank-block">\n <tablon-titulo title="Anuncios <span class=\'extra\'>+</span> Novedades"></tablon-titulo>\n <links-anuncios></links-anuncios>\n </div>\n </li>\n <li class="column is-full is-two-thirds-desktop">\n <ul class="columns is-gapless is-multiline">\n <li class="column is-full">\n <div id="plank-staff" class="plank-block">\n <tablon-titulo title="Administración"></tablon-titulo>\n <links-staff></links-staff>\n </div>\n </li>\n <li class="column is-half">\n <div id="plank-search" class="plank-block">\n <tablon-titulo title="Búsquedas"></tablon-titulo>\n <busquedas></busquedas>\n </div>\n </li>\n <li class="column is-half">\n <div id="plank-sq" class="plank-block">\n <tablon-titulo title="¿Sabías qué?"></tablon-titulo>\n <sabias-que></sabias-que>\n </div>\n </li>\n </ul>\n </li>\n <li class="column is-full is-one-third-desktop">\n <div id="plank-help" class="plank-block">\n <tablon-titulo title="Ayuda"></tablon-titulo>\n <links-ayuda></links-ayuda>\n </div>\n </li>\n </ul>\n </categoria-foro>\n <categoria-foro id="navegacion">\n <ul class="columns is-gapless is-multiline">\n <li class="column">\n <nav id="forum-breadcrumb" class="breadcrumb has-succeeds-separator left" aria-label="breadcrumbs">\n <ul>\n <li>\n <a href="/" title="Ir a «Inicio»">{{ name }}</a>\n </li>\n </ul>\n </nav>\n </li>\n </ul>\n </categoria-foro>\n </section>\n '}),Vue.component("links-ayuda",{data:()=>({links:forumContent.links}),template:'\n <div id="help-main">\n <a :href="link.url" :title="\'Ir a «\' + link.name + \'»\'" v-for="link in links">{{ link.name }}</a>\n </div>\n '}),Vue.component("links-anuncios",{data:()=>({announcements:forumContent.announcements.list}),template:'\n <ul class="columns is-multiline">\n <li v-for="announcement in announcements" class="column is-one-quarter is-half-tablet is-half-mobile">\n <a :href="announcement.url" :title="\'Ir al anuncio «\' + announcement.name + \'»\'" class="anmt-element">\n <span class="anmt-title">{{ announcement.name }}</span>\n <span class="anmt-date">{{ announcement.date }}</span>\n </a>\n </li>\n </ul>\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 <div id="sq-img" class="msg-element topbar-element" :style="\'background-image: url(\' + content + \')\'"></div>\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" class="msg-element topbar-element" :style="\'background-image: url(\' + content.img + \')\'" :href="content.url" :title="content.desc"></a>\n '});
|
package/general.js
CHANGED
|
@@ -66,7 +66,7 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
|
66
66
|
return;
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
-
const userName = item.querySelector('.postprofile-username').textContent;
|
|
69
|
+
const userName = item.querySelector('.postprofile-username').textContent.trim();
|
|
70
70
|
const userAvatar = item.querySelector('.postprofile-avatar img').src;
|
|
71
71
|
const userGroup = item.querySelector('.postprofile-username span') ? FNR.utility.getGroup('rgb_' + item.querySelector('.postprofile-username span').style.color.split('rgb(')[1].split(')')[0].split(', ').join('_')) : 'unknown';
|
|
72
72
|
let userFields = {};
|
package/general.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const getForumHeader=e=>{const o=e||"Informaciones";let t="";return t+='<div class="forum-head special-head">',t+='<i class="fa-solid fa-caret-right"></i>',t+="<h3>",t+="<span>"+o+"</span>",t+="<small>"+FNR.utility.genSlug(o," ")+"</small>",t+="</h3>",t+="</div>",t},getForumNotSupportedPage=(e,o)=>{const t=e||"Módulo no soportado. Redirigiendo al índice.",i=o||"/";let n="";n+='<section id="forum-content" class="is-not-vue">',n+='<div class="to-process">',n+='<div id="breadcrumbs">',n+='<a href="#">Informaciones</a>',n+="</div>",n+="</div>",n+='<section id="message-section" class="basic-element">',n+='<section class="generic-element">',n+=getForumHeader(),n+='<div class="msg-element is-content">'+t+"</div>",n+="</section>",n+="</section>",n+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",n),setTimeout(()=>{window.location.replace(i)},5e3)};let forumProfiles=[];document.addEventListener("DOMContentLoaded",()=>{const e=e=>e.querySelector("img")?e.querySelector("img").src:e.innerHTML;document.querySelector("#topic-section .postlist-post")&&[].forEach.call(document.querySelectorAll("#topic-section .postlist-post"),(o,t)=>{if("post-0"===o.id)return void o.remove();const i=o.querySelector(".postprofile-username").textContent,n=o.querySelector(".postprofile-avatar img").src,s=o.querySelector(".postprofile-username span")?FNR.utility.getGroup("rgb_"+o.querySelector(".postprofile-username span").style.color.split("rgb(")[1].split(")")[0].split(", ").join("_")):"unknown";let r={},a={};o.querySelector(".postprofile-field")&&[].forEach.call(o.querySelectorAll(".postprofile-field"),o=>{const t=o.querySelector(".postprofile-field-label .label span").textContent,i=e(o.querySelector(".postprofile-field-content"));r[FNR.utility.genSlug(t,"_")]={name:t,content:i}}),o.querySelector(".postprofile-rank").textContent.length&&(r.rango={name:"Rango",content:o.querySelector(".postprofile-rank").textContent});const l=o.querySelector(".postprofile-username a")?o.querySelector(".postprofile-username a").href:"Invitado"===r[forumConfig.profileOptions.profileRank].content?"/":FNR.user.getUrl(i);o.querySelector(".postprofile-contact").children.length&&[].forEach.call(o.querySelector(".postprofile-contact").children,e=>{let o,t,n,s=!1;if(e.querySelector("img"))switch(e.querySelector("img").src){case"https://2img.net/i/fa/prosilver/icon_contact_pm.png":s="Contactar",o="Enviar un mensaje privado a «"+i+"»",t=e.querySelector("a").href,n=forumConfig.profileUser.contactFields.mp;break;case"https://2img.net/i.imgur.com/LbaEYDr.png":s=forumConfig.profileOptions.profileLinks.firstLink,o="Ir a "+s+" de «"+i+"»",t=e.querySelector("a").href,n=forumConfig.profileUser.contactFields[FNR.utility.genSlug(s,"_")];break;case"https://2img.net/i.imgur.com/V9WL9zX.png":s=forumConfig.profileOptions.profileLinks.secondLink,o="Ir a "+s+" de «"+i+"»",t=e.querySelector("a").href,n=forumConfig.profileUser.contactFields[FNR.utility.genSlug(s,"_")];break;case"https://2img.net/i.imgur.com/LprMCaL.png":s=forumConfig.profileOptions.profileLinks.thirdLink,o="Ir a "+s+" de «"+i+"»",t=e.querySelector("a").href,n=forumConfig.profileUser.contactFields[FNR.utility.genSlug(s,"_")]}!1!==s&&(a[FNR.utility.genSlug(s,"_")]={name:s,title:o,content:t,icon:n})}),o.classList.add("usergroup-"+s),o.querySelector(".post-profile").innerHTML="",forumProfiles.push({username:i,avatar:n,group:s,profile:l,fields:r,contact:a});const c=o.querySelector(".post-profile"),d=o.querySelector(".header-side");let u;if(u="",u+='<a class="miniprofile-main" href="'+l+'" title="Ir al '+(void 0===forumConfig.profileOptions.profileName?"perfil":forumConfig.profileOptions.profileName)+" de «"+i+'»"><img src="'+n+'" alt="Avatar de «'+i+'»" /></a>',c.insertAdjacentHTML("beforeend",u),c.classList.add("profile-sticky"),void 0!==r[forumConfig.profileOptions.profileSignature]){u="",u+='<a class="miniprofile-signature" href="'+l+'" title="Ir al '+(void 0===forumConfig.profileOptions.profileName?"perfil":forumConfig.profileOptions.profileName)+" de «"+i+'»"><img class="is-avatar" src="'+n+'" alt="Avatar de «'+i+'»" /><img class="is-signature" src="'+r[forumConfig.profileOptions.profileSignature].content+'" alt="Firma de «'+i+'»" /></a>',d.insertAdjacentHTML("beforebegin",u),u="",u+='<div class="miniprofile-quote">'+r[forumConfig.profileOptions.profileCite].content+"</div>",d.insertAdjacentHTML("beforeend",u),u="",u+='<div class="miniprofile-name"></div>',d.insertAdjacentHTML("beforeend",u),u="";const e='<span class="is-hidden-tablet">'+Vue.filter("just-name")(i)+'</span><span class="is-hidden-mobile">'+i+"</span>";u+='<h3 class="is-tweakeable"><a class="is-measurable" href="'+l+'" title="Ir al '+(void 0===forumConfig.profileOptions.profileName?"perfil":forumConfig.profileOptions.profileName)+" de «"+i+'»">'+e+"</a></h3>",d.querySelector(".miniprofile-name").insertAdjacentHTML("beforeend",u);const o=r[forumConfig.profileOptions.profileRank].content;delete r[forumConfig.profileOptions.profileSignature],delete r[forumConfig.profileOptions.profileCite],delete r[forumConfig.profileOptions.profileRank],delete r.rango,Object.values(r).length&&(u="",u+='<ul class="miniprofile-fields">',u+='<li class="miniprofile-field miniprofile-field-rango">',u+="<strong>Rango</strong>"+o,u+="</li>",forumConfig.profileUser.miniFields.forEach(e=>{const o=r[e];u+='<li class="miniprofile-field miniprofile-field-'+FNR.utility.genSlug(o.name,"-")+'">',u+="<strong>"+o.name+"</strong>"+o.content,u+="</li>"}),u+="</ul>",d.insertAdjacentHTML("beforeend",u))}Object.values(a).length&&(u="",u+='<ul class="miniprofile-contacts">',Object.values(a).forEach(e=>{u+='<li class="miniprofile-contact miniprofile-contact-'+FNR.utility.genSlug(e.name,"-")+'">',u+='<a href="'+e.content+'" title="'+e.title+'">'+e.name+"</a>",u+="</li>"}),u+="</ul>",c.querySelector(".miniprofile-main").insertAdjacentHTML("afterend",u),d.querySelector(".miniprofile-name")&&d.insertAdjacentHTML("beforeend",u))})}),document.addEventListener("DOMContentLoaded",()=>{if("/login"===window.location.pathname&&document.querySelector('form[name="form_login"]')){let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Conectarse</a>',e+="</div>",e+="</div>",e+='<form action="/login" method="post" name="form_login" id="login-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Conectarse al foro"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-nombre-de-usuario">',e+='<div class="forum-field">',e+='<div class="field-name">Nombre de usuario</div>',e+='<div class="field-content"><input type="text" name="username" id="username" size="25" maxlength="40" value=""></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-contrasena">',e+='<div class="forum-field">',e+='<div class="field-name">Contraseña</div>',e+='<div class="field-content"><input type="password" id="password" name="password" size="25" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element mt-5">',e+='<div id="checkbox-autologin" class="forum-checkbox">',e+='<div class="checkbox-content">',e+='<div class="checkbox-click">',e+='<i class="fas fa-check"></i>',e+="</div>",e+='<div class="checkbox-name">Iniciar sesión automáticamente</div>',e+="</div>",e+='<div class="checkbox-real">',e+='<input type="checkbox" id="autologin" name="autologin" checked="checked">',e+="</div>",e+="</div>",e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+='<input type="hidden" name="redirect" value="">',e+='<input type="hidden" name="query" value="">',e+='<input type="submit" name="login" value="Conectarse" class="button1 btn-main">',e+='<a class="button1" href="/profile?mode=sendpassword">Recuperar contraseña</a>',e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+='<p>Si aún no dispones de cuenta y estás interesado en unirte a nosotros puedes <a href="/register" title="Ir a «Registro»">registrarte</a> con suma facilidad, asimismo, te instamos a leerte nuestras <a href="'+forumConfig.usableDirections.norms+'" title="Ir a «Normativa»">normas</a> y <a href="'+forumConfig.usableDirections.lore+'" title="Ir a «Trasfondo»">trasfondo</a>.</p>',e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e)}}),document.addEventListener("DOMContentLoaded",()=>{if(!document.querySelector("#main-body .msg-element"))if("/profile"===window.location.pathname)switch(window.location.search){case"?mode=sendpassword":let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Recuperar contraseña</a>',e+="</div>",e+="</div>",e+='<form action="" method="post" id="login-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Recuperar contraseña"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-nombre-de-usuario">',e+='<div class="forum-field">',e+='<div class="field-name">Nombre de usuario</div>',e+='<div class="field-content"><input type="text" name="username" value=""></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-correo">',e+='<div class="forum-field">',e+='<div class="field-name">Correo electrónico</div>',e+='<div class="field-content"><input type="text" name="email" value=""></div>',e+="</div>",e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+='<input type="submit" name="submit" value="Enviar" class="button2 btn-main">',e+='<input type="reset" name="reset" value="Reiniciar" class="button2">',e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+="<p>Tras pulsar el botón «Enviar» (si los datos son verídicos) recibirás un correo en tu cuenta con instrucciones sobre como reestablecer tu contraseña.</p>",e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e);break;default:if(window.location.search.indexOf("?change_password")>-1){document.querySelector('input[value="Registrar"]').classList.add("btn-main");let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Cambiar contraseña</a>',e+="</div>",e+="</div>",e+='<form action="/profile" enctype="multipart/form-data" method="post" name="post" id="login-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Cambiar contraseña"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-contrasena-actual">',e+='<div class="forum-field">',e+='<div class="field-name">Contraseña actual</div>',e+='<div class="field-content"><input type="password" name="cur_password" value=""></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-nueva-contrasena">',e+='<div class="forum-field">',e+='<div class="field-name">Nueva contraseña</div>',e+='<div class="field-content"><input type="password" name="new_password" value="" class="inputbox" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-confirmar-contrasena">',e+='<div class="forum-field">',e+='<div class="field-name">Confirmar contraseña</div>',e+='<div class="field-content"><input type="password" name="password_confirm" value="" class="inputbox" maxlength="25"><input type="hidden" name="change_password" value="change_password"></div>',e+="</div>",e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+=document.querySelector("#ucp .submit-buttons").innerHTML,e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+="<p>Tras pulsar el botón «Registrar» (si los datos son verídicos) podrás cambiar tu contraseña. Recibirás un correo electrónico confirmando dicho cambio.</p>",e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e),document.querySelector('input[value="REINICIAR"]').value="Reiniciar"}else getForumNotSupportedPage()}else if("/profile.php"===window.location.pathname){document.querySelector('input[type="reset"]').removeAttribute("style"),document.querySelector('input[value="Registrar"]').classList.add("btn-main");let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Recuperar contraseña</a>',e+="</div>",e+="</div>",e+='<form action="" method="post" id="login-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Recuperar contraseña"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-nombre-de-usuario">',e+='<div class="forum-field">',e+='<div class="field-name">Contraseña</div>',e+='<div class="field-content"><input type="password" id="password_reg" name="password" value="" size="25" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-correo">',e+='<div class="forum-field">',e+='<div class="field-name">Confirmar contraseña</div>',e+='<div class="field-content"><input type="password" id="password_confirm" name="password_confirm" value="" size="25" maxlength="25"></div>',e+="</div>",e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+=document.querySelector(".submit-buttons").innerHTML,e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+="<p>Tras pulsar el botón «Registrar» (si las contraseñas coinciden) podrás entrar de nuevo al foro.</p>",e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e)}}),document.addEventListener("DOMContentLoaded",()=>{if("/register"===window.location.pathname)if(document.querySelector("form#ucp")){let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Registro</a>',e+="</div>",e+="</div>",e+='<form action="" method="post" name="post" id="register-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Registro"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-nombre-de-usuario">',e+='<div class="forum-field">',e+='<div class="field-name">Nombre de usuario</div>',e+='<div class="field-content"><input type="text" id="username_reg" name="username" value="" size="25" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-correo">',e+='<div class="forum-field">',e+='<div class="field-name">Correo electrónico</div>',e+='<div class="field-content"><input type="text" id="email" name="email" value="" size="25" maxlength="64"></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-contrasena">',e+='<div class="forum-field">',e+='<div class="field-name">Contraseña</div>',e+='<div class="field-content"><input type="password" id="password_reg" name="password" value="" size="25" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element mt-5">',e+='<div id="checkbox-wantnews" class="forum-checkbox">',e+='<div class="checkbox-content">',e+='<div class="checkbox-click">',e+='<i class="fas fa-check"></i>',e+="</div>",e+='<div class="checkbox-name">Acepto recibir noticias del foro</div>',e+="</div>",e+='<div class="checkbox-real">',e+='<input type="checkbox" id="wantsnews" name="wantsnews" value="1">',e+="</div>",e+="</div>",e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+='<input type="submit" name="submit" value="Registrar" class="button2 btn-main">',e+='<input type="reset" name="reset" value="Reiniciar" class="button2">',e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+='<p>Recuerda, antes de proceder, echar un vistazo a nuestras <a href="'+forumConfig.usableDirections.norms+'" title="Ir a «Normativa»">normas</a> y <a href="'+forumConfig.usableDirections.lore+'" title="Ir a «Trasfondo»">trasfondo</a>.</p>',e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+="</form>",e+="</section>",document.querySelector('p[style="color: red;"]')&&console.log(document.querySelector('p[style="color: red;"]').textContent),[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e),document.querySelector("#register-section").onsubmit=(e=>{let o=0;document.querySelector('input[name="username"]').value=document.querySelector('input[name="username"]').value.replace(/"/g,()=>(o++,o%2==0?"»":"«")).replace(/`/g,"'").replace(/´/g,"'")})}else if(document.querySelector("form#form_confirm")){document.querySelector('input[value="Registrar"]').classList.add("btn-main");let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Registro</a>',e+="</div>",e+="</div>",e+='<form action="" method="post" name="form_confirm" id="register-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Registro"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-confirmar-contrasena">',e+='<div class="forum-field">',e+='<div class="field-name">Confirmar contraseña</div>',e+='<div class="field-content"><input type="password" name="password_confirm" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-cloudflare mb-0">',e+=document.querySelector(".fields2 > script").outerHTML,e+=document.querySelector(".fields2 > .cf-turnstile").outerHTML,e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+='<input type="hidden" name="username" value="">',e+='<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response-3">',e+='<input type="hidden" name="submit" value="1">',e+=document.querySelector('input[value="Registrar"]').parentElement.innerHTML,e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+='<p>Recuerda, antes de proceder, echar un vistazo a nuestras <a href="'+forumConfig.usableDirections.norms+'" title="Ir a «Normativa»">normas</a> y <a href="'+forumConfig.usableDirections.lore+'" title="Ir a «Trasfondo»">trasfondo</a>.</p>',e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+=document.querySelector("#form_confirm script").outerHTML,e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e)}}),document.addEventListener("DOMContentLoaded",()=>{if(document.querySelector('p[style="text-align:center"]')&&"Un nuevo mensaje ha sido añadido mientras escribías el tuyo. Puedes ver los últimos mensajes posteados abajo y decidir si quieres modificarlo o registrarlo."===document.querySelector('p[style="text-align:center"]').textContent){document.querySelector('form[action="/post"] .submit-buttons').remove();let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Informaciones</a>',e+="</div>",e+="</div>",e+='<form action="/post" method="post" name="post" id="message-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader(),e+='<div class="msg-element is-content">',e+="<p>Un nuevo mensaje ha sido añadido mientras escribías el tuyo. Puedes decidir si quieres modificarlo o registrarlo.</p>",e+="<p><u><strong>Recuerda, si procedes e ibas a hacer una tirada, esta no se hará.</strong></u></p>",e+="</div>",e+='<div id="usereply-comand">',e+=document.querySelector('form[action="/post"]').innerHTML,e+='<input type="submit" name="prevent_post" value="Registrar" class="button1 btn-main">',e+='<input type="submit" name="prevent_modif" value="Modificar" class="button2">',e+="</div>",e+="</section>",e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e)}}),document.addEventListener("DOMContentLoaded",()=>{const e=["?search_id=draftsearch","?search_id=watchsearch"];e.forEach(e=>{window.location.search.indexOf(e)>-1&&getForumNotSupportedPage()})}),document.addEventListener("DOMContentLoaded",()=>{const e=["/gallery","/calendar","/faq","/contact","/abuse","/statistics","/privacy","/images","/discover","/search"];e.forEach(e=>{window.location.pathname.indexOf(e)>-1&&getForumNotSupportedPage()})}),document.addEventListener("DOMContentLoaded",()=>{if(document.querySelector("#mod-controls")&&document.querySelector("#mod-controls").children.length>0){const e=()=>{let e="";return e+='<li class="btn-element btn-gestionar">',e+='<div class="dropdown is-dropeable is-right">',e+='<div class="dropdown-trigger">',e+='<a targer="_blank" title="Gestionar" class="forum-button is-pointer" aria-haspopup="true" aria-controls="dropdown-menu">',e+='<span class="icon"><i class="fas fa-wrench"></i></span>',e+='<span class="text is-hidden-touch">Gestionar</span>',e+="</a>",e+="</div>",e+='<div class="dropdown-menu" role="menu">',e+='<div class="dropdown-content">',[].forEach.call(document.querySelector("#mod-controls").children,o=>{switch(o.querySelector("img")){case null:const t=o.textContent.match(/Dejar/)?"Dejar de vigilar tema":"Vigilar tema";e+='<a href="'+o.href+'" title="'+t+'" class="dropdown-item">'+t+"</a>";break;default:e+='<a href="'+o.href+'" title="'+o.querySelector("img").title+'" class="dropdown-item">'+o.querySelector("img").title+"</a>"}}),e+="</div>",e+="</div>",e+="</div>",e+="</li>",e};[].forEach.call(document.querySelectorAll(".page-buttons"),o=>{o.insertAdjacentHTML("afterbegin",e())})}}),document.addEventListener("DOMContentLoaded",()=>{const e=[{url:`${window.location.origin}/search?search_id=draftsearch`,substitute:`${forumConfig.usableDirections.ucp}#/bosquejos`},{url:"/search?search_id=draftsearch",substitute:`${forumConfig.usableDirections.ucp}#/bosquejos`},{url:`${window.location.origin}/search?search_id=topicdraftsearch`,substitute:`${forumConfig.usableDirections.ucp}#/bosquejos`},{url:"/search?search_id=topicdraftsearch",substitute:`${forumConfig.usableDirections.ucp}#/bosquejos`}];e.forEach(e=>{const o=document.querySelectorAll(`a[href^="${e.url}"]`);[].forEach.call(o,o=>{o.href=e.substitute})})}),document.addEventListener("forumReady",()=>{document.querySelector("#g-recaptcha-response-3")&&"undefined"!=typeof captchaCheck&&(inputToken=document.querySelector("#g-recaptcha-response-3"),inputToken.closest("form").addEventListener("submit",captchaCheck))}),document.addEventListener("DOMContentLoaded",()=>{const e='<section id="forum-header">'+document.querySelector("#page-header").innerHTML+"</section>",o='<section id="extracredits-section" class="basic-element">'+document.querySelector("#page-afiliates").innerHTML+"</section>",t=document.querySelector("#forum-footer").outerHTML,i=document.querySelector("#forum-topbar .category-navegacion nav").outerHTML;document.querySelector("body>header").remove(),document.querySelector("footer").remove(),document.querySelector("#forum-footer").remove(),document.querySelector("#forum-topbar .category-navegacion").remove(),document.querySelector("#content-container").insertAdjacentHTML("afterbegin",e),document.querySelector("#content-container").insertAdjacentHTML("beforeend",t),document.querySelector("#forum-topbar").insertAdjacentHTML("beforebegin",i),document.querySelector("#forum-content .basic-element")?document.querySelector("#forum-content .basic-element").parentElement.insertAdjacentHTML("beforeend",o):document.querySelector("#forum-wiki .basic-element")&&document.querySelector("#forum-wiki .basic-element").parentElement.insertAdjacentHTML("beforeend",o)}),document.addEventListener("DOMContentLoaded",()=>{document.querySelector(".forum-forum")&&[].forEach.call(document.querySelectorAll(".forum-forum"),e=>{e.querySelector(".forum-misc")&&e.querySelector(".forum-box")&&(e.querySelector(".forum-misc").insertAdjacentHTML("afterbegin",e.querySelector(".forum-box").outerHTML),e.querySelector(".forum-interior .forum-box").remove())})}),document.addEventListener("forumReady",()=>{document.querySelector(".forum-forum")&&[].forEach.call(document.querySelectorAll(".forum-forum"),e=>{if(e.querySelector(".forum-last .is-hidden-desktop > strong")&&(e.querySelector(".lastpost-name").insertAdjacentHTML("beforeend",e.querySelector(".forum-last .is-hidden-desktop > strong").outerHTML),e.querySelector(".lastpost-name > strong a"))){const o=e.querySelector(".lastpost-name > strong a").innerHTML,t=e.querySelector(".lastpost-name > strong").innerHTML.split(o);e.querySelector(".lastpost-name > strong").innerHTML=o,e.querySelector(".lastpost-user").outerHTML=`${t[0]}${e.querySelector(".lastpost-user").innerHTML}${t[1]}`,e.querySelector(".is-one-third > a").classList.add("lastpost-user")}if(e.querySelector(".forum-last .is-hidden-desktop .lastpost-link")){const o=e.querySelector(".forum-last .is-hidden-desktop .lastpost-link").outerHTML,t=e.querySelector(".forum-last .is-hidden-desktop").innerHTML.split("</strong>, ")[1];e.querySelector(".forum-last .is-hidden-touch").insertAdjacentHTML("beforeend",`${o}, ${t}`)}})}),document.addEventListener("forumReady",()=>{document.querySelector("body")&&forumConfig.skinOptions.monochromeImages&&document.querySelectorAll("body").classList.add("is-monochrome")}),document.addEventListener("forumReady",()=>{"/"!==window.location.pathname&&document.querySelector("#forum-topbar")&&forumConfig.skinOptions.hideTopbar&&document.querySelector("#forum-topbar").remove()});
|
|
1
|
+
const getForumHeader=e=>{const o=e||"Informaciones";let t="";return t+='<div class="forum-head special-head">',t+='<i class="fa-solid fa-caret-right"></i>',t+="<h3>",t+="<span>"+o+"</span>",t+="<small>"+FNR.utility.genSlug(o," ")+"</small>",t+="</h3>",t+="</div>",t},getForumNotSupportedPage=(e,o)=>{const t=e||"Módulo no soportado. Redirigiendo al índice.",i=o||"/";let n="";n+='<section id="forum-content" class="is-not-vue">',n+='<div class="to-process">',n+='<div id="breadcrumbs">',n+='<a href="#">Informaciones</a>',n+="</div>",n+="</div>",n+='<section id="message-section" class="basic-element">',n+='<section class="generic-element">',n+=getForumHeader(),n+='<div class="msg-element is-content">'+t+"</div>",n+="</section>",n+="</section>",n+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",n),setTimeout(()=>{window.location.replace(i)},5e3)};let forumProfiles=[];document.addEventListener("DOMContentLoaded",()=>{const e=e=>e.querySelector("img")?e.querySelector("img").src:e.innerHTML;document.querySelector("#topic-section .postlist-post")&&[].forEach.call(document.querySelectorAll("#topic-section .postlist-post"),(o,t)=>{if("post-0"===o.id)return void o.remove();const i=o.querySelector(".postprofile-username").textContent.trim(),n=o.querySelector(".postprofile-avatar img").src,s=o.querySelector(".postprofile-username span")?FNR.utility.getGroup("rgb_"+o.querySelector(".postprofile-username span").style.color.split("rgb(")[1].split(")")[0].split(", ").join("_")):"unknown";let r={},a={};o.querySelector(".postprofile-field")&&[].forEach.call(o.querySelectorAll(".postprofile-field"),o=>{const t=o.querySelector(".postprofile-field-label .label span").textContent,i=e(o.querySelector(".postprofile-field-content"));r[FNR.utility.genSlug(t,"_")]={name:t,content:i}}),o.querySelector(".postprofile-rank").textContent.length&&(r.rango={name:"Rango",content:o.querySelector(".postprofile-rank").textContent});const l=o.querySelector(".postprofile-username a")?o.querySelector(".postprofile-username a").href:"Invitado"===r[forumConfig.profileOptions.profileRank].content?"/":FNR.user.getUrl(i);o.querySelector(".postprofile-contact").children.length&&[].forEach.call(o.querySelector(".postprofile-contact").children,e=>{let o,t,n,s=!1;if(e.querySelector("img"))switch(e.querySelector("img").src){case"https://2img.net/i/fa/prosilver/icon_contact_pm.png":s="Contactar",o="Enviar un mensaje privado a «"+i+"»",t=e.querySelector("a").href,n=forumConfig.profileUser.contactFields.mp;break;case"https://2img.net/i.imgur.com/LbaEYDr.png":s=forumConfig.profileOptions.profileLinks.firstLink,o="Ir a "+s+" de «"+i+"»",t=e.querySelector("a").href,n=forumConfig.profileUser.contactFields[FNR.utility.genSlug(s,"_")];break;case"https://2img.net/i.imgur.com/V9WL9zX.png":s=forumConfig.profileOptions.profileLinks.secondLink,o="Ir a "+s+" de «"+i+"»",t=e.querySelector("a").href,n=forumConfig.profileUser.contactFields[FNR.utility.genSlug(s,"_")];break;case"https://2img.net/i.imgur.com/LprMCaL.png":s=forumConfig.profileOptions.profileLinks.thirdLink,o="Ir a "+s+" de «"+i+"»",t=e.querySelector("a").href,n=forumConfig.profileUser.contactFields[FNR.utility.genSlug(s,"_")]}!1!==s&&(a[FNR.utility.genSlug(s,"_")]={name:s,title:o,content:t,icon:n})}),o.classList.add("usergroup-"+s),o.querySelector(".post-profile").innerHTML="",forumProfiles.push({username:i,avatar:n,group:s,profile:l,fields:r,contact:a});const c=o.querySelector(".post-profile"),d=o.querySelector(".header-side");let u;if(u="",u+='<a class="miniprofile-main" href="'+l+'" title="Ir al '+(void 0===forumConfig.profileOptions.profileName?"perfil":forumConfig.profileOptions.profileName)+" de «"+i+'»"><img src="'+n+'" alt="Avatar de «'+i+'»" /></a>',c.insertAdjacentHTML("beforeend",u),c.classList.add("profile-sticky"),void 0!==r[forumConfig.profileOptions.profileSignature]){u="",u+='<a class="miniprofile-signature" href="'+l+'" title="Ir al '+(void 0===forumConfig.profileOptions.profileName?"perfil":forumConfig.profileOptions.profileName)+" de «"+i+'»"><img class="is-avatar" src="'+n+'" alt="Avatar de «'+i+'»" /><img class="is-signature" src="'+r[forumConfig.profileOptions.profileSignature].content+'" alt="Firma de «'+i+'»" /></a>',d.insertAdjacentHTML("beforebegin",u),u="",u+='<div class="miniprofile-quote">'+r[forumConfig.profileOptions.profileCite].content+"</div>",d.insertAdjacentHTML("beforeend",u),u="",u+='<div class="miniprofile-name"></div>',d.insertAdjacentHTML("beforeend",u),u="";const e='<span class="is-hidden-tablet">'+Vue.filter("just-name")(i)+'</span><span class="is-hidden-mobile">'+i+"</span>";u+='<h3 class="is-tweakeable"><a class="is-measurable" href="'+l+'" title="Ir al '+(void 0===forumConfig.profileOptions.profileName?"perfil":forumConfig.profileOptions.profileName)+" de «"+i+'»">'+e+"</a></h3>",d.querySelector(".miniprofile-name").insertAdjacentHTML("beforeend",u);const o=r[forumConfig.profileOptions.profileRank].content;delete r[forumConfig.profileOptions.profileSignature],delete r[forumConfig.profileOptions.profileCite],delete r[forumConfig.profileOptions.profileRank],delete r.rango,Object.values(r).length&&(u="",u+='<ul class="miniprofile-fields">',u+='<li class="miniprofile-field miniprofile-field-rango">',u+="<strong>Rango</strong>"+o,u+="</li>",forumConfig.profileUser.miniFields.forEach(e=>{const o=r[e];u+='<li class="miniprofile-field miniprofile-field-'+FNR.utility.genSlug(o.name,"-")+'">',u+="<strong>"+o.name+"</strong>"+o.content,u+="</li>"}),u+="</ul>",d.insertAdjacentHTML("beforeend",u))}Object.values(a).length&&(u="",u+='<ul class="miniprofile-contacts">',Object.values(a).forEach(e=>{u+='<li class="miniprofile-contact miniprofile-contact-'+FNR.utility.genSlug(e.name,"-")+'">',u+='<a href="'+e.content+'" title="'+e.title+'">'+e.name+"</a>",u+="</li>"}),u+="</ul>",c.querySelector(".miniprofile-main").insertAdjacentHTML("afterend",u),d.querySelector(".miniprofile-name")&&d.insertAdjacentHTML("beforeend",u))})}),document.addEventListener("DOMContentLoaded",()=>{if("/login"===window.location.pathname&&document.querySelector('form[name="form_login"]')){let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Conectarse</a>',e+="</div>",e+="</div>",e+='<form action="/login" method="post" name="form_login" id="login-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Conectarse al foro"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-nombre-de-usuario">',e+='<div class="forum-field">',e+='<div class="field-name">Nombre de usuario</div>',e+='<div class="field-content"><input type="text" name="username" id="username" size="25" maxlength="40" value=""></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-contrasena">',e+='<div class="forum-field">',e+='<div class="field-name">Contraseña</div>',e+='<div class="field-content"><input type="password" id="password" name="password" size="25" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element mt-5">',e+='<div id="checkbox-autologin" class="forum-checkbox">',e+='<div class="checkbox-content">',e+='<div class="checkbox-click">',e+='<i class="fas fa-check"></i>',e+="</div>",e+='<div class="checkbox-name">Iniciar sesión automáticamente</div>',e+="</div>",e+='<div class="checkbox-real">',e+='<input type="checkbox" id="autologin" name="autologin" checked="checked">',e+="</div>",e+="</div>",e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+='<input type="hidden" name="redirect" value="">',e+='<input type="hidden" name="query" value="">',e+='<input type="submit" name="login" value="Conectarse" class="button1 btn-main">',e+='<a class="button1" href="/profile?mode=sendpassword">Recuperar contraseña</a>',e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+='<p>Si aún no dispones de cuenta y estás interesado en unirte a nosotros puedes <a href="/register" title="Ir a «Registro»">registrarte</a> con suma facilidad, asimismo, te instamos a leerte nuestras <a href="'+forumConfig.usableDirections.norms+'" title="Ir a «Normativa»">normas</a> y <a href="'+forumConfig.usableDirections.lore+'" title="Ir a «Trasfondo»">trasfondo</a>.</p>',e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e)}}),document.addEventListener("DOMContentLoaded",()=>{if(!document.querySelector("#main-body .msg-element"))if("/profile"===window.location.pathname)switch(window.location.search){case"?mode=sendpassword":let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Recuperar contraseña</a>',e+="</div>",e+="</div>",e+='<form action="" method="post" id="login-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Recuperar contraseña"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-nombre-de-usuario">',e+='<div class="forum-field">',e+='<div class="field-name">Nombre de usuario</div>',e+='<div class="field-content"><input type="text" name="username" value=""></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-correo">',e+='<div class="forum-field">',e+='<div class="field-name">Correo electrónico</div>',e+='<div class="field-content"><input type="text" name="email" value=""></div>',e+="</div>",e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+='<input type="submit" name="submit" value="Enviar" class="button2 btn-main">',e+='<input type="reset" name="reset" value="Reiniciar" class="button2">',e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+="<p>Tras pulsar el botón «Enviar» (si los datos son verídicos) recibirás un correo en tu cuenta con instrucciones sobre como reestablecer tu contraseña.</p>",e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e);break;default:if(window.location.search.indexOf("?change_password")>-1){document.querySelector('input[value="Registrar"]').classList.add("btn-main");let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Cambiar contraseña</a>',e+="</div>",e+="</div>",e+='<form action="/profile" enctype="multipart/form-data" method="post" name="post" id="login-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Cambiar contraseña"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-contrasena-actual">',e+='<div class="forum-field">',e+='<div class="field-name">Contraseña actual</div>',e+='<div class="field-content"><input type="password" name="cur_password" value=""></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-nueva-contrasena">',e+='<div class="forum-field">',e+='<div class="field-name">Nueva contraseña</div>',e+='<div class="field-content"><input type="password" name="new_password" value="" class="inputbox" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-confirmar-contrasena">',e+='<div class="forum-field">',e+='<div class="field-name">Confirmar contraseña</div>',e+='<div class="field-content"><input type="password" name="password_confirm" value="" class="inputbox" maxlength="25"><input type="hidden" name="change_password" value="change_password"></div>',e+="</div>",e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+=document.querySelector("#ucp .submit-buttons").innerHTML,e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+="<p>Tras pulsar el botón «Registrar» (si los datos son verídicos) podrás cambiar tu contraseña. Recibirás un correo electrónico confirmando dicho cambio.</p>",e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e),document.querySelector('input[value="REINICIAR"]').value="Reiniciar"}else getForumNotSupportedPage()}else if("/profile.php"===window.location.pathname){document.querySelector('input[type="reset"]').removeAttribute("style"),document.querySelector('input[value="Registrar"]').classList.add("btn-main");let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Recuperar contraseña</a>',e+="</div>",e+="</div>",e+='<form action="" method="post" id="login-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Recuperar contraseña"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-nombre-de-usuario">',e+='<div class="forum-field">',e+='<div class="field-name">Contraseña</div>',e+='<div class="field-content"><input type="password" id="password_reg" name="password" value="" size="25" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-correo">',e+='<div class="forum-field">',e+='<div class="field-name">Confirmar contraseña</div>',e+='<div class="field-content"><input type="password" id="password_confirm" name="password_confirm" value="" size="25" maxlength="25"></div>',e+="</div>",e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+=document.querySelector(".submit-buttons").innerHTML,e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+="<p>Tras pulsar el botón «Registrar» (si las contraseñas coinciden) podrás entrar de nuevo al foro.</p>",e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e)}}),document.addEventListener("DOMContentLoaded",()=>{if("/register"===window.location.pathname)if(document.querySelector("form#ucp")){let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Registro</a>',e+="</div>",e+="</div>",e+='<form action="" method="post" name="post" id="register-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Registro"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-nombre-de-usuario">',e+='<div class="forum-field">',e+='<div class="field-name">Nombre de usuario</div>',e+='<div class="field-content"><input type="text" id="username_reg" name="username" value="" size="25" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-correo">',e+='<div class="forum-field">',e+='<div class="field-name">Correo electrónico</div>',e+='<div class="field-content"><input type="text" id="email" name="email" value="" size="25" maxlength="64"></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-contrasena">',e+='<div class="forum-field">',e+='<div class="field-name">Contraseña</div>',e+='<div class="field-content"><input type="password" id="password_reg" name="password" value="" size="25" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element mt-5">',e+='<div id="checkbox-wantnews" class="forum-checkbox">',e+='<div class="checkbox-content">',e+='<div class="checkbox-click">',e+='<i class="fas fa-check"></i>',e+="</div>",e+='<div class="checkbox-name">Acepto recibir noticias del foro</div>',e+="</div>",e+='<div class="checkbox-real">',e+='<input type="checkbox" id="wantsnews" name="wantsnews" value="1">',e+="</div>",e+="</div>",e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+='<input type="submit" name="submit" value="Registrar" class="button2 btn-main">',e+='<input type="reset" name="reset" value="Reiniciar" class="button2">',e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+='<p>Recuerda, antes de proceder, echar un vistazo a nuestras <a href="'+forumConfig.usableDirections.norms+'" title="Ir a «Normativa»">normas</a> y <a href="'+forumConfig.usableDirections.lore+'" title="Ir a «Trasfondo»">trasfondo</a>.</p>',e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+="</form>",e+="</section>",document.querySelector('p[style="color: red;"]')&&console.log(document.querySelector('p[style="color: red;"]').textContent),[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e),document.querySelector("#register-section").onsubmit=(e=>{let o=0;document.querySelector('input[name="username"]').value=document.querySelector('input[name="username"]').value.replace(/"/g,()=>(o++,o%2==0?"»":"«")).replace(/`/g,"'").replace(/´/g,"'")})}else if(document.querySelector("form#form_confirm")){document.querySelector('input[value="Registrar"]').classList.add("btn-main");let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Registro</a>',e+="</div>",e+="</div>",e+='<form action="" method="post" name="form_confirm" id="register-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader("Registro"),e+='<ul class="columns is-vcentered is-multiline is-two-columns-page">',e+='<li id="bloque-login" class="column is-full-touch is-first">',e+='<ul class="forum-fieldlist is-horizontal no-style">',e+='<li class="field-element field-confirmar-contrasena">',e+='<div class="forum-field">',e+='<div class="field-name">Confirmar contraseña</div>',e+='<div class="field-content"><input type="password" name="password_confirm" maxlength="25"></div>',e+="</div>",e+="</li>",e+='<li class="field-element field-cloudflare mb-0">',e+=document.querySelector(".fields2 > script").outerHTML,e+=document.querySelector(".fields2 > .cf-turnstile").outerHTML,e+="</li>",e+="</ul>",e+='<div id="usereply-comand">',e+='<input type="hidden" name="username" value="">',e+='<input type="hidden" name="g-recaptcha-response" id="g-recaptcha-response-3">',e+='<input type="hidden" name="submit" value="1">',e+=document.querySelector('input[value="Registrar"]').parentElement.innerHTML,e+="</div>",e+="</li>",e+='<li id="bloque-info" class="column is-full-touch is-second">',e+='<div class="is-content">',e+='<h3 class="is-hidden-touch">¡Saludos!</h3>',e+='<hr class="is-hidden-touch"/>',e+='<p class="is-hidden-touch">'+forumData.desc+"</p>",e+='<p>Recuerda, antes de proceder, echar un vistazo a nuestras <a href="'+forumConfig.usableDirections.norms+'" title="Ir a «Normativa»">normas</a> y <a href="'+forumConfig.usableDirections.lore+'" title="Ir a «Trasfondo»">trasfondo</a>.</p>',e+='<p class="is-hidden-touch">Atte. Administración de <strong>'+forumData.name+"</strong>.</p>",e+="</div>",e+="</li>",e+="</ul>",e+="</section>",e+=document.querySelector("#form_confirm script").outerHTML,e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e)}}),document.addEventListener("DOMContentLoaded",()=>{if(document.querySelector('p[style="text-align:center"]')&&"Un nuevo mensaje ha sido añadido mientras escribías el tuyo. Puedes ver los últimos mensajes posteados abajo y decidir si quieres modificarlo o registrarlo."===document.querySelector('p[style="text-align:center"]').textContent){document.querySelector('form[action="/post"] .submit-buttons').remove();let e="";e+='<section id="forum-content" class="is-not-vue">',e+='<div class="to-process">',e+='<div id="breadcrumbs">',e+='<a href="#">Informaciones</a>',e+="</div>",e+="</div>",e+='<form action="/post" method="post" name="post" id="message-section" class="basic-element">',e+='<section class="generic-element">',e+=getForumHeader(),e+='<div class="msg-element is-content">',e+="<p>Un nuevo mensaje ha sido añadido mientras escribías el tuyo. Puedes decidir si quieres modificarlo o registrarlo.</p>",e+="<p><u><strong>Recuerda, si procedes e ibas a hacer una tirada, esta no se hará.</strong></u></p>",e+="</div>",e+='<div id="usereply-comand">',e+=document.querySelector('form[action="/post"]').innerHTML,e+='<input type="submit" name="prevent_post" value="Registrar" class="button1 btn-main">',e+='<input type="submit" name="prevent_modif" value="Modificar" class="button2">',e+="</div>",e+="</section>",e+="</form>",e+="</section>",[].forEach.call(document.querySelectorAll("#content-container > *:not(#forum-topbar)"),e=>{e.remove()}),document.querySelector("#content-container").insertAdjacentHTML("beforeend",e)}}),document.addEventListener("DOMContentLoaded",()=>{const e=["?search_id=draftsearch","?search_id=watchsearch"];e.forEach(e=>{window.location.search.indexOf(e)>-1&&getForumNotSupportedPage()})}),document.addEventListener("DOMContentLoaded",()=>{const e=["/gallery","/calendar","/faq","/contact","/abuse","/statistics","/privacy","/images","/discover","/search"];e.forEach(e=>{window.location.pathname.indexOf(e)>-1&&getForumNotSupportedPage()})}),document.addEventListener("DOMContentLoaded",()=>{if(document.querySelector("#mod-controls")&&document.querySelector("#mod-controls").children.length>0){const e=()=>{let e="";return e+='<li class="btn-element btn-gestionar">',e+='<div class="dropdown is-dropeable is-right">',e+='<div class="dropdown-trigger">',e+='<a targer="_blank" title="Gestionar" class="forum-button is-pointer" aria-haspopup="true" aria-controls="dropdown-menu">',e+='<span class="icon"><i class="fas fa-wrench"></i></span>',e+='<span class="text is-hidden-touch">Gestionar</span>',e+="</a>",e+="</div>",e+='<div class="dropdown-menu" role="menu">',e+='<div class="dropdown-content">',[].forEach.call(document.querySelector("#mod-controls").children,o=>{switch(o.querySelector("img")){case null:const t=o.textContent.match(/Dejar/)?"Dejar de vigilar tema":"Vigilar tema";e+='<a href="'+o.href+'" title="'+t+'" class="dropdown-item">'+t+"</a>";break;default:e+='<a href="'+o.href+'" title="'+o.querySelector("img").title+'" class="dropdown-item">'+o.querySelector("img").title+"</a>"}}),e+="</div>",e+="</div>",e+="</div>",e+="</li>",e};[].forEach.call(document.querySelectorAll(".page-buttons"),o=>{o.insertAdjacentHTML("afterbegin",e())})}}),document.addEventListener("DOMContentLoaded",()=>{const e=[{url:`${window.location.origin}/search?search_id=draftsearch`,substitute:`${forumConfig.usableDirections.ucp}#/bosquejos`},{url:"/search?search_id=draftsearch",substitute:`${forumConfig.usableDirections.ucp}#/bosquejos`},{url:`${window.location.origin}/search?search_id=topicdraftsearch`,substitute:`${forumConfig.usableDirections.ucp}#/bosquejos`},{url:"/search?search_id=topicdraftsearch",substitute:`${forumConfig.usableDirections.ucp}#/bosquejos`}];e.forEach(e=>{const o=document.querySelectorAll(`a[href^="${e.url}"]`);[].forEach.call(o,o=>{o.href=e.substitute})})}),document.addEventListener("forumReady",()=>{document.querySelector("#g-recaptcha-response-3")&&"undefined"!=typeof captchaCheck&&(inputToken=document.querySelector("#g-recaptcha-response-3"),inputToken.closest("form").addEventListener("submit",captchaCheck))}),document.addEventListener("DOMContentLoaded",()=>{const e='<section id="forum-header">'+document.querySelector("#page-header").innerHTML+"</section>",o='<section id="extracredits-section" class="basic-element">'+document.querySelector("#page-afiliates").innerHTML+"</section>",t=document.querySelector("#forum-footer").outerHTML,i=document.querySelector("#forum-topbar .category-navegacion nav").outerHTML;document.querySelector("body>header").remove(),document.querySelector("footer").remove(),document.querySelector("#forum-footer").remove(),document.querySelector("#forum-topbar .category-navegacion").remove(),document.querySelector("#content-container").insertAdjacentHTML("afterbegin",e),document.querySelector("#content-container").insertAdjacentHTML("beforeend",t),document.querySelector("#forum-topbar").insertAdjacentHTML("beforebegin",i),document.querySelector("#forum-content .basic-element")?document.querySelector("#forum-content .basic-element").parentElement.insertAdjacentHTML("beforeend",o):document.querySelector("#forum-wiki .basic-element")&&document.querySelector("#forum-wiki .basic-element").parentElement.insertAdjacentHTML("beforeend",o)}),document.addEventListener("DOMContentLoaded",()=>{document.querySelector(".forum-forum")&&[].forEach.call(document.querySelectorAll(".forum-forum"),e=>{e.querySelector(".forum-misc")&&e.querySelector(".forum-box")&&(e.querySelector(".forum-misc").insertAdjacentHTML("afterbegin",e.querySelector(".forum-box").outerHTML),e.querySelector(".forum-interior .forum-box").remove())})}),document.addEventListener("forumReady",()=>{document.querySelector(".forum-forum")&&[].forEach.call(document.querySelectorAll(".forum-forum"),e=>{if(e.querySelector(".forum-last .is-hidden-desktop > strong")&&(e.querySelector(".lastpost-name").insertAdjacentHTML("beforeend",e.querySelector(".forum-last .is-hidden-desktop > strong").outerHTML),e.querySelector(".lastpost-name > strong a"))){const o=e.querySelector(".lastpost-name > strong a").innerHTML,t=e.querySelector(".lastpost-name > strong").innerHTML.split(o);e.querySelector(".lastpost-name > strong").innerHTML=o,e.querySelector(".lastpost-user").outerHTML=`${t[0]}${e.querySelector(".lastpost-user").innerHTML}${t[1]}`,e.querySelector(".is-one-third > a").classList.add("lastpost-user")}if(e.querySelector(".forum-last .is-hidden-desktop .lastpost-link")){const o=e.querySelector(".forum-last .is-hidden-desktop .lastpost-link").outerHTML,t=e.querySelector(".forum-last .is-hidden-desktop").innerHTML.split("</strong>, ")[1];e.querySelector(".forum-last .is-hidden-touch").insertAdjacentHTML("beforeend",`${o}, ${t}`)}})}),document.addEventListener("forumReady",()=>{document.querySelector("body")&&forumConfig.skinOptions.monochromeImages&&document.querySelectorAll("body").classList.add("is-monochrome")}),document.addEventListener("forumReady",()=>{"/"!==window.location.pathname&&document.querySelector("#forum-topbar")&&forumConfig.skinOptions.hideTopbar&&document.querySelector("#forum-topbar").remove()});
|