xref: /dokuwiki/vendor/simplepie/simplepie/src/Copyright.php (revision 8e88a29b81301f78509349ab1152bb09c229123e)
1<?php
2
3// SPDX-FileCopyrightText: 2004-2023 Ryan Parman, Sam Sneddon, Ryan McCue
4// SPDX-License-Identifier: BSD-3-Clause
5
6declare(strict_types=1);
7
8namespace SimplePie;
9
10/**
11 * Manages `<media:copyright>` copyright tags as defined in Media RSS
12 *
13 * Used by {@see \SimplePie\Enclosure::get_copyright()}
14 *
15 * This class can be overloaded with {@see \SimplePie\SimplePie::set_copyright_class()}
16 */
17class Copyright
18{
19    /**
20     * Copyright URL
21     *
22     * @var ?string
23     * @see get_url()
24     */
25    public $url;
26
27    /**
28     * Attribution
29     *
30     * @var ?string
31     * @see get_attribution()
32     */
33    public $label;
34
35    /**
36     * Constructor, used to input the data
37     *
38     * For documentation on all the parameters, see the corresponding
39     * properties and their accessors
40     */
41    public function __construct(
42        ?string $url = null,
43        ?string $label = null
44    ) {
45        $this->url = $url;
46        $this->label = $label;
47    }
48
49    /**
50     * String-ified version
51     *
52     * @return string
53     */
54    public function __toString()
55    {
56        // There is no $this->data here
57        return md5(serialize($this));
58    }
59
60    /**
61     * Get the copyright URL
62     *
63     * @return string|null URL to copyright information
64     */
65    public function get_url()
66    {
67        if ($this->url !== null) {
68            return $this->url;
69        }
70
71        return null;
72    }
73
74    /**
75     * Get the attribution text
76     *
77     * @return string|null
78     */
79    public function get_attribution()
80    {
81        if ($this->label !== null) {
82            return $this->label;
83        }
84
85        return null;
86    }
87}
88
89class_alias('SimplePie\Copyright', 'SimplePie_Copyright');
90