<?php /* * Created on 21.08.2007 * * @copyright (c) 2010 animegame.eu * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public Licence * */ session_start(); ?> <?php /****************************************************************************** * Dieser Skript ist ein Kontrollpanel fuer GM's ******************************************************************************* * Autor: Pascal Proksch * Erstellungsdatum: 21.08.2007 * Zuletzt verändert: 03.10.2007 *******************************************************************************/ include_once('../path.inc.php'); // get the path ;) include_once(ROOT_PATH.'/include/config/db.inc.php'); include_once(ROOT_PATH.'/include/designfunctions.inc.php'); include_once(ROOT_PATH.'/include/fehlerausgabe.inc.php'); include_once(ROOT_PATH.'/include/bann.inc.php'); include_once(ROOT_PATH.'/include/faq.inc.php'); include_once(ROOT_PATH.'/include/parse.inc.php'); include_once(ROOT_PATH.'/include/rassen.inc.php'); include_once(ROOT_PATH.'/include/user.inc.php'); include_once(ROOT_PATH.'/include/usergroup.inc.php'); include_once(ROOT_PATH.'/gm/include/attacken.inc.php'); include_once(ROOT_PATH.'/gm/include/bilderschau.inc.php'); include_once(ROOT_PATH.'/gm/include/clan.inc.php'); include_once(ROOT_PATH.'/gm/include/geheim.inc.php'); include_once(ROOT_PATH.'/gm/include/info.inc.php'); include_once(ROOT_PATH.'/gm/include/item.inc.php'); include_once(ROOT_PATH.'/gm/include/monster.inc.php'); include_once(ROOT_PATH.'/gm/include/npc.inc.php'); include_once(ROOT_PATH.'/gm/include/shop.inc.php'); include_once(ROOT_PATH.'/gm/include/user.inc.php'); include_once(ROOT_PATH.'/gm/include/rassen.inc.php'); include_once(ROOT_PATH.'/gm/include/tournament.inc.php'); function logaction($message){ $sql = 'Insert into gm_actions(userid, time, message, ip) values('.$_SESSION['user'].', now(), \''.$message.'\', \''.$_SERVER['REMOTE_ADDR'].'\')'; // echo $sql.'<br>'; mysql_query($sql); } function showActionLog(){ $qry = mysql_query('Select g.time, u.nickname, g.ip, g.message from gm_actions as g inner join user as u on g.userid = u.id order by time desc LIMIT 100'); while($row = mysql_fetch_assoc($qry)){ echo $row['time'].' '.$row['nickname'].' ('.$row['ip'].'): '.$row['message'].'<br>'."\n"; } echo '<a href="'.$_SERVER['PHP_SELF'].'">Zum Hauptmenu</a>'; } // Returns bool function checkLoginData($userid, $password){ if(checkSessionPasswort($userid, $password)){ return true; } else{ logout(); return false; } } function loginUser($user,$pass){ if(checkLoginPassword($user,$pass)){ $test = 'SELECT * from user where nickname = \''.$user.'\''; $qry = mysql_query($test); $result = mysql_fetch_assoc($qry); $usergroups = getUserGroups($user); if(isUserInGroup($usergroups, ADMIN)) { $_SESSION['user'] = $result['id']; $_SESSION['username'] = $result['nickname']; $_SESSION['password'] = $result['passwort']; $_SESSION['usergroups'] = $usergroups; echo '<a href="'.$_SERVER['PHP_SELF'].'">Zum Hauptmenu</a>'; return true; } return false; } echo displayHistoryBackLink(); return false; } function displayLogin(){ ?> <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST"> <table> <tr> <td> <input name="user"></input> </td> </tr> <tr> <td> <input name="password" type="password"></input> </td> </tr> <tr> <td> <input type="submit"></input> </td> </tr> </table> </form> <?php } function displayOptions(){ // FIXME: Hinzufuegen der Includes und der Entry Funktion im Array und wir brauchen // in dieser Datei deutlich weniger Copy&Paste! $entries = array("bilder" => "Bilderschau", "faq" => "FAQ bearbeiten", "rassen" => "Rassen bearbeiten", "attacken" => "Attacken bearbeiten", "attackentypen" => "Attackentypen bearbeiten", "poll" => "Umfragen bearbeiten", "items" => "Items bearbeiten", "clan" => "Clan bearbeiten", "geheim" => "Geheim bearbeiten", "usergroups" => "Nutzergruppen bearbeiten", "bann" => "Banns und andere unschöne Sachen", "tournament" => "Turniere bearbeiten", "qnpc" => "Schatzsuche-Monster bearbeiten", "npc" => "NPC bearbeiten", "shop" => "Shakkys Shop Angebote bearbeiten", "news" => "News bearbeiten", "cheat" => "Multiuser und Cheater", "log" => "Log ansehen", "logout" => "Log out" ); echo '<table>'."\n"; foreach($entries as $key => $value) { echo '<tr><td><a href="'.$_SERVER['PHP_SELF'].'?choose='.$key.'">'.$value.'</a></td></tr>'."\n"; } echo '</table>'."\n"; } function logout(){ session_unset(); } function notyetimplemented(){ ?> <table> <tr> <td> Leider ist diese Funktion noch nicht implementiert! </td> </tr> <tr> <td> <?php echo '<a href="'.$_SERVER['PHP_SELF'].'">Zum Hauptmenu</a>'; ?> </td> </tr> </table> <?php } if(checkLoginData($_SESSION['user'],$_SESSION['password'])){ // Funtionen if($_REQUEST['choose'] == 'bilder'){ zeigeBilder($_REQUEST['begin'],$_REQUEST['bildurl'], $_REQUEST['sure'], $_REQUEST['view'], $_REQUEST['letter'], $_REQUEST['date_from'], $_REQUEST['date_until']); } else if($_REQUEST['choose'] == 'logout'){ logout(); } else if($_REQUEST['choose'] == 'attacken'){ displayAttackenMenu($_REQUEST['action'], $_REQUEST['attackname'], $_REQUEST['attackid'], $_REQUEST['depth'], $_REQUEST['name'], $_REQUEST['starke'], $_REQUEST['verteidigung'], $_REQUEST['speed'], $_REQUEST['hp'], $_REQUEST['mp'], $_REQUEST['rassen'], $_REQUEST['level'], $_REQUEST['geld'], $_REQUEST['options'], $_REQUEST['type'], $_REQUEST['info'], $_REQUEST['req_atk'], $_REQUEST['req_lvl'], $_REQUEST['Frucht'], $_REQUEST['runden'], $_REQUEST['maxlvl'], $_REQUEST); } else if($_REQUEST['choose'] == 'attackentypen') { displayAttackenTypen($_REQUEST); } else if($_REQUEST['choose'] == 'bann'){ displayBannOptions($_REQUEST['action'], $_REQUEST['username'],$_REQUEST['opfer'],$_REQUEST['gamebann'],$_REQUEST['shoutbann'],$_REQUEST['forenbann'],$_REQUEST['anonid']); } else if($_REQUEST['choose'] == 'items'){ displayItems($_REQUEST['action'], $_REQUEST['task'], $_REQUEST['itemid'], $_REQUEST['itemtable'], $_REQUEST['searchstring'],$_REQUEST['s_itemtable'],$_REQUEST['page'], $_REQUEST['data']); } else if($_REQUEST['choose'] == 'faq'){ displayFaq($_REQUEST['action'], $_REQUEST['faqentry'],$_REQUEST['parent'],$_REQUEST['header'],$_REQUEST['body'], $_REQUEST['child']); } else if($_REQUEST['choose'] == 'qnpc'){ displayQuestNPC($_REQUEST['action'],$_REQUEST['npc_name'],$_REQUEST['starke'],$_REQUEST['speed'],$_REQUEST['verteidigung'],$_REQUEST['ausdauer'],$_REQUEST['hp'],$_REQUEST['mp'],$_REQUEST['level'],$_REQUEST['orte'],$_REQUEST['id'], $_REQUEST['anzahl'], $_REQUEST['confirm'], $_REQUEST['glueck']); } else if($_REQUEST['choose'] == 'poll'){ displayPolls($_REQUEST['action'], $_REQUEST['openumfrage'], $_REQUEST['closeumfrage'],$_REQUEST['thema'],$_REQUEST['optionen'],$_REQUEST['text'],$_REQUEST['pollid']); } else if($_REQUEST['choose'] == 'clan'){ displayClanMenu($_REQUEST['action'],$_REQUEST['raumid'],$_REQUEST['raumname'],$_REQUEST['staerke'],$_REQUEST['verteidigung'],$_REQUEST['glueck'],$_REQUEST['ausdauer'],$_REQUEST['geschwindigkeit'], $_REQUEST['info'], $_REQUEST['req_level'], $_REQUEST['ccfee'], $_REQUEST['data']); } else if($_REQUEST['choose'] == 'drop'){ displayDrops(); } else if($_REQUEST['choose'] == 'news'){ displayNews($_REQUEST['action'], $_SESSION['username'], $_REQUEST['newsid'], $_REQUEST['header'], $_REQUEST['value']); } else if($_REQUEST['choose'] == 'log'){ showActionLog(); } else if($_REQUEST['choose'] == 'cheat'){ displayCheater($_REQUEST['action'], $_REQUEST['from'], $_REQUEST['until'], $_REQUEST['user1'], $_REQUEST['user2'], $_REQUEST['tradeid'], $_REQUEST['verify']); } else if($_REQUEST['choose'] == 'npc'){ displayNPC($_REQUEST['action'], $_REQUEST['task'], $_REQUEST['charid'], $_REQUEST['table'], $_REQUEST['page'], $_REQUEST['data'], $_REQUEST['att_ids']); } else if($_REQUEST['choose'] == 'shop'){ displayShop($_REQUEST['action'], $_REQUEST['s_id'],$_REQUEST['info'], $_REQUEST['s_name'] , $_REQUEST['s2_name'], $_REQUEST['s3_name'], $_REQUEST['s_typ'], $_REQUEST['preis'], $_REQUEST['frei'], $_REQUEST['anzahl']); } else if($_REQUEST['choose'] == 'usergroups'){ displayUserGroups($_REQUEST['action'] ,$_REQUEST['uname'] ,$_REQUEST['ugname'], $_REQUEST['delete'], $_REQUEST['add']); } else if($_REQUEST['choose'] == 'rassen'){ displayRassen($_REQUEST); } else if($_REQUEST['choose'] == 'geheim'){ displayGeheim($_REQUEST); } else if($_REQUEST['choose'] == 'tournament'){ //_POST['name'] anstatt _REQUEST weil schon durch username überschrieben wird displayTournamentMenu($_REQUEST['action'], $_REQUEST['klein'], $_REQUEST['wochen'], $_REQUEST['minlevel'], $_REQUEST['maxlevel'], $_REQUEST['fusion'], $_REQUEST['special'], $_REQUEST['gain'], $_REQUEST['randomize'], $_POST['name'], $_REQUEST['anzahl']); }else { displayOptions(); } } else if(isset($_POST['user'])){ if(!loginUser($_POST['user'],$_POST['password'])){ echo 'Login ist fehlgeschlagen (Vielleicht vertippt '.$_POST['user'].'?)!!<br>'; displayLogin(); } } else{ // Einloggen displayLogin(); } ?>