From fcc4c1f9af2d68bfc7b8dfe1aee38c14fb6f57cc Mon Sep 17 00:00:00 2001 From: denise Date: Fri, 13 Jul 2012 14:26:17 -0400 Subject: [PATCH 1/2] CC-84: Smart Playlists -fixed merge conflict --- airtime_mvc/application/forms/SmartPlaylistCriteria.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/airtime_mvc/application/forms/SmartPlaylistCriteria.php b/airtime_mvc/application/forms/SmartPlaylistCriteria.php index 64e5294b9..91c9127ea 100644 --- a/airtime_mvc/application/forms/SmartPlaylistCriteria.php +++ b/airtime_mvc/application/forms/SmartPlaylistCriteria.php @@ -58,7 +58,7 @@ class Application_Form_SmartPlaylistCriteria extends Zend_Form_SubForm $numElements = count($criteriaOptions); for ($i = 0; $i < $numElements; $i++) { $criteria = new Zend_Form_Element_Select('sp_criteria_field_'.$i); - $criteria->setAttrib('class', 'input_select'); + $criteria->setAttrib('class', 'sp_input_select'); $criteria->setValue('Select criteria'); $criteria->setDecorators(array('viewHelper')); $criteria->setMultiOptions($criteriaOptions); @@ -69,7 +69,7 @@ class Application_Form_SmartPlaylistCriteria extends Zend_Form_SubForm $criteriaModifers = new Zend_Form_Element_Select('sp_criteria_modifier_'.$i); $criteriaModifers->setValue('Select modifier'); - $criteriaModifers->setAttrib('class', 'input_select'); + $criteriaModifers->setAttrib('class', 'sp_input_select'); $criteriaModifers->setDecorators(array('viewHelper')); $criteriaModifers->setMultiOptions(array('0' => 'Select modifier')); if ($i != 0){ @@ -78,7 +78,7 @@ class Application_Form_SmartPlaylistCriteria extends Zend_Form_SubForm $this->addElement($criteriaModifers); $criteriaValue = new Zend_Form_Element_Text('sp_criteria_value_'.$i); - $criteriaValue->setAttrib('class', 'input_text'); + $criteriaValue->setAttrib('class', 'input_text sp_input_text'); $criteriaValue->setDecorators(array('viewHelper')); if ($i != 0){ $criteriaValue->setAttrib('disabled', 'disabled'); From b48fb49947484032c3c496e4076749889ad73d5a Mon Sep 17 00:00:00 2001 From: denise Date: Fri, 13 Jul 2012 15:15:11 -0400 Subject: [PATCH 2/2] CC-84: Smart Playlists -fixed add/remove behaviour --- .../form/smart-playlist-criteria.phtml | 4 +-- .../airtime/playlist/smart_playlistbuilder.js | 28 +++++++++++-------- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/airtime_mvc/application/views/scripts/form/smart-playlist-criteria.phtml b/airtime_mvc/application/views/scripts/form/smart-playlist-criteria.phtml index 5b3958ae2..3dba86b59 100644 --- a/airtime_mvc/application/views/scripts/form/smart-playlist-criteria.phtml +++ b/airtime_mvc/application/views/scripts/form/smart-playlist-criteria.phtml @@ -1,5 +1,5 @@
-
+
Smart Playlist Options
@@ -28,7 +28,7 @@ Remove  - Add + Add
diff --git a/airtime_mvc/public/js/airtime/playlist/smart_playlistbuilder.js b/airtime_mvc/public/js/airtime/playlist/smart_playlistbuilder.js index 267adab17..e54ded0e7 100644 --- a/airtime_mvc/public/js/airtime/playlist/smart_playlistbuilder.js +++ b/airtime_mvc/public/js/airtime/playlist/smart_playlistbuilder.js @@ -28,10 +28,9 @@ function setSmartPlaylistEvents() { var add_button = form.find('a[id="criteria_add"]'); //remove error message from current row, if any - var error_element = curr.find('span[class="sp-errors"]'); + var error_element = curr.find('span[class="errors sp-errors"]'); if (error_element.is(':visible')) { error_element.remove(); - curr.find('span[id="sp-errors"]').remove(); } /* assign next row to current row for all rows below and including @@ -93,19 +92,25 @@ function setSmartPlaylistEvents() { } list.find('div:visible:last').children().attr('disabled', 'disabled'); - list.find("div:visible:last") + list.find('div:visible:last') .find('[name^="sp_criteria"]').val(0).end() .find('[name^="sp_criteria_modifier"]').val(0).end() - .find('[name^="sp_criteria_value"]').val('') - .end().hide(); + .find('[name^="sp_criteria_value"]').val(''); + + if (list.find('div:visible:last').children().hasClass('criteria_add')) { + list.find('div:visible:last').find('.criteria_add').remove(); + } + list.find('div:visible:last').hide(); list.next().show(); // always put 'add' button on the last row if (list.find('div:visible').length > 1) { - list.find('div:visible:last').find('a[id^="criteria_remove"]').after(add_button); + list.find('div:visible:last').find('a[id^="criteria_remove"]') + .after("Add"); } else { - list.find('div:visible:last').find('[name^="sp_criteria_value"]').after(add_button); + list.find('div:visible:last').find('[name^="sp_criteria_value"]') + .after("Add"); } }); @@ -210,24 +215,25 @@ function populateModifierSelect(e) { function staticCallback(data) { var form = $('#smart-playlist-form'); - form.find('span[class="sp-errors"]').remove(); - form.find(' span[id="sp-errors"]').remove(); + form.find('span[class="errors sp-errors"]').remove(); var json = $.parseJSON(data); if (json.result == "1") { $.each(json.errors, function(index, error){ $.each(error.msg, function(index, message){ - $('#'+error.element).parent().append(""+message+"
"); + $('#'+error.element).parent().append(""+message+""); }); }); } } function dynamicCallback(json) { + var form = $('#smart-playlist-form'); + form.find('span[class="errors sp-errors"]').remove(); var json = $.parseJSON(data); if (json.result == "1") { $.each(json.errors, function(index, error){ $.each(error.msg, function(index, message){ - $('#'+error.element).parent().append(""+message+"
"); + $('#'+error.element).parent().append(""+message+""); }); }); }