bebeboutik/modules/mondialrelay/mondialrelay.js
Srv Bebeboutik 6c0978166c add modules
2016-01-04 12:49:26 +01:00

907 lines
25 KiB
JavaScript
Executable File

var toggle_status_order_list = false;
var toggle_history_order_list = false;
var relay_point_max = 10;
var last_gmap_info_clicked = '';
// /!\ All the following list data could be store into the same variable
// But for a better reading of the code, there are separated
// List of the supplier id which the user trying to fetch the relay
var fetchingRelayPoint = new Array();
// List of the relay point object
var relayPointDataContainers = new Array();
// List of the google map object
var GmapList = new Object();
// List the marker liable to the relay pint
var markerList = new Object();
function toggleOrderListSelection()
{
toggle_status_order_list = !toggle_status_order_list;
$('input[name="order_id_list[]"]').attr('checked', toggle_status_order_list);
}
function toggleHistoryListSelection()
{
toggle_history_order_list = !toggle_history_order_list;
$('input[name="history_id_list[]"]').attr('checked', toggle_history_order_list);
}
function getTickets(detailedExpeditionList)
{
$.ajax(
{
type : 'POST',
url : _PS_MR_MODULE_DIR_ + 'ajax.php',
data : {'detailedExpeditionList':detailedExpeditionList, 'method':'MRGetTickets', 'mrtoken':mrtoken},
dataType: 'json',
success: function(json)
{
if (json && json.success)
for (id_order in json.success)
if (json.success[id_order])
{
$('#URLA4_' + id_order).html('<a href="' + json.success[id_order].URLPDF_A4 + '">\
<img width="20" src="' + _PS_MR_MODULE_DIR_ + 'images/pdf_icon.jpg" alt="download pdf"" /></a>');
$('#URLA5_' + id_order).html('<a href="' + json.success[id_order].URLPDF_A5 + '">\
<img width="20" src="' + _PS_MR_MODULE_DIR_ + 'images/pdf_icon.jpg" alt="download pdf"" /></a>');
$('#expeditionNumber_' + id_order).html(json.success[id_order].expeditionNumber);
$('#detailHistory_' + id_order).children('td').children('input').attr('value', json.success[id_order].id_mr_history);
$('#detailHistory_' + id_order).children('td').children('input').attr('id', 'PS_MRHistoryId_' + json.success[id_order].id_mr_history);
}
displayBackGenerateSubmitButton();
displayBackHistoriesSubmitButton();
},
error: function(xhr, ajaxOptions, thrownError)
{
displayBackGenerateSubmitButton();
}
});
}
function checkErrorGenetateTickets(json)
{
i = 0;
$('.PS_MRErrorList').fadeOut('fast', function()
{
if ((++i >= $('.PS_MRErrorList').length) && json && json.error)
for (id_order in json.error)
if (json.error[id_order] && json.error[id_order].length)
{
$('#errorCreatingTicket_' + id_order).children('td').children('span').html('');
$('#errorCreatingTicket_' + id_order).fadeOut('slow');
$('#errorCreatingTicket_' + id_order).fadeIn('slow');
for (numError in json.error[id_order])
$('#errorCreatingTicket_' + id_order).children('td').children('span').append(json.error[id_order][numError] + '<br >');
}
});
checkOtherErrors(json);
}
function checkOtherErrors(json)
{
$('#otherErrors').fadeOut('fast', function()
{
if (json && json.other && json.other.error)
for (numError in json.other.error)
if (json.other.error[numError])
{
$('#otherErrors').fadeIn('slow');
$('#otherErrors').children('span').html('');
$('#otherErrors').children('span').append(json.other.error[numError]);
}
});
}
function checkSucceedGenerateTickets(json)
{
detailedExpeditionList = new Array();
i = 0;
$('.PS_MRSuccessList').fadeOut('fast', function()
{
if ((++i >= $('.PS_MRSuccessList').length) && json && json.success)
{
for (id_order in json.success)
if (json.success[id_order] && json.success[id_order].expeditionNumber)
{
$('#successCreatingTicket_' + id_order).children('td').children('span').html('');
$('#PS_MRLineOrderInformation-' + id_order).remove();
$('#successCreatingTicket_' + id_order).fadeIn('slow');
detailedExpeditionList.push({'id_order':id_order, 'expeditionNumber':json.success[id_order].expeditionNumber});
if (!$('#detailHistory_' + id_order).length)
{
$('#PS_MRHistoriqueTableList').append('\
<tr id="detailHistory_' + id_order + '">\
<td><input type="checkbox" class="history_id_list" name="history_id_list[]" value="' + id_order + '" /></td>\
<td>' + id_order + '</td>\
<td id="expeditionNumber_' + id_order + '"><img src="' + _PS_MR_MODULE_DIR_ + 'images/getTickets.gif" /></td>\
<td id="URLA4_' + id_order + '"><img src="' + _PS_MR_MODULE_DIR_ + 'images/getTickets.gif" /></td>\
<td id="URLA5_' + id_order + '"><img src="' + _PS_MR_MODULE_DIR_ + 'images/getTickets.gif" /></td>\
</tr>');
}
else
{
$('#detailHistory_' + id_order).children('#URLA4_' + id_order).html('<img src="' + _PS_MR_MODULE_DIR_ + 'images/getTickets.gif" />');
$('#detailHistory_' + id_order).children('#URLA5_' + id_order).html('<img src="' + _PS_MR_MODULE_DIR_ + 'images/getTickets.gif" />');
$('#detailHistory_' + id_order).children('#expeditionNumber_' + id_order).html('<img src="' + _PS_MR_MODULE_DIR_ + 'images/getTickets.gif" />');
}
}
}
});
return detailedExpeditionList;
}
function displayBackGenerateSubmitButton()
{
$('#PS_MRSubmitGenerateLoader').css('display', 'none');
if ($('.order_id_list').length)
$('#PS_MRSubmitButtonGenerateTicket').fadeIn('slow');
}
function displayBackHistoriesSubmitButton()
{
$('#PS_MRSubmitDeleteHistoriesLoader').css('display', 'none');
if ($('.history_id_list').length)
$('#PS_MRSubmitButtonDeleteHistories').fadeIn('slow');
}
function generateTicketsAjax()
{
var order_id_list = new Array();
var weight_list = new Array();
$('#PS_MRSubmitButtonGenerateTicket').css('display', 'none');
$('#PS_MRSubmitGenerateLoader').fadeIn('slow');
numSelected = $('input[name="order_id_list[]"]:checked').length;
$('input[name="order_id_list[]"]:checked').each(function()
{
order_id_list.push($(this).val());
weight_list.push(($('#weight_' + $(this).val()).val()) + '-' + $(this).val());
});
$.ajax(
{
type : 'POST',
url : _PS_MR_MODULE_DIR_ + 'ajax.php',
data : {'order_id_list' : order_id_list,
'numSelected' : numSelected,
'weight_list' : weight_list,
'method' : 'MRCreateTickets',
'mrtoken' : mrtoken},
dataType: 'json',
success: function(json)
{
detailedExpeditionList = new Array();
checkErrorGenetateTickets(json);
detailedExpeditionList = checkSucceedGenerateTickets(json);
if (detailedExpeditionList.length)
getTickets(detailedExpeditionList);
else
displayBackGenerateSubmitButton();
},
error: function(xhr, ajaxOptions, thrownError)
{
display_generate_button = true;
displayBackGenerateSubmitButton();
}
});
delete(order_id_list);
delete(weight_list);
}
function displayDeletedHistoryInformation()
{
$('input[name="history_id_list[]"]:checked').each(function()
{
$(this).parent().parent().css('background-color', '#FFE2E3');
});
displayBackHistoriesSubmitButton();
}
/*
** Manage the removed histories id
*/
function checkDeletedHistoriesId(json)
{
if (json && json.success)
{
// Allow to wait the end of the loop to manage unremoved item
i = 0;
for (numberHistoryId in json.success.deletedListId)
{
$('#PS_MRHistoryId_' + json.success.deletedListId[numberHistoryId]).parent().parent().fadeOut('fast', function(){
$(this).remove();
// Fadeout is asynchome verify everytime the number element
if (++i == json.success.deletedListId.length)
displayDeletedHistoryInformation(json.success.deletedListId.length);
});
}
// Use if none element exist in the list
if (i == json.success.deletedListId.length)
displayDeletedHistoryInformation();
}
else
displayBackHistoriesSubmitButton();
}
/*
** Delete the histories selected by the merchant
*/
function deleteSelectedHistories()
{
var history_id_list = new Array();
$('#PS_MRSubmitButtonDeleteHistories').css('display', 'none');
$('#PS_MRSubmitDeleteHistoriesLoader').fadeIn('slow');
numSelected = $('input[name="order_id_list[]"]:checked').length;
$('input[name="history_id_list[]"]:checked').each(function()
{
history_id_list.push($(this).val());
});
$.ajax(
{
type : 'POST',
url : _PS_MR_MODULE_DIR_ + 'ajax.php',
data : {'history_id_list' : history_id_list,
'numSelected' : numSelected,
'method' : 'DeleteHistory',
'mrtoken' : mrtoken},
dataType: 'json',
success: function(json)
{
checkOtherErrors(json);
checkDeletedHistoriesId(json);
},
error: function(xhr, ajaxOptions, thrownError)
{
display_generate_button = true;
displayBackHistoriesSubmitButton();
}
});
}
/*
** Display a fancy box displaying details about the
** backup of the database
*/
function PS_MRGetUninstallDetail()
{
$.ajax(
{
type: 'POST',
url: _PS_MR_MODULE_DIR_ + 'ajax.php',
data: {'method' : 'uninstallDetail',
'action' : 'showFancy',
'href' : targetButton,
'mrtoken' : mrtoken},
dataType: 'json',
success: function(json)
{
((json.html.length) ?
$.fancybox(json.html,
{
'autoDimensions' : false,
'width' : 450,
'height' : 'auto',
'transitionIn' : 'none',
'transitionOut' : 'none',
'onComplete' : function()
{
PS_MRHandleUninstallButton();
// Rewrite some css properties of Fancybox
$('#fancybox-wrap').css('width', '');
$('#fancybox-content').css('background-color', '');
$('#fancybox-content').css('border', '');
}
})
: '');
},
error: function(xhr, ajaxOptions, thrownError)
{
// Put debug to see error detail
}
});
return false;
}
/*
** Handle the button when a user clicked on the uninstall button
*/
function PS_MRHandleUninstallButton()
{
$('#PS_MR_BackupAction').click(function()
{
$.fancybox.close();
PS_MRBackupDatabase();
});
$('#PS_MR_UninstallAction').click(function()
{
window.location.href = targetButton;
$.fancybox.close();
return true;
});
$('#PS_MR_StopUninstall').click(function()
{
$.fancybox.close();
return false;
});
}
/*
** ajax call to keep the database of the module safe
*/
function PS_MRBackupDatabase()
{
$.ajax(
{
type: 'POST',
url: _PS_MR_MODULE_DIR_ + 'ajax.php',
data: {'method' : 'uninstallDetail',
'action' : 'backupAndUninstall',
'mrtoken' : mrtoken},
dataType: 'json',
success: function(json)
{
targetButton += '&keepDatabase=true';
window.location.href = targetButton;
},
error: function(xhr, ajaxOptions, thrownError)
{
// Put debug to see error detail
}
});
}
/*
** Add / update a entry to the selected carrier to the mr_selected table
** with the selected relay point information
*/
function PS_MRAddSelectedRelayPointInDB(relayPointNumber, id_carrier)
{
PS_MRSelectedRelayPoint['relayPointNum'] = relayPointNumber;
// Ajax call to add the selection in the database (compatibility for 1.3)
// But keep this way to add a selection better that the hook
MRjQuery.ajax({
type: 'POST',
url: _PS_MR_MODULE_DIR_ + 'ajax.php',
data: {'method' : 'addSelectedCarrierToDB',
'relayPointInfo' : relayPointDataContainers[relayPointNumber],
'id_carrier' : id_carrier,
'id_mr_method' : PS_MRCarrierMethodList[id_carrier],
'mrtoken' : mrtoken},
success: function(json)
{
if (PS_MROPC)
updateCarrierSelectionAndGift();
},
error: function(xhr, ajaxOptions, thrownError)
{
}
});
}
/*
** Add / update a entry to the selected carrier to the mr_selected table
** Without relay point information
*/
function PS_MRAddSelectedCarrierInDB(id_carrier)
{
PS_MRHideLastRelayPointList();
// Make the request
$.ajax({
type: 'POST',
url: _PS_MR_MODULE_DIR_ + 'ajax.php',
data: {'method' : 'addSelectedCarrierToDB',
'id_carrier' : id_carrier,
'id_mr_method' : PS_MRCarrierMethodList[id_carrier],
'mrtoken' : mrtoken},
success: function(json)
{
},
error: function(xhr, ajaxOptions, thrownError)
{
}
});
}
function PS_MRCarrierSelectedProcess(carrierSelected, id_carrier, MRLivraisonType)
{
// Reset for any carrier changement
if (MRLivraisonType != 'LD1' && MRLivraisonType != 'LDS')
{
// Seek Relay point if it doesn't a home delivery mode
PS_MRGetRelayPoint(carrierSelected);
// Will have relay points
PS_MRSelectedRelayPoint['relayPointNum'] = 0;
}
else
{
// Simply add the selected carrier to the db, relay information will be empty
PS_MRAddSelectedCarrierInDB(id_carrier);
// Won't have any relay points
PS_MRSelectedRelayPoint['relayPointNum'] = -1;
}
}
/*
** Hide the last displayed relay point list
*/
function PS_MRHideLastRelayPointList()
{
$('.PS_MRSelectedCarrier').fadeOut('fast');
}
/*
** Check if the user select a carrier and a relay point if exist
*/
function PS_MRCheckSelectedRelayPoint()
{
var input;
// Check if the input is linked to the module and look into
// a temporary variable if a relay point has been selected
if ((input = $('input[name=id_carrier]:checked')).length &&
PS_MRCarrierMethodList[input.val()] != undefined &&
PS_MRSelectedRelayPoint['relayPointNum'] == 0)
{
//$('#PS_MRSelectCarrierError').fadeIn('fast');
alert(PS_MRTranslationList['errorSelection']);
return false;
}
return true;
}
/*
** Link the generated relay point to an handle click
** Allow to add the selected relay point in the database
*/
function PS_MRHandleSelectedRelayPoint()
{
// Link all new generated relay point Selected button to an action
$('.PS_MRSelectRelayPointButton').click(function()
{
// Unselect all previous selection (normaly juste one)
$('.PS_MRFloatRelayPointSelected').each(function()
{
$(this).attr('class', 'PS_MRFloatRelayPointSelecteIt');
$(this).children('a').text(PS_MRTranslationList['Select']);
});
// Make the Selection
$(this).html(PS_MRTranslationList['Selected']);
$(this).parent().attr('class', 'PS_MRFloatRelayPointSelected');
// Get the info about the relay point (relayPoint_RelayPointNumber_IdCarrier)
tab = $(this).parent().parent().attr('id').split('_');
// Store Separated data for the ajax query
if (tab.length == 3)
{
relayPointNumber = tab[1];
id_carrier = tab[2];
PS_MRAddSelectedRelayPointInDB(relayPointNumber, id_carrier);
}
});
}
// Display the relay point fetched
function PS_MRDisplayRelayPoint(json, blockContent, carrier_id)
{
if (typeof json != 'undefined' && typeof blockContent != 'undefined')
{
numberDisplayed = 0;
// Disable Gmap for IE user
// if (!$.browser.msie)
PS_MRCreateGmap(carrier_id);
blockContent.fadeOut('fast', function()
{
$(this).children('td').html('');
for (relayPoint in json.success)
{
// Check if the the content wasn't already displayed
contentBlockid = 'relayPoint_' + json.success[relayPoint].Num + '_' + carrier_id;
if (!$('#' + contentBlockid).size())
{
// Set translation if a preselection exist
var BtTranslation = (PS_MRPreSelectedRelay == json.success[relayPoint].Num) ?
PS_MRTranslationList['Selected'] : PS_MRTranslationList['Select'];
var classSelection = (PS_MRPreSelectedRelay == json.success[relayPoint].Num) ?
'PS_MRFloatRelayPointSelected' : 'PS_MRFloatRelayPointSelecteIt';
$('<div class="PS_MRRelayPointInfo clearfix" id="' + contentBlockid + '"> \
<img src="' + _PS_MR_MODULE_DIR_ + 'logo_hd.png" /> \
<p><b>' + json.success[relayPoint].LgAdr1 + '</b><br /> ' + json.success[relayPoint].LgAdr3
+ ' - ' + json.success[relayPoint].CP + ' - ' + json.success[relayPoint].Ville
+ ' ' + json.success[relayPoint].Pays + '</p> \
<div class="' + classSelection + '"> \
<a class="PS_MRSelectRelayPointButton">' + BtTranslation + '</a> \
</div> \
</div>').appendTo($(this).children('td'));
// Store all the object content to prevent an ajax request
relayPointDataContainers[json.success[relayPoint].Num] = json.success[relayPoint];
++numberDisplayed;
// Display popup for IE user
//if (!$.browser.msie)
PS_MRAddGMapMarker(carrier_id, json.success[relayPoint].Num, contentBlockid);
/* else
$('#' + contentBlockid).children('p').click(function() {
PS_MROpenPopupDetail(json.success[relayPoint].permaLinkDetail);
});*/
}
}
PS_MRHandleSelectedRelayPoint();
$(this).fadeIn('fast');
});
}
}
function PS_MRDisplayErrorRelayPoint(errorList, blockContent)
{
blockContent.fadeOut('fast', function()
{
$(this).children('td').html('');
for (numError in errorList)
{
$('<div class="error">' + errorList[numError] + '</div>').appendTo($(this).children('td'));
}
$(this).fadeIn('fast');
});
}
// Fetch the relay point
function PS_MRFetchRelayPoint(carrierSelected)
{
carrier_id = carrierSelected.val();
// Block is an input, we need the 'tr' element
blockTR = carrierSelected.parent().parent();
// Add a new line to the table after the clicked parent element
blockTR.after(' \
<tr class="PS_MRSelectedCarrier" id="PS_MRSelectedCarrier_' + carrier_id + '"> \
<td colspan="4"><div> \
<img src="' + _PS_MR_MODULE_DIR_ + 'images/loader.gif" /> \
</div> \
</td></tr>');
fetchingRelayPoint[carrier_id] = $('#PS_MRSelectedCarrier_' + carrier_id);
MRjQuery.ajax(
{
type: 'POST',
url: _PS_MR_MODULE_DIR_ + 'ajax.php',
data: {'method' : 'MRGetRelayPoint',
'id_carrier' : carrier_id,
'mrtoken' : mrtoken},
dataType: 'json',
success: function(json)
{
if (json && json.error && json.error.length)
PS_MRDisplayErrorRelayPoint(json.error, $('#PS_MRSelectedCarrier_' + carrier_id));
else if (json && json.success)
PS_MRDisplayRelayPoint(json, $('#PS_MRSelectedCarrier_' + carrier_id), carrier_id);
},
error: function(xhr, ajaxOptions, thrownError)
{
// Put debug to see error detail
}
});
}
// Display the relay point of a selected Carrier and keep fetched data
// in the html page (cache)
function PS_MRGetRelayPoint(carrierSelected)
{
carrier_id = carrierSelected.val();
// Init back the inital view, hide existing element, (keep cached)
element = 0;
totalElement = $('.PS_MRSelectedCarrier').size();
// Check if the element has already been fetched
if (totalElement)
// It Works like a foreach
$('.PS_MRSelectedCarrier').fadeOut('fast', function()
{
if ((element + 1) >= totalElement)
{
// Check if the user already clicked and if the process is done
if (typeof fetchingRelayPoint[carrier_id] != 'undefined')
{
fetchingRelayPoint[carrier_id].fadeIn('fast');
return ;
}
// If the element isn't cached, we fetch it
PS_MRFetchRelayPoint(carrierSelected);
}
++element;
});
else
PS_MRFetchRelayPoint(carrierSelected);
}
/*
** Create the Gmap Block and cache the js object for the carrier
*/
function PS_MRCreateGmap(id_carrier)
{
// This has been write this way because it needed to have a known block
// present everytime in the page. Body is the only one sure.
// It's an hidden block it's replaced in the good block when user select his
// own carrier
$('body').prepend('\
<tr id="PS_MRGmapDefaultPosition_' + id_carrier + '" class="PS_MRGmapDefaultPosition">\
<td colspan="4"> \
<div id="PS_MRGmap_' + id_carrier + '" class="PS_MRGmapStyle">\
</div></td</tr>');
$('#PS_MRGmap_' + id_carrier).gmap3(
{
action: 'init',
callback: function(result)
{
GmapList[id_carrier] = $(this);
// Can't set the display to none by default (bug due to
// navigator that tell to google that content size = 0
//$(this).toggle('fast');
}
}
);
}
/*
** Resize the map when the div got changement about dimension / position and displaying
*/
function PS_MRGmapResizeEvent($map)
{
gmap = $map.gmap3({action:'get'});
google.maps.event.trigger(gmap, 'resize');
}
/*
** Move the view of the gmap to a marker
** liable to the relay point
*/
function PS_MRGmapPlaceViewOnMarker($map, marker, relayNum)
{
$map.gmap3(
{
action:'panTo',
args:[marker.position],
callback: function()
{
PS_MRDisplayClickedGmapWindow(marker, relayNum, $map);
// Make dancing markers in Firefox / IE will use the CPU to 50 to 100 % about
if (!$.browser.msie && !$.browser.mozilla)
(function(m)
{
setTimeout(function()
{
m.setAnimation(google.maps.Animation.BOUNCE);
}, 200);
})(marker);
// marker.setAnimation(google.maps.Animation.BOUNCE);
}
});
}
/*
** Stop all dancing marker of the current selected carrier
*/
function PS_MRStopDancingMarkers(currentMarkerList)
{
for (markerNumber in currentMarkerList)
if (currentMarkerList[markerNumber] != undefined)
if (currentMarkerList[markerNumber].getAnimation() != null)
currentMarkerList[markerNumber].setAnimation(null);
}
/*
** Display the Gmap of the selected relay point
*/
function PS_MRDisplayGmap(contentBlockid, $map)
{
tab = contentBlockid.split('_');
relayPointNumber = tab[1];
id_carrier = tab[2];
// Stop the dancing marker of the current carrier
PS_MRStopDancingMarkers(markerList[id_carrier]);
if ($('#PS_MRGmap_' + id_carrier).css('display') == 'none')
{
$('#' + contentBlockid).after($('#PS_MRGmap_' + id_carrier));
$('#PS_MRGmap_' + id_carrier).slideDown('fast', function()
{
PS_MRGmapResizeEvent($map);
PS_MRGmapPlaceViewOnMarker($map, markerList[id_carrier][relayPointNumber], relayPointNumber);
});
}
else
{
previousElem = $('#PS_MRGmap_' + id_carrier).prev();
//$('#' + contentBlockid).after($('#PS_MRGmap_' + id_carrier));
$('#PS_MRGmap_' + id_carrier).toggle('fast', function()
{
if (previousElem.attr('id') != contentBlockid)
{
$('#' + contentBlockid).after($(this));
$('#PS_MRGmap_' + id_carrier).slideDown('fast', function()
{
PS_MRGmapPlaceViewOnMarker($map, markerList[id_carrier][relayPointNumber], relayPointNumber);
});
}
});
}
}
/*
** Generate an html block to display the opening hours details
*/
function PS_MRGetTimeRelayDetail(relayInfo)
{
onClick = 'onClick="PS_MROpenPopupDetail(\'' + relayInfo.permaLinkDetail + '\')"';
var html = ' \
<div class="PS_MRGmapBulbe"> \
<img src="' + _PS_MR_MODULE_DIR_ + 'logo_hd.png" width="10%" style="float:left;" /> \
<p><b>' + relayInfo.LgAdr1 + '</b><br /> ' + relayInfo.LgAdr3
+ ' - ' + relayInfo.CP + ' - ' + relayInfo.Ville
+ ' ' + relayInfo.Pays + '</p> \
<a href="javascript:void(0)" ' + onClick + '>' + PS_MRTranslationList['moreDetails'] + '</a> \
</div>';
return html;
}
/*
** Call a MondialRelay page into a popup
*/
function PS_MROpenPopupDetail(url)
{
window.open(url, 'MondialRelay',
'height=200, width=400, top=100, left=100, toolbar=no, menubar=yes, \
location=no, resizable=yes, scrollbars=no, status=no');
}
/*
** Display the gmap windows selected by the user
*/
function PS_MRDisplayClickedGmapWindow(marker, relayNum, mapObject)
{
if (last_gmap_info_clicked.length)
{
// Close the last opening window in gmap
if ((lastWin = mapObject.gmap3({action:'get', name:'infowindow', tag:last_gmap_info_clicked})))
lastWin.close();
}
// Open the selected detail window
map = mapObject.gmap3('get');
if ((currentWindow = mapObject.gmap3({action:'get', name:'infowindow', tag:relayNum})))
currentWindow.open(map, marker);
last_gmap_info_clicked = relayNum;
}
/*
** Add a new Marker to a Gmap for a carrier using the
** relay point information
*/
function PS_MRAddGMapMarker(id_carrier, relayPointNumber, contentBlockid)
{
// Check if the gmap has been properly created
if (GmapList[id_carrier] == undefined)
return ;
var relayInfo = relayPointDataContainers[relayPointNumber];
var detailContentHtml = PS_MRGetTimeRelayDetail(relayInfo);
// Add Marker to the map
var fullFormatedAddress = relayInfo.LgAdr1 + ' ' + relayInfo.LgAdr3 + ' ' +
relayInfo.CP + ' ' + relayInfo.Ville + ' ' + relayInfo.Pays;
GmapList[id_carrier].gmap3(
{
action: 'addMarker',
address: fullFormatedAddress,
tag:relayInfo.Num,
map:
{
center: true,
zoom: 14
},
marker: {
events:
{
click:function(marker, event, data)
{
PS_MRDisplayClickedGmapWindow(marker, relayInfo.Num, $(this));
}
},
callback: function(marker)
{
if (marker)
{
// Check if the a marker list exist for the carrier,
if (markerList[id_carrier] == undefined)
markerList[id_carrier] = new Object();
// Store the marker in the markerList of the carrier
markerList[id_carrier][relayPointNumber] = marker;
// Link all relay point line info to an action
$('#' + contentBlockid).children('p').click(function()
{
PS_MRDisplayGmap($(this).parent().attr('id'), GmapList[id_carrier]);
});
return true;
}
else
$('#' + contentBlockid).children('p').click(function()
{
PS_MROpenPopupDetail(relayInfo.permaLinkDetail);
});
}
},
infowindow:
{
options: {content:detailContentHtml},
tag:relayInfo.Num,
callback: function(infowindow) {
var windowList = $(this).gmap3({action:'get', name:'infowindow', all:true});
$.each(windowList, function(i, elem) {
elem.close();
});
}
}
});
return false;
}
$(document).ready(function()
{
$('#form').submit(function()
{
return PS_MRCheckSelectedRelayPoint();
});
$('#toggleStatusOrderList').click(function()
{
toggleOrderListSelection();
});
$('#toggleStatusHistoryList').click(function()
{
toggleHistoryListSelection();
});
$('#generate').click(function()
{
generateTicketsAjax();
});
$('#PS_MRSubmitButtonDeleteHistories').click(function()
{
deleteSelectedHistories();
});
$('#PS_MRDisplayPersonalizedOptions').click(function()
{
$('#PS_MRAdvancedSettings').toggle('fast');
});
});