Com este código, os membros terão a possibilidade de escolherem o tamanho da fonte do fórum que mais lhe agrada.
Favoritar um fórum à sua escolha
TUTORIAIS, DICAS E ASTÚCIAS |
Páginas JavaScript
As páginas JavaScript ativas em seu fórum possibilita inserir scripts e jQuery para personalizar seu fórum, contudo é importante saber que qualquer script encontrado na internet acabam por não surgir efeito nos fóruns.
Painel de Controle Visualização Módulos HTML & JavaScript Gestão dos códigos JavaScript Criar um novo JavaScript |
(carregue na imagem para aumentar) | Título Correspondente ao nome da página JavaScript/jQuery que será criada. |
| Localização- São destinados os devidos locais para onde você aplicará os efeitos do JavaScript nos fóruns. No nosso caso, aplicaremos Em todas as páginas. |
| Código JavaScript Campo destinado para receber os códigos JavaScript e jQuery. |
| Habilitar o gerenciamento dos códigos JavaScript Ao selecionar a opção sim, estará ativando a função páginas Javascript no seu fórum. Se selecionar não, as páginas serão desabilitadas no fórum. |
- Código:
$(function() { 'DEVELOPED BY ANGE TUTEUR'; 'NO DISTRIBUTION WITHOUT CONSENT OF THE AUTHOR'; 'ORIGIN : http://fmdesign.forumotion.com/t501-starred-forums#6825'; // automatically detects the version var version = $('.bodylinewidth')[0] ? 0 : document.getElementById('wrap') ? 1 : $('div.pun')[0] ? 2 : document.getElementById('ipbwrapper') ? 3 : 'badapple'; // error notifications if (version == 'badapple' || !window.JSON || !window.localStorage) { var errString = 'The plugin "fa_starred" could not be executed because : '; if (version == 'badapple') errString += '\nYour forum version is not supported.'; if (!window.JSON) errString += '\nJSON is not supported by your browser'; if (!window.localStorage) errString += '\nThe Storage API is not support by your browser.'; window.console && console.error ? console.error(errString) : alert(errString); return; } // get fontawesome if unavailable if (!$('link[href$="font-awesome.min.css"]')[0]) { document.getElementsByTagName('HEAD')[0].insertAdjacentHTML('beforeend', '<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.0/css/font-awesome.min.css" />'); } window.fa_starred = { version : version, // forum version forums : localStorage.fa_starred_forums ? JSON.parse(localStorage.fa_starred_forums) : null, // language settings lang : { star : 'Favoritar fórum', unstar : 'Desfavoritar fórum', starred : 'Fóruns favoritos' }, icon : { star : '', unstar : '' }, // selectors select : { content : version ? document.getElementById('main-content') : $('#content-container td:has(> img[height="5"])')[0], category : ['.forumline:has(.secondarytitle)', '.forabg', '.main:has(.tcr) .main-content', '.borderwrap:has(.index-box)'][version], forum : 'a.' + (version ? 'forumtitle' : 'forumlink'), row : version == 1 ? 'li' : 'tr' }, // move the selected forum to the "starred" category star : function(that, id, startup) { if (!fa_starred.forums) fa_starred.forums = {}; if (!fa_starred.board) fa_starred.createStarBoard(); if (!fa_starred.forums[id]) { // clone the row and add it to the star board var clone = $(that).closest(fa_starred.select.row)[0].cloneNode(true), rows = $(that).closest(fa_starred.select.row).parent().find(fa_starred.select.row); // update the star attributes for the clone $('.fa_star', clone).attr({ 'onclick' : 'fa_starred.unstar(this, ' + id + '); return false', 'class' : 'fa_unstar', 'title' : fa_starred.lang.unstar }).html('<i class="fa">' + fa_starred.icon.unstar + '</i>'); fa_starred.list.appendChild(clone); // append the clone to the starred category $(that).closest(fa_starred.select.row)[0].style.display = 'none'; // hide the original row // check if all forums are hidden for this category for (var i = 0, j = rows.length, k = 0; i < j; i++) { if (/none/.test(rows[i].style.display)) k++; } // hide the category if all forums are hidden if (i == k) { $(that).closest(fa_starred.select.category)[0].className += ' fa_star_hidden'; } // jump to the star board if it's out of sight if (!startup && document.getElementById('fa_star_board').getBoundingClientRect().top < 0) { window.location.hash = ''; window.location.hash = '#fa_star_board'; } // update storage fa_starred.forums[id] = 1; localStorage.fa_starred_forums = JSON.stringify(fa_starred.forums); } }, // unstar the selected forum unstar : function (that, id) { var forum, catg, i = 0, j; fa_starred.list.removeChild($(that).closest(fa_starred.select.row)[0]); // remove cloned row // update variables forum = $(fa_starred.select.forum + '[href^="/f' + id + '-"]')[0]; // original forum catg = $(forum).closest(fa_starred.select.category)[0]; // original category $(forum).closest(fa_starred.select.row)[0].style.display = ''; // show the original forum's row // show the category if all forums were hidden if (/fa_star_hidden/.test(catg.className)) { catg.className = catg.className.replace(/fa_star_hidden/, ''); } // delete the starred forum and check if there are anymore stars delete fa_starred.forums[id]; for (j in fa_starred.forums) { if (fa_starred.forums[j]) i++; } // update storage if (i) { localStorage.fa_starred_forums = JSON.stringify(fa_starred.forums); } else { fa_starred.forums = null; localStorage.removeItem('fa_starred_forums'); // remove nodes if (version == 2) { fa_starred.board.parentNode.removeChild(fa_starred.board.previousSibling); // remove header for punbb } fa_starred.board.parentNode.removeChild(fa_starred.board); // delete node references delete fa_starred.board; delete fa_starred.list; } }, // create the "starred" category createStarBoard : function() { var catg = $(fa_starred.select.category, fa_starred.select.content)[0], board = catg.cloneNode(true), rows = $(fa_starred.select.row, board); board.id = 'fa_star_board'; board.style.display = ''; if (version != 2) { board.getElementsByTagName('H2')[0].innerHTML = fa_starred.lang.starred; // change category title } // find forum list and remove exisiting rows in the clone fa_starred.list = rows[0].parentNode; rows.remove(); // punbb insertion method if (version == 2) { var head = catg.previousSibling.cloneNode(true); head.getElementsByTagName('H2')[0].innerHTML = fa_starred.lang.starred; catg.parentNode.insertBefore(board, catg.previousSibling); board.parentNode.insertBefore(head, board); } else { catg.parentNode.insertBefore(board, catg); // default insertion } fa_starred.board = board; } }; fa_starred.select.row += ':has(' + fa_starred.select.forum + ')'; // update row selector // general startup var a = $(fa_starred.select.forum, fa_starred.select.content), i = 0, j = a.length, k, id; // setup star board and reset forum states if starred if (fa_starred.forums) { if (!fa_starred.board) fa_starred.createStarBoard(); for (k in fa_starred.forums) { fa_starred.forums[k] = 0; } } // setup stars and starred forums for (; i < j; i++) { id = a[i].href.replace(/.*?\/f(\d+).*/, '$1'); a[i].insertAdjacentHTML('afterend', '<a href="#" class="fa_star" onclick="fa_starred.star(this, ' + id + '); return false;" title="' + fa_starred.lang.star + '"><i class="fa">' + fa_starred.icon.unstar + '</i></a>'); if (fa_starred.forums) { for (k in fa_starred.forums) { if (k == id) { fa_starred.star(a[i], id, true); } } } } document.getElementsByTagName('HEAD')[0].insertAdjacentHTML('beforeend', '<style type="text/css">a.fa_star,a.fa_unstar{color:#999!important;font-size:16px;vertical-align:-2px;margin-left:3px;opacity:0}a.fa_star:hover,a.fa_unstar,li:hover a.fa_star,tr:hover a.fa_star{opacity:1}a.fa_star i,a.fa_unstar i{position:relative}a.fa_star i:hover:after,a.fa_unstar i:after{content:"' + fa_starred.icon.star + '";position:absolute;left:0;bottom:0}a.fa_unstar i:hover:after{content:""}.fa_star_hidden {display:none!important}</style>'); });
|