* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data
*
- * @property-read string|null $className
+ * @property-read string|null $className name of the PHP class whose object(s) act as processor
*/
class ProcessibleDatabaseObject extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Acl\Option
*
- * @property-read integer $optionID
- * @property-read integer $packageID
- * @property-read integer $objectTypeID
- * @property-read string $optionName
- * @property-read string $categoryName
+ * @property-read integer $optionID unique id of the acl option
+ * @property-read integer $packageID id of the package which delivers the acl option
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.acl` object type
+ * @property-read string $optionName name and textual identifier of the acl option
+ * @property-read string $categoryName name of the acl option category the option belongs to
*/
class ACLOption extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Acl\Option\Category
*
- * @property-read integer $categoryID
- * @property-read integer $packageID
- * @property-read integer $objectTypeID
- * @property-read string $categoryName
+ * @property-read integer $categoryID unique id of the acl option category
+ * @property-read integer $packageID id of the package which delivers the acl option category
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.acl` object type
+ * @property-read string $categoryName name and textual identifier of the acl option category
*/
class ACLOptionCategory extends DatabaseObject {}
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Acp\Menu\Item
*
- * @property-read integer $menuItemID
- * @property-read integer $packageID
- * @property-read string $menuItem
- * @property-read string $parentMenuItem
- * @property-read string $menuItemController
- * @property-read string $menuItemLink
- * @property-read integer $showOrder
- * @property-read string $permissions
- * @property-read string $options
- * @property-read string $icon
+ * @property-read integer $menuItemID unique id of the ACP menu item
+ * @property-read integer $packageID id of the package which delivers the ACP menu item
+ * @property-read string $menuItem textual identifier of the ACP menu item
+ * @property-read string $parentMenuItem textual identifier of the ACP menu item's parent menu item or empty if it has no parent menu item
+ * @property-read string $menuItemController class name of the ACP menu item's controller used to generate menu item link
+ * @property-read string $menuItemLink additional part of the ACP menu item link if `$menuItemController` is set, external link or name of language item which contains the external link
+ * @property-read integer $showOrder position of the ACP menu item in relation to its siblings
+ * @property-read string $permissions comma separated list of user group permissions of which the active user needs to have at least one to see the ACP menu item
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the ACP menu item to be shown
+ * @property-read string $icon FontAwesome CSS class name for ACP menu items on the first or third level
*/
class ACPMenuItem extends DatabaseObject implements ITreeMenuItem {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Acp\Search\Provider
*
- * @property-read integer $providerID
- * @property-read integer $packageID
- * @property-read string $providerName
- * @property-read string $className
- * @property-read integer $showOrder
+ * @property-read integer $providerID unique id of the ACP search provider
+ * @property-read integer $packageID id of the package which delivers the ACP search provider
+ * @property-read string $providerName textual identifier of the ACP search provider
+ * @property-read string $className class name of the `wcf\system\search\acp\IACPSearchResultProvider` implementation executing the search
+ * @property-read integer $showOrder position of the grouped results of the ACP search provider within the result list
*/
class ACPSearchProvider extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Acp\Session
*
- * @property-read string $sessionID
- * @property-read integer|null $userID
- * @property-read string $ipAddress
- * @property-read string $userAgent
- * @property-read integer $lastActivityTime
- * @property-read string $requestURI
- * @property-read string $requestMethod
- * @property-read string $controller
- * @property-read string $parentObjectType
- * @property-read integer $parentObjectID
- * @property-read string $objectType
- * @property-read integer $objectID
- * @property-read string $sessionVariables
+ * @property-read string $sessionID unique textual identifier of the acp session
+ * @property-read integer|null $userID id of the user the acp session belongs to or `null` if the acp session belongs to a guest
+ * @property-read string $ipAddress id of the user whom the acp session belongs to
+ * @property-read string $userAgent user agent of the user whom the acp session belongs to
+ * @property-read integer $lastActivityTime timestamp at which the latest activity occured
+ * @property-read string $requestURI uri of the latest request
+ * @property-read string $requestMethod used request method of the latest request (`GET`, `POST`)
*/
class ACPSession extends DatabaseObject {
/**
use wcf\util\UserUtil;
/**
- * Represents a session access log entry.
+ * Represents a acp session access log entry.
*
* @author Marcel Werk
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Acp\Session\Access\Log
*
- * @property-read integer $sessionAccessLogID
- * @property-read integer $sessionLogID
- * @property-read string $ipAddress
- * @property-read integer $time
- * @property-read string $requestURI
- * @property-read string $requestMethod
- * @property-read string $className
+ * @property-read integer $sessionAccessLogID unique id of the acp session access log entry
+ * @property-read integer $sessionLogID id of the acp session log entry the access log entry belongs to
+ * @property-read string $ipAddress ip address of the user who has caused the acp session access log entry
+ * @property-read integer $time timestamp at which the acp session access log entry has been created
+ * @property-read string $requestURI uri of the logged request
+ * @property-read string $requestMethod used request method (`GET`, `POST`)
+ * @property-read string $className name of the PHP controller class
*/
class ACPSessionAccessLog extends DatabaseObject {
/**
use wcf\util\UserUtil;
/**
- * Represents a session log entry.
+ * Represents a acp session log entry.
*
* @author Marcel Werk
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Acp\Session\Log
*
- * @property-read integer $sessionLogID
- * @property-read string $sessionID
- * @property-read integer|null $userID
- * @property-read string $ipAddress
- * @property-read string $hostname
- * @property-read string $userAgent
- * @property-read integer $time
- * @property-read integer $lastActivityTime
- * @property-read string|null $active
+ * @property-read integer $sessionLogID unique id of the acp session log entry
+ * @property-read string $sessionID id of the acp session the acp session log entry belongs to
+ * @property-read integer|null $userID id of the user who has caused the acp session log entry or `null` if TODO
+ * @property-read string $ipAddress ip address of the user who has caused the acp session access log entry
+ * @property-read string $hostname name of the internet host corresponding to the user's IP address
+ * @property-read string $userAgent user agent of the user who has caused the acp session access log entry
+ * @property-read integer $time timestamp at which the acp session log entry has been created
+ * @property-read integer $lastActivityTime timestamp at which the associated session has been active for the last time
+ * @property-read string|null $active has the corresponding acp session id as the value if the session is still active, otherwise `null`
*/
class ACPSessionLog extends DatabaseObject {
/**
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Acp\Session\Virtual
- *
- * @property-read integer $virtualSessionID
- * @property-read string $sessionID
- * @property-read string $ipAddress
- * @property-read string $userAgent
- * @property-read integer $lastActivityTime
- * @property-read string $sessionVariables
+ *
+ * @property-read integer $virtualSessionID unique id of the virtual acp session
+ * @property-read string $sessionID id of the acp session the virtual acp session belongs to
+ * @property-read string $ipAddress id of the user whom the virtual acp session belongs to
+ * @property-read string $userAgent user agent of the user whom the virtual acp session belongs to
+ * @property-read integer $lastActivityTime timestamp at which the latest activity occured
+ * @property-read string $sessionVariables serialized array with variables stored on a session-basis
*/
class ACPSessionVirtual extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Acp\Template
*
- * @property-read integer $templateID
- * @property-read integer|null $packageID
- * @property-read string $templateName
- * @property-read string $application
+ * @property-read integer $templateID unique id of the acp template
+ * @property-read integer|null $packageID id of the package which delivers the acp template
+ * @property-read string $templateName name of the template
+ * @property-read string $application abbreviation of the application to which the template belongs
*/
class ACPTemplate extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Ad
*
- * @property-read integer $adID
- * @property-read integer $objectTypeID
- * @property-read string $adName
- * @property-read string $ad
- * @property-read integer $isDisabled
- * @property-read integer $showOrder
+ * @property-read integer $adID unique id of the ad
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.adLocation` object type
+ * @property-read string $adName name of the ad shown in ACP
+ * @property-read string $ad ad text
+ * @property-read integer $isDisabled is `1` if the ad is disabled and thus not shown, otherwise `0`
+ * @property-read integer $showOrder position of the ad in relation to the other ads at the same location
*/
class Ad extends DatabaseObject implements IRouteController {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Application
*
- * @property-read integer $packageID
- * @property-read string $domainName
- * @property-read string $domainPath
- * @property-read string $cookieDomain
- * @property-read string $cookiePath
- * @property-read integer $isTainted
+ * @property-read integer $packageID id of the package which delivers the application
+ * @property-read string $domainName domain used to access the application (may not contain path components, see `$domainPath`)
+ * @property-read string $domainPath path used to access the application
+ * @property-read string $cookieDomain domain used to set cookies (corresponds to `domain` cookie property; may not contain path components, see `$cookiePath`)
+ * @property-read string $cookiePath path of the cookie (corresponds to `path` cookie property)
+ * @property-read integer $isTainted is `1` if the application is being uninstalled and thus should not be loaded during uninstallation, otherwise `0`
*/
class Application extends DatabaseObject {
/**
* @package WoltLabSuite\Core\Data\Article
* @since 3.0
*
- * @property-read integer $articleID
- * @property-read integer $userID
- * @property-read string $username
- * @property-read integer $time
- * @property-read integer $categoryID
- * @property-read integer $isMultilingual
- * @property-read integer $publicationStatus
- * @property-read integer $publicationDate
- * @property-read integer $enableComments
- * @property-read integer $comments
- * @property-read integer $views
- * @property-read integer $cumulativeLikes
+ * @property-read integer $articleID unique id of the article
+ * @property-read integer|null $userID id of the user the article belongs to or `null` if the user does not exist anymore
+ * @property-read string $username name of the user the article belongs to
+ * @property-read integer $time timestamp at which the comment has been written
+ * @property-read integer $categoryID id of the category the article belongs to
+ * @property-read integer $isMultilingual is `1` if the article is available in multiple languages, otherwise `0`
+ * @property-read integer $publicationStatus publication status of the article (see `Article::UNPUBLISHED`, `Article::PUBLISHED` and `Article::DELAYED_PUBLICATION`)
+ * @property-read integer $publicationDate timestamp at which the article will be automatically published or `0` if it has already been published
+ * @property-read integer $enableComments is `1` if comments are enabled for the article, otherwise `0`
+ * @property-read integer $comments number of comments on the article
+ * @property-read integer $views number of times the article has been viewed
+ * @property-read integer $cumulativeLikes cumulative result of likes (counting `+1`) and dislikes (counting `-1`) for the article
*/
class Article extends DatabaseObject implements ILinkableObject {
/**
* @package WoltLabSuite\Core\Data\Article\Content
* @since 3.0
*
- * @property-read integer $articleContentID
- * @property-read integer $articleID
- * @property-read integer $languageID
- * @property-read string $title
- * @property-read string $content
- * @property-read string $teaser
- * @property-read integer $imageID
- * @property-read integer $hasEmbeddedObjects
+ * @property-read integer $articleContentID unique id of the article content
+ * @property-read integer $articleID id of the article the article content belongs to
+ * @property-read integer $languageID id of the article content's language
+ * @property-read string $title title of the article in the associated language
+ * @property-read string $content actual content of the article in the associated language
+ * @property-read string $teaser teaser of the article in the associated language or empty if no teaser exists
+ * @property-read integer|null $imageID id of the (image) media object used as article image for the associated language or `null` if no image is used
+ * @property-read integer $hasEmbeddedObjects is `1` if there are embedded objects in the article content, otherwise `0`
*/
class ArticleContent extends DatabaseObject implements ILinkableObject, IRouteController {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Attachment
*
- * @property-read integer $attachmentID
- * @property-read integer $objectTypeID
- * @property-read integer|null $objectID
- * @property-read integer|null $userID
- * @property-read string $tmpHash
- * @property-read string $filename
- * @property-read integer $filesize
- * @property-read string $fileType
- * @property-read string $fileHash
- * @property-read integer $isImage
- * @property-read integer $width
- * @property-read integer $height
- * @property-read string $tinyThumbnailType
- * @property-read integer $tinyThumbnailSize
- * @property-read integer $tinyThumbnailWidth
- * @property-read integer $tinyThumbnailHeight
- * @property-read string $thumbnailType
- * @property-read integer $thumbnailSize
- * @property-read integer $thumbnailWidth
- * @property-read integer $thumbnailHeight
- * @property-read integer $downloads
- * @property-read integer $lastDownloadTime
- * @property-read integer $uploadTime
- * @property-read integer $showOrder
+ * @property-read integer $attachmentID unique id of the attachment
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.attachment.objectType` object type
+ * @property-read integer|null $objectID id of the attachment container object the attachment belongs to
+ * @property-read integer|null $userID id of the user who uploaded the attachment or `null` if the user does not exist anymore or if the attachment has been uploaded by a guest
+ * @property-read string $tmpHash temporary hash used to identify uploaded attachments but not associated with an object yet or empty if the attachment has been associated with an object
+ * @property-read string $filename name of the physical attachment file
+ * @property-read integer $filesize size of the physical attachment file
+ * @property-read string $fileType type of the physical attachment file
+ * @property-read string $fileHash hash of the physical attachment file
+ * @property-read integer $isImage is `1` if the attachment is an image, otherwise `0`
+ * @property-read integer $width width of the attachment if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $height height of the attachment if `$isImage` is `1`, otherwise `0`
+ * @property-read string $tinyThumbnailType type of the tiny thumbnail file for the attachment if `$isImage` is `1`, otherwise empty
+ * @property-read integer $tinyThumbnailSize size of the tiny thumbnail file for the attachment if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $tinyThumbnailWidth width of the tiny thumbnail file for the attachment if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $tinyThumbnailHeight height of the tiny thumbnail file for the attachment if `$isImage` is `1`, otherwise `0`
+ * @property-read string $thumbnailType type of the thumbnail file for the attachment if `$isImage` is `1`, otherwise empty
+ * @property-read integer $thumbnailSize size of the thumbnail file for the attachment if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $thumbnailWidth width of the thumbnail file for the attachment if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $thumbnailHeight height of the thumbnail file for the attachment if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $downloads number of times the attachment has been downloaded
+ * @property-read integer $lastDownloadTime timestamp at which the attachment has been downloaded the last time
+ * @property-read integer $uploadTime timestamp at which the attachment has been uploaded
+ * @property-read integer $showOrder position of the attachment in relation to the other attachment to the same message
*/
class Attachment extends DatabaseObject implements IRouteController, IThumbnailFile {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Bbcode
*
- * @property-read integer $bbcodeID
- * @property-read string $bbcodeTag
- * @property-read integer $packageID
- * @property-read string $htmlOpen
- * @property-read string $htmlClose
- * @property-read string $className
- * @property-read integer $isBlockElement
- * @property-read string $wysiwygIcon
- * @property-read string $buttonLabel
- * @property-read integer $isSourceCode
- * @property-read integer $showButton
- * @property-read integer $originIsSystem
+ * @property-read integer $bbcodeID unique id of the bbcode
+ * @property-read string $bbcodeTag tag of the bbcode
+ * @property-read integer $packageID id of the package which delivers the bbcode or `1` if it has been created in the acp
+ * @property-read string $htmlOpen html code of the opening tag (without the less-than sign and greater-than sign) or empty if no such html code exists
+ * @property-read string $htmlClose html code of the closing tag (without the less-than sign and greater-than sign) or empty if no such html code exists
+ * @property-read string $className name of the PHP class impementing `wcf\system\bbcode\IBBCode` or empty if no such class exists
+ * @property-read integer $isBlockElement is `1` if the bbcode represents a block element and thus can contain multiple lines, otherwise `0`
+ * @property-read string $wysiwygIcon css class name used as icon for the bbcode in the editor toolbar
+ * @property-read string $buttonLabel name of the language item used as button label for the bbcode in the editor toolbar
+ * @property-read integer $isSourceCode is `1` if the bbcode's content is treated as source code, otherwise `0`
+ * @property-read integer $showButton is `1` if a button for the bbcode will be shown in the editor toolbar, otherwise `0`
+ * @property-read integer $originIsSystem is `1` if the bbcode has been delivered by a package, otherwise `0` (if the bbcode has been created by an admin in the acp)
*/
class BBCode extends ProcessibleDatabaseObject implements IRouteController {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Bbcode\Attribute
*
- * @property-read integer $attributeID
- * @property-read integer $bbcodeID
- * @property-read integer $attributeNo
- * @property-read string $attributeHtml
- * @property-read string $validationPattern
- * @property-read integer $required
- * @property-read integer $useText
+ * @property-read integer $attributeID unique id of the bbcode attribute
+ * @property-read integer $bbcodeID id of the bbcode the attribute belongs to
+ * @property-read integer $attributeNo number of bbcode attribute
+ * @property-read string $attributeHtml html code used to render the bbcode attribute or empty if no such html code exists
+ * @property-read string $validationPattern regular expression used to validate the bbcode attribute's value or empty if no such regular expression exists
+ * @property-read integer $required is `1` if the bbcode attribute is required of the bbcode, otherwise `0`
+ * @property-read integer $useText is `1` if the bbcode's content will be used as the bbcode attribute value
*/
class BBCodeAttribute extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Bbcode\Media\Provider
*
- * @property-read integer $providerID
- * @property-read string $title
- * @property-read string $regex
- * @property-read string $html
+ * @property-read integer $providerID unique id of the bbcode media provider
+ * @property-read string $title title of the bbcode media provider (shown in acp)
+ * @property-read string $regex regular expression to recognize media elements/element urls
+ * @property-read string $html html code used to render media elements
*/
class BBCodeMediaProvider extends DatabaseObject implements IRouteController {
/**
* @package WoltLabSuite\Core\Data\Box
* @since 3.0
*
- * @property-read integer $boxID
+ * @property-read integer $boxID unique id of the box
* @property-read integer|null $objectTypeID id of the box controller object type
- * @property-read string $identifier
- * @property-read string $name
- * @property-read string $boxType
- * @property-read string $position
- * @property-read integer $showOrder
- * @property-read integer $visibleEverywhere
- * @property-read integer $isMultilingual
- * @property-read string $cssClassName
- * @property-read integer $showHeader
- * @property-read integer $originIsSystem
- * @property-read integer $packageID
- * @property-read integer|null $menuID
- * @property-read integer $linkPageID
- * @property-read integer $linkPageObjectID
- * @property-read string $externalURL
- * @property-read mixed[] $additionalData
+ * @property-read string $identifier unique textual identifier of the box
+ * @property-read string $name monolingual name of the box shown in the ACP
+ * @property-read string $boxType type of the box which determines the method of outputting its content (default box types are `text`, `html`, `tpl`, `system`)
+ * @property-read string $position name of the position on the page at which the box is shown
+ * @property-read integer $showOrder position of the box in relation to its siblings
+ * @property-read integer $visibleEverywhere is `1` if the box is visible on every page, otherwise `0`
+ * @property-read integer $isMultilingual is `1` if the box content is available in multiple languages, otherwise `0`
+ * @property-read string $cssClassName css class name(s) of the box
+ * @property-read integer $showHeader is `1` if the box header will be shown, otherwise `0`
+ * @property-read integer $originIsSystem is `1` if the box has been delivered by a package, otherwise `0` (i.e. the box has been created in the ACP)
+ * @property-read integer $packageID id of the package which delivers the box or `1` if it has been created in the ACP
+ * @property-read integer|null $menuID id of the menu whose menu items are shown in the contents if `$boxType = menu`, otherwise `null`
+ * @property-read integer|null $linkPageID id of the (internal) page the box image and box title are linking to or `null` if no internal page is linked
+ * @property-read integer $linkPageObjectID id of the object the (internal) page links refers to or `0` if no internal link is used or no specific object is linked
+ * @property-read string $externalURL external link used to for the box image and box title or empty if no external link is set
+ * @property-read array $additionalData array with additional data of the box
*/
class Box extends DatabaseObject {
/**
* @package WoltLabSuite\Core\Data\Box\Content
* @since 3.0
*
- * @property-read integer $boxContentID
- * @property-read integer $boxID
- * @property-read integer $languageID
- * @property-read string $title
- * @property-read string $content
- * @property-read integer $imageID
- * @property-read integer $hasEmbeddedObjects
+ * @property-read integer $boxContentID unique id of the box content
+ * @property-read integer $boxID id of the box the box content belongs to
+ * @property-read integer $languageID id of the box content's language
+ * @property-read string $title title of the page in the associated language
+ * @property-read string $content actual content of the box in the associated language
+ * @property-read integer|null $imageID id of the (image) media object used as box image for the associated language or `null` if no image is used
+ * @property-read integer $hasEmbeddedObjects is `1` if the box content contains embedded objects, otherwise `0`
*/
class BoxContent extends DatabaseObject {
/**
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Captcha\Question
- *
- * @property-read integer $questionID
- * @property-read string $question
- * @property-read string $answers
- * @property-read integer $isDisabled
+ *
+ * @property-read integer $questionID unique id of the captcha question
+ * @property-read string $question question of the captcha or name of language item which contains the question
+ * @property-read string $answers newline-separated list of answers or name of language item which contains the answers
+ * @property-read integer $isDisabled is `1` if the captcha question is disabled and thus not offered to answer, otherwise `0`
*/
class CaptchaQuestion extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Category
*
- * @property-read integer $categoryID
- * @property-read integer $objectTypeID
- * @property-read integer $parentCategoryID
- * @property-read string $title
- * @property-read string $description
- * @property-read integer $showOrder
- * @property-read integer $time
- * @property-read integer $isDisabled
- * @property-read array $additionalData
+ * @property-read integer $categoryID unique id of the category
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.category` object type
+ * @property-read integer $parentCategoryID id of the category's parent category or `0` if it has no parent category
+ * @property-read string $title title of the category or name of language item which contains the title
+ * @property-read string $description description of the category or name of language item which contains the description
+ * @property-read integer $showOrder position of the category in relation to its siblings
+ * @property-read integer $time timestamp at which the comment has been created
+ * @property-read integer $isDisabled is `1` if the category is disabled and thus neither accessible nor selectable, otherwise `0`
+ * @property-read array $additionalData array with additional data of the category
*/
class Category extends ProcessibleDatabaseObject implements IPermissionObject, IRouteController {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Clipboard\Action
*
- * @property-read integer $actionID
- * @property-read integer $packageID
- * @property-read string $actionName
- * @property-read string $actionClassName
- * @property-read integer $showOrder
+ * @property-read integer $actionID unique id of the clipboard action
+ * @property-read integer $packageID id of the package which delivers the clipboard action
+ * @property-read string $actionName name and textual identifier of the clipboard action
+ * @property-read string $actionClassName PHP class name implementing `wcf\system\clipboard\action\IClipboardAction`
+ * @property-read integer $showOrder position of the clipboard action in relation to the other clipboard actions
*/
class ClipboardAction extends DatabaseObject {}
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Comment
*
- * @property-read integer $commentID
- * @property-read integer $objectTypeID
- * @property-read integer $objectID
- * @property-read integer $time
- * @property-read integer|null $userID
- * @property-read string $username
- * @property-read string $message
- * @property-read integer $responses
- * @property-read string $responseIDs
+ * @property-read integer $commentID unique id of the comment
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.comment.commentableContent` object type
+ * @property-read integer $objectID id of the commented object of the object type represented by `$objectTypeID`
+ * @property-read integer $time timestamp at which the comment has been written
+ * @property-read integer|null $userID id of the user who wrote the comment or `null` if the user does not exist anymore or if the comment has been written by a guest
+ * @property-read string $username name of the user or guest who wrote the comment
+ * @property-read string $message comment message
+ * @property-read integer $responses number of responses on the comment
+ * @property-read string $responseIDs serialized array with the ids of the five latest comment responses
*/
class Comment extends DatabaseObject implements IMessage {
use TUserContent;
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Comment\Response
*
- * @property-read integer $responseID
- * @property-read integer $commentID
- * @property-read integer $time
- * @property-read integer|null $userID
- * @property-read string $username
- * @property-read string $message
+ * @property-read integer $responseID unique id of the comment response
+ * @property-read integer $commentID id of the comment the comment response belongs to
+ * @property-read integer $time timestamp at which the comment response has been written
+ * @property-read integer|null $userID id of the user who wrote the comment response or `null` if the user does not exist anymore or if the comment response has been written by a guest
+ * @property-read string $username name of the user or guest who wrote the comment response
+ * @property-read string $message comment response message
*/
class CommentResponse extends DatabaseObject implements IMessage {
use TUserContent;
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Condition
*
- * @property-read integer $conditionID
- * @property-read integer $objectTypeID
- * @property-read integer $objectID
- * @property-read array $conditionData
+ * @property-read integer $conditionID unique id of the condition
+ * @property-read integer $objectTypeID id of the condition object type (of different condition object type definitions)
+ * @property-read integer $objectID id of the conditioned object of the object type represented by `$objectTypeID`
+ * @property-read array $conditionData array with the condition data with is processed by the condition object type's processor
*/
class Condition extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Core\Object
*
- * @property-read integer $objectID
- * @property-read integer $packageID
- * @property-read string $objectName
+ * @property-read integer $objectID unique id of the core object
+ * @property-read integer $packageID id of the package which delivers the core object
+ * @property-read string $objectName PHP class name of the core object
*/
class CoreObject extends DatabaseObject {}
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Cronjob
*
- * @property-read integer $cronjobID
- * @property-read string $className
- * @property-read integer $packageID
- * @property-read string $cronjobName
- * @property-read string $description
- * @property-read string $startMinute
- * @property-read string $startHour
- * @property-read string $startDom
- * @property-read string $startMonth
- * @property-read string $startDow
- * @property-read integer $lastExec
- * @property-read integer $nextExec
- * @property-read integer $afterNextExec
- * @property-read integer $isDisabled
- * @property-read integer $canBeEdited
- * @property-read integer $canBeDisabled
- * @property-read integer $state
- * @property-read integer $failCount
- * @property-read string $options
+ * @property-read integer $cronjobID unique id of the cronjob
+ * @property-read string $className PHP class name implementing `wcf\system\cronjob\ICronjob`
+ * @property-read integer $packageID id of the package which delivers the cronjob or the id of the active application during creation in the ACP
+ * @property-read string $cronjobName name and textual identifier of the cronjob
+ * @property-read string $description description of the cronjob or name of language item which contains the description
+ * @property-read string $startMinute minutes in the hour at which the cronjob is executed, wildcard `*` (any minute) or a rule using wildcard `*`
+ * @property-read string $startHour hour in the day at which the cronjob is executed, wildcard `*` (any hour) or a rule using wildcard `*`
+ * @property-read string $startDom day of the month at which the cronjob is executed, wildcard `*` (any day) or a rule using wildcard `*`
+ * @property-read string $startMonth month in the year in which the cronjob is executed, wildcard `*` (any month) or a rule using wildcard `*`
+ * @property-read string $startDow day in the week at which the cronjob is executed, wildcard `*` (any day) or a rule using wildcard `*`
+ * @property-read integer $lastExec timestamp at which the cronjob has been executed the last time
+ * @property-read integer $nextExec timestamp at which the cronjob will be executed next
+ * @property-read integer $afterNextExec timestamp at which the cronjob will be executed after next
+ * @property-read integer $isDisabled is `1` if the cronjob is disabled and thus not executed, otherwise `0`
+ * @property-read integer $canBeEdited is `1` if the cronjob can be edited in the ACP, otherwise `0`
+ * @property-read integer $canBeDisabled is `1` if the cronjob can be disabled in the ACP so that it will not be executed, otherwise `0`
+ * @property-read integer $state current state of the cronjob (see `Cronjob::READY`, `Cronjob::PENDING`, `Cronjob::EXECUTING` and `Cronjob::MAX_FAIL_COUNT`)
+ * @property-read integer $failCount number of times the cronjob execution failed consecutively
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the cronjob to be executed
*/
class Cronjob extends DatabaseObject {
use TDatabaseObjectOptions;
use wcf\data\DatabaseObject;
/**
- * Represents a croniob log.
+ * Represents a cronjob execution log.
*
* @author Alexander Ebert
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Cronjob\Log
*
- * @property-read integer $cronjobLogID
- * @property-read integer $cronjobID
- * @property-read integer $execTime
- * @property-read integer $success
- * @property-read string $error
+ * @property-read integer $cronjobLogID unique id of the cronjob execution log
+ * @property-read integer $cronjobID id of the cronjob the log belongs to
+ * @property-read integer $execTime timestamp at which the cronjob has been executed
+ * @property-read integer $success is `1` if the cronjob has been successfully executed, otherwise `0`
+ * @property-read string $error error message if the cronjob did not execute successfully, otherwise empty
*/
class CronjobLog extends DatabaseObject {
/**
use wcf\data\DatabaseObject;
/**
- * Represents an edit history entry
+ * Represents an edit history entry.
*
* @author Tim Duesterhus
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Edit\History\Entry
- *
- * @property-read integer $entryID
- * @property-read integer $objectTypeID
- * @property-read integer $objectID
- * @property-read integer|null $userID
- * @property-read string $username
- * @property-read integer $time
- * @property-read integer $obsoletedAt
- * @property-read integer|null $obsoletedByUserID
- * @property-read string $message
- * @property-read string $editReason
+ *
+ * @property-read integer $entryID unique id of the edit history entry
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.edit.historySavingObject` object type
+ * @property-read integer $objectID id of the edited object of the object type with id `$objectTypeID`
+ * @property-read integer|null $userID id of the user who has created the previous version of the object or `null` if the user does not exist anymore or if the previous version has been created by a guest
+ * @property-read string $username name of the user who has created the previous version of the object
+ * @property-read integer $time timestamp at which the original version has been created
+ * @property-read integer $obsoletedAt timestamp at which the edited version has been created and time used for clean up
+ * @property-read integer|null $obsoletedByUserID id of the user who has created this version of the object
+ * @property-read string $message message of the edited object prior to the edit
+ * @property-read string $editReason reason for the edit
*/
class EditHistoryEntry extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Event\Listener
*
- * @property-read integer $listenerID
- * @property-read integer $packageID
- * @property-read string $environment
- * @property-read string $listenerName
- * @property-read string $eventClassName
- * @property-read string $eventName
- * @property-read string $listenerClassName
- * @property-read integer $inherit
- * @property-read integer $niceValue
- * @property-read string $permissions
- * @property-read string $options
+ * @property-read integer $listenerID unique id of the event listener
+ * @property-read integer $packageID id of the package which delivers the event listener
+ * @property-read string $environment environment in which the event listener is executed, possible values: 'user' or 'admin'
+ * @property-read string $listenerName name and textual identifier of the event listener
+ * @property-read string $eventClassName name of the class in which the listened event is fired
+ * @property-read string $eventName name of the listened event
+ * @property-read string $listenerClassName class name of the event listener class
+ * @property-read integer $inherit is `1` if the event listener is also executed for classes inheriting from the listened class, otherwise `0`
+ * @property-read integer $niceValue value from [-128, 127] used to determine event listener execution order (event listeners with smaller `$niceValue` are executed first)
+ * @property-read string $permissions comma separated list of user group permissions of which the active user needs to have at least one for the event listener to be executed
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the event listener to be executed
*/
class EventListener extends DatabaseObject {
use TDatabaseObjectOptions;
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Label
*
- * @property-read integer $labelID
- * @property-read integer $groupID
- * @property-read string $label
- * @property-read string $cssClassName
- * @property-read integer $showOrder
+ * @property-read integer $labelID unique id of the label
+ * @property-read integer $groupID id of the label group the label belongs to
+ * @property-read string $label label text or name of language item which contains the label text
+ * @property-read string $cssClassName css class name used when displaying the label
+ * @property-read integer $showOrder position of the label in relation to the other labels in the label group
*/
class Label extends DatabaseObject implements IRouteController {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Label\Group
*
- * @property-read integer $groupID
- * @property-read string $groupName
- * @property-read string $groupDescription
- * @property-read integer $forceSelection
- * @property-read integer $showOrder
+ * @property-read integer $groupID unique id of the label group
+ * @property-read string $groupName name of the label group or name of language item which contains the label text
+ * @property-read string $groupDescription description of the label group (only shown in ACP)
+ * @property-read integer $forceSelection is `1` if a label in the label group has to be selected when creating an object for which the label group is available, otherwise `0`
+ * @property-read integer $showOrder position of the label group in relation to the other label groups
*/
class LabelGroup extends DatabaseObject implements IRouteController {
/**
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Language
- *
- * @property-read integer $languageID
- * @property-read string $languageCode
- * @property-read string $languageName
- * @property-read string $countryCode
- * @property-read integer $isDefault
- * @property-read integer $hasContent
- * @property-read integer $isDisabled
+ *
+ * @property-read integer $languageID unique id of the language
+ * @property-read string $languageCode code of the language according to ISO 639-1
+ * @property-read string $languageName name of the language within the language itself
+ * @property-read string $countryCode code of the country using the language according to ISO 3166-1, used to determine the language's country flag
+ * @property-read integer $isDefault is `1` if the language is the default language, otherwise `0`
+ * @property-read integer $hasContent is `1` if the language can be selected when creating language-specific content, otherwise `0`
+ * @property-read integer $isDisabled is `1` if the language is disabled and thus not selectable, otherwise `0`
*/
class Language extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Language\Category
*
- * @property-read integer $languageCategoryID
- * @property-read string $languageCategory
+ * @property-read integer $languageCategoryID unique id of the language category
+ * @property-read string $languageCategory name and textual identifier of the language category
*/
class LanguageCategory extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Language\Item
*
- * @property-read integer $languageItemID
- * @property-read integer $languageID
- * @property-read string $languageItem
- * @property-read string $languageItemValue
- * @property-read string $languageCustomItemValue
- * @property-read integer $languageUseCustomValue
- * @property-read integer $languageItemOriginIsSystem
- * @property-read integer $languageCategoryID
- * @property-read integer|null $packageID
+ * @property-read integer $languageItemID unique id of the language item
+ * @property-read integer $languageID id of the language the language item belongs to
+ * @property-read string $languageItem name and textual identifier of the language item
+ * @property-read string $languageItemValue default value of the language item
+ * @property-read string $languageCustomItemValue custom value of the language item set by an admin
+ * @property-read integer $languageUseCustomValue is `1` if the custom value is used instead of the default value, otherwise `0`
+ * @property-read integer $languageItemOriginIsSystem is `1` if the language item has been delivered by a package, otherwise `0` (for example, if language item has been created for i18n content)
+ * @property-read integer $languageCategoryID id of the language category the language item belongs to
+ * @property-read integer|null $packageID id of the package the which delivers the language item or with which the language item is associated
*/
class LanguageItem extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Like
*
- * @property-read integer $likeID
- * @property-read integer $objectID
- * @property-read integer $objectTypeID
- * @property-read integer|null $objectUserID
- * @property-read integer $userID
- * @property-read integer $time
- * @property-read integer $likeValue
+ * @property-read integer $likeID unique id of the like
+ * @property-read integer $objectID id of the liked object
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.like.likeableObject` object type
+ * @property-read integer|null $objectUserID id of the user who created the liked object or null if user has been deleted or object was created by guest
+ * @property-read integer $userID id of the user who created the like
+ * @property-read integer $time timestamp at which the like has been created
+ * @property-read integer $likeValue value of the like (`+1` = like, `-1` = dislike, see `Like::LIKE` and `Like::Dislike`)
*/
class Like extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Like\Object
*
- * @property-read integer $likeObjectID
- * @property-read integer $objectTypeID
- * @property-read integer $objectID
- * @property-read integer|null $objectUserID
- * @property-read integer $likes
- * @property-read integer $dislikes
- * @property-read integer $cumulativeLikes
- * @property-read string $cachedUsers
+ * @property-read integer $likeObjectID unique id of the liked object
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.like.likeableObject` object type
+ * @property-read integer $objectID id of the liked object
+ * @property-read integer|null $objectUserID id of the user who created the liked object or null if user has been deleted or object was created by guest
+ * @property-read integer $likes number of likes of the liked object
+ * @property-read integer $dislikes number of dislikes of the liked object
+ * @property-read integer $cumulativeLikes cumulative result of likes (counting +1) and dislikes (counting -1)
+ * @property-read string $cachedUsers serialized array with the ids and names of the three users who liked (+1) the object last
*/
class LikeObject extends DatabaseObject {
/**
* @package WoltLabSuite\Core\Data\Media
* @since 3.0
*
- * @property-read integer $mediaID
- * @property-read string $filename
- * @property-read integer $filesize
- * @property-read string $fileType
- * @property-read string $fileHash
- * @property-read integer $uploadTime
- * @property-read integer|null $userID
- * @property-read string $username
- * @property-read integer|null $languageID
- * @property-read integer $isMultilingual
- * @property-read integer $isImage
- * @property-read integer $width
- * @property-read integer $height
- * @property-read string $tinyThumbnailType
- * @property-read integer $tinyThumbnailSize
- * @property-read integer $tinyThumbnailWidth
- * @property-read integer $tinyThumbnailHeight
- * @property-read string $smallThumbnailType
- * @property-read integer $smallThumbnailSize
- * @property-read integer $smallThumbnailWidth
- * @property-read integer $smallThumbnailHeight
- * @property-read string $mediumThumbnailType
- * @property-read integer $mediumThumbnailSize
- * @property-read integer $mediumThumbnailWidth
- * @property-read integer $mediumThumbnailHeight
- * @property-read string $largeThumbnailType
- * @property-read integer $largeThumbnailSize
- * @property-read integer $largeThumbnailWidth
- * @property-read integer $largeThumbnailHeight
+ * @property-read integer $mediaID unique id of the media file
+ * @property-read string $filename name of the physical media file
+ * @property-read integer $filesize size of the physical media file
+ * @property-read string $fileType type of the physical media file
+ * @property-read string $fileHash hash of the physical media file
+ * @property-read integer $uploadTime timestamp at which the media file has been uploaded
+ * @property-read integer|null $userID id of the user who uploaded the media file or null if the user does not exist anymore
+ * @property-read string $username name of the user who uploaded the media file
+ * @property-read integer|null $languageID id of the language associated with the media file or null if the media file is multilingual or if the language has been deleted
+ * @property-read integer $isMultilingual is `1` if the media file's title, description and altText is available in multiple languages, otherwise `0`
+ * @property-read integer $isImage is `1` if the media file is an image, otherwise `0`
+ * @property-read integer $width width of the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $height height of the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read string $tinyThumbnailType type of the tiny thumbnail file for the media file if `$isImage` is `1`, otherwise empty
+ * @property-read integer $tinyThumbnailSize size of the tiny thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $tinyThumbnailWidth width of the tiny thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $tinyThumbnailHeight height of the tiny thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read string $smallThumbnailType type of the small thumbnail file for the media file if `$isImage` is `1`, otherwise empty
+ * @property-read integer $smallThumbnailSize size of the small thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $smallThumbnailWidth width of the small thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $smallThumbnailHeight height of the small thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read string $mediumThumbnailType type of the medium thumbnail file for the media file if `$isImage` is `1`, otherwise empty
+ * @property-read integer $mediumThumbnailSize size of the medium thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $mediumThumbnailWidth width of the medium thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $mediumThumbnailHeight height of the medium thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read string $largeThumbnailType type of the large thumbnail file for the media file if `$isImage` is `1`, otherwise empty
+ * @property-read integer $largeThumbnailSize size of the large thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $largeThumbnailWidth width of the large thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
+ * @property-read integer $largeThumbnailHeight height of the large thumbnail file for the media file if `$isImage` is `1`, otherwise `0`
*/
class Media extends DatabaseObject implements ILinkableObject, IRouteController, IThumbnailFile {
/**
*
* @method Media getDecoratedObject()
* @mixin Media
- * @property-read string|null $title
- * @property-read string|null $description
- * @property-read string|null $altText
+ * @property-read string|null $title title of the media file in the active user's language or `null` if object has not been fetched via `ViewableMediaList`
+ * @property-read string|null $description description of the media file in the active user's language or `null` if object has not been fetched via `ViewableMediaList`
+ * @property-read string|null $altText alternative text of the media file in the active user's language or `null` if object has not been fetched via `ViewableMediaList`
*/
class ViewableMedia extends DatabaseObjectDecorator {
/**
* @package WoltLabSuite\Core\Data\Menu
* @since 3.0
*
- * @property-read integer $menuID
- * @property-read string $identifier
- * @property-read string $title
- * @property-read integer $originIsSystem
- * @property-read integer $packageID
+ * @property-read integer $menuID unique id of the menu
+ * @property-read string $identifier textual identifier of the menu
+ * @property-read string $title title of the menu or name of language item which contains the title
+ * @property-read integer $originIsSystem is `1` if the menu has been delivered by a package, otherwise `0` (if the menu has been created by an admin in the ACP)
+ * @property-read integer $packageID id of the package the which delivers the menu or `1` if it has been created in the ACP
*/
class Menu extends DatabaseObject {
/**
* @package WoltLabSuite\Core\Data\Menu\Item
* @since 3.0
*
- * @property-read integer $itemID
- * @property-read integer $menuID
- * @property-read integer|null $parentItemID
- * @property-read string $identifier
- * @property-read string $title
- * @property-read integer|null $pageID
- * @property-read integer $pageObjectID
- * @property-read string $externalURL
- * @property-read integer $showOrder
- * @property-read integer $isDisabled
- * @property-read integer $originIsSystem
- * @property-read integer $packageID
+ * @property-read integer $itemID unique id of the menu item
+ * @property-read integer $menuID id of the menu the menu item belongs to
+ * @property-read integer|null $parentItemID id of the menu item's parent menu item or null if it has no parent menu item
+ * @property-read string $identifier textual identifier of the menu item
+ * @property-read string $title title of the menu item or name of language item which contains title
+ * @property-read integer|null $pageID id of the linked `wcf\data\page\Page` object or null of no such page is linked
+ * @property-read integer $pageObjectID id of the object required to show the page referenced by `$pageID`
+ * @property-read string $externalURL external link of the menu item
+ * @property-read integer $showOrder position of the menu item in relation to its siblings
+ * @property-read integer $isDisabled is `1` if the menu item is disabled and thus not shown in the menu, otherwise `0`
+ * @property-read integer $originIsSystem is `1` if the menu item has been delivered by a package, otherwise `0` (if the menu item has been created by an admin in the ACP)
+ * @property-read integer $packageID id of the package the which delivers the menu item or `1` if it has been created in the ACP
*/
class MenuItem extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Moderation\Queue
*
- * @property-read integer $queueID
- * @property-read integer $objectTypeID
- * @property-read integer $objectID
- * @property-read integer $containerID
- * @property-read integer|null $userID
- * @property-read integer $time
- * @property-read integer|null $assignedUserID
- * @property-read integer $status
- * @property-read integer $comments
- * @property-read integer $lastChangeTime
- * @property-read array $additionalData
+ * @property-read integer $queueID unique id of the moderation queue entry
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.moderation.type` object type
+ * @property-read integer $objectID id of the object of the object type with id `$objectTypeID` to which the moderation queue entry belongs to
+ * @property-read integer $containerID id of the object's container object to which the modification log entry belongs to or `0` if no such container object exists or is logged
+ * @property-read integer|null $userID id of the user who created the moderation queue entry or `null` if the user does not exist anymore or if the moderation queue entry has been created by a guest
+ * @property-read integer $time timestamp at which the moderation queue entry has been created
+ * @property-read integer|null $assignedUserID id of the user to which the moderation queue entry is assigned or `null` if it is not assigned to any user
+ * @property-read integer $status status of the moderation queue entry (see `ModerationQueue::STATUS_*` constants)
+ * @property-read integer $comments number of comments on the moderation queue entry
+ * @property-read integer $lastChangeTime timestamp at which the moderation queue entry has been changed the last time
+ * @property-read array $additionalData array with additional data of the moderation queue entry
*/
class ModerationQueue extends DatabaseObject {
// states of column 'status'
use wcf\data\DatabaseObject;
/**
- * Represents a modification log.
+ * Represents a modification log entry.
*
* @author Alexander Ebert
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Modification\Log
- *
- * @property-read integer $logID
- * @property-read integer $objectTypeID
- * @property-read integer $objectID
- * @property-read integer|null $parentObjectID
- * @property-read integer|null $userID
- * @property-read string $username
- * @property-read integer $time
- * @property-read string $action
- * @property-read array $additionalData
+ *
+ * @property-read integer $logID unique id of the modification log entry
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.modifiableContent` object type
+ * @property-read integer $objectID id of the object of the object type with id `$objectTypeID` to which the modification log entry belongs to
+ * @property-read integer|null $parentObjectID id of the object's parent object to which the modification log entry belongs to or `null` if no such parent object exists or is logged
+ * @property-read integer|null $userID id of the user who caused the modification log entry or `null` if the user does not exist anymore or if the modification log entry has been caused by a guest
+ * @property-read string $username name of the user or guest who caused the modification log entry
+ * @property-read integer $time timestamp at which the modification log entry has been created
+ * @property-read string $action name of the modification action that is logged
+ * @property-read array $additionalData array with additional data of the modification log entry
*/
class ModificationLog extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Notice
*
- * @property-read integer $noticeID
- * @property-read string $noticeName
- * @property-read string $notice
- * @property-read integer $noticeUseHtml
- * @property-read string $cssClassName
- * @property-read integer $showOrder
- * @property-read integer $isDisabled
- * @property-read integer $isDismissible
+ * @property-read integer $noticeID unique id of the notice
+ * @property-read string $noticeName name of the notice shown in ACP
+ * @property-read string $notice text of the notice or name of language item which contains the text
+ * @property-read integer $noticeUseHtml is `1` if the notice text will be rendered as HTML, otherwise `0`
+ * @property-read string $cssClassName css class name(s) used for the notice HTML element
+ * @property-read integer $showOrder position of the notice in relation to the other notices
+ * @property-read integer $isDisabled is `1` if the notice is disabled and thus not shown, otherwise `0`
+ * @property-read integer $isDismissible is `1` if the notice can be dismissed by users, otherwise `0`
*/
class Notice extends DatabaseObject implements IRouteController {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Object\Type
*
- * @property-read integer $objectTypeID
- * @property-read integer $definitionID
- * @property-read integer $packageID
- * @property-read string $objectType
- * @property-read string $className
- * @property-read array $additionalData
+ * @property-read integer $objectTypeID unique id of the object type
+ * @property-read integer $definitionID id of the object type definition the object type belongs to
+ * @property-read integer $packageID id of the package the which delivers the object type
+ * @property-read string $objectType textual identifier of the object type
+ * @property-read string $className PHP class name of the object type processor (implementing the interface forced by the object type definition)
+ * @property-read array $additionalData array with additional data of the object type
*/
class ObjectType extends ProcessibleDatabaseObject {
use TDatabaseObjectOptions;
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Object\Type\Definition
*
- * @property-read integer $definitionID
- * @property-read string $definitionName
- * @property-read integer $packageID
- * @property-read string $interfaceName
- * @property-read string $categoryName
+ * @property-read integer $definitionID unique id of the object type definition
+ * @property-read string $definitionName textual identifier of the object type definition
+ * @property-read integer $packageID id of the package the which delivers the object type definition
+ * @property-read string $interfaceName PHP interface name the PHP classes of the object types' processors need to implement
+ * @property-read string $categoryName TODO: unused?
*/
class ObjectTypeDefinition extends DatabaseObject {}
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Option
*
- * @property-read integer $optionID
- * @property-read integer $packageID
- * @property-read string $optionName
- * @property-read string $categoryName
- * @property-read string $optionType
- * @property-read string $optionValue
- * @property-read string $validationPattern
- * @property-read string $selectOptions
- * @property-read string $enableOptions
- * @property-read integer $showOrder
- * @property-read integer $hidden
- * @property-read string $permissions
- * @property-read string $options
- * @property-read integer $supportI18n
- * @property-read integer $requireI18n
- * @property-read array $additionalData
+ * @property-read integer $optionID unique id of the option
+ * @property-read integer $packageID id of the package the which delivers the option
+ * @property-read string $optionName name and textual identifier of the option
+ * @property-read string $categoryName name of the option category the option belongs to
+ * @property-read string $optionType textual identifier of the option (corresponds to a class implementing `wcf\system\option\IOptionType`)
+ * @property-read string $optionValue value of the option
+ * @property-read string $validationPattern regular expression used to validate the option's value or empty if no such regular expression exists
+ * @property-read string $selectOptions newline-separated list of selectable options for a selectable option type (line pattern: `{value}:{language item name}`)
+ * @property-read string $enableOptions list of options that are enabled based on the option's value (simple comma-separated list of boolean options, otherwise newline-separated list with line pattern: `{select value}:{comma-separated list}`)
+ * @property-read integer $showOrder position of the option in relation to the other option in the option category
+ * @property-read integer $hidden is `1` if the option is hidden and thus cannot be explicitly set by in the acp, otherwise `0`
+ * @property-read string $permissions comma separated list of user group permissions of which the active user needs to have at least one to set the option value
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the option to be editable
+ * @property-read integer $supportI18n is `1` if the option supports different values for all available languages, otherwise `0`
+ * @property-read integer $requireI18n is `1` if `$supportI18n = 1` and the option's value has to explicily set for all values so that the `monolingual` option is not available, otherwise `0`
+ * @property-read array $additionalData array with additional data of the option
*/
class Option extends DatabaseObject {
use TDatabaseObjectOptions;
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Option\Category
*
- * @property-read integer $categoryID
- * @property-read integer $packageID
- * @property-read string $categoryName
- * @property-read string $parentCategoryName
- * @property-read integer $showOrder
- * @property-read string $permissions
- * @property-read string $options
+ * @property-read integer $categoryID unique id of the option category
+ * @property-read integer $packageID id of the package the which delivers the option category
+ * @property-read string $categoryName name and textual identifier of the option category
+ * @property-read string $parentCategoryName name of the option category's parent category or empty if the option category has no parent category
+ * @property-read integer $showOrder position of the option category in relation its siblings
+ * @property-read string $permissions comma separated list of user group permissions of which the active user needs to have at least one to see the option category
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the option category to be shown
*/
class OptionCategory extends DatabaseObject {
use TDatabaseObjectOptions;
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Package
*
- * @property-read integer $packageID
- * @property-read string $package
- * @property-read string $packageDir
- * @property-read string $packageName
- * @property-read string $packageDescription
- * @property-read string $packageVersion
- * @property-read integer $packageDate
- * @property-read integer $installDate
- * @property-read integer $updateDate
- * @property-read string $packageURL
- * @property-read integer $isApplication
- * @property-read string $author
- * @property-read string $authorURL
+ * @property-read integer $packageID unique id of the package
+ * @property-read string $package unique textual identifier of the package
+ * @property-read string $packageDir relative directory to Core in which the application is installed or empty if package is no application or Core
+ * @property-read string $packageName name of the package or name of language item which contains the name
+ * @property-read string $packageDescription description of the package or name of language item which contains the description
+ * @property-read string $packageVersion installed version of package
+ * @property-read integer $packageDate timestamp at which the installed package version has been released
+ * @property-read integer $installDate timestamp at which the package has been installed
+ * @property-read integer $updateDate timestamp at which the package has been updated or installed if it has not been updated yet
+ * @property-read string $packageURL external url to website with more information about the package
+ * @property-read integer $isApplication is `1` if the package delivers an application, otherwise `0`
+ * @property-read string $author author of the package
+ * @property-read string $authorURL external url to the website of the package author
*/
class Package extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Package\Installation\Plugin
*
- * @property-read string $pluginName
- * @property-read integer|null $packageID
- * @property-read integer $priority
- * @property-read string $className
+ * @property-read string $pluginName unique name and textual identifier of the package installation plugin
+ * @property-read integer|null $packageID id of the package the which delivers the package installation plugin
+ * @property-read integer $priority priority in which the package installation plugins are installed, `1` for Core package installation plugins (executed first) and `0` for other package installation plugins
+ * @property-read string $className name of the PHP class implementing `wcf\system\package\plugin\IPackageInstallationPlugin` handling installing and uninstalling handled data
*/
class PackageInstallationPlugin extends DatabaseObject {
/**
use wcf\system\WCF;
/**
- * Represents a package installation queue.
+ * Represents a package installation queue entry.
*
* @author Alexander Ebert
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Package\Installation\Queue
*
- * @property-read integer $queueID
- * @property-read integer $parentQueueID
- * @property-read integer $processNo
- * @property-read integer $userID
- * @property-read string $package
- * @property-read string $packageName
- * @property-read integer|null $packageID
- * @property-read string $archive
- * @property-read string $action
- * @property-read integer $done
- * @property-read integer $isApplication
+ * @property-read integer $queueID unique id of the package installation queue entry
+ * @property-read integer $parentQueueID id of the package installation queue entry's parent entry or `0` if it has no parent entry
+ * @property-read integer $processNo numerical identifier of a group of dependent package installation queue entries, i.e. a parent entry and all of its children
+ * @property-read integer $userID id of the user who started the package installation, update or uninstallation
+ * @property-read string $package identifier of the relevant package
+ * @property-read string $packageName name of the relevant package
+ * @property-read integer|null $packageID id of relevant package
+ * @property-read string $archive location of the package file for `$action = install` or `$action = update`, otherwise empty
+ * @property-read string $action action the package installation queue entry belongs to (`install`, `update`, `uninstall`)
+ * @property-read integer $done is `1` if the package installation queue entry has been completed, otherwise `0`
+ * @property-read integer $isApplication is `1` if the package installation queue entry belongs to an application, otherwise `0`
*/
class PackageInstallationQueue extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Package\Update
*
- * @property-read integer $packageUpdateID
- * @property-read integer $packageUpdateServerID
- * @property-read string $package
- * @property-read string $packageName
- * @property-read string $packageDescription
- * @property-read string $author
- * @property-read string $authorURL
- * @property-read integer $isApplication
+ * @property-read integer $packageUpdateID unique id of the package update
+ * @property-read integer $packageUpdateServerID id of the package update server the package update is located on
+ * @property-read string $package identifier of the package
+ * @property-read string $packageName name of the package
+ * @property-read string $packageDescription description of the package
+ * @property-read string $author author of the package
+ * @property-read string $authorURL external url to the website of the package author
+ * @property-read integer $isApplication is `1` if the package update belongs to an application, otherwise `0`
*/
class PackageUpdate extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Package\Update\Server
*
- * @property-read integer $packageUpdateServerID
- * @property-read string $serverURL
- * @property-read string $loginUsername
- * @property-read string $loginPassword
- * @property-read integer $isDisabled
- * @property-read integer $lastUpdateTime
- * @property-read string $status
- * @property-read string $errorMessage
- * @property-read string $apiVersion
+ * @property-read integer $packageUpdateServerID unique id of the package update server
+ * @property-read string $serverURL url of the package update server
+ * @property-read string $loginUsername username used to login on the package update server
+ * @property-read string $loginPassword password used to login on the package update server
+ * @property-read integer $isDisabled is `1` if the package update server is disabled and thus not considered for package updates, otherwise `0`
+ * @property-read integer $lastUpdateTime timestamp at which the data of the package update server has been fetched the last time
+ * @property-read string $status status of the package update server (`online` or `offline`)
+ * @property-read string $errorMessage error message if the package update server if offline or empty otherwise
+ * @property-read string $apiVersion version of the supported package update server api (`2.0`, `2.1`)
*/
class PackageUpdateServer extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Package\Update\Version
*
- * @property-read integer $packageUpdateVersionID
- * @property-read integer $packageUpdateID
- * @property-read string $packageVersion
- * @property-read integer $packageDate
- * @property-read string $filename
- * @property-read string $license
- * @property-read string $licenseURL
- * @property-read integer $isAccessible
+ * @property-read integer $packageUpdateVersionID unique id of the package update version
+ * @property-read integer $packageUpdateID id of the package update the package update version belongs to
+ * @property-read string $packageVersion version number of the package update version
+ * @property-read integer $packageDate date of the package update version
+ * @property-read string $filename location of the package update version file or empty if no file is given
+ * @property-read string $license name of the license of the package update version or empty if no license is given
+ * @property-read string $licenseURL link to the license of the package update version or empty if no license or license link is given
+ * @property-read integer $isAccessible is `1` if the package update version is accessible and thus can be installed, otherwise `0`
*/
class PackageUpdateVersion extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Page
* @since 3.0
- *
- * @property-read integer $pageID
- * @property-read integer|null $parentPageID
- * @property-read string $identifier
- * @property-read string $name
- * @property-read string $pageType
- * @property-read integer $isDisabled
- * @property-read integer $isLandingPage
- * @property-read integer $isMultilingual
- * @property-read integer $originIsSystem
- * @property-read integer $packageID
- * @property-read integer $applicationPackageID
- * @property-read string $controller
- * @property-read string $handler
- * @property-read string $controllerCustomURL
- * @property-read integer $requireObjectID
- * @property-read integer $hasFixedParent
- * @property-read integer $lastUpdateTime
- * @property-read string $permissions
- * @property-read string $options
+ *
+ * @property-read integer $pageID unique id of the page
+ * @property-read integer|null $parentPageID id of the page's parent page or `null` if it has no parent page
+ * @property-read string $identifier unique textual identifier of the page
+ * @property-read string $name monolingual name of the page shown in the ACP
+ * @property-read string $pageType type of the page, default types: `text`, `html`, `tpl` `system`
+ * @property-read integer $isDisabled is `1` if the page is disabled and thus cannot be accessed, otherwise `0`
+ * @property-read integer $isLandingPage is `1` if the page is the landing page, otherwise `0`
+ * @property-read integer $isMultilingual is `1` if the page is available in different languages, otherwise `0`
+ * @property-read integer $originIsSystem is `1` if the page has been delivered by a package, otherwise `0` (i.e. the page has been created in the ACP)
+ * @property-read integer $packageID id of the package the which delivers the page or `1` if it has been created in the ACP
+ * @property-read integer $applicationPackageID id of the package of the application the pages belongs to
+ * @property-read string $controller name of the page controller class
+ * @property-read string $handler name of the page handler class for `system` pages or empty
+ * @property-read string $controllerCustomURL custom url of the page
+ * @property-read integer $requireObjectID is `1` if the page requires an object id parameter, otherwise `0`
+ * @property-read integer $hasFixedParent is `1` if the page's parent page cannot be changed, otherwise `0`
+ * @property-read integer $lastUpdateTime timestamp at which the page has been updated the last time
+ * @property-read string $permissions comma separated list of user group permissions of which the active user needs to have at least one to access the page
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the page to be accessible
*/
class Page extends DatabaseObject implements ILinkableObject, ITitledObject {
use TDatabaseObjectOptions;
* @package WoltLabSuite\Core\Data\Page\Content
* @since 3.0
*
- * @property-read integer $pageContentID
- * @property-read integer $pageID
- * @property-read integer $languageID
- * @property-read string $title
- * @property-read string $content
- * @property-read string $metaDescription
- * @property-read string $metaKeywords
- * @property-read string $customURL
- * @property-read integer $hasEmbeddedObjects
+ * @property-read integer $pageContentID unique id of the page content
+ * @property-read integer $pageID id of the page the page content belongs to
+ * @property-read integer $languageID id of the page content's language
+ * @property-read string $title title of the page in the associated language
+ * @property-read string $content actual content of the page in the associated language
+ * @property-read string $metaDescription meta description of the page in the associated language
+ * @property-read string $metaKeywords meta keywords of the page in the associated language
+ * @property-read string $customURL custom url of the page in the associated language
+ * @property-read integer $hasEmbeddedObjects is `1` if the page content contains embedded objects, otherwise `0`
*/
class PageContent extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Paid\Subscription
*
- * @property-read integer $subscriptionID
- * @property-read string $title
- * @property-read string $description
- * @property-read integer $isDisabled
- * @property-read integer $showOrder
- * @property-read double $cost
- * @property-read string $currency
- * @property-read integer $subscriptionLength
- * @property-read string $subscriptionLengthUnit
- * @property-read integer $isRecurring
- * @property-read string $groupIDs
- * @property-read string $excludedSubscriptionIDs
+ * @property-read integer $subscriptionID unique id of the paid subscription
+ * @property-read string $title title of the paid subscription or name of language item which contains the title
+ * @property-read string $description description of the paid subscription or name of language item which contains the description
+ * @property-read integer $isDisabled is `1` if the paid subscription is disabled and thus cannot be bought, otherwise `0`
+ * @property-read integer $showOrder position of the paid subscription in relation to the other paid subscriptions
+ * @property-read double $cost cost of the paid subscription
+ * @property-read string $currency identifier for the currency of the paid subscription cost
+ * @property-read integer $subscriptionLength magnitude part of the duration of the subscription or `0` if the subscription is permanent
+ * @property-read string $subscriptionLengthUnit unit part of the duration of the subscription (`D` for days, `M` for months, `Y` for years) or empty if the subscription is permanent
+ * @property-read integer $isRecurring is `1` if the paid subscription is recurring and thus requires regular (automatic) payments, otherwise `0`
+ * @property-read string $groupIDs comma-separated list with the ids of the user groups for which the subscription pays membership
+ * @property-read string $excludedSubscriptionIDs comma-separated list with the ids of paid subscriptions which prohibit purchase of this paid subscription
*/
class PaidSubscription extends DatabaseObject {
/**
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Paid\Subscription\Transaction\Log
- *
- * @property-read integer $logID
- * @property-read integer|null $subscriptionUserID
- * @property-read integer|null $userID
- * @property-read integer $subscriptionID
- * @property-read integer $paymentMethodObjectTypeID
- * @property-read integer $logTime
- * @property-read string $transactionID
- * @property-read string $transactionDetails
- * @property-read string $logMessage
+ *
+ * @property-read integer $logID unique id of the paid subscription transaction log entry
+ * @property-read integer|null $subscriptionUserID id of the paid subscription-user-association or `null` if no such association exists
+ * @property-read integer|null $userID id of the user who caused the paid subscription transaction log entry or `null` if the user does not exist anymore
+ * @property-read integer $subscriptionID id of the paid subscription
+ * @property-read integer $paymentMethodObjectTypeID id of the `com.woltlab.wcf.payment.method` object type
+ * @property-read integer $logTime timestamp at which the log has been created
+ * @property-read string $transactionID identifier of the paid subscription transaction
+ * @property-read string $transactionDetails serialized defailts of the paid subscription transaction
+ * @property-read string $logMessage log message describing the status of the paid subscription transaction
*/
class PaidSubscriptionTransactionLog extends DatabaseObject {
/**
use wcf\system\WCF;
/**
- * Represents a paid subscription user.
+ * Represents an association between a paid subscription and a user.
*
* @author Marcel Werk
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Paid\Subscription\User
- *
- * @property-read integer $subscriptionUserID
- * @property-read integer $subscriptionID
- * @property-read integer $userID
- * @property-read integer $startDate
- * @property-read integer $endDate
- * @property-read integer $isActive
+ *
+ * @property-read integer $subscriptionUserID unique id of the paid subscription-user-association
+ * @property-read integer $subscriptionID id of the paid subscription the paid subscription-user-association belongs to
+ * @property-read integer $userID id of the user the paid subscription-user-association belongs to
+ * @property-read integer $startDate timestamp at which the paid subscription started
+ * @property-read integer $endDate timestamp at which the paid subscription ended or will end
+ * @property-read integer $isActive is `1` if the user's paid subscription is currently active and thus not expired, otherwise `0`
*/
class PaidSubscriptionUser extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Poll
*
- * @property-read integer $pollID
- * @property-read integer $objectTypeID
- * @property-read integer $objectID
- * @property-read string $question
- * @property-read integer $time
- * @property-read integer $endTime
- * @property-read integer $isChangeable
- * @property-read integer $isPublic
- * @property-read integer $sortByVotes
- * @property-read integer $resultsRequireVote
- * @property-read integer $maxVotes
- * @property-read integer $votes
+ * @property-read integer $pollID unique id of the poll
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.poll` object type
+ * @property-read integer $objectID id of the poll container object the poll belongs to
+ * @property-read string $question question of the poll
+ * @property-read integer $time timestamp at which the poll has been created
+ * @property-read integer $endTime timestamp at which the poll has been/will be closed
+ * @property-read integer $isChangeable is `1` if participants can change their vote, otherwise `0`
+ * @property-read integer $isPublic is `1` if the result of the poll is public, otherwise `0`
+ * @property-read integer $sortByVotes is `1` if the results will be sorted by votes, otherwise `0`
+ * @property-read integer $resultsRequireVote is `1` if a user has to have voted to see the results, otherwise `0`
+ * @property-read integer $maxVotes maximum number of options the user can select
+ * @property-read integer $votes number of votes in the poll
*/
class Poll extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Poll\Poll
*
- * @property-read integer $optionID
- * @property-read integer $pollID
- * @property-read string $optionValue
- * @property-read integer $votes
- * @property-read integer $showOrder
+ * @property-read integer $optionID unique id of the poll option
+ * @property-read integer $pollID id of the poll the option belongs to
+ * @property-read string $optionValue text of the poll option
+ * @property-read integer $votes number of votes for the poll option
+ * @property-read integer $showOrder position of the poll option in relation to the other options of the poll
*/
class PollOption extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Search
*
- * @property-read integer $searchID
- * @property-read integer|null $userID
- * @property-read string $searchData
- * @property-read integer $searchTime
- * @property-read string $searchType
- * @property-read string $searchHash
+ * @property-read integer $searchID unique id of the search
+ * @property-read integer|null $userID id of the user who has done the search or `null` if a guest has done the search
+ * @property-read string $searchData serialized array with data and parameters of the seatch
+ * @property-read integer $searchTime timestamp of the search
+ * @property-read string $searchType type of search, like `messages` or `users`
+ * @property-read string $searchHash hash identifying the search for the user to reuse the result within the first 30 minutes
*/
class Search extends DatabaseObject {}
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Search\Keyword
*
- * @property-read integer $keywordID
- * @property-read string $keyword
- * @property-read integer $searches
- * @property-read integer $lastSearchTime
+ * @property-read integer $keywordID unique id of the search keyword
+ * @property-read string $keyword search keyword
+ * @property-read integer $searches times the keyword has been searched
+ * @property-read integer $lastSearchTime last time the keyword has been searched
*/
class SearchKeyword extends DatabaseObject {}
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Session
*
- * @property-read string $spiderID
+ * @property-read integer|null $pageID id of the latest page visited
+ * @property-read integer|null $pageObjectID id of the object the latest page visited belongs to
+ * @property-read integer|null $parentPageID id of the parent page of latest page visited
+ * @property-read integer|null $parentPageObjectID id of the object the parent page of latest page visited belongs to
+ * @property-read integer $spiderID id of the spider the session belongs to
*/
class Session extends ACPSession {
/**
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Smiley
- *
- * @property-read integer $smileyID
- * @property-read integer $packageID
- * @property-read integer|null $categoryID
- * @property-read string $smileyPath
- * @property-read string $smileyTitle
- * @property-read string $smileyCode
- * @property-read string $aliases
- * @property-read integer $showOrder
+ *
+ * @property-read integer $smileyID unique id of the smiley
+ * @property-read integer $packageID id of the package which delivers the smiley
+ * @property-read integer|null $categoryID id of the category the smiley belongs to or `null` if it belongs to the default category
+ * @property-read string $smileyPath path to the smiley file relative to wcf's defsult path
+ * @property-read string $smileyTitle title of the smiley
+ * @property-read string $smileyCode code used for displaying the smiley
+ * @property-read string $aliases alternative codes used for displaying the smiley
+ * @property-read integer $showOrder position of the smiley in relation to the other smileys in the same category
*/
class Smiley extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Spider
*
- * @property-read integer $spiderID
- * @property-read string $spiderIdentifier
- * @property-read string $spiderName
- * @property-read string $spiderURL
+ * @property-read integer $spiderID unique id of the spider
+ * @property-read string $spiderIdentifier unique textual identifier of the spider
+ * @property-read string $spiderName name of the spider
+ * @property-read string $spiderURL link to the spider's website or empty if no such website exists
*/
class Spider extends DatabaseObject {}
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Stat\Daily
*
- * @property-read integer $statID
- * @property-read integer $objectTypeID
- * @property-read string $date
- * @property-read integer $counter
- * @property-read integer $total
+ * @property-read integer $statID unique id of the daily statistic entry
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.statDailyHandler` object type
+ * @property-read string $date date when the daily statistic entry has been created
+ * @property-read integer $counter daily statistic entry count for the last day
+ * @property-read integer $total cumulative daily statistic entry count up to the date
*/
class StatDaily extends DatabaseObject {}
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Style
*
- * @property-read integer $styleID
- * @property-read integer $packageID
- * @property-read string $styleName
- * @property-read integer $templateGroupID
- * @property-read integer $isDefault
- * @property-read integer $isDisabled
- * @property-read string $styleDescription
- * @property-read string $styleVersion
- * @property-read string $styleDate
- * @property-read string $image
- * @property-read string $copyright
- * @property-read string $license
- * @property-read string $authorName
- * @property-read string $authorURL
- * @property-read string $imagePath
- * @property-read string $packageName
- * @property-read integer $isTainted
+ * @property-read integer $styleID unique id of the style
+ * @property-read integer $packageID id of the package which delivers the style
+ * @property-read string $styleName name of style
+ * @property-read integer $templateGroupID id of the template group used for the style or `0` if the style uses no specific template group
+ * @property-read integer $isDefault is `1` if the style is the default style for guests and users, otherwise `0`
+ * @property-read integer $isDisabled is `1` if the style is disabled and thus cannot be used without having the specific permission to do so, otherwise `0`
+ * @property-read string $styleDescription description of the style or name of the language item which contains the description
+ * @property-read string $styleVersion version number of the style
+ * @property-read string $styleDate date when the used version of the style has been published
+ * @property-read string $image link or path (relative to `WCF_DIR`) to the preview image of the style
+ * @property-read string $copyright copyright text of the style
+ * @property-read string $license name of the style's license
+ * @property-read string $authorName name(s) of the style's author(s)
+ * @property-read string $authorURL link to the author's website
+ * @property-read string $imagePath path (relative to `WCF_DIR`) to the images used by the style or empty if style has no special image path
+ * @property-read string $packageName package identifier used to export the style as a package or empty (thus style cannot be exported as package)
+ * @property-read integer $isTainted is `0` if the original declarations of an imported or installed style are not and cannot be altered, otherwise `1`
*/
class Style extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Style\Variable
*
- * @property-read integer $variableID
- * @property-read string $variableName
- * @property-read string $defaultValue
+ * @property-read integer $variableID unique id of the style variable
+ * @property-read string $variableName name of the style variable
+ * @property-read string $defaultValue default value of the style variable
*/
class StyleVariable extends DatabaseObject {
const TYPE_COLOR = 'color';
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Tag
*
- * @property-read integer $tagID
- * @property-read integer $languageID
- * @property-read string $name
- * @property-read integer|null $synonymFor
+ * @property-read integer $tagID unique id of the tag
+ * @property-read integer $languageID id of the language the tag belongs to
+ * @property-read string $name name/text of the tag
+ * @property-read integer|null $synonymFor id of the tag for which the tag is a synoym or `null` if the tag is no synonym
*/
class Tag extends DatabaseObject implements IRouteController {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Template
*
- * @property-read integer $templateID
- * @property-read integer $packageID
- * @property-read string $templateName
- * @property-read string $application
- * @property-read integer|null $templateGroupID
- * @property-read integer $lastModificationTime
+ * @property-read integer $templateID unique id of the template
+ * @property-read integer $packageID id of the package which delivers the template
+ * @property-read string $templateName name of the template
+ * @property-read string $application abbreviation of the application to which the template belongs
+ * @property-read integer|null $templateGroupID id of the template group to which the template belongs or `null` if the template belongs to no template group
+ * @property-read integer $lastModificationTime timestamp at which the template has been edited the last time
*/
class Template extends DatabaseObject {
/** @noinspection PhpMissingParentConstructorInspection */
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Template\Group
*
- * @property-read integer $templateGroupID
- * @property-read integer|null $parentTemplateGroupID
- * @property-read string $templateGroupName
- * @property-read string $templateGroupFolderName
+ * @property-read integer $templateGroupID unique id of the template group
+ * @property-read integer|null $parentTemplateGroupID id of the template group's parent template group or `null` if the template group has no parent template group
+ * @property-read string $templateGroupName name of the template group
+ * @property-read string $templateGroupFolderName name of the folder containing the modified templates (relative to the normal template folder)
*/
class TemplateGroup extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\Template\Listener
*
- * @property-read integer $listenerID
- * @property-read integer $packageID
- * @property-read string $name
- * @property-read string $environment
- * @property-read string $templateName
- * @property-read string $eventName
- * @property-read string $templateCode
- * @property-read integer $niceValue
- * @property-read string $permissions
- * @property-read string $options
+ * @property-read integer $listenerID unique id of the template listener
+ * @property-read integer $packageID id of the package which delivers the template listener
+ * @property-read string $name name of the template listener
+ * @property-read string $environment environment in which the template listener is executed, possible values: 'user' or 'admin'
+ * @property-read string $templateName name of the template in which the listened event is fired
+ * @property-read string $eventName name of the listened event
+ * @property-read string $templateCode included template code at the position of the listened event
+ * @property-read integer $niceValue value from [-128, 127] used to determine template listener execution order (template listeners with smaller `$niceValue` are executed first)
+ * @property-read string $permissions comma separated list of user group permissions of which the active user needs to have at least one for the template listener to be executed
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the template listener to be executed
*/
class TemplateListener extends DatabaseObject {}
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User
- *
- * @property-read integer $userID
- * @property-read string $username
- * @property-read string $email
- * @property-read string $password
- * @property-read string $accessToken
- * @property-read integer $languageID
- * @property-read string $registrationDate
- * @property-read integer $styleID
- * @property-read integer $banned
- * @property-read string $banReason
- * @property-read integer $banExpires
- * @property-read integer $activationCode
- * @property-read integer $lastLostPasswordRequestTime
- * @property-read string $lostPasswordKey
- * @property-read integer $lastUsernameChange
- * @property-read string $newEmail
- * @property-read string $oldUsername
- * @property-read integer $quitStarted
- * @property-read integer $reactivationCode
- * @property-read string $registrationIpAddress
- * @property-read integer|null $avatarID
- * @property-read integer $disableAvatar
- * @property-read string $disableAvatarReason
- * @property-read integer $disableAvatarExpires
- * @property-read integer $enableGravatar
- * @property-read string $gravatarFileExtension
- * @property-read string $signature
- * @property-read integer $signatureEnableBBCodes
- * @property-read integer $signatureEnableHtml
- * @property-read integer $signatureEnableSmilies
- * @property-read integer $disableSignature
- * @property-read string $disableSignatureReason
- * @property-read integer $disableSignatureExpires
- * @property-read integer $lastActivityTime
- * @property-read integer $profileHits
- * @property-read integer|null $rankID
- * @property-read string $userTitle
- * @property-read integer|null $userOnlineGroupID
- * @property-read integer $activityPoints
- * @property-read string $notificationMailToken
- * @property-read string $authData
- * @property-read integer $likesReceived
+ *
+ * @property-read integer $userID unique id of the user
+ * @property-read string $username name of the user
+ * @property-read string $email email address of the user
+ * @property-read string $password double salted hash of the user's password
+ * @property-read string $accessToken token used for access authentication, for example used by feed pages
+ * @property-read integer $languageID id of the interface language used by the user
+ * @property-read integer $registrationDate timestamp at which the user has registered/has been created
+ * @property-read integer $styleID id of the style used by the user
+ * @property-read integer $banned is `1` if the user is banned, otherwise `0`
+ * @property-read string $banReason reason why the user is banned
+ * @property-read integer $banExpires timestamp at which the banned user is automatically unbanned
+ * @property-read integer $activationCode code sent to the user's email address used for account activation
+ * @property-read integer $lastLostPasswordRequestTime timestamp at which the user has reported that they lost their password or 0 if password has not been reported as lost
+ * @property-read string $lostPasswordKey code used for authenticating setting new password after password loss or empty if password has not been reported as lost
+ * @property-read integer $lastUsernameChange timestamp at which the user changed their name the last time or 0 if username has not been changed
+ * @property-read string $newEmail new email address of the user that has to be manually confirmed or empty if no new email address has been set
+ * @property-read string $oldUsername previous name of the user or empty if they have had no previous name
+ * @property-read integer $quitStarted timestamp at which the user terminated their account
+ * @property-read integer $reactivationCode code used for authenticating setting new email address or empty if no new email address has been set
+ * @property-read string $registrationIpAddress ip address of the user at the time of registration or empty if user has been created manually or if no ip address are logged
+ * @property-read integer|null $avatarID id of the user's avatar or null if they have no avatar
+ * @property-read integer $disableAvatar is `1` if the user's avatar has been disabled, otherwise `0`
+ * @property-read string $disableAvatarReason reason why the user's avatar is disabled
+ * @property-read integer $disableAvatarExpires timestamp at which the user's avatar will automatically be enabled again
+ * @property-read integer $enableGravatar is `1` if the user uses a gravatar as avatar, otherwise `0`
+ * @property-read string $gravatarFileExtension extension of the user's gravatar file
+ * @property-read string $signature text of the user's signature
+ * @property-read integer $signatureEnableBBCodes is `1` if BBCodes will rendered in the user's signature, otherwise `0`
+ * @property-read integer $signatureEnableHtml is `1` if HTML will rendered in the user's signature, otherwise `0`
+ * @property-read integer $signatureEnableSmilies is `1` if smilies will rendered in the user's signature, otherwise `0`
+ * @property-read integer $disableSignature is `1` if the user's signature has been disabled, otherwise `0`
+ * @property-read string $disableSignatureReason reason why the user's signature is disabled
+ * @property-read integer $disableSignatureExpires timestamp at which the user's signature will automatically be enabled again
+ * @property-read integer $lastActivityTime timestamp of the user's last activity
+ * @property-read integer $profileHits number of times the user's profile has been visited
+ * @property-read integer|null $rankID id of the user's rank or null if they have no rank
+ * @property-read string $userTitle custom user title used instead of rank title or empty if user has no custom title
+ * @property-read integer|null $userOnlineGroupID id of the user group whose online marking is used when printing the user's formatted name or null if no special marking is used
+ * @property-read integer $activityPoints total number of the user's activity points
+ * @property-read string $notificationMailToken token used for authenticating requests by the user to disable notification emails
+ * @property-read string $authData data of the third party used for authentication
+ * @property-read integer $likesReceived cumulative result of likes (counting +1) and dislikes (counting -1) the user's contents have received
*/
final class User extends DatabaseObject implements IRouteController, IUserContent {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Activity\Event
*
- * @property-read integer $eventID
- * @property-read integer $objectTypeID
- * @property-read integer $objectID
- * @property-read integer|null $languageID
- * @property-read integer $userID
- * @property-read integer $time
- * @property-read array $additionalData
+ * @property-read integer $eventID unique id of the user activity event
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.user.recentActivityEvent` object type
+ * @property-read integer $objectID id of the object the user activity event belongs to
+ * @property-read integer|null $languageID id of the language of the related object or null if the object has no specific language
+ * @property-read integer $userID id of the user who has triggered the user activity event
+ * @property-read integer $time timestamp at which the user activity event has been triggered
+ * @property-read array $additionalData array with additional data of the user activity event
*/
class UserActivityEvent extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Authentication\Failure
*
- * @property-read integer $failureID
- * @property-read string $environment
- * @property-read integer|null $userID
- * @property-read string $username
- * @property-read integer $time
- * @property-read string $ipAddress
- * @property-read string $userAgent
+ * @property-read integer $failureID unique if of the user authentication failure
+ * @property-read string $environment environment in which the user authentication failure occurred, possible values: 'user' or 'admin'
+ * @property-read integer|null $userID id of the user using an incorrect password or null if the provided username or email address is not associated with any registered user
+ * @property-read string $username user name or email address used to login
+ * @property-read integer $time timestamp at which the user authentication failure has occurred
+ * @property-read string $ipAddress ip address of the user trying to login in
+ * @property-read string $userAgent user agent of the user trying to login in
*/
class UserAuthenticationFailure extends DatabaseObject {
/**
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Avatar
- *
- * @property-read integer $avatarID
- * @property-read string $avatarName
- * @property-read string $avatarExtension
- * @property-read integer $width
- * @property-read integer $height
- * @property-read integer|null $userID
- * @property-read string $fileHash
+ *
+ * @property-read integer $avatarID unique id of the user avatar
+ * @property-read string $avatarName name of the original avatar file
+ * @property-read string $avatarExtension extension of the avatar file
+ * @property-read integer $width width of the user avatar image
+ * @property-read integer $height height of the user avatar image
+ * @property-read integer|null $userID id of the user to which the user avatar belongs or null if TODO
+ * @property-read string $fileHash SHA1 hash of the original avatar file
*/
class UserAvatar extends DatabaseObject implements IUserAvatar {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Follow
*
- * @property-read integer $followID
- * @property-read integer $userID
- * @property-read integer $followUserID
- * @property-read integer $time
+ * @property-read integer $followID unique id of the following relation
+ * @property-read integer $userID id of the following user
+ * @property-read integer $followUserID id of the followed user
+ * @property-read integer $time time at which following relation has been established
*/
class UserFollow extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Group
*
- * @property-read integer $groupID
- * @property-read string $groupName
- * @property-read string $groupDescription
- * @property-read integer $groupType
- * @property-read integer $priority
- * @property-read string $userOnlineMarking
- * @property-read integer $showOnTeamPage
+ * @property-read integer $groupID unique id of the user group
+ * @property-read string $groupName name of the user group or name of language item which contains the name
+ * @property-read string $groupDescription description of the user group or name of language item which contains the description
+ * @property-read integer $groupType identifier of the type of user group
+ * @property-read integer $priority priority of the user group used to determine member's user rank and online marking
+ * @property-read string $userOnlineMarking HTML code used to print the formatted name of a user group member
+ * @property-read integer $showOnTeamPage is `1` if the user group and its members should be shown on the team page, otherwise `0`
*/
class UserGroup extends DatabaseObject implements ITitledObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Group\Assignment
*
- * @property-read integer $assignmentID
- * @property-read integer $groupID
- * @property-read string $title
- * @property-read integer $isDisabled
+ * @property-read integer $assignmentID unique id of the automatic user group assignment
+ * @property-read integer $groupID id of the user group to which users are automatically assigned
+ * @property-read string $title title of the automatic user group assignment
+ * @property-read integer $isDisabled is `1` if the user group assigment is disabled and thus not checked for automatic assigments, otherwise `0`
*/
class UserGroupAssignment extends DatabaseObject implements IRouteController {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Group\Option
*
- * @property-read integer $usersOnly
+ * @property-read integer $usersOnly is `1` if the option only applies to user groups for registered users, otherwise `1`
*/
class UserGroupOption extends Option {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Group\Option\Category
*
- * @property-read integer $categoryID
- * @property-read integer $packageID
- * @property-read string $categoryName
- * @property-read string $parentCategoryName
- * @property-read integer $showOrder
- * @property-read string $permissions
- * @property-read string $options
+ * @property-read integer $categoryID unique id of the user group options category
+ * @property-read integer $packageID id of the package which delivers the user group options category
+ * @property-read string $categoryName name and textual identifier of the user group option category
+ * @property-read string $parentCategoryName name of the user group option category's parent category or empty if it has no parent category
+ * @property-read integer $showOrder position of the user group options category in relation to its siblings
+ * @property-read string $permissions comma separated list of user group permissions of which the active user needs to have at least one to see the user group options category
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the user group options category to be shown
*/
class UserGroupOptionCategory extends DatabaseObject {
use TDatabaseObjectOptions;
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Ignore
*
- * @property-read integer $ignoreID
- * @property-read integer $userID
- * @property-read integer $ignoreUserID
- * @property-read integer $time
+ * @property-read integer $ignoreID unique id of the ignore relation
+ * @property-read integer $userID id of the ignoring user
+ * @property-read integer $ignoreUserID id of the ignored user
+ * @property-read integer $time time at which ignore relation has been established
*/
class UserIgnore extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Menu\Item
*
- * @property-read integer $menuItemID
- * @property-read integer $packageID
- * @property-read string $menuItem
- * @property-read string $parentMenuItem
- * @property-read string $menuItemController
- * @property-read string $menuItemLink
- * @property-read integer $showOrder
- * @property-read string $permissions
- * @property-read string $options
- * @property-read string $className
- * @property-read string $iconClassName
+ * @property-read integer $menuItemID unique id of the user menu item
+ * @property-read integer $packageID id of the package the which delivers the user menu item
+ * @property-read string $menuItem textual identifier of the user menu item
+ * @property-read string $parentMenuItem textual identifier of the menu item's parent menu item or empty if it has no parent menu item
+ * @property-read string $menuItemController class name of the user menu item's controller used to generate menu item link
+ * @property-read string $menuItemLink additional part of the user menu item link if `$menuItemController` is set or external link
+ * @property-read integer $showOrder position of the user menu item in relation to its siblings
+ * @property-read string $permissions comma separated list of user group permissions of which the active user needs to have at least one to see the user menu item
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the user menu item to be shown
+ * @property-read string $className name of the class implementing the user menu item provider interface or empty if there is no specific user menu item provider
+ * @property-read string $iconClassName FontAwesome CSS class name for user menu items on the first level
*/
class UserMenuItem extends ProcessibleDatabaseObject implements ITreeMenuItem {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Notification
*
- * @property-read integer $notificationID
+ * @property-read integer $notificationID unique id of the user notification
* @property-read integer $packageID deprecated
- * @property-read integer $eventID
- * @property-read integer $objectID
- * @property-read integer $baseObjectID
- * @property-read string $eventHash
- * @property-read integer|null $authorID
- * @property-read integer $timesTriggered
- * @property-read integer $guestTimesTriggered
- * @property-read integer $userID
- * @property-read integer $time
- * @property-read integer $mailNotified
- * @property-read integer $confirmTime
- * @property-read array $additionalData
+ * @property-read integer $eventID id of the user notification event the user notification belongs to
+ * @property-read integer $objectID id of the object that triggered the user notification
+ * @property-read integer $baseObjectID id of a generic base object of object that triggered the user notification or 0 if there is no such base object
+ * @property-read string $eventHash hash of the event the user notification represents, is used to stack notifications
+ * @property-read integer|null $authorID id of the user that triggered the user notification or null if there is no such user or the user was a guest
+ * @property-read integer $timesTriggered number of times a stacked notification has been triggered by registered users
+ * @property-read integer $guestTimesTriggered number of times a stacked notification has been triggered by guests
+ * @property-read integer $userID id of the user who recieves the user notification
+ * @property-read integer $time timestamp at which the user notification has been created
+ * @property-read integer $mailNotified is 0 has not be notified by mail about the user notifiction, otherwise 1
+ * @property-read integer $confirmTime timestamp at which the user notification has been marked as confirmed/read
+ * @property-read array $additionalData array with additional data of the user notification event
*/
class UserNotification extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Notification\Event
*
- * @property-read integer $eventID
- * @property-read integer $packageID
- * @property-read string $eventName
- * @property-read integer $objectTypeID
- * @property-read string $className
- * @property-read string $permissions
- * @property-read string $options
- * @property-read integer $preset
- * @property-read string $presetMailNotificationType
+ * @property-read integer $eventID unique id of the user notification event
+ * @property-read integer $packageID id of the package which delivers the user notification event
+ * @property-read string $eventName name and textual identifier (within the object type) of the user notification event
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.notification.objectType` object type
+ * @property-read string $className name of the PHP class implementing `wcf\system\user\notification\event\IUserNotificationEvent`
+ * @property-read string $permissions comma separated list of user group permissions of which the active user needs to have at least one to see the user notification event setting
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the user notification event setting to be shown
+ * @property-read integer $preset is `1` if the user notification event is enabled by default otherwise `0`
+ * @property-read string $presetMailNotificationType default mail notification type if the user notification event is enabled by defauled, otherwise empty
*/
class UserNotificationEvent extends ProcessibleDatabaseObject {
use TDatabaseObjectOptions;
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Object\Watch
*
- * @property-read integer $watchID
- * @property-read integer $objectTypeID
- * @property-read integer $objectID
- * @property-read integer $userID
- * @property-read integer $notification
+ * @property-read integer $watchID unique id of the watched object
+ * @property-read integer $objectTypeID id of the `com.woltlab.wcf.user.objectWatch` object type
+ * @property-read integer $objectID id of the watched object of the specific object type
+ * @property-read integer $userID id of the user watching the object
+ * @property-read integer $notification is `1` if the user wants to receive notifications for the watched object, otherwise `0`
*/
class UserObjectWatch extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Online
*
- * @property-read integer|null $pageID
- * @property-read integer|null $pageObjectID
- * @property-read integer|null $parentPageObjectID
- * @property-read string|null $userOnlineMarking
+ * @property-read integer|null $pageID id of the last visited page
+ * @property-read integer|null $pageObjectID id of the object the last visited page belongs to
+ * @property-read integer|null $parentPageObjectID id of the parent of the object the last visited page belongs to
+ * @property-read string|null $userOnlineMarking HTML code used to print the formatted name of a user group member
*/
class UserOnline extends UserProfile {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Option
*
- * @property-read integer $required
- * @property-read integer $askDuringRegistration
- * @property-read integer $editable
- * @property-read integer $visible
- * @property-read string $outputClass
- * @property-read integer $searchable
- * @property-read integer $isDisabled
- * @property-read integer $originIsSystem
+ * @property-read integer $required is `1` if the user option has to be filled out, otherwise `0`
+ * @property-read integer $askDuringRegistration is `1` if the user option will be shown during registration to be filled out, otherwise `0`
+ * @property-read integer $editable setting for who can edit the user option, see `UserOption::EDITABILITY_*` constants
+ * @property-read integer $visible setting for who can see the user option, see `UserOption::VISIBILITY_*` constants
+ * @property-read string $outputClass name of the PHP class implementing `wcf\system\option\user\IUserOptionOutput` for outputting the user option in the user profile
+ * @property-read integer $searchable is `1` if the user option can be searched, otherwise `0`
+ * @property-read integer $isDisabled is `1` if the user option is disabled and thus neither shown nor editable, otherwise `0`
+ * @property-read integer $originIsSystem is `1` if the user option was created by the system and not manually by an administrator, otherwise `0`
*/
class UserOption extends Option {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Option\Category
*
- * @property-read integer $categoryID
- * @property-read integer $packageID
- * @property-read string $categoryName
- * @property-read string $parentCategoryName
- * @property-read integer $showOrder
- * @property-read string $permissions
- * @property-read string $options
+ * @property-read integer $categoryID unique id of the user option category
+ * @property-read integer $packageID id of the package which delivers the user option category
+ * @property-read string $categoryName name and textual identifier of the user option category
+ * @property-read string $parentCategoryName name of the user option category's parent category or empty if it has no parent category
+ * @property-read integer $showOrder position of the user option category in relation to its siblings
+ * @property-read string $permissions comma separated list of user group permissions of which the active user needs to have at least one to see the user option category
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the user option category to be shown
*/
class UserOptionCategory extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Profile\Menu\Item
*
- * @property-read integer $menuItemID
- * @property-read integer $packageID
- * @property-read string $menuItem
- * @property-read integer $showOrder
- * @property-read string $permissions
- * @property-read string $options
- * @property-read string $className
+ * @property-read integer $menuItemID unique id of the user profile menu item
+ * @property-read integer $packageID id of the package which delivers the user profile menu item
+ * @property-read string $menuItem textual identifier of the user profile menu item
+ * @property-read integer $showOrder position of the user profile menu item in relation to its siblings
+ * @property-read string $permissions comma separated list of user group permissions of which the active user needs to have at least one to see the user profile menu item
+ * @property-read string $options comma separated list of options of which at least one needs to be enabled for the user profile menu item to be shown
+ * @property-read string $className name of the PHP class implementing `wcf\system\menu\user\profile\content\IUserProfileMenuContent` handling outputing the content of the user profile tab
*/
class UserProfileMenuItem extends DatabaseObject {
use TDatabaseObjectOptions;
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Profile\Visitor
*
- * @property-read integer $visitorID
- * @property-read integer|null $ownerID
- * @property-read integer|null $userID
- * @property-read integer $time
+ * @property-read integer $visitorID unique id of the user profile visitor
+ * @property-read integer $ownerID id of the user whose user profile has been visited
+ * @property-read integer $userID id of the user visiting the user profile
+ * @property-read integer $time timestamp of the (latest) visit
*/
class UserProfileVisitor extends DatabaseObject {
/**
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\Data\User\Rank
*
- * @property-read integer $rankID
- * @property-read integer $groupID
- * @property-read integer $requiredPoints
- * @property-read string $rankTitle
- * @property-read string $cssClassName
- * @property-read string $rankImage
- * @property-read integer $repeatImage
- * @property-read integer $requiredGender
+ * @property-read integer $rankID unique id of the user rank
+ * @property-read integer $groupID id of the user group to which the user rank belongs
+ * @property-read integer $requiredPoints minimum number of user activity points required for a user to get the user rank
+ * @property-read string $rankTitle title of the user rank or name of the language item which contains the rank
+ * @property-read string $cssClassName css class name used when displaying the user rank
+ * @property-read string $rankImage (WCF relative) path to the image displayed next to the rank or empty if no rank image exists
+ * @property-read integer $repeatImage number of times the rank image is displayed
+ * @property-read integer $requiredGender numeric representation of the user's genered required for the user rank (see `UserProfile::GENDER_*` constants) or 0 if no specific gender is required
*/
class UserRank extends DatabaseObject {
/**
* @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package WoltLabSuite\Core\System\Session
- *
- * @property-read string $sessionID
- * @property-read integer|null $userID
- * @property-read string $ipAddress
- * @property-read string $userAgent
- * @property-read integer $lastActivityTime
- * @property-read string $requestURI
- * @property-read string $requestMethod
- * @property-read string $controller
- * @property-read string $parentObjectType
- * @property-read integer $parentObjectID
- * @property-read string $objectType
- * @property-read integer $objectID
- * @property-read string $sessionVariables
- * @property-read string $spiderID
+ *
+ * @property-read string $sessionID unique textual identifier of the session
+ * @property-read integer|null $userID id of the user the session belongs to or `null` if the acp session belongs to a guest
+ * @property-read string $ipAddress id of the user whom the session belongs to
+ * @property-read string $userAgent user agent of the user whom the session belongs to
+ * @property-read integer $lastActivityTime timestamp at which the latest activity occured
+ * @property-read string $requestURI uri of the latest request
+ * @property-read string $requestMethod used request method of the latest request (`GET`, `POST`)
+ * @property-read integer|null $pageID id of the latest page visited
+ * @property-read integer|null $pageObjectID id of the object the latest page visited belongs to
+ * @property-read integer|null $parentPageID id of the parent page of latest page visited
+ * @property-read integer|null $parentPageObjectID id of the object the parent page of latest page visited belongs to
+ * @property-read integer $spiderID id of the spider the session belongs to
*/
class SessionHandler extends SingletonFactory {
/**
objectID INT(10) NOT NULL,
userID INT(10),
username VARCHAR(255) NOT NULL DEFAULT '',
- time INT(10) NOT NULL DEFAULT 0, -- time the version was created, displayed to the user
- obsoletedAt INT(10) NOT NULL DEFAULT 0, -- time the version was inserted into the edit history, used for clean up
+ time INT(10) NOT NULL DEFAULT 0,
+ obsoletedAt INT(10) NOT NULL DEFAULT 0,
obsoletedByUserID INT(10),
message MEDIUMTEXT,
editReason TEXT,
DROP TABLE IF EXISTS wcf1_user_notification;
CREATE TABLE wcf1_user_notification (
notificationID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
- packageID INT(10) NOT NULL, -- DEPRECATED
+ packageID INT(10) NOT NULL,
eventID INT(10) NOT NULL,
objectID INT(10) NOT NULL DEFAULT 0,
- baseObjectID INT(10) NOT NULL DEFAULT 0, -- base object ID for generic implementations referencing the origin, e.g. the object being liked
+ baseObjectID INT(10) NOT NULL DEFAULT 0,
eventHash VARCHAR(40) NOT NULL DEFAULT '',
authorID INT(10) NULL,
timesTriggered INT(10) NOT NULL DEFAULT 0,