Update to citeproc-js 1.0.285

This commit is contained in:
Simon Kornblith 2012-02-16 07:56:40 -05:00
parent 2296d1f6ac
commit a47174748e

View file

@ -2148,7 +2148,7 @@ CSL.DateParser = function () {
};
CSL.Engine = function (sys, style, lang, forceLang) {
var attrs, langspec, localexml, locale;
this.processor_version = "1.0.283";
this.processor_version = "1.0.285";
this.csl_version = "1.0";
this.sys = sys;
this.sys.xml = new CSL.System.Xml.Parsing();
@ -7500,6 +7500,9 @@ CSL.Node.text = {
} else {
state.transform.setTransformFallback(true);
state.transform.setAbbreviationFallback(true);
if (this.variables_real[0] === "subjurisdiction") {
state.transform.setSuppressMonitor("container-title");
}
func = state.transform.getOutputFunction(this.variables);
}
if (this.variables_real[0] === "container-title") {
@ -7554,14 +7557,16 @@ CSL.Node.text = {
}
};
} else if (this.variables_real[0] === "hereinafter") {
func = function (state, Item) {
var hereinafter_info = state.transform.getHereinafter(Item);
var value = state.transform.abbrevs[hereinafter_info[0]].hereinafter[hereinafter_info[1]];
if (value) {
state.tmp.group_context.value()[2] = true;
state.output.append(value, this);
}
};
if (state.sys.getAbbreviation) {
func = function (state, Item) {
var hereinafter_info = state.transform.getHereinafter(Item);
var value = state.transform.abbrevs[hereinafter_info[0]].hereinafter[hereinafter_info[1]];
if (value) {
state.tmp.group_context.value()[2] = true;
state.output.append(value, this);
}
};
}
} else if (this.variables_real[0] === "URL") {
func = function (state, Item) {
var value;
@ -8585,7 +8590,8 @@ CSL.Transform = function (state) {
opt = {
abbreviation_fallback: false,
alternative_varname: false,
transform_fallback: false
transform_fallback: false,
suppress_monitor: false
};
}
this.init = init;
@ -8661,6 +8667,10 @@ CSL.Transform = function (state) {
opt.abbreviation_fallback = b;
}
this.setAbbreviationFallback = setAbbreviationFallback;
function setSuppressMonitor(b) {
opt.suppress_monitor = b;
}
this.setSuppressMonitor = setSuppressMonitor;
function setAlternativeVariableName(s) {
opt.alternative_varname = s;
}
@ -8731,9 +8741,10 @@ CSL.Transform = function (state) {
var myabbrev_family, myfieldname, abbreviation_fallback, alternative_varname, transform_locale, transform_fallback, getTextSubfield;
myabbrev_family = abbrev_family;
myfieldname = fieldname;
abbreviation_fallback = opt.abbreviation_fallback;
alternative_varname = opt.alternative_varname;
transform_fallback = opt.transform_fallback;
var abbreviation_fallback = opt.abbreviation_fallback;
var alternative_varname = opt.alternative_varname;
var transform_fallback = opt.transform_fallback;
var suppress_monitor = opt.suppress_monitor;
var localesets;
var langPrefs = CSL.LangPrefsMap[myfieldname];
if (!langPrefs) {
@ -8797,6 +8808,12 @@ CSL.Transform = function (state) {
}
if (myabbrev_family) {
primary = abbreviate(state, Item, alternative_varname, primary, myabbrev_family, true);
if (suppress_monitor && primary) {
suppressing_partner = abbreviate(state, Item, false, Item["container-title"], "container-title", true);
if (suppressing_partner && suppressing_partner.slice(0, primary.length) === primary) {
return null;
}
}
secondary = abbreviate(state, Item, false, secondary, myabbrev_family, true);
tertiary = abbreviate(state, Item, false, tertiary, myabbrev_family, true);
}