PHP Trait Venturecraft\Revisionable\RevisionableTrait

(c) Venture Craft
Show file Open project: venturecraft/revisionable

Protected Properties

Property Type Description
$dirtyData array Keeps the list of values that have been updated

Public Methods

Method Description
boot ( ) Ensure that the bootRevisionableTrait is called only if the current installation is a laravel 4 installation Laravel 5 will call bootRevisionableTrait() automatically
bootRevisionableTrait ( ) Create the event listeners for the saving and saved events This lets us save revisions whenever a save is made, no matter the http method.
classRevisionHistory ( integer $limit = 100, string $order = 'desc' ) : mixed Generates a list of the last $limit revisions made to any objects of the class it is being called from.
disableRevisionField ( mixed $field ) : void Disable a revisionable field temporarily Need to do the adding to array longhanded, as there's a PHP bug https://bugs.php.net/bug.php?id=42030
getRevisionFormattedFieldNames ( ) : mixed
getRevisionFormattedFields ( ) : mixed
getRevisionNullString ( ) : string Revision Unknown String When displaying revision history, when a foreign key is updated instead of displaying the ID, you can choose to display a string of your choice, just override this method in your model By default, it will fall back to the models ID.
getRevisionUnknownString ( ) : string No revision string When displaying revision history, if the revisions value cant be figured out, this is used instead.
getSystemUserId ( ) Attempt to find the user id of the currently logged in user Supports Cartalyst Sentry/Sentinel based authentication, as well as stock Auth
identifiableName ( ) : string Identifiable Name When displaying revision history, when a foreign key is updated instead of displaying the ID, you can choose to display a string of your choice, just override this method in your model By default, it will fall back to the models ID.
postCreate ( ) Called after record successfully created
postDelete ( ) If softdeletes are enabled, store the deleted time
postSave ( ) : void Called after a model is successfully saved.
preSave ( ) : boolean Invoked before a model is saved. Return false to abort the operation.
revisionHistory ( ) : mixed

Private Methods

Method Description
changedRevisionableFields ( ) : array Get all of the changes that have been made, that are also supposed to have their changes recorded
isRevisionable ( string $key ) : boolean Check if this field should have a revision kept
isSoftDelete ( ) : boolean Check if soft deletes are currently enabled on this model

Method Details

boot() public static method

Ensure that the bootRevisionableTrait is called only if the current installation is a laravel 4 installation Laravel 5 will call bootRevisionableTrait() automatically
public static boot ( )

bootRevisionableTrait() public static method

Create the event listeners for the saving and saved events This lets us save revisions whenever a save is made, no matter the http method.
public static bootRevisionableTrait ( )

classRevisionHistory() public static method

Generates a list of the last $limit revisions made to any objects of the class it is being called from.
public static classRevisionHistory ( integer $limit = 100, string $order = 'desc' ) : mixed
$limit integer
$order string
return mixed

disableRevisionField() public method

Disable a revisionable field temporarily Need to do the adding to array longhanded, as there's a PHP bug https://bugs.php.net/bug.php?id=42030
public disableRevisionField ( mixed $field ) : void
$field mixed
return void

getRevisionFormattedFieldNames() public method

getRevisionFormattedFields() public method

public getRevisionFormattedFields ( ) : mixed
return mixed

getRevisionNullString() public method

Revision Unknown String When displaying revision history, when a foreign key is updated instead of displaying the ID, you can choose to display a string of your choice, just override this method in your model By default, it will fall back to the models ID.
public getRevisionNullString ( ) : string
return string an identifying name for the model

getRevisionUnknownString() public method

It can be overridden.
public getRevisionUnknownString ( ) : string
return string an identifying name for the model

getSystemUserId() public method

Attempt to find the user id of the currently logged in user Supports Cartalyst Sentry/Sentinel based authentication, as well as stock Auth
public getSystemUserId ( )

identifiableName() public method

Identifiable Name When displaying revision history, when a foreign key is updated instead of displaying the ID, you can choose to display a string of your choice, just override this method in your model By default, it will fall back to the models ID.
public identifiableName ( ) : string
return string an identifying name for the model

postCreate() public method

Called after record successfully created
public postCreate ( )

postDelete() public method

If softdeletes are enabled, store the deleted time
public postDelete ( )

postSave() public method

Called after a model is successfully saved.
public postSave ( ) : void
return void

preSave() public method

Invoked before a model is saved. Return false to abort the operation.
public preSave ( ) : boolean
return boolean

revisionHistory() public method

public revisionHistory ( ) : mixed
return mixed

Property Details

$dirtyData protected property

Keeps the list of values that have been updated
protected array $dirtyData
return array