Skip to content
This repository has been archived by the owner on Jan 13, 2023. It is now read-only.

Commit

Permalink
List (#76)
Browse files Browse the repository at this point in the history
* list

* show only if visible

* list and hide for special marker

* last check
  • Loading branch information
astridx committed Apr 26, 2021
1 parent 932d614 commit b19cf55
Show file tree
Hide file tree
Showing 7 changed files with 274 additions and 2 deletions.
78 changes: 78 additions & 0 deletions src/language/de-DE/de-DE.mod_agosm.ini
Original file line number Diff line number Diff line change
Expand Up @@ -334,3 +334,81 @@ PLG_AGOSMSADDRESSMARKER_PRIVACYBUTTON_SHOW_MAP="Karte einblenden"
PLG_AGOSMSADDRESSMARKER_PRIVACYBUTTON_HIDE_MAP="Karte ausblenden"
PLG_AGOSMSADDRESSMARKER_PRIVACYTEXT_SHOW_MAP="Wir brauchen Ihr Einverständnis! Wir benutzen Drittanbieter um Kartenmaterial einzubinden. Diese können persönliche Daten über Ihre Aktivitäten sammeln. Weitere Informationen finden Sie in unseren Datenschutzbestimmungen."
PLG_AGOSMSADDRESSMARKER_PRIVACYTEXT_HIDE_MAP=""

;GeoJSON
MOD_AGOSM_GEOJSON="Show GeoJSON"
MOD_AGOSM_CONFIG_CONTROL_SHOWGEOJSON_LABEL="Show GeoJSON"
MOD_AGOSM_CONFIG_CONTROL_SHOWGEOJSON_DESC="Show GeoJSON"
MOD_AGOSM_CONFIG_CONTROL_SHOWGEOJSONFILE_LABEL="Show GeoJSON aus Datei"
MOD_AGOSM_CONFIG_CONTROL_SHOWGEOJSONFILE_DESC="Show GeoJSON from file in folder '/images' or from the below textfield"
MOD_AGOSM_CONFIG_CONTROL_SHOWGEOJSON_TEXT_LABEL="GeoJSON Object"
MOD_AGOSM_CONFIG_CONTROL_SHOWGEOJSON_TEXT_DESC="See Example"
MOD_AGOSM_GEOJSON_FIELDSETDESCRIPTION="See https://geojsonlint.com/.<br> Testtool: https://tools.ietf.org/html/rfc7946.<br>
Example:<br><br>
{
"_QQ_"type"_QQ_": "_QQ_"Point"_QQ_",
"_QQ_"coordinates"_QQ_": [
-105.01621,
39.57422
]
}<br>or<br>
{
"_QQ_"type"_QQ_": "_QQ_"FeatureCollection"_QQ_",
"_QQ_"features"_QQ_": [{
"_QQ_"type"_QQ_": "_QQ_"Feature"_QQ_",
"_QQ_"geometry"_QQ_": {
"_QQ_"type"_QQ_": "_QQ_"Point"_QQ_",
"_QQ_"coordinates"_QQ_": [102.0, 0.5]
},
"_QQ_"properties"_QQ_": {
"_QQ_"prop0"_QQ_": "_QQ_"value0"_QQ_"
}
}, {
"_QQ_"type"_QQ_": "_QQ_"Feature"_QQ_",
"_QQ_"geometry"_QQ_": {
"_QQ_"type"_QQ_": "_QQ_"LineString"_QQ_",
"_QQ_"coordinates"_QQ_": [
[102.0, 0.0],
[103.0, 1.0],
[104.0, 0.0],
[105.0, 1.0]
]
},
"_QQ_"properties"_QQ_": {
"_QQ_"prop0"_QQ_": "_QQ_"value0"_QQ_",
"_QQ_"prop1"_QQ_": 0.0
}
}, {
"_QQ_"type"_QQ_": "_QQ_"Feature"_QQ_",
"_QQ_"geometry"_QQ_": {
"_QQ_"type"_QQ_": "_QQ_"Polygon"_QQ_",
"_QQ_"coordinates"_QQ_": [
[
[100.0, 0.0],
[101.0, 0.0],
[101.0, 1.0],
[100.0, 1.0],
[100.0, 0.0]
]
]
},
"_QQ_"properties"_QQ_": {
"_QQ_"prop0"_QQ_": "_QQ_"value0"_QQ_",
"_QQ_"prop1"_QQ_": {
"_QQ_"this"_QQ_": "_QQ_"that"_QQ_"
}
}
}]
}"

;HideShow List
MOD_AGOSM_MARKERLISTCF_HEADING="<h2>Overview Custom Field Markers</h2>"
MOD_AGOSMCF_MARKERLIST_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLISTCOMONENT_HEADING="<h2>Overview Component Markers</h2>"
MOD_AGOSM_MARKERLISTCOMONENT_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLISTSPECIAL_HEADING="<h2>Overview Special Markers</h2>"
MOD_AGOSM_MARKERLISTSPECIAL_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLIST="Show Markerlist"
MOD_AGOSM_MARKERLIST_DESC="Show Markerlist below the map for Component, Special Marker and Custom Field Markers."
MOD_AGOSM_MARKERLIST_OPEN="Show on map."
9 changes: 9 additions & 0 deletions src/language/en-GB/en-GB.mod_agosm.ini
Original file line number Diff line number Diff line change
Expand Up @@ -408,3 +408,12 @@ Example:<br><br>
}
}]
}"
;HideShow List
MOD_AGOSM_MARKERLISTCF_HEADING="<h2>Overview Custom Field Markers</h2>"
MOD_AGOSMCF_MARKERLIST_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLISTCOMONENT_HEADING="<h2>Overview Component Markers</h2>"
MOD_AGOSM_MARKERLISTCOMONENT_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLISTSPECIAL_HEADING="<h2>Overview Special Markers</h2>"
MOD_AGOSM_MARKERLISTSPECIAL_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLIST="Show Markerlist"
MOD_AGOSM_MARKERLIST_OPEN="Show on map."
120 changes: 119 additions & 1 deletion src/media/mod_agosm/js/agosm.js
Original file line number Diff line number Diff line change
Expand Up @@ -442,6 +442,7 @@ document.addEventListener('DOMContentLoaded', function () {

// Special Pins
if (showpin === '1') {
var index = 0;
for (var specialpin in specialpins) {
// skip loop if the property is from prototype
if (!specialpins.hasOwnProperty(specialpin))
Expand Down Expand Up @@ -504,6 +505,50 @@ document.addEventListener('DOMContentLoaded', function () {
this.closePopup();
});
}

index++;
var clickmarkerlista = document.querySelector('.agmarkerlista_specialpin' + index);

if (clickmarkerlista) {
clickmarkerlista.addEventListener('click', function () {
window['mymap' + moduleId].setView(tempMarker.getLatLng());
tempMarker.openPopup();
});
}
window['mymap' + moduleId].on("moveend", function (event) {
var bounds = event.target.getBounds();
var indexhidemove = 0;
for (var specialpin in specialpins) {
indexhidemove++;
var hidemove = document.querySelector('.agmarkerlistli_specialpin' + indexhidemove);
if(hidemove){
var cords = L.latLng(specialpins[specialpin].latlonpin.split(",", 3));
if (!bounds.contains(cords)) {
hidemove.hidden = true;
} else {
hidemove.hidden = false;
}
}
}
});
window['mymap' + moduleId].on("zoomend", function (event) {
var bounds = event.target.getBounds();
var indexhidezoom = 0;
for (var specialpin in specialpins) {
indexhidezoom++;
var hidezoom = document.querySelector('.agmarkerlistli_specialpin' + indexhidezoom);
if(hidezoom){
var cords = L.latLng(specialpins[specialpin].latlonpin.split(",", 3));
if (!bounds.contains(cords)) {
hidezoom.hidden = true;
} else {
hidezoom.hidden = false;
}
}
}
});


}
}

Expand Down Expand Up @@ -631,6 +676,42 @@ document.addEventListener('DOMContentLoaded', function () {
this.closePopup();
});
}

var clickgmarkerlista = document.querySelector('.agmarkerlista_component' + obj.id);

if (clickgmarkerlista) {
clickgmarkerlista.addEventListener('click', function () {
window['mymap' + moduleId].setView(tempMarker.getLatLng());
tempMarker.openPopup();
});
}
window['mymap' + moduleId].on("moveend", function (event) {
var bounds = event.target.getBounds();
for (var specialcomponentpin in specialcomponentpins) {
if(specialcomponentpins[specialcomponentpin].id){
var cords = L.latLng(specialcomponentpins[specialcomponentpin].coordinates.split(",", 3));
if (!bounds.contains(cords)) {
document.querySelector('.agmarkerlistli_component' + specialcomponentpins[specialcomponentpin].id).hidden = true;
} else {
document.querySelector('.agmarkerlistli_component' + specialcomponentpins[specialcomponentpin].id).hidden = false;
}
}
}
});
window['mymap' + moduleId].on("zoomend", function (event) {
var bounds = event.target.getBounds();
for (var specialcomponentpin in specialcomponentpins) {
if(specialcomponentpins[specialcomponentpin].id){
var cords = L.latLng(specialcomponentpins[specialcomponentpin].coordinates.split(",", 3));
if (!bounds.contains(cords)) {
document.querySelector('.agmarkerlistli_component' + specialcomponentpins[specialcomponentpin].id).hidden = true;
} else {
document.querySelector('.agmarkerlistli_component' + specialcomponentpins[specialcomponentpin].id).hidden = false;
}
}
}
});

}

if (JSON.parse(sessionStorage.getItem('mapState')) && savestate === "1") {
Expand All @@ -642,7 +723,7 @@ document.addEventListener('DOMContentLoaded', function () {

}

// Show Pins from component
// One Pin from component
if (showcomponentpinone === '1') {

var clustermarkers = L.markerClusterGroup({
Expand Down Expand Up @@ -873,6 +954,43 @@ document.addEventListener('DOMContentLoaded', function () {

let popuptext = "<a href=' " + url + " '> " + title + " </a>";
tempMarkercf.bindPopup(popuptext.replace(/<img src="images/g, '<img src="' + uriroot + 'images'));

var clickgmarkerlista = document.querySelector('.agmarkerlista' + objcf.id);

if (clickgmarkerlista) {
clickgmarkerlista.addEventListener('click', function () {
window['mymap' + moduleId].setView(tempMarkercf.getLatLng());
tempMarkercf.openPopup();
});
}
window['mymap' + moduleId].on("moveend", function (event) {
var bounds = event.target.getBounds();
for (var specialcustomfieldpin in specialcustomfieldpins) {
if(specialcustomfieldpins[specialcustomfieldpin].id){
var cords = L.latLng(specialcustomfieldpins[specialcustomfieldpin].cords.split(",").slice(0, 2));
if (!bounds.contains(cords)) {
document.querySelector('.agmarkerlistli' + specialcustomfieldpins[specialcustomfieldpin].id).hidden = true;
} else {
document.querySelector('.agmarkerlistli' + specialcustomfieldpins[specialcustomfieldpin].id).hidden = false;
}
}
}
});

window['mymap' + moduleId].on("zoomend", function (event) {
var bounds = event.target.getBounds();
for (var specialcustomfieldpin in specialcustomfieldpins) {
if(specialcustomfieldpins[specialcustomfieldpin].id){
var cords = L.latLng(specialcustomfieldpins[specialcustomfieldpin].cords.split(",").slice(0, 2));
if (!bounds.contains(cords)) {
document.querySelector('.agmarkerlistli' + specialcustomfieldpins[specialcustomfieldpin].id).hidden = true;
} else {
document.querySelector('.agmarkerlistli' + specialcustomfieldpins[specialcustomfieldpin].id).hidden = false;
}
}
}
});

tempMarkercf.addTo(clustermarkers);
}
}
Expand Down
11 changes: 10 additions & 1 deletion src/modules/mod_agosm/language/de-DE/de-DE.mod_agosm.ini
Original file line number Diff line number Diff line change
Expand Up @@ -405,4 +405,13 @@ Beispiel:<br><br>
}
}]
}"

;HideShow List
MOD_AGOSM_MARKERLISTCF_HEADING="<h2>Overview Custom Field Markers</h2>"
MOD_AGOSMCF_MARKERLIST_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLISTCOMONENT_HEADING="<h2>Overview Component Markers</h2>"
MOD_AGOSM_MARKERLISTCOMONENT_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLISTSPECIAL_HEADING="<h2>Overview Special Markers</h2>"
MOD_AGOSM_MARKERLISTSPECIAL_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLIST="Show Markerlist"
MOD_AGOSM_MARKERLIST_DESC="Show Markerlist below the map for Component, Special Marker and Custom Field Markers."
MOD_AGOSM_MARKERLIST_OPEN="Show on map."
11 changes: 11 additions & 0 deletions src/modules/mod_agosm/language/en-GB/en-GB.mod_agosm.ini
Original file line number Diff line number Diff line change
Expand Up @@ -408,3 +408,14 @@ Example:<br><br>
}
}]
}"

;HideShow List
MOD_AGOSM_MARKERLISTCF_HEADING="<h2>Overview Custom Field Markers</h2>"
MOD_AGOSMCF_MARKERLIST_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLISTCOMONENT_HEADING="<h2>Overview Component Markers</h2>"
MOD_AGOSM_MARKERLISTCOMONENT_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLISTSPECIAL_HEADING="<h2>Overview Special Markers</h2>"
MOD_AGOSM_MARKERLISTSPECIAL_BOTTOM="<p></p>"
MOD_AGOSM_MARKERLIST="Show Markerlist"
MOD_AGOSM_MARKERLIST_DESC="Show Markerlist below the map for Component, Special Marker and Custom Field Markers."
MOD_AGOSM_MARKERLIST_OPEN="Show on map."
8 changes: 8 additions & 0 deletions src/modules/mod_agosm/mod_agosm.xml
Original file line number Diff line number Diff line change
Expand Up @@ -227,6 +227,14 @@
<option value="1">JYES</option>
<option value="0">JNO</option>
</field>

<field type="spacer" name="savemarkerlist" hr="true" />

<field name="agmarkerlist" type="list" label="MOD_AGOSM_MARKERLIST" default="0" description="MOD_AGOSM_MARKERLIST_DESC">
<option value="0">JNO</option>
<option value="1">JYES</option>
</field>

</fieldset>

<!-- Routing Simple-->
Expand Down
39 changes: 39 additions & 0 deletions src/modules/mod_agosm/tmpl/default.php
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,45 @@ class="btn btn-success b<?php echo $unique ?>"
</button>
<?php endif; ?>

<?php if ($params->get('agmarkerlist', '0') && $params->get('showcustomfieldpin', '1') && isset($listcf)) : ?>
<?php echo JText::_('MOD_AGOSM_MARKERLISTCF_HEADING') . '<ul class="agmarkerlistul">'; ?>
<?php
foreach($listcf as $marker) {
if(property_exists($marker, 'popuptext')){
echo '<li class="agmarkerlistli' . $marker->id . '"><a class="agmarkerlista' . $marker->id . '" href="#">' . $marker->popuptext . '</a>';
}
}
?>
<?php echo '</ul>' . JText::_('MOD_AGOSMCF_MARKERLIST_BOTTOM'); ?>
<?php endif; ?>

<?php if ($params->get('agmarkerlist', '0') && $params->get('showcomponentpin', '1') && isset($list)) : ?>
<?php echo JText::_('MOD_AGOSM_MARKERLISTCOMONENT_HEADING') . '<ul class="agmarkerlistul">'; ?>
<?php
foreach($list as $marker) {
if(property_exists($marker, 'popuptext')){
echo '<li class="agmarkerlistli_component' . $marker->id . '">' . $marker->popuptext . '<a class="agmarkerlista_component' . $marker->id . '" href="#">' . JText::_('MOD_AGOSM_MARKERLIST_OPEN') . '</a>';
}
}
?>
<?php echo '</ul>' . JText::_('MOD_AGOSM_MARKERLISTCOMONENT_BOTTOM'); ?>
<?php endif; ?>

<?php if ($params->get('agmarkerlist', '0') && $params->get('showpin', '1')) : ?>
<?php echo JText::_('MOD_AGOSM_MARKERLISTSPECIAL_HEADING') . '<ul class="agmarkerlistul">'; ?>
<?php
$index = 0;
foreach($params->get('specialpins', null) as $marker) {
$index++;
if(property_exists($marker, 'popuptext')){
echo '<li class="agmarkerlistli_specialpin' . $index . '">' . $marker->popuptext . '<a class="agmarkerlista_specialpin' . $index . '" href="#">' . JText::_('MOD_AGOSM_MARKERLIST_OPEN') . '</a>';
}
}
?>
<?php echo '</ul>' . JText::_('MOD_AGOSM_MARKERLISTSPECIAL_BOTTOM'); ?>
<?php endif; ?>


<?php
JText::script('MOD_AGOSM_MODULE_BY');
JText::script('MOD_AGOSM_DEFAULT_TEXT_PLACEHOLDER');
Expand Down

0 comments on commit b19cf55

Please sign in to comment.