ZenphotoCMS 1.6.x

Gallery
in package

Gallery Class

Table of Contents

$albumdir  : mixed
$table  : mixed
$albums  : mixed
$data  : mixed
$lastalbumsort  : mixed
$theme  : mixed
$themes  : mixed
$unprotected_pages  : mixed
__construct()  : Gallery
Creates an instance of a gallery
__toString()  : string
"Magic" function to return a string identifying the object when it is treated as a string
addAlbumHandler()  : mixed
registers object handlers for album varients
addImageHandler()  : mixed
registers object handlers for image varients
checkforGuest()  : mixed
Checks if guest is loggedin for the album
clearCache()  : mixed
Cleans out the cache folder
commentClean()  : mixed
countHit()  : mixed
counts visits to the object
garbageCollect()  : bool
For every album in the gallery, look for its file. Delete from the database if the file does not exist. Do the same for images. Clean up comments that have been left orphaned.
get()  : mixed
getAlbum()  : Album
Returns the a specific album in the array indicated by index.
getAlbumDir()  : string
Returns the main albums directory
getAlbumPublish()  : mixed
getAlbums()  : array<string|int, mixed>
Get Albums will create our $albums array with a fully populated set of Album names in the correct order.
getAlbumSortKey()  : string
Returns the DB field corresponding to the album sort type desired
getAlbumsPerPage()  : int
Gets the albums per page setting
getAlbumUseImagedate()  : mixed
Option to update album date from date of new images
getAllAlbums()  : array<string|int, mixed>
Gets all albums with the right order as set on the backend.
getAllAlbumsFromDB()  : array<string|int, mixed>
Gets all albums from the database direclty. This is less accurate than getAllAlbums() but much faster on large sites with thousends of albums especially if $keeplevel_sortorder is kept false.
getBareTitle()  : string
Returns a tag stripped title
getCodeblock()  : array<string|int, mixed>
Returns the codeblocks as an serialized array
getCopyrightNotice()  : type
Gets the copyright notice
getCopyrightRightsholder()  : mixed
Gets the copyright site holder
getCopyrightURL()  : type
Gets the copyright site url
getCurrentTheme()  : string
Returns the foldername of the current theme.
getDesc()  : string
Returns the gallery description
getFirstPageImages()  : int
Gets the number of images if the thumb transintion page for sharing thumbs on the last album and the first image page
getGallerySession()  : mixed
Option of for gallery sessions
getHitcounter()  : int
Returns the hitcount
getImagePublish()  : mixed
getNumAlbums()  : int
Returns the total number of TOPLEVEL albums in the gallery (does not include sub-albums)
getNumComments()  : array<string|int, mixed>
Returns the count of comments
getNumImages()  : int
Returns the number of images in the gallery
getParentSiteTitle()  : string
Title to be used for a parent website if Zenphoto is used as a part of it
getParentSiteURL()  : string
URL to be used for a parent website if Zenphoto is used as a part of it
getPassword()  : mixed
Returns the hashed password for guest gallery access
getPasswordHint()  : string
Returns the hind associated with the gallery password
getSecondLevelThumbs()  : mixed
Option to show subalbum images in the thumbnail selector
getSecurity()  : mixed
Option to allow only registered users view the site
getSortDirection()  : mixed
getSortType()  : mixed
getThemes()  : array<string|int, mixed>
Populates the theme array and returns it. The theme array contains information about all the currently available themes.
getThumbSelectImages()  : mixed
Option to show images in the thumbnail selector
getTitle()  : string
Returns the gallery title
getTotalPages()  : int
Gets the total album pages
getUser()  : mixed
getUserLogonField()  : mixed
Option to expose the user field on logon forms
getWebsiteTitle()  : string
Title to be used for a parent website if Zenphoto is used as a part of it
getWebsiteURL()  : string
The URL of the home (not Zenphoto gallery) WEBsite
isProtected()  : mixed
returns true if there is any protection on the gallery
isUnprotectedPage()  : mixed
Tests if a page is excluded from password protection
save()  : mixed
set()  : mixed
setAlbumPublish()  : mixed
setAlbumUseImagedate()  : mixed
setCodeblock()  : mixed
set the codeblocks as an serialized array
setCopyrightNotice()  : mixed
Sets the copyright notice
setCopyrightURL()  : mixed
Sets the copyright site url
setCurrentTheme()  : mixed
Sets the current theme
setDesc()  : mixed
Sets the gallery description
setGallerySession()  : mixed
setImagePublish()  : mixed
setParentSiteTitle()  : mixed
Set the title to be used for a parent website if Zenphoto is used as a part of it
setParentSiteURL()  : string
The URL of the home (not Zenphoto gallery) WEBsite
setPassword()  : mixed
setPasswordHint()  : mixed
setSecondLevelThumbs()  : mixed
setSecurity()  : mixed
setSortDirection()  : mixed
setSortType()  : mixed
setThumbSelectImages()  : mixed
setTitle()  : mixed
setUnprotectedPage()  : mixed
setUser()  : mixed
setUserLogonField()  : mixed
setWebsiteTitle()  : mixed
Set the title to be used for a parent website if Zenphoto is used as a part of it
setWebsiteURL()  : string
Set URL of the home (not Zenphoto gallery) WEBsite
sortAlbumArray()  : array<string|int, mixed>
Sort the album array based on either according to the sort key.
validImage()  : bool
Returns true if the file is an image
validImageAlt()  : bool
Returns true if the file is handled by an image handler plugin object
getImageCount()  : mixed
loadAlbumNames()  : array<string|int, mixed>
Load all of the albums names that are found in the Albums directory on disk.

Properties

$unprotected_pages

protected mixed $unprotected_pages = array()

Methods

__toString()

"Magic" function to return a string identifying the object when it is treated as a string

public __toString() : string
Return values
string

addAlbumHandler()

registers object handlers for album varients

public static addAlbumHandler(type $suffix, type $objectName) : mixed
Parameters
$suffix : type
$objectName : type
Tags
global

array $_zp_album_handlers

Return values
mixed

addImageHandler()

registers object handlers for image varients

public static addImageHandler(type $suffix, type $objectName) : mixed
Parameters
$suffix : type
$objectName : type
Tags
global

array $_zp_extra_filetypes

Return values
mixed

checkforGuest()

Checks if guest is loggedin for the album

public checkforGuest([unknown_type &$hint = NULL ][, unknown_type &$show = NULL ]) : mixed
Parameters
$hint : unknown_type = NULL
$show : unknown_type = NULL
Return values
mixed

clearCache()

Cleans out the cache folder

public static clearCache([string $cachefolder = NULL ]) : mixed
Parameters
$cachefolder : string = NULL

the sub-folder to clean

Return values
mixed

commentClean()

public commentClean(mixed $table) : mixed
Parameters
$table : mixed
Return values
mixed

countHit()

counts visits to the object

public countHit() : mixed
Return values
mixed

garbageCollect()

For every album in the gallery, look for its file. Delete from the database if the file does not exist. Do the same for images. Clean up comments that have been left orphaned.

public garbageCollect([bool $cascade = true ][, bool $complete = false ][, int $restart = '' ]) : bool

Returns true if the operation was interrupted because it was taking too long

Parameters
$cascade : bool = true

garbage collect every image and album in the gallery.

$complete : bool = false

garbage collect every image and album in the database - completely cleans the database.

$restart : int = ''

Image ID to restart scan from

Return values
bool

get()

public get(mixed $field) : mixed
Parameters
$field : mixed
Return values
mixed

getAlbum()

Returns the a specific album in the array indicated by index.

public getAlbum(int $index) : Album

Takes care of bounds checking, no need to check input.

Parameters
$index : int

the index of the album sought

Return values
Album

getAlbumDir()

Returns the main albums directory

public getAlbumDir() : string
Return values
string

getAlbumPublish()

public getAlbumPublish() : mixed
Return values
mixed

getAlbums()

Get Albums will create our $albums array with a fully populated set of Album names in the correct order.

public getAlbums(int $page[, string $sorttype = null ][, string $sortdirection = null ][, bool $care = true ][, bool $mine = NULL ]) : array<string|int, mixed>

Returns an array of albums (a pages worth if $page is not zero)

Parameters
$page : int

An option parameter that can be used to return a slice of the array.

$sorttype : string = null

the kind of sort desired

$sortdirection : string = null

set to a direction to override the default option

$care : bool = true

set to false if the order of the albums does not matter

$mine : bool = NULL

set true/false to override ownership

Return values
array<string|int, mixed>

getAlbumSortKey()

Returns the DB field corresponding to the album sort type desired

public getAlbumSortKey([string $sorttype = null ]) : string
Parameters
$sorttype : string = null

the desired sort

Return values
string

getAlbumsPerPage()

Gets the albums per page setting

public getAlbumsPerPage() : int
Tags
since

ZemphotoCMS 1.6

Return values
int

getAlbumUseImagedate()

Option to update album date from date of new images

public getAlbumUseImagedate() : mixed
Return values
mixed

getAllAlbums()

Gets all albums with the right order as set on the backend.

public getAllAlbums([obj $albumobj = NULL ][, int $rights = UPLOAD_RIGHTS ][, bool $includetitles = true ]) : array<string|int, mixed>

Note while this is an very accurate result since this is using the filesystem to check and keeps the individuel sort order settings of each subalbum level it is therefore very slow on large galleries with thousands of albums.

Use the much faster but less accurate getAllAlbumsFromDB() instead if speed is needed. This is best used for any albums selector.

Note unless the §rights parameter is set to ALL_ALBUMS_RIGHTS or higher or the user is full admin dynamic albums are excluded.

Parameters
$albumobj : obj = NULL

Default null for all albums, optional albumobject to get all sublevels of

$rights : int = UPLOAD_RIGHTS

Rights constant to check the album access by, default UPLOAD_RIGHTS. Set to null to disable rights check

$includetitles : bool = true

If set to true (default) returns an array with the album names as keys and the titles as values, otherwise just an array with the names

Tags
since

Zenphoto 1.5.8 - general functionality moved from the old admin function genAlbumList()

Return values
array<string|int, mixed>

getAllAlbumsFromDB()

Gets all albums from the database direclty. This is less accurate than getAllAlbums() but much faster on large sites with thousends of albums especially if $keeplevel_sortorder is kept false.

public getAllAlbumsFromDB([bool $keeplevel_sortorder = false ][, obj $albumobj = NULL ][, int $rights = UPLOAD_RIGHTS ][, bool $includetitles = true ]) : array<string|int, mixed>

Note that the filesystem and databse may be out of sync in the moment of fetching the data. If you need to be sure to cover this use getAllAlbums();

$keeplevel_sortorder is false so the order follows their nesting but the sortorder of individual sublevels is not kept to archieve greater speed. Order is simply by folder name instead. Set to true each subalbum level follows its individual sort order setting. While this is also faster than getAllAlbums() this is significantly slower than the default.

Note unless the §rights parameter is set to ALL_ALBUMS_RIGHTS or higher or the user is full admin dynamic albums are excluded.

Parameters
$keeplevel_sortorder : bool = false

Default false, set to true if the sublevels should sorted by their individual settings (slower)

$albumobj : obj = NULL

Default null for all albums, optional albumobject to get all sublevels of

$rights : int = UPLOAD_RIGHTS

Rights constant to check the album access by, default UPLOAD_RIGHTS

$includetitles : bool = true

If set to true (default) returns an array with the album names as keys and the titles as values, otherwise just an array with the names

Tags
since

Zenphoto 1.5.8

Return values
array<string|int, mixed>

getBareTitle()

Returns a tag stripped title

public getBareTitle([string $locale = NULL ]) : string
Parameters
$locale : string = NULL
Return values
string

getCodeblock()

Returns the codeblocks as an serialized array

public getCodeblock() : array<string|int, mixed>
Return values
array<string|int, mixed>

getCopyrightNotice()

Gets the copyright notice

public getCopyrightNotice([type $locale = null ]) : type
Parameters
$locale : type = null
Tags
since

ZenphotoCMS 1.5.8

Return values
type

getCopyrightRightsholder()

Gets the copyright site holder

public getCopyrightRightsholder() : mixed

Note: This does not fetch an actual field value but with some fallbacks

  • 'copyright_site_rightsholder' field
  • 'copyright_site_rightsholder_custom' field
  • The site master user
Tags
see
getRightsholderCopyrightCustom()
see
getRightsholderCopyright()
since

ZenphotoCMS 1.5.8

Return values
mixed

getCopyrightURL()

Gets the copyright site url

public getCopyrightURL() : type
Tags
since

ZenphotoCMS 1.5.8

Return values
type

getCurrentTheme()

Returns the foldername of the current theme.

public getCurrentTheme() : string

if no theme is set, picks the "first" theme.

Return values
string

getDesc()

Returns the gallery description

public getDesc([mixed $locale = NULL ]) : string
Parameters
$locale : mixed = NULL
Return values
string

getFirstPageImages()

Gets the number of images if the thumb transintion page for sharing thumbs on the last album and the first image page

public static getFirstPageImages([obj $obj = null ][, bool $one_image_page = false ]) : int
Parameters
$obj : obj = null

Album object (or child class object) or searchengine object

$one_image_page : bool = false
Tags
since

ZenphotoCMS 1.6

Return values
int

getGallerySession()

Option of for gallery sessions

public getGallerySession() : mixed
Return values
mixed

getHitcounter()

Returns the hitcount

public getHitcounter() : int
Return values
int

getImagePublish()

public getImagePublish() : mixed
Return values
mixed

getNumAlbums()

Returns the total number of TOPLEVEL albums in the gallery (does not include sub-albums)

public getNumAlbums([bool $db = false ][, bool $publishedOnly = false ]) : int
Parameters
$db : bool = false

whether or not to use the database (includes ALL detected albums) or the directories

$publishedOnly : bool = false

set to true to exclude un-published albums

Return values
int

getNumComments()

Returns the count of comments

public getNumComments([bool $moderated = false ]) : array<string|int, mixed>
Parameters
$moderated : bool = false

set true if you want to see moderated comments

Return values
array<string|int, mixed>

getNumImages()

Returns the number of images in the gallery

public getNumImages(int $what) : int
Parameters
$what : int

0: all images from the database 1: published images from the database 2: "viewable" images via the object model

Return values
int

getParentSiteTitle()

Title to be used for a parent website if Zenphoto is used as a part of it

public getParentSiteTitle([string $locale = NULL ]) : string

œsince ZenphotoCMS 1.6

Parameters
$locale : string = NULL
Return values
string

getParentSiteURL()

URL to be used for a parent website if Zenphoto is used as a part of it

public getParentSiteURL() : string

œsince ZenphotoCMS 1.6

Return values
string

getPassword()

Returns the hashed password for guest gallery access

public getPassword() : mixed
Return values
mixed

getPasswordHint()

Returns the hind associated with the gallery password

public getPasswordHint([mixed $locale = NULL ]) : string
Parameters
$locale : mixed = NULL
Return values
string

getSecondLevelThumbs()

Option to show subalbum images in the thumbnail selector

public getSecondLevelThumbs() : mixed
Return values
mixed

getSecurity()

Option to allow only registered users view the site

public getSecurity() : mixed
Return values
mixed

getSortDirection()

public getSortDirection() : mixed
Return values
mixed

getSortType()

public getSortType() : mixed
Return values
mixed

getThemes()

Populates the theme array and returns it. The theme array contains information about all the currently available themes.

public getThemes() : array<string|int, mixed>
Return values
array<string|int, mixed>

getThumbSelectImages()

Option to show images in the thumbnail selector

public getThumbSelectImages() : mixed
Return values
mixed

getTitle()

Returns the gallery title

public getTitle([mixed $locale = NULL ]) : string
Parameters
$locale : mixed = NULL
Return values
string

getTotalPages()

Gets the total album pages

public getTotalPages() : int
Tags
since

ZenphotoCMS 1.6

Return values
int

getUserLogonField()

Option to expose the user field on logon forms

public getUserLogonField() : mixed
Return values
mixed

getWebsiteTitle()

Title to be used for a parent website if Zenphoto is used as a part of it

public getWebsiteTitle([string $locale = NULL ]) : string
Parameters
$locale : string = NULL
Tags
deprecated

ZenphotoCMS 2.0: Use the method getParentSiteTitle() instead

Return values
string

getWebsiteURL()

The URL of the home (not Zenphoto gallery) WEBsite

public getWebsiteURL() : string
Tags
deprecated

ZenphotoCMS 2.0: Use the method getParentSiteURL() instead

Return values
string

isProtected()

returns true if there is any protection on the gallery

public isProtected() : mixed
Return values
mixed

isUnprotectedPage()

Tests if a page is excluded from password protection

public isUnprotectedPage( $page) : mixed
Parameters
$page :
Return values
mixed

set()

public set(mixed $field, mixed $value) : mixed
Parameters
$field : mixed
$value : mixed
Return values
mixed

setAlbumPublish()

public setAlbumPublish(mixed $v) : mixed
Parameters
$v : mixed
Return values
mixed

setAlbumUseImagedate()

public setAlbumUseImagedate(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

setCodeblock()

set the codeblocks as an serialized array

public setCodeblock(mixed $cb) : mixed
Parameters
$cb : mixed
Return values
mixed

setCopyrightNotice()

Sets the copyright notice

public setCopyrightNotice(type $notice) : mixed
Parameters
$notice : type
Tags
since

ZenphotoCMS 1.5.8

Return values
mixed

setCopyrightURL()

Sets the copyright site url

public setCopyrightURL(type $url) : mixed
Parameters
$url : type
Tags
since

ZenphotoCMS 1.5.8

Return values
mixed

setCurrentTheme()

Sets the current theme

public setCurrentTheme(mixed $theme) : mixed
Parameters
$theme : mixed
Return values
mixed

setDesc()

Sets the gallery description

public setDesc(string $desc) : mixed
Parameters
$desc : string
Tags
since

ZenphotoCMS 1.5.8

Return values
mixed

setGallerySession()

public setGallerySession(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

setImagePublish()

public setImagePublish(mixed $v) : mixed
Parameters
$v : mixed
Return values
mixed

setParentSiteTitle()

Set the title to be used for a parent website if Zenphoto is used as a part of it

public setParentSiteTitle(mixed $value) : mixed

œsince ZenphotoCMS 1.6

Parameters
$value : mixed
Return values
mixed

setParentSiteURL()

The URL of the home (not Zenphoto gallery) WEBsite

public setParentSiteURL(mixed $value) : string

œsince ZenphotoCMS 1.6

Parameters
$value : mixed
Return values
string

setPassword()

public setPassword(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

setPasswordHint()

public setPasswordHint(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

setSecondLevelThumbs()

public setSecondLevelThumbs(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

setSecurity()

public setSecurity(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

setSortDirection()

public setSortDirection(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

setSortType()

public setSortType(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

setThumbSelectImages()

public setThumbSelectImages(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

setTitle()

public setTitle(mixed $title) : mixed
Parameters
$title : mixed
Return values
mixed

setUnprotectedPage()

public setUnprotectedPage(mixed $page, mixed $on) : mixed
Parameters
$page : mixed
$on : mixed
Return values
mixed

setUser()

public setUser(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

setUserLogonField()

public setUserLogonField(mixed $value) : mixed
Parameters
$value : mixed
Return values
mixed

setWebsiteTitle()

Set the title to be used for a parent website if Zenphoto is used as a part of it

public setWebsiteTitle(type $value) : mixed
Parameters
$value : type
Tags
deprecated

ZenphotoCMS 2.0: Use the method setParentSiteTitle() instead

Return values
mixed

setWebsiteURL()

Set URL of the home (not Zenphoto gallery) WEBsite

public setWebsiteURL(mixed $value) : string
Parameters
$value : mixed
Tags
deprecated

ZenphotoCMS 2.0: Use the method setParentSiteURL() instead

Return values
string

sortAlbumArray()

Sort the album array based on either according to the sort key.

public sortAlbumArray(mixed $parentalbum, array<string|int, mixed> $albums[, string $sortkey = '`sort_order`' ][, string $sortdirection = NULL ][, bool $mine = NULL ]) : array<string|int, mixed>

Default is to sort on the sort_order field.

Returns an array with the albums in the desired sort order

Parameters
$parentalbum : mixed
$albums : array<string|int, mixed>

array of album names

$sortkey : string = '`sort_order`'

the sorting scheme

$sortdirection : string = NULL
$mine : bool = NULL

set true/false to override ownership

Tags
author

Todd Papaioannou (lucky@luckyspin.org)

since
1.0.0
Return values
array<string|int, mixed>

validImage()

Returns true if the file is an image

public static validImage(string $filename) : bool
Parameters
$filename : string

the name of the target

Return values
bool

validImageAlt()

Returns true if the file is handled by an image handler plugin object

public static validImageAlt(string $filename) : bool
Parameters
$filename : string
Return values
bool

getImageCount()

private getImageCount(mixed $album) : mixed
Parameters
$album : mixed
Return values
mixed

loadAlbumNames()

Load all of the albums names that are found in the Albums directory on disk.

private loadAlbumNames() : array<string|int, mixed>

Returns an array containing this list.

Return values
array<string|int, mixed>

Search results