diff options
author | Aleksey Lim <alsroot@sugarlabs.org> | 2013-07-04 04:34:44 (GMT) |
---|---|---|
committer | Aleksey Lim <alsroot@sugarlabs.org> | 2013-07-04 04:34:44 (GMT) |
commit | fe1adeb6cfa6b7f8ef5cbd94f67bf69db0d4596e (patch) | |
tree | b61823db511e54cc024ae1ea79aad60dba4ebbaa | |
parent | ecf019a807ef938123ff8b12ab47833a9b03f253 (diff) | |
parent | aa9f75a564a316d51e92f64207ce51e26a0c6c9c (diff) |
Merge branch 'production' of git.sugarlabs.org:slo-activities/mainline into production
-rw-r--r-- | site/app/models/file.php | 6 | ||||
-rw-r--r-- | site/app/models/version.php | 8 |
2 files changed, 10 insertions, 4 deletions
diff --git a/site/app/models/file.php b/site/app/models/file.php index ba79e42..3a9b340 100644 --- a/site/app/models/file.php +++ b/site/app/models/file.php @@ -36,6 +36,8 @@ * * ***** END LICENSE BLOCK ***** */ +vendor('sphinx/addonsSearch'); + class File extends AppModel { var $name = 'File'; @@ -85,7 +87,7 @@ class File extends AppModel function getLatestFileByAddonId($addon_id, $platform_id = null) { // Platform WHERE if necessary $platform = !empty($platform_id) ? " AND (File.platform_id = ".PLATFORM_ALL." OR File.platform_id = {$platform_id})" : ''; - $sp = parse_sp(); + $app_ver = AddonsSearch::convert_version(parse_sp()); $sql = " SELECT @@ -104,7 +106,7 @@ class File extends AppModel File.status = ".STATUS_PUBLIC." {$platform} ORDER BY - Version.version + IF({$sp} >= CAST(B.version AS DECIMAL(3,3)) AND {$sp} <= CAST(C.version AS DECIMAL(3,3)), 1000000, 0) DESC + Version.version + IF({$app_ver} >= B.version_int AND {$app_ver} <= C.version_int, 1000000, 0) DESC LIMIT 1 "; diff --git a/site/app/models/version.php b/site/app/models/version.php index 9f8044c..d989931 100644 --- a/site/app/models/version.php +++ b/site/app/models/version.php @@ -39,6 +39,8 @@ * * ***** END LICENSE BLOCK ***** */ +vendor('sphinx/addonsSearch'); + class Version extends AppModel { var $name = 'Version'; @@ -139,6 +141,7 @@ class Version extends AppModel if (!isset($app_ver) || $app_ver == 'any') $app_ver = parse_sp(); + $app_ver = AddonsSearch::convert_version($app_ver); $sql = " SELECT @@ -156,7 +159,7 @@ class Version extends AppModel WHERE Version.addon_id = {$id} ORDER BY - Version.version + IF({$app_ver} >= CAST(B.version AS DECIMAL(3,3)) AND {$app_ver} <= CAST(C.version AS DECIMAL(3,3)), 1000000, 0) DESC + Version.version + IF({$app_ver} >= B.version_int AND {$app_ver} <= C.version_int, 1000000, 0) DESC LIMIT 1 "; @@ -175,6 +178,7 @@ class Version extends AppModel if (!isset($app_ver) || $app_ver == 'any') $app_ver = parse_sp(); + $app_ver = AddonsSearch::convert_version($app_ver); if (!isset($version) || $version == '') $version = '0'; @@ -194,7 +198,7 @@ class Version extends AppModel WHERE Version.addon_id = {$id} AND ({$version} = 0 OR Version.version = {$version}) ORDER BY - Version.version + IF({$app_ver} >= CAST(B.version AS DECIMAL(3,3)) AND {$app_ver} <= CAST(C.version AS DECIMAL(3,3)), 1000000, 0) DESC + Version.version + IF({$app_ver} >= B.version_id AND {$app_ver} <= C.version_id, 1000000, 0) DESC LIMIT 1 "; |