Вопросы

mFilter2+pdoPage нет постраничной навигации на первой странице

Приветствую всех. Двое суток потратил на поиск решения, но не получилось заставить работать.

Никак не могу подружить mFilter2 и pdoPage.
Выводятся ресурсы, работают фильтры. но постраничной навигации нет.

Если применить любой параметр фильтрации — номера страниц появляются.
Если снять отмеченные параметры в фильтре — номера страниц остаются.

Привожу код:
Юрий
19 июля 2018, 11:40
modx.pro
2 043
0

Можно ли в MODX отображать один и тот же материал в разных категориях под одним URL?

Приветствую

Раньше на сайте была одна категория. Теперь из некоторых материалов одной категории нужно сделать две категории с сохранением URL (просто заморозил в настройках). Но не пойму как сделать так, чтобы один и тот же материал присутствовал одновременно в двух категориях по одному URL — подскажите пожалуйста варианты.
weranda
19 июля 2018, 10:30
modx.pro
1
1 334
0

Ошибка в TicketsForm

в форме заявки, в обязательном для заполнения поле
Количество сопровождающих *
если ввести 0 то выдает ошибка в форме

на сайте

вызываю вот так форму
[[!TicketForm? 
    	&tplFormCreate=`Zayavka.create` 
  	&allowedFields=`parent,pagetitle,content,published,mail,baseu,kphone,country,fiop,fiok,age,nom,counts,countr,countn,nomer,subscribe,contentdop`
    	&requiredFields=`parent,pagetitle,mail,kphone,nom,counts,nomer,oferta,countn`
    	&redirectUnpublished=`50`
]]
Максим
19 июля 2018, 10:10
modx.pro
826
0

Как вызвать pdoPage если в параметрах указан пользовательский класс ?

Здравствуйте, подскажите пожалуйста, с помощью CMP Generator сгенерировал объекты пользовательских таблиц БД (их две таблицы). Потом получилось вызвать pdoPage из ресурса, и что бы он вытащил данные из одной пользовательской таблицы, сделал это таким образом:
В самом ресурсе вызываю pdoPage
[[!pdoPage?
        &class=`MainSeviceName`
        &tpl=`tpl.listServices`
        &element=`Getdb`
    ]]
В параметре &element находится сниппет Getdb, и вот его код:
<?php
    $path = MODX_CORE_PATH . 'components/pdotools/model/pdotools/';
    $pdoFetch = $modx->getService('pdofetch','pdoFetch', $path, $scriptProperties);
    $pdoFetch->setConfig($scriptProperties);
    return $pdoFetch->run();
И всё в порядке, все записи из таблицы получаю, но если тоже самое делать в отдельном файле php с подключенным API MODX, то никаких записей не получаю.

Собственно должно работать это так:
  1. Идёт Ajax запрос на сервер.
  2. Сервер должен вернуть записи из БД.
  3. И потом я эти записи вставляю в нужное место.
Вот он Ajax запрос:
$(document).ready(function() {
	$("#formServices").change(function() {
		var IDServices = $("#valServices").val();
		$.ajax({
			dataType: "HTML",
			type: "POST",
			url: "/assets/template/adm/db_main.php",
			data: {"ID_serv":IDServices},
			success: function(data) {
				alert(data);
			}
		});
	});
});
А вот файл php который должен вернуть записи из БД с помощью pdoPage
<?php
    /* include MODX_API BEGIN */
    define('MODX_API_MODE', true);
    require_once($_SERVER['DOCUMENT_ROOT'].'/index.php');
    $modx=new modX();
    $modx->initialize('web');
    /* include MODX_API END */
    $output = $modx->runSnippet('pdoPage',array(
    							'class' => 'MainSeviceName',
    							'tpl' => 'tpl.listServices',
    							'element' => 'Getdb'));
    return $output;
Но никаких записей из БД я таким образом не получаю.
Я просто думаю может этот файл php не знает про мой класс MainSeviceName, может его нужно тоже подключить. Но а тогда почему я могу записать в таблицу БД данные, таким вот образом.
$sheet = $modx->newObject('MainSeviceName');
$sheet->save();
После этого вызова в таблице появляется новая запись.
Подскажите пожалуйста что я тут делаю не так, почему вызывая pdoPage не возвращаются записи из БД, если я его вызываю из своего файла php.
Заранее благодарю за ответ.
Сергей Хлопов
19 июля 2018, 08:06
modx.pro
1 284
0

Просел рейтинг на modx.pro

Доброе утро!
Обратил внимание что чего-то рейтинг просел, не очень сильно, но просел.
Долго листал свои комментарии не нашел где именно проминусовали… Может просто какой-то пересчет произошел? Только у меня так?
Sergey Leleko
19 июля 2018, 07:28
modx.pro
1 158
0

MiniShop2. Как заполнить магазин из текстового файла?

Система учёта товара существующего офлайн-магазина умеет выгружать информацию об ассортименте в файл, разделённый запятыми:
"GoodID";"GoodName";"Description";"Country";"Articul";"RetailPrice";"WholesalePrice";"RetailPriceWithDiscount";"MinQuantityForOrder";"Height";"Width";"Category";"WarehouseQuantity";"Display";"TheSize";"Color";"Material";"FashionName";"Sex";"ShortName";"GoodTypeFull";"ProducerCollectionFull";"Season";"Barcode";"Pack";"PackSize";"PowerSupply";"CountUnitsPerBox";"Age";"Measure";"MeasureUnit";"Closeout";"RetailPricePerUnit";"WholesalePricePerUnit";"EqualSalePrice";"EqualWholesalePrice";"EqualCurrencyName";"PrimeCost";"SupplierCode"
3766;"WD-40 (100 г)";"WD-40 (100 г)";"Германия";"3759";200;160;200;0;0;0;-1;4;1;"";"";"";"WD-40 (100 г)";0;"";"РАЗНОЕ";"Германия";"";"2964040037663";"";"";"";"";"";0;"";0;0;0;0;0;"";160;""
Имеет ли MiniShop2 встроенные инструменты для заполнения интернет-магазина из подобного формата?
Олег
18 июля 2018, 18:50
modx.pro
965
0

MiniShop2 Редактировать CSS админки с сохранением при обновлении

Доброе время суток уважаемое сообщество MODX!

CSS админки MiniShop2 — в файле main.css.
Подгружается в \core\components\minishop2\controllers\mgr\settings.class.php
public function loadCustomCssJs()
    {
        $this->addCss($this->miniShop2->config['cssUrl'] . 'mgr/main.css');

}
Дописываю в main.css нужные стили, которые при обновлении — перезапишутся/удалятся.
1. Кроме как написать плагин — есть решение?
2. Плагин писать для MODX или для MiniShop2?
Документацию по ExtJs — читал.
Только изучаю MODX. Хочу разобраться, и сделать правильно!
Спасибо
Iskatel
18 июля 2018, 15:13
modx.pro
1 856
0

Вывести через pdo

есть сниппет, подскажите как можно его вывести через pdo с постраничной навигацией:

$sql = "SELECT * FROM `modxev_programm_oner` WHERE `user_id`=".$modx->user->get('id')." or parent=".$modx->user->get('id')."";
    $statement = $modx->query($sql);
    $parent = $statement->fetchAll(PDO::FETCH_ASSOC);
    foreach ($parent as $res) {
        switch ($res['status']) {
            case 1:
                $status = 'В ожидании';
                break;
            case 2:
                $status = 'Оплачено';
                break;
            case 3:
                $status = 'Отменено';
                break;
        }
        print'
        <tr>
			<td><span class="title">№</span>'.$i.'</td>
			<td><span class="title">Статус</span>'.$status.'</td>
			<td><span class="title">Тип</span>'.$res['typeo'].'</td>';
			<td><span class="title">Дата</span>'.$res['datao'].'</td>
		</tr>
        ';
    }
Максим
18 июля 2018, 15:05
modx.pro
1
818
0

MiniShop2 не выводит список товаров в админке

Всем привет!
После обновления версии MiniShop2 перестал выводить список товаров.
Выводит просто пустое поле:


В консоли показывает следующее:


Пытаюсь сделать еще раз обновление MiniShop2 на более свежую версию:


И еще часто при переходе по разделам админки может вылезти ошибка:
Fatal error: Uncaught --> Smarty: unable to write file /home/socvetie/opt.socvetie.info/docs/core/cache/mgr/smarty/default/wrt5b4ee608059c68_62588616 <-- thrown in /home/socvetie/opt.socvetie.info/docs/core/model/smarty/sysplugins/smarty_internal_write_file.php on line 46
Чищу вручную core/cache/ и тогда работает нормально. Но стоит зайти в другой раздел админки — и снова ошибка с кэшем смарти. Права на папку cache и на все вложенные — 755.

Подскажите, может, кто знает в чем беда.
Хостинг — nic.ru, версия PHP — 5.6
avi.zeltser
18 июля 2018, 10:06
modx.pro
1 401
0

modUser

подскажите, почему в сниппете вызываю вот такую конструкцию:
if ($userr = $modx->getObject('modUser', $cat['user_id'])) {
     $login = $userr->get('username');
}
и выдает вот такую ошибку

Fatal error: Call to a member function getObject() on null in /var/www/u0529038/data/www/colibri.im/core/cache/includes/elements/modsnippet/53.include.cache.php on line 16
Максим
18 июля 2018, 09:45
modx.pro
1 463
0