Разделы

  
 

Revo 2.1.5 - 2.2 "Доступ закрыт" баг с правами

Привет всем. Часто юзаю MODx Revo, но это ошибка в первый раз.
При обращении к контекстам — вываливается ошибка "action_err_ns". Соответственно при любой попытке что-либо сохранить (страницы например или перезагрузить права и доступы), система выбрасывает "доступ закрыт".
Никаких действий с пользователем не делал, прав не менял. Просто начала появляться ошибка.
MODx обновление до 2.2 не помогло. Ошибка точно такая же.
Я очень надеюсь на Вашу помощь.

Тэги на Ajax (Revo) - Bug

Попробовал реализовать связку (subj) и получил ошибку — файла кэша;
Fatal error: Call to a member function get() on a non-object in \core\cache\includes\elements\modsnippet\1.include.cache.php on line 95

прилагаю дамп — для уточнения действий;

код
<?php
if ($_GET['tag'] == null) die ("параметр не задан");

require_once 'manager/config.core.php';
require_once MODX_CORE_PATH.'config/'.MODX_CONFIG_KEY.'.inc.php';
require_once MODX_CORE_PATH.'model/modx/modx.class.php';
$modx = new modX();
$modx->initialize('web');

$params['element'] = "getResources";
$params['elementClass'] = "modSnippet";
$params['tpl'] = "gettpl";
$params['hideContainers'] = 1;
$params['pageVarKey'] = "page";
$params['includeTVs'] = 1;
$params['includeContent'] = 1;
$params['parents'] = 0;

$html = $modx->runsnippet('getResourcesTag', $params);
echo $html;
?>


код JS
$(document).ready(function(){
// ---- Форма -----
  var options = { 
    // элемент, который будет обновлен по ответу сервера 
  	target: "#otvet",
	url: "ajax.php",
    timeout: 1000 // тайм-аут
  };
  
  // привязываем событие submit к форме
  $('.form').ajaxForm(options); 
// ---- Форма -----
});

p.s. версия Рево 2.2.0-pl2
файлы dl.dropbox.com/u/3460527/user-modx/www.zip
база dl.dropbox.com/u/3460527/user-modx/revo.sql.zip
  • 0
  • 15 января 2012, 16:59
  • doc555
  • 4

[Revo] UpdateProfile — профиль пользователя обновляется только после чистки кэша [Решено]

Применяю на сайте сниппет UpdateProfile. Получается вот что: при внесении изменений в профиль они появляются только после чистки кэша через админку.
Так же если изменить профиль пользователя через админку, он изменится также после чистки кэша.

Вроде бы это даже официально зарегистрированный баг bugs.modx.com/issues/5655

Можно конечно написать сниппет, который будет чистить кэш всего сайта после обновления информации о пользователе, но это по-моему неправильно, что удаляется кэш сайта если веб-юзер обновляет информацию о себе.

Подскажите, может кто сталкивался с этой проблемой и решил ее?
А может знаете способ чистить кэш только у одного юзера?

UPD: Сниппет вызывается так [[!UpdateProfile]]. Отключил кэширование страницы, сниппета, чанков, плейсхолдеров — не помогает.

TV - перегруз

Словил ошибку — от базы данных «запрос слишком длинный»

Но по заданию мне нужно создать каталог в котором
— 10 Групп
— 10 Параметров у каждого товара
* по ним будет поиск и фильтры


big_pic — clip2net.com/s/1e0vp
  • 0
  • 7 октября 2011, 14:09
  • doc555
  • 7

AjaxSearch 1.9 (bug)

Использую сниппет с параметром &withTvs=`+:pic-tovar`

В самом TV — забито значение по_умолчанию
«assets/images/demo/product-image.jpg»

в шаблоне (result.tpl.html) идёт вызов [+as.pic-tovar+]

BUG: картинка при поиске не видна *а точнее видна только тогда — когда стоит новое значение /не по дефолту/.

Shopkeeper виджет - shk_widget (bug)

версия софта — Modx 1.0.5; ShK 1.3.3
трабла — не выводит список опций;

пост на форуме — modx-shopkeeper.ru/forum/viewtopic.php?pid=4859

*может кто сталкивался?

[решено] Шоп-кипер поломался

Modx 1.0.5
ShopKeeper 1.1
Вызов шоп кипера —

[!Shopkeeper? &cartType=`small` &cartTpl=`sur.ShopCart` &priceTV=`price` &orderFormPage=`52` &gotoid=`46` &flyToCart=`helper` &counterField=`1` &noJQuery=`0` &noLoader=`0`¤cy=`р.`&noJavaScript=`0` !]  

От чего-то шоп-кипер при нажатии на кнопку «заказать», выдаёт мне следующую ошибку.

« MODx Parse Error »
MODx encountered the following error while attempting to parse the requested resource:
« PHP Parse Error »
 
PHP error debug
  Error: 	mysql_real_escape_string() expects parameter 1 to be string, array given	 
  Error type/ Nr.: 	Warning - 2	 
  File: 	/usr/home/16492/truboarm.ru/html/manager/includes/extenders/dbapi.mysql.class.inc.php	 
  Line: 	121	 
  Line 121 source: 	$s = mysql_real_escape_string($s, $this->conn); 	 
 
Parser timing
  MySQL: 	0.0186 s	(11 Requests)
  PHP: 	0.0564 s	 
  Total: 	0.0749 s

Не подскажете что я сделал не так?
Решение:
Как всегда виновником оказался кеш.
Сбросить кеш и подождать чуток. И всё нормально работает.

Баг getResources при &tvFilters с OR

[[!getPage?
    &elementClass=`modSnippet`
    &element=`getResources`
    &parents=`33`
    &limit=`115`
    &tpl=`news-article`
    &showHidden=`1`
    &showUnpublished=`1`
    &hideContainers=`1`
    &includeTVs=`1`
    &includeContent=`0`
    &tvFilters=`enginetype==%gasoline%||enginetype==%disel%`
]]

вопреки ожиданиям, выводит список всех автомобилей, а не только тех, которые на бензине или на солярке работают.

( Читать дальше )
  • 0
  • 1 июля 2011, 21:55
  • barsuk
  • 1

[решено] Reflect не хочет работать с tv параметром

Суть проблемы
Вызываю сниппет Reflect следующим образом
[!Reflect?&config=`default` &dateSource=`news-date` &dittoSnippetParameters=`parents:61` &id=`news` &getDocuments=`1` &showItems=`0` &targetID=`61`!]


Версия modx 1.0.5
В dateSource передаю имя tv параметра, прикреплённого к новостям (это не моя идея дату новости выводить в tv, того заказчик хочет). Тип ввода Date, визуальный компонент Unixetime (ибо в мануале по Reflect сказано, что данные должны быть в unix timestamp).

На выхлопе Reflect не реагирует вообще на переданный ему tv, начинает вывод архива с Января 1970 года.

Думается мне что Reflect'у просто отдаётся news-date не в том формате. Как ему передать этот tv, чтоб заработало?

Решение

Оказалось: мне надо учить английский.
Всего то делов — надо передать сниппету ещё один параметр
&dittoSnippetParameters=`parents:61|<b>dateSource:news-date</b>`

Ditto пагинация (баг)

При вызове двух экземпляров — имею баг — новости и каталог листаються оба;

* читал заметку: не помогла tinyurl.com/3jkmx73
* пробовал &display=`x` — тот же баг

Короче — решение (!):
[[Ditto?parents=`7` &id=`nn` &tpl=`news.titul` &summarize=`4` &paginate=`1`]]
 	<div id="pages-list"> [+nn_prev+] [+nn_pages+] [+nn_next+] </div>