Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   как определить кто сделал последнее изменение? (http://forum.typo3.ru/showthread.php?t=1776)

Дылгеров Ц.В. 05.09.2006 06:52

как определить кто сделал последнее изменение?
 
Чтобы определить, когда произошло последнее изменение, можно просто использовать page:lastUpdated или page:SYS_LASTCHANGED.

А как определить кто это сделал? Какие поля из таблиц tt_content или pages содержат id последнего пользователя? cruser_id - создатель, не подойдет, perms_userid - владелец потянет, но хотелось бы точно знать кто редактировал страницу. Можно конечно выдавать группу-владельца.

Писать скрипт, который будет искать в sys_log? Похоже так придется и сделать.

void 05.09.2006 12:15

http://typo3.org/extensions/reposito...onsible/1.0.3/
не подойдёт?

Дылгеров Ц.В. 05.09.2006 12:21

Срабатывает конструкция
temp.rew = COA
temp.rew {
10 = TEXT
10.data = DB:be_groups:{$begroupsuid}:title
}
, где {$begroupsuid} - код группы
Встает вопрос как внедрить в эту строку page: perms_groupid?

Вариант с применением RECORDS не проходит:
temp.wer = RECORDS
temp.wer {
tables=be_groups
source.data=page: perms_groupid
# source=2
conf.be_groups=TEXT
conf.be_groups.field=title
}

Вырезка из TSREF в разделе RECORDS:
Цитата:

tables - List of accepted tables. If any items in the ".source"-list is not prepended with a tablename, the first table in this list is assumed to be the table for such records.
Also tablenames configured in .conf is allowed.
Получается be_groups не прописан в .conf?

Вариант с CONTENT и select тоже не пройдет:
temp.memberlist = CONTENT
temp.memberlist{
table = be_users
select {
orderBy = username
}
renderObj=COA
renderObj{
10=TEXT
10.field=username
}
}
, так как:
Цитата:

The table, the content should come from.
In standard-configurations this will be "tt_content"
NOTE: Only tables allowed are “pages” or tables prefixed with one of these: “tt_”, “tx_”, “ttx_”, “fe_”, “user_”

Дылгеров Ц.В. 05.09.2006 12:58

Цитата:

Сообщение от void

Спасибо за ссылку - уже смотрю

Дылгеров Ц.В. 06.09.2006 11:55

посмотрел - как раз то что надо. выдает дату последнего изменения и имя пользователя-владельца страницы.
жаль конечно что информация будет неверна в том случае если кто-то другой из группы-владельца страницы изменил запись - ведь отображаться то будет владелец.
переделаю экстеншн для отображения группы-владельца.

И все-таки как это сделать?:
temp.rew = COA
temp.rew {
10 = TEXT
10.data = DB:be_groups:{$begroupsuid}:title
}
, где {$begroupsuid} - код группы
Встает вопрос как внедрить в эту строку page: perms_groupid?

BestCat 11.09.2006 07:09

ррешили проблему?

Дылгеров Ц.В. 12.09.2006 05:00

Вложений: 1
Цитата:

Сообщение от BestCat
ррешили проблему?

Решил так как описано в пред посте
добавил в чужой экстеншн свои переменные конфигурирования или их новые значения:
mode=3, show_group_description, default_group

для выдачи группы - mode=3
для показа поля description из be_groups, а не имени группы - show_group_description (boolean)
если поле description пусто чтоб выдавало что-то - default_group (string)

Вот конфигурация которая выдает группу, вместо имени пользователя
plugin.tx_responsible_pi1{
mode=3
show_group_description=1
date_format= %d.%m.%y
lastmodified_prefix=Дата последнего изменения: 
responsible_prefix=Группа редакторов: 
separator=<br/>
stdWrap_all.wrap=<br/><div style="width:300px">|</div>
default_group=Администраторы сайта
}
Не забудьте добавить в контент plugin
Например page.100 < plugin.tx_responsible_pi1

Насчет
Цитата:

И все-таки как это сделать?:
temp.rew = COA
temp.rew {
10 = TEXT
10.data = DB:be_groups:{$begroupsuid}:title
}
, где {$begroupsuid} - код группы
Встает вопрос как внедрить в эту строку page: perms_groupid?
не знаю - я не гуру


Часовой пояс GMT +4, время: 03:47.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot