Commit graph

19145 commits

Author SHA1 Message Date
Giteabot
bf07064e40
add CfTurnstileSitekey context data to all captcha templates (#31874) (#31876)
Backport #31874 by @bohde

In the OpenID flows, the "CfTurnstileSitekey" wasn't populated, which
caused those flows to fail if using Turnstile as the Captcha
implementation.

This adds the missing context variables, allowing Turnstile to be used
in the OpenID flows.

Co-authored-by: Rowan Bohde <rowan.bohde@gmail.com>
(cherry picked from commit 0affb5c775280622b277bba2223c01968bafa8b7)
2024-08-25 17:41:08 +02:00
Otto
3dbe5be281 Merge pull request '[PORT] Fix overflow for images on project cards (gitea#31683)' (#5033) from gusted/forgejo-bp-5029-v7 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5033
Reviewed-by: Otto <otto@codeberg.org>
2024-08-20 21:35:23 +00:00
Gusted
9ed7adcbf8
[UI] Remove snapping for images on project cards
Remove the snapping of the images on the projects cards, the images are
way too small to notice that when scrolling you're being snapped to
these images and when you do notice it, it doesn't make sense as you
wouldn't expect it to be snapped.

(cherry picked from commit 0764b7c18b)
2024-08-20 18:34:45 +02:00
Simon Priet
7d133488b7
[PORT] Scroll images in project issues separately from the remaining issue (gitea#31683)
As discussed in https://github.com/go-gitea/gitea/issues/31667 &
https://github.com/go-gitea/gitea/issues/26561, when a card on a Project
contains images, they can overflow the card on its containing column.
This aims to fix this issue via snapping scrollbars.

---
Backport: #5029
Conflict resolution: none
Modification: Remove the snapping of the images on the projects cards, the images are way too small to notice that when scrolling you're being snapped to these images and when you do notice it, it doesn't make sense as you wouldn't expect it to be snapped.

(cherry picked from commit 8e46efef95)
2024-08-20 18:34:11 +02:00
Gusted
a84730775a Merge pull request '[PORT] Remove jQuery class from the comment context menu (gitea#30179)' (#5019) from gusted/forgejo-bp-gt-30179 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5019
Reviewed-by: Otto <otto@codeberg.org>
2024-08-20 13:46:11 +00:00
Earl Warren
db585f082a Merge pull request '[gitea] week 2024-34-v7.0 cherry pick (release/v1.22 -> v7.0/forgejo)' (#4999) from earl-warren/wcp/2024-34-v7.0 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4999
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-08-20 05:43:22 +00:00
Yarden Shoham
d6a21fcb79
[PORT] Remove jQuery class from the comment context menu (gitea #30179)
- Switched from jQuery class functions to plain JavaScript
- Tested the comment context menu functionality and it works as before

Signed-off-by: Yarden Shoham <git@yardenshoham.com>
Co-authored-by: silverwind <me@silverwind.io>

---

Resolves #5016

(cherry picked from commit 66f7d47d2c702bab4ca9bcedc1c0ba9ddfa49a17)
2024-08-20 01:30:51 +02:00
Gusted
684c3106b4 Merge pull request '[v7.0/forgejo] [UI] Fix misalignment of authors for repo acctivity' (#5005) from bp-v7.0/forgejo-72f4130 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5005
Reviewed-by: Otto <otto@codeberg.org>
2024-08-18 20:53:59 +00:00
Gusted
a6c74df161 [UI] Fix misalignment of authors for repo acctivity
- Regression of #4571
- We aren't showing the ticks generated by chartjs, because we want to
show the avatar of the person instead. You can't *realy* disable that
tick, so instead I opted to make them transparent in #4571, however they
still affected the generation of ticks so if enough authors were being
shown, for some the ticks were being skipped. Adjust the settings to
make sure they are always being shown.
- Resolves https://codeberg.org/forgejo/forgejo/issues/4982

(cherry picked from commit 72f41306c2)
2024-08-18 20:12:27 +00:00
Earl Warren
6becfc016f
chore(release-notes): weekly cherry-pick week 2024-34-v7.0 2024-08-18 07:11:37 +02:00
Giteabot
64c7687308
Fix panic of ssh public key page after deletion of auth source (#31829) (#31836)
Backport #31829 by @lunny

Fix #31730

This PR rewrote the function `PublicKeysAreExternallyManaged` with a
simple test. The new function removed the loop to make it more readable.

Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
(cherry picked from commit 5fa90ad9bc7fe800d657e909462e5e1caefc7193)
2024-08-18 07:11:32 +02:00
Giteabot
4c5e4e672d
Show lock owner instead of repo owner on LFS setting page (#31788) (#31817)
Backport #31788 by @wolfogre

Fix #31784.

Before:

<img width="1648" alt="image"
src="https://github.com/user-attachments/assets/03f32545-4a85-42ed-bafc-2b193a5d8023">

After:

<img width="1653" alt="image"
src="https://github.com/user-attachments/assets/e5bcaf93-49cb-421f-aac1-5122bc488b02">

Co-authored-by: Jason Song <i@wolfogre.com>
(cherry picked from commit a39fe5325266f1c079e0e54abc68e6470764eb44)

Conflicts:
	models/git/lfs_lock.go
  trivial context conflict
2024-08-18 07:01:03 +02:00
Zoupers Zou
8e8a07cc15
Fix #31185 try fix lfs download from bitbucket failed (#31201)
Fix #31185

(cherry picked from commit e25d6960b5749fbf7f88ebb6b27878c0459817da)
(cherry picked from commit baad8337f9)
2024-08-18 07:01:03 +02:00
oliverpool
45d96b4765
Add container.FilterSlice function (gitea#30339) (skip using it)
Many places have the following logic:
```go
func (jobs ActionJobList) GetRunIDs() []int64 {
	ids := make(container.Set[int64], len(jobs))
	for _, j := range jobs {
		if j.RunID == 0 {
			continue
		}
		ids.Add(j.RunID)
	}
	return ids.Values()
}
```

this introduces a `container.FilterMapUnique` function, which reduces
the code above to:
```go
func (jobs ActionJobList) GetRunIDs() []int64 {
	return container.FilterMapUnique(jobs, func(j *ActionRunJob) (int64, bool) {
		return j.RunID, j.RunID != 0
	})
}
```
Conflicts:
models/issues/comment_list.go due to premature refactor in #3116

(cherry picked from commit 525accfae6)

Conflicts:
	models/issues/comment_list.go
  only cherry-pick the container.FilterSlice function, for the sake of backporting
2024-08-18 06:55:15 +02:00
Michael Kriese
1a4c399652 Merge pull request '[v7.0/forgejo] fix: Run full PR checks on agit push' (#4950) from bp-v7.0/forgejo-2d05e92 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4950
Reviewed-by: Otto <otto@codeberg.org>
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2024-08-13 19:04:58 +00:00
Michael Kriese
7e847ad879 fix(agit): run full pr checks on force-push
(cherry picked from commit 2d05e922a2)
2024-08-13 18:26:33 +00:00
Earl Warren
44b34ea2ac Merge pull request '[gitea] week 2024-33-v7.0 cherry pick (release/v1.22 -> v7.0/forgejo)' (#4925) from earl-warren/wcp/2024-33-v7.0 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4925
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-08-12 21:26:24 +00:00
Giteabot
3e091b9bac
Fix IsObjectExist with gogit (#31790) (#31806)
Backport #31790 by @wolfogre

Fix #31271.

When gogit is enabled, `IsObjectExist` calls
`repo.gogitRepo.ResolveRevision`, which is not correct. It's for
checking references not objects, it could work with commit hash since
it's both a valid reference and a commit object, but it doesn't work
with blob objects.

So it causes #31271 because it reports that all blob objects do not
exist.

Co-authored-by: Jason Song <i@wolfogre.com>
(cherry picked from commit 144648a4afdd93d534875a86c50ec61c860878f3)
2024-08-11 09:41:23 +02:00
Earl Warren
3a18717c6b Merge pull request '[v7.0/forgejo] [BUG] Return blocking errors as JSON errors' (#4917) from bp-v7.0/forgejo-d97cf0e into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4917
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-08-10 06:42:40 +00:00
Gusted
e988d1a8bb [BUG] Return blocking errors as JSON errors
- These endspoints are since b71cb7acdc
JSON-based and should therefore return JSON errors.
- Integration tests adjusted.

(cherry picked from commit d97cf0e854)
2024-08-10 05:53:00 +00:00
Earl Warren
29afb54daf Merge pull request '[v7.0/forgejo] disallow javascript: URI in the repository description' (#4900) from bp-v7.0/forgejo-bb448f3 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4900
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
2024-08-09 06:58:26 +00:00
Gusted
542281ab9f disallow javascript: URI in the repository description
- Fixes an XSS that was introduced in
https://codeberg.org/forgejo/forgejo/pulls/1433
- This XSS allows for `href`s in anchor elements to be set to a
`javascript:` uri in the repository description, which would upon
clicking (and not upon loading) the anchor element execute the specified
javascript in that uri.
- [`AllowStandardURLs`](https://pkg.go.dev/github.com/microcosm-cc/bluemonday#Policy.AllowStandardURLs) is now called for the repository description
policy, which ensures that URIs in anchor elements are `mailto:`,
`http://` or `https://` and thereby disallowing the `javascript:` URI.
It also now allows non-relative links and sets `rel="nofollow"` on
anchor elements.
- Unit test added.

(cherry picked from commit bb448f3dc2)
2024-08-09 05:57:13 +00:00
Earl Warren
8373749002 Merge pull request 'i18n: backport of #4568 #4668 and #4783 to v7' (#4882) from 0ko/forgejo:i18n-backport-20240808-v7 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4882
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-08-08 09:31:02 +00:00
Codeberg Translate
3625cd66f7 [v7.0/forgejo] i18n: update of translations from Weblate
Backport of https://codeberg.org/forgejo/forgejo/pulls/4783.

Co-authored-by: earl-warren <earl-warren@users.noreply.translate.codeberg.org>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-authored-by: 0ko <0ko@users.noreply.translate.codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: natalie_drowned02 <k_letovskiy02@protonmail.com>
Co-authored-by: leana8959 <leana8959@users.noreply.translate.codeberg.org>
Co-authored-by: Kita Ikuyo <searinminecraft@courvix.com>
Co-authored-by: emansije <emansije@users.noreply.translate.codeberg.org>
Co-authored-by: hugoalh <hugoalh@users.noreply.translate.codeberg.org>
Co-authored-by: hankskyjames777 <hankskyjames777@users.noreply.translate.codeberg.org>
Co-authored-by: Wuzzy <Wuzzy@users.noreply.translate.codeberg.org>
Co-authored-by: pswsm <pswsm@users.noreply.translate.codeberg.org>
Co-authored-by: dragon <dragon@users.noreply.translate.codeberg.org>
Co-authored-by: Zughy <Zughy@users.noreply.translate.codeberg.org>
Co-authored-by: Outbreak2096 <Outbreak2096@users.noreply.translate.codeberg.org>
Co-authored-by: Marco Ciampa <ciampix@users.noreply.translate.codeberg.org>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4783
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@noreply.codeberg.org>
Co-committed-by: Codeberg Translate <translate@noreply.codeberg.org>
(cherry picked from commit abc3364a7b)
(cherry picked from commit 32cf107774)
2024-08-08 13:17:44 +05:00
Codeberg Translate
4038a757b8 [v7.0/forgejo] i18n: Translations update from Weblate
Backport of https://codeberg.org/forgejo/forgejo/pulls/4668.

Co-authored-by: earl-warren <earl-warren@users.noreply.translate.codeberg.org>
Co-authored-by: Wuzzy <Wuzzy@users.noreply.translate.codeberg.org>
Co-authored-by: Kita Ikuyo <searinminecraft@courvix.com>
Co-authored-by: hankskyjames777 <hankskyjames777@users.noreply.translate.codeberg.org>
Co-authored-by: mahlzahn <mahlzahn@posteo.de>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-authored-by: 0ko <0ko@users.noreply.translate.codeberg.org>
Co-authored-by: lotigara <lotigara@users.noreply.translate.codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Anonymous <anonymous@users.noreply.translate.codeberg.org>
Co-authored-by: caesar <caesar@users.noreply.translate.codeberg.org>
Co-authored-by: emansije <emansije@users.noreply.translate.codeberg.org>
Co-authored-by: Caesar Schinas <caesar@caesarschinas.com>
Co-authored-by: leana8959 <leana8959@users.noreply.translate.codeberg.org>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4668
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@noreply.codeberg.org>
Co-committed-by: Codeberg Translate <translate@noreply.codeberg.org>
(cherry picked from commit 3d3ddd7704)
(cherry picked from commit a7e414b0f1)
2024-08-08 13:16:44 +05:00
Codeberg Translate
91dc82b44c [v7.0/forgejo] i18n: Translations update from Weblate
Backport of https://codeberg.org/forgejo/forgejo/pulls/4568.

Co-authored-by: earl-warren <earl-warren@users.noreply.translate.codeberg.org>
Co-authored-by: 0ko <0ko@users.noreply.translate.codeberg.org>
Co-authored-by: mahlzahn <mahlzahn@posteo.de>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-authored-by: leana8959 <leana8959@users.noreply.translate.codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Wuzzy <Wuzzy@users.noreply.translate.codeberg.org>
Co-authored-by: meskobalazs <meskobalazs@users.noreply.translate.codeberg.org>
Co-authored-by: Bálint Gonda <balinteus@gmail.com>
Co-authored-by: Beowulf <Beowulf@users.noreply.translate.codeberg.org>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4568
Co-authored-by: Codeberg Translate <translate@noreply.codeberg.org>
Co-committed-by: Codeberg Translate <translate@noreply.codeberg.org>
(cherry picked from commit 7699d85f3b)
(cherry picked from commit 6108a979e5)
2024-08-08 13:15:33 +05:00
Earl Warren
875f123671 Merge pull request '[v7.0/forgejo] [BUG] Render references to cross-repo issues with external issues' (#4863) from bp-v7.0/forgejo-05e163a into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4863
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-08-07 06:24:39 +00:00
Gusted
cb9c0eb8ca [BUG] Render references to cross-repo issues with external issues
- If you have the external issue setting enabled, any reference would
have been rendered as an external issue, however this shouldn't be
happening to references that refer to issues in other repositories.
- Unit test added.

(cherry picked from commit 05e163aaf3)
2024-08-07 05:43:12 +00:00
Earl Warren
ee89c482c6 Merge pull request '[v7.0/forgejo] [CHORE] Remove SSH DSA tests' (#4833) from bp-v7.0/forgejo-eb8c125 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4833
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-08-05 21:42:42 +00:00
Gusted
151c2941f4 [CHORE] Remove SSH DSA tests
- Partially resolves #4659
- Fixes CI.

(cherry picked from commit eb8c125788)
2024-08-05 21:04:07 +00:00
forgejo-backport-action
0f7cd8d46a [v7.0/forgejo] fix(ui): handle out-of-bounds end line in code selection (#4820)
Backport of https://codeberg.org/forgejo/forgejo/pulls/4788.

- fallback to the last line, preventing TypeError
- add E2E test

Co-authored-by: Solomon Victorino <git@solomonvictorino.com>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4820
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: forgejo-backport-action <forgejo-backport-action@noreply.codeberg.org>
Co-committed-by: forgejo-backport-action <forgejo-backport-action@noreply.codeberg.org>
2024-08-05 05:56:37 +00:00
Earl Warren
ae2312b767 Merge pull request '[gitea] week 2024-32-v7.0 cherry pick (release/v1.22 -> v7.0/forgejo)' (#4804) from earl-warren/wcp/2024-32-v7.0 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4804
Reviewed-by: thefox <thefox@noreply.codeberg.org>
2024-08-04 13:04:53 +00:00
Earl Warren
4ad168c2fe
chore(lint): make testifylint happy 2024-08-04 12:35:20 +02:00
TheFox0x7
072dd9f8bc enable linter testifylint on v7 (#4572)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4572
Co-authored-by: TheFox0x7 <thefox0x7@gmail.com>
Co-committed-by: TheFox0x7 <thefox0x7@gmail.com>
2024-07-30 19:42:06 +00:00
Earl Warren
c47bdf436b Merge pull request '[v7.0/forgejo] [UI] Show AGit label on merged PR' (#4731) from bp-v7.0/forgejo-358ec80 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4731
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-07-29 15:32:51 +00:00
Gusted
bcc1e17775 [UI] Show AGit label on merged PR
- The label wasn't show on merged PRs.
- Integration test added

(cherry picked from commit 358ec8002e)
2024-07-29 14:23:45 +00:00
Earl Warren
8453b563a9 Merge pull request '[gitea] week 2024-31-v7.0 cherry pick (release/v1.22 -> v7.0/forgejo)' (#4717) from earl-warren/wcp/2024-31-v7.0 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4717
Reviewed-by: thefox <thefox@noreply.codeberg.org>
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
2024-07-28 09:56:41 +00:00
Giteabot
91d3a15766
Enable direnv (#31672) (#31679)
Backport #31672 by @techknowlogick

This lets developers who have direnv enabled to load our nix flake
automatically when entering it

Co-authored-by: techknowlogick <techknowlogick@gitea.com>
(cherry picked from commit 17b04644edb4fd1ba6ef4698868f321fc11c4f4d)
2024-07-28 08:40:19 +02:00
Earl Warren
227d3f42bf Merge pull request '[v7.0/forgejo] fix(api): issue state change is not idempotent' (#4688) from bp-v7.0/forgejo-e9e3b8c into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4688
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-07-25 14:59:44 +00:00
Earl Warren
9f1302f685 fix(api): issue state change is not idempotent
The PATCH if issue & pull request switched to use the service
functions instead. However, the service function changing the state is
not idempotent. Instead of doing nothing which changing from open to
open or close to close, it will fail with an error like:

 Issue [2472] 0 was already closed

Regression of: 6a4bc0289d

Fixes: https://codeberg.org/forgejo/forgejo/issues/4686
(cherry picked from commit e9e3b8c0f3)
2024-07-25 14:21:00 +00:00
Earl Warren
7dfc938e82 Merge pull request '[v7.0/forgejo] [CHORE] Don't bundle elkjs' (#4679) from bp-v7.0/forgejo-510cbe2 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4679
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-07-25 05:55:45 +00:00
Gusted
97e25d10b8 [CHORE] Don't bundle elkjs
- `elkjs` is a library that's imported by `mermaid`, although they have
seperated this package to it's own mermaid
package (https://github.com/mermaid-js/mermaid/pull/5654), the stable
version doesn't have this patch.
- `elkjs` is licensed under the EPL-2.0 license (copyleft), which isn't
compatible with GPL unless the license author explcitly allow this via a
so called "secondary license". At the end of the day it cannot be
released under a MIT or GPL license.
- Use webpack's `externals` option to avoid bundling `elkjs` and instead
leave it as a `require` code.
- This is a 'dirty' way to ensure elkjs isn't bundled and has to be
tested manually to ensure this for every release (via the
`webpack-bundle-analyzer` plugin). If someone tries to use the elkjs
render, it will result in a non-descriptive error being shown.

(cherry picked from commit 510cbe2c92)
2024-07-25 00:20:10 +00:00
Earl Warren
7956c3890e Merge pull request '[v7.0/forgejo] Replace Gitea with Forgejo' (#4674) from bp-v7.0/forgejo-9ad23f9 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4674
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-07-24 22:57:30 +00:00
Earl Warren
68ceacfdfa Merge pull request '[v7.0/forgejo] [UI] Fix scoped-access-token' (#4671) from bp-v7.0/forgejo-aa5163d into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4671
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-07-24 22:42:43 +00:00
yonas
24ea13a684 Replace Gitea with Forgejo
(cherry picked from commit 9ad23f9ede)
2024-07-24 21:40:48 +00:00
Gusted
88426b578f [UI] Fix scoped-access-token
- Regression of #4571
- Refactor to not use the component API of Vue. The root cause is still
unknown.

(cherry picked from commit aa5163d5c4)
2024-07-24 21:35:59 +00:00
Gusted
d7686aabee Merge pull request '[v7.0/forgejo] Reserve the devtest username' (#4647) from bp-v7.0/forgejo-859cc23-90c0e9d-93d0836 into v7.0/forgejo
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4647
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2024-07-23 14:43:19 +00:00
Ikuyo
19dd7e9ebc Add missing trailing comma
(cherry picked from commit 859cc23dc2)
2024-07-23 13:01:36 +00:00
Ikuyo
422fe11271 Add devtest in reserved usernames test
(cherry picked from commit 90c0e9dace)
2024-07-23 13:01:36 +00:00
Ikuyo
9d0f632977 Reserve devtest username
(cherry picked from commit 93d0836241)
2024-07-23 13:01:36 +00:00