89 lines
3.0 KiB
Ruby
89 lines
3.0 KiB
Ruby
class Settings::ShopsController < ApplicationController
|
|
load_and_authorize_resource except: [:create]
|
|
before_action :set_shop, only: [:show, :edit, :update, :destroy]
|
|
|
|
# GET /settings/shops
|
|
# GET /settings/shops.json
|
|
def index
|
|
@settings_shops = Shop.all
|
|
end
|
|
|
|
# GET /settings/shops/1
|
|
# GET /settings/shops/1.json
|
|
def show
|
|
@display_images = @settings_shop.display_images.all
|
|
end
|
|
|
|
# GET /settings/shops/new
|
|
def new
|
|
@settings_shop = Shop.new
|
|
@display_image = @settings_shop.display_images.build
|
|
end
|
|
|
|
# GET /settings/shops/1/edit
|
|
def edit
|
|
end
|
|
|
|
# POST /settings/shops
|
|
# POST /settings/shops.json
|
|
def create
|
|
@settings_shop = Shop.new(shop_params)
|
|
respond_to do |format|
|
|
if @settings_shop.save
|
|
if params[:display_images].present?
|
|
params[:display_images]['image'].each do |a|
|
|
@display_image = @settings_shop.display_images.create!(:shop_id => @shop.id, :image => a)
|
|
end
|
|
end
|
|
format.html { redirect_to settings_shops_url, notice: 'Shop was successfully created.' }
|
|
format.json { render :index, status: :created, location: @settings_shop }
|
|
else
|
|
format.html { render :new }
|
|
format.json { render json: settings_shops_url.errors, status: :unprocessable_entity }
|
|
end
|
|
end
|
|
end
|
|
|
|
# PATCH/PUT /settings/shops/1
|
|
# PATCH/PUT /settings/shops/1.json
|
|
def update
|
|
respond_to do |format|
|
|
if @settings_shop.update(shop_params)
|
|
if params[:display_images].present?
|
|
params[:display_images]['image'].each do |a|
|
|
@display_image = @settings_shop.display_images.create!(:shop_id => @shop.id, :image => a)
|
|
end
|
|
end
|
|
format.html { redirect_to settings_shops_url, notice: 'Shop was successfully updated.' }
|
|
format.json { render :index, status: :ok, location: @settings_shop }
|
|
else
|
|
format.html { render :edit }
|
|
format.json { render json: settings_shops_url.errors, status: :unprocessable_entity }
|
|
end
|
|
end
|
|
end
|
|
|
|
# DELETE /settings/shops/1
|
|
# DELETE /settings/shops/1.json
|
|
def destroy
|
|
@settings_shop.destroy
|
|
flash[:notice] = 'Shop was successfully destroyed.'
|
|
render :json => {:status=> "Success", :url => settings_shops_url }.to_json
|
|
# respond_to do |format|
|
|
# format.html { redirect_to settings_shops_url, notice: 'shop was successfully destroyed.' }
|
|
# format.json { head :no_content }
|
|
# end
|
|
end
|
|
|
|
private
|
|
# Use callbacks to share common setup or constraints between actions.
|
|
def set_shop
|
|
@settings_shop = Shop.find(params[:id])
|
|
end
|
|
|
|
# Never trust parameters from the scary internet, only allow the white list through.
|
|
def shop_params
|
|
params.require(:shop).permit(:logo, :name,:address,:city,:township,:state,:country,:phone_no,:reservation_no,:license,:activated_at,:license_data,:base_currency,:cloud_token,:cloud_url,:owner_token,:id_prefix,:is_rounding_adj,:quick_sale_summary,:calc_tax_order,:show_account_info, display_images_attributes: [:id, :shop_id, :image])
|
|
end
|
|
end
|