autore : DEVADIP // -> build : 0.9.927 // -> file : ESEGUIBILE INIZIALE //////////////////////////////////////////////////////////////////////////////////////////////////////////////// include ('./inc/config.php'); include ('./inc/inizializzazione.php'); // qui controllo se l'user ha richiesto login o altre azioni if (isset($_POST['login']) or isset($_POST['registrazione']) or isset($_POST['invia_articolo']) or isset($_GET['azione']) or isset($_POST['modificapass'])) { // includo il file di controllo accesso require('./inc/funzioni_user.php'); if (!isset($_POST['login']) and $_GET['azione'] != 'contatto' and $_GET['azione'] != 'urp' and $_GET['azione'] != 'compilaquest' and $_GET['azione'] != 'compilamodello_comp' and $_GET['azione'] != 'votasond' and $_GET['azione'] != 'rissond') { $idSezione = -1; } } //qui controllo se l'user ha richiesto login SPID if (isset($_POST['loginspid']) or isset($_GET['acs'])) { require('./inc/funzioni_user.php'); } // controllo utente include('./inc/controllo_user.php'); if($datiUser['sessione_loggato'] or $_POST['https']) { $server_url = $server_s_url; } if($datiUser['sessione_loggato'] and $_POST['login'] and file_exists("codicepers/codice_login_ok.php")) { include("codicepers/codice_login_ok.php"); } // includo il file di utilita' per le funzionalita' di newsletter !!!!! ATTENZIONE, IL FILE PRESENTA PROBLEMI USARE IL CRON NEWSLETTER require('./inc/funzioni_newsletter.php'); if (!$datiUser['user_loggato'] AND $usaCSRF) { // INIZIALIZZO SEMPRE LA SESSIONE PER QUESTIONI LEGATE ALLA PROTEZIONE CSRF DEI FORM include_once('./inc/nocsrf.php'); $tokenCSRF = NoCSRF::generateNoSessione( 'csrf_token' ); session_start(); } // forzo la disabilitazione della cache header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1 header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache"); // HTTP/1.0 if ((!isset($sezioneNavigazione) or $sezioneNavigazione['id'] < 0 or !isset($sezioneNavigazione['id'])) and !$_GET['azione']) { if($forzaMessaggioCambioPassword) { //cosa fare? nulla credo unset($headerOutput); } else if (!isset($_POST['login'])) { // ERRORE 404 $contPer= new contenutoPers('404'); $sezioneNavigazione = array( 'id' => -1, 'nome' => 'Pagina non trovata' ); } else if (isset($_POST['login']) AND $contPer->tipo!="messaggio") { if($contPer->tipo == 'file' and $contPer->istanza == 'cambiopass') { //cosa fare? nulla credo unset($headerOutput); } else { $contPer= new contenutoPers('benvenuto'); $sezioneNavigazione = array( 'id' => -1, 'nome' => 'Benvenuto in '.$configurazione['nome_sito'] ); unset($headerOutput); } } else if (isset($_POST['login'])) { // erorre in login unset($headerOutput); } } else if ($sezioneNavigazione['id'] == -1 and $_GET['azione']) { unset($headerOutput); } else { if(isset($_POST['login']) and $sezioneNavigazione['id'] == '-1') { //errore in login unset($headerOutput); } } if($configurazione['controllo_dominio_template']) { //////// BLOCCO PER MULTIDOMINIO if ($configurazione['modulo_multisito']) { if (!count($_POST) AND !$idDocumento AND !isset($azione)) { // verifico le letture complete // ci sono più domini, verifico se questa versione è da canonical //echo "Dominio sezione: ".$sezioneNavigazione['id_dominio']." Dominio Scelto: ".$dominioScelto['id']; if ($sezioneNavigazione['id_dominio'] != $configurazione['id_dominio'] AND isset($configurazione['id_dominio'])) { // ERRORE 404 $headerOutput = 'header_risorsa_inesistente'; } } } } //calcolo dei diritti in lettura di una sezione require('./inc/dirittiSezioneRead.php'); //eventuali header in output per la disponibilità della risorsa richiesta if($headerOutput or file_exists('codicepers/header_output.php')) { require('./inc/header_output.php'); } // controllo se utilizzare il template della regola, quello di default o quello di review if (isset($_POST['strcerca']) or isset($_GET['strcerca']) or $_GET['azione']=='cerca') { // includo il file di funzione ricerca $contPer= new contenutoPers('cerca'); // setto il template a quello di default(altrimenti prende quello della sezione index) if ($configurazione['template_ricerca']) { $sezioneNavigazione['template'] = $configurazione['template_ricerca']; foreach ((array)$template as $tempTemp) { if ($tempTemp['id'] == $sezioneNavigazione['template']) { $templateScelto = $tempTemp; break; } } } } // qui controllo se l'user vuole cercare qualcosa nei tag if ($_GET['azione']=='cercatag') { // includo il file di funzione ricerca $contPer= new contenutoPers('cercatag'); // setto il template a quello di default(altrimenti prende quello della sezione index) if ($configurazione['template_ricerca']) { $sezioneNavigazione['template'] = $configurazione['template_ricerca']; foreach ((array)$template as $tempTemp) { if ($tempTemp['id'] == $sezioneNavigazione['template']) { $templateScelto = $tempTemp; break; } } } } // forzatura sui template di sistema if ($contPer->tipo != "nessuno") { if ($contPer->tipo == "messaggio" or $contPer->tipo == "messaggiok") { if ($configurazione['template_msg']) { $sezioneNavigazione['template'] = $configurazione['template_msg']; } } else if ($contPer->tipo == "benvenuto" or $contPer->tipo == "user" or $contPer->tipo == "accesso" or $azione == "profilomod" or $contPer->tipo == "preferiti" or ($contPer->tipo == "file" AND $azione=='profilo')) { if ($configurazione['template_utente']) { $sezioneNavigazione['template'] = $configurazione['template_utente']; } } else if ($contPer->tipo == "rss") { if ($configurazione['template_rss']) { $sezioneNavigazione['template'] = $configurazione['template_rss']; } } else if ($contPer->tipo == "carrello" or $contPer->tipo == "cassa") { if ($configurazione['template_commerce']) { $sezioneNavigazione['template'] = $configurazione['template_commerce']; } } else if ($contPer->tipo == "404") { if ($datiUser['sessione_loggato'] and ($datiUser['sessione_admininfo'] or $datiUser['sessione_admingrafica'])) { //non faccio nulla } else { if ($configurazione['template_404']) { $sezioneNavigazione['template'] = $configurazione['template_404']; } else { // usa template di default $sezioneNavigazione['template'] = 1; } } } } // ulteriore peronalizzazione per il multitemplate if (($_GET['azione']=='paginasondaggi' OR $_GET['azione']=='votasond' OR $_GET['azione']=='rissond') AND $configurazione['template_default_sondaggi'] != '') { $sezioneNavigazione['template'] = $sezioneHome['template']; } // se il css della sezione e' diverso e sono im modalità standard lo sovrascrivo if ($sezioneNavigazione['css'] != 1 and $idCss == 1) { // setto la regola sovrascrivendo con il css sezione $cssScelto = caricaCss($sezioneNavigazione['css']); } else { // carico il css di sessione $cssScelto = caricaCss($datiUser['sessione_idcss']); } $sezioneNavigazione['css'] = $cssScelto['nome']; if ($sezioneNavigazione['template'] == 0 OR $sezioneNavigazione['template'] == '') { $sezioneNavigazione['template'] = $configurazione['template_default']; } foreach ($template as $tempTemp) { if ($idDocumento and $idOggetto and $templateOriginale and $sezioneNavigazione['adatta_template']) { // modalità MULTINETWORK per letture complete: forzo un template if ($tempTemp['id'] == $templateOriginale) { $templateScelto = $tempTemp; break; } } else { // modalità normale: scelgo il template associato if ($tempTemp['id'] == $sezioneNavigazione['template']) { $templateScelto = $tempTemp; break; } } } // controllo l'esistenza del template if (!is_array($templateScelto)) { // il template non esiste, uso quello di default $sezioneNavigazione['template'] = 1; foreach ($template as $tempTemp) { if ($tempTemp['id'] == $sezioneNavigazione['template']) { $templateScelto = $tempTemp; break; } } $messaggioSistema="questa sezione potrebbe usare un template non impostato o non più presente nel sistema, quindi al suo posto verrà usato il template di default ".$templateScelto['nome'].""; } // inibizioni per interfaccia accessibile if ($datiUser['sessione_admingrafica'] AND $datiUser['admin_accessibile']) { $datiUser['sessione_admingrafica'] = 0; } $mV = 0; //////// EVENTUALE VERSIONE MOBILE if (($infoBrowser->isMobileDevice == 1 or $datiUser['forzomobile']) and $configurazione['modulo_mobile'] and $templateScelto['id_mobile']) { // sostituisco il template caricato con il mobile $templateNormale = $templateScelto; foreach ($template as $tempTemp) { if ($tempTemp['id'] == $templateScelto['id_mobile']) { $templateScelto = $tempTemp; break; } } if ($sezioneNavigazione['template'] == $templateScelto['id']) { $messaggioSistema="Il template scelto per la versione mobile non è più esistente. Verrà quindi usata l'impostazione di default."; } $mV = 1; } // includo il file di utilita' per le funzionalita' grafiche del template e delle informazioni require('./inc/funzioni_template.php'); //require('./inc/funzioni_admin.php'); // carico le regole di composizione del templatye // carico la regola di pubblicazione NORMALE relativa a questa sezione $regolaGrafica = $coreInfo->loadingRegolaGrafica($templateScelto['id']); if(!$regolaGrafica) { // carico la regola di default $regolaGrafica = $coreInfo->loadingRegolaGrafica(0); } // nel caso non ci sia neanche la regola default if (!$regolaGrafica) { $regolaGrafica = array(); } // correzione regola css per evitare che non lo prenda if ($sezioneNavigazione['css'] == '') { $sezioneNavigazione['css'] = 'stili'; } /////////////////////////////////// INIZIO CACHE SEZIONI // modifica del 2018-12-18 - beta - non funziona ancora bene con i dati in POST $erogaHtml = 1; if ($configurazione['cache_sezioni'] and !$datiUser['sessione_loggato'] and !isset($_GET['azione']) and !isset($_POST['cerca_oggetto']) and !isset($_GET['lettera']) and !$_GET['inizio'] and !$sezioneNavigazione['impedisci_cache'] and $sezioneNavigazione['css'] == 'stili') { $nomeCache = "sez-".$sezioneNavigazione['id']."-".$datiUser['sessione_idlingua']."-".$idOggetto."-".$idDocumento."-".$idCategoria."-mob".$mV.".cache"; if (@filemtime("./cache/sezioni/".$nomeCache)+$configurazione['cache_sezioni_validita']>time()) { // il file cache esiste, lo erogo header('Content-Type: text/html'); @readfile("./cache/sezioni/".$nomeCache); $erogaHtml = 0; } else { // impedisco all'utente un'interruzione parziale ignore_user_abort(true); // apro il buffer di memorizzazione della cache //ob_start(); if (version_compare(PHP_VERSION, '5.4.0', '>=')) { ob_start(null, 0, PHP_OUTPUT_HANDLER_STDFLAGS ^ PHP_OUTPUT_HANDLER_REMOVABLE); } else { ob_start(null, 0, false); } } } $visTemplate = FALSE; // VERIFICA DEI PERMESSI PER IL TEMPLATE (tranne per quando si richiede il login) if ($templateScelto['tipo_lettura'] == 'normale' OR $datiUser['permessi']==3 OR $datiUser['permessi']==10 or $_GET['azione']=='accesso') { $visTemplate = TRUE; } else if ($templateScelto['tipo_lettura'] != 'normale' AND !$datiUser['sessione_loggato']) { $visTemplate = FALSE; } else if ($datiUser['sessione_loggato']) { if ($templateScelto['id_proprietari_lettura'] != '-1') { $arrayProprietari = explode(',',$templateScelto['id_proprietari_lettura']); if ($templateScelto['tipo_lettura'] == 'utente') { foreach ($arrayProprietari as $proprietario) { if ($proprietario == $datiUser['id']) { $visTemplate = TRUE; break; } } } else { require_once('classi/admin_gruppi.php'); $classeGruppi = new gruppiAdmin(); foreach ($arrayProprietari as $proprietario) { if (trim($proprietario) != '') { $composizione = $classeGruppi->caricaComposizioneGruppo($proprietario); // ciclo di composizione delle mail dei destinatari con verifica for ($i=0,$tot=count($composizione);$i<$tot;$i++) { if ($composizione[$i]['id_documento'] == $datiUser['id']) { $visTemplate = TRUE; break 2; } } } } } } else { $visTemplate = TRUE; } } if($lingua['id'] > 1) { //Correzione per il template $linguaTemplate = caricaLinguaggioTemplate($templateScelto['id'], $lingua['id']); if($linguaTemplate['id']) { if($linguaTemplate['nome_sito'] != '') { $templateScelto['nome_sito'] = $linguaTemplate['nome_sito']; } if($linguaTemplate['descrizione_sito'] != '') { $templateScelto['descrizione_sito'] = $linguaTemplate['descrizione_sito']; } if($linguaTemplate['keywords'] != '') { $templateScelto['keywords'] = $linguaTemplate['keywords']; } unset($linguaTemplate); } } ///////////////////////////////////////////////////////////////////VERSIONE MOBILE//////////////////////////////////////////////////////////////////////////// if ($mV and $erogaHtml and $visTemplate) { // DISPOSITIVO MOBILE INDIVIDUATO O FORZATO $configurazione['rss_automatici'] = FALSE; echo " \n"; // verifico codice linguaggio if ($lingua['codice_lingua']=='') { $lingua['codice_lingua'] = 'it'; } echo " \n"; echo ""; echo ""; if ($configurazione['modulo_multisito'] and $templateScelto['nome_sito'] != '') { $GLOBALS['titoloSito'] = $templateScelto['nome_sito']; } else { $GLOBALS['titoloSito'] = $configurazione['nome_sito']; } // verifico come pubblicare il titolo switch ($configurazione['title_doc']) { case 0: // normale: prima il titolo sito poi il titolo pagina/istanza if($oggettoReview['id']) { if($oggettoReviewSeo['title_code'] != '') { echo "".$GLOBALS['titoloSito']." - ".$oggettoReviewSeo['title_code']." \n"; } else { echo "".$GLOBALS['titoloSito']." - ".$oggettoReview[$oggettoLetturaCompleta->campo_default]." \n"; } } else { echo "".$GLOBALS['titoloSito']." - ".$sezioneNavigazione['nome']." \n"; } break; case 1: // CEO optimizer: prima il titolo pagina/istanza poi il titolo sito if($oggettoReview['id']) { if($oggettoReviewSeo['title_code'] != '') { echo "".$oggettoReviewSeo['title_code']." - ".$GLOBALS['titoloSito']." \n"; } else { echo "".$oggettoReviewSeo[$oggettoLetturaCompleta->campo_default]." - ".$GLOBALS['titoloSito']." \n"; } } else { echo "".$sezioneNavigazione['nome']." - ".$GLOBALS['titoloSito']." \n"; } break; case 2: // esclusivo: solo il titolo del sito echo "".$GLOBALS['titoloSito']." \n"; break; case 3: // esclusivo: solo il titolo della sezione/istanza if($oggettoReview['id']) { if($oggettoReviewSeo['title_code'] != '') { echo "".$oggettoReviewSeo['title_code']." \n"; } else { echo "".$oggettoReviewSeo[$oggettoLetturaCompleta->campo_default]." \n"; } } else { echo "".$sezioneNavigazione['nome']." \n"; } break; } echo " \n"; echo " \n"; echo ""; if ($configurazione['modulo_multisito'] and $templateScelto['descrizione_sito'] != '' and ($sezioneNavigazione['descrizione'] == '' OR $idSezione == 0)) { $sezioneNavigazione['descrizione'] = $templateScelto['descrizione_sito']; } else { if ($sezioneNavigazione['descrizione'] == '' OR $idSezione == 0) { $sezioneNavigazione['descrizione'] = $configurazione['descrizione_sito']; } } if($oggettoReview['id'] > 0) { if($oggettoReviewSeo['descrizione_code'] != '') { $sezioneNavigazione['descrizione'] = $oggettoReviewSeo['descrizione_code']; } } echo " \n"; if ($configurazione['modulo_multisito']) { if ($templateScelto['motori_ricerca'] and ($sezioneNavigazione['ricercabile'] or $oggettoReviewSeo['ricercabile'])) { echo " \n"; if ($templateScelto['keywords'] == '' and $sezioneNavigazione['keywords'] == '') { $sezioneNavigazione['keywords'] = $configurazione['keywords']; } else if ($templateScelto['keywords'] != '' and $sezioneNavigazione['keywords'] == '') { $sezioneNavigazione['keywords'] = $templateScelto['keywords']; } if($oggettoReview['id'] > 0) { if($oggettoReviewSeo['keywords'] != '') { $sezioneNavigazione['keywords'] = $oggettoReviewSeo['keywords']; } } echo " \n"; } else { echo " \n"; } } else { if ($configurazione['motori_ricerca'] and ($sezioneNavigazione['ricercabile'] or $oggettoReviewSeo['ricercabile'])) { echo " \n"; if ($sezioneNavigazione['keywords'] == '' OR $idSezione == 0) { $sezioneNavigazione['keywords'] = $configurazione['keywords']; } if($oggettoReview['id'] > 0) { if($oggettoReviewSeo['keywords'] != '') { $sezioneNavigazione['keywords'] = $oggettoReviewSeo['keywords']; } } echo " \n"; } else { echo " \n"; } } echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; if(file_exists("codicepers/funzioni_personalizzate_js.php")) { echo " \n"; } $tipo_calendario = $configurazione['tipo_calendario'] == '' ? 'default' : $configurazione['tipo_calendario']; if($tipo_calendario == 'default') { echo " \n"; } else { echo " \n"; } echo " \n"; if ($configurazione['player_video'] == 'flowplayer') { echo " \n"; } if($configurazione['meta_favicon']) { if($templateScelto['favicon'] > 0) { $favicon = caricaMediaParziale($templateScelto['favicon']); echo ""; } else { echo ""; } } // nella versione mobile utilizzo solamente lo stile normale if ($datiUser['sessione_admingrafica'] and $datiUser['sessione_loggato']) { $tipo = 'template'; } else if ($datiUser['sessione_admininfo'] and $datiUser['sessione_loggato']) { $tipo = 'info'; } else { $tipo = 'nessuna'; } //inclusione dei css importati nelle personalizzazioni include_once('classi/admin_csstemplate.php'); $cssTemplate = new cssTemplate(); $cssInclusi = $cssTemplate->caricaListaCssTemplateAttivi($templateScelto['id']); foreach ((array)$cssInclusi as $c) { if ($c['tipo'] == 'file') { echo " \n"; } else { echo " \n"; } } //css dei moduli colorbox, lightbox e simili echo " "; //verifico se il template è un url if ($templateScelto['tipo_template'] == 'url') { //ottimizzare per la cache echo " \n"; echo " \n"; } else { // verifico la cache if (!$configurazione['cache_stile'] or isset($_GET['comando'])) { // uso sempre lo stile dinamico echo " \n"; } else { // uso sempre la cache normale $nomeFileStile = "stili-".$datiUser['sessione_idlingua']."-".$cssScelto['id']."-".$templateScelto['id']."-".$datiUser['admin_skin']."-".$datiUser['admin_interfaccia']."-".$tipo.".css"; if (file_exists("./cache/css/".$nomeFileStile)) { echo " \n"; } else { // creo il file di cache per la prima vota echo " \n"; } unset($nomeFileStile); } unset($tipo); } if(file_exists("codicepers/stiliPersonalizzati.php")) { echo " \n"; } echo " \n"; if (!file_exists('./template/'.$lingua['prefisso_template'].$templateScelto['nome_file'].'.tmp') ) { // il file template non esiste $contPer= new contenutoPers('messaggio','ATTENZIONE: per questa versione mobile hai selezionato un template con file mancante. Correggere il template mobile "'.$templateScelto['nome'].'" oppure modificare il template normale che lo richiama.'); require('./template/index_mobile.tmp'); } else { require('./template/'.$lingua['prefisso_template'].$templateScelto['nome_file'].'.tmp'); } echo ""; } else if ($erogaHtml and $visTemplate) { ///////////////////////////////////////////////////////////////////VERSIONE NORMALE//////////////////////////////////////////////////////////////////////////// if($templateScelto['doctype'] == 'html5') { echo " \n"; } else { echo " \n"; } // verifico codice linguaggio if ($lingua['codice_lingua']=='') { $lingua['codice_lingua'] = 'it'; } $dirAree = ''; $dirHtml = ''; if ($lingua['forzatura_direzione']==2) { $dirAree = ' style="direction:rtl;"'; $dirHtml = ' style="direction:rtl;"'; } else if ($lingua['forzatura_direzione']==1) { $dirAree = ' style="direction:rtl;"'; } echo " \n"; if($templateScelto['doctype'] == 'html5') { echo ""; } else { echo ""; } /* primo tag deve essere questo con il charset, poi author */ if($templateScelto['doctype'] == 'html5') { echo " \n"; } else { echo " \n"; echo " \n"; } echo " \n"; echo ""; if ($configurazione['modulo_multisito'] and $templateScelto['nome_sito'] != '') { $GLOBALS['titoloSito'] = $templateScelto['nome_sito']; } else { $GLOBALS['titoloSito'] = $configurazione['nome_sito']; } //costruzione del title if ($configurazione['modulo_multisito']) { $configurazione['title_doc'] = $templateScelto['title_doc']; } /* if ($sezioneNavigazione['title_code'] != '' and !$oggettoReview['id']) { // TITLE PERSONALIZZATO PER SEZIONE echo "".$sezioneNavigazione['title_code']." \n"; $titoloDC = $sezioneNavigazione['title_code']; } else { */ // TITLE NORMALE // verifico come pubblicare il titolo switch ($configurazione['title_doc']) { case 0: // normale: prima il titolo sito poi il titolo pagina/istanza if($oggettoReview['id']) { if($oggettoReviewSeo['title_code'] != '') { echo "".$GLOBALS['titoloSito']." - ".$oggettoReviewSeo['title_code']." \n"; $titoloDC = $oggettoReviewSeo['title_code']; } else { foreach((array)$oggettoLetturaCompleta->struttura as $c) { if($c['nomecampo'] == $oggettoLetturaCompleta->campo_default) { if($c['tipocampo'] == 'campoggetto' or $c['tipocampo'] == '*campoggetto') { //devo prendere il valore del campo riferimento oggetto $docRif = new documento($c['valorecampo']); $campoRif = mostraDatoOggetto($oggettoReview[$oggettoLetturaCompleta->campo_default], $c['valorecampo'],$docRif->campo_default); } else { $campoRif = $oggettoReview[$oggettoLetturaCompleta->campo_default]; } } } echo "".$GLOBALS['titoloSito']." - ".strip_tags($campoRif)." \n"; $titoloDC = $campoRif; } } else { if ($sezioneNavigazione['title_code'] != '') { echo "".$GLOBALS['titoloSito']." - ".$sezioneNavigazione['title_code']." \n"; $titoloDC = $sezioneNavigazione['title_code']; } else { echo "".$GLOBALS['titoloSito']." - ".$sezioneNavigazione['nome']." \n"; $titoloDC = $sezioneNavigazione['nome']; } } break; case 1: // CEO optimizer: prima il titolo pagina/istanza poi il titolo sito if($oggettoReview['id']) { if($oggettoReviewSeo['title_code'] != '') { echo "".$oggettoReviewSeo['title_code']." - ".$GLOBALS['titoloSito']." \n"; $titoloDC = $oggettoReviewSeo['title_code']; } else { foreach((array)$oggettoLetturaCompleta->struttura as $c) { if($c['nomecampo'] == $oggettoLetturaCompleta->campo_default) { if($c['tipocampo'] == 'campoggetto' or $c['tipocampo'] == '*campoggetto') { //devo prendere il valore del campo riferimento oggetto $docRif = new documento($c['valorecampo']); $campoRif = mostraDatoOggetto($oggettoReview[$oggettoLetturaCompleta->campo_default], $c['valorecampo'],$docRif->campo_default); } else { $campoRif = $oggettoReview[$oggettoLetturaCompleta->campo_default]; } } } echo "".strip_tags($campoRif)." - ".$GLOBALS['titoloSito']." \n"; $titoloDC = $campoRif; } } else { if ($sezioneNavigazione['title_code'] != '') { echo "".$sezioneNavigazione['title_code']." - ".$GLOBALS['titoloSito']." \n"; $titoloDC = $sezioneNavigazione['title_code']; } else { echo "".$sezioneNavigazione['nome']." - ".$GLOBALS['titoloSito']." \n"; $titoloDC = $sezioneNavigazione['nome']; } } break; case 2: // esclusivo: solo il titolo del sito echo "".$GLOBALS['titoloSito']." \n"; if($oggettoReview['id']) { if($oggettoReviewSeo['title_code'] != '') { $titoloDC = $oggettoReviewSeo['title_code']; } else { foreach((array)$oggettoLetturaCompleta->struttura as $c) { if($c['nomecampo'] == $oggettoLetturaCompleta->campo_default) { if($c['tipocampo'] == 'campoggetto' or $c['tipocampo'] == '*campoggetto') { //devo prendere il valore del campo riferimento oggetto $docRif = new documento($c['valorecampo']); $campoRif = mostraDatoOggetto($oggettoReview[$oggettoLetturaCompleta->campo_default], $c['valorecampo'],$docRif->campo_default); } else { $campoRif = $oggettoReview[$oggettoLetturaCompleta->campo_default]; } } } $titoloDC = $campoRif; } } else { $titoloDC = $sezioneNavigazione['nome']; } break; case 3: // esclusivo: solo il titolo della sezione/istanza if($oggettoReview['id']) { if($oggettoReviewSeo['title_code'] != '') { echo "".$oggettoReviewSeo['title_code']." \n"; $titoloDC = $oggettoReviewSeo['title_code']; } else { foreach((array)$oggettoLetturaCompleta->struttura as $c) { if($c['nomecampo'] == $oggettoLetturaCompleta->campo_default) { if($c['tipocampo'] == 'campoggetto' or $c['tipocampo'] == '*campoggetto') { //devo prendere il valore del campo riferimento oggetto $docRif = new documento($c['valorecampo']); $campoRif = mostraDatoOggetto($oggettoReview[$oggettoLetturaCompleta->campo_default], $c['valorecampo'],$docRif->campo_default); } else { $campoRif = $oggettoReview[$oggettoLetturaCompleta->campo_default]; } } } echo "".strip_tags($campoRif)." \n"; $titoloDC = $campoRif; } } else { if ($sezioneNavigazione['title_code'] != '') { echo "".$sezioneNavigazione['title_code']." \n"; $titoloDC = $sezioneNavigazione['title_code']; } else { echo "".$sezioneNavigazione['nome']." \n"; $titoloDC = $sezioneNavigazione['nome']; } } break; } /* } */ //////// CODICE CANONICAL if (!($_POST) AND !isset($_GET['azione']) AND $sezioneNavigazione['id'] >= 0) { // ci sono più domini, verifico se questa versione è da canonical if ($configurazione['modulo_multisito']) { $dominioVero = caricaDominio($sezioneNavigazione['id_dominio']); } else { $dominioVero = array( 'server_url' => $server_url ); } if ($sezioneNavigazione['stringa_url_parlante'] != '') { $nomeCanonical = pulisciNome($sezioneNavigazione['stringa_url_parlante']); } else { $nomeCanonical = pulisciNome($sezioneNavigazione['nome']); } $tipoCanonical = "sezione"; if ($idOggetto AND $idDocumento) { $tipoCanonical = "oggetto"; } /* if($idSezOri >= 0) { $idSezUrl = $idSezOri; } else { $idSezUrl = $sezioneNavigazione['id']; } */ if($idDocumento AND $idOggetto) { //lettura completa $parametriUrlCan = array( 'tipo' => $tipoCanonical, 'idOggetto' => $idOggetto, 'nome' => $nomeCanonical, 'idDocumento' => $idDocumento, 'idCategoria' => $idCategoria, 'server_url' => $dominioVero['server_url'] ); } else { //sezione $parametriUrlCan = array( 'tipo' => $tipoCanonical, 'idSezione' => $sezioneNavigazione['id'], 'nome' => $nomeCanonical, 'idCategoria' => $idCategoria, 'server_url' => $dominioVero['server_url'] ); } $strAncora = costruisciUrlParlante($parametriUrlCan); if($sezioneNavigazione['id'] == 0) { $strAncora = $dominioVero['server_url']; } //04/03/2019 - canonical = base? $strAncora = ($_SERVER['HTTPS'] ? 'https' : 'http')."://".$_SERVER['SERVER_NAME'].htmlentities_54($_SERVER['REQUEST_URI']); //echo "Paragone "."http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']." | ".$strAncora ; //if ($strAncora != "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']) { echo ""; //} } //META PERSONALIZZATI if(file_exists("codicepers/codice_metatag.php")) { include_once("codicepers/codice_metatag.php"); } // STANDARD DUBLIN CORE $attrPropertyCss = ''; if($templateScelto['doctype'] == 'html5') { $attrPropertyCss = ' property="stylesheet" '; echo ''; if ($configurazione['responsabile_pubb'] != '') { echo ''; } if ($sezioneNavigazione['dc_description'] != '' AND $idSezione) { echo ''; } echo ''; if ($sezioneNavigazione['dc_description'] != '' AND $idSezione) { echo ''; } if ($idSezione) { echo ''; } echo ''; echo ''; echo ''; if ($sezioneNavigazione['dc_source'] != '' AND $idSezione) { echo ''; } echo ''; if ($sezioneNavigazione['dc_relation'] != '' AND $idSezione) { echo ''; } if ($sezioneNavigazione['dc_coverage'] != '' AND $idSezione) { echo ''; } if ($configurazione['rights'] != '') { echo ''; } if ($sezioneNavigazione['tags'] != '' AND $idSezione) { // creo la lista di tag per questa sezione $elencoTags = explode(',',$sezioneNavigazione['tags']); $argomentiTemp = ''; foreach ($elencoTags as $tagTemp){ if ($argomentiTemp != '') { $argomentiTemp .= ','; } $argomentiTemp .= caricaTag($id,'nome'); } echo ''; } } else { echo " \n"; echo " \n"; echo " \n"; if ($configurazione['responsabile_pubb'] != '') { echo " \n"; } if ($sezioneNavigazione['dc_description'] != '' AND $idSezione) { echo " \n"; } echo " \n"; if ($sezioneNavigazione['dc_description'] != '' AND $idSezione) { echo " \n"; } if ($idSezione) { echo " \n"; } echo " \n"; echo " \n"; echo " \n"; if ($sezioneNavigazione['dc_source'] != '' AND $idSezione) { echo " \n"; } echo " \n"; if ($sezioneNavigazione['dc_relation'] != '' AND $idSezione) { echo " \n"; } if ($sezioneNavigazione['dc_coverage'] != '' AND $idSezione) { echo " \n"; } if ($configurazione['rights'] != '') { echo " \n"; } if ($sezioneNavigazione['tags'] != '' AND $idSezione) { // creo la lista di tag per questa sezione $elencoTags = explode(',',$sezioneNavigazione['tags']); $argomentiTemp = ''; foreach ($elencoTags as $tagTemp){ if ($argomentiTemp != '') { $argomentiTemp .= ','; } $argomentiTemp .= caricaTag($id,'nome'); } echo " \n"; } } echo " \n"; if ($configurazione['modulo_multisito'] and $templateScelto['descrizione_sito'] != '' and ($sezioneNavigazione['descrizione'] == '' OR $idSezione == 0)) { $sezioneNavigazione['descrizione'] = $templateScelto['descrizione_sito']; } else { if ($sezioneNavigazione['descrizione'] == '' OR $idSezione == 0) { $sezioneNavigazione['descrizione'] = $configurazione['descrizione_sito']; } } if($oggettoReview['id'] > 0) { if($oggettoReviewSeo['descrizione_code'] != '') { $sezioneNavigazione['descrizione'] = $oggettoReviewSeo['descrizione_code']; } } echo " \n"; if ($configurazione['modulo_multisito']) { if ($templateScelto['motori_ricerca'] and ($sezioneNavigazione['ricercabile'] or $oggettoReviewSeo['ricercabile'])) { if($oggettoReview['id'] > 0) { //lettura completa if($oggettoReviewSeo['ricercabile'] and $sezioneNavigazione['ricercabile']) { echo " \n"; } else { //se la pagina non è indicizzabile o se l'istanza non è indicizzabile metto non indicizzabile echo " \n"; } } else { echo " \n"; } if ($templateScelto['keywords'] == '' and $sezioneNavigazione['keywords'] == '') { $sezioneNavigazione['keywords'] = $configurazione['keywords']; } else if ($templateScelto['keywords'] != '' and $sezioneNavigazione['keywords'] == '') { $sezioneNavigazione['keywords'] = $templateScelto['keywords']; } if($oggettoReview['id'] > 0) { if($oggettoReviewSeo['keywords'] != '') { $sezioneNavigazione['keywords'] = $oggettoReviewSeo['keywords']; } } echo " \n"; } else { echo " \n"; } } else { if ($configurazione['motori_ricerca'] and ($sezioneNavigazione['ricercabile'] or $oggettoReviewSeo['ricercabile'])) { //la lettura completa può essere indicizzabile solo se la pagina che la contiene è indicizzabile if($oggettoReview['id'] > 0) { //lettura completa if($oggettoReviewSeo['ricercabile'] and $sezioneNavigazione['ricercabile']) { echo " \n"; } else { //se la pagina non è indicizzabile o se l'istanza non è indicizzabile metto non indicizzabile echo " \n"; } } else { echo " \n"; } if($oggettoReviewSeo['keywords'] != '') { echo " \n"; } else { if ($sezioneNavigazione['keywords'] != '' and $idSezione != 0) { //$sezioneNavigazione['keywords'] = $configurazione['keywords']; echo " \n"; } else { echo " \n"; } } } else { echo " \n"; } } echo " \n"; echo " \n"; echo " \n"; if($datiUser['sessione_loggato'] or $_POST['https']) { echo " \n"; } else { echo " \n"; } if(file_exists("codicepers/funzioni_personalizzate_js.php")) { echo " \n"; } if($configurazione['jquery_includi'] == 1 or ($configurazione['jquery_includi'] == 2 AND ($datiUser['sessione_loggato'] AND ($datiUser['sessione_admingrafica'] OR $datiUser['sessione_admininfo'])))) { echo ''; } if($configurazione['bootstrap_versione'] != '0') { echo ''; echo ''; } if($configurazione['jquery_includi'] == 1 or ($configurazione['jquery_includi'] == 2 AND ($datiUser['sessione_loggato'] AND ($datiUser['sessione_admingrafica'] OR $datiUser['sessione_admininfo'])))) { if($configurazione['jquery_versione_ui'] != '') { echo ''; if($_GET['webapp'] OR ($idDocumento AND !$idOggetto) OR ($datiUser['sessione_loggato'] AND ($datiUser['sessione_admingrafica'] OR $datiUser['sessione_admininfo'])) OR $configurazione['jquery_includi'] == 1) { echo ''; } } } /* if($configurazione['jquery_includi'] == 1 or ($configurazione['jquery_includi'] == 2 AND ($datiUser['sessione_loggato'] AND ($datiUser['sessione_admingrafica'] OR $datiUser['sessione_admininfo'])))) { echo ''; if($_GET['webapp'] OR ($idDocumento AND !$idOggetto) OR ($datiUser['sessione_loggato'] AND ($datiUser['sessione_admingrafica'] OR $datiUser['sessione_admininfo'])) OR $configurazione['jquery_includi'] == 1) { echo ''; } } */ if($configurazione['fontawesome_includi'] == 1) { if(file_exists("codicepers/fontawesomepers/font_awesome_pers.php")) { include_once("codicepers/fontawesomepers/font_awesome_pers.php"); } else { echo ''; } } $tipo_calendario = $configurazione['tipo_calendario'] == '' ? 'default' : $configurazione['tipo_calendario']; if($tipo_calendario == 'default') { echo " \n"; } else { echo " \n"; } if($datiUser['sessione_loggato'] or $_POST['https']) { echo " \n"; } else { if($templateScelto['includiCodiceEditorHtml'] == '1') { echo " \n"; } } //Inclusioni SPID if ($configurazione['modulo_spid']) { //echo ''; echo " \n"; echo " \n"; echo " \n"; } if ($configurazione['player_video'] == 'flowplayer') { if($datiUser['sessione_loggato'] or $_POST['https']) { echo " \n"; } else { echo " \n"; } } if($configurazione['meta_favicon']) { if($templateScelto['favicon'] > 0) { $favicon = caricaMediaParziale($templateScelto['favicon']); echo ""; } else { echo ""; } } if ($templateScelto['webfonts_google'] != '') { if(($datiUser['sessione_loggato'] or $_POST['https']) and $server_url != $server_s_url) { $templateScelto['webfonts_google'] = str_replace("http://", "https://", $templateScelto['webfonts_google']); } echo $templateScelto['webfonts_google']; } // verifico se importare il css o includerlo if ($sezioneNavigazione['css'] != 'stili') { if ($sezioneNavigazione['css'] == 'alta_leggibilita') { // ALTA LEGGIBILITA echo " \n"; echo " \n"; } else if ($sezioneNavigazione['css'] == 'nessuno') { // NESSUNO STILE, USO SOLO QUELLO PER LA STAMPA echo " \n"; echo " \n"; } else { //inclusione dei css importati nelle personalizzazioni include_once('classi/admin_csstemplate.php'); $cssTemplate = new cssTemplate(); $cssInclusi = $cssTemplate->caricaListaCssTemplateAttivi($templateScelto['id']); foreach ((array)$cssInclusi as $c) { if ($c['tipo'] == 'file') { echo " \n"; } else { echo " \n"; } } //css dei moduli colorbox, lightbox e simili echo " "; // STILE PERSONALIZZATO echo " \n"; echo " \n"; } } else { // CSS CLASSICO //echo ""; if ($datiUser['sessione_admingrafica'] and $datiUser['sessione_loggato']) { $tipo = 'template'; } else if ($datiUser['sessione_admininfo'] and $datiUser['sessione_loggato']) { $tipo = 'info'; } else { $tipo = 'nessuna'; } //inclusione dei css importati nelle personalizzazioni include_once('classi/admin_csstemplate.php'); $cssTemplate = new cssTemplate(); $cssInclusi = $cssTemplate->caricaListaCssTemplateAttivi($templateScelto['id']); foreach ((array)$cssInclusi as $c) { if ($c['tipo'] == 'file') { echo " \n"; } else { echo " \n"; } } if(file_exists('personalizzazioni/css/stili_editor.css')) { echo " \n"; } //Inclusioni Restyling if ($configurazione['modulo_restyling']) { echo " \n"; echo " \n"; echo " \n"; echo " \n"; } //css dei moduli colorbox, lightbox e simili echo " "; if(file_exists("codicepers/stiliPersonalizzatiPre.php")) { echo " \n"; } //verifico se il template è un url if ($templateScelto['tipo_template'] == 'url') { //ottimizzare per la cache echo " \n"; echo " \n"; } else { // verifico la cache if (!$configurazione['cache_stile'] or isset($_GET['comando'])) { // uso sempre lo stile dinamico echo " \n"; echo " \n"; $nomeFileCSS = $server_url."stili.php?id=".$templateScelto['id']."&skin=".$datiUser['admin_skin']."&tipo=".$datiUser['admin_interfaccia']."&id_lingua=".$datiUser['sessione_idlingua']."&css=".$cssScelto['id']."&admin=".$tipo; } else { // uso sempre la cache normale $stileHttps = ""; if($datiUser['sessione_loggato'] or $_POST['https']) { $stileHttps = "s-"; } $nomeFileStile = "stili-".$stileHttps.$datiUser['sessione_idlingua']."-".$cssScelto['id']."-".$templateScelto['id']."-".$datiUser['admin_skin']."-".$datiUser['admin_interfaccia']."-".$tipo.".css"; $nomeFileStileStampa = "stili_stampa-".$datiUser['sessione_idlingua']."-".$cssScelto['id']."-".$templateScelto['id'].".css"; if (file_exists("./cache/css/".$nomeFileStile)) { if($datiUser['sessione_loggato'] or $_POST['https']) { echo " \n"; echo " \n"; } else { echo " \n"; echo " \n"; } $nomeFileCSS = $server_url."cache/css/".$nomeFileStile; } else { //echo "il file: ".$nomeFileStile." non esiste"; // creo il file di cache per la prima vota if($datiUser['sessione_loggato'] or $_POST['https']) { echo " \n"; echo " \n"; $nomeFileCSS = $server_s_url."stili.php?id=".$templateScelto['id']."&skin=".$datiUser['admin_skin']."&tipo=".$datiUser['admin_interfaccia']."&id_lingua=".$datiUser['sessione_idlingua']."&css=".$cssScelto['id']."&admin=".$tipo; } else { echo " \n"; echo " \n"; $nomeFileCSS = $server_url."stili.php?id=".$templateScelto['id']."&skin=".$datiUser['admin_skin']."&tipo=".$datiUser['admin_interfaccia']."&id_lingua=".$datiUser['sessione_idlingua']."&css=".$cssScelto['id']."&admin=".$tipo; } } unset($nomeFileStile,$nomeFileStileStampa); } unset($tipo); } if(file_exists("codicepers/stiliPersonalizzatiCssFile.php")) { include_once("codicepers/stiliPersonalizzatiCssFile.php"); } if(file_exists("codicepers/stiliPersonalizzati.php")) { echo " \n"; } } echo " \n"; if ($templateScelto['nome_file']=='index') { require('./template/index.tmp'); } else if ($templateScelto['tipo_template']=='personalizzato') { if (!file_exists('./personalizzazioni/template/'.$lingua['prefisso_template'].$templateScelto['nome_file']) ) { // il file template non esiste $contPer= new contenutoPers('messaggio','ATTENZIONE: per questa sezione hai selezionato un template con file mancante. Correggere il template "'.$templateScelto['nome'].'" oppure modificare il template di visualizzazione nella pubblicazione delle informazioni per questa sezione.'); require('./template/index.tmp'); } else { require('./template/index_esterno.tmp'); } } else { //template da url require('./template/index_esterno_body.tmp'); } echo ""; //META PERSONALIZZATI if(file_exists("codicepers/codice_metatag_post_footer.php")) { include_once("codicepers/codice_metatag_post_footer.php"); } } else if ($erogaHtml) { ///////////////////////////////////////////////////////////////////TEMPLATE RISERVATO//////////////////////////////////////////////////////////////////////////// echo " \n"; echo " \n"; echo ""; echo ""; echo "".$configurazione['nome_sito']." - Contenuto non disponibile \n"; echo " \n"; echo " \n"; echo ""; echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; echo " \n"; if($configurazione['meta_favicon']) { if($templateScelto['favicon'] > 0) { $favicon = caricaMediaParziale($templateScelto['favicon']); echo ""; } else { echo ""; } } echo " \n"; echo ""; // qui devo inserire il controllo per la richiesta di autenticazione echo "
".$configurazione['msg_riservato']."
"; echo ""; echo ""; }// fine else mobile e permessi template /////////////////////////////////// FINE CACHE SEZIONI // modifica del 2018-12-18 - beta - non funziona ancora bene con i dati in POST if ($configurazione['cache_sezioni'] and !$datiUser['sessione_loggato'] and $erogaHtml and !isset($_GET['azione']) and !isset($_POST['cerca_oggetto']) and !isset($_GET['lettera']) and !$_GET['inizio'] and !$sezioneNavigazione['impedisci_cache'] and $sezioneNavigazione['css'] == 'stili') { // DEVO CREARE IL FILE DI CACHE PER QUESTA SEZIONE $contenutoCache = ob_get_clean(); ob_end_clean(); // creo il file $fd = fopen("./cache/sezioni/".$nomeCache, "w+"); // Scrive $somecontent nel file aperto. if (!fwrite($fd, $contenutoCache)===FALSE) { // creazione //echo $contenutoCache; } else { motoreLog("avviso","Errore in creazione cache. Riprovare in un secondo tempo",FALSE); } fclose ($fd); } include('./inc/chiusura.php'); ?>