fobe-web/html/alphaland/js/utilities.js

9 lines
3.5 KiB
JavaScript

function parseHtml(a,b,c,n,k){k=void 0===k?!1:k;for(var l="",f,m=0;m<b;m++){var d=k?c:c[m];f=a;if(void 0===d)break;for(var g=0;g<=a.length;g++)if("{"==a.charAt(g))for(var e=g;e;e++){if("}"==a.charAt(e)){for(var h="",p=g;p<e+1;p++)h+=a.charAt(p);f=f.replace(h,d[h.substring(1,h.length-1)]);break}}else if("["==a.charAt(g))for(e=g;e;e++)if("]"==a.charAt(e)){h="";for(p=g;p<e+1;p++)h+=a.charAt(p);e=h.substring(1,h.length-1);try{e=window[e](d),f=f.replace(h,e)}catch(t){}break}l+=f}""==l&&(l=n);return l}
function getJSON(a){return $.getJSON(a)}function getJSONCDS(a){return $.ajax(a,{xhrFields:{withCredentials:!0},crossDomain:!0})}function postJSONCDS(a,b){return $.ajax({type:"POST",url:a,xhrFields:{withCredentials:!0},crossDomain:!0,data:b,dataType:"json"})}
function staticPageHelper(a,b,c,n,k,l,f,m,d){d=void 0===d?"":d;""!==b&&(b='<div class="text-center">'+('<img src="'+b+'" class="loading-rotate" width="250" height="250" />')+"</div>",$(c).html(b));getJSONCDS(a+"?limit="+l+"&page="+k+"&keyword="+f+d).done(function(a){$(c).html(parseHtml(n,l,a,m))})}
function multiPageHelper(a,b,c,n,k,l,f,m,d,g,e){e=void 0===e?"":e;""!==c&&(c='<div class="text-center">'+('<img src="'+c+'" class="loading-rotate" width="250" height="250" />')+"</div>",$(n).html(c));$(k).html("");getJSONCDS(b+"?limit="+m+"&page="+f+"&keyword="+d+e).done(function(e){var b=!1,c="",d=e.pageCount,m=e.pageResults,h=f+1,q=f-1;var r=f+3;h>d&&(h=d);0==q&&(q=1);1<d&&(b=!0);if(b){5>d?(b=1,r=d):q==f-1?(b=f>=d-2?d-3:f-1,--r):b=f;c+='<button type="button" onclick="'+a+'(1)" class="btn btn-danger">\u00ab</button>';
c+='<button type="button" onclick="'+a+"("+q+')" class="btn btn-danger">\u2039</button>';for(i=b;i<=r;i++)i<=d&&(c+='<button type="button" onclick="'+a+"("+i+')" '+(i==f?'style="background-color: #c82333;"':"")+'class="btn btn-danger">'+i+"</button>");c+='<button type="button" onclick="'+a+"("+h+')" class="btn btn-danger">\u203a</button>';c+='<button type="button" onclick="'+a+"("+d+')" class="btn btn-danger">\u00bb</button>'}$(n).html(parseHtml(l,m,e,g));$(k).html(c)})}
var Comments=function(a,b,c,n,k,l,f,m,d){this.assetid=a;this.commentsid=b;this.commentscontainer=c;this.buttonscontainer=n;this.successid=k;this.errorid=l;this.inputid=f;this.messageDelay=m;this.newObject=d;var g=this;getJSONCDS("https://api.alphaland.cc/game/info?id="+this.assetid).done(function(a){a.CommentsEnabled&&($(g.commentsid).show(),g.commentsPage())})};
Comments.prototype.commentsPage=function(a){multiPageHelper(this.newObject+".commentsPage","https://api.alphaland.cc/comments/","https://api.alphaland.cc/logo",this.commentscontainer,this.buttonscontainer,'<div class="row mb-2"><div class="card w-100"><div class="card-body"><h6>Comment by <a class="red-a" href="/profile/view?id={userid}">{username}</a> : <a style="color:grey;">{date}</a></h6><div class="row marg-bot-15"><div class="col-sm-1"><a href="/profile/view?id={userid}"><img class="card-img-top marg-bot-15" src="{thumbnail}" style="width:4rem;border-radius:100%;"></a></div><div class="col-sm" style="overflow:hidden;"><p>{comment}</p></div></div></div></div></div>',
void 0===a?1:a,10,"","No comments","&assetId="+this.assetid)};Comments.prototype.submitComment=function(a){var b=this;postJSONCDS("https://api.alphaland.cc/comments/newcomment?assetId="+this.assetid,JSON.stringify({comment:a})).done(function(a){a=a.alert;var c=b.errorid;"Comment Placed"==a&&(c=b.successid,$(b.inputid).val(""),b.commentsPage());$(c).text(a);$(c).show();window.scrollTo({top:0,behavior:"smooth"});setTimeout(function(){$(c).hide()},b.messageDelay)})};