}
function broadcast (data, source) {
- var origin = (!location.origin || location.origin === "null")
- ? "*" : location.origin;
source = source || window;
if (window.parent && window.parent !== source && window.parent !== window) {
- window.parent.postMessage(data, origin);
+ window.parent.postMessage(data, "*");
}
for (var i = 0; i < window.frames.length; ++i) {
var w = window.frames[i].window;
if (w !== source) {
- w.postMessage(data, origin);
+ w.postMessage(data, "*");
}
}
}
event.preventDefault();
}
-window.addEventListener('DOMContentLoaded', function () {
- var links = document.querySelectorAll("a[href]:not([target=_blank])");
- for (var i = 0; i < links.length; ++i) {
- links[i].addEventListener('click', open);
+window.addEventListener('DOMContentLoaded', function () {
+ if (navigator.standalone) {
+ var links = document.querySelectorAll("a[href]:not([target=_blank])");
+ for (var i = 0; i < links.length; ++i) {
+ links[i].addEventListener('click', open);
+ }
}
FastClick.attach(document.body, { tapDelay: 50 });
}
function dismiss () {
- var overlay = document.getElementById("overlay");
- if (overlay)
- overlay.parentNode.removeChild(overlay);
- broadcast({ type: "dismiss" });
+ var open = document.querySelectorAll(".dialog.open");
+ for (var i = 0; i < open.length; ++i)
+ open[i].className = "dialog";
}
-function show (id, otherId) {
- var overlay = document.getElementById("overlay");
- if (!overlay) {
- overlay = document.createElement('div');
- overlay.id = 'overlay';
- } else {
- overlay.parentNode.removeChild(overlay);
- }
+function show (id) {
+ dismiss();
var target = document.getElementById(id);
- target.parentNode.insertBefore(overlay, target);
- if (otherId)
- broadcast({ type: 'show', id: otherId });
+ target.className += " open";
}