aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/org/traccar/Context.java9
-rw-r--r--src/org/traccar/notification/NotificationFormatter.java1
-rw-r--r--templates/mail/alarm.vm2
-rw-r--r--templates/mail/commandResult.vm1
-rw-r--r--templates/mail/deviceMoving.vm2
-rw-r--r--templates/mail/deviceOffline.vm1
-rw-r--r--templates/mail/deviceOnline.vm1
-rw-r--r--templates/mail/deviceOverspeed.vm2
-rw-r--r--templates/mail/deviceStopped.vm2
-rw-r--r--templates/mail/deviceUnknown.vm1
-rw-r--r--templates/mail/geofenceEnter.vm2
-rw-r--r--templates/mail/geofenceExit.vm2
-rw-r--r--templates/mail/ignitionOff.vm2
-rw-r--r--templates/mail/ignitionOn.vm2
-rw-r--r--templates/mail/maintenance.vm2
15 files changed, 23 insertions, 9 deletions
diff --git a/src/org/traccar/Context.java b/src/org/traccar/Context.java
index ef515ad2f..2cd1beecc 100644
--- a/src/org/traccar/Context.java
+++ b/src/org/traccar/Context.java
@@ -17,9 +17,11 @@ package org.traccar;
import com.ning.http.client.AsyncHttpClient;
+import java.net.InetAddress;
import java.util.Properties;
import org.apache.velocity.app.VelocityEngine;
+import org.eclipse.jetty.util.URIUtil;
import org.traccar.database.AliasesManager;
import org.traccar.database.ConnectionManager;
import org.traccar.database.DataManager;
@@ -256,6 +258,13 @@ public final class Context {
Context.getConfig().getString("mail.templatesPath", "templates/mail") + "/");
velocityProperties.setProperty("runtime.log.logsystem.class",
"org.apache.velocity.runtime.log.NullLogChute");
+
+ String address = config.getString("web.address", InetAddress.getLocalHost().getHostAddress());
+ int port = config.getInteger("web.port", 8082);
+ String webUrl = URIUtil.newURI("http", address, port, "", "");
+ webUrl = Context.getConfig().getString("web.url", webUrl);
+ velocityProperties.setProperty("web.url", webUrl);
+
velocityEngine = new VelocityEngine();
velocityEngine.init(velocityProperties);
}
diff --git a/src/org/traccar/notification/NotificationFormatter.java b/src/org/traccar/notification/NotificationFormatter.java
index 2d580922c..819c387d1 100644
--- a/src/org/traccar/notification/NotificationFormatter.java
+++ b/src/org/traccar/notification/NotificationFormatter.java
@@ -45,6 +45,7 @@ public final class NotificationFormatter {
if (event.getGeofenceId() != 0) {
velocityContext.put("geofence", Context.getGeofenceManager().getGeofence(event.getGeofenceId()));
}
+ velocityContext.put("webUrl", Context.getVelocityEngine().getProperty("web.url"));
Template template = null;
try {
diff --git a/templates/mail/alarm.vm b/templates/mail/alarm.vm
index 57b6ba9be..1d2b4fdf8 100644
--- a/templates/mail/alarm.vm
+++ b/templates/mail/alarm.vm
@@ -4,7 +4,7 @@
<body>
Device: $device.name<br>
Alarm: $position.getString("alarm")<br>
-Point: <a href="https://www.openstreetmap.org/?mlat=$position.latitude&mlon=$position.longitude#map=16/$position.latitude/$position.longitude">#if($position.address)$position.address#{else}$position.latitude°, $position.longitude°#end</a><br>
Time: $event.serverTime<br>
+Point: <a href="$webUrl?eventId=$event.id">#{if}($position.address)$position.address#{else}$position.latitude°, $position.longitude°#{end}</a><br>
</body>
</html>
diff --git a/templates/mail/commandResult.vm b/templates/mail/commandResult.vm
index 084152158..4c330584d 100644
--- a/templates/mail/commandResult.vm
+++ b/templates/mail/commandResult.vm
@@ -5,5 +5,6 @@
Device: $device.name<br>
Result: $position.getString("result")<br>
Time: $event.serverTime<br>
+Link: <a href="$webUrl?eventId=$event.id">$webUrl?eventId=$event.id</a>
</body>
</html>
diff --git a/templates/mail/deviceMoving.vm b/templates/mail/deviceMoving.vm
index 2a3c703b5..a946753e4 100644
--- a/templates/mail/deviceMoving.vm
+++ b/templates/mail/deviceMoving.vm
@@ -4,7 +4,7 @@
<body>
Device: $device.name<br>
Moving<br>
-Point: <a href="https://www.openstreetmap.org/?mlat=$position.latitude&mlon=$position.longitude#map=16/$position.latitude/$position.longitude">#if($position.address)$position.address#{else}$position.latitude°, $position.longitude°#end</a><br>
Time: $event.serverTime<br>
+Point: <a href="$webUrl?eventId=$event.id">#{if}($position.address)$position.address#{else}$position.latitude°, $position.longitude°#{end}</a><br>
</body>
</html>
diff --git a/templates/mail/deviceOffline.vm b/templates/mail/deviceOffline.vm
index a62133b71..ee7e96f05 100644
--- a/templates/mail/deviceOffline.vm
+++ b/templates/mail/deviceOffline.vm
@@ -5,5 +5,6 @@
Device: $device.name<br>
Offline<br>
Time: $event.serverTime<br>
+Link: <a href="$webUrl?eventId=$event.id">$webUrl?eventId=$event.id</a>
</body>
</html>
diff --git a/templates/mail/deviceOnline.vm b/templates/mail/deviceOnline.vm
index c38393062..379b5cc80 100644
--- a/templates/mail/deviceOnline.vm
+++ b/templates/mail/deviceOnline.vm
@@ -5,5 +5,6 @@
Device: $device.name<br>
Online<br>
Time: $event.serverTime<br>
+Link: <a href="$webUrl?eventId=$event.id">$webUrl?eventId=$event.id</a>
</body>
</html>
diff --git a/templates/mail/deviceOverspeed.vm b/templates/mail/deviceOverspeed.vm
index 5f8c65096..7b99c6a06 100644
--- a/templates/mail/deviceOverspeed.vm
+++ b/templates/mail/deviceOverspeed.vm
@@ -11,7 +11,7 @@
<body>
Device: $device.name<br>
Exceeds the speed: $speedString<br>
-Point: <a href="https://www.openstreetmap.org/?mlat=$position.latitude&mlon=$position.longitude#map=16/$position.latitude/$position.longitude">#if($position.address)$position.address#{else}$position.latitude°, $position.longitude°#end</a><br>
Time: $event.serverTime<br>
+Point: <a href="$webUrl?eventId=$event.id">#{if}($position.address)$position.address#{else}$position.latitude°, $position.longitude°#{end}</a><br>
</body>
</html>
diff --git a/templates/mail/deviceStopped.vm b/templates/mail/deviceStopped.vm
index 003ce2e13..c36e6f1b6 100644
--- a/templates/mail/deviceStopped.vm
+++ b/templates/mail/deviceStopped.vm
@@ -4,7 +4,7 @@
<body>
Device: $device.name<br>
Stopped<br>
-Point: <a href="https://www.openstreetmap.org/?mlat=$position.latitude&mlon=$position.longitude#map=16/$position.latitude/$position.longitude">#if($position.address)$position.address#{else}$position.latitude°, $position.longitude°#end</a><br>
Time: $event.serverTime<br>
+Point: <a href="$webUrl?eventId=$event.id">#{if}($position.address)$position.address#{else}$position.latitude°, $position.longitude°#{end}</a><br>
</body>
</html>
diff --git a/templates/mail/deviceUnknown.vm b/templates/mail/deviceUnknown.vm
index 75203bdfc..40b8fbfa7 100644
--- a/templates/mail/deviceUnknown.vm
+++ b/templates/mail/deviceUnknown.vm
@@ -5,5 +5,6 @@
Device: $device.name<br>
Status is unknown<br>
Time: $event.serverTime<br>
+Link: <a href="$webUrl?eventId=$event.id">$webUrl?eventId=$event.id</a>
</body>
</html>
diff --git a/templates/mail/geofenceEnter.vm b/templates/mail/geofenceEnter.vm
index 32ee153bc..cef24723a 100644
--- a/templates/mail/geofenceEnter.vm
+++ b/templates/mail/geofenceEnter.vm
@@ -4,7 +4,7 @@
<body>
Device: $device.name<br>
Has entered geofence: $geofence.name<br>
-Point: <a href="https://www.openstreetmap.org/?mlat=$position.latitude&mlon=$position.longitude#map=16/$position.latitude/$position.longitude">#if($position.address)$position.address#{else}$position.latitude°, $position.longitude°#end</a><br>
Time: $event.serverTime<br>
+Point: <a href="$webUrl?eventId=$event.id">#{if}($position.address)$position.address#{else}$position.latitude°, $position.longitude°#{end}</a><br>
</body>
</html>
diff --git a/templates/mail/geofenceExit.vm b/templates/mail/geofenceExit.vm
index b01653e49..e696e6556 100644
--- a/templates/mail/geofenceExit.vm
+++ b/templates/mail/geofenceExit.vm
@@ -4,7 +4,7 @@
<body>
Device: $device.name<br>
Has exited geofence: $geofence.name<br>
-Point: <a href="https://www.openstreetmap.org/?mlat=$position.latitude&mlon=$position.longitude#map=16/$position.latitude/$position.longitude">#if($position.address)$position.address#{else}$position.latitude°, $position.longitude°#end</a><br>
Time: $event.serverTime<br>
+Point: <a href="$webUrl?eventId=$event.id">#{if}($position.address)$position.address#{else}$position.latitude°, $position.longitude°#{end}</a><br>
</body>
</html>
diff --git a/templates/mail/ignitionOff.vm b/templates/mail/ignitionOff.vm
index b45ecfca1..229405cca 100644
--- a/templates/mail/ignitionOff.vm
+++ b/templates/mail/ignitionOff.vm
@@ -4,7 +4,7 @@
<body>
Device: $device.name<br>
Ignition OFF<br>
-Point: <a href="https://www.openstreetmap.org/?mlat=$position.latitude&mlon=$position.longitude#map=16/$position.latitude/$position.longitude">#if($position.address)$position.address#{else}$position.latitude°, $position.longitude°#end</a><br>
Time: $event.serverTime<br>
+Point: <a href="$webUrl?eventId=$event.id">#{if}($position.address)$position.address#{else}$position.latitude°, $position.longitude°#{end}</a><br>
</body>
</html>
diff --git a/templates/mail/ignitionOn.vm b/templates/mail/ignitionOn.vm
index b2f1041bb..2aeea0132 100644
--- a/templates/mail/ignitionOn.vm
+++ b/templates/mail/ignitionOn.vm
@@ -4,7 +4,7 @@
<body>
Device: $device.name<br>
Ignition ON<br>
-Point: <a href="https://www.openstreetmap.org/?mlat=$position.latitude&mlon=$position.longitude#map=16/$position.latitude/$position.longitude">#if($position.address)$position.address#{else}$position.latitude°, $position.longitude°#end</a><br>
Time: $event.serverTime<br>
+Point: <a href="$webUrl?eventId=$event.id">#{if}($position.address)$position.address#{else}$position.latitude°, $position.longitude°#{end}</a><br>
</body>
</html>
diff --git a/templates/mail/maintenance.vm b/templates/mail/maintenance.vm
index c7bc1a960..4184d138f 100644
--- a/templates/mail/maintenance.vm
+++ b/templates/mail/maintenance.vm
@@ -4,7 +4,7 @@
<body>
Device: $device.name<br>
Maintenance is required<br>
-Point: <a href="https://www.openstreetmap.org/?mlat=$position.latitude&mlon=$position.longitude#map=16/$position.latitude/$position.longitude">#if($position.address)$position.address#{else}$position.latitude°, $position.longitude°#end</a><br>
Time: $event.serverTime<br>
+Point: <a href="$webUrl?eventId=$event.id">#{if}($position.address)$position.address#{else}$position.latitude°, $position.longitude°#{end}</a><br>
</body>
</html>