Wie Sie die Einstellung „Alle externen Links in einem neuen Tab öffnen“ in den Website-Anpassungen nutzen können

Ach ja, ich habe den “user”-Teil übersehen :sweat_smile: Entschuldigung

Es ist nicht viel anders, die Benutzereinstellung zu verwenden. Sie müssten nur die ersten beiden Konstanten ändern, um auf den Benutzer zu verweisen:

// Richten Sie die Benutzer- und Zielvariable ein:
const user = api.getCurrentUser()
const target = user?.user_option?.external_links_in_new_tab ? "_blank" : ""

und dann wäre alles andere gleich.

Wenn dies mehr wie der Kern funktionieren würde, würden wir prüfen, ob der Benutzer existiert, und wenn nicht, auf die Website-Einstellung zurückgreifen:

// Richten Sie die Benutzer-, SiteSettings- und Zielvariable ein:
const user = api.getCurrentUser()
const siteSettings = api.container.lookup('site-settings:main');
let target = siteSettings.default_other_external_links_in_new_tab ? "_blank" : "";

if (user) { // Wenn der Benutzer existiert, setzen Sie das Ziel basierend auf der Benutzeroption
  target = user.user_option?.external_links_in_new_tab ? "_blank" : ""
}

// Ändern Sie die if-Anweisung, in der der Link erstellt wird, um die Zielvariable zu verwenden:
if (userFields && userFields[userFieldId]) {
  const url = "http://myawesomewebsite.com/user/" + userFields[userFieldId];
  const link = `<a href="${url}" target="${target}">${url}</a>`;
  return Ember.Object.create({ link, name: externalUserIdField.get('name') });
} else {
  return null;
}
2 „Gefällt mir“