Godwin
11 years ago
17 changed files with 209 additions and 209 deletions
@ -1,58 +1,69 @@ |
|||
class WorkshopsController < ApplicationController |
|||
before_action :set_workshop, only: [:show, :edit, :update, :destroy] |
|||
|
|||
# GET /workshops |
|||
def index |
|||
@workshops = Workshop.all |
|||
end |
|||
|
|||
# GET /workshops/1 |
|||
def show |
|||
end |
|||
|
|||
# GET /workshops/new |
|||
def new |
|||
@workshop = Workshop.new |
|||
end |
|||
|
|||
# GET /workshops/1/edit |
|||
def edit |
|||
end |
|||
|
|||
# POST /workshops |
|||
def create |
|||
@workshop = Workshop.new(workshop_params) |
|||
|
|||
if @workshop.save |
|||
redirect_to @workshop, notice: 'Workshop was successfully created.' |
|||
else |
|||
render action: 'new' |
|||
end |
|||
end |
|||
|
|||
# PATCH/PUT /workshops/1 |
|||
def update |
|||
if @workshop.update(workshop_params) |
|||
redirect_to @workshop, notice: 'Workshop was successfully updated.' |
|||
else |
|||
render action: 'edit' |
|||
end |
|||
end |
|||
|
|||
# DELETE /workshops/1 |
|||
def destroy |
|||
@workshop.destroy |
|||
redirect_to workshops_url, notice: 'Workshop was successfully destroyed.' |
|||
end |
|||
|
|||
private |
|||
# Use callbacks to share common setup or constraints between actions. |
|||
def set_workshop |
|||
@workshop = Workshop.find(params[:id]) |
|||
end |
|||
|
|||
# Only allow a trusted parameter "white list" through. |
|||
def workshop_params |
|||
params.require(:workshop).permit(:title, :slug, :info, :conference_id, :workshop_stream_id, :workshop_presentation_style, :min_facilitators, :location_id, :start_time, :end_time) |
|||
end |
|||
before_action :set_workshop, only: [:show, :edit, :update, :destroy] |
|||
|
|||
# GET /workshops |
|||
def index |
|||
set_conference |
|||
@workshops = Workshop.where(['conference_id = ?', @conference.id]) |
|||
end |
|||
|
|||
# GET /workshops/1 |
|||
def show |
|||
set_workshop |
|||
set_conference |
|||
end |
|||
|
|||
# GET /workshops/new |
|||
def new |
|||
set_conference |
|||
@workshop = Workshop.new |
|||
end |
|||
|
|||
# GET /workshops/1/edit |
|||
def edit |
|||
set_conference |
|||
end |
|||
|
|||
# POST /workshops |
|||
def create |
|||
set_conference |
|||
@workshop = Workshop.new(workshop_params) |
|||
|
|||
if @workshop.save |
|||
redirect_to conference_workshop_path(@conference, @workshop), notice: 'Workshop was successfully created.' |
|||
else |
|||
render action: 'new' |
|||
end |
|||
end |
|||
|
|||
# PATCH/PUT /workshops/1 |
|||
def update |
|||
set_conference |
|||
if @workshop.update(workshop_params) |
|||
redirect_to conference_workshop_path(@conference, @workshop), notice: 'Workshop was successfully updated.' |
|||
else |
|||
render action: 'edit' |
|||
end |
|||
end |
|||
|
|||
# DELETE /workshops/1 |
|||
def destroy |
|||
@workshop.destroy |
|||
redirect_to workshops_url, notice: 'Workshop was successfully destroyed.' |
|||
end |
|||
|
|||
private |
|||
# Use callbacks to share common setup or constraints between actions. |
|||
def set_workshop |
|||
@workshop = Workshop.find_by(slug: params[:workshop_slug] || params[:slug]) |
|||
end |
|||
|
|||
def set_conference |
|||
@conference = Conference.find_by(slug: params[:conference_slug] || params[:slug]) |
|||
end |
|||
|
|||
# Only allow a trusted parameter "white list" through. |
|||
def workshop_params |
|||
params.require(:workshop).permit(:title, :slug, :info, :conference_id, :workshop_stream_id, :workshop_presentation_style, :min_facilitators, :location_id, :start_time, :end_time) |
|||
end |
|||
end |
|||
|
@ -1,2 +1,4 @@ |
|||
module WorkshopsHelper |
|||
TABS = [{:conference_path => 0}, {:conference_workshop_path => nil}, {:edit_conference_workshop_path => nil}]#, :hosts] |
|||
#SUB_TABS = [:registration, :registration_form, :registration_register, :registration_stats] |
|||
end |
|||
|
@ -1,2 +1,7 @@ |
|||
class Workshop < ActiveRecord::Base |
|||
belongs_to :conference |
|||
|
|||
def to_param |
|||
slug |
|||
end |
|||
end |
|||
|
@ -1,40 +1,23 @@ |
|||
= form_for @workshop do |f| |
|||
- if @workshop.errors.any? |
|||
#error_explanation |
|||
%h2= "#{pluralize(@workshop.errors.count, "error")} prohibited this workshop from being saved:" |
|||
%ul |
|||
- @workshop.errors.full_messages.each do |msg| |
|||
%li= msg |
|||
|
|||
.field |
|||
= f.label :title |
|||
= f.text_field :title |
|||
.field |
|||
= f.label :slug |
|||
= f.text_field :slug |
|||
.field |
|||
= f.label :info |
|||
= f.text_area :info |
|||
.field |
|||
= f.label :conference_id |
|||
= f.number_field :conference_id |
|||
.field |
|||
= f.label :workshop_stream_id |
|||
= f.number_field :workshop_stream_id |
|||
.field |
|||
= f.label :workshop_presentation_style |
|||
= f.number_field :workshop_presentation_style |
|||
.field |
|||
= f.label :min_facilitators |
|||
= f.number_field :min_facilitators |
|||
.field |
|||
= f.label :location_id |
|||
= f.number_field :location_id |
|||
.field |
|||
= f.label :start_time |
|||
= f.datetime_select :start_time |
|||
.field |
|||
= f.label :end_time |
|||
= f.datetime_select :end_time |
|||
.actions |
|||
= f.submit 'Save' |
|||
= form_for @workshop, url: conference_workshops_path(@conference, @workshop) do |f| |
|||
.columns |
|||
- if @workshop.errors.any? |
|||
#error_explanation |
|||
%h2= "#{pluralize(@workshop.errors.count, "error")} prohibited this workshop from being saved:" |
|||
%ul |
|||
- @workshop.errors.full_messages.each do |msg| |
|||
%li= msg |
|||
= field f, :title, :text_field |
|||
= field f, :slug, :text_field |
|||
.columns.medium-4 |
|||
%h2=_'workshop.form.help.title', :t |
|||
=_'workshop.form.help', :p |
|||
.columns.medium-8 |
|||
= field f, :info, :text_area |
|||
= field f, :workshop_stream_id, :number_field |
|||
= field f, :workshop_presentation_style, :number_field |
|||
=# field f, :min_facilitators, :number_field |
|||
=# field f, :location_id, :number_field |
|||
=# field f, :start_time, :datetime_select |
|||
=# field f, :end_time, :datetime_select |
|||
.columns |
|||
= actions :save |
|||
|
@ -1,7 +1,6 @@ |
|||
%h1 Editing workshop |
|||
- page_style :form |
|||
|
|||
= render 'form' |
|||
= tabs! |
|||
|
|||
= link_to 'Show', @workshop |
|||
\| |
|||
= link_to 'Back', workshops_path |
|||
.row |
|||
= render 'form' |
|||
|
@ -1,5 +1,6 @@ |
|||
%h1 New workshop |
|||
- page_style :form |
|||
|
|||
= render 'form' |
|||
= tabs! |
|||
|
|||
= link_to 'Back', workshops_path |
|||
.row |
|||
= render 'form' |
|||
|
@ -1,36 +1,30 @@ |
|||
%p#notice= notice |
|||
|
|||
%p |
|||
%b Title: |
|||
= @workshop.title |
|||
%p |
|||
%b Slug: |
|||
= @workshop.slug |
|||
%p |
|||
%b Info: |
|||
= @workshop.info |
|||
%p |
|||
%b Conference: |
|||
= @workshop.conference_id |
|||
%p |
|||
%b Workshop stream: |
|||
= @workshop.workshop_stream_id |
|||
%p |
|||
%b Workshop presentation style: |
|||
= @workshop.workshop_presentation_style |
|||
%p |
|||
%b Min facilitators: |
|||
= @workshop.min_facilitators |
|||
%p |
|||
%b Location: |
|||
= @workshop.location_id |
|||
%p |
|||
%b Start time: |
|||
= @workshop.start_time |
|||
%p |
|||
%b End time: |
|||
= @workshop.end_time |
|||
.row |
|||
.columns.medium-12 |
|||
%h1= @workshop.title |
|||
|
|||
= link_to 'Edit', edit_workshop_path(@workshop) |
|||
\| |
|||
= link_to 'Back', workshops_path |
|||
= tabs! |
|||
|
|||
.row |
|||
.columns.medium-4 |
|||
%p |
|||
%b Workshop stream: |
|||
= @workshop.workshop_stream_id |
|||
%p |
|||
%b Workshop presentation style: |
|||
= @workshop.workshop_presentation_style |
|||
%p |
|||
%b Min facilitators: |
|||
= @workshop.min_facilitators |
|||
%p |
|||
%b Location: |
|||
= @workshop.location_id |
|||
%p |
|||
%b Start time: |
|||
= @workshop.start_time |
|||
%p |
|||
%b End time: |
|||
= @workshop.end_time |
|||
.columns.medium-8 |
|||
=p @workshop, :info |
|||
|
@ -1,8 +1,8 @@ |
|||
require 'spec_helper' |
|||
|
|||
describe 'Home' do |
|||
it "has Hello World in title" do |
|||
visit root_path |
|||
expect(page).to have_title I18n.t('hello') |
|||
end |
|||
#it "has Hello World in title" do |
|||
# visit root_path |
|||
# expect(page).to have_title I18n.t('hello') |
|||
#end |
|||
end |
|||
|
Loading…
Reference in new issue