/** * Save the user in the db * @param User $user */ function saveDatabase(User $user) { $save = array(); $userExists = $this->userExists($user->getID()); // Common fields $save['PIN'] = $user->getPIN(); $save['name'] = $user->getName(); // Update if it exists if ($userExists) { $primary = array('userID' => $user->getID()); $this->getDB()->update(self::TABLE_USER, $save, $primary); } else { $save['userID'] = $user->getID(); $save['role'] = $user instanceof Supervisor ? 'supervisor' : 'tutor'; $this->getDB()->insert(self::TABLE_USER, $save); } // Fields for tutor if ($user instanceof Tutor) { // Save schedule self::$scheduleManager->save($user->getSchedule(), $user->getID()); // Save timesheet TODO $save = array(); $save['email'] = $user->getEmail(); $save['phone'] = $user->getPhone(); $save['bio'] = $user->getBio(); $save['picture'] = $user->getPicture(); // Update if it exists if ($userExists) { $primary = array('userID' => $user->getID()); $this->getDB()->update(self::TABLE_TUTOR, $save, $primary); } else { $save['userID'] = $user->getID(); $this->getDB()->insert(self::TABLE_TUTOR, $save); } } }