Skip to content

Commit 055c09d

Browse files
committed
Merge pull request gregschmit#74 from GetJobber/dandycoding-master
Dandycoding master
2 parents bbbf0e1 + 93dd40f commit 055c09d

File tree

5 files changed

+18
-6
lines changed

5 files changed

+18
-6
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ For other languages include a JavaScript file like this:
101101

102102
```coffeescript
103103
$.fn.recurring_select.texts = {
104+
locale_iso_code: "fr"
104105
repeat: "Repeat"
105106
frequency: "Frequency"
106107
daily: "Daily"

app/assets/javascripts/recurring_select.js.coffee

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ $.fn.recurring_select.options = {
8080
}
8181

8282
$.fn.recurring_select.texts = {
83+
locale_iso_code: "en"
8384
repeat: "Repeat"
8485
last_day: "Last Day"
8586
frequency: "Frequency"

app/assets/javascripts/recurring_select/fr.js.coffee

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
$.fn.recurring_select.texts = {
2+
locale_iso_code: "fr"
23
repeat: "Récurrence"
34
last_day: "Dernier jour"
45
frequency: "Fréquence"

app/assets/javascripts/recurring_select_dialog.js.coffee.erb

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -102,10 +102,15 @@ window.RecurringSelectDialog =
102102
interval_input.val(@current_rule.hash.interval)
103103
interval_input.on "change keyup", @intervalChanged
104104

105+
# clear selected days
106+
section.find(".day_holder a").each (index, element) ->
107+
$(element).removeClass("selected")
108+
105109
# connect the day fields
106110
if @current_rule.hash.validations? && @current_rule.hash.validations.day?
107111
$(@current_rule.hash.validations.day).each (index, val) ->
108112
section.find(".day_holder a[data-value='"+val+"']").addClass("selected")
113+
109114
section.off('click', '.day_holder a').on "click", ".day_holder a", @daysChanged
110115

111116
section.show()
@@ -160,8 +165,9 @@ window.RecurringSelectDialog =
160165

161166
summaryFetch: ->
162167
return if !(@current_rule.hash? && (rule_type = @current_rule.hash.rule_type)?)
168+
@current_rule.hash['week_start'] = $.fn.recurring_select.texts["first_day_of_week"]
163169
$.ajax
164-
url: "<%= Rails.application.config.action_controller.relative_url_root %>/recurring_select/translate",
170+
url: "<%= Rails.application.config.action_controller.relative_url_root %>/recurring_select/translate/#{$.fn.recurring_select.texts["locale_iso_code"]}",
165171
type: "POST",
166172
data: @current_rule.hash
167173
success: @summaryFetchSuccess
@@ -196,12 +202,14 @@ window.RecurringSelectDialog =
196202

197203
for num, index in [1, 2, 3, 4, 5, -1]
198204
if show_row[index]
199-
monthly_calendar.append "<span>#{row_labels[index]}</span>"
200-
for day_of_week in [0..6]
201-
day_link = $("<a>", {text: cell_str[day_of_week]})
205+
monthly_calendar.append "<span>#{row_labels[num - 1]}</span>"
206+
for day_of_week in [$.fn.recurring_select.texts["first_day_of_week"]...(7 + $.fn.recurring_select.texts["first_day_of_week"])]
207+
day_of_week = day_of_week % 7
208+
day_link = $("<a>", {text: cell_str[day_of_week] })
202209
day_link.attr("day", day_of_week)
203210
day_link.attr("instance", num)
204211
monthly_calendar.append day_link
212+
205213
$.each @current_rule.hash.validations.day_of_week, (key, value) ->
206214
$.each value, (index, instance) ->
207215
section.find("a[day='#{key}'][instance='#{instance}']").addClass("selected")
@@ -250,7 +258,6 @@ window.RecurringSelectDialog =
250258
@current_rule.hash.interval = parseInt($(event.currentTarget).val())
251259
if @current_rule.hash.interval < 1 || isNaN(@current_rule.hash.interval)
252260
@current_rule.hash.interval = 1
253-
# $(event.currentTarget).val(@current_rule.hash.interval)
254261
@summaryUpdate()
255262

256263
daysChanged: (event) =>

app/middleware/recurring_select_middleware.rb

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@ def initialize(app)
77
end
88

99
def call(env)
10-
if env["PATH_INFO"] =~ /^\/recurring_select\/translate/
10+
regexp = /^\/recurring_select\/translate\/(.*)/
11+
if env["PATH_INFO"] =~ regexp
12+
I18n.locale = env["PATH_INFO"].scan(regexp).first.first
1113
request = Rack::Request.new(env)
1214
params = request.params
1315
params.symbolize_keys!

0 commit comments

Comments
 (0)