You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(5) |
Feb
(25) |
Mar
(18) |
Apr
|
May
(26) |
Jun
(14) |
Jul
(1) |
Aug
(5) |
Sep
(82) |
Oct
(3) |
Nov
(130) |
Dec
(9) |
2004 |
Jan
(4) |
Feb
(62) |
Mar
|
Apr
(3) |
May
(100) |
Jun
|
Jul
(6) |
Aug
(49) |
Sep
(33) |
Oct
(47) |
Nov
(2) |
Dec
(1) |
2005 |
Jan
|
Feb
(4) |
Mar
(1) |
Apr
(8) |
May
(17) |
Jun
|
Jul
(1) |
Aug
(2) |
Sep
(26) |
Oct
(18) |
Nov
(37) |
Dec
(14) |
2006 |
Jan
(2) |
Feb
(18) |
Mar
(34) |
Apr
(52) |
May
(7) |
Jun
(3) |
Jul
(2) |
Aug
(10) |
Sep
|
Oct
|
Nov
(18) |
Dec
(4) |
2007 |
Jan
|
Feb
(7) |
Mar
(7) |
Apr
(6) |
May
(52) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(15) |
Nov
|
Dec
(1) |
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(250) |
2009 |
Jan
(35) |
Feb
(45) |
Mar
|
Apr
(4) |
May
(35) |
Jun
(13) |
Jul
(49) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(11) |
2010 |
Jan
(3) |
Feb
(30) |
Mar
|
Apr
(35) |
May
(12) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(4) |
From: <ji...@us...> - 2007-05-18 21:18:05
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/default In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30241/phpicalendar/templates/default Modified Files: month_large.tpl Log Message: Month location display again Index: month_large.tpl =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/templates/default/month_large.tpl,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** month_large.tpl 18 May 2007 20:19:27 -0000 1.9 --- month_large.tpl 18 May 2007 21:18:00 -0000 1.10 *************** *** 17,21 **** {ALLDAY} {EVENT} - {LOCATION} </td> <!-- switch notthismonth off --> --- 17,20 ---- *************** *** 27,31 **** {ALLDAY} {EVENT} - {LOCATION} </td> <!-- switch istoday off --> --- 26,29 ---- *************** *** 37,41 **** {ALLDAY} {EVENT} - {LOCATION} </td> <!-- switch ismonth off --> --- 35,38 ---- |
From: <ji...@us...> - 2007-05-18 21:18:05
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30241/phpicalendar/functions Modified Files: template.php Log Message: Month location display again Index: template.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/template.php,v retrieving revision 1.90 retrieving revision 1.91 diff -C2 -d -r1.90 -r1.91 *** template.php 18 May 2007 19:00:16 -0000 1.90 --- template.php 18 May 2007 21:18:00 -0000 1.91 *************** *** 929,932 **** --- 929,933 ---- $switch['ALLDAY'] .= '<div class="V10"><img src="templates/'.$template.'/images/monthdot_'.$event_calno.'.gif" alt="" width="9" height="9" border="0" />'; $switch['ALLDAY'] .= openevent($daylink, $cal_time, $uid, $val, $month_event_lines, 15, 'psf'); + $switch['ALLDAY'] .= (isset($val['location']) && $val['location'] != '') ? $val['location']."<br />" : ''; $switch['ALLDAY'] .= '</div>'; } else { *************** *** 937,941 **** if ($type == 'large') { $switch['EVENT'] .= '<div class="V9"><img src="templates/'.$template.'/images/monthdot_'.$event_calno.'.gif" alt="" width="9" height="9" border="0" />'; ! $switch['EVENT'] .= openevent($daylink, $cal_time, $uid, $val, $month_event_lines, 10, 'ps3', "$start2 ").'<br />'; $switch['EVENT'] .= '</div>'; } else { --- 938,943 ---- if ($type == 'large') { $switch['EVENT'] .= '<div class="V9"><img src="templates/'.$template.'/images/monthdot_'.$event_calno.'.gif" alt="" width="9" height="9" border="0" />'; ! $switch['EVENT'] .= openevent($daylink, $cal_time, $uid, $val, $month_event_lines, 10, 'ps3', "$start2 ").''; ! $switch['EVENT'] .= (isset($val['location']) && $val['location'] != '') ? "<br />".$val['location']."<br />" : ''; $switch['EVENT'] .= '</div>'; } else { *************** *** 943,947 **** } } - $switch['LOCATION'] = (isset($val['location'])) ? "<span class='V9G'>".$val['location']."</span>" : ''; } } --- 945,948 ---- *************** *** 952,956 **** $switch['ALLDAY'] = (isset($switch['ALLDAY'])) ? $switch['ALLDAY'] : ''; ! #print_r($switch); foreach ($switch as $tag => $data) { --- 953,957 ---- $switch['ALLDAY'] = (isset($switch['ALLDAY'])) ? $switch['ALLDAY'] : ''; ! #echo "<pre>";print_r($switch);echo "</pre>"; foreach ($switch as $tag => $data) { |
From: <ji...@us...> - 2007-05-18 21:18:05
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/red In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30241/phpicalendar/templates/red Modified Files: month_large.tpl Log Message: Month location display again Index: month_large.tpl =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/templates/red/month_large.tpl,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** month_large.tpl 18 May 2007 19:03:08 -0000 1.1 --- month_large.tpl 18 May 2007 21:18:00 -0000 1.2 *************** *** 17,21 **** {ALLDAY} {EVENT} - {LOCATION} </td> <!-- switch notthismonth off --> --- 17,20 ---- *************** *** 27,31 **** {ALLDAY} {EVENT} - {LOCATION} </td> <!-- switch istoday off --> --- 26,29 ---- *************** *** 37,41 **** {ALLDAY} {EVENT} - {LOCATION} </td> <!-- switch ismonth off --> --- 35,38 ---- |
From: <ji...@us...> - 2007-05-18 21:18:05
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/green In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30241/phpicalendar/templates/green Modified Files: month_large.tpl Log Message: Month location display again Index: month_large.tpl =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/templates/green/month_large.tpl,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** month_large.tpl 18 May 2007 19:03:07 -0000 1.1 --- month_large.tpl 18 May 2007 21:18:00 -0000 1.2 *************** *** 17,21 **** {ALLDAY} {EVENT} - {LOCATION} </td> <!-- switch notthismonth off --> --- 17,20 ---- *************** *** 27,31 **** {ALLDAY} {EVENT} - {LOCATION} </td> <!-- switch istoday off --> --- 26,29 ---- *************** *** 37,41 **** {ALLDAY} {EVENT} - {LOCATION} </td> <!-- switch ismonth off --> --- 35,38 ---- |
From: <ji...@us...> - 2007-05-18 20:47:20
|
Update of /cvsroot/phpicalendar/phpicalendar/calendars In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18144/phpicalendar/calendars Modified Files: publish.php Log Message: Changed 204 to 200 to fix bug 1704227 Index: publish.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/calendars/publish.php,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** publish.php 16 May 2007 23:04:41 -0000 1.7 --- publish.php 18 May 2007 20:47:21 -0000 1.8 *************** *** 243,247 **** } ! header('HTTP/1.1 204 Successful.'); exit; --- 243,247 ---- } ! header('HTTP/1.1 200 OK'); exit; |
From: <ji...@us...> - 2007-05-18 20:38:31
|
Update of /cvsroot/phpicalendar/phpicalendar/languages In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14567/phpicalendar/languages Modified Files: polish.inc.php Log Message: Upgrade polish lang file for 2.0 Index: polish.inc.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/languages/polish.inc.php,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** polish.inc.php 21 Mar 2006 09:52:29 -0000 1.28 --- polish.inc.php 18 May 2007 20:38:31 -0000 1.29 *************** *** 2,6 **** // Polish language include ! // For version 1.0 PHP iCalendar // // Translation by StanisÅaw CieÅlicki (st...@po...) --- 2,6 ---- // Polish language include ! // For version 2.0 PHP iCalendar // // Translation by StanisÅaw CieÅlicki (st...@po...) *************** *** 8,128 **** // Submit new translations to ch...@ch... ! $day_lang = 'DzieÅ'; ! $week_lang = 'TydzieÅ'; ! $month_lang = 'MiesiÄ c'; ! $year_lang = 'Rok'; ! $calendar_lang = 'Kalendarz'; ! $next_day_lang = 'NastÄpny dzieÅ'; ! $next_month_lang = 'PrzyszÅy miesiÄ c'; ! $next_week_lang = 'PrzyszÅy tydzieÅ'; ! $next_year_lang = 'PrzyszÅy rok'; ! $last_day_lang = 'Poprzedni dzieÅ'; ! $last_month_lang = 'ZeszÅy MiesiÄ c'; ! $last_week_lang = 'ZeszÅy tydzieÅ'; ! $last_year_lang = 'ZeszÅy rok'; ! $subscribe_lang = 'Subskrybuj'; ! $download_lang = 'Pobierz'; ! $powered_by_lang = 'Wspierane przez'; ! $event_lang = 'Zadanie'; ! $event_start_lang = 'PoczÄ tek'; ! $event_end_lang = 'Koniec'; ! $this_months_lang = 'Zadania w danym miesiÄ cu'; ! $date_lang = 'Data'; ! $summary_lang = 'Info'; ! $all_day_lang = 'Zadanie na caÅy dzieÅ'; ! $notes_lang = 'Notes'; ! $this_years_lang = 'Zadania w danym roku'; ! $today_lang = 'Dzisiaj'; ! $this_week_lang = 'BieÅ¼Ä cy tydzieÅ'; ! $this_month_lang = 'BieÅ¼Ä cy miesiÄ c'; ! $jump_lang = 'Idź do'; ! $tomorrows_lang = 'Zadania na jutro'; ! $goday_lang = 'Dzisiaj'; ! $goweek_lang = 'BieÅ¼Ä cy tydzieÅ'; ! $gomonth_lang = 'BieÅ¼Ä cy miesiÄ c'; ! $goyear_lang = 'BieÅ¼Ä cy rok'; ! $search_lang = 'Szukaj'; // the verb ! $results_lang = 'Wyniki poszukiwania'; ! $query_lang = 'Pytanie: '; // will be followed by the search query ! $no_results_lang = 'Brak poszukiwanych zadaÅ'; ! $goprint_lang = 'Do druku'; ! $time_lang = 'Czas'; ! $summary_lang = 'Podsumowanie'; ! $description_lang = 'Opis'; ! $this_site_is_lang = 'Ta strona jest'; ! $no_events_day_lang = 'Brak zadaÅ na ten dzieÅ.'; ! $no_events_week_lang = 'Brak zadaÅ na ten tydzieÅ.'; ! $no_events_month_lang = 'Brak zadaÅ na ten miesiÄ c.'; ! $rss_day_date = 'G:i A'; // Lists just the time ! $rss_week_date = '%A, %e %B'; // Lists just the day ! $rss_month_date = '%A, %e %B'; // Lists just the day ! $rss_language = 'en-us'; ! $search_took_lang = 'Szukanie zajÄÅo %s sekund'; ! $recurring_event_lang = 'Zadanie rekurencyjne'; ! $exception_lang = 'WyjÄ tek'; ! $no_query_lang = 'Brak pytania'; ! $preferences_lang = 'Preferencje'; ! $printer_lang = 'Drukarka'; ! $select_lang_lang = 'Wybierz domyÅlny jÄzyk:'; ! $select_cal_lang = 'Wybierz domyÅlny kalendarz:'; ! $select_view_lang = 'Wybierz domyÅlny podglÄ d:'; ! $select_time_lang = 'Wybierz domyÅlny czas rozpoczÄcia dnia:'; ! $select_day_lang = 'Wybierz domyÅlny dzieÅ rozpoczynajÄ cy tydzieÅ:'; ! $select_style_lang = 'Wybierz domyÅlny styl:'; ! $set_prefs_lang = 'Ustaw preferencje'; ! $completed_date_lang = 'ZakoÅczono'; ! $completed_lang = 'ZakoÅczono'; ! $created_lang = 'Utworzono:'; ! $due_lang = 'Stosowany:'; ! $priority_lang = 'Priorytet:'; ! $priority_high_lang = 'Wysoki'; ! $priority_low_lang = 'Niski'; ! $priority_medium_lang = 'Åredni'; ! $priority_none_lang = 'Å»aden'; ! $status_lang = 'Status'; ! $todo_lang = 'Do zrobienia'; ! $unfinished_lang = 'Niewykonane'; ! $prefs_set_lang = 'Twoje preferencje zostaÅy ustawione.'; ! $prefs_unset_lang = 'Preferencje przywrócone. Zmiany bÄdÄ widoczne po ponownym zaÅadowaniu strony.'; ! $unset_prefs_lang = 'PrzywrÃ³Ä preferencje:'; ! $organizer_lang = 'Organizer'; ! $attendee_lang = 'Attendee'; ! $location_lang = 'PoÅożenie'; ! $admin_header_lang = 'Administracja PHP iCalendara'; ! $username_lang = 'Nazwa użytkownika'; ! $password_lang = 'HasÅo'; ! $login_lang = 'Login'; ! $invalid_login_lang = 'ZÅa nazwa użytkownika lub hasÅo.'; ! $addupdate_cal_lang = 'Dodaj lub popraw Kalendarz'; ! $addupdate_desc_lang = 'Dodaj Kalendarz przez zaÅadowanie nowego pliku. Popraw Kalendarz przez zaÅadowanie pliku o tej samej nazwie.'; ! $delete_cal_lang = 'UsuÅ Kalendarz'; ! $logout_lang = 'Wyloguj'; ! $cal_file_lang = 'Plik Kalendarza'; ! $php_error_lang = 'BÅÄ d PHP'; ! $upload_error_gen_lang = 'PowstaÅ problem z plikiem który zaÅadowaÅeÅ.'; ! $upload_error_lang[0] = 'PowstaÅ problem z plikiem który zaÅadowaÅeÅ.'; ! $upload_error_lang[1] = 'Plik który próbujesz zaÅadowaÄ jest za duży.'; ! $upload_error_lang[2] = 'Plik który próbujesz zaÅadowaÄ jest za duży.'; ! $upload_error_lang[3] = 'Plik który próbujesz zaÅadowaÄ zostaÅ zaÅadowany czÄÅciowo.'; ! $upload_error_lang[4] = 'Musisz wybraÄ plik, aby go zaÅadowaÄ.'; ! $upload_error_type_lang = 'Tylko pliki .ics mogÄ zostaÄ zaÅadowane.'; ! $copy_error_lang = 'Kopiowanie pliku niepowiodÅo siÄ'; ! $delete_error_lang = 'Usuwanie pliku niepowiodÅo siÄ'; ! $delete_success_lang = 'zostaÅ skasowany.'; ! $action_success_lang = 'ZakoÅczono sukcesem.'; ! $submit_lang = 'WyÅlij'; ! $delete_lang = 'Wymaż'; // ----- New for 1.0 $all_cal_comb_lang = 'All calendars combined'; // - navigation ! $back_lang = 'Wstecz'; ! $next_lang = 'Nast.'; ! $prev_lang = 'Poprz.'; ! $day_view_lang = 'PodglÄ d dnia'; ! $week_view_lang = 'PodglÄ d tygodnia'; ! $month_view_lang = 'PodglÄ d miesiÄ ca'; ! $year_view_lang = 'PodglÄ d roku'; // --------------------------------- --- 8,141 ---- // Submit new translations to ch...@ch... ! $lang['l_day'] = 'DzieÅ'; ! $lang['l_week'] = 'TydzieÅ'; ! $lang['l_month'] = 'MiesiÄ c'; ! $lang['l_year'] = 'Rok'; ! $lang['l_calendar'] = 'Kalendarz'; ! $lang['l_next_day'] = 'NastÄpny dzieÅ'; ! $lang['l_next_month'] = 'PrzyszÅy miesiÄ c'; ! $lang['l_next_week'] = 'PrzyszÅy tydzieÅ'; ! $lang['l_next_year'] = 'PrzyszÅy rok'; ! $lang['l_last_day'] = 'Poprzedni dzieÅ'; ! $lang['l_last_month'] = 'ZeszÅy MiesiÄ c'; ! $lang['l_last_week'] = 'ZeszÅy tydzieÅ'; ! $lang['l_last_year'] = 'ZeszÅy rok'; ! $lang['l_subscribe'] = 'Subskrybuj'; ! $lang['l_download'] = 'Pobierz'; ! $lang['l_powered_by'] = 'Wspierane przez'; ! $lang['l_event'] = 'Zadanie'; ! $lang['l_event_start'] = 'PoczÄ tek'; ! $lang['l_event_end'] = 'Koniec'; ! $lang['l_this_months'] = 'Zadania w danym miesiÄ cu'; ! $lang['l_date'] = 'Data'; ! $lang['l_summary'] = 'Info'; ! $lang['l_all_day'] = 'Zadanie na caÅy dzieÅ'; ! $lang['l_notes'] = 'Notes'; ! $lang['l_this_years'] = 'Zadania w danym roku'; ! $lang['l_today'] = 'Dzisiaj'; ! $lang['l_this_week'] = 'BieÅ¼Ä cy tydzieÅ'; ! $lang['l_this_month'] = 'BieÅ¼Ä cy miesiÄ c'; ! $lang['l_jump'] = 'Idź do'; ! $lang['l_tomorrows'] = 'Zadania na jutro'; ! $lang['l_goday'] = 'Dzisiaj'; ! $lang['l_goweek'] = 'BieÅ¼Ä cy tydzieÅ'; ! $lang['l_gomonth'] = 'BieÅ¼Ä cy miesiÄ c'; ! $lang['l_goyear'] = 'BieÅ¼Ä cy rok'; ! $lang['l_search'] = 'Szukaj'; // the verb ! $lang['l_results'] = 'Wyniki poszukiwania'; ! $lang['l_pick_multiple'] = 'Pick multiple'; ! $lang['l_query'] = 'Pytanie: '; // will be followed by the search query ! $lang['l_no_results'] = 'Brak poszukiwanych zadaÅ'; ! $lang['l_goprint'] = 'Do druku'; ! $lang['l_time'] = 'Czas'; ! $lang['l_summary'] = 'Podsumowanie'; ! $lang['l_description'] = 'Opis'; ! $lang['l_this_site_is'] = 'Ta strona jest'; ! $lang['l_no_events_day'] = 'Brak zadaÅ na ten dzieÅ.'; ! $lang['l_no_events_week'] = 'Brak zadaÅ na ten tydzieÅ.'; ! $lang['l_no_events_month'] = 'Brak zadaÅ na ten miesiÄ c.'; ! $lang['l_rss_day_date'] = 'G:i A'; // Lists just the time ! $lang['l_rss_week_date '] = '%A, %e %B'; // Lists just the day ! $lang['l_rss_month_date '] = '%A, %e %B'; // Lists just the day ! $lang['l_rss_language'] = 'en-us'; //should this be pl? ! $lang['l_search_took'] = 'Szukanie zajÄÅo %s sekund'; ! $lang['l_recurring_event'] = 'Zadanie rekurencyjne'; ! $lang['l_exception'] = 'WyjÄ tek'; ! $lang['l_no_query'] = 'Brak pytania'; ! $lang['l_preferences'] = 'Preferencje'; ! $lang['l_printer'] = 'Drukarka'; ! $lang['l_select_lang'] = 'Wybierz domyÅlny jÄzyk:'; ! $lang['l_select_cal'] = 'Wybierz domyÅlny kalendarz:'; ! $lang['l_select_view'] = 'Wybierz domyÅlny podglÄ d:'; ! $lang['l_select_time'] = 'Wybierz domyÅlny czas rozpoczÄcia dnia:'; ! $lang['l_select_day'] = 'Wybierz domyÅlny dzieÅ rozpoczynajÄ cy tydzieÅ:'; ! $lang['l_select_style'] = 'Wybierz domyÅlny styl:'; ! $lang['l_set_prefs'] = 'Ustaw preferencje'; ! $lang['l_completed_date'] = 'ZakoÅczono'; ! $lang['l_completed'] = 'ZakoÅczono'; ! $lang['l_created'] = 'Utworzono:'; ! $lang['l_due'] = 'Stosowany:'; ! $lang['l_priority'] = 'Priorytet:'; ! $lang['l_priority_high'] = 'Wysoki'; ! $lang['l_priority_low'] = 'Niski'; ! $lang['l_priority_medium'] = 'Åredni'; ! $lang['l_priority_none'] = 'Å»aden'; ! $lang['l_status'] = 'Status'; ! $lang['l_status_confirmed'] = 'CONFIRMED' ; ! $lang['l_status_cancelled'] = 'CANCELLED'; ! $lang['l_status_tentative'] = 'TENTATIVE'; ! $lang['l_todo'] = 'Do zrobienia'; ! $lang['l_unfinished'] = 'Niewykonane'; ! $lang['l_prefs_set'] = 'Twoje preferencje zostaÅy ustawione.'; ! $lang['l_prefs_unset'] = 'Preferencje przywrócone. Zmiany bÄdÄ widoczne po ponownym zaÅadowaniu strony.'; ! $lang['l_unset_prefs'] = 'PrzywrÃ³Ä preferencje:'; ! $lang['l_organizer'] = 'Organizer'; ! $lang['l_attendee'] = 'Attendee'; ! $lang['l_location'] = 'PoÅożenie'; ! $lang['l_admin_header'] = 'Administracja PHP iCalendara'; ! $lang['l_username'] = 'Nazwa użytkownika'; ! $lang['l_password'] = 'HasÅo'; ! $lang['l_login'] = 'Login'; ! $lang['l_invalid_login'] = 'ZÅa nazwa użytkownika lub hasÅo.'; ! $lang['l_addupdate_cal'] = 'Dodaj lub popraw Kalendarz'; ! $lang['l_addupdate_desc'] = 'Dodaj Kalendarz przez zaÅadowanie nowego pliku. Popraw Kalendarz przez zaÅadowanie pliku o tej samej nazwie.'; ! $lang['l_delete_cal'] = 'UsuÅ Kalendarz'; ! $lang['l_logout'] = 'Wyloguj'; ! $lang['l_cal_file'] = 'Plik Kalendarza'; ! $lang['l_php_error'] = 'BÅÄ d PHP'; ! $upload_error_gen_lang = 'PowstaÅ problem z plikiem który zaÅadowaÅeÅ.'; ! $upload_error_lang[0] = 'PowstaÅ problem z plikiem który zaÅadowaÅeÅ.'; ! $upload_error_lang[1] = 'Plik który próbujesz zaÅadowaÄ jest za duży.'; ! $upload_error_lang[2] = 'Plik który próbujesz zaÅadowaÄ jest za duży.'; ! $upload_error_lang[3] = 'Plik który próbujesz zaÅadowaÄ zostaÅ zaÅadowany czÄÅciowo.'; ! $upload_error_lang[4] = 'Musisz wybraÄ plik, aby go zaÅadowaÄ.'; ! $lang['l_upload_error_type'] = 'Tylko pliki .ics mogÄ zostaÄ zaÅadowane.'; ! $lang['l_copy_error'] = 'Kopiowanie pliku niepowiodÅo siÄ'; ! $lang['l_delete_error'] = 'Usuwanie pliku niepowiodÅo siÄ'; ! $lang['l_delete_success'] = 'zostaÅ skasowany.'; ! $lang['l_action_success'] = 'ZakoÅczono sukcesem.'; ! $lang['l_submit'] = 'WyÅlij'; ! $lang['l_delete'] = 'Wymaż'; // ----- New for 1.0 $all_cal_comb_lang = 'All calendars combined'; + // New for 2.0 + $lang['l_legend'] = 'Legend'; + $lang['l_admin_subhead'] = 'Manage your calendars from this page'; + $lang['l_prefs_subhead'] = 'Sets a cookie for visiting this site'; + $lang['l_rss_info'] = 'RSS Information'; + $lang['l_rss_subhead'] = 'Basic RSS feeds available for each calendar'; + $lang['l_rss_notenabled'] = 'RSS is not enabled on this site'; + + // - navigation ! $lang['l_back'] = 'Wstecz'; ! $lang['l_next'] = 'Nast.'; ! $lang['l_prev'] = 'Poprz.'; ! $lang['l_day_view'] = 'PodglÄ d dnia'; ! $lang['l_week_view'] = 'PodglÄ d tygodnia'; ! $lang['l_month_view'] = 'PodglÄ d miesiÄ ca'; ! $lang['l_year_view'] = 'PodglÄ d roku'; // --------------------------------- *************** *** 135,139 **** $format_recur_lang['weekly'] = array('tydzieÅ','tygodni'); // these will be %freq% $format_recur_lang['daily'] = array('dzieÅ','dni'); // in the replacement below ! $format_recur_lang['hourly'] = array('godzina','godzin');$format_recur_lang['minutely'] = array('minuta','minut');$format_recur_lang['secondly'] = array('sekunda','sekund'); $format_recur_lang['start'] = 'Każdego %int% %freq% %for%'; // ie, 'Every 1 day until January 4' or 'Every 1 day for a count of 5' --- 148,154 ---- $format_recur_lang['weekly'] = array('tydzieÅ','tygodni'); // these will be %freq% $format_recur_lang['daily'] = array('dzieÅ','dni'); // in the replacement below ! $format_recur_lang['hourly'] = array('godzina','godzin'); ! $format_recur_lang['minutely'] = array('minuta','minut'); ! $format_recur_lang['secondly'] = array('sekunda','sekund'); $format_recur_lang['start'] = 'Każdego %int% %freq% %for%'; // ie, 'Every 1 day until January 4' or 'Every 1 day for a count of 5' *************** *** 183,193 **** // Error messages - %s will be replaced with a variable ! $error_title_lang = 'BÅÄ d!'; ! $error_window_lang = 'WystÄ piÅ bÅÄ d!';$error_calendar_lang = 'Podczas przetwarzania pliku kalendarza â%sâ, wystÄ piÅ bÅÄ d.'; ! $error_path_lang = 'Nie mogÄ otworzyÄ Åcieżki: "%s"'; ! $error_back_lang = 'ProszÄ użyÄ przycisku âWsteczâ aby wróciÄ.'; ! $error_remotecal_lang = 'Ten serwer blokuje dostÄp do niezatwierdzonych zdalnych kalendarzy.'; ! $error_restrictedcal_lang = 'DostÄp do pliku kalendarza, który próbujesz otworzyÄ, jest zabroniony przez serwer.'; ! $error_invalidcal_lang = 'ZÅy plik kalendarza. Spróbuj innego.'; ?> --- 198,211 ---- // Error messages - %s will be replaced with a variable ! $lang['l_error_title'] = 'BÅÄ d!'; ! $lang['l_error_window'] = 'WystÄ piÅ bÅÄ d!'; ! $lang['l_error_calendar'] = 'Podczas przetwarzania pliku kalendarza â%sâ, wystÄ piÅ bÅÄ d.'; ! $lang['l_error_path'] = 'Nie mogÄ otworzyÄ Åcieżki: "%s"'; ! $lang['l_error_back'] = 'ProszÄ użyÄ przycisku âWsteczâ aby wróciÄ.'; ! $lang['l_error_remotecal'] = 'Ten serwer blokuje dostÄp do niezatwierdzonych zdalnych kalendarzy.'; ! $lang['l_error_restrictedcal'] = 'DostÄp do pliku kalendarza, który próbujesz otworzyÄ, jest zabroniony przez serwer.'; ! $lang['l_error_invalidcal'] = 'ZÅy plik kalendarza. Spróbuj innego.'; ! $lang['l_error_cantopen'] = 'Unable to open calendar.'; ! $lang['l_error_cache'] = 'Unable to write to cache directory. Please check your config.'; ?> |
From: <ji...@us...> - 2007-05-18 20:19:31
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/default In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7116/phpicalendar/templates/default Modified Files: month_large.tpl Log Message: misc Index: month_large.tpl =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/templates/default/month_large.tpl,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** month_large.tpl 20 May 2004 03:59:37 -0000 1.8 --- month_large.tpl 18 May 2007 20:19:27 -0000 1.9 *************** *** 17,20 **** --- 17,21 ---- {ALLDAY} {EVENT} + {LOCATION} </td> <!-- switch notthismonth off --> *************** *** 26,29 **** --- 27,31 ---- {ALLDAY} {EVENT} + {LOCATION} </td> <!-- switch istoday off --> *************** *** 35,38 **** --- 37,41 ---- {ALLDAY} {EVENT} + {LOCATION} </td> <!-- switch ismonth off --> |
From: <ji...@us...> - 2007-05-18 19:04:23
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10511/functions Modified Files: sanitize.php Log Message: another set of bug fixes. Should fix rss problem Index: sanitize.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/sanitize.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** sanitize.php 17 May 2007 12:06:40 -0000 1.2 --- sanitize.php 18 May 2007 19:04:23 -0000 1.3 *************** *** 35,43 **** if (!is_array($val)){ $val = strip_tags($val); ! $_REQUEST['cal'] = strip_tags($val); }else{ ! unset ($_REQUEST['cal']); foreach($val as $cal){ ! $_REQUEST['cal'][]= strip_tags($cal); } } --- 35,43 ---- if (!is_array($val)){ $val = strip_tags($val); ! $_GET['cal'] = strip_tags($val); }else{ ! unset ($_GET['cal']); foreach($val as $cal){ ! $_GET['cal'][]= strip_tags($cal); } } *************** *** 49,53 **** $val = strip_tags($val); } ! $_GET[$key] = $val; } --- 49,53 ---- $val = strip_tags($val); } ! if ($key != 'cal') $_GET[$key] = $val; } |
From: <ji...@us...> - 2007-05-18 19:02:42
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/tan/images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9736/tan/images Log Message: Directory /cvsroot/phpicalendar/phpicalendar/templates/tan/images added to the repository |
From: <ji...@us...> - 2007-05-18 19:02:23
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/red/images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9711/red/images Log Message: Directory /cvsroot/phpicalendar/phpicalendar/templates/red/images added to the repository |
From: <ji...@us...> - 2007-05-18 19:02:08
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/grey/images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9696/grey/images Log Message: Directory /cvsroot/phpicalendar/phpicalendar/templates/grey/images added to the repository |
From: <ji...@us...> - 2007-05-18 19:01:51
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/green/images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9348/green/images Log Message: Directory /cvsroot/phpicalendar/phpicalendar/templates/green/images added to the repository |
From: <ji...@us...> - 2007-05-18 19:00:17
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8913/functions Modified Files: init.inc.php template.php Log Message: month and year location display bugs Index: init.inc.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/init.inc.php,v retrieving revision 1.107 retrieving revision 1.108 diff -C2 -d -r1.107 -r1.108 *** init.inc.php 16 May 2007 22:20:47 -0000 1.107 --- init.inc.php 18 May 2007 19:00:16 -0000 1.108 *************** *** 1,4 **** <?php ! $phpicalendar_version = '2.23 rc1'; // uncomment when developing, comment for shipping version //error_reporting (E_ERROR | E_WARNING | E_PARSE); --- 1,4 ---- <?php ! $phpicalendar_version = '2.24'; // uncomment when developing, comment for shipping version //error_reporting (E_ERROR | E_WARNING | E_PARSE); Index: template.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/template.php,v retrieving revision 1.89 retrieving revision 1.90 diff -C2 -d -r1.89 -r1.90 *** template.php 16 May 2007 22:24:44 -0000 1.89 --- template.php 18 May 2007 19:00:16 -0000 1.90 *************** *** 943,947 **** } } ! $switch['EVENT'] .= (isset($val['location'])) ? "<span class='V9G'>".$val['location']."</span>" : ''; } } --- 943,947 ---- } } ! $switch['LOCATION'] = (isset($val['location'])) ? "<span class='V9G'>".$val['location']."</span>" : ''; } } |
From: <ji...@us...> - 2007-05-17 12:06:40
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18856/functions Modified Files: sanitize.php Log Message: bug fixes for sanitize.php Index: sanitize.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/sanitize.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** sanitize.php 16 May 2007 22:20:47 -0000 1.1 --- sanitize.php 17 May 2007 12:06:40 -0000 1.2 *************** *** 5,9 **** # modify this to allow or disallow different HTML tags in event popups $allowed = "<p><br><b><i><em><a><img><div><span><ul><ol><li><h1><h2><h3><h4><h5><h6><hr><em><strong><small><table><tr><td><th>"; ! $val = strip_tags($val,$allowed) break; default: --- 5,9 ---- # modify this to allow or disallow different HTML tags in event popups $allowed = "<p><br><b><i><em><a><img><div><span><ul><ol><li><h1><h2><h3><h4><h5><h6><hr><em><strong><small><table><tr><td><th>"; ! $val = strip_tags($val,$allowed); break; default: *************** *** 22,26 **** case 'date': case 'time': ! if (!is_int($val)) $val = ''; break; default: --- 22,26 ---- case 'date': case 'time': ! if (!is_numeric($val)) $val = ''; break; default: *************** *** 32,37 **** foreach ($_GET as $key=>$val){ switch ($key){ case 'getdate': ! if (!is_int($val)) $val = ''; break; default: --- 32,48 ---- foreach ($_GET as $key=>$val){ switch ($key){ + case 'cal': + if (!is_array($val)){ + $val = strip_tags($val); + $_REQUEST['cal'] = strip_tags($val); + }else{ + unset ($_REQUEST['cal']); + foreach($val as $cal){ + $_REQUEST['cal'][]= strip_tags($cal); + } + } + break; case 'getdate': ! if (!is_numeric($val)) $val = ''; break; default: *************** *** 44,48 **** switch ($key){ case 'time': ! if (!is_int($val)) $val = ''; break; default: --- 55,59 ---- switch ($key){ case 'time': ! if (!is_numeric($val)) $val = ''; break; default: |
From: <ji...@us...> - 2007-05-16 23:35:25
|
Update of /cvsroot/phpicalendar/phpicalendar In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20598 Modified Files: README Log Message: new language files Index: README =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/README,v retrieving revision 1.108 retrieving revision 1.109 diff -C2 -d -r1.108 -r1.109 *** README 16 May 2007 23:04:41 -0000 1.108 --- README 16 May 2007 23:35:25 -0000 1.109 *************** *** 83,86 **** --- 83,87 ---- -------- 2.23 + New language files Add input sanitizer - important for blocking XSS attacks Change template.php to reduce memory usage |
From: <ji...@us...> - 2007-05-16 23:04:41
|
Update of /cvsroot/phpicalendar/phpicalendar In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8632/phpicalendar Modified Files: README Log Message: modify README Index: README =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/README,v retrieving revision 1.107 retrieving revision 1.108 diff -C2 -d -r1.107 -r1.108 *** README 8 Apr 2007 01:41:55 -0000 1.107 --- README 16 May 2007 23:04:41 -0000 1.108 *************** *** 82,86 **** Changes: -------- ! cvs Change template.php display in print and month views of events that span multiple days to not repeat listing Fix (I hope) utf-8 rendering problems in event.php --- 82,89 ---- Changes: -------- ! 2.23 ! Add input sanitizer - important for blocking XSS attacks ! Change template.php to reduce memory usage ! Change template.php to display locations in month view Change template.php display in print and month views of events that span multiple days to not repeat listing Fix (I hope) utf-8 rendering problems in event.php |
From: <ji...@us...> - 2007-05-16 23:04:41
|
Update of /cvsroot/phpicalendar/phpicalendar/calendars In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8632/phpicalendar/calendars Modified Files: publish.php Log Message: modify README Index: publish.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/calendars/publish.php,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** publish.php 2 Nov 2006 08:36:44 -0000 1.6 --- publish.php 16 May 2007 23:04:41 -0000 1.7 *************** *** 102,106 **** // Require authentication ! if (!isset($_SERVER['HTTP_AUTHORIZATION'])) { list($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']) = explode( ':', base64_decode( substr($_SERVER['HTTP_AUTHORIZATION'], 6) ) ); --- 102,106 ---- // Require authentication ! if (isset($_SERVER['HTTP_AUTHORIZATION'])) { list($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']) = explode( ':', base64_decode( substr($_SERVER['HTTP_AUTHORIZATION'], 6) ) ); |
From: <ji...@us...> - 2007-05-16 22:24:45
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25169 Modified Files: template.php Log Message: modify to reduce memory use in monthbottom; also add location display to month display Index: template.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/template.php,v retrieving revision 1.88 retrieving revision 1.89 diff -C2 -d -r1.88 -r1.89 *** template.php 8 Apr 2007 01:41:55 -0000 1.88 --- template.php 16 May 2007 22:24:44 -0000 1.89 *************** *** 943,946 **** --- 943,947 ---- } } + $switch['EVENT'] .= (isset($val['location'])) ? "<span class='V9G'>".$val['location']."</span>" : ''; } } *************** *** 999,1007 **** if (isset($master_array[$m_start])) { foreach ($master_array[$m_start] as $cal_time => $event_times) { ! $switch['CAL'] = $cal; ! $switch['START_DATE'] = localizeDate ($dateFormat_week_list, $u_start); foreach ($event_times as $uid => $val) { if (isset($seen_events[$uid])) continue; $seen_events[$uid] = 1; $switch['CALNAME'] = $val['calname']; if (!isset($val['event_start'])) { --- 1000,1011 ---- if (isset($master_array[$m_start])) { foreach ($master_array[$m_start] as $cal_time => $event_times) { ! # $switch['CAL'] = $cal; ! # $switch['START_DATE'] = localizeDate ($dateFormat_week_list, $u_start); ! $start_date = localizeDate ($dateFormat_week_list, $u_start); foreach ($event_times as $uid => $val) { if (isset($seen_events[$uid])) continue; $seen_events[$uid] = 1; + $switch['CAL'] = $cal; + $switch['START_DATE'] = $start_date; $switch['CALNAME'] = $val['calname']; if (!isset($val['event_start'])) { *************** *** 1028,1031 **** --- 1032,1036 ---- $i = ($i == 1) ? 0 : 1; } + unset ($switch); } } *************** *** 1034,1038 **** $m_start = date('Ymd', $u_start); $check_month = date('m', $u_start); ! unset ($switch); } while ($this_month == $check_month); --- 1039,1043 ---- $m_start = date('Ymd', $u_start); $check_month = date('m', $u_start); ! # unset ($switch); } while ($this_month == $check_month); |
From: <ji...@us...> - 2007-05-16 22:20:48
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23579 Modified Files: init.inc.php Added Files: sanitize.php Log Message: fix xss vulnerability by adding sanitizer for input vars from post, get, cookie, request --- NEW FILE: sanitize.php --- <?php foreach ($_REQUEST as $key=>$val){ switch ($key){ case 'event_data': # modify this to allow or disallow different HTML tags in event popups $allowed = "<p><br><b><i><em><a><img><div><span><ul><ol><li><h1><h2><h3><h4><h5><h6><hr><em><strong><small><table><tr><td><th>"; $val = strip_tags($val,$allowed) break; default: # cpath $val = strip_tags($val); } $_REQUEST[$key] = $val; } foreach ($_POST as $key=>$val){ switch ($key){ case 'action': $actions = array('login','logout','addupdate','delete'); if (!in_array($val,$actions)) $val = ''; break; case 'date': case 'time': if (!is_int($val)) $val = ''; break; default: $val = strip_tags($val); } $_POST[$key] = $val; } foreach ($_GET as $key=>$val){ switch ($key){ case 'getdate': if (!is_int($val)) $val = ''; break; default: $val = strip_tags($val); } $_GET[$key] = $val; } foreach ($_COOKIE as $key=>$val){ switch ($key){ case 'time': if (!is_int($val)) $val = ''; break; default: $val = strip_tags($val); } $_COOKIE[$key] = $val; } ?> Index: init.inc.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/init.inc.php,v retrieving revision 1.106 retrieving revision 1.107 diff -C2 -d -r1.106 -r1.107 *** init.inc.php 14 Nov 2006 07:38:14 -0000 1.106 --- init.inc.php 16 May 2007 22:20:47 -0000 1.107 *************** *** 15,18 **** --- 15,19 ---- if (!defined('BASE')) define('BASE', './'); include_once(BASE.'config.inc.php'); + include_once(BASE.'functions/sanitize.php'); $cookie_name = 'phpicalendar_'.basename($default_path); |
From: <ze...@us...> - 2007-05-04 21:02:24
|
Update of /cvsroot/phpicalendar/phpicalendar3/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19934/functions Modified Files: class.Vtimezone.php class.Standard.php Log Message: Added a ToDo in "Standard". Whitespace adjustment. Index: class.Vtimezone.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Vtimezone.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** class.Vtimezone.php 9 Apr 2007 13:02:13 -0000 1.2 --- class.Vtimezone.php 4 May 2007 21:02:23 -0000 1.3 *************** *** 12,17 **** * This class is for calendars. */ ! class Vtimezone extends iCalObj{ ! /** --- 12,16 ---- * This class is for calendars. */ ! class Vtimezone extends iCalObj { /** Index: class.Standard.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Standard.php,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** class.Standard.php 2 May 2007 13:41:52 -0000 1.3 --- class.Standard.php 4 May 2007 21:02:23 -0000 1.4 *************** *** 13,16 **** --- 13,19 ---- * * [Optional long description of this class] + * @todo Consider renaming this class to something more descriptive. + * "Standard" could mean anything; it is not obvious when scanning the + * list of classes that "standard" is in the context of timezones. * */ |
Update of /cvsroot/phpicalendar/phpicalendar3/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28801/functions Modified Files: class.Settings.php class.Valarm.php class.Standard.php init.inc.php class.iCalObj.php class.Parser.php class.Vcalendar.php Log Message: * added a few @todo tags * minor whitespace adjustments * added basic functionality for language setter method in class.Settings.php Index: class.Settings.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Settings.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** class.Settings.php 9 Apr 2007 13:02:13 -0000 1.2 --- class.Settings.php 2 May 2007 13:41:52 -0000 1.3 *************** *** 8,13 **** * @package * @subpackage - * @todo Add methods to: 1) overwrite from config.inc.php; 2) read from - * cookie; and 3) set cookie */ /** --- 8,11 ---- *************** *** 16,19 **** --- 14,25 ---- * [Optional long description of this class] * + * @todo Add methods to override from config.inc.php + * @todo Add methods to get/set cookie + * @todo Consider changing the 'yes/no' Settings to true boolean values + * @todo Consider changing settings that store integers as Strings to + * true ints + * @todo Consider changing the legal values of $this->language to the + * language codes used on the web + * (see http://babelwiki.babelzilla.org/index.php/Language_codes) */ class Settings { *************** *** 92,100 **** // but may not be accurate depending on ftp server config. ! // Calendar colors ! // ! // You can increase the number of unique colors by adding additional images (monthdot_n.gif) ! // and in the css file (default.css) classes .alldaybg_n, .eventbg_n and .eventbg2_n ! // Colors will repeat from the beginning for calendars past $this->unique_colors (7 by default), with no limit. $this->unique_colors = '7'; $this->blacklisted_cals = array(); --- 98,107 ---- // but may not be accurate depending on ftp server config. ! /* Calendar colors ! * ! * You can increase the number of unique colors by adding additional images (monthdot_n.gif) ! * and in the css file (default.css) classes .alldaybg_n, .eventbg_n and .eventbg2_n ! * Colors will repeat from the beginning for calendars past $this->unique_colors (7 by default), with no limit. ! */ $this->unique_colors = '7'; $this->blacklisted_cals = array(); *************** *** 111,117 **** * * @access public */ ! function setLang() { ! } --- 118,125 ---- * * @access public + * @todo Add a check for legal values for $this->language */ ! function setLang($language) { ! $this->language = $language; } Index: class.Valarm.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Valarm.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** class.Valarm.php 9 Apr 2007 13:02:13 -0000 1.2 --- class.Valarm.php 2 May 2007 13:41:52 -0000 1.3 *************** *** 24,30 **** * @access public */ ! function Valarm() { ! ! } } ?> \ No newline at end of file --- 24,28 ---- * @access public */ ! function Valarm() {} } ?> \ No newline at end of file Index: class.Standard.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Standard.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** class.Standard.php 9 Apr 2007 13:02:13 -0000 1.2 --- class.Standard.php 2 May 2007 13:41:52 -0000 1.3 *************** *** 24,30 **** * @access public */ ! function Standard() { ! ! } } ?> \ No newline at end of file --- 24,28 ---- * @access public */ ! function Standard() {} } ?> \ No newline at end of file Index: init.inc.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/init.inc.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** init.inc.php 9 Apr 2007 13:02:13 -0000 1.2 --- init.inc.php 2 May 2007 13:41:52 -0000 1.3 *************** *** 9,15 **** * @subpackage * ! * @todo Need to set configurations (paths, languages, templates, behaviors) ! * @todo calendar list ! * @todo range of dates to process */ --- 9,15 ---- * @subpackage * ! * @todo Set configurations: paths, languages, templates, behaviors ! * @todo calendar list ! * @todo range of dates to process */ Index: class.iCalObj.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.iCalObj.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** class.iCalObj.php 9 Apr 2007 13:02:13 -0000 1.2 --- class.iCalObj.php 2 May 2007 13:41:52 -0000 1.3 *************** *** 1,5 **** <?php /** ! * Refactoring of the ical parser in phpicalendar to make the code more maintainable * * @author --- 1,6 ---- <?php /** ! * Refactoring of the ical parser in phpicalendar to make the code more ! * maintainable. * * @author *************** *** 9,19 **** */ /** ! * Base class for icalendar objects. Some methods used by all, others only for timed events. * * [Optional long description of this class] * ! * @todo Since version3 of this project is OO, is it necessary for this class ! * to have the 'Obj' suffix at the end of its name? ! * */ class iCalObj { --- 10,20 ---- */ /** ! * Base class for iCalendar objects. Some methods used by all, others only for ! * timed events. * * [Optional long description of this class] * ! * @todo Since version3 of this project is "OBJECT-oriented", is it necessary ! * for this class to have the 'Obj' suffix at the end of its name? */ class iCalObj { *************** *** 47,56 **** * RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1 * ! * Thus, note that key and value are both complex entities that can have multipart info. * * @access public */ function process_line($key, $line) { ! echo "\tfeed key= $key line=$line to the object of type ".get_class($this)."\n"; switch ($key) --- 48,59 ---- * RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1 * ! * Thus, note that key and value are both complex entities. ! * (They can have multipart info.) * * @access public */ function process_line($key, $line) { ! echo "\tfeed key= $key line=$line to the object of type ". ! get_class($this)."\n"; switch ($key) *************** *** 70,74 **** */ function process_child($obj) { ! echo "\t".get_class($this)." object processing child of type ".get_class($obj)."\n"; $this->children[] = $obj; } --- 73,79 ---- */ function process_child($obj) { ! echo "\t".get_class($this)." object processing child of type ". ! get_class($obj)."\n"; ! $this->children[] = $obj; } Index: class.Parser.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Parser.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** class.Parser.php 9 Apr 2007 13:02:13 -0000 1.2 --- class.Parser.php 2 May 2007 13:41:52 -0000 1.3 *************** *** 58,61 **** --- 58,62 ---- * * @access public + * @alias process_file */ function process_cal() { Index: class.Vcalendar.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Vcalendar.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** class.Vcalendar.php 9 Apr 2007 13:02:13 -0000 1.2 --- class.Vcalendar.php 2 May 2007 13:41:52 -0000 1.3 *************** *** 24,30 **** * @access public */ ! function Vcalendar() { ! ! } } ?> \ No newline at end of file --- 24,28 ---- * @access public */ ! function Vcalendar() {} } ?> \ No newline at end of file |
From: <ze...@us...> - 2007-05-02 13:41:53
|
Update of /cvsroot/phpicalendar/phpicalendar3 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28801 Modified Files: parser_tests.php Log Message: * added a few @todo tags * minor whitespace adjustments * added basic functionality for language setter method in class.Settings.php Index: parser_tests.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/parser_tests.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** parser_tests.php 16 Mar 2007 02:24:21 -0000 1.1 --- parser_tests.php 2 May 2007 13:41:52 -0000 1.2 *************** *** 1,9 **** <?php ! if (!defined('BASE')) define('BASE', './'); # autoload function __autoload($class_name) { ! require_once (BASE.'functions/class.'.$class_name . '.php'); } echo "Starting...<pre>"; --- 1,12 ---- <?php ! ! if (!defined('BASE')) ! define('BASE', './'); # autoload function __autoload($class_name) { ! require_once (BASE.'functions/class.'.$class_name . '.php'); } + echo "Starting...<pre>"; *************** *** 17,28 **** # test line folder ! if (!$parser->process_file('calendars/Deutsche_Feiertage.ics')) echo 'failed open'; $start = 42929730712; echo "start:".date("Ymd",strtotime($start))."\n"; echo "end:".date("Ymd", strtotime('+1 day', $start))."\n"; ! ! echo "</pre><br>Done!"; ?> \ No newline at end of file --- 20,32 ---- # test line folder ! if (!$parser->process_file('calendars/Deutsche_Feiertage.ics')) ! echo 'failed open'; $start = 42929730712; + echo "start:".date("Ymd",strtotime($start))."\n"; echo "end:".date("Ymd", strtotime('+1 day', $start))."\n"; ! echo "</pre><br />Done!"; ?> \ No newline at end of file |
From: <ze...@us...> - 2007-04-09 13:37:48
|
Update of /cvsroot/phpicalendar/phpicalendar3/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21941/functions Modified Files: class.Daylight.php Log Message: Removed whitespace from empty constructor body; primarily just testing CVS commit from Eclipse IDE. Index: class.Daylight.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Daylight.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** class.Daylight.php 9 Apr 2007 13:02:13 -0000 1.2 --- class.Daylight.php 9 Apr 2007 13:03:33 -0000 1.3 *************** *** 25,31 **** * @access public */ ! function Daylight() { ! ! } } ?> \ No newline at end of file --- 25,29 ---- * @access public */ ! function Daylight() {} } ?> \ No newline at end of file |
From: <ze...@us...> - 2007-04-09 13:32:47
|
Update of /cvsroot/phpicalendar/phpicalendar3 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21497 Added Files: .project Log Message: Changed/added documentation comments as per PHPdocumentor specs (http://www.phpdoc.org). Added skeletons of documentation comments for all files, classes, and functions where none existed before. Minor code style adjustments: * added space before opening braces * moved closing php tag "?>" to the same line as the closing brace of the class, since version3 of this project is OO and has only one class per file --- NEW FILE: .project --- <?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>PHPiCalendar3</name> <comment></comment> <projects> </projects> <buildSpec> </buildSpec> <natures> </natures> </projectDescription> |
Update of /cvsroot/phpicalendar/phpicalendar3/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21497/functions Modified Files: class.Settings.php class.Vtimezone.php class.Standard.php class.Vfreebusy.php class.iCalObj.php class.Parser.php class.Vtodo.php class.Valarm.php class.Daylight.php init.inc.php class.Vevent.php class.Vcalendar.php class.Vjournal.php Log Message: Changed/added documentation comments as per PHPdocumentor specs (http://www.phpdoc.org). Added skeletons of documentation comments for all files, classes, and functions where none existed before. Minor code style adjustments: * added space before opening braces * moved closing php tag "?>" to the same line as the closing brace of the class, since version3 of this project is OO and has only one class per file Index: class.Settings.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Settings.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.Settings.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.Settings.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,15 **** <?php ! /*=====================class.Settings.php===================== ! Settings for phpicalendar 3 ! New creates an object with default settings ! Methods to ! overwrite from config.inc.php ! read from cookie ! set cookie ! */ ! ! class Settings{ ! function Settings(){ $this->template = 'default'; // Template support $this->default_view = 'day'; // Default view for calendars = 'day', 'week', 'month', 'year' --- 1,30 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. ! * ! * @author ! * @since ! * @package ! * @subpackage ! * @todo Add methods to: 1) overwrite from config.inc.php; 2) read from ! * cookie; and 3) set cookie ! */ ! /** ! * [Optional short description of this class] ! * ! * [Optional long description of this class] ! * ! */ ! class Settings { ! /** ! * Constructs a new Settings object with defaults. ! * ! * Optional long description. ! * ! * @access public ! */ ! function Settings() { $this->template = 'default'; // Template support $this->default_view = 'day'; // Default view for calendars = 'day', 'week', 'month', 'year' *************** *** 78,81 **** --- 93,97 ---- // Calendar colors + // // You can increase the number of unique colors by adding additional images (monthdot_n.gif) // and in the css file (default.css) classes .alldaybg_n, .eventbg_n and .eventbg2_n *************** *** 88,99 **** $this->locked_map = array(); // Map username:password accounts to locked calendars that should be $this->apache_map = array(); // Map HTTP authenticated users to specific calendars. Users listed here and - - } - function setLang(){ } ! } # end class Settings ! ?> \ No newline at end of file --- 104,118 ---- $this->locked_map = array(); // Map username:password accounts to locked calendars that should be $this->apache_map = array(); // Map HTTP authenticated users to specific calendars. Users listed here and } + /** + * Sets the language. + * + * @access public + */ + function setLang() { + } ! } ?> \ No newline at end of file Index: class.Vtimezone.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Vtimezone.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.Vtimezone.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.Vtimezone.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,14 **** <?php ! /*=====================class.Vtimezone.php===================== ! ! This class is for calendars. ! ! */ class Vtimezone extends iCalObj{ - - function Vtimezone(){ ! } ! } ! ?> \ No newline at end of file --- 1,24 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. ! * ! * @author ! * @since ! * @package ! * @subpackage ! */ ! /** ! * This class is for calendars. ! */ class Vtimezone extends iCalObj{ ! ! /** ! * Creates a new Vtimezone object. ! * ! * @access public ! */ ! function Vtimezone() {} ! } ?> \ No newline at end of file Index: class.Standard.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Standard.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.Standard.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.Standard.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,14 **** <?php ! /*=====================class.Standard.php===================== ! ! This class is for calendars. ! ! */ ! class Standard extends Vtimezone{ ! ! function Standard(){ } ! } ! ?> \ No newline at end of file --- 1,30 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. ! * ! * @author ! * @since ! * @package ! * @subpackage ! */ ! /** ! * This class is for calendars. ! * ! * [Optional long description of this class] ! * ! */ ! class Standard extends Vtimezone { ! ! /** ! * Constructs a new Standard object. ! * ! * Optional long description. ! * ! * @access public ! */ ! function Standard() { } ! } ?> \ No newline at end of file Index: class.Vfreebusy.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Vfreebusy.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.Vfreebusy.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.Vfreebusy.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,14 **** <?php ! /*=====================class.Vfreebusy.php===================== ! ! This class is for calendars. ! ! */ ! class Vfreebusy extends iCalObj{ - function Vfreebusy(){ ! } ! } ! ?> \ No newline at end of file --- 1,27 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. ! * ! * @author ! * @since ! * @package ! * @subpackage ! */ ! /** ! * This class is for calendars. ! * ! * [Optional long description of this class] ! * ! */ ! class Vfreebusy extends iCalObj { ! /** ! * Creates a new Vfreebusy object. ! * ! * @access public ! */ ! function Vfreebusy() {} ! } ?> \ No newline at end of file Index: class.iCalObj.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.iCalObj.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.iCalObj.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.iCalObj.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,10 **** <?php ! /*=====================class.iCalObj.php===================== ! Refactoring of the ical parser in phpicalendar to make the code more maintainable ! ! Base class for icalendar objects. Some methods used by all, others only for timed events ! */ ! ! class iCalObj{ # var $var; # comment --- 1,21 ---- <?php ! /** ! * Refactoring of the ical parser in phpicalendar to make the code more maintainable ! * ! * @author ! * @since ! * @package ! * @subpackage ! */ ! /** ! * Base class for icalendar objects. Some methods used by all, others only for timed events. ! * ! * [Optional long description of this class] ! * ! * @todo Since version3 of this project is OO, is it necessary for this class ! * to have the 'Obj' suffix at the end of its name? ! * ! */ ! class iCalObj { # var $var; # comment *************** *** 12,34 **** $children; # comment ! function iCalObj(){ $this->children = array(); } ! /* Parser passes ! key - everything before the first colon or semicolon ! line - the whole line ! From the icalendar spec page 13: ! contentline = name *(";" param ) ":" value CRLF ! examples: ! ATTENDEE;CUTYPE=GROUP:MAILTO:iet...@im... ! RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1 ! ! Thus, note that key and value are both complex entities that can have multipart info ! */ ! function process_line($key, $line){ echo "\tfeed key= $key line=$line to the object of type ".get_class($this)."\n"; ! switch ($key){ case '': --- 23,59 ---- $children; # comment ! /** ! * Creates a new iCalObj. ! * ! * @access public ! */ ! function iCalObj() { $this->children = array(); } ! /** ! * Process a line. ! * ! * The parser makes passes as follows: ! * ! * key - everything before the first colon or semicolon ! * line - the whole line ! * ! * From the icalendar spec page 13: ! * contentline = name *(";" param ) ":" value CRLF ! * ! * @example ! * ATTENDEE;CUTYPE=GROUP:MAILTO:iet...@im... ! * RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1 ! * ! * Thus, note that key and value are both complex entities that can have multipart info. ! * ! * @access public ! */ ! function process_line($key, $line) { echo "\tfeed key= $key line=$line to the object of type ".get_class($this)."\n"; ! switch ($key) ! { case '': *************** *** 37,54 **** $varname = strtolower($key); $this->$varname = $this->clean_string($line); ! ! } ! ! } ! function process_child($obj){ echo "\t".get_class($this)." object processing child of type ".get_class($obj)."\n"; $this->children[] = $obj; } - function finish(){ - echo "END:tell the ".get_class($this)." object to finish up, pop it off the stack\n"; } ! function clean_string($data){ $data = str_replace("\\n", "<br />", $data); $data = str_replace("\\t", " ", $data); --- 62,96 ---- $varname = strtolower($key); $this->$varname = $this->clean_string($line); ! } } ! ! ! /** ! * @access public ! */ ! function process_child($obj) { echo "\t".get_class($this)." object processing child of type ".get_class($obj)."\n"; $this->children[] = $obj; } + + /** + * Writes a string which "tells" the calling object to finish and pop it from the stack. + * + * @access public + */ + function finish() { + echo "END:tell the ".get_class($this)." object to finish up, pop it off the stack.\n"; } ! ! ! /** ! * Cleans a string for use as HTML. ! * ! * @access public ! * @param string $data The data to be transformed to HTML. ! * @return string The $data with several HTML search-and-replacements performed. ! */ ! function clean_string($data) { $data = str_replace("\\n", "<br />", $data); $data = str_replace("\\t", " ", $data); *************** *** 58,63 **** return $data; } - } ! ! ?> \ No newline at end of file --- 100,103 ---- return $data; } ! } ?> \ No newline at end of file Index: class.Parser.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Parser.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.Parser.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.Parser.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,17 **** <?php ! /*=====================class.Parser.php===================== ! Refactoring of the ical parser in phpicalendar to make the code more maintainable ! gets a calendar object and creates a series of event objects. ! ! This object should probably only be invoked in situations where the input is an ics file, ! either a local cal or a webcal. Unserializing a saved cal should go somewhere else. ! ! The function process_file is the meat of the operation. Note that Parser determines the kind of object ! that should handle a content line, but delegates further parsing of that content-line to the object. ! In other words, the Parser class just deals with BEGIN and END events, which are involved in creating and ! organizing objects. ! */ ! ! class Parser{ var --- 1,27 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. ! * ! * @author ! * @since ! * @package ! * @subpackage ! */ ! /** ! * Refactoring of the ical parser in phpicalendar to make the code more maintainable ! * gets a calendar object and creates a series of event objects. ! * ! * This object should probably only be invoked in situations where the input is an ics file, ! * either a local cal or a webcal. Unserializing a saved cal should go somewhere else. ! * ! * The function process_file is the meat of the operation. Note that Parser ! * determines the kind of object that should handle a content line, but delegates ! * further parsing of that content-line to the object. In other words, the Parser ! * class just deals with BEGIN and END events, which are involved in creating and ! * organizing objects. ! * ! */ ! class Parser { var *************** *** 21,135 **** $mArray; # temporary master array entries ! ! function Parser(){ $this->lookahead = ''; ! } ! function set_cal($cal){ $this->cal = $cal; ! } ! function process_cal(){ ! process_file($this->cal->filename); ! } ! /* ! The structure of an ics file is somewhat like xml. Objects are hierarchical ! The top level object is VCALENDAR, which has children including VTIMEZONE, VEVENT, VTODO etc. ! Each of these has child objects, such as DAYLIGHT and STANDARD in VTIMEZONE, DTSTART in the others, etc. ! We will use this hiearchy, but not to full granularity. ! */ ! function process_file($filename){ $obj = null; $obj_stack = array(); ! if (!$this->open_file($filename)) return "can't open file"; $i = 0; ! while (!feof($this->fh)){ $line = $this->read_line(); # echo "$i:$line\n";$i++; ! if($line){ $tmp = explode(":", $line); $tmp2 = explode(";", $tmp[0]); $key = $tmp2[0]; #want the first string before either a colon or semicolon # echo "key:$key\n"; ! switch ($key){ case 'BEGIN': $type = ucfirst(strtolower($tmp[1])); ! if($type == 'Vcalendar'){ if (!is_object($this->cal)) $this->cal = new Vcalendar; echo "Make vcal obj\n"; $obj = $this->cal; $obj_stack[] = $obj; # echo "BEGIN: make new obj of type ".get_class($obj)." and push it onto the stack\n"; ! }elseif(in_array($type, array('Vtimezone','Daylight','Standard','Vevent','Vtodo','Vfreebusy'))){ $obj = new $type; # $obj_stack[] = $obj; # echo "BEGIN: make new obj of type ".get_class($obj)." and push it onto the stack\n"; ! }else{ # Handle BEGIN for undefined object types # Parser delegates further parsing to the object ! if(is_object($obj)) $obj->process_line($key,$line); } break; case 'END': $obj = array_pop($obj_stack); ! if(is_object(end($obj_stack))){ $parent_obj = end($obj_stack); $parent_obj->process_child($obj); # let the parent object set whatever it needs from the child } ! if(is_object($obj)) $obj->finish(); # "make the working object the last one on the stack\n"; ! if(is_object(end($obj_stack))){ $obj = $parent_obj; ! } break; default: # Parser delegates further parsing to the object ! if(is_object($obj)) $obj->process_line($key,$line); } # print_r($obj_stack); } } # "finished stack on line:$line. Lookahead:$this->lookahead\n"; #deal with possible lack of \n at eof ! if(trim($this->lookahead) != "" && is_object($obj)){ $obj = array_pop($obj_stack); ! if(is_object(end($obj_stack))){ $parent_obj = end($obj_stack); $parent_obj->process_child($obj); # let the parent object set whatever it } $obj->finish(); ! if(is_object($parent_obj)) $parent_obj->finish(); } print_r($this->cal); return true; ! } ! function open_file($filename){ $this->fh = fopen("./".$filename, "r"); ! if ($this->fh == FALSE) return false; ! return true; ! } ! # takes a filehandle and folds multiple line input to $this->line ! function read_line(){ ! if (feof($this->fh)){ return; ! } $tmp_line = $this->lookahead; $read_more = true; do { $this->lookahead = fgets($this->fh, 1024); $this->lookahead = ereg_replace("[\r\n]", "", $this->lookahead); ! if (($this->lookahead !='' && ($this->lookahead{0} == " " || $this->lookahead{0} == "\t")) || $tmp_line == '' || $tmp_line == "\n"){ $tmp_line = rtrim($tmp_line) . str_replace("\t"," ", $this->lookahead); ! }else{ $read_more = false; ! } ! }while ($read_more & !feof($this->fh)); return trim($tmp_line); ! } ! } # end class parser ! ?> \ No newline at end of file --- 31,218 ---- $mArray; # temporary master array entries ! ! /** ! * Constructs a new Parser object. ! * ! * Optional long description. ! * ! * @access public ! */ ! function Parser() { $this->lookahead = ''; ! } // end constructor ! ! /** ! * Sets the calendar to be parsed. ! * ! * @access public ! */ ! function set_cal($cal) { $this->cal = $cal; ! } // end function set_cal() ! ! /** ! * Processes the calendar set for the calling Parser object. ! * ! * @access public ! */ ! function process_cal() { process_file($this->cal->filename); ! } // end function process_cal() ! ! ! /** ! * Processes the specified file. ! * ! * The structure of an ics file is somewhat like xml. ! * Objects are hierarchical The top level object is VCALENDAR, which has ! * children including VTIMEZONE, VEVENT, VTODO etc. Each of these has child ! * objects, such as DAYLIGHT and STANDARD in VTIMEZONE, DTSTART in the ! * others, etc. We will use this hiearchy, but not to full granularity. ! * ! * @access public ! * @param string $filename The name of the file to be processed. ! * @return mixed ! * Returns true if file was processed successfully, or ! * an error string. ! * ! * @todo Instead of returning an error string, implement Exception handling. ! */ ! function process_file($filename) { $obj = null; $obj_stack = array(); ! ! if (!$this->open_file($filename)) ! return "can't open file"; ! $i = 0; ! ! while (!feof($this->fh)) { $line = $this->read_line(); # echo "$i:$line\n";$i++; ! if ($line) { $tmp = explode(":", $line); $tmp2 = explode(";", $tmp[0]); $key = $tmp2[0]; #want the first string before either a colon or semicolon # echo "key:$key\n"; ! ! switch ($key) ! { case 'BEGIN': $type = ucfirst(strtolower($tmp[1])); ! ! if ($type == 'Vcalendar') { if (!is_object($this->cal)) $this->cal = new Vcalendar; echo "Make vcal obj\n"; $obj = $this->cal; $obj_stack[] = $obj; # echo "BEGIN: make new obj of type ".get_class($obj)." and push it onto the stack\n"; ! } elseif (in_array($type, array('Vtimezone','Daylight','Standard','Vevent','Vtodo','Vfreebusy'))) { $obj = new $type; # $obj_stack[] = $obj; # echo "BEGIN: make new obj of type ".get_class($obj)." and push it onto the stack\n"; ! } else { # Handle BEGIN for undefined object types # Parser delegates further parsing to the object ! if (is_object($obj)) ! $obj->process_line($key,$line); } break; + case 'END': $obj = array_pop($obj_stack); ! ! if (is_object(end($obj_stack))) { $parent_obj = end($obj_stack); $parent_obj->process_child($obj); # let the parent object set whatever it needs from the child } ! ! if (is_object($obj)) ! $obj->finish(); ! # "make the working object the last one on the stack\n"; ! if (is_object(end($obj_stack))) $obj = $parent_obj; ! break; + default: # Parser delegates further parsing to the object ! if (is_object($obj)) $obj->process_line($key,$line); } # print_r($obj_stack); } } + # "finished stack on line:$line. Lookahead:$this->lookahead\n"; #deal with possible lack of \n at eof ! if (trim($this->lookahead) != "" && is_object($obj)) { $obj = array_pop($obj_stack); ! ! if (is_object(end($obj_stack))) { $parent_obj = end($obj_stack); $parent_obj->process_child($obj); # let the parent object set whatever it } + $obj->finish(); ! ! if (is_object($parent_obj)) ! $parent_obj->finish(); } + print_r($this->cal); + return true; ! } // end function process_file() ! ! /** ! * Opens a file. ! * ! * @access public ! * @return bool Returns whether or not the file handle was opened successfully. ! */ ! function open_file($filename) { $this->fh = fopen("./".$filename, "r"); ! return ($this->fh == FALSE) ? false : true; ! } // end function open_file() ! ! /** ! * Takes a filehandle and folds multiple line input to $this->line. ! * ! * @access public ! * @return string A trim()ed $tmp_line. ! */ ! function read_line() { ! ! if (feof($this->fh)) return; ! $tmp_line = $this->lookahead; $read_more = true; + do { $this->lookahead = fgets($this->fh, 1024); $this->lookahead = ereg_replace("[\r\n]", "", $this->lookahead); ! if ( ! ( ! $this->lookahead != '' && ! ($this->lookahead{0} == " " || $this->lookahead{0} == "\t") ! ) ! || $tmp_line == '' ! || $tmp_line == "\n" ! ) $tmp_line = rtrim($tmp_line) . str_replace("\t"," ", $this->lookahead); ! else $read_more = false; ! ! } while ($read_more & !feof($this->fh)); ! return trim($tmp_line); ! } // end function read_line() ! } ?> \ No newline at end of file Index: class.Vtodo.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Vtodo.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.Vtodo.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.Vtodo.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,14 **** <?php ! /*=====================class.Vtodo.php===================== ! ! This class is for calendars. ! ! */ ! class Vtodo extends iCalObj{ - function Vtodo(){ ! } ! } ! ?> \ No newline at end of file --- 1,24 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. ! * ! * @author ! * @since ! * @package ! * @subpackage ! */ ! /** ! * This class is for calendars. ! */ ! class Vtodo extends iCalObj { ! /** ! * Creates a new Vtodo object. ! * ! * @access public ! */ ! function Vtodo() {} ! } ?> \ No newline at end of file Index: class.Valarm.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Valarm.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.Valarm.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.Valarm.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,14 **** <?php ! /*=====================class.Valarm.php===================== ! ! This class is for events. ! ! */ ! class Valarm extends iCalObj{ ! ! function Valarm(){ } ! } ! ?> \ No newline at end of file --- 1,30 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. ! * ! * @author ! * @since ! * @package ! * @subpackage ! */ ! /** ! * This class is for events. ! * ! * [Optional long description of this class] ! * ! */ ! class Valarm extends iCalObj { ! ! /** ! * Constructs a new Valarm object. ! * ! * Optional long description. ! * ! * @access public ! */ ! function Valarm() { } ! } ?> \ No newline at end of file Index: class.Daylight.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Daylight.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.Daylight.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.Daylight.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,14 **** <?php ! /*=====================class.Daylight.php===================== ! ! This class is for calendars. ! ! */ ! class Daylight extends Vtimezone{ ! ! function Daylight(){ } ! } ! ?> \ No newline at end of file --- 1,31 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. This class is for calendars. ! * ! * ! * @author ! * @since ! * @package ! * @subpackage ! */ ! /** ! * [Optional short description of this class] ! * ! * [Optional long description of this class] ! * ! */ ! class Daylight extends Vtimezone { ! ! /** ! * Constructs a new Daylight object. ! * ! * Optional long description. ! * ! * @access public ! */ ! function Daylight() { } ! } ?> \ No newline at end of file Index: init.inc.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/init.inc.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** init.inc.php 16 Mar 2007 02:36:05 -0000 1.1 --- init.inc.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,19 **** <?php ! /*=====================init.inc.php===================== ! For phpicalendar 3 ! ! Need to set: ! ! 1. configurations ! paths ! languages ! templates ! behaviors ! 2. calendar list ! 3. range of dates to process ! ! */ ! ! --- 1,16 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. An optional short description should go here. ! * ! * @author ! * @since ! * @package ! * @subpackage ! * ! * @todo Need to set configurations (paths, languages, templates, behaviors) ! * @todo calendar list ! * @todo range of dates to process ! */ Index: class.Vevent.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Vevent.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.Vevent.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.Vevent.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,14 **** <?php ! /*=====================class.Vevent.php===================== ! ! This class is for events. ! ! */ ! class Vevent extends iCalObj{ ! ! function Vevent(){ ! } ! } ! ?> \ No newline at end of file --- 1,27 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. ! * ! * @author ! * @since ! * @package ! * @subpackage ! */ ! /** ! * This class is for Events. ! * ! * [Optional long description of this class] ! * ! */ ! class Vevent extends iCalObj { ! ! /** ! * Creates a new Vevent object. ! * ! * @access public ! */ ! function Vevent() {} ! } ?> \ No newline at end of file Index: class.Vcalendar.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Vcalendar.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.Vcalendar.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.Vcalendar.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,14 **** <?php ! /*=====================class.Vcalendar.php===================== ! ! This class is for calendars. ! ! */ ! class Vcalendar extends iCalObj{ ! ! function Vcalendar(){ } ! } ! ?> \ No newline at end of file --- 1,30 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. ! * ! * @author ! * @since ! * @package ! * @subpackage ! */ ! /** ! * This class is for calendars. ! * ! * [Optional long description of this class] ! * ! */ ! class Vcalendar extends iCalObj { ! ! /** ! * Constructs a new Vcalendar object. ! * ! * Optional long description. ! * ! * @access public ! */ ! function Vcalendar() { } ! } ?> \ No newline at end of file Index: class.Vjournal.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar3/functions/class.Vjournal.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** class.Vjournal.php 16 Mar 2007 02:30:35 -0000 1.1 --- class.Vjournal.php 9 Apr 2007 13:02:13 -0000 1.2 *************** *** 1,14 **** <?php ! /*=====================class.Vjournal.php===================== ! ! This class is for calendars. ! ! */ ! class Vjournal extends iCalObj{ - function Vjournal(){ ! } ! } ! ?> \ No newline at end of file --- 1,27 ---- <?php ! /** ! * File DocBlock. Documentation here applies to classes, functions, etc. contained in this file, ! * unless overridden below. ! * ! * @author ! * @since ! * @package ! * @subpackage ! */ ! /** ! * This class is for calendars. ! * ! * [Optional long description of this class] ! * ! */ ! class Vjournal extends iCalObj { ! /** ! * Creates a new Vjournal object. ! * ! * @access public ! */ ! function Vjournal() {} ! } ?> \ No newline at end of file |