Changeset View
Changeset View
Standalone View
Standalone View
branches/5.2.x/core/units/phrases/phrases_event_handler.php
Show First 20 Lines • Show All 41 Lines • ▼ Show 20 Line(s) | |||||
* @param kEvent $event | * @param kEvent $event | ||||
* @return void | * @return void | ||||
* @access protected | * @access protected | ||||
*/ | */ | ||||
protected function SetCustomQuery(kEvent $event) | protected function SetCustomQuery(kEvent $event) | ||||
{ | { | ||||
parent::SetCustomQuery($event); | parent::SetCustomQuery($event); | ||||
/** @var kDBList $object */ | |||||
$object = $event->getObject(); | $object = $event->getObject(); | ||||
/* @var $object kDBList */ | |||||
$object->addFilter('module_filter', '%1$s.Module IN (SELECT Name FROM ' . TABLE_PREFIX . 'Modules WHERE Loaded = 1)'); | $object->addFilter('module_filter', '%1$s.Module IN (SELECT Name FROM ' . TABLE_PREFIX . 'Modules WHERE Loaded = 1)'); | ||||
} | } | ||||
/** | /** | ||||
* Apply some special processing to object being | * Apply some special processing to object being | ||||
* recalled before using it in other events that | * recalled before using it in other events that | ||||
* call prepareObject | * call prepareObject | ||||
▲ Show 20 Lines • Show All 85 Lines • ▼ Show 20 Line(s) | |||||
* @param kEvent $event | * @param kEvent $event | ||||
* @return void | * @return void | ||||
* @access protected | * @access protected | ||||
*/ | */ | ||||
protected function OnPreCreate(kEvent $event) | protected function OnPreCreate(kEvent $event) | ||||
{ | { | ||||
parent::OnPreCreate($event); | parent::OnPreCreate($event); | ||||
/** @var kDBItem $object */ | |||||
$object = $event->getObject(); | $object = $event->getObject(); | ||||
/* @var $object kDBItem */ | |||||
$this->_setPhraseModule($object); | $this->_setPhraseModule($object); | ||||
} | } | ||||
/** | /** | ||||
* Forces new label in case if issued from get link | * Forces new label in case if issued from get link | ||||
* | * | ||||
* @param kEvent $event | * @param kEvent $event | ||||
* @return void | * @return void | ||||
* @access protected | * @access protected | ||||
*/ | */ | ||||
protected function OnNew(kEvent $event) | protected function OnNew(kEvent $event) | ||||
{ | { | ||||
parent::OnNew($event); | parent::OnNew($event); | ||||
/** @var kDBItem $object */ | |||||
$object = $event->getObject(); | $object = $event->getObject(); | ||||
/* @var $object kDBItem */ | |||||
$label = $this->Application->GetVar($event->getPrefixSpecial() . '_label'); | $label = $this->Application->GetVar($event->getPrefixSpecial() . '_label'); | ||||
if ( $label ) { | if ( $label ) { | ||||
// phrase is created in language, used to display phrases | // phrase is created in language, used to display phrases | ||||
$object->SetDBField('Phrase', $label); | $object->SetDBField('Phrase', $label); | ||||
$object->SetDBField('PhraseType', $this->_getPhraseType($label)); // to show on form | $object->SetDBField('PhraseType', $this->_getPhraseType($label)); // to show on form | ||||
$object->SetDBField('PrimaryTranslation', $this->_getPrimaryTranslation($label)); | $object->SetDBField('PrimaryTranslation', $this->_getPrimaryTranslation($label)); | ||||
▲ Show 20 Lines • Show All 50 Lines • ▼ Show 20 Line(s) | |||||
* | * | ||||
* @param kEvent $event | * @param kEvent $event | ||||
* @return void | * @return void | ||||
* @access protected | * @access protected | ||||
*/ | */ | ||||
protected function OnCreate(kEvent $event) | protected function OnCreate(kEvent $event) | ||||
{ | { | ||||
if ( $this->Application->GetVar($event->Prefix . '_label') ) { | if ( $this->Application->GetVar($event->Prefix . '_label') ) { | ||||
/** @var kDBItem $object */ | |||||
$object = $event->getObject(Array ('skip_autoload' => true)); | $object = $event->getObject(Array ('skip_autoload' => true)); | ||||
/* @var $object kDBItem */ | |||||
if ( $this->Application->GetVar('m_lang') != $this->Application->GetVar('lang_id') ) { | if ( $this->Application->GetVar('m_lang') != $this->Application->GetVar('lang_id') ) { | ||||
$object->SwitchToLive(); | $object->SwitchToLive(); | ||||
} | } | ||||
$this->returnToOriginalTemplate($event); | $this->returnToOriginalTemplate($event); | ||||
} | } | ||||
parent::OnCreate($event); | parent::OnCreate($event); | ||||
} | } | ||||
/** | /** | ||||
* Processes items create from ajax request | * Processes items create from ajax request | ||||
* | * | ||||
* @param kEvent $event | * @param kEvent $event | ||||
* @return void | * @return void | ||||
* @access protected | * @access protected | ||||
*/ | */ | ||||
protected function OnCreateAjax(kEvent $event) | protected function OnCreateAjax(kEvent $event) | ||||
{ | { | ||||
/** @var AjaxFormHelper $ajax_form_helper */ | |||||
$ajax_form_helper = $this->Application->recallObject('AjaxFormHelper'); | $ajax_form_helper = $this->Application->recallObject('AjaxFormHelper'); | ||||
/* @var $ajax_form_helper AjaxFormHelper */ | |||||
$ajax_form_helper->transitEvent($event, 'OnCreate'); | $ajax_form_helper->transitEvent($event, 'OnCreate'); | ||||
} | } | ||||
/** | /** | ||||
* Redirects to original template after phrase is being update | * Redirects to original template after phrase is being update | ||||
* | * | ||||
* @param kEvent $event | * @param kEvent $event | ||||
Show All 13 Lines | |||||
* Processes items update from ajax request | * Processes items update from ajax request | ||||
* | * | ||||
* @param kEvent $event | * @param kEvent $event | ||||
* @return void | * @return void | ||||
* @access protected | * @access protected | ||||
*/ | */ | ||||
protected function OnUpdateAjax(kEvent $event) | protected function OnUpdateAjax(kEvent $event) | ||||
{ | { | ||||
/** @var AjaxFormHelper $ajax_form_helper */ | |||||
$ajax_form_helper = $this->Application->recallObject('AjaxFormHelper'); | $ajax_form_helper = $this->Application->recallObject('AjaxFormHelper'); | ||||
/* @var $ajax_form_helper AjaxFormHelper */ | |||||
$ajax_form_helper->transitEvent($event, 'OnUpdate'); | $ajax_form_helper->transitEvent($event, 'OnUpdate'); | ||||
} | } | ||||
/** | /** | ||||
* Returns to original template after phrase adding/editing | * Returns to original template after phrase adding/editing | ||||
* | * | ||||
* @param kEvent $event | * @param kEvent $event | ||||
Show All 16 Lines | |||||
* @param kEvent $event | * @param kEvent $event | ||||
* @return void | * @return void | ||||
* @access protected | * @access protected | ||||
*/ | */ | ||||
protected function OnBeforeItemCreate(kEvent $event) | protected function OnBeforeItemCreate(kEvent $event) | ||||
{ | { | ||||
parent::OnBeforeItemCreate($event); | parent::OnBeforeItemCreate($event); | ||||
/** @var kDBItem $object */ | |||||
$object = $event->getObject(); | $object = $event->getObject(); | ||||
/* @var $object kDBItem */ | |||||
$primary_language_id = $this->Application->GetDefaultLanguageId(); | $primary_language_id = $this->Application->GetDefaultLanguageId(); | ||||
if ( !$object->GetDBField('l' . $primary_language_id . '_Translation') ) { | if ( !$object->GetDBField('l' . $primary_language_id . '_Translation') ) { | ||||
// no translation on primary language -> try to copy from other language | // no translation on primary language -> try to copy from other language | ||||
$src_languages = Array ('lang_id', 'm_lang'); // editable language, theme language | $src_languages = Array ('lang_id', 'm_lang'); // editable language, theme language | ||||
foreach ($src_languages as $src_language) { | foreach ($src_languages as $src_language) { | ||||
Show All 26 Lines | |||||
/** | /** | ||||
* Set's phrase key and last change info, used for phrase updating and loading | * Set's phrase key and last change info, used for phrase updating and loading | ||||
* | * | ||||
* @param kEvent $event | * @param kEvent $event | ||||
*/ | */ | ||||
function _phraseChanged($event) | function _phraseChanged($event) | ||||
{ | { | ||||
/** @var kDBItem $object */ | |||||
$object = $event->getObject(); | $object = $event->getObject(); | ||||
/* @var $object kDBItem */ | |||||
$label = $object->GetDBField('Phrase'); | $label = $object->GetDBField('Phrase'); | ||||
$object->SetDBField('PhraseKey', mb_strtoupper($label)); | $object->SetDBField('PhraseKey', mb_strtoupper($label)); | ||||
$object->SetDBField('PhraseType', $this->_getPhraseType($label)); | $object->SetDBField('PhraseType', $this->_getPhraseType($label)); | ||||
if ( $this->translationChanged($object) ) { | if ( $this->translationChanged($object) ) { | ||||
$object->SetDBField('LastChanged_date', adodb_mktime() ); | $object->SetDBField('LastChanged_date', adodb_mktime() ); | ||||
$object->SetDBField('LastChanged_time', adodb_mktime() ); | $object->SetDBField('LastChanged_time', adodb_mktime() ); | ||||
▲ Show 20 Lines • Show All 172 Lines • Show Last 20 Lines |