From 20f738ba0de60af91e1105758b61b2e6c066782d Mon Sep 17 00:00:00 2001
From: windingwind <33902321+windingwind@users.noreply.github.com>
Date: Fri, 15 Aug 2025 07:30:42 +0200
Subject: [PATCH] Remove timeline related code (#5484)
---
.../content/zotero/ZoteroProtocolHandler.mjs | 262 ----------
chrome/content/zotero/timelineInterface.js | 52 --
chrome/content/zotero/zotero.mjs | 1 -
chrome/content/zotero/zoteroPane.xhtml | 1 -
.../locale/af-ZA/zotero/timeline.properties | 21 -
chrome/locale/af-ZA/zotero/zotero.dtd | 1 -
chrome/locale/ar/zotero/timeline.properties | 21 -
chrome/locale/ar/zotero/zotero.dtd | 1 -
.../locale/bg-BG/zotero/timeline.properties | 21 -
chrome/locale/bg-BG/zotero/zotero.dtd | 1 -
chrome/locale/br/zotero/timeline.properties | 21 -
chrome/locale/br/zotero/zotero.dtd | 1 -
.../locale/ca-AD/zotero/timeline.properties | 21 -
chrome/locale/ca-AD/zotero/zotero.dtd | 1 -
.../locale/cs-CZ/zotero/timeline.properties | 21 -
chrome/locale/cs-CZ/zotero/zotero.dtd | 1 -
.../locale/da-DK/zotero/timeline.properties | 21 -
chrome/locale/da-DK/zotero/zotero.dtd | 1 -
chrome/locale/de/zotero/timeline.properties | 21 -
chrome/locale/de/zotero/zotero.dtd | 1 -
.../locale/el-GR/zotero/timeline.properties | 21 -
chrome/locale/el-GR/zotero/zotero.dtd | 1 -
.../locale/en-GB/zotero/timeline.properties | 21 -
chrome/locale/en-GB/zotero/zotero.dtd | 1 -
.../locale/en-US/zotero/timeline.properties | 21 -
chrome/locale/en-US/zotero/zotero.dtd | 1 -
.../locale/es-ES/zotero/timeline.properties | 21 -
chrome/locale/es-ES/zotero/zotero.dtd | 1 -
.../locale/et-EE/zotero/timeline.properties | 21 -
chrome/locale/et-EE/zotero/zotero.dtd | 1 -
.../locale/eu-ES/zotero/timeline.properties | 21 -
chrome/locale/eu-ES/zotero/zotero.dtd | 1 -
chrome/locale/fa/zotero/timeline.properties | 21 -
chrome/locale/fa/zotero/zotero.dtd | 1 -
.../locale/fi-FI/zotero/timeline.properties | 21 -
chrome/locale/fi-FI/zotero/zotero.dtd | 1 -
.../locale/fr-FR/zotero/timeline.properties | 21 -
chrome/locale/fr-FR/zotero/zotero.dtd | 1 -
.../locale/gl-ES/zotero/timeline.properties | 21 -
chrome/locale/gl-ES/zotero/zotero.dtd | 1 -
.../locale/he-IL/zotero/timeline.properties | 21 -
chrome/locale/he-IL/zotero/zotero.dtd | 1 -
.../locale/hr-HR/zotero/timeline.properties | 21 -
chrome/locale/hr-HR/zotero/zotero.dtd | 1 -
.../locale/hu-HU/zotero/timeline.properties | 21 -
chrome/locale/hu-HU/zotero/zotero.dtd | 1 -
.../locale/id-ID/zotero/timeline.properties | 21 -
chrome/locale/id-ID/zotero/zotero.dtd | 1 -
.../locale/is-IS/zotero/timeline.properties | 21 -
chrome/locale/is-IS/zotero/zotero.dtd | 1 -
.../locale/it-IT/zotero/timeline.properties | 21 -
chrome/locale/it-IT/zotero/zotero.dtd | 1 -
.../locale/ja-JP/zotero/timeline.properties | 21 -
chrome/locale/ja-JP/zotero/zotero.dtd | 1 -
chrome/locale/km/zotero/timeline.properties | 21 -
chrome/locale/km/zotero/zotero.dtd | 1 -
.../locale/ko-KR/zotero/timeline.properties | 21 -
chrome/locale/ko-KR/zotero/zotero.dtd | 1 -
.../locale/lt-LT/zotero/timeline.properties | 21 -
chrome/locale/lt-LT/zotero/zotero.dtd | 1 -
.../locale/mn-MN/zotero/timeline.properties | 21 -
chrome/locale/mn-MN/zotero/zotero.dtd | 1 -
.../locale/nb-NO/zotero/timeline.properties | 21 -
chrome/locale/nb-NO/zotero/zotero.dtd | 1 -
.../locale/nl-NL/zotero/timeline.properties | 21 -
chrome/locale/nl-NL/zotero/zotero.dtd | 1 -
.../locale/nn-NO/zotero/timeline.properties | 21 -
chrome/locale/nn-NO/zotero/zotero.dtd | 1 -
.../locale/pl-PL/zotero/timeline.properties | 21 -
chrome/locale/pl-PL/zotero/zotero.dtd | 1 -
.../locale/pt-BR/zotero/timeline.properties | 21 -
chrome/locale/pt-BR/zotero/zotero.dtd | 1 -
.../locale/pt-PT/zotero/timeline.properties | 21 -
chrome/locale/pt-PT/zotero/zotero.dtd | 1 -
.../locale/ro-RO/zotero/timeline.properties | 21 -
chrome/locale/ro-RO/zotero/zotero.dtd | 1 -
.../locale/ru-RU/zotero/timeline.properties | 21 -
chrome/locale/ru-RU/zotero/zotero.dtd | 1 -
.../locale/sk-SK/zotero/timeline.properties | 21 -
chrome/locale/sk-SK/zotero/zotero.dtd | 1 -
.../locale/sl-SI/zotero/timeline.properties | 21 -
chrome/locale/sl-SI/zotero/zotero.dtd | 1 -
.../locale/sr-RS/zotero/timeline.properties | 21 -
chrome/locale/sr-RS/zotero/zotero.dtd | 1 -
.../locale/sv-SE/zotero/timeline.properties | 21 -
chrome/locale/sv-SE/zotero/zotero.dtd | 1 -
chrome/locale/ta/zotero/timeline.properties | 21 -
chrome/locale/ta/zotero/zotero.dtd | 1 -
.../locale/th-TH/zotero/timeline.properties | 21 -
chrome/locale/th-TH/zotero/zotero.dtd | 1 -
.../locale/tr-TR/zotero/timeline.properties | 21 -
chrome/locale/tr-TR/zotero/zotero.dtd | 1 -
.../locale/uk-UA/zotero/timeline.properties | 21 -
chrome/locale/uk-UA/zotero/zotero.dtd | 1 -
.../locale/vi-VN/zotero/timeline.properties | 21 -
chrome/locale/vi-VN/zotero/zotero.dtd | 1 -
.../locale/zh-CN/zotero/timeline.properties | 21 -
chrome/locale/zh-CN/zotero/zotero.dtd | 1 -
.../locale/zh-TW/zotero/timeline.properties | 21 -
chrome/locale/zh-TW/zotero/zotero.dtd | 1 -
.../skin/default/zotero/timeline/bundle.css | 180 -------
chrome/skin/default/zotero/timeline/bundle.js | 316 ------------
.../default/zotero/timeline/timeline-api.js | 267 ----------
.../default/zotero/timeline/timeline.html | 94 ----
.../zotero/timeline/timelineControls.js | 480 ------------------
eslint.config.mjs | 2 -
106 files changed, 2711 deletions(-)
delete mode 100644 chrome/content/zotero/timelineInterface.js
delete mode 100644 chrome/locale/af-ZA/zotero/timeline.properties
delete mode 100644 chrome/locale/ar/zotero/timeline.properties
delete mode 100644 chrome/locale/bg-BG/zotero/timeline.properties
delete mode 100644 chrome/locale/br/zotero/timeline.properties
delete mode 100644 chrome/locale/ca-AD/zotero/timeline.properties
delete mode 100644 chrome/locale/cs-CZ/zotero/timeline.properties
delete mode 100644 chrome/locale/da-DK/zotero/timeline.properties
delete mode 100644 chrome/locale/de/zotero/timeline.properties
delete mode 100644 chrome/locale/el-GR/zotero/timeline.properties
delete mode 100644 chrome/locale/en-GB/zotero/timeline.properties
delete mode 100644 chrome/locale/en-US/zotero/timeline.properties
delete mode 100644 chrome/locale/es-ES/zotero/timeline.properties
delete mode 100644 chrome/locale/et-EE/zotero/timeline.properties
delete mode 100644 chrome/locale/eu-ES/zotero/timeline.properties
delete mode 100644 chrome/locale/fa/zotero/timeline.properties
delete mode 100644 chrome/locale/fi-FI/zotero/timeline.properties
delete mode 100644 chrome/locale/fr-FR/zotero/timeline.properties
delete mode 100644 chrome/locale/gl-ES/zotero/timeline.properties
delete mode 100644 chrome/locale/he-IL/zotero/timeline.properties
delete mode 100644 chrome/locale/hr-HR/zotero/timeline.properties
delete mode 100644 chrome/locale/hu-HU/zotero/timeline.properties
delete mode 100644 chrome/locale/id-ID/zotero/timeline.properties
delete mode 100644 chrome/locale/is-IS/zotero/timeline.properties
delete mode 100644 chrome/locale/it-IT/zotero/timeline.properties
delete mode 100644 chrome/locale/ja-JP/zotero/timeline.properties
delete mode 100644 chrome/locale/km/zotero/timeline.properties
delete mode 100644 chrome/locale/ko-KR/zotero/timeline.properties
delete mode 100644 chrome/locale/lt-LT/zotero/timeline.properties
delete mode 100644 chrome/locale/mn-MN/zotero/timeline.properties
delete mode 100644 chrome/locale/nb-NO/zotero/timeline.properties
delete mode 100644 chrome/locale/nl-NL/zotero/timeline.properties
delete mode 100644 chrome/locale/nn-NO/zotero/timeline.properties
delete mode 100644 chrome/locale/pl-PL/zotero/timeline.properties
delete mode 100644 chrome/locale/pt-BR/zotero/timeline.properties
delete mode 100644 chrome/locale/pt-PT/zotero/timeline.properties
delete mode 100644 chrome/locale/ro-RO/zotero/timeline.properties
delete mode 100644 chrome/locale/ru-RU/zotero/timeline.properties
delete mode 100644 chrome/locale/sk-SK/zotero/timeline.properties
delete mode 100644 chrome/locale/sl-SI/zotero/timeline.properties
delete mode 100644 chrome/locale/sr-RS/zotero/timeline.properties
delete mode 100644 chrome/locale/sv-SE/zotero/timeline.properties
delete mode 100644 chrome/locale/ta/zotero/timeline.properties
delete mode 100644 chrome/locale/th-TH/zotero/timeline.properties
delete mode 100644 chrome/locale/tr-TR/zotero/timeline.properties
delete mode 100644 chrome/locale/uk-UA/zotero/timeline.properties
delete mode 100644 chrome/locale/vi-VN/zotero/timeline.properties
delete mode 100644 chrome/locale/zh-CN/zotero/timeline.properties
delete mode 100644 chrome/locale/zh-TW/zotero/timeline.properties
delete mode 100644 chrome/skin/default/zotero/timeline/bundle.css
delete mode 100644 chrome/skin/default/zotero/timeline/bundle.js
delete mode 100644 chrome/skin/default/zotero/timeline/timeline-api.js
delete mode 100644 chrome/skin/default/zotero/timeline/timeline.html
delete mode 100644 chrome/skin/default/zotero/timeline/timelineControls.js
diff --git a/chrome/content/zotero/ZoteroProtocolHandler.mjs b/chrome/content/zotero/ZoteroProtocolHandler.mjs
index 9c207b5fd0..29ca5afd8d 100644
--- a/chrome/content/zotero/ZoteroProtocolHandler.mjs
+++ b/chrome/content/zotero/ZoteroProtocolHandler.mjs
@@ -540,267 +540,6 @@ export function ZoteroProtocolHandler() {
}
};
- /**
- * Generate MIT SIMILE Timeline
- *
- * Query string key abbreviations: intervals = i
- * dateType = t
- * timelineDate = d
- *
- * interval abbreviations: day = d | month = m | year = y | decade = e | century = c | millennium = i
- * dateType abbreviations: date = d | dateAdded = da | dateModified = dm
- * timelineDate format: shortMonthName.day.year (year is positive for A.D. and negative for B.C.)
- *
- * Defaults: intervals = month, year, decade
- * dateType = date
- * timelineDate = today's date
- */
- var TimelineExtension = {
- loadAsChrome: true,
-
- newChannel: function (uri, loadInfo) {
- return new AsyncChannel(uri, loadInfo, async function () {
- var userLibraryID = Zotero.Libraries.userLibraryID;
-
- var path = uri.spec.match(/zotero:\/\/[^/]+(.*)/)[1];
- if (!path) {
- this.contentType = 'text/html';
- return 'Invalid URL';
- }
-
- var params = {};
- var router = new Zotero.Router(params);
-
- // HTML
- router.add('library/:scopeObject/:scopeObjectKey', function () {
- params.libraryID = userLibraryID;
- params.controller = 'html';
- });
- router.add('groups/:groupID/:scopeObject/:scopeObjectKey', function () {
- params.controller = 'html';
- });
- router.add('library', function () {
- params.libraryID = userLibraryID;
- params.controller = 'html';
- });
- router.add('groups/:groupID', function () {
- params.controller = 'html';
- });
-
- // Data
- router.add('data/library/:scopeObject/:scopeObjectKey', function () {
- params.libraryID = userLibraryID;
- params.controller = 'data';
- });
- router.add('data/groups/:groupID/:scopeObject/:scopeObjectKey', function () {
- params.controller = 'data';
- });
- router.add('data/library', function () {
- params.libraryID = userLibraryID;
- params.controller = 'data';
- });
- router.add('data/groups/:groupID', function () {
- params.controller = 'data';
- });
-
- // Old-style HTML URLs
- router.add('collection/:id', function () {
- params.controller = 'html';
- params.scopeObject = 'collections';
- var lkh = Zotero.Collections.parseLibraryKeyHash(params.id);
- if (lkh) {
- params.libraryID = lkh.libraryID || userLibraryID;
- params.scopeObjectKey = lkh.key;
- }
- else {
- params.scopeObjectID = params.id;
- }
- delete params.id;
- });
- router.add('search/:id', function () {
- params.controller = 'html';
- params.scopeObject = 'searches';
- var lkh = Zotero.Searches.parseLibraryKeyHash(params.id);
- if (lkh) {
- params.libraryID = lkh.libraryID || userLibraryID;
- params.scopeObjectKey = lkh.key;
- }
- else {
- params.scopeObjectID = params.id;
- }
- delete params.id;
- });
- router.add('/', function () {
- params.controller = 'html';
- params.libraryID = userLibraryID;
- });
-
- var parsed = router.run(path);
- if (!parsed) {
- this.contentType = 'text/html';
- return "URL could not be parsed";
- }
- if (params.groupID) {
- params.libraryID = Zotero.Groups.getLibraryIDFromGroupID(params.groupID);
- }
-
- var intervals = params.i ? params.i : '';
- var timelineDate = params.d ? params.d : '';
- var dateType = params.t ? params.t : '';
-
- // Get the collection or search object
- var collection, search;
- switch (params.scopeObject) {
- case 'collections':
- if (params.scopeObjectKey) {
- collection = await Zotero.Collections.getByLibraryAndKeyAsync(
- params.libraryID, params.scopeObjectKey
- );
- }
- else {
- collection = await Zotero.Collections.getAsync(params.scopeObjectID);
- }
- if (!collection) {
- this.contentType = 'text/html';
- return 'Invalid collection ID or key';
- }
- break;
-
- case 'searches':
- if (params.scopeObjectKey) {
- var s = await Zotero.Searches.getByLibraryAndKeyAsync(
- params.libraryID, params.scopeObjectKey
- );
- }
- else {
- var s = await Zotero.Searches.getAsync(params.scopeObjectID);
- }
- if (!s) {
- return 'Invalid search ID or key';
- }
-
- // FIXME: Hack to exclude group libraries for now
- var search = new Zotero.Search();
- search.setScope(s);
- var groups = Zotero.Groups.getAll();
- for (let group of groups) {
- search.addCondition('libraryID', 'isNot', group.libraryID);
- }
- break;
- }
-
- //
- // Create XML file
- //
- if (params.controller == 'data') {
- switch (params.scopeObject) {
- case 'collections':
- var results = collection.getChildItems();
- break;
-
- case 'searches':
- var ids = await search.search();
- var results = await Zotero.Items.getAsync(ids);
- break;
-
- default:
- if (params.scopeObject) {
- return "Invalid scope object '" + params.scopeObject + "'";
- }
-
- let s = new Zotero.Search();
- s.addCondition('libraryID', 'is', params.libraryID);
- s.addCondition('noChildren', 'true');
- var ids = await s.search();
- var results = await Zotero.Items.getAsync(ids);
- }
-
- var items = [];
- // Only include parent items
- for (let i=0; i.
-
- ***** END LICENSE BLOCK *****
-*/
-
-
-var Zotero_Timeline_Interface = new function() {
- /*
- * Load a timeline for the currently selected collection
- */
- this.loadTimeline = function () {
- var uri = 'zotero://timeline/';
-
- var col = ZoteroPane_Local.getSelectedCollection();
- if (col) {
- uri += Zotero.API.getLibraryPrefix(col.libraryID) + '/collections/' + col.key;
- }
- else {
- var s = ZoteroPane_Local.getSelectedSavedSearch();
- if (s) {
- uri += Zotero.API.getLibraryPrefix(s.libraryID) + '/searches/' + s.key;
- }
- else {
- let libraryID = ZoteroPane_Local.getSelectedLibraryID();
- if (libraryID) {
- uri += Zotero.API.getLibraryPrefix(libraryID);
- }
- }
- }
- Zotero.openInViewer(uri);
- }
-}
diff --git a/chrome/content/zotero/zotero.mjs b/chrome/content/zotero/zotero.mjs
index 85d3552440..54f1169e68 100644
--- a/chrome/content/zotero/zotero.mjs
+++ b/chrome/content/zotero/zotero.mjs
@@ -152,7 +152,6 @@ const xpcomFilesLocal = [
'storage/zfs',
'storage/webdav',
'syncedSettings',
- 'timeline',
'uri',
'users',
'translation/translate_item',
diff --git a/chrome/content/zotero/zoteroPane.xhtml b/chrome/content/zotero/zoteroPane.xhtml
index df3b04608f..c87de54bcb 100644
--- a/chrome/content/zotero/zoteroPane.xhtml
+++ b/chrome/content/zotero/zoteroPane.xhtml
@@ -82,7 +82,6 @@
Services.scriptloader.loadSubScript("chrome://zotero/content/contextPane.js", this);
Services.scriptloader.loadSubScript("chrome://zotero/content/fileInterface.js", this);
Services.scriptloader.loadSubScript("chrome://zotero/content/reportInterface.js", this);
- Services.scriptloader.loadSubScript("chrome://zotero/content/timelineInterface.js", this);
Services.scriptloader.loadSubScript("chrome://zotero/content/progressQueueDialog.js", this);
Services.scriptloader.loadSubScript("chrome://zotero/content/lookup.js", this);
Services.scriptloader.loadSubScript("chrome://zotero/content/locateMenu.js", this);
diff --git a/chrome/locale/af-ZA/zotero/timeline.properties b/chrome/locale/af-ZA/zotero/timeline.properties
deleted file mode 100644
index a11c0c271a..0000000000
--- a/chrome/locale/af-ZA/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero-tydlyn
-general.filter=Filter:
-general.highlight=Verlig:
-general.clearAll=Alles skoonmaak
-general.jumpToYear=Spring na jaar:
-general.firstBand=Eerste band:
-general.secondBand=Tweede band:
-general.thirdBand=Derde band:
-general.dateType=Datatipe:
-general.timelineHeight=Tydlyn-hoogte:
-general.fitToScreen=Pas by skerm
-
-interval.day=Dag
-interval.month=Maand
-interval.year=Jaar
-interval.decade=Dekade
-interval.century=Eeu
-interval.millennium=Millennium
-
-dateType.published=Datum gepubliseer
-dateType.modified=Datum gewysig
diff --git a/chrome/locale/af-ZA/zotero/zotero.dtd b/chrome/locale/af-ZA/zotero/zotero.dtd
index ef5c21da69..23aa5b0916 100644
--- a/chrome/locale/af-ZA/zotero/zotero.dtd
+++ b/chrome/locale/af-ZA/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/ar/zotero/timeline.properties b/chrome/locale/ar/zotero/timeline.properties
deleted file mode 100644
index 9b74c62283..0000000000
--- a/chrome/locale/ar/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=خط زوتيرو الزمني
-general.filter=تصفية:
-general.highlight=تمييز لوني:
-general.clearAll=مسح الكل
-general.jumpToYear=إنتقل إلى سنة:
-general.firstBand=المجموعة الأولى:
-general.secondBand=المجموعة الثانية:
-general.thirdBand=المجموعة الثالثة:
-general.dateType=نوع التاريخ:
-general.timelineHeight=ارتفاع الخط الزمني:
-general.fitToScreen=ملئ الشاشة
-
-interval.day=اليوم
-interval.month=الشهر
-interval.year=السنة
-interval.decade=العقد
-interval.century=القرن
-interval.millennium=الألفية
-
-dateType.published=تاريخ النشر
-dateType.modified=تاريخ التعديل
diff --git a/chrome/locale/ar/zotero/zotero.dtd b/chrome/locale/ar/zotero/zotero.dtd
index 2643b89f8c..e9b098ec8b 100644
--- a/chrome/locale/ar/zotero/zotero.dtd
+++ b/chrome/locale/ar/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/bg-BG/zotero/timeline.properties b/chrome/locale/bg-BG/zotero/timeline.properties
deleted file mode 100644
index f1dfacb813..0000000000
--- a/chrome/locale/bg-BG/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Хронология на Зотеро
-general.filter=Филтър:
-general.highlight=Маркиране:
-general.clearAll=Изчистване на всичко
-general.jumpToYear=Прехвърляне към година:
-general.firstBand=Първа лента:
-general.secondBand=Втора лента:
-general.thirdBand=Трета лента:
-general.dateType=Тип на датата:
-general.timelineHeight=Височина на хронологията:
-general.fitToScreen=Напасване към размера на екрана
-
-interval.day=Ден
-interval.month=Месец
-interval.year=Година
-interval.decade=Десетилетие
-interval.century=Век
-interval.millennium=Хилядолетие
-
-dateType.published=Дата на публикуване
-dateType.modified=Дата на промяна
diff --git a/chrome/locale/bg-BG/zotero/zotero.dtd b/chrome/locale/bg-BG/zotero/zotero.dtd
index 42e4d1107a..136d5837c5 100644
--- a/chrome/locale/bg-BG/zotero/zotero.dtd
+++ b/chrome/locale/bg-BG/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/br/zotero/timeline.properties b/chrome/locale/br/zotero/timeline.properties
deleted file mode 100644
index f571ffd563..0000000000
--- a/chrome/locale/br/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Red-amzer Zotero
-general.filter=Silañ:
-general.highlight=Usskediñ:
-general.clearAll=Diverkañ pep-tra
-general.jumpToYear=Mont d'ar bloavezh:
-general.firstBand=Bandenn gentañ:
-general.secondBand=Eil bandenn:
-general.thirdBand=Trede bandenn:
-general.dateType=Doare deiziad:
-general.timelineHeight=Uhelder ar red-amzer:
-general.fitToScreen=Keidañ d'ar skramm
-
-interval.day=Deiziad
-interval.month=Miz
-interval.year=Bloavezh
-interval.decade=Dekad
-interval.century=Kantved
-interval.millennium=Milved
-
-dateType.published=Deiziad embann
-dateType.modified=Deiziad kemmañ
diff --git a/chrome/locale/br/zotero/zotero.dtd b/chrome/locale/br/zotero/zotero.dtd
index f37acb5a09..ae1237619e 100644
--- a/chrome/locale/br/zotero/zotero.dtd
+++ b/chrome/locale/br/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/ca-AD/zotero/timeline.properties b/chrome/locale/ca-AD/zotero/timeline.properties
deleted file mode 100644
index 8ab06698cc..0000000000
--- a/chrome/locale/ca-AD/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Línia del temps del Zotero
-general.filter=Filtre:
-general.highlight=Realça:
-general.clearAll=Neteja-ho tot
-general.jumpToYear=Salta a l'any:
-general.firstBand=Primera banda:
-general.secondBand=Segona banda:
-general.thirdBand=Tercera banda:
-general.dateType=Tipus de data:
-general.timelineHeight=Alçada de la línia del temps:
-general.fitToScreen=Ajusta a la pantalla
-
-interval.day=Dia
-interval.month=Mes
-interval.year=Any
-interval.decade=Dècada
-interval.century=Segle
-interval.millennium=Mil·lenni
-
-dateType.published=Data de publicació
-dateType.modified=Data de modificació
diff --git a/chrome/locale/ca-AD/zotero/zotero.dtd b/chrome/locale/ca-AD/zotero/zotero.dtd
index b5a1b702d2..826f994ac9 100644
--- a/chrome/locale/ca-AD/zotero/zotero.dtd
+++ b/chrome/locale/ca-AD/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/cs-CZ/zotero/timeline.properties b/chrome/locale/cs-CZ/zotero/timeline.properties
deleted file mode 100644
index 6062d1f038..0000000000
--- a/chrome/locale/cs-CZ/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero - Časová přímka
-general.filter=Filtr:
-general.highlight=Zvýraznit:
-general.clearAll=Vymazat vše:
-general.jumpToYear=Skočit na rok:
-general.firstBand=První pruh:
-general.secondBand=Druhý pruh:
-general.thirdBand=Třetí pruh:
-general.dateType=Typ data:
-general.timelineHeight=Výška časové přímky
-general.fitToScreen=Přizpůsobit obrazovce
-
-interval.day=den
-interval.month=měsíc
-interval.year=rok
-interval.decade=desetiletí
-interval.century=století
-interval.millennium=tisíciletí
-
-dateType.published=datum vydání
-dateType.modified=datum modifikace
diff --git a/chrome/locale/cs-CZ/zotero/zotero.dtd b/chrome/locale/cs-CZ/zotero/zotero.dtd
index cafbb440ac..1104f5e020 100644
--- a/chrome/locale/cs-CZ/zotero/zotero.dtd
+++ b/chrome/locale/cs-CZ/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/da-DK/zotero/timeline.properties b/chrome/locale/da-DK/zotero/timeline.properties
deleted file mode 100644
index 73085bdd80..0000000000
--- a/chrome/locale/da-DK/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero-tidslinie
-general.filter=Filter:
-general.highlight=Fremhævelse:
-general.clearAll=Ryd alle
-general.jumpToYear=Spring til år:
-general.firstBand=Første lag:
-general.secondBand=Andet lag:
-general.thirdBand=Tredje lag:
-general.dateType=Tidsangivelse:
-general.timelineHeight=Højde på tidslinie:
-general.fitToScreen=Tilpas til skærm
-
-interval.day=Dag
-interval.month=Måned
-interval.year=År
-interval.decade=Årti
-interval.century=Århundrede
-interval.millennium=Årtusind
-
-dateType.published=Udgivet d.
-dateType.modified=Ændret d.
diff --git a/chrome/locale/da-DK/zotero/zotero.dtd b/chrome/locale/da-DK/zotero/zotero.dtd
index a0f8aaf4e5..247dffe49f 100644
--- a/chrome/locale/da-DK/zotero/zotero.dtd
+++ b/chrome/locale/da-DK/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/de/zotero/timeline.properties b/chrome/locale/de/zotero/timeline.properties
deleted file mode 100644
index d0a5bd385c..0000000000
--- a/chrome/locale/de/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero Zeitstrahl
-general.filter=Filtern:
-general.highlight=Hervorheben:
-general.clearAll=Alle Felder zurücksetzen
-general.jumpToYear=Springe zu Jahr:
-general.firstBand=Erster Streifen:
-general.secondBand=Zweiter Streifen:
-general.thirdBand=Dritter Streifen:
-general.dateType=Datumstyp:
-general.timelineHeight=Höhe des Zeitstrahls:
-general.fitToScreen=An Bildschirm anpassen
-
-interval.day=Tag
-interval.month=Monat
-interval.year=Jahr
-interval.decade=Jahrzehnt
-interval.century=Jahrhundert
-interval.millennium=Jahrtausend
-
-dateType.published=Publikationsdatum
-dateType.modified=Datum der letzten Änderung
diff --git a/chrome/locale/de/zotero/zotero.dtd b/chrome/locale/de/zotero/zotero.dtd
index 7a583cbc9c..1efb99f0ba 100644
--- a/chrome/locale/de/zotero/zotero.dtd
+++ b/chrome/locale/de/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/el-GR/zotero/timeline.properties b/chrome/locale/el-GR/zotero/timeline.properties
deleted file mode 100644
index 8fe27d21f8..0000000000
--- a/chrome/locale/el-GR/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Χρονοδιάγραμμα Zotero
-general.filter=Φίλτρο:
-general.highlight=Επισήμανση:
-general.clearAll=Καθαρισμός όλων
-general.jumpToYear=Μετάβαση στο έτος:
-general.firstBand=Πρώτη μπάντα:
-general.secondBand=Δεύτερη μπάντα:
-general.thirdBand=Τρίτη μπάντα:
-general.dateType=Τύπος ημερομηνίας:
-general.timelineHeight=Ύψος χρονοδιαγράμματος:
-general.fitToScreen=Ταίριασμα με την οθόνη
-
-interval.day=Ημέρα
-interval.month=Μήνας
-interval.year=Έτος
-interval.decade=Δεκαετία
-interval.century=Αιών
-interval.millennium=Χιλιετιρίδα
-
-dateType.published=Ημερομηνία δημοσίευσης
-dateType.modified=Ημερομηνία τροποποίησης
diff --git a/chrome/locale/el-GR/zotero/zotero.dtd b/chrome/locale/el-GR/zotero/zotero.dtd
index c62a2a395e..f8cc357d13 100644
--- a/chrome/locale/el-GR/zotero/zotero.dtd
+++ b/chrome/locale/el-GR/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/en-GB/zotero/timeline.properties b/chrome/locale/en-GB/zotero/timeline.properties
deleted file mode 100644
index cec21f6b65..0000000000
--- a/chrome/locale/en-GB/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero Timeline
-general.filter=Filter:
-general.highlight=Highlight:
-general.clearAll=Clear All
-general.jumpToYear=Jump to Year:
-general.firstBand=First Band:
-general.secondBand=Second Band:
-general.thirdBand=Third Band:
-general.dateType=Date Type:
-general.timelineHeight=Timeline Height:
-general.fitToScreen=Fit to Screen
-
-interval.day=Day
-interval.month=Month
-interval.year=Year
-interval.decade=Decade
-interval.century=Century
-interval.millennium=Millennium
-
-dateType.published=Date Published
-dateType.modified=Date Modified
diff --git a/chrome/locale/en-GB/zotero/zotero.dtd b/chrome/locale/en-GB/zotero/zotero.dtd
index a59ca36f7c..ce73d00f33 100644
--- a/chrome/locale/en-GB/zotero/zotero.dtd
+++ b/chrome/locale/en-GB/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/en-US/zotero/timeline.properties b/chrome/locale/en-US/zotero/timeline.properties
deleted file mode 100644
index 7f27cd8db4..0000000000
--- a/chrome/locale/en-US/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title = Zotero Timeline
-general.filter = Filter:
-general.highlight = Highlight:
-general.clearAll = Clear All
-general.jumpToYear = Jump to Year:
-general.firstBand = First Band:
-general.secondBand = Second Band:
-general.thirdBand = Third Band:
-general.dateType = Date Type:
-general.timelineHeight = Timeline Height:
-general.fitToScreen = Fit to Screen
-
-interval.day = Day
-interval.month = Month
-interval.year = Year
-interval.decade = Decade
-interval.century = Century
-interval.millennium = Millennium
-
-dateType.published = Date Published
-dateType.modified = Date Modified
\ No newline at end of file
diff --git a/chrome/locale/en-US/zotero/zotero.dtd b/chrome/locale/en-US/zotero/zotero.dtd
index 30ded46bf0..2a7eee89ad 100644
--- a/chrome/locale/en-US/zotero/zotero.dtd
+++ b/chrome/locale/en-US/zotero/zotero.dtd
@@ -91,7 +91,6 @@
-
diff --git a/chrome/locale/es-ES/zotero/timeline.properties b/chrome/locale/es-ES/zotero/timeline.properties
deleted file mode 100644
index 71beeb0a0c..0000000000
--- a/chrome/locale/es-ES/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Cronografía de Zotero
-general.filter=Filtro:
-general.highlight=Resalte:
-general.clearAll=Vaciar todo
-general.jumpToYear=Saltar al año:
-general.firstBand=Primera cinta:
-general.secondBand=Segunda cinta:
-general.thirdBand=Tercera cinta:
-general.dateType=Tipo de fecha:
-general.timelineHeight=Altura de la cronografía:
-general.fitToScreen=Ajustar a la pantalla
-
-interval.day=Día
-interval.month=Mes
-interval.year=Año
-interval.decade=Década
-interval.century=Siglo
-interval.millennium=Milenio
-
-dateType.published=Fecha de publicación
-dateType.modified=Fecha de modificación
diff --git a/chrome/locale/es-ES/zotero/zotero.dtd b/chrome/locale/es-ES/zotero/zotero.dtd
index 2721c68fed..d6723594da 100644
--- a/chrome/locale/es-ES/zotero/zotero.dtd
+++ b/chrome/locale/es-ES/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/et-EE/zotero/timeline.properties b/chrome/locale/et-EE/zotero/timeline.properties
deleted file mode 100644
index 25aabb8440..0000000000
--- a/chrome/locale/et-EE/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero Ajajoon
-general.filter=Filter:
-general.highlight=Esiletõste:
-general.clearAll=Kõik tühjendada
-general.jumpToYear=Liikuda aastasse:
-general.firstBand=Esimene riba:
-general.secondBand=Teine riba:
-general.thirdBand=Kolmas riba:
-general.dateType=Kuupäeva tüüp:
-general.timelineHeight=Ajajoone kõrgus:
-general.fitToScreen=Sobitada ekraaniga
-
-interval.day=Päev
-interval.month=Kuu
-interval.year=Aasta
-interval.decade=Dekaad
-interval.century=Sajand
-interval.millennium=Millennium
-
-dateType.published=Avaldamise kuupäev
-dateType.modified=Muutmise kuupäev
diff --git a/chrome/locale/et-EE/zotero/zotero.dtd b/chrome/locale/et-EE/zotero/zotero.dtd
index 2a30835395..29cb3bca97 100644
--- a/chrome/locale/et-EE/zotero/zotero.dtd
+++ b/chrome/locale/et-EE/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/eu-ES/zotero/timeline.properties b/chrome/locale/eu-ES/zotero/timeline.properties
deleted file mode 100644
index 9eca589384..0000000000
--- a/chrome/locale/eu-ES/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero denbora-lerroa
-general.filter=Iragazkia:
-general.highlight=Nabarmendu:
-general.clearAll=Garbitu guztia
-general.jumpToYear=Salto egin urte honetara:
-general.firstBand=Lehen banda:
-general.secondBand=Bigarren banda:
-general.thirdBand=Hirugarren banda:
-general.dateType=Data mota:
-general.timelineHeight=Denbora-lerroaren altuera:
-general.fitToScreen=Doitu pantailari
-
-interval.day=Eguna
-interval.month=Hilabetea
-interval.year=Urtea
-interval.decade=Hamarkada
-interval.century=Mendea
-interval.millennium=Milurtekoa
-
-dateType.published=Argitaratutako data
-dateType.modified=Aldatutako data
diff --git a/chrome/locale/eu-ES/zotero/zotero.dtd b/chrome/locale/eu-ES/zotero/zotero.dtd
index 9e405a458d..952dc655aa 100644
--- a/chrome/locale/eu-ES/zotero/zotero.dtd
+++ b/chrome/locale/eu-ES/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/fa/zotero/timeline.properties b/chrome/locale/fa/zotero/timeline.properties
deleted file mode 100644
index a4aceabf01..0000000000
--- a/chrome/locale/fa/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=خط زمانی زوترو
-general.filter=فیلتر:
-general.highlight=رنگ:
-general.clearAll=پاک کردن همه
-general.jumpToYear=پرش به سال:
-general.firstBand=ردیف اول:
-general.secondBand=ردیف دوم:
-general.thirdBand=ردیف سوم:
-general.dateType=نوع تاریخ:
-general.timelineHeight=ارتفاع خط زمانی:
-general.fitToScreen=پر کردن صفحه
-
-interval.day=روز
-interval.month=ماه
-interval.year=سال
-interval.decade=دهه
-interval.century=قرن
-interval.millennium=هزاره
-
-dateType.published=تاریخ انتشار
-dateType.modified=تاریخ تغییر
diff --git a/chrome/locale/fa/zotero/zotero.dtd b/chrome/locale/fa/zotero/zotero.dtd
index 317b79c269..bd40b640bf 100644
--- a/chrome/locale/fa/zotero/zotero.dtd
+++ b/chrome/locale/fa/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/fi-FI/zotero/timeline.properties b/chrome/locale/fi-FI/zotero/timeline.properties
deleted file mode 100644
index fcebc8ff9b..0000000000
--- a/chrome/locale/fi-FI/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero Aikajana
-general.filter=Suodata:
-general.highlight=Korosta:
-general.clearAll=Tyhjennä kaikki
-general.jumpToYear=Hyppää vuoteen:
-general.firstBand=Ensimmäinen kaista:
-general.secondBand=Toinen kaista:
-general.thirdBand=Kolmas kaista:
-general.dateType=Päiväysmuoto:
-general.timelineHeight=Aikajanan korkeus:
-general.fitToScreen=Sovita näytölle
-
-interval.day=Päivä
-interval.month=Kuukausi
-interval.year=Vuosi
-interval.decade=Vuosikymmen
-interval.century=Vuosisata
-interval.millennium=Vuosituhat
-
-dateType.published=Julkaisupäivä
-dateType.modified=Muokkauspäivä
diff --git a/chrome/locale/fi-FI/zotero/zotero.dtd b/chrome/locale/fi-FI/zotero/zotero.dtd
index eb2f4c8660..5bbc0dc2d0 100644
--- a/chrome/locale/fi-FI/zotero/zotero.dtd
+++ b/chrome/locale/fi-FI/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/fr-FR/zotero/timeline.properties b/chrome/locale/fr-FR/zotero/timeline.properties
deleted file mode 100644
index 0fe447ee54..0000000000
--- a/chrome/locale/fr-FR/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Chronologie Zotero
-general.filter=Filtrer :
-general.highlight=Surligner :
-general.clearAll=Effacer tout
-general.jumpToYear=Aller à l'année :
-general.firstBand=Première bande :
-general.secondBand=Deuxième bande :
-general.thirdBand=Troisième bande :
-general.dateType=Type de date :
-general.timelineHeight=Hauteur de la bande chronologique :
-general.fitToScreen=Adapter à l'écran
-
-interval.day=Jour
-interval.month=Mois
-interval.year=Année
-interval.decade=Décennie
-interval.century=Siècle
-interval.millennium=Millénaire
-
-dateType.published=Date de publication
-dateType.modified=Date de modification
diff --git a/chrome/locale/fr-FR/zotero/zotero.dtd b/chrome/locale/fr-FR/zotero/zotero.dtd
index ac6bb4985f..8c8137eca0 100644
--- a/chrome/locale/fr-FR/zotero/zotero.dtd
+++ b/chrome/locale/fr-FR/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/gl-ES/zotero/timeline.properties b/chrome/locale/gl-ES/zotero/timeline.properties
deleted file mode 100644
index 3d591ed849..0000000000
--- a/chrome/locale/gl-ES/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Cronoloxía de Zotero
-general.filter=Filtro:
-general.highlight=Resaltar:
-general.clearAll=Borrar todo
-general.jumpToYear=Ir ao ano:
-general.firstBand=Primeira banda:
-general.secondBand=Segunda banda:
-general.thirdBand=Terceira banda:
-general.dateType=Formato de data:
-general.timelineHeight=Altura do cronograma:
-general.fitToScreen=Axustar á pantalla
-
-interval.day=Día
-interval.month=Mes
-interval.year=Ano
-interval.decade=Década
-interval.century=Século
-interval.millennium=Milenio
-
-dateType.published=Data de publicación
-dateType.modified=Data de modificación
diff --git a/chrome/locale/gl-ES/zotero/zotero.dtd b/chrome/locale/gl-ES/zotero/zotero.dtd
index e47048acf7..40efba1141 100644
--- a/chrome/locale/gl-ES/zotero/zotero.dtd
+++ b/chrome/locale/gl-ES/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/he-IL/zotero/timeline.properties b/chrome/locale/he-IL/zotero/timeline.properties
deleted file mode 100644
index f87c45aeb9..0000000000
--- a/chrome/locale/he-IL/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=ציר הזמן של Zotero
-general.filter=מסנן:
-general.highlight=הדגשה:
-general.clearAll=לפנות הכול
-general.jumpToYear=מעבר לשנה:
-general.firstBand=רצועה ראשונה:
-general.secondBand=רצועה שנייה:
-general.thirdBand=רצועה שלישית:
-general.dateType=סוג תאריך:
-general.timelineHeight=גובה ציר הזמן:
-general.fitToScreen=התאמה למסך
-
-interval.day=יום
-interval.month=חודש
-interval.year=שנה
-interval.decade=עשור
-interval.century=מאה
-interval.millennium=מילניום
-
-dateType.published=תאריך פרסום
-dateType.modified=תאריך שינוי
diff --git a/chrome/locale/he-IL/zotero/zotero.dtd b/chrome/locale/he-IL/zotero/zotero.dtd
index 941431ac26..9df0412ef6 100644
--- a/chrome/locale/he-IL/zotero/zotero.dtd
+++ b/chrome/locale/he-IL/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/hr-HR/zotero/timeline.properties b/chrome/locale/hr-HR/zotero/timeline.properties
deleted file mode 100644
index 85cba1543c..0000000000
--- a/chrome/locale/hr-HR/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zoterova vremenska crta
-general.filter=Filtriraj:
-general.highlight=Označi:
-general.clearAll=Izbriši sve
-general.jumpToYear=Prijeđi na godinu:
-general.firstBand=Prvi svezak:
-general.secondBand=Drugi svezak:
-general.thirdBand=Treći svezak:
-general.dateType=Tip datuma:
-general.timelineHeight=Visina vremeske crte:
-general.fitToScreen=Prilagodi zaslonu
-
-interval.day=Dan
-interval.month=Mjesec
-interval.year=Godina
-interval.decade=Desetljeće
-interval.century=Stoljeće
-interval.millennium=Tisućljeće
-
-dateType.published=Datum objavljivanja
-dateType.modified=Datum izmjene
diff --git a/chrome/locale/hr-HR/zotero/zotero.dtd b/chrome/locale/hr-HR/zotero/zotero.dtd
index 0824d309d6..1ab333d04c 100644
--- a/chrome/locale/hr-HR/zotero/zotero.dtd
+++ b/chrome/locale/hr-HR/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/hu-HU/zotero/timeline.properties b/chrome/locale/hu-HU/zotero/timeline.properties
deleted file mode 100644
index 451381dc97..0000000000
--- a/chrome/locale/hu-HU/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero kronológia
-general.filter=Szürő:
-general.highlight=Kiemelés:
-general.clearAll=Összes törlése
-general.jumpToYear=Évre ugrás:
-general.firstBand=Első sáv:
-general.secondBand=Második sáv:
-general.thirdBand=Harmadik sáv:
-general.dateType=Dátumtípus:
-general.timelineHeight=Kronológia magassága
-general.fitToScreen=Képernyő mérete
-
-interval.day=Nap
-interval.month=Hónap
-interval.year=Év
-interval.decade=Évtized
-interval.century=Évszázad
-interval.millennium=Évezred
-
-dateType.published=Kiadás dátuma
-dateType.modified=Módosítás dátuma
diff --git a/chrome/locale/hu-HU/zotero/zotero.dtd b/chrome/locale/hu-HU/zotero/zotero.dtd
index e4ad4914e8..2b9c4aef3a 100644
--- a/chrome/locale/hu-HU/zotero/zotero.dtd
+++ b/chrome/locale/hu-HU/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/id-ID/zotero/timeline.properties b/chrome/locale/id-ID/zotero/timeline.properties
deleted file mode 100644
index 96a0b458d9..0000000000
--- a/chrome/locale/id-ID/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Garis Waktu Zotero
-general.filter=Saring:
-general.highlight=Tandai:
-general.clearAll=Bersihkan semua
-general.jumpToYear=Lompat ke Tahun:
-general.firstBand=Pita Pertama:
-general.secondBand=Pita Kedua:
-general.thirdBand=Pita Ketiga:
-general.dateType=Jenis Data:
-general.timelineHeight=Ketinggian Garis Waktu:
-general.fitToScreen=Sesuaikan dengan Layar
-
-interval.day=Hari
-interval.month=Bulan
-interval.year=Tahun
-interval.decade=Dekade
-interval.century=Abad
-interval.millennium=Milenium
-
-dateType.published=Tanggal Dipublikasikan
-dateType.modified=Tanggal Dimodifikasi
diff --git a/chrome/locale/id-ID/zotero/zotero.dtd b/chrome/locale/id-ID/zotero/zotero.dtd
index 2a5246a34f..24add870cb 100644
--- a/chrome/locale/id-ID/zotero/zotero.dtd
+++ b/chrome/locale/id-ID/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/is-IS/zotero/timeline.properties b/chrome/locale/is-IS/zotero/timeline.properties
deleted file mode 100644
index 89a115c644..0000000000
--- a/chrome/locale/is-IS/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero tímasetningar
-general.filter=Síun:
-general.highlight=Auðkenna:
-general.clearAll=Hreinsa allt
-general.jumpToYear=Velja ár:
-general.firstBand=Fyrsti dregill
-general.secondBand=Annar dregill:
-general.thirdBand=Þriðji dregill:
-general.dateType=Tímasetning:
-general.timelineHeight=Hæð tímalínu:
-general.fitToScreen=Máta á skjáinn
-
-interval.day=Dagur
-interval.month=Mánuður
-interval.year=Ár
-interval.decade=Áratugur
-interval.century=Öld
-interval.millennium=Árþúsund
-
-dateType.published=Færsludagsetning
-dateType.modified=Breytingardagsetning
diff --git a/chrome/locale/is-IS/zotero/zotero.dtd b/chrome/locale/is-IS/zotero/zotero.dtd
index 83a7fbaad1..2cf22c1bec 100644
--- a/chrome/locale/is-IS/zotero/zotero.dtd
+++ b/chrome/locale/is-IS/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/it-IT/zotero/timeline.properties b/chrome/locale/it-IT/zotero/timeline.properties
deleted file mode 100644
index 17a00722c1..0000000000
--- a/chrome/locale/it-IT/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Linea del tempo
-general.filter=Filtro:
-general.highlight=Evidenzia:
-general.clearAll=Azzera tutto
-general.jumpToYear=Vai all'anno:
-general.firstBand=Prima fascia:
-general.secondBand=Seconda fascia:
-general.thirdBand=Terza fascia:
-general.dateType=Tipo data:
-general.timelineHeight=Altezza della linea del tempo:
-general.fitToScreen=Adatta allo schermo
-
-interval.day=Giorni
-interval.month=Mesi
-interval.year=Anni
-interval.decade=Decenni
-interval.century=Secoli
-interval.millennium=Millenni
-
-dateType.published=Data pubblicazione
-dateType.modified=Data modifica
diff --git a/chrome/locale/it-IT/zotero/zotero.dtd b/chrome/locale/it-IT/zotero/zotero.dtd
index e1546fb8e5..63af7dbc08 100644
--- a/chrome/locale/it-IT/zotero/zotero.dtd
+++ b/chrome/locale/it-IT/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/ja-JP/zotero/timeline.properties b/chrome/locale/ja-JP/zotero/timeline.properties
deleted file mode 100644
index 19db86de0e..0000000000
--- a/chrome/locale/ja-JP/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero タイムライン
-general.filter=フィルター:
-general.highlight=強調表示:
-general.clearAll=すべてクリア
-general.jumpToYear=年へ移動:
-general.firstBand=一段目:
-general.secondBand=二段目:
-general.thirdBand=三段目:
-general.dateType=日付の種類:
-general.timelineHeight=タイムラインの高さ:
-general.fitToScreen=画面に合わせる
-
-interval.day=日
-interval.month=月
-interval.year=年
-interval.decade=十年紀
-interval.century=世紀
-interval.millennium=千年紀
-
-dateType.published=出版日
-dateType.modified=変更日
diff --git a/chrome/locale/ja-JP/zotero/zotero.dtd b/chrome/locale/ja-JP/zotero/zotero.dtd
index f4dd60fee4..b1fb14ca40 100644
--- a/chrome/locale/ja-JP/zotero/zotero.dtd
+++ b/chrome/locale/ja-JP/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/km/zotero/timeline.properties b/chrome/locale/km/zotero/timeline.properties
deleted file mode 100644
index 8c02b73bf1..0000000000
--- a/chrome/locale/km/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=លំដាប់ពេលហ្ស៊ូតេរ៉ូ
-general.filter=តម្រង់:
-general.highlight=សម្រង់:
-general.clearAll=លុបចោលទាំងអស់
-general.jumpToYear=ឆ្ពោះទៅកាន់ឆ្នាំ:
-general.firstBand=កម្រិតរលកទីមួយ:
-general.secondBand=កម្រិតរលកទីពីរ:
-general.thirdBand=កម្រិតរលកទីបី:
-general.dateType=កាលបរិច្ឆេទ:
-general.timelineHeight=កម្ពស់លំដាប់ពេល:
-general.fitToScreen=តម្រឹមពេញអេក្រង់
-
-interval.day=ថ្ងៃ
-interval.month=ខែ
-interval.year=ឆ្នាំ
-interval.decade=ទស្សវត្សរ៍
-interval.century=សតវត្សរ៍
-interval.millennium=សហសវត្សរ៍
-
-dateType.published=កាលបរិច្ឆេទបោះពុម្ព
-dateType.modified=កាលបរិច្ឆេទកែតម្រូវ
diff --git a/chrome/locale/km/zotero/zotero.dtd b/chrome/locale/km/zotero/zotero.dtd
index a75d7150fa..43744ea7b4 100644
--- a/chrome/locale/km/zotero/zotero.dtd
+++ b/chrome/locale/km/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/ko-KR/zotero/timeline.properties b/chrome/locale/ko-KR/zotero/timeline.properties
deleted file mode 100644
index 6437059f3a..0000000000
--- a/chrome/locale/ko-KR/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero 연표
-general.filter=필터:
-general.highlight=하이라이트:
-general.clearAll=모두 삭제
-general.jumpToYear=특정연도로 이동:
-general.firstBand=1차 단위:
-general.secondBand=2차 단위:
-general.thirdBand=3차 단위:
-general.dateType=날짜 기준:
-general.timelineHeight=연표 높이:
-general.fitToScreen=화면에 맞추기
-
-interval.day=일
-interval.month=월
-interval.year=년
-interval.decade=10년
-interval.century=세기
-interval.millennium=천년
-
-dateType.published=출판일
-dateType.modified=수정일
diff --git a/chrome/locale/ko-KR/zotero/zotero.dtd b/chrome/locale/ko-KR/zotero/zotero.dtd
index 35145bf08e..a86fdacd2e 100644
--- a/chrome/locale/ko-KR/zotero/zotero.dtd
+++ b/chrome/locale/ko-KR/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/lt-LT/zotero/timeline.properties b/chrome/locale/lt-LT/zotero/timeline.properties
deleted file mode 100644
index 3e7df556f7..0000000000
--- a/chrome/locale/lt-LT/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero laiko juosta
-general.filter=Filtras:
-general.highlight=Paryškinti:
-general.clearAll=Viską išvalyti
-general.jumpToYear=Šokti į metus:
-general.firstBand=Pirma juosta:
-general.secondBand=Antra juosta:
-general.thirdBand=Trečia juosta:
-general.dateType=Datos tipas:
-general.timelineHeight=Laiko juostos aukštis:
-general.fitToScreen=Pritaikyti pie ekrano
-
-interval.day=Diena
-interval.month=Mėnuo
-interval.year=Metai
-interval.decade=Dešimtmetis
-interval.century=Amžius
-interval.millennium=Tūkstantmetis
-
-dateType.published=Paskelbimo data
-dateType.modified=Keitimo laikas
diff --git a/chrome/locale/lt-LT/zotero/zotero.dtd b/chrome/locale/lt-LT/zotero/zotero.dtd
index becd9a3fd4..7f7395a5bd 100644
--- a/chrome/locale/lt-LT/zotero/zotero.dtd
+++ b/chrome/locale/lt-LT/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/mn-MN/zotero/timeline.properties b/chrome/locale/mn-MN/zotero/timeline.properties
deleted file mode 100644
index cec21f6b65..0000000000
--- a/chrome/locale/mn-MN/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero Timeline
-general.filter=Filter:
-general.highlight=Highlight:
-general.clearAll=Clear All
-general.jumpToYear=Jump to Year:
-general.firstBand=First Band:
-general.secondBand=Second Band:
-general.thirdBand=Third Band:
-general.dateType=Date Type:
-general.timelineHeight=Timeline Height:
-general.fitToScreen=Fit to Screen
-
-interval.day=Day
-interval.month=Month
-interval.year=Year
-interval.decade=Decade
-interval.century=Century
-interval.millennium=Millennium
-
-dateType.published=Date Published
-dateType.modified=Date Modified
diff --git a/chrome/locale/mn-MN/zotero/zotero.dtd b/chrome/locale/mn-MN/zotero/zotero.dtd
index 2fd21b288f..1dbab1daa6 100644
--- a/chrome/locale/mn-MN/zotero/zotero.dtd
+++ b/chrome/locale/mn-MN/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/nb-NO/zotero/timeline.properties b/chrome/locale/nb-NO/zotero/timeline.properties
deleted file mode 100644
index 730a178bb3..0000000000
--- a/chrome/locale/nb-NO/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero-tidslinje
-general.filter=Filter:
-general.highlight=Merk:
-general.clearAll=Fjern alt
-general.jumpToYear=Gå til år:
-general.firstBand=Første felt:
-general.secondBand=Andre felt:
-general.thirdBand=Tredje felt:
-general.dateType=Datotype:
-general.timelineHeight=Høyde på tidslinjen:
-general.fitToScreen=Tilpass til skjerm
-
-interval.day=Dag
-interval.month=Måned
-interval.year=År
-interval.decade=Tiår
-interval.century=Århundre
-interval.millennium=Årtusen
-
-dateType.published=Dato publisert
-dateType.modified=Dato endret
diff --git a/chrome/locale/nb-NO/zotero/zotero.dtd b/chrome/locale/nb-NO/zotero/zotero.dtd
index 762e87abfd..a5a9818c8f 100644
--- a/chrome/locale/nb-NO/zotero/zotero.dtd
+++ b/chrome/locale/nb-NO/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/nl-NL/zotero/timeline.properties b/chrome/locale/nl-NL/zotero/timeline.properties
deleted file mode 100644
index 3634d8fa8e..0000000000
--- a/chrome/locale/nl-NL/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero-tijdslijn
-general.filter=Filter:
-general.highlight=Markeer:
-general.clearAll=Alles wissen
-general.jumpToYear=Ga naar jaar:
-general.firstBand=Eerste strook:
-general.secondBand=Tweede strook:
-general.thirdBand=Derde strook:
-general.dateType=Type datum:
-general.timelineHeight=Hoogte tijdslijn:
-general.fitToScreen=Schermvullend maken
-
-interval.day=Dag
-interval.month=Maand
-interval.year=Jaar
-interval.decade=Decennium
-interval.century=Eeuw
-interval.millennium=Millennium
-
-dateType.published=Datum publicatie
-dateType.modified=Datum bewerking
diff --git a/chrome/locale/nl-NL/zotero/zotero.dtd b/chrome/locale/nl-NL/zotero/zotero.dtd
index 109a9168a3..e5e16f8ede 100644
--- a/chrome/locale/nl-NL/zotero/zotero.dtd
+++ b/chrome/locale/nl-NL/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/nn-NO/zotero/timeline.properties b/chrome/locale/nn-NO/zotero/timeline.properties
deleted file mode 100644
index ddd1fc2da2..0000000000
--- a/chrome/locale/nn-NO/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero-tidslinje
-general.filter=Filter:
-general.highlight=Merk:
-general.clearAll=Fjern alt
-general.jumpToYear=Gå til år:
-general.firstBand=Fyrste rad:
-general.secondBand=Andre rad:
-general.thirdBand=Tredje rad:
-general.dateType=Datotype:
-general.timelineHeight=Høgd på tidslinja:
-general.fitToScreen=Tilpass til skjermen
-
-interval.day=Dag
-interval.month=Månad
-interval.year=År
-interval.decade=Tiår
-interval.century=Århundre
-interval.millennium=Årtusen
-
-dateType.published=Publiseringsdato
-dateType.modified=Endringsdato
diff --git a/chrome/locale/nn-NO/zotero/zotero.dtd b/chrome/locale/nn-NO/zotero/zotero.dtd
index 3aac5e7bf1..fc3bc1b1f9 100644
--- a/chrome/locale/nn-NO/zotero/zotero.dtd
+++ b/chrome/locale/nn-NO/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/pl-PL/zotero/timeline.properties b/chrome/locale/pl-PL/zotero/timeline.properties
deleted file mode 100644
index b73512e161..0000000000
--- a/chrome/locale/pl-PL/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Suwak czasowy Zotero
-general.filter=Filtr:
-general.highlight=Zaznacz:
-general.clearAll=Wyczyść wszystko
-general.jumpToYear=Przejdź do roku:
-general.firstBand=Pierwsze pasmo:
-general.secondBand=Drugie pasmo:
-general.thirdBand=Trzecie pasmo:
-general.dateType=Typ daty:
-general.timelineHeight=Wysokość suwaka:
-general.fitToScreen=Dopasuj do ekranu
-
-interval.day=Dzień
-interval.month=Miesiąc
-interval.year=Rok
-interval.decade=Dekada
-interval.century=Wiek
-interval.millennium=Tysiąclecie
-
-dateType.published=Data publikacji
-dateType.modified=Data modyfikacji
diff --git a/chrome/locale/pl-PL/zotero/zotero.dtd b/chrome/locale/pl-PL/zotero/zotero.dtd
index 6395755907..3716491036 100644
--- a/chrome/locale/pl-PL/zotero/zotero.dtd
+++ b/chrome/locale/pl-PL/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/pt-BR/zotero/timeline.properties b/chrome/locale/pt-BR/zotero/timeline.properties
deleted file mode 100644
index 1dcfc1de2e..0000000000
--- a/chrome/locale/pt-BR/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Linha de tempo do Zotero
-general.filter=Filtro:
-general.highlight=Destaque:
-general.clearAll=Limpar tudo
-general.jumpToYear=Ir para o ano:
-general.firstBand=Primeira faixa:
-general.secondBand=Segunda faixa:
-general.thirdBand=Terceira faixa:
-general.dateType=Tipo de data:
-general.timelineHeight=Altura da linha do tempo:
-general.fitToScreen=Adaptar à tela
-
-interval.day=Dia
-interval.month=Mês
-interval.year=Ano
-interval.decade=Década
-interval.century=Século
-interval.millennium=Milênio
-
-dateType.published=Data de publicação
-dateType.modified=Data de modificação
diff --git a/chrome/locale/pt-BR/zotero/zotero.dtd b/chrome/locale/pt-BR/zotero/zotero.dtd
index fb8e13dea1..a2a7b59a6f 100644
--- a/chrome/locale/pt-BR/zotero/zotero.dtd
+++ b/chrome/locale/pt-BR/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/pt-PT/zotero/timeline.properties b/chrome/locale/pt-PT/zotero/timeline.properties
deleted file mode 100644
index c84fcacba6..0000000000
--- a/chrome/locale/pt-PT/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Linha do Tempo do Zotero
-general.filter=Filtro:
-general.highlight=Destacar:
-general.clearAll=Limpar Tudo
-general.jumpToYear=Saltar para Ano:
-general.firstBand=Primeira Faixa:
-general.secondBand=Segunda Faixa:
-general.thirdBand=Terceira Faixa:
-general.dateType=Tipo de Data:
-general.timelineHeight=Altura da Linha do Tempo:
-general.fitToScreen=Ajustar ao Ecrã
-
-interval.day=Dia
-interval.month=Mês
-interval.year=Ano
-interval.decade=Década
-interval.century=Século
-interval.millennium=Milénio
-
-dateType.published=Data de Publicação
-dateType.modified=Data de Modificação
diff --git a/chrome/locale/pt-PT/zotero/zotero.dtd b/chrome/locale/pt-PT/zotero/zotero.dtd
index db15359674..c0acc4d7b1 100644
--- a/chrome/locale/pt-PT/zotero/zotero.dtd
+++ b/chrome/locale/pt-PT/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/ro-RO/zotero/timeline.properties b/chrome/locale/ro-RO/zotero/timeline.properties
deleted file mode 100644
index 4730e5a686..0000000000
--- a/chrome/locale/ro-RO/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Cronologie Zotero
-general.filter=Filtru:
-general.highlight=Evidențiere:
-general.clearAll=Șterge totul
-general.jumpToYear=Salt la anul:
-general.firstBand=Prima bandă:
-general.secondBand=A doua bandă:
-general.thirdBand=A treia bandă:
-general.dateType=Tip dată:
-general.timelineHeight=Înălțime cronologie:
-general.fitToScreen=Umple ecranul
-
-interval.day=Zi
-interval.month=Lună
-interval.year=An
-interval.decade=Deceniu
-interval.century=Secol
-interval.millennium=Mileniu
-
-dateType.published=Dată publicare
-dateType.modified=Dată modificare
diff --git a/chrome/locale/ro-RO/zotero/zotero.dtd b/chrome/locale/ro-RO/zotero/zotero.dtd
index 8042fbfa9a..8bb08c42b6 100644
--- a/chrome/locale/ro-RO/zotero/zotero.dtd
+++ b/chrome/locale/ro-RO/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/ru-RU/zotero/timeline.properties b/chrome/locale/ru-RU/zotero/timeline.properties
deleted file mode 100644
index 205985ec92..0000000000
--- a/chrome/locale/ru-RU/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Шкала времени Zotero
-general.filter=Фильтровать:
-general.highlight=Выделить:
-general.clearAll=Очистить всё
-general.jumpToYear=Перейти к году:
-general.firstBand=Первая шкала
-general.secondBand=Вторая шкала
-general.thirdBand=Третья шкала
-general.dateType=Тип даты:
-general.timelineHeight=Высота оси времени:
-general.fitToScreen=По размеру экрана
-
-interval.day=День
-interval.month=Месяц
-interval.year=Год
-interval.decade=Десятилетие
-interval.century=Век
-interval.millennium=Тысячелетие
-
-dateType.published=Дата публикации
-dateType.modified=Дата изменения
diff --git a/chrome/locale/ru-RU/zotero/zotero.dtd b/chrome/locale/ru-RU/zotero/zotero.dtd
index 979eed0af5..bdbf907389 100644
--- a/chrome/locale/ru-RU/zotero/zotero.dtd
+++ b/chrome/locale/ru-RU/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/sk-SK/zotero/timeline.properties b/chrome/locale/sk-SK/zotero/timeline.properties
deleted file mode 100644
index 48263d3549..0000000000
--- a/chrome/locale/sk-SK/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Časová os pre Zotero
-general.filter=Filtrovať:
-general.highlight=Zvýrazniť:
-general.clearAll=Odznačiť všetko
-general.jumpToYear=Preskočiť na rok:
-general.firstBand=Prvá os:
-general.secondBand=Druhá os:
-general.thirdBand=Tretia os:
-general.dateType=Typ dátumu:
-general.timelineHeight=Vyška osi:
-general.fitToScreen=Prispôsobiť veľkosti okna
-
-interval.day=deň
-interval.month=mesiac
-interval.year=rok
-interval.decade=dekáda
-interval.century=storočie
-interval.millennium=tisícročie
-
-dateType.published=Dátum publikovania
-dateType.modified=Dátum zmeny
diff --git a/chrome/locale/sk-SK/zotero/zotero.dtd b/chrome/locale/sk-SK/zotero/zotero.dtd
index bc5580b078..7de88e5695 100644
--- a/chrome/locale/sk-SK/zotero/zotero.dtd
+++ b/chrome/locale/sk-SK/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/sl-SI/zotero/timeline.properties b/chrome/locale/sl-SI/zotero/timeline.properties
deleted file mode 100644
index b1c6e4874c..0000000000
--- a/chrome/locale/sl-SI/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Časovnica Zotero
-general.filter=Filtriraj:
-general.highlight=Poudari:
-general.clearAll=Počisti vse
-general.jumpToYear=Skoči na leto:
-general.firstBand=Prvi pas:
-general.secondBand=Drugi pas:
-general.thirdBand=Tretji pas:
-general.dateType=Vrsta datuma:
-general.timelineHeight=Višina časovnice:
-general.fitToScreen=Prilagodi zaslonu
-
-interval.day=dan
-interval.month=mesec
-interval.year=leto
-interval.decade=desetletje
-interval.century=stoletje
-interval.millennium=tisočletje
-
-dateType.published=Datum objave
-dateType.modified=Datum spremembe
diff --git a/chrome/locale/sl-SI/zotero/zotero.dtd b/chrome/locale/sl-SI/zotero/zotero.dtd
index 499a34d4ce..f93ac2bec3 100644
--- a/chrome/locale/sl-SI/zotero/zotero.dtd
+++ b/chrome/locale/sl-SI/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/sr-RS/zotero/timeline.properties b/chrome/locale/sr-RS/zotero/timeline.properties
deleted file mode 100644
index 4af3c6647f..0000000000
--- a/chrome/locale/sr-RS/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Временски ток Зотера
-general.filter=Филтер:
-general.highlight=Истакни:
-general.clearAll=Очисти све
-general.jumpToYear=Иди на годину:
-general.firstBand=Први опсег:
-general.secondBand=Други опсег:
-general.thirdBand=Трећи опсег:
-general.dateType=Врста времена:
-general.timelineHeight=Висина временског тока:
-general.fitToScreen=Уклопи у екран
-
-interval.day=Дан
-interval.month=Месец
-interval.year=Година
-interval.decade=Декада
-interval.century=Век
-interval.millennium=Миленијум
-
-dateType.published=Датум објављивања
-dateType.modified=Датум измене
diff --git a/chrome/locale/sr-RS/zotero/zotero.dtd b/chrome/locale/sr-RS/zotero/zotero.dtd
index b0b544e4e2..fbe0935970 100644
--- a/chrome/locale/sr-RS/zotero/zotero.dtd
+++ b/chrome/locale/sr-RS/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/sv-SE/zotero/timeline.properties b/chrome/locale/sv-SE/zotero/timeline.properties
deleted file mode 100644
index 0f35f034a5..0000000000
--- a/chrome/locale/sv-SE/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero tidslinje
-general.filter=Filtrera:
-general.highlight=Framhäv:
-general.clearAll=Rensa allt
-general.jumpToYear=Hoppa till år:
-general.firstBand=Första strecket:
-general.secondBand=Andra strecket:
-general.thirdBand=Tredje strecket:
-general.dateType=Datumtyp:
-general.timelineHeight=Höjd på tidslinje
-general.fitToScreen=Anpassa efter skärm
-
-interval.day=Dag
-interval.month=Månad
-interval.year=År
-interval.decade=Årtionde
-interval.century=Århundrade
-interval.millennium=Årtusende
-
-dateType.published=Publiceringsdatum
-dateType.modified=Ändringsdatum
diff --git a/chrome/locale/sv-SE/zotero/zotero.dtd b/chrome/locale/sv-SE/zotero/zotero.dtd
index 6f0229d88e..2f5ce04299 100644
--- a/chrome/locale/sv-SE/zotero/zotero.dtd
+++ b/chrome/locale/sv-SE/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/ta/zotero/timeline.properties b/chrome/locale/ta/zotero/timeline.properties
deleted file mode 100644
index b8531b387e..0000000000
--- a/chrome/locale/ta/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=சோட்டெரோ காலவரிசை
-general.filter=வடிகட்டி:
-general.highlight=முன்னிலைப்படுத்த:
-general.clearAll=அனைத்தையும் அழி
-general.jumpToYear=ஆண்டுக்கு செல்:
-general.firstBand=முதல் கட்டு:
-general.secondBand=இரண்டாவது கட்டு:
-general.thirdBand=மூன்றாவது கட்டு:
-general.dateType=தேதி வகை:
-general.timelineHeight=காலவரிசை உயரம்:
-general.fitToScreen=திரைக்கு பொருந்தும்
-
-interval.day=நாள்
-interval.month=மாதம்
-interval.year=ஆண்டு
-interval.decade=பத்தாண்டு
-interval.century=நூற்றாண்டு
-interval.millennium=ஆயிராண்டு
-
-dateType.published=தேதி வெளியிடப்பட்டது
-dateType.modified=தேதி மாற்றியமைக்கப்பட்டது
diff --git a/chrome/locale/ta/zotero/zotero.dtd b/chrome/locale/ta/zotero/zotero.dtd
index ffa4bc324a..39f97bfaba 100644
--- a/chrome/locale/ta/zotero/zotero.dtd
+++ b/chrome/locale/ta/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/th-TH/zotero/timeline.properties b/chrome/locale/th-TH/zotero/timeline.properties
deleted file mode 100644
index 028e6bf000..0000000000
--- a/chrome/locale/th-TH/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=ไทม์ไลน์ของ zotero
-general.filter=ตัวกรอง:
-general.highlight=เน้นให้เด่น:
-general.clearAll=ลบทั้งหมด
-general.jumpToYear=ไปที่ปี:
-general.firstBand=แถบแรก:
-general.secondBand=แถบที่สอง:
-general.thirdBand=แถบที่สาม:
-general.dateType=ประเภทวันที่:
-general.timelineHeight=ความสูงของไทม์ไลน์
-general.fitToScreen=เท่ากับขนาดจอ
-
-interval.day=วัน
-interval.month=เดือน
-interval.year=ปี
-interval.decade=ทศวรรษ
-interval.century=ศตวรรษ
-interval.millennium=สหัสวรรษ
-
-dateType.published=วันที่เผยแพร่
-dateType.modified=วันที่แก้ไข
diff --git a/chrome/locale/th-TH/zotero/zotero.dtd b/chrome/locale/th-TH/zotero/zotero.dtd
index ca815c5398..32c9f556ad 100644
--- a/chrome/locale/th-TH/zotero/zotero.dtd
+++ b/chrome/locale/th-TH/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/tr-TR/zotero/timeline.properties b/chrome/locale/tr-TR/zotero/timeline.properties
deleted file mode 100644
index 0d271353f1..0000000000
--- a/chrome/locale/tr-TR/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero Zaman Çizelgesi
-general.filter=Süzgeç:
-general.highlight=Vurgula:
-general.clearAll=Tümünü Temizle
-general.jumpToYear=Yıla Atla:
-general.firstBand=İlk Şerit:
-general.secondBand=İkinci Şerit:
-general.thirdBand=Üçüncü Şerit:
-general.dateType=Tarih Çeşiti:
-general.timelineHeight=Zaman Çizelgesi Boyu:
-general.fitToScreen=Ekranı Doldur
-
-interval.day=Gün
-interval.month=Ay
-interval.year=Yıl
-interval.decade=On Yıl
-interval.century=Yüzyıl
-interval.millennium=Binyıl
-
-dateType.published=Yayınlanma Tarihi
-dateType.modified=Son Değiştirme Tarihi
diff --git a/chrome/locale/tr-TR/zotero/zotero.dtd b/chrome/locale/tr-TR/zotero/zotero.dtd
index dc3101fcee..af55d1f996 100644
--- a/chrome/locale/tr-TR/zotero/zotero.dtd
+++ b/chrome/locale/tr-TR/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/uk-UA/zotero/timeline.properties b/chrome/locale/uk-UA/zotero/timeline.properties
deleted file mode 100644
index 9353f94fa9..0000000000
--- a/chrome/locale/uk-UA/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Шкала часу Zotero
-general.filter=Фільтрувати:
-general.highlight=Відмітити:
-general.clearAll=Очистити все:
-general.jumpToYear=Перейти до року:
-general.firstBand=Перша шкала
-general.secondBand=Друга шкала
-general.thirdBand=Третя шкала:
-general.dateType=Тип дати:
-general.timelineHeight=Висота осі часу:
-general.fitToScreen=За розміром екрану
-
-interval.day=День
-interval.month=Місяць
-interval.year=Рік
-interval.decade=Десятиріччя
-interval.century=Століття
-interval.millennium=Тисячаліття
-
-dateType.published=Дата публікації
-dateType.modified=Дата зміни
diff --git a/chrome/locale/uk-UA/zotero/zotero.dtd b/chrome/locale/uk-UA/zotero/zotero.dtd
index 6e3a61f659..cf789ce382 100644
--- a/chrome/locale/uk-UA/zotero/zotero.dtd
+++ b/chrome/locale/uk-UA/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/vi-VN/zotero/timeline.properties b/chrome/locale/vi-VN/zotero/timeline.properties
deleted file mode 100644
index c2867edad3..0000000000
--- a/chrome/locale/vi-VN/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Tuyến thời gian Zotero
-general.filter=Bộ lọc:
-general.highlight=Đánh dấu màu:
-general.clearAll=Xóa hết
-general.jumpToYear=Nhẩy đến Năm:
-general.firstBand=Dải thứ nhất:
-general.secondBand=Dải thứ hai:
-general.thirdBand=Dải thứ ba:
-general.dateType=Kiểu Ngày:
-general.timelineHeight=Chiều cao:
-general.fitToScreen=Vừa màn hình
-
-interval.day=Ngày
-interval.month=Tháng
-interval.year=Năm
-interval.decade=Thập niên
-interval.century=Thế kỷ
-interval.millennium=Thiên niên kỷ
-
-dateType.published=Ngày xuất bản
-dateType.modified=Ngày thay đổi
diff --git a/chrome/locale/vi-VN/zotero/zotero.dtd b/chrome/locale/vi-VN/zotero/zotero.dtd
index 97e987b2b0..bb0e5baf32 100644
--- a/chrome/locale/vi-VN/zotero/zotero.dtd
+++ b/chrome/locale/vi-VN/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/zh-CN/zotero/timeline.properties b/chrome/locale/zh-CN/zotero/timeline.properties
deleted file mode 100644
index a0b7a85980..0000000000
--- a/chrome/locale/zh-CN/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero 时间轴
-general.filter=过滤:
-general.highlight=高亮:
-general.clearAll=全部清除
-general.jumpToYear=跳至年:
-general.firstBand=第一带:
-general.secondBand=第二带:
-general.thirdBand=第三带:
-general.dateType=日期类型:
-general.timelineHeight=时间轴高度:
-general.fitToScreen=适合屏幕
-
-interval.day=日
-interval.month=月
-interval.year=年
-interval.decade=十年
-interval.century=百年
-interval.millennium=千年
-
-dateType.published=发表日期
-dateType.modified=修改日期
diff --git a/chrome/locale/zh-CN/zotero/zotero.dtd b/chrome/locale/zh-CN/zotero/zotero.dtd
index 502ea20f55..3e916988df 100644
--- a/chrome/locale/zh-CN/zotero/zotero.dtd
+++ b/chrome/locale/zh-CN/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/locale/zh-TW/zotero/timeline.properties b/chrome/locale/zh-TW/zotero/timeline.properties
deleted file mode 100644
index 12a602ab84..0000000000
--- a/chrome/locale/zh-TW/zotero/timeline.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-general.title=Zotero 項目時序表
-general.filter=篩選器:
-general.highlight=高亮標示:
-general.clearAll=全部清除
-general.jumpToYear=跳到這年:
-general.firstBand=第一列:
-general.secondBand=第二列:
-general.thirdBand=第三列:
-general.dateType=日期類型:
-general.timelineHeight=時序表高度:
-general.fitToScreen=配合螢幕大小
-
-interval.day=日
-interval.month=月
-interval.year=年
-interval.decade=十年
-interval.century=世紀
-interval.millennium=千年
-
-dateType.published=發表日期
-dateType.modified=修改日期
diff --git a/chrome/locale/zh-TW/zotero/zotero.dtd b/chrome/locale/zh-TW/zotero/zotero.dtd
index 2eece8c9fe..93eebce0dc 100644
--- a/chrome/locale/zh-TW/zotero/zotero.dtd
+++ b/chrome/locale/zh-TW/zotero/zotero.dtd
@@ -90,7 +90,6 @@
-
diff --git a/chrome/skin/default/zotero/timeline/bundle.css b/chrome/skin/default/zotero/timeline/bundle.css
deleted file mode 100644
index 1b2c7f225b..0000000000
--- a/chrome/skin/default/zotero/timeline/bundle.css
+++ /dev/null
@@ -1,180 +0,0 @@
-/* From http://simile.mit.edu/timeline/api/bundle.css */
-
-.timeline-ether-marker-bottom {
- width: 5em;
- height: 1.5em;
- border-left: 1px solid #aaa;
- padding-left: 2px;
- color: #aaa;
-}
-
-.timeline-ether-marker-bottom-emphasized {
- width: 5em;
- height: 2em;
- border-left: 1px solid #aaa;
- padding-left: 2px;
- color: black;
-}
-
-.timeline-ether-marker-top {
- width: 5em;
- height: 1.5em;
- border-left: 1px solid #aaa;
- padding-left: 2px;
- color: #aaa;
-}
-
-.timeline-ether-marker-top-emphasized {
- width: 5em;
- height: 2em;
- border-left: 1px solid #aaa;
- padding-left: 2px;
- color: black;
-}
-
-
-.timeline-ether-marker-right {
- width: 5em;
- height: 1.5em;
- border-top: 1px solid #aaa;
- padding-top: 2px;
- color: #aaa;
-}
-
-.timeline-ether-marker-right-emphasized {
- width: 7em;
- height: 1.5em;
- border-top: 1px solid #aaa;
- padding-top: 2px;
- color: black;
-}
-.timeline-ether-marker-left {
- width: 5em;
- height: 1.5em;
- border-top: 1px solid #aaa;
- padding-top: 2px;
- color: #aaa;
-}
-
-.timeline-ether-marker-left-emphasized {
- width: 7em;
- height: 1.5em;
- border-top: 1px solid #aaa;
- padding-top: 2px;
- color: black;
-}
-.timeline-duration-event {
- position: absolute;
- overflow: hidden;
- border: 1px solid blue;
-}
-
-.timeline-instant-event2 {
- position: absolute;
- overflow: hidden;
- border-left: 1px solid blue;
- padding-left: 2px;
-}
-
-.timeline-instant-event {
- position: absolute;
- overflow: hidden;
-}
-
-.timeline-event-bubble-title {
- font-weight: 600;
- border-bottom: 1px solid #888;
- margin-bottom: 0.5em;
-}
-
-.timeline-event-bubble-body {
-}
-
-.timeline-event-bubble-wiki {
- margin: 0.5em;
- text-align: right;
- color: #A0A040;
-}
-.timeline-event-bubble-wiki a {
- color: #A0A040;
-}
-
-.timeline-event-bubble-time {
- color: #aaa;
-}
-
-.timeline-event-bubble-image {
- float: right;
- padding-left: 5px;
- padding-bottom: 5px;
-}.timeline-container {
- position: relative;
- overflow: hidden;
-}
-
-.timeline-copyright {
- position: absolute;
- bottom: 0px;
- left: 0px;
- z-index: 1000;
- cursor: pointer;
- display:none;
-}
-
-.timeline-message-container {
- position: absolute;
- top: 30%;
- left: 35%;
- right: 35%;
- z-index: 1000;
- display: none;
-}
-.timeline-message {
- font-size: 120%;
- font-weight: bold;
- text-align: center;
-}
-.timeline-message img {
- vertical-align: middle;
-}
-
-.timeline-band {
- position: absolute;
- background: #eee;
- z-index: 10;
-}
-
-.timeline-band-inner {
- position: relative;
- width: 100%;
- height: 100%;
-}
-
-.timeline-band-input {
- position: absolute;
- width: 1em;
- height: 1em;
- overflow: hidden;
- z-index: 0;
-}
-.timeline-band-input input{
- width: 0;
-}
-
-.timeline-band-layer {
- position: absolute;
- width: 100%;
- height: 100%;
-}
-
-.timeline-band-layer-inner {
- position: relative;
- width: 100%;
- height: 100%;
-}
-
-/* Added by Zotero for 2x icons */
-.timeline-band-layer-inner img {
- height: 16px;
- margin-right: 2px;
-}
diff --git a/chrome/skin/default/zotero/timeline/bundle.js b/chrome/skin/default/zotero/timeline/bundle.js
deleted file mode 100644
index f08cc471a0..0000000000
--- a/chrome/skin/default/zotero/timeline/bundle.js
+++ /dev/null
@@ -1,316 +0,0 @@
-/*
- From http://simile.mit.edu/timeline/api/bundle.js
-
- © Copyright The SIMILE Project 2003-2005.
- http://simile.mit.edu/
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- 3. The name of the author may not be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-/* timeline.js */
-
-Timeline.strings={};Timeline.create=function(elmt,bandInfos,orientation,unit){return new Timeline._Impl(elmt,bandInfos,orientation,unit);};Timeline.HORIZONTAL=0;Timeline.VERTICAL=1;Timeline._defaultTheme=null;Timeline.createBandInfo=function(params){var theme=("theme"in params)?params.theme:Timeline.getDefaultTheme();var eventSource=("eventSource"in params)?params.eventSource:null;var ether=new Timeline.LinearEther({centersOn:("date"in params)?params.date:new Date(),interval:Timeline.DateTime.gregorianUnitLengths[params.intervalUnit],pixelsPerInterval:params.intervalPixels});var etherPainter=new Timeline.GregorianEtherPainter({unit:params.intervalUnit,multiple:("multiple"in params)?params.multiple:1,theme:theme,align:("align"in params)?params.align:undefined});var layout=new Timeline.StaticTrackBasedLayout({eventSource:eventSource,ether:ether,showText:("showEventText"in params)?params.showEventText:true,theme:theme});var eventPainterParams={showText:("showEventText"in params)?params.showEventText:true,layout:layout,theme:theme};if("trackHeight"in params){eventPainterParams.trackHeight=params.trackHeight;}
-if("trackGap"in params){eventPainterParams.trackGap=params.trackGap;}
-var eventPainter=new Timeline.DurationEventPainter(eventPainterParams);return{width:params.width,eventSource:eventSource,timeZone:("timeZone"in params)?params.timeZone:0,ether:ether,etherPainter:etherPainter,eventPainter:eventPainter};};Timeline.createHotZoneBandInfo=function(params){var theme=("theme"in params)?params.theme:Timeline.getDefaultTheme();var eventSource=("eventSource"in params)?params.eventSource:null;var ether=new Timeline.HotZoneEther({centersOn:("date"in params)?params.date:new Date(),interval:Timeline.DateTime.gregorianUnitLengths[params.intervalUnit],pixelsPerInterval:params.intervalPixels,zones:params.zones});var etherPainter=new Timeline.HotZoneGregorianEtherPainter({unit:params.intervalUnit,zones:params.zones,theme:theme,align:("align"in params)?params.align:undefined});var layout=new Timeline.StaticTrackBasedLayout({eventSource:eventSource,ether:ether,theme:theme});var eventPainterParams={showText:("showEventText"in params)?params.showEventText:true,layout:layout,theme:theme};if("trackHeight"in params){eventPainterParams.trackHeight=params.trackHeight;}
-if("trackGap"in params){eventPainterParams.trackGap=params.trackGap;}
-var eventPainter=new Timeline.DurationEventPainter(eventPainterParams);return{width:params.width,eventSource:eventSource,timeZone:("timeZone"in params)?params.timeZone:0,ether:ether,etherPainter:etherPainter,eventPainter:eventPainter};};Timeline.getDefaultTheme=function(){if(Timeline._defaultTheme==null){Timeline._defaultTheme=Timeline.ClassicTheme.create(Timeline.Platform.getDefaultLocale());}
-return Timeline._defaultTheme;};Timeline.setDefaultTheme=function(theme){Timeline._defaultTheme=theme;};Timeline.loadXML=function(url,f){var fError=function(statusText,status,xmlhttp){alert("Failed to load data xml from "+url+"\n"+statusText);};var fDone=function(xmlhttp){var xml=xmlhttp.responseXML;if(!xml.documentElement&&xmlhttp.responseStream){xml.load(xmlhttp.responseStream);}
-f(xml,url);};Timeline.XmlHttp.get(url,fError,fDone);};Timeline.loadJSON=function(url,f){var fError=function(statusText,status,xmlhttp){alert("Failed to load json data from "+url+"\n"+statusText);};var fDone=function(xmlhttp){throw('break');};Timeline.XmlHttp.get(url,fError,fDone);};Timeline._Impl=function(elmt,bandInfos,orientation,unit){this._containerDiv=elmt;this._bandInfos=bandInfos;this._orientation=orientation==null?Timeline.HORIZONTAL:orientation;this._unit=(unit!=null)?unit:Timeline.NativeDateUnit;this._initialize();};Timeline._Impl.prototype.dispose=function(){for(var i=0;i Loading...";this.showLoadingMessage=function(){message.containerDiv.style.display="block";};this.hideLoadingMessage=function(){message.containerDiv.style.display="none";};};Timeline._Impl.prototype._distributeWidths=function(){var length=this.getPixelLength();var width=this.getPixelWidth();var cumulativeWidth=0;for(var i=0;i0){var percent=parseInt(widthString.substr(0,x));var bandWidth=percent*width/100;}else{var bandWidth=parseInt(widthString);}
-band.setBandShiftAndWidth(cumulativeWidth,bandWidth);band.setViewLength(length);cumulativeWidth+=bandWidth;}};Timeline._Band=function(timeline,bandInfo,index){this._timeline=timeline;this._bandInfo=bandInfo;this._index=index;this._locale=("locale"in bandInfo)?bandInfo.locale:Timeline.Platform.getDefaultLocale();this._timeZone=("timeZone"in bandInfo)?bandInfo.timeZone:0;this._labeller=("labeller"in bandInfo)?bandInfo.labeller:timeline.getUnit().createLabeller(this._locale,this._timeZone);this._dragging=false;this._changing=false;this._originalScrollSpeed=5;this._scrollSpeed=this._originalScrollSpeed;this._onScrollListeners=[];var b=this;this._syncWithBand=null;this._syncWithBandHandler=function(band){b._onHighlightBandScroll();};this._selectorListener=function(band){b._onHighlightBandScroll();};var inputDiv=this._timeline.getDocument().createElement("div");inputDiv.className="timeline-band-input";this._timeline.addDiv(inputDiv);this._keyboardInput=document.createElement("input");this._keyboardInput.type="text";inputDiv.appendChild(this._keyboardInput);Timeline.DOM.registerEventWithObject(this._keyboardInput,"keydown",this,this._onKeyDown);Timeline.DOM.registerEventWithObject(this._keyboardInput,"keyup",this,this._onKeyUp);this._div=this._timeline.getDocument().createElement("div");this._div.className="timeline-band";this._timeline.addDiv(this._div);Timeline.DOM.registerEventWithObject(this._div,"mousedown",this,this._onMouseDown);Timeline.DOM.registerEventWithObject(this._div,"mousemove",this,this._onMouseMove);Timeline.DOM.registerEventWithObject(this._div,"mouseup",this,this._onMouseUp);Timeline.DOM.registerEventWithObject(this._div,"mouseout",this,this._onMouseOut);Timeline.DOM.registerEventWithObject(this._div,"dblclick",this,this._onDblClick);this._innerDiv=this._timeline.getDocument().createElement("div");this._innerDiv.className="timeline-band-inner";this._div.appendChild(this._innerDiv);this._ether=bandInfo.ether;bandInfo.ether.initialize(timeline);this._etherPainter=bandInfo.etherPainter;bandInfo.etherPainter.initialize(this,timeline);this._eventSource=bandInfo.eventSource;if(this._eventSource){this._eventListener={onAddMany:function(){b._onAddMany();},onClear:function(){b._onClear();}}
-this._eventSource.addListener(this._eventListener);}
-this._eventPainter=bandInfo.eventPainter;bandInfo.eventPainter.initialize(this,timeline);this._decorators=("decorators"in bandInfo)?bandInfo.decorators:[];for(var i=0;i3*this._viewLength/2){this.setCenterVisibleDate(this.pixelOffsetToDate(pixelOffset-this._viewLength));}
-this._autoScroll(Math.round(this._viewLength/2-this._ether.dateToPixelOffset(date)));};Timeline._Band.prototype._onMouseDown=function(innerFrame,evt,target){this.closeBubble();this._dragging=true;this._dragX=evt.clientX;this._dragY=evt.clientY;};Timeline._Band.prototype._onMouseMove=function(innerFrame,evt,target){if(this._dragging){var diffX=evt.clientX-this._dragX;var diffY=evt.clientY-this._dragY;this._dragX=evt.clientX;this._dragY=evt.clientY;this._moveEther(this._timeline.isHorizontal()?diffX:diffY);this._positionHighlight();}};Timeline._Band.prototype._onMouseUp=function(innerFrame,evt,target){this._dragging=false;this._keyboardInput.focus();};Timeline._Band.prototype._onMouseOut=function(innerFrame,evt,target){var coords=Timeline.DOM.getEventRelativeCoordinates(evt,innerFrame);coords.x+=this._viewOffset;if(coords.x<0||coords.x>innerFrame.offsetWidth||coords.y<0||coords.y>innerFrame.offsetHeight){this._dragging=false;}};Timeline._Band.prototype._onDblClick=function(innerFrame,evt,target){var coords=Timeline.DOM.getEventRelativeCoordinates(evt,innerFrame);var distance=coords.x-(this._viewLength/2-this._viewOffset);this._autoScroll(-distance);};Timeline._Band.prototype._onKeyDown=function(keyboardInput,evt,target){if(!this._dragging){switch(evt.keyCode){case 27:break;case 37:case 38:this._scrollSpeed=Math.min(50,Math.abs(this._scrollSpeed*1.05));this._moveEther(this._scrollSpeed);break;case 39:case 40:this._scrollSpeed=-Math.min(50,Math.abs(this._scrollSpeed*1.05));this._moveEther(this._scrollSpeed);break;default:return true;}
-this.closeBubble();Timeline.DOM.cancelEvent(evt);return false;}
-return true;};Timeline._Band.prototype._onKeyUp=function(keyboardInput,evt,target){if(!this._dragging){this._scrollSpeed=this._originalScrollSpeed;switch(evt.keyCode){case 35:this.setCenterVisibleDate(this._eventSource.getLatestDate());break;case 36:this.setCenterVisibleDate(this._eventSource.getEarliestDate());break;case 33:this._autoScroll(this._timeline.getPixelLength());break;case 34:this._autoScroll(-this._timeline.getPixelLength());break;default:return true;}
-this.closeBubble();Timeline.DOM.cancelEvent(evt);return false;}
-return true;};Timeline._Band.prototype._autoScroll=function(distance){var b=this;var a=Timeline.Graphics.createAnimation(function(abs,diff){b._moveEther(diff);},0,distance,1000);a.run();};Timeline._Band.prototype._moveEther=function(shift){this.closeBubble();this._viewOffset+=shift;this._ether.shiftPixels(-shift);if(this._timeline.isHorizontal()){this._div.style.left=this._viewOffset+"px";}else{this._div.style.top=this._viewOffset+"px";}
-if(this._viewOffset>-this._viewLength*0.5||this._viewOffset<-this._viewLength*(Timeline._Band.SCROLL_MULTIPLES-1.5)){this._recenterDiv();}else{this.softLayout();}
-this._onChanging();}
-Timeline._Band.prototype._onChanging=function(){this._changing=true;this._fireOnScroll();this._setSyncWithBandDate();this._changing=false;};Timeline._Band.prototype._fireOnScroll=function(){for(var i=0;i=0?i:s.length;};if(Timeline.Platform.browser.isMozilla){var offset=ua.indexOf("mozilla/");if(offset>=0){parseVersionString(ua.substring(offset+8,indexOf(ua," ",offset)));}}
-if(Timeline.Platform.browser.isIE){var offset=ua.indexOf("msie ");if(offset>=0){parseVersionString(ua.substring(offset+5,indexOf(ua,";",offset)));}}
-if(Timeline.Platform.browser.isNetscape){var offset=ua.indexOf("rv:");if(offset>=0){parseVersionString(ua.substring(offset+3,indexOf(ua,")",offset)));}}
-if(Timeline.Platform.browser.isFirefox){var offset=ua.indexOf("firefox/");if(offset>=0){parseVersionString(ua.substring(offset+8,indexOf(ua," ",offset)));}}})();Timeline.Platform.getDefaultLocale=function(){return Timeline.Platform.clientLocale;};
-
-/* data-structure.js */
-
-Timeline.SortedArray=function(compare,initialArray){this._a=(initialArray instanceof Array)?initialArray:[];this._compare=compare;};Timeline.SortedArray.prototype.add=function(elmt){var sa=this;var index=this.find(function(elmt2){return sa._compare(elmt2,elmt);});if(index0)?this._a[0]:null;};Timeline.SortedArray.prototype.getLast=function(){return(this._a.length>0)?this._a[this._a.length-1]:null;};Timeline.EventIndex=function(unit){var eventIndex=this;this._unit=(unit!=null)?unit:Timeline.NativeDateUnit;this._events=new Timeline.SortedArray(function(event1,event2){return eventIndex._unit.compare(event1.getStart(),event2.getStart());});this._indexed=true;};Timeline.EventIndex.prototype.getUnit=function(){return this._unit;};Timeline.EventIndex.prototype.add=function(evt){this._events.add(evt);this._indexed=false;};Timeline.EventIndex.prototype.removeAll=function(){this._events.removeAll();this._indexed=false;};Timeline.EventIndex.prototype.getCount=function(){return this._events.length();};Timeline.EventIndex.prototype.getIterator=function(startDate,endDate){if(!this._indexed){this._index();}
-return new Timeline.EventIndex._Iterator(this._events,startDate,endDate,this._unit);};Timeline.EventIndex.prototype.getAllIterator=function(){return new Timeline.EventIndex._AllIterator(this._events);};Timeline.EventIndex.prototype.getEarliestDate=function(){var evt=this._events.getFirst();return(evt==null)?null:evt.getStart();};Timeline.EventIndex.prototype.getLatestDate=function(){var evt=this._events.getLast();if(evt==null){return null;}
-if(!this._indexed){this._index();}
-var index=evt._earliestOverlapIndex;var date=this._events.elementAt(index).getEnd();for(var i=index+1;i=0){this._currentIndex=this._events.elementAt(this._currentIndex-1)._earliestOverlapIndex;}
-this._currentIndex--;this._maxIndex=events.find(function(evt){return unit.compare(evt.getStart(),endDate);});this._hasNext=false;this._next=null;this._findNext();};Timeline.EventIndex._Iterator.prototype={hasNext:function(){return this._hasNext;},next:function(){if(this._hasNext){var next=this._next;this._findNext();return next;}else{return null;}},_findNext:function(){var unit=this._unit;while((++this._currentIndex)0){this._next=evt;this._hasNext=true;return;}}
-this._next=null;this._hasNext=false;}};Timeline.EventIndex._AllIterator=function(events){this._events=events;this._index=0;};Timeline.EventIndex._AllIterator.prototype={hasNext:function(){return this._index0&&s.length<8){var space=s.indexOf(" ");if(space>0){var year=parseInt(s.substr(0,space));var suffix=s.substr(space+1);if(suffix.toLowerCase()=="bc"){year=1-year;}}else{var year=parseInt(s);}
-var d=new Date(0);d.setUTCFullYear(year);return d;}
-try{return new Date(Date.parse(s));}catch(e){return null;}};Timeline.DateTime._iso8601DateRegExp="^(-?)([0-9]{4})("+["(-?([0-9]{2})(-?([0-9]{2}))?)","(-?([0-9]{3}))","(-?W([0-9]{2})(-?([1-7]))?)"].join("|")+")?$";Timeline.DateTime.setIso8601Date=function(dateObject,string){var regexp=Timeline.DateTime._iso8601DateRegExp;var d=string.match(new RegExp(regexp));if(!d){throw new Error("Invalid date string: "+string);}
-var sign=(d[1]=="-")?-1:1;var year=sign*d[2];var month=d[5];var date=d[7];var dayofyear=d[9];var week=d[11];var dayofweek=(d[13])?d[13]:1;dateObject.setUTCFullYear(year);if(dayofyear){dateObject.setUTCMonth(0);dateObject.setUTCDate(Number(dayofyear));}else if(week){dateObject.setUTCMonth(0);dateObject.setUTCDate(1);var gd=dateObject.getUTCDay();var day=(gd)?gd:7;var offset=Number(dayofweek)+(7*Number(week));if(day<=4){dateObject.setUTCDate(offset+1-day);}else{dateObject.setUTCDate(offset+8-day);}}else{if(month){dateObject.setUTCDate(1);dateObject.setUTCMonth(month-1);}
-if(date){dateObject.setUTCDate(date);}}
-return dateObject;};Timeline.DateTime.setIso8601Time=function(dateObject,string){var timezone="Z|(([-+])([0-9]{2})(:?([0-9]{2}))?)$";var d=string.match(new RegExp(timezone));var offset=0;if(d){if(d[0]!='Z'){offset=(Number(d[3])*60)+Number(d[5]);offset*=((d[2]=='-')?1:-1);}
-string=string.substr(0,string.length-d[0].length);}
-var regexp="^([0-9]{2})(:?([0-9]{2})(:?([0-9]{2})(\.([0-9]+))?)?)?$";var d=string.match(new RegExp(regexp));if(!d){dojo.debug("invalid time string: "+string);return false;}
-var hours=d[1];var mins=Number((d[3])?d[3]:0);var secs=(d[5])?d[5]:0;var ms=d[7]?(Number("0."+d[7])*1000):0;dateObject.setUTCHours(hours);dateObject.setUTCMinutes(mins);dateObject.setUTCSeconds(secs);dateObject.setUTCMilliseconds(ms);return dateObject;};Timeline.DateTime.setIso8601=function(dateObject,string){var comps=(string.indexOf("T")==-1)?string.split(" "):string.split("T");Timeline.DateTime.setIso8601Date(dateObject,comps[0]);if(comps.length==2){Timeline.DateTime.setIso8601Time(dateObject,comps[1]);}
-return dateObject;};Timeline.DateTime.parseIso8601DateTime=function(string){try{return Timeline.DateTime.setIso8601(new Date(0),string);}catch(e){return null;}};Timeline.DateTime.roundDownToInterval=function(date,intervalUnit,timeZone,multiple,firstDayOfWeek){var timeShift=timeZone*Timeline.DateTime.gregorianUnitLengths[Timeline.DateTime.HOUR];var date2=new Date(date.getTime()+timeShift);var clearInDay=function(d){d.setUTCMilliseconds(0);d.setUTCSeconds(0);d.setUTCMinutes(0);d.setUTCHours(0);};var clearInYear=function(d){clearInDay(d);d.setUTCDate(1);d.setUTCMonth(0);};switch(intervalUnit){case Timeline.DateTime.MILLISECOND:var x=date2.getUTCMilliseconds();date2.setUTCMilliseconds(x-(x%multiple));break;case Timeline.DateTime.SECOND:date2.setUTCMilliseconds(0);var x=date2.getUTCSeconds();date2.setUTCSeconds(x-(x%multiple));break;case Timeline.DateTime.MINUTE:date2.setUTCMilliseconds(0);date2.setUTCSeconds(0);var x=date2.getUTCMinutes();date2.setTime(date2.getTime()-
-(x%multiple)*Timeline.DateTime.gregorianUnitLengths[Timeline.DateTime.MINUTE]);break;case Timeline.DateTime.HOUR:date2.setUTCMilliseconds(0);date2.setUTCSeconds(0);date2.setUTCMinutes(0);var x=date2.getUTCHours();date2.setUTCHours(x-(x%multiple));break;case Timeline.DateTime.DAY:clearInDay(date2);break;case Timeline.DateTime.WEEK:clearInDay(date2);var d=(date2.getUTCDay()+7-firstDayOfWeek)%7;date2.setTime(date2.getTime()-
-d*Timeline.DateTime.gregorianUnitLengths[Timeline.DateTime.DAY]);break;case Timeline.DateTime.MONTH:clearInDay(date2);date2.setUTCDate(1);var x=date2.getUTCMonth();date2.setUTCMonth(x-(x%multiple));break;case Timeline.DateTime.YEAR:clearInYear(date2);var x=date2.getUTCFullYear();date2.setUTCFullYear(x-(x%multiple));break;case Timeline.DateTime.DECADE:clearInYear(date2);date2.setUTCFullYear(Math.floor(date2.getUTCFullYear()/10)*10);break;case Timeline.DateTime.CENTURY:clearInYear(date2);date2.setUTCFullYear(Math.floor(date2.getUTCFullYear()/100)*100);break;case Timeline.DateTime.MILLENNIUM:clearInYear(date2);date2.setUTCFullYear(Math.floor(date2.getUTCFullYear()/1000)*1000);break;}
-date.setTime(date2.getTime()-timeShift);};Timeline.DateTime.roundUpToInterval=function(date,intervalUnit,timeZone,multiple,firstDayOfWeek){var originalTime=date.getTime();Timeline.DateTime.roundDownToInterval(date,intervalUnit,timeZone,multiple,firstDayOfWeek);if(date.getTime()6);Timeline.Graphics.createTranslucentImage=function(doc,url,verticalAlign){var elmt;if(Timeline.Graphics.pngIsTranslucent){elmt=doc.createElement("img");elmt.setAttribute("src",url);}else{elmt=doc.createElement("img");elmt.style.display="inline";elmt.style.width="1px";elmt.style.height="1px";elmt.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+url+"', sizingMethod='image')";}
-elmt.style.verticalAlign=(verticalAlign!=null)?verticalAlign:"middle";return elmt;};Timeline.Graphics.setOpacity=function(elmt,opacity){if(Timeline.Platform.browser.isIE){elmt.style.filter="progid:DXImageTransform.Microsoft.Alpha(Style=0,Opacity="+opacity+")";}else{var o=(opacity/100).toString();elmt.style.opacity=o;elmt.style.MozOpacity=o;}};Timeline.Graphics._bubbleMargins={top:33,bottom:42,left:33,right:40}
-Timeline.Graphics._arrowOffsets={top:0,bottom:9,left:1,right:8}
-Timeline.Graphics._bubblePadding=15;Timeline.Graphics._bubblePointOffset=6;Timeline.Graphics._halfArrowWidth=18;Timeline.Graphics.createBubbleForPoint=function(doc,pageX,pageY,contentWidth,contentHeight){var bubble={_closed:false,_doc:doc,close:function(){if(!this._closed){this._doc.body.removeChild(this._div);this._doc=null;this._div=null;this._content=null;this._closed=true;}}};var docWidth=doc.body.offsetWidth;var docHeight=doc.body.offsetHeight;var margins=Timeline.Graphics._bubbleMargins;var bubbleWidth=margins.left+contentWidth+margins.right;var bubbleHeight=margins.top+contentHeight+margins.bottom;var pngIsTranslucent=Timeline.Graphics.pngIsTranslucent;var urlPrefix=Timeline.urlPrefix;var setImg=function(elmt,url,width,height){elmt.style.position="absolute";elmt.style.width=width+"px";elmt.style.height=height+"px";if(pngIsTranslucent){elmt.style.background="url("+url+")";}else{elmt.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+url+"', sizingMethod='crop')";}}
-var div=doc.createElement("div");div.style.width=bubbleWidth+"px";div.style.height=bubbleHeight+"px";div.style.position="absolute";div.style.zIndex=1000;bubble._div=div;var divInner=doc.createElement("div");divInner.style.width="100%";divInner.style.height="100%";divInner.style.position="relative";div.appendChild(divInner);var createImg=function(url,left,top,width,height){var divImg=doc.createElement("div");divImg.style.left=left+"px";divImg.style.top=top+"px";setImg(divImg,url,width,height);divInner.appendChild(divImg);}
-createImg(urlPrefix+"images/bubble-top-left.png",0,0,margins.left,margins.top);createImg(urlPrefix+"images/bubble-top.png",margins.left,0,contentWidth,margins.top);createImg(urlPrefix+"images/bubble-top-right.png",margins.left+contentWidth,0,margins.right,margins.top);createImg(urlPrefix+"images/bubble-left.png",0,margins.top,margins.left,contentHeight);createImg(urlPrefix+"images/bubble-right.png",margins.left+contentWidth,margins.top,margins.right,contentHeight);createImg(urlPrefix+"images/bubble-bottom-left.png",0,margins.top+contentHeight,margins.left,margins.bottom);createImg(urlPrefix+"images/bubble-bottom.png",margins.left,margins.top+contentHeight,contentWidth,margins.bottom);createImg(urlPrefix+"images/bubble-bottom-right.png",margins.left+contentWidth,margins.top+contentHeight,margins.right,margins.bottom);var divClose=doc.createElement("div");divClose.style.left=(bubbleWidth-margins.right+Timeline.Graphics._bubblePadding-16-2)+"px";divClose.style.top=(margins.top-Timeline.Graphics._bubblePadding+1)+"px";divClose.style.cursor="pointer";setImg(divClose,urlPrefix+"images/close-button.png",16,16);Timeline.DOM.registerEventWithObject(divClose,"click",bubble,bubble.close);divInner.appendChild(divClose);var divContent=doc.createElement("div");divContent.style.position="absolute";divContent.style.left=margins.left+"px";divContent.style.top=margins.top+"px";divContent.style.width=contentWidth+"px";divContent.style.height=contentHeight+"px";divContent.style.overflow="auto";divContent.style.background="white";divInner.appendChild(divContent);bubble.content=divContent;(function(){if(pageX-Timeline.Graphics._halfArrowWidth-Timeline.Graphics._bubblePadding>0&&pageX+Timeline.Graphics._halfArrowWidth+Timeline.Graphics._bubblePadding0){var divImg=doc.createElement("div");divImg.style.left=(pageX-Timeline.Graphics._halfArrowWidth-left)+"px";divImg.style.top=(margins.top+contentHeight)+"px";setImg(divImg,urlPrefix+"images/bubble-bottom-arrow.png",37,margins.bottom);divInner.appendChild(divImg);div.style.left=left+"px";div.style.top=(pageY-Timeline.Graphics._bubblePointOffset-bubbleHeight+
-Timeline.Graphics._arrowOffsets.bottom)+"px";return;}else if(pageY+Timeline.Graphics._bubblePointOffset+bubbleHeight0){var divImg=doc.createElement("div");divImg.style.left=(margins.left+contentWidth)+"px";divImg.style.top=(pageY-Timeline.Graphics._halfArrowWidth-top)+"px";setImg(divImg,urlPrefix+"images/bubble-right-arrow.png",margins.right,37);divInner.appendChild(divImg);div.style.left=(pageX-Timeline.Graphics._bubblePointOffset-bubbleWidth+
-Timeline.Graphics._arrowOffsets.right)+"px";div.style.top=top+"px";}else{var divImg=doc.createElement("div");divImg.style.left="0px";divImg.style.top=(pageY-Timeline.Graphics._halfArrowWidth-top)+"px";setImg(divImg,urlPrefix+"images/bubble-left-arrow.png",margins.left,37);divInner.appendChild(divImg);div.style.left=(pageX+Timeline.Graphics._bubblePointOffset-
-Timeline.Graphics._arrowOffsets.left)+"px";div.style.top=top+"px";}})();doc.body.appendChild(div);return bubble;};Timeline.Graphics.createMessageBubble=function(doc){var containerDiv=doc.createElement("div");if(Timeline.Graphics.pngIsTranslucent){var topDiv=doc.createElement("div");topDiv.style.height="33px";topDiv.style.background="url("+Timeline.urlPrefix+"images/message-top-left.png) top left no-repeat";topDiv.style.paddingLeft="44px";containerDiv.appendChild(topDiv);var topRightDiv=doc.createElement("div");topRightDiv.style.height="33px";topRightDiv.style.background="url("+Timeline.urlPrefix+"images/message-top-right.png) top right no-repeat";topDiv.appendChild(topRightDiv);var middleDiv=doc.createElement("div");middleDiv.style.background="url("+Timeline.urlPrefix+"images/message-left.png) top left repeat-y";middleDiv.style.paddingLeft="44px";containerDiv.appendChild(middleDiv);var middleRightDiv=doc.createElement("div");middleRightDiv.style.background="url("+Timeline.urlPrefix+"images/message-right.png) top right repeat-y";middleRightDiv.style.paddingRight="44px";middleDiv.appendChild(middleRightDiv);var contentDiv=doc.createElement("div");middleRightDiv.appendChild(contentDiv);var bottomDiv=doc.createElement("div");bottomDiv.style.height="55px";bottomDiv.style.background="url("+Timeline.urlPrefix+"images/message-bottom-left.png) bottom left no-repeat";bottomDiv.style.paddingLeft="44px";containerDiv.appendChild(bottomDiv);var bottomRightDiv=doc.createElement("div");bottomRightDiv.style.height="55px";bottomRightDiv.style.background="url("+Timeline.urlPrefix+"images/message-bottom-right.png) bottom right no-repeat";bottomDiv.appendChild(bottomRightDiv);}else{containerDiv.style.border="2px solid #7777AA";containerDiv.style.padding="20px";containerDiv.style.background="white";Timeline.Graphics.setOpacity(containerDiv,90);var contentDiv=doc.createElement("div");containerDiv.appendChild(contentDiv);}
-return{containerDiv:containerDiv,contentDiv:contentDiv};};Timeline.Graphics.createAnimation=function(f,from,to,duration){return new Timeline.Graphics._Animation(f,from,to,duration);};Timeline.Graphics._Animation=function(f,from,to,duration){this.f=f;this.from=from;this.to=to;this.current=from;this.duration=duration;this.start=new Date().getTime();this.timePassed=0;};Timeline.Graphics._Animation.prototype.run=function(){var a=this;window.setTimeout(function(){a.step();},100);};Timeline.Graphics._Animation.prototype.step=function(){this.timePassed+=100;var timePassedFraction=this.timePassed/this.duration;var parameterFraction=-Math.cos(timePassedFraction*Math.PI)/2+0.5;var current=parameterFraction*(this.to-this.from)+this.from;try{this.f(current,current-this.current);}catch(e){}
-this.current=current;if(this.timePassed0){minDate=this._unit.later(minDate,this._startDate);maxDate=this._unit.earlier(maxDate,this._endDate);var minPixel=this._band.dateToPixelOffset(minDate);var maxPixel=this._band.dateToPixelOffset(maxDate);var doc=this._timeline.getDocument();var createTable=function(){var table=doc.createElement("table");table.insertRow(0).insertCell(0);return table;};var div=doc.createElement("div");div.style.position="absolute";div.style.overflow="hidden";div.style.background=this._color;if(this._opacity<100){Timeline.Graphics.setOpacity(div,this._opacity);}
-this._layerDiv.appendChild(div);var tableStartLabel=createTable();tableStartLabel.style.position="absolute";tableStartLabel.style.overflow="hidden";tableStartLabel.style.fontSize="300%";tableStartLabel.style.fontWeight="bold";tableStartLabel.style.color=this._color;tableStartLabel.rows[0].cells[0].innerHTML=this._startLabel;this._layerDiv.appendChild(tableStartLabel);var tableEndLabel=createTable();tableEndLabel.style.position="absolute";tableEndLabel.style.overflow="hidden";tableEndLabel.style.fontSize="300%";tableEndLabel.style.fontWeight="bold";tableEndLabel.style.color=this._color;tableEndLabel.rows[0].cells[0].innerHTML=this._endLabel;this._layerDiv.appendChild(tableEndLabel);if(this._timeline.isHorizontal()){div.style.left=minPixel+"px";div.style.width=(maxPixel-minPixel)+"px";div.style.top="0px";div.style.height="100%";tableStartLabel.style.right=(this._band.getTotalViewLength()-minPixel)+"px";tableStartLabel.style.width=(this._startLabel.length)+"em";tableStartLabel.style.top="0px";tableStartLabel.style.height="100%";tableStartLabel.style.textAlign="right";tableEndLabel.style.left=maxPixel+"px";tableEndLabel.style.width=(this._endLabel.length)+"em";tableEndLabel.style.top="0px";tableEndLabel.style.height="100%";}else{div.style.top=minPixel+"px";div.style.height=(maxPixel-minPixel)+"px";div.style.left="0px";div.style.width="100%";tableStartLabel.style.bottom=minPixel+"px";tableStartLabel.style.height="1.5px";tableStartLabel.style.left="0px";tableStartLabel.style.width="100%";tableEndLabel.style.top=maxPixel+"px";tableEndLabel.style.height="1.5px";tableEndLabel.style.left="0px";tableEndLabel.style.width="100%";}}
-this._layerDiv.style.display="block";};Timeline.SpanHighlightDecorator.prototype.softPaint=function(){};Timeline.PointHighlightDecorator=function(params){this._unit=("unit"in params)?params.unit:Timeline.NativeDateUnit;this._date=(typeof params.date=="string")?this._unit.parseFromObject(params.date):params.date;this._width=("width"in params)?params.width:10;this._color=params.color;this._opacity=("opacity"in params)?params.opacity:100;};Timeline.PointHighlightDecorator.prototype.initialize=function(band,timeline){this._band=band;this._timeline=timeline;this._layerDiv=null;};Timeline.PointHighlightDecorator.prototype.paint=function(){if(this._layerDiv!=null){this._band.removeLayerDiv(this._layerDiv);}
-this._layerDiv=this._band.createLayerDiv(10);this._layerDiv.setAttribute("name","span-highlight-decorator");this._layerDiv.style.display="none";var minDate=this._band.getMinDate();var maxDate=this._band.getMaxDate();if(this._unit.compare(this._date,maxDate)<0&&this._unit.compare(this._date,minDate)>0){var pixel=this._band.dateToPixelOffset(this._date);var minPixel=pixel-Math.round(this._width/2);var doc=this._timeline.getDocument();var div=doc.createElement("div");div.style.position="absolute";div.style.overflow="hidden";div.style.background=this._color;if(this._opacity<100){Timeline.Graphics.setOpacity(div,this._opacity);}
-this._layerDiv.appendChild(div);if(this._timeline.isHorizontal()){div.style.left=minPixel+"px";div.style.width=this._width+"px";div.style.top="0px";div.style.height="100%";}else{div.style.top=minPixel+"px";div.style.height=this._width+"px";div.style.left="0px";div.style.width="100%";}}
-this._layerDiv.style.display="block";};Timeline.PointHighlightDecorator.prototype.softPaint=function(){};
-
-/* ether-painters.js */
-
-Timeline.GregorianEtherPainter=function(params){this._params=params;this._theme=params.theme;this._unit=params.unit;this._multiple=("multiple"in params)?params.multiple:1;};Timeline.GregorianEtherPainter.prototype.initialize=function(band,timeline){this._band=band;this._timeline=timeline;this._backgroundLayer=band.createLayerDiv(0);this._backgroundLayer.setAttribute("name","ether-background");this._backgroundLayer.style.background=this._theme.ether.backgroundColors[band.getIndex()];this._markerLayer=null;this._lineLayer=null;var align=("align"in this._params&&this._params.align!=undefined)?this._params.align:this._theme.ether.interval.marker[timeline.isHorizontal()?"hAlign":"vAlign"];var showLine=("showLine"in this._params)?this._params.showLine:this._theme.ether.interval.line.show;this._intervalMarkerLayout=new Timeline.EtherIntervalMarkerLayout(this._timeline,this._band,this._theme,align,showLine);this._highlight=new Timeline.EtherHighlight(this._timeline,this._band,this._theme,this._backgroundLayer);}
-Timeline.GregorianEtherPainter.prototype.setHighlight=function(startDate,endDate){this._highlight.position(startDate,endDate);}
-Timeline.GregorianEtherPainter.prototype.paint=function(){if(this._markerLayer){this._band.removeLayerDiv(this._markerLayer);}
-this._markerLayer=this._band.createLayerDiv(100);this._markerLayer.setAttribute("name","ether-markers");this._markerLayer.style.display="none";if(this._lineLayer){this._band.removeLayerDiv(this._lineLayer);}
-this._lineLayer=this._band.createLayerDiv(1);this._lineLayer.setAttribute("name","ether-lines");this._lineLayer.style.display="none";var minDate=this._band.getMinDate();var maxDate=this._band.getMaxDate();var timeZone=this._band.getTimeZone();var labeller=this._band.getLabeller();Timeline.DateTime.roundDownToInterval(minDate,this._unit,timeZone,1,this._theme.firstDayOfWeek);var p=this;var incrementDate=function(date){for(var i=0;izoneStart;j++){var zone2=this._zones[j];if(zoneStartzone2.startTime){this._zones.splice(j,0,{startTime:zone2.startTime,endTime:zoneStart,unit:zone2.unit,multiple:zone2.multiple});j++;zone2.startTime=zoneStart;}
-if(zoneEnd=0){if(maxDate.getTime()>this._zones[zEnd].startTime){break;}
-zEnd--;}
-for(var z=zStart;z<=zEnd;z++){var zone=this._zones[z];var minDate2=new Date(Math.max(minDate.getTime(),zone.startTime));var maxDate2=new Date(Math.min(maxDate.getTime(),zone.endTime));Timeline.DateTime.roundDownToInterval(minDate2,zone.unit,timeZone,zone.multiple,this._theme.firstDayOfWeek);Timeline.DateTime.roundUpToInterval(maxDate2,zone.unit,timeZone,zone.multiple,this._theme.firstDayOfWeek);while(minDate2.getTime()0;j++){var zone2=this._zones[j];if(this._unit.compare(zoneStart,zone2.endTime)<0){if(this._unit.compare(zoneStart,zone2.startTime)>0){this._zones.splice(j,0,{startTime:zone2.startTime,endTime:zoneStart,magnify:zone2.magnify});j++;zone2.startTime=zoneStart;}
-if(this._unit.compare(zoneEnd,zone2.endTime)<0){this._zones.splice(j,0,{startTime:zoneStart,endTime:zoneEnd,magnify:zone.magnify*zone2.magnify});j++;zone2.startTime=zoneEnd;zoneStart=zoneEnd;}else{zone2.magnify*=zone.magnify;zoneStart=zone2.endTime;}}}}
-if("startsOn"in this._params){this._start=this._unit.parseFromObject(this._params.startsOn);}else if("endsOn"in this._params){this._start=this._unit.parseFromObject(this._params.endsOn);this.shiftPixels(-this._timeline.getPixelLength());}else if("centersOn"in this._params){this._start=this._unit.parseFromObject(this._params.centersOn);this.shiftPixels(-this._timeline.getPixelLength()/2);}else{this._start=this._unit.makeDefaultValue();this.shiftPixels(-this._timeline.getPixelLength()/2);}};Timeline.HotZoneEther.prototype.setDate=function(date){this._start=this._unit.cloneValue(date);};Timeline.HotZoneEther.prototype.shiftPixels=function(pixels){this._start=this.pixelOffsetToDate(pixels);};Timeline.HotZoneEther.prototype.dateToPixelOffset=function(date){return this._dateDiffToPixelOffset(this._start,date);};Timeline.HotZoneEther.prototype.pixelOffsetToDate=function(pixels){return this._pixelOffsetToDate(pixels,this._start);};Timeline.HotZoneEther.prototype._dateDiffToPixelOffset=function(fromDate,toDate){var scale=this._getScale();var fromTime=fromDate;var toTime=toDate;var pixels=0;if(this._unit.compare(fromTime,toTime)<0){var z=0;while(z=0){if(this._unit.compare(fromTime,this._zones[z].startTime)>0){break;}
-z--;}
-while(this._unit.compare(fromTime,toTime)>0){var zone=this._zones[z];var toTime2=this._unit.later(toTime,zone.startTime);pixels+=(this._unit.compare(toTime2,fromTime)/(scale/zone.magnify));fromTime=toTime2;z--;}}
-return pixels;};Timeline.HotZoneEther.prototype._pixelOffsetToDate=function(pixels,fromDate){var scale=this._getScale();var time=fromDate;if(pixels>0){var z=0;while(z0){var zone=this._zones[z];var scale2=scale/zone.magnify;if(zone.endTime==Number.POSITIVE_INFINITY){time=this._unit.change(time,pixels*scale2);pixels=0;}else{var pixels2=this._unit.compare(zone.endTime,time)/scale2;if(pixels2>pixels){time=this._unit.change(time,pixels*scale2);pixels=0;}else{time=zone.endTime;pixels-=pixels2;}}
-z++;}}else{var z=this._zones.length-1;while(z>=0){if(this._unit.compare(time,this._zones[z].startTime)>0){break;}
-z--;}
-pixels=-pixels;while(pixels>0){var zone=this._zones[z];var scale2=scale/zone.magnify;if(zone.startTime==Number.NEGATIVE_INFINITY){time=this._unit.change(time,-pixels*scale2);pixels=0;}else{var pixels2=this._unit.compare(time,zone.startTime)/scale2;if(pixels2>pixels){time=this._unit.change(time,-pixels*scale2);pixels=0;}else{time=zone.startTime;pixels-=pixels2;}}
-z--;}}
-return time;};Timeline.HotZoneEther.prototype._getScale=function(){return this._interval/this._pixelsPerInterval;};
-
-/* labellers.js */
-
-Timeline.GregorianDateLabeller=function(locale,timeZone){this._locale=locale;this._timeZone=timeZone;};Timeline.GregorianDateLabeller.dayNames=[];Timeline.GregorianDateLabeller.labelIntervalFunctions=[];
-
-
-/*
- Modified by Ben for Zotero
-*/
-
-Timeline.GregorianDateLabeller.monthNames = Zotero.Date.getMonths().short;
-Timeline.GregorianDateLabeller.getMonthName=function(month,locale) {
- return Timeline.GregorianDateLabeller.monthNames[month];
-};
-
-
-
-Timeline.GregorianDateLabeller.prototype.labelInterval=function(date,intervalUnit){var f=Timeline.GregorianDateLabeller.labelIntervalFunctions[this._locale];if(f==null){f=Timeline.GregorianDateLabeller.prototype.defaultLabelInterval;}
-return f.call(this,date,intervalUnit);};Timeline.GregorianDateLabeller.prototype.labelPrecise=function(date){return Timeline.DateTime.removeTimeZoneOffset(date,this._timeZone).toUTCString();};Timeline.GregorianDateLabeller.prototype.defaultLabelInterval=function(date,intervalUnit){var text;var emphasized=false;date=Timeline.DateTime.removeTimeZoneOffset(date,this._timeZone);switch(intervalUnit){case Timeline.DateTime.MILLISECOND:text=date.getUTCMilliseconds();break;case Timeline.DateTime.SECOND:text=date.getUTCSeconds();break;case Timeline.DateTime.MINUTE:var m=date.getUTCMinutes();if(m==0){text=date.getUTCHours()+":00";emphasized=true;}else{text=m;}
-break;case Timeline.DateTime.HOUR:text=date.getUTCHours()+"hr";break;case Timeline.DateTime.DAY:text=Timeline.GregorianDateLabeller.getMonthName(date.getUTCMonth(),this._locale)+" "+date.getUTCDate();break;case Timeline.DateTime.WEEK:text=Timeline.GregorianDateLabeller.getMonthName(date.getUTCMonth(),this._locale)+" "+date.getUTCDate();break;case Timeline.DateTime.MONTH:var m=date.getUTCMonth();if(m!=0){text=Timeline.GregorianDateLabeller.getMonthName(m,this._locale);break;}
-case Timeline.DateTime.YEAR:case Timeline.DateTime.DECADE:case Timeline.DateTime.CENTURY:case Timeline.DateTime.MILLENNIUM:var y=date.getUTCFullYear();if(y>0){text=date.getUTCFullYear();}else{text=(1-y)+"BC";}
-emphasized=(intervalUnit==Timeline.DateTime.MONTH)||(intervalUnit==Timeline.DateTime.DECADE&&y%100==0)||(intervalUnit==Timeline.DateTime.CENTURY&&y%1000==0);break;default:text=date.toUTCString();}
-return{text:text,emphasized:emphasized};}
-
-/* layouts.js */
-
-Timeline.StaticTrackBasedLayout=function(params){this._eventSource=params.eventSource;this._ether=params.ether;this._theme=params.theme;this._showText=("showText"in params)?params.showText:true;this._laidout=false;var layout=this;if(this._eventSource!=null){this._eventSource.addListener({onAddMany:function(){layout._laidout=false;}});}};Timeline.StaticTrackBasedLayout.prototype.initialize=function(timeline){this._timeline=timeline;};Timeline.StaticTrackBasedLayout.prototype.getTrack=function(evt){if(!this._laidout){this._tracks=[];this._layout();this._laidout=true;}
-return this._tracks[evt.getID()];};Timeline.StaticTrackBasedLayout.prototype.getTrackCount=function(){if(!this._laidout){this._tracks=[];this._layout();this._laidout=true;}
-return this._trackCount;};Timeline.StaticTrackBasedLayout.prototype._layout=function(){if(this._eventSource==null){return;}
-var streams=[Number.NEGATIVE_INFINITY];var layout=this;var showText=this._showText;var theme=this._theme;var eventTheme=theme.event;var layoutInstant=function(evt,startPixel,endPixel,streamOffset){var finalPixel=startPixel-1;if(evt.isImprecise()){finalPixel=endPixel;}
-if(showText){finalPixel=Math.max(finalPixel,startPixel+eventTheme.label.width);}
-return finalPixel;};var layoutDuration=function(evt,startPixel,endPixel,streamOffset){if(evt.isImprecise()){var startDate=evt.getStart();var endDate=evt.getEnd();var startPixel2=Math.round(layout._ether.dateToPixelOffset(startDate));var endPixel2=Math.round(layout._ether.dateToPixelOffset(endDate));}else{var startPixel2=startPixel;var endPixel2=endPixel;}
-var finalPixel=endPixel2;var length=Math.max(endPixel2-startPixel2,1);if(showText){if(length=streams.length){streams.push(Number.NEGATIVE_INFINITY);}
-var streamOffset=(eventTheme.track.offset+
-streamIndex*(eventTheme.track.height+eventTheme.track.gap))+"em";layout._tracks[evt.getID()]=streamIndex;if(evt.isInstant()){streams[streamIndex]=layoutInstant(evt,startPixel,endPixel,streamOffset);}else{streams[streamIndex]=layoutDuration(evt,startPixel,endPixel,streamOffset);}};var iterator=this._eventSource.getAllEventIterator();while(iterator.hasNext()){var evt=iterator.next();layoutEvent(evt);}
-this._trackCount=streams.length;};
-
-/* painters.js */
-
-Timeline.DurationEventPainter=function(params){this._params=params;this._theme=params.theme;this._layout=params.layout;this._showText=params.showText;this._showLineForNoText=("showLineForNoText"in params)?params.showLineForNoText:params.theme.event.instant.showLineForNoText;this._filterMatcher=null;this._highlightMatcher=null;};Timeline.DurationEventPainter.prototype.initialize=function(band,timeline){this._band=band;this._timeline=timeline;this._layout.initialize(band,timeline);this._eventLayer=null;this._highlightLayer=null;};Timeline.DurationEventPainter.prototype.getLayout=function(){return this._layout;};Timeline.DurationEventPainter.prototype.setLayout=function(layout){this._layout=layout;};Timeline.DurationEventPainter.prototype.getFilterMatcher=function(){return this._filterMatcher;};Timeline.DurationEventPainter.prototype.setFilterMatcher=function(filterMatcher){this._filterMatcher=filterMatcher;};Timeline.DurationEventPainter.prototype.getHighlightMatcher=function(){return this._highlightMatcher;};Timeline.DurationEventPainter.prototype.setHighlightMatcher=function(highlightMatcher){this._highlightMatcher=highlightMatcher;};Timeline.DurationEventPainter.prototype.paint=function(){var eventSource=this._band.getEventSource();if(eventSource==null){return;}
-if(this._highlightLayer!=null){this._band.removeLayerDiv(this._highlightLayer);}
-this._highlightLayer=this._band.createLayerDiv(105);this._highlightLayer.setAttribute("name","event-highlights");this._highlightLayer.style.display="none";if(this._eventLayer!=null){this._band.removeLayerDiv(this._eventLayer);}
-this._eventLayer=this._band.createLayerDiv(110);this._eventLayer.setAttribute("name","events");this._eventLayer.style.display="none";var minDate=this._band.getMinDate();var maxDate=this._band.getMaxDate();var doc=this._timeline.getDocument();var p=this;var eventLayer=this._eventLayer;var highlightLayer=this._highlightLayer;var showText=this._showText;var theme=this._params.theme;var eventTheme=theme.event;var trackOffset=eventTheme.track.offset;var trackHeight=("trackHeight"in this._params)?this._params.trackHeight:eventTheme.track.height;var trackGap=("trackGap"in this._params)?this._params.trackGap:eventTheme.track.gap;var appendIcon=function(evt,div){var icon=evt.getIcon();var img=Timeline.Graphics.createTranslucentImage(doc,icon!=null?icon:eventTheme.instant.icon);div.appendChild(img);div.style.cursor="pointer";Timeline.DOM.registerEvent(div,"mousedown",function(elmt,domEvt,target){p._onClickInstantEvent(img,domEvt,evt);});};var createHighlightDiv=function(highlightIndex,startPixel,length,highlightOffset,highlightWidth){if(highlightIndex>=0){var color=eventTheme.highlightColors[Math.min(highlightIndex,eventTheme.highlightColors.length-1)];var div=doc.createElement("div");div.style.position="absolute";div.style.overflow="hidden";div.style.left=(startPixel-3)+"px";div.style.width=(length+6)+"px";div.style.top=highlightOffset+"em";div.style.height=highlightWidth+"em";div.style.background=color;highlightLayer.appendChild(div);}};var createInstantDiv=function(evt,startPixel,endPixel,streamOffset,highlightIndex,highlightOffset,highlightWidth){if(evt.isImprecise()){var length=Math.max(endPixel-startPixel,1);var divImprecise=doc.createElement("div");divImprecise.style.position="absolute";divImprecise.style.overflow="hidden";divImprecise.style.top=streamOffset;divImprecise.style.height=trackHeight+"em";divImprecise.style.left=startPixel+"px";divImprecise.style.width=length+"px";divImprecise.style.background=eventTheme.instant.impreciseColor;if(eventTheme.instant.impreciseOpacity<100){Timeline.Graphics.setOpacity(divImprecise,eventTheme.instant.impreciseOpacity);}
-eventLayer.appendChild(divImprecise);}
-var div=doc.createElement("div");div.style.position="absolute";div.style.overflow="hidden";eventLayer.appendChild(div);var foreground=evt.getTextColor();var background=evt.getColor();var realign=-8;var length=16;if(showText){div.style.width=eventTheme.label.width+"px";div.style.color=foreground!=null?foreground:eventTheme.label.outsideColor;appendIcon(evt,div);div.appendChild(doc.createTextNode(evt.getText()));}else{if(p._showLineForNoText){div.style.width="1px";div.style.borderLeft="1px solid "+(background!=null?background:eventTheme.instant.lineColor);realign=0;length=1;}else{appendIcon(evt,div);}}
-div.style.top=streamOffset;div.style.height=trackHeight+"em";div.style.left=(startPixel+realign)+"px";createHighlightDiv(highlightIndex,(startPixel+realign),length,highlightOffset,highlightWidth);};var createDurationDiv=function(evt,startPixel,endPixel,streamOffset,highlightIndex,highlightOffset,highlightWidth){var attachClickEvent=function(elmt){elmt.style.cursor="pointer";Timeline.DOM.registerEvent(elmt,"mousedown",function(elmt,domEvt,target){p._onClickDurationEvent(domEvt,evt,target);});};var length=Math.max(endPixel-startPixel,1);if(evt.isImprecise()){var div=doc.createElement("div");div.style.position="absolute";div.style.overflow="hidden";div.style.top=streamOffset;div.style.height=trackHeight+"em";div.style.left=startPixel+"px";div.style.width=length+"px";div.style.background=eventTheme.duration.impreciseColor;if(eventTheme.duration.impreciseOpacity<100){Timeline.Graphics.setOpacity(div,eventTheme.duration.impreciseOpacity);}
-eventLayer.appendChild(div);var startDate=evt.getLatestStart();var endDate=evt.getEarliestEnd();var startPixel2=Math.round(p._band.dateToPixelOffset(startDate));var endPixel2=Math.round(p._band.dateToPixelOffset(endDate));}else{var startPixel2=startPixel;var endPixel2=endPixel;}
-var foreground=evt.getTextColor();var outside=true;if(startPixel2<=endPixel2){length=Math.max(endPixel2-startPixel2,1);outside=!(length>eventTheme.label.width);div=doc.createElement("div");div.style.position="absolute";div.style.overflow="hidden";div.style.top=streamOffset;div.style.height=trackHeight+"em";div.style.left=startPixel2+"px";div.style.width=length+"px";var background=evt.getColor();div.style.background=background!=null?background:eventTheme.duration.color;if(eventTheme.duration.opacity<100){Timeline.Graphics.setOpacity(div,eventTheme.duration.opacity);}
-eventLayer.appendChild(div);}else{var temp=startPixel2;startPixel2=endPixel2;endPixel2=temp;}
-if(div==null){console.log(evt);}
-attachClickEvent(div);if(showText){var divLabel=doc.createElement("div");divLabel.style.position="absolute";divLabel.style.top=streamOffset;divLabel.style.height=trackHeight+"em";divLabel.style.left=((length>eventTheme.label.width)?startPixel2:endPixel2)+"px";divLabel.style.width=eventTheme.label.width+"px";divLabel.style.color=foreground!=null?foreground:(outside?eventTheme.label.outsideColor:eventTheme.label.insideColor);divLabel.style.overflow="hidden";divLabel.appendChild(doc.createTextNode(evt.getText()));eventLayer.appendChild(divLabel);attachClickEvent(divLabel);}
-createHighlightDiv(highlightIndex,startPixel,endPixel-startPixel,highlightOffset,highlightWidth);};var createEventDiv=function(evt,highlightIndex){var startDate=evt.getStart();var endDate=evt.getEnd();var startPixel=Math.round(p._band.dateToPixelOffset(startDate));var endPixel=Math.round(p._band.dateToPixelOffset(endDate));var streamOffset=(trackOffset+
-p._layout.getTrack(evt)*(trackHeight+trackGap));if(evt.isInstant()){createInstantDiv(evt,startPixel,endPixel,streamOffset+"em",highlightIndex,streamOffset-trackGap,trackHeight+2*trackGap);}else{createDurationDiv(evt,startPixel,endPixel,streamOffset+"em",highlightIndex,streamOffset-trackGap,trackHeight+2*trackGap);}};var filterMatcher=(this._filterMatcher!=null)?this._filterMatcher:function(evt){return true;};var highlightMatcher=(this._highlightMatcher!=null)?this._highlightMatcher:function(evt){return-1;};var iterator=eventSource.getEventIterator(minDate,maxDate);while(iterator.hasNext()){var evt=iterator.next();if(filterMatcher(evt)){createEventDiv(evt,highlightMatcher(evt));}}
-this._highlightLayer.style.display="block";this._eventLayer.style.display="block";};Timeline.DurationEventPainter.prototype.softPaint=function(){};Timeline.DurationEventPainter.prototype._onClickInstantEvent=function(icon,domEvt,evt){domEvt.cancelBubble=true;var c=Timeline.DOM.getPageCoordinates(icon);this._showBubble(c.left+Math.ceil(icon.offsetWidth/2),c.top+Math.ceil(icon.offsetHeight/2),evt);};Timeline.DurationEventPainter.prototype._onClickDurationEvent=function(domEvt,evt,target){domEvt.cancelBubble=true;if("pageX"in domEvt){var x=domEvt.pageX;var y=domEvt.pageY;}else{var c=Timeline.DOM.getPageCoordinates(target);var x=domEvt.offsetX+c.left;var y=domEvt.offsetY+c.top;}
-this._showBubble(x,y,evt);};Timeline.DurationEventPainter.prototype._showBubble=function(x,y,evt){var div=this._band.openBubbleForPoint(x,y,this._theme.event.bubble.width,this._theme.event.bubble.height);evt.fillInfoBubble(div,this._theme,this._band.getLabeller());};
-
-/* sources.js */
-
-Timeline.DefaultEventSource=function(eventIndex){this._events=(eventIndex instanceof Object)?eventIndex:new Timeline.EventIndex();this._listeners=[];};Timeline.DefaultEventSource.prototype.addListener=function(listener){this._listeners.push(listener);};Timeline.DefaultEventSource.prototype.removeListener=function(listener){for(var i=0;i0){return url;}else if(url.substr(0,1)=="/"){return base.substr(0,base.indexOf("/",base.indexOf("://")+3))+url;}else{return base+url;}};Timeline.DefaultEventSource.Event=function(start,end,latestStart,earliestEnd,instant,text,description,image,link,icon,color,textColor){this._id="e"+Math.floor(Math.random()*1000000);this._instant=instant||(end==null);this._start=start;this._end=(end!=null)?end:start;this._latestStart=(latestStart!=null)?latestStart:(instant?this._end:this._start);this._earliestEnd=(earliestEnd!=null)?earliestEnd:(instant?this._start:this._end);this._text=Timeline.HTML.deEntify(text);this._description=Timeline.HTML.deEntify(description);this._image=(image!=null&&image!="")?image:null;this._link=(link!=null&&link!="")?link:null;this._icon=(icon!=null&&icon!="")?icon:null;this._color=(color!=null&&color!="")?color:null;this._textColor=(textColor!=null&&textColor!="")?textColor:null;this._wikiURL=null;this._wikiSection=null;};Timeline.DefaultEventSource.Event.prototype={getID:function(){return this._id;},isInstant:function(){return this._instant;},isImprecise:function(){return this._start!=this._latestStart||this._end!=this._earliestEnd;},getStart:function(){return this._start;},getEnd:function(){return this._end;},getLatestStart:function(){return this._latestStart;},getEarliestEnd:function(){return this._earliestEnd;},getText:function(){return this._text;},getDescription:function(){return this._description;},getImage:function(){return this._image;},getLink:function(){return this._link;},getIcon:function(){return this._icon;},getColor:function(){return this._color;},getTextColor:function(){return this._textColor;},getProperty:function(name){return null;},getWikiURL:function(){return this._wikiURL;},getWikiSection:function(){return this._wikiSection;},setWikiInfo:function(wikiURL,wikiSection){this._wikiURL=wikiURL;this._wikiSection=wikiSection;},fillDescription:function(elmt){elmt.innerHTML=this._description;},fillWikiInfo:function(elmt){if(this._wikiURL!=null&&this._wikiSection!=null){var wikiID=this.getProperty("wikiID");if(wikiID==null||wikiID.length==0){wikiID=this.getText();}
-wikiID=wikiID.replace(/\s/g,"_");var url=this._wikiURL+this._wikiSection.replace(/\s/g,"_")+"/"+wikiID;var a=document.createElement("a");a.href=url;a.target="new";a.innerHTML=Timeline.strings[Timeline.Platform.clientLocale].wikiLinkLabel;elmt.appendChild(document.createTextNode("["));elmt.appendChild(a);elmt.appendChild(document.createTextNode("]"));}else{elmt.style.display="none";}},fillTime:function(elmt,labeller){if(this._instant){if(this.isImprecise()){elmt.appendChild(elmt.ownerDocument.createTextNode(labeller.labelPrecise(this._start)));elmt.appendChild(elmt.ownerDocument.createElement("br"));elmt.appendChild(elmt.ownerDocument.createTextNode(labeller.labelPrecise(this._end)));}else{elmt.appendChild(elmt.ownerDocument.createTextNode(labeller.labelPrecise(this._start)));}}else{if(this.isImprecise()){elmt.appendChild(elmt.ownerDocument.createTextNode(labeller.labelPrecise(this._start)+" ~ "+labeller.labelPrecise(this._latestStart)));elmt.appendChild(elmt.ownerDocument.createElement("br"));elmt.appendChild(elmt.ownerDocument.createTextNode(labeller.labelPrecise(this._earliestEnd)+" ~ "+labeller.labelPrecise(this._end)));}else{elmt.appendChild(elmt.ownerDocument.createTextNode(labeller.labelPrecise(this._start)));elmt.appendChild(elmt.ownerDocument.createElement("br"));elmt.appendChild(elmt.ownerDocument.createTextNode(labeller.labelPrecise(this._end)));}}},fillInfoBubble:function(elmt,theme,labeller){var doc=elmt.ownerDocument;var title=this.getText();var link=this.getLink();var image=this.getImage();if(image!=null){var img=doc.createElement("img");img.src=image;theme.event.bubble.imageStyler(img);elmt.appendChild(img);}
-var divTitle=doc.createElement("div");var textTitle=doc.createTextNode(title);if(link!=null){var a=doc.createElement("a");a.href=link;a.appendChild(textTitle);divTitle.appendChild(a);}else{divTitle.appendChild(textTitle);}
-theme.event.bubble.titleStyler(divTitle);elmt.appendChild(divTitle);var divBody=doc.createElement("div");this.fillDescription(divBody);theme.event.bubble.bodyStyler(divBody);elmt.appendChild(divBody);var divTime=doc.createElement("div");this.fillTime(divTime,labeller);theme.event.bubble.timeStyler(divTime);elmt.appendChild(divTime);var divWiki=doc.createElement("div");this.fillWikiInfo(divWiki);theme.event.bubble.wikiStyler(divWiki);elmt.appendChild(divWiki);}};
-
-/* themes.js */
-
-Timeline.ClassicTheme=new Object();Timeline.ClassicTheme.implementations=[];Timeline.ClassicTheme.create=function(locale){if(locale==null){locale=Timeline.Platform.getDefaultLocale();}
-var f=Timeline.ClassicTheme.implementations[locale];if(f==null){f=Timeline.ClassicTheme._Impl;}
-return new f();};Timeline.ClassicTheme._Impl=function(){this.firstDayOfWeek=0;this.ether={backgroundColors:["#EEE","#DDD","#CCC","#AAA"],highlightColor:"white",highlightOpacity:50,interval:{line:{show:true,color:"#aaa",opacity:25},weekend:{color:"#FFFFE0",opacity:30},marker:{hAlign:"Bottom",hBottomStyler:function(elmt){elmt.className="timeline-ether-marker-bottom";},hBottomEmphasizedStyler:function(elmt){elmt.className="timeline-ether-marker-bottom-emphasized";},hTopStyler:function(elmt){elmt.className="timeline-ether-marker-top";},hTopEmphasizedStyler:function(elmt){elmt.className="timeline-ether-marker-top-emphasized";},vAlign:"Right",vRightStyler:function(elmt){elmt.className="timeline-ether-marker-right";},vRightEmphasizedStyler:function(elmt){elmt.className="timeline-ether-marker-right-emphasized";},vLeftStyler:function(elmt){elmt.className="timeline-ether-marker-left";},vLeftEmphasizedStyler:function(elmt){elmt.className="timeline-ether-marker-left-emphasized";}}}};this.event={track:{offset:0.5,height:1.5,gap:0.5},instant:{icon:Timeline.urlPrefix+"images/dull-blue-circle.png",lineColor:"#58A0DC",impreciseColor:"#58A0DC",impreciseOpacity:20,showLineForNoText:true},duration:{color:"#58A0DC",opacity:100,impreciseColor:"#58A0DC",impreciseOpacity:20},label:{insideColor:"white",outsideColor:"black",width:200},highlightColors:["#FFFF00","#FFC000","#FF0000","#0000FF"],bubble:{width:250,height:125,titleStyler:function(elmt){elmt.className="timeline-event-bubble-title";},bodyStyler:function(elmt){elmt.className="timeline-event-bubble-body";},imageStyler:function(elmt){elmt.className="timeline-event-bubble-image";},wikiStyler:function(elmt){elmt.className="timeline-event-bubble-wiki";},timeStyler:function(elmt){elmt.className="timeline-event-bubble-time";}}};};
-
-/* units.js */
-
-Timeline.NativeDateUnit=new Object();Timeline.NativeDateUnit.createLabeller=function(locale,timeZone){return new Timeline.GregorianDateLabeller(locale,timeZone);};Timeline.NativeDateUnit.makeDefaultValue=function(){return new Date();};Timeline.NativeDateUnit.cloneValue=function(v){return new Date(v.getTime());};Timeline.NativeDateUnit.getParser=function(format){if(typeof format=="string"){format=format.toLowerCase();}
-return(format=="iso8601"||format=="iso 8601")?Timeline.DateTime.parseIso8601DateTime:Timeline.DateTime.parseGregorianDateTime;};Timeline.NativeDateUnit.parseFromObject=function(o){return Timeline.DateTime.parseGregorianDateTime(o);};Timeline.NativeDateUnit.toNumber=function(v){return v.getTime();};Timeline.NativeDateUnit.fromNumber=function(n){return new Date(n);};Timeline.NativeDateUnit.compare=function(v1,v2){var n1,n2;if(typeof v1=="object"){n1=v1.getTime();}else{n1=Number(v1);}
-if(typeof v2=="object"){n2=v2.getTime();}else{n2=Number(v2);}
-return n1-n2;};Timeline.NativeDateUnit.earlier=function(v1,v2){return Timeline.NativeDateUnit.compare(v1,v2)<0?v1:v2;};Timeline.NativeDateUnit.later=function(v1,v2){return Timeline.NativeDateUnit.compare(v1,v2)>0?v1:v2;};Timeline.NativeDateUnit.change=function(v,n){return new Date(v.getTime()+n);};
\ No newline at end of file
diff --git a/chrome/skin/default/zotero/timeline/timeline-api.js b/chrome/skin/default/zotero/timeline/timeline-api.js
deleted file mode 100644
index 91ccf71c4d..0000000000
--- a/chrome/skin/default/zotero/timeline/timeline-api.js
+++ /dev/null
@@ -1,267 +0,0 @@
-/* ==================================================
- Timeline API
-
- http://simile.mit.edu/timeline/api/timeline-api.js
-
- This file will load all the Javascript files
- necessary to make the standard timeline work.
- It also detects the default locale.
- ==================================================
-
- © Copyright The SIMILE Project 2003-2005.
- http://simile.mit.edu/
-
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
- 3. The name of the author may not be used to endorse or promote products
- derived from this software without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
- IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-var Timeline = new Object();
-Timeline.Platform = new Object();
-
- /*
- HACK: We need these 2 things here because we cannot simply append
- a ");
- return;
- } catch (e) {
- // fall through
- }
- }
-
- var script = document.createElement("script");
- script.type = "text/javascript";
- script.language = "JavaScript";
- script.src = url;
- getHead().appendChild(script);
- };
- var includeCssFile = function(url) {
- if (document.body == null) {
- try {
- document.write("");
- return;
- } catch (e) {
- // fall through
- }
- }
-
- var link = document.createElement("link");
- link.setAttribute("rel", "stylesheet");
- link.setAttribute("type", "text/css");
- link.setAttribute("href", url);
- getHead().appendChild(link);
- }
-
- includeJavascriptFiles = function(urlPrefix, filenames) {
- for (var i = 0; i < filenames.length; i++) {
- includeJavascriptFile(urlPrefix + filenames[i]);
- }
- };
- includeCssFiles = function(urlPrefix, filenames) {
- for (var i = 0; i < filenames.length; i++) {
- includeCssFile(urlPrefix + filenames[i]);
- }
- };
- }
-
- /*
- * Include non-localized files
- */
- if (bundle) {
- includeJavascriptFiles(Timeline.urlPrefix, [ "bundle.js" ]);
- includeCssFiles(Timeline.urlPrefix, [ "bundle.css" ]);
- } else {
- includeJavascriptFiles(Timeline.urlPrefix + "scripts/", javascriptFiles);
- includeCssFiles(Timeline.urlPrefix + "styles/", cssFiles);
- }
-
- /*
- * Include localized files
- */
- var loadLocale = [];
- loadLocale[defaultServerLocale] = true;
-
- var tryExactLocale = function(locale) {
- for (var l = 0; l < supportedLocales.length; l++) {
- if (locale == supportedLocales[l]) {
- loadLocale[locale] = true;
- return true;
- }
- }
- return false;
- }
- var tryLocale = function(locale) {
- if (tryExactLocale(locale)) {
- return locale;
- }
-
- var dash = locale.indexOf("-");
- if (dash > 0 && tryExactLocale(locale.substr(0, dash))) {
- return locale.substr(0, dash);
- }
-
- return null;
- }
-
- for (var l = 0; l < desiredLocales.length; l++) {
- tryLocale(desiredLocales[l]);
- }
-
- var defaultClientLocale = defaultServerLocale;
- var defaultClientLocales = ("language" in navigator ? navigator.language : navigator.browserLanguage).split(";");
- for (var l = 0; l < defaultClientLocales.length; l++) {
- var locale = tryLocale(defaultClientLocales[l]);
- if (locale != null) {
- defaultClientLocale = locale;
- break;
- }
- }
-
- /*
- Modified by Ben for Zotero
- */
-
-
-
- Timeline.Platform.serverLocale = defaultServerLocale;
- Timeline.Platform.clientLocale = defaultClientLocale;
- } catch (e) {
- alert(e);
- }
-})();
\ No newline at end of file
diff --git a/chrome/skin/default/zotero/timeline/timeline.html b/chrome/skin/default/zotero/timeline/timeline.html
deleted file mode 100644
index 4c641c4bfa..0000000000
--- a/chrome/skin/default/zotero/timeline/timeline.html
+++ /dev/null
@@ -1,94 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/chrome/skin/default/zotero/timeline/timelineControls.js b/chrome/skin/default/zotero/timeline/timelineControls.js
deleted file mode 100644
index 0a95241c2e..0000000000
--- a/chrome/skin/default/zotero/timeline/timelineControls.js
+++ /dev/null
@@ -1,480 +0,0 @@
-var localeBundle = initLocaleBundle();
-var jumpToYearTimer;
-var lastJumpToYearValue;
-
-/*
- * Set up the localization string bundle from timeline.properties
- */
-function initLocaleBundle() {
- var src = 'chrome://zotero/locale/timeline.properties';
- var stringBundleService = Components.classes["@mozilla.org/intl/stringbundle;1"]
- .getService(Components.interfaces.nsIStringBundleService);
- return stringBundleService.createBundle(src);
-}
-
-/*
- * Get a localized string from the string bundle
- *
- * This is copied from zotero.js
- */
-function getString(name, params){
- try {
- if (params != undefined){
- if (typeof params != 'object'){
- params = [params];
- }
- var l10n = localeBundle.formatStringFromName(name, params, params.length);
- }
- else {
- var l10n = localeBundle.GetStringFromName(name);
- }
- }
- catch (e){
- throw ('Localized string not available for ' + name);
- }
- return l10n;
-}
-
-
-function getTimeline() {
- var tt = getHeight();
- tt -= 165;
- if (tt < 100) {
- tt = 100;
- }
- return '';
-}
-
-function getHeight() {
- var temp = document.documentElement.clientHeight;
- if(temp && temp > 0) {
- return temp;
- }
- else {
- temp=document.body.clientHeight;
- if(temp && temp > 0) {
- return temp;
- }
- }
- return 0;
-}
-
-function wasChanged(current) {
- if (current != lastJumpToYearValue) {
- lastJumpToYearValue = current;
- var theYear = document.getElementById("jumpYear").value;
- if(theYear.length == 0) {
- centerTimeline(new Date());
- }
- else {
- checkDate(theYear);
- }
- }
-}
-
-function doKeyPress(e)
-{
- clearTimeout(jumpToYearTimer);
- lastJumpToYearValue = document.getElementById('jumpYear').value;
- if((e.which == '8' || e.which == '0') && lastJumpToYearValue.length == 0) {
- centerTimeline(new Date());
- }
- else if(e.which == '13'){
- checkDate(lastJumpToYearValue);
- }
- else {
- jumpToYearTimer = setTimeout(function () {
- wasChanged(document.getElementById("jumpYear").value);
- }, 1000)
- }
-}
-
-function getMonthNum(month) {
- var months = new Array('jan','feb','mar','apr','may','jun','jul','aug','sep','oct','nov','dec');
- var num = months.indexOf(month.toLowerCase());
- if(num<0){
- num = 0;
- }
- return num;
-}
-
-function createDate(date){
- date = date.split('.');
- var theDate = new Date();
- theDate.setMonth(getMonthNum(date[0]));
- theDate.setDate(date[1]);
- theDate.setFullYear(date[2]);
- return theDate;
-}
-
-function getTimelineDate(timeline){
- var timelineDate = timeline.getBand(0).getCenterVisibleDate().toString();
- var dateParts = timelineDate.split(' ');
- timelineDate = dateParts[1] + '.' + dateParts[2] + '.' + dateParts[3];
- return timelineDate;
-}
-
-function checkDate(date) {
- var arr = new Array();
- var i = 0;
- date = date.replace(/[\s|.]/g,'');
-
- //check to see if the year is B.C.
- var bc = false;
- if (date.substr(date.length - 2).toLowerCase() == 'bc') {
- bc = true;
- date = date.substr(0, date.length - 2);
- }
-
- if(/\D/.test(date)) {
- return;
- }
-
- if (bc) {
- if(date < 10000) {
- centerTimeline(date + ' BC');
- }
- }
- else {
- if(date < 275000) {
- centerTimeline(date);
- }
- }
-}
-function changeBand(queryString, band, intervals, selectedIndex) {
- var values = new Array('d', 'm', 'y', 'e', 'c', 'i');
-
- var newIntervals = '';
- for (var i = 0; i < intervals.length; i++) {
- if (i == band) {
- newIntervals += values[selectedIndex];
- }
- else {
- newIntervals += intervals[i];
- }
- }
-
- replaceQueryString(queryString + 'i=' + newIntervals);
-}
-
-function createOption(t, selected) {
- var option = document.createElement("option");
- if (selected) {
- option.selected = "true";
- }
- var text = document.createTextNode(t);
- option.setAttribute("value", t);
- option.appendChild(text);
- return option;
-}
-
-function getFull(a) {
- switch (a) {
- case 'd':
- return getString("interval.day");
- case 'm':
- return getString("interval.month");
- case 'y':
- return getString("interval.year");
- case 'e':
- return getString("interval.decade");
- case 'c':
- return getString("interval.century");
- case 'i':
- return getString("interval.millennium");
- default:
- return false;
- }
-}
-
-function createQueryString(theQueryValue, except, timeline) {
- var temp = '?';
- for(var i in theQueryValue) {
- if(except != i) {
- temp += i + '=' + theQueryValue[i] + '&';
- }
- }
- if(except != 'd') {
- temp += 'd=' + getTimelineDate(timeline) + '&';
- }
- //remove last & if no exceptions
- if(!except) {
- temp = temp.substr(0, temp.length -1)
- }
- return temp;
-}
-
-function setupOtherControls(div, timeline, queryString) {
- var table = document.createElement("table");
-
- var defaultQueryValue = new Object();
- defaultQueryValue['i'] = 'mye';
- defaultQueryValue['t'] = 'd';
-
- var theQueryValue = new Object;
-
- if (queryString) {
- var queryVars = queryString.split('&');
- for (var i in queryVars) {
- var [key, val] = queryVars[i].split('=');
- if(val) {
- switch (key) {
- case 'i':
- theQueryValue['i'] = val;
- break;
- case 't':
- theQueryValue['t'] = val;
- break;
- }
- }
- }
- }
-
- var intervals = (theQueryValue['i']) ? theQueryValue['i'] : defaultQueryValue['i'];
- if (intervals.length < 3) {
- intervals += defaultQueryValue['i'].substr(intervals.length);
- }
- var dateType = (theQueryValue['t']) ? theQueryValue['t'] : defaultQueryValue['t'];
- if(dateType != 'da' && dateType != 'dm') {
- dateType = defaultQueryValue['t'];
- }
-
- var tr = table.insertRow(0);
-
- var td = tr.insertCell(0);
- td.innerHTML = getString("general.jumpToYear");
- td = tr.insertCell(tr.cells.length);
- td.innerHTML = getString("general.firstBand");
- td = tr.insertCell(tr.cells.length);
- td.innerHTML = getString("general.secondBand");;
- td = tr.insertCell(tr.cells.length);
- td.innerHTML = getString("general.thirdBand");;
- td = tr.insertCell(tr.cells.length);
- td.innerHTML = getString("general.dateType");;
- td = tr.insertCell(tr.cells.length);
- td.innerHTML = getString("general.timelineHeight");;
-
- tr = table.insertRow(1);
- tr.style.verticalAlign = "top";
-
- td = tr.insertCell(0);
- var input = document.createElement("input");
- input.type = "text";
- input.size = "15";
- input.id = "jumpYear";
- input.onkeypress=doKeyPress;
- td.appendChild(input);
-
- var options = new Array(getString("interval.day"), getString("interval.month"), getString("interval.year"),
- getString("interval.decade"), getString("interval.century"), getString("interval.millennium"));
- var selected = '';
- var theSelects = new Array();
-
- td = tr.insertCell(tr.cells.length);
-
- var select1 = document.createElement("select");
- selected = getFull(intervals[0]);
- for (var i = 0; i < options.length; i++) {
- select1.appendChild(createOption(options[i],(options[i] == selected)));
- }
- select1.onchange = function () {
- changeBand(createQueryString(theQueryValue, 'i', timeline), 0, intervals, table.rows[1].cells[1].firstChild.selectedIndex);
- };
- td.appendChild(select1);
-
- td = tr.insertCell(tr.cells.length);
-
- var select2 = document.createElement("select");
- selected = getFull(intervals[1]);
- for (var i = 0; i < options.length; i++) {
- select2.appendChild(createOption(options[i],(options[i] == selected)));
- }
- select2.onchange = function () {
- changeBand(createQueryString(theQueryValue, 'i', timeline), 1, intervals, table.rows[1].cells[2].firstChild.selectedIndex);
- };
- td.appendChild(select2);
-
- td = tr.insertCell(tr.cells.length);
-
- var select3 = document.createElement("select");
- selected = getFull(intervals[2]);
- for (var i = 0; i < options.length; i++) {
- select3.appendChild(createOption(options[i],(options[i] == selected)));
- }
- select3.onchange = function () {
- changeBand(createQueryString(theQueryValue, 'i', timeline), 2, intervals, table.rows[1].cells[3].firstChild.selectedIndex);
- };
- td.appendChild(select3);
-
-
- td = tr.insertCell(tr.cells.length);
- options = new Array(getString("dateType.published"), Zotero.getString("itemFields.dateAdded"), getString("dateType.modified"));
- var values = new Array('d', 'da', 'dm');
- var select4 = document.createElement("select");
-
- for (var i = 0; i < options.length; i++) {
- select4.appendChild(createOption(options[i],(values[i] == dateType)));
- }
- select4.onchange = function () {
- replaceQueryString(createQueryString(theQueryValue, 't', timeline) + 't=' + values[table.rows[1].cells[4].firstChild.selectedIndex]);
- };
- td.appendChild(select4);
-
- td = tr.insertCell(tr.cells.length);
- var fitToScreen = document.createElement("button");
- fitToScreen.innerHTML = getString("general.fitToScreen");
- Timeline.DOM.registerEvent(fitToScreen, "click", function () {
- replaceQueryString(createQueryString(theQueryValue, false, timeline));
- });
- td.appendChild(fitToScreen);
-
- div.appendChild(table);
-}
-
-/**
- * window.location.search no longer works in Fx60
- */
-function getQueryString() {
- return window.location.href.replace(/^[^?]+/, '');
-}
-
-/**
- * Replacing window.location.search no longer works in Fx60, so replace href instead
- */
-function replaceQueryString(queryString) {
- // Get position of beginning of beginning of pathname, after scheme (e.g., 'zotero:')
- var pos = window.location.href.indexOf(window.location.pathname);
- window.location.href = window.location.href.substr(0, pos)
- + window.location.pathname
- + queryString;
- Zotero.debug(window.location.href);
-}
-
-/*
- Everything below is from http://simile.mit.edu/timeline/examples/examples.js unless noted otherwise
-*/
-
-function centerTimeline(date) {
- tl.getBand(0).setCenterVisibleDate(Timeline.DateTime.parseGregorianDateTime(date));
-}
-
-function setupFilterHighlightControls(div, timeline, bandIndices, theme) {
- var table = document.createElement("table");
- var tr = table.insertRow(0);
-
- var td = tr.insertCell(0);
- td.innerHTML = getString("general.filter");
-
- td = tr.insertCell(1);
- td.innerHTML = getString("general.highlight");
-
- var handler = function(elmt, evt, target) {
- onKeyPress(timeline, bandIndices, table);
- };
-
- tr = table.insertRow(1);
- tr.style.verticalAlign = "top";
-
- td = tr.insertCell(0);
-
- var input = document.createElement("input");
- input.type = "text";
- input.size = "18";//Added by Ben for Zotero
- Timeline.DOM.registerEvent(input, "keypress", handler);
- td.appendChild(input);
-
- for (var i = 0; i < theme.event.highlightColors.length; i++) {
- td = tr.insertCell(i + 1);
-
- input = document.createElement("input");
- input.type = "text";
- Timeline.DOM.registerEvent(input, "keypress", handler);
- td.appendChild(input);
- input.size = "15";//Added by Ben for Zotero
- var divColor = document.createElement("div");
- divColor.style.height = "0.5em";
- divColor.style.background = theme.event.highlightColors[i];
- td.appendChild(divColor);
- }
-
- td = tr.insertCell(tr.cells.length);
- var button = document.createElement("button");
- button.innerHTML = getString("general.clearAll");
- Timeline.DOM.registerEvent(button, "click", function() {
- clearAll(timeline, bandIndices, table);
- });
- td.appendChild(button);
-
- div.appendChild(table);
-}
-
-var timerID = null;
-function onKeyPress(timeline, bandIndices, table) {
- if (timerID != null) {
- window.clearTimeout(timerID);
- }
- timerID = window.setTimeout(function() {
- performFiltering(timeline, bandIndices, table);
- }, 300);
-}
-function cleanString(s) {
- return s.replace(/^\s+/, '').replace(/\s + $/, '');
-}
-function performFiltering(timeline, bandIndices, table) {
- timerID = null;
-
- var tr = table.rows[1];
- var text = cleanString(tr.cells[0].firstChild.value);
-
- var filterMatcher = null;
- if (text.length > 0) {
- var regex = new RegExp(text, "i");
- filterMatcher = function(evt) {
- return regex.test(evt.getText()) || regex.test(evt.getDescription());
- };
- }
-
- var regexes = [];
- var hasHighlights = false;
- for (var x = 1; x < tr.cells.length - 1; x++) {
- var input = tr.cells[x].firstChild;
- var text2 = cleanString(input.value);
- if (text2.length > 0) {
- hasHighlights = true;
- regexes.push(new RegExp(text2, "i"));
- } else {
- regexes.push(null);
- }
- }
- var highlightMatcher = hasHighlights ? function(evt) {
- var text = evt.getText();
- var description = evt.getDescription();
- for (var x = 0; x < regexes.length; x++) {
- var regex = regexes[x];
- if (regex != null && (regex.test(text) || regex.test(description))) {
- return x;
- }
- }
- return -1;
- } : null;
-
- for (var i = 0; i < bandIndices.length; i++) {
- var bandIndex = bandIndices[i];
- timeline.getBand(bandIndex).getEventPainter().setFilterMatcher(filterMatcher);
- timeline.getBand(bandIndex).getEventPainter().setHighlightMatcher(highlightMatcher);
- }
- timeline.paint();
-}
-function clearAll(timeline, bandIndices, table) {
- var tr = table.rows[1];
- for (var x = 0; x < tr.cells.length - 1; x++) {
- tr.cells[x].firstChild.value = "";
- }
-
- for (var i = 0; i < bandIndices.length; i++) {
- var bandIndex = bandIndices[i];
- timeline.getBand(bandIndex).getEventPainter().setFilterMatcher(null);
- timeline.getBand(bandIndex).getEventPainter().setHighlightMatcher(null);
- }
- timeline.paint();
-}
\ No newline at end of file
diff --git a/eslint.config.mjs b/eslint.config.mjs
index d5b5e2e848..db9ad2028a 100644
--- a/eslint.config.mjs
+++ b/eslint.config.mjs
@@ -94,8 +94,6 @@ export default [
"chrome/content/zotero/xpcom/rdf/*",
"chrome/content/zotero/xpcom/xregexp/*",
"chrome/content/zotero/xpcom/translation/tlds.js",
- "chrome/skin/default/zotero/timeline/bundle.js",
- "chrome/skin/default/zotero/timeline/timeline-api.js",
"resource/bluebird/*",
"resource/classnames.js",
"resource/citeproc_rs*",