| Module | ResponsesHelper |
| In: |
app/helpers/responses_helper.rb
|
# File app/helpers/responses_helper.rb, line 4
4: def display_prompt(params, page)
5: id_set(params[:alt])
6: if @new_question
7: session[:response_time] = []
8: page << "Question.updateStart('#{@left}', '#{@right}');"
9: prompt_item_update(page, @prompt, @left, @right, false)
10: page.delay(Delay::ITEM / 1000.0) {
11: page[:question].html rounded(@question.for_locale(I18n.locale))
12: page[:flag_left].html question_image
13: page[:flag_right].html question_image
14: page << "Question.updateEnd('#{@left}', '#{@right}', '#{@prev_left}', '#{@prev_right}');"
15: }
16: end
17: prompt_item_update(page, @next, @prev_left, @prev_right)
18: page << "Prompt.Time.reset_()"
19: page[:rated].html pluralize(@items_rated, t('stats.vote')) if @items_rated
20: page[:stats].html render(:partial => 'shared/stats')
21: last_left = escape_javascript(render(:partial => 'last', :locals => { :item => @prompt.items[0] }))
22: last_right = escape_javascript(render(:partial => 'last', :locals => { :item => @prompt.items[1] }))
23: percent_left = "#{@percent_wins[@prompt.items[0].id].round}%"
24: percent_right = "#{@percent_wins[@prompt.items[1].id].round}%"
25: suffix = params[:alt] == 'true' ? '' : '_alt'
26: page << "Last.update('#{last_left}', '#{last_right}', '#{percent_left}', '#{percent_right}', '#{suffix}')"
27: end
# File app/helpers/responses_helper.rb, line 66
66: def id_set(alt = 'true')
67: @left = @prev_left = '#item_left'
68: @right = @prev_right = '#item_right'
69: @last_left = @prev_last_left = '#last_percent_left'
70: @last_right = @prev_last_right = '#last_percent_right'
71: if alt == 'true'
72: @left += ALT
73: @right += ALT
74: @last_left += ALT
75: @last_right += ALT
76: else
77: @prev_left += ALT
78: @prev_right += ALT
79: @prev_last_left += ALT
80: @prev_last_right += ALT
81: end
82: end
# File app/helpers/responses_helper.rb, line 50
50: def js_for_prompt(prompt)
51: add = (prompt == @next) ? 2 : 1
52: [
53: escape_javascript(render(:partial => 'item', :locals => { :item => prompt.items[0], :prompt => prompt, :add => add, :side => 'left' })),
54: escape_javascript(render(:partial => 'item', :locals => { :item => prompt.items[1], :prompt => prompt, :add => add, :side => 'right' }))
55: ]
56: end
# File app/helpers/responses_helper.rb, line 58
58: def progress_step
59: @progress_step ||= (100 * (1 / @controller.refresh_question_after.to_f)).ceil
60: end
# File app/helpers/responses_helper.rb, line 37
37: def progress_style(plus = 0)
38: @progress_style ||= (width = progress_width) > 0 ? "width:#{width + plus.to_f/100}%" : ""
39: end
# File app/helpers/responses_helper.rb, line 62
62: def progress_width(add = 0)
63: (100 * (@controller.question_responses + add) / @controller.refresh_question_after.to_f).ceil
64: end
# File app/helpers/responses_helper.rb, line 45
45: def prompt_item_update(page, prompt, left_id, right_id, unlock = true)
46: left, right = (prompt && !prompt.items.empty?) ? js_for_prompt(prompt) : ['','']
47: page << "Prompt.update('#{left_id}', '#{right_id}', '#{left}', '#{right}', #{unlock})"
48: end
# File app/helpers/responses_helper.rb, line 41
41: def question_image
42: Param.flag_question_image? ? rounded(image_tag("#{@question.groups.first.code}.jpg")) : ''
43: end
# File app/helpers/responses_helper.rb, line 33
33: def response_question_select_tag
34: select_tag 'question', question_options_for_select, :onchange => remote_function(:url => { :action => :question }, :with => option_with_('question'))
35: end