diff --git a/airtime_mvc/application/controllers/NowplayingController.php b/airtime_mvc/application/controllers/NowplayingController.php index 175f795e2..06cdc0300 100644 --- a/airtime_mvc/application/controllers/NowplayingController.php +++ b/airtime_mvc/application/controllers/NowplayingController.php @@ -23,8 +23,6 @@ class NowplayingController extends Zend_Controller_Action $refer_sses = new Zend_Session_Namespace('referrer'); if($refer_sses->referrer == 'login' && Application_Model_Nowplaying::ShouldShowPopUp() && !Application_Model_Preference::GetSupportFeedback()){ - //unset session - Zend_Session::namespaceUnset('referrer'); $this->view->headScript()->appendFile($baseUrl.'/js/airtime/nowplaying/register.js','text/javascript'); } } diff --git a/airtime_mvc/application/controllers/PreferenceController.php b/airtime_mvc/application/controllers/PreferenceController.php index 215d7d6c2..ea2528c73 100644 --- a/airtime_mvc/application/controllers/PreferenceController.php +++ b/airtime_mvc/application/controllers/PreferenceController.php @@ -75,21 +75,49 @@ class PreferenceController extends Zend_Controller_Action $form = new Application_Form_RegisterAirtime(); - $logo = Application_Model_Preference::GetStationLogo(); - if($logo){ - $this->view->logoImg = $logo; - } - - $this->view->dialog = $form->render($this->view); + if ($request->isPost()) { + + if ($form->isValid($request->getPost())) { + + $values = $form->getValues(); + var_dump($values); + Application_Model_Preference::SetHeadTitle($values["stnName"], $this->view); + Application_Model_Preference::SetPhone($values["Phone"]); + Application_Model_Preference::SetEmail($values["Email"]); + Application_Model_Preference::SetStationWebSite($values["StationWebSite"]); + Application_Model_Preference::SetPublicise($values["Publicise"]); + + $imagePath = $form->Logo->getFileName(); + + Application_Model_Preference::SetStationCountry($values["Country"]); + Application_Model_Preference::SetStationCity($values["City"]); + Application_Model_Preference::SetStationDescription($values["Description"]); + Application_Model_Preference::SetStationLogo($imagePath); + } + Application_Model_Preference::SetSupportFeedback($values["SupportFeedback"]); + // unset session + Zend_Session::namespaceUnset('referrer'); + + $this->_redirect('Nowplaying'); + }else{ + $logo = Application_Model_Preference::GetStationLogo(); + if($logo){ + $this->view->logoImg = $logo; + } + + $this->view->dialog = $form->render($this->view); + } } public function remindmeAction(){ + // unset session + Zend_Session::namespaceUnset('referrer'); $now = date("Y-m-d H:i:s"); Application_Model_Preference::SetRemindMeDate($now); die(); } - public function registersubmitAction(){ + /*public function registersubmitAction(){ $request = $this->getRequest(); $baseUrl = $request->getBaseUrl(); @@ -97,9 +125,7 @@ class PreferenceController extends Zend_Controller_Action $this->view->statusMsg = ""; $form = new Application_Form_RegisterAirtime(); - var_dump($request->getPost()); - var_dump($form->isValid($request->getPost())); - var_dump($form->getMessages()); + if ($request->isPost()) { if ($form->isValid($request->getPost())) { @@ -119,10 +145,13 @@ class PreferenceController extends Zend_Controller_Action Application_Model_Preference::SetStationCity($values["City"]); Application_Model_Preference::SetStationDescription($values["Description"]); Application_Model_Preference::SetStationLogo($imagePath); + + // unset session + Zend_Session::namespaceUnset('referrer'); } } $this->_redirect('Nowplaying'); - } + }*/ } diff --git a/airtime_mvc/application/forms/RegisterAirtime.php b/airtime_mvc/application/forms/RegisterAirtime.php index 9a9162566..29f0e04fe 100644 --- a/airtime_mvc/application/forms/RegisterAirtime.php +++ b/airtime_mvc/application/forms/RegisterAirtime.php @@ -5,7 +5,7 @@ class Application_Form_RegisterAirtime extends Zend_Form public function init() { - $this->setAction('/Preference/registersubmit'); + $this->setAction('/Preference/register'); $this->setMethod('post'); $country_list = Application_Model_Preference::GetCountryList(); @@ -27,7 +27,7 @@ class Application_Form_RegisterAirtime extends Zend_Form $this->addElement('text', 'Phone', array( 'class' => 'input_text', 'label' => 'Phone:', - 'required' => false, + 'required' => true, 'filters' => array('StringTrim'), 'value' => Application_Model_Preference::GetPhone(), 'decorators' => array( @@ -39,7 +39,7 @@ class Application_Form_RegisterAirtime extends Zend_Form $this->addElement('text', 'Email', array( 'class' => 'input_text', 'label' => 'Email:', - 'required' => false, + 'required' => true, 'filters' => array('StringTrim'), 'value' => Application_Model_Preference::GetEmail(), 'decorators' => array( @@ -61,7 +61,7 @@ class Application_Form_RegisterAirtime extends Zend_Form // county list dropdown $this->addElement('select', 'Country', array( 'label' => 'Country:', - 'required' => false, + 'required' => true, 'value' => Application_Model_Preference::GetStationCountry(), 'multiOptions' => $country_list, 'decorators' => array( @@ -72,7 +72,7 @@ class Application_Form_RegisterAirtime extends Zend_Form // Station city $this->addElement('text', 'City', array( 'label' => 'City:', - 'required' => false, + 'required' => true, 'class' => 'input_text', 'value' => Application_Model_Preference::GetStationCity(), 'decorators' => array( @@ -84,7 +84,7 @@ class Application_Form_RegisterAirtime extends Zend_Form $description = new Zend_Form_Element_Textarea('Description'); $description->class = 'input_text_area'; $description->setLabel('Station Description:') - ->setRequired(false) + ->setRequired(true) ->setValue(Application_Model_Preference::GetStationDescription()) ->setDecorators(array('ViewHelper')) ->setAttrib('ROWS','2') diff --git a/airtime_mvc/public/js/airtime/nowplaying/register.js b/airtime_mvc/public/js/airtime/nowplaying/register.js index d95abedb5..01203b6f3 100644 --- a/airtime_mvc/public/js/airtime/nowplaying/register.js +++ b/airtime_mvc/public/js/airtime/nowplaying/register.js @@ -17,25 +17,13 @@ $(document).ready(function(){ $(this).dialog("close"); }, "Yes, help Airtime": function() { - $("#register-form").submit(); - /*$.ajax({ - type: 'post', - dataType: 'html', - url: '/Preference/registersubmit', - async: false, - data: $("#register-form").serialize(), - success: function (response, status, xml) { - //Check for error here - if (error) { - $("#register-form").parent().html('').html(response); - } - else { - $(this).dialog('close'); - } + if($("#Publicise").is(':checked')){ + if(validateFields()){ + $("#register-form").submit(); } - });*/ - - $(this).dialog("close"); + }else{ + $("#register-form").submit(); + } } } }); @@ -68,6 +56,40 @@ $(document).ready(function(){ } }); }); + +function validateFields(){ + var stnName = $("#stnName"); + var phone = $("#Phone"); + var email = $("#Email"); + var city = $("#City"); + var description = $("#Description"); + + var errors = new Array(); + + errors[0] = displayError(stnName); + errors[1] = displayError(phone); + errors[2] = displayError(email); + errors[3] = displayError(city); + errors[4] = displayError(description); + + for( e in errors ){ + if(errors[e]){ + return false; + } + } + return true; +} + +function displayError(ele){ + var errorMsg = "Value is required and can't be empty"; + + ele.parent().find("ul").remove(); + if($.trim(ele.val()) == ''){ + ele.parent().append(""); + return true; + } + return false; +} function resizeImg(ele){