Projet

Général

Profil

Paste
Télécharger (4,4 ko) Statistiques
| Branche: | Révision:

root / drupal7 / sites / all / libraries / simplepie / library / SimplePie / Caption.php @ 41cc1b08

1
<?php
2
/**
3
 * SimplePie
4
 *
5
 * A PHP-Based RSS and Atom Feed Framework.
6
 * Takes the hard work out of managing a complete RSS/Atom solution.
7
 *
8
 * Copyright (c) 2004-2012, Ryan Parman, Geoffrey Sneddon, Ryan McCue, and contributors
9
 * All rights reserved.
10
 *
11
 * Redistribution and use in source and binary forms, with or without modification, are
12
 * permitted provided that the following conditions are met:
13
 *
14
 *         * Redistributions of source code must retain the above copyright notice, this list of
15
 *           conditions and the following disclaimer.
16
 *
17
 *         * Redistributions in binary form must reproduce the above copyright notice, this list
18
 *           of conditions and the following disclaimer in the documentation and/or other materials
19
 *           provided with the distribution.
20
 *
21
 *         * Neither the name of the SimplePie Team nor the names of its contributors may be used
22
 *           to endorse or promote products derived from this software without specific prior
23
 *           written permission.
24
 *
25
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS
26
 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
27
 * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS
28
 * AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
29
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
30
 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
32
 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33
 * POSSIBILITY OF SUCH DAMAGE.
34
 *
35
 * @package SimplePie
36
 * @version 1.3.1
37
 * @copyright 2004-2012 Ryan Parman, Geoffrey Sneddon, Ryan McCue
38
 * @author Ryan Parman
39
 * @author Geoffrey Sneddon
40
 * @author Ryan McCue
41
 * @link http://simplepie.org/ SimplePie
42
 * @license http://www.opensource.org/licenses/bsd-license.php BSD License
43
 */
44

    
45

    
46
/**
47
 * Handles `<media:text>` captions as defined in Media RSS.
48
 *
49
 * Used by {@see SimplePie_Enclosure::get_caption()} and {@see SimplePie_Enclosure::get_captions()}
50
 *
51
 * This class can be overloaded with {@see SimplePie::set_caption_class()}
52
 *
53
 * @package SimplePie
54
 * @subpackage API
55
 */
56
class SimplePie_Caption
57
{
58
        /**
59
         * Content type
60
         *
61
         * @var string
62
         * @see get_type()
63
         */
64
        var $type;
65

    
66
        /**
67
         * Language
68
         *
69
         * @var string
70
         * @see get_language()
71
         */
72
        var $lang;
73

    
74
        /**
75
         * Start time
76
         *
77
         * @var string
78
         * @see get_starttime()
79
         */
80
        var $startTime;
81

    
82
        /**
83
         * End time
84
         *
85
         * @var string
86
         * @see get_endtime()
87
         */
88
        var $endTime;
89

    
90
        /**
91
         * Caption text
92
         *
93
         * @var string
94
         * @see get_text()
95
         */
96
        var $text;
97

    
98
        /**
99
         * Constructor, used to input the data
100
         *
101
         * For documentation on all the parameters, see the corresponding
102
         * properties and their accessors
103
         */
104
        public function __construct($type = null, $lang = null, $startTime = null, $endTime = null, $text = null)
105
        {
106
                $this->type = $type;
107
                $this->lang = $lang;
108
                $this->startTime = $startTime;
109
                $this->endTime = $endTime;
110
                $this->text = $text;
111
        }
112

    
113
        /**
114
         * String-ified version
115
         *
116
         * @return string
117
         */
118
        public function __toString()
119
        {
120
                // There is no $this->data here
121
                return md5(serialize($this));
122
        }
123

    
124
        /**
125
         * Get the end time
126
         *
127
         * @return string|null Time in the format 'hh:mm:ss.SSS'
128
         */
129
        public function get_endtime()
130
        {
131
                if ($this->endTime !== null)
132
                {
133
                        return $this->endTime;
134
                }
135
                else
136
                {
137
                        return null;
138
                }
139
        }
140

    
141
        /**
142
         * Get the language
143
         *
144
         * @link http://tools.ietf.org/html/rfc3066
145
         * @return string|null Language code as per RFC 3066
146
         */
147
        public function get_language()
148
        {
149
                if ($this->lang !== null)
150
                {
151
                        return $this->lang;
152
                }
153
                else
154
                {
155
                        return null;
156
                }
157
        }
158

    
159
        /**
160
         * Get the start time
161
         *
162
         * @return string|null Time in the format 'hh:mm:ss.SSS'
163
         */
164
        public function get_starttime()
165
        {
166
                if ($this->startTime !== null)
167
                {
168
                        return $this->startTime;
169
                }
170
                else
171
                {
172
                        return null;
173
                }
174
        }
175

    
176
        /**
177
         * Get the text of the caption
178
         *
179
         * @return string|null
180
         */
181
        public function get_text()
182
        {
183
                if ($this->text !== null)
184
                {
185
                        return $this->text;
186
                }
187
                else
188
                {
189
                        return null;
190
                }
191
        }
192

    
193
        /**
194
         * Get the content type (not MIME type)
195
         *
196
         * @return string|null Either 'text' or 'html'
197
         */
198
        public function get_type()
199
        {
200
                if ($this->type !== null)
201
                {
202
                        return $this->type;
203
                }
204
                else
205
                {
206
                        return null;
207
                }
208
        }
209
}
210