parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

авторизация от Misha v.3

yet 31.08.2006 14:18

Пытаюсь разобраться с классом, не программист я - сочувствующий :)
Помогите, кому не лень, не могу понять пару вопросов...

1. Где, собственно, происходит назначение родительских прав, если постоянно рекурсивный вызов идет?
@getRightsToObject[object;thread;acl;is_owner][parent_rights;level_user_acl;level_group_acl;level_owner_acl;level_rights]
^if($object){
	^if($rights_hash.[$object.id]){
		^rem{ *** если права есть в хеше - забираем их *** }
		$result($rights_hash.[$object.id])
	}{
		^if($thread){
			^if(^object.irf.int(0)){
				^rem{ *** если у объекта irf не равен 0 - вычисляем права на родителя, вызывая себя рекурсивно *** }
				^rem{ *** если locate не находит очередного родителя - значит достаем права данные на root *** }
				$parent_rights(^getRightsToObject[^if(^thread.locate[id;$object.parent_id]){$thread.fields};$thread;$acl;$is_owner])
			}
2. Если я правильно понимаю, cмысл irf в ограничении прав, приходящих от родителей...
Можно ли на каких-нить элементарных примерах показать, в каких случаях это нужно?

... или пните в нужном направлении...