mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-01-30 19:30:04 +01:00
closes #6216
This commit is contained in:
@@ -15,6 +15,7 @@ define('admin/manage/tags', [
|
||||
handleCreate();
|
||||
handleSearch();
|
||||
handleModify();
|
||||
handleRename();
|
||||
handleDeleteSelected();
|
||||
};
|
||||
|
||||
@@ -103,15 +104,25 @@ define('admin/manage/tags', [
|
||||
var modal = $('.bootbox');
|
||||
var bgColor = modal.find('[data-name="bgColor"]').val();
|
||||
var color = modal.find('[data-name="color"]').val();
|
||||
|
||||
var data = [];
|
||||
tagsToModify.each(function (idx, tag) {
|
||||
tag = $(tag);
|
||||
data.push({
|
||||
value: tag.attr('data-tag'),
|
||||
color: modal.find('[data-name="color"]').val(),
|
||||
bgColor: modal.find('[data-name="bgColor"]').val(),
|
||||
});
|
||||
|
||||
tag.find('[data-name="bgColor"]').val(bgColor);
|
||||
tag.find('[data-name="color"]').val(color);
|
||||
tag.find('.tag-item').css('background-color', bgColor).css('color', color);
|
||||
});
|
||||
|
||||
save(tag);
|
||||
socket.emit('admin.tags.update', data, function (err) {
|
||||
if (err) {
|
||||
return app.alertError(err.message);
|
||||
}
|
||||
app.alertSuccess('[[admin/manage/tags:alerts.update-success]]');
|
||||
});
|
||||
},
|
||||
},
|
||||
@@ -122,6 +133,46 @@ define('admin/manage/tags', [
|
||||
});
|
||||
}
|
||||
|
||||
function handleRename() {
|
||||
$('#rename').on('click', function () {
|
||||
var tagsToModify = $('.tag-row.ui-selected');
|
||||
if (!tagsToModify.length) {
|
||||
return;
|
||||
}
|
||||
|
||||
var firstTag = $(tagsToModify[0]);
|
||||
var title = tagsToModify.length > 1 ? '[[admin/manage/tags:alerts.editing-multiple]]' : '[[admin/manage/tags:alerts.editing-x, ' + firstTag.find('.tag-item').attr('data-tag') + ']]';
|
||||
|
||||
var modal = bootbox.dialog({
|
||||
title: title,
|
||||
message: $('.rename-modal').html(),
|
||||
buttons: {
|
||||
success: {
|
||||
label: 'Save',
|
||||
className: 'btn-primary save',
|
||||
callback: function () {
|
||||
var data = [];
|
||||
tagsToModify.each(function (idx, tag) {
|
||||
tag = $(tag);
|
||||
data.push({
|
||||
value: tag.attr('data-tag'),
|
||||
newName: modal.find('[data-name="value"]').val(),
|
||||
});
|
||||
});
|
||||
|
||||
socket.emit('admin.tags.rename', data, function (err) {
|
||||
if (err) {
|
||||
return app.alertError(err.message);
|
||||
}
|
||||
app.alertSuccess('[[admin/manage/tags:alerts.update-success]]');
|
||||
});
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function handleDeleteSelected() {
|
||||
$('#deleteSelected').on('click', function () {
|
||||
var tagsToDelete = $('.tag-row.ui-selected');
|
||||
@@ -158,21 +209,5 @@ define('admin/manage/tags', [
|
||||
modal.find('[data-name="bgColor"], [data-name="color"]').each(enableColorPicker);
|
||||
}
|
||||
|
||||
function save(tag) {
|
||||
var data = {
|
||||
tag: tag.attr('data-tag'),
|
||||
bgColor: tag.find('[data-name="bgColor"]').val(),
|
||||
color: tag.find('[data-name="color"]').val(),
|
||||
};
|
||||
|
||||
socket.emit('admin.tags.update', data, function (err) {
|
||||
if (err) {
|
||||
return app.alertError(err.message);
|
||||
}
|
||||
|
||||
app.alertSuccess('[[admin/manage/tags:alerts.update-success]]');
|
||||
});
|
||||
}
|
||||
|
||||
return Tags;
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user