wp/wp-includes/SimplePie/Enclosure.php
author ymh <ymh.work@gmail.com>
Tue, 27 Sep 2022 16:37:53 +0200
changeset 19 3d72ae0968f4
parent 16 a86126ab1dd4
permissions -rw-r--r--
upgrade wordpress to 6.0.2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
<?php
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
 * SimplePie
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
 * A PHP-Based RSS and Atom Feed Framework.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
 * Takes the hard work out of managing a complete RSS/Atom solution.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
 *
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
     8
 * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
 * All rights reserved.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
 * Redistribution and use in source and binary forms, with or without modification, are
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
 * permitted provided that the following conditions are met:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
 * 	* Redistributions of source code must retain the above copyright notice, this list of
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
 * 	  conditions and the following disclaimer.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
 * 	* Redistributions in binary form must reproduce the above copyright notice, this list
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
 * 	  of conditions and the following disclaimer in the documentation and/or other materials
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
 * 	  provided with the distribution.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
 * 	* Neither the name of the SimplePie Team nor the names of its contributors may be used
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
 * 	  to endorse or promote products derived from this software without specific prior
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
 * 	  written permission.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
 * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
 * AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    30
 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    31
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    32
 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
 * POSSIBILITY OF SUCH DAMAGE.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
 * @package SimplePie
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    36
 * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
 * @author Ryan Parman
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
    38
 * @author Sam Sneddon
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
 * @author Ryan McCue
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
 * @link http://simplepie.org/ SimplePie
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
 * @license http://www.opensource.org/licenses/bsd-license.php BSD License
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    45
 * Handles everything related to enclosures (including Media RSS and iTunes RSS)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    46
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    47
 * Used by {@see SimplePie_Item::get_enclosure()} and {@see SimplePie_Item::get_enclosures()}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    48
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
 * This class can be overloaded with {@see SimplePie::set_enclosure_class()}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
 * @package SimplePie
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    52
 * @subpackage API
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    53
 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    54
class SimplePie_Enclosure
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    55
{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    56
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    57
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    58
	 * @see get_bitrate()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    59
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    60
	var $bitrate;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    61
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    62
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    63
	 * @var array
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    64
	 * @see get_captions()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    65
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    66
	var $captions;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    67
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    68
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    69
	 * @var array
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    70
	 * @see get_categories()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    71
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    72
	var $categories;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    73
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    74
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    75
	 * @var int
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    76
	 * @see get_channels()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    77
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    78
	var $channels;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    79
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    80
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    81
	 * @var SimplePie_Copyright
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    82
	 * @see get_copyright()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    83
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    84
	var $copyright;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    85
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    86
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    87
	 * @var array
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    88
	 * @see get_credits()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    89
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    90
	var $credits;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    91
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    92
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    93
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    94
	 * @see get_description()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    95
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    96
	var $description;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    97
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    98
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    99
	 * @var int
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   100
	 * @see get_duration()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   101
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   102
	var $duration;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   103
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   104
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   105
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   106
	 * @see get_expression()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   107
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   108
	var $expression;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   109
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   110
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   111
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   112
	 * @see get_framerate()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   113
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   114
	var $framerate;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   115
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   116
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   117
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   118
	 * @see get_handler()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   119
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   120
	var $handler;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   121
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   122
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   123
	 * @var array
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   124
	 * @see get_hashes()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   125
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   126
	var $hashes;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   127
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   128
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   129
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   130
	 * @see get_height()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   131
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   132
	var $height;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   133
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   134
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   135
	 * @deprecated
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   136
	 * @var null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   137
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   138
	var $javascript;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   139
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   140
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   141
	 * @var array
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   142
	 * @see get_keywords()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   143
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   144
	var $keywords;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   145
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   146
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   147
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   148
	 * @see get_language()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   149
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   150
	var $lang;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   151
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   152
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   153
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   154
	 * @see get_length()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   155
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   156
	var $length;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   157
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   158
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   159
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   160
	 * @see get_link()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   161
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   162
	var $link;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   163
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   164
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   165
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   166
	 * @see get_medium()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   167
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   168
	var $medium;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   169
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   170
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   171
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   172
	 * @see get_player()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   173
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   174
	var $player;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   175
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   176
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   177
	 * @var array
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   178
	 * @see get_ratings()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   179
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   180
	var $ratings;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   181
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   182
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   183
	 * @var array
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   184
	 * @see get_restrictions()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   185
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   186
	var $restrictions;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   187
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   188
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   189
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   190
	 * @see get_sampling_rate()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   191
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   192
	var $samplingrate;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   193
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   194
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   195
	 * @var array
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   196
	 * @see get_thumbnails()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   197
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   198
	var $thumbnails;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   199
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   200
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   201
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   202
	 * @see get_title()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   203
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   204
	var $title;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   205
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   206
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   207
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   208
	 * @see get_type()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   209
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   210
	var $type;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   211
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   212
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   213
	 * @var string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   214
	 * @see get_width()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   215
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   216
	var $width;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   217
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   218
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   219
	 * Constructor, used to input the data
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   220
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   221
	 * For documentation on all the parameters, see the corresponding
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   222
	 * properties and their accessors
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   223
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   224
	 * @uses idna_convert If available, this will convert an IDN
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   225
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   226
	public function __construct($link = null, $type = null, $length = null, $javascript = null, $bitrate = null, $captions = null, $categories = null, $channels = null, $copyright = null, $credits = null, $description = null, $duration = null, $expression = null, $framerate = null, $hashes = null, $height = null, $keywords = null, $lang = null, $medium = null, $player = null, $ratings = null, $restrictions = null, $samplingrate = null, $thumbnails = null, $title = null, $width = null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   227
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   228
		$this->bitrate = $bitrate;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   229
		$this->captions = $captions;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   230
		$this->categories = $categories;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   231
		$this->channels = $channels;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   232
		$this->copyright = $copyright;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   233
		$this->credits = $credits;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   234
		$this->description = $description;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   235
		$this->duration = $duration;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   236
		$this->expression = $expression;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   237
		$this->framerate = $framerate;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   238
		$this->hashes = $hashes;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   239
		$this->height = $height;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   240
		$this->keywords = $keywords;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   241
		$this->lang = $lang;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   242
		$this->length = $length;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   243
		$this->link = $link;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   244
		$this->medium = $medium;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   245
		$this->player = $player;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   246
		$this->ratings = $ratings;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   247
		$this->restrictions = $restrictions;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   248
		$this->samplingrate = $samplingrate;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   249
		$this->thumbnails = $thumbnails;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   250
		$this->title = $title;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   251
		$this->type = $type;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   252
		$this->width = $width;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   253
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   254
		if (class_exists('idna_convert'))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   255
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   256
			$idn = new idna_convert();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   257
			$parsed = SimplePie_Misc::parse_url($link);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   258
			$this->link = SimplePie_Misc::compress_parse_url($parsed['scheme'], $idn->encode($parsed['authority']), $parsed['path'], $parsed['query'], $parsed['fragment']);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   259
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   260
		$this->handler = $this->get_handler(); // Needs to load last
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   261
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   262
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   263
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   264
	 * String-ified version
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   265
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   266
	 * @return string
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   267
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   268
	public function __toString()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   269
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   270
		// There is no $this->data here
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   271
		return md5(serialize($this));
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   272
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   273
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   274
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   275
	 * Get the bitrate
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   276
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   277
	 * @return string|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   278
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   279
	public function get_bitrate()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   280
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   281
		if ($this->bitrate !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   282
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   283
			return $this->bitrate;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   284
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   285
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   286
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   287
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   288
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   289
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   290
	 * Get a single caption
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   291
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   292
	 * @param int $key
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   293
	 * @return SimplePie_Caption|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   294
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   295
	public function get_caption($key = 0)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   296
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   297
		$captions = $this->get_captions();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   298
		if (isset($captions[$key]))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   299
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   300
			return $captions[$key];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   301
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   302
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   303
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   304
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   305
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   306
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   307
	 * Get all captions
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   308
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   309
	 * @return array|null Array of {@see SimplePie_Caption} objects
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   310
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   311
	public function get_captions()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   312
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   313
		if ($this->captions !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   314
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   315
			return $this->captions;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   316
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   317
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   318
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   319
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   320
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   321
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   322
	 * Get a single category
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   323
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   324
	 * @param int $key
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   325
	 * @return SimplePie_Category|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   326
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   327
	public function get_category($key = 0)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   328
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   329
		$categories = $this->get_categories();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   330
		if (isset($categories[$key]))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   331
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   332
			return $categories[$key];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   333
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   334
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   335
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   336
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   337
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   338
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   339
	 * Get all categories
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   340
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   341
	 * @return array|null Array of {@see SimplePie_Category} objects
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   342
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   343
	public function get_categories()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   344
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   345
		if ($this->categories !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   346
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   347
			return $this->categories;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   348
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   349
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   350
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   351
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   352
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   353
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   354
	 * Get the number of audio channels
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   355
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   356
	 * @return int|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   357
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   358
	public function get_channels()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   359
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   360
		if ($this->channels !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   361
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   362
			return $this->channels;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   363
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   364
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   365
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   366
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   367
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   368
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   369
	 * Get the copyright information
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   370
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   371
	 * @return SimplePie_Copyright|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   372
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   373
	public function get_copyright()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   374
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   375
		if ($this->copyright !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   376
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   377
			return $this->copyright;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   378
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   379
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   380
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   381
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   382
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   383
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   384
	 * Get a single credit
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   385
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   386
	 * @param int $key
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   387
	 * @return SimplePie_Credit|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   388
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   389
	public function get_credit($key = 0)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   390
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   391
		$credits = $this->get_credits();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   392
		if (isset($credits[$key]))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   393
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   394
			return $credits[$key];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   395
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   396
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   397
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   398
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   399
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   400
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   401
	 * Get all credits
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   402
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   403
	 * @return array|null Array of {@see SimplePie_Credit} objects
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   404
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   405
	public function get_credits()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   406
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   407
		if ($this->credits !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   408
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   409
			return $this->credits;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   410
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   411
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   412
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   413
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   414
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   415
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   416
	 * Get the description of the enclosure
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   417
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   418
	 * @return string|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   419
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   420
	public function get_description()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   421
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   422
		if ($this->description !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   423
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   424
			return $this->description;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   425
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   426
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   427
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   428
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   429
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   430
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   431
	 * Get the duration of the enclosure
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   432
	 *
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   433
	 * @param bool $convert Convert seconds into hh:mm:ss
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   434
	 * @return string|int|null 'hh:mm:ss' string if `$convert` was specified, otherwise integer (or null if none found)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   435
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   436
	public function get_duration($convert = false)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   437
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   438
		if ($this->duration !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   439
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   440
			if ($convert)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   441
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   442
				$time = SimplePie_Misc::time_hms($this->duration);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   443
				return $time;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   444
			}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   445
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   446
			return $this->duration;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   447
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   448
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   449
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   450
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   451
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   452
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   453
	 * Get the expression
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   454
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   455
	 * @return string Probably one of 'sample', 'full', 'nonstop', 'clip'. Defaults to 'full'
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   456
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   457
	public function get_expression()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   458
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   459
		if ($this->expression !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   460
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   461
			return $this->expression;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   462
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   463
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   464
		return 'full';
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   465
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   466
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   467
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   468
	 * Get the file extension
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   469
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   470
	 * @return string|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   471
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   472
	public function get_extension()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   473
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   474
		if ($this->link !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   475
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   476
			$url = SimplePie_Misc::parse_url($this->link);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   477
			if ($url['path'] !== '')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   478
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   479
				return pathinfo($url['path'], PATHINFO_EXTENSION);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   480
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   481
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   482
		return null;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   483
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   484
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   485
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   486
	 * Get the framerate (in frames-per-second)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   487
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   488
	 * @return string|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   489
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   490
	public function get_framerate()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   491
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   492
		if ($this->framerate !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   493
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   494
			return $this->framerate;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   495
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   496
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   497
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   498
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   499
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   500
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   501
	 * Get the preferred handler
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   502
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   503
	 * @return string|null One of 'flash', 'fmedia', 'quicktime', 'wmedia', 'mp3'
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   504
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   505
	public function get_handler()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   506
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   507
		return $this->get_real_type(true);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   508
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   509
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   510
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   511
	 * Get a single hash
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   512
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   513
	 * @link http://www.rssboard.org/media-rss#media-hash
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   514
	 * @param int $key
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   515
	 * @return string|null Hash as per `media:hash`, prefixed with "$algo:"
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   516
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   517
	public function get_hash($key = 0)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   518
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   519
		$hashes = $this->get_hashes();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   520
		if (isset($hashes[$key]))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   521
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   522
			return $hashes[$key];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   523
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   524
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   525
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   526
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   527
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   528
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   529
	 * Get all credits
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   530
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   531
	 * @return array|null Array of strings, see {@see get_hash()}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   532
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   533
	public function get_hashes()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   534
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   535
		if ($this->hashes !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   536
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   537
			return $this->hashes;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   538
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   539
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   540
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   541
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   542
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   543
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   544
	 * Get the height
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   545
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   546
	 * @return string|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   547
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   548
	public function get_height()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   549
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   550
		if ($this->height !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   551
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   552
			return $this->height;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   553
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   554
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   555
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   556
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   557
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   558
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   559
	 * Get the language
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   560
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   561
	 * @link http://tools.ietf.org/html/rfc3066
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   562
	 * @return string|null Language code as per RFC 3066
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   563
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   564
	public function get_language()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   565
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   566
		if ($this->lang !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   567
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   568
			return $this->lang;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   569
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   570
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   571
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   572
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   573
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   574
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   575
	 * Get a single keyword
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   576
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   577
	 * @param int $key
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   578
	 * @return string|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   579
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   580
	public function get_keyword($key = 0)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   581
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   582
		$keywords = $this->get_keywords();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   583
		if (isset($keywords[$key]))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   584
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   585
			return $keywords[$key];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   586
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   587
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   588
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   589
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   590
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   591
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   592
	 * Get all keywords
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   593
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   594
	 * @return array|null Array of strings
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   595
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   596
	public function get_keywords()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   597
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   598
		if ($this->keywords !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   599
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   600
			return $this->keywords;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   601
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   602
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   603
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   604
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   605
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   606
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   607
	 * Get length
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   608
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   609
	 * @return float Length in bytes
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   610
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   611
	public function get_length()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   612
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   613
		if ($this->length !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   614
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   615
			return $this->length;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   616
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   617
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   618
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   619
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   620
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   621
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   622
	 * Get the URL
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   623
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   624
	 * @return string|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   625
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   626
	public function get_link()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   627
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   628
		if ($this->link !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   629
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   630
			return urldecode($this->link);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   631
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   632
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   633
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   634
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   635
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   636
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   637
	 * Get the medium
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   638
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   639
	 * @link http://www.rssboard.org/media-rss#media-content
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   640
	 * @return string|null Should be one of 'image', 'audio', 'video', 'document', 'executable'
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   641
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   642
	public function get_medium()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   643
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   644
		if ($this->medium !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   645
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   646
			return $this->medium;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   647
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   648
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   649
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   650
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   651
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   652
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   653
	 * Get the player URL
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   654
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   655
	 * Typically the same as {@see get_permalink()}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   656
	 * @return string|null Player URL
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   657
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   658
	public function get_player()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   659
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   660
		if ($this->player !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   661
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   662
			return $this->player;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   663
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   664
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   665
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   666
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   667
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   668
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   669
	 * Get a single rating
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   670
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   671
	 * @param int $key
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   672
	 * @return SimplePie_Rating|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   673
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   674
	public function get_rating($key = 0)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   675
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   676
		$ratings = $this->get_ratings();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   677
		if (isset($ratings[$key]))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   678
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   679
			return $ratings[$key];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   680
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   681
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   682
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   683
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   684
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   685
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   686
	 * Get all ratings
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   687
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   688
	 * @return array|null Array of {@see SimplePie_Rating} objects
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   689
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   690
	public function get_ratings()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   691
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   692
		if ($this->ratings !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   693
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   694
			return $this->ratings;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   695
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   696
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   697
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   698
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   699
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   700
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   701
	 * Get a single restriction
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   702
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   703
	 * @param int $key
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   704
	 * @return SimplePie_Restriction|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   705
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   706
	public function get_restriction($key = 0)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   707
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   708
		$restrictions = $this->get_restrictions();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   709
		if (isset($restrictions[$key]))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   710
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   711
			return $restrictions[$key];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   712
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   713
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   714
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   715
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   716
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   717
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   718
	 * Get all restrictions
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   719
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   720
	 * @return array|null Array of {@see SimplePie_Restriction} objects
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   721
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   722
	public function get_restrictions()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   723
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   724
		if ($this->restrictions !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   725
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   726
			return $this->restrictions;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   727
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   728
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   729
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   730
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   731
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   732
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   733
	 * Get the sampling rate (in kHz)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   734
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   735
	 * @return string|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   736
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   737
	public function get_sampling_rate()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   738
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   739
		if ($this->samplingrate !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   740
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   741
			return $this->samplingrate;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   742
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   743
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   744
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   745
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   746
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   747
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   748
	 * Get the file size (in MiB)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   749
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   750
	 * @return float|null File size in mebibytes (1048 bytes)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   751
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   752
	public function get_size()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   753
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   754
		$length = $this->get_length();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   755
		if ($length !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   756
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   757
			return round($length/1048576, 2);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   758
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   759
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   760
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   761
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   762
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   763
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   764
	 * Get a single thumbnail
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   765
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   766
	 * @param int $key
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   767
	 * @return string|null Thumbnail URL
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   768
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   769
	public function get_thumbnail($key = 0)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   770
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   771
		$thumbnails = $this->get_thumbnails();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   772
		if (isset($thumbnails[$key]))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   773
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   774
			return $thumbnails[$key];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   775
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   776
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   777
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   778
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   779
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   780
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   781
	 * Get all thumbnails
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   782
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   783
	 * @return array|null Array of thumbnail URLs
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   784
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   785
	public function get_thumbnails()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   786
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   787
		if ($this->thumbnails !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   788
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   789
			return $this->thumbnails;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   790
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   791
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   792
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   793
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   794
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   795
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   796
	 * Get the title
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   797
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   798
	 * @return string|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   799
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   800
	public function get_title()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   801
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   802
		if ($this->title !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   803
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   804
			return $this->title;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   805
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   806
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   807
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   808
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   809
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   810
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   811
	 * Get mimetype of the enclosure
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   812
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   813
	 * @see get_real_type()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   814
	 * @return string|null MIME type
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   815
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   816
	public function get_type()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   817
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   818
		if ($this->type !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   819
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   820
			return $this->type;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   821
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   822
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   823
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   824
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   825
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   826
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   827
	 * Get the width
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   828
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   829
	 * @return string|null
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   830
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   831
	public function get_width()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   832
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   833
		if ($this->width !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   834
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   835
			return $this->width;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   836
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   837
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   838
		return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   839
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   840
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   841
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   842
	 * Embed the enclosure using `<embed>`
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   843
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   844
	 * @deprecated Use the second parameter to {@see embed} instead
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   845
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   846
	 * @param array|string $options See first paramter to {@see embed}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   847
	 * @return string HTML string to output
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   848
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   849
	public function native_embed($options='')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   850
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   851
		return $this->embed($options, true);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   852
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   853
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   854
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   855
	 * Embed the enclosure using Javascript
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   856
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   857
	 * `$options` is an array or comma-separated key:value string, with the
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   858
	 * following properties:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   859
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   860
	 * - `alt` (string): Alternate content for when an end-user does not have
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   861
	 *    the appropriate handler installed or when a file type is
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   862
	 *    unsupported. Can be any text or HTML. Defaults to blank.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   863
	 * - `altclass` (string): If a file type is unsupported, the end-user will
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   864
	 *    see the alt text (above) linked directly to the content. That link
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   865
	 *    will have this value as its class name. Defaults to blank.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   866
	 * - `audio` (string): This is an image that should be used as a
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   867
	 *    placeholder for audio files before they're loaded (QuickTime-only).
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   868
	 *    Can be any relative or absolute URL. Defaults to blank.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   869
	 * - `bgcolor` (string): The background color for the media, if not
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   870
	 *    already transparent. Defaults to `#ffffff`.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   871
	 * - `height` (integer): The height of the embedded media. Accepts any
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   872
	 *    numeric pixel value (such as `360`) or `auto`. Defaults to `auto`,
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   873
	 *    and it is recommended that you use this default.
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
   874
	 * - `loop` (boolean): Do you want the media to loop when it's done?
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   875
	 *    Defaults to `false`.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   876
	 * - `mediaplayer` (string): The location of the included
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   877
	 *    `mediaplayer.swf` file. This allows for the playback of Flash Video
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   878
	 *    (`.flv`) files, and is the default handler for non-Odeo MP3's.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   879
	 *    Defaults to blank.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   880
	 * - `video` (string): This is an image that should be used as a
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   881
	 *    placeholder for video files before they're loaded (QuickTime-only).
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   882
	 *    Can be any relative or absolute URL. Defaults to blank.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   883
	 * - `width` (integer): The width of the embedded media. Accepts any
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   884
	 *    numeric pixel value (such as `480`) or `auto`. Defaults to `auto`,
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   885
	 *    and it is recommended that you use this default.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   886
	 * - `widescreen` (boolean): Is the enclosure widescreen or standard?
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   887
	 *    This applies only to video enclosures, and will automatically resize
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   888
	 *    the content appropriately.  Defaults to `false`, implying 4:3 mode.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   889
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   890
	 * Note: Non-widescreen (4:3) mode with `width` and `height` set to `auto`
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   891
	 * will default to 480x360 video resolution.  Widescreen (16:9) mode with
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   892
	 * `width` and `height` set to `auto` will default to 480x270 video resolution.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   893
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   894
	 * @todo If the dimensions for media:content are defined, use them when width/height are set to 'auto'.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   895
	 * @param array|string $options Comma-separated key:value list, or array
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   896
	 * @param bool $native Use `<embed>`
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   897
	 * @return string HTML string to output
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   898
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   899
	public function embed($options = '', $native = false)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   900
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   901
		// Set up defaults
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   902
		$audio = '';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   903
		$video = '';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   904
		$alt = '';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   905
		$altclass = '';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   906
		$loop = 'false';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   907
		$width = 'auto';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   908
		$height = 'auto';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   909
		$bgcolor = '#ffffff';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   910
		$mediaplayer = '';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   911
		$widescreen = false;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   912
		$handler = $this->get_handler();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   913
		$type = $this->get_real_type();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   914
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   915
		// Process options and reassign values as necessary
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   916
		if (is_array($options))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   917
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   918
			extract($options);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   919
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   920
		else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   921
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   922
			$options = explode(',', $options);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   923
			foreach($options as $option)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   924
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   925
				$opt = explode(':', $option, 2);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   926
				if (isset($opt[0], $opt[1]))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   927
				{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   928
					$opt[0] = trim($opt[0]);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   929
					$opt[1] = trim($opt[1]);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   930
					switch ($opt[0])
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   931
					{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   932
						case 'audio':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   933
							$audio = $opt[1];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   934
							break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   935
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   936
						case 'video':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   937
							$video = $opt[1];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   938
							break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   939
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   940
						case 'alt':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   941
							$alt = $opt[1];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   942
							break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   943
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   944
						case 'altclass':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   945
							$altclass = $opt[1];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   946
							break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   947
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   948
						case 'loop':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   949
							$loop = $opt[1];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   950
							break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   951
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   952
						case 'width':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   953
							$width = $opt[1];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   954
							break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   955
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   956
						case 'height':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   957
							$height = $opt[1];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   958
							break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   959
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   960
						case 'bgcolor':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   961
							$bgcolor = $opt[1];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   962
							break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   963
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   964
						case 'mediaplayer':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   965
							$mediaplayer = $opt[1];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   966
							break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   967
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   968
						case 'widescreen':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   969
							$widescreen = $opt[1];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   970
							break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   971
					}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   972
				}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   973
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   974
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   975
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   976
		$mime = explode('/', $type, 2);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   977
		$mime = $mime[0];
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   978
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   979
		// Process values for 'auto'
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   980
		if ($width === 'auto')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   981
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   982
			if ($mime === 'video')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   983
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   984
				if ($height === 'auto')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   985
				{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   986
					$width = 480;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   987
				}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   988
				elseif ($widescreen)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   989
				{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   990
					$width = round((intval($height)/9)*16);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   991
				}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   992
				else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   993
				{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   994
					$width = round((intval($height)/3)*4);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   995
				}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   996
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   997
			else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   998
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   999
				$width = '100%';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1000
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1001
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1002
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1003
		if ($height === 'auto')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1004
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1005
			if ($mime === 'audio')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1006
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1007
				$height = 0;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1008
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1009
			elseif ($mime === 'video')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1010
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1011
				if ($width === 'auto')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1012
				{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1013
					if ($widescreen)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1014
					{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1015
						$height = 270;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1016
					}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1017
					else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1018
					{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1019
						$height = 360;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1020
					}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1021
				}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1022
				elseif ($widescreen)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1023
				{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1024
					$height = round((intval($width)/16)*9);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1025
				}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1026
				else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1027
				{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1028
					$height = round((intval($width)/4)*3);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1029
				}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1030
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1031
			else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1032
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1033
				$height = 376;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1034
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1035
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1036
		elseif ($mime === 'audio')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1037
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1038
			$height = 0;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1039
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1040
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1041
		// Set proper placeholder value
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1042
		if ($mime === 'audio')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1043
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1044
			$placeholder = $audio;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1045
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1046
		elseif ($mime === 'video')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1047
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1048
			$placeholder = $video;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1049
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1050
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1051
		$embed = '';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1052
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1053
		// Flash
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1054
		if ($handler === 'flash')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1055
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1056
			if ($native)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1057
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1058
				$embed .= "<embed src=\"" . $this->get_link() . "\" pluginspage=\"http://adobe.com/go/getflashplayer\" type=\"$type\" quality=\"high\" width=\"$width\" height=\"$height\" bgcolor=\"$bgcolor\" loop=\"$loop\"></embed>";
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1059
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1060
			else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1061
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1062
				$embed .= "<script type='text/javascript'>embed_flash('$bgcolor', '$width', '$height', '" . $this->get_link() . "', '$loop', '$type');</script>";
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1063
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1064
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1065
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1066
		// Flash Media Player file types.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1067
		// Preferred handler for MP3 file types.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1068
		elseif ($handler === 'fmedia' || ($handler === 'mp3' && $mediaplayer !== ''))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1069
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1070
			$height += 20;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1071
			if ($native)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1072
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1073
				$embed .= "<embed src=\"$mediaplayer\" pluginspage=\"http://adobe.com/go/getflashplayer\" type=\"application/x-shockwave-flash\" quality=\"high\" width=\"$width\" height=\"$height\" wmode=\"transparent\" flashvars=\"file=" . rawurlencode($this->get_link().'?file_extension=.'.$this->get_extension()) . "&autostart=false&repeat=$loop&showdigits=true&showfsbutton=false\"></embed>";
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1074
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1075
			else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1076
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1077
				$embed .= "<script type='text/javascript'>embed_flv('$width', '$height', '" . rawurlencode($this->get_link().'?file_extension=.'.$this->get_extension()) . "', '$placeholder', '$loop', '$mediaplayer');</script>";
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1078
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1079
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1080
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1081
		// QuickTime 7 file types.  Need to test with QuickTime 6.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1082
		// Only handle MP3's if the Flash Media Player is not present.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1083
		elseif ($handler === 'quicktime' || ($handler === 'mp3' && $mediaplayer === ''))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1084
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1085
			$height += 16;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1086
			if ($native)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1087
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1088
				if ($placeholder !== '')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1089
				{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1090
					$embed .= "<embed type=\"$type\" style=\"cursor:hand; cursor:pointer;\" href=\"" . $this->get_link() . "\" src=\"$placeholder\" width=\"$width\" height=\"$height\" autoplay=\"false\" target=\"myself\" controller=\"false\" loop=\"$loop\" scale=\"aspect\" bgcolor=\"$bgcolor\" pluginspage=\"http://apple.com/quicktime/download/\"></embed>";
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1091
				}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1092
				else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1093
				{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1094
					$embed .= "<embed type=\"$type\" style=\"cursor:hand; cursor:pointer;\" src=\"" . $this->get_link() . "\" width=\"$width\" height=\"$height\" autoplay=\"false\" target=\"myself\" controller=\"true\" loop=\"$loop\" scale=\"aspect\" bgcolor=\"$bgcolor\" pluginspage=\"http://apple.com/quicktime/download/\"></embed>";
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1095
				}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1096
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1097
			else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1098
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1099
				$embed .= "<script type='text/javascript'>embed_quicktime('$type', '$bgcolor', '$width', '$height', '" . $this->get_link() . "', '$placeholder', '$loop');</script>";
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1100
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1101
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1102
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1103
		// Windows Media
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1104
		elseif ($handler === 'wmedia')
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1105
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1106
			$height += 45;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1107
			if ($native)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1108
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1109
				$embed .= "<embed type=\"application/x-mplayer2\" src=\"" . $this->get_link() . "\" autosize=\"1\" width=\"$width\" height=\"$height\" showcontrols=\"1\" showstatusbar=\"0\" showdisplay=\"0\" autostart=\"0\"></embed>";
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1110
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1111
			else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1112
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1113
				$embed .= "<script type='text/javascript'>embed_wmedia('$width', '$height', '" . $this->get_link() . "');</script>";
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1114
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1115
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1116
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1117
		// Everything else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1118
		else $embed .= '<a href="' . $this->get_link() . '" class="' . $altclass . '">' . $alt . '</a>';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1119
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1120
		return $embed;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1121
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1122
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1123
	/**
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1124
	 * Get the real media type
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1125
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1126
	 * Often, feeds lie to us, necessitating a bit of deeper inspection. This
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1127
	 * converts types to their canonical representations based on the file
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1128
	 * extension
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1129
	 *
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1130
	 * @see get_type()
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1131
	 * @param bool $find_handler Internal use only, use {@see get_handler()} instead
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1132
	 * @return string MIME type
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1133
	 */
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1134
	public function get_real_type($find_handler = false)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1135
	{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1136
		// Mime-types by handler.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1137
		$types_flash = array('application/x-shockwave-flash', 'application/futuresplash'); // Flash
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1138
		$types_fmedia = array('video/flv', 'video/x-flv','flv-application/octet-stream'); // Flash Media Player
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1139
		$types_quicktime = array('audio/3gpp', 'audio/3gpp2', 'audio/aac', 'audio/x-aac', 'audio/aiff', 'audio/x-aiff', 'audio/mid', 'audio/midi', 'audio/x-midi', 'audio/mp4', 'audio/m4a', 'audio/x-m4a', 'audio/wav', 'audio/x-wav', 'video/3gpp', 'video/3gpp2', 'video/m4v', 'video/x-m4v', 'video/mp4', 'video/mpeg', 'video/x-mpeg', 'video/quicktime', 'video/sd-video'); // QuickTime
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1140
		$types_wmedia = array('application/asx', 'application/x-mplayer2', 'audio/x-ms-wma', 'audio/x-ms-wax', 'video/x-ms-asf-plugin', 'video/x-ms-asf', 'video/x-ms-wm', 'video/x-ms-wmv', 'video/x-ms-wvx'); // Windows Media
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1141
		$types_mp3 = array('audio/mp3', 'audio/x-mp3', 'audio/mpeg', 'audio/x-mpeg'); // MP3
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1142
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1143
		if ($this->get_type() !== null)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1144
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1145
			$type = strtolower($this->type);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1146
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1147
		else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1148
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1149
			$type = null;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1150
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1151
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1152
		// If we encounter an unsupported mime-type, check the file extension and guess intelligently.
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1153
		if (!in_array($type, array_merge($types_flash, $types_fmedia, $types_quicktime, $types_wmedia, $types_mp3)))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1154
		{
19
3d72ae0968f4 upgrade wordpress to 6.0.2
ymh <ymh.work@gmail.com>
parents: 16
diff changeset
  1155
			$extension = $this->get_extension();
3d72ae0968f4 upgrade wordpress to 6.0.2
ymh <ymh.work@gmail.com>
parents: 16
diff changeset
  1156
			if ($extension === null) {
3d72ae0968f4 upgrade wordpress to 6.0.2
ymh <ymh.work@gmail.com>
parents: 16
diff changeset
  1157
				return null;
3d72ae0968f4 upgrade wordpress to 6.0.2
ymh <ymh.work@gmail.com>
parents: 16
diff changeset
  1158
			}
3d72ae0968f4 upgrade wordpress to 6.0.2
ymh <ymh.work@gmail.com>
parents: 16
diff changeset
  1159
3d72ae0968f4 upgrade wordpress to 6.0.2
ymh <ymh.work@gmail.com>
parents: 16
diff changeset
  1160
			switch (strtolower($extension))
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1161
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1162
				// Audio mime-types
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1163
				case 'aac':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1164
				case 'adts':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1165
					$type = 'audio/acc';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1166
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1167
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1168
				case 'aif':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1169
				case 'aifc':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1170
				case 'aiff':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1171
				case 'cdda':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1172
					$type = 'audio/aiff';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1173
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1174
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1175
				case 'bwf':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1176
					$type = 'audio/wav';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1177
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1178
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1179
				case 'kar':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1180
				case 'mid':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1181
				case 'midi':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1182
				case 'smf':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1183
					$type = 'audio/midi';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1184
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1185
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1186
				case 'm4a':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1187
					$type = 'audio/x-m4a';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1188
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1189
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1190
				case 'mp3':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1191
				case 'swa':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1192
					$type = 'audio/mp3';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1193
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1194
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1195
				case 'wav':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1196
					$type = 'audio/wav';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1197
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1198
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1199
				case 'wax':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1200
					$type = 'audio/x-ms-wax';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1201
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1202
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1203
				case 'wma':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1204
					$type = 'audio/x-ms-wma';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1205
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1206
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1207
				// Video mime-types
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1208
				case '3gp':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1209
				case '3gpp':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1210
					$type = 'video/3gpp';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1211
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1212
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1213
				case '3g2':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1214
				case '3gp2':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1215
					$type = 'video/3gpp2';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1216
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1217
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1218
				case 'asf':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1219
					$type = 'video/x-ms-asf';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1220
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1221
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1222
				case 'flv':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1223
					$type = 'video/x-flv';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1224
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1225
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1226
				case 'm1a':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1227
				case 'm1s':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1228
				case 'm1v':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1229
				case 'm15':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1230
				case 'm75':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1231
				case 'mp2':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1232
				case 'mpa':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1233
				case 'mpeg':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1234
				case 'mpg':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1235
				case 'mpm':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1236
				case 'mpv':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1237
					$type = 'video/mpeg';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1238
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1239
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1240
				case 'm4v':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1241
					$type = 'video/x-m4v';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1242
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1243
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1244
				case 'mov':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1245
				case 'qt':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1246
					$type = 'video/quicktime';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1247
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1248
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1249
				case 'mp4':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1250
				case 'mpg4':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1251
					$type = 'video/mp4';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1252
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1253
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1254
				case 'sdv':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1255
					$type = 'video/sd-video';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1256
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1257
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1258
				case 'wm':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1259
					$type = 'video/x-ms-wm';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1260
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1261
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1262
				case 'wmv':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1263
					$type = 'video/x-ms-wmv';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1264
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1265
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1266
				case 'wvx':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1267
					$type = 'video/x-ms-wvx';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1268
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1269
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1270
				// Flash mime-types
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1271
				case 'spl':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1272
					$type = 'application/futuresplash';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1273
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1274
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1275
				case 'swf':
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1276
					$type = 'application/x-shockwave-flash';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1277
					break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1278
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1279
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1280
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1281
		if ($find_handler)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1282
		{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1283
			if (in_array($type, $types_flash))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1284
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1285
				return 'flash';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1286
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1287
			elseif (in_array($type, $types_fmedia))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1288
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1289
				return 'fmedia';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1290
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1291
			elseif (in_array($type, $types_quicktime))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1292
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1293
				return 'quicktime';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1294
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1295
			elseif (in_array($type, $types_wmedia))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1296
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1297
				return 'wmedia';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1298
			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1299
			elseif (in_array($type, $types_mp3))
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1300
			{
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1301
				return 'mp3';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1302
			}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
  1303
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
  1304
			return null;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1305
		}
16
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
  1306
a86126ab1dd4 update enmi-conf
ymh <ymh.work@gmail.com>
parents: 0
diff changeset
  1307
		return $type;
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1308
	}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
  1309
}