diff --git a/airtime_mvc/application/controllers/NowplayingController.php b/airtime_mvc/application/controllers/NowplayingController.php
index 257b354a2..00a0d5f7e 100644
--- a/airtime_mvc/application/controllers/NowplayingController.php
+++ b/airtime_mvc/application/controllers/NowplayingController.php
@@ -29,8 +29,11 @@ class NowplayingController extends Zend_Controller_Action
$form = new Application_Form_RegisterAirtime();
$values = $request->getPost();
- if ($values["Publicise"] != 1){
+ if ($values["Publicise"] != 1 && $form->isValid($values)){
Application_Model_Preference::SetSupportFeedback($values["SupportFeedback"]);
+ if(isset($values["Privacy"])){
+ Application_Model_Preference::SetPrivacyPolicyCheck($values["Privacy"]);
+ }
// unset session
Zend_Session::namespaceUnset('referrer');
}
@@ -49,10 +52,12 @@ class NowplayingController extends Zend_Controller_Action
Application_Model_Preference::SetStationDescription($values["Description"]);
Application_Model_Preference::SetStationLogo($imagePath);
Application_Model_Preference::SetSupportFeedback($values["SupportFeedback"]);
+ if(isset($values["Privacy"])){
+ Application_Model_Preference::SetPrivacyPolicyCheck($values["Privacy"]);
+ }
// unset session
Zend_Session::namespaceUnset('referrer');
}else{
- var_dump($form->getMessages());
$logo = Application_Model_Preference::GetStationLogo();
if($logo){
$this->view->logoImg = $logo;
diff --git a/airtime_mvc/application/controllers/PreferenceController.php b/airtime_mvc/application/controllers/PreferenceController.php
index 7b7c62c65..233f7e12a 100644
--- a/airtime_mvc/application/controllers/PreferenceController.php
+++ b/airtime_mvc/application/controllers/PreferenceController.php
@@ -60,24 +60,29 @@ class PreferenceController extends Zend_Controller_Action
$form = new Application_Form_SupportSettings();
if ($request->isPost()) {
- if ($form->isValid($request->getPost())) {
- $values = $form->getValues();
-
- Application_Model_Preference::SetHeadTitle($values["stationName"], $this->view);
- Application_Model_Preference::SetPhone($values["Phone"]);
- Application_Model_Preference::SetEmail($values["Email"]);
- Application_Model_Preference::SetStationWebSite($values["StationWebSite"]);
- Application_Model_Preference::SetSupportFeedback($values["SupportFeedback"]);
- Application_Model_Preference::SetPublicise($values["Publicise"]);
-
- $form->Logo->receive();
- $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);
-
+ $values = $request->getPost();
+ if ($form->isValid($values)) {
+ if ($values["Publicise"] != 1){
+ Application_Model_Preference::SetSupportFeedback($values["SupportFeedback"]);
+ if(isset($values["Privacy"])){
+ Application_Model_Preference::SetPrivacyPolicyCheck($values["Privacy"]);
+ }
+ }else{
+ Application_Model_Preference::SetHeadTitle($values["stationName"], $this->view);
+ Application_Model_Preference::SetPhone($values["Phone"]);
+ Application_Model_Preference::SetEmail($values["Email"]);
+ Application_Model_Preference::SetStationWebSite($values["StationWebSite"]);
+ Application_Model_Preference::SetSupportFeedback($values["SupportFeedback"]);
+ Application_Model_Preference::SetPublicise($values["Publicise"]);
+
+ $form->Logo->receive();
+ $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);
+ }
$this->view->statusMsg = "
Support setting updated.
";
}
}
@@ -85,7 +90,13 @@ class PreferenceController extends Zend_Controller_Action
if($logo){
$this->view->logoImg = $logo;
}
+ $privacyChecked = false;
+ if(Application_Model_Preference::GetPrivacyPolicyCheck() == 1){
+ $privacyChecked = true;
+ }
+ $this->view->privacyChecked = $privacyChecked;
$this->view->form = $form;
+ //$form->render($this->view);
}
public function directoryConfigAction()
diff --git a/airtime_mvc/application/forms/RegisterAirtime.php b/airtime_mvc/application/forms/RegisterAirtime.php
index e31e67c3b..011a1b0e7 100644
--- a/airtime_mvc/application/forms/RegisterAirtime.php
+++ b/airtime_mvc/application/forms/RegisterAirtime.php
@@ -8,10 +8,15 @@ class Application_Form_RegisterAirtime extends Zend_Form
$this->setAction('/Nowplaying');
$this->setMethod('post');
- $country_list = Application_Model_Preference::GetCountryList();
-
+ $country_list = Application_Model_Preference::GetCountryList();
+
+ $privacyChecked = false;
+ if(Application_Model_Preference::GetPrivacyPolicyCheck() == 1){
+ $privacyChecked = true;
+ }
+
$this->setDecorators(array(
- array('ViewScript', array('viewScript' => 'form/register-dialog.phtml')),
+ array('ViewScript', array('viewScript' => 'form/register-dialog.phtml', 'privacyChecked'=>$privacyChecked)),
array('File', array('viewScript' => 'form/register-dialog.phtml', 'placement' => false)))
);
diff --git a/airtime_mvc/application/forms/SupportSettings.php b/airtime_mvc/application/forms/SupportSettings.php
index ef6b9f2fa..f592c96ed 100644
--- a/airtime_mvc/application/forms/SupportSettings.php
+++ b/airtime_mvc/application/forms/SupportSettings.php
@@ -5,8 +5,8 @@ class Application_Form_SupportSettings extends Zend_Form
public function init()
{
- $country_list = Application_Model_Preference::GetCountryList();
-
+ $country_list = Application_Model_Preference::GetCountryList();
+
$this->setDecorators(array(
array('ViewScript', array('viewScript' => 'form/support-setting.phtml')),
array('File', array('viewScript' => 'form/support-setting.phtml', 'placement' => false)))
@@ -161,10 +161,12 @@ class Application_Form_SupportSettings extends Zend_Form
public function isValid ($data)
{
$isValid = parent::isValid($data);
- $checkPrivacy = $this->getElement('Privacy');
- if($data["SupportFeedback"] == "1" && $data["Privacy"] != "1"){
- $checkPrivacy->addError("You have to agree to privacy policy.");
- $isValid = false;
+ if(isset($data["Privacy"])){
+ $checkPrivacy = $this->getElement('Privacy');
+ if($data["SupportFeedback"] == "1" && $data["Privacy"] != "1"){
+ $checkPrivacy->addError("You have to agree to privacy policy.");
+ $isValid = false;
+ }
}
return $isValid;
}
diff --git a/airtime_mvc/application/models/Preference.php b/airtime_mvc/application/models/Preference.php
index 4d8b10cbe..61114042b 100644
--- a/airtime_mvc/application/models/Preference.php
+++ b/airtime_mvc/application/models/Preference.php
@@ -367,5 +367,13 @@ class Application_Model_Preference
public static function GetImportTimestamp(){
return Application_Model_Preference::GetValue("import_timestamp");
}
+
+ public static function SetPrivacyPolicyCheck($flag){
+ Application_Model_Preference::SetValue("privacy_policy", $flag);
+ }
+
+ public static function GetPrivacyPolicyCheck(){
+ return Application_Model_Preference::GetValue("privacy_policy");
+ }
}
diff --git a/airtime_mvc/application/views/scripts/form/register-dialog.phtml b/airtime_mvc/application/views/scripts/form/register-dialog.phtml
index 58a0d55b6..94244ae30 100644
--- a/airtime_mvc/application/views/scripts/form/register-dialog.phtml
+++ b/airtime_mvc/application/views/scripts/form/register-dialog.phtml
@@ -166,10 +166,14 @@
-
- element->getElement('Privacy') ?>
- element->getElement('Privacy')->getLabel() ?>
-
+ privacyChecked){?>
+
+ element->getElement('Privacy') ?>
+ element->getElement('Privacy')->getLabel() ?>
+
+
+
Terms and Conditions
+
\ No newline at end of file
diff --git a/airtime_mvc/application/views/scripts/form/support-setting.phtml b/airtime_mvc/application/views/scripts/form/support-setting.phtml
index bb24b89ed..7234a02ac 100644
--- a/airtime_mvc/application/views/scripts/form/support-setting.phtml
+++ b/airtime_mvc/application/views/scripts/form/support-setting.phtml
@@ -159,16 +159,20 @@
-
- element->getElement('Privacy') ?>
- element->getElement('Privacy')->getLabel() ?>
-
- element->getElement('Privacy')->hasErrors()) : ?>
-
- element->getElement('Privacy')->getMessages() as $error): ?>
-
-
-
-
+ element->getView()->privacyChecked){?>
+
+ element->getElement('Privacy') ?>
+ element->getElement('Privacy')->getLabel() ?>
+
+ element->getElement('Privacy')->hasErrors()) : ?>
+
+ element->getElement('Privacy')->getMessages() as $error): ?>
+
+
+
+
+
+
Terms and Conditions
+
\ No newline at end of file
diff --git a/airtime_mvc/public/js/airtime/preferences/support-setting.js b/airtime_mvc/public/js/airtime/preferences/support-setting.js
index d22ee962c..acd3fe671 100644
--- a/airtime_mvc/public/js/airtime/preferences/support-setting.js
+++ b/airtime_mvc/public/js/airtime/preferences/support-setting.js
@@ -52,7 +52,10 @@ $(document).ready(function() {
if(!$("#SupportFeedback").is(':checked')){
promote.removeAttr("checked");
promote.attr("disabled", true);
+ }else{
+ promote.removeAttr("disabled");
}
+
promote.live('click', function(){
if($(this).is(':checked')){
$("#public-info").show();