Покупка без регистрации в коммерческой версии движка
antracit
16 декабря 2012 г.
Здравствуйте. Подскажите как можно реализовать покупку без регистрации, при включенном модуле "Пользователи сайта". Есть задача оставить форму регистрации для тех кто хочет регаться, и сделать покупку без регистрации (подобно тому как это реализовано на "халяве" - для тех, кто просто хочет купить товар. Не каждый хочет регистрироваться, придумывать пароли, логин, подтверждать мыло и прочее...
hostcms
Модератор
16 декабря 2012 г.
Для этого есть быстрая регистрация, когда ничего подтверждать не нужно.
antracit
16 декабря 2012 г.
Меню регистрации в корзине выглядит так:
Кликаем "заполнить форму регистрации" права, (ниже заголовка "быстрая регистрация"
Попадаем сюда и заполняем форму
Пытаемся авторизоваться получаем При этом xsl "МагазинБыстраяРегистрация" имеет видЦитата:
Кликаем "заполнить форму регистрации" права, (ниже заголовка "быстрая регистрация"
Попадаем сюда и заполняем форму
Пытаемся авторизоваться получаем При этом xsl "МагазинБыстраяРегистрация" имеет видЦитата:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:hostcms="http://www.hostcms.ru/"
exclude-result-prefixes="hostcms">
<xsl:output xmlns="http://www.w3.org/TR/xhtml1/strict" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" encoding="utf-8" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml"/>
<xsl:template match="/document">
<table border="0" cellspacing="0" cellpadding="0" style="margin-top: 30px;">
<tr>
<xsl:if test="ПоказатьАвторизацию = 'true'">
<td style="vertical-align: top;" width="50%">
<form action="./" style="padding-right: 50px;" name="address" method="POST">
<p class="title">Авторизация</p>
<xsl:choose>
<xsl:when test="error != ''">
<!-- Определяем текст ошибки по ее коду -->
<xsl:variable name="error_text">
<xsl:choose>
<xsl:when test="error = -5">Вы не активировали свой аккаунт. По указанному адресу отправлено письмо с инструкцией об активации. После активации Вы можете авторизироваться.</xsl:when>
<xsl:when test="error = -6">Неверный логин или пароль.</xsl:when>
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<p style="font-weight: ;" class="red">
<xsl:value-of select="$error_text"/>
</p>
</xsl:when>
<xsl:otherwise>
<p style="color: #707070">Если Вы зарегистрированы в нашем магазине, введите логин и пароль в соответствующие поля.</p>
</xsl:otherwise>
</xsl:choose>
<table>
<tr>
<td>
<div>Пользователь:</div>
<input type="text" size="25" name="login" class="large_input" value="{site_users_login}"/>
</td>
</tr>
<tr>
<td>
<div>Пароль:</div>
<input type="password" size="25" class="large_input" name="password" value=""/>
</td>
</tr>
</table>
<p>
Забыли пароль? Мы можем его <a href="/users/restore_password/">восстановить</a>.
</p>
<div class="gray_button">
<div>
<input name="step1_1" value="Продолжить оформление заказа" type="submit"/>
</div>
</div>
</form>
</td>
</xsl:if>
<td style="vertical-align: top;" width="50%">
<div id="first" style="display: block;">
<p class="title">Быстрая регистрация</p>
<b>Какие преимущества дает регистрация на сайте?</b>
<br/>
<ul style="width: 270px">
<li>Вы получаете возможность оформлять заказы прямо на сайте.</li>
<li>Вы будете получать информацию о специальных акциях магазина, доступных только зарегистрированным пользователям.</li>
</ul>
<xsl:if test="error != ''">
<xsl:variable name="error_text">
<xsl:choose>
<xsl:when test="error = -1">Введен некорректный электронный адрес</xsl:when>
<xsl:when test="error = -2">Пользователь с указанным электронным адресом зарегистрирован ранее</xsl:when>
<xsl:when test="error = -3">Пользователь с указанным логином зарегистрирован ранее</xsl:when>
<xsl:when test="error = -4">Заполните, пожалуйста, все обязательные параметры</xsl:when>
<xsl:when test="error = -7">Введено неверное подтверждение пароля!</xsl:when>
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<p style="color:#800000; font-weight: bold;">
<xsl:value-of select="$error_text"/>
</p>
</xsl:if>
<p>
<a href="/users/registration/" onClick="HideShow('first', 'second'); return false;">Заполнить форму регистрации →</a>
</p>
</div>
<div id="second" style="display: none;">
<p class="title">Регистрация нового клиента</p>
<p style="color: #707070">
Поля, отмеченные <span class="red_star" style="position: relative; top: 6px;"> *</span>, обязательны для заполнения.
</p>
<form name="registration" method="POST">
<table>
<tr>
<td>Логин:</td>
<td>
<input type="text" size="30" name="site_users_login" value="{site_users_login}"/>
</td>
<td class="red_star"> *</td>
</tr>
<tr>
<td>Пароль:</td>
<td>
<input type="password" size="30" name="site_users_password" value=""/>
</td>
<td class="red_star"> *</td>
</tr>
<tr>
<td>Повтор пароля:</td>
<td>
<input type="password" size="30" name="site_users_password_retry" value=""/>
</td>
<td class="red_star"> *</td>
</tr>
<tr>
<td>E-mail:</td>
<td>
<input type="text" size="30" name="site_users_email" value="{site_users_email}"/>
</td>
<td class="red_star"> *</td>
</tr>
<tr>
<td>Фамилия:</td>
<td>
<input type="text" size="30" name="site_users_surname" value="{site_users_surname}"/>
</td>
</tr>
<tr>
<td>Имя:</td>
<td>
<input type="text" size="30" name="site_users_name" value="{site_users_name}"/>
</td>
</tr>
<tr>
<td>Телефон:</td>
<td>
<input name="site_users_phone" type="text" value="{site_users_phone}" size="30"/>
</td>
</tr>
</table>
<div class="gray_button">
<div>
<input name="step1_2" value="Продолжить оформление заказа" type="submit"/>
</div>
</div>
</form>
</div>
</td>
</tr>
</table>
</xsl:template>
</xsl:stylesheet>
- не похоже на то что видим на скрине, хотя в структуре сайта, именно этот шаблон выбран для быстрой регистрации... Где что не так?<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:hostcms="http://www.hostcms.ru/"
exclude-result-prefixes="hostcms">
<xsl:output xmlns="http://www.w3.org/TR/xhtml1/strict" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" encoding="utf-8" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml"/>
<xsl:template match="/document">
<table border="0" cellspacing="0" cellpadding="0" style="margin-top: 30px;">
<tr>
<xsl:if test="ПоказатьАвторизацию = 'true'">
<td style="vertical-align: top;" width="50%">
<form action="./" style="padding-right: 50px;" name="address" method="POST">
<p class="title">Авторизация</p>
<xsl:choose>
<xsl:when test="error != ''">
<!-- Определяем текст ошибки по ее коду -->
<xsl:variable name="error_text">
<xsl:choose>
<xsl:when test="error = -5">Вы не активировали свой аккаунт. По указанному адресу отправлено письмо с инструкцией об активации. После активации Вы можете авторизироваться.</xsl:when>
<xsl:when test="error = -6">Неверный логин или пароль.</xsl:when>
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<p style="font-weight: ;" class="red">
<xsl:value-of select="$error_text"/>
</p>
</xsl:when>
<xsl:otherwise>
<p style="color: #707070">Если Вы зарегистрированы в нашем магазине, введите логин и пароль в соответствующие поля.</p>
</xsl:otherwise>
</xsl:choose>
<table>
<tr>
<td>
<div>Пользователь:</div>
<input type="text" size="25" name="login" class="large_input" value="{site_users_login}"/>
</td>
</tr>
<tr>
<td>
<div>Пароль:</div>
<input type="password" size="25" class="large_input" name="password" value=""/>
</td>
</tr>
</table>
<p>
Забыли пароль? Мы можем его <a href="/users/restore_password/">восстановить</a>.
</p>
<div class="gray_button">
<div>
<input name="step1_1" value="Продолжить оформление заказа" type="submit"/>
</div>
</div>
</form>
</td>
</xsl:if>
<td style="vertical-align: top;" width="50%">
<div id="first" style="display: block;">
<p class="title">Быстрая регистрация</p>
<b>Какие преимущества дает регистрация на сайте?</b>
<br/>
<ul style="width: 270px">
<li>Вы получаете возможность оформлять заказы прямо на сайте.</li>
<li>Вы будете получать информацию о специальных акциях магазина, доступных только зарегистрированным пользователям.</li>
</ul>
<xsl:if test="error != ''">
<xsl:variable name="error_text">
<xsl:choose>
<xsl:when test="error = -1">Введен некорректный электронный адрес</xsl:when>
<xsl:when test="error = -2">Пользователь с указанным электронным адресом зарегистрирован ранее</xsl:when>
<xsl:when test="error = -3">Пользователь с указанным логином зарегистрирован ранее</xsl:when>
<xsl:when test="error = -4">Заполните, пожалуйста, все обязательные параметры</xsl:when>
<xsl:when test="error = -7">Введено неверное подтверждение пароля!</xsl:when>
<xsl:otherwise></xsl:otherwise>
</xsl:choose>
</xsl:variable>
<p style="color:#800000; font-weight: bold;">
<xsl:value-of select="$error_text"/>
</p>
</xsl:if>
<p>
<a href="/users/registration/" onClick="HideShow('first', 'second'); return false;">Заполнить форму регистрации →</a>
</p>
</div>
<div id="second" style="display: none;">
<p class="title">Регистрация нового клиента</p>
<p style="color: #707070">
Поля, отмеченные <span class="red_star" style="position: relative; top: 6px;"> *</span>, обязательны для заполнения.
</p>
<form name="registration" method="POST">
<table>
<tr>
<td>Логин:</td>
<td>
<input type="text" size="30" name="site_users_login" value="{site_users_login}"/>
</td>
<td class="red_star"> *</td>
</tr>
<tr>
<td>Пароль:</td>
<td>
<input type="password" size="30" name="site_users_password" value=""/>
</td>
<td class="red_star"> *</td>
</tr>
<tr>
<td>Повтор пароля:</td>
<td>
<input type="password" size="30" name="site_users_password_retry" value=""/>
</td>
<td class="red_star"> *</td>
</tr>
<tr>
<td>E-mail:</td>
<td>
<input type="text" size="30" name="site_users_email" value="{site_users_email}"/>
</td>
<td class="red_star"> *</td>
</tr>
<tr>
<td>Фамилия:</td>
<td>
<input type="text" size="30" name="site_users_surname" value="{site_users_surname}"/>
</td>
</tr>
<tr>
<td>Имя:</td>
<td>
<input type="text" size="30" name="site_users_name" value="{site_users_name}"/>
</td>
</tr>
<tr>
<td>Телефон:</td>
<td>
<input name="site_users_phone" type="text" value="{site_users_phone}" size="30"/>
</td>
</tr>
</table>
<div class="gray_button">
<div>
<input name="step1_2" value="Продолжить оформление заказа" type="submit"/>
</div>
</div>
</form>
</div>
</td>
</tr>
</table>
</xsl:template>
</xsl:stylesheet>
antracit
16 декабря 2012 г.
Вобщем, сравнил в xsl, по форме регистрации видно что это полная обычная форма регистрации ее шаблон "РегистрацияПользователя" его мы и видим на скрине. А как вызвать упрощенную регистрацию?
Авторизация