changed notification triggers from wrapped functions to simple function
calls
This commit is contained in:
parent
efa959d112
commit
8f6cd99ff6
@ -86,6 +86,7 @@ zoomed: function(e) {
|
|||||||
contextmenu: function(e) {;},
|
contextmenu: function(e) {;},
|
||||||
mousemove: function(e) { OSRM.Via.drawDragMarker(e); },
|
mousemove: function(e) { OSRM.Via.drawDragMarker(e); },
|
||||||
click: function(e) {
|
click: function(e) {
|
||||||
|
OSRM.GUI.deactivateTooltip( "clicking" );
|
||||||
if( !OSRM.G.markers.hasSource() ) {
|
if( !OSRM.G.markers.hasSource() ) {
|
||||||
var index = OSRM.G.markers.setSource( e.latlng );
|
var index = OSRM.G.markers.setSource( e.latlng );
|
||||||
OSRM.Geocoder.updateAddress( OSRM.C.SOURCE_LABEL, OSRM.C.DO_FALLBACK_TO_LAT_LNG );
|
OSRM.Geocoder.updateAddress( OSRM.C.SOURCE_LABEL, OSRM.C.DO_FALLBACK_TO_LAT_LNG );
|
||||||
|
@ -99,6 +99,7 @@ onDrag: function(e) {
|
|||||||
OSRM.Geocoder.updateLocation( this.parent.label );
|
OSRM.Geocoder.updateLocation( this.parent.label );
|
||||||
},
|
},
|
||||||
onDragStart: function(e) {
|
onDragStart: function(e) {
|
||||||
|
OSRM.GUI.deactivateTooltip( "dragging" );
|
||||||
OSRM.G.dragging = true;
|
OSRM.G.dragging = true;
|
||||||
this.switchIcon(this.options.dragicon);
|
this.switchIcon(this.options.dragicon);
|
||||||
|
|
||||||
|
162
WebContent/gui/OSRM.Notifications.js
Normal file
162
WebContent/gui/OSRM.Notifications.js
Normal file
@ -0,0 +1,162 @@
|
|||||||
|
/*
|
||||||
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU AFFERO General Public License as published by
|
||||||
|
the Free Software Foundation; either version 3 of the License, or
|
||||||
|
any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Affero General Public License
|
||||||
|
along with this program; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
or see http://www.gnu.org/licenses/agpl.txt.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// OSRM Notifications
|
||||||
|
// [handles notifications: timed tooltips and exclusive notifications]
|
||||||
|
|
||||||
|
|
||||||
|
OSRM.GUI.extend( {
|
||||||
|
|
||||||
|
// tooltips
|
||||||
|
tooltips: {
|
||||||
|
localization:
|
||||||
|
{ timeout: 4000,
|
||||||
|
header: "[Tooltip] Localization",
|
||||||
|
body: "You can use the pulldown menu in the upper left corner to select your favorite language. " +
|
||||||
|
"<br/><br/>" +
|
||||||
|
"Don't despair if you cannot find your language of choice. " +
|
||||||
|
"If you want, you can help to provide additional translations! " +
|
||||||
|
"Visit <a href='https://github.com/DennisSchiefer/Project-OSRM-Web'>here</a> for more information."
|
||||||
|
// triggered by OSRM.Localization.setLanguageWrapper
|
||||||
|
},
|
||||||
|
clicking:
|
||||||
|
{ timeout: 6000,
|
||||||
|
header: "[Tooltip] Clicking to set markers",
|
||||||
|
body: "You can click on the map with the left mouse button to set a source marker (green) or a target marker (red), " +
|
||||||
|
"if the source marker already exists. " +
|
||||||
|
"The address of the selected location will be displayed in the boxes to the left. " +
|
||||||
|
"<br/><br/>" +
|
||||||
|
"You can delete a marker by clicking on it again with the left mouse button."
|
||||||
|
// triggered by OSRM.Map.click
|
||||||
|
},
|
||||||
|
dragging:
|
||||||
|
{ timeout: 8000,
|
||||||
|
header: "[Tooltip] Dragging markers",
|
||||||
|
body: "You can drag a marker by clicking on it with the left mouse button and holding the button pressed. " +
|
||||||
|
"Then you can move the marker around the map and the route will be updated instantaneously. " +
|
||||||
|
"<br/><br/>" +
|
||||||
|
"You can even create additional markers by dragging them off of the main route! "
|
||||||
|
// triggered by OSRM.Routing.getRoute_Dragging
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
// initialize notifications and tooltip timers
|
||||||
|
init: function() {
|
||||||
|
// notifications
|
||||||
|
// [nothing to be done at the moment]
|
||||||
|
|
||||||
|
// tooltip timers
|
||||||
|
var tooltips = OSRM.GUI.tooltips;
|
||||||
|
for( id in tooltips ) {
|
||||||
|
// start timer
|
||||||
|
tooltips[id]._timer = setTimeout(
|
||||||
|
function(_id){ return function(){OSRM.GUI._showTooltip(_id);}; }(id),
|
||||||
|
tooltips[id].timeout
|
||||||
|
);
|
||||||
|
|
||||||
|
// mark tooltip as pending
|
||||||
|
tooltips[id]._pending = true;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
// deactivate pending tooltip
|
||||||
|
deactivateTooltip: function(id) {
|
||||||
|
var tooltips = OSRM.GUI.tooltips;
|
||||||
|
if(tooltips[id] == undefined)
|
||||||
|
return;
|
||||||
|
|
||||||
|
// mark tooltip as no longer pending
|
||||||
|
tooltips[id]._pending = false;
|
||||||
|
},
|
||||||
|
// show tooltip after timer expired
|
||||||
|
_showTooltip: function(id) {
|
||||||
|
var tooltips = OSRM.GUI.tooltips;
|
||||||
|
if(tooltips[id] == undefined)
|
||||||
|
return;
|
||||||
|
|
||||||
|
// only show tooltip if it is still pending
|
||||||
|
if( tooltips[id]._pending == false ) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// if a notification is currently shown, restart timer
|
||||||
|
if( OSRM.GUI.isTooltipVisible() ) {
|
||||||
|
tooltips[id]._timer = setTimeout(
|
||||||
|
function(_id){ return function(){OSRM.GUI._showTooltip(_id);}; }(id),
|
||||||
|
tooltips[id].timeout
|
||||||
|
);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// show notification
|
||||||
|
OSRM.GUI.tooltipNotify( tooltips[id].header, tooltips[id].body );
|
||||||
|
|
||||||
|
// mark tooltip as no longer pending
|
||||||
|
tooltips[id]._pending = false;
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
// exclusive notification
|
||||||
|
exclusiveNotify: function( header, text, closable ){
|
||||||
|
document.getElementById('exclusive-notification-blanket').style.display = "block";
|
||||||
|
document.getElementById('exclusive-notification-label').innerHTML = header;
|
||||||
|
document.getElementById('exclusive-notification-box').innerHTML = text;
|
||||||
|
if( closable )
|
||||||
|
document.getElementById('exclusive-notification-toggle').onclick = OSRM.GUI.exclusiveDenotify;
|
||||||
|
else
|
||||||
|
document.getElementById('exclusive-notification-toggle').style.display = "none";
|
||||||
|
},
|
||||||
|
exclusiveDenotify: function() {
|
||||||
|
document.getElementById('exclusive-notification-blanket').style.display = "none";
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
// tooltip notification
|
||||||
|
tooltipNotify: function( header, text ){
|
||||||
|
document.getElementById('tooltip-notification-wrapper').style.display = "block";
|
||||||
|
document.getElementById('tooltip-notification-label').innerHTML = header;
|
||||||
|
document.getElementById('tooltip-notification-box').innerHTML = text;
|
||||||
|
document.getElementById('tooltip-notification-box').style.display = "block"; // simple trick to always start with a minimized tooltip
|
||||||
|
OSRM.GUI.tooltipResize();
|
||||||
|
|
||||||
|
document.getElementById('tooltip-notification-toggle').onclick = OSRM.GUI.tooltipDenotify;
|
||||||
|
document.getElementById('tooltip-notification-resize').onclick = OSRM.GUI.tooltipResize;
|
||||||
|
},
|
||||||
|
tooltipResize: function() {
|
||||||
|
if( document.getElementById('tooltip-notification-box').style.display == "none" ) {
|
||||||
|
document.getElementById('tooltip-notification-box').style.display = "block";
|
||||||
|
var height = document.getElementById('tooltip-notification-box').clientHeight;
|
||||||
|
document.getElementById('tooltip-notification-content').style.height = (height + 28) + "px";
|
||||||
|
document.getElementById('tooltip-notification-wrapper').style.height = (height + 48) + "px";
|
||||||
|
document.getElementById('tooltip-notification-resize').className = "iconic-button up-marker top-right-button";
|
||||||
|
} else {
|
||||||
|
document.getElementById('tooltip-notification-box').style.display = "none";
|
||||||
|
document.getElementById('tooltip-notification-content').style.height = "18px";
|
||||||
|
document.getElementById('tooltip-notification-wrapper').style.height = "38px";
|
||||||
|
document.getElementById('tooltip-notification-resize').className = "iconic-button down-marker top-right-button";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
tooltipDenotify: function() {
|
||||||
|
document.getElementById('tooltip-notification-wrapper').style.display = "none";
|
||||||
|
},
|
||||||
|
isTooltipVisible: function() {
|
||||||
|
return document.getElementById('tooltip-notification-wrapper').style.display == "block";
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
@ -1,102 +0,0 @@
|
|||||||
/*
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU AFFERO General Public License as published by
|
|
||||||
the Free Software Foundation; either version 3 of the License, or
|
|
||||||
any later version.
|
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Affero General Public License
|
|
||||||
along with this program; if not, write to the Free Software
|
|
||||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
||||||
or see http://www.gnu.org/licenses/agpl.txt.
|
|
||||||
*/
|
|
||||||
|
|
||||||
// OSRM Timers
|
|
||||||
// [handles notification timers]
|
|
||||||
|
|
||||||
|
|
||||||
OSRM.GUI.extend( {
|
|
||||||
|
|
||||||
// notifications
|
|
||||||
notifications: [
|
|
||||||
{ time: 4000,
|
|
||||||
header: "[Tooltip] Localization",
|
|
||||||
body: "You can use the pulldown menu in the upper left corner to select your favorite language. " +
|
|
||||||
"<br/><br/>" +
|
|
||||||
"Don't despair if you cannot find your language of choice. " +
|
|
||||||
"If you want, you can help to provide additional translations! " +
|
|
||||||
"Visit <a href='https://github.com/DennisSchiefer/Project-OSRM-Web'>here</a> for more information.",
|
|
||||||
_classes: ["Localization"],
|
|
||||||
_funcs: ["setLanguageWrapper"]
|
|
||||||
},
|
|
||||||
{ time: 6000,
|
|
||||||
header: "[Tooltip] Clicking to set markers",
|
|
||||||
body: "You can click on the map with the left mouse button to set a source marker (green) or a target marker (red), " +
|
|
||||||
"if the source marker already exists. " +
|
|
||||||
"The address of the selected location will be displayed in the boxes to the left. " +
|
|
||||||
"<br/><br/>" +
|
|
||||||
"You can delete a marker by clicking on it again with the left mouse button.",
|
|
||||||
_classes: ["Map"],
|
|
||||||
_funcs: ["click"]
|
|
||||||
},
|
|
||||||
{ time: 8000,
|
|
||||||
header: "[Tooltip] Dragging markers",
|
|
||||||
body: "You can drag a marker by clicking on it with the left mouse button and holding the button pressed. " +
|
|
||||||
"Then you can move the marker around the map and the route will be updated instantaneously. " +
|
|
||||||
"<br/><br/>" +
|
|
||||||
"You can even create additional markers by dragging them off of the main route! ",
|
|
||||||
_classes: ["Routing"],
|
|
||||||
_funcs: ["getRoute_Dragging"]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
|
|
||||||
// initialize notification timers
|
|
||||||
init: function() {
|
|
||||||
// init timers
|
|
||||||
var notifications = OSRM.GUI.notifications;
|
|
||||||
OSRM.G.notification_timers = new Array( notifications.length );
|
|
||||||
for( var i=0, iEnd=notifications.length; i<iEnd; ++i) {
|
|
||||||
// start timer
|
|
||||||
notifications[i].timer = setTimeout( function(id){ return function(){ OSRM.GUI.notification_timeout(id);}; }(i), notifications[i].time);
|
|
||||||
|
|
||||||
// create wrapper functions for function calls that will stop the timer
|
|
||||||
notifications[i].old_functions = [];
|
|
||||||
for(var j=0, jEnd=notifications[i]._classes.length; j<jEnd;j++) {
|
|
||||||
notifications[i].old_functions[j] = OSRM[notifications[i]._classes[j]][notifications[i]._funcs[j]];
|
|
||||||
OSRM[notifications[i]._classes[j]][notifications[i]._funcs[j]] = function(id,id2){ return function(params){ OSRM.GUI.notification_wrapper(id,id2,params);}; }(i,j);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
// wrapper function to clear timeouts
|
|
||||||
notification_wrapper: function(id, id2) {
|
|
||||||
var notifications = OSRM.GUI.notifications;
|
|
||||||
|
|
||||||
clearTimeout( notifications[id].timer );
|
|
||||||
//notifications[id].old_functions[id2](params);
|
|
||||||
var args = Array.prototype.slice.call(arguments, 2);
|
|
||||||
notifications[id].old_functions[id2].apply(this, args);
|
|
||||||
for(var j=0, jEnd=notifications[id]._classes.length; j<jEnd;j++) {
|
|
||||||
OSRM[notifications[id]._classes[j]][notifications[id]._funcs[j]] = notifications[id].old_functions[j];
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
// show notification message after timeout expired
|
|
||||||
notification_timeout: function(id) {
|
|
||||||
// if a notification is already shown, restart timer
|
|
||||||
if( OSRM.isNotifyVisible() ) {
|
|
||||||
OSRM.GUI.notifications[id].timer = setTimeout( function(id){ return function(){ OSRM.GUI.notification_timeout(id);}; }(id), OSRM.GUI.notifications[id].time);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// show notification
|
|
||||||
OSRM.notify( OSRM.GUI.notifications[id].header, OSRM.GUI.notifications[id].body, true );
|
|
||||||
for(var j=0, jEnd=notifications[id]._classes.length; j<jEnd;j++) {
|
|
||||||
OSRM[notifications[id]._classes[j]][notifications[id]._funcs[j]] = notifications[id].old_functions[j];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
@ -48,8 +48,9 @@ init: function() {
|
|||||||
// set default language
|
// set default language
|
||||||
OSRM.Localization.setLanguage( OSRM.DEFAULTS.LANGUAGE );
|
OSRM.Localization.setLanguage( OSRM.DEFAULTS.LANGUAGE );
|
||||||
},
|
},
|
||||||
setLanguageWrapper: function(language) {
|
setLanguageWrapper: function(language) { // wrapping required to correctly prevent localization tooltip from showing
|
||||||
OSRM.Localization.setLanguage(language); // wrapping required as trigger function for suppressing notifications
|
OSRM.GUI.deactivateTooltip( "localization" );
|
||||||
|
OSRM.Localization.setLanguage(language);
|
||||||
},
|
},
|
||||||
setLanguage: function(language) {
|
setLanguage: function(language) {
|
||||||
// change value of both language selectors
|
// change value of both language selectors
|
||||||
|
@ -425,7 +425,7 @@ html, body {
|
|||||||
width:390px;
|
width:390px;
|
||||||
height:80px;
|
height:80px;
|
||||||
}
|
}
|
||||||
#important-notification-wrapper
|
#exclusive-notification-wrapper
|
||||||
{
|
{
|
||||||
width:600px;
|
width:600px;
|
||||||
height:170px;
|
height:170px;
|
||||||
@ -434,12 +434,12 @@ html, body {
|
|||||||
margin-top:-85px;
|
margin-top:-85px;
|
||||||
margin-left:-300px;
|
margin-left:-300px;
|
||||||
}
|
}
|
||||||
#important-notification-content
|
#exclusive-notification-content
|
||||||
{
|
{
|
||||||
width:580px;
|
width:580px;
|
||||||
height:150px;
|
height:150px;
|
||||||
}
|
}
|
||||||
#important-notification-blanket
|
#exclusive-notification-blanket
|
||||||
{
|
{
|
||||||
position:absolute;
|
position:absolute;
|
||||||
top:0px;
|
top:0px;
|
||||||
@ -451,7 +451,7 @@ html, body {
|
|||||||
z-index:100;
|
z-index:100;
|
||||||
display:none;
|
display:none;
|
||||||
}
|
}
|
||||||
#notification-wrapper
|
#tooltip-notification-wrapper
|
||||||
{
|
{
|
||||||
width:700px;
|
width:700px;
|
||||||
height:38px;
|
height:38px;
|
||||||
@ -460,7 +460,7 @@ html, body {
|
|||||||
margin-left:-350px;
|
margin-left:-350px;
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
#notification-content
|
#tooltip-notification-content
|
||||||
{
|
{
|
||||||
width:680px;
|
width:680px;
|
||||||
height:18px;
|
height:18px;
|
||||||
|
@ -64,7 +64,7 @@ or see http://www.gnu.org/licenses/agpl.txt.
|
|||||||
<script src="gui/OSRM.GUIBoxHandle.js" type="text/javascript"></script>
|
<script src="gui/OSRM.GUIBoxHandle.js" type="text/javascript"></script>
|
||||||
<script src="gui/OSRM.Selector.js" type="text/javascript"></script>
|
<script src="gui/OSRM.Selector.js" type="text/javascript"></script>
|
||||||
<script src="gui/OSRM.MainGUI.js" type="text/javascript"></script>
|
<script src="gui/OSRM.MainGUI.js" type="text/javascript"></script>
|
||||||
<script src="gui/OSRM.Timers.js" type="text/javascript"></script>
|
<script src="gui/OSRM.Notifications.js" type="text/javascript"></script>
|
||||||
<script src="routing/OSRM.Routing.js" type="text/javascript"></script>
|
<script src="routing/OSRM.Routing.js" type="text/javascript"></script>
|
||||||
<script src="routing/OSRM.RoutingDescription.js" type="text/javascript"></script>
|
<script src="routing/OSRM.RoutingDescription.js" type="text/javascript"></script>
|
||||||
<script src="routing/OSRM.RoutingGeometry.js" type="text/javascript"></script>
|
<script src="routing/OSRM.RoutingGeometry.js" type="text/javascript"></script>
|
||||||
@ -87,31 +87,31 @@ or see http://www.gnu.org/licenses/agpl.txt.
|
|||||||
<!-- map -->
|
<!-- map -->
|
||||||
<div id="map"></div>
|
<div id="map"></div>
|
||||||
|
|
||||||
<!-- important notification -->
|
<!-- exclusive notification -->
|
||||||
<div id="important-notification-blanket">
|
<div id="exclusive-notification-blanket">
|
||||||
<div id="important-notification-wrapper" class="box-wrapper not-selectable">
|
<div id="exclusive-notification-wrapper" class="box-wrapper not-selectable">
|
||||||
<div id="important-notification-content" class="box-content">
|
<div id="exclusive-notification-content" class="box-content">
|
||||||
<!-- header -->
|
<!-- header -->
|
||||||
<div id="important-notification-toggle" class="iconic-button cancel-marker top-right-button"></div>
|
<div id="exclusive-notification-toggle" class="iconic-button cancel-marker top-right-button"></div>
|
||||||
<div id="important-notification-label" class="box-label">Notification</div>
|
<div id="exclusive-notification-label" class="box-label">Notification</div>
|
||||||
|
|
||||||
<!-- notification text -->
|
<!-- notification text -->
|
||||||
<div id="important-notification-box"></div>
|
<div id="exclusive-notification-box"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- normal notification -->
|
<!-- tooltip notification -->
|
||||||
<div id="notification-wrapper" class="box-wrapper not-selectable">
|
<div id="tooltip-notification-wrapper" class="box-wrapper not-selectable">
|
||||||
<div id="notification-content" class="box-content">
|
<div id="tooltip-notification-content" class="box-content">
|
||||||
<!-- header -->
|
<!-- header -->
|
||||||
<div id="notification-toggle" class="iconic-button cancel-marker top-right-button"></div>
|
<div id="tooltip-notification-toggle" class="iconic-button cancel-marker top-right-button"></div>
|
||||||
<div class="quad top-right-button"></div>
|
<div class="quad top-right-button"></div>
|
||||||
<div id="notification-resize" class="iconic-button cancel-marker top-right-button"></div>
|
<div id="tooltip-notification-resize" class="iconic-button cancel-marker top-right-button"></div>
|
||||||
<div id="notification-label" class="box-label">Notification</div>
|
<div id="tooltip-notification-label" class="box-label">Notification</div>
|
||||||
|
|
||||||
<!-- notification text -->
|
<!-- notification text -->
|
||||||
<div id="notification-box"></div>
|
<div id="tooltip-notification-box"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -284,60 +284,12 @@ OSRM.parseParameters = function(){
|
|||||||
// check whether to activate maintenance mode
|
// check whether to activate maintenance mode
|
||||||
OSRM.inMaintenance = function(){
|
OSRM.inMaintenance = function(){
|
||||||
if( OSRM.DEFAULTS.MAINTENANCE == true ) {
|
if( OSRM.DEFAULTS.MAINTENANCE == true ) {
|
||||||
OSRM.xnotify( OSRM.DEFAULTS.MAINTENANCE_HEADER, OSRM.DEFAULTS.MAINTENANCE_TEXT, false);
|
OSRM.GUI.exclusiveNotify( OSRM.DEFAULTS.MAINTENANCE_HEADER, OSRM.DEFAULTS.MAINTENANCE_TEXT, false);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
// important notifications
|
|
||||||
OSRM.xnotify = function( header, text, closable ){
|
|
||||||
document.getElementById('important-notification-blanket').style.display = "block";
|
|
||||||
document.getElementById('important-notification-label').innerHTML = header;
|
|
||||||
document.getElementById('important-notification-box').innerHTML = text;
|
|
||||||
if( closable )
|
|
||||||
document.getElementById('important-notification-toggle').onclick = OSRM.xdenotify;
|
|
||||||
else
|
|
||||||
document.getElementById('important-notification-toggle').style.display = "none";
|
|
||||||
};
|
|
||||||
OSRM.xdenotify = function() {
|
|
||||||
document.getElementById('important-notification-blanket').style.display = "none";
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// normal notification box
|
|
||||||
OSRM.notify = function( header, text ){
|
|
||||||
document.getElementById('notification-wrapper').style.display = "block";
|
|
||||||
document.getElementById('notification-label').innerHTML = header;
|
|
||||||
document.getElementById('notification-box').innerHTML = text;
|
|
||||||
document.getElementById('notification-box').style.display = "block"; // trick to always obtain a closed notification box
|
|
||||||
OSRM.resizeNotify();
|
|
||||||
|
|
||||||
document.getElementById('notification-toggle').onclick = OSRM.denotify;
|
|
||||||
document.getElementById('notification-resize').onclick = OSRM.resizeNotify;
|
|
||||||
};
|
|
||||||
OSRM.resizeNotify = function() {
|
|
||||||
if( document.getElementById('notification-box').style.display == "none" ) {
|
|
||||||
document.getElementById('notification-box').style.display = "block";
|
|
||||||
var height = document.getElementById('notification-box').clientHeight;
|
|
||||||
document.getElementById('notification-content').style.height = (height + 28) + "px";
|
|
||||||
document.getElementById('notification-wrapper').style.height = (height + 48) + "px";
|
|
||||||
document.getElementById('notification-resize').className = "iconic-button up-marker top-right-button";
|
|
||||||
} else {
|
|
||||||
document.getElementById('notification-box').style.display = "none";
|
|
||||||
document.getElementById('notification-content').style.height = "18px";
|
|
||||||
document.getElementById('notification-wrapper').style.height = "38px";
|
|
||||||
document.getElementById('notification-resize').className = "iconic-button down-marker top-right-button";
|
|
||||||
}
|
|
||||||
};
|
|
||||||
OSRM.denotify = function() {
|
|
||||||
document.getElementById('notification-wrapper').style.display = "none";
|
|
||||||
};
|
|
||||||
OSRM.isNotifyVisible = function() {
|
|
||||||
return document.getElementById('notification-wrapper').style.display == "block";
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// onload event
|
// onload event
|
||||||
OSRM.Browser.onLoadHandler( OSRM.init );
|
OSRM.Browser.onLoadHandler( OSRM.init );
|
Loading…
Reference in New Issue
Block a user