From 40dfa7d5c0dc8e4cb2c95e403b6b4b2c4bf70644 Mon Sep 17 00:00:00 2001 From: Matthijs Kuiper Date: Sat, 4 Feb 2017 16:05:45 +0100 Subject: Original UTStats beta 4.2.8 --- html/pages/admin/acelog.php | 318 +++++++++++++++++++++++++++++ html/pages/admin/aclog.php | 108 ++++++++++ html/pages/admin/check.php | 408 +++++++++++++++++++++++++++++++++++++ html/pages/admin/dmatch.php | 105 ++++++++++ html/pages/admin/dplayer.php | 76 +++++++ html/pages/admin/dpmatch.php | 106 ++++++++++ html/pages/admin/editgames.php | 74 +++++++ html/pages/admin/editgamestype.php | 228 +++++++++++++++++++++ html/pages/admin/editweapons.php | 58 ++++++ html/pages/admin/emptydb.php | 62 ++++++ html/pages/admin/index.htm | 0 html/pages/admin/ipsearch.php | 58 ++++++ html/pages/admin/main.php | 117 +++++++++++ html/pages/admin/mplayers.php | 91 +++++++++ html/pages/admin/mservers.php | 41 ++++ html/pages/admin/pban.php | 74 +++++++ html/pages/admin/pinfo.php | 91 +++++++++ html/pages/admin/plm.php | 329 ++++++++++++++++++++++++++++++ html/pages/admin/recalcflags.php | 72 +++++++ html/pages/admin/recalcranking.php | 77 +++++++ html/pages/admin/utdclog.php | 137 +++++++++++++ html/pages/admin/utdcshot.php | 22 ++ 22 files changed, 2652 insertions(+) create mode 100755 html/pages/admin/acelog.php create mode 100755 html/pages/admin/aclog.php create mode 100755 html/pages/admin/check.php create mode 100755 html/pages/admin/dmatch.php create mode 100755 html/pages/admin/dplayer.php create mode 100755 html/pages/admin/dpmatch.php create mode 100755 html/pages/admin/editgames.php create mode 100755 html/pages/admin/editgamestype.php create mode 100755 html/pages/admin/editweapons.php create mode 100755 html/pages/admin/emptydb.php create mode 100755 html/pages/admin/index.htm create mode 100755 html/pages/admin/ipsearch.php create mode 100755 html/pages/admin/main.php create mode 100755 html/pages/admin/mplayers.php create mode 100755 html/pages/admin/mservers.php create mode 100755 html/pages/admin/pban.php create mode 100755 html/pages/admin/pinfo.php create mode 100755 html/pages/admin/plm.php create mode 100755 html/pages/admin/recalcflags.php create mode 100755 html/pages/admin/recalcranking.php create mode 100755 html/pages/admin/utdclog.php create mode 100755 html/pages/admin/utdcshot.php (limited to 'html/pages/admin') diff --git a/html/pages/admin/acelog.php b/html/pages/admin/acelog.php new file mode 100755 index 0000000..365174a --- /dev/null +++ b/html/pages/admin/acelog.php @@ -0,0 +1,318 @@ +'); +} + +// Get filter, order and set sorting +if (isset($_GET[order])) { + $order = my_addslashes($_GET[order]); + setcookie('uts_ace_order', $_GET['order'], time()+60*60*24*30*365); +} +else if (isset($_COOKIE['uts_ace_order'])){ + $order = $_REQUEST['uts_ace_order']; +} +else { + $order = "time"; +} + +if (isset($_GET[sort])) { + $sort = my_addslashes($_GET[sort]); + setcookie('uts_ace_sort', $_GET['sort'], time()+60*60*24*30*365); +} +else if (isset($_COOKIE['uts_ace_sort'])){ + $sort = $_REQUEST['uts_ace_sort']; +} +else { + $sort = ($order == "time") ? "DESC" : "ASC"; +} + +if (isset($_GET[timeout])) { + $timeout = my_addslashes($_GET[timeout]); + setcookie('uts_ace_timeout', $_GET['timeout'], time()+60*60*24*30*365); +} +else if (isset($_COOKIE['uts_ace_timeout'])){ + $timeout = $_REQUEST['uts_ace_timeout']; +} +else { + $timeout = 0; +} + +if (isset($_GET[show])) { + $show = my_addslashes($_GET[show]); + setcookie('uts_ace_show', $_GET['show'], time()+60*60*24*30*365); +} +else if (isset($_COOKIE['uts_ace_show'])){ + $show = $_REQUEST['uts_ace_show']; +} +else { + $show = "week"; +} + +if (!empty($filename)) { + if (!file_exists('logs/ace/'. $filename) or !is_file('logs/ace/'. $filename)) die('File not found'); + if (isset($_REQUEST['del'])) { + unlink('logs/ace/'. $filename); + $filename = ''; + } +} + +if (empty($filename)) { + echo ' + + +
+ + + + + + + + + + + + + '; + $logdir = opendir('logs/ace'); + $logs = array(); + $sortlogs = array(); + $i = 0; + while (false !== ($filename = readdir($logdir))) { + if (!is_file('logs/ace/'. $filename)) continue; + if ($filename == '.htaccess' or $filename == 'index.htm') continue; + + preg_match('/\d{4}\.\d{2}.\d{2}.\d{2}.\d{2}.\d{2}/', $filename, &$date); + $adate = preg_split('/\./', $date[0]); + // filter on days + if ($show != "all") { + // calculate days + $logAgeInDays = abs(strtotime(date("Y/m/d")) - strtotime("$adate[0]/$adate[1]/$adate[2]"))/68400-1; + if (($show == "day" and $logAgeInDays > 1) + or ($show == "week" and $logAgeInDays > 7) + or ($show == "month" and $logAgeInDays > 31)) { + continue; + } + } + + $i++; + $TimeStamp = "unknown"; + $PlayerName = "unknown"; + $KickReason = "unknown"; + if (substr($filename, strlen($filename) - strlen($import_ace_screenshot_extension)) == $import_ace_screenshot_extension + and substr($filename, 0, strlen($import_ace_screenshot_start)) == $import_ace_screenshot_start) { + // Screenshot + $TimeStamp = "$adate[2]-$adate[1]-$adate[0] / $adate[3]:$adate[4]:$adate[5]"; + $PlayerName = "Unknown"; + $KickReason = "Screenshot"; + } + else { + // logfile + + $fp = my_fopen('logs/ace/'.$filename, 'rb', $compression = NULL); + if (!$fp) die("Error opening file"); + + while (($line = my_fgets($fp, 5000, $compression)) !== FALSE) { + $info = preg_split('/\s/', $line, 3); + $info[2] = preg_replace('/[\r\n]+/', '', $info[2]); + if ($info[1] == "TimeStamp....:") { + $TimeStamp = $info[2]; + } + else if ($info[1] == "PlayerName...:") { + $PlayerName = $info[2]; + } + else if ($info[1] == "KickReason...:") { + $KickReason = $info[2]; + } + else if ($info[1] == "RequestedBy..:") { + $KickReason = "Requested Screenshot"; + } + else if ($info[1] == "WARNING:") { + $ainfo = preg_split('/\s/', $info[2]); + if ($ainfo[5] == "UDP") { + $TimeStamp = "$adate[2]-$adate[1]-$adate[0] / $adate[3]:$adate[4]:$adate[5]"; + $PlayerName = $ainfo[1]; + $KickReason = "Proxy/Tunnel"; + } + } + else if ($info[2] == ": Kicked - [REASON] Timeout during check spawn") { + $TimeStamp = "$adate[2]-$adate[1]-$adate[0] / $adate[3]:$adate[4]:$adate[5]"; + $PlayerName = preg_replace('/[\[\]]/', '', $info[1]); + $KickReason = "Timeout during check spawn"; + } + } + my_fclose($fp, $compression); + } + + // don't show timeout logs? + if (($timeout == 0) + and (($KickReason == "Timeout during check spawn") + or ($KickReason == "Timeout during checks") + or ($KickReason == "Timeout during initial check"))) { + continue; + } + + $logs[$i] = array($filename, $TimeStamp, $PlayerName, $KickReason); + $extra = 0; + if (substr($filename, -4) == '.bz2') $extra = 4; + if (substr($filename, -3) == '.gz') $extra = 3; + + if ($order == "time") { + $sortlogs[$i] = $date[0]; + } + else if ($order == "name") { + $sortlogs[$i] = strtolower($PlayerName); + } + else if ($order == "reason") { + $sortlogs[$i] = strtolower($KickReason); + } + } + closedir($logdir); + if (count($logs) == 0) { + echo ''; + } else { + if ($sort == "ASC") { + asort($sortlogs); + } + else { + arsort($sortlogs); + } + $i = 0; + foreach($sortlogs as $id => $date) { + $log = $logs[$id][0]; + if (empty($log)) { + continue; + } + $TimeStamp = $logs[$id][1]; + $PlayerName = $logs[$id][2]; + $KickReason = $logs[$id][3]; + $Screenshot = $logs[$id][4]; + $extra = 0; + if (substr($log, -4) == '.bz2') $extra = 4; + if (substr($log, -3) == '.gz') $extra = 3; + + $i++; + $class = ($i%2) ? 'grey' : 'grey2'; + echo ''; + } + } + echo ''; +} + + +if (!empty($filename)) { + if (!file_exists('logs/ace/'. $filename) or !is_file('logs/ace/'. $filename)) die('File not found (2)'); + echo'
Available ACE Logs:
Filter: + + Show timeouts
Time'.SortPic('time', $order, $sort).'Player Name'.SortPic('name', $order, $sort).'Kick Reason'.SortPic('reason', $order, $sort).'
No logs available!
'; + $tmp = substr($log, strlen($log) - (23 + $extra), 19); + $tmp = str_replace('.', '', $tmp); + // $ts = mtimestamp($tmp); + echo ' '.$TimeStamp.''; + echo ''; + echo ''.$PlayerName.''; + echo ''; + echo ''.$KickReason.''; + echo ''; + $d_size = file_size_info(filesize('logs/ace/'. $log)); + echo $d_size['size'] .' '. $d_size['type']; + echo ''; + echo 'Delete'; + echo '
+ + + + '; + if (substr($filename, strlen($filename) - strlen($import_ace_screenshot_extension)) == $import_ace_screenshot_extension + and substr($filename, 0, strlen($import_ace_screenshot_start)) == $import_ace_screenshot_start) { + // screenshot + echo ''; + } + else { + $fp = my_fopen('logs/ace/'.$filename, 'rb', $compression = NULL); + if (!$fp) die("Error opening file"); + + $i = 0; + echo ''; + */ + echo wordwrap(htmlentities($line), 80, '
', 1) ."
"; + $info = preg_split('/\s/', $line, 3); + $info[2] = preg_replace('/[\r\n]/', '', $info[2]); + if ($info[1] == "FileName.....:") { + $Screenshot = basename($info[2]); + } + + } + echo ''; + my_fclose($fp, $compression); + + // look for a matching ace screenshot + if (isset($Screenshot) and file_exists('logs/ace/' . $Screenshot)) { + echo ' + + + '; + + echo ''; + } + } +} + +echo ''; +if (!empty($filename)) echo''; +echo''; +echo '
'.$filename.''; + echo 'Delete'; + echo '
'; + echo ''; + echo '
'; + + while (($line = my_fgets($fp, 5000, $compression)) !== FALSE) { + /* + $i++; + $class = ($i%2) ? 'grey' : 'grey2'; + echo '
'; + echo ''; + echo htmlentities($line); + echo ''; + echo '
'.$Screenshot.''; + echo 'Delete'; + echo '
'; + echo ''; + echo '
Go Back To Logfile Overview
Go Back To Admin Page
'; + +?> diff --git a/html/pages/admin/aclog.php b/html/pages/admin/aclog.php new file mode 100755 index 0000000..ada35c8 --- /dev/null +++ b/html/pages/admin/aclog.php @@ -0,0 +1,108 @@ + + + + '; + $logdir = opendir('logs/ac'); + $logs = array(); + $sort = array(); + $i = 0; + while (false !== ($filename = readdir($logdir))) { + if (!is_file('logs/ac/'. $filename)) continue; + if ($filename == '.htaccess' or $filename == 'index.htm') continue; + $i++; + $logs[$i] = $filename; + $extra = 0; + if (substr($filename, -4) == '.bz2') $extra = 4; + if (substr($filename, -3) == '.gz') $extra = 3; + + $sort[$i] = substr($filename, strlen($filename) - (23 + $extra), 19); + } + closedir($logdir); + if (count($logs) == 0) { + echo ''; + } else { + arsort($sort); + $i = 0; + foreach($sort as $id => $date) { + $log = $logs[$id]; + $extra = 0; + if (substr($log, -4) == '.bz2') $extra = 4; + if (substr($log, -3) == '.gz') $extra = 3; + + $i++; + $class = ($i%2) ? 'grey' : 'grey2'; + echo ''; + } + } +} + + +if (!empty($filename)) { + if (!file_exists('logs/ac/'. $filename) or !is_file('logs/ac/'. $filename)) die('bla'); + echo'
Available AnthChecker Logs:
No logs available!
'; + $tmp = substr($log, strlen($log) - (23 + $extra), 19); + $tmp = str_replace('.', '', $tmp); + $ts = mtimestamp($tmp); + echo ' '.date('Y-m-d H:i', $ts).''; + echo ''; + echo ''.substr($log, 6, strlen($log) - 30 - $extra).''; + echo ''; + $d_size = file_size_info(filesize('logs/ac/'. $log)); + echo $d_size['size'] .' '. $d_size['type']; + echo ''; + echo 'Delete'; + echo '
+ + + + '; + + $fp = my_fopen('logs/ac/'.$filename, 'rb', $compression = NULL); + if (!$fp) die("Error opening file"); + + $i = 0; + echo ''; + */ + echo wordwrap(htmlentities($line), 80, '
', 1) ."
"; + } + echo ''; + my_fclose($fp, $compression); +} + +echo ''; +if (!empty($filename)) echo''; +echo''; +echo '
'.$filename.''; + echo 'Delete'; + echo '
'; + + while (($line = my_fgets($fp, 5000, $compression)) !== FALSE) { + /* + $i++; + $class = ($i%2) ? 'grey' : 'grey2'; + echo '
'; + echo ''; + echo htmlentities($line); + echo ''; + echo '
Go Back To Logfile Overview
Go Back To Admin Page
'; + +?> diff --git a/html/pages/admin/check.php b/html/pages/admin/check.php new file mode 100755 index 0000000..a03bf91 --- /dev/null +++ b/html/pages/admin/check.php @@ -0,0 +1,408 @@ + + + + +
Server configuration check

'; + +// Check access rights +echo ' + + + + '; + +// directories +foreach (array("logs", "logs/ac", "logs/backup", "logs/utdc", "logs/ace") as $dir) +{ + echo ' + + '; + if (!file_exists($dir)) { + if (mkdir($dir, 0777)) { + echo ' + '; + } + else { + echo ' + '; + } + } + else if (!is_dir($dir)) { + echo ' + '; + } + else if (!is_writable($dir)) { + if (@chmod($dir, 0777)) { + echo ' + '; + } + else { + echo ' + '; + } + } + else { + echo ' + '; + } +} + +// files: +foreach (array("includes/ftptimestamp.php") as $file) +{ + echo ' + + '; + if (!file_exists($file)) { + echo ' + '; + } + else if (!is_file($file)) { + echo ' + '; + } + else if (!is_writable($file)) { + if (@chmod($file, 0777)) { + echo ' + '; + } + else { + echo ' + '; + } + } + else { + echo ' + '; + } +} + +echo ' +
Checking access rights
', $dir, 'Created
Not found!
Not a directory!
SET
Incorrect access rights: ' , substr(sprintf('%o', fileperms($dir)), -4) , '
OK
', $file, 'Not found!
Not a file!
SET
Incorrect access rights: ' , substr(sprintf('%o', fileperms($file)), -4) , '
OK
+
* Might not work correctly on Windows systems *

'; + + +// connect to the database and check structure +echo ' + + + + '; + +// database creation array +// to add a database simply add $create_table['dbname'] = "database creation sql" +$create_table['uts_events'] = " +CREATE TABLE `uts_events` ( + `id` mediumint(10) NOT NULL auto_increment, + `matchid` mediumint(10) NOT NULL default '0', + `playerid` tinyint(3) NOT NULL default '0', + `col0` varchar(20) NOT NULL default '', + `col1` varchar(120) NOT NULL default '', + `col2` varchar(120) NOT NULL default '', + `col3` varchar(120) NOT NULL default '', + `col4` varchar(120) NOT NULL default '', + PRIMARY KEY (`id`) +); +"; + +$create_table['uts_games'] = " +CREATE TABLE `uts_games` ( + `id` tinyint(3) unsigned NOT NULL auto_increment, + `gamename` varchar(100) NOT NULL default '', + `name` varchar(100) NOT NULL default '', + PRIMARY KEY (`id`) +) ENGINE=MyISAM AUTO_INCREMENT=9 ; +"; + +$create_table['uts_gamestype'] = " +CREATE TABLE `uts_gamestype` ( + `id` smallint(5) unsigned NOT NULL auto_increment, + `serverip` varchar(21) NOT NULL default '', + `gamename` varchar(100) NOT NULL default '', + `mutator` varchar(100) NOT NULL default '', + `gid` tinyint(3) unsigned NOT NULL default '0', + PRIMARY KEY (`id`) +) ENGINE=MyISAM; +"; + +$create_table['uts_ignoreips'] = " +CREATE TABLE IF NOT EXISTS `uts_ignoreips` ( + `ip` bigint(15) NOT NULL default '0', + PRIMARY KEY (`ip`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1; +"; + +$create_table['uts_killsmatrix'] = " +CREATE TABLE `uts_killsmatrix` ( + `matchid` mediumint(8) unsigned NOT NULL default '0', + `killer` tinyint(4) NOT NULL default '0', + `victim` tinyint(4) NOT NULL default '0', + `kills` tinyint(3) unsigned NOT NULL default '0', + KEY `matchid` (`matchid`) +) ENGINE=MyISAM; +"; + +$create_table['uts_match'] = " +CREATE TABLE `uts_match` ( + `id` mediumint(10) NOT NULL auto_increment, + `time` varchar(14) default NULL, + `servername` varchar(100) NOT NULL default '', + `serverip` varchar(21) NOT NULL default '0', + `gamename` varchar(100) NOT NULL default '0', + `gid` tinyint(3) unsigned NOT NULL default '0', + `gametime` float NOT NULL default '0', + `mutators` longtext NOT NULL, + `insta` tinyint(1) NOT NULL default '0', + `tournament` varchar(5) NOT NULL default '', + `teamgame` varchar(5) NOT NULL default '', + `mapname` varchar(100) NOT NULL default '', + `mapfile` varchar(100) NOT NULL default '', + `serverinfo` mediumtext NOT NULL, + `gameinfo` mediumtext NOT NULL, + `firstblood` int(10) unsigned NOT NULL default '0', + `frags` mediumint(5) NOT NULL default '0', + `deaths` mediumint(5) NOT NULL default '0', + `kills` mediumint(5) NOT NULL default '0', + `suicides` mediumint(5) NOT NULL default '0', + `teamkills` mediumint(5) NOT NULL default '0', + `assaultid` varchar(10) NOT NULL default '', + `ass_att` tinyint(1) NOT NULL default '0', + `ass_win` tinyint(4) NOT NULL default '0', + `t0` tinyint(1) NOT NULL default '0', + `t1` tinyint(1) NOT NULL default '0', + `t2` tinyint(1) NOT NULL default '0', + `t3` tinyint(1) NOT NULL default '0', + `t0score` mediumint(5) NOT NULL default '0', + `t1score` mediumint(5) NOT NULL default '0', + `t2score` mediumint(5) NOT NULL default '0', + `t3score` mediumint(5) NOT NULL default '0', + PRIMARY KEY (`id`), + KEY `serverip` (`serverip`) +) ENGINE=MyISAM AUTO_INCREMENT=83 ; +"; + +$create_table['uts_pinfo'] = " +CREATE TABLE `uts_pinfo` ( + `id` int(10) unsigned NOT NULL auto_increment, + `name` varchar(50) NOT NULL default '', + `country` char(2) NOT NULL default '', + `banned` enum('Y','N') NOT NULL default 'N', + PRIMARY KEY (`id`), + KEY `name` (`name`(22)) +) ENGINE=MyISAM AUTO_INCREMENT=136 ; +"; + +$create_table['uts_player'] = " +CREATE TABLE `uts_player` ( + `id` mediumint(10) NOT NULL auto_increment, + `matchid` mediumint(10) NOT NULL default '0', + `insta` tinyint(1) NOT NULL default '0', + `playerid` tinyint(3) NOT NULL default '0', + `pid` int(10) unsigned NOT NULL default '0', + `team` tinyint(2) unsigned NOT NULL default '0', + `isabot` tinyint(1) NOT NULL default '0', + `country` char(2) NOT NULL default '', + `ip` int(10) unsigned NOT NULL default '0', + `gid` tinyint(3) unsigned NOT NULL default '0', + `gametime` float NOT NULL default '0', + `gamescore` smallint(5) NOT NULL default '0', + `lowping` smallint(5) unsigned NOT NULL default '0', + `highping` smallint(5) unsigned NOT NULL default '0', + `avgping` smallint(5) unsigned NOT NULL default '0', + `frags` smallint(5) NOT NULL default '0', + `deaths` smallint(5) unsigned NOT NULL default '0', + `kills` smallint(5) unsigned NOT NULL default '0', + `suicides` smallint(5) unsigned NOT NULL default '0', + `teamkills` smallint(5) unsigned NOT NULL default '0', + `eff` float NOT NULL default '0', + `accuracy` float NOT NULL default '0', + `ttl` float NOT NULL default '0', + `flag_taken` smallint(5) unsigned NOT NULL default '0', + `flag_dropped` smallint(5) unsigned NOT NULL default '0', + `flag_return` smallint(5) unsigned NOT NULL default '0', + `flag_capture` tinyint(3) unsigned NOT NULL default '0', + `flag_cover` smallint(5) unsigned NOT NULL default '0', + `flag_seal` smallint(5) unsigned NOT NULL default '0', + `flag_assist` smallint(5) unsigned NOT NULL default '0', + `flag_kill` mediumint(5) unsigned NOT NULL default '0', + `flag_pickedup` smallint(5) unsigned NOT NULL default '0', + `dom_cp` smallint(5) unsigned NOT NULL default '0', + `ass_obj` smallint(5) unsigned NOT NULL default '0', + `spree_double` smallint(5) unsigned NOT NULL default '0', + `spree_triple` smallint(5) unsigned NOT NULL default '0', + `spree_multi` smallint(5) unsigned NOT NULL default '0', + `spree_mega` tinyint(3) unsigned NOT NULL default '0', + `spree_ultra` tinyint(3) unsigned NOT NULL default '0', + `spree_monster` tinyint(3) unsigned NOT NULL default '0', + `spree_kill` smallint(5) unsigned NOT NULL default '0', + `spree_rampage` smallint(5) unsigned NOT NULL default '0', + `spree_dom` tinyint(3) unsigned NOT NULL default '0', + `spree_uns` tinyint(3) unsigned NOT NULL default '0', + `spree_god` smallint(5) unsigned NOT NULL default '0', + `pu_pads` tinyint(3) unsigned NOT NULL default '0', + `pu_armour` tinyint(3) unsigned NOT NULL default '0', + `pu_keg` tinyint(3) unsigned NOT NULL default '0', + `pu_invis` tinyint(3) unsigned NOT NULL default '0', + `pu_belt` tinyint(3) unsigned NOT NULL default '0', + `pu_amp` tinyint(3) unsigned NOT NULL default '0', + `rank` float NOT NULL default '0', + PRIMARY KEY (`id`), + KEY `matchid` (`matchid`,`team`), + KEY `pid` (`pid`), + KEY `gid` (`gid`) +) ENGINE=MyISAM AUTO_INCREMENT=615 ; +"; + +$create_table['uts_rank'] = " +CREATE TABLE `uts_rank` ( + `id` mediumint(10) NOT NULL auto_increment, + `time` float unsigned NOT NULL default '0', + `pid` int(10) unsigned NOT NULL default '0', + `gid` tinyint(3) unsigned NOT NULL default '0', + `rank` float NOT NULL default '0', + `prevrank` float NOT NULL default '0', + `matches` mediumint(5) NOT NULL default '0', + PRIMARY KEY (`id`), + KEY `name` (`pid`,`gid`), + KEY `rank` (`rank`), + KEY `gamename` (`gid`,`rank`) +) ENGINE=MyISAM AUTO_INCREMENT=173 ; +"; + +$create_table['uts_weapons'] = " +CREATE TABLE `uts_weapons` ( + `id` tinyint(3) unsigned NOT NULL auto_increment, + `name` varchar(100) NOT NULL default '', + `image` varchar(50) NOT NULL default '', + `sequence` tinyint(3) unsigned NOT NULL default '200', + `hide` enum('N','Y') NOT NULL default 'N', + PRIMARY KEY (`id`), + KEY `name` (`name`(20)) +) ENGINE=MyISAM AUTO_INCREMENT=20 ; +"; + +$create_table['uts_weaponstats'] = " +CREATE TABLE `uts_weaponstats` ( + `matchid` mediumint(8) unsigned NOT NULL default '0', + `pid` int(10) unsigned NOT NULL default '0', + `weapon` tinyint(3) unsigned NOT NULL default '0', + `kills` mediumint(8) unsigned NOT NULL default '0', + `shots` int(10) unsigned NOT NULL default '0', + `hits` int(10) unsigned NOT NULL default '0', + `damage` int(10) unsigned NOT NULL default '0', + `acc` float unsigned NOT NULL default '0', + KEY `full` (`matchid`,`pid`) +) ENGINE=MyISAM; +"; + +foreach ($create_table as $table => $query) { + echo ' + + '; + if (small_count("SHOW TABLES LIKE '$table'") == 1) { + // database exists, check columns + echo ' + '; + } + else { + if (mysql_query($query)) { + echo ' + '; + } + else { + echo ' + '; + } + } +} +echo ' +
Checking mysql tables
', $table, 'OK
Created
Not found!

'; + +// Check the weapons +$create_weapon['Translocator'] = "INSERT INTO `uts_weapons` VALUES (1, 'Translocator', 'trans.jpg', 1, 'N');"; +$create_weapon['Impact Hammer'] = "INSERT INTO `uts_weapons` VALUES (2, 'Impact Hammer', 'impact.jpg', 2, 'N');"; +$create_weapon['Enforcer'] = "INSERT INTO `uts_weapons` VALUES (3, 'Enforcer', 'enforcer.jpg', 3, 'N');"; +$create_weapon['Double Enforcer'] = "INSERT INTO `uts_weapons` VALUES (4, 'Double Enforcer', 'enforcer2.jpg', 4, 'N');"; +$create_weapon['GES Bio Rifle'] = "INSERT INTO `uts_weapons` VALUES (5, 'GES Bio Rifle', 'bio.jpg', 5, 'N');"; +$create_weapon['Ripper'] = "INSERT INTO `uts_weapons` VALUES (6, 'Ripper', 'ripper.jpg', 6, 'N');"; +$create_weapon['Shock Rifle'] = "INSERT INTO `uts_weapons` VALUES (7, 'Shock Rifle', 'shock.jpg', 7, 'N');"; +$create_weapon['Enhanced Shock Rifle'] = "INSERT INTO `uts_weapons` VALUES (8, 'Enhanced Shock Rifle', 'ishock.jpg', 8, 'N');"; +$create_weapon['Pulse Gun'] = "INSERT INTO `uts_weapons` VALUES (9, 'Pulse Gun', 'pulse.jpg', 9, 'N');"; +$create_weapon['Minigun'] = "INSERT INTO `uts_weapons` VALUES (10, 'Minigun', 'minigun.jpg', 10, 'N');"; +$create_weapon['Flak Cannon'] = "INSERT INTO `uts_weapons` VALUES (11, 'Flak Cannon', 'flak.jpg', 11, 'N');"; +$create_weapon['Rocket Launcher'] = "INSERT INTO `uts_weapons` VALUES (12, 'Rocket Launcher', 'rockets.jpg', 12, 'N');"; +$create_weapon['Sniper Rifle'] = "INSERT INTO `uts_weapons` VALUES (13, 'Sniper Rifle', 'sniper.jpg', 13, 'N');"; +$create_weapon['Redeemer'] = "INSERT INTO `uts_weapons` VALUES (14, 'Redeemer', 'deemer.jpg', 14, 'N');"; +$create_weapon['None'] = "INSERT INTO `uts_weapons` VALUES (15, 'None', 'blank.jpg', 15, 'N');"; +$create_weapon['Chainsaw'] = "INSERT INTO `uts_weapons` VALUES (16, 'Chainsaw', 'chainsaw.jpg', 16, 'N');"; + +echo ' + + + + '; +if (small_count("SHOW TABLES LIKE 'uts_weapons'") != 1) { + // database exists, check columns + echo ' + '; +} +else { + foreach ($create_weapon as $weapon => $query) { + echo ' + + '; + if (small_count("SELECT id FROM uts_weapons WHERE name = '$weapon' LIMIT 0,1") == 1) { + // database exists, check columns + echo ' + '; + } + else { + if (mysql_query($query)) { + echo ' + '; + } + else { + echo ' + '; + } + } + } +} +echo ' +
Checking supported weapons
Table uts_weapons does not exist!
', $weapon, 'OK
Added
Not found!

'; + +echo ' + + + + '; + + echo ' + + '; + + $q = mysql_query("UPDATE uts_events SET col3 = ROUND(CEILING((col3-1)*100/1.1) / 100, 2), col1 = 'btcap' WHERE col1 = 'cap'"); + $affected = mysql_affected_rows(); + + if ($affected == -1) { + echo ' + +
Checking data
Fix BT cap timesFailed
'; + } + else { + echo ' + +
Updated ' . $affected . ' rows.

'; + } + +echo ' +
+ '; +echo ''; +echo '
Go Back To Admin Page
'; + +?> \ No newline at end of file diff --git a/html/pages/admin/dmatch.php b/html/pages/admin/dmatch.php new file mode 100755 index 0000000..9fed97d --- /dev/null +++ b/html/pages/admin/dmatch.php @@ -0,0 +1,105 @@ + + + + + + '; +$sql_radjust = "SELECT pid, gid, rank FROM uts_player WHERE matchid = $matchid"; +$q_radjust = mysql_query($sql_radjust) or die(mysql_error()); +$pids = array(); +while ($r_radjust = mysql_fetch_array($q_radjust)) { + + $pid = $r_radjust[pid]; + $pids[] = $pid; + $gid = $r_radjust[gid]; + $rank = $r_radjust[rank]; + + $sql_crank = small_query("SELECT id, rank, matches FROM uts_rank WHERE pid = $pid AND gid = $gid"); + if (!$sql_crank) continue; + + $rid = $sql_crank[id]; + $newrank = $sql_crank[rank]-$rank; + $oldrank = $sql_crank[rank]; + $matchcount = $sql_crank[matches]-1; + + mysql_query("UPDATE uts_rank SET rank = $newrank, prevrank = $oldrank, matches = $matchcount WHERE id = $rid") or die(mysql_error()); + mysql_query("DELETE FROM uts_rank WHERE matches = 0") or die(mysql_error()); +} + echo' + + + '; +mysql_query("DELETE FROM uts_match WHERE id = $matchid") or die(mysql_error()); + echo' + + + '; +mysql_query("DELETE FROM uts_player WHERE matchid = $matchid") or die(mysql_error()); + echo' + + + '; +mysql_query("DELETE FROM uts_killsmatrix WHERE matchid = $matchid") or die(mysql_error()); + echo' + + + '; +mysql_query("DELETE FROM uts_weaponstats WHERE matchid = $matchid") or die(mysql_error()); + echo' + + + '; +foreach($pids as $pid) { + mysql_query("DELETE FROM uts_weaponstats WHERE matchid IN ('$matchid','0') AND pid = '$pid'") or die(mysql_error()); + + $q_weaponstats = mysql_query("SELECT weapon, SUM(kills) AS kills, SUM(shots) AS shots, SUM(hits) as hits, SUM(damage) as damage, AVG(acc) AS acc FROM uts_weaponstats WHERE pid = '$pid' GROUP BY weapon") or die(mysql_error()); + while ($r_weaponstats = mysql_fetch_array($q_weaponstats)) { + mysql_query("INSERT INTO uts_weaponstats SET matchid='0', pid='$pid', weapon='${r_weaponstats['weapon']}', kills='${r_weaponstats['kills']}', shots='${r_weaponstats['shots']}', hits='${r_weaponstats['hits']}', damage='${r_weaponstats['damage']}', acc='${r_weaponstats['acc']}'") or die(mysql_error()); + } +} + echo' + + + '; + mysql_query("DELETE FROM uts_weaponstats WHERE matchid='0' AND pid='0'") or die(mysql_error()); + + $q_weaponstats = mysql_query("SELECT weapon, SUM(kills) AS kills, SUM(shots) AS shots, SUM(hits) as hits, SUM(damage) as damage, AVG(acc) AS acc FROM uts_weaponstats WHERE matchid = '0' GROUP BY weapon") or die(mysql_error()); + while ($r_weaponstats = mysql_fetch_array($q_weaponstats)) { + mysql_query("INSERT INTO uts_weaponstats SET matchid='0', pid='0', weapon='${r_weaponstats['weapon']}', kills='${r_weaponstats['kills']}', shots='${r_weaponstats['shots']}', hits='${r_weaponstats['hits']}', damage='${r_weaponstats['damage']}', acc='${r_weaponstats['acc']}'") or die(mysql_error()); + } + + echo' + + + '; +mysql_query("DELETE FROM uts_events WHERE matchid = $matchid") or die(mysql_error()); + echo' + + + +
Deleting Match ID '.$matchid.'
Adjusting RankingsDone
Removing Match Record:Done
Removing Player Records:Done
Removing Kill Matrix Entries:Done
Removing Weapon Stats:Done
Amending Player Weapon Stats:Done
Amending Global Weapon Stats:Done
Removing events:Done
Match Deleted - Go Back To Admin Page
'; + + +?> diff --git a/html/pages/admin/dplayer.php b/html/pages/admin/dplayer.php new file mode 100755 index 0000000..0239e5d --- /dev/null +++ b/html/pages/admin/dplayer.php @@ -0,0 +1,76 @@ + + + Deleting Player + + + Removing Kill Matrix Entries:'; + $q_match = mysql_query("SELECT matchid, playerid FROM uts_player WHERE pid = '$pid'") or die(mysql_error()); + while ($r_match = mysql_fetch_array($q_match)) { + mysql_query("DELETE FROM uts_killsmatrix WHERE matchid = '${r_match['matchid']}' AND (killer = '${r_match['playerid']}' OR victim = '${r_match['playerid']}')") or die(mysql_error()); + } + echo'Done + + + + Removing Player Info:'; +$r_pinfo = small_query("SELECT banned FROM uts_pinfo WHERE id = $playerid"); +if ($r_pinfo['banned'] != 'Y') { + mysql_query("DELETE FROM uts_pinfo WHERE id = $playerid") or die(mysql_error()); + echo'Done'; +} else { + echo'No (player banned)'; +} +echo ' + + + Removing Player Match Events:'; +mysql_query("DELETE e.* FROM uts_player as p, uts_events as e WHERE p.pid = $playerid AND p.playerid = e.playerid AND p.matchid = e.matchid") or die(mysql_error()); + echo'Done + + + Removing Player Match Records:'; +mysql_query("DELETE FROM uts_player WHERE pid = $playerid") or die(mysql_error()); + echo'Done + + + Removing Player Rank:'; +mysql_query("DELETE FROM uts_rank WHERE pid = $playerid") or die(mysql_error()); + echo'Done + + + Removing Player Weapon Stats:'; +mysql_query("DELETE FROM uts_weaponstats WHERE pid = $playerid") or die(mysql_error()); + echo'Done + + + Amending Global Weapon Stats:'; + mysql_query("DELETE FROM uts_weaponstats WHERE matchid='0' AND pid='0'") or die(mysql_error()); + + $q_weaponstats = mysql_query("SELECT weapon, SUM(kills) AS kills, SUM(shots) AS shots, SUM(hits) as hits, SUM(damage) as damage, AVG(acc) AS acc FROM uts_weaponstats WHERE matchid = '0' GROUP BY weapon") or die(mysql_error()); + while ($r_weaponstats = mysql_fetch_array($q_weaponstats)) { + mysql_query("INSERT INTO uts_weaponstats SET matchid='0', pid='0', weapon='${r_weaponstats['weapon']}', kills='${r_weaponstats['kills']}', shots='${r_weaponstats['shots']}', hits='${r_weaponstats['hits']}', damage='${r_weaponstats['damage']}', acc='${r_weaponstats['acc']}'") or die(mysql_error()); + } + + echo'Done + + + Player Deleted - Go Back To Admin Page +'; +?> diff --git a/html/pages/admin/dpmatch.php b/html/pages/admin/dpmatch.php new file mode 100755 index 0000000..b021054 --- /dev/null +++ b/html/pages/admin/dpmatch.php @@ -0,0 +1,106 @@ + + + +'; + +echo' + '; + +$q_radjust = small_query("SELECT pid, gid, rank FROM uts_player WHERE id = $pid"); +if (!$q_radjust) { + $sql_crank = false; +} else { + $rank_pid = $q_radjust[pid]; + $rank_gid = $q_radjust[gid]; + $rank = $q_radjust[rank]; + + $sql_crank = small_query("SELECT id, rank, matches FROM uts_rank WHERE pid = $rank_pid AND gid = '$rank_gid'"); +} +if (!$sql_crank) { + echo''; +} else { + $rid = $sql_crank[id]; + $newrank = $sql_crank[rank]-$rank; + $oldrank = $sql_crank[rank]; + $matchcount = $sql_crank[matches]-1; + + mysql_query("UPDATE uts_rank SET rank = $newrank, prevrank = $oldrank, matches = $matchcount WHERE id = $rid") or die(mysql_error()); + mysql_query("DELETE FROM uts_rank WHERE matches = 0") or die(mysql_error()); + + echo''; +} +echo' + + '; + $q_match = mysql_query("SELECT matchid, playerid FROM uts_player WHERE pid = '$pid' and matchid = '$matchid'") or die(mysql_error()); + while ($r_match = mysql_fetch_array($q_match)) { + mysql_query("DELETE FROM uts_killsmatrix WHERE matchid = '${r_match['matchid']}' AND (killer = '${r_match['playerid']}' OR victim = '${r_match['playerid']}')") or die(mysql_error()); + } + echo' + + + + + '; +mysql_query("DELETE FROM uts_weaponstats WHERE matchid = $matchid AND pid = $pid") or die(mysql_error()); + echo' + + + '; +mysql_query("DELETE e.* FROM uts_events as e, uts_player as p WHERE p.pid = '$pid' AND e.matchid = $matchid AND p.playerid = e.playerid AND p.matchid = e.matchid") or die(mysql_error()); + echo' + + + '; +mysql_query("DELETE FROM uts_player WHERE matchid IN ('$matchid','0') AND pid = '$pid'") or die(mysql_error()); + echo' + + + '; +mysql_query("DELETE FROM uts_weaponstats WHERE matchid IN ('$matchid','0') AND pid = '$pid'") or die(mysql_error()); + +$q_weaponstats = mysql_query("SELECT SUM(kills) AS kills, SUM(shots) AS shots, SUM(hits) as hits, SUM(damage) as damage, AVG(acc) AS acc FROM uts_weaponstats WHERE pid = '$pid' GROUP BY weapon") or die(mysql_error()); +while ($r_weaponstats = mysql_fetch_array($q_weaponstats)) { + mysql_query("INSERT INTO uts_weaponstats SET matchid='0', pid='$pid', kills='${r_weaponstats['kills']}', shots='${r_weaponstats['shots']}', hits='${r_weaponstats['hits']}', damage='${r_weaponstats['damage']}', acc='${r_weaponstats['acc']}'") or die(mysql_error()); +} + echo' + + + '; + mysql_query("DELETE FROM uts_weaponstats WHERE matchid='0' AND pid='0'") or die(mysql_error()); + + $q_weaponstats = mysql_query("SELECT weapon, SUM(kills) AS kills, SUM(shots) AS shots, SUM(hits) as hits, SUM(damage) as damage, AVG(acc) AS acc FROM uts_weaponstats WHERE matchid = '0' GROUP BY weapon") or die(mysql_error()); + while ($r_weaponstats = mysql_fetch_array($q_weaponstats)) { + mysql_query("INSERT INTO uts_weaponstats SET matchid='0', pid='0', weapon='${r_weaponstats['weapon']}', kills='${r_weaponstats['kills']}', shots='${r_weaponstats['shots']}', hits='${r_weaponstats['hits']}', damage='${r_weaponstats['damage']}', acc='${r_weaponstats['acc']}'") or die(mysql_error()); + } + + echo' + + + +
Delete Player From Match ID '.$matchid.'
Amending Players Rank:Player not in rankingsDone
Removing Kill Matrix Entries:Done
Removing Player Weapon Stats:Done
Removing Player Events:Done
Removing Player From Match:Done
Amending Player Weapon Stats:Done
Amending Global Weapon Stats:Done
Match Deleted - Go Back To Admin Page
'; + +?> diff --git a/html/pages/admin/editgames.php b/html/pages/admin/editgames.php new file mode 100755 index 0000000..3f7a542 --- /dev/null +++ b/html/pages/admin/editgames.php @@ -0,0 +1,74 @@ + $bla) { + if ($id == 0) { + if (empty($_REQUEST['name'][$id])) continue; + mysql_query(" INSERT INTO uts_games + SET name = '". my_addslashes($_REQUEST['name'][$id]) ."', + gamename = '(user defined)';") or die(mysql_error()); + } else { + mysql_query(" UPDATE uts_games + SET name = '". my_addslashes($_REQUEST['name'][$id]) ."' + WHERE id = '$id';") or die(mysql_error()); + } + } +} + +echo'
+ + + + + + + + + + +'; + + +$sql_games = "SELECT id, gamename, name FROM uts_games ORDER BY gamename ASC;"; +$q_games = mysql_query($sql_games) or die(mysql_error()); +$i = 0; +while ($r_games = mysql_fetch_array($q_games)) { + $i++; + $class = ($i%2) ? 'grey' : 'grey2'; + echo ''; + echo ''; + echo ''; + echo ''; +} +echo' + + + + + + + + + + + + + + + + +'; + + +echo ''; +echo ''; +echo ''; + +echo' + + + +
Edit games
GameNameDisplayName
'.htmlentities($r_games['gamename']).'
 
Add new
(n/a)
 
Submit
Go Back To Admin Page
'; + +?> diff --git a/html/pages/admin/editgamestype.php b/html/pages/admin/editgamestype.php new file mode 100755 index 0000000..d9e4ff1 --- /dev/null +++ b/html/pages/admin/editgamestype.php @@ -0,0 +1,228 @@ + ''); +$serverips = array('0' => '*'); +while ($r_server = mysql_fetch_array($q_server)) { + $servernames[$r_server['id']] = $r_server['servername']; + $serverips[$r_server['id']] = $r_server['serverip']; +} + +$sql_games = "SELECT id, gamename, name FROM uts_games ORDER BY gamename ASC"; +$q_games = mysql_query($sql_games) or die(mysql_error()); +$gamedisplaynames = array('0' => ''); +$gamenames = array('0' => '*'); +while ($r_games = mysql_fetch_array($q_games)) { + $gamenames[$r_games['id']] = $r_games['gamename']; + $gamedisplaynames[$r_games['id']] = $r_games['name']; +} + + +if (isset($_REQUEST['submit'])) { + mysql_query(" INSERT INTO uts_gamestype + SET serverip = '". my_addslashes($_REQUEST['serverip']) ."', + gamename = '". my_addslashes($_REQUEST['gamename']) ."', + mutator = '". my_addslashes($_REQUEST['mutator']) ."', + gid = '". my_addslashes($_REQUEST['gid']) ."' + ") or die(mysql_error()); + + if (isset($_REQUEST['update'])) { + echo'
+ + + + + + + + '; + $where = 'WHERE 1'; + if ($_REQUEST['serverip'] != '*') { + $where .= " AND m.serverip = '". my_addslashes($_REQUEST['serverip']) ."'"; + } + if ($_REQUEST['gamename'] != '*') { + $gids = array_keys($gamenames, my_stripslashes($_REQUEST['gamename'])); + $where .= " AND m.gid IN (".implode(',', $gids).")"; + } + if ($_REQUEST['mutator'] != '*') { + $where .= " AND m.mutators LIKE '%".my_addslashes($_REQUEST['mutator'])."%'"; + } + + mysql_query("UPDATE uts_player p, uts_match m SET p.gid = '". my_addslashes($_REQUEST['gid']) ."' $where AND m.id = p.matchid;") or die(mysql_error()); + echo' + + + + + + + '; + mysql_query("UPDATE uts_match m SET m.gid = '". my_addslashes($_REQUEST['gid']) ."' $where;") or die(mysql_error()); + echo' + + + + + + + + '; + + if ($_REQUEST['gamename'] != '*') { + $gids[] = $_REQUEST['gid']; + $where = "WHERE gid IN (".implode(',', $gids).")"; + } else { + $where = 'WHERE 1'; + } + mysql_query("DELETE FROM uts_rank $where;") or die(mysql_error()); + + $sql_nrank = "SELECT SUM(p.gametime) AS time, p.pid, p.gid, SUM(p.rank) AS rank, COUNT(p.matchid) AS matches FROM uts_player p, uts_pinfo pi $where AND pi.id = p.pid AND pi.banned <> 'Y' GROUP BY p.gid, p.pid"; + $q_nrank = mysql_query($sql_nrank) or die(mysql_error()); + $num_ranks = 0; + while ($r_nrank = mysql_fetch_array($q_nrank)) { + mysql_query("INSERT INTO uts_rank SET time = '${r_nrank['time']}', pid = ${r_nrank['pid']}, gid = ${r_nrank['gid']}, rank = '${r_nrank['rank']}', prevrank = '${r_nrank['rank']}', matches = ${r_nrank['matches']}") or die(mysql_error()); + $num_ranks++; + } + echo' + + + + +
Updating...
Updating Player RecordsDone (updated '.mysql_affected_rows().' records)
Updating MatchesDone (updated '.mysql_affected_rows().' matches)
Re-Calcuating RankingsDone (recalculated '.$num_ranks.' rankings)
Update finished..
'; + } +} + +if (isset($_REQUEST['del'])) { + mysql_query(" DELETE FROM uts_gamestype + WHERE id = '". my_addslashes($_REQUEST['del']) ."' + ") or die(mysql_error()); +} + + + +echo'
+ + + + + + + + + + + + +'; + + + + + + +$sql_gamestype = "SELECT id, serverip, gamename, mutator, gid FROM uts_gamestype ORDER BY id ASC;"; +$q_gamestype = mysql_query($sql_gamestype) or die(mysql_error()); +$i = 0; +while ($r_gamestype = mysql_fetch_array($q_gamestype)) { + $i++; + $class = ($i%2) ? 'grey' : 'grey2'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; +} + +echo '
Current Mappings
 Server IP Game Name Mutatorlist contains Game
 '.htmlentities($r_gamestype['serverip']).'+ '.htmlentities($r_gamestype['gamename']).'+ '.htmlentities($r_gamestype['mutator']).'= '.htmlentities($gamedisplaynames[$r_gamestype['gid']]).''; + echo ''; + echo 'Delete'; + echo ''; + echo '
'; + + + + + + + + +echo'
+ + + + + + +'; + +$class='grey'; +echo ''; +echo ''; +echo ''; + + +echo ''; +echo ''; + + +echo ''; +echo ''; + + +echo ''; +echo ''; + +echo ''; +echo ''; + + +echo ''; +echo ''; +echo ''; + +echo' + + + +
Add new gamestype
If server ='; +echo ''; +echo '
and gamename ='; + +echo ''; +echo '
and mutatorlist contains'; +echo ' (case insensitive substring)'; +echo '
==> assume gametype:'; + +echo ''; +echo '
Update existing matches:'; +echo ' (this cannot be undone easily!)'; +echo '
Go Back To Admin Page
'; + +?> diff --git a/html/pages/admin/editweapons.php b/html/pages/admin/editweapons.php new file mode 100755 index 0000000..2baeab9 --- /dev/null +++ b/html/pages/admin/editweapons.php @@ -0,0 +1,58 @@ + $bla) { + mysql_query(" UPDATE uts_weapons + SET image = '". my_addslashes($_REQUEST['image'][$id]) ."', + sequence = '". my_addslashes($_REQUEST['sequence'][$id]) ."', + hide = '". (isset($_REQUEST['hide'][$id]) ? 'Y' : 'N') ."' + WHERE id = '$id';") or die(mysql_error()); + } +} + +echo'
+ + + + + + + + + + + + +'; + + +$sql_weapons = "SELECT id, name, image, sequence, hide FROM uts_weapons ORDER BY sequence ASC;"; +$q_weapons = mysql_query($sql_weapons) or die(mysql_error()); +$i = 0; +while ($r_weapons = mysql_fetch_array($q_weapons)) { + $i++; + $class = ($i%2) ? 'grey' : 'grey2'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; +} + +echo ''; +echo ''; +echo ''; + +echo' + + +
Edit weapons
NameShould exist in images/weapons/
Leave empty to display the weapon name').'>Image
OrderHide
'.htmlentities($r_weapons['name']).''; + echo '
'; + echo ''; + echo ''; + if (!empty($r_weapons['image'])) echo ' '; + echo'
Go Back To Admin Page
'; + +?> diff --git a/html/pages/admin/emptydb.php b/html/pages/admin/emptydb.php new file mode 100755 index 0000000..9eee7d2 --- /dev/null +++ b/html/pages/admin/emptydb.php @@ -0,0 +1,62 @@ +