diff --git a/airtime_mvc/application/Bootstrap.php b/airtime_mvc/application/Bootstrap.php index abc9ad99b..7edb8b0ea 100644 --- a/airtime_mvc/application/Bootstrap.php +++ b/airtime_mvc/application/Bootstrap.php @@ -93,6 +93,9 @@ class Bootstrap extends Zend_Application_Bootstrap_Bootstrap $userType = ""; } $view->headScript()->appendScript("var userType = '$userType';"); + + $mimeTypes = FileDataHelper::getAudioMimeTypeArray(); + $view->headScript()->appendScript("var acceptedMimeTypes = ['".implode("','", array_keys($mimeTypes))."'];"); } /** diff --git a/airtime_mvc/application/controllers/ShowBuilderController.php b/airtime_mvc/application/controllers/ShowBuilderController.php index 67c58c512..66ac4bfb4 100644 --- a/airtime_mvc/application/controllers/ShowBuilderController.php +++ b/airtime_mvc/application/controllers/ShowBuilderController.php @@ -53,6 +53,30 @@ class ShowBuilderController extends Zend_Controller_Action { $csrf_element = new Zend_Form_Element_Hidden('csrf'); $csrf_element->setValue($csrf_namespace->authtoken)->setRequired('true')->removeDecorator('HtmlTag')->removeDecorator('Label'); $this->view->csrf = $csrf_element; + + $request = $this->getRequest(); + //populate date range form for show builder. + $now = time(); + $from = $request->getParam("from", $now); + $to = $request->getParam("to", $now + (3*60*60)); + + $utcTimezone = new DateTimeZone("UTC"); + $displayTimeZone = new DateTimeZone(Application_Model_Preference::GetTimezone()); + + $start = DateTime::createFromFormat("U", $from, $utcTimezone); + $start->setTimezone($displayTimeZone); + $end = DateTime::createFromFormat("U", $to, $utcTimezone); + $end->setTimezone($displayTimeZone); + + $form = new Application_Form_ShowBuilderTest(); + $form->populate(array( + 'sb_date_start' => $start->format("Y-m-d"), + 'sb_time_start' => $start->format("H:i"), + 'sb_date_end' => $end->format("Y-m-d"), + 'sb_time_end' => $end->format("H:i") + )); + + $this->view->sb_form = $form; } } diff --git a/airtime_mvc/application/forms/ShowBuilderTest.php b/airtime_mvc/application/forms/ShowBuilderTest.php new file mode 100644 index 000000000..d4b8b2d75 --- /dev/null +++ b/airtime_mvc/application/forms/ShowBuilderTest.php @@ -0,0 +1,103 @@ +setDecorators(array( + array('ViewScript', array('viewScript' => 'form/show-builder.phtml')) + )); + + // Add start date element + $startDate = new Zend_Form_Element_Text('sb_date_start'); + $startDate->class = 'input_text'; + $startDate->setRequired(true) + ->setLabel(_('Date Start:')) + ->setValue(date("Y-m-d")) + ->setFilters(array('StringTrim')) + ->setValidators(array( + 'NotEmpty', + array('date', false, array('YYYY-MM-DD')))) + ->setDecorators(array('ViewHelper')); + $startDate->setAttrib('alt', 'date'); + $this->addElement($startDate); + + // Add start time element + $startTime = new Zend_Form_Element_Text('sb_time_start'); + $startTime->class = 'input_text'; + $startTime->setRequired(true) + ->setValue('00:00') + ->setFilters(array('StringTrim')) + ->setValidators(array( + 'NotEmpty', + array('date', false, array('HH:mm')), + array('regex', false, array('/^[0-2]?[0-9]:[0-5][0-9]$/', 'messages' => _('Invalid character entered'))))) + ->setDecorators(array('ViewHelper')); + $startTime->setAttrib('alt', 'time'); + $this->addElement($startTime); + + // Add end date element + $endDate = new Zend_Form_Element_Text('sb_date_end'); + $endDate->class = 'input_text'; + $endDate->setRequired(true) + ->setLabel(_('Date End:')) + ->setValue(date("Y-m-d")) + ->setFilters(array('StringTrim')) + ->setValidators(array( + 'NotEmpty', + array('date', false, array('YYYY-MM-DD')))) + ->setDecorators(array('ViewHelper')); + $endDate->setAttrib('alt', 'date'); + $this->addElement($endDate); + + // Add end time element + $endTime = new Zend_Form_Element_Text('sb_time_end'); + $endTime->class = 'input_text'; + $endTime->setRequired(true) + ->setValue('01:00') + ->setFilters(array('StringTrim')) + ->setValidators(array( + 'NotEmpty', + array('date', false, array('HH:mm')), + array('regex', false, array('/^[0-2]?[0-9]:[0-5][0-9]$/', 'messages' => _('Invalid character entered'))))) + ->setDecorators(array('ViewHelper')); + $endTime->setAttrib('alt', 'time'); + $this->addElement($endTime); + + // add a select to choose a show. + $showSelect = new Zend_Form_Element_Select("sb_show_filter"); + $showSelect->setLabel(_("Show:")); + $showSelect->setMultiOptions($this->getShowNames()); + $showSelect->setValue(null); + $showSelect->setDecorators(array('ViewHelper')); + $this->addElement($showSelect); + + if ($user->getType() === 'H') { + $myShows = new Zend_Form_Element_Checkbox('sb_my_shows'); + $myShows->setLabel(_('All My Shows:')) + ->setDecorators(array('ViewHelper')); + $this->addElement($myShows); + } + } + + private function getShowNames() + { + $showNames = array("0" => "-------------------------"); + + $shows = CcShowQuery::create() + ->setFormatter(ModelCriteria::FORMAT_ON_DEMAND) + ->orderByDbName() + ->find(); + + foreach ($shows as $show) { + + $showNames[$show->getDbId()] = $show->getDbName(); + } + + return $showNames; + } + +} diff --git a/airtime_mvc/application/views/scripts/form/show-builder.phtml b/airtime_mvc/application/views/scripts/form/show-builder.phtml new file mode 100644 index 000000000..d1ec22648 --- /dev/null +++ b/airtime_mvc/application/views/scripts/form/show-builder.phtml @@ -0,0 +1,8 @@ +element->getElement('sb_date_start'); ?> +element->getElement('sb_time_start'); ?> +element->getElement('sb_date_end'); ?> +element->getElement('sb_time_end'); ?> + + + + diff --git a/airtime_mvc/application/views/scripts/playlist/playlist.phtml b/airtime_mvc/application/views/scripts/playlist/playlist.phtml index d187dc866..263b9008c 100644 --- a/airtime_mvc/application/views/scripts/playlist/playlist.phtml +++ b/airtime_mvc/application/views/scripts/playlist/playlist.phtml @@ -6,16 +6,16 @@ if (isset($this->obj)) { ?>