class ArithmeticController < ApplicationController def create_sum m=rand 10 n=rand 10 answer=m+n choices=[answer] while choices.size < get_nitems choices << answer/2 + rand(2*answer) choices.uniq! end sum="#{m} + #{n}" [sum,answer,choices.sort] end def designers ' Co-Designer:Harshendu Shridhar' end def start_choices session[:start_choices] ||= [] end def first_time session[:correct]=session[:wrong]=0 session[:displayed]=nil if params[:id] && (params[:id].to_i > 0) session[:nitems] = params[:id].to_i else session[:nitems] ||= 5 end session[:problem], session[:answer],cho = create_sum session[:start_choices]=cho.collect {|n| n.to_s} redirect_to :action => "index" end def filechoices? false end # def get_title # 'please add' # end def get_problem session[:problem] ||= 'default value' end def extras @problem = get_problem @displayed=get_displayed correct=translate('correct') wrong=translate('wrong') @title= "#{get_correct} #{correct}, #{get_wrong} #{wrong}" end def selected(str) if str==session[:answer].to_s session[:displayed]=translate('correct')+'!' session[:correct]=get_correct+1 session[:problem], session[:answer], cho= create_sum session[:start_choices]= cho.collect {|n| n.to_s} else session[:displayed]=translate('wrong') session[:wrong]=get_wrong+1 end end end