| Server IP : 195.130.67.5 / Your IP : 216.73.217.154 Web Server : Microsoft-IIS/10.0 System : Windows NT WEBSERVER1 10.0 build 17763 (Windows Server 2016) i586 User : IUSR ( 0) PHP Version : 7.4.19 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/inetpub/wwwroot/icd/plugins/system/nnframework/helpers/assignments/ |
Upload File : |
<?php
/**
* NoNumber! Framework Helper File: Assignments: Resources
*
* @package NoNumber! Framework
* @version 11.9.1
*
* @author Peter van Westen <peter@nonumber.nl>
* @link http://www.nonumber.nl
* @copyright Copyright © 2011 NoNumber! All Rights Reserved
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
*/
// No direct access
defined( '_JEXEC' ) or die();
/**
* Assignments: Resources
*/
class NNFrameworkAssignmentsResources
{
var $_version = '11.9.1';
/**
* passCategories_MR
* @param <object> $params
* inc_children
* inc_categories
* inc_items
* @param <array> $selection
* @param <string> $assignment
* @return <bool>
*/
function passCategories_MR( &$main, &$params, $selection = array(), $assignment = 'all', $article = 0 )
{
if ( $main->_params->option != 'com_resource' ) {
return ( $assignment == 'exclude' );
}
$pass = (
( $params->inc_categories && $main->_params->view == 'list' )
|| ( $params->inc_items && $main->_params->view == 'article' )
);
if ( !$pass ) {
return ( $assignment == 'exclude' );
}
$selection = $main->makeArray( $selection );
if ( $article && isset( $article->catid ) ) {
$cats = $article->catid;
} else {
$cats = $main->_params->id;
switch ( $main->_params->view ) {
case 'list':
if ( !$cats ) {
$cats = JRequest::getInt( 'section_id' );
}
if ( !$cats ) {
$cats = JRequest::getInt( 'category_id' );
}
break;
case 'item':
default:
if ( $main->_params->id ) {
$query = 'SELECT catid'
.' FROM #__js_res_record_category'
.' WHERE record_id = '.(int) $main->_params->id
;
$main->_db->setQuery( $query );
$cats = $main->_db->loadResultArray();
} else {
$cats = array( 0 );
}
break;
}
}
$cats = $main->makeArray( $cats, 1 );
$pass = $main->passSimple( $cats, $selection, 'include' );
if ( $pass && $params->inc_children == 2 ) {
return ( $assignment == 'exclude' );
} else if ( !$pass && $params->inc_children ) {
foreach ( $cats as $cat ) {
$cats = array_merge( $cats, NNFrameworkAssignmentsResources::getCatParentIds( $main, $cat ) );
}
}
return $main->passSimple( $cats, $selection, $assignment );
}
function getCatParentIds( &$main, $id = 0 )
{
return $main->getParentIds( $id, 'js_res_category' );
}
}