mirror of
https://activitypub.software/TransFem-org/Sharkey.git
synced 2025-09-18 21:38:07 +00:00
merge: make trustedDomains
persist across reloads (!1174)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/1174 Approved-by: Marie <github@yuugi.dev> Approved-by: Hazelnoot <acomputerdog@gmail.com>
This commit is contained in:
commit
7d005876fb
5 changed files with 36 additions and 3 deletions
16
locales/index.d.ts
vendored
16
locales/index.d.ts
vendored
|
@ -6005,6 +6005,14 @@ export interface Locale extends ILocale {
|
|||
* New
|
||||
*/
|
||||
"new": string;
|
||||
/**
|
||||
* Throw confetti
|
||||
*/
|
||||
"confetti": string;
|
||||
/**
|
||||
* If enabled, the announcement will display a confetti effect when viewed.
|
||||
*/
|
||||
"confettiDescription": string;
|
||||
};
|
||||
"_initialAccountSetting": {
|
||||
/**
|
||||
|
@ -11984,6 +11992,14 @@ export interface Locale extends ILocale {
|
|||
* Separate with spaces for an AND condition or with line breaks for an OR condition. Using surrounding keywords with slashes will turn them into a regular expression. If you write only the domain name, it will be a backward match.
|
||||
*/
|
||||
"trustedLinkUrlPatternsDescription": string;
|
||||
/**
|
||||
* Link to external site warning exclusion list
|
||||
*/
|
||||
"trustedDomainsList": string;
|
||||
/**
|
||||
* Following links to these domains will not show a warning. Write one domain per line.
|
||||
*/
|
||||
"trustedDomainsListDescription": string;
|
||||
/**
|
||||
* Mutuals
|
||||
*/
|
||||
|
|
|
@ -64,7 +64,7 @@ function done(canceled: boolean, result?: Result): void { // eslint-disable-line
|
|||
async function ok() {
|
||||
const result = true;
|
||||
if (!prefer.s.trustedDomains.includes(domain.value) && trustThisDomain.value) {
|
||||
prefer.r.trustedDomains.value = prefer.s.trustedDomains.concat(domain.value);
|
||||
prefer.commit('trustedDomains', prefer.s.trustedDomains.concat(domain.value));
|
||||
}
|
||||
done(false, result);
|
||||
}
|
||||
|
|
|
@ -829,6 +829,15 @@ SPDX-License-Identifier: AGPL-3.0-only
|
|||
</MkPreferenceContainer>
|
||||
</SearchMarker>
|
||||
|
||||
<SearchMarker :keywords="['warn', 'external', 'url']">
|
||||
<MkPreferenceContainer k="trustedDomains">
|
||||
<MkTextarea v-model="trustedDomains" :debounce="true">
|
||||
<template #label><SearchLabel>{{ i18n.ts.trustedDomainsList }}</SearchLabel></template>
|
||||
<template #caption>{{ i18n.ts.trustedDomainsListDescription }}</template>
|
||||
</MkTextarea>
|
||||
</MkPreferenceContainer>
|
||||
</SearchMarker>
|
||||
|
||||
<SearchMarker :keywords="['image', 'photo', 'picture', 'media', 'thumbnail', 'new', 'tab']">
|
||||
<MkPreferenceContainer k="imageNewTab">
|
||||
<MkSwitch v-model="imageNewTab">
|
||||
|
@ -967,6 +976,7 @@ import FormLink from '@/components/form/link.vue';
|
|||
import MkLink from '@/components/MkLink.vue';
|
||||
import MkInfo from '@/components/MkInfo.vue';
|
||||
import MkInput from '@/components/MkInput.vue';
|
||||
import MkTextarea from '@/components/MkTextarea.vue';
|
||||
import { store } from '@/store.js';
|
||||
import * as os from '@/os.js';
|
||||
import { misskeyApi } from '@/utility/misskey-api.js';
|
||||
|
@ -1073,6 +1083,11 @@ const lang = prefer.model('lang');
|
|||
const fontSize = prefer.model('fontSize');
|
||||
const useSystemFont = prefer.model('useSystemFont');
|
||||
const cornerRadius = prefer.model('cornerRadius');
|
||||
const trustedDomains = prefer.model(
|
||||
'trustedDomains',
|
||||
(domainsList) => domainsList.join('\n'),
|
||||
(domainsString) => domainsString.split('\n').map( d => d.trim() ).filter( x => x.length > 0),
|
||||
);
|
||||
|
||||
watch([
|
||||
hemisphere,
|
||||
|
|
|
@ -36,8 +36,8 @@ export async function warningExternalWebsite(url: string) {
|
|||
}
|
||||
});
|
||||
|
||||
const isTrustedByUser = prefer.r.trustedDomains.value.includes(hostname);
|
||||
const isDisabledByUser = !prefer.r.warnExternalUrl.value;
|
||||
const isTrustedByUser = prefer.s.trustedDomains.includes(hostname);
|
||||
const isDisabledByUser = !prefer.s.warnExternalUrl;
|
||||
|
||||
if (!isTrustedByInstance && !isTrustedByUser && !isDisabledByUser) {
|
||||
const confirm = await new Promise<{ canceled: boolean }>(resolve => {
|
||||
|
|
|
@ -8,6 +8,8 @@ deleteAndEditConfirm: "Are you sure you want to redraft this note? This means yo
|
|||
openRemoteProfile: "Open remote profile"
|
||||
trustedLinkUrlPatterns: "Link to external site warning exclusion list"
|
||||
trustedLinkUrlPatternsDescription: "Separate with spaces for an AND condition or with line breaks for an OR condition. Using surrounding keywords with slashes will turn them into a regular expression. If you write only the domain name, it will be a backward match."
|
||||
trustedDomainsList: "Link to external site warning exclusion list"
|
||||
trustedDomainsListDescription: "Following links to these domains will not show a warning. Write one domain per line."
|
||||
mutuals: "Mutuals"
|
||||
isLocked: "Private account"
|
||||
isAdmin: "Administrator"
|
||||
|
|
Loading…
Add table
Reference in a new issue