EventSchedulesController when something goes wrong
Consider that create, update or destroy can fails in EventSchedulesController Params in remove deleted because they were not used
This commit is contained in:
parent
13bcee485e
commit
310c521790
2 changed files with 44 additions and 31 deletions
|
|
@ -1,6 +1,7 @@
|
||||||
var url; // Should be initialize in Schedule.initialize
|
var url; // Should be initialize in Schedule.initialize
|
||||||
var schedule_id; // Should be initialize in Schedule.initialize
|
var schedule_id; // Should be initialize in Schedule.initialize
|
||||||
|
|
||||||
|
var error_remove = "The event couldn't be unscheduled";
|
||||||
var Schedule = {
|
var Schedule = {
|
||||||
initialize: function(url_param, schedule_id_param) {
|
initialize: function(url_param, schedule_id_param) {
|
||||||
url = url_param;
|
url = url_param;
|
||||||
|
|
@ -11,44 +12,53 @@ var Schedule = {
|
||||||
var event_schedule_id = e.attr("event_schedule_id");
|
var event_schedule_id = e.attr("event_schedule_id");
|
||||||
if(event_schedule_id != null){
|
if(event_schedule_id != null){
|
||||||
var my_url = url + '/' + event_schedule_id;
|
var my_url = url + '/' + event_schedule_id;
|
||||||
var params = {
|
|
||||||
event: e.attr("id"),
|
|
||||||
schedule_id: schedule_id
|
|
||||||
};
|
|
||||||
var callback = function(data) {
|
var callback = function(data) {
|
||||||
console.log(data);
|
console.log(data);
|
||||||
|
if(data.status == 'ok'){
|
||||||
e.attr("event_schedule_id", null);
|
e.attr("event_schedule_id", null);
|
||||||
|
e.appendTo($(".unscheduled-events"));
|
||||||
|
e.find(".schedule-event-delete-button").hide();
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
alert(error_remove);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: my_url,
|
url: my_url,
|
||||||
type: 'DELETE',
|
type: 'DELETE',
|
||||||
data: params,
|
|
||||||
success: callback,
|
success: callback,
|
||||||
dataType : 'json'
|
dataType : 'json'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
var unscheduled = $(".unscheduled-events");
|
else{
|
||||||
e.appendTo(unscheduled);
|
alert(error_remove);
|
||||||
e.find(".schedule-event-delete-button").hide();
|
}
|
||||||
},
|
},
|
||||||
add: function (event_id, room_id, date, time, event_schedule_id) {
|
add: function (previous_parent, new_parent, event) {
|
||||||
my_url = url;
|
var event_schedule_id = event.attr("event_schedule_id");
|
||||||
var type = 'POST'
|
var my_url = url;
|
||||||
|
var type = 'POST';
|
||||||
if(event_schedule_id != null){
|
if(event_schedule_id != null){
|
||||||
type = 'PUT';
|
type = 'PUT';
|
||||||
my_url += ('/' + event_schedule_id);
|
my_url += ('/' + event_schedule_id);
|
||||||
}
|
}
|
||||||
var params = { event_schedule: {
|
var params = { event_schedule: {
|
||||||
event_id: event_id,
|
event_id: event.attr("event_id"),
|
||||||
schedule_id: schedule_id,
|
schedule_id: schedule_id,
|
||||||
room_id: room_id,
|
room_id: new_parent.attr("room_id"),
|
||||||
start_time: (date + ' ' + time)
|
start_time: (new_parent.attr("date") + ' ' + new_parent.attr("hour"))
|
||||||
}};
|
}};
|
||||||
var callback = function(data) {
|
var callback = function(data) {
|
||||||
console.log(data);
|
console.log(data);
|
||||||
var e = $("#event-" + event_id);
|
if(data.status == 'ok'){
|
||||||
e.attr("event_schedule_id", data.event_schedule_id);
|
event.appendTo(new_parent);
|
||||||
e.find(".schedule-event-delete-button").show();
|
event.attr("event_schedule_id", data.event_schedule_id);
|
||||||
|
event.find(".schedule-event-delete-button").show();
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
event.appendTo(previous_parent);
|
||||||
|
alert("The event couldn't been scheduled");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: my_url,
|
url: my_url,
|
||||||
|
|
@ -86,16 +96,10 @@ $(document).ready( function() {
|
||||||
accept: '.schedule-event',
|
accept: '.schedule-event',
|
||||||
tolerance: "pointer",
|
tolerance: "pointer",
|
||||||
drop: function(event, ui) {
|
drop: function(event, ui) {
|
||||||
$(ui.draggable).appendTo(this);
|
|
||||||
var myId = $(ui.draggable).attr("event_id");
|
|
||||||
var myRoom = $(this).attr("room_id")
|
|
||||||
var myDate = $(this).attr("date");
|
|
||||||
var myTime = $(this).attr("hour");
|
|
||||||
var myEventSchedule = $(ui.draggable).attr("event_schedule_id");
|
|
||||||
$(ui.draggable).css("left", 0);
|
$(ui.draggable).css("left", 0);
|
||||||
$(ui.draggable).css("top", 0);
|
$(ui.draggable).css("top", 0);
|
||||||
$(this).css("background-color", "#ffffff");
|
$(this).css("background-color", "#ffffff");
|
||||||
Schedule.add(myId, myRoom, myDate, myTime, myEventSchedule);
|
Schedule.add($(ui.draggable).parent(), $(this), $(ui.draggable));
|
||||||
},
|
},
|
||||||
over: function(event, ui) {
|
over: function(event, ui) {
|
||||||
$(this).css("background-color", "#009ED8");
|
$(this).css("background-color", "#009ED8");
|
||||||
|
|
|
||||||
|
|
@ -3,18 +3,27 @@ module Admin
|
||||||
load_and_authorize_resource :event_schedule
|
load_and_authorize_resource :event_schedule
|
||||||
|
|
||||||
def create
|
def create
|
||||||
@event_schedule.save
|
if @event_schedule.save
|
||||||
render json: { 'status' => 'ok', event_schedule_id: @event_schedule.id }
|
render json: { 'status' => 'ok', event_schedule_id: @event_schedule.id }
|
||||||
|
else
|
||||||
|
render json: { 'status' => 'error' }
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def update
|
def update
|
||||||
@event_schedule.update(event_schedule_params)
|
if @event_schedule.update(event_schedule_params)
|
||||||
render json: { 'status' => 'ok', event_schedule_id: @event_schedule.id }
|
render json: { 'status' => 'ok', event_schedule_id: @event_schedule.id }
|
||||||
|
else
|
||||||
|
render json: { 'status' => 'error' }
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def destroy
|
def destroy
|
||||||
@event_schedule.destroy
|
if @event_schedule.destroy
|
||||||
render json: { 'status' => 'ok' }
|
render json: { 'status' => 'ok' }
|
||||||
|
else
|
||||||
|
render json: { 'status' => 'error' }
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue