Your IP : 216.73.216.209


Current Path : /home/musicpassiondjs40/djandreidis/plugins/jce/links-k2/k2links/
Upload File :
Current File : /home/musicpassiondjs40/djandreidis/plugins/jce/links-k2/k2links/users.php

<?php
/**
 * @version     2.6.2
 * @package     K2 Links for JCE
 * @author      JoomlaWorks http://www.joomlaworks.net
 * @copyright   Copyright (c) 2006 - 2018 JoomlaWorks Ltd. All rights reserved.
 * @license     GNU/GPL license: http://www.gnu.org/copyleft/gpl.html
 */

defined('_WF_EXT') or die('ERROR_403');

/**
 * This class fetches K2 Users
 */
class K2linksUsers extends JObject
{
    public $_option = 'com_k2';
    public $_task = 'user';

    public function __construct($options = array())
    {
    }

    public function getInstance()
    {
        static $instance;

        if (!is_object($instance)) {
            $instance = new K2linksTags();
        }
        return $instance;
    }

    public function getOption()
    {
        return $this->_option;
    }

    public function getTask()
    {
        return $this->_task;
    }

    public function getList()
    {
        $advlink = WFEditorPlugin::getInstance();
        $list = '';
        if ($advlink->checkAccess('k2links.users', '1')) {
            $list = '<li id="index.php?option=com_k2&task=user"><div class="uk-tree-row"><a href="#"><span class="uk-tree-icon folder content nolink"></span><span class="uk-tree-text">'.JText::_('PLG_JCE_LINKS_K2_USERS').'</span></a></div></li>';
        }
        return $list;
    }

    public static function _getK2Users()
    {
        if (defined('K2_JVERSION')) {
            $db = JFactory::getDBO();
            $query = "SELECT juser.id, juser.name FROM #__users as juser
        RIGHT JOIN #__k2_users as k2user ON juser.id = k2user.userID";
            $db->setQuery($query);
            $rows = $db->loadObjectList();
        } else {
            $model = K2Model::getInstance('Users');
            $rows = $model->getRows();
        }
        return $rows;
    }

    public static function _getK2Items($userID = '')
    {
        if (defined('K2_JVERSION')) {
            $db = JFactory::getDBO();
            $query = "SELECT item.id, item.title, item.alias, item.catid, category.alias AS categoryAlias FROM #__k2_items AS item
        LEFT JOIN #__k2_categories AS category ON item.catid = category.id
        WHERE item.created_by = ".(int)$userID." AND item.created_by_alias = ''";
            $query .= ' AND item.published = 1 AND category.published = 1 ';
            $user = JFactory::getUser();
            if (version_compare(JVERSION, '1.6.0', 'ge')) {
                $query .= ' AND item.access IN ('.implode(',', $user->getAuthorisedViewLevels()).')';
                $query .= ' AND category.access IN ('.implode(',', $user->getAuthorisedViewLevels()).')';
            } else {
                $query .= " AND item.access <=".(int)$user->get('aid');
                $query .= " AND category.access <=".(int)$user->get('aid');
            }
            $query .= " ORDER BY title, created ASC";
            $db->setQuery($query);
            $rows = $db->loadObjectList();
        } else {
            $model = K2Model::getInstance('Items');
            $model->setState('site', true);
            $model->setState('author', (int)$userID);
            $model->setState('sorting', 'title');
            $rows = $model->getRows();
        }
        return $rows;
    }

    public function getLinks($args)
    {
        $mainframe = JFactory::getApplication();

        $advlink = WFEditorPlugin::getInstance();

        if (defined('K2_JVERSION')) {
            require_once JPATH_SITE.'/components/com_k2/helpers/utilities.php';
            require_once JPATH_SITE.'/components/com_k2/helpers/route.php';
        }

        $items = array();
        $view = isset($args->view) ? $args->view : '';

        switch ($view) {

            default:
                $users = self::_getK2Users();
                foreach ($users as $user) {
                    if ($user->id) {
                        if (defined('K2_JVERSION')) {
                            $user->href = K2HelperRoute::getUserRoute($user->id);
                        } else {
                            if (JFactory::getConfig()->get('unicodeslugs') == 1) {
                                $alias = JFilterOutput::stringURLUnicodeSlug($user->name);
                            } else {
                                $alias = JFilterOutput::stringURLSafe($user->name);
                            }
                            $user->href = K2HelperRoute::getUserRoute($user->id.':'.$alias);
                        }
                        $items[] = array('id' => $user->href, 'name' => $user->name, 'class' => 'folder content');
                    }
                }
                break;

            case 'itemlist':
                $itemlist = self::_getK2Items($args->id);
                foreach ($itemlist as $item) {
                    $item->href = K2HelperRoute::getItemRoute($item->id.':'.$item->alias, $item->catid);
                    $items[] = array('id' => $item->href, 'name' => $item->title, 'class' => 'file');
                }
                break;

            case 'item':
                break;
        }
        return $items;
    }
}