The latest code snapshot is always available through CVS on SourceForge. If you're not comfortable with CVS, then stick to public releases. In order to get the files from CVS, use the following command to login to CVS for the first time:How do I get more info on CVS?cvs -d:pserver:anonymous@cvs.webcalendar.sourceforge.net:/cvsroot/webcalendar login
(If you get a connection refused error, make sure you set your CVS_RSH environment variable to ssh.) Then, to get the files for the first time, use the following command:
cvs -z8 -d:pserver:anonymous@cvs.webcalendar.sourceforge.net:/cvsroot/webcalendar co webcalendar
This should create a new webcalendar directory in the current directory. After you've done this, you can get the latest code with:
cvs update
You can find these instructions online at:
You can start at the SourceForge CVS HOWTO:When I try to login, I get sent back to the login page with no error.http://sourceforge.net/docman/display_doc.php?docid=763&group_id=1
Make sure that you built PHP with --enable-track-vars during the configure step. Make sure your browser has cookies enabled. Either of these can cause this problem.I get all sorts of "Undefined variable" messages. How do I fix them?
Reconfigure PHP to not display warnings as errors. (This is done in the php.ini configuration file.)Does WebCalendar work under Windows?
Yes, it will work unders MS Windows.Does it work with PHP 4?If you don't have PHP setup yet on your Windows machine, you may want to take a look at FoxServ. This nifty tool installs a PHP server environment (PHP, MySQL, and Apache) on Windows for you.
Yep.Does it work with PHP 3?
Yep.How do I install Apache with PHP and MySQL?
There are many online guides to doing this. Start with the PHP.net pages first.Why do quotations not enter into the database properly?
The system is designed to work with PHP's magic quotes feature that automatically adds backslashes for you. (This is configurable in php.ini.)What are layers?
Using layers allows you to overlay another user's calendar onto your calendar. Each calendar of another user that you overlay onto your calendar is called a layer (for lack of a better word).Why do my reminders get sent later than I think they should be sent?
If you setup a reminder to be sent 15 minutes before an event (like a meeting), you must run the send_reminders.php script frequently enough so that it will run after the reminder should be sent and before the actual event. (Meaning it needs to be run more frequently than every 15 minutes. Maybe every 5 minutes would work well in this situation.)How do I setup a public calendar?
There are two answers... depending on whether your are using WebCalendar's web-based authentication (the default) or HTTP-based authentication (configured in your web server).I'd like to translate WebCalendar into another language. What do I do?For web-based auth: Simply go to the "System Settings" page (link is on the bottom of all pages if you login as a user that is an Administrator). From there, change "Public Access" to "Yes", and you're done. Logout by clicking on the "Login/Logout" link, and a "Public Access" link will appear on the login page.
For HTTP-based auth: This is more complicated and will depend on what web server you are using. Below are instructions for Apache. Use the following in your .htaccess file in your WebCalendar directory. alias to the WebCalendar installation for public access and one for restricted access (requires login). In Apache's conf directory, edit httpd.conf and add the following:
AuthUserFile "users.txt" AuthName "WebCalendar" AuthType "Basic" <Limit GET> Satisfy any </Limit> <Files login.php> <Limit GET> require valid-user Satisfy all </Limit> </Files>The file users.txt is managed by Apache's htpasswd program and is simply a listing of users and encrypted passwords. You should place this is in Apache's server root directory and NOT in the WebCalendar directory. To create users.txt, you would do something like this:htpasswd -c users.txt myfirstuser
Where "myfirstuser" is the first username you want to add. See the Apache installation instructions for more on using htpasswd.
Also, don't forget to go to the WebCalendar "System Settings" page and enable "Public Access".
It's a fairly simple process. If you've ever translated a C-based app that used GNU's gettext tool, then you'll have no problem. The I18N support was based on GNU's gettext. Here's what you need to do.I'd like to update a translation for WebCalendar. What do I do?
- look in the "translations" directory
- copy the English-US.txt file into what you'd like to call your language data file. (e.g. cp English-US.txt French.txt)
- Now translate all the text to the _right_ of the ":" into the new language. Do not alter the text to the left of the ":".
- When you're done making changes, move into the "tools" directory. Run the check_translation.pl script on your new data file to make sure you have all the needed translations. (e.g. perl check_translation.pl French)
- Add the new language to both the $languages array and the $browser_languages arrays defined in includes/config.php.
- Test it out...
- Email a copy of the new .txt data file to cknudsen@radix.net.
Just open up the translation file in the translations directory with your favorite text editor (like vi, vim, emacs, pico, Notepad, etc.). In particular look for places where missing translations are indicated. All missing translations should be marked with aI get an error about binhex() being an unsupported function. What does that mean?"<<< MISSING >>" note, and typically the English version of the translation will also be included on the following line.When you're done making changes, move into the tools directory. Run the check_translation.pl script on your new data file to make sure you have all the needed translations. (e.g. perl check_translation.pl French)
Don't forget to contribute the updated translation back to the project!
The binhex() function was not in the early PHP 3.0.X releases. You need to upgrade to a more recent PHP3 (or use PHP4).Why aren't you using PHP4 sessions or PHPLIB sessions?
It would really be overkill for what the application needs. It also simplifies installation by not requiring PHPLIB or PHP4. A future version might switch to PHP4 if PHP4 is detected.Why aren't you using ADODB for database access?
Again, this would be overkill for what we need. ADODB is almost as big as WebCalendar itself, so I'm partial to my leaner php-dbi.php solution.Is there an online demo?
Yes, there is. Use "demo" for login and "demo" for password at:Where do I report bugs?http://webcalendar.sourceforge.net/demo/
Don't be surprised if it appears in a language other than English. Changing the language setting seems to be a favorite.
You can report bugs on SourceForge at: http://sourceforge.net/bugs/?group_id=3870Where do I get help?
Try the Forums on SourceForge:What license is WebCalendar distributed under?http://sourceforge.net/forum/?group_id=3870
Someone has even posted some links for problems setting up PHP and MySQL.
WebCalender is distrubuted under the GPL. (See GPL.html file included with the distribution.)