Class: Plugins::FrontCache::AdminController

Inherits:
CamaleonCms::Apps::PluginsAdminController show all
Includes:
FrontCacheHelper
Defined in:
app/apps/plugins/front_cache/admin_controller.rb

Instance Method Summary collapse

Methods included from FrontCacheHelper

#front_cache_before_load, #front_cache_clean, #front_cache_front_after_load, #front_cache_front_before_load, #front_cache_on_active, #front_cache_on_inactive, #front_cache_on_render, #front_cache_plugin_options, #front_cache_post_requests

Methods inherited from CamaleonCms::AdminController

#ajax, #cama_get_i18n_frontend, #dashboard, #index, #search

Instance Method Details

#clean_cacheObject



30
31
32
33
34
# File 'app/apps/plugins/front_cache/admin_controller.rb', line 30

def clean_cache
  flash[:notice] = t('plugin.front_cache.message.cache_destroyed').to_s
  front_cache_clean
  redirect_to(request.referer || '/admin/plugins')
end

#save_settingsObject



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'app/apps/plugins/front_cache/admin_controller.rb', line 11

def save_settings
  current_site.set_meta(
    'front_cache_elements',
    {
      paths: (params[:cache][:paths] || []).compact_blank || [],
      posts: params[:cache][:posts] || [],
      post_types: params[:cache][:post_type] || [],
      skip_posts: params[:cache][:skip_posts] || [],
      cache_login: params[:cache][:cache_login],
      home: params[:cache][:home],
      preserve_cache_on_restart: params[:cache][:preserve_cache_on_restart],
      invalidate_only: params[:cache][:invalidate_only],
      cache_counter: current_site.get_meta('front_cache_elements')[:cache_counter] || 0
    }
  )
  flash[:notice] = t('plugin.front_cache.message.settings_saved').to_s
  redirect_to action: :settings
end

#settingsObject



6
7
8
9
# File 'app/apps/plugins/front_cache/admin_controller.rb', line 6

def settings
  @caches = current_site.get_meta('front_cache_elements', { paths: [] })
  @caches[:paths] << '' if @caches[:paths].blank?
end