Select Git revision
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
moderator.js 2.01 KiB
var moderatorinterface = {
init: function () {
$(function () {
var editable = $('.modeditable');
for (var i=0; i<editable.length; i++) {
var e = $(editable[i]);
$('.modeditablesign',e).popover(
{
title: e.data('path'),
html: true,
trigger: 'click',
container: 'body',
content: function() {
return '<div class="row form-group">'+
'<span class="col-xs-12">'+
'<textarea class="form-control editorvalue" rows="3" data-path="'+$(this.parentElement).data('path')+'">'+this.parentElement.getElementsByClassName('modeditablevalue')[0].innerHTML+'</textarea>'+
'</span>'+
'<span class="col-xs-12">'+
'<input class="btn btn-default pull-right editorbtn" type="submit" data-path="'+$(this.parentElement).data('path')+'" value="save" onClick="moderatorinterface.edit(this)">'+
'</span>'+
'</div>';
}
}
);
}
})
},
edit: function (src) {
var path = $($(src)[0]).data('path');
var value = $(".editorvalue")[0].value;
var editable = $('.modeditable');
for (var i=0; i<editable.length; i++) {
var e = $(editable[i]);
if (e.data('path') == path) {
$('.modeditablesign',e).click();
$(".modeditablevalue",e).html(value);
}
}
moderatorinterface.set(path,value);
},
change: function(src) {
var value = $(src)[0].checked;
var path = $(src).data('path');
moderatorinterface.set(path,value ? 1 : 0);
},
set: function(path,value,reload=false) {
var req = {};
req[path] = value;
$.ajax({
method: "POST",
url: "/edit",
dataType: "text",
contentType: "application/json",
data: JSON.stringify(req),
success: function () {
if (reload) {
window.location.reload();
}
}
})
},
delete: function(src) {
if (confirm('Realy delete this?')) {
moderatorinterface.set($(src).data('path'),1,true);
}
},
gethttp: function (url){
$.ajax({
method: "GET",
url: url,
dataType: "text",
})
}
};
$( document ).ready( moderatorinterface.init() );