Commit Graph

34017 Commits

Author SHA1 Message Date
61e5431d2a Hide before-header-panel-outlet on signup/login pages (#30432) 2024-12-26 01:39:26 +01:00
c6dd33cc06 DEV: Convert ResponsiveTable to gjs (#30430) 2024-12-23 21:50:13 +01:00
e90a92b298 fix (#30452) 2024-12-23 14:30:58 -06:00
df1fc5bca8 FIX: Consistently notify lowest post number if post_moved notification generation (#30448)
We currently query the posts table without an order when notifying users of moved posts. Generally the query will return the lowest post number post (b/c ID correlates with post_number in most cases) but not always. This adds an order to the post query in notify_moved_posts job.

Also I removed some if statement nesting with early returns / guard clauses.
2024-12-23 09:53:43 -06:00
c3548aec5e DEV: Don't use 0-delay for test-env discourseLater (#30442)
`discourseLater` automatically uses delay of 10ms in test environment
2024-12-23 16:31:46 +01:00
c1818bf40e DEV: Update a topic test to use settled (#30443)
…instead of `next()`/`assert.async()/done()`
2024-12-23 15:49:38 +01:00
e2cd1da26d FIX: All admins should be allowed to see deleted PM posts regardless of their mod status (#30206)
Admins and moderators can see a user's deleted posts via the `/u/:username/deleted-posts` route. Admins can always see any post on the site, but that's not always the case for moderators, e.g., they can't see all PMs. So, this route accounts for that and excludes posts that a moderator wouldn't be allowed to see if they were not deleted.

However, there's currently a problem with that logic where admins who also have moderation privileges, are treated the same way as moderators and prevented from seeing posts that pure moderators can't see. This commit fixes that problem and only applies the permission checks to moderators who don't have admin privileges.

Internal topic: t/143107.
2024-12-23 12:48:03 +03:00
7b5132b0f2 Build(deps-dev): Bump jsuites from 5.8.0 to 5.8.3 (#30422)
Bumps [jsuites](https://github.com/jsuites/jsuites) from 5.8.0 to 5.8.3.
- [Release notes](https://github.com/jsuites/jsuites/releases)
- [Changelog](https://github.com/jsuites/jsuites/blob/master/changelog.md)
- [Commits](https://github.com/jsuites/jsuites/commits)

---
updated-dependencies:
- dependency-name: jsuites
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-23 09:41:22 +01:00
3c95aceeb0 DEV: Unify on-resize modifier situation (#30415)
1. Move chat's on-resize to core
2. Remove ember-on-resize-modifier
2024-12-23 09:11:17 +01:00
6175562cb2 DEV: Convert HighlightSearch to gjs (#30406) 2024-12-23 08:54:59 +01:00
df9de3022f DEV: Convert ChooseMessage to gjs (#30408) 2024-12-23 08:47:15 +01:00
0336235c74 DEV: Use object spread instead of Object.assign (#30407) 2024-12-23 08:44:29 +01:00
6f01584607 DEV: Convert DirectoryTable to gjs (#30414)
* DEV: Convert DirectoryTable to gjs

* rename + remove
2024-12-23 16:44:26 +11:00
5b989fd5ae UX: add highlight for active nav in category settings (#30428) 2024-12-23 06:10:48 +01:00
f6282145aa FIX: Treat contact_url setting as a domain by default (#30225)
This commit makes the `contact_url` in the /about page behave as an absolute URL instead of a relative one if it doesn't explicitly start with a slash or a protocol. This prevents situation where, e.g., `www.example.com` is specified in the setting and the contact URL anchor tag ends up with a `href` that navigates to `<site address>/www.example.com` instead of just `www.example.com`. We prevent this by adding 2 leading slashes `//` to `contact_url` which makes the `href` resolves to the specified `contact_url` using the same protocol as the current site's.

Internal topic: t/143907.
2024-12-23 07:54:53 +03:00
4cf2f5d98a UX: fix misalignment + remove border-radius of topic progress element (#30427) 2024-12-23 04:17:23 +01:00
d98d940472 DEV: remove period-computation-mixin (#30396) 2024-12-23 10:03:58 +08:00
259f537d02 DEV: Convert DiscourseBanner to gjs (#30413) 2024-12-23 00:57:47 +01:00
0ed4c452d0 DEV: Convert CategoryReadOnlyBanner to gjs (#30412) 2024-12-23 00:55:49 +01:00
59b43b15ee DEV: Convert CategoryTitleBefore to gjs (#30411) 2024-12-23 00:54:48 +01:00
ad18ee8984 Build(deps): Bump ace-builds from 1.37.0 to 1.37.1 (#30420)
Bumps [ace-builds](https://github.com/ajaxorg/ace-builds) from 1.37.0 to 1.37.1.
- [Release notes](https://github.com/ajaxorg/ace-builds/releases)
- [Changelog](https://github.com/ajaxorg/ace-builds/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ajaxorg/ace-builds/compare/v1.37.0...v1.37.1)

---
updated-dependencies:
- dependency-name: ace-builds
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-22 22:59:10 +01:00
c6ccc756fe Build(deps-dev): Bump @embroider/webpack in the embroider group (#30416)
Bumps the embroider group with 1 update: [@embroider/webpack](https://github.com/embroider-build/embroider/tree/HEAD/packages/webpack).


Updates `@embroider/webpack` from 4.0.8 to 4.0.9
- [Release notes](https://github.com/embroider-build/embroider/releases)
- [Changelog](https://github.com/embroider-build/embroider/blob/main/CHANGELOG.md)
- [Commits](https://github.com/embroider-build/embroider/commits/HEAD/packages/webpack)

---
updated-dependencies:
- dependency-name: "@embroider/webpack"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: embroider
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-22 22:33:02 +01:00
Sam
3fd3a76422 FIX: we introduced a Jobs::UserEmail which broke consistency checks (#30409)
Fix ensures all classes are rooted and there is a spec that will catch
failures next time
2024-12-22 21:33:47 +11:00
268d4d4fb9 FIX: more... should not show when there are no visible links (#30405)
When lurking on a Discourse as anonymous, if the sidebar is enabled, and a section contains only secondary links that are not visible to anonymous users, we should not display the "more..." button.

Otherwise it feels broken because clicking on it does nothing, since there are no "visible" links to be shown.

Internal ref t/144716
2024-12-21 01:06:46 +01:00
f392259e3f FIX: correclty allows to untoggle a fk toggle (#30404) 2024-12-21 00:55:39 +01:00
fa0ad0306c UX: improve link copy status transition (#30401) 2024-12-20 14:12:13 -05:00
3e8e861103 DEV: return full name in /notifications.json (#30335)
* wip: return full name in /notifications.json

* DEV: test for full name

* DEV: add test for enable_names=true

* DEV: add notification6, cleanup

* DEV: fix tests
2024-12-20 11:43:13 -05:00
d18bf67868 DEV: Remove unnecessary optional chaining operators (#30400) 2024-12-20 16:48:13 +01:00
05dca4c31e DEV: Remove _consoleDebug (#30399)
`this.siteSettings` was always undefined anyway
2024-12-20 16:48:02 +01:00
6e82a63d56 DEV: reintroduces category-notifications-button.js (#30398)
This file has been incorrectly removed in 41df705188 while it's still being used by plugins (https://github.com/discourse/discourse-circles).
2024-12-20 16:08:21 +01:00
f612e3ba17 DEV: Downgrade highlightjs to 11.10.0 (#30397)
due to rustlang regression

See: https://github.com/discourse/discourse/pull/30288#issuecomment-2556373204
2024-12-20 14:28:24 +01:00
a70e7a5cdd DEV: Allow adding classes to ConditionalLoadingSpinner (#30386) 2024-12-20 14:15:47 +01:00
380910aedd DEV: Cleanup todos from codebase (#30394)
This PR involves cleaning up the codebase from my (@keegangeorge's) todos. 

In particular:
- Remove Form Template related todos (these are no longer in the roadmap)
- Remove old left-over AI summarization related code after moving to AI (https://github.com/discourse/discourse-ai/pull/658)
- Update one form template related spec
2024-12-19 18:22:33 -08:00
fa9606016c UX: Site setting filter background inconsistencies (#30393)
Followup 203f93bcaffab1f493be70c2277ef11048f2017e

This commit makes sure the background for all the admin
site settings filters (including the filter input and
override checkbox) is consistent no matter what the theme,
as it currently changes based on theme.
2024-12-20 10:51:35 +10:00
b3fa335c7d UX: Admin sidebar link changes (#30365)
Make all links in the admin sidebar follow https://meta.discourse.org/t/formatting-text-in-discourse-documentation-and-uis/324637

Remove the following links, and add keywords to their root links.
Email logs section is removed entirely.

* Email Settings > Preview Summary
* Email Logs > Sent
* Email Logs > Skipped
* Email Logs > Bounced
* Email Logs > Received
* Email Logs > Rejected
* Security > Error Logs
* Security > Screened Emails
* Security > Screened IPs
* Security > Screened URLs
* Security > Search Logs
* Advanced > Webhooks
2024-12-20 09:58:42 +10:00
2a3f0f3bef UX: refactor IP lookup using DMenu to improve layout and positioning (#30374) 2024-12-19 14:49:36 -05:00
9618075b9c DEV: Remove the deprecation of includePostAttributes (#30381) 2024-12-19 15:28:01 -03:00
d2979997e9 DEV: Introduce new 'glimmer topic list mode' site setting (#30375)
This replaces the previous group-based site setting
2024-12-19 17:38:35 +00:00
32ab4449a5 DEV: Update ember-qunit to 9.0.1 (#30358)
ember-qunit no longer uses ember-cli-test-loader

relevant files:
https://github.com/emberjs/ember-qunit/blob/main/addon/src/test-loader.js
https://github.com/ember-cli/ember-exam/blob/main/addon-test-support/-private/ember-exam-test-loader.js

<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/emberjs/ember-qunit/releases">ember-qunit's releases</a>.</em></p>
<blockquote>
<h2>Release 9.0.1</h2>
<h4>🐛 Bug Fix</h4>
<ul>
<li><a href="https://redirect.github.com/emberjs/ember-qunit/pull/1183">#1183</a> Export TestLoader (<a href="https://github.com/ef4"><code>@​ef4</code></a>)</li>
</ul>
<h4>Committers: 1</h4>
<ul>
<li>Edward Faulkner (<a href="https://github.com/ef4"><code>@​ef4</code></a>)</li>
</ul>
<h2>Release 9.0.0</h2>
<h4>💥 Breaking Change</h4>
<ul>
<li><a href="https://redirect.github.com/emberjs/ember-qunit/pull/1182">#1182</a> Require explicit calls to loadTests and setupEmberOnerrorValidation (<a href="https://github.com/ef4"><code>@​ef4</code></a>)</li>
</ul>
<h4>🏠 Internal</h4>
<ul>
<li><a href="https://redirect.github.com/emberjs/ember-qunit/pull/1181">#1181</a> Remove unused babel plugins (<a href="https://github.com/ef4"><code>@​ef4</code></a>)</li>
</ul>
<h4>Committers: 1</h4>
<ul>
<li>Edward Faulkner (<a href="https://github.com/ef4"><code>@​ef4</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="48779a91ac"><code>48779a9</code></a> Release 9.0.1</li>
<li><a href="a70adfdf58"><code>a70adfd</code></a> Merge pull request <a href="https://redirect.github.com/emberjs/ember-qunit/issues/1183">#1183</a> from emberjs/export-test-loader</li>
<li><a href="25e2a6f4b3"><code>25e2a6f</code></a> Export TestLoader</li>
<li><a href="a039eda038"><code>a039eda</code></a> Release 9.0.0</li>
<li><a href="18d5ca9543"><code>18d5ca9</code></a> Merge pull request <a href="https://redirect.github.com/emberjs/ember-qunit/issues/1182">#1182</a> from emberjs/isolate-test-loading</li>
<li><a href="e4a9efd750"><code>e4a9efd</code></a> fix missing type</li>
<li><a href="634761bc1e"><code>634761b</code></a> separate onerror validation too</li>
<li><a href="d716b61cfd"><code>d716b61</code></a> Separate test loading from start</li>
<li><a href="3428b769dc"><code>3428b76</code></a> Inline ember-cli-test-loader implementation</li>
<li><a href="da520e0684"><code>da520e0</code></a> Merge pull request <a href="https://redirect.github.com/emberjs/ember-qunit/issues/1181">#1181</a> from emberjs/unused-babel-plugins</li>
<li>Additional commits viewable in <a href="https://github.com/emberjs/ember-qunit/compare/v8.1.1...v9.0.1">compare view</a></li>
</ul>
</details>
<br />
2024-12-19 18:38:29 +01:00
d886c55f63 DEV: Reusable post-list component (#30312)
This update adds a  _new_ `<PostList />` component, along with it's child components (`<PostListItem/>` and `<PostListItemDetails />`). This new generic component can be used to show a list of posts.

It can be used like so:
```js
/**
 * A component that renders a list of posts
 *
 * @component PostList
 *
 * @args {Array<Object>} posts - The array of post objects to display
 * @args {Function} fetchMorePosts - A function that fetches more posts. Must return a Promise that resolves to an array of new posts.
 * @args {String} emptyText (optional) - Custom text to display when there are no posts
 * @args {String|Array} additionalItemClasses (optional) - Additional classes to add to each post list item
 * @args {String} titleAriaLabel (optional) - Custom Aria label for the post title
 * 
*/
```
```hbs
<PostList
    @posts={{this.posts}}
    @fetchMorePosts={{this.loadMorePosts}}
    @emptyText={{i18n "custom_identifier.empty"}}
    @additionalItemClasses="custom-class"
 />
```
2024-12-19 09:20:25 -08:00
17bdffc900 SECURITY: When enabled only allow Discourse Connect logins
If Discourse Connect is enabled no other methods for account creation or
authentication should be allowed.
2024-12-19 13:13:23 -03:00
95564a3df2 SECURITY: Moderators cannot see user emails.
Unless `moderators_view_emails` SiteSetting is enabled, moderators should not be able to discover users’ emails.
2024-12-19 13:13:18 -03:00
023b61ad22 SECURITY: Stored xss in image caption 2024-12-19 13:13:14 -03:00
b2dc32f41c FIX: An off-by-one error in glimmer topic list (#30372)
`findIndex` returns -1 when no element is found, but the `start` boundary can't be less than 0.
2024-12-19 13:02:41 +01:00
1f39ce87a5 DEV: removes caret from notifications-tracking on mobile (#30369)
We never want to show this caret on mobile.
2024-12-19 12:06:02 +01:00
9ca8f706bf DEV: fixes typo in notifications-tracking assertions (#30371) 2024-12-19 12:05:54 +01:00
bce0018163 DEV: correctly applies identifier do DModal used in DMenu (#30370)
A previous refactor used an incorrect path. This commit also adds a simple test to ensure this identifier is present.
2024-12-19 12:05:39 +01:00
553784f919 DEV: Delete AdminPageHeader and AdminPageSubheader components (#30337)
No longer needed because of https://github.com/discourse/discourse/pull/30146
and there are plugin PRs to remove other traces of it
2024-12-19 12:47:14 +10:00
74aeec8ea3 FIX: handle null this.model when checking if component is for current user in CanCheckEmailsHelper (#30359) 2024-12-19 09:54:43 +08:00
fdb6634fa9 FEATURE: settings tab for permalinks (#30192)
Setting tab should be added to permalinks so admins do not need to have left `/permalinks`.

A new component called `AreaSetting` was added to avoid duplications and
simplify adding settings to other sections.
2024-12-19 10:40:34 +11:00