0byt3m1n1
Path:
/
data
/
applications
/
aps
/
tikiwiki
/
7.0-0
/
standard
/
htdocs
/
lib
/
ical
/
iCal
/
[
Home
]
File: Attendee.php
<?php /* PHP iCal Interface Library Copyright (C) 2005 Gregory Szorc <gregory.szorc@case.edu> This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ /** * iCal (RFC 2245) class definition * * PHP version 5 * * @package iCal * @author Gregory Szorc <gregory.szorc@case.edu> * @license http://www.gnu.org/copyleft/lesser.html LGPL License 2.1 */ /** * Constants defined in File_iCal needed */ //require_once('File_iCal.php'); /** * Attendee for an event * * Attendee represent persons who attend events. Attendees have many different properties that can set. * For this reason, this library implements an attendee object. * * @package iCal * @category File */ class File_iCal_Attendee { /** * @access protected */ protected $_address; /** * @access protected */ protected $_cn; /** * @access protected */ protected $_role; /** * @access protected */ protected $_status; /** * @access protected */ protected $_rsvp; /** * @access protected */ protected $_cutype; /** * @access protected */ protected $_member = array(); /** * @access protected */ protected $_delegatedto = array(); /** * @access protected */ protected $_delegatedfrom = array(); /** * @access protected */ protected $_sentby; /** * @access protected */ protected $_dir; /** * Create an an attendee * * The parameter for the constructor is NOT the name of the person. Instead, it is a contact address, such as e-mail. * * The constructor will also set some default values for the new attendee. 1) The status will be set to "NEEDS ACTION" 2) The type of attendee will be set to an individual * * @access public * @param string The contact address for the attendee */ public function __construct($address) { $this->_address = $address; self::setStatusNeedsAction(); self::makeIndividual(); } /** * Returns the address associated with an attendee * * @access public * @return string The address for the attendee */ public function getAddress() { return $this->_address; } /** * Sets the common name (CN) of the attendee * * The common name of the attendee is the human-readable name. e.g. John Smith * * @access public * @param string A string to which the common name will be set */ public function setCommonName($cn) { $this->_cn = $cn; } /** * Returns the common name for this attendee * * @access public * @return string The common name for this attendee */ public function getCommonName() { return $this->_cn; } public function makeChair() { $this->_role = File_iCal::ICAL_ROLE_CHAIR; } public function makeRequiredParticipant() { $this->_role = File_iCal::IICAL_ROLE_REQUIRED; } public function makeOptionalParticipant() { $this->_role = File_iCal::IICAL_ROLE_OPTIONAL; } public function makeNonParticipant() { $this->_role = File_iCal::IICAL_ROLE_NONPARTICIPATING; } public function getRole() { return $this->_role; } public function setStatusNeedsAction() { $this->_status = File_iCal::IICAL_STATUS_NEEDSACTION; } public function setStatusAccepted() { $this->_status = File_iCal::IICAL_STATUS_ACCEPTED; } public function setStatusDeclined() { $this->_status = File_iCal::IICAL_STATUS_DECLINED; } public function setStatusTentative() { $this->_status = File_iCal::IICAL_STATUS_TENTATIVE; } public function setStatusDelegated() { $this->_status = File_iCal::IICAL_STATUS_DELEGATED; } public function getStatus() { return $this->_status; } public function setRSVP($bool) { $bool ? $this->_rsvp = true : $this->_rsvp = false; } public function getRSVP() { return $this->_rsvp; } public function makeIndividual() { $this->_cutype = File_iCal::IICAL_USERTYPE_INDIVIDUAL; } public function makeGroup() { $this->_cutype = File_iCal::IICAL_USERTYPE_GROUP; } public function makeResource() { $this->_cutype = File_iCal::IICAL_USERTYPE_RESOURCE; } public function makeRoom() { $this->_cutype = File_iCal::IICAL_USERTYPE_ROOM; } public function getUserType() { return $this->_cutype; } public function addMember($m) { if (!in_array($m, $this->_member)) { $this->_member[] = $m; } } public function getMembers() { return $this->_member; } public function addDelegatee($d) { if (!in_array($d, $this->_delegatedto)) { $this->_delegatedto = $d; } } public function getDelegatees() { return $this->_delagatedto; } public function addDelegator($d) { if (!in_array($d, $this->_delegatedfrom)) { $this->_delegatedfrom = $d; } } public function getDelegators() { return $this->_delegatedfrom; } public function setSentBy($s) { $this->_sentby = $s; } public function getSentBy() { return $this->_sentby; } public function setDirectory($d) { $this->_dir = $d; } public function getDirectory() { return $this->_dir; } }