كيفية الاستفادة من إعداد "فتح جميع الروابط الخارجية في علامة تبويب جديدة" في تخصيصات الموقع

آه صحيح، لقد أغفلت جزء “المستخدم” :sweat_smile: آسف

لا يختلف الأمر كثيرًا عن استخدام إعداد المستخدم، سيتعين عليك فقط تغيير الثابتين الأولين للإشارة إلى المستخدم:

// إعداد المتغير user و target:
const user = api.getCurrentUser()
const target = user?.user_option?.external_links_in_new_tab ? "_blank" : ""

وبعد ذلك، سيكون كل شيء آخر هو نفسه.

إذا كان هذا سيعمل بشكل أكبر مثل النواة، فسنقوم بالتحقق مما إذا كان المستخدم موجودًا، وإذا لم يكن كذلك، فسوف نعود إلى إعداد الموقع:

// إعداد المتغير user و siteSettings و target:
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) { // إذا كان المستخدم موجودًا، قم بتعيين الهدف بناءً على خيار المستخدم
 target = user.user_option?.external_links_in_new_tab ? "_blank" : ""
} 

// تعديل عبارة if حيث يتم إنشاء الرابط لاستخدام المتغير target: 
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)