|
|
|
@ -141,6 +141,81 @@ function setupCordovaBarcodeScanner() {
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Handle a deep link.
|
|
|
|
|
* @param {string} href the link
|
|
|
|
|
* @returns {boolean} true if handled, false if rejected.
|
|
|
|
|
*/
|
|
|
|
|
function handleDeepLink(href) {
|
|
|
|
|
var link = new URL(href);
|
|
|
|
|
if (link.host != "helena.express") {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
if (link.hash) {
|
|
|
|
|
link.fragment = link.hash.substr(1);
|
|
|
|
|
}
|
|
|
|
|
switch (link.pathname) {
|
|
|
|
|
case "/":
|
|
|
|
|
break;
|
|
|
|
|
case "/app":
|
|
|
|
|
break;
|
|
|
|
|
case "/track":
|
|
|
|
|
if (link.fragment) {
|
|
|
|
|
router.navigate("/track/" + link.fragment);
|
|
|
|
|
} else {
|
|
|
|
|
router.navigate("/track");
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case "/rates":
|
|
|
|
|
router.navigate("/rates");
|
|
|
|
|
break;
|
|
|
|
|
case "/schedule":
|
|
|
|
|
router.navigate("/appointment");
|
|
|
|
|
break;
|
|
|
|
|
case "/shop":
|
|
|
|
|
router.navigate("/shop");
|
|
|
|
|
break;
|
|
|
|
|
case "/pickup":
|
|
|
|
|
router.navigate("/send");
|
|
|
|
|
break;
|
|
|
|
|
case "/telegram":
|
|
|
|
|
case "/telegram/":
|
|
|
|
|
router.navigate("/telegram");
|
|
|
|
|
break;
|
|
|
|
|
case "/das":
|
|
|
|
|
router.navigate("/das");
|
|
|
|
|
break;
|
|
|
|
|
case "/das/map":
|
|
|
|
|
router.navigate("/das");
|
|
|
|
|
break;
|
|
|
|
|
case "/das/pickup":
|
|
|
|
|
if (link.fragment) {
|
|
|
|
|
sendPickupCode(link.fragment);
|
|
|
|
|
} else {
|
|
|
|
|
router.navigate("/das");
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case "/das/account":
|
|
|
|
|
router.navigate("/account");
|
|
|
|
|
break;
|
|
|
|
|
case "/mobile":
|
|
|
|
|
case "/mobile/":
|
|
|
|
|
router.navigate("/mobile");
|
|
|
|
|
break;
|
|
|
|
|
case "/postalpoint":
|
|
|
|
|
case "/postalpoint/":
|
|
|
|
|
router.navigate("/postalpoint");
|
|
|
|
|
break;
|
|
|
|
|
case "/money":
|
|
|
|
|
router.navigate("/moneyorder");
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
openBrowser(link.href);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function initCordova() {
|
|
|
|
|
platform_type = "cordova";
|
|
|
|
|
|
|
|
|
@ -221,70 +296,9 @@ function initCordova() {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
IonicDeeplink.onDeepLink(function (link) {
|
|
|
|
|
if (link.host != "helena.express") {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
// Wait a bit so the home page has time to load first.
|
|
|
|
|
setTimeout(function () {
|
|
|
|
|
switch (link.path) {
|
|
|
|
|
case "/":
|
|
|
|
|
break;
|
|
|
|
|
case "/app":
|
|
|
|
|
break;
|
|
|
|
|
case "/track":
|
|
|
|
|
if (link.fragment) {
|
|
|
|
|
router.navigate("/track/" + link.fragment);
|
|
|
|
|
} else {
|
|
|
|
|
router.navigate("/track");
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case "/rates":
|
|
|
|
|
router.navigate("/rates");
|
|
|
|
|
break;
|
|
|
|
|
case "/schedule":
|
|
|
|
|
router.navigate("/appointment");
|
|
|
|
|
break;
|
|
|
|
|
case "/shop":
|
|
|
|
|
router.navigate("/shop");
|
|
|
|
|
break;
|
|
|
|
|
case "/pickup":
|
|
|
|
|
router.navigate("/send");
|
|
|
|
|
break;
|
|
|
|
|
case "/telegram":
|
|
|
|
|
case "/telegram/":
|
|
|
|
|
router.navigate("/telegram");
|
|
|
|
|
break;
|
|
|
|
|
case "/das":
|
|
|
|
|
router.navigate("/das");
|
|
|
|
|
break;
|
|
|
|
|
case "/das/map":
|
|
|
|
|
router.navigate("/das");
|
|
|
|
|
break;
|
|
|
|
|
case "/das/pickup":
|
|
|
|
|
if (link.fragment) {
|
|
|
|
|
sendPickupCode(link.fragment);
|
|
|
|
|
} else {
|
|
|
|
|
router.navigate("/das");
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case "/das/account":
|
|
|
|
|
router.navigate("/account");
|
|
|
|
|
break;
|
|
|
|
|
case "/mobile":
|
|
|
|
|
case "/mobile/":
|
|
|
|
|
router.navigate("/mobile");
|
|
|
|
|
break;
|
|
|
|
|
case "/postalpoint":
|
|
|
|
|
case "/postalpoint/":
|
|
|
|
|
router.navigate("/postalpoint");
|
|
|
|
|
break;
|
|
|
|
|
case "/money":
|
|
|
|
|
router.navigate("/moneyorder");
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
openBrowser(link.url);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
handleDeepLink(link.url);
|
|
|
|
|
}, 1000);
|
|
|
|
|
});
|
|
|
|
|
}, false);
|
|
|
|
|