restful_acl 3.0.0 → 3.0.1
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.
- data/VERSION +1 -1
- data/lib/restful_acl/base.rb +3 -12
- data/lib/restful_acl/helper.rb +13 -1
- data/lib/restful_acl/url_parser.rb +13 -12
- data/restful_acl.gemspec +2 -2
- metadata +2 -2
    
        data/VERSION
    CHANGED
    
    | @@ -1 +1 @@ | |
| 1 | 
            -
            3.0. | 
| 1 | 
            +
            3.0.1
         | 
    
        data/lib/restful_acl/base.rb
    CHANGED
    
    | @@ -4,18 +4,9 @@ module RestfulAcl | |
| 4 4 | 
             
                attr_accessor :object, :parent, :user, :controller_name, :uri, :action, :object_id
         | 
| 5 5 |  | 
| 6 6 |  | 
| 7 | 
            -
                def initialize(options | 
| 8 | 
            -
                   | 
| 9 | 
            -
                  @ | 
| 10 | 
            -
                  @uri             = options[:uri]
         | 
| 11 | 
            -
                  @action          = options[:action]
         | 
| 12 | 
            -
                  @controller_name = options[:controller_name]
         | 
| 13 | 
            -
             | 
| 14 | 
            -
                  if @object_id.present?
         | 
| 15 | 
            -
                    load_actors_from_id
         | 
| 16 | 
            -
                  else
         | 
| 17 | 
            -
                    load_actors_from_uri
         | 
| 18 | 
            -
                  end
         | 
| 7 | 
            +
                def initialize(options)
         | 
| 8 | 
            +
                  options.each{|(k,v)| instance_variable_set "@#{k}", v}
         | 
| 9 | 
            +
                  (@object_id.present?) ? load_actors_from_id : load_actors_from_uri
         | 
| 19 10 | 
             
                end
         | 
| 20 11 |  | 
| 21 12 | 
             
                def load_actors_from_id
         | 
    
        data/lib/restful_acl/helper.rb
    CHANGED
    
    | @@ -8,5 +8,17 @@ module RestfulAcl | |
| 8 8 | 
             
                  yield if access.allowed?
         | 
| 9 9 | 
             
                end
         | 
| 10 10 |  | 
| 11 | 
            +
                %w{creat delet updat read}.each do |m|
         | 
| 12 | 
            +
                  define_method("#{m}able?") do |*args, &block|
         | 
| 13 | 
            +
                    RAILS_DEFAULT_LOGGER.error <<-STR
         | 
| 14 | 
            +
             | 
| 15 | 
            +
                      *****************************************************************************************
         | 
| 16 | 
            +
                      * RESTful_ACL error => ##{m}able? has been removed as of v3.0.0, please use #allowable?
         | 
| 17 | 
            +
                      *****************************************************************************************
         | 
| 18 | 
            +
             | 
| 19 | 
            +
                    STR
         | 
| 20 | 
            +
                  end
         | 
| 21 | 
            +
                end
         | 
| 22 | 
            +
             | 
| 11 23 | 
             
              end
         | 
| 12 | 
            -
            end
         | 
| 24 | 
            +
            end
         | 
| @@ -8,23 +8,23 @@ | |
| 8 8 | 
             
            class UrlParser
         | 
| 9 9 |  | 
| 10 10 | 
             
              TypesOfURLs = [
         | 
| 11 | 
            -
                {:name => "parent_with_specific_child", :controller_bit => 3, :object_id_bit => 4,   :regex => /\/(\w+)\/(\d+)[\w | 
| 12 | 
            -
                {:name => "parent_with_edit_child",     :controller_bit => 3, :object_id_bit => 4,   :regex => /\/(\w+)\/(\d+)[\w | 
| 13 | 
            -
                {:name => "parent_with_child_index",    :controller_bit => 3, :object_id_bit => nil, :regex => /\/(\w+)\/(\d+)[\w | 
| 14 | 
            -
                {:name => "parent_with_new_child",      :controller_bit => 3, :object_id_bit => nil, :regex => /\/(\w+)\/(\d+)[\w | 
| 15 | 
            -
                {:name => "edit_singleton_child",       :controller_bit => 3, :object_id_bit => nil, :regex => /\/(\w+)\/(\d+)[\w | 
| 16 | 
            -
                {:name => "new_singleton_child",        :controller_bit => 3, :object_id_bit => nil, :regex => /\/(\w+)\/(\d+)[\w | 
| 17 | 
            -
                {:name => "edit_parent",                :controller_bit => 1, :object_id_bit => 2,   :regex => /\/(\w+)\/edit$/},
         | 
| 11 | 
            +
                {:name => "parent_with_specific_child", :controller_bit => 3, :object_id_bit => 4,   :regex => /\/(\w+)\/(\d+)[\w-]*\/(\w+)\/(\d+)[\w-]*$/},
         | 
| 12 | 
            +
                {:name => "parent_with_edit_child",     :controller_bit => 3, :object_id_bit => 4,   :regex => /\/(\w+)\/(\d+)[\w-]*\/(\w+)\/(\d+)[\w-]*\/edit$/},
         | 
| 13 | 
            +
                {:name => "parent_with_child_index",    :controller_bit => 3, :object_id_bit => nil, :regex => /\/(\w+)\/(\d+)[\w-]*\/(\w+)$/},
         | 
| 14 | 
            +
                {:name => "parent_with_new_child",      :controller_bit => 3, :object_id_bit => nil, :regex => /\/(\w+)\/(\d+)[\w-]*\/(\w+)\/new$/},
         | 
| 15 | 
            +
                {:name => "edit_singleton_child",       :controller_bit => 3, :object_id_bit => nil, :regex => /\/(\w+)\/(\d+)[\w-]*\/(\w+)\/edit$/},
         | 
| 16 | 
            +
                {:name => "new_singleton_child",        :controller_bit => 3, :object_id_bit => nil, :regex => /\/(\w+)\/(\d+)[\w-]*\/(\w+)\/new$/},
         | 
| 17 | 
            +
                {:name => "edit_parent",                :controller_bit => 1, :object_id_bit => 2,   :regex => /\/(\w+)\/(\d+)[\w-]*\/edit$/},
         | 
| 18 18 | 
             
                {:name => "new_parent",                 :controller_bit => 1, :object_id_bit => nil, :regex => /\/(\w+)\/new$/},
         | 
| 19 | 
            -
                {:name => "specific_parent",            :controller_bit => 1, :object_id_bit => 2,   :regex => /\/(\w+)\/(\d+)[\w | 
| 19 | 
            +
                {:name => "specific_parent",            :controller_bit => 1, :object_id_bit => 2,   :regex => /\/(\w+)\/(\d+)[\w-]*$/},
         | 
| 20 20 | 
             
                {:name => "parent_index",               :controller_bit => 1, :object_id_bit => nil, :regex => /\/(\w+)$/}
         | 
| 21 21 | 
             
              ]
         | 
| 22 22 |  | 
| 23 | 
            -
              URL        = /href="([\w | 
| 24 | 
            -
              AJAXURL    = /url:'([\w | 
| 23 | 
            +
              URL        = /href="([\w\/-?$_.+!*'(),]+)"/
         | 
| 24 | 
            +
              AJAXURL    = /url:'([\w\/-?$_.+!*'(),]+)'/
         | 
| 25 25 | 
             
              NewURL     = /\/new$/
         | 
| 26 26 | 
             
              EditURL    = /\/edit$/
         | 
| 27 | 
            -
              ObjectURL  = /\/(\d+)[\w | 
| 27 | 
            +
              ObjectURL  = /\/(\d+)[\w-]*$/
         | 
| 28 28 | 
             
              DestroyURL = /.*m\.setAttribute\('value', 'delete'\).*/
         | 
| 29 29 |  | 
| 30 30 | 
             
              attr_accessor :text, :user, :url
         | 
| @@ -69,7 +69,8 @@ class UrlParser | |
| 69 69 |  | 
| 70 70 | 
             
                # Call the dynamically created method with arguments from deduced hash
         | 
| 71 71 | 
             
                def invoke_url_type_method(type)
         | 
| 72 | 
            -
                   | 
| 72 | 
            +
                  data = OpenStruct.new(type)
         | 
| 73 | 
            +
                  send(data.name, @url, data.controller_bit, data.object_id_bit, data.regex)
         | 
| 73 74 | 
             
                end
         | 
| 74 75 |  | 
| 75 76 | 
             
                # Deduce the requested URL's "type" based on the TypesOfURLs hash
         | 
    
        data/restful_acl.gemspec
    CHANGED
    
    | @@ -5,11 +5,11 @@ | |
| 5 5 |  | 
| 6 6 | 
             
            Gem::Specification.new do |s|
         | 
| 7 7 | 
             
              s.name = %q{restful_acl}
         | 
| 8 | 
            -
              s.version = "3.0. | 
| 8 | 
            +
              s.version = "3.0.1"
         | 
| 9 9 |  | 
| 10 10 | 
             
              s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
         | 
| 11 11 | 
             
              s.authors = ["Matt Darby"]
         | 
| 12 | 
            -
              s.date = %q{2009- | 
| 12 | 
            +
              s.date = %q{2009-12-07}
         | 
| 13 13 | 
             
              s.description = %q{A Ruby on Rails plugin that provides fine grained access control to RESTful resources.}
         | 
| 14 14 | 
             
              s.email = %q{matt@matt-darby.com}
         | 
| 15 15 | 
             
              s.extra_rdoc_files = [
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification 
         | 
| 2 2 | 
             
            name: restful_acl
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version 
         | 
| 4 | 
            -
              version: 3.0. | 
| 4 | 
            +
              version: 3.0.1
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors: 
         | 
| 7 7 | 
             
            - Matt Darby
         | 
| @@ -9,7 +9,7 @@ autorequire: | |
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 11 |  | 
| 12 | 
            -
            date: 2009- | 
| 12 | 
            +
            date: 2009-12-07 00:00:00 -05:00
         | 
| 13 13 | 
             
            default_executable: 
         | 
| 14 14 | 
             
            dependencies: 
         | 
| 15 15 | 
             
            - !ruby/object:Gem::Dependency 
         |