This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
# frozen_string_literal: true
|
||||
class ScheduleController < ApplicationController
|
||||
|
||||
def create
|
||||
message = false
|
||||
|
||||
if params[:schedule][:event_type] == "pto"
|
||||
sched = Schedule.new(schedule_params)
|
||||
sched.date_begin, sched.date_end = format_schedule_date(params[:date_range1])
|
||||
sched.user_id = current_user.id
|
||||
a = sched.date_end
|
||||
if sched.save
|
||||
message = true
|
||||
end
|
||||
end
|
||||
|
||||
respond_to do |format|
|
||||
format.json { render json: {msg: message ? "success" : "failure" } }
|
||||
end
|
||||
end
|
||||
|
||||
def get_pto_schedule
|
||||
begin
|
||||
schedules = current_user.paid_time_off.schedule
|
||||
jfs = []
|
||||
schedules.each do |s|
|
||||
hash = Hash.new
|
||||
hash[:id] = s[:id]
|
||||
hash[:title] = s[:event_name]
|
||||
hash[:start] = s[:date_begin]
|
||||
hash[:end] = s[:date_end]
|
||||
jfs << hash
|
||||
end
|
||||
rescue
|
||||
end
|
||||
respond_to do |format|
|
||||
format.json { render json: jfs.to_json }
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
# Returns a two part array consisting of dates
|
||||
# First value is the begin date and the second is the end date
|
||||
def format_schedule_date(date_array)
|
||||
begin
|
||||
vals = []
|
||||
return vals if date_array.empty?
|
||||
date_array.split("-").each do |s|
|
||||
date = Date.strptime(s.strip, "%m/%d/%Y")
|
||||
vals <<(date)
|
||||
end
|
||||
rescue ArgumentError
|
||||
return []
|
||||
end
|
||||
return vals
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def schedule_params
|
||||
params.require(:schedule).permit(:date_begin, :date_end, :event_desc, :event_name, :event_type)
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user