foskym/flarum-issue-tracking

Flarum 中的问题跟踪。

安装次数: 311

依赖项: 1

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 0

开放问题: 1

类型:flarum-extension

v0.4.4 2024-08-21 02:44 UTC

This package is auto-updated.

Last update: 2024-09-21 02:59:34 UTC


README

License Latest Stable Version Total Downloads

这是一个 Flarum 扩展。Flarum 中的问题跟踪。

QQ_1721889365017

安装

使用 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;
}