You have two immediate options. Both require modifying a line or two of PHP.
The recommended change is patching phpiCalendar so that it ignores the 'publish_log.txt' file when finding calendars. Here is a patch which does this:
- Code: Select all
--- functions/calendar_functions.php 15 Apr 2010 18:39:26 -0000 1.40
+++ functions/calendar_functions.php 9 Jul 2010 15:24:12 -0000
@@ -79,6 +79,8 @@ function availableCalendars($username, $
while (false !== ($file = readdir($dir_handle))) {
// Make sure this is not a dot file.
if (preg_match("/^\./", $file)) continue;
+ // publish.php creates a file called 'publish_log.txt'
+ if ($file == 'publish_log.txt') continue;
array_push($files, "$search_path/$file");
}
} else {
The other option is to disable publish logging altogether. That might be acceptable in your case, if you don't need the log for debugging or keeping a record of changes. Here's a patch that disables the logging:
- Code: Select all
--- calendars/publish.php 1 Jan 2009 18:33:42 -0000 1.9
+++ calendars/publish.php 9 Jul 2010 15:27:40 -0000
@@ -95,7 +95,7 @@ if (isset($phpiCal_config->calendar_path
}
// toggle logging
-define( 'PHPICALENDAR_LOG_PUBLISHING', 1 );
+//define( 'PHPICALENDAR_LOG_PUBLISHING', 1 );
if(defined('PHPICALENDAR_LOG_PUBLISHING') && PHPICALENDAR_LOG_PUBLISHING == 1) {
if( ! $logfile = fopen('publish_log.txt','a+') ) {
header('HTTP/1.1 401 Unauthorized');
If you can try that first option [only] and let me know if it works for you, I'll be glad to apply that patch to version 2.4 for the next RC!