Changeset View
Changeset View
Standalone View
Standalone View
modules/custom/units/widgets/widget_eh.php
Show All 12 Lines | |||||
* @return void | * @return void | ||||
* @access protected | * @access protected | ||||
* @see kEventHandler::$permMapping | * @see kEventHandler::$permMapping | ||||
*/ | */ | ||||
protected function mapPermissions() | protected function mapPermissions() | ||||
{ | { | ||||
parent::mapPermissions(); | parent::mapPermissions(); | ||||
$permissions = Array ( | $permissions = array( | ||||
'OnItemBuild' => Array ('self' => true), | 'OnItemBuild' => array('self' => true), | ||||
'OnCustomEvent' => Array ('self' => true), | 'OnRecalculatePriorities' => array('self' => 'add|edit'), | ||||
'OnCustomEvent' => array('self' => true), | |||||
); | ); | ||||
$this->permMapping = array_merge($this->permMapping, $permissions); | $this->permMapping = array_merge($this->permMapping, $permissions); | ||||
} | } | ||||
/** | /** | ||||
* Checks user permission to execute given $event | * Checks user permission to execute given $event | ||||
* | * | ||||
Show All 10 Lines | |||||
if ( in_array($event->Name, $skip_permissions_check_events) ) { | if ( in_array($event->Name, $skip_permissions_check_events) ) { | ||||
return true; | return true; | ||||
} | } | ||||
return parent::CheckPermission($event); | return parent::CheckPermission($event); | ||||
} | } | ||||
/** | /** | ||||
* Define alternative event processing method names | |||||
* | |||||
* @return void | |||||
*/ | |||||
protected function mapEvents() | |||||
{ | |||||
parent::mapEvents(); | |||||
$events_map = array( | |||||
'OnMassMoveUp' => 'OnChangePriority', | |||||
'OnMassMoveDown' => 'OnChangePriority', | |||||
); | |||||
$this->eventMethods = array_merge($this->eventMethods, $events_map); | |||||
} | |||||
/** | |||||
* Processes OnMassMoveUp, OnMassMoveDown events | |||||
* | |||||
* @param kEvent $event Event. | |||||
* | |||||
* @return void | |||||
*/ | |||||
protected function OnChangePriority(kEvent $event) | |||||
{ | |||||
$this->Application->SetVar('priority_prefix', $event->getPrefixSpecial()); | |||||
$event->CallSubEvent('priority:' . $event->Name); | |||||
} | |||||
/** | |||||
* Completely recalculates priorities in current category | |||||
* | |||||
* @param kEvent $event Event. | |||||
* | |||||
* @return void | |||||
*/ | |||||
protected function OnRecalculatePriorities(kEvent $event) | |||||
{ | |||||
$this->Application->SetVar('priority_prefix', $event->getPrefixSpecial()); | |||||
$event->CallSubEvent('priority:' . $event->Name); | |||||
} | |||||
/** | |||||
* [HOOK] Connects to priority unit. | |||||
* | |||||
* @param kEvent $event Event. | |||||
* | |||||
* @return void | |||||
*/ | |||||
protected function OnModifyPrioritiesConfig(kEvent $event) | |||||
{ | |||||
$prefixes = $this->Application->getUnitOption($event->MasterEvent->Prefix, 'ProcessPrefixes'); | |||||
$prefixes[] = $event->Prefix; | |||||
$this->Application->setUnitOption($event->MasterEvent->Prefix, 'ProcessPrefixes', $prefixes); | |||||
} | |||||
/** | |||||
* Set custom query for the list | * Set custom query for the list | ||||
* | * | ||||
* @param kEvent $event | * @param kEvent $event | ||||
*/ | */ | ||||
function OnCustomEvent($event) | function OnCustomEvent($event) | ||||
{ | { | ||||
$object = $event->getObject(); | $object = $event->getObject(); | ||||
/* @var $object kDBList */ | /* @var $object kDBList */ | ||||
▲ Show 20 Lines • Show All 253 Lines • ▼ Show 20 Line(s) | |||||
if ( $widget_id && !$rewrite_processor->moreToParse() ) { | if ( $widget_id && !$rewrite_processor->moreToParse() ) { | ||||
// widget was last url part - use default template | // widget was last url part - use default template | ||||
$params['t'] = 'widgets/widget_detail'; | $params['t'] = 'widgets/widget_detail'; | ||||
} | } | ||||
return true; | return true; | ||||
} | } | ||||
} | } | ||||
No newline at end of file |