Project

General

Profile

Actions

Feature #1077

open

ICS view of Calendar

Added by Adam Knight almost 16 years ago. Updated over 5 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Feeds
Target version:
-
Start date:
2008-04-18
Due date:
% Done:

90%

Estimated time:
Resolution:

Description

It would be really nice if we could get an ICS view of a project calendar similar to how we get RSS feeds of project activity. This way users can see all the events (and milestones/versions) in their calendar software and the activity in their RSS readers.


Files

ICS_Support.patch (6.72 KB) ICS_Support.patch Florian L, 2008-04-30 23:17
ICS_Support__2.patch (3.75 KB) ICS_Support__2.patch Florian L, 2008-05-05 19:35
ICS_Support__3.patch (3.05 KB) ICS_Support__3.patch Sławek Goszcz, 2009-09-07 10:43
ICS_Support__4.patch (4.5 KB) ICS_Support__4.patch Frank Schwarz, 2009-11-23 21:55
ICS_Support__5.patch (4.74 KB) ICS_Support__5.patch Frank Schwarz, 2009-11-24 07:03
redmine-0.9-stable-roadmap-icalendar-ics-export.patch (5.8 KB) redmine-0.9-stable-roadmap-icalendar-ics-export.patch iCal integration (webcal subscription, ics export) y v, 2010-05-30 18:23
redmine-roadmap.png (187 KB) redmine-roadmap.png y v, 2010-05-30 18:24
ical-overview.png (224 KB) ical-overview.png y v, 2010-05-30 18:24
ical-subscription.png (63.6 KB) ical-subscription.png y v, 2010-05-30 18:24
ical-todo.png (32.9 KB) ical-todo.png y v, 2010-05-30 18:24
ical-url.png (41.1 KB) ical-url.png y v, 2010-05-30 18:24
redmine-roadmap-2.png (262 KB) redmine-roadmap-2.png y v, 2010-05-30 18:24

Related issues

Has duplicate Redmine - Feature #1442: ICS generationClosed2008-06-13

Actions
Has duplicate Redmine - Feature #6168: ical subscribtion for calendarClosed2010-08-18

Actions
Actions #1

Updated by Maxim Krušina almost 16 years ago

+1

Actions #2

Updated by Stephanie Collett almost 16 years ago

+1

Actions #3

Updated by Florian L almost 16 years ago

This patch add the functionnality : "Also available in: iCal" !

I worked with the revision 1388.

This patch provide all the events from the beginning of the project till now.

Enjoy,
Florian

Actions #4

Updated by Florian L almost 16 years ago

Its based on http://icalendar.rubyforge.org/

So you need to install iCalendar via GEM :
  1. gem install icalendar
Actions #5

Updated by Thomas Lecavelier almost 16 years ago

  • Status changed from Resolved to 7
  • % Done changed from 100 to 50

Florian,

Please correct these problems with your patch:

  1. the patch don't mention the r1388, applying it will mess the merger
  2. the file app/views/projects/calendar.rhtml is binary encoded instead of text
  3. a minimal test harness should be a real plus for integrating this patch
Actions #6

Updated by Jean-Philippe Lang almost 16 years ago

  • Target version deleted (0.7.1)
Actions #7

Updated by Florian L almost 16 years ago

New version. Bugs fixed. Tested on two production version.

Any feedbacks ?

Actions #8

Updated by Florian L almost 16 years ago

  • Target version set to 0.8
Actions #9

Updated by yann belot almost 16 years ago

Hi,

how can we use it ?

thx

Actions #10

Updated by Daniel N over 15 years ago

+1 Would be a very cool feature.

Actions #11

Updated by Joris Verschoor over 15 years ago

If I go to: http://xxxxxxx/projects/calendar/PROJECTNAME?format=ics I get a missing template error:

ActionController::MissingTemplate (Missing template common/calendar.ics.erb in view path xxxxx/redmine-0.7.3/a
pp/views):

Actions #12

Updated by Jan Ivar Beddari over 15 years ago

+1

Combining ICS-support with something like http://remotecalendars.sourceforge.net would be of great value in enterprise use cases. Remote access would need to be secured somehow, does this patch already add some sort of password auth? Please excuse my limited knowledge here ..

Actions #13

Updated by Jean-Philippe Lang over 15 years ago

  • Target version deleted (0.8)
Actions #14

Updated by Mihail M over 15 years ago

it`s work with 0.8 ?

Actions #15

Updated by Florian L over 15 years ago

I dont test it with 0.8. I'll work on it.

Joris Verschoor Verschoor :
Just create the file calendar.ics.erb in /app/views/common with this :
<%= @cal_string %>

Actions #16

Updated by Myles Braithwaite over 15 years ago

Could you also support issue exported as tasks?

Actions #17

Updated by Jens Goldhammer almost 15 years ago

+1

Actions #18

Updated by Frotran Def over 14 years ago

+1

Actions #19

Updated by Joan Ginard over 14 years ago

+1

I cannot make ICS_Support__2.patch to work on 0.8.2.

Think feature is very very useful to get many peoples's calendar apps sincronized.

Actions #20

Updated by Maxim Krušina over 14 years ago

+1000 - can someone create plugin for this?

Actions #21

Updated by Sławek Goszcz over 14 years ago

I've created a patch for version 0.8.4. I think it will be usefull.

Actions #22

Updated by Maxim Krušina over 14 years ago

Slavek> Great! ;) Please, is it possible to convert it to plugin? Patches and not so much fŕiendly with SVN update ...

Actions #23

Updated by Mike Heininger over 14 years ago

Would it be possible to add "key" authentication like with the RSS feeds?

Actions #24

Updated by Pablo 09 over 14 years ago

+1

I have tried to apply path on trunk but i havent application.rb, i have application_controller.rb How can i apply the path??

Thanks

Actions #25

Updated by Frank Schwarz over 14 years ago

Patch adopted to current trunk

Actions #26

Updated by Frank Schwarz over 14 years ago

There was one file missing in patch 4, so new patch 5.

Actions #27

Updated by Nick Wilsdon over 14 years ago

We've got a problem with this, using patch 5 and v. 0.8.7 redmine. Links are appearing ok on the issues page. Clicking in FF prompts to download file. Google doesn't seem to like the URL or the file as a manual upload.

Error on manual upload:

Processed zero events
Failed to import events: unable to process your iCal/CSV file...

Looked at the file - seems ok but I don't know the format for iCal.

Actions #28

Updated by Mischa The Evil over 14 years ago

Nick Wilsdon wrote:

We've got a problem with this, using patch 5 and v. 0.8.7 redmine. [...]

ICS_Support__5.patch is for source:/trunk only. Latest iteration of the patch for source:/branches/0.8-stable is ICS_Support__3.patch.

Please note that I haven't tested the patches myself...

Actions #29

Updated by Fred M. about 14 years ago

Hi,

Is there any plan to update the patch files for Redmine 0.9.1 ? It does not seem a big work to edit the patch, but I've absolutely no knowledge in RoR...

Thanks in advance !

Fred.

Actions #30

Updated by Erik-Jan Jaquet about 14 years ago

Hi all,

I am running the current stable version of Redmine (0.8.7). I have changed the 3 files according to path #3, which should be working for the stable release.

But when I reboot, nothing happens. I don't see any link to the ICS view? How do I apply this patch?

Kind regards,

Erik-Jan

Actions #31

Updated by Fred M. about 14 years ago

Hi,

I manually applied the patch v5 to my files and it's now working. I also updated the code to export items in the form of calendar tasks, and it's working find.

I think it would be even better if it was possible to provide the task export in the issues list, at the same place than Atom/PDF/CSV links. This would be very useful since it would enable to subscribe to custom issue list instead of all issues of the project. Again, I'd be glad to do it myself, but I have actually no knowledge in ruby and even less in Redmine design...

If anybody is interested by the patch for 0.9.1, please ask I would try to provide an SVN patch...

Thanks again,
Fred.

Actions #32

Updated by Red Mind about 14 years ago

Fred M. wrote:

If anybody is interested by the patch for 0.9.1, please ask I would try to provide an SVN patch...

Hi,
I am interested by your patch.
Thanks

Actions #33

Updated by David Bauer about 14 years ago

Hi,

thanks for your work on that. I would also be interested in the SVN patch.

Thanks again,

David

Actions #34

Updated by Maxim Krušina about 14 years ago

Can someone create plugin or integrade it into trunk, please? ;)

Actions #35

Updated by Xavier Moles Lopez about 14 years ago

Sławek Goszcz wrote:

I've created a patch for version 0.8.4. I think it will be usefull.

This patch didn't worked for me (with version 0.8.4 stable). Are there any prerequisite for this patch to work? Do I need to apply first patches 1 and 2?
Thanks for the good job you're doing!

Xavier

Actions #36

Updated by Xavier Moles Lopez about 14 years ago

This patch didn't worked for me (with version 0.8.4 stable). Are there any prerequisite for this patch to work? Do I need to apply first patches 1 and 2?
Thanks for the good job you're doing!

Xavier

I found out that Sławek's patch do actually work! The confirmation on UBC Redmine page
Although the changes are not visible, the adress of the ics calendar is available and working...

Actions #37

Updated by Maxim Krušina about 14 years ago

Please, is it possible/simple to convert this functionality into plugin?

Actions #38

Updated by Michael Hellein about 14 years ago

I've almost finished turning this code into a plugin. I don't have enough time to finish now, but I hope to be able to provide something relatively soon.

Actions #39

Updated by Carl Pef almost 14 years ago

Thanks for your work Michael !

Indeed, a plugin would be very nice :)

Actions #40

Updated by y v almost 14 years ago

Hi,

I just wrote a patch which works with version 0.9 stable and does it a bit different than your approaches.

In my opinion we should focus on the roadmap and so exporting versions as events (VEVENT) and its issues as todos (VTODO). I used the VPIM gem and tested my integration with iCal on Mac OS X 10.6. With this patch you can:

  • Subscribe to a roadmap of a project or download it as static file
  • See its issues with priority and status

I added some screenshots for you (make sure that you deactivate the Remove ToDo options when subscribing to a calendar).

After uploading this stuff I'll fork the project on GitHub and apply those changes there.

Actions #42

Updated by Fred M. almost 14 years ago

Hi,

Many thanks Yves for your patch, it is working very well and your approach is fine for me :)

However, you did not support sub-domains or secured protocol in your code. The workaround is quite simple : add the parameters

:only_path => false, :host => Setting.host_name

to every call of url_for and link_to methods.

Here are the updated occurences of these methods:
  • app/controllers/projects_controller.rb line 345:
    event.url           url_for(:controller => 'versions', :action => 'show', :id => version, :only_path => false, :host => Setting.host_name)
    
  • app/controllers/projects_controller.rb line 355:
    options.push Vpim::DirectoryInfo::Field.create('URL', url_for(:controller => 'issues', :action => 'show', :id => issue , :only_path => false, :host => Setting.host_name))
    
  • app/views/projects/roadmap.rhtml line 48:
    <%= link_to 'iCalendar', :controller => 'projects', :action => 'roadmap', :format => 'ics', :key => User.current.rss_key, :only_path => false, :host => Setting.host_name, :protocol => 'webcal' %><br />
    

The link using the webcal protocol is not working for me since my Redmine server is only available through HTTPS, but anyway I just have to subscribe to the ics file itself and it's working well.

Please note that the value inside Setting.host_name is the value set in the Administration section Settings. It should contain only the domain name without the trailing slash, like https://redmine.mycompany.com.

Hope this would help :)

Regards,
Fred.

Actions #43

Updated by y v almost 14 years ago

Hi Fred,

thanks for you reply. I added your changes to the GitHub repository

I left out the changes in app/views/projects/roadmap.rhtml because there's no SSL pendant for webcal-protocol (like e.g. ldaps for ldap). As far as I know we currently would have to utilize CalDAV if we wanted to encrypt our calendar stuff over the wire…

To anyone who wants to use this changes - please refer to the GitHub repository if the patch above doesn't work for you.

Actions #44

Updated by Daniel Schuba over 13 years ago

duplicate here #6168

Actions #45

Updated by Kasper Nielsen over 13 years ago

Yves Vogl wrote:

Hi Fred,

thanks for you reply. I added your changes to the GitHub repository

I left out the changes in app/views/projects/roadmap.rhtml because there's no SSL pendant for webcal-protocol (like e.g. ldaps for ldap). As far as I know we currently would have to utilize CalDAV if we wanted to encrypt our calendar stuff over the wire…

To anyone who wants to use this changes - please refer to the GitHub repository if the patch above doesn't work for you.

Is someone still working on this? I get a "repository does not exist" when clicking the GitHub link.

Actions #46

Updated by Frank Schwarz over 13 years ago

Maxim Krušina wrote:

Please, is it possible/simple to convert this functionality into plugin?

Here you are: http://code.google.com/p/redmics/

Feedback is welcome.

Actions #47

Updated by Jan from Planio www.plan.io over 13 years ago

I created a modified version which moves the links from the sidebar to "Also available in" links at the bottom of the calendar. For me, This feels more "natural", as the Atom, CSV, PDF links are there on the issues view as well. This needs a new hook however, which I've requested in #6586. Feedback welcome.

Actions #48

Updated by Halle Winkler over 13 years ago

Just wanted to give feedback that Frank Schwarz' plugin works very well for me, thanks Frank.

Actions #49

Updated by Maxim Krušina over 13 years ago

Frank Schwarz wrote:

Maxim Krušina wrote:

Please, is it possible/simple to convert this functionality into plugin?

Here you are: http://code.google.com/p/redmics/

Feedback is welcome.

Hi Frank, thank you very much for your work! We finally won the battle with our selfrestarting serrver, so now we upgrade our redmine server and we start big testing! Thank you!

Actions #50

Updated by Terence Mill over 13 years ago

The plugin is working here, but we don't like that ist defining its "own" filters statically. We would like to have an ics export of the tickets of cuurent the view (with selected filters) instead, like the csv or pdf export works.

Actions #51

Updated by Felix Schäfer over 13 years ago

Terence Mill wrote:

The plugin is working here, but we don't like that ist defining its "own" filters statically. We would like to have an ics export of the tickets of cuurent the view (with selected filters) instead, like the csv or pdf export works.

I have a fork of the plugin in the works to provide the calendar view as an ical, and you can use custom queries on calendar (though the UI for that isn't in place just yet IIRC). I'll drop a short note once I have something to show.

Actions #52

Updated by Frank Schwarz over 13 years ago

Terence Mill wrote:

The plugin is working here, but we don't like that ist defining its "own" filters statically. We would like to have an ics export of the tickets of cuurent the view (with selected filters) instead, like the csv or pdf export works.

I also was pondering this option. However, the filter for the csv export is stored in the web session. So you have to export and save your ICS file somewhere before you can subscribe it (offline). An online subscription with a stable filter is IMHO not possible. - I am happy to be proven wrong on this.

Actions #53

Updated by Roger Casaliñas over 13 years ago

+1

Actions #54

Updated by Anonymous over 13 years ago

Hi, i can´t get the plugin to work. The links appear in the sidebar but when i click on them a 500 Internal Server Error occurs.
My URL reads http://web:3000/i_calendar?assigned_to=%2B&format=atom&key=8e459bfe92bdfae7b18bf3288cb1d4b0f7faeac0&project_id=print&status=all

As you can see i am runnning an own virtual host on port 3000.
Here is my apache2 config:
Listen 3000
<VirtualHost *:3000>
ServerName redmine.example.com
ServerAlias redmine
ServerAdmin webmaster@localhost
DocumentRoot /var/www/redmine/public/
<IfModule mod_fcgid.c>
DefaultInitEnv RAILS_ENV production
DefaultInitEnv GEM_HOME /var/local/lib/gems
DefaultInitEnv RUBYLIB /usr/local/ruby/lib/
</IfModule>
<Directory /var/www/redmine/public/>
Options Indexes ExecCGI FollowSymLinks
Order allow,deny
Allow from all
AllowOverride all
</Directory>
RailsBaseURI /
ErrorLog /var/log/apache2/redmine_error.log
LogLevel info
CustomLog /var/log/apache2/redmine_access.log combined
</VirtualHost>

i ain´t got a .htacces file (the one that came with redmine) in my public directory because when i had it enabled my static files like css and javascripts weren´t found.

Can anybody tell me how to get the ICS links to work? Thank you in advance.

Actions #55

Updated by Anonymous over 13 years ago

I forgot: I followed the instructions on this page: http://code.google.com/p/redmics/

Actions #56

Updated by Frank Schwarz over 13 years ago

Please file a bug at http://code.google.com/p/redmics/issues/list and provide me with the relevant portions of /var/log/apache2/redmine_error.log and REDMINE_HOME/log/production.log and the version number of the plug-in.

I guess it is an NPE somewhere.

Ace Man wrote:

Hi, i can´t get the plugin to work. The links appear in the sidebar but when i click on them a 500 Internal Server Error occurs.

Actions #57

Updated by Luis Alvarez about 13 years ago

Ace Man,
Make sure you have the perquisite icalender plugin installed:
see http://code.google.com/p/redmics/

Actions #58

Updated by Luis Alvarez about 13 years ago

Hi, Got it to work. Where is the subscription url provided? I've seen several images but I don't see any format provided.

Actions #59

Updated by Luis Alvarez about 13 years ago

Format for subscription:
eg:
webcal://<theredmineurl>/redmine/i_calendar?assigned_to=%2A&format=atom&key=765561bf6551aawwa6351333206aad58d9f95bd114&project_id=theproject&status=all

Actions #60

Updated by Luis Alvarez about 13 years ago

Luis Alvarez wrote:

To get the subscription link to the redmine calendar

Under ICalendar right click on the appropriate link and copy link location.
replace http:// with webcal://

eg:
webcal://theprojectsite.com/redmine/i_calendar?assigned_to=%2A&format=atom&key=765561bf6551aawwa6351333206aad58d9f95bd114&project_id=theproject&status=all

Actions #61

Updated by Andy Mahieu about 13 years ago

In Outlook 2010, the ICalendar works.

But in Outlook 2003, it doesn't. Outlook 2003 expects to see "METHOD:PUBLISH" in the beginning of the file.

Actions #62

Updated by Fred M. about 13 years ago

Frank Schwarz wrote:

Maxim Krušina wrote:

Please, is it possible/simple to convert this functionality into plugin?

Here you are: http://code.google.com/p/redmics/

Feedback is welcome.

Hi Franck, thank you very much for your great work on this plugin. It is working fine for me. It could be worth to mention in your documentation that you need to enable the "Calendar" module in the project's configuration (it is not that obvious when you only use the issues and expect to see the iCalendar links).

Again, due to my HTTPS server configuration, I have to use the https:// URL instead of replacing it with webcal://

I'm a little bit disappointed because I'm not using start/end dates inside Redmine. So as it is today, I can't get much benefit from this plug-in since the calendar is always empty...

I'll post a feature request in Google code to include the Tasks export in your ICS file, that would be a great feature making your plugin a perfect companion for redmine :)

Thanks again,
Fred.

Actions #63

Updated by Jean-Philippe Lang about 11 years ago

  • Status changed from 7 to New

Assigned issue with no assignee back to New status.

Actions #64

Updated by Frank Schwarz almost 11 years ago

For the record: the redmics plugin is now hosted on GitHub: https://github.com/buschmais/redmics. Happy forking!

Actions #65

Updated by Al Pocheche almost 8 years ago

Anything like that for redmine 3.x?

Redmine version 3.2.1.stable
Ruby version 2.1.8-p440 (2015-12-16) [x86_64-linux]
Rails version 4.2.5.2
Environment production
Database adapter Mysql2

Actions #66

Updated by Al Pocheche almost 8 years ago

Done! I installed this one https://github.com/buschmais/redmics and working fine. Thanks any way.

Actions #67

Updated by Manuel Doll over 6 years ago

Al Pocheche wrote:

Done! I installed this one https://github.com/buschmais/redmics and working fine. Thanks any way.

Does not work with 3.4.2 anymore. 404-Error when trying to access Tickets after installing the plugin. Does anyone have an idea why? Many thanks.

Actions #68

Updated by Ken Gold over 5 years ago

Has anyone looked at this recently? I would like to get this going on 3.4.2 again and maybe into main release after 4.0...

Actions

Also available in: Atom PDF