diff options
author | Richard Mahn <richard_mahn@wycliffeassociates.org> | 2016-08-11 05:48:08 -0700 |
---|---|---|
committer | Unknwon <u@gogs.io> | 2016-08-14 23:52:24 -0700 |
commit | d0a0239bacf02eb004634dfe1bb0a3f7dfe5adb6 (patch) | |
tree | 8459045909d43af85df2afa34f785a0481ae0b9e /routers/repo/view.go | |
parent | 7e7613cdecf6ceaf97ac280ae98bb9541679963f (diff) | |
download | gitea-d0a0239bacf02eb004634dfe1bb0a3f7dfe5adb6.tar.gz gitea-d0a0239bacf02eb004634dfe1bb0a3f7dfe5adb6.zip |
Squashed commit of the following:
commit 0afcb843d7ffd596991c4885cab768273a6eb42c
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Sun Jul 31 17:13:29 2016 -0600
Removed Upload stats as the upload table is just a temporary table
commit 7ecd73ff5535612d79d471409173ee7f1fcfa157
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Sun Jul 31 08:42:41 2016 -0600
Fix for CodeMirror mode
commit c29b9ab531e2e7af0fb5db24dc17e51027dd1174
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Sun Jul 31 08:03:33 2016 -0600
Made tabbing in editor use spaces
commit 23af384c53206a8a40e11e45bf49d7a149c4adcd
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Sun Jul 31 07:56:46 2016 -0600
Fix for data-url
commit cfb8a97591cb6fc0a92e49563b7b764c524db0e9
Merge: 7fc8a89 991ce42
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Sun Jul 31 07:42:53 2016 -0600
Merge remote-tracking branch 'gogits/develop' into feature-create-and-edit-repo-file
Conflicts:
modules/bindata/bindata.go
public/js/gogs.js
commit 7fc8a89cb495478225b02d613e647f99a1489634
Merge: fd3d86c c03d040
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Sun Jul 31 07:40:00 2016 -0600
Merge branch 'feature-create-and-edit-repo-file' of github.com:richmahn/gogs into feature-create-and-edit-repo-file
commit fd3d86ca6bbc02cfda566a504ffd6b03db4f75ef
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Sun Jul 31 07:39:44 2016 -0600
Code cleanup
commit c03d0401c1049eeeccc32ab1f9c3303c130be5ee
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Fri Jul 29 15:38:23 2016 -0600
Code cleanup
commit 98e1206ccf9f9a4503c020e3a7830cf9f861dfae
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Thu Jul 28 18:36:01 2016 -0600
Code cleanup and fixes
commit c2895dc742f25f8412879c9fa15e18f27f42f194
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Thu Jul 28 18:24:04 2016 -0600
Fixes per Unknwon's requests
commit 6aa7e46b21ad4c96e562daa2eac26a8fb408f8ef
Merge: 889e9fa ad7ea88
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Thu Jul 28 17:13:43 2016 -0600
Merge remote-tracking branch 'gogits/develop' into feature-create-and-edit-repo-file
Conflicts:
modules/bindata/bindata.go
modules/setting/setting.go
commit 889e9faf1bd8559a4979c8f46005d488c1a234d4
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Fri Jul 22 14:09:18 2016 -0600
Fix in gogs.js
commit 47603edf223f147b114be65f3bd27bc1e88827a5
Merge: bb57912 cf85e9e
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Fri Jul 22 14:07:36 2016 -0600
Merge remote-tracking branch 'gogits/develop' into feature-create-and-edit-repo-file
Conflicts:
modules/bindata/bindata.go
public/js/gogs.js
commit bb5791255867a71c11a77b639db050ad09c597a4
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Fri Jul 22 14:02:18 2016 -0600
Update for using CodeMirror mode addon
commit d10d128c51039be19e2af9c66c63db66a9f2ec6d
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Tue Jul 19 16:12:57 2016 -0600
Update for Edit
commit 34a34982025144e3225e389f7849eb6273c1d576
Merge: fa1b752 1c7dcdd
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Tue Jul 19 11:52:02 2016 -0600
Merge remote-tracking branch 'gogits/develop' into feature-create-and-edit-repo-file
Conflicts:
modules/bindata/bindata.go
commit fa1b752be29cd455c5184ddac2ffe80b3489763e
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date: Fri Jul 15 18:35:42 2016 -0600
Feature for editing, creating, uploading and deleting files
Diffstat (limited to 'routers/repo/view.go')
-rw-r--r-- | routers/repo/view.go | 43 |
1 files changed, 42 insertions, 1 deletions
diff --git a/routers/repo/view.go b/routers/repo/view.go index e685597a55..08ee16df1a 100644 --- a/routers/repo/view.go +++ b/routers/repo/view.go @@ -24,6 +24,7 @@ import ( "github.com/gogits/gogs/modules/setting" "github.com/gogits/gogs/modules/template" "github.com/gogits/gogs/modules/template/highlight" + "strconv" ) const ( @@ -40,6 +41,7 @@ func Home(ctx *context.Context) { ctx.Data["Title"] = title ctx.Data["PageIsViewCode"] = true ctx.Data["RequireHighlightJS"] = true + ctx.Data["IsWriter"] = ctx.Repo.IsWriter() branchName := ctx.Repo.BranchName userName := ctx.Repo.Owner.Name @@ -49,6 +51,11 @@ func Home(ctx *context.Context) { branchLink := ctx.Repo.RepoLink + "/src/" + branchName treeLink := branchLink rawLink := ctx.Repo.RepoLink + "/raw/" + branchName + editLink := ctx.Repo.RepoLink + "/_edit/" + branchName + newFileLink := ctx.Repo.RepoLink + "/_new/" + branchName + deleteLink := ctx.Repo.RepoLink + "/delete/" + branchName + forkLink := setting.AppSubUrl + "/repo/fork/" + strconv.FormatInt(ctx.Repo.Repository.ID, 10) + uploadFileLink := ctx.Repo.RepoLink + "/upload/" + branchName // Get tree path treename := ctx.Repo.TreeName @@ -104,8 +111,10 @@ func Home(ctx *context.Context) { switch { case isPDFFile: ctx.Data["IsPDFFile"] = true + ctx.Data["FileEditLinkTooltip"] = ctx.Tr("repo.cannot_edit_binary_files") case isImageFile: ctx.Data["IsImageFile"] = true + ctx.Data["FileEditLinkTooltip"] = ctx.Tr("repo.cannot_edit_binary_files") case isTextFile: if blob.Size() >= setting.UI.MaxDisplayFileSize { ctx.Data["IsFileTooLarge"] = true @@ -114,8 +123,10 @@ func Home(ctx *context.Context) { d, _ := ioutil.ReadAll(dataRc) buf = append(buf, d...) readmeExist := markdown.IsMarkdownFile(blob.Name()) || markdown.IsReadmeFile(blob.Name()) + isMarkdown := readmeExist || markdown.IsMarkdownFile(blob.Name()) ctx.Data["ReadmeExist"] = readmeExist - if readmeExist { + ctx.Data["IsMarkdown"] = isMarkdown + if isMarkdown { ctx.Data["FileContent"] = string(markdown.Render(buf, path.Dir(treeLink), ctx.Repo.Repository.ComposeMetas())) } else { // Building code view blocks with line number on server side. @@ -143,6 +154,29 @@ func Home(ctx *context.Context) { ctx.Data["LineNums"] = gotemplate.HTML(output.String()) } } + if ctx.Repo.IsWriter() && ctx.Repo.IsViewBranch { + ctx.Data["FileEditLink"] = editLink + "/" + treename + ctx.Data["FileEditLinkTooltip"] = ctx.Tr("repo.edit_this_file") + } else { + if !ctx.Repo.IsViewBranch { + ctx.Data["FileEditLinkTooltip"] = ctx.Tr("repo.must_be_on_branch") + } else if !ctx.Repo.IsWriter() { + ctx.Data["FileEditLink"] = forkLink + ctx.Data["FileEditLinkTooltip"] = ctx.Tr("repo.fork_before_edit") + } + } + default: + ctx.Data["FileEditLinkTooltip"] = ctx.Tr("repo.cannot_edit_binary_files") + } + if ctx.Repo.IsWriter() && ctx.Repo.IsViewBranch { + ctx.Data["FileDeleteLink"] = deleteLink + "/" + treename + ctx.Data["FileDeleteLinkTooltip"] = ctx.Tr("repo.delete_this_file") + } else { + if !ctx.Repo.IsViewBranch { + ctx.Data["FileDeleteLinkTooltip"] = ctx.Tr("repo.must_be_on_branch") + } else if !ctx.Repo.IsWriter() { + ctx.Data["FileDeleteLinkTooltip"] = ctx.Tr("repo.must_be_writer") + } } } } else { @@ -200,6 +234,7 @@ func Home(ctx *context.Context) { buf = append(buf, d...) switch { case markdown.IsMarkdownFile(readmeFile.Name()): + ctx.Data["IsMarkdown"] = true buf = markdown.Render(buf, treeLink, ctx.Repo.Repository.ComposeMetas()) default: buf = bytes.Replace(buf, []byte("\n"), []byte(`<br>`), -1) @@ -220,6 +255,12 @@ func Home(ctx *context.Context) { } ctx.Data["LastCommit"] = lastCommit ctx.Data["LastCommitUser"] = models.ValidateCommitWithEmail(lastCommit) + if ctx.Repo.IsWriter() && ctx.Repo.IsViewBranch { + ctx.Data["NewFileLink"] = newFileLink + "/" + treename + if setting.UploadEnabled { + ctx.Data["UploadFileLink"] = uploadFileLink + "/" + treename + } + } } ctx.Data["Username"] = userName |