From 15cae4fde9637e8f41539e8febbf12ee44936fcd Mon Sep 17 00:00:00 2001 From: iopietro Date: Fri, 1 Jun 2018 17:57:44 +0200 Subject: [PATCH] General fixes +Added the possibility to start a maintenance (no user will be banned) --- Admin/Templates/maintenance.tpl | 45 ++++++++++ Admin/Templates/maintenence.tpl | 39 --------- Admin/Templates/maintenenceBan.tpl | 42 --------- Admin/Templates/maintenenceUnban.tpl | 91 -------------------- Admin/admin.php | 6 +- GameEngine/Session.php | 13 +++ maintenance.php | 124 +++++++++++++++++++++++++++ 7 files changed, 185 insertions(+), 175 deletions(-) create mode 100644 Admin/Templates/maintenance.tpl delete mode 100644 Admin/Templates/maintenence.tpl delete mode 100644 Admin/Templates/maintenenceBan.tpl delete mode 100644 Admin/Templates/maintenenceUnban.tpl create mode 100644 maintenance.php diff --git a/Admin/Templates/maintenance.tpl b/Admin/Templates/maintenance.tpl new file mode 100644 index 00000000..7e1980e9 --- /dev/null +++ b/Admin/Templates/maintenance.tpl @@ -0,0 +1,45 @@ +setUsersOk(2); + $error = "The maintenance has started"; +} +elseif($_POST['removeMaint_x']) { + $database->setUsersOk(0); + $error = "The maintenance has been removed"; +} + +?> +
+

+ + + + + + + + + + + + + + + + + + + + +
Server Maintenance
DescriptionExecute
Start a maintenance
Remove a Maintenance
+
\ No newline at end of file diff --git a/Admin/Templates/maintenence.tpl b/Admin/Templates/maintenence.tpl deleted file mode 100644 index f4d2ad11..00000000 --- a/Admin/Templates/maintenence.tpl +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Server Maintenence
DescriptionExecute
Close Server for Maintenece, This will ban all players (Access 2) till you can fix bugs, or a crap version of a ceasefire lol
Bring Server Back for Maintenece, This will unban all players (By Banning Reason)
Clean Banlist Data (TRUNCATE)
\ No newline at end of file diff --git a/Admin/Templates/maintenenceBan.tpl b/Admin/Templates/maintenenceBan.tpl deleted file mode 100644 index 513bbc33..00000000 --- a/Admin/Templates/maintenenceBan.tpl +++ /dev/null @@ -1,42 +0,0 @@ - -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - -
Close Server (Ban Everyone)
DurationStarting
">
Default: 1 Hour
Value: Hours (0.5) for 30 mins
Default: Now -
-
\ No newline at end of file diff --git a/Admin/Templates/maintenenceUnban.tpl b/Admin/Templates/maintenenceUnban.tpl deleted file mode 100644 index bf206f9f..00000000 --- a/Admin/Templates/maintenenceUnban.tpl +++ /dev/null @@ -1,91 +0,0 @@ -search_banned(); -?> -
- - -
- - - - - - - - - - - - - - - - -
Open Server (Unban Players by Reason)
Unban "Reason"Action
-
- - - - - - - - - - - - - - - getUserField($bannedUsers[$i]['uid'],'username',0)=='') - { - - $name = $bannedUsers[$i]['name']; - $link = "[".$name."]"; - - } - else - { - $name = $database->getUserField($bannedUsers[$i]['uid'],'username',0); - $link = ''.$name.''; - - } - if($bannedUsers[$i]['end']) - { - $end = date("d.m.y H:i",$bannedUsers[$i]['end']); - } - else - { - $end = '*'; - } - echo ' - - - - - - '; - } - } - else - { - echo ''; - } - ?> - -
Bannned Players ()
UsernameStart Ban / End BanReason
'.$link.''.date("d.m.y H:i",$bannedUsers[$i]['time']).' - '.$end.''.$bannedUsers[$i]['reason'].'cancel
No Players are Banned
\ No newline at end of file diff --git a/Admin/admin.php b/Admin/admin.php index d5ec4be2..f542d03b 100644 --- a/Admin/admin.php +++ b/Admin/admin.php @@ -68,8 +68,8 @@ if (!empty($_GET['p'])) { $subpage = 'Ban/Unban Players'; break; - case 'maintenence': - $subpage = 'Server Maintenence'; + case 'maintenance': + $subpage = 'Server Maintenance'; break; case 'cleanban': @@ -473,7 +473,7 @@ if (!empty($_GET['p'])) {
Ban Ban/Unban Players - Server Maintenence + Server Maintenance Clean Banlist Data
Gold diff --git a/GameEngine/Session.php b/GameEngine/Session.php index e8d30111..aee6d035 100755 --- a/GameEngine/Session.php +++ b/GameEngine/Session.php @@ -173,6 +173,7 @@ class Session { } if($user && ($admin || isset($_SESSION['sessid']))) { + $this->maintenance(); $this->isWinner(); // check if this is not a support user, for who only messages and statistics are available @@ -193,6 +194,18 @@ class Session { else return false; } + /** + * Called when the server is under maintenance + * + */ + + function maintenance(){ + if($_SESSION['ok'] == 2 && basename($_SERVER['PHP_SELF']) != 'maintenance.php'){ + header('Location: maintenance.php'); + exit; + } + } + /** * Called when there's a player who built a WW to level 100 * diff --git a/maintenance.php b/maintenance.php new file mode 100644 index 00000000..653e27cf --- /dev/null +++ b/maintenance.php @@ -0,0 +1,124 @@ +pageLoadTimeStart(); + +################################################################################# +## -= YOU MAY NOT REMOVE OR CHANGE THIS NOTICE =- ## +## --------------------------------------------------------------------------- ## +## Project: TravianZ ## +## Version: 18.02.2014 ## +## Description: When the player builds Wonder of the World ## +## to level 100 the winner details are shown. ## +## tells the players the game is over ## +## Authors: aggenkeech - and a little help from Eyas95 ## +## Page: winner.php ## +## Fixed by: Shadow ## +## License: TravianZ Project ## +## Copyright: TravianZ (c) 2010-2013. All rights reserved. ## +## URLs: http://travian.shadowss.ro ## +## Source code: https://github.com/Shadowss/TravianZ/ ## +## ## +################################################################################# + +use App\Utils\AccessLogger; + +if (!function_exists('mysqli_result')) { + function mysqli_result($res, $row, $field = 0) { + $res->data_seek($row); + $datarow = $res->fetch_array(); + return $datarow[$field]; + } +} + +include_once("GameEngine/Village.php"); +AccessLogger::logRequest(); + +if(isset($_GET['newdid'])) { + $_SESSION['wid'] = $_GET['newdid']; + header("Location: ".$_SERVER['PHP_SELF']); + exit; +} + +if($_SESSION['ok'] == 2){ +?> + + + + <?php echo SERVER_NAME ?> - Game Over + + + + + + + + + + + + gpack == null || GP_ENABLE == false) + { + echo " + + "; + } + else + { + echo " + + "; + } + ?> + + + + +
+ +
+ +
+ +
+

Server is under maintenance

+
+



+ +
+
+
+ +
+ +
+
+
+ Calculated in pageLoadTimeEnd()-$start_timer)*1000);?> ms +
Server time: +
+
+
+
+ + + \ No newline at end of file