You are not allowed to edit this paste! A fork will be created instead.
 

"; } } if ($_GET['b']=="add" && $usr['name']!="") { if (strlen($_POST['text'])>1000) { echo 'Übertreib es nicht. Text maximal 1000 Zeichen'; exit(); } elseif (strlen($_POST['titel'])>40) { echo 'Übertreib es nicht. Titel maximal 40 Zeichen'; exit(); } elseif ($_POST['titel']=="") { echo 'Titel wurde nicht angegeben.'; } elseif ($_POST['text']=="") { echo 'Text wurde nicht angegeben.'; } else { mysql_query('INSERT INTO news_comment(`id`, `autor`, `autor_id`, `ip`, `time`, `news_id`, `text`, `titel`) VALUES("", "'.$usr['name'].'", "'.$usrid.'", "'.$usr['sid_ip'].'", "'.time().'", "'.$newsid.'", "'.text_replace(mysql_escape_string(htmlspecialchars($_POST['text']))).'", "'.text_replace(mysql_escape_string(htmlspecialchars($_POST['titel']))).'")'); echo '
Kommentar wurde hinzugefügt.
'; } } } else simple_message('Diesen News-Eintrag gibt es nicht!'); createlayout_bottom(); break; case 'regsubmit': // ----------------------- RegSubmit -------------------------- $email=trim($_POST['email']); $nick=trim($_POST['nick']); $server=(int)$_POST['server']; if($server<1 || $server>2) $server=2; mysql_select_db(dbname($server)); $info=gettableinfo('users',dbname($server)); if($info['Rows']>=MAX_USERS_PER_SERVER) exit; $e=false; $badwords='rio|schnitzel|unknown|xxxunknownxxx|admin|4dmin|adm1n|@dmin|fuck|fick|sex|porn|penis|vagina|arsch|hitler|himmler|goebbels|göbbels|hure|nutte|fotze|bitch|schlampe'; # nein, king ist kein böses, sondern ein reserviertes wort ^^ $nickzeichen='abcdefghijklmnopqrstuvwxyzäüöABCDEFGHIJKLMNOPQRSTUVWXYZÄÖÜß0123456789_-:@.!=?\$%/&'; function checknick($nick) { global $STYLESHEET, $REMOTE_FILES_DIR, $DATADIR, $nickzeichen; $b=true; $len=strlen($nick); for($i=0;$i<$len;$i++) { $zz=substr($nick,$i,1); if(strstr($nickzeichen,(string)$zz)==false) { $b=false; break; } } $x=eregi_replace('[-_:@.!=?$%&/0-9]','',$nick); if(trim($x)=='') $b=false; return $b; } $result = mysql_query('SELECT * FROM blacklist WHERE name="'.$nick.'" || email = "'.$email.'"'); if($nick!='') { if(mysql_num_rows($result)>0) { $e=true; $msg.='Du stehst auf der HTN.Lan Blacklist!
'; } if(getuser($email,'email')!==false) { $e=true; $msg.='Ein Benutzer mit dieser Emailadresse existiert bereits!
'; } if(getuser($nick,'name')!==false) { $e=true; $msg.='Ein Benutzer mit diesem Nicknamen existiert bereits!
'; } if(checknick($nick)==false) { $e=true; $msg.='Der Nickname darf NUR die Zeichen '.$nickzeichen.' enthalten. Außerdem darf er nicht nur aus Sonderzeichen bestehen.
'; } if(strlen($nick)<3 | strlen($nick)>20) { $e=true; $msg.='Der Nickname muss zwischen 3 und 20 Zeichen lang sein.
'; } $x=eregi_replace('[-_:@.!=?$%&/0-9]','',$nick); if(eregi('('.$badwords.')',$x)!=false) { $e=true; $msg.='Der Nickname darf bestimmte Wörter nicht enthalten.
'; } } else { $e=true; $msg.='Bitte Nickname eingeben.
'; } if(!check_email($email)) { $e=true; $msg.='Bitte eine gültige Email-Adresse im Format x@y.z angeben.
'; } $javascript=file_get('data/pubtxt/selcountry_head.txt'); if($e==false) { createlayout_top('HackTheNet - Account anlegen'); $pwd=generateMnemonicPassword(); $tmpfnx=randomx(REG_CODE_LEN); $tmpfn='data/regtmp/'.$tmpfnx.'.txt'; file_put($tmpfn,$nick.'|'.$email.'|'.$pwd.'|'.$server); $selcode=str_replace('%path%','images/maps',file_get('data/pubtxt/selcountry_body.txt')); echo '

Schritt 2: Land auswählen

Bitte wähle jetzt, in welchem Land der Erde dein Computer stehen soll. Natürlich nur im Spiel und nicht in echt...

'.$selcode.'
'; createlayout_bottom(); } else { header('Location:pub.php?a=register&error='.urlencode($msg)); } break; case 'regsubmit2': // ----------------------- RegSubmit 2 -------------------------- $tmpfnx=$_POST['code']; $fn='data/regtmp/'.$tmpfnx.'.txt'; list($nick,$email,$pwd,$server)=explode('|',file_get($fn)); mysql_select_db(dbname($server)); createlayout_top('HackTheNet - Account anlegen'); echo '
'; $country=$_POST['country']; # IST DAS LAND VOLL ? START $c=GetCountry('id',$country); $subnet=$c[subnet]; $r=db_query('SELECT `id` FROM `pcs` WHERE `ip` LIKE \''.mysql_escape_string($subnet).'.%\';'); $cnt=mysql_num_rows($r); $xip=$cnt+1; if($xip > 254) { @unlink('data/regtmp/'.$tmpfnx.'.txt'); echo '

Sorry

Das gewählte Land ist schon "voll"! Bitte such dir ein anderes Land aus!

'; echo '
'.LF.'
'; createlayout_bottom(); exit; } # IST DAS LAND VOLL ? X_END file_put($fn,$nick.'|'.$email.'|'.$pwd.'|'.$country.'|'.$server); if($nick=='' || $email=='' || $pwd=='' || $country=='' || $server=='') { simple_message_single('FEHLER AUFGETRETEN!','error'); exit; } $body='Hallo '.$nick.'!'.LF."\n".'Du hast dich bei HTN.LAN angemeldet!'; $body.=' Hier sind deine Zugangsdaten!'.LF."\n".'Nickname: '.$nick."\n".'Passwort: '.$pwd."\n"."\n".'Bevor du deinen'; $body.=' neuen Account nutzen kannst, musst du ihn aktivieren! Rufe dazu die folgende URL in deinem Browser auf:'.LF."\n"; /*if($localhost) $body.='aktivieren

';*/ $body.="\n"; if(@mail($email,'Dein HTN.LAN Account',$body,'From: HTN.LAN ')) { readfile('data/pubtxt/regok.txt'); } else { echo nl2br($body); } echo '
'.LF.'
'; createlayout_bottom(); break; case 'regactivate': // ----------------------- RegActivate -------------------------- if(strlen($_GET[code])<>REG_CODE_LEN) { simple_message('Keine Hackversuche bitte!'); exit; } $fn='data/regtmp/'.$_GET['code'].'.txt'; if(file_exists($fn)==false) { simple_message('Ungültiger Registrierungscode!'); } else { $a=explode('|',file_get($fn)); list($nick,$email,$pwd,$country,$server)=explode('|',file_get($fn)); unlink($fn); mysql_select_db(dbname($server)); if(getuser($nick,'name')!==false) { simple_message('Ein Benutzer mit diesem Nicknamen existiert bereits!'); } $tableinfo=GetTableInfo('users',dbname($server)); $autoindex=$tableinfo['Auto_increment']; $r=addpc($country,$autoindex); if($r!=false) { $ts=time(); if ($only_big_accounts) { db_query('INSERT INTO users(name, email, password, pcs, liu, lic, clusterstat, login_time, bigacc)'.'VALUES(\''.mysql_escape_string($nick).'\',\''.mysql_escape_string($email).'\',\''.md5($pwd).'\', \''.mysql_escape_string($r).'\', \''.mysql_escape_string($ts).'\', \''.mysql_escape_string($ts).'\', 0, \''.mysql_escape_string($ts).'\',\'yes\');'); } else { db_query('INSERT INTO users(name, email, password, pcs, liu, lic, clusterstat, login_time, bigacc)'.'VALUES(\''.mysql_escape_string($nick).'\',\''.mysql_escape_string($email).'\',\''.md5($pwd).'\', \''.mysql_escape_string($r).'\', \''.mysql_escape_string($ts).'\', \''.mysql_escape_string($ts).'\', 0, \''.mysql_escape_string($ts).'\',\'no\');'); } $ownerid=mysql_insert_id(); db_query('UPDATE pcs SET owner=\''.mysql_escape_string($ownerid).'\', owner_name=\''.mysql_escape_string($nick).'\', owner_points=0, owner_cluster=0, owner_cluster_code=\'\' WHERE id='.mysql_escape_string($r)); db_query('INSERT INTO rank_users VALUES(0, '.mysql_escape_string($ownerid).', \''.mysql_escape_string($nick).'\', 0, 0);'); $rank=mysql_insert_id(); db_query('UPDATE users SET rank='.mysql_escape_string($rank).' WHERE id='.mysql_escape_string($ownerid).';'); /*setcookie('ref_user'); setcookie('regc1','yes',time()+24*60*60); $dummy=reloadsperre_CheckIP(true); # IP speichern */ createlayout_top('HackTheNet - Account aktivieren'); echo '

Account aktivieren

'; echo '

Account aktiviert!

'; echo '

Herzlichen Glückwunsch!
Dein Account wurde aktiviert!
Du kannst dich jetzt auf der Startseite einloggen!

'; } else { createlayout_top(); echo '

Account aktivieren

'; echo '

Sorry

Das gewählte Land ist schon "voll"! Bitte such dir ein anderes Land aus!

'; } echo '
'.LF.'
'; createlayout_bottom(); } break; case 'newpwdsubmit': // ----------------------- NEW PWD SUBMIT -------------------------- $usrname=strtolower(trim($_REQUEST['nick'])); $email=strtolower(trim($_REQUEST['email'])); $server=(int)$_POST['server']; if($server<1 || $server>2) $server=1; mysql_select_db(dbname($server)); if(check_email($email)===true) { $usr=getuser($usrname,'name'); if($usr!==false) { if($email==strtolower($usr[email])) { $pwd=generateMnemonicPassword(); db_query('UPDATE users SET password=\''.md5($pwd).'\' WHERE id=\''.mysql_escape_string($usr['id']).'\';'); if(@mail($email,'Zugangsdaten für HTN.LAN',"\n".'http://www.htn-lan.com/'."\n".'Benutzername: '.$usr['name'].LF.'Passwort: '.$pwd."\n",'From: HTN.LAN ')) { db_query('UPDATE users SET sid=\'\' WHERE id=\''.mysql_escape_string($usr['id']).'\' LIMIT 1;'); unset($usr); simple_message_single('Das neue Passwort wurde an Deine Email-Adresse geschickt!'); } else { # simple_message('Beim Verschicken der Email trat ein Fehler auf!'); // 1. Alte Version simple_message_single('Neues Passwort: '.$pwd); // 1. Neue Version /*if($_SERVER[HTTP_HOST]==localhost) echo '
Neues Passwort: '.$pwd;*/ // 1. Wird nicht mehr gebraucht } } else { unset($usr); simple_message_single('Falsche Email-Adresse!'); } } else { unset($usr); simple_message_single('Benutzername unbekannt!'); } } else { unset($usr); simple_message_single('Email-Adresse ungültig!'); } break; case 'stats_old': // ----------------------- STATS -------------------------- createlayout_top('HackTheNet - Statistik'); echo '
'."\n"; echo '

Statistik

'."\n"; if(mysql_select_db($database_prefix)) { $uinfo=gettableinfo('users',$database_prefix); $pcinfo=gettableinfo('pcs',$database_prefix); $cnt1=$uinfo['Rows']; $cnt2=$pcinfo['Rows']; $cnt=$cnt2-$cnt1; $cnt3=(int)@file_get('data/_server1/logins_'.strftime('%x').'.txt'); $cnt4=GetOnlineUserCnt($server); echo '

Allgemein

'; $fn='data/_server1/logins_'.strftime('%Y%m%d',time()-86400).'.txt'; if(file_exists($fn)) { $cnt=(int)file_get($fn); echo ''.LF.''.LF.''.LF.''."\n"; } echo '
Registrierte User: '.$cnt1.'
Computer: '.$cnt2.'
Spieler online: '.$cnt4.'
Logins heute: '.$cnt3.'
Logins gestern:'.$cnt.'
'."\n"; } echo "

Erweitert

"; include("statistik/index.php"); echo "\n".'
'; createlayout_bottom(); break; case 'stats': // ----------------------- STATS -------------------------- createlayout_top(); if(mysql_select_db($database_prefix)) { $uinfo=gettableinfo('users',$database_prefix); $pcinfo=gettableinfo('pcs',$database_prefix); $cnt1=$uinfo['Rows']; $cnt2=$pcinfo['Rows']; $cnt=$cnt2-$cnt1; $cnt3=(int)file_get('data/_server1/logins_'.strftime('%Y%m%d').'.txt'); $cnt4=GetOnlineUserCnt($server); echo '

Allgemein

'; $fn='data/_server1/logins_'.strftime('%Y%m%d',time()-86400).'.txt'; if(file_exists($fn)) { $cnt=(int)file_get($fn); echo ''.LF.''.LF.''.LF.''."\n"; } echo '
Registrierte User: '.$cnt1.'
Computer: '.$cnt2.'
Spieler online: '.$cnt4.'
Logins heute: '.$cnt3.'
Logins gestern:'.$cnt.'
'."\n"; } echo "

Erweitert

"; include("statistik/index.php"); echo "\n".'
'; createlayout_bottom(); break; case 'deleteaccount': // ----------------------- DELETE ACCOUNT -------------------------- $code=$_GET['code']; $x=@file_get('data/regtmp/del_account_'.$code.'.txt'); if($x) { $x=explode('|',$x); mysql_select_db(dbname($x[1])); if($usr=@delete_account($x[0])) { db_query('INSERT INTO logs SET type=\'deluser\', usr_id=\''.mysql_escape_string($usr['id']).'\', payload=\''.mysql_escape_string($usr['name']).' '.mysql_escape_string($usr['email']).' self-deleted\';'); simple_message('Account '.$usr['name'].' ('.$usrid.') gelöscht!'); } else { simple_message('Account '.$usr['name'].' existiert nicht!'); } } else simple_message('Ungültiger Account-Lösch-Code!'); break; default: // ----------------------- STARTSEITE -------------------------- if (!$htnlan_installed) { header("Location: install.php"); } else { createlayout_top('HTN.LAN'); include('data/pubtxt/startseite.php'); createlayout_bottom(); } } /* function listnews($file) { $f = fopen($file,'r'); $blub = fread($f,65535); fclose($f); $p = xml_parser_create(); xml_parse_into_struct($p,$blub,$values,$index); xml_parser_free($p); $pointer = 0; for($i=0;$i<=sizeof($values);$i++) { if($values[$i]['tag']=='TITLE') { $linktitle[$pointer] = $values[$i]['value']; } if($values[$i]['tag']=='LINK') { $linkurl[$pointer] = $values[$i]['value']; $pointer++; } } echo ''; for($i=1;$i<=sizeof($linktitle);$i++) { if($linkurl[$i]!='' && $linktitle[$i]!='') echo ''; } echo "
'.$linktitle[$i].'
"; }*/ function generateMnemonicPassword() { $charset[0] = array('a', 'e', 'i', 'o', 'u'); $charset[1] = array('b', 'c', 'd', 'f', 'g', 'h', 'j', 'k', 'l', 'm', 'n', 'p', 'r', 's', 't', 'v', 'w', 'x', 'z'); $specials=array('!', '$', '%', '&', '/', '=', '?', '+', '-', '.', ':', ',', ';', '*', '#','_'); $password = ''; for ($i = 1; $i <= 2; $i++) { $password .= $charset[$i % 2][array_rand($charset[$i % 2])]; } $password.=$specials[mt_rand(0,count($specials)-1)]; for ($i = 1; $i <= 2; $i++) { $password .= $charset[$i % 2][array_rand($charset[$i % 2])]; } for ($i = 1; $i <= 2; $i++) { $password .= rand(0, 9); } $password.=$charset[1][mt_rand(0,count($charset[1])-1)]; return $password; } ?>