[ Index ]
 

Code source de eGroupWare 1.2.106-2

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/calendar/inc/ -> class.socal.inc.php (sommaire)

some necessary defines used by the calendar

Poids: 1100 lignes (38 kb)
Inclus ou requis: 1 fois
Référencé: 0 fois
Nécessite: 0 fichiers

Définit 1 class

socal:: (19 méthodes):
  socal()
  read()
  cat_filter()
  search()
  save()
  move()
  combine_user()
  split_user()
  participants()
  set_status()
  recurrence()
  unfinished_recuring()
  delete()
  read_alarms()
  read_alarm()
  save_alarm()
  delete_alarms()
  delete_alarm()
  change_delete_user()


Classe: socal  - X-Ref

Class to store all calendar data (storage object)

Tables used by socal:
- egw_cal: general calendar data: cal_id, title, describtion, locations, ...
- egw_cal_dates: start- and enddates (multiple entry per cal_id for recuring events!)
- egw_cal_users: participant info including status (multiple entries per cal_id AND startdate for recuring events)
- egw_cal_repeats: recur-data: type, optional enddate, etc.
- egw_cal_extra: custom fields (multiple entries per cal_id possible)

The new UI, BO and SO classes have a strikt definition, in which time-zone they operate:
UI only operates in user-time, so there have to be no conversation at all !!!
BO's functions take and return user-time only (!), they convert internaly everything to servertime, because
SO operates only on server-time

socal()   X-Ref
Constructor of the socal class


read($ids,$recur_date=0)   X-Ref
reads one or more calendar entries

All times (start, end and modified) are returned as timesstamps in servertime!

param: int/array/string $ids id or array of id's of the entries to read, or string with a single uid
param: int $recur_date=0 if set read the next recurrance at or after the timestamp, default 0 = read the initital one
return: array/boolean array with id => data pairs or false if entry not found

cat_filter($cat_id)   X-Ref
generate SQL to filter after a given category (evtl. incl. subcategories)

param: array/int $cat_id cat-id or array of cat-ids, or !$cat_id for none
return: string SQL to include in the query

search($start,$end,$users,$cat_id=0,$filter='',$query='',$offset=False,$num_rows=0,$order = 'cal_start',$show_rejected=true)   X-Ref
Searches / lists calendar entries, including repeating ones

param: int $start startdate of the search/list (servertime)
param: int $end enddate of the search/list (servertime)
param: int/array $users user-id or array of user-id's, !$users means all entries regardless of users
param: int $cat_id=0 mixed category-id or array of cat-id's, default 0 = all
param: string $filter='' string space delimited filter-names, NOT used atm.
param: string $query='' pattern so search for, if unset or empty all matching entries are returned (no search)
param: int/bool $offset=False offset for a limited query or False (default)
param: int $num_rows=0 number of rows to return if offset set, default 0 = use default in user prefs
param: string $order='cal_start' column-names plus optional DESC|ASC separted by comma
param: boolean $show_rejected=true should the search return rejected invitations
return: array of cal_ids, or false if error in the parameters

save($event,&$set_recurrences,$change_since=0)   X-Ref
Saves or creates an event

We always set cal_modified and cal_modifier and for new events cal_uid.
All other column are only written if they are set in the $event parameter!

param: array $event
param: boolean &$set_recurrences on return: true if the recurrences need to be written, false otherwise
param: int $change_since=0 time from which on the repetitions should be changed, default 0=all
return: boolean/int false on error, cal_id otherwise

move($cal_id,$start,$end,$change_since=0,$old_start=0,$old_end=0)   X-Ref
moves an event to an other start- and end-time taken into account the evtl. recurrences of the event(!)

param: int $cal_id
param: int $start new starttime
param: int $end new endtime
param: int/boolean $change_since=0 false=new entry, > 0 time from which on the repetitions should be changed, default 0=all
param: int $old_start=0 old starttime or (default) 0, to query it from the db
param: int $old_end=0 old starttime or (default) 0
return: int/boolean number of moved recurrences or false on error

combine_user($user_type,$user_id)   X-Ref
combines user_type and user_id into a single string or integer (for users)

param: string $user_type 1-char type: 'u' = user, ...
param: int $user_id id
return: string/int combined id

split_user($uid,&$user_type,&$user_id)   X-Ref
splits the combined user_type and user_id into a single values

param: string $user_type 1-char type: 'u' = user, ...
param: int $user_id id
return: string/int

participants($cal_id,$participants,$change_since=0)   X-Ref
updates the participants of an event, taken into account the evtl. recurrences of the event(!)

param: int $cal_id
param: array $participants id => status pairs
param: int/boolean $change_since=0 false=new entry, > 0 time from which on the repetitions should be changed, default 0=all
param: int $recur_date=0 time of which repetitions should be updated, default 0=all
return: int/boolean number of updated recurrences or false on error

set_status($cal_id,$user_type,$user_id,$status,$recur_date=0)   X-Ref
set the status of one participant for a given recurrence or for all recurrences since now (includes recur_date=0)

param: int $cal_id
param: char $user_type 'u' regular user
param: int $user_id
param: int/char $status numeric status (defines) or 1-char code: 'R', 'U', 'T' or 'A'
param: int $recur_date=0 date to change, or 0 = all since now
return: int number of changed recurrences

recurrence($cal_id,$start,$end,$participants)   X-Ref
creates or update a recurrence in the dates and users table

param: int $cal_id
param: int $start
param: int $end
param: array $participants uid => status pairs

unfinished_recuring($time)   X-Ref
Get all unfinished recuring events (or all users) after a given time

param: int $time
return: array with cal_id => max(cal_start) pairs

delete($cal_id)   X-Ref
deletes an event incl. all recurrences, participants and alarms

param: int $cal_id

read_alarms($cal_id)   X-Ref
read the alarms of a calendar-event specified by $cal_id

alarm-id is a string of 'cal:'.$cal_id.':'.$alarm_nr, it is used as the job-id too

param: int $cal_id
return: array of alarms with alarm-id as key

read_alarm($id)   X-Ref
read a single alarm specified by it's $id

param: string $id alarm-id is a string of 'cal:'.$cal_id.':'.$alarm_nr, it is used as the job-id too
return: array with data of the alarm

save_alarm($cal_id,$alarm)   X-Ref
saves a new or updated alarm

param: int $cal_id Id of the calendar-entry
param: array $alarm array with fields: text, owner, enabled, ..
return: string id of the alarm

delete_alarms($cal_id)   X-Ref
delete all alarms of a calendar-entry

param: int $cal_id Id of the calendar-entry
return: int number of alarms deleted

delete_alarm($id)   X-Ref
delete one alarms identified by its id

param: string $id alarm-id is a string of 'cal:'.$cal_id.':'.$alarm_nr, it is used as the job-id too
return: int number of alarms deleted

change_delete_user($old_user,$new_user=false)   X-Ref
Pas de description



Généré le : Sun Feb 25 17:20:01 2007 par Balluche grâce à PHPXref 0.7