foskym / flarum-issue-tracking
Flarum 中的问题跟踪。
v0.4.4
2024-08-21 02:44 UTC
Requires
- flarum/core: ^1.8.0
Requires (Dev)
- flarum/testing: ^1.0.0
README
这是一个 Flarum 扩展。Flarum 中的问题跟踪。
安装
使用 composer 安装
composer require foskym/flarum-issue-tracking:"*"
更新
composer update foskym/flarum-issue-tracking:"*"
php flarum migrate
php flarum cache:clear
链接
如何使用?
安装此扩展,然后安装平台提供者。
可用的平台提供者
启用它们并设置配置。
如何创建提供者?
在你的提供者的 composer.json
中需要此包
"require": { "flarum/core": "^1.8.0", "foskym/flarum-issue-tracking": "*" }
Extend.php
use Flarum\Extend; return [ new Extend\Locales(__DIR__.'/locale'), (new \FoskyM\IssueTracking\Extend\PlatformProvider()) ->provide(PlatformProvider::class) ];
PlatformProvider.php
中的配置
// ... use FoskyM\IssueTracking\AbstractPlatformProvider; use FoskyM\IssueTracking\AbstractIssue; use FoskyM\IssueTracking\AbstractProgress; // ... class PlatformProvider extends AbstractPlatformProvider { public $key = "foskym-issue-tracking-youtrack"; public $name = "YouTrack"; public function availableSettings(): array { return [ 'url' => 'required|url', 'token' => 'required', 'project' => 'required', 'state_field' => 'required', 'resolved_state' => 'required', ]; } // ... }
地区
foskym-issue-tracking-youtrack: admin: fields: heading: "Issue Tracking: YouTrack" url_label: "YouTrack URL" token_label: "YouTrack Token" project_label: "YouTrack Project ID" state_field_label: "State Field" resolved_state_label: "Resolved State" # {$setting_key}_label: ... url_help: ... token_help: ... project_help: ... state_field_help: ... resolved_state_help: ... # {$setting_key}_help: ... # help text can be ignored
实现
查看 AbstractPlatformProvider.php
并查看 YouTrack's PlatformProvider.php
为 论坛任务
和其他扩展的事件
当用户在 Flarum
中创建问题时代发
class IssueCreated { /** * @var User */ public $actor; /** * @var \FoskyM\IssueTracking\Model\Issue */ public $issue; /** * @var Discussion */ public $discussion; }
当用户在 Flarum
中的问题上创建评论时代发
class CommentPosted { /** * @var User */ public $actor; /** * @var CommentPost */ public $post; /** * @var string */ public $issueId; }