".htmlentities($pseudo)."\$".$mb_infos['create']."
".htmlentities($xpseudo)."".date("d/m :: H:i",$time)." ".$mb_infos['citation']." ".$mb_infos['logo']." $topic_message \n";
$xpseudo = addslashes($xpseudo);
if ($top == 1) $fast_type = "w"; else $fast_type = "a";
fast($topdir."F".$f."T".$topic_nb.$ext,$fast_type,$topic_txt);
if ($top == 1) {
$new_topics = "TC($topic_nb,0,0,$smiley_nb,\"".html($xpseudo,0)."\",\"".html(addslashes($topic_title),0)."\",\"".html($xpseudo,0)." le ".date("d/m, H:i",$time)."\");\n";
$new_topics .= clearfile(join("\n",$view_array));
if ($lock) power("dnf/f/topics_$f.txt",$new_topics); else fast("dnf/f/topics_$f.txt","w",$new_topics);
$ft = @file("dnf/f/fast_topics.txt");
$ix = -1; $zx = 4; while ($ix < $zx) $pv_tpcs .= $ft[$ix++];
$pv_tpcs = ereg_replace("(\r|\n)+","\n",$pv_tpcs);
fast("dnf/f/fast_topics.txt","w","".htmlentities($pseudo)."/ ".ereg_replace ("[^ ]{20,20}", "\\1", ereg_replace ("[^0-9a-zèéêëà&; ]", "", strtolower($topic_title)))." \n".$pv_tpcs);}
else $topic_place = reponses("+",$post,$f,$xpseudo);
if (($mailthis || $top == 2) && $mailme) mailme('F'.$f.'T'.$topic_nb,$mailthis,floor($topic_place/$post_pages));
function headers($url) {global $header,$thisurl;
if(headers_sent() && $header==1) $header=3;
if(headers_sent() && $header==0) $header=2;
switch ($header) {
case 1: header("Location: $thisurl$url"); break;
case 2: echo ""; break;
case 3: echo ""; break;
default: header("Location: $url"); break;}}
if ($top == 1) {logit($pseudo,'AT:F'.$f.'T'.$topic_nb.'P'.$post_nb,1); headers("?f=$f&cknb=$topic_nb&ckval=0");}
else {logit($pseudo,'AP:F'.$f.'T'.$topic_nb.'P'.$post_nb,0); headers("?f=$f&cknb=$post&ckval=$topic_place");}
exit("Vous auriez dû être redirigé sur la page de topics. ");}
// Da NobodX forum :: DHTML
?>
if ($perso) @include($INCLUDE_PATH."dnf/f/dnf_head.php"); ?>
Forums echo $sitename; ?>
if (!$perso) { ?>
} else @include($INCLUDE_PATH."dnf/f/dnf_top.php"); ?>
Forums echo $sitename." ".$forums['1']." ".$forums['1+']; ?>
sheep team, graphisme, programmation, codes source, blog, article, partage, ftp, humour, divertissement
cellspacing=0 cellpadding=0 width='100%' height='100%'>
if ($perso && !$rmenu) echo " "; ?>
";
if ($sfm_up && !$sfm_next) echo " ";
else echo " ".$menu["img"];
echo " ";
echo $menu["on_txt"].(($menu["on_list"])?": ".$menu["on_list"]:null)." ";
echo $menu["ops"]."".$menu["usr"].$menu["mayusr"]." ";
echo " - ".$menu["log"].$menu["design"].$menu["bar"];
echo $menu["form"];
echo "
";
echo "
";}
elseif ($rmenu == 2) {
// Da NobodX forum :: MENU GAUCHE
echo ""; }
if ($rmenu) echo " ";
?>
if (!$perso) echo " "; ?>
\n";
// Da NobodX forum :: COOKIES
if ($cknb && !$mac_user) {$cknb=intval($cknb); $ckval=intval($ckval); echo "\n";}
// Da NobodX forum :: AUTORISATIONS, RESTRICTIONS D'ACCESS AUX FORUMS
function sayperms($n) {
if ($n == 10) return "admins";
if ($n == 9) return "admins et modérateurs";
if ($n == 2) return "membres VIP";
if ($n <= 1) return "membres";}
if ((isset($view) || $f_run) && !$faq && !$chat && !$login) {
if ($forums[$f."perm"] || $forums[$f."team"] || $forums[$f."root"]) {
$forums[$f."root"] = strtolower($forums[$f."root"]);
$allow_teams = array_flip(explode("|",strtolower($forums[$f."team"])));
$team_ok=((isset($allow_teams[strtolower($mb_infos['team'])])) || !$forums[$f."team"])?true:false;
if ($forums[$f."root"] == "/team") {$mods = "/team";
if ($team_ok && ($mb_infos['perms'] == 9))
$mb_infos['perms'] = 2;}
elseif ($forums[$f."root"] == "/no") {$mods = "/no"; if ($mb_infos['perms'] == 9) $mb_infos['perms'] = 2;}
elseif($forums[$f."root"]) {
$mods = array_flip(split(" *, *",strtolower($forums[$f."root"])));
if ($mods[strtolower($da_forum_pseudo)] && $mb_infos["nb"])
$mb_infos['perms'] = 9;}
else unset($mods);
unset($noacc);
if ($mb_infos['perms'] < $forums[$f."perm"]) $noacc=1;
if ($forums[$f."team"]) {
if (!$team_ok) {
if ($mb_infos['perms'] <= 2) $noacc=1;
elseif ($mb_infos['perms'] == 9) {
if (is_array($mods)) if (!$mods[strtolower($da_forum_pseudo)] || !$mb_infos["nb"]) $noacc=1;}}}
if ($noacc) {
function saymods($m) {global $forums,$f;
if (is_array($m)) return " et les modérateurs autorisés [".$forums[$f."root"]."]";
elseif ($m == "/team") return " (modérés par la team uniquement)";
elseif ($m == "/no") return " (modérés par les admins uniquement)";}
$error = "Seuls les ".sayperms($forums[$f."perm"]).(($forums[$f."team"])?" de la ".str_replace("|"," team ou ",$forums[$f."team"])." team":null).saymods($mods)." ont accès au forum $forums[$f] .";
if (!$mb_infos['nb']) $error.= " Vous n'êtes pas loggé .";
}
}}
if ($error) msg($error,0);
// Da NobodX forum :: VIEW FORUMS LIST
elseif (!($login || $search || ($editpost && $edittopic && $action) || $faq || $chat)) {
if (!isset($view) && !$f_run) {
unset($forum_tri);
echo "Tous les forums ";
while(list($k1,$v1) = each($sort)) {
echo " ".$k1." ";
while(list($k2,$v2) = each($v1)) {
if (is_integer($k2)) {
if (!@include($INCLUDE_PATH."dnf/f/infos_$k2.php")) continue;
$modos = " Modérateurs: ";
if ($forums[$k2."root"] == "/team") {
if ($forums[$k2."team"])
$modos.="admins, modérateurs de la ".$forums[$k2."team"]." team";
else unset($modos);}
elseif ($forums[$k2."root"] == "/no") $modos.="admins";
elseif ($forums[$k2."root"]) $modos.="admins, ".$forums[$k2."root"];
else unset($modos);
if ($modos) $vi=", "; else $vi=null;
$accesstxt = " Access restreint: ";
if ($forums[$k2."team"] && $forums[$k2."perm"])
$accesstxt .= sayperms($forums[$k2."perm"])." de la ".str_replace("|"," team ou ",$forums[$k2."team"])." team".$vi;
elseif ($forums[$k2."perm"])
$accesstxt .= sayperms($forums[$k2."perm"]).$vi;
elseif ($forums[$k2."team"])
$accesstxt .= str_replace("|"," team ou ",$forums[$k2."team"])." team".$vi;
else
unset($accesstxt);
unset($lastpost);
if (!$forums[$k2."_url"] || $forums[$k2."_merge"]) { if ($fp=@fopen("dnf/f/topics_$k2.txt","r")) {
do $get=chop(fgets($fp,4096)); while ($get == "\n");
if ($get[0] == "T") $lastpost=" Dernier post: "; fclose($fp);}}
echo "$v2 ".$v1[$k2.'+']." $lastpost".(($accesstxt || $modos)?" ".$accesstxt.$modos:'')."$TOPICS topic".(($TOPICS>1)?"s":"")." $POSTS post".(($POSTS>1)?"s":"")."
";}
}
}
echo "
";
$viewed=1; $noform=1;
// Da NobodX forum :: VIEW TOPICS
} elseif ($view) {
if(($page_array = protect("F".$f."T".$view,1)) && !$wrong) {
$total_pgs = floor((count($page_array)-2)/$post_pages);
$pgend = 1+$total_pgs; if ($pg == "end") $pg = $pgend;
$i= ($post_pages*($pg-1))+1; $z= ($post_pages*$pg)+1;
if ($z >= count($page_array)) {$z=count($page_array); $stopnxt = 1;}
echo "".$page_array[0]." ";
if ($stopnxt) echo "\n";
while ($i<$z) {echo " ";
if($i==($z-1)) echo " ";
echo " ".$page_array[$i];
$i++;} echo "
"; // View posts
echo "";
$nxtpge = $pg + 1; $prevpge = $pg - 1;
if ($pg > 1) echo "« Précédent ";
echo " ";
if ($pgend > 1) { $i=1; while ($i <= $pgend) {
if ($pg == $i) echo "[$i] ";
else echo "[$i] ";
$i++;}}
echo " ";
$i = 1;
if (!$stopnxt) echo " Next » ";
echo "Retour forum ";
echo " ";
echo "Rubriques connexes : ".RetourneRubiqueConnexe($f)." Derniers posts : ".RetourneDerniersPosts ($f)."
"; $viewed = 1;
} else $box="Topic inexistant ou accès refusé";}
// Da NobodX forum :: VIEW TOPICS LIST
if (!$viewed && !$post) {
$i=$topic_pages*($page-1); $z=$topic_pages*$page-1; $y=0;
$next=1; $array=null; $data =null;
if ($extras) {$array=@file("dnf/f/topics_$f.txt"); $next=0;}
elseif ($fp=@fopen("dnf/f/topics_$f.txt","r")) {
while ($y<=$z) {$data .= fgets($fp,150);
if (ereg("\n$",$data)) { if ($y>=$i) $array[$y].=$data; $data=null; $is_data=1; $y++;}
if (feof($fp)) {$next=0; $y=$z+1;}}}
if (!is_array($array)) {
if (!$is_data) {
@include($INCLUDE_PATH."dnf/f/infos_$f.php");
if ($TOPICS >= 1) echo "";
echo "Fichier topic vide Rendez-vous sur install.php pour l'installation ou la réparation ";}
else echo "Aucun topic à cette page. ";
} else {
echo "
";
echo "";
$prevpg=$page-1;
if ($page>1) {echo "« Précédent "; $newline=" ";}
echo " ";
$nxtpg=$page+1;
if ($next) echo " Next » ";
echo "Rubriques connexes : ".RetourneRubiqueConnexe($f)."
\n\n\n";}}
// Da NobodX forum :: FORMULAIRE
if (!$noform) {
//if (!$mb_infos["nb"]) echo " Vous devez être inscrit ou identifié pour poster. ";
if ($noform == 2 && $mb_infos['perms'] < 9) echo " Topic Freezé ";
elseif ($remote_tops && !$box) echo " ".(($forums[$f."_merge"])?"Topic":"Forum")." en lecture seule ";
else {
echo "$newline";
echo " ";
echo "";
if (!$mb_infos['nb']) echo " ";
else echo " ";
echo "
\n";}
else {
if ($post) $fx=1; else $fx=0;
echo "\n";
echo "\n";
if ($wrong && !$box) echo "";
}}}
// Da NobodX forum :: EDITION - SUPPRESSION
elseif($editpost && $edittopic && $f && $action && !$noform) {
$errored=0;
if (!$remote_tops) {
if ($topdir = protect("F".$f."T".$edittopic,3)) {
$topic_data = fast($topdir."F".$f."T".$edittopic.$ext,"r");
if ($action == "del")
if (substr_count($topic_data,"\n")<=2) {$errored=1; msg("Vous êtes sur le point de supprimer le seul post existant dans ce topic. Ce topic peut uniquement être modéré .",0);}
if (!$errored) {
if(ereg("([^\n]+)\n",$topic_data,$post_data)) {
$post_data = $post_data[1];
ereg("([^\\$<]+)(\\$)?([^<]*)",$post_data,$reg_pseudo);
$reg_date = $reg_pseudo[3]; $reg_pseudo = $reg_pseudo[1];
ereg("",$post_data,$reg_perms); $reg_perms = intval($reg_perms[1]);
ereg("(.+)",$post_data,$reg_msg); $reg_msg = $reg_msg[1];
if (eregi("^[a-z][a-z0-9]*_?[a-z0-9]+$",$reg_pseudo)) {if (checkpseudo(strtolower($reg_pseudo),'',1)) $mode_edit = 1;}
if (!$edited) { unset($topic_data);
echo "(en cas de perte du pass, facultatif) ";
if ($focus == "new" || $focus == "log") echo "";
echo "Password oublié ? ";
echo " ";
break; case 2: // section membres
if ($mb_infos = checkpseudo(strtolower($login_pseudo),$login_password,3)) {
echo "";
echo "Infos persos : $login_pseudo ";
echo "Nombre de posts ".checkposts("r",$login_pseudo)." ";
echo "ID ".$mb_infos['nb']." ";
if (!$mb_infos['citation']) {
if ($mb_infos['perms'] == 9) {checkposts("r",$pseudo);
if (!$mb_infos['e']) $mb_infos['citation'] = "Modérateur"; else $mb_infos['citation'] = "Modératrice";}
elseif ($mb_infos['perms'] == 10) {checkposts("r",$pseudo);
$mb_infos['citation'] = "Admin";}
else $mb_infos['citation'] = grades(checkposts("r",$pseudo),$mb_infos['e']);}
if (!$mb_infos['logo']) $mb_infos['logo'] = " ";
echo "Grade ".$mb_infos['citation']." ";
switch($mb_infos['perms']) {
case 1: echo "Membre normal, image perso après acceptation"; break;
case 2: echo "Membre privilégié"; break;
case 9: echo "Membre type Modérateur"; break;
case 10: echo "Membre type Admin"; break;}
echo " ";
if ($mb_infos['e'] || $mb_infos['team']) echo "Signes particuliers ".
(($mb_infos['e'])?" ":"").
(($mb_infos['team'])?" ".$mb_infos['team']." Team ":"")." ";
echo "Image ".$mb_infos['logo']." ";
$logo1 = "$imgrep1/".strtolower($login_pseudo).".gif";
$logo2 = "$imgrep1/".strtolower($login_pseudo).".jpg";
if (file_exists("$logo1")) echo "Un logo en attente d'acceptation : ";
if (file_exists("$logo2")) echo "Un logo en attente d'acceptation : ";
echo " ";
echo "Infos forum ";
include($INCLUDE_PATH."dnf/f/info.php");
$tot_tops=0; $tot_post=0; $i=1;
while ($i<=$fall) {
$POSTS=0; $TOPICS=0;
@include($INCLUDE_PATH."dnf/f/infos_$i.php");
$tot_post += $POSTS;
$tot_tops += $TOPICS;
$i++;}
echo "$NB_MBS membres ";
echo "$tot_tops topics ";
echo "$tot_post posts ";
echo "
";
echo "";
echo "Envoi d'un SFM Short Forum Message Envoyer un message perso à un membre du forum. Limité à 500 caractères. ";
echo " ";
if ($sfm_new) echo "";
if ($mb_infos['perms'] == 10) {
echo " Gestion du forum ";
echo " ";
echo "[DNF] Recherche des mises à jour en cours... ";
echo "INSTALL.PHP Vous pouvez personnaliser le forum, réparer les topics, installer un nouveau forum, mettre à jour et optimiser, via la page install.php . ";}
if ($mb_infos['perms'] >= 9) {
echo " Gestion des images perso ";
$handle=opendir($imgrep1);
while (false!==($filez = readdir($handle))) {
if ($filez != "." && $filez != ".." && $filez != "index.html") {
$dafile = ereg_replace("....$","",$filez);
$dir_filez .= " $dafile \n";}}
closedir($handle);
if (!$dir_filez) echo "Aucune image en attente ";
else echo " ";}
echo "Image perso ";
if ($img_net ||$img_hd) {
echo "100x120 et ".round($max_img_size/1024,1)."Ko maximum ";
switch($mb_infos['perms']) {
case 1: echo "Votre logo ne passera qu'après vérification. "; break;
case 2: echo "Membre de confiance : Logo accepté. "; break;}}
if (!$img_net && !$img_hd) echo "Les images persos ne sont pas supportées. ";
else
echo " ";
echo "Reconstruire les flêches de participations ";
echo "Si vous avez effacé vos cookies ou utilisez un autre PC. ";
echo " ";
echo "Changement de password ";
echo " ";
echo "Changement d'adresse email Utilisé uniquement en cas de perte du password. ";
echo " ";
} elseif (!$login_pseudo && !$login_password) msg("Vous n'êtes pas identifié pour rentrer dans la section membre.Cliquez ici ",0); else msg("Pseudo/Password incorrect",0);
break; case 3: // ajout membre
$login_pseudo = strtolower($login_pseudo);
if (strlen($login_pseudo) > 20) msg("Pseudo trop long",0);
elseif (!eregi("^[a-z][a-z0-9]*_?[a-z0-9]+$",$login_pseudo)) msg("Pseudo incorrect Utilisez uniquement des lettres ou un underscore (_).",0);
elseif (strlen($login_password) > 20) msg("Password trop long",0);
elseif (!eregi("^[0-9a-zA-Z]+_?[0-9a-zA-Z]+$",$login_password)) msg("Password incorrect ! Utilisez uniquement des chiffres, des lettres ou un underscore (_)",0);
elseif (ereg("[\\|?<>\"',]",$login_mail)) msg("Adresse email incorrecte !",0);
elseif (!checkpseudo($login_pseudo,'',1)) {
if (strlen($login_mail) > 100) unset($login_mail);
$login_mail = str_replace("\'","",$login_mail);
$nb_mb = infos("add_user",$f); checkposts("w","");
function zero($nb,$z) {while(strlen($nb)<$z) $nb="0$nb"; return $nb;}
fast("dnf/f/membres.php","a","\$$login_pseudo = array('password'=>'$login_password','mail'=>'$login_mail','citation'=>'','logo'=>'','perms'=>'$def_perms','nb'=>'$nb_mb','size'=>'','create'=>'".date("Y",$time).zero(date("z",$time),3)."'".(($girl)?",'e'=>'e'":"").");\n");
msg("Pseudo enregistré avec succès ! ",1);}
else msg("Pseudo déja utilisé",0);
break; case 4: // recover pass
if ($mb_infos = checkpseudo(strtolower($login_pseudo),'',4)) {
$mail = $mb_infos['mail'];
$passrecover = $mb_infos['password'];
if (!$mb_infos['nomail']) {
if (ereg(".+@.+\..+",$mail)) {
if (mailspam()) {
if (mail($mail,"Votre mot de passe","Votre nom d'utilisateur et mot de passe sur les forums $sitename.\n\nURL : $thisurl\nPseudo : $login_pseudo\nPassword : $passrecover\n\nLe forum vous a envoyé ces informations suite à une demande. Cette fonction est automatisée mais protégée contre un trop grand flood. Si vous n'avez pas demandé ces informations, nous nous en excusons et merci de contacter l'administrateur du site en répondant à cet email.", "From: Forums $sitename <$sitemail>\r\nReply-To: <$sitemail>"))
msg("Mot de passe pour $login_pseudo envoyé par email",1);
else msg("Impossible d'envoyer un email, contactez directement l'admin pour votre password.",1);}
else msg("« EMAIL ANTISPAM » Pour minimiser le spam, l'envoi d'email resque bloqué pendant une heure après un envoi. Repassez plus tard ou crééz un nouveau pseudo.",0);}
else msg("Email invalide L'adresse email fournie lors de l'inscription ne semble pas être valide. Contactez directement l'administrateur.",0);}
else msg("Permission refusée Cet utilisateur a demandé à ne plus recevoir d'email.",0);}
else msg("Pseudo inexistant",0);
break; case 5: // chgt password
if ($mb_infos = checkpseudo(strtolower($login_pseudo),$login_password,3)) {
if (strlen($newpass) > 20) msg("Password trop long",0);
elseif (!eregi("^[0-9a-zA-Z]+_?[0-9a-zA-Z]+$",$newpass)) msg("Password incorrect ! Utilisez uniquement des chiffres, des lettres ou un underscore.",0);
else {
$xfile = file("dnf/f/membres.php");
$array_nb = $mb_infos['nb'];
$xfile[$array_nb] = ereg_replace("'password'=>'[^']+'","'password'=>'$newpass'",$xfile[$array_nb]);
fast("dnf/f/membres.php","w",ereg_replace("(\r|\n)+","\n",join("",$xfile)));
msg("Password changé avec succès",1);}
} else msg("Ancien Password incorrect !",0);
break; case 6: // modération
if (!$mb_infos) $mb_infos = checkpseudo(strtolower($login_pseudo),$login_password,3);
if (!$login_pseudo) $login_pseudo = $pseudo;
$xtrapost = "F".$f."T".$post2stop.$ext;
$tp_url = protect("F".$f."T".$post2stop,3);
if (isset($post2stop) && $type2stop && ($mb_infos['perms'] >= 9)) {
$post2stop=intval($post2stop);
$view_data = fast("dnf/f/topics_$f.txt","r");
if ($type2stop == 1) {
$view_data = ereg_replace("(TC\(".$post2stop.",[0-9]+),[^,]+,[0-9]+,([^\n]+\n)","\\1,1,101,\\2",$view_data);
echo "Modéré et... ";}
elseif ($type2stop == 2)
$view_data = ereg_replace("TC\(".$post2stop.",[^\n]+\n","",$view_data);
elseif ($type2stop == 3) {
if (rename($tp_url.$xtrapost,$adm_top.$xtrapost)) {
$view_data = ereg_replace("(TC\(".$post2stop.",[0-9]+),[^,]+,[0-9]+,([^\n]+\n)","\\1,\"Admins Only\",103,\\2",$view_data);
msg("Passage du topic en mode \"Admins Only\" réalisé avec succès",1);}}
elseif ($type2stop == 4) {
if (rename($tp_url.$xtrapost,$ice_top.$xtrapost)) {
fast($ice_top.$xtrapost,"a","Topic Freezé! \n");
$view_data = ereg_replace("(TC\(".$post2stop.",[0-9]+),[^,]+,[0-9]+,([^\n]+\n)","\\1,\"Freezé!\",104,\\2",$view_data);
msg("Passage du topic en mode \"Freezé!\" réalisé avec succès",1);}}
elseif ($type2stop == 5) {
$frz = fast($tp_url.$xtrapost,"r"); $frz = ereg_replace("[^\n]+\n","",$frz);
fast($tp_url.$xtrapost,"w",$frz);
if (rename($tp_url.$xtrapost,$new_top.$xtrapost)) {
$view_data = ereg_replace("(TC\(".$post2stop.",[0-9]+),[^,]+,[0-9]+,([^\n]+\n)","\\1,0,1,\\2",$view_data);
msg("Passage du topic en mode normal réalisé avec succès",1);}}
elseif ($type2stop == 6) {
if (rename($tp_url.$xtrapost,$prv_top.$xtrapost)) {
$view_data = ereg_replace("(TC\(".$post2stop.",[0-9]+),[^,]+,[0-9]+,([^\n]+\n)","\\1,\"VIP Only\",106,\\2",$view_data);
msg("Passage du topic en mode \"VIP Only\" réalisé avec succès",1);}}
if (!fast("dnf/f/topics_$f.txt","w",ereg_replace("(\r|\n)+","\n",$view_data))) msg("Fichier impossible à ouvrir",0);
$fast_data = fast("dnf/f/fast_topics.txt","r");
if ($new_fast = ereg_replace("^[^\n]+\n","",$fast_data))
fast("dnf/f/fast_topics.txt","w",ereg_replace("(\r|\n)+","\n",$new_fast));
if ($login_password == $MULTIPASS) $multilog = ":MULTIPASS";
logit($login_pseudo,"MT:F$f"."T$post2stop:X$type2stop$multilog",0);
if ($type2stop <= 2) {
if (suppr($tp_url.$xtrapost)) {
msg("Topic supprimé avec succès",1);
} else msg("Fichier topic impossible à supprimer",1);}
} else msg("Options insuffisantes ou fichier inexistant",0);
break; case 7: // chgt email
if ($mb_infos = checkpseudo(strtolower($login_pseudo),$login_password,3)) {
if (strlen($newmail) > 100) msg("Adresse email trop longue",0);
else {
if (!ereg("[\\|?<>\"',]",$newmail)) {
$newmail = str_replace("\'","",$newmail);
$file = file("dnf/f/membres.php");
$array_nb = $mb_infos['nb'];
$file[$array_nb] = ereg_replace("'mail'=>'[^']*'","'mail'=>'$newmail'",$file[$array_nb]);
if (fast("dnf/f/membres.php","w",ereg_replace("(\r|\n)+","\n",join("",$file))))
msg("Adresse email changée avec succès",1);
} else msg("Caractères interdits",1);
}
} else msg("Pseudo/Password incorrect",1);
break; case 8: // envoi images perso
$login_pseudo = strtolower($login_pseudo);
if (eregi("[//\\]{2,}",$upload)) $upload = stripslashes($upload);
if ($mb_infos = checkpseudo(strtolower($login_pseudo),$login_password,3)) {
$maxHeight = 100;
$maxWidth = 120;
if ($upload_name && $upload != "none" && is_uploaded_file($upload)) {
if ($upload_size > $max_img_size) echo "Fichier trop lourd : la taille maximale (".round($max_img_size/1024,1)."Ko) a été dépassée avec ".($upload_size/1000)." Ko. ";
else {copy($upload, "dnf/f/temp.gif"); $type_is_copy = 1;}
} elseif($url2file) {
$url2file = ereg_replace(" |'|\"","",$url2file);
if (!ereg("^http://",$url2file)) $url2file = "http://".$url2file;
if ($fp = fopen( ($img_net==2)?"http://membres.ovh.org/dnf/proxy.php?url=".urlencode($url2file):$url2file, "rb")) {$img = fread($fp, $max_img_size);
if(!feof($fp)) $badsize = 1; fclose($fp);}
if ($badsize) echo "Fichier trop lourd : la taille maximale (".round($max_img_size/1024,1)."Ko) a été dépassée. ";
if (!$img) echo "Fichier non trouvé à l'adresse donnée. ";
else fast("dnf/f/temp.gif","wb",$img);}
if (file_exists("dnf/f/temp.gif")) {
if ($img_infos = getimagesize("dnf/f/temp.gif")) {
if ($img_infos[2] <= 2) {
if ( (($img_infos[1] <= $maxHeight) && ($img_infos[0] <= $maxWidth)) || (($img_infos[1] <= $maxWidth) && ($img_infos[0] <= $maxHeight))) {
if ($img_infos[2] == 1) {$type = "gif";
if(file_exists("$imgrep1/$login_pseudo.jpg")) suppr("$imgrep1/$login_pseudo.jpg");}
else {$type = "jpg";
if(file_exists("$imgrep1/$login_pseudo.gif")) suppr("$imgrep1/$login_pseudo.gif");}
if (($filed = file("dnf/f/membres.php")) == false) die("FATAL ERROR ");
$array_nb = $mb_infos['nb'];
if ($mb_infos['perms'] == 1) {
if ($type_is_copy) copy($upload, "$imgrep1/$login_pseudo.$type");
else fast("$imgrep1/$login_pseudo.$type","wb",$img);
msg("Image envoyée avec succès, en attente de vérification par un Admin... (pensez à le réveiller si elle passe pas après 1 jour ;)",1);
} else {
if ($type_is_copy) copy($upload, "$imgrep2/$login_pseudo.$type");
else fast("$imgrep2/$login_pseudo.$type","wb",$img);
$filed[$array_nb] = ereg_replace("'logo'=>'[^']*'","'logo'=>' '",$filed[$array_nb]);
msg("Image envoyée avec succès et mise en place immédiate",1);
$lims = 35; // Réduction de logo
$rW = $img_infos[0]/$lims; $rH = $img_infos[1]/$lims;
if (($rW > 1) || ($rH > 1)) {
if( $rW < $rH){ $dW = $img_infos[0]/$rH; $dH = $lims;}
else {$dW = $lims; $dH = $img_infos[1]/$rW;}
} else {$dW = $img_infos[0]; $dH = $img_infos[1];}
$filed[$array_nb] = ereg_replace("'size'=>'[^']*'","'size'=>'height=".round($dH)." width=".round($dW)."'",$filed[$array_nb]);
}
fast("dnf/f/membres.php","w",ereg_replace("(\r|\n)+","\n",join("",$filed)));
} else echo "L'image est refusée : Hauteur ou largeur maximale dépassée";
} else echo "Les images qui ne sont pas au format GIF ou JPG sont refusées";
} else echo "Le fichier n'est pas une image";
suppr("dnf/f/temp.gif");
} else echo " Erreur fatale dans la lecture du fichier temporaire. Causes possibles: Pas d'image spécifiée Image refusée Mode d'envoi non supporté";
} else echo "Membre non autorisé";
break; case 9: // gestion des images perso (admin)
$mb_infos = checkpseudo(strtolower($login_pseudo),$login_password,3);
if ($mb_infos['perms'] >= 9) {
$filed = file("dnf/f/membres.php");
$handle=opendir($imgrep1);
while (false!==($filez = readdir($handle))) {
if ($filez != "." && $filez != ".." && $filez != "index.html") {
$img_i = split("\.",$filez);
$usr_file = strtoupper($img_i[0]);
$dafile = $$usr_file;
$usr_file = strtolower($usr_file);
if ($dafile) {
copy("$imgrep1$filez","$imgrep2$filez");
$array_nb = checkpseudo($usr_file,'',1);
if($array_nb) {
$filed[$array_nb] = ereg_replace("'logo'=>'[^']*'","'logo'=>' '",$filed[$array_nb]);}
$img_infos = getimagesize("$imgrep2$filez");
$lims = 35; // Réduction de logo
$rW = $img_infos[0]/$lims; $rH = $img_infos[1]/$lims;
if (($rW > 1) || ($rH > 1)) {
if( $rW < $rH){$dW = $img_infos[0]/$rH; $dH = $lims;}
else {$dW = $lims; $dH = $img_infos[1]/$rW;}
} else {$dW = $img_infos[0]; $dH = $img_infos[1];}
$filed[$array_nb] = ereg_replace("'size'=>'[^']*'","'size'=>'height=".round($dH)." width=".round($dW)."'",$filed[$array_nb]);
}
suppr("$imgrep1$filez");
}
} closedir($handle);
fast("dnf/f/membres.php","w",ereg_replace("(\r|\n)+","\n",join("",$filed)));
msg("Gestion des images effectuée...",1);
} else msg("Vous n'êtes pas Admin",0);
break; case 10: // restaurer cookies
$login_pseudo = strtolower($login_pseudo);
if ($mb_infos = checkpseudo($login_pseudo,$login_password,3)) {
$newcookie = "/";
$fp = 0;
$f_walk = 1;
while ($f_walk <= $fall) {
if (!$forums[$f_walk]) {$f_walk++; continue;}
$view_array = array_reverse(access("dnf/f/topics_$f_walk.txt",1)); $count = count($view_array);
$z=count($view_array)+1;
$i=$z-$topic_pages*2;
unset($newcookie);
while($i<$z) {
$regexp = ereg("^TC\(([0-9]+),",$view_array[$i],$tp_nb);
if ($tp_nb[1]) $tp_nb = $tp_nb[1];
else unset($tp_nb);
if ($tp_data = fast($new_top."F".$f_walk."T".$tp_nb.$ext,"r",true)) {
if (eregi("$login_pseudo(<|\\\$)",$tp_data))
$particip = 0;
if (eregi("$login_pseudo(<|\\\$)[^\n]+\n$",$tp_data))
$particip = substr_count($tp_data, "\n")-2;
if (isset($particip)) $newcookie .= "/".$tp_nb."x".$particip."-Z";
unset($particip);}
unset($tp_data); $i++;}
echo "";
$f_walk++;}
msg("Les icônes de participation ont été restaurées (sur les deux dernières pages) ",1);
} else msg("Pseudo/Password incorrect",0);
break; case 11: // envoi SFM
$sfm_to = strtolower($sfm_to); $login_pseudo = strtolower($login_pseudo);
if ($mb_infos = checkpseudo($login_pseudo,$login_password,3)) {
$sfm_txt = ereg_replace("\n|<|>|&|\r|[-]"," ",stripslashes($sfm_txt));
if (strlen($sfm_txt) <= 500) {
if (eregi("^[a-z][a-z0-9_]*$",$sfm_to)) {
if (checkpseudo($sfm_to,'',1)) {
if (count(@file("dnf/sfm/$sfm_to.txt")) < $sfm_max) {
$sfm_txt = ereg_replace("([^ \n]{18,18})","\\1 ",$sfm_txt);
fast("dnf/sfm/$sfm_to.txt","a","$login_pseudo : $sfm_txt\n");
echo "\n\n ";
msg("Message correctement envoyé à $sfm_to ",1);
} else msg("La boite SFM du destinataire est déjà pleine",0);
} else msg("Destinataire inexistant ou anonyme",0);
} elseif($sfm_to == "@all") {
if ($mb_infos['perms'] >= 2) {
if ($sfm_txt == "@end") {
suppr("dnf/sfm/all.php");
logit($login_pseudo, "SFM:@END",0);
echo "\n\n ";
msg("Message général terminé ",1);}
else {
$sfm_txt = ereg_replace("([^ \n]{70,70})","\\1 ",$sfm_txt);
fast("dnf/sfm/all.php","w",' if ($date_up < '.(date("zHi",$time)+120).' && $date_up > '.(date("zHi",$time)-60).") \$sfm_all = '$login_pseudo: ".ereg_replace("'","\\"."'",$sfm_txt).'\'; $sfm_date = "'.(date("H",$time)+2).date(",$time\hi").'";?'.'>');
logit($login_pseudo,"SFM:@ALL:".str_replace(":","",$sfm_txt),0);
echo "\n\n ";
msg("Message général envoyé La diffusion durera deux heures ",1);}
} else msg("Permission refusée Vous n'avez pas accès aux messages généraux",0);
} else msg("Pseudo invalide",0);
} else msg("Supérieur à 500 caractères",0);
} else msg("Pseudo/Password incorrect",0);
break; case 12: // gestion smileys
if (!$mb_infos) $mb_infos = checkpseudo(strtolower($login_pseudo),$login_password,3);
if ($mb_infos['perms'] < 10) {msg("Vous n'êtes pas admin",0); break;}
if (!$sml_tot) {
function sm_code($c,$img) {
if ($img) $c = str_replace(' ','',$c));
return htmlentities(html($c,0));}
include_once("dnf/f/smiley.php");
$smile_array = $smileys;
echo " ";
echo "1 » Nouveau smiley normal ";
echo " ";
echo "2 » Nouveau smiley regexp ";
echo " ";
echo " ";
echo "Par soucis de sécurité, les caractères \$ ' \" sont désativés dans les expressions régulières. NB: Pour supprimer un smiley, effacez son code. ";
} else {
function clearkey($k) {
return ereg_replace("(\r|\n)","",ereg_replace("\\\+$","",ereg_replace("(\"|'|\\$)","",str_replace("<","<",str_replace(">",">",$k)))));}
$i=1;
$new_sml= "$smil_tot <"."?php \$smileys = array(\n";
while ($i<=($sml_tot+2)) {
if ( ($sm_x_newn == ($i-1)) && $sm_k_newn && $sm_v_newn)
$new_sml .= "'".clearkey($sm_k_newn)."'=>' ',\n";
if ( ($sm_x_newreg == ($i-1)) && $sm_k_newreg && $sm_v_newreg && $sm_d_newreg) {
if ($sm_r_newreg) $cas = "i"; else $cas = "";
$new_sml .= "'".stripslashes(clearkey($sm_k_newreg))."'=>array('ereg$cas'=>' ','def'=>'$sm_d_newreg'),\n";}
$key = clearkey(${"sm_k_$i"});
$val = ereg_replace("(\r|\n)","",str_replace('\"','"',${"sm_v_$i"}));
$def = ereg_replace("(\r|\n)","",str_replace('\"','"',${"sm_d_$i"}));
if (${"sm_r_$i"}) $cas = "i"; else $cas = "";
if ($key && $val && $def) $new_sml .= "'".stripslashes($key)."'=>array('ereg$cas'=>' ','def'=>'$def'),\n";
elseif ($key && $val) $new_sml .= "'$key'=>' ',\n";
$i++;}
$new_sml .= "\"::credit::\"=>\" \",\n\"::smileys::\"=>\" \"\n); ?".">";
if (eval("?".">$new_sml return TRUE; ?".">")) echo "TEST DU CODE PHP + SECURITE: OK ";
else {$badsml = 1; echo "TEST DU CODE PHP + SECURITE: ERREUR FATALE, MERCI DE REPORTER CE BUG A nobodx@fr.fm (indiquer les codes regexps utilisés) ";}
$smile_array = $smileys;
while(list($k,$v) = each($smile_array)) {
if (!is_array($v)) {$sm_k = $k; $sm_v = $v;}
else {$sm_k = $smile_array[$k]["def"]; $sm_v = ($smile_array[$k]["ereg"])?$smile_array[$k]["ereg"]:$smile_array[$k]["eregi"];}
if (($smt = bbc($sm_k)) != $sm_v) {
if ($k != $sm_v) $badc .= "".htmlentities($sm_k)." aurait dû devenir ".htmlentities($sm_v)." mais s'est changé en ".htmlentities($smt)." [solutions? changer la position du smiley] ";
else $badc .= "".htmlentities($sm_k)." aurait dû devenir <img src=\"".htmlentities($sm_v)."\"> ";
$badsml++;}}
if (!$badc) echo "TEST DES SMILEYS ET REGEXPS: TOUS FONCTIONNELS";
else {$badsml = 1; echo "TEST DES SMILEYS ET REGEXPS: ERREUR(S) Reportez vous à la doc (readme.txt) pour régler les problèmes de smileys: $badc";}
echo "";
echo htmlentities(fast("dnf/f/smiley.php","r"));
echo " ";
if ($badsml) msg(" Mise à jour des smileys annulée",0);
elseif (fast("dnf/f/smiley.php","w",$new_sml))
msg(" Mise à jour des smileys effectuée.(les anciens smileys ont été placés temporairement dans votre presse-papier, vous pourrez donc les restaurer manuellement en cas de problème). ",1);}
break; case 13: // gestion membres
if ($mb_infos['perms'] != 10) {msg("Vous n'êtes pas admin",0); break;}
if (!$totmb) {
function pure() {
global $INCLUDE_PATH,$Startpost,$Startfrom,$Startdate; include($INCLUDE_PATH."dnf/f/membres.php");
$TIMES = file("dnf/f/time1.txt");
$POSTS = file("dnf/f/posts.txt");
$MBS = fast("dnf/f/membres.php","r");
$MBS = ereg_replace("( [^\n]+|\\\$)","",$MBS);
$MBS = explode("\n",$MBS);
unset($MBS[0],$MBS[count($MBS)]);
$TOTMB=0;
echo "";
echo "Vous pouvez modifier le profil de chaque membre à volonté ;) readme.txt contient la signification de chaque variable.";
echo "[Suppression rapide] Utiliser une checkbox jusqu'au nb pour les membres dont [posts] <= ou [jours] >= ";
if ($Startfrom && (is_numeric($Startdate) || is_numeric($Startpost))) echo "» Checkboxes activées Si la case n'est pas cochée le membre sera supprimé
";
echo " ";
echo " ";
echo " ";
echo " NB: Pour supprimer un membre, effacez son pseudo. ";}
pure();}
else {
function clearmb($m) {
return ereg_replace("(\r|\n)","",str_replace('\"','"',$m));}
$save_mbs = "'".clearmb(${"mb_pa_".$i})."', 'mail'=>'".clearmb(${"mb_ma_".$i})."','citation'=>'".clearmb(${"mb_ci_".$i})."','logo'=>'".clearmb(${"mb_lo_".$i})."','perms'=>'".clearmb(${"mb_pe_".$i})."','nb'=>'$him','size'=>'".clearmb(${"mb_si_".$i})."'";
if (${"mb_cr_".$i}) $save_mbs .= ",'create'=>'".clearmb(${"mb_cr_".$i})."'";
if (${"mb_te_".$i}) $save_mbs .= ",'team'=>'".clearmb(${"mb_te_".$i})."'";
if (${"mb_e_".$i}) $save_mbs .= ",'e'=>'e'";
$save_mbs .= ");\n";
$save_posts .= ((${"mb_posts_".$i})?${"mb_posts_".$i}:0)."\n";
$his_time = intval(${"mb_ti_".$i});
$save_times .= $his_time."\n";
} $i++;}
if (!$badmmb) {
echo "";
echo htmlentities(fast("dnf/f/membres.php","r"));
echo " ";
if (fast("dnf/f/membres.php","w",$save_mbs)) {
fast("dnf/f/posts.txt","w",$save_posts);
fast("dnf/f/time1.txt","w",$save_times);
fast("dnf/f/info.php","w","Mise à jour des membres effectuée.(les anciens membres ont été placés temporairement dans votre presse-papier, vous pourrez donc les restaurer manuellement en cas de problème). ",1);}
} else msg("Pseudo(s) incorrect(s): \"$badmmb\"",0);
} break; case 14: // blackliste
if ($bl && !$bltype) {
$bl = html($bl,1);
if ($mb_infos['perms'] < 9) {msg("Vous devez être identifié en tant que modérateur ou administrateur pour blacklister quelqu'un.Cliquez ici ",0); break;}
echo " ";
$logp = fast("dnf/f/log.txt","r");
if (ereg("\n([^ ]+) [^:]+:".$bl.":([^ :]+) ?([^:]*)",$logp,$blinfo)) {
echo "Pseudo $blinfo[1] IP $blinfo[2] "."Proxy ".(($blinfo[3])?$blinfo[3]:'')."
";
echo " Code à blacklister dans le pseudo, l'IP et le proxy: ";
echo " Normal Expression régulière ";
echo " ";
}
else msg("Post introuvable",0);
} elseif ($bl && $blit && $bltype) {
if ($mb_infos['perms'] < 9) {msg("Vous n'êtes pas modo ou admin: pseudo/pass incorrects",0); break;}
if ($bltype == 1) fast("dnf/f/blackliste.txt","a",quotemeta(ereg_replace("\r|\n|\|","",$blit))."\n");
else fast("dnf/f/blackliste.txt","a",ereg_replace("\r|\n","",$blit)."\n");
msg("Utilisateur blacklisté",1);}
else msg("Paramètres insuffisants",0);
break; case 15: // liste des membres
$posts = file("dnf/f/posts.txt");
$membres = file("dnf/f/membres.php");
unset($posts[0],$membres[0],$tri);
while(list($k,$mmb) = each($membres)) {
$mmb = ereg_replace("^.| .+$","",$mmb);
$post = intval($posts[$k]);
$i=0; while($tri[$post][$i]) $i++;
$tri[$post][$i] = $mmb;}
krsort($tri); $i=1;
echo "";
echo "Tri par posts ";
echo " \n";
while (list($k,$v) = each($tri)) {
while (list($k2,$v2) = each($v)) {
if ($i <= 3) $top[$i++] = "".ucfirst($v2)." ($k) ";
echo "".ucfirst($v2)." $k ";}}
echo "
";
echo " ";
echo "Podium des posteurs ";
echo "";
$rpod = array(1=>2,2=>3,3=>1); $pod = array(1=>2,2=>1,3=>3);
$i=0; while ($i++<3) echo "".$top[$pod[$i]]." ";
echo " ";
echo "Forum $sitename ";
function say($var,$txt) {echo $var." $txt".(($var>1)?"s":null)." ";}
echo "Administré par $sitemaster ";
say(count($membres),"membre");
say($fall,"forum");
$NB_TOPS=0;$i=1;while($i<=$fall) {$NB_TOPS += count(@file("dnf/f/topics_$i.txt")); $i++;}
say($NB_TOPS,"topic");
echo "
";
break; case 16: // Déplacement de topic
if (!(is_numeric($topicnb) && $forums[$f])) {msg("Paramètres incorrects",0); break;}
$view_data = fast("dnf/f/topics_$f.txt","r");
if (!ereg("(^|\n)(TC\($topicnb,[^\n]+\n)",$view_data,$topic_line)) {
msg("Topic introubale",0); break;}
$topic_line = $topic_line[2];
if (!$fto) {
echo " ";
} elseif ($fto>=1 && $forums[$fto]) {
if ($mb_infos['perms'] < 9) {echo "Modérateur ou admin non reconnu"; break;}
if ($f == $fto) {echo "Forum de départ et de destination identiques."; break;}
$tp_url = protect("F".$f."T".$topicnb,3);
$topic_infos = infos("add_topic",$fto);
$topicnb2 = $topic_infos['topic'];
if (rename($tp_url."F".$f."T".$topicnb.$ext,$tp_url."F".$fto."T".$topicnb2.$ext)) {
$view_data = clearfile(ereg_replace("(^|\n)TC\($topicnb,[^\n]+\n","\n",$view_data));
if (!$view_data) $view_data = "\n";
fast("dnf/f/topics_$f.txt","w",$view_data);
fast("dnf/f/topics_$fto.txt","w",ereg_replace("^TC\($topicnb,","TC($topicnb2,",$topic_line).fast("dnf/f/topics_$fto.txt","r"));
msg("Topic déplacé avec succès",1);}
} else msg("Forum de desination inexisant ou identique à celui de départ",0);
break;
}
} elseif ($chat && $chat_url) { ?>
" style="text-align:center;"> maxlength=500 class=tp style="text-align:left;">
Vitesse
Très rapide
Rapide
Normal
Moins Normal
Plus Lent
Très lent
Passif
Stop
} elseif ($faq) { ?>
.gif align=right style="cursor:pointer; cursor:hand" onclick="document.all['jargon'].innerHTML = ''">
Késkessé ?
Topic Sujet de conversation, qui regroupe plusieurs posts
Post Message laissé par un utilisateur
FAQ Questions Frequement Posées
MAJ Mise à jour
Tuto, tutorial Un guide pour apprendre à utiliser quelque chose
Comment je deviens membre ?
Suivez le lien "Membres" dans la marge pour vous inscrire : tout ce qu'on vous demande c'est de choisir un pseudo et un mot de passe. Pas plus de 5 secondes pour s'inscrire et aucune confirmation. Les pseudos presque inutilisés seront supprimés après un certain temps.
Quels sont les avantages d'être membre ?
- Pseudo protégé
- Grades en citation
- Image perso quelconque
- Edition et suppression des posts
- Short Forum Message (SFM) pour communiquer avec les autres membres
- Sauvegarde des participations
Les grades
Ils augmentent avec le nombre de posts...
et descendent quand on en supprime.
echo join (" \n",citation(null,"Floodeur")); ?>
Astuces, infos
- Pour accéder au directement au dernier message d'un topic, il suffit de cliquer sur le dernier posteur.
- Pour faire un lien vers un topic tapez <<10>> où 10 représente le numéro du topic. <<10.5>> pour accéder à sa 5ème page, <<10.end>> pour faire un lien vers la dernière réponse du topic, et enfin <<F2.10>> pour le 10ème topic du second forum.
- Pour désactiver les smileys dans un messages, ajoutez le mot [code] n'importe où dans celui-ci.
- Si vous utilisez des mots très longs dans votre message, rajoutez [wordwrap] n'importe où dans celui-ci.
- La petite étoile à côté d'un pseudo signifie qu'il est connecté au chat.
- Un utilisateur n'apparaît plus dans la liste des connectés s'il reste sans surfer pendant plus de echo $timing; ?> minutes, même dans le chat.
- Création de panneaux: [pan]texte[/pan] avec le texte sur une ou plusieurs lignes.
- Une recherche sur Google ? [google]mots à chercher[/google] ([google=fr] sites en français, [google=frn] sites situés en France).
- Tapez /exact à la fin d'une recherche pour utiliser une séquence de mots.
Flêches de participations
Vous n'avez pas participé à ce topic et vous n'avez pas lu le dernier post
Vous n'avez pas participé à ce topic mais vous avez lu le dernier post
Vous avez eu le dernier post de ce topic
Il y a des nouveaux posts après le votre que vous n'avez pas lus
Il y a des nouveaux posts après le votre mais vous les avez lus
Types de membres
Membre normal
Images persos seulement après acceptation
if ($allow_imgs == 2) echo "Utilisation des images: [img]http://site.com/image.gif[/img] . "; ?>
Membre privilégié: VIP (as Mbs++)
Diffusion d'un SFM à tout les membres pendant 2 heures: envoyer un message à @all
Suppression des SFM généraux: envoyer un message à @all avec comme contenu @end
if ($allow_imgs == 1) echo "Utilisation des images: [img]http://site.com/image.gif[/img] . "; ?>
Modérateur
Edition, suppression ou modération de n'importe quel post ou topic dans les forums autorisés
Acceptation des images persos
if (!$allow_imgs) echo "Utilisation des images: [img]http://site.com/image.gif[/img] . "; ?>
Admin
Accès à tout le forum et aux logins des membres par multipass
Gestion du forum: membres, smileys, install
Utilisation de code HTML ([HTML]...[/HTML] )
Peut à peu près tout faire... en manuel.
Quelques problèmes courants...
- Vous n'êtes plus identifié dès que vous changez de page: Descendez légèrement le niveau de sécurité des cookies dans Internet Explorer 6 (Outils > Options Internet > Confidentialité).
A propos du forum...
Ce forum est un freeware dispo sur nobodx.fr.fm . Sa particularité (en plus d'être bien plus gros que 90% des forums actuels ;) est qu'il n'utilise pas de base de données: tout est stocké dans des fichiers et géré par PHP.
} ?>
if ($perso) echo " ";
echo " ";
if ($rmenu == 1) {
// Da NobodX forum :: MENU DROITE
echo " ";
if (!$perso) echo "\n"; else @include($INCLUDE_PATH."dnf/f/dnf_end.php");
if ($login == 2 && $mb_infos['perms'] == 10) // Recherche des mises à jour
echo ""; ?>