resources :registrations

This commit is contained in:
Stella Rouzi 2014-05-15 20:30:01 +03:00
parent 045e434f3d
commit 7490316a5b
5 changed files with 15 additions and 20 deletions

View file

@ -1,7 +1,7 @@
class Admin::RegistrationsController < ApplicationController
before_filter :verify_organizer
def show
def index
session[:return_to] ||= request.referer
@pdf_filename = "#{@conference.title}.pdf"
@registrations = @conference.registrations.includes(:person).order("registrations.created_at ASC")
@ -18,8 +18,8 @@ class Admin::RegistrationsController < ApplicationController
@registration.update_attribute(:"#{field}",1)
end
redirect_to admin_conference_registrations_path(@conference.short_title, @registration)
flash[:notice] = "Updated '#{params[:view_field]}' for #{(Person.where("id = ?", @registration.person_id).first).email}"
redirect_to admin_conference_registrations_path(@conference.short_title)
flash[:notice] = "Updated '#{params[:view_field]}' => #{@registration.attended} for #{(Person.where("id = ?", @registration.person_id).first).email}"
end
def edit
@ -28,8 +28,7 @@ class Admin::RegistrationsController < ApplicationController
end
def update
reg_id = params[:format]
@registration = @conference.registrations.where("id = ?", reg_id).first
@registration = @conference.registrations.where("id = ?", params[:id]).first
@person = Person.where("id = ?", @registration.person_id).first
begin
@person.update_attributes!(params[:registration][:person_attributes])
@ -111,7 +110,7 @@ class Admin::RegistrationsController < ApplicationController
end
end
def delete
def destroy
if has_role?(current_user, "Admin")
registration = @conference.registrations.where(:id => params[:id]).first
person = Person.where("id = ?", registration.person_id).first

View file

@ -5,7 +5,7 @@
%br
.row
.col-md-12
= semantic_form_for(@registration, :url => admin_conference_registrations_edit_path(@conference.short_title, @registration.id), :html => { :method => :put }) do |f|
= semantic_form_for(@registration, :url => admin_conference_registration_path(@conference.short_title, @registration)) do |f|
= f.inputs "Personal Information" do
= f.fields_for :person do |p|
= p.input :first_name, :as => :string

View file

@ -7,7 +7,7 @@
= "(#{@registrations.length})"
= " - Attended (#{@attended})"
.btn-group.pull-right
= link_to "New", admin_conference_registrations_new_path(@conference.short_title), :class => "btn btn-default"
= link_to "New", new_admin_conference_registration_path(@conference.short_title), :class => "btn btn-default"
= link_to "Export PDF", admin_conference_registrations_path(@conference.short_title, :format => :pdf), :class => "btn btn-default"
= link_to "Export XLS", {:format => :xlsx}, :class => "btn btn-default"
%table.table.table-bordered.table-striped.table-hover#registrations
@ -35,10 +35,10 @@
= registration.supporter_level.title
-elsif field == 'attended'
= link_to "#{registration.send(field.to_sym)}", admin_conference_registrations_change_field_path(@conference.short_title, :id => registration.id, :view_field => "#{field}"), :method => :put, ":#{field}" => registration.send(field.to_sym), :class => "btn btn-success"
= link_to "#{registration.send(field.to_sym)}", admin_conference_registrations_change_field_path(@conference.short_title, :id => registration.id, :view_field => "#{field}"), :method => :patch, ":#{field}" => registration.send(field.to_sym), :class => "btn btn-success"
-elsif (registration.send(field.to_sym).class == TrueClass || registration.send(field.to_sym).class == FalseClass)
= link_to "#{registration.send(field.to_sym)}", admin_conference_registrations_change_field_path(@conference.short_title, :id => registration.id, :view_field => "#{field}"), :method => :put, ":#{field}" => registration.send(field.to_sym)
= link_to "#{registration.send(field.to_sym)}", admin_conference_registrations_change_field_path(@conference.short_title, :id => registration.id, :view_field => "#{field}"), :method => :patch, ":#{field}" => registration.send(field.to_sym)
- elsif field == 'arrival' || field == 'departure'
= registration.send(field.to_sym).strftime("%d %b %H:%M") if registration.send(field.to_sym)
@ -49,10 +49,10 @@
= link_to "Questions", "javascript: void(0)", :class => "questions btn btn-success", :id => counter, :onclick => "toggle('row#{counter}')"
%td
= link_to "Edit", admin_conference_registrations_edit_path(@conference.short_title, :id => registration.id), :method => :get, :class => "btn btn-primary"
= link_to "Edit", edit_admin_conference_registration_path(@conference.short_title, :id => registration), :method => :get, :class => "btn btn-primary"
%td
= link_to "Delete", admin_conference_registrations_path(@conference.short_title, :id => registration.id), :method => :delete, :class => "btn btn-danger", :confirm => "Really delete registration for #{registration.public_name} #{registration.email}?"
= link_to "Delete", admin_conference_registration_path(@conference.short_title, registration), :method => :delete, :class => "btn btn-danger", data: {confirm: "Really delete registration for #{registration.public_name} #{registration.email}?"}
%tr{:id => "row#{counter}", :style=>"display:none;"}
%td{:colspan=>13}
= render :partial => "questions", :locals => {:registration => registration}

View file

@ -4,7 +4,7 @@
Create new account and registration
.row
.col-md-12
= semantic_form_for(@registration, :url => admin_conference_registrations_new_path(@conference.short_title), :html => { :method => :put }) do |f|
= semantic_form_for(@registration, :url => admin_conference_registrations_path(@conference.short_title)) do |f|
= f.inputs "Your details" do
= f.fields_for @person do |p|

View file

@ -9,13 +9,6 @@ Osem::Application.routes.draw do
get "/schedule" => "schedule#show"
patch "/schedule" => "schedule#update"
get "/stats" => "stats#index"
get "/registrations" => "registrations#show"
get "/registrations/new" => "registrations#new"
patch "/registrations/new" => "registrations#create"
get "/registrations/edit" => "registrations#edit"
patch "/registrations/edit" => "registrations#update"
delete "/registrations" => "registrations#delete"
patch "/registrations/change_field" => "registrations#change_field"
get "/venue" => "venue#show", :as => "venue_info"
patch "/venue" => "venue#update", :as => "venue_update"
get "/dietary_choices" => "dietchoices#show", :as => "dietary_list"
@ -23,6 +16,9 @@ Osem::Application.routes.draw do
get "/volunteers_list" => "volunteers#show"
get "/volunteers" => "volunteers#index", :as => "volunteers_info"
patch "/volunteers" => "volunteers#update", :as => "volunteers_update"
patch "/registrations/change_field" => "registrations#change_field"
resources :registrations
resources :difficulty_levels, only: [:show, :update, :index]