more show overlap checks, still testing.

This commit is contained in:
Naomi 2010-12-17 11:49:18 -05:00
parent 069119857f
commit ace30e9766
2 changed files with 12 additions and 7 deletions

View File

@ -259,10 +259,12 @@ class Show {
$sql = $sql_gen ." WHERE ((". $sql_day .") AND (". $sql_range ."))"; $sql = $sql_gen ." WHERE ((". $sql_day .") AND (". $sql_range ."))";
} }
if(!is_null($s_time) && !is_null($e_time)) { if(!is_null($s_time) && !is_null($e_time)) {
$sql_time = "(start_time <= '{$s_time}' AND end_time >= '{$e_time}' AND '{$s_time}' < '{$e_time}') $sql_time = "(start_time <= '{$s_time}' AND end_time >= '{$e_time}' AND start_time < end_time AND '{$s_time}' < '{$e_time}')
OR (start_time >= '{$s_time}' AND end_time <= '{$e_time}' AND '{$s_time}' > '{$e_time}') OR (start_time >= '{$s_time}' AND end_time <= '{$e_time}' AND start_time > end_time AND '{$s_time}' > '{$e_time}')
OR (start_time >= '{$s_time}' AND end_time <= '{$e_time}' AND start_time < end_time) OR (start_time >= '{$s_time}' AND end_time <= '{$e_time}' AND start_time < end_time)
OR (start_time <= '{$s_time}' AND end_time >= '{$e_time}' AND start_time > end_time) OR (start_time <= '{$s_time}' AND end_time >= '{$e_time}' AND start_time > end_time)
OR (start_time <= '{$s_time}' AND end_time <= '{$e_time}' AND start_time > end_time AND '{$s_time}' > '{$e_time}')
OR (start_time >= '{$s_time}' AND end_time >= '{$e_time}' AND start_time > end_time AND '{$s_time}' > '{$e_time}')
OR (end_time > '{$s_time}' AND end_time <= '{$e_time}') OR (end_time > '{$s_time}' AND end_time <= '{$e_time}')
OR (start_time >= '{$s_time}' AND start_time < '{$e_time}')"; OR (start_time >= '{$s_time}' AND start_time < '{$e_time}')";
@ -371,7 +373,7 @@ class Show {
} }
if($this->_user->isAdmin()) { if($this->_user->isAdmin()) {
$event["editable"] = true; //$event["editable"] = true;
} }
if($this->_user->isHost($show["show_id"])) { if($this->_user->isHost($show["show_id"])) {

View File

@ -61,6 +61,7 @@ function submitShow() {
function(data){ function(data){
if(data.form) { if(data.form) {
dialog.find("form").remove(); dialog.find("form").remove();
dialog.find("#show_overlap_error").remove();
dialog.append(data.form); dialog.append(data.form);
var start = dialog.find("#start_date"); var start = dialog.find("#start_date");
@ -70,8 +71,9 @@ function submitShow() {
createDateInput(end, endDpSelect); createDateInput(end, endDpSelect);
if(data.overlap) { if(data.overlap) {
var table, tr, days; var div, table, tr, days;
table = $("<table/>"); div = $('<div id="show_overlap_error"/>');
table = $('<table/>');
days = $.datepicker.regional[''].dayNamesShort; days = $.datepicker.regional[''].dayNamesShort;
$.each(data.overlap, function(i, val){ $.each(data.overlap, function(i, val){
@ -85,8 +87,9 @@ function submitShow() {
table.append(tr); table.append(tr);
}); });
dialog.append("<span>Cannot add show. New show overlaps the following shows:</span>"); div.append("<span>Cannot add show. New show overlaps the following shows:</span>");
dialog.append(table); div.append(table);
dialog.append(div);
} }
} }