mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-07 22:45:46 +01:00
loading and saving navigation
This commit is contained in:
44
public/src/admin/general/navigation.js
Normal file
44
public/src/admin/general/navigation.js
Normal file
@@ -0,0 +1,44 @@
|
||||
"use strict";
|
||||
/* global define, app, ajaxify, socket, templates, bootbox */
|
||||
|
||||
define('admin/general/navigation', function() {
|
||||
var navigation = {};
|
||||
|
||||
|
||||
var available;
|
||||
|
||||
navigation.init = function() {
|
||||
available = JSON.parse(ajaxify.variables.get('available'));
|
||||
|
||||
$('.delete').on('click', function() {
|
||||
$(this).parents('li').remove();
|
||||
});
|
||||
|
||||
$('#save').on('click', saveNavigation);
|
||||
};
|
||||
|
||||
function saveNavigation() {
|
||||
var nav = [];
|
||||
|
||||
$('#enabled li').each(function() {
|
||||
var form = $(this).find('form').serializeArray(),
|
||||
data = {};
|
||||
|
||||
form.forEach(function(input) {
|
||||
data[input.name] = input.value;
|
||||
});
|
||||
|
||||
nav.push(data);
|
||||
});
|
||||
|
||||
socket.emit('admin.navigation.save', activeRewards, function(err) {
|
||||
if (err) {
|
||||
app.alertError(err.message);
|
||||
} else {
|
||||
app.alertSuccess('Successfully saved navigation');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
return navigation;
|
||||
});
|
||||
10
src/socket.io/admin/navigation.js
Normal file
10
src/socket.io/admin/navigation.js
Normal file
@@ -0,0 +1,10 @@
|
||||
"use strict";
|
||||
|
||||
var navigationAdmin = require('../../navigation/admin'),
|
||||
SocketNavigation = {};
|
||||
|
||||
SocketNavigation.save = function(socket, data, callback) {
|
||||
navigationAdmin.save(data, callback);
|
||||
};
|
||||
|
||||
module.exports = SocketNavigation;
|
||||
@@ -4,9 +4,9 @@
|
||||
<div class="panel-heading">Active Navigation</div>
|
||||
<div class="panel-body">
|
||||
<ul id="enabled">
|
||||
<form class="main inline-block">
|
||||
<!-- BEGIN enabled -->
|
||||
<li class="well">
|
||||
<form>
|
||||
<label>ID: <small>optional</small>
|
||||
<input class="form-control" type="text" name="id" value="{enabled.id}" />
|
||||
</label>
|
||||
@@ -26,12 +26,13 @@
|
||||
<input class="form-control" type="text" name="textClass" value="{enabled.textClass}" />
|
||||
</label>
|
||||
<hr />
|
||||
<button class="btn btn-danger delete">Delete</button>
|
||||
<label>Enabled
|
||||
<input type="checkbox" name="enabled" <!-- IF enabled --> checked<!-- ENDIF enabled --> />
|
||||
</label>
|
||||
</form>
|
||||
</li>
|
||||
<!-- END enabled -->
|
||||
</form>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
@@ -51,6 +52,7 @@
|
||||
<span class="pull-right badge"><!-- IF available.core -->core<!-- ELSE -->plugin<!-- ENDIF available.core --></span>
|
||||
</li>
|
||||
<!-- END available -->
|
||||
<input type="hidden" template-variable="available" value="{function.stringify, available}" />
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user