From f87fe11a24c50d98766f0b415b2758258f973bf3 Mon Sep 17 00:00:00 2001 From: Duncan Sommerville Date: Tue, 30 Jun 2015 12:14:33 -0400 Subject: [PATCH] SAAS-908 - Break source URL strings into host/port/mount fields --- .../application/forms/AddShowLiveStream.php | 43 +++--- .../forms/LiveStreamingPreferences.php | 110 ++++++++++----- .../scripts/form/add-show-live-stream.phtml | 66 ++------- .../scripts/form/preferences_livestream.phtml | 126 ++++-------------- 4 files changed, 143 insertions(+), 202 deletions(-) diff --git a/airtime_mvc/application/forms/AddShowLiveStream.php b/airtime_mvc/application/forms/AddShowLiveStream.php index 923c6993d..3718aa7d6 100644 --- a/airtime_mvc/application/forms/AddShowLiveStream.php +++ b/airtime_mvc/application/forms/AddShowLiveStream.php @@ -8,14 +8,12 @@ class Application_Form_AddShowLiveStream extends Zend_Form_SubForm { $cb_airtime_auth = new Zend_Form_Element_Checkbox("cb_airtime_auth"); $cb_airtime_auth->setLabel(sprintf(_("Use %s Authentication:"), PRODUCT_NAME)) - ->setRequired(false) - ->setDecorators(array('ViewHelper')); + ->setRequired(false); $this->addElement($cb_airtime_auth); $cb_custom_auth = new Zend_Form_Element_Checkbox("cb_custom_auth"); $cb_custom_auth ->setLabel(_("Use Custom Authentication:")) - ->setRequired(false) - ->setDecorators(array('ViewHelper')); + ->setRequired(false); $this->addElement($cb_custom_auth); //custom username @@ -26,8 +24,7 @@ class Application_Form_AddShowLiveStream extends Zend_Form_SubForm ->setLabel(_('Custom Username')) ->setFilters(array('StringTrim')) ->setValidators(array( - new ConditionalNotEmpty(array("cb_custom_auth"=>"1")))) - ->setDecorators(array('ViewHelper')); + new ConditionalNotEmpty(array("cb_custom_auth"=>"1")))); $this->addElement($custom_username); //custom password @@ -39,18 +36,34 @@ class Application_Form_AddShowLiveStream extends Zend_Form_SubForm ->setLabel(_('Custom Password')) ->setFilters(array('StringTrim')) ->setValidators(array( - new ConditionalNotEmpty(array("cb_custom_auth"=>"1")))) - ->setDecorators(array('ViewHelper')); + new ConditionalNotEmpty(array("cb_custom_auth"=>"1")))); $this->addElement($custom_password); - $connection_url = Application_Model_Preference::GetLiveDJSourceConnectionURL(); - if (trim($connection_url) == "") { - $connection_url = "N/A"; - } + $showSourceParams = parse_url(Application_Model_Preference::GetLiveDJSourceConnectionURL()); - $this->setDecorators(array( - array('ViewScript', array('viewScript' => 'form/add-show-live-stream.phtml', "connection_url"=>$connection_url)) - )); + // Show source connection url parameters + $showSourceHost = new Zend_Form_Element_Text('show_source_host'); + $showSourceHost->setAttrib('readonly', true) + ->setLabel(_('Host:')) + ->setValue(isset($showSourceParams["host"])?$showSourceParams["host"]:""); + $this->addElement($showSourceHost); + + $showSourcePort = new Zend_Form_Element_Text('show_source_port'); + $showSourcePort->setAttrib('readonly', true) + ->setLabel(_('Port:')) + ->setValue(isset($showSourceParams["port"])?$showSourceParams["port"]:""); + $this->addElement($showSourcePort); + + $showSourceMount = new Zend_Form_Element_Text('show_source_mount'); + $showSourceMount->setAttrib('readonly', true) + ->setLabel(_('Mount:')) + ->setValue(isset($showSourceParams["mount"])?$showSourceParams["mount"]:""); + $this->addElement($showSourceMount); + + $this->setDecorators( + array( + array('ViewScript', array('viewScript' => 'form/add-show-live-stream.phtml')) + )); } public function isValid($data) diff --git a/airtime_mvc/application/forms/LiveStreamingPreferences.php b/airtime_mvc/application/forms/LiveStreamingPreferences.php index 0391b45dc..f22ed0054 100644 --- a/airtime_mvc/application/forms/LiveStreamingPreferences.php +++ b/airtime_mvc/application/forms/LiveStreamingPreferences.php @@ -11,38 +11,38 @@ class Application_Form_LiveStreamingPreferences extends Zend_Form_SubForm $defaultFade = Application_Model_Preference::GetDefaultTransitionFade(); + $this->setDecorators(array( + array('ViewScript', array('viewScript' => 'form/preferences_livestream.phtml')), + )); + // automatic trasition on source disconnection $auto_transition = new Zend_Form_Element_Checkbox("auto_transition"); - $auto_transition->setLabel(_("Auto Switch Off")) - ->setValue(Application_Model_Preference::GetAutoTransition()) - ->setDecorators(array('ViewHelper')); + $auto_transition->setLabel(_("Auto Switch Off:")) + ->setValue(Application_Model_Preference::GetAutoTransition()); $this->addElement($auto_transition); // automatic switch on upon source connection $auto_switch = new Zend_Form_Element_Checkbox("auto_switch"); - $auto_switch->setLabel(_("Auto Switch On")) - ->setValue(Application_Model_Preference::GetAutoSwitch()) - ->setDecorators(array('ViewHelper')); + $auto_switch->setLabel(_("Auto Switch On:")) + ->setValue(Application_Model_Preference::GetAutoSwitch()); $this->addElement($auto_switch); // Default transition fade $transition_fade = new Zend_Form_Element_Text("transition_fade"); - $transition_fade->setLabel(_("Switch Transition Fade (s)")) + $transition_fade->setLabel(_("Switch Transition Fade (s):")) ->setFilters(array('StringTrim')) ->addValidator('regex', false, array('/^\d*(\.\d+)?$/', 'messages' => _('Please enter a time in seconds (eg. 0.5)'))) - ->setValue($defaultFade) - ->setDecorators(array('ViewHelper')); + ->setValue($defaultFade); $this->addElement($transition_fade); //Master username $master_username = new Zend_Form_Element_Text('master_username'); $master_username->setAttrib('autocomplete', 'off') ->setAllowEmpty(true) - ->setLabel(_('Master Username')) + ->setLabel(_('Username:')) ->setFilters(array('StringTrim')) - ->setValue(Application_Model_Preference::GetLiveStreamMasterUsername()) - ->setDecorators(array('ViewHelper')); + ->setValue(Application_Model_Preference::GetLiveStreamMasterUsername()); $this->addElement($master_username); //Master password @@ -56,26 +56,51 @@ class Application_Form_LiveStreamingPreferences extends Zend_Form_SubForm ->setAttrib('renderPassword','true') ->setAllowEmpty(true) ->setValue(Application_Model_Preference::GetLiveStreamMasterPassword()) - ->setLabel(_('Master Password')) - ->setFilters(array('StringTrim')) - ->setDecorators(array('ViewHelper')); + ->setLabel(_('Password:')) + ->setFilters(array('StringTrim')); $this->addElement($master_password); - //Master source connection url - $master_dj_connection_url = new Zend_Form_Element_Text('master_dj_connection_url'); - $master_dj_connection_url->setAttrib('readonly', true) - ->setLabel(_('Master Source Connection URL')) - ->setValue(Application_Model_Preference::GetMasterDJSourceConnectionURL()) - ->setDecorators(array('ViewHelper')); - $this->addElement($master_dj_connection_url); + $masterSourceParams = parse_url(Application_Model_Preference::GetMasterDJSourceConnectionURL()); - //Show source connection url - $live_dj_connection_url = new Zend_Form_Element_Text('live_dj_connection_url'); - $live_dj_connection_url->setAttrib('readonly', true) - ->setLabel(_('Show Source Connection URL')) - ->setValue(Application_Model_Preference::GetLiveDJSourceConnectionURL()) - ->setDecorators(array('ViewHelper')); - $this->addElement($live_dj_connection_url); + // Master source connection url parameters + $masterSourceHost = new Zend_Form_Element_Text('master_source_host'); + $masterSourceHost->setAttrib('readonly', true) + ->setLabel(_('Host:')) + ->setValue(isset($masterSourceParams["host"])?$masterSourceParams["host"]:""); + $this->addElement($masterSourceHost); + + $masterSourcePort = new Zend_Form_Element_Text('master_source_port'); + $masterSourcePort->setAttrib('readonly', true) + ->setLabel(_('Port:')) + ->setValue(isset($masterSourceParams["port"])?$masterSourceParams["port"]:""); + $this->addElement($masterSourcePort); + + $masterSourceMount = new Zend_Form_Element_Text('master_source_mount'); + $masterSourceMount->setAttrib('readonly', true) + ->setLabel(_('Mount:')) + ->setValue(isset($masterSourceParams["path"])?$masterSourceParams["path"]:""); + $this->addElement($masterSourceMount); + + $showSourceParams = parse_url(Application_Model_Preference::GetLiveDJSourceConnectionURL()); + + // Show source connection url parameters + $showSourceHost = new Zend_Form_Element_Text('show_source_host'); + $showSourceHost->setAttrib('readonly', true) + ->setLabel(_('Host:')) + ->setValue(isset($showSourceParams["host"])?$showSourceParams["host"]:""); + $this->addElement($showSourceHost); + + $showSourcePort = new Zend_Form_Element_Text('show_source_port'); + $showSourcePort->setAttrib('readonly', true) + ->setLabel(_('Port:')) + ->setValue(isset($showSourceParams["port"])?$showSourceParams["port"]:""); + $this->addElement($showSourcePort); + + $showSourceMount = new Zend_Form_Element_Text('show_source_mount'); + $showSourceMount->setAttrib('readonly', true) + ->setLabel(_('Mount:')) + ->setValue(isset($showSourceParams["mount"])?$showSourceParams["mount"]:""); + $this->addElement($showSourceMount); // demo only code if (!$isStreamConfigable) { @@ -93,19 +118,30 @@ class Application_Form_LiveStreamingPreferences extends Zend_Form_SubForm $CC_CONFIG = Config::getConfig(); $isDemo = isset($CC_CONFIG['demo']) && $CC_CONFIG['demo'] == 1; - $master_dj_connection_url = Application_Model_Preference::GetMasterDJSourceConnectionURL(); - $live_dj_connection_url = Application_Model_Preference::GetLiveDJSourceConnectionURL(); + $masterSourceParams = parse_url(Application_Model_Preference::GetMasterDJSourceConnectionURL()); + $showSourceParams = parse_url(Application_Model_Preference::GetLiveDJSourceConnectionURL()); - $this->setDecorators(array( - array('ViewScript', array('viewScript' => 'form/preferences_livestream.phtml', 'master_dj_connection_url'=>$master_dj_connection_url, 'live_dj_connection_url'=>$live_dj_connection_url, 'isDemo' => $isDemo)) - )); + $this->setDecorators( + array ( + array ('ViewScript', + array ( + 'viewScript' => 'form/preferences_livestream.phtml', + 'master_source_host' => isset($masterSourceParams["host"])?$masterSourceParams["host"]:"", + 'master_source_port' => isset($masterSourceParams["port"])?$masterSourceParams["port"]:"", + 'master_source_mount' => isset($masterSourceParams["mount"])?$masterSourceParams["mount"]:"", + 'show_source_host' => isset($showSourceParams["host"])?$showSourceParams["host"]:"", + 'show_source_port' => isset($showSourceParams["port"])?$showSourceParams["port"]:"", + 'show_source_mount' => isset($showSourceParams["mount"])?$showSourceParams["mount"]:"", + 'isDemo' => $isDemo, + ) + ) + ) + ); } public function isValid($data) { - $isValid = parent::isValid($data); - - return $isValid; + return parent::isValid($data); } } diff --git a/airtime_mvc/application/views/scripts/form/add-show-live-stream.phtml b/airtime_mvc/application/views/scripts/form/add-show-live-stream.phtml index bba877ff1..fd2cbcc77 100644 --- a/airtime_mvc/application/views/scripts/form/add-show-live-stream.phtml +++ b/airtime_mvc/application/views/scripts/form/add-show-live-stream.phtml @@ -1,60 +1,20 @@
-
- -
-
- element->getElement('cb_airtime_auth') ?> -
-
- -
-
- element->getElement('cb_custom_auth') ?> -
+ element->getElement('cb_airtime_auth')->render(); ?> + element->getElement('cb_custom_auth')->render(); ?>
-
- -
-
- element->getElement('custom_username') ?> - element->getElement('custom_username')->hasErrors()) : ?> -
    - element->getElement('custom_username')->getMessages() as $error): ?> -
  • - -
- -
-
- -
-
- element->getElement('custom_password') ?> - element->getElement('custom_password')->hasErrors()) : ?> -
    - element->getElement('custom_password')->getMessages() as $error): ?> -
  • - -
- -
+ element->getElement('custom_username')->render(); ?> + element->getElement('custom_password')->render(); ?>
-
- -
-
- connection_url; ?> -
+
+ +

+ +

+ element->getElement("show_source_host")->render() ?> + element->getElement("show_source_port")->render() ?> + element->getElement("show_source_mount")->render() ?> +
diff --git a/airtime_mvc/application/views/scripts/form/preferences_livestream.phtml b/airtime_mvc/application/views/scripts/form/preferences_livestream.phtml index 4bfdbc87a..0c9393aea 100644 --- a/airtime_mvc/application/views/scripts/form/preferences_livestream.phtml +++ b/airtime_mvc/application/views/scripts/form/preferences_livestream.phtml @@ -1,102 +1,34 @@
-
- -
-
- element->getElement('auto_transition') ?> - element->getElement('auto_transition')->hasErrors()) : ?> -
    - element->getElement('auto_transition')->getMessages() as $error): ?> -
  • - -
- -
-
- -
-
- element->getElement('auto_switch') ?> - element->getElement('auto_switch')->hasErrors()) : ?> -
    - element->getElement('auto_switch')->getMessages() as $error): ?> -
  • - -
- -
-
- -
-
- element->getElement('transition_fade') ?> - element->getElement('transition_fade')->hasErrors()) : ?> -
    - element->getElement('transition_fade')->getMessages() as $error): ?> -
  • - -
- -
-
- -
-
- element->getElement('master_username') ?> - element->getElement('master_username')->hasErrors()) : ?> -
    - element->getElement('master_username')->getMessages() as $error): ?> -
  • - -
- -
-
- -
-
- element->getElement('master_password') ?> - element->getElement('master_password')->hasErrors()) : ?> -
    - element->getElement('master_password')->getMessages() as $error): ?> -
  • - -
- -
-
- -
-
- element->getElement('master_dj_connection_url')->setValue($this->master_dj_connection_url) ?> - -
-
- -
-
- element->getElement('live_dj_connection_url')->setValue($this->live_dj_connection_url) ?> - -
+ element->getElement('auto_transition')->render() ?> + + element->getElement('auto_switch')->render() ?> + + element->getElement('transition_fade')->render() ?> + +
+ +

+ +

+ element->getElement('master_username')->render() ?> + + element->getElement('master_password')->render() ?> + + element->getElement("master_source_host")->render() ?> + element->getElement("master_source_port")->render() ?> + element->getElement("master_source_mount")->render() ?> +
+ +
+ +

+ +

+ element->getElement("show_source_host")->render() ?> + element->getElement("show_source_port")->render() ?> + element->getElement("show_source_mount")->render() ?> +