{
	"translatorID":"87766765-919e-4d3b-9071-3dd7efe984c8",
	"translatorType":4,
	"label":"Revues.org",
	"creator":"Michael Berkowitz",
	"target":"http://.*\\.revues\\.org",
	"minVersion":"1.0.0b4.r5",
	"maxVersion":"",
	"priority":100,
	"inRepository":true,
	"lastUpdated":"2009-01-08 08:19:07"
}

function detectWeb(doc, url) {
	if (doc.evaluate('//div[@id="inside"]/div[@class="sommaire"]/dl[@class="documents"]/dd[@class="titre"]/a', doc, null, XPathResult.ANY_TYPE, null).iterateNext()
		|| doc.evaluate('//ul[@class="summary"]//div[@class="title"]/a', doc, null, XPathResult.ANY_TYPE, null).iterateNext()) {
		return "multiple";
	} else if (doc.evaluate('//h1[@id="docTitle"]/span[@class="text"]', doc, null, XPathResult.ANY_TYPE, null).iterateNext() || url.match(/document\d+/)) {
		return "journalArticle";
	}
}

function doWeb(doc, url) {
	var arts = new Array();
	if (detectWeb(doc, url) == "multiple") {
		if (doc.evaluate('//ul[@class="summary"]//div[@class="title"]/a', doc, null, XPathResult.ANY_TYPE, null).iterateNext()) {
			var xpath = '//ul[@class="summary"]//div[@class="title"]/a';
		} else if (doc.evaluate('//div[@id="inside"]/div[@class="sommaire"]/dl[@class="documents"]/dd[@class="titre"]/a', doc, null, XPathResult.ANY_TYPE, null).iterateNext()) {
			var xpath = '//div[@id="inside"]/div[@class="sommaire"]/dl[@class="documents"]/dd[@class="titre"]/a';
		}
		var titles = doc.evaluate(xpath, doc, null, XPathResult.ANY_TYPE, null);
		var title;
		var items = new Object();
		while (title = titles.iterateNext()) {
			items[title.href] = title.textContent;
		}
		items = Zotero.selectItems(items);
		for (var i in items) {
			arts.push(i);
		}
	} else {
		arts = [url];
	}
  	Zotero.Utilities.processDocuments(arts, function(doc) {
		var metas = doc.evaluate('//meta', doc, null, XPathResult.ANY_TYPE, null);
		var meta;
		var data = new Object();
		while (meta = metas.iterateNext()) {
			if (data[meta.name]) {
				data[meta.name.toLowerCase()] = data[meta.name.toLowerCase()] + ";" + meta.content;
			} else {
				data[meta.name.toLowerCase()] = meta.content
			}
		}
		var item = new Zotero.Item("journalArticle");
		item.url = data['url'];
		var authors = data['author'].split(';');
		for each (var aut in authors) {
			if (aut.match(/\w+/)) item.creators.push(Zotero.Utilities.cleanAuthor(aut.replace(/(.*)\s([^\s]+)$/, "$2 $1"), "author"));
		}
		item.tags = data['dc.subject'].split(/,\s+/);
		item.date = data['dc.date'];
		item.title = data['dc.title'];
		if (data['dc.relation.ispartof']) item.publicationTitle = data['dc.relation.ispartof'].match(/^[^,]+/)[0];
		item.abstractNote = data['description'];
		if (!item.abstractNote && data['dc.description']) item.abstractNote = data['dc.description'];
		
		item.complete();
	}, function() {Zotero.done();});
	Zotero.wait();
}