embedding iCloud'scalendar in a web page ?

Hello, please would you excuse my poor english syntax !


Yesterday, i have had a ical's calendar synchronized with a Google Calendar. From Google, i was able to copy a few lines of html code (an <iframe> tag) in order to publish that calendar in a personal page web, after pasting this code in my personal html code.


Today my ical's calendar is inClouded ;-), and the synchronization with Google Calendar was disabled (i don't want to have twice the events).


Please give me the tip: how can i embed this inclouded calendar in my web page ???


thanks for help.


Vincent.

Mac OS X (10.7.2)

Posted on Oct 19, 2011 6:07 AM

Reply
34 replies

Oct 24, 2011 1:08 AM in response to vincentfrombrest

hello, i've founded a solution. It works, but not any thanks to Apple...


The master piece is the Spanning Sync software, the other piece is Google AGenda, the minor piece is iCloud.


On my Mac, i told iCloud to synchronize all my calendars, one of them is the BCBG Calendar, which i want to publish on my association of wine tasters's website. These "inClouded" calendars are also synchornized by iCloud on my iPad. It works fine...


On my Google account, i've created a new Agenda, with the name BGBG_Google.


In the system Preferences, i told Spanning Sync to log in my google account, then i told him to synchronize ONE WAY (from my Mac toward Google) the BCBG iCalendar and the BCBG_Google agenda. It's important to say one way, otherwise you will have duplicated events....


Last, thanks Google for the openness of the agendas, google give me a little bunch of html code (an <iframe>) that i pasted in my personal web page.


You could see the result here : http://www.bacchus-club1901.org/Pages/Klendars/Klendar.html


Spanning Sync is here http://spanningsync.com/, it cost a few bucks for a all your life license.

Oct 23, 2011 3:05 PM in response to Sjazbec

It is very frustrating. It used to work like you say but since upgrading to iCloud Calendar we have lost this access. This is an important requirement for me. I maintain our local church calendar and use iCal to maintain the calendar and publish this to our church website but now the new events or updates don't work....


I hope someone finds a solution soon so I can publish my calendar again. I do not want to have to have people subscribe to the calendar to view it I just want to display it on our church website...


I look forward to any other alternatives to get an iCloud Shared Calendar embedded into a website.


Thanks

Apr 24, 2012 5:31 PM in response to Roger Wilmut1

Roger Wilmut1 wrote:


You can publish an 'On My Mac' calendar to a web page; but it will not sync with iCloud. You can share an iCloud to people with a CalDAV client (such as iCal) but you cannot publish it to a web page, though obviously you can sync with it. I'm afraid it's either-or.


Using BusyCal you can subscribe to the iCloud calendar and publish it to Google, Yahoo or any CalDav server, a web page can be a CalDav client and subscribe to it. So yes, but not at the push of one button, and BusyCal is not free.


User uploaded file

Aug 17, 2012 1:32 PM in response to SpotsInc

Hey Spots;


Happy to hear you've tried it and gotten this far. Sorry to hear of the difficulties.


Not sure I'm in a good position to solve this for you-can't simulate it at present, but some ideas/advice:


Explanation:

Line 102:

"sed" calls up the stream editor, to edit the xxx.ics file data on the fly while assembling into the xxx.full.ics file. The -e argument simply tells it that there are additional line edits to append to this command (lines 103 thru 106). Note that the backslash "\" at the end of each line is a connector to the next line.

What these lines do, individually, is:

Line 102: Detect in the xxx.ics file any lines that begin (i.e 's/) with "SUMMARY:" (with a .* wildcard to identify any subsequent text), and replace them with "SUMMARY:Booked".

Line 103: Similarly for any line beginning with "URI", replacing with "URI:"

Line 104: Similarly for any line beginning with "DESCRIPTION:"

Line 105: Similarly for any line beginning with "LOCATION:"

Line 106: Different. Sometimes the SUMMARY line (and potentially others) may overflow into a second, third, etc line in the initial xxx.ics file. This line deletes these extra line occurrences (crude, but probably sufficient).

(SUMMARY, DESCRIPTION, URI, and LOCATION fields in the file seem to correlate with the event Title, URL, Notes, and Location fields.)

Suggestions:

Its not obvious what is happening for you and I can't really simulate or solve it but you can try modifying things somewhat and see if you can get it working. I would suggest that you:

-find/delete any copies of the xxx.full.ics file that may be accidentally left lying around

-begin with a fresh copy of the script to avoid any possible typos resulting from your earlier work

-try removing 1 line at a time. start with 103 or 104 or 105 to see if there is one particular line that is causing the syntax error. Remove one of those lines and test, then a second, then all three. At this point, I expect you will be getting those fields in your calendar, but not yet the Summary event field.

-if you then try to remove line 106 while leaving one/some previous lines in place, recognize that you will have the last existing line with a "\" connector at its end, without any following line for it to connect to. This would probably generate a syntax error. So if you remove line 106 while leaving line 102, then remove the backslash from 102 as well.


So finally, from Creighton, the suggestion:


In addition to taking out all lines 102-106 now, also remove the backslash and pipe (vertical bar) at the end of line 101.


Basically, make it look like this (ignore line #'s here):

  1. function get_events_from_file {
  2. EVENT_FILE=${1}
  3. # This script was written to take a business calendar and publish it
  4. # online to show available vs. booked times.
  5. #
  6. # For reasons of privacy, many event details are suppressed, to
  7. # let all details display, delete everything from "sed" to the end
  8. # of the command.
  9. cat ${EVENT_FILE} | \
  10. awk 'BEGIN { is_event=0 }
  11. /^BEGIN:VEVENT/ { is_event=1 }
  12. /^END:VEVENT/ { print $0; is_event=0 }
  13. { if ( 1 == is_event ) { print $0 } }'
  14. }


I'm betting Creighton's suggestion solves it. If so, apologies for my incomplete instructions in the original post. Please post your success/difficulties so that we can all know if this solves it.

Good Luck

Oct 28, 2011 10:57 AM in response to coxtech

I'm not sure why the "correct answer" here is just a restatement of the problem. I posted my own complaint about this elsewhere in this forum, before reading this... but I also share the frustration.


I'm not sure why you would want to include Google Calendar as part of this scenario, since you could easily embed and display iCal calendars in an iframe in your web site before iCloud and without involving Google. I've done it for years at... http://torontoliveclubhub.com/Club_Calendar/club_calendar.html


You can View Source to see all of the code, but the embedded calendar display is handled by nothing more than this...


<iframe name="calendar" style="border:0px solid black" scrolling=auto width=800 height=1200 align=top frameborder=0 src="http://ical.me.com/cwhaley/Toronto_Live_Music"></iframe>


My calendar just won't update automatically anymore.


Is it possible that the format for the URL has simply changed?

Feb 27, 2012 4:13 AM in response to wheelerj

that is AMAZING!


I want to run screaming down the streets... "^$#$@ Apple!!"




I'm a portrait photographer.



I want to put a "blank block" diary on my own website, so potential clients can see when I am free. I want the booked-out blocks of time visible, but of course I don't want anyone to see anyone else's identity/ phone numbers etc.



This (usually) worked with MobileMe, but iCloud seems dumbed down so much I don't understand ... Why can't I do stuff !?! I don't want strangers subscribing to my diary.





I have been an Apple preacher since the 1st macs. Now I am looking outside for a more customisable and less ipod driven paradigm.

Feb 29, 2012 1:08 AM in response to jomphoto

I'm also pulling my hair out trying to figure out how to get my iCal calendar on my website. I can get a Google Calendar on there (and it syncs with iCal), but I hate how it looks. The iCal calendars look so much better. It's apparent that this functionality just wasn't on the radar with iCloud and the updates. VERY frustrating. Hopefully there will be a solution. I'm forced to use an ugle Google calendar in the meantime.

Apr 24, 2012 8:54 AM in response to vincentfrombrest

I find this very frustrating as well. My wife has an Esthetics Spa, and we've been publshing her "Availability" calendar from iCal to a php calender on her website. We did this by exporting the .ics file from her (MobileMe enabled) Spa calendar on her Mac. It was made possible by a drop down menu item under Share Calendar in iCal (OSX6), the item was called "Change Location" (whaaa?). That calendar was still sync'd via MobileMe with our iPad, iPod, and iPhone for taking booking calls when we were away. OSX7 broke that: now, you can either sync "iCloud" calendars with iPxx devices, or you can export "On My Mac" calendars as we used to do (no longer caled "Change Location" - got the naming right!).


So well done Apple. That was a dunce move! The great new iCloud adventure means that calendar will be TAKEN OFF iCLOUD because its MORE IMPORTANT TO KEEP CUSTOMERS HAPPY THAN DEVELOPERS.


Wake up guys. This is IdiotSoft kinda stuff, not Apple kinda stuff.

Apr 24, 2012 8:34 PM in response to Csound1

This doesn't seem to help.


As I explained above, I need to Publish the Spa Calendar .ics file to a web host, to be used within a php calendar tool. That part is working fine already on OSX6, and I have no wish to redo that Website with Google calendar or some other solution. The look, feel, and usability will not be acceptable. It is a 'display only' calendar, with strict customer privacy protection.


I also need to simultaneuosly sync that calendar via iCloud to use the mobile devices. That is also working via MobileMe with OSX6. OSX6 allowed both publishing of a MobileMe calendar (.ics file) to an ftp server of my choosing AND maintaining sync with MobileMe. As stated above, OSX7 only allows one or the other, not both.


I have looked at the BusyCal site and see no indication (let me know if I'm wrong please) that I can use it to publish an iCloud calendar's .ics file in OSX7, or conversely to sync an OnMyMac calendar with iCloud. I don't need it's other sync capabilities.


I find this removal of functionality quite frustrating. Since I am being forced to choose by June 30 which sync to give up, I will protect the calendar published to my wife's customers, and so the grand push to use iCloud will push my wife's business away from iCloud.

Apr 24, 2012 8:59 PM in response to Csound1

Why use Busycal? I don't know. You suggested it.


iCal will publish the .ics file (i.e. it will ftp the .ics file to my web host) only if it is an OnMyMac calendar (OSX7), but not if it is an iCloud calendar. Since the calendar in question is currently a MobileMe calendar (OSX6), if I convert from MobileMe to iCloud, I will lose that publish capability. I can recover it by changing that calendar to an OnMyMac calendar (cumbersome, but possible), but I will then lose the iCloud sync for our mobile devices. Those are my options, apparently.

Apr 24, 2012 9:16 PM in response to DavidPaterson

DavidPaterson wrote:


Why use Busycal? I don't know. You suggested it.


iCal will publish the .ics file (i.e. it will ftp the .ics file to my web host) only if it is an OnMyMac calendar (OSX7), but not if it is an iCloud calendar. Since the calendar in question is currently a MobileMe calendar (OSX6), if I convert from MobileMe to iCloud, I will lose that publish capability. I can recover it by changing that calendar to an OnMyMac calendar (cumbersome, but possible), but I will then lose the iCloud sync for our mobile devices. Those are my options, apparently.

That is not true, iCal will export any of it's calendars (including iCloud) to an .ics file.



And I have not suggested that you use BusyCal, you responded to my reply to someone other than you.

Apr 24, 2012 9:45 PM in response to Csound1

I think we're using different terms here. Above, I said "publish", not "export". You said "export".


In OSX6, under the "Calendar" menu there is a menu item called "Change Location". Selecting that enables the user to stipulate an ftp address to which an updated .ics file is "Publish"ed every time the user modifies a calendar entry. That option is avaiable whether it is a MobileMe calendar or an OnMyMac calendar. In OSX7, that option is available for OnMyMac calendars only, and it is called "Publish", and the option appears again in the pull down menu under Calendar. As I said, the Publish option appears only for OnMyMac calendars. For iCloud calendars, the "Share Calendar" item appears in its place. One or the other - not both.


I am not looking for a solution wherein we have to manually "export" the /ics file every time the calendar is modified, followed by ftp'ing it to the website. I am simply looking for OSX6's Publish capability. It worked for MobieMe calendars. In OSX7, I want it for an iCloud calendar.

Apr 25, 2012 6:48 AM in response to Csound1

Well I accept that you did not intend to reply to me with the BusyCal point, but your April 24 response must therefore have been to Level 8 Roger Wilmut1's Feb 29 non-question advisory post, the last one prior to mine - in fact 8 weeks prior to my April 24 post. That reply, not to me, then resulted in an email to me that raised the BusyCal approach -confusing to me in that it quoted Roger Wilmut1's 8 week old post but came to me short hours after my post to a seemingly 8 week stale thread.


So in any event, your suggestion (to Roger Wilmut1 I guess) to use BusyCal was not helpful to me, whether you intended it to be or not, and that is in fact what I then said. And since I said that, this dialogue has not advanced the discussion on the underlying technology or issue at all. So if you are determined to ensure that this response does not remain the last one in this thread, please reassert your point, but I see no point in pursuing this further with you.


Signing off and giving up...

This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

embedding iCloud'scalendar in a web page ?

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.