diff --git a/static/js/pandora/URL.js b/static/js/pandora/URL.js
index 57ab2c64..536843eb 100644
--- a/static/js/pandora/URL.js
+++ b/static/js/pandora/URL.js
@@ -293,9 +293,11 @@ pandora.URL = (function() {
///*
window.onhashchange = function() {
+ Ox.Request.cancel();
that.parse();
};
window.onpopstate = function(e) {
+ Ox.Request.cancel();
self.isPopState = true;
if (!Ox.isEmpty(e.state)) {
Ox.print('E.STATE', e.state)
diff --git a/static/js/pandora/ui/infoView.js b/static/js/pandora/ui/infoView.js
index 0041fdc9..f4edd28a 100644
--- a/static/js/pandora/ui/infoView.js
+++ b/static/js/pandora/ui/infoView.js
@@ -343,7 +343,7 @@ pandora.ui.infoView = function(data) {
.css(css)
.html(
formatKey(key) + data[key].map(function(value) {
- return '' + value.source + ''
+ return '' + value.source + ''
}).join(', ')
)
.appendTo($text);
@@ -385,18 +385,20 @@ pandora.ui.infoView = function(data) {
function formatValue(value, key) {
return (Ox.isArray(value) ? value : [value]).map(function(value) {
return key ?
- '' + value + ''
+ '' + value + ''
: value;
}).join(', ');
}
$text.find('a').click(function(event) {
- if (event.target.hostname == document.location.hostname &&
- event.target.pathname.substr(0, 5) != '/url=') {
- pandora.URL.push(event.target.pathname);
- return false;
- }
+ pandora.URL.push(
+ event.target.hostname == document.location.hostname
+ ? event.target.pathname
+ : '/url=' + encodeURIComponent(event.target.href)
+ );
+ return false;
});
+
function renderList() {
pandora.api.get({
id: data.id,