Sha256: 3c5bc98839f6e7889574590fe5ffec1fb288710c91e44f473c3cb2c1f6a1fb59

Contents?: true

Size: 1.07 KB

Versions: 2

Compression:

Stored size: 1.07 KB

Contents

class Admin::CachingsController < Admin::BaseController
  autoload :FileUtils, 'fileutils'

  def index
    respond_to do |wants|
      wants.html
      wants.json do
        if params[:id] == '0'
          @files = [Rails.configuration.action_controller.page_cache_directory, Rails.cache.cache_path]
        else
          get_files(params[:id])
        end
      end
    end
  end

  def create
    if params[:commit] == t('caching.delete.all').capitalize
      get_files(Rails.configuration.action_controller.page_cache_directory)
      get_files(Rails.cache.cache_path)
    else
      @files = params[:files]
    end

    if @files
      @files.each do |file|
        unless FileUtils.rm_rf(file)
          flash[:error] = t('caching.delete.failed').capitalize
        end
      end
    else
      flash[:error] = t('caching.no_files').capitalize
    end

    flash[:success] = t('caching.delete.create').capitalize
    return redirect_to([forgeos_core, :admin, :cachings])
  end


private

  def get_files(directory)
    @files ||= []
    @files += Dir.glob("#{directory}/*")
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
forgeos_core-1.9.5.rc2 app/controllers/admin/cachings_controller.rb
forgeos_core-1.9.5.rc1 app/controllers/admin/cachings_controller.rb