yetopen/yii2fullcalendarscheduler

此包已被废弃,不再维护。未建议替代包。

Yii2 fullcalendar 小部件

安装: 0

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 0

分支: 7

类型:yii2-extension

dev-master 2023-04-17 07:29 UTC

This package is auto-updated.

Last update: 2023-05-17 07:45:13 UTC


README

该项目已过时,请使用 yii2fullcalendar,该包实现了 Fullcalendar v6。

JQuery Fullcalendar Scheduler Yii2 扩展,JQuery 来自: http://arshaw.com/fullcalendar/ 版本 2.1.1 许可证请查看 http://fullcalendar.io/scheduler/download/

JQuery 文档: http://arshaw.com/fullcalendar/docs/philipp@frenzel.net 编写的 Yii2 扩展

一个微型示例可以在以下位置找到: http://yii2fullcalendar.beeye.org

Latest Stable Version Build Status Code Climate Version Eye License

安装

尽管在 packagist.org 上注册了此包,但您只需添加一行代码即可运行它!

将以下行添加到您的 composer.json 的 require 部分

  "philippfrenzel/yii2fullcalendarscheduler":"*",

并确保已全局安装以下插件

php composer.phar global require "fxp/composer-asset-plugin:~1.1"

变更日志

2014年11月29日 更新到库的最新版本 2.2.3

使用方法

快速入门看起来像这样

  $events = array();
  //Testing
  $Event = new \yii2fullcalendarscheduler\models\Event();
  $Event->id = 1;
  $Event->title = 'Testing';
  $Event->start = date('Y-m-d\TH:m:s\Z');
  $events[] = $Event;

  $Event = new \yii2fullcalendarscheduler\models\Event();
  $Event->id = 2;
  $Event->title = 'Testing';
  $Event->start = date('Y-m-d\TH:m:s\Z',strtotime('tomorrow 6am'));
  $events[] = $Event;

  ?>
  
  <?= \yii2fullcalendarscheduler\yii2fullcalendarscheduler::widget(array(
      'events'=> $events,
  ));

请注意,这将仅显示事件,没有任何详细视图或添加新事件等选项。

AJAX 使用

如果您想使用 AJAX 加载器,它可以这样显示

<?= yii2fullcalendarscheduler\yii2fullcalendarscheduler::widget([
      'options' => [
        'language' => 'de',
        //... more options to be defined here!
      ],
      'ajaxEvents' => Url::to(['/timetrack/default/jsoncalendar'])
    ]);
?>

并且,在您引用的控制器内部,动作应如下所示

public function actionJsoncalendar($start=NULL,$end=NULL,$_=NULL){

    \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;

    $times = \app\modules\timetrack\models\Timetable::find()->where(array('category'=>\app\modules\timetrack\models\Timetable::CAT_TIMETRACK))->all();

    $events = array();

    foreach ($times AS $time){
      //Testing
      $Event = new \yii2fullcalendarscheduler\models\Event();
      $Event->id = $time->id;
      $Event->title = $time->categoryAsString;
      $Event->start = date('Y-m-d\TH:i:s\Z',strtotime($time->date_start.' '.$time->time_start));
      $Event->end = date('Y-m-d\TH:i:s\Z',strtotime($time->date_end.' '.$time->time_end));
      $events[] = $Event;
    }

    return $events;
  }