%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
Server IP : 49.231.201.246 / Your IP : 216.73.216.149 Web Server : Apache/2.4.18 (Ubuntu) System : User : root ( 0) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : exec,passthru,mail,shell_exec,system,proc_open,popen,ini_alter,dl,proc_close,curl_exec,curl_multi_exec,readfile,parse_ini_file,escapeshellarg,escapeshellcmd,show_source,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,mail,php_uname,phpinfo MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/html/old/plugins/system/web357framework/ |
Upload File : |
<?php /* ====================================================== # Web357 Framework for Joomla! - v1.7.7 (Free version) # ------------------------------------------------------- # For Joomla! CMS # Author: Web357 (Yiannis Christodoulou) # Copyright (©) 2009-2019 Web357. All rights reserved. # License: GNU/GPLv3, http://www.gnu.org/licenses/gpl-3.0.html # Website: https:/www.web357.com/ # Demo: https://demo.web357.com/joomla/web357framework # Support: support@web357.com # Last modified: 11 Jun 2019, 13:11:46 ========================================================= */ defined('_JEXEC') or die; if (version_compare(JVERSION, '3.0', 'ge')) { // Initialize Web357 Framework require_once(__DIR__.'/autoload.php'); } jimport('joomla.event.plugin'); jimport('joomla.plugin.plugin'); jimport('joomla.html.parameter'); if (!class_exists('plgSystemWeb357framework')): class plgSystemWeb357framework extends JPlugin { public function __construct(&$subject, $config) { parent::__construct($subject, $config); } public function onAfterInitialise() { $app = JFactory::getApplication(); $option = $app->input->get('option'); $view = $app->input->get('view'); $component = $app->input->get('component'); // Backend rules if ($app->isAdmin()) { // API Key Checker if ($option == 'com_config' && $view == 'component' && ( $component == 'com_vmsales' || $component == 'com_monthlyarchive' || $component == 'com_loginasuser' || $component == 'com_fix404errorlinks' ) ) { // Call the Web357 Framework Helper Class require_once(JPATH_PLUGINS.DIRECTORY_SEPARATOR.'system'.DIRECTORY_SEPARATOR.'web357framework'.DIRECTORY_SEPARATOR.'web357framework.class.php'); $w357frmwrk = new Web357FrameworkHelperClass; // API Key Checker $w357frmwrk->apikeyChecker(); } // Get Joomla's version $jversion = new JVersion; $short_version = explode('.', $jversion->getShortVersion()); // 3.8.10 $mini_version = $short_version[0].'.'.$short_version[1]; // 3.8 // load jQuery only when needed if ($option == 'com_plugins' || ($option == 'com_modules' || $option == 'com_advancedmodules') || ($option == 'com_config' && $view == 'component' && ( $component == 'com_vmsales' || $component == 'com_monthlyarchive' || $component == 'com_loginasuser' || $component == 'com_fix404errorlinks' ) || ( $option == 'com_vmsales' || $option == 'com_monthlyarchive' || $option == 'com_loginasuser' || $option == 'com_fix404errorlinks' ) )) { if (version_compare(JVERSION, '3.0', 'lt')) { JFactory::getDocument()->addScript(JURI::root(true).'/media/plg_system_web357framework/js/jquery-1.10.2.min.js'); } else { JHtml::_('jquery.framework'); } // js JFactory::getDocument()->addScript(JURI::root(true).'/media/plg_system_web357framework/js/script.min.js?v=1.7.7_20190611131146'); // css JFactory::getDocument()->addStyleSheet(JURI::root(true).'/media/plg_system_web357framework/css/style.min.css?v=1.7.7_20190611131146'); } } } function onContentPrepareForm($form, $data) { $app = JFactory::getApplication(); $option = $app->input->get('option'); $view = $app->input->get('view'); $layout = $app->input->get('layout'); if ($app->isAdmin() && $option == 'com_plugins' && $view = 'plugin' && $layout == 'edit') { if (!($form instanceof JForm)) { $this->_subject->setError('JERROR_NOT_A_FORM'); return false; } // Get plugin's element $db = JFactory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName('element')); $query->from($db->quoteName('#__extensions')); $query->where($db->quoteName('type'). ' = '. $db->quote('plugin')); $query->where($db->quoteName('folder'). ' = '. $db->quote('system')); $query->where($db->quoteName('extension_id'). ' = '. $app->input->get('extension_id')); $db->setQuery($query); $element = $db->loadResult(); // BEGIN: Cookies Policy Notification Bar - Joomla! Plugin if ($element == 'cookiespolicynotificationbar') { // Get language tag $language = JFactory::getLanguage(); $language_tag = str_replace("-", "_", $language->get('tag')); $language_tag = !empty($language_tag) ? $language_tag : "en_GB"; // Get languages and load form $lang_codes_arr = array(); jimport( 'joomla.language.helper' ); $languages = JLanguageHelper::getLanguages(); if (!empty($languages) && count($languages) > 1): // Get language details foreach ($languages as $tag => $language): // get language name $language_name = $language->title_native; $language->lang_code = str_replace('-', '_', $language->lang_code); $lang_codes_arr[] = $language->lang_code; // Load the plugin language file to get the translations of each language $extension = 'plg_system_cookiespolicynotificationbar'; $base_dir = JPATH_SITE.'/plugins/system/cookiespolicynotificationbar/'; $language_tag = str_replace('_', '-', $language->lang_code); $reload = true; JFactory::getLanguage()->load($extension, $base_dir, $language_tag, $reload); $this->getLangForm($form, $language_name, $language->lang_code); endforeach; else: // Get language details $language = JFactory::getLanguage(); $frontend_language_tag = JComponentHelper::getParams('com_languages')->get('site'); $frontend_language_default_tag = $frontend_language_tag; $frontend_language_tag = str_replace("-", "_", $frontend_language_tag); $frontend_language_tag = !empty($frontend_language_tag) ? $frontend_language_tag : "en_GB"; $lang = new stdClass(); $lang->known_languages = JFactory::getLanguage()->getKnownLanguages(); $known_lang_name = $lang->known_languages[$frontend_language_default_tag]['name']; $known_lang_tag = $lang->known_languages[$frontend_language_default_tag]['tag']; $known_lang_name = !empty($known_lang_name) ? $known_lang_name : 'English'; $known_lang_tag = !empty($known_lang_tag) ? $known_lang_tag : 'en-GB'; $frontend_language_tag = !empty($frontend_language_tag) ? $frontend_language_tag : $known_lang_tag; $language_name = $this->getLanguageNameByTag($frontend_language_default_tag); $language_name = !empty($language_name) ? str_replace(' ('.str_replace('_', '-',$language_tag).')', '', $language_name) : $known_lang_name; $lang_codes_arr[] = $frontend_language_tag; // Load the plugin language file to get the translations of each language $extension = 'plg_system_cookiespolicynotificationbar'; $base_dir = JPATH_SITE.'/plugins/system/cookiespolicynotificationbar/'; $language_tag = str_replace('_', '-', $frontend_language_tag); $reload = true; JFactory::getLanguage()->load($extension, $base_dir, $language_tag, $reload); // load form $this->getLangForm($form, $language_name, $frontend_language_tag); endif; // Load the plugin language file to get the translations of the base language $lang = JFactory::getLanguage(); $current_lang_tag = $lang->getTag(); $extension = 'plg_system_cookiespolicynotificationbar'; $base_dir = JPATH_SITE.'/plugins/system/cookiespolicynotificationbar/'; $reload = true; $lang->load($extension, $base_dir, $current_lang_tag, $reload); } // END: Cookies Policy Notification Bar - Joomla! Plugin // BEGIN: Login as User - Joomla! Plugin (add extra fields for user groups and admins) if ($element == 'loginasuser') { // Get User Groups $db = JFactory::getDbo(); $query = $db->getQuery(true); $query->select('id, title'); $query->from('#__usergroups'); $query->where('parent_id > 0'); $query->order('lft ASC'); $db->setQuery($query); $usergroups = $db->loadObjectList(); if (!empty($usergroups)) { foreach ($usergroups as $usergroup) { $this->getUsersFormFieldLoginAsUser($form, $usergroup->id, $usergroup->title); } } } // END: Login as User - Joomla! Plugin (add extra fields for user groups and admins) } return true; } public function getLangForm($form, $language_name = "English", $lang_code = "en_GB") { if (isset($form)) { // start building xml file $xmlText = '<?xml version="1.0" encoding="utf-8"?> <form> <fields> <fieldset name="texts_for_languages" addfieldprefix="Joomla\Component\Menus\Administrator\Field">'; // HEADER $xmlText .= '<field type="langheader" name="header_'.$lang_code.'" class="w357_large_header" addfieldpath="/plugins/system/cookiespolicynotificationbar/elements" lang_code="'.$lang_code.'" language_name="'.$language_name.'" />'; // SMALL HEADER: Texts for the Cookies Policy Notification Bar $xmlText .= '<field type="header" class="w357_small_header" label="PLG_SYSTEM_CPNB_TEXTS_FOR_THE_BAR_HEADER" />'; // MESSAGE $xmlText .= '<field name="header_message_'.$lang_code.'" type="textarea" default="'.JText::_('J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_HEADER_MESSAGE_DEFAULT').'" label="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_HEADER_MESSAGE_LBL" description="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_HEADER_MESSAGE_DESC" rows="6" cols="50" filter="raw" class="cpnb-notification-bar-message w357-display-inline-block" />'; // OK BUTTON $xmlText .= '<field name="ok_btn_'.$lang_code.'" type="radio" class="btn-group btn-group-yesno" default="1" label="PLG_SYSTEM_CPNB_OK_BTN_LBL" description="PLG_SYSTEM_CPNB_OK_BTN_DESC"> <option value="1">JSHOW</option> <option value="0">JHIDE</option> </field>'; // OK BUTTON TEXT $xmlText .= '<field name="button_text_'.$lang_code.'" type="text" default="'.JText::_('J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_BUTTON_DEFAULT_TEXT_VALUE').'" label="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_BUTTON_TEXT_LBL" description="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_BUTTON_TEXT_DESC" filter="STRING" showon="ok_btn_'.$lang_code.':1" />'; // DECLINE BUTTON $xmlText .= '<field name="decline_btn_'.$lang_code.'" type="radio" class="btn-group btn-group-yesno" default="1" label="PLG_SYSTEM_CPNB_DECLINE_BTN_LBL" description="PLG_SYSTEM_CPNB_DECLINE_BTN_DESC"> <option value="1">JSHOW</option> <option value="0">JHIDE</option> </field>'; // DECLINE BUTTON TEXT $xmlText .= '<field name="decline_btn_text_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_DECLINE_BTN_DEFAULT_TEXT_VALUE').'" label="PLG_SYSTEM_CPNB_DECLINE_BTN_TEXT_LBL" description="PLG_SYSTEM_CPNB_DECLINE_BTN_TEXT_DESC" filter="STRING" showon="decline_btn_'.$lang_code.':1" />'; // CANCEL BUTTON $xmlText .= '<field name="cancel_btn_'.$lang_code.'" type="radio" class="btn-group btn-group-yesno" default="0" label="PLG_SYSTEM_CPNB_CANCEL_BTN_LBL" description="PLG_SYSTEM_CPNB_CANCEL_BTN_DESC"> <option value="1">JSHOW</option> <option value="0">JHIDE</option> </field>'; // CANCEL BUTTON TEXT $xmlText .= '<field name="cancel_btn_text_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_CANCEL_BTN_DEFAULT_TEXT_VALUE').'" label="PLG_SYSTEM_CPNB_CANCEL_BTN_TEXT_LBL" description="PLG_SYSTEM_CPNB_CANCEL_BTN_TEXT_DESC" filter="STRING" showon="cancel_btn_'.$lang_code.':1" />'; // SETTINGS BUTTON $xmlText .= '<field name="settings_btn_'.$lang_code.'" type="radio" class="btn-group btn-group-yesno" default="1" showon="modalState:1" label="PLG_SYSTEM_CPNB_SETTINGS_BTN_LBL" description="PLG_SYSTEM_CPNB_SETTINGS_BTN_DESC"> <option value="1">JSHOW</option> <option value="0">JHIDE</option> </field>'; // SETTINGS BUTTON TEXT $xmlText .= '<field name="settings_btn_text_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_SETTINGS_BTN_DEFAULT_TEXT_VALUE').'" label="PLG_SYSTEM_CPNB_SETTINGS_BTN_TEXT_LBL" description="PLG_SYSTEM_CPNB_SETTINGS_BTN_TEXT_DESC" filter="STRING" showon="settings_btn_'.$lang_code.':1" />'; // MORE INFO BUTTON $xmlText .= '<field name="more_info_btn_'.$lang_code.'" type="radio" class="btn-group btn-group-yesno cpnb-modal-info-window" default="1" label="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_MOR_INFO_BTN_LBL" description="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_MOR_INFO_BTN_DESC"> <option value="1">JSHOW</option> <option value="0">JHIDE</option> </field>'; // BUTTON MORE TEXT $xmlText .= '<field name="button_more_text_'.$lang_code.'" type="text" default="'.JText::_('J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_BUTTON_MORETEXT_DEFAULT_VALUE').'" label="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_BUTTON_MORETEXT_LBL" description="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_BUTTON_MORETEXT_DESC" filter="STRING" showon="more_info_btn_'.$lang_code.':1" />'; // LINK OR Menu Item $xmlText .= '<field name="more_info_btn_type_'.$lang_code.'" type="list" default="custom_text" showon="more_info_btn_'.$lang_code.':1" class="cpnb-modal-info-window" label="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_MORE_INFO_BTN_TYPE_LBL" description="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_MORE_INFO_BTN_TYPE_DESC"> <option value="link">J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_MORE_INFO_BTN_TYPE_OPTION_LINK</option> <option value="menu_item">J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_MORE_INFO_BTN_TYPE_OPTION_MENU_ITEM</option> <option value="custom_text">J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_MORE_INFO_BTN_TYPE_OPTION_CUSTOM_TEXT</option> </field>'; // CUSTOM TEXT $xmlText .= '<field name="custom_text_'.$lang_code.'" type="editor" default="'.JText::_('J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_CUSTOM_TEXT_DEFAULT').'" label="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_CUSTOM_TEXT_LBL" description="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_CUSTOM_TEXT_DESC" width="300" filter="safehtml" showon="more_info_btn_'.$lang_code.':1[AND]more_info_btn_type_'.$lang_code.':custom_text" class="cpnb-modal-info-window" />'; // CUSTOM LINK FOR THE MORE INFO BUTTON $xmlText .= '<field name="button_more_link_'.$lang_code.'" type="url" default="cookies-policy" label="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_BUTTON_MORELINK_LBL" description="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_BUTTON_MORELINK_DESC" showon="more_info_btn_'.$lang_code.':1[AND]more_info_btn_type_'.$lang_code.':link" />'; // MODAL MENU ITEM $xmlText .= '<field name="cpnb_modal_menu_item_'.$lang_code.'" type="modal_menu" label="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_SELECT_MENU_ITEM_LBL" description="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_SELECT_MENU_ITEM_DESC" required="false" select="true" new="true" edit="true" clear="true" addfieldpath="/administrator/components/com_menus/models/fields" showon="more_info_btn_'.$lang_code.':1[AND]more_info_btn_type_'.$lang_code.':menu_item" />'; // LINK TARGET $xmlText .= '<field name="link_target_'.$lang_code.'" type="list" default="_self" showon="more_info_btn_'.$lang_code.':1[AND]more_info_btn_type_'.$lang_code.'!:custom_text" label="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_LINK_TARGET_LBL" description="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_LINK_TARGET_DESC"> <option value="_self">J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_LINK_TARGET_SAME_LBL</option> <option value="_blank">J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_LINK_TARGET_NEW_LBL</option> <option value="popup">J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_LINK_TARGET_POPUP_WINDOW_LBL</option> </field>'; // POPUP WINDOW WIDTH $xmlText .= '<field name="popup_width_'.$lang_code.'" type="text" default="800" showon="more_info_btn_'.$lang_code.':1[AND]link_target_'.$lang_code.':popup[AND]more_info_btn_type_'.$lang_code.'!:custom_text" label="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_POPUP_WINDOW_WIDTH_LBL" description="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_POPUP_WINDOW_WIDTH_DESC" />'; // POPUP WINDOW HEIGHT $xmlText .= '<field name="popup_height_'.$lang_code.'" type="text" default="600" showon="more_info_btn_'.$lang_code.':1[AND]link_target_'.$lang_code.':popup[AND]more_info_btn_type_'.$lang_code.'!:custom_text" label="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_POPUP_WINDOW_HEIGHT_LBL" description="J357_PLG_SYSTEM_COOKIESPOLICYNOTIFICATIONBAR_POPUP_WINDOW_HEIGHT_DESC" />'; // SMALL HEADER: Texts for the Shortcode Functionality $xmlText .= '<field type="header" class="w357_small_header" label="PLG_SYSTEM_CPNB_TEXTS_FOR_THE_SHORTCODE_HEADER" showon="enable_shortcode_functionality:1" />'; $xmlText .= '<field name="note_texts_for_the_shortcode_'.$lang_code.'" type="note" label="" description="'.JText::_('PLG_SYSTEM_CPNB_TEXTS_FOR_THE_SHORTCODE_NOTE').'" showon="enable_shortcode_functionality:1" />'; // TEXT BEFORE ACCEPT/DECLINE $xmlText .= '<field type="header" class="w357_small_header" label="PLG_SYSTEM_CPNB_TEXT_BEFORE_ACCEPT_DECLINE_LBL" showon="enable_shortcode_functionality:1" />'; $text_before_accept_decline_default = '<p>The cookies on this website are disabled.<br>This decision can be reversed anytime by clicking the below button "Allow Cookies".</p><div class="cpnb-margin">{cpnb_buttons}</div>'; $xmlText .= '<field name="shortcode_text_before_accept_or_decline_'.$lang_code.'" type="editor" default="'.$text_before_accept_decline_default.'" label="" description="PLG_SYSTEM_CPNB_TEXT_BEFORE_ACCEPT_DECLINE_DESC" width="300" filter="safehtml" showon="enable_shortcode_functionality:1" />'; // TEXT AFTER ACCEPT $xmlText .= '<field type="header" class="w357_small_header" label="PLG_SYSTEM_CPNB_TEXT_AFTER_ACCEPT_LBL" showon="enable_shortcode_functionality:1" />'; $text_after_accept_default = '<h3>Cookies served through our website</h3><div class="cpnb-margin">{cpnb_cookies_info_table}</div><p>You have allowed website's cookies to be placed on your browser.</p><p>This decision can be reversed anytime by clicking the below button "Delete Cookies".</p><div class="cpnb-margin">{cpnb_buttons}</div>'; $xmlText .= '<field name="shortcode_text_after_accept_'.$lang_code.'" type="editor" default="'.$text_after_accept_default.'" label="" description="PLG_SYSTEM_CPNB_TEXT_AFTER_ACCEPT_DESC" width="300" filter="safehtml" showon="enable_shortcode_functionality:1" />'; // TEXT AFTER DECLINE $xmlText .= '<field type="header" class="w357_small_header" label="PLG_SYSTEM_CPNB_TEXT_AFTER_DECLINE_LBL" showon="enable_shortcode_functionality:1" />'; $text_after_decline_default = '<p>The cookies on this website are declined by you earlier.</p><p>This decision can be reversed anytime by clicking the below button "Allow Cookies".</p><h3>Cookies served through our website</h3><div class="cpnb-margin">{cpnb_cookies_info_table}</div><div class="cpnb-margin">{cpnb_buttons}</div>'; $xmlText .= '<field name="shortcode_text_after_decline_'.$lang_code.'" type="editor" default="'.$text_after_decline_default.'" label="" description="PLG_SYSTEM_CPNB_TEXT_AFTER_DECLINE_DESC" width="300" filter="safehtml" showon="enable_shortcode_functionality:1" />'; // SMALL HEADER: Other texts for translations $xmlText .= '<field type="header" class="w357_small_header" label="PLG_SYSTEM_CPNB_OTHER_TEXTS_FOR_TRANSLATIONS_HEADER" showon="enable_shortcode_functionality:1[OR]modalState:1" />'; // BUTTONS (Note) $xmlText .= '<field name="note_buttons_'.$lang_code.'" type="note" label="PLG_SYSTEM_CPNB_BUTTONS_NOTE_LBL" description="" showon="enable_shortcode_functionality:1[OR]modalState:1" />'; // ALLOW COOKIES BUTTON TEXT $xmlText .= '<field name="allow_cookies_btn_text_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_ALLOW_COOKIES').'" label="PLG_SYSTEM_CPNB_ALLOW_COOKIES_BTN_TEXT_LBL" description="PLG_SYSTEM_CPNB_ALLOW_COOKIES_BTN_TEXT_DESC" filter="STRING" showon="enable_shortcode_functionality:1[OR]modalState:1" />'; // DECLINE COOKIES BUTTON TEXT $xmlText .= '<field name="decline_cookies_btn_text_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_DECLINE_COOKIES').'" label="PLG_SYSTEM_CPNB_DECLINE_COOKIES_BTN_TEXT_LBL" description="PLG_SYSTEM_CPNB_DECLINE_COOKIES_BTN_TEXT_DESC" filter="STRING" showon="enable_shortcode_functionality:1[OR]modalState:1" />'; // DELETE COOKIES BUTTON TEXT $xmlText .= '<field name="delete_cookies_btn_text_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_DELETE_COOKIES').'" label="PLG_SYSTEM_CPNB_DELETE_COOKIES_BTN_TEXT_LBL" description="PLG_SYSTEM_CPNB_DELETE_COOKIES_BTN_TEXT_DESC" filter="STRING" showon="enable_shortcode_functionality:1" />'; // RELOAD COOKIES BUTTON TEXT $xmlText .= '<field name="reload_cookies_btn_text_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_RELOAD').'" label="PLG_SYSTEM_CPNB_RELOAD_COOKIES_BTN_TEXT_LBL" description="PLG_SYSTEM_CPNB_RELOAD_COOKIES_BTN_TEXT_DESC" filter="STRING" showon="enable_shortcode_functionality:1" />'; // SAVE SETTINGS BUTTON TEXT $xmlText .= '<field name="save_settings_btn_text_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_SAVE_SETTINGS').'" label="PLG_SYSTEM_CPNB_SAVE_SETTINGS_BTN_TEXT_LBL" description="PLG_SYSTEM_CPNB_SAVE_SETTINGS_BTN_TEXT_DESC" filter="STRING" showon="modalState:1" />'; // ALERT MESSAGES (Note) $xmlText .= '<field name="note_alert_messages_'.$lang_code.'" type="note" label="PLG_SYSTEM_ALERT_MESSAGES_NOTE_LBL" description="" />'; // ALLOW COOKIES CONFIRMATION ALERT $xmlText .= '<field name="allow_cookies_confirmation_alert_txt_'.$lang_code.'" type="textarea" default="'.JText::_('PLG_SYSTEM_CPNB_ALLOW_COOKIES_CONFIRMATION').'" label="PLG_SYSTEM_CPNB_ALLOW_COOKIES_CONFIRMATION_LBL" description="PLG_SYSTEM_CPNB_ALLOW_COOKIES_CONFIRMATION_DESC" rows="6" cols="50" filter="raw" />'; // DELETE COOKIES CONFIRMATION ALERT $xmlText .= '<field name="delete_cookies_confirmation_alert_txt_'.$lang_code.'" type="textarea" default="'.JText::_('PLG_SYSTEM_CPNB_DELETE_COOKIES_CONFIRMATION').'" label="PLG_SYSTEM_CPNB_DELETE_COOKIES_CONFIRMATION_LBL" description="PLG_SYSTEM_CPNB_DELETE_COOKIES_CONFIRMATION_DESC" rows="6" cols="50" filter="raw" />'; // LOCKED COOKIES CATEGORY CONFIRMATION ALERT $xmlText .= '<field name="locked_cookies_category_confirmation_alert_txt_'.$lang_code.'" type="textarea" default="'.JText::_('PLG_SYSTEM_CPNB_LOCKED_COOKIES_CATEGORY_CONFIRMATION').'" label="PLG_SYSTEM_CPNB_LOCKED_COOKIES_CATEGORY_CONFIRMATION_LBL" description="PLG_SYSTEM_CPNB_LOCKED_COOKIES_CATEGORY_CONFIRMATION_DESC" rows="6" cols="50" filter="raw" showon="modalState:1" />'; // OTHER TEXTS (Note) $xmlText .= '<field name="note_other_texts_'.$lang_code.'" type="note" label="PLG_SYSTEM_OTHER_TEXTS_LBL" description="" showon="enable_shortcode_functionality:1" />'; // ACCEPT COOKIE DESCRIPTION $xmlText .= '<field name="accept_cookies_descrpiption_txt_'.$lang_code.'" type="textarea" default="'.JText::_('PLG_SYSTEM_CPNB_ACCEPT_COOKIES_DESCRIPTION_DEFAULT_TEXT').'" label="PLG_SYSTEM_CPNB_ACCEPT_COOKIES_DESCRIPTION_LBL" description="PLG_SYSTEM_CPNB_ACCEPT_COOKIES_DESCRIPTION_DESC" rows="6" cols="50" filter="raw" showon="enable_shortcode_functionality:1" />'; // DECLINE COOKIE DESCRIPTION $xmlText .= '<field name="decline_cookies_descrpiption_txt_'.$lang_code.'" type="textarea" default="'.JText::_('PLG_SYSTEM_CPNB_DECLINE_COOKIES_DESCRIPTION_DEFAULT_TEXT').'" label="PLG_SYSTEM_CPNB_DECLINE_COOKIES_DESCRIPTION_LBL" description="PLG_SYSTEM_CPNB_DECLINE_COOKIES_DESCRIPTION_DESC" rows="6" cols="50" filter="raw" showon="enable_shortcode_functionality:1" />'; // SETTINGS COOKIE DESCRIPTION $xmlText .= '<field name="settings_cookies_descrpiption_txt_'.$lang_code.'" type="textarea" default="'.JText::_('PLG_SYSTEM_CPNB_SETTINGS_COOKIES_DESCRIPTION_DEFAULT_TEXT').'" label="PLG_SYSTEM_CPNB_SETTINGS_COOKIES_DESCRIPTION_LBL" description="PLG_SYSTEM_CPNB_SETTINGS_COOKIES_DESCRIPTION_DESC" rows="6" cols="50" filter="raw" showon="enable_shortcode_functionality:1" />'; // PLEASE WAIT $xmlText .= '<field name="please_wait_txt_'.$lang_code.'" type="textarea" default="'.JText::_('PLG_SYSTEM_CPNB_PLEASE_WAIT').'" label="PLG_SYSTEM_CPNB_PLEASE_WAIT_LBL" description="PLG_SYSTEM_CPNB_PLEASE_WAIT_DESC" rows="6" cols="50" filter="raw" showon="enable_shortcode_functionality:1" />'; // DAYS $xmlText .= '<field name="days_txt_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_DAYS_DEFAULT_TEXT').'" label="PLG_SYSTEM_CPNB_DAYS_LBL" description="PLG_SYSTEM_CPNB_DAYS_DESC" filter="raw" showon="enable_shortcode_functionality:1" />'; // FLOAT ICON BUTTON TEXT $xmlText .= '<field name="float_icon_button_txt_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_FLOAT_ICON_BUTTON_TEXT_DEFAULT_TEXT').'" label="PLG_SYSTEM_CPNB_FLOAT_ICON_BUTTON_TEXT_LBL" description="PLG_SYSTEM_CPNB_FLOAT_ICON_BUTTON_TEXT_DESC" filter="raw" showon="modalState:1[AND]modalFloatButtonState:1" />'; // COOKIES MANAGER HEADING TEXT $xmlText .= '<field name="cookies_manager_heading_txt_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_COOKIES_MANAGER_HEADING_TEXT_DEFAULT_TEXT').'" label="PLG_SYSTEM_CPNB_COOKIES_MANAGER_HEADING_TEXT_LBL" description="PLG_SYSTEM_CPNB_COOKIES_MANAGER_HEADING_TEXT_DESC" filter="raw" showon="modalState:1" />'; // COOKIES CATEGORY CHECKBOX LABEL TEXT $xmlText .= '<field name="cookies_category_checkbox_label_txt_'.$lang_code.'" type="text" default="'.JText::_('JENABLED').'" label="PLG_SYSTEM_CPNB_COOKIES_CATEGORY_CHECKBOX_LABEL_TEXT_LBL" description="PLG_SYSTEM_CPNB_COOKIES_CATEGORY_CHECKBOX_LABEL_TEXT_DESC" filter="raw" showon="modalState:1" />'; // COOKIES CATEGORY LOCKED TEXT $xmlText .= '<field name="cookies_category_locked_txt_'.$lang_code.'" type="text" default="'.JText::_('PLG_SYSTEM_CPNB_COOKIES_CATEGORY_LOCKED_TEXT_DEFAULT').'" label="PLG_SYSTEM_CPNB_COOKIES_CATEGORY_LOCKED_TEXT_LBL" description="PLG_SYSTEM_CPNB_COOKIES_CATEGORY_LOCKED_TEXT_DESC" filter="raw" showon="modalState:1" />'; // OLD TEXTS FOR LANGUAGES $xmlText .= '<field name="textsforlanguagesold" id="textsforlanguagesold" type="textsforlanguagesold" default="600" addfieldpath="/plugins/system/cookiespolicynotificationbar/elements" />'; $xmlText .= '<field type="spacer" name="myspacer" hr="true" />'; // closing xml file $xmlText .= ' </fieldset> </fields> </form>'; $xmlObj = new SimpleXMLElement($xmlText); $form->setField($xmlObj, 'params', true, 'texts_for_languages'); } } public function getUsersFormFieldLoginAsUser($form, $usergroup_id, $usergroup_name) { if (isset($form)) { // start building xml file $xmlText = '<?xml version="1.0" encoding="utf-8"?> <form> <fields> <fieldset>'; // HEADER $xmlText .= '<field type="header" name="header_'.$usergroup_id.'" class="w357_small_header" label="'.$usergroup_name.' ('.JText::_('PLG_LOGINASUSER_USER_GROUP').')" />'; // ENABLE/DISABLED FOR THIS USER GROUP $xmlText .= '<field name="enable_'.$usergroup_id.'" type="radio" class="btn-group btn-group-yesno" default="1" label="PLG_LOGINASUSER_ENABLE_FOR_THIS_USERGROUP_LBL" description="PLG_LOGINASUSER_ENABLE_FOR_THIS_USERGROUP_DESC"> <option value="1">JENABLED</option> <option value="0">JDISABLED</option> </field>'; // NOTE $xmlText .= '<field name="note_'.$usergroup_id.'" type="note" label="" description="'.JText::_('PLG_LOGINASUSER_USER_GROUP_NOTE').'" showon="enable_'.$usergroup_id.':1" />'; // USERS $xmlText .= '<field name="users_'.$usergroup_id.'" type="sql" label="PLG_LOGINASUSER_SELECT_ADMINS_LBL" description="PLG_LOGINASUSER_SELECT_ADMINS_DESC" query="SELECT u.id AS value, CONCAT(u.name, \' (\', GROUP_CONCAT(ug.title), \')\') AS users_'.$usergroup_id.' FROM #__users AS u LEFT JOIN #__user_usergroup_map AS ugm ON u.id = ugm.user_id LEFT JOIN #__usergroups AS ug ON ugm.group_id = ug.id WHERE ug.title != \'Registered\' GROUP BY u.id ORDER BY u.name ASC" multiple="true" showon="enable_'.$usergroup_id.':1" />'; $xmlText .= '<field type="spacer" name="myspacer_'.$usergroup_id.'" hr="true" />'; // closing xml file $xmlText .= ' </fieldset> </fields> </form>'; $xmlObj = new SimpleXMLElement($xmlText); $form->setField($xmlObj, '', true, 'permissions_for_loginasuser'); } } public function getDefaultLanguageName() { $db = JFactory::getDBO(); $query = "SELECT title_native " ."FROM #__languages " ."WHERE published = 1" ; $db->setQuery($query); $db->execute(); return $db->loadResult(); } public function getLanguageNameByTag($tag) { $db = JFactory::getDBO(); $query = "SELECT title_native " ."FROM #__languages " ."WHERE lang_code = '".$tag."' AND published = 1" ; $db->setQuery($query); $db->execute(); $result = $db->loadResult(); // If there are more than one language if ($result !== null): return $result; // If there is only one language else: return $this->getDefaultLanguageName(); endif; } public function getLanguageImage($lang_code) { $db = JFactory::getDBO(); $query = "SELECT image " ."FROM #__languages " ."WHERE lang_code = '".$lang_code."' AND published = 1" ; $db->setQuery($query); $db->execute(); $result = $db->loadResult(); // If there are more than one language if ($result !== null): return $result; // If there is only one language else: return ''; endif; } } endif;