web_tool/js/main.js (4 lines): - line 61: // TODO: Reset the class list - line 248: // requestPatch(idx, polygon, i, gBackendURL); //TODO: this should be changed if we want to have a web tool that queries different backends - line 363: // TODO: Not sure if this is necessary. When we call `session.delete()` on the Beaker session on the server it will send an "expiration on the cookie requesting the browser to clear it" back to the browser. Will this be processed immediately, i.e. before we get here in the execution flow, or do we need to do this wait? See https://beaker.readthedocs.io/en/latest/sessions.html#removing-expired-old-sessions - line 367: // TODO: Notify fail web_tool/landing_page.html (3 lines): - line 326: $('#dataset-row').collapse('toggle'); // TODO: This call returns before the CSS animation is finished, and ignores all subsequent calls while animating. This means that if the user clicks twice very fast the icon will be toggled twice, however the row will only change collapsed state once - creating a mismatch. Fix this. - line 330: $('#model-row').collapse('toggle'); // // TODO: This call returns before the CSS animation is finished, and ignores all subsequent calls while animating. This means that if the user clicks twice very fast the icon will be toggled twice, however the row will only change collapsed state once - creating a mismatch. Fix this. - line 334: $('#checkpoint-row').collapse('toggle'); // // TODO: This call returns before the CSS animation is finished, and ignores all subsequent calls while animating. This means that if the user clicks twice very fast the icon will be toggled twice, however the row will only change collapsed state once - creating a mismatch. Fix this. web_tool/Datasets.py (2 lines): - line 22: return False # TODO: maybe we should make these errors more descriptive (explain why we can't load a dataset) - line 35: return False # TODO: maybe we should make these errors more descriptive (explain why we can't load a dataset) web_tool/DataLoader.py (2 lines): - line 121: resolution=(x_res, y_res) # TODO: we use the resolution of the src_input, while this parameter needs the resolution of the destination. This will break if src_crs units are degrees instead of meters. - line 267: #TODO: Figure out what happens if we call this with a geometry that doesn't intersect the data source. web_tool/SessionHandler.py (2 lines): - line 22: TODO: SESSION_HANDLER needs to be thread safe because we call it from here and the main sever threads - line 175: # TODO: is there anything that needs to be cleaned up at the session level (e.g. saving data)? server.py (2 lines): - line 461: os.makedirs("tmp/output/", exist_ok=True) # TODO: Remove this after we rework - line 473: app.route("/predPatch", method="OPTIONS", callback=do_options) # TODO: all of our web requests from index.html fire an OPTIONS call because of https://stackoverflow.com/questions/1256593/why-am-i-getting-an-options-request-instead-of-a-get-request, we should fix this web_tool/js/handlers.js (1 line): - line 189: document.getElementById("map").onselectstart = function(){ return false;} // remove the default behavior of the shift key. TODO: should this be on "document" or "body" instead of "map"? web_tool/index.html (1 line): - line 308: console.error(error); //TODO: alert a reasonable error message