From 4d9fb27554864ebecd3537335f1854864c20427e Mon Sep 17 00:00:00 2001 From: drigato Date: Wed, 29 Jul 2015 08:10:05 -0400 Subject: [PATCH] SAAS-973: Airtime Billing page - Add support for August promotion plans created promo-eligibility-check endpoint --- .../controllers/BillingController.php | 23 ++++++++++++++++++- .../views/scripts/billing/upgrade.phtml | 15 ++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/airtime_mvc/application/controllers/BillingController.php b/airtime_mvc/application/controllers/BillingController.php index fda5c881d..a6be46e82 100644 --- a/airtime_mvc/application/controllers/BillingController.php +++ b/airtime_mvc/application/controllers/BillingController.php @@ -10,6 +10,7 @@ class BillingController extends Zend_Controller_Action { //Two of the actions in this controller return JSON because they're used for AJAX: $ajaxContext = $this->_helper->getHelper('AjaxContext'); $ajaxContext->addActionContext('vat-validator', 'json') + ->addActionContext('promo-eligibility-check', 'json') ->addActionContext('is-country-in-eu', 'json') ->initContext(); } @@ -19,6 +20,22 @@ class BillingController extends Zend_Controller_Action { $this->_redirect('billing/upgrade'); } + public function promoEligibilityCheckAction() + { + $this->view->layout()->disableLayout(); + $this->_helper->viewRenderer->setNoRender(true); + + $request = $this->getRequest(); + if (!$request->isPost()) { + throw new Exception("Must POST data to promoEligibilityCheckAction."); + } + $data = $request->getPost(); + Logging::info($data); + + //Set the return JSON value + $this->_helper->json(array("result"=>"ok")); + } + public function upgradeAction() { $CC_CONFIG = Config::getConfig(); @@ -29,9 +46,13 @@ class BillingController extends Zend_Controller_Action { $request = $this->getRequest(); $form = new Application_Form_BillingUpgradeDowngrade(); if ($request->isPost()) { + $doUpgrade = false; $formData = $request->getPost(); - if ($form->isValid($formData)) { + Logging::info($formData); + if ($doUpgrade && $form->isValid($formData)) { + Logging::info("---upgrading----"); + $credentials = Billing::getAPICredentials(); //Check if VAT should be applied or not to this invoice. diff --git a/airtime_mvc/application/views/scripts/billing/upgrade.phtml b/airtime_mvc/application/views/scripts/billing/upgrade.phtml index dfdab0707..c74441179 100644 --- a/airtime_mvc/application/views/scripts/billing/upgrade.phtml +++ b/airtime_mvc/application/views/scripts/billing/upgrade.phtml @@ -120,6 +120,19 @@ function configureByCountry(countryCode) }); } +function promoEligibilityCheck() +{ + var newproductid = $("input[type='radio'][name='newproductid']:checked"); + var newproductbillingcycle = $("input[type='radio'][name='newproductbillingcycle']:checked"); + console.log(newproductid.val()); + console.log(newproductbillingcycle.val()); + $.post("/billing/promo-eligibility-check", {"newproductid": newproductid, + "newproductbillingcycle": newproductbillingcycle}) + .success(function(data) { + console.log(data); + }); +} + $(document).ready(function() { configureByCountry($("#country").val()); @@ -128,9 +141,11 @@ $(document).ready(function() { $("input[name='newproductid']").change(function() { validatePlan(); recalculateTotals(); + promoEligibilityCheck(); }); $("input[name='newproductbillingcycle']").change(function() { recalculateTotals(); + promoEligibilityCheck(); }); $("#country").change(function() {