diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 272d2a8a0..373881ab6 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -7,23 +7,29 @@ jobs: flake8: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - uses: actions/setup-python@v2 + - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 + with: + python-version: '3.10' - run: pip install flake8 - run: flake8 mypy: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - uses: actions/setup-python@v2 + - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 + with: + python-version: '3.10' - run: pip install -Ur mypy-requirements.txt - run: mypy . black: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - uses: actions/setup-python@v2 + - uses: actions/checkout@v3 + - uses: actions/setup-python@v4 + with: + python-version: '3.10' - run: pip install black~=23.0 - run: black --check . diff --git a/assets/components/PersonalizeHomeModal.tsx b/assets/components/PersonalizeHomeModal.tsx index d033e14f9..2e7a72ce8 100644 --- a/assets/components/PersonalizeHomeModal.tsx +++ b/assets/components/PersonalizeHomeModal.tsx @@ -173,12 +173,14 @@ class PersonalizeHomeModal extends React.Component { const topicSearch = (searchMatches?.length ?? 0) > 0 ? ( -
+
{searchMatches}
- ) : ; + ) : null; + + const hasTopics = (filteredTopics(this.wireTopics).length ?? 0) > 0; - const groupedTopics = (this.props.topics?.length ?? 0) > 0 ? ( + const groupedTopics = hasTopics ? (
{filteredTopics(this.wireTopics).map((wireTopic) => ( @@ -308,7 +310,7 @@ class PersonalizeHomeModal extends React.Component {
- {this.state.searchTerm ? topicSearch : groupedTopics} + {this.state.searchTerm && hasTopics ? topicSearch : groupedTopics}
{ const paramRegexp = new RegExp('{{ ?' + param + ' ?}}', 'g'); - translated = translated.replace(paramRegexp, params[param] || ''); + translated = translated.replace(paramRegexp, params[param] != null ? params[param] : ''); }); } diff --git a/newsroom/auth/utils.py b/newsroom/auth/utils.py index 0a3242d70..306d8449d 100644 --- a/newsroom/auth/utils.py +++ b/newsroom/auth/utils.py @@ -138,7 +138,7 @@ def send_token(user, token_type="validate", update_token=True): if update_token: updates = {} add_token_data(updates) - superdesk.get_resource_service("users").patch(id=bson.ObjectId(user["_id"]), updates=updates) + superdesk.get_resource_service("users").system_update(bson.ObjectId(user["_id"]), updates, user) token = updates["token"] if token_type == "validate": diff --git a/newsroom/users/users.py b/newsroom/users/users.py index ed0731a0a..09987e844 100644 --- a/newsroom/users/users.py +++ b/newsroom/users/users.py @@ -365,10 +365,6 @@ def check_permissions(self, doc, updates=None): elif request and request.method == "DELETE" and doc.get("_id") != manager.get("_id"): return - if request.url_rule and request.url_rule.rule: - if request.url_rule.rule in ["/reset_password/", "/token/"]: - return - if request.method != "DELETE" and ( not updated_fields or all([key in USER_PROFILE_UPDATES for key in updated_fields]) ):