Linkify short links too in reports
This commit is contained in:
parent
e1594ce3d6
commit
635cc8bd15
|
@ -234,53 +234,53 @@ Zotero.Report = new function() {
|
||||||
table = true;
|
table = true;
|
||||||
var fieldText;
|
var fieldText;
|
||||||
|
|
||||||
// Shorten long URLs manually until Firefox wraps at ?
|
if (i == 'url' && arr[i].match(/^https?:\/\//)) {
|
||||||
// (like Safari) or supports the CSS3 word-wrap property
|
fieldText = arr[i];
|
||||||
var firstSpace = arr[i].indexOf(' ');
|
|
||||||
if (arr[i].indexOf('http://') === 0 &&
|
|
||||||
((firstSpace == -1 && arr[i].length > 29) || firstSpace > 29)) {
|
|
||||||
|
|
||||||
var stripped = false;
|
// Shorten long URLs manually until Firefox wraps at ?
|
||||||
|
// (like Safari) or supports the CSS3 word-wrap property
|
||||||
// Strip query string for sites we know don't need it
|
var firstSpace = fieldText.indexOf(' ');
|
||||||
for each(var re in _noQueryStringSites) {
|
if ((firstSpace == -1 && arr[i].length > 29) || firstSpace > 29) {
|
||||||
if (re.test(arr[i])){
|
var stripped = false;
|
||||||
var pos = arr[i].indexOf('?');
|
|
||||||
if (pos != -1) {
|
|
||||||
fieldText = arr[i].substr(0, pos);
|
|
||||||
stripped = true;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!stripped) {
|
|
||||||
// Add a line-break after the ? of long URLs
|
|
||||||
fieldText = arr[i].replace('?', "?<ZOTEROBREAK/>");
|
|
||||||
|
|
||||||
// Strip query string variables from the end while the
|
// Strip query string for sites we know don't need it
|
||||||
// query string is longer than the main part
|
for each(var re in _noQueryStringSites) {
|
||||||
var pos = fieldText.indexOf('?');
|
if (re.test(arr[i])){
|
||||||
if (pos != -1) {
|
var pos = arr[i].indexOf('?');
|
||||||
while (pos < (fieldText.length / 2)) {
|
if (pos != -1) {
|
||||||
var lastAmp = fieldText.lastIndexOf('&');
|
fieldText = arr[i].substr(0, pos);
|
||||||
if (lastAmp == -1) {
|
stripped = true;
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
fieldText = fieldText.substr(0, lastAmp);
|
break;
|
||||||
var shortened = true;
|
|
||||||
}
|
}
|
||||||
// Append '&...' to the end
|
}
|
||||||
if (shortened) {
|
|
||||||
fieldText += "&<ZOTEROHELLIP/>";
|
if (!stripped) {
|
||||||
|
// Add a line-break after the ? of long URLs
|
||||||
|
fieldText = arr[i].replace('?', "?<ZOTEROBREAK/>");
|
||||||
|
|
||||||
|
// Strip query string variables from the end while the
|
||||||
|
// query string is longer than the main part
|
||||||
|
var pos = fieldText.indexOf('?');
|
||||||
|
if (pos != -1) {
|
||||||
|
while (pos < (fieldText.length / 2)) {
|
||||||
|
var lastAmp = fieldText.lastIndexOf('&');
|
||||||
|
if (lastAmp == -1) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
fieldText = fieldText.substr(0, lastAmp);
|
||||||
|
var shortened = true;
|
||||||
|
}
|
||||||
|
// Append '&...' to the end
|
||||||
|
if (shortened) {
|
||||||
|
fieldText += "&<ZOTEROHELLIP/>";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (i == 'url') {
|
fieldText = '<a href="' + escapeXML(arr[i]) + '">'
|
||||||
fieldText = '<a href="' + escapeXML(arr[i]) + '">'
|
+ escapeXML(fieldText) + '</a>';
|
||||||
+ escapeXML(fieldText) + '</a>';
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
// Remove SQL date from multipart dates
|
// Remove SQL date from multipart dates
|
||||||
// (e.g. '2006-00-00 Summer 2006' becomes 'Summer 2006')
|
// (e.g. '2006-00-00 Summer 2006' becomes 'Summer 2006')
|
||||||
|
|
Loading…
Reference in New Issue
Block a user