Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 2 additions & 13 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -29,26 +29,15 @@ end

gem "jruby-openssl", :platform => :jruby

# Refinery/rails should pull in the proper versions of these
group :assets do
gem "sass-rails"
gem "coffee-rails"
gem "uglifier"
end

group :development do
gem 'quiet_assets'
end

group :development, :test do
gem 'rspec-its'
end

group :test do
gem "launchy"
gem 'launchy'
end

# Load local gems according to Refinery developer preference.
if File.exist? local_gemfile = File.expand_path("../.gemfile", __FILE__)
eval File.read(local_gemfile)
end
end
6 changes: 3 additions & 3 deletions Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,15 @@ rescue LoadError
end

ENGINE_PATH = File.dirname(__FILE__)
APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
APP_RAKEFILE = File.expand_path('../spec/dummy/Rakefile', __FILE__)

if File.exists?(APP_RAKEFILE)
load 'rails/tasks/engine.rake'
end

require "refinerycms-testing"
require 'refinerycms-testing'
Refinery::Testing::Railtie.load_dummy_tasks(ENGINE_PATH)

load File.expand_path('../tasks/rspec.rake', __FILE__)

task :default => :spec
task default: :spec
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ class EventsController < ::Refinery::AdminController

crudify :'refinery/calendar/event',
sortable: false,
order: "starts_at DESC"
order: 'starts_at DESC'

protected

Expand Down
21 changes: 11 additions & 10 deletions app/controllers/refinery/calendar/events_controller.rb
Original file line number Diff line number Diff line change
@@ -1,32 +1,33 @@
require 'responders'

module Refinery
module Calendar
class EventsController < ::ApplicationController
before_action :find_page, except: :archive

respond_to :html

def index
@events = Event.upcoming.order('refinery_calendar_events.starts_at DESC')
@events = Event.upcoming.order(starts_at: :desc)

# you can use meta fields from your model instead (e.g. browser_title)
# by swapping @page for @event in the line below:
present(@page)
present @page
end

def show
@event = Event.friendly.find(params[:id])

# you can use meta fields from your model instead (e.g. browser_title)
# by swapping @page for @event in the line below:
present(@page)
present @page
end

def archive
@events = Event.archive.order('refinery_calendar_events.starts_at DESC')
render :template => 'refinery/calendar/events/index'
@events = Event.archive.order(starts_at: :desc)
render template: 'refinery/calendar/events/index'
end

protected

def find_page
@page = ::Refinery::Page.where(:link_url => "/calendar/events").first
@page = ::Refinery::Page.where(link_url: '/calendar/events').first
end

end
Expand Down
31 changes: 11 additions & 20 deletions app/models/refinery/calendar/event.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
module Refinery
module Calendar
class Event < Refinery::Core::BaseModel
class Event < ActiveRecord::Base
extend FriendlyId

friendly_id :title, :use => :slugged
Expand All @@ -13,35 +13,26 @@ class Event < Refinery::Core::BaseModel
alias_attribute :to, :ends_at

delegate :name, :address,
:to => :venue,
:prefix => true,
:allow_nil => true
to: :venue,
prefix: true,
allow_nil: true

scope :starting_on_day, lambda {|day| where(starts_at: day.beginning_of_day..day.tomorrow.beginning_of_day) }
scope :ending_on_day, lambda {|day| where(ends_at: day.beginning_of_day..day.tomorrow.beginning_of_day) }
scope :starting_on_day, ->(day) { where(starts_at: day.beginning_of_day..day.tomorrow.beginning_of_day) }
scope :ending_on_day, ->(day) { where(ends_at: day.beginning_of_day..day.tomorrow.beginning_of_day) }

scope :on_day, lambda {|day|
scope :on_day, ->(day) {
where(
arel_table[:starts_at].in(day.beginning_of_day..day.tomorrow.beginning_of_day).
or(arel_table[:ends_at].in(day.beginning_of_day..day.tomorrow.beginning_of_day)).
or( arel_table[:starts_at].lt(day.beginning_of_day).and(arel_table[:ends_at].gt(day.tomorrow.beginning_of_day)) )
or(arel_table[:starts_at].lt(day.beginning_of_day).and(arel_table[:ends_at].gt(day.tomorrow.beginning_of_day)) )
)
}

class << self
def upcoming
where('refinery_calendar_events.starts_at >= ?', Time.now)
end
scope :upcoming, -> { where arel_table[:starts_at].gteq Time.now }

def featured
where(:featured => true)
end
scope :featured, -> { where featured: true }

def archive
where('refinery_calendar_events.starts_at < ?', Time.now)
end

end
scope :archive, -> { where arel_table[:starts_at].lt Time.now }
end
end
end
8 changes: 6 additions & 2 deletions app/models/refinery/calendar/venue.rb
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
module Refinery
module Calendar
class Venue < Refinery::Core::BaseModel
class Venue < ActiveRecord::Base
has_many :events
validates :name, :presence => true, :uniqueness => true

validates :name,
presence: true,
uniqueness: true

end
end
end
29 changes: 16 additions & 13 deletions app/views/refinery/calendar/admin/events/_actions.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,26 @@
<%= render '/refinery/admin/search', :url => refinery.calendar_admin_events_path %>
</li>
<% end %>

<li>
<%= link_to t('.create_new'), refinery.new_calendar_admin_event_path,
:class => "add_icon" %>
</li>

<%= render 'refinery/calendar/admin/shared/links' %>
<% if !searching? && ::Refinery::Calendar::Admin::EventsController.sortable? && ::Refinery::Calendar::Event.any? %>
<li>
<%= link_to t('.reorder', :what => "Events"),
refinery.calendar_admin_events_path,
:id => "reorder_action",
:class => "reorder_icon" %>

<%= link_to t('.reorder_done', :what => "Events"),
refinery.calendar_admin_events_path,
:id => "reorder_action_done",
:style => "display: none;",
:class => "reorder_icon" %>
</li>
<% end %>
<% if !searching? && ::Refinery::Calendar::Admin::EventsController.sortable? && ::Refinery::Calendar::Event.any? %>
<li>
<%= link_to t('.reorder', :what => "Events"),
refinery.calendar_admin_events_path,
:id => "reorder_action",
:class => "reorder_icon" %>

<%= link_to t('.reorder_done', :what => "Events"),
refinery.calendar_admin_events_path,
:id => "reorder_action_done",
:style => "display: none;",
:class => "reorder_icon" %>
</li>
<% end %>
</ul>
21 changes: 8 additions & 13 deletions app/views/refinery/calendar/admin/events/_event.html.erb
Original file line number Diff line number Diff line change
@@ -1,20 +1,15 @@
<li class='clearfix record <%= cycle("on", "on-hover") %>' id="<%= dom_id(event) -%>">
<span class='title'>
<span class="title">
<%= event.title %>

</span>
<span class='actions'>

<%= link_to refinery_icon_tag("application_go.png"), refinery.calendar_event_path(event),
:title => t('.view_live_html'),
:target => "_blank" %>
<span class="actions">
<%= action_icon :preview, refinery.calendar_event_path(event), t('.view_live_html') %>

<%= action_icon :edit, refinery.edit_calendar_admin_event_path(event), t('.edit') %>

<%= link_to refinery_icon_tag("application_edit.png"), refinery.edit_calendar_admin_event_path(event),
:title => t('.edit') %>
<%= link_to refinery_icon_tag("delete.png"), refinery.calendar_admin_event_path(event),
:class => "cancel confirm-delete",
:title => t('.delete'),
:confirm => t('message', :scope => 'refinery.admin.delete', :title => event.title),
:method => :delete %>
<%= action_icon :delete, refinery.calendar_admin_event_path(event), t('.delete'),
:class => 'cancel confirm-delete',
:confirm => t('refinery.admin.delete.message', :title => event.title) %>
</span>
</li>
29 changes: 13 additions & 16 deletions app/views/refinery/calendar/admin/events/_form.html.erb
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
<%= form_for [refinery, :calendar_admin, @event] do |f| -%>
<%= render '/refinery/admin/error_messages',
:object => @event,
:include_object_name => true %>
<%= render '/refinery/admin/error_messages', :object => @event, :include_object_name => true %>


<div class='field'>
<div class="field">
<%= f.label :title -%>
<%= f.text_field :title, :class => 'larger widest' -%>
</div>
Expand All @@ -16,32 +13,32 @@
</p>
</div>

<div class='field'>
<div class="field">
<%= f.label :from -%>
<%= f.date_field :from, :class => 'datetime_range' -%>
</div>

<div class='field'>
<div class="field">
<%= f.label :to -%>
<%= f.date_field :to, :class => 'datetime_range' -%>
</div>

<div class='field'>
<div class="field">
<%= f.label :registration_link -%>
<%= f.text_field :registration_link, :class => 'larger' -%>
<%= f.text_field :registration_link, :class => 'larger widest' -%>
</div>

<div class='field'>
<%= f.label :venue_id, 'Venue' %>
<div class="field">
<%= f.label :venue_id %>
<%= f.collection_select :venue_id, @venues, :id, :name, { :include_blank => 'None' }, :class => 'chzn-select', :'data-placeholder' => 'Search Venues', :style => 'width: 300px;' %>
</div>

<div class='field'>
<div class="field">
<%= f.label :excerpt -%>
<%= f.text_area :excerpt, :size => '65x5' -%>
<%= f.text_area :excerpt, :size => '65x5' -%>
</div>

<div class='field'>
<div class="field">
<div id='page-tabs' class='clearfix ui-tabs ui-widget ui-widget-content ui-corner-all'>
<ul id='page_parts'>
<% [:description].each_with_index do |part, part_index| %>
Expand All @@ -63,8 +60,8 @@

<%= render '/refinery/admin/form_actions', :f => f,
:continue_editing => false,
:delete_title => t('delete', :scope => 'refinery.events.admin.events.event'),
:delete_confirmation => t('message', :scope => 'refinery.admin.delete', :title => @event.title) %>
:delete_title => t('refinery.calendar.admin.events.event.delete'),
:delete_confirmation => t('refinery.admin.delete.message', :title => @event.title) %>
<% end -%>
<% content_for :stylesheets do %>
<%= stylesheet_link_tag 'chosen' %>
Expand Down
7 changes: 4 additions & 3 deletions app/views/refinery/calendar/admin/events/_records.html.erb
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
<% if searching? %>
<h2><%= t('results_for', :scope => 'refinery.admin.search', :query => params[:search]) %></h2>
<h2><%= t('refinery.admin.search.results_for', :query => params[:search]) %></h2>
<% end %>
<div class='pagination_container'>

<div class="pagination_container">
<% if @events.any? %>
<%= render 'events' %>
<% else %>
Expand All @@ -11,7 +12,7 @@
<%= t('.no_items_yet') %>
</strong>
<% else %>
<%= t('no_results', :scope => 'refinery.admin.search') %>
<%= t('refinery.admin.search.no_results') %>
<% end %>
</p>
<% end %>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<ul id='sortable_list'>
<ul id="sortable_list">
<%= render :partial => 'event', :collection => @events %>
</ul>
<%= render '/refinery/admin/sortable_list',
:continue_reordering => (local_assigns.keys.include?(:continue_reordering)) ? continue_reordering : true %>

<%= render '/refinery/admin/sortable_list', :continue_reordering => (local_assigns.keys.include?(:continue_reordering)) ? continue_reordering : true %>
8 changes: 5 additions & 3 deletions app/views/refinery/calendar/admin/events/index.html.erb
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
<section id='records'>
<h2><%= t('title', :scope => 'refinery.plugins.refinery_calendar') %> : <%= t('title', :scope => 'refinery.plugins.events') %></h2>
<section id="records">
<h2><%= t('refinery.plugins.refinery_calendar.title') %>: <%= t('refinery.plugins.events.title') %></h2>
<%= render 'records' %>
</section>
<aside id='actions'>

<aside id="actions">
<%= render 'actions' %>
</aside>

<%= render '/refinery/admin/make_sortable', :tree => false if !searching? and ::Refinery::Calendar::Admin::EventsController.sortable? and ::Refinery::Calendar::Event.count > 1 %>
3 changes: 1 addition & 2 deletions app/views/refinery/calendar/admin/venues/_actions.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,7 @@
</li>
<% end %>
<li>
<%= link_to t('.create_new'), refinery.new_calendar_admin_venue_path,
:class => "add_icon" %>
<%= link_to t('.create_new'), refinery.new_calendar_admin_venue_path, :class => "add_icon" %>
</li>
<%= render 'refinery/calendar/admin/shared/links' %>
<% if !searching? && ::Refinery::Calendar::Admin::VenuesController.sortable? && ::Refinery::Calendar::Venue.any? %>
Expand Down
Loading