Back to index

d-push  2.0
syncmeetingrequest.php
Go to the documentation of this file.
00001 <?php
00002 /***********************************************
00003 * File      :   syncmeetingrequest.php
00004 * Project   :   Z-Push
00005 * Descr     :   WBXML folder entities that can be parsed
00006 *               directly (as a stream) from WBXML.
00007 *               It is automatically decoded
00008 *               according to $mapping,
00009 *               and the Sync WBXML mappings.
00010 *
00011 * Created   :   05.09.2011
00012 *
00013 * Copyright 2007 - 2011 Zarafa Deutschland GmbH
00014 *
00015 * This program is free software: you can redistribute it and/or modify
00016 * it under the terms of the GNU Affero General Public License, version 3,
00017 * as published by the Free Software Foundation with the following additional
00018 * term according to sec. 7:
00019 *
00020 * According to sec. 7 of the GNU Affero General Public License, version 3,
00021 * the terms of the AGPL are supplemented with the following terms:
00022 *
00023 * "Zarafa" is a registered trademark of Zarafa B.V.
00024 * "Z-Push" is a registered trademark of Zarafa Deutschland GmbH
00025 * The licensing of the Program under the AGPL does not imply a trademark license.
00026 * Therefore any rights, title and interest in our trademarks remain entirely with us.
00027 *
00028 * However, if you propagate an unmodified version of the Program you are
00029 * allowed to use the term "Z-Push" to indicate that you distribute the Program.
00030 * Furthermore you may use our trademarks where it is necessary to indicate
00031 * the intended purpose of a product or service provided you use it in accordance
00032 * with honest practices in industrial or commercial matters.
00033 * If you want to propagate modified versions of the Program under the name "Z-Push",
00034 * you may only do so if you have a written permission by Zarafa Deutschland GmbH
00035 * (to acquire a permission please contact Zarafa at trademark@zarafa.com).
00036 *
00037 * This program is distributed in the hope that it will be useful,
00038 * but WITHOUT ANY WARRANTY; without even the implied warranty of
00039 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00040 * GNU Affero General Public License for more details.
00041 *
00042 * You should have received a copy of the GNU Affero General Public License
00043 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
00044 *
00045 * Consult LICENSE file for details
00046 ************************************************/
00047 
00048 
00049 class SyncMeetingRequest extends SyncObject {
00050     public $alldayevent;
00051     public $starttime;
00052     public $dtstamp;
00053     public $endtime;
00054     public $instancetype;
00055     public $location;
00056     public $organizer;
00057     public $recurrenceid;
00058     public $reminder;
00059     public $responserequested;
00060     public $recurrences;
00061     public $sensitivity;
00062     public $busystatus;
00063     public $timezone;
00064     public $globalobjid;
00065 
00066     function SyncMeetingRequest() {
00067         $mapping = array (
00068                     SYNC_POOMMAIL_ALLDAYEVENT                           => array (  self::STREAMER_VAR      => "alldayevent",
00069                                                                                     self::STREAMER_CHECKS   => array(   self::STREAMER_CHECK_ZEROORONE  => self::STREAMER_CHECK_SETZERO)),
00070 
00071                     SYNC_POOMMAIL_STARTTIME                             => array (  self::STREAMER_VAR      => "starttime",
00072                                                                                     self::STREAMER_TYPE     => self::STREAMER_TYPE_DATE_DASHES,
00073                                                                                     self::STREAMER_CHECKS   => array(   self::STREAMER_CHECK_REQUIRED   => self::STREAMER_CHECK_SETZERO,
00074                                                                                                                         self::STREAMER_CHECK_CMPLOWER   => SYNC_POOMMAIL_ENDTIME ) ),
00075 
00076                     SYNC_POOMMAIL_DTSTAMP                               => array (  self::STREAMER_VAR      => "dtstamp",
00077                                                                                     self::STREAMER_TYPE     => self::STREAMER_TYPE_DATE_DASHES,
00078                                                                                     self::STREAMER_CHECKS   => array(   self::STREAMER_CHECK_REQUIRED   => self::STREAMER_CHECK_SETZERO) ),
00079 
00080                     SYNC_POOMMAIL_ENDTIME                               => array (  self::STREAMER_VAR      => "endtime",
00081                                                                                     self::STREAMER_TYPE     => self::STREAMER_TYPE_DATE_DASHES,
00082                                                                                     self::STREAMER_CHECKS   => array(   self::STREAMER_CHECK_REQUIRED   => self::STREAMER_CHECK_SETONE,
00083                                                                                                                         self::STREAMER_CHECK_CMPHIGHER  => SYNC_POOMMAIL_STARTTIME ) ),
00084                     // Instancetype values
00085                     // 0 = single appointment
00086                     // 1 = master recurring appointment
00087                     // 2 = single instance of recurring appointment
00088                     // 3 = exception of recurring appointment
00089                     SYNC_POOMMAIL_INSTANCETYPE                          => array (  self::STREAMER_VAR      => "instancetype",
00090                                                                                     self::STREAMER_CHECKS   => array(   self::STREAMER_CHECK_REQUIRED   => self::STREAMER_CHECK_SETZERO,
00091                                                                                                                         self::STREAMER_CHECK_ONEVALUEOF => array(0,1,2,3) )),
00092 
00093                     SYNC_POOMMAIL_LOCATION                              => array (  self::STREAMER_VAR      => "location"),
00094                     SYNC_POOMMAIL_ORGANIZER                             => array (  self::STREAMER_VAR      => "organizer",
00095                                                                                     self::STREAMER_CHECKS   => array(   self::STREAMER_CHECK_REQUIRED   => self::STREAMER_CHECK_SETEMPTY ) ),
00096 
00097                     SYNC_POOMMAIL_RECURRENCEID                          => array (  self::STREAMER_VAR      => "recurrenceid",
00098                                                                                     self::STREAMER_TYPE     => self::STREAMER_TYPE_DATE_DASHES),
00099 
00100                     SYNC_POOMMAIL_REMINDER                              => array (  self::STREAMER_VAR      => "reminder",
00101                                                                                     self::STREAMER_CHECKS   => array(   self::STREAMER_CHECK_CMPHIGHER      => -1)),
00102 
00103                     SYNC_POOMMAIL_RESPONSEREQUESTED                     => array (  self::STREAMER_VAR      => "responserequested"),
00104                     SYNC_POOMMAIL_RECURRENCES                           => array (  self::STREAMER_VAR      => "recurrences",
00105                                                                                     self::STREAMER_TYPE     => "SyncMeetingRequestRecurrence",
00106                                                                                     self::STREAMER_ARRAY    => SYNC_POOMMAIL_RECURRENCE),
00107                     // Sensitivity values
00108                     // 0 = Normal
00109                     // 1 = Personal
00110                     // 2 = Private
00111                     // 3 = Confident
00112                     SYNC_POOMMAIL_SENSITIVITY                           => array (  self::STREAMER_VAR      => "sensitivity",
00113                                                                                     self::STREAMER_CHECKS   => array(   self::STREAMER_CHECK_REQUIRED   => self::STREAMER_CHECK_SETZERO,
00114                                                                                                                         self::STREAMER_CHECK_ONEVALUEOF => array(0,1,2,3) )),
00115 
00116                     // Busystatus values
00117                     // 0 = Free
00118                     // 1 = Tentative
00119                     // 2 = Busy
00120                     // 3 = Out of office
00121                     SYNC_POOMMAIL_BUSYSTATUS                            => array (  self::STREAMER_VAR      => "busystatus",
00122                                                                                     self::STREAMER_CHECKS   => array(   self::STREAMER_CHECK_REQUIRED   => self::STREAMER_CHECK_SETTWO,
00123                                                                                                                         self::STREAMER_CHECK_ONEVALUEOF => array(0,1,2,3)  )),
00124 
00125                     SYNC_POOMMAIL_TIMEZONE                              => array (  self::STREAMER_VAR      => "timezone",
00126                                                                                     self::STREAMER_CHECKS   => array(   self::STREAMER_CHECK_REQUIRED   => base64_encode(pack("la64vvvvvvvv"."la64vvvvvvvv"."l",0,"",0,0,0,0,0,0,0,0,0,"",0,0,0,0,0,0,0,0,0)) )),
00127 
00128                     SYNC_POOMMAIL_GLOBALOBJID                           => array (  self::STREAMER_VAR      => "globalobjid"),
00129                 );
00130 
00131         parent::SyncObject($mapping);
00132     }
00133 }
00134 ?>