Index: trunk/kernel/include/portaluser.php =================================================================== diff -u -r3907 -r3983 --- trunk/kernel/include/portaluser.php (.../portaluser.php) (revision 3907) +++ trunk/kernel/include/portaluser.php (.../portaluser.php) (revision 3983) @@ -701,13 +701,13 @@ return $this->Get("Email"); break; case "user_date": - return LangDate($this->Get("CreatedOn")); + return LangDate($this->Get('CreatedOn'), 0, true); break; case "user_time": - return LangTime($this->Get("CreatedOn")); + return LangTime($this->Get('CreatedOn'), 0, true); break; case "user_dob": - return LangDate($this->Get("dob")); + return LangDate($this->Get('dob'), 0, true); break; case "user_password": @@ -884,9 +884,11 @@ $Phone, $Street, $City, $State, $Zip, $Country, $CreatedOn, $dob)); $BrokenRule = $CheckBanned ? $u->CheckBanned() : false; + if(!$BrokenRule) { $u->Create(); + $this->processEvent($u, 'OnAfterItemCreate'); return $u; } return $BrokenRule; @@ -905,6 +907,7 @@ $broken_rule = $check_banned ? $user->CheckBanned() : false; if (!$BrokenRule) { $user->Create(); + $this->processEvent($user, 'OnAfterItemCreate'); return $user; } @@ -933,6 +936,7 @@ } $user->Update(); + $this->processEvent($user, 'OnAfterItemUpdate'); return $user; } @@ -961,9 +965,32 @@ $u->Set("Password",$Password); $u->Update(); } + + $this->processEvent($u, 'OnAfterItemUpdate'); return $u; } + /** + * Enter description here... + * + * @param clsPortalUser $user + * @param string $event_name + */ + function processEvent(&$user, $event_name) + { + if ($user->UsingTempTable()) { + return true; + } + + $user_dummy =& $this->Application->recallObject('u.-item', null, Array('skip_autoload' => true)); + $user_dummy->SetDBFieldsFromHash($user->Data); + $user_dummy->setID($user->UniqueId()); + + $event = new kEvent('u.-item:'.$event_name); + $event->setEventParam('id', $user_dummy->GetID() ); + $this->Application->HandleEvent($event); + } + function Delete_User($UserId) { $u = $this->GetItemByField("ResourceId",$UserId);