From 1c1391c69e8ad0d6a583febd4e47a108bbb7da1e Mon Sep 17 00:00:00 2001 From: Stella Rouzi Date: Wed, 6 Aug 2014 21:14:00 +0300 Subject: [PATCH] enable style ClassAndModuleChildren --- .rubocop_todo.yml | 2 +- .../admin/callforpapers_controller.rb | 86 ++--- .../admin/conference_controller.rb | 324 +++++++++--------- .../admin/dietchoices_controller.rb | 24 +- .../admin/difficulty_levels_controller.rb | 42 +-- app/controllers/admin/emails_controller.rb | 22 +- .../admin/eventtypes_controller.rb | 30 +- app/controllers/admin/questions_controller.rb | 165 ++++----- app/controllers/admin/rooms_controller.rb | 30 +- .../admin/social_events_controller.rb | 22 +- .../admin/supporter_levels_controller.rb | 24 +- .../admin/supporters_controller.rb | 26 +- app/controllers/admin/tracks_controller.rb | 34 +- app/controllers/admin/venue_controller.rb | 50 +-- .../admin/volunteers_controller.rb | 42 +-- 15 files changed, 475 insertions(+), 448 deletions(-) diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index e453a5a8..5cb90241 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -8,7 +8,7 @@ # Offense count: 20 # Configuration parameters: EnforcedStyle, SupportedStyles. Style/ClassAndModuleChildren: - Enabled: false + Enabled: true # Offense count: 3 # Cop supports --auto-correct. diff --git a/app/controllers/admin/callforpapers_controller.rb b/app/controllers/admin/callforpapers_controller.rb index b97bebb0..f31eacb9 100644 --- a/app/controllers/admin/callforpapers_controller.rb +++ b/app/controllers/admin/callforpapers_controller.rb @@ -1,52 +1,54 @@ -class Admin::CallforpapersController < ApplicationController - before_filter :verify_organizer +module Admin + class CallforpapersController < ApplicationController + before_filter :verify_organizer - def show - @cfp = @conference.call_for_papers - if @cfp.nil? - @cfp = CallForPapers.new + def show + @cfp = @conference.call_for_papers + if @cfp.nil? + @cfp = CallForPapers.new + end end - end - def update - @cfp = @conference.call_for_papers - @cfp.assign_attributes(params[:call_for_papers]) - notify_on_schedule_public = @cfp.schedule_public_changed? && @cfp.schedule_public\ - && @conference.email_settings.send_on_call_for_papers_schedule_public\ - && !@conference.email_settings.call_for_papers_schedule_public_subject.blank?\ - && !@conference.email_settings.call_for_papers_schedule_public_template.blank? + def update + @cfp = @conference.call_for_papers + @cfp.assign_attributes(params[:call_for_papers]) + notify_on_schedule_public = @cfp.schedule_public_changed? && @cfp.schedule_public\ + && @conference.email_settings.send_on_call_for_papers_schedule_public\ + && !@conference.email_settings.call_for_papers_schedule_public_subject.blank?\ + && !@conference.email_settings.call_for_papers_schedule_public_template.blank? - notify_on_cfp_date_update = !@cfp.end_date.blank? && !@cfp.start_date.blank?\ - && (@cfp.start_date_changed? || @cfp.end_date_changed?)\ - && @conference.email_settings.send_on_call_for_papers_dates_updates\ - && !@conference.email_settings.call_for_papers_dates_updates_subject.blank?\ - && !@conference.email_settings.call_for_papers_dates_updates_template.blank? + notify_on_cfp_date_update = !@cfp.end_date.blank? && !@cfp.start_date.blank?\ + && (@cfp.start_date_changed? || @cfp.end_date_changed?)\ + && @conference.email_settings.send_on_call_for_papers_dates_updates\ + && !@conference.email_settings.call_for_papers_dates_updates_subject.blank?\ + && !@conference.email_settings.call_for_papers_dates_updates_template.blank? - if @cfp.update_attributes(params[:call_for_papers]) - Mailbot.delay.send_on_call_for_papers_dates_updates(@conference) if notify_on_cfp_date_update - Mailbot.delay.send_on_schedule_public(@conference) if notify_on_schedule_public - redirect_to(admin_conference_callforpapers_path( - id: @conference.short_title), - notice: 'Call for Papers was successfully updated.') - else - redirect_to(admin_conference_callforpapers_path( - id: @conference.short_title), - alert: "Updating call for papers failed. #{@cfp.errors.to_a.join(". ")}.") + if @cfp.update_attributes(params[:call_for_papers]) + Mailbot.delay.send_on_call_for_papers_dates_updates(@conference) if notify_on_cfp_date_update + Mailbot.delay.send_on_schedule_public(@conference) if notify_on_schedule_public + redirect_to(admin_conference_callforpapers_path( + id: @conference.short_title), + notice: 'Call for Papers was successfully updated.') + else + redirect_to(admin_conference_callforpapers_path( + id: @conference.short_title), + alert: "Updating call for papers failed. #{@cfp.errors.to_a.join(". ")}.") + end end - end - def create - @cfp = CallForPapers.new(params[:call_for_papers]) - if @cfp.valid? - @cfp.save - @conference.call_for_papers = @cfp - redirect_to(admin_conference_callforpapers_path( - id: @conference.short_title), - notice: 'Call for Papers was successfully created.') - else - redirect_to(admin_conference_callforpapers_path( - id: @conference.short_title), - alert: "Creating the call for papers failed. #{@cfp.errors.to_a.join(". ")}.") + def create + @cfp = CallForPapers.new(params[:call_for_papers]) + if @cfp.valid? + @cfp.save + @conference.call_for_papers = @cfp + redirect_to(admin_conference_callforpapers_path( + id: @conference.short_title), + notice: 'Call for Papers was successfully created.') + else + redirect_to(admin_conference_callforpapers_path( + id: @conference.short_title), + alert: "Creating the call for papers failed. #{@cfp.errors.to_a.join(". ")}.") + end end end end diff --git a/app/controllers/admin/conference_controller.rb b/app/controllers/admin/conference_controller.rb index 30ce6559..1f3ba8ee 100644 --- a/app/controllers/admin/conference_controller.rb +++ b/app/controllers/admin/conference_controller.rb @@ -1,175 +1,177 @@ -class Admin::ConferenceController < ApplicationController - before_filter :verify_organizer +module Admin + class ConferenceController < ApplicationController + before_filter :verify_organizer - def index - # Redirect to new form if there is no conference - if Conference.count == 0 - redirect_to new_admin_conference_path - return + def index + # Redirect to new form if there is no conference + if Conference.count == 0 + redirect_to new_admin_conference_path + return + end + + @total_user = User.count + @new_user = User.where('created_at > ?', current_user.last_sign_in_at).count + + @total_reg = Registration.count + @new_reg = Registration.where('created_at > ?', current_user.last_sign_in_at).count + + @total_submissions = Event.count + @new_submissions = Event.where('created_at > ?', current_user.last_sign_in_at).count + + @active_conferences = Conference.get_active_conferences_for_dashboard # pending or the last two + @deactive_conferences = Conference. + get_conferences_without_active_for_dashboard(@active_conferences) # conferences without active + @conferences = @active_conferences + @deactive_conferences + + @recent_users = User.limit(5).order(created_at: :desc) + @recent_events = Event.limit(5).order(created_at: :desc) + @recent_registrations = Registration.limit(5).order(created_at: :desc) + + @top_submitter = Conference.get_top_submitter + + @submissions = {} + @cfp_weeks = [0] + + @registrations = {} + @registration_weeks = [0] + + @conferences.each do |c| + # Event submissions over time chart + @submissions[c.short_title] = c.get_submissions_per_week + @cfp_weeks.push(@submissions[c.short_title].length) + + # Conference registrations over time chart + @registrations[c.short_title] = c.get_registrations_per_week + @registration_weeks.push(@registrations[c.short_title].length) + end + + @cfp_weeks = @cfp_weeks.max + @submissions = normalize_array_length(@submissions, @cfp_weeks) + @cfp_weeks = @cfp_weeks > 0 ? (1..@cfp_weeks).to_a : 1 + + @registration_weeks = @registration_weeks.max + @registrations = normalize_array_length(@registrations, @registration_weeks) + @registration_weeks = @registration_weeks > 0 ? (1..@registration_weeks).to_a : 1 + + @event_distribution = Conference.event_distribution + @user_distribution = Conference.user_distribution end - @total_user = User.count - @new_user = User.where('created_at > ?', current_user.last_sign_in_at).count - - @total_reg = Registration.count - @new_reg = Registration.where('created_at > ?', current_user.last_sign_in_at).count - - @total_submissions = Event.count - @new_submissions = Event.where('created_at > ?', current_user.last_sign_in_at).count - - @active_conferences = Conference.get_active_conferences_for_dashboard # pending or the last two - @deactive_conferences = Conference. - get_conferences_without_active_for_dashboard(@active_conferences) # conferences without active - @conferences = @active_conferences + @deactive_conferences - - @recent_users = User.limit(5).order(created_at: :desc) - @recent_events = Event.limit(5).order(created_at: :desc) - @recent_registrations = Registration.limit(5).order(created_at: :desc) - - @top_submitter = Conference.get_top_submitter - - @submissions = {} - @cfp_weeks = [0] - - @registrations = {} - @registration_weeks = [0] - - @conferences.each do |c| - # Event submissions over time chart - @submissions[c.short_title] = c.get_submissions_per_week - @cfp_weeks.push(@submissions[c.short_title].length) - - # Conference registrations over time chart - @registrations[c.short_title] = c.get_registrations_per_week - @registration_weeks.push(@registrations[c.short_title].length) + def new + @conference = Conference.new end - @cfp_weeks = @cfp_weeks.max - @submissions = normalize_array_length(@submissions, @cfp_weeks) - @cfp_weeks = @cfp_weeks > 0 ? (1..@cfp_weeks).to_a : 1 - - @registration_weeks = @registration_weeks.max - @registrations = normalize_array_length(@registrations, @registration_weeks) - @registration_weeks = @registration_weeks > 0 ? (1..@registration_weeks).to_a : 1 - - @event_distribution = Conference.event_distribution - @user_distribution = Conference.user_distribution - end - - def new - @conference = Conference.new - end - - def create - @conference = Conference.new(params[:conference]) - if @conference.valid? - @conference.save - redirect_to(admin_conference_path(id: @conference.short_title), - notice: 'Conference was successfully created.') - else - render action: 'new' - end - end - - def update - @conference = Conference.find_by(short_title: params[:id]) - short_title = @conference.short_title - @conference.assign_attributes(params[:conference]) - notify_on_conf_dates_updates = (@conference.start_date_changed? || @conference.end_date_changed?)\ - && @conference.email_settings.send_on_updated_conference_dates\ - && !@conference.email_settings.updated_conference_dates_subject.blank?\ - && @conference.email_settings.updated_conference_dates_template - - notify_on_conf_reg_dates_updates = (@conference.registration_start_date_changed? || @conference.registration_end_date_changed?)\ - && @conference.email_settings.send_on_updated_conference_registration_dates\ - && !@conference.email_settings.updated_conference_registration_dates_subject.blank?\ - && @conference.email_settings.updated_conference_registration_dates_template - - if @conference.update_attributes(params[:conference]) - Mailbot.delay.conference_date_update_mail(@conference) if notify_on_conf_dates_updates - Mailbot.delay.conference_registration_date_update_mail(@conference) if notify_on_conf_reg_dates_updates - redirect_to(edit_admin_conference_path(id: @conference.short_title), - notice: 'Conference was successfully updated.') - else - redirect_to(edit_admin_conference_path(id: short_title), - alert: 'Updating conference failed. ' \ - "#{@conference.errors.full_messages.join('. ')}.") - end - end - - def show - @conference = Conference.find_by(short_title: params[:id]) - - # Overview and since last login information - @total_reg = @conference.registrations.count - @new_reg = @conference.registrations.where('created_at > ?', current_user.last_sign_in_at).count - - @total_submissions = @conference.events.count - @new_submissions = @conference.events. - where('created_at > ?', current_user.last_sign_in_at).count - - @program_length = @conference.current_program_hours - @new_program_length = @conference.new_program_hours(current_user.last_sign_in_at) - - # Step by step list - @conference_progress = @conference.get_status - - # Line charts - @registrations = { @conference.short_title => @conference.get_registrations_per_week } - @registration_weeks = [0] - @registration_weeks.push(@registrations[@conference.short_title].length) - - @registration_weeks = @registration_weeks.max - @registrations = normalize_array_length(@registrations, @registration_weeks) - @registration_weeks = @registration_weeks > 0 ? (1..@registration_weeks).to_a : 1 - - @submissions = Conference.get_event_state_line_colors - - @submissions_data = {} - @submissions_data = @conference.get_submissions_data - @cfp_weeks = 0 - if @submissions_data['Weeks'] - @cfp_weeks = @submissions_data['Weeks'] - @submissions_data = @submissions_data.except('Weeks') + def create + @conference = Conference.new(params[:conference]) + if @conference.valid? + @conference.save + redirect_to(admin_conference_path(id: @conference.short_title), + notice: 'Conference was successfully created.') + else + render action: 'new' + end end - # Doughnut charts - @event_type_distribution = @conference.event_type_distribution - @event_type_distribution_confirmed = @conference.event_type_distribution(:confirmed) + def update + @conference = Conference.find_by(short_title: params[:id]) + short_title = @conference.short_title + @conference.assign_attributes(params[:conference]) + notify_on_conf_dates_updates = (@conference.start_date_changed? || @conference.end_date_changed?)\ + && @conference.email_settings.send_on_updated_conference_dates\ + && !@conference.email_settings.updated_conference_dates_subject.blank?\ + && @conference.email_settings.updated_conference_dates_template - @difficulty_levels_distribution = @conference.difficulty_levels_distribution - @difficulty_levels_distribution_confirmed = @conference. - difficulty_levels_distribution(:confirmed) + notify_on_conf_reg_dates_updates = (@conference.registration_start_date_changed? || @conference.registration_end_date_changed?)\ + && @conference.email_settings.send_on_updated_conference_registration_dates\ + && !@conference.email_settings.updated_conference_registration_dates_subject.blank?\ + && @conference.email_settings.updated_conference_registration_dates_template - @tracks_distribution = @conference.tracks_distribution - @tracks_distribution_confirmed = @conference.tracks_distribution(:confirmed) - - # Recent actions information - @recent_events = @conference.events.limit(5).order(created_at: :desc) - @recent_registrations = @conference.registrations.limit(5).order(created_at: :desc) - - @top_submitter = @conference.get_top_submitter - - # get targets - @registration_targets = @conference.get_targets(Target.units[:registrations]) - @submission_targets = @conference.get_targets(Target.units[:submissions]) - @program_minutes_targets = @conference.get_targets(Target.units[:program_minutes]) - - # get campaigns - @campaigns = @conference.get_campaigns - - respond_to do |format| - format.html - format.json { render json: @conference.to_json } + if @conference.update_attributes(params[:conference]) + Mailbot.delay.conference_date_update_mail(@conference) if notify_on_conf_dates_updates + Mailbot.delay.conference_registration_date_update_mail(@conference) if notify_on_conf_reg_dates_updates + redirect_to(edit_admin_conference_path(id: @conference.short_title), + notice: 'Conference was successfully updated.') + else + redirect_to(edit_admin_conference_path(id: short_title), + alert: 'Updating conference failed. ' \ + "#{@conference.errors.full_messages.join('. ')}.") + end end - end - def edit - @conferences = Conference.all - @conference = Conference.find_by(short_title: params[:id]) - respond_to do |format| - format.html - format.json { render json: @conference.to_json } + def show + @conference = Conference.find_by(short_title: params[:id]) + + # Overview and since last login information + @total_reg = @conference.registrations.count + @new_reg = @conference.registrations.where('created_at > ?', current_user.last_sign_in_at).count + + @total_submissions = @conference.events.count + @new_submissions = @conference.events. + where('created_at > ?', current_user.last_sign_in_at).count + + @program_length = @conference.current_program_hours + @new_program_length = @conference.new_program_hours(current_user.last_sign_in_at) + + # Step by step list + @conference_progress = @conference.get_status + + # Line charts + @registrations = { @conference.short_title => @conference.get_registrations_per_week } + @registration_weeks = [0] + @registration_weeks.push(@registrations[@conference.short_title].length) + + @registration_weeks = @registration_weeks.max + @registrations = normalize_array_length(@registrations, @registration_weeks) + @registration_weeks = @registration_weeks > 0 ? (1..@registration_weeks).to_a : 1 + + @submissions = Conference.get_event_state_line_colors + + @submissions_data = {} + @submissions_data = @conference.get_submissions_data + @cfp_weeks = 0 + if @submissions_data['Weeks'] + @cfp_weeks = @submissions_data['Weeks'] + @submissions_data = @submissions_data.except('Weeks') + end + + # Doughnut charts + @event_type_distribution = @conference.event_type_distribution + @event_type_distribution_confirmed = @conference.event_type_distribution(:confirmed) + + @difficulty_levels_distribution = @conference.difficulty_levels_distribution + @difficulty_levels_distribution_confirmed = @conference. + difficulty_levels_distribution(:confirmed) + + @tracks_distribution = @conference.tracks_distribution + @tracks_distribution_confirmed = @conference.tracks_distribution(:confirmed) + + # Recent actions information + @recent_events = @conference.events.limit(5).order(created_at: :desc) + @recent_registrations = @conference.registrations.limit(5).order(created_at: :desc) + + @top_submitter = @conference.get_top_submitter + + # get targets + @registration_targets = @conference.get_targets(Target.units[:registrations]) + @submission_targets = @conference.get_targets(Target.units[:submissions]) + @program_minutes_targets = @conference.get_targets(Target.units[:program_minutes]) + + # get campaigns + @campaigns = @conference.get_campaigns + + respond_to do |format| + format.html + format.json { render json: @conference.to_json } + end + end + + def edit + @conferences = Conference.all + @conference = Conference.find_by(short_title: params[:id]) + respond_to do |format| + format.html + format.json { render json: @conference.to_json } + end end end end diff --git a/app/controllers/admin/dietchoices_controller.rb b/app/controllers/admin/dietchoices_controller.rb index cf315a40..043a6577 100644 --- a/app/controllers/admin/dietchoices_controller.rb +++ b/app/controllers/admin/dietchoices_controller.rb @@ -1,16 +1,18 @@ -class Admin::DietchoicesController < ApplicationController - before_filter :verify_organizer +module Admin + class DietchoicesController < ApplicationController + before_filter :verify_organizer - def show - render :diets_list - end + def show + render :diets_list + end - def update - begin - @conference.update_attributes!(params[:conference]) - redirect_to(admin_conference_dietary_list_path(conference_id: @conference.short_title), notice: 'Dietary choices were successfully updated.') - rescue => e - redirect_to(admin_conference_dietary_list_path(conference_id: @conference.short_title), alert: "Dietary choices update failed: #{e.message}") + def update + begin + @conference.update_attributes!(params[:conference]) + redirect_to(admin_conference_dietary_list_path(conference_id: @conference.short_title), notice: 'Dietary choices were successfully updated.') + rescue => e + redirect_to(admin_conference_dietary_list_path(conference_id: @conference.short_title), alert: "Dietary choices update failed: #{e.message}") + end end end end diff --git a/app/controllers/admin/difficulty_levels_controller.rb b/app/controllers/admin/difficulty_levels_controller.rb index 51aacd7f..f32dc8d9 100644 --- a/app/controllers/admin/difficulty_levels_controller.rb +++ b/app/controllers/admin/difficulty_levels_controller.rb @@ -1,29 +1,31 @@ -class Admin::DifficultyLevelsController < ApplicationController - before_filter :verify_organizer - - def index - @conference = Conference.find_by(short_title: params[:conference_id]) - end +module Admin + class DifficultyLevelsController < ApplicationController + before_filter :verify_organizer - def update - if @conference.update_attributes(params[:conference]) - if !(@conference.difficulty_levels.count > 0) && @conference.use_difficulty_levels == true - begin - @conference.use_difficulty_levels = false - @conference.save! - flash[:error] = "You cannot enable the usage of difficulty levels without having set any levels." + def index + @conference = Conference.find_by(short_title: params[:conference_id]) + end + + def update + if @conference.update_attributes(params[:conference]) + if !(@conference.difficulty_levels.count > 0) && @conference.use_difficulty_levels == true + begin + @conference.use_difficulty_levels = false + @conference.save! + flash[:error] = "You cannot enable the usage of difficulty levels without having set any levels." + redirect_to(admin_conference_difficulty_levels_path(conference_id: @conference.short_title)) + rescue ActiveRecord::RecordInvalid + flash[:error] = "Something went wrong. Difficulty Levels update failed." + redirect_to(admin_conference_difficulty_levels_path(conference_id: @conference.short_title)) + end + else + flash[:notice] = "Difficulty Levels were successfully updated." redirect_to(admin_conference_difficulty_levels_path(conference_id: @conference.short_title)) - rescue ActiveRecord::RecordInvalid - flash[:error] = "Something went wrong. Difficulty Levels update failed." - redirect_to(admin_conference_difficulty_levels_path(conference_id: @conference.short_title)) end else - flash[:notice] = "Difficulty Levels were successfully updated." + flash[:error] = "Difficulty Levels update failed." redirect_to(admin_conference_difficulty_levels_path(conference_id: @conference.short_title)) end - else - flash[:error] = "Difficulty Levels update failed." - redirect_to(admin_conference_difficulty_levels_path(conference_id: @conference.short_title)) end end end diff --git a/app/controllers/admin/emails_controller.rb b/app/controllers/admin/emails_controller.rb index dbdfc44d..4ce4eede 100644 --- a/app/controllers/admin/emails_controller.rb +++ b/app/controllers/admin/emails_controller.rb @@ -1,14 +1,16 @@ -class Admin::EmailsController < ApplicationController - before_filter :verify_organizer +module Admin + class Admin::EmailsController < ApplicationController + before_filter :verify_organizer - def update - @conference.email_settings.update_attributes(params[:email_settings]) - redirect_to(admin_conference_emails_path( - @conference.short_title), - notice: 'Settings have been successfully updated.') - end + def update + @conference.email_settings.update_attributes(params[:email_settings]) + redirect_to(admin_conference_emails_path( + @conference.short_title), + notice: 'Settings have been successfully updated.') + end - def index - @settings = @conference.email_settings + def index + @settings = @conference.email_settings + end end end diff --git a/app/controllers/admin/eventtypes_controller.rb b/app/controllers/admin/eventtypes_controller.rb index 286e8f75..616b4318 100644 --- a/app/controllers/admin/eventtypes_controller.rb +++ b/app/controllers/admin/eventtypes_controller.rb @@ -1,18 +1,20 @@ -class Admin::EventtypesController < ApplicationController - before_filter :verify_organizer +module Admin + class EventtypesController < ApplicationController + before_filter :verify_organizer - def show - render :eventtypes - end + def show + render :eventtypes + end - def update - @conference.update_attributes!(params[:conference]) - redirect_to(admin_conference_eventtypes_path( - conference_id: @conference.short_title), - notice: 'Event types were successfully updated.') - rescue => e - redirect_to(admin_conference_eventtypes_path( - conference_id: @conference.short_title), - alert: "Event types update failed: #{e.message}") + def update + @conference.update_attributes!(params[:conference]) + redirect_to(admin_conference_eventtypes_path( + conference_id: @conference.short_title), + notice: 'Event types were successfully updated.') + rescue => e + redirect_to(admin_conference_eventtypes_path( + conference_id: @conference.short_title), + alert: "Event types update failed: #{e.message}") + end end end diff --git a/app/controllers/admin/questions_controller.rb b/app/controllers/admin/questions_controller.rb index 1e9e4551..240909cd 100644 --- a/app/controllers/admin/questions_controller.rb +++ b/app/controllers/admin/questions_controller.rb @@ -1,96 +1,97 @@ -class Admin::QuestionsController < ApplicationController - before_filter :verify_organizer +module Admin + class QuestionsController < ApplicationController + before_filter :verify_organizer - def index - @conference = Conference.find_by(short_title: params[:conference_id]) - @questions = Question.where(global: true).all | Question.where(conference_id: @conference.id) - @questions_conference = @conference.questions - @new_question = @conference.questions.new - end + def index + @conference = Conference.find_by(short_title: params[:conference_id]) + @questions = Question.where(global: true).all | Question.where(conference_id: @conference.id) + @questions_conference = @conference.questions + @new_question = @conference.questions.new + end - def new - @conference = Conference.find_by(short_title: params[:conference_id]) - @new_question = @conference.questions.new - end + def new + @conference = Conference.find_by(short_title: params[:conference_id]) + @new_question = @conference.questions.new + end - def create - @conference = Conference.find_by(short_title: params[:conference_id]) - @question = @conference.questions.new(params[:question]) - @question.conference_id = @conference.id + def create + @conference = Conference.find_by(short_title: params[:conference_id]) + @question = @conference.questions.new(params[:question]) + @question.conference_id = @conference.id - respond_to do |format| - if @conference.save - format.html { redirect_to admin_conference_questions_path, notice: 'Question was successfully created.' } - else - flash[:error] = "Oops, couldn't save. Question and answer(s) have titles?" - format.html { redirect_to admin_conference_questions_path } + respond_to do |format| + if @conference.save + format.html { redirect_to admin_conference_questions_path, notice: 'Question was successfully created.' } + else + flash[:error] = "Oops, couldn't save. Question and answer(s) have titles?" + format.html { redirect_to admin_conference_questions_path } + end end - end - end - - # GET questions/1/edit - def edit - @conference = Conference.find_by(short_title: params[:conference_id]) - @question = Question.find(params[:id]) - - if @question.global == true && !has_role?(current_user, "Admin") - redirect_to(admin_conference_questions_path(conference_id: @conference.short_title), alert: "Sorry, you cannot edit global questions. Create a new one.") end - end - # PUT questions/1 - def update - - @conference = Conference.find_by(short_title: params[:conference_id]) - @question = Question.find(params[:id]) - - if @question.update_attributes(params[:question]) - redirect_to(admin_conference_questions_path(conference_id: @conference.short_title), notice: "Question '#{@question.title}' for #{@conference.short_title} successfully updated.") - else - redirect_to(admin_conference_questions_path(conference_id: @conference.short_title), notice: "Update of questions for #{@conference.short_title} failed.") - end - end - - # Update questions used for the conference - def update_conference - @conference = Conference.find_by(short_title: params[:conference_id]) - - if @conference.update_attributes(params[:conference]) - redirect_to(admin_conference_questions_path(conference_id: @conference.short_title), notice: "Questions for #{@conference.short_title} successfully updated.") - else - redirect_to(admin_conference_questions_path(conference_id: @conference.short_title), notice: "Update of questions for #{@conference.short_title} failed.") - end - end - - # DELETE questions/1 - def destroy - if has_role?(current_user, "Admin") + # GET questions/1/edit + def edit + @conference = Conference.find_by(short_title: params[:conference_id]) @question = Question.find(params[:id]) - # Do not delete global questions - if @question.global == false - - # Delete question and its answers - begin - Question.transaction do - - @question.delete - @question.answers.each do |a| - a.delete - end - flash[:notice] = "Deleted question: #{@question.title} and its answers: #{@question.answers.map {|a| a.title}.join ','}" - end - rescue ActiveRecord::RecordInvalid - flash[:error] = "Could not delete question." - end - else - flash[:error] = "You cannot delete global questions." + if @question.global == true && !has_role?(current_user, "Admin") + redirect_to(admin_conference_questions_path(conference_id: @conference.short_title), alert: "Sorry, you cannot edit global questions. Create a new one.") end - else - flash[:error] = "You must be an admin to delete a question." end - @questions = Question.where(global: true).all | Question.where(conference_id: @conference.id) - @questions_conference = @conference.questions + # PUT questions/1 + def update + @conference = Conference.find_by(short_title: params[:conference_id]) + @question = Question.find(params[:id]) + + if @question.update_attributes(params[:question]) + redirect_to(admin_conference_questions_path(conference_id: @conference.short_title), notice: "Question '#{@question.title}' for #{@conference.short_title} successfully updated.") + else + redirect_to(admin_conference_questions_path(conference_id: @conference.short_title), notice: "Update of questions for #{@conference.short_title} failed.") + end + end + + # Update questions used for the conference + def update_conference + @conference = Conference.find_by(short_title: params[:conference_id]) + + if @conference.update_attributes(params[:conference]) + redirect_to(admin_conference_questions_path(conference_id: @conference.short_title), notice: "Questions for #{@conference.short_title} successfully updated.") + else + redirect_to(admin_conference_questions_path(conference_id: @conference.short_title), notice: "Update of questions for #{@conference.short_title} failed.") + end + end + + # DELETE questions/1 + def destroy + if has_role?(current_user, "Admin") + @question = Question.find(params[:id]) + + # Do not delete global questions + if @question.global == false + + # Delete question and its answers + begin + Question.transaction do + + @question.delete + @question.answers.each do |a| + a.delete + end + flash[:notice] = "Deleted question: #{@question.title} and its answers: #{@question.answers.map {|a| a.title}.join ','}" + end + rescue ActiveRecord::RecordInvalid + flash[:error] = "Could not delete question." + end + else + flash[:error] = "You cannot delete global questions." + end + else + flash[:error] = "You must be an admin to delete a question." + end + + @questions = Question.where(global: true).all | Question.where(conference_id: @conference.id) + @questions_conference = @conference.questions + end end end diff --git a/app/controllers/admin/rooms_controller.rb b/app/controllers/admin/rooms_controller.rb index 00342258..ea2cd3f5 100644 --- a/app/controllers/admin/rooms_controller.rb +++ b/app/controllers/admin/rooms_controller.rb @@ -1,19 +1,21 @@ -class Admin::RoomsController < ApplicationController - before_filter :verify_organizer +module Admin + class RoomsController < ApplicationController + before_filter :verify_organizer - def show - render :rooms_list - end + def show + render :rooms_list + end - def update - if @conference.update_attributes(params[:conference]) - redirect_to(admin_conference_rooms_path( - conference_id: @conference.short_title), - notice: 'Rooms were successfully updated.') - else - redirect_to(admin_conference_rooms_path( - conference_id: @conference.short_title), - notice: 'Room update failed.') + def update + if @conference.update_attributes(params[:conference]) + redirect_to(admin_conference_rooms_path( + conference_id: @conference.short_title), + notice: 'Rooms were successfully updated.') + else + redirect_to(admin_conference_rooms_path( + conference_id: @conference.short_title), + notice: 'Room update failed.') + end end end end diff --git a/app/controllers/admin/social_events_controller.rb b/app/controllers/admin/social_events_controller.rb index b11b38f4..c3f82ee8 100644 --- a/app/controllers/admin/social_events_controller.rb +++ b/app/controllers/admin/social_events_controller.rb @@ -1,15 +1,17 @@ -class Admin::SocialEventsController < ApplicationController - before_filter :verify_organizer +module Admin + class SocialEventsController < ApplicationController + before_filter :verify_organizer - def show - render :social_events_list - end + def show + render :social_events_list + end - def update - if @conference.update_attributes(params[:conference]) - redirect_to(admin_conference_social_events_path(conference_id: @conference.short_title), notice: 'Social events were successfully updated.') - else - redirect_to(admin_conference_social_events_path(conference_id: @conference.short_title), notice: 'Social events update failed.') + def update + if @conference.update_attributes(params[:conference]) + redirect_to(admin_conference_social_events_path(conference_id: @conference.short_title), notice: 'Social events were successfully updated.') + else + redirect_to(admin_conference_social_events_path(conference_id: @conference.short_title), notice: 'Social events update failed.') + end end end end diff --git a/app/controllers/admin/supporter_levels_controller.rb b/app/controllers/admin/supporter_levels_controller.rb index 33218920..bc799c3d 100644 --- a/app/controllers/admin/supporter_levels_controller.rb +++ b/app/controllers/admin/supporter_levels_controller.rb @@ -1,16 +1,18 @@ -class Admin::SupporterLevelsController < ApplicationController - before_filter :verify_organizer +module Admin + class SupporterLevelsController < ApplicationController + before_filter :verify_organizer - def show - render :supporter_levels - end + def show + render :supporter_levels + end - def update - begin - @conference.update_attributes!(params[:conference]) - redirect_to(admin_conference_supporter_levels_path(conference_id: @conference.short_title), notice: 'Supporter levels were successfully updated.') - rescue => e - redirect_to(admin_conference_supporter_levels_path(conference_id: @conference.short_title), alert: "Supporter levels update failed: #{e.message}") + def update + begin + @conference.update_attributes!(params[:conference]) + redirect_to(admin_conference_supporter_levels_path(conference_id: @conference.short_title), notice: 'Supporter levels were successfully updated.') + rescue => e + redirect_to(admin_conference_supporter_levels_path(conference_id: @conference.short_title), alert: "Supporter levels update failed: #{e.message}") + end end end end diff --git a/app/controllers/admin/supporters_controller.rb b/app/controllers/admin/supporters_controller.rb index a114daca..2ee69e6c 100644 --- a/app/controllers/admin/supporters_controller.rb +++ b/app/controllers/admin/supporters_controller.rb @@ -1,16 +1,18 @@ -class Admin::SupportersController < ApplicationController - before_filter :verify_organizer +module Admin + class SupportersController < ApplicationController + before_filter :verify_organizer - def index - respond_to do |format| - format.html - format.json { render json: DatatableSupporters.new(@conference.supporter_registrations, view_context) } + def index + respond_to do |format| + format.html + format.json { render json: DatatableSupporters.new(@conference.supporter_registrations, view_context) } + end + end + + def create + params[:supporter_registration][:conference_id] = @conference.id + SupporterRegistration.create!(params[:supporter_registration]) + redirect_to(admin_conference_supporters_path(conference_id: @conference.short_title), notice: "Supporter added") end end - - def create - params[:supporter_registration][:conference_id] = @conference.id - SupporterRegistration.create!(params[:supporter_registration]) - redirect_to(admin_conference_supporters_path(conference_id: @conference.short_title), notice: "Supporter added") - end end diff --git a/app/controllers/admin/tracks_controller.rb b/app/controllers/admin/tracks_controller.rb index 102cdd68..284d7165 100644 --- a/app/controllers/admin/tracks_controller.rb +++ b/app/controllers/admin/tracks_controller.rb @@ -1,22 +1,24 @@ -class Admin::TracksController < ApplicationController - before_filter :verify_organizer +module Admin + class TracksController < ApplicationController + before_filter :verify_organizer - def show - respond_to do |format| - format.html { render :tracks_list } - format.json { render json: @conference.tracks.to_json } + def show + respond_to do |format| + format.html { render :tracks_list } + format.json { render json: @conference.tracks.to_json } + end end - end - def update - if @conference.update_attributes(params[:conference]) - redirect_to(admin_conference_tracks_path( - conference_id: @conference.short_title), - notice: 'Tracks were successfully updated.') - else - redirect_to(admin_conference_tracks_path( - conference_id: @conference.short_title), - notice: 'Tracks update failed.') + def update + if @conference.update_attributes(params[:conference]) + redirect_to(admin_conference_tracks_path( + conference_id: @conference.short_title), + notice: 'Tracks were successfully updated.') + else + redirect_to(admin_conference_tracks_path( + conference_id: @conference.short_title), + notice: 'Tracks update failed.') + end end end end diff --git a/app/controllers/admin/venue_controller.rb b/app/controllers/admin/venue_controller.rb index 583e3c5f..bb32b913 100644 --- a/app/controllers/admin/venue_controller.rb +++ b/app/controllers/admin/venue_controller.rb @@ -1,30 +1,32 @@ -class Admin::VenueController < ApplicationController - before_filter :verify_organizer +module Admin + class VenueController < ApplicationController + before_filter :verify_organizer - def index - end + def index + end - def update - @venue = @conference.venue - @venue.assign_attributes(params[:venue]) - venue_notify = (@venue.name_changed? || @venue.address_changed?) && - (!@venue.name.blank? && !@venue.address.blank?) && - (@conference.email_settings.send_on_venue_update && - !@conference.email_settings.venue_update_subject.blank? && - @conference.email_settings.venue_update_template) + def update + @venue = @conference.venue + @venue.assign_attributes(params[:venue]) + venue_notify = (@venue.name_changed? || @venue.address_changed?) && + (!@venue.name.blank? && !@venue.address.blank?) && + (@conference.email_settings.send_on_venue_update && + !@conference.email_settings.venue_update_subject.blank? && + @conference.email_settings.venue_update_template) - if @venue.update_attributes(params[:venue]) - Mailbot.delay.send_email_on_venue_update(@conference) if venue_notify - redirect_to(admin_conference_venue_info_path(conference_id: @conference.short_title), - notice: 'Venue was successfully updated.') - else - redirect_to(admin_conference_venue_info_path(conference_id: @conference.short_title), - notice: 'Venue Updation Failed!') + if @venue.update_attributes(params[:venue]) + Mailbot.delay.send_email_on_venue_update(@conference) if venue_notify + redirect_to(admin_conference_venue_info_path(conference_id: @conference.short_title), + notice: 'Venue was successfully updated.') + else + redirect_to(admin_conference_venue_info_path(conference_id: @conference.short_title), + notice: 'Venue Updation Failed!') + end + end + + def show + @venue = @conference.venue + render :venue_info end end - - def show - @venue = @conference.venue - render :venue_info - end end diff --git a/app/controllers/admin/volunteers_controller.rb b/app/controllers/admin/volunteers_controller.rb index afc688c9..5713845f 100644 --- a/app/controllers/admin/volunteers_controller.rb +++ b/app/controllers/admin/volunteers_controller.rb @@ -1,25 +1,27 @@ -class Admin::VolunteersController < ApplicationController - def index - @conference = Conference.find_by(short_title: params[:conference_id]) - render :index - end - - def show - @conference = Conference.find_by(short_title: params[:conference_id]) - if @conference.use_vpositions - @volunteers = @conference.registrations.joins(:vchoices).uniq - else - @volunteers = @conference.registrations.where(volunteer: true) +module Admin + class VolunteersController < ApplicationController + def index + @conference = Conference.find_by(short_title: params[:conference_id]) + render :index end - end - def update - @conference = Conference.find_by(short_title: params[:conference_id]) - begin - @conference.update_attributes!(params[:conference]) - redirect_to(admin_conference_volunteers_info_path(conference_id: params[:conference_id]), notice: "Volunteering options were successfully updated.") - rescue => e - redirect_to(admin_conference_volunteers_info_path(conference_id: params[:conference_id]), alert: "Volunteering options update failed: #{e.message}") + def show + @conference = Conference.find_by(short_title: params[:conference_id]) + if @conference.use_vpositions + @volunteers = @conference.registrations.joins(:vchoices).uniq + else + @volunteers = @conference.registrations.where(volunteer: true) + end + end + + def update + @conference = Conference.find_by(short_title: params[:conference_id]) + begin + @conference.update_attributes!(params[:conference]) + redirect_to(admin_conference_volunteers_info_path(conference_id: params[:conference_id]), notice: "Volunteering options were successfully updated.") + rescue => e + redirect_to(admin_conference_volunteers_info_path(conference_id: params[:conference_id]), alert: "Volunteering options update failed: #{e.message}") + end end end end