From 57a7218a793d30d82dbbb1143938e3f81de27217 Mon Sep 17 00:00:00 2001 From: drigato <denise.rigato@sourcefabric.org> Date: Fri, 16 Jan 2015 11:09:13 -0500 Subject: [PATCH] SAAS-540: Change the Provisioning Controller's terminate endpoint to reflect new S3 file prefix --- airtime_mvc/application/cloud_storage/Amazon_S3.php | 10 +++++++++- .../application/controllers/ProvisioningController.php | 8 -------- .../application/controllers/plugins/Acl_plugin.php | 2 +- airtime_mvc/application/models/RabbitMq.php | 6 ++---- 4 files changed, 12 insertions(+), 14 deletions(-) diff --git a/airtime_mvc/application/cloud_storage/Amazon_S3.php b/airtime_mvc/application/cloud_storage/Amazon_S3.php index de236faf5..994dd249b 100644 --- a/airtime_mvc/application/cloud_storage/Amazon_S3.php +++ b/airtime_mvc/application/cloud_storage/Amazon_S3.php @@ -1,6 +1,7 @@ <?php require_once 'StorageBackend.php'; +require_once 'BillingController.php'; use Aws\S3\S3Client; @@ -67,7 +68,14 @@ class Amazon_S3 extends StorageBackend { $this->s3Client->deleteMatchingObjects( $bucket = $this->getBucket(), - $prefix = Application_Model_Preference::GetStationName()); + $prefix = self::getAmazonS3FilePrefix()); } + + public static function getAmazonS3FilePrefix() + { + $clientCurrentAirtimeProduct = BillingController::getClientCurrentAirtimeProduct(); + $hostingId = $clientCurrentAirtimeProduct["id"]; + return substr($hostingId, -2)."/".$hostingId; + } } diff --git a/airtime_mvc/application/controllers/ProvisioningController.php b/airtime_mvc/application/controllers/ProvisioningController.php index 3039df7a4..e847ff661 100644 --- a/airtime_mvc/application/controllers/ProvisioningController.php +++ b/airtime_mvc/application/controllers/ProvisioningController.php @@ -28,14 +28,6 @@ class ProvisioningController extends Zend_Controller_Action $proxyStorageBackend->deleteAllCloudFileObjects(); } - //check at to make sure cloud_file table is empty - if (CloudFileQuery::create()->count() > 0) { - $this->getResponse() - ->setHttpResponseCode(400) - ->appendBody("ERROR: Not all cloud files were deleted."); - return; - } - $this->getResponse() ->setHttpResponseCode(200) ->appendBody("OK"); diff --git a/airtime_mvc/application/controllers/plugins/Acl_plugin.php b/airtime_mvc/application/controllers/plugins/Acl_plugin.php index 533429e47..564c0af82 100644 --- a/airtime_mvc/application/controllers/plugins/Acl_plugin.php +++ b/airtime_mvc/application/controllers/plugins/Acl_plugin.php @@ -118,7 +118,7 @@ class Zend_Controller_Plugin_Acl extends Zend_Controller_Plugin_Abstract return; } - if (in_array($controller, array("api", "auth", "locale", "upgrade", 'whmcs-login'))) { + if (in_array($controller, array("api", "auth", "locale", "upgrade", 'whmcs-login', "provisioning"))) { $this->setRoleName("G"); } elseif (!Zend_Auth::getInstance()->hasIdentity()) { diff --git a/airtime_mvc/application/models/RabbitMq.php b/airtime_mvc/application/models/RabbitMq.php index ae3fe3fe3..b461d7099 100644 --- a/airtime_mvc/application/models/RabbitMq.php +++ b/airtime_mvc/application/models/RabbitMq.php @@ -1,6 +1,6 @@ <?php require_once 'php-amqplib/amqp.inc'; -require_once 'BillingController.php'; +require_once 'Amazon_S3.php'; class Application_Model_RabbitMq { @@ -118,9 +118,7 @@ class Application_Model_RabbitMq // customer's file/s; File restoration is done via the S3 Browser // client. The client will hang if there are too many files under the // same folder. - $clientCurrentAirtimeProduct = BillingController::getClientCurrentAirtimeProduct(); - $hostingId = $clientCurrentAirtimeProduct["id"]; - $data['file_prefix'] = substr($hostingId, -2)."/".$hostingId; + $data['file_prefix'] = Amazon_S3::getAmazonS3FilePrefix(); $jsonData = json_encode($data); //self::sendMessage($exchange, 'topic', false, $jsonData, 'airtime-uploads');