xref: /plugin/struct/meta/PublishedColumn.php (revision da62ec9ce14a5d1d6c3f7b01481bc0e431a087e0)
1*da62ec9cSAnna Dabrowska<?php
2*da62ec9cSAnna Dabrowska
3*da62ec9cSAnna Dabrowskanamespace dokuwiki\plugin\struct\meta;
4*da62ec9cSAnna Dabrowska
5*da62ec9cSAnna Dabrowskause dokuwiki\plugin\struct\types\Decimal;
6*da62ec9cSAnna Dabrowska
7*da62ec9cSAnna Dabrowska/**
8*da62ec9cSAnna Dabrowska * Published Column
9*da62ec9cSAnna Dabrowska */
10*da62ec9cSAnna Dabrowskaclass PublishedColumn extends PageColumn
11*da62ec9cSAnna Dabrowska{
12*da62ec9cSAnna Dabrowska
13*da62ec9cSAnna Dabrowska    /** @noinspection PhpMissingParentConstructorInspection
14*da62ec9cSAnna Dabrowska     * @param int $sort
15*da62ec9cSAnna Dabrowska     * @param Decimal $type
16*da62ec9cSAnna Dabrowska     * @param string $table
17*da62ec9cSAnna Dabrowska     */
18*da62ec9cSAnna Dabrowska    public function __construct($sort, Decimal $type, $table)
19*da62ec9cSAnna Dabrowska    {
20*da62ec9cSAnna Dabrowska        if ($type->isMulti()) throw new StructException('PublishedColumns can not be multi value types!');
21*da62ec9cSAnna Dabrowska        Column::__construct($sort, $type, 0, true, $table);
22*da62ec9cSAnna Dabrowska    }
23*da62ec9cSAnna Dabrowska
24*da62ec9cSAnna Dabrowska    /**
25*da62ec9cSAnna Dabrowska     * @return string
26*da62ec9cSAnna Dabrowska     */
27*da62ec9cSAnna Dabrowska    public function getLabel()
28*da62ec9cSAnna Dabrowska    {
29*da62ec9cSAnna Dabrowska        return '%published%';
30*da62ec9cSAnna Dabrowska    }
31*da62ec9cSAnna Dabrowska
32*da62ec9cSAnna Dabrowska    /**
33*da62ec9cSAnna Dabrowska     * @param bool $enforceSingleColumn ignored
34*da62ec9cSAnna Dabrowska     * @return string
35*da62ec9cSAnna Dabrowska     */
36*da62ec9cSAnna Dabrowska    public function getColName($enforceSingleColumn = true)
37*da62ec9cSAnna Dabrowska    {
38*da62ec9cSAnna Dabrowska        return 'published';
39*da62ec9cSAnna Dabrowska    }
40*da62ec9cSAnna Dabrowska
41*da62ec9cSAnna Dabrowska    /**
42*da62ec9cSAnna Dabrowska     * @return string preconfigured label
43*da62ec9cSAnna Dabrowska     */
44*da62ec9cSAnna Dabrowska    public function getTranslatedLabel()
45*da62ec9cSAnna Dabrowska    {
46*da62ec9cSAnna Dabrowska        /** @var \helper_plugin_struct_config $helper */
47*da62ec9cSAnna Dabrowska        $helper = plugin_load('helper', 'struct_config');
48*da62ec9cSAnna Dabrowska        return $helper->getLang('publishedlabel');
49*da62ec9cSAnna Dabrowska    }
50*da62ec9cSAnna Dabrowska}
51