diff --git a/airtime_mvc/public/js/airtime/schedule/add-show.js b/airtime_mvc/public/js/airtime/schedule/add-show.js
index d92317035..1daeb36d8 100644
--- a/airtime_mvc/public/js/airtime/schedule/add-show.js
+++ b/airtime_mvc/public/js/airtime/schedule/add-show.js
@@ -4,6 +4,84 @@
*
*/
+function openAddShowForm() {
+ if($("#add-show-form").length == 1) {
+ if( ($("#add-show-form").css('display')=='none')) {
+ $("#add-show-form").show();
+ var windowWidth = $(window).width();
+ // margin on showform are 16 px on each side
+ var calendarWidth = 100-(($("#schedule-add-show").width() + (16 * 4))/windowWidth*100);
+ var widthPercent = parseInt(calendarWidth)+"%";
+ $("#schedule_calendar").css("width", widthPercent);
+
+ // 200 px for top dashboard and 50 for padding on main content
+ // this calculation was copied from schedule.js line 326
+ var mainHeight = document.documentElement.clientHeight - 200 - 50;
+ $('#schedule_calendar').fullCalendar('option', 'contentHeight', mainHeight);
+ }
+ $("#schedule-show-what").show(0, function(){
+ $add_show_name = $("#add_show_name");
+ $add_show_name.focus();
+ $add_show_name.select();
+ });
+ }
+}
+
+function makeAddShowButton(){
+ $('.fc-header-left')
+ .append('')
+ .append(''+$.i18n._("Show")+'')
+ .find('span.fc-button:last > a')
+ .click(function(){
+ openAddShowForm();
+ removeAddShowButton();
+ });
+}
+
+function removeAddShowButton(){
+ var aTag = $('.fc-header-left')
+ .find("span.fc-button:last > a");
+
+ var span = aTag.parent();
+ span.prev().remove();
+ span.remove();
+}
+
+//$el is DOM element #add-show-form
+//form is the new form contents to append to $el
+function redrawAddShowForm($el, form) {
+
+ //need to clean up the color picker.
+ $el.find("#schedule-show-style input").each(function(i, el){
+ var $input = $(this),
+ colId = $input.data("colorpickerId");
+
+ $("#"+colId).remove();
+ $input.removeData();
+ });
+
+ $el.empty().append(form);
+
+ setAddShowEvents($el);
+}
+
+function closeAddShowForm(event) {
+ event.stopPropagation();
+ event.preventDefault();
+
+ var $el = $("#add-show-form");
+
+ $el.hide();
+ windowResize();
+
+ $.get(baseUrl+"Schedule/get-form", {format:"json"}, function(json) {
+
+ redrawAddShowForm($el, json.form);
+ });
+
+ makeAddShowButton();
+}
+
//dateText mm-dd-yy
function startDpSelect(dateText, inst) {
var time, date;
@@ -73,16 +151,14 @@ function findHosts(request, callback) {
}
function beginEditShow(data){
- if(data.show_error == true){
+
+ if (data.show_error == true){
alertShowErrorAndReload();
return false;
}
- $("#add-show-form")
- .empty()
- .append(data.newForm);
-
+
+ redrawAddShowForm($("#add-show-form"), data.newForm);
removeAddShowButton();
- setAddShowEvents();
openAddShowForm();
}
@@ -130,9 +206,9 @@ function getContrastYIQ(hexcolor){
}
-function setAddShowEvents() {
+function setAddShowEvents(form) {
- var form = $("#add-show-form");
+ //var form = $("#add-show-form");
form.find("h3").click(function(){
$(this).next().toggle();
@@ -499,7 +575,6 @@ function setAddShowEvents() {
}
});
-
form.find("#add-show-close").click(closeAddShowForm);
form.find(".add-show-submit").click(function(event) {
@@ -541,37 +616,30 @@ function setAddShowEvents() {
$('#schedule-add-show').unblock();
+ var $addShowForm = $("#add-show-form");
+
if (json.form) {
- $("#add-show-form")
- .empty()
- .append(json.form);
-
- setAddShowEvents();
+
+ redrawAddShowForm($addShowForm, json.form);
$("#add_show_end_date").val(end_date);
$("#add_show_start_date").val(start_date);
showErrorSections();
- }else if(json.edit){
+ }
+ else if (json.edit) {
+
$("#schedule_calendar").removeAttr("style")
- .fullCalendar('render');
+ .fullCalendar('render');
- $("#add-show-form").hide();
+ $addShowForm.hide();
$.get(baseUrl+"Schedule/get-form", {format:"json"}, function(json){
- $("#add-show-form")
- .empty()
- .append(json.form);
-
- setAddShowEvents();
+ redrawAddShowForm($addShowForm, json.form);
});
makeAddShowButton();
}
else {
- $("#add-show-form")
- .empty()
- .append(json.newForm);
-
- setAddShowEvents();
+ redrawAddShowForm($addShowForm, json.newForm);
scheduleRefetchEvents(json);
}
});
@@ -715,7 +783,7 @@ function showErrorSections() {
}
$(document).ready(function() {
- setAddShowEvents();
+ setAddShowEvents($("#add-show-form"));
});
//Alert the error and reload the page
diff --git a/airtime_mvc/public/js/airtime/schedule/full-calendar-functions.js b/airtime_mvc/public/js/airtime/schedule/full-calendar-functions.js
index 24a41ad06..6f67364a2 100644
--- a/airtime_mvc/public/js/airtime/schedule/full-calendar-functions.js
+++ b/airtime_mvc/public/js/airtime/schedule/full-calendar-functions.js
@@ -19,77 +19,6 @@ function scheduleRefetchEvents(json) {
$("#schedule_calendar").fullCalendar( 'refetchEvents' );
}
-function openAddShowForm() {
- if($("#add-show-form").length == 1) {
- if( ($("#add-show-form").css('display')=='none')) {
- $("#add-show-form").show();
- var windowWidth = $(window).width();
- // margin on showform are 16 px on each side
- var calendarWidth = 100-(($("#schedule-add-show").width() + (16 * 4))/windowWidth*100);
- var widthPercent = parseInt(calendarWidth)+"%";
- $("#schedule_calendar").css("width", widthPercent);
-
- // 200 px for top dashboard and 50 for padding on main content
- // this calculation was copied from schedule.js line 326
- var mainHeight = document.documentElement.clientHeight - 200 - 50;
- $('#schedule_calendar').fullCalendar('option', 'contentHeight', mainHeight);
- }
- $("#schedule-show-what").show(0, function(){
- $add_show_name = $("#add_show_name");
- $add_show_name.focus();
- $add_show_name.select();
- });
- }
-}
-
-function closeAddShowForm(event) {
- event.stopPropagation();
- event.preventDefault();
-
- var $el = $("#add-show-form");
-
- $el.hide();
- windowResize();
-
- $.get(baseUrl+"Schedule/get-form", {format:"json"}, function(json) {
-
- //need to clean up the color picker.
- $el.find("#schedule-show-style input").each(function(i, el){
- var $input = $(this),
- colId = $input.data("colorpickerId");
-
- $("#"+colId).remove();
- $input.removeData();
- });
-
- $el.empty().append(json.form);
-
- setAddShowEvents();
- });
-
- makeAddShowButton();
-}
-
-function makeAddShowButton(){
- $('.fc-header-left')
- .append('')
- .append(''+$.i18n._("Show")+'')
- .find('span.fc-button:last > a')
- .click(function(){
- openAddShowForm();
- removeAddShowButton();
- });
-}
-
-function removeAddShowButton(){
- var aTag = $('.fc-header-left')
- .find("span.fc-button:last > a");
-
- var span = aTag.parent();
- span.prev().remove();
- span.remove();
-}
-
function makeTimeStamp(date){
var sy, sm, sd, h, m, s, timestamp;
sy = date.getFullYear();