lucy_cms 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.5
1
+ 0.0.6
@@ -3,11 +3,8 @@ class CmsAdmin::BaseController < ActionController::Base
3
3
  protect_from_forgery
4
4
 
5
5
  before_filter :fetch_cms_logged_in_user,
6
- :load_admin_cms_site
7
-
8
- unless CmsSite.count == 0 || CmsUser.find(:all, :conditions => {:admin => true, :disabled => false}).count == 0
9
- before_filter :cms_login_required
10
- end
6
+ :load_admin_cms_site,
7
+ :cms_login_required
11
8
  layout 'cms_admin'
12
9
 
13
10
  protected
@@ -16,13 +13,13 @@ protected
16
13
  if CmsSite.count == 0
17
14
  flash[:error] = 'To start you must setup your site'
18
15
  redirect_to new_cms_admin_site_path
19
- else
16
+ else
20
17
  @cms_site = CmsSite.first
21
18
  if @cms_site.version < LucyCms.config.version
22
19
  @cms_site.version = LucyCms.config.version
23
20
  @cms_site.save
24
21
  end
25
- end
22
+ end
26
23
  end
27
24
 
28
25
  def fetch_cms_logged_in_user
@@ -38,6 +35,7 @@ protected
38
35
 
39
36
  def cms_login_required
40
37
  return true if cms_logged_in?
38
+ return true if CmsSite.count == 0 || CmsUser.find(:all, :conditions => {:admin => true, :disabled => false}).count == 0
41
39
  redirect_to new_cms_admin_session_path and return false
42
40
  end
43
41
  end
@@ -7,7 +7,7 @@ class CmsAdmin::SessionsController < CmsAdmin::BaseController
7
7
  end
8
8
 
9
9
  def create
10
- @cms_current_user = CmsUser.authenticate(params[:login], params[:password])
10
+ @cms_current_user = CmsUser.authenticate(params[:login], params[:password], @cms_site.authentication, @cms_site.ldap_hostname, @cms_site.ldap_base_DN, @cms_site.ldap_uid)
11
11
  if @cms_current_user
12
12
  session[:cms_user_id] = @cms_current_user.id
13
13
  redirect_to cms_admin_pages_path
@@ -37,6 +37,7 @@ class CmsAdmin::SitesController < CmsAdmin::BaseController
37
37
  if @cms_site.authentication != 'LDAP'
38
38
  @cms_site.ldap_hostname = ''
39
39
  @cms_site.ldap_base_DN = ''
40
+ @cms_site.ldap_uid = ''
40
41
  end
41
42
  if @cms_site.save
42
43
  flash[:notice] = 'Site updated'
@@ -35,23 +35,28 @@ class CmsAdmin::UploadDirsController < CmsAdmin::BaseController
35
35
  end
36
36
 
37
37
  def uploads
38
+ tempfile = params[:file].tempfile.path
38
39
  @cms_upload_dir = @cms_site.cms_upload_dirs.find(params[:id])
39
40
  @cms_upload_check = @cms_upload_dir.cms_uploads.find_by_cms_upload_dir_id_and_file_file_name( params[:id], params[:file].original_filename)
40
41
  unless @cms_upload_check.nil?
41
42
  @cms_upload_check.destroy
42
43
  end
43
44
  @cms_upload = @cms_upload_dir.cms_uploads.create!(:file => params[:file], :cms_upload_dir_label => @cms_upload_dir.label, :cms_user_id => @cms_current_user.id)
45
+ if File::exists?(tempfile)
46
+ File::delete(tempfile)
47
+ end
44
48
  render :partial => 'file', :object => @cms_upload
45
49
  rescue ActiveRecord::RecordInvalid
46
50
  render :nothing => true, :status => :bad_request
47
51
  end
48
52
 
49
53
  def uploads_destroy
50
- @cms_upload = CmsUpload.find( params[:id])
54
+ @cms_upload = CmsUpload.find(params[:id])
55
+ @cms_upload_dir = @cms_upload.cms_upload_dir
51
56
  @cms_upload.destroy
57
+ redirect_to :action => :show, :id => @cms_upload_dir.id
52
58
  end
53
59
 
54
-
55
60
  def destroy
56
61
  @cms_upload_dir = @cms_site.cms_upload_dirs.find(params[:id])
57
62
  @cms_upload_dir.destroy
@@ -25,6 +25,12 @@ class CmsAdmin::UsersController < CmsAdmin::BaseController
25
25
  render :action => 'new'
26
26
  return
27
27
  end
28
+ else
29
+ if @cms_user.password.nil? || @cms_user.password.empty?
30
+ flash[:error] = 'Password can not be blank'
31
+ render :action => 'new'
32
+ return
33
+ end
28
34
  end
29
35
  if CmsUser.find_by_admin_and_disabled(true,false).nil?
30
36
  if @cms_user.admin == false || @cms_user.disabled == true
@@ -69,6 +75,12 @@ class CmsAdmin::UsersController < CmsAdmin::BaseController
69
75
  render :action => 'edit'
70
76
  return
71
77
  end
78
+ else
79
+ if @cms_user.password.nil? || @cms_user.password.empty?
80
+ flash[:error] = 'Password can not be blank'
81
+ render :action => 'new'
82
+ return
83
+ end
72
84
  end
73
85
  if @cms_user.disabled == true && CmsUser.find(:all, :conditions => {:admin => true, :disabled => false}).count == 1 && CmsUser.find(:all, :conditions => {:admin => true, :disabled => false}).first.id == @cms_user.id
74
86
  flash[:error] = "You can not disable the only Admin"
@@ -1,3 +1,4 @@
1
+ require 'net/ldap'
1
2
  class CmsUser < ActiveRecord::Base
2
3
 
3
4
  validates :login,
@@ -10,17 +11,9 @@ class CmsUser < ActiveRecord::Base
10
11
  validates :last_name,
11
12
  :presence => true
12
13
 
13
- @cms_site = CmsSite.first
14
-
15
- unless @cms_site.nil?
16
- if @cms_site.authentication != 'LDAP'
17
14
  attr_accessor :password_confirmation
18
15
  validates_confirmation_of :password
19
16
 
20
- validates :password,
21
- :presence => true,
22
- :on => :create
23
-
24
17
  # 'password' is a virtual attribute
25
18
  def password
26
19
  @password
@@ -32,24 +25,22 @@ class CmsUser < ActiveRecord::Base
32
25
  create_new_salt
33
26
  self.hashed_password = CmsUser.encrypted_password(self.password, self.salt)
34
27
  end
35
- end
36
- end
37
28
 
38
29
  def full_name
39
30
  [first_name, last_name].join(' ')
40
31
  end
41
32
 
42
- def self.authenticate(login, password)
33
+ def self.authenticate(login, password, authentication, ldap_hostname, ldap_base_DN, ldap_uid)
43
34
 
44
- if @cms_site.authentication == 'LDAP'
35
+ if authentication == 'LDAP'
45
36
  username = login
46
37
 
47
38
  if (password.empty?) then
48
39
  return nil
49
40
  end
50
41
 
51
- ldap = Net::LDAP.new(:host => @cms_site.ldap_hostname, :base => @cms_site.ldap_base_DN)
52
- filter = Net::LDAP::Filter.eq(@cms_site.ldap_uid, login)
42
+ ldap = Net::LDAP.new(:host => ldap_hostname, :base => ldap_base_DN)
43
+ filter = Net::LDAP::Filter.eq(ldap_uid, login)
53
44
  ldap.search(:filter => filter) {|entry| login = entry.dn}
54
45
  ldap.auth(login, password)
55
46
 
@@ -76,7 +67,6 @@ class CmsUser < ActiveRecord::Base
76
67
  user
77
68
  end
78
69
 
79
- rescue Net::LDAP::LdapError
80
70
  end
81
71
 
82
72
  private
@@ -2,7 +2,7 @@
2
2
  <div class='item'>
3
3
  <div class='icon'></div>
4
4
  <div class='action_links'>
5
- <%= link_to 'Delete', uploads_destroy_cms_admin_upload_dir_path(file), :method => :delete, :remote => true, :confirm => 'Are you sure?' %>
5
+ <%= link_to 'Delete', uploads_destroy_cms_admin_upload_dir_path(file), :method => :post, :confirm => 'Are you sure?' %>
6
6
  </div>
7
7
  <div class='label'>
8
8
  <%= link_to file.file_file_name, file.file.url, :target => '_blank', :class => 'filename' %>
@@ -11,7 +11,7 @@
11
11
  <div class='item'>
12
12
  <div class='icon'></div>
13
13
  <div class='action_links'>
14
- <%= link_to 'Delete', uploads_destroy_cms_admin_upload_dir_path(cms_upload), :method => :delete, :remote => true, :confirm => 'Are you sure?' %>
14
+ <%= link_to 'Delete', uploads_destroy_cms_admin_upload_dir_path(cms_upload), :method => :post, :confirm => 'Are you sure?' %>
15
15
  </div>
16
16
  <div class='label'>
17
17
  <%= link_to cms_upload.file_file_name, cms_upload.file.url, :target => '_blank', :class => 'filename' %>
data/config/routes.rb CHANGED
@@ -31,7 +31,7 @@ Rails.application.routes.draw do
31
31
  end
32
32
  member do
33
33
  post :uploads
34
- delete :uploads_destroy
34
+ post :uploads_destroy
35
35
  end
36
36
  end
37
37
  end
@@ -68,7 +68,7 @@ module CmsTag
68
68
  # as a default.
69
69
  def render
70
70
  # cleaning content from possible irb stuff. Partial and Helper tags are OK.
71
- if ComfortableMexicanSofa.config.disable_irb && ![CmsTag::Partial, CmsTag::Helper].member?(self.class)
71
+ if LucyCms.config.disable_irb && ![CmsTag::Partial, CmsTag::Helper].member?(self.class)
72
72
  content.to_s.gsub('<%', '&lt;%').gsub('%>', '%&gt;')
73
73
  else
74
74
  content.to_s
@@ -116,4 +116,4 @@ private
116
116
  def self.tag_classes
117
117
  @@tag_classes ||= []
118
118
  end
119
- end
119
+ end
@@ -24,7 +24,7 @@ class LucyCms::Configuration
24
24
 
25
25
  # Configuration defaults
26
26
  def initialize
27
- @version = '0.0.5'
27
+ @version = '0.0.6'
28
28
  @admin_route_prefix = 'cms-admin'
29
29
  @admin_route_redirect = "/#{@admin_route_prefix}/pages"
30
30
  @seed_data_path = nil
@@ -16,7 +16,7 @@ module LucyCms::ViewHooks
16
16
 
17
17
  # Will declare a partial that will be rendered for this hook
18
18
  # Example:
19
- # ComfortableMexicanSofa::ViewHooks.add(:navigation, 'shared/navigation')
19
+ # LucyCMS::ViewHooks.add(:navigation, 'shared/navigation')
20
20
  def self.add(name, partial_path)
21
21
  self.hooks[name.to_sym] ||= []
22
22
  self.hooks[name.to_sym] << partial_path
data/lib/lucy_cms.rb CHANGED
@@ -28,14 +28,14 @@ module LucyCms
28
28
 
29
29
  # Modify CMS configuration
30
30
  # Example:
31
- # ComfortableMexicanSofa.configure do |config|
32
- # config.cms_title = 'Comfortable Mexican Sofa'
31
+ # LucyCMS.configure do |config|
32
+ # config.config.cms_upload_directory = 'shared'
33
33
  # end
34
34
  def configure
35
35
  yield configuration
36
36
  end
37
37
 
38
- # Accessor for ComfortableMexicanSofa::Configuration
38
+ # Accessor for LucyCMS::Configuration
39
39
  def configuration
40
40
  @configuration ||= Configuration.new
41
41
  end
data/lucy_cms.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{lucy_cms}
8
- s.version = "0.0.4"
8
+ s.version = "0.0.6"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Lucy"]
12
- s.date = %q{2011-03-09}
12
+ s.date = %q{2011-03-11}
13
13
  s.description = %q{}
14
14
  s.email = %q{lucy@lucysoft.com}
15
15
  s.extra_rdoc_files = [
@@ -69,7 +69,6 @@ Gem::Specification.new do |s|
69
69
  "app/views/cms_admin/upload_dirs/index.html.erb",
70
70
  "app/views/cms_admin/upload_dirs/new.html.erb",
71
71
  "app/views/cms_admin/upload_dirs/show.html.erb",
72
- "app/views/cms_admin/upload_dirs/uploads_destroy.js.erb",
73
72
  "app/views/cms_admin/users/_form.html.erb",
74
73
  "app/views/cms_admin/users/_index_branch.html.erb",
75
74
  "app/views/cms_admin/users/change_password.html.erb",
@@ -2,7 +2,7 @@ require File.expand_path('../test_helper', File.dirname(__FILE__))
2
2
 
3
3
  class ViewMethodsTest < ActiveSupport::TestCase
4
4
 
5
- include LucyCMS::ViewMethods
5
+ include LucyCms::ViewMethods
6
6
 
7
7
  def test_cms_snippet_content
8
8
  assert_equal 'default_snippet_content', cms_snippet_content('default')
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: lucy_cms
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.0.5
5
+ version: 0.0.6
6
6
  platform: ruby
7
7
  authors:
8
8
  - Lucy
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-03-10 00:00:00 -06:00
13
+ date: 2011-03-11 00:00:00 -06:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
@@ -141,7 +141,6 @@ files:
141
141
  - app/views/cms_admin/upload_dirs/index.html.erb
142
142
  - app/views/cms_admin/upload_dirs/new.html.erb
143
143
  - app/views/cms_admin/upload_dirs/show.html.erb
144
- - app/views/cms_admin/upload_dirs/uploads_destroy.js.erb
145
144
  - app/views/cms_admin/users/_form.html.erb
146
145
  - app/views/cms_admin/users/_index_branch.html.erb
147
146
  - app/views/cms_admin/users/change_password.html.erb
@@ -347,7 +346,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
347
346
  requirements:
348
347
  - - ">="
349
348
  - !ruby/object:Gem::Version
350
- hash: -2604923462945760949
349
+ hash: 4497317104056704982
351
350
  segments:
352
351
  - 0
353
352
  version: "0"
@@ -1,3 +0,0 @@
1
- $("#<%= dom_id(@cms_upload) %>").fadeOut('slow', function(){
2
- $(this).remove()
3
- })