summaryrefslogtreecommitdiff
path: root/ishtar_common/templates/ishtar/blocks/sheet_map.html
blob: 296516e8660ef158fcdb0ec86d2fb6c73e141f15 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
const disp_map = function() {
    const html = render_map("map-{{window_id}}-{{geo_item.SLUG}}-{{geo_item.pk}}", false, true);
    $("#map-content-{{window_id}}-{{geo_item.SLUG}}-{{geo_item.pk}}").html(html);
    {% if geo_item.most_precise_geo == 'point' %}
    const {{geo_item.SLUG}}{{geo_item.pk}} = {{geo_item.point_2d_geojson|safe}};
    display_map("map-{{window_id}}-{{geo_item.SLUG}}-{{geo_item.pk}}", {{geo_item.SLUG}}{{geo_item.pk}});
    {% else %}
    const {{geo_item.SLUG}}{{geo_item.pk}} = {{geo_item.multi_polygon_geojson|safe}};
    display_map("map-{{window_id}}-{{geo_item.SLUG}}-{{geo_item.pk}}", null, {{geo_item.SLUG}}{{geo_item.pk}});
    {% endif %}
}
disp_map();

{% if geo_item.SLUG == "operation" or geo_item.SLUG == "contextrecord" %}
const disp_geo_items = function(disp_cr, disp_bf, get_polygons) {
    if (disp_cr || disp_bf) {
        const get_poly = (get_polygons === "polygons");
        let url = null;
        if (get_poly) {
            url = "{% url 'api-get-geo-polygons' %}";
        }
        else {
            url = "{% url 'api-get-geo-points' %}";
        }
        display_geo_items("map-{{window_id}}-{{geo_item.SLUG}}-{{geo_item.pk}}", url, "{{geo_item.SLUG}}",
                       "{{geo_item.pk}}", disp_cr, disp_bf, get_poly);
    }
}
let geo_items_displayed_once = false;
const disp_bf = $("#disp-bf-for-{{geo_item.SLUG}}-{{geo_item.pk}}");
const get_polygons = $("#get-poly-for-{{geo_item.SLUG}}-{{geo_item.pk}}");

{% if geo_item.SLUG == "operation" %}
const disp_cr = $("#disp-cr-for-{{geo_item.SLUG}}-{{geo_item.pk}}");
const event_func_disp_geo_items = function () {
    if (geo_items_displayed_once) {
        disp_map();
    }
    else { geo_items_displayed_once = true; }
    disp_geo_items(disp_cr.prop('checked'), disp_bf.prop('checked'), get_polygons.val());
}
disp_cr.change( event_func_disp_geo_items );
disp_bf.change( event_func_disp_geo_items );
get_polygons.change( function () {
    disp_map();
    disp_geo_items(disp_cr.prop('checked'), disp_bf.prop('checked'), get_polygons.val());
})
{% else %}
const event_func_disp_geo_items = function () {
    if (geo_items_displayed_once) {
        disp_map();
    }
    else { geo_items_displayed_once = true; }
    disp_geo_items(false, disp_bf.prop('checked'), get_polygons.val());
}
disp_bf.change( event_func_disp_geo_items );
get_polygons.change( function () {
    disp_map();
    disp_geo_items(false, disp_bf.prop('checked'), get_polygons.val());
})
{% endif %}
{% endif %}