Jevents 2.x (Free Access)

iCal not working with Microsoft Exchange Server 2010

Discuss JEvents 2.x for Joomla 1.5-2.5 here - club members can use the special club forum for faster response times.
Forum rules
When requesting support please follow these steps:

1. Update all JEvents add on's first, via the Joomla! Updater
2. Copy and Paste the JEvents Support Information from the JEvents Control Panel.
3. If you get a 500 error OR white page, enable Maximum Error Reporting in Joomla! Global Config and visit the page again, this should give you a more detailed error and help us provide a prompt response.

Postby bigjezza » Thu Dec 08, 2011 1:57 pm

Hi,

Firstly, thanks for creating such a great plug-in for Joomla! It does everything I want - except...

I am publishing a calendar at this location: http://db3prd0302.outlook.com/owa/calen ... lendar.ics

When I add this to JEvents as a URL and attempt to update, I get a message which states 'Not a valid VCALENDAR file'.

The file is a valid .ics file as far as I can ascertain, it has been generated by Microsoft Exchange Server 2010.

Please can you advise on a solution for this.?

Thanks for your assistance!
bigjezza
 
Posts: 5
Joined: Wed Dec 07, 2011 3:53 pm

Postby Geraint » Thu Dec 08, 2011 4:54 pm

Can you take a screenshot of your JEvents calendar creation page?

Its also possible that your server is not loading the file from this remote location properly. for example if they are both on the same server then the DNS entries may be wrong internally.
JEvents Club members can get priority forum support at the Support Forum. As well as access to a variety of custom JEvents addons and benefits. Join the JEvents club today!
User avatar
Geraint
 
Posts: 42781
Joined: Fri Feb 15, 2008 6:14 pm

Postby bigjezza » Mon Dec 12, 2011 10:21 am

Hi, I am unsure how to upload a screenshot on this forum?

Basically I have created the calendar and specified the above URL, which does not work and gives the error. I then changed the URL to that of a test calendar in Google Calendars and this works fine. Both calendars are in the '.ics' format so I can't understand why one would work and the other wouldn't?

Any assistance you can give would be appreciated!
bigjezza
 
Posts: 5
Joined: Wed Dec 07, 2011 3:53 pm

Postby carcam » Tue Dec 13, 2011 8:01 am

To upload a screenshot, instead of clicking on "Quick reply", click on "Post reply" a couple of lines below, on the left. Then you may notice below the editor the options to upload attachments to the forum.
¿Sabías que tenemos soporte en español para los miembros del Club de JEvents? ¡ÚNETE AHORA!
User avatar
carcam
Team Staff
 
Posts: 7061
Joined: Wed Aug 06, 2008 7:50 pm
Location: Almería

Postby bigjezza » Tue Dec 13, 2011 8:03 am

Having re-read my posts I'd just like to add some clarification:

The server hosting my Joomla website is not the same server that is hosting my calendar in Exchange so I don't think DNS is a problem.

When I add the URL of a Google Calendar to JEvents, everything works fine. However when I add the URL of my Exchange calendar to JEvents, it doesn't work and gives me the error message above.

How is this possible when both calendars are published in the standard .ics format?

Any assistance much appreciated!
bigjezza
 
Posts: 5
Joined: Wed Dec 07, 2011 3:53 pm

Postby bigjezza » Tue Dec 13, 2011 8:08 am

Here's the screenshot as requested!

(thanks Carcam for the advice on how to upload a screenshot!)
Attachments
JEvents Calendar.jpg
JEvents Calendar.jpg (82.89 KiB) Viewed 639 times
bigjezza
 
Posts: 5
Joined: Wed Dec 07, 2011 3:53 pm

Postby Geraint » Tue Dec 13, 2011 2:02 pm

If you edit the file components/com_jevents/libraries/iCalImport.php and find code like this (line number will depending on your jevents version)

Code: Select all
      // remove spurious lines before calendar start
      if (!JString::stristr($this->rawData,'BEGIN:VCALENDAR')) {
         // check for CSV format
         $firstLine = JString::substr($this->rawData,0,JString::strpos($this->rawData,"\n")+1);
         if (JString::stristr($firstLine,'SUMMARY') && JString::stristr($firstLine,'DTSTART')
            && JString::stristr($firstLine,'DTEND') && JString::stristr($firstLine,'CATEGORIES')
            && JString::stristr($firstLine,'TIMEZONE')) {
            $timezone= date_default_timezone_get();
            $csvTrans = new CsvToiCal($file);
            $this->rawData = $csvTrans->getRawData();
            date_default_timezone_set($timezone);
          } else {
            JError::raiseWarning(0, 'Not a valid VCALENDAR data file: ' . $this->srcURL);
            //JError::raiseWarning(0, 'Not a valid VCALENDAR or CSV data file: ' . $this->srcURL);
            // return false so that we don't remove a valid calendar because of a bad URL load!
            return false;
            }
      }


Then just before the line
Code: Select all
JError::raiseWarning(0, 'Not a valid VCALENDAR data file: ' . $this->srcURL);

Put this:

Code: Select all
echo "rawdata is <br/>".$this->rawData."<br/>That was the rawdata";die();

It may give you a clue to what the problem is.

You should see the content of the remove URL file between "rawdata is " and "that was the rawdata";
JEvents Club members can get priority forum support at the Support Forum. As well as access to a variety of custom JEvents addons and benefits. Join the JEvents club today!
User avatar
Geraint
 
Posts: 42781
Joined: Fri Feb 15, 2008 6:14 pm

Postby bigjezza » Tue Dec 13, 2011 3:30 pm

Hi Geraint,

Thanks for your response.

I've been doing some tests by editing the text inside the .ics files and I think I may have discovered the source of the issue.

In the Google calendar .ics file (which works perfectly) the timezone is specified as 'Europe/London' which matches the setting I've chosen in JEvents.

In the Exchange .ics file (which currently doesn't work) the timezone is specified as 'GMT Standard Time'. However I am unable to choose this timezone as an option in JEvents configuration. This causes the import to fail.

I have proved this by doing a find and replace on the Exchange .ics file and replacing all instances of 'GMT Standard Time' with 'Europe/London'. When I do this the import works perfectly.

Is it possible to add 'GMT Standard Time' to the dropdown list of timezones in the config page? If this is possible I believe this will resolve my issue!

Many thanks for all your assistance, it is much appreciated!
bigjezza
 
Posts: 5
Joined: Wed Dec 07, 2011 3:53 pm

Postby Geraint » Wed Dec 14, 2011 11:08 am

Microsoft decided not to follow the industry standard for timezone names (called Olsen) and uses its own - in JEvents 2.1.4 we have implemented a series of special cases to handle these non-standard timezone names and map them to real ones.

JEvents 2.1.4 is available to all club members and will be available for public release in February 2012.
JEvents Club members can get priority forum support at the Support Forum. As well as access to a variety of custom JEvents addons and benefits. Join the JEvents club today!
User avatar
Geraint
 
Posts: 42781
Joined: Fri Feb 15, 2008 6:14 pm


Return to Jevents 2.x (Free Access)

  • Who is online
  • View new posts
  • View unanswered posts
  • In total there are 0 users online :: 0 registered and 0 hidden (based on users active over the past 5 minutes)
  • Most users ever online was 94 on Tue Sep 01, 2009 12:33 am
  • Users browsing this forum: No registered users