generic-skin 2.1.0 → 2.1.4

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.
@@ -627,7 +627,15 @@ Vue.component('editor-foro', {
627
627
  };
628
628
 
629
629
  if (document.post !== undefined) {
630
- this.state.editor = document.post.mode.value;
630
+ if (document.post.mode.value === 'editpost') {
631
+ if (document.post.modif_topic_title !== undefined) {
632
+ this.state.editor = 'newtopic';
633
+ } else {
634
+ this.state.editor = 'reply';
635
+ }
636
+ } else {
637
+ this.state.editor = document.post.mode.value;
638
+ }
631
639
  }
632
640
 
633
641
  if (!this.state.guest) {
@@ -856,7 +864,8 @@ Vue.component('editor-foro', {
856
864
  <textarea id="usereply-editor" contenteditable="true" v-model="content.msg"></textarea>
857
865
  <div id="usereply-comand" v-if="!msgCheck.length">
858
866
  <button class="button1 btn-main" v-on:click="sendMsg()">Enviar</button>
859
- <button class="button1" v-on:click="draftMsg()" v-if="state.editor === 'reply' && state.dice">Bosquejo</button>
867
+ <button class="button1" v-on:click="draftMsg()" v-if="state.editor === 'editpostdraft'">Modificar</button>
868
+ <button class="button1" v-on:click="draftMsg()" v-else-if="state.editor === 'reply' && state.dice">Bosquejo</button>
860
869
  <button class="button1" v-on:click="prevMsg()">Previsualizar</button>
861
870
  </div>
862
871
  <div v-if="state.editor === 'reply' && state.dice" id="usereply-dice">
@@ -1 +1,2 @@
1
- Vue.component("panel-control",{props:["dataElements"],data:function(){return{userId:_userdata.user_id,state:{page:0},content:{original:[],current:[]}}},computed:{validationPanel:function(){return FNR.utility.genValidation(this.content.current)},toSave:function(){let e=[];return[].forEach.call(this.content.current,(t,o)=>{t.value!==this.content.original[o].value&&e.push({name:t.name,type:t.type,value:t.value})}),e}},methods:{updateProfile:function(){this.state.page=2,FNR.user.profile.setData(this.toSave).then(e=>{if(e){let e=!1;this.toSave.map(t=>{t.name.toLowerCase().indexOf("tema")>-1&&(e=!0)}),e?(FNR.html.genNotification("Atención","Información actualizada sin inconvenientes.","fas fa-check"),FNR.user.setTheme(!0)):(FNR.html.genNotification("Atención","Información actualizada sin inconvenientes.","fas fa-check"),setTimeout(()=>{window.location.reload()},2e3))}else FNR.html.genNotification("Atención","Hubo un problema al actualizar. Dale otro intento.","fas fa-exclamation")})}},created(){FNR.user.profile.getData(JSON.parse(this.dataElements.replace(/'/g,'"'))).then(e=>{this.content.original=JSON.parse(JSON.stringify(e)),this.content.current=e,this.state.page=1})},template:'\n <section id="forum-cp" class="wiki-content is-dramatic">\n <div class="is-content">\n <h2>Editar perfil</h2>\n <hr />\n <p>En esta página podrás editar tu perfil de usuario. En caso de que quieras editar tu contraseña, por favor dirígete a <a target="_blank" title="Ir a «Cambiar contraseña»" v-bind:href="\'/profile?change_password=Cambiar+tu+contraseña&mode=editprofile&page_profil=informations&user_id=\' + userId">este enlace</a>.</p>\n <p>Si estás experimentando problemas con el foro, pulsa <a title="Reiniciar cache" onclick="localStorage.clear(); window.location.replace(\'/\')">este otro</a>. Puede que los solucione.</p>\n </div>\n <separador-foro />\n <template v-if="state.page === 0">\n <cargando-foro data-text="Cargando utilidad…"></cargando-foro>\n </template>\n <template v-else-if="state.page === 1">\n <aviso-foro v-show="validationPanel !== \'\'">\n <ul v-html="validationPanel"></ul>\n </aviso-foro>\n <ul class="forum-fieldlist no-style">\n <li v-for="item in content.current">\n <campo-foro v-bind:data-name="item.name">\n <input v-model="item.value" v-if="item.type === \'input\' || item.type === \'avatar\'" type="text"/>\n <textarea v-model="item.value" v-else-if="item.type === \'textarea\'"></textarea>\n <div v-else-if="item.type === \'select\'" class="select-container">\n <select v-model="item.value">\n <option v-bind:value="option.value" v-for="option in item.options">{{ option.name }}</option>\n </select>\n </div>\n </campo-foro>\n </li>\n </ul>\n <div id="usereply-comand" v-if="toSave.length && validationPanel === \'\'">\n <button class="button1 btn-main" v-on:click="updateProfile()" title="Actualizar perfil">Actualizar</button>\n </div>\n </template>\n <template v-if="state.page === 2">\n <cargando-foro data-text="Actualizando información…"></cargando-foro>\n </template>\n </section>\n '}),Vue.component("lista-bosquejos",{data:function(){return{state:{page:0},content:{drafts:[]}}},created(){FNR.user.profile.getDrafts().then(e=>{this.state.page=1,this.content.drafts=e})},template:'\n <section class="wiki-content is-dramatic">\n <div class="is-content">\n <h2>Lista de bosquejos</h2>\n <hr />\n <p>En esta página tienes tu lista de tus bosquejos. No es una lista completa, tan solo muestra la primera página. Si deseas ver más bosquejos, aligera la lista publicándolos.</p>\n </div>\n <separador-foro />\n <template v-if="state.page === 0">\n <cargando-foro data-text="Cargando utilidad…"></cargando-foro>\n </template>\n <template v-else-if="state.page === 1">\n <section id="forum-drafts" class="forum-topiclist">\n <lista-temas-cabecera data-elements="[\'Tema\', \'Información\']"></lista-temas-cabecera>\n <ul class="topiclist-topics no-style">\n <template v-if="content.drafts === false">\n <li class="is-not-lastpost not-status">\n <h6>No tienes bosquejos guardados</h6>\n </li>\n </template>\n <template v-else>\n <li class="row is-not-lastpost not-status" v-for="draft in content.drafts">\n <temas-foro data-type="draft" data-mode="" v-bind:data-url="draft.topic.url" v-bind:data-title="draft.topic.name" v-bind:data-replies="draft.info.location" v-bind:data-views="draft.info.date" v-bind:data-quick="draft.modify" />\n </li>\n </template>\n </ul>\n </section>\n </template>\n </section>\n '}),Vue.component("editor-foro",{data:function(){return{state:{page:0,editor:"none",admin:1===_userdata.user_level,guest:0===_userdata.session_logged_in,dice:document.querySelectorAll("#list_dice").length},colors:FNR.forum.getColors(),content:{username:"",subject:"",msg:"",type:-1,options:[]},users:{current:"",options:[],selected:[],selector:!0},groups:{type:-1,options:[]},dice:{options:[],current:[]}}},computed:{msgCheck:function(){let e="";return this.state.guest&&(this.content.username.trim().length<4||this.content.username.trim().length>60)&&(e+="<li>Escribe un nombre de usuario de tamaño adecuado.</li>"),"post"===this.state.editor&&0===this.users.selected.length&&-1===this.groups.type&&(e+="<li>Selecciona al menos un usuario.</li>"),this.state.admin&&"post"===this.state.editor&&0===this.users.selected.length&&-1===this.groups.type&&(e+="<li>Selecciona un grupo.</li>"),"newtopic"!==this.state.editor&&"post"!==this.state.editor||(this.content.subject.trim().length<4||this.content.subject.trim().length>60)&&(e+="<li>Escribe un titulo de tamaño adecuado.</li>"),this.content.msg.trim().length<10&&(e+="<li>Escribe un mensaje lo suficientemente largo.</li>"),e},sortedCharacters:function(){return Object.keys(this.users.options).length?this.users.options.map(e=>e.user).filter(e=>-1===this.users.selected.indexOf(e)).filter(e=>e.toLowerCase().indexOf(this.users.current.toLowerCase())>-1).sort((e,t)=>e<t?-1:e>t?1:0):[]},sortedEditCharacters:function(){return this.users.selected.sort((e,t)=>e<t?-1:e>t?1:0)}},methods:{insertSomething:function(e,t){const o=document.getElementById("usereply-editor"),n=e.replace(/-jump-/g,"\n"),r=t.replace(/-jump-/g,"\n");if(document.selection)o.focus(),document.selection.createRange().text=n+document.selection.createRange().text+r;else if(o.selectionStart||"0"==o.selectionStart){const e=o.selectionStart,t=o.selectionEnd,i=t+n.length+r.length;o.value=o.value.substring(0,e)+n+o.value.substring(e,t)+r+o.value.substring(t,o.value.length),o.setSelectionRange(i,i)}this.content.msg=o.value},newDice:function(){this.dice.current.push({dice:-1,number:0})},addCharacter:function(e){this.users.selected.push(e),this.users.selector=!1,this.users.current="",setTimeout(()=>{this.users.selector=!0},250)},deleteCharacter:function(e){this.users.current="",this.users.selected.splice(e,1)},changeGroup:function(){this.users.selected=[],this.users.current=""},parseMsg:function(){window.forumParsing=!0,document.querySelector("#forum-realreply > form .sceditor-container > textarea")?document.querySelector("#forum-realreply > form .sceditor-container > textarea").value=this.content.msg.replace(/#per/g,this.colors[this.colors.length-1].hex):document.querySelector("#forum-realreply > form textarea#text_editor_textarea").value=this.content.msg.replace(/#per/g,this.colors[this.colors.length-1].hex),"reply"===this.state.editor&&(!1!==FNR.cache.getData("post"+document.post.t.value+"-"+_userdata.user_id)&&-1!==_userdata.user_id&&FNR.cache.delData("post"+document.post.t.value+"-"+_userdata.user_id),[].forEach.call(document.querySelectorAll("#forum-realreply > form #list_dice tr"),(e,t)=>{0!==t&&e.remove()}),this.state.dice&&(document.querySelector("#forum-realreply > form #list_dice tr td").insertAdjacentHTML("beforeend",'<span id="dice_to_del"></span>'),this.dice.current.filter(e=>-1!==e.dice).filter(e=>0!==parseFloat(e.number)&&!isNaN(parseFloat(e.number))).forEach(e=>{add_dice(document.querySelectorAll("#list_dice tr").length,e.dice,e.number)}))),this.state.guest&&(this.content.subject.trim().length>4||this.content.subject.trim().length<60)&&(document.querySelector('#forum-realreply > form input[name="username"]').value=this.content.username),"post"===this.state.editor&&this.users.selected.length>0&&-1===this.groups.type&&this.users.selected.forEach(e=>{document.querySelector("#forum-realreply > form #add_username").click(),document.querySelectorAll('#forum-realreply > form input[name="username[]"]')[document.querySelectorAll('#forum-realreply > form input[name="username[]"]').length-2].value=e}),this.state.admin&&("post"===this.state.editor?0===this.users.selected.length&&-1!==this.groups.type&&(document.querySelector('#forum-realreply > form select[name="usergroup"]').value=this.groups.type):"newtopic"===this.state.editor&&-1!==this.content.type&&(document.querySelector('#forum-realreply > form input[type="radio"][name="topictype"][value="'+this.content.type+'"]').checked=!0)),"newtopic"!==this.state.editor&&"post"!==this.state.editor||(this.content.subject.trim().length>4||this.content.subject.trim().length<60)&&(document.querySelector('#forum-realreply > form input[name="subject"]').value=this.content.subject.trim())},draftMsg:function(){this.parseMsg(),document.querySelector('#forum-realreply > form input[value="Bosquejo"], #forum-realreply input[value="Modificar"]').click()},sendMsg:function(){this.parseMsg(),document.querySelector('#forum-realreply > form input[value="Enviar"], #forum-realreply input[value="Publicar"]').click()},prevMsg:function(){this.parseMsg(),document.querySelector('#forum-realreply > form input[value="Previsualización"], #forum-realreply input[value="Previsualizar"]').click()}},created(){const e=()=>{if(document.querySelector('#forum-realreply > form input[name="username"]')&&(this.content.username=document.querySelector('#forum-realreply > form input[name="username"]').value),document.querySelector("#forum-realreply > form #text_editor_textarea")){let e=document.querySelector("#forum-realreply > form #text_editor_textarea").value;this.content.msg=e}if(document.querySelector('#forum-realreply > form input[name="subject"]')){let e=document.querySelector('#forum-realreply input[name="subject"]').value;document.querySelector('#forum-realreply select[name="usergroup"]')&&""!==document.querySelector('#forum-realreply select[name="usergroup"]').value?this.groups.type=document.querySelector('#forum-realreply select[name="usergroup"]').value:document.querySelector('#forum-realreply input[name="username[]"]')&&[].forEach.call(document.querySelectorAll('#forum-realreply input[name="username[]"]'),e=>{""!==e.value&&this.users.selected.push(e.value)}),this.content.subject=e}document.querySelector("#forum-realreply > form #list_dice")&&([].forEach.call(document.querySelectorAll("#forum-realreply > form #list_dice #post_dice option"),e=>{""!==e.value&&this.dice.options.push({value:e.value,content:e.textContent})}),1===document.querySelectorAll("#forum-realreply > form #list_dice tr").length?this.dice.current.push({dice:-1,number:0}):[].forEach.call(document.querySelectorAll("#forum-realreply > form #list_dice tr"),e=>{""!==e.querySelector("select").value&&this.dice.current.push({dice:parseFloat(e.querySelector("select").value),number:parseFloat(e.querySelector("input").value)})})),4===document.querySelectorAll('#forum-realreply > form .panel.row3 input[type="radio"]').length&&[].forEach.call(document.querySelectorAll('#forum-realreply > form .panel.row3 input[type="radio"]'),e=>{this.content.options.push({value:e.value,name:e.parentElement.textContent.trim()}),e.checked&&(this.content.type=e.value)}),document.querySelector('#forum-realreply > form select[name="usergroup"]')&&[].forEach.call(document.querySelectorAll('#forum-realreply > form select[name="usergroup"] option'),e=>{""!==e.value&&this.groups.options.push({value:e.value,name:e.textContent})}),""===this.content.msg&&"reply"===this.state.editor&&!1!==FNR.cache.getData("post"+document.post.t.value+"-"+_userdata.user_id)&&-1!==_userdata.user_id&&(this.content.msg=FNR.cache.getData("post"+document.post.t.value+"-"+_userdata.user_id)),this.state.page=1,document.onkeydown=(e=>{const t=document.getElementById("usereply-editor");document.activeElement===t&&(e.ctrlKey&&"b"===e.key?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b]","[/b]")):e.ctrlKey&&"i"===e.key?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[i]","[/i]")):e.ctrlKey&&"s"===e.key?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[strike]","[/strike]")):e.ctrlKey&&"u"===e.key?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[u]","[/u]")):"Home"===e.key?(e.preventDefault(),e.stopPropagation(),t.setSelectionRange(0,0)):"End"===e.key?(e.preventDefault(),e.stopPropagation(),t.setSelectionRange(t.value.length,t.value.length)):e.ctrlKey&&"1"===e.key&&"undefined"!==this.colors[0]&&this.colors.length-1!=0?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[0].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"!"===e.key&&"undefined"!==this.colors[0]&&this.colors.length-1!=0?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[0].hex+"]","[/color][/b]")):e.ctrlKey&&"2"===e.key&&"undefined"!==this.colors[1]&&this.colors.length-1!=1?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[1].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&'"'===e.key&&"undefined"!==this.colors[1]&&this.colors.length-1!=1?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[1].hex+"]","[/color][/b]")):e.ctrlKey&&"3"===e.key&&"undefined"!==this.colors[2]&&this.colors.length-1!=2?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[2].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"·"===e.key&&"undefined"!==this.colors[2]&&this.colors.length-1!=2?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[2].hex+"]","[/color][/b]")):e.ctrlKey&&"4"===e.key&&"undefined"!==this.colors[3]&&this.colors.length-1!=3?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[3].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"$"===e.key&&"undefined"!==this.colors[3]&&this.colors.length-1!=3?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[3].hex+"]","[/color][/b]")):e.ctrlKey&&"5"===e.key&&"undefined"!==this.colors[4]&&this.colors.length-1!=4?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[4].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"%"===e.key&&"undefined"!==this.colors[4]&&this.colors.length-1!=4?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[4].hex+"]","[/color][/b]")):e.ctrlKey&&"6"===e.key&&"undefined"!==this.colors[5]&&this.colors.length-1!=5?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[5].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"&"===e.key&&"undefined"!==this.colors[5]&&this.colors.length-1!=5?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[5].hex+"]","[/color][/b]")):e.ctrlKey&&"7"===e.key&&"undefined"!==this.colors[6]&&this.colors.length-1!=6?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[6].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"/"===e.key&&"undefined"!==this.colors[6]&&this.colors.length-1!=6?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[6].hex+"]","[/color][/b]")):e.ctrlKey&&"8"===e.key&&"undefined"!==this.colors[7]&&this.colors.length-1!=7?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[7].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"("===e.key&&"undefined"!==this.colors[7]&&this.colors.length-1!=7?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[7].hex+"]","[/color][/b]")):e.ctrlKey&&"9"===e.key&&"undefined"!==this.colors[8]&&this.colors.length-1!=8?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[8].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&")"===e.key&&"undefined"!==this.colors[8]&&this.colors.length-1!=8?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[8].hex+"]","[/color][/b]")):e.ctrlKey&&"º"===e.key&&void 0!==forumConfig.skinOptions.customColour?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color=#per]","[/color]")):e.ctrlKey&&e.shiftKey&&"ª"===e.key&&void 0!==forumConfig.skinOptions.customColour?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color=#per]","[/color][/b]")):e.ctrlKey&&e.shiftKey&&"Enter"===e.key&&!this.msgCheck.length?(e.preventDefault(),e.stopPropagation(),this.prevMsg()):e.ctrlKey&&e.altKey&&"Enter"===e.key&&"reply"===this.state.editor&&this.state.dice&&!this.msgCheck.length?(e.preventDefault(),e.stopPropagation(),this.draftMsg()):e.ctrlKey&&"Enter"===e.key&&!this.msgCheck.length&&(e.preventDefault(),e.stopPropagation(),this.sendMsg()))}),setTimeout(()=>{FNR.html.genDropeable()},250)},t=()=>{"post"===this.state.editor?FNR.forum.getMembers(!0).then(t=>{this.users.options=t,e()}):e()};void 0!==document.post&&(this.state.editor=document.post.mode.value),this.state.guest?setTimeout(()=>{e()},2e3):void 0===forumConfig.skinOptions.customColour?t():FNR.user.profile.getData([{name:forumConfig.skinOptions.customColour,type:"input"}]).then(e=>{this.colors.push({hex:e[0].value,name:"Personal"}),t()}),this.state.replies=document.querySelectorAll(".forum-otherposts > *").length||document.querySelector('input[type="submit"][value="Modificar"]')?"Varios":""},mounted(){insertIntoEditor=(e=>{try{this.insertSomething(" "+e+" ","")}catch(e){console&&console.error(e)}}),$("#quickEmojInternal").on("load",function(){$("#quickEmojInternal").contents().find("head").append("<style>body{padding: 1rem!important}</style>")});let e="";document.querySelector('p[style="color: red;"]')&&(e=document.querySelector('p[style="color: red;"]').textContent,"preview"===document.querySelector('p[style="color: red;"]').parentElement.parentElement.id?document.querySelector('p[style="color: red;"]').parentElement.parentElement.remove():document.querySelector('p[style="color: red;"]').remove()),window.forumParsing=!1,""!==e&&FNR.html.genNotification("Atención","Hubo un problema al enviar. Inténtalo de nuevo.","fas fa-exclamation"),-1!==_userdata.user_id&&"reply"===this.state.editor&&window.addEventListener("beforeunload",()=>{!1===forumParsing&&(""===document.querySelector("#usereply-editor").value&&!1!==FNR.cache.getData("post"+document.post.t.value+"-"+_userdata.user_id)||""!==document.querySelector("#usereply-editor").value)&&FNR.cache.setData("post"+document.post.t.value+"-"+_userdata.user_id,document.querySelector("#usereply-editor").value,-1)},!1)},template:'\n <div id="forum-usereply">\n <template v-if="state.page === 0">\n <cargando-foro data-text="Cargando utilidad…"></cargando-foro>\n </template>\n <template v-else-if="state.page === 1">\n <aviso-foro v-show="msgCheck.length">\n <ul v-html="msgCheck"></ul>\n </aviso-foro>\n <ul id="usereply-extra" class="forum-fieldlist no-style" v-if="state.editor !== \'reply\'">\n <template v-if="state.guest">\n <li>\n <campo-foro data-name="Nombre de usuario">\n <input type="text" v-model="content.username" placeholder="Escribe tu nombre de usuario." />\n </campo-foro>\n </li>\n </template>\n <template v-if="state.editor === \'post\'">\n <li>\n <campo-foro data-name="Usuarios">\n <div class="character-selector">\n <input type="text" v-model="users.current" placeholder="Escribe el nombre de un usuario." v-bind:disabled="groups.type !== -1" />\n <ul class="no-style selector-list" v-if="users.selector && sortedCharacters.length > 0">\n <li v-for="(character, index) in sortedCharacters" v-on:click="addCharacter(character)" v-bind:title="\'Seleccionar \' + character">{{ character }}<i class="fas fa-plus"></i></li>\n </ul>\n </div>\n <ul v-if="sortedEditCharacters.length" class="no-style character-list">\n <li v-for="(character, index) in sortedEditCharacters" v-on:click="deleteCharacter(index)" v-bind:title="\'Quitar \' + character"><i class="fas fa-times"></i> {{ character }}</li>\n </ul>\n </campo-foro>\n </li>\n </template>\n <template v-if="state.admin">\n <template v-if="state.editor === \'post\'">\n <li>\n <campo-foro data-name="Grupo">\n <div class="select-container">\n <select v-model="groups.type" v-on:change="changeGroup()" v-bind:disabled="users.selected.length !== 0">\n <option value="-1" hidden>Selecciona un grupo.</option>\n <option v-for="option in groups.options" v-bind:value="option.value">{{ option.name }}</option>\n </select>\n </div>\n </campo-foro>\n </li>\n </template>\n <template v-else-if="state.editor === \'newtopic\' && content.type !== -1">\n <li>\n <campo-foro data-name="Tipo de tema">\n <div class="select-container">\n <select v-model="content.type">\n <option value="-1" hidden>Selecciona una opción.</option>\n <option v-for="option in content.options" v-bind:value="option.value">{{ option.name }}</option>\n </select>\n </div>\n </campo-foro>\n </li>\n </template>\n </template>\n <template v-if="state.editor === \'newtopic\' || state.editor === \'post\'">\n <li>\n <campo-foro data-name="Título">\n <input type="text" v-model="content.subject" placeholder="Escribe el título." />\n </campo-foro>\n </li>\n </template>\n </ul>\n <div id="usereply-top" class="usereply-header">\n <h3>Editor de texto<small>Ver guía de <a href="https://www.bbcode.org/reference.php" target="_blank">BBCode</a>.</small></h3>\n <div id="usereply-buttons">\n <ul class="is-hidden-mobile">\n <li id="bold-button">\n <button class="usereply-button" v-on:click="insertSomething(\'[b]\', \'[/b]\')" title="Negrita">\n <i class="fas fa-bold"></i>\n </button>\n </li>\n <li id="italic-button">\n <button class="usereply-button" v-on:click="insertSomething(\'[i]\', \'[/i]\')" title="Cursiva">\n <i class="fas fa-italic"></i>\n </button>\n </li>\n <li id="underline-button">\n <button class="usereply-button" v-on:click="insertSomething(\'[u]\', \'[/u]\')" title="Subrayado">\n <i class="fas fa-underline"></i>\n </button>\n </li>\n <li id="strike-button">\n <button class="usereply-button" v-on:click="insertSomething(\'[strike]\', \'[/strike]\')" title="Tachado">\n <i class="fas fa-strikethrough"></i>\n </button>\n </li>\n </ul>\n <ul>\n <li id="colour-button">\n <div class="dropdown upper-controls is-dropeable is-right">\n <div class="dropdown-trigger">\n <button class="usereply-button" title="Color">\n <i class="fas fa-palette"></i>\n </button>\n </div>\n <div class="dropdown-menu" role="menu">\n <div id="colour-list" class="dropdown-content">\n <div v-for="color in colors" class="usereply-option" v-bind:style="\'color:\' + color.hex" v-on:click="insertSomething(\'[color=\' + color.hex + \']\', \'[/color]\')">{{ color.name }}</div>\n </div>\n </div>\n </div>\n </li>\n <li id="emoji-button">\n <div class="dropdown upper-controls is-dropeable is-right">\n <div class="dropdown-trigger">\n <button class="usereply-button" title="Emoticono">\n <i class="fas fa-smile"></i>\n </button>\n </div>\n <div class="dropdown-menu" role="menu">\n <div id="emoji-list" class="dropdown-content">\n <iframe id="quickEmojInternal" marginheight="0" marginwidth="0" name="smilies" scrolling="auto" src="/smilies?mode=smilies_frame"></iframe>\n </div>\n </div>\n </div>\n </li>\n <li id="align-button">\n <div class="dropdown upper-controls is-dropeable is-right">\n <div class="dropdown-trigger">\n <button class="usereply-button" title="Alinear">\n <i class="fas fa-align-justify"></i>\n </button>\n </div>\n <div class="dropdown-menu" role="menu">\n <div id="align-list" class="dropdown-content">\n <div class="usereply-option" v-on:click="insertSomething(\'[left]\', \'[/left]\')">Izquierda</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[center]\', \'[/center]\')">Centro</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[right]\', \'[/right]\')">Derecha</div>\n </div>\n </div>\n </div>\n </li>\n <li id="toolbox-button">\n <div class="dropdown upper-controls is-dropeable is-right">\n <div class="dropdown-trigger">\n <button class="usereply-button" title="Otros">\n <i class="fas fa-toolbox"></i>\n </button>\n </div>\n <div class="dropdown-menu" role="menu">\n <div id="toolbox-list" class="dropdown-content">\n <div class="usereply-option" v-on:click="insertSomething(\'[url=\', \'][/url]\')">Enlace</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[img]\', \'[/img]\')">Imagen</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[spoiler]\', \'[/spoiler]\')">Spoiler</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[code]\', \'[/code]\')">Code</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[quote]\', \'[/quote]\')">Cita</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[hide]\', \'[/hide]\')">Ocultar</div>\n </div>\n </div>\n </div>\n </li>\n </ul>\n </div>\n </div>\n <textarea id="usereply-editor" contenteditable="true" v-model="content.msg"></textarea>\n <div id="usereply-comand" v-if="!msgCheck.length">\n <button class="button1 btn-main" v-on:click="sendMsg()">Enviar</button>\n <button class="button1" v-on:click="draftMsg()" v-if="state.editor === \'reply\' && state.dice">Bosquejo</button>\n <button class="button1" v-on:click="prevMsg()">Previsualizar</button>\n </div>\n <div v-if="state.editor === \'reply\' && state.dice" id="usereply-dice">\n <div class="usereply-header">\n <h3>Tirar dados</h3>\n </div>\n <ul>\n <li v-for="(item, index) in dice.current">\n <div class="select-container">\n <select v-model="item.dice">\n <option value="-1" selected hidden>Selec. un dado</option>\n <option v-for="option in dice.options" v-bind:value="option.value">{{ option.content }}</option>\n </select>\n </div>\n <input type="number" v-model="item.number" />\n <button v-on:click="newDice()" v-if="(index + 1) === dice.current.length" class="dice-more">\n <i class="fas fa-plus"></i>\n </button>\n <div v-else class="dice-more"></div>\n </li>\n </ul>\n </div>\n </template>\n </div>\n '});
1
+ Vue.component("panel-control",{props:["dataElements"],data:function(){return{userId:_userdata.user_id,state:{page:0},content:{original:[],current:[]}}},computed:{validationPanel:function(){return FNR.utility.genValidation(this.content.current)},toSave:function(){let e=[];return[].forEach.call(this.content.current,(t,o)=>{t.value!==this.content.original[o].value&&e.push({name:t.name,type:t.type,value:t.value})}),e}},methods:{updateProfile:function(){this.state.page=2,FNR.user.profile.setData(this.toSave).then(e=>{if(e){let e=!1;this.toSave.map(t=>{t.name.toLowerCase().indexOf("tema")>-1&&(e=!0)}),e?(FNR.html.genNotification("Atención","Información actualizada sin inconvenientes.","fas fa-check"),FNR.user.setTheme(!0)):(FNR.html.genNotification("Atención","Información actualizada sin inconvenientes.","fas fa-check"),setTimeout(()=>{window.location.reload()},2e3))}else FNR.html.genNotification("Atención","Hubo un problema al actualizar. Dale otro intento.","fas fa-exclamation")})}},created(){FNR.user.profile.getData(JSON.parse(this.dataElements.replace(/'/g,'"'))).then(e=>{this.content.original=JSON.parse(JSON.stringify(e)),this.content.current=e,this.state.page=1})},template:'\n <section id="forum-cp" class="wiki-content is-dramatic">\n <div class="is-content">\n <h2>Editar perfil</h2>\n <hr />\n <p>En esta página podrás editar tu perfil de usuario. En caso de que quieras editar tu contraseña, por favor dirígete a <a target="_blank" title="Ir a «Cambiar contraseña»" v-bind:href="\'/profile?change_password=Cambiar+tu+contraseña&mode=editprofile&page_profil=informations&user_id=\' + userId">este enlace</a>.</p>\n <p>Si estás experimentando problemas con el foro, pulsa <a title="Reiniciar cache" onclick="localStorage.clear(); window.location.replace(\'/\')">este otro</a>. Puede que los solucione.</p>\n </div>\n <separador-foro />\n <template v-if="state.page === 0">\n <cargando-foro data-text="Cargando utilidad…"></cargando-foro>\n </template>\n <template v-else-if="state.page === 1">\n <aviso-foro v-show="validationPanel !== \'\'">\n <ul v-html="validationPanel"></ul>\n </aviso-foro>\n <ul class="forum-fieldlist no-style">\n <li v-for="item in content.current">\n <campo-foro v-bind:data-name="item.name">\n <input v-model="item.value" v-if="item.type === \'input\' || item.type === \'avatar\'" type="text"/>\n <textarea v-model="item.value" v-else-if="item.type === \'textarea\'"></textarea>\n <div v-else-if="item.type === \'select\'" class="select-container">\n <select v-model="item.value">\n <option v-bind:value="option.value" v-for="option in item.options">{{ option.name }}</option>\n </select>\n </div>\n </campo-foro>\n </li>\n </ul>\n <div id="usereply-comand" v-if="toSave.length && validationPanel === \'\'">\n <button class="button1 btn-main" v-on:click="updateProfile()" title="Actualizar perfil">Actualizar</button>\n </div>\n </template>\n <template v-if="state.page === 2">\n <cargando-foro data-text="Actualizando información…"></cargando-foro>\n </template>\n </section>\n '}),Vue.component("lista-bosquejos",{data:function(){return{state:{page:0},content:{drafts:[]}}},created(){FNR.user.profile.getDrafts().then(e=>{this.state.page=1,this.content.drafts=e})},template:'\n <section class="wiki-content is-dramatic">\n <div class="is-content">\n <h2>Lista de bosquejos</h2>\n <hr />\n <p>En esta página tienes tu lista de tus bosquejos. No es una lista completa, tan solo muestra la primera página. Si deseas ver más bosquejos, aligera la lista publicándolos.</p>\n </div>\n <separador-foro />\n <template v-if="state.page === 0">\n <cargando-foro data-text="Cargando utilidad…"></cargando-foro>\n </template>\n <template v-else-if="state.page === 1">\n <section id="forum-drafts" class="forum-topiclist">\n <lista-temas-cabecera data-elements="[\'Tema\', \'Información\']"></lista-temas-cabecera>\n <ul class="topiclist-topics no-style">\n <template v-if="content.drafts === false">\n <li class="is-not-lastpost not-status">\n <h6>No tienes bosquejos guardados</h6>\n </li>\n </template>\n <template v-else>\n <li class="row is-not-lastpost not-status" v-for="draft in content.drafts">\n <temas-foro data-type="draft" data-mode="" v-bind:data-url="draft.topic.url" v-bind:data-title="draft.topic.name" v-bind:data-replies="draft.info.location" v-bind:data-views="draft.info.date" v-bind:data-quick="draft.modify" />\n </li>\n </template>\n </ul>\n </section>\n </template>\n </section>\n '}),Vue.component("editor-foro",{data:function(){return{state:{page:0,editor:"none",admin:1===_userdata.user_level,guest:0===_userdata.session_logged_in,dice:document.querySelectorAll("#list_dice").length},colors:FNR.forum.getColors(),content:{username:"",subject:"",msg:"",type:-1,options:[]},users:{current:"",options:[],selected:[],selector:!0},groups:{type:-1,options:[]},dice:{options:[],current:[]}}},computed:{msgCheck:function(){let e="";return this.state.guest&&(this.content.username.trim().length<4||this.content.username.trim().length>60)&&(e+="<li>Escribe un nombre de usuario de tamaño adecuado.</li>"),"post"===this.state.editor&&0===this.users.selected.length&&-1===this.groups.type&&(e+="<li>Selecciona al menos un usuario.</li>"),this.state.admin&&"post"===this.state.editor&&0===this.users.selected.length&&-1===this.groups.type&&(e+="<li>Selecciona un grupo.</li>"),"newtopic"!==this.state.editor&&"post"!==this.state.editor||(this.content.subject.trim().length<4||this.content.subject.trim().length>60)&&(e+="<li>Escribe un titulo de tamaño adecuado.</li>"),this.content.msg.trim().length<10&&(e+="<li>Escribe un mensaje lo suficientemente largo.</li>"),e},sortedCharacters:function(){return Object.keys(this.users.options).length?this.users.options.map(e=>e.user).filter(e=>-1===this.users.selected.indexOf(e)).filter(e=>e.toLowerCase().indexOf(this.users.current.toLowerCase())>-1).sort((e,t)=>e<t?-1:e>t?1:0):[]},sortedEditCharacters:function(){return this.users.selected.sort((e,t)=>e<t?-1:e>t?1:0)}},methods:{insertSomething:function(e,t){const o=document.getElementById("usereply-editor"),n=e.replace(/-jump-/g,"\n"),i=t.replace(/-jump-/g,"\n");if(document.selection)o.focus(),document.selection.createRange().text=n+document.selection.createRange().text+i;else if(o.selectionStart||"0"==o.selectionStart){const e=o.selectionStart,t=o.selectionEnd,r=t+n.length+i.length;o.value=o.value.substring(0,e)+n+o.value.substring(e,t)+i+o.value.substring(t,o.value.length),o.setSelectionRange(r,r)}this.content.msg=o.value},newDice:function(){this.dice.current.push({dice:-1,number:0})},addCharacter:function(e){this.users.selected.push(e),this.users.selector=!1,this.users.current="",setTimeout(()=>{this.users.selector=!0},250)},deleteCharacter:function(e){this.users.current="",this.users.selected.splice(e,1)},changeGroup:function(){this.users.selected=[],this.users.current=""},parseMsg:function(){window.forumParsing=!0,document.querySelector("#forum-realreply > form .sceditor-container > textarea")?document.querySelector("#forum-realreply > form .sceditor-container > textarea").value=this.content.msg.replace(/#per/g,this.colors[this.colors.length-1].hex):document.querySelector("#forum-realreply > form textarea#text_editor_textarea").value=this.content.msg.replace(/#per/g,this.colors[this.colors.length-1].hex),"reply"===this.state.editor&&(!1!==FNR.cache.getData("post"+document.post.t.value+"-"+_userdata.user_id)&&-1!==_userdata.user_id&&FNR.cache.delData("post"+document.post.t.value+"-"+_userdata.user_id),[].forEach.call(document.querySelectorAll("#forum-realreply > form #list_dice tr"),(e,t)=>{0!==t&&e.remove()}),this.state.dice&&(document.querySelector("#forum-realreply > form #list_dice tr td").insertAdjacentHTML("beforeend",'<span id="dice_to_del"></span>'),this.dice.current.filter(e=>-1!==e.dice).filter(e=>0!==parseFloat(e.number)&&!isNaN(parseFloat(e.number))).forEach(e=>{add_dice(document.querySelectorAll("#list_dice tr").length,e.dice,e.number)}))),this.state.guest&&(this.content.subject.trim().length>4||this.content.subject.trim().length<60)&&(document.querySelector('#forum-realreply > form input[name="username"]').value=this.content.username),"post"===this.state.editor&&this.users.selected.length>0&&-1===this.groups.type&&this.users.selected.forEach(e=>{document.querySelector("#forum-realreply > form #add_username").click(),document.querySelectorAll('#forum-realreply > form input[name="username[]"]')[document.querySelectorAll('#forum-realreply > form input[name="username[]"]').length-2].value=e}),this.state.admin&&("post"===this.state.editor?0===this.users.selected.length&&-1!==this.groups.type&&(document.querySelector('#forum-realreply > form select[name="usergroup"]').value=this.groups.type):"newtopic"===this.state.editor&&-1!==this.content.type&&(document.querySelector('#forum-realreply > form input[type="radio"][name="topictype"][value="'+this.content.type+'"]').checked=!0)),"newtopic"!==this.state.editor&&"post"!==this.state.editor||(this.content.subject.trim().length>4||this.content.subject.trim().length<60)&&(document.querySelector('#forum-realreply > form input[name="subject"]').value=this.content.subject.trim())},draftMsg:function(){this.parseMsg(),document.querySelector('#forum-realreply > form input[value="Bosquejo"], #forum-realreply input[value="Modificar"]').click()},sendMsg:function(){this.parseMsg(),document.querySelector('#forum-realreply > form input[value="Enviar"], #forum-realreply input[value="Publicar"]').click()},prevMsg:function(){this.parseMsg(),document.querySelector('#forum-realreply > form input[value="Previsualización"], #forum-realreply input[value="Previsualizar"]').click()}},created(){const e=()=>{if(document.querySelector('#forum-realreply > form input[name="username"]')&&(this.content.username=document.querySelector('#forum-realreply > form input[name="username"]').value),document.querySelector("#forum-realreply > form #text_editor_textarea")){let e=document.querySelector("#forum-realreply > form #text_editor_textarea").value;this.content.msg=e}if(document.querySelector('#forum-realreply > form input[name="subject"]')){let e=document.querySelector('#forum-realreply input[name="subject"]').value;document.querySelector('#forum-realreply select[name="usergroup"]')&&""!==document.querySelector('#forum-realreply select[name="usergroup"]').value?this.groups.type=document.querySelector('#forum-realreply select[name="usergroup"]').value:document.querySelector('#forum-realreply input[name="username[]"]')&&[].forEach.call(document.querySelectorAll('#forum-realreply input[name="username[]"]'),e=>{""!==e.value&&this.users.selected.push(e.value)}),this.content.subject=e}document.querySelector("#forum-realreply > form #list_dice")&&([].forEach.call(document.querySelectorAll("#forum-realreply > form #list_dice #post_dice option"),e=>{""!==e.value&&this.dice.options.push({value:e.value,content:e.textContent})}),1===document.querySelectorAll("#forum-realreply > form #list_dice tr").length?this.dice.current.push({dice:-1,number:0}):[].forEach.call(document.querySelectorAll("#forum-realreply > form #list_dice tr"),e=>{""!==e.querySelector("select").value&&this.dice.current.push({dice:parseFloat(e.querySelector("select").value),number:parseFloat(e.querySelector("input").value)})})),4===document.querySelectorAll('#forum-realreply > form .panel.row3 input[type="radio"]').length&&[].forEach.call(document.querySelectorAll('#forum-realreply > form .panel.row3 input[type="radio"]'),e=>{this.content.options.push({value:e.value,name:e.parentElement.textContent.trim()}),e.checked&&(this.content.type=e.value)}),document.querySelector('#forum-realreply > form select[name="usergroup"]')&&[].forEach.call(document.querySelectorAll('#forum-realreply > form select[name="usergroup"] option'),e=>{""!==e.value&&this.groups.options.push({value:e.value,name:e.textContent})}),""===this.content.msg&&"reply"===this.state.editor&&!1!==FNR.cache.getData("post"+document.post.t.value+"-"+_userdata.user_id)&&-1!==_userdata.user_id&&(this.content.msg=FNR.cache.getData("post"+document.post.t.value+"-"+_userdata.user_id)),this.state.page=1,document.onkeydown=(e=>{const t=document.getElementById("usereply-editor");document.activeElement===t&&(e.ctrlKey&&"b"===e.key?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b]","[/b]")):e.ctrlKey&&"i"===e.key?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[i]","[/i]")):e.ctrlKey&&"s"===e.key?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[strike]","[/strike]")):e.ctrlKey&&"u"===e.key?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[u]","[/u]")):"Home"===e.key?(e.preventDefault(),e.stopPropagation(),t.setSelectionRange(0,0)):"End"===e.key?(e.preventDefault(),e.stopPropagation(),t.setSelectionRange(t.value.length,t.value.length)):e.ctrlKey&&"1"===e.key&&"undefined"!==this.colors[0]&&this.colors.length-1!=0?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[0].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"!"===e.key&&"undefined"!==this.colors[0]&&this.colors.length-1!=0?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[0].hex+"]","[/color][/b]")):e.ctrlKey&&"2"===e.key&&"undefined"!==this.colors[1]&&this.colors.length-1!=1?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[1].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&'"'===e.key&&"undefined"!==this.colors[1]&&this.colors.length-1!=1?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[1].hex+"]","[/color][/b]")):e.ctrlKey&&"3"===e.key&&"undefined"!==this.colors[2]&&this.colors.length-1!=2?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[2].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"·"===e.key&&"undefined"!==this.colors[2]&&this.colors.length-1!=2?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[2].hex+"]","[/color][/b]")):e.ctrlKey&&"4"===e.key&&"undefined"!==this.colors[3]&&this.colors.length-1!=3?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[3].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"$"===e.key&&"undefined"!==this.colors[3]&&this.colors.length-1!=3?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[3].hex+"]","[/color][/b]")):e.ctrlKey&&"5"===e.key&&"undefined"!==this.colors[4]&&this.colors.length-1!=4?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[4].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"%"===e.key&&"undefined"!==this.colors[4]&&this.colors.length-1!=4?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[4].hex+"]","[/color][/b]")):e.ctrlKey&&"6"===e.key&&"undefined"!==this.colors[5]&&this.colors.length-1!=5?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[5].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"&"===e.key&&"undefined"!==this.colors[5]&&this.colors.length-1!=5?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[5].hex+"]","[/color][/b]")):e.ctrlKey&&"7"===e.key&&"undefined"!==this.colors[6]&&this.colors.length-1!=6?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[6].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"/"===e.key&&"undefined"!==this.colors[6]&&this.colors.length-1!=6?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[6].hex+"]","[/color][/b]")):e.ctrlKey&&"8"===e.key&&"undefined"!==this.colors[7]&&this.colors.length-1!=7?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[7].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&"("===e.key&&"undefined"!==this.colors[7]&&this.colors.length-1!=7?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[7].hex+"]","[/color][/b]")):e.ctrlKey&&"9"===e.key&&"undefined"!==this.colors[8]&&this.colors.length-1!=8?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color="+this.colors[8].hex+"]","[/color]")):e.ctrlKey&&e.shiftKey&&")"===e.key&&"undefined"!==this.colors[8]&&this.colors.length-1!=8?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color="+this.colors[8].hex+"]","[/color][/b]")):e.ctrlKey&&"º"===e.key&&void 0!==forumConfig.skinOptions.customColour?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[color=#per]","[/color]")):e.ctrlKey&&e.shiftKey&&"ª"===e.key&&void 0!==forumConfig.skinOptions.customColour?(e.preventDefault(),e.stopPropagation(),this.insertSomething("[b][color=#per]","[/color][/b]")):e.ctrlKey&&e.shiftKey&&"Enter"===e.key&&!this.msgCheck.length?(e.preventDefault(),e.stopPropagation(),this.prevMsg()):e.ctrlKey&&e.altKey&&"Enter"===e.key&&"reply"===this.state.editor&&this.state.dice&&!this.msgCheck.length?(e.preventDefault(),e.stopPropagation(),this.draftMsg()):e.ctrlKey&&"Enter"===e.key&&!this.msgCheck.length&&(e.preventDefault(),e.stopPropagation(),this.sendMsg()))}),setTimeout(()=>{FNR.html.genDropeable()},250)},t=()=>{"post"===this.state.editor?FNR.forum.getMembers(!0).then(t=>{this.users.options=t,e()}):e()};void 0!==document.post&&("editpost"===document.post.mode.value?void 0!==document.post.modif_topic_title?this.state.editor="newtopic":this.state.editor="reply":this.state.editor=document.post.mode.value),this.state.guest?setTimeout(()=>{e()},2e3):void 0===forumConfig.skinOptions.customColour?t():FNR.user.profile.getData([{name:forumConfig.skinOptions.customColour,type:"input"}]).then(e=>{this.colors.push({hex:e[0].value,name:"Personal"}),t()}),this.state.replies=document.querySelectorAll(".forum-otherposts > *").length||document.querySelector('input[type="submit"][value="Modificar"]')?"Varios":""},mounted(){insertIntoEditor=(e=>{try{this.insertSomething(" "+e+" ","")}catch(e){console&&console.error(e)}}),$("#quickEmojInternal").on("load",function(){$("#quickEmojInternal").contents().find("head").append("<style>body{padding: 1rem!important}</style>")});let e="";document.querySelector('p[style="color: red;"]')&&(e=document.querySelector('p[style="color: red;"]').textContent,"preview"===document.querySelector('p[style="color: red;"]').parentElement.parentElement.id?document.querySelector('p[style="color: red;"]').parentElement.parentElement.remove():document.querySelector('p[style="color: red;"]').remove()),window.forumParsing=!1,""!==e&&FNR.html.genNotification("Atención","Hubo un problema al enviar. Inténtalo de nuevo.","fas fa-exclamation"),-1!==_userdata.user_id&&"reply"===this.state.editor&&window.addEventListener("beforeunload",()=>{!1===forumParsing&&(""===document.querySelector("#usereply-editor").value&&!1!==FNR.cache.getData("post"+document.post.t.value+"-"+_userdata.user_id)||""!==document.querySelector("#usereply-editor").value)&&FNR.cache.setData("post"+document.post.t.value+"-"+_userdata.user_id,document.querySelector("#usereply-editor").value,-1)},!1)},
2
+ template:'\n <div id="forum-usereply">\n <template v-if="state.page === 0">\n <cargando-foro data-text="Cargando utilidad…"></cargando-foro>\n </template>\n <template v-else-if="state.page === 1">\n <aviso-foro v-show="msgCheck.length">\n <ul v-html="msgCheck"></ul>\n </aviso-foro>\n <ul id="usereply-extra" class="forum-fieldlist no-style" v-if="state.editor !== \'reply\'">\n <template v-if="state.guest">\n <li>\n <campo-foro data-name="Nombre de usuario">\n <input type="text" v-model="content.username" placeholder="Escribe tu nombre de usuario." />\n </campo-foro>\n </li>\n </template>\n <template v-if="state.editor === \'post\'">\n <li>\n <campo-foro data-name="Usuarios">\n <div class="character-selector">\n <input type="text" v-model="users.current" placeholder="Escribe el nombre de un usuario." v-bind:disabled="groups.type !== -1" />\n <ul class="no-style selector-list" v-if="users.selector && sortedCharacters.length > 0">\n <li v-for="(character, index) in sortedCharacters" v-on:click="addCharacter(character)" v-bind:title="\'Seleccionar \' + character">{{ character }}<i class="fas fa-plus"></i></li>\n </ul>\n </div>\n <ul v-if="sortedEditCharacters.length" class="no-style character-list">\n <li v-for="(character, index) in sortedEditCharacters" v-on:click="deleteCharacter(index)" v-bind:title="\'Quitar \' + character"><i class="fas fa-times"></i> {{ character }}</li>\n </ul>\n </campo-foro>\n </li>\n </template>\n <template v-if="state.admin">\n <template v-if="state.editor === \'post\'">\n <li>\n <campo-foro data-name="Grupo">\n <div class="select-container">\n <select v-model="groups.type" v-on:change="changeGroup()" v-bind:disabled="users.selected.length !== 0">\n <option value="-1" hidden>Selecciona un grupo.</option>\n <option v-for="option in groups.options" v-bind:value="option.value">{{ option.name }}</option>\n </select>\n </div>\n </campo-foro>\n </li>\n </template>\n <template v-else-if="state.editor === \'newtopic\' && content.type !== -1">\n <li>\n <campo-foro data-name="Tipo de tema">\n <div class="select-container">\n <select v-model="content.type">\n <option value="-1" hidden>Selecciona una opción.</option>\n <option v-for="option in content.options" v-bind:value="option.value">{{ option.name }}</option>\n </select>\n </div>\n </campo-foro>\n </li>\n </template>\n </template>\n <template v-if="state.editor === \'newtopic\' || state.editor === \'post\'">\n <li>\n <campo-foro data-name="Título">\n <input type="text" v-model="content.subject" placeholder="Escribe el título." />\n </campo-foro>\n </li>\n </template>\n </ul>\n <div id="usereply-top" class="usereply-header">\n <h3>Editor de texto<small>Ver guía de <a href="https://www.bbcode.org/reference.php" target="_blank">BBCode</a>.</small></h3>\n <div id="usereply-buttons">\n <ul class="is-hidden-mobile">\n <li id="bold-button">\n <button class="usereply-button" v-on:click="insertSomething(\'[b]\', \'[/b]\')" title="Negrita">\n <i class="fas fa-bold"></i>\n </button>\n </li>\n <li id="italic-button">\n <button class="usereply-button" v-on:click="insertSomething(\'[i]\', \'[/i]\')" title="Cursiva">\n <i class="fas fa-italic"></i>\n </button>\n </li>\n <li id="underline-button">\n <button class="usereply-button" v-on:click="insertSomething(\'[u]\', \'[/u]\')" title="Subrayado">\n <i class="fas fa-underline"></i>\n </button>\n </li>\n <li id="strike-button">\n <button class="usereply-button" v-on:click="insertSomething(\'[strike]\', \'[/strike]\')" title="Tachado">\n <i class="fas fa-strikethrough"></i>\n </button>\n </li>\n </ul>\n <ul>\n <li id="colour-button">\n <div class="dropdown upper-controls is-dropeable is-right">\n <div class="dropdown-trigger">\n <button class="usereply-button" title="Color">\n <i class="fas fa-palette"></i>\n </button>\n </div>\n <div class="dropdown-menu" role="menu">\n <div id="colour-list" class="dropdown-content">\n <div v-for="color in colors" class="usereply-option" v-bind:style="\'color:\' + color.hex" v-on:click="insertSomething(\'[color=\' + color.hex + \']\', \'[/color]\')">{{ color.name }}</div>\n </div>\n </div>\n </div>\n </li>\n <li id="emoji-button">\n <div class="dropdown upper-controls is-dropeable is-right">\n <div class="dropdown-trigger">\n <button class="usereply-button" title="Emoticono">\n <i class="fas fa-smile"></i>\n </button>\n </div>\n <div class="dropdown-menu" role="menu">\n <div id="emoji-list" class="dropdown-content">\n <iframe id="quickEmojInternal" marginheight="0" marginwidth="0" name="smilies" scrolling="auto" src="/smilies?mode=smilies_frame"></iframe>\n </div>\n </div>\n </div>\n </li>\n <li id="align-button">\n <div class="dropdown upper-controls is-dropeable is-right">\n <div class="dropdown-trigger">\n <button class="usereply-button" title="Alinear">\n <i class="fas fa-align-justify"></i>\n </button>\n </div>\n <div class="dropdown-menu" role="menu">\n <div id="align-list" class="dropdown-content">\n <div class="usereply-option" v-on:click="insertSomething(\'[left]\', \'[/left]\')">Izquierda</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[center]\', \'[/center]\')">Centro</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[right]\', \'[/right]\')">Derecha</div>\n </div>\n </div>\n </div>\n </li>\n <li id="toolbox-button">\n <div class="dropdown upper-controls is-dropeable is-right">\n <div class="dropdown-trigger">\n <button class="usereply-button" title="Otros">\n <i class="fas fa-toolbox"></i>\n </button>\n </div>\n <div class="dropdown-menu" role="menu">\n <div id="toolbox-list" class="dropdown-content">\n <div class="usereply-option" v-on:click="insertSomething(\'[url=\', \'][/url]\')">Enlace</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[img]\', \'[/img]\')">Imagen</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[spoiler]\', \'[/spoiler]\')">Spoiler</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[code]\', \'[/code]\')">Code</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[quote]\', \'[/quote]\')">Cita</div>\n <div class="usereply-option" v-on:click="insertSomething(\'[hide]\', \'[/hide]\')">Ocultar</div>\n </div>\n </div>\n </div>\n </li>\n </ul>\n </div>\n </div>\n <textarea id="usereply-editor" contenteditable="true" v-model="content.msg"></textarea>\n <div id="usereply-comand" v-if="!msgCheck.length">\n <button class="button1 btn-main" v-on:click="sendMsg()">Enviar</button>\n <button class="button1" v-on:click="draftMsg()" v-if="state.editor === \'editpostdraft\'">Modificar</button>\n <button class="button1" v-on:click="draftMsg()" v-else-if="state.editor === \'reply\' && state.dice">Bosquejo</button>\n <button class="button1" v-on:click="prevMsg()">Previsualizar</button>\n </div>\n <div v-if="state.editor === \'reply\' && state.dice" id="usereply-dice">\n <div class="usereply-header">\n <h3>Tirar dados</h3>\n </div>\n <ul>\n <li v-for="(item, index) in dice.current">\n <div class="select-container">\n <select v-model="item.dice">\n <option value="-1" selected hidden>Selec. un dado</option>\n <option v-for="option in dice.options" v-bind:value="option.value">{{ option.content }}</option>\n </select>\n </div>\n <input type="number" v-model="item.number" />\n <button v-on:click="newDice()" v-if="(index + 1) === dice.current.length" class="dice-more">\n <i class="fas fa-plus"></i>\n </button>\n <div v-else class="dice-more"></div>\n </li>\n </ul>\n </div>\n </template>\n </div>\n '});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "generic-skin",
3
- "version": "2.1.0",
3
+ "version": "2.1.4",
4
4
  "description": "Generic Forum Skin for Forumotion created by Gaylien.",
5
5
  "main": "readme.md",
6
6
  "scripts": {
package/stylesheet.css CHANGED
@@ -888,12 +888,6 @@ body>section {
888
888
  margin-bottom: 2rem;
889
889
  margin-right: 0;
890
890
  }
891
-
892
- .notification-element {
893
- position: relative;
894
- right: -1rem;
895
- transform: scale(.9);
896
- }
897
891
  }
898
892
 
899
893
  @media only screen and (max-width: 768px) {
@@ -971,11 +965,6 @@ body>section {
971
965
  margin-bottom: .825rem !important;
972
966
  border-bottom: 0 !important;
973
967
  }
974
-
975
- .notification-element {
976
- right: -2rem;
977
- transform: scale(.8);
978
- }
979
968
  }
980
969
 
981
970
  /* Ajustes generales */
@@ -1 +1 @@
1
- @keyframes dramatic-show{from{opacity:0}to{opacity:1}}.is-dramatic{animation:dramatic-show 1s}@-ms-viewport{width:device-width}*{box-sizing:border-box!important}h1,h2,h3,h4,h5,h6{font-family:var(--font-one)}h1{font-size:2.1rem}h2{font-size:1.9rem}h3{font-size:1.7rem}h4{font-size:1.5rem}h5{font-size:1.3rem}h6{font-size:1.1rem}h2 small,h3 small,h4 small,h5 small,h6 small{display:block;font-weight:400}a:hover{color:var(--color-contrast)}small{font-size:80%}strong{color:inherit}#navbar-original,.forum-head+.forumseparator-element,.subforum-element .category-element>.forum-head,:not(.category-element)+.forum-separator{display:none}.is-pointer{cursor:pointer!important}.is-default{cursor:default!important}.not-show,.to-process{display:none!important}.main-body{max-width:1200px}.is-full-width{width:100%!important;max-width:100%!important}.is-no-links a{border:none!important}.mt-d{margin-top:2rem}.mb-d{margin-bottom:2rem}.is-two-columns-list{display:flex;flex-flow:wrap;margin:-.5rem}.is-two-columns-list>li{width:50%;padding:.5rem}.columns:not(:last-child){margin-bottom:-.75rem}.is-tweakeable{display:block}.is-measurable{white-space:nowrap}.has-anchor{position:relative}.is-selectbox:not(.is-active){display:none!important}.is-clickbox{cursor:pointer!important}.is-clickbox:not(.is-toggle).is-active{cursor:default!important}#forum-notification{position:fixed;right:1rem;bottom:1rem;transition:1s ease-in-out;z-index:999}#forum-notification:not(.notification-show){transform:translateY(400px)}#loading-element{padding:2rem}#loading-content,#loading-element{display:flex;justify-content:center;align-items:center;text-align:center;cursor:default}#loading-content i{font-size:1.25rem;margin-right:.5rem;color:var(--color-contrast)}#loading-content span{font-family:var(--font-one)}#forum-body>.main-body{display:flex;margin:0 auto;padding:3rem 0}#forum-body>.main-body>article{width:100%}aside#left{display:none}#forum-save{display:block}.category-element{margin-bottom:3rem}.category-element:last-child{margin:0!important}#forum-rules{margin-bottom:2rem}#quickreply-section{margin-top:3rem}#forum-realreply{display:none}#forum-reply{margin-bottom:3rem}#forum-reply:last-child{margin-bottom:0}#forum-reply+#privmsg-review #privmsg-see,:not(#forum-reply)+#privmsg-review #privmsg-write{display:none}#usereply-top{display:flex;justify-content:space-between;align-items:center}#usereply-top small{display:block;font-size:50%}.usereply-header{padding:0 .5rem}#usereply-editor{margin-top:1.5rem;height:250px;resize:none}#usereply-buttons ul{display:flex;flex:1 0 auto;justify-content:flex-end}#usereply-buttons ul:first-child{margin-bottom:.5rem}#usereply-buttons ul li{margin-left:.5rem}#usereply-buttons ul li:first-child{margin-left:0}.usereply-button{display:flex;width:2rem;height:2rem;background:0 0;color:var(--color-contrast);border:2px solid;padding:0;justify-content:center;align-items:center;cursor:pointer}#usereply-comand{display:flex;justify-content:center;margin-top:2rem}.usereply-option{font-family:var(--font-one);cursor:pointer;font-size:.85rem;margin-bottom:.4rem;white-space:nowrap}.usereply-option:last-child{margin:0}#usereply-buttons .dropdown-menu::after,#usereply-buttons .dropdown-menu::before{right:7px}#usereply-dice{margin-top:2rem}#usereply-dice h3{margin-bottom:1.5rem}#usereply-dice ul li{display:flex;counter-increment:special-list-counter;margin-bottom:1rem}#usereply-dice ul li:last-child{margin-bottom:0}#usereply-dice ul li::before{content:'#'counter(special-list-counter);display:flex;justify-content:center;align-items:center;flex:0 0 auto;width:2rem;margin-right:.5rem;color:var(--color-contrast);font-family:var(--font-one)}#usereply-dice ul li .dice-more{width:2rem;flex:0 0 auto;border:0;padding:0;background:0 0;color:var(--color-contrast);font-size:1rem;cursor:pointer}#usereply-dice ul li .select-container{flex:1 0 auto;width:inherit}#usereply-dice ul li input{flex:1 1 auto;width:inherit;max-width:30%}#usereply-dice ul li>*{margin-right:.5rem}#usereply-dice ul li>:last-child{margin-right:0}#usereply-extra{margin-bottom:2rem}#emoji-list{display:flex;flex-flow:wrap;overflow:auto;width:220px;max-height:205px;padding:0}#emoji-list iframe{width:100%}.forum-otherposts{margin-top:2rem}#upper-controls+.forum-otherposts{margin-top:0}.forum-otherposts .post{margin-bottom:2rem}.forum-otherposts .post:last-child{margin-bottom:0}.forum-otherposts .post-profile{width:224px}.forum-otherposts .post-profile>*{display:block}.forum-otherposts .post-datafields li{margin-bottom:1rem}.forum-otherposts .post-datafields li:last-child{margin-bottom:0}.forum-otherposts .datafield-name{font-family:var(--font-one)}.forum-otherposts .post-datafield a{font-family:inherit}.post-content.no-links{justify-content:flex-end}.post-content.no-links .is-content{max-width:initial!important}#forum-preview{margin-bottom:2rem}#forum-preview .post-content{justify-content:center}.wiki-body{display:flex;justify-content:space-between}#forum-preview .post-content,.wiki-body{max-width:100%}.wiki-index{align-self:flex-start;margin-right:1.5rem}.wiki-index h3{margin-bottom:1rem}.wiki-index h3::before{display:none}.wiki-index ul{padding-left:2rem}.wiki-index ul li:before{left:-2rem!important;width:2rem!important;text-align:left!important}.wiki-index .is-hidden-mobile{max-height:calc(100vh - 5rem);overflow:auto}.wiki-index .router-link-exact-active.router-link-active{cursor:default}.wiki-index li ul{margin-top:1rem}.wiki-index a{border:none!important;font-family:var(--font-one)!important}.wiki-controls{font-family:var(--font-one);cursor:default}.wiki-index .wiki-controls .wiki-cascade{padding:0;background:0 0;border:none;color:var(--color-contrast);cursor:pointer}.wiki-index .router-link-exact-active.router-link-active,.wiki-index li.is-selected>.wiki-controls>a .text{color:var(--color-two)}.wiki-index li.is-active>.wiki-controls>.wiki-cascade .fa-plus,.wiki-index li:not(.is-active)>.wiki-controls+ul,.wiki-index li:not(.is-active)>.wiki-controls>.wiki-cascade .fa-minus{display:none}.wiki-content{display:flex;flex-flow:column;flex:1 1;max-width:600px}.wiki-nav{margin-top:2.5rem;margin-bottom:1px!important}.input-real{display:none}#mp-info{display:flex;align-items:center;margin-bottom:1.5rem}#mp-info h3,.mp-main h3{margin:0}#mp-info img{width:80px;border:2px solid;margin-left:0;margin-right:1rem}#mp-info h3{font-size:1.15rem}.mp-from a{font-weight:700}.mp-main{border-top:2px solid var(--color-contrast);padding-top:1.5rem}.mp-main>h3{margin-bottom:1.5rem}.mp-main>h3>small{font-size:60%}.post .mp-main>h3>small{display:flex;justify-content:space-between}.field-element{margin-bottom:1rem}.field-element:last-child{margin-bottom:0}.forum-field{display:flex}.forum-field .field-content{flex:1 1 auto}.has-no-label .field-name{display:none}.has-button .field-content{display:flex;align-items:center}.has-button .field-content .button2{margin:0 0 0 .5rem}.forum-checkbox{display:flex;justify-content:center}.checkbox-content{display:flex;align-items:center;cursor:pointer}.forum-checkbox .checkbox-real,.forum-checkbox:not(.is-active) i{display:none}.forum-fieldlist:not(.is-horizontal) .forum-checkbox{max-width:450px;justify-content:flex-start;margin:0 auto;width:100%}#bloque-login .field-name{max-width:180px}#checkbox-autologin{margin-top:2rem}#frmAgreement .post-content{justify-content:center;max-width:100%;margin-bottom:2rem}.field-catcha{margin-top:2rem}.field-catcha .g-recaptcha{display:flex;justify-content:center}.rp-list{margin-bottom:.725rem}.rp-list:last-child{margin-bottom:0}.rp-element{display:flex;align-items:center}.rp-icon{order:0;flex-shrink:0;flex-grow:0;display:flex;justify-content:center;align-items:center;width:25px;height:25px;color:var(--color-contrast)!important;margin-right:.725rem}.rp-content{display:flex;align-items:center;flex-grow:1;max-width:calc(100% - 14px - 1rem)}.rp-name{display:flex;flex-flow:column;min-width:0;line-height:1.3rem;color:var(--color-two)!important;font-size:1.15rem}.rp-name>*{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%}.rp-name>small{font-size:.925rem;font-family:var(--font-two)}.rp-manager{cursor:default}.rp-manager .rp-content{max-width:100%;justify-content:space-between}.rp-controls{font-family:var(--font-one);color:var(--color-two);text-transform:uppercase;margin-left:1rem;cursor:default}.rp-controls span{color:var(--color-contrast);cursor:pointer}.rela-element{display:flex}.rela-element.rela-manager{cursor:default}.rela-list .rela-element .rela-image{flex:0 0 auto;align-self:flex-start;width:80px;height:80px;margin-right:1rem!important;border:2px solid var(--color-contrast);border-radius:100%;background-size:cover;background-position:center}#forum-relationships .rela-title h4{max-width:370px}.rela-title h4{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:1.15rem}.rela-content{flex:1 1 auto;color:var(--color-two)}.rela-title{display:flex;justify-content:space-between;align-items:center}.rela-list{margin-bottom:1.5rem!important}.rela-list:last-child{margin-bottom:0!important}.rela-list:last-child::after{display:none}.small-text{margin-top:.25rem;font-family:var(--font-two);font-size:.925rem;line-height:1.25rem}.rela-text.is-content ol,.rela-text.is-content ul{padding-left:1.5rem}.rela-text.is-content ol li::before,.rela-text.is-content ul li::before{left:-1.5rem;width:1.5rem}.rela-text.is-content ol li,.rela-text.is-content ul li{margin-bottom:.5rem}#forum-multiaccount .field-name{text-transform:capitalize}#forum-multiaccount .rp-controls{top:.55em}#forum-multiaccount .rp-controls span{color:var(--color-one)}#forum-chronology .rp-name{max-width:57vw}ul.no-style{padding:0!important;list-style:none!important}ul.no-style>li::before{content:''!important;position:initial!important}ul.no-style a{border:none!important}body>footer,body>header,body>section{padding-left:1.25rem!important;padding-right:1.25rem!important}@media only screen and (max-width:1023px){header.forum-panel{min-height:initial}.wiki-body{flex-flow:column}.wiki-content{max-width:100%!important}.wiki-index{position:inherit!important;width:100%;margin-bottom:2rem;margin-right:0}.notification-element{position:relative;right:-1rem;transform:scale(.9)}}@media only screen and (max-width:768px){#forum-modal .modal-element{max-width:95%;width:100%}.forum-field .date-dmy label input{margin-left:.5rem}.rela-image{display:none}.forum-otherposts .post-profile,.post .mp-main>h3{position:initial}.forum-otherposts .post-profile,.post .mp-main>h3{position:initial;width:100%!important;margin-right:0;margin-bottom:1.5rem}.post .mp-main small{font-size:1rem}.post-content,.post-content .is-content{max-width:none}.is-two-columns-list>li{width:100%}}@media only screen and (max-width:487px){h1{font-size:1.7rem}h2{font-size:1.55rem}h3{font-size:1.4rem}h4{font-size:1.25rem}h5{font-size:1.1rem}.forum-field{flex-flow:column}.forum-field .field-name{height:auto!important;line-height:initial!important;max-width:initial!important;margin-right:0!important;margin-bottom:.825rem!important;border-bottom:0!important}.notification-element{right:-2rem;transform:scale(.8)}}@supports ((-webkit-hyphens:auto) or (hyphens:auto)){.is-content{-webkit-hyphens:auto;hyphens:auto}}
1
+ @keyframes dramatic-show{from{opacity:0}to{opacity:1}}.is-dramatic{animation:dramatic-show 1s}@-ms-viewport{width:device-width}*{box-sizing:border-box!important}h1,h2,h3,h4,h5,h6{font-family:var(--font-one)}h1{font-size:2.1rem}h2{font-size:1.9rem}h3{font-size:1.7rem}h4{font-size:1.5rem}h5{font-size:1.3rem}h6{font-size:1.1rem}h2 small,h3 small,h4 small,h5 small,h6 small{display:block;font-weight:400}a:hover{color:var(--color-contrast)}small{font-size:80%}strong{color:inherit}#navbar-original,.forum-head+.forumseparator-element,.subforum-element .category-element>.forum-head,:not(.category-element)+.forum-separator{display:none}.is-pointer{cursor:pointer!important}.is-default{cursor:default!important}.not-show,.to-process{display:none!important}.main-body{max-width:1200px}.is-full-width{width:100%!important;max-width:100%!important}.is-no-links a{border:none!important}.mt-d{margin-top:2rem}.mb-d{margin-bottom:2rem}.is-two-columns-list{display:flex;flex-flow:wrap;margin:-.5rem}.is-two-columns-list>li{width:50%;padding:.5rem}.columns:not(:last-child){margin-bottom:-.75rem}.is-tweakeable{display:block}.is-measurable{white-space:nowrap}.has-anchor{position:relative}.is-selectbox:not(.is-active){display:none!important}.is-clickbox{cursor:pointer!important}.is-clickbox:not(.is-toggle).is-active{cursor:default!important}#forum-notification{position:fixed;right:1rem;bottom:1rem;transition:1s ease-in-out;z-index:999}#forum-notification:not(.notification-show){transform:translateY(400px)}#loading-element{padding:2rem}#loading-content,#loading-element{display:flex;justify-content:center;align-items:center;text-align:center;cursor:default}#loading-content i{font-size:1.25rem;margin-right:.5rem;color:var(--color-contrast)}#loading-content span{font-family:var(--font-one)}#forum-body>.main-body{display:flex;margin:0 auto;padding:3rem 0}#forum-body>.main-body>article{width:100%}aside#left{display:none}#forum-save{display:block}.category-element{margin-bottom:3rem}.category-element:last-child{margin:0!important}#forum-rules{margin-bottom:2rem}#quickreply-section{margin-top:3rem}#forum-realreply{display:none}#forum-reply{margin-bottom:3rem}#forum-reply:last-child{margin-bottom:0}#forum-reply+#privmsg-review #privmsg-see,:not(#forum-reply)+#privmsg-review #privmsg-write{display:none}#usereply-top{display:flex;justify-content:space-between;align-items:center}#usereply-top small{display:block;font-size:50%}.usereply-header{padding:0 .5rem}#usereply-editor{margin-top:1.5rem;height:250px;resize:none}#usereply-buttons ul{display:flex;flex:1 0 auto;justify-content:flex-end}#usereply-buttons ul:first-child{margin-bottom:.5rem}#usereply-buttons ul li{margin-left:.5rem}#usereply-buttons ul li:first-child{margin-left:0}.usereply-button{display:flex;width:2rem;height:2rem;background:0 0;color:var(--color-contrast);border:2px solid;padding:0;justify-content:center;align-items:center;cursor:pointer}#usereply-comand{display:flex;justify-content:center;margin-top:2rem}.usereply-option{font-family:var(--font-one);cursor:pointer;font-size:.85rem;margin-bottom:.4rem;white-space:nowrap}.usereply-option:last-child{margin:0}#usereply-buttons .dropdown-menu::after,#usereply-buttons .dropdown-menu::before{right:7px}#usereply-dice{margin-top:2rem}#usereply-dice h3{margin-bottom:1.5rem}#usereply-dice ul li{display:flex;counter-increment:special-list-counter;margin-bottom:1rem}#usereply-dice ul li:last-child{margin-bottom:0}#usereply-dice ul li::before{content:'#'counter(special-list-counter);display:flex;justify-content:center;align-items:center;flex:0 0 auto;width:2rem;margin-right:.5rem;color:var(--color-contrast);font-family:var(--font-one)}#usereply-dice ul li .dice-more{width:2rem;flex:0 0 auto;border:0;padding:0;background:0 0;color:var(--color-contrast);font-size:1rem;cursor:pointer}#usereply-dice ul li .select-container{flex:1 0 auto;width:inherit}#usereply-dice ul li input{flex:1 1 auto;width:inherit;max-width:30%}#usereply-dice ul li>*{margin-right:.5rem}#usereply-dice ul li>:last-child{margin-right:0}#usereply-extra{margin-bottom:2rem}#emoji-list{display:flex;flex-flow:wrap;overflow:auto;width:220px;max-height:205px;padding:0}#emoji-list iframe{width:100%}.forum-otherposts{margin-top:2rem}#upper-controls+.forum-otherposts{margin-top:0}.forum-otherposts .post{margin-bottom:2rem}.forum-otherposts .post:last-child{margin-bottom:0}.forum-otherposts .post-profile{width:224px}.forum-otherposts .post-profile>*{display:block}.forum-otherposts .post-datafields li{margin-bottom:1rem}.forum-otherposts .post-datafields li:last-child{margin-bottom:0}.forum-otherposts .datafield-name{font-family:var(--font-one)}.forum-otherposts .post-datafield a{font-family:inherit}.post-content.no-links{justify-content:flex-end}.post-content.no-links .is-content{max-width:initial!important}#forum-preview{margin-bottom:2rem}#forum-preview .post-content{justify-content:center}.wiki-body{display:flex;justify-content:space-between}#forum-preview .post-content,.wiki-body{max-width:100%}.wiki-index{align-self:flex-start;margin-right:1.5rem}.wiki-index h3{margin-bottom:1rem}.wiki-index h3::before{display:none}.wiki-index ul{padding-left:2rem}.wiki-index ul li:before{left:-2rem!important;width:2rem!important;text-align:left!important}.wiki-index .is-hidden-mobile{max-height:calc(100vh - 5rem);overflow:auto}.wiki-index .router-link-exact-active.router-link-active{cursor:default}.wiki-index li ul{margin-top:1rem}.wiki-index a{border:none!important;font-family:var(--font-one)!important}.wiki-controls{font-family:var(--font-one);cursor:default}.wiki-index .wiki-controls .wiki-cascade{padding:0;background:0 0;border:none;color:var(--color-contrast);cursor:pointer}.wiki-index .router-link-exact-active.router-link-active,.wiki-index li.is-selected>.wiki-controls>a .text{color:var(--color-two)}.wiki-index li.is-active>.wiki-controls>.wiki-cascade .fa-plus,.wiki-index li:not(.is-active)>.wiki-controls+ul,.wiki-index li:not(.is-active)>.wiki-controls>.wiki-cascade .fa-minus{display:none}.wiki-content{display:flex;flex-flow:column;flex:1 1;max-width:600px}.wiki-nav{margin-top:2.5rem;margin-bottom:1px!important}.input-real{display:none}#mp-info{display:flex;align-items:center;margin-bottom:1.5rem}#mp-info h3,.mp-main h3{margin:0}#mp-info img{width:80px;border:2px solid;margin-left:0;margin-right:1rem}#mp-info h3{font-size:1.15rem}.mp-from a{font-weight:700}.mp-main{border-top:2px solid var(--color-contrast);padding-top:1.5rem}.mp-main>h3{margin-bottom:1.5rem}.mp-main>h3>small{font-size:60%}.post .mp-main>h3>small{display:flex;justify-content:space-between}.field-element{margin-bottom:1rem}.field-element:last-child{margin-bottom:0}.forum-field{display:flex}.forum-field .field-content{flex:1 1 auto}.has-no-label .field-name{display:none}.has-button .field-content{display:flex;align-items:center}.has-button .field-content .button2{margin:0 0 0 .5rem}.forum-checkbox{display:flex;justify-content:center}.checkbox-content{display:flex;align-items:center;cursor:pointer}.forum-checkbox .checkbox-real,.forum-checkbox:not(.is-active) i{display:none}.forum-fieldlist:not(.is-horizontal) .forum-checkbox{max-width:450px;justify-content:flex-start;margin:0 auto;width:100%}#bloque-login .field-name{max-width:180px}#checkbox-autologin{margin-top:2rem}#frmAgreement .post-content{justify-content:center;max-width:100%;margin-bottom:2rem}.field-catcha{margin-top:2rem}.field-catcha .g-recaptcha{display:flex;justify-content:center}.rp-list{margin-bottom:.725rem}.rp-list:last-child{margin-bottom:0}.rp-element{display:flex;align-items:center}.rp-icon{order:0;flex-shrink:0;flex-grow:0;display:flex;justify-content:center;align-items:center;width:25px;height:25px;color:var(--color-contrast)!important;margin-right:.725rem}.rp-content{display:flex;align-items:center;flex-grow:1;max-width:calc(100% - 14px - 1rem)}.rp-name{display:flex;flex-flow:column;min-width:0;line-height:1.3rem;color:var(--color-two)!important;font-size:1.15rem}.rp-name>*{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%}.rp-name>small{font-size:.925rem;font-family:var(--font-two)}.rp-manager{cursor:default}.rp-manager .rp-content{max-width:100%;justify-content:space-between}.rp-controls{font-family:var(--font-one);color:var(--color-two);text-transform:uppercase;margin-left:1rem;cursor:default}.rp-controls span{color:var(--color-contrast);cursor:pointer}.rela-element{display:flex}.rela-element.rela-manager{cursor:default}.rela-list .rela-element .rela-image{flex:0 0 auto;align-self:flex-start;width:80px;height:80px;margin-right:1rem!important;border:2px solid var(--color-contrast);border-radius:100%;background-size:cover;background-position:center}#forum-relationships .rela-title h4{max-width:370px}.rela-title h4{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:1.15rem}.rela-content{flex:1 1 auto;color:var(--color-two)}.rela-title{display:flex;justify-content:space-between;align-items:center}.rela-list{margin-bottom:1.5rem!important}.rela-list:last-child{margin-bottom:0!important}.rela-list:last-child::after{display:none}.small-text{margin-top:.25rem;font-family:var(--font-two);font-size:.925rem;line-height:1.25rem}.rela-text.is-content ol,.rela-text.is-content ul{padding-left:1.5rem}.rela-text.is-content ol li::before,.rela-text.is-content ul li::before{left:-1.5rem;width:1.5rem}.rela-text.is-content ol li,.rela-text.is-content ul li{margin-bottom:.5rem}#forum-multiaccount .field-name{text-transform:capitalize}#forum-multiaccount .rp-controls{top:.55em}#forum-multiaccount .rp-controls span{color:var(--color-one)}#forum-chronology .rp-name{max-width:57vw}ul.no-style{padding:0!important;list-style:none!important}ul.no-style>li::before{content:''!important;position:initial!important}ul.no-style a{border:none!important}body>footer,body>header,body>section{padding-left:1.25rem!important;padding-right:1.25rem!important}@media only screen and (max-width:1023px){header.forum-panel{min-height:initial}.wiki-body{flex-flow:column}.wiki-content{max-width:100%!important}.wiki-index{position:inherit!important;width:100%;margin-bottom:2rem;margin-right:0}}@media only screen and (max-width:768px){#forum-modal .modal-element{max-width:95%;width:100%}.forum-field .date-dmy label input{margin-left:.5rem}.rela-image{display:none}.forum-otherposts .post-profile,.post .mp-main>h3{position:initial}.forum-otherposts .post-profile,.post .mp-main>h3{position:initial;width:100%!important;margin-right:0;margin-bottom:1.5rem}.post .mp-main small{font-size:1rem}.post-content,.post-content .is-content{max-width:none}.is-two-columns-list>li{width:100%}}@media only screen and (max-width:487px){h1{font-size:1.7rem}h2{font-size:1.55rem}h3{font-size:1.4rem}h4{font-size:1.25rem}h5{font-size:1.1rem}.forum-field{flex-flow:column}.forum-field .field-name{height:auto!important;line-height:initial!important;max-width:initial!important;margin-right:0!important;margin-bottom:.825rem!important;border-bottom:0!important}}@supports ((-webkit-hyphens:auto) or (hyphens:auto)){.is-content{-webkit-hyphens:auto;hyphens:auto}}