From b398fea7e771fd1a6d63eb8e4b2caefa3d2387bc Mon Sep 17 00:00:00 2001 From: drigato Date: Tue, 10 Mar 2015 12:29:30 -0400 Subject: [PATCH] SAAS-628: Create script to update disk_usage for all Airtime pro stations --- .../controllers/UpgradeController.php | 1 + airtime_mvc/application/upgrade/Upgrades.php | 41 +++++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/airtime_mvc/application/controllers/UpgradeController.php b/airtime_mvc/application/controllers/UpgradeController.php index c9748467b..9af3dc1e9 100644 --- a/airtime_mvc/application/controllers/UpgradeController.php +++ b/airtime_mvc/application/controllers/UpgradeController.php @@ -19,6 +19,7 @@ class UpgradeController extends Zend_Controller_Action array_push($upgraders, new AirtimeUpgrader255()); array_push($upgraders, new AirtimeUpgrader259()); array_push($upgraders, new AirtimeUpgrader2510()); + array_push($upgraders, new AirtimeUpgrader2511()); $didWePerformAnUpgrade = false; try diff --git a/airtime_mvc/application/upgrade/Upgrades.php b/airtime_mvc/application/upgrade/Upgrades.php index 74b9a6d4d..31c602437 100644 --- a/airtime_mvc/application/upgrade/Upgrades.php +++ b/airtime_mvc/application/upgrade/Upgrades.php @@ -341,3 +341,44 @@ class AirtimeUpgrader2510 extends AirtimeUpgrader } } } + +class AirtimeUpgrader2511 extends AirtimeUpgrader +{ + protected function getSupportedVersions() { + return array ( + '2.5.10' + ); + } + + public function getNewVersion() { + return '2.5.11'; + } + + public function upgrade($dir = __DIR__) { + Cache::clear(); + assert($this->checkIfUpgradeSupported()); + + $newVersion = $this->getNewVersion(); + + try { + $this->toggleMaintenanceScreen(true); + Cache::clear(); + + // Begin upgrade + $queryResult = CcFilesQuery::create() + ->select(array('disk_usage')) + ->withColumn('SUM(CcFiles.filesize)', 'disk_usage') + ->find(); + $disk_usage = $queryResult[0]; + Application_Model_Preference::setDiskUsage($disk_usage); + + Application_Model_Preference::SetAirtimeVersion($newVersion); + Cache::clear(); + + $this->toggleMaintenanceScreen(false); + } catch(Exception $e) { + $this->toggleMaintenanceScreen(false); + throw $e; + } + } +}