2012-06-03 14:19:28 -04:00
|
|
|
<?php
|
|
|
|
|
2012-08-11 04:07:19 -04:00
|
|
|
namespace Sabre\VObject;
|
|
|
|
|
2012-06-03 14:19:28 -04:00
|
|
|
/**
|
|
|
|
* VObject Parameter
|
|
|
|
*
|
|
|
|
* This class represents a parameter. A parameter is always tied to a property.
|
|
|
|
* In the case of:
|
|
|
|
* DTSTART;VALUE=DATE:20101108
|
|
|
|
* VALUE=DATE would be the parameter name and value.
|
|
|
|
*
|
|
|
|
* @copyright Copyright (C) 2007-2012 Rooftop Solutions. All rights reserved.
|
|
|
|
* @author Evert Pot (http://www.rooftopsolutions.nl/)
|
|
|
|
* @license http://code.google.com/p/sabredav/wiki/License Modified BSD License
|
|
|
|
*/
|
2012-08-11 04:07:19 -04:00
|
|
|
class Parameter extends Node {
|
2012-06-03 14:19:28 -04:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Parameter name
|
|
|
|
*
|
|
|
|
* @var string
|
|
|
|
*/
|
|
|
|
public $name;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Parameter value
|
|
|
|
*
|
|
|
|
* @var string
|
|
|
|
*/
|
|
|
|
public $value;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Sets up the object
|
|
|
|
*
|
|
|
|
* @param string $name
|
|
|
|
* @param string $value
|
|
|
|
*/
|
|
|
|
public function __construct($name, $value = null) {
|
|
|
|
|
|
|
|
$this->name = strtoupper($name);
|
|
|
|
$this->value = $value;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Turns the object back into a serialized blob.
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function serialize() {
|
|
|
|
|
|
|
|
if (is_null($this->value)) {
|
|
|
|
return $this->name;
|
|
|
|
}
|
|
|
|
$src = array(
|
|
|
|
'\\',
|
|
|
|
"\n",
|
|
|
|
';',
|
|
|
|
',',
|
|
|
|
);
|
|
|
|
$out = array(
|
|
|
|
'\\\\',
|
|
|
|
'\n',
|
|
|
|
'\;',
|
|
|
|
'\,',
|
|
|
|
);
|
|
|
|
|
|
|
|
return $this->name . '=' . str_replace($src, $out, $this->value);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Called when this object is being cast to a string
|
|
|
|
*
|
|
|
|
* @return string
|
|
|
|
*/
|
|
|
|
public function __toString() {
|
|
|
|
|
|
|
|
return $this->value;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|