file uploads: Internationalize upload status text.

Use i18n to ensure that the status text 'Uploading filename...' is
properly localized.
This commit is contained in:
Divyanshu Agrawal
2020-04-17 21:07:06 +05:30
committed by Tim Abbott
parent b30da07fd3
commit a076bcb9f4
2 changed files with 14 additions and 10 deletions

View File

@@ -194,7 +194,7 @@ run_test('upload_files', () => {
};
let compose_ui_insert_syntax_and_focus_called = false;
compose_ui.insert_syntax_and_focus = (syntax, textarea) => {
assert.equal(syntax, "[Uploading budapest.png…]()");
assert.equal(syntax, "[translated: Uploading budapest.png…]()");
assert.equal(textarea, $("#compose-textarea"));
compose_ui_insert_syntax_and_focus_called = true;
};
@@ -246,7 +246,7 @@ run_test('upload_files', () => {
];
compose_ui.replace_syntax = (old_syntax, new_syntax, textarea) => {
compose_ui_replace_syntax_called = true;
assert.equal(old_syntax, "[Uploading budapest.png…]()");
assert.equal(old_syntax, "[translated: Uploading budapest.png…]()");
assert.equal(new_syntax, "");
assert.equal(textarea, $('#compose-textarea'));
};
@@ -437,7 +437,7 @@ run_test('uppy_events', () => {
callbacks[event_name] = callback;
},
getFiles: () => {
return files;
return [...files];
},
removeFile: (file_id) => {
files = files.filter((file) => {
@@ -476,7 +476,7 @@ run_test('uppy_events', () => {
let compose_ui_replace_syntax_called = false;
compose_ui.replace_syntax = (old_syntax, new_syntax, textarea) => {
compose_ui_replace_syntax_called = true;
assert.equal(old_syntax, "[Uploading copenhagen.png…]()");
assert.equal(old_syntax, "[translated: Uploading copenhagen.png…]()");
assert.equal(new_syntax, "[copenhagen.png](https://foo.com/user_uploads/4/cb/rue1c-MlMUjDAUdkRrEM4BTJ/copenhagen.png)");
assert.equal(textarea, $('#compose-textarea'));
};
@@ -574,7 +574,7 @@ run_test('uppy_events', () => {
assert(show_error_message_called);
compose_ui.replace_syntax = (old_syntax, new_syntax, textarea) => {
compose_ui_replace_syntax_called = true;
assert.equal(old_syntax, "[Uploading copenhagen.png…]()");
assert.equal(old_syntax, "[translated: Uploading copenhagen.png…]()");
assert.equal(new_syntax, "");
assert.equal(textarea, $('#compose-textarea'));
};

View File

@@ -16,6 +16,10 @@ exports.feature_check = function (upload_button) {
upload_button.removeClass("notdisplayed");
}
};
exports.get_translated_status = function (file) {
const status = i18n.t("Uploading __filename__…", {filename: file.name});
return "[" + status + "]()";
};
exports.get_item = function (key, config) {
if (!config) {
@@ -102,7 +106,7 @@ exports.upload_files = function (uppy, config, files) {
exports.get_item("send_status_message", config).html($("<p>").text(i18n.t("Uploading…")));
exports.get_item("send_status_close_button", config).one('click', function () {
uppy.getFiles().forEach((file) => {
compose_ui.replace_syntax("[Uploading " + file.name + "…]()", "", exports.get_item("textarea", config));
compose_ui.replace_syntax(exports.get_translated_status(file), "", exports.get_item("textarea", config));
});
compose_ui.autosize_textarea();
uppy.cancelAll();
@@ -114,7 +118,7 @@ exports.upload_files = function (uppy, config, files) {
for (const file of files) {
try {
compose_ui.insert_syntax_and_focus("[Uploading " + file.name + "…]()", exports.get_item("textarea", config));
compose_ui.insert_syntax_and_focus(exports.get_translated_status(file), exports.get_item("textarea", config));
compose_ui.autosize_textarea();
uppy.addFile({
source: exports.get_item("source", config),
@@ -211,7 +215,7 @@ exports.setup_upload = function (config) {
}
const absolute_uri = upload.make_upload_absolute(uri);
const filename_uri = "[" + filename + "](" + absolute_uri + ")";
compose_ui.replace_syntax("[Uploading " + file.name + "…]()", filename_uri, exports.get_item("textarea", config));
compose_ui.replace_syntax(exports.get_translated_status(file), filename_uri, exports.get_item("textarea", config));
compose_ui.autosize_textarea();
});
@@ -264,12 +268,12 @@ exports.setup_upload = function (config) {
const message = response ? response.body.msg : null;
uppy.cancelAll();
exports.show_error_message(config, message);
compose_ui.replace_syntax("[Uploading " + file.name + "…]()", "", exports.get_item("textarea", config));
compose_ui.replace_syntax(exports.get_translated_status(file), "", exports.get_item("textarea", config));
compose_ui.autosize_textarea();
});
uppy.on('restriction-failed', (file) => {
compose_ui.replace_syntax("[Uploading " + file.name + "…]()", "", exports.get_item("textarea", config));
compose_ui.replace_syntax(exports.get_translated_status(file), "", exports.get_item("textarea", config));
compose_ui.autosize_textarea();
});