diff --git a/pom.xml b/pom.xml index 19b5709..db5bb07 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 de.srsoftware web4rail - 0.6.4 + 0.6.5 Web4Rail jar Java Model Railway Control diff --git a/resources/js/plan.js b/resources/js/plan.js index 595d885..3ad40e9 100644 --- a/resources/js/plan.js +++ b/resources/js/plan.js @@ -178,8 +178,11 @@ function request(data){ function runAction(ev){ var clicked = ev.target; var realm = clicked.hasAttribute('class') ? clicked.getAttribute('class') : null; - //console.log("runAction: ",{action: clicked.id, realm:realm}); - return request({action:ev.target.id,realm:realm}); // TODO: ask for name + console.log("runAction: ",{action: clicked.id, realm:realm}); + if (clicked.id == 'qrcode'){ + window.open("https://api.qrserver.com/v1/create-qr-code/?data="+window.location.href,'_blank'); + return false; + } else return request({action:ev.target.id,realm:realm}); // TODO: ask for name } function stream(ev){ diff --git a/src/main/java/de/srsoftware/web4rail/Application.java b/src/main/java/de/srsoftware/web4rail/Application.java index 23f85a5..d3de569 100644 --- a/src/main/java/de/srsoftware/web4rail/Application.java +++ b/src/main/java/de/srsoftware/web4rail/Application.java @@ -8,6 +8,7 @@ import java.io.IOException; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.lang.reflect.InvocationTargetException; +import java.net.InetAddress; import java.net.InetSocketAddress; import java.net.URI; import java.net.URLDecoder; @@ -48,7 +49,7 @@ public class Application implements Constants{ } catch (FileNotFoundException e) { plan = new Plan(); } - Desktop.getDesktop().browse(URI.create("http://localhost:"+config.getInt(PORT)+"/plan")); + Desktop.getDesktop().browse(URI.create("http://"+InetAddress.getLocalHost().getHostName()+":"+config.getInt(PORT)+"/plan")); } private static Object handle(HashMap params) throws IOException, ClassNotFoundException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException { diff --git a/src/main/java/de/srsoftware/web4rail/Plan.java b/src/main/java/de/srsoftware/web4rail/Plan.java index e25ff70..42cae9d 100644 --- a/src/main/java/de/srsoftware/web4rail/Plan.java +++ b/src/main/java/de/srsoftware/web4rail/Plan.java @@ -95,6 +95,7 @@ public class Plan implements Constants{ private static final String Y = "y"; private static final String DIRECTION = "direction"; private static final HashMap clients = new HashMap(); + private static final String ACTION_QR = "qrcode"; public HashMap tiles = new HashMap(); private HashSet blocks = new HashSet(); @@ -112,9 +113,10 @@ public class Plan implements Constants{ private Tag actionMenu() throws IOException { Tag actionMenu = new Tag("div").clazz("actions").content(t("Actions")); Tag actions = new Tag("div").clazz("list").content(""); - new Div("power").clazz(REALM_CU).content(t("Toggle power")).addTo(actions); - new Div("save").clazz(REALM_PLAN).content(t("Save plan")).addTo(actions); - new Div("analyze").clazz(REALM_PLAN).content(t("Analyze plan")).addTo(actions); + new Div(ACTION_POWER).clazz(REALM_CU).content(t("Toggle power")).addTo(actions); + new Div(ACTION_SAVE).clazz(REALM_PLAN).content(t("Save plan")).addTo(actions); + new Div(ACTION_ANALYZE).clazz(REALM_PLAN).content(t("Analyze plan")).addTo(actions); + new Div(ACTION_QR).clazz(REALM_PLAN).content(t("QR-Code")).addTo(actions); return actions.addTo(actionMenu); }