Create New Item
×
Item Type
File
Folder
Item Name
×
Search file in folder and subfolders...
File Manager
/
wp-content
/
plugins
/
unlimited-elements-for-elementor
/
inc_php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php defined('UNLIMITED_ELEMENTS_INC') or die('Restricted access'); class UniteCreatorLibraryWork { private static $arrLibrary; public function __construct() { if (empty(self::$arrLibrary)) { $this->loadLibrary(); } } private function isConditionOK($condition, $handle = null) { switch ($condition) { case "fa5": case "fa4": $faVersion = "fa5"; if ($faVersion == $condition) { return true; } else { return false; } break; } return false; } protected function getUrlPlatformInclude($handle) { return null; } private function loadLibrary_getIncludes($xmlIncludes) { $objIncludes = $xmlIncludes->include; if (!@count($objIncludes)) { $objIncludes = array($objIncludes); } $arrIncludes = array(); foreach ($objIncludes as $objInclude) { $attribs = $objInclude->attributes(); $handle = (string) UniteFunctionsUC::getVal($attribs, "handle"); $local = (string) UniteFunctionsUC::getVal($attribs, "local"); $remote = (string) UniteFunctionsUC::getVal($attribs, "remote"); $condition = (string) UniteFunctionsUC::getVal($attribs, "condition"); if (empty($local) && empty($remote)) { UniteFunctionsUC::throwError("Include: {$handle} must have some url"); } if (!empty($local)) { $local = trim($local); $urlInclude = GlobalsUC::$url_assets_libraries . $local; } else { if (!empty($remote)) { $urlInclude = $remote; } } $urlPlatformInclude = $this->getUrlPlatformInclude($handle); if (!empty($urlPlatformInclude)) { $urlInclude = $urlPlatformInclude; } if (!empty($condition)) { $isCondition = $this->isConditionOK($condition, $handle); if ($isCondition == true) { $arrIncludes[$handle] = $urlInclude; } continue; } $arrIncludes[$handle] = $urlInclude; } return $arrIncludes; } private function loadLibrary() { $filepathLibrary = GlobalsUC::$pathSettings . "library.xml"; UniteFunctionsUC::validateFilepath($filepathLibrary); $arrLibrary = array(); $obj = simplexml_load_file($filepathLibrary); if (empty($obj)) { UniteFunctionsUC::throwError("Wrong xml file format: {$filepathLibrary}"); } $items = $obj->item; if (!@count($obj->item)) { $items = array($items); } foreach ($items as $objItem) { $attribs = $objItem->attributes(); $name = (string) UniteFunctionsUC::getVal($attribs, "name"); $arrItem = array(); $arrItem["name"] = $name; $arrItem["title"] = (string) UniteFunctionsUC::getVal($attribs, "title"); UniteFunctionsUC::validateNotEmpty($name, "item name"); UniteFunctionsUC::validateNotEmpty($arrItem["title"], "item title"); $arrJsIncludes = array(); if (isset($objItem->js)) { $arrJsIncludes = $this->loadLibrary_getIncludes($objItem->js); } $arrCssIncludes = array(); if (isset($objItem->css)) { $arrCssIncludes = $this->loadLibrary_getIncludes($objItem->css); } $arrItem["includes_js"] = $arrJsIncludes; $arrItem["includes_css"] = $arrCssIncludes; $arrLibrary[$name] = $arrItem; } self::$arrLibrary = $arrLibrary; } public function processProviderLibrary($name) { return false; } public function getLibraryIncludes($name) { $urlBase = GlobalsUC::$url_assets_libraries; $arrJs = array(); $arrCss = array(); $output = array("js" => array(), "css" => array()); if (!isset(self::$arrLibrary[$name])) { return $output; } $arrItem = self::$arrLibrary[$name]; $output["js"] = $arrItem["includes_js"]; $output["css"] = $arrItem["includes_css"]; return $output; } public function getArrLibrary() { return self::$arrLibrary; } }