[{"authors":"Akinyele Cafe-Febrissy","built_at":"2018-12-14T00:00:00.000Z","created_at":"2018-12-14T09:47:16.663Z","description":"Manage your users' operations (permissions to execute some actions) in your application.","downloads_count":3362,"metadata":{},"number":"1.0.0","summary":"# Rails Operations Manage your users' operations (permissions to execute some actions) in your Ruby on Rails application.  ## Requirements Prior to installing, please make sure these gems can be installed on your system: - rails (v5.2+)  If you wish to run this gem locally, the following gems are also to consider: - bootstrap (v4.1+) - jquery-rails (v4.3+) - jquery-ui-rails (v6.0+) - bootstrap4-kaminari-views - sqlite3 (v1.3.6+) - sass-rails (v5.0+) - select2-rails - web-console  ## Installation Add this line to your application's Gemfile:  ```ruby gem 'operations' ```  And then execute: ```bash $ bundle ```  Or install it yourself as: ```bash $ gem install operations ```  ## Usage Here are the most relevant API entries from this Gem:  ```ruby ### From Operations module Operations.operations_list        # All valid Operations::Operation from Rails config Operations.from_string(name)      # Gets the Operations::Operation by string Operations.allows?(user, name)    # Checks if the user can execute the operation string Operations.user_roles             # All users roles defined in the Rails config  ### From Operations::Operation class operation = Operations::Operation.new do |operation| # Your operation name operation.name = 'my_operation'  # Allows :admin, :technician, :regular and :guest. # These can be set in your config/application.rb with the # variable config.user_roles. Example: # # module MyApp #   class Application < Rails::Application #     config.user_roles += {name: 'my_other_scope'} #   end # end operation.scope = :admin end  # Or operation = Operations::Operation.new{name: :my_operation, scope: :admin}  # Instance variable allowed_users = operation.users     # Returns a list of users based on the scope is_valid = operation.is_valid?      # For validation purposes  ### Core extensions # Convert a string to a list of Operations::Operations \"bf9[..]a248\".to_operation         # From a UUID (example truncated) \"{\\\"name\\\":\\\"my_operation\\\",\\\"scope\\\":\\\"admin\\\"}\".to_operation # From a valid JSON string ```  ## Contributing Do you wish to contribute? It's simple! All you need to do is: - Fork this project - Work your magic - **RUN TESTS** - _Don't forget to synchronize with the master branch!_ - Push to your fork - Make a pull request!  ## License The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).","platform":"ruby","rubygems_version":">= 0","ruby_version":">= 0","prerelease":false,"licenses":["MIT"],"requirements":[],"sha":"0586398aa9a8f9d829a8e7287119060a8088b143327c75114aa41cbaec53d212","spec_sha":"25221611521d4c128dab42d53cb76a67165364f661cf72bc1f2ab21077b14533"}]