fullcalendar_engine_user 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/MIT-LICENSE +20 -0
- data/Rakefile +34 -0
- data/app/assets/javascripts/fullcalendar_engine_user/application.js +13 -0
- data/app/assets/javascripts/fullcalendar_engine_user/events.js.erb +198 -0
- data/app/assets/javascripts/fullcalendar_engine_user/fullcalendar.js +6110 -0
- data/app/assets/javascripts/fullcalendar_engine_user/gcal.js +107 -0
- data/app/assets/javascripts/fullcalendar_engine_user/jquery-ui-1.10.3.custom.min.js +7 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/application.css +13 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/fullcalendar.css +589 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/animated-overlay.gif +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-bg_flat_10_000000_40x100.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-icons_222222_256x240.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-icons_228ef1_256x240.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-icons_ef8c08_256x240.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-icons_ffd27a_256x240.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/images/ui-icons_ffffff_256x240.png +0 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/jquery-ui-1.10.3.custom.css +1177 -0
- data/app/assets/stylesheets/fullcalendar_engine_user/style.css +23 -0
- data/app/controllers/fullcalendar_engine_user/application_controller.rb +4 -0
- data/app/controllers/fullcalendar_engine_user/events_controller.rb +173 -0
- data/app/models/fullcalendar_engine_user/event.rb +56 -0
- data/app/models/fullcalendar_engine_user/event_series.rb +50 -0
- data/app/views/fullcalendar_engine_user/events/_edit_form.html.erb +39 -0
- data/app/views/fullcalendar_engine_user/events/_form.html.erb +37 -0
- data/app/views/fullcalendar_engine_user/events/index.html.erb +21 -0
- data/app/views/fullcalendar_engine_user/events/new.js.erb +1 -0
- data/config/full-calendar.yml.dummy +57 -0
- data/config/initializers/configuration.rb +18 -0
- data/config/initializers/constants.rb +1 -0
- data/config/routes.rb +12 -0
- data/db/migrate/20131203105320_create_fullcalendar_engine_user_events.rb +13 -0
- data/db/migrate/20131203105529_create_fullcalendar_engine_user_event_series.rb +12 -0
- data/lib/fullcalendar_engine_user.rb +4 -0
- data/lib/fullcalendar_engine_user/engine.rb +5 -0
- data/lib/fullcalendar_engine_user/version.rb +3 -0
- data/lib/generators/fullcalendar_engine_user/install/install_generator.rb +41 -0
- data/lib/tasks/fullcalendar_engine_user_tasks.rake +4 -0
- data/test/controllers/fullcalendar_engine_user/events_controller_test.rb +9 -0
- data/test/fixtures/fullcalendar_engine_user/event_series.yml +11 -0
- data/test/fixtures/fullcalendar_engine_user/events.yml +11 -0
- data/test/fullcalendar_engine_user_test.rb +7 -0
- data/test/helpers/fullcalendar_engine_user/events_helper_test.rb +6 -0
- data/test/integration/navigation_test.rb +10 -0
- data/test/models/fullcalendar_engine_user/event_series_test.rb +9 -0
- data/test/models/fullcalendar_engine_user/event_test.rb +9 -0
- data/test/test_helper.rb +15 -0
- metadata +123 -0
@@ -0,0 +1,23 @@
|
|
1
|
+
body{
|
2
|
+
font-size: 12px;
|
3
|
+
font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
|
4
|
+
}
|
5
|
+
|
6
|
+
#loading{
|
7
|
+
position: absolute;
|
8
|
+
right: 0px;
|
9
|
+
top: 0px;
|
10
|
+
background-color: #dd0000;
|
11
|
+
font-weight:bold;
|
12
|
+
color: white;
|
13
|
+
margin: 5px;
|
14
|
+
padding: 3px;
|
15
|
+
}
|
16
|
+
|
17
|
+
span > div#loading {
|
18
|
+
position: fixed;
|
19
|
+
}
|
20
|
+
|
21
|
+
h1{
|
22
|
+
font-size: 16px;
|
23
|
+
}
|
@@ -0,0 +1,173 @@
|
|
1
|
+
require_dependency 'fullcalendar_engine_user/application_controller'
|
2
|
+
|
3
|
+
module FullcalendarEngineUser
|
4
|
+
class EventsController < ApplicationController
|
5
|
+
|
6
|
+
layout FullcalendarEngineUser::Configuration['layout'] || 'application'
|
7
|
+
|
8
|
+
before_filter :load_event, only: [:edit, :update, :destroy, :move, :resize]
|
9
|
+
before_filter :determine_event_type, only: :create
|
10
|
+
|
11
|
+
def create
|
12
|
+
if @event.save
|
13
|
+
@event.update_column(:user_id,current_user.id)
|
14
|
+
@event.save
|
15
|
+
render nothing: true
|
16
|
+
else
|
17
|
+
render text: @event.errors.full_messages.to_sentence, status: 422
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def new
|
22
|
+
respond_to do |format|
|
23
|
+
format.js
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
def get_events
|
28
|
+
start_time = Time.at(params[:start].to_i).to_formatted_s(:db)
|
29
|
+
end_time = Time.at(params[:end].to_i).to_formatted_s(:db)
|
30
|
+
|
31
|
+
if current_user.show_all == true and current_user.show_user == 0
|
32
|
+
@allusers= []
|
33
|
+
@ideventseries = []
|
34
|
+
@usersall = User.all
|
35
|
+
@usersall.each do |usersall|
|
36
|
+
@allusers << usersall[:id]
|
37
|
+
end
|
38
|
+
@eventseries = EventSeries.where("user_id in (?)", @allusers)
|
39
|
+
@eventseries.each do |events|
|
40
|
+
@ideventseries << events[:id]
|
41
|
+
end
|
42
|
+
|
43
|
+
@events = Event.where('
|
44
|
+
((starttime >= :start_time and endtime <= :end_time) or
|
45
|
+
(starttime >= :start_time and endtime > :end_time and starttime <= :end_time) or
|
46
|
+
(starttime <= :start_time and endtime >= :start_time and endtime <= :end_time) or
|
47
|
+
(starttime <= :start_time and endtime > :end_time)) and ((user_id in (:user_id)) or (event_series_id in (:massiv)) )',
|
48
|
+
start_time: start_time, end_time: end_time, user_id: @allusers.map, massiv: @ideventseries.map)
|
49
|
+
elsif current_user.show_all == true and current_user.show_user > 0
|
50
|
+
@ideventseries = []
|
51
|
+
@eventseries = EventSeries.where("user_id = (?)", current_user.show_user)
|
52
|
+
@eventseries.each do |events|
|
53
|
+
@ideventseries << events[:id]
|
54
|
+
end
|
55
|
+
@events = Event.where('
|
56
|
+
((starttime >= :start_time and endtime <= :end_time) or
|
57
|
+
(starttime >= :start_time and endtime > :end_time and starttime <= :end_time) or
|
58
|
+
(starttime <= :start_time and endtime >= :start_time and endtime <= :end_time) or
|
59
|
+
(starttime <= :start_time and endtime > :end_time)) and ((user_id = :user_id) or (event_series_id in (:massiv)) )',
|
60
|
+
start_time: start_time, end_time: end_time, user_id: current_user.show_user, massiv: @ideventseries.map)
|
61
|
+
else
|
62
|
+
@ideventseries = []
|
63
|
+
@eventseries = EventSeries.where("user_id = (?)", current_user.id)
|
64
|
+
@eventseries.each do |events|
|
65
|
+
@ideventseries << events[:id]
|
66
|
+
end
|
67
|
+
@events = Event.where('
|
68
|
+
((starttime >= :start_time and endtime <= :end_time) or
|
69
|
+
(starttime >= :start_time and endtime > :end_time and starttime <= :end_time) or
|
70
|
+
(starttime <= :start_time and endtime >= :start_time and endtime <= :end_time) or
|
71
|
+
(starttime <= :start_time and endtime > :end_time)) and ((user_id = :user_id) or (event_series_id in (:massiv)) )',
|
72
|
+
start_time: start_time, end_time: end_time, user_id: current_user.id, massiv: @ideventseries.map)
|
73
|
+
end
|
74
|
+
|
75
|
+
events = []
|
76
|
+
@events.each do |event|
|
77
|
+
events << { id: event.id,
|
78
|
+
title: event.title,
|
79
|
+
description: event.description || '',
|
80
|
+
start: event.starttime.iso8601,
|
81
|
+
end: event.endtime.iso8601,
|
82
|
+
allDay: event.all_day,
|
83
|
+
recurring: (event.event_series_id) ? true : false }
|
84
|
+
end
|
85
|
+
render json: events.to_json
|
86
|
+
end
|
87
|
+
|
88
|
+
def move
|
89
|
+
if current_user.show_all == false and current_user.show_user == 0
|
90
|
+
if @event
|
91
|
+
@event.starttime = make_time_from_minute_and_day_delta(@event.starttime)
|
92
|
+
@event.endtime = make_time_from_minute_and_day_delta(@event.endtime)
|
93
|
+
@event.all_day = params[:all_day]
|
94
|
+
@event.save
|
95
|
+
end
|
96
|
+
end
|
97
|
+
render nothing: true
|
98
|
+
end
|
99
|
+
|
100
|
+
def resize
|
101
|
+
if current_user.show_all == false and current_user.show_user == 0
|
102
|
+
if @event
|
103
|
+
@event.endtime = make_time_from_minute_and_day_delta(@event.endtime)
|
104
|
+
@event.save
|
105
|
+
end
|
106
|
+
end
|
107
|
+
render nothing: true
|
108
|
+
end
|
109
|
+
|
110
|
+
def edit
|
111
|
+
render json: { form: render_to_string(partial: 'edit_form') }
|
112
|
+
end
|
113
|
+
|
114
|
+
def update
|
115
|
+
if current_user.show_all == false and current_user.show_user == 0
|
116
|
+
case params[:event][:commit_button]
|
117
|
+
when 'Update All Occurrence'
|
118
|
+
@events = @event.event_series.events
|
119
|
+
@event.update_events(@events, event_params)
|
120
|
+
when 'Update All Following Occurrence'
|
121
|
+
@events = @event.event_series.events.where('starttime > :start_time',
|
122
|
+
start_time: @event.starttime.to_formatted_s(:db)).to_a
|
123
|
+
@event.update_events(@events, event_params)
|
124
|
+
else
|
125
|
+
@event.attributes = event_params
|
126
|
+
@event.save
|
127
|
+
end
|
128
|
+
end
|
129
|
+
render nothing: true
|
130
|
+
end
|
131
|
+
|
132
|
+
def destroy
|
133
|
+
if current_user.show_all == false and current_user.show_user == 0
|
134
|
+
case params[:delete_all]
|
135
|
+
when 'true'
|
136
|
+
@event.event_series.destroy
|
137
|
+
when 'future'
|
138
|
+
@events = @event.event_series.events.where('starttime > :start_time',
|
139
|
+
start_time: @event.starttime.to_formatted_s(:db)).to_a
|
140
|
+
@event.event_series.events.delete(@events)
|
141
|
+
else
|
142
|
+
@event.destroy
|
143
|
+
end
|
144
|
+
end
|
145
|
+
render nothing: true
|
146
|
+
end
|
147
|
+
|
148
|
+
private
|
149
|
+
|
150
|
+
def load_event
|
151
|
+
@event = Event.where(:id => params[:id]).first
|
152
|
+
unless @event
|
153
|
+
render json: { message: "Event Not Found.."}, status: 404 and return
|
154
|
+
end
|
155
|
+
end
|
156
|
+
|
157
|
+
def event_params
|
158
|
+
params.require(:event).permit('title', 'description', 'starttime', 'endtime', 'all_day', 'period', 'frequency', 'commit_button')
|
159
|
+
end
|
160
|
+
|
161
|
+
def determine_event_type
|
162
|
+
if params[:event][:period] == "Does not repeat"
|
163
|
+
@event = Event.new(event_params)
|
164
|
+
else
|
165
|
+
@event = EventSeries.new(event_params)
|
166
|
+
end
|
167
|
+
end
|
168
|
+
|
169
|
+
def make_time_from_minute_and_day_delta(event_time)
|
170
|
+
params[:minute_delta].to_i.minutes.from_now((params[:day_delta].to_i).days.from_now(event_time))
|
171
|
+
end
|
172
|
+
end
|
173
|
+
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
module FullcalendarEngineUser
|
2
|
+
class Event < ActiveRecord::Base
|
3
|
+
|
4
|
+
attr_accessor :period, :frequency, :commit_button
|
5
|
+
|
6
|
+
validates :title, :description, :presence => true
|
7
|
+
validate :validate_timings
|
8
|
+
|
9
|
+
belongs_to :event_series
|
10
|
+
|
11
|
+
REPEATS = {
|
12
|
+
:no_repeat => "Does not repeat",
|
13
|
+
:days => "Daily",
|
14
|
+
:weeks => "Weekly",
|
15
|
+
:months => "Monthly",
|
16
|
+
:years => "Yearly"
|
17
|
+
}
|
18
|
+
|
19
|
+
def validate_timings
|
20
|
+
if (starttime >= endtime) and !all_day
|
21
|
+
errors[:base] << "Start Time must be less than End Time"
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def update_events(events, event)
|
26
|
+
events.each do |e|
|
27
|
+
begin
|
28
|
+
old_start_time, old_end_time = e.starttime, e.endtime
|
29
|
+
e.attributes = event
|
30
|
+
if event_series.period.downcase == 'monthly' or event_series.period.downcase == 'yearly'
|
31
|
+
new_start_time = make_date_time(e.starttime, old_start_time)
|
32
|
+
new_end_time = make_date_time(e.starttime, old_end_time, e.endtime)
|
33
|
+
else
|
34
|
+
new_start_time = make_date_time(e.starttime, old_end_time)
|
35
|
+
new_end_time = make_date_time(e.endtime, old_end_time)
|
36
|
+
end
|
37
|
+
rescue
|
38
|
+
new_start_time = new_end_time = nil
|
39
|
+
end
|
40
|
+
if new_start_time and new_end_time
|
41
|
+
e.starttime, e.endtime = new_start_time, new_end_time
|
42
|
+
e.save
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
event_series.attributes = event
|
47
|
+
event_series.save
|
48
|
+
end
|
49
|
+
|
50
|
+
private
|
51
|
+
|
52
|
+
def make_date_time(original_time, difference_time, event_time = nil)
|
53
|
+
DateTime.parse("#{original_time.hour}:#{original_time.min}:#{original_time.sec}, #{event_time.try(:day) || difference_time.day}-#{difference_time.month}-#{difference_time.year}")
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
module FullcalendarEngineUser
|
2
|
+
class EventSeries < ActiveRecord::Base
|
3
|
+
|
4
|
+
attr_accessor :title, :description, :commit_button
|
5
|
+
|
6
|
+
validates :frequency, :period, :starttime, :endtime, :title, :description, :presence => true
|
7
|
+
|
8
|
+
has_many :events, :dependent => :destroy
|
9
|
+
|
10
|
+
after_create :create_events_until_end_time
|
11
|
+
|
12
|
+
def create_events_until_end_time(end_time=RECURRING_EVENTS_UPTO)
|
13
|
+
old_start_time = starttime
|
14
|
+
old_end_time = endtime
|
15
|
+
frequency_period = recurring_period(period)
|
16
|
+
new_start_time, new_end_time = old_start_time, old_end_time
|
17
|
+
|
18
|
+
while frequency.send(frequency_period).from_now(old_start_time) <= end_time
|
19
|
+
self.events.create(
|
20
|
+
:title => title,
|
21
|
+
:description => description,
|
22
|
+
:all_day => all_day,
|
23
|
+
:starttime => new_start_time,
|
24
|
+
:endtime => new_end_time
|
25
|
+
)
|
26
|
+
new_start_time = old_start_time = frequency.send(frequency_period).from_now(old_start_time)
|
27
|
+
new_end_time = old_end_time = frequency.send(frequency_period).from_now(old_end_time)
|
28
|
+
|
29
|
+
if period.downcase == 'monthly' or period.downcase == 'yearly'
|
30
|
+
begin
|
31
|
+
new_start_time = make_date_time(starttime, old_start_time)
|
32
|
+
new_end_time = make_date_time(endtime, old_end_time)
|
33
|
+
rescue
|
34
|
+
new_start_time = new_end_time = nil
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
def recurring_period(period)
|
41
|
+
Event::REPEATS.key(period.titleize).to_s.downcase
|
42
|
+
end
|
43
|
+
|
44
|
+
private
|
45
|
+
|
46
|
+
def make_date_time(original_time, difference_time)
|
47
|
+
DateTime.parse("#{original_time.hour}:#{original_time.min}:#{original_time.sec}, #{original_time.day}-#{difference_time.month}-#{difference_time.year}")
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
<%= form_for @event, :html => { :id => 'event_form' } do |f| %>
|
2
|
+
<p>
|
3
|
+
<%=f.label :title %>
|
4
|
+
<br/>
|
5
|
+
<%=f.text_field :title %>
|
6
|
+
</p>
|
7
|
+
<p>
|
8
|
+
<%=f.label :description %>
|
9
|
+
<br/>
|
10
|
+
<%=f.text_area :description, :rows => 4, :cols => 30 %>
|
11
|
+
</p>
|
12
|
+
<p>
|
13
|
+
<%=f.label :starttime, 'Start Time' %>
|
14
|
+
<br/>
|
15
|
+
<%=f.datetime_select :starttime %>
|
16
|
+
</p>
|
17
|
+
<p>
|
18
|
+
<%=f.label :endtime, 'End Time' %>
|
19
|
+
<br/>
|
20
|
+
<%=f.datetime_select :endtime %>
|
21
|
+
</p>
|
22
|
+
<p>
|
23
|
+
<%=f.label :all_day %>
|
24
|
+
<%=f.check_box :all_day %>
|
25
|
+
</p>
|
26
|
+
|
27
|
+
<%=f.hidden_field :commit_button, :value => ""%>
|
28
|
+
<p>
|
29
|
+
<%if @event.event_series -%>
|
30
|
+
<%=f.submit 'Update Only This Occurrence', :onclick => "document.getElementById('event_commit_button').value = this.value"%>
|
31
|
+
<%=f.submit 'Update All Occurrence', :onclick => "document.getElementById('event_commit_button').value = this.value"%>
|
32
|
+
<%=f.submit 'Update All Following Occurrence', :onclick => "document.getElementById('event_commit_button').value = this.value"%>
|
33
|
+
<%else-%>
|
34
|
+
<%=f.submit 'Update', :onclick => "document.getElementById('event_commit_button').value = this.value"%>
|
35
|
+
<%end-%>
|
36
|
+
|
37
|
+
<span id = "updating_events" class="spinner" style = "display:none;">Updating, Please wait...</span>
|
38
|
+
</p>
|
39
|
+
<%end %>
|
@@ -0,0 +1,37 @@
|
|
1
|
+
<%= form_for @event ||= FullcalendarEngineUser::Event.new, :html => { id: 'event_form' } do |f| %>
|
2
|
+
<p>
|
3
|
+
<%=f.label :title %>
|
4
|
+
<br/>
|
5
|
+
<%=f.text_field :title %>
|
6
|
+
</p>
|
7
|
+
<p>
|
8
|
+
<%=f.label :description %>
|
9
|
+
<br/>
|
10
|
+
<%=f.text_area :description, :rows => 4, :cols => 30 %>
|
11
|
+
</p>
|
12
|
+
<p>
|
13
|
+
<%=f.label :starttime, 'Start Time' %>
|
14
|
+
<br/>
|
15
|
+
<%=f.datetime_select :starttime %>
|
16
|
+
</p>
|
17
|
+
<p>
|
18
|
+
<%=f.label :endtime, 'End Time' %>
|
19
|
+
<br/>
|
20
|
+
<%=f.datetime_select :endtime %>
|
21
|
+
</p>
|
22
|
+
<p>
|
23
|
+
<%=f.label :all_day %>
|
24
|
+
<%=f.check_box :all_day %>
|
25
|
+
</p>
|
26
|
+
<p>
|
27
|
+
<%=f.label :period, "Repeats" %>
|
28
|
+
<%=f.select :period, FullcalendarEngineUser::Event::REPEATS.values, {}, onchange: "FullcalendarEngineUser.Events.showPeriodAndFrequency(this.value);" %>
|
29
|
+
</p>
|
30
|
+
<p id = "frequency" style = "display:none;">
|
31
|
+
<%=f.label :frequency, "Repeat every" %>
|
32
|
+
<%=f.select :frequency, (1..30).to_a %> <span id = "period"></span>
|
33
|
+
</p>
|
34
|
+
<p>
|
35
|
+
<%=f.submit %> <span id = "creating_events" class="spinner" style = "display:none;">Creating, Please wait...</span>
|
36
|
+
</p>
|
37
|
+
<%end %>
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<p>
|
2
|
+
<%= link_to 'Create Event', 'javascript:void()', id: 'new_event' %>
|
3
|
+
</p>
|
4
|
+
<div>
|
5
|
+
<div class='calendar'></div>
|
6
|
+
</div>
|
7
|
+
<div id="event_desc_dialog" class="dialog" style="display:none;"></div>
|
8
|
+
<div id="create_event_dialog" class="dialog" style ="display:none;">
|
9
|
+
<%= render 'form' %>
|
10
|
+
</div>
|
11
|
+
|
12
|
+
<script>
|
13
|
+
$(document).ready(function(){
|
14
|
+
$('.calendar').fullCalendar(full_calendar_options);
|
15
|
+
// page is now ready, initialize the calendar...
|
16
|
+
$('#new_event').click(function(event) {
|
17
|
+
FullcalendarEngine.Form.display()
|
18
|
+
event.preventDefault();
|
19
|
+
});
|
20
|
+
});
|
21
|
+
</script>
|
@@ -0,0 +1 @@
|
|
1
|
+
$("#create_event_dialog").html("<%= escape_javascript( render partial: 'form') %>")
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# Refer to the http://arshaw.com/fullcalendar/docs/ to know more about the following options in greater depth
|
2
|
+
# defaultView: 'agendaWeek'
|
3
|
+
# aspectRatio: 1.35
|
4
|
+
# header:
|
5
|
+
# left: 'prev,next today'
|
6
|
+
# center: 'title'
|
7
|
+
# right: 'month,agendaWeek,agendaDay'
|
8
|
+
# weekends: true
|
9
|
+
# weekNumbers: false
|
10
|
+
# weekNumberCalculation: 'iso'
|
11
|
+
# weekNumberTitle: 'W'
|
12
|
+
|
13
|
+
# editable: true
|
14
|
+
# disableDragging: false
|
15
|
+
# disableResizing: false
|
16
|
+
# allDayDefault: true
|
17
|
+
# ignoreTimezone: true
|
18
|
+
|
19
|
+
# lazyFetching: true
|
20
|
+
# startParam: 'start'
|
21
|
+
# endParam: 'end'
|
22
|
+
|
23
|
+
# titleFormat:
|
24
|
+
# month: 'MMMM yyyy'
|
25
|
+
# week: "MMM d[ yyyy]{ '—'[ MMM] d yyyy}"
|
26
|
+
# day: 'dddd, MMM d, yyyy'
|
27
|
+
# columnFormat:
|
28
|
+
# month: 'ddd'
|
29
|
+
# week: 'ddd M/d'
|
30
|
+
# day: 'dddd M/d'
|
31
|
+
# timeFormat:
|
32
|
+
# '': 'h(:mm)t' # default
|
33
|
+
|
34
|
+
# isRTL: false
|
35
|
+
# firstDay: 0
|
36
|
+
# monthNames: ['January','February','March','April','May','June','July','August','September','October','November','December']
|
37
|
+
# monthNamesShort: ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']
|
38
|
+
# dayNames: ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday']
|
39
|
+
# dayNamesShort: ['Sun','Mon','Tue','Wed','Thu','Fri','Sat']
|
40
|
+
# buttonText:
|
41
|
+
# prev: "<span class='fc-text-arrow'>prev..</span>"
|
42
|
+
# next: "<span class='fc-text-arrow'>next..</span>"
|
43
|
+
# prevYear: "<span class='fc-text-arrow'>«</span>"
|
44
|
+
# nextYear: "<span class='fc-text-arrow'>»</span>"
|
45
|
+
# today: 'today'
|
46
|
+
# month: 'month'
|
47
|
+
# week: 'week'
|
48
|
+
# day: 'day'
|
49
|
+
|
50
|
+
# theme: false
|
51
|
+
# buttonIcons:
|
52
|
+
# prev: 'circle-triangle-w'
|
53
|
+
# next: 'circle-triangle-e'
|
54
|
+
# selectable: true
|
55
|
+
# unselectAuto: true
|
56
|
+
# dropAccept: '*'
|
57
|
+
# handleWindowResize: true
|