metrpro

Участники
  • Публикации

    388
  • Зарегистрирован

  • Посещение

  • Days Won

    15

Изменения репутации

  1. Like
    metrpro изменил репутацию abushyk в Cтраница с объектами агента /userХХ.html   
    $query='SELECT COUNT( d.id ) AS _cnt, u.group_id, u.city_id, u.user_id, u.fio, u.profilevk, u.profileok, u.profilefb, u.groupvk, u.groupok, u.groupfb, u.phone, u.imgfile, u.mobile, u.email, u.site, u.skype, u.yac1, u.yac2, u.ofadres, u.vibernum, u.fullinfo, g.name AS group_name, ci.name AS city_name FROM `'.DB_PREFIX.'_data` d LEFT JOIN '.DB_PREFIX.'_user u USING ( user_id ) LEFT JOIN '.DB_PREFIX.'_group g USING ( group_id ) LEFT JOIN `'.DB_PREFIX.'_city` ci ON u.city_id=ci.city_id WHERE u.group_id<>4 AND d.user_id=?'; В city_name будет текстовое имя города.
    Это если в лоб. Но такой запрос конечно уже лучше делить на два более простых. Или его результат сохранять на какой-то срок, что бы он не пересобирал данные каждую секунду.
  2. Like
    metrpro изменил репутацию abushyk в Cтраница с объектами агента /userХХ.html   
    1. нет любого случая - есть только один вариант city_name, ну или city_id для числа.
    2. Город не сохраняется. Вот отсюда и проблема. Я задавал город юзеру, но после сохранения он все равно сброшен в ноль.
    По самому элементу в модели юзера косяков быть не должно. В редакторе она выглядит "як книжка пише". Проверьте таблицу re_user через пхпмайадмин, что творится с полем city_id. Является ли оно просто INT-типа, без всяких ключей на нем. Существует ли оно вообще. Не жалуется ли эта таблица на поломки и не просит ли починить ее. Начните с этого.
  3. Like
    metrpro изменил репутацию abushyk в Cтраница с объектами агента /userХХ.html   
    Все. Отбой. Смотрим поле Запрос для элемента выбора города в модели юзера
    select re_city.name from re_city order by name человеческим языком здесь значится, что "используй в запросе на выборку списка городов только значения из колонки name сортированные по полю name". Все бы хорошо, но разом с этим из выборки были исключены ключи, которые подставляются в аттрибут value для опций селектбокса списка городов и которые используются для создания связи между юзером и городом.
    Так что верный запрос должен был выглядеть или как 
    select * from re_city order by name или как
    select city_id, name from re_city order by name Первый безопаснее, так как хз что может быть понадобится еще кроме названия и ключа в будущем.
    ПС. Поэтому и города не прописывались на юзера, так как не было идешки и, естественно, не выводились даже по последнему запросу. Проставляйте и наслаждайтесь. Для пробы на АН "Эксклюзив" я выставил.
  4. Like
    metrpro получил репутацию от yurijp в Дубли title   
    Вообщем, у меня было решение для предпоследней версии модуля sitemap 1.3.9, сегодня обновил до свежей 1.3.10, вот решение для нее (там изменена процедура формирования УРЛ для карты).
    1. Нужен файл /apps/sitemap/admin/admin.php
    2. Примерно на 125 строке расположена функция, формирующая вывод файла карты
    protected function createSitemapFile($file_name, $urls){ 3. Через несколько строк начинается условие проверки каждого УРЛ на наличие в его начале "http://" (т.е. проверяется, абсолютная ссылка или относительная)
    if(preg_match('/^(http:|https:)/', $u['url'])){ 4. Находим чуть ниже строку
    $ret.='<loc>'.$u['url'].'</loc>'."\n"; И вместо неё вставляем условие проверки последнего символа (ЕСЛИ последний_символ НЕ "/", ТО выводим урл с "/", ИНАЧЕ оставляем, как есть):
    if(substr($u['url'], -1) != '/') {$ret.='<loc>'.$u['url'].'/</loc>'."\n";} else { {$ret.='<loc>'.$u['url'].'</loc>'."\n";} } 5. Спускаемся ниже и строку
    $ret.='<loc>'.$this->site_link.$u['url'].'</loc>'."\n"; Меняем на
    if(substr($u['url'], -1) != '/') {$ret.='<loc>'.$this->site_link.$u['url'].'/</loc>'."\n";} else { {$ret.='<loc>'.$this->site_link.$u['url'].'</loc>'."\n";} } 6. Все. Чтобы увидеть результат, в НАСТРОЙКАХ \ SITEMAP админки поменяйте время формирования карты сайта (на время).
    PS: Предупреждаю, что перед этим необходимо все ссылки в шаблонах проставить со слэшем в конце (_view, _grid_thumbs, _grid_list, menu_decorator, ссылки на любые статичные страницы, может еще где найдете), актуализировать disallow в robots.txt (по умолчанию там часть закрытых категорий стоит без слэша), а также настроить 301 редирект в .htaccess:
    RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^(.*[^/])$ $1/ [L,R=301] PPS: Вот, к чему приводит, когда сам сайт причесываешь на слэш в конце каждой ссылки, а в sitemap бардак!!! Каждая страница вгоняется дважды в индекс, что приводит к возникновению большого количества дублей!

     
  5. Like
    metrpro получил репутацию от Александр Лубянский в Смена системы приема платежей (в связи с большими реформами Робокассы)   
    Господа разработчики! Хочется ребром поставить вопрос о смене системы приема платежей Робокассы на другую систему (желательно, Яндекс).
    Вызвано это полученным сегодня мною письмом:
     
    Также вызывает мою озабоченность смена ОкеанБанка (у которого отозвана лицензия).
    Дима, Костя - давайте поменяем Робокассу - какие могут быть ей альтернативы?
     
  6. Like
    metrpro получил репутацию от yurijp в Куда дальше развивается sitebill?   
    Еще один вектор развития, который лично мне, как пользователю, хотелось бы видеть, это интеграция в социальные сети.
    Первый шаг по сути уже сделан - для пользователей нескольких сетей добавлена возможность быстрой регистрации/авторизации. Но некоторые системы остались за кадром - yandex и mail.ru - а ведь подключив их можно было бы про ручную регистрацию забыть в 99% случаев.
    Также есть прекрасные задумки про кросспостинг - только реализовано это пока только для twitter, а как было бы прекрасно подключить сюда fb и vk.
    Снова хочется напомнить про мобильность - конечно, использование бутстрапа и @media позволяет адаптировать сайт к просмотру на мобильном (после некоторых танцев с бубном, правда) и даже Google говорит - Вах, какой адаптированный сайт! Но дело в том, что сайт при этом НЕУДОБНЫЙ. Т.е. его адаптированность сейчас не даёт прироста клиентов (хотя, может и увеличивает ранжирование для мобильных выдач).
  7. Like
    metrpro получил репутацию от DoobBY в Дубли title   
    Вообщем, у меня было решение для предпоследней версии модуля sitemap 1.3.9, сегодня обновил до свежей 1.3.10, вот решение для нее (там изменена процедура формирования УРЛ для карты).
    1. Нужен файл /apps/sitemap/admin/admin.php
    2. Примерно на 125 строке расположена функция, формирующая вывод файла карты
    protected function createSitemapFile($file_name, $urls){ 3. Через несколько строк начинается условие проверки каждого УРЛ на наличие в его начале "http://" (т.е. проверяется, абсолютная ссылка или относительная)
    if(preg_match('/^(http:|https:)/', $u['url'])){ 4. Находим чуть ниже строку
    $ret.='<loc>'.$u['url'].'</loc>'."\n"; И вместо неё вставляем условие проверки последнего символа (ЕСЛИ последний_символ НЕ "/", ТО выводим урл с "/", ИНАЧЕ оставляем, как есть):
    if(substr($u['url'], -1) != '/') {$ret.='<loc>'.$u['url'].'/</loc>'."\n";} else { {$ret.='<loc>'.$u['url'].'</loc>'."\n";} } 5. Спускаемся ниже и строку
    $ret.='<loc>'.$this->site_link.$u['url'].'</loc>'."\n"; Меняем на
    if(substr($u['url'], -1) != '/') {$ret.='<loc>'.$this->site_link.$u['url'].'/</loc>'."\n";} else { {$ret.='<loc>'.$this->site_link.$u['url'].'</loc>'."\n";} } 6. Все. Чтобы увидеть результат, в НАСТРОЙКАХ \ SITEMAP админки поменяйте время формирования карты сайта (на время).
    PS: Предупреждаю, что перед этим необходимо все ссылки в шаблонах проставить со слэшем в конце (_view, _grid_thumbs, _grid_list, menu_decorator, ссылки на любые статичные страницы, может еще где найдете), актуализировать disallow в robots.txt (по умолчанию там часть закрытых категорий стоит без слэша), а также настроить 301 редирект в .htaccess:
    RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^(.*[^/])$ $1/ [L,R=301] PPS: Вот, к чему приводит, когда сам сайт причесываешь на слэш в конце каждой ссылки, а в sitemap бардак!!! Каждая страница вгоняется дважды в индекс, что приводит к возникновению большого количества дублей!

     
  8. Like
    metrpro получил репутацию от DoobBY в Добавляем плагин fotorama в realia   
    Так. Опытном путем было выяснено еще кое-что. В случае, если первая была малой высоты (например, альбомной ориентации), а следующие фотографии высокие (т.е. портретные), то по причине того, что плагин изначально зарезервировал высоту блока под маловысотную фотографию, портретные сильно уменьшаются в своем масштабе.
    Чтобы этого избежать, в обеих строчках фоторамы надобно в конце div добавить следующее:
    data-width="100%" data-ratio="800/600" data-minwidth="300" data-minheight="200" И будет зер гуд. Результаты можете у меня посмотреть.
  9. Like
    metrpro получил репутацию от DoobBY в Добавляем плагин fotorama в realia   
    <center> {if $photo|count>0} <div class="fotorama" data-nav="thumbs" data-loop="true" data-keyboard="true" data-maxheight="600" data-allowfullscreen="true"> <img src="{$estate_folder}/img/data/{$photo[0].normal}"> {section name=j loop=$photo} {if $smarty.section.j.index > 0} <img src="{$estate_folder}/img/data/{$photo[j].normal}"> {/if} {/section} </div> {else} <div class="fotorama" data-maxheight="600"> <img src="{$estate_folder}/img/no_foto.png"> </div> {/if} </center>
  10. Like
    metrpro получил репутацию от DoobBY в Добавляем плагин fotorama в realia   
    Плагин отменный, встает без проблем, но Дима не раскрыл топик до конца:
    1. Вверх realty_view ставьте только две строчки кода:
    <link href="http://cdnjs.cloudflare.com/ajax/libs/fotorama/4.6.4/fotorama.css" rel="stylesheet"> <script src="http://cdnjs.cloudflare.com/ajax/libs/fotorama/4.6.4/fotorama.js"></script> Ссылку на jquery.min.js ставить не надо во избежание конфликта между системной версией и новой! Для работы плагина нужна его версия не меньше 1.8, в sitebill уже стоит 1.10.
    Более того, я бы рекомендовал скачать представленный на сайте разработчика плагина комплект файлов и разместить их на своем сервере - лично я так и сделал, ни к чему обращение на сторону, мало ли чего.
    2. В месте вывода картинок в realia_view ставим код:
    <center> {if $photo|count>0} <div class="fotorama" data-nav="thumbs" data-loop="true" data-keyboard="true" data-maxheight="600" data-allowfullscreen="true"> <img src="{$estate_folder}/img/data/{$photo[0].normal}"> {section name=j loop=$photo} {if $smarty.section.j.index > 0} <img src="{$estate_folder}/img/data/{$photo[j].normal}"> {/if} {/section} </div> {/if} </center> Это редакция кода с фото по центру, с превьюшками, с возможностью вывода на весь экран, ограниченная по максимальной высоте до 600пкс, цикличная, с подключенным управлением стрелками влево и вправо.
    3. Чистим старый код
    Далее, чтобы не перегружать систему, убираем старый prettyphoto из realty_view:
     
    <script> $(document).ready(function(){ if($('.carousel.property .content ul').length>0){ $('.carousel.property .content ul').carouFredSel({ scroll: { items: 1 }, auto: false, next: { button: '.carousel.property .content .carousel-next', key: 'right' }, prev: { button: '.carousel.property .content .carousel-prev', key: 'left' } }); $('.carousel.property ul li:first').addClass('active'); } }); </script> И пару мест из header:
     
    <link rel="stylesheet" href="{$estate_folder}/template/frontend/{$current_theme_name}/css/prettyPhoto.css"> и
    <script src="{$estate_folder}/template/frontend/{$current_theme_name}/js/jquery.prettyPhoto.js"></script> <script type="text/javascript" > $(document).ready(function(){ $("a[rel^='prettyPhoto']").prettyPhoto({ social_tools: false, theme: 'light_square'}); }); </script> А так за плагин спасибо, мне очень понравилось, лучше чем prettyphoto и шустрее!
    Тестировал на шаблоне Realia, постараюсь на днях оттестить на Estetico
    UPD: Estetico тоже встает без проблем!
  11. Like
    metrpro получил репутацию от DoobBY в Качество превью картинок   
    У меня такое было - независимо от шаблона надо посмотреть размер элемента, в котором размещается картинка-превью (скажем, 200х200). В настройках Дополнительно\Высота превью изображения объявления и Ширина ставите раза в полтора выше - тогда получится красивое сверхчёткое превью.
    NB: фоты надо будет после этого перезалить.
  12. Like
    metrpro получил репутацию от bogdanoff в Смена системы приема платежей (в связи с большими реформами Робокассы)   
    Господа разработчики! Хочется ребром поставить вопрос о смене системы приема платежей Робокассы на другую систему (желательно, Яндекс).
    Вызвано это полученным сегодня мною письмом:
     
    Также вызывает мою озабоченность смена ОкеанБанка (у которого отозвана лицензия).
    Дима, Костя - давайте поменяем Робокассу - какие могут быть ей альтернативы?
     
  13. Like
    metrpro получил репутацию от Darrylwep в Уведомление админа о добавленном объявлении   
    В настройках CMS есть возможность уведомлять админа о зарегистрированном пользователе.
    Внимание, вопрос!
    Как уведомлять админа о новом объявлении, добавленном на сайт зарегистрированным пользователем?
     
    PS: поиск по сайту ничего не дал
  14. Like
    metrpro изменил репутацию abushyk в Допиливаем новые фишки в realia   
    Я перенес исправленный вами файл шаблона в локальное место /template/frontend/realia/apps/news/site/template/news_view.tpl
    Свои изменения\дополнения лучше хранить именно таким образом, так как все шаблоны расположенные в папке apps/ подвержены замене при обновлениях соотв. приложений. А снесенные (локализированные) в папке шаблона уже не затрагиваются механизмом обновлений.