angelovcom.net

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

Credit.php (3642B)


      1 <?php
      2 /**
      3  * SimplePie
      4  *
      5  * A PHP-Based RSS and Atom Feed Framework.
      6  * Takes the hard work out of managing a complete RSS/Atom solution.
      7  *
      8  * Copyright (c) 2004-2016, Ryan Parman, Sam Sneddon, Ryan McCue, and contributors
      9  * All rights reserved.
     10  *
     11  * Redistribution and use in source and binary forms, with or without modification, are
     12  * permitted provided that the following conditions are met:
     13  *
     14  * 	* Redistributions of source code must retain the above copyright notice, this list of
     15  * 	  conditions and the following disclaimer.
     16  *
     17  * 	* Redistributions in binary form must reproduce the above copyright notice, this list
     18  * 	  of conditions and the following disclaimer in the documentation and/or other materials
     19  * 	  provided with the distribution.
     20  *
     21  * 	* Neither the name of the SimplePie Team nor the names of its contributors may be used
     22  * 	  to endorse or promote products derived from this software without specific prior
     23  * 	  written permission.
     24  *
     25  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS
     26  * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
     27  * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS
     28  * AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     29  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
     30  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     31  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
     32  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     33  * POSSIBILITY OF SUCH DAMAGE.
     34  *
     35  * @package SimplePie
     36  * @copyright 2004-2016 Ryan Parman, Sam Sneddon, Ryan McCue
     37  * @author Ryan Parman
     38  * @author Sam Sneddon
     39  * @author Ryan McCue
     40  * @link http://simplepie.org/ SimplePie
     41  * @license http://www.opensource.org/licenses/bsd-license.php BSD License
     42  */
     43 
     44 /**
     45  * Handles `<media:credit>` as defined in Media RSS
     46  *
     47  * Used by {@see SimplePie_Enclosure::get_credit()} and {@see SimplePie_Enclosure::get_credits()}
     48  *
     49  * This class can be overloaded with {@see SimplePie::set_credit_class()}
     50  *
     51  * @package SimplePie
     52  * @subpackage API
     53  */
     54 class SimplePie_Credit
     55 {
     56 	/**
     57 	 * Credited role
     58 	 *
     59 	 * @var string
     60 	 * @see get_role()
     61 	 */
     62 	var $role;
     63 
     64 	/**
     65 	 * Organizational scheme
     66 	 *
     67 	 * @var string
     68 	 * @see get_scheme()
     69 	 */
     70 	var $scheme;
     71 
     72 	/**
     73 	 * Credited name
     74 	 *
     75 	 * @var string
     76 	 * @see get_name()
     77 	 */
     78 	var $name;
     79 
     80 	/**
     81 	 * Constructor, used to input the data
     82 	 *
     83 	 * For documentation on all the parameters, see the corresponding
     84 	 * properties and their accessors
     85 	 */
     86 	public function __construct($role = null, $scheme = null, $name = null)
     87 	{
     88 		$this->role = $role;
     89 		$this->scheme = $scheme;
     90 		$this->name = $name;
     91 	}
     92 
     93 	/**
     94 	 * String-ified version
     95 	 *
     96 	 * @return string
     97 	 */
     98 	public function __toString()
     99 	{
    100 		// There is no $this->data here
    101 		return md5(serialize($this));
    102 	}
    103 
    104 	/**
    105 	 * Get the role of the person receiving credit
    106 	 *
    107 	 * @return string|null
    108 	 */
    109 	public function get_role()
    110 	{
    111 		if ($this->role !== null)
    112 		{
    113 			return $this->role;
    114 		}
    115 
    116 		return null;
    117 	}
    118 
    119 	/**
    120 	 * Get the organizational scheme
    121 	 *
    122 	 * @return string|null
    123 	 */
    124 	public function get_scheme()
    125 	{
    126 		if ($this->scheme !== null)
    127 		{
    128 			return $this->scheme;
    129 		}
    130 
    131 		return null;
    132 	}
    133 
    134 	/**
    135 	 * Get the credited person/entity's name
    136 	 *
    137 	 * @return string|null
    138 	 */
    139 	public function get_name()
    140 	{
    141 		if ($this->name !== null)
    142 		{
    143 			return $this->name;
    144 		}
    145 
    146 		return null;
    147 	}
    148 }