$smarty->assign("contents", $text); $smarty->assign("url_cms", $cms->url_cms()); $smarty->assign("url_smartytpl", $cms->url_smartytpl()); $smarty->assign("cmsversion", $cms->cmsversion()); $smarty->display("admin/index/index2.tpl"); exit; } // Stampo i dati attuali if (!isset($_POST['modificaprofilo'])) { $db->connettidb(); // Mi connetto al database $query = $db->query("SELECT email, avatar FROM utenti WHERE nickname='{$nickname}'"); $db->disconnettidb(); // Mi disconnetto dal database while ($riga = $db->estrai($query)) { $email = $func->rescape($riga->email); $avatar = $func->rescape($riga->avatar); } } // Visualizzo il form di recupero $text = 'Tramite questo form puoi modificare il tuo profilo.<br /><br /> <form action="" method="post"> Email<br /> <input name="email" type="text" value="' . $email . '" /><br /><br /> Avatar<br /> <input name="avatar" type="text" value="' . $avatar . '" /><br /><br /> <input name="modificaprofilo" type="submit" value="Modifica profilo" /><br /> </form>'; $smarty->assign("titolo", "Modifica profilo"); $smarty->assign("cookie", $db->auth($_COOKIE[$func->cookie()])); $smarty->assign("grado", $db->grado($_COOKIE[$func->cookie()]));
$cms = new Ocarina(); $db = new MySQL(); $func = new Functions(); $data = new Date(); /* L' invio delle news */ if (isset($_POST['creanews'])) { // Creo le variabili con i dati $codice = $_COOKIE[$func->cookie()]; $autore = $db->nickname($codice); $titolo = $func->escape($_POST['titolo']); $categoria = $func->escape($_POST['categoria']); $news = $func->authescape($_POST['news']); $minititolo = $func->permalink($titolo); $ora = $data->ore_min(':'); $data = $data->data('-'); $striptitolo = $func->rescape($titolo); // Rimuovo gli slashes per il controllo nel db // Controllo se nel database non ci sia una news con un titolo uguale $db->connettidb(); $query = $db->query("SELECT titolo FROM news WHERE titolo = '{$titolo}'"); $conta = $db->conta($query); // Se esiste avviso e blocco lo script if ($conta > 0) { $text = 'Esiste già una news con lo stesso titolo. Prova a modificarlo e riprova.'; $smarty->assign("titolo", "Crea news"); $smarty->assign("cookie", $db->auth($_COOKIE[$func->cookie()])); $smarty->assign("grado", $db->grado($_COOKIE[$func->cookie()])); $smarty->assign("contents", $text); $smarty->assign("url_cms", $cms->url_cms()); $smarty->assign("url_smartytpl", $cms->url_smartytpl()); $smarty->assign("cmsversion", $cms->cmsversion());
$db = new MySQL(); $func = new Functions(); /* START */ // Mi connetto al database $db->connettidb(); // Effettuo la query per prelevare i dati $query = $db->query("SELECT nickname FROM utenti"); // Preparo la tabella $text = '<div align="center"><h2>Lista utenti</h2><br />'; $text .= '<table align="center" border="0"> <tr> <td><b>Nickname</b></td> <td><b>Profilo</b></td> </tr>'; while ($riga = $db->estrai($query)) { $nickname = $func->rescape($riga->nickname); $text .= ' <tr> <td>' . $nickname . '</td> <td><a href="profilo.php?nickname=' . $nickname . '">Accedi</a></td> </tr>'; } $text .= '</table>'; // Mi disconnetto dal database $db->disconnettidb(); // Controllo se l'utente è loggato o meno per configurare il menù if ($func->logged() == 1 || $func->logged() == 2) { $smarty->assign("cookie", $db->auth($_COOKIE[$func->cookie()])); $smarty->assign("grado", $db->grado($_COOKIE[$func->cookie()])); } $smarty->assign("titolo", $profilo);
$db = new MySQL(); $func = new Functions(); // Poichè i processi di prima finivano con un exit, se siamo qui è solo perchè siamo loggati $codice = $_COOKIE[$func->cookie()]; // Mi connetto al database $db->connettidb(); // Prelevo le news $query = $db->query("SELECT * FROM news"); $query2 = $db->query("SELECT * FROM news"); // Creo la select con tutte le news /* Cancella commento */ $text = '<form method="post" action="cancellacommento.php"> <div align="center"> Cancella commento dalla news: <select name="minititolo">'; while ($riga = $db->estrai($query)) { $text .= '<option value="' . $func->rescape($riga->minititolo) . '">' . $func->rescape($riga->titolo) . '</option>'; } $text .= '</select> <input name="cancellacommento" type="submit" value="Cancella"></form><br /><br />'; /* Modifica commento */ $text .= '<form method="post" action="modificacommento.php"> <div align="center"> Modifica commento dalla news: <select name="minititolo">'; while ($riga2 = $db->estrai($query2)) { $text .= '<option value="' . $func->rescape($riga2->minititolo) . '">' . $func->rescape($riga2->titolo) . '</option>'; } $text .= '</select> <input name="modificacommento" type="submit" value="Modifica">'; // Mi disconnetto dal database $db->disconnettidb(); $smarty->assign("titolo", "Modifica commento");
$smarty->display("admin/index/index2.tpl"); exit; } // Genero una nuova password con l'RNG e la inserisco nel database $rng = rng(); // Creo la password $nuovapassword = $func->hash($rng); // La passo per un algoritmo di hash $db->connettidb(); // Mi connetto al database $query = $db->query("UPDATE utenti SET password='******' WHERE nickname='{$nickname}' AND email='{$email}'"); $db->disconnettidb(); // Mi disconnetto dal database // Invio la password via email $mittente = $cms->email(); $destinatario = $func->rescape($email); $oggetto = 'Recupero password - ' . $cms->nomesito(); $testo = 'Ciao ' . $nickname . '. Mediante il servizio Recupera password di ' . $cms->nomesito() . ' hai richiesto il recupero della tua password. Essa è stata generata automaticamente e potrai modificarla tramite l\'apposita pagina Modifica password. La tua password è la seguente: ' . $rng . ' ATTENZIONE: Se non sei tu il richiedente della password, ti chiediamo di ignorare questa email. A presto, ' . $cms->nomesito() . '.'; mail($mittente, $destinatario, $oggetto, $testo); $text = 'La password è stata generata ed è stata inviata al tuo indirizzo email.'; // Visualizzo la pagina $smarty->assign("titolo", "Recupera password");
// Url templates $smarty->display($cms->skin() . "/index/404.tpl"); // La pagina degli errori $db->disconnettidb(); // Posso disconnettermi dal database exit; } $query3 = $db->query("SELECT titolo, minititolo FROM news WHERE categoria = '{$categoria}'"); $query4 = $db->query("SELECT titolo, minititolo FROM pagine WHERE categoria = '{$categoria}'"); // Se ci sono news nella categoria le stampa $conta = $db->conta($query3); // Se ci sono sezioni nella categoria le stampa $conta2 = $db->conta($query4); if ($conta > 0) { while ($riga = $db->estrai($query3)) { $minititolo = $func->rescape($riga->minititolo); $titolo = $func->rescape($riga->titolo); $categorie .= '<a href="' . $cms->url_index() . 'news.php?titolo=' . $minititolo . '">' . $titolo . '</a><br />'; } } if ($conta2 > 0) { while ($riga = $db->estrai($query4)) { $minititolo = $func->rescape($riga->minititolo); $titolo = $func->rescape($riga->titolo); $categorie .= '<a href="' . $cms->url_index() . 'sezioni.php?titolo=' . $minititolo . '">' . $titolo . '</a><br />'; } } // Visualizzo la pagina $smarty->assign("titolo", 'Categoria: ' . $categoria . ' » ' . $cms->nomesito()); // Titolo della pagina $smarty->assign("navigatore", $navigatore);
$smarty->assign("url_cms", $cms->url_cms()); $smarty->assign("url_smartytpl", $cms->url_smartytpl()); $smarty->assign("cmsversion", $cms->cmsversion()); $smarty->display("admin/index/index.tpl"); } // Poichè i processi di prima finivano con un exit, se siamo qui è solo perchè siamo loggati $codice = $_COOKIE[$func->cookie()]; // Mi connetto al database $db->connettidb(); // Catturo il minititolo della news da modificare $minititolo = $func->escape($_POST['minititolo']); // Prelevo i dati della news attuale $query2 = $db->query("SELECT * FROM news WHERE minititolo='{$minititolo}'"); // Rinchiudo tutto nelle variabili while ($riga = $db->estrai($query2)) { $autore = $func->rescape($riga->autore); $titolo = $func->rescape($riga->titolo); $news = $func->rescape($riga->news); $categoria = $func->rescape($riga->categoria); } $text = ' <form method="post" action=""> Titolo:<br /><input name="newtitolo" type="text" size="30" value="' . $titolo . '"><br /> Categoria:<br /><select name="newcategoria">'; // Creo una select con tutte le categorie $result = $db->query("SHOW COLUMNS FROM news LIKE 'categoria'"); // Conto i risultati $righe = $db->conta($result); for ($i = 0; $i < $righe; $i++) { $row = mysql_fetch_row($result); $options = explode("','", preg_replace("/(enum|set)\\('(.+?)'\\)/", "\\2", $row[1]));
include_once "etc/class.Autokeyword.php"; include_once "etc/function.Autodescription.php"; // Istanzio le classi $cms = new Ocarina(); $db = new MySQL(); $func = new Functions(); // Mi connetto al database $db->connettidb(); // Scarico la sezione $titolo_get = $func->escape($_GET['titolo']); $query = $db->query("SELECT * FROM pagine WHERE minititolo='{$titolo_get}'"); $righe = $db->conta($query); // Se la sezione esiste la prelevo if ($righe > 0) { while ($riga = $db->estrai($query)) { $titolo = $func->rescape($riga->titolo); $contenuto = bbcode($func->rescape($riga->contenuto)); } $description = autodescription($contenuto, 120); // Descrizione di 120 caratteri $setkeyword['content'] = $contenuto; // Testo $setkeyword['min_word_length'] = 5; // Caratteri minimi singola keyword $setkeyword['min_word_occur'] = 2; // Presenza delle parole nel testo perchè diventino keyword $setkeyword = new autokeyword($setkeyword, "iso-8859-1"); $keyword = $setkeyword->parse_words(); // Visualizzo la pagina $smarty->assign("titolo", $titolo . ' » ' . $cms->nomesito()); // Titolo della pagina
$func = new Functions(); $email = new Emailer(); /* Invia la newsletter */ if (isset($_POST['invianewsletter'])) { // Prelevo l'oggetto $oggetto = $_POST['oggetto']; // Prelevo il contenuto $contenuto = $_POST['contenuto']; // Prelevo l'email del mittente $mittente = $cms->email(); // Mi connetto al database $db->connettidb(); // Prelevo tutti gli indirizzi email e spedisco $query = $db->query("SELECT email FROM utenti"); while ($riga = $db->estrai($query)) { $destinatario = $func->rescape($riga->email); $email->email($mittente, $destinatario, $oggetto, $contenuto); } // Mi disconnetto dal databse $db->disconnettidb(); // Aggiorno i log se sono attivi if ($cms->cmslog() == 1) { $codice = $_COOKIE[$func->cookie()]; $azione = 'inviato una newsletter)'; $db->log($codice, $azione); } // Mando l' avviso $text = 'La newsletter è stata inviata.'; $smarty->assign("titolo", "Invia newsletter"); $smarty->assign("cookie", $db->auth($_COOKIE[$func->cookie()])); $smarty->assign("grado", $db->grado($_COOKIE[$func->cookie()]));
// Prelevo gli utenti e li stampo nella tabella $db->connettidb(); $text = '<table align="center" border="0"> <tr> <td><b>Nickname</b></td> <td><b>Grado</b></td> </tr>'; $query = $db->query("SELECT nickname, grado FROM utenti ORDER BY grado DESC"); while ($riga = $db->estrai($query)) { $nickname = $riga->nickname; $grado = $riga->grado; $text .= '<tr> <td>' . $nickname . '</td> <td>' . $grado . '</td> </tr>'; } $text .= '</table><br /><br /> Con il seguente form puoi modificare il grado di un utente registrato.<br /><br /> <form action="" method="post"> <div align="center"> Nickname<br /> <select name="nicknameutente">'; // Creo una query con i gradi e una con gli utenti $query = $db->query("SHOW COLUMNS FROM utenti LIKE 'grado'"); $query2 = $db->query("SELECT nickname FROM utenti"); // Stampo i nickname nella select while ($riga = $db->estrai($query2)) { $text .= '<option value="' . $func->rescape($riga->nickname) . '">' . $func->rescape($riga->nickname) . '</option>'; } $text .= '</select><br /><br /> Grado<br />
// Posso disconnettermi dal database exit; } $skin = $_POST['skin']; $template = $_POST['template']; // Apro il file $apritemplate = fopen($cms->dir_smarty() . '/templates/' . $skin . '/' . $template, "r"); // Lo leggo $leggitemplate = fread($apritemplate, filesize($cms->dir_smarty() . '/templates/' . $skin . '/' . $template)); // Lo chiudo fclose($apritemplate); // Se arriva la skin modificata si modifica if (isset($_POST['editaskin'])) { $skin = $_POST['skin']; $template = $_POST['template']; $newtemplate = $func->rescape($_POST['newtemplate']); // Apro il file $apritemplate2 = fopen($cms->dir_smarty() . '/templates/' . $skin . '/' . $template, "w"); // Ci scrivo i dati fwrite($apritemplate2, ''); fwrite($apritemplate2, $newtemplate); // Lo chiudo fclose($apritemplate2); $text = 'Il template è stato modificato.'; // Aggiorno i log se sono attivi if ($cms->cmslog() == 1) { $codice = $_COOKIE[$func->cookie()]; $azione = 'modificato una skin'; $db->log($codice, $azione); } // Visualizzo la pagina
<?php /* Visualizza gli annunci */ // Includo le classi principali include_once "../../core/class.Ocarina.php"; include_once "../../core/class.MySQL.php"; include_once "../../core/class.Functions.php"; include_once "../../rendering/config.php"; include_once "../../etc/function.BBCode.php"; // Istanzio le classi $cms = new Ocarina(); $db = new MySQL(); $func = new Functions(); // Poichè i processi di prima finivano con un exit, se siamo qui è solo perchè siamo loggati $query = $db->query("SELECT * FROM annunci"); while ($riga = $db->estrai($query)) { $autore = $func->rescape($riga->autore); $titolo = $func->rescape($riga->titolo); $annuncio = bbcode($func->rescape($riga->annuncio)); $data = $func->rescape($riga->data); $ora = $func->rescape($riga->ora); $text .= '<fieldset><legend><i>' . $titolo . '</i> - Creato da <a href="' . $cms->url_cms() . 'profilo.php?nickname=' . $autore . '">' . $autore . '</a> il ' . $data . ' alle ' . $ora . '. </legend>' . $annuncio . '</fieldset><br />'; } $smarty->assign("titolo", "Annunci"); $smarty->assign("cookie", $db->auth($_COOKIE[$func->cookie()])); $smarty->assign("grado", $db->grado($_COOKIE[$func->cookie()])); $smarty->assign("contents", $text); $smarty->assign("url_cms", $cms->url_cms()); $smarty->assign("url_smartytpl", $cms->url_smartytpl()); $smarty->assign("cmsversion", $cms->cmsversion()); $smarty->display("admin/index/index.tpl");
$text = 'Tramite questo form puoi eliminare una categoria.<br /> Attenzione però, facendo questo eliminerai automaticamente anche tutte le sezioni che si trovano in essa!<br /><br /> <form method="post" action=""> Scegli la categoria da eliminare <select name="categoria">'; // Creo una select con tutte le categorie $result = $db->query("SHOW COLUMNS FROM pagine LIKE 'categoria'"); // Conto i risultati $righe = $db->conta($result); for ($i = 0; $i < $righe; $i++) { $row = mysql_fetch_row($result); $options = explode("','", preg_replace("/(enum|set)\\('(.+?)'\\)/", "\\2", $row[1])); $num = count($options); for ($g = 0; $g < $num; $g++) { if ($categoria == $options[$g]) { $text .= '<option value="' . $func->rescape($options[$g]) . '" SELECTED>' . $func->rescape($options[$g]) . '</option>'; } $text .= '<option value="' . $func->rescape($options[$g]) . '" ' . $selected . '>' . $func->rescape($options[$g]) . '</option>'; } } // Mi disconnetto dal database $db->disconnettidb(); $text .= '<br /> <input type="submit" value="Elimina"> </form>'; $smarty->assign("titolo", "Elimina categorie"); $smarty->assign("cookie", $db->auth($_COOKIE[$func->cookie()])); $smarty->assign("grado", $db->grado($_COOKIE[$func->cookie()])); $smarty->assign("contents", $text); $smarty->assign("url_cms", $cms->url_cms()); $smarty->assign("url_smartytpl", $cms->url_smartytpl());
include_once "etc/function.Autodescription.php"; // Istanzio le classi $cms = new Ocarina(); $db = new MySQL(); $func = new Functions(); $datatime = new Date(); // Mi connetto al database $db->connettidb(); // Scarico la news $titolo_get = $func->escape($_GET['titolo']); $query = $db->query("SELECT * FROM news WHERE minititolo='{$titolo_get}'"); $righe = $db->conta($query); // Se la news esiste la prelevo if ($righe > 0) { while ($riga = $db->estrai($query)) { $autore = $func->rescape($riga->autore); $titolo = $func->rescape($riga->titolo); $minititolo = $func->rescape($riga->minititolo); $news = bbcode($func->rescape($riga->news)); $categoria = $func->rescape($riga->categoria); $data = $func->rescape($riga->data); $ora = $func->rescape($riga->ora); } $data_attuale = $datatime->data("-"); $data_attuale2 = explode("-", $data_attuale); // Date if ($data == $data_attuale) { $data = 'oggi'; } elseif ($r["data"] == $data_attuale2[0] - 1) { $data = 'ieri'; } elseif ($r["data"] == $data_attuale2[0] - 2) {
$smarty->assign("cookie", $db->auth($_COOKIE[$func->cookie()])); // Cookie $smarty->assign("nickname", $db->nickname($_COOKIE[$func->cookie()])); // Nickname $smarty->assign("email", $db->email($_COOKIE[$func->cookie()])); // Email $smarty->assign("grado", $db->grado($_COOKIE[$func->cookie()])); // Grado $smarty->assign("url_templates", $cms->url_smartytpl()); // Url templates $smarty->display($cms->skin() . "/index/404.tpl"); exit; } // Altrimenti stampo i risultati while ($righe = $db->estrai($query)) { $risultati .= '» <a href="' . $cms->url_index() . 'sezioni.php?titolo=' . $func->rescape($righe->minititolo) . '">' . $func->rescape($righe->titolo) . '</a><br />'; } while ($righe2 = $db->estrai($query2)) { $risultati .= '» <a href="' . $cms->url_index() . 'news.php?titolo=' . $func->rescape($righe2->minititolo) . '">' . $func->rescape($righe2->titolo) . '</a><br />'; } // Visualizzo la pagina $smarty->assign("titolo", "Risultati ricerca » " . $cms->nomesito()); // Titolo della pagina $smarty->assign("risultati", $risultati); // I risultati della ricerca $smarty->assign("description", $cms->description()); // La descrizione $smarty->assign("keywords", $cms->keywords()); // Le keywords $smarty->assign("numsezioni", $db->numsezioni()); // Numero sezioni
$result = array(); $query2 = $db->query("SELECT * FROM news ORDER BY id DESC LIMIT " . $inizio . "," . $max); $data = $data->data("-"); $data2 = explode("-", $data); // Date while ($r = mysql_fetch_array($query2)) { if ($r["data"] == $data) { $r["data"] = 'oggi'; } elseif ($r["data"] == $data2[0] - 1) { $r["data"] = 'ieri'; } elseif ($r["data"] == $data2[0] - 2) { $r["data"] = 'l\' altro ieri'; } else { $r["data"] = 'il giorno ' . $r["data"]; } $results[] = array("autore" => $func->rescape($r["autore"]), "titolo" => $func->rescape($r["titolo"]), "minititolo" => $func->rescape($r["minititolo"]), "keyword" => $func->rescape($r["keyword"]), "categoria" => $func->rescape($r["categoria"]), "data" => $func->rescape($r["data"]), "ora" => $func->rescape($r["ora"]), "autorelink" => '<a href="' . $cms->url_cms() . 'profilo.php?nickname=' . $r["autore"] . '">' . $r["autore"] . '</a>', "categorialink" => '<a href="' . $cms->url_index() . 'categoria.php?cat=' . $r["categoria"] . '">' . $r["categoria"] . '</a>.', "linktitolo" => '<a href="' . $cms->url_index() . 'news.php?titolo=' . $r["minititolo"] . '">' . $r["titolo"] . '</a>', "scrivinews" => bbcode($r["news"]) . '<br />', "commenti" => '<a href="' . $cms->url_index() . 'news.php?titolo=' . $r["minititolo"] . '">Lascia un commento</a>'); $navigatore = $p->precedenteSuccessiva($_GET['p'], $pagine); } // Visualizzo la pagina $smarty->assign("titolo", $cms->nomesito()); // Titolo della pagina $smarty->assign("navigatore", $navigatore); // Il navigatore per avanzare con le pagine delle news $smarty->assign("scrivinews", $results); // L'array contenente le news $smarty->assign("description", $cms->description()); // La descrizione $smarty->assign("keywords", $cms->keywords()); // Le keywords $smarty->assign("numsezioni", $db->numsezioni()); // Numero sezioni
include_once "../core/class.MySQL.php"; include_once "../core/class.Functions.php"; include_once "../rendering/config.php"; // Istanzio le classi $cms = new Ocarina(); $db = new MySQL(); $func = new Functions(); if (!isset($_GET['nickname']) and !isset($_POST['nickname'])) { $text = '<form action="" method="post"> Utente:<br /><select name="nickname">'; // Mi connetto al database $db->connettidb(); // Creo una select con tutte le categorie $query = $db->query("SELECT nickname FROM utenti"); while ($riga = $db->estrai($query)) { $text .= '<option value="' . $func->rescape($riga->nickname) . '">' . $func->rescape($riga->nickname) . '</option>'; } // Mi disconnetto dal database $db->disconnettidb(); $text .= '</select><input type="submit" name="submit" value="Accedi"> </form>'; $nickname = 'Profilo'; // Per il titolo della pagina } elseif (isset($_GET['nickname']) or isset($_POST['nickname'])) { // Prelevo il nickname if ($_GET['nickname']) { $nickname = $func->escape($_GET['nickname']); } elseif ($_POST['nickname']) { $nickname = $func->escape($_POST['nickname']); } // Mi connetto al database
$minititolo = $func->escape($_POST['minititolo']); // Mi connetto al database $db->connettidb(); // Creo le query per estrarre i commenti $query = $db->query("SELECT * FROM commenti WHERE titolo='{$minititolo}'"); $query2 = $db->query("SELECT * FROM commenti WHERE titolo='{$minititolo}'"); $query3 = $db->query("SELECT * FROM commenti WHERE titolo='{$minititolo}'"); // Creo una tabella con i commenti e gli id $text = '<div align="center"><table border="1"> <tr> <td><b>Id</b></td> <td><b>Autore</b></td> <td><b>Commento</b></td>'; while (($riga = $db->estrai($query)) && ($riga2 = $db->estrai($query2)) && ($riga3 = $db->estrai($query3))) { $text .= '<tr>'; $text .= '<td>' . $func->rescape($riga->id) . '</td>'; $text .= '<td>' . $func->rescape($riga2->autore) . '</td>'; $text .= '<td>' . $func->rescape($riga2->testo) . '</td>'; $text .= '</tr>'; } $text .= '</table></div><br /><br />'; // Mi disconnetto dal database $db->disconnettidb(); // Creo il form dove cancellare il commento dando l' id $text .= '<form method="post" action=""> Scrivi l\'id relativo alla news che vuoi modificare<br /><input name="id" type="text"><br /> Nuovo commento<br /> ' . $func->textareabbcode('newcommento', '') . '<br /> <input name="modificaid" type="submit" value="Modifica"> </form>'; $smarty->assign("titolo", "Modifica commento"); $smarty->assign("cookie", $db->auth($_COOKIE[$func->cookie()]));