diff --git a/pywb/static/default_banner.js b/pywb/static/default_banner.js
index 3497b0b0..640c6d70 100644
--- a/pywb/static/default_banner.js
+++ b/pywb/static/default_banner.js
@@ -61,27 +61,36 @@ This file is part of pywb, https://github.com/webrecorder/pywb
function set_banner(url, ts, is_live, title) {
var capture_str;
+ var title_str;
if (!ts) {
return;
}
+ var date_str = ts_to_date(ts, true);
+
if (title) {
- capture_str = '"' + title + '"';
+ capture_str = title;
} else {
capture_str = url;
}
+ title_str = capture_str;
capture_str = "" + capture_str + "";
if (is_live) {
+ title_str = " pywb Live: " + title_str;
capture_str += "Live on ";
} else {
+ title_str += "pywb Archived: " + title_str;
capture_str += "Archived on ";
}
- capture_str += ts_to_date(ts, true);
+ title_str += " (" + date_str + ")";
+ capture_str += date_str;
+
document.querySelector("#_wb_capture_info").innerHTML = capture_str;
+ window.document.title = title_str;
}
if (window.top != window) {
@@ -118,6 +127,25 @@ This file is part of pywb, https://github.com/webrecorder/pywb
return;
}
+ // favicon update
+ if (type === 'load') {
+ var head = document.querySelector('head');
+ var oldLink = document.querySelectorAll("link[rel*='icon']");
+ for (var i = 0; i < oldLink.length; i++) {
+ head.removeChild(oldLink[i]);
+ }
+
+ if (state.icons) {
+ for (var i = 0; i < state.icons.length; i++) {
+ var icon = state.icons[i];
+ var link = document.createElement('link');
+ link.rel = icon.rel;
+ link.href = icon.href;
+ head.appendChild(link);
+ }
+ }
+ }
+
set_banner(state.url, state.ts, state.is_live, title);
});
}
diff --git a/pywb/static/wb_frame.js b/pywb/static/wb_frame.js
index 6f90e3ed..d743e658 100644
--- a/pywb/static/wb_frame.js
+++ b/pywb/static/wb_frame.js
@@ -109,23 +109,6 @@ function ContentFrame(content_info) {
this.handle_message = function(state) {
var type = state.wb_type;
-
- if (type === 'load') {
- window.document.title = state.title + ' ' + state.ts;
- var head = document.querySelector('head');
- var oldLink = document.querySelectorAll("link[rel*='icon']");
- for (var i = 0; i < oldLink.length; i++) {
- head.removeChild(oldLink[i]);
- }
- var len = state.icons.length;
- for (var i = 0; i < len; i++) {
- var icon = state.icons[i];
- var link = document.createElement('link');
- link.rel = icon.rel;
- link.href = icon.href;
- head.appendChild(link);
- }
- }
if (type == "load" || type == "replace-url") {
this.set_url(state);
diff --git a/pywb/static/wombat.js b/pywb/static/wombat.js
index ab2d2dc4..74f4dc46 100644
--- a/pywb/static/wombat.js
+++ b/pywb/static/wombat.js
@@ -3619,26 +3619,31 @@ var _WBWombat = function($wbwindow, wbinfo) {
return;
}
- var icons = [];
- var hicons = $wbwindow.document.querySelectorAll("link[rel*='icon']");
- for (var i = 0; i < hicons.length; i++) {
- var hicon = hicons[i];
- icons.push({
- rel: hicon.rel,
- href: wb_getAttribute.call(hicon, 'href')
- })
- }
+ if ($wbwindow != $wbwindow.__WB_replay_top) {
+ return;
+ }
- var message = {
- "icons": icons,
- "url": $wbwindow.WB_wombat_location.href,
- "ts": wbinfo.timestamp,
- "request_ts": wbinfo.request_ts,
- "is_live": wbinfo.is_live,
- "title": $wbwindow.document ? $wbwindow.document.title : "",
- "readyState": $wbwindow.document.readyState,
- "wb_type": "load"
- }
+ var icons = [];
+
+ var hicons = $wbwindow.document.querySelectorAll("link[rel*='icon']");
+ for (var i = 0; i < hicons.length; i++) {
+ var hicon = hicons[i];
+ icons.push({
+ rel: hicon.rel,
+ href: wb_getAttribute.call(hicon, 'href')
+ })
+ }
+
+ var message = {
+ "icons": icons,
+ "url": $wbwindow.WB_wombat_location.href,
+ "ts": wbinfo.timestamp,
+ "request_ts": wbinfo.request_ts,
+ "is_live": wbinfo.is_live,
+ "title": $wbwindow.document ? $wbwindow.document.title : "",
+ "readyState": $wbwindow.document.readyState,
+ "wb_type": "load"
+ }
send_top_message(message);
}