Merge pull request #7 from hennevogel/master

Minor features/fixes
This commit is contained in:
Matt Barringer 2013-05-16 08:49:11 -07:00
commit 2c9753a809
14 changed files with 292 additions and 143 deletions

View file

@ -134,13 +134,13 @@ class ProposalController < ApplicationController
end end
def show def show
@event = Event.find(params[:id])
end end
def confirm def confirm
if @event.transition_possible? :confirm if @event.transition_possible? :confirm
begin begin
@event.confirm! @event.confirm!(:send_mail => params[:send_mail])
rescue Exception => e rescue Exception => e
redirect_to(conference_proposal_index_path(:conference_id => @conference.short_title), :alert => "Event was NOT confirmed: #{e.message}") redirect_to(conference_proposal_index_path(:conference_id => @conference.short_title), :alert => "Event was NOT confirmed: #{e.message}")
return return

View file

@ -35,7 +35,7 @@ class Event < ActiveRecord::Base
state :rejected state :rejected
event :start_review do event :start_review do
transitions :to => :review, :from => [:new, :rejected] transitions :to => :review, :from => [:new, :rejected, :canceled]
end end
event :withdraw do event :withdraw do
transitions :to => :withdrawn, :from => [:new, :review, :unconfirmed] transitions :to => :withdrawn, :from => [:new, :review, :unconfirmed]
@ -98,7 +98,7 @@ class Event < ActiveRecord::Base
self.class.state_machine.events_for(self.current_state).include?(transition) self.class.state_machine.events_for(self.current_state).include?(transition)
end end
def process_confirmation def process_confirmation(options)
if self.conference.email_settings.send_on_confirmed_without_registration? if self.conference.email_settings.send_on_confirmed_without_registration?
if self.conference.registrations.where(:person_id => self.submitter.id).first.nil? if self.conference.registrations.where(:person_id => self.submitter.id).first.nil?
Mailbot.confirm_reminder_mail(self).deliver Mailbot.confirm_reminder_mail(self).deliver

View file

@ -5,14 +5,17 @@
%i= @event.subtitle %i= @event.subtitle
.span2 .span2
-#= link_to "Edit Submission", edit_admin_conference_event_path(@conference.short_title, @event),
-# :class => "btn btn-mini btn-primary pull-right", :style => "margin-top:20px;", :onclick => "javascript:alert('Not ready yet');"
= link_to "Edit Submission", "#", = link_to "Edit Submission", "#",
:class => "btn btn-mini btn-primary pull-right", :style => "margin-top:20px;", :onclick => "javascript:alert('Not ready yet');" :class => "btn btn-mini btn-primary pull-right", :style => "margin-top:20px;", :onclick => "javascript:alert('Not ready yet');"
.row-fluid .row-fluid
.span12 .span12
%table.table %table.table
%tr
%td
%b Type
%td
= @event.event_type.title
%tr %tr
%td %td
%b State %b State

View file

@ -1,6 +1,11 @@
.row-fluid .row-fluid
.span12 .span12
%table.table.table-striped.table-bordered.table-hover %h2
Events
- if @events
= "(#{@events.length})"
.well
%table.table.table-striped.table-bordered.table-hover#events
%thead %thead
%th %th
%b Title %b Title
@ -51,3 +56,10 @@
- if event.transition_possible? :cancel - if event.transition_possible? :cancel
%li= link_to "Cancel event", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :cancel), %li= link_to "Cancel event", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :cancel),
:method => :put, :hint => "Mark this event as cancelled. Usually this means that the speakers had to cancel their appearance." :method => :put, :hint => "Mark this event as cancelled. Usually this means that the speakers had to cancel their appearance."
:javascript
$(document).ready(function() {
$('#events').dataTable( {
"bPaginate": false
} );
} );

View file

@ -1,5 +1,12 @@
%table.table.table-striped.table-bordered.table-hover %h2
People
- if @people
= "(#{@people.length})"
.well
%table.table.table-striped.table-bordered.table-hover#people
%thead %thead
%th
%b Email
%th %th
%b Last Name %b Last Name
%th %th
@ -11,8 +18,18 @@
%th %th
- @people.each do |person| - @people.each do |person|
%tr %tr
%td= person.email
%td= person.last_name %td= person.last_name
%td= person.first_name %td= person.first_name
%td= person.public_name %td= person.public_name
%td= person.registrations.count %td= person.registrations.count
%td= link_to "View", admin_person_path(person) %td= link_to "View", admin_person_path(person)
:javascript
$(document).ready(function() {
$('#people').dataTable( {
"bScrollInfinite": true,
"bScrollCollapse": true,
"sScrollY": "200px"
} );
} );

View file

@ -4,6 +4,10 @@
= link_to "Export PDF", admin_conference_registrations_path(@conference.short_title, :format => :pdf), :class => "btn btn-success" = link_to "Export PDF", admin_conference_registrations_path(@conference.short_title, :format => :pdf), :class => "btn btn-success"
.row-fluid .row-fluid
.span12 .span12
%h2
Registrations
- if @registrations
= "(#{@registrations.length})"
%table.table.table-striped.table-bordered.table-hover %table.table.table-striped.table-bordered.table-hover
%thead %thead
%th %th

View file

@ -28,8 +28,8 @@ prawn_document(:force_download=>true, :filename => @pdf_filename) do |pdf|
else else
row << " " row << " "
end end
row << registration.arrival row << registration.arrival.to_s
row << registration.departure row << registration.departure.to_s
table_array << row table_array << row
end end

View file

@ -13,6 +13,7 @@
= link_to "New Supporter", "#", :id => "new-supporter-button", :class => "btn btn-success" = link_to "New Supporter", "#", :id => "new-supporter-button", :class => "btn btn-success"
.row-fluid .row-fluid
.span12 .span12
%h2 Supporters
.well .well
%table.table.table-striped#supporters %table.table.table-striped#supporters
%thead %thead

View file

@ -1,7 +1,12 @@
.container-fluid .container-fluid
.row-fluid .row-fluid
.span12 .span12
%table.table.table-striped.table-bordered.table-hover %h2
Users
- if @users
= "(#{@users.length})"
.well
%table.table.table-striped.table-bordered.table-hover#users
%thead %thead
%th %th
%b Email %b Email
@ -55,3 +60,11 @@
"data-content" => user.popup_details, "data-content" => user.popup_details,
"data-original-title" => "" "data-original-title" => ""
:javascript
$(document).ready(function() {
$('#users').dataTable( {
"bScrollInfinite": true,
"bScrollCollapse": true,
"sScrollY": "200px"
} );
} );

View file

@ -30,20 +30,22 @@
%li %li
= link_to "Schedule ", admin_conference_schedule_path(@conference.short_title) = link_to "Schedule ", admin_conference_schedule_path(@conference.short_title)
%ul.nav.secondary-nav.pull-right %ul.nav.secondary-nav.pull-right
%li
= link_to "User Area", root_url
- if !@conference.nil? - if !@conference.nil?
%li.dropdown %li.dropdown
= link_to "#", :class => "dropdown-toggle" do = link_to "#", :class => "dropdown-toggle", :id =>'drop1', "data-toggle" => 'dropdown' do
Export Export
<b class="caret"></b> <b class="caret"></b>
%ul.dropdown-menu %ul.dropdown-menu{:role => 'menu', "aria-labelledby" => "drop1"}
%li= link_to "JSON", "#" %li= link_to "JSON", "#"
%li= link_to "HTML", "#" %li= link_to "HTML", "#"
%li.dropdown %li.dropdown
- unless Conference.count == 1 && !has_role?(current_user, "admin") - unless Conference.count == 1 && !has_role?(current_user, "admin")
= link_to "#", :class => "dropdown-toggle" do = link_to "#", :class => "dropdown-toggle", :id => 'drop2', "data-toggle" => 'dropdown' do
Conferences Conferences
<b class="caret"></b> <b class="caret"></b>
%ul.dropdown-menu %ul.dropdown-menu{:role => 'menu', "aria-labelledby" => "drop2"}
- conferences = Conference.order("created_at DESC") - conferences = Conference.order("created_at DESC")
- unless conferences.nil? - unless conferences.nil?
- conferences.each do |c| - conferences.each do |c|

View file

@ -30,3 +30,16 @@
- if user_signed_in? - if user_signed_in?
%li %li
= link_to('Edit account', edit_user_registration_path) = link_to('Edit account', edit_user_registration_path)
%li.dropdown
- unless Conference.count == 1 && !has_role?(current_user, "admin")
= link_to "#", :class => "dropdown-toggle" do
Conferences
<b class="caret"></b>
%ul.dropdown-menu
- conferences = Conference.order("created_at DESC")
- unless conferences.nil?
- conferences.each do |c|
- unless @conference == c
%li= link_to c.short_title, admin_conference_path(c.short_title)
- if has_role?(current_user, "admin")
%li= link_to "New Conference", new_admin_conference_path

View file

@ -6,7 +6,7 @@
= f.input :subtitle, :as => :string = f.input :subtitle, :as => :string
%section#details %section#details
= f.input :event_type_id,:as => :select, :collection => @event_types, :include_blank => false, :label => "Session Type" = f.input :event_type_id,:as => :select, :collection => @event_types, :include_blank => false, :label => "Session Type"
= f.input :abstract, :input_html => {:rows => 5}, = f.input :abstract, :input_html => {:rows => 5, :class => "span11"},
:required => true, :label => "Session Abstract" :required => true, :label => "Session Abstract"
You have used You have used
%span#abstract-count #{@event.abstract_word_count} %span#abstract-count #{@event.abstract_word_count}
@ -19,13 +19,13 @@
words. words.
%br %br
%br %br
= f.input :description, :input_html => {:rows => 5}, :hint => "This will only be shown to organizers, not to attendees." = f.input :description, :input_html => {:rows => 5, :class=> "span11"}, :hint => "This will only be shown to organizers, not to attendees."
%section#information %section#information
= f.inputs :name => "Your Information" do = f.inputs :name => "Your Information" do
= semantic_fields_for @person do |p| = semantic_fields_for @person do |p|
= p.input :public_name, :as => :string, :required => true = p.input :public_name, :as => :string, :required => true
= p.input :company, :as => :string, :label => "Affiliation", :hint => "This could be a company, a user group, or nothing at all." = p.input :company, :as => :string, :label => "Affiliation", :hint => "This could be a company, a user group, or nothing at all."
= p.input :biography, :required => true, :input_html => {:rows => 5, "onkeyup" => "word_count(this, 'biography-count', 150)"} = p.input :biography, :required => true, :input_html => {:rows => 5, :class => 'span11', "onkeyup" => "word_count(this, 'biography-count', 150)"}
You have used You have used
%span#biography-count #{@person.biography_word_count} %span#biography-count #{@person.biography_word_count}
words. Biographies are limited to 150 words. words. Biographies are limited to 150 words.
@ -36,7 +36,7 @@
= f.inputs :name => "Additional Speakers" do = f.inputs :name => "Additional Speakers" do
Will there be any additional speakers? If so, please enter their full names, email address, and a short Will there be any additional speakers? If so, please enter their full names, email address, and a short
biography for each. biography for each.
= f.input :proposal_additional_speakers, :input_html => {:rows => 5}, :label => false = f.input :proposal_additional_speakers, :input_html => {:rows => 5, :class => "span11"}, :label => false
= f.action :submit, :as => :button, :label => "Submit Session", :button_html => {:class => "btn btn-primary"} = f.action :submit, :as => :button, :label => "Submit Session", :button_html => {:class => "btn btn-primary"}
:javascript :javascript

View file

@ -18,7 +18,7 @@
- @events.each do |event| - @events.each do |event|
%tr %tr
%td %td
= event.title = link_to event.title, conference_proposal_path(@conference.short_title, event.id)
%td %td
= event.public_state = event.public_state
- if event.confirmed? && !@conference.user_registered?(current_user) - if event.confirmed? && !@conference.user_registered?(current_user)
@ -27,7 +27,7 @@
%td %td
.pull-right .pull-right
- if event.transition_possible? :confirm - if event.transition_possible? :confirm
= link_to "Confirm", conference_proposal_confirm_path(@conference.short_title, event), :method => :put, :class => "btn btn-mini btn-success" = link_to "Confirm", conference_proposal_confirm_path(@conference.short_title, event, :send_mail=>false), :method => :put, :class => "btn btn-mini btn-success"
- if @conference.cfp_open? - if @conference.cfp_open?
- if !event.unconfirmed? && !event.confirmed? - if !event.unconfirmed? && !event.confirmed?
= link_to "Edit", edit_conference_proposal_path(@conference.short_title, event.id), :class => "btn btn-mini btn-primary" = link_to "Edit", edit_conference_proposal_path(@conference.short_title, event.id), :class => "btn btn-mini btn-primary"

View file

@ -0,0 +1,84 @@
.row-fluid
.span10
%h3
= @event.title
%i= @event.subtitle
.span2
- if @event.transition_possible? :confirm
= link_to "Confirm", conference_proposal_confirm_path(@conference.short_title, @event), :method => :put, :class => "btn btn-mini btn-success"
= link_to "Withdraw", conference_proposal_path(@conference.short_title, @event.id), :method => :delete,
:confirm => "Are you sure you want to withdraw this proposal?", :class => "btn btn-mini btn-danger"
.row-fluid
.span12
%table.table
%tr
%td
%b Type
%td
- if @event.event_type
= @event.event_type.title
- if !@event.track.nil?
%tr
%td
%b Track
%td
= @event.track.name
- if !@event.room.nil?
%tr
%td
%b Room
%td
= @event.room.name
- if !@event.start_time.nil?
%tr
%td
%b Scheduled time
%td
= @event.start_time
%tr
%td
%b Submitted on
%td= @event.created_at
%tr
%td
%b Last updated on
%td= @event.updated_at
%tr
%td
%b Abstract
%td= simple_format(@event.abstract)
%tr
%td
%b Description
%td= simple_format(@event.description)
- if @event.event_attachments.size > 0
%table.table
%thead
%th
%b Filename
%th
%b Title
%th
%b Size
%th
%b Public?
%th
%tbody
- @event.event_attachments.each do |a|
%tr
%td
= link_to a.attachment_file_name, conference_proposal_event_attachment_path(@conference.short_title, @event.id, a.id)
%td
= a.title
%td
= number_to_human_size a.attachment_file_size
%td
- if a.public?
Public
- else
Not Public
%td
= link_to "Delete", conference_proposal_event_attachment_path(@conference.short_title, @event.id, a.id),
:method => :delete, :confirm => "Are you sure you want to delete this attachment? It's permanant!"