diff --git a/app/controllers/spree/admin/countries_controller.rb b/app/controllers/spree/admin/countries_controller.rb new file mode 100644 index 0000000000..1b0ddde02d --- /dev/null +++ b/app/controllers/spree/admin/countries_controller.rb @@ -0,0 +1,11 @@ +module Spree + module Admin + class CountriesController < ResourceController + + def collection + super.order(:name) + end + + end + end +end diff --git a/app/controllers/spree/admin/states_controller.rb b/app/controllers/spree/admin/states_controller.rb new file mode 100644 index 0000000000..20736203fe --- /dev/null +++ b/app/controllers/spree/admin/states_controller.rb @@ -0,0 +1,29 @@ +module Spree + module Admin + class StatesController < ResourceController + belongs_to 'spree/country' + before_filter :load_data + + def index + respond_with(@collection) do |format| + format.html + format.js { render :partial => 'state_list' } + end + end + + protected + + def location_after_save + admin_country_states_url(@country) + end + + def collection + super.order(:name) + end + + def load_data + @countries = Country.order(:name) + end + end + end +end diff --git a/app/controllers/spree/admin/zones_controller.rb b/app/controllers/spree/admin/zones_controller.rb new file mode 100644 index 0000000000..bd298e7f2c --- /dev/null +++ b/app/controllers/spree/admin/zones_controller.rb @@ -0,0 +1,26 @@ +module Spree + module Admin + class ZonesController < ResourceController + before_filter :load_data, :except => [:index] + + def new + @zone.zone_members.build + end + + protected + + def collection + params[:q] ||= {} + params[:q][:s] ||= "ascend_by_name" + @search = super.ransack(params[:q]) + @zones = @search.result.page(params[:page]).per(Spree::Config[:orders_per_page]) + end + + def load_data + @countries = Country.order(:name) + @states = State.order(:name) + @zones = Zone.order(:name) + end + end + end +end