eugenec138/cakephp-calendar
最新稳定版本:v1.0.3
Composer 安装命令:
composer require eugenec138/cakephp-calendar
包简介
Calendaring plugin for CakePHP
README 文档
README
About
CakePHP 3 plugin that uses FullCalendar JS (as part of AdminLTE) to manage calendar events and attendees.
Some of the things that we'll be adding shortly:
- Calendar Attendees search via auto-complete (using Select2 checkbox).
- Recurring calendar events.
- Prototyping calendar attendees.
- Full re-write of jQuery to VueJS components.
- FreeBusy Calendar implementation.
Developed by Qobo, used in Qobrix.
NOTE: The plugin is under development, so any Bug Reports and Pull Requests are more than welcomed.
Plugin installation
Install with composer:
composer require qobo/cakephp-calendar
Load plugin and its requirements in the application. In config/bootstrap.php:
# Optionally adding AdminLTE and Qobo Utils that are partially used inside. Plugin::load('AdminLTE', ['bootstrap' => true, 'routes' => true]); Plugin::load('Qobo/Utils'); Plugin::load('Qobo/Calendar', ['bootstrap' => true, 'routes' => true]);
Run database schema migrations to create tables that will hold calendars, events, attendees, etc.:
./bin/cake migrations migrate --plugin Qobo/Calendar
Customization
JavaScript and Styling.
The plugin heavily relies on AdminLTE Bootstrap theme for styling, so you should make some adjustments in src/Template/Calendars/index.ctp in order to get it running.
<?php // 'scriptBotton' is an AdminLTE typo that I kept ;( echo $this->Html->css( [ 'AdminLTE./plugins/fullcalendar/fullcalendar.min.css', 'AdminLTE./plugins/daterangepicker/daterangepicker-bs3', 'AdminLTE./plugins/select2/select2.min', 'Qobo/Utils.select2-bootstrap.min', 'Qobo/Utils.select2-style', ] ); echo $this->Html->script( [ 'AdminLTE./plugins/jQuery/jQuery-2.1.4.min', // in case you didn't include it in the layout 'AdminLTE./bootstrap/js/bootstrap', // should be include in your layout. 'AdminLTE./plugins/daterangepicker/moment.min', 'AdminLTE./plugins/fullcalendar/fullcalendar.min.js', 'AdminLTE./plugins/daterangepicker/daterangepicker', 'AdminLTE./plugins/select2/select2.min', ], ['block' => 'scriptBotton'] ); echo $this->Html->script( [ 'Qobo/Calendar.external/nlp', 'Qobo/Calendar.external/rrule', 'Qobo/Calendar.vue.min', 'Qobo/Calendar.vue-select', 'Qobo/Calendar.calendar.js', ], ['block' => 'scriptBotton'] ); ?>
JavaScript files should go to your footer, so you can use native cake fetch('scriptBottom') and replace scriptBotton with scriptBottom in the index template (assuming that you have $this->fetch('scriptBottom'); in your layout footer.
统计信息
- 总下载量: 6
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-06-28