We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 1113
    • 11 Posts
    Добрый день всем!
    У меня серьезная проблема с работой Ditto.
    Работаю над сайтом-каталогом мест для детей и их родителей. Каждое место - это страница (ресурс MODx) со следующими параметрами:
    adrtype - тип адреса - улица, переулок, площадь и т.д. (DropDown List menu, возможные значения "улица||проспект||набережная||станция метро||переулок||шоссе||площадь||бульвар||проезд||сквер||парк||спуск||другое (для заграницы)" по умолчанию "улица");
    bld - номер дома (text);
    city - имя города (text, по умолчанию "Москва");
    country - имя страны (DropDown List menu, возможные значения "Россия||Украина", по умолчанию "Россия");
    email - e-mail заведения (text);
    img1 - фото1 (image);
    img2 - фото2 (image);
    lat - широта для Google Maps (text);
    lng - долгота для Google Maps (text);
    phone - номер телефона (text);
    placetype - тип места - кинотеатр, аквапарк, кафе, etc. (DropDown List menu, возможные значения "любое заведение||Спортзал||Кинотеатр||Бассейн||Фитнесс-центр||Театр||Студия||Школа||Детское кафе||Развивающий, семейный центр||Детский клуб||Цирк||Детский сад, ясли||Медицинские учреждения||Каток, стадион, спорт-секция||Дом ребенка||Детский парк||Выставка||Музей||Аквапарк", по умолчанию "любое заведение");
    strName - название улицы/переулка/площади/... (text);
    www - URL веб-сайта (text).

    Ditto вызывается из моего сниппета следующим образом (используется фильтр по TV):
    $filter="country,$country,1|city,$city,1";
    if($adrstreet!="") $filter.="|strName,$adrstreet,1";
    if($adrtype!="") $filter.="|adrtype,$adrtype,1";
    if($bld!="") $filter.="|bld,$bld,1";
    if($placetype!="") $filter.="|placetype,$placetype,1";
    $out=$modx->runSnippet("Ditto",array("tpl"=>"placesRow",
    					"filter"=>$filter,
    					"startID"=>$places_root_page,
    					"display"=>"all",
    					"noResults"=>"<h2>Ничего не найдено.</h2>"
    					));
    


    Новые места добавляют авторизированные юзеры при помощи моего же сниппета, использующего document.class.php. TV-параметры добавляются тем же макаром.
    И вот ПРОБЛЕМА: для каждого города я могу добавить ТОЛЬКО ОДНО место, если больше - валится страница где Ditto должен это все показать.
    Fatal error: Cannot redeclare inputclean() (previously declared in Z:\home\r0\www\manager\includes\document.parser.class.inc.php(814) : eval()'d code:34) in Z:\home\r0\www\manager\includes\document.parser.class.inc.php(814) : eval()'d code on line 57
    

    Функция inputclean нигде не объявлена.
    ИЧСХ, если изменить статус новосозданного ресурса на удаленный или неопубликованный (напрямую в БД при помощи phpMyAdmin выставить поля published и/или deleted в НОЛЬ), то все начинает работать, но мест этих, понятно же, не видно на сайте.

    Вот такая мура embarrassed
    Кто знает или имеет хоть какие-то подозрения - помогите, пожалуйста!
    Заранее спасибо!

    MODx Evolution 1.0.5 @ Apache(WIN7)+PHP5.2+MySQL5 (Denwer v.3)