Sha256: 3f2fa28b01f3d88010558e76d4df3cabd790ffa85029697e2044a93d1bbeb291

Contents?: true

Size: 1.6 KB

Versions: 16

Compression:

Stored size: 1.6 KB

Contents

module Locomotive
  class CurrentSiteController < BaseController

    account_required & within_site

    localized

    before_filter :load_site

    helper Locomotive::SitesHelper

    before_filter :ensure_domains_list, only: :update

    def edit
      authorize @site
      respond_with @site
    end

    def update
      authorize @site
      service.update(@site, site_params)
      respond_with @site, location: -> { edit_current_site_path(current_site) }
    end

    def destroy
      authorize @site
      @site.destroy
      respond_with @site, location: sites_path
    end

    def new_domain
      if params[:domain].present?
        render partial: 'domain', locals: { domain: params[:domain] }
      else
        head :unprocessable_entity
      end
    end

    def new_locale
      if params[:locale].present?
        render partial: 'locale', locals: { locale: params[:locale] }
      else
        head :unprocessable_entity
      end
    end

    def new_url_redirection
      if params[:url_redirection].present? && params[:url_redirection].include?(' ')
        render partial: 'url_redirection', locals: { url_redirection: params[:url_redirection].split(' ') }
      else
        head :unprocessable_entity
      end
    end

    private

    def load_site
      @site = current_site
    end

    def site_params
      params.require(:site).permit(*policy(@site || Site).permitted_attributes)
    end

    def service
      @service ||= Locomotive::SiteService.new(current_locomotive_account)
    end

    def ensure_domains_list
      params[:site][:domains] = [] unless params[:site][:domains]
    end

  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
locomotivecms-3.1.2 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.2.0.rc2 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.2.0.rc1 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.1.1 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.1.0 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.1.0.rc3 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.1.0.rc2 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.1.0.rc1 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.0.1 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.0.0 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.0.0.rc7 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.0.0.rc6 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.0.0.rc5 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.0.0.rc4 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.0.0.rc3 app/controllers/locomotive/current_site_controller.rb
locomotivecms-3.0.0.rc2 app/controllers/locomotive/current_site_controller.rb