You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1575 lines
76 KiB

Oauth2 consumer (#679) * initial stuff for oauth2 login, fails on: * login button on the signIn page to start the OAuth2 flow and a callback for each provider Only GitHub is implemented for now * show login button only when the OAuth2 consumer is configured (and activated) * create macaron group for oauth2 urls * prevent net/http in modules (other then oauth2) * use a new data sessions oauth2 folder for storing the oauth2 session data * add missing 2FA when this is enabled on the user * add password option for OAuth2 user , for use with git over http and login to the GUI * add tip for registering a GitHub OAuth application * at startup of Gitea register all configured providers and also on adding/deleting of new providers * custom handling of errors in oauth2 request init + show better tip * add ExternalLoginUser model and migration script to add it to database * link a external account to an existing account (still need to handle wrong login and signup) and remove if user is removed * remove the linked external account from the user his settings * if user is unknown we allow him to register a new account or link it to some existing account * sign up with button on signin page (als change OAuth2Provider structure so we can store basic stuff about providers) * from gorilla/sessions docs: "Important Note: If you aren't using gorilla/mux, you need to wrap your handlers with context.ClearHandler as or else you will leak memory!" (we're using gorilla/sessions for storing oauth2 sessions) * use updated goth lib that now supports getting the OAuth2 user if the AccessToken is still valid instead of re-authenticating (prevent flooding the OAuth2 provider)
7 years ago
Oauth2 consumer (#679) * initial stuff for oauth2 login, fails on: * login button on the signIn page to start the OAuth2 flow and a callback for each provider Only GitHub is implemented for now * show login button only when the OAuth2 consumer is configured (and activated) * create macaron group for oauth2 urls * prevent net/http in modules (other then oauth2) * use a new data sessions oauth2 folder for storing the oauth2 session data * add missing 2FA when this is enabled on the user * add password option for OAuth2 user , for use with git over http and login to the GUI * add tip for registering a GitHub OAuth application * at startup of Gitea register all configured providers and also on adding/deleting of new providers * custom handling of errors in oauth2 request init + show better tip * add ExternalLoginUser model and migration script to add it to database * link a external account to an existing account (still need to handle wrong login and signup) and remove if user is removed * remove the linked external account from the user his settings * if user is unknown we allow him to register a new account or link it to some existing account * sign up with button on signin page (als change OAuth2Provider structure so we can store basic stuff about providers) * from gorilla/sessions docs: "Important Note: If you aren't using gorilla/mux, you need to wrap your handlers with context.ClearHandler as or else you will leak memory!" (we're using gorilla/sessions for storing oauth2 sessions) * use updated goth lib that now supports getting the OAuth2 user if the AccessToken is still valid instead of re-authenticating (prevent flooding the OAuth2 provider)
7 years ago
9 years ago
9 years ago
8 years ago
Git LFS support v2 (#122) * Import github.com/git-lfs/lfs-test-server as lfs module base Imported commit is 3968aac269a77b73924649b9412ae03f7ccd3198 Removed: Dockerfile CONTRIBUTING.md mgmt* script/ vendor/ kvlogger.go .dockerignore .gitignore README.md * Remove config, add JWT support from github.com/mgit-at/lfs-test-server Imported commit f0cdcc5a01599c5a955dc1bbf683bb4acecdba83 * Add LFS settings * Add LFS meta object model * Add LFS routes and initialization * Import github.com/dgrijalva/jwt-go into vendor/ * Adapt LFS module: handlers, routing, meta store * Move LFS routes to /user/repo/info/lfs/* * Add request header checks to LFS BatchHandler / PostHandler * Implement LFS basic authentication * Rework JWT secret generation / load * Implement LFS SSH token authentication with JWT Specification: https://github.com/github/git-lfs/tree/master/docs/api * Integrate LFS settings into install process * Remove LFS objects when repository is deleted Only removes objects from content store when deleted repo is the only referencing repository * Make LFS module stateless Fixes bug where LFS would not work after installation without restarting Gitea * Change 500 'Internal Server Error' to 400 'Bad Request' * Change sql query to xorm call * Remove unneeded type from LFS module * Change internal imports to code.gitea.io/gitea/ * Add Gitea authors copyright * Change basic auth realm to "gitea-lfs" * Add unique indexes to LFS model * Use xorm count function in LFS check on repository delete * Return io.ReadCloser from content store and close after usage * Add LFS info to runWeb() * Export LFS content store base path * LFS file download from UI * Work around git-lfs client issue with unauthenticated requests Returning a dummy Authorization header for unauthenticated requests lets git-lfs client skip asking for auth credentials See: https://github.com/github/git-lfs/issues/1088 * Fix unauthenticated UI downloads from public repositories * Authentication check order, Finish LFS file view logic * Ignore LFS hooks if installed for current OS user Fixes Gitea UI actions for repositories tracking LFS files. Checks for minimum needed git version by parsing the semantic version string. * Hide LFS metafile diff from commit view, marking as binary * Show LFS notice if file in commit view is tracked * Add notbefore/nbf JWT claim * Correct lint suggestions - comments for structs and functions - Add comments to LFS model - Function comment for GetRandomBytesAsBase64 - LFS server function comments and lint variable suggestion * Move secret generation code out of conditional Ensures no LFS code may run with an empty secret * Do not hand out JWT tokens if LFS server support is disabled
8 years ago
Add support for federated avatars (#3320) * Add support for federated avatars Fixes #3105 Removes avatar fetching duplication code Adds an "Enable Federated Avatar" checkbox in user settings (defaults to unchecked) Moves avatar settings all in the same form, making local and remote avatars mutually exclusive Renames UploadAvatarForm to AvatarForm as it's not anymore only for uploading * Run gofmt on all modified files * Move Avatar form in its own page * Add go-libravatar dependency to vendor/ dir Hopefully helps with accepting the contribution. See also #3214 * Revert "Add go-libravatar dependency to vendor/ dir" This reverts commit a8cb93ae640bbb90f7d25012fc257bda9fae9b82. * Make federated avatar setting a global configuration Removes the per-user setting * Move avatar handling back to base tool, disable federated avatar in offline mode * Format, handle error * Properly set fallback host * Use unsupported github.com mirror for importing go-libravatar * Remove comment showing life exists outside of github.com ... pity, but contribution would not be accepted otherwise * Use Combo for Get and Post methods over /avatar * FEDERATED_AVATAR -> ENABLE_FEDERATED_AVATAR * Fix persistance of federated avatar lookup checkbox at install time * Federated Avatars -> Enable Federated Avatars * Use len(string) == 0 instead of string == "" * Move import line where it belong See https://github.com/Unknwon/go-code-convention/blob/master/en-US/import_packages.md Pity the import url is still the unofficial one, but oh well... * Save a line (and waste much more expensive time) * Remove redundant parens * Remove an empty line * Remove empty lines * Reorder lines to make diff smaller * Remove another newline Unknwon review got me start a fight against newlines * Move DISABLE_GRAVATAR and ENABLE_FEDERATED_AVATAR after OFFLINE_MODE On re-reading the diff I figured what Unknwon meant here: https://github.com/gogits/gogs/pull/3320/files#r73741106 * Remove newlines that weren't there before my intervention
8 years ago
Feature: Timetracking (#2211) * Added comment's hashtag to url for mail notifications. * Added explanation to return statement + documentation. * Replacing in-line link generation with HTMLURL. (+gofmt) * Replaced action-based model with nil-based model. (+gofmt) * Replaced mailIssueActionToParticipants with mailIssueCommentToParticipants. * Updating comment for mailIssueCommentToParticipants * Added link to comment in "Dashboard" * Deleting feed entry if a comment is going to be deleted * Added migration * Added improved migration to add a CommentID column to action. * Added improved links to comments in feed entries. * Fixes #1956 by filtering for deleted comments that are referenced in actions. * Introducing "IsDeleted" column to action. * Adding design draft (not functional) * Adding database models for stopwatches and trackedtimes * See go-gitea/gitea#967 * Adding design draft (not functional) * Adding translations and improving design * Implementing stopwatch (for timetracking) * Make UI functional * Add hints in timeline for time tracking events * Implementing timetracking feature * Adding "Add time manual" option * Improved stopwatch * Created report of total spent time by user * Only showing total time spent if theire is something to show. * Adding license headers. * Improved error handling for "Add Time Manual" * Adding @sapks 's changes, refactoring * Adding API for feature tracking * Adding unit test * Adding DISABLE/ENABLE option to Repository settings page * Improving translations * Applying @sapk 's changes * Removing repo_unit and using IssuesSetting for disabling/enabling timetracker * Adding DEFAULT_ENABLE_TIMETRACKER to config, installation and admin menu * Improving documentation * Fixing vendor/ folder * Changing timtracking routes by adding subgroups /times and /times/stopwatch (Proposed by @lafriks ) * Restricting write access to timetracking based on the repo settings (Proposed by @lafriks ) * Fixed minor permissions bug. * Adding CanUseTimetracker and IsTimetrackerEnabled in ctx.Repo * Allow assignees and authors to track there time too. * Fixed some build-time-errors + logical errors. * Removing unused Get...ByID functions * Moving IsTimetrackerEnabled from context.Repository to models.Repository * Adding a seperate file for issue related repo functions * Adding license headers * Fixed GetUserByParams return 404 * Moving /users/:username/times to /repos/:username/:reponame/times/:username for security reasons * Adding /repos/:username/times to get all tracked times of the repo * Updating sdk-dependency * Updating swagger.v1.json * Adding warning if user has already a running stopwatch (auto-timetracker) * Replacing GetTrackedTimesBy... with GetTrackedTimes(options FindTrackedTimesOptions) * Changing code.gitea.io/sdk back to code.gitea.io/sdk * Correcting spelling mistake * Updating vendor.json * Changing GET stopwatch/toggle to POST stopwatch/toggle * Changing GET stopwatch/cancel to POST stopwatch/cancel * Added migration for stopwatches/timetracking * Fixed some access bugs for read-only users * Added default allow only contributors to track time value to config * Fixed migration by chaging x.Iterate to x.Find * Resorted imports * Moved Add Time Manually form to repo_form.go * Removed "Seconds" field from Add Time Manually * Resorted imports * Improved permission checking * Fixed some bugs * Added integration test * gofmt * Adding integration test by @lafriks * Added created_unix to comment fixtures * Using last event instead of a fixed event * Adding another integration test by @lafriks * Fixing bug Timetracker enabled causing error 500 at sidebar.tpl * Fixed a refactoring bug that resulted in hiding "HasUserStopwatch" warning. * Returning TrackedTime instead of AddTimeOption at AddTime. * Updating SDK from go-gitea/go-sdk#69 * Resetting Go-SDK back to default repository * Fixing test-vendor by changing ini back to original repository * Adding "tags" to swagger spec * govendor sync * Removed duplicate * Formatting templates * Adding IsTimetrackingEnabled checks to API * Improving translations / english texts * Improving documentation * Updating swagger spec * Fixing integration test caused be translation-changes * Removed encoding issues in local_en-US.ini. * "Added" copyright line * Moved unit.IssuesConfig().EnableTimetracker into a != nil check * Removed some other encoding issues in local_en-US.ini * Improved javascript by checking if data-context exists * Replaced manual comment creation with CreateComment * Removed unnecessary code * Improved error checking * Small cosmetic changes * Replaced int>string>duration parsing with int>duration parsing * Fixed encoding issues * Removed unused imports Signed-off-by: Jonas Franz <info@jonasfranz.software>
7 years ago
10 years ago
10 years ago
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
8 years ago
Add support for federated avatars (#3320) * Add support for federated avatars Fixes #3105 Removes avatar fetching duplication code Adds an "Enable Federated Avatar" checkbox in user settings (defaults to unchecked) Moves avatar settings all in the same form, making local and remote avatars mutually exclusive Renames UploadAvatarForm to AvatarForm as it's not anymore only for uploading * Run gofmt on all modified files * Move Avatar form in its own page * Add go-libravatar dependency to vendor/ dir Hopefully helps with accepting the contribution. See also #3214 * Revert "Add go-libravatar dependency to vendor/ dir" This reverts commit a8cb93ae640bbb90f7d25012fc257bda9fae9b82. * Make federated avatar setting a global configuration Removes the per-user setting * Move avatar handling back to base tool, disable federated avatar in offline mode * Format, handle error * Properly set fallback host * Use unsupported github.com mirror for importing go-libravatar * Remove comment showing life exists outside of github.com ... pity, but contribution would not be accepted otherwise * Use Combo for Get and Post methods over /avatar * FEDERATED_AVATAR -> ENABLE_FEDERATED_AVATAR * Fix persistance of federated avatar lookup checkbox at install time * Federated Avatars -> Enable Federated Avatars * Use len(string) == 0 instead of string == "" * Move import line where it belong See https://github.com/Unknwon/go-code-convention/blob/master/en-US/import_packages.md Pity the import url is still the unofficial one, but oh well... * Save a line (and waste much more expensive time) * Remove redundant parens * Remove an empty line * Remove empty lines * Reorder lines to make diff smaller * Remove another newline Unknwon review got me start a fight against newlines * Move DISABLE_GRAVATAR and ENABLE_FEDERATED_AVATAR after OFFLINE_MODE On re-reading the diff I figured what Unknwon meant here: https://github.com/gogits/gogs/pull/3320/files#r73741106 * Remove newlines that weren't there before my intervention
8 years ago
Oauth2 consumer (#679) * initial stuff for oauth2 login, fails on: * login button on the signIn page to start the OAuth2 flow and a callback for each provider Only GitHub is implemented for now * show login button only when the OAuth2 consumer is configured (and activated) * create macaron group for oauth2 urls * prevent net/http in modules (other then oauth2) * use a new data sessions oauth2 folder for storing the oauth2 session data * add missing 2FA when this is enabled on the user * add password option for OAuth2 user , for use with git over http and login to the GUI * add tip for registering a GitHub OAuth application * at startup of Gitea register all configured providers and also on adding/deleting of new providers * custom handling of errors in oauth2 request init + show better tip * add ExternalLoginUser model and migration script to add it to database * link a external account to an existing account (still need to handle wrong login and signup) and remove if user is removed * remove the linked external account from the user his settings * if user is unknown we allow him to register a new account or link it to some existing account * sign up with button on signin page (als change OAuth2Provider structure so we can store basic stuff about providers) * from gorilla/sessions docs: "Important Note: If you aren't using gorilla/mux, you need to wrap your handlers with context.ClearHandler as or else you will leak memory!" (we're using gorilla/sessions for storing oauth2 sessions) * use updated goth lib that now supports getting the OAuth2 user if the AccessToken is still valid instead of re-authenticating (prevent flooding the OAuth2 provider)
7 years ago
10 years ago
Add support for federated avatars (#3320) * Add support for federated avatars Fixes #3105 Removes avatar fetching duplication code Adds an "Enable Federated Avatar" checkbox in user settings (defaults to unchecked) Moves avatar settings all in the same form, making local and remote avatars mutually exclusive Renames UploadAvatarForm to AvatarForm as it's not anymore only for uploading * Run gofmt on all modified files * Move Avatar form in its own page * Add go-libravatar dependency to vendor/ dir Hopefully helps with accepting the contribution. See also #3214 * Revert "Add go-libravatar dependency to vendor/ dir" This reverts commit a8cb93ae640bbb90f7d25012fc257bda9fae9b82. * Make federated avatar setting a global configuration Removes the per-user setting * Move avatar handling back to base tool, disable federated avatar in offline mode * Format, handle error * Properly set fallback host * Use unsupported github.com mirror for importing go-libravatar * Remove comment showing life exists outside of github.com ... pity, but contribution would not be accepted otherwise * Use Combo for Get and Post methods over /avatar * FEDERATED_AVATAR -> ENABLE_FEDERATED_AVATAR * Fix persistance of federated avatar lookup checkbox at install time * Federated Avatars -> Enable Federated Avatars * Use len(string) == 0 instead of string == "" * Move import line where it belong See https://github.com/Unknwon/go-code-convention/blob/master/en-US/import_packages.md Pity the import url is still the unofficial one, but oh well... * Save a line (and waste much more expensive time) * Remove redundant parens * Remove an empty line * Remove empty lines * Reorder lines to make diff smaller * Remove another newline Unknwon review got me start a fight against newlines * Move DISABLE_GRAVATAR and ENABLE_FEDERATED_AVATAR after OFFLINE_MODE On re-reading the diff I figured what Unknwon meant here: https://github.com/gogits/gogs/pull/3320/files#r73741106 * Remove newlines that weren't there before my intervention
8 years ago
Oauth2 consumer (#679) * initial stuff for oauth2 login, fails on: * login button on the signIn page to start the OAuth2 flow and a callback for each provider Only GitHub is implemented for now * show login button only when the OAuth2 consumer is configured (and activated) * create macaron group for oauth2 urls * prevent net/http in modules (other then oauth2) * use a new data sessions oauth2 folder for storing the oauth2 session data * add missing 2FA when this is enabled on the user * add password option for OAuth2 user , for use with git over http and login to the GUI * add tip for registering a GitHub OAuth application * at startup of Gitea register all configured providers and also on adding/deleting of new providers * custom handling of errors in oauth2 request init + show better tip * add ExternalLoginUser model and migration script to add it to database * link a external account to an existing account (still need to handle wrong login and signup) and remove if user is removed * remove the linked external account from the user his settings * if user is unknown we allow him to register a new account or link it to some existing account * sign up with button on signin page (als change OAuth2Provider structure so we can store basic stuff about providers) * from gorilla/sessions docs: "Important Note: If you aren't using gorilla/mux, you need to wrap your handlers with context.ClearHandler as or else you will leak memory!" (we're using gorilla/sessions for storing oauth2 sessions) * use updated goth lib that now supports getting the OAuth2 user if the AccessToken is still valid instead of re-authenticating (prevent flooding the OAuth2 provider)
7 years ago
Oauth2 consumer (#679) * initial stuff for oauth2 login, fails on: * login button on the signIn page to start the OAuth2 flow and a callback for each provider Only GitHub is implemented for now * show login button only when the OAuth2 consumer is configured (and activated) * create macaron group for oauth2 urls * prevent net/http in modules (other then oauth2) * use a new data sessions oauth2 folder for storing the oauth2 session data * add missing 2FA when this is enabled on the user * add password option for OAuth2 user , for use with git over http and login to the GUI * add tip for registering a GitHub OAuth application * at startup of Gitea register all configured providers and also on adding/deleting of new providers * custom handling of errors in oauth2 request init + show better tip * add ExternalLoginUser model and migration script to add it to database * link a external account to an existing account (still need to handle wrong login and signup) and remove if user is removed * remove the linked external account from the user his settings * if user is unknown we allow him to register a new account or link it to some existing account * sign up with button on signin page (als change OAuth2Provider structure so we can store basic stuff about providers) * from gorilla/sessions docs: "Important Note: If you aren't using gorilla/mux, you need to wrap your handlers with context.ClearHandler as or else you will leak memory!" (we're using gorilla/sessions for storing oauth2 sessions) * use updated goth lib that now supports getting the OAuth2 user if the AccessToken is still valid instead of re-authenticating (prevent flooding the OAuth2 provider)
7 years ago
Oauth2 consumer (#679) * initial stuff for oauth2 login, fails on: * login button on the signIn page to start the OAuth2 flow and a callback for each provider Only GitHub is implemented for now * show login button only when the OAuth2 consumer is configured (and activated) * create macaron group for oauth2 urls * prevent net/http in modules (other then oauth2) * use a new data sessions oauth2 folder for storing the oauth2 session data * add missing 2FA when this is enabled on the user * add password option for OAuth2 user , for use with git over http and login to the GUI * add tip for registering a GitHub OAuth application * at startup of Gitea register all configured providers and also on adding/deleting of new providers * custom handling of errors in oauth2 request init + show better tip * add ExternalLoginUser model and migration script to add it to database * link a external account to an existing account (still need to handle wrong login and signup) and remove if user is removed * remove the linked external account from the user his settings * if user is unknown we allow him to register a new account or link it to some existing account * sign up with button on signin page (als change OAuth2Provider structure so we can store basic stuff about providers) * from gorilla/sessions docs: "Important Note: If you aren't using gorilla/mux, you need to wrap your handlers with context.ClearHandler as or else you will leak memory!" (we're using gorilla/sessions for storing oauth2 sessions) * use updated goth lib that now supports getting the OAuth2 user if the AccessToken is still valid instead of re-authenticating (prevent flooding the OAuth2 provider)
7 years ago
Git LFS support v2 (#122) * Import github.com/git-lfs/lfs-test-server as lfs module base Imported commit is 3968aac269a77b73924649b9412ae03f7ccd3198 Removed: Dockerfile CONTRIBUTING.md mgmt* script/ vendor/ kvlogger.go .dockerignore .gitignore README.md * Remove config, add JWT support from github.com/mgit-at/lfs-test-server Imported commit f0cdcc5a01599c5a955dc1bbf683bb4acecdba83 * Add LFS settings * Add LFS meta object model * Add LFS routes and initialization * Import github.com/dgrijalva/jwt-go into vendor/ * Adapt LFS module: handlers, routing, meta store * Move LFS routes to /user/repo/info/lfs/* * Add request header checks to LFS BatchHandler / PostHandler * Implement LFS basic authentication * Rework JWT secret generation / load * Implement LFS SSH token authentication with JWT Specification: https://github.com/github/git-lfs/tree/master/docs/api * Integrate LFS settings into install process * Remove LFS objects when repository is deleted Only removes objects from content store when deleted repo is the only referencing repository * Make LFS module stateless Fixes bug where LFS would not work after installation without restarting Gitea * Change 500 'Internal Server Error' to 400 'Bad Request' * Change sql query to xorm call * Remove unneeded type from LFS module * Change internal imports to code.gitea.io/gitea/ * Add Gitea authors copyright * Change basic auth realm to "gitea-lfs" * Add unique indexes to LFS model * Use xorm count function in LFS check on repository delete * Return io.ReadCloser from content store and close after usage * Add LFS info to runWeb() * Export LFS content store base path * LFS file download from UI * Work around git-lfs client issue with unauthenticated requests Returning a dummy Authorization header for unauthenticated requests lets git-lfs client skip asking for auth credentials See: https://github.com/github/git-lfs/issues/1088 * Fix unauthenticated UI downloads from public repositories * Authentication check order, Finish LFS file view logic * Ignore LFS hooks if installed for current OS user Fixes Gitea UI actions for repositories tracking LFS files. Checks for minimum needed git version by parsing the semantic version string. * Hide LFS metafile diff from commit view, marking as binary * Show LFS notice if file in commit view is tracked * Add notbefore/nbf JWT claim * Correct lint suggestions - comments for structs and functions - Add comments to LFS model - Function comment for GetRandomBytesAsBase64 - LFS server function comments and lint variable suggestion * Move secret generation code out of conditional Ensures no LFS code may run with an empty secret * Do not hand out JWT tokens if LFS server support is disabled
8 years ago
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
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
Feature: Timetracking (#2211) * Added comment's hashtag to url for mail notifications. * Added explanation to return statement + documentation. * Replacing in-line link generation with HTMLURL. (+gofmt) * Replaced action-based model with nil-based model. (+gofmt) * Replaced mailIssueActionToParticipants with mailIssueCommentToParticipants. * Updating comment for mailIssueCommentToParticipants * Added link to comment in "Dashboard" * Deleting feed entry if a comment is going to be deleted * Added migration * Added improved migration to add a CommentID column to action. * Added improved links to comments in feed entries. * Fixes #1956 by filtering for deleted comments that are referenced in actions. * Introducing "IsDeleted" column to action. * Adding design draft (not functional) * Adding database models for stopwatches and trackedtimes * See go-gitea/gitea#967 * Adding design draft (not functional) * Adding translations and improving design * Implementing stopwatch (for timetracking) * Make UI functional * Add hints in timeline for time tracking events * Implementing timetracking feature * Adding "Add time manual" option * Improved stopwatch * Created report of total spent time by user * Only showing total time spent if theire is something to show. * Adding license headers. * Improved error handling for "Add Time Manual" * Adding @sapks 's changes, refactoring * Adding API for feature tracking * Adding unit test * Adding DISABLE/ENABLE option to Repository settings page * Improving translations * Applying @sapk 's changes * Removing repo_unit and using IssuesSetting for disabling/enabling timetracker * Adding DEFAULT_ENABLE_TIMETRACKER to config, installation and admin menu * Improving documentation * Fixing vendor/ folder * Changing timtracking routes by adding subgroups /times and /times/stopwatch (Proposed by @lafriks ) * Restricting write access to timetracking based on the repo settings (Proposed by @lafriks ) * Fixed minor permissions bug. * Adding CanUseTimetracker and IsTimetrackerEnabled in ctx.Repo * Allow assignees and authors to track there time too. * Fixed some build-time-errors + logical errors. * Removing unused Get...ByID functions * Moving IsTimetrackerEnabled from context.Repository to models.Repository * Adding a seperate file for issue related repo functions * Adding license headers * Fixed GetUserByParams return 404 * Moving /users/:username/times to /repos/:username/:reponame/times/:username for security reasons * Adding /repos/:username/times to get all tracked times of the repo * Updating sdk-dependency * Updating swagger.v1.json * Adding warning if user has already a running stopwatch (auto-timetracker) * Replacing GetTrackedTimesBy... with GetTrackedTimes(options FindTrackedTimesOptions) * Changing code.gitea.io/sdk back to code.gitea.io/sdk * Correcting spelling mistake * Updating vendor.json * Changing GET stopwatch/toggle to POST stopwatch/toggle * Changing GET stopwatch/cancel to POST stopwatch/cancel * Added migration for stopwatches/timetracking * Fixed some access bugs for read-only users * Added default allow only contributors to track time value to config * Fixed migration by chaging x.Iterate to x.Find * Resorted imports * Moved Add Time Manually form to repo_form.go * Removed "Seconds" field from Add Time Manually * Resorted imports * Improved permission checking * Fixed some bugs * Added integration test * gofmt * Adding integration test by @lafriks * Added created_unix to comment fixtures * Using last event instead of a fixed event * Adding another integration test by @lafriks * Fixing bug Timetracker enabled causing error 500 at sidebar.tpl * Fixed a refactoring bug that resulted in hiding "HasUserStopwatch" warning. * Returning TrackedTime instead of AddTimeOption at AddTime. * Updating SDK from go-gitea/go-sdk#69 * Resetting Go-SDK back to default repository * Fixing test-vendor by changing ini back to original repository * Adding "tags" to swagger spec * govendor sync * Removed duplicate * Formatting templates * Adding IsTimetrackingEnabled checks to API * Improving translations / english texts * Improving documentation * Updating swagger spec * Fixing integration test caused be translation-changes * Removed encoding issues in local_en-US.ini. * "Added" copyright line * Moved unit.IssuesConfig().EnableTimetracker into a != nil check * Removed some other encoding issues in local_en-US.ini * Improved javascript by checking if data-context exists * Replaced manual comment creation with CreateComment * Removed unnecessary code * Improved error checking * Small cosmetic changes * Replaced int>string>duration parsing with int>duration parsing * Fixed encoding issues * Removed unused imports Signed-off-by: Jonas Franz <info@jonasfranz.software>
7 years ago
Feature: Timetracking (#2211) * Added comment's hashtag to url for mail notifications. * Added explanation to return statement + documentation. * Replacing in-line link generation with HTMLURL. (+gofmt) * Replaced action-based model with nil-based model. (+gofmt) * Replaced mailIssueActionToParticipants with mailIssueCommentToParticipants. * Updating comment for mailIssueCommentToParticipants * Added link to comment in "Dashboard" * Deleting feed entry if a comment is going to be deleted * Added migration * Added improved migration to add a CommentID column to action. * Added improved links to comments in feed entries. * Fixes #1956 by filtering for deleted comments that are referenced in actions. * Introducing "IsDeleted" column to action. * Adding design draft (not functional) * Adding database models for stopwatches and trackedtimes * See go-gitea/gitea#967 * Adding design draft (not functional) * Adding translations and improving design * Implementing stopwatch (for timetracking) * Make UI functional * Add hints in timeline for time tracking events * Implementing timetracking feature * Adding "Add time manual" option * Improved stopwatch * Created report of total spent time by user * Only showing total time spent if theire is something to show. * Adding license headers. * Improved error handling for "Add Time Manual" * Adding @sapks 's changes, refactoring * Adding API for feature tracking * Adding unit test * Adding DISABLE/ENABLE option to Repository settings page * Improving translations * Applying @sapk 's changes * Removing repo_unit and using IssuesSetting for disabling/enabling timetracker * Adding DEFAULT_ENABLE_TIMETRACKER to config, installation and admin menu * Improving documentation * Fixing vendor/ folder * Changing timtracking routes by adding subgroups /times and /times/stopwatch (Proposed by @lafriks ) * Restricting write access to timetracking based on the repo settings (Proposed by @lafriks ) * Fixed minor permissions bug. * Adding CanUseTimetracker and IsTimetrackerEnabled in ctx.Repo * Allow assignees and authors to track there time too. * Fixed some build-time-errors + logical errors. * Removing unused Get...ByID functions * Moving IsTimetrackerEnabled from context.Repository to models.Repository * Adding a seperate file for issue related repo functions * Adding license headers * Fixed GetUserByParams return 404 * Moving /users/:username/times to /repos/:username/:reponame/times/:username for security reasons * Adding /repos/:username/times to get all tracked times of the repo * Updating sdk-dependency * Updating swagger.v1.json * Adding warning if user has already a running stopwatch (auto-timetracker) * Replacing GetTrackedTimesBy... with GetTrackedTimes(options FindTrackedTimesOptions) * Changing code.gitea.io/sdk back to code.gitea.io/sdk * Correcting spelling mistake * Updating vendor.json * Changing GET stopwatch/toggle to POST stopwatch/toggle * Changing GET stopwatch/cancel to POST stopwatch/cancel * Added migration for stopwatches/timetracking * Fixed some access bugs for read-only users * Added default allow only contributors to track time value to config * Fixed migration by chaging x.Iterate to x.Find * Resorted imports * Moved Add Time Manually form to repo_form.go * Removed "Seconds" field from Add Time Manually * Resorted imports * Improved permission checking * Fixed some bugs * Added integration test * gofmt * Adding integration test by @lafriks * Added created_unix to comment fixtures * Using last event instead of a fixed event * Adding another integration test by @lafriks * Fixing bug Timetracker enabled causing error 500 at sidebar.tpl * Fixed a refactoring bug that resulted in hiding "HasUserStopwatch" warning. * Returning TrackedTime instead of AddTimeOption at AddTime. * Updating SDK from go-gitea/go-sdk#69 * Resetting Go-SDK back to default repository * Fixing test-vendor by changing ini back to original repository * Adding "tags" to swagger spec * govendor sync * Removed duplicate * Formatting templates * Adding IsTimetrackingEnabled checks to API * Improving translations / english texts * Improving documentation * Updating swagger spec * Fixing integration test caused be translation-changes * Removed encoding issues in local_en-US.ini. * "Added" copyright line * Moved unit.IssuesConfig().EnableTimetracker into a != nil check * Removed some other encoding issues in local_en-US.ini * Improved javascript by checking if data-context exists * Replaced manual comment creation with CreateComment * Removed unnecessary code * Improved error checking * Small cosmetic changes * Replaced int>string>duration parsing with int>duration parsing * Fixed encoding issues * Removed unused imports Signed-off-by: Jonas Franz <info@jonasfranz.software>
7 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
Feature: Timetracking (#2211) * Added comment's hashtag to url for mail notifications. * Added explanation to return statement + documentation. * Replacing in-line link generation with HTMLURL. (+gofmt) * Replaced action-based model with nil-based model. (+gofmt) * Replaced mailIssueActionToParticipants with mailIssueCommentToParticipants. * Updating comment for mailIssueCommentToParticipants * Added link to comment in "Dashboard" * Deleting feed entry if a comment is going to be deleted * Added migration * Added improved migration to add a CommentID column to action. * Added improved links to comments in feed entries. * Fixes #1956 by filtering for deleted comments that are referenced in actions. * Introducing "IsDeleted" column to action. * Adding design draft (not functional) * Adding database models for stopwatches and trackedtimes * See go-gitea/gitea#967 * Adding design draft (not functional) * Adding translations and improving design * Implementing stopwatch (for timetracking) * Make UI functional * Add hints in timeline for time tracking events * Implementing timetracking feature * Adding "Add time manual" option * Improved stopwatch * Created report of total spent time by user * Only showing total time spent if theire is something to show. * Adding license headers. * Improved error handling for "Add Time Manual" * Adding @sapks 's changes, refactoring * Adding API for feature tracking * Adding unit test * Adding DISABLE/ENABLE option to Repository settings page * Improving translations * Applying @sapk 's changes * Removing repo_unit and using IssuesSetting for disabling/enabling timetracker * Adding DEFAULT_ENABLE_TIMETRACKER to config, installation and admin menu * Improving documentation * Fixing vendor/ folder * Changing timtracking routes by adding subgroups /times and /times/stopwatch (Proposed by @lafriks ) * Restricting write access to timetracking based on the repo settings (Proposed by @lafriks ) * Fixed minor permissions bug. * Adding CanUseTimetracker and IsTimetrackerEnabled in ctx.Repo * Allow assignees and authors to track there time too. * Fixed some build-time-errors + logical errors. * Removing unused Get...ByID functions * Moving IsTimetrackerEnabled from context.Repository to models.Repository * Adding a seperate file for issue related repo functions * Adding license headers * Fixed GetUserByParams return 404 * Moving /users/:username/times to /repos/:username/:reponame/times/:username for security reasons * Adding /repos/:username/times to get all tracked times of the repo * Updating sdk-dependency * Updating swagger.v1.json * Adding warning if user has already a running stopwatch (auto-timetracker) * Replacing GetTrackedTimesBy... with GetTrackedTimes(options FindTrackedTimesOptions) * Changing code.gitea.io/sdk back to code.gitea.io/sdk * Correcting spelling mistake * Updating vendor.json * Changing GET stopwatch/toggle to POST stopwatch/toggle * Changing GET stopwatch/cancel to POST stopwatch/cancel * Added migration for stopwatches/timetracking * Fixed some access bugs for read-only users * Added default allow only contributors to track time value to config * Fixed migration by chaging x.Iterate to x.Find * Resorted imports * Moved Add Time Manually form to repo_form.go * Removed "Seconds" field from Add Time Manually * Resorted imports * Improved permission checking * Fixed some bugs * Added integration test * gofmt * Adding integration test by @lafriks * Added created_unix to comment fixtures * Using last event instead of a fixed event * Adding another integration test by @lafriks * Fixing bug Timetracker enabled causing error 500 at sidebar.tpl * Fixed a refactoring bug that resulted in hiding "HasUserStopwatch" warning. * Returning TrackedTime instead of AddTimeOption at AddTime. * Updating SDK from go-gitea/go-sdk#69 * Resetting Go-SDK back to default repository * Fixing test-vendor by changing ini back to original repository * Adding "tags" to swagger spec * govendor sync * Removed duplicate * Formatting templates * Adding IsTimetrackingEnabled checks to API * Improving translations / english texts * Improving documentation * Updating swagger spec * Fixing integration test caused be translation-changes * Removed encoding issues in local_en-US.ini. * "Added" copyright line * Moved unit.IssuesConfig().EnableTimetracker into a != nil check * Removed some other encoding issues in local_en-US.ini * Improved javascript by checking if data-context exists * Replaced manual comment creation with CreateComment * Removed unnecessary code * Improved error checking * Small cosmetic changes * Replaced int>string>duration parsing with int>duration parsing * Fixed encoding issues * Removed unused imports Signed-off-by: Jonas Franz <info@jonasfranz.software>
7 years ago
9 years ago
8 years ago
10 years ago
9 years ago
9 years ago
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
Oauth2 consumer (#679) * initial stuff for oauth2 login, fails on: * login button on the signIn page to start the OAuth2 flow and a callback for each provider Only GitHub is implemented for now * show login button only when the OAuth2 consumer is configured (and activated) * create macaron group for oauth2 urls * prevent net/http in modules (other then oauth2) * use a new data sessions oauth2 folder for storing the oauth2 session data * add missing 2FA when this is enabled on the user * add password option for OAuth2 user , for use with git over http and login to the GUI * add tip for registering a GitHub OAuth application * at startup of Gitea register all configured providers and also on adding/deleting of new providers * custom handling of errors in oauth2 request init + show better tip * add ExternalLoginUser model and migration script to add it to database * link a external account to an existing account (still need to handle wrong login and signup) and remove if user is removed * remove the linked external account from the user his settings * if user is unknown we allow him to register a new account or link it to some existing account * sign up with button on signin page (als change OAuth2Provider structure so we can store basic stuff about providers) * from gorilla/sessions docs: "Important Note: If you aren't using gorilla/mux, you need to wrap your handlers with context.ClearHandler as or else you will leak memory!" (we're using gorilla/sessions for storing oauth2 sessions) * use updated goth lib that now supports getting the OAuth2 user if the AccessToken is still valid instead of re-authenticating (prevent flooding the OAuth2 provider)
7 years ago
Git LFS support v2 (#122) * Import github.com/git-lfs/lfs-test-server as lfs module base Imported commit is 3968aac269a77b73924649b9412ae03f7ccd3198 Removed: Dockerfile CONTRIBUTING.md mgmt* script/ vendor/ kvlogger.go .dockerignore .gitignore README.md * Remove config, add JWT support from github.com/mgit-at/lfs-test-server Imported commit f0cdcc5a01599c5a955dc1bbf683bb4acecdba83 * Add LFS settings * Add LFS meta object model * Add LFS routes and initialization * Import github.com/dgrijalva/jwt-go into vendor/ * Adapt LFS module: handlers, routing, meta store * Move LFS routes to /user/repo/info/lfs/* * Add request header checks to LFS BatchHandler / PostHandler * Implement LFS basic authentication * Rework JWT secret generation / load * Implement LFS SSH token authentication with JWT Specification: https://github.com/github/git-lfs/tree/master/docs/api * Integrate LFS settings into install process * Remove LFS objects when repository is deleted Only removes objects from content store when deleted repo is the only referencing repository * Make LFS module stateless Fixes bug where LFS would not work after installation without restarting Gitea * Change 500 'Internal Server Error' to 400 'Bad Request' * Change sql query to xorm call * Remove unneeded type from LFS module * Change internal imports to code.gitea.io/gitea/ * Add Gitea authors copyright * Change basic auth realm to "gitea-lfs" * Add unique indexes to LFS model * Use xorm count function in LFS check on repository delete * Return io.ReadCloser from content store and close after usage * Add LFS info to runWeb() * Export LFS content store base path * LFS file download from UI * Work around git-lfs client issue with unauthenticated requests Returning a dummy Authorization header for unauthenticated requests lets git-lfs client skip asking for auth credentials See: https://github.com/github/git-lfs/issues/1088 * Fix unauthenticated UI downloads from public repositories * Authentication check order, Finish LFS file view logic * Ignore LFS hooks if installed for current OS user Fixes Gitea UI actions for repositories tracking LFS files. Checks for minimum needed git version by parsing the semantic version string. * Hide LFS metafile diff from commit view, marking as binary * Show LFS notice if file in commit view is tracked * Add notbefore/nbf JWT claim * Correct lint suggestions - comments for structs and functions - Add comments to LFS model - Function comment for GetRandomBytesAsBase64 - LFS server function comments and lint variable suggestion * Move secret generation code out of conditional Ensures no LFS code may run with an empty secret * Do not hand out JWT tokens if LFS server support is disabled
8 years ago
Feature: Timetracking (#2211) * Added comment's hashtag to url for mail notifications. * Added explanation to return statement + documentation. * Replacing in-line link generation with HTMLURL. (+gofmt) * Replaced action-based model with nil-based model. (+gofmt) * Replaced mailIssueActionToParticipants with mailIssueCommentToParticipants. * Updating comment for mailIssueCommentToParticipants * Added link to comment in "Dashboard" * Deleting feed entry if a comment is going to be deleted * Added migration * Added improved migration to add a CommentID column to action. * Added improved links to comments in feed entries. * Fixes #1956 by filtering for deleted comments that are referenced in actions. * Introducing "IsDeleted" column to action. * Adding design draft (not functional) * Adding database models for stopwatches and trackedtimes * See go-gitea/gitea#967 * Adding design draft (not functional) * Adding translations and improving design * Implementing stopwatch (for timetracking) * Make UI functional * Add hints in timeline for time tracking events * Implementing timetracking feature * Adding "Add time manual" option * Improved stopwatch * Created report of total spent time by user * Only showing total time spent if theire is something to show. * Adding license headers. * Improved error handling for "Add Time Manual" * Adding @sapks 's changes, refactoring * Adding API for feature tracking * Adding unit test * Adding DISABLE/ENABLE option to Repository settings page * Improving translations * Applying @sapk 's changes * Removing repo_unit and using IssuesSetting for disabling/enabling timetracker * Adding DEFAULT_ENABLE_TIMETRACKER to config, installation and admin menu * Improving documentation * Fixing vendor/ folder * Changing timtracking routes by adding subgroups /times and /times/stopwatch (Proposed by @lafriks ) * Restricting write access to timetracking based on the repo settings (Proposed by @lafriks ) * Fixed minor permissions bug. * Adding CanUseTimetracker and IsTimetrackerEnabled in ctx.Repo * Allow assignees and authors to track there time too. * Fixed some build-time-errors + logical errors. * Removing unused Get...ByID functions * Moving IsTimetrackerEnabled from context.Repository to models.Repository * Adding a seperate file for issue related repo functions * Adding license headers * Fixed GetUserByParams return 404 * Moving /users/:username/times to /repos/:username/:reponame/times/:username for security reasons * Adding /repos/:username/times to get all tracked times of the repo * Updating sdk-dependency * Updating swagger.v1.json * Adding warning if user has already a running stopwatch (auto-timetracker) * Replacing GetTrackedTimesBy... with GetTrackedTimes(options FindTrackedTimesOptions) * Changing code.gitea.io/sdk back to code.gitea.io/sdk * Correcting spelling mistake * Updating vendor.json * Changing GET stopwatch/toggle to POST stopwatch/toggle * Changing GET stopwatch/cancel to POST stopwatch/cancel * Added migration for stopwatches/timetracking * Fixed some access bugs for read-only users * Added default allow only contributors to track time value to config * Fixed migration by chaging x.Iterate to x.Find * Resorted imports * Moved Add Time Manually form to repo_form.go * Removed "Seconds" field from Add Time Manually * Resorted imports * Improved permission checking * Fixed some bugs * Added integration test * gofmt * Adding integration test by @lafriks * Added created_unix to comment fixtures * Using last event instead of a fixed event * Adding another integration test by @lafriks * Fixing bug Timetracker enabled causing error 500 at sidebar.tpl * Fixed a refactoring bug that resulted in hiding "HasUserStopwatch" warning. * Returning TrackedTime instead of AddTimeOption at AddTime. * Updating SDK from go-gitea/go-sdk#69 * Resetting Go-SDK back to default repository * Fixing test-vendor by changing ini back to original repository * Adding "tags" to swagger spec * govendor sync * Removed duplicate * Formatting templates * Adding IsTimetrackingEnabled checks to API * Improving translations / english texts * Improving documentation * Updating swagger spec * Fixing integration test caused be translation-changes * Removed encoding issues in local_en-US.ini. * "Added" copyright line * Moved unit.IssuesConfig().EnableTimetracker into a != nil check * Removed some other encoding issues in local_en-US.ini * Improved javascript by checking if data-context exists * Replaced manual comment creation with CreateComment * Removed unnecessary code * Improved error checking * Small cosmetic changes * Replaced int>string>duration parsing with int>duration parsing * Fixed encoding issues * Removed unused imports Signed-off-by: Jonas Franz <info@jonasfranz.software>
7 years ago
9 years ago
Add support for federated avatars (#3320) * Add support for federated avatars Fixes #3105 Removes avatar fetching duplication code Adds an "Enable Federated Avatar" checkbox in user settings (defaults to unchecked) Moves avatar settings all in the same form, making local and remote avatars mutually exclusive Renames UploadAvatarForm to AvatarForm as it's not anymore only for uploading * Run gofmt on all modified files * Move Avatar form in its own page * Add go-libravatar dependency to vendor/ dir Hopefully helps with accepting the contribution. See also #3214 * Revert "Add go-libravatar dependency to vendor/ dir" This reverts commit a8cb93ae640bbb90f7d25012fc257bda9fae9b82. * Make federated avatar setting a global configuration Removes the per-user setting * Move avatar handling back to base tool, disable federated avatar in offline mode * Format, handle error * Properly set fallback host * Use unsupported github.com mirror for importing go-libravatar * Remove comment showing life exists outside of github.com ... pity, but contribution would not be accepted otherwise * Use Combo for Get and Post methods over /avatar * FEDERATED_AVATAR -> ENABLE_FEDERATED_AVATAR * Fix persistance of federated avatar lookup checkbox at install time * Federated Avatars -> Enable Federated Avatars * Use len(string) == 0 instead of string == "" * Move import line where it belong See https://github.com/Unknwon/go-code-convention/blob/master/en-US/import_packages.md Pity the import url is still the unofficial one, but oh well... * Save a line (and waste much more expensive time) * Remove redundant parens * Remove an empty line * Remove empty lines * Reorder lines to make diff smaller * Remove another newline Unknwon review got me start a fight against newlines * Move DISABLE_GRAVATAR and ENABLE_FEDERATED_AVATAR after OFFLINE_MODE On re-reading the diff I figured what Unknwon meant here: https://github.com/gogits/gogs/pull/3320/files#r73741106 * Remove newlines that weren't there before my intervention
8 years ago
  1. app_desc = A painless self-hosted Git service
  2. home = Home
  3. dashboard = Dashboard
  4. explore = Explore
  5. help = Help
  6. sign_in = Sign In
  7. sign_in_with = Sign in with
  8. sign_out = Sign Out
  9. sign_up = Sign Up
  10. link_account = Link Account
  11. link_account_signin_or_signup = Login with existing credentials to link your existing account to this account. Or, sign up for a new one
  12. register = Register
  13. website = Website
  14. version = Version
  15. page = Page
  16. template = Template
  17. language = Language
  18. notifications = Notifications
  19. create_new = Create...
  20. user_profile_and_more = User profile and more
  21. signed_in_as = Signed in as
  22. enable_javascript = This website works better with JavaScript
  23. username = Username
  24. email = Email
  25. password = Password
  26. re_type = Re-Type
  27. captcha = Captcha
  28. twofa = Two-factor authentication
  29. twofa_scratch = Two-factor scratch code
  30. passcode = Passcode
  31. repository = Repository
  32. organization = Organization
  33. mirror = Mirror
  34. new_repo = New Repository
  35. new_migrate = New Migration
  36. new_mirror = New Mirror
  37. new_fork = New Repository Fork
  38. new_org = New Organization
  39. manage_org = Manage Organizations
  40. admin_panel = Admin Panel
  41. account_settings = Account Settings
  42. settings = Settings
  43. your_profile = Your Profile
  44. your_starred = Your Starred
  45. your_settings = Your Settings
  46. all = All
  47. sources = Sources
  48. mirrors = Mirrors
  49. collaborative = Collaborative
  50. forks = Forks
  51. activities = Activities
  52. pull_requests = Pull Requests
  53. issues = Issues
  54. cancel = Cancel
  55. [install]
  56. install = Installation
  57. title = Initial configuration
  58. docker_helper = If you are running Gitea inside Docker, please read the <a target="_blank" rel="noopener" href="%s">guidelines</a> carefully before changing anything on this page.
  59. requite_db_desc = Gitea requires MySQL, MSSQL, PostgreSQL, SQLite3, or TiDB.
  60. db_title = Database Settings
  61. db_type = Database Type
  62. host = Host
  63. user = User
  64. password = Password
  65. db_name = Database Name
  66. db_helper = Please use the INNODB engine with utf8_general_ci charset for MySQL.
  67. ssl_mode = SSL Mode
  68. path = Path
  69. sqlite_helper = The file path to the SQLite3 or TiDB database. <br>Please use the absolute path when you start as service.
  70. err_empty_db_path = SQLite3 or TiDB database path cannot be empty.
  71. err_invalid_tidb_name = TiDB database name does not allow characters "." and "-".
  72. no_admin_and_disable_registration = You cannot disable registration without creating an admin account.
  73. err_empty_admin_password = Admin password cannot be empty.
  74. general_title = General Application Settings
  75. app_name = Application Name
  76. app_name_helper = You can put your organization name here.
  77. repo_path = Repository Root Path
  78. repo_path_helper = All remote Git repositories will be saved to this directory.
  79. lfs_path = LFS Root Path
  80. lfs_path_helper = Files stored with Git LFS will be stored in this directory. Leave empty to disable LFS.
  81. run_user = Run User
  82. run_user_helper = The user must have access to Repository Root Path and run Gitea.
  83. domain = Domain
  84. domain_helper = This affects SSH clone URLs.
  85. ssh_port = SSH Port
  86. ssh_port_helper = Port number which your SSH server is using. Leave it empty to disable.
  87. http_port = HTTP Port
  88. http_port_helper = Port number which application will listen on.
  89. app_url = Application URL
  90. app_url_helper = This affects HTTP/HTTPS clone URL and some email notifications.
  91. log_root_path = Log Path
  92. log_root_path_helper = Directory to write log files to.
  93. optional_title = Optional Settings
  94. email_title = Email Service Settings
  95. smtp_host = SMTP Host
  96. smtp_from = From
  97. smtp_from_helper = Mail from address, RFC 5322. It can be only an email address, or the "Name" <email@example.com> format.
  98. mailer_user = Sender User
  99. mailer_password = Sender Password
  100. register_confirm = Enable Register Confirmation
  101. mail_notify = Enable Mail Notifications
  102. server_service_title = Server and Other Services Settings
  103. offline_mode = Enable Offline Mode
  104. offline_mode_popup = Disable CDN so all resource files will be served locally.
  105. disable_gravatar = Disable Gravatar Service
  106. disable_gravatar_popup = Disable Gravatar and custom sources. All avatars must be uploaded by users or the default avatar will be used.
  107. federated_avatar_lookup = Enable Federated Avatars Lookup
  108. federated_avatar_lookup_popup = Enable federated avatar lookup using Libravatar.
  109. disable_registration = Disable Self-registration
  110. disable_registration_popup = "Disable self-registration; only admins will be able to create accounts."
  111. openid_signin = Enable OpenID Sign-In
  112. openid_signin_popup = Enable user login via OpenID
  113. openid_signup = Enable OpenID Self-registration
  114. openid_signup_popup = Enable OpenID based Self-registration
  115. enable_captcha = Enable Captcha
  116. enable_captcha_popup = Require a CAPTCHA for user self-registration.
  117. require_sign_in_view = Enable Require Sign In to View Pages
  118. require_sign_in_view_popup = "Only signed in users can view pages; visitors will only be able to see the sign in and up pages."
  119. admin_setting_desc = You do not need to create an admin account right now. The first user who registers on the site will gain admin access automatically.
  120. admin_title = Admin Account Settings
  121. admin_name = Username
  122. admin_password = Password
  123. confirm_password = Confirm Password
  124. admin_email = Admin Email
  125. install_btn_confirm = Install Gitea
  126. test_git_failed = Could not test 'git' command: %v
  127. sqlite3_not_available = Your current version does not support SQLite3, please download the official binary version from %s, NOT the gobuild version.
  128. invalid_db_setting = Database setting is invalid: %v
  129. invalid_repo_path = Repository root path is invalid: %v
  130. run_user_not_match = Run user is not the current user: %s -> %s
  131. save_config_failed = Failed to save configuration: %v
  132. invalid_admin_setting = Admin account setting is invalid: %v
  133. install_success = Welcome! Thank you for choosing Gitea. Have fun. And, take care!
  134. invalid_log_root_path = Log root path is invalid: %v
  135. default_keep_email_private = Default Value for Keep Email Private
  136. default_keep_email_private_popup = This is the default value for the visibility of the user's email address. If set to true the email address of all new users will be hidden until the user changes his setting.
  137. default_allow_create_organization = Default permission value for new users to create organizations
  138. default_allow_create_organization_popup = This is default permission value that will be assigned for new users. If set to true new users will be allowed to create Organizations.
  139. default_enable_timetracking = Enable time tracking by default
  140. default_enable_timetracking_popup = Repositories will have time tracking enabled by default depending on this setting
  141. no_reply_address = No-reply Address
  142. no_reply_address_helper = Domain for the user's email address in git logs if he keeps his email address private. E.g. user 'joe' and 'noreply.example.org' will be 'joe@noreply.example.org'
  143. [home]
  144. uname_holder = Username or email
  145. password_holder = Password
  146. switch_dashboard_context = Switch Dashboard Context
  147. my_repos = My Repositories
  148. show_more_repos = Show more repositories ...
  149. collaborative_repos = Collaborative Repositories
  150. my_orgs = My Organizations
  151. my_mirrors = My Mirrors
  152. view_home = View %s
  153. search_repos = Find a repository ...
  154. issues.in_your_repos = In your repositories
  155. [explore]
  156. repos = Repositories
  157. users = Users
  158. organizations = Organizations
  159. search = Search
  160. repo_no_results = No matching repositories have been found.
  161. user_no_results = No matching users have been found.
  162. org_no_results = No matching organizations have been found.
  163. [auth]
  164. create_new_account = Create Account
  165. register_helper_msg = Already have an account? Sign in now!
  166. social_register_helper_msg = Already have an account? Join it now!
  167. disable_register_prompt = Sorry, registration has been disabled. Please contact the site administrator.
  168. disable_register_mail = Sorry, Register Mail Confirmation has been disabled.
  169. remember_me = Remember Me
  170. forgot_password_title= Forgot Password
  171. forgot_password = Forgot password?
  172. sign_up_now = Need an account? Sign up now.
  173. confirmation_mail_sent_prompt = A new confirmation email has been sent to <b>%s</b>. Please check your inbox within the next %s to complete the registration process.
  174. reset_password_mail_sent_prompt = A confirmation email has been sent to <b>%s</b>. Please check your inbox within the next %s to complete the password reset process.
  175. active_your_account = Activate Your Account
  176. prohibit_login = Login Prohibited
  177. prohibit_login_desc = Your account is prohibited to login, please contact the site administrator.
  178. resent_limit_prompt = Sorry, you have already requested an activation email recently. Please wait 3 minutes then try again.
  179. has_unconfirmed_mail = Hi %s, you have an unconfirmed email address (<b>%s</b>). If you haven't received a confirmation email or need to resend a new one, please click on the button below.
  180. resend_mail = Click here to resend your activation email
  181. email_not_associate = The email address is not associated with any account.
  182. send_reset_mail = Click here to resend your password reset email
  183. reset_password = Reset Your Password
  184. invalid_code = Sorry, your confirmation code has expired or is not valid.
  185. reset_password_helper = Click here to reset your password
  186. password_too_short = Password length cannot be less then %d.
  187. non_local_account = Non-local accounts cannot change passwords through the Gitea web interface.
  188. verify = Verify
  189. scratch_code = Scratch code
  190. use_scratch_code = Use a scratch code
  191. twofa_scratch_used = You have used your scratch code. You have been redirected to the two-factor settings page so you may remove your device enrollment or generate a new scratch code.
  192. twofa_passcode_incorrect = Your passcode is incorrect. If you misplaced your device, use your scratch code to login.
  193. twofa_scratch_token_incorrect = Your scratch code is incorrect.
  194. login_userpass = User / Password
  195. login_openid = OpenID
  196. openid_connect_submit = Connect
  197. openid_connect_title = Connect to an existing account
  198. openid_connect_desc = The chosen OpenID URIs is not known by the system, you can join it an existing account.
  199. openid_register_title = Create new account
  200. openid_register_desc = The chosen OpenID URIs is not known by the system, you can associate it to a new account here.
  201. openid_signin_desc = Example URIs: https://anne.me, bob.openid.org.cn, gnusocial.net/carry
  202. disable_forgot_password_mail = Sorry, password reset has been disabled. Please contact the site administrator.
  203. [mail]
  204. activate_account = Please activate your account
  205. activate_email = Verify your email address
  206. reset_password = Reset your password
  207. register_success = Registration successful
  208. register_notify = Welcome to Gitea
  209. [modal]
  210. yes = Yes
  211. no = No
  212. modify = Modify
  213. [form]
  214. UserName = Username
  215. RepoName = Repository name
  216. Email = Email address
  217. Password = Password
  218. Retype = Re-type password
  219. SSHTitle = SSH key name
  220. HttpsUrl = HTTPS URL
  221. PayloadUrl = Payload URL
  222. TeamName = Team name
  223. AuthName = Authorization name
  224. AdminEmail = Admin email
  225. NewBranchName = New branch name
  226. CommitSummary = Commit summary
  227. CommitMessage = Commit message
  228. CommitChoice = Commit choice
  229. TreeName = File path
  230. Content = Content
  231. require_error = ` cannot be empty.`
  232. alpha_dash_error = ` must be valid alphanumeric or dash(-_) characters.`
  233. alpha_dash_dot_error = ` must be valid alphanumeric, dash(-_) or dot characters.`
  234. git_ref_name_error = ` must be well formed git reference name.`
  235. size_error = ` must be size %s.`
  236. min_size_error = ` must contain at least %s characters.`
  237. max_size_error = ` must contain at most %s characters.`
  238. email_error = ` is not a valid email address.`
  239. url_error = ` is not a valid URL.`
  240. include_error = ` must contain substring '%s'.`
  241. unknown_error = Unknown error:
  242. captcha_incorrect = CAPTCHA response is incorrect.
  243. password_not_match = Your chosen passwords do not match.
  244. username_been_taken = Username already taken.
  245. repo_name_been_taken = Repository name already used.
  246. org_name_been_taken = Organization name already taken.
  247. team_name_been_taken = Team name already taken.
  248. team_no_units_error = Team must have at least one unit enabled.
  249. email_been_used = Email already used.
  250. openid_been_used = OpenID address '%s' already used.
  251. username_password_incorrect = Incorrect username or password.
  252. enterred_invalid_repo_name = Please ensure that the repository name you entered is correct.
  253. enterred_invalid_owner_name = Please ensure that the owner name you entered is correct.
  254. enterred_invalid_password = Please ensure that the password you entered is correct.
  255. user_not_exist = The user does not exist.
  256. last_org_owner = Removing the last user from the owner team is not allowed because there must always be at least one owner in any given organization.
  257. cannot_add_org_to_team = Organization cannot be added as a team member.
  258. invalid_ssh_key = Sorry, we were not able to verify your SSH key: %s
  259. invalid_gpg_key = Sorry, we were not able to verify your GPG key: %s
  260. unable_verify_ssh_key = "The ssh key could not be verified; please double-check it for any mistakes."
  261. auth_failed = Authentication failed: %v
  262. still_own_repo = "Your account still has ownership of at least one repository; you need to delete or transfer them first."
  263. still_has_org = "Your account still is still a member of least one organization; you need to leave them first."
  264. org_still_own_repo = "This organization still owns repositories; you need to delete or transfer them first."
  265. target_branch_not_exist = Target branch does not exist.
  266. [user]
  267. change_avatar = Change your avatar
  268. join_on = Joined on
  269. repositories = Repositories
  270. activity = Public Activity
  271. followers = Followers
  272. starred = Starred repositories
  273. following = Following
  274. follow = Follow
  275. unfollow = Unfollow
  276. form.name_reserved = The username '%s' is reserved.
  277. form.name_pattern_not_allowed = The username pattern '%s' is not allowed.
  278. [settings]
  279. profile = Profile
  280. password = Password
  281. security = Security
  282. avatar = Avatar
  283. ssh_gpg_keys = SSH / GPG Keys
  284. social = Social Accounts
  285. applications = Applications
  286. orgs = Organizations
  287. repos = Repositories
  288. delete = Delete Account
  289. twofa = Two-Factor Authentication
  290. account_link = External Accounts
  291. organization = Organization
  292. uid = Uid
  293. public_profile = Public Profile
  294. profile_desc = Your email address is public and will be used for any account related notifications and web based operations made through the web interface.
  295. password_username_disabled = Non-local users are not allowed to change their username. Please contact your system administrator for more details.
  296. full_name = Full Name
  297. website = Website
  298. location = Location
  299. update_profile = Update Profile
  300. update_profile_success = Your profile has been updated.
  301. change_username = Username Changed
  302. change_username_prompt = This change will change the links to your account.
  303. continue = Continue
  304. cancel = Cancel
  305. lookup_avatar_by_mail = Lookup Avatar by mail
  306. federated_avatar_lookup = Federated Avatar Lookup
  307. enable_custom_avatar = Use Custom Avatar
  308. choose_new_avatar = Choose new avatar
  309. update_avatar = Update Avatar Setting
  310. delete_current_avatar = Delete Current Avatar
  311. uploaded_avatar_not_a_image = Uploaded file is not a image.
  312. update_avatar_success = Your avatar setting has been updated.
  313. change_password = Change Password
  314. old_password = Current Password
  315. new_password = New Password
  316. retype_new_password = Retype New Password
  317. password_incorrect = Current password is incorrect.
  318. change_password_success = Your password was successfully changed. You can now sign using your new password.
  319. password_change_disabled = Non-local users are not allowed to change their password through the web interface.
  320. emails = Email Addresses
  321. manage_emails = Manage email addresses
  322. manage_openid = Manage OpenID addresses
  323. email_desc = Your primary email address will be used for notifications and other operations.
  324. primary = Primary
  325. primary_email = Set as primary
  326. delete_email = Delete
  327. email_deletion = Delete Email
  328. email_deletion_desc = Deleting this email address will remove all related information from your account. Git commits using this email will remain unchanged. Do you want to continue?
  329. email_deletion_success = Email has been deleted successfully!
  330. openid_deletion = OpenID Deletion
  331. openid_deletion_desc = Deleting this OpenID address from your account will prevent you from signing in with it. Are you sure you want to continue ?
  332. openid_deletion_success = OpenID has been deleted successfully!
  333. add_new_email = Add new email address
  334. add_new_openid = Add new OpenID URI
  335. add_email = Add email
  336. add_openid = Add OpenID URI
  337. add_email_confirmation_sent = A new confirmation email has been sent to '%s'. Please check your inbox within the next %s to confirm your email.
  338. add_email_success = Your new email address was successfully added.
  339. add_openid_success = Your new OpenID address was successfully added.
  340. keep_email_private = Keep Email Address Private
  341. keep_email_private_popup = Your email address will be hidden from other users if this option is set.
  342. openid_desc = Your OpenID addresses will let you delegate authentication to your provider of choice
  343. manage_ssh_keys = Manage SSH Keys
  344. manage_gpg_keys = Manage GPG Keys
  345. add_key = Add Key
  346. ssh_desc = These are the SSH keys associated with your account. Because these keys allow anyone using them to gain access to your repositories, it is very important you make sure you recognize them.
  347. gpg_desc = These are the GPG keys associated with your account. Because these keys allow commits to be verified, it is very important that you keep the corresponding private key safe.
  348. ssh_helper = <strong>Need help?</strong> Have a look at GitHub's guide to <a href="%s">create your own SSH keys</a> or solve <a href="%s">common problems</a> you may encounter using SSH.
  349. gpg_helper = <strong>Need help?</strong> Have a look at GitHub's guide <a href="%s">about GPG</a>.
  350. add_new_key = Add SSH Key
  351. add_new_gpg_key = Add GPG Key
  352. ssh_key_been_used = This public key has already been used.
  353. ssh_key_name_used = A public key with same name already exists.
  354. gpg_key_id_used = A public GPG key with same id already exists.
  355. gpg_no_key_email_found = None of the emails attached to the GPG key could be found.
  356. subkeys = Subkeys
  357. key_id = Key ID
  358. key_name = Key Name
  359. key_content = Content
  360. add_key_success = Your SSH key '%s' has been added.
  361. add_gpg_key_success = Your GPG key '%s' has been added.
  362. delete_key = Delete
  363. ssh_key_deletion = SSH Key Deletion
  364. gpg_key_deletion = GPG Key Deletion
  365. ssh_key_deletion_desc = Deleting this SSH key will revoke all access using this SSH key for your account. Do you want to continue?
  366. gpg_key_deletion_desc = Deleting this GPG key will unverify all commits signed with this GPG key. Are you sure you want to continue?
  367. ssh_key_deletion_success = The SSH key has been deleted.
  368. gpg_key_deletion_success = The GPG key has been deleted.
  369. add_on = Added on
  370. valid_until = Valid until
  371. valid_forever = Valid forever
  372. last_used = Last used on
  373. no_activity = No recent activity
  374. can_read_info = Read
  375. can_write_info = Write
  376. key_state_desc = This key has been used in the last 7 days
  377. token_state_desc = This token has been used in the last 7 days
  378. show_openid = Show on profile
  379. hide_openid = Hide from profile
  380. ssh_disabled = SSH is disabled
  381. manage_social = Manage Associated Social Accounts
  382. social_desc = This is a list of associated social accounts. For security reasons, please make sure you recognize all of these entries, as they can be used to log in to your account.
  383. unbind = Unbind
  384. unbind_success = Social account has been unbound from your account.
  385. manage_access_token = Manage Personal Access Tokens
  386. generate_new_token = Generate New Token
  387. tokens_desc = Tokens you have generated which can be used to access the Gitea APIs.
  388. new_token_desc = Each token will have full access to your account.
  389. token_name = Token Name
  390. generate_token = Generate Token
  391. generate_token_success = Your access token was successfully generated! Be sure to copy it right now, because you will not be able to see it again later!
  392. delete_token = Delete
  393. access_token_deletion = Personal Access Token Deletion
  394. access_token_deletion_desc = Delete this personal access token will revoke access for any application using this token. Do you want to continue?
  395. delete_token_success = The personal access token has been removed. Don't forget to update any applications using this token.
  396. twofa_desc = Gitea supports two-factor authentication to enhance the security of your account.
  397. twofa_is_enrolled = Your account is currently <strong>enrolled</strong> in two-factor authentication.
  398. twofa_not_enrolled = Your account is not currently enrolled in two-factor authentication.
  399. twofa_disable = Disable two-factor authentication
  400. twofa_scratch_token_regenerate = Regenerate scratch token
  401. twofa_scratch_token_regenerated = Your scratch token has been regenerated. It is now %s. Keep it in a safe place.
  402. twofa_enroll = Enroll into two-factor authentication
  403. twofa_disable_note = If needed, you can disable two-factor authentication.
  404. twofa_disable_desc = Disabling two-factor authentication will make your account less secure. Are you sure you want to continue?
  405. regenerate_scratch_token_desc = If you misplaced your scratch token, or have already used it to log in, you can reset it here.
  406. twofa_disabled = Two-factor authentication has been disabled.
  407. scan_this_image = Scan this image with your authentication application:
  408. or_enter_secret = Or enter the secret: %s
  409. then_enter_passcode = And enter the passcode the application gives you:
  410. passcode_invalid = That passcode is invalid. Try again.
  411. twofa_enrolled = Your account has now been enrolled in two-factor authentication. Make sure to save your scratch token (%s), as it will only be shown once!
  412. manage_account_links = Manage account links
  413. manage_account_links_desc = External accounts linked to this account
  414. account_links_not_available = There are currently no external accounts linked to this account
  415. remove_account_link = Remove linked account
  416. remove_account_link_desc = Removing this linked account will revoke all related access using this account. Do you want to continue?
  417. remove_account_link_success = Account link has been removed successfully!
  418. orgs_none = You are not a member of any organizations.
  419. repos_none = You do not own any repositories
  420. delete_account = Delete Your Account
  421. delete_prompt = The operation will delete your account permanently. And, this <strong>CANNOT</strong> be undone!
  422. confirm_delete_account = Confirm Deletion
  423. delete_account_title = Account Deletion
  424. delete_account_desc = Are you sure you want to permanently delete this account?
  425. [repo]
  426. owner = Owner
  427. repo_name = Repository Name
  428. repo_name_helper = A good repository name is composed of short, memorable, and unique keywords.
  429. visibility = Visibility
  430. visiblity_helper = This repository is <span class="ui red text">Private</span>
  431. visiblity_helper_forced = Your system administrator has forced all new repositories to be <span class="ui red text">Private</span>
  432. visiblity_fork_helper = (Change of this value will affect all forks)
  433. clone_helper = Need help cloning? Visit <a target="_blank" rel="noopener" href="%s">Help</a>!
  434. fork_repo = Fork Repository
  435. fork_from = Fork From
  436. fork_visiblity_helper = You cannot change the visibility of a forked repository.
  437. repo_desc = Description
  438. repo_lang = Language
  439. repo_gitignore_helper = Select .gitignore templates
  440. license = License
  441. license_helper = Select a license file
  442. readme = Readme
  443. readme_helper = Select a readme template
  444. auto_init = Initialize this repository with selected files and template
  445. create_repo = Create Repository
  446. default_branch = Default Branch
  447. mirror_prune = Prune
  448. mirror_prune_desc = Remove any remote-tracking references which no longer exist on the remote
  449. mirror_interval = Mirror interval (valid time units are "h", "m", "s")
  450. mirror_interval_invalid = Mirror interval is not valid
  451. mirror_address = Mirror Address
  452. mirror_address_desc = Please include any necessary user credentials in the address.
  453. mirror_last_synced = Last Synced
  454. watchers = Watchers
  455. stargazers = Stargazers
  456. forks = Forks
  457. pick_reaction = Pick your reaction
  458. reactions_more = and %d more
  459. form.reach_limit_of_creation = You have already reached your limit of %d repositories.
  460. form.name_reserved = The repository name '%s' is reserved.
  461. form.name_pattern_not_allowed = The repository name pattern '%s' is not allowed.
  462. need_auth = Need Authorization
  463. migrate_type = Migration Type
  464. migrate_type_helper = This repository will be a <span class="text blue">mirror</span>
  465. migrate_repo = Migrate Repository
  466. migrate.clone_address = Clone Address
  467. migrate.clone_address_desc = This can be a HTTP/HTTPS/GIT URL
  468. migrate.clone_local_path = or local server path
  469. migrate.permission_denied = You are not allowed to import local repositories.
  470. migrate.invalid_local_path = "Invalid local path; it does not exist or is not a directory."
  471. migrate.failed = Migration failed: %v
  472. migrate.lfs_mirror_unsupported = Mirroring LFS objects is not supported - use 'git lfs fetch --all' and 'git lfs push --all' instead.
  473. mirror_from = mirror of
  474. forked_from = forked from
  475. fork_from_self = You cannot fork a repository you already own!
  476. copy_link = Copy
  477. copy_link_success = Copied!
  478. copy_link_error = Press ⌘-C or Ctrl-C to copy
  479. copied = Copied OK
  480. unwatch = Unwatch
  481. watch = Watch
  482. unstar = Unstar
  483. star = Star
  484. fork = Fork
  485. download_archive = Download this repository
  486. no_desc = No Description
  487. quick_guide = Quick Guide
  488. clone_this_repo = Clone this repository
  489. create_new_repo_command = Creating a new repository on the command line
  490. push_exist_repo = Pushing an existing repository from the command line
  491. bare_message = This repository does not contain any content.
  492. code = Code
  493. code.desc = Code is where the code is stored
  494. branch = Branch
  495. tree = Tree
  496. filter_branch_and_tag = Filter branch or tag
  497. branches = Branches
  498. tags = Tags
  499. issues = Issues
  500. pulls = Pull Requests
  501. labels = Labels
  502. milestones = Milestones
  503. commits = Commits
  504. commit = Commit
  505. releases = Releases
  506. file_raw = Raw
  507. file_history = History
  508. file_view_raw = View Raw
  509. file_permalink = Permalink
  510. file_too_large = This file is too large to be shown
  511. video_not_supported_in_browser = Your browser doesn't support HTML5 video tag.
  512. stored_lfs = Stored with Git LFS
  513. commit_graph = Commit graph
  514. editor.new_file = New file
  515. editor.upload_file = Upload file
  516. editor.edit_file = Edit file
  517. editor.preview_changes = Preview Changes
  518. editor.cannot_edit_non_text_files = Cannot edit binary files from the web interface
  519. editor.edit_this_file = Edit this file
  520. editor.must_be_on_a_branch = You must be on a branch to make or propose changes to this file
  521. editor.fork_before_edit = You must fork this repository before editing the file
  522. editor.delete_this_file = Delete this file
  523. editor.must_have_write_access = You must have write access to make or propose changes to this file
  524. editor.file_delete_success = File '%s' has been deleted successfully!
  525. editor.name_your_file = Name your file...
  526. editor.filename_help = To add directory, just type it and press /. To remove a directory, go to the beginning of the field and press backspace.
  527. editor.or = or
  528. editor.cancel_lower = cancel
  529. editor.commit_changes = Commit Changes
  530. editor.add_tmpl = Add '%s/<filename>'
  531. editor.add = Add '%s'
  532. editor.update = Update '%s'
  533. editor.delete = Delete '%s'
  534. editor.commit_message_desc = Add an optional extended description...
  535. editor.commit_directly_to_this_branch = Commit directly to the <strong class="branch-name">%s</strong> branch.
  536. editor.create_new_branch = Create a <strong>new branch</strong> for this commit and start a pull request.
  537. editor.new_branch_name_desc = New branch name...
  538. editor.cancel = Cancel
  539. editor.filename_cannot_be_empty = Filename cannot be empty.
  540. editor.branch_already_exists = Branch '%s' already exists in this repository.
  541. editor.directory_is_a_file = Entry '%s' in the parent path is a file not a directory in this repository.
  542. editor.file_is_a_symlink = The file '%s' is a symlink that cannot be modified from the web editor
  543. editor.filename_is_a_directory = The filename '%s' is an existing directory in this repository.
  544. editor.file_editing_no_longer_exists = The file '%s' you are editing no longer exists in the repository.
  545. editor.file_changed_while_editing = The file content has been changed since you started editing. <a target="_blank" rel="noopener" href="%s">Click here</a> to see what has been changed or <strong>press commit again</strong> to overwrite those changes.
  546. editor.file_already_exists = A file with name '%s' already exists in this repository.
  547. editor.no_changes_to_show = There are no changes to show.
  548. editor.fail_to_update_file = Failed to update/create file '%s' with error: %v
  549. editor.add_subdir = Add subdirectory...
  550. editor.unable_to_upload_files = Failed to upload files to '%s' with error: %v
  551. editor.upload_files_to_dir = Upload files to '%s'
  552. editor.cannot_commit_to_protected_branch = Can not commit to protected branch '%s'.
  553. commits.desc = Commits show the change history of the code
  554. commits.commits = Commits
  555. commits.search = Search commits
  556. commits.find = Search
  557. commits.search_all = All branches
  558. commits.author = Author
  559. commits.message = Message
  560. commits.date = Date
  561. commits.older = Older
  562. commits.newer = Newer
  563. commits.signed_by = Signed by
  564. commits.gpg_key_id = GPG key ID
  565. ext_issues = Ext Issues
  566. ext_issues.desc = Ext Issues link to an external issue management page
  567. issues.desc = Issues is the place to manage tasks and bugs
  568. issues.new = New Issue
  569. issues.new.labels = Labels
  570. issues.new.no_label = No Label
  571. issues.new.clear_labels = Clear labels
  572. issues.new.milestone = Milestone
  573. issues.new.no_milestone = No Milestone
  574. issues.new.clear_milestone = Clear milestone
  575. issues.new.open_milestone = Open Milestones
  576. issues.new.closed_milestone = Closed Milestones
  577. issues.new.assignee = Assignee
  578. issues.new.clear_assignee = Clear assignee
  579. issues.new.no_assignee = No assignee
  580. issues.no_ref = No Branch/Tag Specified
  581. issues.create = Create Issue
  582. issues.new_label = New Label
  583. issues.new_label_placeholder = Label name...
  584. issues.create_label = Create Label
  585. issues.label_templates.title = Load a predefined set of labels
  586. issues.label_templates.info = There are not any labels yet. You can click on the "New Label" button above to create one or use a predefined set below.
  587. issues.label_templates.helper = Select a label set
  588. issues.label_templates.use = Use this label set
  589. issues.label_templates.fail_to_load_file = Failed to load label template file '%s': %v
  590. issues.add_label_at = added the <div class="ui label" style="color: %s\; background-color: %s">%s</div> label %s
  591. issues.remove_label_at = removed the <div class="ui label" style="color: %s\; background-color: %s">%s</div> label %s
  592. issues.add_milestone_at = `added this to the <b>%s</b> milestone %s`
  593. issues.change_milestone_at = `modified the milestone from <b>%s</b> to <b>%s</b> %s`
  594. issues.remove_milestone_at = `removed this from the <b>%s</b> milestone %s`
  595. issues.deleted_milestone = `(deleted)`
  596. issues.self_assign_at = `self-assigned this %s`
  597. issues.add_assignee_at = `was assigned by <b>%s</b> %s`
  598. issues.remove_assignee_at = `removed their assignment %s`
  599. issues.change_title_at = `changed title from <b>%s</b> to <b>%s</b> %s`
  600. issues.delete_branch_at = `deleted branch <b>%s</b> %s`
  601. issues.open_tab = %d Open
  602. issues.close_tab = %d Closed
  603. issues.filter_label = Label
  604. issues.filter_label_no_select = No selected label
  605. issues.filter_milestone = Milestone
  606. issues.filter_milestone_no_select = No selected milestone
  607. issues.filter_assignee = Assignee
  608. issues.filter_assginee_no_select = No selected Assignee
  609. issues.filter_type = Type
  610. issues.filter_type.all_issues = All issues
  611. issues.filter_type.assigned_to_you = Assigned to you
  612. issues.filter_type.created_by_you = Created by you
  613. issues.filter_type.mentioning_you = Mentioning you
  614. issues.filter_sort = Sort
  615. issues.filter_sort.latest = Newest
  616. issues.filter_sort.oldest = Oldest
  617. issues.filter_sort.recentupdate = Recently updated
  618. issues.filter_sort.leastupdate = Least recently updated
  619. issues.filter_sort.mostcomment = Most commented
  620. issues.filter_sort.leastcomment = Least commented
  621. issues.action_open = Open
  622. issues.action_close = Close
  623. issues.action_label = Label
  624. issues.action_milestone = Milestone
  625. issues.action_milestone_no_select = No milestone
  626. issues.action_assignee = Assignee
  627. issues.action_assignee_no_select = No assignee
  628. issues.opened_by = opened %[1]s by <a href="%[2]s">%[3]s</a>
  629. issues.opened_by_fake = opened %[1]s by %[2]s
  630. issues.previous = Previous
  631. issues.next = Next
  632. issues.open_title = Open
  633. issues.closed_title = Closed
  634. issues.num_comments = %d comments
  635. issues.commented_at = `commented <a href="#%s">%s</a>`
  636. issues.delete_comment_confirm = Are you sure you want to delete this comment?
  637. issues.no_content = There is no content yet.
  638. issues.close_issue = Close
  639. issues.close_comment_issue = Comment and close
  640. issues.reopen_issue = Reopen
  641. issues.reopen_comment_issue = Comment and reopen
  642. issues.create_comment = Comment
  643. issues.closed_at = `closed <a id="%[1]s" href="#%[1]s">%[2]s</a>`
  644. issues.reopened_at = `reopened <a id="%[1]s" href="#%[1]s">%[2]s</a>`
  645. issues.commit_ref_at = `referenced this issue from a commit <a id="%[1]s" href="#%[1]s">%[2]s</a>`
  646. issues.poster = Poster
  647. issues.collaborator = Collaborator
  648. issues.owner = Owner
  649. issues.sign_in_require_desc = <a href="%s">Sign in</a> to join this conversation.
  650. issues.edit = Edit
  651. issues.cancel = Cancel
  652. issues.save = Save
  653. issues.label_title = Label name
  654. issues.label_color = Label color
  655. issues.label_count = %d labels
  656. issues.label_open_issues = %d open issues
  657. issues.label_edit = Edit
  658. issues.label_delete = Delete
  659. issues.label_modify = Label Modification
  660. issues.label_deletion = Label Deletion
  661. issues.label_deletion_desc = Deleting this label will remove it from all issues. Are you sure you want to continue?
  662. issues.label_deletion_success = The label has been deleted successfully!
  663. issues.label.filter_sort.alphabetically = Alphabetically
  664. issues.label.filter_sort.reverse_alphabetically = Reverse alphabetically
  665. issues.label.filter_sort.by_size = Size
  666. issues.label.filter_sort.reverse_by_size = Reverse size
  667. issues.num_participants = %d Participants
  668. issues.attachment.open_tab = `Click to see "%s" in a new tab`
  669. issues.attachment.download = `Click to download "%s"`
  670. issues.subscribe = Subscribe
  671. issues.unsubscribe = Unsubscribe
  672. issues.tracker = Time tracker
  673. issues.start_tracking_short = Start
  674. issues.start_tracking = Start time tracking
  675. issues.start_tracking_history = `started working %s`
  676. issues.tracking_already_started = `You have already started time tracking on this <a href="%s">issue</a>!`
  677. issues.stop_tracking = Stop
  678. issues.stop_tracking_history = `stopped working %s`
  679. issues.add_time = Add time manually
  680. issues.add_time_short = Add
  681. issues.add_time_cancel = Cancel
  682. issues.add_time_history = `added spent time %s`
  683. issues.add_time_hours = Hours
  684. issues.add_time_minutes = Minutes
  685. issues.add_time_sum_to_small = No time was entered
  686. issues.cancel_tracking = Cancel
  687. issues.cancel_tracking_history = `cancelled time tracking %s`
  688. issues.time_spent_total = Total time spent
  689. pulls.desc = Pulls management your code review and merge requests
  690. pulls.new = New Pull Request
  691. pulls.compare_changes = Compare Changes
  692. pulls.compare_changes_desc = Compare two branches and make a pull request for changes.
  693. pulls.compare_base = base
  694. pulls.compare_compare = compare
  695. pulls.filter_branch = Filter branch
  696. pulls.no_results = No results found.
  697. pulls.nothing_to_compare = There is nothing to compare because base and head branches are even.
  698. pulls.has_pull_request = `There is already a pull request between these two targets: <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>`
  699. pulls.create = Create Pull Request
  700. pulls.title_desc = wants to merge %[1]d commits from <code>%[2]s</code> into <code>%[3]s</code>
  701. pulls.merged_title_desc = merged %[1]d commits from <code>%[2]s</code> into <code>%[3]s</code> %[4]s
  702. pulls.tab_conversation = Conversation
  703. pulls.tab_commits = Commits
  704. pulls.tab_files = Files changed
  705. pulls.reopen_to_merge = Please reopen this pull request to perform a merge.
  706. pulls.merged = Merged
  707. pulls.has_merged = This pull request has been merged successfully.
  708. pulls.data_broken = Data of this pull request has been broken due to deletion of fork information.
  709. pulls.is_checking = "The conflict checking is still in progress; please refresh page in few moments."
  710. pulls.can_auto_merge_desc = This pull request can be merged automatically.
  711. pulls.cannot_auto_merge_desc = This pull request cannot be merged automatically because there are conflicts.
  712. pulls.cannot_auto_merge_helper = Please merge manually in order to resolve the conflicts.
  713. pulls.no_merge_desc = This pull request can not be merged as no merge options are enabled.
  714. pulls.no_merge_helper = To merge this pull request enable at least one merge option in repository settings or merge pull request manually.
  715. pulls.merge_pull_request = Merge Pull Request
  716. pulls.rebase_merge_pull_request = Rebase and Merge
  717. pulls.squash_merge_pull_request = Squash and Merge
  718. pulls.invalid_merge_option = You can not use this merge option for this pull request
  719. pulls.open_unmerged_pull_exists = `You cannot perform reopen operation because there is already an open pull request (#%d) from same repository with same merge information and is waiting for merging.`
  720. milestones.new = New Milestone
  721. milestones.open_tab = %d Open
  722. milestones.close_tab = %d Closed
  723. milestones.closed = Closed %s
  724. milestones.no_due_date = No due date
  725. milestones.open = Open
  726. milestones.close = Close
  727. milestones.new_subheader = Create milestones to organize your issues.
  728. milestones.create = Create Milestone
  729. milestones.title = Title
  730. milestones.desc = Description
  731. milestones.due_date = Due Date (optional)
  732. milestones.clear = Clear
  733. milestones.invalid_due_date_format = "Due date format is invalid; must be 'yyyy-mm-dd'."
  734. milestones.create_success = Milestone '%s' has been created successfully!
  735. milestones.edit = Edit Milestone
  736. milestones.edit_subheader = Use a good description for milestones so people won't be confused.
  737. milestones.cancel = Cancel
  738. milestones.modify = Modify Milestone
  739. milestones.edit_success = Changes of milestone '%s' has been saved successfully!
  740. milestones.deletion = Milestone Deletion
  741. milestones.deletion_desc = Deleting this milestone will remove it from all related issues. Do you want to continue?
  742. milestones.deletion_success = Milestone has been deleted successfully!
  743. milestones.filter_sort.closest_due_date = Closest due date
  744. milestones.filter_sort.furthest_due_date = Furthest due date
  745. milestones.filter_sort.least_complete = Least complete
  746. milestones.filter_sort.most_complete = Most complete
  747. milestones.filter_sort.most_issues = Most issues
  748. milestones.filter_sort.least_issues = Least issues
  749. ext_wiki = Ext Wiki
  750. ext_wiki.desc = Ext Wiki links to an external wiki system
  751. wiki = Wiki
  752. wiki.welcome = Welcome to the project wiki
  753. wiki.welcome_desc = A wiki allows you and your collaborators to easily document your project.
  754. wiki.desc = Wiki is a place to store documentation
  755. wiki.create_first_page = Create the first page
  756. wiki.page = Page
  757. wiki.filter_page = Filter page
  758. wiki.new_page = Create New Page
  759. wiki.default_commit_message = Write a note about this page update (optional).
  760. wiki.save_page = Save Page
  761. wiki.last_commit_info = %s edited this page %s
  762. wiki.edit_page_button = Edit
  763. wiki.new_page_button = New Page
  764. wiki.delete_page_button = Delete Page
  765. wiki.delete_page_notice_1 = This will delete the page <code>"%s"</code>. Please make sure you want to delete this page.
  766. wiki.page_already_exists = A wiki page with the same name already exists.
  767. wiki.reserved_page = The wiki page name %s is reserved, please select a different name.
  768. wiki.pages = Pages
  769. wiki.last_updated = Last updated %s
  770. activity = Activity
  771. activity.period.filter_label = Period:
  772. activity.period.daily = 1 day
  773. activity.period.halfweekly = 3 days
  774. activity.period.weekly = 1 week
  775. activity.period.monthly = 1 month
  776. activity.overview = Overview
  777. activity.active_prs_count_1 = <strong>%d</strong> Active Pull Request
  778. activity.active_prs_count_n = <strong>%d</strong> Active Pull Requests
  779. activity.merged_prs_count_1 = Merged Pull Request
  780. activity.merged_prs_count_n = Merged Pull Requests
  781. activity.opened_prs_count_1 = Proposed Pull Request
  782. activity.opened_prs_count_n = Proposed Pull Requests
  783. activity.title.user_1 = %d user
  784. activity.title.user_n = %d users
  785. activity.title.prs_1 = %d Pull request
  786. activity.title.prs_n = %d Pull requests
  787. activity.title.prs_merged_by = %s merged by %s
  788. activity.title.prs_opened_by = %s proposed by %s
  789. activity.merged_prs_label = Merged
  790. activity.opened_prs_label = Proposed
  791. activity.active_issues_count_1 = <strong>%d</strong> Active Issue
  792. activity.active_issues_count_n = <strong>%d</strong> Active Issues
  793. activity.closed_issues_count_1 = Closed Issue
  794. activity.closed_issues_count_n = Closed Issues
  795. activity.title.issues_1 = %d Issue
  796. activity.title.issues_n = %d Issues
  797. activity.title.issues_closed_by = %s closed by %s
  798. activity.title.issues_created_by = %s created by %s
  799. activity.closed_issue_label = Closed
  800. activity.new_issues_count_1 = New Issue
  801. activity.new_issues_count_n = New Issues
  802. activity.new_issue_label = Opened
  803. activity.title.unresolved_conv_1 = %d Unresolved conversation
  804. activity.title.unresolved_conv_n = %d Unresolved conversations
  805. activity.unresolved_conv_desc = List of all old issues and pull requests that have changed recently but have not been resolved yet.
  806. activity.unresolved_conv_label = Open
  807. activity.title.releases_1 = %d Release
  808. activity.title.releases_n = %d Releases
  809. activity.title.releases_published_by = %s published by %s
  810. activity.published_release_label = Published
  811. search = Search
  812. search.search_repo = Search repository
  813. search.results = Search results for "%s" in <a href="%s">%s</a>
  814. settings = Settings
  815. settings.desc = Settings is where you can manage the settings for the repository
  816. settings.options = Options
  817. settings.collaboration = Collaboration
  818. settings.collaboration.admin = Admin
  819. settings.collaboration.write = Write
  820. settings.collaboration.read = Read
  821. settings.collaboration.undefined = Undefined
  822. settings.hooks = Webhooks
  823. settings.githooks = Git Hooks
  824. settings.basic_settings = Basic Settings
  825. settings.mirror_settings = Mirror Settings
  826. settings.sync_mirror = Sync Now
  827. settings.mirror_sync_in_progress = Mirror sync in progress. Please refresh the page to check again in a minute.
  828. settings.site = Official Site
  829. settings.update_settings = Update Settings
  830. settings.advanced_settings = Advanced Settings
  831. settings.wiki_desc = Enable wiki system
  832. settings.use_internal_wiki = Use builtin wiki
  833. settings.use_external_wiki = Use external wiki
  834. settings.external_wiki_url = External Wiki URL
  835. settings.external_wiki_url_error = External Wiki URL is invalid
  836. settings.external_wiki_url_desc = Visitors will be redirected to the specified URL when they click on the tab.
  837. settings.issues_desc = Enable issue tracker
  838. settings.use_internal_issue_tracker = Use builtin issue tracker
  839. settings.use_external_issue_tracker = Use external issue tracker
  840. settings.external_tracker_url = External Issue Tracker URL
  841. settings.external_tracker_url_error = External Issue Tracker URL is invalid
  842. settings.external_tracker_url_desc = Visitors will be redirected to the specified URL when they click on the tab.
  843. settings.tracker_url_format = External Issue Tracker URL Format
  844. settings.tracker_issue_style = External Issue Tracker Naming Style:
  845. settings.tracker_issue_style.numeric = Numeric
  846. settings.tracker_issue_style.alphanumeric = Alphanumeric
  847. settings.tracker_url_format_desc = You can use placeholder <code>{user} {repo} {index}</code> for user name, repository name and issue index.
  848. settings.enable_timetracker = Enable time tracker
  849. settings.allow_only_contributors_to_track_time = Allow only contributors to track time
  850. settings.pulls_desc = Enable pull requests to accept public contributions
  851. settings.pulls.ignore_whitespace = Ignore changes in whitespace when checking conflicts
  852. settings.pulls.allow_merge_commits = Allow merge commits
  853. settings.pulls.allow_rebase_merge = Allow rebase to merge commits
  854. settings.pulls.allow_squash_commits = Allow to squash commits before merging
  855. settings.danger_zone = Danger Zone
  856. settings.new_owner_has_same_repo = The new owner already has a repository with same name. Please choose another name.
  857. settings.convert = Convert To Regular Repository
  858. settings.convert_desc = You can convert this mirror to a regular repository. This cannot be undone.
  859. settings.convert_notices_1 = - This operation will convert this repository mirror into a regular repository and cannot be undone.
  860. settings.convert_confirm = Confirm Conversion
  861. settings.convert_succeed = Repository has been converted to a regular repository.
  862. settings.transfer = Transfer Ownership
  863. settings.transfer_desc = Transfer this repository to another user or to an organization in which you have admin rights.
  864. settings.transfer_notices_1 = - You will lose access if the new owner is a individual user.
  865. settings.transfer_notices_2 = - You will preserve access if the new owner is an organization and if you're one of the owners.
  866. settings.transfer_form_title = Please enter the following information to confirm your operation:
  867. settings.wiki_delete = Erase Wiki Data
  868. settings.wiki_delete_desc = Once you erase wiki data there is no going back. Please be certain.
  869. settings.wiki_delete_notices_1 = - This will delete and disable the wiki for %s
  870. settings.wiki_deletion_success = Repository wiki data have been erased.
  871. settings.delete = Delete This Repository
  872. settings.delete_desc = Once you delete a repository, there is no going back. Please be certain.
  873. settings.delete_notices_1 = - This operation <strong>CANNOT</strong> be undone.
  874. settings.delete_notices_2 = - This operation will permanently delete everything in the <strong>%s</strong> repository, including code, issues, comments, the wiki, and collaborators associations.
  875. settings.delete_notices_fork_1 = - All forks will become independent repositories after deletion.
  876. settings.deletion_success = Repository has been deleted.
  877. settings.update_settings_success = Repository options have been updated.
  878. settings.transfer_owner = New Owner
  879. settings.make_transfer = Make Transfer
  880. settings.transfer_succeed = Repository ownership has been transferred.
  881. settings.confirm_delete = Confirm Deletion
  882. settings.add_collaborator = Add New Collaborator
  883. settings.add_collaborator_success = New collaborator has been added.
  884. settings.delete_collaborator = Delete
  885. settings.collaborator_deletion = Collaborator Deletion
  886. settings.collaborator_deletion_desc = This user will no longer have collaboration access to this repository after deletion. Do you want to continue?
  887. settings.remove_collaborator_success = Collaborator has been removed.
  888. settings.search_user_placeholder = Search user...
  889. settings.org_not_allowed_to_be_collaborator = Organization is not allowed to be added as a collaborator.
  890. settings.user_is_org_member = User is organization member who cannot be added as a collaborator.
  891. settings.add_webhook = Add Webhook
  892. settings.hooks_desc = Webhooks are much like basic HTTP POST event triggers. Whenever something occurs in Gitea, we will send a notification to the target host. Learn more in the <a target="_blank" rel="noopener" href="%s">webhooks guide</a>.
  893. settings.webhook_deletion = Delete Webhook
  894. settings.webhook_deletion_desc = Deleting this webhook will remove its information and all delivery history. Are you sure you want to continue?
  895. settings.webhook_deletion_success = Webhook has been deleted successfully!
  896. settings.webhook.test_delivery = Test Delivery
  897. settings.webhook.test_delivery_desc = Send a fake push event delivery to test your webhook settings
  898. settings.webhook.test_delivery_success = Test webhook has been added to the delivery queue. It may take few seconds before it shows up in the delivery history.
  899. settings.webhook.request = Request
  900. settings.webhook.response = Response
  901. settings.webhook.headers = Headers
  902. settings.webhook.payload = Payload
  903. settings.webhook.body = Body
  904. settings.githooks_desc = "Git Hooks are powered by Git itself. You can edit files of supported hooks in the list below to perform custom operations."
  905. settings.githook_edit_desc = If the hook is inactive, sample content will be presented. Leaving content to an empty value will disable this hook.
  906. settings.githook_name = Hook Name
  907. settings.githook_content = Hook Content
  908. settings.update_githook = Update Hook
  909. settings.add_webhook_desc = Gitea will send a <code>POST</code> request to the URL you specify, along with information about the event that occurred. You can also specify what data format you would like to receive upon triggering the hook (JSON, x-www-form-urlencoded, XML, etc). More information can be found in our <a target="_blank" rel="noopener" href="%s">webhooks guide</a>.
  910. settings.payload_url = Payload URL
  911. settings.content_type = Content Type
  912. settings.secret = Secret
  913. settings.slack_username = Username
  914. settings.slack_icon_url = Icon URL
  915. settings.discord_username = Username
  916. settings.discord_icon_url = Icon URL
  917. settings.slack_color = Color
  918. settings.event_desc = When should this webhook be triggered?
  919. settings.event_push_only = Just the <code>push</code> event.
  920. settings.event_send_everything = I need <strong>everything</strong>.
  921. settings.event_choose = Let me choose what I need.
  922. settings.event_create = Create
  923. settings.event_create_desc = Branch, or tag created
  924. settings.event_pull_request = Pull Request
  925. settings.event_pull_request_desc = Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, or synchronized.
  926. settings.event_push = Push
  927. settings.event_push_desc = Git push to a repository
  928. settings.event_repository = Repository
  929. settings.event_repository_desc = Repository created or deleted
  930. settings.active = Active
  931. settings.active_helper = Information about the event which triggered the hook will be sent as well.
  932. settings.add_hook_success = New webhook has been added.
  933. settings.update_webhook = Update Webhook
  934. settings.update_hook_success = Webhook has been updated.
  935. settings.delete_webhook = Delete Webhook
  936. settings.recent_deliveries = Recent Deliveries
  937. settings.hook_type = Hook Type
  938. settings.add_slack_hook_desc = Add <a href="%s">Slack</a> integration to your repository.
  939. settings.slack_token = Token
  940. settings.slack_domain = Domain
  941. settings.slack_channel = Channel
  942. settings.add_discord_hook_desc = Add <a href="%s">Discord</a> integration to your repository.
  943. settings.add_dingtalk_hook_desc = Add <a href="%s">Dingtalk</a> integration to your repository.
  944. settings.deploy_keys = Deploy Keys
  945. settings.add_deploy_key = Add Deploy Key
  946. settings.deploy_key_desc = Deploy keys have read-only access. They are not the same as personal account SSH keys.
  947. settings.is_writable = Allow write access
  948. settings.is_writable_info = Can this key be used to <strong>push</strong> to this repository? Deploy keys always have pull access.
  949. settings.no_deploy_keys = You haven't added any deploy keys.
  950. settings.title = Title
  951. settings.deploy_key_content = Content
  952. settings.key_been_used = Deploy key content has been used.
  953. settings.key_name_used = Deploy key with the same name already exists.
  954. settings.add_key_success = New deploy key '%s' has been added successfully!
  955. settings.deploy_key_deletion = Delete Deploy Key
  956. settings.deploy_key_deletion_desc = Deleting this deploy key will prevent this repository from being accessed with it. Do you want to continue?
  957. settings.deploy_key_deletion_success = The deploy key has been deleted successfully!
  958. settings.branches=Branches
  959. settings.protected_branch=Branch Protection
  960. settings.protected_branch_can_push=Allow push?
  961. settings.protected_branch_can_push_yes=You can push
  962. settings.protected_branch_can_push_no=You can not push
  963. settings.branch_protection = Branch Protection for <b>%s</b>
  964. settings.protect_this_branch = Protect this branch
  965. settings.protect_this_branch_desc = Disable force pushes and prevent deletion.
  966. settings.protect_whitelist_committers = Whitelist who can push to this branch
  967. settings.protect_whitelist_committers_desc = Add users or teams to this branch's whitelist. Whitelisted users bypass the typical push restrictions.
  968. settings.protect_whitelist_users = Users who can push to this branch
  969. settings.protect_whitelist_search_users = Search users
  970. settings.protect_whitelist_teams = Teams whose members can push to this branch.
  971. settings.protect_whitelist_search_teams = Search teams
  972. settings.add_protected_branch=Enable protection
  973. settings.delete_protected_branch=Disable protection
  974. settings.update_protect_branch_success = Branch %s protect options changed successfully.
  975. settings.remove_protected_branch_success= Branch %s protect options removed successfully
  976. settings.protected_branch_deletion=To delete a protected branch
  977. settings.protected_branch_deletion_desc=Anyone with write permissions will be able to push directly to this branch. Are you sure?
  978. settings.default_branch_desc = The default branch is considered the "base" branch in your repository against which all pull requests and code commits are automatically made, unless you specify a different branch.
  979. settings.choose_branch = Choose a branch...
  980. settings.no_protected_branch = There are no protected branches
  981. diff.browse_source = Browse Source
  982. diff.parent = parent
  983. diff.commit = commit
  984. diff.data_not_available = Diff Content Not Available
  985. diff.show_diff_stats = Show Diff Stats
  986. diff.show_split_view = Split View
  987. diff.show_unified_view = Unified View
  988. diff.stats_desc = <strong> %d changed files</strong> with <strong>%d additions</strong> and <strong>%d deletions</strong>
  989. diff.bin = BIN
  990. diff.view_file = View File
  991. diff.file_suppressed = File diff suppressed because it is too large
  992. diff.too_many_files = Some files were not shown because too many files changed in this diff
  993. releases.desc = Releases is the place to manage versions of your project
  994. release.releases = Releases
  995. release.new_release = New Release
  996. release.draft = Draft
  997. release.prerelease = Pre-Release
  998. release.stable = Stable
  999. release.edit = edit
  1000. release.ahead = <strong>%d</strong> commits to %s since this release
  1001. release.source_code = Source Code
  1002. release.new_subheader = Publish releases to keep track of project versions.
  1003. release.edit_subheader = A detailed changelog can help users understand what has been changed.
  1004. release.tag_name = Tag name
  1005. release.target = Target
  1006. release.tag_helper = Choose an existing tag, or create a new tag.
  1007. release.title = Title
  1008. release.content = Content
  1009. release.write = Write
  1010. release.preview = Preview
  1011. release.loading = Loading...
  1012. release.prerelease_desc = This is a pre-release
  1013. release.prerelease_helper = We'll point out that this release is not production-ready.
  1014. release.cancel = Cancel
  1015. release.publish = Publish Release
  1016. release.save_draft = Save Draft
  1017. release.edit_release = Edit Release
  1018. release.delete_release = Delete This Release
  1019. release.deletion = Release Deletion
  1020. release.deletion_desc = Deleting this release will delete the corresponding Git tag. You will not lose any code. Do you want to continue?
  1021. release.deletion_success = The release has been deleted.
  1022. release.tag_name_already_exist = Release with this tag name already exists.
  1023. release.tag_name_invalid = Tag name is not valid.
  1024. release.downloads = Downloads
  1025. branch.name = Branch name
  1026. branch.search = Search branches
  1027. branch.already_exists = A branch named %s already exists.
  1028. branch.delete_head = Delete
  1029. branch.delete = Delete Branch %s
  1030. branch.delete_html = Delete Branch
  1031. branch.delete_desc = Deleting a branch is permanent. There is no way to undo it.
  1032. branch.delete_notices_1 = - This operation <strong>CANNOT</strong> be undone.
  1033. branch.delete_notices_2 = - This operation will permanently delete everything in branch %s.
  1034. branch.delete_notices_html = - This operation will permanently delete everything in branch
  1035. branch.deletion_success = %s has been deleted.
  1036. branch.deletion_failed = Failed to delete branch %s.
  1037. branch.delete_branch_has_new_commits = %s cannot be deleted because new commits have been added after merging.
  1038. branch.create_branch = Create branch <strong>%s</strong>
  1039. branch.create_from = from '%s'
  1040. branch.create_success = Branch '%s' has been created successfully!
  1041. branch.branch_already_exists = Branch '%s' already exists in this repository.
  1042. branch.branch_name_conflict = Branch name '%s' conflicts with already existing branch '%s'.
  1043. branch.tag_collision = Branch '%s' can not be created as tag with same name already exists in this repository.
  1044. branch.deleted_by = Deleted by %s
  1045. branch.restore_success = %s successfully restored
  1046. branch.restore_failed = Failed to restore branch %s.
  1047. branch.protected_deletion_failed = It's not possible to delete protected branch %s.
  1048. [org]
  1049. org_name_holder = Organization Name
  1050. org_full_name_holder = Organization Full Name
  1051. org_name_helper = Great organization names are short and memorable.
  1052. create_org = Create Organization
  1053. repo_updated = Updated
  1054. people = People
  1055. teams = Teams
  1056. lower_members = members
  1057. lower_repositories = repositories
  1058. create_new_team = Create New Team
  1059. org_desc = Description
  1060. team_name = Team Name
  1061. team_desc = Description
  1062. team_name_helper = You will use this name to mention this team in conversations.
  1063. team_desc_helper = What is this team for?
  1064. team_permission_desc = What permissions should this team have?
  1065. team_unit_desc = Which units should this team have access to?
  1066. form.name_reserved = Organization name '%s' is reserved.
  1067. form.name_pattern_not_allowed = Organization name pattern '%s' is not allowed.
  1068. form.create_org_not_allowed = This user is not allowed to create an organization.
  1069. settings = Settings
  1070. settings.options = Options
  1071. settings.full_name = Full Name
  1072. settings.website = Website
  1073. settings.location = Location
  1074. settings.update_settings = Update Settings
  1075. settings.update_setting_success = Organization settings have been updated.
  1076. settings.change_orgname_prompt = This change will change the links to the organization.
  1077. settings.update_avatar_success = The organization avatar has been updated.
  1078. settings.delete = Delete Organization
  1079. settings.delete_account = Delete This Organization
  1080. settings.delete_prompt = The organization will be permanently removed. And, this <strong>CANNOT</strong> be undone!
  1081. settings.confirm_delete_account = Confirm Deletion
  1082. settings.delete_org_title = Organization Deletion
  1083. settings.delete_org_desc = This organization is going to be deleted permanently, are you sure you want to continue?
  1084. settings.hooks_desc = Add webhooks which will be triggered for <strong>all repositories</strong> under this organization.
  1085. members.membership_visibility = Membership Visibility:
  1086. members.public = Public
  1087. members.public_helper = make private
  1088. members.private = Private
  1089. members.private_helper = make public
  1090. members.member_role = Member Role:
  1091. members.owner = Owner
  1092. members.member = Member
  1093. members.remove = Remove
  1094. members.leave = Leave
  1095. members.invite_desc = Add a new member to %s:
  1096. members.invite_now = Invite Now
  1097. teams.join = Join
  1098. teams.leave = Leave
  1099. teams.read_access = Read Access
  1100. teams.read_access_helper = This team will be able to view and clone its repositories.
  1101. teams.write_access = Write Access
  1102. teams.write_access_helper = This team will be able to read and push to its repositories.
  1103. teams.admin_access = Admin Access
  1104. teams.admin_access_helper = This team will be able to push and pull to its repositories, as well as add other collaborators to them.
  1105. teams.no_desc = This team has no description
  1106. teams.settings = Settings
  1107. teams.owners_permission_desc = Owners have full access to <strong>all repositories</strong> and have <strong>admin rights</strong> to the organization.
  1108. teams.members = Team Members
  1109. teams.update_settings = Update Settings
  1110. teams.delete_team = Delete This Team
  1111. teams.add_team_member = Add Team Member
  1112. teams.delete_team_title = Team Deletion
  1113. teams.delete_team_desc = Because this team will be deleted, members of this team may lose access to some repositories. Do you want to continue?
  1114. teams.delete_team_success = The team has been deleted.
  1115. teams.read_permission_desc = This team grants <strong>Read</strong> access: members can view and clone the team's repositories.
  1116. teams.write_permission_desc = This team grants <strong>Write</strong> access: members can read from and push to the team's repositories.
  1117. teams.admin_permission_desc = This team grants <strong>Admin</strong> access: members can read from, push to, and add collaborators to the team's repositories.
  1118. teams.repositories = Team Repositories
  1119. teams.search_repo_placeholder = Search repository...
  1120. teams.add_team_repository = Add Team Repository
  1121. teams.remove_repo = Remove
  1122. teams.add_nonexistent_repo = "The repository you're trying to add does not exist; please create it first."
  1123. [admin]
  1124. dashboard = Dashboard
  1125. users = Users
  1126. organizations = Organizations
  1127. repositories = Repositories
  1128. authentication = Authentications
  1129. config = Configuration
  1130. notices = System Notices
  1131. monitor = Monitoring
  1132. first_page = First
  1133. last_page = Last
  1134. total = Total: %d
  1135. dashboard.statistic = Statistics
  1136. dashboard.operations = Operations
  1137. dashboard.system_status = System Monitor Status
  1138. dashboard.statistic_info = Gitea database has <b>%d</b> users, <b>%d</b> organizations, <b>%d</b> public keys, <b>%d</b> repositories, <b>%d</b> watches, <b>%d</b> stars, <b>%d</b> actions, <b>%d</b> accesses, <b>%d</b> issues, <b>%d</b> comments, <b>%d</b> social accounts, <b>%d</b> follows, <b>%d</b> mirrors, <b>%d</b> releases, <b>%d</b> login sources, <b>%d</b> webhooks, <b>%d</b> milestones, <b>%d</b> labels, <b>%d</b> hook tasks, <b>%d</b> teams, <b>%d</b> update tasks, <b>%d</b> attachments.
  1139. dashboard.operation_name = Operation Name
  1140. dashboard.operation_switch = Switch
  1141. dashboard.operation_run = Run
  1142. dashboard.clean_unbind_oauth = Clean unbound OAuth connections
  1143. dashboard.clean_unbind_oauth_success = All unbound OAuth connections have been deleted.
  1144. dashboard.delete_inactivate_accounts = Delete all inactive accounts
  1145. dashboard.delete_inactivate_accounts_success = All inactive accounts have been deleted.
  1146. dashboard.delete_repo_archives = Delete all repositories archives
  1147. dashboard.delete_repo_archives_success = All repositories archives have been deleted.
  1148. dashboard.delete_missing_repos = Delete all repository records which are missing their Git files
  1149. dashboard.delete_missing_repos_success = All repository records which are missing their Git files have been deleted.
  1150. dashboard.git_gc_repos = Execute garbage collection on all repositories
  1151. dashboard.git_gc_repos_success = All repositories have finished executing garbage collection.
  1152. dashboard.resync_all_sshkeys = Rewrite '.ssh/authorized_keys' file (for Gitea SSH keys). There is no need to do this if you are using the built-in SSH server.
  1153. dashboard.resync_all_sshkeys_success = All public keys controlled by Gitea have been rewritten.
  1154. dashboard.resync_all_hooks = Resync pre-receive, update and post-receive hooks of all repositories.
  1155. dashboard.resync_all_hooks_success = All repositories' pre-receive, update and post-receive hooks have been resynced.
  1156. dashboard.reinit_missing_repos = Reinitialize all missing Git repositories for which records exist
  1157. dashboard.reinit_missing_repos_success = All missing Git repositories for which records existed have been reinitialized.
  1158. dashboard.sync_external_users = Synchronize external user data
  1159. dashboard.sync_external_users_started = External user synchronization started
  1160. dashboard.server_uptime = Server Uptime
  1161. dashboard.current_goroutine = Current Goroutines
  1162. dashboard.current_memory_usage = Current Memory Usage
  1163. dashboard.total_memory_allocated = Total Memory Allocated
  1164. dashboard.memory_obtained = Memory Obtained
  1165. dashboard.pointer_lookup_times = Pointer Lookup Times
  1166. dashboard.memory_allocate_times = Memory Allocate Times
  1167. dashboard.memory_free_times = Memory Free Times
  1168. dashboard.current_heap_usage = Current Heap Usage
  1169. dashboard.heap_memory_obtained = Heap Memory Obtained
  1170. dashboard.heap_memory_idle = Heap Memory Idle
  1171. dashboard.heap_memory_in_use = Heap Memory In Use
  1172. dashboard.heap_memory_released = Heap Memory Released
  1173. dashboard.heap_objects = Heap Objects
  1174. dashboard.bootstrap_stack_usage = Bootstrap Stack Usage
  1175. dashboard.stack_memory_obtained = Stack Memory Obtained
  1176. dashboard.mspan_structures_usage = MSpan Structures Usage
  1177. dashboard.mspan_structures_obtained = MSpan Structures Obtained
  1178. dashboard.mcache_structures_usage = MCache Structures Usage
  1179. dashboard.mcache_structures_obtained = MCache Structures Obtained
  1180. dashboard.profiling_bucket_hash_table_obtained = Profiling Bucket Hash Table Obtained
  1181. dashboard.gc_metadata_obtained = GC Metadata Obtained
  1182. dashboard.other_system_allocation_obtained = Other System Allocation Obtained
  1183. dashboard.next_gc_recycle = Next GC Recycle
  1184. dashboard.last_gc_time = Since Last GC Time
  1185. dashboard.total_gc_time = Total GC Pause
  1186. dashboard.total_gc_pause = Total GC Pause
  1187. dashboard.last_gc_pause = Last GC Pause
  1188. dashboard.gc_times = GC Times
  1189. users.user_manage_panel = User Management Panel
  1190. users.new_account = Create New Account
  1191. users.name = Name
  1192. users.activated = Activated
  1193. users.admin = Admin
  1194. users.repos = Repos
  1195. users.created = Created
  1196. users.last_login = Last Login
  1197. users.never_login = Never Login
  1198. users.send_register_notify = Send Registration Notification To User
  1199. users.new_success = The account '%s' has been created.
  1200. users.edit = Edit
  1201. users.auth_source = Authentication Source
  1202. users.local = Local
  1203. users.auth_login_name = Authentication Login Name
  1204. users.password_helper = Leave it empty to remain unchanged.
  1205. users.update_profile_success = Account profile has been updated.
  1206. users.edit_account = Edit Account
  1207. users.max_repo_creation = Maximum Repository Creation Limit
  1208. users.max_repo_creation_desc = (Set -1 to use global default limit)
  1209. users.is_activated = Account activated
  1210. users.prohibit_login = Login disabled
  1211. users.is_admin = Administrator permissions
  1212. users.allow_git_hook = Allowed to create git hooks
  1213. users.allow_import_local = Allowed to import local repositories
  1214. users.allow_create_organization = Allowed to create organizations
  1215. users.update_profile = Update Account Profile
  1216. users.delete_account = Delete Account
  1217. users.still_own_repo = This user still owns one or more repositories. These repositories need to be deleted or transferred first.
  1218. users.still_has_org = This user is still is a member of one or more organizations. This user needs to leave or delete them first.
  1219. users.deletion_success = Account deleted successfully.
  1220. orgs.org_manage_panel = Organization Management
  1221. orgs.name = Name
  1222. orgs.teams = Teams
  1223. orgs.members = Members
  1224. orgs.new_orga = Create Organization
  1225. repos.repo_manage_panel = Repository Management
  1226. repos.owner = Owner
  1227. repos.name = Name
  1228. repos.private = Private
  1229. repos.watches = Watches
  1230. repos.stars = Stars
  1231. repos.issues = Issues
  1232. repos.size = Size
  1233. auths.auth_manage_panel = Authentication Management
  1234. auths.new = Add New Source
  1235. auths.name = Name
  1236. auths.type = Type
  1237. auths.enabled = Enabled
  1238. auths.syncenabled = Enable user synchronization
  1239. auths.updated = Updated
  1240. auths.auth_type = Authentication Type
  1241. auths.auth_name = Authentication Name
  1242. auths.security_protocol = Security Protocol
  1243. auths.domain = Domain
  1244. auths.host = Host
  1245. auths.port = Port
  1246. auths.bind_dn = Bind DN
  1247. auths.bind_password = Bind Password
  1248. auths.bind_password_helper = Warning: This password is stored in plain text. It is highly recommended to use read-only account.
  1249. auths.user_base = User Search Base
  1250. auths.user_dn = User DN
  1251. auths.attribute_username = Username attribute
  1252. auths.attribute_username_placeholder = Leave empty to use sign-in form field value for user name.
  1253. auths.attribute_name = First name attribute
  1254. auths.attribute_surname = Surname attribute
  1255. auths.attribute_mail = Email attribute
  1256. auths.attributes_in_bind = Fetch attributes in Bind DN context
  1257. auths.filter = User Filter
  1258. auths.admin_filter = Admin Filter
  1259. auths.ms_ad_sa = MS AD Search Attributes
  1260. auths.smtp_auth = SMTP Authentication Type
  1261. auths.smtphost = SMTP Host
  1262. auths.smtpport = SMTP Port
  1263. auths.allowed_domains = Allowed Domains
  1264. auths.allowed_domains_helper = Leave it empty to allow all domains. Multiple domains should be separated by comma ','.
  1265. auths.enable_tls = Enable TLS Encryption
  1266. auths.skip_tls_verify = Skip TLS Verify
  1267. auths.pam_service_name = PAM Service Name
  1268. auths.oauth2_provider = OAuth2 Provider
  1269. auths.oauth2_clientID = Client ID (Key)
  1270. auths.oauth2_clientSecret = Client Secret
  1271. auths.openIdConnectAutoDiscoveryURL = OpenID Connect Auto Discovery URL
  1272. auths.oauth2_use_custom_url = Use custom URLs instead of default URLs
  1273. auths.oauth2_tokenURL = Token URL
  1274. auths.oauth2_authURL = Authorize URL
  1275. auths.oauth2_profileURL = Profile URL
  1276. auths.oauth2_emailURL = Email URL
  1277. auths.enable_auto_register = Enable Auto Registration
  1278. auths.tips = Tips
  1279. auths.tips.oauth2.general = OAuth2 Authentication
  1280. auths.tips.oauth2.general.tip = When registering a new OAuth2 authentication, the callback/redirect URL should be: <host>/user/oauth2/<Authentication Name>/callback
  1281. auths.tip.oauth2_provider = OAuth2 Provider
  1282. auths.tip.bitbucket = Register a new OAuth consumer on https://bitbucket.org/account/user/<your username>/oauth-consumers/new and add the permission "Account"-"Read"
  1283. auths.tip.dropbox = Create a new application at https://www.dropbox.com/developers/apps
  1284. auths.tip.facebook = Register a new application at https://developers.facebook.com/apps and add the product "Facebook Login"
  1285. auths.tip.github = Register a new OAuth application on https://github.com/settings/applications/new
  1286. auths.tip.gitlab = Register a new application on https://gitlab.com/profile/applications
  1287. auths.tip.google_plus = Obtain OAuth2 client credentials from the Google API console (https://console.developers.google.com/)
  1288. auths.tip.openid_connect = Use the OpenID Connect Discovery URL (<server>/.well-known/openid-configuration) to specify the endpoints
  1289. auths.tip.twitter = Go to https://dev.twitter.com/apps , create an application and ensure that the “Allow this application to be used to Sign in with Twitter” option is enabled.
  1290. auths.edit = Edit Authentication Settings
  1291. auths.activated = This authentication is activated
  1292. auths.new_success = The authentication '%s' has been added.
  1293. auths.update_success = The authentication settings have been updated.
  1294. auths.update = Update Authentication Settings
  1295. auths.delete = Delete This Authentication Source
  1296. auths.delete_auth_title = Delete Authentication Source
  1297. auths.delete_auth_desc = This authentication source is going to be deleted. Are you sure you want to continue?
  1298. auths.still_in_used = This authentication source is still used by one or more users, please delete or convert them to another login source first.
  1299. auths.deletion_success = Authentication has been deleted successfully.
  1300. auths.login_source_exist = Login source '%s' already exists.
  1301. config.server_config = Server Configuration
  1302. config.app_name = Application Name
  1303. config.app_ver = Application Version
  1304. config.app_url = Application URL
  1305. config.custom_conf = Configuration File Path
  1306. config.domain = Domain
  1307. config.offline_mode = Offline Mode
  1308. config.disable_router_log = Disable Router Log
  1309. config.run_user = Run User
  1310. config.run_mode = Run Mode
  1311. config.git_version = Git Version
  1312. config.repo_root_path = Repository Root Path
  1313. config.lfs_root_path = LFS Root Path
  1314. config.static_file_root_path = Static File Root Path
  1315. config.log_file_root_path = Log File Root Path
  1316. config.script_type = Script Type
  1317. config.reverse_auth_user = Reverse Authentication User
  1318. config.ssh_config = SSH Configuration
  1319. config.ssh_enabled = Enabled
  1320. config.ssh_start_builtin_server = Start built-in Server
  1321. config.ssh_domain = Domain
  1322. config.ssh_port = Port
  1323. config.ssh_listen_port = Listen Port
  1324. config.ssh_root_path = Root Path
  1325. config.ssh_key_test_path = Key Test Path
  1326. config.ssh_keygen_path = Keygen ('ssh-keygen') Path
  1327. config.ssh_minimum_key_size_check = Minimum Key Size Check
  1328. config.ssh_minimum_key_sizes = Minimum Key Sizes
  1329. config.db_config = Database Configuration
  1330. config.db_type = Type
  1331. config.db_host = Host
  1332. config.db_name = Name
  1333. config.db_user = User
  1334. config.db_ssl_mode = SSL Mode
  1335. config.db_ssl_mode_helper = (for "postgres" only)
  1336. config.db_path = Path
  1337. config.db_path_helper = (for "sqlite3" and "tidb")
  1338. config.service_config = Service Configuration
  1339. config.register_email_confirm = Require Email Confirmation
  1340. config.disable_register = Disable Registration
  1341. config.enable_openid_signup = Enable Registration via OpenID
  1342. config.enable_openid_signin = Enable OpenID Sign In
  1343. config.show_registration_button = Show Register Button
  1344. config.require_sign_in_view = Require Sign In View
  1345. config.mail_notify = Mail Notification
  1346. config.disable_key_size_check = Disable Minimum Key Size Check
  1347. config.enable_captcha = Enable Captcha
  1348. config.active_code_lives = Active Code Lives
  1349. config.reset_password_code_lives = Reset Password Code Expiry Time
  1350. config.default_keep_email_private = Default Value for Keep Email Private
  1351. config.default_allow_create_organization = Default permission to create organizations
  1352. config.default_enable_timetracking = Enable time tracking by default
  1353. config.default_allow_only_contributors_to_track_time = Allow only contributors to track time by default
  1354. config.no_reply_address = No-reply Address
  1355. config.webhook_config = Webhook Configuration
  1356. config.queue_length = Queue Length
  1357. config.deliver_timeout = Deliver Timeout
  1358. config.skip_tls_verify = Skip TLS Verification
  1359. config.mailer_config = Mailer Configuration
  1360. config.mailer_enabled = Enabled
  1361. config.mailer_disable_helo = Disable HELO
  1362. config.mailer_name = Name
  1363. config.mailer_host = Host
  1364. config.mailer_user = User
  1365. config.mailer_use_sendmail = Use Sendmail
  1366. config.mailer_sendmail_path = Sendmail Path
  1367. config.mailer_sendmail_args = Extra arguments to Sendmail
  1368. config.send_test_mail = Send Test Email
  1369. config.test_mail_failed = Failed to send test email to '%s': %v
  1370. config.test_mail_sent = Test email has been sent to '%s'.
  1371. config.oauth_config = OAuth Configuration
  1372. config.oauth_enabled = Enabled
  1373. config.cache_config = Cache Configuration
  1374. config.cache_adapter = Cache Adapter
  1375. config.cache_interval = Cache Interval
  1376. config.cache_conn = Cache Connection
  1377. config.session_config = Session Configuration
  1378. config.session_provider = Session Provider
  1379. config.provider_config = Provider Config
  1380. config.cookie_name = Cookie Name
  1381. config.enable_set_cookie = Enable Set Cookie
  1382. config.gc_interval_time = GC Interval Time
  1383. config.session_life_time = Session Life Time
  1384. config.https_only = HTTPS Only
  1385. config.cookie_life_time = Cookie Life Time
  1386. config.picture_config = Picture Configuration
  1387. config.picture_service = Picture Service
  1388. config.disable_gravatar = Disable Gravatar
  1389. config.enable_federated_avatar = Enable Federated Avatars
  1390. config.git_config = Git Configuration
  1391. config.git_disable_diff_highlight = Disable Diff Syntax Highlight
  1392. config.git_max_diff_lines = Max Diff Lines (for a single file)
  1393. config.git_max_diff_line_characters = Max Diff Characters (for a single line)
  1394. config.git_max_diff_files = Max Diff Files (to be shown)
  1395. config.git_gc_args = GC Arguments
  1396. config.git_migrate_timeout = Migration Timeout
  1397. config.git_mirror_timeout = Mirror Update Timeout
  1398. config.git_clone_timeout = Clone Operation Timeout
  1399. config.git_pull_timeout = Pull Operation Timeout
  1400. config.git_gc_timeout = GC Operation Timeout
  1401. config.log_config = Log Configuration
  1402. config.log_mode = Log Mode
  1403. monitor.cron = Cron Tasks
  1404. monitor.name = Name
  1405. monitor.schedule = Schedule
  1406. monitor.next = Next Time
  1407. monitor.previous = Previous Time
  1408. monitor.execute_times = Execute Times
  1409. monitor.process = Running Processes
  1410. monitor.desc = Description
  1411. monitor.start = Start Time
  1412. monitor.execute_time = Execution Time
  1413. notices.system_notice_list = System Notices
  1414. notices.view_detail_header = View Notice Details
  1415. notices.actions = Actions
  1416. notices.select_all = Select All
  1417. notices.deselect_all = Deselect All
  1418. notices.inverse_selection = Inverse Selection
  1419. notices.delete_selected = Delete Selected
  1420. notices.delete_all = Delete All Notices
  1421. notices.type = Type
  1422. notices.type_1 = Repository
  1423. notices.desc = Description
  1424. notices.op = Op.
  1425. notices.delete_success = The system notices have been deleted.
  1426. [action]
  1427. create_repo = created repository <a href="%s">%s</a>
  1428. rename_repo = renamed repository from <code>%[1]s</code> to <a href="%[2]s">%[3]s</a>
  1429. commit_repo = pushed to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a>
  1430. create_issue = `opened issue <a href="%s/issues/%s">%s#%[2]s</a>`
  1431. close_issue = `closed issue <a href="%s/issues/%s">%s#%[2]s</a>`
  1432. reopen_issue = `reopened issue <a href="%s/issues/%s">%s#%[2]s</a>`
  1433. create_pull_request = `created pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
  1434. close_pull_request = `closed pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
  1435. reopen_pull_request = `reopened pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
  1436. comment_issue = `commented on issue <a href="%s/issues/%s">%s#%[2]s</a>`
  1437. merge_pull_request = `merged pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
  1438. transfer_repo = transferred repository <code>%s</code> to <a href="%s">%s</a>
  1439. push_tag = pushed tag <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a>
  1440. delete_tag = deleted tag %[2]s from <a href="%[1]s">%[3]s</a>
  1441. delete_branch = deleted branch %[2]s from <a href="%[1]s">%[3]s</a>
  1442. compare_commits = Compare %d commits
  1443. [tool]
  1444. ago = %s ago
  1445. from_now = %s from now
  1446. now = now
  1447. future = future
  1448. 1s = 1 second
  1449. 1m = 1 minute
  1450. 1h = 1 hour
  1451. 1d = 1 day
  1452. 1w = 1 week
  1453. 1mon = 1 month
  1454. 1y = 1 year
  1455. seconds = %d seconds
  1456. minutes = %d minutes
  1457. hours = %d hours
  1458. days = %d days
  1459. weeks = %d weeks
  1460. months = %d months
  1461. years = %d years
  1462. raw_seconds = seconds
  1463. raw_minutes = minutes
  1464. [dropzone]
  1465. default_message = Drop files or click to upload.
  1466. invalid_input_type = You can't upload files of this type.
  1467. file_too_big = File size ({{filesize}} MB) exceeds the maximum size of ({{maxFilesize}} MB).
  1468. remove_file = Remove file
  1469. [notification]
  1470. notifications = Notifications
  1471. unread = Unread
  1472. read = Read
  1473. no_unread = You do not have any unread notifications.
  1474. no_read = You do not have any read notifications.
  1475. pin = Pin notification
  1476. mark_as_read = Mark as read
  1477. mark_as_unread = Mark as unread
  1478. mark_all_as_read = Mark all as read
  1479. [gpg]
  1480. error.extract_sign = Failed to extract signature
  1481. error.generate_hash = Failed to generate hash of commit
  1482. error.no_committer_account = No account linked to committer's email
  1483. error.no_gpg_keys_found = "No known key found for this signature in database"
  1484. error.not_signed_commit = "Not a signed commit"
  1485. error.failed_retrieval_gpg_keys = "Failed to retrieve any key attached to the committer account"
  1486. [units]
  1487. error.no_unit_allowed_repo = Cannot find any unit on this repository which you are allowed to access
  1488. error.unit_not_allowed = You are not allowed to visit this repository unit