Commit Graph

27 Commits

Author SHA1 Message Date
novgorodschi catalin e1847bc50b Fix #302
Fix add troops in addUser.php
2026-06-29 11:42:22 +03:00
Ferywir 8c1a6ad05b fix(admin): render a proper error page instead of a blank page on denial [#299] (#307)
Issue #299: posting to an admin Mod (eg editBuildings.php) could show an
essentially blank page. The admin panel and the game share the same PHP
session, so a game logout (session_destroy) — or a mobile browser dropping the
session cookie / serving a cached form with a stale token — wipes the admin
session. The Mod then stopped on a bare die('<h1>Access Denied</h1>') (or the
403 die() in csrf_verify()), which renders as a blank/broken page outside the
panel.

Add a shared admin_deny() helper in GameEngine/Admin/csrf.php that renders a
clean, self-contained, styled error page (with a "Return to Admin Panel" link)
and a no-store header, then exits. Wire it into csrf_verify() and replace every
bare "Access Denied" die() across the 42 admin Mods. Each Mod now loads
csrf.php at the top so admin_deny() is available before its first access check.

This is the presentation fix Shadow asked for ("we must receive an error not
blank page"). The deeper root cause (admin and game sharing one PHP session) is
left for a follow-up: giving the admin panel its own session cookie name.

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-29 10:25:18 +03:00
Ferywir e49069a9c6 fix(admin): verify CSRF token in player-management admin Mods [#139] (#256) 2026-06-23 06:54:03 +03:00
Ferywir 9c726a05b9 fix(admin): re-check admin rank in addUsers Mod (defense-in-depth) [#139] (#240) 2026-06-18 19:09:02 +03:00
novgorodschi catalin 3fa16f13b2 Full Refactor Admin Panel & Logs
Full Refactor Admin Panel & Logs (now you can see detailed logs in admin panel) - ONLY BACKED
2026-05-22 11:29:37 +03:00
Catalin Novgorodschi 4a387bac0c @lietuvis10 fix for addUser
@lietuvis10 fix for addUser
2025-10-23 09:54:41 +03:00
Catalin Novgorodschi 59c1114b1c Change some text on license TravianZ 2025-02-11 11:22:22 +02:00
iopietro 77136a9784 Artifacts update and optimizations
+Added the "Artifacts" section in the Admin Panel, which contains two
options: return a deleted artifact to the Natars and create new
Artifacts, assigned to a specified player
+Return to Natars coded, in the village section of the Admin Panel
+Moved a lot of functions and costants from Automation.php to the "new"
class Artifacts.php
+Optimized a lot the whole Natars creation process, decreased the number
of query of about 600
+Optimized a lot the function which deletes a player's account, it's now
executed almost instantly, even with players with a lot of villages
+Redesigned the map spawn system, using a more Travian-like village
distribution
+Fixed a bug that did show a broken village in the artifact chronology,
if that village was destroyed
+Reduced the amount of redundant code (about 230 lines) for
27_1.tpl/27_2.tpl and 27_3.tpl
+Fixed a bug that permitted to build the Great Granary and the Great
Warehouse in the whole account, with only a village effect artifact
+Fixed a bug in the Admin Panel map that didn't permit to show village
informations, if that village contained single quotes in its name
2018-07-24 03:04:25 +02:00
iopietro 9efbe9ffd9 General fixes
+Fixed a bug that didn't permit to create users' villages in small maps,
from the admin panel
2018-06-15 02:31:37 +02:00
Martin Ambrus 0984c7ef34 fix: DB connection is global and tries 2 tested ways to connect
Some installations seem to support localhost:port for 1st parameter of
mysqli_connect(), others will only support the official parameters with
port towards the end. This fix tries them both - first the official one,
then the localhost:port one.

Also, there were a lot of mysqli_connect()'s inside Admin mods. These
now also use the central Database class.
2017-11-20 01:09:49 +01:00
Martin Ambrus 67d9a42506 refactor: a lot of Automation foreach loops updated
#313
2017-11-19 14:01:30 +01:00
Martin Ambrus b01d787627 fix: extra space making location header not work 2017-11-03 20:58:33 +01:00
Martin Ambrus 6f7c70a0d7 refactor: autoprefixing class includes 2017-10-28 02:17:43 +02:00
Martin Ambrus 7def98f081 feat: Farms generation via Admin must be fair (= random all over map) 2017-10-25 18:42:13 +02:00
Martin Ambrus 30d3b9c4fa refactor: OOP code movements started :) 2017-10-25 13:38:38 +02:00
Martin Ambrus cc51e9ad91 fix: DB class not included in some admin actions 2017-10-20 12:47:39 +02:00
Martin Ambrus f4021d1452 feat: MD5 passwords exchanged for bcrypt ones 2017-10-20 12:31:27 +02:00
Martin Ambrus 331885a110 fix: remove SQL injections in Admin 2017-10-19 21:17:11 +02:00
Martin Ambrus ac5d3538f8 fix: mysqli_error needs MySQLi connection as parameter 2017-10-17 13:05:13 +02:00
Martin Ambrus 92b9a7b043 fix: a lot of MySQL calls in templates replaced by MySQLi ones 2017-08-28 23:56:59 +02:00
uroskn 1afde368d3 GameEngine and install folders have 777 already set by default 2016-07-02 21:39:28 +02:00
Shadow cae32d6603 Update addUsers.php 2014-03-25 08:28:27 +02:00
Shadow 19767cf6a6 update admin panel 2014-03-04 12:44:25 +02:00
Shadow 80c8d93edf security update 2014-02-13 08:05:11 +02:00
KFCSpike 5c1babcee9 Choose Tribe when creating Users in Admin panel 2014-01-27 20:02:08 +00:00
KFCSpike 82b12a29d4 Add checkbox for Beginner's Protection when creating Users in Admin Panel 2014-01-27 13:30:45 +00:00
KFCSpike ce40be343e Create Users 2014-01-04 01:44:59 +00:00