Skip to content
Snippets Groups Projects
Select Git revision
  • e6e9a481e3213ea1a839e8aef4e25709ad969bd1
  • master default protected
  • intros
  • live_sources
  • bootstrap4
  • modules
6 results

moderator.js

Blame
  • Forked from Video AG Infrastruktur / website
    Source project has a limited visibility.
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    moderator.js 1.68 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) {
    		var req = {};
    		req[path] = value;
    		$.ajax({
    			method: "POST",
    			url: "/edit",
    			dataType: "text",
    			contentType: "application/json",
    			data: JSON.stringify(req)
    		})
    	}
    };
    
    $( document ).ready( moderatorinterface.init() );