/**
  * Update User
  * 
  * @url POST /user/update/
  */
 public function updateUser()
 {
     $userId = parent::CheckAuthentication();
     $userUserFolder = Settings::getInstance()->p['userUserFolder'];
     $user = parent::UserById($userId);
     $isImageUploading = isset($_FILES['NewImage']) && is_uploaded_file($_FILES['NewImage']['tmp_name']) ? 1 : 0;
     $destinationDirectory = "../../" . parent::GetImageUrl($userId, "", $userUserFolder, false, false, true) . "/";
     if (strlen($_POST['Image']) == 0 || $isImageUploading) {
         $this->UnlinkRemovedUserImages($userId, $user['Image']);
     }
     // Upload new image
     if ($isImageUploading == 1) {
         $image = uploadImage($_FILES['NewImage'], $destinationDirectory, 350);
     }
     if (isset($_POST['Username'])) {
         $user["Username"] = $_POST['Username'];
     }
     if (isset($_POST['FirstName'])) {
         $user["FirstName"] = $_POST['FirstName'];
     }
     if (isset($_POST['LastName'])) {
         $user["LastName"] = $_POST['LastName'];
     }
     if (isset($_POST['Country'])) {
         $user["Country"] = $_POST['Country'];
     }
     if (isset($_POST['Image']) && $isImageUploading != 1) {
         $user["Image"] = $_POST['Image'];
     } else {
         $user["Image"] = $image;
     }
     if (isset($_POST['MobilePhone'])) {
         $user["MobilePhone"] = $_POST['MobilePhone'];
     }
     if (isset($_POST['Language'])) {
         $user["Language"] = $_POST['Language'];
     }
     // Return the up-to-date user
     return parent::DbUpdateUser($user) == true ? parent::UserById($userId) : "ERROR";
 }