PATH:
home
/
lab2454c
/
equitablegold.com
/
wp-content
/
plugins
/
unlimited-elements-for-elementor
/
provider
<?php /** * @package Unlimited Elements * @author unlimited-elements.com * @copyright (C) 2021 Unlimited Elements, All Rights Reserved. * @license GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html * */ defined('UNLIMITED_ELEMENTS_INC') or die('Restricted access'); class UniteCreatorWebAPI extends UniteCreatorWebAPIWork{ /** * construct */ public function __construct(){ if(defined("UNLIMITED_ELEMENTS_UPRESS_URL_API")) self::$urlAPI = UNLIMITED_ELEMENTS_UPRESS_URL_API; //self::$urlAPI = GlobalsUC::URL_API; parent::__construct(); } /** * is active by freemius */ private function isFreemiusActive(){ $isActivated = HelperProviderUC::isActivatedByFreemius(); return($isActivated); } /** * is product active */ public function isProductActive($product = null){ if(GlobalsUC::$isProVersion == false) return(false); $isActive = $this->isFreemiusActive(); if($isActive == true) return(true); $isActive = parent::isProductActive($product); return $isActive; } /** * filter catalog addons for another platforms items */ protected function filterCatalogAddons($arrCatalogAddons){ if(empty($arrCatalogAddons)) return($arrCatalogAddons); $arrCatalogAddonsNew = array(); foreach($arrCatalogAddons as $catName => $arrAddons){ $arrAddonsNew = array(); if(UniteCreatorWebAPI::IS_CATALOG_UNLIMITED == false) $catName = str_replace("Article", "Post", $catName); foreach($arrAddons as $addon){ $title = UniteFunctionsUC::getVal($addon, "title"); $name = UniteFunctionsUC::getVal($addon, "name"); $titleLow = strtolower($title); if(strpos($titleLow, "joomla") !== false) continue; if(strpos($name, "joomla") !== false) continue; if(strpos($name, "k2_basic") !== false) continue; if($name == "article") continue; //rename if(UniteCreatorWebAPI::IS_CATALOG_UNLIMITED == false) $title = str_replace("Article", "Post", $title); $addon["title"] = $title; $arrAddonsNew[] = $addon; } $arrCatalogAddonsNew[$catName] = $arrAddonsNew; } return($arrCatalogAddonsNew); } /** * get catalog array by addons type */ public function getCatalogArray($objAddonsType){ $arrCatalogItems = parent::getCatalogArray($objAddonsType); if($objAddonsType->isLayout == true) return($arrCatalogItems); $arrCatalogItems = $this->filterCatalogAddons($arrCatalogItems); return($arrCatalogItems); } /** * get catalog array */ protected function getCatalogArray_addons($isBG = false){ $arrCatalogAddons = parent::getCatalogArray_addons($isBG); $arrCatalogAddons = $this->filterCatalogAddons($arrCatalogAddons); return($arrCatalogAddons); } /** * modify data before request */ protected function modifyDataBeforeRequest($data){ $data["platform"] = "wp"; //get the right category name if(self::IS_CATALOG_UNLIMITED == false){ $cat = UniteFunctionsUC::getVal($data, "cat"); if(!empty($cat)) $data["cat"] = str_replace("Post", "Article", $cat); } return($data); } /** * install from data * redirect to wp back */ public function installCatalogPageFromData($data){ $arrResponse = parent::installCatalogPageFromData($data); $pageID = $arrResponse["layoutid"]; $params = UniteFunctionsUC::getVal($data, "params"); $redirectToWP = UniteFunctionsUC::getVal($params, "redirect_to_wp_page"); $redirectToWP = UniteFunctionsUC::strToBool($redirectToWP); if($redirectToWP == false) return($arrResponse); UniteFunctionsUC::validateNotEmpty($pageID, "page id"); $urlRedirect = UniteFunctionsWPUC::getUrlEditPost($pageID); $arrResponse["url_redirect"] = $urlRedirect; return($arrResponse); } /** * install catalog template to elementor library or page */ public function installCatalogTemplateFromData($data){ @ini_set("max_execution_time", 300); //get elementor template addon type $addonType = GlobalsUnlimitedElements::ADDONSTYPE_ELEMENTOR_TEMPLATE; $objAddonType = UniteCreatorAddonType::getAddonTypeObject($addonType); $catalogAddonType = $objAddonType->catalogKey; $name = UniteFunctionsUC::getVal($data, "name"); $isImportAgain = UniteFunctionsUC::getVal($data, "import_again"); //if already imported, delete previous template $isImportAgain = UniteFunctionsUC::strToBool($isImportAgain); if($isImportAgain == true){ $importedTemplateID = HelperProviderCoreUC_EL::getImportedElementorTemplateID($name); if(empty($importedTemplateID)) UniteFunctionsUC::throwError("Imported template id not found"); $importedPost = get_post($importedTemplateID); if(empty($importedPost)) UniteFunctionsUC::throwError("Imported template object not found"); } $isCreatePage = UniteFunctionsUC::getVal($data, "create_page"); $isCreatePage = UniteFunctionsUC::strToBool($isCreatePage); //validate page name if($isCreatePage == true){ $pageName = UniteFunctionsUC::getVal($data, "page_name"); $pageName = trim($pageName); if(empty($pageName)) UniteFunctionsUC::throwError(__("Please enter page name","unlimited-elements-for-elementor")); } $apiData = array(); $apiData["name"] = $name; $apiData["type"] = $catalogAddonType; $zipContent = $this->callAPI("get_page_zip", $apiData, true); $filename = $name.".zip"; $filepath = GlobalsUC::$path_cache.$filename; UniteFunctionsUC::writeFile($zipContent, $filepath); $objExporter = new UniteCreatorLayoutsExporterElementor(); $templateID = $objExporter->importElementorTemplateNew($filepath); if($isCreatePage == true){ HelperProviderUC::changeElementorTemplateToPage($templateID, $pageName); }else{ //create template //delete previous template, and update current post title and name if($isImportAgain == true){ $importedPostTitle = $importedPost->post_title; $importedPostName = $importedPost->post_name; UniteFunctionsWPUC::deletePost($importedTemplateID); UniteFunctionsWPUC::deletePostMetadata($importedTemplateID); $arrUpdate = array(); $arrUpdate["post_title"] = $importedPostTitle; $arrUpdate["post_name"] = $importedPostName; UniteFunctionsWPUC::updatePost($templateID, $arrUpdate); } UniteFunctionsWPUC::addPrefixToPostName($templateID, GlobalsUnlimitedElements::PREFIX_TEMPLATE_PERMALINK); //set page term update_post_meta($templateID, "_elementor_template_type", "page"); wp_set_object_terms( $templateID, 'page', 'elementor_library_type'); add_post_meta($templateID, GlobalsUnlimitedElements::META_TEMPLATE_SOURCE, "unlimited"); add_post_meta($templateID, GlobalsUnlimitedElements::META_TEMPLATE_SOURCE_NAME, $name); } if(file_exists($filepath)) @unlink($filepath); //create response $arrLinks = HelperProviderUC::getImportedTemplateLinks($templateID); return($arrLinks); } }
[-] custom_post_types.class.php
[edit]
[-] provider_layouts_exporter.class.php
[edit]
[+]
..
[-] include_provider_after.php
[edit]
[-] provider_template_engine.class.php
[edit]
[-] provider_web_api.class.php
[edit]
[-] wpml_integrate.class.php
[edit]
[+]
core
[-] provider_admin.class.php
[edit]
[-] provider_admin_plugin_base.class.php
[edit]
[-] integrations.class.php
[edit]
[-] provider_globals.class.php
[edit]
[-] provider_front.class.php
[edit]
[-] provider_addon.class.php
[edit]
[-] provider_browser.class.php
[edit]
[-] provider_manager_addons.class.php
[edit]
[-] provider_dialog_param.class.php
[edit]
[-] include_provider.php
[edit]
[-] woocommerce_integrate.class.php
[edit]
[-] provider_settings_output.class.php
[edit]
[-] provider_categories.class.php
[edit]
[-] provider_operations.class.php
[edit]
[-] provider_helper.class.php
[edit]
[-] toolset_integrate.class.php
[edit]
[+]
settings
[-] provider_functions.class.php
[edit]
[+]
assets
[-] gutenberg_integrate.class.php
[edit]
[-] provider_alt_loader.php
[edit]
[-] provider_layouts.class.php
[edit]
[-] provider_layout_output.class.php
[edit]
[-] provider_settings.class.php
[edit]
[+]
admin_notices
[+]
views
[-] provider_library.class.php
[edit]
[-] wpml_translation_module.class.php
[edit]
[-] provider_settings_multisource.class.php
[edit]
[-] provider_client_text.php
[edit]
[+]
freemius
[-] provider_actions.class.php
[edit]
[-] pods_integrate.class.php
[edit]
[-] functions_wordpress.class.php
[edit]
[-] provider_db.class.php
[edit]
[-] provider_params_processor.class.php
[edit]
[-] acf_integrate.class.php
[edit]
[-] provider_params_processor_multisource.class.php
[edit]
[-] provider_layout.class.php
[edit]
[-] provider_output.class.php
[edit]