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...> - 2006-04-09 00:33:04
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23031/functions Modified Files: ical_parser.php Log Message: recur bug fix...add bysetpos support Index: ical_parser.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/ical_parser.php,v retrieving revision 1.208 retrieving revision 1.209 diff -C2 -d -r1.208 -r1.209 *** ical_parser.php 21 Mar 2006 09:52:29 -0000 1.208 --- ical_parser.php 9 Apr 2006 00:32:48 -0000 1.209 *************** *** 460,465 **** --- 460,467 ---- break; case 'INTERVAL': + if ($val > 0){ $number = $val; $master_array[($start_date)][($hour.$minute)][$uid]['recur'][$key] = $number; + } break; case 'BYSECOND': *************** *** 565,569 **** // Populate $byday with the default day if it's not set. if (!isset($byday)) { ! $byday[] = strtoupper(substr($daysofweekshort_lang[date('w', $start_date_time)], 0, 2)); } if (is_array($byday)) { --- 567,571 ---- // Populate $byday with the default day if it's not set. if (!isset($byday)) { ! $byday[] = strtoupper(substr(date('D', $start_date_time), 0, 2)); } if (is_array($byday)) { *************** *** 592,596 **** $next_range_time = strtotime(date('Y-m-01', $next_range_time)); $next_date_time = $next_date_time; ! if ((isset($bymonthday)) && (!isset($byday))) { foreach($bymonthday as $day) { if ($day < 0) $day = ((date('t', $next_range_time)) + ($day)) + 1; --- 594,626 ---- $next_range_time = strtotime(date('Y-m-01', $next_range_time)); $next_date_time = $next_date_time; ! if (isset($bysetpos)){ ! /* bysetpos code from dustinbutler ! start on day 1 or last day. ! if day matches any BYDAY the count is incremented. ! SETPOS = 4, need 4th match ! SETPOS = -1, need 1st match ! */ ! $year = date('Y', $next_range_time); ! $month = date('m', $next_range_time); ! if ($bysetpos > 0) { ! $next_day = '+1 day'; ! $day = 1; ! } else { ! $next_day = '-1 day'; ! $day = $totalDays[$month]; ! } ! $day = mktime(0, 0, 0, $month, $day, $year); ! $countMatch = 0; ! while ($countMatch != abs($bysetpos)) { ! /* Does this day match a BYDAY value? */ ! $thisDay = $day; ! $textDay = strtoupper(substr(date('D', $thisDay), 0, 2)); ! if (in_array($textDay, $byday)) { ! $countMatch++; ! } ! $day = strtotime($next_day, $thisDay); ! } ! $recur_data[] = $thisDay; ! }elseif ((isset($bymonthday)) && (!isset($byday))) { foreach($bymonthday as $day) { if ($day < 0) $day = ((date('t', $next_range_time)) + ($day)) + 1; *************** *** 662,666 **** $year = date('Y', $next_range_time); } ! if ((isset($byday)) && (is_array($byday))) { $checkdate_time = mktime(0,0,0,$month,1,$year); --- 692,722 ---- $year = date('Y', $next_range_time); } ! if (isset($bysetpos)){ ! /* bysetpos code from dustinbutler ! start on day 1 or last day. ! if day matches any BYDAY the count is incremented. ! SETPOS = 4, need 4th match ! SETPOS = -1, need 1st match ! */ ! if ($bysetpos > 0) { ! $next_day = '+1 day'; ! $day = 1; ! } else { ! $next_day = '-1 day'; ! $day = date("t",$month); ! } ! $day = mktime(12, 0, 0, $month, $day, $year); ! $countMatch = 0; ! while ($countMatch != abs($bysetpos)) { ! /* Does this day match a BYDAY value? */ ! $thisDay = $day; ! $textDay = strtoupper(substr(date('D', $thisDay), 0, 2)); ! if (in_array($textDay, $byday)) { ! $countMatch++; ! } ! $day = strtotime($next_day, $thisDay); ! } ! $recur_data[] = $thisDay; ! } if ((isset($byday)) && (is_array($byday))) { $checkdate_time = mktime(0,0,0,$month,1,$year); |
From: <ji...@us...> - 2006-04-05 06:53:11
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/default In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13380/templates/default Modified Files: rss_index.tpl Log Message: add new rss files Index: rss_index.tpl =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/templates/default/rss_index.tpl,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** rss_index.tpl 8 Feb 2006 09:14:48 -0000 1.5 --- rss_index.tpl 5 Apr 2006 06:53:05 -0000 1.6 *************** *** 36,44 **** <td width="98%" valign="top" align="left"> <br /> ! {L_THIS_SITE_IS} <a class="psf" href="http://www.oreillynet.com/rss/">RSS 0.91 enabled</a>.<br /> <br /> {RSS_LIST} <br /> ! <p>RSS feeds can also be set up for a specified number of days before or after a given date, or between two dates. See the <a href="http://phpicalendar.net/documentation/index.php/RSS_feeds">documentation</a> for how to set up the URLs</p> </td> </tr> --- 36,44 ---- <td width="98%" valign="top" align="left"> <br /> ! <br /> <br /> {RSS_LIST} <br /> ! <p>{RSS_DOCINFO}</p> </td> </tr> |
From: <ji...@us...> - 2006-04-05 05:26:47
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/default In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18894/phpicalendar/templates/default Modified Files: footer.tpl header.tpl Log Message: changes to event popup so that reparsing not needed Index: footer.tpl =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/templates/default/footer.tpl,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** footer.tpl 21 Mar 2006 09:52:30 -0000 1.14 --- footer.tpl 5 Apr 2006 04:44:00 -0000 1.15 *************** *** 1,3 **** ! <center class="V9"><br />{L_POWERED_BY} <a class="psf" href="http://phpicalendar.net/">PHP iCalendar 2.22rc1</a><br /> <!-- switch rss_valid on --> <p> --- 1,3 ---- ! <center class="V9"><br />{L_POWERED_BY} <a class="psf" href="http://phpicalendar.net/">PHP iCalendar 2.22rc3</a><br /> <!-- switch rss_valid on --> <p> Index: header.tpl =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/templates/default/header.tpl,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** header.tpl 24 Mar 2006 01:29:24 -0000 1.13 --- header.tpl 5 Apr 2006 04:44:00 -0000 1.14 *************** *** 17,19 **** --- 17,20 ---- <input type="hidden" name="uid" id="uid" value="" /> <input type="hidden" name="cpath" id="cpath" value="" /> + <input type="hidden" name="event_data" id="event_data" value="" /> </form> |
From: <ji...@us...> - 2006-04-05 04:59:26
|
Update of /cvsroot/phpicalendar/phpicalendar/rss In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30255/rss Modified Files: index.php Added Files: rss1.0.php rss2.0.php xml.gif Log Message: add new rss files --- NEW FILE: rss1.0.php --- <?php /******************************************************************************** * Modified from phpicalendar 2.0a distribution by Jim Hu * philosophical changes * - instead of having separate generators, use a date range for all views (done) * - change the rss generation method to conform to standards(not done) * PHP note: #@ is error control operator to suppress execution halt on error * - used below to deal with undef? * * using rssview, RSS feeds can be specified to return events for a given day, week, month, or year * feeds can be specified for a number of days to or from a given date * feeds can be specified for a range of dates * *********************************************************************************/ /* Modified from 2.21 by dyfrin 2006/03/08 19:09:28 Changes: -RSS changed to 2.0, encoding removed, languages converted to ISO standard for feeds -RSS title changed to be set by config.inc.php. Make sure that is added to it. Lines modified: 135-165, 208-223 Additional mods by J. Hu */ define('BASE', '../'); require(BASE.'functions/init.inc.php'); if ($enable_rss != 'yes') { die ("RSS feeds are not enabled on this site."); } include_once(BASE.'functions/date_functions.php'); //set the range of days to return based on the view chosen $rssview = $_GET['rssview']; if (isset($_GET['getdate']) && $_GET['getdate'] !=''){ $getdate = $_GET['getdate']; }else{ $getdate = date("Ymd"); } # for all views, $fromdate is the first day to be shown and $todate should be the last day. switch ($rssview){ case 'day': $fromdate = $getdate; $todate = $getdate; $theview = $lang['l_day']; break; case 'week': $fromdate = dateOfWeek($getdate, 'Sunday'); $todate = $fromdate + 6; $theview = $lang['l_week']." of ".date('n/d/Y',strtotime($fromdate)); break; case 'month': $parse_month = date ("Ym", strtotime($getdate)); $fromdate = ($parse_month *100) + 1; $todate = ($parse_month *100) + date("t",strtotime($getdate)); $theview = date('M Y',strtotime($fromdate)); break; case 'year': if(isset($_GET['year'])){ $theyear = $_GET['year']; }else{ $theyear = substr($getdate,0,4); } $fromdate = ($theyear*10000)+101; $todate = date("Ymd", strtotime($theyear*10000+1231)); $theview = $theyear; break; case 'daysfrom': $fromdate = $getdate; $todate = date("Ymd", strtotime($getdate) + $_GET['days']*60*60*24); $theview = $_GET['days']." days from ".date('n/d/Y',strtotime($fromdate)); break; case 'daysto': $todate = $getdate; $fromdate = date("Ymd", strtotime($getdate) - $_GET['days']*60*60*24); $theview = $_GET['days']." days before ".date('n/d/Y',strtotime($todate)); break; case 'range': if(isset($_GET['from'])){ $fromdate = $_GET['from']; }else{ $fromdate = $getdate; } $todate = $_GET['to']; $theview = date('n/d/Y',strtotime($fromdate)).'-'.date('n/d/Y',strtotime($todate)); break; default: #default to week $fromdate = dateOfWeek($getdate, 'Sunday'); $todate = $fromdate + 6; $theview = ""; } #need to give ical_parser the most distant date to correctly set up master_array. $getdate = $todate; #echo "from:$fromdate to:$todate"; #Note that ical_parser supplies cal_displayname. include(BASE.'functions/ical_parser.php'); $events_count = 0; // calculate a value for Last Modified and ETag $cal = implode(",",$cals); //get filemtime from master array $filemod = 0; #default to start of unix era, overwrite with most recent mtime from master array foreach ($master_array['-4'] as $calinfo){ if ($calinfo['mtime'] > $filemod) $filemod = $calinfo['mtime']; } $filemodtime = date("r", $filemod); //send relevant headers header ("Last-Modified: $filemodtime"); header ("ETag:\"$filemodtime\""); // checks the user agents headers to see if they kept track of our // stuff, if so be nice and send back a 304 and exit. if ( ($_SERVER['HTTP_IF_MODIFIED_SINCE'] == $filemodtime) || ($_SERVER['HTTP_IF_NONE_MATCH'] == $filemodtime)){ header ("HTTP/1.1 304 Not Modified"); exit; } /* Change languages to ISO 639-1 to validate RSS without changing long version in config.inc.php */ $user_language = array ("english", "polish", "german", "french", "dutch", "italian", "japanese", "norwegian", "spanish", "swedish", "portuguese", "catalan", "traditional_chinese", "esperanto", "korean"); $iso_language = array ("en", "pl", "de", "fr", "nl", "da", "it", "ja", "no", "es", "sv", "pt", "ca", "zh-tw", "eo", "ko"); $rss_language = str_replace($user_language, $iso_language, $language); /* End language modification */ $rss = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"."\n"; /* Use 1.0 and strip encoding, use rss_language */ $rss .= '<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ev="http://purl.org/rss/1.0/modules/event/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://purl.org/rss/1.0/">'."\n"; $rss .= '<channel rdf:about="'.$default_path.'/rss/rss.php/'; if (isset($cpath) && $cpath !='') $rss_link.="?cpath=$cpath"; $rss .='">'."\n"; $rss .= '<title>'.$cal_displayname; if ($theview !=""){$rss .= ' - '.$theview;} $rss .= "</title>\n"; $rss .= '<link>'.htmlspecialchars("$default_path").'</link>'."\n"; $rss .= '<description>'.$cal_displayname.' '.$lang['l_calendar'].' - '.$theview.'</description>'."\n"; #$rss .= '<language>'.$rss_language.'</language>'."\n"; //generate the items $numdays = round((strtotime($todate) - strtotime($fromdate))/(60*60*24))+1; $thisdate = $fromdate; # start at beginning of date range, # note that usage of $thisdate is different from distribution # I use it as a date, dist uses it as a time $i = 1; #day counter $rss .= "<items>\n<rdf:Seq>\n"; $rss_items =''; $uid_arr = array(); do { $thisdate=date('Ymd', strtotime($thisdate)); #echo "Date: $thisdate<br>\n"; $dayofweek = localizeDate ("%a %b %e %Y", strtotime($thisdate)); if (isset($master_array[($thisdate)]) && sizeof($master_array[($thisdate)]) > 0) { foreach ($master_array[("$thisdate")] as $event_times) { foreach ($event_times as $uid=>$val) { #handle multiday all day events if(!$val["event_start"]){ if (isset($uid_arr[$uid])){ $uid_arr[$uid] .= "+$dayofweek" ; continue; }else{ $uid_arr[$uid] = "$dayofweek" ; } $event_start = $lang['l_all_day']; }else{ $event_start = @$val["event_start"]; $event_start = date ($timeFormat, @strtotime ("$event_start")); } $event_text = stripslashes(urldecode($val["event_text"])); $event_text = strip_tags($event_text, '<b><i><u>'); # $event_text = urlencode($event_text); #uncomment for shorter event text with ... # $event_text = word_wrap($event_text, 21, $tomorrows_events_lines); $description = stripslashes(urldecode($val["description"])); $description = strip_tags($description, '<b><i><u>'); $rss_title = htmlspecialchars ("$dayofweek: $event_text"); /* original link, not valid url coding $rss_link = htmlspecialchars ("$default_path/day.php?getdate=$thisdate&cal=$cal&cpath=$cpath"); */ /* Add %20's for spaces for the calendar links to make them valid url's */ $urlcal = rawurlencode ("$cal"); $rss_link = ("$default_path/day.php?getdate=$thisdate&cal=$urlcal"); if (isset($cpath) && $cpath !=''){ $rss_link .= "&cpath=$cpath"; } /* End link modification */ $rss_description = htmlspecialchars ("$dayofweek $event_start: $description"); $rss .= '<rdf:li rdf:resource="'.$rss_link.'&uid='.$uid.'/" />'."\n"; $rss_items .= '<item rdf:about="'.$rss_link.'&uid='.$uid.'/">'."\n"; /* Create guid, and use uid to make link unique */ # $rss .= '<guid isPermaLink="false">'.$rss_link.$uid.'</guid>'."\n"; /* End guid modification */ $rss_items .= '<title>'.$rss_title.'</title>'."\n"; $rss_items .= '<ev:startdate>'.date("Y-m-d", strtotime($thisdate)).'T'.date("h:m:s",$val["event_start"]).'</ev:startdate>'."\n"; $rss_items .= '<ev:enddate>'.date("Y-m-d", strtotime($thisdate)).'T'.date("h:m:s",$val["event_start"]).'</ev:enddate>'."\n"; $rss_items .= '<link>'.$rss_link.'</link>'."\n"; $rss_items .= '<description>'.$rss_description.'</description>'."\n"; if (isset($val['location']) && $val['location'] !=''){ $rss_items .= '<ev:location>'.$val['location']."</ev:location>\n"; } $rss_items .= '</item>'."\n"; $events_count++; } } } if (($events_count < 1) && ($i == $numdays)) { $rss_items .= '<item>'."\n"; $rss_items .= '<title>No events found</title>'."\n"; $rss_items .= '<link>'.htmlspecialchars ("$default_path").'</link>'."\n"; $rss_items .= '</item>'."\n"; } $thisdate++; $i++; } while ($i <= $numdays); $rss .= "</rdf:Seq>\n</items>\n"; $rss .= "</channel>\n"; $rss .= $rss_items.'</rdf:RDF>'."\n"; foreach ($uid_arr as $uid=>$date_range){ #echo "date_range:$date_range<br>"; if(strpos($date_range,"+")>0){ #echo "+ in date_range<br>"; $temp = explode("+",$date_range); $date_range = $temp[0].'-'.array_pop($temp); } $rss = str_replace("<uid>$uid</uid>\n<event_start>".$lang['l_all_day']."</event_start>","<uid>$uid</uid>\n<event_start>$date_range</event_start>", $rss); } header ("Content-Type: text/xml"); echo "$rss"; ?> --- NEW FILE: rss2.0.php --- <?php /******************************************************************************** * Modified from phpicalendar 2.0a distribution by Jim Hu * philosophical changes * - instead of having separate generators, use a date range for all views (done) * - change the rss generation method to conform to standards(not done) * PHP note: #@ is error control operator to suppress execution halt on error * - used below to deal with undef? * * using rssview, RSS feeds can be specified to return events for a given day, week, month, or year * feeds can be specified for a number of days to or from a given date * feeds can be specified for a range of dates * *********************************************************************************/ /* Modified from 2.21 by dyfrin 2006/03/08 19:09:28 Changes: -RSS changed to 2.0, encoding removed, languages converted to ISO standard for feeds -RSS title changed to be set by config.inc.php. Make sure that is added to it. Lines modified: 135-165, 208-223 */ define('BASE', '../'); require(BASE.'functions/init.inc.php'); if ($enable_rss != 'yes') { die ("RSS feeds are not enabled on this site."); } include_once(BASE.'functions/date_functions.php'); //set the range of days to return based on the view chosen $rssview = $_GET['rssview']; if (isset($_GET['getdate']) && $_GET['getdate'] !=''){ $getdate = $_GET['getdate']; }else{ $getdate = date("Ymd"); } # for all views, $fromdate is the first day to be shown and $todate should be the last day. switch ($rssview){ case 'day': $fromdate = $getdate; $todate = $getdate; $theview = $lang['l_day']; break; case 'week': $fromdate = dateOfWeek($getdate, 'Sunday'); $todate = $fromdate + 6; $theview = $lang['l_week']." of ".date('n/d/Y',strtotime($fromdate)); break; case 'month': $parse_month = date ("Ym", strtotime($getdate)); $fromdate = ($parse_month *100) + 1; $todate = ($parse_month *100) + date("t",strtotime($getdate)); $theview = date('M Y',strtotime($fromdate)); break; case 'year': if(isset($_GET['year'])){ $theyear = $_GET['year']; }else{ $theyear = substr($getdate,0,4); } $fromdate = ($theyear*10000)+101; $todate = date("Ymd", strtotime($theyear*10000+1231)); $theview = $theyear; break; case 'daysfrom': $fromdate = $getdate; $todate = date("Ymd", strtotime($getdate) + $_GET['days']*60*60*24); $theview = $_GET['days']." days from ".date('n/d/Y',strtotime($fromdate)); break; case 'daysto': $todate = $getdate; $fromdate = date("Ymd", strtotime($getdate) - $_GET['days']*60*60*24); $theview = $_GET['days']." days before ".date('n/d/Y',strtotime($todate)); break; case 'range': if(isset($_GET['from'])){ $fromdate = $_GET['from']; }else{ $fromdate = $getdate; } $todate = $_GET['to']; $theview = date('n/d/Y',strtotime($fromdate)).'-'.date('n/d/Y',strtotime($todate)); break; default: #default to week $fromdate = dateOfWeek($getdate, 'Sunday'); $todate = $fromdate + 6; $theview = ""; } #need to give ical_parser the most distant date to correctly set up master_array. $getdate = $todate; #echo "from:$fromdate to:$todate"; #Note that ical_parser supplies cal_displayname. include(BASE.'functions/ical_parser.php'); $events_count = 0; // calculate a value for Last Modified and ETag $cal = implode(",",$cals); //get filemtime from master array $filemod = 0; #default to start of unix era, overwrite with most recent mtime from master array foreach ($master_array['-4'] as $calinfo){ if ($calinfo['mtime'] > $filemod) $filemod = $calinfo['mtime']; } $filemodtime = date("r", $filemod); //send relevant headers header ("Last-Modified: $filemodtime"); header ("ETag:\"$filemodtime\""); // checks the user agents headers to see if they kept track of our // stuff, if so be nice and send back a 304 and exit. if ( ($_SERVER['HTTP_IF_MODIFIED_SINCE'] == $filemodtime) || ($_SERVER['HTTP_IF_NONE_MATCH'] == $filemodtime)) { # header ("HTTP/1.1 304 Not Modified"); # exit; } /* Change languages to ISO 639-1 to validate RSS without changing long version in config.inc.php */ $user_language = array ("english", "polish", "german", "french", "dutch", "italian", "japanese", "norwegian", "spanish", "swedish", "portuguese", "catalan", "traditional_chinese", "esperanto", "korean"); $iso_language = array ("en", "pl", "de", "fr", "nl", "da", "it", "ja", "no", "es", "sv", "pt", "ca", "zh-tw", "eo", "ko"); $rss_language = str_replace($user_language, $iso_language, $language); /* End language modification */ $rss = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"."\n"; #$rss .= '<!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 2.01//EN" "http://my.netscape.com/publish/formats/rss-0.91.dtd">'."\n"; /* Use 2.0 and strip encoding, use rss_language */ $rss .= '<rss version="2.0"'."\n"; $rss .= 'xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ev="http://purl.org/rss/1.0/modules/event/" xmlns:dc="http://purl.org/dc/elements/1.1/" >'."\n"; $rss .= '<channel>'."\n"; $rss .= '<title>'.$cal_displayname; if ($theview !=""){$rss .= ' - '.$theview;} $rss .= "</title>\n"; $rss .= '<link>'.$default_path.'/rss/rss2.0.php/'; if (isset($cpath) && $cpath !='') $rss_link.="?cpath=$cpath"; $rss .='</link>'."\n"; $rss .= '<description>'.$cal_displayname.' '.$lang['l_calendar'].' - '.$theview.'</description>'."\n"; $rss .= '<language>'.$rss_language.'</language>'."\n"; /* End rss 2.0 modification */ //generate the items $numdays = round((strtotime($todate) - strtotime($fromdate))/(60*60*24))+1; $thisdate = $fromdate; # start at beginning of date range, # note that usage of $thisdate is different from distribution # I use it as a date, dist uses it as a time $i = 1; #day counter #$rss .= "<items>\n<rdf:Seq>\n"; $uid_arr = array(); do { $thisdate=date('Ymd', strtotime($thisdate)); #echo "Date: $thisdate<br>\n"; $dayofweek = localizeDate ("%a %b %e %Y", strtotime($thisdate)); if (isset($master_array[($thisdate)]) && sizeof($master_array[($thisdate)]) > 0) { foreach ($master_array[("$thisdate")] as $event_times) { foreach ($event_times as $uid=>$val) { #handle multiday all day events if(!$val["event_start"]){ if (isset($uid_arr[$uid])){ $uid_arr[$uid] .= "+$dayofweek" ; continue; }else{ $uid_arr[$uid] = "$dayofweek" ; } $event_start = $lang['l_all_day']; }else{ $event_start = @$val["event_start"]; $event_start = date ($timeFormat, @strtotime ("$event_start")); } $event_text = stripslashes(urldecode($val["event_text"])); $event_text = strip_tags($event_text, '<b><i><u>'); # $event_text = urlencode($event_text); #uncomment for shorter event text with ... # $event_text = word_wrap($event_text, 21, $tomorrows_events_lines); $description = stripslashes(urldecode($val["description"])); $description = strip_tags($description, '<b><i><u>'); $rss_title = htmlspecialchars ("$dayofweek: $event_text"); /* original link, not valid url coding $rss_link = htmlspecialchars ("$default_path/day.php?getdate=$thisdate&cal=$cal&cpath=$cpath"); */ /* Add %20's for spaces for the calendar links to make them valid url's */ $urlcal = rawurlencode ("$cal"); $rss_link = ("$default_path/day.php?getdate=$thisdate&cal=$urlcal"); if (isset($cpath) && $cpath !=''){ $rss_link .= "&cpath=$cpath"; } /* End link modification */ $rss_description = htmlspecialchars ("$dayofweek $event_start: $description"); #$rss .= '<rdf:li rdf:resource="'.$rss_link.'&uid='.$uid.'/" />'."\n"; $rss .= '<item>'."\n"; /* Create guid, and use uid to make link unique */ $rss .= '<guid isPermaLink="false">'.$rss_link.'&uid='.$uid.'</guid>'."\n"; /* End guid modification */ $rss .= '<title>'.$rss_title.'</title>'."\n"; $rss .= '<ev:startdate>'.date("Y-m-d", strtotime($thisdate)).'T'.date("h:m:s",$val["event_start"]).'</ev:startdate>'."\n"; $rss .= '<ev:enddate>'.date("Y-m-d", strtotime($thisdate)).'T'.date("h:m:s",$val["event_start"]).'</ev:enddate>'."\n"; $rss .= '<link>'.$rss_link.'</link>'."\n"; $rss .= '<description>'.$rss_description.'</description>'."\n"; if (isset($val['location']) && $val['location'] !=''){ $rss .= '<ev:location>'.$val['location']."</ev:location>\n"; } $rss .= '</item>'."\n"; $events_count++; } } } if (($events_count < 1) && ($i == $numdays)) { $rss .= '<item>'."\n"; $rss .= '<title>No events found</title>'."\n"; $rss .= '<link>'.htmlspecialchars ("$default_path").'</link>'."\n"; $rss .= '</item>'."\n"; } $thisdate++; $i++; } while ($i <= $numdays); #$rss .= "</rdf:Seq>\n</items>\n"; $rss .= "\n</channel>\n</rss>\n"; foreach ($uid_arr as $uid=>$date_range){ #echo "date_range:$date_range<br>"; if(strpos($date_range,"+")>0){ #echo "+ in date_range<br>"; $temp = explode("+",$date_range); $date_range = $temp[0].'-'.array_pop($temp); } $rss = str_replace("<uid>$uid</uid>\n<event_start>".$lang['l_all_day']."</event_start>","<uid>$uid</uid>\n<event_start>$date_range</event_start>", $rss); } header ("Content-Type: text/xml"); echo "$rss"; ?> --- NEW FILE: xml.gif --- (This appears to be a binary file; contents omitted.) Index: index.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/rss/index.php,v retrieving revision 1.41 retrieving revision 1.42 diff -C2 -d -r1.41 -r1.42 *** index.php 24 Mar 2006 01:46:54 -0000 1.41 --- index.php 5 Apr 2006 04:59:20 -0000 1.42 *************** *** 1,4 **** --- 1,7 ---- <?php + /* Rewritten by J. Hu 4/2/06 + */ + define('BASE','../'); require_once(BASE.'functions/ical_parser.php'); *************** *** 6,10 **** if ($enable_rss != 'yes') { ! exit(error('RSS is not available for this installation.', $cal, '../')); } --- 9,13 ---- if ($enable_rss != 'yes') { ! exit(error($lang['l_rss_notenabled'], $cal, '../')); } *************** *** 20,28 **** $display_date = "RSS Info"; ! $filelist = availableCalendars($username, $password, $ALL_CALENDARS_COMBINED); ! if (isset($cpath) && $cpath !=''){ ! $cpath_tmp = '&cpath='.$cpath; ! } foreach ($filelist as $file) { // $cal_filename is the filename of the calendar without .ics --- 23,30 ---- $display_date = "RSS Info"; ! $rss_list = "<table>\n"; ! $xml_icon ="<img src = 'xml.gif' alt='xml'>"; ! $filelist = availableCalendars($username, $password, $ALL_CALENDARS_COMBINED); foreach ($filelist as $file) { // $cal_filename is the filename of the calendar without .ics *************** *** 30,55 **** // $cal_displayname is $cal_filename with occurrences of "32" replaced with " " ! if (substr($file, 0, 7) == 'http://' || substr($file, 0, 8) == 'https://' || substr($file, 0, 9) == 'webcal://') { ! $cal_tmp = urlencode($file); }else{ ! $cal_tmp = getCalendarName($file); ! } ! $cal_displayname_tmp = $cal_displaynames[array_search($file,$cal_filelist)]; ! $cal_tmp = str_replace(" ", "+", $cal_tmp); ! $rss_list .= '<br /><font class="V12"><b>'.$cal_displayname_tmp.' '. $lang['l_calendar'].'</b></font><br />'; ! $rss_list .= '<table><tr><td><font class="V12">'.$lang['l_day'].':</font></td><td> ! <a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=day>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=day</a></td></tr>'; ! $rss_list .= '<td><font class="V12">'.$lang['l_week'].':</font></td><td> ! <a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=week>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=week</a></td></tr>'; ! $rss_list .= '<td><font class="V12">'.$lang['l_month'].':</font></td><td> ! <a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=month>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=month</a></td></tr>'; - $rss_list .= '<td><font class="V12">'.$lang['l_year'].':</font></td><td> - <a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=year>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=year</a></td></tr>'; - $rss_list .='</table>'; - $footer_check = $default_path.'/rss/rss.php?cal='.$default_cal.'&rssview='.$default_view; } --- 32,67 ---- // $cal_displayname is $cal_filename with occurrences of "32" replaced with " " ! if (is_numeric(array_search($file, $cal_filelist))){ ! $cal_displayname_tmp = $cal_displaynames[array_search($file,$cal_filelist)]; }else{ ! $cal_displayname_tmp = str_replace("32", " ", str_replace(".ics",'',basename($file))); ! } ! $rss_list .= '<tr><td rowspan ="3"><font class="V12" color="blue"><b>'.$cal_displayname_tmp.' '. $lang['l_calendar'].'</b></font></td>'; ! /* Changed to show links without urlencode, but links valid urls */ ! $rss_list .= "<td>".$lang['l_day']."</td>"; ! $rss_list .= '<td><a href='.$default_path.'/rss/rss.php?cal='.rawurlencode($file).'&cpath='.$cpath.'&rssview=day>'.$xml_icon.'</a> RSS 0.91</td>'; ! $rss_list .= '<td><a href='.$default_path.'/rss/rss1.0.php?cal='.rawurlencode($file).'&cpath='.$cpath.'&rssview=day>'.$xml_icon.'</a> RSS 1.0</td>'; ! $rss_list .= '<td><a href='.$default_path.'/rss/rss2.0.php?cal='.rawurlencode($file).'&cpath='.$cpath.'&rssview=day>'.$xml_icon.'</a> RSS 2.0</td></tr>'; ! $rss_list .= "<td>".$lang['l_week']."</td>"; ! $rss_list .= '<td><a href='.$default_path.'/rss/rss.php?cal='.rawurlencode($file).'&cpath='.$cpath.'&rssview=week>'.$xml_icon.'</a> RSS 0.91</td>'; ! $rss_list .= '<td><a href='.$default_path.'/rss/rss1.0.php?cal='.rawurlencode($file).'&cpath='.$cpath.'&rssview=week>'.$xml_icon.'</a> RSS 1.0</td>'; ! $rss_list .= '<td><a href='.$default_path.'/rss/rss2.0.php?cal='.rawurlencode($file).'&cpath='.$cpath.'&rssview=week>'.$xml_icon.'</a> RSS 2.0</td></tr>'; ! ! $rss_list .= "<td>".$lang['l_month']."</td>"; ! $rss_list .= '<td><a href='.$default_path.'/rss/rss.php?cal='.rawurlencode($file).'&cpath='.$cpath.'&rssview=month>'.$xml_icon.'</a> RSS 0.91</td>'; ! $rss_list .= '<td><a href='.$default_path.'/rss/rss1.0.php?cal='.rawurlencode($file).'&cpath='.$cpath.'&rssview=month>'.$xml_icon.'</a> RSS 1.0</td>'; ! $rss_list .= '<td><a href='.$default_path.'/rss/rss2.0.php?cal='.rawurlencode($file).'&cpath='.$cpath.'&rssview=month>'.$xml_icon.'</a> RSS 2.0</td></tr>'; ! ! $footer_check = $default_path.'/rss/rss.php?cal%3D'.rawurlencode($file.'&cpath='.$cpath.'&rssview='.$default_view); ! $validrss_check = str_replace('%', '%25', $footer_check); ! $rss_list .= "<tr><td> </td></tr>\n"; } + $rss_list .= "</table>\n"; + + + /* End link modification */ *************** *** 77,80 **** --- 89,95 ---- 'rssdisable' => '', 'rss_valid' => '', + 'rss_docinfo' => "RSS feeds can also be set up for a specified number of days before or after a given date, or between two dates. See the <a href='http://phpicalendar.net/documentation/index.php/RSS_feeds'>documentation</a> for how to set up the URLs", + /* Replaces footer.tpl {validrss_check} with $validrss_check */ + 'validrss_check' => $validrss_check, 'show_search' => $show_search, 'l_rss_info' => $lang['l_rss_info'], |
From: <ji...@us...> - 2006-04-05 04:53:14
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25730/phpicalendar/functions Modified Files: init.inc.php Log Message: minor changes in init.inc.php Index: init.inc.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/init.inc.php,v retrieving revision 1.95 retrieving revision 1.96 diff -C2 -d -r1.95 -r1.96 *** init.inc.php 5 Apr 2006 04:51:41 -0000 1.95 --- init.inc.php 5 Apr 2006 04:53:10 -0000 1.96 *************** *** 150,157 **** else { // Check blacklisted. ! if (in_array($cal_filename, $blacklisted_cals)) { exit(error($lang['l_error_restrictedcal'], $cal_filename)); } ! $local_cals[] = getCalendarName(urldecode($cal_filename)); } } --- 150,157 ---- else { // Check blacklisted. ! if (in_array($cal_filename, $blacklisted_cals) && $cal_filename !='') { exit(error($lang['l_error_restrictedcal'], $cal_filename)); } ! $local_cals[] = urldecode(str_replace(".ics", '', basename($cal_filename))); } } |
From: <ji...@us...> - 2006-04-05 04:51:45
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24417/phpicalendar/functions Modified Files: init.inc.php Log Message: improve cookie handling and preferences.php Index: init.inc.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/init.inc.php,v retrieving revision 1.94 retrieving revision 1.95 diff -C2 -d -r1.94 -r1.95 *** init.inc.php 25 Mar 2006 07:11:07 -0000 1.94 --- init.inc.php 5 Apr 2006 04:51:41 -0000 1.95 *************** *** 16,21 **** include_once(BASE.'config.inc.php'); ! if (isset($_COOKIE['phpicalendar'])) { ! $phpicalendar = unserialize(stripslashes($_COOKIE['phpicalendar'])); if (isset($phpicalendar['cookie_language'])) $language = $phpicalendar['cookie_language']; if (isset($phpicalendar['cookie_calendar'])) $default_cal_check = $phpicalendar['cookie_calendar']; --- 16,22 ---- include_once(BASE.'config.inc.php'); ! $cookie_name = 'phpicalendar_'.basename($default_path); ! if (isset($_COOKIE["$cookie_name"]) && !isset($_POST['unset'])) { ! $phpicalendar = unserialize(stripslashes($_COOKIE[$cookie_name])); if (isset($phpicalendar['cookie_language'])) $language = $phpicalendar['cookie_language']; if (isset($phpicalendar['cookie_calendar'])) $default_cal_check = $phpicalendar['cookie_calendar']; |
From: <ji...@us...> - 2006-04-05 04:51:45
|
Update of /cvsroot/phpicalendar/phpicalendar In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24417/phpicalendar Modified Files: preferences.php Log Message: improve cookie handling and preferences.php Index: preferences.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/preferences.php,v retrieving revision 1.57 retrieving revision 1.58 diff -C2 -d -r1.57 -r1.58 *** preferences.php 25 Mar 2006 20:22:47 -0000 1.57 --- preferences.php 5 Apr 2006 04:51:41 -0000 1.58 *************** *** 34,41 **** $cookie_view = $_POST['cookie_view']; $cookie_style = $_POST['cookie_style']; - if (isset($_POST['cookie_style']) && is_dir(BASE.'templates/'.$_POST['cookie_style'].'/')){ - $template = $_POST['cookie_style']; - } - $cookie_startday = $_POST['cookie_startday']; $cookie_time = $_POST['cookie_time']; --- 34,37 ---- *************** *** 44,58 **** $the_cookie = serialize($the_cookie); if ($cookie_unset) { ! setcookie("phpicalendar","$the_cookie",time()-(60*60*24*7) ,"/","$cookie_uri",0); } else { ! setcookie("phpicalendar","$the_cookie",time()+(60*60*24*7*12*10) ,"/","$cookie_uri",0); } ! $_COOKIE['phpicalendar'] = $the_cookie; $cpath = $cookie_cpath; $cal = $cookie_calendar; } ! if (isset($_COOKIE['phpicalendar'])) { ! $phpicalendar = unserialize(stripslashes($_COOKIE['phpicalendar'])); $cookie_language = $phpicalendar['cookie_language']; $cookie_calendar = $phpicalendar['cookie_calendar']; --- 40,60 ---- $the_cookie = serialize($the_cookie); if ($cookie_unset) { ! setcookie("$cookie_name","$the_cookie",time()-(60*60*24*7) ,"/","$cookie_uri",0); } else { ! setcookie("$cookie_name","$the_cookie",time()+(60*60*24*7*12*10) ,"/","$cookie_uri",0); ! if (isset($_POST['cookie_view'])) ! $default_view = $_POST['cookie_view']; ! if (isset($_POST['cookie_style']) && is_dir(BASE.'templates/'.$_POST['cookie_style'].'/')) ! $template = $_POST['cookie_style']; ! if (isset($_POST['cookie_language']) && is_file(BASE.'languages/'.strtolower($_POST['cookie_language']).'.inc.php')) ! include(BASE.'languages/'.strtolower($_POST['cookie_language']).'.inc.php'); } ! $_COOKIE[$cookie_name] = $the_cookie; $cpath = $cookie_cpath; $cal = $cookie_calendar; } ! if (isset($_COOKIE[$cookie_name])) { ! $phpicalendar = unserialize(stripslashes($_COOKIE[$cookie_name])); $cookie_language = $phpicalendar['cookie_language']; $cookie_calendar = $phpicalendar['cookie_calendar']; *************** *** 66,70 **** } ! if ((!isset($_COOKIE['phpicalendar'])) || ($cookie_unset)) { # No cookie set -> use defaults from config file. $cookie_language = ucfirst($language); --- 68,72 ---- } ! if ((!isset($_COOKIE[$cookie_name])) || ($cookie_unset)) { # No cookie set -> use defaults from config file. $cookie_language = ucfirst($language); *************** *** 104,112 **** $calendar_select = display_ical_list(availableCalendars($username, $password, $ALL_CALENDARS_COMBINED),TRUE); $calendar_select .="<option value=\"$ALL_CALENDARS_COMBINED\">$all_cal_comb_lang</option>"; ! // select for dayview ! $view_select = ($cookie_view == 'day') ? '<option value="day" selected="selected">{L_DAY}</option>' : '<option value="day">{L_DAY}</option>'; ! $view_select .= ($cookie_view == 'week') ? '<option value="week" selected="selected">{L_WEEK}</option>' : '<option value="week">{L_WEEK}</option>'; ! $view_select .= ($cookie_view == 'month') ? '<option value="month" selected="selected">{L_MONTH}</option>' : '<option value="month">{L_MONTH}</option>'; // select for time --- 106,114 ---- $calendar_select = display_ical_list(availableCalendars($username, $password, $ALL_CALENDARS_COMBINED),TRUE); $calendar_select .="<option value=\"$ALL_CALENDARS_COMBINED\">$all_cal_comb_lang</option>"; ! $calendar_select = str_replace("<option value=\"$cookie_calendar\">","<option value=\"$cookie_calendar\" selected='selected'>",$calendar_select); // select for dayview ! $view_select = ($default_view == 'day') ? '<option value="day" selected="selected">{L_DAY}</option>' : '<option value="day">{L_DAY}</option>'; ! $view_select .= ($default_view == 'week') ? '<option value="week" selected="selected">{L_WEEK}</option>' : '<option value="week">{L_WEEK}</option>'; ! $view_select .= ($default_view == 'month') ? '<option value="month" selected="selected">{L_MONTH}</option>' : '<option value="month">{L_MONTH}</option>'; // select for time |
From: <ji...@us...> - 2006-04-05 04:49:22
|
Update of /cvsroot/phpicalendar/phpicalendar/calendars In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22749/phpicalendar/calendars Modified Files: publish.ical.php publish.mozilla.php Log Message: bug fix for publish scripts Index: publish.ical.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/calendars/publish.ical.php,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** publish.ical.php 20 Mar 2006 01:35:56 -0000 1.3 --- publish.ical.php 5 Apr 2006 04:49:15 -0000 1.4 *************** *** 55,59 **** }else{ $calendar_path = ''; ! // allow/disallow publishing --- 55,59 ---- }else{ $calendar_path = ''; ! } // allow/disallow publishing *************** *** 95,125 **** // publishing ! if($_SERVER['REQUEST_METHOD'] == 'PUT') ! { // get calendar data ! if($fp = fopen('php://input','r')) ! { ! while(!@feof($fp)) ! { $data .= fgets($fp,4096); } @fclose($fp); ! } ! else ! { logmsg('unable to read input data'); } ! if(isset($data)) ! { // get calendar name $cal_arr = explode("\n",$data); ! foreach($cal_arr as $k => $v) ! { ! if(strstr($v,'X-WR-CALNAME:')) ! { $arr = explode(':',$v); $calendar_name = trim($arr[1]); --- 95,117 ---- // publishing ! if($_SERVER['REQUEST_METHOD'] == 'PUT'){ // get calendar data ! if($fp = fopen('php://input','r')){ ! while(!@feof($fp)){ $data .= fgets($fp,4096); } @fclose($fp); ! }else{ logmsg('unable to read input data'); } ! if(isset($data)){ // get calendar name $cal_arr = explode("\n",$data); ! foreach($cal_arr as $k => $v){ ! if(strstr($v,'X-WR-CALNAME:')){ $arr = explode(':',$v); $calendar_name = trim($arr[1]); *************** *** 131,141 **** // write to file ! if($fp = fopen($calendar_path.$calendar_name.'.ics','w+')) ! { fputs($fp, $data, strlen($data) ); @fclose($fp); ! } ! else ! { logmsg( 'couldnt open file '.$calendar_path.$calendar_name.'.ics' ); } --- 123,130 ---- // write to file ! if($fp = fopen($calendar_path.$calendar_name.'.ics','w+')){ fputs($fp, $data, strlen($data) ); @fclose($fp); ! }else{ logmsg( 'couldnt open file '.$calendar_path.$calendar_name.'.ics' ); } Index: publish.mozilla.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/calendars/publish.mozilla.php,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** publish.mozilla.php 20 Mar 2006 01:35:56 -0000 1.2 --- publish.mozilla.php 5 Apr 2006 04:49:15 -0000 1.3 *************** *** 66,70 **** }else{ $calendar_path = ''; ! // allow/disallow publishing --- 66,70 ---- }else{ $calendar_path = ''; ! } // allow/disallow publishing |
From: <ji...@us...> - 2006-04-05 04:48:08
|
Update of /cvsroot/phpicalendar/phpicalendar/rss In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21734/phpicalendar/rss Modified Files: rss.php Log Message: update rss.php and README Index: rss.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/rss/rss.php,v retrieving revision 1.40 retrieving revision 1.41 diff -C2 -d -r1.40 -r1.41 *** rss.php 24 Mar 2006 01:29:23 -0000 1.40 --- rss.php 5 Apr 2006 04:48:02 -0000 1.41 *************** *** 13,18 **** * feeds can be specified for a range of dates * - * Language encoding added by dyfrin 2006/03/08 19:09:28 *********************************************************************************/ define('BASE', '../'); require(BASE.'functions/init.inc.php'); --- 13,26 ---- * feeds can be specified for a range of dates * *********************************************************************************/ + + /* Modified from 2.21 by dyfrin 2006/03/08 19:09:28 + Changes: + -RSS changed to 2.0, encoding removed, languages converted to ISO standard for feeds + -RSS title changed to be set by config.inc.php. Make sure that is added to it. + Lines modified: 135-165, 208-223 + Additional mods by J. Hu + */ + define('BASE', '../'); require(BASE.'functions/init.inc.php'); *************** *** 112,117 **** // stuff, if so be nice and send back a 304 and exit. ! if ( ($_SERVER['HTTP_IF_MODIFIED_SINCE'] == $filemodtime) || ($_SERVER['HTTP_IF_NONE_MATCH'] == $filemodtime)) ! { header ("HTTP/1.1 304 Not Modified"); exit; --- 120,124 ---- // stuff, if so be nice and send back a 304 and exit. ! if ( ($_SERVER['HTTP_IF_MODIFIED_SINCE'] == $filemodtime) || ($_SERVER['HTTP_IF_NONE_MATCH'] == $filemodtime)){ header ("HTTP/1.1 304 Not Modified"); exit; *************** *** 124,139 **** /* End language modification */ - //If client needs new feed - make the header $rss = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"."\n"; ! $rss .= '<!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 0.91//EN" "http://my.netscape.com/publish/formats/rss-0.91.dtd">'."\n"; ! $rss .= '<rss version="0.91">'."\n"; ! $rss .= '<channel>'."\n"; $rss .= '<title>'.$cal_displayname; if ($theview !=""){$rss .= ' - '.$theview;} $rss .= "</title>\n"; ! $views = array('day','week','month','year'); ! if (in_array($rssview, $views)) $default_path .= "/$rssview.php"; ! $rss_link = $default_path."/"; if (isset($cpath) && $cpath !='') $rss_link.="?cpath=$cpath"; $rss .= "<link>$rss_link</link>\n"; --- 131,152 ---- /* End language modification */ $rss = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"."\n"; ! ! /* Use 1.0 and strip encoding, use rss_language */ ! $rss .= '<rdf:RDF ! xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" ! xmlns:ev="http://purl.org/rss/1.0/modules/event/" ! xmlns:dc="http://purl.org/dc/elements/1.1/" ! xmlns="http://purl.org/rss/1.0/">'."\n"; ! ! $rss .= '<channel rdf:about="'.$default_path.'/rss/rss.php/'; ! if (isset($cpath) && $cpath !='') $rss_link.="?cpath=$cpath"; ! $rss .='">'."\n"; ! $rss .= '<title>'.$cal_displayname; if ($theview !=""){$rss .= ' - '.$theview;} $rss .= "</title>\n"; ! $rss .= '<link>'.htmlspecialchars("$default_path").'</link>'."\n"; if (isset($cpath) && $cpath !='') $rss_link.="?cpath=$cpath"; $rss .= "<link>$rss_link</link>\n"; |
From: <ji...@us...> - 2006-04-05 04:48:07
|
Update of /cvsroot/phpicalendar/phpicalendar In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21734/phpicalendar Modified Files: README Log Message: update rss.php and README Index: README =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/README,v retrieving revision 1.100 retrieving revision 1.101 diff -C2 -d -r1.100 -r1.101 *** README 21 Mar 2006 09:52:29 -0000 1.100 --- README 5 Apr 2006 04:48:01 -0000 1.101 *************** *** 83,91 **** -------- cvs ! 2.22rc1 allow image tags in events use real calendar names instead of filenames Year printview Added sidebar to year view -bug fixes from 2.21 Suppress lots of warnings and notices --- 83,94 ---- -------- cvs ! 2.22rc3 ! change popup to not require reparsing cal files ! differentiate cookie names for different installs on the same host allow image tags in events use real calendar names instead of filenames Year printview Added sidebar to year view + Modified rss/index.php -bug fixes from 2.21 Suppress lots of warnings and notices *************** *** 95,98 **** --- 98,102 ---- Problem with webcals with encoded spaces in URL Fixes related to various recurring event combinations + Fix security hole for getting template file from cookies 2.21 -patched security hole |
From: <ji...@us...> - 2006-04-05 04:44:45
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18894/phpicalendar/functions Modified Files: date_functions.php event.js Log Message: changes to event popup so that reparsing not needed Index: date_functions.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/date_functions.php,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** date_functions.php 19 Mar 2006 08:17:18 -0000 1.34 --- date_functions.php 5 Apr 2006 04:43:59 -0000 1.35 *************** *** 159,163 **** function openevent($event_date, $time, $uid, $arr, $lines = 0, $length = 0, $link_class = '', $pre_text = '', $post_text = '') { ! global $cpath; $event_text = stripslashes(urldecode($arr["event_text"])); if (empty($start)) { --- 159,163 ---- function openevent($event_date, $time, $uid, $arr, $lines = 0, $length = 0, $link_class = '', $pre_text = '', $post_text = '') { ! global $cpath, $master_array; $event_text = stripslashes(urldecode($arr["event_text"])); if (empty($start)) { *************** *** 184,192 **** $escaped_time = addslashes($time); $escaped_uid = addslashes($uid); // fix for URL-length bug in IE: populate and submit a hidden form on click static $popup_data_index = 0; $return = " <script language=\"Javascript\" type=\"text/javascript\"><!-- ! var eventData = new EventData('$escaped_date', '$escaped_time', '$escaped_uid','$cpath'); document.popup_data[$popup_data_index] = eventData; // --></script>"; --- 184,193 ---- $escaped_time = addslashes($time); $escaped_uid = addslashes($uid); + $event_data = addslashes(serialize ($master_array[$event_date][$time][$uid])); // fix for URL-length bug in IE: populate and submit a hidden form on click static $popup_data_index = 0; $return = " <script language=\"Javascript\" type=\"text/javascript\"><!-- ! var eventData = new EventData('$escaped_date', '$escaped_time', '$escaped_uid','$cpath','$event_data'); document.popup_data[$popup_data_index] = eventData; // --></script>"; Index: event.js =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/event.js,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** event.js 7 Sep 2005 06:08:02 -0000 1.15 --- event.js 5 Apr 2006 04:43:59 -0000 1.16 *************** *** 9,12 **** --- 9,13 ---- form.elements.uid.value = data.uid; form.elements.cpath.value = data.cpath; + form.elements.event_data.value = data.event_data; // open a new window *************** *** 16,24 **** } ! function EventData(date, time, uid, cpath) { this.date = date; this.time = time; this.uid = uid; this.cpath = cpath; } --- 17,26 ---- } ! function EventData(date, time, uid, cpath, event_data) { this.date = date; this.time = time; this.uid = uid; this.cpath = cpath; + this.event_data = event_data; } |
From: <ji...@us...> - 2006-04-05 04:44:21
|
Update of /cvsroot/phpicalendar/phpicalendar/languages In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18894/phpicalendar/languages Modified Files: french.inc.php Log Message: changes to event popup so that reparsing not needed Index: french.inc.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/languages/french.inc.php,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -d -r1.30 -r1.31 *** french.inc.php 21 Mar 2006 09:52:29 -0000 1.30 --- french.inc.php 5 Apr 2006 04:43:59 -0000 1.31 *************** *** 45,49 **** $lang['l_search'] = 'Rechercher'; // the verb $lang['l_results'] = 'Résultats de la recherche'; ! $lang['l_pick_multiple'] = 'Pick multiple'; $lang['l_query'] = 'Requète'; // will be followed by the search query $lang['l_no_results'] = 'Aucun événement trouvé'; --- 45,49 ---- $lang['l_search'] = 'Rechercher'; // the verb $lang['l_results'] = 'Résultats de la recherche'; ! $lang['l_pick_multiple'] = 'Choix multiple'; $lang['l_query'] = 'Requète'; // will be followed by the search query $lang['l_no_results'] = 'Aucun événement trouvé'; |
From: <ji...@us...> - 2006-04-05 04:44:20
|
Update of /cvsroot/phpicalendar/phpicalendar/includes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18894/phpicalendar/includes Modified Files: event.php Log Message: changes to event popup so that reparsing not needed Index: event.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/includes/event.php,v retrieving revision 1.37 retrieving revision 1.38 diff -C2 -d -r1.37 -r1.38 *** event.php 16 Mar 2006 02:17:57 -0000 1.37 --- event.php 5 Apr 2006 04:43:59 -0000 1.38 *************** *** 3,7 **** $getdate = $_POST['date']; include_once(BASE.'functions/init.inc.php'); ! include_once(BASE.'functions/ical_parser.php'); require_once(BASE.'functions/template.php'); --- 3,7 ---- $getdate = $_POST['date']; include_once(BASE.'functions/init.inc.php'); ! #include_once(BASE.'functions/ical_parser.php'); require_once(BASE.'functions/template.php'); *************** *** 14,18 **** ! $event = $master_array[$_POST['date']][$_POST['time']][decode_popup($_POST['uid'])]; $organizer = unserialize($event['organizer']); $attendee = unserialize($event['attendee']); --- 14,19 ---- ! #$event = $master_array[$_POST['date']][$_POST['time']][decode_popup($_POST['uid'])]; ! $event = unserialize(stripslashes($_POST['event_data'])); $organizer = unserialize($event['organizer']); $attendee = unserialize($event['attendee']); |
From: <ji...@us...> - 2006-03-25 20:24:52
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/grey In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24149/templates/grey Log Message: Directory /cvsroot/phpicalendar/phpicalendar/templates/grey added to the repository |
From: <ji...@us...> - 2006-03-25 20:24:22
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/green In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23967/templates/green Log Message: Directory /cvsroot/phpicalendar/phpicalendar/templates/green added to the repository |
From: <ji...@us...> - 2006-03-25 20:23:03
|
Update of /cvsroot/phpicalendar/phpicalendar In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22921/phpicalendar Modified Files: preferences.php Log Message: Modifications to make preferences.php use new template right away upon reload Index: preferences.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/preferences.php,v retrieving revision 1.56 retrieving revision 1.57 diff -C2 -d -r1.56 -r1.57 *** preferences.php 27 Nov 2005 07:56:31 -0000 1.56 --- preferences.php 25 Mar 2006 20:22:47 -0000 1.57 *************** *** 34,37 **** --- 34,41 ---- $cookie_view = $_POST['cookie_view']; $cookie_style = $_POST['cookie_style']; + if (isset($_POST['cookie_style']) && is_dir(BASE.'templates/'.$_POST['cookie_style'].'/')){ + $template = $_POST['cookie_style']; + } + $cookie_startday = $_POST['cookie_startday']; $cookie_time = $_POST['cookie_time']; *************** *** 130,134 **** while ($file = readdir($dir_handle)) { if (($file != ".") && ($file != "..") && ($file != "CVS")) { ! if (!is_file($file)) { $file_disp = ucfirst($file); $style_select .= ($file == "$cookie_style") ? "<option value=\"$file\" selected=\"selected\">$file_disp</option>\n" : "<option value=\"$file\">$file_disp</option>\n"; --- 134,138 ---- while ($file = readdir($dir_handle)) { if (($file != ".") && ($file != "..") && ($file != "CVS")) { ! if (is_dir(BASE.'templates/'.$file)) { $file_disp = ucfirst($file); $style_select .= ($file == "$cookie_style") ? "<option value=\"$file\" selected=\"selected\">$file_disp</option>\n" : "<option value=\"$file\">$file_disp</option>\n"; |
From: <jo...@us...> - 2006-03-25 07:11:12
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26222 Modified Files: init.inc.php Log Message: Corrected local_cals calendar name. Index: init.inc.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/init.inc.php,v retrieving revision 1.93 retrieving revision 1.94 diff -C2 -d -r1.93 -r1.94 *** init.inc.php 24 Mar 2006 01:29:23 -0000 1.93 --- init.inc.php 25 Mar 2006 07:11:07 -0000 1.94 *************** *** 152,156 **** exit(error($lang['l_error_restrictedcal'], $cal_filename)); } ! $local_cals[] = urldecode(str_replace(".ics", '', basename($cal_filename))); } } --- 152,156 ---- exit(error($lang['l_error_restrictedcal'], $cal_filename)); } ! $local_cals[] = getCalendarName(urldecode($cal_filename)); } } |
From: <jo...@us...> - 2006-03-25 06:48:58
|
Update of /cvsroot/phpicalendar/phpicalendar In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14519 Modified Files: year.php Log Message: Added login tag replacement values if login is allowed. Index: year.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/year.php,v retrieving revision 1.41 retrieving revision 1.42 diff -C2 -d -r1.41 -r1.42 *** year.php 21 Mar 2006 09:52:29 -0000 1.41 --- year.php 25 Mar 2006 06:48:54 -0000 1.42 *************** *** 112,115 **** --- 112,126 ---- )); + + if ($allow_login == 'yes') { + $page->replace_tags(array( + 'l_invalid_login' => $lang['l_invalid_login'], + 'l_password' => $lang['l_password'], + 'l_username' => $lang['l_username'], + 'l_login' => $lang['l_login'], + 'l_logout' => $lang['l_logout'] + )); + } + $page->tomorrows_events($page); $page->get_vtodo($page); |
From: <ji...@us...> - 2006-03-24 01:47:19
|
Update of /cvsroot/phpicalendar/phpicalendar/rss In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8950/rss Modified Files: index.php Log Message: improved rss/index.php Index: index.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/rss/index.php,v retrieving revision 1.40 retrieving revision 1.41 diff -C2 -d -r1.40 -r1.41 *** index.php 8 Feb 2006 09:07:59 -0000 1.40 --- index.php 24 Mar 2006 01:46:54 -0000 1.41 *************** *** 21,24 **** --- 21,28 ---- $filelist = availableCalendars($username, $password, $ALL_CALENDARS_COMBINED); + + if (isset($cpath) && $cpath !=''){ + $cpath_tmp = '&cpath='.$cpath; + } foreach ($filelist as $file) { // $cal_filename is the filename of the calendar without .ics *************** *** 31,41 **** $cal_tmp = getCalendarName($file); } ! $cal_displayname_tmp = str_replace("32", " ", $cal_filename_tmp); $cal_tmp = str_replace(" ", "+", $cal_tmp); ! $rss_list .= '<font class="V12" color="blue"><b>'.$cal_displayname_tmp.' '. $calendar_lang.'</b></font><br />'; ! $rss_list .= '<a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.'&cpath='.$cpath.'&rssview=day>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.'&cpath='.$cpath.'&rssview=day</a><br />'; ! $rss_list .= '<a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.'&cpath='.$cpath.'&rssview=week>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.'&cpath='.$cpath.'&rssview=week</a><br />'; ! $rss_list .= '<a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.'&cpath='.$cpath.'&rssview=month>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.'&cpath='.$cpath.'&rssview=month</a><br />'; ! $rss_list .= '<a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.'&cpath='.$cpath.'&rssview=year>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.'&cpath='.$cpath.'&rssview=year</a><br />'; $footer_check = $default_path.'/rss/rss.php?cal='.$default_cal.'&rssview='.$default_view; } --- 35,53 ---- $cal_tmp = getCalendarName($file); } ! $cal_displayname_tmp = $cal_displaynames[array_search($file,$cal_filelist)]; $cal_tmp = str_replace(" ", "+", $cal_tmp); ! $rss_list .= '<br /><font class="V12"><b>'.$cal_displayname_tmp.' '. $lang['l_calendar'].'</b></font><br />'; ! $rss_list .= '<table><tr><td><font class="V12">'.$lang['l_day'].':</font></td><td> ! <a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=day>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=day</a></td></tr>'; ! ! $rss_list .= '<td><font class="V12">'.$lang['l_week'].':</font></td><td> ! <a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=week>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=week</a></td></tr>'; ! ! $rss_list .= '<td><font class="V12">'.$lang['l_month'].':</font></td><td> ! <a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=month>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=month</a></td></tr>'; ! ! $rss_list .= '<td><font class="V12">'.$lang['l_year'].':</font></td><td> ! <a href='. $default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=year>'.$default_path.'/rss/rss.php?cal='.$cal_tmp.$cpath_tmp.'&rssview=year</a></td></tr>'; ! $rss_list .='</table>'; $footer_check = $default_path.'/rss/rss.php?cal='.$default_cal.'&rssview='.$default_view; } |
From: <ji...@us...> - 2006-03-24 01:29:28
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv798/functions Modified Files: init.inc.php Log Message: security patch for template file from cookie. Other minor bug fixes Index: init.inc.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/init.inc.php,v retrieving revision 1.92 retrieving revision 1.93 diff -C2 -d -r1.92 -r1.93 *** init.inc.php 21 Mar 2006 09:52:29 -0000 1.92 --- init.inc.php 24 Mar 2006 01:29:23 -0000 1.93 *************** *** 22,26 **** if (isset($phpicalendar['cookie_cpath'])) $default_cpath_check= $phpicalendar['cookie_cpath']; if (isset($phpicalendar['cookie_view'])) $default_view = $phpicalendar['cookie_view']; ! if (isset($phpicalendar['cookie_style'])) $template = $phpicalendar['cookie_style']; if (isset($phpicalendar['cookie_startday'])) $week_start_day = $phpicalendar['cookie_startday']; if (isset($phpicalendar['cookie_time'])) $day_start = $phpicalendar['cookie_time']; --- 22,28 ---- if (isset($phpicalendar['cookie_cpath'])) $default_cpath_check= $phpicalendar['cookie_cpath']; if (isset($phpicalendar['cookie_view'])) $default_view = $phpicalendar['cookie_view']; ! if (isset($phpicalendar['cookie_style']) && is_dir(BASE.'templates/'.$phpicalendar['cookie_style'].'/')){ ! $template = $phpicalendar['cookie_style']; ! } if (isset($phpicalendar['cookie_startday'])) $week_start_day = $phpicalendar['cookie_startday']; if (isset($phpicalendar['cookie_time'])) $day_start = $phpicalendar['cookie_time']; |
From: <ji...@us...> - 2006-03-24 01:29:28
|
Update of /cvsroot/phpicalendar/phpicalendar/rss In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv798/rss Modified Files: rss.php Log Message: security patch for template file from cookie. Other minor bug fixes Index: rss.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/rss/rss.php,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -d -r1.39 -r1.40 *** rss.php 21 Mar 2006 09:52:30 -0000 1.39 --- rss.php 24 Mar 2006 01:29:23 -0000 1.40 *************** *** 13,19 **** * feeds can be specified for a range of dates * *********************************************************************************/ define('BASE', '../'); ! include(BASE.'functions/init.inc.php'); if ($enable_rss != 'yes') { die ("RSS feeds are not enabled on this site."); --- 13,21 ---- * feeds can be specified for a range of dates * + * Language encoding added by dyfrin 2006/03/08 19:09:28 *********************************************************************************/ define('BASE', '../'); ! require(BASE.'functions/init.inc.php'); ! if ($enable_rss != 'yes') { die ("RSS feeds are not enabled on this site."); *************** *** 116,119 **** --- 118,127 ---- } + /* Change languages to ISO 639-1 to validate RSS without changing long version in config.inc.php */ + $user_language = array ("english", "polish", "german", "french", "dutch", "italian", "japanese", "norwegian", "spanish", "swedish", "portuguese", "catalan", "traditional_chinese", "esperanto", "korean"); + $iso_language = array ("en", "pl", "de", "fr", "nl", "da", "it", "ja", "no", "es", "sv", "pt", "ca", "zh-tw", "eo", "ko"); + $rss_language = str_replace($user_language, $iso_language, $language); + /* End language modification */ + //If client needs new feed - make the header $rss = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"."\n"; *************** *** 166,170 **** $event_text = str_replace('&','&',$event_text); $event_text = str_replace('&amp;','&',$event_text); ! $event_text = urlencode($event_text); #uncomment for shorter event text with ... # $event_text = word_wrap($event_text, 21, $tomorrows_events_lines); --- 174,178 ---- $event_text = str_replace('&','&',$event_text); $event_text = str_replace('&amp;','&',$event_text); ! # $event_text = urlencode($event_text); #uncomment for shorter event text with ... # $event_text = word_wrap($event_text, 21, $tomorrows_events_lines); *************** *** 195,201 **** $rss .= '<link>'.$rss_link.'</link>'."\n"; $rss .= '<description>'.$rss_description.'</description>'."\n"; $location = str_replace('&','&',$val['location']); $location = str_replace('&amp;','&',$location); ! $rss .= '<location>'.$location.'</location>'; $rss .= '</item>'."\n"; $events_count++; --- 203,211 ---- $rss .= '<link>'.$rss_link.'</link>'."\n"; $rss .= '<description>'.$rss_description.'</description>'."\n"; + if (isset($val['location']) && $val['location'] !=''){ $location = str_replace('&','&',$val['location']); $location = str_replace('&amp;','&',$location); ! $rss .= '<location>'.$location."/location>\n"; ! } $rss .= '</item>'."\n"; $events_count++; |
From: <ji...@us...> - 2006-03-24 01:29:28
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/default In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv798/templates/default Modified Files: header.tpl Log Message: security patch for template file from cookie. Other minor bug fixes Index: header.tpl =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/templates/default/header.tpl,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** header.tpl 7 Sep 2005 06:08:02 -0000 1.12 --- header.tpl 24 Mar 2006 01:29:24 -0000 1.13 *************** *** 7,11 **** <link rel="stylesheet" type="text/css" href="{DEFAULT_PATH}templates/{TEMPLATE}/default.css" /> <!-- switch rss_available on --> ! <link rel="alternate" type="application/rss+xml" title="RSS" href="{DEFAULT_VIEW}/rss/rss.php?cal={CAL}&rssview={CURRENT_VIEW}"> <!-- switch rss_available off --> {EVENT_JS} --- 7,11 ---- <link rel="stylesheet" type="text/css" href="{DEFAULT_PATH}templates/{TEMPLATE}/default.css" /> <!-- switch rss_available on --> ! <link rel="alternate" type="application/rss+xml" title="RSS" href="{DEFAULT_PATH}/rss/rss.php?cal={CAL}&rssview={CURRENT_VIEW}"> <!-- switch rss_available off --> {EVENT_JS} |
From: <ji...@us...> - 2006-03-21 16:26:40
|
Update of /cvsroot/phpicalendar/phpicalendar/templates/default In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20829/templates/default Added Files: sidebar_year.tpl Log Message: add sidebar_year.tpl --- NEW FILE: sidebar_year.tpl --- <!-- switch show_user_login on --> <form style="margin-bottom:0;" action="{CURRENT_VIEW}.php?{LOGIN_QUERYS}" method="post"> <input type="hidden" name="action" value="login" /> <table width="170" border="0" cellpadding="0" cellspacing="0" class="calborder"> <tr> <td colspan="2" align="center" class="sideback"><div style="height: 17px; margin-top: 3px;" class="G10BOLD">{L_LOGIN}</div></td> </tr> <!-- switch invalid_login on --> <tr> <td colspan="2" bgcolor="#FFFFFF" align="left"> <div style="padding-left: 5px; padding-top: 5px; padding-right: 5px;"> <font color="red">{L_INVALID_LOGIN}</font> </div> </td> </tr> <!-- switch invalid_login off --> <tr> <td bgcolor="#FFFFFF" align="left" valign="middle"><div style="padding-left: 5px; padding-top: 5px;">{L_USERNAME}:</div></td> <td bgcolor="#FFFFFF" align="right" valign="middle"><div style="padding-right: 5px; padding-top: 5px;"><input type="text" name="username" size="10" /></div></td> </tr> <tr> <td bgcolor="#FFFFFF" align="left" valign="middle"><div style="padding-left: 5px; padding-bottom: 5px;">{L_PASSWORD}:</div></td> <td bgcolor="#FFFFFF" align="right" valign="middle"><div style="padding-right: 5px; padding-bottom: 5px;"><input type="password" name="password" size="10" /></div></td> </tr> <tr> <td bgcolor="#FFFFFF" align="center" valign="middle" colspan="2"><div style=padding-left: 5px; padding-bottom: 5px;"><input type="submit" value="{L_LOGIN}" /></div></td> </tr> </table> </form> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td class="tbll"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> <td class="tblbot"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> <td class="tblr"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> </tr> </table> <img src="images/spacer.gif" width="1" height="10" alt=" " /><br /> <!-- switch show_user_login off --> <table width="170" border="0" cellpadding="0" cellspacing="0" class="calborder"> <tr> <td align="left" valign="top" width="24" class="sideback"><a class="psf" href="day.php?cal={CAL}&getdate={PREV_DAY}"><img src="templates/{TEMPLATE}/images/left_arrows.gif" alt="{L_PREV}" width="16" height="20" border="0" align="left" /></a></td> <td align="center" width="112" class="sideback"><font class="G10BOLD">{SIDEBAR_DATE}</font></td> <td align="right" valign="top" width="24" class="sideback"><a class="psf" href="day.php?cal={CAL}&getdate={NEXT_DAY}"><img src="templates/{TEMPLATE}/images/right_arrows.gif" alt="{L_NEXT}" width="16" height="20" border="0" align="right" /></a></td> </tr> <tr> <td colspan="3" bgcolor="#FFFFFF" align="left"> <div style="padding: 5px;"> <b>{L_LEGEND}:</b><br /> {LEGEND} <a class="psf" href="print.php?cal={CAL}&getdate={GETDATE}&printview={CURRENT_VIEW}">{L_GOPRINT}</a><br /> <!-- switch allow_preferences on --> <a class="psf" href="preferences.php?cal={CAL}&getdate={GETDATE}">{L_PREFERENCES}</a><br /> <!-- switch allow_preferences off --> <!-- switch display_download on --> <a class="psf" href="{SUBSCRIBE_PATH}">{L_SUBSCRIBE}</a> | <a class="psf" href="{DOWNLOAD_FILENAME}">{L_DOWNLOAD}</a><br /> <!-- switch display_download off --> <!-- switch is_logged_in on --> <a class="psf" href="{CURRENT_VIEW}.php?{LOGOUT_QUERYS}">{L_LOGOUT} {USERNAME}</a> <!-- switch is_logged_in off --> </div> </td> </tr> </table> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td class="tbll"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> <td class="tblbot"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> <td class="tblr"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> </tr> </table> <img src="images/spacer.gif" width="1" height="10" alt=" " /><br /> <table width="170" border="0" cellpadding="0" cellspacing="0" class="calborder"> <tr> <td align="center" class="sideback"><div style="height: 17px; margin-top: 3px;" class="G10BOLD">{L_JUMP}</div></td> </tr> <tr> <td bgcolor="#FFFFFF" align="left"> <div style="padding: 5px;"> <form style="margin-bottom:0;" action="{CURRENT_VIEW}.php" method="get"> <select name="action" class="query_style" onchange="window.location=(this.options[this.selectedIndex].value);">{LIST_JUMPS}</select><br /> <select name="action" class="query_style" onchange="window.location=(this.options[this.selectedIndex].value);">{LIST_ICALS}</select><br /> <select name="action" class="query_style" onchange="window.location=(this.options[this.selectedIndex].value);">{LIST_YEARS}</select><br /> <select name="action" class="query_style" onchange="window.location=(this.options[this.selectedIndex].value);">{LIST_MONTHS}</select><br /> <select name="action" class="query_style" onchange="window.location=(this.options[this.selectedIndex].value);">{LIST_WEEKS}</select><br /> <input type="hidden" name="cpath" value="{CPATH}"/> </form> <!-- switch show_search on --> {SEARCH_BOX} <!-- switch show_search off --> <!-- switch show_goto on --> <form style="margin-bottom:0;" action="day.php" method="get"> <input type="hidden" name="cal" value="{URL_CAL}"> <input type="text" style="width:160px; font-size:10px" name="jumpto_day"> <input type="submit" value="Go"/> </form> <!-- switch show_goto off --> <hr /> <div class = 'G10BOLD'>{L_PICK_MULTIPLE}:</div> <form style="margin-bottom:0;" action="{CURRENT_VIEW}.php" method="get"> <input type="hidden" name="cpath" value="{CPATH}"/> <input type="hidden" name="getdate" value="{GETDATE}"/> <select name="cal[]" class="query_style" size="5" multiple="multiple">{LIST_ICALS_PICK}</select><br /> <input type="submit" value="Go"/> </form> </div> </td> </tr> </table> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td class="tbll"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> <td class="tblbot"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> <td class="tblr"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> </tr> </table> <img src="images/spacer.gif" width="1" height="10" alt=" " /><br /> <!-- switch tomorrows_events on --> <table width="170" border="0" cellpadding="0" cellspacing="0" class="calborder"> <tr> <td align="center" class="sideback"><div style="height: 17px; margin-top: 3px;" class="G10BOLD">{L_TOMORROWS}</div></td> </tr> <tr> <td bgcolor="#FFFFFF" align="left"> <div style="padding: 5px;"> <!-- switch t_allday on --> {T_ALLDAY}<br /> <!-- switch t_allday off --> <!-- switch t_event on --> • {T_EVENT}<br /> <!-- switch t_event off --> </div> </td> </tr> </table> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td class="tbll"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> <td class="tblbot"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> <td class="tblr"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> </tr> </table> <img src="images/spacer.gif" width="1" height="10" alt=" " /><br /> <!-- switch tomorrows_events off --> <!-- switch vtodo on --> <table width="170" border="0" cellpadding="0" cellspacing="0" class="calborder"> <tr> <td align="center" width="98%" class="sideback"><div style="height: 17px; margin-top: 3px;" class="G10BOLD">{L_TODO}</div></td> </tr> <tr> <td bgcolor="#FFFFFF" align="left"> <div style="padding: 5px;"> <table cellpadding="0" cellspacing="0" border="0"> <!-- switch show_completed on --> <tr> <td><img src="images/completed.gif" alt=" " width="13" height="11" border="0" align="middle" /></td> <td><img src="images/spacer.gif" width="2" height="1" border="0" alt="" /></td> <td><s><a class="psf" href="javascript:openTodoInfo('{VTODO_ARRAY}')"><font class="G10B"> {VTODO_TEXT}</font></a></s></td> </tr> <!-- switch show_completed off --> <!-- switch show_important on --> <tr> <td><img src="images/important.gif" alt=" " width="13" height="11" border="0" align="middle" /></td> <td><img src="images/spacer.gif" width="2" height="1" border="0" alt="" /></td> <td><a class="psf" href="javascript:openTodoInfo('{VTODO_ARRAY}')"><font class="G10B"> {VTODO_TEXT}</font></a></td> </tr> <!-- switch show_important off --> <!-- switch show_normal on --> <tr> <td><img src="images/not_completed.gif" alt=" " width="13" height="11" border="0" align="middle" /></td> <td><img src="images/spacer.gif" width="2" height="1" border="0" alt="" /></td> <td><a class="psf" href="javascript:openTodoInfo('{VTODO_ARRAY}')"><font class="G10B"> {VTODO_TEXT}</font></a></td> </tr> <!-- switch show_normal off --> </table> </div> </td> </tr> </table> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td class="tbll"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> <td class="tblbot"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> <td class="tblr"><img src="images/spacer.gif" alt="" width="8" height="4" /></td> </tr> </table> <img src="images/spacer.gif" width="1" height="10" alt=" " /><br /> <!-- switch vtodo off --> |
From: <ji...@us...> - 2006-03-21 10:28:32
|
Update of /cvsroot/phpicalendar/phpicalendar In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26562/phpicalendar Modified Files: README print.php year.php Log Message: add year printview, fix misc bugs Index: README =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/README,v retrieving revision 1.99 retrieving revision 1.100 diff -C2 -d -r1.99 -r1.100 *** README 18 Mar 2006 08:02:30 -0000 1.99 --- README 21 Mar 2006 09:52:29 -0000 1.100 *************** *** 83,93 **** -------- cvs allow image tags in events use real calendar names instead of filenames ! -bug fixes Suppress lots of warnings and notices all combined selection of webcals passing of webcals in calendar links More items controlled by language files 2.21 -patched security hole --- 83,98 ---- -------- cvs + 2.22rc1 allow image tags in events use real calendar names instead of filenames ! Year printview ! Added sidebar to year view ! -bug fixes from 2.21 Suppress lots of warnings and notices all combined selection of webcals passing of webcals in calendar links More items controlled by language files + Problem with webcals with encoded spaces in URL + Fixes related to various recurring event combinations 2.21 -patched security hole Index: print.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/print.php,v retrieving revision 1.37 retrieving revision 1.38 diff -C2 -d -r1.37 -r1.38 *** print.php 1 Dec 2005 06:25:09 -0000 1.37 --- print.php 21 Mar 2006 09:52:29 -0000 1.38 *************** *** 2,10 **** define('BASE', './'); ! require_once(BASE.'functions/ical_parser.php'); ! require_once(BASE.'functions/list_functions.php'); ! require_once(BASE.'functions/template.php'); ! header("Content-Type: text/html; charset=$charset"); ! $start_week_time = strtotime(dateOfWeek($getdate, $week_start_day)); $end_week_time = $start_week_time + (6 * 25 * 60 * 60); --- 2,8 ---- define('BASE', './'); ! require_once(BASE.'functions/date_functions.php'); ! require_once(BASE.'functions/init.inc.php'); ! $current_view ='print'; $start_week_time = strtotime(dateOfWeek($getdate, $week_start_day)); $end_week_time = $start_week_time + (6 * 25 * 60 * 60); *************** *** 13,17 **** $events_week = 0; $unix_time = strtotime($getdate); ! if (!$printview) $printview = $_GET['printview']; if ($printview == 'day') { --- 11,16 ---- $events_week = 0; $unix_time = strtotime($getdate); ! $printview = 'month'; ! if (isset($_GET['printview'])) $printview = $_GET['printview']; if ($printview == 'day') { *************** *** 35,39 **** --- 34,49 ---- $week_start = ''; $week_end = ''; + } elseif ($printview == 'year') { + $display_date = localizeDate ($dateFormat_year, strtotime($getdate)); + $next = date("Ymd", strtotime("+1 year", $unix_time)); + $prev = date("Ymd", strtotime("-1 year", $unix_time)); + $week_start = ''; + $week_end = ''; } + require_once(BASE.'functions/ical_parser.php'); + require_once(BASE.'functions/list_functions.php'); + require_once(BASE.'functions/template.php'); + header("Content-Type: text/html; charset=$charset"); + $page = new Page(BASE.'templates/'.$template.'/print.tpl'); Index: year.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/year.php,v retrieving revision 1.40 retrieving revision 1.41 diff -C2 -d -r1.40 -r1.41 *** year.php 16 Mar 2006 06:15:11 -0000 1.40 --- year.php 21 Mar 2006 09:52:29 -0000 1.41 *************** *** 4,7 **** --- 4,8 ---- $current_view = 'year'; require_once(BASE.'functions/ical_parser.php'); + require_once(BASE.'functions/list_functions.php'); require_once(BASE.'functions/template.php'); header("Content-Type: text/html; charset=$charset"); *************** *** 16,28 **** $prev_year = date ("Ymd", $prev_year); $page = new Page(BASE.'templates/'.$template.'/year.tpl'); $page->replace_files(array( 'header' => BASE.'templates/'.$template.'/header.tpl', ! 'footer' => BASE.'templates/'.$template.'/footer.tpl' )); $page->replace_tags(array( 'event_js' => '', 'template' => $template, 'charset' => $charset, --- 17,59 ---- $prev_year = date ("Ymd", $prev_year); + $sidebar_date = localizeDate($dateFormat_day, strtotime($getdate)); + + // For the side months + ereg ("([0-9]{4})([0-9]{2})([0-9]{2})", $getdate, $day_array2); + $this_day = $day_array2[3]; + $this_month = $day_array2[2]; + $this_year = $day_array2[1]; + + // select for calendars + $list_icals = display_ical_list(availableCalendars($username, $password, $ALL_CALENDARS_COMBINED)); + $list_years = list_years(); + $list_months = list_months(); + $list_weeks = list_weeks(); + $list_jumps = list_jumps(); + $list_calcolors = '<img src="templates/'.$template.'/images/allday_dot.gif" alt=" " width="11" height="10" border="0" />'.$lang['l_all_day'].'<br> + <img src="templates/'.$template.'/images/event_dot.gif" alt=" " width="11" height="10" border="0" />'.$lang['l_event']."<br>"; + ; + $list_icals_pick = display_ical_list(availableCalendars($username, $password, $ALL_CALENDARS_COMBINED), TRUE); + + // login/logout + $is_logged_in = ($username != '' && !$invalid_login) ? true : false; + $show_user_login = (!$is_logged_in && $allow_login == 'yes'); + $login_querys = login_querys(); + $logout_querys = logout_querys(); + + + $page = new Page(BASE.'templates/'.$template.'/year.tpl'); $page->replace_files(array( 'header' => BASE.'templates/'.$template.'/header.tpl', ! 'footer' => BASE.'templates/'.$template.'/footer.tpl', ! 'sidebar' => BASE.'templates/'.$template.'/sidebar_year.tpl', ! 'search_box' => BASE.'templates/'.$template.'/search_box.tpl' )); $page->replace_tags(array( 'event_js' => '', + 'current_view' => $current_view, 'template' => $template, 'charset' => $charset, *************** *** 34,37 **** --- 65,69 ---- 'calendar_name' => $cal_displayname, 'display_date' => $this_year, + 'sidebar_date' => $sidebar_date, 'rss_powered' => $rss_powered, 'rss_available' => '', *************** *** 40,49 **** --- 72,110 ---- 'event_js' => '', 'this_year' => $this_year, + 'next_day' => $next_day, + 'next_week' => $next_week, + 'prev_day' => $prev_day, + 'prev_week' => $prev_week, 'next_year' => $next_year, 'prev_year' => $prev_year, + 'show_goto' => '', + 'show_user_login' => $show_user_login, + 'invalid_login' => $invalid_login, + 'login_querys' => $login_querys, + 'is_logged_in' => $is_logged_in, + 'username' => $username, + 'logout_querys' => $logout_querys, + 'list_icals' => $list_icals, + 'list_icals_pick' => $list_icals_pick, + 'list_years' => $list_years, + 'list_months' => $list_months, + 'list_weeks' => $list_weeks, + 'list_jumps' => $list_jumps, + 'legend' => $list_calcolors, + 'style_select' => $style_select, + 'l_goprint' => $lang['l_goprint'], + 'l_preferences' => $lang['l_preferences'], + 'l_calendar' => $lang['l_calendar'], + 'l_legend' => $lang['l_legend'], + 'l_tomorrows' => $lang['l_tomorrows'], + 'l_jump' => $lang['l_jump'], + 'l_todo' => $lang['l_todo'], 'l_day' => $lang['l_day'], 'l_week' => $lang['l_week'], 'l_month' => $lang['l_month'], 'l_year' => $lang['l_year'], + 'l_search' => $lang['l_search'], + 'l_subscribe' => $lang['l_subscribe'], + 'l_download' => $lang['l_download'], 'l_pick_multiple' => $lang['l_pick_multiple'], 'l_powered_by' => $lang['l_powered_by'], *************** *** 51,55 **** )); ! $page->output(); --- 112,118 ---- )); ! $page->tomorrows_events($page); ! $page->get_vtodo($page); ! $page->draw_subscribe($page); $page->output(); |
From: <ji...@us...> - 2006-03-21 09:54:14
|
Update of /cvsroot/phpicalendar/phpicalendar/functions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26562/phpicalendar/functions Modified Files: ical_parser.php init.inc.php template.php Log Message: add year printview, fix misc bugs Index: ical_parser.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/ical_parser.php,v retrieving revision 1.207 retrieving revision 1.208 diff -C2 -d -r1.207 -r1.208 *** ical_parser.php 20 Mar 2006 01:08:29 -0000 1.207 --- ical_parser.php 21 Mar 2006 09:52:29 -0000 1.208 *************** *** 424,428 **** $start_date_time = strtotime($start_date); $this_month_start_time = strtotime($this_year.$this_month.'01'); ! if ($current_view == 'year' || ($save_parsed_cals == 'yes' && !$is_webcal)) { $start_range_time = strtotime($this_year.'-01-01 -2 weeks'); $end_range_time = strtotime($this_year.'-12-31 +2 weeks'); --- 424,428 ---- $start_date_time = strtotime($start_date); $this_month_start_time = strtotime($this_year.$this_month.'01'); ! if ($current_view == 'year' || ($save_parsed_cals == 'yes' && !$is_webcal)|| $current_view == 'print' && $printview == 'year') { $start_range_time = strtotime($this_year.'-01-01 -2 weeks'); $end_range_time = strtotime($this_year.'-12-31 +2 weeks'); Index: init.inc.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/init.inc.php,v retrieving revision 1.91 retrieving revision 1.92 diff -C2 -d -r1.91 -r1.92 *** init.inc.php 20 Mar 2006 01:08:29 -0000 1.91 --- init.inc.php 21 Mar 2006 09:52:29 -0000 1.92 *************** *** 135,138 **** --- 135,140 ---- // If the calendar identifier begins with a web protocol, this is a web // calendar. + $cal_filename = urldecode($cal_filename); #need to decode for substr statements to identify webcals + $cal_filename = str_replace(' ','%20', $cal_filename); #need to reencode blank spaces for matching with $list_webcals if (substr($cal_filename, 0, 7) == 'http://' || substr($cal_filename, 0, 8) == 'https://' || *************** *** 148,152 **** exit(error($lang['l_error_restrictedcal'], $cal_filename)); } ! $local_cals[] = str_replace(".ics", '', basename($cal_filename)); } } --- 150,154 ---- exit(error($lang['l_error_restrictedcal'], $cal_filename)); } ! $local_cals[] = urldecode(str_replace(".ics", '', basename($cal_filename))); } } Index: template.php =================================================================== RCS file: /cvsroot/phpicalendar/phpicalendar/functions/template.php,v retrieving revision 1.83 retrieving revision 1.84 diff -C2 -d -r1.83 -r1.84 *** template.php 16 Mar 2006 00:28:55 -0000 1.83 --- template.php 21 Mar 2006 09:52:29 -0000 1.84 *************** *** 62,69 **** $loop_day = trim($match3[1]); $parse_month = date ("Ym", strtotime($getdate)); foreach($master_array as $key => $val) { preg_match ('/([0-9]{6})([0-9]{2})/', $key, $regs); ! if ((($regs[1] == $parse_month) && ($printview == 'month')) || (($key == $getdate) && ($printview == 'day')) || ((($key >= $week_start) && ($key <= $week_end)) && ($printview == 'week'))) { $events_week++; $dayofmonth = strtotime ($key); --- 62,70 ---- $loop_day = trim($match3[1]); $parse_month = date ("Ym", strtotime($getdate)); + $parse_year = date ("Y", strtotime($getdate)); foreach($master_array as $key => $val) { preg_match ('/([0-9]{6})([0-9]{2})/', $key, $regs); ! if ((($regs[1] == $parse_month) && ($printview == 'month')) || (($key == $getdate) && ($printview == 'day')) || ((($key >= $week_start) && ($key <= $week_end)) && ($printview == 'week')) || ((substr($regs[1],0,4) == $parse_year) && ($printview == 'year'))) { $events_week++; $dayofmonth = strtotime ($key); |