Implement consistent admin interface

* Consistent route/model/controller/view layout
* Get rid of unused photos, speakers, dietchoices, social_events controllers
* Drop unused :public from Rooms and :description from CallForPapers
This commit is contained in:
Henne Vogelsang 2014-11-25 10:47:18 +01:00
parent f6a87331be
commit 28063129c7
133 changed files with 1461 additions and 1461 deletions

View file

@ -78,16 +78,12 @@ class Ability
# the user can also vote
can :manage, Event, conference_id: conf_ids_for_organizer + conf_ids_for_cfp
can :create, Event
can :manage, CallForPapers, conference_id: conf_ids_for_organizer + conf_ids_for_cfp
can :manage, EventType, conference_id: conf_ids_for_organizer + conf_ids_for_cfp
can :manage, Track, conference_id: conf_ids_for_organizer + conf_ids_for_cfp
can :manage, DifficultyLevel, conference_id: conf_ids_for_organizer + conf_ids_for_cfp
can :manage, EmailSettings, conference_id: conf_ids_for_organizer + conf_ids_for_cfp
can :manage, Campaign, conference_id: conf_ids_for_organizer
can :manage, Venue, conference_id: conf_ids_for_organizer
can :index, Venue, conference_id: conf_ids_for_organizer + conf_ids_for_cfp
can :manage, Lodging, conference_id: conf_ids_for_organizer
can :manage, Photo, conference_id: conf_ids_for_organizer
can :manage, Room, conference_id: conf_ids_for_organizer + conf_ids_for_cfp
can :manage, Sponsor, conference_id: conf_ids_for_organizer
can :manage, SponsorshipLevel, conference_id: conf_ids_for_organizer
@ -99,14 +95,16 @@ class Ability
can :manage, Commercial, commercialable_type: 'Event', commercialable_id: Event.where(conference_id: conf_ids_for_organizer + conf_ids_for_cfp).pluck(:id)
can :manage, Contact, conference_id: conf_ids_for_organizer
can :manage, Campaign, conference_id: conf_ids_for_organizer
can :manage, Photo, conference_id: conf_ids_for_organizer
can :manage, RegistrationPeriod, conference_id: conf_ids_for_organizer
can :manage, Splashpage, conference_id: conf_ids_for_organizer
can :manage, CallForPaper, conference_id: conf_ids_for_organizer + conf_ids_for_cfp
can :manage, Venue, conference_id: conf_ids_for_organizer
can :index, Venue, conference_id: conf_ids_for_organizer + conf_ids_for_cfp
end
def guest
## Abilities for everyone, even guests (not logged in users)
can [:index, :show, :gallery_photos], Conference do |conference|
can [:index, :show], Conference do |conference|
conference.splashpage && conference.splashpage.public == true
end

View file

@ -1,8 +1,8 @@
class CallForPapers < ActiveRecord::Base
attr_accessible :start_date, :end_date,
:description, :schedule_changes, :rating,
:schedule_public, :include_cfp_in_splash, :conference_id
class CallForPaper < ActiveRecord::Base
belongs_to :conference
attr_accessible :start_date, :end_date,
:schedule_changes, :rating,
:schedule_public, :include_cfp_in_splash, :conference_id
validates_presence_of :start_date, :end_date
validates :rating, numericality: { greater_than_or_equal_to: 0, less_than_or_equal_to: 10 }

View file

@ -28,7 +28,7 @@ class Conference < ActiveRecord::Base
has_one :contact, dependent: :destroy
has_one :registration_period, dependent: :destroy
has_one :email_settings, dependent: :destroy
has_one :call_for_papers, dependent: :destroy
has_one :call_for_paper, dependent: :destroy
has_one :venue, dependent: :destroy
has_many :social_events, dependent: :destroy
has_many :ticket_purchases
@ -161,7 +161,7 @@ class Conference < ActiveRecord::Base
# * +true+ -> If today is in the CFP period.
def cfp_open?
today = Date.current
cfp = self.call_for_papers
cfp = self.call_for_paper
if !cfp.nil? && (cfp.start_date.. cfp.end_date).cover?(today)
return true
end
@ -177,10 +177,10 @@ class Conference < ActiveRecord::Base
def get_submissions_per_week
result = []
if call_for_papers && events
if call_for_paper && events
submissions = events.group(:week).count
start_week = call_for_papers.start_week
weeks = call_for_papers.weeks
start_week = call_for_paper.start_week
weeks = call_for_paper.weeks
result = calculate_items_per_week(start_week, weeks, submissions)
end
result
@ -194,10 +194,10 @@ class Conference < ActiveRecord::Base
# * +Array+ -> e.g. 'Submitted' => [0, 3, 3, 5] -> first week 0 events, second week 3 events.
def get_submissions_data
result = {}
if call_for_papers && events
if call_for_paper && events
result = get_events_per_week_by_state
start_week = call_for_papers.start_week
start_week = call_for_paper.start_week
end_week = end_date.strftime('%W').to_i
weeks = weeks(start_week, end_week)
@ -260,8 +260,8 @@ class Conference < ActiveRecord::Base
# * +Integer+ -> weeks
def cfp_weeks
result = 0
if call_for_papers
result = call_for_papers.weeks
if call_for_paper
result = call_for_paper.weeks
end
result
end
@ -743,7 +743,7 @@ class Conference < ActiveRecord::Base
# * +True+ -> If conference has a cfp object.
# * +False+ -> If conference has no cfp object.
def cfp_set?
!!call_for_papers
!!call_for_paper
end
##

View file

@ -1,5 +1,5 @@
class Room < ActiveRecord::Base
attr_accessible :name, :size, :public, :conference_id
attr_accessible :name, :size, :conference_id
belongs_to :conference
has_many :events
@ -10,8 +10,6 @@ class Room < ActiveRecord::Base
validates :size, numericality: { only_integer: true, greater_than: 0 }, allow_nil: true
validates :size, presence: true, if: :public?
private
def generate_guid

View file

@ -1,7 +1,7 @@
class Track < ActiveRecord::Base
attr_accessible :name, :description, :color, :conference_id
belongs_to :conference
has_many :events
before_create :generate_guid