UMIhelp

Разработка дополнительного функционала => Custom макросы => Тема начата: muldy от 14 Сентября 2013, 19:11:14

Название: Проблемы при авторегистрации пользователя!
Отправлено: muldy от 14 Сентября 2013, 19:11:14
Здравствуйте!
Столкнулся с проблемой при использовании данного метода, "Регистрация пир оформлении заказа":
http://wiki.umisoft.ru/%D0%A0%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F_%D0%BF%D1%80%D0%B8_%D0%BE%D1%84%D0%BE%D1%80%D0%BC%D0%BB%D0%B5%D0%BD%D0%B8%D0%B8_%D0%B7%D0%B0%D0%BA%D0%B0%D0%B7%D0%B0_%D0%B2_%D0%BE%D0%B4%D0%B8%D0%BD_%D1%88%D0%B0%D0%B3
Все сделал по инструкции, но где использовать:
<xsl:if test="not($user_auth)">
     Зарегистрироваться на сайте <input name="need_reg" type="checkbox"/>
</xsl:if>
Так и не понял?
Если ставлю в в форму, то открывается пустая страница по адресу emarket/saveinfo/
А если не ставлю, то регистрация не срабатывает!
В общем запутался! Подскажите пжл в чем проблема?
Название: Re:Проблемы при авторегистрации пользователя!
Отправлено: admin от 15 Сентября 2013, 11:43:59
скорее всего у вас проблема (белый экран) при вставке кода
<xsl:if test="not($user_auth)">
     Зарегистрироваться на сайте <input name="need_reg" type="checkbox"/>
</xsl:if>
в том, что для его работы необходима глобальная переменная, о чем написано в статье, на wiki.umisoft.ru, ниже
Цитировать
В основной файл шаблона нужно добавить переменную user_auth:

<xsl:variable name="user_auth" select="/result/user/@status" />

там правда не написан более уточняющей информации, как найти этот файл, который для вас, скорее всего, лежит в ~/templates/demodizzy/xslt/default.xsl . Там много глобальных переменный, где-нибудь среди них напишите вышеприведенную.

и включите debug (режим отладки) в файле config.ini (см документацию (http://dev.docs.umi-cms.ru/shablony_i_makrosy/xslt-shablonizator_umi_cms/otladka_i_testirovanie_xslt-shablonov/) ) частенько, он помогает.
Название: Re:Проблемы при авторегистрации пользователя!
Отправлено: muldy от 15 Сентября 2013, 15:19:11
Переменную определял не помогает, к сожалению)
А вот debug не включал, редко использую поэтому не подумал об этом в общем попробую посмотрим, в чем проблема!
Название: Re:Проблемы при авторегистрации пользователя!
Отправлено: muldy от 15 Сентября 2013, 15:21:39
И кстати остался не решенный вопрос, вызов if использовать в самой форме заказа или нет?
Те
<form>
<xsl:if test="not($user_auth)">
     Зарегистрироваться на сайте <input name="need_reg" type="checkbox"/>
</xsl:if>
</form>
или
<form>
</form>
<xsl:if test="not($user_auth)">
     Зарегистрироваться на сайте <input name="need_reg" type="checkbox"/>
</xsl:if>
Название: Re:Проблемы при авторегистрации пользователя!
Отправлено: admin от 15 Сентября 2013, 15:31:02
конечно внутри, так как если if сработает, он вставит поле галочку, которая должна учитываться при отправке формы
Название: Re:Проблемы при авторегистрации пользователя!
Отправлено: muldy от 15 Сентября 2013, 15:33:47
Вот проблема и обнаруживается в этом, включил debug и ошибок не выдает, те все в порядке, но при отправке формы все равно идет на страницу emarket/saveinfo/
Не понятно почему так происходит!