ThemeObject
extends PersistentObject
in package
The basic ThemeObject class. Extends PersistentObject, is extended by various Theme related objects.
Provides some basic methods that all use.
Table of Contents
Properties
- $comments : mixed
- $exists : mixed
- $loaded : mixed
- $manage_rights : mixed
- $manage_some_rights : mixed
- $table : mixed
- $transient : mixed
- $view_rights : mixed
- $id : mixed
- $is_protected : mixed
- $is_public : mixed
- $cache_by : mixed
- $commentcount : mixed
- $data : mixed
- $tempdata : mixed
- $unique_set : mixed
- $updates : mixed
- $use_cache : mixed
Methods
- __construct() : mixed
- Class instantiator
- __toString() : string
- "Magic" function to return a string identifying the object when it is treated as a string
- addComment() : object
- Adds comments to the album assumes data is coming straight from GET or POST
- checkAccess() : mixed
- Checks if viewing of object is allowed by rights or protection status
- checkChanges() : bool
- By default the object is saved if there are any updates within the property `$updates` no matter if these are actual changes to existing data.
- checkForGuest() : mixed
- Checks if the item is password protected and if the password has been entered
- checkPublishDates() : bool
- Checks if the item is either expired or needs to be scheduled published
- checkScheduledPublishing() : int
- Checks if the item has expired or is in scheduled publishing
- clearCache() : mixed
- Clears the object cache by setting it to an empty array completely or a specific object (class name) cache.
- clearObjectCache() : mixed
- Shortcut to clear the cache of the current object class only
- copy() : mixed
- Copy this record to another unique set. Checks if the record exists there first, if so returns false. If successful returns true. No changes are made to this object and no other objects are created, just the database entry.
- countHit() : mixed
- counts visits to the object
- get() : mixed
- Get the value of a variable. If $current is false, return the value as of the last save of this object.
- getCodeblock() : array<string|int, mixed>
- Returns the codeblocks as an serialized array
- getCommentCount() : int
- Returns the count of comments in the album. Ignores comments in moderation
- getComments() : array<string|int, mixed>
- Returns an array of comments for this album
- getCommentsAllowed() : bool
- Retuns true if comments are allowed
- getCustomData() : string
- returns the custom data field
- getData() : array<string|int, mixed>
- returns the database record of the object
- getDateTime() : int
- Returns the unformatted date
- getExpireDate() : string
- Returns the expired date if available,
- getHitcounter() : int
- Returns the hitcount
- getID() : string
- Returns the id
- getLastChange() : string
- Returns the last change user
- getLastChangeUser() : string
- Returns the last change user
- getLevel() : int
- Gets the level based on the sort order if the theme object is hierachical. Otherwise returns 1 (top level)
- getParentID() : string
- Returns the partent id
- getPassword() : null
- Gets the password if set
- getShow() : bool
- Returns true published
- getTags() : string
- Returns the tag data
- getTitle() : string
- Returns the title
- hasExpiration() : bool
- Returns true if the item will be automatically unpublished by a not yet reached future expire date
- hasExpired() : bool
- Returns true if the items has been unpublished after reaching the set expire date.
- hasExpireDate() : bool
- Returns true if the item has a proper expire date set no matter if it has expired already or will expire in the future
- hasFutureDate() : string
- Returns the future date (publishdate for gallery, date for Zenpage items) if set to the future only
- hasInactiveExpiration() : bool
- Returns true if a future expiredate is set but the item is unpublished
- hasInactivePublishSchedule() : bool
- Returns true if the item has a future date but is not published
- hasPublishSchedule() : bool
- Returns true if the item will be automatically published by a future date set
- hasTag() : bool
- Checks if an object has a tag assigned.
- instantiate() : bool
- }
- isMyItem() : mixed
- Checks basic access rights of an object
- isProtected() : bool
- Checks if the item is password protected. Checks if the password has been entered *
- isProtectedByParent() : bool
- Check if the item is not protected itself but protection is inherited by a parent. Checks if the password has been entered.
- isPublic() : bool
- Returns true if this object is published and does not inherit any unpublish status by a parent
- isPublished() : bool
- Returns true if the item itself is published
- isUnpublishedByParent() : bool
- Returns true if itself published but unpublished status is inheretited by a parent
- isVisible() : bool
- Checks if the current item is visible (= listed) to the current visitor via rights, publish status or protection status
- move() : mixed
- Change one or more values of the unique set assigned to this record.
- remove() : bool
- Deletes object from the database
- save() : mixed
- Save the updates made to this object since the last update. Returns true if successful, false if not.
- set() : mixed
- Set a variable in this object. Does not persist to the database until save() is called. So, IMPORTANT: Call save() after set() to persist.
- setCodeblock() : mixed
- set the codeblocks as an serialized array
- setCommentsAllowed() : mixed
- Sets the comments allowed flag
- setCustomData() : mixed
- Sets the custom data field
- setDateTime() : mixed
- Stores the date
- setLastChange() : mixed
- stores the current date in the format 'Y-m-d H:i:s' as the last change date
- setLastchangeUser() : mixed
- stores the last change user
- setParentID() : mixed
- Sets the ParentID field
- setPublished() : mixed
- Stores the published value
- setShow() : mixed
- Stores the published value
- setTags() : mixed
- Stores tag information
- setTitle() : mixed
- Stores the title
- setDefaults() : mixed
- Sets default values for new objects using the set() method.
- addToCache() : mixed
- add the entry to the cache
- getFromCache() : mixed
- check the cache for presence of the entry and return it if found
- load() : false
- Load the data array from the database, using the unique id set to get the unique record.
Properties
$comments
public
mixed
$comments
= \NULL
$exists
public
mixed
$exists
= \false
$loaded
public
mixed
$loaded
= \false
$manage_rights
public
mixed
$manage_rights
= \ADMIN_RIGHTS
$manage_some_rights
public
mixed
$manage_some_rights
= \ADMIN_RIGHTS
$table
public
mixed
$table
$transient
public
mixed
$transient
$view_rights
public
mixed
$view_rights
= \VIEW_ALL_RIGHTS
$id
protected
mixed
$id
= 0
$is_protected
protected
mixed
$is_protected
= \null
$is_public
protected
mixed
$is_public
= \null
$cache_by
private
mixed
$cache_by
$commentcount
private
mixed
$commentcount
$data
private
mixed
$data
= \NULL
$tempdata
private
mixed
$tempdata
= \NULL
$unique_set
private
mixed
$unique_set
= \NULL
$updates
private
mixed
$updates
= \NULL
$use_cache
private
mixed
$use_cache
= \false
Methods
__construct()
Class instantiator
public
__construct() : mixed
__toString()
"Magic" function to return a string identifying the object when it is treated as a string
public
__toString() : string
Return values
stringaddComment()
Adds comments to the album assumes data is coming straight from GET or POST
public
addComment(string $name, string $email, string $website, string $comment, string $code, string $code_ok, string $ip, bool $private, bool $anon, string $customdata, bool $dataconfirmation, string $p_textquiz_answer, string $p_mathquiz_answer) : object
Returns a comment object
Parameters
- $name : string
-
Comment author name
- $email : string
-
Comment author email
- $website : string
-
Comment author website
- $comment : string
-
body of the comment
- $code : string
-
CAPTCHA code entered
- $code_ok : string
-
CAPTCHA hash expected
- $ip : string
-
the IP address of the comment poster
- $private : bool
-
set to true if the comment is for the admin only
- $anon : bool
-
set to true if the poster wishes to remain anonymous
- $customdata : string
- $dataconfirmation : bool
-
true or false if data privacy confirmation was required
- $p_textquiz_answer : string
- $p_mathquiz_answer : string
Return values
objectcheckAccess()
Checks if viewing of object is allowed by rights or protection status
public
checkAccess([string &$hint = NULL ][, string &$show = NULL ]) : mixed
Parameters
- $hint : string = NULL
- $show : string = NULL
checkChanges()
By default the object is saved if there are any updates within the property `$updates` no matter if these are actual changes to existing data.
public
checkChanges([bool $update = true ]) : bool
This checks that and internally updates the $updates
property with the actual changes obky so you optionally can skip unnecessary object saves.
Standard object fields lastchange
and lastchangeuser
are exclude because lastchange
always changes and both make no sense
if there is no actual content change at all.
This can be used before calling the save() method or enabled within the save() method optionally
Parameters
- $update : bool = true
-
True (default) to also update the $updates property with changes found or clear it. False to only check for changes.
Tags
Return values
boolcheckForGuest()
Checks if the item is password protected and if the password has been entered
public
checkForGuest([ &$hint = NULL ][, &$show = NULL ]) : mixed
Parameters
checkPublishDates()
Checks if the item is either expired or needs to be scheduled published
public
checkPublishDates() : bool
Unpublishes the item if expired (saves to db) or scheduled (temporary) and returns false if expired or scheduled.
Return values
boolcheckScheduledPublishing()
Checks if the item has expired or is in scheduled publishing
public
static checkScheduledPublishing(array<string|int, mixed> $row) : int
Returns 1 if expired, 2 if in scheduled future publishing
Parameters
- $row : array<string|int, mixed>
-
database row of the object
Tags
Return values
intclearCache()
Clears the object cache by setting it to an empty array completely or a specific object (class name) cache.
public
static clearCache([mixed $class = null ]) : mixed
Note: You normally never need to use this. But on certain occasions it may be necessary to avoid memory issues if you loop through a lot of object creations.
Parameters
- $class : mixed = null
Tags
clearObjectCache()
Shortcut to clear the cache of the current object class only
public
clearObjectCache() : mixed
Tags
copy()
Copy this record to another unique set. Checks if the record exists there first, if so returns false. If successful returns true. No changes are made to this object and no other objects are created, just the database entry.
public
copy(mixed $new_unique_set) : mixed
A call to copy is instant, it does not require a save() following it.
Parameters
- $new_unique_set : mixed
countHit()
counts visits to the object
public
countHit() : mixed
get()
Get the value of a variable. If $current is false, return the value as of the last save of this object.
public
get(mixed $var[, mixed $current = true ]) : mixed
Parameters
- $var : mixed
- $current : mixed = true
getCodeblock()
Returns the codeblocks as an serialized array
public
getCodeblock() : array<string|int, mixed>
Return values
array<string|int, mixed>getCommentCount()
Returns the count of comments in the album. Ignores comments in moderation
public
getCommentCount() : int
Return values
intgetComments()
Returns an array of comments for this album
public
getComments([bool $moderated = false ][, bool $private = false ][, bool $desc = false ]) : array<string|int, mixed>
Parameters
- $moderated : bool = false
-
if false, ignores comments marked for moderation
- $private : bool = false
-
if false ignores private comments
- $desc : bool = false
-
set to true for descending order
Return values
array<string|int, mixed>getCommentsAllowed()
Retuns true if comments are allowed
public
getCommentsAllowed() : bool
Return values
boolgetCustomData()
returns the custom data field
public
getCustomData([mixed $locale = NULL ]) : string
Parameters
- $locale : mixed = NULL
Return values
stringgetData()
returns the database record of the object
public
getData() : array<string|int, mixed>
Return values
array<string|int, mixed>getDateTime()
Returns the unformatted date
public
getDateTime() : int
Return values
intgetExpireDate()
Returns the expired date if available,
public
getExpireDate() : string
Tags
Return values
stringgetHitcounter()
Returns the hitcount
public
getHitcounter() : int
Return values
intgetID()
Returns the id
public
getID() : string
Return values
stringgetLastChange()
Returns the last change user
public
getLastChange() : string
Return values
stringgetLastChangeUser()
Returns the last change user
public
getLastChangeUser() : string
Tags
Return values
stringgetLevel()
Gets the level based on the sort order if the theme object is hierachical. Otherwise returns 1 (top level)
public
getLevel() : int
Tags
Return values
intgetParentID()
Returns the partent id
public
getParentID() : string
Return values
stringgetPassword()
Gets the password if set
public
getPassword() : null
Placeholder for all child classes. Needs to be properly overriden there if password functionality is available
Tags
Return values
nullgetShow()
Returns true published
public
getShow() : bool
Tags
Return values
boolgetTags()
Returns the tag data
public
getTags() : string
Return values
stringgetTitle()
Returns the title
public
getTitle([mixed $locale = NULL ]) : string
Parameters
- $locale : mixed = NULL
Return values
stringhasExpiration()
Returns true if the item will be automatically unpublished by a not yet reached future expire date
public
hasExpiration() : bool
Tags
Return values
boolhasExpired()
Returns true if the items has been unpublished after reaching the set expire date.
public
hasExpired() : bool
Tags
Return values
boolhasExpireDate()
Returns true if the item has a proper expire date set no matter if it has expired already or will expire in the future
public
hasExpireDate() : bool
Tags
Return values
boolhasFutureDate()
Returns the future date (publishdate for gallery, date for Zenpage items) if set to the future only
public
hasFutureDate() : string
Tags
Return values
string —| null
hasInactiveExpiration()
Returns true if a future expiredate is set but the item is unpublished
public
hasInactiveExpiration() : bool
Tags
Return values
boolhasInactivePublishSchedule()
Returns true if the item has a future date but is not published
public
hasInactivePublishSchedule() : bool
Tags
Return values
boolhasPublishSchedule()
Returns true if the item will be automatically published by a future date set
public
hasPublishSchedule() : bool
Tags
Return values
boolhasTag()
Checks if an object has a tag assigned.
public
hasTag(string $checktag) : bool
Parameters
- $checktag : string
-
tag to check for
Return values
boolinstantiate()
}
public
instantiate( $tablename, $unique_set[, $cache_by = NULL ][, $use_cache = true ][, $is_transient = false ][, $allowCreate = true ]) : bool
Prime instantiator for Zenphoto objects
Parameters
- $tablename :
-
The name of the database table
- $unique_set :
-
An array of unique fields
- $cache_by : = NULL
- $use_cache : = true
- $is_transient : = false
-
Set true to prevent database insertion
- $allowCreate : = true
-
Set true to allow a new object to be made.
Return values
bool —will be true if the unique_set does not already exist
isMyItem()
Checks basic access rights of an object
public
isMyItem([bit $action = LIST_RIGHTS ]) : mixed
Parameters
- $action : bit = LIST_RIGHTS
-
User rights level, default LIST_RIGHTS
isProtected()
Checks if the item is password protected. Checks if the password has been entered *
public
isProtected() : bool
Tags
Return values
boolisProtectedByParent()
Check if the item is not protected itself but protection is inherited by a parent. Checks if the password has been entered.
public
isProtectedByParent() : bool
Tags
Return values
boolisPublic()
Returns true if this object is published and does not inherit any unpublish status by a parent
public
isPublic() : bool
Child classes with any hierachic structure need to override and extend this method to cover inheritance.
Tags
Return values
boolisPublished()
Returns true if the item itself is published
public
isPublished([bool $use_dbvalue = false ]) : bool
Parameters
- $use_dbvalue : bool = false
-
Set to true to use the actual db value stored and not the possibly temporary modified value (e.g. if in scheduled publishing or expiration)
Tags
Return values
boolisUnpublishedByParent()
Returns true if itself published but unpublished status is inheretited by a parent
public
isUnpublishedByParent() : bool
Tags
Return values
boolisVisible()
Checks if the current item is visible (= listed) to the current visitor via rights, publish status or protection status
public
isVisible([bit $action = LIST_RIGHTS ]) : bool
Convenience wrapper for various methods.
Parameters
- $action : bit = LIST_RIGHTS
-
User rights level, default LIST_RIGHTS
Tags
Return values
boolmove()
Change one or more values of the unique set assigned to this record.
public
move(mixed $new_unique_set) : mixed
Checks if the record already exists first, if so returns false. If successful returns true and changes $this->unique_set A call to move is instant, it does not require a save() following it.
Parameters
- $new_unique_set : mixed
remove()
Deletes object from the database
public
remove() : bool
Return values
boolsave()
Save the updates made to this object since the last update. Returns true if successful, false if not.
public
save([bool $checkupdates = false ]) : mixed
Parameters
- $checkupdates : bool = false
-
Default false. If true the internal $updates property is checked for actual changes so unnecessary saving is skipped. Applies to already existing objects only.
set()
Set a variable in this object. Does not persist to the database until save() is called. So, IMPORTANT: Call save() after set() to persist.
public
set(mixed $var, mixed $value) : mixed
If the requested variable is not in the database, sets it in temp storage, which won't be persisted to the database.
Parameters
- $var : mixed
- $value : mixed
setCodeblock()
set the codeblocks as an serialized array
public
setCodeblock(mixed $cb) : mixed
Parameters
- $cb : mixed
setCommentsAllowed()
Sets the comments allowed flag
public
setCommentsAllowed(bool $commentson) : mixed
Parameters
- $commentson : bool
-
true if they are allowed
setCustomData()
Sets the custom data field
public
setCustomData(string $val) : mixed
Parameters
- $val : string
-
the value to be put in custom_data
setDateTime()
Stores the date
public
setDateTime(string $datetime) : mixed
Parameters
- $datetime : string
-
formatted date
setLastChange()
stores the current date in the format 'Y-m-d H:i:s' as the last change date
public
setLastChange() : mixed
setLastchangeUser()
stores the last change user
public
setLastchangeUser(mixed $a) : mixed
Parameters
- $a : mixed
Tags
setParentID()
Sets the ParentID field
public
setParentID( $v) : mixed
Parameters
setPublished()
Stores the published value
public
setPublished(bool $published) : mixed
Parameters
- $published : bool
-
True if the item is published
Tags
setShow()
Stores the published value
public
setShow(bool $show) : mixed
Parameters
- $show : bool
-
True if the album is published
Tags
setTags()
Stores tag information
public
setTags(string $tags) : mixed
Parameters
- $tags : string
-
the tag list
setTitle()
Stores the title
public
setTitle(string $title) : mixed
Parameters
- $title : string
-
the title
setDefaults()
Sets default values for new objects using the set() method.
protected
setDefaults() : mixed
Should do nothing in the base class; subclasses should override.
addToCache()
add the entry to the cache
private
addToCache( $entry) : mixed
Parameters
getFromCache()
check the cache for presence of the entry and return it if found
private
getFromCache() : mixed
load()
Load the data array from the database, using the unique id set to get the unique record.
private
load(bool $allowCreate) : false
Parameters
- $allowCreate : bool
-
set to true to enable new object creation.
Return values
false —if the record already exists, true if a new record was created.