Place creation requires kml, but file chooser allows any file type & gives non-specific error message

This is sort of halfway between a bug and a feature request, but I’m posting as a bug because I don’t think it really needs to be voted on.

When you try to create a place, there’s a file chooser to select your kml. Ideally this file chooser would only let you select files of type kml, but it actually will let you select any file, including kmz, shp, etc. On top of that, the error message for uploading the wrong file type is the same message you would get if you had a real kml with some other issue (e.g. multiple features in one file): “There were problems importing that place: Latitude can’t be blank, Longitude can’t be blank, File was invalid or did not contain any polygons, Place geometry can’t be blank”

In a best case scenario, in addition to limiting the file chooser to only kml, the message should also be tailored to the particular issue(s) the file has.


The html specifies accepting file types of “application/” so this depends very much on how the host system (your browser and operating system) is configured. Perhaps those other files are registered with the same mime type on your system? Perhaps your browser is a little relaxed in what it allows to be selected?

Is anyone successfully getting their file choices limited to kml by MIME type? I tried 8 combinations of browser/OS and not a single one used the MIME type to restrict my upload choice. However, all 6 that I tried on Windows and MacOS successfully limited my choices when I told it to limit by file extension (.kml) instead of MIME type (both Android tests still allowed any file type).

So I think a fix to the first half of the problem would be to limit by file extension instead of MIME type.

For the second part, it turns out the error messages are supposed to be tailored to the file as well, but a non-kml file also does (for some definition) lack a latitude/longitude/polygon. It’s probably not worth changing the error messages as long as the file type problem gets fixed.