diff --git a/airtime_mvc/application/configs/navigation.php b/airtime_mvc/application/configs/navigation.php
index 4f2c3ea8b..1fc7dc059 100644
--- a/airtime_mvc/application/configs/navigation.php
+++ b/airtime_mvc/application/configs/navigation.php
@@ -58,6 +58,12 @@ $pages = array(
'module' => 'default',
'controller' => 'Preference',
'action' => 'directory-config'
+ ),
+ array(
+ 'label' => 'Support Settings',
+ 'module' => 'default',
+ 'controller' => 'Preference',
+ 'action' => 'support-setting'
)
)
),
diff --git a/airtime_mvc/application/controllers/PreferenceController.php b/airtime_mvc/application/controllers/PreferenceController.php
index cf5d29b1b..433930d17 100644
--- a/airtime_mvc/application/controllers/PreferenceController.php
+++ b/airtime_mvc/application/controllers/PreferenceController.php
@@ -7,9 +7,7 @@ class PreferenceController extends Zend_Controller_Action
{
/* Initialize action controller here */
$ajaxContext = $this->_helper->getHelper('AjaxContext');
- $ajaxContext/*->addActionContext('register', 'json')
- ->addActionContext('remindme', 'json')*/
- ->addActionContext('server-browse', 'json')
+ $ajaxContext->addActionContext('server-browse', 'json')
->addActionContext('change-stor-directory', 'json')
->addActionContext('reload-watch-directory', 'json')
->addActionContext('remove-watch-directory', 'json')
@@ -30,8 +28,7 @@ class PreferenceController extends Zend_Controller_Action
if ($request->isPost()) {
if ($form->isValid($request->getPost())) {
$values = $form->getValues();
-
- Application_Model_Preference::SetHeadTitle($values["preferences_general"]["stationName"], $this->view);
+
Application_Model_Preference::SetDefaultFade($values["preferences_general"]["stationDefaultFade"]);
Application_Model_Preference::SetStreamLabelFormat($values["preferences_general"]["streamFormat"]);
Application_Model_Preference::SetAllow3rdPartyApi($values["preferences_general"]["thirdPartyApi"]);
@@ -45,30 +42,51 @@ class PreferenceController extends Zend_Controller_Action
Application_Model_Preference::SetSoundCloudLicense($values["preferences_soundcloud"]["SoundCloudLicense"]);
- Application_Model_Preference::SetPhone($values["preferences_support"]["Phone"]);
- Application_Model_Preference::SetEmail($values["preferences_support"]["Email"]);
- Application_Model_Preference::SetStationWebSite($values["preferences_support"]["StationWebSite"]);
- Application_Model_Preference::SetSupportFeedback($values["preferences_support"]["SupportFeedback"]);
- Application_Model_Preference::SetPublicise($values["preferences_support"]["Publicise"]);
-
- $form->getSubForm('preferences_support')->Logo->receive();
- $imagePath = $form->getSubForm('preferences_support')->Logo->getFileName();
-
- Application_Model_Preference::SetStationCountry($values["preferences_support"]["Country"]);
- Application_Model_Preference::SetStationCity($values["preferences_support"]["City"]);
- Application_Model_Preference::SetStationDescription($values["preferences_support"]["Description"]);
- Application_Model_Preference::SetStationLogo($imagePath);
-
$this->view->statusMsg = "
Preferences updated.
";
}
}
- $logo = Application_Model_Preference::GetStationLogo();
- if($logo){
- $this->view->logoImg = $logo;
- }
$this->view->form = $form;
}
+ public function supportSettingAction()
+ {
+ $request = $this->getRequest();
+ $baseUrl = $request->getBaseUrl();
+
+ $this->view->headScript()->appendFile($baseUrl.'/js/airtime/preferences/support-setting.js','text/javascript');
+ $this->view->statusMsg = "";
+
+ $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);
+
+ $this->view->statusMsg = "Support setting updated.
";
+ }
+ }
+ $logo = Application_Model_Preference::GetStationLogo();
+ if($logo){
+ $this->view->logoImg = $logo;
+ }
+ $this->view->form = $form;
+ }
+
public function directoryConfigAction()
{
$request = $this->getRequest();
diff --git a/airtime_mvc/application/forms/GeneralPreferences.php b/airtime_mvc/application/forms/GeneralPreferences.php
index 3e5ba710e..181799ac8 100644
--- a/airtime_mvc/application/forms/GeneralPreferences.php
+++ b/airtime_mvc/application/forms/GeneralPreferences.php
@@ -9,19 +9,6 @@ class Application_Form_GeneralPreferences extends Zend_Form_SubForm
array('ViewScript', array('viewScript' => 'form/preferences_general.phtml'))
));
- //Station name
- $this->addElement('text', 'stationName', array(
- 'class' => 'input_text',
- 'label' => 'Station Name',
- 'required' => true,
- 'filters' => array('StringTrim'),
- 'validators' => array('NotEmpty'),
- 'value' => Application_Model_Preference::GetValue("station_name"),
- 'decorators' => array(
- 'ViewHelper'
- )
- ));
-
$defaultFade = Application_Model_Preference::GetDefaultFade();
if($defaultFade == ""){
$defaultFade = '00:00:00.000000';
diff --git a/airtime_mvc/application/forms/Preferences.php b/airtime_mvc/application/forms/Preferences.php
index 963a58717..0fa9f0b58 100644
--- a/airtime_mvc/application/forms/Preferences.php
+++ b/airtime_mvc/application/forms/Preferences.php
@@ -18,8 +18,8 @@ class Application_Form_Preferences extends Zend_Form
$soundcloud_pref = new Application_Form_SoundcloudPreferences();
$this->addSubForm($soundcloud_pref, 'preferences_soundcloud');
- $support_pref = new Application_Form_SupportPreferences();
- $this->addSubForm($support_pref, 'preferences_support');
+ /*$support_pref = new Application_Form_SupportPreferences();
+ $this->addSubForm($support_pref, 'preferences_support');*/
$this->addElement('submit', 'submit', array(
'class' => 'ui-button ui-state-default right-floated',
diff --git a/airtime_mvc/application/forms/SupportPreferences.php b/airtime_mvc/application/forms/SupportSettings.php
similarity index 81%
rename from airtime_mvc/application/forms/SupportPreferences.php
rename to airtime_mvc/application/forms/SupportSettings.php
index 62c6496cf..12bb20237 100644
--- a/airtime_mvc/application/forms/SupportPreferences.php
+++ b/airtime_mvc/application/forms/SupportSettings.php
@@ -1,6 +1,6 @@
setDecorators(array(
- array('ViewScript', array('viewScript' => 'form/preferences_support.phtml')),
- array('File', array('viewScript' => 'form/preferences_support.phtml', 'placement' => false)))
+ array('ViewScript', array('viewScript' => 'form/support-setting.phtml')),
+ array('File', array('viewScript' => 'form/support-setting.phtml', 'placement' => false)))
);
+
+ //Station name
+ $this->addElement('text', 'stationName', array(
+ 'class' => 'input_text',
+ 'label' => 'Station Name',
+ 'required' => false,
+ 'filters' => array('StringTrim'),
+ 'value' => Application_Model_Preference::GetValue("station_name"),
+ 'decorators' => array(
+ 'ViewHelper'
+ )
+ ));
// Phone number
$this->addElement('text', 'Phone', array(
@@ -134,18 +146,26 @@ class Application_Form_SupportPreferences extends Zend_Form_SubForm
$checkboxPrivacy->setLabel("By checking this box, I agree to Sourcefabric's privacy policy.")
->setDecorators(array('ViewHelper'));
$this->addElement($checkboxPrivacy);
+
+ // submit button
+ $submit = new Zend_Form_Element_Submit("submit");
+ $submit->class = 'ui-button ui-state-default right-floated';
+ $submit->setIgnore(true)
+ ->setLabel("Submit")
+ ->setDecorators(array('ViewHelper'));
+ $this->addElement($submit);
}
// overwriting isValid function
public function isValid ($data)
{
- parent::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.");
- return false;
+ $isValid = false;
}
- return true;
+ return $isValid;
}
}
diff --git a/airtime_mvc/application/views/scripts/form/preferences.phtml b/airtime_mvc/application/views/scripts/form/preferences.phtml
index f1a8be62b..d6d20ea00 100644
--- a/airtime_mvc/application/views/scripts/form/preferences.phtml
+++ b/airtime_mvc/application/views/scripts/form/preferences.phtml
@@ -9,11 +9,6 @@
element->getSubform('preferences_soundcloud') ?>
-
-
- element->getSubform('preferences_support') ?>
-
-
element->getElement('submit') ?>
diff --git a/airtime_mvc/application/views/scripts/form/preferences_general.phtml b/airtime_mvc/application/views/scripts/form/preferences_general.phtml
index 21df5c566..3a59fe12b 100644
--- a/airtime_mvc/application/views/scripts/form/preferences_general.phtml
+++ b/airtime_mvc/application/views/scripts/form/preferences_general.phtml
@@ -1,21 +1,5 @@
\ No newline at end of file
diff --git a/airtime_mvc/application/views/scripts/preference/support-setting.phtml b/airtime_mvc/application/views/scripts/preference/support-setting.phtml
new file mode 100644
index 000000000..85176345b
--- /dev/null
+++ b/airtime_mvc/application/views/scripts/preference/support-setting.phtml
@@ -0,0 +1,12 @@
+
diff --git a/airtime_mvc/public/js/airtime/preferences/preferences.js b/airtime_mvc/public/js/airtime/preferences/preferences.js
index 8a77bb68a..d1d2585be 100644
--- a/airtime_mvc/public/js/airtime/preferences/preferences.js
+++ b/airtime_mvc/public/js/airtime/preferences/preferences.js
@@ -4,39 +4,9 @@ function showErrorSections() {
$("#soundcloud-settings").show();
$(window).scrollTop($("soundcloud-settings .errors").position().top);
}
- if($("#support-settings .errors").length > 0) {
- $("#support-settings").show();
- $(window).scrollTop($("#support-settings .errors").position().top);
- }
-}
-
-function resizeImg(ele){
- var img = $(ele);
-
- var width = ele.width;
- var height = ele.height;
-
- // resize img proportionaly
- if( width > height && width > 450){
- var ratio = 450/width;
- img.css("width", "450px");
- var newHeight = height * ratio;
- img.css("height", newHeight );
-
- }else if( width < height && height > 450){
- var ratio = 450/height;
- img.css("height", "450px");
- var newWidth = width * ratio;
- img.css("width", newWidth );
- }else if( width == height && width > 450){
- img.css("height", "450px");
- img.css("width", "450px" );
- }
-
}
$(document).ready(function() {
- var form = $("form");
$('.collapsible-header').live('click',function() {
$(this).next().toggle('fast');
@@ -44,36 +14,5 @@ $(document).ready(function() {
return false;
}).next().hide();
- $("#SupportFeedback").click( function(){
- var pub = $("#Publicise");
- if( !$(this).is(':checked') ){
- pub.removeAttr("checked");
- pub.attr("disabled", true);
- }else{
- pub.removeAttr("disabled");
- }
- });
-
- var promote = $("#Publicise");
- if(!$("#SupportFeedback").is(':checked')){
- promote.removeAttr("checked");
- promote.attr("disabled", true);
- }
- promote.live('click', function(){
- if($(this).is(':checked')){
- $("#public-info").show();
- }else{
- $("#public-info").hide();
- }
- });
- if( promote.is(":checked")){
- $("#public-info").show();
- }
-
showErrorSections();
-
- $('.toggle legend').click(function() {
- $('.toggle').toggleClass('closed');
- return false;
- });
});
diff --git a/airtime_mvc/public/js/airtime/preferences/support-setting.js b/airtime_mvc/public/js/airtime/preferences/support-setting.js
new file mode 100644
index 000000000..d22ee962c
--- /dev/null
+++ b/airtime_mvc/public/js/airtime/preferences/support-setting.js
@@ -0,0 +1,73 @@
+function showErrorSections() {
+
+ if($("soundcloud-settings .errors").length > 0) {
+ $("#soundcloud-settings").show();
+ $(window).scrollTop($("soundcloud-settings .errors").position().top);
+ }
+ if($("#support-settings .errors").length > 0) {
+ $("#support-settings").show();
+ $(window).scrollTop($("#support-settings .errors").position().top);
+ }
+}
+
+function resizeImg(ele){
+ var img = $(ele);
+
+ var width = ele.width;
+ var height = ele.height;
+
+ // resize img proportionaly
+ if( width > height && width > 450){
+ var ratio = 450/width;
+ img.css("width", "450px");
+ var newHeight = height * ratio;
+ img.css("height", newHeight );
+
+ }else if( width < height && height > 450){
+ var ratio = 450/height;
+ img.css("height", "450px");
+ var newWidth = width * ratio;
+ img.css("width", newWidth );
+ }else if( width == height && width > 450){
+ img.css("height", "450px");
+ img.css("width", "450px" );
+ }
+
+}
+
+$(document).ready(function() {
+ var form = $("form");
+
+ $("#SupportFeedback").click( function(){
+ var pub = $("#Publicise");
+ if( !$(this).is(':checked') ){
+ pub.removeAttr("checked");
+ pub.attr("disabled", true);
+ }else{
+ pub.removeAttr("disabled");
+ }
+ });
+
+ var promote = $("#Publicise");
+ if(!$("#SupportFeedback").is(':checked')){
+ promote.removeAttr("checked");
+ promote.attr("disabled", true);
+ }
+ promote.live('click', function(){
+ if($(this).is(':checked')){
+ $("#public-info").show();
+ }else{
+ $("#public-info").hide();
+ }
+ });
+ if( promote.is(":checked")){
+ $("#public-info").show();
+ }
+
+ showErrorSections();
+
+ $('.toggle legend').click(function() {
+ $('.toggle').toggleClass('closed');
+ return false;
+ });
+});