X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/timetracker.git/blobdiff_plain/d40763fdef73f3118da81b497baafff29a73c5ba..bcff87ad905e60d848029cf5643c8c02191ca346:/WEB-INF/lib/ttRegistrator.class.php diff --git a/WEB-INF/lib/ttRegistrator.class.php b/WEB-INF/lib/ttRegistrator.class.php index 0e51ce39..3ac6166d 100644 --- a/WEB-INF/lib/ttRegistrator.class.php +++ b/WEB-INF/lib/ttRegistrator.class.php @@ -81,10 +81,9 @@ class ttRegistrator { // The register function registers a user in Time Tracker. function register() { - global $i18n; + if ($this->err->yes()) return; // There are errors, do not proceed. - if ($this->err->yes()) - return; // There are errors, do not proceed. + global $i18n; import('ttUserHelper'); if (ttUserHelper::getUserByLogin($this->login)) { @@ -112,6 +111,8 @@ class ttRegistrator { $err->add($i18n->getKey('error.db')); return; } + + $this->setCreatedBy($this->user_id); } // The createGroup function creates a group in Time Tracker as part @@ -122,8 +123,10 @@ class ttRegistrator { $name = $mdb2->quote($this->group_name); $currency = $mdb2->quote($this->currency); $lang = $mdb2->quote($this->lang); + $created = 'now()'; + $created_ip = $mdb2->quote($_SERVER['REMOTE_ADDR']); - $sql = "insert into tt_teams (name, currency, lang) values($name, $currency, $lang)"; + $sql = "insert into tt_teams (name, currency, lang, created, created_ip) values($name, $currency, $lang, $created, $created_ip)"; $affected = $mdb2->exec($sql); if (!is_a($affected, 'PEAR_Error')) { @@ -153,4 +156,30 @@ class ttRegistrator { } return false; } + + // The setCreatedBy sets created_by field for both group and user to passed in user_id. + function setCreatedBy($user_id) { + if ($this->err->yes()) return false; // There are errors, do not proceed. + + global $i18n; + $mdb2 = getConnection(); + + // Update group. + $sql = "update tt_teams set created_by = $user_id where id = $this->group_id"; + $affected = $mdb2->exec($sql); + if (is_a($affected, 'PEAR_Error')) { + $this->err->add($i18n->getKey('error.db')); + return false; + } + + // Update top manager. + $sql = "update tt_users set created_by = $user_id where id = $user_id and team_id = $this->group_id"; + $affected = $mdb2->exec($sql); + if (is_a($affected, 'PEAR_Error')) { + $this->err->add($i18n->getKey('error.db')); + return false; + } + + return true; + } }