Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
11.09.2007, 18:23 | #1 |
Новенький
Регистрация: 04.07.2007
Сообщений: 17
|
Вложенные условия
Здравствуйте. При изучении TypoScript возник такой вопрос:
Допускает ли TypoScript создание вложенных условий такого вида: [Условие 1] [Условие 2] Действия 2.1 [else] Действия 2.2 [end] [else] Действия 1 [end] Может, есть какая-нибудь специальная конструкция, отличающаяся от моих фантазий? Спасибо. |
11.09.2007, 18:58 | #3 |
Новенький
Регистрация: 04.07.2007
Сообщений: 17
|
CASE здесь вряд ли пойдет, потому что имеется в виду выбор не среди нескольких значений одного свойства.
Нужно, чтобы в зависимости от значения одного свойства происходил дальнейший выбор действия уже по значению другого свойства. Как реализовать такой выбор? |
11.09.2007, 19:10 | #4 |
Senior Member
|
Вложенные CASE-ы.
Вообще, приведите здесь условия которые необходимо реализовать. |
12.09.2007, 14:05 | #5 |
Новенький
Регистрация: 04.07.2007
Сообщений: 17
|
Вложенные CASE-ы вполне подойдут. Только как проверить не совпадение конкретного значения, а просто наличие хоть какого-нибудь?
Не так ведь: stuff = CASE ... stuff.* = TEXT stuff.* { .... } А необходимость такая: в зависимости от заполненности одного поля учетной записи пользователя выводить либо не выводить дополнительные его атрибуты. |
13.09.2007, 18:17 | #7 |
Новенький
Регистрация: 04.07.2007
Сообщений: 17
|
Если я не ошибаюсь(что весьма вероятно), этот пример обязательно выведет username, а после авторизации - обязательно выведет email.
Если опираться на Ваш пример, то мне нужна такая последовательность: 1. Выводится общая часть 2. Пользователь авторизуется 3. Проверяется email 3.1. Если email не пуст, выводится username 3.2. Иначе вывести name Если для этого подойдет приведенная конструкция, то как ей воспользоваться? PS: Основной вопрос сейчас - как записать условие "если атрибут имеет хотя бы какое-то значение(не пуст)"? Последний раз редактировалось Maria Rykalina; 13.09.2007 в 19:08 |
14.09.2007, 14:40 | #8 |
Senior Member
|
Email будет выведен только в том случае если он не пуст.
Для этого служит required=1 |
14.09.2007, 15:22 | #9 |
Новенький
Регистрация: 04.07.2007
Сообщений: 17
|
Наверное, я опять чего-то не понимаю, но:
Как вывести атрибут, отличный от email, если email все же пуст? |
14.09.2007, 18:25 | #10 | |
Senior Member
|
Цитата:
Код:
10 = TEXT 10.value = Привет, {TSFE:fe_user|user|username} 10.insertData = 1 10.override { data = TSFE:fe_user|user|email required = 1 wrap = Твой email: | } |
|