PATH:
home
/
centosnipponia
/
public_html
/
nipponiacom2
/
caribe
/
libraries
/
regularlabs
/
helpers
/
assignments
<?php /** * @package Regular Labs Library * @version 16.7.10746 * * @author Peter van Westen <info@regularlabs.com> * @link http://www.regularlabs.com * @copyright Copyright © 2016 Regular Labs All Rights Reserved * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL */ defined('_JEXEC') or die; require_once dirname(__DIR__) . '/assignment.php'; class RLAssignmentsTags extends RLAssignment { public function passTags() { $is_content = in_array($this->request->option, array('com_content', 'com_flexicontent')); if (!$is_content) { return $this->pass(false); } $is_item = in_array($this->request->view, array('', 'article', 'item')); $is_category = in_array($this->request->view, array('category')); if ($is_item) { $prefix = 'com_content.article'; } else if ($is_category) { $prefix = 'com_content.category'; } else { return $this->pass(false); } // Load the tags. $query = $this->db->getQuery(true) ->select($this->db->quoteName('t.id')) ->from('#__tags AS t') ->join( 'INNER', '#__contentitem_tag_map AS m' . ' ON m.tag_id = t.id' . ' AND m.type_alias = ' . $this->db->quote($prefix) . ' AND m.content_item_id IN ( ' . $this->request->id . ')' ); $this->db->setQuery($query); $tags = $this->db->loadColumn(); if (empty($tags)) { return $this->pass(false); } foreach ($tags as $tag) { if (!$this->passTag($tag)) { continue; } return $this->pass(true); } return $this->pass(false); } private function passTag($tag) { $pass = in_array($tag, $this->selection); if ($pass) { // If passed, return false if assigned to only children // Else return true return ($this->params->inc_children != 2); } if (!$this->params->inc_children) { return false; } // Return true if a parent id is present in the selection return array_intersect( $this->getTagsParentIds($tag), $this->selection ); } private function getTagsParentIds($id = 0) { $parentids = $this->getParentIds($id, 'tags'); // Remove the root tag $parentids = array_diff($parentids, array('1')); return $parentids; } }
[+]
..
[-] agents.php
[edit]
[-] akeebasubs.php
[edit]
[-] components.php
[edit]
[-] content.php
[edit]
[-] cookieconfirm.php
[edit]
[-] datetime.php
[edit]
[-] easyblog.php
[edit]
[-] flexicontent.php
[edit]
[-] form2content.php
[edit]
[-] geo.php
[edit]
[-] hikashop.php
[edit]
[-] homepage.php
[edit]
[-] ips.php
[edit]
[-] k2.php
[edit]
[-] languages.php
[edit]
[-] menu.php
[edit]
[-] mijoshop.php
[edit]
[-] php.php
[edit]
[-] redshop.php
[edit]
[-] tags.php
[edit]
[-] templates.php
[edit]
[-] urls.php
[edit]
[-] users.php
[edit]
[-] virtuemart.php
[edit]
[-] zoo.php
[edit]
[-] .htaccess.disabled
[edit]