diff --git a/main/webapp/modules/core/scripts/project/browsing-engine.js b/main/webapp/modules/core/scripts/project/browsing-engine.js
index 13ab02569..a4adbef79 100644
--- a/main/webapp/modules/core/scripts/project/browsing-engine.js
+++ b/main/webapp/modules/core/scripts/project/browsing-engine.js
@@ -96,20 +96,20 @@ BrowsingEngine.prototype._initializeUI = function() {
this._div.html(
'
' +
- '
Using facets and filters
' +
- '
Use facets and filters to select subsets of your data to act on. Choose facet and filter methods from the menus at the top of each data column.
' +
- '
Not sure how to get started?
Watch these screencasts
' +
+ '
'+$.i18n._('core-project')["use-facets"]+'
' +
+ '
'+$.i18n._('core-project')["use-to-select"]+'
' +
+ '
'+$.i18n._('core-project')["not-sure"]+'
'+$.i18n._('core-project')["watch-cast"]+'
' +
'
' +
'' +
'
-
Infinite undo history
-
Don't worry about making mistakes. Every change you make will be shown here, and you can undo your changes anytime.
-
Learn more »
+
+
+
diff --git a/main/webapp/modules/core/scripts/project/history-panel.js b/main/webapp/modules/core/scripts/project/history-panel.js
index 2ed569297..03f3afe2f 100644
--- a/main/webapp/modules/core/scripts/project/history-panel.js
+++ b/main/webapp/modules/core/scripts/project/history-panel.js
@@ -74,6 +74,14 @@ HistoryPanel.prototype._render = function() {
this._div.empty().unbind().html(DOM.loadHTML("core", "scripts/project/history-panel.html"));
var elmts = DOM.bind(this._div);
+
+ elmts.or_proj_undo.html($.i18n._('core-project')["undo-history"]);
+ elmts.or_proj_mistakes.html($.i18n._('core-project')["mistakes"]);
+ elmts.or_proj_learnMore.html($.i18n._('core-project')["learn-more"]);
+ elmts.applyLink.html($.i18n._('core-project')["apply"]);
+ elmts.extractLink.html($.i18n._('core-project')["extract"]);
+ elmts.or_proj_mistakes.html($.i18n._('core-project')["mistakes"]);
+ elmts.or_proj_filter.html($.i18n._('core-project')["filter"]);
var renderEntry = function(container, index, entry, lastDoneID, past) {
var a = $(DOM.loadHTML("core", "scripts/project/history-entry.html")).appendTo(container);
@@ -187,6 +195,12 @@ HistoryPanel.prototype._showExtractOperationsDialog = function(json) {
var frame = $(DOM.loadHTML("core", "scripts/project/history-extract-dialog.html"));
var elmts = DOM.bind(frame);
+ elmts.dialogHeader.html($.i18n._('core-project')["extract-history"]);
+ elmts.or_proj_extractSave.html($.i18n._('core-project')["extract-save"]);
+ elmts.selectAllButton.html($.i18n._('core-buttons')["select-all"]);
+ elmts.unselectAllButton.html($.i18n._('core-buttons')["unselect-all"]);
+ elmts.closeButton.html($.i18n._('core-buttons')["close"]);
+
var entryTable = elmts.entryTable[0];
var createEntry = function(entry) {
var tr = entryTable.insertRow(entryTable.rows.length);
@@ -250,6 +264,12 @@ HistoryPanel.prototype._showApplyOperationsDialog = function() {
var self = this;
var frame = $(DOM.loadHTML("core", "scripts/project/history-apply-dialog.html"));
var elmts = DOM.bind(frame);
+
+ elmts.dialogHeader.html($.i18n._('core-project')["apply-operation"]);
+ elmts.or_proj_pasteJson.html($.i18n._('core-project')["paste-json"]);
+
+ elmts.applyButton.html($.i18n._('core-buttons')["perform-op"]);
+ elmts.cancelButton.html($.i18n._('core-buttons')["cancel"]);
var fixJson = function(json) {
json = json.trim();
@@ -271,7 +291,7 @@ HistoryPanel.prototype._showApplyOperationsDialog = function() {
json = fixJson(json);
json = JSON.parse(json);
} catch (e) {
- alert("The JSON you pasted is invalid.");
+ alert($.i18n._('core-project')["json-invalid"]+".");
return;
}
diff --git a/main/webapp/modules/core/scripts/project/process-panel.js b/main/webapp/modules/core/scripts/project/process-panel.js
index 846a68f5e..20fd3b9ad 100644
--- a/main/webapp/modules/core/scripts/project/process-panel.js
+++ b/main/webapp/modules/core/scripts/project/process-panel.js
@@ -43,6 +43,8 @@ function ProcessPanel(div) {
this._div.html(DOM.loadHTML("core", "scripts/project/progress-panel.html"));
this._elmts = DOM.bind(this._div);
+ this._elmts.undoLink.html($.i18n._('core-project')["undo"]);
+
var self = this;
$(window).keypress(function(evt) {
if (evt.charCode == 26 || (evt.charCode == 122 && (evt.ctrlKey || evt.metaKey))) { // ctrl-z or meta-z
@@ -147,9 +149,9 @@ ProcessPanel.prototype._render = function(newData) {
for (var i = 0; i < processes.length; i++) {
var process = processes[i];
if (process.status != "pending") {
- Refine.setTitle(process.progress + "% complete");
+ Refine.setTitle(process.progress + "% "+elmts.or_proj_undo.html($.i18n._('core-project')["complete"]));
this._elmts.progressDescription.text(process.description);
- this._elmts.progressSpan.text(process.progress + '% complete');
+ this._elmts.progressSpan.text(process.progress + '% '+elmts.or_proj_undo.html($.i18n._('core-project')["complete"]));
}
if ("onDone" in process) {
newProcessMap[process.id] = process;
@@ -158,16 +160,16 @@ ProcessPanel.prototype._render = function(newData) {
if (processes.length > 1) {
var pending = processes.length - 1;
- this._elmts.countSpan.text('(' + pending + (pending > 1 ? ' other pending processes)' : ' other pending process)'));
+ this._elmts.countSpan.text('(' + pending + (pending > 1 ? ' '+$.i18n._('core-project')["other-processes"]+')' : ' '+$.i18n._('core-project')["other-process"]+')'));
} else {
this._elmts.countSpan.empty();
}
this._elmts.cancelLink
.unbind()
- .text(processes.length > 1 ? "Cancel All" : "Cancel")
+ .text(processes.length > 1 ? $.i18n._('core-project')["cancel-all"] : $.i18n._('core-project')["cancel"])
.click(function() {
self._cancelAll();
- $(this).text("Canceling...").unbind();
+ $(this).text($.i18n._('core-project')["canceling"]).unbind();
})
this._div.fadeIn(200);
@@ -190,10 +192,10 @@ ProcessPanel.prototype._render = function(newData) {
}).join('\n');
if (this._data.processes.length == 0) {
- window.alert('The last operation encountered some errors:\n' + messages);
+ window.alert($.i18n._('core-project')["last-op-er"]+':\n' + messages);
} else {
- if (window.confirm('The last operation encountered some errors:\n' + messages +
- '\n\nContinue with the remaining operations?')) {
+ if (window.confirm($.i18n._('core-project')["last-op-er"]+':\n' + messages +
+ '\n\n'+$.i18n._('core-project')["continue-remaining"]+'?')) {
$.post(
"command/core/apply-operations?" + $.param({ project: theProject.id }),
{ operations: '[]' },
diff --git a/main/webapp/modules/core/scripts/project/progress-panel.html b/main/webapp/modules/core/scripts/project/progress-panel.html
index 719116fc3..a9ede266c 100644
--- a/main/webapp/modules/core/scripts/project/progress-panel.html
+++ b/main/webapp/modules/core/scripts/project/progress-panel.html
@@ -10,6 +10,6 @@
\ No newline at end of file
diff --git a/main/webapp/modules/langs/translation-en.json b/main/webapp/modules/langs/translation-en.json
index 8d40e993d..521edc59f 100644
--- a/main/webapp/modules/langs/translation-en.json
+++ b/main/webapp/modules/langs/translation-en.json
@@ -278,7 +278,47 @@
"big-dot": "Big Dot Size",
"export-plot": "export plot",
"numeric": "Numeric"
-
+ },
+ "core-project": {
+ "use-facets": "Using facets and filters",
+ "use-to-select": "Use facets and filters to select subsets of your data to act on. Choose facet and filter methods from the menus at the top of each data column.",
+ "not-sure": "Not sure how to get started?",
+ "watch-cast": "Watch these screencasts",
+ "refreshing-facet": "Refreshing facets...",
+ "update-facets": "Update all facets",
+ "clear-selection": "Clear selection in all facets",
+ "remove-all": "Remove all facets",
+ "export-project": "Export project",
+ "tab-value": "Tab-separated value",
+ "comma-sep": "Comma-separated value",
+ "html-table": "HTML table",
+ "excel": "Excel",
+ "odf": "ODF spreadsheet",
+ "triple-loader": "Triple loader",
+ "mqlwrite": "MQLWrite",
+ "custom-tabular": "Custom tabular exporter...",
+ "templating": "Templating...",
+ "warning-align": "You haven't done any schema alignment yet,\n so there is no triple to export.\n\n Use the Freebase > Edit Schema Alignment Skeleton...\n command to align your data with Freebase schemas first.",
+ "json-invalid": "The JSON you pasted is invalid",
+ "undo-history": "Infinite undo history",
+ "mistakes": "Don't worry about making mistakes. Every change you make will be shown here, and you can undo your changes anytime.",
+ "learn-more": "Learn more »",
+ "apply": "Apply…",
+ "extract": "Extract…",
+ "filter": "Filter:",
+ "extract-history": "Extract Operation History",
+ "extract-save": "Extract and save parts of your operation history as JSON that you can apply to this or other projects in the future.",
+ "apply-operation": "Apply Operation History",
+ "paste-json": "Paste an extracted JSON history of operations to perform:",
+ "complete": "complete",
+ "other-processes": "other pending processes",
+ "other-process": "other pending process",
+ "cancel-all": "Cancel All",
+ "cancel": "Cancel",
+ "canceling": "Canceling...",
+ "last-op-er": "The last operation encountered some errors",
+ "continue-remaining": "Continue with the remaining operations",
+ "undo": "Undo"
},
"core-buttons": {
"cancel": "Cancel",
@@ -307,6 +347,10 @@
"upload": "Upload",
"apply": "Apply",
"enter": "Enter",
- "esc": "Esc"
+ "esc": "Esc",
+ "refresh": "Refresh",
+ "reset-all": "Reset All",
+ "remove-all": "Remove All",
+ "perform-op": "Perform Operations"
}
}
\ No newline at end of file