pwnz22
-
Публикации
118 -
Зарегистрирован
-
Посещение
Изменения репутации
-
pwnz22 получил репутацию от Richardrap в mapviewer+модальное окно
Сделал модальное окно для mapviwer, после выбора области нужно чтобы перешло в обычный вид и с поиском внизу) но кнопка "Искать" не реагирует) а если подключать main.tpl вместо drawregion.tpl выдает ошибку подскажите как исправить?
<a href="#example" class="openModal">Открыть модальное окно</a><div id="example" class="modal_window"> <div> {include file='apps/mapviewer/site/template/drawregion.tpl'} <a href="#close" title="Закрыть"></a> </div></div> модалку внес сразу в advanced_search_form.tpl
нужно еще результаты в виде grid_list вывести)
-
pwnz22 получил репутацию от Richardrap в Локализация и ссылки на объекты
Добрый день!
Помогите сделать ссылки на объекты типа:
Если локализация переключена на русский то
http://agentstva.tj/kommercheskaya/realty86-ru
Если локализация переключена англ. то
http://agentstva.tj/kommercheskaya/realty86-en
Это для всех ссылок объектов при определенном языке.
-
pwnz22 изменил репутацию TopRaN в Допиливаем новые фишки в realia
А как вы хотели, вы на этом деньги заработаете, мы тоже кушать хотим. Да и некоторые функции, которые вы хотите, нужно писать.
-
pwnz22 изменил репутацию abushyk в mapviewer+модальное окно
В /apps/mapviewer/site/template/search.tpl
это:
<div id="activemap_holder" style="position: relative;"><div id="activemap_loading"><span>LOADING...</span></div><div id="activemap" style="width: 100%; height: 500px;"></div></div> блок карты
это:
<div id="main" class="searchonmap">...</div> блок формы поиска.
Можно просто поменять их местами.
-
pwnz22 изменил репутацию abushyk в mapviewer+модальное окно
Хорошо, идем далее.
1
/apps/mapviewer/admin/admin.php
функция __construct
в самом конце ее добавляем новую конфигину
if ( !$config_admin->check_config_item('apps.mapviewer.add_grid_html') ) { $config_admin->addParamToConfig('apps.mapviewer.add_grid_html','0','Добавить HTML разметку для объектов на карте',1);} 2
/apps/mapviewer/admin/admin.php
функция ajax
подсекция оператора switch с меткой collect_data
После строки
$res = $grid_constructor->get_sitebill_adv_core( $params, false, false, false, false ); добавляем вставку
if(1===intval($this->getConfigValue('apps.mapviewer.add_grid_html'))){ global $smarty; if(file_exists(SITEBILL_DOCUMENT_ROOT.'/template/frontend/'.$this->getConfigValue('theme').'/apps/mapviewer/site/template/realty_grid_html.tpl')){ $tpl=SITEBILL_DOCUMENT_ROOT.'/template/frontend/'.$this->getConfigValue('theme').'/apps/mapviewer/site/template/realty_grid_html.tpl'; }else{ $tpl=SITEBILL_DOCUMENT_ROOT.'/apps/mapviewer/site/template/realty_grid_html.tpl'; } foreach($res['data'] as $k=>$v){ $smarty->assign('item', $v); $res['data'][$k]['_html']=addslashes($smarty->fetch($tpl)); }} 3
В папку /apps/mapviewer/site/template добавляем файл с именем realty_grid_html.tpl и содержимым из этой пасты
Заходим в админку, в приложение MapViewer что бы новая настройка прописалась в конфиг.
После этого мы имеем настройку, при включении которой в данные объектов, выдаваемые на карту будет добавлен служебный элемент _html с содержимым анонсного блока для объекта. Данный элемент будет добавлен к каждому отдельному объекту. В контексте кода с циклом в скрипте, вы сможете аналогично выхватить их через json[i]._html
Это наша внутренняя часть.
Переходим к внешней.
4
/apps/mapviewer/js/search.js
функция makeSearch
Вместо того, что мы вставляли в посте ставим иной код var am=$('#activemap_grid');if(am.length==1 && typeof json[0]._html !== 'undefined'){ var str=''; for(var i = 0, l = json.length; i < l; i++) { var html = json[i]._html.replace(/\\'/g, '\''); html = html.replace(/\\"/g, '"'); html = html.replace(/\\0/g, '\0'); html = html.replace(/\\\\/g, '\\'); str+=html; } $('#activemap_grid').html(''); $('#activemap_grid').html(str);} идея такова. Первым делом мы ищем на странице элемент-вместилище с id="activemap_grid". В принципе это может быть как табличный, так и блочный элемент, но, что бы не усложнять, будем считать, что он блочный. При наличии такого элемента наличии подэлемента _html в данных объявления (который будет отсутствовать, если мы например не включили добавленную выше настройку) мы в цикле обходим элементы, собираем их анонсный хтмл и упаковываем в строку. И готовую строку вставляем в наш объект-вместилище. Все практически аналогично предыдущему способу.
5.
Адаптация. Шаблон для realty_grid_html.tpl из моей пасты самый общий. Естественно мы захотим что-то поменять, добавить или удалить. Для этого делаем копию файла /apps/mapviewer/site/template/realty_grid_html.tpl в /template/frontend/шаблон/apps/mapviewer/site/template/realty_grid_html.tpl и упражняемся там как хотим.
6.
Естественно нам нужно добавить объект вместилище, куда выпадут все наши хтмл от объявлений. Это логичнее всего сделать в файл /apps/mapviewer/site/template/search.tpl или его локальную копию в шаблоне в виде вставки строки
<div id="activemap_grid"></div>
На него можно придать дополнительные свои классы, но ид у него должен остаться именно этот.
-
pwnz22 изменил репутацию abushyk в mapviewer+модальное окно
var data_place=$('<table></table>'); //создаем динамическое вместилище в виде таблицыfor(var i = 0, l = json.length; i < l; i++) { var tr=$('<tr><td>'+json[i].id+'</td><td>'+json[i].type_sh+'</td><td>'+json[i].price+'</td></tr>'); // в цикле формируем элементы строк таблицы data_place.append(tr); // добавляем каждую во вместилище}$('#data_place').html(''); // очищаем элемент размещения табличных данных на странице от старых данных$('#data_place').append(data_place); // размещаем свежую таблицу на странице Элемент id="data_place" должен быть добавлен на страницу шаблона search.tpl что бы было куда выводить данные.
-
pwnz22 изменил репутацию Chernetskiy в Яндекс метрика куда вставить код?
Верхнее меню "Приложения" -> Редактор шаблонов в файл footer.tpl (подвал), где-нить в районе копирайта и названия сайта - до или после.
-
pwnz22 изменил репутацию abushyk в Поиск по номеру телефона
<form method="GET" action="../search.php"> можно просто {$estate_folder}/ вместо ../search.php
И так, и так обращение идет на сам сайт. Так что промежуточный файл-редирект не нужен.
И в
<input type="text" id="input-search" name="q" placeholder="Поиск среди объявлений"> name сменить с q на phone
-
pwnz22 изменил репутацию abushyk в mapviewer+модальное окно
Вы включили в модалку только карту. А там смысл такой, что рисуется на карте. Но кроме карты на странице в шаблоне есть еще форма поиска с выбором девиации нарисованного контура, и доппараметрами. Так вот поиск происходит таким образом:
1. вы рисуете на карте
2. нажимаете искать
3. после этого координаты собираются с карты и превращаются в строку, эта строка заносится в скрытое поле на упомянутой форме и уже эта форма запускается на отправку.
Так как формы на модалке нет, то естественно submit-событие срабатывает в холостую.
Другими словами вам нужно как минимум подставить в шаблон в модалке пусть даже скрытую форму с идешкой searchform и textarea в ней с name=crds. Экшен формы должен направлять на {$estate_folder}/mapviewer/search/
Можете увидеть эту форму в /apps/mapviewer/site/template/drawregion.tpl
-
pwnz22 получил репутацию от kostenko888 в Главная страница не реагирует на изменения
<div class="item span4"> <div class="address decoration"></div> <h2><a>Добавить свое объявление</a></h2> <p>На нашем сайте вы можете добавить информацию о своей недвижимости</p> <a href="/add/" class="btn btn-primary">Подробнее</a> </div><!-- /.item --> <div class="item span4"> <div class="gps decoration"></div> <h2><a>Снять квартиру</a></h2> <p>Интересно арендовать, тогда заполните форму и мы подберем вам вариант</p> <a href="/getrent/" class="btn btn-primary">Подробнее</a> </div><!-- /.item --> <div class="item span4"> <div class="key decoration"></div> <h2><a>уацауц</a></h2> <p>Быстро оформить ипотеку и жить в своей квартире, это проще чем думается.</p> <a href="/ipotekaorder/" class="btn btn-primary">Подробнее</a> </div><!-- /.item --> вот правильный код. измените его в main.tpl в самом низу)
1.<h2><a>Добавить свое объявление</a></h2>
2.<p>На нашем сайте вы можете добавить информацию о своей недвижимости</p>
3.<a href="" class="btn btn-primary">Подробнее</a>
А в 3 пункте в href="" нужно указать стат страницу.
хотя если хотите оставить только 1 пункт так как у вас) то должно получиться) может после изменений не загрузили файл на сервер?
-
pwnz22 изменил репутацию abushyk в Ошибка: Не выводятся избранные
Первым делом копать в Настройки - Общее - Разрешить поиск по тэгам во фронтенде . Эта настройка должна быть 0.
-
pwnz22 изменил репутацию abushyk в Вывод информации об объекте в realty_grid_list.tpl
По умолчанию данные связанных пользователей в сетку не подхватываются. Но можно их заставить подхватится передав специальный параметр _collect_user_info со значением 1.
Сделать это можно так. В контроллере шаблона /main/main.php нужно сделать локальную функцию сборщика данных для списка
function grid_adv ($params=array()) { $in_params=$params; $in_params['_collect_user_info ']=1; return parent::grid_adv($in_params);} После этого в объектах списка будет присутствовать подмассив _user_info в котором будут лежать значения его phone, login, fio.
Получить к ним доступ можно будет
{$grid_items[i]._user_info.phone} Что бы расширить список доступных полей, нужно локализовать Grid_Constructor и обусловить изменения в локальной функции его с именем transformGridData()
-
pwnz22 изменил репутацию abushyk в Валюта в добавлении объявления
Это поле нужно добавить самостоятельно http://www.etown.ru/s/topic/2235-выбор-валюты-на-сайте/?p=23150
Тогда оно появится в списке в Редакторе форм и его можно будет по єтому списку совать в нужное положение
-
pwnz22 получил репутацию от abushyk в Главная страница не реагирует на изменения
<div class="item span4"> <div class="address decoration"></div> <h2><a>Добавить свое объявление</a></h2> <p>На нашем сайте вы можете добавить информацию о своей недвижимости</p> <a href="/add/" class="btn btn-primary">Подробнее</a> </div><!-- /.item --> <div class="item span4"> <div class="gps decoration"></div> <h2><a>Снять квартиру</a></h2> <p>Интересно арендовать, тогда заполните форму и мы подберем вам вариант</p> <a href="/getrent/" class="btn btn-primary">Подробнее</a> </div><!-- /.item --> <div class="item span4"> <div class="key decoration"></div> <h2><a>уацауц</a></h2> <p>Быстро оформить ипотеку и жить в своей квартире, это проще чем думается.</p> <a href="/ipotekaorder/" class="btn btn-primary">Подробнее</a> </div><!-- /.item --> вот правильный код. измените его в main.tpl в самом низу)
1.<h2><a>Добавить свое объявление</a></h2>
2.<p>На нашем сайте вы можете добавить информацию о своей недвижимости</p>
3.<a href="" class="btn btn-primary">Подробнее</a>
А в 3 пункте в href="" нужно указать стат страницу.
хотя если хотите оставить только 1 пункт так как у вас) то должно получиться) может после изменений не загрузили файл на сервер?
-
pwnz22 изменил репутацию abushyk в Вывести в слайдере вместо "специальных предложений" "похожие"
ок
{if $similar_data|count>0}<div class="carousel topspecial"> <h2 class="page-header">{$L_SPECIAL_OFFERS}</h2> <div class="content"> <a class="carousel-prev" href="#">Previous</a> <a class="carousel-next" href="#">Next</a> <ul> {section name=i loop=$similar_data} <li> <div class="image"> <a href="{$similar_data[i].href}"></a> {if $similar_data[i].image.image_array|count ne 0} <img src="{$estate_folder}/img/data/{$similar_data[i].image.image_array[0].preview}"> {else} <img src="{$estate_folder}/template/frontend/realia/img/no_foto_270x200.png" class="previewi"> {/if} </div> <div class="title"> <h3><a href="{$similar_data[i].href}"> {if $similar_data[i].city_id.value!=0} {$similar_data[i].city_id.value_string}{if $similar_data[i].street_id.value!=0}, {$similar_data[i].street_id.value_string}{if $similar_data[i].number.value ne ''}, {$similar_data[i].number.value}{/if}{/if} {else} {if $similar_data[i].street_id.value!=0} {$similar_data[i].street_id.value_string}{if $similar_data[i].number.value ne ''}, {$similar_data[i].number.value}{/if} {/if} {/if} </a></h3> </div><!-- /.title --> <div class="location">{$similar_data[i].topic_id.value_string}</div><!-- /.location--> {if $similar_data[i].price.value > 0} <div class="price">{$similar_data[i].price.value|number_format:0:",":" "} {if $similar_data[i].currency_id.value != 0}{$similar_data[i].currency_id.value_string}{/if}</div> {/if} {if (int)$similar_data[i].square_all.value!=0} <div class="area"> <span class="key">{$L_SQUARE}:</span> <span class="value">{$similar_data[i].square_all.value} m<sup>2</sup></span> </div> {/if} </li> {/section} </ul> </div></div>{/if} -
pwnz22 изменил репутацию abushyk в Вывод информации об объекте в realty_grid_list.tpl
/settings.ini.php открыть добавить строки [GridConstructor]path='/main/grid/local_grid_constructor.php'name='Local_Grid_Constructor' В папку шаблона в /main/grid/ положить файл local_grid_constructor.php с содержимым
class Local_Grid_Constructor extends Grid_Constructor { protected function transformGridData($ra, $_collect_user_info=false){ $ra=parent::transformGridData($ra, $_collect_user_info); require_once(SITEBILL_DOCUMENT_ROOT.'/apps/system/lib/model/model.php'); $data_model = new Data_Model(); foreach ( $ra as $item_id => $item_array ) { if ( $item_array['системное имя переменной-справочника в модели data'] > 0 ) { $ra[$item_id]['желаемое имя в котором будет значение текстовое из справочника латинницей'] = $data_model->get_string_value_by_id('таблица справочника без префикса re_', 'колонка ключ в тиаблице-справочнике', 'name', $item_array['системное имя переменной-справочника в модели data'], true); } } return $ra; } } -
pwnz22 изменил репутацию abushyk в Вывод информации об объекте в realty_grid_list.tpl
{if $grid_items._optype_ == 2} {/if}
Это (окружения подчеркиваниями системного имени поля) применимо ко всем элементам типа select_box
-
pwnz22 изменил репутацию Chernetskiy в Вывод информации об объекте в realty_grid_list.tpl
И что мешает, вставьте код...
А по умолчанию продажа/аренда не выводится?
Тут варианты:
1. отключить карту в настройках
2. установить в Настройки -> вкладка template.realia другой вариант отображения главной (slider/carousel/search)
3. жестко убрать код карты из realty_grid.tpl , начало файла, перед переключателем отображения объявлений - list и thumbs.
-
pwnz22 изменил репутацию Moses в Как вывести количество фотографий объекта в поиске
Спасибо разобрался.
Если кому нужно то выводиться вот таким кодом {$grid_items.img|count}
-
pwnz22 изменил репутацию abushyk в Сменить значение 0 на свое в {$structure_box}
Если такую манипуляцию нужно сделать для формы поиска, то показываю.
В файле /main/main.php нашего шаблона содержится строка вида
$this->template->assert('structure_box', $Structure_Manager->getCategorySelectBoxWithName('topic_id', $this->getRequestValue('topic_id') )); Она создает список выбора для формы поиска на основании Структуры. Как мы можем видеть, свое значение выбраного топика она черпает из запроса
$this->getRequestValue('topic_id') А мы схитрим. Эту строку мы заменим на
$tid=intval($this->getRequestValue('topic_id'));if($tid===0){$tid=6163;}$this->template->assert('structure_box', $Structure_Manager->getCategorySelectBoxWithName('topic_id', $tid )); Т.е. мы опросили запрос, если топик у нас никакой не выбран (==0), то мы нагло ставим нужный нам ид категории (6163). Не вмешиваясь в запрос. Если юзер что-то поищет формой поиска, то topic_id в запросе не будет пустой, и мі его не изменим. А если не поищет, то мі сразу предложим ему Дома и дачи.
Я вам там вживил єту штуку, поправите себе 6163 на нужную идешку.
-
pwnz22 изменил репутацию Дмитрий Кондин в Сменить значение 0 на свое в {$structure_box}
/apps/language/language/ru/frontend.ini
L_CHOOSE_TOPIC="выбрать раздел" поменяйте на свое, но при обновлении надо будет каждый раз менять.