Дмитрий Кондин

Скрыть контакты собственников

Recommended Posts

Неплохо было бы,  в целях безопасности шифровать и дешифровать с солью контакты и фио собственников.

Т.к. эти данные должны храниться согласно закона о персональных данных.

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


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

Неплохо было бы,  в целях безопасности шифровать и дешифровать с солью контакты и фио собственников.

Т.к. эти данные должны храниться согласно закона о персональных данных.

Подумаем над таким вариантом, но пока лучшее решение - придумать пароль посложнее на админа и риэлторов.

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


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

Собственник при добавлении объявлений указывает свои контакты, соответственно если они доступны для ввода, то видны и в форме объявления.

 

1. Как сделать так, чтоб контакты добавленные незалогиненым пользователем были видны только залогиненым....

2. Контакты по объявлениям поданным залогиненным пользователем были видны всем.

3. При просмотре объявления незалогиненным пользователем вместо контакта собственника (см. п.1) подставлялся телефон скажем агента.

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


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

В /template/frontend/agency/realty_view.tpl

Находим блок

<div class="cdetails">    <span class="ffio">    {if isset($data.fio.value) && $data.fio.value!=''}    	{$data.fio.value}    {else}    	{$user_data.fio.value}    {/if}    </span><br>             {if isset($data.phone.value) && $data.phone.value!=''}    	<span>т. {$data.phone.value}</span><br>    {elseif $user_data.phone.value != ''}    	 <span>т. {$user_data.phone.value}</span><br>    {/if}         {if isset($data.email.value) && $data.email.value!=''}    	<span><a href="mailto:{$data.email.value}">{$data.email.value}</a></span><br>    {elseif $user_data.email.value != ''}    	 <span><a href="mailto:{$user_data.email.value}">{$user_data.email.value}</a></span><br>    {/if}            {if $user_data.mobile.value != ''}        <span>т.м. {$user_data.mobile.value}</span></br>    {/if}        {if $user_data.icq.value != ''}        <span>ICQ: {$user_data.icq.value}</span><br>    {/if}</div>

Меняем на

{if $smarty.session.user_id eq ''}<div class="cdetails">Тут выводим инфу для незалогиненных</div>{else}<div class="cdetails">    <span class="ffio">    {if isset($data.fio.value) && $data.fio.value!=''}    	{$data.fio.value}    {else}    	{$user_data.fio.value}    {/if}    </span><br>             {if isset($data.phone.value) && $data.phone.value!=''}    	<span>т. {$data.phone.value}</span><br>    {elseif $user_data.phone.value != ''}    	 <span>т. {$user_data.phone.value}</span><br>    {/if}         {if isset($data.email.value) && $data.email.value!=''}    	<span><a href="mailto:{$data.email.value}">{$data.email.value}</a></span><br>    {elseif $user_data.email.value != ''}    	 <span><a href="mailto:{$user_data.email.value}">{$user_data.email.value}</a></span><br>    {/if}            {if $user_data.mobile.value != ''}        <span>т.м. {$user_data.mobile.value}</span></br>    {/if}        {if $user_data.icq.value != ''}        <span>ICQ: {$user_data.icq.value}</span><br>    {/if}</div>{/if}

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


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

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

 

А как сделать чтобы контакты по объявлениям поданным залогиненным пользователем были видны всем?

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


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

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

 

А как сделать чтобы контакты по объявлениям поданным залогиненным пользователем были видны всем?

{if $smarty.session.user_id eq ''}<div class="cdetails">    <span class="ffio">    	{$user_data.fio.value}    </span><br>            	 <span>т. {$user_data.phone.value}</span><br>    	 <span><a href="mailto:{$user_data.email.value}">{$user_data.email.value}</a></span><br>            {if $user_data.mobile.value != ''}        <span>т.м. {$user_data.mobile.value}</span></br>    {/if}        {if $user_data.icq.value != ''}        <span>ICQ: {$user_data.icq.value}</span><br>    {/if}</div>{else}<div class="cdetails">    <span class="ffio">    {if isset($data.fio.value) && $data.fio.value!=''}    	{$data.fio.value}    {else}    	{$user_data.fio.value}    {/if}    </span><br>             {if isset($data.phone.value) && $data.phone.value!=''}    	<span>т. {$data.phone.value}</span><br>    {elseif $user_data.phone.value != ''}    	 <span>т. {$user_data.phone.value}</span><br>    {/if}         {if isset($data.email.value) && $data.email.value!=''}    	<span><a href="mailto:{$data.email.value}">{$data.email.value}</a></span><br>    {elseif $user_data.email.value != ''}    	 <span><a href="mailto:{$user_data.email.value}">{$user_data.email.value}</a></span><br>    {/if}            {if $user_data.mobile.value != ''}        <span>т.м. {$user_data.mobile.value}</span></br>    {/if}        {if $user_data.icq.value != ''}        <span>ICQ: {$user_data.icq.value}</span><br>    {/if}</div>{/if}

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


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

Наоборот получилось...  :)

Если объявление подал незалогиненный пользователь - все контакты видны....

Если объявление подал залогиненный - телефона не видно, имя видно и адрес почты...

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


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

{$user_data.phone.value} - это данные объявления из профиля пользователя, который подавал его из ЛК (залогинен).

Если все так замудрено, то лучше на пальцах с реальным примером Васи Пупкина распишите как вы это видите.

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


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

Примерно так...

1. Вася (обычный пользователь - продавец своей квартиры, не залогиненый, так как регистрация закрыта) подает объявление со своими контактами конечно..

 

2. Он же Вася, или другой такой же Петя заходит на сайт и видит это обьявление без контактов Васи, но с контактами агентства....

    вот так: http://www.adres-28.ru/prodaja-kvartir/3-komn/realty3

 

3. Риэлтор Олег (залогиненный, или другой залогиненый пользователь) подает объявление и ставит конечно свои контактные данные...

 

4. Вася или Петя заходит на сайт, открывает объявление поданное риэлтором Олегом и видит контактные данные риэлтора Олега...

     вот так: 13.jpg

 

5. Риэлтор Олег залогиненный конечно, находит объявление Васи и видит его контактные данные....

post-2612-0-20293100-1426764637_thumb.jp

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


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

Хм, вообще последний предложенный мной вариант именно все ваши условия покрывает. 

Какое из них не выполняется?

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


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

Он работает так:

1. Вася (обычный пользователь - продавец своей квартиры, не залогиненый, так как регистрация закрыта) подает объявление со своими контактами конечно..

 

2. Он же Вася, или другой такой же Петя заходит на сайт и видит это обьявление с контактами....

 

3. Риэлтор Олег (залогиненный, или другой залогиненый пользователь) подает объявление и ставит конечно свои контактные данные...

 

4. Вася или Петя заходит на сайт, открывает объявление поданное риэлтором Олегом и видит контактные данные риэлтора Олега...

 

5. Риэлтор Олег залогиненный конечно, находит объявление Васи и не видит  его номера телефона....

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


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

Ок, тогда вот такой вариант предлагаю вам, я сейчас опишу основные условия

вот это {if $smarty.session.user_id eq ''} - если пользователь не залогинен

вот так {$user_data.phone.value} получаем телефон из профиля (зарегистрированного) пользователя и его объявления

вот так {$data.phone.value} мы получаем телефон из объявления, которое подано без регистрации.

 

А вы уже попробуйте самостоятельно реализовать свою логику с помощью if-else операторов в smarty

http://www.smarty.net/docsv2/ru/language.function.if.tpl

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


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

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

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

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

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

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

Войти

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

Войти сейчас