[Scummvm-git-logs] scummvm-web master -> b20d4c5fb12a277619f90600104eb00de2c594e3

Mataniko mataniko at gmail.com
Sat Jan 9 18:15:58 UTC 2021


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm-web' repo located at https://github.com/scummvm/scummvm-web .

Summary:
b20d4c5fb1 WEB: Fix compat version queries


Commit: b20d4c5fb12a277619f90600104eb00de2c594e3
    https://github.com/scummvm/scummvm-web/commit/b20d4c5fb12a277619f90600104eb00de2c594e3
Author: Mataniko (mataniko at gmail.com)
Date: 2021-01-09T13:15:55-05:00

Commit Message:
WEB: Fix compat version queries

Changed paths:
    include/Models/CompatibilityModel.php
    include/Pages/CompatibilityPage.php


diff --git a/include/Models/CompatibilityModel.php b/include/Models/CompatibilityModel.php
index 5badffe1..2d283700 100644
--- a/include/Models/CompatibilityModel.php
+++ b/include/Models/CompatibilityModel.php
@@ -2,7 +2,8 @@
 namespace ScummVM\Models;
 
 use Propel\Runtime\ActiveQuery\Criteria;
-use ScummVM\OrmObjects\Base\CompatibilityQuery;
+use ScummVM\OrmObjects\CompatibilityQuery;
+use ScummVM\OrmObjects\VersionQuery;
 
 /**
  * The CompatibilityModel class will generate CompatGame objects.
@@ -23,6 +24,8 @@ class CompatibilityModel extends BasicModel
     {
         $data = $this->getFromCache($version);
         if (\is_null($data)) {
+            $releaseDate = VersionQuery::create()
+                ->findPk($version)->getReleaseDate();
             if ($version === 'DEV') {
                 $version = "99.99.99";
             }
@@ -38,9 +41,7 @@ class CompatibilityModel extends BasicModel
                     ->endUse()
                 ->endUse()
                 ->useVersionQuery()
-                    ->filterByMajor($version[0], Criteria::LESS_EQUAL)
-                    ->filterByMinor($version[1], Criteria::LESS_EQUAL)
-                    ->filterByPatch($version[2], Criteria::LESS_EQUAL)
+                    ->filterByReleaseDate($releaseDate, Criteria::LESS_EQUAL)
                 ->endUse()
                 ->find();
             $this->saveToCache($data, $version);
@@ -54,6 +55,8 @@ class CompatibilityModel extends BasicModel
         if (!is_string($version) || !is_string($target)) {
             throw new \ErrorException(self::NO_VERSION_TARGET);
         }
+        $releaseDate = VersionQuery::create()
+                ->findPk($version)->getReleaseDate();
         if ($version === 'DEV') {
             $version = "99.99.99";
         }
@@ -63,9 +66,7 @@ class CompatibilityModel extends BasicModel
                 ->withColumn("max(release_date)")
                 ->filterById($target)
                 ->useVersionQuery()
-                    ->filterByMajor($version[0], Criteria::LESS_EQUAL)
-                    ->filterByMinor($version[1], Criteria::LESS_EQUAL)
-                    ->filterByPatch($version[2], Criteria::LESS_EQUAL)
+                    ->filterByReleaseDate($releaseDate, Criteria::LESS_EQUAL)
                 ->endUse()
             ->findOne();
 
diff --git a/include/Pages/CompatibilityPage.php b/include/Pages/CompatibilityPage.php
index 69822486..53d7b503 100644
--- a/include/Pages/CompatibilityPage.php
+++ b/include/Pages/CompatibilityPage.php
@@ -63,8 +63,8 @@ class CompatibilityPage extends Controller
             ->find()->toArray();
 
         /* Default to DEV */
-        if (!in_array($version, $versions) || $version === 'DEV') {
-            $version = '99.99.99';
+        if (!in_array($version, $versions)) {
+            $version = 'DEV';
         }
 
         if (!empty($target)) {
@@ -107,7 +107,6 @@ class CompatibilityPage extends Controller
         $last_updated = $this->compatibilityModel->getLastUpdated();
         $this->template = 'pages/compatibility.tpl';
 
-        $version = $version == '99.99.99' ? 'DEV' : $version;
         return $this->renderPage(
             [
                 'title' => preg_replace('/{version}/', $version, $this->getConfigVars('compatibilityTitle')),




More information about the Scummvm-git-logs mailing list