Votes given by Nicoxys

  1. .

    Easy Innovation


    Easy Innovation è un portale web gratuito indirizzato agli utenti di Forumfree, Forumcommunity e Blogfree per utilizzare e gestire in modo semplice e intuitivo i migliori servizi aggiuntivi dei circuiti. Tramite un'interfaccia che mira a essere chiara e immediata, il sito vuole rendere facili da usare componenti che, alla base, sono particolarmente strutturati e complessi, con elevati livelli di personalizzazione.



    Accesso al portale

    Per poter accedere al portale, è prima necessario aver effettuato il login con un account Forumfree, Forumcommunity o Blogfree tramite le normali funzioni del circuito. In seguito, la pagina di login permette la scelta dell'account con cui proseguire. Se si è correttamente loggati nella piattaforma di riferimento, la card circolare dedicata a tale piattaforma, verde per Forumfree, blu per Forumcommunity e arancio per Blogfree, conterrà l'avatar dell'account e, sotto, sarà indicato il relativo nickname. Al contrario, nel caso in cui non è stato effettuato l'accesso, la card riporterà la sigla della piattaforma con un link alla pagina di login del circuito.



    Cliccando sull'account desiderato, è possibile entrare nel portale e iniziare a utilizzare i servizi disponibili.


    Selezione del forum

    Alcuni servizi richiedono innanzitutto che venga selezionato un forum su cui operare. Per effettuare la scelta, è possibile cliccare sulla voce Seleziona forum presente nella sidebar di sinistra o, da mobile, nella barra in basso. Si aprirà l'area dedicata alla scelta del forum dove è presente un elenco di siti di cui l'account con cui è stato effettuato l'accesso è amministratore o admin degli script. Per effettuare la selezione del forum è sufficiente cliccare sul nome desiderato.



    Script

    Il servizio script ripropone e rinnova l'ormai consolidato EasyScript per forum e utenti. Per accedervi, è possibile cliccare sulla voce Script nella sidebar di sinistra o, da mobile, nella barra in basso. In seguito, si potrà scegliere se si desidera amministrare gli script per forum o quelli per il profilo con cui è stato effettuato l'accesso. Nel primo caso occorre aver selezionato il forum su cui installare, modificare o rimuovere gli script. Il funzionamento della pagina riprende e integra il sistema nato nel 2018: per installare uno script è sufficiente cliccare sul pulsante verde Installa, mentre per modificarne le impostazioni, se disponibili, si può utilizzare il pulsante blu Impostazioni. Se allo script è dedicata una guida, sarà disponibile il pulsante Guida con un link alla discussione sul forum di appartenenza dello script.



    Le nuove aree Opzioni di layout e Applica un filtro consentono rispettivamente di personalizzare la visualizzazione grafica degli script e di filtrare la lista secondo criteri arbitrari. Cliccando sul pulsante Leggi di più presente nel box in alto a sinistra viene mostrato un modal contenente maggiori dettagli sul funzionamento della pagina.



    Admin degli script

    Il servizio di admin degli script consente di aggiungere o rimuovere gli amministratori degli script. Questi, a differenza dei normali amministratori del forum o blog, avranno esclusivamente la possibilità di installare, modificare o rimuovere gli script sul sito. La funzionalità, nata già da diversi anni, risulta particolarmente utile quando si desidera riservare la gestione dei componenti aggiuntivi del proprio forum o blog a determinati utenti, senza doverli necessariamente inserire tra gli admin del sito. Per utilizzare il servizio occorre, dopo aver selezionato il forum, cliccare sul pulsante Admin degli script presente nella sidebar di sinistra o, da mobile, nella barra inferiore. L'area dedicata contiene un campo in cui è possibile inserire il nickname o l'id dell'utente da aggiungere come admin degli script, la lista degli attuali amministratori e, per ciascuno di essi, un pulsante rosso che ne permette la rimozione.



    Problemi e malfunzionamenti

    Ogni segnalazione di problemi, malfunzionamenti o difficoltà riscontrati è sempre ben accolta. A tale scopo, è possibile aprire una discussione nella sezione dedicata. Se invece si desidera lasciare un commento o un parere, si può rispondere a questa discussione!



    Edited by Steb95 - 19/11/2023, 16:36
  2. .

    Libreria Commons di EasyScript


    Sviluppando script, accade spesso di trovarsi in situazioni in cui, in codici differenti, occorre eseguire gli stessi tipi di controlli, ad esempio su forum o utenti, oppure si necessitano gli stessi elementi HTML, come modal o toast. Ciò in genere si traduce in un macchinoso copia-incolla delle stesse funzioni, il quale rende sufficientemente complicato apportare aggiornamenti generali alle funzioni comuni.
    Fin dall'introduzione di EasyScript, è stata predisposta una particolare libreria condivisa da tutti gli script e disponibile in tutti i forum che avessero attivato il plugin. Tale libreria è finalmente stata aggiornata e formalizzata in questa guida.
    La libreria viene importata automaticamente in ogni forum che ha attivo EasyScript, ossia ha installato almeno uno script oppure ha inserito il flag all'opzione "Abilita EasyScript" presente in Amministrazione > Funzioni aggiuntive > Script e codici, ed è raggiungibile anche dai vari box in Amministrazione > Grafica > Codice HTML tramite window.Commons. Si tratta di un pacchetto scritto in Vanilla JS, JQuery free e senza dipendenze da altre librerie, basato su una logica di lazy getter, al fine di pesare il meno possibile e garantire buone prestazioni.
    La libreria è suddivisa in otto aree tematiche, sulla base della logica dei metodi contenuti, a ciascuna delle quali corrisponde una proprietà dell'oggetto window.Commons: location, forum, user, device, utilities, animations, modal e toast.

    Location

    L'oggetto location, raggiungibile da window.Commons.location, contiene informazione sul "luogo", ossia sulla pagina in cui si trova l'utente. Le sue proprietà sono le seguenti:

    1. isArticle: boolean: true se la pagina corrente è un topic in formato articolo;
    2. isArticleList: boolean: true se la pagina corrente è una sezione in formato blog, ossia con l'elenco dei primi post dei vari articoli;
    3. isBlog: boolean: true se la pagina corrente è una sezione in formato blog o la prima pagina di un articolo;
    4. isFullEditor: boolean: true se la pagina corrente è la risposta "estesa" (ad esempio la pagina a cui si viene indirizzati cliccando sui pulsanti "citazione" o "rispondi" nei topic);
    5. isHome: boolean: true se la pagina corrente è la homepage del forum;
    6. isProfile: boolean: true se la pagina corrente è il profilo di un utente;
    7. isSection: boolean: true se la pagina corrente è una sezione;
    8. isTopic: boolean: true se la pagina corrente è un topic;
    9. profile: object: si tratta di un oggetto che racchiude informazioni sul profilo che si sta eventualmente visitando. Le sue proprietà sono:
      • avatar: string | null: l'avatar del profilo. Null nel caso in cui non sia disponibile (ad esempio ci si trova in homepage);
      • group: {id: number | string; name: string | null;}: informazioni sul gruppo a cui appartiene l'utente che si sta visitando. In caso non siano disponibili, l'id restituito è -1 e il name è null;
      • id: number: l'id del profilo. Zero in caso non sia disponibile;
      • nickname: string | null: il nickname del profilo. Null nel caso in cui non sia disponibile.
    10. posts: object[]: si tratta di un array di oggetti ciascuno dei quali contiene informazioni sui posts della pagina che si sta visualizzando. Nel caso in cui la pagina corrente non sia un topic, ritorna un array vuoi. Le proprietà degli oggetti contenuti sono:
      • author: {id: number; group: {id: number | string; name: string | null}; nickname: string | null;}: informazioni sull'autore del post;
      • content: string: il contenuto del post con eventualmente i tag html inseriti;
      • nativeElement: l'elemento HTML che rappresenta il post;
      • id: number: l'id del post;
      • time: number: il timestamp della data in cui è stato inviato il post, adatto per essere passato come parametro alla classe Date.
    11. section: object: si tratta di un oggetto che racchiude informazioni su una sezione. Le sue proprietà sono:
      • id: number: l'id della sezione. Zero in caso non sia disponibile (ad esempio ci si trova in homepage);
      • title: string | null: il nome della sezione. Null nel caso in cui non sia disponibile.
    12. topic: object: si tratta di un oggetto che racchiude informazioni su un topic. Le sue proprietà sono:
      • id: number: l'id del topic. Zero in caso non sia disponibile (ad esempio ci si trova in una sezione);
      • title: string | null: il titolo del topic. Null nel caso in cui non sia disponibile.

    Forum

    L'oggetto forum, raggiungibile da window.Commons.forum, contiene informazione sul forum in cui ci si trova. Le sue proprietà sono le seguenti:

    1. domain: "forumfree.it" | "forumcommunity.net" | "blogfree.net": il domain del forum;
    2. id: number: l'id del forum;
    3. isFFMobile: boolean: true se il layout corrente è FFMobile;
    4. isQuirks: boolean: true se il layout corrente è Quirks;
    5. isStandard: boolean: true se il layout corrente è Standard;
    6. layout: number: valore numerico associato al layout attivo sul forum. Si tratta in genere di una variabile interna della libreria: zero per il layout FFMobile, uno per il Quirks, due per lo Standard;
    7. shortdomain: "ff" | "fc" | "bf": il dominio abbreviato del forum;
    8. subdomain: string: il sottodominio del forum.

    User

    L'oggetto user, raggiungibile da window.Commons.user, contiene informazione sull'utente attuale. Le sue proprietà sono le seguenti:

    1. avatar: string | null: l'url corrispondente all'avatar dell'utente. Null se è un visitatore;
    2. group: number | string: il gruppo a cui appartiene l'utente. Se l'utente è in un gruppo personalizzato, ritorna l'id numerico di quel gruppo. Se l'utente non è in un gruppo personalizzato ed è admin o moderatore, ritorna rispettivamente "admin" o "mod_sez". In tutti gli altri casi ritorna zero;
    3. id: number: l'id dell'utente. Zero se è un visitatore;
    4. isAdmin: boolean: true se l'utente è un admin del forum;
    5. isGlobalMod: boolean: true se l'utente ha poteri di moderazione globale;
    6. isGraphicAdmin: boolean: true se l'utente è un admin grafico, ossia ha accesso al pannello grafico nell'amministrazione del forum;
    7. isGuest: boolean: true se si tratta di un visitatore non loggato.
    8. isMod: boolean: true se l'utente è un moderatore di una o più sezioni;
    9. isSectionAdmin: boolean: true se l'utente può amministrare le sezioni, ossia ha accesso, invero parziale, ai pannelli "sito web" e "funzioni aggiuntive" dell'amministrazione del forum;
    10. isScriptAdmin: boolean: true se l'utente è un admin degli script;
    11. isUserAdmin: boolean: true se l'utente è admin degli utenti, ossia ha accesso al pannello gruppi nell'amministrazione del forum;
    12. lang: string: la lingua impostata dall'utente. Default en.;
    13. nickname: string | null: il nickname dell'utente. Null se è un visitatore;

    Device

    L'oggetto device, raggiungibile da window.Commons.device, contiene informazione sul dispositivo utilizzato dall'utente. Le sue proprietà sono le seguenti:

    1. isTouch: boolean: true se il dispositivo è touch.

    Utilities

    L'oggetto utilities, raggiungibile da window.Commons.utilities, contiene varie funzioni di generale utilità. I suoi metodi sono i seguenti:

    1. addScriptCredits: (script: {topic: number, name: string}, user: {id: number, name: string}, forum: {id: string, name: string, link: string}) => void: aggiunge i crediti per uno script, seguendo lo standard indicato nell'apposita guida. La libreria "Crediti in fondo al forum" deve essere selezionata per l'importazione tra le impostazioni dello script.
      L'oggetto script contiene due proprietà, topic e name. La prima rappresenta l'ID del topic che contiene la guida e la descrizione dello script, la seconda contiene il nome dello script scelto dall'autore.
      L'oggetto user contiene due proprietà, id e name. La prima rappresenta l'ID dell'account che ha creato lo script, la seconda il nickname dell'account autore dello script. Quest'ultimo può essere anche differente dal nickname effettivamente impostato nel profilo dei circuiti.
      L'oggetto forum contiene tre proprietà, id, name e link. La prima rappresenta un ID unico, scelto e utilizzato da tutti i creatori di script che fanno parte di un medesimo forum, non obbligatoriamente coincidente con l'ID del forum assegnato dai circuiti. È fondamentale che tale id rimanga il medesimo in tutti gli script di uno stesso forum, in caso contrario verranno creati più crediti per script differenti, ma appartenenti alla medesima community, anziché un solo tab. La seconda proprietà rappresenta il nome del forum che sarà visualizzato in fondo alle pagine dei siti che utilizzeranno gli script di quella community. La terza proprietà rappresenta il link al forum a cui appartiene l'utente sviluppatore dello script e verrà usata come base per inserire, insieme all'id del topic specificato nell'oggetto script, il link diretto alla guida dello script.
    2. bbcodeParser: () => void: piccola funzione che permette di passare da una stringa in BBCode a una stringa in HTML. I suoi metodi sono:
      • set: (codes: object[], append?: boolean) => void: permette di impostare i vari replacer. codes è un array di oggetti in cui la chiave è una stringa che verrà usata per creare una regexp con new RegExp(), mentre il contenuto è il rimpiazzo in HTML. Un esempio che converte il tag BBCode B nel tag HTML strong è il seguente: myBBCodeParser.set({'\\[b\\](.+?)\\[/b\\]': '$1'}). Se il parametro append è true (di default è false), i nuovi codici passati verranno appesi a quelli eventualmente già impostati, altrimenti verranno sostituiti (e quindi i replace già impostati non saranno più validi).
      • parse: (text: string) => string: esegue i replace sulla stringa passata come input e restituisce la nuova stringa.
    3. dateFormat: (value: number | string, format?: string) => string | null: formatta una data seguendo lo schema passato come format. value deve essere un valore da usare in new Date(). I token disponibili sono i seguenti:
      • Y: anno in quattro cifre (e.g.: 2020);
      • y: anno in due cifre (e.g.: 20);
      • n: mese da 1 a 12;
      • m: mese da 01 a 12;
      • j: giorno del mese da 1 a (massimo) 31;
      • d: giorno del mese da 01 a (massimo) 31;
      • G: ora da 0 a 23;
      • H: ora da 00 a 23;
      • i: minuto da 00 a 59;
      • s: secondo da 00 a 59.
      Ad esempio, volendo una data nel formato "04/12/2020 15:02" è possibile assegnare a format il valore 'd/m/Y H:i'. Il formato di default è Y-m-d H:i:s;
    4. getAllCookies: () => object: restituisce un oggetto di key => value contenente tutti i cookie disponibili;
    5. getCookie: (name: string) => string | null: ritorna il valore del cookie la cui chiave corrisponde a name. Restituisce null se il cookie cercato non è stato trovato;
    6. getUrlParameter: (name: string, url?: string | null) => string | null: cerca nell'url specificato, o nell'url corrente se non viene passato alcun url, il parametro indicato da name. Ritorna il parametro cercato, sempre come stringa, oppure null nel caso in cui ciò che si cerca non viene trovato;
    7. removeJsInTags: (text: string) => string: effettua l'escape di tutti i tag contenenti codice javascript inline (ad esempio onclick=) e restituisce la stringa risultante;
    8. removeTags: (text: string, tags?: string[]) => string: accetta in input una stringa ed esegue l'escape dei tag specificati dall'array tags. Se non viene passato alcun parametro tags, verrà fatto l'escape dei tag script e style. Restituisce una nuova stringa a seguito dell'escape. Un valore d'esempio per il parametro tags può essere ['script', 'style', 'iframe']: in questo caso verrà effettuato l'escape dei tags script, style e iframe;
    9. setCookie: (name: string, value: string, seconds?: number, network?: boolean) => boolean: imposta un cookie seguendo i parametri passati come input. name si riferisce al nome del cookie; value al contenuto; seconds ai secondi dopo cui il biscotto scade. Se non viene passato alcun valore per seconds il cookie scadrà al termine della sessione (ossia non viene settato né expiresmax-age). Se network è true (di default è false), il biscotto sarà disponibile su tutti i forum del circuito di riferimento. Il cookie è automaticamente creato con i parametri Secure e SameSite=Lax;
    10. uniqueItems: (array: object[], key: string) => object[]: cicla un array di oggetti e ritorna, in un nuovo array, solo gli oggetti che hanno valori distinti nella proprietà specificata dal parametro key;

    Animations

    L'oggetto animations, raggiungibile da window.Commons.animations, contiene varie animazioni realizzate in puro Javascript. I suoi metodi sono i seguenti:

    1. fadeIn: (element: HTMLElement, duration?: number, display?: string, callback?: () => any) => void: esegue il fade in dell'elemento passato come input. Tramite duration è possibile specificare i millisecondi di durata dell'animazione, il valore di default è 300. Tramite display è possibile specificare il valore che verrà assegnato alla proprietà display, ad esempio flex. Il valore di default è block. Il parametro callback rappresenta una possibile funzione che verrà chiamata al termine dell'animazione;
    2. fadeOut: (element: HTMLElement, duration?: number, callback?: () => any) => void: esegue il fade out dell'elemento passato come input. Tramite duration è possibile specificare i millisecondi di durata dell'animazione, il valore di default è 300. Il parametro callback rappresenta una possibile funzione che verrà chiamata al termine dell'animazione.

    Modal

    L'oggetto modal, raggiungibile da window.Commons.modal, permette di settare e gestire i modal.


    I suoi metodi sono i seguenti:

    1. close: (modal?: HTMLElement, callback?: () => any) => void: chiude manualmente un modal. A differenza di toggle, questo metodo accetta come input non l'id del modal, bensì l'elemento stesso. Se non viene passato alcun modal, viene fatto un controllo per verificare se c'è un modal attualmente aperto e, in caso, viene chiuso. Ciò può risultare utile ove si voglia inserire, ad esempio nel footer, un pulsante "chiudi" che, se premuto, chiude il modal: in questo caso, infatti, sarà sufficiente assegnare al pulsante la funzione onclick="window.Commons.modal.close()".
    2. open: (modal: HTMLElement, callback?: () => any) => void: apre manualmente un modal. A differenza di toggle, questo metodo accetta come input non l'id del modal, bensì l'elemento stesso;
    3. set: (options?: {class?: string | string[], data?: string | string[], title?: string, content?: string, footer?: string}, show?: boolean) => number: il metodo consente di creare un nuovo modal. L'oggetto options contiene le varie caratteristiche del modal:
      • class: una stringa o un array di stringhe contiene le classi personalizzate che si vogliono assegnare al proprio modal;
      • data: una stringa o un array di stringhe che contiene i vari ed eventuali data-attr da assegnare al proprio modal;
      • title: il titolo del modal;
      • content: il contenuto del modal;
      • footer: il footer del modal.
      Se il parametro show è impostato su true (di default è false), il modal oltre ad essegere aggiunto al DOM viene anche mostrato. La funzione restituisce l'id numerico del modal da poter utilizzare nei metodi update e toggle. Sono disponibili alcune classi per aumentare la personalizzazione del modal:
      • cs-modal-dark: la classe permette di utilizzare la versione scura del modal;
      • cs-modal-text-{alignment}: la classe permette di modificare l'allineamento del testo nel corpo del modal e nel footer. Al posto di {alignment} è possibile inserire i token left, center, right;
      • cs-modal-w{number}: la classe permette di gestire la larghezza del modal in schermi con width superiore a 992px. Al posto di {number} è possibile inserire il numero da 20 a 100, di 10 in 10, che indica la percentuale di larghezza del modal. Usando la classe cs-modal-w100 si otterrà un modal largo tutto lo schermo;
      • cs-modal-h{number}: la classe permette di gestire l'altezza del modal. Al posto di {number} è possibile inserire il numero da 40 a 100, di 10 in 10, che indica la percentuale di altezza del modal. Usando la classe cs-modal-h100 si otterrà un modal alto tutto lo schermo.
      Il modal è impostato in modo da rendere scrollabile il contenuto, mantenendo sempre visibile il titolo e il footer;
    4. toggle: (id: number, callback?: () => any) => void: esegue il toggle del modal specificato da id, ossia se il modal è visibile, lo nasconde; se è nascosto, lo mostra. Il parametro callback rappresenta una possibile funzione che verrà chiamata al termine dell'animazione;
    5. update: (id: number, options?: {title?: string, content?: string, footer?: string}) => void: aggiorna il contenuto del modal specificato da id;

    Toast

    L'oggetto toast, raggiungibile da window.Commons.toast, permette di settare e gestire i toast.


    I suoi metodi sono i seguenti:

    1. hide: (id: string) => Promise<string>: nasconde il toast specifica da id. In genere questo metodo non sarà utilizzato in quanto il toast scomparirà dopo il ttl oppure verrà chiuso dall'utente tramite gli appositi comandi.
    2. show: (toast?: {id?: string, class?: string | string[], title?: string, content?: string, ttl?: number}) => Promise<string>: crea un toast e lo mostra. L'oggetto toast contiene le varie caratteristiche del toast:
      • id: un id personalizzato da assegnare al proprio toast. Se non viene specificato, ne verrà generato uno casuale. Se viene specificato un id già in uso da un altro toast, prima viene nascosto il toast con quell'id e in seguito viene creato quello nuovo;
      • class: una stringa o un array di stringhe contiene le classi personalizzate che si vogliono assegnare al proprio toast;
      • title: il titolo del toast;
      • content: il contenuto del toast;
      • ttl: time to live. Tempo in millisecondi trascorso il quale il toast scomparirà. Se non specificato, oppure se viene fornito un valore inferiore a 1 secondo, verrà usato il valore di default di 5 secondi.
    In particolare, sono disponibili cinque tipologie di toast: notification, success, warning, error, info. A ciascuna di queste corrisponde una classe che deve essere specificata nell'opzione class del metodo set: cs-toast-notification, cs-toast-success, cs-toast-warning, cs-toast-error, cs-toast-info. Se non viene passata alcuna classe, di default verrà lanciato un toast info. Tramite la classe cs-toast-dark è possibile usare la versione scura del toast.

    Considerazioni conclusive

    Vista la mancanza di diverse informazioni in quel layout, le proprietà che si basano sugli elementi del DOM, ossia gli oggetti user e location, potrebbero non dare i risultati sperati sul layout Quirks.
    Attualmente la libreria contiene solo le principali informazioni utili agli script attivi, tuttavia è sempre possibile aggiungere metodi/proprietà o modificare quelli esistenti: se hai una richiesta particolare non esitare a comunicarcelo!




    Edited by Steb95 - 29/12/2021, 12:56
  3. .
    Ottima idea quella di integrare il lancio dei dadi nelle frasi predefinite. :b: I forum di giochi di ruolo vi saranno grati. :)
  4. .
    Il codice è stato aggiornato: ora verranno nascosti i post anche nelle citazioni regolari!

    Per eventuali problemi, cancellate la cache e/o aprite una nuova discussione in questa sezione: https://ffboard.forumfree.it/?f=64397043
  5. .

    Gestore lista admin per gli script V. 1.0

    Se la presente utilità è di tuo gradimento dai un +1 a questo post

    Forumfree, Forumcommunity e Blogfree sono piattaforme che, dalla loro creazione fino ad oggi, si sono sempre più arricchite di funzionalità e strumenti al fine di garantire a qualsiasi utente il miglior servizio e la massima personalizzazione possibile. Nonostante ciò, i fondatori di forum e blog, nonché di community, sovente hanno percepito la necessità di inserire nei propri siti degli script appositamente realizzati per ampliare le funzionalità dei circuiti.
    Questi script non sempre sono composti da poche e semplici righe di codice, al contrario spesso formano delle vere e proprie entità parzialmente autonome rispetto al basilare funzionamento della piattaforma ospitante, con sistemi di amministrazione gestibili separatamente. Ne sono un esempio due tra gli script più famosi e diffusi sui circuiti, realizzati da FFBoard: Shoutbox e Newsbox. L'aggiunta e la rimozione di moderatori dei singoli script può risultare impegnativa o confusionaria, soprattutto se si possiedono più forum o blog con codici aggiuntivi differenti.
    Grazie a questo eccezionale pannello di gestione degli admin sarà possibile inserire o rimuovere un amministratore di tutti gli script del proprio forum o blog con poche e semplici operazioni, pur mantenendo la facoltà di gestione dei moderatori dei singoli script tramite i loro pop-up!

    Funzionamento

    Per utilizzare il pannello sono sufficienti due facili passaggi:

    1. Recarsi nella pagina in cui è presente il gestore della lista admin cliccando qui.
    2. Inserire il dominio del forum in cui sono presenti gli script ai quali si vuole aggiungere o rimuovere un amministratore. È necessario essere loggati sul circuito su cui si trova il forum o blog ed essere fondatori o amministratori aggiunti del forum o blog stesso.

    Aggiunta di un admin

    Per aggiungere un amministratore occorre inserire il suo nickname o l'ID del suo account nell'apposito spazio presente e cliccare "Aggiungi admin". Dopo un breve caricamento si vedrà l'utente inserito comparire nella lista admin.

    Rimozione di un admin

    Per rimuovere un amministratore occorre cliccare sul segno meno presente a fianco del suo nickname nella lista admin. Dopo un breve caricamento il moderatore degli script sarà rimosso.

    Cambiare forum o blog

    Per cambiare il forum o il blog di cui si vuole modificare la lista admin degli script è sufficiente cliccare su "Cambia dominio", presente nel riquadro azzurro. La pagina verrà ricaricata e sarà possibile inserire un nuovo dominio.



    Edited by Steb95 - 19/7/2018, 22:32
  6. .
    Il miglior script pubblicato in questo forum, i miei complimenti.
  7. .
    Sbagli che non hai linkato il forum in cui si presenta il problema. Quindi non è possibile analizzare un problema da un'immagine. L'avrò scritto millanta volte, ma quando avete mal di gola e dovete andare dal dottore, mica gli spedite una foto della laringe.

    Ci sarà qualche impostazione nei CSS della skin che va a influenzare anche la grafica del pannello.

    Aze aze.
  8. .
    Utile soprattutto se uno entra nel forum, tramite proxy, per trollarti.

    Aze aze.
  9. .
    Grassie,
    ma ti odio lo stesso...

    Aze aze.
  10. .
    CITAZIONE
    #666

    Evil spiker :asd:
  11. .
    Ciao Simone,
    Il bordo che vedi in realtà è lo sfondo del tuo forum, poichè c'è dello spazio tra la tabella di classe border e la tabella interna delle statistiche.

    Per eliminare questo difetto grafico ti consiglio di sostituire il codice
    CODICE
    <table class="border" cellpadding="2">
    con
    CODICE
    <table class="border">
    eliminando quindi il cellpadding="2"

    Altrimenti se non ti è possibile modificare quella parte di html dobbiamo colorare lo sfondo della tabella principale dello stesso colore dei suoi bordi; quindi nel foglio di stile (CSS) andremo ad aggiungere dentro la classe .stats .border il seguente codice: background-color: #F2F2F2;

    Quindi dovresti ritrovarti un codice simile:
    CODICE
    .stats .border{
    background-color: #F2F2F2;

    ecc...
    }
  12. .
    -] 17:25:11 [- <@Mattia> !uno pesca
    -] 17:25:12 [- -Uno[Bot]- [#ffboard.ff] Hai pescato: +4 - Le tue carte sono: b4, b7, b+2, g6, v+2, v+2, g8, g4, g0, g7, +4
    -] 17:25:19 [- <@Mattia> !uno gioca +4 v
    -] 17:25:20 [- <+Uno[Bot]> Carta sul banco: v* - Lilly pesca quattro carte e salta il suo turno. - Il colore è stato cambiato in verde. - Tocca a Mattia.
    -] 17:25:20 [- -Uno[Bot]- [#ffboard.ff] (Hai due minuti per fare la tua mossa) Le tue carte sono: b4, b7, b+2, g6, v+2, v+2, g8, g4, g0, g7
    -] 17:25:23 [- <@Mattia> !uno gioca v+2
    -] 17:25:24 [- <+Uno[Bot]> Carta sul banco: v+2 - Lilly pesca due carte e salta il suo turno. - Tocca a Mattia.
    -] 17:25:24 [- -Uno[Bot]- [#ffboard.ff] (Hai due minuti per fare la tua mossa) Le tue carte sono: b4, b7, b+2, g6, v+2, g8, g4, g0, g7
    -] 17:25:25 [- <@Mattia> !uno gioca v+2
    -] 17:25:25 [- <+Uno[Bot]> Carta sul banco: v+2 - Lilly pesca due carte e salta il suo turno. - Tocca a Mattia.
    -] 17:25:25 [- -Uno[Bot]- [#ffboard.ff] (Hai due minuti per fare la tua mossa) Le tue carte sono: b4, b7, b+2, g6, g8, g4, g0, g7
    -] 17:25:29 [- <@Mattia> !uno gioca b+2
    -] 17:25:30 [- <+Uno[Bot]> Carta sul banco: b+2 - Lilly pesca due carte e salta il suo turno. - Tocca a Mattia.
    -] 17:25:30 [- -Uno[Bot]- [#ffboard.ff] (Hai due minuti per fare la tua mossa) Le tue carte sono: b4, b7, g6, g8, g4, g0, g7
    -] 17:25:31 [- <lilly> ...
  13. .

    Guadagnare su ForumFree

    Se il presente articolo è di tuo gradimento dai un +1 a questo post

    È spesso difficile congiungere gli impegni lavorativi con il proprio “impiego” forummistico, causando un calo di attività nel forum. Ma cosa accadrebbe se si ricevesse un compenso per ciò che si fa?

    Vediamo quindi dei modi pratici per guadagnare su ForumFree.

    Glossario



    Prima di andare a vedere i metodi di guadagno utilizzabili vi propongo un piccolo glossario con i termini che useremo nell'articolo:

    CPC: Acronimo che sta per Cost Per Click, ossia quanto colui che crea l'annuncio (Inserzionista) paga per ogni click sul suo banner.

    CPM: Acronimo che sta per “Cost Per Mille”, ossia quanto l'Inserzionista paga ogni 1000 visualizzazioni del banner.

    CPA: Acronimo che sta per “Cost Per Action”, ossia quanto l'inserzionista paga per ogni acquisto/iscrizione portata dal banner.

    Payout: cifra da raggiungere per ricevere i propri guadagni.

    Keyword: letteralmente “parola chiave”, una o più parole che descrivono il proprio forum.

    Circuiti Pubblicitari


    Un metodo già in uso da alcuni forum per ottenere dei guadagni dal proprio forum è quello di inserire ulteriori pubblicità.

    Andiamo quindi ad analizzare alcuni dei più popolari circuiti pubblicitari utilizzabili su ForumFree.

    Vorrei ricordare a tutti un articolo del Regolamento Integrale prima di continuare: “9.3 È vietato collocare i banner pubblicitari all'interno di DIV fissi, ovvero non è possibile fare in modo che la pubblicità rimanga in primo piano scorrendo la pagina.”

    Logoheyos_mini



    Heyos è uno dei servizi più "intriganti" che ho trovato: con un payout minimo di 50 Euro e modalità di guadagno CPC e CPM è sicuramente molto funzionale.
    Introduce anche il sistema delle tooltips: alcune parole nei post vengono evidenziate e cliccando su esse si apre un popup pubblicitario.
    I ricavi vengono inviati tramite Bonifico o PayPal

    jaTec43



    Smowtion è un servizio che punta tutto sulla semplicità d'uso: i pannelli di gestione sono comodi e mostrano le informazioni in modo semplice e veloce.
    Smowtion sceglie automaticamente la categoria di annunci che ritiene più adatta.
    Non è concesso però scegliere se guadagnare tramite CPC, CPM o CPA:
    Altra nota negativa è il payout alto: 100$
    I pagamenti sono erogati tramite bonifico, assegni o PayPal.

    logo_SHIK



    BidVertiser è completamente basato su CPC e offre svariate “taglie” di banner.
    Vengono conservate le statistiche di ogni banner (Click, Impressions..) in modo tale da poterle consultare e scegliere il posizionamento migliore per il proprio sito.
    I pagamenti avvengono automaticamente alla fine del mese attraverso PayPal se si raggiungono $10 o tramite assegno se si raggiungono i $100. Se il payout non viene raggiunto il credito viene trasportato al mese successivo.

    Logo-Simply1



    Simply è un servizio tutto italiano (della storica DADA s.p.a.).
    Anche quest'ultimo offre banner di ogni dimensione per i propri forum e conserva le statistiche per potervi accedere comodamente in ogni momento.
    I pagamenti avvengono unicamente a fine mese attraverso bonifico bancario se si raggiungono i 50 Euro, se il payout non è raggiunto il credito viene trasferito al mese seguente.

    Potete trovare una lista più completa dei servizi utilizzabili qui.

    Adblock


    Uno dei fattori limitanti per i guadagni, sia di ForumFree che dei singoli proprietari dei forum, è il fenomeno AdBlock.
    Adblock è un'estensione per browser che consente di bloccare le pubblicità. Le pubblicità così non vengono mostrate a chi usa l'estensione e si ha quindi una discesa dei click e delle visualizzazioni dei banner.

    Abbiamo effettuato un'indagine statistica con un campione di 5000 utenti per osservare quanti di questi ultimi bloccavano le pubblicità.

    ykYpSNP

    Fortunatamente ancora una buona fetta dell'utenza non usa AdBlock, ma comunque la media, rispetto a quella del paese rimane alta.

    YfNBMRS

    Perciò non aspettatevi di monetizzare ogni visita!

    Vi consigliamo però di suggerire all'utenza ,attraverso il nostro script, di disabilitare quest'estensione almeno solo sui circuiti per supportare ForumFree e il vostro forum.

    (Io ad esempio uso AdBlock, ma ho in whitelist *.forumfree.it e altri siti che voglio supportare..)

    Donazioni



    Un altro metodo utilizzabile per ottenere dei ricavi è il proporre donazioni all'utenza.

    E' necessario unicamente un account PayPal. Nell'account stesso potrete trovare i banner da esporre per la donazione.

    Cercate però di rimanere imparziali all'interno del forum e di non favorire i donatori rispetto a gli utenti “normali”, al massimo dedicategli un gruppo con qualche privilegio in più per favorire le donazioni, ma evitate di fare cose eccezionali per loro se non volete avere il resto dell'utenza contro di voi ad urlarvi dei “venduti” :asd: .

    In Conclusione


    Abbiamo visto vari metodi per guadagnare su ForumFree. C'è qualche metodo che ritenete scorretto? Usate qualcuno dei metodi sopracitati o avete altri metodi da suggerirci?

    Articolo realizzato da .Mattia.



    Edited by .Mattia - 13/8/2014, 23:47
  14. .
    Nice job, per chi lavora in ambienti esterni, sa che la prima cosa è costruire degli URL SEO-friendly, oramai quasi tutti i cms lo fanno automaticamente, ma un tempo non era cosi.

    Se continui col SEO fra un pò troveremo forumfree ovunque in Google xD
  15. .

    Pena di morte in Italia

    Se il presente articolo è di tuo gradimento dai un +1 a questo post


    Introduzione


    Ciao a tutti i lettori: oggi sono qui per parlare di un argomento totalmente esterno a forumfree, la pena di morte, e nel caso specifico in Italia, dove la pena capitale non è legale. In effetti, la pena di morte è sempre vista come un metodo antico e da condannare, ma sentendo i tg e leggendo i giornali, ho avuto modo di constatare che succedono i reati più violenti in Italia: omicidi, furti, violenze ecc. E si sentono tanti casi nei quali i presunti colpevoli vengono scarcerati dopo poco tempo, oppure viceversa, persone innocenti coinvolte in un delitto per caso restano in carcere per decine di anni.
    Non è quindi difficile pensare che se una persona avesse qualche dubbio su rapinare una banca o no, vedendo la giustizia italiana, non ci penserebbe su a compiere il furto. Quindi, la mia domanda è: pena di morte, sistema barbaro o utile pena?. Buona lettura

    Perché la pena di morte è abolita


    Secondo me, è semplicemente un fatto di:"Nessuno ha il diritto di togliere il bene più prezioso del mondo a una persona per punirlo semplicemente". Questa frase è parzialmente corretta, ma si tradisce da sola, in quanto un assassino che diritto aveva per uccidere una persona? Non si meriterebbe una punizione almeno equivalente al danno fatto? Secondo me sì, per questo io sono a favore della pena di morte usata in modo ragionevole, cioè senza abusarne e da usare come ultima carta, solo in casi gravi. A mio parere, sarebbe da sostituire completamente all'ergastolo, che se si traduce in:"Pena di morte lenta in cui hai possibilità di scappare" . La pena di morte, abbinata a pene più severe in carcere, dovrebbe, secondo la mia modesta opinione, far riflettere le persone prima di compiere atti criminali, e condurli al giusto pensiero. Ovviamente, ci saranno sempre delle persone che violeranno la legge, ma di meno.

    La legge italiana non perdona :asd:


    Nell'anno passato, il caro 2013, si è registrato un forte aumento dei furti in proprietà private, il più delle volte senza essere organizzate e da persone ancora giovani: questo per causa della legge, troppo a favore dei malviventi, e delle pene troppo leggere.
    Vi elenco due leggi, a mio avviso scandalose, che regnano in Italia:
    1. Se un ladro entra in casa vostra, e per un caso dove il proprietario è coinvolto, il ladro si fa male, può farvi causa
    2. Se entra in casa vostra un ladro armato, e voi vi trovate dentro casa con un arma, potete sparare, e far ricorso quindi alla legittima difesa, solo dopo che il delinquente ha aperto il fuoco, e potete spararlo sotto la vita se non è di schiena, altrimenti siete perseguibili per legge.
    In pratica, se un ladro viene in casa con un arma, senza spararvi, può rubare tranquillamente in casa vostra senza disturbo, e andarsene rapidamente, e voi, pur possedendo un arma, non potete far nulla per fermarlo, se non chiamare la polizia sperando arrivi subito.

    Il contributo della Chiesa cattolica e della crisi economica


    A completare l'opera in bellezza, arriva la nostra amata chiesa, che con i suoi "ideali" di perdono, pietà e aiuto al prossimo, evitano, senza offesa, che l'Italia faccia giustizia in un buon modo, essendo la vita influenzata ormai completamente dalla chiesa. La pena di morte è condannata dalla chiesa, proprio per il suddetto motivo, ovvero Nessuno ha il diritto di togliere il bene più prezioso del mondo a una persona per punirlo semplicemente.

    Infine, la crisi economica spinge le persone maggiormente colpite a tentare la via dei criminali, proprio come succedeva nel sud-italia all'epoca dell'unità d'Italia, quando si iniziò a sviluppare il fenomeno del brigantaggio, che divenne sempre più organizzato.


    Concludo quindi, facendo una somma del tutto: un'Italia sempre più contro la propria legge, dove la criminalità regna.
    Spero che l'articolo faccia riflettere sulla pena di morte e sulla politica italiana; ricordate che questo è un articolo di dibattito, si basa perciò su quello che scrivete voi utenti, io vi ho dato solamente spunti di riflessione. Ciao a tutti da Ced.

    Articolo realizzato da Cedric

19 replies since 28/4/2011
.