xref: /plugin/combo/ComboStrap/Reference.php (revision c3437056399326d621a01da73b649707fbb0ae69)
1*c3437056SNickeau<?php
2*c3437056SNickeau
3*c3437056SNickeau
4*c3437056SNickeaunamespace ComboStrap;
5*c3437056SNickeau
6*c3437056SNickeau/**
7*c3437056SNickeau * Class Reference
8*c3437056SNickeau * @package ComboStrap
9*c3437056SNickeau * Reference
10*c3437056SNickeau *
11*c3437056SNickeau * Because they may not exist and this data is derive, we store only the value
12*c3437056SNickeau * and not the page id for instance
13*c3437056SNickeau */
14*c3437056SNickeauclass Reference extends MetadataWikiPath
15*c3437056SNickeau{
16*c3437056SNickeau
17*c3437056SNickeau    const REF_PROPERTY = "ref";
18*c3437056SNickeau
19*c3437056SNickeau    public static function createFromResource(Page $page)
20*c3437056SNickeau    {
21*c3437056SNickeau        return (new Reference())
22*c3437056SNickeau            ->setResource($page);
23*c3437056SNickeau    }
24*c3437056SNickeau
25*c3437056SNickeau    public function getDescription(): string
26*c3437056SNickeau    {
27*c3437056SNickeau        return "The path to the internal page";
28*c3437056SNickeau    }
29*c3437056SNickeau
30*c3437056SNickeau    public function getLabel(): string
31*c3437056SNickeau    {
32*c3437056SNickeau        return "Reference Path";
33*c3437056SNickeau    }
34*c3437056SNickeau
35*c3437056SNickeau    public static function getName(): string
36*c3437056SNickeau    {
37*c3437056SNickeau        return "reference";
38*c3437056SNickeau    }
39*c3437056SNickeau
40*c3437056SNickeau    public function getPersistenceType(): string
41*c3437056SNickeau    {
42*c3437056SNickeau        return Metadata::DERIVED_METADATA;
43*c3437056SNickeau    }
44*c3437056SNickeau
45*c3437056SNickeau    public function getMutable(): bool
46*c3437056SNickeau    {
47*c3437056SNickeau        return false;
48*c3437056SNickeau    }
49*c3437056SNickeau
50*c3437056SNickeau}
51