Mustached Robot的核心

安装: 8

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 0

开放问题: 0

类型:metapackage

dev-master 2013-07-31 05:06 UTC

This package is not auto-updated.

Last update: 2024-09-23 14:44:14 UTC


README

Build Status

描述

Mustached Robot是一个开源的协同工作空间签到平台。

开发团队

  • Florent Gosselin - 用户体验设计师 (@fgosselin)
  • Jérémie Pottier - 开发者 (@dzey)

欢迎新开发者和设计师加入项目。如果您想参与,请在twitter上联系我们 (@fgosselin@dzey)!

路线图

v. 0.5(当前版本)

  • 协同工作者可以创建账户并签入协同工作空间
  • 协同工作空间管理者可以访问漂亮的仪表板上的协同工作空间数据:当前在此的协同工作者,协同工作者个人资料,协同工作空间统计信息
  • 提供了一个API,任何允许的开发者都可以玩转协同工作空间数据

v. 0.6

  • 插件系统的基本框架,允许任何人开发插件和主题,而无需修改核心文件(例如:通过Freshbook的账单管理系统,特定CRM的连接等)。

v. 1.0

  • 协同工作者的账户管理(电子邮件确认,密码找回等)
  • 技能管理(协同工作者可以添加或更新自己的技能)
  • 仪表板视图,显示协同工作者的个人资料和协同工作空间中的即将发生的事件(此视图可以用于协同工作空间的大型电视屏幕上)
  • 移动端友好

安装

查看安装文档

文档

您想参与吗?查看开发者文档

API文档

还提供了API迷你文档。一旦Mustached Robot安装并配置在服务器上,开发人员可以使用此API访问协同工作空间数据。

项目状态和错误报告

您可以在GitHub问题跟踪器上查看项目状态或报告任何错误

帮助和讨论

如果您需要帮助或想讨论胡子,您可以在twitter或这个Google Group上进行。

插件

插件是一个独立的模块,通过与应用程序的几个战略位置交互来扩展Mustached Robot的功能。插件仍在开发中,我们可能需要在它们稳定之前打破向后兼容性。

使用插件,您可以

  • 在几个特定的视图中添加任何您想添加的内容
  • 添加表单元素,并根据这些元素在应用程序中触发操作
  • 自定义应用程序的外观和感觉

而且,这一切都不会破坏您的Mustached Robot安装(即您将能够独立更新核心功能和插件)。

开发插件

插件是FuelPHP模块。它们通过composer集成到项目中。

要开发插件,您需要

  • 为您的模块创建一个特定的仓库,并在根目录下创建一个 composer.json 文件。您必须指定包的 "type" 为 "fuel-module"(参见composer 安装器文档)。这将允许 composer 将插件移动到您安装的正确目录。
  • 在项目的 composer.json 中将插件添加为项目的依赖项。

例如,一个名为 twitter 的插件在 Github 上可用,并集成到默认项目中。

以下是您当前可以使用的类

  • 表单 - 它允许您在应用的一些表单上添加表单元素。
  • 触发器 - 它允许用户在执行特定操作后做任何想做的事情(例如:用户签到后,我想让我的插件发推文并给我发短信)。
  • 主题 - 它允许您自定义 CSS 并将图像添加到项目中。每个共享工作空间都可以使用自己的主题。

语言

所有语言字符串都必须按照 FuelPHP 规范存储在插件的 "language" 文件夹中。我们通常使用 .yml。

配置

您可以通过在您的模块中创建一个 "config" 文件夹以及一个与您的插件同名的 .php 文件来向应用管理员请求配置参数。此配置文件将自动为共享工作空间的管理员生成一个设置表单。

您的配置文件必须遵循一些约定

  • 它必须是一个关联数组
  • 数组的键必须是参数的名称
  • 数组的值必须是一个包含三个键值对的数组:** 'label':将在表单上显示的标签 ** 'type':字段的类型(参见FuelPHP 表单类型)** 'value':参数的默认值

这是 Twitter 插件的配置文件的示例

'consumerKey' => 
	array(
		'value' => '',
		'type' => 'text',
		'label' => 'settings.consumerKey',
	),
'consumerSecret' => 
	array(
		'value' => '',
		'type' => 'text',
		'label' => 'settings.consumerSecret',
	),

如果用户更改了默认配置,它将保存到他的本地安装配置文件(/fuel/app/config/mustached.php)中,因此他可以在不删除自己的参数的情况下完全更新插件。

如果一些用户已经安装了您的插件,并且在未来版本中您决定使用一些额外的设置,新设置将提供给用户,但他们将保留他们之前在本地保存的设置。

要访问插件的配置参数,请使用以下函数

\Mustached\Plugin::getConfig($pluginName, $configName)
  • pluginName:插件名称
  • configName:配置参数的名称(使用 "." 作为数组分隔符)

此函数将返回用户设置的参数或,如果没有设置,则返回插件的默认参数。您应该始终使用此函数而不是 FuelPHP 核心函数,如 \Config::get();

可自定义的表单

一些表单是可以自定义的。

签到表单

如果您想配置签到表单,请在您的模块中创建一个 "Form" 类,并添加方法 addElementOnPublicCheckin()

默认情况下,新元素(s)将被添加到最后一个字段之后。您可以通过使用两个参数(第一个是当前表单中元素的名称,第二个是您的新字段相对于第一个参数的位置 -- 'before' 或 'after')来覆盖此设置。

可自定义的操作

一些操作可以扩展。

用户签到时执行某些操作

如果您想在用户签到时执行某些操作,请在您的模块中创建一个 "Trigger" 类,并添加方法 postCheckin()

此方法发送一个包含一个具有 'fieldset' 键的参数 $options,其中包含用户在签到表单上提交的字段(如果您之前已配置签到表单,则您的插件添加到表单上的数据也将可用,请参阅 twitter 插件示例进行参考)。

主题

插件可以用作应用的部分或全部的皮肤。一个皮肤示例可在GitHub上找到。

CSS

要在整个应用中加载CSS文件,请在您的模块中添加一个皮肤类,并添加一个“getCss”函数,返回CSS文件的路径和该文件的版本号。

public function getCss()
{                   
    return array(
        'path' => 'assets/main.css',
        'version' => 1,
    );
}

当插件从用户处更新(通过composer)时,此文件将被复制到主项目(在/public/assets/css/plugins/[plugin_name]/文件夹中),并在应用中加载。

图片

要在项目中使用图片,请将它们插入到/assets/img目录中。当运行composer install或update时,该目录中的所有图片将被复制到项目目录/public/assets/img/[plugin_name]/。

插件更新

用户可以通过运行composer update命令来更新插件。此命令将获取插件的最新版本,并安装CSS和图片。