phpgroupware-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Phpgroupware-cvs] calendar/class.event.php, 1.1.2.1


From: nomail
Subject: [Phpgroupware-cvs] calendar/class.event.php, 1.1.2.1
Date: Thu, 20 May 2004 16:00:04 -0000

Update of /calendar
Added Files:
        Branch: proposal-branch
          class.event.php

date: 2004/04/16 21:21:51;  author: seek3r;  state: Exp;  lines: +183 -0

Log Message:
bringing savannah cvs back up to date with what we were doing on our private 
cvs server. We will not be doing dev from this cvs tree
=====================================================================
No syntax errors detected in -
=====================================================================
<?php
        
/**************************************************************************\
        * phpGroupWare                                                          
   *
        * http://www.phpgroupware.org                                           
   *
        * This file written by Dan Kuykendall <address@hidden>                 *
        * Copyright (C) 2003 Dan Kuykendall                                     
   *
        * 
-------------------------------------------------------------------------*
        * This program is free software; you can redistribute it and/or modify 
it  *
        * under the terms of the GNU General Public License as published by the 
   *
        * Free Software Foundation; either version 2 of the License, or (at 
your   *
        * option) any later version.                                            
   *
        
\**************************************************************************/

        /* $Id: class.event.php,v 1.1.2.1 2004/04/16 21:21:51 seek3r Exp $ */
        /* $Source: /cvsroot/phpgroupware/calendar/Attic/class.event.php,v $ */

        /* 
        This object will actually handle the event record and all the code to 
convert
        to and from icalendar formats.
        It will also handle the code that will increment recurring events to 
their next dates
        */
        class calendar_event
        {
                var $event_id = 'NEW';
                var $uid;
                var $stamp = array();
                var $start = array();
                var $end = array('db'=>29991231000000, 
'ical'=>'29991231T000000Z', 'array'=>array('year'=>2004, 'mon'=>12, 'mday'=>31, 
'hours'=>0, 'minutes'=>0, 'seconds'=>0));
                var $duration = '1H';
                var $summary = '';
                var $class = 'PUBLIC';
                var $categories = 'APPOINTMENT';
                var $rrule = 'NONE';
                var $transp = 'VISIBLE';
                
                function calendar_event()
                {
                        $args = new safe_args();
                        $args->set('start', NOTSET, 'any');
                        $args->set('end', NOTSET, 'any');
                        $args->set('summary', '', 'any');
                        $args->set('uid',  NOTSET, 'any');
                        $args->set('stamp', NOTSET, 'any');
                        $args->set('duration', NOTSET, 'any');
                        $args->set('class', NOTSET, 'any');
                        $args->set('categories', NOTSET, 'any');
                        $args->set('rrule', NOTSET, 'any');
                        $args->set('transp', NOTSET, 'any');
                        $args->set('event_id',  NOTSET, 'any');
                        $args = $args->get(func_get_args());

                        $this->uid = 
$GLOBALS['phpgw_data']['user']['lid'].'@localhost';
                        
                        
                        $this->stamp = $this->makedates($args['stamp']);
                        $this->start = $this->makedates($args['start']);
                        $this->end = $this->makedates($args['end']);
                        
                }

                function parse_rrules($input)
                {
                        
                }
                
                function makedates($input)
                {
                        if (!isset($input) || empty($input))
                        {
                                $curdate = getdate();
                                $input['year'] = $curdate['year'];
                                $input['mon'] = $curdate['mon'];
                                $input['mday'] = $curdate['mday'];
                                $input['hours'] = $curdate['hours'];
                                $input['minutes'] = $curdate['minutes'];
                                $input['seconds'] = $curdate['seconds'];
                        }
                        
                        if(is_array($input))
                        {
                                $curdate = getdate();
                                if(!isset($input['year']))
                                {
                                        $input['year'] = $curdate['year'];
                                }
                                if(!isset($input['mon']))
                                {
                                        $input['mon'] = $curdate['mon'];
                                }
                                if(!isset($input['mday']))
                                {
                                        $input['mday'] = $curdate['mday'];
                                }
                                if(!isset($input['hours']))
                                {
                                        $input['hours'] = 0;
                                }
                                if(!isset($input['minutes']))
                                {
                                        $input['minutes'] = 0;
                                }
                                if(!isset($input['seconds']))
                                {
                                        $input['seconds'] = 0;
                                }
                                $result['array'] = $input;
                        }
                        else
                        {
                                ereg 
('([0-9]{4})([0-9]{2})([0-9]{2})([0-9]{0,2})([0-9]{0,2})', $exdata, $regs);

                                (int)$result['array']['year'] = 
substr($input,0,4);
                                (int)$result['array']['mon'] = 
substr($input,4,2);
                                (int)$result['array']['mday'] = 
substr($input,6,2);
                                $input = ereg_replace('T', '', $input);
                                $input = ereg_replace('Z', '', $input);
                                if(strlen($input) > 8)
                                {
                                        (int)$result['array']['hours'] = 
substr($input,8,2);
                                        (int)$result['array']['minutes'] = 
substr($input,10,2);
                                        (int)$result['array']['seconds'] = 
substr($input,12,2);
                                }
                                else
                                {
                                        $result['array']['hours'] = 0;
                                        $result['array']['minutes'] = 0;
                                        $result['array']['seconds'] = 0;
                                }
                        }
                        $result['db'] = 
$result['array']['year'].make2digit($result['array']['mon']).make2digit($result['array']['mday']).make2digit($result['array']['hours']).make2digit($result['array']['minutes']).make2digit($result['array']['seconds']);
                        $result['ical'] = 
$result['array']['year'].make2digit($result['array']['mon']).make2digit($result['array']['mday']).'T'.make2digit($result['array']['hours']).make2digit($result['array']['minutes']).make2digit($result['array']['seconds']).'Z';
                        return $result;
                }

                function update()
                {
                        $args = new safe_args();
                        $args->set('start', NOTSET, 'any');
                        $args->set('end', NOTSET, 'any');
                        $args->set('summary', '', 'any');
                        $args->set('uid',  NOTSET, 'any');
                        $args->set('stamp', NOTSET, 'any');
                        $args->set('duration', NOTSET, 'any');
                        $args->set('class', NOTSET, 'any');
                        $args->set('categories', NOTSET, 'any');
                        $args->set('rrule', NOTSET, 'any');
                        $args->set('transp', NOTSET, 'any');
                        $args = $args->get(func_get_args());
                        
                }


                function save()
                {
                        $args = new safe_args();
                        $args->set('uid',  
$GLOBALS['phpgw_data']['user']['lid'], 'any');
                        $args->set('stamp', NOTSET, 'any');
                        $args->set('start', NOTSET, 'any');
                        $args->set('end', 29991231, 'any');
                        $args->set('duration', '1H', 'any');
                        $args->set('summary', '', 'any');
                        $args->set('class', 'PUBLIC', 'any');
                        $args->set('categories', '', 'any');
                        $args->set('rrule', 'NONE', 'any');
                        $args->set('transp', 'VISIBLE', 'any');
                        $args = $args->get(func_get_args());

                        $curdate = phpgw_getdate();
                        if(!isset($args['stamp']))
                        {
                                $args['stamp'] = 
$curdate['year'].$curdate['mon'].$curdate['mday'].'T'.$curdate['hours'].$curdate['minutes'].$curdate['seconds'].'Z';
                        }
                        if(!isset($args['start']))
                        {
                                $args['start'] = 
$curdate['year'].$curdate['mon'].$curdate['mday'].$curdate['hours'].'0000';
                                settype ($args['start'],'integer');
                        }

                        $sql = "INSERT INTO phpgw_cal_events 
(UID,DTSTAMP,DTSTART,DTEND,DURATION,SUMMARY,CLASS,CATEGORIES,RRULE,TRANSP) 
VALUES 
('".$args['uid']."','".$args['stamp']."',".$args['start'].",".$args['end'].",'".$args['duration']."','".$args['summary']."','".$args['class']."','".$args['categories']."','".$args['rrule']."','".$args['transp']."')";
                        $GLOBALS['phpgw']->db->Execute($sql);
                        $GLOBALS['msgbox']->add('Event added.', 'notice');
                }
        }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]