Clear(); } /** * Clears all members to their default values * * @return void */ function Clear() { $this->CalendarID = 0; $this->Title = ''; $this->Description = ''; $this->EventCount = 0; $this->Blocked = 0; $this->RoleBlocked = 0; $this->AllowedRoles = array(); $this->ColorArr = array(); $this->ColorStr = ''; $this->RequireApproval = 0; } /** * Gets calendar specific properties from a dataset * * @param array $Dataset * @return void * * Usage example: * * $Calendar = $Context->ObjectFactory->NewObject($Context, 'Calendars'); * // Do your queries here * while ($rows = $Context->Database->GetRow($ResultSet)) { * $Calendar->GetPropertiesFromDataSet($rows); * } * */ function GetPropertiesFromDataSet($DataSet) { $this->CalendarID = ForceInt(@$DataSet['CalendarID'], 0); $this->Title = ForceString(@$DataSet['Title'], ''); $this->Description = ForceString(@$DataSet['Description'], ''); $this->EventCount = ForceInt(@$DataSet['EventCount'], 0); $this->Blocked = ForceBool(@$DataSet['Blocked'], 0); $this->RoleBlocked = ForceBool(@$DataSet['RoleBlocked'], 0); $this->RequireApproval = ForceBool(@$DataSet['RequireApproval'], 0); $this->ColorStr = ForceString(@$DataSet['Color'], ''); } /** * Format calendar specific properties for display. Clean up malicious information as well * * @return void * * Usage example: * * $Calendar = $Context->ObjectFactory->NewObject($Context, 'Calendars'); * $Calendar->FormatPropertiesForDisplay(); * */ function FormatPropertiesForDisplay() { $this->Title = FormatStringForDisplay($this->Title, 1); $this->Description = FormatStringForDisplay($this->Description, 1); $this->ColorArr = UnserializeAssociativeArray($this->ColorStr); } /** * Get form elements * * @return void * * Usage example: * * $Calendar = $Context->ObjectFactory->NewObject($Context, 'Calendars'); * $Calendar->GetPropertiesFromForm(); * */ function GetPropertiesFromForm(&$Context) { $this->CalendarID = ForceIncomingInt('CalendarID', 0); $this->Title = ForceIncomingString('Title', ''); $this->Description = ForceIncomingString('Description', ''); $this->AllowedRoles = ForceIncomingArray('CalendarRoleBlock', array()); $this->ColorArr = ForceIncomingArray('ColorArr', array()); $this->RequireApproval = ForceIncomingInt('RequireApproval', 0); } /** * Format properties for database input * * @return void * * Usage example: * * $Calendar = $Context->ObjectFactory->NewObject($Context, 'Calendars'); * $Calendar->FormatPropertiesForDatabaseInput(); * */ function FormatPropertiesForDatabaseInput() { $this->Title = FormatStringForDatabaseInput($this->Title, 1); $this->Description = FormatStringForDatabaseInput($this->Description, 1); $this->ColorStr = SerializeArray($this->ColorArr); } } ?>