%PDF- %PDF-"; if ($reload) echo ""; echo ""; } function chk_crypt($code) { // Vérifie si le code est correct $difuplow = false; $cryptsecure = "md5"; $code = addslashes ($code); $code = ($difuplow?$code:strtoupper($code)); switch (strtoupper($cryptsecure)) { case "MD5" : $code = md5($code); break; case "SHA1" : $code = sha1($code); break; } if ($_SESSION['cryptcode'] and ($_SESSION['cryptcode'] == $code)) { unset($_SESSION['cryptreload']); return true; } else { $_SESSION['cryptreload']= true; return false; } } /** @function timeCode Encodage de l'heure limite. */ function timeCode($date_post) { // heure exacte de creation du billet (inconnue de notre spammeur) list($date,$heure) = explode(" ",$date_post); list($annee,$mois,$jour) = explode("-",$date); list($heure,$minute,$seconde) = explode(":",$heure); $ts = (int) mktime($heure, $minute, $seconde, $mois, $jour, $annee); // heure actuelle (relative / billet) $refTime = (int) (time() - $ts); // encodage de l'heure (sans reveler l'heure de reference) return base_convert( $refTime ^ $ts, 10, 36); } /** @function isValid Verifier la validite d'une URL de trackback securisee */ function timeout( $timeout=900 ) { global $mysqlconnect, $id; // teste la presence du code de controle if ( !isset($_GET['chk']) ) { // pas de code => spam return True; } $mysqlquery13 = "SELECT * FROM blogs_posts WHERE id_post='".$id."'"; $mysqlresult13 = mysql_query($mysqlquery13,$mysqlconnect); $row3=mysql_fetch_row($mysqlresult13); $date_post=$row3[5]; // heure de creation du billet list($date,$heure) = explode(" ",$date_post); list($annee,$mois,$jour) = explode("-",$date); list($heure,$minute,$seconde) = explode(":",$heure); $ts = (int) mktime($heure, $minute, $seconde, $mois, $jour, $annee); // heure actuelle (relative / billet) $curTime = (int) (time() - $ts); // decodage de l'heure relative de l'URL $refTime = ( (int) base_convert( $_GET['chk'], 36, 10 )) ^ $ts; // calcul de l'age de l'URL $duration = $curTime - $refTime; // Controle expiration URL / timeout if ( $duration < 2 || $duration > $timeout ) { return True; } return False; } /** @function spamDetected Obtenir un message sympathique a adresser a nos gentils spammeurs. */ function spamDetected( $message = "Trackbacks are allowed for humans only on this weblog." ) { return '1'."\n". ''.$message.''; } ?>