* * http://www.radix.net/~cknudsen * * Modified by Mark Peters * * -------------------------------------------- * * 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$ */ $phpgw_flags = Array( 'currentapp' => 'calendar', 'enable_nextmatchs_class' => True, 'noheader' => True, 'nonavbar' => True, 'noappheader' => True, 'noappfooter' => True ); $phpgw_info['flags'] = $phpgw_flags; include('../header.inc.php'); $sb = CreateObject('phpgwapi.sbox'); $cal_info = CreateObject('calendar.calendar_item'); function display_item($field,$data) { global $p; $p->set_var('field',$field); $p->set_var('data',$data); $p->parse('output','list',True); } if ($phpgw_info['user']['preferences']['common']['timeformat'] == '12') { $hourformat = 'h'; } else { $hourformat = 'H'; } if ($id > 0) { $cal_stream = $phpgw->calendar->open('INBOX',intval($owner),''); $event = $phpgw->calendar->fetch_event($cal_stream,intval($id)); $can_edit = False; if(($event->owner == $owner) && ($phpgw->calendar->check_perms(PHPGW_ACL_EDIT) == True)) { if($event->public != True) { if($phpgw->calendar->check_perms(16) == True) { $can_edit = True; } } else { $can_edit = True; } } if($can_edit == False) { header('Location: '.$phpgw->link('/calendar/view.php','id='.$id.'&owner='.$owner)); } } elseif(isset($readsess)) { $event = unserialize(str_replace('O:8:"stdClass"','O:13:"calendar_time"',serialize($phpgw->session->appsession('entry','calendar')))); if($event->owner == 0) { $event->owner = $owner; } $can_edit = True; } else { if($phpgw->calendar->check_perms(PHPGW_ACL_ADD) == False) { header('Location: '.$phpgw->link('/calendar/view.php','id='.$id.'&owner='.$owner)); } $cal_stream = $phpgw->calendar->open('INBOX',intval($cal_info->owner),''); $phpgw->calendar->event_init($cal_stream); $phpgw->calendar->event->id = 0; $can_edit = True; if (!isset($hour)) { $thishour = 0; } else { $thishour = (int)$hour; } if (!isset($minute)) { $thisminute = 00; } else { $thisminute = (int)$minute; } $phpgw->calendar->event_set_start($cal_stream,$thisyear,$thismonth,$thisday,$thishour,$this->minute,0); $phpgw->calendar->event_set_end($cal_stream,$thisyear,$thismonth,$thisday,$thishour,$this->minute,0); $phpgw->calendar->event_set_title($cal_stream,''); $phpgw->calendar->event_set_description($cal_stream,''); $phpgw->calendar->event->priority = 2; $phpgw->calendar->event_set_class(True); $phpgw->calendar->event_set_recur_none($cal_stream); $event = $phpgw->calendar->event; } $tz_offset = ((60 * 60) * intval($phpgw_info['user']['preferences']['common']['tz_offset'])); $start = mktime($event->start->hour,$event->start->min,$event->start->sec,$event->start->month,$event->start->mday,$event->start->year) - $tz_offset; $end = mktime($event->end->hour,$event->end->min,$event->end->sec,$event->end->month,$event->end->mday,$event->end->year) - $tz_offset; $phpgw->common->phpgw_header(); echo parse_navbar(); $p = CreateObject('phpgwapi.Template',$phpgw->calendar->template_dir); $templates = Array( 'edit_entry_begin'=> 'edit.tpl', 'list' => 'list.tpl', 'hr' => 'hr.tpl', 'edit_entry_end' => 'edit.tpl', 'form_button' => 'form_button_script.tpl' ); $p->set_file($templates); if($id > 0) { $action = lang('Calendar - Edit'); } else { $action = lang('Calendar - Add'); } if($cd) { $errormsg = $phpgw->common->check_code($cd); } else { $errormsg = ''; } $common_hidden = ''."\n" . ''."\n"; $vars = Array( 'bg_color' => $phpgw_info['theme']['bg_text'], 'calendar_action' => $action, 'action_url' => $phpgw->link('/'.$phpgw_info['flags']['currentapp'].'/edit_entry_handler.php'), 'common_hidden' => $common_hidden, 'errormsg' => $errormsg ); $p->set_var($vars); $p->parse('out','edit_entry_begin'); // Brief Description display_item(lang('Title'),''); // Full Description display_item(lang('Full Description'),''); // Date $day_html = $sb->getDays('start[mday]',intval($phpgw->common->show_date($start,'d'))); $month_html = $sb->getMonthText('start[month]',intval($phpgw->common->show_date($start,'n'))); $year_html = $sb->getYears('start[year]',intval($phpgw->common->show_date($start,'Y')),intval($phpgw->common->show_date($start,'Y'))); display_item(lang('Start Date'),$phpgw->common->dateformatorder($year_html,$month_html,$day_html)); // Time $amsel = ' checked'; $pmsel = ''; if ($phpgw_info['user']['preferences']['common']['timeformat'] == '12') { if ($event->start->hour >= 12) { $amsel = ''; $pmsel = ' checked'; } } $str = ':'; if ($phpgw_info['user']['preferences']['common']['timeformat'] == '12') { $str .= 'am'; $str .= 'pm'; } display_item(lang('Start Time'),$str); // End Date $day_html = $sb->getDays('end[mday]',intval($phpgw->common->show_date($end,'d'))); $month_html = $sb->getMonthText('end[month]',intval($phpgw->common->show_date($end,'n'))); $year_html = $sb->getYears('end[year]',intval($phpgw->common->show_date($end,'Y')),intval($phpgw->common->show_date($end,'Y'))); display_item(lang('End Date'),$phpgw->common->dateformatorder($year_html,$month_html,$day_html)); // End Time $amsel = ' checked'; $pmsel = ''; if ($phpgw_info['user']['preferences']['common']['timeformat'] == '12') { if ($event->end->hour >= 12) { $amsel = ''; $pmsel = ' checked'; } } $str = ':'; if ($phpgw_info['user']['preferences']['common']['timeformat'] == '12') { $str .= 'am'; $str .= 'pm'; } display_item(lang("End Time"),$str); // Priority display_item(lang('Priority'),$sb->getPriority('priority',$event->priority)); // Access $str = 'public != True) { $str .= ' checked'; } $str .= '>'; display_item(lang('Private'),$str); // Participants $accounts = $phpgw->acl->get_ids_for_location('run',1,'calendar'); $users = Array(); for($i=0;$icommon->grab_owner_name(intval($accounts[$i])); if($phpgw->accounts->get_type(intval($accounts[$i])) == 'g') { $group_members = $phpgw->acl->get_ids_for_location(intval($accounts[$i]),1,'phpgw_group'); if($group_members != False) { for($j=0;$jcommon->grab_owner_name($group_members[$j]); } } } } } } $str = "\n".' '; display_item(lang('Participants'),$str); // I Participate $participate = False; if($id) { for($i=0;$iparticipants);$i++) { if($event->participants[$i] == $owner) { $participate = True; } } } $str = ' 0) && ($participate == True)) || !isset($id)) { $str .= ' checked'; } $str .= '>'; display_item($phpgw->common->grab_owner_name($owner).' '.lang('Participates'),$str); // Categories $c = CreateObject('phpgwapi.categories',Array($owner,'calendar')); if($c->total('calendar') > 0) { $str = "\n".' '; display_item(lang('Categories'),$str); } unset($c); // Repeat Type $p->set_var('hr_text','
'); $p->parse('output','hr',True); $p->set_var('hr_text','
'.lang('Repeating Event Information').'

'); $p->parse('output','hr',True); $str = ''; display_item(lang('Repeat Type'),$str); $p->set_var('field',lang('Repeat End Date')); $str = 'recur_enddate->year != 0 && $event->recur_enddate->month != 0 && $event->recur_enddate->mday != 0) { $str .= ' checked'; $recur_end = mktime($event->recur_enddate->hour,$event->recur_enddate->min,$event->recur_enddate->sec,$event->recur_enddate->month,$event->recur_enddate->mday,$event->recur_enddate->year) - $tz_offset; } else { $recur_end = mktime($event->start->hour,$event->start->min,$event->start->sec,$event->start->month,$event->start->mday,$event->start->year) + 86400 - $tz_offset; } $str .= '>'.lang('Use End Date').' '; $day_html = $sb->getDays('recur_enddate[mday]',intval($phpgw->common->show_date($recur_end,'d'))); $month_html = $sb->getMonthText('recur_enddate[month]',intval($phpgw->common->show_date($recur_end,'n'))); $year_html = $sb->getYears('recur_enddate[year]',intval($phpgw->common->show_date($recur_end,'Y')),intval($phpgw->common->show_date($recur_end,'Y'))); $str .= $phpgw->common->dateformatorder($year_html,$month_html,$day_html); display_item(lang('Repeat End Date'),$str); $str = 'recur_data & M_SUNDAY) ?' checked':'').'> '.lang('Sunday').' '; $str .= 'recur_data & M_MONDAY) ?' checked':'').'> '.lang('Monday').' '; $str .= 'recur_data & M_TUESDAY) ?' checked':'').'> '.lang('Tuesday').' '; $str .= 'recur_data & M_WEDNESDAY) ?' checked':'').'> '.lang('Wednesday').'
'; $str .= 'recur_data & M_THURSDAY) ?' checked':'').'> '.lang('Thursday').' '; $str .= 'recur_data & M_FRIDAY) ?' checked':'').'> '.lang('Friday').' '; $str .= 'recur_data & M_SATURDAY) ?' checked':'').'> '.lang('Saturday').' '; display_item(lang('Repeat Day').'
'.lang('(for weekly)'),$str); display_item(lang('Frequency'),''); $p->set_var('submit_button',lang('Submit')); if ($id > 0) { $p->set_var('action_url_button',$phpgw->link('/'.$phpgw_info['flags']['currentapp'].'/delete.php','id='.$id)); $p->set_var('action_text_button',lang('Delete')); $p->set_var('action_confirm_button',"onClick=\"return confirm('".lang("Are you sure\\nyou want to\\ndelete this entry ?\\n\\nThis will delete\\nthis entry for all users.")."')\""); $p->parse('delete_button','form_button'); $p->pparse('out','edit_entry_end'); } else { $p->set_var('delete_button',''); $p->pparse('out','edit_entry_end'); } $phpgw->common->phpgw_footer(); ?>