0 Пользователей и 1 Гость просматривают эту тему.
  • 95 Ответов
  • 13993 Просмотров
*

xchesh

  • Захожу иногда
  • 277
  • 10 / 1
Re: JRoute в модуле Joomla 2.5
« Ответ #90 : 12.12.2012, 12:37:28 »
Я кажется нашел!
По какойто непонятно пока мене причине, при вызове главной страницы дамп bildRoute показывает мне:

string(10) "com_myshop" ["view"]=> string(10) "myshopcart" }

вот это вот ["view"]=> string(10) "myshopcart"  Неправильно!

В текущий момент отображается вьюшка myshops, в массиве query это myshopcart . Видимо из за этого не работает и сам роутер (((. Буду разбираться почему такое происходит.
А тут стоит копаться уже поглубже. Проверить модели, виды, типы меню.
*

n_drey

  • Захожу иногда
  • 156
  • 3 / 1
  • Давай телевиденье!
Re: JRoute в модуле Joomla 2.5
« Ответ #91 : 12.12.2012, 12:45:31 »
А что может быть в моделях и видах ) В меню посмотрел ссылка правильная
index.php?option=com_myshop&view=myshops&id=8
*

xchesh

  • Захожу иногда
  • 277
  • 10 / 1
Re: JRoute в модуле Joomla 2.5
« Ответ #92 : 12.12.2012, 12:50:22 »
А что может быть в моделях и видах ) В меню посмотрел ссылка правильная
index.php?option=com_myshop&view=myshops&id=8
Ну если ссылка правильная, то открывайте модель своего view=myshops. Копайте там.
*

n_drey

  • Захожу иногда
  • 156
  • 3 / 1
  • Давай телевиденье!
Re: JRoute в модуле Joomla 2.5
« Ответ #93 : 12.12.2012, 13:13:56 »
Изучил досконально свою модель, не нашёл ничего криминального:
Код
<?php

// No direct access to this file
defined('_JEXEC') or die('Restricted access');

// import Joomla modelitem library
jimport('joomla.application.component.modellist');
jimport('imagelib.classSimpleImage');
jimport( 'joomla.html.parameter' );

/**
 * MUSHOPS Model
 */
class MyShopModelMyShops extends JModelList {

    /**
     * Method to build an SQL query to load the list data.
     *
     * @return      string  An SQL query
     */
    protected $_id;
    protected $_satsearch;
    protected $_searcher;

public function populateState()
{
parent::populateState();
//$app = JFactory::getApplication();
//print $value = JRequest::getUInt('limit', $app->getCfg('list_limit', 0));

$value = JRequest::getUInt('limitstart', 0);
$this->setState('list.start', $value);

//$this->setState('list.start', 0);
// 1) всегда выводить 50 записей
//$this->setState('list.limit', 8);
 
// 2) сначала 50, потом столько сколько пользователь выбрал
$app = JFactory::getApplication();
$this->setState('list.limit', $app->getUserStateFromRequest('global.list.limit', 'limit', 8));
 
// 3) сначала значение из настроек, потом столько сколько пользователь выбрал
//$app = JFactory::getApplication();
//$this->setState('list.limit', $app->getUserStateFromRequest('global.list.limit', 'limit', $app->getCfg('list_limit')));
}

    protected function getListQuery() {
        $this->_id = JRequest::getInt('id');
$this->_satsearch = JRequest::getVar('satsearch');
        $this->_searcher = JRequest::getVar('searcher');
       
       
        if($this->_searcher == 'search'){
        $db = JFactory::getDBO();
        $query = $db->getQuery(true);
        $query->select('*');
        $query->from('#__myshop_products where title like "%' . $this->_satsearch . '%" and published = 1');
        $query->order('ordering');
        return $query;
        }

            $db = JFactory::getDBO();
            $query = $db->getQuery(true);
            $query->select('*');
            $query->from('#__myshop_products where catid = ' . $this->_id . ' and published = 1');
            $query->order('ordering');

$this->chekoutTimeCheker();
            return $query;
       }

public function getItems()
    {
    $items = parent::getItems();
$image = new SimpleImage();

foreach($items as $item){
$params = new JParameter( $item->params );
$img = pathinfo($params->get('imgurl1'));

$url_img = Juri::base().$params->get('imgurl1');

// Миникартинка для каталога
if( !file_exists('./images/thumbs/190_'.$item->id.$img['basename']) ) {
$image->load($url_img);
$image->square_resize(190);
$image->save('./images/thumbs/190_'.$item->id.$img['basename']);
}
// Миникартинка для корзины
if( !file_exists('./images/thumbs/80_'.$item->id.$img['basename']) ) {
$image->load($url_img);
$image->square_resize(80);
$image->save('./images/thumbs/80_'.$item->id.$img['basename']);
}

}


return $items;   
    }

function chekoutTimeCheker(){

$db = JFactory::getDBO();
$db->setQuery('SELECT * FROM #__myshop_purchase WHERE created < DATE_SUB(NOW(), INTERVAL 1 MINUTE) AND published = 1;');
$purchases = $db->loadObjectList();


$idpub = array();
foreach($purchases as $pur) {

$this->productReservedUnreserved($pur->ids, false);
$idpub[] = $pur->id;
}
if(!empty($idpub)){
$db->setQuery("UPDATE #__myshop_purchase SET published = 0 WHERE id IN(".implode(',',$idpub).");");
$db->query();
}
}

// Метод резервирует/возвращает товар на складе с определёнными id
function productReservedUnreserved($ids_string, $flag = bool, $count = 1){
$db = JFactory::getDBO();
if($flag){
$db->setQuery("UPDATE #__myshop_products SET count = count-1 WHERE id IN(".$ids_string.");");
} else {
$db->setQuery("UPDATE #__myshop_products SET count = count+1 WHERE id IN(".$ids_string.");");
}
$db->query();
}

/* public function getStart()
{
//return $this->getState('list.start');
return 0;
} */



}
*

xchesh

  • Захожу иногда
  • 277
  • 10 / 1
Re: JRoute в модуле Joomla 2.5
« Ответ #94 : 12.12.2012, 14:07:52 »
Изучил досконально свою модель, не нашёл ничего криминального:
Код
<?php

// No direct access to this file
defined('_JEXEC') or die('Restricted access');

// import Joomla modelitem library
jimport('joomla.application.component.modellist');
jimport('imagelib.classSimpleImage');
jimport( 'joomla.html.parameter' );

/**
 * MUSHOPS Model
 */
class MyShopModelMyShops extends JModelList {

    /**
     * Method to build an SQL query to load the list data.
     *
     * @return      string  An SQL query
     */
    protected $_id;
    protected $_satsearch;
    protected $_searcher;

public function populateState()
{
parent::populateState();
//$app = JFactory::getApplication();
//print $value = JRequest::getUInt('limit', $app->getCfg('list_limit', 0));

$value = JRequest::getUInt('limitstart', 0);
$this->setState('list.start', $value);

//$this->setState('list.start', 0);
// 1) всегда выводить 50 записей
//$this->setState('list.limit', 8);
 
// 2) сначала 50, потом столько сколько пользователь выбрал
$app = JFactory::getApplication();
$this->setState('list.limit', $app->getUserStateFromRequest('global.list.limit', 'limit', 8));
 
// 3) сначала значение из настроек, потом столько сколько пользователь выбрал
//$app = JFactory::getApplication();
//$this->setState('list.limit', $app->getUserStateFromRequest('global.list.limit', 'limit', $app->getCfg('list_limit')));
}

    protected function getListQuery() {
        $this->_id = JRequest::getInt('id');
$this->_satsearch = JRequest::getVar('satsearch');
        $this->_searcher = JRequest::getVar('searcher');
       
       
        if($this->_searcher == 'search'){
        $db = JFactory::getDBO();
        $query = $db->getQuery(true);
        $query->select('*');
        $query->from('#__myshop_products where title like "%' . $this->_satsearch . '%" and published = 1');
        $query->order('ordering');
        return $query;
        }

            $db = JFactory::getDBO();
            $query = $db->getQuery(true);
            $query->select('*');
            $query->from('#__myshop_products where catid = ' . $this->_id . ' and published = 1');
            $query->order('ordering');

$this->chekoutTimeCheker();
            return $query;
       }

public function getItems()
    {
    $items = parent::getItems();
$image = new SimpleImage();

foreach($items as $item){
$params = new JParameter( $item->params );
$img = pathinfo($params->get('imgurl1'));

$url_img = Juri::base().$params->get('imgurl1');

// Миникартинка для каталога
if( !file_exists('./images/thumbs/190_'.$item->id.$img['basename']) ) {
$image->load($url_img);
$image->square_resize(190);
$image->save('./images/thumbs/190_'.$item->id.$img['basename']);
}
// Миникартинка для корзины
if( !file_exists('./images/thumbs/80_'.$item->id.$img['basename']) ) {
$image->load($url_img);
$image->square_resize(80);
$image->save('./images/thumbs/80_'.$item->id.$img['basename']);
}

}


return $items;   
    }

function chekoutTimeCheker(){

$db = JFactory::getDBO();
$db->setQuery('SELECT * FROM #__myshop_purchase WHERE created < DATE_SUB(NOW(), INTERVAL 1 MINUTE) AND published = 1;');
$purchases = $db->loadObjectList();


$idpub = array();
foreach($purchases as $pur) {

$this->productReservedUnreserved($pur->ids, false);
$idpub[] = $pur->id;
}
if(!empty($idpub)){
$db->setQuery("UPDATE #__myshop_purchase SET published = 0 WHERE id IN(".implode(',',$idpub).");");
$db->query();
}
}

// Метод резервирует/возвращает товар на складе с определёнными id
function productReservedUnreserved($ids_string, $flag = bool, $count = 1){
$db = JFactory::getDBO();
if($flag){
$db->setQuery("UPDATE #__myshop_products SET count = count-1 WHERE id IN(".$ids_string.");");
} else {
$db->setQuery("UPDATE #__myshop_products SET count = count+1 WHERE id IN(".$ids_string.");");
}
$db->query();
}

/* public function getStart()
{
//return $this->getState('list.start');
return 0;
} */



}
Что насчет контроллера? Если вид неверно вызывается, возможно в контроллере ошибка?
*

n_drey

  • Захожу иногда
  • 156
  • 3 / 1
  • Давай телевиденье!
Re: JRoute в модуле Joomla 2.5
« Ответ #95 : 12.12.2012, 14:30:16 »
У меня контроллер вообще пустой. В нём несколько методов для AJAX запорсов и всё.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как редактировать отдельную страницу Joomla 2.5?

Автор mrporter

Ответов: 0
Просмотров: 1130
Последний ответ 14.09.2023, 22:16:47
от mrporter
Joomla 2.5.28, Safari под маком и сессии session

Автор beliyadm

Ответов: 19
Просмотров: 3454
Последний ответ 29.03.2023, 12:17:19
от Sawell
Joomla 2.5.28 как скачать все файлы через панель управления

Автор Sergei41984

Ответов: 7
Просмотров: 1590
Последний ответ 27.12.2022, 23:30:38
от Sergei41984
Расширения для Joomla! 1.6 (коллекция полезных ссылок)

Автор Sulpher

Ответов: 124
Просмотров: 130066
Последний ответ 03.12.2022, 16:15:19
от besttechoff
Почему в админке Joomla 2.58 - у меня 16 админов показывает?

Автор dyalex

Ответов: 7
Просмотров: 2206
Последний ответ 27.10.2022, 19:03:45
от marksetter