Refactored items_per_page. Start on admin/workgroups.

This commit is contained in:
benni 2011-06-10 12:18:55 +02:00
parent 689cfcfe01
commit 6ddef7267a
13 changed files with 35 additions and 119 deletions

View file

@ -9,13 +9,6 @@ class Admin::OrdergroupsController < Admin::BaseController
@ordergroups = @ordergroups.where(:name.matches => "%#{params[:query]}%")
end
# sort by nick, thats default
if (params[:per_page] && params[:per_page].to_i > 0 && params[:per_page].to_i <= 100)
@per_page = params[:per_page].to_i
else
@per_page = 20
end
@ordergroups = @ordergroups.paginate(:page => params[:page], :per_page => @per_page)
respond_to do |format|

View file

@ -9,13 +9,6 @@ class Admin::UsersController < Admin::BaseController
@users = @users.where(({:first_name.matches => "%#{params[:query]}%"}) | ({:last_name.matches => "%#{params[:query]}%"}) | ({:nick.matches => "%#{params[:query]}%"}))
end
# sort by nick, thats default
if (params[:per_page] && params[:per_page].to_i > 0 && params[:per_page].to_i <= 100)
@per_page = params[:per_page].to_i
else
@per_page = 20
end
@users = @users.paginate(:page => params[:page], :per_page => @per_page)
respond_to do |format|

View file

@ -1,67 +1,19 @@
class Admin::WorkgroupsController < Admin::BaseController
inherit_resources
def index
if (params[:per_page] && params[:per_page].to_i > 0 && params[:per_page].to_i <= 100)
@per_page = params[:per_page].to_i
else
@per_page = 20
end
@workgroups = Workgroup.order(:name.asc)
# if somebody uses the search field:
@workgroups = @workgroups.where(:name.matches => "%#{params[:query]}%") unless params[:query].blank?
# if the search field is used
conditions = "name LIKE '%#{params[:query]}%'" unless params[:query].nil?
@total = Ordergroup.count(:conditions => conditions )
@workgroups = Workgroup.paginate(:conditions => conditions, :page => params[:page],
:per_page => @per_page, :order => 'name')
@workgroups = @workgroups.paginate(:page => params[:page], :per_page => @per_page)
respond_to do |format|
format.html # index.html.erb
format.js { render :partial => "workgroups" }
format.html # index.html.haml
format.js { render :layout => false } # index.js.erb
end
end
def show
@workgroup = Workgroup.find(params[:id])
end
def new
@workgroup = Workgroup.new
end
def edit
@workgroup = Workgroup.find(params[:id])
end
def create
@workgroup = Workgroup.new(params[:workgroup])
if @workgroup.save
flash[:notice] = 'Workgroup was successfully created.'
redirect_to([:admin, @workgroup])
else
render :action => "new"
end
end
def update
@workgroup = Workgroup.find(params[:id])
if @workgroup.update_attributes(params[:workgroup])
flash[:notice] = 'Workgroup was successfully updated.'
redirect_to([:admin, @workgroup])
else
render :action => "edit"
end
end
def destroy
@workgroup = Workgroup.find(params[:id])
@workgroup.destroy
redirect_to(admin_workgroups_url)
end
def memberships
@group = Workgroup.find(params[:id])
end

View file

@ -1,7 +1,7 @@
class ApplicationController < ActionController::Base
protect_from_forgery
before_filter :select_foodcoop, :authenticate, :store_controller
before_filter :select_foodcoop, :authenticate, :store_controller, :items_per_page
after_filter :remove_controller
helper_method :current_user
@ -136,4 +136,12 @@ class ApplicationController < ActionController::Base
RoutingFilter::Foodcoop.active = false
end
end
def items_per_page
if (params[:per_page] && params[:per_page].to_i > 0 && params[:per_page].to_i <= 100)
@per_page = params[:per_page].to_i
else
@per_page = 20
end
end
end

View file

@ -2,12 +2,6 @@ class ArticlesController < ApplicationController
before_filter :authenticate_article_meta, :find_supplier
def index
if (params[:per_page] && params[:per_page].to_i > 0 && params[:per_page].to_i <= 500)
@per_page = params[:per_page].to_i
else
@per_page = 30
end
if params['sort']
sort = case params['sort']
when "name" then "articles.name"

View file

@ -2,11 +2,6 @@ class Finance::OrdergroupsController < ApplicationController
before_filter :authenticate_finance
def index
if (params[:per_page] && params[:per_page].to_i > 0 && params[:per_page].to_i <= 100)
@per_page = params[:per_page].to_i
else
@per_page = 20
end
if params["sort"]
sort = case params["sort"]
when "name" then "name"

View file

@ -1,12 +1,6 @@
class Foodcoop::OrdergroupsController < ApplicationController
def index
if (params[:per_page] && params[:per_page].to_i > 0 && params[:per_page].to_i <= 100)
@per_page = params[:per_page].to_i
else
@per_page = 20
end
@ordergroups = Ordergroup.order(:name.desc)
@ordergroups = @ordergroups.where(:name.matches => "%#{params[:query]}%") unless params[:query].blank? # Search by name
@ordergroups = @ordergroups.joins(:orders).where(:orders => {:starts.gte => Time.now.months_ago(3)}) if params[:only_active] # Select only active groups

View file

@ -8,13 +8,6 @@ class Foodcoop::UsersController < ApplicationController
@users = @users.where(({:first_name.matches => "%#{params[:query]}%"}) | ({:last_name.matches => "%#{params[:query]}%"}) | ({:nick.matches => "%#{params[:query]}%"}))
end
# sort by nick, thats default
if (params[:per_page] && params[:per_page].to_i > 0 && params[:per_page].to_i <= 100)
@per_page = params[:per_page].to_i
else
@per_page = 20
end
@users = @users.paginate(:page => params[:page], :per_page => @per_page)
respond_to do |format|