/** * Creates a new user in the xml file or a * new users XML file with that user in it * if one doesn't exist * * @param User $user The user object to add * to the XML. * @return boolean whether or not the user * was created. */ function user_createUser($user) { // Make sure the user object is complete $userName = strtolower($user->getUserName()); $passWord = md5($user->getPassWord()); $secretQuestion = $user->getSecretQuestion(); $secretAnswer = md5(strtolower($user->getSecretAnswer())); $authLevel = $user->getAuthLevel(); if (empty($userName) || empty($passWord) || empty($secretQuestion) || empty($secretAnswer) || empty($authLevel)) { return false; } // Get the xml if (file_exists(APPPATH . '../../config/users.xml')) { $file = file_get_contents(APPPATH . '../../config/users.xml'); $xml = new SimpleXMLElement($file); // Make sure the user doesn't exist $userInfo = $xml->xpath("/users/user[userName='******']"); if (!empty($userInfo)) { return false; } } else { $xml = new SimpleXMLElement(user_genXML()); } // write the user to the xml file $userXML = $xml->addChild('user'); $userXML->addChild('userName', "{$userName}"); $userXML->addChild('passWord', "{$passWord}"); $userXML->addChild('secretQuestion', "{$secretQuestion}"); $userXML->addChild('secretAnswer', "{$secretAnswer}"); $userXML->addChild('authLevel', "{$authLevel}"); if (@file_put_contents(APPPATH . "../../config/users.xml", $xml->asXML())) { return true; } else { return 'file error'; } }