Index: branches/5.2.x/core/units/languages/languages_event_handler.php =================================================================== diff -u -N -r14968 -r14989 --- branches/5.2.x/core/units/languages/languages_event_handler.php (.../languages_event_handler.php) (revision 14968) +++ branches/5.2.x/core/units/languages/languages_event_handler.php (.../languages_event_handler.php) (revision 14989) @@ -1,6 +1,6 @@ Array('self' => true), - 'OnSetPrimary' => Array('self' => 'advanced:set_primary|add|edit'), - 'OnImportLanguage' => Array('self' => 'advanced:import'), - 'OnExportLanguage' => Array('self' => 'advanced:export'), - 'OnExportProgress' => Array('self' => 'advanced:export'), + + $permissions = Array ( + 'OnChangeLanguage' => Array ('self' => true), + 'OnSetPrimary' => Array ('self' => 'advanced:set_primary|add|edit'), + 'OnImportLanguage' => Array ('self' => 'advanced:import'), + 'OnExportLanguage' => Array ('self' => 'advanced:export'), + 'OnExportProgress' => Array ('self' => 'advanced:export'), 'OnReflectMultiLingualFields' => Array ('self' => 'view'), 'OnSynchronizeLanguages' => Array ('self' => 'edit'), ); @@ -43,9 +47,9 @@ * @return bool * @access public */ - public function CheckPermission(&$event) + public function CheckPermission(kEvent &$event) { - if ($event->Name == 'OnItemBuild') { + if ( $event->Name == 'OnItemBuild' ) { // check permission without using $event->getSection(), // so first cache rebuild won't lead to "ldefault_Name" field being used return true; @@ -58,10 +62,12 @@ * Allows to get primary language object * * @param kEvent $event + * @return int + * @access public */ - function getPassedID(&$event) + public function getPassedID(kEvent &$event) { - if ($event->Special == 'primary') { + if ( $event->Special == 'primary' ) { return $this->Application->GetDefaultLanguageId(); } @@ -236,17 +242,19 @@ * @access protected * @see kDBEventHandler::OnListBuild() */ - protected function SetCustomQuery(&$event) + protected function SetCustomQuery(kEvent &$event) { + parent::SetCustomQuery($event); + $object =& $event->getObject(); /* @var $object kDBList */ - if (in_array($event->Special, Array ('enabled', 'selected', 'available'))) { + if ( in_array($event->Special, Array ('enabled', 'selected', 'available')) ) { $object->addFilter('enabled_filter', '%1$s.Enabled = ' . STATUS_ACTIVE); } // site domain language picker - if ($event->Special == 'selected' || $event->Special == 'available') { + if ( $event->Special == 'selected' || $event->Special == 'available' ) { $edit_picker_helper =& $this->Application->recallObject('EditPickerHelper'); /* @var $edit_picker_helper EditPickerHelper */ @@ -256,7 +264,7 @@ // apply domain-based language filtering $languages = $this->Application->siteDomainField('Languages'); - if (strlen($languages)) { + if ( strlen($languages) ) { $languages = explode('|', substr($languages, 1, -1)); $object->addFilter('domain_filter', '%1$s.LanguageId IN (' . implode(',', $languages) . ')'); } @@ -552,8 +560,10 @@ * Returns to previous template in opener stack * * @param kEvent $event + * @return void + * @access protected */ - function OnGoBack(&$event) + protected function OnGoBack(kEvent &$event) { $event->SetRedirectParam('opener', 'u'); }