function MG_SaveGroupGrid(pCodeGrid, pArrayGroup, pathApplication) {
MG_SaveParam(pCodeGrid, "", pathApplication);
var listGroup = [];
pArrayGroup.forEach(function (group) {
listGroup.push(group.field + "/" + group.dir);
});
MG_SaveParam(pCodeGrid, listGroup.join(";"), pathApplication);
}
function MG_SaveParam(pCod, pVal, pathApplication = "") {
var urlAjax =""
if(pathApplication != ""){
urlAjax = pathApplication;
}
urlAjax += "/MGN_TableauDeBord/SaveParam";
$.ajax({
type: "POST",
url: urlAjax,
data: { pCod: pCod, pVal: pVal },
async: true,
dataType: "html",
success:
function (res) {
//SUCCESS ne rien faire
}
});
}
function AfficheDate() {
$.ajax({
//data: { pGroupePage: ptruc },l
type: "POST",
url: "/Date/Index",
async: true,
success:
function (res) {
$("#divZoneResult_").html(res);
}
//error: function (res) {
// console.log(res);
//}
});
}
function MG_ListGestion(pRedirectionList, allPath) {
MG_Redirect("/MoteurGNet/" + pRedirectionList, allPath);
MG_pathOrgine = allPath;
}
function essai() {
console.log("sa marche?")
}
function GetSessionIdToUrl() {
if (window.location.pathname.split("/").length > 0 && window.location.pathname.split("/")[1].startsWith("(S(")) {
return "/" + window.location.pathname.split("/")[1] + "/";
}
else {
return ""
}
}
function BackHome() {
MG_Redirect("/MoteurGNet/TableauDeBordAdmin");
}
function Tdb(pIdTdb) {
MG_Redirect("/MoteurGNet/EditTdb?pIdTdb="+pIdTdb);
}
function Page(pIdPage) {
MG_Redirect("/MoteurGNet/EditPage?pIdPage="+pIdPage);
}
function MG_Redirect(pUrl,allPath) {
var link = "/";
if (pUrl.startsWith("/")) {
link = "";
}
if(allPath.split("/").length > 4){
window.location.href = allPath + pUrl
}else{
if (window.location.pathname.split("/").length > 0) {
if(window.location.pathname.split("/")[1].startsWith("(S(")){
window.location.href = window.location.origin + "/" + window.location.pathname.split("/")[1] + link + pUrl;
}else{
window.location.href = window.location.origin + "/" /*+ window.location.pathname.split("/")[1]*/ + link + pUrl;
}
}
else {
window.location.href = window.location.origin + link + pUrl;
}
}
return false;
}
function MG_ongletBtClick(pThis, pOngletFils) {
$(".btMenu").removeClass("selected");
$(".BtGestion").addClass("selected");
var classList = pThis.className.split(/\s+/);
var ZoneOnglet = "";
for (var i = 0; i < classList.length; i++) {
if (classList[i].startsWith("btOnglet")) {
var tmp = classList[i].replace("btOnglet", "");
if (!tmp.startsWith("V2")) {
ZoneOnglet = tmp;
break;
}
}
}
var Vue = pThis.id;
$(".btOnglet" + ZoneOnglet).removeClass("btOngletV2Selected");
$(".cnvOnglet" + ZoneOnglet).css("display", "none");
$("#" + Vue).addClass("btOngletV2Selected");
$("div[id^=pave]").css("display", "none");
$("#pave" + Vue).css("display", "block");
$("#pave" + ZoneOnglet).css("display", "block");
if (pOngletFils && pOngletFils.length > 0) {
$("#" + pOngletFils).click();
}
if ($("#cnvOnglet" + ZoneOnglet + "_" + Vue).length > 0) {
$("#cnvOnglet" + ZoneOnglet + "_" + Vue).css("display", "block");
InitCanvasFlecheOngletV2('cnvOnglet' + ZoneOnglet + '_' + Vue, 2);
}
}
function InitCanvasFlecheOngletV2(pIdCnv, pNiveau) {
var canvasElement = document.querySelector("#" + pIdCnv);
var context = canvasElement.getContext("2d");
var hauteur = 15;
if (pNiveau > 1) {
hauteur = 8;
}
var largeur = hauteur * 2;
$("#" + pIdCnv).attr("height", hauteur + "px");
$("#" + pIdCnv).attr("width", largeur + "px");
// the triangle
context.beginPath();
context.moveTo(0, 0);
context.lineTo(hauteur, hauteur);
context.lineTo(largeur, 0);
context.closePath();
// the fill color
context.fillStyle = $(".btOngletV2Selected").css("background-color");
context.fill();
}
function MG_GetPointJson(pIdPage, pIdInstanceBloc, pController, pAction, pCarte, pMarkerCluster) {
var data = {};
data.pIdPage = pIdPage;
data.pIdInstanceBloc = pIdInstanceBloc;
$.ajax({
data: data,
type: "POST",
url: '/' + pController + '/' + pAction,
async: true,
success:
function (res) {
MG_placeListMarker('dijon', res, false, 'map_' + pIdPage + '_' + pIdInstanceBloc, MG_tpl_ClickMarker, pCarte, pMarkerCluster)
}
});
}
function MG_tpl_ClickMarker(marker, event, infoWindow, pCarte) {
if (marker.data.Adresse == "" && marker.data.Tooltip == "") {
infoWindow.setContent("Aucune info disponible")
}
else if (marker.data.Adresse == "") {
infoWindow.setContent(marker.data.Tooltip);
}
else {
infoWindow.setContent("
"+marker.data.Adresse + "
" + marker.data.Tooltip+"");
}
infoWindow.open(pCarte, marker);
}
var Paris = { "Latitude": 48.8566101, 'Longitude': 2.3514992 };
//Initialistation et chargement de la bonne carte globale
function MG_InitMap(pCentreCarte, pDivMap) {
if (typeof pCentreCarte != 'object') {
pCentreCarte = Paris;
}
var posorigine = { "lat": pCentreCarte.Latitude, "lng": pCentreCarte.Longitude };
var optionsCarte = {
clickableIcons: false,
zoom: 5,
center: posorigine
}
var maCarte = new google.maps.Map(document.getElementById(pDivMap), optionsCarte);
return maCarte;
}
function MG_placeListMarker(pOriginePosition, pParamCarte, pPlaceOrigine, pDivCarte, pFunctionClick, pCarte, pMarkerCluster) {
//GetMaCarte(pDivCarte);
pLstPosition = pParamCarte.ListPoint;
var listMarker = [];
var bounds = new google.maps.LatLngBounds();
//permet d'avoir un point si plusieurs au meme endroit, et éclatement au click
var oms = new OverlappingMarkerSpiderfier(pCarte);
if (pPlaceOrigine) {
MG_AddMarker(oms, listMarker, bounds, pOriginePosition, pCarte, true);
}
var NotMarker = 0;
for (var i = 0; i < pLstPosition.length; i++) {
var data = { position: pLstPosition[i], IconPath: pParamCarte.PictoDefault.Path, SizeIcone: pParamCarte.SizePicto };
if (data.position.Latitude != 0 && data.position.Longitude != 0) {
MG_AddMarker(oms, listMarker, bounds, data, pCarte, false);
} else {
NotMarker += 1;
}
}
if (NotMarker != 0) {
NotMarker = NotMarker+1;
var divMarker = $("#place_" + pDivCarte).html();
divMarker = "" + NotMarker + " points n'ont pas pu être placés "
$("#place_" + pDivCarte).html(divMarker);
}
MG_CreateGroupeMarker(oms, listMarker, bounds, pFunctionClick, pCarte, pMarkerCluster);
//if (pLstPosition.length > 0) {
// oms.addListener('format', function (marker, status) {
// var iconURL = status == OverlappingMarkerSpiderfier.markerStatus.SPIDERFIED ? (marker.data.UrlMapIcon ? marker.data.UrlMapIcon : "http://localhost:54655/Images/Global/pictoLieuStockMapBleuOiseau.png") :
// status == OverlappingMarkerSpiderfier.markerStatus.SPIDERFIABLE ? (marker.data.UrlMapIcon ? marker.data.UrlMapIcon : "http://localhost:54655/Images/Global/pictoLieuStockMapBleuOiseau.png") :
// status == OverlappingMarkerSpiderfier.markerStatus.UNSPIDERFIABLE ? (marker.data.UrlMapIcon ? marker.data.UrlMapIcon : "http://localhost:54655/Images/Global/pictoLieuStockMapBleuOiseau.png") :
// null;
// var iconSize = new google.maps.Size(33, 33);
// if (iconURL != null && iconURL != "") {
// marker.setIcon({
// url: iconURL,
// size: iconSize,
// scaledSize: iconSize
// });
// }
// });
//}
}
//Ajout d'un marker, avec pLieu qui contient Latitute, Longitude, LibelleSociete (pour title)
//origine permet de savoir si c'est le point de référence
//pOMS est l'objet qui permet d'éclater un point si plusieurs possèdent la même longitude et latitude
//pListMarker est la liste complète de tous les marker
function MG_AddMarker(pOMS, plistMarker, pLatLngBounds, pLieu, pCarte, origine) {
var positionLieu = {};
positionLieu.lat = pLieu.position.Latitude;
positionLieu.lng = pLieu.position.Longitude;
if (pLieu.position.Icone != "" && pLieu.position.Icone != null) {
var icone = {
url: "http://moteurgnet.gicab.net/V1.0/Images/Global/Picto" + pLieu.position.Icone + ".png",
scaledSize: new google.maps.Size(pLieu.position.TailleIcone, pLieu.position.TailleIcone),
}
}
else {
var icone = {
url: "http://moteurgnet.gicab.net/V1.0/Images/Global/" + pLieu.IconPath,
scaledSize: new google.maps.Size(pLieu.SizeIcone, pLieu.SizeIcone),
}
}
var marker = new google.maps.Marker({
position: positionLieu,
map: pCarte,
icon: icone,
data: pLieu.position/*,
title: pLieu.LibelleSociete*/
});
if (!origine) {
pOMS.addMarker(marker);
plistMarker.push(marker);
}
pLatLngBounds.extend(positionLieu);
}
function MG_CreateGroupeMarker(pOMS, plistMarker, pLatLngBounds, functionClick, pCarte, pMarkerCluster) {
var infoWindow = new google.maps.InfoWindow();
//suppression des anciens markers
if (pMarkerCluster != null) {
pMarkerCluster.clearMarkers();
}
//creation du regroupement de marker, suivant zoom et distances entre eux et définition des icones de groupe à utiliser
//(si gridSize = 1 et maxZoom = 1 alos regroupement avec icone non utilisé)
pMarkerCluster = new MarkerClusterer(pCarte, plistMarker,
{
gridSize: 1,
maxZoom: 1,
imagePath: "http://moteurgnet.gicab.net/V1.0/Images/Global/pictoLieuStockMap4.png"
});
//affectation de la fonction de click sur marker si elle a été définie
// if (typeof (functionClick) == "function") {
// pOMS.addListener('click', function (marker, event ) {
// functionClick(marker, event, infoWindow, pCarte);
// });
// }
pOMS.addListener('format', function (marker, status) {
var IsGroupe = true;
if(status == OverlappingMarkerSpiderfier.markerStatus.UNSPIDERFIABLE){
marker.addListener("click", function(event){
functionClick(marker, event, infoWindow, pCarte);
});
marker.addListener("mouseover", function(event){
infoWindow.close();
});
}else if(status == OverlappingMarkerSpiderfier.markerStatus.SPIDERFIED){
marker.addListener("mouseover", function(event){
functionClick(marker, event, infoWindow, pCarte);
});
}else{
marker.addListener("mouseover", function(event){
infoWindow.close();
});
}
});
//centrage de la map pour visuel sur tous les points
pCarte.fitBounds(pLatLngBounds);
//meilleurs gestion du zoom au click sur groupe de marker
google.maps.event.addListener(pMarkerCluster, 'clusterclick', function (cluster) {
pCarte.fitBounds(cluster.getBounds());
if (pCarte.zoom > 18) {
pCarte.setZoom(18);
}
var marker = cluster.getMarkers();
});
}
function SaveOk(pUrlAction) {
MG_MsgBoxAlert("Enregistrement", "Votre enregistrement à bien été pris en compte", "Validation",pUrlAction)
}
function MG_MsgBoxAlert(pTitre, pMessage, pIcone,pUrlAction) {
$.ajax({
type: "POST",
url: pUrlAction +'/MoteurGNet/MsgBoxAlert',
data: { pTitre: pTitre, pMessage: pMessage, pIcone: pIcone },
async: true,
success:
function (res) {
$('#WindowMsgBoxAlert').contents().remove();
$('#WindowMsgBoxAlert').html(res);
CenterCW("cwMsgBoxAlert");
//$("#cwMsgBoxAlert").data("kendoWindow").center();
}
});
}
function CenterCW(pCwName) {
//évite que IE ne place la window en bas de la page
window.scrollTo(1, 0);
//---------------------------
var position = 40 + window.pageYOffset;
$("#" + pCwName).data("kendoWindow").center();
$("#" + pCwName).data("kendoWindow").element.parent().css({ top: position });
$("#" + pCwName).data("kendoWindow").open();
}