Ok here is my hack. It works, but I do want to figure out a better way to make this work so that there is no hacking of the code needed.
After installing webcalendar make the following changes:
1. First to get the current RoundCube user ID I opened the RoundCube file program/include/rcube_user.php and went to line 47 just inside the _construct function. After this line: $this->db = rcmail::get_instance()->get_dbh();
I set a cookie by adding this line: setcookie("webcal_user_id",$id);
so it now looks like:
$this->db = rcmail::get_instance()->get_dbh();
setcookie("webcal_user_id",$id);
2. Then in the webcalendar file at plugins/webcalendar/app/includes/config.php I grab the current roundcube user id.
Around line 207 you will find a line that like:
$single_user_login = $settings['single_user_login'];
Change that line to:
$single_user_login = $_COOKIE['webcal_user_id'];
3. Open the webcalendar file plugins/webcalendar/app/includes/settings.php
and set the following lines to look like this:
user_inc: user.php
use_http_auth: false
single_user: true
Now it should work seamlessly, but there is one small problem left to fix. Right now every new user will have full admin privileges. Until I figure out the fix for this all new users will need to be manually changed in the db to not be admins.
I have not tested this from scratch so hopefully I didn't miss something that I did. So let me know if this doesn't work for you and I will try to see what I missed.