//On document load $( function() { var loadMenu = function() { $.ajax({ url: 'makeCache.php', type: 'GET', dataType: 'html', async: false }); $.ajax({ url: 'menu.inc.php', type: 'GET', dataType: 'html', async: false, success: function(data) { var ap = $( $('#menu > h1')[0] ); if( ap.next().is( '#modules' ) ) { ap.next().remove(); $(data).insertAfter( ap ); } else { $(data).insertAfter( ap ); } } }); } loadMenu(); /** *** Styling and dimensions **/ if (parseInt(navigator.appVersion)>3) { if (navigator.appName=="Netscape") { var winW = window.innerWidth; var winH = window.innerHeight; } if (navigator.appName.indexOf("Microsoft")!=-1) { var winW = document.body.offsetWidth; var winH = document.body.offsetHeight; } } $('#workarea,#menu,#main').css('minHeight', winH-80 ); $('#menu > ul > li > ul').slideUp(0); $('#menu > ul > li > a').click( function(){ $(this).next().slideToggle(400);} ) /* Make window prototype */ var winpMinMax = $('
 
'); var winpClose = $('
 
'); var winpResize = $('
 
'); var winpTitle = $('
').append('

'); var winpBot = $('
'); var winpTop = $('
').append( winpTitle ).append( winpMinMax ).append( winpClose); var winpBottom = $('
').append( winpBot ); var winpClient = $('
'); var winProto = $('
').append( winpTop ).append( winpBottom ).append( winpClient ).append( winpResize ); /* Bind Events *************** */ /* Misc controls */ $('#refreshMods').click( function() { loadMenu(); } ); $('#closeWins').click( function() { $('.window .winClose').click(); }); $('#toggleWins').click( function() { $('.window .winMinMax').click(); }); /* Bind module load events */ $('.modlink a').bind('click', function() { if( !$(this).is('.loaded') ) { $(this).toggleClass('loaded'); var plug = $(this).parent('ul').prev('a').text(); var mod = $(this).text(); var mLink = this; $.ajax({ url: 'loadModule.php', data: 'mod=' + mod, type: 'POST', dataType: 'json', global: false, success: function(data) { if(data.e == 1) { //alert(winProto.html()); var winClone = winProto.clone(); winClone.modLink = mLink; $('.winClient',winClone).html( data.t ); $('.winTitle h2',winClone).text( data.m ); $('.winClose',winClone).bind( 'click', function() { $(winClone).hide().remove(); $(winClone.modLink).removeClass('loaded'); }); $('.winMinMax', winClone).toggle( function() { $(winClone)[0].lastH = $.iUtil.getSize( $('.winClient',winClone).get(0) ).hb; $(winClone)[0].isMinimized = true; $('.winMinMax', winClone).css('background-position', '-13px 0px'); $('.winResize', winClone).css('display', 'none'); $(winClone).animate({height: 45}, 300); $('.winBottom, .winBot', winClone).animate({height: 15}, 300); $('.winClient', winClone).slideUp(300); }, function() { $(winClone)[0].isMinimized = false; $('.winMinMax', winClone).css('background-position', '0px 0px'); $('.winResize', winClone).css('display', 'block'); $(winClone).animate({height: $(winClone)[0].lastH + 43}, 300); $('.winBottom, .winBot', winClone).animate({height: $(winClone)[0].lastH + 13}, 300); $('.winClient', winClone).animate({height: $(winClone)[0].lastH - 9}, 300); } ); winClone.Resizable({ width: data.w?data.w:300, height: data.h?data.h:400, minWidth: data.mnw?data.w:150, minHeight: data.mnh?data.h:80, maxWidth: data.mxw?data.w:1000, maxHeight: data.mxh?data.w:1000, handlers: { se: $(".winResize",winClone)[0] }, onResize : function(size, position) { $('.winBottom, .winBot',winClone).css('height', size.height-31 + 'px'); var winClientEl = $('.winClient',winClone).css('width', size.width - 25 + 'px'); if (! $(winClone).isMinimized ) { winClientEl.css('height', size.height - 48 + 'px'); } } }).Draggable({ ghosting: false, opacity: 0.5, handle: '.winTitle' }).attr('id', data.m + '_w').appendTo('#workarea').show(); if(data.js.length > 1) { eval(data.js); } } else { $('#debug').prepend( data.e + "
"); } } }); } }); });