netcore / module-form
Installs: 1 182
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 7
Forks: 0
Open Issues: 2
Type:module
Requires
- php: >=5.6.4
- maatwebsite/excel: ~2.1.0
- yajra/laravel-datatables-oracle: ~8.0
README
This module was made for easy management of custom forms such as Contact form, Subscribe form etc.
Pre-installation
This package is part of Netcore CMS ecosystem and is only functional in a project that has following packages installed:
- https://github.com/netcore/netcore
- https://github.com/netcore/module-admin
- https://github.com/netcore/module-translate
Installation
- Require this package using composer
composer require netcore/module-form
- Publish assets/configuration/migrations
php artisan module:publish Form
php artisan module:publish-config Form
php artisan module:publish-migration Form
php artisan migrate
Configuration
- Configuration file is available at config/netcore/module-form.php
Usage
- Render form
app('forms')->replace('[form=(ID/Key)]'); // or you can use helper method form()->render('ID/Key');
- Custom template
If you want to render form with different template, you can create new file in /views/templates/forms (path can be changed in configuration), for example - contact-us.blade.php, where "contact-us" can be form key or the template name set when creating/editing form
- Extend form submit functionality
// For example, if you want to send email to Administrator and/or User, who submitted the "Contact Us" form use Modules\Form\Repositories\FormsRepository; use Nwidart\Modules\Facades\Module; $module = Module::find('form'); if ($module AND $module->enabled()) { FormsRepository::addNewEvent('contact-us', function ($data) { Mail::to('admin@example.com')->queue(new NotifyAboutContactMessage($data)); }); } // $data variable is array, which consists of submitted data, for example $data = [ 'name' => 'John', 'email' => 'example@example.com', 'message' => 'Lorem ipsum.' ];