Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class CustomDataObjectLog extends DataExtension {
- private $logged;
- /**
- * Logga $msg mediante l'apposito controller
- *
- * @param String $msg
- */
- private function zlog($msg = null) {
- // Evito di loggare se l'ho già fatto
- if ($this->logged !== TRUE) {
- Debug::log('LOGGO');
- // Verifica necessaria ad evitare loop infiniti
- // e coerenza semantica
- $class = get_class($this->owner);
- if ($class !== 'Log'
- && $class !== 'DataObject'
- && $this->owner instanceof DataObject) {
- // Creo il Log
- $log = new Log();
- $log->doLog($msg, $this->owner);
- $this->logged = TRUE;
- }
- } else {
- Debug::log('NON LOGGO');
- }
- }
- /**
- * Prima della scrittura sul db
- */
- public function onBeforeWrite() {
- parent::onBeforeWrite();
- }
- /**
- * Dopo la scrittura sul db
- */
- public function onAfterWrite() {
- parent::onAfterWrite();
- $this->zlog('Write');
- }
- /**
- * Prima della cancellazione sul db
- */
- public function onBeforeDelete() {
- parent::onBeforeDelete();
- }
- /**
- * Dopo la cancellazione sul db
- */
- public function onAfterDelete() {
- parent::onAfterDelete();
- $this->zlog('Delete');
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement