????JFIF??x?x????'
| Server IP : 172.67.174.47 / Your IP : 216.73.216.87 Web Server : LiteSpeed System : Linux premium151.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : tempvsty ( 647) PHP Version : 8.0.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /././././proc/self/cwd/wp-content/plugins/optinmonster/assets/js/Utils/ |
Upload File : |
import get from 'lodash/get';
import { hasSites } from './sites';
/**
* Get available inline campaign select options.
*
* @since [since]
*
* @param {string} type The campaign generic type (inline or other).
* @param {string} slug The campaign slug.
* @param {boolean} checkSites Whether to check for sites (return empty result if no sites connected).
*
* @returns {Array} Array of campaign options for select elements.
* Includes value, label, and selected/disabled properties.
*/
export const getOptions = (type, slug = null, checkSites = true) => {
if (checkSites && !hasSites()) {
return [];
}
const campaigns = get(OMAPI, `campaigns.${type}`, {});
if (Object.keys(campaigns).length < 1 || !OMAPI.omUserId) {
return [];
}
let available = Object.keys(campaigns).map((value) => {
let label = get(campaigns, `${value}.title`, '');
if (get(campaigns, `${value}.pending`)) {
label += ' [Pending]';
}
const selected = null !== slug && slug === value;
const disabled = null !== slug && get(OMAPI, `_usedSlugs.${value}`) && value !== slug;
return { value, label, selected, disabled };
});
if (available.length > 0) {
available.unshift({ value: '', label: OMAPI.i18n.campaign_select });
}
return available;
};
/**
* Get the global campaign object from OM API for given slug.
*
* @since 2.3.0
*
* @param {string} slug The campaign slug.
*
* @returns {Object|null} The global campaign object or null.
*/
export const getCampaign = (slug = '') => {
const key = `om${slug}`;
return window[key] ? window[key] : null;
};