spree_suppliers 0.60.3 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- metadata +41 -215
- data/README +0 -46
- data/Rakefile +0 -137
- data/app/controllers/admin/pickup_locations_controller.rb +0 -52
- data/app/controllers/admin/pickups_controller.rb +0 -84
- data/app/controllers/admin/shipping_options_controller.rb +0 -32
- data/app/controllers/admin/supplier_taxons_controller.rb +0 -65
- data/app/controllers/admin/suppliers_controller.rb +0 -203
- data/app/controllers/admin/vendor_overview_controller.rb +0 -18
- data/app/controllers/dash/base_controller.rb +0 -10
- data/app/controllers/dash/overview_controller.rb +0 -6
- data/app/controllers/dash/pickup_locations_controller.rb +0 -27
- data/app/controllers/dash/pickups_controller.rb +0 -40
- data/app/controllers/dash/products_controller.rb +0 -15
- data/app/controllers/messages_controller.rb +0 -17
- data/app/controllers/suppliers_controller.rb +0 -19
- data/app/controllers/user_sessions_decorator.rb +0 -39
- data/app/helpers/admin/suppliers_helper.rb +0 -21
- data/app/helpers/cities_helper.rb +0 -2
- data/app/helpers/dragonfly_helper.rb +0 -16
- data/app/helpers/messages_helper.rb +0 -2
- data/app/helpers/suppliers_helper.rb +0 -16
- data/app/mailers/supplier_mailer.rb +0 -11
- data/app/models/ability_decorator.rb +0 -19
- data/app/models/delivery.rb +0 -6
- data/app/models/hour.rb +0 -4
- data/app/models/item.rb +0 -5
- data/app/models/message.rb +0 -3
- data/app/models/pickup.rb +0 -10
- data/app/models/pickup_date.rb +0 -3
- data/app/models/pickup_location.rb +0 -7
- data/app/models/supplier.rb +0 -33
- data/app/models/supplier_invoice.rb +0 -5
- data/app/views/admin/orders/index.html.erb +0 -107
- data/app/views/admin/orders/show.html.erb +0 -35
- data/app/views/admin/orders/user.html.erb +0 -19
- data/app/views/admin/pickup_locations/_pickup_location.html.erb +0 -10
- data/app/views/admin/pickup_locations/edit.html.erb +0 -44
- data/app/views/admin/pickup_locations/new.html.erb +0 -48
- data/app/views/admin/pickup_locations/show.html.erb +0 -1
- data/app/views/admin/pickups/_pickup.erb +0 -0
- data/app/views/admin/pickups/index.html.erb +0 -44
- data/app/views/admin/pickups/new.html.erb +0 -33
- data/app/views/admin/pickups/show.html.erb +0 -42
- data/app/views/admin/products/_suppliers_form.html.erb +0 -5
- data/app/views/admin/shared/_order_tabs_decide.html.erb +0 -5
- data/app/views/admin/shared/_vendor_order_tabs.html.erb +0 -39
- data/app/views/admin/shipping_options/edit.html.erb +0 -38
- data/app/views/admin/supplier_taxons/_form.html.erb +0 -23
- data/app/views/admin/supplier_taxons/_taxon_table.html.erb +0 -23
- data/app/views/admin/supplier_taxons/available.js.erb +0 -33
- data/app/views/admin/supplier_taxons/edit.html.erb +0 -11
- data/app/views/admin/supplier_taxons/remove.html.erb +0 -1
- data/app/views/admin/supplier_taxons/select.js.erb +0 -2
- data/app/views/admin/supplier_taxons/selected.html.erb +0 -51
- data/app/views/admin/suppliers/_edit_form.html.erb +0 -75
- data/app/views/admin/suppliers/_edit_hours_form.html.erb +0 -18
- data/app/views/admin/suppliers/_form.html.erb +0 -72
- data/app/views/admin/suppliers/_hours_form.html.erb +0 -11
- data/app/views/admin/suppliers/_image_form.html.erb +0 -40
- data/app/views/admin/suppliers/_supplier.html.erb +0 -37
- data/app/views/admin/suppliers/_supplier_tabs.html.erb +0 -18
- data/app/views/admin/suppliers/_suppliers_table.html.erb +0 -25
- data/app/views/admin/suppliers/_upload_image.html.erb +0 -14
- data/app/views/admin/suppliers/available.js.erb +0 -34
- data/app/views/admin/suppliers/edit.html.erb +0 -20
- data/app/views/admin/suppliers/index.html.erb +0 -102
- data/app/views/admin/suppliers/line_items.html.erb +0 -20
- data/app/views/admin/suppliers/new.html.erb +0 -22
- data/app/views/admin/suppliers/remove.html.erb +0 -1
- data/app/views/admin/suppliers/select.html.erb +0 -1
- data/app/views/admin/suppliers/selected.html.erb +0 -40
- data/app/views/admin/suppliers/show.html.erb +0 -2
- data/app/views/admin/users/_form.html.erb +0 -40
- data/app/views/admin/vendor_overview/index.html.erb +0 -1
- data/app/views/checkout/_delivery.html.erb +0 -5
- data/app/views/dash/overview/index.html.erb +0 -58
- data/app/views/dash/pickup_locations/_pickup_location.html.erb +0 -3
- data/app/views/dash/pickup_locations/new.html.erb +0 -47
- data/app/views/dash/pickups/_pickup.erb +0 -3
- data/app/views/dash/pickups/new.html.erb +0 -24
- data/app/views/dash/products/new.html.erb +0 -38
- data/app/views/layouts/admin.html.erb +0 -81
- data/app/views/messages/_message_form.html.erb +0 -17
- data/app/views/messages/create.html.erb +0 -2
- data/app/views/messages/destroy.html.erb +0 -2
- data/app/views/messages/new.html.erb +0 -2
- data/app/views/shared/_deliveries.html.erb +0 -113
- data/app/views/shared/_hours.html.erb +0 -21
- data/app/views/shared/_products_vendor.html.erb +0 -49
- data/app/views/shared/_supplier_invoices.html.erb +0 -67
- data/app/views/supplier_mailer/invoice_email.html.erb +0 -72
- data/app/views/suppliers/_supplier.html.erb +0 -7
- data/app/views/suppliers/_supplier_list.erb +0 -20
- data/app/views/suppliers/index.html.erb +0 -17
- data/app/views/suppliers/show.html.erb +0 -106
- data/app/views/suppliers/supplier_list.erb +0 -14
- data/config/initializers/dragonfly.rb +0 -8
- data/config/initializers/supplier_invoice_mailer.rb +0 -10
- data/config/locales/en-US.yml +0 -13
- data/config/routes.rb +0 -48
- data/db/migrate/20091209201716_supplier_setup.rb +0 -36
- data/db/migrate/20110922213437_create_messages.rb +0 -18
- data/db/migrate/20110928203155_create_hours.rb +0 -21
- data/db/migrate/20111006185052_create_pickups.rb +0 -17
- data/db/migrate/20111010191125_add_location_to_addresses.rb +0 -9
- data/db/migrate/20111010214313_create_pickup_dates.rb +0 -14
- data/db/migrate/20111011180211_add_supplier_id_to_user.rb +0 -9
- data/db/migrate/20111012211422_create_pickup_locations.rb +0 -21
- data/db/migrate/20111013155257_create_supplier_invoices.rb +0 -16
- data/db/migrate/20111013161225_create_items.rb +0 -18
- data/db/migrate/20111018133543_add_attributes_to_products.rb +0 -17
- data/db/migrate/20111028190454_add_attributes_to_assets.rb +0 -11
- data/db/migrate/20111029230805_create_suppliers_taxons.rb +0 -16
- data/db/migrate/20111101165933_create_deliveries.rb +0 -17
- data/db/migrate/20111108213108_create_shipping_methods_suppliers.rb +0 -16
- data/db/seeds.rb +0 -14
- data/lib/spree_suppliers.rb +0 -411
- data/lib/spree_suppliers_hooks.rb +0 -40
- data/lib/tasks/spree_suppliers.rake +0 -27
- data/public/javascripts/jquery-ui.js +0 -312
- data/public/javascripts/jquery-ui.multidatespicker.js +0 -398
- data/public/javascripts/jquery.ui.datepicker.js +0 -1791
- data/public/stylesheets/suppliers.css +0 -676
- data/spec/controllers/cities_controller_spec.rb +0 -157
- data/spec/controllers/shipping_options_controller_spec.rb +0 -12
- data/spec/helpers/cities_helper_spec.rb +0 -15
- data/spec/models/city_spec.rb +0 -5
- data/spec/models/comment_spec.rb +0 -64
- data/spec/models/item_spec.rb +0 -5
- data/spec/models/message_spec.rb +0 -5
- data/spec/models/pickup_date_spec.rb +0 -5
- data/spec/models/pickup_location_spec.rb +0 -5
- data/spec/models/pickup_spec.rb +0 -5
- data/spec/models/rating_spec.rb +0 -24
- data/spec/models/supplier_invoice_spec.rb +0 -5
- data/spec/models/supplier_spec.rb +0 -11
- data/spec/requests/cities_spec.rb +0 -11
- data/spec/routing/cities_routing_spec.rb +0 -35
- data/spec/spec.opts +0 -6
- data/spec/spec_helper.rb +0 -37
- data/spec/views/cities/edit.html.erb_spec.rb +0 -22
- data/spec/views/cities/index.html.erb_spec.rb +0 -28
- data/spec/views/cities/new.html.erb_spec.rb +0 -22
- data/spec/views/cities/show.html.erb_spec.rb +0 -21
- data/spec/views/shipping_options/edit.html.erb_spec.rb +0 -5
- data/spree_suppliers.gemspec +0 -24
@@ -1,10 +0,0 @@
|
|
1
|
-
class Dash::BaseController < Spree::BaseController
|
2
|
-
|
3
|
-
before_filter :authenticate_user!, :vendor_role
|
4
|
-
def vendor_role
|
5
|
-
if !current_user.roles.member?(Role.find_by_name("vendor"))
|
6
|
-
flash[:error] = "You are not a vendor"
|
7
|
-
redirect_to root_path
|
8
|
-
end
|
9
|
-
end
|
10
|
-
end
|
@@ -1,27 +0,0 @@
|
|
1
|
-
class Dash::PickupLocationsController < Dash::BaseController
|
2
|
-
def new
|
3
|
-
@pickup_locations = (current_user.supplier.pickup_locations + PickupLocation.locate).uniq
|
4
|
-
@pickup_location = PickupLocation.new()
|
5
|
-
end
|
6
|
-
|
7
|
-
def business_hours
|
8
|
-
days = {}
|
9
|
-
["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"].each do |day|
|
10
|
-
days.merge!({day.downcase.to_sym => params["#{day}_begin"] + ":" + params["#{day}_begin_mins"] + " " + params["#{day}_begin_type"].upcase + " to " + params["#{day}_end"] + ":" + params["#{day}_end_mins"] + " " + params["#{day}_end_type"].upcase} )
|
11
|
-
if params["#{day}_closed"] == "Closed"
|
12
|
-
days.merge!({day.downcase.to_sym => "Closed"})
|
13
|
-
end
|
14
|
-
end
|
15
|
-
days
|
16
|
-
end
|
17
|
-
|
18
|
-
def create
|
19
|
-
@pickup_location = current_user.supplier.pickup_locations.build(params[:pickup_location])
|
20
|
-
if @pickup_location.save
|
21
|
-
@pickup_location.hours.create(business_hours)
|
22
|
-
redirect_to new_dash_pickup_location_path, :notice => "New location added"
|
23
|
-
else
|
24
|
-
render "new", :notice => "Failed to create location"
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
@@ -1,40 +0,0 @@
|
|
1
|
-
class Dash::PickupsController < Dash::BaseController
|
2
|
-
def new
|
3
|
-
@pickups = current_user.supplier.pickups
|
4
|
-
@locations = (current_user.supplier.pickup_locations + PickupLocation.locate).uniq
|
5
|
-
end
|
6
|
-
|
7
|
-
def create_dates dates
|
8
|
-
dates = dates[0].split(',')
|
9
|
-
new_dates = []
|
10
|
-
dates.each do |d|
|
11
|
-
begin
|
12
|
-
new_dates.push(Date.strptime(d, "%m/%d/%Y"))
|
13
|
-
rescue
|
14
|
-
return false
|
15
|
-
end
|
16
|
-
end
|
17
|
-
pickups = []
|
18
|
-
new_dates.each do |day|
|
19
|
-
pickups.push(PickupDate.new({:day => day}))
|
20
|
-
end
|
21
|
-
pickups
|
22
|
-
end
|
23
|
-
|
24
|
-
def create
|
25
|
-
@pickup = current_user.supplier.pickups.build ({:pickup_location_id => params[:locations]})
|
26
|
-
pickup_dates = create_dates(params[:dates])
|
27
|
-
if pickup_dates != false
|
28
|
-
@pickup.pickup_dates = pickup_dates
|
29
|
-
else
|
30
|
-
flash[:error] = "Errors in creating dates"
|
31
|
-
redirect_to dash_pickups_path and return
|
32
|
-
end
|
33
|
-
if @pickup.save
|
34
|
-
redirect_to new_dash_pickup_path, :message => "Successful creation"
|
35
|
-
else
|
36
|
-
redirect_to new_dash_pickup_path, :error => "Errors in creating dates"
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
|
-
end
|
@@ -1,15 +0,0 @@
|
|
1
|
-
class Dash::ProductsController < Dash::BaseController
|
2
|
-
def new
|
3
|
-
@product = Product.new
|
4
|
-
@options = Taxon.all
|
5
|
-
end
|
6
|
-
def create
|
7
|
-
@product = current_user.supplier.products.build(params[:product])
|
8
|
-
Taxon.all.map {|m| @product.taxons.push(Taxon.find_by_id(params[m.name])) if params.member?(m.name) }
|
9
|
-
if @product.save
|
10
|
-
redirect_to dash_overview_index_path, :notice => "New product created"
|
11
|
-
else
|
12
|
-
render "new"
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
class MessagesController < ApplicationController
|
2
|
-
|
3
|
-
def create
|
4
|
-
@message = Message.new(params[:message])
|
5
|
-
if @message.save
|
6
|
-
flash[:notice] = "Message sent"
|
7
|
-
redirect_to :back
|
8
|
-
else
|
9
|
-
flash[:error] = @message.errors
|
10
|
-
redirect_to :back
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
def destroy
|
15
|
-
end
|
16
|
-
|
17
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
class SuppliersController < Spree::BaseController
|
2
|
-
helper :products
|
3
|
-
helper :dragonfly
|
4
|
-
respond_to :html
|
5
|
-
|
6
|
-
def index
|
7
|
-
@search = Supplier.search(params[:search])
|
8
|
-
### @suppliers = Supplier.where("name LIKE ?", "%#{params[:search]}%")
|
9
|
-
@suppliers = @search.all
|
10
|
-
respond_with(@suppliers)
|
11
|
-
end
|
12
|
-
|
13
|
-
def show
|
14
|
-
@supplier = Supplier.find_by_slug(params[:id]) || Supplier.find(params[:id])
|
15
|
-
@products = Product.find(:all, :conditions => { :supplier_id => @supplier.id , :deleted_at => nil }).paginate(:page => params[:page], :per_page => 12)
|
16
|
-
@json = @supplier.to_gmaps4rails
|
17
|
-
@message = Message.new
|
18
|
-
end
|
19
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
UserSessionsController.class_eval do
|
2
|
-
|
3
|
-
layout "sign_in"
|
4
|
-
|
5
|
-
# SSL is required in the Gem for new, create, update, and destroy
|
6
|
-
|
7
|
-
def destroy
|
8
|
-
session.clear
|
9
|
-
super
|
10
|
-
# added flash notice when users log out
|
11
|
-
flash[:notice] = I18n.t("logged_out")
|
12
|
-
end
|
13
|
-
|
14
|
-
def create
|
15
|
-
authenticate_user!
|
16
|
-
if user_signed_in?
|
17
|
-
respond_to do |format|
|
18
|
-
format.html {
|
19
|
-
flash[:notice] = I18n.t("logged_in_succesfully")
|
20
|
-
if current_user.has_role?("vendor")
|
21
|
-
redirect_to admin_vendor_overview_index_path
|
22
|
-
elsif current_user.has_role?("admin")
|
23
|
-
redirect_to admin_overview_index_path
|
24
|
-
else
|
25
|
-
redirect_back_or_default(root_path)
|
26
|
-
end
|
27
|
-
}
|
28
|
-
format.js {
|
29
|
-
user = resource.record
|
30
|
-
render :json => {:ship_address => user.ship_address, :bill_address => user.bill_address}.to_json
|
31
|
-
}
|
32
|
-
end
|
33
|
-
else
|
34
|
-
flash[:error] = I18n.t("devise.failure.invalid")
|
35
|
-
render :new
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
|
-
end
|
@@ -1,21 +0,0 @@
|
|
1
|
-
module Admin::SuppliersHelper
|
2
|
-
def find_minutes outcome
|
3
|
-
minutes = outcome.scan(/:\d+/)
|
4
|
-
minutes.each do |s|
|
5
|
-
s.delete!(":")
|
6
|
-
end
|
7
|
-
minutes
|
8
|
-
end
|
9
|
-
|
10
|
-
def find_periods outcome
|
11
|
-
periods = outcome.scan(/(AM|PM)/)
|
12
|
-
end
|
13
|
-
|
14
|
-
def find_hours outcome
|
15
|
-
hours = outcome.scan(/\d+:/)
|
16
|
-
hours.each do | s|
|
17
|
-
s.delete!(":")
|
18
|
-
end
|
19
|
-
hours
|
20
|
-
end
|
21
|
-
end
|
@@ -1,16 +0,0 @@
|
|
1
|
-
module DragonflyHelper
|
2
|
-
def dragonfly_app
|
3
|
-
Dragonfly[:images]
|
4
|
-
end
|
5
|
-
|
6
|
-
def sized_image(image, size)
|
7
|
-
if image != nil
|
8
|
-
if image.attachment.to_file != nil
|
9
|
-
image_tag(dragonfly_app.fetch_file(image.attachment.to_file.path).thumb(size).url)
|
10
|
-
end
|
11
|
-
else
|
12
|
-
noimage = File.open(File.join(Rails.root, "public", "images", "noimage", "product.jpg"))
|
13
|
-
image_tag(dragonfly_app.fetch_file(noimage.path).thumb(size).url)
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
@@ -1,16 +0,0 @@
|
|
1
|
-
module SuppliersHelper
|
2
|
-
def dragonfly_app
|
3
|
-
Dragonfly[:images]
|
4
|
-
end
|
5
|
-
|
6
|
-
def sized_image(image, size)
|
7
|
-
if image != nil
|
8
|
-
if image.attachment.to_file != nil
|
9
|
-
image_tag(dragonfly_app.fetch_file(image.attachment.to_file.path).thumb(size).url)
|
10
|
-
end
|
11
|
-
else
|
12
|
-
noimage = File.open(File.join(Rails.root, "public", "images", "noimage", "product.jpg"))
|
13
|
-
image_tag(dragonfly_app.fetch_file(noimage.path).thumb(size).url)
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
@@ -1,11 +0,0 @@
|
|
1
|
-
class SupplierMailer < ActionMailer::Base
|
2
|
-
|
3
|
-
def invoice_email(invoice)
|
4
|
-
@invoice = invoice
|
5
|
-
@supplier = @invoice.supplier
|
6
|
-
@fee = 0.14
|
7
|
-
@delivery = Delivery.find(:all, :conditions => { :order_id => @invoice.order.id, :supplier_id => @invoice.supplier_id})
|
8
|
-
mail(:to => @supplier.email, :subject => "Sale on Freshfully.com!", :from => "support@freshfully.com")
|
9
|
-
end
|
10
|
-
|
11
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
class AbilityDecorator
|
2
|
-
include CanCan::Ability
|
3
|
-
def initialize(user)
|
4
|
-
if user.has_role? "vendor"
|
5
|
-
can :manage, Product
|
6
|
-
can :manage, Variant
|
7
|
-
can :manage, OptionType
|
8
|
-
can :manage, Property
|
9
|
-
can :manage, Prototype
|
10
|
-
can :manage, ProductGroup
|
11
|
-
can :manage, ProductProperty
|
12
|
-
can :manage, Taxon
|
13
|
-
can :manage, Pickup
|
14
|
-
can :manage, PickupLocation
|
15
|
-
can :manage, Order
|
16
|
-
can :manage, Supplier
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
data/app/models/delivery.rb
DELETED
data/app/models/hour.rb
DELETED
data/app/models/item.rb
DELETED
data/app/models/message.rb
DELETED
data/app/models/pickup.rb
DELETED
data/app/models/pickup_date.rb
DELETED
data/app/models/supplier.rb
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
class Supplier < ActiveRecord::Base
|
2
|
-
validates :title, :presence => true
|
3
|
-
# scope :current_city, lambda {|id| where("city_id", id)}
|
4
|
-
acts_as_gmappable :check_process => false
|
5
|
-
acts_as_url :title, :url_attribute => :slug, :scope => :state_id
|
6
|
-
|
7
|
-
def gmaps4rails_address
|
8
|
-
country = State.find_by_id(self.state_id).country.name
|
9
|
-
"#{self.address1}, #{self.town}, #{self.state.name}, #{self.zip_code}"
|
10
|
-
end
|
11
|
-
|
12
|
-
def gmaps4rails_title
|
13
|
-
self.name
|
14
|
-
end
|
15
|
-
|
16
|
-
def gmaps4rails_infowindow
|
17
|
-
"<a href='/#{self.state.abbr}/#{self.slug}'>#{self.title}</a>"
|
18
|
-
end
|
19
|
-
|
20
|
-
belongs_to :state
|
21
|
-
has_one :user
|
22
|
-
has_many :products
|
23
|
-
has_many :messages
|
24
|
-
has_many :hours
|
25
|
-
has_many :pickups
|
26
|
-
has_many :pickup_locations
|
27
|
-
has_many :images, :as => :viewable, :order => :position, :dependent => :destroy
|
28
|
-
accepts_nested_attributes_for :hours
|
29
|
-
has_many :supplier_invoices
|
30
|
-
has_and_belongs_to_many :taxons
|
31
|
-
has_and_belongs_to_many :shipping_methods
|
32
|
-
has_many :deliveries
|
33
|
-
end
|
@@ -1,107 +0,0 @@
|
|
1
|
-
|
2
|
-
<% if current_user.has_role?("admin") %>
|
3
|
-
<div class='toolbar order-links'>
|
4
|
-
<%= button_link_to t("new_order"), new_admin_order_url, :icon => 'add', :id => 'admin_new_order' %>
|
5
|
-
</div>
|
6
|
-
<% end %>
|
7
|
-
|
8
|
-
<%= render :partial => 'admin/shared/order_sub_menu' %>
|
9
|
-
|
10
|
-
<h1><%= t("listing_orders") %></h1>
|
11
|
-
|
12
|
-
<table class="index" id='listing_orders'>
|
13
|
-
<thead>
|
14
|
-
<tr>
|
15
|
-
<%= hook :admin_orders_index_headers do %>
|
16
|
-
<% if @show_only_completed %>
|
17
|
-
<th><%= sort_link @search, :completed_at, t("activerecord.attributes.order.completed_at") %></th>
|
18
|
-
<% else %>
|
19
|
-
<th><%= sort_link @search, :created_at, t("order_date") %></th>
|
20
|
-
<% end %>
|
21
|
-
<th><%= sort_link @search, :number, t("order_number") %></th>
|
22
|
-
<th><%= sort_link @search, :state, t("status") %></th>
|
23
|
-
<th><%= sort_link @search, :payment_state, t("payment_state") %></th>
|
24
|
-
<th><%= sort_link @search, :shipment_state, t("shipment_state") %></th>
|
25
|
-
<th><%= sort_link @search, :email, t("customer") %></th>
|
26
|
-
<th><%= sort_link @search, :total, t("total") %></th>
|
27
|
-
<% end %>
|
28
|
-
<th>
|
29
|
-
<%= hook :admin_orders_index_header_actions %>
|
30
|
-
</th>
|
31
|
-
</tr>
|
32
|
-
</thead>
|
33
|
-
|
34
|
-
<tbody>
|
35
|
-
<% @orders.each do |order| %>
|
36
|
-
<tr>
|
37
|
-
<%- locals = {:order => order} %>
|
38
|
-
<%= hook :admin_orders_index_rows, locals do %>
|
39
|
-
<td><%= (@show_only_completed ? order.completed_at : order.created_at).to_date %></td>
|
40
|
-
<td><%= link_to order.number, admin_order_path(order) %></td>
|
41
|
-
<td><%= t("order_state.#{order.state.downcase}") %></td>
|
42
|
-
<td><%= link_to t("payment_states.#{order.payment_state}"), admin_order_payments_path(order) if order.payment_state %></td>
|
43
|
-
<td><%= link_to t("shipment_states.#{order.shipment_state}"), admin_order_shipments_path(order) if order.shipment_state %></td>
|
44
|
-
<td><%= order.email %></td>
|
45
|
-
<td><%= number_to_currency order.total %></td>
|
46
|
-
<% end %>
|
47
|
-
<td class='actions'>
|
48
|
-
<%= hook :admin_orders_index_row_actions, locals do %>
|
49
|
-
<%= link_to_edit_url edit_admin_order_path(order), :title => "admin_edit_#{dom_id(order)}" %>
|
50
|
-
<% end %>
|
51
|
-
</td>
|
52
|
-
</tr>
|
53
|
-
<% end %>
|
54
|
-
</tbody>
|
55
|
-
</table>
|
56
|
-
<%= will_paginate(@orders, :previous_label => "« #{t('previous')}", :next_label => "#{t('next')} »") %>
|
57
|
-
|
58
|
-
|
59
|
-
<% content_for :sidebar do %>
|
60
|
-
<div class="box">
|
61
|
-
<h3><%= t(:search) %></h3>
|
62
|
-
<%= form_for [:admin, @search] do |f| %>
|
63
|
-
<%- locals = {:f => f} %>
|
64
|
-
<%= hook :admin_orders_index_search, locals do %>
|
65
|
-
<label><%= t("date_range") %></label><br />
|
66
|
-
<div class="yui-g date-range-filter">
|
67
|
-
<div class="yui-u sub-field first">
|
68
|
-
<%= f.spree_date_picker :created_at_greater_than %><br />
|
69
|
-
<label class="sub"><%= t("start") %></label>
|
70
|
-
</div>
|
71
|
-
<div class="yui-u sub-field">
|
72
|
-
<%= f.spree_date_picker :created_at_less_than %><br />
|
73
|
-
<label><%= t("stop") %></label>
|
74
|
-
</div>
|
75
|
-
</div>
|
76
|
-
|
77
|
-
<p><label><%= t("status") %></label><br />
|
78
|
-
<%= f.select :state_equals, Order.state_machines[:state].states.collect {|s| [t("order_state.#{s.name}"), s.value]}, {:include_blank => true} %></p>
|
79
|
-
|
80
|
-
<p><label><%= t 'order_number' %></label><br />
|
81
|
-
<%= f.text_field :number_like, :size=>25 %></p>
|
82
|
-
|
83
|
-
<p>
|
84
|
-
<label><%= t 'email' %></label><br />
|
85
|
-
<%= f.text_field :email_like, :size=>25 %>
|
86
|
-
</p>
|
87
|
-
<p>
|
88
|
-
<label><%= t 'first_name_begins_with' %></label><br />
|
89
|
-
<%= f.text_field :bill_address_firstname_starts_with, :size=>25 %>
|
90
|
-
</p>
|
91
|
-
<p>
|
92
|
-
<label><%= t 'last_name_begins_with' %></label><br />
|
93
|
-
<%= f.text_field :bill_address_lastname_starts_with, :size=>25 %>
|
94
|
-
</p>
|
95
|
-
<p>
|
96
|
-
<%= f.check_box :completed_at_is_not_null, {:checked => @show_only_completed}, "1", "" %>
|
97
|
-
<label>
|
98
|
-
<%= t("show_only_complete_orders") %>
|
99
|
-
</label>
|
100
|
-
</p>
|
101
|
-
<% end %>
|
102
|
-
<%= hook :admin_orders_index_search_buttons, locals do %>
|
103
|
-
<p><%= button t("search") %></p>
|
104
|
-
<% end %>
|
105
|
-
<% end %>
|
106
|
-
</div>
|
107
|
-
<% end %>
|