PHP Class BaseActiveRecord

Currently its only purpose is to remove all html tags to prevent XSS.
Inheritance: extends CActiveRecord
Datei anzeigen Open project: openeyes/openeyes Class Usage Examples

Protected Properties

Property Type Description
$auto_update_relations (whilst developing this feature, will allow other elements to continue to work)
$originalAttributes
$relation_defaults to be set when setting the left or right attribute of owning record.

Public Methods

Method Description
NHSDate ( string $attribute, string $empty_string = '-' ) : string Returns a date field in NHS format.
NHSDateAsHTML ( $attribute, string $empty_string = '-' ) : string
__set ( string $name, mixed $value ) : mixed | void If an array of arrays is passed for a HAS_MANY relation attribute, will create appropriate objects to assign to the attribute. Sets up the afterSave method to saves these objects if they have validated.
audit ( $target, $action, null $data = null, null $log_message = null, array $properties = [] )
canAutocomplete ( )
cloneObject ( $object, array $params = [] ) : mixed
getAutocompleteField ( )
getCleanAttribute ( $attrName ) : string Gets the clean version of an attribute, returns empty string if there was no clean version.
getRelationsDefaults ( $name ) : array Convenience method wrapper on the relation defaults property.
getShortModelName ( ) : string Shortened name of this model class, useful for namespaced modules.
isAttributeDirty ( $attrName ) : boolean Checks if an attribute is dirty.
isModelDirty ( ) : boolean Check if the model dirty.
model ( string $class_name = null ) Override to use LSB.
save ( boolean $runValidation = true, array $attributes = null, boolean $allow_overriding = false ) : boolean
saveOnlyIfDirty ( boolean $enable = true ) : BaseActiveRecord Set the flag to indicate that model should only save to the db if the model is dirty.
tableName ( ) : string Default to the lower case of the class to match naming convention for model tables.
textWithLineBreaks ( $field ) : mixed

Protected Methods

Method Description
afterFind ( ) Stores the data in an array afterFind so when saving we can check if the value is dirty or not.
afterSave ( ) Saves related objects now that we have a pk for the instance.
beforeDelete ( ) : boolean Iterate through relations and remove the records that will break constraints.
beforeSave ( ) : boolean Strips all html tags out of attributes to be saved.
setDefaultAdmissionTime ( $admissionTime, $startTime ) : boolean | string Sets the default admission time.

Private Methods

Method Description
afterSaveHasMany ( $name, $rel, $new_objs, $orig_objs ) Save objects to the given relation.
afterSaveManyMany ( $name, CManyManyRelation $rel, $new_objs, $orig_objs )
afterSaveThruHasMany ( $name, $rel, $thru, $new_objs ) Save the given objects for the through relation.

Method Details

NHSDate() public method

Returns a date field in NHS format.
public NHSDate ( string $attribute, string $empty_string = '-' ) : string
$attribute string
$empty_string string - what to return if not able to convert
return string

NHSDateAsHTML() public method

public NHSDateAsHTML ( $attribute, string $empty_string = '-' ) : string
$attribute
$empty_string string
return string

__set() public method

NOTE once a property is set, this magic method will not be called by php for setting it again, unless the property is unset first.
public __set ( string $name, mixed $value ) : mixed | void
$name string
$value mixed
return mixed | void

afterFind() protected method

Stores the data in an array afterFind so when saving we can check if the value is dirty or not.
protected afterFind ( )

afterSave() protected method

Saves related objects now that we have a pk for the instance.
protected afterSave ( )

audit() public method

public audit ( $target, $action, null $data = null, null $log_message = null, array $properties = [] )
$target
$action
$data null
$log_message null
$properties array

beforeDelete() protected method

Iterate through relations and remove the records that will break constraints.
protected beforeDelete ( ) : boolean
return boolean

beforeSave() protected method

Strips all html tags out of attributes to be saved.
protected beforeSave ( ) : boolean
return boolean

canAutocomplete() public method

public canAutocomplete ( )

cloneObject() public static method

public static cloneObject ( $object, array $params = [] ) : mixed
$object
$params array
return mixed

getAutocompleteField() public method

getCleanAttribute() public method

Gets the clean version of an attribute, returns empty string if there was no clean version.
public getCleanAttribute ( $attrName ) : string
$attrName
return string

getRelationsDefaults() public method

Convenience method wrapper on the relation defaults property.
public getRelationsDefaults ( $name ) : array
$name
return array

getShortModelName() public static method

Shortened name of this model class, useful for namespaced modules.
public static getShortModelName ( ) : string
return string

isAttributeDirty() public method

Checks if an attribute is dirty.
public isAttributeDirty ( $attrName ) : boolean
$attrName
return boolean

isModelDirty() public method

Check if the model dirty.
public isModelDirty ( ) : boolean
return boolean true if the model dirty

model() public static method

Override to use LSB.
public static model ( string $class_name = null )
$class_name string

save() public method

public save ( boolean $runValidation = true, array $attributes = null, boolean $allow_overriding = false ) : boolean
$runValidation boolean
$attributes array
$allow_overriding boolean - if true allows created/modified user/date to be set and saved via the model (otherwise gets overriden)
return boolean

saveOnlyIfDirty() public method

Set the flag to indicate that model should only save to the db if the model is dirty.
public saveOnlyIfDirty ( boolean $enable = true ) : BaseActiveRecord
$enable boolean
return BaseActiveRecord

setDefaultAdmissionTime() protected method

If there is no default admission time supplied it should be set before one hour before the start time, used for sequences and sessions in OphTrOperationbooking.
protected setDefaultAdmissionTime ( $admissionTime, $startTime ) : boolean | string
$admissionTime
$startTime
return boolean | string

tableName() public method

Default to the lower case of the class to match naming convention for model tables.
public tableName ( ) : string
return string

textWithLineBreaks() public method

public textWithLineBreaks ( $field ) : mixed
$field
return mixed

Property Details

$auto_update_relations protected_oe property

(whilst developing this feature, will allow other elements to continue to work)
protected $auto_update_relations

$originalAttributes protected_oe property

protected $originalAttributes

$relation_defaults protected_oe property

to be set when setting the left or right attribute of owning record.
protected $relation_defaults