mirror of
https://github.com/go-gitea/gitea.git
synced 2025-07-14 00:01:44 -04:00
Compare commits
7 Commits
eb5e1bcd21
...
7b5b739a2f
Author | SHA1 | Date | |
---|---|---|---|
|
7b5b739a2f | ||
|
51383ec084 | ||
|
00b18ab42f | ||
|
ffa89945d1 | ||
|
49919c636e | ||
|
b6d77229cf | ||
|
f2772b5920 |
@ -16,7 +16,7 @@ menu:
|
|||||||
# Installation from binary
|
# Installation from binary
|
||||||
|
|
||||||
All downloads come with SQLite, MySQL and PostgreSQL support, and are built with
|
All downloads come with SQLite, MySQL and PostgreSQL support, and are built with
|
||||||
embedded assets. This can be different for older releases.
|
embedded assets. This can be different from Gogs.
|
||||||
|
|
||||||
**Table of Contents**
|
**Table of Contents**
|
||||||
|
|
||||||
@ -24,7 +24,7 @@ embedded assets. This can be different for older releases.
|
|||||||
|
|
||||||
## Download
|
## Download
|
||||||
|
|
||||||
You can find the file matching your platform from the [downloads page](https://dl.gitea.io/gitea/) after navigating to the version you want to download.
|
You can find the file matching your platform from the [downloads page](https://dl.gitea.com/gitea/) after navigating to the version you want to download.
|
||||||
|
|
||||||
### Choosing the right file
|
### Choosing the right file
|
||||||
|
|
||||||
@ -36,12 +36,14 @@ You can find the file matching your platform from the [downloads page](https://d
|
|||||||
|
|
||||||
**For macOS**, you should choose `darwin-arm64` if your hardware uses Apple Silicon, or `darwin-amd64` for Intel.
|
**For macOS**, you should choose `darwin-arm64` if your hardware uses Apple Silicon, or `darwin-amd64` for Intel.
|
||||||
|
|
||||||
|
**For FreeBSD**, you should choose `freebsd12-amd64` for 64-bit Intel/AMD platforms.
|
||||||
|
|
||||||
### Downloading with wget
|
### Downloading with wget
|
||||||
|
|
||||||
Copy the commands below and replace the URL within the one you wish to download.
|
Copy the commands below and replace the URL within the one you wish to download.
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
wget -O gitea https://dl.gitea.io/gitea/{{< version >}}/gitea-{{< version >}}-linux-amd64
|
wget -O gitea https://dl.gitea.com/gitea/{{< version >}}/gitea-{{< version >}}-linux-amd64
|
||||||
chmod +x gitea
|
chmod +x gitea
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -173,7 +175,7 @@ an update of your Gitea version.
|
|||||||
Older Linux distributions (such as Debian 7 and CentOS 6) may not be able to load the
|
Older Linux distributions (such as Debian 7 and CentOS 6) may not be able to load the
|
||||||
Gitea binary, usually producing an error such as `./gitea: /lib/x86_64-linux-gnu/libc.so.6:
|
Gitea binary, usually producing an error such as `./gitea: /lib/x86_64-linux-gnu/libc.so.6:
|
||||||
version 'GLIBC\_2.14' not found (required by ./gitea)`. This is due to the integrated
|
version 'GLIBC\_2.14' not found (required by ./gitea)`. This is due to the integrated
|
||||||
SQLite support in the binaries provided by dl.gitea.io. In this situation, it is usually
|
SQLite support in the binaries provided by dl.gitea.com. In this situation, it is usually
|
||||||
possible to [install from source]({{< relref "from-source.en-us.md" >}}), without including
|
possible to [install from source]({{< relref "from-source.en-us.md" >}}), without including
|
||||||
SQLite support.
|
SQLite support.
|
||||||
|
|
||||||
|
@ -15,21 +15,150 @@ menu:
|
|||||||
|
|
||||||
# 从二进制安装
|
# 从二进制安装
|
||||||
|
|
||||||
所有下载均包括 SQLite, MySQL 和 PostgreSQL 的支持,同时所有资源均已嵌入到可执行程序中,这一点和老版本有所不同。 基于二进制的安装非常简单,只要从 [下载页面](https://dl.gitea.io/gitea) 选择对应平台,拷贝下载URL,执行以下命令即可(以Linux为例):
|
所有打包的二进制程序均包含 SQLite,MySQL 和 PostgreSQL 的数据库连接支持,同时网站的静态资源均已嵌入到可执行程序中,这一点和曾经的 Gogs 有所不同。
|
||||||
|
|
||||||
```
|
**目录**
|
||||||
wget -O gitea https://dl.gitea.io/gitea/{{< version >}}/gitea-{{< version >}}-linux-amd64
|
|
||||||
|
{{< toc >}}
|
||||||
|
|
||||||
|
## 下载
|
||||||
|
|
||||||
|
你可以从 [下载页面](https://dl.gitea.com/gitea/) 选择对应平台的二进制文件。
|
||||||
|
|
||||||
|
### 选择架构
|
||||||
|
|
||||||
|
- **对于 Linux**,`linux-amd64` 适用于 64-bit 的 Intel/AMD 平台。更多架构包含 `arm64` (Raspberry PI 4),`386` (32-bit),`arm-5` 以及 `arm-6`。
|
||||||
|
|
||||||
|
- **对于 Windows**,`windows-4.0-amd64` 适用于 64-bit 的 Intel/AMD 平台,`386` 适用于 32-bit 的 Intel/AMD 平台。(提示:`gogit-windows` 版本内建了 gogit 可能缓解在旧的 Windows 平台上 Go 程序调用 git 子程序时面临的 [性能问题](https://github.com/go-gitea/gitea/pull/15482))
|
||||||
|
|
||||||
|
- **对于 macOS**,`darwin-arm64` 适用于 Apple Silicon 架构,`darwin-amd64` 适用于 Intel 架构.
|
||||||
|
|
||||||
|
- **对于 FreeBSD**,`freebsd12-amd64` 适用于 64-bit 的 Intel/AMD 平台。
|
||||||
|
|
||||||
|
### 使用 wget 下载
|
||||||
|
|
||||||
|
使用以下命令下载适用于 64-bit Linux 平台的二进制文件。
|
||||||
|
|
||||||
|
```sh
|
||||||
|
wget -O gitea https://dl.gitea.com/gitea/{{< version >}}/gitea-{{< version >}}-linux-amd64
|
||||||
chmod +x gitea
|
chmod +x gitea
|
||||||
```
|
```
|
||||||
|
|
||||||
## 测试
|
## 验证 GPG 签名
|
||||||
|
|
||||||
在执行了以上步骤之后,你将会获得 `gitea` 的二进制文件,在你复制到部署的机器之前可以先测试一下。在命令行执行完后,你可以 `Ctrl + C` 关掉程序。
|
Gitea 对打包的二进制文件使用 [GPG密钥](https://keys.openpgp.org/search?q=teabot%40gitea.io) 签名以防止篡改。
|
||||||
|
请根据对应文件名 `.asc` 中包含的校验码检验文件的一致性。
|
||||||
|
|
||||||
```
|
```sh
|
||||||
./gitea web
|
gpg --keyserver keys.openpgp.org --recv 7C9E68152594688862D62AF62D9AE806EC1592E2
|
||||||
|
gpg --verify gitea-{{< version >}}-linux-amd64.asc gitea-{{< version >}}-linux-amd64
|
||||||
```
|
```
|
||||||
|
|
||||||
## 需要帮助?
|
校验正确时的信息为 `Good signature from "Teabot <teabot@gitea.io>"`。
|
||||||
|
校验错误时的信息为 `This key is not certified with a trusted signature!`。
|
||||||
|
|
||||||
|
## 服务器设置
|
||||||
|
|
||||||
|
**提示:** `GITEA_WORK_DIR` 表示 Gitea 工作的路径。以下路径可以通过 [环境变量]({{< relref "doc/advanced/environment-variables.zh-cn.md" >}}) 初始化。
|
||||||
|
|
||||||
|
### 准备环境
|
||||||
|
|
||||||
|
检查是否安装 Git。要求 Git 版本 >= 2.0。
|
||||||
|
|
||||||
|
```sh
|
||||||
|
git --version
|
||||||
|
```
|
||||||
|
|
||||||
|
创建用户(推荐使用名称 `git`)
|
||||||
|
|
||||||
|
```sh
|
||||||
|
adduser \
|
||||||
|
--system \
|
||||||
|
--shell /bin/bash \
|
||||||
|
--gecos 'Git Version Control' \
|
||||||
|
--group \
|
||||||
|
--disabled-password \
|
||||||
|
--home /home/git \
|
||||||
|
git
|
||||||
|
```
|
||||||
|
|
||||||
|
### 创建工作路径
|
||||||
|
|
||||||
|
```sh
|
||||||
|
mkdir -p /var/lib/gitea/{custom,data,log}
|
||||||
|
chown -R git:git /var/lib/gitea/
|
||||||
|
chmod -R 750 /var/lib/gitea/
|
||||||
|
mkdir /etc/gitea
|
||||||
|
chown root:git /etc/gitea
|
||||||
|
chmod 770 /etc/gitea
|
||||||
|
```
|
||||||
|
|
||||||
|
> **注意:** 为了让 Web 安装程序可以写入配置文件,我们临时为 `/etc/gitea` 路径授予了组外用户 `git` 写入权限。建议在安装结束后将配置文件的权限设置为只读。
|
||||||
|
>
|
||||||
|
> ```sh
|
||||||
|
> chmod 750 /etc/gitea
|
||||||
|
> chmod 640 /etc/gitea/app.ini
|
||||||
|
> ```
|
||||||
|
|
||||||
|
如果您不希望通过 Web 安装程序创建配置文件,可以将配置文件设置为仅供 Gitea 用户只读(owner/group `root:git`, mode `0640`)并手工创建配置文件:
|
||||||
|
|
||||||
|
- 设置 `INSTALL_LOCK=true` 关闭安装界面
|
||||||
|
- 手动配置数据库连接参数
|
||||||
|
- 使用 `gitea generate secret` 创建 `SECRET_KEY` 和 `INTERNAL_TOKEN`
|
||||||
|
- 提供所有必要的密钥
|
||||||
|
|
||||||
|
详情参考 [命令行文档](/zh-cn/command-line/) 中有关 `gitea generate secret` 的内容。
|
||||||
|
|
||||||
|
### 配置 Gitea 工作路径
|
||||||
|
|
||||||
|
**提示:** 如果使用 Systemd 管理 Gitea 的 Linux 服务,你可以采用 `WorkingDirectory` 参数来配置工作路径。 否则,使用环境变量 `GITEA_WORK_DIR` 来明确指出程序工作和数据存放路径。
|
||||||
|
|
||||||
|
```sh
|
||||||
|
export GITEA_WORK_DIR=/var/lib/gitea/
|
||||||
|
```
|
||||||
|
|
||||||
|
### 复制二进制文件到全局位置
|
||||||
|
|
||||||
|
```sh
|
||||||
|
cp gitea /usr/local/bin/gitea
|
||||||
|
```
|
||||||
|
|
||||||
|
## 运行 Gitea
|
||||||
|
|
||||||
|
完成以上步骤后,可以通过两种方式运行 Gitea:
|
||||||
|
|
||||||
|
### 1. 创建服务自动启动 Gitea(推荐)
|
||||||
|
|
||||||
|
学习创建 [Linux 服务]({{< relref "run-as-service-in-ubuntu.zh-cn.md" >}})
|
||||||
|
|
||||||
|
### 2. 通过命令行终端运行
|
||||||
|
|
||||||
|
```sh
|
||||||
|
GITEA_WORK_DIR=/var/lib/gitea/ /usr/local/bin/gitea web -c /etc/gitea/app.ini
|
||||||
|
```
|
||||||
|
|
||||||
|
## 升级到最新版本
|
||||||
|
|
||||||
|
您可以通过停止程序,替换 `/usr/local/bin/gitea` 并重启来更新到新版本。直接替换可执行程序时不要更改或使用新的文件名称,以避免数据出错。
|
||||||
|
|
||||||
|
建议您在更新之前进行[备份]({{< relref "doc/usage/backup-and-restore.zh-cn.md" >}})。
|
||||||
|
|
||||||
|
### 1. 使用 systemd 重新启动 Gitea(推荐)
|
||||||
|
|
||||||
|
我们建议使用 systemd 作为服务管理器,使用 `systemctl restart gitea` 安全地重启程序。
|
||||||
|
|
||||||
|
### 2. 非 systemd 重启方法
|
||||||
|
|
||||||
|
使用 SIGHUP 信号关闭程序:查询到 Gitea 程序的 PID,使用 `kill -1 $GITEA_PID`,或者 `killall -1 gitea`。
|
||||||
|
|
||||||
|
更优雅的停止指令可能包括 `kill $GITEA_PID` 或者 `killall gitea`。
|
||||||
|
|
||||||
|
**提示:** 我们不建议使用 SIGKILL 信号(`-9`),这会强制停止 Gitea 程序,但不会正确关闭队列、索引器等任务。
|
||||||
|
|
||||||
|
请参阅下面的疑难解答说明,以在Gitea版本更新后修复损坏的仓库。
|
||||||
|
|
||||||
|
## 排查故障
|
||||||
|
|
||||||
|
> 更多经验总结,请参考英文版 [Troubleshooting](/en-us/install-from-binary/#troubleshooting)
|
||||||
|
|
||||||
如果从本页中没有找到你需要的内容,请访问 [帮助页面]({{< relref "seek-help.zh-cn.md" >}})
|
如果从本页中没有找到你需要的内容,请访问 [帮助页面]({{< relref "seek-help.zh-cn.md" >}})
|
||||||
|
@ -21,7 +21,7 @@ import (
|
|||||||
|
|
||||||
const (
|
const (
|
||||||
// DefaultAvatarClass is the default class of a rendered avatar
|
// DefaultAvatarClass is the default class of a rendered avatar
|
||||||
DefaultAvatarClass = "ui avatar vm"
|
DefaultAvatarClass = "ui avatar gt-vm"
|
||||||
// DefaultAvatarPixelSize is the default size in pixels of a rendered avatar
|
// DefaultAvatarPixelSize is the default size in pixels of a rendered avatar
|
||||||
DefaultAvatarPixelSize = 28
|
DefaultAvatarPixelSize = 28
|
||||||
)
|
)
|
||||||
|
@ -7,6 +7,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"database/sql"
|
"database/sql"
|
||||||
|
|
||||||
|
"xorm.io/builder"
|
||||||
"xorm.io/xorm"
|
"xorm.io/xorm"
|
||||||
"xorm.io/xorm/schemas"
|
"xorm.io/xorm/schemas"
|
||||||
)
|
)
|
||||||
@ -183,6 +184,31 @@ func DeleteByBean(ctx context.Context, bean interface{}) (int64, error) {
|
|||||||
return GetEngine(ctx).Delete(bean)
|
return GetEngine(ctx).Delete(bean)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// DeleteByID deletes the given bean with the given ID
|
||||||
|
func DeleteByID(ctx context.Context, id int64, bean interface{}) (int64, error) {
|
||||||
|
return GetEngine(ctx).ID(id).NoAutoTime().Delete(bean)
|
||||||
|
}
|
||||||
|
|
||||||
|
// FindIDs finds the IDs for the given table name satisfying the given condition
|
||||||
|
// By passing a different value than "id" for "idCol", you can query for foreign IDs, i.e. the repo IDs which satisfy the condition
|
||||||
|
func FindIDs(ctx context.Context, tableName, idCol string, cond builder.Cond) ([]int64, error) {
|
||||||
|
ids := make([]int64, 0, 10)
|
||||||
|
if err := GetEngine(ctx).Table(tableName).
|
||||||
|
Cols(idCol).
|
||||||
|
Where(cond).
|
||||||
|
Find(&ids); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return ids, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// DecrByIDs decreases the given column for entities of the "bean" type with one of the given ids by one
|
||||||
|
// Timestamps of the entities won't be updated
|
||||||
|
func DecrByIDs(ctx context.Context, ids []int64, decrCol string, bean interface{}) error {
|
||||||
|
_, err := GetEngine(ctx).Decr(decrCol).In("id", ids).NoAutoCondition().NoAutoTime().Update(bean)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
// DeleteBeans deletes all given beans, beans should contain delete conditions.
|
// DeleteBeans deletes all given beans, beans should contain delete conditions.
|
||||||
func DeleteBeans(ctx context.Context, beans ...interface{}) (err error) {
|
func DeleteBeans(ctx context.Context, beans ...interface{}) (err error) {
|
||||||
e := GetEngine(ctx)
|
e := GetEngine(ctx)
|
||||||
|
@ -125,6 +125,7 @@ type PullRequestsConfig struct {
|
|||||||
AllowRebaseUpdate bool
|
AllowRebaseUpdate bool
|
||||||
DefaultDeleteBranchAfterMerge bool
|
DefaultDeleteBranchAfterMerge bool
|
||||||
DefaultMergeStyle MergeStyle
|
DefaultMergeStyle MergeStyle
|
||||||
|
DefaultAllowMaintainerEdit bool
|
||||||
}
|
}
|
||||||
|
|
||||||
// FromDB fills up a PullRequestsConfig from serialized format.
|
// FromDB fills up a PullRequestsConfig from serialized format.
|
||||||
|
@ -317,41 +317,3 @@ func IsMarkupFile(name, markup string) bool {
|
|||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
// IsReadmeFile reports whether name looks like a README file
|
|
||||||
// based on its name.
|
|
||||||
func IsReadmeFile(name string) bool {
|
|
||||||
name = strings.ToLower(name)
|
|
||||||
if len(name) < 6 {
|
|
||||||
return false
|
|
||||||
} else if len(name) == 6 {
|
|
||||||
return name == "readme"
|
|
||||||
}
|
|
||||||
return name[:7] == "readme."
|
|
||||||
}
|
|
||||||
|
|
||||||
// IsReadmeFileExtension reports whether name looks like a README file
|
|
||||||
// based on its name. It will look through the provided extensions and check if the file matches
|
|
||||||
// one of the extensions and provide the index in the extension list.
|
|
||||||
// If the filename is `readme.` with an unmatched extension it will match with the index equaling
|
|
||||||
// the length of the provided extension list.
|
|
||||||
// Note that the '.' should be provided in ext, e.g ".md"
|
|
||||||
func IsReadmeFileExtension(name string, ext ...string) (int, bool) {
|
|
||||||
name = strings.ToLower(name)
|
|
||||||
if len(name) < 6 || name[:6] != "readme" {
|
|
||||||
return 0, false
|
|
||||||
}
|
|
||||||
|
|
||||||
for i, extension := range ext {
|
|
||||||
extension = strings.ToLower(extension)
|
|
||||||
if name[6:] == extension {
|
|
||||||
return i, true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if name[6] == '.' {
|
|
||||||
return len(ext), true
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0, false
|
|
||||||
}
|
|
||||||
|
@ -2,94 +2,3 @@
|
|||||||
// SPDX-License-Identifier: MIT
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
package markup_test
|
package markup_test
|
||||||
|
|
||||||
import (
|
|
||||||
"testing"
|
|
||||||
|
|
||||||
. "code.gitea.io/gitea/modules/markup"
|
|
||||||
|
|
||||||
_ "code.gitea.io/gitea/modules/markup/markdown"
|
|
||||||
|
|
||||||
"github.com/stretchr/testify/assert"
|
|
||||||
)
|
|
||||||
|
|
||||||
func TestMisc_IsReadmeFile(t *testing.T) {
|
|
||||||
trueTestCases := []string{
|
|
||||||
"readme",
|
|
||||||
"README",
|
|
||||||
"readME.mdown",
|
|
||||||
"README.md",
|
|
||||||
"readme.i18n.md",
|
|
||||||
}
|
|
||||||
falseTestCases := []string{
|
|
||||||
"test.md",
|
|
||||||
"wow.MARKDOWN",
|
|
||||||
"LOL.mDoWn",
|
|
||||||
"test",
|
|
||||||
"abcdefg",
|
|
||||||
"abcdefghijklmnopqrstuvwxyz",
|
|
||||||
"test.md.test",
|
|
||||||
"readmf",
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, testCase := range trueTestCases {
|
|
||||||
assert.True(t, IsReadmeFile(testCase))
|
|
||||||
}
|
|
||||||
for _, testCase := range falseTestCases {
|
|
||||||
assert.False(t, IsReadmeFile(testCase))
|
|
||||||
}
|
|
||||||
|
|
||||||
type extensionTestcase struct {
|
|
||||||
name string
|
|
||||||
expected bool
|
|
||||||
idx int
|
|
||||||
}
|
|
||||||
|
|
||||||
exts := []string{".md", ".txt", ""}
|
|
||||||
testCasesExtensions := []extensionTestcase{
|
|
||||||
{
|
|
||||||
name: "readme",
|
|
||||||
expected: true,
|
|
||||||
idx: 2,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "readme.md",
|
|
||||||
expected: true,
|
|
||||||
idx: 0,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "README.md",
|
|
||||||
expected: true,
|
|
||||||
idx: 0,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "ReAdMe.Md",
|
|
||||||
expected: true,
|
|
||||||
idx: 0,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "readme.txt",
|
|
||||||
expected: true,
|
|
||||||
idx: 1,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "readme.doc",
|
|
||||||
expected: true,
|
|
||||||
idx: 3,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "readmee.md",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "readme..",
|
|
||||||
expected: true,
|
|
||||||
idx: 3,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, testCase := range testCasesExtensions {
|
|
||||||
idx, ok := IsReadmeFileExtension(testCase.name, exts...)
|
|
||||||
assert.Equal(t, testCase.expected, ok)
|
|
||||||
assert.Equal(t, testCase.idx, idx)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
@ -96,6 +96,7 @@ type Repository struct {
|
|||||||
AllowRebaseUpdate bool `json:"allow_rebase_update"`
|
AllowRebaseUpdate bool `json:"allow_rebase_update"`
|
||||||
DefaultDeleteBranchAfterMerge bool `json:"default_delete_branch_after_merge"`
|
DefaultDeleteBranchAfterMerge bool `json:"default_delete_branch_after_merge"`
|
||||||
DefaultMergeStyle string `json:"default_merge_style"`
|
DefaultMergeStyle string `json:"default_merge_style"`
|
||||||
|
DefaultAllowMaintainerEdit bool `json:"default_allow_maintainer_edit"`
|
||||||
AvatarURL string `json:"avatar_url"`
|
AvatarURL string `json:"avatar_url"`
|
||||||
Internal bool `json:"internal"`
|
Internal bool `json:"internal"`
|
||||||
MirrorInterval string `json:"mirror_interval"`
|
MirrorInterval string `json:"mirror_interval"`
|
||||||
@ -187,6 +188,8 @@ type EditRepoOption struct {
|
|||||||
DefaultDeleteBranchAfterMerge *bool `json:"default_delete_branch_after_merge,omitempty"`
|
DefaultDeleteBranchAfterMerge *bool `json:"default_delete_branch_after_merge,omitempty"`
|
||||||
// set to a merge style to be used by this repository: "merge", "rebase", "rebase-merge", or "squash".
|
// set to a merge style to be used by this repository: "merge", "rebase", "rebase-merge", or "squash".
|
||||||
DefaultMergeStyle *string `json:"default_merge_style,omitempty"`
|
DefaultMergeStyle *string `json:"default_merge_style,omitempty"`
|
||||||
|
// set to `true` to allow edits from maintainers by default
|
||||||
|
DefaultAllowMaintainerEdit *bool `json:"default_allow_maintainer_edit,omitempty"`
|
||||||
// set to `true` to archive this repository.
|
// set to `true` to archive this repository.
|
||||||
Archived *bool `json:"archived,omitempty"`
|
Archived *bool `json:"archived,omitempty"`
|
||||||
// set to a string like `8h30m0s` to set the mirror interval time
|
// set to a string like `8h30m0s` to set the mirror interval time
|
||||||
|
@ -11,6 +11,7 @@ import (
|
|||||||
"path/filepath"
|
"path/filepath"
|
||||||
"regexp"
|
"regexp"
|
||||||
"runtime"
|
"runtime"
|
||||||
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
// EnsureAbsolutePath ensure that a path is absolute, making it
|
// EnsureAbsolutePath ensure that a path is absolute, making it
|
||||||
@ -201,3 +202,41 @@ func CommonSkip(name string) bool {
|
|||||||
|
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// IsReadmeFileName reports whether name looks like a README file
|
||||||
|
// based on its name.
|
||||||
|
func IsReadmeFileName(name string) bool {
|
||||||
|
name = strings.ToLower(name)
|
||||||
|
if len(name) < 6 {
|
||||||
|
return false
|
||||||
|
} else if len(name) == 6 {
|
||||||
|
return name == "readme"
|
||||||
|
}
|
||||||
|
return name[:7] == "readme."
|
||||||
|
}
|
||||||
|
|
||||||
|
// IsReadmeFileExtension reports whether name looks like a README file
|
||||||
|
// based on its name. It will look through the provided extensions and check if the file matches
|
||||||
|
// one of the extensions and provide the index in the extension list.
|
||||||
|
// If the filename is `readme.` with an unmatched extension it will match with the index equaling
|
||||||
|
// the length of the provided extension list.
|
||||||
|
// Note that the '.' should be provided in ext, e.g ".md"
|
||||||
|
func IsReadmeFileExtension(name string, ext ...string) (int, bool) {
|
||||||
|
name = strings.ToLower(name)
|
||||||
|
if len(name) < 6 || name[:6] != "readme" {
|
||||||
|
return 0, false
|
||||||
|
}
|
||||||
|
|
||||||
|
for i, extension := range ext {
|
||||||
|
extension = strings.ToLower(extension)
|
||||||
|
if name[6:] == extension {
|
||||||
|
return i, true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if name[6] == '.' {
|
||||||
|
return len(ext), true
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0, false
|
||||||
|
}
|
||||||
|
@ -55,3 +55,84 @@ func TestFileURLToPath(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestMisc_IsReadmeFileName(t *testing.T) {
|
||||||
|
trueTestCases := []string{
|
||||||
|
"readme",
|
||||||
|
"README",
|
||||||
|
"readME.mdown",
|
||||||
|
"README.md",
|
||||||
|
"readme.i18n.md",
|
||||||
|
}
|
||||||
|
falseTestCases := []string{
|
||||||
|
"test.md",
|
||||||
|
"wow.MARKDOWN",
|
||||||
|
"LOL.mDoWn",
|
||||||
|
"test",
|
||||||
|
"abcdefg",
|
||||||
|
"abcdefghijklmnopqrstuvwxyz",
|
||||||
|
"test.md.test",
|
||||||
|
"readmf",
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, testCase := range trueTestCases {
|
||||||
|
assert.True(t, IsReadmeFileName(testCase))
|
||||||
|
}
|
||||||
|
for _, testCase := range falseTestCases {
|
||||||
|
assert.False(t, IsReadmeFileName(testCase))
|
||||||
|
}
|
||||||
|
|
||||||
|
type extensionTestcase struct {
|
||||||
|
name string
|
||||||
|
expected bool
|
||||||
|
idx int
|
||||||
|
}
|
||||||
|
|
||||||
|
exts := []string{".md", ".txt", ""}
|
||||||
|
testCasesExtensions := []extensionTestcase{
|
||||||
|
{
|
||||||
|
name: "readme",
|
||||||
|
expected: true,
|
||||||
|
idx: 2,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "readme.md",
|
||||||
|
expected: true,
|
||||||
|
idx: 0,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "README.md",
|
||||||
|
expected: true,
|
||||||
|
idx: 0,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "ReAdMe.Md",
|
||||||
|
expected: true,
|
||||||
|
idx: 0,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "readme.txt",
|
||||||
|
expected: true,
|
||||||
|
idx: 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "readme.doc",
|
||||||
|
expected: true,
|
||||||
|
idx: 3,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "readmee.md",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "readme..",
|
||||||
|
expected: true,
|
||||||
|
idx: 3,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, testCase := range testCasesExtensions {
|
||||||
|
idx, ok := IsReadmeFileExtension(testCase.name, exts...)
|
||||||
|
assert.Equal(t, testCase.expected, ok)
|
||||||
|
assert.Equal(t, testCase.idx, idx)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -1871,14 +1871,10 @@ settings.enable_timetracker = Enable Time Tracking
|
|||||||
settings.allow_only_contributors_to_track_time = Let Only Contributors Track Time
|
settings.allow_only_contributors_to_track_time = Let Only Contributors Track Time
|
||||||
settings.pulls_desc = Enable Repository Pull Requests
|
settings.pulls_desc = Enable Repository Pull Requests
|
||||||
settings.pulls.ignore_whitespace = Ignore Whitespace for Conflicts
|
settings.pulls.ignore_whitespace = Ignore Whitespace for Conflicts
|
||||||
settings.pulls.allow_merge_commits = Enable Commit Merging
|
|
||||||
settings.pulls.allow_rebase_merge = Enable Rebasing to Merge Commits
|
|
||||||
settings.pulls.allow_rebase_merge_commit = Enable Rebasing with explicit merge commits (--no-ff)
|
|
||||||
settings.pulls.allow_squash_commits = Enable Squashing to Merge Commits
|
|
||||||
settings.pulls.allow_manual_merge = Enable Mark PR as manually merged
|
|
||||||
settings.pulls.enable_autodetect_manual_merge = Enable autodetect manual merge (Note: In some special cases, misjudgments can occur)
|
settings.pulls.enable_autodetect_manual_merge = Enable autodetect manual merge (Note: In some special cases, misjudgments can occur)
|
||||||
settings.pulls.allow_rebase_update = Enable updating pull request branch by rebase
|
settings.pulls.allow_rebase_update = Enable updating pull request branch by rebase
|
||||||
settings.pulls.default_delete_branch_after_merge = Delete pull request branch after merge by default
|
settings.pulls.default_delete_branch_after_merge = Delete pull request branch after merge by default
|
||||||
|
settings.pulls.default_allow_edits_from_maintainers = Allow edits from maintainers by default
|
||||||
settings.releases_desc = Enable Repository Releases
|
settings.releases_desc = Enable Repository Releases
|
||||||
settings.packages_desc = Enable Repository Packages Registry
|
settings.packages_desc = Enable Repository Packages Registry
|
||||||
settings.projects_desc = Enable Repository Projects
|
settings.projects_desc = Enable Repository Projects
|
||||||
@ -2147,7 +2143,8 @@ settings.block_on_official_review_requests_desc = Merging will not be possible w
|
|||||||
settings.block_outdated_branch = Block merge if pull request is outdated
|
settings.block_outdated_branch = Block merge if pull request is outdated
|
||||||
settings.block_outdated_branch_desc = Merging will not be possible when head branch is behind base branch.
|
settings.block_outdated_branch_desc = Merging will not be possible when head branch is behind base branch.
|
||||||
settings.default_branch_desc = Select a default repository branch for pull requests and code commits:
|
settings.default_branch_desc = Select a default repository branch for pull requests and code commits:
|
||||||
settings.default_merge_style_desc = Default merge style for pull requests:
|
settings.merge_style_desc = Merge Styles
|
||||||
|
settings.default_merge_style_desc = Default Merge Style
|
||||||
settings.choose_branch = Choose a branch…
|
settings.choose_branch = Choose a branch…
|
||||||
settings.no_protected_branch = There are no protected branches.
|
settings.no_protected_branch = There are no protected branches.
|
||||||
settings.edit_protected_branch = Edit
|
settings.edit_protected_branch = Edit
|
||||||
|
@ -863,6 +863,7 @@ func updateRepoUnits(ctx *context.APIContext, opts api.EditRepoOption) error {
|
|||||||
AllowRebaseUpdate: true,
|
AllowRebaseUpdate: true,
|
||||||
DefaultDeleteBranchAfterMerge: false,
|
DefaultDeleteBranchAfterMerge: false,
|
||||||
DefaultMergeStyle: repo_model.MergeStyleMerge,
|
DefaultMergeStyle: repo_model.MergeStyleMerge,
|
||||||
|
DefaultAllowMaintainerEdit: false,
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
config = unit.PullRequestsConfig()
|
config = unit.PullRequestsConfig()
|
||||||
@ -898,6 +899,9 @@ func updateRepoUnits(ctx *context.APIContext, opts api.EditRepoOption) error {
|
|||||||
if opts.DefaultMergeStyle != nil {
|
if opts.DefaultMergeStyle != nil {
|
||||||
config.DefaultMergeStyle = repo_model.MergeStyle(*opts.DefaultMergeStyle)
|
config.DefaultMergeStyle = repo_model.MergeStyle(*opts.DefaultMergeStyle)
|
||||||
}
|
}
|
||||||
|
if opts.DefaultAllowMaintainerEdit != nil {
|
||||||
|
config.DefaultAllowMaintainerEdit = *opts.DefaultAllowMaintainerEdit
|
||||||
|
}
|
||||||
|
|
||||||
units = append(units, repo_model.RepoUnit{
|
units = append(units, repo_model.RepoUnit{
|
||||||
RepoID: repo.ID,
|
RepoID: repo.ID,
|
||||||
|
@ -262,9 +262,9 @@ func renderBlame(ctx *context.Context, blameParts []git.BlamePart, commitNames m
|
|||||||
|
|
||||||
var avatar string
|
var avatar string
|
||||||
if commit.User != nil {
|
if commit.User != nil {
|
||||||
avatar = string(templates.Avatar(commit.User, 18, "mr-3"))
|
avatar = string(templates.Avatar(commit.User, 18, "gt-mr-3"))
|
||||||
} else {
|
} else {
|
||||||
avatar = string(templates.AvatarByEmail(commit.Author.Email, commit.Author.Name, 18, "mr-3"))
|
avatar = string(templates.AvatarByEmail(commit.Author.Email, commit.Author.Name, 18, "gt-mr-3"))
|
||||||
}
|
}
|
||||||
|
|
||||||
br.Avatar = gotemplate.HTML(avatar)
|
br.Avatar = gotemplate.HTML(avatar)
|
||||||
|
@ -820,6 +820,13 @@ func CompareDiff(ctx *context.Context) {
|
|||||||
|
|
||||||
ctx.Data["HasIssuesOrPullsWritePermission"] = ctx.Repo.CanWrite(unit.TypePullRequests)
|
ctx.Data["HasIssuesOrPullsWritePermission"] = ctx.Repo.CanWrite(unit.TypePullRequests)
|
||||||
|
|
||||||
|
if unit, err := ctx.Repo.Repository.GetUnit(ctx, unit.TypePullRequests); err == nil {
|
||||||
|
config := unit.PullRequestsConfig()
|
||||||
|
ctx.Data["AllowMaintainerEdit"] = config.DefaultAllowMaintainerEdit
|
||||||
|
} else {
|
||||||
|
ctx.Data["AllowMaintainerEdit"] = false
|
||||||
|
}
|
||||||
|
|
||||||
ctx.HTML(http.StatusOK, tplCompare)
|
ctx.HTML(http.StatusOK, tplCompare)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -71,7 +71,7 @@ func GetContentHistoryList(ctx *context.Context) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
src := html.EscapeString(item.UserAvatarLink)
|
src := html.EscapeString(item.UserAvatarLink)
|
||||||
class := avatars.DefaultAvatarClass + " mr-3"
|
class := avatars.DefaultAvatarClass + " gt-mr-3"
|
||||||
name := html.EscapeString(username)
|
name := html.EscapeString(username)
|
||||||
avatarHTML := string(templates.AvatarHTML(src, 28, class, username))
|
avatarHTML := string(templates.AvatarHTML(src, 28, class, username))
|
||||||
timeSinceText := string(timeutil.TimeSinceUnix(item.EditedUnix, ctx.Locale))
|
timeSinceText := string(timeutil.TimeSinceUnix(item.EditedUnix, ctx.Locale))
|
||||||
|
@ -529,6 +529,7 @@ func SettingsPost(ctx *context.Context) {
|
|||||||
AllowRebaseUpdate: form.PullsAllowRebaseUpdate,
|
AllowRebaseUpdate: form.PullsAllowRebaseUpdate,
|
||||||
DefaultDeleteBranchAfterMerge: form.DefaultDeleteBranchAfterMerge,
|
DefaultDeleteBranchAfterMerge: form.DefaultDeleteBranchAfterMerge,
|
||||||
DefaultMergeStyle: repo_model.MergeStyle(form.PullsDefaultMergeStyle),
|
DefaultMergeStyle: repo_model.MergeStyle(form.PullsDefaultMergeStyle),
|
||||||
|
DefaultAllowMaintainerEdit: form.DefaultAllowMaintainerEdit,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
} else if !unit_model.TypePullRequests.UnitGlobalDisabled() {
|
} else if !unit_model.TypePullRequests.UnitGlobalDisabled() {
|
||||||
|
@ -96,7 +96,7 @@ func findReadmeFileInEntries(ctx *context.Context, entries []*git.TreeEntry) (*n
|
|||||||
}
|
}
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if i, ok := markup.IsReadmeFileExtension(entry.Name(), exts...); ok {
|
if i, ok := util.IsReadmeFileExtension(entry.Name(), exts...); ok {
|
||||||
log.Debug("Potential readme file: %s", entry.Name())
|
log.Debug("Potential readme file: %s", entry.Name())
|
||||||
if readmeFiles[i] == nil || base.NaturalSortLess(readmeFiles[i].name, entry.Blob().Name()) {
|
if readmeFiles[i] == nil || base.NaturalSortLess(readmeFiles[i].name, entry.Blob().Name()) {
|
||||||
name := entry.Name()
|
name := entry.Name()
|
||||||
@ -423,7 +423,7 @@ func renderFile(ctx *context.Context, entry *git.TreeEntry, treeLink, rawLink st
|
|||||||
rd := charset.ToUTF8WithFallbackReader(io.MultiReader(bytes.NewReader(buf), dataRc))
|
rd := charset.ToUTF8WithFallbackReader(io.MultiReader(bytes.NewReader(buf), dataRc))
|
||||||
|
|
||||||
shouldRenderSource := ctx.FormString("display") == "source"
|
shouldRenderSource := ctx.FormString("display") == "source"
|
||||||
readmeExist := markup.IsReadmeFile(blob.Name())
|
readmeExist := util.IsReadmeFileName(blob.Name())
|
||||||
ctx.Data["ReadmeExist"] = readmeExist
|
ctx.Data["ReadmeExist"] = readmeExist
|
||||||
|
|
||||||
markupType := markup.Type(blob.Name())
|
markupType := markup.Type(blob.Name())
|
||||||
|
@ -81,6 +81,7 @@ func innerToRepo(ctx context.Context, repo *repo_model.Repository, mode perm.Acc
|
|||||||
allowRebaseUpdate := false
|
allowRebaseUpdate := false
|
||||||
defaultDeleteBranchAfterMerge := false
|
defaultDeleteBranchAfterMerge := false
|
||||||
defaultMergeStyle := repo_model.MergeStyleMerge
|
defaultMergeStyle := repo_model.MergeStyleMerge
|
||||||
|
defaultAllowMaintainerEdit := false
|
||||||
if unit, err := repo.GetUnit(ctx, unit_model.TypePullRequests); err == nil {
|
if unit, err := repo.GetUnit(ctx, unit_model.TypePullRequests); err == nil {
|
||||||
config := unit.PullRequestsConfig()
|
config := unit.PullRequestsConfig()
|
||||||
hasPullRequests = true
|
hasPullRequests = true
|
||||||
@ -92,6 +93,7 @@ func innerToRepo(ctx context.Context, repo *repo_model.Repository, mode perm.Acc
|
|||||||
allowRebaseUpdate = config.AllowRebaseUpdate
|
allowRebaseUpdate = config.AllowRebaseUpdate
|
||||||
defaultDeleteBranchAfterMerge = config.DefaultDeleteBranchAfterMerge
|
defaultDeleteBranchAfterMerge = config.DefaultDeleteBranchAfterMerge
|
||||||
defaultMergeStyle = config.GetDefaultMergeStyle()
|
defaultMergeStyle = config.GetDefaultMergeStyle()
|
||||||
|
defaultAllowMaintainerEdit = config.DefaultAllowMaintainerEdit
|
||||||
}
|
}
|
||||||
hasProjects := false
|
hasProjects := false
|
||||||
if _, err := repo.GetUnit(ctx, unit_model.TypeProjects); err == nil {
|
if _, err := repo.GetUnit(ctx, unit_model.TypeProjects); err == nil {
|
||||||
@ -182,6 +184,7 @@ func innerToRepo(ctx context.Context, repo *repo_model.Repository, mode perm.Acc
|
|||||||
AllowRebaseUpdate: allowRebaseUpdate,
|
AllowRebaseUpdate: allowRebaseUpdate,
|
||||||
DefaultDeleteBranchAfterMerge: defaultDeleteBranchAfterMerge,
|
DefaultDeleteBranchAfterMerge: defaultDeleteBranchAfterMerge,
|
||||||
DefaultMergeStyle: string(defaultMergeStyle),
|
DefaultMergeStyle: string(defaultMergeStyle),
|
||||||
|
DefaultAllowMaintainerEdit: defaultAllowMaintainerEdit,
|
||||||
AvatarURL: repo.AvatarLink(),
|
AvatarURL: repo.AvatarLink(),
|
||||||
Internal: !repo.IsPrivate && repo.Owner.Visibility == api.VisibleTypePrivate,
|
Internal: !repo.IsPrivate && repo.Owner.Visibility == api.VisibleTypePrivate,
|
||||||
MirrorInterval: mirrorInterval,
|
MirrorInterval: mirrorInterval,
|
||||||
|
@ -160,6 +160,7 @@ type RepoSettingForm struct {
|
|||||||
EnableAutodetectManualMerge bool
|
EnableAutodetectManualMerge bool
|
||||||
PullsAllowRebaseUpdate bool
|
PullsAllowRebaseUpdate bool
|
||||||
DefaultDeleteBranchAfterMerge bool
|
DefaultDeleteBranchAfterMerge bool
|
||||||
|
DefaultAllowMaintainerEdit bool
|
||||||
EnableTimetracker bool
|
EnableTimetracker bool
|
||||||
AllowOnlyContributorsToTrackTime bool
|
AllowOnlyContributorsToTrackTime bool
|
||||||
EnableIssueDependencies bool
|
EnableIssueDependencies bool
|
||||||
|
@ -1,8 +1,7 @@
|
|||||||
// Copyright 2014 The Gogs Authors. All rights reserved.
|
// Copyright 2023 The Gitea Authors. All rights reserved.
|
||||||
// Copyright 2019 The Gitea Authors. All rights reserved.
|
|
||||||
// SPDX-License-Identifier: MIT
|
// SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
package models
|
package user
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
@ -23,47 +22,50 @@ import (
|
|||||||
repo_model "code.gitea.io/gitea/models/repo"
|
repo_model "code.gitea.io/gitea/models/repo"
|
||||||
user_model "code.gitea.io/gitea/models/user"
|
user_model "code.gitea.io/gitea/models/user"
|
||||||
"code.gitea.io/gitea/modules/setting"
|
"code.gitea.io/gitea/modules/setting"
|
||||||
|
|
||||||
|
"xorm.io/builder"
|
||||||
)
|
)
|
||||||
|
|
||||||
// DeleteUser deletes models associated to an user.
|
// deleteUser deletes models associated to an user.
|
||||||
func DeleteUser(ctx context.Context, u *user_model.User, purge bool) (err error) {
|
func deleteUser(ctx context.Context, u *user_model.User, purge bool) (err error) {
|
||||||
e := db.GetEngine(ctx)
|
e := db.GetEngine(ctx)
|
||||||
|
|
||||||
// ***** START: Watch *****
|
// ***** START: Watch *****
|
||||||
watchedRepoIDs := make([]int64, 0, 10)
|
watchedRepoIDs, err := db.FindIDs(ctx, "watch", "watch.repo_id",
|
||||||
if err = e.Table("watch").Cols("watch.repo_id").
|
builder.Eq{"watch.user_id": u.ID}.
|
||||||
Where("watch.user_id = ?", u.ID).And("watch.mode <>?", repo_model.WatchModeDont).Find(&watchedRepoIDs); err != nil {
|
And(builder.Neq{"watch.mode": repo_model.WatchModeDont}))
|
||||||
|
if err != nil {
|
||||||
return fmt.Errorf("get all watches: %w", err)
|
return fmt.Errorf("get all watches: %w", err)
|
||||||
}
|
}
|
||||||
if _, err = e.Decr("num_watches").In("id", watchedRepoIDs).NoAutoTime().Update(new(repo_model.Repository)); err != nil {
|
if err = db.DecrByIDs(ctx, watchedRepoIDs, "num_watches", new(repo_model.Repository)); err != nil {
|
||||||
return fmt.Errorf("decrease repository num_watches: %w", err)
|
return fmt.Errorf("decrease repository num_watches: %w", err)
|
||||||
}
|
}
|
||||||
// ***** END: Watch *****
|
// ***** END: Watch *****
|
||||||
|
|
||||||
// ***** START: Star *****
|
// ***** START: Star *****
|
||||||
starredRepoIDs := make([]int64, 0, 10)
|
starredRepoIDs, err := db.FindIDs(ctx, "star", "star.repo_id",
|
||||||
if err = e.Table("star").Cols("star.repo_id").
|
builder.Eq{"star.uid": u.ID})
|
||||||
Where("star.uid = ?", u.ID).Find(&starredRepoIDs); err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("get all stars: %w", err)
|
return fmt.Errorf("get all stars: %w", err)
|
||||||
} else if _, err = e.Decr("num_stars").In("id", starredRepoIDs).NoAutoTime().Update(new(repo_model.Repository)); err != nil {
|
} else if err = db.DecrByIDs(ctx, starredRepoIDs, "num_stars", new(repo_model.Repository)); err != nil {
|
||||||
return fmt.Errorf("decrease repository num_stars: %w", err)
|
return fmt.Errorf("decrease repository num_stars: %w", err)
|
||||||
}
|
}
|
||||||
// ***** END: Star *****
|
// ***** END: Star *****
|
||||||
|
|
||||||
// ***** START: Follow *****
|
// ***** START: Follow *****
|
||||||
followeeIDs := make([]int64, 0, 10)
|
followeeIDs, err := db.FindIDs(ctx, "follow", "follow.follow_id",
|
||||||
if err = e.Table("follow").Cols("follow.follow_id").
|
builder.Eq{"follow.user_id": u.ID})
|
||||||
Where("follow.user_id = ?", u.ID).Find(&followeeIDs); err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("get all followees: %w", err)
|
return fmt.Errorf("get all followees: %w", err)
|
||||||
} else if _, err = e.Decr("num_followers").In("id", followeeIDs).Update(new(user_model.User)); err != nil {
|
} else if err = db.DecrByIDs(ctx, followeeIDs, "num_followers", new(user_model.User)); err != nil {
|
||||||
return fmt.Errorf("decrease user num_followers: %w", err)
|
return fmt.Errorf("decrease user num_followers: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
followerIDs := make([]int64, 0, 10)
|
followerIDs, err := db.FindIDs(ctx, "follow", "follow.user_id",
|
||||||
if err = e.Table("follow").Cols("follow.user_id").
|
builder.Eq{"follow.follow_id": u.ID})
|
||||||
Where("follow.follow_id = ?", u.ID).Find(&followerIDs); err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("get all followers: %w", err)
|
return fmt.Errorf("get all followers: %w", err)
|
||||||
} else if _, err = e.Decr("num_following").In("id", followerIDs).Update(new(user_model.User)); err != nil {
|
} else if err = db.DecrByIDs(ctx, followerIDs, "num_following", new(user_model.User)); err != nil {
|
||||||
return fmt.Errorf("decrease user num_following: %w", err)
|
return fmt.Errorf("decrease user num_following: %w", err)
|
||||||
}
|
}
|
||||||
// ***** END: Follow *****
|
// ***** END: Follow *****
|
||||||
@ -181,7 +183,7 @@ func DeleteUser(ctx context.Context, u *user_model.User, purge bool) (err error)
|
|||||||
}
|
}
|
||||||
// ***** END: ExternalLoginUser *****
|
// ***** END: ExternalLoginUser *****
|
||||||
|
|
||||||
if _, err = e.ID(u.ID).Delete(new(user_model.User)); err != nil {
|
if _, err = db.DeleteByID(ctx, u.ID, new(user_model.User)); err != nil {
|
||||||
return fmt.Errorf("delete: %w", err)
|
return fmt.Errorf("delete: %w", err)
|
||||||
}
|
}
|
||||||
|
|
@ -163,7 +163,7 @@ func DeleteUser(ctx context.Context, u *user_model.User, purge bool) error {
|
|||||||
return models.ErrUserOwnPackages{UID: u.ID}
|
return models.ErrUserOwnPackages{UID: u.ID}
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := models.DeleteUser(ctx, u, purge); err != nil {
|
if err := deleteUser(ctx, u, purge); err != nil {
|
||||||
return fmt.Errorf("DeleteUser: %w", err)
|
return fmt.Errorf("DeleteUser: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<div class="item">
|
<div class="item">
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
<div class="icon ml-3 mr-3">{{if eq .Process.Type "request"}}{{svg "octicon-globe" 16}}{{else if eq .Process.Type "system"}}{{svg "octicon-cpu" 16}}{{else}}{{svg "octicon-terminal" 16}}{{end}}</div>
|
<div class="icon gt-ml-3 gt-mr-3">{{if eq .Process.Type "request"}}{{svg "octicon-globe" 16}}{{else if eq .Process.Type "system"}}{{svg "octicon-cpu" 16}}{{else}}{{svg "octicon-terminal" 16}}{{end}}</div>
|
||||||
<div class="content f1">
|
<div class="content gt-f1">
|
||||||
<div class="header">{{.Process.Description}}</div>
|
<div class="header">{{.Process.Description}}</div>
|
||||||
<div class="description"><span title="{{DateFmtLong .Process.Start}}">{{TimeSince .Process.Start .root.locale}}</span></div>
|
<div class="description"><span title="{{DateFmtLong .Process.Start}}">{{TimeSince .Process.Start .root.locale}}</span></div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -45,11 +45,11 @@
|
|||||||
<input type="hidden" name="page" value="{{$.CurrentPage}}">
|
<input type="hidden" name="page" value="{{$.CurrentPage}}">
|
||||||
<div class="actions">
|
<div class="actions">
|
||||||
<div class="ui red basic inverted cancel button">
|
<div class="ui red basic inverted cancel button">
|
||||||
{{svg "octicon-trash" 16 "mr-2"}}
|
{{svg "octicon-trash" 16 "gt-mr-2"}}
|
||||||
{{$.locale.Tr "modal.no"}}
|
{{$.locale.Tr "modal.no"}}
|
||||||
</div>
|
</div>
|
||||||
<button class="ui green basic inverted ok button">
|
<button class="ui green basic inverted ok button">
|
||||||
{{svg "octicon-check" 16 "mr-2"}}
|
{{svg "octicon-check" 16 "gt-mr-2"}}
|
||||||
{{$.locale.Tr "modal.yes"}}
|
{{$.locale.Tr "modal.yes"}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
@ -72,11 +72,11 @@
|
|||||||
<input type="hidden" name="page" value="{{$.CurrentPage}}">
|
<input type="hidden" name="page" value="{{$.CurrentPage}}">
|
||||||
<div class="actions">
|
<div class="actions">
|
||||||
<div class="ui red basic inverted cancel button">
|
<div class="ui red basic inverted cancel button">
|
||||||
{{svg "octicon-trash" 16 "mr-2"}}
|
{{svg "octicon-trash" 16 "gt-mr-2"}}
|
||||||
{{$.locale.Tr "modal.no"}}
|
{{$.locale.Tr "modal.no"}}
|
||||||
</div>
|
</div>
|
||||||
<button class="ui green basic inverted ok button">
|
<button class="ui green basic inverted ok button">
|
||||||
{{svg "octicon-check" 16 "mr-2"}}
|
{{svg "octicon-check" 16 "gt-mr-2"}}
|
||||||
{{$.locale.Tr "modal.yes"}}
|
{{$.locale.Tr "modal.yes"}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<div class="item">
|
<div class="item">
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
<div class="icon ml-3 mr-3">
|
<div class="icon gt-ml-3 gt-mr-3">
|
||||||
{{if eq .Process.Type "request"}}
|
{{if eq .Process.Type "request"}}
|
||||||
{{svg "octicon-globe" 16}}
|
{{svg "octicon-globe" 16}}
|
||||||
{{else if eq .Process.Type "system"}}
|
{{else if eq .Process.Type "system"}}
|
||||||
@ -11,7 +11,7 @@
|
|||||||
{{svg "octicon-code" 16}}
|
{{svg "octicon-code" 16}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="content f1">
|
<div class="content gt-f1">
|
||||||
<div class="header">{{.Process.Description}}</div>
|
<div class="header">{{.Process.Description}}</div>
|
||||||
<div class="description">{{if ne .Process.Type "none"}}<span title="{{DateFmtLong .Process.Start}}">{{TimeSince .Process.Start .root.locale}}</span>{{end}}</div>
|
<div class="description">{{if ne .Process.Type "none"}}<span title="{{DateFmtLong .Process.Start}}">{{TimeSince .Process.Start .root.locale}}</span>{{end}}</div>
|
||||||
</div>
|
</div>
|
||||||
@ -22,14 +22,14 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{if .Process.Stacks}}
|
{{if .Process.Stacks}}
|
||||||
<div class="divided list ml-3">
|
<div class="divided list gt-ml-3">
|
||||||
{{range .Process.Stacks}}
|
{{range .Process.Stacks}}
|
||||||
<div class="item">
|
<div class="item">
|
||||||
<details>
|
<details>
|
||||||
<summary>
|
<summary>
|
||||||
<div class="dif content">
|
<div class="gt-dif content">
|
||||||
<div class="header ml-3">
|
<div class="header gt-ml-3">
|
||||||
<span class="icon mr-3">{{svg "octicon-code" 16}}</span>{{.Description}}{{if gt .Count 1}} * {{.Count}}{{end}}
|
<span class="icon gt-mr-3">{{svg "octicon-code" 16}}</span>{{.Description}}{{if gt .Count 1}} * {{.Count}}{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="description">
|
<div class="description">
|
||||||
{{range .Labels}}
|
{{range .Labels}}
|
||||||
@ -40,9 +40,9 @@
|
|||||||
</summary>
|
</summary>
|
||||||
<div class="list">
|
<div class="list">
|
||||||
{{range .Entry}}
|
{{range .Entry}}
|
||||||
<div class="item df ac">
|
<div class="item gt-df gt-ac">
|
||||||
<span class="icon mr-4">{{svg "octicon-dot-fill" 16}}</span>
|
<span class="icon gt-mr-4">{{svg "octicon-dot-fill" 16}}</span>
|
||||||
<div class="content f1">
|
<div class="content gt-f1">
|
||||||
<div class="header"><code>{{.Function}}</code></div>
|
<div class="header"><code>{{.Function}}</code></div>
|
||||||
<div class="description"><code>{{.File}}:{{.Line}}</code></div>
|
<div class="description"><code>{{.File}}:{{.Line}}</code></div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -3,16 +3,16 @@
|
|||||||
{{if .IsSigned}}
|
{{if .IsSigned}}
|
||||||
{{if .NotificationUnreadCount}}{{$notificationUnreadCount = call .NotificationUnreadCount}}{{end}}
|
{{if .NotificationUnreadCount}}{{$notificationUnreadCount = call .NotificationUnreadCount}}{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<div class="item brand sb">
|
<div class="item brand gt-sb">
|
||||||
<a href="{{AppSubUrl}}/" aria-label="{{if .IsSigned}}{{.locale.Tr "dashboard"}}{{else}}{{.locale.Tr "home"}}{{end}}">
|
<a href="{{AppSubUrl}}/" aria-label="{{if .IsSigned}}{{.locale.Tr "dashboard"}}{{else}}{{.locale.Tr "home"}}{{end}}">
|
||||||
<img width="30" height="30" src="{{AssetUrlPrefix}}/img/logo.svg" alt="{{.locale.Tr "logo"}}" aria-hidden="true">
|
<img width="30" height="30" src="{{AssetUrlPrefix}}/img/logo.svg" alt="{{.locale.Tr "logo"}}" aria-hidden="true">
|
||||||
</a>
|
</a>
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
{{if .IsSigned}}
|
{{if .IsSigned}}
|
||||||
<a href="{{AppSubUrl}}/notifications" class="tooltip mobile-only mr-4 mt-3" data-content="{{.locale.Tr "notifications"}}" aria-label="{{.locale.Tr "notifications"}}">
|
<a href="{{AppSubUrl}}/notifications" class="tooltip mobile-only gt-mr-4 gt-mt-3" data-content="{{.locale.Tr "notifications"}}" aria-label="{{.locale.Tr "notifications"}}">
|
||||||
<span class="fitted item">
|
<span class="fitted item">
|
||||||
{{svg "octicon-bell"}}
|
{{svg "octicon-bell"}}
|
||||||
<span class="notification_count{{if not $notificationUnreadCount}} hidden{{end}}">
|
<span class="notification_count{{if not $notificationUnreadCount}} gt-hidden{{end}}">
|
||||||
{{$notificationUnreadCount}}
|
{{$notificationUnreadCount}}
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
@ -49,7 +49,7 @@
|
|||||||
<div class="item">
|
<div class="item">
|
||||||
<div class="ui icon input">
|
<div class="ui icon input">
|
||||||
<input class="searchbox" type="text" placeholder="{{.locale.Tr "search_project"}}">
|
<input class="searchbox" type="text" placeholder="{{.locale.Tr "search_project"}}">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
*/}}
|
*/}}
|
||||||
@ -80,19 +80,19 @@
|
|||||||
{{else if .IsSigned}}
|
{{else if .IsSigned}}
|
||||||
<div class="right stackable menu">
|
<div class="right stackable menu">
|
||||||
{{if EnableTimetracking}}
|
{{if EnableTimetracking}}
|
||||||
<a class="active-stopwatch-trigger item ui mx-0{{if not .ActiveStopwatch}} hidden{{end}}" href="{{.ActiveStopwatch.IssueLink}}">
|
<a class="active-stopwatch-trigger item ui gt-mx-0{{if not .ActiveStopwatch}} gt-hidden{{end}}" href="{{.ActiveStopwatch.IssueLink}}">
|
||||||
<span class="fitted relative">
|
<span class="fitted gt-relative">
|
||||||
{{svg "octicon-stopwatch"}}
|
{{svg "octicon-stopwatch"}}
|
||||||
<span class="header-stopwatch-dot"></span>
|
<span class="header-stopwatch-dot"></span>
|
||||||
<span class="sr-mobile-only">{{.locale.Tr "active_stopwatch"}}</span>
|
<span class="sr-mobile-only">{{.locale.Tr "active_stopwatch"}}</span>
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
<div class="active-stopwatch-popup tippy-target">
|
<div class="active-stopwatch-popup tippy-target">
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
<a class="stopwatch-link df ac" href="{{.ActiveStopwatch.IssueLink}}">
|
<a class="stopwatch-link gt-df gt-ac" href="{{.ActiveStopwatch.IssueLink}}">
|
||||||
{{svg "octicon-issue-opened" 16 "mr-3"}}
|
{{svg "octicon-issue-opened" 16 "gt-mr-3"}}
|
||||||
<span class="stopwatch-issue">{{.ActiveStopwatch.RepoSlug}}#{{.ActiveStopwatch.IssueIndex}}</span>
|
<span class="stopwatch-issue">{{.ActiveStopwatch.RepoSlug}}#{{.ActiveStopwatch.IssueIndex}}</span>
|
||||||
<span class="ui primary label stopwatch-time my-0 mx-4" data-seconds="{{.ActiveStopwatch.Seconds}}">
|
<span class="ui primary label stopwatch-time gt-my-0 gt-mx-4" data-seconds="{{.ActiveStopwatch.Seconds}}">
|
||||||
{{if .ActiveStopwatch}}{{Sec2Time .ActiveStopwatch.Seconds}}{{end}}
|
{{if .ActiveStopwatch}}{{Sec2Time .ActiveStopwatch.Seconds}}{{end}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
@ -118,16 +118,16 @@
|
|||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
||||||
<a href="{{AppSubUrl}}/notifications" class="item tooltip not-mobile mx-0" data-content="{{.locale.Tr "notifications"}}" aria-label="{{.locale.Tr "notifications"}}">
|
<a href="{{AppSubUrl}}/notifications" class="item tooltip not-mobile gt-mx-0" data-content="{{.locale.Tr "notifications"}}" aria-label="{{.locale.Tr "notifications"}}">
|
||||||
<span class="fitted item">
|
<span class="fitted item">
|
||||||
{{svg "octicon-bell"}}
|
{{svg "octicon-bell"}}
|
||||||
<span class="notification_count{{if not $notificationUnreadCount}} hidden{{end}}">
|
<span class="notification_count{{if not $notificationUnreadCount}} gt-hidden{{end}}">
|
||||||
{{$notificationUnreadCount}}
|
{{$notificationUnreadCount}}
|
||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<div class="ui dropdown jump item tooltip mx-0" data-content="{{.locale.Tr "create_new"}}">
|
<div class="ui dropdown jump item tooltip gt-mx-0" data-content="{{.locale.Tr "create_new"}}">
|
||||||
<span class="text">
|
<span class="text">
|
||||||
<span class="fitted">{{svg "octicon-plus"}}</span>
|
<span class="fitted">{{svg "octicon-plus"}}</span>
|
||||||
<span class="sr-mobile-only">{{.locale.Tr "create_new"}}</span>
|
<span class="sr-mobile-only">{{.locale.Tr "create_new"}}</span>
|
||||||
@ -150,7 +150,7 @@
|
|||||||
</div><!-- end content create new menu -->
|
</div><!-- end content create new menu -->
|
||||||
</div><!-- end dropdown menu create new -->
|
</div><!-- end dropdown menu create new -->
|
||||||
|
|
||||||
<div class="ui dropdown jump item tooltip mx-0" tabindex="-1" data-content="{{.locale.Tr "user_profile_and_more"}}">
|
<div class="ui dropdown jump item tooltip gt-mx-0" tabindex="-1" data-content="{{.locale.Tr "user_profile_and_more"}}">
|
||||||
<span class="text">
|
<span class="text">
|
||||||
{{avatar .SignedUser 24 "tiny"}}
|
{{avatar .SignedUser 24 "tiny"}}
|
||||||
<span class="sr-only">{{.locale.Tr "user_profile_and_more"}}</span>
|
<span class="sr-only">{{.locale.Tr "user_profile_and_more"}}</span>
|
||||||
|
@ -4,27 +4,27 @@
|
|||||||
<div class="center page buttons">
|
<div class="center page buttons">
|
||||||
<div class="ui borderless pagination menu">
|
<div class="ui borderless pagination menu">
|
||||||
<a class="{{if .IsFirst}}disabled{{end}} item navigation" {{if not .IsFirst}}href="{{$.Link}}{{if $paginationLink}}?{{$paginationLink}}{{end}}"{{end}}>
|
<a class="{{if .IsFirst}}disabled{{end}} item navigation" {{if not .IsFirst}}href="{{$.Link}}{{if $paginationLink}}?{{$paginationLink}}{{end}}"{{end}}>
|
||||||
{{svg "gitea-double-chevron-left" 16 "mr-2"}}
|
{{svg "gitea-double-chevron-left" 16 "gt-mr-2"}}
|
||||||
<span class="navigation_label">{{$.locale.Tr "admin.first_page"}}</span>
|
<span class="navigation_label">{{$.locale.Tr "admin.first_page"}}</span>
|
||||||
</a>
|
</a>
|
||||||
<a class="{{if not .HasPrevious}}disabled{{end}} item navigation" {{if .HasPrevious}}href="{{$.Link}}?page={{.Previous}}{{if $paginationLink}}&{{$paginationLink}}{{end}}"{{end}}>
|
<a class="{{if not .HasPrevious}}disabled{{end}} item navigation" {{if .HasPrevious}}href="{{$.Link}}?page={{.Previous}}{{if $paginationLink}}&{{$paginationLink}}{{end}}"{{end}}>
|
||||||
{{svg "octicon-chevron-left" 16 "mr-2"}}
|
{{svg "octicon-chevron-left" 16 "gt-mr-2"}}
|
||||||
<span class="navigation_label">{{$.locale.Tr "repo.issues.previous"}}</span>
|
<span class="navigation_label">{{$.locale.Tr "repo.issues.previous"}}</span>
|
||||||
</a>
|
</a>
|
||||||
{{range .Pages}}
|
{{range .Pages}}
|
||||||
{{if eq .Num -1}}
|
{{if eq .Num -1}}
|
||||||
<a class="disabled item">...</a>
|
<a class="disabled item">...</a>
|
||||||
{{else}}
|
{{else}}
|
||||||
<a class="{{if .IsCurrent}}active {{end}}item content-center" {{if not .IsCurrent}}href="{{$.Link}}?page={{.Num}}{{if $paginationLink}}&{{$paginationLink}}{{end}}"{{end}}>{{.Num}}</a>
|
<a class="{{if .IsCurrent}}active {{end}}item gt-content-center" {{if not .IsCurrent}}href="{{$.Link}}?page={{.Num}}{{if $paginationLink}}&{{$paginationLink}}{{end}}"{{end}}>{{.Num}}</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<a class="{{if not .HasNext}}disabled{{end}} item navigation" {{if .HasNext}}href="{{$.Link}}?page={{.Next}}{{if $paginationLink}}&{{$paginationLink}}{{end}}"{{end}}>
|
<a class="{{if not .HasNext}}disabled{{end}} item navigation" {{if .HasNext}}href="{{$.Link}}?page={{.Next}}{{if $paginationLink}}&{{$paginationLink}}{{end}}"{{end}}>
|
||||||
<span class="navigation_label">{{$.locale.Tr "repo.issues.next"}}</span>
|
<span class="navigation_label">{{$.locale.Tr "repo.issues.next"}}</span>
|
||||||
{{svg "octicon-chevron-right" 16 "ml-2"}}
|
{{svg "octicon-chevron-right" 16 "gt-ml-2"}}
|
||||||
</a>
|
</a>
|
||||||
<a class="{{if .IsLast}}disabled{{end}} item navigation" {{if not .IsLast}}href="{{$.Link}}?page={{.TotalPages}}{{if $paginationLink}}&{{$paginationLink}}{{end}}"{{end}}>
|
<a class="{{if .IsLast}}disabled{{end}} item navigation" {{if not .IsLast}}href="{{$.Link}}?page={{.TotalPages}}{{if $paginationLink}}&{{$paginationLink}}{{end}}"{{end}}>
|
||||||
<span class="navigation_label">{{$.locale.Tr "admin.last_page"}}</span>
|
<span class="navigation_label">{{$.locale.Tr "admin.last_page"}}</span>
|
||||||
{{svg "gitea-double-chevron-right" 16 "ml-2"}}
|
{{svg "gitea-double-chevron-right" 16 "gt-ml-2"}}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<div class="df ac fw">
|
<div class="gt-df gt-ac gt-fw">
|
||||||
{{range $term := .SearchResultLanguages}}
|
{{range $term := .SearchResultLanguages}}
|
||||||
<a class="ui text-label df ac mr-1 my-1 {{if eq $.Language $term.Language}}primary {{end}}basic label" href="{{AppSubUrl}}{{if $.ContextUser}}/{{$.ContextUser.Name}}/-/code{{else}}/explore/code{{end}}?q={{$.Keyword}}{{if ne $.Language $term.Language}}&l={{$term.Language}}{{end}}{{if ne $.queryType ""}}&t={{$.queryType}}{{end}}">
|
<a class="ui text-label gt-df gt-ac gt-mr-1 gt-my-1 {{if eq $.Language $term.Language}}primary {{end}}basic label" href="{{AppSubUrl}}{{if $.ContextUser}}/{{$.ContextUser.Name}}/-/code{{else}}/explore/code{{end}}?q={{$.Keyword}}{{if ne $.Language $term.Language}}&l={{$term.Language}}{{end}}{{if ne $.queryType ""}}&t={{$.queryType}}{{end}}">
|
||||||
<i class="color-icon mr-3" style="background-color: {{$term.Color}}"></i>
|
<i class="color-icon gt-mr-3" style="background-color: {{$term.Color}}"></i>
|
||||||
{{$term.Language}}
|
{{$term.Language}}
|
||||||
<div class="detail">{{$term.Count}}</div>
|
<div class="detail">{{$term.Count}}</div>
|
||||||
</a>
|
</a>
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
<div class="ui repository list">
|
<div class="ui repository list">
|
||||||
{{range .Repos}}
|
{{range .Repos}}
|
||||||
<div class="item">
|
<div class="item">
|
||||||
<div class="ui header df ac">
|
<div class="ui header gt-df gt-ac">
|
||||||
<div class="repo-title">
|
<div class="repo-title">
|
||||||
{{$avatar := (repoAvatar . 32 "mr-3")}}
|
{{$avatar := (repoAvatar . 32 "gt-mr-3")}}
|
||||||
{{if $avatar}}
|
{{if $avatar}}
|
||||||
{{$avatar}}
|
{{$avatar}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<a class="name" href="{{.Link}}">
|
<a class="name" href="{{.Link}}">
|
||||||
{{if or $.PageIsExplore $.PageIsProfileStarList}}{{if .Owner}}{{.Owner.Name}} / {{end}}{{end}}{{.Name}}
|
{{if or $.PageIsExplore $.PageIsProfileStarList}}{{if .Owner}}{{.Owner.Name}} / {{end}}{{end}}{{.Name}}
|
||||||
</a>
|
</a>
|
||||||
<div class="labels df ac fw">
|
<div class="labels gt-df gt-ac gt-fw">
|
||||||
{{if .IsArchived}}
|
{{if .IsArchived}}
|
||||||
<span class="ui basic label">{{$.locale.Tr "repo.desc.archived"}}</span>
|
<span class="ui basic label">{{$.locale.Tr "repo.desc.archived"}}</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -32,22 +32,22 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if .IsFork}}
|
{{if .IsFork}}
|
||||||
<span class="tooltip df" data-content="{{$.locale.Tr "repo.fork"}}" data-position="bottom center">{{svg "octicon-repo-forked"}}</span>
|
<span class="tooltip gt-df" data-content="{{$.locale.Tr "repo.fork"}}" data-position="bottom center">{{svg "octicon-repo-forked"}}</span>
|
||||||
{{else if .IsMirror}}
|
{{else if .IsMirror}}
|
||||||
<span class="tooltip df" data-content="{{$.locale.Tr "mirror"}}" data-position="bottom center">{{svg "octicon-mirror"}}</span>
|
<span class="tooltip gt-df" data-content="{{$.locale.Tr "mirror"}}" data-position="bottom center">{{svg "octicon-mirror"}}</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="metas df ac text grey">
|
<div class="metas gt-df gt-ac text grey">
|
||||||
{{if .PrimaryLanguage}}
|
{{if .PrimaryLanguage}}
|
||||||
<a class="muted" href="{{$.Link}}?q={{$.Keyword}}&sort={{$.SortType}}&language={{.PrimaryLanguage.Language}}">
|
<a class="muted" href="{{$.Link}}?q={{$.Keyword}}&sort={{$.SortType}}&language={{.PrimaryLanguage.Language}}">
|
||||||
<span class="df ac mr-3"><i class="color-icon mr-3" style="background-color: {{.PrimaryLanguage.Color}}"></i>{{.PrimaryLanguage.Language}}</span>
|
<span class="gt-df gt-ac gt-mr-3"><i class="color-icon gt-mr-3" style="background-color: {{.PrimaryLanguage.Color}}"></i>{{.PrimaryLanguage.Language}}</span>
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if not $.DisableStars}}
|
{{if not $.DisableStars}}
|
||||||
<span class="text grey df ac mr-3">{{svg "octicon-star" 16 "mr-3"}}{{.NumStars}}</span>
|
<span class="text grey gt-df gt-ac gt-mr-3">{{svg "octicon-star" 16 "gt-mr-3"}}{{.NumStars}}</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
<span class="text grey df ac mr-3">{{svg "octicon-git-branch" 16 "mr-3"}}{{.NumForks}}</span>
|
<span class="text grey gt-df gt-ac gt-mr-3">{{svg "octicon-git-branch" 16 "gt-mr-3"}}{{.NumForks}}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="description">
|
<div class="description">
|
||||||
|
@ -176,7 +176,7 @@
|
|||||||
|
|
||||||
<!-- Email -->
|
<!-- Email -->
|
||||||
<details class="optional field">
|
<details class="optional field">
|
||||||
<summary class="title py-3{{if .Err_SMTP}} text red{{end}}">
|
<summary class="title gt-py-3{{if .Err_SMTP}} text red{{end}}">
|
||||||
{{.locale.Tr "install.email_title"}}
|
{{.locale.Tr "install.email_title"}}
|
||||||
</summary>
|
</summary>
|
||||||
<div class="inline field">
|
<div class="inline field">
|
||||||
@ -216,7 +216,7 @@
|
|||||||
|
|
||||||
<!-- Server and other services -->
|
<!-- Server and other services -->
|
||||||
<details class="optional field">
|
<details class="optional field">
|
||||||
<summary class="title py-3{{if .Err_Services}} text red{{end}}">
|
<summary class="title gt-py-3{{if .Err_Services}} text red{{end}}">
|
||||||
{{.locale.Tr "install.server_service_title"}}
|
{{.locale.Tr "install.server_service_title"}}
|
||||||
</summary>
|
</summary>
|
||||||
<div class="inline field">
|
<div class="inline field">
|
||||||
@ -314,7 +314,7 @@
|
|||||||
|
|
||||||
<!-- Admin -->
|
<!-- Admin -->
|
||||||
<details class="optional field">
|
<details class="optional field">
|
||||||
<summary class="title py-3{{if .Err_Admin}} text red{{end}}">
|
<summary class="title gt-py-3{{if .Err_Admin}} text red{{end}}">
|
||||||
{{.locale.Tr "install.admin_title"}}
|
{{.locale.Tr "install.admin_title"}}
|
||||||
</summary>
|
</summary>
|
||||||
<p class="center">{{.locale.Tr "install.admin_setting_desc"}}</p>
|
<p class="center">{{.locale.Tr "install.admin_setting_desc"}}</p>
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
{{template "base/head" .}}
|
{{template "base/head" .}}
|
||||||
<div role="main" aria-label="{{.Title}}" class="page-content organization profile">
|
<div role="main" aria-label="{{.Title}}" class="page-content organization profile">
|
||||||
<div class="ui container df">
|
<div class="ui container gt-df">
|
||||||
{{avatar .Org 140 "org-avatar"}}
|
{{avatar .Org 140 "org-avatar"}}
|
||||||
<div id="org-info">
|
<div id="org-info">
|
||||||
<div class="ui header">
|
<div class="ui header">
|
||||||
{{.Org.DisplayName}}
|
{{.Org.DisplayName}}
|
||||||
{{if .EnableFeed}}
|
{{if .EnableFeed}}
|
||||||
<a href="{{.Org.HomeLink}}.rss"><i class="ui grey icon tooltip ml-3" data-content="{{.locale.Tr "rss_feed"}}" data-position="top center">{{svg "octicon-rss" 36}}</i></a>
|
<a href="{{.Org.HomeLink}}.rss"><i class="ui grey icon tooltip gt-ml-3" data-content="{{.locale.Tr "rss_feed"}}" data-position="top center">{{svg "octicon-rss" 36}}</i></a>
|
||||||
{{end}}
|
{{end}}
|
||||||
<span class="org-visibility">
|
<span class="org-visibility">
|
||||||
{{if .Org.Visibility.IsLimited}}<div class="ui large basic horizontal label">{{.locale.Tr "org.settings.visibility.limited_shortname"}}</div>{{end}}
|
{{if .Org.Visibility.IsLimited}}<div class="ui large basic horizontal label">{{.locale.Tr "org.settings.visibility.limited_shortname"}}</div>{{end}}
|
||||||
@ -41,10 +41,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="ui divider"></div>
|
<div class="ui divider"></div>
|
||||||
{{end}}
|
{{end}}
|
||||||
<h4 class="ui top attached header df">
|
<h4 class="ui top attached header gt-df">
|
||||||
<strong class="f1">{{.locale.Tr "org.people"}}</strong>
|
<strong class="gt-f1">{{.locale.Tr "org.people"}}</strong>
|
||||||
<div class="ui">
|
<div class="ui">
|
||||||
<a class="text grey dif ac" href="{{.OrgLink}}/members"><span>{{.MembersTotal}}</span> {{svg "octicon-chevron-right"}}</a>
|
<a class="text grey gt-dif gt-ac" href="{{.OrgLink}}/members"><span>{{.MembersTotal}}</span> {{svg "octicon-chevron-right"}}</a>
|
||||||
</div>
|
</div>
|
||||||
</h4>
|
</h4>
|
||||||
<div class="ui attached segment members">
|
<div class="ui attached segment members">
|
||||||
@ -59,10 +59,10 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{if .IsOrganizationMember}}
|
{{if .IsOrganizationMember}}
|
||||||
<div class="ui top attached header df">
|
<div class="ui top attached header gt-df">
|
||||||
<strong class="f1">{{.locale.Tr "org.teams"}}</strong>
|
<strong class="gt-f1">{{.locale.Tr "org.teams"}}</strong>
|
||||||
<div class="ui">
|
<div class="ui">
|
||||||
<a class="text grey dif ac" href="{{.OrgLink}}/teams"><span>{{.Org.NumTeams}}</span> {{svg "octicon-chevron-right"}}</a>
|
<a class="text grey gt-dif gt-ac" href="{{.OrgLink}}/teams"><span>{{.Org.NumTeams}}</span> {{svg "octicon-chevron-right"}}</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="ui attached table segment teams">
|
<div class="ui attached table segment teams">
|
||||||
|
@ -78,11 +78,11 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<th>{{.locale.Tr "units.unit"}}</th>
|
<th>{{.locale.Tr "units.unit"}}</th>
|
||||||
<th class="center aligned">{{.locale.Tr "org.teams.none_access"}}
|
<th class="center aligned">{{.locale.Tr "org.teams.none_access"}}
|
||||||
<span class="tooltip vm" data-content="{{.locale.Tr "org.teams.none_access_helper"}}">{{svg "octicon-question" 16 "ml-2"}}</span></th>
|
<span class="tooltip gt-vm" data-content="{{.locale.Tr "org.teams.none_access_helper"}}">{{svg "octicon-question" 16 "gt-ml-2"}}</span></th>
|
||||||
<th class="center aligned">{{.locale.Tr "org.teams.read_access"}}
|
<th class="center aligned">{{.locale.Tr "org.teams.read_access"}}
|
||||||
<span class="tooltip vm" data-content="{{.locale.Tr "org.teams.read_access_helper"}}">{{svg "octicon-question" 16 "ml-2"}}</span></th>
|
<span class="tooltip gt-vm" data-content="{{.locale.Tr "org.teams.read_access_helper"}}">{{svg "octicon-question" 16 "gt-ml-2"}}</span></th>
|
||||||
<th class="center aligned">{{.locale.Tr "org.teams.write_access"}}
|
<th class="center aligned">{{.locale.Tr "org.teams.write_access"}}
|
||||||
<span class="tooltip vm" data-content="{{.locale.Tr "org.teams.write_access_helper"}}">{{svg "octicon-question" 16 "ml-2"}}</span></th>
|
<span class="tooltip gt-vm" data-content="{{.locale.Tr "org.teams.write_access_helper"}}">{{svg "octicon-question" 16 "gt-ml-2"}}</span></th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
|
@ -46,7 +46,7 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.ImageLayers}}
|
{{if .PackageDescriptor.Metadata.ImageLayers}}
|
||||||
<h4 class="ui top attached header">{{.locale.Tr "packages.container.layers"}}</h4>
|
<h4 class="ui top attached header">{{.locale.Tr "packages.container.layers"}}</h4>
|
||||||
<div class="ui attached segment word-break">
|
<div class="ui attached segment gt-word-break">
|
||||||
<table class="ui very basic compact table">
|
<table class="ui very basic compact table">
|
||||||
<tbody>
|
<tbody>
|
||||||
{{range .PackageDescriptor.Metadata.ImageLayers}}
|
{{range .PackageDescriptor.Metadata.ImageLayers}}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "cargo"}}
|
{{if eq .PackageDescriptor.Package.Type "cargo"}}
|
||||||
{{range .PackageDescriptor.Metadata.Authors}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "mr-3"}} {{.}}</div>{{end}}
|
{{range .PackageDescriptor.Metadata.Authors}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "gt-mr-3"}} {{.}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.cargo.details.repository_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.cargo.details.repository_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.DocumentationURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.DocumentationURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.cargo.details.documentation_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.DocumentationURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.DocumentationURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.cargo.details.documentation_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.License}}<div class="item" title="{{$.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.License}}<div class="item" title="{{$.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "chef"}}
|
{{if eq .PackageDescriptor.Package.Type "chef"}}
|
||||||
{{if .PackageDescriptor.Metadata.Author}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Author}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.Author}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.Author}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.repository_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.repository_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.License}}<div class="item" title="{{$.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.License}}<div class="item" title="{{$.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "composer"}}
|
{{if eq .PackageDescriptor.Package.Type "composer"}}
|
||||||
{{range .PackageDescriptor.Metadata.Authors}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "mr-3"}} {{.Name}}</div>{{end}}
|
{{range .PackageDescriptor.Metadata.Authors}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "gt-mr-3"}} {{.Name}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.Homepage}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.Homepage}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.Homepage}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.Homepage}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{range .PackageDescriptor.Metadata.License}}<div class="item" title="{{$.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "mr-3"}} {{.}}</div>{{end}}
|
{{range .PackageDescriptor.Metadata.License}}<div class="item" title="{{$.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "gt-mr-3"}} {{.}}</div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "conan"}}
|
{{if eq .PackageDescriptor.Package.Type "conan"}}
|
||||||
{{if .PackageDescriptor.Metadata.Author}}<div class="item" title="{{.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Author}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.Author}}<div class="item" title="{{.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.Author}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.License}}<div class="item" title="{{.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.License}}<div class="item" title="{{.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.conan.details.repository"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.conan.details.repository"}}</a></div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "conda"}}
|
{{if eq .PackageDescriptor.Package.Type "conda"}}
|
||||||
{{if .PackageDescriptor.Metadata.License}}<div class="item">{{svg "octicon-law" 16 "mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.License}}<div class="item">{{svg "octicon-law" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.conda.details.repository_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.conda.details.repository_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.DocumentationURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.DocumentationURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.conda.details.documentation_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.DocumentationURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.DocumentationURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.conda.details.documentation_site"}}</a></div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "container"}}
|
{{if eq .PackageDescriptor.Package.Type "container"}}
|
||||||
<div class="item" title="{{.locale.Tr "packages.container.details.type"}}">{{svg "octicon-package" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Type.Name}}</div>
|
<div class="item" title="{{.locale.Tr "packages.container.details.type"}}">{{svg "octicon-package" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.Type.Name}}</div>
|
||||||
{{if .PackageDescriptor.Metadata.Platform}}<div class="item" title="{{$.locale.Tr "packages.container.details.platform"}}">{{svg "octicon-cpu" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Platform}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.Platform}}<div class="item" title="{{$.locale.Tr "packages.container.details.platform"}}">{{svg "octicon-cpu" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.Platform}}</div>{{end}}
|
||||||
{{range .PackageDescriptor.Metadata.Authors}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "mr-3"}} {{.}}</div>{{end}}
|
{{range .PackageDescriptor.Metadata.Authors}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "gt-mr-3"}} {{.}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.Licenses}}<div class="item">{{svg "octicon-law" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Licenses}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.Licenses}}<div class="item">{{svg "octicon-law" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.Licenses}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.repository_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.repository_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.DocumentationURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.DocumentationURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.documentation_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.DocumentationURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.DocumentationURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.documentation_site"}}</a></div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "helm"}}
|
{{if eq .PackageDescriptor.Package.Type "helm"}}
|
||||||
{{range .PackageDescriptor.Metadata.Maintainers}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "mr-3"}} {{.Name}}</div>{{end}}
|
{{range .PackageDescriptor.Metadata.Maintainers}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "gt-mr-3"}} {{.Name}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.Home}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.Home}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.Home}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.Home}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "maven"}}
|
{{if eq .PackageDescriptor.Package.Type "maven"}}
|
||||||
{{if .PackageDescriptor.Metadata.Name}}<div class="item">{{svg "octicon-note" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Name}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.Name}}<div class="item">{{svg "octicon-note" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.Name}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{range .PackageDescriptor.Metadata.Licenses}}<div class="item" title="{{$.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "mr-3"}} {{.}}</div>{{end}}
|
{{range .PackageDescriptor.Metadata.Licenses}}<div class="item" title="{{$.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "gt-mr-3"}} {{.}}</div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "npm"}}
|
{{if eq .PackageDescriptor.Package.Type "npm"}}
|
||||||
{{if .PackageDescriptor.Metadata.Author}}<div class="item" title="{{.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Author}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.Author}}<div class="item" title="{{.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.Author}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.License}}<div class="item" title="{{.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.License}}<div class="item" title="{{.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
||||||
{{range .PackageDescriptor.VersionProperties}}
|
{{range .PackageDescriptor.VersionProperties}}
|
||||||
{{if eq .Name "npm.tag"}}<div class="item" title="{{$.locale.Tr "packages.npm.details.tag"}}">{{svg "octicon-versions" 16 "mr-3"}} {{.Value}}</div>{{end}}
|
{{if eq .Name "npm.tag"}}<div class="item" title="{{$.locale.Tr "packages.npm.details.tag"}}">{{svg "octicon-versions" 16 "gt-mr-3"}} {{.Value}}</div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "nuget"}}
|
{{if eq .PackageDescriptor.Package.Type "nuget"}}
|
||||||
{{if .PackageDescriptor.Metadata.Authors}}<div class="item" title="{{.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Authors}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.Authors}}<div class="item" title="{{.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.Authors}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "pub"}}
|
{{if eq .PackageDescriptor.Package.Type "pub"}}
|
||||||
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.repository_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.repository_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.DocumentationURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.DocumentationURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.documentation_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.DocumentationURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.DocumentationURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.documentation_site"}}</a></div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "pypi"}}
|
{{if eq .PackageDescriptor.Package.Type "pypi"}}
|
||||||
{{if .PackageDescriptor.Metadata.Author}}<div class="item" title="{{.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Author}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.Author}}<div class="item" title="{{.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.Author}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.License}}<div class="item" title="{{.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.License}}<div class="item" title="{{.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.License}}</div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "rubygems"}}
|
{{if eq .PackageDescriptor.Package.Type "rubygems"}}
|
||||||
{{range .PackageDescriptor.Metadata.Authors}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "mr-3"}} {{.}}</div>{{end}}
|
{{range .PackageDescriptor.Metadata.Authors}}<div class="item" title="{{$.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "gt-mr-3"}} {{.}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div> {{end}}
|
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div> {{end}}
|
||||||
{{range .PackageDescriptor.Metadata.Licenses}}<div class="item" title="{{$.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "mr-3"}} {{.}}</div>{{end}}
|
{{range .PackageDescriptor.Metadata.Licenses}}<div class="item" title="{{$.locale.Tr "packages.details.license"}}">{{svg "octicon-law" 16 "gt-mr-3"}} {{.}}</div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{{if eq .PackageDescriptor.Package.Type "vagrant"}}
|
{{if eq .PackageDescriptor.Package.Type "vagrant"}}
|
||||||
{{if .PackageDescriptor.Metadata.Author}}<div class="item" title="{{.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "mr-3"}} {{.PackageDescriptor.Metadata.Author}}</div>{{end}}
|
{{if .PackageDescriptor.Metadata.Author}}<div class="item" title="{{.locale.Tr "packages.details.author"}}">{{svg "octicon-person" 16 "gt-mr-3"}} {{.PackageDescriptor.Metadata.Author}}</div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.ProjectURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.ProjectURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.details.project_site"}}</a></div>{{end}}
|
||||||
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.conan.details.repository"}}</a></div>{{end}}
|
{{if .PackageDescriptor.Metadata.RepositoryURL}}<div class="item">{{svg "octicon-link-external" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Metadata.RepositoryURL}}" target="_blank" rel="noopener noreferrer me">{{.locale.Tr "packages.conan.details.repository"}}</a></div>{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -51,7 +51,7 @@
|
|||||||
{{.locale.Tr "packages.settings.delete"}}
|
{{.locale.Tr "packages.settings.delete"}}
|
||||||
</div>
|
</div>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<div class="ui warning message text left word-break">
|
<div class="ui warning message text left gt-word-break">
|
||||||
{{.locale.Tr "packages.settings.delete.notice" .PackageDescriptor.Package.Name .PackageDescriptor.Version.Version}}
|
{{.locale.Tr "packages.settings.delete.notice" .PackageDescriptor.Package.Name .PackageDescriptor.Version.Version}}
|
||||||
</div>
|
</div>
|
||||||
<form class="ui form" action="{{.Link}}" method="post">
|
<form class="ui form" action="{{.Link}}" method="post">
|
||||||
|
@ -15,13 +15,13 @@
|
|||||||
</form>
|
</form>
|
||||||
<div class="ui {{if .PackageDescriptors}}issue list{{end}}">
|
<div class="ui {{if .PackageDescriptors}}issue list{{end}}">
|
||||||
{{range .PackageDescriptors}}
|
{{range .PackageDescriptors}}
|
||||||
<li class="item df py-3">
|
<li class="item gt-df gt-py-3">
|
||||||
<div class="issue-item-main f1 fc df">
|
<div class="issue-item-main gt-f1 gt-fc gt-df">
|
||||||
<div class="issue-item-top-row">
|
<div class="issue-item-top-row">
|
||||||
<a class="title" href="{{.FullWebLink}}">{{.Package.Name}}</a>
|
<a class="title" href="{{.FullWebLink}}">{{.Package.Name}}</a>
|
||||||
<span class="ui label">{{svg .Package.Type.SVGName 16}} {{.Package.Type.Name}}</span>
|
<span class="ui label">{{svg .Package.Type.SVGName 16}} {{.Package.Type.Name}}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="desc issue-item-bottom-row df ac fw my-1">
|
<div class="desc issue-item-bottom-row gt-df gt-ac gt-fw gt-my-1">
|
||||||
{{$timeStr := TimeSinceUnix .Version.CreatedUnix $.locale}}
|
{{$timeStr := TimeSinceUnix .Version.CreatedUnix $.locale}}
|
||||||
{{$hasRepositoryAccess := false}}
|
{{$hasRepositoryAccess := false}}
|
||||||
{{if .Repository}}
|
{{if .Repository}}
|
||||||
|
@ -21,12 +21,12 @@
|
|||||||
</form>
|
</form>
|
||||||
<div class="ui {{if .PackageDescriptors}}issue list{{end}}">
|
<div class="ui {{if .PackageDescriptors}}issue list{{end}}">
|
||||||
{{range .PackageDescriptors}}
|
{{range .PackageDescriptors}}
|
||||||
<li class="item df py-3">
|
<li class="item gt-df gt-py-3">
|
||||||
<div class="issue-item-main f1 fc df">
|
<div class="issue-item-main gt-f1 gt-fc gt-df">
|
||||||
<div class="issue-item-top-row">
|
<div class="issue-item-top-row">
|
||||||
<a class="title" href="{{.FullWebLink}}">{{.Version.LowerVersion}}</a>
|
<a class="title" href="{{.FullWebLink}}">{{.Version.LowerVersion}}</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="desc issue-item-bottom-row df ac fw my-1">
|
<div class="desc issue-item-bottom-row gt-df gt-ac gt-fw gt-my-1">
|
||||||
{{$.locale.Tr "packages.published_by" (TimeSinceUnix .Version.CreatedUnix $.locale) .Creator.HomeLink (.Creator.GetDisplayName | Escape) | Safe}}
|
{{$.locale.Tr "packages.published_by" (TimeSinceUnix .Version.CreatedUnix $.locale) .Creator.HomeLink (.Creator.GetDisplayName | Escape) | Safe}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -39,12 +39,12 @@
|
|||||||
<div class="ui segment metas">
|
<div class="ui segment metas">
|
||||||
<strong>{{.locale.Tr "packages.details"}}</strong>
|
<strong>{{.locale.Tr "packages.details"}}</strong>
|
||||||
<div class="ui relaxed list">
|
<div class="ui relaxed list">
|
||||||
<div class="item">{{svg .PackageDescriptor.Package.Type.SVGName 16 "mr-3"}} {{.PackageDescriptor.Package.Type.Name}}</div>
|
<div class="item">{{svg .PackageDescriptor.Package.Type.SVGName 16 "gt-mr-3"}} {{.PackageDescriptor.Package.Type.Name}}</div>
|
||||||
{{if .HasRepositoryAccess}}
|
{{if .HasRepositoryAccess}}
|
||||||
<div class="item">{{svg "octicon-repo" 16 "mr-3"}} <a href="{{.PackageDescriptor.Repository.Link}}">{{.PackageDescriptor.Repository.FullName}}</a></div>
|
<div class="item">{{svg "octicon-repo" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Repository.Link}}">{{.PackageDescriptor.Repository.FullName}}</a></div>
|
||||||
{{end}}
|
{{end}}
|
||||||
<div class="item">{{svg "octicon-calendar" 16 "mr-3"}} {{TimeSinceUnix .PackageDescriptor.Version.CreatedUnix $.locale}}</div>
|
<div class="item">{{svg "octicon-calendar" 16 "gt-mr-3"}} {{TimeSinceUnix .PackageDescriptor.Version.CreatedUnix $.locale}}</div>
|
||||||
<div class="item">{{svg "octicon-download" 16 "mr-3"}} {{.PackageDescriptor.Version.DownloadCount}}</div>
|
<div class="item">{{svg "octicon-download" 16 "gt-mr-3"}} {{.PackageDescriptor.Version.DownloadCount}}</div>
|
||||||
{{template "package/metadata/cargo" .}}
|
{{template "package/metadata/cargo" .}}
|
||||||
{{template "package/metadata/chef" .}}
|
{{template "package/metadata/chef" .}}
|
||||||
{{template "package/metadata/composer" .}}
|
{{template "package/metadata/composer" .}}
|
||||||
@ -60,7 +60,7 @@
|
|||||||
{{template "package/metadata/pypi" .}}
|
{{template "package/metadata/pypi" .}}
|
||||||
{{template "package/metadata/rubygems" .}}
|
{{template "package/metadata/rubygems" .}}
|
||||||
{{template "package/metadata/vagrant" .}}
|
{{template "package/metadata/vagrant" .}}
|
||||||
<div class="item">{{svg "octicon-database" 16 "mr-3"}} {{FileSize .PackageDescriptor.CalculateBlobSize}}</div>
|
<div class="item">{{svg "octicon-database" 16 "gt-mr-3"}} {{FileSize .PackageDescriptor.CalculateBlobSize}}</div>
|
||||||
</div>
|
</div>
|
||||||
{{if not (eq .PackageDescriptor.Package.Type "container")}}
|
{{if not (eq .PackageDescriptor.Package.Type "container")}}
|
||||||
<div class="ui divider"></div>
|
<div class="ui divider"></div>
|
||||||
@ -91,10 +91,10 @@
|
|||||||
<div class="ui divider"></div>
|
<div class="ui divider"></div>
|
||||||
<div class="ui relaxed list">
|
<div class="ui relaxed list">
|
||||||
{{if .HasRepositoryAccess}}
|
{{if .HasRepositoryAccess}}
|
||||||
<div class="item">{{svg "octicon-issue-opened" 16 "mr-3"}} <a href="{{.PackageDescriptor.Repository.Link}}/issues">{{.locale.Tr "repo.issues"}}</a></div>
|
<div class="item">{{svg "octicon-issue-opened" 16 "gt-mr-3"}} <a href="{{.PackageDescriptor.Repository.Link}}/issues">{{.locale.Tr "repo.issues"}}</a></div>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if .CanWritePackages}}
|
{{if .CanWritePackages}}
|
||||||
<div class="item">{{svg "octicon-tools" 16 "mr-3"}} <a href="{{.Link}}/settings">{{.locale.Tr "repo.settings"}}</a></div>
|
<div class="item">{{svg "octicon-tools" 16 "gt-mr-3"}} <a href="{{.Link}}/settings">{{.locale.Tr "repo.settings"}}</a></div>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -12,11 +12,11 @@
|
|||||||
{{template "base/alert" .}}
|
{{template "base/alert" .}}
|
||||||
<div class="ui compact tiny menu">
|
<div class="ui compact tiny menu">
|
||||||
<a class="item{{if not .IsShowClosed}} active{{end}}" href="{{$.Link}}?state=open">
|
<a class="item{{if not .IsShowClosed}} active{{end}}" href="{{$.Link}}?state=open">
|
||||||
{{svg "octicon-project" 16 "mr-3"}}
|
{{svg "octicon-project" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .OpenCount}} {{.locale.Tr "repo.issues.open_title"}}
|
{{JsPrettyNumber .OpenCount}} {{.locale.Tr "repo.issues.open_title"}}
|
||||||
</a>
|
</a>
|
||||||
<a class="item{{if .IsShowClosed}} active{{end}}" href="{{$.Link}}?state=closed">
|
<a class="item{{if .IsShowClosed}} active{{end}}" href="{{$.Link}}?state=closed">
|
||||||
{{svg "octicon-check" 16 "mr-3"}}
|
{{svg "octicon-check" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .ClosedCount}} {{.locale.Tr "repo.issues.closed_title"}}
|
{{JsPrettyNumber .ClosedCount}} {{.locale.Tr "repo.issues.closed_title"}}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
@ -45,9 +45,9 @@
|
|||||||
{{svg "octicon-clock"}} {{$.locale.Tr "repo.milestones.closed" $closedDate|Str2html}}
|
{{svg "octicon-clock"}} {{$.locale.Tr "repo.milestones.closed" $closedDate|Str2html}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<span class="issue-stats">
|
<span class="issue-stats">
|
||||||
{{svg "octicon-issue-opened" 16 "mr-3"}}
|
{{svg "octicon-issue-opened" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .NumOpenIssues}} {{$.locale.Tr "repo.issues.open_title"}}
|
{{JsPrettyNumber .NumOpenIssues}} {{$.locale.Tr "repo.issues.open_title"}}
|
||||||
{{svg "octicon-check" 16 "mr-3"}}
|
{{svg "octicon-check" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .NumClosedIssues}} {{$.locale.Tr "repo.issues.closed_title"}}
|
{{JsPrettyNumber .NumClosedIssues}} {{$.locale.Tr "repo.issues.closed_title"}}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
@ -48,22 +48,22 @@
|
|||||||
<div class="ui compact right small menu">
|
<div class="ui compact right small menu">
|
||||||
<a class="item" href="{{$.Link}}/edit" data-id={{$.Project.ID}} data-title={{$.Project.Title}}>
|
<a class="item" href="{{$.Link}}/edit" data-id={{$.Project.ID}} data-title={{$.Project.Title}}>
|
||||||
{{svg "octicon-pencil"}}
|
{{svg "octicon-pencil"}}
|
||||||
<span class="mx-3">{{$.locale.Tr "repo.issues.label_edit"}}</span>
|
<span class="gt-mx-3">{{$.locale.Tr "repo.issues.label_edit"}}</span>
|
||||||
</a>
|
</a>
|
||||||
{{if .Project.IsClosed}}
|
{{if .Project.IsClosed}}
|
||||||
<a class="item link-action" href data-url="{{$.Link}}/open">
|
<a class="item link-action" href data-url="{{$.Link}}/open">
|
||||||
{{svg "octicon-check"}}
|
{{svg "octicon-check"}}
|
||||||
<span class="mx-3">{{$.locale.Tr "repo.projects.open"}}</span>
|
<span class="gt-mx-3">{{$.locale.Tr "repo.projects.open"}}</span>
|
||||||
</a>
|
</a>
|
||||||
{{else}}
|
{{else}}
|
||||||
<a class="item link-action" href data-url="{{$.Link}}/close">
|
<a class="item link-action" href data-url="{{$.Link}}/close">
|
||||||
{{svg "octicon-skip"}}
|
{{svg "octicon-skip"}}
|
||||||
<span class="mx-3">{{$.locale.Tr "repo.projects.close"}}</span>
|
<span class="gt-mx-3">{{$.locale.Tr "repo.projects.close"}}</span>
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
<a class="item delete-button" href="#" data-url="{{$.Link}}/delete" data-id="{{.Project.ID}}">
|
<a class="item delete-button" href="#" data-url="{{$.Link}}/delete" data-id="{{.Project.ID}}">
|
||||||
{{svg "octicon-trash"}}
|
{{svg "octicon-trash"}}
|
||||||
<span class="mx-3">{{$.locale.Tr "repo.issues.label_delete"}}</span>
|
<span class="gt-mx-3">{{$.locale.Tr "repo.issues.label_delete"}}</span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -77,8 +77,8 @@
|
|||||||
{{range $board := .Boards}}
|
{{range $board := .Boards}}
|
||||||
|
|
||||||
<div class="ui segment board-column" style="background: {{.Color}} !important;" data-id="{{.ID}}" data-sorting="{{.Sorting}}" data-url="{{$.Link}}/{{.ID}}">
|
<div class="ui segment board-column" style="background: {{.Color}} !important;" data-id="{{.ID}}" data-sorting="{{.Sorting}}" data-url="{{$.Link}}/{{.ID}}">
|
||||||
<div class="board-column-header df ac sb">
|
<div class="board-column-header gt-df gt-ac gt-sb">
|
||||||
<div class="ui large label board-label py-2">
|
<div class="ui large label board-label gt-py-2">
|
||||||
<div class="ui small circular grey label board-card-cnt">
|
<div class="ui small circular grey label board-card-cnt">
|
||||||
{{.NumIssues}}
|
{{.NumIssues}}
|
||||||
</div>
|
</div>
|
||||||
@ -86,7 +86,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{if and $.CanWriteProjects (ne .ID 0)}}
|
{{if and $.CanWriteProjects (ne .ID 0)}}
|
||||||
<div class="ui dropdown jump item tooltip">
|
<div class="ui dropdown jump item tooltip">
|
||||||
<div class="not-mobile px-3" tabindex="-1">
|
<div class="not-mobile gt-px-3" tabindex="-1">
|
||||||
{{svg "octicon-kebab-horizontal"}}
|
{{svg "octicon-kebab-horizontal"}}
|
||||||
</div>
|
</div>
|
||||||
<div class="menu user-menu" tabindex="-1">
|
<div class="menu user-menu" tabindex="-1">
|
||||||
@ -175,9 +175,9 @@
|
|||||||
|
|
||||||
<!-- start issue card -->
|
<!-- start issue card -->
|
||||||
<div class="card board-card" data-issue="{{.ID}}">
|
<div class="card board-card" data-issue="{{.ID}}">
|
||||||
<div class="content p-0">
|
<div class="content gt-p-0">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<span class="dif ac vm {{if .IsClosed}}red{{else}}green{{end}}">
|
<span class="gt-dif gt-ac gt-vm {{if .IsClosed}}red{{else}}green{{end}}">
|
||||||
{{if .IsPull}}
|
{{if .IsPull}}
|
||||||
{{if .PullRequest.HasMerged}}
|
{{if .PullRequest.HasMerged}}
|
||||||
{{svg "octicon-git-merge" 16 "text purple"}}
|
{{svg "octicon-git-merge" 16 "text purple"}}
|
||||||
@ -196,11 +196,11 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</span>
|
</span>
|
||||||
<a class="project-board-title vm" href="{{.Link}}">
|
<a class="project-board-title gt-vm" href="{{.Link}}">
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="meta my-2">
|
<div class="meta gt-my-2">
|
||||||
<span class="text light grey">
|
<span class="text light grey">
|
||||||
{{.Repo.FullName}}#{{.Index}}
|
{{.Repo.FullName}}#{{.Index}}
|
||||||
{{$timeStr := TimeSinceUnix .GetLastEventTimestamp $.locale}}
|
{{$timeStr := TimeSinceUnix .GetLastEventTimestamp $.locale}}
|
||||||
@ -214,31 +214,31 @@
|
|||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
{{- if .MilestoneID}}
|
{{- if .MilestoneID}}
|
||||||
<div class="meta my-2">
|
<div class="meta gt-my-2">
|
||||||
<a class="milestone" href="{{$.RepoLink}}/milestone/{{.MilestoneID}}">
|
<a class="milestone" href="{{$.RepoLink}}/milestone/{{.MilestoneID}}">
|
||||||
{{svg "octicon-milestone" 16 "mr-2 vm"}}
|
{{svg "octicon-milestone" 16 "gt-mr-2 gt-vm"}}
|
||||||
<span class="vm">{{.Milestone.Name}}</span>
|
<span class="gt-vm">{{.Milestone.Name}}</span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{{- end}}
|
{{- end}}
|
||||||
{{- range index $.LinkedPRs .ID}}
|
{{- range index $.LinkedPRs .ID}}
|
||||||
<div class="meta my-2">
|
<div class="meta gt-my-2">
|
||||||
<a href="{{$.RepoLink}}/pulls/{{.Index}}">
|
<a href="{{$.RepoLink}}/pulls/{{.Index}}">
|
||||||
<span class="m-0 {{if .PullRequest.HasMerged}}purple{{else if .IsClosed}}red{{else}}green{{end}}">{{svg "octicon-git-merge" 16 "mr-2 vm"}}</span>
|
<span class="gt-m-0 {{if .PullRequest.HasMerged}}purple{{else if .IsClosed}}red{{else}}green{{end}}">{{svg "octicon-git-merge" 16 "gt-mr-2 gt-vm"}}</span>
|
||||||
<span class="vm">{{.Title}} <span class="text light grey">#{{.Index}}</span></span>
|
<span class="gt-vm">{{.Title}} <span class="text light grey">#{{.Index}}</span></span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{{- end}}
|
{{- end}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{if or .Labels .Assignees}}
|
{{if or .Labels .Assignees}}
|
||||||
<div class="extra content labels-list p-0 pt-2">
|
<div class="extra content labels-list gt-p-0 gt-pt-2">
|
||||||
{{range .Labels}}
|
{{range .Labels}}
|
||||||
<a class="ui label" target="_blank" href="{{$.RepoLink}}/issues?labels={{.ID}}" style="color: {{.ForegroundColor}}; background-color: {{.Color}};" title="{{.Description | RenderEmojiPlain}}">{{.Name | RenderEmoji}}</a>
|
<a class="ui label" target="_blank" href="{{$.RepoLink}}/issues?labels={{.ID}}" style="color: {{.ForegroundColor}}; background-color: {{.Color}};" title="{{.Description | RenderEmojiPlain}}">{{.Name | RenderEmoji}}</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
<div class="right floated">
|
<div class="right floated">
|
||||||
{{range .Assignees}}
|
{{range .Assignees}}
|
||||||
<a class="tooltip" target="_blank" href="{{.HomeLink}}" data-content="{{$.locale.Tr "repo.projects.board.assigned_to"}} {{.Name}}">{{avatar . 28 "mini mr-3"}}</a>
|
<a class="tooltip" target="_blank" href="{{.HomeLink}}" data-content="{{$.locale.Tr "repo.projects.board.assigned_to"}} {{.Name}}">{{avatar . 28 "mini gt-mr-3"}}</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
<div class="ui compact tiny menu">
|
<div class="ui compact tiny menu">
|
||||||
<a class="{{if not .IsShowClosed}}active {{end}}item" href="{{$.Link}}?workflow={{.CurWorkflow}}&state=open">
|
<a class="{{if not .IsShowClosed}}active {{end}}item" href="{{$.Link}}?workflow={{.CurWorkflow}}&state=open">
|
||||||
{{svg "octicon-issue-opened" 16 "mr-3"}}
|
{{svg "octicon-issue-opened" 16 "gt-mr-3"}}
|
||||||
{{.locale.Tr "actions.runs.open_tab" $.NumOpenActionRuns}}
|
{{.locale.Tr "actions.runs.open_tab" $.NumOpenActionRuns}}
|
||||||
</a>
|
</a>
|
||||||
<a class="{{if .IsShowClosed}}active {{end}}item" href="{{$.Link}}?workflow={{.CurWorkflow}}&state=closed">
|
<a class="{{if .IsShowClosed}}active {{end}}item" href="{{$.Link}}?workflow={{.CurWorkflow}}&state=closed">
|
||||||
{{svg "octicon-issue-closed" 16 "mr-3"}}
|
{{svg "octicon-issue-closed" 16 "gt-mr-3"}}
|
||||||
{{.locale.Tr "actions.runs.closed_tab" $.NumClosedActionRuns}}
|
{{.locale.Tr "actions.runs.closed_tab" $.NumClosedActionRuns}}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
<div class="issue list">
|
<div class="issue list">
|
||||||
{{range .Runs}}
|
{{range .Runs}}
|
||||||
<li class="item df py-3">
|
<li class="item gt-df gt-py-3">
|
||||||
<div class="issue-item-left df">
|
<div class="issue-item-left gt-df">
|
||||||
{{template "repo/actions/status" .Status}}
|
{{template "repo/actions/status" .Status}}
|
||||||
</div>
|
</div>
|
||||||
<div class="issue-item-main f1 fc df">
|
<div class="issue-item-main gt-f1 gt-fc gt-df">
|
||||||
<div class="issue-item-top-row">
|
<div class="issue-item-top-row">
|
||||||
<a class="index ml-0 mr-2" href="{{if .Link}}{{.Link}}{{else}}{{$.Link}}/{{.Index}}{{end}}">
|
<a class="index gt-ml-0 gt-mr-2" href="{{if .Link}}{{.Link}}{{else}}{{$.Link}}/{{.Index}}{{end}}">
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
</a>
|
</a>
|
||||||
<span class="ui label">
|
<span class="ui label">
|
||||||
@ -17,7 +17,7 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="desc issue-item-bottom-row df ac fw my-1">
|
<div class="desc issue-item-bottom-row gt-df gt-ac gt-fw gt-my-1">
|
||||||
<b>{{if not $.CurWorkflow}}{{.WorkflowID}} {{end}}#{{.Index}}</b>: {{$.locale.Tr "actions.runs.commit"}}
|
<b>{{if not $.CurWorkflow}}{{.WorkflowID}} {{end}}#{{.Index}}</b>: {{$.locale.Tr "actions.runs.commit"}}
|
||||||
<a href="{{$.RepoLink}}/commit/{{.CommitSHA}}">{{ShortSha .CommitSHA}}</a> {{$.locale.Tr "actions.runs.pushed_by"}} {{.TriggerUser.GetDisplayName | Escape}}
|
<a href="{{$.RepoLink}}/commit/{{.CommitSHA}}">{{ShortSha .CommitSHA}}</a> {{$.locale.Tr "actions.runs.pushed_by"}} {{.TriggerUser.GetDisplayName | Escape}}
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
<div class="{{TabSizeClass .Editorconfig .FileName}} non-diff-file-content">
|
<div class="{{TabSizeClass .Editorconfig .FileName}} non-diff-file-content">
|
||||||
<h4 class="file-header ui top attached header df ac sb fw">
|
<h4 class="file-header ui top attached header gt-df gt-ac gt-sb gt-fw">
|
||||||
<div class="file-header-left df ac py-3 pr-4">
|
<div class="file-header-left gt-df gt-ac gt-py-3 gt-pr-4">
|
||||||
{{template "repo/file_info" .}}
|
{{template "repo/file_info" .}}
|
||||||
</div>
|
</div>
|
||||||
<div class="file-header-right file-actions df ac fw">
|
<div class="file-header-right file-actions gt-df gt-ac gt-fw">
|
||||||
<div class="ui buttons">
|
<div class="ui buttons">
|
||||||
<a class="ui tiny button" href="{{$.RawFileLink}}">{{.locale.Tr "repo.file_raw"}}</a>
|
<a class="ui tiny button" href="{{$.RawFileLink}}">{{.locale.Tr "repo.file_raw"}}</a>
|
||||||
{{if not .IsViewCommit}}
|
{{if not .IsViewCommit}}
|
||||||
@ -57,7 +57,7 @@
|
|||||||
</td>
|
</td>
|
||||||
{{end}}
|
{{end}}
|
||||||
<td rel="L{{$row.RowNumber}}" rel="L{{$row.RowNumber}}" class="lines-code blame-code chroma">
|
<td rel="L{{$row.RowNumber}}" rel="L{{$row.RowNumber}}" class="lines-code blame-code chroma">
|
||||||
<code class="code-inner pl-3">{{$row.Code}}</code>
|
<code class="code-inner gt-pl-3">{{$row.Code}}</code>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
{{svg "octicon-shield-lock"}}
|
{{svg "octicon-shield-lock"}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<a href="{{.RepoLink}}/src/branch/{{PathEscapeSegments .DefaultBranch}}">{{.DefaultBranch}}</a>
|
<a href="{{.RepoLink}}/src/branch/{{PathEscapeSegments .DefaultBranch}}">{{.DefaultBranch}}</a>
|
||||||
<p class="info df ac my-2">{{svg "octicon-git-commit" 16 "mr-2"}}<a href="{{.RepoLink}}/commit/{{PathEscape .DefaultBranchBranch.Commit.ID.String}}">{{ShortSha .DefaultBranchBranch.Commit.ID.String}}</a> · <span class="commit-message">{{RenderCommitMessage $.Context .DefaultBranchBranch.Commit.CommitMessage .RepoLink .Repository.ComposeMetas}}</span> · {{.locale.Tr "org.repo_updated"}} {{TimeSince .DefaultBranchBranch.Commit.Committer.When .locale}}</p>
|
<p class="info gt-df gt-ac gt-my-2">{{svg "octicon-git-commit" 16 "gt-mr-2"}}<a href="{{.RepoLink}}/commit/{{PathEscape .DefaultBranchBranch.Commit.ID.String}}">{{ShortSha .DefaultBranchBranch.Commit.ID.String}}</a> · <span class="commit-message">{{RenderCommitMessage $.Context .DefaultBranchBranch.Commit.CommitMessage .RepoLink .Repository.ComposeMetas}}</span> · {{.locale.Tr "org.repo_updated"}} {{TimeSince .DefaultBranchBranch.Commit.Committer.When .locale}}</p>
|
||||||
</td>
|
</td>
|
||||||
<td class="right aligned overflow-visible">
|
<td class="right aligned overflow-visible">
|
||||||
{{if and $.IsWriter (not $.Repository.IsArchived) (not .IsDeleted)}}
|
{{if and $.IsWriter (not $.Repository.IsArchived) (not .IsDeleted)}}
|
||||||
@ -61,7 +61,7 @@
|
|||||||
{{svg "octicon-shield-lock"}}
|
{{svg "octicon-shield-lock"}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<a href="{{$.RepoLink}}/src/branch/{{PathEscapeSegments .Name}}">{{.Name}}</a>
|
<a href="{{$.RepoLink}}/src/branch/{{PathEscapeSegments .Name}}">{{.Name}}</a>
|
||||||
<p class="info df ac my-2">{{svg "octicon-git-commit" 16 "mr-2"}}<a href="{{$.RepoLink}}/commit/{{PathEscape .Commit.ID.String}}">{{ShortSha .Commit.ID.String}}</a> · <span class="commit-message">{{RenderCommitMessage $.Context .Commit.CommitMessage $.RepoLink $.Repository.ComposeMetas}}</span> · {{$.locale.Tr "org.repo_updated"}} {{TimeSince .Commit.Committer.When $.locale}}</p>
|
<p class="info gt-df gt-ac gt-my-2">{{svg "octicon-git-commit" 16 "gt-mr-2"}}<a href="{{$.RepoLink}}/commit/{{PathEscape .Commit.ID.String}}">{{ShortSha .Commit.ID.String}}</a> · <span class="commit-message">{{RenderCommitMessage $.Context .Commit.CommitMessage $.RepoLink $.Repository.ComposeMetas}}</span> · {{$.locale.Tr "org.repo_updated"}} {{TimeSince .Commit.Committer.When $.locale}}</p>
|
||||||
{{end}}
|
{{end}}
|
||||||
</td>
|
</td>
|
||||||
<td class="three wide ui">
|
<td class="three wide ui">
|
||||||
@ -86,23 +86,23 @@
|
|||||||
</a>
|
</a>
|
||||||
{{else if and (not .IsDeleted) $.AllowsPulls (gt .CommitsAhead 0)}}
|
{{else if and (not .IsDeleted) $.AllowsPulls (gt .CommitsAhead 0)}}
|
||||||
<a href="{{$.RepoLink}}/compare/{{PathEscapeSegments $.DefaultBranch}}...{{if ne $.Repository.Owner.Name $.Owner.Name}}{{PathEscape $.Owner.Name}}:{{end}}{{PathEscapeSegments .Name}}">
|
<a href="{{$.RepoLink}}/compare/{{PathEscapeSegments $.DefaultBranch}}...{{if ne $.Repository.Owner.Name $.Owner.Name}}{{PathEscape $.Owner.Name}}:{{end}}{{PathEscapeSegments .Name}}">
|
||||||
<button id="new-pull-request" class="ui compact basic button mr-0">{{if $.CanPull}}{{$.locale.Tr "repo.pulls.compare_changes"}}{{else}}{{$.locale.Tr "action.compare_branch"}}{{end}}</button>
|
<button id="new-pull-request" class="ui compact basic button gt-mr-0">{{if $.CanPull}}{{$.locale.Tr "repo.pulls.compare_changes"}}{{else}}{{$.locale.Tr "action.compare_branch"}}{{end}}</button>
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{else if and .LatestPullRequest.HasMerged .MergeMovedOn}}
|
{{else if and .LatestPullRequest.HasMerged .MergeMovedOn}}
|
||||||
{{if and (not .IsDeleted) $.AllowsPulls (gt .CommitsAhead 0)}}
|
{{if and (not .IsDeleted) $.AllowsPulls (gt .CommitsAhead 0)}}
|
||||||
<a href="{{$.RepoLink}}/compare/{{PathEscapeSegments $.DefaultBranch}}...{{if ne $.Repository.Owner.Name $.Owner.Name}}{{$.Owner.Name}}:{{end}}{{.Name | PathEscapeSegments}}">
|
<a href="{{$.RepoLink}}/compare/{{PathEscapeSegments $.DefaultBranch}}...{{if ne $.Repository.Owner.Name $.Owner.Name}}{{$.Owner.Name}}:{{end}}{{.Name | PathEscapeSegments}}">
|
||||||
<button id="new-pull-request" class="ui compact basic button mr-0">{{if $.CanPull}}{{$.locale.Tr "repo.pulls.compare_changes"}}{{else}}{{$.locale.Tr "action.compare_branch"}}{{end}}</button>
|
<button id="new-pull-request" class="ui compact basic button gt-mr-0">{{if $.CanPull}}{{$.locale.Tr "repo.pulls.compare_changes"}}{{else}}{{$.locale.Tr "action.compare_branch"}}{{end}}</button>
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{else}}
|
{{else}}
|
||||||
<a href="{{.LatestPullRequest.Issue.Link}}" class="vm ref-issue">{{if not .LatestPullRequest.IsSameRepo}}{{.LatestPullRequest.BaseRepo.FullName}}{{end}}#{{.LatestPullRequest.Issue.Index}}</a>
|
<a href="{{.LatestPullRequest.Issue.Link}}" class="gt-vm ref-issue">{{if not .LatestPullRequest.IsSameRepo}}{{.LatestPullRequest.BaseRepo.FullName}}{{end}}#{{.LatestPullRequest.Issue.Index}}</a>
|
||||||
{{if .LatestPullRequest.HasMerged}}
|
{{if .LatestPullRequest.HasMerged}}
|
||||||
<a href="{{.LatestPullRequest.Issue.Link}}" class="ui text-label purple large label vm">{{svg "octicon-git-merge" 16 "mr-2"}}{{$.locale.Tr "repo.pulls.merged"}}</a>
|
<a href="{{.LatestPullRequest.Issue.Link}}" class="ui text-label purple large label gt-vm">{{svg "octicon-git-merge" 16 "gt-mr-2"}}{{$.locale.Tr "repo.pulls.merged"}}</a>
|
||||||
{{else if .LatestPullRequest.Issue.IsClosed}}
|
{{else if .LatestPullRequest.Issue.IsClosed}}
|
||||||
<a href="{{.LatestPullRequest.Issue.Link}}" class="ui text-label red large label vm">{{svg "octicon-git-pull-request" 16 "mr-2"}}{{$.locale.Tr "repo.issues.closed_title"}}</a>
|
<a href="{{.LatestPullRequest.Issue.Link}}" class="ui text-label red large label gt-vm">{{svg "octicon-git-pull-request" 16 "gt-mr-2"}}{{$.locale.Tr "repo.issues.closed_title"}}</a>
|
||||||
{{else}}
|
{{else}}
|
||||||
<a href="{{.LatestPullRequest.Issue.Link}}" class="ui text-label green large label vm">{{svg "octicon-git-pull-request" 16 "mr-2"}}{{$.locale.Tr "repo.issues.open_title"}}</a>
|
<a href="{{.LatestPullRequest.Issue.Link}}" class="ui text-label green large label gt-vm">{{svg "octicon-git-pull-request" 16 "gt-mr-2"}}{{$.locale.Tr "repo.issues.open_title"}}</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</td>
|
</td>
|
||||||
|
@ -14,15 +14,15 @@
|
|||||||
data-branch-url-suffix="{{if .branchURLSuffix}}{{.branchURLSuffix}}{{else}}{{if $.root.TreePath}}/{{PathEscapeSegments $.root.TreePath}}{{end}}{{end}}"
|
data-branch-url-suffix="{{if .branchURLSuffix}}{{.branchURLSuffix}}{{else}}{{if $.root.TreePath}}/{{PathEscapeSegments $.root.TreePath}}{{end}}{{end}}"
|
||||||
data-tag-url-prefix="{{if .tagURLPrefix}}{{.tagURLPrefix}}{{else if $release}}{{$.root.RepoLink}}/compare/{{else}}{{$.root.RepoLink}}/{{if $.root.PageIsCommits}}commits{{else}}src{{end}}/tag/{{end}}"
|
data-tag-url-prefix="{{if .tagURLPrefix}}{{.tagURLPrefix}}{{else if $release}}{{$.root.RepoLink}}/compare/{{else}}{{$.root.RepoLink}}/{{if $.root.PageIsCommits}}commits{{else}}src{{end}}/tag/{{end}}"
|
||||||
data-tag-url-suffix="{{if .tagURLSuffix}}{{.tagURLSuffix}}{{else if $release}}...{{if $release.IsDraft}}{{PathEscapeSegments $release.Target}}{{else}}{{if $release.TagName}}{{PathEscapeSegments $release.TagName}}{{else}}{{PathEscapeSegments $release.Sha1}}{{end}}{{end}}{{else}}{{if $.root.TreePath}}/{{PathEscapeSegments $.root.TreePath}}{{end}}{{end}}">
|
data-tag-url-suffix="{{if .tagURLSuffix}}{{.tagURLSuffix}}{{else if $release}}...{{if $release.IsDraft}}{{PathEscapeSegments $release.Target}}{{else}}{{if $release.TagName}}{{PathEscapeSegments $release.TagName}}{{else}}{{PathEscapeSegments $release.Sha1}}{{end}}{{end}}{{else}}{{if $.root.TreePath}}/{{PathEscapeSegments $.root.TreePath}}{{end}}{{end}}">
|
||||||
<button class="branch-dropdown-button ellipsis ui basic small compact button df" @click="menuVisible = !menuVisible" @keyup.enter="menuVisible = !menuVisible">
|
<button class="branch-dropdown-button gt-ellipsis ui basic small compact button gt-df" @click="menuVisible = !menuVisible" @keyup.enter="menuVisible = !menuVisible">
|
||||||
<span class="text df ac mr-2">
|
<span class="text gt-df gt-ac gt-mr-2">
|
||||||
{{if $release}}
|
{{if $release}}
|
||||||
{{.root.locale.Tr "repo.release.compare"}}
|
{{.root.locale.Tr "repo.release.compare"}}
|
||||||
{{else}}
|
{{else}}
|
||||||
<span :class="{visible: isViewTag}" v-if="isViewTag" {{if not (eq $type "tag")}}v-cloak{{end}}>{{svg "octicon-tag"}}</span>
|
<span :class="{visible: isViewTag}" v-if="isViewTag" {{if not (eq $type "tag")}}v-cloak{{end}}>{{svg "octicon-tag"}}</span>
|
||||||
<span :class="{visible: isViewBranch}" v-if="isViewBranch" {{if not (eq $type "branch")}}v-cloak{{end}}>{{svg "octicon-git-branch"}}</span>
|
<span :class="{visible: isViewBranch}" v-if="isViewBranch" {{if not (eq $type "branch")}}v-cloak{{end}}>{{svg "octicon-git-branch"}}</span>
|
||||||
<span :class="{visible: isViewTree}" v-if="isViewTree" {{if not (eq $type "tree")}}v-cloak{{end}}>{{svg "octicon-git-branch"}}</span>
|
<span :class="{visible: isViewTree}" v-if="isViewTree" {{if not (eq $type "tree")}}v-cloak{{end}}>{{svg "octicon-git-branch"}}</span>
|
||||||
<strong ref="dropdownRefName" class="ml-3">{{if and .root.IsViewTag (not .noTag)}}{{.root.TagName}}{{else if .root.IsViewBranch}}{{.root.BranchName}}{{else}}{{ShortSha .root.CommitID}}{{end}}</strong>
|
<strong ref="dropdownRefName" class="gt-ml-3">{{if and .root.IsViewTag (not .noTag)}}{{.root.TagName}}{{else if .root.IsViewBranch}}{{.root.BranchName}}{{else}}{{ShortSha .root.CommitID}}{{end}}</strong>
|
||||||
{{end}}
|
{{end}}
|
||||||
</span>
|
</span>
|
||||||
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
||||||
@ -45,7 +45,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="menu transition" :class="{visible: menuVisible}" v-if="menuVisible" v-cloak>
|
<div class="menu transition" :class="{visible: menuVisible}" v-if="menuVisible" v-cloak>
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc m-0">{{svg "octicon-filter" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc gt-m-0">{{svg "octicon-filter" 16}}</i>
|
||||||
<input name="search" ref="searchField" autocomplete="off" v-model="searchTerm" @keydown="keydown($event)" placeholder="{{if $.noTag}}{{.root.locale.Tr "repo.pulls.filter_branch"}}{{else if $showBranchesInDropdown}}{{.root.locale.Tr "repo.filter_branch_and_tag"}}{{else}}{{.root.locale.Tr "repo.find_tag"}}{{end}}...">
|
<input name="search" ref="searchField" autocomplete="off" v-model="searchTerm" @keydown="keydown($event)" placeholder="{{if $.noTag}}{{.root.locale.Tr "repo.pulls.filter_branch"}}{{else if $showBranchesInDropdown}}{{.root.locale.Tr "repo.filter_branch_and_tag"}}{{else}}{{.root.locale.Tr "repo.find_tag"}}{{end}}...">
|
||||||
</div>
|
</div>
|
||||||
{{if $showBranchesInDropdown}}
|
{{if $showBranchesInDropdown}}
|
||||||
@ -54,13 +54,13 @@
|
|||||||
<div class="two column row">
|
<div class="two column row">
|
||||||
<a class="reference column" href="#" @click="createTag = false; mode = 'branches'; focusSearchField()">
|
<a class="reference column" href="#" @click="createTag = false; mode = 'branches'; focusSearchField()">
|
||||||
<span class="text" :class="{black: mode == 'branches'}">
|
<span class="text" :class="{black: mode == 'branches'}">
|
||||||
{{svg "octicon-git-branch" 16 "mr-2"}}{{.root.locale.Tr "repo.branches"}}
|
{{svg "octicon-git-branch" 16 "gt-mr-2"}}{{.root.locale.Tr "repo.branches"}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
{{if not .noTag}}
|
{{if not .noTag}}
|
||||||
<a class="reference column" href="#" @click="createTag = true; mode = 'tags'; focusSearchField()">
|
<a class="reference column" href="#" @click="createTag = true; mode = 'tags'; focusSearchField()">
|
||||||
<span class="text" :class="{black: mode == 'tags'}">
|
<span class="text" :class="{black: mode == 'tags'}">
|
||||||
{{svg "octicon-tag" 16 "mr-2"}}{{.root.locale.Tr "repo.tags"}}
|
{{svg "octicon-tag" 16 "gt-mr-2"}}{{.root.locale.Tr "repo.tags"}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,15 +1,15 @@
|
|||||||
<!-- there is always at least one button (by context/repo.go) -->
|
<!-- there is always at least one button (by context/repo.go) -->
|
||||||
{{if $.CloneButtonShowHTTPS}}
|
{{if $.CloneButtonShowHTTPS}}
|
||||||
<button class="ui basic small compact clone button no-transition" id="repo-clone-https" data-link="{{$.CloneButtonOriginLink.HTTPS}}">
|
<button class="ui basic small compact clone button gt-no-transition" id="repo-clone-https" data-link="{{$.CloneButtonOriginLink.HTTPS}}">
|
||||||
{{if UseHTTPS}}HTTPS{{else}}HTTP{{end}}
|
{{if UseHTTPS}}HTTPS{{else}}HTTP{{end}}
|
||||||
</button>
|
</button>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if $.CloneButtonShowSSH}}
|
{{if $.CloneButtonShowSSH}}
|
||||||
<button class="ui basic small compact clone button no-transition" id="repo-clone-ssh" data-link="{{$.CloneButtonOriginLink.SSH}}">
|
<button class="ui basic small compact clone button gt-no-transition" id="repo-clone-ssh" data-link="{{$.CloneButtonOriginLink.SSH}}">
|
||||||
SSH
|
SSH
|
||||||
</button>
|
</button>
|
||||||
{{end}}
|
{{end}}
|
||||||
<input id="repo-clone-url" size="20" class="js-clone-url br-0" value="{{$.CloneButtonOriginLink.HTTPS}}" readonly>
|
<input id="repo-clone-url" size="20" class="js-clone-url gt-br-0" value="{{$.CloneButtonOriginLink.HTTPS}}" readonly>
|
||||||
<button class="ui basic small compact icon button tooltip" id="clipboard-btn" data-content="{{.locale.Tr "copy_url"}}" data-clipboard-target="#repo-clone-url" aria-label="{{.locale.Tr "copy_url"}}">
|
<button class="ui basic small compact icon button tooltip" id="clipboard-btn" data-content="{{.locale.Tr "copy_url"}}" data-clipboard-target="#repo-clone-url" aria-label="{{.locale.Tr "copy_url"}}">
|
||||||
{{svg "octicon-copy" 14}}
|
{{svg "octicon-copy" 14}}
|
||||||
</button>
|
</button>
|
||||||
|
@ -17,9 +17,9 @@
|
|||||||
{{$class = (printf "%s%s" $class " isWarning")}}
|
{{$class = (printf "%s%s" $class " isWarning")}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<div class="ui top attached header clearing segment pr commit-header {{$class}}">
|
<div class="ui top attached header clearing segment gt-pr commit-header {{$class}}">
|
||||||
<div class="df mb-4 fw">
|
<div class="gt-df gt-mb-4 gt-fw">
|
||||||
<h3 class="mb-0 f1"><span class="commit-summary" title="{{.Commit.Summary}}">{{RenderCommitMessage $.Context .Commit.Message $.RepoLink $.Repository.ComposeMetas}}</span>{{template "repo/commit_statuses" dict "Status" .CommitStatus "Statuses" .CommitStatuses "root" $}}</h3>
|
<h3 class="gt-mb-0 gt-f1"><span class="commit-summary" title="{{.Commit.Summary}}">{{RenderCommitMessage $.Context .Commit.Message $.RepoLink $.Repository.ComposeMetas}}</span>{{template "repo/commit_statuses" dict "Status" .CommitStatus "Statuses" .CommitStatuses "root" $}}</h3>
|
||||||
{{if not $.PageIsWiki}}
|
{{if not $.PageIsWiki}}
|
||||||
<div class="ui">
|
<div class="ui">
|
||||||
<a class="ui primary tiny button" href="{{.SourcePath}}">
|
<a class="ui primary tiny button" href="{{.SourcePath}}">
|
||||||
@ -134,41 +134,41 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
{{if IsMultilineCommitMessage .Commit.Message}}
|
{{if IsMultilineCommitMessage .Commit.Message}}
|
||||||
<pre class="commit-body mt-0">{{RenderCommitBody $.Context .Commit.Message $.RepoLink $.Repository.ComposeMetas}}</pre>
|
<pre class="commit-body gt-mt-0">{{RenderCommitBody $.Context .Commit.Message $.RepoLink $.Repository.ComposeMetas}}</pre>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if .BranchName}}
|
{{if .BranchName}}
|
||||||
<span class="text grey mr-3">{{svg "octicon-git-branch" 16 "mr-2"}}{{.BranchName}}</span>
|
<span class="text grey gt-mr-3">{{svg "octicon-git-branch" 16 "gt-mr-2"}}{{.BranchName}}</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if .TagName}}
|
{{if .TagName}}
|
||||||
<span class="text grey mr-3">{{svg "octicon-tag" 16 "mr-2"}}{{.TagName}}</span>
|
<span class="text grey gt-mr-3">{{svg "octicon-tag" 16 "gt-mr-2"}}{{.TagName}}</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="ui attached segment df ac sb py-2 commit-header-row fw {{$class}}">
|
<div class="ui attached segment gt-df gt-ac gt-sb gt-py-2 commit-header-row gt-fw {{$class}}">
|
||||||
<div class="df ac author">
|
<div class="gt-df gt-ac author">
|
||||||
{{if .Author}}
|
{{if .Author}}
|
||||||
{{avatar .Author 28 "mr-3"}}
|
{{avatar .Author 28 "gt-mr-3"}}
|
||||||
{{if .Author.FullName}}
|
{{if .Author.FullName}}
|
||||||
<a href="{{.Author.HomeLink}}"><strong>{{.Author.FullName}}</strong></a>
|
<a href="{{.Author.HomeLink}}"><strong>{{.Author.FullName}}</strong></a>
|
||||||
{{else}}
|
{{else}}
|
||||||
<a href="{{.Author.HomeLink}}"><strong>{{.Commit.Author.Name}}</strong></a>
|
<a href="{{.Author.HomeLink}}"><strong>{{.Commit.Author.Name}}</strong></a>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{avatarByEmail .Commit.Author.Email .Commit.Author.Email 28 "mr-3"}}
|
{{avatarByEmail .Commit.Author.Email .Commit.Author.Email 28 "gt-mr-3"}}
|
||||||
<strong>{{.Commit.Author.Name}}</strong>
|
<strong>{{.Commit.Author.Name}}</strong>
|
||||||
{{end}}
|
{{end}}
|
||||||
<span class="text grey ml-3" id="authored-time">{{TimeSince .Commit.Author.When $.locale}}</span>
|
<span class="text grey gt-ml-3" id="authored-time">{{TimeSince .Commit.Author.When $.locale}}</span>
|
||||||
{{if or (ne .Commit.Committer.Name .Commit.Author.Name) (ne .Commit.Committer.Email .Commit.Author.Email)}}
|
{{if or (ne .Commit.Committer.Name .Commit.Author.Name) (ne .Commit.Committer.Email .Commit.Author.Email)}}
|
||||||
<span class="text grey mx-3">{{.locale.Tr "repo.diff.committed_by"}}</span>
|
<span class="text grey gt-mx-3">{{.locale.Tr "repo.diff.committed_by"}}</span>
|
||||||
{{if ne .Verification.CommittingUser.ID 0}}
|
{{if ne .Verification.CommittingUser.ID 0}}
|
||||||
{{avatar .Verification.CommittingUser 28 "mx-3"}}
|
{{avatar .Verification.CommittingUser 28 "gt-mx-3"}}
|
||||||
<a href="{{.Verification.CommittingUser.HomeLink}}"><strong>{{.Commit.Committer.Name}}</strong></a>
|
<a href="{{.Verification.CommittingUser.HomeLink}}"><strong>{{.Commit.Committer.Name}}</strong></a>
|
||||||
{{else}}
|
{{else}}
|
||||||
{{avatarByEmail .Commit.Committer.Email .Commit.Committer.Name 28 "mr-3"}}
|
{{avatarByEmail .Commit.Committer.Email .Commit.Committer.Name 28 "gt-mr-3"}}
|
||||||
<strong>{{.Commit.Committer.Name}}</strong>
|
<strong>{{.Commit.Committer.Name}}</strong>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="ui horizontal list df ac">
|
<div class="ui horizontal list gt-df gt-ac">
|
||||||
{{if .Parents}}
|
{{if .Parents}}
|
||||||
<div class="item">
|
<div class="item">
|
||||||
<span>{{.locale.Tr "repo.diff.parent"}}</span>
|
<span>{{.locale.Tr "repo.diff.parent"}}</span>
|
||||||
@ -188,73 +188,73 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{if .Commit.Signature}}
|
{{if .Commit.Signature}}
|
||||||
<div class="ui bottom attached message tl df ac sb commit-header-row fw {{$class}}">
|
<div class="ui bottom attached message gt-tl gt-df gt-ac gt-sb commit-header-row gt-fw {{$class}}">
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
{{if .Verification.Verified}}
|
{{if .Verification.Verified}}
|
||||||
{{if ne .Verification.SigningUser.ID 0}}
|
{{if ne .Verification.SigningUser.ID 0}}
|
||||||
{{svg "gitea-lock" 16 "mr-3"}}
|
{{svg "gitea-lock" 16 "gt-mr-3"}}
|
||||||
{{if eq .Verification.TrustStatus "trusted"}}
|
{{if eq .Verification.TrustStatus "trusted"}}
|
||||||
<span class="ui text mr-3">{{.locale.Tr "repo.commits.signed_by"}}:</span>
|
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.signed_by"}}:</span>
|
||||||
{{else if eq .Verification.TrustStatus "untrusted"}}
|
{{else if eq .Verification.TrustStatus "untrusted"}}
|
||||||
<span class="ui text mr-3">{{.locale.Tr "repo.commits.signed_by_untrusted_user"}}:</span>
|
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.signed_by_untrusted_user"}}:</span>
|
||||||
{{else}}
|
{{else}}
|
||||||
<span class="ui text mr-3">{{.locale.Tr "repo.commits.signed_by_untrusted_user_unmatched"}}:</span>
|
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.signed_by_untrusted_user_unmatched"}}:</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{avatar .Verification.SigningUser 28 "mr-3"}}
|
{{avatar .Verification.SigningUser 28 "gt-mr-3"}}
|
||||||
<a href="{{.Verification.SigningUser.HomeLink}}"><strong>{{.Verification.SigningUser.GetDisplayName}}</strong></a>
|
<a href="{{.Verification.SigningUser.HomeLink}}"><strong>{{.Verification.SigningUser.GetDisplayName}}</strong></a>
|
||||||
{{else}}
|
{{else}}
|
||||||
<span title="{{.locale.Tr "gpg.default_key"}}">{{svg "gitea-lock-cog" 16 "mr-3"}}</span>
|
<span title="{{.locale.Tr "gpg.default_key"}}">{{svg "gitea-lock-cog" 16 "gt-mr-3"}}</span>
|
||||||
<span class="ui text mr-3">{{.locale.Tr "repo.commits.signed_by"}}:</span>
|
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.signed_by"}}:</span>
|
||||||
{{avatarByEmail .Verification.SigningEmail "" 28}}
|
{{avatarByEmail .Verification.SigningEmail "" 28}}
|
||||||
<strong>{{.Verification.SigningUser.GetDisplayName}}</strong>
|
<strong>{{.Verification.SigningUser.GetDisplayName}}</strong>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{svg "gitea-unlock" 16 "mr-3"}}
|
{{svg "gitea-unlock" 16 "gt-mr-3"}}
|
||||||
<span class="ui text">{{.locale.Tr .Verification.Reason}}</span>
|
<span class="ui text">{{.locale.Tr .Verification.Reason}}</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
{{if .Verification.Verified}}
|
{{if .Verification.Verified}}
|
||||||
{{if ne .Verification.SigningUser.ID 0}}
|
{{if ne .Verification.SigningUser.ID 0}}
|
||||||
{{svg "octicon-shield-check" 16 "mr-3"}}
|
{{svg "octicon-shield-check" 16 "gt-mr-3"}}
|
||||||
{{if .Verification.SigningSSHKey}}
|
{{if .Verification.SigningSSHKey}}
|
||||||
<span class="ui text mr-3">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
||||||
{{.Verification.SigningSSHKey.Fingerprint}}
|
{{.Verification.SigningSSHKey.Fingerprint}}
|
||||||
{{else}}
|
{{else}}
|
||||||
<span class="ui text mr-3">{{.locale.Tr "repo.commits.gpg_key_id"}}:</span>
|
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.gpg_key_id"}}:</span>
|
||||||
{{.Verification.SigningKey.PaddedKeyID}}
|
{{.Verification.SigningKey.PaddedKeyID}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{svg "octicon-shield-lock" 16 "mr-3"}}
|
{{svg "octicon-shield-lock" 16 "gt-mr-3"}}
|
||||||
{{if .Verification.SigningSSHKey}}
|
{{if .Verification.SigningSSHKey}}
|
||||||
<span class="ui text mr-3 tooltip" data-content="{{.locale.Tr "gpg.default_key"}}">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
<span class="ui text gt-mr-3 tooltip" data-content="{{.locale.Tr "gpg.default_key"}}">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
||||||
{{.Verification.SigningSSHKey.Fingerprint}}
|
{{.Verification.SigningSSHKey.Fingerprint}}
|
||||||
{{else}}
|
{{else}}
|
||||||
<span class="ui text mr-3 tooltip" data-content="{{.locale.Tr "gpg.default_key"}}">{{.locale.Tr "repo.commits.gpg_key_id"}}:</span>
|
<span class="ui text gt-mr-3 tooltip" data-content="{{.locale.Tr "gpg.default_key"}}">{{.locale.Tr "repo.commits.gpg_key_id"}}:</span>
|
||||||
{{.Verification.SigningKey.PaddedKeyID}}
|
{{.Verification.SigningKey.PaddedKeyID}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{else if .Verification.Warning}}
|
{{else if .Verification.Warning}}
|
||||||
{{svg "octicon-shield" 16 "mr-3"}}
|
{{svg "octicon-shield" 16 "gt-mr-3"}}
|
||||||
{{if .Verification.SigningSSHKey}}
|
{{if .Verification.SigningSSHKey}}
|
||||||
<span class="ui text mr-3">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
||||||
{{.Verification.SigningSSHKey.Fingerprint}}
|
{{.Verification.SigningSSHKey.Fingerprint}}
|
||||||
{{else}}
|
{{else}}
|
||||||
<span class="ui text mr-3">{{.locale.Tr "repo.commits.gpg_key_id"}}:</span>
|
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.gpg_key_id"}}:</span>
|
||||||
{{.Verification.SigningKey.PaddedKeyID}}
|
{{.Verification.SigningKey.PaddedKeyID}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{if .Verification.SigningKey}}
|
{{if .Verification.SigningKey}}
|
||||||
{{if ne .Verification.SigningKey.KeyID ""}}
|
{{if ne .Verification.SigningKey.KeyID ""}}
|
||||||
{{svg "octicon-shield" 16 "mr-3"}}
|
{{svg "octicon-shield" 16 "gt-mr-3"}}
|
||||||
<span class="ui text mr-3">{{.locale.Tr "repo.commits.gpg_key_id"}}:</span>
|
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.gpg_key_id"}}:</span>
|
||||||
{{.Verification.SigningKey.PaddedKeyID}}
|
{{.Verification.SigningKey.PaddedKeyID}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if .Verification.SigningSSHKey}}
|
{{if .Verification.SigningSSHKey}}
|
||||||
{{if ne .Verification.SigningSSHKey.Fingerprint ""}}
|
{{if ne .Verification.SigningSSHKey.Fingerprint ""}}
|
||||||
{{svg "octicon-shield" 16 "mr-3"}}
|
{{svg "octicon-shield" 16 "gt-mr-3"}}
|
||||||
<span class="ui text mr-3">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
<span class="ui text gt-mr-3">{{.locale.Tr "repo.commits.ssh_key_fingerprint"}}:</span>
|
||||||
{{.Verification.SigningSSHKey.Fingerprint}}
|
{{.Verification.SigningSSHKey.Fingerprint}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -264,7 +264,7 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
{{if .Note}}
|
{{if .Note}}
|
||||||
<div class="ui top attached header segment git-notes">
|
<div class="ui top attached header segment git-notes">
|
||||||
{{svg "octicon-note" 16 "mr-3"}}
|
{{svg "octicon-note" 16 "gt-mr-3"}}
|
||||||
{{.locale.Tr "repo.diff.git-notes"}}:
|
{{.locale.Tr "repo.diff.git-notes"}}:
|
||||||
{{if .NoteAuthor}}
|
{{if .NoteAuthor}}
|
||||||
<a href="{{.NoteAuthor.HomeLink}}">
|
<a href="{{.NoteAuthor.HomeLink}}">
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
{{if eq (len .Statuses) 1}}{{$status := index .Statuses 0}}{{if $status.TargetURL}}<a class="ui link commit-statuses-trigger vm" href="{{$status.TargetURL}}">{{template "repo/commit_status" .Status}}</a>{{end}}{{end}}
|
{{if eq (len .Statuses) 1}}{{$status := index .Statuses 0}}{{if $status.TargetURL}}<a class="ui link commit-statuses-trigger gt-vm" href="{{$status.TargetURL}}">{{template "repo/commit_status" .Status}}</a>{{end}}{{end}}
|
||||||
<div class="ui commit-statuses-popup commit-statuses tippy-target">
|
<div class="ui commit-statuses-popup commit-statuses tippy-target">
|
||||||
<div class="ui relaxed list divided">
|
<div class="ui relaxed list divided">
|
||||||
{{range .Statuses}}
|
{{range .Statuses}}
|
||||||
<div class="ui item singular-status df">
|
<div class="ui item singular-status gt-df">
|
||||||
{{template "repo/commit_status" .}}
|
{{template "repo/commit_status" .}}
|
||||||
<span class="ui ml-3 f1">{{.Context}} <span class="text grey">{{.Description}}</span></span>
|
<span class="ui gt-ml-3 gt-f1">{{.Context}} <span class="text grey">{{.Description}}</span></span>
|
||||||
{{if .TargetURL}}
|
{{if .TargetURL}}
|
||||||
<a class="ml-3" href="{{.TargetURL}}" target="_blank" rel="noopener noreferrer">{{$.root.locale.Tr "repo.pulls.status_checks_details"}}</a>
|
<a class="gt-ml-3" href="{{.TargetURL}}" target="_blank" rel="noopener noreferrer">{{$.root.locale.Tr "repo.pulls.status_checks_details"}}</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -3,8 +3,8 @@
|
|||||||
{{template "repo/header" .}}
|
{{template "repo/header" .}}
|
||||||
<div class="ui container">
|
<div class="ui container">
|
||||||
{{template "repo/sub_menu" .}}
|
{{template "repo/sub_menu" .}}
|
||||||
<div class="repo-button-row df ac sb fw mb-4 mt-3">
|
<div class="repo-button-row gt-df gt-ac gt-sb gt-fw gt-mb-4 gt-mt-3">
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
{{template "repo/branch_dropdown" dict "root" .}}
|
{{template "repo/branch_dropdown" dict "root" .}}
|
||||||
<a href="{{.RepoLink}}/graph" class="ui basic small compact button">
|
<a href="{{.RepoLink}}/graph" class="ui basic small compact button">
|
||||||
<span class="text">
|
<span class="text">
|
||||||
|
@ -18,14 +18,14 @@
|
|||||||
{{if .User.FullName}}
|
{{if .User.FullName}}
|
||||||
{{$userName = .User.FullName}}
|
{{$userName = .User.FullName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{avatar .User 28 "mr-2"}}<a href="{{.User.HomeLink}}">{{$userName}}</a>
|
{{avatar .User 28 "gt-mr-2"}}<a href="{{.User.HomeLink}}">{{$userName}}</a>
|
||||||
{{else}}
|
{{else}}
|
||||||
{{avatarByEmail .Author.Email .Author.Name 28 "mr-2"}}
|
{{avatarByEmail .Author.Email .Author.Name 28 "gt-mr-2"}}
|
||||||
{{$userName}}
|
{{$userName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</td>
|
</td>
|
||||||
<td class="sha df">
|
<td class="sha gt-df">
|
||||||
<button class="ui button copy-commit-sha df ac" data-clipboard-text="{{.ID}}">{{svg "octicon-copy" 14}}</button>
|
<button class="ui button copy-commit-sha gt-df gt-ac" data-clipboard-text="{{.ID}}">{{svg "octicon-copy" 14}}</button>
|
||||||
{{$class := "ui sha label"}}
|
{{$class := "ui sha label"}}
|
||||||
{{if .Signature}}
|
{{if .Signature}}
|
||||||
{{$class = (printf "%s%s" $class " isSigned")}}
|
{{$class = (printf "%s%s" $class " isSigned")}}
|
||||||
|
@ -47,7 +47,7 @@
|
|||||||
</span>
|
</span>
|
||||||
|
|
||||||
{{$commitLink:= printf "%s/commit/%s" $.comment.Issue.PullRequest.BaseRepo.Link (PathEscape .ID.String)}}
|
{{$commitLink:= printf "%s/commit/%s" $.comment.Issue.PullRequest.BaseRepo.Link (PathEscape .ID.String)}}
|
||||||
<span class="mono commit-summary {{if gt .ParentCount 1}} grey text{{end}}" title="{{.Summary}}">{{RenderCommitMessageLinkSubject $.root.Context .Message ($.comment.Issue.PullRequest.BaseRepo.Link|Escape) $commitLink $.comment.Issue.PullRequest.BaseRepo.ComposeMetas}}</span>
|
<span class="gt-mono commit-summary {{if gt .ParentCount 1}} grey text{{end}}" title="{{.Summary}}">{{RenderCommitMessageLinkSubject $.root.Context .Message ($.comment.Issue.PullRequest.BaseRepo.Link|Escape) $commitLink $.comment.Issue.PullRequest.BaseRepo.ComposeMetas}}</span>
|
||||||
{{if IsMultilineCommitMessage .Message}}
|
{{if IsMultilineCommitMessage .Message}}
|
||||||
<button class="ui button ellipsis-button" aria-expanded="false">...</button>
|
<button class="ui button ellipsis-button" aria-expanded="false">...</button>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<h4 class="ui top attached header commits-table df ac sb">
|
<h4 class="ui top attached header commits-table gt-df gt-ac gt-sb">
|
||||||
<div class="commits-table-left df ac">
|
<div class="commits-table-left gt-df gt-ac">
|
||||||
{{if or .PageIsCommits (gt .CommitCount 0)}}
|
{{if or .PageIsCommits (gt .CommitCount 0)}}
|
||||||
{{.CommitCount}} {{.locale.Tr "repo.commits.commits"}} {{if .RefName}}({{.RefName}}){{end}}
|
{{.CommitCount}} {{.locale.Tr "repo.commits.commits"}} {{if .RefName}}({{.RefName}}){{end}}
|
||||||
{{else if .IsNothingToCompare}}
|
{{else if .IsNothingToCompare}}
|
||||||
@ -8,7 +8,7 @@
|
|||||||
{{.locale.Tr "repo.commits.no_commits" $.BaseBranch $.HeadBranch}} {{if .RefName}}({{.RefName}}){{end}}
|
{{.locale.Tr "repo.commits.no_commits" $.BaseBranch $.HeadBranch}} {{if .RefName}}({{.RefName}}){{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="commits-table-right df ac">
|
<div class="commits-table-right gt-df gt-ac">
|
||||||
{{if .PageIsCommits}}
|
{{if .PageIsCommits}}
|
||||||
<form class="ignore-dirty" action="{{.RepoLink}}/commits/{{.BranchNameSubURL}}/search">
|
<form class="ignore-dirty" action="{{.RepoLink}}/commits/{{.BranchNameSubURL}}/search">
|
||||||
<div class="ui tiny search input">
|
<div class="ui tiny search input">
|
||||||
@ -19,7 +19,7 @@
|
|||||||
<input type="checkbox" name="all" id="all" value="true" {{.All}}>
|
<input type="checkbox" name="all" id="all" value="true" {{.All}}>
|
||||||
<label for="all">{{.locale.Tr "repo.commits.search_all"}} </label>
|
<label for="all">{{.locale.Tr "repo.commits.search_all"}} </label>
|
||||||
</div>
|
</div>
|
||||||
<button class="ui primary tiny button mr-0 tooltip" data-panel="#add-deploy-key-panel" data-content={{.locale.Tr "repo.commits.search.tooltip"}}>{{.locale.Tr "repo.commits.find"}}</button>
|
<button class="ui primary tiny button gt-mr-0 tooltip" data-panel="#add-deploy-key-panel" data-content={{.locale.Tr "repo.commits.search.tooltip"}}>{{.locale.Tr "repo.commits.find"}}</button>
|
||||||
</form>
|
</form>
|
||||||
{{else if .IsDiffCompare}}
|
{{else if .IsDiffCompare}}
|
||||||
<a href="{{$.CommitRepoLink}}/commit/{{.BeforeCommitID | PathEscape}}" class="ui green sha label">{{if not .BaseIsCommit}}{{if .BaseIsBranch}}{{svg "octicon-git-branch"}}{{else if .BaseIsTag}}{{svg "octicon-tag"}}{{end}}{{.BaseBranch}}{{else}}{{ShortSha .BaseBranch}}{{end}}</a>
|
<a href="{{$.CommitRepoLink}}/commit/{{.BeforeCommitID | PathEscape}}" class="ui green sha label">{{if not .BaseIsCommit}}{{if .BaseIsBranch}}{{svg "octicon-git-branch"}}{{else if .BaseIsTag}}{{svg "octicon-tag"}}{{end}}{{.BaseBranch}}{{else}}{{ShortSha .BaseBranch}}{{end}}</a>
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
{{$inlineDiff := $.section.GetComputedInlineDiffFor $line $.locale}}
|
{{$inlineDiff := $.section.GetComputedInlineDiffFor $line $.locale}}
|
||||||
<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$.FileNameHash}}L{{$line.LeftIdx}}{{end}}"></span></td>
|
<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$.FileNameHash}}L{{$line.LeftIdx}}{{end}}"></span></td>
|
||||||
<td class="blob-excerpt lines-escape lines-escape-old">{{if and $line.LeftIdx $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.locale}}"></a>{{end}}</td>
|
<td class="blob-excerpt lines-escape lines-escape-old">{{if and $line.LeftIdx $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.locale}}"></a>{{end}}</td>
|
||||||
<td class="blob-excerpt lines-type-marker lines-type-marker-old">{{if $line.LeftIdx}}<span class="mono" data-type-marker=""></span>{{end}}</td>
|
<td class="blob-excerpt lines-type-marker lines-type-marker-old">{{if $line.LeftIdx}}<span class="gt-mono" data-type-marker=""></span>{{end}}</td>
|
||||||
<td class="blob-excerpt lines-code lines-code-old halfwidth">{{/*
|
<td class="blob-excerpt lines-code lines-code-old halfwidth">{{/*
|
||||||
*/}}{{if $line.LeftIdx}}{{template "repo/diff/section_code" dict "diff" $inlineDiff "locale" $.locale}}{{else}}{{/*
|
*/}}{{if $line.LeftIdx}}{{template "repo/diff/section_code" dict "diff" $inlineDiff "locale" $.locale}}{{else}}{{/*
|
||||||
*/}}<code class="code-inner"></code>{{/*
|
*/}}<code class="code-inner"></code>{{/*
|
||||||
@ -33,7 +33,7 @@
|
|||||||
*/}}</td>
|
*/}}</td>
|
||||||
<td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$.FileNameHash}}R{{$line.RightIdx}}{{end}}"></span></td>
|
<td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$.FileNameHash}}R{{$line.RightIdx}}{{end}}"></span></td>
|
||||||
<td class="blob-excerpt lines-escape lines-escape-new">{{if and $line.RightIdx $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.locale}}"></a>{{end}}</td>
|
<td class="blob-excerpt lines-escape lines-escape-new">{{if and $line.RightIdx $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.locale}}"></a>{{end}}</td>
|
||||||
<td class="blob-excerpt lines-type-marker lines-type-marker-new">{{if $line.RightIdx}}<span class="mono" data-type-marker=""></span>{{end}}</td>
|
<td class="blob-excerpt lines-type-marker lines-type-marker-new">{{if $line.RightIdx}}<span class="gt-mono" data-type-marker=""></span>{{end}}</td>
|
||||||
<td class="blob-excerpt lines-code lines-code-new halfwidth">{{/*
|
<td class="blob-excerpt lines-code lines-code-new halfwidth">{{/*
|
||||||
*/}}{{if $line.RightIdx}}{{template "repo/diff/section_code" dict "diff" $inlineDiff "locale" $.locale}}{{else}}{{/*
|
*/}}{{if $line.RightIdx}}{{template "repo/diff/section_code" dict "diff" $inlineDiff "locale" $.locale}}{{else}}{{/*
|
||||||
*/}}<code class="code-inner"></code>{{/*
|
*/}}<code class="code-inner"></code>{{/*
|
||||||
@ -69,7 +69,7 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
{{$inlineDiff := $.section.GetComputedInlineDiffFor $line $.locale}}
|
{{$inlineDiff := $.section.GetComputedInlineDiffFor $line $.locale}}
|
||||||
<td class="blob-excerpt lines-escape">{{if $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.locale}}"></a>{{end}}</td>
|
<td class="blob-excerpt lines-escape">{{if $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.locale}}"></a>{{end}}</td>
|
||||||
<td class="blob-excerpt lines-type-marker"><span class="mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td>
|
<td class="blob-excerpt lines-type-marker"><span class="gt-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td>
|
||||||
<td class="blob-excerpt lines-code{{if (not $line.RightIdx)}} lines-code-old{{end}}"><code {{if $inlineDiff.EscapeStatus.Escaped}}class="code-inner has-escaped" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.locale}}"{{else}}class="code-inner"{{end}}>{{$inlineDiff.Content}}</code></td>
|
<td class="blob-excerpt lines-code{{if (not $line.RightIdx)}} lines-code-old{{end}}"><code {{if $inlineDiff.EscapeStatus.Escaped}}class="code-inner has-escaped" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.locale}}"{{else}}class="code-inner"{{end}}>{{$inlineDiff.Content}}</code></td>
|
||||||
</tr>
|
</tr>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -13,21 +13,21 @@
|
|||||||
<h4>{{.locale.Tr "repo.diff.data_not_available"}}</h4>
|
<h4>{{.locale.Tr "repo.diff.data_not_available"}}</h4>
|
||||||
{{else}}
|
{{else}}
|
||||||
<div>
|
<div>
|
||||||
<div class="diff-detail-box diff-box sticky df sb ac fw">
|
<div class="diff-detail-box diff-box sticky gt-df gt-sb gt-ac gt-fw">
|
||||||
<div class="df ac fw">
|
<div class="gt-df gt-ac gt-fw">
|
||||||
<a class="diff-toggle-file-tree-button muted df ac">
|
<a class="diff-toggle-file-tree-button muted gt-df gt-ac">
|
||||||
{{/* the icon meaning is reversed here, "octicon-sidebar-collapse" means show the file tree */}}
|
{{/* the icon meaning is reversed here, "octicon-sidebar-collapse" means show the file tree */}}
|
||||||
{{svg "octicon-sidebar-collapse" 20 "icon hide"}}
|
{{svg "octicon-sidebar-collapse" 20 "icon hide"}}
|
||||||
{{svg "octicon-sidebar-expand" 20 "icon"}}
|
{{svg "octicon-sidebar-expand" 20 "icon"}}
|
||||||
</a>
|
</a>
|
||||||
<div class="diff-detail-stats df ac ml-3">
|
<div class="diff-detail-stats gt-df gt-ac gt-ml-3">
|
||||||
{{svg "octicon-diff" 16 "mr-2"}}{{.locale.Tr "repo.diff.stats_desc" .Diff.NumFiles .Diff.TotalAddition .Diff.TotalDeletion | Str2html}}
|
{{svg "octicon-diff" 16 "gt-mr-2"}}{{.locale.Tr "repo.diff.stats_desc" .Diff.NumFiles .Diff.TotalAddition .Diff.TotalDeletion | Str2html}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="diff-detail-actions df ac">
|
<div class="diff-detail-actions gt-df gt-ac">
|
||||||
{{if and .PageIsPullFiles $.SignedUserID (not .IsArchived)}}
|
{{if and .PageIsPullFiles $.SignedUserID (not .IsArchived)}}
|
||||||
<progress id="viewed-files-summary" class="mr-2" value="{{.Diff.NumViewedFiles}}" max="{{.Diff.NumFiles}}"></progress>
|
<progress id="viewed-files-summary" class="gt-mr-2" value="{{.Diff.NumViewedFiles}}" max="{{.Diff.NumFiles}}"></progress>
|
||||||
<label for="viewed-files-summary" id="viewed-files-summary-label" class="mr-3" data-text-changed-template="{{.locale.Tr "repo.pulls.viewed_files_label"}}">
|
<label for="viewed-files-summary" id="viewed-files-summary-label" class="gt-mr-3" data-text-changed-template="{{.locale.Tr "repo.pulls.viewed_files_label"}}">
|
||||||
{{.locale.Tr "repo.pulls.viewed_files_label" .Diff.NumViewedFiles .Diff.NumFiles}}
|
{{.locale.Tr "repo.pulls.viewed_files_label" .Diff.NumViewedFiles .Diff.NumFiles}}
|
||||||
</label>
|
</label>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -77,34 +77,34 @@
|
|||||||
{{$isCsv := (call $.IsCsvFile $file)}}
|
{{$isCsv := (call $.IsCsvFile $file)}}
|
||||||
{{$showFileViewToggle := or $isImage (and (not $file.IsIncomplete) $isCsv)}}
|
{{$showFileViewToggle := or $isImage (and (not $file.IsIncomplete) $isCsv)}}
|
||||||
{{$isExpandable := or (gt $file.Addition 0) (gt $file.Deletion 0) $file.IsBin}}
|
{{$isExpandable := or (gt $file.Addition 0) (gt $file.Deletion 0) $file.IsBin}}
|
||||||
<div class="diff-file-box diff-box file-content {{TabSizeClass $.Editorconfig $file.Name}} mt-3" id="diff-{{$file.NameHash}}" data-old-filename="{{$file.OldName}}" data-new-filename="{{$file.Name}}" {{if or ($file.ShouldBeHidden) (not $isExpandable)}}data-folded="true"{{end}}>
|
<div class="diff-file-box diff-box file-content {{TabSizeClass $.Editorconfig $file.Name}} gt-mt-3" id="diff-{{$file.NameHash}}" data-old-filename="{{$file.OldName}}" data-new-filename="{{$file.Name}}" {{if or ($file.ShouldBeHidden) (not $isExpandable)}}data-folded="true"{{end}}>
|
||||||
<h4 class="diff-file-header sticky-2nd-row ui top attached normal header df ac sb">
|
<h4 class="diff-file-header sticky-2nd-row ui top attached normal header gt-df gt-ac gt-sb">
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
<a role="button" class="fold-file muted mr-2" {{if not $isExpandable}}style="visibility: hidden"{{end}}>
|
<a role="button" class="fold-file muted gt-mr-2" {{if not $isExpandable}}style="visibility: hidden"{{end}}>
|
||||||
{{if $file.ShouldBeHidden}}
|
{{if $file.ShouldBeHidden}}
|
||||||
{{svg "octicon-chevron-right" 18}}
|
{{svg "octicon-chevron-right" 18}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{svg "octicon-chevron-down" 18}}
|
{{svg "octicon-chevron-down" 18}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</a>
|
</a>
|
||||||
<div class="bold df ac mono">
|
<div class="gt-bold gt-df gt-ac gt-mono">
|
||||||
{{if $file.IsBin}}
|
{{if $file.IsBin}}
|
||||||
<span class="ml-1 mr-3">
|
<span class="gt-ml-1 gt-mr-3">
|
||||||
{{$.locale.Tr "repo.diff.bin"}}
|
{{$.locale.Tr "repo.diff.bin"}}
|
||||||
</span>
|
</span>
|
||||||
{{else}}
|
{{else}}
|
||||||
{{template "repo/diff/stats" dict "file" . "root" $}}
|
{{template "repo/diff/stats" dict "file" . "root" $}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<span class="file mono"><a class="muted" href="#diff-{{$file.NameHash}}">{{if $file.IsRenamed}}{{$file.OldName}} → {{end}}{{$file.Name}}</a>{{if .IsLFSFile}} ({{$.locale.Tr "repo.stored_lfs"}}){{end}}</span>
|
<span class="file gt-mono"><a class="muted" href="#diff-{{$file.NameHash}}">{{if $file.IsRenamed}}{{$file.OldName}} → {{end}}{{$file.Name}}</a>{{if .IsLFSFile}} ({{$.locale.Tr "repo.stored_lfs"}}){{end}}</span>
|
||||||
{{if $file.IsGenerated}}
|
{{if $file.IsGenerated}}
|
||||||
<span class="ui label ml-3">{{$.locale.Tr "repo.diff.generated"}}</span>
|
<span class="ui label gt-ml-3">{{$.locale.Tr "repo.diff.generated"}}</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if $file.IsVendored}}
|
{{if $file.IsVendored}}
|
||||||
<span class="ui label ml-3">{{$.locale.Tr "repo.diff.vendored"}}</span>
|
<span class="ui label gt-ml-3">{{$.locale.Tr "repo.diff.vendored"}}</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="diff-file-header-actions df ac">
|
<div class="diff-file-header-actions gt-df gt-ac">
|
||||||
{{if $showFileViewToggle}}
|
{{if $showFileViewToggle}}
|
||||||
<div class="ui compact icon buttons">
|
<div class="ui compact icon buttons">
|
||||||
<span class="ui tiny basic button tooltip file-view-toggle" data-toggle-selector="#diff-source-{{$file.NameHash}}" data-content="{{$.locale.Tr "repo.file_view_source"}}" data-position="bottom center">{{svg "octicon-code"}}</span>
|
<span class="ui tiny basic button tooltip file-view-toggle" data-toggle-selector="#diff-source-{{$file.NameHash}}" data-content="{{$.locale.Tr "repo.file_view_source"}}" data-position="bottom center">{{svg "octicon-code"}}</span>
|
||||||
@ -162,7 +162,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{if $showFileViewToggle}}
|
{{if $showFileViewToggle}}
|
||||||
<div id="diff-rendered-{{$file.NameHash}}" class="file-body file-code {{if $.IsSplitStyle}} code-diff-split{{else}} code-diff-unified{{end}}">
|
<div id="diff-rendered-{{$file.NameHash}}" class="file-body file-code {{if $.IsSplitStyle}} code-diff-split{{else}} code-diff-unified{{end}}">
|
||||||
<table class="chroma w-100">
|
<table class="chroma gt-w-100">
|
||||||
{{if $isImage}}
|
{{if $isImage}}
|
||||||
{{template "repo/diff/image_diff" dict "file" . "root" $ "blobBase" $blobBase "blobHead" $blobHead}}
|
{{template "repo/diff/image_diff" dict "file" . "root" $ "blobBase" $blobBase "blobHead" $blobHead}}
|
||||||
{{else}}
|
{{else}}
|
||||||
@ -176,8 +176,8 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
|
|
||||||
{{if .Diff.IsIncomplete}}
|
{{if .Diff.IsIncomplete}}
|
||||||
<div class="diff-file-box diff-box file-content mt-3" id="diff-incomplete">
|
<div class="diff-file-box diff-box file-content gt-mt-3" id="diff-incomplete">
|
||||||
<h4 class="ui top attached normal header df ac sb">
|
<h4 class="ui top attached normal header gt-df gt-ac gt-sb">
|
||||||
{{$.locale.Tr "repo.diff.too_many_files"}}
|
{{$.locale.Tr "repo.diff.too_many_files"}}
|
||||||
<a class="ui basic tiny button" id="diff-show-more-files" data-href="{{$.Link}}?skip-to={{.Diff.End}}&file-only=true">{{.locale.Tr "repo.diff.show_more"}}</a>
|
<a class="ui basic tiny button" id="diff-show-more-files" data-href="{{$.Link}}?skip-to={{.Diff.End}}&file-only=true">{{.locale.Tr "repo.diff.show_more"}}</a>
|
||||||
</h4>
|
</h4>
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
{{.locale.Tr "loading"}}
|
{{.locale.Tr "loading"}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="field footer mx-3">
|
<div class="field footer gt-mx-3">
|
||||||
<span class="markup-info">{{svg "octicon-markup"}} {{$.root.locale.Tr "repo.diff.comment.markdown_info"}}</span>
|
<span class="markup-info">{{svg "octicon-markup"}} {{$.root.locale.Tr "repo.diff.comment.markdown_info"}}</span>
|
||||||
<div class="ui right">
|
<div class="ui right">
|
||||||
{{if $.reply}}
|
{{if $.reply}}
|
||||||
|
@ -8,10 +8,10 @@
|
|||||||
{{template "shared/user/avatarlink" .Poster}}
|
{{template "shared/user/avatarlink" .Poster}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<div class="content comment-container">
|
<div class="content comment-container">
|
||||||
<div class="ui top attached header comment-header df ac sb">
|
<div class="ui top attached header comment-header gt-df gt-ac gt-sb">
|
||||||
<div class="comment-header-left df ac">
|
<div class="comment-header-left gt-df gt-ac">
|
||||||
{{if .OriginalAuthor}}
|
{{if .OriginalAuthor}}
|
||||||
<span class="text black bold mr-2">
|
<span class="text black gt-bold gt-mr-2">
|
||||||
{{svg (MigrationIcon $.root.Repository.GetOriginalURLHostname)}}
|
{{svg (MigrationIcon $.root.Repository.GetOriginalURLHostname)}}
|
||||||
{{.OriginalAuthor}}
|
{{.OriginalAuthor}}
|
||||||
</span>
|
</span>
|
||||||
@ -30,7 +30,7 @@
|
|||||||
</span>
|
</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="comment-header-right actions df ac">
|
<div class="comment-header-right actions gt-df gt-ac">
|
||||||
{{if and .Review}}
|
{{if and .Review}}
|
||||||
{{if eq .Review.Type 0}}
|
{{if eq .Review.Type 0}}
|
||||||
<div class="ui label basic small yellow pending-label tooltip" data-content="{{$.root.locale.Tr "repo.issues.review.pending.tooltip" ($.root.locale.Tr "repo.diff.review") ($.root.locale.Tr "repo.diff.review.approve") ($.root.locale.Tr "repo.diff.review.comment") ($.root.locale.Tr "repo.diff.review.reject")}}">
|
<div class="ui label basic small yellow pending-label tooltip" data-content="{{$.root.locale.Tr "repo.issues.review.pending.tooltip" ($.root.locale.Tr "repo.diff.review") ($.root.locale.Tr "repo.diff.review.approve") ($.root.locale.Tr "repo.diff.review.comment") ($.root.locale.Tr "repo.diff.review.reject")}}">
|
||||||
|
@ -49,7 +49,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc m-0">{{svg "octicon-filter" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc gt-m-0">{{svg "octicon-filter" 16}}</i>
|
||||||
<input name="search" placeholder="{{.locale.Tr "repo.filter_branch_and_tag"}}...">
|
<input name="search" placeholder="{{.locale.Tr "repo.filter_branch_and_tag"}}...">
|
||||||
</div>
|
</div>
|
||||||
<div class="header">
|
<div class="header">
|
||||||
@ -57,12 +57,12 @@
|
|||||||
<div class="two column row">
|
<div class="two column row">
|
||||||
<a class="reference column" href="#" data-target=".base-branch-list">
|
<a class="reference column" href="#" data-target=".base-branch-list">
|
||||||
<span class="text black">
|
<span class="text black">
|
||||||
{{svg "octicon-git-branch" 16 "mr-2"}}{{.locale.Tr "repo.branches"}}
|
{{svg "octicon-git-branch" 16 "gt-mr-2"}}{{.locale.Tr "repo.branches"}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
<a class="reference column" href="#" data-target=".base-tag-list">
|
<a class="reference column" href="#" data-target=".base-tag-list">
|
||||||
<span class="text black">
|
<span class="text black">
|
||||||
{{svg "octicon-tag" 16 "mr-2"}}{{.locale.Tr "repo.tags"}}
|
{{svg "octicon-tag" 16 "gt-mr-2"}}{{.locale.Tr "repo.tags"}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
@ -118,7 +118,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc m-0">{{svg "octicon-filter" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc gt-m-0">{{svg "octicon-filter" 16}}</i>
|
||||||
<input name="search" placeholder="{{.locale.Tr "repo.filter_branch_and_tag"}}...">
|
<input name="search" placeholder="{{.locale.Tr "repo.filter_branch_and_tag"}}...">
|
||||||
</div>
|
</div>
|
||||||
<div class="header">
|
<div class="header">
|
||||||
@ -126,12 +126,12 @@
|
|||||||
<div class="two column row">
|
<div class="two column row">
|
||||||
<a class="reference column" href="#" data-target=".head-branch-list">
|
<a class="reference column" href="#" data-target=".head-branch-list">
|
||||||
<span class="text black">
|
<span class="text black">
|
||||||
{{svg "octicon-git-branch" 16 "mr-2"}}{{.locale.Tr "repo.branches"}}
|
{{svg "octicon-git-branch" 16 "gt-mr-2"}}{{.locale.Tr "repo.branches"}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
<a class="reference column" href="#" data-target=".head-tag-list">
|
<a class="reference column" href="#" data-target=".head-tag-list">
|
||||||
<span class="text black">
|
<span class="text black">
|
||||||
{{svg "octicon-tag" 16 "mr-2"}}{{.locale.Tr "repo.tags"}}
|
{{svg "octicon-tag" 16 "gt-mr-2"}}{{.locale.Tr "repo.tags"}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -3,18 +3,18 @@
|
|||||||
{{$isNotPending := (not (eq (index .comments 0).Review.Type 0))}}
|
{{$isNotPending := (not (eq (index .comments 0).Review.Type 0))}}
|
||||||
<div class="conversation-holder" data-path="{{(index .comments 0).TreePath}}" data-side="{{if lt (index .comments 0).Line 0}}left{{else}}right{{end}}" data-idx="{{(index .comments 0).UnsignedLine}}">
|
<div class="conversation-holder" data-path="{{(index .comments 0).TreePath}}" data-side="{{if lt (index .comments 0).Line 0}}left{{else}}right{{end}}" data-idx="{{(index .comments 0).UnsignedLine}}">
|
||||||
{{if $resolved}}
|
{{if $resolved}}
|
||||||
<div class="ui attached header resolved-placeholder df ac sb">
|
<div class="ui attached header resolved-placeholder gt-df gt-ac gt-sb">
|
||||||
<div class="ui grey text">
|
<div class="ui grey text">
|
||||||
{{svg "octicon-check" 16 "icon mr-2"}}
|
{{svg "octicon-check" 16 "icon gt-mr-2"}}
|
||||||
<b>{{$resolveDoer.Name}}</b> {{$.locale.Tr "repo.issues.review.resolved_by"}}
|
<b>{{$resolveDoer.Name}}</b> {{$.locale.Tr "repo.issues.review.resolved_by"}}
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<button id="show-outdated-{{(index .comments 0).ID}}" data-comment="{{(index .comments 0).ID}}" class="ui tiny right labeled button show-outdated df ac">
|
<button id="show-outdated-{{(index .comments 0).ID}}" data-comment="{{(index .comments 0).ID}}" class="ui tiny right labeled button show-outdated gt-df gt-ac">
|
||||||
{{svg "octicon-unfold" 16 "mr-3"}}
|
{{svg "octicon-unfold" 16 "gt-mr-3"}}
|
||||||
{{$.locale.Tr "repo.issues.review.show_resolved"}}
|
{{$.locale.Tr "repo.issues.review.show_resolved"}}
|
||||||
</button>
|
</button>
|
||||||
<button id="hide-outdated-{{(index .comments 0).ID}}" data-comment="{{(index .comments 0).ID}}" class="hide ui tiny right labeled button hide-outdated df ac">
|
<button id="hide-outdated-{{(index .comments 0).ID}}" data-comment="{{(index .comments 0).ID}}" class="hide ui tiny right labeled button hide-outdated gt-df gt-ac">
|
||||||
{{svg "octicon-fold" 16 "mr-3"}}
|
{{svg "octicon-fold" 16 "gt-mr-3"}}
|
||||||
{{$.locale.Tr "repo.issues.review.hide_resolved"}}
|
{{$.locale.Tr "repo.issues.review.hide_resolved"}}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
@ -26,8 +26,8 @@
|
|||||||
{{template "repo/diff/comments" dict "root" $ "comments" .comments}}
|
{{template "repo/diff/comments" dict "root" $ "comments" .comments}}
|
||||||
</ui>
|
</ui>
|
||||||
</div>
|
</div>
|
||||||
<div class="df je js-small ac fw mt-3">
|
<div class="gt-df gt-je gt-js-small gt-ac gt-fw gt-mt-3">
|
||||||
<div class="ui buttons mr-2">
|
<div class="ui buttons gt-mr-2">
|
||||||
<button class="ui icon tiny basic button previous-conversation">
|
<button class="ui icon tiny basic button previous-conversation">
|
||||||
{{svg "octicon-arrow-up" 12 "icon"}} {{$.locale.Tr "repo.issues.previous"}}
|
{{svg "octicon-arrow-up" 12 "icon"}} {{$.locale.Tr "repo.issues.previous"}}
|
||||||
</button>
|
</button>
|
||||||
@ -45,8 +45,8 @@
|
|||||||
</button>
|
</button>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if and $.SignedUserID (not $.Repository.IsArchived)}}
|
{{if and $.SignedUserID (not $.Repository.IsArchived)}}
|
||||||
<button class="comment-form-reply ui green tiny labeled icon button ml-2 mr-0">
|
<button class="comment-form-reply ui green tiny labeled icon button gt-ml-2 gt-mr-0">
|
||||||
{{svg "octicon-reply" 16 "reply icon mr-2"}}{{$.locale.Tr "repo.diff.comment.reply"}}
|
{{svg "octicon-reply" 16 "reply icon gt-mr-2"}}{{$.locale.Tr "repo.diff.comment.reply"}}
|
||||||
</button>
|
</button>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
|
@ -74,7 +74,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="ui active centered inline loader mb-4"></div>
|
<div class="ui active centered inline loader gt-mb-4"></div>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<div class="ui top right pointing dropdown custom" id="review-box">
|
<div class="ui top right pointing dropdown custom" id="review-box">
|
||||||
<div class="ui tiny green button btn-review ml-2 mr-0">
|
<div class="ui tiny green button btn-review gt-ml-2 gt-mr-0">
|
||||||
{{.locale.Tr "repo.diff.review"}}
|
{{.locale.Tr "repo.diff.review"}}
|
||||||
<span class="ui small label review-comments-counter" data-pending-comment-number="{{.PendingCodeCommentNumber}}">{{.PendingCodeCommentNumber}}</span>
|
<span class="ui small label review-comments-counter" data-pending-comment-number="{{.PendingCodeCommentNumber}}">{{.PendingCodeCommentNumber}}</span>
|
||||||
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
||||||
@ -9,9 +9,9 @@
|
|||||||
<form class="ui form" action="{{.Link}}/reviews/submit" method="post">
|
<form class="ui form" action="{{.Link}}/reviews/submit" method="post">
|
||||||
{{.CsrfTokenHtml}}
|
{{.CsrfTokenHtml}}
|
||||||
<input type="hidden" name="commit_id" value="{{.AfterCommitID}}"/>
|
<input type="hidden" name="commit_id" value="{{.AfterCommitID}}"/>
|
||||||
<div class="header df ac pb-3">
|
<div class="header gt-df gt-ac gt-pb-3">
|
||||||
<div class="f1">{{$.locale.Tr "repo.diff.review.header"}}</div>
|
<div class="gt-f1">{{$.locale.Tr "repo.diff.review.header"}}</div>
|
||||||
<a class="muted close px-3">{{svg "octicon-x" 16}}</a>
|
<a class="muted close gt-px-3">{{svg "octicon-x" 16}}</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="ui field">
|
<div class="ui field">
|
||||||
<textarea name="content" tabindex="0" rows="2" placeholder="{{$.locale.Tr "repo.diff.review.placeholder"}}"></textarea>
|
<textarea name="content" tabindex="0" rows="2" placeholder="{{$.locale.Tr "repo.diff.review.placeholder"}}"></textarea>
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
{{- $rightDiff := ""}}{{if $match.RightIdx}}{{$rightDiff = $section.GetComputedInlineDiffFor $match $.root.locale}}{{end}}
|
{{- $rightDiff := ""}}{{if $match.RightIdx}}{{$rightDiff = $section.GetComputedInlineDiffFor $match $.root.locale}}{{end}}
|
||||||
<td class="lines-num lines-num-old del-code" data-line-num="{{$line.LeftIdx}}"><span rel="diff-{{$file.NameHash}}L{{$line.LeftIdx}}"></span></td>
|
<td class="lines-num lines-num-old del-code" data-line-num="{{$line.LeftIdx}}"><span rel="diff-{{$file.NameHash}}L{{$line.LeftIdx}}"></span></td>
|
||||||
<td class="lines-escape del-code lines-escape-old">{{if $line.LeftIdx}}{{if $leftDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $leftDiff "locale" $.root.locale}}"></a>{{end}}{{end}}</td>
|
<td class="lines-escape del-code lines-escape-old">{{if $line.LeftIdx}}{{if $leftDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $leftDiff "locale" $.root.locale}}"></a>{{end}}{{end}}</td>
|
||||||
<td class="lines-type-marker lines-type-marker-old del-code"><span class="mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td>
|
<td class="lines-type-marker lines-type-marker-old del-code"><span class="gt-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td>
|
||||||
<td class="lines-code lines-code-old halfwidth del-code">{{/*
|
<td class="lines-code lines-code-old halfwidth del-code">{{/*
|
||||||
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/*
|
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/*
|
||||||
*/}}<a class="ui primary button add-code-comment add-code-comment-left{{if (not $line.CanComment)}} invisible{{end}}" data-side="left" data-idx="{{$line.LeftIdx}}">{{/*
|
*/}}<a class="ui primary button add-code-comment add-code-comment-left{{if (not $line.CanComment)}} invisible{{end}}" data-side="left" data-idx="{{$line.LeftIdx}}">{{/*
|
||||||
@ -47,7 +47,7 @@
|
|||||||
*/}}</td>
|
*/}}</td>
|
||||||
<td class="lines-num lines-num-new add-code" data-line-num="{{if $match.RightIdx}}{{$match.RightIdx}}{{end}}"><span rel="{{if $match.RightIdx}}diff-{{$file.NameHash}}R{{$match.RightIdx}}{{end}}"></span></td>
|
<td class="lines-num lines-num-new add-code" data-line-num="{{if $match.RightIdx}}{{$match.RightIdx}}{{end}}"><span rel="{{if $match.RightIdx}}diff-{{$file.NameHash}}R{{$match.RightIdx}}{{end}}"></span></td>
|
||||||
<td class="lines-escape add-code lines-escape-new">{{if $match.RightIdx}}{{if $rightDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $rightDiff "locale" $.root.locale}}"></a>{{end}}{{end}}</td>
|
<td class="lines-escape add-code lines-escape-new">{{if $match.RightIdx}}{{if $rightDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $rightDiff "locale" $.root.locale}}"></a>{{end}}{{end}}</td>
|
||||||
<td class="lines-type-marker lines-type-marker-new add-code">{{if $match.RightIdx}}<span class="mono" data-type-marker="{{$match.GetLineTypeMarker}}"></span>{{end}}</td>
|
<td class="lines-type-marker lines-type-marker-new add-code">{{if $match.RightIdx}}<span class="gt-mono" data-type-marker="{{$match.GetLineTypeMarker}}"></span>{{end}}</td>
|
||||||
<td class="lines-code lines-code-new halfwidth add-code">{{/*
|
<td class="lines-code lines-code-new halfwidth add-code">{{/*
|
||||||
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/*
|
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles}}{{/*
|
||||||
*/}}<a class="ui primary button add-code-comment add-code-comment-right{{if (not $match.CanComment)}} invisible{{end}}" data-side="right" data-idx="{{$match.RightIdx}}">{{/*
|
*/}}<a class="ui primary button add-code-comment add-code-comment-right{{if (not $match.CanComment)}} invisible{{end}}" data-side="right" data-idx="{{$match.RightIdx}}">{{/*
|
||||||
@ -64,7 +64,7 @@
|
|||||||
{{$inlineDiff := $section.GetComputedInlineDiffFor $line $.root.locale}}
|
{{$inlineDiff := $section.GetComputedInlineDiffFor $line $.root.locale}}
|
||||||
<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$file.NameHash}}L{{$line.LeftIdx}}{{end}}"></span></td>
|
<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$file.NameHash}}L{{$line.LeftIdx}}{{end}}"></span></td>
|
||||||
<td class="lines-escape lines-escape-old">{{if $line.LeftIdx}}{{if $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.root.locale}}"></a>{{end}}{{end}}</td>
|
<td class="lines-escape lines-escape-old">{{if $line.LeftIdx}}{{if $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.root.locale}}"></a>{{end}}{{end}}</td>
|
||||||
<td class="lines-type-marker lines-type-marker-old">{{if $line.LeftIdx}}<span class="mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span>{{end}}</td>
|
<td class="lines-type-marker lines-type-marker-old">{{if $line.LeftIdx}}<span class="gt-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span>{{end}}</td>
|
||||||
<td class="lines-code lines-code-old halfwidth">{{/*
|
<td class="lines-code lines-code-old halfwidth">{{/*
|
||||||
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles (not (eq .GetType 2))}}{{/*
|
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles (not (eq .GetType 2))}}{{/*
|
||||||
*/}}<a class="ui primary button add-code-comment add-code-comment-left{{if (not $line.CanComment)}} invisible{{end}}" data-side="left" data-idx="{{$line.LeftIdx}}">{{/*
|
*/}}<a class="ui primary button add-code-comment add-code-comment-left{{if (not $line.CanComment)}} invisible{{end}}" data-side="left" data-idx="{{$line.LeftIdx}}">{{/*
|
||||||
@ -79,7 +79,7 @@
|
|||||||
*/}}</td>
|
*/}}</td>
|
||||||
<td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$file.NameHash}}R{{$line.RightIdx}}{{end}}"></span></td>
|
<td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$file.NameHash}}R{{$line.RightIdx}}{{end}}"></span></td>
|
||||||
<td class="lines-escape lines-escape-new">{{if $line.RightIdx}}{{if $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.root.locale}}"></a>{{end}}{{end}}</td>
|
<td class="lines-escape lines-escape-new">{{if $line.RightIdx}}{{if $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.root.locale}}"></a>{{end}}{{end}}</td>
|
||||||
<td class="lines-type-marker lines-type-marker-new">{{if $line.RightIdx}}<span class="mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span>{{end}}</td>
|
<td class="lines-type-marker lines-type-marker-new">{{if $line.RightIdx}}<span class="gt-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span>{{end}}</td>
|
||||||
<td class="lines-code lines-code-new halfwidth">{{/*
|
<td class="lines-code lines-code-new halfwidth">{{/*
|
||||||
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles (not (eq .GetType 3))}}{{/*
|
*/}}{{if and $.root.SignedUserID $.root.PageIsPullFiles (not (eq .GetType 3))}}{{/*
|
||||||
*/}}<a class="ui primary button add-code-comment add-code-comment-right{{if (not $line.CanComment)}} invisible{{end}}" data-side="right" data-idx="{{$line.RightIdx}}">{{/*
|
*/}}<a class="ui primary button add-code-comment add-code-comment-right{{if (not $line.CanComment)}} invisible{{end}}" data-side="right" data-idx="{{$line.RightIdx}}">{{/*
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
{{$inlineDiff := $section.GetComputedInlineDiffFor $line $.root.locale -}}
|
{{$inlineDiff := $section.GetComputedInlineDiffFor $line $.root.locale -}}
|
||||||
<td class="lines-escape">{{if $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.root.locale}}"></a>{{end}}</td>
|
<td class="lines-escape">{{if $inlineDiff.EscapeStatus.Escaped}}<a href="" class="toggle-escape-button" title="{{template "repo/diff/escape_title" dict "diff" $inlineDiff "locale" $.root.locale}}"></a>{{end}}</td>
|
||||||
<td class="lines-type-marker"><span class="mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td>
|
<td class="lines-type-marker"><span class="gt-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td>
|
||||||
{{if eq .GetType 4}}
|
{{if eq .GetType 4}}
|
||||||
<td class="chroma lines-code blob-hunk">{{/*
|
<td class="chroma lines-code blob-hunk">{{/*
|
||||||
*/}}{{template "repo/diff/section_code" dict "diff" $inlineDiff "locale" $.root.locale}}{{/*
|
*/}}{{template "repo/diff/section_code" dict "diff" $inlineDiff "locale" $.root.locale}}{{/*
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{{Add .file.Addition .file.Deletion}}
|
{{Add .file.Addition .file.Deletion}}
|
||||||
<span class="diff-stats-bar tooltip mx-3" data-content="{{.root.locale.Tr "repo.diff.stats_desc_file" (Add .file.Addition .file.Deletion) .file.Addition .file.Deletion | Str2html}}">
|
<span class="diff-stats-bar tooltip gt-mx-3" data-content="{{.root.locale.Tr "repo.diff.stats_desc_file" (Add .file.Addition .file.Deletion) .file.Addition .file.Deletion | Str2html}}">
|
||||||
<div class="diff-stats-add-bar" style="width: {{DiffStatsWidth .file.Addition .file.Deletion}}%"></div>
|
<div class="diff-stats-add-bar" style="width: {{DiffStatsWidth .file.Addition .file.Deletion}}%"></div>
|
||||||
</span>
|
</span>
|
||||||
|
@ -3,26 +3,26 @@
|
|||||||
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<a class="item" href="?style={{if .IsSplitStyle}}split{{else}}unified{{end}}&whitespace=show-all">
|
<a class="item" href="?style={{if .IsSplitStyle}}split{{else}}unified{{end}}&whitespace=show-all">
|
||||||
<label class="pointer-events-none">
|
<label class="gt-pointer-events-none">
|
||||||
<input class="mr-3 pointer-events-none" type="radio"{{if eq .WhitespaceBehavior "show-all"}} checked{{end}}>
|
<input class="gt-mr-3 gt-pointer-events-none" type="radio"{{if eq .WhitespaceBehavior "show-all"}} checked{{end}}>
|
||||||
{{.locale.Tr "repo.diff.whitespace_show_everything"}}
|
{{.locale.Tr "repo.diff.whitespace_show_everything"}}
|
||||||
</label>
|
</label>
|
||||||
</a>
|
</a>
|
||||||
<a class="item" href="?style={{if .IsSplitStyle}}split{{else}}unified{{end}}&whitespace=ignore-all">
|
<a class="item" href="?style={{if .IsSplitStyle}}split{{else}}unified{{end}}&whitespace=ignore-all">
|
||||||
<label class="pointer-events-none">
|
<label class="gt-pointer-events-none">
|
||||||
<input class="mr-3 pointer-events-none" type="radio"{{if eq .WhitespaceBehavior "ignore-all"}} checked{{end}}>
|
<input class="gt-mr-3 gt-pointer-events-none" type="radio"{{if eq .WhitespaceBehavior "ignore-all"}} checked{{end}}>
|
||||||
{{.locale.Tr "repo.diff.whitespace_ignore_all_whitespace"}}
|
{{.locale.Tr "repo.diff.whitespace_ignore_all_whitespace"}}
|
||||||
<label>
|
<label>
|
||||||
</a>
|
</a>
|
||||||
<a class="item" href="?style={{if .IsSplitStyle}}split{{else}}unified{{end}}&whitespace=ignore-change">
|
<a class="item" href="?style={{if .IsSplitStyle}}split{{else}}unified{{end}}&whitespace=ignore-change">
|
||||||
<label class="pointer-events-none">
|
<label class="gt-pointer-events-none">
|
||||||
<input class="mr-3 pointer-events-none" type="radio"{{if eq .WhitespaceBehavior "ignore-change"}} checked{{end}}>
|
<input class="gt-mr-3 gt-pointer-events-none" type="radio"{{if eq .WhitespaceBehavior "ignore-change"}} checked{{end}}>
|
||||||
{{.locale.Tr "repo.diff.whitespace_ignore_amount_changes"}}
|
{{.locale.Tr "repo.diff.whitespace_ignore_amount_changes"}}
|
||||||
</label>
|
</label>
|
||||||
</a>
|
</a>
|
||||||
<a class="item" href="?style={{if .IsSplitStyle}}split{{else}}unified{{end}}&whitespace=ignore-eol">
|
<a class="item" href="?style={{if .IsSplitStyle}}split{{else}}unified{{end}}&whitespace=ignore-eol">
|
||||||
<label class="pointer-events-none">
|
<label class="gt-pointer-events-none">
|
||||||
<input class="mr-3 pointer-events-none" type="radio"{{if eq .WhitespaceBehavior "ignore-eol"}} checked{{end}}>
|
<input class="gt-mr-3 gt-pointer-events-none" type="radio"{{if eq .WhitespaceBehavior "ignore-eol"}} checked{{end}}>
|
||||||
{{.locale.Tr "repo.diff.whitespace_ignore_at_eol"}}
|
{{.locale.Tr "repo.diff.whitespace_ignore_at_eol"}}
|
||||||
</label>
|
</label>
|
||||||
</a>
|
</a>
|
||||||
|
@ -61,7 +61,7 @@
|
|||||||
<div class="quick-pull-branch-name {{if not (eq .commit_choice "commit-to-new-branch")}}hide{{end}}">
|
<div class="quick-pull-branch-name {{if not (eq .commit_choice "commit-to-new-branch")}}hide{{end}}">
|
||||||
<div class="new-branch-name-input field {{if .Err_NewBranchName}}error{{end}}">
|
<div class="new-branch-name-input field {{if .Err_NewBranchName}}error{{end}}">
|
||||||
{{svg "octicon-git-branch"}}
|
{{svg "octicon-git-branch"}}
|
||||||
<input type="text" name="new_branch_name" value="{{.new_branch_name}}" class="input-contrast mr-2 js-quick-pull-new-branch-name" placeholder="{{.locale.Tr "repo.editor.new_branch_name_desc"}}" {{if eq .commit_choice "commit-to-new-branch"}}required{{end}} title="{{.locale.Tr "repo.editor.new_branch_name"}}">
|
<input type="text" name="new_branch_name" value="{{.new_branch_name}}" class="input-contrast gt-mr-2 js-quick-pull-new-branch-name" placeholder="{{.locale.Tr "repo.editor.new_branch_name_desc"}}" {{if eq .commit_choice "commit-to-new-branch"}}required{{end}} title="{{.locale.Tr "repo.editor.new_branch_name"}}">
|
||||||
<span class="text-muted js-quick-pull-normalization-info"></span>
|
<span class="text-muted js-quick-pull-normalization-info"></span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="field">
|
<div class="field">
|
||||||
<div class="ui top attached tabular menu" data-write="write">
|
<div class="ui top attached tabular menu" data-write="write">
|
||||||
<a class="active item" data-tab="write">{{svg "octicon-code" 16 "mr-2"}}{{.locale.Tr "repo.editor.new_patch"}}</a>
|
<a class="active item" data-tab="write">{{svg "octicon-code" 16 "gt-mr-2"}}{{.locale.Tr "repo.editor.new_patch"}}</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="ui bottom attached active tab segment" data-tab="write">
|
<div class="ui bottom attached active tab segment" data-tab="write">
|
||||||
<textarea id="edit_area" name="content" class="hide" data-id="repo-{{.Repository.Name}}-patch"
|
<textarea id="edit_area" name="content" class="hide" data-id="repo-{{.Repository.Name}}-patch"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
<div class="file-info text grey normal mono">
|
<div class="file-info text grey normal gt-mono">
|
||||||
{{if .FileIsSymlink}}
|
{{if .FileIsSymlink}}
|
||||||
<div class="file-info-entry">
|
<div class="file-info-entry">
|
||||||
{{.locale.Tr "repo.symbolic_link"}}
|
{{.locale.Tr "repo.symbolic_link"}}
|
||||||
@ -16,7 +16,7 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
{{if .LFSLock}}
|
{{if .LFSLock}}
|
||||||
<div class="file-info-entry ui tooltip" data-content="{{.LFSLockHint}}">
|
<div class="file-info-entry ui tooltip" data-content="{{.LFSLockHint}}">
|
||||||
{{svg "octicon-lock" 16 "mr-2"}}
|
{{svg "octicon-lock" 16 "gt-mr-2"}}
|
||||||
<a href="{{.LFSLockOwnerHomeLink}}">{{.LFSLockOwner}}</a>
|
<a href="{{.LFSLockOwnerHomeLink}}">{{.LFSLockOwner}}</a>
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
<div role="main" aria-label="{{.Title}}" class="page-content repository">
|
<div role="main" aria-label="{{.Title}}" class="page-content repository">
|
||||||
{{template "repo/header" .}}
|
{{template "repo/header" .}}
|
||||||
<div class="ui container">
|
<div class="ui container">
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
<a href="{{$.RepoLink}}">{{.RepoName}}</a>
|
<a href="{{$.RepoLink}}">{{.RepoName}}</a>
|
||||||
<span class="mx-3">/</span>
|
<span class="gt-mx-3">/</span>
|
||||||
<div class="ui input f1">
|
<div class="ui input gt-f1">
|
||||||
<input id="repo-file-find-input" type="text" autofocus data-url-data-link="{{.DataLink}}" data-url-tree-link="{{.TreeLink}}">
|
<input id="repo-file-find-input" type="text" autofocus data-url-data-link="{{.DataLink}}" data-url-tree-link="{{.TreeLink}}">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -13,7 +13,7 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<div id="repo-find-file-no-result" class="ui row center mt-5" hidden>
|
<div id="repo-find-file-no-result" class="ui row center gt-mt-5" hidden>
|
||||||
<h3>{{.locale.Tr "repo.find_file.no_matching"}}</h3>
|
<h3>{{.locale.Tr "repo.find_file.no_matching"}}</h3>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="item" data-value="...flow-hide-pr-refs">
|
<div class="item" data-value="...flow-hide-pr-refs">
|
||||||
<span class="truncate">
|
<span class="truncate">
|
||||||
{{svg "octicon-eye-closed" 16 "mr-2"}}<span title="{{.locale.Tr "repo.commit_graph.hide_pr_refs"}}">{{.locale.Tr "repo.commit_graph.hide_pr_refs"}}</span>
|
{{svg "octicon-eye-closed" 16 "gt-mr-2"}}<span title="{{.locale.Tr "repo.commit_graph.hide_pr_refs"}}">{{.locale.Tr "repo.commit_graph.hide_pr_refs"}}</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
{{range .AllRefs}}
|
{{range .AllRefs}}
|
||||||
@ -21,33 +21,33 @@
|
|||||||
{{if eq $refGroup "pull"}}
|
{{if eq $refGroup "pull"}}
|
||||||
<div class="item" data-value="{{.Name}}">
|
<div class="item" data-value="{{.Name}}">
|
||||||
<span class="truncate">
|
<span class="truncate">
|
||||||
{{svg "octicon-git-pull-request" 16 "mr-2"}}<span title="{{.ShortName}}">#{{.ShortName}}</span>
|
{{svg "octicon-git-pull-request" 16 "gt-mr-2"}}<span title="{{.ShortName}}">#{{.ShortName}}</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
{{else if eq $refGroup "tags"}}
|
{{else if eq $refGroup "tags"}}
|
||||||
<div class="item" data-value="{{.Name}}">
|
<div class="item" data-value="{{.Name}}">
|
||||||
<span class="truncate">
|
<span class="truncate">
|
||||||
{{svg "octicon-tag" 16 "mr-2"}}<span title="{{.ShortName}}">{{.ShortName}}</span>
|
{{svg "octicon-tag" 16 "gt-mr-2"}}<span title="{{.ShortName}}">{{.ShortName}}</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
{{else if eq $refGroup "remotes"}}
|
{{else if eq $refGroup "remotes"}}
|
||||||
<div class="item" data-value="{{.Name}}">
|
<div class="item" data-value="{{.Name}}">
|
||||||
<span class="truncate">
|
<span class="truncate">
|
||||||
{{svg "octicon-cross-reference" 16 "mr-2"}}<span title="{{.ShortName}}">{{.ShortName}}</span>
|
{{svg "octicon-cross-reference" 16 "gt-mr-2"}}<span title="{{.ShortName}}">{{.ShortName}}</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
{{else if eq $refGroup "heads"}}
|
{{else if eq $refGroup "heads"}}
|
||||||
<div class="item" data-value="{{.Name}}">
|
<div class="item" data-value="{{.Name}}">
|
||||||
<span class="truncate">
|
<span class="truncate">
|
||||||
{{svg "octicon-git-branch" 16 "mr-2"}}<span title="{{.ShortName}}">{{.ShortName}}</span>
|
{{svg "octicon-git-branch" 16 "gt-mr-2"}}<span title="{{.ShortName}}">{{.ShortName}}</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<button id="flow-color-monochrome" class="ui labelled icon button{{if eq .Mode "monochrome"}} active{{end}}" title="{{.locale.Tr "repo.commit_graph.monochrome"}}">{{svg "material-invert-colors" 16 "mr-2"}}{{.locale.Tr "repo.commit_graph.monochrome"}}</button>
|
<button id="flow-color-monochrome" class="ui labelled icon button{{if eq .Mode "monochrome"}} active{{end}}" title="{{.locale.Tr "repo.commit_graph.monochrome"}}">{{svg "material-invert-colors" 16 "gt-mr-2"}}{{.locale.Tr "repo.commit_graph.monochrome"}}</button>
|
||||||
<button id="flow-color-colored" class="ui labelled icon button{{if ne .Mode "monochrome"}} active{{end}}" title="{{.locale.Tr "repo.commit_graph.color"}}">{{svg "material-palette" 16 "mr-2"}}{{.locale.Tr "repo.commit_graph.color"}}</button>
|
<button id="flow-color-colored" class="ui labelled icon button{{if ne .Mode "monochrome"}} active{{end}}" title="{{.locale.Tr "repo.commit_graph.color"}}">{{svg "material-palette" 16 "gt-mr-2"}}{{.locale.Tr "repo.commit_graph.color"}}</button>
|
||||||
</div>
|
</div>
|
||||||
</h2>
|
</h2>
|
||||||
<div class="ui dividing"></div>
|
<div class="ui dividing"></div>
|
||||||
|
@ -28,37 +28,37 @@
|
|||||||
{{- end -}}
|
{{- end -}}
|
||||||
</a>
|
</a>
|
||||||
</span>
|
</span>
|
||||||
<span class="message dib ellipsis mr-2">
|
<span class="message gt-dib gt-ellipsis gt-mr-2">
|
||||||
<span>{{RenderCommitMessage $.Context $commit.Subject $.RepoLink $.Repository.ComposeMetas}}</span>
|
<span>{{RenderCommitMessage $.Context $commit.Subject $.RepoLink $.Repository.ComposeMetas}}</span>
|
||||||
</span>
|
</span>
|
||||||
<span class="tags df ac">
|
<span class="tags gt-df gt-ac">
|
||||||
{{range $commit.Refs}}
|
{{range $commit.Refs}}
|
||||||
{{$refGroup := .RefGroup}}
|
{{$refGroup := .RefGroup}}
|
||||||
{{if eq $refGroup "pull"}}
|
{{if eq $refGroup "pull"}}
|
||||||
{{if or (not $.HidePRRefs) (containGeneric $.SelectedBranches .Name)}}
|
{{if or (not $.HidePRRefs) (containGeneric $.SelectedBranches .Name)}}
|
||||||
<!-- it's intended to use issues not pulls, if it's a pull you will get redirected -->
|
<!-- it's intended to use issues not pulls, if it's a pull you will get redirected -->
|
||||||
<a class="ui labelled icon button basic tiny mr-2" href="{{$.RepoLink}}/{{if $.Repository.UnitEnabled $.Context $.UnitTypePullRequests}}pulls{{else}}issues{{end}}/{{.ShortName|PathEscape}}">
|
<a class="ui labelled icon button basic tiny gt-mr-2" href="{{$.RepoLink}}/{{if $.Repository.UnitEnabled $.Context $.UnitTypePullRequests}}pulls{{else}}issues{{end}}/{{.ShortName|PathEscape}}">
|
||||||
{{svg "octicon-git-pull-request" 16 "mr-2"}}#{{.ShortName}}
|
{{svg "octicon-git-pull-request" 16 "gt-mr-2"}}#{{.ShortName}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{else if eq $refGroup "tags"}}
|
{{else if eq $refGroup "tags"}}
|
||||||
<a class="ui labelled icon button basic tiny mr-2" href="{{$.RepoLink}}/src/tag/{{.ShortName|PathEscape}}">
|
<a class="ui labelled icon button basic tiny gt-mr-2" href="{{$.RepoLink}}/src/tag/{{.ShortName|PathEscape}}">
|
||||||
{{svg "octicon-tag" 16 "mr-2"}}{{.ShortName}}
|
{{svg "octicon-tag" 16 "gt-mr-2"}}{{.ShortName}}
|
||||||
</a>
|
</a>
|
||||||
{{else if eq $refGroup "remotes"}}
|
{{else if eq $refGroup "remotes"}}
|
||||||
<a class="ui labelled icon button basic tiny mr-2" href="{{$.RepoLink}}/src/commit/{{$commit.Rev|PathEscape}}">
|
<a class="ui labelled icon button basic tiny gt-mr-2" href="{{$.RepoLink}}/src/commit/{{$commit.Rev|PathEscape}}">
|
||||||
{{svg "octicon-cross-reference" 16 "mr-2"}}{{.ShortName}}
|
{{svg "octicon-cross-reference" 16 "gt-mr-2"}}{{.ShortName}}
|
||||||
</a>
|
</a>
|
||||||
{{else if eq $refGroup "heads"}}
|
{{else if eq $refGroup "heads"}}
|
||||||
<a class="ui labelled icon button basic tiny mr-2" href="{{$.RepoLink}}/src/branch/{{.ShortName|PathEscape}}">
|
<a class="ui labelled icon button basic tiny gt-mr-2" href="{{$.RepoLink}}/src/branch/{{.ShortName|PathEscape}}">
|
||||||
{{svg "octicon-git-branch" 16 "mr-2"}}{{.ShortName}}
|
{{svg "octicon-git-branch" 16 "gt-mr-2"}}{{.ShortName}}
|
||||||
</a>
|
</a>
|
||||||
{{else}}
|
{{else}}
|
||||||
<!-- Unknown ref type {{.Name}} -->
|
<!-- Unknown ref type {{.Name}} -->
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</span>
|
</span>
|
||||||
<span class="author df ac mr-2">
|
<span class="author gt-df gt-ac gt-mr-2">
|
||||||
{{$userName := $commit.Commit.Author.Name}}
|
{{$userName := $commit.Commit.Author.Name}}
|
||||||
{{if $commit.User}}
|
{{if $commit.User}}
|
||||||
{{if $commit.User.FullName}}
|
{{if $commit.User.FullName}}
|
||||||
@ -71,7 +71,7 @@
|
|||||||
{{$userName}}
|
{{$userName}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</span>
|
</span>
|
||||||
<span class="time df ac">{{$commit.Date}}</span>
|
<span class="time gt-df gt-ac">{{$commit.Date}}</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
</li>
|
</li>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -2,21 +2,21 @@
|
|||||||
{{with .Repository}}
|
{{with .Repository}}
|
||||||
<div class="ui container">
|
<div class="ui container">
|
||||||
<div class="repo-header">
|
<div class="repo-header">
|
||||||
<div class="repo-title-wrap df fc">
|
<div class="repo-title-wrap gt-df gt-fc">
|
||||||
<div class="repo-title" role="heading" aria-level="1">
|
<div class="repo-title" role="heading" aria-level="1">
|
||||||
{{$avatar := (repoAvatar . 32 "mr-3")}}
|
{{$avatar := (repoAvatar . 32 "gt-mr-3")}}
|
||||||
{{if $avatar}}
|
{{if $avatar}}
|
||||||
{{$avatar}}
|
{{$avatar}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{template "repo/icon" .}}
|
{{template "repo/icon" .}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<a href="{{.Owner.HomeLink}}">{{.Owner.Name}}</a>
|
<a href="{{.Owner.HomeLink}}">{{.Owner.Name}}</a>
|
||||||
<div class="mx-2">/</div>
|
<div class="gt-mx-2">/</div>
|
||||||
<a href="{{$.RepoLink}}">{{.Name}}</a>
|
<a href="{{$.RepoLink}}">{{.Name}}</a>
|
||||||
{{if $.EnableFeed}}
|
{{if $.EnableFeed}}
|
||||||
<a href="{{$.RepoLink}}.rss"><i class="ui grey icon tooltip ml-3" data-content="{{$.locale.Tr "rss_feed"}}" data-position="top center">{{svg "octicon-rss" 18}}</i></a>
|
<a href="{{$.RepoLink}}.rss"><i class="ui grey icon tooltip gt-ml-3" data-content="{{$.locale.Tr "rss_feed"}}" data-position="top center">{{svg "octicon-rss" 18}}</i></a>
|
||||||
{{end}}
|
{{end}}
|
||||||
<div class="labels df ac fw">
|
<div class="labels gt-df gt-ac gt-fw">
|
||||||
{{if .IsTemplate}}
|
{{if .IsTemplate}}
|
||||||
{{if .IsPrivate}}
|
{{if .IsPrivate}}
|
||||||
<span class="ui basic label">{{$.locale.Tr "repo.desc.private_template"}}</span>
|
<span class="ui basic label">{{$.locale.Tr "repo.desc.private_template"}}</span>
|
||||||
@ -122,12 +122,12 @@
|
|||||||
<div class="header">
|
<div class="header">
|
||||||
{{$.locale.Tr "repo.already_forked" .Name}}
|
{{$.locale.Tr "repo.already_forked" .Name}}
|
||||||
</div>
|
</div>
|
||||||
<div class="content tl">
|
<div class="content gt-tl">
|
||||||
<div class="ui list">
|
<div class="ui list">
|
||||||
{{range $.UserAndOrgForks}}
|
{{range $.UserAndOrgForks}}
|
||||||
<div class="ui item py-3">
|
<div class="ui item gt-py-3">
|
||||||
<a href="{{.Link}}">
|
<a href="{{.Link}}">
|
||||||
{{svg "octicon-repo-forked" 16 "mr-3"}}{{.FullName}}
|
{{svg "octicon-repo-forked" 16 "gt-mr-3"}}{{.FullName}}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
<div class="ui action input{{if .CodeIndexerUnavailable}} disabled left icon tooltip{{end}}"{{if .CodeIndexerUnavailable}} data-content="{{.locale.Tr "repo.search.code_search_unavailable"}}"{{end}}>
|
<div class="ui action input{{if .CodeIndexerUnavailable}} disabled left icon tooltip{{end}}"{{if .CodeIndexerUnavailable}} data-content="{{.locale.Tr "repo.search.code_search_unavailable"}}"{{end}}>
|
||||||
<input name="q" value="{{.Keyword}}"{{if .CodeIndexerUnavailable}} disabled{{end}} placeholder="{{.locale.Tr "repo.search.search_repo"}}">
|
<input name="q" value="{{.Keyword}}"{{if .CodeIndexerUnavailable}} disabled{{end}} placeholder="{{.locale.Tr "repo.search.search_repo"}}">
|
||||||
{{if .CodeIndexerUnavailable}}
|
{{if .CodeIndexerUnavailable}}
|
||||||
<i class="icon df ac jc">{{svg "octicon-alert"}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-alert"}}</i>
|
||||||
{{end}}
|
{{end}}
|
||||||
<button class="ui icon button"{{if .CodeIndexerUnavailable}} disabled{{end}} type="submit">
|
<button class="ui icon button"{{if .CodeIndexerUnavailable}} disabled{{end}} type="submit">
|
||||||
{{svg "octicon-search"}}
|
{{svg "octicon-search"}}
|
||||||
@ -28,7 +28,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="mt-3" id="repo-topics">
|
<div class="gt-mt-3" id="repo-topics">
|
||||||
{{range .Topics}}<a class="ui repo-topic large label topic" href="{{AppSubUrl}}/explore/repos?q={{.Name}}&topic=1">{{.Name}}</a>{{end}}
|
{{range .Topics}}<a class="ui repo-topic large label topic" href="{{AppSubUrl}}/explore/repos?q={{.Name}}&topic=1">{{.Name}}</a>{{end}}
|
||||||
{{if and .Permission.IsAdmin (not .Repository.IsArchived)}}<a id="manage_topic" class="muted">{{.locale.Tr "repo.topic.manage_topics"}}</a>{{end}}
|
{{if and .Permission.IsAdmin (not .Repository.IsArchived)}}<a id="manage_topic" class="muted">{{.locale.Tr "repo.topic.manage_topics"}}</a>{{end}}
|
||||||
</div>
|
</div>
|
||||||
@ -40,7 +40,7 @@
|
|||||||
<div class="ui fluid multiple search selection dropdown">
|
<div class="ui fluid multiple search selection dropdown">
|
||||||
<input type="hidden" name="topics" value="{{range $i, $v := .Topics}}{{.Name}}{{if lt (Add $i 1) (len $.Topics)}},{{end}}{{end}}">
|
<input type="hidden" name="topics" value="{{range $i, $v := .Topics}}{{.Name}}{{if lt (Add $i 1) (len $.Topics)}},{{end}}{{end}}">
|
||||||
{{range .Topics}}
|
{{range .Topics}}
|
||||||
<div class="ui small label topic transition visible" data-value="{{.Name}}" style="display: inline-block !important; cursor: default;">{{.Name}}{{svg "octicon-x" 16 "delete icon ml-3 mt-1"}}</div>
|
<div class="ui small label topic transition visible" data-value="{{.Name}}" style="display: inline-block !important; cursor: default;">{{.Name}}{{svg "octicon-x" 16 "delete icon gt-ml-3 gt-mt-1"}}</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
<div class="text"></div>
|
<div class="text"></div>
|
||||||
</div>
|
</div>
|
||||||
@ -62,12 +62,12 @@
|
|||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{template "repo/sub_menu" .}}
|
{{template "repo/sub_menu" .}}
|
||||||
<div class="repo-button-row df ac sb fw">
|
<div class="repo-button-row gt-df gt-ac gt-sb gt-fw">
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
{{template "repo/branch_dropdown" dict "root" .}}
|
{{template "repo/branch_dropdown" dict "root" .}}
|
||||||
{{$n := len .TreeNames}}
|
{{$n := len .TreeNames}}
|
||||||
{{$l := Subtract $n 1}}
|
{{$l := Subtract $n 1}}
|
||||||
<!-- If home page, show new PR. If not, show breadcrumb -->
|
<!-- If home page, show new pr. If not, show breadcrumb -->
|
||||||
{{if eq $n 0}}
|
{{if eq $n 0}}
|
||||||
{{if and .CanCompareOrPull .IsViewBranch (not .Repository.IsArchived)}}
|
{{if and .CanCompareOrPull .IsViewBranch (not .Repository.IsArchived)}}
|
||||||
<a href="{{CompareLink .BaseRepo .Repository .BranchName}}">
|
<a href="{{CompareLink .BaseRepo .Repository .BranchName}}">
|
||||||
@ -77,7 +77,7 @@
|
|||||||
<a href="{{.Repository.Link}}/find/{{.BranchNameSubURL}}" class="ui compact basic button">{{.locale.Tr "repo.find_file.go_to_file"}}</a>
|
<a href="{{.Repository.Link}}/find/{{.BranchNameSubURL}}" class="ui compact basic button">{{.locale.Tr "repo.find_file.go_to_file"}}</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if or .CanAddFile .CanUploadFile}}
|
{{if or .CanAddFile .CanUploadFile}}
|
||||||
<button class="ui basic small compact dropdown jump icon button mr-2"{{if not .Repository.CanEnableEditor}} disabled{{end}}>
|
<button class="ui basic small compact dropdown jump icon button gt-mr-2"{{if not .Repository.CanEnableEditor}} disabled{{end}}>
|
||||||
<span class="text">{{.locale.Tr "repo.editor.add_file"}}</span>
|
<span class="text">{{.locale.Tr "repo.editor.add_file"}}</span>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
{{if .CanAddFile}}
|
{{if .CanAddFile}}
|
||||||
@ -100,10 +100,10 @@
|
|||||||
</button>
|
</button>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if ne $n 0}}
|
{{if ne $n 0}}
|
||||||
<span class="ui breadcrumb repo-path ml-2"><a class="section" href="{{.RepoLink}}/src/{{.BranchNameSubURL}}" title="{{.Repository.Name}}">{{EllipsisString .Repository.Name 30}}</a>{{range $i, $v := .TreeNames}}<span class="divider">/</span>{{if eq $i $l}}<span class="active section" title="{{$v}}">{{EllipsisString $v 30}}</span>{{else}}{{$p := index $.Paths $i}}<span class="section"><a href="{{$.BranchLink}}/{{PathEscapeSegments $p}}" title="{{$v}}">{{EllipsisString $v 30}}</a></span>{{end}}{{end}}</span>
|
<span class="ui breadcrumb repo-path gt-ml-2"><a class="section" href="{{.RepoLink}}/src/{{.BranchNameSubURL}}" title="{{.Repository.Name}}">{{EllipsisString .Repository.Name 30}}</a>{{range $i, $v := .TreeNames}}<span class="divider">/</span>{{if eq $i $l}}<span class="active section" title="{{$v}}">{{EllipsisString $v 30}}</span>{{else}}{{$p := index $.Paths $i}}<span class="section"><a href="{{$.BranchLink}}/{{PathEscapeSegments $p}}" title="{{$v}}">{{EllipsisString $v 30}}</a></span>{{end}}{{end}}</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
{{if eq $n 0}}
|
{{if eq $n 0}}
|
||||||
{{if .Repository.IsTemplate}}
|
{{if .Repository.IsTemplate}}
|
||||||
<div class="ui tiny primary buttons">
|
<div class="ui tiny primary buttons">
|
||||||
@ -121,14 +121,14 @@
|
|||||||
{{svg "octicon-kebab-horizontal"}}
|
{{svg "octicon-kebab-horizontal"}}
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
{{if not $.DisableDownloadSourceArchives}}
|
{{if not $.DisableDownloadSourceArchives}}
|
||||||
<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.RefName}}.zip" rel="nofollow">{{svg "octicon-file-zip" 16 "mr-3"}}{{.locale.Tr "repo.download_zip"}}</a>
|
<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.RefName}}.zip" rel="nofollow">{{svg "octicon-file-zip" 16 "gt-mr-3"}}{{.locale.Tr "repo.download_zip"}}</a>
|
||||||
<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.RefName}}.tar.gz" rel="nofollow">{{svg "octicon-file-zip" 16 "mr-3"}}{{.locale.Tr "repo.download_tar"}}</a>
|
<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.RefName}}.tar.gz" rel="nofollow">{{svg "octicon-file-zip" 16 "gt-mr-3"}}{{.locale.Tr "repo.download_tar"}}</a>
|
||||||
<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.RefName}}.bundle" rel="nofollow">{{svg "octicon-package" 16 "mr-3"}}{{.locale.Tr "repo.download_bundle"}}</a>
|
<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.RefName}}.bundle" rel="nofollow">{{svg "octicon-package" 16 "gt-mr-3"}}{{.locale.Tr "repo.download_bundle"}}</a>
|
||||||
{{if .CitiationExist}}
|
{{if .CitiationExist}}
|
||||||
<a class="item" id="cite-repo-button">{{svg "octicon-cross-reference" 16 "mr-3"}}{{.locale.Tr "repo.cite_this_repo"}}</a>
|
<a class="item" id="cite-repo-button">{{svg "octicon-cross-reference" 16 "gt-mr-3"}}{{.locale.Tr "repo.cite_this_repo"}}</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<a class="item js-clone-url-vsc" href="vscode://vscode.git/clone?url={{.CloneButtonOriginLink.HTTPS}}">{{svg "gitea-vscode" 16 "mr-3"}}{{.locale.Tr "repo.clone_in_vsc"}}</a>
|
<a class="item js-clone-url-vsc" href="vscode://vscode.git/clone?url={{.CloneButtonOriginLink.HTTPS}}">{{svg "gitea-vscode" 16 "gt-mr-3"}}{{.locale.Tr "repo.clone_in_vsc"}}</a>
|
||||||
</div>
|
</div>
|
||||||
</button>
|
</button>
|
||||||
{{template "repo/clone_script" .}}{{/* the script will update `.js-clone-url` and related elements */}}
|
{{template "repo/clone_script" .}}{{/* the script will update `.js-clone-url` and related elements */}}
|
||||||
@ -137,7 +137,7 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
{{if and (ne $n 0) (not .IsViewFile) (not .IsBlame)}}
|
{{if and (ne $n 0) (not .IsViewFile) (not .IsBlame)}}
|
||||||
<a class="ui button" href="{{.RepoLink}}/commits/{{.BranchNameSubURL}}/{{.TreePath | PathEscapeSegments}}">
|
<a class="ui button" href="{{.RepoLink}}/commits/{{.BranchNameSubURL}}/{{.TreePath | PathEscapeSegments}}">
|
||||||
{{svg "octicon-history" 16 "mr-3"}}{{.locale.Tr "repo.file_history"}}
|
{{svg "octicon-history" 16 "gt-mr-3"}}{{.locale.Tr "repo.file_history"}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
<div class="repo-icon mr-3">
|
<div class="repo-icon gt-mr-3">
|
||||||
{{if $.IsTemplate}}
|
{{if $.IsTemplate}}
|
||||||
{{svg "octicon-repo-template" 32}}
|
{{svg "octicon-repo-template" 32}}
|
||||||
{{else}}
|
{{else}}
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc m-0">{{svg "octicon-filter" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc gt-m-0">{{svg "octicon-filter" 16}}</i>
|
||||||
<input name="search" placeholder="{{.locale.Tr "repo.filter_branch_and_tag"}}...">
|
<input name="search" placeholder="{{.locale.Tr "repo.filter_branch_and_tag"}}...">
|
||||||
</div>
|
</div>
|
||||||
<div class="header">
|
<div class="header">
|
||||||
@ -20,12 +20,12 @@
|
|||||||
<div class="two column row">
|
<div class="two column row">
|
||||||
<a class="reference column" href="#" data-target="#branch-list">
|
<a class="reference column" href="#" data-target="#branch-list">
|
||||||
<span class="text black">
|
<span class="text black">
|
||||||
{{svg "octicon-git-branch" 16 "mr-2"}}{{.locale.Tr "repo.branches"}}
|
{{svg "octicon-git-branch" 16 "gt-mr-2"}}{{.locale.Tr "repo.branches"}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
<a class="reference column" href="#" data-target="#tag-list">
|
<a class="reference column" href="#" data-target="#tag-list">
|
||||||
<span class="text">
|
<span class="text">
|
||||||
{{svg "octicon-tag" 16 "mr-2"}}{{.locale.Tr "repo.tags"}}
|
{{svg "octicon-tag" 16 "gt-mr-2"}}{{.locale.Tr "repo.tags"}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
<div id="issue-filters" class="ui stackable grid">
|
<div id="issue-filters" class="ui stackable grid">
|
||||||
<div class="six wide column">
|
<div class="six wide column">
|
||||||
{{if $.CanWriteIssuesOrPulls}}
|
{{if $.CanWriteIssuesOrPulls}}
|
||||||
<div class="ui checkbox issue-checkbox-all vm">
|
<div class="ui checkbox issue-checkbox-all gt-vm">
|
||||||
<input type="checkbox" title="{{.locale.Tr "repo.issues.action_check_all"}}">
|
<input type="checkbox" title="{{.locale.Tr "repo.issues.action_check_all"}}">
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -45,7 +45,7 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_label"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_label"}}">
|
||||||
</div>
|
</div>
|
||||||
<span class="info">{{.locale.Tr "repo.issues.filter_label_exclude" | Safe}}</span>
|
<span class="info">{{.locale.Tr "repo.issues.filter_label_exclude" | Safe}}</span>
|
||||||
@ -64,7 +64,7 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_milestone"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_milestone"}}">
|
||||||
</div>
|
</div>
|
||||||
<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}">{{.locale.Tr "repo.issues.filter_milestone_no_select"}}</a>
|
<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}">{{.locale.Tr "repo.issues.filter_milestone_no_select"}}</a>
|
||||||
@ -82,7 +82,7 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_project"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_project"}}">
|
||||||
</div>
|
</div>
|
||||||
<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}">{{.locale.Tr "repo.issues.filter_project_all"}}</a>
|
<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}">{{.locale.Tr "repo.issues.filter_project_all"}}</a>
|
||||||
@ -94,7 +94,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .OpenProjects}}
|
{{range .OpenProjects}}
|
||||||
<a class="{{if $.ProjectID}}{{if eq $.ProjectID .ID}}active selected{{end}}{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&project={{.ID}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}">
|
<a class="{{if $.ProjectID}}{{if eq $.ProjectID .ID}}active selected{{end}}{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&project={{.ID}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}">
|
||||||
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "mr-3"}}{{else}}{{svg "octicon-project" 18 "mr-3"}}{{end}}
|
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "gt-mr-3"}}{{else}}{{svg "octicon-project" 18 "gt-mr-3"}}{{end}}
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -106,7 +106,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .ClosedProjects}}
|
{{range .ClosedProjects}}
|
||||||
<a class="{{if $.ProjectID}}{{if eq $.ProjectID .ID}}active selected{{end}}{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&project={{.ID}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}">
|
<a class="{{if $.ProjectID}}{{if eq $.ProjectID .ID}}active selected{{end}}{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&project={{.ID}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}">
|
||||||
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "mr-3"}}{{else}}{{svg "octicon-project" 18 "mr-3"}}{{end}}
|
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "gt-mr-3"}}{{else}}{{svg "octicon-project" 18 "gt-mr-3"}}{{end}}
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -122,7 +122,7 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_poster"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_poster"}}">
|
||||||
</div>
|
</div>
|
||||||
<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&project={{$.ProjectID}}&assignee={{$.AssigneeID}}">{{.locale.Tr "repo.issues.filter_poster_no_select"}}</a>
|
<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&project={{$.ProjectID}}&assignee={{$.AssigneeID}}">{{.locale.Tr "repo.issues.filter_poster_no_select"}}</a>
|
||||||
@ -142,7 +142,7 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_assignee"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_assignee"}}">
|
||||||
</div>
|
</div>
|
||||||
<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&project={{$.ProjectID}}&poster={{$.PosterID}}">{{.locale.Tr "repo.issues.filter_assginee_no_select"}}</a>
|
<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&project={{$.ProjectID}}&poster={{$.PosterID}}">{{.locale.Tr "repo.issues.filter_assginee_no_select"}}</a>
|
||||||
@ -260,7 +260,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .OpenProjects}}
|
{{range .OpenProjects}}
|
||||||
<div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/projects">
|
<div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/projects">
|
||||||
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "mr-3"}}{{else}}{{svg "octicon-project" 18 "mr-3"}}{{end}}
|
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "gt-mr-3"}}{{else}}{{svg "octicon-project" 18 "gt-mr-3"}}{{end}}
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -272,7 +272,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .ClosedProjects}}
|
{{range .ClosedProjects}}
|
||||||
<div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/projects">
|
<div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/projects">
|
||||||
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "mr-3"}}{{else}}{{svg "octicon-project" 18 "mr-3"}}{{end}}
|
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "gt-mr-3"}}{{else}}{{svg "octicon-project" 18 "gt-mr-3"}}{{end}}
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -52,7 +52,7 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_label"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_label"}}">
|
||||||
</div>
|
</div>
|
||||||
<span class="info">{{.locale.Tr "repo.issues.filter_label_exclude" | Safe}}</span>
|
<span class="info">{{.locale.Tr "repo.issues.filter_label_exclude" | Safe}}</span>
|
||||||
@ -87,13 +87,13 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_assignee"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_assignee"}}">
|
||||||
</div>
|
</div>
|
||||||
<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&poster={{$.PosterID}}">{{.locale.Tr "repo.issues.filter_assginee_no_select"}}</a>
|
<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&poster={{$.PosterID}}">{{.locale.Tr "repo.issues.filter_assginee_no_select"}}</a>
|
||||||
{{range .Assignees}}
|
{{range .Assignees}}
|
||||||
<a class="{{if eq $.AssigneeID .ID}}active selected{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&assignee={{.ID}}&poster={{$.PosterID}}">
|
<a class="{{if eq $.AssigneeID .ID}}active selected{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&assignee={{.ID}}&poster={{$.PosterID}}">
|
||||||
{{avatar . 28 "mr-2"}}
|
{{avatar . 28 "gt-mr-2"}}
|
||||||
{{.GetDisplayName}}
|
{{.GetDisplayName}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -179,7 +179,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .Assignees}}
|
{{range .Assignees}}
|
||||||
<div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/assignee">
|
<div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/assignee">
|
||||||
{{avatar . 28 "mr-2"}}
|
{{avatar . 28 "gt-mr-2"}}
|
||||||
{{.GetDisplayName}}
|
{{.GetDisplayName}}
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -17,11 +17,11 @@
|
|||||||
<div class="column">
|
<div class="column">
|
||||||
<div class="ui compact tiny menu">
|
<div class="ui compact tiny menu">
|
||||||
<a class="item{{if not .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/milestones?state=open&q={{$.Keyword}}">
|
<a class="item{{if not .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/milestones?state=open&q={{$.Keyword}}">
|
||||||
{{svg "octicon-milestone" 16 "mr-3"}}
|
{{svg "octicon-milestone" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .OpenCount}} {{.locale.Tr "repo.issues.open_title"}}
|
{{JsPrettyNumber .OpenCount}} {{.locale.Tr "repo.issues.open_title"}}
|
||||||
</a>
|
</a>
|
||||||
<a class="item{{if .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/milestones?state=closed&q={{$.Keyword}}">
|
<a class="item{{if .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/milestones?state=closed&q={{$.Keyword}}">
|
||||||
{{svg "octicon-check" 16 "mr-3"}}
|
{{svg "octicon-check" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .ClosedCount}} {{.locale.Tr "repo.issues.closed_title"}}
|
{{JsPrettyNumber .ClosedCount}} {{.locale.Tr "repo.issues.closed_title"}}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
@ -38,7 +38,7 @@
|
|||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="column right aligned df ac je">
|
<div class="column right aligned gt-df gt-ac gt-je">
|
||||||
<!-- Sort -->
|
<!-- Sort -->
|
||||||
<div class="ui dropdown type jump item">
|
<div class="ui dropdown type jump item">
|
||||||
<span class="text">
|
<span class="text">
|
||||||
@ -61,12 +61,12 @@
|
|||||||
<div class="milestone list">
|
<div class="milestone list">
|
||||||
{{range .Milestones}}
|
{{range .Milestones}}
|
||||||
<li class="item">
|
<li class="item">
|
||||||
<div class="df ac sb">
|
<div class="gt-df gt-ac gt-sb">
|
||||||
<h3 class="df ac m-0 fw">
|
<h3 class="gt-df gt-ac gt-m-0 gt-fw">
|
||||||
{{svg "octicon-milestone" 16 "mr-3"}}<a class="muted" href="{{$.RepoLink}}/milestone/{{.ID}}">{{.Name}}</a>
|
{{svg "octicon-milestone" 16 "gt-mr-3"}}<a class="muted" href="{{$.RepoLink}}/milestone/{{.ID}}">{{.Name}}</a>
|
||||||
</h3>
|
</h3>
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
<span class="mr-3">{{.Completeness}}%</span>
|
<span class="gt-mr-3">{{.Completeness}}%</span>
|
||||||
<progress value="{{.Completeness}}" max="100"></progress>
|
<progress value="{{.Completeness}}" max="100"></progress>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -83,9 +83,9 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<span class="issue-stats">
|
<span class="issue-stats">
|
||||||
{{svg "octicon-issue-opened" 16 "mr-3"}}
|
{{svg "octicon-issue-opened" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .NumOpenIssues}} {{$.locale.Tr "repo.issues.open_title"}}
|
{{JsPrettyNumber .NumOpenIssues}} {{$.locale.Tr "repo.issues.open_title"}}
|
||||||
{{svg "octicon-check" 16 "mr-3"}}
|
{{svg "octicon-check" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .NumClosedIssues}} {{$.locale.Tr "repo.issues.closed_title"}}
|
{{JsPrettyNumber .NumClosedIssues}} {{$.locale.Tr "repo.issues.closed_title"}}
|
||||||
{{if .TotalTrackedTime}}{{svg "octicon-clock"}} {{.TotalTrackedTime|Sec2Time}}{{end}}
|
{{if .TotalTrackedTime}}{{svg "octicon-clock"}} {{.TotalTrackedTime|Sec2Time}}{{end}}
|
||||||
{{if .UpdatedUnix}}{{svg "octicon-clock"}} {{$.locale.Tr "repo.milestones.update_ago" (.TimeSinceUpdate|Sec2Time)}}{{end}}
|
{{if .UpdatedUnix}}{{svg "octicon-clock"}} {{$.locale.Tr "repo.milestones.update_ago" (.TimeSinceUpdate|Sec2Time)}}{{end}}
|
||||||
|
@ -47,7 +47,7 @@
|
|||||||
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_labels_title"}}</div>
|
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_labels_title"}}</div>
|
||||||
{{if or .Labels .OrgLabels}}
|
{{if or .Labels .OrgLabels}}
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_labels"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_labels"}}">
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -84,7 +84,7 @@
|
|||||||
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_milestone_title"}}</div>
|
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_milestone_title"}}</div>
|
||||||
{{if or .OpenMilestones .ClosedMilestones}}
|
{{if or .OpenMilestones .ClosedMilestones}}
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_milestones"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_milestones"}}">
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -101,7 +101,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .OpenMilestones}}
|
{{range .OpenMilestones}}
|
||||||
<a class="item" data-id="{{.ID}}" data-href="{{$.RepoLink}}/issues?milestone={{.ID}}">
|
<a class="item" data-id="{{.ID}}" data-href="{{$.RepoLink}}/issues?milestone={{.ID}}">
|
||||||
{{svg "octicon-milestone" 16 "mr-2"}}
|
{{svg "octicon-milestone" 16 "gt-mr-2"}}
|
||||||
{{.Name}}
|
{{.Name}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -113,7 +113,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .ClosedMilestones}}
|
{{range .ClosedMilestones}}
|
||||||
<a class="item" data-id="{{.ID}}" data-href="{{$.RepoLink}}/issues?milestone={{.ID}}">
|
<a class="item" data-id="{{.ID}}" data-href="{{$.RepoLink}}/issues?milestone={{.ID}}">
|
||||||
{{svg "octicon-milestone" 16 "mr-2"}}
|
{{svg "octicon-milestone" 16 "gt-mr-2"}}
|
||||||
{{.Name}}
|
{{.Name}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -126,7 +126,7 @@
|
|||||||
<div class="selected">
|
<div class="selected">
|
||||||
{{if .Milestone}}
|
{{if .Milestone}}
|
||||||
<a class="item muted sidebar-item-link" href="{{.RepoLink}}/issues?milestone={{.Milestone.ID}}">
|
<a class="item muted sidebar-item-link" href="{{.RepoLink}}/issues?milestone={{.Milestone.ID}}">
|
||||||
{{svg "octicon-milestone" 18 "mr-3"}}
|
{{svg "octicon-milestone" 18 "gt-mr-3"}}
|
||||||
{{.Milestone.Name}}
|
{{.Milestone.Name}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -148,7 +148,7 @@
|
|||||||
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_project_title"}}</div>
|
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_project_title"}}</div>
|
||||||
{{if or .OpenProjects .ClosedProjects}}
|
{{if or .OpenProjects .ClosedProjects}}
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_projects"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_projects"}}">
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -165,7 +165,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .OpenProjects}}
|
{{range .OpenProjects}}
|
||||||
<a class="item muted sidebar-item-link" data-id="{{.ID}}" data-href="{{$.RepoLink}}/projects/{{.ID}}">
|
<a class="item muted sidebar-item-link" data-id="{{.ID}}" data-href="{{$.RepoLink}}/projects/{{.ID}}">
|
||||||
{{svg "octicon-project" 18 "mr-3"}}
|
{{svg "octicon-project" 18 "gt-mr-3"}}
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -177,7 +177,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .ClosedProjects}}
|
{{range .ClosedProjects}}
|
||||||
<a class="item muted sidebar-item-link" data-id="{{.ID}}" data-href="{{$.RepoLink}}/projects/{{.ID}}">
|
<a class="item muted sidebar-item-link" data-id="{{.ID}}" data-href="{{$.RepoLink}}/projects/{{.ID}}">
|
||||||
{{svg "octicon-project" 18 "mr-3"}}
|
{{svg "octicon-project" 18 "gt-mr-3"}}
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -190,7 +190,7 @@
|
|||||||
<div class="selected">
|
<div class="selected">
|
||||||
{{if .Project}}
|
{{if .Project}}
|
||||||
<a class="item muted sidebar-item-link" href="{{.RepoLink}}/projects/{{.Project.ID}}">
|
<a class="item muted sidebar-item-link" href="{{.RepoLink}}/projects/{{.Project.ID}}">
|
||||||
{{svg "octicon-project" 18 "mr-3"}}
|
{{svg "octicon-project" 18 "gt-mr-3"}}
|
||||||
{{.Project.Title}}
|
{{.Project.Title}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -209,7 +209,7 @@
|
|||||||
<div class="filter menu" data-id="#assignee_ids">
|
<div class="filter menu" data-id="#assignee_ids">
|
||||||
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_assignees_title"}}</div>
|
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_assignees_title"}}</div>
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_assignees"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_assignees"}}">
|
||||||
</div>
|
</div>
|
||||||
<div class="no-select item">{{.locale.Tr "repo.issues.new.clear_assignees"}}</div>
|
<div class="no-select item">{{.locale.Tr "repo.issues.new.clear_assignees"}}</div>
|
||||||
@ -217,7 +217,7 @@
|
|||||||
<a class="item muted" href="#" data-id="{{.ID}}" data-id-selector="#assignee_{{.ID}}">
|
<a class="item muted" href="#" data-id="{{.ID}}" data-id-selector="#assignee_{{.ID}}">
|
||||||
<span class="octicon-check invisible">{{svg "octicon-check"}}</span>
|
<span class="octicon-check invisible">{{svg "octicon-check"}}</span>
|
||||||
<span class="text">
|
<span class="text">
|
||||||
{{avatar . 28 "mr-3"}}{{.GetDisplayName}}
|
{{avatar . 28 "gt-mr-3"}}{{.GetDisplayName}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -228,8 +228,8 @@
|
|||||||
{{.locale.Tr "repo.issues.new.no_assignees"}}
|
{{.locale.Tr "repo.issues.new.no_assignees"}}
|
||||||
</span>
|
</span>
|
||||||
{{range .Assignees}}
|
{{range .Assignees}}
|
||||||
<a class="hide item p-2 muted" id="assignee_{{.ID}}" href="{{$.RepoLink}}/issues?assignee={{.ID}}">
|
<a class="hide item gt-p-2 muted" id="assignee_{{.ID}}" href="{{$.RepoLink}}/issues?assignee={{.ID}}">
|
||||||
{{avatar . 28 "mr-3 vm"}}{{.GetDisplayName}}
|
{{avatar . 28 "gt-mr-3 gt-vm"}}{{.GetDisplayName}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
@ -238,7 +238,7 @@
|
|||||||
<div class="inline field">
|
<div class="inline field">
|
||||||
<div class="ui checkbox">
|
<div class="ui checkbox">
|
||||||
<label class="tooltip" data-content="{{.locale.Tr "repo.pulls.allow_edits_from_maintainers_desc"}}"><strong>{{.locale.Tr "repo.pulls.allow_edits_from_maintainers"}}</strong></label>
|
<label class="tooltip" data-content="{{.locale.Tr "repo.pulls.allow_edits_from_maintainers_desc"}}"><strong>{{.locale.Tr "repo.pulls.allow_edits_from_maintainers"}}</strong></label>
|
||||||
<input name="allow_maintainer_edit" type="checkbox">
|
<input name="allow_maintainer_edit" type="checkbox" {{if .AllowMaintainerEdit}}checked{{end}}>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
<div class="ui compact tiny menu">
|
<div class="ui compact tiny menu">
|
||||||
<a class="{{if not .IsShowClosed}}active {{end}}item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state=open&labels={{.SelectLabels}}&milestone={{.MilestoneID}}&project={{.ProjectID}}&assignee={{.AssigneeID}}&poster={{.PosterID}}">
|
<a class="{{if not .IsShowClosed}}active {{end}}item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state=open&labels={{.SelectLabels}}&milestone={{.MilestoneID}}&project={{.ProjectID}}&assignee={{.AssigneeID}}&poster={{.PosterID}}">
|
||||||
{{if .PageIsPullList}}
|
{{if .PageIsPullList}}
|
||||||
{{svg "octicon-git-pull-request" 16 "mr-3"}}
|
{{svg "octicon-git-pull-request" 16 "gt-mr-3"}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{svg "octicon-issue-opened" 16 "mr-3"}}
|
{{svg "octicon-issue-opened" 16 "gt-mr-3"}}
|
||||||
{{end}}
|
{{end}}
|
||||||
{{JsPrettyNumber .IssueStats.OpenCount}} {{.locale.Tr "repo.issues.open_title"}}
|
{{JsPrettyNumber .IssueStats.OpenCount}} {{.locale.Tr "repo.issues.open_title"}}
|
||||||
</a>
|
</a>
|
||||||
<a class="{{if .IsShowClosed}}active {{end}}item" href="{{$.Link}}?q={{$.Keyword}}&type={{.ViewType}}&sort={{$.SortType}}&state=closed&labels={{.SelectLabels}}&milestone={{.MilestoneID}}&project={{.ProjectID}}&assignee={{.AssigneeID}}&poster={{.PosterID}}">
|
<a class="{{if .IsShowClosed}}active {{end}}item" href="{{$.Link}}?q={{$.Keyword}}&type={{.ViewType}}&sort={{$.SortType}}&state=closed&labels={{.SelectLabels}}&milestone={{.MilestoneID}}&project={{.ProjectID}}&assignee={{.AssigneeID}}&poster={{.PosterID}}">
|
||||||
{{svg "octicon-check" 16 "mr-3"}}
|
{{svg "octicon-check" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .IssueStats.ClosedCount}} {{.locale.Tr "repo.issues.closed_title"}}
|
{{JsPrettyNumber .IssueStats.ClosedCount}} {{.locale.Tr "repo.issues.closed_title"}}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -27,10 +27,10 @@
|
|||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
<div class="content comment-container">
|
<div class="content comment-container">
|
||||||
<div class="ui top attached header comment-header df ac sb">
|
<div class="ui top attached header comment-header gt-df gt-ac gt-sb">
|
||||||
<div class="comment-header-left df ac">
|
<div class="comment-header-left gt-df gt-ac">
|
||||||
{{if .Issue.OriginalAuthor}}
|
{{if .Issue.OriginalAuthor}}
|
||||||
<span class="text black bold">
|
<span class="text black gt-bold">
|
||||||
{{svg (MigrationIcon .Repository.GetOriginalURLHostname)}}
|
{{svg (MigrationIcon .Repository.GetOriginalURLHostname)}}
|
||||||
{{.Issue.OriginalAuthor}}
|
{{.Issue.OriginalAuthor}}
|
||||||
</span>
|
</span>
|
||||||
@ -50,7 +50,7 @@
|
|||||||
</span>
|
</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="comment-header-right actions df ac">
|
<div class="comment-header-right actions gt-df gt-ac">
|
||||||
{{if gt .Issue.ShowRole 0}}
|
{{if gt .Issue.ShowRole 0}}
|
||||||
{{if (.Issue.ShowRole.HasRole "Writer")}}
|
{{if (.Issue.ShowRole.HasRole "Writer")}}
|
||||||
<div class="ui basic label role-label">
|
<div class="ui basic label role-label">
|
||||||
|
@ -22,10 +22,10 @@
|
|||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
<div class="content comment-container">
|
<div class="content comment-container">
|
||||||
<div class="ui top attached header comment-header df ac sb">
|
<div class="ui top attached header comment-header gt-df gt-ac gt-sb">
|
||||||
<div class="comment-header-left df ac">
|
<div class="comment-header-left gt-df gt-ac">
|
||||||
{{if .OriginalAuthor}}
|
{{if .OriginalAuthor}}
|
||||||
<span class="text black bold mr-2">
|
<span class="text black gt-bold gt-mr-2">
|
||||||
{{svg (MigrationIcon $.Repository.GetOriginalURLHostname)}}
|
{{svg (MigrationIcon $.Repository.GetOriginalURLHostname)}}
|
||||||
{{.OriginalAuthor}}
|
{{.OriginalAuthor}}
|
||||||
</span>
|
</span>
|
||||||
@ -47,7 +47,7 @@
|
|||||||
</span>
|
</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="comment-header-right actions df ac">
|
<div class="comment-header-right actions gt-df gt-ac">
|
||||||
{{if (.ShowRole.HasRole "Poster")}}
|
{{if (.ShowRole.HasRole "Poster")}}
|
||||||
<div class="ui basic label">
|
<div class="ui basic label">
|
||||||
{{$.locale.Tr "repo.issues.poster"}}
|
{{$.locale.Tr "repo.issues.poster"}}
|
||||||
@ -93,7 +93,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{else if eq .Type 1}}
|
{{else if eq .Type 1}}
|
||||||
<div class="timeline-item event" id="{{.HashTag}}">
|
<div class="timeline-item event" id="{{.HashTag}}">
|
||||||
<span class="badge bg-green text-white">{{svg "octicon-dot-fill"}}</span>
|
<span class="badge gt-bg-green gt-text-white">{{svg "octicon-dot-fill"}}</span>
|
||||||
{{template "shared/user/avatarlink" .Poster}}
|
{{template "shared/user/avatarlink" .Poster}}
|
||||||
<span class="text grey muted-links">
|
<span class="text grey muted-links">
|
||||||
{{template "shared/user/authorlink" .Poster}}
|
{{template "shared/user/authorlink" .Poster}}
|
||||||
@ -106,7 +106,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{else if eq .Type 2}}
|
{{else if eq .Type 2}}
|
||||||
<div class="timeline-item event" id="{{.HashTag}}">
|
<div class="timeline-item event" id="{{.HashTag}}">
|
||||||
<span class="badge bg-red text-white">{{svg "octicon-circle-slash"}}</span>
|
<span class="badge gt-bg-red gt-text-white">{{svg "octicon-circle-slash"}}</span>
|
||||||
{{template "shared/user/avatarlink" .Poster}}
|
{{template "shared/user/avatarlink" .Poster}}
|
||||||
<span class="text grey muted-links">
|
<span class="text grey muted-links">
|
||||||
{{template "shared/user/authorlink" .Poster}}
|
{{template "shared/user/authorlink" .Poster}}
|
||||||
@ -119,7 +119,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{else if eq .Type 28}}
|
{{else if eq .Type 28}}
|
||||||
<div class="timeline-item event" id="{{.HashTag}}">
|
<div class="timeline-item event" id="{{.HashTag}}">
|
||||||
<span class="badge bg-purple text-white">{{svg "octicon-git-merge"}}</span>
|
<span class="badge gt-bg-purple gt-text-white">{{svg "octicon-git-merge"}}</span>
|
||||||
{{template "shared/user/avatarlink" .Poster}}
|
{{template "shared/user/avatarlink" .Poster}}
|
||||||
<span class="text grey muted-links">
|
<span class="text grey muted-links">
|
||||||
{{template "shared/user/authorlink" .Poster}}
|
{{template "shared/user/authorlink" .Poster}}
|
||||||
@ -372,7 +372,7 @@
|
|||||||
{{avatar .Poster}}
|
{{avatar .Poster}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
<span class="badge{{if eq .Review.Type 1}} bg-green text-white{{else if eq .Review.Type 3}} bg-red text-white{{end}}">{{svg (printf "octicon-%s" .Review.Type.Icon)}}</span>
|
<span class="badge{{if eq .Review.Type 1}} gt-bg-green gt-text-white{{else if eq .Review.Type 3}} gt-bg-red gt-text-white{{end}}">{{svg (printf "octicon-%s" .Review.Type.Icon)}}</span>
|
||||||
<span class="text grey muted-links">
|
<span class="text grey muted-links">
|
||||||
{{if .OriginalAuthor}}
|
{{if .OriginalAuthor}}
|
||||||
<span class="text black">
|
<span class="text black">
|
||||||
@ -402,11 +402,11 @@
|
|||||||
{{if .Content}}
|
{{if .Content}}
|
||||||
<div class="timeline-item comment" id="{{.HashTag}}">
|
<div class="timeline-item comment" id="{{.HashTag}}">
|
||||||
<div class="content comment-container">
|
<div class="content comment-container">
|
||||||
<div class="ui top attached header comment-header df ac sb">
|
<div class="ui top attached header comment-header gt-df gt-ac gt-sb">
|
||||||
<div class="comment-header-left df ac">
|
<div class="comment-header-left gt-df gt-ac">
|
||||||
<span class="text grey muted-links">
|
<span class="text grey muted-links">
|
||||||
{{if .OriginalAuthor}}
|
{{if .OriginalAuthor}}
|
||||||
<span class="text black bold">
|
<span class="text black gt-bold">
|
||||||
{{svg (MigrationIcon $.Repository.GetOriginalURLHostname)}}
|
{{svg (MigrationIcon $.Repository.GetOriginalURLHostname)}}
|
||||||
{{.OriginalAuthor}}
|
{{.OriginalAuthor}}
|
||||||
</span>
|
</span>
|
||||||
@ -419,7 +419,7 @@
|
|||||||
{{$.locale.Tr "repo.issues.review.left_comment" | Safe}}
|
{{$.locale.Tr "repo.issues.review.left_comment" | Safe}}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="comment-header-right actions df ac">
|
<div class="comment-header-right actions gt-df gt-ac">
|
||||||
{{if (.ShowRole.HasRole "Poster")}}
|
{{if (.ShowRole.HasRole "Poster")}}
|
||||||
<div class="ui basic label">
|
<div class="ui basic label">
|
||||||
{{$.locale.Tr "repo.issues.poster"}}
|
{{$.locale.Tr "repo.issues.poster"}}
|
||||||
@ -470,31 +470,31 @@
|
|||||||
{{range $filename, $lines := .Review.CodeComments}}
|
{{range $filename, $lines := .Review.CodeComments}}
|
||||||
{{range $line, $comms := $lines}}
|
{{range $line, $comms := $lines}}
|
||||||
<div class="ui segments">
|
<div class="ui segments">
|
||||||
<div class="ui segment py-3 df ac sb">
|
<div class="ui segment gt-py-3 gt-df gt-ac gt-sb">
|
||||||
{{$invalid := (index $comms 0).Invalidated}}
|
{{$invalid := (index $comms 0).Invalidated}}
|
||||||
{{$resolved := (index $comms 0).IsResolved}}
|
{{$resolved := (index $comms 0).IsResolved}}
|
||||||
{{$resolveDoer := (index $comms 0).ResolveDoer}}
|
{{$resolveDoer := (index $comms 0).ResolveDoer}}
|
||||||
{{$isNotPending := (not (eq (index $comms 0).Review.Type 0))}}
|
{{$isNotPending := (not (eq (index $comms 0).Review.Type 0))}}
|
||||||
<div class="df ac">
|
<div class="gt-df gt-ac">
|
||||||
<a href="{{(index $comms 0).CodeCommentLink}}" class="file-comment ml-3 word-break">{{$filename}}</a>
|
<a href="{{(index $comms 0).CodeCommentLink}}" class="file-comment gt-ml-3 gt-word-break">{{$filename}}</a>
|
||||||
{{if $invalid}}
|
{{if $invalid}}
|
||||||
<span class="ui label basic small ml-3">
|
<span class="ui label basic small gt-ml-3">
|
||||||
{{$.locale.Tr "repo.issues.review.outdated"}}
|
{{$.locale.Tr "repo.issues.review.outdated"}}
|
||||||
</span>
|
</span>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
{{if or $invalid $resolved}}
|
{{if or $invalid $resolved}}
|
||||||
<button id="show-outdated-{{(index $comms 0).ID}}" data-comment="{{(index $comms 0).ID}}" class="{{if not $resolved}}hide {{end}}ui compact right labeled button show-outdated df ac">
|
<button id="show-outdated-{{(index $comms 0).ID}}" data-comment="{{(index $comms 0).ID}}" class="{{if not $resolved}}hide {{end}}ui compact right labeled button show-outdated gt-df gt-ac">
|
||||||
{{svg "octicon-unfold" 16 "mr-3"}}
|
{{svg "octicon-unfold" 16 "gt-mr-3"}}
|
||||||
{{if $resolved}}
|
{{if $resolved}}
|
||||||
{{$.locale.Tr "repo.issues.review.show_resolved"}}
|
{{$.locale.Tr "repo.issues.review.show_resolved"}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{$.locale.Tr "repo.issues.review.show_outdated"}}
|
{{$.locale.Tr "repo.issues.review.show_outdated"}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</button>
|
</button>
|
||||||
<button id="hide-outdated-{{(index $comms 0).ID}}" data-comment="{{(index $comms 0).ID}}" class="{{if $resolved}}hide {{end}}ui compact right labeled button hide-outdated df ac">
|
<button id="hide-outdated-{{(index $comms 0).ID}}" data-comment="{{(index $comms 0).ID}}" class="{{if $resolved}}hide {{end}}ui compact right labeled button hide-outdated gt-df gt-ac">
|
||||||
{{svg "octicon-fold" 16 "mr-3"}}
|
{{svg "octicon-fold" 16 "gt-mr-3"}}
|
||||||
{{if $resolved}}
|
{{if $resolved}}
|
||||||
{{$.locale.Tr "repo.issues.review.hide_resolved"}}
|
{{$.locale.Tr "repo.issues.review.hide_resolved"}}
|
||||||
{{else}}
|
{{else}}
|
||||||
@ -520,13 +520,13 @@
|
|||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
<div id="code-comments-{{(index $comms 0).ID}}" class="comment-code-cloud ui segment{{if $resolved}} hide{{end}}">
|
<div id="code-comments-{{(index $comms 0).ID}}" class="comment-code-cloud ui segment{{if $resolved}} hide{{end}}">
|
||||||
<div class="ui comments mb-0">
|
<div class="ui comments gt-mb-0">
|
||||||
{{range $comms}}
|
{{range $comms}}
|
||||||
{{$createdSubStr:= TimeSinceUnix .CreatedUnix $.locale}}
|
{{$createdSubStr:= TimeSinceUnix .CreatedUnix $.locale}}
|
||||||
<div class="comment code-comment pb-4" id="{{.HashTag}}">
|
<div class="comment code-comment gt-pb-4" id="{{.HashTag}}">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<div class="header comment-header">
|
<div class="header comment-header">
|
||||||
<div class="comment-header-left df ac">
|
<div class="comment-header-left gt-df gt-ac">
|
||||||
{{if not .OriginalAuthor}}
|
{{if not .OriginalAuthor}}
|
||||||
<a class="avatar">
|
<a class="avatar">
|
||||||
{{avatar .Poster}}
|
{{avatar .Poster}}
|
||||||
@ -534,7 +534,7 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
<span class="text grey muted-links">
|
<span class="text grey muted-links">
|
||||||
{{if .OriginalAuthor}}
|
{{if .OriginalAuthor}}
|
||||||
<span class="text black bold">
|
<span class="text black gt-bold">
|
||||||
{{svg (MigrationIcon $.Repository.GetOriginalURLHostname)}}
|
{{svg (MigrationIcon $.Repository.GetOriginalURLHostname)}}
|
||||||
{{.OriginalAuthor}}
|
{{.OriginalAuthor}}
|
||||||
</span>
|
</span>
|
||||||
@ -546,7 +546,7 @@
|
|||||||
{{$.locale.Tr "repo.issues.commented_at" (.HashTag|Escape) $createdSubStr | Safe}}
|
{{$.locale.Tr "repo.issues.commented_at" (.HashTag|Escape) $createdSubStr | Safe}}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="comment-header-right actions df ac">
|
<div class="comment-header-right actions gt-df gt-ac">
|
||||||
{{if (.ShowRole.HasRole "Poster")}}
|
{{if (.ShowRole.HasRole "Poster")}}
|
||||||
<div class="ui basic label">
|
<div class="ui basic label">
|
||||||
{{$.locale.Tr "repo.issues.poster"}}
|
{{$.locale.Tr "repo.issues.poster"}}
|
||||||
@ -589,11 +589,11 @@
|
|||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div class="code-comment-buttons df ac fw mt-3 mb-2 mx-3">
|
<div class="code-comment-buttons gt-df gt-ac gt-fw gt-mt-3 gt-mb-2 gt-mx-3">
|
||||||
<div class="f1">
|
<div class="gt-f1">
|
||||||
{{if $resolved}}
|
{{if $resolved}}
|
||||||
<div class="ui grey text">
|
<div class="ui grey text">
|
||||||
{{svg "octicon-check" 16 "mr-2"}}
|
{{svg "octicon-check" 16 "gt-mr-2"}}
|
||||||
<b>{{$resolveDoer.Name}}</b> {{$.locale.Tr "repo.issues.review.resolved_by"}}
|
<b>{{$resolveDoer.Name}}</b> {{$.locale.Tr "repo.issues.review.resolved_by"}}
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -609,8 +609,8 @@
|
|||||||
</button>
|
</button>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if and $.SignedUserID (not $.Repository.IsArchived)}}
|
{{if and $.SignedUserID (not $.Repository.IsArchived)}}
|
||||||
<button class="comment-form-reply ui green tiny labeled icon button ml-2 mr-0">
|
<button class="comment-form-reply ui green tiny labeled icon button gt-ml-2 gt-mr-0">
|
||||||
{{svg "octicon-reply" 16 "reply icon mr-2"}}{{$.locale.Tr "repo.diff.comment.reply"}}
|
{{svg "octicon-reply" 16 "reply icon gt-mr-2"}}{{$.locale.Tr "repo.diff.comment.reply"}}
|
||||||
</button>
|
</button>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
|
@ -177,7 +177,7 @@
|
|||||||
{{$.locale.Tr "repo.pulls.data_broken"}}
|
{{$.locale.Tr "repo.pulls.data_broken"}}
|
||||||
</div>
|
</div>
|
||||||
{{else if .IsPullWorkInProgress}}
|
{{else if .IsPullWorkInProgress}}
|
||||||
<div class="item toggle-wip df ac sb" data-title="{{.Issue.Title}}" data-wip-prefix="{{(.WorkInProgressPrefix|Escape)}}" data-update-url="{{.Issue.Link}}/title">
|
<div class="item toggle-wip gt-df gt-ac gt-sb" data-title="{{.Issue.Title}}" data-wip-prefix="{{(.WorkInProgressPrefix|Escape)}}" data-update-url="{{.Issue.Link}}/title">
|
||||||
<div>
|
<div>
|
||||||
<i class="icon icon-octicon">{{svg "octicon-x"}}</i>
|
<i class="icon icon-octicon">{{svg "octicon-x"}}</i>
|
||||||
{{$.locale.Tr "repo.pulls.cannot_merge_work_in_progress"}}
|
{{$.locale.Tr "repo.pulls.cannot_merge_work_in_progress"}}
|
||||||
@ -333,7 +333,7 @@
|
|||||||
'hasPendingPullRequestMergeTip': {{$hasPendingPullRequestMergeTip}},
|
'hasPendingPullRequestMergeTip': {{$hasPendingPullRequestMergeTip}},
|
||||||
};
|
};
|
||||||
|
|
||||||
const generalHideAutoMerge = mergeForm.canMergeNow && mergeForm.allOverridableChecksOk; // if this PR can be merged now, then hide the auto merge
|
const generalHideAutoMerge = mergeForm.canMergeNow && mergeForm.allOverridableChecksOk; // if this pr can be merged now, then hide the auto merge
|
||||||
mergeForm['mergeStyles'] = [
|
mergeForm['mergeStyles'] = [
|
||||||
{
|
{
|
||||||
'name': 'merge',
|
'name': 'merge',
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<div class="instruct-toggle mt-3"> {{$.locale.Tr "repo.pulls.merge_instruction_hint" | Safe}} </div>
|
<div class="instruct-toggle gt-mt-3"> {{$.locale.Tr "repo.pulls.merge_instruction_hint" | Safe}} </div>
|
||||||
<div class="instruct-content" style="display:none">
|
<div class="instruct-content" style="display:none">
|
||||||
<div class="ui divider"></div>
|
<div class="ui divider"></div>
|
||||||
<div><h3 class="di">{{$.locale.Tr "step1"}} </h3>{{$.locale.Tr "repo.pulls.merge_instruction_step1_desc"}}</div>
|
<div><h3 class="gt-di">{{$.locale.Tr "step1"}} </h3>{{$.locale.Tr "repo.pulls.merge_instruction_step1_desc"}}</div>
|
||||||
<div class="ui secondary segment">
|
<div class="ui secondary segment">
|
||||||
{{if eq $.Issue.PullRequest.Flow 0}}
|
{{if eq $.Issue.PullRequest.Flow 0}}
|
||||||
<div>git checkout -b {{if ne $.Issue.PullRequest.HeadRepo.ID $.Issue.PullRequest.BaseRepo.ID}}{{$.Issue.PullRequest.HeadRepo.OwnerName}}-{{end}}{{$.Issue.PullRequest.HeadBranch}} {{$.Issue.PullRequest.BaseBranch}}</div>
|
<div>git checkout -b {{if ne $.Issue.PullRequest.HeadRepo.ID $.Issue.PullRequest.BaseRepo.ID}}{{$.Issue.PullRequest.HeadRepo.OwnerName}}-{{end}}{{$.Issue.PullRequest.HeadBranch}} {{$.Issue.PullRequest.BaseBranch}}</div>
|
||||||
@ -11,7 +11,7 @@
|
|||||||
<div>git fetch origin {{$.Issue.PullRequest.GetGitRefName}}:{{$.Issue.PullRequest.HeadBranch}}</div>
|
<div>git fetch origin {{$.Issue.PullRequest.GetGitRefName}}:{{$.Issue.PullRequest.HeadBranch}}</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
<div><h3 class="di">{{$.locale.Tr "step2"}} </h3>{{$.locale.Tr "repo.pulls.merge_instruction_step2_desc"}}</div>
|
<div><h3 class="gt-di">{{$.locale.Tr "step2"}} </h3>{{$.locale.Tr "repo.pulls.merge_instruction_step2_desc"}}</div>
|
||||||
<div class="ui secondary segment">
|
<div class="ui secondary segment">
|
||||||
<div>git checkout {{$.Issue.PullRequest.BaseBranch}}</div>
|
<div>git checkout {{$.Issue.PullRequest.BaseBranch}}</div>
|
||||||
<div>git merge --no-ff {{if ne $.Issue.PullRequest.HeadRepo.ID $.Issue.PullRequest.BaseRepo.ID}}{{$.Issue.PullRequest.HeadRepo.OwnerName}}-{{end}}{{$.Issue.PullRequest.HeadBranch}}</div>
|
<div>git merge --no-ff {{if ne $.Issue.PullRequest.HeadRepo.ID $.Issue.PullRequest.BaseRepo.ID}}{{$.Issue.PullRequest.HeadRepo.OwnerName}}-{{end}}{{$.Issue.PullRequest.HeadBranch}}</div>
|
||||||
|
@ -6,17 +6,17 @@
|
|||||||
|
|
||||||
<input id="reviewer_id" name="reviewer_id" type="hidden" value="{{.reviewer_id}}">
|
<input id="reviewer_id" name="reviewer_id" type="hidden" value="{{.reviewer_id}}">
|
||||||
<div class="ui {{if or (not .Reviewers) (not .CanChooseReviewer) .Repository.IsArchived}}disabled{{end}} floating jump select-reviewers-modify dropdown">
|
<div class="ui {{if or (not .Reviewers) (not .CanChooseReviewer) .Repository.IsArchived}}disabled{{end}} floating jump select-reviewers-modify dropdown">
|
||||||
<a class="text df ac muted">
|
<a class="text gt-df gt-ac muted">
|
||||||
<strong>{{.locale.Tr "repo.issues.review.reviewers"}}</strong>
|
<strong>{{.locale.Tr "repo.issues.review.reviewers"}}</strong>
|
||||||
{{if and .CanChooseReviewer (not .Repository.IsArchived)}}
|
{{if and .CanChooseReviewer (not .Repository.IsArchived)}}
|
||||||
{{svg "octicon-gear" 16 "ml-2"}}
|
{{svg "octicon-gear" 16 "gt-ml-2"}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</a>
|
</a>
|
||||||
<div class="filter menu" data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/request_review">
|
<div class="filter menu" data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/request_review">
|
||||||
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_reviewer_title"}}</div>
|
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_reviewer_title"}}</div>
|
||||||
{{if .Reviewers}}
|
{{if .Reviewers}}
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_reviewers"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_reviewers"}}">
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -26,7 +26,7 @@
|
|||||||
<a class="{{if not .CanChange}}ui tooltip{{end}} item {{if .Checked}} checked {{end}} {{if not .CanChange}}ban-change{{end}}" href="#" data-id="{{.ItemID}}" data-id-selector="#review_request_{{.ItemID}}" {{if not .CanChange}} data-content="{{$.locale.Tr "repo.issues.remove_request_review_block"}}"{{end}}>
|
<a class="{{if not .CanChange}}ui tooltip{{end}} item {{if .Checked}} checked {{end}} {{if not .CanChange}}ban-change{{end}}" href="#" data-id="{{.ItemID}}" data-id-selector="#review_request_{{.ItemID}}" {{if not .CanChange}} data-content="{{$.locale.Tr "repo.issues.remove_request_review_block"}}"{{end}}>
|
||||||
<span class="octicon-check {{if not .Checked}}invisible{{end}}">{{svg "octicon-check"}}</span>
|
<span class="octicon-check {{if not .Checked}}invisible{{end}}">{{svg "octicon-check"}}</span>
|
||||||
<span class="text">
|
<span class="text">
|
||||||
{{avatar .User 28 "mr-3"}}
|
{{avatar .User 28 "gt-mr-3"}}
|
||||||
{{.User.GetDisplayName}}
|
{{.User.GetDisplayName}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
@ -40,7 +40,7 @@
|
|||||||
<a class="{{if not .CanChange}}ui tooltip{{end}} item {{if .Checked}} checked {{end}} {{if not .CanChange}}ban-change{{end}}" href="#" data-id="{{.ItemID}}" data-id-selector="#review_request_team_{{.Team.ID}}" {{if not .CanChange}} data-content="{{$.locale.Tr "repo.issues.remove_request_review_block"}}"{{end}}>
|
<a class="{{if not .CanChange}}ui tooltip{{end}} item {{if .Checked}} checked {{end}} {{if not .CanChange}}ban-change{{end}}" href="#" data-id="{{.ItemID}}" data-id-selector="#review_request_team_{{.Team.ID}}" {{if not .CanChange}} data-content="{{$.locale.Tr "repo.issues.remove_request_review_block"}}"{{end}}>
|
||||||
<span class="octicon-check {{if not .Checked}}invisible{{end}}">{{svg "octicon-check" 16}}</span>
|
<span class="octicon-check {{if not .Checked}}invisible{{end}}">{{svg "octicon-check" 16}}</span>
|
||||||
<span class="text">
|
<span class="text">
|
||||||
{{svg "octicon-people" 16 "ml-4 mr-2"}}{{$.Issue.Repo.OwnerName}}/{{.Team.Name}}
|
{{svg "octicon-people" 16 "gt-ml-4 gt-mr-2"}}{{$.Issue.Repo.OwnerName}}/{{.Team.Name}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -53,10 +53,10 @@
|
|||||||
<span class="no-select item {{if or .OriginalReviews .PullReviewers}}hide{{end}}">{{.locale.Tr "repo.issues.new.no_reviewers"}}</span>
|
<span class="no-select item {{if or .OriginalReviews .PullReviewers}}hide{{end}}">{{.locale.Tr "repo.issues.new.no_reviewers"}}</span>
|
||||||
<div class="selected">
|
<div class="selected">
|
||||||
{{range .PullReviewers}}
|
{{range .PullReviewers}}
|
||||||
<div class="item mb-2">
|
<div class="item gt-mb-2">
|
||||||
{{if .User}}
|
{{if .User}}
|
||||||
<a class="muted sidebar-item-link" href="{{.User.HomeLink}}">
|
<a class="muted sidebar-item-link" href="{{.User.HomeLink}}">
|
||||||
{{avatar .User 28 "mr-3"}}
|
{{avatar .User 28 "gt-mr-3"}}
|
||||||
{{.User.GetDisplayName}}
|
{{.User.GetDisplayName}}
|
||||||
</a>
|
</a>
|
||||||
{{else if .Team}}
|
{{else if .Team}}
|
||||||
@ -107,17 +107,17 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
|
|
||||||
<div class="ui {{if or (not .HasIssuesOrPullsWritePermission) .Repository.IsArchived}}disabled{{end}} floating jump select-label dropdown">
|
<div class="ui {{if or (not .HasIssuesOrPullsWritePermission) .Repository.IsArchived}}disabled{{end}} floating jump select-label dropdown">
|
||||||
<a class="text df ac muted">
|
<a class="text gt-df gt-ac muted">
|
||||||
<strong>{{.locale.Tr "repo.issues.new.labels"}}</strong>
|
<strong>{{.locale.Tr "repo.issues.new.labels"}}</strong>
|
||||||
{{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
|
{{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
|
||||||
{{svg "octicon-gear" 16 "ml-2"}}
|
{{svg "octicon-gear" 16 "gt-ml-2"}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</a>
|
</a>
|
||||||
<div class="filter menu" data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/labels">
|
<div class="filter menu" data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/labels">
|
||||||
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_labels_title"}}</div>
|
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_labels_title"}}</div>
|
||||||
{{if or .Labels .OrgLabels}}
|
{{if or .Labels .OrgLabels}}
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_labels"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_labels"}}">
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -142,17 +142,17 @@
|
|||||||
<div class="ui divider"></div>
|
<div class="ui divider"></div>
|
||||||
|
|
||||||
<div class="ui {{if or (not .HasIssuesOrPullsWritePermission) .Repository.IsArchived}}disabled{{end}} floating jump select-milestone dropdown">
|
<div class="ui {{if or (not .HasIssuesOrPullsWritePermission) .Repository.IsArchived}}disabled{{end}} floating jump select-milestone dropdown">
|
||||||
<a class="text df ac muted">
|
<a class="text gt-df gt-ac muted">
|
||||||
<strong>{{.locale.Tr "repo.issues.new.milestone"}}</strong>
|
<strong>{{.locale.Tr "repo.issues.new.milestone"}}</strong>
|
||||||
{{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
|
{{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
|
||||||
{{svg "octicon-gear" 16 "ml-2"}}
|
{{svg "octicon-gear" 16 "gt-ml-2"}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</a>
|
</a>
|
||||||
<div class="menu" data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/milestone">
|
<div class="menu" data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/milestone">
|
||||||
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_milestone_title"}}</div>
|
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_milestone_title"}}</div>
|
||||||
{{if or .OpenMilestones .ClosedMilestones}}
|
{{if or .OpenMilestones .ClosedMilestones}}
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_milestones"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_milestones"}}">
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -169,7 +169,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .OpenMilestones}}
|
{{range .OpenMilestones}}
|
||||||
<a class="item" data-id="{{.ID}}" data-href="{{$.RepoLink}}/issues?milestone={{.ID}}">
|
<a class="item" data-id="{{.ID}}" data-href="{{$.RepoLink}}/issues?milestone={{.ID}}">
|
||||||
{{svg "octicon-milestone" 16 "mr-2"}}
|
{{svg "octicon-milestone" 16 "gt-mr-2"}}
|
||||||
{{.Name}}
|
{{.Name}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -181,7 +181,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .ClosedMilestones}}
|
{{range .ClosedMilestones}}
|
||||||
<a class="item" data-id="{{.ID}}" data-href="{{$.RepoLink}}/issues?milestone={{.ID}}">
|
<a class="item" data-id="{{.ID}}" data-href="{{$.RepoLink}}/issues?milestone={{.ID}}">
|
||||||
{{svg "octicon-milestone" 16 "mr-2"}}
|
{{svg "octicon-milestone" 16 "gt-mr-2"}}
|
||||||
{{.Name}}
|
{{.Name}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -194,7 +194,7 @@
|
|||||||
<div class="selected">
|
<div class="selected">
|
||||||
{{if .Issue.Milestone}}
|
{{if .Issue.Milestone}}
|
||||||
<a class="item muted sidebar-item-link" href="{{.RepoLink}}/milestone/{{.Issue.Milestone.ID}}">
|
<a class="item muted sidebar-item-link" href="{{.RepoLink}}/milestone/{{.Issue.Milestone.ID}}">
|
||||||
{{svg "octicon-milestone" 18 "mr-3"}}
|
{{svg "octicon-milestone" 18 "gt-mr-3"}}
|
||||||
{{.Issue.Milestone.Name}}
|
{{.Issue.Milestone.Name}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -205,17 +205,17 @@
|
|||||||
<div class="ui divider"></div>
|
<div class="ui divider"></div>
|
||||||
|
|
||||||
<div class="ui {{if or (not .HasIssuesOrPullsWritePermission) .Repository.IsArchived}}disabled{{end}} floating jump select-project dropdown">
|
<div class="ui {{if or (not .HasIssuesOrPullsWritePermission) .Repository.IsArchived}}disabled{{end}} floating jump select-project dropdown">
|
||||||
<a class="text df ac muted">
|
<a class="text gt-df gt-ac muted">
|
||||||
<strong>{{.locale.Tr "repo.issues.new.projects"}}</strong>
|
<strong>{{.locale.Tr "repo.issues.new.projects"}}</strong>
|
||||||
{{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
|
{{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
|
||||||
{{svg "octicon-gear" 16 "ml-2"}}
|
{{svg "octicon-gear" 16 "gt-ml-2"}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</a>
|
</a>
|
||||||
<div class="menu" data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/projects">
|
<div class="menu" data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/projects">
|
||||||
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_project_title"}}</div>
|
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_project_title"}}</div>
|
||||||
{{if or .OpenProjects .ClosedProjects}}
|
{{if or .OpenProjects .ClosedProjects}}
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_projects"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_projects"}}">
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -227,7 +227,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .OpenProjects}}
|
{{range .OpenProjects}}
|
||||||
<a class="item muted sidebar-item-link" data-id="{{.ID}}" data-href="{{.Link}}">
|
<a class="item muted sidebar-item-link" data-id="{{.ID}}" data-href="{{.Link}}">
|
||||||
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "mr-3"}}{{else}}{{svg "octicon-project" 18 "mr-3"}}{{end}}
|
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "gt-mr-3"}}{{else}}{{svg "octicon-project" 18 "gt-mr-3"}}{{end}}
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -239,7 +239,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{{range .ClosedProjects}}
|
{{range .ClosedProjects}}
|
||||||
<a class="item muted sidebar-item-link" data-id="{{.ID}}" data-href="{{.Link}}">
|
<a class="item muted sidebar-item-link" data-id="{{.ID}}" data-href="{{.Link}}">
|
||||||
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "mr-3"}}{{else}}{{svg "octicon-project" 18 "mr-3"}}{{end}}
|
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "gt-mr-3"}}{{else}}{{svg "octicon-project" 18 "gt-mr-3"}}{{end}}
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -251,7 +251,7 @@
|
|||||||
<div class="selected">
|
<div class="selected">
|
||||||
{{if .Issue.ProjectID}}
|
{{if .Issue.ProjectID}}
|
||||||
<a class="item muted sidebar-item-link" href="{{.Issue.Project.Link}}">
|
<a class="item muted sidebar-item-link" href="{{.Issue.Project.Link}}">
|
||||||
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "mr-3"}}{{else}}{{svg "octicon-project" 18 "mr-3"}}{{end}}
|
{{if .IsOrganizationProject}}{{svg "octicon-project-symlink" 18 "gt-mr-3"}}{{else}}{{svg "octicon-project" 18 "gt-mr-3"}}{{end}}
|
||||||
{{.Issue.Project.Title}}
|
{{.Issue.Project.Title}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
@ -263,16 +263,16 @@
|
|||||||
|
|
||||||
<input id="assignee_id" name="assignee_id" type="hidden" value="{{.assignee_id}}">
|
<input id="assignee_id" name="assignee_id" type="hidden" value="{{.assignee_id}}">
|
||||||
<div class="ui {{if or (not .HasIssuesOrPullsWritePermission) .Repository.IsArchived}}disabled{{end}} floating jump select-assignees-modify dropdown">
|
<div class="ui {{if or (not .HasIssuesOrPullsWritePermission) .Repository.IsArchived}}disabled{{end}} floating jump select-assignees-modify dropdown">
|
||||||
<a class="text df ac muted">
|
<a class="text gt-df gt-ac muted">
|
||||||
<strong>{{.locale.Tr "repo.issues.new.assignees"}}</strong>
|
<strong>{{.locale.Tr "repo.issues.new.assignees"}}</strong>
|
||||||
{{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
|
{{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
|
||||||
{{svg "octicon-gear" 16 "ml-2"}}
|
{{svg "octicon-gear" 16 "gt-ml-2"}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</a>
|
</a>
|
||||||
<div class="filter menu" data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/assignee">
|
<div class="filter menu" data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/assignee">
|
||||||
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_assignees_title"}}</div>
|
<div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_assignees_title"}}</div>
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc">{{svg "octicon-search" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
|
||||||
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_assignees"}}">
|
<input type="text" placeholder="{{.locale.Tr "repo.issues.filter_assignees"}}">
|
||||||
</div>
|
</div>
|
||||||
<div class="no-select item">{{.locale.Tr "repo.issues.new.clear_assignees"}}</div>
|
<div class="no-select item">{{.locale.Tr "repo.issues.new.clear_assignees"}}</div>
|
||||||
@ -288,7 +288,7 @@
|
|||||||
{{end}}
|
{{end}}
|
||||||
<span class="octicon-check {{if not $checked}}invisible{{end}}">{{svg "octicon-check"}}</span>
|
<span class="octicon-check {{if not $checked}}invisible{{end}}">{{svg "octicon-check"}}</span>
|
||||||
<span class="text">
|
<span class="text">
|
||||||
{{avatar . 28 "mr-3"}}
|
{{avatar . 28 "gt-mr-3"}}
|
||||||
{{.GetDisplayName}}
|
{{.GetDisplayName}}
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
@ -301,7 +301,7 @@
|
|||||||
{{range .Issue.Assignees}}
|
{{range .Issue.Assignees}}
|
||||||
<div class="item">
|
<div class="item">
|
||||||
<a class="muted sidebar-item-link" href="{{$.RepoLink}}/{{if $.Issue.IsPull}}pulls{{else}}issues{{end}}?assignee={{.ID}}">
|
<a class="muted sidebar-item-link" href="{{$.RepoLink}}/{{if $.Issue.IsPull}}pulls{{else}}issues{{end}}?assignee={{.ID}}">
|
||||||
{{avatar . 28 "mr-3"}}
|
{{avatar . 28 "gt-mr-3"}}
|
||||||
{{.GetDisplayName}}
|
{{.GetDisplayName}}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
@ -313,10 +313,10 @@
|
|||||||
|
|
||||||
{{if .Participants}}
|
{{if .Participants}}
|
||||||
<span class="text"><strong>{{.locale.Tr "repo.issues.num_participants" .NumParticipants}}</strong></span>
|
<span class="text"><strong>{{.locale.Tr "repo.issues.num_participants" .NumParticipants}}</strong></span>
|
||||||
<div class="ui list df fw">
|
<div class="ui list gt-df gt-fw">
|
||||||
{{range .Participants}}
|
{{range .Participants}}
|
||||||
<a class="ui tooltip" {{if gt .ID 0}}href="{{.HomeLink}}"{{end}} data-content="{{.GetDisplayName}}" data-position="top center">
|
<a class="ui tooltip" {{if gt .ID 0}}href="{{.HomeLink}}"{{end}} data-content="{{.GetDisplayName}}" data-position="top center">
|
||||||
{{avatar . 28 "my-1 mr-2"}}
|
{{avatar . 28 "gt-my-1 gt-mr-2"}}
|
||||||
</a>
|
</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
@ -327,16 +327,16 @@
|
|||||||
|
|
||||||
<div class="ui watching">
|
<div class="ui watching">
|
||||||
<span class="text"><strong>{{.locale.Tr "notification.notifications"}}</strong></span>
|
<span class="text"><strong>{{.locale.Tr "notification.notifications"}}</strong></span>
|
||||||
<div class="mt-3">
|
<div class="gt-mt-3">
|
||||||
<form method="POST" action="{{.Issue.Link}}/watch">
|
<form method="POST" action="{{.Issue.Link}}/watch">
|
||||||
<input type="hidden" name="watch" value="{{if $.IssueWatch.IsWatching}}0{{else}}1{{end}}" />
|
<input type="hidden" name="watch" value="{{if $.IssueWatch.IsWatching}}0{{else}}1{{end}}" />
|
||||||
{{$.CsrfTokenHtml}}
|
{{$.CsrfTokenHtml}}
|
||||||
<button class="fluid ui button df jc">
|
<button class="fluid ui button gt-df gt-jc">
|
||||||
{{if $.IssueWatch.IsWatching}}
|
{{if $.IssueWatch.IsWatching}}
|
||||||
{{svg "octicon-mute" 16 "mr-3"}}
|
{{svg "octicon-mute" 16 "gt-mr-3"}}
|
||||||
{{.locale.Tr "repo.issues.unsubscribe"}}
|
{{.locale.Tr "repo.issues.unsubscribe"}}
|
||||||
{{else}}
|
{{else}}
|
||||||
{{svg "octicon-unmute" 16 "mr-3"}}
|
{{svg "octicon-unmute" 16 "gt-mr-3"}}
|
||||||
{{.locale.Tr "repo.issues.subscribe"}}
|
{{.locale.Tr "repo.issues.subscribe"}}
|
||||||
{{end}}
|
{{end}}
|
||||||
</button>
|
</button>
|
||||||
@ -349,7 +349,7 @@
|
|||||||
<div class="ui divider"></div>
|
<div class="ui divider"></div>
|
||||||
<div class="ui timetrack">
|
<div class="ui timetrack">
|
||||||
<span class="text"><strong>{{.locale.Tr "repo.issues.tracker"}}</strong></span>
|
<span class="text"><strong>{{.locale.Tr "repo.issues.tracker"}}</strong></span>
|
||||||
<div class="mt-3">
|
<div class="gt-mt-3">
|
||||||
<form method="POST" action="{{.Issue.Link}}/times/stopwatch/toggle" id="toggle_stopwatch_form">
|
<form method="POST" action="{{.Issue.Link}}/times/stopwatch/toggle" id="toggle_stopwatch_form">
|
||||||
{{$.CsrfTokenHtml}}
|
{{$.CsrfTokenHtml}}
|
||||||
</form>
|
</form>
|
||||||
@ -358,7 +358,7 @@
|
|||||||
</form>
|
</form>
|
||||||
{{if $.IsStopwatchRunning}}
|
{{if $.IsStopwatchRunning}}
|
||||||
<button class="ui fluid button issue-stop-time">{{.locale.Tr "repo.issues.stop_tracking"}}</button>
|
<button class="ui fluid button issue-stop-time">{{.locale.Tr "repo.issues.stop_tracking"}}</button>
|
||||||
<button class="ui fluid negative button issue-cancel-time mt-3">{{.locale.Tr "repo.issues.cancel_tracking"}}</button>
|
<button class="ui fluid negative button issue-cancel-time gt-mt-3">{{.locale.Tr "repo.issues.cancel_tracking"}}</button>
|
||||||
{{else}}
|
{{else}}
|
||||||
{{if .HasUserStopwatch}}
|
{{if .HasUserStopwatch}}
|
||||||
<div class="ui warning message">
|
<div class="ui warning message">
|
||||||
@ -380,7 +380,7 @@
|
|||||||
<div class="ui red cancel button">{{.locale.Tr "repo.issues.add_time_cancel"}}</div>
|
<div class="ui red cancel button">{{.locale.Tr "repo.issues.add_time_cancel"}}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<button class="ui fluid button green tooltip issue-add-time mt-3" data-content='{{.locale.Tr "repo.issues.add_time"}}' data-position="top center">{{.locale.Tr "repo.issues.add_time_short"}}</button>
|
<button class="ui fluid button green tooltip issue-add-time gt-mt-3" data-content='{{.locale.Tr "repo.issues.add_time"}}' data-position="top center">{{.locale.Tr "repo.issues.add_time_short"}}</button>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -391,7 +391,7 @@
|
|||||||
<span class="text"><strong>{{.locale.Tr "repo.issues.time_spent_from_all_authors" ($.Issue.TotalTrackedTime | Sec2Time) | Safe}}</strong></span>
|
<span class="text"><strong>{{.locale.Tr "repo.issues.time_spent_from_all_authors" ($.Issue.TotalTrackedTime | Sec2Time) | Safe}}</strong></span>
|
||||||
<div>
|
<div>
|
||||||
{{range $user, $trackedtime := .WorkingUsers}}
|
{{range $user, $trackedtime := .WorkingUsers}}
|
||||||
<div class="comment mt-3">
|
<div class="comment gt-mt-3">
|
||||||
<a class="avatar">
|
<a class="avatar">
|
||||||
{{avatar $user}}
|
{{avatar $user}}
|
||||||
</a>
|
</a>
|
||||||
@ -417,14 +417,14 @@
|
|||||||
</div>
|
</div>
|
||||||
{{if ne .Issue.DeadlineUnix 0}}
|
{{if ne .Issue.DeadlineUnix 0}}
|
||||||
<p>
|
<p>
|
||||||
<div class="df sb ac">
|
<div class="gt-df gt-sb gt-ac">
|
||||||
<div class="due-date tooltip {{if .Issue.IsOverdue}}text red{{end}}" {{if .Issue.IsOverdue}}data-content="{{.locale.Tr "repo.issues.due_date_overdue"}}"{{end}}>
|
<div class="due-date tooltip {{if .Issue.IsOverdue}}text red{{end}}" {{if .Issue.IsOverdue}}data-content="{{.locale.Tr "repo.issues.due_date_overdue"}}"{{end}}>
|
||||||
{{svg "octicon-calendar" 16 "mr-3"}}
|
{{svg "octicon-calendar" 16 "gt-mr-3"}}
|
||||||
<time data-format="date" datetime="{{.Issue.DeadlineUnix.FormatDate}}">{{.Issue.DeadlineUnix.FormatDate}}</time>
|
<time data-format="date" datetime="{{.Issue.DeadlineUnix.FormatDate}}">{{.Issue.DeadlineUnix.FormatDate}}</time>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
{{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
|
{{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
|
||||||
<a class="issue-due-edit tooltip muted" data-content="{{$.locale.Tr "repo.issues.due_date_form_edit"}}">{{svg "octicon-pencil" 16 "mr-2"}}</a>
|
<a class="issue-due-edit tooltip muted" data-content="{{$.locale.Tr "repo.issues.due_date_form_edit"}}">{{svg "octicon-pencil" 16 "gt-mr-2"}}</a>
|
||||||
<a class="issue-due-remove tooltip muted" data-content="{{$.locale.Tr "repo.issues.due_date_form_remove"}}">{{svg "octicon-trash"}}</a>
|
<a class="issue-due-remove tooltip muted" data-content="{{$.locale.Tr "repo.issues.due_date_form_remove"}}">{{svg "octicon-trash"}}</a>
|
||||||
{{end}}
|
{{end}}
|
||||||
</div>
|
</div>
|
||||||
@ -473,8 +473,8 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="ui relaxed divided list">
|
<div class="ui relaxed divided list">
|
||||||
{{range .BlockingDependencies}}
|
{{range .BlockingDependencies}}
|
||||||
<div class="item dependency{{if .Issue.IsClosed}} is-closed{{end}} df ac sb">
|
<div class="item dependency{{if .Issue.IsClosed}} is-closed{{end}} gt-df gt-ac gt-sb">
|
||||||
<div class="item-left df jc fc f1">
|
<div class="item-left gt-df gt-jc gt-fc gt-f1">
|
||||||
<a class="title tooltip" href="{{.Issue.Link}}" data-content="#{{.Issue.Index}} {{.Issue.Title | RenderEmoji}}">
|
<a class="title tooltip" href="{{.Issue.Link}}" data-content="#{{.Issue.Index}} {{.Issue.Title | RenderEmoji}}">
|
||||||
#{{.Issue.Index}} {{.Issue.Title | RenderEmoji}}
|
#{{.Issue.Index}} {{.Issue.Title | RenderEmoji}}
|
||||||
</a>
|
</a>
|
||||||
@ -482,7 +482,7 @@
|
|||||||
{{.Repository.OwnerName}}/{{.Repository.Name}}
|
{{.Repository.OwnerName}}/{{.Repository.Name}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item-right df ac">
|
<div class="item-right gt-df gt-ac">
|
||||||
{{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}}
|
{{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}}
|
||||||
<a class="delete-dependency-button tooltip ci muted" data-id="{{.Issue.ID}}" data-type="blocking" data-content="{{$.locale.Tr "repo.issues.dependency.remove_info"}}" data-inverted="">
|
<a class="delete-dependency-button tooltip ci muted" data-id="{{.Issue.ID}}" data-type="blocking" data-content="{{$.locale.Tr "repo.issues.dependency.remove_info"}}" data-inverted="">
|
||||||
{{svg "octicon-trash" 16}}
|
{{svg "octicon-trash" 16}}
|
||||||
@ -500,8 +500,8 @@
|
|||||||
</span>
|
</span>
|
||||||
<div class="ui relaxed divided list">
|
<div class="ui relaxed divided list">
|
||||||
{{range .BlockedByDependencies}}
|
{{range .BlockedByDependencies}}
|
||||||
<div class="item dependency{{if .Issue.IsClosed}} is-closed{{end}} df ac sb">
|
<div class="item dependency{{if .Issue.IsClosed}} is-closed{{end}} gt-df gt-ac gt-sb">
|
||||||
<div class="item-left df jc fc f1">
|
<div class="item-left gt-df gt-jc gt-fc gt-f1">
|
||||||
<a class="title tooltip" href="{{.Issue.Link}}" data-content="#{{.Issue.Index}} {{.Issue.Title | RenderEmoji}}">
|
<a class="title tooltip" href="{{.Issue.Link}}" data-content="#{{.Issue.Index}} {{.Issue.Title | RenderEmoji}}">
|
||||||
#{{.Issue.Index}} {{.Issue.Title | RenderEmoji}}
|
#{{.Issue.Index}} {{.Issue.Title | RenderEmoji}}
|
||||||
</a>
|
</a>
|
||||||
@ -509,7 +509,7 @@
|
|||||||
{{.Repository.OwnerName}}/{{.Repository.Name}}
|
{{.Repository.OwnerName}}/{{.Repository.Name}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item-right df ac">
|
<div class="item-right gt-df gt-ac">
|
||||||
{{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}}
|
{{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}}
|
||||||
<a class="delete-dependency-button tooltip ci muted" data-id="{{.Issue.ID}}" data-type="blockedBy" data-content="{{$.locale.Tr "repo.issues.dependency.remove_info"}}" data-inverted="">
|
<a class="delete-dependency-button tooltip ci muted" data-id="{{.Issue.ID}}" data-type="blockedBy" data-content="{{$.locale.Tr "repo.issues.dependency.remove_info"}}" data-inverted="">
|
||||||
{{svg "octicon-trash" 16}}
|
{{svg "octicon-trash" 16}}
|
||||||
@ -577,10 +577,10 @@
|
|||||||
|
|
||||||
<div class="ui divider"></div>
|
<div class="ui divider"></div>
|
||||||
<div class="ui equal width compact grid">
|
<div class="ui equal width compact grid">
|
||||||
<div class="row ac">
|
<div class="row gt-ac">
|
||||||
{{$issueReferenceLink := printf "%s#%d" .Issue.Repo.FullName .Issue.Index}}
|
{{$issueReferenceLink := printf "%s#%d" .Issue.Repo.FullName .Issue.Index}}
|
||||||
<span class="text column truncate">{{.locale.Tr "repo.issues.reference_link" $issueReferenceLink}}</span>
|
<span class="text column truncate">{{.locale.Tr "repo.issues.reference_link" $issueReferenceLink}}</span>
|
||||||
<button class="ui two wide button column p-3" data-clipboard-text="{{$issueReferenceLink}}">{{svg "octicon-copy" 14}}</button>
|
<button class="ui two wide button column gt-p-3" data-clipboard-text="{{$issueReferenceLink}}">{{svg "octicon-copy" 14}}</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -661,7 +661,7 @@
|
|||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<button class="fluid ui show-modal button negative mt-3" data-modal="#delete">
|
<button class="fluid ui show-modal button negative gt-mt-3" data-modal="#delete">
|
||||||
{{svg "octicon-trash"}}
|
{{svg "octicon-trash"}}
|
||||||
{{.locale.Tr "repo.issues.delete"}}
|
{{.locale.Tr "repo.issues.delete"}}
|
||||||
</button>
|
</button>
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="item-section-right">
|
<div class="item-section-right">
|
||||||
{{if and .UpdateAllowed .UpdateByRebaseAllowed}}
|
{{if and .UpdateAllowed .UpdateByRebaseAllowed}}
|
||||||
<div class="dib">
|
<div class="gt-dib">
|
||||||
<div class="ui buttons update-button">
|
<div class="ui buttons update-button">
|
||||||
<button class="ui button" data-do="{{.Link}}/update" data-redirect="{{.Link}}">
|
<button class="ui button" data-do="{{.Link}}/update" data-redirect="{{.Link}}">
|
||||||
<span class="button-text">
|
<span class="button-text">
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
<h1>
|
<h1>
|
||||||
<span id="issue-title">{{RenderIssueTitle $.Context .Issue.Title $.RepoLink $.Repository.ComposeMetas | RenderCodeBlock}}</span>
|
<span id="issue-title">{{RenderIssueTitle $.Context .Issue.Title $.RepoLink $.Repository.ComposeMetas | RenderCodeBlock}}</span>
|
||||||
<span class="index">#{{.Issue.Index}}</span>
|
<span class="index">#{{.Issue.Index}}</span>
|
||||||
<div id="edit-title-input" class="ui input ml-4" style="display: none">
|
<div id="edit-title-input" class="ui input gt-ml-4" style="display: none">
|
||||||
<input value="{{.Issue.Title}}" maxlength="255" autocomplete="off">
|
<input value="{{.Issue.Title}}" maxlength="255" autocomplete="off">
|
||||||
</div>
|
</div>
|
||||||
</h1>
|
</h1>
|
||||||
@ -75,7 +75,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<div class="ui icon search input">
|
<div class="ui icon search input">
|
||||||
<i class="icon df ac jc m-0">{{svg "octicon-filter" 16}}</i>
|
<i class="icon gt-df gt-ac gt-jc gt-m-0">{{svg "octicon-filter" 16}}</i>
|
||||||
<input name="search" placeholder="{{.locale.Tr "repo.pulls.filter_branch"}}...">
|
<input name="search" placeholder="{{.locale.Tr "repo.pulls.filter_branch"}}...">
|
||||||
</div>
|
</div>
|
||||||
<div class="scrolling menu" id="branch-select">
|
<div class="scrolling menu" id="branch-select">
|
||||||
|
@ -5,13 +5,13 @@
|
|||||||
{{template "repo/migrate/helper" .}}
|
{{template "repo/migrate/helper" .}}
|
||||||
<div class="ui three stackable cards">
|
<div class="ui three stackable cards">
|
||||||
{{range .Services}}
|
{{range .Services}}
|
||||||
<a class="ui card df ac" href="{{AppSubUrl}}/repo/migrate?service_type={{.}}&org={{$.Org}}&mirror={{$.Mirror}}">
|
<a class="ui card gt-df gt-ac" href="{{AppSubUrl}}/repo/migrate?service_type={{.}}&org={{$.Org}}&mirror={{$.Mirror}}">
|
||||||
{{svg (Printf "gitea-%s" .Name) 184}}
|
{{svg (Printf "gitea-%s" .Name) 184}}
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<div class="header tc">
|
<div class="header gt-tc">
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
</div>
|
</div>
|
||||||
<div class="description tc">
|
<div class="description gt-tc">
|
||||||
{{(Printf "repo.migrate.%s.description" .Name) | $.locale.Tr}}
|
{{(Printf "repo.migrate.%s.description" .Name) | $.locale.Tr}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -14,11 +14,11 @@
|
|||||||
{{template "base/alert" .}}
|
{{template "base/alert" .}}
|
||||||
<div class="ui compact tiny menu">
|
<div class="ui compact tiny menu">
|
||||||
<a class="item{{if not .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/projects?state=open">
|
<a class="item{{if not .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/projects?state=open">
|
||||||
{{svg "octicon-project" 16 "mr-3"}}
|
{{svg "octicon-project" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .OpenCount}} {{.locale.Tr "repo.issues.open_title"}}
|
{{JsPrettyNumber .OpenCount}} {{.locale.Tr "repo.issues.open_title"}}
|
||||||
</a>
|
</a>
|
||||||
<a class="item{{if .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/projects?state=closed">
|
<a class="item{{if .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/projects?state=closed">
|
||||||
{{svg "octicon-check" 16 "mr-3"}}
|
{{svg "octicon-check" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .ClosedCount}} {{.locale.Tr "repo.issues.closed_title"}}
|
{{JsPrettyNumber .ClosedCount}} {{.locale.Tr "repo.issues.closed_title"}}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
@ -47,9 +47,9 @@
|
|||||||
{{svg "octicon-clock"}} {{$.locale.Tr "repo.milestones.closed" $closedDate|Str2html}}
|
{{svg "octicon-clock"}} {{$.locale.Tr "repo.milestones.closed" $closedDate|Str2html}}
|
||||||
{{end}}
|
{{end}}
|
||||||
<span class="issue-stats">
|
<span class="issue-stats">
|
||||||
{{svg "octicon-issue-opened" 16 "mr-3"}}
|
{{svg "octicon-issue-opened" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .NumOpenIssues}} {{$.locale.Tr "repo.issues.open_title"}}
|
{{JsPrettyNumber .NumOpenIssues}} {{$.locale.Tr "repo.issues.open_title"}}
|
||||||
{{svg "octicon-check" 16 "mr-3"}}
|
{{svg "octicon-check" 16 "gt-mr-3"}}
|
||||||
{{JsPrettyNumber .NumClosedIssues}} {{$.locale.Tr "repo.issues.closed_title"}}
|
{{JsPrettyNumber .NumClosedIssues}} {{$.locale.Tr "repo.issues.closed_title"}}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user