mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-07 22:45:46 +01:00
disabling/enabling parent will disable/enable children
This commit is contained in:
@@ -17,11 +17,16 @@ define('admin/manage/categories', ['vendor/jquery/serializeObject/jquery.ba-seri
|
|||||||
|
|
||||||
// Enable/Disable toggle events
|
// Enable/Disable toggle events
|
||||||
$('.categories').on('click', 'button[data-action="toggle"]', function() {
|
$('.categories').on('click', 'button[data-action="toggle"]', function() {
|
||||||
var rowEl = $(this).parents('li'),
|
var $this = $(this),
|
||||||
cid = rowEl.attr('data-cid'),
|
cid = $this.attr('data-cid'),
|
||||||
disabled = rowEl.hasClass('disabled');
|
parentEl = $this.parents('li[data-cid="' + cid + '"]'),
|
||||||
|
disabled = parentEl.hasClass('disabled');
|
||||||
|
|
||||||
Categories.toggle(cid, !disabled);
|
var children = parentEl.find('li[data-cid]').map(function() {
|
||||||
|
return $(this).attr('data-cid');
|
||||||
|
}).get();
|
||||||
|
|
||||||
|
Categories.toggle([cid].concat(children), !disabled);
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@@ -94,12 +99,14 @@ define('admin/manage/categories', ['vendor/jquery/serializeObject/jquery.ba-seri
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
Categories.toggle = function(cid, disabled) {
|
Categories.toggle = function(cids, disabled) {
|
||||||
var payload = {};
|
var payload = {};
|
||||||
|
|
||||||
payload[cid] = {
|
cids.forEach(function(cid) {
|
||||||
disabled: disabled ? 1 : 0
|
payload[cid] = {
|
||||||
};
|
disabled: disabled ? 1 : 0
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
socket.emit('admin.categories.update', payload, function(err) {
|
socket.emit('admin.categories.update', payload, function(err) {
|
||||||
if (err) {
|
if (err) {
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
<div class="clearfix pull-right text-right">
|
<div class="clearfix pull-right text-right">
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
<button data-action="toggle" data-disabled="{categories.disabled}" class="btn <!-- IF categories.disabled -->btn-primary<!-- ELSE -->btn-danger<!-- ENDIF categories.disabled -->">
|
<button data-cid="{categories.cid}" data-action="toggle" data-disabled="{categories.disabled}" class="btn <!-- IF categories.disabled -->btn-primary<!-- ELSE -->btn-danger<!-- ENDIF categories.disabled -->">
|
||||||
<!-- IF categories.disabled -->Enable<!-- ELSE -->Disable<!-- ENDIF categories.disabled -->
|
<!-- IF categories.disabled -->Enable<!-- ELSE -->Disable<!-- ENDIF categories.disabled -->
|
||||||
</button>
|
</button>
|
||||||
<a href="./categories/{categories.cid}" class="btn btn-default">Edit</a>
|
<a href="./categories/{categories.cid}" class="btn btn-default">Edit</a>
|
||||||
|
|||||||
Reference in New Issue
Block a user