diff options
| -rw-r--r-- | DEVNOTES.md | 61 | ||||
| -rw-r--r-- | INSTALL.md | 40 | ||||
| -rw-r--r-- | README.md | 7 | 
3 files changed, 8 insertions, 100 deletions
| diff --git a/DEVNOTES.md b/DEVNOTES.md deleted file mode 100644 index bcdd37f5e..000000000 --- a/DEVNOTES.md +++ /dev/null @@ -1,61 +0,0 @@ - -# Authorization Logic in Policies - -## Base Rules - -### ApplicationPolicy - -Policies inheriting from the `ApplicationPolicy` authorize _Undestructive_ _Permissions_ whiche are `index?` and -`show?`. And forbid _Destructive_ _Permissions_ which are `create?`, `destroy?` & `update`. - -These _CRUD_ permissions are tied to to _Action_ permissions, `delete?`→ `destroy?`, `edit?` → `update? and `new?`→ `create?`. - -These three _Action_ permissions are not supposed to be overriden in `ApplicationPolicy` subclasses. - - -### Common Policy Types - -There are two common policy types. - -#### Read Only Type Policy - -This corresponds to inheriting from  `ApplicationPolicy` without overriding one of the five aforementioned _CRUD_ permissions. - -The following Policies are of this type. - -  - `Company` -  - `GroupOfLine` -  - `Line` + custom -  - `Network` -  - `StopArea` - -#### Standard Type Policy - -The standard type policy inherits from `ApplicationPolicy` does not override any _Undesructive_ _Pemission_ but overrides the _Destructive_ ones. - -They are overriden as follows - -```ruby -      def <destructive>? -        !referential_read_only? && organisation_match? && user.has_permission('<resource in plural form>.<action>') -      end -``` - -**An exception** is `Referntial` which **cannot** check for `organisation_match?` for creation as there is no referential. - -The following Policies are of this type. - -  - `AccessLink` -  - `AccessPoint` -  - `Calendar` -  - `ConnectionLink` -  - `JourneyPattern` -  - `Referential` + custom -  - `Route` (used by `StopPoint` too) -  - `RoutingConstraintZone` -  - `TimeTable` + custom - - - - - diff --git a/INSTALL.md b/INSTALL.md index 392ef5d9f..e33ea9a92 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -5,7 +5,7 @@  Example with [rvm](https://rvm.io/) (other solutions : rbenv, packages..):  ```sh -rvm install 2.3.1 +rvm install 2.3.5  ```  Nokogiri on macOS @@ -104,41 +104,7 @@ bundle exec rake db:create db:migrate  Run :  ```sh -bundle exec rake db:seed:stif -``` - -Two users are created : stif-boiv@af83.com/secret and stif-boiv+transporteur@af83.com/secret - -#### Synchronize with STIF CODIFLIGNE (Line) and REFLEX (StopArea) - -```sh -bundle exec rake codifligne:sync -bundle exec rake reflex:sync -``` - -**N.B.** These are asynchronous tasks, you can observe the launched jobs in your [Sidekiq Console](http://localhost:3000/sidekiq) - -#### Create Referential - -To create `Referential` objects with some data (`Route`, `JourneyPattern`, `VehicleJourney`, etc), you need to wait codifligne and reflex jobs finished. And then you can launch : - -```sh -bundle exec rake referential:create -``` - -### Run tests - -* Rspec (Rails test) - -```sh -bundle exec rake spec -``` - -* Jest (JavaScript tests) - -```sh -grunt jest #to run the whole specs. -grunt #to watch for changes and automatically run corresponding tests. +bundle exec rake db:seed  ```  ### Run @@ -153,5 +119,3 @@ bundle exec sidekiq  bin/webpack-dev-server // Launch webpack server to compile assets on the fly  bundle exec rails server // Launch rails server  ``` - -You need to have an account on [STIF Portail](http://stif-portail-dev.af83.priv/) to connect to the Rails application. @@ -1,5 +1,5 @@  # Chouette -[](https://codeclimate.com/github/af83/chouette-core/maintainability) <a href="https://codeclimate.com/github/af83/chouette-core/test_coverage"><img src="https://api.codeclimate.com/v1/badges/f9680a36dcfd25d4f2cf/test_coverage" /></a> +[](https://codeclimate.com/github/af83/chouette-core/maintainability)  Chouette is a Ruby/Rails & Java project to manage transport offer data. It is designed as an [SaaS](http://en.wikipedia.org/wiki/Software_as_a_service) platform and can : @@ -23,6 +23,11 @@ Requirements  * [Import, Export and Validation Operations](https://github.com/af83/chouette-core-iev) are in the Java part of the project +Install +---------------- + +Install steps are available [here](../INSTALL.md) +  More Information  ---------------- | 
