class ActivesController < ApplicationController helper MemberHelper def index time_now = Time.now actives = Act.filter_by_categories.desc(:sign_start_date).page(OrbitHelper.params[:page_no]).per(OrbitHelper.page_data_count) acts = actives.collect do |a| title = ('' + a.title + '').html_safe if !a.sign_up.blank? and a.sign_start_date <= time_now and ( a.sign_end_date >= time_now or a.sign_end_date.nil? ) sign_up = ('' + t('act.sign_up') + '').html_safe elsif a.sign_up.blank? sign_up = t('act.sign_up_not_open') elsif a.sign_start_date > time_now sign_up = t('act.sign_up_not_yet') else sign_up = t('act.sign_up_overdue') end { "title" => title, "category" => a.category.title, "sign_start_date" => a.sign_start_date.strftime('%Y-%m-%d %H:%M'), "sign_end_date" => (a.sign_end_date ? a.sign_end_date.strftime('%Y-%m-%d %H:%M') : t(:no_deadline)), "act_start_date" => a.act_start_date.strftime('%Y-%m-%d %H:%M'), "act_end_date" => (a.act_end_date ? a.act_end_date.strftime('%Y-%m-%d %H:%M') : t(:no_deadline)), 'sign_up_time_range' => Act.time_range(a.sign_start_date, a.sign_end_date), 'sign_up_time_range' => Act.time_range(a.sign_start_date, a.sign_end_date), 'act_time_range' => Act.time_range(a.act_start_date, a.act_end_date), 'sign_up' => sign_up } end { "acts" => acts, "extras" => { "widget-title"=>t('act.active'), "th_title" => t('act.title'), "th_act_time_range" => t('act.act_time_range'), "th_sign_up_time_range" => t('act.sign_up_time_range'), "th_category" => t(:category), "th_sign_up" => t('act.sign_up') }, "total_pages" => actives.total_pages } end def show_privacy params = OrbitHelper.params act = Act.find_by(uid: params[:uid]) active_agreement = ActAgreement.first { 'act' => act, "active_agreement" => active_agreement } end def show_data time_now = Time.now params = OrbitHelper.params act = Act.find_by(uid: params[:uid]) if !act.sign_up.blank? and act.sign_start_date <= time_now and ( act.sign_end_date >= time_now or act.sign_end_date.nil? ) sign_up = ('' + t('act.sign_up') + '').html_safe elsif act.sign_up.blank? sign_up = t('act.sign_up_not_open') elsif act.sign_start_date > time_now sign_up = t('act.sign_up_not_yet') else sign_up = t('act.sign_up_overdue') end { 'act' => act, 'sign_up' => sign_up, 'time_now' => time_now, 'sign_up_time_range' => Act.time_range(act.sign_start_date, act.sign_end_date), 'act_time_range' => Act.time_range(act.act_start_date, act.act_end_date) } end def show params = OrbitHelper.params module_app = ModuleApp.where(:key => "active").first categories = module_app.categories act = Act.find_by(uid: params[:uid]) act_signup = ActSignup.new time_now = Time.now { "act" => act, "act_signup" => act_signup, "time_now" => time_now } end def create @act_signup = ActSignup.new(act_signup_params) if gotcha_valid? && @act_signup.save redirect_to "#{params[:referer_url]}/?method=signup_ok" else redirect_to "#{params[:referer_url]}", :notice => t('recaptcha.errors.verification_failed') end end def signup_ok end def act_signup_params params.require(:act_signup).permit! end end