Lavalite package that provides team management facility for the cms.

## Installation

Run the below command form the root folder of lavalite.

```
    composer require "bixo/team"
```


## Migration and seeds

```
    php artisan migrate
    php artisan db:seed --class=Bixo\\Team\\Seeders\\TeamTableSeeder
```

## Publishing

* Configuration
```
    php artisan vendor:publish --provider="Bixo\Team\Providers\TeamServiceProvider" --tag="config"
```
* Language
```
    php artisan vendor:publish --provider="Bixo\Team\Providers\TeamServiceProvider" --tag="lang"
```
* Views
```
    php artisan vendor:publish --provider="Bixo\Team\Providers\TeamServiceProvider" --tag="view"
```


## URLs and APIs


### Web Urls

* Admin
```
    http://path-to-route-folder/admin/team/{modulename}
```

* User
```
    http://path-to-route-folder/user/team/{modulename}
```

* Public
```
    http://path-to-route-folder/teams
```


### API endpoints

These endpoints can be used with or without `/api/`
And also the user can be varied depend on the type of users, eg user, client, admin etc.

#### Resource

* List
```
    http://path-to-route-folder/api/user/team/{modulename}
    METHOD: GET
```

* Create
```
    http://path-to-route-folder/api/user/team/{modulename}
    METHOD: POST
```

* Edit
```
    http://path-to-route-folder/api/user/team/{modulename}/{id}
    METHOD: PUT
```

* Delete
```
    http://path-to-route-folder/api/user/team/{modulename}/{id}
    METHOD: DELETE
```

#### Public

* List
```
    http://path-to-route-folder/api/team/{modulename}
    METHOD: GET
```

* Single Item
```
    http://path-to-route-folder/api/team/{modulename}/{slug}
    METHOD: GET
```

#### Others

* Report
```
    http://path-to-route-folder/api/user/team/{modulename}/report/{report}
    METHOD: GET
```

* Export/Import
```
    http://path-to-route-folder/api/user/team/{modulename}/exim/{exim}
    METHOD: POST
```

* Action
```
    http://path-to-route-folder/api/user/team/{modulename}/action/{id}/{action}
    METHOD: PATCH
```

* Actions
```
    http://path-to-route-folder/api/user/team/{modulename}/actions/{action}
    METHOD: PATCH
```

* Workflow
```
    http://path-to-route-folder/api/user/team/{modulename}/workflow/{id}/{transition}
    METHOD: PATCH
```