Upgrade citeproc-js to version 1.0.253

This commit is contained in:
Frank 2012-01-08 10:25:21 +08:00 committed by Simon Kornblith
parent d70a1ed7fe
commit ea72301c76

View File

@ -1963,7 +1963,7 @@ CSL.DateParser = function () {
}; };
CSL.Engine = function (sys, style, lang, forceLang) { CSL.Engine = function (sys, style, lang, forceLang) {
var attrs, langspec, localexml, locale; var attrs, langspec, localexml, locale;
this.processor_version = "1.0.252"; this.processor_version = "1.0.253";
this.csl_version = "1.0"; this.csl_version = "1.0";
this.sys = sys; this.sys = sys;
this.sys.xml = new CSL.System.Xml.Parsing(); this.sys.xml = new CSL.System.Xml.Parsing();
@ -3586,6 +3586,7 @@ CSL.getCitationCluster = function (inputList, citationID) {
params.have_collapsed = this.tmp.have_collapsed; params.have_collapsed = this.tmp.have_collapsed;
myparams.push(params); myparams.push(params);
} }
this.tmp.has_purged_parallel = false;
this.parallel.PruneOutputQueue(this); this.parallel.PruneOutputQueue(this);
empties = 0; empties = 0;
myblobs = this.output.queue.slice(); myblobs = this.output.queue.slice();
@ -3642,14 +3643,18 @@ CSL.getCitationCluster = function (inputList, citationID) {
return composite; return composite;
} }
if ("object" === typeof composite && composite.length === 0 && !item["suppress-author"]) { if ("object" === typeof composite && composite.length === 0 && !item["suppress-author"]) {
if (this.tmp.has_purged_parallel) {
composite.push("");
} else {
composite.push("[CSL STYLE ERROR: reference with no printed form.]"); composite.push("[CSL STYLE ERROR: reference with no printed form.]");
} }
}
if (objects.length && "string" === typeof composite[0]) { if (objects.length && "string" === typeof composite[0]) {
composite.reverse(); composite.reverse();
var tmpstr = composite.pop(); var tmpstr = composite.pop();
if (tmpstr && tmpstr.slice(0, 1) === ",") { if (tmpstr && tmpstr.slice(0, 1) === ",") {
objects.push(tmpstr); objects.push(tmpstr);
} else { } else if (tmpstr) {
objects.push(txt_esc(this.tmp.splice_delimiter) + tmpstr); objects.push(txt_esc(this.tmp.splice_delimiter) + tmpstr);
} }
} else { } else {
@ -8828,6 +8833,7 @@ CSL.Parallel.prototype.purgeVariableBlobs = function (cite, varnames) {
for (ppos = llen; ppos > -1; ppos += -1) { for (ppos = llen; ppos > -1; ppos += -1) {
b = cite[varname].blobs[ppos]; b = cite[varname].blobs[ppos];
b[0].blobs = b[0].blobs.slice(0, b[1]).concat(b[0].blobs.slice((b[1] + 1))); b[0].blobs = b[0].blobs.slice(0, b[1]).concat(b[0].blobs.slice((b[1] + 1)));
this.state.tmp.has_purged_parallel = true;
if (b[0] && b[0].strings && "string" == typeof b[0].strings.oops if (b[0] && b[0].strings && "string" == typeof b[0].strings.oops
&& b[0].parent && b[0].parent) { && b[0].parent && b[0].parent) {
b[0].parent.parent.strings.delimiter = b[0].strings.oops; b[0].parent.parent.strings.delimiter = b[0].strings.oops;