diff --git a/CHANGELOG.md b/CHANGELOG.md index 657c62ca5..451a01447 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,15 +1,25 @@ -# v3.1.19 +# v3.1.26 -- We fixed #972 so that custom code (in the header) will be added after the power namespaces -- We added a message to show when a server move failed -- We fixed the BaseConfig to not use '_' as separator -- We fixed the footable loading issue -- We removed the need for passing placeholders by reference -- We added the option to generate a CHANGELOG -- We fixed the server class to load new client if server details changed. -- We fixed the readme placeholder issue #978. -- We fixed the empty server url issue #978. -- Fixed Package import to now use the phplibsec version 3 +- Fixed changelog direction so newest changes is listed at top of the file. +- Finished the init function of super powers. +- Adds rest function inside super power. +- Adds super powers to all templates. +- Updates many helper class methods to now use the utility classes. +- Adds the `spl_autoload_register` method to the component entry file (as-well). +- Moved most methods from the compiler fields class to powers. #955 +- Refactored many new builder classes from the registry class. +- Converted the Content class to two builder classes. +- Adds option to add additional templates to a module. +- Resolves #1002 by adding STRING instead of WORD. +- Ported the FOF encryption class into Powers. https://git.vdm.dev/joomla/fof +- Changed all CSS and JS to use `JHtml::_(` instead of `$this->document->` in compiler code. +- Adds option to turn jQuery off if UIKIT 3 is added. +- Adds option to auto write injection boilerplate code in Powers area. +- Adds option to auto write service provider boilerplate code in the Powers area. +- Improved the `getDynamicContent` method and all banner locations to fetch from https://git.vdm.dev/joomla/jcb-external/ instead. +- Major stability improvements all over the new powers complier classes. +- New [base Registry class](https://git.vdm.dev/joomla/super-powers/src/branch/master/src/7e822c03-1b20-41d1-9427-f5b8d5836af7) has been created specially for JCB. +- Remember to update all plug-ins with this version update (use the package). # v3.1.24 @@ -24,4 +34,17 @@ - Adds Superpower Key (SPK) replacement feature - Adds Superpower search (GREP) feature - Adds Power Insert/Update Classes -- Fix #995 that all update sites are using the correct URL \ No newline at end of file +- Fix #995 that all update sites are using the correct URL + +# v3.1.19 + +- We fixed #972 so that custom code (in the header) will be added after the power namespaces +- We added a message to show when a server move failed +- We fixed the BaseConfig to not use '_' as separator +- We fixed the footable loading issue +- We removed the need for passing placeholders by reference +- We added the option to generate a CHANGELOG +- We fixed the server class to load new client if server details changed. +- We fixed the readme placeholder issue #978. +- We fixed the empty server url issue #978. +- Fixed Package import to now use the phplibsec version 3 \ No newline at end of file diff --git a/README.md b/README.md index 8604da1a1..4d10b3931 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ The Component Builder for [Joomla](https://extensions.joomla.org/extension/compo Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have! -You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.1.24) with **ALL** its features and **ALL** concepts totally open-source and free! +You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.1.26) with **ALL** its features and **ALL** concepts totally open-source and free! > Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45) @@ -144,17 +144,17 @@ TODO + *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io) + *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder) + *First Build*: 30th April, 2015 -+ *Last Build*: 22nd May, 2023 -+ *Version*: 3.1.24 ++ *Last Build*: 18th October, 2023 ++ *Version*: 3.1.26 + *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved. + *License*: GNU General Public License version 2 or later; see LICENSE.txt -+ *Line count*: **559431** -+ *Field count*: **2041** -+ *File count*: **3934** -+ *Folder count*: **432** ++ *Line count*: **634483** ++ *Field count*: **2045** ++ *File count*: **4750** ++ *Folder count*: **449** > This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com). -> Developed by [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com) +> Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io) ## Contributors diff --git a/admin/README.txt b/admin/README.txt index 8604da1a1..4d10b3931 100644 --- a/admin/README.txt +++ b/admin/README.txt @@ -9,7 +9,7 @@ The Component Builder for [Joomla](https://extensions.joomla.org/extension/compo Whether you're a seasoned [Joomla](https://extensions.joomla.org/extension/component-builder/) developer, or have just started, Component Builder will save you lots of time and money. A real must have! -You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.1.24) with **ALL** its features and **ALL** concepts totally open-source and free! +You can install it quite easily and with no limitations. On [gitea](https://git.vdm.dev/joomla/Component-Builder/tags) is the latest release (3.1.26) with **ALL** its features and **ALL** concepts totally open-source and free! > Watch Quick Build of a Hello World component in [JCB on Youtube](https://www.youtube.com/watch?v=IQfsLYIeblk&list=PLQRGFI8XZ_wtGvPQZWBfDzzlERLQgpMRE&index=45) @@ -144,17 +144,17 @@ TODO + *Author*: [Llewellyn van der Merwe](mailto:joomla@vdm.io) + *Name*: [Component Builder](https://git.vdm.dev/joomla/Component-Builder) + *First Build*: 30th April, 2015 -+ *Last Build*: 22nd May, 2023 -+ *Version*: 3.1.24 ++ *Last Build*: 18th October, 2023 ++ *Version*: 3.1.26 + *Copyright*: Copyright (C) 2015 Vast Development Method. All rights reserved. + *License*: GNU General Public License version 2 or later; see LICENSE.txt -+ *Line count*: **559431** -+ *Field count*: **2041** -+ *File count*: **3934** -+ *Folder count*: **432** ++ *Line count*: **634483** ++ *Field count*: **2045** ++ *File count*: **4750** ++ *Folder count*: **449** > This **component** was build with a [Joomla](https://extensions.joomla.org/extension/component-builder/) [Automated Component Builder](https://www.joomlacomponentbuilder.com). -> Developed by [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com) +> Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io) ## Contributors diff --git a/admin/access.xml b/admin/access.xml index 64689b109..37dfadbef 100644 --- a/admin/access.xml +++ b/admin/access.xml @@ -486,7 +486,6 @@ - diff --git a/admin/compiler/joomla_3/AdminController.php b/admin/compiler/joomla_3/AdminController.php index 34a6d3228..98c6d9aeb 100644 --- a/admin/compiler/joomla_3/AdminController.php +++ b/admin/compiler/joomla_3/AdminController.php @@ -47,4 +47,4 @@ class ###Component###Controller###Views### extends AdminController { return parent::getModel($name, $prefix, $config); }###CONTROLLEREXIMPORTMETHOD######CUSTOM_ADMIN_DYNAMIC_BUTTONS_CONTROLLER######ADMIN_CUSTOM_BUTTONS_CONTROLLER_LIST### -} +} \ No newline at end of file diff --git a/admin/compiler/joomla_3/Helper.php b/admin/compiler/joomla_3/Helper.php index 12ed53087..ded32f2d4 100644 --- a/admin/compiler/joomla_3/Helper.php +++ b/admin/compiler/joomla_3/Helper.php @@ -26,14 +26,14 @@ abstract class ###Component###Helper { /** * Composer Switch - * + * * @var array */ protected static $composer = array(); /** * The Main Active Language - * + * * @var string */ public static $langTag;###ADMIN_GLOBAL_EVENT_HELPER######CUSTOM_HELPER_SCRIPT######BOTH_CUSTOM_HELPER_SCRIPT### @@ -47,7 +47,7 @@ abstract class ###Component###Helper if (!isset(self::$composer[$target])) { // get the function name - $functionName = self::safeString('compose' . $target); + $functionName = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe('compose' . $target); // check if method exist if (method_exists(__CLASS__, $functionName)) { @@ -69,7 +69,7 @@ abstract class ###Component###Helper /** * Joomla version object - */ + */ protected static $JVersion; /** @@ -78,7 +78,7 @@ abstract class ###Component###Helper public static function jVersion() { // check if set - if (!self::checkObject(self::$JVersion)) + if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check(self::$JVersion)) { self::$JVersion = new JVersion(); } @@ -116,8 +116,8 @@ abstract class ###Component###Helper $link_front = ''; $link_back = ''; } - $contributors[$nr]['title'] = self::htmlEscape($params->get("titleContributor".$nr)); - $contributors[$nr]['name'] = $link_front.self::htmlEscape($params->get("nameContributor".$nr)).$link_back; + $contributors[$nr]['title'] = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("titleContributor".$nr)); + $contributors[$nr]['name'] = $link_front.Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("nameContributor".$nr)).$link_back; } } return $contributors; @@ -135,7 +135,7 @@ abstract class ###Component###Helper }###HELPER_CREATEUSER######HELPER_UIKIT######HELPER_EXEL### /** - * Get a Variable + * Get a Variable * * @param string $table The table from which to get the variable * @param string $where The value where @@ -145,46 +145,18 @@ abstract class ###Component###Helper * @param string $main The component in which the table is found * * @return mix string/int/float - * + * @deprecated 3.3 Use Super___db87c339_5bb6_4291_a7ef_2c48ea1b06bc___Power::var(...); */ public static function getVar($table, $where = null, $whereString = 'user', $what = 'id', $operator = '=', $main = '###component###') { - if(!$where) - { - $where = JFactory::getUser()->id; - } - // Get a db connection. - $db = JFactory::getDbo(); - // Create a new query object. - $query = $db->getQuery(true); - $query->select($db->quoteName(array($what))); - if (empty($table)) - { - $query->from($db->quoteName('#__'.$main)); - } - else - { - $query->from($db->quoteName('#__'.$main.'_'.$table)); - } - if (is_numeric($where)) - { - $query->where($db->quoteName($whereString) . ' '.$operator.' '.(int) $where); - } - elseif (is_string($where)) - { - $query->where($db->quoteName($whereString) . ' '.$operator.' '. $db->quote((string)$where)); - } - else - { - return false; - } - $db->setQuery($query); - $db->execute(); - if ($db->getNumRows()) - { - return $db->loadResult(); - } - return false; + return Super___db87c339_5bb6_4291_a7ef_2c48ea1b06bc___Power::var( + $table, + $where, + $whereString, + $what, + $operator, + $main + ); } /** @@ -199,110 +171,38 @@ abstract class ###Component###Helper * @param bool $unique The switch to return a unique array * * @return array - * + * @deprecated 3.3 Use Super___db87c339_5bb6_4291_a7ef_2c48ea1b06bc___Power::vars(...); */ public static function getVars($table, $where = null, $whereString = 'user', $what = 'id', $operator = 'IN', $main = '###component###', $unique = true) { - if(!$where) - { - $where = JFactory::getUser()->id; - } - - if (!self::checkArray($where) && $where > 0) - { - $where = array($where); - } - - if (self::checkArray($where)) - { - // prep main <-- why? well if $main='' is empty then $table can be categories or users - if (self::checkString($main)) - { - $main = '_'.ltrim($main, '_'); - } - // Get a db connection. - $db = JFactory::getDbo(); - // Create a new query object. - $query = $db->getQuery(true); - - $query->select($db->quoteName(array($what))); - if (empty($table)) - { - $query->from($db->quoteName('#__'.$main)); - } - else - { - $query->from($db->quoteName('#_'.$main.'_'.$table)); - } - // add strings to array search - if ('IN_STRINGS' === $operator || 'NOT IN_STRINGS' === $operator) - { - $query->where($db->quoteName($whereString) . ' ' . str_replace('_STRINGS', '', $operator) . ' ("' . implode('","',$where) . '")'); - } - else - { - $query->where($db->quoteName($whereString) . ' ' . $operator . ' (' . implode(',',$where) . ')'); - } - $db->setQuery($query); - $db->execute(); - if ($db->getNumRows()) - { - if ($unique) - { - return array_unique($db->loadColumn()); - } - return $db->loadColumn(); - } - } - return false; + return Super___db87c339_5bb6_4291_a7ef_2c48ea1b06bc___Power::vars( + $table, + $where, + $whereString, + $what, + $operator, + $main, + $unique + ); } + /** + * Convert a json object to a string + * + * @input string $value The json string to convert + * + * @returns a string + * @deprecated 3.3 Use Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::string(...); + */ public static function jsonToString($value, $sperator = ", ", $table = null, $id = 'id', $name = 'name') { - // do some table foot work - $external = false; - if (strpos($table, '#__') !== false) - { - $external = true; - $table = str_replace('#__', '', $table); - } - // check if string is JSON - $result = json_decode($value, true); - if (json_last_error() === JSON_ERROR_NONE) - { - // is JSON - if (self::checkArray($result)) - { - if (self::checkString($table)) - { - $names = array(); - foreach ($result as $val) - { - if ($external) - { - if ($_name = self::getVar(null, $val, $id, $name, '=', $table)) - { - $names[] = $_name; - } - } - else - { - if ($_name = self::getVar($table, $val, $id, $name)) - { - $names[] = $_name; - } - } - } - if (self::checkArray($names)) - { - return (string) implode($sperator,$names); - } - } - return (string) implode($sperator,$result); - } - return (string) json_decode($value); - } - return $value; + return Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::string( + $value, + $sperator, + $table, + $id, + $name + ); } public static function isPublished($id,$type) @@ -355,12 +255,12 @@ abstract class ###Component###Helper * @param object $user The user whose permissions we are loading * * @return object The JObject of permission/authorised actions - * + * */ public static function getActions($view, &$record = null, $views = null, $target = null, $component = '###component###', $user = 'null') { // load the user if not given - if (!self::checkObject($user)) + if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($user)) { // get the user object $user = JFactory::getUser(); @@ -368,10 +268,10 @@ abstract class ###Component###Helper // load the JObject $result = new JObject; // make view name safe (just incase) - $view = self::safeString($view); - if (self::checkString($views)) + $view = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($view); + if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($views)) { - $views = self::safeString($views); + $views = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($views); } // get all actions from component $actions = JAccess::getActionsFromFile( @@ -384,9 +284,9 @@ abstract class ###Component###Helper return $result; } // get created by if not found - if (self::checkObject($record) && !isset($record->created_by) && isset($record->id)) + if (Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($record) && !isset($record->created_by) && isset($record->id)) { - $record->created_by = self::getVar($view, $record->id, 'id', 'created_by', '=', $component); + $record->created_by = Super___db87c339_5bb6_4291_a7ef_2c48ea1b06bc___Power::var($view, $record->id, 'id', 'created_by', '=', $component); } // set actions only set in component settings $componentActions = array('core.admin', 'core.manage', 'core.options', 'core.export'); @@ -395,12 +295,12 @@ abstract class ###Component###Helper if ($target) { // convert to an array - if (self::checkString($target)) + if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($target)) { $target = array($target); } // check if we are good to go - if (self::checkArray($target)) + if (Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($target)) { $checkTarget = true; } @@ -421,7 +321,7 @@ abstract class ###Component###Helper // set area $area = 'comp'; // check if the record has an ID and the action is item related (not a component action) - if (self::checkObject($record) && isset($record->id) && $record->id > 0 && !in_array($action->name, $componentActions) && + if (Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($record) && isset($record->id) && $record->id > 0 && !in_array($action->name, $componentActions) && (strpos($action->name, 'core.') !== false || strpos($action->name, $view . '.') !== false)) { // we are in item @@ -454,7 +354,7 @@ abstract class ###Component###Helper } } } - elseif (self::checkString($views) && isset($record->catid) && $record->catid > 0) + elseif (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($views) && isset($record->catid) && $record->catid > 0) { // we are in item $area = 'category'; @@ -526,7 +426,7 @@ abstract class ###Component###Helper * @param array $targets The array of target actions * * @return boolean true if action should be filtered out - * + * */ protected static function filterActions(&$view, &$action, &$targets) { @@ -548,13 +448,13 @@ abstract class ###Component###Helper public static function getModel($name, $path = JPATH_COMPONENT_ADMINISTRATOR, $Component = '###Component###', $config = array()) { // fix the name - $name = self::safeString($name); + $name = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($name); // full path to models $fullPathModels = $path . '/models'; // load the model file JModelLegacy::addIncludePath($fullPathModels, $Component . 'Model'); // make sure the table path is loaded - if (!isset($config['table_path']) || !self::checkString($config['table_path'])) + if (!isset($config['table_path']) || !Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($config['table_path'])) { // This is the JCB default path to tables in Joomla 3.x $config['table_path'] = JPATH_ADMINISTRATOR . '/components/com_' . strtolower($Component) . '/tables'; @@ -597,7 +497,7 @@ abstract class ###Component###Helper { $parent = JTable::getInstance('Asset'); $parent->loadByName('com_###component###'); - + $parentId = $parent->id; $name = 'com_###component###.'.$table.'.'.$id; $title = ''; @@ -717,35 +617,12 @@ abstract class ###Component###Helper * @param SimpleXMLElement $xml The XML element reference in which to inject a comment * @param mixed $node A SimpleXMLElement node to append to the XML element reference, or a stdClass object containing a comment attribute to be injected before the XML node and a fieldXML attribute containing a SimpleXMLElement * - * @return null - * + * @return void + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node); */ public static function xmlAppend(&$xml, $node) { - if (!$node) - { - // element was not returned - return; - } - switch (get_class($node)) - { - case 'stdClass': - if (property_exists($node, 'comment')) - { - self::xmlComment($xml, $node->comment); - } - if (property_exists($node, 'fieldXML')) - { - self::xmlAppend($xml, $node->fieldXML); - } - break; - case 'SimpleXMLElement': - $domXML = dom_import_simplexml($xml); - $domNode = dom_import_simplexml($node); - $domXML->appendChild($domXML->ownerDocument->importNode($domNode, true)); - $xml = simplexml_import_dom($domXML); - break; - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node); } /** @@ -754,16 +631,12 @@ abstract class ###Component###Helper * @param SimpleXMLElement $xml The XML element reference in which to inject a comment * @param string $comment The comment to inject * - * @return null - * + * @return void + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment); */ public static function xmlComment(&$xml, $comment) { - $domXML = dom_import_simplexml($xml); - $domComment = new DOMComment($comment); - $nodeTarget = $domXML->ownerDocument->importNode($domComment, true); - $domXML->appendChild($nodeTarget); - $xml = simplexml_import_dom($domXML); + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment); } /** @@ -773,14 +646,11 @@ abstract class ###Component###Helper * @param array $attributes The attributes to apply to the XML element * * @return null - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); */ public static function xmlAddAttributes(&$xml, $attributes = array()) { - foreach ($attributes as $key => $value) - { - $xml->addAttribute($key, $value); - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); } /** @@ -790,16 +660,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return void - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); */ public static function xmlAddOptions(&$xml, $options = array()) { - foreach ($options as $key => $value) - { - $addOption = $xml->addChild('option'); - $addOption->addAttribute('value', $key); - $addOption[] = $value; - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); } /** @@ -810,28 +675,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return object - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options); */ public static function getFieldObject(&$attributes, $default = '', $options = null) { - // make sure we have attributes and a type value - if (self::checkArray($attributes) && isset($attributes['type'])) - { - // make sure the form helper class is loaded - if (!method_exists('JFormHelper', 'loadFieldType')) - { - jimport('joomla.form.form'); - } - // get field type - $field = JFormHelper::loadFieldType($attributes['type'], true); - // get field xml - $XML = self::getFieldXML($attributes, $options); - // setup the field - $field->setup($XML, $default); - // return the field object - return $field; - } - return false; + return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options); } /** @@ -841,27 +689,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return object - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options); */ public static function getFieldXML(&$attributes, $options = null) { - // make sure we have attributes and a type value - if (self::checkArray($attributes)) - { - // start field xml - $XML = new SimpleXMLElement(''); - // load the attributes - self::xmlAddAttributes($XML, $attributes); - // check if we have options - if (self::checkArray($options)) - { - // load the options - self::xmlAddOptions($XML, $options); - } - // return the field xml - return $XML; - } - return false; + return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options); } /** @@ -885,17 +717,17 @@ abstract class ###Component###Helper // button attributes $buttonAttributes = array( 'type' => 'radio', - 'name' => isset($args[0]) ? self::htmlEscape($args[0]) : 'bool_button', - 'label' => isset($args[0]) ? self::safeString(self::htmlEscape($args[0]), 'Ww') : 'Bool Button', // not seen anyway + 'name' => isset($args[0]) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($args[0]) : 'bool_button', + 'label' => isset($args[0]) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe(Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($args[0]), 'Ww') : 'Bool Button', // not seen anyway 'class' => 'btn-group', 'filter' => 'INT', 'default' => isset($args[2]) ? (int) $args[2] : 0); // set the button options $buttonOptions = array( - '1' => isset($args[3]) ? self::htmlEscape($args[3]) : 'JYES', - '0' => isset($args[4]) ? self::htmlEscape($args[4]) : 'JNO'); + '1' => isset($args[3]) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($args[3]) : 'JYES', + '0' => isset($args[4]) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($args[4]) : 'JNO'); // return the input - return self::getFieldObject($buttonAttributes, $buttonAttributes['default'], $buttonOptions)->input; + return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($buttonAttributes, $buttonAttributes['default'], $buttonOptions)->input; } /** @@ -904,15 +736,11 @@ abstract class ###Component###Helper * @input string The json string to check * * @returns bool true on success + * @deprecated 3.3 Use Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::check($string); */ public static function checkJson($string) { - if (self::checkString($string)) - { - json_decode($string); - return (json_last_error() === JSON_ERROR_NONE); - } - return false; + return Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::check($string); } /** @@ -921,14 +749,11 @@ abstract class ###Component###Helper * @input object The object to check * * @returns bool true on success + * @deprecated 3.3 Use Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($object); */ public static function checkObject($object) { - if (isset($object) && is_object($object)) - { - return count((array)$object) > 0; - } - return false; + return Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($object); } /** @@ -937,26 +762,11 @@ abstract class ###Component###Helper * @input array The array to check * * @returns bool/int number of items in array on success + * @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($array, $removeEmptyString); */ public static function checkArray($array, $removeEmptyString = false) { - if (isset($array) && is_array($array) && ($nr = count((array)$array)) > 0) - { - // also make sure the empty strings are removed - if ($removeEmptyString) - { - foreach ($array as $key => $string) - { - if (empty($string)) - { - unset($array[$key]); - } - } - return self::checkArray($array, false); - } - return $nr; - } - return false; + return Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($array, $removeEmptyString); } /** @@ -965,14 +775,11 @@ abstract class ###Component###Helper * @input string The string to check * * @returns bool true on success + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($string); */ public static function checkString($string) { - if (isset($string) && is_string($string) && strlen($string) > 0) - { - return true; - } - return false; + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($string); } /** @@ -984,7 +791,7 @@ abstract class ###Component###Helper public static function isConnected() { // If example.com is down, then probably the whole internet is down, since IANA maintains the domain. Right? - $connected = @fsockopen("www.example.com", 80); + $connected = @fsockopen("www.example.com", 80); // website, port (try 80 or 443) if ($connected) { @@ -1006,22 +813,11 @@ abstract class ###Component###Helper * @input array The arrays you would like to merge * * @returns array on success + * @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::merge($arrays); */ public static function mergeArrays($arrays) { - if(self::checkArray($arrays)) - { - $arrayBuket = array(); - foreach ($arrays as $array) - { - if (self::checkArray($array)) - { - $arrayBuket = array_merge($arrayBuket, $array); - } - } - return $arrayBuket; - } - return false; + return Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::merge($arrays); } // typo sorry! @@ -1036,39 +832,11 @@ abstract class ###Component###Helper * @input string The you would like to shorten * * @returns string on success + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::shorten(...); */ public static function shorten($string, $length = 40, $addTip = true) { - if (self::checkString($string)) - { - $initial = strlen($string); - $words = preg_split('/([\s\n\r]+)/', $string, null, PREG_SPLIT_DELIM_CAPTURE); - $words_count = count((array)$words); - - $word_length = 0; - $last_word = 0; - for (; $last_word < $words_count; ++$last_word) - { - $word_length += strlen($words[$last_word]); - if ($word_length > $length) - { - break; - } - } - - $newString = implode(array_slice($words, 0, $last_word)); - $final = strlen($newString); - if ($initial != $final && $addTip) - { - $title = self::shorten($string, 400 , false); - return ''.trim($newString).'...'; - } - elseif ($initial != $final && !$addTip) - { - return trim($newString).'...'; - } - } - return $string; + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::shorten($string, $length, $addTip); } /** @@ -1077,157 +845,61 @@ abstract class ###Component###Helper * @input string The you would like to make safe * * @returns string on success + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe(...); */ public static function safeString($string, $type = 'L', $spacer = '_', $replaceNumbers = true, $keepOnlyCharacters = true) { - if ($replaceNumbers === true) - { - // remove all numbers and replace with english text version (works well only up to millions) - $string = self::replaceNumbers($string); - } - // 0nly continue if we have a string - if (self::checkString($string)) - { - // create file name without the extention that is safe - if ($type === 'filename') - { - // make sure VDM is not in the string - $string = str_replace('VDM', 'vDm', $string); - // Remove anything which isn't a word, whitespace, number - // or any of the following caracters -_() - // If you don't need to handle multi-byte characters - // you can use preg_replace rather than mb_ereg_replace - // Thanks @Ɓukasz Rysiak! - // $string = mb_ereg_replace("([^\w\s\d\-_\(\)])", '', $string); - $string = preg_replace("([^\w\s\d\-_\(\)])", '', $string); - // http://stackoverflow.com/a/2021729/1429677 - return preg_replace('/\s+/', ' ', $string); - } - // remove all other characters - $string = trim($string); - $string = preg_replace('/'.$spacer.'+/', ' ', $string); - $string = preg_replace('/\s+/', ' ', $string); - // Transliterate string - $string = self::transliterate($string); - // remove all and keep only characters - if ($keepOnlyCharacters) - { - $string = preg_replace("/[^A-Za-z ]/", '', $string); - } - // keep both numbers and characters - else - { - $string = preg_replace("/[^A-Za-z0-9 ]/", '', $string); - } - // select final adaptations - if ($type === 'L' || $type === 'strtolower') - { - // replace white space with underscore - $string = preg_replace('/\s+/', $spacer, $string); - // default is to return lower - return strtolower($string); - } - elseif ($type === 'W') - { - // return a string with all first letter of each word uppercase(no undersocre) - return ucwords(strtolower($string)); - } - elseif ($type === 'w' || $type === 'word') - { - // return a string with all lowercase(no undersocre) - return strtolower($string); - } - elseif ($type === 'Ww' || $type === 'Word') - { - // return a string with first letter of the first word uppercase and all the rest lowercase(no undersocre) - return ucfirst(strtolower($string)); - } - elseif ($type === 'WW' || $type === 'WORD') - { - // return a string with all the uppercase(no undersocre) - return strtoupper($string); - } - elseif ($type === 'U' || $type === 'strtoupper') - { - // replace white space with underscore - $string = preg_replace('/\s+/', $spacer, $string); - // return all upper - return strtoupper($string); - } - elseif ($type === 'F' || $type === 'ucfirst') - { - // replace white space with underscore - $string = preg_replace('/\s+/', $spacer, $string); - // return with first caracter to upper - return ucfirst(strtolower($string)); - } - elseif ($type === 'cA' || $type === 'cAmel' || $type === 'camelcase') - { - // convert all words to first letter uppercase - $string = ucwords(strtolower($string)); - // remove white space - $string = preg_replace('/\s+/', '', $string); - // now return first letter lowercase - return lcfirst($string); - } - // return string - return $string; - } - // not a string - return ''; + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe( + $string, + $type, + $spacer, + $replaceNumbers, + $keepOnlyCharacters + ); } + /** + * Convert none English strings to code usable string + * + * @input an string + * + * @returns a string + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::transliterate($string); + */ public static function transliterate($string) { - // set tag only once - if (!self::checkString(self::$langTag)) - { - // get global value - self::$langTag = JComponentHelper::getParams('com_###component###')->get('language', 'en-GB'); - } - // Transliterate on the language requested - $lang = Language::getInstance(self::$langTag); - return $lang->transliterate($string); + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::transliterate($string); } + /** + * make sure a string is HTML save + * + * @input an html string + * + * @returns a string + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html(...); + */ public static function htmlEscape($var, $charset = 'UTF-8', $shorten = false, $length = 40) { - if (self::checkString($var)) - { - $filter = new JFilterInput(); - $string = $filter->clean(html_entity_decode(htmlentities($var, ENT_COMPAT, $charset)), 'HTML'); - if ($shorten) - { - return self::shorten($string,$length); - } - return $string; - } - else - { - return ''; - } + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html( + $var, + $charset, + $shorten, + $length + ); }###HELPER_LICENSE_LOCK### + /** + * Convert all int in a string to an English word string + * + * @input an string with numbers + * + * @returns a string + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::numbers($string); + */ public static function replaceNumbers($string) { - // set numbers array - $numbers = array(); - // first get all numbers - preg_match_all('!\d+!', $string, $numbers); - // check if we have any numbers - if (isset($numbers[0]) && self::checkArray($numbers[0])) - { - foreach ($numbers[0] as $number) - { - $searchReplace[$number] = self::numberToString((int)$number); - } - // now replace numbers in string - $string = str_replace(array_keys($searchReplace), array_values($searchReplace),$string); - // check if we missed any, strange if we did. - return self::replaceNumbers($string); - } - // return the string with no numbers remaining. - return $string; + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::numbers($string); } /** @@ -1236,107 +908,21 @@ abstract class ###Component###Helper * * @input an int * @returns a string + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::number($x); */ public static function numberToString($x) { - $nwords = array( "zero", "one", "two", "three", "four", "five", "six", "seven", - "eight", "nine", "ten", "eleven", "twelve", "thirteen", - "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", - "nineteen", "twenty", 30 => "thirty", 40 => "forty", - 50 => "fifty", 60 => "sixty", 70 => "seventy", 80 => "eighty", - 90 => "ninety" ); - - if(!is_numeric($x)) - { - $w = $x; - } - elseif(fmod($x, 1) != 0) - { - $w = $x; - } - else - { - if($x < 0) - { - $w = 'minus '; - $x = -$x; - } - else - { - $w = ''; - // ... now $x is a non-negative integer. - } - - if($x < 21) // 0 to 20 - { - $w .= $nwords[$x]; - } - elseif($x < 100) // 21 to 99 - { - $w .= $nwords[10 * floor($x/10)]; - $r = fmod($x, 10); - if($r > 0) - { - $w .= ' '. $nwords[$r]; - } - } - elseif($x < 1000) // 100 to 999 - { - $w .= $nwords[floor($x/100)] .' hundred'; - $r = fmod($x, 100); - if($r > 0) - { - $w .= ' and '. self::numberToString($r); - } - } - elseif($x < 1000000) // 1000 to 999999 - { - $w .= self::numberToString(floor($x/1000)) .' thousand'; - $r = fmod($x, 1000); - if($r > 0) - { - $w .= ' '; - if($r < 100) - { - $w .= 'and '; - } - $w .= self::numberToString($r); - } - } - else // millions - { - $w .= self::numberToString(floor($x/1000000)) .' million'; - $r = fmod($x, 1000000); - if($r > 0) - { - $w .= ' '; - if($r < 100) - { - $w .= 'and '; - } - $w .= self::numberToString($r); - } - } - } - return $w; + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::number($x); } /** * Random Key * * @returns a string + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::random($size); */ public static function randomkey($size) { - $bag = "abcefghijknopqrstuwxyzABCDDEFGHIJKLLMMNOPQRSTUVVWXYZabcddefghijkllmmnopqrstuvvwxyzABCEFGHIJKNOPQRSTUWXYZ"; - $key = array(); - $bagsize = strlen($bag) - 1; - for ($i = 0; $i < $size; $i++) - { - $get = rand(0, $bagsize); - $key[] = $bag[$get]; - } - return implode($key); + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::random($size); }###GET_CRYPT_KEY### } - diff --git a/admin/compiler/joomla_3/Helper_site.php b/admin/compiler/joomla_3/Helper_site.php index d9069328c..2f61d0c50 100644 --- a/admin/compiler/joomla_3/Helper_site.php +++ b/admin/compiler/joomla_3/Helper_site.php @@ -26,14 +26,14 @@ abstract class ###Component###Helper { /** * Composer Switch - * + * * @var array */ protected static $composer = array(); /** * The Main Active Language - * + * * @var string */ public static $langTag;###SITE_GLOBAL_EVENT_HELPER######SITE_CUSTOM_HELPER_SCRIPT######BOTH_CUSTOM_HELPER_SCRIPT### @@ -47,7 +47,7 @@ abstract class ###Component###Helper if (!isset(self::$composer[$target])) { // get the function name - $functionName = self::safeString('compose' . $target); + $functionName = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe('compose' . $target); // check if method exist if (method_exists(__CLASS__, $functionName)) { @@ -59,54 +59,22 @@ abstract class ###Component###Helper } /** - * Convert it into a string + * Convert a json object to a string + * + * @input string $value The json string to convert + * + * @returns a string + * @deprecated 3.3 Use Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::string(...); */ public static function jsonToString($value, $sperator = ", ", $table = null, $id = 'id', $name = 'name') { - // do some table foot work - $external = false; - if (strpos($table, '#__') !== false) - { - $external = true; - $table = str_replace('#__', '', $table); - } - // check if string is JSON - $result = json_decode($value, true); - if (json_last_error() === JSON_ERROR_NONE) - { - // is JSON - if (self::checkArray($result)) - { - if (self::checkString($table)) - { - $names = array(); - foreach ($result as $val) - { - if ($external) - { - if ($_name = self::getVar(null, $val, $id, $name, '=', $table)) - { - $names[] = $_name; - } - } - else - { - if ($_name = self::getVar($table, $val, $id, $name)) - { - $names[] = $_name; - } - } - } - if (self::checkArray($names)) - { - return (string) implode($sperator,$names); - } - } - return (string) implode($sperator,$result); - } - return (string) json_decode($value); - } - return $value; + return Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::string( + $value, + $sperator, + $table, + $id, + $name + ); } /** @@ -120,7 +88,7 @@ abstract class ###Component###Helper /** * Joomla version object - */ + */ protected static $JVersion; /** @@ -129,7 +97,7 @@ abstract class ###Component###Helper public static function jVersion() { // check if set - if (!self::checkObject(self::$JVersion)) + if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check(self::$JVersion)) { self::$JVersion = new JVersion(); } @@ -167,8 +135,8 @@ abstract class ###Component###Helper $link_front = ''; $link_back = ''; } - $contributors[$nr]['title'] = self::htmlEscape($params->get("titleContributor".$nr)); - $contributors[$nr]['name'] = $link_front.self::htmlEscape($params->get("nameContributor".$nr)).$link_back; + $contributors[$nr]['title'] = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("titleContributor".$nr)); + $contributors[$nr]['name'] = $link_front.Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($params->get("nameContributor".$nr)).$link_back; } } return $contributors; @@ -180,13 +148,13 @@ abstract class ###Component###Helper public static function getModel($name, $path = JPATH_COMPONENT_SITE, $Component = '###Component###', $config = array()) { // fix the name - $name = self::safeString($name); + $name = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($name); // full path to models $fullPathModels = $path . '/models'; // load the model file JModelLegacy::addIncludePath($fullPathModels, $Component . 'Model'); // make sure the table path is loaded - if (!isset($config['table_path']) || !self::checkString($config['table_path'])) + if (!isset($config['table_path']) || !Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($config['table_path'])) { // This is the JCB default path to tables in Joomla 3.x $config['table_path'] = JPATH_ADMINISTRATOR . '/components/com_' . strtolower($Component) . '/tables'; @@ -229,7 +197,7 @@ abstract class ###Component###Helper { $parent = JTable::getInstance('Asset'); $parent->loadByName('com_###component###'); - + $parentId = $parent->id; $name = 'com_###component###.'.$table.'.'.$id; $title = ''; @@ -349,35 +317,12 @@ abstract class ###Component###Helper * @param SimpleXMLElement $xml The XML element reference in which to inject a comment * @param mixed $node A SimpleXMLElement node to append to the XML element reference, or a stdClass object containing a comment attribute to be injected before the XML node and a fieldXML attribute containing a SimpleXMLElement * - * @return null - * + * @return void + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node); */ public static function xmlAppend(&$xml, $node) { - if (!$node) - { - // element was not returned - return; - } - switch (get_class($node)) - { - case 'stdClass': - if (property_exists($node, 'comment')) - { - self::xmlComment($xml, $node->comment); - } - if (property_exists($node, 'fieldXML')) - { - self::xmlAppend($xml, $node->fieldXML); - } - break; - case 'SimpleXMLElement': - $domXML = dom_import_simplexml($xml); - $domNode = dom_import_simplexml($node); - $domXML->appendChild($domXML->ownerDocument->importNode($domNode, true)); - $xml = simplexml_import_dom($domXML); - break; - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node); } /** @@ -386,16 +331,12 @@ abstract class ###Component###Helper * @param SimpleXMLElement $xml The XML element reference in which to inject a comment * @param string $comment The comment to inject * - * @return null - * + * @return void + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment); */ public static function xmlComment(&$xml, $comment) { - $domXML = dom_import_simplexml($xml); - $domComment = new DOMComment($comment); - $nodeTarget = $domXML->ownerDocument->importNode($domComment, true); - $domXML->appendChild($nodeTarget); - $xml = simplexml_import_dom($domXML); + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment); } /** @@ -405,14 +346,11 @@ abstract class ###Component###Helper * @param array $attributes The attributes to apply to the XML element * * @return null - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); */ public static function xmlAddAttributes(&$xml, $attributes = array()) { - foreach ($attributes as $key => $value) - { - $xml->addAttribute($key, $value); - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); } /** @@ -422,16 +360,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return void - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); */ public static function xmlAddOptions(&$xml, $options = array()) { - foreach ($options as $key => $value) - { - $addOption = $xml->addChild('option'); - $addOption->addAttribute('value', $key); - $addOption[] = $value; - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); } /** @@ -442,28 +375,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return object - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options); */ public static function getFieldObject(&$attributes, $default = '', $options = null) { - // make sure we have attributes and a type value - if (self::checkArray($attributes) && isset($attributes['type'])) - { - // make sure the form helper class is loaded - if (!method_exists('JFormHelper', 'loadFieldType')) - { - jimport('joomla.form.form'); - } - // get field type - $field = JFormHelper::loadFieldType($attributes['type'], true); - // get field xml - $XML = self::getFieldXML($attributes, $options); - // setup the field - $field->setup($XML, $default); - // return the field object - return $field; - } - return false; + return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options); } /** @@ -473,27 +389,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return object - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options); */ public static function getFieldXML(&$attributes, $options = null) { - // make sure we have attributes and a type value - if (self::checkArray($attributes)) - { - // start field xml - $XML = new SimpleXMLElement(''); - // load the attributes - self::xmlAddAttributes($XML, $attributes); - // check if we have options - if (self::checkArray($options)) - { - // load the options - self::xmlAddOptions($XML, $options); - } - // return the field xml - return $XML; - } - return false; + return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options); } /** @@ -517,21 +417,21 @@ abstract class ###Component###Helper // button attributes $buttonAttributes = array( 'type' => 'radio', - 'name' => isset($args[0]) ? self::htmlEscape($args[0]) : 'bool_button', - 'label' => isset($args[0]) ? self::safeString(self::htmlEscape($args[0]), 'Ww') : 'Bool Button', // not seen anyway + 'name' => isset($args[0]) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($args[0]) : 'bool_button', + 'label' => isset($args[0]) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe(Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($args[0]), 'Ww') : 'Bool Button', // not seen anyway 'class' => 'btn-group', 'filter' => 'INT', 'default' => isset($args[2]) ? (int) $args[2] : 0); // set the button options $buttonOptions = array( - '1' => isset($args[3]) ? self::htmlEscape($args[3]) : 'JYES', - '0' => isset($args[4]) ? self::htmlEscape($args[4]) : 'JNO'); + '1' => isset($args[3]) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($args[3]) : 'JYES', + '0' => isset($args[4]) ? Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html($args[4]) : 'JNO'); // return the input - return self::getFieldObject($buttonAttributes, $buttonAttributes['default'], $buttonOptions)->input; + return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($buttonAttributes, $buttonAttributes['default'], $buttonOptions)->input; }###HELPER_UIKIT######HELPER_CREATEUSER### /** - * Get a variable + * Get a variable * * @param string $table The table from which to get the variable * @param string $where The value where @@ -541,46 +441,18 @@ abstract class ###Component###Helper * @param string $main The component in which the table is found * * @return mix string/int/float - * + * @deprecated 3.3 Use Super___db87c339_5bb6_4291_a7ef_2c48ea1b06bc___Power::var(...); */ public static function getVar($table, $where = null, $whereString = 'user', $what = 'id', $operator = '=', $main = '###component###') { - if(!$where) - { - $where = JFactory::getUser()->id; - } - // Get a db connection. - $db = JFactory::getDbo(); - // Create a new query object. - $query = $db->getQuery(true); - $query->select($db->quoteName(array($what))); - if (empty($table)) - { - $query->from($db->quoteName('#__'.$main)); - } - else - { - $query->from($db->quoteName('#__'.$main.'_'.$table)); - } - if (is_numeric($where)) - { - $query->where($db->quoteName($whereString) . ' '.$operator.' '.(int) $where); - } - elseif (is_string($where)) - { - $query->where($db->quoteName($whereString) . ' '.$operator.' '. $db->quote((string)$where)); - } - else - { - return false; - } - $db->setQuery($query); - $db->execute(); - if ($db->getNumRows()) - { - return $db->loadResult(); - } - return false; + return Super___db87c339_5bb6_4291_a7ef_2c48ea1b06bc___Power::var( + $table, + $where, + $whereString, + $what, + $operator, + $main + ); } /** @@ -595,63 +467,20 @@ abstract class ###Component###Helper * @param bool $unique The switch to return a unique array * * @return array - * + * @deprecated 3.3 Use Super___db87c339_5bb6_4291_a7ef_2c48ea1b06bc___Power::vars(...); */ public static function getVars($table, $where = null, $whereString = 'user', $what = 'id', $operator = 'IN', $main = '###component###', $unique = true) { - if(!$where) - { - $where = JFactory::getUser()->id; - } - - if (!self::checkArray($where) && $where > 0) - { - $where = array($where); - } - - if (self::checkArray($where)) - { - // prep main <-- why? well if $main='' is empty then $table can be categories or users - if (self::checkString($main)) - { - $main = '_'.ltrim($main, '_'); - } - // Get a db connection. - $db = JFactory::getDbo(); - // Create a new query object. - $query = $db->getQuery(true); - - $query->select($db->quoteName(array($what))); - if (empty($table)) - { - $query->from($db->quoteName('#__'.$main)); - } - else - { - $query->from($db->quoteName('#_'.$main.'_'.$table)); - } - // add strings to array search - if ('IN_STRINGS' === $operator || 'NOT IN_STRINGS' === $operator) - { - $query->where($db->quoteName($whereString) . ' ' . str_replace('_STRINGS', '', $operator) . ' ("' . implode('","',$where) . '")'); - } - else - { - $query->where($db->quoteName($whereString) . ' ' . $operator . ' (' . implode(',',$where) . ')'); - } - $db->setQuery($query); - $db->execute(); - if ($db->getNumRows()) - { - if ($unique) - { - return array_unique($db->loadColumn()); - } - return $db->loadColumn(); - } - } - return false; - } + return Super___db87c339_5bb6_4291_a7ef_2c48ea1b06bc___Power::vars( + $table, + $where, + $whereString, + $what, + $operator, + $main, + $unique + ); + } public static function isPublished($id,$type) { @@ -703,12 +532,12 @@ abstract class ###Component###Helper * @param object $user The user whose permissions we are loading * * @return object The JObject of permission/authorised actions - * + * */ public static function getActions($view, &$record = null, $views = null, $target = null, $component = '###component###', $user = 'null') { // load the user if not given - if (!self::checkObject($user)) + if (!Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($user)) { // get the user object $user = JFactory::getUser(); @@ -716,10 +545,10 @@ abstract class ###Component###Helper // load the JObject $result = new JObject; // make view name safe (just incase) - $view = self::safeString($view); - if (self::checkString($views)) + $view = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($view); + if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($views)) { - $views = self::safeString($views); + $views = Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe($views); } // get all actions from component $actions = JAccess::getActionsFromFile( @@ -732,9 +561,9 @@ abstract class ###Component###Helper return $result; } // get created by if not found - if (self::checkObject($record) && !isset($record->created_by) && isset($record->id)) + if (Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($record) && !isset($record->created_by) && isset($record->id)) { - $record->created_by = self::getVar($view, $record->id, 'id', 'created_by', '=', $component); + $record->created_by = Super___db87c339_5bb6_4291_a7ef_2c48ea1b06bc___Power::var($view, $record->id, 'id', 'created_by', '=', $component); } // set actions only set in component settings $componentActions = array('core.admin', 'core.manage', 'core.options', 'core.export'); @@ -743,12 +572,12 @@ abstract class ###Component###Helper if ($target) { // convert to an array - if (self::checkString($target)) + if (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($target)) { $target = array($target); } // check if we are good to go - if (self::checkArray($target)) + if (Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($target)) { $checkTarget = true; } @@ -769,7 +598,7 @@ abstract class ###Component###Helper // set area $area = 'comp'; // check if the record has an ID and the action is item related (not a component action) - if (self::checkObject($record) && isset($record->id) && $record->id > 0 && !in_array($action->name, $componentActions) && + if (Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($record) && isset($record->id) && $record->id > 0 && !in_array($action->name, $componentActions) && (strpos($action->name, 'core.') !== false || strpos($action->name, $view . '.') !== false)) { // we are in item @@ -802,7 +631,7 @@ abstract class ###Component###Helper } } } - elseif (self::checkString($views) && isset($record->catid) && $record->catid > 0) + elseif (Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($views) && isset($record->catid) && $record->catid > 0) { // we are in item $area = 'category'; @@ -874,7 +703,7 @@ abstract class ###Component###Helper * @param array $targets The array of target actions * * @return boolean true if action should be filtered out - * + * */ protected static function filterActions(&$view, &$action, &$targets) { @@ -896,15 +725,11 @@ abstract class ###Component###Helper * @input string The json string to check * * @returns bool true on success + * @deprecated 3.3 Use Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::check($string); */ public static function checkJson($string) { - if (self::checkString($string)) - { - json_decode($string); - return (json_last_error() === JSON_ERROR_NONE); - } - return false; + return Super___4b225c51_d293_48e4_b3f6_5136cf5c3f18___Power::check($string); } /** @@ -913,14 +738,11 @@ abstract class ###Component###Helper * @input object The object to check * * @returns bool true on success + * @deprecated 3.3 Use Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($object); */ public static function checkObject($object) { - if (isset($object) && is_object($object)) - { - return count((array)$object) > 0; - } - return false; + return Super___91004529_94a9_4590_b842_e7c6b624ecf5___Power::check($object); } /** @@ -929,26 +751,11 @@ abstract class ###Component###Helper * @input array The array to check * * @returns bool/int number of items in array on success + * @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($array, $removeEmptyString); */ public static function checkArray($array, $removeEmptyString = false) { - if (isset($array) && is_array($array) && ($nr = count((array)$array)) > 0) - { - // also make sure the empty strings are removed - if ($removeEmptyString) - { - foreach ($array as $key => $string) - { - if (empty($string)) - { - unset($array[$key]); - } - } - return self::checkArray($array, false); - } - return $nr; - } - return false; + return Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::check($array, $removeEmptyString); } /** @@ -957,14 +764,11 @@ abstract class ###Component###Helper * @input string The string to check * * @returns bool true on success + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($string); */ public static function checkString($string) { - if (isset($string) && is_string($string) && strlen($string) > 0) - { - return true; - } - return false; + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::check($string); } /** @@ -976,7 +780,7 @@ abstract class ###Component###Helper public static function isConnected() { // If example.com is down, then probably the whole internet is down, since IANA maintains the domain. Right? - $connected = @fsockopen("www.example.com", 80); + $connected = @fsockopen("www.example.com", 80); // website, port (try 80 or 443) if ($connected) { @@ -998,22 +802,11 @@ abstract class ###Component###Helper * @input array The arrays you would like to merge * * @returns array on success + * @deprecated 3.3 Use Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::merge($arrays); */ public static function mergeArrays($arrays) { - if(self::checkArray($arrays)) - { - $arrayBuket = array(); - foreach ($arrays as $array) - { - if (self::checkArray($array)) - { - $arrayBuket = array_merge($arrayBuket, $array); - } - } - return $arrayBuket; - } - return false; + return Super___0a59c65c_9daf_4bc9_baf4_e063ff9e6a8a___Power::merge($arrays); } // typo sorry! @@ -1028,39 +821,11 @@ abstract class ###Component###Helper * @input string The you would like to shorten * * @returns string on success + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::shorten(...); */ public static function shorten($string, $length = 40, $addTip = true) { - if (self::checkString($string)) - { - $initial = strlen($string); - $words = preg_split('/([\s\n\r]+)/', $string, null, PREG_SPLIT_DELIM_CAPTURE); - $words_count = count((array)$words); - - $word_length = 0; - $last_word = 0; - for (; $last_word < $words_count; ++$last_word) - { - $word_length += strlen($words[$last_word]); - if ($word_length > $length) - { - break; - } - } - - $newString = implode(array_slice($words, 0, $last_word)); - $final = strlen($newString); - if ($initial != $final && $addTip) - { - $title = self::shorten($string, 400 , false); - return ''.trim($newString).'...'; - } - elseif ($initial != $final && !$addTip) - { - return trim($newString).'...'; - } - } - return $string; + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::shorten($string, $length, $addTip); } /** @@ -1069,157 +834,61 @@ abstract class ###Component###Helper * @input string The you would like to make safe * * @returns string on success + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe(...); */ public static function safeString($string, $type = 'L', $spacer = '_', $replaceNumbers = true, $keepOnlyCharacters = true) { - if ($replaceNumbers === true) - { - // remove all numbers and replace with english text version (works well only up to millions) - $string = self::replaceNumbers($string); - } - // 0nly continue if we have a string - if (self::checkString($string)) - { - // create file name without the extention that is safe - if ($type === 'filename') - { - // make sure VDM is not in the string - $string = str_replace('VDM', 'vDm', $string); - // Remove anything which isn't a word, whitespace, number - // or any of the following caracters -_() - // If you don't need to handle multi-byte characters - // you can use preg_replace rather than mb_ereg_replace - // Thanks @Ɓukasz Rysiak! - // $string = mb_ereg_replace("([^\w\s\d\-_\(\)])", '', $string); - $string = preg_replace("([^\w\s\d\-_\(\)])", '', $string); - // http://stackoverflow.com/a/2021729/1429677 - return preg_replace('/\s+/', ' ', $string); - } - // remove all other characters - $string = trim($string); - $string = preg_replace('/'.$spacer.'+/', ' ', $string); - $string = preg_replace('/\s+/', ' ', $string); - // Transliterate string - $string = self::transliterate($string); - // remove all and keep only characters - if ($keepOnlyCharacters) - { - $string = preg_replace("/[^A-Za-z ]/", '', $string); - } - // keep both numbers and characters - else - { - $string = preg_replace("/[^A-Za-z0-9 ]/", '', $string); - } - // select final adaptations - if ($type === 'L' || $type === 'strtolower') - { - // replace white space with underscore - $string = preg_replace('/\s+/', $spacer, $string); - // default is to return lower - return strtolower($string); - } - elseif ($type === 'W') - { - // return a string with all first letter of each word uppercase(no undersocre) - return ucwords(strtolower($string)); - } - elseif ($type === 'w' || $type === 'word') - { - // return a string with all lowercase(no undersocre) - return strtolower($string); - } - elseif ($type === 'Ww' || $type === 'Word') - { - // return a string with first letter of the first word uppercase and all the rest lowercase(no undersocre) - return ucfirst(strtolower($string)); - } - elseif ($type === 'WW' || $type === 'WORD') - { - // return a string with all the uppercase(no undersocre) - return strtoupper($string); - } - elseif ($type === 'U' || $type === 'strtoupper') - { - // replace white space with underscore - $string = preg_replace('/\s+/', $spacer, $string); - // return all upper - return strtoupper($string); - } - elseif ($type === 'F' || $type === 'ucfirst') - { - // replace white space with underscore - $string = preg_replace('/\s+/', $spacer, $string); - // return with first caracter to upper - return ucfirst(strtolower($string)); - } - elseif ($type === 'cA' || $type === 'cAmel' || $type === 'camelcase') - { - // convert all words to first letter uppercase - $string = ucwords(strtolower($string)); - // remove white space - $string = preg_replace('/\s+/', '', $string); - // now return first letter lowercase - return lcfirst($string); - } - // return string - return $string; - } - // not a string - return ''; + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::safe( + $string, + $type, + $spacer, + $replaceNumbers, + $keepOnlyCharacters + ); } + /** + * Convert none English strings to code usable string + * + * @input an string + * + * @returns a string + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::transliterate($string); + */ public static function transliterate($string) { - // set tag only once - if (!self::checkString(self::$langTag)) - { - // get global value - self::$langTag = JComponentHelper::getParams('com_###component###')->get('language', 'en-GB'); - } - // Transliterate on the language requested - $lang = Language::getInstance(self::$langTag); - return $lang->transliterate($string); + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::transliterate($string); } + /** + * make sure a string is HTML save + * + * @input an html string + * + * @returns a string + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html(...); + */ public static function htmlEscape($var, $charset = 'UTF-8', $shorten = false, $length = 40) { - if (self::checkString($var)) - { - $filter = new JFilterInput(); - $string = $filter->clean(html_entity_decode(htmlentities($var, ENT_COMPAT, $charset)), 'HTML'); - if ($shorten) - { - return self::shorten($string,$length); - } - return $string; - } - else - { - return ''; - } + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::html( + $var, + $charset, + $shorten, + $length + ); }###HELPER_SITE_LICENSE_LOCK### + /** + * Convert all int in a string to an English word string + * + * @input an string with numbers + * + * @returns a string + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::numbers($string); + */ public static function replaceNumbers($string) { - // set numbers array - $numbers = array(); - // first get all numbers - preg_match_all('!\d+!', $string, $numbers); - // check if we have any numbers - if (isset($numbers[0]) && self::checkArray($numbers[0])) - { - foreach ($numbers[0] as $number) - { - $searchReplace[$number] = self::numberToString((int)$number); - } - // now replace numbers in string - $string = str_replace(array_keys($searchReplace), array_values($searchReplace),$string); - // check if we missed any, strange if we did. - return self::replaceNumbers($string); - } - // return the string with no numbers remaining. - return $string; + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::numbers($string); } /** @@ -1228,107 +897,21 @@ abstract class ###Component###Helper * * @input an int * @returns a string + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::number($x); */ public static function numberToString($x) { - $nwords = array( "zero", "one", "two", "three", "four", "five", "six", "seven", - "eight", "nine", "ten", "eleven", "twelve", "thirteen", - "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", - "nineteen", "twenty", 30 => "thirty", 40 => "forty", - 50 => "fifty", 60 => "sixty", 70 => "seventy", 80 => "eighty", - 90 => "ninety" ); - - if(!is_numeric($x)) - { - $w = $x; - } - elseif(fmod($x, 1) != 0) - { - $w = $x; - } - else - { - if($x < 0) - { - $w = 'minus '; - $x = -$x; - } - else - { - $w = ''; - // ... now $x is a non-negative integer. - } - - if($x < 21) // 0 to 20 - { - $w .= $nwords[$x]; - } - elseif($x < 100) // 21 to 99 - { - $w .= $nwords[10 * floor($x/10)]; - $r = fmod($x, 10); - if($r > 0) - { - $w .= ' '. $nwords[$r]; - } - } - elseif($x < 1000) // 100 to 999 - { - $w .= $nwords[floor($x/100)] .' hundred'; - $r = fmod($x, 100); - if($r > 0) - { - $w .= ' and '. self::numberToString($r); - } - } - elseif($x < 1000000) // 1000 to 999999 - { - $w .= self::numberToString(floor($x/1000)) .' thousand'; - $r = fmod($x, 1000); - if($r > 0) - { - $w .= ' '; - if($r < 100) - { - $w .= 'and '; - } - $w .= self::numberToString($r); - } - } - else // millions - { - $w .= self::numberToString(floor($x/1000000)) .' million'; - $r = fmod($x, 1000000); - if($r > 0) - { - $w .= ' '; - if($r < 100) - { - $w .= 'and '; - } - $w .= self::numberToString($r); - } - } - } - return $w; + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::number($x); } /** * Random Key * * @returns a string + * @deprecated 3.3 Use Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::random($size); */ public static function randomkey($size) { - $bag = "abcefghijknopqrstuwxyzABCDDEFGHIJKLLMMNOPQRSTUVVWXYZabcddefghijkllmmnopqrstuvvwxyzABCEFGHIJKNOPQRSTUWXYZ"; - $key = array(); - $bagsize = strlen($bag) - 1; - for ($i = 0; $i < $size; $i++) - { - $get = rand(0, $bagsize); - $key[] = $bag[$get]; - } - return implode($key); + return Super___1f28cb53_60d9_4db1_b517_3c7dc6b429ef___Power::random($size); }###GET_CRYPT_KEY### } - diff --git a/admin/compiler/joomla_3/HtmlView_custom_admin.php b/admin/compiler/joomla_3/HtmlView_custom_admin.php index ca7f5df16..a7f97fbee 100644 --- a/admin/compiler/joomla_3/HtmlView_custom_admin.php +++ b/admin/compiler/joomla_3/HtmlView_custom_admin.php @@ -43,7 +43,7 @@ class ###Component###View###SView### extends HtmlView protected function setDocument() {###CUSTOM_ADMIN_LIBRARIES_LOADER######CUSTOM_ADMIN_DOCUMENT_METADATA######CUSTOM_ADMIN_UIKIT_LOADER######CUSTOM_ADMIN_GOOGLECHART_LOADER######CUSTOM_ADMIN_FOOTABLE_LOADER######CUSTOM_ADMIN_DOCUMENT_CUSTOM_PHP### // add the document default css file - $this->document->addStyleSheet(JURI::root(true) .'/administrator/components/com_###component###/assets/css/###sview###.css', (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css');###CUSTOM_ADMIN_DOCUMENT_CUSTOM_CSS######CUSTOM_ADMIN_DOCUMENT_CUSTOM_JS### + JHtml::_('stylesheet', 'administrator/components/com_###component###/assets/css/###sview###.css', ['version' => 'auto']);###CUSTOM_ADMIN_DOCUMENT_CUSTOM_CSS######CUSTOM_ADMIN_DOCUMENT_CUSTOM_JS### } /** diff --git a/admin/compiler/joomla_3/HtmlView_list_custom_admin.php b/admin/compiler/joomla_3/HtmlView_list_custom_admin.php index 766c63395..171226444 100644 --- a/admin/compiler/joomla_3/HtmlView_list_custom_admin.php +++ b/admin/compiler/joomla_3/HtmlView_list_custom_admin.php @@ -43,7 +43,7 @@ class ###Component###View###SViews### extends HtmlView protected function setDocument() {###CUSTOM_ADMIN_LIBRARIES_LOADER######CUSTOM_ADMIN_UIKIT_LOADER######CUSTOM_ADMIN_GOOGLECHART_LOADER######CUSTOM_ADMIN_FOOTABLE_LOADER######CUSTOM_ADMIN_DOCUMENT_CUSTOM_PHP### // add the document default css file - $this->document->addStyleSheet(JURI::root(true) .'/administrator/components/com_###component###/assets/css/###sviews###.css', (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css');###CUSTOM_ADMIN_DOCUMENT_CUSTOM_CSS######CUSTOM_ADMIN_DOCUMENT_CUSTOM_JS### + JHtml::_('stylesheet', 'administrator/components/com_###component###/assets/css/###sviews###.css', ['version' => 'auto']);###CUSTOM_ADMIN_DOCUMENT_CUSTOM_CSS######CUSTOM_ADMIN_DOCUMENT_CUSTOM_JS### } /** diff --git a/admin/compiler/joomla_3/HtmlView_list_site.php b/admin/compiler/joomla_3/HtmlView_list_site.php index dea200543..e981783d2 100644 --- a/admin/compiler/joomla_3/HtmlView_list_site.php +++ b/admin/compiler/joomla_3/HtmlView_list_site.php @@ -41,7 +41,7 @@ class ###Component###View###SViews### extends HtmlView protected function _prepareDocument() {###SITE_LIBRARIES_LOADER######SITE_UIKIT_LOADER######SITE_GOOGLECHART_LOADER######SITE_FOOTABLE_LOADER######SITE_DOCUMENT_METADATA######SITE_DOCUMENT_CUSTOM_PHP### // add the document default css file - $this->document->addStyleSheet(JURI::root(true) .'/components/com_###component###/assets/css/###sview###.css', (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css');###SITE_DOCUMENT_CUSTOM_CSS######SITE_DOCUMENT_CUSTOM_JS######SITE_JAVASCRIPT_FOR_BUTTONS### + JHtml::_('stylesheet', 'components/com_###component###/assets/css/###sview###.css', ['version' => 'auto']);###SITE_DOCUMENT_CUSTOM_CSS######SITE_DOCUMENT_CUSTOM_JS######SITE_JAVASCRIPT_FOR_BUTTONS### } /** diff --git a/admin/compiler/joomla_3/HtmlView_site.php b/admin/compiler/joomla_3/HtmlView_site.php index 12e20f031..13bc3fd01 100644 --- a/admin/compiler/joomla_3/HtmlView_site.php +++ b/admin/compiler/joomla_3/HtmlView_site.php @@ -41,7 +41,7 @@ class ###Component###View###SView### extends HtmlView protected function _prepareDocument() {###SITE_LIBRARIES_LOADER######SITE_UIKIT_LOADER######SITE_GOOGLECHART_LOADER######SITE_FOOTABLE_LOADER######SITE_DOCUMENT_METADATA######SITE_DOCUMENT_CUSTOM_PHP### // add the document default css file - $this->document->addStyleSheet(JURI::root(true) .'/components/com_###component###/assets/css/###sview###.css', (###Component###Helper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css');###SITE_DOCUMENT_CUSTOM_CSS######SITE_DOCUMENT_CUSTOM_JS######SITE_JAVASCRIPT_FOR_BUTTONS### + JHtml::_('stylesheet', 'components/com_###component###/assets/css/###sview###.css', ['version' => 'auto']);###SITE_DOCUMENT_CUSTOM_CSS######SITE_DOCUMENT_CUSTOM_JS######SITE_JAVASCRIPT_FOR_BUTTONS### } /** diff --git a/admin/compiler/joomla_3/JCB_Helper.php b/admin/compiler/joomla_3/JCB_Helper.php index 4f65b36c9..1819d2ba2 100644 --- a/admin/compiler/joomla_3/JCB_Helper.php +++ b/admin/compiler/joomla_3/JCB_Helper.php @@ -551,35 +551,12 @@ abstract class ###Component###Helper * @param SimpleXMLElement $xml The XML element reference in which to inject a comment * @param mixed $node A SimpleXMLElement node to append to the XML element reference, or a stdClass object containing a comment attribute to be injected before the XML node and a fieldXML attribute containing a SimpleXMLElement * - * @return null - * + * @return void + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node); */ public static function xmlAppend(&$xml, $node) { - if (!$node) - { - // element was not returned - return; - } - switch (get_class($node)) - { - case 'stdClass': - if (property_exists($node, 'comment')) - { - self::xmlComment($xml, $node->comment); - } - if (property_exists($node, 'fieldXML')) - { - self::xmlAppend($xml, $node->fieldXML); - } - break; - case 'SimpleXMLElement': - $domXML = dom_import_simplexml($xml); - $domNode = dom_import_simplexml($node); - $domXML->appendChild($domXML->ownerDocument->importNode($domNode, true)); - $xml = simplexml_import_dom($domXML); - break; - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node); } /** @@ -588,16 +565,12 @@ abstract class ###Component###Helper * @param SimpleXMLElement $xml The XML element reference in which to inject a comment * @param string $comment The comment to inject * - * @return null - * + * @return void + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment); */ public static function xmlComment(&$xml, $comment) { - $domXML = dom_import_simplexml($xml); - $domComment = new DOMComment($comment); - $nodeTarget = $domXML->ownerDocument->importNode($domComment, true); - $domXML->appendChild($nodeTarget); - $xml = simplexml_import_dom($domXML); + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment); } /** @@ -607,14 +580,11 @@ abstract class ###Component###Helper * @param array $attributes The attributes to apply to the XML element * * @return null - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); */ public static function xmlAddAttributes(&$xml, $attributes = array()) { - foreach ($attributes as $key => $value) - { - $xml->addAttribute($key, $value); - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); } /** @@ -624,16 +594,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return void - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); */ public static function xmlAddOptions(&$xml, $options = array()) { - foreach ($options as $key => $value) - { - $addOption = $xml->addChild('option'); - $addOption->addAttribute('value', $key); - $addOption[] = $value; - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); } /** @@ -644,28 +609,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return object - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options); */ public static function getFieldObject(&$attributes, $default = '', $options = null) { - // make sure we have attributes and a type value - if (self::checkArray($attributes) && isset($attributes['type'])) - { - // make sure the form helper class is loaded - if (!method_exists('JFormHelper', 'loadFieldType')) - { - jimport('joomla.form.form'); - } - // get field type - $field = JFormHelper::loadFieldType($attributes['type'], true); - // get field xml - $XML = self::getFieldXML($attributes, $options); - // setup the field - $field->setup($XML, $default); - // return the field object - return $field; - } - return false; + return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options); } /** @@ -675,27 +623,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return object - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options); */ public static function getFieldXML(&$attributes, $options = null) { - // make sure we have attributes and a type value - if (self::checkArray($attributes)) - { - // start field xml - $XML = new SimpleXMLElement(''); - // load the attributes - self::xmlAddAttributes($XML, $attributes); - // check if we have options - if (self::checkArray($options)) - { - // load the options - self::xmlAddOptions($XML, $options); - } - // return the field xml - return $XML; - } - return false; + return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options); } /** diff --git a/admin/compiler/joomla_3/JCB_Helper_site.php b/admin/compiler/joomla_3/JCB_Helper_site.php index c85a72e34..2d37461ba 100644 --- a/admin/compiler/joomla_3/JCB_Helper_site.php +++ b/admin/compiler/joomla_3/JCB_Helper_site.php @@ -303,35 +303,12 @@ abstract class ###Component###Helper * @param SimpleXMLElement $xml The XML element reference in which to inject a comment * @param mixed $node A SimpleXMLElement node to append to the XML element reference, or a stdClass object containing a comment attribute to be injected before the XML node and a fieldXML attribute containing a SimpleXMLElement * - * @return null - * + * @return void + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node); */ public static function xmlAppend(&$xml, $node) { - if (!$node) - { - // element was not returned - return; - } - switch (get_class($node)) - { - case 'stdClass': - if (property_exists($node, 'comment')) - { - self::xmlComment($xml, $node->comment); - } - if (property_exists($node, 'fieldXML')) - { - self::xmlAppend($xml, $node->fieldXML); - } - break; - case 'SimpleXMLElement': - $domXML = dom_import_simplexml($xml); - $domNode = dom_import_simplexml($node); - $domXML->appendChild($domXML->ownerDocument->importNode($domNode, true)); - $xml = simplexml_import_dom($domXML); - break; - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::append($xml, $node); } /** @@ -340,16 +317,12 @@ abstract class ###Component###Helper * @param SimpleXMLElement $xml The XML element reference in which to inject a comment * @param string $comment The comment to inject * - * @return null - * + * @return void + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment); */ public static function xmlComment(&$xml, $comment) { - $domXML = dom_import_simplexml($xml); - $domComment = new DOMComment($comment); - $nodeTarget = $domXML->ownerDocument->importNode($domComment, true); - $domXML->appendChild($nodeTarget); - $xml = simplexml_import_dom($domXML); + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::comment($xml, $comment); } /** @@ -358,15 +331,12 @@ abstract class ###Component###Helper * @param SimpleXMLElement $xml The XML element reference in which to inject a comment * @param array $attributes The attributes to apply to the XML element * - * @return null - * + * @return void + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); */ public static function xmlAddAttributes(&$xml, $attributes = array()) { - foreach ($attributes as $key => $value) - { - $xml->addAttribute($key, $value); - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::attributes($xml, $attributes); } /** @@ -376,16 +346,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return void - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); */ public static function xmlAddOptions(&$xml, $options = array()) { - foreach ($options as $key => $value) - { - $addOption = $xml->addChild('option'); - $addOption->addAttribute('value', $key); - $addOption[] = $value; - } + Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::options($xml, $options); } /** @@ -396,28 +361,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return object - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options); */ public static function getFieldObject(&$attributes, $default = '', $options = null) { - // make sure we have attributes and a type value - if (self::checkArray($attributes) && isset($attributes['type'])) - { - // make sure the form helper class is loaded - if (!method_exists('JFormHelper', 'loadFieldType')) - { - jimport('joomla.form.form'); - } - // get field type - $field = JFormHelper::loadFieldType($attributes['type'], true); - // get field xml - $XML = self::getFieldXML($attributes, $options); - // setup the field - $field->setup($XML, $default); - // return the field object - return $field; - } - return false; + return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::field($attributes, $default, $options); } /** @@ -427,27 +375,11 @@ abstract class ###Component###Helper * @param array $options The options to apply to the XML element * * @return object - * + * @deprecated 3.3 Use Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options); */ public static function getFieldXML(&$attributes, $options = null) { - // make sure we have attributes and a type value - if (self::checkArray($attributes)) - { - // start field xml - $XML = new SimpleXMLElement(''); - // load the attributes - self::xmlAddAttributes($XML, $attributes); - // check if we have options - if (self::checkArray($options)) - { - // load the options - self::xmlAddOptions($XML, $options); - } - // return the field xml - return $XML; - } - return false; + return Super___1198aecf_84c6_45d2_aea8_d531aa4afdfa___Power::xml($attributes, $options); } /** diff --git a/admin/compiler/joomla_3/component_admin.php b/admin/compiler/joomla_3/component_admin.php index 622b1bde0..43ddf1f01 100644 --- a/admin/compiler/joomla_3/component_admin.php +++ b/admin/compiler/joomla_3/component_admin.php @@ -15,7 +15,7 @@ defined('_JEXEC') or die('Restricted access'); ###BOM### // No direct access to this file -defined('_JEXEC') or die('Restricted access'); +defined('_JEXEC') or die('Restricted access');###ADMIN_POWER_HELPER### ###ADMIN_COMPONENT_HEADER### diff --git a/admin/compiler/joomla_3/component_site.php b/admin/compiler/joomla_3/component_site.php index 451f984fd..88d3a5de8 100644 --- a/admin/compiler/joomla_3/component_site.php +++ b/admin/compiler/joomla_3/component_site.php @@ -15,7 +15,7 @@ defined('_JEXEC') or die('Restricted access'); ###BOM### // No direct access to this file -defined('_JEXEC') or die('Restricted access'); +defined('_JEXEC') or die('Restricted access');###ADMIN_POWER_HELPER### ###SITE_COMPONENT_HEADER### diff --git a/admin/compiler/joomla_3/getBible.txt b/admin/compiler/joomla_3/getBible.txt new file mode 100644 index 000000000..8e228213c --- /dev/null +++ b/admin/compiler/joomla_3/getBible.txt @@ -0,0 +1,10 @@ +/** + * @package getBible.net + * + * @created ###CREATIONDATE### + * @author ###AUTHOR### <###AUTHORWEBSITE###> + * @git Get Bible + * @github Get Bible + * @copyright ###COPYRIGHT### + * @license ###LICENSE### + */ \ No newline at end of file diff --git a/admin/componentbuilder.php b/admin/componentbuilder.php index 0fcdaa5eb..53857eff6 100644 --- a/admin/componentbuilder.php +++ b/admin/componentbuilder.php @@ -12,6 +12,61 @@ // No direct access to this file defined('_JEXEC') or die('Restricted access'); +// add the autoloader for the composer classes +$composer_autoloader = JPATH_LIBRARIES . '/phpseclib3/vendor/autoload.php'; +if (file_exists($composer_autoloader)) +{ + require_once $composer_autoloader; +} + +// register this component namespace +spl_autoload_register(function ($class) { + // project-specific base directories and namespace prefix + $search = [ + 'libraries/jcb_powers/VDM.Joomla.Openai' => 'VDM\\Joomla\\Openai', + 'libraries/jcb_powers/VDM.Joomla.Gitea' => 'VDM\\Joomla\\Gitea', + 'libraries/jcb_powers/VDM.Joomla.FOF' => 'VDM\\Joomla\\FOF', + 'libraries/jcb_powers/VDM.Joomla' => 'VDM\\Joomla', + 'libraries/jcb_powers/VDM.Minify' => 'VDM\\Minify', + 'libraries/jcb_powers/VDM.Psr' => 'VDM\\Psr' + ]; + // Start the search and load if found + $found = false; + $found_base_dir = ""; + $found_len = 0; + foreach ($search as $base_dir => $prefix) + { + // does the class use the namespace prefix? + $len = strlen($prefix); + if (strncmp($prefix, $class, $len) === 0) + { + // we have a match so load the values + $found = true; + $found_base_dir = $base_dir; + $found_len = $len; + // done here + break; + } + } + // check if we found a match + if (!$found) + { + // not found so move to the next registered autoloader + return; + } + // get the relative class name + $relative_class = substr($class, $found_len); + // replace the namespace prefix with the base directory, replace namespace + // separators with directory separators in the relative class name, append + // with .php + $file = JPATH_ROOT . '/' . $found_base_dir . '/src' . str_replace('\\', '/', $relative_class) . '.php'; + // if the file exists, require it + if (file_exists($file)) + { + require $file; + } +}); + // Access check. diff --git a/admin/config.xml b/admin/config.xml index e17ac9ea0..70ea5e4e6 100644 --- a/admin/config.xml +++ b/admin/config.xml @@ -289,6 +289,18 @@ name="uikit_config" label="COM_COMPONENTBUILDER_CONFIG_UIKIT_LABEL" description="COM_COMPONENTBUILDER_CONFIG_UIKIT_DESC"> + + + " + " + authorise('admin_custom_tabs.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerAdmin_custom_tabs extends FormController // Access check. - $access = ($user->authorise('admin_custom_tabs.access', 'com_componentbuilder.admin_custom_tabs.' . (int) $recordId) && $user->authorise('admin_custom_tabs.access', 'com_componentbuilder')); + $access = ($user->authorise('admin_custom_tabs.access', 'com_componentbuilder.admin_custom_tabs.' . (int) $recordId) && $user->authorise('admin_custom_tabs.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/admin_fields.php b/admin/controllers/admin_fields.php index c30defa73..89e3cb48b 100644 --- a/admin/controllers/admin_fields.php +++ b/admin/controllers/admin_fields.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerAdmin_fields extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('admin_fields.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerAdmin_fields extends FormController // Access check. - $access = ($user->authorise('admin_fields.access', 'com_componentbuilder.admin_fields.' . (int) $recordId) && $user->authorise('admin_fields.access', 'com_componentbuilder')); + $access = ($user->authorise('admin_fields.access', 'com_componentbuilder.admin_fields.' . (int) $recordId) && $user->authorise('admin_fields.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/admin_fields_conditions.php b/admin/controllers/admin_fields_conditions.php index 00c75f837..f5034ec93 100644 --- a/admin/controllers/admin_fields_conditions.php +++ b/admin/controllers/admin_fields_conditions.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerAdmin_fields_conditions extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('admin_fields_conditions.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerAdmin_fields_conditions extends FormController // Access check. - $access = ($user->authorise('admin_fields_conditions.access', 'com_componentbuilder.admin_fields_conditions.' . (int) $recordId) && $user->authorise('admin_fields_conditions.access', 'com_componentbuilder')); + $access = ($user->authorise('admin_fields_conditions.access', 'com_componentbuilder.admin_fields_conditions.' . (int) $recordId) && $user->authorise('admin_fields_conditions.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/admin_fields_relations.php b/admin/controllers/admin_fields_relations.php index d16406cf9..dbc285ddd 100644 --- a/admin/controllers/admin_fields_relations.php +++ b/admin/controllers/admin_fields_relations.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerAdmin_fields_relations extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('admin_fields_relations.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerAdmin_fields_relations extends FormController // Access check. - $access = ($user->authorise('admin_fields_relations.access', 'com_componentbuilder.admin_fields_relations.' . (int) $recordId) && $user->authorise('admin_fields_relations.access', 'com_componentbuilder')); + $access = ($user->authorise('admin_fields_relations.access', 'com_componentbuilder.admin_fields_relations.' . (int) $recordId) && $user->authorise('admin_fields_relations.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/admin_view.php b/admin/controllers/admin_view.php index f1f68d7c6..daa98d2be 100644 --- a/admin/controllers/admin_view.php +++ b/admin/controllers/admin_view.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerAdmin_view extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('admin_view.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerAdmin_view extends FormController // Access check. - $access = ($user->authorise('admin_view.access', 'com_componentbuilder.admin_view.' . (int) $recordId) && $user->authorise('admin_view.access', 'com_componentbuilder')); + $access = ($user->authorise('admin_view.access', 'com_componentbuilder.admin_view.' . (int) $recordId) && $user->authorise('admin_view.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/admin_views.php b/admin/controllers/admin_views.php index d619a88ff..4bd01f895 100644 --- a/admin/controllers/admin_views.php +++ b/admin/controllers/admin_views.php @@ -14,6 +14,7 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Controller\AdminController; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper; /** * Admin_views Admin Controller @@ -131,7 +132,7 @@ class ComponentbuilderControllerAdmin_views extends AdminController // run expansion via API $result = ComponentbuilderHelper::getFileContents(JURI::root() . 'index.php?option=com_componentbuilder&task=api.expand'); // is there a message returned - if (!is_numeric($result) && ComponentbuilderHelper::checkString($result)) + if (!is_numeric($result) && StringHelper::check($result)) { $this->setRedirect($redirect_url, $result); return true; @@ -147,4 +148,4 @@ class ComponentbuilderControllerAdmin_views extends AdminController return false; } -} +} \ No newline at end of file diff --git a/admin/controllers/admins_custom_tabs.php b/admin/controllers/admins_custom_tabs.php index 8ba6143b8..790c6e069 100644 --- a/admin/controllers/admins_custom_tabs.php +++ b/admin/controllers/admins_custom_tabs.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerAdmins_custom_tabs extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/admins_fields.php b/admin/controllers/admins_fields.php index 0743816d5..cf77f2fba 100644 --- a/admin/controllers/admins_fields.php +++ b/admin/controllers/admins_fields.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerAdmins_fields extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/admins_fields_conditions.php b/admin/controllers/admins_fields_conditions.php index 15ab90018..9a54b55a1 100644 --- a/admin/controllers/admins_fields_conditions.php +++ b/admin/controllers/admins_fields_conditions.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerAdmins_fields_conditions extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/admins_fields_relations.php b/admin/controllers/admins_fields_relations.php index 44524263c..2a3804873 100644 --- a/admin/controllers/admins_fields_relations.php +++ b/admin/controllers/admins_fields_relations.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerAdmins_fields_relations extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/class_extendings.php b/admin/controllers/class_extendings.php index 0506656fb..db9896b75 100644 --- a/admin/controllers/class_extendings.php +++ b/admin/controllers/class_extendings.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerClass_extendings extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/class_extends.php b/admin/controllers/class_extends.php index ebd3462df..5926cf210 100644 --- a/admin/controllers/class_extends.php +++ b/admin/controllers/class_extends.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerClass_extends extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('class_extends.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerClass_extends extends FormController // Access check. - $access = ($user->authorise('class_extends.access', 'com_componentbuilder.class_extends.' . (int) $recordId) && $user->authorise('class_extends.access', 'com_componentbuilder')); + $access = ($user->authorise('class_extends.access', 'com_componentbuilder.class_extends.' . (int) $recordId) && $user->authorise('class_extends.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/class_method.php b/admin/controllers/class_method.php index b5f24ec8b..1f492caaa 100644 --- a/admin/controllers/class_method.php +++ b/admin/controllers/class_method.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerClass_method extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('class_method.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerClass_method extends FormController // Access check. - $access = ($user->authorise('class_method.access', 'com_componentbuilder.class_method.' . (int) $recordId) && $user->authorise('class_method.access', 'com_componentbuilder')); + $access = ($user->authorise('class_method.access', 'com_componentbuilder.class_method.' . (int) $recordId) && $user->authorise('class_method.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/class_methods.php b/admin/controllers/class_methods.php index c6d16c420..eb8a7660b 100644 --- a/admin/controllers/class_methods.php +++ b/admin/controllers/class_methods.php @@ -106,4 +106,4 @@ class ComponentbuilderControllerClass_methods extends AdminController $this->setRedirect(JRoute::_('index.php?option=com_componentbuilder&view=class_methods', false), $message, 'error'); return; } -} +} \ No newline at end of file diff --git a/admin/controllers/class_properties.php b/admin/controllers/class_properties.php index 637519a61..76242b346 100644 --- a/admin/controllers/class_properties.php +++ b/admin/controllers/class_properties.php @@ -106,4 +106,4 @@ class ComponentbuilderControllerClass_properties extends AdminController $this->setRedirect(JRoute::_('index.php?option=com_componentbuilder&view=class_properties', false), $message, 'error'); return; } -} +} \ No newline at end of file diff --git a/admin/controllers/class_property.php b/admin/controllers/class_property.php index 7b4601c64..8729a395e 100644 --- a/admin/controllers/class_property.php +++ b/admin/controllers/class_property.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerClass_property extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('class_property.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerClass_property extends FormController // Access check. - $access = ($user->authorise('class_property.access', 'com_componentbuilder.class_property.' . (int) $recordId) && $user->authorise('class_property.access', 'com_componentbuilder')); + $access = ($user->authorise('class_property.access', 'com_componentbuilder.class_property.' . (int) $recordId) && $user->authorise('class_property.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/compiler.php b/admin/controllers/compiler.php index e5653f11e..1314e6d02 100644 --- a/admin/controllers/compiler.php +++ b/admin/controllers/compiler.php @@ -15,6 +15,8 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Controller\AdminController; use Joomla\Utilities\ArrayHelper; use VDM\Joomla\Componentbuilder\Compiler\Factory as CFactory; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\StringHelper; /** * Compiler Admin Controller @@ -125,9 +127,9 @@ class ComponentbuilderControllerCompiler extends AdminController $url = JURI::root() . substr($model->compiler->filepath['component'], $pos + 1); } // check if we have plugins - $add_plugin_install = ComponentbuilderHelper::checkArray($model->compiler->filepath['plugins'], true); + $add_plugin_install = UtilitiesArrayHelper::check($model->compiler->filepath['plugins'], true); // check if we have modules - $add_module_install = ComponentbuilderHelper::checkArray($model->compiler->filepath['modules'], true); + $add_module_install = UtilitiesArrayHelper::check($model->compiler->filepath['modules'], true); // if a multi install we set another kind of header if ($add_plugin_install || $add_module_install) { @@ -225,7 +227,7 @@ class ComponentbuilderControllerCompiler extends AdminController $message[] = '
Hey! you can also download these zip files right now!
'; $message[] = 'Download Component  '; // load the module download URL's - if (isset($module_urls) && ComponentbuilderHelper::checkArray($module_urls)) + if (isset($module_urls) && UtilitiesArrayHelper::check($module_urls)) { foreach ($module_urls as $module_id => $module_url) { @@ -234,7 +236,7 @@ class ComponentbuilderControllerCompiler extends AdminController } } // load the plugin download URL's - if (isset($plugin_urls) && ComponentbuilderHelper::checkArray($plugin_urls)) + if (isset($plugin_urls) && UtilitiesArrayHelper::check($plugin_urls)) { foreach ($plugin_urls as $plugin_id => $plugin_url) { @@ -259,7 +261,7 @@ class ComponentbuilderControllerCompiler extends AdminController $app->setUserState('com_componentbuilder.success_message', CFactory::_('Placeholder')->update( implode(PHP_EOL, $message), - CFactory::_('Content')->active + CFactory::_('Compiler.Builder.Content.One')->allActive() ) ); // set redirect @@ -318,9 +320,9 @@ class ComponentbuilderControllerCompiler extends AdminController $fileNames = array(); $fileNames[] = $app->getUserState('com_componentbuilder.component_folder_name', null); // check if we have modules - $fileNames = ComponentbuilderHelper::mergeArrays(array($fileNames, $app->getUserState('com_componentbuilder.modules_folder_name', array()) )); + $fileNames = UtilitiesArrayHelper::merge(array($fileNames, $app->getUserState('com_componentbuilder.modules_folder_name', array()) )); // check if we have plugins - $fileNames = ComponentbuilderHelper::mergeArrays(array($fileNames, $app->getUserState('com_componentbuilder.plugins_folder_name', array()) )); + $fileNames = UtilitiesArrayHelper::merge(array($fileNames, $app->getUserState('com_componentbuilder.plugins_folder_name', array()) )); // wipe out the user c-m-p since we are done with them all $app->setUserState('com_componentbuilder.component_folder_name', ''); @@ -341,12 +343,12 @@ class ComponentbuilderControllerCompiler extends AdminController } } // catch errors - if (ComponentbuilderHelper::checkArray($_message['error'])) + if (UtilitiesArrayHelper::check($_message['error'])) { $app->enqueueMessage(implode('
', $_message['error']), 'Error'); } // build success message - if (ComponentbuilderHelper::checkArray($_message['success'])) + if (UtilitiesArrayHelper::check($_message['success'])) { $this->setRedirect($redirect_url, implode('
', $_message['success']), 'message'); return true; @@ -534,7 +536,7 @@ class ComponentbuilderControllerCompiler extends AdminController // run expansion via API $result = ComponentbuilderHelper::getFileContents(JURI::root() . 'index.php?option=com_componentbuilder&task=api.expand'); // is there a message returned - if (!is_numeric($result) && ComponentbuilderHelper::checkString($result)) + if (!is_numeric($result) && StringHelper::check($result)) { $this->setRedirect($redirect_url, $result); return true; @@ -615,7 +617,7 @@ class ComponentbuilderControllerCompiler extends AdminController // run translator via API $result = ComponentbuilderHelper::getFileContents(JURI::root() . 'index.php?option=com_componentbuilder&task=api.translator'); // is there a message returned - if (!is_numeric($result) && ComponentbuilderHelper::checkString($result)) + if (!is_numeric($result) && StringHelper::check($result)) { $this->setRedirect($redirect_url, $result); return true; diff --git a/admin/controllers/component_admin_views.php b/admin/controllers/component_admin_views.php index a307ce06d..9547d38b6 100644 --- a/admin/controllers/component_admin_views.php +++ b/admin/controllers/component_admin_views.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerComponent_admin_views extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_admin_views.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerComponent_admin_views extends FormController // Access check. - $access = ($user->authorise('component_admin_views.access', 'com_componentbuilder.component_admin_views.' . (int) $recordId) && $user->authorise('component_admin_views.access', 'com_componentbuilder')); + $access = ($user->authorise('component_admin_views.access', 'com_componentbuilder.component_admin_views.' . (int) $recordId) && $user->authorise('component_admin_views.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/component_config.php b/admin/controllers/component_config.php index a5a663ab0..1f17b4a44 100644 --- a/admin/controllers/component_config.php +++ b/admin/controllers/component_config.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerComponent_config extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_config.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerComponent_config extends FormController // Access check. - $access = ($user->authorise('component_config.access', 'com_componentbuilder.component_config.' . (int) $recordId) && $user->authorise('component_config.access', 'com_componentbuilder')); + $access = ($user->authorise('component_config.access', 'com_componentbuilder.component_config.' . (int) $recordId) && $user->authorise('component_config.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/component_custom_admin_menus.php b/admin/controllers/component_custom_admin_menus.php index 164638899..b922f0bfc 100644 --- a/admin/controllers/component_custom_admin_menus.php +++ b/admin/controllers/component_custom_admin_menus.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerComponent_custom_admin_menus extends FormControl return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_custom_admin_menus.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerComponent_custom_admin_menus extends FormControl // Access check. - $access = ($user->authorise('component_custom_admin_menus.access', 'com_componentbuilder.component_custom_admin_menus.' . (int) $recordId) && $user->authorise('component_custom_admin_menus.access', 'com_componentbuilder')); + $access = ($user->authorise('component_custom_admin_menus.access', 'com_componentbuilder.component_custom_admin_menus.' . (int) $recordId) && $user->authorise('component_custom_admin_menus.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/component_custom_admin_views.php b/admin/controllers/component_custom_admin_views.php index 8b9ce4dbc..250633a03 100644 --- a/admin/controllers/component_custom_admin_views.php +++ b/admin/controllers/component_custom_admin_views.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerComponent_custom_admin_views extends FormControl return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_custom_admin_views.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerComponent_custom_admin_views extends FormControl // Access check. - $access = ($user->authorise('component_custom_admin_views.access', 'com_componentbuilder.component_custom_admin_views.' . (int) $recordId) && $user->authorise('component_custom_admin_views.access', 'com_componentbuilder')); + $access = ($user->authorise('component_custom_admin_views.access', 'com_componentbuilder.component_custom_admin_views.' . (int) $recordId) && $user->authorise('component_custom_admin_views.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/component_dashboard.php b/admin/controllers/component_dashboard.php index fc3e14dd3..d8bb79183 100644 --- a/admin/controllers/component_dashboard.php +++ b/admin/controllers/component_dashboard.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerComponent_dashboard extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_dashboard.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerComponent_dashboard extends FormController // Access check. - $access = ($user->authorise('component_dashboard.access', 'com_componentbuilder.component_dashboard.' . (int) $recordId) && $user->authorise('component_dashboard.access', 'com_componentbuilder')); + $access = ($user->authorise('component_dashboard.access', 'com_componentbuilder.component_dashboard.' . (int) $recordId) && $user->authorise('component_dashboard.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/component_files_folders.php b/admin/controllers/component_files_folders.php index 789b7b030..c647375e2 100644 --- a/admin/controllers/component_files_folders.php +++ b/admin/controllers/component_files_folders.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerComponent_files_folders extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_files_folders.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerComponent_files_folders extends FormController // Access check. - $access = ($user->authorise('component_files_folders.access', 'com_componentbuilder.component_files_folders.' . (int) $recordId) && $user->authorise('component_files_folders.access', 'com_componentbuilder')); + $access = ($user->authorise('component_files_folders.access', 'com_componentbuilder.component_files_folders.' . (int) $recordId) && $user->authorise('component_files_folders.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/component_modules.php b/admin/controllers/component_modules.php index 3e3778ad5..7cbbb2097 100644 --- a/admin/controllers/component_modules.php +++ b/admin/controllers/component_modules.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerComponent_modules extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_modules.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerComponent_modules extends FormController // Access check. - $access = ($user->authorise('component_modules.access', 'com_componentbuilder.component_modules.' . (int) $recordId) && $user->authorise('component_modules.access', 'com_componentbuilder')); + $access = ($user->authorise('component_modules.access', 'com_componentbuilder.component_modules.' . (int) $recordId) && $user->authorise('component_modules.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/component_mysql_tweaks.php b/admin/controllers/component_mysql_tweaks.php index 044bbd989..1b7ab9801 100644 --- a/admin/controllers/component_mysql_tweaks.php +++ b/admin/controllers/component_mysql_tweaks.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerComponent_mysql_tweaks extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_mysql_tweaks.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerComponent_mysql_tweaks extends FormController // Access check. - $access = ($user->authorise('component_mysql_tweaks.access', 'com_componentbuilder.component_mysql_tweaks.' . (int) $recordId) && $user->authorise('component_mysql_tweaks.access', 'com_componentbuilder')); + $access = ($user->authorise('component_mysql_tweaks.access', 'com_componentbuilder.component_mysql_tweaks.' . (int) $recordId) && $user->authorise('component_mysql_tweaks.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/component_placeholders.php b/admin/controllers/component_placeholders.php index 846454a46..bfb7a4ebe 100644 --- a/admin/controllers/component_placeholders.php +++ b/admin/controllers/component_placeholders.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerComponent_placeholders extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_placeholders.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerComponent_placeholders extends FormController // Access check. - $access = ($user->authorise('component_placeholders.access', 'com_componentbuilder.component_placeholders.' . (int) $recordId) && $user->authorise('component_placeholders.access', 'com_componentbuilder')); + $access = ($user->authorise('component_placeholders.access', 'com_componentbuilder.component_placeholders.' . (int) $recordId) && $user->authorise('component_placeholders.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/component_plugins.php b/admin/controllers/component_plugins.php index a886b89e5..d3fa83894 100644 --- a/admin/controllers/component_plugins.php +++ b/admin/controllers/component_plugins.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerComponent_plugins extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_plugins.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerComponent_plugins extends FormController // Access check. - $access = ($user->authorise('component_plugins.access', 'com_componentbuilder.component_plugins.' . (int) $recordId) && $user->authorise('component_plugins.access', 'com_componentbuilder')); + $access = ($user->authorise('component_plugins.access', 'com_componentbuilder.component_plugins.' . (int) $recordId) && $user->authorise('component_plugins.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/component_site_views.php b/admin/controllers/component_site_views.php index 9ad82c56f..3ecb3c6c5 100644 --- a/admin/controllers/component_site_views.php +++ b/admin/controllers/component_site_views.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerComponent_site_views extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_site_views.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerComponent_site_views extends FormController // Access check. - $access = ($user->authorise('component_site_views.access', 'com_componentbuilder.component_site_views.' . (int) $recordId) && $user->authorise('component_site_views.access', 'com_componentbuilder')); + $access = ($user->authorise('component_site_views.access', 'com_componentbuilder.component_site_views.' . (int) $recordId) && $user->authorise('component_site_views.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/component_updates.php b/admin/controllers/component_updates.php index 56e5bac16..dfd3b0b3d 100644 --- a/admin/controllers/component_updates.php +++ b/admin/controllers/component_updates.php @@ -14,6 +14,8 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Controller\FormController; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\StringHelper; /** * Component_updates Form Controller @@ -62,7 +64,7 @@ class ComponentbuilderControllerComponent_updates extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_updates.create', $this->option); } @@ -85,7 +87,7 @@ class ComponentbuilderControllerComponent_updates extends FormController // Access check. - $access = ($user->authorise('component_updates.access', 'com_componentbuilder.component_updates.' . (int) $recordId) && $user->authorise('component_updates.access', 'com_componentbuilder')); + $access = ($user->authorise('component_updates.access', 'com_componentbuilder.component_updates.' . (int) $recordId) && $user->authorise('component_updates.access', 'com_componentbuilder')); if (!$access) { return false; @@ -332,9 +334,9 @@ class ComponentbuilderControllerComponent_updates extends FormController $objectUpdate = new stdClass(); $objectUpdate->id = (int) $validData['joomla_component']; - if (ComponentbuilderHelper::checkArray($version_update) + if (UtilitiesArrayHelper::check($version_update) && ($component_version = end($version_update)['version']) - && ComponentbuilderHelper::checkString($component_version)) + && StringHelper::check($component_version)) { $objectUpdate->component_version = $component_version; } diff --git a/admin/controllers/components_admin_views.php b/admin/controllers/components_admin_views.php index 528cd5bac..fc6ed3241 100644 --- a/admin/controllers/components_admin_views.php +++ b/admin/controllers/components_admin_views.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_admin_views extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/components_config.php b/admin/controllers/components_config.php index f2bf7d711..9209371e9 100644 --- a/admin/controllers/components_config.php +++ b/admin/controllers/components_config.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_config extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/components_custom_admin_menus.php b/admin/controllers/components_custom_admin_menus.php index 57e553128..effb4eea4 100644 --- a/admin/controllers/components_custom_admin_menus.php +++ b/admin/controllers/components_custom_admin_menus.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_custom_admin_menus extends AdminContr { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/components_custom_admin_views.php b/admin/controllers/components_custom_admin_views.php index 67a4a9a94..8f5f7f0ca 100644 --- a/admin/controllers/components_custom_admin_views.php +++ b/admin/controllers/components_custom_admin_views.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_custom_admin_views extends AdminContr { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/components_dashboard.php b/admin/controllers/components_dashboard.php index 75706d54b..a968864f7 100644 --- a/admin/controllers/components_dashboard.php +++ b/admin/controllers/components_dashboard.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_dashboard extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/components_files_folders.php b/admin/controllers/components_files_folders.php index fd5fcc9a8..736d73283 100644 --- a/admin/controllers/components_files_folders.php +++ b/admin/controllers/components_files_folders.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_files_folders extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/components_modules.php b/admin/controllers/components_modules.php index c3af1b5ad..1269e6b7f 100644 --- a/admin/controllers/components_modules.php +++ b/admin/controllers/components_modules.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_modules extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/components_mysql_tweaks.php b/admin/controllers/components_mysql_tweaks.php index 46f072ec9..fd13fc84d 100644 --- a/admin/controllers/components_mysql_tweaks.php +++ b/admin/controllers/components_mysql_tweaks.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_mysql_tweaks extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/components_placeholders.php b/admin/controllers/components_placeholders.php index 4ae57667e..e8c17eb5e 100644 --- a/admin/controllers/components_placeholders.php +++ b/admin/controllers/components_placeholders.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_placeholders extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/components_plugins.php b/admin/controllers/components_plugins.php index 60466495d..b69af5fb3 100644 --- a/admin/controllers/components_plugins.php +++ b/admin/controllers/components_plugins.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_plugins extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/components_site_views.php b/admin/controllers/components_site_views.php index 4a9a261dd..118d38176 100644 --- a/admin/controllers/components_site_views.php +++ b/admin/controllers/components_site_views.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_site_views extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/components_updates.php b/admin/controllers/components_updates.php index b5f943943..13d949a72 100644 --- a/admin/controllers/components_updates.php +++ b/admin/controllers/components_updates.php @@ -43,4 +43,4 @@ class ComponentbuilderControllerComponents_updates extends AdminController { return parent::getModel($name, $prefix, $config); } -} +} \ No newline at end of file diff --git a/admin/controllers/custom_admin_view.php b/admin/controllers/custom_admin_view.php index f3bbcf437..f693798eb 100644 --- a/admin/controllers/custom_admin_view.php +++ b/admin/controllers/custom_admin_view.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerCustom_admin_view extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return parent::allowAdd($data); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerCustom_admin_view extends FormController // Access check. - $access = ($user->authorise('custom_admin_view.access', 'com_componentbuilder.custom_admin_view.' . (int) $recordId) && $user->authorise('custom_admin_view.access', 'com_componentbuilder')); + $access = ($user->authorise('custom_admin_view.access', 'com_componentbuilder.custom_admin_view.' . (int) $recordId) && $user->authorise('custom_admin_view.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/custom_admin_views.php b/admin/controllers/custom_admin_views.php index a769073de..7cc3ad9c5 100644 --- a/admin/controllers/custom_admin_views.php +++ b/admin/controllers/custom_admin_views.php @@ -115,4 +115,4 @@ class ComponentbuilderControllerCustom_admin_views extends AdminController $this->setRedirect(JRoute::_('index.php?option=com_componentbuilder&view=get_snippets', false)); return; } -} +} \ No newline at end of file diff --git a/admin/controllers/custom_code.php b/admin/controllers/custom_code.php index 42b5ebdbd..8106c6d01 100644 --- a/admin/controllers/custom_code.php +++ b/admin/controllers/custom_code.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerCustom_code extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('custom_code.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerCustom_code extends FormController // Access check. - $access = ($user->authorise('custom_code.access', 'com_componentbuilder.custom_code.' . (int) $recordId) && $user->authorise('custom_code.access', 'com_componentbuilder')); + $access = ($user->authorise('custom_code.access', 'com_componentbuilder.custom_code.' . (int) $recordId) && $user->authorise('custom_code.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/custom_codes.php b/admin/controllers/custom_codes.php index ef3d179cc..3e341a31d 100644 --- a/admin/controllers/custom_codes.php +++ b/admin/controllers/custom_codes.php @@ -14,6 +14,7 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Controller\AdminController; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper; /** * Custom_codes Admin Controller @@ -131,7 +132,7 @@ class ComponentbuilderControllerCustom_codes extends AdminController // run expansion via API $result = ComponentbuilderHelper::getFileContents(JURI::root() . 'index.php?option=com_componentbuilder&task=api.expand'); // is there a message returned - if (!is_numeric($result) && ComponentbuilderHelper::checkString($result)) + if (!is_numeric($result) && StringHelper::check($result)) { $this->setRedirect($redirect_url, $result); return true; @@ -147,4 +148,4 @@ class ComponentbuilderControllerCustom_codes extends AdminController return false; } -} +} \ No newline at end of file diff --git a/admin/controllers/dynamic_get.php b/admin/controllers/dynamic_get.php index a1d95ea86..ef4873b20 100644 --- a/admin/controllers/dynamic_get.php +++ b/admin/controllers/dynamic_get.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerDynamic_get extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('dynamic_get.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerDynamic_get extends FormController // Access check. - $access = ($user->authorise('dynamic_get.access', 'com_componentbuilder.dynamic_get.' . (int) $recordId) && $user->authorise('dynamic_get.access', 'com_componentbuilder')); + $access = ($user->authorise('dynamic_get.access', 'com_componentbuilder.dynamic_get.' . (int) $recordId) && $user->authorise('dynamic_get.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/dynamic_gets.php b/admin/controllers/dynamic_gets.php index 3f5aa3de2..d23bcf2bb 100644 --- a/admin/controllers/dynamic_gets.php +++ b/admin/controllers/dynamic_gets.php @@ -14,6 +14,7 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Controller\AdminController; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper; /** * Dynamic_gets Admin Controller @@ -131,7 +132,7 @@ class ComponentbuilderControllerDynamic_gets extends AdminController // run expansion via API $result = ComponentbuilderHelper::getFileContents(JURI::root() . 'index.php?option=com_componentbuilder&task=api.expand'); // is there a message returned - if (!is_numeric($result) && ComponentbuilderHelper::checkString($result)) + if (!is_numeric($result) && StringHelper::check($result)) { $this->setRedirect($redirect_url, $result); return true; @@ -147,4 +148,4 @@ class ComponentbuilderControllerDynamic_gets extends AdminController return false; } -} +} \ No newline at end of file diff --git a/admin/controllers/field.php b/admin/controllers/field.php index 0200cf68b..18d96d5ab 100644 --- a/admin/controllers/field.php +++ b/admin/controllers/field.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerField extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('field.create', $this->option); } diff --git a/admin/controllers/fields.php b/admin/controllers/fields.php index 98ea949a2..3d07dbc8d 100644 --- a/admin/controllers/fields.php +++ b/admin/controllers/fields.php @@ -14,6 +14,7 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Controller\AdminController; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper; /** * Fields Admin Controller @@ -131,7 +132,7 @@ class ComponentbuilderControllerFields extends AdminController // run expansion via API $result = ComponentbuilderHelper::getFileContents(JURI::root() . 'index.php?option=com_componentbuilder&task=api.expand'); // is there a message returned - if (!is_numeric($result) && ComponentbuilderHelper::checkString($result)) + if (!is_numeric($result) && StringHelper::check($result)) { $this->setRedirect($redirect_url, $result); return true; @@ -147,4 +148,4 @@ class ComponentbuilderControllerFields extends AdminController return false; } -} +} \ No newline at end of file diff --git a/admin/controllers/fieldtype.php b/admin/controllers/fieldtype.php index 96933d9e0..638f581a7 100644 --- a/admin/controllers/fieldtype.php +++ b/admin/controllers/fieldtype.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerFieldtype extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('fieldtype.create', $this->option); } diff --git a/admin/controllers/fieldtypes.php b/admin/controllers/fieldtypes.php index dfbd81027..07ce1f60f 100644 --- a/admin/controllers/fieldtypes.php +++ b/admin/controllers/fieldtypes.php @@ -106,4 +106,4 @@ class ComponentbuilderControllerFieldtypes extends AdminController $this->setRedirect(JRoute::_('index.php?option=com_componentbuilder&view=fieldtypes', false), $message, 'error'); return; } -} +} \ No newline at end of file diff --git a/admin/controllers/help_document.php b/admin/controllers/help_document.php index 8c08eb2f8..07a4c41f9 100644 --- a/admin/controllers/help_document.php +++ b/admin/controllers/help_document.php @@ -62,7 +62,7 @@ class ComponentbuilderControllerHelp_document extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('help_document.create', $this->option); } @@ -85,7 +85,7 @@ class ComponentbuilderControllerHelp_document extends FormController // Access check. - $access = ($user->authorise('help_document.access', 'com_componentbuilder.help_document.' . (int) $recordId) && $user->authorise('help_document.access', 'com_componentbuilder')); + $access = ($user->authorise('help_document.access', 'com_componentbuilder.help_document.' . (int) $recordId) && $user->authorise('help_document.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/help_documents.php b/admin/controllers/help_documents.php index c59089bcf..21f3ffdd2 100644 --- a/admin/controllers/help_documents.php +++ b/admin/controllers/help_documents.php @@ -106,4 +106,4 @@ class ComponentbuilderControllerHelp_documents extends AdminController $this->setRedirect(JRoute::_('index.php?option=com_componentbuilder&view=help_documents', false), $message, 'error'); return; } -} +} \ No newline at end of file diff --git a/admin/controllers/joomla_component.php b/admin/controllers/joomla_component.php index 0e4eece42..c5b5f3cbf 100644 --- a/admin/controllers/joomla_component.php +++ b/admin/controllers/joomla_component.php @@ -87,7 +87,7 @@ class ComponentbuilderControllerJoomla_component extends FormController return false; } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('joomla_component.create', $this->option); } @@ -110,7 +110,7 @@ class ComponentbuilderControllerJoomla_component extends FormController // Access check. - $access = ($user->authorise('joomla_component.access', 'com_componentbuilder.joomla_component.' . (int) $recordId) && $user->authorise('joomla_component.access', 'com_componentbuilder')); + $access = ($user->authorise('joomla_component.access', 'com_componentbuilder.joomla_component.' . (int) $recordId) && $user->authorise('joomla_component.access', 'com_componentbuilder')); if (!$access) { return false; diff --git a/admin/controllers/joomla_components.php b/admin/controllers/joomla_components.php index 16359de3c..e950b96dc 100644 --- a/admin/controllers/joomla_components.php +++ b/admin/controllers/joomla_components.php @@ -18,6 +18,7 @@ use VDM\Joomla\Componentbuilder\Package\Factory as PackageFactory; use VDM\Joomla\Utilities\ArrayHelper as JCBArrayHelper; use VDM\Joomla\Utilities\StringHelper; use Joomla\CMS\Language\Text; +use VDM\Joomla\Utilities\ObjectHelper; /** * Joomla_components Admin Controller @@ -135,7 +136,7 @@ class ComponentbuilderControllerJoomla_components extends AdminController // run expansion via API $result = ComponentbuilderHelper::getFileContents(JURI::root() . 'index.php?option=com_componentbuilder&task=api.expand'); // is there a message returned - if (!is_numeric($result) && ComponentbuilderHelper::checkString($result)) + if (!is_numeric($result) && StringHelper::check($result)) { $this->setRedirect($redirect_url, $result); return true; @@ -294,7 +295,7 @@ class ComponentbuilderControllerJoomla_components extends AdminController public function backup() { // get params first - if (!isset($this->params) || !ComponentbuilderHelper::checkObject($this->params)) + if (!isset($this->params) || !ObjectHelper::check($this->params)) { $this->params = JComponentHelper::getParams('com_componentbuilder'); } @@ -314,54 +315,54 @@ class ComponentbuilderControllerJoomla_components extends AdminController // manual backup message $backupNotice = array(); // get the data to export - if (ComponentbuilderHelper::checkArray($pks) && $model->getSmartExport($pks)) + if (JCBArrayHelper::check($pks) && $model->getSmartExport($pks)) { $backupNotice[] = JText::_('COM_COMPONENTBUILDER_BACKUP_WAS_DONE_SUCCESSFULLY'); $backupNoticeStatus = 'Success'; // set the key string - if (componentbuilderHelper::checkString($model->key) && strlen($model->key) == 32) + if (StringHelper::check($model->key) && strlen($model->key) == 32) { $textNotice = array(); $keyNotice = '

' . JText::sprintf('COM_COMPONENTBUILDER_THE_PACKAGE_KEY_IS_CODESCODE', $model->key) . '

'; $keyNotice .= '

' . JText::_('COM_COMPONENTBUILDER_YOUR_DATA_IS_ENCRYPTED_WITH_A_AES_TWO_HUNDRED_AND_FIFTY_SIX_BIT_ENCRYPTION_USING_THE_ABOVE_THIRTY_TWO_CHARACTER_KEY') . '

'; $textNotice[] = JText::sprintf('COM_COMPONENTBUILDER_THE_PACKAGE_KEY_IS_S', $model->key); // set the package owner info - if ((isset($model->info['getKeyFrom']['company']) && componentbuilderHelper::checkString($model->info['getKeyFrom']['company'])) || (isset($model->info['getKeyFrom']['owner']) && componentbuilderHelper::checkString($model->info['getKeyFrom']['owner']))) + if ((isset($model->info['getKeyFrom']['company']) && StringHelper::check($model->info['getKeyFrom']['company'])) || (isset($model->info['getKeyFrom']['owner']) && StringHelper::check($model->info['getKeyFrom']['owner']))) { $ownerDetails = '

' . JText::_('COM_COMPONENTBUILDER_PACKAGE_OWNER_DETAILS') . '

'; $textNotice[] = '# ' . JText::_('COM_COMPONENTBUILDER_PACKAGE_OWNER_DETAILS'); $ownerDetails .= ''; // if we have a source link we add it - if (isset($info['joomla_source_link']) && self::checkArray($info['joomla_source_link']) && isset($info['joomla_source_link'][$key]) && self::checkString($info['joomla_source_link'][$key])) + if (isset($info['joomla_source_link']) && UtilitiesArrayHelper::check($info['joomla_source_link']) && isset($info['joomla_source_link'][$key]) && UtilitiesStringHelper::check($info['joomla_source_link'][$key])) { $display[] = 'source code'; } @@ -1618,9 +1636,9 @@ abstract class ComponentbuilderHelper $unique = ''; if (1 == $type) { - $unique = self::safeString($tableName) . '_'; + $unique = UtilitiesStringHelper::safe($tableName) . '_'; } - if (self::checkArray($columns)) + if (UtilitiesArrayHelper::check($columns)) { // build the return string $tableColumns = array(); @@ -1658,10 +1676,10 @@ abstract class ComponentbuilderHelper $tableName = ''; if (1 == $type) { - $tableName = self::safeString($result->name_single) . '_'; + $tableName = UtilitiesStringHelper::safe($result->name_single) . '_'; } $addfields = json_decode($result->addfields, true); - if (self::checkArray($addfields)) + if (UtilitiesArrayHelper::check($addfields)) { // reset all buckets $field = array(); @@ -1670,7 +1688,7 @@ abstract class ComponentbuilderHelper foreach ($addfields as $nr => $value) { $tmp = self::getFieldNameAndType((int) $value['field']); - if (self::checkArray($tmp)) + if (UtilitiesArrayHelper::check($tmp)) { $field[$nr] = $tmp; } @@ -1691,7 +1709,7 @@ abstract class ComponentbuilderHelper // load data foreach ($field as $n => $f) { - if (self::checkArray($f)) + if (UtilitiesArrayHelper::check($f)) { $fields[] = $as . "." . $f['name'] . " AS " . $tableName . $f['name']; } @@ -1760,11 +1778,11 @@ abstract class ComponentbuilderHelper } else { - $name = self::safeFieldName(self::getBetween($field->xml,'name="','"')); + $name = self::safeFieldName(GetHelper::between($field->xml,'name="','"')); } // use field core name only if not found in xml - if (!self::checkString($name)) + if (!UtilitiesStringHelper::check($name)) { $name = self::safeFieldName($field->name); } @@ -1894,159 +1912,158 @@ abstract class ComponentbuilderHelper } return false; } - /** * The array of dynamic content - * - * @var array + * + * @var array */ - protected static $dynamicContent = array( + protected static array $dynamicContent = [ // The banners by size (width - height) - 'banner' => array( - '728-90' => array( - array( - 'url' => 'https://cdn.joomla.org/volunteers/joomla-heart-wide.gif', + 'banner' => [ + '728-90' => [ + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/banner/joomla-heart-wide.gif', 'hash' => 'f857e3a38facaeac9eba3cffa912b620', - 'html' => 'Joomla! Volunteers Portal'), - array( - 'url' => 'https://magazine.joomla.org/images/banners/JCM_2010_728x90.png', - 'hash' => '4083c66f996279fd5a76adffc3a7d194', - 'html' => 'Joomla! Community Magazine | Because community matters...'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/banners/tlwebdesign_jcb_sponsor_728_90.png', + 'html' => 'Joomla! Volunteers Portal'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/banner/JCM_2010_120x600.png', + 'hash' => '5389cf3be8569cb3f6793e8bd4013d19', + 'html' => 'Joomla! Community Magazine | Because community matters...'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/banner/tlwebdesign_jcb_sponsor_728_90.png', 'hash' => 'd19be1f9f5b2049ff901096aafc246be', - 'html' => 'tlwebdesign a JCB sponsor | Because community matters...'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/banners/vdm_jcb_sponsor_728_90.gif', + 'html' => 'tlwebdesign a JCB sponsor | Because community matters...'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/banner/vdm_jcb_sponsor_728_90.gif', 'hash' => '84478dfa0cd880395815e0ee026812a4', - 'html' => 'VDM a JCB sponsor | Because community matters...'), - array( + 'html' => 'VDM a JCB sponsor | Because community matters...'], + [ 'url' => 'https://cms-experts.org/images/banners/agerix/agerix-loves-jcb-728-90.gif', 'hash' => 'b24c0726aa809cdcc04bcffe7e1e1529', - 'html' => 'Agerix a JCB sponsor | Because community matters...') - ), - '160-600' => array( - array( - 'url' => 'https://cdn.joomla.org/volunteers/joomla-heart-tall.gif', + 'html' => 'Agerix a JCB sponsor | Because community matters...'] + ], + '160-600' => [ + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/banner/joomla-heart-tall.gif', 'hash' => '9a75e4929b86c318128b53cf78251678', - 'html' => 'Joomla! Volunteers Portal'), - array( - 'url' => 'https://magazine.joomla.org/images/banners/JCM_2010_120x600.png', + 'html' => 'Joomla! Volunteers Portal'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/banner/JCM_2010_120x600.png', 'hash' => '5389cf3be8569cb3f6793e8bd4013d19', - 'html' => 'Joomla! Community Magazine | Because community matters...') - ) - ), + 'html' => 'Joomla! Community Magazine | Because community matters...'] + ] + ], // The build-gif by size (width - height) - 'builder-gif' => array( + 'builder-gif' => [ // original gif ;) - '480-272' => array( - array( + '480-272' => [ + [ 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/original.gif', 'hash' => '676e37a949add8f4573381195cd1061c', 'html' => '' - ) - ), + ] + ], // new gif artwork since 2021 - '480-540' => array( - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/1.gif', + '480-540' => [ + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/1.gif', 'hash' => 'ce6e36456fa794ba95d981547b2f54f8', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/2.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/2.gif', 'hash' => '0a54dbc393359747e33db90cabb1e2d7', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/3.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/3.gif', 'hash' => '4e5498713ff69a64a0a79dbf620372a3', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/4.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/4.gif', 'hash' => '3554ffab2a6df95a116fd9f0db63925c', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/5.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/5.gif', 'hash' => '08f0cdf188593eca65c6dafd7af27ef9', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/6.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/6.gif', 'hash' => '103b46a7ac3fcb974e25d06f417a4e87', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/7.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/7.gif', 'hash' => 'ffa8547099b7286f89ab7ff5a140dd90', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/8.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/8.gif', 'hash' => '316df780f9e4ce81200a65d3c4303c41', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/9.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/9.gif', 'hash' => '9ab6ba78b6e63a285fdef2ff5e447c93', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/10.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/10.gif', 'hash' => 'cd9abaa1cb95f51a70916da6b70614f2', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/11.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/11.gif', 'hash' => 'cfe53095b5249618e2348223b89262b9', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/12.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/12.gif', 'hash' => '15a6690647d5160d67c80ce4dd1f5602', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/13.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/13.gif', 'hash' => '2f77562e92c8a3b7c47664c98f551fe8', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/14.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/14.gif', 'hash' => '46db15517ef5bd063be85134e1cc575d', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/15.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/15.gif', 'hash' => 'e6c96eff157ea648ceb1583f2cc22544', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/16.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/16.gif', 'hash' => '76010b7d1f99952eb9645df660467ae8', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/17.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/17.gif', 'hash' => '021219ddd72d8fcfc7f80bd4a874d651', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/18.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/18.gif', 'hash' => '383af3179d4ae27301c1292e630d7155', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/19.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/19.gif', 'hash' => '8537e6d7be93447241b521f851e8a61d', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/20.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/20.gif', 'hash' => '10d96f70e3d43086a925b00a7dc0022e', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/21.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/21.gif', 'hash' => '161de9865b171b44039353b8d50491d3', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/22.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/22.gif', 'hash' => '6a2354e43eb97d278d74bb2c12890988', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/23.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/23.gif', 'hash' => '2cb6e2f9562a8dc8eef6d5d8d1a84f5e', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'), - array( - 'url' => 'https://www.joomlacomponentbuilder.com/images/builder/24.gif', + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'], + [ + 'url' => 'https://git.vdm.dev/joomla/jcb-external/raw/branch/master/src/images/builder/24.gif', 'hash' => '745b3fb5e16515689132432bf02ab1b4', - 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
') - ) - ) - ); + 'html' => '
Animation produced with 3D Particle Explorations by Jack Rugile.
'] + ] + ] + ]; /** * get the dynamic content array size @@ -2057,10 +2074,10 @@ abstract class ComponentbuilderHelper * @return int on success number of items in array type,size * */ - public static function getDynamicContentSize($type, $size) + public static function getDynamicContentSize(string $type, string $size): int { if (isset(self::$dynamicContent[$type]) && isset(self::$dynamicContent[$type][$size]) - && ($nr = self::checkArray(self::$dynamicContent[$type][$size]))) + && ($nr = UtilitiesArrayHelper::check(self::$dynamicContent[$type][$size]))) { return $nr; } @@ -2070,16 +2087,16 @@ abstract class ComponentbuilderHelper /** * get the dynamic content * - * @param string $type The type of content - * @param string $size The size of the content - * @param mix $default The default to return - * @param int $try Retry tracker (when bigger then array size it stops) - * @param mix $getter The specific getter number (not zero based) + * @param string $type The type of content + * @param string $size The size of the content + * @param mixed $default The default to return + * @param int $try Retry tracker (when bigger then array size it stops) + * @param mixed $getter The specific getter number (not zero based) * * @return string on success html string * */ - public static function getDynamicContent($type, $size, $default = '', $try = 1, $getter = null) + public static function getDynamicContent(string $type, string $size, $default = '', int $try = 1, $getter = null) { if (($nr = self::getDynamicContentSize($type, $size)) !== 0) { @@ -2106,12 +2123,12 @@ abstract class ComponentbuilderHelper // set the local path (in admin area so when the component uninstall these images get removed as well) $path = JPATH_ROOT . "/administrator/components/com_componentbuilder/assets/images/$type/$file_name"; // check if file exist or if it changed - if (($image_data = self::getFileContents($path, false)) === false || + if (($image_data = FileHelper::getContent($path, false)) === false || md5($image_data) !== $target['hash']) { // since the file does not exist or has changed (so we have a new hash) // therefore we download it to validate - if (($image_data = self::getFileContents($target['url'], false)) !== false && + if (($image_data = FileHelper::getContent($target['url'], false)) !== false && md5($image_data) === $target['hash']) { // create the JCB type path if it does not exist @@ -2120,7 +2137,7 @@ abstract class ComponentbuilderHelper Folder::create(JPATH_ROOT . "/administrator/components/com_componentbuilder/assets/images/$type"); } // only set the image if the data match the hash - self::writeFile($path, $image_data); + FileHelper::write($path, $image_data); } // we retry array size times (unless specific getter is used) elseif ($try <= $nr && !$getter) @@ -2134,7 +2151,8 @@ abstract class ComponentbuilderHelper } } return $default; - } + } + /** * Tab/spacer bucket (to speed-up the build) @@ -2186,7 +2204,7 @@ abstract class ComponentbuilderHelper **/ public static function loadSession() { - if (!isset(self::$session) || !self::checkObject(self::$session)) + if (!isset(self::$session) || !ObjectHelper::check(self::$session)) { self::$session = JFactory::getSession(); } @@ -2199,7 +2217,7 @@ abstract class ComponentbuilderHelper **/ public static function set($key, $value) { - if (!isset(self::$session) || !self::checkObject(self::$session)) + if (!isset(self::$session) || !ObjectHelper::check(self::$session)) { self::$session = JFactory::getSession(); } @@ -2214,7 +2232,7 @@ abstract class ComponentbuilderHelper **/ public static function get($key, $default = null) { - if (!isset(self::$session) || !self::checkObject(self::$session)) + if (!isset(self::$session) || !ObjectHelper::check(self::$session)) { self::$session = JFactory::getSession(); } @@ -2282,10 +2300,10 @@ abstract class ComponentbuilderHelper $field['values_description'] .= '' . JText::_('COM_COMPONENTBUILDER_PROPERTY') . '' . JText::_('COM_COMPONENTBUILDER_EXAMPLE') . '' . JText::_('COM_COMPONENTBUILDER_DESCRIPTION') . ''; foreach ($properties as $property) { - $example = (isset($property['example']) && self::checkString($property['example'])) ? $property['example'] : ''; + $example = (isset($property['example']) && UtilitiesStringHelper::check($property['example'])) ? $property['example'] : ''; $field['values_description'] .= '' . $property['name'] . '' . $example . '' . $property['description'] . ''; // check if we should load the value - $value = self::getValueFromXMLstring($xml, $property['name'], $confirmation); + $value = FieldHelper::getValue($xml, $property['name'], $confirmation); // check if this is a php field $addPHP = false; if (strpos($property['name'], 'type_php') !== false) @@ -2306,7 +2324,7 @@ abstract class ComponentbuilderHelper } } // was the settings for the property passed - if(self::checkArray($settings) && isset($settings[$property['name']])) + if(UtilitiesArrayHelper::check($settings) && isset($settings[$property['name']])) { // add the xml values $field['values'] .= PHP_EOL . "\t" . $property['name'] . '="'. $settings[$property['name']] . '" '; @@ -2345,7 +2363,7 @@ abstract class ComponentbuilderHelper $nr++; } // check if all php is loaded using the tracker - if (self::checkString($xml) && isset($phpTracker) && self::checkArray($phpTracker)) + if (UtilitiesStringHelper::check($xml) && isset($phpTracker) && UtilitiesArrayHelper::check($phpTracker)) { foreach ($phpTracker as $phpKey => $start) { @@ -2355,7 +2373,7 @@ abstract class ComponentbuilderHelper foreach(range(2, 30) as $t_nr) { $get_ = $phpKey . '_' . $t_nr; - if (!isset($field['php'][$phpKey]['value'][$t_nr]) && ($value = self::getValueFromXMLstring($xml, $get_, $confirmation)) !== $confirmation) + if (!isset($field['php'][$phpKey]['value'][$t_nr]) && ($value = FieldHelper::getValue($xml, $get_, $confirmation)) !== $confirmation) { $field['php'][$phpKey]['value'][$t_nr] = $value; } @@ -2385,18 +2403,19 @@ abstract class ComponentbuilderHelper return false; } + /** + * Get a field value from the XML stored string + * + * @param string $xml The xml string of the field + * @param string $get The value key to get from the string + * @param string $confirmation The value to confirm found value + * + * @return string The field value from xml + * @deprecated 3.3 Use FieldHelper::getValue($xml, $get, $confirmation); + */ public static function getValueFromXMLstring(&$xml, &$get, $confirmation = '') { - if (self::checkString($xml)) - { - // if we have a PHP value, we must base64 decode it - if (strpos($get, 'type_php') !== false) - { - return self::openValidBase64(self::getBetween($xml, $get.'="', '"', $confirmation)); - } - return self::getBetween($xml, $get . '="', '"', $confirmation); - } - return $confirmation; + return FieldHelper::getValue($xml, $get, $confirmation); } @@ -2445,12 +2464,12 @@ abstract class ComponentbuilderHelper // add if no objection is found $add = true; // check if we have exclude - if (self::checkArray($exclude) && in_array($property->name, $exclude)) + if (UtilitiesArrayHelper::check($exclude) && in_array($property->name, $exclude)) { continue; } // check if we have filter - if (self::checkArray($filter)) + if (UtilitiesArrayHelper::check($filter)) { foreach($filter as $key => $val) { @@ -2497,76 +2516,79 @@ abstract class ComponentbuilderHelper /** * Remove folders with files * - * @param string $dir The path to folder to remove - * @param boolean $ignore The folders and files to ignore and not remove + * @param string $path The path to folder to remove + * @param array|null $ignore The folders and files to ignore and not remove * - * @return boolean True in all is removed - * + * @return bool True if all are removed */ - public static function removeFolder($dir, $ignore = false) + public static function removeFolder(string $path, ?array $ignore = null): bool { - if (Folder::exists($dir)) + if (!Folder::exists($path)) { - $it = new RecursiveDirectoryIterator($dir); - $it = new RecursiveIteratorIterator($it, RecursiveIteratorIterator::CHILD_FIRST); - // remove ending / - $dir = rtrim($dir, '/'); - // now loop the files & folders - foreach ($it as $file) - { - if ('.' === $file->getBasename() || '..' === $file->getBasename()) continue; - // set file dir - $file_dir = $file->getPathname(); - // check if this is a dir or a file - if ($file->isDir()) - { - $keeper = false; - if (self::checkArray($ignore)) - { - foreach ($ignore as $keep) - { - if (strpos($file_dir, $dir.'/'.$keep) !== false) - { - $keeper = true; - } - } - } - if ($keeper) - { - continue; - } - Folder::delete($file_dir); - } - else - { - $keeper = false; - if (self::checkArray($ignore)) - { - foreach ($ignore as $keep) - { - if (strpos($file_dir, $dir.'/'.$keep) !== false) - { - $keeper = true; - } - } - } - if ($keeper) - { - continue; - } - File::delete($file_dir); - } - } - // delete the root folder if not ignore found - if (!self::checkArray($ignore)) - { - return Folder::delete($dir); - } - return true; + return false; } - return false; + + $it = new \RecursiveDirectoryIterator($path, \RecursiveDirectoryIterator::SKIP_DOTS); + $files = new \RecursiveIteratorIterator($it, \RecursiveIteratorIterator::CHILD_FIRST); + + // Prepare a base path without trailing slash for comparison + $basePath = rtrim($path, '/'); + + foreach ($files as $fileinfo) + { + $filePath = $fileinfo->getRealPath(); + + if (self::removeFolderShouldIgnore($basePath, $filePath, $ignore)) + { + continue; + } + + if ($fileinfo->isDir()) + { + Folder::delete($filePath); + } + else + { + File::delete($filePath); + } + } + + // Delete the root folder if ignore not set + if (!UtilitiesArrayHelper::check($ignore)) + { + return Folder::delete($path); + } + + return true; } + /** + * Check if the current path should be ignored. + * + * @param string $basePath The base directory path + * @param string $filePath The current file or directory path + * @param array|null $ignore List of items to ignore + * + * @return boolean True if the path should be ignored + * @since 3.2.0 + */ + protected static function removeFolderShouldIgnore(string $basePath, string $filePath, ?array $ignore = null): bool + { + if (!$ignore || !UtilitiesArrayHelper::check($ignore)) + { + return false; + } + + foreach ($ignore as $item) + { + if (strpos($filePath, $basePath . '/' . $item) !== false) + { + return true; + } + } + + return false; + } /** * The github access token @@ -2613,12 +2635,12 @@ abstract class ComponentbuilderHelper if (self::urlExists($_url)) { // get the data from github - if (($repoData = self::getFileContents($_url)) !== false && self::checkJson($repoData)) + if (($repoData = FileHelper::getContent($_url)) !== false && JsonHelper::check($repoData)) { $github_returned = json_decode($repoData); - if (self::checkString($target) && - ( (self::checkObject($github_returned) && isset($github_returned->{$target}) && self::checkArray($github_returned->{$target})) || - (self::checkArray($github_returned) && isset($github_returned[$target]) && self::checkArray($github_returned[$target])) )) + if (UtilitiesStringHelper::check($target) && + ( (ObjectHelper::check($github_returned) && isset($github_returned->{$target}) && UtilitiesArrayHelper::check($github_returned->{$target})) || + (UtilitiesArrayHelper::check($github_returned) && isset($github_returned[$target]) && UtilitiesArrayHelper::check($github_returned[$target])) )) { if ('nomemory' !== $type) { @@ -2626,7 +2648,7 @@ abstract class ComponentbuilderHelper self::set($type, $repoData); } } - elseif (!self::checkString($target) && (self::checkArray($github_returned) || (self::checkObject($github_returned) && !isset($github_returned->message)))) + elseif (!UtilitiesStringHelper::check($target) && (UtilitiesArrayHelper::check($github_returned) || (ObjectHelper::check($github_returned) && !isset($github_returned->message)))) { if ('nomemory' !== $type) { @@ -2637,7 +2659,7 @@ abstract class ComponentbuilderHelper // check if we have error message from github elseif (($errorMessage = self::githubErrorHandeler(array('error' => null), $github_returned, $type)) !== false) { - if (isset($errorMessage['error']) && self::checkString($errorMessage['error'])) + if (isset($errorMessage['error']) && UtilitiesStringHelper::check($errorMessage['error'])) { // set the error in the application JFactory::getApplication()->enqueueMessage($errorMessage['error'], 'Error'); @@ -2646,7 +2668,7 @@ abstract class ComponentbuilderHelper } return false; } - elseif (self::checkString($target)) + elseif (UtilitiesStringHelper::check($target)) { // setup error string $error = JText::sprintf('COM_COMPONENTBUILDER_THE_URL_S_SET_TO_RETRIEVE_THE_PACKAGES_DID_NOT_RETURN_S_DATA', $url, $target); @@ -2705,7 +2727,7 @@ abstract class ComponentbuilderHelper } } // check if we could find packages - if (isset($repoData) && self::checkJson($repoData)) + if (isset($repoData) && JsonHelper::check($repoData)) { if ('object' === $return_type) { @@ -2728,12 +2750,12 @@ abstract class ComponentbuilderHelper */ protected static function githubErrorHandeler($message, &$github, $type) { - if (self::checkObject($github) && isset($github->message) && self::checkString($github->message)) + if (ObjectHelper::check($github) && isset($github->message) && UtilitiesStringHelper::check($github->message)) { // set the message $errorMessage = $github->message; // add the documentation URL - if (isset($github->documentation_url) && self::checkString($github->documentation_url)) + if (isset($github->documentation_url) && UtilitiesStringHelper::check($github->documentation_url)) { $errorMessage = $errorMessage . '
' . $github->documentation_url; } @@ -2767,17 +2789,17 @@ abstract class ComponentbuilderHelper if (strpos($url, 'access_token=') !== false) { // make sure the token is loaded - if (!self::checkString(self::$gitHubAccessToken)) + if (!UtilitiesStringHelper::check(self::$gitHubAccessToken)) { // get the global settings - if (!self::checkObject(self::$params)) + if (!ObjectHelper::check(self::$params)) { self::$params = JComponentHelper::getParams('com_componentbuilder'); } self::$gitHubAccessToken = self::$params->get('github_access_token', null); } // make sure the token is loaded at this point - if (self::checkString(self::$gitHubAccessToken)) + if (UtilitiesStringHelper::check(self::$gitHubAccessToken)) { $url .= '&access_token=' . self::$gitHubAccessToken; } @@ -3524,6 +3546,7 @@ abstract class ComponentbuilderHelper /** * Field Grouping https://docs.joomla.org/Form_field + * @deprecated 3.3 **/ protected static $fieldGroups = array( 'default' => array( @@ -3570,83 +3593,44 @@ abstract class ComponentbuilderHelper * @param boolean $option The field grouping * * @return boolean if the field was found + * @deprecated 3.3 Use Factory::_('Field.Groups')->check($type, $option); */ public static function fieldCheck($type, $option = 'default') { - // now check - if (isset(self::$fieldGroups[$option]) && in_array($type, self::$fieldGroups[$option])) - { - return true; - } - return false; + return Factory::_('Field.Groups')->check($type, $option); } /** * get the field types id -> name of a group or groups * * @return array ids of the spacer field types + * @deprecated 3.3 Use Factory::_('Field.Groups')->types($groups); */ public static function getFieldTypesByGroup($groups = array()) { - // make sure we have a group - if (($ids = self::getFieldTypesIdsByGroup($groups)) !== false) - { - // get the database object to use quote - $db = JFactory::getDbo(); - // Create a new query object. - $query = $db->getQuery(true); - $query->select($db->quoteName(array('id', 'name'))); - $query->from($db->quoteName('#__componentbuilder_fieldtype')); - $query->where($db->quoteName('published') . ' = 1'); - $query->where($db->quoteName('id') . ' IN (' . implode(',',$ids) . ')'); - // Reset the query using our newly populated query object. - $db->setQuery($query); - $db->execute(); - if ($db->getNumRows()) - { - return $db->loadAssocList('id', 'name'); - } - } - return false; + return Factory::_('Field.Groups')->types($groups); } /** * get the field types IDs of a group or groups * * @return array ids of the spacer field types + * @deprecated 3.3 Use Factory::_('Field.Groups')->typesIds($groups); */ public static function getFieldTypesIdsByGroup($groups = array()) { - // make sure we have a group - if (self::checkArray($groups)) - { - $merge_groups = array(); - foreach ($groups as $group) - { - if (isset(self::$fieldGroups[$group])) - { - $merge_groups[] = self::$fieldGroups[$group]; - } - } - // make sure we have these types of groups - if (self::checkArray($merge_groups)) - { - // get the database object to use quote - $db = JFactory::getDbo(); - return self::getVars('fieldtype', (array) array_map(function($name) use($db) { return $db->quote(ucfirst($name)); }, self::mergeArrays($merge_groups)), 'name', 'id'); - } - } - return false; + return Factory::_('Field.Groups')->typesIds($groups); } /** * get the spacer IDs * * @return array ids of the spacer field types + * @deprecated 3.3 Use Factory::_('Field.Groups')->spacerIds(); */ public static function getSpacerIds() { - return self::getFieldTypesIdsByGroup($groups = array('spacer')); + return Factory::_('Field.Groups')->spacerIds(); } @@ -3658,35 +3642,12 @@ abstract class ComponentbuilderHelper * @param string $default The default switch * * @return string The opened string - * + * @deprecated 3.3 Use Base64Helper::open($data, $key, $default); */ public static function openValidBase64($data, $key = '__.o0=base64=Oo.__', $default = 'string') { - // check that we have a string - if (self::checkString($data)) - { - // check if we have a key - if (self::checkString($key)) - { - if (strpos($data, $key) !== false) - { - return base64_decode(str_replace($key, '', $data)); - } - } - // fallback to this, not perfect method - if (base64_encode(base64_decode($data, true)) === $data) - { - return base64_decode($data); - } - } - // check if we should just return the string - if ('string' === $default) - { - return $data; - } - return $default; + return Base64Helper::open($data, $key, $default); } - /** * prepare base64 string for url @@ -3732,12 +3693,12 @@ abstract class ComponentbuilderHelper public static function getFolderPath($type = 'path', $target = 'folderpath', $default = '', $createIfNotSet = true) { // make sure to always have a string/path - if(!self::checkString($default)) + if(!UtilitiesStringHelper::check($default)) { $default = JPATH_SITE . '/images/'; } // get the global settings - if (!self::checkObject(self::$params)) + if (!ObjectHelper::check(self::$params)) { self::$params = JComponentHelper::getParams('com_componentbuilder'); } @@ -3799,7 +3760,7 @@ abstract class ComponentbuilderHelper $key = $type; } // check if it was already set - if (isset(self::$CRYPT[$key]) && self::checkObject(self::$CRYPT[$key])) + if (isset(self::$CRYPT[$key]) && ObjectHelper::check(self::$CRYPT[$key])) { return self::$CRYPT[$key]; } @@ -3896,7 +3857,7 @@ abstract class ComponentbuilderHelper // get the remote path $remote_path = '/' . trim($server->jcb_remote_server_path[(int) $serverID], '/') . '/' . $fileName; // now move the file - if (!$server->put($remote_path, self::getFileContents($localPath, null))) + if (!$server->put($remote_path, FileHelper::getContent($localPath, null))) { JFactory::getApplication()->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_THE_BSB_FILE_COULD_NOT_BE_MOVED_TO_BSB_PATH_ON_BSB_SERVER', $fileName, $server->jcb_remote_server_path[(int) $serverID], $server->jcb_remote_server_name[(int) $serverID]), 'Error'); return false; @@ -3960,7 +3921,7 @@ abstract class ComponentbuilderHelper if ($server = self::getServerDetails($serverID, 2, $permission)) { // check if it was already set - if (!isset(self::$sftp[$server->cache]) || !self::checkObject(self::$sftp[$server->cache])) + if (!isset(self::$sftp[$server->cache]) || !ObjectHelper::check(self::$sftp[$server->cache])) { // make sure we have the composer classes loaded self::composerAutoload('phpseclib'); @@ -3989,15 +3950,15 @@ abstract class ComponentbuilderHelper } break; case 2: // private key file - if (self::checkObject(self::crypt('RSA'))) + if (ObjectHelper::check(self::crypt('RSA'))) { // check if we have a passprase - if (self::checkString($server->secret)) + if (UtilitiesStringHelper::check($server->secret)) { self::crypt('RSA')->setPassword($server->secret); } // now load the key file - if (!self::crypt('RSA')->loadKey(self::getFileContents($server->private, null))) + if (!self::crypt('RSA')->loadKey(FileHelper::getContent($server->private, null))) { JFactory::getApplication()->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_THE_PRIVATE_KEY_FILE_COULD_NOT_BE_LOADEDFOUND_FOR_BSB_SERVER', $server->name), 'Error'); unset(self::$sftp[$server->cache]); @@ -4013,15 +3974,15 @@ abstract class ComponentbuilderHelper } break; case 3: // both password and private key file - if (self::checkObject(self::crypt('RSA'))) + if (ObjectHelper::check(self::crypt('RSA'))) { // check if we have a passphrase - if (self::checkString($server->secret)) + if (UtilitiesStringHelper::check($server->secret)) { self::crypt('RSA')->setPassword($server->secret); } // now load the key file - if (!self::crypt('RSA')->loadKey(self::getFileContents($server->private, null))) + if (!self::crypt('RSA')->loadKey(FileHelper::getContent($server->private, null))) { JFactory::getApplication()->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_THE_PRIVATE_KEY_FILE_COULD_NOT_BE_LOADEDFOUND_FOR_BSB_SERVER', $server->name), 'Error'); unset(self::$sftp[$server->cache]); @@ -4037,10 +3998,10 @@ abstract class ComponentbuilderHelper } break; case 4: // private key field - if (self::checkObject(self::crypt('RSA'))) + if (ObjectHelper::check(self::crypt('RSA'))) { // check if we have a passprase - if (self::checkString($server->secret)) + if (UtilitiesStringHelper::check($server->secret)) { self::crypt('RSA')->setPassword($server->secret); } @@ -4061,10 +4022,10 @@ abstract class ComponentbuilderHelper } break; case 5: // both password and private key field - if (self::checkObject(self::crypt('RSA'))) + if (ObjectHelper::check(self::crypt('RSA'))) { // check if we have a passphrase - if (self::checkString($server->secret)) + if (UtilitiesStringHelper::check($server->secret)) { self::crypt('RSA')->setPassword($server->secret); } @@ -4087,7 +4048,7 @@ abstract class ComponentbuilderHelper } } // only continue if object is set - if (isset(self::$sftp[$server->cache]) && self::checkObject(self::$sftp[$server->cache])) + if (isset(self::$sftp[$server->cache]) && ObjectHelper::check(self::$sftp[$server->cache])) { // set the unique buckets if (!isset(self::$sftp[$server->cache]->jcb_remote_server_name)) @@ -4097,7 +4058,7 @@ abstract class ComponentbuilderHelper } // always set the name and remote server path self::$sftp[$server->cache]->jcb_remote_server_name[$serverID] = $server->name; - self::$sftp[$server->cache]->jcb_remote_server_path[$serverID] = (self::checkString($server->path) && $server->path !== '/') ? $server->path : ''; + self::$sftp[$server->cache]->jcb_remote_server_path[$serverID] = (UtilitiesStringHelper::check($server->path) && $server->path !== '/') ? $server->path : ''; // return the sftp object return self::$sftp[$server->cache]; } @@ -4137,12 +4098,12 @@ abstract class ComponentbuilderHelper } } // make sure we have a string and it is not default or empty - if (self::checkString($server->signature)) + if (UtilitiesStringHelper::check($server->signature)) { // turn into variables parse_str($server->signature); // because of this I am using strange variable naming to avoid any collisions. // set options - if (isset($options) && self::checkArray($options)) + if (isset($options) && UtilitiesArrayHelper::check($options)) { foreach ($options as $o__p0t1on => $vAln3) { @@ -4211,7 +4172,7 @@ abstract class ComponentbuilderHelper if (!JFactory::getUser()->authorise($permission, 'com_componentbuilder')) { // set message to inform the user that permission was denied - JFactory::getApplication()->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_ACCESS_THE_SERVER_DETAILS_BS_DENIEDB_PLEASE_CONTACT_YOUR_SYSTEM_ADMINISTRATOR_FOR_MORE_INFO', self::safeString($permission, 'w')), 'Error'); + JFactory::getApplication()->enqueueMessage(JText::sprintf('COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_ACCESS_THE_SERVER_DETAILS_BS_DENIEDB_PLEASE_CONTACT_YOUR_SYSTEM_ADMINISTRATOR_FOR_MORE_INFO', UtilitiesStringHelper::safe($permission, 'w')), 'Error'); return false; } // now insure we have correct values @@ -4247,7 +4208,7 @@ abstract class ComponentbuilderHelper // Get the basic encryption. $basickey = self::getCryptKey('basic', 'Th1sMnsTbL0ck@d'); // Get the encryption object. - $basic = new FOFEncryptAes($basickey, 128); + $basic = new AES($basickey, 128); // start cache keys $keys = array(); // unlock the needed fields @@ -4266,7 +4227,7 @@ abstract class ComponentbuilderHelper } } // check if cache keys were found - if (self::checkArray($keys)) + if (UtilitiesArrayHelper::check($keys)) { // now set cache $server->cache = md5(implode('', $keys)); @@ -4334,7 +4295,7 @@ abstract class ComponentbuilderHelper public static function lock($string, $key = null, $salt = 2, $dynamic = null, $urlencode = true) { // get the global settings - if (!$key || !self::checkString($key)) + if (!$key || !UtilitiesStringHelper::check($key)) { // set temp timer $timer = 2; @@ -4358,12 +4319,12 @@ abstract class ComponentbuilderHelper $key .= self::salt($salt, $dynamic); } // get the locker settings - if (!isset(self::$locker[$key]) || !self::checkObject(self::$locker[$key])) + if (!isset(self::$locker[$key]) || !ObjectHelper::check(self::$locker[$key])) { - self::$locker[$key] = new FOFEncryptAes($key, 128); + self::$locker[$key] = new AES($key, 128); } // convert array or object to string - if (self::checkArray($string) || self::checkObject($string)) + if (UtilitiesArrayHelper::check($string) || ObjectHelper::check($string)) { $string = serialize($string); } @@ -4390,7 +4351,7 @@ abstract class ComponentbuilderHelper public static function unlock($string, $key = null, $salt = 2, $dynamic = null, $urlencode = true) { // get the global settings - if (!$key || !self::checkString($key)) + if (!$key || !UtilitiesStringHelper::check($key)) { // set temp timer $timer = 2; @@ -4414,9 +4375,9 @@ abstract class ComponentbuilderHelper $key .= self::salt($salt, $dynamic); } // get the locker settings - if (!isset(self::$locker[$key]) || !self::checkObject(self::$locker[$key])) + if (!isset(self::$locker[$key]) || !ObjectHelper::check(self::$locker[$key])) { - self::$locker[$key] = new FOFEncryptAes($key, 128); + self::$locker[$key] = new AES($key, 128); } // make sure we have real base64 if ($urlencode && method_exists(get_called_class(), "base64_urldecode")) @@ -4450,7 +4411,7 @@ abstract class ComponentbuilderHelper // get dynamic replacement salt $dynamic = self::getDynamicSalt($dynamic); // get the key timer - if (!self::checkObject(self::$keytimer)) + if (!ObjectHelper::check(self::$keytimer)) { // load the date time object self::$keytimer = new DateTime; @@ -4480,7 +4441,7 @@ abstract class ComponentbuilderHelper $format = 'Y-m-d \o\n H:' . self::periodFix(self::$keytimer->format('i')); } // get key - if (self::checkArray($dynamic)) + if (UtilitiesArrayHelper::check($dynamic)) { return md5(str_replace(array_keys($dynamic), array_values($dynamic), self::$keytimer->format($format) . ' @ VDM.I0')); } @@ -4516,7 +4477,7 @@ abstract class ComponentbuilderHelper public static function getDynamicSalt($dynamic = null) { // load global if not manually set - if (!self::checkArray($dynamic)) + if (!UtilitiesArrayHelper::check($dynamic)) { return self::getGlobalSalt(); } @@ -4539,7 +4500,7 @@ abstract class ComponentbuilderHelper $string = self::randomkey($size); } // convert string to array - $string = self::safeString($string); + $string = UtilitiesStringHelper::safe($string); // convert string to array $array = str_split($string); // insure only unique values are used @@ -4556,19 +4517,19 @@ abstract class ComponentbuilderHelper public static function getGlobalSalt() { // load from memory if found - if (!self::checkArray(self::$globalSalt)) + if (!UtilitiesArrayHelper::check(self::$globalSalt)) { // get the global settings - if (!self::checkObject(self::$params)) + if (!ObjectHelper::check(self::$params)) { self::$params = JComponentHelper::getParams('com_componentbuilder'); } // check if we have a global dynamic replacement array available (format --> ' 1->!,3->E,4->A') $tmp = self::$params->get('dynamic_salt', null); - if (self::checkString($tmp) && strpos($tmp, ',') !== false && strpos($tmp, '->') !== false) + if (UtilitiesStringHelper::check($tmp) && strpos($tmp, ',') !== false && strpos($tmp, '->') !== false) { $salt = array_map('trim', (array) explode(',', $tmp)); - if (self::checkArray($salt )) + if (UtilitiesArrayHelper::check($salt )) { foreach($salt as $replace) { @@ -4582,7 +4543,7 @@ abstract class ComponentbuilderHelper } } // return global if found - if (self::checkArray(self::$globalSalt)) + if (UtilitiesArrayHelper::check(self::$globalSalt)) { return self::$globalSalt; } @@ -4680,7 +4641,7 @@ abstract class ComponentbuilderHelper */ public static function hasWork(&$function) { - if (isset(self::$worker[$function]) && self::checkArray(self::$worker[$function])) + if (isset(self::$worker[$function]) && UtilitiesArrayHelper::check(self::$worker[$function])) { return count( (array) self::$worker[$function]); } @@ -4699,7 +4660,7 @@ abstract class ComponentbuilderHelper public static function setWorkerUrl(&$function, &$url) { // set the URL if found - if (self::checkString($url)) + if (UtilitiesStringHelper::check($url)) { // make sure task function url is up self::$workerURL[$function] = $url; @@ -4718,7 +4679,7 @@ abstract class ComponentbuilderHelper public static function setWorkerHeaders(&$function, &$headers) { // set the Headers if found - if (self::checkArray($headers)) + if (UtilitiesArrayHelper::check($headers)) { // make sure task function headers are set self::$workerHEADER[$function] = $headers; @@ -4775,7 +4736,7 @@ abstract class ComponentbuilderHelper // build headers $headers = array('VDM-TASK: ' .$task); // build dynamic headers - if (isset(self::$workerHEADER[$function]) && self::checkArray(self::$workerHEADER[$function])) + if (isset(self::$workerHEADER[$function]) && UtilitiesArrayHelper::check(self::$workerHEADER[$function])) { foreach (self::$workerHEADER[$function] as $header) { @@ -4785,7 +4746,7 @@ abstract class ComponentbuilderHelper // build worker options $options = array(); // make sure worker is up - if (isset(self::$worker[$function]) && self::checkArray(self::$worker[$function])) + if (isset(self::$worker[$function]) && UtilitiesArrayHelper::check(self::$worker[$function])) { // this load method is for each if (1 == $perTask) @@ -4814,7 +4775,7 @@ abstract class ComponentbuilderHelper self::$worker[$function] = array(); } // do the execution - if (self::checkArray($options)) + if (UtilitiesArrayHelper::check($options)) { if (isset(self::$workerURL[$function])) { @@ -4855,7 +4816,7 @@ abstract class ComponentbuilderHelper return false; } // make sure we have an url - if (self::checkString($url)) + if (UtilitiesStringHelper::check($url)) { // make sure the thread size isn't greater than the # of _options $threadSize = (count($_options) < $threadSize) ? count($_options) : $threadSize; @@ -4946,17 +4907,17 @@ abstract class ComponentbuilderHelper // get URL $url = self::getEditURL($item, $view, $views, $ref, $component); // check if we found any - if (self::checkString($url)) + if (UtilitiesStringHelper::check($url)) { // get the global settings - if (!self::checkObject(self::$params)) + if (!ObjectHelper::check(self::$params)) { self::$params = JComponentHelper::getParams('com_componentbuilder'); } // get UIKIT version $uikit = self::$params->get('uikit_version', 2); // check that we have the ID - if (self::checkObject($item) && isset($item->id)) + if (ObjectHelper::check($item) && isset($item->id)) { // check if the checked_out is available if (isset($item->checked_out)) @@ -4968,7 +4929,7 @@ abstract class ComponentbuilderHelper $checked_out = self::getVar($view, $item->id, 'id', 'checked_out', '=', str_replace('com_', '', $component)); } } - elseif (self::checkArray($item) && isset($item['id'])) + elseif (UtilitiesArrayHelper::check($item) && isset($item['id'])) { // check if the checked_out is available if (isset($item['checked_out'])) @@ -4985,9 +4946,9 @@ abstract class ComponentbuilderHelper $checked_out = self::getVar($view, $item, 'id', 'checked_out', '=', str_replace('com_', '', $component)); } // set the link title - $title = self::safeString(JText::_('COM_COMPONENTBUILDER_EDIT') . ' ' . $view, 'W'); + $title = UtilitiesStringHelper::safe(JText::_('COM_COMPONENTBUILDER_EDIT') . ' ' . $view, 'W'); // check that there is a check message - if (self::checkString($headsup)) + if (UtilitiesStringHelper::check($headsup)) { if (3 == $uikit) { @@ -5013,7 +4974,7 @@ abstract class ComponentbuilderHelper { return ' '; } - return ' '; + return ' '; } // return normal edit link return ' '; @@ -5026,7 +4987,7 @@ abstract class ComponentbuilderHelper { return ' '; } - return ' '; + return ' '; } // return normal edit link return ' '; @@ -5051,24 +5012,24 @@ abstract class ComponentbuilderHelper public static function getEditTextButton($text, &$item, $view, $views, $ref = '', $component = 'com_componentbuilder', $jRoute = true, $class = 'uk-button', $headsup = 'COM_COMPONENTBUILDER_ALL_UNSAVED_WORK_ON_THIS_PAGE_WILL_BE_LOST_ARE_YOU_SURE_YOU_WANT_TO_CONTINUE') { // make sure we have text - if (!self::checkString($text)) + if (!UtilitiesStringHelper::check($text)) { return self::getEditButton($item, $view, $views, $ref, $component, $headsup); } // get URL $url = self::getEditURL($item, $view, $views, $ref, $component, $jRoute); // check if we found any - if (self::checkString($url)) + if (UtilitiesStringHelper::check($url)) { // get the global settings - if (!self::checkObject(self::$params)) + if (!ObjectHelper::check(self::$params)) { self::$params = JComponentHelper::getParams('com_componentbuilder'); } // get UIKIT version $uikit = self::$params->get('uikit_version', 2); // check that we have the ID - if (self::checkObject($item) && isset($item->id)) + if (ObjectHelper::check($item) && isset($item->id)) { // check if the checked_out is available if (isset($item->checked_out)) @@ -5080,7 +5041,7 @@ abstract class ComponentbuilderHelper $checked_out = self::getVar($view, $item->id, 'id', 'checked_out', '=', str_replace('com_', '', $component)); } } - elseif (self::checkArray($item) && isset($item['id'])) + elseif (UtilitiesArrayHelper::check($item) && isset($item['id'])) { // check if the checked_out is available if (isset($item['checked_out'])) @@ -5097,9 +5058,9 @@ abstract class ComponentbuilderHelper $checked_out = self::getVar($view, $item, 'id', 'checked_out', '=', str_replace('com_', '', $component)); } // set the link title - $title = self::safeString(JText::_('COM_COMPONENTBUILDER_EDIT') . ' ' . $view, 'W'); + $title = UtilitiesStringHelper::safe(JText::_('COM_COMPONENTBUILDER_EDIT') . ' ' . $view, 'W'); // check that there is a check message - if (self::checkString($headsup)) + if (UtilitiesStringHelper::check($headsup)) { if (3 == $uikit) { @@ -5125,7 +5086,7 @@ abstract class ComponentbuilderHelper { return ' ' . $text . ''; } - return ' ' . $text . ''; + return ' ' . $text . ''; } // return normal edit link return ' ' . $text . ''; @@ -5138,7 +5099,7 @@ abstract class ComponentbuilderHelper { return ' ' . $text . ''; } - return ' ' . $text . ''; + return ' ' . $text . ''; } // return normal edit link return ' ' . $text . ''; @@ -5216,7 +5177,7 @@ abstract class ComponentbuilderHelper // we start with false. $can_edit = false; // check that we have the ID - if (self::checkObject($item) && isset($item->id)) + if (ObjectHelper::check($item) && isset($item->id)) { $record->id = (int) $item->id; // check if created_by is available @@ -5225,7 +5186,7 @@ abstract class ComponentbuilderHelper $record->created_by = (int) $item->created_by; } } - elseif (self::checkArray($item) && isset($item['id'])) + elseif (UtilitiesArrayHelper::check($item) && isset($item['id'])) { $record->id = (int) $item['id']; // check if created_by is available @@ -5503,7 +5464,7 @@ abstract class ComponentbuilderHelper self::$subformLayouts = JComponentHelper::getParams('com_componentbuilder')->get('subform_layouts', false); } // check what we found (else) return default - if (self::checkObject(self::$subformLayouts)) + if (ObjectHelper::check(self::$subformLayouts)) { // looking for $target = $view . '.' . $field; @@ -5548,7 +5509,7 @@ abstract class ComponentbuilderHelper { $query->from($db->quoteName('#__'.$main.'_'.$table)); } - if (self::checkArray($where)) + if (UtilitiesArrayHelper::check($where)) { foreach ($where as $key => $value) { @@ -5568,7 +5529,7 @@ abstract class ComponentbuilderHelper $query->where($db->quoteName($key) . ' ' . $operator . ' ' . (bool) $value); } // we do not allow arrays at this point - elseif (!self::checkArray($value)) + elseif (!UtilitiesArrayHelper::check($value)) { $query->where($db->quoteName($key) . ' ' . $operator . ' ' . $db->quote( (string) $value)); } @@ -6594,35 +6555,12 @@ abstract class ComponentbuilderHelper * @param SimpleXMLElement $xml The XML element reference in which to inject a comment * @param mixed $node A SimpleXMLElement node to append to the XML element reference, or a stdClass object containing a comment attribute to be injected before the XML node and a fieldXML attribute containing a SimpleXMLElement * - * @return null - * + * @return void + * @deprecated 3.3 Use FormHelper::append($xml, $node); */ public static function xmlAppend(&$xml, $node) { - if (!$node) - { - // element was not returned - return; - } - switch (get_class($node)) - { - case 'stdClass': - if (property_exists($node, 'comment')) - { - self::xmlComment($xml, $node->comment); - } - if (property_exists($node, 'fieldXML')) - { - self::xmlAppend($xml, $node->fieldXML); - } - break; - case 'SimpleXMLElement': - $domXML = dom_import_simplexml($xml); - $domNode = dom_import_simplexml($node); - $domXML->appendChild($domXML->ownerDocument->importNode($domNode, true)); - $xml = simplexml_import_dom($domXML); - break; - } + FormHelper::append($xml, $node); } /** @@ -6631,16 +6569,12 @@ abstract class ComponentbuilderHelper * @param SimpleXMLElement $xml The XML element reference in which to inject a comment * @param string $comment The comment to inject * - * @return null - * + * @return void + * @deprecated 3.3 Use FormHelper::comment($xml, $comment); */ public static function xmlComment(&$xml, $comment) { - $domXML = dom_import_simplexml($xml); - $domComment = new DOMComment($comment); - $nodeTarget = $domXML->ownerDocument->importNode($domComment, true); - $domXML->appendChild($nodeTarget); - $xml = simplexml_import_dom($domXML); + FormHelper::comment($xml, $comment); } /** @@ -6650,14 +6584,11 @@ abstract class ComponentbuilderHelper * @param array $attributes The attributes to apply to the XML element * * @return null - * + * @deprecated 3.3 Use FormHelper::attributes($xml, $attributes); */ public static function xmlAddAttributes(&$xml, $attributes = array()) { - foreach ($attributes as $key => $value) - { - $xml->addAttribute($key, $value); - } + FormHelper::attributes($xml, $attributes); } /** @@ -6667,16 +6598,11 @@ abstract class ComponentbuilderHelper * @param array $options The options to apply to the XML element * * @return void - * + * @deprecated 3.3 Use FormHelper::options($xml, $options); */ public static function xmlAddOptions(&$xml, $options = array()) { - foreach ($options as $key => $value) - { - $addOption = $xml->addChild('option'); - $addOption->addAttribute('value', $key); - $addOption[] = $value; - } + FormHelper::options($xml, $options); } /** @@ -6687,28 +6613,11 @@ abstract class ComponentbuilderHelper * @param array $options The options to apply to the XML element * * @return object - * + * @deprecated 3.3 Use FormHelper::field($attributes, $default, $options); */ public static function getFieldObject(&$attributes, $default = '', $options = null) { - // make sure we have attributes and a type value - if (self::checkArray($attributes) && isset($attributes['type'])) - { - // make sure the form helper class is loaded - if (!method_exists('JFormHelper', 'loadFieldType')) - { - jimport('joomla.form.form'); - } - // get field type - $field = JFormHelper::loadFieldType($attributes['type'], true); - // get field xml - $XML = self::getFieldXML($attributes, $options); - // setup the field - $field->setup($XML, $default); - // return the field object - return $field; - } - return false; + return FormHelper::field($attributes, $default, $options); } /** @@ -6718,27 +6627,11 @@ abstract class ComponentbuilderHelper * @param array $options The options to apply to the XML element * * @return object - * + * @deprecated 3.3 Use FormHelper::xml($attributes, $options); */ public static function getFieldXML(&$attributes, $options = null) { - // make sure we have attributes and a type value - if (self::checkArray($attributes)) - { - // start field xml - $XML = new SimpleXMLElement(''); - // load the attributes - self::xmlAddAttributes($XML, $attributes); - // check if we have options - if (self::checkArray($options)) - { - // load the options - self::xmlAddOptions($XML, $options); - } - // return the field xml - return $XML; - } - return false; + return FormHelper::xml($attributes, $options); } /** diff --git a/admin/language/en-GB/en-GB.com_componentbuilder.ini b/admin/language/en-GB/en-GB.com_componentbuilder.ini index 76dc9116a..1ac4cbee5 100644 --- a/admin/language/en-GB/en-GB.com_componentbuilder.ini +++ b/admin/language/en-GB/en-GB.com_componentbuilder.ini @@ -25,7 +25,7 @@ COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_ACCESS_DESC="Allows the users in this gr COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_OPTIONS="Batch process the selected Admins Custom Tabs" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_TIP="All changes will be applied to all selected Admins Custom Tabs" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_USE="Admins Custom Tabs Batch Use" -COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch admins custom tabs" +COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch admins custom tabs" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_CREATE="Admins Custom Tabs Create" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_CREATE_DESC="Allows the users in this group to create create admins custom tabs" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_DELETE="Admins Custom Tabs Delete" @@ -41,7 +41,7 @@ COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_OWN_DESC="Allows the users in this COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_STATE="Admins Custom Tabs Edit State" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_STATE_DESC="Allows the users in this group to update the state of the admin custom tabs" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_VERSION="Admins Custom Tabs Edit Version" -COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version admins custom tabs" +COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version admins custom tabs" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_ARCHIVED="%s Admins Custom Tabs archived." COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_ARCHIVED_1="%s Admin Custom Tabs archived." COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_N_ITEMS_CHECKED_IN_0="No Admin Custom Tabs successfully checked in." @@ -67,14 +67,14 @@ COM_COMPONENTBUILDER_ADMINS_FIELDS_ACCESS_DESC="Allows the users in this group t COM_COMPONENTBUILDER_ADMINS_FIELDS_BATCH_OPTIONS="Batch process the selected Admins Fields" COM_COMPONENTBUILDER_ADMINS_FIELDS_BATCH_TIP="All changes will be applied to all selected Admins Fields" COM_COMPONENTBUILDER_ADMINS_FIELDS_BATCH_USE="Admins Fields Batch Use" -COM_COMPONENTBUILDER_ADMINS_FIELDS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch admins fields" +COM_COMPONENTBUILDER_ADMINS_FIELDS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch admins fields" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS="Admins Fields Conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_ACCESS="Admins Fields Conditions Access" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_ACCESS_DESC="Allows the users in this group to access access admins fields conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_BATCH_OPTIONS="Batch process the selected Admins Fields Conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_BATCH_TIP="All changes will be applied to all selected Admins Fields Conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_BATCH_USE="Admins Fields Conditions Batch Use" -COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch admins fields conditions" +COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch admins fields conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_CREATE="Admins Fields Conditions Create" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_CREATE_DESC="Allows the users in this group to create create admins fields conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_DELETE="Admins Fields Conditions Delete" @@ -90,7 +90,7 @@ COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_OWN_DESC="Allows the users in COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_STATE="Admins Fields Conditions Edit State" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_STATE_DESC="Allows the users in this group to update the state of the admin fields conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_VERSION="Admins Fields Conditions Edit Version" -COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version admins fields conditions" +COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version admins fields conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_ARCHIVED="%s Admins Fields Conditions archived." COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_ARCHIVED_1="%s Admin Fields Conditions archived." COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_N_ITEMS_CHECKED_IN_0="No Admin Fields Conditions successfully checked in." @@ -125,7 +125,7 @@ COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_STATE="Admins Fields Edit State" COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_STATE_DESC="Allows the users in this group to update the state of the admin fields" COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_VERSION="Admins Fields Edit Version" -COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version admins fields" +COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version admins fields" COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_ARCHIVED="%s Admins Fields archived." COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_ARCHIVED_1="%s Admin Fields archived." COM_COMPONENTBUILDER_ADMINS_FIELDS_N_ITEMS_CHECKED_IN_0="No Admin Fields successfully checked in." @@ -151,7 +151,7 @@ COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_ACCESS_DESC="Allows the users in th COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_BATCH_OPTIONS="Batch process the selected Admins Fields Relations" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_BATCH_TIP="All changes will be applied to all selected Admins Fields Relations" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_BATCH_USE="Admins Fields Relations Batch Use" -COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch admins fields relations" +COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch admins fields relations" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_CREATE="Admins Fields Relations Create" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_CREATE_DESC="Allows the users in this group to create create admins fields relations" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_DELETE="Admins Fields Relations Delete" @@ -167,7 +167,7 @@ COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_OWN_DESC="Allows the users in COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_STATE="Admins Fields Relations Edit State" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_STATE_DESC="Allows the users in this group to update the state of the admin fields relations" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_VERSION="Admins Fields Relations Edit Version" -COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version admins fields relations" +COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version admins fields relations" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_ARCHIVED="%s Admins Fields Relations archived." COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_ARCHIVED_1="%s Admin Fields Relations archived." COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_N_ITEMS_CHECKED_IN_0="No Admin Fields Relations successfully checked in." @@ -413,7 +413,7 @@ COM_COMPONENTBUILDER_ADMIN_VIEWS_ACCESS_DESC="Allows the users in this group to COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_OPTIONS="Batch process the selected Admin Views" COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_TIP="All changes will be applied to all selected Admin Views" COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_USE="Admin Views Batch Use" -COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch admin views" +COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch admin views" COM_COMPONENTBUILDER_ADMIN_VIEWS_CREATE="Admin Views Create" COM_COMPONENTBUILDER_ADMIN_VIEWS_CREATE_DESC="Allows the users in this group to create create admin views" COM_COMPONENTBUILDER_ADMIN_VIEWS_DASHBOARD_LIST="Admin Views Dashboard List" @@ -432,7 +432,7 @@ COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_OWN_DESC="Allows the users in this group t COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_STATE="Admin Views Edit State" COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the admin view" COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_VERSION="Admin Views Edit Version" -COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version admin views" +COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version admin views" COM_COMPONENTBUILDER_ADMIN_VIEWS_EXPORT="Admin Views Export" COM_COMPONENTBUILDER_ADMIN_VIEWS_EXPORT_DESC="Allows the users in this group to export export admin views" COM_COMPONENTBUILDER_ADMIN_VIEWS_IMPORT="Admin Views Import" @@ -1365,7 +1365,7 @@ COM_COMPONENTBUILDER_CLASS_EXTENDINGS_ACCESS_DESC="Allows the users in this grou COM_COMPONENTBUILDER_CLASS_EXTENDINGS_BATCH_OPTIONS="Batch process the selected Class Extendings" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_BATCH_TIP="All changes will be applied to all selected Class Extendings" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_BATCH_USE="Class Extendings Batch Use" -COM_COMPONENTBUILDER_CLASS_EXTENDINGS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch class extendings" +COM_COMPONENTBUILDER_CLASS_EXTENDINGS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch class extendings" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_CREATE="Class Extendings Create" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_CREATE_DESC="Allows the users in this group to create create class extendings" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_DELETE="Class Extendings Delete" @@ -1381,7 +1381,7 @@ COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_OWN_DESC="Allows the users in this gr COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_STATE="Class Extendings Edit State" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_STATE_DESC="Allows the users in this group to update the state of the class extends" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_VERSION="Class Extendings Edit Version" -COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version class extendings" +COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version class extendings" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_ARCHIVED="%s Class Extendings archived." COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_ARCHIVED_1="%s Class Extends archived." COM_COMPONENTBUILDER_CLASS_EXTENDINGS_N_ITEMS_CHECKED_IN_0="No Class Extends successfully checked in." @@ -1445,7 +1445,7 @@ COM_COMPONENTBUILDER_CLASS_METHODS_ACCESS_DESC="Allows the users in this group t COM_COMPONENTBUILDER_CLASS_METHODS_BATCH_OPTIONS="Batch process the selected Class Methods" COM_COMPONENTBUILDER_CLASS_METHODS_BATCH_TIP="All changes will be applied to all selected Class Methods" COM_COMPONENTBUILDER_CLASS_METHODS_BATCH_USE="Class Methods Batch Use" -COM_COMPONENTBUILDER_CLASS_METHODS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch class methods" +COM_COMPONENTBUILDER_CLASS_METHODS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch class methods" COM_COMPONENTBUILDER_CLASS_METHODS_CREATE="Class Methods Create" COM_COMPONENTBUILDER_CLASS_METHODS_CREATE_DESC="Allows the users in this group to create create class methods" COM_COMPONENTBUILDER_CLASS_METHODS_DELETE="Class Methods Delete" @@ -1461,7 +1461,7 @@ COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_STATE="Class Methods Edit State" COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_STATE_DESC="Allows the users in this group to update the state of the class method" COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_VERSION="Class Methods Edit Version" -COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version class methods" +COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version class methods" COM_COMPONENTBUILDER_CLASS_METHODS_EXPORT="Class Methods Export" COM_COMPONENTBUILDER_CLASS_METHODS_EXPORT_DESC="Allows the users in this group to export export class methods" COM_COMPONENTBUILDER_CLASS_METHODS_IMPORT="Class Methods Import" @@ -1542,7 +1542,7 @@ COM_COMPONENTBUILDER_CLASS_PROPERTIES_ACCESS_DESC="Allows the users in this grou COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_OPTIONS="Batch process the selected Class Properties" COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_TIP="All changes will be applied to all selected Class Properties" COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_USE="Class Properties Batch Use" -COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch class properties" +COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch class properties" COM_COMPONENTBUILDER_CLASS_PROPERTIES_CREATE="Class Properties Create" COM_COMPONENTBUILDER_CLASS_PROPERTIES_CREATE_DESC="Allows the users in this group to create create class properties" COM_COMPONENTBUILDER_CLASS_PROPERTIES_DELETE="Class Properties Delete" @@ -1558,7 +1558,7 @@ COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_OWN_DESC="Allows the users in this gr COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_STATE="Class Properties Edit State" COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_STATE_DESC="Allows the users in this group to update the state of the class property" COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_VERSION="Class Properties Edit Version" -COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version class properties" +COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version class properties" COM_COMPONENTBUILDER_CLASS_PROPERTIES_EXPORT="Class Properties Export" COM_COMPONENTBUILDER_CLASS_PROPERTIES_EXPORT_DESC="Allows the users in this group to export export class properties" COM_COMPONENTBUILDER_CLASS_PROPERTIES_IMPORT="Class Properties Import" @@ -1669,7 +1669,7 @@ COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_ACCESS_DESC="Allows the users in thi COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_OPTIONS="Batch process the selected Components Admin Views" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_TIP="All changes will be applied to all selected Components Admin Views" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_USE="Components Admin Views Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components admin views" +COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components admin views" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_CREATE="Components Admin Views Create" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_CREATE_DESC="Allows the users in this group to create create components admin views" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_DELETE="Components Admin Views Delete" @@ -1685,7 +1685,7 @@ COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_OWN_DESC="Allows the users in t COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_STATE="Components Admin Views Edit State" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component admin views" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_VERSION="Components Admin Views Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components admin views" +COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components admin views" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_ARCHIVED="%s Components Admin Views archived." COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_ARCHIVED_1="%s Component Admin Views archived." COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_0="No Component Admin Views successfully checked in." @@ -1712,7 +1712,7 @@ COM_COMPONENTBUILDER_COMPONENTS_CONFIG_ACCESS_DESC="Allows the users in this gro COM_COMPONENTBUILDER_COMPONENTS_CONFIG_BATCH_OPTIONS="Batch process the selected Components Config" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_BATCH_TIP="All changes will be applied to all selected Components Config" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_BATCH_USE="Components Config Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_CONFIG_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components config" +COM_COMPONENTBUILDER_COMPONENTS_CONFIG_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components config" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_CREATE="Components Config Create" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_CREATE_DESC="Allows the users in this group to create create components config" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_DELETE="Components Config Delete" @@ -1728,7 +1728,7 @@ COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_OWN_DESC="Allows the users in this g COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_STATE="Components Config Edit State" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_STATE_DESC="Allows the users in this group to update the state of the component config" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_VERSION="Components Config Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components config" +COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components config" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_ARCHIVED="%s Components Config archived." COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_ARCHIVED_1="%s Component Config archived." COM_COMPONENTBUILDER_COMPONENTS_CONFIG_N_ITEMS_CHECKED_IN_0="No Component Config successfully checked in." @@ -1754,7 +1754,7 @@ COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_ACCESS_DESC="Allows the users COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_BATCH_OPTIONS="Batch process the selected Components Custom Admin Menus" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_BATCH_TIP="All changes will be applied to all selected Components Custom Admin Menus" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_BATCH_USE="Components Custom Admin Menus Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components custom admin menus" +COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components custom admin menus" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_CREATE="Components Custom Admin Menus Create" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_CREATE_DESC="Allows the users in this group to create create components custom admin menus" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_DELETE="Components Custom Admin Menus Delete" @@ -1770,7 +1770,7 @@ COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_OWN_DESC="Allows the use COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_STATE="Components Custom Admin Menus Edit State" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component custom admin menus" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION="Components Custom Admin Menus Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components custom admin menus" +COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components custom admin menus" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_ARCHIVED="%s Components Custom Admin Menus archived." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_ARCHIVED_1="%s Component Custom Admin Menus archived." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_N_ITEMS_CHECKED_IN_0="No Component Custom Admin Menus successfully checked in." @@ -1796,7 +1796,7 @@ COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_ACCESS_DESC="Allows the users COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_BATCH_OPTIONS="Batch process the selected Components Custom Admin Views" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_BATCH_TIP="All changes will be applied to all selected Components Custom Admin Views" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_BATCH_USE="Components Custom Admin Views Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components custom admin views" +COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components custom admin views" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_CREATE="Components Custom Admin Views Create" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_CREATE_DESC="Allows the users in this group to create create components custom admin views" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_DELETE="Components Custom Admin Views Delete" @@ -1812,7 +1812,7 @@ COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_OWN_DESC="Allows the use COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_STATE="Components Custom Admin Views Edit State" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component custom admin views" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_VERSION="Components Custom Admin Views Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components custom admin views" +COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components custom admin views" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_ARCHIVED="%s Components Custom Admin Views archived." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_ARCHIVED_1="%s Component Custom Admin Views archived." COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_N_ITEMS_CHECKED_IN_0="No Component Custom Admin Views successfully checked in." @@ -1838,7 +1838,7 @@ COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_ACCESS_DESC="Allows the users in this COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_BATCH_OPTIONS="Batch process the selected Components Dashboard" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_BATCH_TIP="All changes will be applied to all selected Components Dashboard" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_BATCH_USE="Components Dashboard Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components dashboard" +COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components dashboard" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_CREATE="Components Dashboard Create" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_CREATE_DESC="Allows the users in this group to create create components dashboard" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_DELETE="Components Dashboard Delete" @@ -1854,7 +1854,7 @@ COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_OWN_DESC="Allows the users in thi COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_STATE="Components Dashboard Edit State" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_STATE_DESC="Allows the users in this group to update the state of the component dashboard" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_VERSION="Components Dashboard Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components dashboard" +COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components dashboard" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_ARCHIVED="%s Components Dashboard archived." COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_ARCHIVED_1="%s Component Dashboard archived." COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_N_ITEMS_CHECKED_IN_0="No Component Dashboard successfully checked in." @@ -1880,7 +1880,7 @@ COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_ACCESS_DESC="Allows the users in t COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_BATCH_OPTIONS="Batch process the selected Components Files & Folders" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_BATCH_TIP="All changes will be applied to all selected Components Files & Folders" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_BATCH_USE="Components Files Folders Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components files folders" +COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components files folders" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_CREATE="Components Files Folders Create" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_CREATE_DESC="Allows the users in this group to create create components files folders" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_DELETE="Components Files Folders Delete" @@ -1896,7 +1896,7 @@ COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_OWN_DESC="Allows the users in COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_STATE="Components Files Folders Edit State" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component files folders" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_VERSION="Components Files Folders Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components files folders" +COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components files folders" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_ARCHIVED="%s Components Files & Folders archived." COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_ARCHIVED_1="%s Component Files & Folders archived." COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_N_ITEMS_CHECKED_IN_0="No Component Files & Folders successfully checked in." @@ -1922,7 +1922,7 @@ COM_COMPONENTBUILDER_COMPONENTS_MODULES_ACCESS_DESC="Allows the users in this gr COM_COMPONENTBUILDER_COMPONENTS_MODULES_BATCH_OPTIONS="Batch process the selected Components Modules" COM_COMPONENTBUILDER_COMPONENTS_MODULES_BATCH_TIP="All changes will be applied to all selected Components Modules" COM_COMPONENTBUILDER_COMPONENTS_MODULES_BATCH_USE="Components Modules Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_MODULES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components modules" +COM_COMPONENTBUILDER_COMPONENTS_MODULES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components modules" COM_COMPONENTBUILDER_COMPONENTS_MODULES_CREATE="Components Modules Create" COM_COMPONENTBUILDER_COMPONENTS_MODULES_CREATE_DESC="Allows the users in this group to create create components modules" COM_COMPONENTBUILDER_COMPONENTS_MODULES_DELETE="Components Modules Delete" @@ -1938,7 +1938,7 @@ COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_OWN_DESC="Allows the users in this COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_STATE="Components Modules Edit State" COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_STATE_DESC="Allows the users in this group to update the state of the component modules" COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_VERSION="Components Modules Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components modules" +COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components modules" COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_ARCHIVED="%s Components Modules archived." COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_ARCHIVED_1="%s Component Modules archived." COM_COMPONENTBUILDER_COMPONENTS_MODULES_N_ITEMS_CHECKED_IN_0="No Component Modules successfully checked in." @@ -1964,7 +1964,7 @@ COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_ACCESS_DESC="Allows the users in th COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_BATCH_OPTIONS="Batch process the selected Components mysql Tweaks" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_BATCH_TIP="All changes will be applied to all selected Components mysql Tweaks" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_BATCH_USE="Components Mysql Tweaks Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components mysql tweaks" +COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components mysql tweaks" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_CREATE="Components Mysql Tweaks Create" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_CREATE_DESC="Allows the users in this group to create create components mysql tweaks" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_DELETE="Components Mysql Tweaks Delete" @@ -1980,7 +1980,7 @@ COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_OWN_DESC="Allows the users in COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_STATE="Components Mysql Tweaks Edit State" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component mysql tweaks" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_VERSION="Components Mysql Tweaks Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components mysql tweaks" +COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components mysql tweaks" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_ARCHIVED="%s Components mysql Tweaks archived." COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_ARCHIVED_1="%s Component mysql Tweaks archived." COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_N_ITEMS_CHECKED_IN_0="No Component mysql Tweaks successfully checked in." @@ -2006,7 +2006,7 @@ COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_ACCESS_DESC="Allows the users in th COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_BATCH_OPTIONS="Batch process the selected Components Placeholders" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_BATCH_TIP="All changes will be applied to all selected Components Placeholders" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_BATCH_USE="Components Placeholders Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components placeholders" +COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components placeholders" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_CREATE="Components Placeholders Create" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_CREATE_DESC="Allows the users in this group to create create components placeholders" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_DELETE="Components Placeholders Delete" @@ -2022,7 +2022,7 @@ COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_OWN_DESC="Allows the users in COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_STATE="Components Placeholders Edit State" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component placeholders" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_VERSION="Components Placeholders Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components placeholders" +COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components placeholders" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_ARCHIVED="%s Components Placeholders archived." COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_ARCHIVED_1="%s Component Placeholders archived." COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_N_ITEMS_CHECKED_IN_0="No Component Placeholders successfully checked in." @@ -2048,7 +2048,7 @@ COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_ACCESS_DESC="Allows the users in this gr COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_BATCH_OPTIONS="Batch process the selected Components Plugins" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_BATCH_TIP="All changes will be applied to all selected Components Plugins" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_BATCH_USE="Components Plugins Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components plugins" +COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components plugins" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_CREATE="Components Plugins Create" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_CREATE_DESC="Allows the users in this group to create create components plugins" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_DELETE="Components Plugins Delete" @@ -2064,7 +2064,7 @@ COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_OWN_DESC="Allows the users in this COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_STATE="Components Plugins Edit State" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component plugins" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION="Components Plugins Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components plugins" +COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components plugins" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_ARCHIVED="%s Components Plugins archived." COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_ARCHIVED_1="%s Component Plugins archived." COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_N_ITEMS_CHECKED_IN_0="No Component Plugins successfully checked in." @@ -2090,7 +2090,7 @@ COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_ACCESS_DESC="Allows the users in this COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_OPTIONS="Batch process the selected Components Site Views" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_TIP="All changes will be applied to all selected Components Site Views" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE="Components Site Views Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components site views" +COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components site views" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_CREATE="Components Site Views Create" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_CREATE_DESC="Allows the users in this group to create create components site views" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_DELETE="Components Site Views Delete" @@ -2106,7 +2106,7 @@ COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_OWN_DESC="Allows the users in th COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_STATE="Components Site Views Edit State" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component site views" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_VERSION="Components Site Views Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components site views" +COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components site views" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_ARCHIVED="%s Components Site Views archived." COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_ARCHIVED_1="%s Component Site Views archived." COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_N_ITEMS_CHECKED_IN_0="No Component Site Views successfully checked in." @@ -2132,7 +2132,7 @@ COM_COMPONENTBUILDER_COMPONENTS_UPDATES_ACCESS_DESC="Allows the users in this gr COM_COMPONENTBUILDER_COMPONENTS_UPDATES_BATCH_OPTIONS="Batch process the selected Components Updates" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_BATCH_TIP="All changes will be applied to all selected Components Updates" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_BATCH_USE="Components Updates Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_UPDATES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components updates" +COM_COMPONENTBUILDER_COMPONENTS_UPDATES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components updates" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_CREATE="Components Updates Create" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_CREATE_DESC="Allows the users in this group to create create components updates" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_DELETE="Components Updates Delete" @@ -2148,7 +2148,7 @@ COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_OWN_DESC="Allows the users in this COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_STATE="Components Updates Edit State" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_STATE_DESC="Allows the users in this group to update the state of the component updates" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_VERSION="Components Updates Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components updates" +COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components updates" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_ARCHIVED="%s Components Updates archived." COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_ARCHIVED_1="%s Component Updates archived." COM_COMPONENTBUILDER_COMPONENTS_UPDATES_N_ITEMS_CHECKED_IN_0="No Component Updates successfully checked in." @@ -3398,6 +3398,10 @@ COM_COMPONENTBUILDER_CONFIG_JCB_POWERS_PATH_LABEL="JCB Powers Path
e COM_COMPONENTBUILDER_CONFIG_JCB_POWERS_PATH_MESSAGE="Error! Please add folder path here." COM_COMPONENTBUILDER_CONFIG_JOOMLA_MODULE_UPDATES_VERSION_UPDATE="Joomla Module Updates (version_update)" COM_COMPONENTBUILDER_CONFIG_JOOMLA_PLUGIN_UPDATES_VERSION_UPDATE="Joomla Plugin Updates (version_update)" +COM_COMPONENTBUILDER_CONFIG_JQUERY_LOAD="Load jQuery" +COM_COMPONENTBUILDER_CONFIG_JQUERY_LOAD_DESC="Would you like to load the Joomla jQuery Framework?" +COM_COMPONENTBUILDER_CONFIG_JQUERY_LOAD_LABEL="Load Joomla jQuery" +COM_COMPONENTBUILDER_CONFIG_JQUERY_REMOVE="Remove jQuery" COM_COMPONENTBUILDER_CONFIG_LANGUAGE_LABEL="Language" COM_COMPONENTBUILDER_CONFIG_LAYOUT_LABEL="Layout" COM_COMPONENTBUILDER_CONFIG_LOCAL_FOLDER="Local Folder" @@ -3518,7 +3522,7 @@ COM_COMPONENTBUILDER_CONFIG_TLS="TLS" COM_COMPONENTBUILDER_CONFIG_TRUE="True" COM_COMPONENTBUILDER_CONFIG_TYPE_NAME_BUILDER_DESCRIPTION="The default option only uses alphabetical characters and converts all numbers in field names to the English equivalent like 1 becomes one.
Alphanumeric+dot keeps the numbers unconverted unless it is at the beginning of the field name, and allows for a dot (.) to be used in the type name for namespacing." COM_COMPONENTBUILDER_CONFIG_TYPE_NAME_BUILDER_LABEL="Field Type Name Builder
(in compiler)" -COM_COMPONENTBUILDER_CONFIG_UIKIT_DESC="The Parameters for the uikit are set here.
Uikit is a lightweight and modular front-end frameworkfor developing fast and powerful web interfaces. For more info visit https://getuikit.com/v2/" +COM_COMPONENTBUILDER_CONFIG_UIKIT_DESC="The Parameters for the uikit are set here.
Uikit is a lightweight and modular front-end frameworkfor developing fast and powerful web interfaces. For more info visit https://getuikit.com/v2/" COM_COMPONENTBUILDER_CONFIG_UIKIT_LABEL="Uikit2 Settings" COM_COMPONENTBUILDER_CONFIG_UIKIT_LOAD_DESC="Set the uikit loading option." COM_COMPONENTBUILDER_CONFIG_UIKIT_LOAD_LABEL="Loading Options" @@ -3552,7 +3556,7 @@ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_ACCESS_DESC="Allows the users in this gr COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_OPTIONS="Batch process the selected Custom Admin Views" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_TIP="All changes will be applied to all selected Custom Admin Views" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_USE="Custom Admin Views Batch Use" -COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch custom admin views" +COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch custom admin views" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_CREATE="Custom Admin Views Create" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_CREATE_DESC="Allows the users in this group to create create custom admin views" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_DASHBOARD_LIST="Custom Admin Views Dashboard List" @@ -3567,7 +3571,7 @@ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_OWN_DESC="Allows the users in this COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_STATE="Custom Admin Views Edit State" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the custom admin view" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_VERSION="Custom Admin Views Edit Version" -COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version custom admin views" +COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version custom admin views" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EXPORT="Custom Admin Views Export" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EXPORT_DESC="Allows the users in this group to export export custom admin views" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_IMPORT="Custom Admin Views Import" @@ -3975,7 +3979,7 @@ COM_COMPONENTBUILDER_CUSTOM_CODES_ACCESS_DESC="Allows the users in this group to COM_COMPONENTBUILDER_CUSTOM_CODES_BATCH_OPTIONS="Batch process the selected Custom Codes" COM_COMPONENTBUILDER_CUSTOM_CODES_BATCH_TIP="All changes will be applied to all selected Custom Codes" COM_COMPONENTBUILDER_CUSTOM_CODES_BATCH_USE="Custom Codes Batch Use" -COM_COMPONENTBUILDER_CUSTOM_CODES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch custom codes" +COM_COMPONENTBUILDER_CUSTOM_CODES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch custom codes" COM_COMPONENTBUILDER_CUSTOM_CODES_CREATE="Custom Codes Create" COM_COMPONENTBUILDER_CUSTOM_CODES_CREATE_DESC="Allows the users in this group to create create custom codes" COM_COMPONENTBUILDER_CUSTOM_CODES_DASHBOARD_LIST="Custom Codes Dashboard List" @@ -3993,7 +3997,7 @@ COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_STATE="Custom Codes Edit State" COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_STATE_DESC="Allows the users in this group to update the state of the custom code" COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_VERSION="Custom Codes Edit Version" -COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version custom codes" +COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version custom codes" COM_COMPONENTBUILDER_CUSTOM_CODES_EXPORT="Custom Codes Export" COM_COMPONENTBUILDER_CUSTOM_CODES_EXPORT_DESC="Allows the users in this group to export export custom codes" COM_COMPONENTBUILDER_CUSTOM_CODES_IMPORT="Custom Codes Import" @@ -4151,7 +4155,7 @@ COM_COMPONENTBUILDER_DYNAMIC_GETS_ACCESS_DESC="Allows the users in this group to COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_OPTIONS="Batch process the selected Dynamic Gets" COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_TIP="All changes will be applied to all selected Dynamic Gets" COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_USE="Dynamic Gets Batch Use" -COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch dynamic gets" +COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch dynamic gets" COM_COMPONENTBUILDER_DYNAMIC_GETS_CREATE="Dynamic Gets Create" COM_COMPONENTBUILDER_DYNAMIC_GETS_CREATE_DESC="Allows the users in this group to create create dynamic gets" COM_COMPONENTBUILDER_DYNAMIC_GETS_DASHBOARD_ADD="Dynamic Gets Dashboard Add" @@ -4167,7 +4171,7 @@ COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_STATE="Dynamic Gets Edit State" COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_STATE_DESC="Allows the users in this group to update the state of the dynamic get" COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_VERSION="Dynamic Gets Edit Version" -COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version dynamic gets" +COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version dynamic gets" COM_COMPONENTBUILDER_DYNAMIC_GETS_EXPORT="Dynamic Gets Export" COM_COMPONENTBUILDER_DYNAMIC_GETS_EXPORT_DESC="Allows the users in this group to export export dynamic gets" COM_COMPONENTBUILDER_DYNAMIC_GETS_IMPORT="Dynamic Gets Import" @@ -4495,7 +4499,7 @@ COM_COMPONENTBUILDER_FIELDS_ACCESS_DESC="Allows the users in this group to acces COM_COMPONENTBUILDER_FIELDS_BATCH_OPTIONS="Batch process the selected Fields" COM_COMPONENTBUILDER_FIELDS_BATCH_TIP="All changes will be applied to all selected Fields" COM_COMPONENTBUILDER_FIELDS_BATCH_USE="Fields Batch Use" -COM_COMPONENTBUILDER_FIELDS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch fields" +COM_COMPONENTBUILDER_FIELDS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch fields" COM_COMPONENTBUILDER_FIELDS_CREATE="Fields Create" COM_COMPONENTBUILDER_FIELDS_CREATE_DESC="Allows the users in this group to create create fields" COM_COMPONENTBUILDER_FIELDS_DASHBOARD_ADD="Fields Dashboard Add" @@ -4511,7 +4515,7 @@ COM_COMPONENTBUILDER_FIELDS_EDIT_OWN_DESC="Allows the users in this group to edi COM_COMPONENTBUILDER_FIELDS_EDIT_STATE="Fields Edit State" COM_COMPONENTBUILDER_FIELDS_EDIT_STATE_DESC="Allows the users in this group to update the state of the field" COM_COMPONENTBUILDER_FIELDS_EDIT_VERSION="Fields Edit Version" -COM_COMPONENTBUILDER_FIELDS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version fields" +COM_COMPONENTBUILDER_FIELDS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version fields" COM_COMPONENTBUILDER_FIELDS_EXPORT="Fields Export" COM_COMPONENTBUILDER_FIELDS_EXPORT_DESC="Allows the users in this group to export export fields" COM_COMPONENTBUILDER_FIELDS_IMPORT="Fields Import" @@ -4545,7 +4549,7 @@ COM_COMPONENTBUILDER_FIELDTYPES_ACCESS_DESC="Allows the users in this group to a COM_COMPONENTBUILDER_FIELDTYPES_BATCH_OPTIONS="Batch process the selected Fieldtypes" COM_COMPONENTBUILDER_FIELDTYPES_BATCH_TIP="All changes will be applied to all selected Fieldtypes" COM_COMPONENTBUILDER_FIELDTYPES_BATCH_USE="Fieldtypes Batch Use" -COM_COMPONENTBUILDER_FIELDTYPES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch fieldtypes" +COM_COMPONENTBUILDER_FIELDTYPES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch fieldtypes" COM_COMPONENTBUILDER_FIELDTYPES_CREATE="Fieldtypes Create" COM_COMPONENTBUILDER_FIELDTYPES_CREATE_DESC="Allows the users in this group to create create fieldtypes" COM_COMPONENTBUILDER_FIELDTYPES_DASHBOARD_LIST="Fieldtypes Dashboard List" @@ -4559,7 +4563,7 @@ COM_COMPONENTBUILDER_FIELDTYPES_EDIT_OWN_DESC="Allows the users in this group to COM_COMPONENTBUILDER_FIELDTYPES_EDIT_STATE="Fieldtypes Edit State" COM_COMPONENTBUILDER_FIELDTYPES_EDIT_STATE_DESC="Allows the users in this group to update the state of the fieldtype" COM_COMPONENTBUILDER_FIELDTYPES_EDIT_VERSION="Fieldtypes Edit Version" -COM_COMPONENTBUILDER_FIELDTYPES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version fieldtypes" +COM_COMPONENTBUILDER_FIELDTYPES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version fieldtypes" COM_COMPONENTBUILDER_FIELDTYPES_EXPORT="Fieldtypes Export" COM_COMPONENTBUILDER_FIELDTYPES_EXPORT_DESC="Allows the users in this group to export export fieldtypes" COM_COMPONENTBUILDER_FIELDTYPES_IMPORT="Fieldtypes Import" @@ -4589,6 +4593,8 @@ COM_COMPONENTBUILDER_FIELDTYPE_ADJUSTABLE_DESCRIPTION="Select if the value is ad COM_COMPONENTBUILDER_FIELDTYPE_ADJUSTABLE_LABEL="Adjustable" COM_COMPONENTBUILDER_FIELDTYPE_BASE64="base64" COM_COMPONENTBUILDER_FIELDTYPE_BASIC_ENCRYPTION_LOCALDBKEY="Basic Encryption (local-DB-key)" +COM_COMPONENTBUILDER_FIELDTYPE_BASIC_ENCRYPTION_NOTE_DESCRIPTION="

Since basic encryption makes use of the FOF encryption suite, we need to deprecate this method.
Hence, please refrain from using this method in new projects!

Removing this basic encryption method from an existing project is challenging, and incorrect removal may result in data loss, or breach. For this reason, we've ported the FOF encryption suite into JCB powers, enabling its use in PHP 8+ and Joomla 4.

As a result, you should be able to continue using it in existing projects.

We plan to establish a migration path to another encryption option, like PHPSecLib, in the future. We will announce the removal date of the Basic Encryption feature only after this migration path is in place.

" +COM_COMPONENTBUILDER_FIELDTYPE_BASIC_ENCRYPTION_NOTE_LABEL="Basic Encryption" COM_COMPONENTBUILDER_FIELDTYPE_BIGINT="BIGINT" COM_COMPONENTBUILDER_FIELDTYPE_BLOB="BLOB" COM_COMPONENTBUILDER_FIELDTYPE_CATID_DESCRIPTION="select one of the following categories" @@ -4652,6 +4658,8 @@ COM_COMPONENTBUILDER_FIELDTYPE_MANDATORY_LABEL="Mandatory" COM_COMPONENTBUILDER_FIELDTYPE_MEDIUMBLOB="MEDIUMBLOB" COM_COMPONENTBUILDER_FIELDTYPE_MEDIUMTEXT="MEDIUMTEXT" COM_COMPONENTBUILDER_FIELDTYPE_MEDIUM_ENCRYPTION_LOCALFILEKEY="Medium Encryption (local-file-key)" +COM_COMPONENTBUILDER_FIELDTYPE_MEDIUM_ENCRYPTION_NOTE_DESCRIPTION="

Since medium encryption makes use of the FOF encryption suite, we need to deprecate this method.
Hence, please refrain from using this method in new projects!

Removing this medium encryption method from an existing project is challenging, and incorrect removal may result in data loss, or breach. For this reason, we've ported the FOF encryption suite into JCB powers, enabling its use in PHP 8+ and Joomla 4.

As a result, you should be able to continue using it in existing projects.

We plan to establish a migration path to another encryption option, like PHPSecLib, in the future. We will announce the removal date of the Medium Encryption feature only after this migration path is in place.

" +COM_COMPONENTBUILDER_FIELDTYPE_MEDIUM_ENCRYPTION_NOTE_LABEL="Medium Encryption" COM_COMPONENTBUILDER_FIELDTYPE_MODIFIED_BY_DESC="The last user that modified this Fieldtype." COM_COMPONENTBUILDER_FIELDTYPE_MODIFIED_BY_LABEL="Modified By" COM_COMPONENTBUILDER_FIELDTYPE_MODIFIED_DATE_DESC="The date this Fieldtype was modified." @@ -4691,7 +4699,7 @@ COM_COMPONENTBUILDER_FIELDTYPE_SHORT_DESCRIPTION_MESSAGE="Error! Please add some COM_COMPONENTBUILDER_FIELDTYPE_SIXTY_FOUR="64" COM_COMPONENTBUILDER_FIELDTYPE_STATUS="Status" COM_COMPONENTBUILDER_FIELDTYPE_STORE_DESCRIPTION="How should the field value be modeled during saving and getting of the value. Default is the Joomla basic normal storing way of dealing with this field type." -COM_COMPONENTBUILDER_FIELDTYPE_STORE_LABEL="Modeling Method" +COM_COMPONENTBUILDER_FIELDTYPE_STORE_LABEL="Modelling Method" COM_COMPONENTBUILDER_FIELDTYPE_TEN="10" COM_COMPONENTBUILDER_FIELDTYPE_TEXT="TEXT" COM_COMPONENTBUILDER_FIELDTYPE_TIME="TIME" @@ -4714,6 +4722,8 @@ COM_COMPONENTBUILDER_FIELD_ADD_JAVASCRIPT_VIEWS_FOOTER_LABEL="Add JavaScript (vi COM_COMPONENTBUILDER_FIELD_ADD_JAVASCRIPT_VIEW_FOOTER_LABEL="Add JavaScript (view-footer)" COM_COMPONENTBUILDER_FIELD_BASE64="base64" COM_COMPONENTBUILDER_FIELD_BASIC_ENCRYPTION_LOCALDBKEY="Basic Encryption (local-DB-key)" +COM_COMPONENTBUILDER_FIELD_BASIC_ENCRYPTION_NOTE_DESCRIPTION="

Since basic encryption makes use of the FOF encryption suite, we need to deprecate this method.
Hence, please refrain from using this method in new projects!

Removing this basic encryption method from an existing project is challenging, and incorrect removal may result in data loss, or breach. For this reason, we've ported the FOF encryption suite into JCB powers, enabling its use in PHP 8+ and Joomla 4.

As a result, you should be able to continue using it in existing projects.

We plan to establish a migration path to another encryption option, like PHPSecLib, in the future. We will announce the removal date of the Basic Encryption feature only after this migration path is in place.

" +COM_COMPONENTBUILDER_FIELD_BASIC_ENCRYPTION_NOTE_LABEL="Basic Encryption" COM_COMPONENTBUILDER_FIELD_BIGINT="BIGINT" COM_COMPONENTBUILDER_FIELD_BLOB="BLOB" COM_COMPONENTBUILDER_FIELD_BSB_NOT_FOUND_IN_LOCAL_DATABASE_TABLE_S_SO_IMPORTED_OF_ITS_VALUES_FAILED_PLEASE_UPDATE_YOUR_JCB_INSTALL_AND_TRY_AGAIN="Field %s not found in local database table (%s) so imported of its values failed, please update your JCB install and try again." @@ -4783,6 +4793,8 @@ COM_COMPONENTBUILDER_FIELD_LONGTEXT="LONGTEXT" COM_COMPONENTBUILDER_FIELD_MEDIUMBLOB="MEDIUMBLOB" COM_COMPONENTBUILDER_FIELD_MEDIUMTEXT="MEDIUMTEXT" COM_COMPONENTBUILDER_FIELD_MEDIUM_ENCRYPTION_LOCALFILEKEY="Medium Encryption (local-file-key)" +COM_COMPONENTBUILDER_FIELD_MEDIUM_ENCRYPTION_NOTE_DESCRIPTION="

Since medium encryption makes use of the FOF encryption suite, we need to deprecate this method.
Hence, please refrain from using this method in new projects!

Removing this medium encryption method from an existing project is challenging, and incorrect removal may result in data loss, or breach. For this reason, we've ported the FOF encryption suite into JCB powers, enabling its use in PHP 8+ and Joomla 4.

As a result, you should be able to continue using it in existing projects.

We plan to establish a migration path to another encryption option, like PHPSecLib, in the future. We will announce the removal date of the Medium Encryption feature only after this migration path is in place.

" +COM_COMPONENTBUILDER_FIELD_MEDIUM_ENCRYPTION_NOTE_LABEL="Medium Encryption" COM_COMPONENTBUILDER_FIELD_MODIFIED_BY_DESC="The last user that modified this Field." COM_COMPONENTBUILDER_FIELD_MODIFIED_BY_LABEL="Modified By" COM_COMPONENTBUILDER_FIELD_MODIFIED_DATE_DESC="The date this Field was modified." @@ -4833,7 +4845,7 @@ COM_COMPONENTBUILDER_FIELD_SEVEN="7" COM_COMPONENTBUILDER_FIELD_SIXTY_FOUR="64" COM_COMPONENTBUILDER_FIELD_STATUS="Status" COM_COMPONENTBUILDER_FIELD_STORE_DESCRIPTION="How should the field value be modeled during saving and getting of the value. Default is the Joomla basic normal storing way of dealing with this field type." -COM_COMPONENTBUILDER_FIELD_STORE_LABEL="Modeling Method" +COM_COMPONENTBUILDER_FIELD_STORE_LABEL="Modelling Method" COM_COMPONENTBUILDER_FIELD_TEN="10" COM_COMPONENTBUILDER_FIELD_TEXT="TEXT" COM_COMPONENTBUILDER_FIELD_TIME="TIME" @@ -4902,8 +4914,8 @@ COM_COMPONENTBUILDER_FILTER_MAIN_GET_ASCENDING="Main Get ascending" COM_COMPONENTBUILDER_FILTER_MAIN_GET_DESCENDING="Main Get descending" COM_COMPONENTBUILDER_FILTER_MAIN_SOURCE_ASCENDING="Main Source ascending" COM_COMPONENTBUILDER_FILTER_MAIN_SOURCE_DESCENDING="Main Source descending" -COM_COMPONENTBUILDER_FILTER_MODELING_METHOD_ASCENDING="Modeling Method ascending" -COM_COMPONENTBUILDER_FILTER_MODELING_METHOD_DESCENDING="Modeling Method descending" +COM_COMPONENTBUILDER_FILTER_MODELLING_METHOD_ASCENDING="Modelling Method ascending" +COM_COMPONENTBUILDER_FILTER_MODELLING_METHOD_DESCENDING="Modelling Method descending" COM_COMPONENTBUILDER_FILTER_MODIFIED_DATE_ASCENDING="Modified Date ascending" COM_COMPONENTBUILDER_FILTER_MODIFIED_DATE_DESCENDING="Modified Date descending" COM_COMPONENTBUILDER_FILTER_NAMESPACE_ASCENDING="Namespace ascending" @@ -5041,7 +5053,7 @@ COM_COMPONENTBUILDER_FILTER_SELECT_LIBRARY="Select Library" COM_COMPONENTBUILDER_FILTER_SELECT_LOCATION="Select Location" COM_COMPONENTBUILDER_FILTER_SELECT_MAIN_GET="Select Main Get" COM_COMPONENTBUILDER_FILTER_SELECT_MAIN_SOURCE="Select Main Source" -COM_COMPONENTBUILDER_FILTER_SELECT_MODELING_METHOD="Select Modeling Method" +COM_COMPONENTBUILDER_FILTER_SELECT_MODELLING_METHOD="Select Modelling Method" COM_COMPONENTBUILDER_FILTER_SELECT_NAME="Select Name" COM_COMPONENTBUILDER_FILTER_SELECT_NULL_SWITCH="Select Null Switch" COM_COMPONENTBUILDER_FILTER_SELECT_PROTOCOL="Select Protocol" @@ -5144,7 +5156,7 @@ COM_COMPONENTBUILDER_HELP_DOCUMENTS_ACCESS_DESC="Allows the users in this group COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_OPTIONS="Batch process the selected Help Documents" COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_TIP="All changes will be applied to all selected Help Documents" COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_USE="Help Documents Batch Use" -COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch help documents" +COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch help documents" COM_COMPONENTBUILDER_HELP_DOCUMENTS_CREATE="Help Documents Create" COM_COMPONENTBUILDER_HELP_DOCUMENTS_CREATE_DESC="Allows the users in this group to create create help documents" COM_COMPONENTBUILDER_HELP_DOCUMENTS_DASHBOARD_LIST="Help Documents Dashboard List" @@ -5158,7 +5170,7 @@ COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_OWN_DESC="Allows the users in this grou COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_STATE="Help Documents Edit State" COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_STATE_DESC="Allows the users in this group to update the state of the help document" COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_VERSION="Help Documents Edit Version" -COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version help documents" +COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version help documents" COM_COMPONENTBUILDER_HELP_DOCUMENTS_EXPORT="Help Documents Export" COM_COMPONENTBUILDER_HELP_DOCUMENTS_EXPORT_DESC="Allows the users in this group to export export help documents" COM_COMPONENTBUILDER_HELP_DOCUMENTS_IMPORT="Help Documents Import" @@ -5250,6 +5262,7 @@ COM_COMPONENTBUILDER_HOW_TO_GET_A_S_FREE_KEYSA_FROM_VDM="How to get free COM_COMPONENTBUILDER_HR_HTHREECUSTOM_CODES_WARNINGHTHREE="

Custom Codes Warning

" COM_COMPONENTBUILDER_HR_HTHREECZEROMPZERONTHREENT_ISSUE_FOUNDHTHREEPTHE_PATH_S_COULD_NOT_BE_USEDP="

c0mp0n3nt issue found

The path (%s) could not be used.

" COM_COMPONENTBUILDER_HR_HTHREEDASHBOARD_ERRORHTHREE="

Dashboard Error

" +COM_COMPONENTBUILDER_HR_HTHREEDYNAMIC_BUTTON_ERRORHTHREE="

Dynamic Button Error

" COM_COMPONENTBUILDER_HR_HTHREEDYNAMIC_FOLDERS_WERE_DETECTEDHTHREE="

Dynamic folder(s) were detected.

" COM_COMPONENTBUILDER_HR_HTHREEEXTERNAL_CODE_ERRORHTHREE="

External Code Error

" COM_COMPONENTBUILDER_HR_HTHREEEXTERNAL_CODE_NOTICEHTHREE="

External Code Notice

" @@ -5257,6 +5270,7 @@ COM_COMPONENTBUILDER_HR_HTHREEEXTERNAL_CODE_WARNINGHTHREE="

External Co COM_COMPONENTBUILDER_HR_HTHREEFIELD_NOTICEHTHREE="

Field Notice

" COM_COMPONENTBUILDER_HR_HTHREEFILE_PATH_ERRORHTHREE="

File Path Error

" COM_COMPONENTBUILDER_HR_HTHREEFOLDER_PATH_ERRORHTHREE="

Folder Path Error

" +COM_COMPONENTBUILDER_HR_HTHREETIDY_ERRORHTHREE="

Tidy Error

" COM_COMPONENTBUILDER_HTHREEPLACEHOLDER_REMOVEDHTHREEPBTHISB_CUSTOM_CODE_CAN_ONLY_BE_USED_IN_BOTHERB_CUSTOM_CODE_NOT_IN_IT_SELF_SINCE_THAT_WILL_CAUSE_A_INFINITE_LOOP_IN_THE_COMPILERP="

Placeholder Removed!

This custom code can only be used in other custom code, not in it self! Since that will cause a infinite loop in the compiler.

" COM_COMPONENTBUILDER_HTHREESHTHREEPCUSTOM_CODE_CAN_ONLY_BE_USED_IN_OTHER_CUSTOM_CODE_IF_SET_AS_BJCB_MANUALB_YOU_CAN_NOT_ADD_THEM_TO_EMHASH_AUTOMATIONEM_CODE_AT_THIS_POINTP="

%s

Custom code can only be used in other custom code if set as JCB (manual), you can not add them to Hash (Automation) code at this point.

" COM_COMPONENTBUILDER_HTHREES_NAMESPACE_ERROR_SHTHREEPYOU_MUST_ATLEAST_HAVE_TWO_SECTIONS_IN_YOUR_NAMESPACE_YOU_JUST_HAVE_ONE_S_THIS_IS_AN_UNACCEPTABLE_ACTION_PLEASE_SEE_A_HREFS_PSRFOURA_FOR_MORE_INFOPPTHIS_S_WAS_THEREFORE_REMOVED_A_HREFSCLICK_HEREA_TO_FIX_THIS_ISSUEP="

%s namespace error (%s)

You must at-least have two sections in your namespace, you just have one (%s). This is an unacceptable action, please see psr-4 for more info.

This %s was therefore removed, click here to fix this issue.

" @@ -5333,6 +5347,7 @@ COM_COMPONENTBUILDER_IMPORT_UPLOAD_BOTTON="Upload File" COM_COMPONENTBUILDER_INACTIVE="Inactive" COM_COMPONENTBUILDER_INDENTATION_OPTIONS="Indentation Options" COM_COMPONENTBUILDER_INIT="Init" +COM_COMPONENTBUILDER_INITIALIZATION_FAILED="Initialization Failed!" COM_COMPONENTBUILDER_INVEST_IN_JCB="Invest in JCB" COM_COMPONENTBUILDER_INVEST_IN_THE_FUTURE_OF_JOOMLA_COMPONENT_BUILDER_JCB_BY_MAKING_A_BFINANCIAL_CONTRIBUTIONB_NO_MATTER_HOW_SMALL_THE_CONTINUAL_SUPPORT_OF_ALL_THOSE_USING_THE_TOOL_WILL_BE_MORE_THAN_ENOUGH_TO_ENSURE_ITS_CONTINUED_GROWTH_AND_RELEVANCE_BY_INVESTING_IN_THIS_OPENSOURCE_PROJECT_YOU_ARE_SECURING_ITS_FUTURE_AS_A_VITAL_TOOL_FOR_PHP_PROGRAMMERS="Invest in the future of Joomla Component Builder (JCB) by making a financial contribution, no matter how small. The continual support of all those using the tool will be more than enough to ensure its continued growth and relevance. By investing in this open-source project, you are securing its future as a vital tool for PHP programmers." COM_COMPONENTBUILDER_INVEST_IN_THE_FUTURE_OF_JOOMLA_COMPONENT_BUILDER_JCB_BY_MAKING_A_BFINANCIAL_DONATIONB_SUPPORT_THE_NECESSARY_DEVELOPMENT_AND_MAINTENANCE_OF_THIS_OPENSOURCE_PROJECT_ENSURING_ITS_CONTINUED_GROWTH_AND_RELEVANCE_FOR_THE_COMMUNITY_YOUR_CONTRIBUTION_WILL_HELP_SECURE_THE_FUTURE_OF_THIS_VITAL_TOOL_FOR_PHP_PROGRAMMERS="Invest in the future of Joomla Component Builder (JCB) by making a financial donation. Support the necessary development and maintenance of this open-source project, ensuring its continued growth and relevance for the community. Your contribution will help secure the future of this vital tool for PHP programmers." @@ -5411,7 +5426,7 @@ COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_ACCESS_DESC="Allows the users in this gro COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_OPTIONS="Batch process the selected Joomla Components" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_TIP="All changes will be applied to all selected Joomla Components" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_USE="Joomla Components Batch Use" -COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla components" +COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla components" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_CODE_NAME="Code Name" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_COMPANY_DETAILS="Company Details" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_CREATE="Joomla Components Create" @@ -5432,7 +5447,7 @@ COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_OWN_DESC="Allows the users in this g COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_STATE="Joomla Components Edit State" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla component" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_VERSION="Joomla Components Edit Version" -COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla components" +COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla components" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_ARCHIVED="%s Joomla Components archived." COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_ARCHIVED_1="%s Joomla Component archived." COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_N_ITEMS_CHECKED_IN_0="No Joomla Component successfully checked in." @@ -5666,7 +5681,7 @@ COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_ON_CUSTOM_ADMIN_VIEWS_DESCRIPTION="Do COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_ON_CUSTOM_ADMIN_VIEWS_LABEL="Setting Custom Admin Views" COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_ON_SITE_VIEWS_DESCRIPTION="Do not add the same view twice it will not work. Please watch this tutorial for more help." COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_ON_SITE_VIEWS_LABEL="Setting Site Views" -COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_README_DESCRIPTION="

Need help, visit Markdown-Cheatsheet

# ###Component_name### (###VERSION###)

###DESCRIPTION###

# Build Details

+ *Company*: [###COMPANYNAME###](###AUTHORWEBSITE###)
+ *Author*: [###AUTHOR###](mailto:###AUTHOREMAIL###)
+ *Name*: [###Component_name###](###AUTHORWEBSITE###)
+ *First Build*: ###CREATIONDATE###
+ *Last Build*: ###BUILDDATE###
+ *Version*: ###VERSION###
+ *Copyright*: ###COPYRIGHT###
+ *License*: ###LICENSE###

## Build Time

**###totalHours### Hours** or **###totalDays### Eight Hour Days** (actual time the author saved -
due to [Automated Component Builder](https://www.joomlacomponentbuilder.com))

> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,
> never making one mistake or taking any coffee break.)

+ *Line count*: **###LINE_COUNT###**
+ *File count*: **###FILE_COUNT###**
+ *Folder count*: **###FOLDER_COUNT###**

**###actualHoursSpent### Hours** or **###actualDaysSpent### Eight Hour Days** (the actual time the author spent)

> (with the following break down:
> **debugging @###debuggingHours###hours** = codingtime / 4;
> **planning @###planningHours###hours** = codingtime / 7;
> **mapping @###mappingHours###hours** = codingtime / 10;
> **office @###officeHours###hours** = codingtime / 6;)

**###actualTotalHours### Hours** or **###actualTotalDays### Eight Hour Days**
(a total of the realistic time frame for this project)

> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,
> with the normal everyday realities at the office, that includes the component planning, mapping & debugging.)

Project duration: **###projectWeekTime### weeks** or **###projectMonthTime### months**

> This **component** was build with a Joomla [Automated Component Builder](https://www.joomlacomponentbuilder.com).
> Developed by [Llewellyn van der Merwe](mailto:llewellyn@joomlacomponentbuilder.com)

## Donations

If you want to support this project, please consider donating:
* PayPal: [paypal.me/donationgeek](https://www.paypal.me/donationgeek)
* Bitcoin: 18vURxYpPFjvNk8BnUy1ovCAyQmY3MzkSf
* Ethereum: 0x9548144662b47327c954f3e214edb96662d51218
" +COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_README_DESCRIPTION="

Need help, visit Markdown-Cheatsheet

# ###Component_name### (###VERSION###)

###DESCRIPTION###

# Build Details

+ *Company*: [###COMPANYNAME###](###AUTHORWEBSITE###)
+ *Author*: [###AUTHOR###](mailto:###AUTHOREMAIL###)
+ *Name*: [###Component_name###](###AUTHORWEBSITE###)
+ *First Build*: ###CREATIONDATE###
+ *Last Build*: ###BUILDDATE###
+ *Version*: ###VERSION###
+ *Copyright*: ###COPYRIGHT###
+ *License*: ###LICENSE###

## Build Time

**###totalHours### Hours** or **###totalDays### Eight Hour Days** (actual time the author saved -
due to [Automated Component Builder](https://www.joomlacomponentbuilder.com))

> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,
> never making one mistake or taking any coffee break.)

+ *Line count*: **###LINE_COUNT###**
+ *File count*: **###FILE_COUNT###**
+ *Folder count*: **###FOLDER_COUNT###**

**###actualHoursSpent### Hours** or **###actualDaysSpent### Eight Hour Days** (the actual time the author spent)

> (with the following break down:
> **debugging @###debuggingHours###hours** = codingtime / 4;
> **planning @###planningHours###hours** = codingtime / 7;
> **mapping @###mappingHours###hours** = codingtime / 10;
> **office @###officeHours###hours** = codingtime / 6;)

**###actualTotalHours### Hours** or **###actualTotalDays### Eight Hour Days**
(a total of the realistic time frame for this project)

> (if creating a folder and file took **5 seconds** and writing one line of code took **10 seconds**,
> with the normal everyday realities at the office, that includes the component planning, mapping & debugging.)

Project duration: **###projectWeekTime### weeks** or **###projectMonthTime### months**

> This **component** was build with a Joomla [Automated Component Builder](https://www.joomlacomponentbuilder.com).
> Developed by [Llewellyn van der Merwe](mailto:joomla@vdm.io)

## Donations

If you want to support this project, please consider donating:
* Open Collective: [Joomla-Component-Builder](https://opencollective.com/Joomla-Component-Builder)
" COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_README_LABEL="Demo README (with all place-holders)" COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_UPDATE_SERVER_NOTE_FTP_DESCRIPTION="During compilation the file will be moved to the server. You still need to point the above update server url to the xml file location on your server for it to work correctly." COM_COMPONENTBUILDER_JOOMLA_COMPONENT_NOTE_UPDATE_SERVER_NOTE_FTP_LABEL="Select the server used for your update server." @@ -5792,7 +5807,7 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_ACCESS_DESC="Allows the users in this group COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_OPTIONS="Batch process the selected Joomla Modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_TIP="All changes will be applied to all selected Joomla Modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_USE="Joomla Modules Batch Use" -COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla modules" +COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_CREATE="Joomla Modules Create" COM_COMPONENTBUILDER_JOOMLA_MODULES_CREATE_DESC="Allows the users in this group to create create joomla modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_DASHBOARD_LIST="Joomla Modules Dashboard List" @@ -5810,7 +5825,7 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_OWN_DESC="Allows the users in this grou COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_STATE="Joomla Modules Edit State" COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla module" COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_VERSION="Joomla Modules Edit Version" -COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla modules" +COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_EXPORT="Joomla Modules Export" COM_COMPONENTBUILDER_JOOMLA_MODULES_EXPORT_DESC="Allows the users in this group to export export joomla modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS="Joomla Modules Files, Folders & URLs" @@ -5819,7 +5834,7 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_ACCESS_DESC="Allows the u COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_OPTIONS="Batch process the selected Joomla Modules Files, Folders & URLs" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_TIP="All changes will be applied to all selected Joomla Modules Files, Folders & URLs" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_USE="Joomla Modules Files Folders Urls Batch Use" -COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla modules files folders urls" +COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla modules files folders urls" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_CREATE="Joomla Modules Files Folders Urls Create" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_CREATE_DESC="Allows the users in this group to create create joomla modules files folders urls" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_DELETE="Joomla Modules Files Folders Urls Delete" @@ -5835,7 +5850,7 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_OWN_DESC="Allows the COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_STATE="Joomla Modules Files Folders Urls Edit State" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla module files folders urls" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_VERSION="Joomla Modules Files Folders Urls Edit Version" -COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla modules files folders urls" +COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla modules files folders urls" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_ARCHIVED="%s Joomla Modules Files, Folders & URLs archived." COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_ARCHIVED_1="%s Joomla Module Files, Folders & URLs archived." COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_0="No Joomla Module Files, Folders & URLs successfully checked in." @@ -5884,7 +5899,7 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_ACCESS_DESC="Allows the users in thi COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_OPTIONS="Batch process the selected Joomla Modules Updates" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_TIP="All changes will be applied to all selected Joomla Modules Updates" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_USE="Joomla Modules Updates Batch Use" -COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla modules updates" +COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla modules updates" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_CREATE="Joomla Modules Updates Create" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_CREATE_DESC="Allows the users in this group to create create joomla modules updates" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_DELETE="Joomla Modules Updates Delete" @@ -5900,7 +5915,7 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_OWN_DESC="Allows the users in t COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_STATE="Joomla Modules Updates Edit State" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla module updates" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_VERSION="Joomla Modules Updates Edit Version" -COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla modules updates" +COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla modules updates" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_ARCHIVED="%s Joomla Modules Updates archived." COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_ARCHIVED_1="%s Joomla Module Updates archived." COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_N_ITEMS_CHECKED_IN_0="No Joomla Module Updates successfully checked in." @@ -6207,7 +6222,7 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGINS_ACCESS_DESC="Allows the users in this group COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_OPTIONS="Batch process the selected Joomla Plugins" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_TIP="All changes will be applied to all selected Joomla Plugins" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_USE="Joomla Plugins Batch Use" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla plugins" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla plugins" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_CREATE="Joomla Plugins Create" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_CREATE_DESC="Allows the users in this group to create create joomla plugins" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_DASHBOARD_LIST="Joomla Plugins Dashboard List" @@ -6225,14 +6240,14 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_OWN_DESC="Allows the users in this grou COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_STATE="Joomla Plugins Edit State" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla plugin" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_VERSION="Joomla Plugins Edit Version" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla plugins" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla plugins" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS="Joomla Plugins Files, Folders & URLs" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_ACCESS="Joomla Plugins Files Folders Urls Access" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_ACCESS_DESC="Allows the users in this group to access access joomla plugins files folders urls" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_BATCH_OPTIONS="Batch process the selected Joomla Plugins Files, Folders & URLs" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_BATCH_TIP="All changes will be applied to all selected Joomla Plugins Files, Folders & URLs" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_BATCH_USE="Joomla Plugins Files Folders Urls Batch Use" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla plugins files folders urls" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla plugins files folders urls" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_CREATE="Joomla Plugins Files Folders Urls Create" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_CREATE_DESC="Allows the users in this group to create create joomla plugins files folders urls" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_DELETE="Joomla Plugins Files Folders Urls Delete" @@ -6248,7 +6263,7 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_OWN_DESC="Allows the COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_STATE="Joomla Plugins Files Folders Urls Edit State" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla plugin files folders urls" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_VERSION="Joomla Plugins Files Folders Urls Edit Version" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla plugins files folders urls" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla plugins files folders urls" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_ARCHIVED="%s Joomla Plugins Files, Folders & URLs archived." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_ARCHIVED_1="%s Joomla Plugin Files, Folders & URLs archived." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_0="No Joomla Plugin Files, Folders & URLs successfully checked in." @@ -6295,7 +6310,7 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_ACCESS_DESC="Allows the users in thi COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_BATCH_OPTIONS="Batch process the selected Joomla Plugins Updates" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_BATCH_TIP="All changes will be applied to all selected Joomla Plugins Updates" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_BATCH_USE="Joomla Plugins Updates Batch Use" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla plugins updates" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla plugins updates" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_CREATE="Joomla Plugins Updates Create" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_CREATE_DESC="Allows the users in this group to create create joomla plugins updates" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_DELETE="Joomla Plugins Updates Delete" @@ -6311,7 +6326,7 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_OWN_DESC="Allows the users in t COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_STATE="Joomla Plugins Updates Edit State" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla plugin updates" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_VERSION="Joomla Plugins Updates Edit Version" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla plugins updates" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla plugins updates" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_ARCHIVED="%s Joomla Plugins Updates archived." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_ARCHIVED_1="%s Joomla Plugin Updates archived." COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_N_ITEMS_CHECKED_IN_0="No Joomla Plugin Updates successfully checked in." @@ -6466,9 +6481,9 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_ACCESS_DESC="Allows the users in this COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_BATCH_OPTIONS="Batch process the selected Joomla Plugin Groups" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_BATCH_TIP="All changes will be applied to all selected Joomla Plugin Groups" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_BATCH_USE="Joomla Plugin Groups Batch Use" -COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla plugin groups" +COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla plugin groups" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_EDIT_VERSION="Joomla Plugin Groups Edit Version" -COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla plugin groups" +COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla plugin groups" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_ARCHIVED="%s Joomla Plugin Groups archived." COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_ARCHIVED_1="%s Joomla Plugin Group archived." COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_N_ITEMS_CHECKED_IN_0="No Joomla Plugin Group successfully checked in." @@ -6672,7 +6687,7 @@ COM_COMPONENTBUILDER_LANGUAGES_ACCESS_DESC="Allows the users in this group to ac COM_COMPONENTBUILDER_LANGUAGES_BATCH_OPTIONS="Batch process the selected Languages" COM_COMPONENTBUILDER_LANGUAGES_BATCH_TIP="All changes will be applied to all selected Languages" COM_COMPONENTBUILDER_LANGUAGES_BATCH_USE="Languages Batch Use" -COM_COMPONENTBUILDER_LANGUAGES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch languages" +COM_COMPONENTBUILDER_LANGUAGES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch languages" COM_COMPONENTBUILDER_LANGUAGES_CREATE="Languages Create" COM_COMPONENTBUILDER_LANGUAGES_CREATE_DESC="Allows the users in this group to create create languages" COM_COMPONENTBUILDER_LANGUAGES_DELETE="Languages Delete" @@ -6684,7 +6699,7 @@ COM_COMPONENTBUILDER_LANGUAGES_EDIT_OWN_DESC="Allows the users in this group to COM_COMPONENTBUILDER_LANGUAGES_EDIT_STATE="Languages Edit State" COM_COMPONENTBUILDER_LANGUAGES_EDIT_STATE_DESC="Allows the users in this group to update the state of the language" COM_COMPONENTBUILDER_LANGUAGES_EDIT_VERSION="Languages Edit Version" -COM_COMPONENTBUILDER_LANGUAGES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version languages" +COM_COMPONENTBUILDER_LANGUAGES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version languages" COM_COMPONENTBUILDER_LANGUAGES_EXPORT="Languages Export" COM_COMPONENTBUILDER_LANGUAGES_EXPORT_DESC="Allows the users in this group to export export languages" COM_COMPONENTBUILDER_LANGUAGES_IMPORT="Languages Import" @@ -6745,7 +6760,7 @@ COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_ACCESS_DESC="Allows the users in this COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_OPTIONS="Batch process the selected Language Translations" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_TIP="All changes will be applied to all selected Language Translations" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_USE="Language Translations Batch Use" -COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch language translations" +COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch language translations" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_CREATE="Language Translations Create" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_CREATE_DESC="Allows the users in this group to create create language translations" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_DASHBOARD_LIST="Language Translations Dashboard List" @@ -6759,7 +6774,7 @@ COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_OWN_DESC="Allows the users in th COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_STATE="Language Translations Edit State" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_STATE_DESC="Allows the users in this group to update the state of the language translation" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_VERSION="Language Translations Edit Version" -COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version language translations" +COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version language translations" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EXPORT="Language Translations Export" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EXPORT_DESC="Allows the users in this group to export export language translations" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_IMPORT="Language Translations Import" @@ -6826,7 +6841,7 @@ COM_COMPONENTBUILDER_LAYOUTS_ACCESS_DESC="Allows the users in this group to acce COM_COMPONENTBUILDER_LAYOUTS_BATCH_OPTIONS="Batch process the selected Layouts" COM_COMPONENTBUILDER_LAYOUTS_BATCH_TIP="All changes will be applied to all selected Layouts" COM_COMPONENTBUILDER_LAYOUTS_BATCH_USE="Layouts Batch Use" -COM_COMPONENTBUILDER_LAYOUTS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch layouts" +COM_COMPONENTBUILDER_LAYOUTS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch layouts" COM_COMPONENTBUILDER_LAYOUTS_CREATE="Layouts Create" COM_COMPONENTBUILDER_LAYOUTS_CREATE_DESC="Allows the users in this group to create create layouts" COM_COMPONENTBUILDER_LAYOUTS_DASHBOARD_LIST="Layouts Dashboard List" @@ -6841,7 +6856,7 @@ COM_COMPONENTBUILDER_LAYOUTS_EDIT_OWN_DESC="Allows the users in this group to ed COM_COMPONENTBUILDER_LAYOUTS_EDIT_STATE="Layouts Edit State" COM_COMPONENTBUILDER_LAYOUTS_EDIT_STATE_DESC="Allows the users in this group to update the state of the layout" COM_COMPONENTBUILDER_LAYOUTS_EDIT_VERSION="Layouts Edit Version" -COM_COMPONENTBUILDER_LAYOUTS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version layouts" +COM_COMPONENTBUILDER_LAYOUTS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version layouts" COM_COMPONENTBUILDER_LAYOUTS_EXPORT="Layouts Export" COM_COMPONENTBUILDER_LAYOUTS_EXPORT_DESC="Allows the users in this group to export export layouts" COM_COMPONENTBUILDER_LAYOUTS_IMPORT="Layouts Import" @@ -6934,14 +6949,14 @@ COM_COMPONENTBUILDER_LIBRARIES_ACCESS_DESC="Allows the users in this group to ac COM_COMPONENTBUILDER_LIBRARIES_BATCH_OPTIONS="Batch process the selected Libraries" COM_COMPONENTBUILDER_LIBRARIES_BATCH_TIP="All changes will be applied to all selected Libraries" COM_COMPONENTBUILDER_LIBRARIES_BATCH_USE="Libraries Batch Use" -COM_COMPONENTBUILDER_LIBRARIES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch libraries" +COM_COMPONENTBUILDER_LIBRARIES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch libraries" COM_COMPONENTBUILDER_LIBRARIES_CONFIG="Libraries Config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_ACCESS="Libraries Config Access" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_ACCESS_DESC="Allows the users in this group to access access libraries config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_BATCH_OPTIONS="Batch process the selected Libraries Config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_BATCH_TIP="All changes will be applied to all selected Libraries Config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_BATCH_USE="Libraries Config Batch Use" -COM_COMPONENTBUILDER_LIBRARIES_CONFIG_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch libraries config" +COM_COMPONENTBUILDER_LIBRARIES_CONFIG_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch libraries config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_CREATE="Libraries Config Create" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_CREATE_DESC="Allows the users in this group to create create libraries config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_DELETE="Libraries Config Delete" @@ -6957,7 +6972,7 @@ COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_OWN_DESC="Allows the users in this gr COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_STATE="Libraries Config Edit State" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_STATE_DESC="Allows the users in this group to update the state of the library config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_VERSION="Libraries Config Edit Version" -COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_VERSION_DESC="Allows users in this group to edit versions of version libraries config" +COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version libraries config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_ARCHIVED="%s Libraries Config archived." COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_ARCHIVED_1="%s Library Config archived." COM_COMPONENTBUILDER_LIBRARIES_CONFIG_N_ITEMS_CHECKED_IN_0="No Library Config successfully checked in." @@ -6990,14 +7005,14 @@ COM_COMPONENTBUILDER_LIBRARIES_EDIT_OWN_DESC="Allows the users in this group to COM_COMPONENTBUILDER_LIBRARIES_EDIT_STATE="Libraries Edit State" COM_COMPONENTBUILDER_LIBRARIES_EDIT_STATE_DESC="Allows the users in this group to update the state of the library" COM_COMPONENTBUILDER_LIBRARIES_EDIT_VERSION="Libraries Edit Version" -COM_COMPONENTBUILDER_LIBRARIES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version libraries" +COM_COMPONENTBUILDER_LIBRARIES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version libraries" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS="Libraries Files, Folders & URLs" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_ACCESS="Libraries Files Folders Urls Access" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_ACCESS_DESC="Allows the users in this group to access access libraries files folders urls" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_BATCH_OPTIONS="Batch process the selected Libraries Files, Folders & URLs" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_BATCH_TIP="All changes will be applied to all selected Libraries Files, Folders & URLs" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_BATCH_USE="Libraries Files Folders Urls Batch Use" -COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch libraries files folders urls" +COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch libraries files folders urls" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_CREATE="Libraries Files Folders Urls Create" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_CREATE_DESC="Allows the users in this group to create create libraries files folders urls" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_DELETE="Libraries Files Folders Urls Delete" @@ -7013,7 +7028,7 @@ COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_OWN_DESC="Allows the user COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_STATE="Libraries Files Folders Urls Edit State" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_STATE_DESC="Allows the users in this group to update the state of the library files folders urls" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_VERSION="Libraries Files Folders Urls Edit Version" -COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version libraries files folders urls" +COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version libraries files folders urls" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_ARCHIVED="%s Libraries Files, Folders & URLs archived." COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_ARCHIVED_1="%s Library Files, Folders & URLs archived." COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_N_ITEMS_CHECKED_IN_0="No Library Files, Folders & URLs successfully checked in." @@ -7374,6 +7389,7 @@ COM_COMPONENTBUILDER_PAIDLOCKED="Paid/Locked" COM_COMPONENTBUILDER_PATH_CODESCODE="Path: %s" COM_COMPONENTBUILDER_PATH_TO_THE_ZIPPED_PACKAGE_IS_CODESCODE_BR_S_S="Path to the zipped package is: %s
%s %s" COM_COMPONENTBUILDER_PERMISSIONS="Permissions" +COM_COMPONENTBUILDER_PERMISSION_DENIED="Permission Denied!" COM_COMPONENTBUILDER_PFILE_AT_BGITEAREMOTESB_GAVE_THE_FOLLOWING_ERRORBR_SP="

File at gitea.remote/%s gave the following error!
%s

" COM_COMPONENTBUILDER_PLACEHOLDER="Placeholder" COM_COMPONENTBUILDER_PLACEHOLDERS="Placeholders" @@ -7382,7 +7398,7 @@ COM_COMPONENTBUILDER_PLACEHOLDERS_ACCESS_DESC="Allows the users in this group to COM_COMPONENTBUILDER_PLACEHOLDERS_BATCH_OPTIONS="Batch process the selected Placeholders" COM_COMPONENTBUILDER_PLACEHOLDERS_BATCH_TIP="All changes will be applied to all selected Placeholders" COM_COMPONENTBUILDER_PLACEHOLDERS_BATCH_USE="Placeholders Batch Use" -COM_COMPONENTBUILDER_PLACEHOLDERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch placeholders" +COM_COMPONENTBUILDER_PLACEHOLDERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch placeholders" COM_COMPONENTBUILDER_PLACEHOLDERS_CREATE="Placeholders Create" COM_COMPONENTBUILDER_PLACEHOLDERS_CREATE_DESC="Allows the users in this group to create create placeholders" COM_COMPONENTBUILDER_PLACEHOLDERS_DASHBOARD_LIST="Placeholders Dashboard List" @@ -7396,7 +7412,7 @@ COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_STATE="Placeholders Edit State" COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_STATE_DESC="Allows the users in this group to update the state of the placeholder" COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_VERSION="Placeholders Edit Version" -COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version placeholders" +COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version placeholders" COM_COMPONENTBUILDER_PLACEHOLDERS_EXPORT="Placeholders Export" COM_COMPONENTBUILDER_PLACEHOLDERS_EXPORT_DESC="Allows the users in this group to export export placeholders" COM_COMPONENTBUILDER_PLACEHOLDERS_IMPORT="Placeholders Import" @@ -7475,7 +7491,7 @@ COM_COMPONENTBUILDER_POWERS_A_HREFS_TARGET_BLANK_TITLEOPEN_POWERSA_WITH_VERSION_ COM_COMPONENTBUILDER_POWERS_BATCH_OPTIONS="Batch process the selected Powers" COM_COMPONENTBUILDER_POWERS_BATCH_TIP="All changes will be applied to all selected Powers" COM_COMPONENTBUILDER_POWERS_BATCH_USE="Powers Batch Use" -COM_COMPONENTBUILDER_POWERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch powers" +COM_COMPONENTBUILDER_POWERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch powers" COM_COMPONENTBUILDER_POWERS_CREATE="Powers Create" COM_COMPONENTBUILDER_POWERS_CREATE_DESC="Allows the users in this group to create create powers" COM_COMPONENTBUILDER_POWERS_DASHBOARD_LIST="Powers Dashboard List" @@ -7494,7 +7510,7 @@ COM_COMPONENTBUILDER_POWERS_EDIT_OWN_DESC="Allows the users in this group to edi COM_COMPONENTBUILDER_POWERS_EDIT_STATE="Powers Edit State" COM_COMPONENTBUILDER_POWERS_EDIT_STATE_DESC="Allows the users in this group to update the state of the power" COM_COMPONENTBUILDER_POWERS_EDIT_VERSION="Powers Edit Version" -COM_COMPONENTBUILDER_POWERS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version powers" +COM_COMPONENTBUILDER_POWERS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version powers" COM_COMPONENTBUILDER_POWERS_NAME="Name" COM_COMPONENTBUILDER_POWERS_N_ITEMS_ARCHIVED="%s Powers archived." COM_COMPONENTBUILDER_POWERS_N_ITEMS_ARCHIVED_1="%s Power archived." @@ -7624,8 +7640,6 @@ COM_COMPONENTBUILDER_POWER_RUN_EXPANSION_BUTTON_ACCESS_DESC="Allows the users in COM_COMPONENTBUILDER_POWER_SAVE_WARNING="Alias already existed so a number was added at the end. You can re-edit the Power to customise the alias." COM_COMPONENTBUILDER_POWER_STATUS="Status" COM_COMPONENTBUILDER_POWER_SUPER_POWER="Super Power" -COM_COMPONENTBUILDER_POWER_SYNC_BUTTON_ACCESS="Power Sync Button Access" -COM_COMPONENTBUILDER_POWER_SYNC_BUTTON_ACCESS_DESC="Allows the users in this group to access the sync button." COM_COMPONENTBUILDER_POWER_SYSTEM_NAME_DESCRIPTION="Used only in the system." COM_COMPONENTBUILDER_POWER_SYSTEM_NAME_HINT="The System Name Here" COM_COMPONENTBUILDER_POWER_SYSTEM_NAME_LABEL="System Name" @@ -7670,6 +7684,7 @@ COM_COMPONENTBUILDER_REQUIRES_THE_VALUE_ENTERED_BE_ONE_OF_THE_OPTIONS_IN_AN_ELEM COM_COMPONENTBUILDER_REQUIRES_THE_VALUE_TO_BE_A_TELEPHONE_NUMBER_COMPLYING_WITH_THE_STANDARDS_OF_NANPA_ITUT_TRECEONE_HUNDRED_AND_SIXTY_FOUR_OR_IETF_RFCFOUR_THOUSAND_NINE_HUNDRED_AND_THIRTY_THREE="Requires the value to be a Telephone number complying with the standards of nanpa, ITU-T T-REC-E.164 or ietf rfc4933." COM_COMPONENTBUILDER_REQUIRES_THE_VALUE_TO_BE_THE_SAME_AS_THAT_HELD_IN_THE_FIELD_NAMED_QUOTFIELDQUOT_EGS="Requires the value to be the same as that held in the field named "field", eg:%s" COM_COMPONENTBUILDER_RESET="Reset" +COM_COMPONENTBUILDER_RESET_FAILED="Reset Failed!" COM_COMPONENTBUILDER_REVERT_ALL_AHEAD_SNIPPETS="Revert All Ahead Snippets" COM_COMPONENTBUILDER_RIGHT_IN_TAB="Right in Tab" COM_COMPONENTBUILDER_RIGHT_OF_TABS="Right of Tabs" @@ -7720,7 +7735,7 @@ COM_COMPONENTBUILDER_SERVERS_ACCESS_DESC="Allows the users in this group to acce COM_COMPONENTBUILDER_SERVERS_BATCH_OPTIONS="Batch process the selected Servers" COM_COMPONENTBUILDER_SERVERS_BATCH_TIP="All changes will be applied to all selected Servers" COM_COMPONENTBUILDER_SERVERS_BATCH_USE="Servers Batch Use" -COM_COMPONENTBUILDER_SERVERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch servers" +COM_COMPONENTBUILDER_SERVERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch servers" COM_COMPONENTBUILDER_SERVERS_CREATE="Servers Create" COM_COMPONENTBUILDER_SERVERS_CREATE_DESC="Allows the users in this group to create create servers" COM_COMPONENTBUILDER_SERVERS_DASHBOARD_LIST="Servers Dashboard List" @@ -7738,7 +7753,7 @@ COM_COMPONENTBUILDER_SERVERS_EDIT_OWN_DESC="Allows the users in this group to ed COM_COMPONENTBUILDER_SERVERS_EDIT_STATE="Servers Edit State" COM_COMPONENTBUILDER_SERVERS_EDIT_STATE_DESC="Allows the users in this group to update the state of the server" COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION="Servers Edit Version" -COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version servers" +COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version servers" COM_COMPONENTBUILDER_SERVERS_EXPORT="Servers Export" COM_COMPONENTBUILDER_SERVERS_EXPORT_DESC="Allows the users in this group to export export servers" COM_COMPONENTBUILDER_SERVERS_IMPORT="Servers Import" @@ -7863,7 +7878,7 @@ COM_COMPONENTBUILDER_SITE_VIEWS_ACCESS_DESC="Allows the users in this group to a COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_OPTIONS="Batch process the selected Site Views" COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_TIP="All changes will be applied to all selected Site Views" COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_USE="Site Views Batch Use" -COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch site views" +COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch site views" COM_COMPONENTBUILDER_SITE_VIEWS_CREATE="Site Views Create" COM_COMPONENTBUILDER_SITE_VIEWS_CREATE_DESC="Allows the users in this group to create create site views" COM_COMPONENTBUILDER_SITE_VIEWS_DASHBOARD_LIST="Site Views Dashboard List" @@ -7878,7 +7893,7 @@ COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_OWN_DESC="Allows the users in this group to COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_STATE="Site Views Edit State" COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the site view" COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_VERSION="Site Views Edit Version" -COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version site views" +COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version site views" COM_COMPONENTBUILDER_SITE_VIEWS_EXPORT="Site Views Export" COM_COMPONENTBUILDER_SITE_VIEWS_EXPORT_DESC="Allows the users in this group to export export site views" COM_COMPONENTBUILDER_SITE_VIEWS_IMPORT="Site Views Import" @@ -8293,7 +8308,7 @@ COM_COMPONENTBUILDER_SNIPPETS_ACCESS_DESC="Allows the users in this group to acc COM_COMPONENTBUILDER_SNIPPETS_BATCH_OPTIONS="Batch process the selected Snippets" COM_COMPONENTBUILDER_SNIPPETS_BATCH_TIP="All changes will be applied to all selected Snippets" COM_COMPONENTBUILDER_SNIPPETS_BATCH_USE="Snippets Batch Use" -COM_COMPONENTBUILDER_SNIPPETS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch snippets" +COM_COMPONENTBUILDER_SNIPPETS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch snippets" COM_COMPONENTBUILDER_SNIPPETS_COULD_NOT_BE_UPDATEDSAVED="Snippets could not be updated/saved" COM_COMPONENTBUILDER_SNIPPETS_CREATE="Snippets Create" COM_COMPONENTBUILDER_SNIPPETS_CREATE_DESC="Allows the users in this group to create create snippets" @@ -8308,7 +8323,7 @@ COM_COMPONENTBUILDER_SNIPPETS_EDIT_OWN_DESC="Allows the users in this group to e COM_COMPONENTBUILDER_SNIPPETS_EDIT_STATE="Snippets Edit State" COM_COMPONENTBUILDER_SNIPPETS_EDIT_STATE_DESC="Allows the users in this group to update the state of the snippet" COM_COMPONENTBUILDER_SNIPPETS_EDIT_VERSION="Snippets Edit Version" -COM_COMPONENTBUILDER_SNIPPETS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version snippets" +COM_COMPONENTBUILDER_SNIPPETS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version snippets" COM_COMPONENTBUILDER_SNIPPETS_EXPORT="Snippets Export" COM_COMPONENTBUILDER_SNIPPETS_EXPORT_DESC="Allows the users in this group to export export snippets" COM_COMPONENTBUILDER_SNIPPETS_IMPORT="Snippets Import" @@ -8401,7 +8416,7 @@ COM_COMPONENTBUILDER_SNIPPET_TYPES_ACCESS_DESC="Allows the users in this group t COM_COMPONENTBUILDER_SNIPPET_TYPES_BATCH_OPTIONS="Batch process the selected Snippet Types" COM_COMPONENTBUILDER_SNIPPET_TYPES_BATCH_TIP="All changes will be applied to all selected Snippet Types" COM_COMPONENTBUILDER_SNIPPET_TYPES_BATCH_USE="Snippet Types Batch Use" -COM_COMPONENTBUILDER_SNIPPET_TYPES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch snippet types" +COM_COMPONENTBUILDER_SNIPPET_TYPES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch snippet types" COM_COMPONENTBUILDER_SNIPPET_TYPES_CREATE="Snippet Types Create" COM_COMPONENTBUILDER_SNIPPET_TYPES_CREATE_DESC="Allows the users in this group to create create snippet types" COM_COMPONENTBUILDER_SNIPPET_TYPES_DELETE="Snippet Types Delete" @@ -8413,7 +8428,7 @@ COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_STATE="Snippet Types Edit State" COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_STATE_DESC="Allows the users in this group to update the state of the snippet type" COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_VERSION="Snippet Types Edit Version" -COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version snippet types" +COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version snippet types" COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_ARCHIVED="%s Snippet Types archived." COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_ARCHIVED_1="%s Snippet Type archived." COM_COMPONENTBUILDER_SNIPPET_TYPES_N_ITEMS_CHECKED_IN_0="No Snippet Type successfully checked in." @@ -8510,12 +8525,13 @@ COM_COMPONENTBUILDER_SUBMENU_SITE_VIEWS="Site Views" COM_COMPONENTBUILDER_SUBMENU_SNIPPETS="Snippets" COM_COMPONENTBUILDER_SUBMENU_TEMPLATES="Templates" COM_COMPONENTBUILDER_SUBMENU_VALIDATION_RULES="Validation Rules" +COM_COMPONENTBUILDER_SUCCESS="Success" +COM_COMPONENTBUILDER_SUCCESSFULLY_INITIALIZED_ALL_REMOTE_POWERS="Successfully Initialized all Remote Powers" COM_COMPONENTBUILDER_SUCCESS_THE_SNIPPET_WAS_SAVED="Success! The snippet was saved." COM_COMPONENTBUILDER_SUCCESS_THE_SNIPPET_WAS_SAVED_BUT_THE_MODIFIED_DATE_COULD_NOT_BE_ADJUSTED_BR_BR_BTHIS_MEANS_THE_SNIPPETS_WILL_CONTINUE_TO_APPEAR_OUT_OF_DATEB="Success! The snippet was saved. But the modified date could not be adjusted.

This means the snippets will continue to appear out of date." COM_COMPONENTBUILDER_SUPER_POWER="Super Power" COM_COMPONENTBUILDER_SUPPORT_JCB_TODAY="Support JCB Today" COM_COMPONENTBUILDER_SUPPORT_JOOMLA_COMPONENT_BUILDER_JCB_WITH_A_BFINANCIAL_DONATIONB_TO_SHOW_GRATITUDE_FOR_THE_TIME_AND_EFFORT_SAVED_IN_YOUR_DEVELOPMENT_PROCESS_YOUR_CONTRIBUTION_NO_MATTER_THE_SIZE_WILL_BE_APPRECIATED_BY_THE_PROJECTS_TEAM_AND_THE_WIDER_COMMUNITY_HELP_ENSURE_THE_GROWTH_AND_RELEVANCE_OF_THIS_ESSENTIAL_TOOL="Support Joomla Component Builder (JCB) with a financial donation to show gratitude for the time and effort saved in your development process. Your contribution, no matter the size, will be appreciated by the project's team and the wider community. Help ensure the growth and relevance of this essential tool." -COM_COMPONENTBUILDER_SYNC="Sync" COM_COMPONENTBUILDER_SZIP_COULD_NOT_BE_INSTALLED="%s.zip could not be installed!" COM_COMPONENTBUILDER_SZIP_WAS_REMOVED_THE_FROM_TMP_FOLDER_DURING_INSTALLATION="%s.zip was removed the from tmp folder during installation!" COM_COMPONENTBUILDER_S_BEING_IMPORTED="%s Being Imported" @@ -8541,7 +8557,7 @@ COM_COMPONENTBUILDER_TEMPLATES_ACCESS_DESC="Allows the users in this group to ac COM_COMPONENTBUILDER_TEMPLATES_BATCH_OPTIONS="Batch process the selected Templates" COM_COMPONENTBUILDER_TEMPLATES_BATCH_TIP="All changes will be applied to all selected Templates" COM_COMPONENTBUILDER_TEMPLATES_BATCH_USE="Templates Batch Use" -COM_COMPONENTBUILDER_TEMPLATES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch templates" +COM_COMPONENTBUILDER_TEMPLATES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch templates" COM_COMPONENTBUILDER_TEMPLATES_CREATE="Templates Create" COM_COMPONENTBUILDER_TEMPLATES_CREATE_DESC="Allows the users in this group to create create templates" COM_COMPONENTBUILDER_TEMPLATES_DASHBOARD_ADD="Templates Dashboard Add" @@ -8558,7 +8574,7 @@ COM_COMPONENTBUILDER_TEMPLATES_EDIT_OWN_DESC="Allows the users in this group to COM_COMPONENTBUILDER_TEMPLATES_EDIT_STATE="Templates Edit State" COM_COMPONENTBUILDER_TEMPLATES_EDIT_STATE_DESC="Allows the users in this group to update the state of the template" COM_COMPONENTBUILDER_TEMPLATES_EDIT_VERSION="Templates Edit Version" -COM_COMPONENTBUILDER_TEMPLATES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version templates" +COM_COMPONENTBUILDER_TEMPLATES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version templates" COM_COMPONENTBUILDER_TEMPLATES_EXPORT="Templates Export" COM_COMPONENTBUILDER_TEMPLATES_EXPORT_DESC="Allows the users in this group to export export templates" COM_COMPONENTBUILDER_TEMPLATES_IMPORT="Templates Import" @@ -8701,23 +8717,28 @@ COM_COMPONENTBUILDER_THE_FILE_PATH_BSB_DOES_NOT_EXIST_AND_WAS_NOT_ADDED="The fil COM_COMPONENTBUILDER_THE_FOLDER_PATH_BSB_DOES_NOT_EXIST_AND_WAS_NOT_ADDED="The folder path: %s does not exist, and was not added!" COM_COMPONENTBUILDER_THE_FTP_CONNECTION_FOR_BSB_COULD_NOT_BE_MADE_PLEASE_CHECK_YOUR_SIGNATURE_DETAILS="The FTP connection for %s could not be made. Please check your signature details!" COM_COMPONENTBUILDER_THE_FTP_SIGNATURE_FOR_BSB_WAS_NOT_WELL_FORMED_PLEASE_CHECK_YOUR_SIGNATURE_DETAILS="The FTP signature for %s was not well formed, please check your signature details!" +COM_COMPONENTBUILDER_THE_INITIALIZATION_OF_THIS_POWERS_HAS_FAILED="The initialization of this powers has failed." COM_COMPONENTBUILDER_THE_KEY_OF_THIS_PACKAGE="The key of this package." COM_COMPONENTBUILDER_THE_LIBRARY_CONFIG_FIELDS="The library config fields" COM_COMPONENTBUILDER_THE_LIBRARY_FILES_FOLDERS_URLS="The library files, folders & URLs" +COM_COMPONENTBUILDER_THE_LOCAL_DATABASE_POWERS_HAS_SUCCESSFULLY_BEEN_SYNCED_WITH_THE_REMOTE_REPOSITORIES="The local database powers has successfully been synced with the remote repositories." COM_COMPONENTBUILDER_THE_LOGIN_TO_BSB_HAS_FAILED_PLEASE_CHECK_THAT_YOUR_DETAILS_ARE_CORRECT="The login to %s has failed, please check that your details are correct!" COM_COMPONENTBUILDER_THE_MODULE_FILES_FOLDERS="The module files & folders" COM_COMPONENTBUILDER_THE_MODULE_UPDATES="The module updates" COM_COMPONENTBUILDER_THE_NAME_OF_THIS_LIBRARY_BSB_CAN_NOT_BE_CHANGED_TO_BSB_OR_THINGS_WILL_BREAK="The name of this library (%s) can not be changed to %s or things will break." COM_COMPONENTBUILDER_THE_NOTICE_BOARD_IS_LOADING="The notice board is loading" +COM_COMPONENTBUILDER_THE_OPTION_TO_ADD_A_DYNAMIC_BUTTON_IS_NOT_AVAILABLE_IN_BOWN_CUSTOM_FIELD_TYPESB_YOU_WILL_HAVE_TO_CUSTOM_CODE_IT="The option to add a dynamic button is not available in own custom field types, you will have to custom code it." COM_COMPONENTBUILDER_THE_PACKAGE_KEY_IS_CODESCODE="The package key is: %s" COM_COMPONENTBUILDER_THE_PACKAGE_KEY_IS_S="The package key is: %s" COM_COMPONENTBUILDER_THE_PLUGIN_FILES_FOLDERS="The plugin files & folders" COM_COMPONENTBUILDER_THE_PLUGIN_UPDATES="The plugin updates" +COM_COMPONENTBUILDER_THE_POWER_HAS_SUCCESSFULLY_BEEN_RESET="The power has successfully been reset." COM_COMPONENTBUILDER_THE_PRIVATE_KEY_FIELD_COULD_NOT_BE_LOADED_FOR_BSB_SERVER="The private key field could not be loaded for %s server!" COM_COMPONENTBUILDER_THE_PRIVATE_KEY_FILE_COULD_NOT_BE_LOADEDFOUND_FOR_BSB_SERVER="The private key file could not be loaded/found for %s server!" COM_COMPONENTBUILDER_THE_PRO_BOARD_IS_LOADING="The pro board is loading" COM_COMPONENTBUILDER_THE_README_IS_LOADING="The readme is loading" COM_COMPONENTBUILDER_THE_REPLACE_PROCESS_HAD_AN_ERROR_WITH_TABLE="The replace process had an error with table" +COM_COMPONENTBUILDER_THE_RESET_OF_THIS_POWER_HAS_FAILED="The reset of this power has failed." COM_COMPONENTBUILDER_THE_SEARCH_FOR_THE_SNIPPETS_ARE_CASE_SENSITIVE_SO_IF_YOU_CHANGED_THE_LOCAL_BNAMESB_OF_EITHER_OR_THE_BSNIPPET_LIBRARY_OR_SNIPPET_TYPESB_IN_ANY_SMALL_WAY_THE_SYSTEM_WILL_NOT_BE_ABLE_TO_CONNECT_YOUR_LOCAL_SNIPPETS_WITH_THOSE_IN_THE_COMMUNITY_REPOSITORY_SO_WE_STRONGLY_ADVICE_TO_BKEEP_TO_THE_COMMUNITY_NAMINGB_TO_AVOID_MISMATCHING_THAT_WILL_IN_TURN_CAUSE_DUPLICATION_SO_IF_YOU_CHANGED_ANY_NAMES_JUST_CHANGE_THEM_BACK_AND_ALL_WILL_AGAIN_WORK_AS_EXPECTED="The search for the snippets are case sensitive so if you changed the local names of either or the snippet, library or snippet types in any small way, the system will not be able to connect your local snippets with those in the community repository. So we strongly advice to keep to the community naming to avoid mismatching, that will in turn cause duplication. So if you changed any names, just change them back and all will again work as expected." COM_COMPONENTBUILDER_THE_SEARCH_PROCESS_HAD_AN_ERROR_WITH_TABLE="The search process had an error with table" COM_COMPONENTBUILDER_THE_SERVER_DETAILS_FOR_BID_SB_COULD_NOT_BE_RETRIEVED="The server details for (ID: %s) could not be retrieved!" @@ -8727,18 +8748,16 @@ COM_COMPONENTBUILDER_THE_URL_S_SET_TO_RETRIEVE_THE_PACKAGES_DID_NOT_RETURN_S_DAT COM_COMPONENTBUILDER_THE_URL_S_SET_TO_RETRIEVE_THE_PACKAGES_DID_NOT_RETURN_VALID_DATA="The url (%s) set to retrieve the packages did not return valid data!" COM_COMPONENTBUILDER_THE_URL_S_SET_TO_RETRIEVE_THE_PACKAGES_DOES_NOT_EXIST="The url (%s) set to retrieve the packages does not exist!" COM_COMPONENTBUILDER_THE_URL_S_SET_TO_RETRIEVE_THE_PACKAGES_DOES_NOT_RETURN_ANY_DATA="The url (%s) set to retrieve the packages does not return any data!" -COM_COMPONENTBUILDER_THE_WIKI_CAN_ONLY_BE_LOADED_WHEN_YOUR_JCB_SYSTEM_HAS_INTERNET_CONNECTION="The wiki can only be loaded when your JCB system has internet connection." +COM_COMPONENTBUILDER_THE_WIKI_CAN_ONLY_BE_LOADED_WHEN_YOUR_JOOMLA_COMPONENT_BUILDER_SYSTEM_HAS_INTERNET_CONNECTION="The wiki can only be loaded when your Joomla Component Builder system has internet connection." COM_COMPONENTBUILDER_THE_WIKI_IS_LOADING="The wiki is loading" COM_COMPONENTBUILDER_THIS_ADDS_POWERS_TO_A_LOCAL_REPOSITORY_FOLDER_ALL_BAPPROVEDB_POWERS_LINKED_TO_THIS_COMPONENT_WILL_BE_MOVED_TO_YOUR_BLOCALB_POWERS_REPOSITORY_FOLDER_INTO_THEIR_SELECTIVE_TARGET_PATHS_THIS_LOCAL_FOLDER_PATH_MUST_BE_SET_IN_THE_GLOBAL_OPTIONS_OF_JCB_UNDER_THE_BSUPER_POWERB_TAB="This adds powers to a local repository folder. All approved powers, linked to this component, will be moved to your local powers repository folder into their selective target paths. This local folder path must be set in the global options of JCB under the super power tab." COM_COMPONENTBUILDER_THIS_BSB_IS_NOT_LINKED_TO_ANY_OTHER_AREAS_OF_JCB_AT_THIS_TIME="This %s is not linked to any other areas of JCB at this time!" COM_COMPONENTBUILDER_THIS_CAN_NOT_BE_UNDONE_ARE_YOU_SURE_YOU_WANT_TO_CONTINUE="This can not be undone, are you sure you want to continue?" COM_COMPONENTBUILDER_THIS_CAN_NOT_BE_UNDONE_BYOU_HAVE_BEEN_WARNEDB="This can not be undone, you have been warned!" -COM_COMPONENTBUILDER_THIS_INIT_FEATURE_IS_STILL_UNDER_DEVELOPMENT="This (init) feature is still under development!" COM_COMPONENTBUILDER_THIS_MAY_TAKE_A_WHILE_DEPENDING_ON_THE_SIZE_OF_YOUR_PROJECT="This may take a while depending on the size of your project." COM_COMPONENTBUILDER_THIS_PACKAGE_BPASSEDB_THE_CHECKSUM_VALIDATIONBR_BR_SMALLMANUALLY_ALSO_VALIDATE_THAT_THE_CORRECT_CHECKSUM_WAS_USEDSMALLBR_THIS_CHECKSUM_BSB_MUST_BE_THE_SAME_AS_THE_ONE_FOUND_A_S_SA="This package PASSED the checksum validation!

Manually also validate that the correct checksum was used.
This checksum: %s must be the same as the one found @ " COM_COMPONENTBUILDER_THIS_PACKAGE_HAS_NO_KEY="This package has no key." COM_COMPONENTBUILDER_THIS_RESET_FEATURE_IS_STILL_UNDER_DEVELOPMENT="This (reset) feature is still under development!" -COM_COMPONENTBUILDER_THIS_SYNC_FEATURE_IS_STILL_UNDER_DEVELOPMENT="This (sync) feature is still under development!" COM_COMPONENTBUILDER_TITLE="Title" COM_COMPONENTBUILDER_TO_ADD_SIMPLY_COPY_AND_PAST_THE_SNIPPET_INTO_YOUR_CODE="To add simply copy and past the snippet into your code." COM_COMPONENTBUILDER_TO_ADD_VALIDATION_TO_A_FIELD_IF_VALIDATION_IS_NOT_PART_OF_FIELD_TYPE_PROPERTIES_LOADED_ABOVE_SO_IF_YOU_HAVE_VALIDATION_SET_AS_A_FIELD_PROPERTY_THIS_EXTRA_PROPERTY_WILL_NOT_BE_NEEDED="To add validation to a field if validation is not part of field type properties loaded above. So if you have validation set as a field property this extra property will not be needed." @@ -8832,7 +8851,7 @@ COM_COMPONENTBUILDER_VALIDATION_RULES_ACCESS_DESC="Allows the users in this grou COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_OPTIONS="Batch process the selected Validation Rules" COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_TIP="All changes will be applied to all selected Validation Rules" COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_USE="Validation Rules Batch Use" -COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch validation rules" +COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch validation rules" COM_COMPONENTBUILDER_VALIDATION_RULES_CREATE="Validation Rules Create" COM_COMPONENTBUILDER_VALIDATION_RULES_CREATE_DESC="Allows the users in this group to create create validation rules" COM_COMPONENTBUILDER_VALIDATION_RULES_DASHBOARD_LIST="Validation Rules Dashboard List" @@ -8846,7 +8865,7 @@ COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_OWN_DESC="Allows the users in this gr COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_STATE="Validation Rules Edit State" COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_STATE_DESC="Allows the users in this group to update the state of the validation rule" COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_VERSION="Validation Rules Edit Version" -COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version validation rules" +COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version validation rules" COM_COMPONENTBUILDER_VALIDATION_RULES_EXPORT="Validation Rules Export" COM_COMPONENTBUILDER_VALIDATION_RULES_EXPORT_DESC="Allows the users in this group to export export validation rules" COM_COMPONENTBUILDER_VALIDATION_RULES_IMPORT="Validation Rules Import" @@ -8957,10 +8976,12 @@ COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_ACCESS_THE_SERVER_DETAILS_BS_ COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_CLONE_A_COMPONENT_PLEASE_CONTACT_YOUR_SYSTEM_ADMINISTRATOR_FOR_MORE_HELP="You do not have permission to clone a component, please contact your system administrator for more help." COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_DOWNLOAD_THE_COMPILER_ANIMATIONS="You do not have permission to download the compiler animations!" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_IMPORT_A_COMPONENT_PLEASE_CONTACT_YOUR_SYSTEM_ADMINISTRATOR_FOR_MORE_HELP="You do not have permission to import a component, please contact your system administrator for more help." +COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_INITIALIZE_POWERS="You do not have permission to initialize powers" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_INSTALL_THESE_EXTENSIONS="You do not have permission to install these extensions!" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_INSTALL_THE_COMPONENT="You do not have permission to install the component!" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_INSTALL_THE_MODULE="You do not have permission to install the module!" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_INSTALL_THE_PLUGIN="You do not have permission to install the plugin!" +COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RESET_THIS_POWER="You do not have permission to reset this power" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_EXPANSION_MODULE="You do not have permission to run the expansion module!" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_GET_BOILERPLATE_MODULE="You do not have permission to run the get boilerplate module!" COM_COMPONENTBUILDER_YOU_DO_NOT_HAVE_PERMISSION_TO_RUN_THE_TRANSLATOR_MODULE="You do not have permission to run the translator module!" @@ -8970,6 +8991,7 @@ COM_COMPONENTBUILDER_YOU_HAVE_S_S_ADDING_MORE_THEN_S_S_IS_CONSIDERED_BAD_PRACTIC COM_COMPONENTBUILDER_YOU_MUST_ADD_AN_UNIQUE_FUNCTION_NAME="You must add an unique function name." COM_COMPONENTBUILDER_YOU_MUST_ADD_AN_UNIQUE_PLACEHOLDER="You must add an unique placeholder." COM_COMPONENTBUILDER_YOU_MUST_ADD_AN_UNIQUE_VALIDATION_RULE_NAME="You must add an unique validation rule name." +COM_COMPONENTBUILDER_YOU_MUST_ENABLE_THE_BTIDYB_EXTENSION_IN_YOUR_PHPINI_FILE_SO_WE_CAN_TIDY_UP_YOUR_XML_IF_YOU_NEED_HELP_PLEASE_A_SSTART_HEREA="You must enable the Tidy extension in your php.ini file so we can tidy up your xml! If you need help please start here!" COM_COMPONENTBUILDER_YOU_MUST_FIRST_LINK_AN_ADMIN_OR_A_CUSTOM_ADMIN_VIEW_TO_THIS_COMPONENT_THEN_YOU_CAN_SELECT_IT_HERE="You must first link an admin or a custom admin view to this component, then you can select it here" COM_COMPONENTBUILDER_YOU_MUST_FIRST_SAVE_THE_POWER_BEFORE_YOU_CAN_USE_THIS_FEATURE="You must first save the power, before you can use this feature." COM_COMPONENTBUILDER_YOU_MUST_SELECT_A_COMPONENT="You must select a component!" diff --git a/admin/language/en-GB/en-GB.com_componentbuilder.sys.ini b/admin/language/en-GB/en-GB.com_componentbuilder.sys.ini index d846592bc..b1d0e533b 100644 --- a/admin/language/en-GB/en-GB.com_componentbuilder.sys.ini +++ b/admin/language/en-GB/en-GB.com_componentbuilder.sys.ini @@ -2,7 +2,7 @@ COM_COMPONENTBUILDER="Component Builder" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_ACCESS="Admins Custom Tabs Access" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_ACCESS_DESC="Allows the users in this group to access access admins custom tabs" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_USE="Admins Custom Tabs Batch Use" -COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch admins custom tabs" +COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch admins custom tabs" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_CREATE="Admins Custom Tabs Create" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_CREATE_DESC="Allows the users in this group to create create admins custom tabs" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_DELETE="Admins Custom Tabs Delete" @@ -18,15 +18,15 @@ COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_OWN_DESC="Allows the users in this COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_STATE="Admins Custom Tabs Edit State" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_STATE_DESC="Allows the users in this group to update the state of the admin custom tabs" COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_VERSION="Admins Custom Tabs Edit Version" -COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version admins custom tabs" +COM_COMPONENTBUILDER_ADMINS_CUSTOM_TABS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version admins custom tabs" COM_COMPONENTBUILDER_ADMINS_FIELDS_ACCESS="Admins Fields Access" COM_COMPONENTBUILDER_ADMINS_FIELDS_ACCESS_DESC="Allows the users in this group to access access admins fields" COM_COMPONENTBUILDER_ADMINS_FIELDS_BATCH_USE="Admins Fields Batch Use" -COM_COMPONENTBUILDER_ADMINS_FIELDS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch admins fields" +COM_COMPONENTBUILDER_ADMINS_FIELDS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch admins fields" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_ACCESS="Admins Fields Conditions Access" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_ACCESS_DESC="Allows the users in this group to access access admins fields conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_BATCH_USE="Admins Fields Conditions Batch Use" -COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch admins fields conditions" +COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch admins fields conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_CREATE="Admins Fields Conditions Create" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_CREATE_DESC="Allows the users in this group to create create admins fields conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_DELETE="Admins Fields Conditions Delete" @@ -42,7 +42,7 @@ COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_OWN_DESC="Allows the users in COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_STATE="Admins Fields Conditions Edit State" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_STATE_DESC="Allows the users in this group to update the state of the admin fields conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_VERSION="Admins Fields Conditions Edit Version" -COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version admins fields conditions" +COM_COMPONENTBUILDER_ADMINS_FIELDS_CONDITIONS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version admins fields conditions" COM_COMPONENTBUILDER_ADMINS_FIELDS_CREATE="Admins Fields Create" COM_COMPONENTBUILDER_ADMINS_FIELDS_CREATE_DESC="Allows the users in this group to create create admins fields" COM_COMPONENTBUILDER_ADMINS_FIELDS_DELETE="Admins Fields Delete" @@ -58,11 +58,11 @@ COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_STATE="Admins Fields Edit State" COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_STATE_DESC="Allows the users in this group to update the state of the admin fields" COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_VERSION="Admins Fields Edit Version" -COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version admins fields" +COM_COMPONENTBUILDER_ADMINS_FIELDS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version admins fields" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_ACCESS="Admins Fields Relations Access" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_ACCESS_DESC="Allows the users in this group to access access admins fields relations" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_BATCH_USE="Admins Fields Relations Batch Use" -COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch admins fields relations" +COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch admins fields relations" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_CREATE="Admins Fields Relations Create" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_CREATE_DESC="Allows the users in this group to create create admins fields relations" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_DELETE="Admins Fields Relations Delete" @@ -78,11 +78,11 @@ COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_OWN_DESC="Allows the users in COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_STATE="Admins Fields Relations Edit State" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_STATE_DESC="Allows the users in this group to update the state of the admin fields relations" COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_VERSION="Admins Fields Relations Edit Version" -COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version admins fields relations" +COM_COMPONENTBUILDER_ADMINS_FIELDS_RELATIONS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version admins fields relations" COM_COMPONENTBUILDER_ADMIN_VIEWS_ACCESS="Admin Views Access" COM_COMPONENTBUILDER_ADMIN_VIEWS_ACCESS_DESC="Allows the users in this group to access access admin views" COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_USE="Admin Views Batch Use" -COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch admin views" +COM_COMPONENTBUILDER_ADMIN_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch admin views" COM_COMPONENTBUILDER_ADMIN_VIEWS_CREATE="Admin Views Create" COM_COMPONENTBUILDER_ADMIN_VIEWS_CREATE_DESC="Allows the users in this group to create create admin views" COM_COMPONENTBUILDER_ADMIN_VIEWS_DASHBOARD_LIST="Admin Views Dashboard List" @@ -100,7 +100,7 @@ COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_OWN_DESC="Allows the users in this group t COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_STATE="Admin Views Edit State" COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the admin view" COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_VERSION="Admin Views Edit Version" -COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version admin views" +COM_COMPONENTBUILDER_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version admin views" COM_COMPONENTBUILDER_ADMIN_VIEWS_EXPORT="Admin Views Export" COM_COMPONENTBUILDER_ADMIN_VIEWS_EXPORT_DESC="Allows the users in this group to export export admin views" COM_COMPONENTBUILDER_ADMIN_VIEWS_IMPORT="Admin Views Import" @@ -112,7 +112,7 @@ COM_COMPONENTBUILDER_ADMIN_VIEW_RUN_EXPANSION_BUTTON_ACCESS_DESC="Allows the use COM_COMPONENTBUILDER_CLASS_EXTENDINGS_ACCESS="Class Extendings Access" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_ACCESS_DESC="Allows the users in this group to access access class extendings" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_BATCH_USE="Class Extendings Batch Use" -COM_COMPONENTBUILDER_CLASS_EXTENDINGS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch class extendings" +COM_COMPONENTBUILDER_CLASS_EXTENDINGS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch class extendings" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_CREATE="Class Extendings Create" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_CREATE_DESC="Allows the users in this group to create create class extendings" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_DELETE="Class Extendings Delete" @@ -128,11 +128,11 @@ COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_OWN_DESC="Allows the users in this gr COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_STATE="Class Extendings Edit State" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_STATE_DESC="Allows the users in this group to update the state of the class extends" COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_VERSION="Class Extendings Edit Version" -COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version class extendings" +COM_COMPONENTBUILDER_CLASS_EXTENDINGS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version class extendings" COM_COMPONENTBUILDER_CLASS_METHODS_ACCESS="Class Methods Access" COM_COMPONENTBUILDER_CLASS_METHODS_ACCESS_DESC="Allows the users in this group to access access class methods" COM_COMPONENTBUILDER_CLASS_METHODS_BATCH_USE="Class Methods Batch Use" -COM_COMPONENTBUILDER_CLASS_METHODS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch class methods" +COM_COMPONENTBUILDER_CLASS_METHODS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch class methods" COM_COMPONENTBUILDER_CLASS_METHODS_CREATE="Class Methods Create" COM_COMPONENTBUILDER_CLASS_METHODS_CREATE_DESC="Allows the users in this group to create create class methods" COM_COMPONENTBUILDER_CLASS_METHODS_DELETE="Class Methods Delete" @@ -148,7 +148,7 @@ COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_STATE="Class Methods Edit State" COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_STATE_DESC="Allows the users in this group to update the state of the class method" COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_VERSION="Class Methods Edit Version" -COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version class methods" +COM_COMPONENTBUILDER_CLASS_METHODS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version class methods" COM_COMPONENTBUILDER_CLASS_METHODS_EXPORT="Class Methods Export" COM_COMPONENTBUILDER_CLASS_METHODS_EXPORT_DESC="Allows the users in this group to export export class methods" COM_COMPONENTBUILDER_CLASS_METHODS_IMPORT="Class Methods Import" @@ -156,7 +156,7 @@ COM_COMPONENTBUILDER_CLASS_METHODS_IMPORT_DESC="Allows the users in this group t COM_COMPONENTBUILDER_CLASS_PROPERTIES_ACCESS="Class Properties Access" COM_COMPONENTBUILDER_CLASS_PROPERTIES_ACCESS_DESC="Allows the users in this group to access access class properties" COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_USE="Class Properties Batch Use" -COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch class properties" +COM_COMPONENTBUILDER_CLASS_PROPERTIES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch class properties" COM_COMPONENTBUILDER_CLASS_PROPERTIES_CREATE="Class Properties Create" COM_COMPONENTBUILDER_CLASS_PROPERTIES_CREATE_DESC="Allows the users in this group to create create class properties" COM_COMPONENTBUILDER_CLASS_PROPERTIES_DELETE="Class Properties Delete" @@ -172,7 +172,7 @@ COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_OWN_DESC="Allows the users in this gr COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_STATE="Class Properties Edit State" COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_STATE_DESC="Allows the users in this group to update the state of the class property" COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_VERSION="Class Properties Edit Version" -COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version class properties" +COM_COMPONENTBUILDER_CLASS_PROPERTIES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version class properties" COM_COMPONENTBUILDER_CLASS_PROPERTIES_EXPORT="Class Properties Export" COM_COMPONENTBUILDER_CLASS_PROPERTIES_EXPORT_DESC="Allows the users in this group to export export class properties" COM_COMPONENTBUILDER_CLASS_PROPERTIES_IMPORT="Class Properties Import" @@ -194,7 +194,7 @@ COM_COMPONENTBUILDER_COMPILER_TRANSLATE_BUTTON_ACCESS_DESC="Allows the users in COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_ACCESS="Components Admin Views Access" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_ACCESS_DESC="Allows the users in this group to access access components admin views" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_USE="Components Admin Views Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components admin views" +COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components admin views" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_CREATE="Components Admin Views Create" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_CREATE_DESC="Allows the users in this group to create create components admin views" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_DELETE="Components Admin Views Delete" @@ -210,11 +210,11 @@ COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_OWN_DESC="Allows the users in t COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_STATE="Components Admin Views Edit State" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component admin views" COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_VERSION="Components Admin Views Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components admin views" +COM_COMPONENTBUILDER_COMPONENTS_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components admin views" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_ACCESS="Components Config Access" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_ACCESS_DESC="Allows the users in this group to access access components config" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_BATCH_USE="Components Config Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_CONFIG_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components config" +COM_COMPONENTBUILDER_COMPONENTS_CONFIG_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components config" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_CREATE="Components Config Create" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_CREATE_DESC="Allows the users in this group to create create components config" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_DELETE="Components Config Delete" @@ -230,11 +230,11 @@ COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_OWN_DESC="Allows the users in this g COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_STATE="Components Config Edit State" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_STATE_DESC="Allows the users in this group to update the state of the component config" COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_VERSION="Components Config Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components config" +COM_COMPONENTBUILDER_COMPONENTS_CONFIG_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components config" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_ACCESS="Components Custom Admin Menus Access" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_ACCESS_DESC="Allows the users in this group to access access components custom admin menus" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_BATCH_USE="Components Custom Admin Menus Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components custom admin menus" +COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components custom admin menus" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_CREATE="Components Custom Admin Menus Create" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_CREATE_DESC="Allows the users in this group to create create components custom admin menus" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_DELETE="Components Custom Admin Menus Delete" @@ -250,11 +250,11 @@ COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_OWN_DESC="Allows the use COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_STATE="Components Custom Admin Menus Edit State" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component custom admin menus" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION="Components Custom Admin Menus Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components custom admin menus" +COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_MENUS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components custom admin menus" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_ACCESS="Components Custom Admin Views Access" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_ACCESS_DESC="Allows the users in this group to access access components custom admin views" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_BATCH_USE="Components Custom Admin Views Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components custom admin views" +COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components custom admin views" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_CREATE="Components Custom Admin Views Create" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_CREATE_DESC="Allows the users in this group to create create components custom admin views" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_DELETE="Components Custom Admin Views Delete" @@ -270,11 +270,11 @@ COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_OWN_DESC="Allows the use COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_STATE="Components Custom Admin Views Edit State" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component custom admin views" COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_VERSION="Components Custom Admin Views Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components custom admin views" +COM_COMPONENTBUILDER_COMPONENTS_CUSTOM_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components custom admin views" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_ACCESS="Components Dashboard Access" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_ACCESS_DESC="Allows the users in this group to access access components dashboard" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_BATCH_USE="Components Dashboard Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components dashboard" +COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components dashboard" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_CREATE="Components Dashboard Create" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_CREATE_DESC="Allows the users in this group to create create components dashboard" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_DELETE="Components Dashboard Delete" @@ -290,11 +290,11 @@ COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_OWN_DESC="Allows the users in thi COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_STATE="Components Dashboard Edit State" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_STATE_DESC="Allows the users in this group to update the state of the component dashboard" COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_VERSION="Components Dashboard Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components dashboard" +COM_COMPONENTBUILDER_COMPONENTS_DASHBOARD_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components dashboard" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_ACCESS="Components Files Folders Access" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_ACCESS_DESC="Allows the users in this group to access access components files folders" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_BATCH_USE="Components Files Folders Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components files folders" +COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components files folders" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_CREATE="Components Files Folders Create" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_CREATE_DESC="Allows the users in this group to create create components files folders" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_DELETE="Components Files Folders Delete" @@ -310,11 +310,11 @@ COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_OWN_DESC="Allows the users in COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_STATE="Components Files Folders Edit State" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component files folders" COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_VERSION="Components Files Folders Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components files folders" +COM_COMPONENTBUILDER_COMPONENTS_FILES_FOLDERS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components files folders" COM_COMPONENTBUILDER_COMPONENTS_MODULES_ACCESS="Components Modules Access" COM_COMPONENTBUILDER_COMPONENTS_MODULES_ACCESS_DESC="Allows the users in this group to access access components modules" COM_COMPONENTBUILDER_COMPONENTS_MODULES_BATCH_USE="Components Modules Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_MODULES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components modules" +COM_COMPONENTBUILDER_COMPONENTS_MODULES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components modules" COM_COMPONENTBUILDER_COMPONENTS_MODULES_CREATE="Components Modules Create" COM_COMPONENTBUILDER_COMPONENTS_MODULES_CREATE_DESC="Allows the users in this group to create create components modules" COM_COMPONENTBUILDER_COMPONENTS_MODULES_DELETE="Components Modules Delete" @@ -330,11 +330,11 @@ COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_OWN_DESC="Allows the users in this COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_STATE="Components Modules Edit State" COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_STATE_DESC="Allows the users in this group to update the state of the component modules" COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_VERSION="Components Modules Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components modules" +COM_COMPONENTBUILDER_COMPONENTS_MODULES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components modules" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_ACCESS="Components Mysql Tweaks Access" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_ACCESS_DESC="Allows the users in this group to access access components mysql tweaks" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_BATCH_USE="Components Mysql Tweaks Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components mysql tweaks" +COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components mysql tweaks" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_CREATE="Components Mysql Tweaks Create" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_CREATE_DESC="Allows the users in this group to create create components mysql tweaks" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_DELETE="Components Mysql Tweaks Delete" @@ -350,11 +350,11 @@ COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_OWN_DESC="Allows the users in COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_STATE="Components Mysql Tweaks Edit State" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component mysql tweaks" COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_VERSION="Components Mysql Tweaks Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components mysql tweaks" +COM_COMPONENTBUILDER_COMPONENTS_MYSQL_TWEAKS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components mysql tweaks" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_ACCESS="Components Placeholders Access" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_ACCESS_DESC="Allows the users in this group to access access components placeholders" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_BATCH_USE="Components Placeholders Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components placeholders" +COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components placeholders" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_CREATE="Components Placeholders Create" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_CREATE_DESC="Allows the users in this group to create create components placeholders" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_DELETE="Components Placeholders Delete" @@ -370,11 +370,11 @@ COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_OWN_DESC="Allows the users in COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_STATE="Components Placeholders Edit State" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component placeholders" COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_VERSION="Components Placeholders Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components placeholders" +COM_COMPONENTBUILDER_COMPONENTS_PLACEHOLDERS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components placeholders" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_ACCESS="Components Plugins Access" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_ACCESS_DESC="Allows the users in this group to access access components plugins" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_BATCH_USE="Components Plugins Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components plugins" +COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components plugins" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_CREATE="Components Plugins Create" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_CREATE_DESC="Allows the users in this group to create create components plugins" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_DELETE="Components Plugins Delete" @@ -390,11 +390,11 @@ COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_OWN_DESC="Allows the users in this COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_STATE="Components Plugins Edit State" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component plugins" COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION="Components Plugins Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components plugins" +COM_COMPONENTBUILDER_COMPONENTS_PLUGINS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components plugins" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_ACCESS="Components Site Views Access" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_ACCESS_DESC="Allows the users in this group to access access components site views" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE="Components Site Views Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components site views" +COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components site views" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_CREATE="Components Site Views Create" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_CREATE_DESC="Allows the users in this group to create create components site views" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_DELETE="Components Site Views Delete" @@ -410,11 +410,11 @@ COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_OWN_DESC="Allows the users in th COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_STATE="Components Site Views Edit State" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the component site views" COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_VERSION="Components Site Views Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components site views" +COM_COMPONENTBUILDER_COMPONENTS_SITE_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components site views" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_ACCESS="Components Updates Access" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_ACCESS_DESC="Allows the users in this group to access access components updates" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_BATCH_USE="Components Updates Batch Use" -COM_COMPONENTBUILDER_COMPONENTS_UPDATES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch components updates" +COM_COMPONENTBUILDER_COMPONENTS_UPDATES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch components updates" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_CREATE="Components Updates Create" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_CREATE_DESC="Allows the users in this group to create create components updates" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_DELETE="Components Updates Delete" @@ -430,12 +430,12 @@ COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_OWN_DESC="Allows the users in this COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_STATE="Components Updates Edit State" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_STATE_DESC="Allows the users in this group to update the state of the component updates" COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_VERSION="Components Updates Edit Version" -COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version components updates" +COM_COMPONENTBUILDER_COMPONENTS_UPDATES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version components updates" COM_COMPONENTBUILDER_CONFIGURATION="Component Builder Configuration" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_ACCESS="Custom Admin Views Access" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_ACCESS_DESC="Allows the users in this group to access access custom admin views" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_USE="Custom Admin Views Batch Use" -COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch custom admin views" +COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch custom admin views" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_CREATE="Custom Admin Views Create" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_CREATE_DESC="Allows the users in this group to create create custom admin views" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_DASHBOARD_LIST="Custom Admin Views Dashboard List" @@ -449,7 +449,7 @@ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_OWN_DESC="Allows the users in this COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_STATE="Custom Admin Views Edit State" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the custom admin view" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_VERSION="Custom Admin Views Edit Version" -COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version custom admin views" +COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version custom admin views" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EXPORT="Custom Admin Views Export" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_EXPORT_DESC="Allows the users in this group to export export custom admin views" COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEWS_IMPORT="Custom Admin Views Import" @@ -461,7 +461,7 @@ COM_COMPONENTBUILDER_CUSTOM_ADMIN_VIEW_GET_SNIPPETS_BUTTON_ACCESS_DESC="Allows t COM_COMPONENTBUILDER_CUSTOM_CODES_ACCESS="Custom Codes Access" COM_COMPONENTBUILDER_CUSTOM_CODES_ACCESS_DESC="Allows the users in this group to access access custom codes" COM_COMPONENTBUILDER_CUSTOM_CODES_BATCH_USE="Custom Codes Batch Use" -COM_COMPONENTBUILDER_CUSTOM_CODES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch custom codes" +COM_COMPONENTBUILDER_CUSTOM_CODES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch custom codes" COM_COMPONENTBUILDER_CUSTOM_CODES_CREATE="Custom Codes Create" COM_COMPONENTBUILDER_CUSTOM_CODES_CREATE_DESC="Allows the users in this group to create create custom codes" COM_COMPONENTBUILDER_CUSTOM_CODES_DASHBOARD_LIST="Custom Codes Dashboard List" @@ -479,7 +479,7 @@ COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_STATE="Custom Codes Edit State" COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_STATE_DESC="Allows the users in this group to update the state of the custom code" COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_VERSION="Custom Codes Edit Version" -COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version custom codes" +COM_COMPONENTBUILDER_CUSTOM_CODES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version custom codes" COM_COMPONENTBUILDER_CUSTOM_CODES_EXPORT="Custom Codes Export" COM_COMPONENTBUILDER_CUSTOM_CODES_EXPORT_DESC="Allows the users in this group to export export custom codes" COM_COMPONENTBUILDER_CUSTOM_CODES_IMPORT="Custom Codes Import" @@ -491,7 +491,7 @@ COM_COMPONENTBUILDER_CUSTOM_CODE_RUN_EXPANSION_BUTTON_ACCESS_DESC="Allows the us COM_COMPONENTBUILDER_DYNAMIC_GETS_ACCESS="Dynamic Gets Access" COM_COMPONENTBUILDER_DYNAMIC_GETS_ACCESS_DESC="Allows the users in this group to access access dynamic gets" COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_USE="Dynamic Gets Batch Use" -COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch dynamic gets" +COM_COMPONENTBUILDER_DYNAMIC_GETS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch dynamic gets" COM_COMPONENTBUILDER_DYNAMIC_GETS_CREATE="Dynamic Gets Create" COM_COMPONENTBUILDER_DYNAMIC_GETS_CREATE_DESC="Allows the users in this group to create create dynamic gets" COM_COMPONENTBUILDER_DYNAMIC_GETS_DASHBOARD_ADD="Dynamic Gets Dashboard Add" @@ -507,7 +507,7 @@ COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_STATE="Dynamic Gets Edit State" COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_STATE_DESC="Allows the users in this group to update the state of the dynamic get" COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_VERSION="Dynamic Gets Edit Version" -COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version dynamic gets" +COM_COMPONENTBUILDER_DYNAMIC_GETS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version dynamic gets" COM_COMPONENTBUILDER_DYNAMIC_GETS_EXPORT="Dynamic Gets Export" COM_COMPONENTBUILDER_DYNAMIC_GETS_EXPORT_DESC="Allows the users in this group to export export dynamic gets" COM_COMPONENTBUILDER_DYNAMIC_GETS_IMPORT="Dynamic Gets Import" @@ -527,7 +527,7 @@ COM_COMPONENTBUILDER_EXPORT_DATA_DESC="Allows users in this group to export data COM_COMPONENTBUILDER_FIELDS_ACCESS="Fields Access" COM_COMPONENTBUILDER_FIELDS_ACCESS_DESC="Allows the users in this group to access access fields" COM_COMPONENTBUILDER_FIELDS_BATCH_USE="Fields Batch Use" -COM_COMPONENTBUILDER_FIELDS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch fields" +COM_COMPONENTBUILDER_FIELDS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch fields" COM_COMPONENTBUILDER_FIELDS_CREATE="Fields Create" COM_COMPONENTBUILDER_FIELDS_CREATE_DESC="Allows the users in this group to create create fields" COM_COMPONENTBUILDER_FIELDS_DASHBOARD_ADD="Fields Dashboard Add" @@ -543,7 +543,7 @@ COM_COMPONENTBUILDER_FIELDS_EDIT_OWN_DESC="Allows the users in this group to edi COM_COMPONENTBUILDER_FIELDS_EDIT_STATE="Fields Edit State" COM_COMPONENTBUILDER_FIELDS_EDIT_STATE_DESC="Allows the users in this group to update the state of the field" COM_COMPONENTBUILDER_FIELDS_EDIT_VERSION="Fields Edit Version" -COM_COMPONENTBUILDER_FIELDS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version fields" +COM_COMPONENTBUILDER_FIELDS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version fields" COM_COMPONENTBUILDER_FIELDS_EXPORT="Fields Export" COM_COMPONENTBUILDER_FIELDS_EXPORT_DESC="Allows the users in this group to export export fields" COM_COMPONENTBUILDER_FIELDS_IMPORT="Fields Import" @@ -553,7 +553,7 @@ COM_COMPONENTBUILDER_FIELDS_SUBMENU_DESC="Allows the users in this group to subm COM_COMPONENTBUILDER_FIELDTYPES_ACCESS="Fieldtypes Access" COM_COMPONENTBUILDER_FIELDTYPES_ACCESS_DESC="Allows the users in this group to access access fieldtypes" COM_COMPONENTBUILDER_FIELDTYPES_BATCH_USE="Fieldtypes Batch Use" -COM_COMPONENTBUILDER_FIELDTYPES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch fieldtypes" +COM_COMPONENTBUILDER_FIELDTYPES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch fieldtypes" COM_COMPONENTBUILDER_FIELDTYPES_CREATE="Fieldtypes Create" COM_COMPONENTBUILDER_FIELDTYPES_CREATE_DESC="Allows the users in this group to create create fieldtypes" COM_COMPONENTBUILDER_FIELDTYPES_DASHBOARD_LIST="Fieldtypes Dashboard List" @@ -567,7 +567,7 @@ COM_COMPONENTBUILDER_FIELDTYPES_EDIT_OWN_DESC="Allows the users in this group to COM_COMPONENTBUILDER_FIELDTYPES_EDIT_STATE="Fieldtypes Edit State" COM_COMPONENTBUILDER_FIELDTYPES_EDIT_STATE_DESC="Allows the users in this group to update the state of the fieldtype" COM_COMPONENTBUILDER_FIELDTYPES_EDIT_VERSION="Fieldtypes Edit Version" -COM_COMPONENTBUILDER_FIELDTYPES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version fieldtypes" +COM_COMPONENTBUILDER_FIELDTYPES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version fieldtypes" COM_COMPONENTBUILDER_FIELDTYPES_EXPORT="Fieldtypes Export" COM_COMPONENTBUILDER_FIELDTYPES_EXPORT_DESC="Allows the users in this group to export export fieldtypes" COM_COMPONENTBUILDER_FIELDTYPES_IMPORT="Fieldtypes Import" @@ -597,7 +597,7 @@ COM_COMPONENTBUILDER_GET_SNIPPETS_TEMPLATES_BUTTON_ACCESS_DESC="Allows the users COM_COMPONENTBUILDER_HELP_DOCUMENTS_ACCESS="Help Documents Access" COM_COMPONENTBUILDER_HELP_DOCUMENTS_ACCESS_DESC="Allows the users in this group to access access help documents" COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_USE="Help Documents Batch Use" -COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch help documents" +COM_COMPONENTBUILDER_HELP_DOCUMENTS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch help documents" COM_COMPONENTBUILDER_HELP_DOCUMENTS_CREATE="Help Documents Create" COM_COMPONENTBUILDER_HELP_DOCUMENTS_CREATE_DESC="Allows the users in this group to create create help documents" COM_COMPONENTBUILDER_HELP_DOCUMENTS_DASHBOARD_LIST="Help Documents Dashboard List" @@ -611,7 +611,7 @@ COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_OWN_DESC="Allows the users in this grou COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_STATE="Help Documents Edit State" COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_STATE_DESC="Allows the users in this group to update the state of the help document" COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_VERSION="Help Documents Edit Version" -COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version help documents" +COM_COMPONENTBUILDER_HELP_DOCUMENTS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version help documents" COM_COMPONENTBUILDER_HELP_DOCUMENTS_EXPORT="Help Documents Export" COM_COMPONENTBUILDER_HELP_DOCUMENTS_EXPORT_DESC="Allows the users in this group to export export help documents" COM_COMPONENTBUILDER_HELP_DOCUMENTS_IMPORT="Help Documents Import" @@ -623,7 +623,7 @@ COM_COMPONENTBUILDER_IMPORT_DATA_DESC="Allows users in this group to import data COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_ACCESS="Joomla Components Access" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_ACCESS_DESC="Allows the users in this group to access access joomla components" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_USE="Joomla Components Batch Use" -COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla components" +COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla components" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_CREATE="Joomla Components Create" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_CREATE_DESC="Allows the users in this group to create create joomla components" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_DASHBOARD_LIST="Joomla Components Dashboard List" @@ -641,7 +641,7 @@ COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_OWN_DESC="Allows the users in this g COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_STATE="Joomla Components Edit State" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla component" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_VERSION="Joomla Components Edit Version" -COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla components" +COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla components" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_SUBMENU="Joomla Components Submenu" COM_COMPONENTBUILDER_JOOMLA_COMPONENTS_SUBMENU_DESC="Allows the users in this group to submenu of joomla component" COM_COMPONENTBUILDER_JOOMLA_COMPONENT_BACKUP_BUTTON_ACCESS="Joomla Component Backup Button Access" @@ -659,7 +659,7 @@ COM_COMPONENTBUILDER_JOOMLA_COMPONENT_RUN_EXPANSION_BUTTON_ACCESS_DESC="Allows t COM_COMPONENTBUILDER_JOOMLA_MODULES_ACCESS="Joomla Modules Access" COM_COMPONENTBUILDER_JOOMLA_MODULES_ACCESS_DESC="Allows the users in this group to access access joomla modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_USE="Joomla Modules Batch Use" -COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla modules" +COM_COMPONENTBUILDER_JOOMLA_MODULES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_CREATE="Joomla Modules Create" COM_COMPONENTBUILDER_JOOMLA_MODULES_CREATE_DESC="Allows the users in this group to create create joomla modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_DASHBOARD_LIST="Joomla Modules Dashboard List" @@ -677,13 +677,13 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_OWN_DESC="Allows the users in this grou COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_STATE="Joomla Modules Edit State" COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla module" COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_VERSION="Joomla Modules Edit Version" -COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla modules" +COM_COMPONENTBUILDER_JOOMLA_MODULES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_EXPORT="Joomla Modules Export" COM_COMPONENTBUILDER_JOOMLA_MODULES_EXPORT_DESC="Allows the users in this group to export export joomla modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_ACCESS="Joomla Modules Files Folders Urls Access" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_ACCESS_DESC="Allows the users in this group to access access joomla modules files folders urls" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_USE="Joomla Modules Files Folders Urls Batch Use" -COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla modules files folders urls" +COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla modules files folders urls" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_CREATE="Joomla Modules Files Folders Urls Create" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_CREATE_DESC="Allows the users in this group to create create joomla modules files folders urls" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_DELETE="Joomla Modules Files Folders Urls Delete" @@ -699,7 +699,7 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_OWN_DESC="Allows the COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_STATE="Joomla Modules Files Folders Urls Edit State" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla module files folders urls" COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_VERSION="Joomla Modules Files Folders Urls Edit Version" -COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla modules files folders urls" +COM_COMPONENTBUILDER_JOOMLA_MODULES_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla modules files folders urls" COM_COMPONENTBUILDER_JOOMLA_MODULES_IMPORT="Joomla Modules Import" COM_COMPONENTBUILDER_JOOMLA_MODULES_IMPORT_DESC="Allows the users in this group to import import joomla modules" COM_COMPONENTBUILDER_JOOMLA_MODULES_SUBMENU="Joomla Modules Submenu" @@ -707,7 +707,7 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_SUBMENU_DESC="Allows the users in this group COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_ACCESS="Joomla Modules Updates Access" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_ACCESS_DESC="Allows the users in this group to access access joomla modules updates" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_USE="Joomla Modules Updates Batch Use" -COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla modules updates" +COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla modules updates" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_CREATE="Joomla Modules Updates Create" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_CREATE_DESC="Allows the users in this group to create create joomla modules updates" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_DELETE="Joomla Modules Updates Delete" @@ -723,7 +723,7 @@ COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_OWN_DESC="Allows the users in t COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_STATE="Joomla Modules Updates Edit State" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla module updates" COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_VERSION="Joomla Modules Updates Edit Version" -COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla modules updates" +COM_COMPONENTBUILDER_JOOMLA_MODULES_UPDATES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla modules updates" COM_COMPONENTBUILDER_JOOMLA_MODULE_GET_SNIPPETS_BUTTON_ACCESS="Joomla Module Get Snippets Button Access" COM_COMPONENTBUILDER_JOOMLA_MODULE_GET_SNIPPETS_BUTTON_ACCESS_DESC="Allows the users in this group to access the get snippets button." COM_COMPONENTBUILDER_JOOMLA_MODULE_RUN_EXPANSION_BUTTON_ACCESS="Joomla Module Run Expansion Button Access" @@ -731,7 +731,7 @@ COM_COMPONENTBUILDER_JOOMLA_MODULE_RUN_EXPANSION_BUTTON_ACCESS_DESC="Allows the COM_COMPONENTBUILDER_JOOMLA_PLUGINS_ACCESS="Joomla Plugins Access" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_ACCESS_DESC="Allows the users in this group to access access joomla plugins" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_USE="Joomla Plugins Batch Use" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla plugins" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla plugins" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_CREATE="Joomla Plugins Create" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_CREATE_DESC="Allows the users in this group to create create joomla plugins" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_DASHBOARD_LIST="Joomla Plugins Dashboard List" @@ -749,11 +749,11 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_OWN_DESC="Allows the users in this grou COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_STATE="Joomla Plugins Edit State" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla plugin" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_VERSION="Joomla Plugins Edit Version" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla plugins" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla plugins" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_ACCESS="Joomla Plugins Files Folders Urls Access" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_ACCESS_DESC="Allows the users in this group to access access joomla plugins files folders urls" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_BATCH_USE="Joomla Plugins Files Folders Urls Batch Use" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla plugins files folders urls" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla plugins files folders urls" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_CREATE="Joomla Plugins Files Folders Urls Create" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_CREATE_DESC="Allows the users in this group to create create joomla plugins files folders urls" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_DELETE="Joomla Plugins Files Folders Urls Delete" @@ -769,13 +769,13 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_OWN_DESC="Allows the COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_STATE="Joomla Plugins Files Folders Urls Edit State" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla plugin files folders urls" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_VERSION="Joomla Plugins Files Folders Urls Edit Version" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla plugins files folders urls" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla plugins files folders urls" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_SUBMENU="Joomla Plugins Submenu" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_SUBMENU_DESC="Allows the users in this group to submenu of joomla plugin" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_ACCESS="Joomla Plugins Updates Access" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_ACCESS_DESC="Allows the users in this group to access access joomla plugins updates" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_BATCH_USE="Joomla Plugins Updates Batch Use" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla plugins updates" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla plugins updates" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_CREATE="Joomla Plugins Updates Create" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_CREATE_DESC="Allows the users in this group to create create joomla plugins updates" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_DELETE="Joomla Plugins Updates Delete" @@ -791,15 +791,15 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_OWN_DESC="Allows the users in t COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_STATE="Joomla Plugins Updates Edit State" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_STATE_DESC="Allows the users in this group to update the state of the joomla plugin updates" COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_VERSION="Joomla Plugins Updates Edit Version" -COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla plugins updates" +COM_COMPONENTBUILDER_JOOMLA_PLUGINS_UPDATES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla plugins updates" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GET_BOILERPLATE_BUTTON_ACCESS="Joomla Plugin Get Boilerplate Button Access" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GET_BOILERPLATE_BUTTON_ACCESS_DESC="Allows the users in this group to access the get boilerplate button." COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_ACCESS="Joomla Plugin Groups Access" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_ACCESS_DESC="Allows the users in this group to access access joomla plugin groups" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_BATCH_USE="Joomla Plugin Groups Batch Use" -COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch joomla plugin groups" +COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch joomla plugin groups" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_EDIT_VERSION="Joomla Plugin Groups Edit Version" -COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version joomla plugin groups" +COM_COMPONENTBUILDER_JOOMLA_PLUGIN_GROUPS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version joomla plugin groups" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_METHODS_BUTTON_ACCESS="Joomla Plugin Methods Button Access" COM_COMPONENTBUILDER_JOOMLA_PLUGIN_METHODS_BUTTON_ACCESS_DESC="Allows the users in this group to access the methods button." COM_COMPONENTBUILDER_JOOMLA_PLUGIN_PROPERTIES_BUTTON_ACCESS="Joomla Plugin Properties Button Access" @@ -809,7 +809,7 @@ COM_COMPONENTBUILDER_JOOMLA_PLUGIN_RUN_EXPANSION_BUTTON_ACCESS_DESC="Allows the COM_COMPONENTBUILDER_LANGUAGES_ACCESS="Languages Access" COM_COMPONENTBUILDER_LANGUAGES_ACCESS_DESC="Allows the users in this group to access access languages" COM_COMPONENTBUILDER_LANGUAGES_BATCH_USE="Languages Batch Use" -COM_COMPONENTBUILDER_LANGUAGES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch languages" +COM_COMPONENTBUILDER_LANGUAGES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch languages" COM_COMPONENTBUILDER_LANGUAGES_CREATE="Languages Create" COM_COMPONENTBUILDER_LANGUAGES_CREATE_DESC="Allows the users in this group to create create languages" COM_COMPONENTBUILDER_LANGUAGES_DELETE="Languages Delete" @@ -821,7 +821,7 @@ COM_COMPONENTBUILDER_LANGUAGES_EDIT_OWN_DESC="Allows the users in this group to COM_COMPONENTBUILDER_LANGUAGES_EDIT_STATE="Languages Edit State" COM_COMPONENTBUILDER_LANGUAGES_EDIT_STATE_DESC="Allows the users in this group to update the state of the language" COM_COMPONENTBUILDER_LANGUAGES_EDIT_VERSION="Languages Edit Version" -COM_COMPONENTBUILDER_LANGUAGES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version languages" +COM_COMPONENTBUILDER_LANGUAGES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version languages" COM_COMPONENTBUILDER_LANGUAGES_EXPORT="Languages Export" COM_COMPONENTBUILDER_LANGUAGES_EXPORT_DESC="Allows the users in this group to export export languages" COM_COMPONENTBUILDER_LANGUAGES_IMPORT="Languages Import" @@ -833,7 +833,7 @@ COM_COMPONENTBUILDER_LANGUAGE_BUILD_BUTTON_ACCESS_DESC="Allows the users in this COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_ACCESS="Language Translations Access" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_ACCESS_DESC="Allows the users in this group to access access language translations" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_USE="Language Translations Batch Use" -COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch language translations" +COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch language translations" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_CREATE="Language Translations Create" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_CREATE_DESC="Allows the users in this group to create create language translations" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_DASHBOARD_LIST="Language Translations Dashboard List" @@ -847,7 +847,7 @@ COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_OWN_DESC="Allows the users in th COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_STATE="Language Translations Edit State" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_STATE_DESC="Allows the users in this group to update the state of the language translation" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_VERSION="Language Translations Edit Version" -COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version language translations" +COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version language translations" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EXPORT="Language Translations Export" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_EXPORT_DESC="Allows the users in this group to export export language translations" COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_IMPORT="Language Translations Import" @@ -857,7 +857,7 @@ COM_COMPONENTBUILDER_LANGUAGE_TRANSLATIONS_SUBMENU_DESC="Allows the users in thi COM_COMPONENTBUILDER_LAYOUTS_ACCESS="Layouts Access" COM_COMPONENTBUILDER_LAYOUTS_ACCESS_DESC="Allows the users in this group to access access layouts" COM_COMPONENTBUILDER_LAYOUTS_BATCH_USE="Layouts Batch Use" -COM_COMPONENTBUILDER_LAYOUTS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch layouts" +COM_COMPONENTBUILDER_LAYOUTS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch layouts" COM_COMPONENTBUILDER_LAYOUTS_CREATE="Layouts Create" COM_COMPONENTBUILDER_LAYOUTS_CREATE_DESC="Allows the users in this group to create create layouts" COM_COMPONENTBUILDER_LAYOUTS_DASHBOARD_LIST="Layouts Dashboard List" @@ -871,7 +871,7 @@ COM_COMPONENTBUILDER_LAYOUTS_EDIT_OWN_DESC="Allows the users in this group to ed COM_COMPONENTBUILDER_LAYOUTS_EDIT_STATE="Layouts Edit State" COM_COMPONENTBUILDER_LAYOUTS_EDIT_STATE_DESC="Allows the users in this group to update the state of the layout" COM_COMPONENTBUILDER_LAYOUTS_EDIT_VERSION="Layouts Edit Version" -COM_COMPONENTBUILDER_LAYOUTS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version layouts" +COM_COMPONENTBUILDER_LAYOUTS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version layouts" COM_COMPONENTBUILDER_LAYOUTS_EXPORT="Layouts Export" COM_COMPONENTBUILDER_LAYOUTS_EXPORT_DESC="Allows the users in this group to export export layouts" COM_COMPONENTBUILDER_LAYOUTS_IMPORT="Layouts Import" @@ -883,11 +883,11 @@ COM_COMPONENTBUILDER_LAYOUT_GET_SNIPPETS_BUTTON_ACCESS_DESC="Allows the users in COM_COMPONENTBUILDER_LIBRARIES_ACCESS="Libraries Access" COM_COMPONENTBUILDER_LIBRARIES_ACCESS_DESC="Allows the users in this group to access access libraries" COM_COMPONENTBUILDER_LIBRARIES_BATCH_USE="Libraries Batch Use" -COM_COMPONENTBUILDER_LIBRARIES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch libraries" +COM_COMPONENTBUILDER_LIBRARIES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch libraries" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_ACCESS="Libraries Config Access" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_ACCESS_DESC="Allows the users in this group to access access libraries config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_BATCH_USE="Libraries Config Batch Use" -COM_COMPONENTBUILDER_LIBRARIES_CONFIG_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch libraries config" +COM_COMPONENTBUILDER_LIBRARIES_CONFIG_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch libraries config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_CREATE="Libraries Config Create" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_CREATE_DESC="Allows the users in this group to create create libraries config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_DELETE="Libraries Config Delete" @@ -903,7 +903,7 @@ COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_OWN_DESC="Allows the users in this gr COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_STATE="Libraries Config Edit State" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_STATE_DESC="Allows the users in this group to update the state of the library config" COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_VERSION="Libraries Config Edit Version" -COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_VERSION_DESC="Allows users in this group to edit versions of version libraries config" +COM_COMPONENTBUILDER_LIBRARIES_CONFIG_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version libraries config" COM_COMPONENTBUILDER_LIBRARIES_CREATE="Libraries Create" COM_COMPONENTBUILDER_LIBRARIES_CREATE_DESC="Allows the users in this group to create create libraries" COM_COMPONENTBUILDER_LIBRARIES_DASHBOARD_LIST="Libraries Dashboard List" @@ -917,11 +917,11 @@ COM_COMPONENTBUILDER_LIBRARIES_EDIT_OWN_DESC="Allows the users in this group to COM_COMPONENTBUILDER_LIBRARIES_EDIT_STATE="Libraries Edit State" COM_COMPONENTBUILDER_LIBRARIES_EDIT_STATE_DESC="Allows the users in this group to update the state of the library" COM_COMPONENTBUILDER_LIBRARIES_EDIT_VERSION="Libraries Edit Version" -COM_COMPONENTBUILDER_LIBRARIES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version libraries" +COM_COMPONENTBUILDER_LIBRARIES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version libraries" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_ACCESS="Libraries Files Folders Urls Access" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_ACCESS_DESC="Allows the users in this group to access access libraries files folders urls" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_BATCH_USE="Libraries Files Folders Urls Batch Use" -COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch libraries files folders urls" +COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch libraries files folders urls" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_CREATE="Libraries Files Folders Urls Create" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_CREATE_DESC="Allows the users in this group to create create libraries files folders urls" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_DELETE="Libraries Files Folders Urls Delete" @@ -937,7 +937,7 @@ COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_OWN_DESC="Allows the user COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_STATE="Libraries Files Folders Urls Edit State" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_STATE_DESC="Allows the users in this group to update the state of the library files folders urls" COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_VERSION="Libraries Files Folders Urls Edit Version" -COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version libraries files folders urls" +COM_COMPONENTBUILDER_LIBRARIES_FILES_FOLDERS_URLS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version libraries files folders urls" COM_COMPONENTBUILDER_LIBRARIES_SUBMENU="Libraries Submenu" COM_COMPONENTBUILDER_LIBRARIES_SUBMENU_DESC="Allows the users in this group to submenu of library" COM_COMPONENTBUILDER_LIBRARY_GET_SNIPPETS_BUTTON_ACCESS="Library Get Snippets Button Access" @@ -967,7 +967,7 @@ COM_COMPONENTBUILDER_MENU_VALIDATION_RULES="Validation Rules" COM_COMPONENTBUILDER_PLACEHOLDERS_ACCESS="Placeholders Access" COM_COMPONENTBUILDER_PLACEHOLDERS_ACCESS_DESC="Allows the users in this group to access access placeholders" COM_COMPONENTBUILDER_PLACEHOLDERS_BATCH_USE="Placeholders Batch Use" -COM_COMPONENTBUILDER_PLACEHOLDERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch placeholders" +COM_COMPONENTBUILDER_PLACEHOLDERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch placeholders" COM_COMPONENTBUILDER_PLACEHOLDERS_CREATE="Placeholders Create" COM_COMPONENTBUILDER_PLACEHOLDERS_CREATE_DESC="Allows the users in this group to create create placeholders" COM_COMPONENTBUILDER_PLACEHOLDERS_DASHBOARD_LIST="Placeholders Dashboard List" @@ -981,7 +981,7 @@ COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_STATE="Placeholders Edit State" COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_STATE_DESC="Allows the users in this group to update the state of the placeholder" COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_VERSION="Placeholders Edit Version" -COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version placeholders" +COM_COMPONENTBUILDER_PLACEHOLDERS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version placeholders" COM_COMPONENTBUILDER_PLACEHOLDERS_EXPORT="Placeholders Export" COM_COMPONENTBUILDER_PLACEHOLDERS_EXPORT_DESC="Allows the users in this group to export export placeholders" COM_COMPONENTBUILDER_PLACEHOLDERS_IMPORT="Placeholders Import" @@ -991,7 +991,7 @@ COM_COMPONENTBUILDER_PLACEHOLDERS_SUBMENU_DESC="Allows the users in this group t COM_COMPONENTBUILDER_POWERS_ACCESS="Powers Access" COM_COMPONENTBUILDER_POWERS_ACCESS_DESC="Allows the users in this group to access access powers" COM_COMPONENTBUILDER_POWERS_BATCH_USE="Powers Batch Use" -COM_COMPONENTBUILDER_POWERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch powers" +COM_COMPONENTBUILDER_POWERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch powers" COM_COMPONENTBUILDER_POWERS_CREATE="Powers Create" COM_COMPONENTBUILDER_POWERS_CREATE_DESC="Allows the users in this group to create create powers" COM_COMPONENTBUILDER_POWERS_DASHBOARD_LIST="Powers Dashboard List" @@ -1009,7 +1009,7 @@ COM_COMPONENTBUILDER_POWERS_EDIT_OWN_DESC="Allows the users in this group to edi COM_COMPONENTBUILDER_POWERS_EDIT_STATE="Powers Edit State" COM_COMPONENTBUILDER_POWERS_EDIT_STATE_DESC="Allows the users in this group to update the state of the power" COM_COMPONENTBUILDER_POWERS_EDIT_VERSION="Powers Edit Version" -COM_COMPONENTBUILDER_POWERS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version powers" +COM_COMPONENTBUILDER_POWERS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version powers" COM_COMPONENTBUILDER_POWERS_SUBMENU="Powers Submenu" COM_COMPONENTBUILDER_POWERS_SUBMENU_DESC="Allows the users in this group to submenu of power" COM_COMPONENTBUILDER_POWER_INIT_BUTTON_ACCESS="Power Init Button Access" @@ -1018,8 +1018,6 @@ COM_COMPONENTBUILDER_POWER_RESET_BUTTON_ACCESS="Power Reset Button Access" COM_COMPONENTBUILDER_POWER_RESET_BUTTON_ACCESS_DESC="Allows the users in this group to access the reset button." COM_COMPONENTBUILDER_POWER_RUN_EXPANSION_BUTTON_ACCESS="Power Run Expansion Button Access" COM_COMPONENTBUILDER_POWER_RUN_EXPANSION_BUTTON_ACCESS_DESC="Allows the users in this group to access the run expansion button." -COM_COMPONENTBUILDER_POWER_SYNC_BUTTON_ACCESS="Power Sync Button Access" -COM_COMPONENTBUILDER_POWER_SYNC_BUTTON_ACCESS_DESC="Allows the users in this group to access the sync button." COM_COMPONENTBUILDER_SEARCH_ACCESS="Search Access" COM_COMPONENTBUILDER_SEARCH_ACCESS_DESC="Allows the users in this group to access search." COM_COMPONENTBUILDER_SEARCH_COMPILER_BUTTON_ACCESS="Search Compiler Button Access" @@ -1031,7 +1029,7 @@ COM_COMPONENTBUILDER_SEARCH_SUBMENU_DESC="Allows the users in this group to subm COM_COMPONENTBUILDER_SERVERS_ACCESS="Servers Access" COM_COMPONENTBUILDER_SERVERS_ACCESS_DESC="Allows the users in this group to access access servers" COM_COMPONENTBUILDER_SERVERS_BATCH_USE="Servers Batch Use" -COM_COMPONENTBUILDER_SERVERS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch servers" +COM_COMPONENTBUILDER_SERVERS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch servers" COM_COMPONENTBUILDER_SERVERS_CREATE="Servers Create" COM_COMPONENTBUILDER_SERVERS_CREATE_DESC="Allows the users in this group to create create servers" COM_COMPONENTBUILDER_SERVERS_DASHBOARD_LIST="Servers Dashboard List" @@ -1049,7 +1047,7 @@ COM_COMPONENTBUILDER_SERVERS_EDIT_OWN_DESC="Allows the users in this group to ed COM_COMPONENTBUILDER_SERVERS_EDIT_STATE="Servers Edit State" COM_COMPONENTBUILDER_SERVERS_EDIT_STATE_DESC="Allows the users in this group to update the state of the server" COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION="Servers Edit Version" -COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version servers" +COM_COMPONENTBUILDER_SERVERS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version servers" COM_COMPONENTBUILDER_SERVERS_EXPORT="Servers Export" COM_COMPONENTBUILDER_SERVERS_EXPORT_DESC="Allows the users in this group to export export servers" COM_COMPONENTBUILDER_SERVERS_IMPORT="Servers Import" @@ -1059,7 +1057,7 @@ COM_COMPONENTBUILDER_SERVERS_SUBMENU_DESC="Allows the users in this group to sub COM_COMPONENTBUILDER_SITE_VIEWS_ACCESS="Site Views Access" COM_COMPONENTBUILDER_SITE_VIEWS_ACCESS_DESC="Allows the users in this group to access access site views" COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_USE="Site Views Batch Use" -COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch site views" +COM_COMPONENTBUILDER_SITE_VIEWS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch site views" COM_COMPONENTBUILDER_SITE_VIEWS_CREATE="Site Views Create" COM_COMPONENTBUILDER_SITE_VIEWS_CREATE_DESC="Allows the users in this group to create create site views" COM_COMPONENTBUILDER_SITE_VIEWS_DASHBOARD_LIST="Site Views Dashboard List" @@ -1073,7 +1071,7 @@ COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_OWN_DESC="Allows the users in this group to COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_STATE="Site Views Edit State" COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_STATE_DESC="Allows the users in this group to update the state of the site view" COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_VERSION="Site Views Edit Version" -COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version site views" +COM_COMPONENTBUILDER_SITE_VIEWS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version site views" COM_COMPONENTBUILDER_SITE_VIEWS_EXPORT="Site Views Export" COM_COMPONENTBUILDER_SITE_VIEWS_EXPORT_DESC="Allows the users in this group to export export site views" COM_COMPONENTBUILDER_SITE_VIEWS_IMPORT="Site Views Import" @@ -1085,7 +1083,7 @@ COM_COMPONENTBUILDER_SITE_VIEW_GET_SNIPPETS_BUTTON_ACCESS_DESC="Allows the users COM_COMPONENTBUILDER_SNIPPETS_ACCESS="Snippets Access" COM_COMPONENTBUILDER_SNIPPETS_ACCESS_DESC="Allows the users in this group to access access snippets" COM_COMPONENTBUILDER_SNIPPETS_BATCH_USE="Snippets Batch Use" -COM_COMPONENTBUILDER_SNIPPETS_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch snippets" +COM_COMPONENTBUILDER_SNIPPETS_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch snippets" COM_COMPONENTBUILDER_SNIPPETS_CREATE="Snippets Create" COM_COMPONENTBUILDER_SNIPPETS_CREATE_DESC="Allows the users in this group to create create snippets" COM_COMPONENTBUILDER_SNIPPETS_DASHBOARD_LIST="Snippets Dashboard List" @@ -1099,7 +1097,7 @@ COM_COMPONENTBUILDER_SNIPPETS_EDIT_OWN_DESC="Allows the users in this group to e COM_COMPONENTBUILDER_SNIPPETS_EDIT_STATE="Snippets Edit State" COM_COMPONENTBUILDER_SNIPPETS_EDIT_STATE_DESC="Allows the users in this group to update the state of the snippet" COM_COMPONENTBUILDER_SNIPPETS_EDIT_VERSION="Snippets Edit Version" -COM_COMPONENTBUILDER_SNIPPETS_EDIT_VERSION_DESC="Allows users in this group to edit versions of version snippets" +COM_COMPONENTBUILDER_SNIPPETS_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version snippets" COM_COMPONENTBUILDER_SNIPPETS_EXPORT="Snippets Export" COM_COMPONENTBUILDER_SNIPPETS_EXPORT_DESC="Allows the users in this group to export export snippets" COM_COMPONENTBUILDER_SNIPPETS_IMPORT="Snippets Import" @@ -1113,7 +1111,7 @@ COM_COMPONENTBUILDER_SNIPPET_SHARE_SNIPPETS_BUTTON_ACCESS_DESC="Allows the users COM_COMPONENTBUILDER_SNIPPET_TYPES_ACCESS="Snippet Types Access" COM_COMPONENTBUILDER_SNIPPET_TYPES_ACCESS_DESC="Allows the users in this group to access access snippet types" COM_COMPONENTBUILDER_SNIPPET_TYPES_BATCH_USE="Snippet Types Batch Use" -COM_COMPONENTBUILDER_SNIPPET_TYPES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch snippet types" +COM_COMPONENTBUILDER_SNIPPET_TYPES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch snippet types" COM_COMPONENTBUILDER_SNIPPET_TYPES_CREATE="Snippet Types Create" COM_COMPONENTBUILDER_SNIPPET_TYPES_CREATE_DESC="Allows the users in this group to create create snippet types" COM_COMPONENTBUILDER_SNIPPET_TYPES_DELETE="Snippet Types Delete" @@ -1125,11 +1123,11 @@ COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_OWN_DESC="Allows the users in this group COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_STATE="Snippet Types Edit State" COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_STATE_DESC="Allows the users in this group to update the state of the snippet type" COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_VERSION="Snippet Types Edit Version" -COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version snippet types" +COM_COMPONENTBUILDER_SNIPPET_TYPES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version snippet types" COM_COMPONENTBUILDER_TEMPLATES_ACCESS="Templates Access" COM_COMPONENTBUILDER_TEMPLATES_ACCESS_DESC="Allows the users in this group to access access templates" COM_COMPONENTBUILDER_TEMPLATES_BATCH_USE="Templates Batch Use" -COM_COMPONENTBUILDER_TEMPLATES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch templates" +COM_COMPONENTBUILDER_TEMPLATES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch templates" COM_COMPONENTBUILDER_TEMPLATES_CREATE="Templates Create" COM_COMPONENTBUILDER_TEMPLATES_CREATE_DESC="Allows the users in this group to create create templates" COM_COMPONENTBUILDER_TEMPLATES_DASHBOARD_ADD="Templates Dashboard Add" @@ -1145,7 +1143,7 @@ COM_COMPONENTBUILDER_TEMPLATES_EDIT_OWN_DESC="Allows the users in this group to COM_COMPONENTBUILDER_TEMPLATES_EDIT_STATE="Templates Edit State" COM_COMPONENTBUILDER_TEMPLATES_EDIT_STATE_DESC="Allows the users in this group to update the state of the template" COM_COMPONENTBUILDER_TEMPLATES_EDIT_VERSION="Templates Edit Version" -COM_COMPONENTBUILDER_TEMPLATES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version templates" +COM_COMPONENTBUILDER_TEMPLATES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version templates" COM_COMPONENTBUILDER_TEMPLATES_EXPORT="Templates Export" COM_COMPONENTBUILDER_TEMPLATES_EXPORT_DESC="Allows the users in this group to export export templates" COM_COMPONENTBUILDER_TEMPLATES_IMPORT="Templates Import" @@ -1159,7 +1157,7 @@ COM_COMPONENTBUILDER_USE_BATCH_DESC="Allows users in this group to use batch cop COM_COMPONENTBUILDER_VALIDATION_RULES_ACCESS="Validation Rules Access" COM_COMPONENTBUILDER_VALIDATION_RULES_ACCESS_DESC="Allows the users in this group to access access validation rules" COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_USE="Validation Rules Batch Use" -COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_USE_DESC="Allows users in this group to use batch copy/update method of batch validation rules" +COM_COMPONENTBUILDER_VALIDATION_RULES_BATCH_USE_DESC="Allows the users in this group to use batch copy/update method of batch validation rules" COM_COMPONENTBUILDER_VALIDATION_RULES_CREATE="Validation Rules Create" COM_COMPONENTBUILDER_VALIDATION_RULES_CREATE_DESC="Allows the users in this group to create create validation rules" COM_COMPONENTBUILDER_VALIDATION_RULES_DASHBOARD_LIST="Validation Rules Dashboard List" @@ -1173,7 +1171,7 @@ COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_OWN_DESC="Allows the users in this gr COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_STATE="Validation Rules Edit State" COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_STATE_DESC="Allows the users in this group to update the state of the validation rule" COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_VERSION="Validation Rules Edit Version" -COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_VERSION_DESC="Allows users in this group to edit versions of version validation rules" +COM_COMPONENTBUILDER_VALIDATION_RULES_EDIT_VERSION_DESC="Allows the users in this group to edit versions of version validation rules" COM_COMPONENTBUILDER_VALIDATION_RULES_EXPORT="Validation Rules Export" COM_COMPONENTBUILDER_VALIDATION_RULES_EXPORT_DESC="Allows the users in this group to export export validation rules" COM_COMPONENTBUILDER_VALIDATION_RULES_IMPORT="Validation Rules Import" diff --git a/admin/layouts/field/database_right.php b/admin/layouts/field/database_right.php index d2af03303..644649025 100644 --- a/admin/layouts/field/database_right.php +++ b/admin/layouts/field/database_right.php @@ -29,6 +29,8 @@ $fields = $displayData->get($fields_tab_layout) ?: array( 'indexes', 'null_switch', 'store', + 'medium_encryption_note', + 'basic_encryption_note', 'note_whmcs_encryption', 'note_expert_field_save_mode', 'initiator_on_save_model', diff --git a/admin/layouts/fieldtype/database_defaults_right.php b/admin/layouts/fieldtype/database_defaults_right.php index ceb67b129..0f650d05d 100644 --- a/admin/layouts/fieldtype/database_defaults_right.php +++ b/admin/layouts/fieldtype/database_defaults_right.php @@ -29,6 +29,8 @@ $fields = $displayData->get($fields_tab_layout) ?: array( 'indexes', 'null_switch', 'store', + 'basic_encryption_note', + 'medium_encryption_note', 'note_whmcs_encryption' ); diff --git a/admin/layouts/server/linked_components_fullwidth.php b/admin/layouts/server/linked_components_fullwidth.php index b34bfea22..403302ea3 100644 --- a/admin/layouts/server/linked_components_fullwidth.php +++ b/admin/layouts/server/linked_components_fullwidth.php @@ -11,6 +11,8 @@ // No direct access to this file defined('_JEXEC') or die('Restricted access'); +use VDM\Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper; // set the defaults $items = $displayData->vymlinked_components; @@ -90,7 +92,7 @@ else $this->return_here = urlencode(base64_encode((string) JUri::getInstance())); } // setup the buttons - if (!isset($_buttons) || !ComponentbuilderHelper::checkArray($_buttons)) + if (!isset($_buttons) || !ArrayHelper::check($_buttons)) { $_buttons = array(); $_buttons[0] = array( @@ -201,16 +203,16 @@ else
escape($item->companyname); ?>
- author)) : ?> + author)) : ?> escape($item->author); ?>
- email) && ComponentbuilderHelper::checkString($item->author)) : ?> + email) && StringHelper::check($item->author)) : ?> escape($item->email); ?>
- website) && ComponentbuilderHelper::checkString($item->author)) : ?> + website) && StringHelper::check($item->author)) : ?> escape($item->website); ?> diff --git a/admin/layouts/table.php b/admin/layouts/table.php index a42bef2cb..b526bfa0a 100644 --- a/admin/layouts/table.php +++ b/admin/layouts/table.php @@ -11,15 +11,17 @@ // No direct access to this file defined('JPATH_BASE') or die('Restricted access'); +use VDM\Joomla\Utilities\StringHelper; -$table_id = (isset($displayData['id'])) ? $displayData['id'] : ComponentbuilderHelper::randomkey(7); +$table_id = (isset($displayData['id'])) ? $displayData['id'] : StringHelper::random(7); $name = (isset($displayData['name'])) ? $displayData['name'] : false; +$table_class = (isset($displayData['table_class'])) ? $displayData['table_class'] : 'uk-table'; $headers = (isset($displayData['headers'])) ? $displayData['headers'] : [JText::_('COM_COMPONENTBUILDER_NO'), JText::_('COM_COMPONENTBUILDER_HEADERS'), JText::_('COM_COMPONENTBUILDER_FOUND')]; $items = (isset($displayData['items'])) ? $displayData['items'] : 6; ?>
- +
@@ -32,7 +34,7 @@ $items = (isset($displayData['items'])) ? $displayData['items'] : 6; @@ -46,7 +48,7 @@ $items = (isset($displayData['items'])) ? $displayData['items'] : 6; - + diff --git a/admin/models/admin_custom_tabs.php b/admin/models/admin_custom_tabs.php index 63b715029..76dd3d7fc 100644 --- a/admin/models/admin_custom_tabs.php +++ b/admin/models/admin_custom_tabs.php @@ -284,7 +284,7 @@ class ComponentbuilderModelAdmin_custom_tabs extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('admin_custom_tabs.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/admin_fields.php b/admin/models/admin_fields.php index 43284a4b2..121d0718b 100644 --- a/admin/models/admin_fields.php +++ b/admin/models/admin_fields.php @@ -305,7 +305,7 @@ class ComponentbuilderModelAdmin_fields extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('admin_fields.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/admin_fields_conditions.php b/admin/models/admin_fields_conditions.php index bee9651dd..5d748acca 100644 --- a/admin/models/admin_fields_conditions.php +++ b/admin/models/admin_fields_conditions.php @@ -305,7 +305,7 @@ class ComponentbuilderModelAdmin_fields_conditions extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('admin_fields_conditions.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/admin_fields_relations.php b/admin/models/admin_fields_relations.php index 492168f4d..022006cca 100644 --- a/admin/models/admin_fields_relations.php +++ b/admin/models/admin_fields_relations.php @@ -16,6 +16,8 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; /** * Componentbuilder Admin_fields_relations Admin Model @@ -101,7 +103,7 @@ class ComponentbuilderModelAdmin_fields_relations extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'admin_fields_relations__'.$id); ComponentbuilderHelper::set('admin_fields_relations__'.$id, $this->vastDevMod); // set a return value if found @@ -109,7 +111,7 @@ class ComponentbuilderModelAdmin_fields_relations extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -175,7 +177,7 @@ class ComponentbuilderModelAdmin_fields_relations extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'admin_fields_relations__'.$id); ComponentbuilderHelper::set('admin_fields_relations__'.$id, $this->vastDevMod); // set a return value if found @@ -183,7 +185,7 @@ class ComponentbuilderModelAdmin_fields_relations extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -367,7 +369,7 @@ class ComponentbuilderModelAdmin_fields_relations extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('admin_fields_relations.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/admin_view.php b/admin/models/admin_view.php index fcd4b6339..1d543331d 100644 --- a/admin/models/admin_view.php +++ b/admin/models/admin_view.php @@ -16,6 +16,11 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Admin_view Admin Model @@ -249,7 +254,7 @@ class ComponentbuilderModelAdmin_view extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'admin_view__'.$id); ComponentbuilderHelper::set('admin_view__'.$id, $this->vastDevMod); // set a return value if found @@ -257,7 +262,7 @@ class ComponentbuilderModelAdmin_view extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -599,7 +604,7 @@ class ComponentbuilderModelAdmin_view extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'admin_view__'.$id); ComponentbuilderHelper::set('admin_view__'.$id, $this->vastDevMod); // set a return value if found @@ -607,7 +612,7 @@ class ComponentbuilderModelAdmin_view extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -785,7 +790,7 @@ class ComponentbuilderModelAdmin_view extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -800,7 +805,7 @@ class ComponentbuilderModelAdmin_view extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } return $form; @@ -864,7 +869,7 @@ class ComponentbuilderModelAdmin_view extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('admin_view.edit.state', 'com_componentbuilder'); } @@ -1030,7 +1035,7 @@ class ComponentbuilderModelAdmin_view extends AdminModel } // we must also delete the linked tables found - if (ComponentbuilderHelper::checkArray($pks)) + if (UtilitiesArrayHelper::check($pks)) { $_tablesArray = array( 'admin_fields', @@ -1072,7 +1077,7 @@ class ComponentbuilderModelAdmin_view extends AdminModel } // we must also update all linked tables - if (ComponentbuilderHelper::checkArray($pks)) + if (UtilitiesArrayHelper::check($pks)) { $_tablesArray = array( 'admin_fields', @@ -1482,7 +1487,7 @@ class ComponentbuilderModelAdmin_view extends AdminModel } // if system name is empty create a system name from the name_single - if (empty($data['system_name']) || !ComponentbuilderHelper::checkString($data['system_name'])) + if (empty($data['system_name']) || !UtilitiesStringHelper::check($data['system_name'])) { $data['system_name'] = $data['name_single']; } @@ -1491,15 +1496,15 @@ class ComponentbuilderModelAdmin_view extends AdminModel if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('admin_view', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('admin_view', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "admin_view", $data['id'])) + while (!GuidHelper::valid($data['guid'], "admin_view", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the addpermissions items to data. if (isset($data['addpermissions']) && is_array($data['addpermissions'])) diff --git a/admin/models/admin_views.php b/admin/models/admin_views.php index 769b01965..3b306c9a7 100644 --- a/admin/models/admin_views.php +++ b/admin/models/admin_views.php @@ -15,7 +15,7 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; use VDM\Joomla\Componentbuilder\Utilities\FilterHelper as JCBFilterHelper; -use VDM\Joomla\Componentbuilder\Utilities\FormHelper as JCBFormHelper; +use VDM\Joomla\Utilities\FormHelper as JCBFormHelper; /** * Admin_views List Model diff --git a/admin/models/ajax.php b/admin/models/ajax.php index 55d0ff96a..97c2a5f34 100644 --- a/admin/models/ajax.php +++ b/admin/models/ajax.php @@ -22,6 +22,10 @@ use VDM\Joomla\Utilities\StringHelper; use Joomla\Registry\Registry; use Joomla\CMS\Language\Text; use VDM\Joomla\Componentbuilder\Search\Factory as SearchFactory; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GetHelper; +use VDM\Joomla\Utilities\Base64Helper; +use VDM\Joomla\Componentbuilder\Compiler\Utilities\FieldHelper; /** * Componentbuilder Ajax List Model @@ -39,54 +43,6 @@ class ComponentbuilderModelAjax extends ListModel } // Used in joomla_component - - /** - * Check and if a vdm notice is new (per/user) - **/ - public function isNew($notice) - { - // first get the file path - $path_filename = ComponentbuilderHelper::getFilePath('path', 'usernotice', 'md', JFactory::getUser()->username, JPATH_COMPONENT_ADMINISTRATOR); - // check if the file is set - if (($content = @file_get_contents($path_filename)) !== FALSE) - { - if ($notice == $content) - { - return false; - } - } - return true; - } - - /** - * set That a notice has been read (per/user) - **/ - public function isRead($notice) - { - // first get the file path - $path_filename = ComponentbuilderHelper::getFilePath('path', 'usernotice', 'md', JFactory::getUser()->username, JPATH_COMPONENT_ADMINISTRATOR); - // set as read if not already set - if (($content = @file_get_contents($path_filename)) !== FALSE) - { - if ($notice == $content) - { - return true; - } - } - return $this->saveFile($notice,$path_filename); - } - - protected function saveFile($data,$path_filename) - { - if (ComponentbuilderHelper::checkString($data)) - { - $fp = fopen($path_filename, 'w'); - fwrite($fp, $data); - fclose($fp); - return true; - } - return false; - } /** * get the crowdin project details (html) **/ @@ -272,56 +228,68 @@ class ComponentbuilderModelAjax extends ListModel { return function_exists('curl_version'); } - - public function getWiki($name = 'Home') + + /** + * Check and if a notice is new (per/user) + * + * @param string|null $notice The current notice + * + * @return bool true if is new + * @since 2.0.0 + */ + public function isNew(?string $notice): bool { - try - { - // load the API details - GiteaFactory::_('Gitea.Repository.Wiki')->load_('https://git.vdm.dev', ''); + // first get the file path + $path_filename = FileHelper::getPath('path', 'usernotice', 'md', JFactory::getUser()->username, JPATH_COMPONENT_ADMINISTRATOR); - // get the gitea wiki page im markdown - $wiki = GiteaFactory::_('Gitea.Repository.Wiki')->get('joomla', 'Component-Builder', 'Home'); - - // now render the page in HTML - $page = GiteaFactory::_('Gitea.Miscellaneous.Markdown')->render($wiki->content, true); - } - catch (DomainException $e) + // check if the file is set + if (($content = FileHelper::getContent($path_filename, FALSE)) !== FALSE) { - return $this->getTokenForWiki($e->getMessage()); + if ($notice == $content) + { + return false; + } } - catch (InvalidArgumentException $e) - { - return $this->getTokenForWiki($e->getMessage()); - } - catch (Exception $e) - { - return $this->getTokenForWiki($e->getMessage()); - } - - // get the html - if (isset($page)) - { - return ['page' => $page]; - } - - return $this->getTokenForWiki(); + return true; } - protected function getTokenForWiki($message = null) + /** + * Check if a notice has been read (per/user) + * + * @param string|null $notice The current notice + * + * @return bool true if is read + * @since 2.0.0 + */ + public function isRead(?string $notice): bool { - if ($message) + // first get the file path + $path_filename = FileHelper::getPath('path', 'usernotice', 'md', JFactory::getUser()->username, JPATH_COMPONENT_ADMINISTRATOR); + + // set as read if not already set + if (($content = FileHelper::getContent($path_filename, FALSE)) !== FALSE) { - return ['error' => $message]; + if ($notice == $content) + { + return true; + } } - return ['error' => Text::_('COM_COMPONENTBUILDER_THE_WIKI_CAN_ONLY_BE_LOADED_WHEN_YOUR_JCB_SYSTEM_HAS_INTERNET_CONNECTION')]; + return FileHelper::write($path_filename, $notice); } - + + /** + * get Current Version + * + * @param string|null $message The error messages if any. + * + * @return array The array of the notice or error message + * @since 2.3.0 + */ public function getVersion($version = null) { // get the token if set - $token = $this->app_params->get('gitea_token', false); + $token = $this->app_params->get('gitea_token'); // only add if token is set if ($token) @@ -373,7 +341,7 @@ class ComponentbuilderModelAjax extends ListModel else { // download link of the latest version - $download = "https://git.vdm.dev/api/v1/repos/joomla/pkg-component-builder/archive/" . $tags[0]->name . ".zip?access_token=" . $token; + $download = "https://git.vdm.dev/api/v1/repos/joomla/Component-Builder/archive/" . $tags[0]->name . ".zip?access_token=" . $token; return ['notice' => '' . Text::_('COM_COMPONENTBUILDER_OUT_OF_DATE') . '! ' . Text::_('COM_COMPONENTBUILDER_DOWNLOAD_UPDATE') . '!']; @@ -384,11 +352,20 @@ class ComponentbuilderModelAjax extends ListModel return $this->getTokenForVersion(); } - - protected function getTokenForVersion($message = null) + + /** + * Instructions to get Token for version + * + * @param string|null $message The error messages if any. + * + * @return array The array of the error message + * @since 2.3.0 + */ + protected function getTokenForVersion(?string $message = null): array { // the URL $url = 'https://git.vdm.dev/user/settings/applications'; + // create link $a = ''; @@ -401,15 +378,77 @@ class ComponentbuilderModelAjax extends ListModel return ['error' => $a . Text::_('COM_COMPONENTBUILDER_GET_TOKEN_FROM_VDM_TO_GET_UPDATE_NOTICE_AND_ADD_IT_TO_YOUR_GLOBAL_OPTIONS') . $a_ . Text::_('COM_COMPONENTBUILDER_GET_TOKEN') . $_a]; } - + /** + * get Wiki Page + * + * @param string|null $message The error messages if any. + * + * @return array The array of the page or error message + * @since 2.3.0 + */ + public function getWiki(string $name = 'Home'): array + { + try + { + // get the token if set + $token = $this->app_params->get('gitea_token'); + + // load the API details + GiteaFactory::_('Gitea.Repository.Wiki')->load_('https://git.vdm.dev', $token); + + // get the gitea wiki page im markdown + $wiki = GiteaFactory::_('Gitea.Repository.Wiki')->get('joomla', 'Component-Builder', $name); + + // now render the page in HTML + $page = GiteaFactory::_('Gitea.Miscellaneous.Markdown')->render($wiki->content, true); + } + catch (DomainException $e) + { + return $this->getTokenForWiki($e->getMessage()); + } + catch (InvalidArgumentException $e) + { + return $this->getTokenForWiki($e->getMessage()); + } + catch (Exception $e) + { + return $this->getTokenForWiki($e->getMessage()); + } + + // get the html + if (isset($page)) + { + return ['page' => $page]; + } + + return $this->getTokenForWiki(); + } + + /** + * Instructions to get Token for wiki + * + * @param string|null $message The error messages if any. + * + * @return array The array of the error message + * @since 2.3.0 + */ + protected function getTokenForWiki(?string $message = null): array + { + if ($message) + { + return ['error' => $message]; + } + + return ['error' => Text::_('COM_COMPONENTBUILDER_THE_WIKI_CAN_ONLY_BE_LOADED_WHEN_YOUR_JOOMLA_COMPONENT_BUILDER_SYSTEM_HAS_INTERNET_CONNECTION')]; + } // Used in joomla_module public function getModuleCode($data) { // reset the return array $code = array(); - if (ComponentbuilderHelper::checkJson($data)) + if (JsonHelper::check($data)) { // convert the data to object $data = json_decode($data); @@ -425,7 +464,7 @@ class ComponentbuilderModelAjax extends ListModel $code['class']['merge_target'] = 'prepend'; } // get data - if (isset($data->get) && ComponentbuilderHelper::checkArray($data->get)) + if (isset($data->get) && UtilitiesArrayHelper::check($data->get)) { $code['get'] = array(); // add the code @@ -436,7 +475,7 @@ class ComponentbuilderModelAjax extends ListModel $code['get']['merge_target'] = 'prepend'; } // get libraries - if (isset($data->lib) && ComponentbuilderHelper::checkArray($data->lib)) + if (isset($data->lib) && UtilitiesArrayHelper::check($data->lib)) { $code['lib'] = array(); // add the code @@ -493,7 +532,7 @@ class ComponentbuilderModelAjax extends ListModel public function getClassHeaderCode($id, $type) { - if ('extends' === $type && ($head = ComponentbuilderHelper::getVar('class_' . $type, $id, 'id', 'head')) !== false && ComponentbuilderHelper::checkString($head)) + if ('extends' === $type && ($head = ComponentbuilderHelper::getVar('class_' . $type, $id, 'id', 'head')) !== false && StringHelper::check($head)) { return base64_decode($head); } @@ -538,10 +577,10 @@ class ComponentbuilderModelAjax extends ListModel if ($fields = ComponentbuilderHelper::getVar('admin_fields', $values['a_id'], 'admin_view', 'addfields')) { // open the fields - if (ComponentbuilderHelper::checkJson($fields)) + if (JsonHelper::check($fields)) { $fields = json_decode($fields, true); - if (ComponentbuilderHelper::checkArray($fields)) + if (UtilitiesArrayHelper::check($fields)) { foreach($fields as $field) { @@ -567,10 +606,10 @@ class ComponentbuilderModelAjax extends ListModel if ($fields = ComponentbuilderHelper::getVar('admin_fields', $values['a_id'], 'admin_view', 'addfields')) { // open the fields - if (ComponentbuilderHelper::checkJson($fields)) + if (JsonHelper::check($fields)) { $fields = json_decode($fields, true); - if (ComponentbuilderHelper::checkArray($fields)) + if (UtilitiesArrayHelper::check($fields)) { foreach($fields as $field) { @@ -712,7 +751,7 @@ class ComponentbuilderModelAjax extends ListModel return $language[$keys[1]]; } } - return ComponentbuilderHelper::safeString($keys[1], 'Ww'); + return StringHelper::safe($keys[1], 'Ww'); } protected $ref; @@ -767,7 +806,7 @@ class ComponentbuilderModelAjax extends ListModel protected function checkRepeatableConversion($type, &$fieldsData, $fieldsArrayType, $id, $linked_id_name) { - if (ComponentbuilderHelper::checkJson($fieldsData) && isset($this->conversionCheck[$fieldsArrayType])) + if (JsonHelper::check($fieldsData) && isset($this->conversionCheck[$fieldsArrayType])) { $fieldsData = json_decode($fieldsData, true); if (isset($fieldsData[$this->conversionCheck[$fieldsArrayType]])) @@ -803,12 +842,12 @@ class ComponentbuilderModelAjax extends ListModel protected function setPermissions($header, $values) { // check if value is array - if (!ComponentbuilderHelper::checkArray($values)) + if (!UtilitiesArrayHelper::check($values)) { $values = array($values); } // check if value is array - if (ComponentbuilderHelper::checkArray($values)) + if (UtilitiesArrayHelper::check($values)) { // Editing, Access, View $bucket = array(); @@ -828,7 +867,7 @@ class ComponentbuilderModelAjax extends ListModel } } // check if value is array - if (ComponentbuilderHelper::checkArray($bucket)) + if (UtilitiesArrayHelper::check($bucket)) { return implode(', ', $bucket); } @@ -869,7 +908,7 @@ class ComponentbuilderModelAjax extends ListModel protected function setIcoMoon($header, $value) { - if (ComponentbuilderHelper::checkString($value)) + if (StringHelper::check($value)) { return ''; } @@ -936,7 +975,7 @@ class ComponentbuilderModelAjax extends ListModel { return JText::_('COM_COMPONENTBUILDER_PUBLISHING'); } - if (!ComponentbuilderHelper::checkArray($this->tabNames)) + if (!UtilitiesArrayHelper::check($this->tabNames)) { // get the view name & id $values = $this->getViewID(); @@ -945,12 +984,12 @@ class ComponentbuilderModelAjax extends ListModel if ($tabs = ComponentbuilderHelper::getVar('admin_view', $values['a_id'], 'id', 'addtabs')) { $tabs = json_decode($tabs, true); - if (ComponentbuilderHelper::checkArray($tabs)) + if (UtilitiesArrayHelper::check($tabs)) { $nr = 1; foreach ($tabs as $tab) { - if (ComponentbuilderHelper::checkArray($tab) && isset($tab['name'])) + if (UtilitiesArrayHelper::check($tab) && isset($tab['name'])) { $this->tabNames[$nr] = $tab['name']; $nr++; @@ -961,7 +1000,7 @@ class ComponentbuilderModelAjax extends ListModel } } // has it been set - if (ComponentbuilderHelper::checkArray($this->tabNames) && isset($this->tabNames[$value])) + if (UtilitiesArrayHelper::check($this->tabNames) && isset($this->tabNames[$value])) { return $this->tabNames[$value]; } @@ -1101,7 +1140,7 @@ class ComponentbuilderModelAjax extends ListModel // load the values form params $xml = json_decode($result->xml); - $xmlOptions = ComponentbuilderHelper::getBetween($xml,'option="','"'); + $xmlOptions = GetHelper::between($xml,'option="','"'); $optionSet = ''; if (strpos($xmlOptions,',') !== false) @@ -1111,7 +1150,7 @@ class ComponentbuilderModelAjax extends ListModel foreach ($options as $option) { // return both value and text - if (ComponentbuilderHelper::checkString($optionSet)) + if (StringHelper::check($optionSet)) { // no add to option set $optionSet .= "\n".$option; @@ -1126,7 +1165,7 @@ class ComponentbuilderModelAjax extends ListModel else { // return both value and text - if (ComponentbuilderHelper::checkString($optionSet)) + if (StringHelper::check($optionSet)) { // no add to option set $optionSet .= "\n".$xmlOptions; @@ -1164,7 +1203,7 @@ class ComponentbuilderModelAjax extends ListModel { // get the columns $columns = $this->_db->getTableColumns("#__".$tableName); - if (ComponentbuilderHelper::checkArray($columns)) + if (UtilitiesArrayHelper::check($columns)) { // build the return string $tableColumns = array(); @@ -1258,7 +1297,7 @@ class ComponentbuilderModelAjax extends ListModel { // just return it for now a table $table = '
'; - $table .= ''; + $table .= ''; $table .= ''; $table .= '
'.JText::sprintf('COM_COMPONENTBUILDER_PLACES_ACROSS_JCB_WHERE_THIS_S_IS_LINKED', ComponentbuilderHelper::safeString($values['a_view'], 'w')).''.JText::sprintf('COM_COMPONENTBUILDER_PLACES_ACROSS_JCB_WHERE_THIS_S_IS_LINKED', StringHelper::safe($values['a_view'], 'w')).'
'.JText::_('COM_COMPONENTBUILDER_TYPE_NAME').'
' .implode('
', $linked) . '
'; return $table; @@ -1268,7 +1307,7 @@ class ComponentbuilderModelAjax extends ListModel // if not found but has session view name if (strlen($values['a_view'])) { - return '

' . JText::sprintf('COM_COMPONENTBUILDER_S_NOT_LINKED', ComponentbuilderHelper::safeString($values['a_view'], 'Ww')) . '

' . JText::sprintf('COM_COMPONENTBUILDER_THIS_BSB_IS_NOT_LINKED_TO_ANY_OTHER_AREAS_OF_JCB_AT_THIS_TIME', $values['a_view']) . '

'; + return '

' . JText::sprintf('COM_COMPONENTBUILDER_S_NOT_LINKED', StringHelper::safe($values['a_view'], 'Ww')) . '

' . JText::sprintf('COM_COMPONENTBUILDER_THIS_BSB_IS_NOT_LINKED_TO_ANY_OTHER_AREAS_OF_JCB_AT_THIS_TIME', $values['a_view']) . '

'; } // no view or id found in session, or view not allowed to access area return '

' . JText::_('COM_COMPONENTBUILDER_ERROR') . '

' . JText::_('COM_COMPONENTBUILDER_THERE_WAS_A_PROBLEM_BNO_VIEW_OR_ID_FOUND_IN_SESSION_OR_VIEW_NOT_ALLOWED_TO_ACCESS_AREAB_WE_COULD_NOT_LOAD_ANY_LINKED_TO_VALUES_PLEASE_INFORM_YOUR_SYSTEM_ADMINISTRATOR') . '

'; @@ -1344,12 +1383,12 @@ class ComponentbuilderModelAjax extends ListModel else { // check if we have a json - if (ComponentbuilderHelper::checkJson($item->{$key})) + if (JsonHelper::check($item->{$key})) { $item->{$key} = json_decode($item->{$key}, true); } // if array - if (ComponentbuilderHelper::checkArray($item->{$key})) + if (UtilitiesArrayHelper::check($item->{$key})) { if ('ARRAY' === $target) { @@ -1369,7 +1408,7 @@ class ComponentbuilderModelAjax extends ListModel { $_target = (array) explode('.', $target); // check that we have an array and get the size - if (($_size = ComponentbuilderHelper::checkArray($_target)) !== false) + if (($_size = UtilitiesArrayHelper::check($_target)) !== false) { foreach ($item->{$key} as $row) { @@ -1380,7 +1419,7 @@ class ComponentbuilderModelAjax extends ListModel $found = true; } } - elseif ($_size == 3 && isset($row[$_target[0]]) && ComponentbuilderHelper::checkArray($row[$_target[0]])) + elseif ($_size == 3 && isset($row[$_target[0]]) && UtilitiesArrayHelper::check($row[$_target[0]])) { foreach ($row[$_target[0]] as $_row) { @@ -1450,18 +1489,18 @@ class ComponentbuilderModelAjax extends ListModel } } // if string (fields) - if (!$found && 'xml' === $key && ComponentbuilderHelper::checkString($item->{$key}) + if (!$found && 'xml' === $key && StringHelper::check($item->{$key}) && strpos($item->{$key}, $target.'="') !== false) { // now get the fields between - $_fields = ComponentbuilderHelper::getBetween($item->{$key}, $target.'="', '"'); + $_fields = GetHelper::between($item->{$key}, $target.'="', '"'); // check the result - if (ComponentbuilderHelper::checkString($_fields)) + if (StringHelper::check($_fields)) { // get the ids of all the fields linked here $_fields = array_map('trim', (array) explode(',', $_fields)); // check the result - if (ComponentbuilderHelper::checkArray($_fields)) + if (UtilitiesArrayHelper::check($_fields)) { foreach ($_fields as $_field) { @@ -1501,7 +1540,7 @@ class ComponentbuilderModelAjax extends ListModel $type_name = ' (' . $type_name . ') '; } } - elseif (ComponentbuilderHelper::checkString($type_name) || is_numeric($type_name)) + elseif (StringHelper::check($type_name) || is_numeric($type_name)) { $type_name = ' (' . $type_name . ') '; } @@ -1514,7 +1553,7 @@ class ComponentbuilderModelAjax extends ListModel } } // check if we found any - if (ComponentbuilderHelper::checkArray($linked)) + if (UtilitiesArrayHelper::check($linked)) { return $linked; } @@ -1576,7 +1615,7 @@ class ComponentbuilderModelAjax extends ListModel if ($view = ComponentbuilderHelper::get($vdm)) { $current = (array) explode('__', $view); - if (ComponentbuilderHelper::checkString($current[0]) && isset($current[1]) && is_numeric($current[1])) + if (StringHelper::check($current[0]) && isset($current[1]) && is_numeric($current[1])) { // get the view name & id $this->viewid[$call] = array( @@ -1596,7 +1635,7 @@ class ComponentbuilderModelAjax extends ListModel // set return if found if (($return = ComponentbuilderHelper::get($vdm . '__return')) !== false) { - if (ComponentbuilderHelper::checkString($return)) + if (StringHelper::check($return)) { $this->viewid[$call]['a_return'] = $return; } @@ -1635,7 +1674,7 @@ class ComponentbuilderModelAjax extends ListModel $ref = '&ref=' . $values['a_view'] . '&refid=' . $values['a_id'] . '&return=' . urlencode(base64_encode($return_url)); } // build url (A tag) - $startAtag = 'onclick="UIkit2.modal.confirm(\''.JText::_('COM_COMPONENTBUILDER_ALL_UNSAVED_WORK_ON_THIS_PAGE_WILL_BE_LOST_ARE_YOU_SURE_YOU_WANT_TO_CONTINUE').'\', function(){ window.location.href = \'index.php?option=com_componentbuilder&view=' . $type . '&layout=edit' . $ref . '\' })" href="javascript:void(0)" title="'.JText::sprintf('COM_COMPONENTBUILDER_CREATE_NEW_S', ComponentbuilderHelper::safeString($type, 'W')).'">'; + $startAtag = 'onclick="UIkit2.modal.confirm(\''.JText::_('COM_COMPONENTBUILDER_ALL_UNSAVED_WORK_ON_THIS_PAGE_WILL_BE_LOST_ARE_YOU_SURE_YOU_WANT_TO_CONTINUE').'\', function(){ window.location.href = \'index.php?option=com_componentbuilder&view=' . $type . '&layout=edit' . $ref . '\' })" href="javascript:void(0)" title="'.JText::sprintf('COM_COMPONENTBUILDER_CREATE_NEW_S', StringHelper::safe($type, 'W')).'">'; // build the smallest button if (3 == $size) { @@ -1679,7 +1718,7 @@ class ComponentbuilderModelAjax extends ListModel // get the view name & id $values = $this->getViewID(); // set the button ID - $css_class = 'control-group-'.ComponentbuilderHelper::safeString($type. '-' . $size, 'L', '-'); + $css_class = 'control-group-'.StringHelper::safe($type. '-' . $size, 'L', '-'); // check if new item $ref = ''; if (!is_null($values['a_id']) && $values['a_id'] > 0 && strlen($values['a_view'])) @@ -1703,14 +1742,14 @@ class ComponentbuilderModelAjax extends ListModel // get item id if (($id = ComponentbuilderHelper::getVar($type, $key_get_value, $values['a_view'], 'id')) !== false && $id > 0) { - $buttonText = JText::sprintf('COM_COMPONENTBUILDER_EDIT_S_FOR_THIS_S', ComponentbuilderHelper::safeString($type, 'w'), ComponentbuilderHelper::safeString($values['a_view'], 'w')); + $buttonText = JText::sprintf('COM_COMPONENTBUILDER_EDIT_S_FOR_THIS_S', StringHelper::safe($type, 'w'), StringHelper::safe($values['a_view'], 'w')); $buttonTextSmall = JText::_('COM_COMPONENTBUILDER_EDIT'); $editThis = 'index.php?option=com_componentbuilder&view='.$this->buttonArray[$type].'&task='.$type.'.edit&id='.$id; $icon = 'icon-apply'; } else { - $buttonText = JText::sprintf('COM_COMPONENTBUILDER_CREATE_S_FOR_THIS_S', ComponentbuilderHelper::safeString($type, 'w'), ComponentbuilderHelper::safeString($values['a_view'], 'w')); + $buttonText = JText::sprintf('COM_COMPONENTBUILDER_CREATE_S_FOR_THIS_S', StringHelper::safe($type, 'w'), StringHelper::safe($values['a_view'], 'w')); $buttonTextSmall = JText::_('COM_COMPONENTBUILDER_CREATE'); $editThis = 'index.php?option=com_componentbuilder&view='.$type.'&layout=edit'; $icon = 'icon-new'; @@ -1721,7 +1760,7 @@ class ComponentbuilderModelAjax extends ListModel { $button[] = '
'; $button[] = '
'; - $button[] = ''; + $button[] = ''; $button[] = '
'; $button[] = '
'; } @@ -1746,7 +1785,7 @@ class ComponentbuilderModelAjax extends ListModel // only return notice if big button if (1 == $size) { - return '
' . JText::sprintf('COM_COMPONENTBUILDER_BUTTON_TO_CREATE_S_WILL_SHOW_ONCE_S_IS_SAVED_FOR_THE_FIRST_TIME', ComponentbuilderHelper::safeString($type, 'w'), ComponentbuilderHelper::safeString($values['a_view'], 'w')) . '
'; + return '
' . JText::sprintf('COM_COMPONENTBUILDER_BUTTON_TO_CREATE_S_WILL_SHOW_ONCE_S_IS_SAVED_FOR_THE_FIRST_TIME', StringHelper::safe($type, 'w'), StringHelper::safe($values['a_view'], 'w')) . '
'; } } } @@ -1756,12 +1795,12 @@ class ComponentbuilderModelAjax extends ListModel protected function getSubformTable($idName, $data) { // make sure we convert the json to array - if (ComponentbuilderHelper::checkJson($data)) + if (JsonHelper::check($data)) { $data = json_decode($data, true); } // make sure we have an array - if (ComponentbuilderHelper::checkArray($data) && ComponentbuilderHelper::checkString($idName)) + if (UtilitiesArrayHelper::check($data) && StringHelper::check($idName)) { // Build heading $head = array(); @@ -1777,7 +1816,7 @@ class ComponentbuilderModelAjax extends ListModel } // build the rows $rows = array(); - if (ComponentbuilderHelper::checkArray($data) && ComponentbuilderHelper::checkArray($head)) + if (UtilitiesArrayHelper::check($data) && UtilitiesArrayHelper::check($head)) { foreach ($data as $nr => $values) { @@ -1796,7 +1835,7 @@ class ComponentbuilderModelAjax extends ListModel } } // build table - if (ComponentbuilderHelper::checkArray($rows) && ComponentbuilderHelper::checkArray($head)) + if (UtilitiesArrayHelper::check($rows) && UtilitiesArrayHelper::check($head)) { // set the number of rows $this->rowNumber = count($rows); @@ -1814,7 +1853,7 @@ class ComponentbuilderModelAjax extends ListModel $value = $this->{$this->functionArray[$header]}($header, $value); } // if no value are set - if (!ComponentbuilderHelper::checkString($value)) + if (!StringHelper::check($value)) { $value = '-'; } @@ -1839,7 +1878,7 @@ class ComponentbuilderModelAjax extends ListModel if (isset($this->fieldsArray[$type])) { // set type name - $typeName = ComponentbuilderHelper::safeString($type, 'w'); + $typeName = StringHelper::safe($type, 'w'); // get the view name & id $values = $this->getViewID(); // check if we are in the correct view. @@ -1865,7 +1904,7 @@ class ComponentbuilderModelAjax extends ListModel // load the results $result = array(); // return field table - if (ComponentbuilderHelper::checkArray($this->fieldsArray[$type])) + if (UtilitiesArrayHelper::check($this->fieldsArray[$type])) { foreach ($this->fieldsArray[$type] as $fieldName) { @@ -1875,7 +1914,7 @@ class ComponentbuilderModelAjax extends ListModel } } } - elseif (ComponentbuilderHelper::checkString($this->fieldsArray[$type])) + elseif (StringHelper::check($this->fieldsArray[$type])) { if ($table = $this->getFieldTable($type, $key_get_value, $values['a_view'], $this->fieldsArray[$type], $typeName)) { @@ -1883,12 +1922,12 @@ class ComponentbuilderModelAjax extends ListModel } } // check if we have results - if (ComponentbuilderHelper::checkArray($result) && count($result) == 1) + if (UtilitiesArrayHelper::check($result) && count($result) == 1) { // return the display return implode('', $result); } - elseif (ComponentbuilderHelper::checkArray($result)) + elseif (UtilitiesArrayHelper::check($result)) { // return the display return '
' . implode('
', $result) . '
'; @@ -1917,7 +1956,7 @@ class ComponentbuilderModelAjax extends ListModel $getEdit = method_exists('ComponentbuilderHelper', 'getEditButton'); // reset bucket $bucket = array(); - if (ComponentbuilderHelper::checkArray($value)) + if (UtilitiesArrayHelper::check($value)) { foreach ($value as $item) { @@ -1930,7 +1969,7 @@ class ComponentbuilderModelAjax extends ListModel $edit = false; } // check if we should load some get - if ($edit && isset($this->itemKeys[$header]['get']) && ComponentbuilderHelper::checkString($this->itemKeys[$header]['get']) && method_exists(__CLASS__, $this->itemKeys[$header]['get'])) + if ($edit && isset($this->itemKeys[$header]['get']) && StringHelper::check($this->itemKeys[$header]['get']) && method_exists(__CLASS__, $this->itemKeys[$header]['get'])) { // gets $this->itemNames[$this->itemKeys[$header]['table']][$item] .= $this->{$this->itemKeys[$header]['get']}($item); @@ -1962,7 +2001,7 @@ class ComponentbuilderModelAjax extends ListModel $edit = false; } // check if we should load some get - if ($edit && isset($this->itemKeys[$header]['get']) && ComponentbuilderHelper::checkString($this->itemKeys[$header]['get']) && method_exists(__CLASS__, $this->itemKeys[$header]['get'])) + if ($edit && isset($this->itemKeys[$header]['get']) && StringHelper::check($this->itemKeys[$header]['get']) && method_exists(__CLASS__, $this->itemKeys[$header]['get'])) { // gets $this->itemNames[$this->itemKeys[$header]['table']][$value] .= $this->{$this->itemKeys[$header]['get']}($value); @@ -1983,7 +2022,7 @@ class ComponentbuilderModelAjax extends ListModel $bucket[] = $this->itemNames[$this->itemKeys[$header]['table']][$value] . $link; } // return found items - if (ComponentbuilderHelper::checkArray($bucket)) + if (UtilitiesArrayHelper::check($bucket)) { return implode('
', $bucket); } @@ -2065,8 +2104,8 @@ class ComponentbuilderModelAjax extends ListModel { $edit = (($button = ComponentbuilderHelper::getEditButton($result->id, 'template', 'templates', $ref)) !== false) ? $button : ''; $editget = (isset($result->dynamic_get) && $result->dynamic_get > 0 && ($button = ComponentbuilderHelper::getEditButton($result->dynamic_get, 'dynamic_get', 'dynamic_gets', $ref)) !== false) ? $button : ''; - $result->name = (ComponentbuilderHelper::checkString($result->name)) ? $result->name : JText::_('COM_COMPONENTBUILDER_NONE_SELECTED'); - $templateString[] = "".$result->name." ".$editget."<?php echo \$this->loadTemplate('".ComponentbuilderHelper::safeString($result->alias)."'); ?> ".$edit.""; + $result->name = (StringHelper::check($result->name)) ? $result->name : JText::_('COM_COMPONENTBUILDER_NONE_SELECTED'); + $templateString[] = "".$result->name." ".$editget."<?php echo \$this->loadTemplate('".StringHelper::safe($result->alias)."'); ?> ".$edit.""; } // build the table $table = '

' . JText::_('COM_COMPONENTBUILDER_TEMPLATE_CODE_SNIPPETS') . '

'; @@ -2117,22 +2156,22 @@ class ComponentbuilderModelAjax extends ListModel { $edit = (($button = ComponentbuilderHelper::getEditButton($result->id, 'layout', 'layouts', $ref)) !== false) ? $button : ''; $editget = (isset($result->dynamic_get) && $result->dynamic_get > 0 && ($button = ComponentbuilderHelper::getEditButton($result->dynamic_get, 'dynamic_get', 'dynamic_gets', $ref)) !== false) ? $button : ''; - $result->name = (ComponentbuilderHelper::checkString($result->name)) ? $result->name : JText::_('COM_COMPONENTBUILDER_NONE_SELECTED'); + $result->name = (StringHelper::check($result->name)) ? $result->name : JText::_('COM_COMPONENTBUILDER_NONE_SELECTED'); switch ($result->gettype) { case 1: // single - $layoutString[] = ""; + $layoutString[] = ""; break; case 2: // list - $layoutString[] = ""; + $layoutString[] = ""; break; case 3: case 4: // custom - $result->getcustom = ComponentbuilderHelper::safeString($result->getcustom); + $result->getcustom = StringHelper::safe($result->getcustom); if (substr($result->getcustom, 0, strlen('get')) == 'get') { $varName = substr($result->getcustom, strlen('get')); @@ -2141,11 +2180,11 @@ class ComponentbuilderModelAjax extends ListModel { $varName = $result->getcustom; } - $layoutString[] = ""; + $layoutString[] = ""; break; default: // no get - $layoutString[] = ""; + $layoutString[] = ""; break; } } @@ -2213,17 +2252,17 @@ class ComponentbuilderModelAjax extends ListModel } // get the joined values (name) $result->join_view_table = json_decode($result->join_view_table, true); - if (!ComponentbuilderHelper::checkArray($result->join_view_table)) + if (!UtilitiesArrayHelper::check($result->join_view_table)) { unset($result->join_view_table); } $result->join_db_table = json_decode($result->join_db_table, true); - if (!ComponentbuilderHelper::checkArray($result->join_db_table)) + if (!UtilitiesArrayHelper::check($result->join_db_table)) { unset($result->join_db_table); } // now load the joined values to the selection set - if (isset($result->join_view_table) && ComponentbuilderHelper::checkArray($result->join_view_table)) + if (isset($result->join_view_table) && UtilitiesArrayHelper::check($result->join_view_table)) { foreach ($result->join_view_table as $join_view_table) { @@ -2245,7 +2284,7 @@ class ComponentbuilderModelAjax extends ListModel } unset($result->join_view_table); } - if (isset($result->join_db_table) && ComponentbuilderHelper::checkArray($result->join_db_table)) + if (isset($result->join_db_table) && UtilitiesArrayHelper::check($result->join_db_table)) { foreach ($result->join_db_table as $join_db_table) { @@ -2271,7 +2310,7 @@ class ComponentbuilderModelAjax extends ListModel if ($result->addcalculation == 1) { $php_calculation = base64_decode($result->php_calculation); - $phpSelections = ComponentbuilderHelper::getAllBetween($php_calculation,'cal__',' '); + $phpSelections = GetHelper::allBetween($php_calculation,'cal__',' '); $selections[] = array_unique($phpSelections); unset($php_calculation); unset($phpSelections); @@ -2293,7 +2332,7 @@ class ComponentbuilderModelAjax extends ListModel case 3: case 4: // custom - $result->getcustom = ComponentbuilderHelper::safeString($result->getcustom); + $result->getcustom = StringHelper::safe($result->getcustom); if (substr($result->getcustom, 0, strlen('get')) == 'get') { $varName = substr($result->getcustom, strlen('get')); @@ -2311,7 +2350,7 @@ class ComponentbuilderModelAjax extends ListModel $buketName = 'displayData'; } // now build the return values - if (ComponentbuilderHelper::checkArray($selections)) + if (UtilitiesArrayHelper::check($selections)) { $buket = array(); switch ($result->gettype) @@ -2332,7 +2371,7 @@ class ComponentbuilderModelAjax extends ListModel } foreach ($selections as $selection) { - if (ComponentbuilderHelper::checkArray($selection)) + if (UtilitiesArrayHelper::check($selection)) { foreach ($selection as $value) { @@ -2348,12 +2387,12 @@ class ComponentbuilderModelAjax extends ListModel } } } - if (ComponentbuilderHelper::checkArray($selectionsList)) + if (UtilitiesArrayHelper::check($selectionsList)) { $buket[] = '
'; foreach ($selectionsList as $name => $selectionList) { - if (ComponentbuilderHelper::checkArray($selectionList)) + if (UtilitiesArrayHelper::check($selectionList)) { $ur = '<?php echo $'.$name; $cf = '; ?>'; @@ -2391,11 +2430,11 @@ class ComponentbuilderModelAjax extends ListModel protected function setListMethodName($names, $table, $as, $type) { $methodNames = array(); - if (ComponentbuilderHelper::checkArray($names)) + if (UtilitiesArrayHelper::check($names)) { foreach ($names as $nr => $name) { - if (ComponentbuilderHelper::checkString($name)) + if (StringHelper::check($name)) { if (strpos($name,'.') !== false) { @@ -2407,11 +2446,11 @@ class ComponentbuilderModelAjax extends ListModel } if ($nr > 0) { - $methodNames[] = ComponentbuilderHelper::safeString($var,'F'); + $methodNames[] = StringHelper::safe($var,'F'); } else { - $methodNames[] = ComponentbuilderHelper::safeString($var); + $methodNames[] = StringHelper::safe($var); } } } @@ -2420,16 +2459,16 @@ class ComponentbuilderModelAjax extends ListModel { // set view name case 1: - $methodNames[] = ComponentbuilderHelper::safeString($this->getViewName($table),'F'); + $methodNames[] = StringHelper::safe($this->getViewName($table),'F'); break; // set db name case 2: - $methodNames[] = ComponentbuilderHelper::safeString($table,'F'); + $methodNames[] = StringHelper::safe($table,'F'); break; } // make sure there is uniqe method names - $methodNames[] = ComponentbuilderHelper::safeString($as,'U'); + $methodNames[] = StringHelper::safe($as,'U'); return $methodNames; } @@ -2458,7 +2497,7 @@ class ComponentbuilderModelAjax extends ListModel $jinput = JFactory::getApplication()->input; $return_here = $jinput->get('return_here', null, 'base64'); // set the return here value if not found - if (ComponentbuilderHelper::checkString($return_here)) + if (StringHelper::check($return_here)) { $return_here = '&return=' . $return_here; } @@ -2485,7 +2524,7 @@ class ComponentbuilderModelAjax extends ListModel { if (!isset($target['not_base64'][$key])) { - $value = ComponentbuilderHelper::openValidBase64($value, null); + $value = Base64Helper::open($value, null); } elseif ('json' === $target['not_base64'][$key] && 'xml' === $key) // just for field search { @@ -2502,17 +2541,17 @@ class ComponentbuilderModelAjax extends ListModel if (strpos($value, '[CUSTOMC' . 'ODE=') !== false) { // get all custom codes in value - $bucket[$key] = ComponentbuilderHelper::getAllBetween($value, '[CUSTOMC' . 'ODE=', ']'); + $bucket[$key] = GetHelper::allBetween($value, '[CUSTOMC' . 'ODE=', ']'); } // check if field has string length - if (ComponentbuilderHelper::checkString($value)) + if (StringHelper::check($value)) { // see if the field needs some help :) $_key = (isset($helper[$key])) ? $helper[$key] : $key; // build the buttons $buttons[$_key] = array(); - if (($button = $this->getButton('custom_code', 3)) && ComponentbuilderHelper::checkString($button)) + if (($button = $this->getButton('custom_code', 3)) && StringHelper::check($button)) { $buttons[$_key]['_create'] = $button; } @@ -2520,7 +2559,7 @@ class ComponentbuilderModelAjax extends ListModel } } // check if any values found - if (ComponentbuilderHelper::checkArray($bucket)) + if (UtilitiesArrayHelper::check($bucket)) { foreach ($bucket as $field => $customcodes) { @@ -2536,7 +2575,7 @@ class ComponentbuilderModelAjax extends ListModel // see if we can get the button if (!isset($buttons[$field][$key[0]]) && ($_id = ComponentbuilderHelper::getVar('custom_code', $key[0], 'function_name')) !== false && ($button = ComponentbuilderHelper::getEditTextButton($edit_icon . $key[0], $_id, 'custom_code', 'custom_codes', $return_here, 'com_componentbuilder', false, 'btn btn-small button-edit" style="margin: 0 0 5px 0;')) - && ComponentbuilderHelper::checkString($button)) + && StringHelper::check($button)) { $buttons[$field][$key[0]] = $button; } @@ -2545,7 +2584,7 @@ class ComponentbuilderModelAjax extends ListModel } } // only continue if we have buttons in array - if (ComponentbuilderHelper::checkArray($buttons, true)) + if (UtilitiesArrayHelper::check($buttons, true)) { return $buttons; } @@ -2556,7 +2595,7 @@ class ComponentbuilderModelAjax extends ListModel public function checkFunctionName($name, $id) { $nameArray = (array) $this->splitAtUpperCase($name); - $name = ComponentbuilderHelper::safeString(implode(' ', $nameArray), 'cA'); + $name = StringHelper::safe(implode(' ', $nameArray), 'cA'); if ($found = ComponentbuilderHelper::getVar('custom_code', $name, 'function_name', 'id')) { if ((int) $id !== (int) $found) @@ -2615,7 +2654,7 @@ class ComponentbuilderModelAjax extends ListModel { if (!isset($target['not_base64'][$key])) { - $value = ComponentbuilderHelper::openValidBase64($value, null); + $value = Base64Helper::open($value, null); } elseif ('json' === $target['not_base64'][$key] && 'xml' === $key) // just for field search { @@ -2668,13 +2707,13 @@ class ComponentbuilderModelAjax extends ListModel } } // check if any values found - if (ComponentbuilderHelper::checkArray($bucket)) + if (UtilitiesArrayHelper::check($bucket)) { // get input $jinput = JFactory::getApplication()->input; $return_here = $jinput->get('return_here', null, 'base64'); // set the return here value if not found - if (ComponentbuilderHelper::checkString($return_here)) + if (StringHelper::check($return_here)) { $return_here = '&return=' . $return_here; } @@ -2686,7 +2725,7 @@ class ComponentbuilderModelAjax extends ListModel foreach ($bucket as $editId => $values) { if (($button = ComponentbuilderHelper::getEditTextButton($values['name'], $editId, $target['table'], $target['views'], $return_here, 'com_componentbuilder', false, '')) - && ComponentbuilderHelper::checkString($button)) + && StringHelper::check($button)) { $usedin[] = $button. ' (' . implode(', ', $values['fields']) . ')'; } @@ -2716,9 +2755,9 @@ class ComponentbuilderModelAjax extends ListModel if (isset($target['_start'])) { // get all values - $allBetween = ComponentbuilderHelper::getAllBetween($value, $target['start'], $target['_start']); + $allBetween = GetHelper::allBetween($value, $target['start'], $target['_start']); // just again make sure we found some - if (ComponentbuilderHelper::checkArray($allBetween)) + if (UtilitiesArrayHelper::check($allBetween)) { if (count((array) $allBetween) > 1) { @@ -2749,14 +2788,14 @@ class ComponentbuilderModelAjax extends ListModel $starts[] = $target['start']; } // has any been found - if (ComponentbuilderHelper::checkArray($starts)) + if (UtilitiesArrayHelper::check($starts)) { foreach ($starts as $_start) { // get the base64 string - $base64 = ComponentbuilderHelper::getBetween($value, $_start, $target['end']); + $base64 = GetHelper::between($value, $_start, $target['end']); // now open the base64 text - $tmp = ComponentbuilderHelper::openValidBase64($base64); + $tmp = Base64Helper::open($base64); // insert it back into the value (so we still search the whole string) $value = str_replace($base64, $tmp, $value); } @@ -3037,7 +3076,7 @@ class ComponentbuilderModelAjax extends ListModel { if (!isset($target['not_base64'][$key])) { - $value = ComponentbuilderHelper::openValidBase64($value, null); + $value = Base64Helper::open($value, null); } elseif ('json' === $target['not_base64'][$key] && 'xml' === $key) // just for field search { @@ -3090,13 +3129,13 @@ class ComponentbuilderModelAjax extends ListModel } } // check if any values found - if (ComponentbuilderHelper::checkArray($bucket)) + if (UtilitiesArrayHelper::check($bucket)) { // get input $jinput = JFactory::getApplication()->input; $return_here = $jinput->get('return_here', null, 'base64'); // set the return here value if not found - if (ComponentbuilderHelper::checkString($return_here)) + if (StringHelper::check($return_here)) { $return_here = '&return=' . $return_here; } @@ -3108,7 +3147,7 @@ class ComponentbuilderModelAjax extends ListModel foreach ($bucket as $editId => $values) { if (($button = ComponentbuilderHelper::getEditTextButton($values['name'], $editId, $target['table'], $target['views'], $return_here, 'com_componentbuilder', false, '')) - && ComponentbuilderHelper::checkString($button)) + && StringHelper::check($button)) { $placedin[] = $button. ' (' . implode(', ', $values['fields']) . ')'; } @@ -3150,7 +3189,7 @@ class ComponentbuilderModelAjax extends ListModel public function checkRuleName($name, $id) { - $name = ComponentbuilderHelper::safeString($name); + $name = StringHelper::safe($name); if ($found = ComponentbuilderHelper::getVar('validation_rule', $name, 'name', 'id')) { if ((int) $id !== (int) $found) @@ -3235,7 +3274,7 @@ class ComponentbuilderModelAjax extends ListModel $names = $db->loadAssocList('name', 'short_description'); } // merge the arrays - $rules = ComponentbuilderHelper::mergeArrays(array($exitingNames, $names)); + $rules = UtilitiesArrayHelper::merge(array($exitingNames, $names)); // sort the array ksort($rules); // return the validation rules @@ -3272,7 +3311,7 @@ class ComponentbuilderModelAjax extends ListModel $field['subform'] = '
'. $properties->label . '
' . $properties->input . '
'; $field['extra'] = '
'. $extras->label . '
' . $extras->input . '
'; // check if we have PHP values - if (ComponentbuilderHelper::checkArray($field['php'])) + if (UtilitiesArrayHelper::check($field['php'])) { $field['textarea'] = array(); foreach($field['php'] as $name => $values) @@ -3302,7 +3341,7 @@ class ComponentbuilderModelAjax extends ListModel { if (!in_array($extra, $options)) { - $value = ComponentbuilderHelper::getValueFromXMLstring($xml, $extra, $confirmation); + $value = FieldHelper::getValue($xml, $extra, $confirmation); if ($confirmation !== $value) { $values['extraproperties' . $nr] = array('name' => $extra, 'value' => $value, 'desc' => JText::_($desc)); @@ -3311,7 +3350,7 @@ class ComponentbuilderModelAjax extends ListModel } } // return only if extras founb - if (ComponentbuilderHelper::checkArray($values)) + if (UtilitiesArrayHelper::check($values)) { return $values; } @@ -3358,7 +3397,7 @@ class ComponentbuilderModelAjax extends ListModel 'layout' => 'joomla.form.field.subform.repeatable-table', 'multiple' => 'true', 'icon' => 'list', - 'max' => (ComponentbuilderHelper::checkArray($nameListOptions)) ? (int) count($nameListOptions) : 4); + 'max' => (UtilitiesArrayHelper::check($nameListOptions)) ? (int) count($nameListOptions) : 4); // load the subform attributes ComponentbuilderHelper::xmlAddAttributes($subformXML, $subformAttribute); // now add the subform child form @@ -3375,15 +3414,15 @@ class ComponentbuilderModelAjax extends ListModel $nameXML = new SimpleXMLElement(''); // subform attributes $nameAttribute = array( - 'type' => (ComponentbuilderHelper::checkArray($nameListOptions)) ? 'list' : 'text', + 'type' => (UtilitiesArrayHelper::check($nameListOptions)) ? 'list' : 'text', 'name' => 'name', 'label' => 'COM_COMPONENTBUILDER_PROPERTY', 'size' => '40', 'maxlength' => '150', - 'class' => (ComponentbuilderHelper::checkArray($nameListOptions)) ? 'list_class field_list_name_options' : 'text_area', + 'class' => (UtilitiesArrayHelper::check($nameListOptions)) ? 'list_class field_list_name_options' : 'text_area', 'filter' => 'STRING'); // add the hint only if not name list and description if name list is an array - if (ComponentbuilderHelper::checkArray($nameListOptions)) + if (UtilitiesArrayHelper::check($nameListOptions)) { $nameAttribute['description'] = 'COM_COMPONENTBUILDER_SELECTION'; $nameAttribute['multiple'] = 'false'; @@ -3396,7 +3435,7 @@ class ComponentbuilderModelAjax extends ListModel // load the subform attributes ComponentbuilderHelper::xmlAddAttributes($nameXML, $nameAttribute); // add name list if found - if (ComponentbuilderHelper::checkArray($nameListOptions)) + if (UtilitiesArrayHelper::check($nameListOptions)) { ComponentbuilderHelper::xmlAddOptions($nameXML, $nameListOptions); } @@ -3472,17 +3511,17 @@ class ComponentbuilderModelAjax extends ListModel // value to check since there are false and null values even 0 in the values returned $confirmation = '8qvZHoyuFYQqpj0YQbc6F3o5DhBlmS-_-a8pmCZfOVSfANjkmV5LG8pCdAY2JNYu6cB'; // make sure we have an array - if (ComponentbuilderHelper::checkArray($properties)) + if (UtilitiesArrayHelper::check($properties)) { foreach ($properties as $property) { if(isset($property['name']) && $_property === $property['name']) { // check if we should load the value - $value = ComponentbuilderHelper::getValueFromXMLstring($xml, $property['name'], $confirmation); + $value = FieldHelper::getValue($xml, $property['name'], $confirmation); if ($confirmation === $value) { - $value = (isset($property['example']) && ComponentbuilderHelper::checkString($property['example'])) ? $property['example'] : ''; + $value = (isset($property['example']) && StringHelper::check($property['example'])) ? $property['example'] : ''; } // return the found values return array('value' => $value, 'desc' => $property['description']); @@ -3511,7 +3550,7 @@ class ComponentbuilderModelAjax extends ListModel $_fieldType = ComponentbuilderHelper::getVar('field', $global['a_id'], 'id', 'fieldtype'); $xmlDB = ComponentbuilderHelper::getVar('field', $global['a_id'], 'id', 'xml'); // check if it is a string - if (ComponentbuilderHelper::checkString($xmlDB)) + if (StringHelper::check($xmlDB)) { $xml = json_decode($xmlDB); } @@ -3810,12 +3849,12 @@ class ComponentbuilderModelAjax extends ListModel public function getSnippets($libraries) { - if (ComponentbuilderHelper::checkJson($libraries)) + if (JsonHelper::check($libraries)) { $libraries = json_decode($libraries, true); } // check if we have an array - if (ComponentbuilderHelper::checkArray($libraries)) + if (UtilitiesArrayHelper::check($libraries)) { // insure we only have int values if ($libraries = $this->checkLibraries($libraries)) @@ -3849,12 +3888,12 @@ class ComponentbuilderModelAjax extends ListModel if (2 == $type && $bundled = ComponentbuilderHelper::getVar('library', (int) $id, 'id', 'libraries')) { // make sure we have an array if it was json - if (ComponentbuilderHelper::checkJson($bundled)) + if (JsonHelper::check($bundled)) { $bundled = json_decode($bundled, true); } // load in the values if we have an array - if (ComponentbuilderHelper::checkArray($bundled)) + if (UtilitiesArrayHelper::check($bundled)) { foreach ($bundled as $lib) { @@ -3872,7 +3911,7 @@ class ComponentbuilderModelAjax extends ListModel } }, $libraries); // check if we have any bundled libraries - if (ComponentbuilderHelper::checkArray($bucket)) + if (UtilitiesArrayHelper::check($bucket)) { foreach ($bucket as $lib) { @@ -3880,11 +3919,11 @@ class ComponentbuilderModelAjax extends ListModel } } // check that we have libraries - if (ComponentbuilderHelper::checkArray($libraries)) + if (UtilitiesArrayHelper::check($libraries)) { $libraries = array_values(array_unique(array_filter($libraries, function($id){return is_int($id);}))); // check if we have any libraries remaining - if (ComponentbuilderHelper::checkArray($libraries)) + if (UtilitiesArrayHelper::check($libraries)) { return $libraries; } @@ -3928,7 +3967,7 @@ class ComponentbuilderModelAjax extends ListModel if ($access) { // secure path - $path = ComponentbuilderHelper::safeString(str_replace('.json','',$path), 'filename', '', false).'.json'; + $path = StringHelper::safe(str_replace('.json','',$path), 'filename', '', false).'.json'; // base path $base_path = basename($path); // set url @@ -3939,7 +3978,7 @@ class ComponentbuilderModelAjax extends ListModel return $this->saveSnippet($snippet, $status, $user); } // see if we have any errors from github - if (ComponentbuilderHelper::checkArray(ComponentbuilderHelper::$githubRepoDataErrors)) + if (UtilitiesArrayHelper::check(ComponentbuilderHelper::$githubRepoDataErrors)) { return array('message' => JText::sprintf('COM_COMPONENTBUILDER_ERROR_BR_S', implode('
', ComponentbuilderHelper::$githubRepoDataErrors)), 'status' => 'danger'); } diff --git a/admin/models/class_extends.php b/admin/models/class_extends.php index ac6640a53..02043b16b 100644 --- a/admin/models/class_extends.php +++ b/admin/models/class_extends.php @@ -16,6 +16,10 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\String\ClassfunctionHelper; /** * Componentbuilder Class_extends Admin Model @@ -104,7 +108,7 @@ class ComponentbuilderModelClass_extends extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'class_extends__'.$id); ComponentbuilderHelper::set('class_extends__'.$id, $this->vastDevMod); // set a return value if found @@ -112,7 +116,7 @@ class ComponentbuilderModelClass_extends extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -182,7 +186,7 @@ class ComponentbuilderModelClass_extends extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'class_extends__'.$id); ComponentbuilderHelper::set('class_extends__'.$id, $this->vastDevMod); // set a return value if found @@ -190,7 +194,7 @@ class ComponentbuilderModelClass_extends extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -316,7 +320,7 @@ class ComponentbuilderModelClass_extends extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -388,7 +392,7 @@ class ComponentbuilderModelClass_extends extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('class_extends.edit.state', 'com_componentbuilder'); } @@ -912,7 +916,7 @@ class ComponentbuilderModelClass_extends extends AdminModel } // make sure the name is safe to be used as a class name - $data['name'] = ComponentbuilderHelper::safeClassFunctionName($data['name']); + $data['name'] = ClassfunctionHelper::safe($data['name']); // Set the head string to base64 string. if (isset($data['head'])) diff --git a/admin/models/class_method.php b/admin/models/class_method.php index b1b3fd152..9fcdaeaf6 100644 --- a/admin/models/class_method.php +++ b/admin/models/class_method.php @@ -16,6 +16,12 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\String\ClassfunctionHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Class_method Admin Model @@ -107,7 +113,7 @@ class ComponentbuilderModelClass_method extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'class_method__'.$id); ComponentbuilderHelper::set('class_method__'.$id, $this->vastDevMod); // set a return value if found @@ -115,7 +121,7 @@ class ComponentbuilderModelClass_method extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -191,7 +197,7 @@ class ComponentbuilderModelClass_method extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'class_method__'.$id); ComponentbuilderHelper::set('class_method__'.$id, $this->vastDevMod); // set a return value if found @@ -199,7 +205,7 @@ class ComponentbuilderModelClass_method extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -325,7 +331,7 @@ class ComponentbuilderModelClass_method extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -340,9 +346,9 @@ class ComponentbuilderModelClass_method extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } - + return $form; } @@ -404,7 +410,7 @@ class ComponentbuilderModelClass_method extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('class_method.edit.state', 'com_componentbuilder'); } @@ -964,21 +970,21 @@ class ComponentbuilderModelClass_method extends AdminModel } // make sure the name is safe to be used as a function name - $data['name'] = ComponentbuilderHelper::safeClassFunctionName($data['name']); + $data['name'] = ClassfunctionHelper::safe($data['name']); // Set the GUID if empty or not valid if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('class_method', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('class_method', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "class_method", $data['id'])) + while (!GuidHelper::valid($data['guid'], "class_method", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the code string to base64 string. if (isset($data['code'])) diff --git a/admin/models/class_property.php b/admin/models/class_property.php index 8d13330e9..492f246cd 100644 --- a/admin/models/class_property.php +++ b/admin/models/class_property.php @@ -16,6 +16,12 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\String\ClassfunctionHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Class_property Admin Model @@ -104,7 +110,7 @@ class ComponentbuilderModelClass_property extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'class_property__'.$id); ComponentbuilderHelper::set('class_property__'.$id, $this->vastDevMod); // set a return value if found @@ -112,7 +118,7 @@ class ComponentbuilderModelClass_property extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -182,7 +188,7 @@ class ComponentbuilderModelClass_property extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'class_property__'.$id); ComponentbuilderHelper::set('class_property__'.$id, $this->vastDevMod); // set a return value if found @@ -190,7 +196,7 @@ class ComponentbuilderModelClass_property extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -316,7 +322,7 @@ class ComponentbuilderModelClass_property extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -331,9 +337,9 @@ class ComponentbuilderModelClass_property extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } - + return $form; } @@ -395,7 +401,7 @@ class ComponentbuilderModelClass_property extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('class_property.edit.state', 'com_componentbuilder'); } @@ -955,21 +961,21 @@ class ComponentbuilderModelClass_property extends AdminModel } // make sure the name is safe to be used as a function name - $data['name'] = ComponentbuilderHelper::safeClassFunctionName($data['name']); + $data['name'] = ClassfunctionHelper::safe($data['name']); // Set the GUID if empty or not valid if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('class_property', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('class_property', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "class_property", $data['id'])) + while (!GuidHelper::valid($data['guid'], "class_property", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the comment string to base64 string. if (isset($data['comment'])) diff --git a/admin/models/compiler.php b/admin/models/compiler.php index 456dd2fbf..d3ebd8e80 100644 --- a/admin/models/compiler.php +++ b/admin/models/compiler.php @@ -14,6 +14,7 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; /** * Componentbuilder List Model for Compiler @@ -373,7 +374,7 @@ class ComponentbuilderModelCompiler extends ListModel } } // check if we had any errors - if (ComponentbuilderHelper::checkArray($errorMessage)) + if (UtilitiesArrayHelper::check($errorMessage)) { // flatten the error message array $errorMessage = implode('
', $errorMessage); diff --git a/admin/models/component_admin_views.php b/admin/models/component_admin_views.php index 08852550a..7a7cb336e 100644 --- a/admin/models/component_admin_views.php +++ b/admin/models/component_admin_views.php @@ -322,7 +322,7 @@ class ComponentbuilderModelComponent_admin_views extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_admin_views.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/component_config.php b/admin/models/component_config.php index ad96fb621..66d6cb352 100644 --- a/admin/models/component_config.php +++ b/admin/models/component_config.php @@ -318,7 +318,7 @@ class ComponentbuilderModelComponent_config extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_config.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/component_custom_admin_menus.php b/admin/models/component_custom_admin_menus.php index 9f76ddbec..553021ab2 100644 --- a/admin/models/component_custom_admin_menus.php +++ b/admin/models/component_custom_admin_menus.php @@ -321,7 +321,7 @@ class ComponentbuilderModelComponent_custom_admin_menus extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_custom_admin_menus.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/component_custom_admin_views.php b/admin/models/component_custom_admin_views.php index 7b778cd9a..b77e89734 100644 --- a/admin/models/component_custom_admin_views.php +++ b/admin/models/component_custom_admin_views.php @@ -322,7 +322,7 @@ class ComponentbuilderModelComponent_custom_admin_views extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_custom_admin_views.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/component_dashboard.php b/admin/models/component_dashboard.php index 098711c7d..4177f48a5 100644 --- a/admin/models/component_dashboard.php +++ b/admin/models/component_dashboard.php @@ -16,6 +16,8 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; /** * Componentbuilder Component_dashboard Admin Model @@ -108,7 +110,7 @@ class ComponentbuilderModelComponent_dashboard extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'component_dashboard__'.$id); ComponentbuilderHelper::set('component_dashboard__'.$id, $this->vastDevMod); // set a return value if found @@ -116,7 +118,7 @@ class ComponentbuilderModelComponent_dashboard extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -188,7 +190,7 @@ class ComponentbuilderModelComponent_dashboard extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'component_dashboard__'.$id); ComponentbuilderHelper::set('component_dashboard__'.$id, $this->vastDevMod); // set a return value if found @@ -196,7 +198,7 @@ class ComponentbuilderModelComponent_dashboard extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -410,7 +412,7 @@ class ComponentbuilderModelComponent_dashboard extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_dashboard.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/component_files_folders.php b/admin/models/component_files_folders.php index a1bff0d3e..cec189d08 100644 --- a/admin/models/component_files_folders.php +++ b/admin/models/component_files_folders.php @@ -355,7 +355,7 @@ class ComponentbuilderModelComponent_files_folders extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_files_folders.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/component_modules.php b/admin/models/component_modules.php index 4319154ed..e1b43ce40 100644 --- a/admin/models/component_modules.php +++ b/admin/models/component_modules.php @@ -288,7 +288,7 @@ class ComponentbuilderModelComponent_modules extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_modules.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/component_mysql_tweaks.php b/admin/models/component_mysql_tweaks.php index d09d6297e..dea8a142b 100644 --- a/admin/models/component_mysql_tweaks.php +++ b/admin/models/component_mysql_tweaks.php @@ -318,7 +318,7 @@ class ComponentbuilderModelComponent_mysql_tweaks extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_mysql_tweaks.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/component_placeholders.php b/admin/models/component_placeholders.php index a4782f3be..19bbfa4f2 100644 --- a/admin/models/component_placeholders.php +++ b/admin/models/component_placeholders.php @@ -287,7 +287,7 @@ class ComponentbuilderModelComponent_placeholders extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_placeholders.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/component_plugins.php b/admin/models/component_plugins.php index 9bfb37af9..b54de992a 100644 --- a/admin/models/component_plugins.php +++ b/admin/models/component_plugins.php @@ -288,7 +288,7 @@ class ComponentbuilderModelComponent_plugins extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_plugins.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/component_site_views.php b/admin/models/component_site_views.php index c6d6b1667..ff52b18a7 100644 --- a/admin/models/component_site_views.php +++ b/admin/models/component_site_views.php @@ -322,7 +322,7 @@ class ComponentbuilderModelComponent_site_views extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_site_views.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/component_updates.php b/admin/models/component_updates.php index 3529af608..0bdb87c25 100644 --- a/admin/models/component_updates.php +++ b/admin/models/component_updates.php @@ -321,7 +321,7 @@ class ComponentbuilderModelComponent_updates extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('component_updates.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/componentbuilder.php b/admin/models/componentbuilder.php index 5dc5edac9..09523cd9f 100644 --- a/admin/models/componentbuilder.php +++ b/admin/models/componentbuilder.php @@ -32,7 +32,7 @@ class ComponentbuilderModelComponentbuilder extends ListModel 'main' => array('png.compiler', 'png.joomla_components', 'png.joomla_modules', 'png.joomla_plugins', 'png.powers', 'png.search', 'png||importjcbpackages||index.php?option=com_componentbuilder&view=joomla_components&task=joomla_components.smartImport', 'png.admin_views', 'png.custom_admin_views', 'png.site_views', 'png.template.add', 'png.templates', 'png.layouts', 'png.dynamic_get.add', 'png.dynamic_gets', 'png.custom_codes', 'png.placeholders', 'png.libraries', 'png.snippets', 'png.get_snippets', 'png.validation_rules', 'png.field.add', 'png.fields', 'png.fields.catid_qpo0O0oqp_com_componentbuilder_po0O0oq_field', 'png.fieldtypes', 'png.fieldtypes.catid_qpo0O0oqp_com_componentbuilder_po0O0oq_fieldtype', 'png.language_translations', 'png.servers', 'png.help_documents') ); // view access array - $viewAccess = array( + $viewAccess = [ 'compiler.submenu' => 'compiler.submenu', 'compiler.dashboard_list' => 'compiler.dashboard_list', 'search.access' => 'search.access', @@ -221,7 +221,8 @@ class ComponentbuilderModelComponentbuilder extends ListModel 'joomla_plugin_updates.access' => 'joomla_plugin_updates.access', 'joomla_plugin_files_folders_urls.create' => 'joomla_plugin_files_folders_urls.create', 'joomla_plugins_files_folders_urls.access' => 'joomla_plugin_files_folders_urls.access', - 'joomla_plugin_files_folders_urls.access' => 'joomla_plugin_files_folders_urls.access'); + 'joomla_plugin_files_folders_urls.access' => 'joomla_plugin_files_folders_urls.access', + ]; // loop over the $views foreach($viewGroups as $group => $views) { @@ -527,6 +528,12 @@ jQuery(document).ready( function($) { return '
'.JText::_('COM_COMPONENTBUILDER_THE_README_IS_LOADING').'..
'; } + /** + * get Current Version Bay adding JavaScript to the Page + * + * @return void + * @since 2.3.0 + */ public function getVersion() { // the call URL diff --git a/admin/models/custom_admin_view.php b/admin/models/custom_admin_view.php index ea3ccfe75..33e7b1269 100644 --- a/admin/models/custom_admin_view.php +++ b/admin/models/custom_admin_view.php @@ -16,6 +16,11 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Custom_admin_view Admin Model @@ -166,7 +171,7 @@ class ComponentbuilderModelCustom_admin_view extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'custom_admin_view__'.$id); ComponentbuilderHelper::set('custom_admin_view__'.$id, $this->vastDevMod); // set a return value if found @@ -174,7 +179,7 @@ class ComponentbuilderModelCustom_admin_view extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -336,7 +341,7 @@ class ComponentbuilderModelCustom_admin_view extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'custom_admin_view__'.$id); ComponentbuilderHelper::set('custom_admin_view__'.$id, $this->vastDevMod); // set a return value if found @@ -344,7 +349,7 @@ class ComponentbuilderModelCustom_admin_view extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -489,7 +494,7 @@ class ComponentbuilderModelCustom_admin_view extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -504,9 +509,9 @@ class ComponentbuilderModelCustom_admin_view extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } - + return $form; } @@ -568,7 +573,7 @@ class ComponentbuilderModelCustom_admin_view extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return parent::canEditState($record); } @@ -838,7 +843,7 @@ class ComponentbuilderModelCustom_admin_view extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('custom_admin_view'); } - if (!$this->canDo->get('core.create') || !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.create') && !$this->canDo->get('custom_admin_view.batch')) { return false; } @@ -981,7 +986,7 @@ class ComponentbuilderModelCustom_admin_view extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('custom_admin_view'); } - if (!$this->canDo->get('core.edit') && !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.edit') && !$this->canDo->get('custom_admin_view.batch')) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); return false; @@ -1094,44 +1099,44 @@ class ComponentbuilderModelCustom_admin_view extends AdminModel // always reset the snippets $data['snippet'] = 0; // if system name is empty create from name - if (empty($data['system_name']) || !ComponentbuilderHelper::checkString($data['system_name'])) + if (empty($data['system_name']) || !UtilitiesStringHelper::check($data['system_name'])) { $data['system_name'] = $data['name']; } // if codename is empty create from name - if (empty($data['codename']) || !ComponentbuilderHelper::checkString($data['codename'])) + if (empty($data['codename']) || !UtilitiesStringHelper::check($data['codename'])) { - $data['codename'] = ComponentbuilderHelper::safeString($data['name']); + $data['codename'] = UtilitiesStringHelper::safe($data['name']); } else { // always make safe string - $data['codename'] = ComponentbuilderHelper::safeString($data['codename']); + $data['codename'] = UtilitiesStringHelper::safe($data['codename']); } // if context is empty create from codename - if (empty($data['context']) || !ComponentbuilderHelper::checkString($data['context'])) + if (empty($data['context']) || !UtilitiesStringHelper::check($data['context'])) { $data['context'] = $data['codename']; } else { // always make safe string - $data['context'] = ComponentbuilderHelper::safeString($data['context']); + $data['context'] = UtilitiesStringHelper::safe($data['context']); } // Set the GUID if empty or not valid if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('custom_admin_view', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('custom_admin_view', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "custom_admin_view", $data['id'])) + while (!GuidHelper::valid($data['guid'], "custom_admin_view", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the custom_get items to data. if (isset($data['custom_get']) && is_array($data['custom_get'])) diff --git a/admin/models/custom_admin_views.php b/admin/models/custom_admin_views.php index 858694392..23313ee78 100644 --- a/admin/models/custom_admin_views.php +++ b/admin/models/custom_admin_views.php @@ -14,7 +14,7 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; -use VDM\Joomla\Componentbuilder\Utilities\FormHelper as JCBFormHelper; +use VDM\Joomla\Utilities\FormHelper as JCBFormHelper; use VDM\Joomla\Componentbuilder\Utilities\FilterHelper as JCBFilterHelper; /** diff --git a/admin/models/custom_code.php b/admin/models/custom_code.php index a07ef2d23..e514628f7 100644 --- a/admin/models/custom_code.php +++ b/admin/models/custom_code.php @@ -16,6 +16,10 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Custom_code Admin Model @@ -119,7 +123,7 @@ class ComponentbuilderModelCustom_code extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'custom_code__'.$id); ComponentbuilderHelper::set('custom_code__'.$id, $this->vastDevMod); // set a return value if found @@ -127,7 +131,7 @@ class ComponentbuilderModelCustom_code extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -191,7 +195,7 @@ class ComponentbuilderModelCustom_code extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'custom_code__'.$id); ComponentbuilderHelper::set('custom_code__'.$id, $this->vastDevMod); // set a return value if found @@ -199,7 +203,7 @@ class ComponentbuilderModelCustom_code extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -325,7 +329,7 @@ class ComponentbuilderModelCustom_code extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -397,7 +401,7 @@ class ComponentbuilderModelCustom_code extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('custom_code.edit.state', 'com_componentbuilder'); } @@ -957,8 +961,8 @@ class ComponentbuilderModelCustom_code extends AdminModel } // few checks with the new option of using custom code in custom code - if (isset($data['code']) && ($placeholders = ComponentbuilderHelper::getAllBetween($data['code'], '[CUSTOM' . 'CODE=', ']')) - && ComponentbuilderHelper::checkArray($placeholders)) + if (isset($data['code']) && ($placeholders = GetHelper::allBetween($data['code'], '[CUSTOM' . 'CODE=', ']')) + && UtilitiesArrayHelper::check($placeholders)) { // make sure custom code as Hash (automation) target does not have other custom code placeholders if (isset($data['target']) && 1 == $data['target']) diff --git a/admin/models/custom_codes.php b/admin/models/custom_codes.php index 2723d1153..3c89e7f11 100644 --- a/admin/models/custom_codes.php +++ b/admin/models/custom_codes.php @@ -14,6 +14,8 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\StringHelper; /** * Custom_codes List Model @@ -161,7 +163,7 @@ class ComponentbuilderModelCustom_codes extends ListModel } } - if (ComponentbuilderHelper::checkArray($items) && !isset($_export)) + if (UtilitiesArrayHelper::check($items) && !isset($_export)) { foreach ($items as $nr => &$item) { @@ -169,7 +171,7 @@ class ComponentbuilderModelCustom_codes extends ListModel { $item->component_system_name = $item->system_name; $item->path = '[CUSTO'.'MCODE='.$item->id.']'; // so it is not detected - if (ComponentbuilderHelper::checkString($item->function_name)) + if (StringHelper::check($item->function_name)) { $item->path = '[CUSTO'.'MCODE='.$item->function_name.']'; // so it is not detected } @@ -489,7 +491,7 @@ class ComponentbuilderModelCustom_codes extends ListModel array_unshift($items,$headers); } - if (ComponentbuilderHelper::checkArray($items) && !isset($_export)) + if (UtilitiesArrayHelper::check($items) && !isset($_export)) { foreach ($items as $nr => &$item) { @@ -497,7 +499,7 @@ class ComponentbuilderModelCustom_codes extends ListModel { $item->component_system_name = $item->system_name; $item->path = '[CUSTO'.'MCODE='.$item->id.']'; // so it is not detected - if (ComponentbuilderHelper::checkString($item->function_name)) + if (StringHelper::check($item->function_name)) { $item->path = '[CUSTO'.'MCODE='.$item->function_name.']'; // so it is not detected } diff --git a/admin/models/dynamic_get.php b/admin/models/dynamic_get.php index 7ddb2db1e..bbeddd0d7 100644 --- a/admin/models/dynamic_get.php +++ b/admin/models/dynamic_get.php @@ -16,6 +16,11 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Dynamic_get Admin Model @@ -159,7 +164,7 @@ class ComponentbuilderModelDynamic_get extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'dynamic_get__'.$id); ComponentbuilderHelper::set('dynamic_get__'.$id, $this->vastDevMod); // set a return value if found @@ -167,7 +172,7 @@ class ComponentbuilderModelDynamic_get extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -335,7 +340,7 @@ class ComponentbuilderModelDynamic_get extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'dynamic_get__'.$id); ComponentbuilderHelper::set('dynamic_get__'.$id, $this->vastDevMod); // set a return value if found @@ -343,7 +348,7 @@ class ComponentbuilderModelDynamic_get extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -503,7 +508,7 @@ class ComponentbuilderModelDynamic_get extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -518,9 +523,9 @@ class ComponentbuilderModelDynamic_get extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } - + // update the join_view_table (sub form) layout $form->setFieldAttribute('join_view_table', 'layout', ComponentbuilderHelper::getSubformLayout('dynamic_get', 'join_view_table')); @@ -588,7 +593,7 @@ class ComponentbuilderModelDynamic_get extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('dynamic_get.edit.state', 'com_componentbuilder'); } @@ -1152,15 +1157,15 @@ class ComponentbuilderModelDynamic_get extends AdminModel if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('dynamic_get', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('dynamic_get', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "dynamic_get", $data['id'])) + while (!GuidHelper::valid($data['guid'], "dynamic_get", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the join_db_table items to data. if (isset($data['join_db_table']) && is_array($data['join_db_table'])) diff --git a/admin/models/field.php b/admin/models/field.php index fb00103bb..de938d9f0 100644 --- a/admin/models/field.php +++ b/admin/models/field.php @@ -16,6 +16,13 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\String\FieldHelper; +use VDM\Joomla\Utilities\String\TypeHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Field Admin Model @@ -54,6 +61,8 @@ class ComponentbuilderModelField extends AdminModel 'indexes', 'null_switch', 'store', + 'medium_encryption_note', + 'basic_encryption_note', 'note_whmcs_encryption', 'note_expert_field_save_mode', 'initiator_on_save_model', @@ -66,6 +75,12 @@ class ComponentbuilderModelField extends AdminModel 'note_database_settings_needed' ) ), + 'type_info' => array( + 'fullwidth' => array( + 'helpnote', + 'xml' + ) + ), 'scripts' => array( 'left' => array( 'add_css_view', @@ -79,12 +94,6 @@ class ComponentbuilderModelField extends AdminModel 'add_javascript_views_footer', 'javascript_views_footer' ) - ), - 'type_info' => array( - 'fullwidth' => array( - 'helpnote', - 'xml' - ) ) ); @@ -150,7 +159,7 @@ class ComponentbuilderModelField extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'field__'.$id); ComponentbuilderHelper::set('field__'.$id, $this->vastDevMod); // set a return value if found @@ -158,7 +167,7 @@ class ComponentbuilderModelField extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -199,12 +208,6 @@ class ComponentbuilderModelField extends AdminModel $item->metadata = $registry->toArray(); } - if (!empty($item->on_get_model_field)) - { - // base64 Decode on_get_model_field. - $item->on_get_model_field = base64_decode($item->on_get_model_field); - } - if (!empty($item->on_save_model_field)) { // base64 Decode on_save_model_field. @@ -217,16 +220,10 @@ class ComponentbuilderModelField extends AdminModel $item->initiator_on_get_model = base64_decode($item->initiator_on_get_model); } - if (!empty($item->css_view)) + if (!empty($item->initiator_on_save_model)) { - // base64 Decode css_view. - $item->css_view = base64_decode($item->css_view); - } - - if (!empty($item->javascript_view_footer)) - { - // base64 Decode javascript_view_footer. - $item->javascript_view_footer = base64_decode($item->javascript_view_footer); + // base64 Decode initiator_on_save_model. + $item->initiator_on_save_model = base64_decode($item->initiator_on_save_model); } if (!empty($item->css_views)) @@ -235,18 +232,30 @@ class ComponentbuilderModelField extends AdminModel $item->css_views = base64_decode($item->css_views); } + if (!empty($item->css_view)) + { + // base64 Decode css_view. + $item->css_view = base64_decode($item->css_view); + } + + if (!empty($item->on_get_model_field)) + { + // base64 Decode on_get_model_field. + $item->on_get_model_field = base64_decode($item->on_get_model_field); + } + + if (!empty($item->javascript_view_footer)) + { + // base64 Decode javascript_view_footer. + $item->javascript_view_footer = base64_decode($item->javascript_view_footer); + } + if (!empty($item->javascript_views_footer)) { // base64 Decode javascript_views_footer. $item->javascript_views_footer = base64_decode($item->javascript_views_footer); } - if (!empty($item->initiator_on_save_model)) - { - // base64 Decode initiator_on_save_model. - $item->initiator_on_save_model = base64_decode($item->initiator_on_save_model); - } - if (!empty($item->xml)) { // JSON Decode xml. @@ -270,7 +279,7 @@ class ComponentbuilderModelField extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'field__'.$id); ComponentbuilderHelper::set('field__'.$id, $this->vastDevMod); // set a return value if found @@ -278,7 +287,7 @@ class ComponentbuilderModelField extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -402,7 +411,7 @@ class ComponentbuilderModelField extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -417,7 +426,7 @@ class ComponentbuilderModelField extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } return $form; @@ -481,7 +490,7 @@ class ComponentbuilderModelField extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('field.edit.state', 'com_componentbuilder'); } @@ -1076,14 +1085,14 @@ class ComponentbuilderModelField extends AdminModel $typephp[$x] = $input->get('property_type_php' . $x, null, 'RAW'); } // make sure we have an array - if (ComponentbuilderHelper::checkArray($properties)) + if (UtilitiesArrayHelper::check($properties)) { // set the bucket $bucket = array(); foreach($properties as $property) { // make sure we have the correct values - if (ComponentbuilderHelper::checkArray($property) && isset($property['name']) && ComponentbuilderHelper::checkString($property['name']) && (isset($property['value']) || 'default' === $property['name'])) + if (UtilitiesArrayHelper::check($property) && isset($property['name']) && UtilitiesStringHelper::check($property['name']) && (isset($property['value']) || 'default' === $property['name'])) { // some fixes, just in case (more can be added) switch ($property['name']) @@ -1097,11 +1106,11 @@ class ComponentbuilderModelField extends AdminModel } else { - $property['value'] = ComponentbuilderHelper::safeFieldName($property['value']); + $property['value'] = FieldHelper::safe($property['value']); } break; case 'type': - $property['value'] = ComponentbuilderHelper::safeTypeName($property['value']); + $property['value'] = TypeHelper::safe($property['value']); break; } // load the property @@ -1109,15 +1118,15 @@ class ComponentbuilderModelField extends AdminModel } } // make sure we have an array - if (ComponentbuilderHelper::checkArray($extraproperties)) + if (UtilitiesArrayHelper::check($extraproperties)) { foreach($extraproperties as $xproperty) { // make sure we have the correct values - if (ComponentbuilderHelper::checkArray($xproperty) && isset($xproperty['name']) && ComponentbuilderHelper::checkString($xproperty['name']) && isset($xproperty['value'])) + if (UtilitiesArrayHelper::check($xproperty) && isset($xproperty['name']) && UtilitiesStringHelper::check($xproperty['name']) && isset($xproperty['value'])) { // load the extra property - $bucket[] = "\t" . ComponentbuilderHelper::safeString($xproperty['name']) . '="' . str_replace('"', """, $xproperty['value']) . '"'; + $bucket[] = "\t" . UtilitiesStringHelper::safe($xproperty['name']) . '="' . str_replace('"', """, $xproperty['value']) . '"'; } } } @@ -1125,14 +1134,14 @@ class ComponentbuilderModelField extends AdminModel foreach ($typephp as $x => $phpvalue) { // make sure we have a string - if (ComponentbuilderHelper::checkString($phpvalue)) + if (UtilitiesStringHelper::check($phpvalue)) { // load the type_php property $bucket[] = "\t" . 'type_php' . $x . '_1="__.o0=base64=Oo.__' . base64_encode($phpvalue) . '"'; } } // if the bucket has been loaded - if (ComponentbuilderHelper::checkArray($bucket)) + if (UtilitiesArrayHelper::check($bucket)) { $data['xml'] = ""; } @@ -1142,15 +1151,15 @@ class ComponentbuilderModelField extends AdminModel if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('field', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('field', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "field", $data['id'])) + while (!GuidHelper::valid($data['guid'], "field", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the xml string to JSON string. if (isset($data['xml'])) @@ -1158,12 +1167,6 @@ class ComponentbuilderModelField extends AdminModel $data['xml'] = (string) json_encode($data['xml']); } - // Set the on_get_model_field string to base64 string. - if (isset($data['on_get_model_field'])) - { - $data['on_get_model_field'] = base64_encode($data['on_get_model_field']); - } - // Set the on_save_model_field string to base64 string. if (isset($data['on_save_model_field'])) { @@ -1176,16 +1179,10 @@ class ComponentbuilderModelField extends AdminModel $data['initiator_on_get_model'] = base64_encode($data['initiator_on_get_model']); } - // Set the css_view string to base64 string. - if (isset($data['css_view'])) + // Set the initiator_on_save_model string to base64 string. + if (isset($data['initiator_on_save_model'])) { - $data['css_view'] = base64_encode($data['css_view']); - } - - // Set the javascript_view_footer string to base64 string. - if (isset($data['javascript_view_footer'])) - { - $data['javascript_view_footer'] = base64_encode($data['javascript_view_footer']); + $data['initiator_on_save_model'] = base64_encode($data['initiator_on_save_model']); } // Set the css_views string to base64 string. @@ -1194,17 +1191,29 @@ class ComponentbuilderModelField extends AdminModel $data['css_views'] = base64_encode($data['css_views']); } + // Set the css_view string to base64 string. + if (isset($data['css_view'])) + { + $data['css_view'] = base64_encode($data['css_view']); + } + + // Set the on_get_model_field string to base64 string. + if (isset($data['on_get_model_field'])) + { + $data['on_get_model_field'] = base64_encode($data['on_get_model_field']); + } + + // Set the javascript_view_footer string to base64 string. + if (isset($data['javascript_view_footer'])) + { + $data['javascript_view_footer'] = base64_encode($data['javascript_view_footer']); + } + // Set the javascript_views_footer string to base64 string. if (isset($data['javascript_views_footer'])) { $data['javascript_views_footer'] = base64_encode($data['javascript_views_footer']); } - - // Set the initiator_on_save_model string to base64 string. - if (isset($data['initiator_on_save_model'])) - { - $data['initiator_on_save_model'] = base64_encode($data['initiator_on_save_model']); - } // Set the Params Items to data if (isset($data['params']) && is_array($data['params'])) diff --git a/admin/models/fields.php b/admin/models/fields.php index b0b693373..c65e79af5 100644 --- a/admin/models/fields.php +++ b/admin/models/fields.php @@ -14,8 +14,9 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; -use VDM\Joomla\Componentbuilder\Utilities\FormHelper as JCBFormHelper; +use VDM\Joomla\Utilities\FormHelper as JCBFormHelper; use VDM\Joomla\Componentbuilder\Utilities\FilterHelper as JCBFilterHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; /** * Fields List Model @@ -411,7 +412,7 @@ class ComponentbuilderModelFields extends ListModel } } // now check if we have IDs - if ($get_ids && ComponentbuilderHelper::checkArray($field_ids)) + if ($get_ids && UtilitiesArrayHelper::check($field_ids)) { $query->where($db->quoteName('a.id') . ' IN (' . implode(',', $field_ids) . ')'); } @@ -676,7 +677,7 @@ class ComponentbuilderModelFields extends ListModel } } // now check if we have IDs - if ($get_ids && ComponentbuilderHelper::checkArray($field_ids)) + if ($get_ids && UtilitiesArrayHelper::check($field_ids)) { $query->where($db->quoteName('a.id') . ' IN (' . implode(',', $field_ids) . ')'); } @@ -711,22 +712,22 @@ class ComponentbuilderModelFields extends ListModel continue; } - // decode on_get_model_field - $item->on_get_model_field = base64_decode($item->on_get_model_field); // decode on_save_model_field $item->on_save_model_field = base64_decode($item->on_save_model_field); // decode initiator_on_get_model $item->initiator_on_get_model = base64_decode($item->initiator_on_get_model); - // decode css_view - $item->css_view = base64_decode($item->css_view); - // decode javascript_view_footer - $item->javascript_view_footer = base64_decode($item->javascript_view_footer); - // decode css_views - $item->css_views = base64_decode($item->css_views); - // decode javascript_views_footer - $item->javascript_views_footer = base64_decode($item->javascript_views_footer); // decode initiator_on_save_model $item->initiator_on_save_model = base64_decode($item->initiator_on_save_model); + // decode css_views + $item->css_views = base64_decode($item->css_views); + // decode css_view + $item->css_view = base64_decode($item->css_view); + // decode on_get_model_field + $item->on_get_model_field = base64_decode($item->on_get_model_field); + // decode javascript_view_footer + $item->javascript_view_footer = base64_decode($item->javascript_view_footer); + // decode javascript_views_footer + $item->javascript_views_footer = base64_decode($item->javascript_views_footer); // unset the values we don't want exported. unset($item->asset_id); unset($item->checked_out); diff --git a/admin/models/fields/adminlistvieworderfields.php b/admin/models/fields/adminlistvieworderfields.php index c8618cd71..8dc7f43f1 100644 --- a/admin/models/fields/adminlistvieworderfields.php +++ b/admin/models/fields/adminlistvieworderfields.php @@ -120,8 +120,17 @@ class JFormFieldAdminlistvieworderfields extends JFormFieldList foreach($items as $item) { // get the field name (TODO this could slow down the system so we will need to improve on this) - $field_name = ComponentbuilderHelper::safeFieldName(ComponentbuilderHelper::getBetween(json_decode($item->xml),'name="','"')); - $options[] = JHtml::_('select.option', $item->id, $item->name . ' [ ' . $field_name . ' - ' . $item->type . ' ]'); + if (isset($item->xml) && ComponentbuilderHelper::checkJson($item->xml)) + { + $field_xml = json_decode($item->xml); + $field_name = ComponentbuilderHelper::getBetween($field_xml,'name="','"'); + $field_name = ComponentbuilderHelper::safeFieldName($field_name); + $options[] = JHtml::_('select.option', $item->id, $item->name . ' [ ' . $field_name . ' - ' . $item->type . ' ]'); + } + else + { + $options[] = JHtml::_('select.option', $item->id, $item->name . ' [ empty - ' . $item->type . ' ]'); + } } } return $options; diff --git a/admin/models/fields/adminviewsfilteraddcustombutton.php b/admin/models/fields/adminviewsfilteraddcustombutton.php index 7f226d74d..641ab9c6a 100644 --- a/admin/models/fields/adminviewsfilteraddcustombutton.php +++ b/admin/models/fields/adminviewsfilteraddcustombutton.php @@ -49,21 +49,21 @@ class JFormFieldAdminviewsfilteraddcustombutton extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_ADD_CUSTOM_BUTTONS') . ' -'); - if ($results) + if ($_results) { // get admin_viewsmodel - $model = ComponentbuilderHelper::getModel('admin_views'); - $results = array_unique($results); - foreach ($results as $add_custom_button) + $_model = ComponentbuilderHelper::getModel('admin_views'); + $_results = array_unique($_results); + foreach ($_results as $add_custom_button) { // Translate the add_custom_button selection - $text = $model->selectionTranslation($add_custom_button,'add_custom_button'); + $_text = $_model->selectionTranslation($add_custom_button,'add_custom_button'); // Now add the add_custom_button and its text to the options array - $_filter[] = JHtml::_('select.option', $add_custom_button, JText::_($text)); + $_filter[] = JHtml::_('select.option', $add_custom_button, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/adminviewsfilteraddcustomimport.php b/admin/models/fields/adminviewsfilteraddcustomimport.php index d3deaa8b1..30a7adfa1 100644 --- a/admin/models/fields/adminviewsfilteraddcustomimport.php +++ b/admin/models/fields/adminviewsfilteraddcustomimport.php @@ -49,21 +49,21 @@ class JFormFieldAdminviewsfilteraddcustomimport extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_ADD_CUSTOM_IMPORT') . ' -'); - if ($results) + if ($_results) { // get admin_viewsmodel - $model = ComponentbuilderHelper::getModel('admin_views'); - $results = array_unique($results); - foreach ($results as $add_custom_import) + $_model = ComponentbuilderHelper::getModel('admin_views'); + $_results = array_unique($_results); + foreach ($_results as $add_custom_import) { // Translate the add_custom_import selection - $text = $model->selectionTranslation($add_custom_import,'add_custom_import'); + $_text = $_model->selectionTranslation($add_custom_import,'add_custom_import'); // Now add the add_custom_import and its text to the options array - $_filter[] = JHtml::_('select.option', $add_custom_import, JText::_($text)); + $_filter[] = JHtml::_('select.option', $add_custom_import, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/adminviewsfilteraddfadein.php b/admin/models/fields/adminviewsfilteraddfadein.php index 61dd5f4d0..5e1e42671 100644 --- a/admin/models/fields/adminviewsfilteraddfadein.php +++ b/admin/models/fields/adminviewsfilteraddfadein.php @@ -49,21 +49,21 @@ class JFormFieldAdminviewsfilteraddfadein extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_FADE_IN_AFFECT') . ' -'); - if ($results) + if ($_results) { // get admin_viewsmodel - $model = ComponentbuilderHelper::getModel('admin_views'); - $results = array_unique($results); - foreach ($results as $add_fadein) + $_model = ComponentbuilderHelper::getModel('admin_views'); + $_results = array_unique($_results); + foreach ($_results as $add_fadein) { // Translate the add_fadein selection - $text = $model->selectionTranslation($add_fadein,'add_fadein'); + $_text = $_model->selectionTranslation($add_fadein,'add_fadein'); // Now add the add_fadein and its text to the options array - $_filter[] = JHtml::_('select.option', $add_fadein, JText::_($text)); + $_filter[] = JHtml::_('select.option', $add_fadein, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/adminviewsfilteraddphpajax.php b/admin/models/fields/adminviewsfilteraddphpajax.php index 62eb83995..ab57b2afa 100644 --- a/admin/models/fields/adminviewsfilteraddphpajax.php +++ b/admin/models/fields/adminviewsfilteraddphpajax.php @@ -49,21 +49,21 @@ class JFormFieldAdminviewsfilteraddphpajax extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_ADD_PHP_AJAX') . ' -'); - if ($results) + if ($_results) { // get admin_viewsmodel - $model = ComponentbuilderHelper::getModel('admin_views'); - $results = array_unique($results); - foreach ($results as $add_php_ajax) + $_model = ComponentbuilderHelper::getModel('admin_views'); + $_results = array_unique($_results); + foreach ($_results as $add_php_ajax) { // Translate the add_php_ajax selection - $text = $model->selectionTranslation($add_php_ajax,'add_php_ajax'); + $_text = $_model->selectionTranslation($add_php_ajax,'add_php_ajax'); // Now add the add_php_ajax and its text to the options array - $_filter[] = JHtml::_('select.option', $add_php_ajax, JText::_($text)); + $_filter[] = JHtml::_('select.option', $add_php_ajax, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/adminviewsfiltertype.php b/admin/models/fields/adminviewsfiltertype.php index b2dc7cba7..4fc3390b4 100644 --- a/admin/models/fields/adminviewsfiltertype.php +++ b/admin/models/fields/adminviewsfiltertype.php @@ -49,20 +49,20 @@ class JFormFieldAdminviewsfiltertype extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); - if ($results) + if ($_results) { // get admin_viewsmodel - $model = ComponentbuilderHelper::getModel('admin_views'); - $results = array_unique($results); - foreach ($results as $type) + $_model = ComponentbuilderHelper::getModel('admin_views'); + $_results = array_unique($_results); + foreach ($_results as $type) { // Translate the type selection - $text = $model->selectionTranslation($type,'type'); + $_text = $_model->selectionTranslation($type,'type'); // Now add the type and its text to the options array - $_filter[] = JHtml::_('select.option', $type, JText::_($text)); + $_filter[] = JHtml::_('select.option', $type, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/classextendingsfilterextensiontype.php b/admin/models/fields/classextendingsfilterextensiontype.php index 11d98adab..b1b5ee8a3 100644 --- a/admin/models/fields/classextendingsfilterextensiontype.php +++ b/admin/models/fields/classextendingsfilterextensiontype.php @@ -49,21 +49,21 @@ class JFormFieldClassextendingsfilterextensiontype extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_TYPE') . ' -'); - if ($results) + if ($_results) { // get class_extendingsmodel - $model = ComponentbuilderHelper::getModel('class_extendings'); - $results = array_unique($results); - foreach ($results as $extension_type) + $_model = ComponentbuilderHelper::getModel('class_extendings'); + $_results = array_unique($_results); + foreach ($_results as $extension_type) { // Translate the extension_type selection - $text = $model->selectionTranslation($extension_type,'extension_type'); + $_text = $_model->selectionTranslation($extension_type,'extension_type'); // Now add the extension_type and its text to the options array - $_filter[] = JHtml::_('select.option', $extension_type, JText::_($text)); + $_filter[] = JHtml::_('select.option', $extension_type, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/classmethodsfilterextensiontype.php b/admin/models/fields/classmethodsfilterextensiontype.php index ebc580b3a..dee3ff2e7 100644 --- a/admin/models/fields/classmethodsfilterextensiontype.php +++ b/admin/models/fields/classmethodsfilterextensiontype.php @@ -49,21 +49,21 @@ class JFormFieldClassmethodsfilterextensiontype extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_TYPE') . ' -'); - if ($results) + if ($_results) { // get class_methodsmodel - $model = ComponentbuilderHelper::getModel('class_methods'); - $results = array_unique($results); - foreach ($results as $extension_type) + $_model = ComponentbuilderHelper::getModel('class_methods'); + $_results = array_unique($_results); + foreach ($_results as $extension_type) { // Translate the extension_type selection - $text = $model->selectionTranslation($extension_type,'extension_type'); + $_text = $_model->selectionTranslation($extension_type,'extension_type'); // Now add the extension_type and its text to the options array - $_filter[] = JHtml::_('select.option', $extension_type, JText::_($text)); + $_filter[] = JHtml::_('select.option', $extension_type, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/classmethodsfiltervisibility.php b/admin/models/fields/classmethodsfiltervisibility.php index ee4297369..34e3f4377 100644 --- a/admin/models/fields/classmethodsfiltervisibility.php +++ b/admin/models/fields/classmethodsfiltervisibility.php @@ -49,21 +49,21 @@ class JFormFieldClassmethodsfiltervisibility extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_VISIBILITY') . ' -'); - if ($results) + if ($_results) { // get class_methodsmodel - $model = ComponentbuilderHelper::getModel('class_methods'); - $results = array_unique($results); - foreach ($results as $visibility) + $_model = ComponentbuilderHelper::getModel('class_methods'); + $_results = array_unique($_results); + foreach ($_results as $visibility) { // Translate the visibility selection - $text = $model->selectionTranslation($visibility,'visibility'); + $_text = $_model->selectionTranslation($visibility,'visibility'); // Now add the visibility and its text to the options array - $_filter[] = JHtml::_('select.option', $visibility, JText::_($text)); + $_filter[] = JHtml::_('select.option', $visibility, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/classpropertiesfilterextensiontype.php b/admin/models/fields/classpropertiesfilterextensiontype.php index 5acb6d3e1..f06d37be2 100644 --- a/admin/models/fields/classpropertiesfilterextensiontype.php +++ b/admin/models/fields/classpropertiesfilterextensiontype.php @@ -49,21 +49,21 @@ class JFormFieldClasspropertiesfilterextensiontype extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_TYPE') . ' -'); - if ($results) + if ($_results) { // get class_propertiesmodel - $model = ComponentbuilderHelper::getModel('class_properties'); - $results = array_unique($results); - foreach ($results as $extension_type) + $_model = ComponentbuilderHelper::getModel('class_properties'); + $_results = array_unique($_results); + foreach ($_results as $extension_type) { // Translate the extension_type selection - $text = $model->selectionTranslation($extension_type,'extension_type'); + $_text = $_model->selectionTranslation($extension_type,'extension_type'); // Now add the extension_type and its text to the options array - $_filter[] = JHtml::_('select.option', $extension_type, JText::_($text)); + $_filter[] = JHtml::_('select.option', $extension_type, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/classpropertiesfiltervisibility.php b/admin/models/fields/classpropertiesfiltervisibility.php index 927d33413..ef1f4d5af 100644 --- a/admin/models/fields/classpropertiesfiltervisibility.php +++ b/admin/models/fields/classpropertiesfiltervisibility.php @@ -49,21 +49,21 @@ class JFormFieldClasspropertiesfiltervisibility extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_VISIBILITY') . ' -'); - if ($results) + if ($_results) { // get class_propertiesmodel - $model = ComponentbuilderHelper::getModel('class_properties'); - $results = array_unique($results); - foreach ($results as $visibility) + $_model = ComponentbuilderHelper::getModel('class_properties'); + $_results = array_unique($_results); + foreach ($_results as $visibility) { // Translate the visibility selection - $text = $model->selectionTranslation($visibility,'visibility'); + $_text = $_model->selectionTranslation($visibility,'visibility'); // Now add the visibility and its text to the options array - $_filter[] = JHtml::_('select.option', $visibility, JText::_($text)); + $_filter[] = JHtml::_('select.option', $visibility, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/customadminviewsfilteraddcustombutton.php b/admin/models/fields/customadminviewsfilteraddcustombutton.php index 13a94b21e..d784bae20 100644 --- a/admin/models/fields/customadminviewsfilteraddcustombutton.php +++ b/admin/models/fields/customadminviewsfilteraddcustombutton.php @@ -49,21 +49,21 @@ class JFormFieldCustomadminviewsfilteraddcustombutton extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_ADD_CUSTOM_BUTTONS') . ' -'); - if ($results) + if ($_results) { // get custom_admin_viewsmodel - $model = ComponentbuilderHelper::getModel('custom_admin_views'); - $results = array_unique($results); - foreach ($results as $add_custom_button) + $_model = ComponentbuilderHelper::getModel('custom_admin_views'); + $_results = array_unique($_results); + foreach ($_results as $add_custom_button) { // Translate the add_custom_button selection - $text = $model->selectionTranslation($add_custom_button,'add_custom_button'); + $_text = $_model->selectionTranslation($add_custom_button,'add_custom_button'); // Now add the add_custom_button and its text to the options array - $_filter[] = JHtml::_('select.option', $add_custom_button, JText::_($text)); + $_filter[] = JHtml::_('select.option', $add_custom_button, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/customadminviewsfilteraddphpajax.php b/admin/models/fields/customadminviewsfilteraddphpajax.php index 0756975bd..2ed8d2607 100644 --- a/admin/models/fields/customadminviewsfilteraddphpajax.php +++ b/admin/models/fields/customadminviewsfilteraddphpajax.php @@ -49,21 +49,21 @@ class JFormFieldCustomadminviewsfilteraddphpajax extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_ADD_PHP_AJAX') . ' -'); - if ($results) + if ($_results) { // get custom_admin_viewsmodel - $model = ComponentbuilderHelper::getModel('custom_admin_views'); - $results = array_unique($results); - foreach ($results as $add_php_ajax) + $_model = ComponentbuilderHelper::getModel('custom_admin_views'); + $_results = array_unique($_results); + foreach ($_results as $add_php_ajax) { // Translate the add_php_ajax selection - $text = $model->selectionTranslation($add_php_ajax,'add_php_ajax'); + $_text = $_model->selectionTranslation($add_php_ajax,'add_php_ajax'); // Now add the add_php_ajax and its text to the options array - $_filter[] = JHtml::_('select.option', $add_php_ajax, JText::_($text)); + $_filter[] = JHtml::_('select.option', $add_php_ajax, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/customcodesfiltercommenttype.php b/admin/models/fields/customcodesfiltercommenttype.php index d56f38e99..a184601d5 100644 --- a/admin/models/fields/customcodesfiltercommenttype.php +++ b/admin/models/fields/customcodesfiltercommenttype.php @@ -49,21 +49,21 @@ class JFormFieldCustomcodesfiltercommenttype extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_COMMENT_TYPE_USED_IN_PLACEHOLDER') . ' -'); - if ($results) + if ($_results) { // get custom_codesmodel - $model = ComponentbuilderHelper::getModel('custom_codes'); - $results = array_unique($results); - foreach ($results as $comment_type) + $_model = ComponentbuilderHelper::getModel('custom_codes'); + $_results = array_unique($_results); + foreach ($_results as $comment_type) { // Translate the comment_type selection - $text = $model->selectionTranslation($comment_type,'comment_type'); + $_text = $_model->selectionTranslation($comment_type,'comment_type'); // Now add the comment_type and its text to the options array - $_filter[] = JHtml::_('select.option', $comment_type, JText::_($text)); + $_filter[] = JHtml::_('select.option', $comment_type, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/customcodesfiltertarget.php b/admin/models/fields/customcodesfiltertarget.php index 2789fe560..6d0b300b1 100644 --- a/admin/models/fields/customcodesfiltertarget.php +++ b/admin/models/fields/customcodesfiltertarget.php @@ -49,21 +49,21 @@ class JFormFieldCustomcodesfiltertarget extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_TARGET') . ' -'); - if ($results) + if ($_results) { // get custom_codesmodel - $model = ComponentbuilderHelper::getModel('custom_codes'); - $results = array_unique($results); - foreach ($results as $target) + $_model = ComponentbuilderHelper::getModel('custom_codes'); + $_results = array_unique($_results); + foreach ($_results as $target) { // Translate the target selection - $text = $model->selectionTranslation($target,'target'); + $_text = $_model->selectionTranslation($target,'target'); // Now add the target and its text to the options array - $_filter[] = JHtml::_('select.option', $target, JText::_($text)); + $_filter[] = JHtml::_('select.option', $target, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/customcodesfiltertype.php b/admin/models/fields/customcodesfiltertype.php index 205711ea0..6706346d0 100644 --- a/admin/models/fields/customcodesfiltertype.php +++ b/admin/models/fields/customcodesfiltertype.php @@ -49,21 +49,21 @@ class JFormFieldCustomcodesfiltertype extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_ADD_TYPE') . ' -'); - if ($results) + if ($_results) { // get custom_codesmodel - $model = ComponentbuilderHelper::getModel('custom_codes'); - $results = array_unique($results); - foreach ($results as $type) + $_model = ComponentbuilderHelper::getModel('custom_codes'); + $_results = array_unique($_results); + foreach ($_results as $type) { // Translate the type selection - $text = $model->selectionTranslation($type,'type'); + $_text = $_model->selectionTranslation($type,'type'); // Now add the type and its text to the options array - $_filter[] = JHtml::_('select.option', $type, JText::_($text)); + $_filter[] = JHtml::_('select.option', $type, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/dynamicgetsfiltergettype.php b/admin/models/fields/dynamicgetsfiltergettype.php index 77ddc0e71..2173564cd 100644 --- a/admin/models/fields/dynamicgetsfiltergettype.php +++ b/admin/models/fields/dynamicgetsfiltergettype.php @@ -49,21 +49,21 @@ class JFormFieldDynamicgetsfiltergettype extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_GETTYPE') . ' -'); - if ($results) + if ($_results) { // get dynamic_getsmodel - $model = ComponentbuilderHelper::getModel('dynamic_gets'); - $results = array_unique($results); - foreach ($results as $gettype) + $_model = ComponentbuilderHelper::getModel('dynamic_gets'); + $_results = array_unique($_results); + foreach ($_results as $gettype) { // Translate the gettype selection - $text = $model->selectionTranslation($gettype,'gettype'); + $_text = $_model->selectionTranslation($gettype,'gettype'); // Now add the gettype and its text to the options array - $_filter[] = JHtml::_('select.option', $gettype, JText::_($text)); + $_filter[] = JHtml::_('select.option', $gettype, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/dynamicgetsfiltermainsource.php b/admin/models/fields/dynamicgetsfiltermainsource.php index 97f27ae89..621b8db5a 100644 --- a/admin/models/fields/dynamicgetsfiltermainsource.php +++ b/admin/models/fields/dynamicgetsfiltermainsource.php @@ -49,21 +49,21 @@ class JFormFieldDynamicgetsfiltermainsource extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_MAIN_SOURCE') . ' -'); - if ($results) + if ($_results) { // get dynamic_getsmodel - $model = ComponentbuilderHelper::getModel('dynamic_gets'); - $results = array_unique($results); - foreach ($results as $main_source) + $_model = ComponentbuilderHelper::getModel('dynamic_gets'); + $_results = array_unique($_results); + foreach ($_results as $main_source) { // Translate the main_source selection - $text = $model->selectionTranslation($main_source,'main_source'); + $_text = $_model->selectionTranslation($main_source,'main_source'); // Now add the main_source and its text to the options array - $_filter[] = JHtml::_('select.option', $main_source, JText::_($text)); + $_filter[] = JHtml::_('select.option', $main_source, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/fields.php b/admin/models/fields/fields.php index 95ce61061..17d8b5ca6 100644 --- a/admin/models/fields/fields.php +++ b/admin/models/fields/fields.php @@ -51,8 +51,17 @@ class JFormFieldFields extends JFormFieldList foreach($items as $item) { // get the field name (TODO this could slow down the system so we will need to improve on this) - $field_name = ComponentbuilderHelper::safeFieldName(ComponentbuilderHelper::getBetween(json_decode($item->xml),'name="','"')); - $options[] = JHtml::_('select.option', $item->id, $item->field_name . ' [ ' . $field_name . ' - ' . $item->type . ' ]'); + if (isset($item->xml) && ComponentbuilderHelper::checkJson($item->xml)) + { + $field_xml = json_decode($item->xml); + $field_name = ComponentbuilderHelper::getBetween($field_xml,'name="','"'); + $field_name = ComponentbuilderHelper::safeFieldName($field_name); + $options[] = JHtml::_('select.option', $item->id, $item->field_name . ' [ ' . $field_name . ' - ' . $item->type . ' ]'); + } + else + { + $options[] = JHtml::_('select.option', $item->id, $item->field_name . ' [ empty - ' . $item->type . ' ]'); + } } } diff --git a/admin/models/fields/fieldsfilterdatatype.php b/admin/models/fields/fieldsfilterdatatype.php index ad7adc9fb..cd4192e54 100644 --- a/admin/models/fields/fieldsfilterdatatype.php +++ b/admin/models/fields/fieldsfilterdatatype.php @@ -49,21 +49,21 @@ class JFormFieldFieldsfilterdatatype extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_DATA_TYPE') . ' -'); - if ($results) + if ($_results) { // get fieldsmodel - $model = ComponentbuilderHelper::getModel('fields'); - $results = array_unique($results); - foreach ($results as $datatype) + $_model = ComponentbuilderHelper::getModel('fields'); + $_results = array_unique($_results); + foreach ($_results as $datatype) { // Translate the datatype selection - $text = $model->selectionTranslation($datatype,'datatype'); + $_text = $_model->selectionTranslation($datatype,'datatype'); // Now add the datatype and its text to the options array - $_filter[] = JHtml::_('select.option', $datatype, JText::_($text)); + $_filter[] = JHtml::_('select.option', $datatype, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/fieldsfilterindexes.php b/admin/models/fields/fieldsfilterindexes.php index e5ea7543f..fc84a5a62 100644 --- a/admin/models/fields/fieldsfilterindexes.php +++ b/admin/models/fields/fieldsfilterindexes.php @@ -49,21 +49,21 @@ class JFormFieldFieldsfilterindexes extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_INDEXES_TYPE') . ' -'); - if ($results) + if ($_results) { // get fieldsmodel - $model = ComponentbuilderHelper::getModel('fields'); - $results = array_unique($results); - foreach ($results as $indexes) + $_model = ComponentbuilderHelper::getModel('fields'); + $_results = array_unique($_results); + foreach ($_results as $indexes) { // Translate the indexes selection - $text = $model->selectionTranslation($indexes,'indexes'); + $_text = $_model->selectionTranslation($indexes,'indexes'); // Now add the indexes and its text to the options array - $_filter[] = JHtml::_('select.option', $indexes, JText::_($text)); + $_filter[] = JHtml::_('select.option', $indexes, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/fieldsfilternullswitch.php b/admin/models/fields/fieldsfilternullswitch.php index 34eaa5fe5..6444ec9bc 100644 --- a/admin/models/fields/fieldsfilternullswitch.php +++ b/admin/models/fields/fieldsfilternullswitch.php @@ -49,21 +49,21 @@ class JFormFieldFieldsfilternullswitch extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_NULL_SWITCH') . ' -'); - if ($results) + if ($_results) { // get fieldsmodel - $model = ComponentbuilderHelper::getModel('fields'); - $results = array_unique($results); - foreach ($results as $null_switch) + $_model = ComponentbuilderHelper::getModel('fields'); + $_results = array_unique($_results); + foreach ($_results as $null_switch) { // Translate the null_switch selection - $text = $model->selectionTranslation($null_switch,'null_switch'); + $_text = $_model->selectionTranslation($null_switch,'null_switch'); // Now add the null_switch and its text to the options array - $_filter[] = JHtml::_('select.option', $null_switch, JText::_($text)); + $_filter[] = JHtml::_('select.option', $null_switch, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/fieldsfilterstore.php b/admin/models/fields/fieldsfilterstore.php index 41b975d50..1946f185e 100644 --- a/admin/models/fields/fieldsfilterstore.php +++ b/admin/models/fields/fieldsfilterstore.php @@ -49,21 +49,21 @@ class JFormFieldFieldsfilterstore extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); - $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_MODELING_METHOD') . ' -'); + $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_MODELLING_METHOD') . ' -'); - if ($results) + if ($_results) { // get fieldsmodel - $model = ComponentbuilderHelper::getModel('fields'); - $results = array_unique($results); - foreach ($results as $store) + $_model = ComponentbuilderHelper::getModel('fields'); + $_results = array_unique($_results); + foreach ($_results as $store) { // Translate the store selection - $text = $model->selectionTranslation($store,'store'); + $_text = $_model->selectionTranslation($store,'store'); // Now add the store and its text to the options array - $_filter[] = JHtml::_('select.option', $store, JText::_($text)); + $_filter[] = JHtml::_('select.option', $store, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/helpdocumentsfilterlocation.php b/admin/models/fields/helpdocumentsfilterlocation.php index 57acba003..a9f317ff1 100644 --- a/admin/models/fields/helpdocumentsfilterlocation.php +++ b/admin/models/fields/helpdocumentsfilterlocation.php @@ -49,21 +49,21 @@ class JFormFieldHelpdocumentsfilterlocation extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_LOCATION') . ' -'); - if ($results) + if ($_results) { // get help_documentsmodel - $model = ComponentbuilderHelper::getModel('help_documents'); - $results = array_unique($results); - foreach ($results as $location) + $_model = ComponentbuilderHelper::getModel('help_documents'); + $_results = array_unique($_results); + foreach ($_results as $location) { // Translate the location selection - $text = $model->selectionTranslation($location,'location'); + $_text = $_model->selectionTranslation($location,'location'); // Now add the location and its text to the options array - $_filter[] = JHtml::_('select.option', $location, JText::_($text)); + $_filter[] = JHtml::_('select.option', $location, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/helpdocumentsfiltertype.php b/admin/models/fields/helpdocumentsfiltertype.php index 7e9f5b9ea..0650900b7 100644 --- a/admin/models/fields/helpdocumentsfiltertype.php +++ b/admin/models/fields/helpdocumentsfiltertype.php @@ -49,21 +49,21 @@ class JFormFieldHelpdocumentsfiltertype extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_TYPE') . ' -'); - if ($results) + if ($_results) { // get help_documentsmodel - $model = ComponentbuilderHelper::getModel('help_documents'); - $results = array_unique($results); - foreach ($results as $type) + $_model = ComponentbuilderHelper::getModel('help_documents'); + $_results = array_unique($_results); + foreach ($_results as $type) { // Translate the type selection - $text = $model->selectionTranslation($type,'type'); + $_text = $_model->selectionTranslation($type,'type'); // Now add the type and its text to the options array - $_filter[] = JHtml::_('select.option', $type, JText::_($text)); + $_filter[] = JHtml::_('select.option', $type, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/joomlacomponentsfilterauthor.php b/admin/models/fields/joomlacomponentsfilterauthor.php index 6931bc349..5dcc3c6f0 100644 --- a/admin/models/fields/joomlacomponentsfilterauthor.php +++ b/admin/models/fields/joomlacomponentsfilterauthor.php @@ -49,13 +49,13 @@ class JFormFieldJoomlacomponentsfilterauthor extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); - if ($results) + if ($_results) { - $results = array_unique($results); - foreach ($results as $author) + $_results = array_unique($_results); + foreach ($_results as $author) { // Now add the author and its text to the options array $_filter[] = JHtml::_('select.option', $author, $author); diff --git a/admin/models/fields/joomlacomponentsfiltercompanyname.php b/admin/models/fields/joomlacomponentsfiltercompanyname.php index 1b7c3feef..40fc78601 100644 --- a/admin/models/fields/joomlacomponentsfiltercompanyname.php +++ b/admin/models/fields/joomlacomponentsfiltercompanyname.php @@ -49,13 +49,13 @@ class JFormFieldJoomlacomponentsfiltercompanyname extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); - if ($results) + if ($_results) { - $results = array_unique($results); - foreach ($results as $companyname) + $_results = array_unique($_results); + foreach ($_results as $companyname) { // Now add the companyname and its text to the options array $_filter[] = JHtml::_('select.option', $companyname, $companyname); diff --git a/admin/models/fields/joomlamodulesfiltertarget.php b/admin/models/fields/joomlamodulesfiltertarget.php index b6c2167ae..b59d4bad4 100644 --- a/admin/models/fields/joomlamodulesfiltertarget.php +++ b/admin/models/fields/joomlamodulesfiltertarget.php @@ -49,21 +49,21 @@ class JFormFieldJoomlamodulesfiltertarget extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_TARGET_AREA') . ' -'); - if ($results) + if ($_results) { // get joomla_modulesmodel - $model = ComponentbuilderHelper::getModel('joomla_modules'); - $results = array_unique($results); - foreach ($results as $target) + $_model = ComponentbuilderHelper::getModel('joomla_modules'); + $_results = array_unique($_results); + foreach ($_results as $target) { // Translate the target selection - $text = $model->selectionTranslation($target,'target'); + $_text = $_model->selectionTranslation($target,'target'); // Now add the target and its text to the options array - $_filter[] = JHtml::_('select.option', $target, JText::_($text)); + $_filter[] = JHtml::_('select.option', $target, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/layoutsfilteraddphpview.php b/admin/models/fields/layoutsfilteraddphpview.php index ce34d99c1..6e2a6c52d 100644 --- a/admin/models/fields/layoutsfilteraddphpview.php +++ b/admin/models/fields/layoutsfilteraddphpview.php @@ -49,21 +49,21 @@ class JFormFieldLayoutsfilteraddphpview extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_ADD_PHP_CUSTOM_VIEW_SCRIPT') . ' -'); - if ($results) + if ($_results) { // get layoutsmodel - $model = ComponentbuilderHelper::getModel('layouts'); - $results = array_unique($results); - foreach ($results as $add_php_view) + $_model = ComponentbuilderHelper::getModel('layouts'); + $_results = array_unique($_results); + foreach ($_results as $add_php_view) { // Translate the add_php_view selection - $text = $model->selectionTranslation($add_php_view,'add_php_view'); + $_text = $_model->selectionTranslation($add_php_view,'add_php_view'); // Now add the add_php_view and its text to the options array - $_filter[] = JHtml::_('select.option', $add_php_view, JText::_($text)); + $_filter[] = JHtml::_('select.option', $add_php_view, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/librariesfiltertarget.php b/admin/models/fields/librariesfiltertarget.php index 81483e192..952247dd1 100644 --- a/admin/models/fields/librariesfiltertarget.php +++ b/admin/models/fields/librariesfiltertarget.php @@ -49,21 +49,21 @@ class JFormFieldLibrariesfiltertarget extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_TARGET_FOLDER') . ' -'); - if ($results) + if ($_results) { // get librariesmodel - $model = ComponentbuilderHelper::getModel('libraries'); - $results = array_unique($results); - foreach ($results as $target) + $_model = ComponentbuilderHelper::getModel('libraries'); + $_results = array_unique($_results); + foreach ($_results as $target) { // Translate the target selection - $text = $model->selectionTranslation($target,'target'); + $_text = $_model->selectionTranslation($target,'target'); // Now add the target and its text to the options array - $_filter[] = JHtml::_('select.option', $target, JText::_($text)); + $_filter[] = JHtml::_('select.option', $target, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/librariesfiltertype.php b/admin/models/fields/librariesfiltertype.php index d522a9ce5..f7f09b10d 100644 --- a/admin/models/fields/librariesfiltertype.php +++ b/admin/models/fields/librariesfiltertype.php @@ -49,21 +49,21 @@ class JFormFieldLibrariesfiltertype extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_TYPE_BEHAVIOR') . ' -'); - if ($results) + if ($_results) { // get librariesmodel - $model = ComponentbuilderHelper::getModel('libraries'); - $results = array_unique($results); - foreach ($results as $type) + $_model = ComponentbuilderHelper::getModel('libraries'); + $_results = array_unique($_results); + foreach ($_results as $type) { // Translate the type selection - $text = $model->selectionTranslation($type,'type'); + $_text = $_model->selectionTranslation($type,'type'); // Now add the type and its text to the options array - $_filter[] = JHtml::_('select.option', $type, JText::_($text)); + $_filter[] = JHtml::_('select.option', $type, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/linkedviewsorderfields.php b/admin/models/fields/linkedviewsorderfields.php index 7cfaaa593..c4281adef 100644 --- a/admin/models/fields/linkedviewsorderfields.php +++ b/admin/models/fields/linkedviewsorderfields.php @@ -87,8 +87,17 @@ class JFormFieldLinkedviewsorderfields extends JFormFieldList foreach($items as $item) { // get the field name (TODO this could slow down the system so we will need to improve on this) - $field_name = ComponentbuilderHelper::safeFieldName(ComponentbuilderHelper::getBetween(json_decode($item->xml),'name="','"')); - $options[] = JHtml::_('select.option', $item->id, $item->name . ' [ ' . $field_name . ' - ' . $item->type . ' ]'); + if (isset($item->xml) && ComponentbuilderHelper::checkJson($item->xml)) + { + $field_xml = json_decode($item->xml); + $field_name = ComponentbuilderHelper::getBetween($field_xml,'name="','"'); + $field_name = ComponentbuilderHelper::safeFieldName($field_name); + $options[] = JHtml::_('select.option', $item->id, $item->name . ' [ ' . $field_name . ' - ' . $item->type . ' ]'); + } + else + { + $options[] = JHtml::_('select.option', $item->id, $item->name . ' [ empty - ' . $item->type . ' ]'); + } } } return $options; diff --git a/admin/models/fields/listfields.php b/admin/models/fields/listfields.php index 6ae8b010b..1af1206f6 100644 --- a/admin/models/fields/listfields.php +++ b/admin/models/fields/listfields.php @@ -94,8 +94,17 @@ class JFormFieldListfields extends JFormFieldList foreach($items as $item) { // get the field name (TODO this could slow down the system so we will need to improve on this) - $field_name = ComponentbuilderHelper::safeFieldName(ComponentbuilderHelper::getBetween(json_decode($item->xml),'name="','"')); - $options[] = JHtml::_('select.option', $item->id, $item->name . ' [ ' . $field_name . ' - ' . $item->type . ' ]'); + if (isset($item->xml) && ComponentbuilderHelper::checkJson($item->xml)) + { + $field_xml = json_decode($item->xml); + $field_name = ComponentbuilderHelper::getBetween($field_xml,'name="','"'); + $field_name = ComponentbuilderHelper::safeFieldName($field_name); + $options[] = JHtml::_('select.option', $item->id, $item->name . ' [ ' . $field_name . ' - ' . $item->type . ' ]'); + } + else + { + $options[] = JHtml::_('select.option', $item->id, $item->name . ' [ empty - ' . $item->type . ' ]'); + } } } return $options; diff --git a/admin/models/fields/powersclassmethods.php b/admin/models/fields/powersclassmethods.php new file mode 100644 index 000000000..7c53806e4 --- /dev/null +++ b/admin/models/fields/powersclassmethods.php @@ -0,0 +1,81 @@ + + * @git Joomla Component Builder + * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. + * @license GNU General Public License version 2 or later; see LICENSE.txt + */ + +// No direct access to this file +defined('_JEXEC') or die('Restricted access'); + +// import the list field type +jimport('joomla.form.helper'); +JFormHelper::loadFieldClass('list'); + +/** + * Powersclassmethods Form Field class for the Componentbuilder component + */ +class JFormFieldPowersclassmethods extends JFormFieldList +{ + /** + * The powersclassmethods field type. + * + * @var string + */ + public $type = 'powersclassmethods'; + + /** + * Method to get a list of options for a list input. + * + * @return array An array of JHtml options. + */ + protected function getOptions() + { + +// Get the user object. + $user = JFactory::getUser(); + // Get the databse object. + $db = JFactory::getDBO(); + $query = $db->getQuery(true); + $query->select($db->quoteName(array('a.id','a.name','a.visibility'),array('id','method_name','visibility'))); + $query->from($db->quoteName('#__componentbuilder_class_method', 'a')); + $query->where($db->quoteName('a.published') . ' >= 1'); + $query->where($db->quoteName('a.extension_type') . ' = ' . $db->quote('powers')); + $query->order('a.name ASC'); + // Implement View Level Access (if set in table) + if (!$user->authorise('core.options', 'com_componentbuilder')) + { + $columns = $db->getTableColumns('#__componentbuilder_class_method'); + if(isset($columns['access'])) + { + $groups = implode(',', $user->getAuthorisedViewLevels()); + $query->where('a.access IN (' . $groups . ')'); + } + } + $db->setQuery((string)$query); + $items = $db->loadObjectList(); + $options = array(); + if ($items) + { + $options[] = JHtml::_('select.option', '', 'Select a method'); + foreach($items as $item) + { + // we are using this code in more then one field JCB custom_code + if ('method' === 'method') + { + $select = $item->visibility . ' function ' . $item->method_name . '()'; + } + else + { + $select = $item->visibility . ' $' . $item->method_name; + } + $options[] = JHtml::_('select.option', $item->id, $select); + } + } + return $options; + } +} diff --git a/admin/models/fields/powersclassproperties.php b/admin/models/fields/powersclassproperties.php new file mode 100644 index 000000000..501aad52b --- /dev/null +++ b/admin/models/fields/powersclassproperties.php @@ -0,0 +1,81 @@ + + * @git Joomla Component Builder + * @copyright Copyright (C) 2015 Vast Development Method. All rights reserved. + * @license GNU General Public License version 2 or later; see LICENSE.txt + */ + +// No direct access to this file +defined('_JEXEC') or die('Restricted access'); + +// import the list field type +jimport('joomla.form.helper'); +JFormHelper::loadFieldClass('list'); + +/** + * Powersclassproperties Form Field class for the Componentbuilder component + */ +class JFormFieldPowersclassproperties extends JFormFieldList +{ + /** + * The powersclassproperties field type. + * + * @var string + */ + public $type = 'powersclassproperties'; + + /** + * Method to get a list of options for a list input. + * + * @return array An array of JHtml options. + */ + protected function getOptions() + { + +// Get the user object. + $user = JFactory::getUser(); + // Get the databse object. + $db = JFactory::getDBO(); + $query = $db->getQuery(true); + $query->select($db->quoteName(array('a.id','a.name','a.visibility'),array('id','property_name','visibility'))); + $query->from($db->quoteName('#__componentbuilder_class_property', 'a')); + $query->where($db->quoteName('a.published') . ' >= 1'); + $query->where($db->quoteName('a.extension_type') . ' = ' . $db->quote('powers')); + $query->order('a.name ASC'); + // Implement View Level Access (if set in table) + if (!$user->authorise('core.options', 'com_componentbuilder')) + { + $columns = $db->getTableColumns('#__componentbuilder_class_property'); + if(isset($columns['access'])) + { + $groups = implode(',', $user->getAuthorisedViewLevels()); + $query->where('a.access IN (' . $groups . ')'); + } + } + $db->setQuery((string)$query); + $items = $db->loadObjectList(); + $options = array(); + if ($items) + { + $options[] = JHtml::_('select.option', '', 'Select a property'); + foreach($items as $item) + { + // we are using this code in more then one field JCB custom_code + if ('method' === 'property') + { + $select = $item->visibility . ' function ' . $item->property_name . '()'; + } + else + { + $select = $item->visibility . ' $' . $item->property_name; + } + $options[] = JHtml::_('select.option', $item->id, $select); + } + } + return $options; + } +} diff --git a/admin/models/fields/powersfilterapproved.php b/admin/models/fields/powersfilterapproved.php index 0cafe0ce7..cbf3c6d18 100644 --- a/admin/models/fields/powersfilterapproved.php +++ b/admin/models/fields/powersfilterapproved.php @@ -49,21 +49,21 @@ class JFormFieldPowersfilterapproved extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_SUPER_POWER') . ' -'); - if ($results) + if ($_results) { // get powersmodel - $model = ComponentbuilderHelper::getModel('powers'); - $results = array_unique($results); - foreach ($results as $approved) + $_model = ComponentbuilderHelper::getModel('powers'); + $_results = array_unique($_results); + foreach ($_results as $approved) { // Translate the approved selection - $text = $model->selectionTranslation($approved,'approved'); + $_text = $_model->selectionTranslation($approved,'approved'); // Now add the approved and its text to the options array - $_filter[] = JHtml::_('select.option', $approved, JText::_($text)); + $_filter[] = JHtml::_('select.option', $approved, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/powersfiltertype.php b/admin/models/fields/powersfiltertype.php index 5fa45b714..f39d87d64 100644 --- a/admin/models/fields/powersfiltertype.php +++ b/admin/models/fields/powersfiltertype.php @@ -49,20 +49,20 @@ class JFormFieldPowersfiltertype extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); - if ($results) + if ($_results) { // get powersmodel - $model = ComponentbuilderHelper::getModel('powers'); - $results = array_unique($results); - foreach ($results as $type) + $_model = ComponentbuilderHelper::getModel('powers'); + $_results = array_unique($_results); + foreach ($_results as $type) { // Translate the type selection - $text = $model->selectionTranslation($type,'type'); + $_text = $_model->selectionTranslation($type,'type'); // Now add the type and its text to the options array - $_filter[] = JHtml::_('select.option', $type, JText::_($text)); + $_filter[] = JHtml::_('select.option', $type, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/serversfiltername.php b/admin/models/fields/serversfiltername.php index 5626732d4..d84776551 100644 --- a/admin/models/fields/serversfiltername.php +++ b/admin/models/fields/serversfiltername.php @@ -49,14 +49,14 @@ class JFormFieldServersfiltername extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_NAME') . ' -'); - if ($results) + if ($_results) { - $results = array_unique($results); - foreach ($results as $name) + $_results = array_unique($_results); + foreach ($_results as $name) { // Now add the name and its text to the options array $_filter[] = JHtml::_('select.option', $name, $name); diff --git a/admin/models/fields/serversfilterprotocol.php b/admin/models/fields/serversfilterprotocol.php index 01fce0c8e..8aa22f5b6 100644 --- a/admin/models/fields/serversfilterprotocol.php +++ b/admin/models/fields/serversfilterprotocol.php @@ -49,21 +49,21 @@ class JFormFieldServersfilterprotocol extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_PROTOCOL') . ' -'); - if ($results) + if ($_results) { // get serversmodel - $model = ComponentbuilderHelper::getModel('servers'); - $results = array_unique($results); - foreach ($results as $protocol) + $_model = ComponentbuilderHelper::getModel('servers'); + $_results = array_unique($_results); + foreach ($_results as $protocol) { // Translate the protocol selection - $text = $model->selectionTranslation($protocol,'protocol'); + $_text = $_model->selectionTranslation($protocol,'protocol'); // Now add the protocol and its text to the options array - $_filter[] = JHtml::_('select.option', $protocol, JText::_($text)); + $_filter[] = JHtml::_('select.option', $protocol, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/siteviewsfilteraddcustombutton.php b/admin/models/fields/siteviewsfilteraddcustombutton.php index 20551f03b..f16ad9ab4 100644 --- a/admin/models/fields/siteviewsfilteraddcustombutton.php +++ b/admin/models/fields/siteviewsfilteraddcustombutton.php @@ -49,21 +49,21 @@ class JFormFieldSiteviewsfilteraddcustombutton extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_ADD_CUSTOM_BUTTONS') . ' -'); - if ($results) + if ($_results) { // get site_viewsmodel - $model = ComponentbuilderHelper::getModel('site_views'); - $results = array_unique($results); - foreach ($results as $add_custom_button) + $_model = ComponentbuilderHelper::getModel('site_views'); + $_results = array_unique($_results); + foreach ($_results as $add_custom_button) { // Translate the add_custom_button selection - $text = $model->selectionTranslation($add_custom_button,'add_custom_button'); + $_text = $_model->selectionTranslation($add_custom_button,'add_custom_button'); // Now add the add_custom_button and its text to the options array - $_filter[] = JHtml::_('select.option', $add_custom_button, JText::_($text)); + $_filter[] = JHtml::_('select.option', $add_custom_button, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/siteviewsfilteraddphpajax.php b/admin/models/fields/siteviewsfilteraddphpajax.php index c8f17b499..75cb59eb3 100644 --- a/admin/models/fields/siteviewsfilteraddphpajax.php +++ b/admin/models/fields/siteviewsfilteraddphpajax.php @@ -49,21 +49,21 @@ class JFormFieldSiteviewsfilteraddphpajax extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_ADD_PHP_AJAX') . ' -'); - if ($results) + if ($_results) { // get site_viewsmodel - $model = ComponentbuilderHelper::getModel('site_views'); - $results = array_unique($results); - foreach ($results as $add_php_ajax) + $_model = ComponentbuilderHelper::getModel('site_views'); + $_results = array_unique($_results); + foreach ($_results as $add_php_ajax) { // Translate the add_php_ajax selection - $text = $model->selectionTranslation($add_php_ajax,'add_php_ajax'); + $_text = $_model->selectionTranslation($add_php_ajax,'add_php_ajax'); // Now add the add_php_ajax and its text to the options array - $_filter[] = JHtml::_('select.option', $add_php_ajax, JText::_($text)); + $_filter[] = JHtml::_('select.option', $add_php_ajax, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fields/templatesfilteraddphpview.php b/admin/models/fields/templatesfilteraddphpview.php index 717e81443..fc38e1507 100644 --- a/admin/models/fields/templatesfilteraddphpview.php +++ b/admin/models/fields/templatesfilteraddphpview.php @@ -49,21 +49,21 @@ class JFormFieldTemplatesfilteraddphpview extends JFormFieldList // Reset the query using our newly populated query object. $db->setQuery($query); - $results = $db->loadColumn(); + $_results = $db->loadColumn(); $_filter = array(); $_filter[] = JHtml::_('select.option', '', '- ' . JText::_('COM_COMPONENTBUILDER_FILTER_SELECT_ADD_PHP_CUSTOM_VIEW_SCRIPT') . ' -'); - if ($results) + if ($_results) { // get templatesmodel - $model = ComponentbuilderHelper::getModel('templates'); - $results = array_unique($results); - foreach ($results as $add_php_view) + $_model = ComponentbuilderHelper::getModel('templates'); + $_results = array_unique($_results); + foreach ($_results as $add_php_view) { // Translate the add_php_view selection - $text = $model->selectionTranslation($add_php_view,'add_php_view'); + $_text = $_model->selectionTranslation($add_php_view,'add_php_view'); // Now add the add_php_view and its text to the options array - $_filter[] = JHtml::_('select.option', $add_php_view, JText::_($text)); + $_filter[] = JHtml::_('select.option', $add_php_view, JText::_($_text)); } } return $_filter; diff --git a/admin/models/fieldtype.php b/admin/models/fieldtype.php index b33b2c2a3..23e450a86 100644 --- a/admin/models/fieldtype.php +++ b/admin/models/fieldtype.php @@ -16,6 +16,11 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Fieldtype Admin Model @@ -58,6 +63,8 @@ class ComponentbuilderModelFieldtype extends AdminModel 'indexes', 'null_switch', 'store', + 'basic_encryption_note', + 'medium_encryption_note', 'note_whmcs_encryption' ) ) @@ -125,7 +132,7 @@ class ComponentbuilderModelFieldtype extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'fieldtype__'.$id); ComponentbuilderHelper::set('fieldtype__'.$id, $this->vastDevMod); // set a return value if found @@ -133,7 +140,7 @@ class ComponentbuilderModelFieldtype extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -199,7 +206,7 @@ class ComponentbuilderModelFieldtype extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'fieldtype__'.$id); ComponentbuilderHelper::set('fieldtype__'.$id, $this->vastDevMod); // set a return value if found @@ -207,7 +214,7 @@ class ComponentbuilderModelFieldtype extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -300,7 +307,7 @@ class ComponentbuilderModelFieldtype extends AdminModel } } // now check if we have IDs - if ($get_ids && ComponentbuilderHelper::checkArray($field_ids)) + if ($get_ids && UtilitiesArrayHelper::check($field_ids)) { $query->where($db->quoteName('a.id') . ' IN (' . implode(',', $field_ids) . ')'); } @@ -599,7 +606,7 @@ class ComponentbuilderModelFieldtype extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } return $form; @@ -663,7 +670,7 @@ class ComponentbuilderModelFieldtype extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('fieldtype.edit.state', 'com_componentbuilder'); } @@ -1252,15 +1259,15 @@ class ComponentbuilderModelFieldtype extends AdminModel if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('fieldtype', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('fieldtype', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "fieldtype", $data['id'])) + while (!GuidHelper::valid($data['guid'], "fieldtype", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the properties items to data. if (isset($data['properties']) && is_array($data['properties'])) diff --git a/admin/models/forms/admin_view.xml b/admin/models/forms/admin_view.xml index bda1af153..3b448cbcf 100644 --- a/admin/models/forms/admin_view.xml +++ b/admin/models/forms/admin_view.xml @@ -731,7 +731,7 @@ readonly="false" disabled="false" required="true" - filter="WORD" + filter="STRING" message="COM_COMPONENTBUILDER_ADMIN_VIEW_PARENTKEY_MESSAGE" hint="COM_COMPONENTBUILDER_ADMIN_VIEW_PARENTKEY_HINT" /> diff --git a/admin/models/forms/field.xml b/admin/models/forms/field.xml index a1dcbc680..a8a6eea36 100644 --- a/admin/models/forms/field.xml +++ b/admin/models/forms/field.xml @@ -239,21 +239,6 @@ description="COM_COMPONENTBUILDER_FIELD_CATID_DESCRIPTION" class="inputbox" /> - - - - + + + + COM_COMPONENTBUILDER_FIELD_OTHER - + + + - + - - - - + + + + + + COM_COMPONENTBUILDER_FIELD_NO - + COM_COMPONENTBUILDER_FIELD_NO - - + + COM_COMPONENTBUILDER_FIELD_NO - - + + COM_COMPONENTBUILDER_FIELD_NO - - + + - - + + COM_COMPONENTBUILDER_FIELDTYPE_OTHER - - + + - - + + COM_COMPONENTBUILDER_FIELDTYPE_OTHER + + + + COM_COMPONENTBUILDER_FILTER_INDEXES_TYPE_DESCENDING - - + + diff --git a/admin/models/forms/power.xml b/admin/models/forms/power.xml index d553af000..c229f7086 100644 --- a/admin/models/forms/power.xml +++ b/admin/models/forms/power.xml @@ -178,9 +178,9 @@ max="150" min="0"> - + - + authorise('help_document.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/import_joomla_components.php b/admin/models/import_joomla_components.php index 69e7ef4d5..702cf0106 100644 --- a/admin/models/import_joomla_components.php +++ b/admin/models/import_joomla_components.php @@ -357,7 +357,7 @@ class ComponentbuilderModelImport_joomla_components extends BaseDatabaseModel if (JFile::exists($infoFile)) { // load the data - if ($info = @file_get_contents($infoFile)) + if ($info = FileHelper::getContent($infoFile)) { // unlock the info data if ((($info_ = PackageFactory::_('Crypt')->decrypt($info, 'local')) !== null && JsonHelper::check($info_)) || @@ -644,7 +644,7 @@ class ComponentbuilderModelImport_joomla_components extends BaseDatabaseModel if (JFile::exists($dbFile)) { // load the data - if ($data = @file_get_contents($dbFile)) + if ($data = FileHelper::getContent($dbFile)) { // prep the data if ($this->extractData($data)) @@ -679,7 +679,7 @@ class ComponentbuilderModelImport_joomla_components extends BaseDatabaseModel protected function extractData($data) { // remove all line breaks - if (($data = $this->decrypt($data, $this->sleutle)) !== false) + if (($data = $this->decrypt($data, $this->sleutle)) !== null) { // final check if we have success $data = @unserialize($data); @@ -1058,7 +1058,7 @@ class ComponentbuilderModelImport_joomla_components extends BaseDatabaseModel foreach ($files as $file) { // open the file content - if (($data = $this->decrypt(file_get_contents($file), $this->sleutle)) !== false) + if (($data = $this->decrypt(file_get_contents($file), $this->sleutle)) !== null) { // write the decrypted data back to file if (!FileHelper::write($file, $data)) @@ -1104,20 +1104,20 @@ class ComponentbuilderModelImport_joomla_components extends BaseDatabaseModel { // try phpseclib version 3 if(($this->isPhpseclib3Enabled() || $force) && - ($data_ = $this->decryptWithPhpseclib3($data, $password)) !== false) + ($data_ = $this->decryptWithPhpseclib3($data, $password)) !== null) { return $data_; } // try phpseclib version 2 if(($this->isPhpseclib2Enabled() || $force) && - ($data_ = $this->decryptWithPhpseclib2($data, $password)) !== false) + ($data_ = $this->decryptWithPhpseclib2($data, $password)) !== null) { return $data_; } // try FOF the outdated method - if (($data_ = $this->decryptWithFof($data, $password)) !== false) + if (($data_ = $this->decryptWithFof($data, $password)) !== null) { return $data_; } @@ -1185,12 +1185,16 @@ class ComponentbuilderModelImport_joomla_components extends BaseDatabaseModel * @param string $data * @param string $password * - * @return string|bool + * @return string|null */ - private function decryptWithPhpseclib2(string $data, string $password) + private function decryptWithPhpseclib2(string $data, string $password): ?string { $data_ = PackageFactory::_('Crypt')->decrypt($data, 'legacy', $password); - return strcmp($data, $data_) !== 0 ? $data_ : false; + if ($data_ !== null) + { + return strcmp($data, $data_) !== 0 ? $data_ : null; + } + return null; } /** @@ -1209,12 +1213,16 @@ class ComponentbuilderModelImport_joomla_components extends BaseDatabaseModel * @param string $data * @param string $password * - * @return string|bool + * @return string|null */ - private function decryptWithPhpseclib3(string $data, string $password) + private function decryptWithPhpseclib3(string $data, string $password): ?string { $data_ = PackageFactory::_('Crypt')->decrypt($data, 'aes', $password); - return strcmp($data, $data_) !== 0 ? $data_ : false; + if ($data_ !== null) + { + return strcmp($data, $data_) !== 0 ? $data_ : null; + } + return null; } /** @@ -1223,12 +1231,16 @@ class ComponentbuilderModelImport_joomla_components extends BaseDatabaseModel * @param string $data * @param string $password * - * @return string|bool + * @return string|null */ - private function decryptWithFof(string $data, string $password) + private function decryptWithFof(string $data, string $password): ?string { $data_ = PackageFactory::_('Crypt')->decrypt($data, 'fof', $password); - return strcmp($data, $data_) !== 0 ? $data_ : false; + if ($data_ !== null) + { + return strcmp($data, $data_) !== 0 ? $data_ : null; + } + return null; } /** diff --git a/admin/models/import_language_translations.php b/admin/models/import_language_translations.php index 7c85a0328..32548bcd2 100644 --- a/admin/models/import_language_translations.php +++ b/admin/models/import_language_translations.php @@ -17,6 +17,8 @@ use Joomla\CMS\Filesystem\File; use Joomla\CMS\Filesystem\Folder; use Joomla\Utilities\ArrayHelper; use PhpOffice\PhpSpreadsheet\IOFactory; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\StringHelper; /** * Componentbuilder Import_language_translations Base Database Model @@ -419,7 +421,7 @@ class ComponentbuilderModelImport_language_translations extends BaseDatabaseMode **/ protected function setData($package,$table,$target_headers) { - if (ComponentbuilderHelper::checkArray($target_headers)) + if (UtilitiesArrayHelper::check($target_headers)) { // make sure the file is loaded ComponentbuilderHelper::composerAutoload('phpspreadsheet'); @@ -510,7 +512,7 @@ class ComponentbuilderModelImport_language_translations extends BaseDatabaseMode $found = false; $has_id = false; // check that we have a string or a number<-(which is weird... but happens at times) - if ($canEdit && isset($row[$source_key]) && (ComponentbuilderHelper::checkString($row[$source_key]) || is_numeric($row[$source_key]))) + if ($canEdit && isset($row[$source_key]) && (StringHelper::check($row[$source_key]) || is_numeric($row[$source_key]))) { // raw items import & update! $query = $db->getQuery(true); diff --git a/admin/models/joomla_component.php b/admin/models/joomla_component.php index 087ddc912..fa34f0659 100644 --- a/admin/models/joomla_component.php +++ b/admin/models/joomla_component.php @@ -16,6 +16,12 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\FOF\Encrypt\AES; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Joomla_component Admin Model @@ -273,7 +279,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'joomla_component__'.$id); ComponentbuilderHelper::set('joomla_component__'.$id, $this->vastDevMod); // set a return value if found @@ -281,7 +287,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -447,7 +453,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel // Get the basic encryption. $basickey = ComponentbuilderHelper::getCryptKey('basic'); // Get the encryption object. - $basic = new FOFEncryptAes($basickey); + $basic = new AES($basickey); if (!empty($item->whmcs_key) && $basickey && !is_numeric($item->whmcs_key) && $item->whmcs_key === base64_encode(base64_decode($item->whmcs_key, true))) { @@ -504,7 +510,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'joomla_component__'.$id); ComponentbuilderHelper::set('joomla_component__'.$id, $this->vastDevMod); // set a return value if found @@ -512,7 +518,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -680,7 +686,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -695,7 +701,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } return $form; @@ -759,7 +765,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('joomla_component.edit.state', 'com_componentbuilder'); } @@ -925,7 +931,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel } // we must also delete the linked tables found - if (ComponentbuilderHelper::checkArray($pks)) + if (UtilitiesArrayHelper::check($pks)) { $_tablesArray = array( 'component_admin_views' => 'joomla_component', @@ -974,7 +980,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel } // we must also update all linked tables - if (ComponentbuilderHelper::checkArray($pks)) + if (UtilitiesArrayHelper::check($pks)) { $_tablesArray = array( 'component_admin_views' => 'joomla_component', @@ -1377,7 +1383,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel } // if system name is empty create from name - if (empty($data['system_name']) || !ComponentbuilderHelper::checkString($data['system_name'])) + if (empty($data['system_name']) || !UtilitiesStringHelper::check($data['system_name'])) { $data['system_name'] = $data['name']; } @@ -1386,15 +1392,15 @@ class ComponentbuilderModelJoomla_component extends AdminModel if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('joomla_component', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('joomla_component', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "joomla_component", $data['id'])) + while (!GuidHelper::valid($data['guid'], "joomla_component", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the addcontributors items to data. if (isset($data['addcontributors']) && is_array($data['addcontributors'])) @@ -1514,7 +1520,7 @@ class ComponentbuilderModelJoomla_component extends AdminModel // Get the basic encryption key. $basickey = ComponentbuilderHelper::getCryptKey('basic'); // Get the encryption object - $basic = new FOFEncryptAes($basickey); + $basic = new AES($basickey); // Encrypt data whmcs_key. if (isset($data['whmcs_key']) && $basickey) diff --git a/admin/models/joomla_components.php b/admin/models/joomla_components.php index 45ba09e03..dbb9afd2b 100644 --- a/admin/models/joomla_components.php +++ b/admin/models/joomla_components.php @@ -21,6 +21,8 @@ use VDM\Joomla\Utilities\StringHelper; use VDM\Joomla\Utilities\ObjectHelper; use VDM\Joomla\Utilities\GetHelper; use VDM\Joomla\Utilities\JsonHelper; +use VDM\Joomla\Utilities\Base64Helper; +use VDM\Joomla\FOF\Encrypt\AES; /** * Joomla_components List Model @@ -998,7 +1000,7 @@ class ComponentbuilderModelJoomla_components extends ListModel // check if this field has multiple fields if ($this->checkMultiFields($item->fieldtype)) { - $fields = ComponentbuilderHelper::getBetween(json_decode($item->xml), 'fields="', '"'); + $fields = GetHelper::between(json_decode($item->xml), 'fields="', '"'); $fieldsSets = array(); if (strpos($fields, ',') !== false) { @@ -1017,7 +1019,7 @@ class ComponentbuilderModelJoomla_components extends ListModel } } // check if validation rule is found - $validationRule = ComponentbuilderHelper::getBetween(json_decode($item->xml), 'validate="', '"'); + $validationRule = GetHelper::between(json_decode($item->xml), 'validate="', '"'); if (StringHelper::check($validationRule)) { // make sure it is lowercase @@ -1799,7 +1801,7 @@ class ComponentbuilderModelJoomla_components extends ListModel } elseif (!isset($keys['not_base64'][$key])) { - $value = ComponentbuilderHelper::openValidBase64($item->{$key}, null); + $value = Base64Helper::open($item->{$key}, null); } elseif (isset($keys['not_base64'][$key]) && 'json' === $keys['not_base64'][$key] && 'xml' === $key) // just for field search { @@ -2033,9 +2035,9 @@ class ComponentbuilderModelJoomla_components extends ListModel if (isset($target['_start'])) { // get all values - $allBetween = ComponentbuilderHelper::getAllBetween($value, $target['start'], $target['_start']); + $allBetween = GetHelper::allBetween($value, $target['start'], $target['_start']); // just again make sure we found some - if (ComponentbuilderHelper::checkArray($allBetween)) + if (JCBArrayHelper::check($allBetween)) { if (count((array) $allBetween) > 1) { @@ -2066,14 +2068,14 @@ class ComponentbuilderModelJoomla_components extends ListModel $starts[] = $target['start']; } // has any been found - if (ComponentbuilderHelper::checkArray($starts)) + if (JCBArrayHelper::check($starts)) { foreach ($starts as $_start) { // get the base64 string - $base64 = ComponentbuilderHelper::getBetween($value, $_start, $target['end']); + $base64 = GetHelper::between($value, $_start, $target['end']); // now open the base64 text - $tmp = ComponentbuilderHelper::openValidBase64($base64); + $tmp = Base64Helper::open($base64); // insert it back into the value (so we still search the whole string) $value = str_replace($base64, $tmp, $value); } @@ -2670,7 +2672,7 @@ class ComponentbuilderModelJoomla_components extends ListModel // Get the basic encryption key. $basickey = ComponentbuilderHelper::getCryptKey('basic'); // Get the encryption object. - $basic = new FOFEncryptAes($basickey); + $basic = new AES($basickey); // Set values to display correctly. if (ComponentbuilderHelper::checkArray($items)) diff --git a/admin/models/joomla_module.php b/admin/models/joomla_module.php index 804e2e4e9..9458ba6df 100644 --- a/admin/models/joomla_module.php +++ b/admin/models/joomla_module.php @@ -16,6 +16,12 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\String\ClassfunctionHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Joomla_module Admin Model @@ -189,7 +195,7 @@ class ComponentbuilderModelJoomla_module extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'joomla_module__'.$id); ComponentbuilderHelper::set('joomla_module__'.$id, $this->vastDevMod); // set a return value if found @@ -197,7 +203,7 @@ class ComponentbuilderModelJoomla_module extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -363,7 +369,7 @@ class ComponentbuilderModelJoomla_module extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'joomla_module__'.$id); ComponentbuilderHelper::set('joomla_module__'.$id, $this->vastDevMod); // set a return value if found @@ -371,7 +377,7 @@ class ComponentbuilderModelJoomla_module extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -497,7 +503,7 @@ class ComponentbuilderModelJoomla_module extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -512,9 +518,9 @@ class ComponentbuilderModelJoomla_module extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } - + return $form; } @@ -576,7 +582,7 @@ class ComponentbuilderModelJoomla_module extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('joomla_module.edit.state', 'com_componentbuilder'); } @@ -742,7 +748,7 @@ class ComponentbuilderModelJoomla_module extends AdminModel } // we must also delete the linked tables found - if (ComponentbuilderHelper::checkArray($pks)) + if (UtilitiesArrayHelper::check($pks)) { // linked tables to update $_tablesArray = array( @@ -784,7 +790,7 @@ class ComponentbuilderModelJoomla_module extends AdminModel } // we must also update all linked tables - if (ComponentbuilderHelper::checkArray($pks)) + if (UtilitiesArrayHelper::check($pks)) { // linked tables to update $_tablesArray = array( @@ -1183,12 +1189,12 @@ class ComponentbuilderModelJoomla_module extends AdminModel if (strpos($data['name'], '[[[') === false && strpos($data['name'], '###') === false) { // make sure the name is safe to be used as a function name - $data['name'] = ComponentbuilderHelper::safeClassFunctionName($data['name']); + $data['name'] = ClassfunctionHelper::safe($data['name']); } // always reset the snippets $data['snippet'] = 0; // if system name is empty create from name - if (empty($data['system_name']) || !ComponentbuilderHelper::checkString($data['system_name'])) + if (empty($data['system_name']) || !UtilitiesStringHelper::check($data['system_name'])) { $data['system_name'] = $data['name']; } @@ -1197,15 +1203,15 @@ class ComponentbuilderModelJoomla_module extends AdminModel if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('joomla_module', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('joomla_module', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "joomla_module", $data['id'])) + while (!GuidHelper::valid($data['guid'], "joomla_module", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the libraries items to data. if (isset($data['libraries']) && is_array($data['libraries'])) diff --git a/admin/models/joomla_module_files_folders_urls.php b/admin/models/joomla_module_files_folders_urls.php index ad402341d..f7081ddd7 100644 --- a/admin/models/joomla_module_files_folders_urls.php +++ b/admin/models/joomla_module_files_folders_urls.php @@ -327,7 +327,7 @@ class ComponentbuilderModelJoomla_module_files_folders_urls extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('joomla_module_files_folders_urls.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/joomla_module_updates.php b/admin/models/joomla_module_updates.php index 3b80f2756..8056d763c 100644 --- a/admin/models/joomla_module_updates.php +++ b/admin/models/joomla_module_updates.php @@ -284,7 +284,7 @@ class ComponentbuilderModelJoomla_module_updates extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('joomla_module_updates.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/joomla_plugin.php b/admin/models/joomla_plugin.php index 4b6ef7b28..1a29725ad 100644 --- a/admin/models/joomla_plugin.php +++ b/admin/models/joomla_plugin.php @@ -16,6 +16,12 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\String\ClassfunctionHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Joomla_plugin Admin Model @@ -166,7 +172,7 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'joomla_plugin__'.$id); ComponentbuilderHelper::set('joomla_plugin__'.$id, $this->vastDevMod); // set a return value if found @@ -174,7 +180,7 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -328,7 +334,7 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'joomla_plugin__'.$id); ComponentbuilderHelper::set('joomla_plugin__'.$id, $this->vastDevMod); // set a return value if found @@ -336,7 +342,7 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -462,7 +468,7 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -477,9 +483,9 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } - + return $form; } @@ -541,7 +547,7 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('joomla_plugin.edit.state', 'com_componentbuilder'); } @@ -707,7 +713,7 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel } // we must also delete the linked tables found - if (ComponentbuilderHelper::checkArray($pks)) + if (UtilitiesArrayHelper::check($pks)) { // linked tables to update $_tablesArray = array( @@ -749,7 +755,7 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel } // we must also update all linked tables - if (ComponentbuilderHelper::checkArray($pks)) + if (UtilitiesArrayHelper::check($pks)) { // linked tables to update $_tablesArray = array( @@ -1148,10 +1154,10 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel if (strpos($data['name'], '[[[') === false && strpos($data['name'], '###') === false) { // make sure the name is safe to be used as a function name - $data['name'] = ComponentbuilderHelper::safeClassFunctionName($data['name']); + $data['name'] = ClassfunctionHelper::safe($data['name']); } // if system name is empty create from name - if (empty($data['system_name']) || !ComponentbuilderHelper::checkString($data['system_name'])) + if (empty($data['system_name']) || !UtilitiesStringHelper::check($data['system_name'])) { $data['system_name'] = $data['name']; } @@ -1160,15 +1166,15 @@ class ComponentbuilderModelJoomla_plugin extends AdminModel if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('joomla_plugin', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('joomla_plugin', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "joomla_plugin", $data['id'])) + while (!GuidHelper::valid($data['guid'], "joomla_plugin", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the method_selection items to data. if (isset($data['method_selection']) && is_array($data['method_selection'])) diff --git a/admin/models/joomla_plugin_files_folders_urls.php b/admin/models/joomla_plugin_files_folders_urls.php index 1f4ef4d6b..e5bde43ed 100644 --- a/admin/models/joomla_plugin_files_folders_urls.php +++ b/admin/models/joomla_plugin_files_folders_urls.php @@ -327,7 +327,7 @@ class ComponentbuilderModelJoomla_plugin_files_folders_urls extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('joomla_plugin_files_folders_urls.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/joomla_plugin_group.php b/admin/models/joomla_plugin_group.php index b8d9b0bc0..505402500 100644 --- a/admin/models/joomla_plugin_group.php +++ b/admin/models/joomla_plugin_group.php @@ -16,6 +16,7 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\String\ClassfunctionHelper; /** * Componentbuilder Joomla_plugin_group Admin Model @@ -271,7 +272,7 @@ class ComponentbuilderModelJoomla_plugin_group extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return parent::canEditState($record); } @@ -540,7 +541,7 @@ class ComponentbuilderModelJoomla_plugin_group extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('joomla_plugin_group'); } - if (!$this->canDo->get('core.create') || !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.create') && !$this->canDo->get('joomla_plugin_group.batch')) { return false; } @@ -683,7 +684,7 @@ class ComponentbuilderModelJoomla_plugin_group extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('joomla_plugin_group'); } - if (!$this->canDo->get('core.edit') && !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.edit') && !$this->canDo->get('joomla_plugin_group.batch')) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); return false; @@ -794,7 +795,7 @@ class ComponentbuilderModelJoomla_plugin_group extends AdminModel } // make sure the name is safe to be used as a function name - $data['name'] = ComponentbuilderHelper::safeClassFunctionName($data['name']); + $data['name'] = ClassfunctionHelper::safe($data['name']); // Set the Params Items to data if (isset($data['params']) && is_array($data['params'])) diff --git a/admin/models/joomla_plugin_updates.php b/admin/models/joomla_plugin_updates.php index 7d77ceb19..05a5b6d8f 100644 --- a/admin/models/joomla_plugin_updates.php +++ b/admin/models/joomla_plugin_updates.php @@ -284,7 +284,7 @@ class ComponentbuilderModelJoomla_plugin_updates extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('joomla_plugin_updates.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/joomla_plugins.php b/admin/models/joomla_plugins.php index ada80be0d..77998a47c 100644 --- a/admin/models/joomla_plugins.php +++ b/admin/models/joomla_plugins.php @@ -14,6 +14,8 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\StringHelper; /** * Joomla_plugins List Model @@ -62,7 +64,7 @@ class ComponentbuilderModelJoomla_plugins extends ListModel } )); // make sure we have the correct boilerplate - if (ComponentbuilderHelper::checkArray($found) && count($found) == 1 && method_exists(__CLASS__, 'getPluginsBoilerplate')) + if (UtilitiesArrayHelper::check($found) && count($found) == 1 && method_exists(__CLASS__, 'getPluginsBoilerplate')) { // get the plugins boilerplate return $this->getPluginsBoilerplate($found[0]->url); @@ -99,7 +101,7 @@ class ComponentbuilderModelJoomla_plugins extends ListModel // get the needed data of each plugin group $groups = array_map( function($tree) use(&$app, &$models, &$tables){ - if (($fooClass = ComponentbuilderHelper::getFileContents(ComponentbuilderHelper::$bolerplatePath . '/plugins/' . $tree->path . '/foo.php')) !== false && ComponentbuilderHelper::checkString($fooClass)) + if (($fooClass = ComponentbuilderHelper::getFileContents(ComponentbuilderHelper::$bolerplatePath . '/plugins/' . $tree->path . '/foo.php')) !== false && StringHelper::check($fooClass)) { // extract the boilerplate class extends and check if already set if (($classExtends = ComponentbuilderHelper::extractBoilerplateClassExtends($fooClass, 'plugins')) !== false && @@ -132,7 +134,7 @@ class ComponentbuilderModelJoomla_plugins extends ListModel if (($classProperiesMethods = ComponentbuilderHelper::extractBoilerplateClassPropertiesMethods($fooClass, $classExtends, 'plugins', $pluginGroupID)) !== false) { // create the properties found - if (isset($classProperiesMethods['property']) && ComponentbuilderHelper::checkArray($classProperiesMethods['property'])) + if (isset($classProperiesMethods['property']) && UtilitiesArrayHelper::check($classProperiesMethods['property'])) { foreach ($classProperiesMethods['property'] as $_property) { @@ -141,7 +143,7 @@ class ComponentbuilderModelJoomla_plugins extends ListModel } } // create the method found (TODO just create for now but we could later add a force update) - if (isset($classProperiesMethods['method']) && ComponentbuilderHelper::checkArray($classProperiesMethods['method'])) + if (isset($classProperiesMethods['method']) && UtilitiesArrayHelper::check($classProperiesMethods['method'])) { foreach ($classProperiesMethods['method'] as $_method) { diff --git a/admin/models/language.php b/admin/models/language.php index f35e510d3..034602ba8 100644 --- a/admin/models/language.php +++ b/admin/models/language.php @@ -271,7 +271,7 @@ class ComponentbuilderModelLanguage extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('language.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/language_translation.php b/admin/models/language_translation.php index 2f584729a..0950456e0 100644 --- a/admin/models/language_translation.php +++ b/admin/models/language_translation.php @@ -16,6 +16,8 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; /** * Componentbuilder Language_translation Admin Model @@ -101,7 +103,7 @@ class ComponentbuilderModelLanguage_translation extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'language_translation__'.$id); ComponentbuilderHelper::set('language_translation__'.$id, $this->vastDevMod); // set a return value if found @@ -109,7 +111,7 @@ class ComponentbuilderModelLanguage_translation extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -181,7 +183,7 @@ class ComponentbuilderModelLanguage_translation extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'language_translation__'.$id); ComponentbuilderHelper::set('language_translation__'.$id, $this->vastDevMod); // set a return value if found @@ -189,7 +191,7 @@ class ComponentbuilderModelLanguage_translation extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -368,7 +370,7 @@ class ComponentbuilderModelLanguage_translation extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('language_translation.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/language_translations.php b/admin/models/language_translations.php index b4aceafdd..9a74c5c81 100644 --- a/admin/models/language_translations.php +++ b/admin/models/language_translations.php @@ -14,8 +14,11 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; -use VDM\Joomla\Componentbuilder\Utilities\FormHelper as JCBFormHelper; +use VDM\Joomla\Utilities\FormHelper as JCBFormHelper; use VDM\Joomla\Componentbuilder\Utilities\FilterHelper as JCBFilterHelper; +use VDM\Joomla\Utilities\StringHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\JsonHelper; /** * Language_translations List Model @@ -218,12 +221,12 @@ class ComponentbuilderModelLanguage_translations extends ListModel // escape all strings if not being exported if (!isset($_export)) { - $item->source = ComponentbuilderHelper::htmlEscape($item->source, 'UTF-8', true, 150); + $item->source = StringHelper::html($item->source, 'UTF-8', true, 150); } } } // prep the lang strings for export - if (isset($_export) && $_export && ComponentbuilderHelper::checkArray($items)) + if (isset($_export) && $_export && UtilitiesArrayHelper::check($items)) { // insure we have the same order in the languages $languages = ComponentbuilderHelper::getVars('language', 1, 'published', 'langtag'); @@ -251,15 +254,15 @@ class ComponentbuilderModelLanguage_translations extends ListModel $item->{$lanTag} = ''; } // now adapt the source - if (isset($item->translation) && ComponentbuilderHelper::checkJson($item->translation)) + if (isset($item->translation) && JsonHelper::check($item->translation)) { $translations = json_decode($item->translation, true); - if (ComponentbuilderHelper::checkArray($translations)) + if (UtilitiesArrayHelper::check($translations)) { foreach ($translations as $language) { - if (isset($language['translation']) && ComponentbuilderHelper::checkString($language['translation']) - && isset($language['language']) && ComponentbuilderHelper::checkString($language['language'])) + if (isset($language['translation']) && StringHelper::check($language['translation']) + && isset($language['language']) && StringHelper::check($language['language'])) { $item->{$language['language']} = $language['translation']; } @@ -537,7 +540,7 @@ class ComponentbuilderModelLanguage_translations extends ListModel // escape all strings if not being exported if (!isset($_export)) { - $item->source = ComponentbuilderHelper::htmlEscape($item->source, 'UTF-8', true, 150); + $item->source = StringHelper::html($item->source, 'UTF-8', true, 150); } // unset the values we don't want exported. unset($item->asset_id); @@ -553,7 +556,7 @@ class ComponentbuilderModelLanguage_translations extends ListModel } // prep the lang strings for export - if (isset($_export) && $_export && ComponentbuilderHelper::checkArray($items)) + if (isset($_export) && $_export && UtilitiesArrayHelper::check($items)) { // insure we have the same order in the languages $languages = ComponentbuilderHelper::getVars('language', 1, 'published', 'langtag'); @@ -581,15 +584,15 @@ class ComponentbuilderModelLanguage_translations extends ListModel $item->{$lanTag} = ''; } // now adapt the source - if (isset($item->translation) && ComponentbuilderHelper::checkJson($item->translation)) + if (isset($item->translation) && JsonHelper::check($item->translation)) { $translations = json_decode($item->translation, true); - if (ComponentbuilderHelper::checkArray($translations)) + if (UtilitiesArrayHelper::check($translations)) { foreach ($translations as $language) { - if (isset($language['translation']) && ComponentbuilderHelper::checkString($language['translation']) - && isset($language['language']) && ComponentbuilderHelper::checkString($language['language'])) + if (isset($language['translation']) && StringHelper::check($language['translation']) + && isset($language['language']) && StringHelper::check($language['language'])) { $item->{$language['language']} = $language['translation']; } @@ -620,7 +623,7 @@ class ComponentbuilderModelLanguage_translations extends ListModel $headers->id = 'id'; $headers->Source = 'Source'; // add the languages - if (ComponentbuilderHelper::checkArray($languages)) + if (UtilitiesArrayHelper::check($languages)) { foreach ($languages as $language) { diff --git a/admin/models/languages.php b/admin/models/languages.php index 27091efff..0e5bd0ed7 100644 --- a/admin/models/languages.php +++ b/admin/models/languages.php @@ -14,6 +14,7 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; /** * Languages List Model @@ -51,7 +52,7 @@ class ComponentbuilderModelLanguages extends ListModel if ($languages = $this->getLanguages()) { // make sure we have an array - if (ComponentbuilderHelper::checkArray($languages)) + if (UtilitiesArrayHelper::check($languages)) { // get the model $model = ComponentbuilderHelper::getModel('language'); diff --git a/admin/models/layout.php b/admin/models/layout.php index ce6b1cc96..b26fb3146 100644 --- a/admin/models/layout.php +++ b/admin/models/layout.php @@ -16,6 +16,9 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; /** * Componentbuilder Layout Admin Model @@ -123,7 +126,7 @@ class ComponentbuilderModelLayout extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'layout__'.$id); ComponentbuilderHelper::set('layout__'.$id, $this->vastDevMod); // set a return value if found @@ -131,7 +134,7 @@ class ComponentbuilderModelLayout extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -209,7 +212,7 @@ class ComponentbuilderModelLayout extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'layout__'.$id); ComponentbuilderHelper::set('layout__'.$id, $this->vastDevMod); // set a return value if found @@ -217,7 +220,7 @@ class ComponentbuilderModelLayout extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -341,7 +344,7 @@ class ComponentbuilderModelLayout extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -413,7 +416,7 @@ class ComponentbuilderModelLayout extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return parent::canEditState($record); } @@ -683,7 +686,7 @@ class ComponentbuilderModelLayout extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('layout'); } - if (!$this->canDo->get('core.create') || !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.create') && !$this->canDo->get('layout.batch')) { return false; } @@ -821,7 +824,7 @@ class ComponentbuilderModelLayout extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('layout'); } - if (!$this->canDo->get('core.edit') && !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.edit') && !$this->canDo->get('layout.batch')) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); return false; diff --git a/admin/models/library.php b/admin/models/library.php index 2a35c2fd8..b3a31c222 100644 --- a/admin/models/library.php +++ b/admin/models/library.php @@ -16,6 +16,11 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Library Admin Model @@ -138,7 +143,7 @@ class ComponentbuilderModelLibrary extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'library__'.$id); ComponentbuilderHelper::set('library__'.$id, $this->vastDevMod); // set a return value if found @@ -146,7 +151,7 @@ class ComponentbuilderModelLibrary extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -226,7 +231,7 @@ class ComponentbuilderModelLibrary extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'library__'.$id); ComponentbuilderHelper::set('library__'.$id, $this->vastDevMod); // set a return value if found @@ -234,7 +239,7 @@ class ComponentbuilderModelLibrary extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -356,9 +361,9 @@ class ComponentbuilderModelLibrary extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } - + return $form; } @@ -420,7 +425,7 @@ class ComponentbuilderModelLibrary extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('library.edit.state', 'com_componentbuilder'); } @@ -596,7 +601,7 @@ class ComponentbuilderModelLibrary extends AdminModel } } // check if we can still continue - if (!ComponentbuilderHelper::checkArray($pks)) + if (!UtilitiesArrayHelper::check($pks)) { return false; } @@ -606,7 +611,7 @@ class ComponentbuilderModelLibrary extends AdminModel } // we must also delete the linked tables found - if (ComponentbuilderHelper::checkArray($pks)) + if (UtilitiesArrayHelper::check($pks)) { $_tablesArray = array( 'snippet', @@ -647,7 +652,7 @@ class ComponentbuilderModelLibrary extends AdminModel } // we must also update all linked tables - if (ComponentbuilderHelper::checkArray($pks)) + if (UtilitiesArrayHelper::check($pks)) { $_tablesArray = array( 'snippet', @@ -1046,15 +1051,15 @@ class ComponentbuilderModelLibrary extends AdminModel if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('library', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('library', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "library", $data['id'])) + while (!GuidHelper::valid($data['guid'], "library", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the libraries items to data. if (isset($data['libraries']) && is_array($data['libraries'])) diff --git a/admin/models/library_config.php b/admin/models/library_config.php index a7abd5e3c..d3d2459e0 100644 --- a/admin/models/library_config.php +++ b/admin/models/library_config.php @@ -281,7 +281,7 @@ class ComponentbuilderModelLibrary_config extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('library_config.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/library_files_folders_urls.php b/admin/models/library_files_folders_urls.php index 38780de8e..324ee8f5d 100644 --- a/admin/models/library_files_folders_urls.php +++ b/admin/models/library_files_folders_urls.php @@ -327,7 +327,7 @@ class ComponentbuilderModelLibrary_files_folders_urls extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('library_files_folders_urls.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/placeholder.php b/admin/models/placeholder.php index 404d097f4..920f8a8d2 100644 --- a/admin/models/placeholder.php +++ b/admin/models/placeholder.php @@ -16,6 +16,8 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; /** * Componentbuilder Placeholder Admin Model @@ -103,7 +105,7 @@ class ComponentbuilderModelPlaceholder extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'placeholder__'.$id); ComponentbuilderHelper::set('placeholder__'.$id, $this->vastDevMod); // set a return value if found @@ -111,7 +113,7 @@ class ComponentbuilderModelPlaceholder extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -175,7 +177,7 @@ class ComponentbuilderModelPlaceholder extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'placeholder__'.$id); ComponentbuilderHelper::set('placeholder__'.$id, $this->vastDevMod); // set a return value if found @@ -183,7 +185,7 @@ class ComponentbuilderModelPlaceholder extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -362,7 +364,7 @@ class ComponentbuilderModelPlaceholder extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('placeholder.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/power.php b/admin/models/power.php index d005d0f8b..501de225a 100644 --- a/admin/models/power.php +++ b/admin/models/power.php @@ -16,8 +16,12 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; -use VDM\Joomla\Utilities\String\ClassfunctionHelper; +use VDM\Joomla\Componentbuilder\Power\Factory as PowerFactory; use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\String\ClassfunctionHelper; use VDM\Joomla\Utilities\GetHelper; /** @@ -147,7 +151,7 @@ class ComponentbuilderModelPower extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'power__'.$id); ComponentbuilderHelper::set('power__'.$id, $this->vastDevMod); // set a return value if found @@ -155,7 +159,7 @@ class ComponentbuilderModelPower extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -285,7 +289,7 @@ class ComponentbuilderModelPower extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'power__'.$id); ComponentbuilderHelper::set('power__'.$id, $this->vastDevMod); // set a return value if found @@ -293,7 +297,7 @@ class ComponentbuilderModelPower extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -419,7 +423,7 @@ class ComponentbuilderModelPower extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -434,9 +438,9 @@ class ComponentbuilderModelPower extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } - + return $form; } @@ -498,7 +502,7 @@ class ComponentbuilderModelPower extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('power.edit.state', 'com_componentbuilder'); } @@ -1033,11 +1037,13 @@ class ComponentbuilderModelPower extends AdminModel // make sure the name is safe to be used as a function name $data['name'] = ClassfunctionHelper::safe($data['name']); } + // if system name is empty create from name if (empty($data['system_name']) || !UtilitiesStringHelper::check($data['system_name'])) { $data['system_name'] = $data['name']; } + // must set the version if empty if (empty($data['power_version']) && $data['id'] > 0 && ($power_version = GetHelper::var('power', $data['id'], 'id', 'power_version')) !== false) { @@ -1060,20 +1066,26 @@ class ComponentbuilderModelPower extends AdminModel JFactory::getApplication()->input->set('task', 'save2copy'); } } + + // load dynamic code if relevant + if (($main_class_code = PowerFactory::_('Power.Generator')->get($data)) !== null) + { + $data['main_class_code'] = $main_class_code; + } // Set the GUID if empty or not valid if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('power', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('power', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "power", $data['id'])) + while (!GuidHelper::valid($data['guid'], "power", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the method_selection items to data. if (isset($data['method_selection']) && is_array($data['method_selection'])) diff --git a/admin/models/powers.php b/admin/models/powers.php index 03ec428ea..62e60f37f 100644 --- a/admin/models/powers.php +++ b/admin/models/powers.php @@ -16,7 +16,7 @@ use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; use VDM\Joomla\Utilities\Component\Helper as JCBHelper; use VDM\Joomla\Componentbuilder\Utilities\FilterHelper as JCBFilterHelper; -use VDM\Joomla\Componentbuilder\Utilities\FormHelper as JCBFormHelper; +use VDM\Joomla\Utilities\FormHelper as JCBFormHelper; /** * Powers List Model diff --git a/admin/models/server.php b/admin/models/server.php index de6948f84..6f6dd0f20 100644 --- a/admin/models/server.php +++ b/admin/models/server.php @@ -16,6 +16,7 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\FOF\Encrypt\AES; /** * Componentbuilder Server Admin Model @@ -120,7 +121,7 @@ class ComponentbuilderModelServer extends AdminModel // Get the basic encryption. $basickey = ComponentbuilderHelper::getCryptKey('basic'); // Get the encryption object. - $basic = new FOFEncryptAes($basickey); + $basic = new AES($basickey); if (!empty($item->signature) && $basickey && !is_numeric($item->signature) && $item->signature === base64_encode(base64_decode($item->signature, true))) { @@ -443,7 +444,7 @@ class ComponentbuilderModelServer extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('server.edit.state', 'com_componentbuilder'); } @@ -1005,7 +1006,7 @@ class ComponentbuilderModelServer extends AdminModel // Get the basic encryption key. $basickey = ComponentbuilderHelper::getCryptKey('basic'); // Get the encryption object - $basic = new FOFEncryptAes($basickey); + $basic = new AES($basickey); // Encrypt data signature. if (isset($data['signature']) && $basickey) diff --git a/admin/models/servers.php b/admin/models/servers.php index f84fd2a09..dfa6b5215 100644 --- a/admin/models/servers.php +++ b/admin/models/servers.php @@ -14,6 +14,7 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\FOF\Encrypt\AES; /** * Servers List Model @@ -356,7 +357,7 @@ class ComponentbuilderModelServers extends ListModel // Get the basic encryption key. $basickey = ComponentbuilderHelper::getCryptKey('basic'); // Get the encryption object. - $basic = new FOFEncryptAes($basickey); + $basic = new AES($basickey); // Set values to display correctly. if (ComponentbuilderHelper::checkArray($items)) diff --git a/admin/models/site_view.php b/admin/models/site_view.php index 1b9aee892..844413f06 100644 --- a/admin/models/site_view.php +++ b/admin/models/site_view.php @@ -16,6 +16,11 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Site_view Admin Model @@ -169,7 +174,7 @@ class ComponentbuilderModelSite_view extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'site_view__'.$id); ComponentbuilderHelper::set('site_view__'.$id, $this->vastDevMod); // set a return value if found @@ -177,7 +182,7 @@ class ComponentbuilderModelSite_view extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -339,7 +344,7 @@ class ComponentbuilderModelSite_view extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'site_view__'.$id); ComponentbuilderHelper::set('site_view__'.$id, $this->vastDevMod); // set a return value if found @@ -347,7 +352,7 @@ class ComponentbuilderModelSite_view extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -510,7 +515,7 @@ class ComponentbuilderModelSite_view extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -525,9 +530,9 @@ class ComponentbuilderModelSite_view extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } - + return $form; } @@ -589,7 +594,7 @@ class ComponentbuilderModelSite_view extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return parent::canEditState($record); } @@ -859,7 +864,7 @@ class ComponentbuilderModelSite_view extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('site_view'); } - if (!$this->canDo->get('core.create') || !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.create') && !$this->canDo->get('site_view.batch')) { return false; } @@ -1002,7 +1007,7 @@ class ComponentbuilderModelSite_view extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('site_view'); } - if (!$this->canDo->get('core.edit') && !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.edit') && !$this->canDo->get('site_view.batch')) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); return false; @@ -1115,44 +1120,44 @@ class ComponentbuilderModelSite_view extends AdminModel // always reset the snippets $data['snippet'] = 0; // if system name is empty create from name - if (empty($data['system_name']) || !ComponentbuilderHelper::checkString($data['system_name'])) + if (empty($data['system_name']) || !UtilitiesStringHelper::check($data['system_name'])) { $data['system_name'] = $data['name']; } // if codename is empty create from name - if (empty($data['codename']) || !ComponentbuilderHelper::checkString($data['codename'])) + if (empty($data['codename']) || !UtilitiesStringHelper::check($data['codename'])) { - $data['codename'] = ComponentbuilderHelper::safeString($data['name']); + $data['codename'] = UtilitiesStringHelper::safe($data['name']); } else { // always make safe string - $data['codename'] = ComponentbuilderHelper::safeString($data['codename']); + $data['codename'] = UtilitiesStringHelper::safe($data['codename']); } // if context is empty create from codename - if (empty($data['context']) || !ComponentbuilderHelper::checkString($data['context'])) + if (empty($data['context']) || !UtilitiesStringHelper::check($data['context'])) { $data['context'] = $data['codename']; } else { // always make safe string - $data['context'] = ComponentbuilderHelper::safeString($data['context']); + $data['context'] = UtilitiesStringHelper::safe($data['context']); } // Set the GUID if empty or not valid if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('site_view', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('site_view', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "site_view", $data['id'])) + while (!GuidHelper::valid($data['guid'], "site_view", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the custom_get items to data. if (isset($data['custom_get']) && is_array($data['custom_get'])) diff --git a/admin/models/site_views.php b/admin/models/site_views.php index 1f636d217..2b9240617 100644 --- a/admin/models/site_views.php +++ b/admin/models/site_views.php @@ -14,7 +14,7 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; -use VDM\Joomla\Componentbuilder\Utilities\FormHelper as JCBFormHelper; +use VDM\Joomla\Utilities\FormHelper as JCBFormHelper; use VDM\Joomla\Componentbuilder\Utilities\FilterHelper as JCBFilterHelper; /** diff --git a/admin/models/snippet.php b/admin/models/snippet.php index 6b875bd09..acd7306bd 100644 --- a/admin/models/snippet.php +++ b/admin/models/snippet.php @@ -16,6 +16,9 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\GuidHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\GetHelper; /** * Componentbuilder Snippet Admin Model @@ -241,9 +244,9 @@ class ComponentbuilderModelSnippet extends AdminModel // Only load the GUID if new item (or empty) if (0 == $id || !($val = $form->getValue('guid'))) { - $form->setValue('guid', null, ComponentbuilderHelper::GUID()); + $form->setValue('guid', null, GuidHelper::get()); } - + return $form; } @@ -305,7 +308,7 @@ class ComponentbuilderModelSnippet extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return parent::canEditState($record); } @@ -575,7 +578,7 @@ class ComponentbuilderModelSnippet extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('snippet'); } - if (!$this->canDo->get('core.create') || !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.create') && !$this->canDo->get('snippet.batch')) { return false; } @@ -718,7 +721,7 @@ class ComponentbuilderModelSnippet extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('snippet'); } - if (!$this->canDo->get('core.edit') && !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.edit') && !$this->canDo->get('snippet.batch')) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); return false; @@ -836,7 +839,7 @@ class ComponentbuilderModelSnippet extends AdminModel // get the library name $type = ($name = ComponentbuilderHelper::getVar('snippet_type', $item['type'], 'id', 'name')) ? $name:'No Library'; // build the filename - $filename = ComponentbuilderHelper::safeString($library . ' - (' . $type . ') ' . $item['name'], 'filename', '', false). '.json'; + $filename = UtilitiesStringHelper::safe($library . ' - (' . $type . ') ' . $item['name'], 'filename', '', false). '.json'; // now get the contributor details (slow) $contributor = ComponentbuilderHelper::getContributorDetails($filename); // now update the local snippet contributor details @@ -850,15 +853,15 @@ class ComponentbuilderModelSnippet extends AdminModel if (empty($data['guid']) && $data['id'] > 0) { // get the existing one - $data['guid'] = (string) ComponentbuilderHelper::getVar('snippet', $data['id'], 'id', 'guid'); + $data['guid'] = (string) GetHelper::var('snippet', $data['id'], 'id', 'guid'); } + // Set the GUID if empty or not valid - while (!ComponentbuilderHelper::validGUID($data['guid'], "snippet", $data['id'])) + while (!GuidHelper::valid($data['guid'], "snippet", $data['id'])) { // must always be set - $data['guid'] = (string) ComponentbuilderHelper::GUID(); - } - + $data['guid'] = (string) GuidHelper::get(); + } // Set the snippet string to base64 string. if (isset($data['snippet'])) diff --git a/admin/models/snippet_type.php b/admin/models/snippet_type.php index f4ef6768d..282a7cdd3 100644 --- a/admin/models/snippet_type.php +++ b/admin/models/snippet_type.php @@ -271,7 +271,7 @@ class ComponentbuilderModelSnippet_type extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('snippet_type.edit.state', 'com_componentbuilder'); } diff --git a/admin/models/snippets.php b/admin/models/snippets.php index b02657bc6..8c32f55a4 100644 --- a/admin/models/snippets.php +++ b/admin/models/snippets.php @@ -14,6 +14,9 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Model\ListModel; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\StringHelper; /** * Snippets List Model @@ -53,15 +56,15 @@ class ComponentbuilderModelSnippets extends ListModel public function shareSnippets($pks) { // setup the query - if (ComponentbuilderHelper::checkArray($pks)) + if (UtilitiesArrayHelper::check($pks)) { // Get the user object. - if (!ComponentbuilderHelper::checkObject($this->user)) + if (!ObjectHelper::check($this->user)) { $this->user = JFactory::getUser(); } // Create a new query object. - if (!ComponentbuilderHelper::checkObject($this->_db)) + if (!ObjectHelper::check($this->_db)) { $this->_db = JFactory::getDBO(); } @@ -99,7 +102,7 @@ class ComponentbuilderModelSnippets extends ListModel // load the items from db $items = $this->_db->loadObjectList(); // check if we have items - if (ComponentbuilderHelper::checkArray($items)) + if (UtilitiesArrayHelper::check($items)) { // get the shared paths $this->fullPath = rtrim(ComponentbuilderHelper::getFolderPath('path', 'sharepath', JFactory::getConfig()->get('tmp_path')), '/') . '/snippets'; @@ -125,7 +128,7 @@ class ComponentbuilderModelSnippets extends ListModel // just unlock the snippet $item->snippet = base64_decode($item->snippet); // build filename - $fileName = ComponentbuilderHelper::safeString($item->library . ' - (' . $item->type . ') ' . $item->name, 'filename', '', false) . '.json'; + $fileName = StringHelper::safe($item->library . ' - (' . $item->type . ') ' . $item->name, 'filename', '', false) . '.json'; // if the snippet has its own contributor details set, then do not change if (!strlen($item->contributor_company) || !strlen($item->contributor_name) || !strlen($item->contributor_email) || !strlen($item->contributor_website)) { diff --git a/admin/models/template.php b/admin/models/template.php index 751332deb..a77583393 100644 --- a/admin/models/template.php +++ b/admin/models/template.php @@ -16,6 +16,9 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; +use VDM\Joomla\Utilities\ArrayHelper as UtilitiesArrayHelper; /** * Componentbuilder Template Admin Model @@ -123,7 +126,7 @@ class ComponentbuilderModelTemplate extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'template__'.$id); ComponentbuilderHelper::set('template__'.$id, $this->vastDevMod); // set a return value if found @@ -131,7 +134,7 @@ class ComponentbuilderModelTemplate extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -209,7 +212,7 @@ class ComponentbuilderModelTemplate extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'template__'.$id); ComponentbuilderHelper::set('template__'.$id, $this->vastDevMod); // set a return value if found @@ -217,7 +220,7 @@ class ComponentbuilderModelTemplate extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -341,7 +344,7 @@ class ComponentbuilderModelTemplate extends AdminModel // now get all the editor fields $editors = $form->getXml()->xpath("//field[@type='editor']"); // check if we found any - if (ComponentbuilderHelper::checkArray($editors)) + if (UtilitiesArrayHelper::check($editors)) { foreach ($editors as $editor) { @@ -413,7 +416,7 @@ class ComponentbuilderModelTemplate extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return parent::canEditState($record); } @@ -683,7 +686,7 @@ class ComponentbuilderModelTemplate extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('template'); } - if (!$this->canDo->get('core.create') || !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.create') && !$this->canDo->get('template.batch')) { return false; } @@ -821,7 +824,7 @@ class ComponentbuilderModelTemplate extends AdminModel $this->canDo = ComponentbuilderHelper::getActions('template'); } - if (!$this->canDo->get('core.edit') && !$this->canDo->get('core.batch')) + if (!$this->canDo->get('core.edit') && !$this->canDo->get('template.batch')) { $this->setError(JText::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); return false; diff --git a/admin/models/validation_rule.php b/admin/models/validation_rule.php index ffab04481..864092ff0 100644 --- a/admin/models/validation_rule.php +++ b/admin/models/validation_rule.php @@ -16,6 +16,8 @@ use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper as UtilitiesStringHelper; +use VDM\Joomla\Utilities\ObjectHelper; /** * Componentbuilder Validation_rule Admin Model @@ -106,7 +108,7 @@ class ComponentbuilderModelValidation_rule extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'validation_rule__'.$id); ComponentbuilderHelper::set('validation_rule__'.$id, $this->vastDevMod); // set a return value if found @@ -114,7 +116,7 @@ class ComponentbuilderModelValidation_rule extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -178,7 +180,7 @@ class ComponentbuilderModelValidation_rule extends AdminModel else { // set the vast development method key - $this->vastDevMod = ComponentbuilderHelper::randomkey(50); + $this->vastDevMod = UtilitiesStringHelper::random(50); ComponentbuilderHelper::set($this->vastDevMod, 'validation_rule__'.$id); ComponentbuilderHelper::set('validation_rule__'.$id, $this->vastDevMod); // set a return value if found @@ -186,7 +188,7 @@ class ComponentbuilderModelValidation_rule extends AdminModel $return = $jinput->get('return', null, 'base64'); ComponentbuilderHelper::set($this->vastDevMod . '__return', $return); // set a GUID value if found - if (isset($item) && ComponentbuilderHelper::checkObject($item) && isset($item->guid) + if (isset($item) && ObjectHelper::check($item) && isset($item->guid) && method_exists('ComponentbuilderHelper', 'validGUID') && ComponentbuilderHelper::validGUID($item->guid)) { @@ -365,7 +367,7 @@ class ComponentbuilderModelValidation_rule extends AdminModel return false; } } - // In the absense of better information, revert to the component permissions. + // In the absence of better information, revert to the component permissions. return $user->authorise('validation_rule.edit.state', 'com_componentbuilder'); } diff --git a/admin/sql/install.mysql.utf8.sql b/admin/sql/install.mysql.utf8.sql index 1c589d42e..09d2e31d9 100644 --- a/admin/sql/install.mysql.utf8.sql +++ b/admin/sql/install.mysql.utf8.sql @@ -1149,10 +1149,10 @@ CREATE TABLE IF NOT EXISTS `#__componentbuilder_fieldtype` ( KEY `idx_indexes` (`indexes`), KEY `idx_datadefault_other` (`datadefault_other`), KEY `idx_datadefault` (`datadefault`), - KEY `idx_datalenght_other` (`datalenght_other`), KEY `idx_datatype` (`datatype`), KEY `idx_has_defaults` (`has_defaults`), KEY `idx_datalenght` (`datalenght`), + KEY `idx_datalenght_other` (`datalenght_other`), KEY `idx_guid` (`guid`), KEY `idx_catid` (`catid`), KEY `idx_access` (`access`), @@ -1981,7 +1981,7 @@ INSERT INTO `#__componentbuilder_admin_view` (`id`, `add_css_view`, `add_css_vie INSERT INTO `#__componentbuilder_site_view` (`id`, `add_css_document`, `add_css`, `add_js_document`, `add_php_document`, `add_php_jview`, `add_php_jview_display`, `add_php_view`, `add_php_ajax`, `add_custom_button`, `custom_button`, `button_position`, `php_controller`, `php_model`, `ajax_input`, `php_ajaxmethod`, `codename`, `css_document`, `css`, `custom_get`, `default`, `description`, `dynamic_get`, `js_document`, `main_get`, `name`, `system_name`, `php_document`, `php_jview`, `php_jview_display`, `php_view`, `snippet`, `params`, `published`, `created`, `modified`, `version`, `hits`, `ordering`, `guid`) VALUES (23, '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 'looks', '', '', '', 'PHRhYmxlIGNsYXNzPSJ1ay10YWJsZSB1ay10YWJsZS1ob3ZlciI+DQogICAgPGNhcHRpb24+PD9waHAgZWNobyBKVGV4dDo6XygnTGlzdCBvZiBhbGwgbG9va3MnKTsgPz48L2NhcHRpb24+DQogICAgPHRoZWFkPg0KICAgICAgICA8dHI+DQogICAgICAgICAgICA8dGg+PD9waHAgZWNobyBKVGV4dDo6XygnTmFtZScpOyA/PjwvdGg+DQogICAgICAgICAgICA8dGg+PD9waHAgZWNobyBKVGV4dDo6XygnRGVzY3JpcHRpb24nKTsgPz48L3RoPg0KICAgICAgICA8L3RyPg0KICAgIDwvdGhlYWQ+DQogICAgPHRib2R5Pg0KICAgICAgICA8P3BocCBmb3JlYWNoICgkdGhpcy0+aXRlbXMgYXMgJGl0ZW0pOiA/Pg0KICAgICAgICA8dHI+DQogICAgICAgICAgICA8dGQ+PGEgaHJlZj0iPD9waHAgZWNobyAgW1tbQ29tcG9uZW50XV1dSGVscGVyUm91dGU6OmdldExvb2tpbmdSb3V0ZSgkaXRlbS0+c2x1Zyk7ID8+IiA+PD9waHAgZWNobyAkaXRlbS0+bmFtZTsgPz48L2E+PC90ZD4NCiAgICAgICAgICAgIDx0ZD48P3BocCBlY2hvICR0aGlzLT5lc2NhcGUoJGl0ZW0tPmRlc2NyaXB0aW9uLCB0cnVlLCAxMjApOyA/Pjw/cGhwIGVjaG8gJGl0ZW0tPmVkaXRMaW5rOyA/PjwvdGQ+DQogICAgICAgIDwvdHI+DQogICAgICAgIDw/cGhwIGVuZGZvcmVhY2g7ID8+DQogICAgPC90Ym9keT4NCjwvdGFibGU+', 'The List of all published looks', 36, '', 36, 'Looks', 'Looks', '', '', '', '', '', '', 1, '2016-04-05 14:31:59', '2016-10-20 15:57:24', 9, '', 14, 'b2dce59e-e3b8-4467-bcb5-8f2df4bdfeb7'), -(25, '', '', '', '', 1, 1, '', '', '', '', 1, '', '', '', '', 'looking', '', '', '', 'PGFydGljbGUgY2xhc3M9InVrLWNvbW1lbnQiPg0KICAgIDxoZWFkZXIgY2xhc3M9InVrLWNvbW1lbnQtaGVhZGVyIj4NCiAgICAgICAgPGltZyBjbGFzcz0idWstY29tbWVudC1hdmF0YXIiIHNyYz0ie2ltYWdldXJsfSIgYWx0PSIiPg0KICAgICAgICA8aDQgY2xhc3M9InVrLWNvbW1lbnQtdGl0bGUiPjw/cGhwIGVjaG8gJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+bmFtZSk7ID8+PC9oND4NCiAgICAgICAgPGRpdiBjbGFzcz0idWstY29tbWVudC1tZXRhIj48P3BocCBlY2hvIEpUZXh0OjpfKCdIaXRzJyk7ID8+OiA8P3BocCBlY2hvICR0aGlzLT5pdGVtLT5oaXRzOyA/PjwvZGl2Pg0KICAgIDwvaGVhZGVyPg0KICAgIDxkaXYgY2xhc3M9InVrLWNvbW1lbnQtYm9keSI+DQogICAgICAgIDw/cGhwIGVjaG8gJHRoaXMtPml0ZW0tPmRlc2NyaXB0aW9uOyA/Pg0KICAgICAgICA8P3BocCBpZiAoJHRoaXMtPml0ZW0tPmFkZCk6ID8+DQogICAgICAgICAgICA8YnIgLz4NCiAgICAgICAgICAgIDwhLS0gVGhpcyBpcyBhIGJ1dHRvbiB0b2dnbGluZyB0aGUgbW9kYWwgLS0+DQogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJ1ay1idXR0b24iIGRhdGEtdWstbW9kYWw9Int0YXJnZXQ6JyNtb3JlLWRldGFpbHMtMDkwJ30iPjw/cGhwIGVjaG8gSlRleHQ6Ol8oJ01vcmUgRGV0YWlscycpOyA/PjwvYnV0dG9uPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICA8L2Rpdj4NCjwvYXJ0aWNsZT4NCjw/cGhwIGlmICgkdGhpcy0+aXRlbS0+YWRkKTogPz4NCjwhLS0gVGhpcyBpcyB0aGUgbW9kYWwgLS0+DQo8ZGl2IGlkPSJtb3JlLWRldGFpbHMtMDkwIiBjbGFzcz0idWstbW9kYWwiPg0KICAgIDxkaXYgY2xhc3M9InVrLW1vZGFsLWRpYWxvZyI+DQogICAgICAgIDxhIGNsYXNzPSJ1ay1tb2RhbC1jbG9zZSB1ay1jbG9zZSI+PC9hPg0KICAgICAgICA8ZGwgY2xhc3M9InVrLWRlc2NyaXB0aW9uLWxpc3QtaG9yaXpvbnRhbCI+DQogICAgICAgIDw/cGhwIGlmIChbW1tDb21wb25lbnRdXV1IZWxwZXI6OmNoZWNrU3RyaW5nKCR0aGlzLT5pdGVtLT5kYXRlb2ZiaXJ0aCkpOiA/Pg0KICAgICAgICAgICAgPGR0Pjw/cGhwIGVjaG8gSlRleHQ6Ol8oJ0JpcnRoIGRheScpOyA/PjwvZHQ+PGRkPjw/cGhwIGVjaG8gW1tbQ29tcG9uZW50XV1dSGVscGVyOjpmYW5jeURhdGUoJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+ZGF0ZW9mYmlydGgpKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPD9waHAgaWYgKFtbW0NvbXBvbmVudF1dXUhlbHBlcjo6Y2hlY2tTdHJpbmcoJHRoaXMtPml0ZW0tPmVtYWlsKSk6ID8+DQogICAgICAgICAgICA8ZHQ+PD9waHAgZWNobyBKVGV4dDo6XygnRW1haWwnKTsgPz48L2R0PjxkZD48P3BocCBlY2hvICR0aGlzLT5lc2NhcGUoJHRoaXMtPml0ZW0tPmVtYWlsKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPD9waHAgaWYgKFtbW0NvbXBvbmVudF1dXUhlbHBlcjo6Y2hlY2tTdHJpbmcoJHRoaXMtPml0ZW0tPm1vYmlsZV9waG9uZSkpOiA/Pg0KICAgICAgICAgICAgPGR0Pjw/cGhwIGVjaG8gSlRleHQ6Ol8oJ01vYmlsZScpOyA/PjwvZHQ+PGRkPjw/cGhwIGVjaG8gJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+bW9iaWxlX3Bob25lKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPD9waHAgaWYgKFtbW0NvbXBvbmVudF1dXUhlbHBlcjo6Y2hlY2tTdHJpbmcoJHRoaXMtPml0ZW0tPndlYnNpdGUpKTogPz4NCiAgICAgICAgICAgIDxkdD48P3BocCBlY2hvIEpUZXh0OjpfKCdXZWJzaXRlJyk7ID8+PC9kdD48ZGQ+PD9waHAgZWNobyAkdGhpcy0+ZXNjYXBlKCR0aGlzLT5pdGVtLT53ZWJzaXRlKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPC9kbD4NCiAgICA8L2Rpdj4NCjwvZGl2Pg0KPD9waHAgZW5kaWY7ID8+', 'Looking at a look', 39, '', 39, 'Looking', 'Looking', '', 'CSAvKioNCgkgKiBJbmNyZW1lbnQgdGhlIGhpdCBjb3VudGVyIGZvciB0aGUgcHJlYWNoZXIuDQoJICoNCgkgKiBAcGFyYW0gICBpbnRlZ2VyICAkcGsgIFByaW1hcnkga2V5IG9mIHRoZSBwcmVhY2hlciB0byBpbmNyZW1lbnQuDQoJICoNCgkgKiBAcmV0dXJuICBib29sZWFuICBUcnVlIGlmIHN1Y2Nlc3NmdWw7DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGhpdCgkcGsgPSAwKQ0KCXsNCgkJaWYgKCRwaykNCgkJew0KCQkJJGRiID0gSkZhY3Rvcnk6OmdldERibygpOw0KCQkJJHF1ZXJ5ID0gJGRiLT5nZXRRdWVyeSh0cnVlKTsNCg0KCQkJLy8gRmllbGRzIHRvIHVwZGF0ZS4NCgkJCSRmaWVsZHMgPSBhcnJheSgNCgkJCSAgICAkZGItPnF1b3RlTmFtZSgnaGl0cycpIC4gJyA9ICcuJGRiLT5xdW90ZU5hbWUoJ2hpdHMnKS4nICsgMScNCgkJCSk7DQoNCgkJCS8vIENvbmRpdGlvbnMgZm9yIHdoaWNoIHJlY29yZHMgc2hvdWxkIGJlIHVwZGF0ZWQuDQoJCQkkY29uZGl0aW9ucyA9IGFycmF5KA0KCQkJICAgICRkYi0+cXVvdGVOYW1lKCdpZCcpIC4gJyA9ICcgLiAkcGsNCgkJCSk7DQoNCgkJCSRxdWVyeS0+dXBkYXRlKCRkYi0+cXVvdGVOYW1lKCcjX19bW1tjb21wb25lbnRdXV1fbG9vaycpKS0+c2V0KCRmaWVsZHMpLT53aGVyZSgkY29uZGl0aW9ucyk7DQoNCgkJCSRkYi0+c2V0UXVlcnkoJHF1ZXJ5KTsNCgkJCXJldHVybiAkZGItPmV4ZWN1dGUoKTsNCgkJfQ0KCQlyZXR1cm4gZmFsc2U7DQoJfQ==', 'Ly8gYWRkIGEgaGl0IHRvIHRoZSBsb29rDQppZiAoJHRoaXMtPmhpdCgkdGhpcy0+aXRlbS0+aWQpKQ0Kew0KCSR0aGlzLT5pdGVtLT5oaXRzKys7DQp9', '', '', '', 1, '2016-10-20 15:11:29', '2016-10-20 17:10:58', 16, '', 14, '851ed44e-5431-4951-876f-4b62a4c56ad2'); +(25, '', '', '', '', 1, 1, '', '', '', '', 1, '', '', '', '', 'looking', '', '', '', 'PGFydGljbGUgY2xhc3M9InVrLWNvbW1lbnQiPg0KICAgIDxoZWFkZXIgY2xhc3M9InVrLWNvbW1lbnQtaGVhZGVyIj4NCiAgICAgICAgPGltZyBjbGFzcz0idWstY29tbWVudC1hdmF0YXIiIHNyYz0ie2ltYWdldXJsfSIgYWx0PSIiPg0KICAgICAgICA8aDQgY2xhc3M9InVrLWNvbW1lbnQtdGl0bGUiPjw/cGhwIGVjaG8gJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+bmFtZSk7ID8+PC9oND4NCiAgICAgICAgPGRpdiBjbGFzcz0idWstY29tbWVudC1tZXRhIj48P3BocCBlY2hvIEpUZXh0OjpfKCdIaXRzJyk7ID8+OiA8P3BocCBlY2hvICR0aGlzLT5pdGVtLT5oaXRzOyA/PjwvZGl2Pg0KICAgIDwvaGVhZGVyPg0KICAgIDxkaXYgY2xhc3M9InVrLWNvbW1lbnQtYm9keSI+DQogICAgICAgIDw/cGhwIGVjaG8gJHRoaXMtPml0ZW0tPmRlc2NyaXB0aW9uOyA/Pg0KICAgICAgICA8P3BocCBpZiAoJHRoaXMtPml0ZW0tPmFkZCk6ID8+DQogICAgICAgICAgICA8YnIgLz4NCiAgICAgICAgICAgIDwhLS0gVGhpcyBpcyBhIGJ1dHRvbiB0b2dnbGluZyB0aGUgbW9kYWwgLS0+DQogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJ1ay1idXR0b24iIGRhdGEtdWstbW9kYWw9Int0YXJnZXQ6JyNtb3JlLWRldGFpbHMtMDkwJ30iPjw/cGhwIGVjaG8gSlRleHQ6Ol8oJ01vcmUgRGV0YWlscycpOyA/PjwvYnV0dG9uPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICA8L2Rpdj4NCjwvYXJ0aWNsZT4NCjw/cGhwIGlmICgkdGhpcy0+aXRlbS0+YWRkKTogPz4NCjwhLS0gVGhpcyBpcyB0aGUgbW9kYWwgLS0+DQo8ZGl2IGlkPSJtb3JlLWRldGFpbHMtMDkwIiBjbGFzcz0idWstbW9kYWwiPg0KICAgIDxkaXYgY2xhc3M9InVrLW1vZGFsLWRpYWxvZyI+DQogICAgICAgIDxhIGNsYXNzPSJ1ay1tb2RhbC1jbG9zZSB1ay1jbG9zZSI+PC9hPg0KICAgICAgICA8ZGwgY2xhc3M9InVrLWRlc2NyaXB0aW9uLWxpc3QtaG9yaXpvbnRhbCI+DQogICAgICAgIDw/cGhwIGlmIChTdXBlcl9fXzFmMjhjYjUzXzYwZDlfNGRiMV9iNTE3XzNjN2RjNmI0MjllZl9fX1Bvd2VyOjpjaGVjaygkdGhpcy0+aXRlbS0+ZGF0ZW9mYmlydGgpKTogPz4NCiAgICAgICAgICAgIDxkdD48P3BocCBlY2hvIEpUZXh0OjpfKCdCaXJ0aCBkYXknKTsgPz48L2R0PjxkZD48P3BocCBlY2hvIFtbW0NvbXBvbmVudF1dXUhlbHBlcjo6ZmFuY3lEYXRlKCR0aGlzLT5lc2NhcGUoJHRoaXMtPml0ZW0tPmRhdGVvZmJpcnRoKSk7ID8+PC9kZD4NCiAgICAgICAgPD9waHAgZW5kaWY7ID8+DQogICAgICAgIDw/cGhwIGlmIChTdXBlcl9fXzFmMjhjYjUzXzYwZDlfNGRiMV9iNTE3XzNjN2RjNmI0MjllZl9fX1Bvd2VyOjpjaGVjaygkdGhpcy0+aXRlbS0+ZW1haWwpKTogPz4NCiAgICAgICAgICAgIDxkdD48P3BocCBlY2hvIEpUZXh0OjpfKCdFbWFpbCcpOyA/PjwvZHQ+PGRkPjw/cGhwIGVjaG8gJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+ZW1haWwpOyA/PjwvZGQ+DQogICAgICAgIDw/cGhwIGVuZGlmOyA/Pg0KICAgICAgICA8P3BocCBpZiAoU3VwZXJfX18xZjI4Y2I1M182MGQ5XzRkYjFfYjUxN18zYzdkYzZiNDI5ZWZfX19Qb3dlcjo6Y2hlY2soJHRoaXMtPml0ZW0tPm1vYmlsZV9waG9uZSkpOiA/Pg0KICAgICAgICAgICAgPGR0Pjw/cGhwIGVjaG8gSlRleHQ6Ol8oJ01vYmlsZScpOyA/PjwvZHQ+PGRkPjw/cGhwIGVjaG8gJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+bW9iaWxlX3Bob25lKTsgPz48L2RkPg0KICAgICAgICA8P3BocCBlbmRpZjsgPz4NCiAgICAgICAgPD9waHAgaWYgKFN1cGVyX19fMWYyOGNiNTNfNjBkOV80ZGIxX2I1MTdfM2M3ZGM2YjQyOWVmX19fUG93ZXI6OmNoZWNrKCR0aGlzLT5pdGVtLT53ZWJzaXRlKSk6ID8+DQogICAgICAgICAgICA8ZHQ+PD9waHAgZWNobyBKVGV4dDo6XygnV2Vic2l0ZScpOyA/PjwvZHQ+PGRkPjw/cGhwIGVjaG8gJHRoaXMtPmVzY2FwZSgkdGhpcy0+aXRlbS0+d2Vic2l0ZSk7ID8+PC9kZD4NCiAgICAgICAgPD9waHAgZW5kaWY7ID8+DQogICAgICAgIDwvZGw+DQogICAgPC9kaXY+DQo8L2Rpdj4NCjw/cGhwIGVuZGlmOyA/Pg==', 'Looking at a look', 39, '', 39, 'Looking', 'Looking', '', 'CSAvKioNCgkgKiBJbmNyZW1lbnQgdGhlIGhpdCBjb3VudGVyIGZvciB0aGUgcHJlYWNoZXIuDQoJICoNCgkgKiBAcGFyYW0gICBpbnRlZ2VyICAkcGsgIFByaW1hcnkga2V5IG9mIHRoZSBwcmVhY2hlciB0byBpbmNyZW1lbnQuDQoJICoNCgkgKiBAcmV0dXJuICBib29sZWFuICBUcnVlIGlmIHN1Y2Nlc3NmdWw7DQoJICovDQoJcHVibGljIGZ1bmN0aW9uIGhpdCgkcGsgPSAwKQ0KCXsNCgkJaWYgKCRwaykNCgkJew0KCQkJJGRiID0gSkZhY3Rvcnk6OmdldERibygpOw0KCQkJJHF1ZXJ5ID0gJGRiLT5nZXRRdWVyeSh0cnVlKTsNCg0KCQkJLy8gRmllbGRzIHRvIHVwZGF0ZS4NCgkJCSRmaWVsZHMgPSBhcnJheSgNCgkJCSAgICAkZGItPnF1b3RlTmFtZSgnaGl0cycpIC4gJyA9ICcuJGRiLT5xdW90ZU5hbWUoJ2hpdHMnKS4nICsgMScNCgkJCSk7DQoNCgkJCS8vIENvbmRpdGlvbnMgZm9yIHdoaWNoIHJlY29yZHMgc2hvdWxkIGJlIHVwZGF0ZWQuDQoJCQkkY29uZGl0aW9ucyA9IGFycmF5KA0KCQkJICAgICRkYi0+cXVvdGVOYW1lKCdpZCcpIC4gJyA9ICcgLiAkcGsNCgkJCSk7DQoNCgkJCSRxdWVyeS0+dXBkYXRlKCRkYi0+cXVvdGVOYW1lKCcjX19bW1tjb21wb25lbnRdXV1fbG9vaycpKS0+c2V0KCRmaWVsZHMpLT53aGVyZSgkY29uZGl0aW9ucyk7DQoNCgkJCSRkYi0+c2V0UXVlcnkoJHF1ZXJ5KTsNCgkJCXJldHVybiAkZGItPmV4ZWN1dGUoKTsNCgkJfQ0KCQlyZXR1cm4gZmFsc2U7DQoJfQ==', 'Ly8gYWRkIGEgaGl0IHRvIHRoZSBsb29rDQppZiAoJHRoaXMtPmhpdCgkdGhpcy0+aXRlbS0+aWQpKQ0Kew0KCSR0aGlzLT5pdGVtLT5oaXRzKys7DQp9', '', '', '', 1, '2016-10-20 15:11:29', '2016-10-20 17:10:58', 16, '', 14, '851ed44e-5431-4951-876f-4b62a4c56ad2'); -- -- Dumping data for table `#__componentbuilder_dynamic_get` @@ -2167,13 +2167,13 @@ INSERT INTO `#__componentbuilder_validation_rule` (`id`, `name`, `php`, `short_d -- INSERT INTO `#__componentbuilder_field` (`id`, `add_css_view`, `add_css_views`, `add_javascript_view_footer`, `add_javascript_views_footer`, `css_view`, `css_views`, `datadefault`, `datadefault_other`, `datalenght`, `datalenght_other`, `datatype`, `indexes`, `javascript_view_footer`, `javascript_views_footer`, `name`, `null_switch`, `store`, `fieldtype`, `xml`, `published`, `created`, `modified`, `version`, `hits`, `ordering`, `guid`) VALUES -(23, '', '', '', '', '', '', '', '', 64, '', 'CHAR', '', '', '', 'Alias', 'NOT NULL', '', 24, '\"\"', 1, '2015-04-09 13:46:04', '2022-09-21 10:17:10', 2, '', 216, '335866ce-b81b-4329-901d-c20254135c9c'), +(23, '', '', '', '', '', '', '', '', 64, '', 'CHAR', 2, '', '', 'Alias', 'NOT NULL', '', 24, '\"\"', 1, '2015-04-09 13:46:04', '2023-06-27 23:46:54', 3, '', 216, '335866ce-b81b-4329-901d-c20254135c9c'), (84, '', '', '', '', '', '', '', '', '', '', 'TEXT', '', '', '', 'Description (full width)', 'NOT NULL', '', 25, '\"\"', 1, '2015-03-19 18:20:49', '2022-09-21 10:17:10', 4, '', 265, '749a9917-90c3-49c4-9e72-aa33b0683a87'), (100, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', '', '', '', 'Email (required)', 'NOT NULL', '', 24, '\"\"', 1, '2015-05-05 23:44:32', '2016-02-07 22:43:18', 4, '', 285, '10c1eccb-b3c3-4325-a056-45a72d116fd8'), (158, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', '', '', '', 'Image', 'NOT NULL', '', 12, '\"\"', 1, '2015-04-29 14:00:56', '2020-06-07 02:17:46', 2, '', 45, '0d6970af-b361-4f65-84f6-0eb0c5f09bad'), (196, '', '', '', '', '', '', '', '', 64, '', 'VARCHAR', '', '', '', 'Mobile Phone', 'NOT NULL', '', 23, '\"\"', 1, '2015-04-07 22:12:58', '2016-03-28 14:00:02', 2, '', 7, '65933a19-243a-48b2-aae9-34e2da710051'), -(199, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Name', 'NOT NULL', '', 24, '\"\"', 1, '2015-03-19 17:30:59', '2022-09-21 10:17:10', 8, '', 4, '5d3d34dd-4876-4c6a-86ab-b4e162f22c08'), -(203, '', '', '', '', '', '', '', '', 1, '', 'INT', '', '', '', 'Not Required', 'NOT NULL', '', 9, '\"\"', 1, '2015-05-08 16:19:16', '2020-02-27 20:17:33', 13, '', 19, 'da5e6901-6958-40e5-a4f5-6822d6fe57ac'), +(199, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', 2, '', '', 'Name (Key - Required)', 'NOT NULL', '', 24, '\"\"', 1, '2015-03-19 17:30:59', '2023-06-19 22:38:40', 10, '', 4, '5d3d34dd-4876-4c6a-86ab-b4e162f22c08'), +(203, '', '', '', '', '', '', '', '', 1, '', 'INT', '', '', '', 'Not Required', 'NOT NULL', '', 9, '\"\"', 1, '2015-05-08 16:19:16', '2023-09-27 07:57:19', 16, '', 19, 'da5e6901-6958-40e5-a4f5-6822d6fe57ac'), (280, '', '', '', '', '', '', '', '', 255, '', 'VARCHAR', '', '', '', 'Website', 'NOT NULL', '', 27, '\"\"', 1, '2015-04-08 00:36:16', '2018-07-08 00:11:05', 2, '', 105, '6c3a6983-d1bf-4e5e-9e99-deea00b0cefd'), (682, '', '', '', '', '', '', '', '', 1, '', 'TINYINT', 2, '', '', 'Add More', 'NOT NULL', '', 17, '\"\"', 1, '2015-08-05 01:18:20', '2023-01-20 11:15:45', 7, '', 196, 'a66389aa-2323-4f44-8c23-ff44969639be'), (1011, '', '', '', '', '', '', 'Other', '0000-00-00', '', '', 'DATE', '', '', '', 'Date of Birth', 'NOT NULL', '', 1, '\"\"', 1, '2015-12-07 01:47:32', '2018-08-03 09:56:07', 4, '', 649, 'cb2bdf20-8800-407b-a4f6-250152a0bdfb'); @@ -2473,7 +2473,8 @@ INSERT INTO `#__componentbuilder_library_files_folders_urls` (`id`, `addfiles`, (7, '{}', '{}', '{\"addurls0\":{\"url\":\"https:\\/\\/cdn.jsdelivr.net\\/npm\\/vue\",\"type\":3}}', 10, '', 1, '2020-06-05 13:11:54', '0000-00-00 00:00:00', 1, '', 6), (8, '{}', '{}', '{\"addurls2\":{\"url\":\"https:\\/\\/cdn.datatables.net\\/1.10.21\\/js\\/jquery.dataTables.min.js\",\"type\":2},\"addurls1\":{\"url\":\"https:\\/\\/cdn.datatables.net\\/1.10.21\\/css\\/dataTables.uikit.min.css\",\"type\":2}}', 11, '', 1, '2020-06-27 21:34:44', '0000-00-00 00:00:00', 1, '', 7), (9, '{}', '{}', '{\"addurls3\":{\"url\":\"http:\\/\\/code.jquery.com\\/ui\\/1.11.1\\/themes\\/smoothness\\/jquery-ui.css\",\"type\":2},\"addurls0\":{\"url\":\"https:\\/\\/cdnjs.cloudflare.com\\/ajax\\/libs\\/jquery-ui-timepicker-addon\\/1.6.3\\/jquery-ui-timepicker-addon.min.css\",\"type\":2},\"addurls1\":{\"url\":\"http:\\/\\/code.jquery.com\\/ui\\/1.11.1\\/jquery-ui.min.js\",\"type\":2},\"addurls2\":{\"url\":\"https:\\/\\/cdnjs.cloudflare.com\\/ajax\\/libs\\/jquery-ui-timepicker-addon\\/1.6.3\\/jquery-ui-timepicker-addon.min.js\",\"type\":2}}', 12, '', 1, '2020-06-29 00:00:44', '2020-06-29 04:32:57', 4, '', 8), -(10, '{}', '{}', '{\"addurls0\":{\"url\":\"https:\\/\\/cdn.datatables.net\\/v\\/dt\\/jszip-2.5.0\\/dt-1.11.5\\/b-2.2.2\\/b-colvis-2.2.2\\/b-html5-2.2.2\\/b-print-2.2.2\\/cr-1.5.5\\/date-1.1.2\\/fc-4.0.2\\/fh-3.2.2\\/kt-2.6.4\\/r-2.2.9\\/rg-1.1.4\\/rr-1.2.8\\/sc-2.0.5\\/sb-1.3.2\\/sp-2.0.0\\/sl-1.3.4\\/sr-1.1.0\\/datatables.min.css\",\"type\":3},\"addurls1\":{\"url\":\"https:\\/\\/cdnjs.cloudflare.com\\/ajax\\/libs\\/pdfmake\\/0.1.36\\/pdfmake.min.js\",\"type\":3},\"addurls2\":{\"url\":\"https:\\/\\/cdnjs.cloudflare.com\\/ajax\\/libs\\/pdfmake\\/0.1.36\\/vfs_fonts.js\",\"type\":3},\"addurls3\":{\"url\":\"https:\\/\\/cdn.datatables.net\\/v\\/dt\\/jszip-2.5.0\\/dt-1.11.5\\/b-2.2.2\\/b-colvis-2.2.2\\/b-html5-2.2.2\\/b-print-2.2.2\\/cr-1.5.5\\/date-1.1.2\\/fc-4.0.2\\/fh-3.2.2\\/kt-2.6.4\\/r-2.2.9\\/rg-1.1.4\\/rr-1.2.8\\/sc-2.0.5\\/sb-1.3.2\\/sp-2.0.0\\/sl-1.3.4\\/sr-1.1.0\\/datatables.min.js\",\"type\":3}}', 13, '', 1, '2022-10-17 20:56:24', '0000-00-00 00:00:00', 1, '', 9); +(10, '{}', '{}', '{\"addurls0\":{\"url\":\"https:\\/\\/cdn.datatables.net\\/v\\/dt\\/jszip-2.5.0\\/dt-1.11.5\\/b-2.2.2\\/b-colvis-2.2.2\\/b-html5-2.2.2\\/b-print-2.2.2\\/cr-1.5.5\\/date-1.1.2\\/fc-4.0.2\\/fh-3.2.2\\/kt-2.6.4\\/r-2.2.9\\/rg-1.1.4\\/rr-1.2.8\\/sc-2.0.5\\/sb-1.3.2\\/sp-2.0.0\\/sl-1.3.4\\/sr-1.1.0\\/datatables.min.css\",\"type\":3},\"addurls1\":{\"url\":\"https:\\/\\/cdnjs.cloudflare.com\\/ajax\\/libs\\/pdfmake\\/0.1.36\\/pdfmake.min.js\",\"type\":3},\"addurls2\":{\"url\":\"https:\\/\\/cdnjs.cloudflare.com\\/ajax\\/libs\\/pdfmake\\/0.1.36\\/vfs_fonts.js\",\"type\":3},\"addurls3\":{\"url\":\"https:\\/\\/cdn.datatables.net\\/v\\/dt\\/jszip-2.5.0\\/dt-1.11.5\\/b-2.2.2\\/b-colvis-2.2.2\\/b-html5-2.2.2\\/b-print-2.2.2\\/cr-1.5.5\\/date-1.1.2\\/fc-4.0.2\\/fh-3.2.2\\/kt-2.6.4\\/r-2.2.9\\/rg-1.1.4\\/rr-1.2.8\\/sc-2.0.5\\/sb-1.3.2\\/sp-2.0.0\\/sl-1.3.4\\/sr-1.1.0\\/datatables.min.js\",\"type\":3}}', 13, '', 1, '2022-10-17 20:56:24', '0000-00-00 00:00:00', 1, '', 9), +(11, '{}', '{}', '{\"addurls0\":{\"url\":\"https:\\/\\/cdn.jsdelivr.net\\/npm\\/nouislider\\/dist\\/nouislider.min.css\",\"type\":2},\"addurls1\":{\"url\":\"https:\\/\\/cdn.jsdelivr.net\\/npm\\/nouislider\\/dist\\/nouislider.min.js\",\"type\":2}}', 14, '', 1, '2023-06-26 15:02:42', '2023-07-24 18:11:41', 3, '', 10); CREATE TABLE IF NOT EXISTS `#__componentbuilder_external_code` ( diff --git a/admin/sql/updates/mysql/3.1.24.sql b/admin/sql/updates/mysql/3.1.24.sql new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/admin/sql/updates/mysql/3.1.24.sql @@ -0,0 +1 @@ + diff --git a/admin/sql/updates/mysql/3.1.25.sql b/admin/sql/updates/mysql/3.1.25.sql new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/admin/sql/updates/mysql/3.1.25.sql @@ -0,0 +1 @@ + diff --git a/admin/views/admin_views/tmpl/default_body.php b/admin/views/admin_views/tmpl/default_body.php index 633f8281a..38310f033 100644 --- a/admin/views/admin_views/tmpl/default_body.php +++ b/admin/views/admin_views/tmpl/default_body.php @@ -11,6 +11,7 @@ // No direct access to this file defined('_JEXEC') or die('Restricted access'); +use VDM\Joomla\Utilities\ArrayHelper; $edit = "index.php?option=com_componentbuilder&view=admin_views&task=admin_view.edit"; @@ -72,7 +73,7 @@ $edit = "index.php?option=com_componentbuilder&view=admin_views&task=admin_view. canState = $this->canDo->get('admin_view.edit.state'); $this->canCreate = $this->canDo->get('admin_view.create'); $this->canDelete = $this->canDo->get('admin_view.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('admin_view.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/admins_custom_tabs/view.html.php b/admin/views/admins_custom_tabs/view.html.php index 8aad2ea99..84201b327 100644 --- a/admin/views/admins_custom_tabs/view.html.php +++ b/admin/views/admins_custom_tabs/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewAdmins_custom_tabs extends HtmlView $this->canState = $this->canDo->get('admin_custom_tabs.edit.state'); $this->canCreate = $this->canDo->get('admin_custom_tabs.create'); $this->canDelete = $this->canDo->get('admin_custom_tabs.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('admin_custom_tabs.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/admins_fields/view.html.php b/admin/views/admins_fields/view.html.php index 9a85b77bf..ef6cad1dc 100644 --- a/admin/views/admins_fields/view.html.php +++ b/admin/views/admins_fields/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewAdmins_fields extends HtmlView $this->canState = $this->canDo->get('admin_fields.edit.state'); $this->canCreate = $this->canDo->get('admin_fields.create'); $this->canDelete = $this->canDo->get('admin_fields.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('admin_fields.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/admins_fields_conditions/view.html.php b/admin/views/admins_fields_conditions/view.html.php index 4253ed693..d99212b9c 100644 --- a/admin/views/admins_fields_conditions/view.html.php +++ b/admin/views/admins_fields_conditions/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewAdmins_fields_conditions extends HtmlView $this->canState = $this->canDo->get('admin_fields_conditions.edit.state'); $this->canCreate = $this->canDo->get('admin_fields_conditions.create'); $this->canDelete = $this->canDo->get('admin_fields_conditions.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('admin_fields_conditions.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/admins_fields_relations/view.html.php b/admin/views/admins_fields_relations/view.html.php index d6382395b..dfcada8ef 100644 --- a/admin/views/admins_fields_relations/view.html.php +++ b/admin/views/admins_fields_relations/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewAdmins_fields_relations extends HtmlView $this->canState = $this->canDo->get('admin_fields_relations.edit.state'); $this->canCreate = $this->canDo->get('admin_fields_relations.create'); $this->canDelete = $this->canDo->get('admin_fields_relations.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('admin_fields_relations.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/class_extendings/view.html.php b/admin/views/class_extendings/view.html.php index 459e76827..3e0582f87 100644 --- a/admin/views/class_extendings/view.html.php +++ b/admin/views/class_extendings/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewClass_extendings extends HtmlView $this->canState = $this->canDo->get('class_extends.edit.state'); $this->canCreate = $this->canDo->get('class_extends.create'); $this->canDelete = $this->canDo->get('class_extends.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('class_extends.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/class_methods/view.html.php b/admin/views/class_methods/view.html.php index dcbc7694d..29c445ee0 100644 --- a/admin/views/class_methods/view.html.php +++ b/admin/views/class_methods/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewClass_methods extends HtmlView $this->canState = $this->canDo->get('class_method.edit.state'); $this->canCreate = $this->canDo->get('class_method.create'); $this->canDelete = $this->canDo->get('class_method.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('class_method.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/class_properties/tmpl/default_body.php b/admin/views/class_properties/tmpl/default_body.php index ed9882423..4befb19f3 100644 --- a/admin/views/class_properties/tmpl/default_body.php +++ b/admin/views/class_properties/tmpl/default_body.php @@ -11,6 +11,7 @@ // No direct access to this file defined('_JEXEC') or die('Restricted access'); +use VDM\Joomla\Utilities\StringHelper; $edit = "index.php?option=com_componentbuilder&view=class_properties&task=class_property.edit"; @@ -73,7 +74,7 @@ $edit = "index.php?option=com_componentbuilder&view=class_properties&task=class_ visibility); ?>
" . $result->name . " " . $editget . "<?php echo JLayoutHelper::render('" . ComponentbuilderHelper::safeString($result->alias) . "', \$this->item); ?> " . $edit . "" . $result->name . " " . $editget . "<?php echo JLayoutHelper::render('" . StringHelper::safe($result->alias) . "', \$this->item); ?> " . $edit . "" . $result->name . " " . $editget . "<?php echo JLayoutHelper::render('" . ComponentbuilderHelper::safeString($result->alias) . "', \$this->items); ?> " . $edit . "" . $result->name . " " . $editget . "<?php echo JLayoutHelper::render('" . StringHelper::safe($result->alias) . "', \$this->items); ?> " . $edit . "" . $result->name . " " . $editget . "<?php echo JLayoutHelper::render('" . ComponentbuilderHelper::safeString($result->alias) . "', \$this->" . $varName . "); ?> " . $edit . "" . $result->name . " " . $editget . "<?php echo JLayoutHelper::render('" . StringHelper::safe($result->alias) . "', \$this->" . $varName . "); ?> " . $edit . "" . JText::_('COM_COMPONENTBUILDER_NONE_SELECTED') . "<?php echo JLayoutHelper::render('" . ComponentbuilderHelper::safeString($result->alias) . "', [?]); ?> " . $edit . "" . JText::_('COM_COMPONENTBUILDER_NONE_SELECTED') . "<?php echo JLayoutHelper::render('" . StringHelper::safe($result->alias) . "', [?]); ?> " . $edit . " -
joomla_plugin_group) && ComponentbuilderHelper::checkString($item->joomla_plugin_group)): ?> +
joomla_plugin_group) && StringHelper::check($item->joomla_plugin_group)): ?> extension_type); ?> : escape($item->joomla_plugin_group_name); ?> diff --git a/admin/views/class_properties/view.html.php b/admin/views/class_properties/view.html.php index 654de35c1..58201f0e2 100644 --- a/admin/views/class_properties/view.html.php +++ b/admin/views/class_properties/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewClass_properties extends HtmlView $this->canState = $this->canDo->get('class_property.edit.state'); $this->canCreate = $this->canDo->get('class_property.create'); $this->canDelete = $this->canDo->get('class_property.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('class_property.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/compiler/view.html.php b/admin/views/compiler/view.html.php index cc0036ac9..2a47eff3e 100644 --- a/admin/views/compiler/view.html.php +++ b/admin/views/compiler/view.html.php @@ -15,6 +15,7 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\View\HtmlView; use Joomla\CMS\Filesystem\File; use Joomla\CMS\Form\Form; +use VDM\Joomla\Utilities\ArrayHelper; /** * Componentbuilder Html View class for the Compiler @@ -64,10 +65,17 @@ class ComponentbuilderViewCompiler extends HtmlView // we count of all the files are already there else { + $directory_path = JPATH_ROOT . "/administrator/components/com_componentbuilder/assets/images/builder-gif"; // get all the gif files in the gif folder - $all_gifs = scandir(JPATH_ROOT . "/administrator/components/com_componentbuilder/assets/images/builder-gif"); + $all_gifs = null; + if (is_dir($directory_path) && is_readable($directory_path)) + { + $all_gifs = scandir($directory_path); + + } + // check if we have any values - if (ComponentbuilderHelper::checkArray($all_gifs)) + if ($all_gifs !== null && ArrayHelper::check($all_gifs)) { // count number of files but remove the 2 dot values $num_gifs = count($all_gifs) - 2; @@ -113,7 +121,7 @@ class ComponentbuilderViewCompiler extends HtmlView */ public function getDynamicForm(): ?Form { - if(ComponentbuilderHelper::checkArray($this->Components)) + if(ArrayHelper::check($this->Components)) { // start the form $form = new Form('Builder'); @@ -545,8 +553,11 @@ class ComponentbuilderViewCompiler extends HtmlView protected function setDocument() { - // always make sure jquery is loaded. - JHtml::_('jquery.framework'); + // Only load jQuery if needed. (default is true) + if ($this->params->get('add_jquery_framework', 1) == 1) + { + JHtml::_('jquery.framework'); + } // Load the header checker class. require_once( JPATH_COMPONENT_ADMINISTRATOR.'/helpers/headercheck.php' ); // Initialize the header checker. @@ -621,7 +632,7 @@ class ComponentbuilderViewCompiler extends HtmlView // add marked library $this->document->addScript(JURI::root() . "administrator/components/com_componentbuilder/custom/marked.js"); // add the document default css file - $this->document->addStyleSheet(JURI::root(true) .'/administrator/components/com_componentbuilder/assets/css/compiler.css', (ComponentbuilderHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css'); + JHtml::_('stylesheet', 'administrator/components/com_componentbuilder/assets/css/compiler.css', ['version' => 'auto']); // Set the Custom JS script to view $this->document->addScriptDeclaration(" function getComponentDetails_server(id){ diff --git a/admin/views/components_admin_views/view.html.php b/admin/views/components_admin_views/view.html.php index 72c91a491..f1943e4c8 100644 --- a/admin/views/components_admin_views/view.html.php +++ b/admin/views/components_admin_views/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_admin_views extends HtmlView $this->canState = $this->canDo->get('component_admin_views.edit.state'); $this->canCreate = $this->canDo->get('component_admin_views.create'); $this->canDelete = $this->canDo->get('component_admin_views.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_admin_views.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/components_config/view.html.php b/admin/views/components_config/view.html.php index 5fa22d9ed..4d0d8d298 100644 --- a/admin/views/components_config/view.html.php +++ b/admin/views/components_config/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_config extends HtmlView $this->canState = $this->canDo->get('component_config.edit.state'); $this->canCreate = $this->canDo->get('component_config.create'); $this->canDelete = $this->canDo->get('component_config.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_config.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/components_custom_admin_menus/view.html.php b/admin/views/components_custom_admin_menus/view.html.php index dbe9a58b7..8e3075413 100644 --- a/admin/views/components_custom_admin_menus/view.html.php +++ b/admin/views/components_custom_admin_menus/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_custom_admin_menus extends HtmlView $this->canState = $this->canDo->get('component_custom_admin_menus.edit.state'); $this->canCreate = $this->canDo->get('component_custom_admin_menus.create'); $this->canDelete = $this->canDo->get('component_custom_admin_menus.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_custom_admin_menus.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/components_custom_admin_views/view.html.php b/admin/views/components_custom_admin_views/view.html.php index 1e7947fa0..b59abfe7f 100644 --- a/admin/views/components_custom_admin_views/view.html.php +++ b/admin/views/components_custom_admin_views/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_custom_admin_views extends HtmlView $this->canState = $this->canDo->get('component_custom_admin_views.edit.state'); $this->canCreate = $this->canDo->get('component_custom_admin_views.create'); $this->canDelete = $this->canDo->get('component_custom_admin_views.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_custom_admin_views.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/components_dashboard/view.html.php b/admin/views/components_dashboard/view.html.php index f849017d6..d0272e3b6 100644 --- a/admin/views/components_dashboard/view.html.php +++ b/admin/views/components_dashboard/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_dashboard extends HtmlView $this->canState = $this->canDo->get('component_dashboard.edit.state'); $this->canCreate = $this->canDo->get('component_dashboard.create'); $this->canDelete = $this->canDo->get('component_dashboard.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_dashboard.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/components_files_folders/view.html.php b/admin/views/components_files_folders/view.html.php index 141842b79..e84fddcdc 100644 --- a/admin/views/components_files_folders/view.html.php +++ b/admin/views/components_files_folders/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_files_folders extends HtmlView $this->canState = $this->canDo->get('component_files_folders.edit.state'); $this->canCreate = $this->canDo->get('component_files_folders.create'); $this->canDelete = $this->canDo->get('component_files_folders.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_files_folders.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/components_modules/view.html.php b/admin/views/components_modules/view.html.php index 0bcd03b6e..95d6f6d0b 100644 --- a/admin/views/components_modules/view.html.php +++ b/admin/views/components_modules/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_modules extends HtmlView $this->canState = $this->canDo->get('component_modules.edit.state'); $this->canCreate = $this->canDo->get('component_modules.create'); $this->canDelete = $this->canDo->get('component_modules.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_modules.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/components_mysql_tweaks/view.html.php b/admin/views/components_mysql_tweaks/view.html.php index 1afbdf26f..88094a7de 100644 --- a/admin/views/components_mysql_tweaks/view.html.php +++ b/admin/views/components_mysql_tweaks/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_mysql_tweaks extends HtmlView $this->canState = $this->canDo->get('component_mysql_tweaks.edit.state'); $this->canCreate = $this->canDo->get('component_mysql_tweaks.create'); $this->canDelete = $this->canDo->get('component_mysql_tweaks.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_mysql_tweaks.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/components_placeholders/view.html.php b/admin/views/components_placeholders/view.html.php index 5ac481531..6e0b1a526 100644 --- a/admin/views/components_placeholders/view.html.php +++ b/admin/views/components_placeholders/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_placeholders extends HtmlView $this->canState = $this->canDo->get('component_placeholders.edit.state'); $this->canCreate = $this->canDo->get('component_placeholders.create'); $this->canDelete = $this->canDo->get('component_placeholders.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_placeholders.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/components_plugins/view.html.php b/admin/views/components_plugins/view.html.php index be86bdaf1..da7c53e35 100644 --- a/admin/views/components_plugins/view.html.php +++ b/admin/views/components_plugins/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_plugins extends HtmlView $this->canState = $this->canDo->get('component_plugins.edit.state'); $this->canCreate = $this->canDo->get('component_plugins.create'); $this->canDelete = $this->canDo->get('component_plugins.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_plugins.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/components_site_views/view.html.php b/admin/views/components_site_views/view.html.php index 5a09c7b3b..6f60f7f6a 100644 --- a/admin/views/components_site_views/view.html.php +++ b/admin/views/components_site_views/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_site_views extends HtmlView $this->canState = $this->canDo->get('component_site_views.edit.state'); $this->canCreate = $this->canDo->get('component_site_views.create'); $this->canDelete = $this->canDo->get('component_site_views.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_site_views.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/components_updates/view.html.php b/admin/views/components_updates/view.html.php index 8f6669b3e..5c5b3b7b6 100644 --- a/admin/views/components_updates/view.html.php +++ b/admin/views/components_updates/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewComponents_updates extends HtmlView $this->canState = $this->canDo->get('component_updates.edit.state'); $this->canCreate = $this->canDo->get('component_updates.create'); $this->canDelete = $this->canDo->get('component_updates.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('component_updates.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/custom_admin_views/tmpl/default_body.php b/admin/views/custom_admin_views/tmpl/default_body.php index b8ce6316b..c66378b18 100644 --- a/admin/views/custom_admin_views/tmpl/default_body.php +++ b/admin/views/custom_admin_views/tmpl/default_body.php @@ -11,6 +11,7 @@ // No direct access to this file defined('_JEXEC') or die('Restricted access'); +use VDM\Joomla\Utilities\StringHelper; $edit = "index.php?option=com_componentbuilder&view=custom_admin_views&task=custom_admin_view.edit"; @@ -74,7 +75,7 @@ $edit = "index.php?option=com_componentbuilder&view=custom_admin_views&task=cust escape($item->name); ?>
: escape($item->codename); ?>
- context)): ?> + context)): ?> : escape($item->context); ?> diff --git a/admin/views/custom_admin_views/view.html.php b/admin/views/custom_admin_views/view.html.php index 619068a0f..f8675e470 100644 --- a/admin/views/custom_admin_views/view.html.php +++ b/admin/views/custom_admin_views/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewCustom_admin_views extends HtmlView $this->canState = $this->canDo->get('core.edit.state'); $this->canCreate = $this->canDo->get('core.create'); $this->canDelete = $this->canDo->get('core.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('custom_admin_view.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/custom_codes/view.html.php b/admin/views/custom_codes/view.html.php index 7c8c067d0..4c9274739 100644 --- a/admin/views/custom_codes/view.html.php +++ b/admin/views/custom_codes/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewCustom_codes extends HtmlView $this->canState = $this->canDo->get('custom_code.edit.state'); $this->canCreate = $this->canDo->get('custom_code.create'); $this->canDelete = $this->canDo->get('custom_code.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('custom_code.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/dynamic_gets/view.html.php b/admin/views/dynamic_gets/view.html.php index e533b37ff..c6c300e2d 100644 --- a/admin/views/dynamic_gets/view.html.php +++ b/admin/views/dynamic_gets/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewDynamic_gets extends HtmlView $this->canState = $this->canDo->get('dynamic_get.edit.state'); $this->canCreate = $this->canDo->get('dynamic_get.create'); $this->canDelete = $this->canDo->get('dynamic_get.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('dynamic_get.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/fields/view.html.php b/admin/views/fields/view.html.php index 7cf2398ac..e37e8b641 100644 --- a/admin/views/fields/view.html.php +++ b/admin/views/fields/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewFields extends HtmlView $this->canState = $this->canDo->get('field.edit.state'); $this->canCreate = $this->canDo->get('field.create'); $this->canDelete = $this->canDo->get('field.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('field.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/fieldtypes/view.html.php b/admin/views/fieldtypes/view.html.php index fb5a53fff..9fa379881 100644 --- a/admin/views/fieldtypes/view.html.php +++ b/admin/views/fieldtypes/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewFieldtypes extends HtmlView $this->canState = $this->canDo->get('fieldtype.edit.state'); $this->canCreate = $this->canDo->get('fieldtype.create'); $this->canDelete = $this->canDo->get('fieldtype.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('fieldtype.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/get_snippets/view.html.php b/admin/views/get_snippets/view.html.php index f456ef8f7..af14e980b 100644 --- a/admin/views/get_snippets/view.html.php +++ b/admin/views/get_snippets/view.html.php @@ -14,6 +14,8 @@ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\View\HtmlView; use Joomla\CMS\Filesystem\File; +use VDM\Joomla\Utilities\ArrayHelper; +use VDM\Joomla\Utilities\StringHelper; /** * Componentbuilder Html View class for the Get_snippets @@ -59,15 +61,18 @@ class ComponentbuilderViewGet_snippets extends HtmlView protected function setDocument() { - // always make sure jquery is loaded. - JHtml::_('jquery.framework'); + // Only load jQuery if needed. (default is true) + if ($this->params->get('add_jquery_framework', 1) == 1) + { + JHtml::_('jquery.framework'); + } // Load the header checker class. require_once( JPATH_COMPONENT_ADMINISTRATOR.'/helpers/headercheck.php' ); // Initialize the header checker. $HeaderCheck = new componentbuilderHeaderCheck; // Add View JavaScript File - $this->document->addScript(JURI::root(true) . "/administrator/components/com_componentbuilder/assets/js/get_snippets.js", (ComponentbuilderHelper::jVersion()->isCompatible("3.8.0")) ? array("version" => "auto") : "text/javascript"); + JHtml::_('script', "administrator/components/com_componentbuilder/assets/js/get_snippets.js", ['version' => 'auto']); // Load uikit options. $uikit = $this->params->get('uikit_load'); @@ -121,12 +126,12 @@ class ComponentbuilderViewGet_snippets extends HtmlView } } // load the local snippets - if (ComponentbuilderHelper::checkArray($this->items)) + if (ArrayHelper::check($this->items)) { $local_snippets = array(); foreach ($this->items as $item) { - $path = ComponentbuilderHelper::safeString($item->library . ' - (' . $item->type . ') ' . $item->name, 'filename', '', false). '.json'; + $path = StringHelper::safe($item->library . ' - (' . $item->type . ') ' . $item->name, 'filename', '', false). '.json'; $local_snippets[$path] = $item; } } @@ -236,13 +241,13 @@ class ComponentbuilderViewGet_snippets extends HtmlView } "); // load the local snippets - if (ComponentbuilderHelper::checkArray($this->items)) + if (ArrayHelper::check($this->items)) { // Set the local snippets array $this->document->addScriptDeclaration("var local_snippets = ". json_encode($local_snippets).";"); } // add the document default css file - $this->document->addStyleSheet(JURI::root(true) .'/administrator/components/com_componentbuilder/assets/css/get_snippets.css', (ComponentbuilderHelper::jVersion()->isCompatible('3.8.0')) ? array('version' => 'auto') : 'text/css'); + JHtml::_('stylesheet', 'administrator/components/com_componentbuilder/assets/css/get_snippets.css', ['version' => 'auto']); } /** diff --git a/admin/views/help_documents/view.html.php b/admin/views/help_documents/view.html.php index 79cb8ef99..08b606523 100644 --- a/admin/views/help_documents/view.html.php +++ b/admin/views/help_documents/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewHelp_documents extends HtmlView $this->canState = $this->canDo->get('help_document.edit.state'); $this->canCreate = $this->canDo->get('help_document.create'); $this->canDelete = $this->canDo->get('help_document.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('help_document.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') diff --git a/admin/views/import_joomla_components/tmpl/default.php b/admin/views/import_joomla_components/tmpl/default.php index 1325b83e4..59d07a8da 100644 --- a/admin/views/import_joomla_components/tmpl/default.php +++ b/admin/views/import_joomla_components/tmpl/default.php @@ -11,6 +11,7 @@ // No direct access to this file defined('_JEXEC') or die('Restricted access'); +use VDM\Joomla\Utilities\ArrayHelper; JHtml::_('jquery.framework'); JHtml::_('bootstrap.tooltip'); @@ -171,7 +172,7 @@ jQuery('
')
hasPackage) && $this->hasPackage && $this->dataType === 'smart_package') : ?> packageInfo['name']) && ComponentbuilderHelper::checkArray($this->packageInfo['name'])) + if (isset($this->packageInfo['name']) && ArrayHelper::check($this->packageInfo['name'])) { $cAmount = count($this->packageInfo['name']); $comP = ($cAmount == 1) ? 'Component' : 'Components'; @@ -181,7 +182,7 @@ jQuery('
') $cAmount = 1; $comP = 'Component'; } - $hasOwner = (isset($this->packageInfo['getKeyFrom']) && ComponentbuilderHelper::checkArray($this->packageInfo['getKeyFrom'])) ? true:false; + $hasOwner = (isset($this->packageInfo['getKeyFrom']) && ArrayHelper::check($this->packageInfo['getKeyFrom'])) ? true:false; $class1 = ($hasOwner) ? 'span6' : 'span12'; ?>

@@ -218,7 +219,7 @@ jQuery('
') - packageInfo['name']) && ComponentbuilderHelper::checkArray($this->packageInfo['name'])) : ?> + packageInfo['name']) && ArrayHelper::check($this->packageInfo['name'])) : ?> components($this->packageInfo); ?> @@ -278,7 +279,7 @@ jQuery('
') - vdmPackages) && ComponentbuilderHelper::checkArray($this->vdmPackages)): ?> + vdmPackages) && ArrayHelper::check($this->vdmPackages)): ?>
@@ -309,7 +310,7 @@ jQuery('
') - jcbPackages) && ComponentbuilderHelper::checkArray($this->jcbPackages)) : ?> + jcbPackages) && ArrayHelper::check($this->jcbPackages)) : ?>
@@ -350,12 +351,12 @@ jQuery('
')
diff --git a/admin/views/powers/view.html.php b/admin/views/powers/view.html.php index bf4c6215d..8855f4ef7 100644 --- a/admin/views/powers/view.html.php +++ b/admin/views/powers/view.html.php @@ -52,7 +52,7 @@ class ComponentbuilderViewPowers extends HtmlView $this->canState = $this->canDo->get('power.edit.state'); $this->canCreate = $this->canDo->get('power.create'); $this->canDelete = $this->canDo->get('power.delete'); - $this->canBatch = $this->canDo->get('core.batch'); + $this->canBatch = ($this->canDo->get('power.batch') && $this->canDo->get('core.batch')); // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') @@ -146,11 +146,6 @@ class ComponentbuilderViewPowers extends HtmlView // add Init button. JToolBarHelper::custom('powers.initPowers', 'health custom-button-initpowers', '', 'COM_COMPONENTBUILDER_INIT', false); } - if ($this->user->authorise('power.sync', 'com_componentbuilder')) - { - // add Sync button. - JToolBarHelper::custom('powers.syncPowers', 'loop custom-button-syncpowers', '', 'COM_COMPONENTBUILDER_SYNC', false); - } if ($this->user->authorise('power.reset', 'com_componentbuilder')) { // add Reset button. diff --git a/admin/views/search/tmpl/default.php b/admin/views/search/tmpl/default.php index 71a747461..bd9da3ca1 100644 --- a/admin/views/search/tmpl/default.php +++ b/admin/views/search/tmpl/default.php @@ -11,6 +11,7 @@ // No direct access to this file defined('_JEXEC') or die('Restricted access'); +use VDM\Joomla\Utilities\ArrayHelper; JHtml::addIncludePath(JPATH_COMPONENT.'/helpers/html'); JHtml::_('behavior.formvalidator'); @@ -144,7 +145,7 @@ $search_value = $this->form->getField('search_value');
-item['tables']) && ComponentbuilderHelper::checkArray($this->item['tables'])) : ?> +item['tables']) && ArrayHelper::check($this->item['tables'])) : ?>