Merge pull request #5128 from tobiasd/20180525-5067
[friendica.git/.git] / view / theme / frost-mobile / js / acl.min.js
index 890e853..01e90b0 100644 (file)
@@ -1 +1 @@
-function ACL(e,t){that=this,that.url=e,that.kp_timer=null,t==undefined&&(t=[]),that.allow_cid=t[0]||[],that.allow_gid=t[1]||[],that.deny_cid=t[2]||[],that.deny_gid=t[3]||[],that.group_uids=[],that.nw=2,that.list_content=$j("#acl-list-content"),that.item_tpl=unescape($j(".acl-list-item[rel=acl-template]").html()),that.showall=$j("#acl-showall"),t.length==0&&that.showall.addClass("selected"),that.showall.click(that.on_showall),$j(".acl-button-show").live("click",that.on_button_show),$j(".acl-button-hide").live("click",that.on_button_hide),$j("#acl-search").keypress(that.on_search),$j("#acl-wrapper").parents("form").submit(that.on_submit),that.get(0,100)}ACL.prototype.on_submit=function(){aclfileds=$j("#acl-fields").html(""),$j(that.allow_gid).each(function(e,t){aclfileds.append("<input type='hidden' name='group_allow[]' value='"+t+"'>")}),$j(that.allow_cid).each(function(e,t){aclfileds.append("<input type='hidden' name='contact_allow[]' value='"+t+"'>")}),$j(that.deny_gid).each(function(e,t){aclfileds.append("<input type='hidden' name='group_deny[]' value='"+t+"'>")}),$j(that.deny_cid).each(function(e,t){aclfileds.append("<input type='hidden' name='contact_deny[]' value='"+t+"'>")})},ACL.prototype.search=function(){var e=$j("#acl-search").val();that.list_content.html(""),that.get(0,100,e)},ACL.prototype.on_search=function(e){that.kp_timer&&clearTimeout(that.kp_timer),that.kp_timer=setTimeout(that.search,1e3)},ACL.prototype.on_showall=function(e){return e.preventDefault(),e.stopPropagation(),that.showall.hasClass("selected")?!1:(that.showall.addClass("selected"),that.allow_cid=[],that.allow_gid=[],that.deny_cid=[],that.deny_gid=[],that.update_view(),!1)},ACL.prototype.on_button_show=function(e){return e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),that.set_allow($j(this).parent().attr("id")),!1},ACL.prototype.on_button_hide=function(e){return e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),that.set_deny($j(this).parent().attr("id")),!1},ACL.prototype.set_allow=function(e){type=e[0],id=parseInt(e.substr(1));switch(type){case"g":that.allow_gid.indexOf(id)<0?that.allow_gid.push(id):that.allow_gid.remove(id),that.deny_gid.indexOf(id)>=0&&that.deny_gid.remove(id);break;case"c":that.allow_cid.indexOf(id)<0?that.allow_cid.push(id):that.allow_cid.remove(id),that.deny_cid.indexOf(id)>=0&&that.deny_cid.remove(id)}that.update_view()},ACL.prototype.set_deny=function(e){type=e[0],id=parseInt(e.substr(1));switch(type){case"g":that.deny_gid.indexOf(id)<0?that.deny_gid.push(id):that.deny_gid.remove(id),that.allow_gid.indexOf(id)>=0&&that.allow_gid.remove(id);break;case"c":that.deny_cid.indexOf(id)<0?that.deny_cid.push(id):that.deny_cid.remove(id),that.allow_cid.indexOf(id)>=0&&that.allow_cid.remove(id)}that.update_view()},ACL.prototype.update_view=function(){that.allow_gid.length==0&&that.allow_cid.length==0&&that.deny_gid.length==0&&that.deny_cid.length==0?(that.showall.addClass("selected"),$j("#jot-perms-icon").removeClass("lock").addClass("unlock"),$j("#jot-public").show(),$j(".profile-jot-net input").attr("disabled",!1),typeof editor!="undefined"&&editor!=0&&$j("#profile-jot-desc").html(ispublic)):(that.showall.removeClass("selected"),$j("#jot-perms-icon").removeClass("unlock").addClass("lock"),$j("#jot-public").hide(),$j(".profile-jot-net input").attr("disabled","disabled"),$j("#profile-jot-desc").html("&nbsp;")),$j("#acl-list-content .acl-list-item").each(function(){$j(this).removeClass("groupshow grouphide")}),$j("#acl-list-content .acl-list-item").each(function(){itemid=$j(this).attr("id"),type=itemid[0],id=parseInt(itemid.substr(1)),btshow=$j(this).children(".acl-button-show").removeClass("selected"),bthide=$j(this).children(".acl-button-hide").removeClass("selected");switch(type){case"g":var e="";that.allow_gid.indexOf(id)>=0&&(btshow.addClass("selected"),bthide.removeClass("selected"),e="groupshow"),that.deny_gid.indexOf(id)>=0&&(btshow.removeClass("selected"),bthide.addClass("selected"),e="grouphide"),$j(that.group_uids[id]).each(function(t,n){e=="grouphide"&&$j("#c"+n).removeClass("groupshow");if(e!=""){var r=$j("#c"+n).attr("class");if(r==undefined)return!0;var i=r.indexOf("grouphide");i==-1&&$j("#c"+n).addClass(e)}});break;case"c":that.allow_cid.indexOf(id)>=0&&(btshow.addClass("selected"),bthide.removeClass("selected")),that.deny_cid.indexOf(id)>=0&&(btshow.removeClass("selected"),bthide.addClass("selected"))}})},ACL.prototype.get=function(e,t,n){var r={start:e,count:t,search:n};$j.ajax({type:"POST",url:that.url,data:r,dataType:"json",success:that.populate})},ACL.prototype.populate=function(e){$j(e.items).each(function(){html="<div class='acl-list-item {4} {5}' title='{6}' id='{2}{3}'>"+that.item_tpl+"</div>",html=html.format(this.photo,this.name,this.type,this.id,"",this.network,this.link),this.uids!=undefined&&(that.group_uids[this.id]=this.uids),that.list_content.append(html)}),that.update_view()};
\ No newline at end of file
+function ACL(backend_url,preset){that=this;that.url=backend_url;that.kp_timer=null;if(preset==undefined)preset=[];that.allow_cid=preset[0]||[];that.allow_gid=preset[1]||[];that.deny_cid=preset[2]||[];that.deny_gid=preset[3]||[];that.group_uids=[];that.nw=2;that.list_content=$("#acl-list-content");that.item_tpl=unescape($(".acl-list-item[rel=acl-template]").html());that.showall=$("#acl-showall");if(preset.length==0)that.showall.addClass("selected");that.showall.click(that.on_showall);$(".acl-button-show").live("click",that.on_button_show);$(".acl-button-hide").live("click",that.on_button_hide);$("#acl-search").keypress(that.on_search);$("#acl-wrapper").parents("form").submit(that.on_submit);that.get(0,100)}ACL.prototype.on_submit=function(){aclfileds=$("#acl-fields").html("");$(that.allow_gid).each(function(i,v){aclfileds.append("<input type='hidden' name='group_allow[]' value='"+v+"'>")});$(that.allow_cid).each(function(i,v){aclfileds.append("<input type='hidden' name='contact_allow[]' value='"+v+"'>")});$(that.deny_gid).each(function(i,v){aclfileds.append("<input type='hidden' name='group_deny[]' value='"+v+"'>")});$(that.deny_cid).each(function(i,v){aclfileds.append("<input type='hidden' name='contact_deny[]' value='"+v+"'>")})};ACL.prototype.search=function(){var srcstr=$("#acl-search").val();that.list_content.html("");that.get(0,100,srcstr)};ACL.prototype.on_search=function(event){if(that.kp_timer)clearTimeout(that.kp_timer);that.kp_timer=setTimeout(that.search,1e3)};ACL.prototype.on_showall=function(event){event.preventDefault();event.stopPropagation();if(that.showall.hasClass("selected")){return false}that.showall.addClass("selected");that.allow_cid=[];that.allow_gid=[];that.deny_cid=[];that.deny_gid=[];that.update_view();return false};ACL.prototype.on_button_show=function(event){event.preventDefault();event.stopImmediatePropagation();event.stopPropagation();that.set_allow($(this).parent().attr("id"));return false};ACL.prototype.on_button_hide=function(event){event.preventDefault();event.stopImmediatePropagation();event.stopPropagation();that.set_deny($(this).parent().attr("id"));return false};ACL.prototype.set_allow=function(itemid){type=itemid[0];id=parseInt(itemid.substr(1));switch(type){case"g":if(that.allow_gid.indexOf(id)<0){that.allow_gid.push(id)}else{that.allow_gid.remove(id)}if(that.deny_gid.indexOf(id)>=0)that.deny_gid.remove(id);break;case"c":if(that.allow_cid.indexOf(id)<0){that.allow_cid.push(id)}else{that.allow_cid.remove(id)}if(that.deny_cid.indexOf(id)>=0)that.deny_cid.remove(id);break}that.update_view()};ACL.prototype.set_deny=function(itemid){type=itemid[0];id=parseInt(itemid.substr(1));switch(type){case"g":if(that.deny_gid.indexOf(id)<0){that.deny_gid.push(id)}else{that.deny_gid.remove(id)}if(that.allow_gid.indexOf(id)>=0)that.allow_gid.remove(id);break;case"c":if(that.deny_cid.indexOf(id)<0){that.deny_cid.push(id)}else{that.deny_cid.remove(id)}if(that.allow_cid.indexOf(id)>=0)that.allow_cid.remove(id);break}that.update_view()};ACL.prototype.update_view=function(){if(that.allow_gid.length==0&&that.allow_cid.length==0&&that.deny_gid.length==0&&that.deny_cid.length==0){that.showall.addClass("selected");$("#jot-perms-icon").removeClass("lock").addClass("unlock");$("#jot-public").show();$(".profile-jot-net input").attr("disabled",false);if(typeof editor!="undefined"&&editor!=false){$("#profile-jot-desc").html(window.isPublic)}}else{that.showall.removeClass("selected");$("#jot-perms-icon").removeClass("unlock").addClass("lock");$("#jot-public").hide();$(".profile-jot-net input").attr("disabled","disabled");$("#profile-jot-desc").html("&nbsp;")}$("#acl-list-content .acl-list-item").each(function(){$(this).removeClass("groupshow grouphide")});$("#acl-list-content .acl-list-item").each(function(){itemid=$(this).attr("id");type=itemid[0];id=parseInt(itemid.substr(1));btshow=$(this).children(".acl-button-show").removeClass("selected");bthide=$(this).children(".acl-button-hide").removeClass("selected");switch(type){case"g":var uclass="";if(that.allow_gid.indexOf(id)>=0){btshow.addClass("selected");bthide.removeClass("selected");uclass="groupshow"}if(that.deny_gid.indexOf(id)>=0){btshow.removeClass("selected");bthide.addClass("selected");uclass="grouphide"}$(that.group_uids[id]).each(function(i,v){if(uclass=="grouphide")$("#c"+v).removeClass("groupshow");if(uclass!=""){var cls=$("#c"+v).attr("class");if(cls==undefined)return true;var hiding=cls.indexOf("grouphide");if(hiding==-1)$("#c"+v).addClass(uclass)}});break;case"c":if(that.allow_cid.indexOf(id)>=0){btshow.addClass("selected");bthide.removeClass("selected")}if(that.deny_cid.indexOf(id)>=0){btshow.removeClass("selected");bthide.addClass("selected")}}})};ACL.prototype.get=function(start,count,search){var postdata={start:start,count:count,search:search};$.ajax({type:"POST",url:that.url,data:postdata,dataType:"json",success:that.populate})};ACL.prototype.populate=function(data){$(data.items).each(function(){html="<div class='acl-list-item {4} {5}' title='{6}' id='{2}{3}'>"+that.item_tpl+"</div>";html=html.format(this.photo,this.name,this.type,this.id,"",this.network,this.link);if(this.uids!=undefined)that.group_uids[this.id]=this.uids;that.list_content.append(html)});$(".acl-list-item img[data-src]",that.list_content).each(function(i,el){$(el).attr("src",$(el).data("src"))});that.update_view()};
\ No newline at end of file