Application->GetVar('phrases_label'); $this->Application->setUnitOption($event->Prefix,'AutoLoad',false); $object =& $event->getObject( $label ? Array('live_table'=>true) : Array() ); if($label) { $object->SetDBField('Phrase',$label); $object->SetDBField('LanguageId', $this->Application->GetVar('m_lang') ); $object->SetDBField('PhraseType',1); } $last_module = $this->Application->GetVar('last_module'); if($last_module) $object->SetDBField('Module', $last_module); } /** * Forces create to use live table * * @param kEvent $event */ function OnBeforePhraseCreate(&$event) { $edit_direct = $this->Application->GetVar($event->Prefix.'_label'); if($edit_direct) { $this->Application->setUnitOption($event->Prefix,'AutoLoad',false); $object =& $event->getObject(); if( $this->Application->GetVar('m_lang') != $this->Application->GetVar('lang_id') ) { $object->SwitchToLive(); } } } /** * Save phrase change date & ip translation was made from * * @param kEvent $event */ function OnSetLastUpdated(&$event) { $object =& $event->getObject(); $prev_translation = $this->Conn->GetOne('SELECT Translation FROM '.$object->TableName.' WHERE '.$object->IDField.' = '.(int)$object->GetId() ); if( $prev_translation != $object->GetDBField('Translation') ) { $ip_address = getenv('HTTP_X_FORWARDED_FOR') ? getenv('HTTP_X_FORWARDED_FOR') : getenv('REMOTE_ADDR'); $object->SetDBField('LastChanged_date', time() ); $object->SetDBField('LastChanged_time', time() ); $object->SetDBField('LastChangeIP', $ip_address); } setcookie('last_module', $object->GetDBField('Module') ); } } ?>