diff options
author | Thomas Lange <code@nerdmind.de> | 2017-08-10 10:37:51 +0200 |
---|---|---|
committer | Thomas Lange <code@nerdmind.de> | 2017-08-10 10:37:51 +0200 |
commit | 6c550895ef0f27bf84b8a5d7917eeee3e3122f67 (patch) | |
tree | 160db9e67777a609c5174449efbe1c39015b4dcf /core | |
parent | 5e8032c74cfc65e1028ee00a5a9fc343f8f63bf1 (diff) | |
download | blog-6c550895ef0f27bf84b8a5d7917eeee3e3122f67.tar.gz blog-6c550895ef0f27bf84b8a5d7917eeee3e3122f67.tar.xz blog-6c550895ef0f27bf84b8a5d7917eeee3e3122f67.zip |
The SQL queries for the HTTP ETag header generation have been combined into one single query. In addition, some meaningless code was removed.
Diffstat (limited to 'core')
-rw-r--r-- | core/application.php | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/core/application.php b/core/application.php index 0a53350..72f854a 100644 --- a/core/application.php +++ b/core/application.php @@ -89,25 +89,22 @@ catch(PDOException $Exception) { # Check if "304 Not Modified" and ETag header should be send #=============================================================================== if(Application::get('CORE.SEND_304') === TRUE AND !defined('ADMINISTRATION')) { + #=========================================================================== # Select edit time from last edited items (page, post, user) #=========================================================================== - $execute = 'SELECT time_update FROM %s ORDER BY time_update DESC LIMIT 1'; + $execute = '(SELECT time_update FROM %s ORDER BY time_update DESC LIMIT 1) AS %s'; + + $pageSQL = sprintf($execute, Page\Attribute::TABLE, Page\Attribute::TABLE); + $postSQL = sprintf($execute, Post\Attribute::TABLE, Post\Attribute::TABLE); + $userSQL = sprintf($execute, User\Attribute::TABLE, User\Attribute::TABLE); - $PageStatement = $Database->query(sprintf($execute, Page\Attribute::TABLE)); - $PostStatement = $Database->query(sprintf($execute, Post\Attribute::TABLE)); - $UserStatement = $Database->query(sprintf($execute, User\Attribute::TABLE)); + $Statement = $Database->query("SELECT {$pageSQL}, {$postSQL}, {$userSQL}"); #=========================================================================== # Define HTTP ETag header identifier #=========================================================================== - $HTTP_ETAG_IDENTIFIER = sha1(implode(NULL, [ - serialize(Application::getConfiguration()), - $PageStatement->fetchColumn(), - $PostStatement->fetchColumn(), - $UserStatement->fetchColumn(), - 'CUSTOM-STRING-0123456789' - ])); + $HTTP_ETAG_IDENTIFIER = md5(implode($Statement->fetch(PDO::FETCH_ASSOC))); #=========================================================================== # Send ETag header within the HTTP response |