Calendar: Feature Request: Link or embed map services

Created on 5 Sep 2017  路  13Comments  路  Source: nextcloud/calendar

At the moment the input field for event locations is only a text field. I suggest to add a button like "Search on OSM" next to the location-field.
Maybe - as an improvement - we could add a preview of the location with a embed map with markers.

Examples:
unbenannt
unbenannt1


Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

1 - to develop enhancement-approved help wanted

Most helpful comment

Not yet, but it's on our todo list :)

All 13 comments

@nextcloud/maps Any way to integrate the maps app here? :)

Not yet, but it's on our todo list :)

@slideup-benni great proposal, I had the same in mind. :) Do you want to help by contributing to the Maps app or Calendar app?

Now that the Maps app is back on track this issue should be reinvestigated. Maybe the search field from the Maps app could be used and a link provided that opens the Maps app in a new window/tab at the exact location?

My idea for this issue was to add a map component to the nextcloud-vue npm package. Other apps could use it without having to enable the maps app. In a future version the maps app could depend on this component as well or extend it.

@v1r0x That's mostly about the map itself. I like the idea of putting it into Nextcloud-vue. This allows to reuse it in other places, e.g. show the geographical information from an images exif data, etc.

The most interesting part here is the following though:

I suggest to add a button like "Search on OSM" next to the location-field.

You would just type "Restaurant ABC" and the calendar would query OSM to figure out the full address. If there are business hours saved in OSM, you could even show a small warning if the event time is outside the given business hours, etc. etc.

There are the following problems here:

  • obviously you don't want to send every location you are typing in to OSM. I would like to see it as a different app to provide this functionality (location-provider), so admins must opt-in to this. Even on top of this, there should be one additional click to trigger the search.
  • having a system of location-providers allows to include different services. I have made the experience that OSM works very well especially in Europe and north America, even in south america, but not so in other parts of the world, where the data set is either outdated or limited. With location-provider systems, we would be providing one for osm, but let people develop their own where they need it.

This is very closely related to https://github.com/nextcloud/calendar/issues/367.

My idea here is the following:
As you type in a location, a dropdown will appear with suggestions.
These suggestions should include:

  • your contacts (as it does already)
  • your favourites from the maps app
  • previous locations you used in the calendar
  • rooms from the calendar resource management
  • as the last option in the list: Search on OSM. Selecting that will leave the dropdown open, it will simply replace the Search on OSM option with the top 5 or top 10 hits from OSM.

@georgehrke You are right. I forget that the location field is already in the calendar and independant of a map plugin/component.

I like your idea of providing OSM (or whatever location-providers will exist) as separate app to hook-in the location search field. I'm not sure how to do the communication stuff between the search field and the separate location-provider app. But beside that it shouldn't be too complicated to get a bunch of search results and opening hours (already done in the maps app) and display them in the search field.

Wouldn't it be better to integrate the search from the maps app so there is no reliance on any external component?

That way it relies on the maps app and it only would be possible to show a map in the calendar app, if the maps app is enabled.

Also cc @eneiluj @tacruc for further input. :) @v1r0x鈥檚 point of having a nextcloud-vue component for a map element is good!

If there is no map component in nextcloud-vue (is there any?), here is one: https://vuejsexamples.com/vue-2-components-for-leaflet-maps/

I think the implementation of OSM from the Metdata app by @gino0631 could be of interest for the Calendar and Contacts app too:

https://github.com/gino0631/nextcloud-metadata/commit/953502329f5a91b1085bb426542f33b65b96422b

Was this page helpful?
0 / 5 - 0 ratings

Related issues

gschenck picture gschenck  路  4Comments

GLLM picture GLLM  路  4Comments

skjnldsv picture skjnldsv  路  4Comments

georgehrke picture georgehrke  路  4Comments

scorewinner picture scorewinner  路  3Comments