waltertamboer/sabredav-module
Composer 安装命令:
composer require waltertamboer/sabredav-module
包简介
A Zend Framework 2 module to work with SabreDav while respecting ZF2's application flow.
README 文档
README
A Zend Framework 2 module to respect Zend Framework's application flow while working with SabreDav.
Getting started
It's recommended to install this library via Composer.
{
"require": {
"waltertamboer/sabredav-module": "dev-master"
}
}
Next copy the configuration file from vendor/waltertamboer/sabredav-module/config/sabredav.config.global.dist.php to
config/autoload/sabredav.config.global.php.
Configuration
The configuration file contains a sabredav key which is an array. Each entry in the array is considered an entry
point for SabreDav. This way it becomes possible to split the CalDav, CardDav and WebDav url's from each other. A
basic configuration looks like this:
'sabredav' => array(
'dav' => array(
'enabled' => true,
'route' => 'my-route',
'nodes' => array(
// All nodes that are supported
),
'plugins' => array(
// All plugins that are supported
),
),
),
The key dav is important. It should match the name from the controller which will be explained later on. The array
contains four entries: enabled, route, nodes and plugins.
- enabled simply indicates whether or not this entry point is enabled at the moment.
- route contains the name of the route that is used to call this entry point.
- nodes is a list with SabreDav nodes that are supported. This way one could only set CardDav for example.
- plugins is a list with SabreDav plugins that are supported.
Nodes
It's possible to configure the server in such a way that one could create different entry points for CalDav, CardDav and WebDav. It's also possible to combine the three in one entry point. The default configuration file (as provided in the module) contains a setup where CalDav, CardDav and WebDav are combined.
Each node is an array with a name and an options element. The name should be a valid node services. The options
array is used to pass additional parameters to the node service. Supported nodes are:
- caldav - Adds CalDav support to the server.
- carddav - Adds CardDav support to the server.
- directory - Adds WebDav support to the server.
- principal - Adds support for multiple users to the server.
Plugins
Plugins can be used to add additional support to the SabreDav server. They simply correspond to the plugins that SabreDav offers.
Each plpugin is an array with a name and an options element. The name should be a valid plugin services. The options
array is used to pass additional parameters to the plugin service. Supported plugins are:
- acl
- auth
- browser
- caldav
- carddav
- lock
- mount
- partial
- property
- schedule
- subscription
- sync
Router
This module comes with a preset route called "sabredav-dav". It's possible to add additional routes in order to create
a new entry point. It's important to set the route type to SabreDavModule\\Mvc\\Router\\Http\\SabreDav which simply
acts as a catch-all route.
The controller name MUST start with sabredavmodule.. Everything that comes after the dot will be considered the
name of the entry point. This string will be used to find the configuration in the sabredav configuration array.
'router' => array(
'routes' => array(
'sabredav-dav' => array(
'type' => 'SabreDavModule\\Mvc\\Router\\Http\\SabreDav',
'options' => array(
'regex' => '/dav/(?<slug>.*)',
'spec' => '/dav/%slug%',
'defaults' => array(
'controller' => 'sabredavmodule.dav',
'action' => 'index',
),
),
),
),
),
Todo
- This module is not unit tested yet.
- Once unit tests are written, Travis CI should be hooked up.
- Docblocks are missing
- The README file should contain badges showing the stability of the module.
waltertamboer/sabredav-module 适用场景与选型建议
waltertamboer/sabredav-module 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 106 次下载、GitHub Stars 达 0, 最近一次更新时间为 2015 年 07 月 19 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 waltertamboer/sabredav-module 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 waltertamboer/sabredav-module 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 106
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 15
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-07-19