Download the PHP package cogroup/cms without Composer
On this page you can find all versions of the php package cogroup/cms. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Package cms
Short Description CMS for all laravel projects
License MIT
Homepage https://wwww.cogroupsas.com
Informations about the package cms
Important:
To avoid incompatibilities, it is necessary to remove popper, jquery and bootstrap from webpack; our library already includes the most recent ones.
Comment all require files in:
Cms
For Laravel < 5.7, please use the 1.6 branch!
For Laravel <= 6, please use the 1.8 branch!
For Laravel 7, please use the 2.0 branch!
For Laravel 8, please use the 3.0 branch!
COgroup - CMS package is a flexible way to add basic CMS system with Role-based Permissions to Laravel.
Contents
- Installation
- Intervention Image
- Configuration
- User relation to roles
- Models
- Files
- Modules
- No Working Days
- Roles
- Roles Access
- Settings
- User
- Usage
- Middleware
- Helper Permission
- Helpers
- cms_get_modules
- cms_settings
- cms_format_date
- cms_format_time
- cms_format_datetime
- cms_get_file_attribute
- Notifications javascript
- License
- Contribution guidelines
- Additional information
Installation
1) Run the command to install laravel/ui and generate scaffolding
2) In order to install COgroup - CMS, just add the following to your composer.json. Then run composer update
:
or run the next command:
3) fixed Auth::routes, to avoid Clouser error
Remove Auth::routes from web.php file
4) Run the command below to publish the package config file config/cogroupcms.php
:
5) Run the command below to execute migrations
6) Run the command below to seed
7) Run the command below to re-publish assets, config, custom error views, font, migrations and translations
6) Change default User model in config/auth.php file
InterventionImage
After you have installed Intervention Image, open your Laravel config file config/app.php
and add the following lines.
In the $providers
array add the service providers for this package.
Intervention\Image\ImageServiceProvider::class
Add the facade of this package to the $aliases array.
'ImageManager' => Intervention\Image\Facades\Image::class
Now the Image Class will be auto-loaded by Laravel.
Publish configuration in Laravel 5
Configuration
Set the property values in the config/cogroupcms.php
.
These values will be used by cogroup-cms to refer to the correct prefix, color theme and URI to CMS access.
User relation to roles
You may now run it with the artisan migrate command:
After the migration, seven new tables will be present:
files
— manage files into CMSmodules
— modules for CMSnoworkingdays
— dates for special days, and to be able to discount in a range of datesroles
— roles for CMSroles_access
— relations between roles and modules accesssettings
— CMS basic settings (sitename, emailname, etc.)user
— Table for users and specific rol user
Models
Files
The Files
model has eight main attributes:
originalname
— Original name of the file.diskname
— name of the file into system after upload.extension
— extension of the file.size
— size of the file.mimetype
— Mime type of the file.alt
— Texto for label alt in HTML.width
— when is image, a width attribute.height
— when is image, a height attribute.ispublic
— determines whether a file is public or not.created_at
— determines the creation date.updated_at
— determine the update date.
Modules
The Modules
model has ten main attributes:
moduleslug
— Slug name for the module, to verify permissions.modulename
— Module name to show.description
— A more detailed explanation of what the Module does.active
— module is active or not.url
— url to acces the module. The url should not have the domain.icon
— font icon of the module.parent
— When is a submodule, id of the parent module. When is a father module is 0.order
— order to show module in the menu.inmenu
— determines if the module is show in the main menu.permissions
— Determine what permissions the module needs. They must be separated by commas. Example: "view, create".
NoWorkingDays
The NoWorkingDays
model has two main attributes:
date
— special day date.active
— determines whether a date is active or not.created_at
— determines the creation date.updated_at
— determine the update date.
Roles
The Role
model has two main attributes:
rolname
— Unique name for the Role, used for looking up role information in the application layer. For example: "admin", "owner", "employee".description
— A more detailed explanation of what the Role does.created_at
— determines the creation date.updated_at
— determine the update date.
RolesAccess
The RolesAccess
model has six main attributes:
roles_id
— Unique key for the Role, used for relation to table roles.modules_id
— Unique key for the modules, used for relation to table modules.view
— Set the permission to see a module or submodule.create
— Set the permission to create content in a module or submodule.update
— Set the permission to update content in a module or submodule.delete
— Set the permission to delete content in a module or submodule.created_at
— determines the creation date.updated_at
— determine the update date.
Settings
The Settings
model has two main attributes:
setting
— Unique name for the setting.defaultvalue
— A value for the setting attribute.
User
This will enable the relation with Role
.
And you are ready to go.
Usage
Middleware
You can use a middleware to filter routes and route groups by permission or role
It is possible to use comma symbol to verify until two actions:
Helper Permission
You can use a helper to verify a permission
check
is a Auth::user info or module id.moduleslug
is a slug of the module to check permission.type
is optional permission, by default it isview
.
Helpers
Cogroup - CMS includes a two "helper" PHP functions. These functions are used by the package itself; however, you are free to use them in your own applications if you find them convenient.
cms_get_modules
This function return a modules of the system, register into table modules
.
modulename
is optional parameter. If is NULL return all modules.inmenu
By default it isY
. The other option isN
.idrol
is optional parameter, by default it isNULL
. When present, it returns the modules associated with the role that have permissionview
cms_settings
This function return a object with settings values
Example: cms_settings()->sitename
cms_format_date
This function return a Carbon format date with the dateformat setting format
date
is required parameter. The date format must be Y-m-d.
cms_format_time
This function return a Carbon format date with the timeformat setting format
time
is required parameter. The time format must be H:i:s.
cms_format_datetime
This function return a Carbon format date with the dateformat and timeformat setting format
datetime
is required parameter. The date format must be Y-m-d H:i:s.
cms_get_file_attribute
This function return a attribute FileModel
id
is required parameter. Id into tableFiles
attribute
is required parameter. Column of the tableFiles
cms_get_total_unread_notifications
This function return a number of total unread notifications system
Dashboard
For change dashboard, change option dashboard into config/cogroupcms.php
file.
Add all namespace example: \App\Http\Controllers\MyDashboardController
Notifications Messages
config channels into config/cogroupcms.php via option
If use a mail channel add use Cogroup\Cms\Notifications\NewMessage;
to your Controller.
For send message use Notification::send( $user, new NewMessage( $from, $message ) );
$user
is the user to send email. Object User$from
is the user from send email. Object User$message
is a data message
Notifications Javascript
This configuration to set a float message from Controller
Set 0 to error, 1 to success, 2 to info, 3 to warning
Set a position (top, bottom)
Set a align (left, center, right)
Set delay time (default: 4000)
Set a message
License
COgroup CMS is free software distributed under the terms of the MIT license.
Contribution guidelines
Support follows PSR-4 PHP coding standards, and semantic versioning.
Please report any issue you find in the issues page. Pull requests are welcome.
All versions of cms with dependencies
laravel/socialite Version >=5.0
intervention/image Version >=2.5.1
thedoctor0/laravel-mailjet-driver Version >=1.0
laravel/ui Version >=3.0