Skip to content

Commit d2488d2

Browse files
authored
Merge pull request #47 from keslo/master
Обновил описание if
2 parents ccbe786 + 6fb87b8 commit d2488d2

2 files changed

Lines changed: 49 additions & 15 deletions

File tree

ru/03_Компоненты/FormLister/060_Авторизация пользователей.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,18 @@
11
## Авторизация пользователей
22

3-
Контроллер Login позволяет авторизировать пользователей как по имени, так и по email. Кроме этого, можно дополнительно использовать плагин userHelper, который ведет учет количества логинов и времени последнего логина, а также реализует автологин и выход из учетной записи.
3+
Авторизация пользователей в `FormLister` осуществляется с использованием контроллера `Login`.
4+
5+
Авторизация может проходить по имени, email или другому полю из учетной записи. Поле задается в параметре `loginField`. Поле для авторизации должно быть **уникальным** для каждого веб-пользователя. Обычно для авторизации используются поля `username` или `email`.
6+
7+
Дополнительное использование плагина [userHelper](https://github.com/evolution-cms/evolution/blob/develop/assets/snippets/FormLister/snippet.FormLister.php) позволяет:
8+
9+
* вести учет количества логинов
10+
* опрееделить время последней авторизации
11+
* реализовать автологин или выход из учетной записи
12+
13+
Перед использованием плагина `userHelper` убедитесь что он не отключен:
14+
15+
![Не забудьте включить userHelper](https://habrastorage.org/web/dbc/1e2/abd/dbc1e2abd8664a548f4eca254187fb60.png)
416

517
## Параметры контроллера
618

ru/03_Компоненты/if/index.md

Lines changed: 36 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,47 @@
1-
###Сниппет для вывода информации по условию.
1+
# if
22

3-
Логика работы: Если условие is выполняется, то выводим содержимое параметра then, если не выполняется, то выводим содержимое параметра else.
3+
### Сниппет выводит информации по условию
44

5-
*Для работы с внешними плейсхолдерами (например: [+pages+] в Ditto) — вызывайте сниппет некешируемым: [!if? &is… !]*
5+
#### Как работает?
66

7+
Если при вызове `if` условие в параметре `is` выполняется, то выведется содержимое параметра `then`, если нет - содержимое параметра `else`.
78

8-
####Параметры сниппета
9+
Если необходимо ничего не выводить через `then` или `else`, то можно вовсе не задавать этот параметр.
10+
11+
#### Некэшируемый вызов
12+
13+
При работы с внешними плейсхолдерами необходимо вызывать сниппет некешируемым.
14+
15+
А внешний плейсхолдер это, например, `[+pages+]` из **Ditto**.
16+
17+
#### Пример вызова
18+
19+
```
20+
// пример вызова кэшируемого...
21+
[[if? &is=`[*parent*]:=:5` &then=`true` &else=`false`]]
22+
23+
// и некэшируемого if
24+
[!if? &is=`[*parent*]:=:5` &then=`true` &else=`false`!]
25+
```
26+
27+
28+
### Параметры сниппета
929

1030
Параметр|Описание|Возможные значения|По-умолчанию
1131
--------|--------|------------------|------------
12-
is|Обрабатываемое условие|что сравниваем:как сравниваем:с чем сравниваем|Пусто
13-
then|Содержимое для вывода, если условие верно|@tpl:chunkname или любой html-код с тегами MODX|Пусто
14-
else|Содержимое для вывода, если условие не верно||@tpl:chunkname или любой html-код с тегами MODX|Пусто
15-
math|включает выполнение математических функций в параметре is|on|Пусто
16-
separator|Разделитель в условии|например ~| :
32+
**is**|Обрабатываемое условие|что сравниваем:как сравниваем:с чем сравниваем|Пусто
33+
**then**|Содержимое для вывода, если условие верно|`@tpl:chunkname` или любой html-код с тегами MODX|Пусто
34+
**else**|Содержимое для вывода, если условие не верно|`@tpl:chunkname` или любой html-код с тегами MODX|Пусто
35+
**math**|Включает выполнение математических функций в параметре `is`|on|Пусто
36+
**separator**|Разделитель в условии|Например, `~`| `:`
37+
38+
Для того чтобы парсер не обрабатывал вариант и `then` и `else`, как это делает **PHx**, вызывайте: `&then='@TPL:chunkname'` — где `chunkname` - имя чанка.
1739

18-
Для того чтобы парсер не обрабатывал вариант и then и else, как это в PHx, вызывайте: *&then=\`@TPL:chunkname\`* — где chunkname - имя чанка, тогда будет выполнен только результатирующий чанк.
40+
В этом случае будет выполнен только результирующий чанк.
1941

2042
***
2143

22-
####Операторы используемые в условии
44+
### Операторы используемые в условии
2345

2446
**is, =** - равно
2547

@@ -45,12 +67,12 @@ separator|Разделитель в условии|например ~| :
4567

4668
***
4769

48-
####Выполнение математических функций:
70+
### Выполнение математических функций:
4971

5072
is=`[+id+]*10:=:30`
5173

5274

53-
####Примеры использования
75+
### Примеры использования
5476

5577
1) Выводить акцию нужно только в каталоге с ID = 5
5678
[[if? &is=`[*parent*]:=:5` &then=`@TPL:akcia`]]
@@ -75,4 +97,4 @@ separator|Разделитель в условии|например ~| :
7597
[[if? &is=`[+ditto_iteration+]*2:%:3` &then=`true` &else=`false` &math=`on`]]
7698

7799
8) Выводить значение математического выражения
78-
[[if? &is=`[+ditto_iteration+]*2` &math=`on`]]
100+
[[if? &is=`[+ditto_iteration+]*2` &math=`on`]]

0 commit comments

Comments
 (0)