mirror of
https://github.com/wekan/wekan.git
synced 2026-01-06 17:48:49 +01:00
Prevent duplicate board labels
43de3b8 did prevent empty labels with the same color, but we also want
to prevent label with the same non-empty name and same color because
the rationale is identical.
This commit is contained in:
parent
15ebfa63c6
commit
6dedf673d5
2 changed files with 31 additions and 42 deletions
|
|
@ -135,29 +135,26 @@ Boards.mutations({
|
|||
},
|
||||
|
||||
addLabel(name, color) {
|
||||
const _id = Random.id(6);
|
||||
|
||||
// If an empty label of a given color already exists we don't want to create
|
||||
// an other one because they would be indistinguishable in the UI (they
|
||||
// would still have different `_id` but that is not exposed to the user).
|
||||
if (name === '' && this.getLabel(name, color)) {
|
||||
return {};
|
||||
// If label with the same name and color already exists we don't want to
|
||||
// create another one because they would be indistinguishable in the UI
|
||||
// (they would still have different `_id` but that is not exposed to the
|
||||
// user).
|
||||
if (!this.getLabel(name, color)) {
|
||||
const _id = Random.id(6);
|
||||
return { $push: {labels: { _id, name, color }}};
|
||||
}
|
||||
return { $push: {labels: { _id, name, color }}};
|
||||
},
|
||||
|
||||
editLabel(labelId, name, color) {
|
||||
const labelIndex = this.labelIndex(labelId);
|
||||
|
||||
if (name === '' && this.getLabel(name, color)) {
|
||||
return {};
|
||||
if (!this.getLabel(name, color)) {
|
||||
const labelIndex = this.labelIndex(labelId);
|
||||
return {
|
||||
$set: {
|
||||
[`labels.${labelIndex}.name`]: name,
|
||||
[`labels.${labelIndex}.color`]: color,
|
||||
},
|
||||
};
|
||||
}
|
||||
return {
|
||||
$set: {
|
||||
[`labels.${labelIndex}.name`]: name,
|
||||
[`labels.${labelIndex}.color`]: color,
|
||||
},
|
||||
};
|
||||
},
|
||||
|
||||
removeLabel(labelId) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue