Revert "Remove old style conversion code"
We got multiple requests from users that use custom 0.8 styles
so we'll have to keep this code for now
This reverts commit a59ce2c343
.
This commit is contained in:
parent
e526a8fa89
commit
0bdebbd64c
1 changed files with 29 additions and 1 deletions
|
@ -713,7 +713,35 @@ Zotero.Style.prototype.getCiteProc = function(locale, automaticJournalAbbreviati
|
||||||
} else {
|
} else {
|
||||||
var version = this._version;
|
var version = this._version;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(version === "0.8") {
|
||||||
|
// get XSLT processor from updateCSL.xsl file
|
||||||
|
if(!Zotero.Styles.xsltProcessor) {
|
||||||
|
let protHandler = Components.classes["@mozilla.org/network/protocol;1?name=chrome"]
|
||||||
|
.createInstance(Components.interfaces.nsIProtocolHandler);
|
||||||
|
let channel = protHandler.newChannel(protHandler.newURI("chrome://zotero/content/updateCSL.xsl", "UTF-8", null));
|
||||||
|
let updateXSLT = Components.classes["@mozilla.org/xmlextras/domparser;1"]
|
||||||
|
.createInstance(Components.interfaces.nsIDOMParser)
|
||||||
|
.parseFromStream(channel.open(), "UTF-8", channel.contentLength, "application/xml");
|
||||||
|
|
||||||
|
// load XSLT file into XSLTProcessor
|
||||||
|
Zotero.Styles.xsltProcessor = Components.classes["@mozilla.org/document-transformer;1?type=xslt"]
|
||||||
|
.createInstance(Components.interfaces.nsIXSLTProcessor);
|
||||||
|
Zotero.Styles.xsltProcessor.importStylesheet(updateXSLT);
|
||||||
|
}
|
||||||
|
|
||||||
|
// read style file as DOM XML
|
||||||
|
let styleDOMXML = Components.classes["@mozilla.org/xmlextras/domparser;1"]
|
||||||
|
.createInstance(Components.interfaces.nsIDOMParser)
|
||||||
|
.parseFromString(this.getXML(), "text/xml");
|
||||||
|
|
||||||
|
// apply XSLT and serialize output
|
||||||
|
let newDOMXML = Zotero.Styles.xsltProcessor.transformToDocument(styleDOMXML);
|
||||||
|
var xml = Components.classes["@mozilla.org/xmlextras/xmlserializer;1"]
|
||||||
|
.createInstance(Components.interfaces.nsIDOMSerializer).serializeToString(newDOMXML);
|
||||||
|
} else {
|
||||||
var xml = this.getXML();
|
var xml = this.getXML();
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
var citeproc = new Zotero.CiteProc.CSL.Engine(
|
var citeproc = new Zotero.CiteProc.CSL.Engine(
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue