// JavaScript Document //Harry Bomrah var orbitDesktopAPI = function(){ o = this; this.notify = function(msg,type,time){ var $notify = $("#orbitnote"); var img, n_height; if(!type)type=""; switch(type){ case "alert": img = "note_alert.png"; break; case "imp": img = "note_imp.png"; break; case "success": img = "note_success.png"; break; default: img = "note_alert.png"; break; } $notify.find("img#note_img").attr("src",o.notifyImgPath+img); $notify.find(".note_message").text(msg); n_height = $notify.outerHeight(); if(!time)time=5000; else time=time*1000; $notify .css({'top':-n_height, 'display':'block', 'opacity':0}) .animate({top:0,opacity:1},200) .delay(time) .animate({top:-n_height,opacity:0},200); }; this.executeFunc = function(func,callbackFn){ func.call(this); if(callbackFn){ callbackFn.call(this,func); } }; this.sortJSON = function(field, reverse, primer){ var key = function (x) {return primer ? primer(x[field]) : x[field]}; return function (a,b) { var A = key(a), B = key(b); return ((A < B) ? -1 : (A > B) ? +1 : 0) * [-1,1][+!!reverse]; } }; this.rgb2hex = function(rgb) { rgb = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/); var hex = function(x) { return ("0" + parseInt(x).toString(16)).slice(-2); } return "#" + hex(rgb[1]) + hex(rgb[2]) + hex(rgb[3]); }; this.changeWallpaper = function(wallpaper){ $("img#thmbackground").attr("src",o.wallpaperPath+wallpaper); o.saveWallpaper(wallpaper); }; this.confirm = function(settings,callbackfn){ if(!settings.buttons)settings.buttons=["Ok","Cancel"]; if(settings.highlighted!=1 && settings.highlighted!=2)settings.highlighted=2; if(!settings.message)settings.message = "Are you sure?" var $confirm = $("#orbitdiag"); $confirm.find(".diag_action a").removeClass("thmc1 thmtxt").addClass("admbg admtxt"); $confirm.find(".diag_message").text(settings.message); if(settings.highlighted == 1) $confirm.find("#diag_confirm").removeClass("admbg admtxt").addClass("thmc1 thmtxt"); if(settings.highlighted == 2) $confirm.find("#diag_cancel").removeClass("admbg admtxt").addClass("thmc1 thmtxt"); $confirm.find("#diag_confirm").text(settings.buttons[0]).one("click",function(){ $confirm.stop(1,1).fadeOut(); $confirm.find(".diag_action a").unbind(); if(typeof callbackfn=="function") callbackfn.call(this,true); }); $confirm.find("#diag_cancel").text(settings.buttons[1]).one("click",function(){ $confirm.stop(1,1).fadeOut(); $confirm.find(".diag_action a").unbind(); if(typeof callbackfn=="function") callbackfn.call(this,false); }); $confirm.stop(1,1).fadeIn(); }; }; orbitDesktopAPI.prototype.notifyImgPath = "temp"; orbitDesktopAPI.prototype.wallpaperPath = "temp";