pechkin

Кнопка "добавить объявление"

Recommended Posts

Здравствуйте!

Как сделать так, чтобы при нажатии кнопки "добавить объявление" переход был на регистрацию  (если человек не зарегистрирован)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В самом общем случае:

{if $smarty.session.user_id eq ''}<a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/add/">{$L_ADD_ADV}</a>{else}<a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/register/">{$L_ADD_ADV}</a>{/if}

если делать на кнопках.

 

 

Если копнуть глубже, то в main.php шаблона найти блок

if ( !$has_result && preg_match('/^add(\/?)$/', $REQUESTURIPATH) ) {...}

и в нем добавить условие

if ( !$has_result && preg_match('/^add(\/?)$/', $REQUESTURIPATH) ) {  if(0==(int)$_SESSION['user_id']){    header('location: '.SITEBILL_MAIN_URL.'/register/');    exit();  }  ... тут все что было}

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот код, но блока нет: if ( !$has_result && preg_match('/^add(\/?)$/', $REQUESTURIPATH) ) {

...
}

 

 

 

{if $is_underconstruction_mode==1}

{include file='main_closed.tpl'}
{else}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
  
{include file="header.tpl"}
<body>
{if $smarty.session.user_id eq ''}
    {include file="login_register.tpl"}
{/if}
  {$banner_head}
<div id="wrapper-outer" >
    <div id="wrapper">
        <div id="wrapper-inner">
            <!-- BREADCRUMB -->
            <div class="breadcrumb-wrapper">
                <div class="container">
                    <div class="row">
                        <div class="span12">
                            <ul class="breadcrumb pull-left">
                                <li><a href="{$estate_folder}/">{$L_HOME}</a></li>
                                {section name=i loop=$right_menu}
                                <li><a href="{$right_menu.url}">{$right_menu.name}</a></li>
                                {/section}
                                
                            </ul><!-- /.breadcrumb -->
 
                            <div class="account pull-right">
                                <ul class="nav nav-pills">
                                {if $smarty.session.user_id eq ''}
                                  
<li><a href="#" data-toggle="modal" data-target="#prettyLogin">{$L_LOGIN_BUTTON}</a></li>
                                   <li><a href="#" data-toggle="modal" data-target="#prettyLogin">{$L_AUTH_REGISTRATION}</a></li>
{else} {if isset($user_menu)}{$user_menu}{/if}
<li><a href="{$estate_folder}/logout/" >{$L_LOGOUT_BUTTON}</a></li>
{/if}
                                
                                
                                    
                                </ul>
                            </div>
                        </div><!-- /.span12 -->
                    </div><!-- /.row -->
                </div><!-- /.container -->
            </div><!-- /.breadcrumb-wrapper -->
 
            <!-- HEADER -->
            <div id="header-wrapper">
                <div id="header">
                    <div id="header-inner">
                        <div class="container">
                            <div class="navbar">
                                <div class="navbar-inner">
                                    <div class="row">
                                        <div class="logo-wrapper span4">
                                            <a href="#nav" class="hidden-desktop" id="btn-nav">Toggle navigation</a>
 
                                            <div class="logo">
                                                <a href="{$estate_folder}/" title="Главная">
                                                    <img src="{$estate_folder}/template/frontend/{$current_theme_name}/img/logo.png" alt="Home">
                                                </a>
                                            </div><!-- /.logo -->
 
                                            <div class="site-name">
                                                <a href="/" title="Главная" class="brand">KWA</a>
                                            </div><!-- /.site-name -->
 
                                            <div class="site-slogan">
                                                <span>Квартира<br>Дом</span>
                                            </div><!-- /.site-slogan -->
                                        </div><!-- /.logo-wrapper -->
 
                                        <div class="info">
                                            <div class="site-email">
                                                <a href="mailto:info@kvartira.by">info@kwa.by</a>
                                            </div><!-- /.site-email -->
 
                                            <!--<div class="site-phone">
                                                <span>+375-29-123-45-67</span>
                                            </div>--><!-- /.site-phone -->
                                        </div><!-- /.info -->
 
                                      <a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/add/">{$L_ADD_ADV}</a>
                                    </div><!-- /.row -->
                                </div><!-- /.navbar-inner -->
                            </div><!-- /.navbar -->
                        </div><!-- /.container -->
                    </div><!-- /#header-inner -->
                </div><!-- /#header -->
            </div><!-- /#header-wrapper -->
 
            <!-- NAVIGATION -->
            <div id="navigation">
                <div class="container">
                    <div class="navigation-wrapper">
                        <div class="navigation clearfix-normal">
                        
{$navmenu}
 
           
 
                            <div class="language-switcher">
                            {foreach item=ln from=$available_langs key=k}
{if $smarty.session._lang eq $k}
<div class="current"><a href="#" lang="en"><img src="{$estate_folder}/template/frontend/{$current_theme_name}/img/flags/{$k}.png"> {$ln}</a></div><!-- /.current -->
{/if}
{/foreach}
                                <div class="options">
                                    <ul>
                                    {foreach item=ln from=$available_langs key=k}
{if $smarty.session._lang eq $k}
{else}
{/if}
<li><a href="{$smarty.const.SITEBILL_MAIN_URL}/?_lang={$k}"><img src="{$estate_folder}/template/frontend/{$current_theme_name}/img/flags/{$k}.png"></a></li>
{/foreach}
                                    </ul>
                                </div><!-- /.options -->
                            </div><!-- /.language-switcher -->
{if $live_search_on==1}
<div class="site-search">Быстрый поиск{$apps_search_block}</div>
{/if}
                       </div><!-- /.navigation -->
                    </div><!-- /.navigation-wrapper -->
                </div><!-- /.container -->
            </div><!-- /.navigation -->
            
           
            <!-- CONTENT -->
            <div id="content">
 
 
{include file=$_layout}
{if $REQUEST_URI=='/'}
<div class="bottom-wrapper">
   <div class="bottom container">
       <div class="bottom-inner row">
           <div class="item span4">
               <div class="address decoration"></div>
               <h2><a>Как добавить свое объявление</a></h2>
               <p>Правила добавления объявлений</p>
                              <a href="{$estate_folder}/dobavit/" class="btn btn-primary">Подробнее</a>
           </div><!-- /.item -->
 
           <div class="item span4">
               <div class="gps decoration"></div>
               <h2><a>Помощь</a></h2>
               <p>Тут есть вся информация о работе сайта.</p>
               <a href="{$estate_folder}/help/" class="btn btn-primary">Подробнее</a>
           </div><!-- /.item -->
 
           <div class="item span4">
               <div class="key decoration"></div>
               <h2><a>Пользовательское соглашение</a></h2>
               <p>Основные термины и определения, использующиеся в настоящих Условиях пользования услугами сервера KWA.BY.</p>
               <a href="{$estate_folder}/pravila/" class="btn btn-primary">Подробнее</a>
           </div><!-- /.item -->
       </div><!-- /.bottom-inner -->
   </div><!-- /.bottom -->
</div><!-- /.bottom-wrapper -->    
{/if}
</div><!-- /#content -->
</div><!-- /#wrapper-inner -->
 
{include file="footer.tpl"}
</div><!-- /#wrapper -->
</div><!-- /#wrapper-outer -->
 
 
 
</body>
</html>
{/if}

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не main.tpl а main.php. Он лежит в подпапке main относительно того файла, контент которого вы запостили.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не main.tpl а main.php. Он лежит в подпапке main относительно того файла, контент которого вы запостили.

поставил этот код вместо телефона шаблон pure в верхнем правом углу toss.ru

{if $smarty.session.user_id eq ''}

<a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/add/">{$L_ADD_ADV}</a>

{else}

<a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/register/">{$L_ADD_ADV}</a>

{/if}

1) при авторизованном пользователе требует логин и пароль, при выходе в незарегестрированные остаётся простое добавление объявления- как исправить наоборот. 

2) цвет кнопки синий-как исправить под цвет сайта светло зелёный-салатовый

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

поставил этот код вместо телефона шаблон pure в верхнем правом углу toss.ru

{if $smarty.session.user_id eq ''}

<a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/add/">{$L_ADD_ADV}</a>

{else}

<a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/register/">{$L_ADD_ADV}</a>

{/if}

1) при авторизованном пользователе требует логин и пароль, при выходе в незарегестрированные остаётся простое добавление объявления- как исправить наоборот. 

2) цвет кнопки синий-как исправить под цвет сайта светло зелёный-салатовый

У вас условие звучит так:

Если неавторизован, то форма будет /add/, если авторизован то форма будет /register/ 

Если скажете как вам нужно, тогда можно порекомендовать как это сделать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У вас условие звучит так:

Если неавторизован, то форма будет /add/, если авторизован то форма будет /register/ 

Если скажете как вам нужно, тогда можно порекомендовать как это сделать.

если не авторизован при добавлении объявления чтобы была регистрация логин емейл номер телефона и пароль, если авторизован то как из личного кабинета, а то у меня выходит всё наоборот и в какое именно место вставить-хотелост бы вместо телефона 

{include file="header.tpl"}
<body>
 
<div id="top">
<div class="top clearfix">
<ul class="topmenu">
{section name=i loop=$right_menu}
<li><a href="{$right_menu.url}">{$right_menu.name}</a></li>
{/section}
</ul>
 
     <div class="float-right">
      {if $smarty.session.user_id eq ''}
      <a href="#" class="register" data-toggle="modal" data-target="#prettyLogin">{$L_LOGIN_BUTTON}</a>
{else}
{if isset($user_menu)}
{$user_menu} | 
{/if}
<a href="{$estate_folder}/logout/" class="">{$L_LOGOUT_BUTTON}</a>
{/if}
</div>
</div>
</div>
<div class="shadow">
<div id="wrapper">
<div id="header">
<div class="logo-social clearfix">
<a href="{$estate_folder}/" class="logo" style="width: 255px; height: 79px;"><!-- --></a>
<div class="phone">
8-952-776-0139
</div>
    </div>
    <div class="row-fluid">
    <div class="span12">
    {include file='mainmenu.tpl'}
    </div>
    </div>
</div>
{include file=$_layout}
</div>
</div>
    {include file='footer.tpl'}
{if $smarty.session.user_id eq ''}
        {include file="login_register.tpl.html"}
    {/if}
    
</body>
</html>

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

/template/frontend/realia/header_contact_add.tpl

{if $smarty.session.user_id eq ''}                                        <a class="btn btn-primary btn-large list-your-property arrow-right" data-toggle="modal" data-target="#prettyLogin">{$L_ADD_ADV}</a>{else}                                        <a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/account/data/?do=new">{$L_ADD_ADV}</a>{/if}

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Что-то я запутался в формах добавления объявления...

- при нажатии на кнопку "Добавить объявление" пользователь направляется на страницу добавления объявления за плату (если установлено в настройках);

- при клике на пункт верхнего меню Продать (/add), появляется та-же форма добавления объявления, только при любом раскладе - бесплатно. Как я понимаю, эта форма должна не размещать объявление на сайте а отправлять письмо в агентство, для работы с заявкой агентством, как и в случае с заявкой на аренду. Что надо поправить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Что-то я запутался в формах добавления объявления...

 

Есть два способа добавить объявления с фронта сайта:

1) гостевой - /add - форма доступная для любого пользователя, в том числе и для незарегистрированного. Размещает объявление в БД согласно настроек, привязывается к дефолтному пользователю, обладает доп. полями типа Ваше имя, ваш телефон для фиксации владельца

2) пользовательский - /account/data/?do=new - добавление из ЛК. Форма аналогичная админской с некоторыми поправками на права видимости и доступность отдельных элементов.

 

В некоторых условиях эти два функционала могут видоизменяться, как то:

а) первая глушится и добавить могут только авторизированные

б) перехватывается ссылка первой формы и, при авторизированном пользователе идет редирект на форму в ЛК

в) перехватывается первая ссылка и аналогично предыдущему, но пересылает на форму регистрации

Когда-то в базовом движке был даже принудительный перехват адреса первой формы и загрузка для авторизированного пользователя по ее адресу формы из ЛК. Почти как б) только без редиректа. Но не уверен, что этот рудимент сохранился в полной мере во всех шаблонах.

 

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

 

Скорее она могла бы, а не должна. Мне встречались случаи, когда ссылку /add глушили а вместо нее пользовались формой заявки, аналогичной Связаться с нами, только сформированной под забор первичных данных о недвижимости для последующего прозвона. Тогда эта форма обрабатывалась приложением Клиент и не мусорила в базе объявлений. Но тут уже на вкус и цвет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Константин, чтобы не мусорили в базе, я решил сделать размещение объявлений через кнопку "Добавить объявление" платной (для самоуверенных), а вот с пунктом меню /add (тоже самое но на халяву) надо бы определиться:

- либо отправлять данные заявки на почту админу (менеджеру), без размещения на сайте, для работы с заявкой;

- либо сделать то-же, что и по кнопке "Добавить объявление", чтобы было однообразно.

 

Сейчас у меня оба варианта работают через регистрацию...

 

Как можно решить этот вопрос?

 

По варианту /add, после добавления пользователем объявления, оно подвешивается на модерацию и перед публикацией можно изменить владельца объявления на себя, но со стороны пользователя здесь возникают непонятки, поскольку он рассчитывает именно на размещение объявления от себя и по настроенному функционалу - на халяву. Если, как вариант, переименовать "ПРОДАТЬ/СДАТЬ" в "Оставить заявку" ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Если вы хотите отсеять "случайных" пользователей, а всю работу по сбору данных об объявлении скинуть на менеджера-риелтора, который свяжется с заявляющим владельцем и, уточнив у него данные, внесет позицию в БД уже под свой аккаунт (что в принципе может повысить качество данных и не оставит объявление в подвешенном состоянии - то ли есть владелец, то ли он уже давно забил), тогда лучше скинуть это в заявки. Например вот тут http://an-pdm.ru/client/order/newclient/мы убрали вообще обработку /add а вместо нее разместили ссылку на форму создающую только заявку с первичными данными. При создании заявки администратор говорит менеджеру с кем связаться и уточнить данные и далее все манипуляции по внесению в БД выполняет именно риелтор.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Пожалуй оставлю как есть... У нас просто бывают варианты, когда самоуверенные пытаются сами продавать и для них платная кнопка "Добавить объявление" в самый раз. Но есть и те, кто сам заморачиваться не хочет и скидывает это на агентство, только обозначая цену и комиссию... тут логичнее и проще будет оставить вариант /add, чтобы все параметры заполнил сам собственник а мы, по результату модерации, только поменяем его данные на данные агента и активируем объявление.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

тем более, что контакты он там свои обычно в форме тоже оставляет и связаться и уточнить детали с владельцем лично не должно составить труда.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
хотелось бы разобраться с кнопкой добавления объявления, 

1)если человек не зарегестрирован и хочет добавить объявление чтоб вместе с заполнением объявления проходила регистрация автоматически с логином емейлом и паролем

2)если уже зарегестрирован то без повторной регистрации

сейчас стоит этот код и правильно ли это-phone



<div class="phone">

{if $smarty.session.user_id eq ''}

          <a class="btn btn-primary btn-large list-your-property arrow-right" data-toggle="modal" data-target="#prettyLogin">{$L_ADD_ADV}</a>

                {else}

          <a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/account/data/?do=new">{$L_ADD_ADV}</a>

                {/if}

</div>


Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1) кажется поддержку авторегистрации уже отключили. Т.е. можно добавить либо сознательно зарегистрировавшись или как гость, но уже без права контроля прямого за поданным объявлением

2) в прицнипе да. сечас логика в коде на пасте такая, что если не авторизирован пользователь, но ему выводится кнопка на авторизацию, а если авторизирован, то кнопка со ссылкой на добавление объявления и ЛК.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

мо

 

1) кажется поддержку авторегистрации уже отключили. Т.е. можно добавить либо сознательно зарегистрировавшись или как гость, но уже без права контроля прямого за поданным объявлением

2) в прицнипе да. сечас логика в коде на пасте такая, что если не авторизирован пользователь, но ему выводится кнопка на авторизацию, а если авторизирован, то кнопка со ссылкой на добавление объявления и ЛК.

может есть возможности как сделать так 

и второй вопрос -правильно ли обёрнут код кнопки добавления объявления в <div class="phone">

{if $smarty.session.user_id eq ''}
          <a class="btn btn-primary btn-large list-your-property arrow-right" data-toggle="modal" data-target="#prettyLogin">{$L_ADD_ADV}</a>
                {else}
          <a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/account/data/?do=new">{$L_ADD_ADV}</a>
                {/if}
</div>

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
{if intval($smarty.session.user_id)==0}<a class="btn btn-primary btn-large list-your-property arrow-right" data-toggle="modal" data-target="#prettyLogin">{$L_ADD_ADV}</a>{else}<a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/account/data/?do=new">{$L_ADD_ADV}</a>{/if}

Вот так будет нормально, что бы авторизированные отправлялись в кабинет, а гости а авторизацию.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

В самом общем случае:

{if $smarty.session.user_id eq ''}<a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/add/">{$L_ADD_ADV}</a>{else}<a class="btn btn-primary btn-large list-your-property arrow-right" href="{$estate_folder}/register/">{$L_ADD_ADV}</a>{/if}

если делать на кнопках.

 

 

Если копнуть глубже, то в main.php шаблона найти блок

if ( !$has_result && preg_match('/^add(\/?)$/', $REQUESTURIPATH) ) {...}

и в нем добавить условие

if ( !$has_result && preg_match('/^add(\/?)$/', $REQUESTURIPATH) ) {  if(0==(int)$_SESSION['user_id']){    header('location: '.SITEBILL_MAIN_URL.'/register/');    exit();  }  ... тут все что было}

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Есть такой блок в реалии 100%. Он есть в любом шаблоне.

Может быть.. но тут: /template/frontend/realia/main/main.php этот кусок кода я не могу найти. Вот полный код этого файла:

тут был код...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Элемент этого кода я таки нашел (проблема оказалась в том, что дефолтный редактор на хостинге, банально, не ищет данные, у него что не спроси, ответ - нету такого!) :) Нашел через Notepad++ и заменил, заработало!

 

Теперь вылезли другие проблемы: 

 

1) при нажатии гостя сайта, на кнопки: "Добавить объявление" или "Продать или сдать квартиру", его перекидывает на форму регистрации (http://www.arendaneva.ru/register/), где первым, обязательным пунктом идет "Выбрать группу", а выбора в этом пункте не предоставляется. Как это исправить, что бы пользователь мог выбрать как он регистрируется... как агент или как собственник.

 

2) зарегистрированный пользователь (в моем случае админ сайта), не имеет права разместить объявление, при нажатии на кнопку "Добавить объявление", переходим по ссылке http://www.arendaneva.ru/account/data/?do=new где нам написано: " Доступ запрещен!" А если нажать на верхнюю ссылку: "Продать или сдать квартиру", его перекидывает на форму регистрации (http://www.arendaneva.ru/register/), зачем не понятно, ведь я и так уже зарегистрирован и более того, являюсь админом сайта.

post-2677-0-47245000-1448994336_thumb.jp

post-2677-0-87044200-1448994675_thumb.jp

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1. Авторизируемся в админке и переходим сюда http://joxi.ru/DrlQoOZT44d05m

2. Узнаем id конкретной группы http://joxi.ru/Y2LXYqPSnnvQD2

3. Вписываем через запятую какие группы доступны при регистрации (2,3,5) http://joxi.ru/LmGEe3PiRRZJxA

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас