From f34e5f2ac02eaf3514ca11fe05a90c4b789d0e50 Mon Sep 17 00:00:00 2001 From: slawkens Date: Fri, 2 Jun 2023 06:37:25 +0200 Subject: [PATCH 01/23] Release 0.9.0-alpha --- CHANGELOG.md | 3 +-- common.php | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4ec987f9..399eba44 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -## [0.9.0-alpha - x.x.2023] +## [0.9.0-alpha - 02.06.2023] Minimum PHP version for this release is 7.2.5. @@ -36,7 +36,6 @@ Minimum PHP version for this release is 7.2.5. ### Changed * Composer is now used for external libraries like: Twig, PHPMailer, fast-route etc. * mail support is disabled on fresh install, can be manually enabled by user -* don't show PHP errors on prod * disable add php pages in admin panel for security. Option to disable plugins upload * visitors counter shows now user browser, and also if its bot * changes in required and optional PHP extensions diff --git a/common.php b/common.php index 109bd3ae..16a3d92e 100644 --- a/common.php +++ b/common.php @@ -26,7 +26,7 @@ if (version_compare(phpversion(), '7.2.5', '<')) die('PHP version 7.2.5 or higher is required.'); const MYAAC = true; -const MYAAC_VERSION = '0.9.0-dev'; +const MYAAC_VERSION = '0.9.0-alpha'; const DATABASE_VERSION = 35; const TABLE_PREFIX = 'myaac_'; define('START_TIME', microtime(true)); From 52ac0115562ae0954122959165f187fb6a09957d Mon Sep 17 00:00:00 2001 From: slawkens Date: Fri, 2 Jun 2023 08:04:13 +0200 Subject: [PATCH 02/23] Ignore cypress in git-export + install composer deps on release --- .gitattributes | 5 +++++ release.sh | 9 +++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/.gitattributes b/.gitattributes index 283fef4e..40090cd9 100644 --- a/.gitattributes +++ b/.gitattributes @@ -6,4 +6,9 @@ _config.yml export-ignore release.sh export-ignore +# cypress +cypress export-ignore +cypress.config.js export-ignore +cypress.env.json + *.sh text eol=lf diff --git a/release.sh b/release.sh index e720a3a9..8e104ea2 100644 --- a/release.sh +++ b/release.sh @@ -22,7 +22,7 @@ if [ $1 = "prepare" ]; then mkdir -p tmp # get myaac from git archive - git archive --format zip --output tmp/myaac.zip master + git archive --format zip --output tmp/myaac.zip 0.9 cd tmp/ || exit @@ -35,6 +35,11 @@ if [ $1 = "prepare" ]; then unzip -q myaac.zip -d $dir rm myaac.zip + cd $dir || exit + + # dependencies + composer install + echo "Now you can make changes to $dir. When you are ready, type 'release.sh pack'" exit fi @@ -62,4 +67,4 @@ if [ $1 = "pack" ]; then echo "Done. Released files can be found in 'releases' directory." exit -fi \ No newline at end of file +fi From cd22f8def50ede21e2a8b333664cf332aa130c63 Mon Sep 17 00:00:00 2001 From: slawkens Date: Fri, 2 Jun 2023 15:20:07 +0200 Subject: [PATCH 03/23] Use Whoops only if installed, otherwise use myaac exception handler --- composer.json | 4 +- system/exception.php | 66 ++++++++++++++++++++--- system/libs/SensitiveException.php | 3 ++ system/templates/exception.html.twig | 79 ++++++++++++++++++++++++++++ 4 files changed, 143 insertions(+), 9 deletions(-) create mode 100644 system/libs/SensitiveException.php create mode 100644 system/templates/exception.html.twig diff --git a/composer.json b/composer.json index 0a17947e..b1300e34 100644 --- a/composer.json +++ b/composer.json @@ -11,7 +11,9 @@ "twig/twig": "^2.0", "erusev/parsedown": "^1.7", "nikic/fast-route": "^1.3", - "matomo/device-detector": "^6.0", + "matomo/device-detector": "^6.0" + }, + "require-dev": { "filp/whoops": "^2.15" } } diff --git a/system/exception.php b/system/exception.php index 9a233000..077d0f3f 100644 --- a/system/exception.php +++ b/system/exception.php @@ -1,6 +1,6 @@ @@ -8,13 +8,63 @@ * @link https://my-aac.org */ -$whoops = new \Whoops\Run; +if (class_exists(\Whoops\Run::class)) { + $whoops = new \Whoops\Run; + if(IS_CLI) { + $whoops->pushHandler(new \Whoops\Handler\PlainTextHandler); + } + else { + $whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler); + } -if(IS_CLI) { - $whoops->pushHandler(new \Whoops\Handler\PlainTextHandler); -} -else { - $whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler); + $whoops->register(); + return; } -$whoops->register(); +require LIBS . 'SensitiveException.php'; + +/** + * @param Exception $exception + */ +function exception_handler($exception) { + $message = $exception->getMessage(); + if($exception instanceof SensitiveException) { + $message = 'This error is sensitive and has been logged into ' . LOGS . 'error.log.
View this file for more information.'; + + // log error to file + $f = fopen(LOGS . 'error.log', 'ab'); + if(!$f) { + $message = 'We wanted to save detailed informations about this error, but file: ' . LOGS . "error.log couldn't be opened for writing.. so the detailed information couldn't be saved.. are you sure directory system/logs is writable by web server? Correct this, and then refresh this site."; + } + else { + fwrite($f, '[' . date(DateTime::RFC1123) . '] ' . $exception->getMessage() . PHP_EOL); + fclose($f); + } + } + + $backtrace_formatted = nl2br($exception->getTraceAsString()); + + $message = $message . "

File: {$exception->getFile()}
Line: {$exception->getLine()}"; + + // display basic error message without template + // template is missing, why? probably someone deleted templates dir, or it wasn't downloaded right + $template_file = SYSTEM . 'templates/exception.html.twig'; + if(!file_exists($template_file)) { + echo 'Something went terribly wrong..

'; + echo "$message

"; + echo 'Backtrace:
'; + echo $backtrace_formatted; + return; + } + + // display beautiful error message + // the file is .twig.html, but its not really parsed by Twig + // we just replace some values manually + // cause in case Twig throws exception, we can show it too + $content = file_get_contents($template_file); + $content = str_replace(array('{{ BASE_URL }}', '{{ exceptionClass }}', '{{ message }}', '{{ backtrace }}', '{{ powered_by }}'), array(BASE_URL, get_class($exception), $message, $backtrace_formatted, base64_decode('UG93ZXJlZCBieSA8YSBocmVmPSJodHRwOi8vbXktYWFjLm9yZyIgdGFyZ2V0PSJfYmxhbmsiPk15QUFDLjwvYT4=')), $content); + + echo $content; +} + +set_exception_handler('exception_handler'); diff --git a/system/libs/SensitiveException.php b/system/libs/SensitiveException.php new file mode 100644 index 00000000..58978198 --- /dev/null +++ b/system/libs/SensitiveException.php @@ -0,0 +1,3 @@ + + + + + + + Something went wrong... + + + + + + + + + + + +
+

Whoops something went wrong...

+
+ Exception class: {{ exceptionClass }}() +

+ {{ message }} +


+ Backtrace:

+ {{ backtrace }} +
+
+ + + From c247789adf5a829d89c08248eeef23af5347474c Mon Sep 17 00:00:00 2001 From: slawkens Date: Fri, 2 Jun 2023 15:24:10 +0200 Subject: [PATCH 04/23] is not working properly, use full URL instead --- system/templates/exception.html.twig | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/system/templates/exception.html.twig b/system/templates/exception.html.twig index 7a31b4bb..f258830f 100644 --- a/system/templates/exception.html.twig +++ b/system/templates/exception.html.twig @@ -8,9 +8,8 @@ - - - + + From 82092338d67e49b4be1bd81b5ae895e7d6af29be Mon Sep 17 00:00:00 2001 From: slawkens Date: Sat, 3 Jun 2023 06:47:06 +0200 Subject: [PATCH 05/23] Install composer deps with --no-dev --- release.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release.sh b/release.sh index 8e104ea2..ff86953d 100644 --- a/release.sh +++ b/release.sh @@ -38,7 +38,7 @@ if [ $1 = "prepare" ]; then cd $dir || exit # dependencies - composer install + composer install --no-dev echo "Now you can make changes to $dir. When you are ready, type 'release.sh pack'" exit From 5bb3e57b7bbbf51c22644a0e9317b5a1f18a07cc Mon Sep 17 00:00:00 2001 From: slawkens Date: Sat, 3 Jun 2023 09:04:24 +0200 Subject: [PATCH 06/23] Rename to .htaccess.dist Causes problems on default setup --- .htaccess => .htaccess.dist | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .htaccess => .htaccess.dist (100%) diff --git a/.htaccess b/.htaccess.dist similarity index 100% rename from .htaccess rename to .htaccess.dist From eabe789bbb0427bb833627bf3cd25bfcbb3ac60a Mon Sep 17 00:00:00 2001 From: slawkens Date: Sat, 3 Jun 2023 12:24:18 +0200 Subject: [PATCH 07/23] Disable reporting on CI --- install/steps/7-finish.php | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/install/steps/7-finish.php b/install/steps/7-finish.php index 656c60fe..0f776b06 100644 --- a/install/steps/7-finish.php +++ b/install/steps/7-finish.php @@ -122,18 +122,21 @@ else { )); if(!isset($_SESSION['installed'])) { - $report_url = 'https://my-aac.org/report_install.php?v=' . MYAAC_VERSION . '&b=' . urlencode(BASE_URL); - if (function_exists('curl_version')) - { - $curl = curl_init(); - curl_setopt($curl, CURLOPT_URL, $report_url); - curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); - curl_exec($curl); - curl_close($curl); - } - else if (ini_get('allow_url_fopen') ) { - file_get_contents($report_url); + if (!array_key_exists('CI', $_ENV)) { + $report_url = 'https://my-aac.org/report_install.php?v=' . MYAAC_VERSION . '&b=' . urlencode(BASE_URL); + if (function_exists('curl_version')) + { + $curl = curl_init(); + curl_setopt($curl, CURLOPT_URL, $report_url); + curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); + curl_exec($curl); + curl_close($curl); + } + else if (ini_get('allow_url_fopen') ) { + file_get_contents($report_url); + } } + $_SESSION['installed'] = true; } From 4e22c42b10300ababc2595507e671adeedadbe07 Mon Sep 17 00:00:00 2001 From: slawkens Date: Sat, 3 Jun 2023 18:38:30 +0200 Subject: [PATCH 08/23] test dump env --- .github/workflows/cypress.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/cypress.yml b/.github/workflows/cypress.yml index 2909555a..e028af40 100644 --- a/.github/workflows/cypress.yml +++ b/.github/workflows/cypress.yml @@ -96,6 +96,9 @@ jobs: - name: Install Composer dependencies run: composer install --no-progress --prefer-dist --optimize-autoloader + - name: Dump Env + run: php -r "var_dump(getenv());" + - name: Run PHP server run: nohup php -S localhost:8080 > php.log 2>&1 & From c7ce87c4b6949f135c2ce0cec889565c6e67d99b Mon Sep 17 00:00:00 2001 From: slawkens Date: Sat, 3 Jun 2023 18:41:16 +0200 Subject: [PATCH 09/23] do not report if CI test 2 --- .github/workflows/cypress.yml | 3 --- install/steps/7-finish.php | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/cypress.yml b/.github/workflows/cypress.yml index e028af40..2909555a 100644 --- a/.github/workflows/cypress.yml +++ b/.github/workflows/cypress.yml @@ -96,9 +96,6 @@ jobs: - name: Install Composer dependencies run: composer install --no-progress --prefer-dist --optimize-autoloader - - name: Dump Env - run: php -r "var_dump(getenv());" - - name: Run PHP server run: nohup php -S localhost:8080 > php.log 2>&1 & diff --git a/install/steps/7-finish.php b/install/steps/7-finish.php index 0f776b06..f6e1f6c2 100644 --- a/install/steps/7-finish.php +++ b/install/steps/7-finish.php @@ -122,7 +122,7 @@ else { )); if(!isset($_SESSION['installed'])) { - if (!array_key_exists('CI', $_ENV)) { + if (!array_key_exists('CI', getenv())) { $report_url = 'https://my-aac.org/report_install.php?v=' . MYAAC_VERSION . '&b=' . urlencode(BASE_URL); if (function_exists('curl_version')) { From b1d2ac34a26e45d233fd4c049e6ef8bbcf97421b Mon Sep 17 00:00:00 2001 From: slawkens Date: Sat, 3 Jun 2023 18:51:57 +0200 Subject: [PATCH 10/23] Update branch name --- .github/workflows/cypress.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cypress.yml b/.github/workflows/cypress.yml index 2909555a..067c9a6c 100644 --- a/.github/workflows/cypress.yml +++ b/.github/workflows/cypress.yml @@ -1,9 +1,9 @@ name: Cypress on: pull_request: - branches: [develop] + branches: [0.9] push: - branches: [develop] + branches: [0.9] jobs: cypress: @@ -34,7 +34,7 @@ jobs: - name: Checkout MyAAC uses: actions/checkout@v3 with: - ref: develop + ref: 0.9 - name: Checkout TFS uses: actions/checkout@v3 From 171c114b0f4838790be918508c98d1b304ff3b94 Mon Sep 17 00:00:00 2001 From: slawkens Date: Sun, 11 Jun 2023 18:57:52 +0200 Subject: [PATCH 11/23] Fix links to edit/delete/hide directly from page --- system/templates/admin.pages.links.html.twig | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/system/templates/admin.pages.links.html.twig b/system/templates/admin.pages.links.html.twig index d8529e3e..459d0623 100644 --- a/system/templates/admin.pages.links.html.twig +++ b/system/templates/admin.pages.links.html.twig @@ -1,12 +1,12 @@
- + Edit - Delete - {% if page.hidden != 1 %}Hide{% else %}Show{% endif %} From 76bfab13038f70ed2fe7935182dc193b6f2b6e0d Mon Sep 17 00:00:00 2001 From: SRNT-GG <95472530+SRNT-GG@users.noreply.github.com> Date: Thu, 15 Jun 2023 20:53:55 +0200 Subject: [PATCH 12/23] WIP - Removing unneccessary closing tags to prevent potential issues. (#223) * Part 1 Removing closing tags when no HTML or other output comes after the last PHP codeblock. * Further removals * nothing --------- Co-authored-by: slawkens --- admin/includes/functions.php | 3 ++- admin/pages/pages.php | 2 -- admin/pages/statistics.php | 1 - admin/pages/version.php | 1 - admin/tools/phpinfo.php | 1 - install/includes/config.php | 1 - install/steps/2-license.php | 1 - install/steps/4-config.php | 1 - system/counter.php | 1 - system/init.php | 2 +- system/item.php | 1 - system/libs/data.php | 1 - system/libs/pot/E_OTS_ErrorCode.php | 2 -- system/libs/pot/E_OTS_Generic.php | 2 -- system/libs/pot/E_OTS_NotAContainer.php | 2 -- system/libs/pot/E_OTS_OTBMError.php | 2 -- system/libs/pot/E_OTS_ReadOnly.php | 2 -- system/libs/pot/IOTS_Cipher.php | 2 -- system/libs/pot/IOTS_DataDisplay.php | 2 -- system/libs/pot/IOTS_Display.php | 2 -- system/libs/pot/IOTS_GuildAction.php | 2 -- system/libs/pot/OTS_Account.php | 2 -- system/libs/pot/OTS_AccountBans_List.php | 2 -- system/libs/pot/OTS_Admin.php | 2 -- system/libs/pot/OTS_Bans_List.php | 2 -- system/libs/pot/OTS_Base_DB.php | 2 -- system/libs/pot/OTS_BinaryTools.php | 2 -- system/libs/pot/OTS_Container.php | 2 -- system/libs/pot/OTS_FileLoader.php | 2 -- system/libs/pot/OTS_Group.php | 2 -- system/libs/pot/OTS_Guild.php | 2 -- system/libs/pot/OTS_GuildRanks_List.php | 2 -- system/libs/pot/OTS_House.php | 2 -- system/libs/pot/OTS_IPBans_List.php | 2 -- system/libs/pot/OTS_InfoRespond.php | 2 -- system/libs/pot/OTS_ItemsList.php | 2 -- system/libs/pot/OTS_MapCoords.php | 2 -- system/libs/pot/OTS_MonstersList.php | 2 -- system/libs/pot/OTS_Player.php | 2 -- system/libs/pot/OTS_PlayerBans_List.php | 2 -- system/libs/pot/OTS_Row_DAO.php | 2 -- system/libs/pot/OTS_SQLField.php | 2 -- system/libs/pot/OTS_ServerInfo.php | 2 -- system/libs/pot/OTS_Spell.php | 2 -- system/libs/pot/OTS_Toolbox.php | 2 -- system/libs/pot/OTS_XTEA.php | 2 -- system/libs/rfc6238.php | 1 - system/libs/validator.php | 1 - system/locale/de/admin.php | 1 - system/locale/de/main.php | 3 +-- system/locale/en/install.php | 1 - system/locale/pl/admin.php | 1 - system/locale/pl/main.php | 2 +- system/locale/pt_br/install.php | 1 - system/locale/sv/admin.php | 1 - system/locale/sv/main.php | 1 - system/migrations/11.php | 1 - system/migrations/13.php | 3 +-- system/migrations/15.php | 1 - system/migrations/17.php | 1 - system/migrations/19.php | 3 +-- system/migrations/2.php | 1 - system/migrations/20.php | 1 - system/migrations/4.php | 3 +-- system/migrations/6.php | 3 +-- system/migrations/8.php | 3 +-- system/pages/account/change_email.php | 1 - system/pages/account/change_name.php | 2 -- system/pages/account/change_sex.php | 2 -- system/pages/account/lost.php | 1 - system/pages/bugtracker.php | 1 - system/pages/faq.php | 1 - system/pages/forum/edit_post.php | 2 -- system/pages/forum/new_thread.php | 2 -- system/pages/gallery.php | 1 - system/pages/guilds/change_description.php | 2 -- system/pages/guilds/change_motd.php | 2 -- system/pages/guilds/cleanup_players.php | 1 - system/pages/guilds/delete_by_admin.php | 2 -- system/pages/guilds/delete_rank.php | 2 -- system/pages/guilds/leave.php | 2 -- system/pages/guilds/pass_leadership.php | 2 -- system/pages/polls.php | 1 - system/pages/server_info.php | 3 --- system/pages/team.php | 1 - templates/tibiacom/index.php | 1 - tools/news_preview.php | 2 -- tools/signature/gesior.php | 3 +-- tools/signature/mango.php | 1 - 89 files changed, 11 insertions(+), 144 deletions(-) diff --git a/admin/includes/functions.php b/admin/includes/functions.php index ab604f76..620272f5 100644 --- a/admin/includes/functions.php +++ b/admin/includes/functions.php @@ -1 +1,2 @@ - \ No newline at end of file + diff --git a/admin/pages/statistics.php b/admin/pages/statistics.php index 17d8118f..b740c217 100644 --- a/admin/pages/statistics.php +++ b/admin/pages/statistics.php @@ -36,4 +36,3 @@ $twig->display('admin.statistics.html.twig', array( 'account_type' => (USE_ACCOUNT_NAME ? 'name' : 'number'), 'points' => $points )); -?> \ No newline at end of file diff --git a/admin/pages/version.php b/admin/pages/version.php index e643e728..64f673c8 100644 --- a/admin/pages/version.php +++ b/admin/pages/version.php @@ -47,4 +47,3 @@ function version_revert($version) $release = $version; return $major . '.' . $minor . '.' . $release; }*/ -?> diff --git a/admin/tools/phpinfo.php b/admin/tools/phpinfo.php index 96a9aad9..cd043279 100644 --- a/admin/tools/phpinfo.php +++ b/admin/tools/phpinfo.php @@ -13,4 +13,3 @@ if(!function_exists('phpinfo')) die('phpinfo() disabled on this web server.'); phpinfo(); -?> diff --git a/install/includes/config.php b/install/includes/config.php index 380fff7d..5d9ae07a 100644 --- a/install/includes/config.php +++ b/install/includes/config.php @@ -38,4 +38,3 @@ if(!isset($error) || !$error) { $error = true; } } -?> \ No newline at end of file diff --git a/install/steps/2-license.php b/install/steps/2-license.php index e84ce0e6..4976dd70 100644 --- a/install/steps/2-license.php +++ b/install/steps/2-license.php @@ -5,4 +5,3 @@ $twig->display('install.license.html.twig', array( 'license' => file_get_contents(BASE . 'LICENSE'), 'buttons' => next_buttons() )); -?> diff --git a/install/steps/4-config.php b/install/steps/4-config.php index b1555201..325b97f1 100644 --- a/install/steps/4-config.php +++ b/install/steps/4-config.php @@ -18,4 +18,3 @@ $twig->display('install.config.html.twig', array( 'errors' => isset($errors) ? $errors : null, 'buttons' => next_buttons() )); -?> \ No newline at end of file diff --git a/system/counter.php b/system/counter.php index ada05903..63905ba2 100644 --- a/system/counter.php +++ b/system/counter.php @@ -51,4 +51,3 @@ else updateDatabaseConfig('views_counter', $views_counter); // update counter } } -?> diff --git a/system/init.php b/system/init.php index 056bbd40..2815f791 100644 --- a/system/init.php +++ b/system/init.php @@ -122,7 +122,7 @@ if(!isset($foundValue)) { $config['data_path'] = $foundValue; unset($foundValue); -// new config values for compability +// new config values for compatibility if(!isset($config['highscores_ids_hidden']) || count($config['highscores_ids_hidden']) == 0) { $config['highscores_ids_hidden'] = array(0); } diff --git a/system/item.php b/system/item.php index 4d213360..66d4bfc5 100644 --- a/system/item.php +++ b/system/item.php @@ -58,4 +58,3 @@ function outputItem($id = 100, $count = 1) $file_name = Items_Images::$outputDir . $file_name . '.gif'; readfile($file_name); } -?> diff --git a/system/libs/data.php b/system/libs/data.php index 64d93f78..af667448 100644 --- a/system/libs/data.php +++ b/system/libs/data.php @@ -41,4 +41,3 @@ class Data return $db->update($this->table, $data, $where); } } -?> diff --git a/system/libs/pot/E_OTS_ErrorCode.php b/system/libs/pot/E_OTS_ErrorCode.php index f5bbd2fc..451e5a07 100644 --- a/system/libs/pot/E_OTS_ErrorCode.php +++ b/system/libs/pot/E_OTS_ErrorCode.php @@ -32,5 +32,3 @@ class E_OTS_ErrorCode extends Exception } /**#@-*/ - -?> diff --git a/system/libs/pot/E_OTS_Generic.php b/system/libs/pot/E_OTS_Generic.php index 3ca0a914..7a95d675 100644 --- a/system/libs/pot/E_OTS_Generic.php +++ b/system/libs/pot/E_OTS_Generic.php @@ -36,5 +36,3 @@ class E_OTS_Generic extends E_OTS_ErrorCode } /**#@-*/ - -?> diff --git a/system/libs/pot/E_OTS_NotAContainer.php b/system/libs/pot/E_OTS_NotAContainer.php index 3a8d224b..8285691f 100644 --- a/system/libs/pot/E_OTS_NotAContainer.php +++ b/system/libs/pot/E_OTS_NotAContainer.php @@ -22,5 +22,3 @@ class E_OTS_NotAContainer extends Exception } /**#@-*/ - -?> diff --git a/system/libs/pot/E_OTS_OTBMError.php b/system/libs/pot/E_OTS_OTBMError.php index d84d740c..9ab1228d 100644 --- a/system/libs/pot/E_OTS_OTBMError.php +++ b/system/libs/pot/E_OTS_OTBMError.php @@ -32,5 +32,3 @@ class E_OTS_OTBMError extends E_OTS_ErrorCode } /**#@-*/ - -?> diff --git a/system/libs/pot/E_OTS_ReadOnly.php b/system/libs/pot/E_OTS_ReadOnly.php index 003d12af..5fb3b39b 100644 --- a/system/libs/pot/E_OTS_ReadOnly.php +++ b/system/libs/pot/E_OTS_ReadOnly.php @@ -22,5 +22,3 @@ class E_OTS_ReadOnly extends Exception } /**#@-*/ - -?> diff --git a/system/libs/pot/IOTS_Cipher.php b/system/libs/pot/IOTS_Cipher.php index 82044cc8..542b4abb 100644 --- a/system/libs/pot/IOTS_Cipher.php +++ b/system/libs/pot/IOTS_Cipher.php @@ -37,5 +37,3 @@ interface IOTS_Cipher } /**#@-*/ - -?> diff --git a/system/libs/pot/IOTS_DataDisplay.php b/system/libs/pot/IOTS_DataDisplay.php index 7c5abc2c..359dc1a6 100644 --- a/system/libs/pot/IOTS_DataDisplay.php +++ b/system/libs/pot/IOTS_DataDisplay.php @@ -89,5 +89,3 @@ interface IOTS_DataDisplay } /**#@-*/ - -?> diff --git a/system/libs/pot/IOTS_Display.php b/system/libs/pot/IOTS_Display.php index cb2d8e90..3b75d537 100644 --- a/system/libs/pot/IOTS_Display.php +++ b/system/libs/pot/IOTS_Display.php @@ -96,5 +96,3 @@ interface IOTS_Display } /**#@-*/ - -?> diff --git a/system/libs/pot/IOTS_GuildAction.php b/system/libs/pot/IOTS_GuildAction.php index 7ed97f94..680025cd 100644 --- a/system/libs/pot/IOTS_GuildAction.php +++ b/system/libs/pot/IOTS_GuildAction.php @@ -67,5 +67,3 @@ interface IOTS_GuildAction } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_Account.php b/system/libs/pot/OTS_Account.php index d5b42961..9a6b39a7 100644 --- a/system/libs/pot/OTS_Account.php +++ b/system/libs/pot/OTS_Account.php @@ -1198,5 +1198,3 @@ class OTS_Account extends OTS_Row_DAO implements IteratorAggregate, Countable } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_AccountBans_List.php b/system/libs/pot/OTS_AccountBans_List.php index f3687409..fdd2f923 100644 --- a/system/libs/pot/OTS_AccountBans_List.php +++ b/system/libs/pot/OTS_AccountBans_List.php @@ -34,5 +34,3 @@ class OTS_AccountBans_List extends OTS_Bans_List $this->setFilter($filter); } } - -?> diff --git a/system/libs/pot/OTS_Admin.php b/system/libs/pot/OTS_Admin.php index 3507e10d..7530d6ef 100644 --- a/system/libs/pot/OTS_Admin.php +++ b/system/libs/pot/OTS_Admin.php @@ -735,5 +735,3 @@ class OTS_Admin } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_Bans_List.php b/system/libs/pot/OTS_Bans_List.php index 5f58788e..8eb59df6 100644 --- a/system/libs/pot/OTS_Bans_List.php +++ b/system/libs/pot/OTS_Bans_List.php @@ -100,5 +100,3 @@ class OTS_Bans_List extends OTS_Base_List } } } - -?> diff --git a/system/libs/pot/OTS_Base_DB.php b/system/libs/pot/OTS_Base_DB.php index f97745b4..21d6f756 100644 --- a/system/libs/pot/OTS_Base_DB.php +++ b/system/libs/pot/OTS_Base_DB.php @@ -265,5 +265,3 @@ abstract class OTS_Base_DB extends PDO implements IOTS_DB } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_BinaryTools.php b/system/libs/pot/OTS_BinaryTools.php index 7e6a86e5..84fbf54c 100644 --- a/system/libs/pot/OTS_BinaryTools.php +++ b/system/libs/pot/OTS_BinaryTools.php @@ -146,5 +146,3 @@ class OTS_BinaryTools } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_Container.php b/system/libs/pot/OTS_Container.php index 7b93570f..ff910401 100644 --- a/system/libs/pot/OTS_Container.php +++ b/system/libs/pot/OTS_Container.php @@ -149,5 +149,3 @@ class OTS_Container extends OTS_Item implements IteratorAggregate } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_FileLoader.php b/system/libs/pot/OTS_FileLoader.php index 8f86712e..77f184f3 100644 --- a/system/libs/pot/OTS_FileLoader.php +++ b/system/libs/pot/OTS_FileLoader.php @@ -357,5 +357,3 @@ class OTS_FileLoader } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_Group.php b/system/libs/pot/OTS_Group.php index 19f770f1..d094d365 100644 --- a/system/libs/pot/OTS_Group.php +++ b/system/libs/pot/OTS_Group.php @@ -671,5 +671,3 @@ class OTS_Group extends OTS_Row_DAO implements IteratorAggregate, Countable } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_Guild.php b/system/libs/pot/OTS_Guild.php index 98dd47cf..bab363a8 100644 --- a/system/libs/pot/OTS_Guild.php +++ b/system/libs/pot/OTS_Guild.php @@ -837,5 +837,3 @@ class OTS_Guild extends OTS_Row_DAO implements IteratorAggregate, Countable } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_GuildRanks_List.php b/system/libs/pot/OTS_GuildRanks_List.php index f2f9e57e..aec6114a 100644 --- a/system/libs/pot/OTS_GuildRanks_List.php +++ b/system/libs/pot/OTS_GuildRanks_List.php @@ -72,5 +72,3 @@ class OTS_GuildRanks_List extends OTS_Base_List } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_House.php b/system/libs/pot/OTS_House.php index e6aca322..12a8f1cb 100644 --- a/system/libs/pot/OTS_House.php +++ b/system/libs/pot/OTS_House.php @@ -529,5 +529,3 @@ class OTS_House extends OTS_Row_DAO } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_IPBans_List.php b/system/libs/pot/OTS_IPBans_List.php index dd614e9a..1fdfc0ce 100644 --- a/system/libs/pot/OTS_IPBans_List.php +++ b/system/libs/pot/OTS_IPBans_List.php @@ -34,5 +34,3 @@ class OTS_IPBans_List extends OTS_Bans_List $this->setFilter($filter); } } - -?> diff --git a/system/libs/pot/OTS_InfoRespond.php b/system/libs/pot/OTS_InfoRespond.php index f64fca05..6e452371 100644 --- a/system/libs/pot/OTS_InfoRespond.php +++ b/system/libs/pot/OTS_InfoRespond.php @@ -387,5 +387,3 @@ class OTS_InfoRespond extends DOMDocument } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_ItemsList.php b/system/libs/pot/OTS_ItemsList.php index 1865117a..30465a9d 100644 --- a/system/libs/pot/OTS_ItemsList.php +++ b/system/libs/pot/OTS_ItemsList.php @@ -676,5 +676,3 @@ class OTS_ItemsList extends OTS_FileLoader implements IteratorAggregate, Countab } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_MapCoords.php b/system/libs/pot/OTS_MapCoords.php index dfe1a1cd..738b0bea 100644 --- a/system/libs/pot/OTS_MapCoords.php +++ b/system/libs/pot/OTS_MapCoords.php @@ -130,5 +130,3 @@ class OTS_MapCoords } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_MonstersList.php b/system/libs/pot/OTS_MonstersList.php index fb51a085..f7d1b2da 100644 --- a/system/libs/pot/OTS_MonstersList.php +++ b/system/libs/pot/OTS_MonstersList.php @@ -299,5 +299,3 @@ class OTS_MonstersList implements Iterator, Countable, ArrayAccess } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_Player.php b/system/libs/pot/OTS_Player.php index 2143c12e..7fd96fec 100644 --- a/system/libs/pot/OTS_Player.php +++ b/system/libs/pot/OTS_Player.php @@ -3627,5 +3627,3 @@ class OTS_Player extends OTS_Row_DAO } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_PlayerBans_List.php b/system/libs/pot/OTS_PlayerBans_List.php index 7e06c7ca..f9826f78 100644 --- a/system/libs/pot/OTS_PlayerBans_List.php +++ b/system/libs/pot/OTS_PlayerBans_List.php @@ -34,5 +34,3 @@ class OTS_PlayerBans_List extends OTS_Bans_List $this->setFilter($filter); } } - -?> diff --git a/system/libs/pot/OTS_Row_DAO.php b/system/libs/pot/OTS_Row_DAO.php index c1a09858..2a0a100c 100644 --- a/system/libs/pot/OTS_Row_DAO.php +++ b/system/libs/pot/OTS_Row_DAO.php @@ -75,5 +75,3 @@ abstract class OTS_Row_DAO extends OTS_Base_DAO } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_SQLField.php b/system/libs/pot/OTS_SQLField.php index 2f7ac74e..ba2bb55c 100644 --- a/system/libs/pot/OTS_SQLField.php +++ b/system/libs/pot/OTS_SQLField.php @@ -121,5 +121,3 @@ class OTS_SQLField } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_ServerInfo.php b/system/libs/pot/OTS_ServerInfo.php index eb153c93..fd06749e 100644 --- a/system/libs/pot/OTS_ServerInfo.php +++ b/system/libs/pot/OTS_ServerInfo.php @@ -227,5 +227,3 @@ class OTS_ServerInfo } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_Spell.php b/system/libs/pot/OTS_Spell.php index 0ec51bdf..419ee292 100644 --- a/system/libs/pot/OTS_Spell.php +++ b/system/libs/pot/OTS_Spell.php @@ -482,5 +482,3 @@ class OTS_Spell } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_Toolbox.php b/system/libs/pot/OTS_Toolbox.php index 4d22d0dd..980e5cb5 100644 --- a/system/libs/pot/OTS_Toolbox.php +++ b/system/libs/pot/OTS_Toolbox.php @@ -113,5 +113,3 @@ class OTS_Toolbox } /**#@-*/ - -?> diff --git a/system/libs/pot/OTS_XTEA.php b/system/libs/pot/OTS_XTEA.php index 96ee7553..ff5a1095 100644 --- a/system/libs/pot/OTS_XTEA.php +++ b/system/libs/pot/OTS_XTEA.php @@ -151,5 +151,3 @@ class OTS_XTEA implements IOTS_Cipher } /**#@-*/ - -?> diff --git a/system/libs/rfc6238.php b/system/libs/rfc6238.php index 579f08f2..5effedd3 100644 --- a/system/libs/rfc6238.php +++ b/system/libs/rfc6238.php @@ -282,4 +282,3 @@ class TokenAuth6238 { return $result; } } -?> diff --git a/system/libs/validator.php b/system/libs/validator.php index 38db7068..91f71c24 100644 --- a/system/libs/validator.php +++ b/system/libs/validator.php @@ -451,4 +451,3 @@ class Validator return self::$lastError; } } -?> diff --git a/system/locale/de/admin.php b/system/locale/de/admin.php index 8a128216..dae5fdee 100644 --- a/system/locale/de/admin.php +++ b/system/locale/de/admin.php @@ -6,4 +6,3 @@ * @author Slawkens */ $locale['title'] = 'MyAAC Admin'; -?> diff --git a/system/locale/de/main.php b/system/locale/de/main.php index 3f9b2479..e4482572 100644 --- a/system/locale/de/main.php +++ b/system/locale/de/main.php @@ -11,5 +11,4 @@ $locale['encoding'] = 'utf-8'; $locale['direction']= 'ltr'; $locale['error404'] = 'Diese Seite konnte nicht gefunden werden.'; -$locale['news'] = 'Neuesten Nachrichten'; -?> \ No newline at end of file +$locale['news'] = 'Neuesten Nachrichten'; \ No newline at end of file diff --git a/system/locale/en/install.php b/system/locale/en/install.php index f856dcbf..3de85896 100644 --- a/system/locale/en/install.php +++ b/system/locale/en/install.php @@ -131,4 +131,3 @@ $locale['step_finish_title'] = 'Installation finished!'; $locale['step_finish_desc'] = 'Congratulations! MyAAC is ready to use!
You can now login to $ADMIN_PANEL$, or visit $HOMEPAGE$.

Please delete install/ directory.

Post bugs and suggestions at $LINK$, thanks!'; -?> diff --git a/system/locale/pl/admin.php b/system/locale/pl/admin.php index 91adfc60..8431b438 100644 --- a/system/locale/pl/admin.php +++ b/system/locale/pl/admin.php @@ -6,4 +6,3 @@ * @author Slawkens */ $locale['title'] = 'MyAAC Admin'; -?> diff --git a/system/locale/pl/main.php b/system/locale/pl/main.php index 200bba22..b86b331f 100644 --- a/system/locale/pl/main.php +++ b/system/locale/pl/main.php @@ -12,4 +12,4 @@ $locale['direction']= 'ltr'; $locale['error404'] = 'Strona nie została odnaleziona.'; $locale['news'] = 'Ostatnie newsy'; -$locale['loaded_in_ms'] = 'w $TIME$ ms'; \ No newline at end of file +$locale['loaded_in_ms'] = 'w $TIME$ ms'; diff --git a/system/locale/pt_br/install.php b/system/locale/pt_br/install.php index e47faede..3a9ca9cc 100644 --- a/system/locale/pt_br/install.php +++ b/system/locale/pt_br/install.php @@ -118,4 +118,3 @@ $locale['step_finish'] = 'Finalizar'; $locale['step_finish_title'] = 'Instalação terminada!'; $locale['step_finish_desc'] = 'Parabéns! MyAAC está pronto para uso!
Agora você pode fazer login em $ADMIN_PANEL$ ou visitar $HOMEPAGE$.

Por favor remova a pasta install/.

Postar bugs e sugestões em $LINK$, obrigado!'; -?> diff --git a/system/locale/sv/admin.php b/system/locale/sv/admin.php index 69f4f20a..8fa07f74 100644 --- a/system/locale/sv/admin.php +++ b/system/locale/sv/admin.php @@ -6,4 +6,3 @@ * @author Sizaro */ $locale['title'] = 'MyAAC Admin'; -?> diff --git a/system/locale/sv/main.php b/system/locale/sv/main.php index fc714190..83f6bb84 100644 --- a/system/locale/sv/main.php +++ b/system/locale/sv/main.php @@ -12,4 +12,3 @@ $locale['direction']= 'ltr'; $locale['error404'] = 'Sidan kunde inte hittas.'; $locale['news'] = 'Senaste nyheterna'; -?> \ No newline at end of file diff --git a/system/migrations/11.php b/system/migrations/11.php index dc335577..845f9e67 100644 --- a/system/migrations/11.php +++ b/system/migrations/11.php @@ -17,4 +17,3 @@ 'thumb' => str_replace('/screenshots/', '/gallery/', $item['thumb']), ), array('id' => $item['id'])); } -?> diff --git a/system/migrations/13.php b/system/migrations/13.php index 71d3735c..4eee77f3 100644 --- a/system/migrations/13.php +++ b/system/migrations/13.php @@ -1,4 +1,3 @@ hasColumn(TABLE_PREFIX . 'spells', 'spell')) - $db->query("ALTER TABLE `" . TABLE_PREFIX . "spells` DROP COLUMN `spell`;"); -?> \ No newline at end of file + $db->query("ALTER TABLE `" . TABLE_PREFIX . "spells` DROP COLUMN `spell`;"); \ No newline at end of file diff --git a/system/migrations/15.php b/system/migrations/15.php index 28996d8a..971587ec 100644 --- a/system/migrations/15.php +++ b/system/migrations/15.php @@ -8,4 +8,3 @@ if(!$db->hasColumn(TABLE_PREFIX . 'forum_boards', 'guild')) { if(!$db->hasColumn(TABLE_PREFIX . 'forum_boards', 'access')) { $db->query("ALTER TABLE `" . TABLE_PREFIX . "forum_boards` ADD `access` TINYINT(1) NOT NULL DEFAULT 0 AFTER `guild`;"); } -?> \ No newline at end of file diff --git a/system/migrations/17.php b/system/migrations/17.php index e4b1667c..220bc90b 100644 --- a/system/migrations/17.php +++ b/system/migrations/17.php @@ -86,4 +86,3 @@ INSERT INTO `myaac_menu` (`template`, `name`, `link`, `category`, `ordering`) VA INSERT INTO `myaac_menu` (`template`, `name`, `link`, `category`, `ordering`) VALUES ('tibiacom', 'Shop History', 'gifts/history', 6, 2); "); } -?> \ No newline at end of file diff --git a/system/migrations/19.php b/system/migrations/19.php index 50baa271..81c818d2 100644 --- a/system/migrations/19.php +++ b/system/migrations/19.php @@ -1,3 +1,2 @@ \ No newline at end of file +// this migration has been removed, but file kept for compatibility diff --git a/system/migrations/2.php b/system/migrations/2.php index db5fd70f..90d9a610 100644 --- a/system/migrations/2.php +++ b/system/migrations/2.php @@ -3,4 +3,3 @@ $db->query("ALTER TABLE `" . TABLE_PREFIX . "movies` MODIFY `title` VARCHAR(100) NOT NULL DEFAULT '';"); $db->query("ALTER TABLE `" . TABLE_PREFIX . "news` MODIFY `title` VARCHAR(100) NOT NULL DEFAULT '';"); $db->query("ALTER TABLE `" . TABLE_PREFIX . "news` MODIFY `body` TEXT NOT NULL DEFAULT '';"); -?> diff --git a/system/migrations/20.php b/system/migrations/20.php index 0533b540..d0012fde 100644 --- a/system/migrations/20.php +++ b/system/migrations/20.php @@ -45,4 +45,3 @@ function databaseMigration20(&$content = '') { file_put_contents($config_file, $content, FILE_APPEND); return true; } -?> \ No newline at end of file diff --git a/system/migrations/4.php b/system/migrations/4.php index 80bbc4a0..db17feb1 100644 --- a/system/migrations/4.php +++ b/system/migrations/4.php @@ -1,4 +1,3 @@ hasColumn(TABLE_PREFIX . 'monsters', 'id')) - $db->query("ALTER TABLE `" . TABLE_PREFIX . "monsters` ADD `id` int(11) NOT NULL AUTO_INCREMENT primary key FIRST;"); -?> \ No newline at end of file + $db->query("ALTER TABLE `" . TABLE_PREFIX . "monsters` ADD `id` int(11) NOT NULL AUTO_INCREMENT primary key FIRST;"); \ No newline at end of file diff --git a/system/migrations/6.php b/system/migrations/6.php index ed5329d0..e287d55a 100644 --- a/system/migrations/6.php +++ b/system/migrations/6.php @@ -1,4 +1,3 @@ hasColumn(TABLE_PREFIX . 'hooks', 'enabled')) - $db->query("ALTER TABLE `" . TABLE_PREFIX . "hooks` ADD `enabled` INT(1) NOT NULL DEFAULT 1;"); -?> \ No newline at end of file + $db->query("ALTER TABLE `" . TABLE_PREFIX . "hooks` ADD `enabled` INT(1) NOT NULL DEFAULT 1;"); \ No newline at end of file diff --git a/system/migrations/8.php b/system/migrations/8.php index a04331a8..4785e23b 100644 --- a/system/migrations/8.php +++ b/system/migrations/8.php @@ -14,5 +14,4 @@ foreach($boards as $id => $board) $db->query('UPDATE `' . TABLE_PREFIX . 'forum_boards` SET `ordering` = ' . $id . ' WHERE `name` = ' . $db->quote($board)); - } -?> \ No newline at end of file + } \ No newline at end of file diff --git a/system/pages/account/change_email.php b/system/pages/account/change_email.php index 2368a284..3bc8edd7 100644 --- a/system/pages/account/change_email.php +++ b/system/pages/account/change_email.php @@ -166,4 +166,3 @@ if(isset($_POST['emailchangecancel']) && $_POST['emailchangecancel'] == 1) { 'custom_buttons' => $custom_buttons )); } -?> diff --git a/system/pages/account/change_name.php b/system/pages/account/change_name.php index ab7bd326..448e730c 100644 --- a/system/pages/account/change_name.php +++ b/system/pages/account/change_name.php @@ -112,5 +112,3 @@ else )); } } - -?> diff --git a/system/pages/account/change_sex.php b/system/pages/account/change_sex.php index c67ac608..868cf24f 100644 --- a/system/pages/account/change_sex.php +++ b/system/pages/account/change_sex.php @@ -91,5 +91,3 @@ else )); } } - -?> diff --git a/system/pages/account/lost.php b/system/pages/account/lost.php index a474540c..3ea0957e 100644 --- a/system/pages/account/lost.php +++ b/system/pages/account/lost.php @@ -546,4 +546,3 @@ elseif($action == 'setnewpassword') ' . $twig->render('buttons.submit.html.twig') . '
'; } -?> diff --git a/system/pages/bugtracker.php b/system/pages/bugtracker.php index a7cffcf0..ac37becd 100644 --- a/system/pages/bugtracker.php +++ b/system/pages/bugtracker.php @@ -339,4 +339,3 @@ $showed = $post = $reply = false; { echo '

[ADMIN PANEL]'; } -?> diff --git a/system/pages/faq.php b/system/pages/faq.php index f30e7914..5d71aa3c 100644 --- a/system/pages/faq.php +++ b/system/pages/faq.php @@ -185,4 +185,3 @@ class FAQ return !count($errors); } } -?> diff --git a/system/pages/forum/edit_post.php b/system/pages/forum/edit_post.php index 45fd675b..d3f95c45 100644 --- a/system/pages/forum/edit_post.php +++ b/system/pages/forum/edit_post.php @@ -114,5 +114,3 @@ if(Forum::canPost($account_logged)) } else echo "
Your account is banned, deleted or you don't have any player with level " . $config['forum_level_required'] . " on your account. You can't post."; - -?> diff --git a/system/pages/forum/new_thread.php b/system/pages/forum/new_thread.php index 4db06c63..c3b688ad 100644 --- a/system/pages/forum/new_thread.php +++ b/system/pages/forum/new_thread.php @@ -103,5 +103,3 @@ if(Forum::canPost($account_logged)) } else echo 'Your account is banned, deleted or you don\'t have any player with level '.$config['forum_level_required'].' on your account. You can\'t post.'; - -?> diff --git a/system/pages/gallery.php b/system/pages/gallery.php index c893ce90..b6e2b07f 100644 --- a/system/pages/gallery.php +++ b/system/pages/gallery.php @@ -312,4 +312,3 @@ class Gallery return !count($errors); } } -?> diff --git a/system/pages/guilds/change_description.php b/system/pages/guilds/change_description.php index b4e787ee..9f6fc0dc 100644 --- a/system/pages/guilds/change_description.php +++ b/system/pages/guilds/change_description.php @@ -72,5 +72,3 @@ if(!empty($errors)) { 'action' => '?subtopic=guilds' )); } - -?> diff --git a/system/pages/guilds/change_motd.php b/system/pages/guilds/change_motd.php index c777548d..84581485 100644 --- a/system/pages/guilds/change_motd.php +++ b/system/pages/guilds/change_motd.php @@ -75,5 +75,3 @@ if(!empty($errors)) { 'action' => '?subtopic=guilds' )); } - -?> diff --git a/system/pages/guilds/cleanup_players.php b/system/pages/guilds/cleanup_players.php index 30b1e8af..61b1ce49 100644 --- a/system/pages/guilds/cleanup_players.php +++ b/system/pages/guilds/cleanup_players.php @@ -68,4 +68,3 @@ else echo "0 players found."; $twig->display('guilds.back_button.html.twig'); -?> diff --git a/system/pages/guilds/delete_by_admin.php b/system/pages/guilds/delete_by_admin.php index 3e083c8a..7da54aea 100644 --- a/system/pages/guilds/delete_by_admin.php +++ b/system/pages/guilds/delete_by_admin.php @@ -66,5 +66,3 @@ if(!empty($errors)) { 'action' => '?subtopic=guilds' )); } - -?> diff --git a/system/pages/guilds/delete_rank.php b/system/pages/guilds/delete_rank.php index 6a8f642c..48eeba4d 100644 --- a/system/pages/guilds/delete_rank.php +++ b/system/pages/guilds/delete_rank.php @@ -125,5 +125,3 @@ if(!empty($guild_errors)) { 'action' => '?subtopic=guilds' )); } - -?> diff --git a/system/pages/guilds/leave.php b/system/pages/guilds/leave.php index 892deb89..9a11595d 100644 --- a/system/pages/guilds/leave.php +++ b/system/pages/guilds/leave.php @@ -114,5 +114,3 @@ else )); } } - -?> \ No newline at end of file diff --git a/system/pages/guilds/pass_leadership.php b/system/pages/guilds/pass_leadership.php index 462ac9ec..d5f0ed20 100644 --- a/system/pages/guilds/pass_leadership.php +++ b/system/pages/guilds/pass_leadership.php @@ -117,5 +117,3 @@ if(!empty($guild_errors)) { echo '
' . $twig->render('buttons.back.html.twig') . '
'; } - -?> diff --git a/system/pages/polls.php b/system/pages/polls.php index c31b61cb..dcc781c2 100644 --- a/system/pages/polls.php +++ b/system/pages/polls.php @@ -369,4 +369,3 @@ function getColorByPercent($percent) echo 'This poll doesn\'t exist.
'; echo '
Go to list of polls'; } -?> diff --git a/system/pages/server_info.php b/system/pages/server_info.php index 7c2a519e..b750c3ee 100644 --- a/system/pages/server_info.php +++ b/system/pages/server_info.php @@ -108,6 +108,3 @@ $twig->display('serverinfo.html.twig', array( 'finalBanishmentLength' => isset($config['lua']['final_banishment_length']) ? eval('return (' . $config['lua']['final_banishment_length'] . ') / (24 * 60 * 60);') : null, 'ipBanishmentLength' => isset($config['lua']['ip_banishment_length']) ? eval('return (' . $config['lua']['ip_banishment_length'] . ') / (24 * 60 * 60);') : null, )); -?> - - diff --git a/system/pages/team.php b/system/pages/team.php index 2e410e12..fbc0df99 100644 --- a/system/pages/team.php +++ b/system/pages/team.php @@ -74,4 +74,3 @@ foreach($groupList as $id => $group) $twig->display('team.html.twig', array( 'groupmember' => $groupMember )); -?> \ No newline at end of file diff --git a/templates/tibiacom/index.php b/templates/tibiacom/index.php index 989a05ca..539453c9 100644 --- a/templates/tibiacom/index.php +++ b/templates/tibiacom/index.php @@ -459,4 +459,3 @@ function logo_monster() global $config; return str_replace(" ", "", trim(strtolower($config['logo_monster']))); } -?> diff --git a/tools/news_preview.php b/tools/news_preview.php index 7fa1e125..a1709e81 100644 --- a/tools/news_preview.php +++ b/tools/news_preview.php @@ -112,5 +112,3 @@ function error_($desc) { )); exit(); } - -?> \ No newline at end of file diff --git a/tools/signature/gesior.php b/tools/signature/gesior.php index d3b4edce..a9b88a25 100644 --- a/tools/signature/gesior.php +++ b/tools/signature/gesior.php @@ -12,7 +12,7 @@ $vocation = 'Unknown vocation'; if(isset($config['vocations'][$player->getVocation()])) $vocation = $config['vocations'][$player->getVocation()]; - + imagettftext($image , $fontsize, 0, 20, 52, $color, $font, 'Level:'); imagettftext($image , $fontsize, 0, 70, 52, $color, $font, $player->getLevel() . ' ' . $vocation); @@ -26,4 +26,3 @@ imagettftext($image , $fontsize, 0, 100, 95, $color, $font, (($player->getLastLogin() > 0) ? date("j F Y, g:i a", $player->getLastLogin()) : 'Never logged in.')); imagepng($image, SIGNATURES_CACHE . $player->getID() . '.png'); imagedestroy($image); -?> \ No newline at end of file diff --git a/tools/signature/mango.php b/tools/signature/mango.php index acdf37b3..f00f7f18 100644 --- a/tools/signature/mango.php +++ b/tools/signature/mango.php @@ -168,4 +168,3 @@ } $MadGD->save($player->getID()); -?> From cc7703766ef3c11dc635d931fd84a0a3c318397e Mon Sep 17 00:00:00 2001 From: slawkens Date: Mon, 19 Jun 2023 08:05:58 +0200 Subject: [PATCH 13/23] Patching some changes from master --- system/login.php | 2 +- system/pages/account/change_password.php | 4 +--- system/pages/online.php | 4 ++-- system/templates/characters.html.twig | 2 ++ 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/system/login.php b/system/login.php index 5d55cd18..e018c043 100644 --- a/system/login.php +++ b/system/login.php @@ -10,12 +10,12 @@ defined('MYAAC') or die('Direct access not allowed!'); $logged = false; $logged_flags = 0; +$account_logged = new OTS_Account(); // stay-logged with sessions $current_session = getSession('account'); if($current_session !== false) { - $account_logged = new OTS_Account(); $account_logged->load($current_session); if($account_logged->isLoaded() && $account_logged->getPassword() == getSession('password') //&& (!isset($_SESSION['admin']) || admin()) diff --git a/system/pages/account/change_password.php b/system/pages/account/change_password.php index 01190497..deef3602 100644 --- a/system/pages/account/change_password.php +++ b/system/pages/account/change_password.php @@ -89,6 +89,4 @@ else )); setSession('password', $new_password); } -} - -?> +} \ No newline at end of file diff --git a/system/pages/online.php b/system/pages/online.php index ca629a3b..2d96a405 100644 --- a/system/pages/online.php +++ b/system/pages/online.php @@ -54,9 +54,9 @@ if($config['online_vocations']) { } if($db->hasTable('players_online')) // tfs 1.0 - $playersOnline = $db->query('SELECT `accounts`.`country`, `players`.`name`, `level`, `vocation`' . $outfit . ', `' . $skull_time . '` as `skulltime`, `' . $skull_type . '` as `skull` FROM `accounts`, `players`, `players_online` WHERE `players`.`id` = `players_online`.`player_id` AND `accounts`.`id` = `players`.`account_id` ORDER BY ' . $order); + $playersOnline = $db->query('SELECT `accounts`.`country`, `players`.`name`, `players`.`level`, `players`.`vocation`' . $outfit . ', `' . $skull_time . '` as `skulltime`, `' . $skull_type . '` as `skull` FROM `accounts`, `players`, `players_online` WHERE `players`.`id` = `players_online`.`player_id` AND `accounts`.`id` = `players`.`account_id` ORDER BY ' . $order); else - $playersOnline = $db->query('SELECT `accounts`.`country`, `players`.`name`, `level`, `vocation`' . $outfit . ', ' . $promotion . ' `' . $skull_time . '` as `skulltime`, `' . $skull_type . '` as `skull` FROM `accounts`, `players` WHERE `players`.`online` > 0 AND `accounts`.`id` = `players`.`account_id` ORDER BY ' . $order); + $playersOnline = $db->query('SELECT `accounts`.`country`, `players`.`name`, `players`.`level`, `players`.`vocation`' . $outfit . ', ' . $promotion . ' `' . $skull_time . '` as `skulltime`, `' . $skull_type . '` as `skull` FROM `accounts`, `players` WHERE `players`.`online` > 0 AND `accounts`.`id` = `players`.`account_id` ORDER BY ' . $order); $players_data = array(); $players = 0; diff --git a/system/templates/characters.html.twig b/system/templates/characters.html.twig index 3bbb0159..94f64803 100644 --- a/system/templates/characters.html.twig +++ b/system/templates/characters.html.twig @@ -237,11 +237,13 @@ {% endif %} + {{ hook(constant('HOOK_CHARACTERS_AFTER_EQUIPMENT')) }} {{ hook(constant('HOOK_CHARACTERS_BEFORE_DEATHS')) }} + {% if deaths|length > 0 %}
From 30d62bda3beff0e46f2a1afefdec62284b805de5 Mon Sep 17 00:00:00 2001 From: slawkens Date: Thu, 22 Jun 2023 22:15:18 +0200 Subject: [PATCH 14/23] Better Gesior support --- index.php | 1 + system/compat/pages.php | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/index.php b/index.php index e15abb21..a093b9bd 100644 --- a/index.php +++ b/index.php @@ -166,6 +166,7 @@ if($config['backward_support']) { $config['site'] = &$config; $config['server'] = &$config['lua']; $config['site']['shop_system'] = $config['gifts_system']; + $config['site']['gallery_page'] = true; if(!isset($config['vdarkborder'])) $config['vdarkborder'] = '#505050'; diff --git a/system/compat/pages.php b/system/compat/pages.php index 3f5d0a0a..5857322d 100644 --- a/system/compat/pages.php +++ b/system/compat/pages.php @@ -10,6 +10,10 @@ defined('MYAAC') or die('Direct access not allowed!'); switch($page) { + case 'adminpanel': + header('Location: ' . ADMIN_URL); + die; + case 'createaccount': $page = 'account/create'; break; @@ -30,6 +34,7 @@ switch($page) $page = 'news'; break; + case 'archive': case 'newsarchive': $page = 'news/archive'; break; From a7dc71993412bb5687d2524c2db412c9c514b4c2 Mon Sep 17 00:00:00 2001 From: slawkens Date: Sun, 25 Jun 2023 08:38:45 +0200 Subject: [PATCH 15/23] small adjustments --- nginx-sample.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nginx-sample.conf b/nginx-sample.conf index 2ae14251..a54f87e5 100644 --- a/nginx-sample.conf +++ b/nginx-sample.conf @@ -32,6 +32,6 @@ server { include snippets/fastcgi-php.conf; fastcgi_read_timeout 240; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; - # for ubuntu 22.04+ it will be php8.1-fpm.-sock + # for ubuntu 22.04+ it will be php8.1-fpm.sock } } From a81089061443917d7a96037d4c79c08b2f0471a9 Mon Sep 17 00:00:00 2001 From: slawkens Date: Tue, 27 Jun 2023 14:50:44 +0200 Subject: [PATCH 16/23] code formatting --- system/templates/account.management.html.twig | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/system/templates/account.management.html.twig b/system/templates/account.management.html.twig index 80d60006..1f8ea2e6 100644 --- a/system/templates/account.management.html.twig +++ b/system/templates/account.management.html.twig @@ -170,7 +170,16 @@ {% for player in players %} {% set i = i + 1 %} - {{ player.getName() }}{{ player.getLevel() }}{{ player.getVocationName() }}{{ config.towns[player.getTownId()] }}{% if player.getLastLogin() > 0 %}{{ player.getLastLogin|date('d F Y (H:i)') }}{% else %}Never.{% endif %}{% if player.isOnline() %}ONLINE{% else %}Offline{% endif %}{% if player.isHidden() %}Hidden{% else %}Visible{% endif %}[Edit] + + {{ player.getName() }} + + {{ player.getLevel() }} + {{ player.getVocationName() }} + {{ config.towns[player.getTownId()] }} + {% if player.getLastLogin() > 0 %}{{ player.getLastLogin|date('d F Y (H:i)') }}{% else %}Never.{% endif %} + {% if player.isOnline() %}ONLINE{% else %}Offline{% endif %} + {% if player.isHidden() %}Hidden{% else %}Visible{% endif %} + [Edit] {% endfor %} From aab62fb724f3ffac6c4e6f39fcc1b9e7ac7b9ad2 Mon Sep 17 00:00:00 2001 From: slawkens Date: Tue, 27 Jun 2023 15:02:28 +0200 Subject: [PATCH 17/23] Important fix: Not allow create char if limit is exceeded (by @anyeor ) Could have been used to spam database, now it doesn't ignore deleted characters He is not my brother :P Just same last name --- system/libs/CreateCharacter.php | 2 +- system/templates/account.create_character.html.twig | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/system/libs/CreateCharacter.php b/system/libs/CreateCharacter.php index c81893e1..60909c0f 100644 --- a/system/libs/CreateCharacter.php +++ b/system/libs/CreateCharacter.php @@ -138,7 +138,7 @@ class CreateCharacter if(empty($errors)) { - $number_of_players_on_account = $account->getPlayersList(false)->count(); + $number_of_players_on_account = $account->getPlayersList(true)->count(); if($number_of_players_on_account >= config('characters_per_account')) $errors[] = 'You have too many characters on your account ('.$number_of_players_on_account.'/'.config('characters_per_account').')!'; } diff --git a/system/templates/account.create_character.html.twig b/system/templates/account.create_character.html.twig index 8d823b2f..045c749c 100644 --- a/system/templates/account.create_character.html.twig +++ b/system/templates/account.create_character.html.twig @@ -2,7 +2,7 @@ Please choose a name{% if config.character_samples|length > 1 %}, vocation{% end {% if config.character_towns|length > 1 %}, town{% endif %} and sex for your character.
In any case the name must not violate the naming conventions stated in the {{ config.lua.serverName }} Rules, or your character might get deleted or name locked. -{% if account_logged.getPlayersList(false)|length >= config.characters_per_account %} +{% if account_logged.getPlayersList(true)|length >= config.characters_per_account %} You have maximum number of characters per account on your account. Delete one before you make new. {% endif %}

From 24ff5684cd85238ca18b4b3ee1924b676d833798 Mon Sep 17 00:00:00 2001 From: slawkens Date: Tue, 27 Jun 2023 17:41:04 +0200 Subject: [PATCH 18/23] More changes to deleted characters (Account, guilds) Account: Cannot change name, comment, gender + Cannot be deleted if owns a guild Guilds: Cannot create, cannot be invited, cannot accept invite, cannot be passed leadership to --- system/libs/pot/OTS_Account.php | 2 +- system/pages/account/change_comment.php | 23 ++++++++++++------- system/pages/account/change_name.php | 6 ++++- system/pages/account/change_sex.php | 8 +++++-- system/pages/account/delete_character.php | 8 +++++++ system/pages/guilds/accept_invite.php | 4 +++- system/pages/guilds/create.php | 8 ++++--- system/pages/guilds/invite.php | 2 ++ system/pages/guilds/pass_leadership.php | 2 ++ .../templates/account.change_name.html.twig | 4 ++-- system/templates/account.management.html.twig | 2 +- .../tibiacom/account.management.html.twig | 2 +- 12 files changed, 51 insertions(+), 20 deletions(-) diff --git a/system/libs/pot/OTS_Account.php b/system/libs/pot/OTS_Account.php index 9a6b39a7..366dccdf 100644 --- a/system/libs/pot/OTS_Account.php +++ b/system/libs/pot/OTS_Account.php @@ -994,7 +994,7 @@ class OTS_Account extends OTS_Row_DAO implements IteratorAggregate, Countable $access = 0; // finds ranks of all characters - foreach($this->getPlayersList() as $player) + foreach($this->getPlayersList(false) as $player) { $rank = $player->getRank(); diff --git a/system/pages/account/change_comment.php b/system/pages/account/change_comment.php index 0f0bc2f1..903ca49d 100644 --- a/system/pages/account/change_comment.php +++ b/system/pages/account/change_comment.php @@ -28,15 +28,22 @@ if($player_name != null) { if ($player->isLoaded()) { $player_account = $player->getAccount(); if ($account_logged->getId() == $player_account->getId()) { + if ($player->isDeleted()) { + $errors[] = 'This character is deleted.'; + $player = null; + } + if (isset($_POST['changecommentsave']) && $_POST['changecommentsave'] == 1) { - $player->setCustomField("hidden", $new_hideacc); - $player->setCustomField("comment", $new_comment); - $account_logged->logAction('Changed comment for character ' . $player->getName() . '.'); - $twig->display('success.html.twig', array( - 'title' => 'Character Information Changed', - 'description' => 'The character information has been changed.' - )); - $show_form = false; + if(empty($errors)) { + $player->setCustomField("hidden", $new_hideacc); + $player->setCustomField("comment", $new_comment); + $account_logged->logAction('Changed comment for character ' . $player->getName() . '.'); + $twig->display('success.html.twig', array( + 'title' => 'Character Information Changed', + 'description' => 'The character information has been changed.' + )); + $show_form = false; + } } } else { $errors[] = 'Error. Character ' . $player_name . ' is not on your account.'; diff --git a/system/pages/account/change_name.php b/system/pages/account/change_name.php index 448e730c..48b6bb4d 100644 --- a/system/pages/account/change_name.php +++ b/system/pages/account/change_name.php @@ -50,6 +50,10 @@ else if($player->isLoaded()) { $player_account = $player->getAccount(); if($account_logged->getId() == $player_account->getId()) { + if ($player->isDeleted()) { + $errors[] = 'This character is deleted.'; + } + if($player->isOnline()) { $errors[] = 'This character is online.'; } @@ -91,7 +95,7 @@ else } } else { - $errors[] = 'Character ' . $player_name . ' is not on your account.'; + $errors[] = 'Character is not on your account.'; } } else { diff --git a/system/pages/account/change_sex.php b/system/pages/account/change_sex.php index 868cf24f..2f944564 100644 --- a/system/pages/account/change_sex.php +++ b/system/pages/account/change_sex.php @@ -41,6 +41,10 @@ else $player_account = $player->getAccount(); if($account_logged->getId() == $player_account->getId()) { + if ($player->isDeleted()) { + $errors[] = 'This character is deleted.'; + } + if($player->isOnline()) { $errors[] = 'This character is online.'; } @@ -71,7 +75,7 @@ else } } else { - $errors[] = 'Character '.$player_name.' is not on your account.'; + $errors[] = 'Character is not on your account.'; } } else { @@ -85,7 +89,7 @@ else $twig->display('error_box.html.twig', array('errors' => $errors)); } $twig->display('account.change_sex.html.twig', array( - 'players' => $account_logged->getPlayersList(), + 'players' => $account_logged->getPlayersList(false), 'player_sex' => isset($player) ? $player->getSex() : -1, 'points' => $points )); diff --git a/system/pages/account/delete_character.php b/system/pages/account/delete_character.php index f5894c77..4e74e711 100644 --- a/system/pages/account/delete_character.php +++ b/system/pages/account/delete_character.php @@ -61,6 +61,14 @@ if(isset($_POST['deletecharactersave']) && $_POST['deletecharactersave'] == 1) { } } + $ownerid = 'ownerid'; + if($db->hasColumn('guilds', 'owner_id')) + $ownerid = 'owner_id'; + $guild = $db->query('SELECT `name` FROM `guilds` WHERE `' . $ownerid . '` = '.$player->getId()); + if($guild->rowCount() > 0) { + $errors[] = 'You cannot delete a character when they own a guild.'; + } + if(empty($errors)) { //dont show table "delete character" again $show_form = false; diff --git a/system/pages/guilds/accept_invite.php b/system/pages/guilds/accept_invite.php index 7b013a2c..bc782480 100644 --- a/system/pages/guilds/accept_invite.php +++ b/system/pages/guilds/accept_invite.php @@ -45,6 +45,8 @@ if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') { $errors[] = 'Character with name ' . $name. ' is not in your account.'; }else if ($player->getRank()->isLoaded()){ $errors[] = 'Character with name '.$name.' is already in guild. You must leave guild before you join other guild.'; + } else if ($player->isDeleted()) { + $errors[] = "Character with name $name has been deleted."; } } } @@ -72,7 +74,7 @@ else { if(empty($errors)) { $acc_invited = false; - $account_players = $account_logged->getPlayers(); + $account_players = $account_logged->getPlayersList(false); include(SYSTEM . 'libs/pot/InvitesDriver.php'); new InvitesDriver($guild); $invited_list = $guild->listInvites(); diff --git a/system/pages/guilds/create.php b/system/pages/guilds/create.php index 9814ade0..d7319fce 100644 --- a/system/pages/guilds/create.php +++ b/system/pages/guilds/create.php @@ -22,7 +22,7 @@ if(!$logged) { $array_of_player_nig = array(); if(empty($guild_errors)) { - $account_players = $account_logged->getPlayers(); + $account_players = $account_logged->getPlayersList(false); foreach($account_players as $player) { $player_rank = $player->getRank(); @@ -73,6 +73,10 @@ if($todo == 'save') } } + if(empty($guild_errors) && $player->isDeleted()) { + $guild_errors[] = "Character $name has been deleted."; + } + if(empty($guild_errors)) { $bad_char = true; @@ -132,5 +136,3 @@ else { 'players' => $array_of_player_nig )); } - -?> diff --git a/system/pages/guilds/invite.php b/system/pages/guilds/invite.php index 09957d2d..8fae8e27 100644 --- a/system/pages/guilds/invite.php +++ b/system/pages/guilds/invite.php @@ -72,6 +72,8 @@ if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') { $player->find($name); if(!$player->isLoaded()) { $errors[] = 'Player with name ' . $name . ' doesn\'t exist.'; + } else if ($player->isDeleted()) { + $errors[] = "Character with name $name has been deleted."; } else { diff --git a/system/pages/guilds/pass_leadership.php b/system/pages/guilds/pass_leadership.php index d5f0ed20..065e4c3b 100644 --- a/system/pages/guilds/pass_leadership.php +++ b/system/pages/guilds/pass_leadership.php @@ -36,6 +36,8 @@ if(empty($guild_errors)) { $to_player->find($pass_to); if(!$to_player->isLoaded()) { $guild_errors2[] = 'Player with name '.$pass_to.' doesn\'t exist.'; + } else if ($to_player->isDeleted()) { + $guild_errors2[] = "Character with name $pass_to has been deleted."; } if(empty($guild_errors2)) { diff --git a/system/templates/account.change_name.html.twig b/system/templates/account.change_name.html.twig index 255689e3..bd1fa8f0 100644 --- a/system/templates/account.change_name.html.twig +++ b/system/templates/account.change_name.html.twig @@ -25,7 +25,7 @@ To change a name of character select player and choose a new name.
Character: @@ -74,4 +74,4 @@ To change a name of character select player and choose a new name.
- \ No newline at end of file + diff --git a/system/templates/account.management.html.twig b/system/templates/account.management.html.twig index 1f8ea2e6..510c90a1 100644 --- a/system/templates/account.management.html.twig +++ b/system/templates/account.management.html.twig @@ -179,7 +179,7 @@ {% if player.getLastLogin() > 0 %}{{ player.getLastLogin|date('d F Y (H:i)') }}{% else %}Never.{% endif %} {% if player.isOnline() %}ONLINE{% else %}Offline{% endif %} {% if player.isHidden() %}Hidden{% else %}Visible{% endif %} - [Edit] + {% if not player.isDeleted() %}[Edit]{% endif %} {% endfor %} diff --git a/templates/tibiacom/account.management.html.twig b/templates/tibiacom/account.management.html.twig index 4b39abd8..7c387c36 100644 --- a/templates/tibiacom/account.management.html.twig +++ b/templates/tibiacom/account.management.html.twig @@ -442,7 +442,7 @@ {% else %} Offline {% endif %} - [Edit] + {% if not player.isDeleted() %}[Edit]{% endif %} {% endfor %} From 36fbae850d3384bf536182aee5c1ef26034e6c10 Mon Sep 17 00:00:00 2001 From: slawkens Date: Tue, 27 Jun 2023 17:44:19 +0200 Subject: [PATCH 19/23] Revert " is not working properly, use full URL instead" This reverts commit fa015b8d39d926aa0bc3ea2f59577afa22174c51. --- system/templates/exception.html.twig | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/system/templates/exception.html.twig b/system/templates/exception.html.twig index f258830f..cd478fd0 100644 --- a/system/templates/exception.html.twig +++ b/system/templates/exception.html.twig @@ -8,8 +8,9 @@ - - + + + From 3ff7b212874a3c2d0084029ea3996b5be053202f Mon Sep 17 00:00:00 2001 From: slawkens Date: Tue, 27 Jun 2023 18:15:54 +0200 Subject: [PATCH 20/23] Move above, so it works, thanks @Leesneaks --- system/templates/exception.html.twig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/system/templates/exception.html.twig b/system/templates/exception.html.twig index cd478fd0..d6108aa6 100644 --- a/system/templates/exception.html.twig +++ b/system/templates/exception.html.twig @@ -8,9 +8,9 @@ + -