// Constants for database columns
const DB_COLUMN_USERNAME = "username";
+ const DB_COLUMN_EMAIL = "email";
// Constants for database table names
const DB_TABLE_USER = "user";
$this->setObjectDescription("Database wrapper for user objects");
// Create unique ID number
- $this->createUniqueID();
+ $this->generateUniqueId();
}
/**
// Now it's time to ask the database layer for this select statement
$result = $this->getDatabaseInstance()->doSelectByTableCriteria(self::DB_TABLE_USER, $criteriaInstance);
- // Cache the result
- $this->cacheInstance->offsetSet($cacheKey, $result);
+ // Cache the result if not null
+ if (!is_null($result)) {
+ // A valid result has returned from the database layer
+ $this->cacheInstance->offsetSet($cacheKey, $result);
+ } else {
+ // This invalid result must be wrapped
+ $result = array(
+ 'status' => "invalid",
+ 'exception' => $this->getDatabaseInstance()->getLastException()
+ );
+ }
}
// Create an instance of a DatabaseResult class with the given result
// And return the instance
return $resultInstance;
}
+
+ /**
+ * Handles inserting the registration data from a registration instance into the database
+ *
+ * @param $registrationInstance An instance of a registration class
+ * @return void
+ */
+ public function insertRegistrationObject (UserRegister $registrationInstance) {
+ // Generate a data set for the request
+ $dataSetInstance = ObjectFactory::createObjectByConfiguredName('dataset_criteria');
+ $dataSetInstance->setTableName(self::DB_TABLE_USER);
+
+ // Add registration elements to the dataset
+ $registrationInstance->addElementsToDataSet($dataSetInstance);
+
+ // "Insert" this request instance completely into the database
+ $this->getDatabaseInstance()->insertDataSet($dataSetInstance);
+ }
}
// [EOF]