camaleon_cms 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of camaleon_cms might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/app/controllers/admin/settings/custom_fields_controller.rb +11 -0
- data/app/controllers/admin_controller.rb +2 -1
- data/app/controllers/concerns/frontend_concern.rb +6 -1
- data/app/helpers/camaleon_helper.rb +5 -1
- data/app/views/admin/settings/custom_fields/form.html.erb +1 -4
- data/app/views/admin/settings/custom_fields/index.html.erb +1 -2
- data/config/initializers/rufus_cron.rb +1 -1
- data/config/routes/admin.rb +1 -0
- data/config/sitemap.rb +4 -0
- data/lib/camaleon_cms/version.rb +1 -1
- data/lib/generators/camaleon_cms/install_generator.rb +1 -1
- data/lib/generators/camaleon_cms/install_template/plugin_routes.rb +1 -1
- data/lib/tasks/camaleon_cms_tasks.rake +19 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 172ad82621088cd3ba8a3500d1802dd2d5946297
|
4
|
+
data.tar.gz: 7e6d38e9b55c818502af17c5dcbf6e5d7d463cf4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4fbe08809da6873778f890d68781a5590dc37c5a1b7494299a593390bbc54ec8be38fc3997157930e15fedbd1078b579fdffdd54ccf1b08d21ea0be260eb3fc0
|
7
|
+
data.tar.gz: 2bab345c0dde92e94e82f32329f3bbbf294635fac9e19006720438b71bf0825cb00573efd6dea850d6d2b1b45806cf604580164606b5852d12566efea9821ab8
|
@@ -50,6 +50,7 @@ class Admin::Settings::CustomFieldsController < Admin::SettingsController
|
|
50
50
|
render 'form'
|
51
51
|
end
|
52
52
|
|
53
|
+
# create a new custom field group
|
53
54
|
def create
|
54
55
|
post_data = params[:custom_field_group]
|
55
56
|
post_data[:object_class], post_data[:objectid] = post_data[:assign_group].split(',')
|
@@ -64,12 +65,22 @@ class Admin::Settings::CustomFieldsController < Admin::SettingsController
|
|
64
65
|
end
|
65
66
|
end
|
66
67
|
|
68
|
+
# destroy a custom field group
|
67
69
|
def destroy
|
68
70
|
@field_group.destroy
|
69
71
|
|
70
72
|
redirect_to action: :index
|
71
73
|
end
|
72
74
|
|
75
|
+
# reorder custom fields group
|
76
|
+
def reorder
|
77
|
+
params[:values].to_a.each_with_index do |value, index|
|
78
|
+
current_site.custom_field_groups.find(value).update_column('field_order', index)
|
79
|
+
end
|
80
|
+
json = {size: params[:values].size}
|
81
|
+
render json: json
|
82
|
+
end
|
83
|
+
|
73
84
|
private
|
74
85
|
|
75
86
|
def set_custom_field_group
|
@@ -20,11 +20,12 @@ class AdminController < CamaleonController
|
|
20
20
|
before_action :admin_before_hooks
|
21
21
|
after_action :admin_after_hooks
|
22
22
|
|
23
|
+
# render admin dashabord
|
23
24
|
def index
|
24
25
|
|
25
26
|
end
|
26
27
|
|
27
|
-
|
28
|
+
# render admin dashboard
|
28
29
|
def dashboard
|
29
30
|
render "admin/dashboard/index"
|
30
31
|
end
|
@@ -19,7 +19,12 @@ module FrontendConcern extend ActiveSupport::Concern
|
|
19
19
|
format.xml { render(xml: open(path).read) }
|
20
20
|
end
|
21
21
|
else
|
22
|
-
|
22
|
+
Thread.abort_on_exception=true
|
23
|
+
Thread.new do
|
24
|
+
%x(rake camaleon_cms:sitemap)
|
25
|
+
ActiveRecord::Base.connection.close
|
26
|
+
end
|
27
|
+
render text: "Sitemap not found. Generating... Please wait and refresh later.", status: :not_found
|
23
28
|
end
|
24
29
|
end
|
25
30
|
|
@@ -17,7 +17,11 @@ module CamaleonHelper
|
|
17
17
|
# layout_name: path of the template to render
|
18
18
|
# template_name: template name to render in template_path
|
19
19
|
def sendmail(email,subject='Tiene una notificacion',content='',from=nil,attachs=[],template_name = 'mailer', layout_name = 'mailer')
|
20
|
-
|
20
|
+
Thread.abort_on_exception=true
|
21
|
+
Thread.new do
|
22
|
+
HtmlMailer.sender(email, subject, content, from, attachs, root_url, current_site, template_name, layout_name).deliver_now
|
23
|
+
ActiveRecord::Base.connection.close
|
24
|
+
end
|
21
25
|
end
|
22
26
|
|
23
27
|
# execute controller action and return response
|
@@ -65,10 +65,7 @@
|
|
65
65
|
</optgroup>
|
66
66
|
|
67
67
|
<optgroup label="<%= t('admin.sidebar.themes') %>">
|
68
|
-
|
69
|
-
<% value = "Theme,#{theme[:key]}" %>
|
70
|
-
<option value="<%= value %>" data-help="<%= "#{t('admin.settings.tooltip.add_custom_field_themes')}"+ theme[:name] %>"><%= theme[:name] %></option>
|
71
|
-
<% end %>
|
68
|
+
<option value="Theme,<%= current_theme.id %>" data-help=""><%= current_theme.name %></option>
|
72
69
|
</optgroup>
|
73
70
|
|
74
71
|
<optgroup label="<%= t('admin.sidebar.widgets') %>">
|
@@ -52,12 +52,11 @@
|
|
52
52
|
<!-- END BASIC TABLE SAMPLE -->
|
53
53
|
</div>
|
54
54
|
</div>
|
55
|
-
|
56
55
|
</div>
|
57
56
|
|
58
57
|
<script>
|
59
58
|
run.push(function(){
|
60
|
-
$('#table_custom_groups').table_order({url: '<%=
|
59
|
+
$('#table_custom_groups').table_order({url: '<%= reorder_admin_settings_custom_fields_path %>', on_success: function(obj){
|
61
60
|
if(obj.res.error){
|
62
61
|
$.fn.alert({title: obj.res.error, type: 'error'})
|
63
62
|
}else{
|
data/config/routes/admin.rb
CHANGED
data/config/sitemap.rb
CHANGED
@@ -1,6 +1,10 @@
|
|
1
1
|
require 'uri'
|
2
2
|
h = PluginRoutes.system_info["base_domain"]
|
3
3
|
|
4
|
+
# create sitemap directory
|
5
|
+
sitemaps_dir = Rails.root.join("public", "sitemaps").to_s
|
6
|
+
FileUtils.mkdir(sitemaps_dir) unless Dir.exist?(sitemaps_dir)
|
7
|
+
|
4
8
|
Site.all.each do |site|
|
5
9
|
site = site.decorate
|
6
10
|
folder "sitemaps/#{site.slug}"
|
data/lib/camaleon_cms/version.rb
CHANGED
@@ -9,7 +9,7 @@ module CamaleonCms
|
|
9
9
|
def create_initializer_file
|
10
10
|
copy_file "system.json", "config/system.json"
|
11
11
|
copy_file "plugin_routes.rb", "lib/plugin_routes.rb"
|
12
|
-
|
12
|
+
copy_file "../../../Gemfile", "lib/Gemfile_camaleon"
|
13
13
|
directory("apps", "app/apps")
|
14
14
|
append_to_file 'Gemfile' do
|
15
15
|
"\n\n#################### Camaleon CMS include all gems for plugins and themes #################### \nrequire './lib/plugin_routes' \ninstance_eval(PluginRoutes.draw_gems)"
|
@@ -229,7 +229,7 @@ class PluginRoutes
|
|
229
229
|
if camaleon_gem = get_gem('camaleon_cms')
|
230
230
|
res << File.read(File.join(camaleon_gem.gem_dir, "lib", "Gemfile")).gsub("source 'https://rubygems.org'", "")
|
231
231
|
else
|
232
|
-
puts "You need to install camaleon_cms gem."
|
232
|
+
puts "******** Warning: You need to install camaleon_cms gem. *********"
|
233
233
|
return ""
|
234
234
|
end
|
235
235
|
(self.all_themes + self.all_plugins).each do |item|
|
@@ -2,3 +2,22 @@
|
|
2
2
|
# task :camaleon_cms do
|
3
3
|
# # Task goes here
|
4
4
|
# end
|
5
|
+
|
6
|
+
namespace :camaleon_cms do
|
7
|
+
task :sitemap => :environment do
|
8
|
+
include Rails.application.routes.url_helpers
|
9
|
+
include Frontend::ApplicationHelper
|
10
|
+
include SiteHelper
|
11
|
+
include PluginsHelper
|
12
|
+
include HooksHelper
|
13
|
+
|
14
|
+
DynamicSitemaps.configure do |config|
|
15
|
+
config.config_path = File.join($camaleon_engine_dir, "config", "sitemap.rb")
|
16
|
+
end
|
17
|
+
|
18
|
+
start_time = Time.now
|
19
|
+
DynamicSitemaps::Logger.info "Generating sitemap..."
|
20
|
+
DynamicSitemaps.generate_sitemap
|
21
|
+
DynamicSitemaps::Logger.info "Done generating sitemap in #{Time.now - start_time} seconds."
|
22
|
+
end
|
23
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: camaleon_cms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Owen Peredo Diaz
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-08-
|
11
|
+
date: 2015-08-24 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Camaleon CMS is a dynamic and advanced content management system based
|
14
14
|
on Ruby on Rails 4 as an alternative to Wordpress.
|