synchrone / sandstorm-radicale

A calendars and contacts app for Sandstorm.io
https://apps.sandstorm.io/app/8kr4rvyrggvzfvc160htzdt4u5rfvjc2dgdn27n5pt66mxa40m1h
13 stars 3 forks source link

no multiple calendar option #17

Open mari0o0 opened 8 years ago

mari0o0 commented 8 years ago

Would you please added the option of having many calender inside one calender grain ( like Google calendar ). Even-more we can't change the calender name but only the grain name . I do understand that i can create another calender in new grain, however this is not practical when sync because they will conflict with each other especially when we don't have the option to change the calendar name ( we only can only change the calendar main name ) .

Best regards,

mari0o0

n-a-m-e commented 8 years ago

I also would like this feature so I did a bit of investigating. Hopefully someone else can help further since I'm kind of stuck now :-)

from http://radicale.org/user_documentation/

InfCloud cannot create calendars and/or address books.
You can easily create them by directly calling the URL's from your browser:
    http(s)://host.example.com:5232/user/calendar.ics/
    http(s)://host.example.com:5232/user/addresses.vcf/
1. Replace "http(s)" with the correct protocol.
2. Replace "host.example.com:5232" with you host:port where Radicale is running.
3. Replace "user" with the correct login name or the shared resource name i.e. 'public'.
4. Replace "calendar.ics" and "addresses.vcf" with the collection names you want to use.
5. do NOT forget the '/' at line end.
With your browser call one of the above URLs.
Your browser warn you that you are trying to access an Insecure site.
Download and accept the certificate offered by the Radicale server.
After installing and accepting it you should restart your browser.

the sandstorm grain url is something like https://example.sandcats.io/grain/ShG4hfW4Z87EXWEFA9msRz

the InfCloud url is loaded in an iframe and goes something like https://590eb7ef6f159f7ffa64ef53a9ec2f51.example.sandcats.io/

the Calendar file is located at something like https://590eb7ef6f159f7ffa64ef53a9ec2f51.example.sandcats.io/radicale/owner/calendar.ics/

and if we go to new calendar url like https://590eb7ef6f159f7ffa64ef53a9ec2f51.example.sandcats.io/radicale/owner/newcalendar.ics/

we get back an empty calendar, but that calendar never shows up in InfCloud.

also the subdomain that InfCloud and Radicale are hosted on eg. 590eb7ef6f159f7ffa64ef53a9ec2f51 changes. I think it changes with every session.

synchrone commented 8 years ago

Having multiple calendars per grain goes against Sandstorm's vision. I agree with it, so I will not implement the support, however there is technically not many obstacles:

n-a-m-e commented 8 years ago

Hi synchrome, thanks for your response. I'm glad you don't want to go against Sandstorms vision, I don't either :-) Though I do not think this goes against Sandstorm vision. Let me explain.

1. A calendar is simply a list of appointments.
2. The awesome Wekan (kanban board application)
   let's you create as many lists as you want inside a single grain.
3. If Wekan does it, It's definately not against sandstorms vision.

I also just wanted to let you know the reasons for having multiple calendar on one grain in case you hadn't thought of them. At the moment if say you want to easily distinguish between your personal and your business appointments you can either:

  1. Create two separate grains and pull them both down to a desktop calendar app where they will be colour coded and easily identifiable, but if you do not have access to a desktop client (eg. while using public/friends computer/phone) you have to constantly switch between grains to see all your appointments with no possibility of displaying all of your appointments on a single screen like you can with a desktop client
  2. You can place all of your appointments into a single calendar so that you can at least see all of your appointments on a single screen but this then cripples any desktop client from making your appointments colour coded and easily identifiable since there is only one calendar file.

Basically this either forces you to always use a desktop client or cripple your desktop client so that you can also use a crippled web client.

All of the desktop, phone, and web clients support multiple calendars for a reason, and by not allowing InfCloud to use multiple calendars it is severely crippled.

P.S. Thank you for porting a calendar app to Sandstorm, It was the deciding factor for me installing Sandstorm, and Sandstorm is so awesome :-)

kentonv commented 7 years ago

FWIW, in the long term I do think this should be one-grain-per-calendar, using Powerbox to connect calendars to each other in order to see a merged view. But, until that's possible, I could see an argument for enabling multiple calendars in a grain today. The big question is whether this will create a mess that is painful to back out of later on, when the powerbox approach is ready.