Файловый менеджер - Редактировать - /home/wuectly/www/03cbe/redshop.php.tar
Назад
home/wuectly/www/libraries/regularlabs/fields/redshop.php 0000604 00000006227 15245662431 0017731 0 ustar 00 <?php /** * @package Regular Labs Library * @version 21.4.10972 * * @author Peter van Westen <info@regularlabs.com> * @link http://www.regularlabs.com * @copyright Copyright © 2021 Regular Labs All Rights Reserved * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL */ defined('_JEXEC') or die; use RegularLabs\Library\DB as RL_DB; if ( ! is_file(JPATH_LIBRARIES . '/regularlabs/autoload.php')) { return; } require_once JPATH_LIBRARIES . '/regularlabs/autoload.php'; class JFormFieldRL_RedShop extends \RegularLabs\Library\FieldGroup { public $type = 'RedShop'; protected function getInput() { if ($error = $this->missingFilesOrTables(['categories' => 'category', 'products' => 'product'])) { return $error; } return $this->getSelectList(); } function getCategories() { $query = $this->db->getQuery(true) ->select('COUNT(*)') ->from('#__redshop_category AS c') ->where('c.published > -1'); $this->db->setQuery($query); $total = $this->db->loadResult(); if ($total > $this->max_list_count) { return -1; } $this->db->setQuery($this->getCategoriesQuery()); $items = $this->db->loadObjectList(); return $this->getOptionsTreeByList($items); } function getProducts() { $query = $this->db->getQuery(true) ->select('COUNT(*)') ->from('#__redshop_product AS p') ->where('p.published > -1'); $this->db->setQuery($query); $total = $this->db->loadResult(); if ($total > $this->max_list_count) { return -1; } $this->db->setQuery($this->getProductsQuery()); $list = $this->db->loadObjectList(); return $this->getOptionsByList($list, ['number', 'cat']); } private function getCategoriesQuery() { $query = $this->db->getQuery(true) ->select('c.id, c.parent_id, c.name AS title, c.published') ->from('#__redshop_category AS c') ->where('c.published > -1'); if (RL_DB::tableExists('redshop_category_xref')) { $query->clear('select') ->select('c.category_id as id, x.category_parent_id AS parent_id, c.category_name AS title, c.published') ->join('LEFT', '#__redshop_category_xref AS x ON x.category_child_id = c.category_id') ->group('c.category_id') ->order('c.ordering, c.category_name'); return $query; } $query ->group('c.id') ->order('c.ordering, c.name'); return $query; } private function getProductsQuery() { $query = $this->db->getQuery(true) ->select('p.product_id as id, p.product_name AS name, p.product_number as number, c.name AS cat, p.published') ->from('#__redshop_product AS p') ->where('p.published > -1') ->join('LEFT', '#__redshop_product_category_xref AS x ON x.product_id = p.product_id') ->group('p.product_id') ->order('p.product_name, p.product_number'); if (RL_DB::tableExists('redshop_category_xref')) { $query->clear('select') ->select('p.product_id as id, p.product_name AS name, p.product_number as number, c.category_name AS cat, p.published') ->join('LEFT', '#__redshop_category AS c ON c.category_id = x.category_id'); return $query; } $query ->join('LEFT', '#__redshop_category AS c ON c.id = x.category_id'); return $query; } } home/wuectly/www/libraries/regularlabs/helpers/assignments/redshop.php 0000604 00000005046 15245741064 0022456 0 ustar 00 <?php /** * @package Regular Labs Library * @version 21.4.10972 * * @author Peter van Westen <info@regularlabs.com> * @link http://www.regularlabs.com * @copyright Copyright © 2021 Regular Labs All Rights Reserved * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL */ /* @DEPRECATED */ defined('_JEXEC') or die; use Joomla\CMS\Factory as JFactory; if (is_file(JPATH_LIBRARIES . '/regularlabs/autoload.php')) { require_once JPATH_LIBRARIES . '/regularlabs/autoload.php'; } require_once dirname(__DIR__) . '/assignment.php'; class RLAssignmentsRedShop extends RLAssignment { public function init() { $this->request->item_id = JFactory::getApplication()->input->getInt('pid', 0); $this->request->category_id = JFactory::getApplication()->input->getInt('cid', 0); $this->request->id = ($this->request->item_id) ? $this->request->item_id : $this->request->category_id; } public function passPageTypes() { return $this->passByPageTypes('com_redshop', $this->selection, $this->assignment, true); } public function passCategories() { if ($this->request->option != 'com_redshop') { return $this->pass(false); } $pass = ( ($this->params->inc_categories && ($this->request->view == 'category') ) || ($this->params->inc_items && $this->request->view == 'product') ); if ( ! $pass) { return $this->pass(false); } $cats = []; if ($this->request->category_id) { $cats = $this->request->category_id; } else if ($this->request->item_id) { $query = $this->db->getQuery(true) ->select('x.category_id') ->from('#__redshop_product_category_xref AS x') ->where('x.product_id = ' . (int) $this->request->item_id); $this->db->setQuery($query); $cats = $this->db->loadColumn(); } $cats = $this->makeArray($cats); $pass = $this->passSimple($cats, 'include'); if ($pass && $this->params->inc_children == 2) { return $this->pass(false); } else if ( ! $pass && $this->params->inc_children) { foreach ($cats as $cat) { $cats = array_merge($cats, $this->getCatParentIds($cat)); } } return $this->passSimple($cats); } public function passProducts() { if ( ! $this->request->id || $this->request->option != 'com_redshop' || $this->request->view != 'product') { return $this->pass(false); } return $this->passSimple($this->request->id); } private function getCatParentIds($id = 0) { return $this->getParentIds($id, 'redshop_category_xref', 'category_parent_id', 'category_child_id'); } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.34 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка