2017-10-08 20:21:51 +00:00
{% extends "base_with_jumbo.html" %}
2017-05-22 23:12:04 +00:00
{% load bootstrap3 %}
2017-05-20 23:47:14 +00:00
{% load i18n %}
{% load leaflet_tags %}
2017-06-16 16:06:22 +00:00
{% block stylesheets %}
{{ block.super }}
{% leaflet_css %}
< style > html , body , # main { width : 100 ; height : 100 % ; } < / style >
{% endblock %}
{% block title %}{% trans "Ojuso Platform Map" %}{% endblock %}
{% block content %}
< div id = "main" > < / div >
2017-05-22 23:12:04 +00:00
< div id = "modals" > < / div >
2017-06-16 16:06:22 +00:00
{% endblock %}
{% block scripts %}
{% leaflet_map "main" callback="main_app_init" creatediv=False %}
{% leaflet_js %}
< script type = "text/javascript" >
// This takes HTML as a string and returns an element
function create(htmlStr) {
var frag = document.createDocumentFragment(),
temp = document.createElement('div');
temp.innerHTML = htmlStr;
while (temp.firstChild) {
frag.appendChild(temp.firstChild);
}
return frag;
}
// This is called when the map is initialized
2017-05-20 23:47:14 +00:00
function main_app_init(map, options) {
2017-06-16 16:06:22 +00:00
// Pull data as GeoJSON and add to map with a modal
$.getJSON('/api/case-studies/', function (data) {
L.geoJson(data, {
2017-05-22 23:12:04 +00:00
onEachFeature: function (feature, layer) {
2017-06-16 16:06:22 +00:00
var modalname = "case-study-"+feature.id
layer.bindPopup(
2017-10-08 20:21:51 +00:00
"< p > "+feature.properties.entry_name+"< / p > "+
"< a class = 'btn btn-primary' href = 'case-study/"+feature.properties.slug+"' role = 'button' > "
+"{% trans "View" %}"+"< / a > "
2017-05-22 23:12:04 +00:00
);
2017-06-16 16:06:22 +00:00
var modal = create(
"< div class = 'modal fade' id = '"+modalname+"' tabindex = '-1' role = 'dialog' aria-labelledby = '"+modalname+"-label' > "+
"< div class = 'modal-dialog' role = 'document' > "+
"< div class = 'modal-content' > "+
"< div class = 'modal-header' > "+
"< button type = 'button' class = 'close' data-dismiss = 'modal' aria-label = '{% trans "Close" %}' > "+
"< span aria-hidden = 'true' > × < / span > "+
"< / button > "+
"< h4 class = 'modal-title' id = '"+modalname+"-label' > "+
feature.properties.project_name+
"< / h4 > "+
"< / div > "+
"< div class = 'modal-body' > "+
"< p > "+feature.properties.description+"< / p > "+
"< dl class = 'dl-horizontal' > "+
"< dt > Supply Chain< / dt > < dd > "+feature.properties.supply_chain+"< / dd > "+
"< dt > Generation Type< / dt > < dd > "+feature.properties.generation_type+"< / dd > "+
"< dt > Associated Companies< / dt > < dd > "+feature.properties.associated_companies+"< / dd > "+
"< dt > Financiers< / dt > < dd > "+feature.properties.financiers+"< / dd > "+
"< dt > Important Lenders< / dt > < dd > "+feature.properties.important_lenders+"< / dd > "+
"< dt > Country< / dt > < dd > "+feature.properties.country+"< / dd > "+
"< dt > Affects Indigenous< / dt > < dd > "+feature.properties.affects_indigenous+"< / dd > "+
"< dt > Affects Indigenous Reason< / dt > < dd > "+feature.properties.affects_indigenous_reason+"< / dd > "+
"< dt > Proposed Start< / dt > < dd > "+feature.properties.proposed_start+"< / dd > "+
"< dt > Proposed Completion< / dt > < dd > "+feature.properties.proposed_completion+"< / dd > "+
"< dt > Link to Forum< / dt > < dd > "+feature.properties.link_to_forum+"< / dd > "+
"< dt > Image< / dt > < dd > "+feature.properties.image+"< / dd > "+
"< dt > References< / dt > < dd > "+feature.properties.references+"< / dd > "+
"< dt > Commodities< / dt > < dd > "+feature.properties.commodities+"< / dd > "+
"< dt > Like to Engage Developer< / dt > < dd > "+feature.properties.like_to_engage_developer+"< / dd > "+
"< dt > Like to Engage Investors< / dt > < dd " + feature . properties . like_to_engage_investors + " > < / dd > "+
"< dt > Author< / dt > < dd > "+feature.properties.author+"< / dd > "+
"< / dl > "+
"< / div > "+
"< div class = 'modal-footer' > "+
"< button type = 'button' class = 'btn btn-default' data-dismiss = 'modal' > "+
"{% trans "Close" %}"+
"< / button > "+
"< button type = 'button' class = 'btn btn-primary' > "+
"{% trans "Save changes" %}"+
"< / button > "+
"< / div > "+
"< / div > "+
"< / div > "+
"< / div > "
);
document.getElementById('modals').appendChild(modal);
}
}).addTo(map);
});
2017-10-31 14:57:26 +00:00
<!-- // Add an on - click listener for map click events. Show popup with button to submit a casestudy -->
<!-- map.on('click', function(e) { -->
<!-- var popup = L.popup() -->
<!-- .setLatLng(e.latlng) -->
<!-- .setContent("<a class='btn btn - primary btn - sm' href='{% url 'create' %}?lat="+e.latlng.lat+"&lng="+e.latlng.lng+"' role='button'>{% trans "Submit a Case Study" %}</a>") -->
<!-- .openOn(map); -->
<!-- }); -->
2017-06-16 16:06:22 +00:00
}
< / script >
{% endblock %}