diff --git a/application/controllers/PreferenceController.php b/application/controllers/PreferenceController.php index 1dcb4bd38..d1fd4c3e6 100644 --- a/application/controllers/PreferenceController.php +++ b/application/controllers/PreferenceController.php @@ -10,42 +10,37 @@ class PreferenceController extends Zend_Controller_Action public function indexAction() { + $this->view->headScript()->appendFile('/js/airtime/preferences/preferences.js','text/javascript'); + + $request = $this->getRequest(); $this->view->statusMsg = ""; $form = new Application_Form_Preferences(); - $this->view->form = $form; - } - - public function updateAction() - { - $request = $this->getRequest(); - if (!$this->getRequest()->isPost()) { - return $this->_forward('Preference/index'); - } + + if ($request->isPost()) { - $form = new Application_Form_Preferences(); - if ($form->isValid($request->getPost())) { + 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"]); + $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"]); - Application_Model_Preference::SetDoSoundCloudUpload($values["preferences_soundcloud"]["UseSoundCloud"]); - Application_Model_Preference::SetSoundCloudUser($values["preferences_soundcloud"]["SoundCloudUser"]); - Application_Model_Preference::SetSoundCloudPassword($values["preferences_soundcloud"]["SoundCloudPassword"]); - Application_Model_Preference::SetSoundCloudTags($values["preferences_soundcloud"]["SoundCloudTags"]); - Application_Model_Preference::SetSoundCloudGenre($values["preferences_soundcloud"]["SoundCloudGenre"]); - Application_Model_Preference::SetSoundCloudTrackType($values["preferences_soundcloud"]["SoundCloudTrackType"]); - Application_Model_Preference::SetSoundCloudLicense($values["preferences_soundcloud"]["SoundCloudLicense"]); - - $this->view->statusMsg = "
Preferences updated.
"; + Application_Model_Preference::SetDoSoundCloudUpload($values["preferences_soundcloud"]["UseSoundCloud"]); + Application_Model_Preference::SetSoundCloudUser($values["preferences_soundcloud"]["SoundCloudUser"]); + Application_Model_Preference::SetSoundCloudPassword($values["preferences_soundcloud"]["SoundCloudPassword"]); + Application_Model_Preference::SetSoundCloudTags($values["preferences_soundcloud"]["SoundCloudTags"]); + Application_Model_Preference::SetSoundCloudGenre($values["preferences_soundcloud"]["SoundCloudGenre"]); + Application_Model_Preference::SetSoundCloudTrackType($values["preferences_soundcloud"]["SoundCloudTrackType"]); + Application_Model_Preference::SetSoundCloudLicense($values["preferences_soundcloud"]["SoundCloudLicense"]); + + $this->view->statusMsg = "
Preferences updated.
"; + } } $this->view->form = $form; - return $this->render('index'); //render the phtml file } } diff --git a/application/forms/Preferences.php b/application/forms/Preferences.php index c86fa6492..e329e48ff 100644 --- a/application/forms/Preferences.php +++ b/application/forms/Preferences.php @@ -5,7 +5,8 @@ class Application_Form_Preferences extends Zend_Form public function init() { - $this->setAction('/Preference/update')->setMethod('post'); + $this->setAction('/Preference'); + $this->setMethod('post'); $this->setDecorators(array( array('ViewScript', array('viewScript' => 'form/preferences.phtml')) diff --git a/application/views/scripts/form/preferences.phtml b/application/views/scripts/form/preferences.phtml index 8694d5115..c9844209d 100644 --- a/application/views/scripts/form/preferences.phtml +++ b/application/views/scripts/form/preferences.phtml @@ -1,9 +1,9 @@ -
+ element->getSubform('preferences_general') ?>

SoundCloud settings

-
+ diff --git a/application/views/scripts/preference/update.phtml b/application/views/scripts/preference/update.phtml deleted file mode 100644 index 3c48814f4..000000000 --- a/application/views/scripts/preference/update.phtml +++ /dev/null @@ -1 +0,0 @@ -Left empty on purpose diff --git a/public/js/airtime/preferences/preferences.js b/public/js/airtime/preferences/preferences.js new file mode 100644 index 000000000..a6fa7448e --- /dev/null +++ b/public/js/airtime/preferences/preferences.js @@ -0,0 +1,17 @@ +$(document).ready(function() { + + var form = $("form"); + + form.find("h3").click(function(){ + var h3 = $(this); + h3.next().toggle(); + + if(h3.hasClass("close")) { + h3.removeClass("close"); + } + else { + h3.addClass("close"); + } + }); +}); +