stackapplet-1.5.2/0000775000175000017500000000000012333054162014577 5ustar nathannathan00000000000000stackapplet-1.5.2/html/0000775000175000017500000000000012333054162015543 5ustar nathannathan00000000000000stackapplet-1.5.2/html/translations.js0000664000175000017500000000514712332345454020637 0ustar nathannathan00000000000000//====================================== // translations.js // Manages translations and implements // them in HTML and JavaScript //====================================== // The Translator object is responsible for managing // translations and returning the proper translations // given a 'key' which is typically the English translation. var Translator = { // Storage variables translation_table: null, // Loads the translations from the given // URL using JSON LoadTranslation: function(url, callback, method) { // Make the request to the URL. var request = new XMLHttpRequest(); request.open((typeof method == 'undefined')?'GET':method, url, true); // Set the handler for the response request.onreadystatechange = function() { if(request.readyState == 4) { // Convert the response text into JSON // data. try { Translator.translation_table = JSON.parse(request.responseText); // Everything has succeeded, so call the callback // with the param. 'true'. callback(true); } catch(exception) { // Something went wrong, so call the callback // specifying 'false' to indicate an error. callback(false); } } }; // Now send off the request. request.send(); }, // Gets the translation for a given key GetTranslation: function(key) { if(Translator.translation_table == null) return key; return (typeof Translator.translation_table[key] == 'undefined')?key:Translator.translation_table[key]; }, // This function makes it easy to assign translations // to DOM elements by simply providing their ID as a key. AssignToDOM: function() { // Loop through the keys in the translation // table. for(var key in Translator.translation_table) { // Eat the '#' if present. if(key[0] == '#') key = key.substr(1); var element = document.getElementById(key); if(element != null) element.innerHTML = Translator.translation_table[key]; } } }; // For convenience's sake, we assign the function '_' // to the function Translator::GetTranslation _ = Translator.GetTranslation; stackapplet-1.5.2/html/index.html0000664000175000017500000004732012332621415017546 0ustar nathannathan00000000000000 StackApplet Preferences

  




 




[] []

stackapplet-1.5.2/html/jqueryui.js0000664000175000017500000016752712332345454020006 0ustar nathannathan00000000000000/*! * jQuery UI 1.8.12 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) * Dual licensed under the MIT or GPL Version 2 licenses. * http://jquery.org/license * * http://docs.jquery.com/UI */ (function(c,j){function k(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.12",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106, NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});c.fn.extend({_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d=this;setTimeout(function(){c(d).focus();b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this, "position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position"); if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,l,m){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(l)g-=parseFloat(c.curCSS(f, "border"+this+"Width",true))||0;if(m)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight,outerWidth:c.fn.outerWidth,outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h, d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){var b=a.nodeName.toLowerCase(),d=c.attr(a,"tabindex");if("area"===b){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&k(a)}return(/input|select|textarea|button|object/.test(b)?!a.disabled:"a"==b?a.href||!isNaN(d):!isNaN(d))&&k(a)},tabbable:function(a){var b=c.attr(a,"tabindex");return(isNaN(b)||b>=0)&&c(a).is(":focusable")}}); c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&&a.element[0].parentNode)for(var e=0;e0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a=9)&&!a.button)return this._mouseUp(a);if(this._mouseStarted){this._mouseDrag(a);return a.preventDefault()}if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,a)!==false)?this._mouseDrag(a):this._mouseUp(a);return!this._mouseStarted},_mouseUp:function(a){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate); if(this._mouseStarted){this._mouseStarted=false;a.target==this._mouseDownEvent.target&&b.data(a.target,this.widgetName+".preventClickEvent",true);this._mouseStop(a)}return false},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery); ;/* * jQuery UI Position 1.8.12 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) * Dual licensed under the MIT or GPL Version 2 licenses. * http://jquery.org/license * * http://docs.jquery.com/UI/Position */ (function(c){c.ui=c.ui||{};var n=/left|center|right/,o=/top|center|bottom/,t=c.fn.position,u=c.fn.offset;c.fn.position=function(b){if(!b||!b.of)return t.apply(this,arguments);b=c.extend({},b);var a=c(b.of),d=a[0],g=(b.collision||"flip").split(" "),e=b.offset?b.offset.split(" "):[0,0],h,k,j;if(d.nodeType===9){h=a.width();k=a.height();j={top:0,left:0}}else if(d.setTimeout){h=a.width();k=a.height();j={top:a.scrollTop(),left:a.scrollLeft()}}else if(d.preventDefault){b.at="left top";h=k=0;j={top:b.of.pageY, left:b.of.pageX}}else{h=a.outerWidth();k=a.outerHeight();j=a.offset()}c.each(["my","at"],function(){var f=(b[this]||"").split(" ");if(f.length===1)f=n.test(f[0])?f.concat(["center"]):o.test(f[0])?["center"].concat(f):["center","center"];f[0]=n.test(f[0])?f[0]:"center";f[1]=o.test(f[1])?f[1]:"center";b[this]=f});if(g.length===1)g[1]=g[0];e[0]=parseInt(e[0],10)||0;if(e.length===1)e[1]=e[0];e[1]=parseInt(e[1],10)||0;if(b.at[0]==="right")j.left+=h;else if(b.at[0]==="center")j.left+=h/2;if(b.at[1]==="bottom")j.top+= k;else if(b.at[1]==="center")j.top+=k/2;j.left+=e[0];j.top+=e[1];return this.each(function(){var f=c(this),l=f.outerWidth(),m=f.outerHeight(),p=parseInt(c.curCSS(this,"marginLeft",true))||0,q=parseInt(c.curCSS(this,"marginTop",true))||0,v=l+p+(parseInt(c.curCSS(this,"marginRight",true))||0),w=m+q+(parseInt(c.curCSS(this,"marginBottom",true))||0),i=c.extend({},j),r;if(b.my[0]==="right")i.left-=l;else if(b.my[0]==="center")i.left-=l/2;if(b.my[1]==="bottom")i.top-=m;else if(b.my[1]==="center")i.top-= m/2;i.left=Math.round(i.left);i.top=Math.round(i.top);r={left:i.left-p,top:i.top-q};c.each(["left","top"],function(s,x){c.ui.position[g[s]]&&c.ui.position[g[s]][x](i,{targetWidth:h,targetHeight:k,elemWidth:l,elemHeight:m,collisionPosition:r,collisionWidth:v,collisionHeight:w,offset:e,my:b.my,at:b.at})});c.fn.bgiframe&&f.bgiframe();f.offset(c.extend(i,{using:b.using}))})};c.ui.position={fit:{left:function(b,a){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();b.left= d>0?b.left-d:Math.max(b.left-a.collisionPosition.left,b.left)},top:function(b,a){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();b.top=d>0?b.top-d:Math.max(b.top-a.collisionPosition.top,b.top)}},flip:{left:function(b,a){if(a.at[0]!=="center"){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();var g=a.my[0]==="left"?-a.elemWidth:a.my[0]==="right"?a.elemWidth:0,e=a.at[0]==="left"?a.targetWidth:-a.targetWidth,h=-2*a.offset[0];b.left+= a.collisionPosition.left<0?g+e+h:d>0?g+e+h:0}},top:function(b,a){if(a.at[1]!=="center"){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();var g=a.my[1]==="top"?-a.elemHeight:a.my[1]==="bottom"?a.elemHeight:0,e=a.at[1]==="top"?a.targetHeight:-a.targetHeight,h=-2*a.offset[1];b.top+=a.collisionPosition.top<0?g+e+h:d>0?g+e+h:0}}}};if(!c.offset.setOffset){c.offset.setOffset=function(b,a){if(/static/.test(c.curCSS(b,"position")))b.style.position="relative";var d=c(b), g=d.offset(),e=parseInt(c.curCSS(b,"top",true),10)||0,h=parseInt(c.curCSS(b,"left",true),10)||0;g={top:a.top-g.top+e,left:a.left-g.left+h};"using"in a?a.using.call(b,g):d.css(g)};c.fn.offset=function(b){var a=this[0];if(!a||!a.ownerDocument)return null;if(b)return this.each(function(){c.offset.setOffset(this,b)});return u.call(this)}}})(jQuery); ;/* * jQuery UI Sortable 1.8.12 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) * Dual licensed under the MIT or GPL Version 2 licenses. * http://jquery.org/license * * http://docs.jquery.com/UI/Sortables * * Depends: * jquery.ui.core.js * jquery.ui.mouse.js * jquery.ui.widget.js */ (function(d){d.widget("ui.sortable",d.ui.mouse,{widgetEventPrefix:"sort",options:{appendTo:"parent",axis:false,connectWith:false,containment:false,cursor:"auto",cursorAt:false,dropOnEmpty:true,forcePlaceholderSize:false,forceHelperSize:false,grid:false,handle:false,helper:"original",items:"> *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1E3},_create:function(){this.containerCache={};this.element.addClass("ui-sortable"); this.refresh();this.floating=this.items.length?/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):false;this.offset=this.element.offset();this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData("sortable-item");return this},_setOption:function(a,b){if(a==="disabled"){this.options[a]= b;this.widget()[b?"addClass":"removeClass"]("ui-sortable-disabled")}else d.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(a,b){if(this.reverting)return false;if(this.options.disabled||this.options.type=="static")return false;this._refreshItems(a);var c=null,e=this;d(a.target).parents().each(function(){if(d.data(this,"sortable-item")==e){c=d(this);return false}});if(d.data(a.target,"sortable-item")==e)c=d(a.target);if(!c)return false;if(this.options.handle&&!b){var f=false; d(this.options.handle,c).find("*").andSelf().each(function(){if(this==a.target)f=true});if(!f)return false}this.currentItem=c;this._removeCurrentsFromItems();return true},_mouseStart:function(a,b,c){b=this.options;var e=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(a);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left- this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]}; this.helper[0]!=this.currentItem[0]&&this.currentItem.hide();this._createPlaceholder();b.containment&&this._setContainment();if(b.cursor){if(d("body").css("cursor"))this._storedCursor=d("body").css("cursor");d("body").css("cursor",b.cursor)}if(b.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",b.opacity)}if(b.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",b.zIndex)}if(this.scrollParent[0]!= document&&this.scrollParent[0].tagName!="HTML")this.overflowOffset=this.scrollParent.offset();this._trigger("start",a,this._uiHash());this._preserveHelperProportions||this._cacheHelperProportions();if(!c)for(c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("activate",a,e._uiHash(this));if(d.ui.ddmanager)d.ui.ddmanager.current=this;d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(a); return true},_mouseDrag:function(a){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs)this.lastPositionAbs=this.positionAbs;if(this.options.scroll){var b=this.options,c=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if(this.overflowOffset.top+this.scrollParent[0].offsetHeight-a.pageY=0;b--){c=this.items[b];var e=c.item[0],f=this._intersectsWithPointer(c);if(f)if(e!=this.currentItem[0]&&this.placeholder[f==1?"next":"prev"]()[0]!=e&&!d.ui.contains(this.placeholder[0],e)&&(this.options.type=="semi-dynamic"?!d.ui.contains(this.element[0], e):true)){this.direction=f==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(c))this._rearrange(a,c);else break;this._trigger("change",a,this._uiHash());break}}this._contactContainers(a);d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);this._trigger("sort",a,this._uiHash());this.lastPositionAbs=this.positionAbs;return false},_mouseStop:function(a,b){if(a){d.ui.ddmanager&&!this.options.dropBehaviour&&d.ui.ddmanager.drop(this,a);if(this.options.revert){var c=this;b=c.placeholder.offset(); c.reverting=true;d(this.helper).animate({left:b.left-this.offset.parent.left-c.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:b.top-this.offset.parent.top-c.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){c._clear(a)})}else this._clear(a,b);return false}},cancel:function(){var a=this;if(this.dragging){this._mouseUp({target:null});this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"): this.currentItem.show();for(var b=this.containers.length-1;b>=0;b--){this.containers[b]._trigger("deactivate",null,a._uiHash(this));if(this.containers[b].containerCache.over){this.containers[b]._trigger("out",null,a._uiHash(this));this.containers[b].containerCache.over=0}}}if(this.placeholder){this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove();d.extend(this,{helper:null, dragging:false,reverting:false,_noFinalSort:null});this.domPosition.prev?d(this.domPosition.prev).after(this.currentItem):d(this.domPosition.parent).prepend(this.currentItem)}return this},serialize:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};d(b).each(function(){var e=(d(a.item||this).attr(a.attribute||"id")||"").match(a.expression||/(.+)[-=_](.+)/);if(e)c.push((a.key||e[1]+"[]")+"="+(a.key&&a.expression?e[1]:e[2]))});!c.length&&a.key&&c.push(a.key+"=");return c.join("&")}, toArray:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};b.each(function(){c.push(d(a.item||this).attr(a.attribute||"id")||"")});return c},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,e=this.positionAbs.top,f=e+this.helperProportions.height,g=a.left,h=g+a.width,i=a.top,k=i+a.height,j=this.offset.click.top,l=this.offset.click.left;j=e+j>i&&e+jg&&b+la[this.floating?"width":"height"]?j:g0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return a!=0&&(a>0?"right":"left")},refresh:function(a){this._refreshItems(a);this.refreshPositions();return this},_connectWith:function(){var a=this.options;return a.connectWith.constructor==String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(a){var b=[],c=[],e=this._connectWith(); if(e&&a)for(a=e.length-1;a>=0;a--)for(var f=d(e[a]),g=f.length-1;g>=0;g--){var h=d.data(f[g],"sortable");if(h&&h!=this&&!h.options.disabled)c.push([d.isFunction(h.options.items)?h.options.items.call(h.element):d(h.options.items,h.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),h])}c.push([d.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):d(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"), this]);for(a=c.length-1;a>=0;a--)c[a][0].each(function(){b.push(this)});return d(b)},_removeCurrentsFromItems:function(){for(var a=this.currentItem.find(":data(sortable-item)"),b=0;b=0;f--)for(var g=d(e[f]),h=g.length-1;h>=0;h--){var i=d.data(g[h],"sortable");if(i&&i!=this&&!i.options.disabled){c.push([d.isFunction(i.options.items)?i.options.items.call(i.element[0],a,{item:this.currentItem}):d(i.options.items,i.element),i]);this.containers.push(i)}}for(f=c.length-1;f>=0;f--){a=c[f][1];e=c[f][0];h=0;for(g=e.length;h=0;b--){var c=this.items[b];if(!(c.instance!=this.currentContainer&&this.currentContainer&&c.item[0]!=this.currentItem[0])){var e=this.options.toleranceElement?d(this.options.toleranceElement,c.item):c.item;if(!a){c.width=e.outerWidth();c.height=e.outerHeight()}e=e.offset();c.left=e.left;c.top=e.top}}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(b= this.containers.length-1;b>=0;b--){e=this.containers[b].element.offset();this.containers[b].containerCache.left=e.left;this.containers[b].containerCache.top=e.top;this.containers[b].containerCache.width=this.containers[b].element.outerWidth();this.containers[b].containerCache.height=this.containers[b].element.outerHeight()}return this},_createPlaceholder:function(a){var b=a||this,c=b.options;if(!c.placeholder||c.placeholder.constructor==String){var e=c.placeholder;c.placeholder={element:function(){var f= d(document.createElement(b.currentItem[0].nodeName)).addClass(e||b.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!e)f.style.visibility="hidden";return f},update:function(f,g){if(!(e&&!c.forcePlaceholderSize)){g.height()||g.height(b.currentItem.innerHeight()-parseInt(b.currentItem.css("paddingTop")||0,10)-parseInt(b.currentItem.css("paddingBottom")||0,10));g.width()||g.width(b.currentItem.innerWidth()-parseInt(b.currentItem.css("paddingLeft")||0,10)-parseInt(b.currentItem.css("paddingRight")|| 0,10))}}}}b.placeholder=d(c.placeholder.element.call(b.element,b.currentItem));b.currentItem.after(b.placeholder);c.placeholder.update(b,b.placeholder)},_contactContainers:function(a){for(var b=null,c=null,e=this.containers.length-1;e>=0;e--)if(!d.ui.contains(this.currentItem[0],this.containers[e].element[0]))if(this._intersectsWith(this.containers[e].containerCache)){if(!(b&&d.ui.contains(this.containers[e].element[0],b.element[0]))){b=this.containers[e];c=e}}else if(this.containers[e].containerCache.over){this.containers[e]._trigger("out", a,this._uiHash(this));this.containers[e].containerCache.over=0}if(b)if(this.containers.length===1){this.containers[c]._trigger("over",a,this._uiHash(this));this.containers[c].containerCache.over=1}else if(this.currentContainer!=this.containers[c]){b=1E4;e=null;for(var f=this.positionAbs[this.containers[c].floating?"left":"top"],g=this.items.length-1;g>=0;g--)if(d.ui.contains(this.containers[c].element[0],this.items[g].item[0])){var h=this.items[g][this.containers[c].floating?"left":"top"];if(Math.abs(h- f)this.containment[2])f=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g- this.originalPageY)/b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.topthis.containment[3])?g:!(g-this.offset.click.topthis.containment[2])?f:!(f-this.offset.click.left=0;e--)if(d.ui.contains(this.containers[e].element[0],this.currentItem[0])&&!b){c.push(function(f){return function(g){f._trigger("receive",g,this._uiHash(this))}}.call(this,this.containers[e]));c.push(function(f){return function(g){f._trigger("update",g,this._uiHash(this))}}.call(this,this.containers[e]))}}for(e=this.containers.length-1;e>=0;e--){b||c.push(function(f){return function(g){f._trigger("deactivate",g,this._uiHash(this))}}.call(this, this.containers[e]));if(this.containers[e].containerCache.over){c.push(function(f){return function(g){f._trigger("out",g,this._uiHash(this))}}.call(this,this.containers[e]));this.containers[e].containerCache.over=0}}this._storedCursor&&d("body").css("cursor",this._storedCursor);this._storedOpacity&&this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!b){this._trigger("beforeStop", a,this._uiHash());for(e=0;e")).appendTo(document.body).hide().addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+ b.dialogClass).css({zIndex:b.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(i){if(b.closeOnEscape&&i.keyCode&&i.keyCode===c.ui.keyCode.ESCAPE){a.close(i);i.preventDefault()}}).attr({role:"dialog","aria-labelledby":e}).mousedown(function(i){a.moveToTop(false,i)});a.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(g);var f=(a.uiDialogTitlebar=c("
")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g), h=c('').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){h.addClass("ui-state-hover")},function(){h.removeClass("ui-state-hover")}).focus(function(){h.addClass("ui-state-focus")}).blur(function(){h.removeClass("ui-state-focus")}).click(function(i){a.close(i);return false}).appendTo(f);(a.uiDialogTitlebarCloseText=c("")).addClass("ui-icon ui-icon-closethick").text(b.closeText).appendTo(h);c("").addClass("ui-dialog-title").attr("id", e).html(d).prependTo(f);if(c.isFunction(b.beforeclose)&&!c.isFunction(b.beforeClose))b.beforeClose=b.beforeclose;f.find("*").add(f).disableSelection();b.draggable&&c.fn.draggable&&a._makeDraggable();b.resizable&&c.fn.resizable&&a._makeResizable();a._createButtons(b.buttons);a._isOpen=false;c.fn.bgiframe&&g.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var a=this;a.overlay&&a.overlay.destroy();a.uiDialog.hide();a.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body"); a.uiDialog.remove();a.originalTitle&&a.element.attr("title",a.originalTitle);return a},widget:function(){return this.uiDialog},close:function(a){var b=this,d,e;if(false!==b._trigger("beforeClose",a)){b.overlay&&b.overlay.destroy();b.uiDialog.unbind("keypress.ui-dialog");b._isOpen=false;if(b.options.hide)b.uiDialog.hide(b.options.hide,function(){b._trigger("close",a)});else{b.uiDialog.hide();b._trigger("close",a)}c.ui.dialog.overlay.resize();if(b.options.modal){d=0;c(".ui-dialog").each(function(){if(this!== b.uiDialog[0]){e=c(this).css("z-index");isNaN(e)||(d=Math.max(d,e))}});c.ui.dialog.maxZ=d}return b}},isOpen:function(){return this._isOpen},moveToTop:function(a,b){var d=this,e=d.options;if(e.modal&&!a||!e.stack&&!e.modal)return d._trigger("focus",b);if(e.zIndex>c.ui.dialog.maxZ)c.ui.dialog.maxZ=e.zIndex;if(d.overlay){c.ui.dialog.maxZ+=1;d.overlay.$el.css("z-index",c.ui.dialog.overlay.maxZ=c.ui.dialog.maxZ)}a={scrollTop:d.element.attr("scrollTop"),scrollLeft:d.element.attr("scrollLeft")};c.ui.dialog.maxZ+= 1;d.uiDialog.css("z-index",c.ui.dialog.maxZ);d.element.attr(a);d._trigger("focus",b);return d},open:function(){if(!this._isOpen){var a=this,b=a.options,d=a.uiDialog;a.overlay=b.modal?new c.ui.dialog.overlay(a):null;a._size();a._position(b.position);d.show(b.show);a.moveToTop(true);b.modal&&d.bind("keypress.ui-dialog",function(e){if(e.keyCode===c.ui.keyCode.TAB){var g=c(":tabbable",this),f=g.filter(":first");g=g.filter(":last");if(e.target===g[0]&&!e.shiftKey){f.focus(1);return false}else if(e.target=== f[0]&&e.shiftKey){g.focus(1);return false}}});c(a.element.find(":tabbable").get().concat(d.find(".ui-dialog-buttonpane :tabbable").get().concat(d.get()))).eq(0).focus();a._isOpen=true;a._trigger("open");return a}},_createButtons:function(a){var b=this,d=false,e=c("
").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),g=c("
").addClass("ui-dialog-buttonset").appendTo(e);b.uiDialog.find(".ui-dialog-buttonpane").remove();typeof a==="object"&&a!==null&&c.each(a, function(){return!(d=true)});if(d){c.each(a,function(f,h){h=c.isFunction(h)?{click:h,text:f}:h;var i=c('').click(function(){h.click.apply(b.element[0],arguments)}).appendTo(g);c.each(h,function(j,k){if(j!=="click")j in o?i[j](k):i.attr(j,k)});c.fn.button&&i.button()});e.appendTo(b.uiDialog)}},_makeDraggable:function(){function a(f){return{position:f.position,offset:f.offset}}var b=this,d=b.options,e=c(document),g;b.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close", handle:".ui-dialog-titlebar",containment:"document",start:function(f,h){g=d.height==="auto"?"auto":c(this).height();c(this).height(c(this).height()).addClass("ui-dialog-dragging");b._trigger("dragStart",f,a(h))},drag:function(f,h){b._trigger("drag",f,a(h))},stop:function(f,h){d.position=[h.position.left-e.scrollLeft(),h.position.top-e.scrollTop()];c(this).removeClass("ui-dialog-dragging").height(g);b._trigger("dragStop",f,a(h));c.ui.dialog.overlay.resize()}})},_makeResizable:function(a){function b(f){return{originalPosition:f.originalPosition, originalSize:f.originalSize,position:f.position,size:f.size}}a=a===l?this.options.resizable:a;var d=this,e=d.options,g=d.uiDialog.css("position");a=typeof a==="string"?a:"n,e,s,w,se,sw,ne,nw";d.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:d.element,maxWidth:e.maxWidth,maxHeight:e.maxHeight,minWidth:e.minWidth,minHeight:d._minHeight(),handles:a,start:function(f,h){c(this).addClass("ui-dialog-resizing");d._trigger("resizeStart",f,b(h))},resize:function(f,h){d._trigger("resize", f,b(h))},stop:function(f,h){c(this).removeClass("ui-dialog-resizing");e.height=c(this).height();e.width=c(this).width();d._trigger("resizeStop",f,b(h));c.ui.dialog.overlay.resize()}}).css("position",g).find(".ui-resizable-se").addClass("ui-icon ui-icon-grip-diagonal-se")},_minHeight:function(){var a=this.options;return a.height==="auto"?a.minHeight:Math.min(a.minHeight,a.height)},_position:function(a){var b=[],d=[0,0],e;if(a){if(typeof a==="string"||typeof a==="object"&&"0"in a){b=a.split?a.split(" "): [a[0],a[1]];if(b.length===1)b[1]=b[0];c.each(["left","top"],function(g,f){if(+b[g]===b[g]){d[g]=b[g];b[g]=f}});a={my:b.join(" "),at:b.join(" "),offset:d.join(" ")}}a=c.extend({},c.ui.dialog.prototype.options.position,a)}else a=c.ui.dialog.prototype.options.position;(e=this.uiDialog.is(":visible"))||this.uiDialog.show();this.uiDialog.css({top:0,left:0}).position(c.extend({of:window},a));e||this.uiDialog.hide()},_setOptions:function(a){var b=this,d={},e=false;c.each(a,function(g,f){b._setOption(g,f); if(g in m)e=true;if(g in n)d[g]=f});e&&this._size();this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",d)},_setOption:function(a,b){var d=this,e=d.uiDialog;switch(a){case "beforeclose":a="beforeClose";break;case "buttons":d._createButtons(b);break;case "closeText":d.uiDialogTitlebarCloseText.text(""+b);break;case "dialogClass":e.removeClass(d.options.dialogClass).addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+b);break;case "disabled":b?e.addClass("ui-dialog-disabled"): e.removeClass("ui-dialog-disabled");break;case "draggable":var g=e.is(":data(draggable)");g&&!b&&e.draggable("destroy");!g&&b&&d._makeDraggable();break;case "position":d._position(b);break;case "resizable":(g=e.is(":data(resizable)"))&&!b&&e.resizable("destroy");g&&typeof b==="string"&&e.resizable("option","handles",b);!g&&b!==false&&d._makeResizable(b);break;case "title":c(".ui-dialog-title",d.uiDialogTitlebar).html(""+(b||" "));break}c.Widget.prototype._setOption.apply(d,arguments)},_size:function(){var a= this.options,b,d,e=this.uiDialog.is(":visible");this.element.show().css({width:"auto",minHeight:0,height:0});if(a.minWidth>a.width)a.width=a.minWidth;b=this.uiDialog.css({height:"auto",width:a.width}).height();d=Math.max(0,a.minHeight-b);if(a.height==="auto")if(c.support.minHeight)this.element.css({minHeight:d,height:"auto"});else{this.uiDialog.show();a=this.element.css("height","auto").height();e||this.uiDialog.hide();this.element.height(Math.max(a,d))}else this.element.height(Math.max(a.height- b,0));this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())}});c.extend(c.ui.dialog,{version:"1.8.12",uuid:0,maxZ:0,getTitleId:function(a){a=a.attr("id");if(!a){this.uuid+=1;a=this.uuid}return"ui-dialog-title-"+a},overlay:function(a){this.$el=c.ui.dialog.overlay.create(a)}});c.extend(c.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:c.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(a){return a+".dialog-overlay"}).join(" "), create:function(a){if(this.instances.length===0){setTimeout(function(){c.ui.dialog.overlay.instances.length&&c(document).bind(c.ui.dialog.overlay.events,function(d){if(c(d.target).zIndex()").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(), height:this.height()});c.fn.bgiframe&&b.bgiframe();this.instances.push(b);return b},destroy:function(a){var b=c.inArray(a,this.instances);b!=-1&&this.oldInstances.push(this.instances.splice(b,1)[0]);this.instances.length===0&&c([document,window]).unbind(".dialog-overlay");a.remove();var d=0;c.each(this.instances,function(){d=Math.max(d,this.css("z-index"))});this.maxZ=d},height:function(){var a,b;if(c.browser.msie&&c.browser.version<7){a=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight); b=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);return a",remove:null,select:null,show:null,spinner:"Loading…",tabTemplate:"
  • #{label}
  • "},_create:function(){this._tabify(true)},_setOption:function(b,e){if(b=="selected")this.options.collapsible&& e==this.options.selected||this.select(e);else{this.options[b]=e;this._tabify()}},_tabId:function(b){return b.title&&b.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+u()},_sanitizeSelector:function(b){return b.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+w());return d.cookie.apply(null,[b].concat(d.makeArray(arguments)))},_ui:function(b,e){return{tab:b,panel:e,index:this.anchors.index(b)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var b= d(this);b.html(b.data("label.tabs")).removeData("label.tabs")})},_tabify:function(b){function e(g,f){g.css("display","");!d.support.opacity&&f.opacity&&g[0].style.removeAttribute("filter")}var a=this,c=this.options,h=/^#.+/;this.list=this.element.find("ol,ul").eq(0);this.lis=d(" > li:has(a[href])",this.list);this.anchors=this.lis.map(function(){return d("a",this)[0]});this.panels=d([]);this.anchors.each(function(g,f){var i=d(f).attr("href"),l=i.split("#")[0],q;if(l&&(l===location.toString().split("#")[0]|| (q=d("base")[0])&&l===q.href)){i=f.hash;f.href=i}if(h.test(i))a.panels=a.panels.add(a.element.find(a._sanitizeSelector(i)));else if(i&&i!=="#"){d.data(f,"href.tabs",i);d.data(f,"load.tabs",i.replace(/#.*$/,""));i=a._tabId(f);f.href="#"+i;f=a.element.find("#"+i);if(!f.length){f=d(c.panelTemplate).attr("id",i).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(a.panels[g-1]||a.list);f.data("destroy.tabs",true)}a.panels=a.panels.add(f)}else c.disabled.push(g)});if(b){this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all"); this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.lis.addClass("ui-state-default ui-corner-top");this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom");if(c.selected===p){location.hash&&this.anchors.each(function(g,f){if(f.hash==location.hash){c.selected=g;return false}});if(typeof c.selected!=="number"&&c.cookie)c.selected=parseInt(a._cookie(),10);if(typeof c.selected!=="number"&&this.lis.filter(".ui-tabs-selected").length)c.selected= this.lis.index(this.lis.filter(".ui-tabs-selected"));c.selected=c.selected||(this.lis.length?0:-1)}else if(c.selected===null)c.selected=-1;c.selected=c.selected>=0&&this.anchors[c.selected]||c.selected<0?c.selected:0;c.disabled=d.unique(c.disabled.concat(d.map(this.lis.filter(".ui-state-disabled"),function(g){return a.lis.index(g)}))).sort();d.inArray(c.selected,c.disabled)!=-1&&c.disabled.splice(d.inArray(c.selected,c.disabled),1);this.panels.addClass("ui-tabs-hide");this.lis.removeClass("ui-tabs-selected ui-state-active"); if(c.selected>=0&&this.anchors.length){a.element.find(a._sanitizeSelector(a.anchors[c.selected].hash)).removeClass("ui-tabs-hide");this.lis.eq(c.selected).addClass("ui-tabs-selected ui-state-active");a.element.queue("tabs",function(){a._trigger("show",null,a._ui(a.anchors[c.selected],a.element.find(a._sanitizeSelector(a.anchors[c.selected].hash))[0]))});this.load(c.selected)}d(window).bind("unload",function(){a.lis.add(a.anchors).unbind(".tabs");a.lis=a.anchors=a.panels=null})}else c.selected=this.lis.index(this.lis.filter(".ui-tabs-selected")); this.element[c.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible");c.cookie&&this._cookie(c.selected,c.cookie);b=0;for(var j;j=this.lis[b];b++)d(j)[d.inArray(b,c.disabled)!=-1&&!d(j).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled");c.cache===false&&this.anchors.removeData("cache.tabs");this.lis.add(this.anchors).unbind(".tabs");if(c.event!=="mouseover"){var k=function(g,f){f.is(":not(.ui-state-disabled)")&&f.addClass("ui-state-"+g)},n=function(g,f){f.removeClass("ui-state-"+ g)};this.lis.bind("mouseover.tabs",function(){k("hover",d(this))});this.lis.bind("mouseout.tabs",function(){n("hover",d(this))});this.anchors.bind("focus.tabs",function(){k("focus",d(this).closest("li"))});this.anchors.bind("blur.tabs",function(){n("focus",d(this).closest("li"))})}var m,o;if(c.fx)if(d.isArray(c.fx)){m=c.fx[0];o=c.fx[1]}else m=o=c.fx;var r=o?function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.hide().removeClass("ui-tabs-hide").animate(o,o.duration||"normal", function(){e(f,o);a._trigger("show",null,a._ui(g,f[0]))})}:function(g,f){d(g).closest("li").addClass("ui-tabs-selected ui-state-active");f.removeClass("ui-tabs-hide");a._trigger("show",null,a._ui(g,f[0]))},s=m?function(g,f){f.animate(m,m.duration||"normal",function(){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");e(f,m);a.element.dequeue("tabs")})}:function(g,f){a.lis.removeClass("ui-tabs-selected ui-state-active");f.addClass("ui-tabs-hide");a.element.dequeue("tabs")}; this.anchors.bind(c.event+".tabs",function(){var g=this,f=d(g).closest("li"),i=a.panels.filter(":not(.ui-tabs-hide)"),l=a.element.find(a._sanitizeSelector(g.hash));if(f.hasClass("ui-tabs-selected")&&!c.collapsible||f.hasClass("ui-state-disabled")||f.hasClass("ui-state-processing")||a.panels.filter(":animated").length||a._trigger("select",null,a._ui(this,l[0]))===false){this.blur();return false}c.selected=a.anchors.index(this);a.abort();if(c.collapsible)if(f.hasClass("ui-tabs-selected")){c.selected= -1;c.cookie&&a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){s(g,i)}).dequeue("tabs");this.blur();return false}else if(!i.length){c.cookie&&a._cookie(c.selected,c.cookie);a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this));this.blur();return false}c.cookie&&a._cookie(c.selected,c.cookie);if(l.length){i.length&&a.element.queue("tabs",function(){s(g,i)});a.element.queue("tabs",function(){r(g,l)});a.load(a.anchors.index(this))}else throw"jQuery UI Tabs: Mismatching fragment identifier."; d.browser.msie&&this.blur()});this.anchors.bind("click.tabs",function(){return false})},_getIndex:function(b){if(typeof b=="string")b=this.anchors.index(this.anchors.filter("[href$="+b+"]"));return b},destroy:function(){var b=this.options;this.abort();this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs");this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.anchors.each(function(){var e= d.data(this,"href.tabs");if(e)this.href=e;var a=d(this).unbind(".tabs");d.each(["href","load","cache"],function(c,h){a.removeData(h+".tabs")})});this.lis.unbind(".tabs").add(this.panels).each(function(){d.data(this,"destroy.tabs")?d(this).remove():d(this).removeClass("ui-state-default ui-corner-top ui-tabs-selected ui-state-active ui-state-hover ui-state-focus ui-state-disabled ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide")});b.cookie&&this._cookie(null,b.cookie);return this},add:function(b, e,a){if(a===p)a=this.anchors.length;var c=this,h=this.options;e=d(h.tabTemplate.replace(/#\{href\}/g,b).replace(/#\{label\}/g,e));b=!b.indexOf("#")?b.replace("#",""):this._tabId(d("a",e)[0]);e.addClass("ui-state-default ui-corner-top").data("destroy.tabs",true);var j=c.element.find("#"+b);j.length||(j=d(h.panelTemplate).attr("id",b).data("destroy.tabs",true));j.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide");if(a>=this.lis.length){e.appendTo(this.list);j.appendTo(this.list[0].parentNode)}else{e.insertBefore(this.lis[a]); j.insertBefore(this.panels[a])}h.disabled=d.map(h.disabled,function(k){return k>=a?++k:k});this._tabify();if(this.anchors.length==1){h.selected=0;e.addClass("ui-tabs-selected ui-state-active");j.removeClass("ui-tabs-hide");this.element.queue("tabs",function(){c._trigger("show",null,c._ui(c.anchors[0],c.panels[0]))});this.load(0)}this._trigger("add",null,this._ui(this.anchors[a],this.panels[a]));return this},remove:function(b){b=this._getIndex(b);var e=this.options,a=this.lis.eq(b).remove(),c=this.panels.eq(b).remove(); if(a.hasClass("ui-tabs-selected")&&this.anchors.length>1)this.select(b+(b+1=b?--h:h});this._tabify();this._trigger("remove",null,this._ui(a.find("a")[0],c[0]));return this},enable:function(b){b=this._getIndex(b);var e=this.options;if(d.inArray(b,e.disabled)!=-1){this.lis.eq(b).removeClass("ui-state-disabled");e.disabled=d.grep(e.disabled,function(a){return a!=b});this._trigger("enable",null, this._ui(this.anchors[b],this.panels[b]));return this}},disable:function(b){b=this._getIndex(b);var e=this.options;if(b!=e.selected){this.lis.eq(b).addClass("ui-state-disabled");e.disabled.push(b);e.disabled.sort();this._trigger("disable",null,this._ui(this.anchors[b],this.panels[b]))}return this},select:function(b){b=this._getIndex(b);if(b==-1)if(this.options.collapsible&&this.options.selected!=-1)b=this.options.selected;else return this;this.anchors.eq(b).trigger(this.options.event+".tabs");return this}, load:function(b){b=this._getIndex(b);var e=this,a=this.options,c=this.anchors.eq(b)[0],h=d.data(c,"load.tabs");this.abort();if(!h||this.element.queue("tabs").length!==0&&d.data(c,"cache.tabs"))this.element.dequeue("tabs");else{this.lis.eq(b).addClass("ui-state-processing");if(a.spinner){var j=d("span",c);j.data("label.tabs",j.html()).html(a.spinner)}this.xhr=d.ajax(d.extend({},a.ajaxOptions,{url:h,success:function(k,n){e.element.find(e._sanitizeSelector(c.hash)).html(k);e._cleanup();a.cache&&d.data(c, "cache.tabs",true);e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.success(k,n)}catch(m){}},error:function(k,n){e._cleanup();e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.error(k,n,b,c)}catch(m){}}}));e.element.dequeue("tabs");return this}},abort:function(){this.element.queue([]);this.panels.stop(false,true);this.element.queue("tabs",this.element.queue("tabs").splice(-2,2));if(this.xhr){this.xhr.abort();delete this.xhr}this._cleanup();return this}, url:function(b,e){this.anchors.eq(b).removeData("cache.tabs").data("load.tabs",e);return this},length:function(){return this.anchors.length}});d.extend(d.ui.tabs,{version:"1.8.12"});d.extend(d.ui.tabs.prototype,{rotation:null,rotate:function(b,e){var a=this,c=this.options,h=a._rotate||(a._rotate=function(j){clearTimeout(a.rotation);a.rotation=setTimeout(function(){var k=c.selected;a.select(++kIDATՏA #b.A {s|3R ۄN 'Tx˩Syx&CHPeIENDB`stackapplet-1.5.2/html/images/ui-icons_ffffff_256x240.png0000664000175000017500000001042112332345454023565 0ustar nathannathan00000000000000PNG  IHDRIJPLTE NtRNS2P."Tp@f` <BHJZ&0R,4j8D|($ blߝF>n~hhHIDATx]b۶H儒-{iZK:glkn-tIqq? E$dK>$>;PZsVh!Sy0E0}H)-t koܪKp\RϠ .E7 ) *V;~Pe Bx*,=$zDؾ JҸٻ9{ ǸHpqW@"2'B[$ @TiH/b٥96!XHq`DE*R HV!%;" i] dddddddd4y5  Rb@(8CdŪݡ,@T@ibrq0alX!pe, =4bW { 5Ƭhu~(Q^@3="b5XC@JCT76q_5 @,r šɩD)T|O@ ON-ՙ [n@RXIm݋(F @?=0puL;g$@6η K`>п @h գKVn"a" %l@.v$/U^ G:#`` uTtK~ŋZ5T%kxk]\*Q ,҇B44 OXK|yg+_M(lоEO V$T1BXb-|?@ fBXr%'@ҹA\IJ,}BBc\V rh(]tI^}oצo S3 ";ʙb}"߰ ){b$Gwwݾab")T@pF_er6JvШ"mޭM-d76x˰6ӥ;/`>KrP\_^u1%OTM.}Q3.Nس})>-w`a+sy$t)NbFFFFBejnNVn4,A*X*5>PGa 3 {oB &<L[ Nc.öi=`Q@d ͆I.Il`\t[< Cit484-r +f쑱BCB MH iy }>rxp|z;BǏ;burcK4tz1G~`ؚK| ̔>ۡO$~ Ao)0pzz }i`;ADm8n:cfA@s7L Z/..h8or? N93B~o_'`opO- :TG L;7]`B%˛>*wTpM0H}&t ^1'Oqr'2P͡+z,tIW''|en=dzgRm[NStK{҉mؓVt6ҲR`ζN&}B U(rۗ&1%Q''?l׸+&r{jN಻4) `N狌. ߭ ǣ)q 2?n3Hb`} .`pqY1e_bu7e+N_F(DT,L}LLrmP5|x芥1cx DAb`M(7NED~Mz +4BXd.Mzv͈Pd8p<6?8N*x.6ڍ6GFZ)O !lSshssNp8`'0/<s}.@Ǩs7ξO۟VDa5av]m1+3y6۠>@u50Ps51==p *KVҫ܂ݻc$N4(Xr2###c- 賟Lδ>]5.sYs1f0;'̨Yg銛{@9 `aC(=%bo2=n1 jBoS$n#m=i0ci9}oI qT]W%.(؅]z\x f"]o'u䫵tk{v;AC3ֆwwR_#X (xҋ/q%W hpk_IX'b/fXKi"#####QCLi2t 5L0 QiH2;yTOok;ע ٶ`RNg{zy!Kxm?A(vU~mL(`o/!nmX-{v[ dw=n「sdwzn(}Oy~ m ?XU;,V'+ V&JRZ]᧭:zC'-߆@y 4u `Vۓwъ#zP@Q N>2/{\o)W~a3xLw :_Q;=pּdt\'8~3SRP6y+XQ*޺r ̗ѭ*޺r gl/\U^u$|mbVnw \V|D͊NVNy7k<;/E}?E*dzgO ~g/96f cD}% g$QG7o)U Jo,O@0߾Q(;bw:5 NwRN5Iy'K?}:9mֽ*@f@jU9mҫÍ{$ؗ}dFp|%!DdF>}G{@FFFFFFƦQܞH 3 u Mo~vy}mwz<7nP9rWku=|_nz쿳}@IXn?sn~hhHIDATx]b۶H儒-{iZK:glkn-tIqq? E$dK>$>;PZsVh!Sy0E0}H)-t koܪKp\RϠ .E7 ) *V;~Pe Bx*,=$zDؾ JҸٻ9{ ǸHpqW@"2'B[$ @TiH/b٥96!XHq`DE*R HV!%;" i] dddddddd4y5  Rb@(8CdŪݡ,@T@ibrq0alX!pe, =4bW { 5Ƭhu~(Q^@3="b5XC@JCT76q_5 @,r šɩD)T|O@ ON-ՙ [n@RXIm݋(F @?=0puL;g$@6η K`>п @h գKVn"a" %l@.v$/U^ G:#`` uTtK~ŋZ5T%kxk]\*Q ,҇B44 OXK|yg+_M(lоEO V$T1BXb-|?@ fBXr%'@ҹA\IJ,}BBc\V rh(]tI^}oצo S3 ";ʙb}"߰ ){b$Gwwݾab")T@pF_er6JvШ"mޭM-d76x˰6ӥ;/`>KrP\_^u1%OTM.}Q3.Nس})>-w`a+sy$t)NbFFFFBejnNVn4,A*X*5>PGa 3 {oB &<L[ Nc.öi=`Q@d ͆I.Il`\t[< Cit484-r +f쑱BCB MH iy }>rxp|z;BǏ;burcK4tz1G~`ؚK| ̔>ۡO$~ Ao)0pzz }i`;ADm8n:cfA@s7L Z/..h8or? N93B~o_'`opO- :TG L;7]`B%˛>*wTpM0H}&t ^1'Oqr'2P͡+z,tIW''|en=dzgRm[NStK{҉mؓVt6ҲR`ζN&}B U(rۗ&1%Q''?l׸+&r{jN಻4) `N狌. ߭ ǣ)q 2?n3Hb`} .`pqY1e_bu7e+N_F(DT,L}LLrmP5|x芥1cx DAb`M(7NED~Mz +4BXd.Mzv͈Pd8p<6?8N*x.6ڍ6GFZ)O !lSshssNp8`'0/<s}.@Ǩs7ξO۟VDa5av]m1+3y6۠>@u50Ps51==p *KVҫ܂ݻc$N4(Xr2###c- 賟Lδ>]5.sYs1f0;'̨Yg銛{@9 `aC(=%bo2=n1 jBoS$n#m=i0ci9}oI qT]W%.(؅]z\x f"]o'u䫵tk{v;AC3ֆwwR_#X (xҋ/q%W hpk_IX'b/fXKi"#####QCLi2t 5L0 QiH2;yTOok;ע ٶ`RNg{zy!Kxm?A(vU~mL(`o/!nmX-{v[ dw=n「sdwzn(}Oy~ m ?XU;,V'+ V&JRZ]᧭:zC'-߆@y 4u `Vۓwъ#zP@Q N>2/{\o)W~a3xLw :_Q;=pּdt\'8~3SRP6y+XQ*޺r ̗ѭ*޺r gl/\U^u$|mbVnw \V|D͊NVNy7k<;/E}?E*dzgO ~g/96f cD}% g$QG7o)U Jo,O@0߾Q(;bw:5 NwRN5Iy'K?}:9mֽ*@f@jU9mҫÍ{$ؗ}dFp|%!DdF>}G{@FFFFFFƦQܞH 3 u Mo~vy}mwz<7nP9rWku=|_nz쿳}@IXn?sn~hhHIDATx]b۶H儒-{iZK:glkn-tIqq? E$dK>$>;PZsVh!Sy0E0}H)-t koܪKp\RϠ .E7 ) *V;~Pe Bx*,=$zDؾ JҸٻ9{ ǸHpqW@"2'B[$ @TiH/b٥96!XHq`DE*R HV!%;" i] dddddddd4y5  Rb@(8CdŪݡ,@T@ibrq0alX!pe, =4bW { 5Ƭhu~(Q^@3="b5XC@JCT76q_5 @,r šɩD)T|O@ ON-ՙ [n@RXIm݋(F @?=0puL;g$@6η K`>п @h գKVn"a" %l@.v$/U^ G:#`` uTtK~ŋZ5T%kxk]\*Q ,҇B44 OXK|yg+_M(lоEO V$T1BXb-|?@ fBXr%'@ҹA\IJ,}BBc\V rh(]tI^}oצo S3 ";ʙb}"߰ ){b$Gwwݾab")T@pF_er6JvШ"mޭM-d76x˰6ӥ;/`>KrP\_^u1%OTM.}Q3.Nس})>-w`a+sy$t)NbFFFFBejnNVn4,A*X*5>PGa 3 {oB &<L[ Nc.öi=`Q@d ͆I.Il`\t[< Cit484-r +f쑱BCB MH iy }>rxp|z;BǏ;burcK4tz1G~`ؚK| ̔>ۡO$~ Ao)0pzz }i`;ADm8n:cfA@s7L Z/..h8or? N93B~o_'`opO- :TG L;7]`B%˛>*wTpM0H}&t ^1'Oqr'2P͡+z,tIW''|en=dzgRm[NStK{҉mؓVt6ҲR`ζN&}B U(rۗ&1%Q''?l׸+&r{jN಻4) `N狌. ߭ ǣ)q 2?n3Hb`} .`pqY1e_bu7e+N_F(DT,L}LLrmP5|x芥1cx DAb`M(7NED~Mz +4BXd.Mzv͈Pd8p<6?8N*x.6ڍ6GFZ)O !lSshssNp8`'0/<s}.@Ǩs7ξO۟VDa5av]m1+3y6۠>@u50Ps51==p *KVҫ܂ݻc$N4(Xr2###c- 賟Lδ>]5.sYs1f0;'̨Yg銛{@9 `aC(=%bo2=n1 jBoS$n#m=i0ci9}oI qT]W%.(؅]z\x f"]o'u䫵tk{v;AC3ֆwwR_#X (xҋ/q%W hpk_IX'b/fXKi"#####QCLi2t 5L0 QiH2;yTOok;ע ٶ`RNg{zy!Kxm?A(vU~mL(`o/!nmX-{v[ dw=n「sdwzn(}Oy~ m ?XU;,V'+ V&JRZ]᧭:zC'-߆@y 4u `Vۓwъ#zP@Q N>2/{\o)W~a3xLw :_Q;=pּdt\'8~3SRP6y+XQ*޺r ̗ѭ*޺r gl/\U^u$|mbVnw \V|D͊NVNy7k<;/E}?E*dzgO ~g/96f cD}% g$QG7o)U Jo,O@0߾Q(;bw:5 NwRN5Iy'K?}:9mֽ*@f@jU9mҫÍ{$ؗ}dFp|%!DdF>}G{@FFFFFFƦQܞH 3 u Mo~vy}mwz<7nP9rWku=|_nz쿳}@IXn?sn~hhH_IDATx] c۶JZgv,ٲ&{?:-[3Ү3qJOptB }6x9s SmCXȸR<QήF ?SHf+&ytSE-G8>Am٪d ~Z#sկ6'аfN( 0%#r(DXXKQL^J*KʱzTA~yd-TLieSS(Kň< bۜE%NS~._c$QUb=+C5>W-Z8BHؗ+$~ǫ+e9*9J*VDoq@.i ovR~SH6w_v cU˂5y@~Rת#J9"!ꎾJ:d$. 3@nVew%w>#vSv ᤵ #,e]T q/|cթbfppߋbH1FS s L(?"#YP)C6C\$V-A$b ߏ3R4m`G\~ c:C.UasuC]7<e7,4 ʯUW-Cv7uT{%*9"VzOFU8ь)Y~+%X4STaWDSWeju^ѓIMg/_Moe"&~m ' sOW7-;3xf7yr#C+9ckM].8qYd#R`kaU^k#/P?*u$~HY52֟^|b{|a,?kE/vkL?o=;dxlE{A:?aM2$GqB+hC>te_O8d0wPlE` AAɂ[.zdaVĀ#O4&k?V `]ْP#NJ7Ybe7,H[F24eYSۉ|B&]KR˥Ŷ ATS6?h{9 "\vr9U{qvk/0W+?q"GW˨`wͤWAF-`ae]n"bMB]p+5޿ 3G]SÎ.1Yax)Ã[<+> smT؆*sɴ,K۶\ij`erY9yaЩ L|Ϟ)L[ T7GRPP$/0*vStWFCE/2:htL?8;>l fYd6ɩ}{ZiukDJӟS\^z L,uFtKyh}jdrf$3:Cd.Uٽ{AojRN 簐џQ S/]VTq _G9sE$Zwa͏FUH# e G1ZwV7>naO[+ʀ4HF^ ׆ONfTpza ƀV@O//S]SύwxTnځZG#N"a]s՜X7 `G{v´?VW_FYͩi+U'4 V 7%yT`뇪rXfOo@Ao>W n2K*fǦMh:75M+ЏyN<ÊP Lon> h:ǙvI~9畺K 5f dķc=8983K4jvyi|@v0cNv+̩1WrJ<=Qm[=(A3LJLX H˦6:խziJc'f&Ltv}15 |%۶%2oCm _x\c)VaF3p[oǽ$\FFO"v p30Fz8L&2pG>0V~XQO~!E  0t${  F0{F「{bZ),\(<`0o%JVA=#J֟߆ L 4lO /ܫbĪ (X&ܮ`XZw222>*Dg) 0ݱ*ouJ(=M^ 8IV },f>+!>? @ejBD8pOagd|PTqg$Ǐ8i)s0,C~\ :UV6U \`77`V1c@fN/ɪǿfPʃV]*h w.藢{7iHu}Jn3@ vebd?wPyW˂ErٵyI*RV2~ET~=N8e! *{,F- :.Yg (^!.j4^6Ե5o B}|~[ ];CU [R)aT>7/{Ky&Ϥ{QOy)#ârύ~a!&Wz Z졽TץRҥ_s]4"oEDAwUT8Hvo%sn\Hy$ȴhz4qR;yu5:??@V'.vlcl77^W QgZ-&5_D?1EBT NN ٞqJ/ {^b!#{ ~M{x/-Jn)Qljk=%46}t yX3KȊ7D:m{μ0-2TULPĆX@ ׎|M#D/vzXp< %#_%=/9(@C@ YMkf#-r@Cʭd8aG@ƌ<@޻@Fƃǃ~?lldž/wlTLdžRnFWbA%Igש½'39R^MRV֡UuC +0i=YS}!uۖ,V/B5, .C|r Z^;0p&h"?ȏo7~olap,lr_UaFH\zh+G_mB[޶CշjSz322`t裇:{GC@{E :\^ ?*;ۢ9/BAo_ @[@ ] Ql uf;sIENDB`stackapplet-1.5.2/html/images/ui-bg_diagonals-thick_90_eeeeee_40x40.png0000664000175000017500000000037312332345454026317 0ustar nathannathan00000000000000PNG  IHDR((mIDATX 0DlEVuc!Mk 囥p4+&K1};ܝe}pqpUqNd쉇mwpPTATAT T8e gʞx! }V7q*Tm$se&Zfd$#e&)KcJ&Y+mZY/I5=.K޾IIENDB`stackapplet-1.5.2/html/images/ui-bg_glass_80_d7ebf9_1x400.png0000664000175000017500000000017412332345454024225 0ustar nathannathan00000000000000PNG  IHDRoX CIDAT8ϱ Coe&@!DP0@n~hhHIDATx]b۶H儒-{iZK:glkn-tIqq? E$dK>$>;PZsVh!Sy0E0}H)-t koܪKp\RϠ .E7 ) *V;~Pe Bx*,=$zDؾ JҸٻ9{ ǸHpqW@"2'B[$ @TiH/b٥96!XHq`DE*R HV!%;" i] dddddddd4y5  Rb@(8CdŪݡ,@T@ibrq0alX!pe, =4bW { 5Ƭhu~(Q^@3="b5XC@JCT76q_5 @,r šɩD)T|O@ ON-ՙ [n@RXIm݋(F @?=0puL;g$@6η K`>п @h գKVn"a" %l@.v$/U^ G:#`` uTtK~ŋZ5T%kxk]\*Q ,҇B44 OXK|yg+_M(lоEO V$T1BXb-|?@ fBXr%'@ҹA\IJ,}BBc\V rh(]tI^}oצo S3 ";ʙb}"߰ ){b$Gwwݾab")T@pF_er6JvШ"mޭM-d76x˰6ӥ;/`>KrP\_^u1%OTM.}Q3.Nس})>-w`a+sy$t)NbFFFFBejnNVn4,A*X*5>PGa 3 {oB &<L[ Nc.öi=`Q@d ͆I.Il`\t[< Cit484-r +f쑱BCB MH iy }>rxp|z;BǏ;burcK4tz1G~`ؚK| ̔>ۡO$~ Ao)0pzz }i`;ADm8n:cfA@s7L Z/..h8or? N93B~o_'`opO- :TG L;7]`B%˛>*wTpM0H}&t ^1'Oqr'2P͡+z,tIW''|en=dzgRm[NStK{҉mؓVt6ҲR`ζN&}B U(rۗ&1%Q''?l׸+&r{jN಻4) `N狌. ߭ ǣ)q 2?n3Hb`} .`pqY1e_bu7e+N_F(DT,L}LLrmP5|x芥1cx DAb`M(7NED~Mz +4BXd.Mzv͈Pd8p<6?8N*x.6ڍ6GFZ)O !lSshssNp8`'0/<s}.@Ǩs7ξO۟VDa5av]m1+3y6۠>@u50Ps51==p *KVҫ܂ݻc$N4(Xr2###c- 賟Lδ>]5.sYs1f0;'̨Yg銛{@9 `aC(=%bo2=n1 jBoS$n#m=i0ci9}oI qT]W%.(؅]z\x f"]o'u䫵tk{v;AC3ֆwwR_#X (xҋ/q%W hpk_IX'b/fXKi"#####QCLi2t 5L0 QiH2;yTOok;ע ٶ`RNg{zy!Kxm?A(vU~mL(`o/!nmX-{v[ dw=n「sdwzn(}Oy~ m ?XU;,V'+ V&JRZ]᧭:zC'-߆@y 4u `Vۓwъ#zP@Q N>2/{\o)W~a3xLw :_Q;=pּdt\'8~3SRP6y+XQ*޺r ̗ѭ*޺r gl/\U^u$|mbVnw \V|D͊NVNy7k<;/E}?E*dzgO ~g/96f cD}% g$QG7o)U Jo,O@0߾Q(;bw:5 NwRN5Iy'K?}:9mֽ*@f@jU9mҫÍ{$ؗ}dFp|%!DdF>}G{@FFFFFFƦQܞH 3 u Mo~vy}mwz<7nP9rWku=|_nz쿳}@IXn?s").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d===""){ck||(ck=c.createElement("iframe"),ck.frameBorder=ck.width=ck.height=0),c.body.appendChild(ck);if(!cl||!ck.createElement)cl=(ck.contentWindow||ck.contentDocument).document,cl.write("");b=cl.createElement(a),cl.body.appendChild(b),d=f.css(b,"display"),c.body.removeChild(ck)}cj[a]=d}return cj[a]}function cu(a,b){var c={};f.each(cp.concat.apply([],cp.slice(0,b)),function(){c[this]=a});return c}function ct(){cq=b}function cs(){setTimeout(ct,0);return cq=f.now()}function ci(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ch(){try{return new a.XMLHttpRequest}catch(b){}}function cb(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g=0===c})}function W(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function O(a,b){return(a&&a!=="*"?a+".":"")+b.replace(A,"`").replace(B,"&")}function N(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;ic)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function L(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function F(){return!0}function E(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"$1-$2").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function H(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(H,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=d.userAgent,x,y,z,A=Object.prototype.toString,B=Object.prototype.hasOwnProperty,C=Array.prototype.push,D=Array.prototype.slice,E=String.prototype.trim,F=Array.prototype.indexOf,G={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.1",length:0,size:function(){return this.length},toArray:function(){return D.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?C.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),y.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(D.apply(this,arguments),"slice",D.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:C,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;y.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!y){y=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",z,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",z),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&H()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):G[A.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;if(a.constructor&&!B.call(a,"constructor")&&!B.call(a.constructor.prototype,"isPrototypeOf"))return!1;var c;for(c in a);return c===b||B.call(a,c)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(b,c,d){a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b)),d=c.documentElement,(!d||!d.nodeName||d.nodeName==="parsererror")&&e.error("Invalid XML: "+b);return c},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c
    a",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};f=c.createElement("select"),g=f.appendChild(c.createElement("option")),h=a.getElementsByTagName("input")[0],j={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},h.checked=!0,j.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,j.optDisabled=!g.disabled;try{delete a.test}catch(s){j.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function b(){j.noCloneEvent=!1,a.detachEvent("onclick",b)}),a.cloneNode(!0).fireEvent("onclick")),h=c.createElement("input"),h.value="t",h.setAttribute("type","radio"),j.radioValue=h.value==="t",h.setAttribute("checked","checked"),a.appendChild(h),k=c.createDocumentFragment(),k.appendChild(a.firstChild),j.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",l=c.createElement("body"),m={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"};for(q in m)l.style[q]=m[q];l.appendChild(a),b.insertBefore(l,b.firstChild),j.appendChecked=h.checked,j.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,j.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="
    ",j.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="
    t
    ",n=a.getElementsByTagName("td"),r=n[0].offsetHeight===0,n[0].style.display="",n[1].style.display="none",j.reliableHiddenOffsets=r&&n[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(i=c.createElement("div"),i.style.width="0",i.style.marginRight="0",a.appendChild(i),j.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(i,null)||{marginRight:0}).marginRight,10)||0)===0),l.innerHTML="",b.removeChild(l);if(a.attachEvent)for(q in{submit:1,change:1,focusin:1})p="on"+q,r=p in a,r||(a.setAttribute(p,"return;"),r=typeof a[p]=="function"),j[q+"Bubbles"]=r;return j}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([a-z])([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g=f.expando,h=typeof c=="string",i,j=a.nodeType,k=j?f.cache:a,l=j?a[f.expando]:a[f.expando]&&f.expando;if((!l||e&&l&&!k[l][g])&&h&&d===b)return;l||(j?a[f.expando]=l=++f.uuid:l=f.expando),k[l]||(k[l]={},j||(k[l].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?k[l][g]=f.extend(k[l][g],c):k[l]=f.extend(k[l],c);i=k[l],e&&(i[g]||(i[g]={}),i=i[g]),d!==b&&(i[f.camelCase(c)]=d);if(c==="events"&&!i[c])return i[g]&&i[g].events;return h?i[f.camelCase(c)]:i}},removeData:function(b,c,d){if(!!f.acceptData(b)){var e=f.expando,g=b.nodeType,h=g?f.cache:b,i=g?b[f.expando]:f.expando;if(!h[i])return;if(c){var j=d?h[i][e]:h[i];if(j){delete j[c];if(!l(j))return}}if(d){delete h[i][e];if(!l(h[i]))return}var k=h[i][e];f.support.deleteExpando||h!=a?delete h[i]:h[i]=null,k?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=k):g&&(f.support.deleteExpando?delete b[f.expando]:b.removeAttribute?b.removeAttribute(f.expando):b[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;return(e.value||"").replace(p,"")}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);c=j&&f.attrFix[c]||c,i=f.attrHooks[c],i||(!t.test(c)||typeof d!="boolean"&&d!==b&&d.toLowerCase()!==c.toLowerCase()?v&&(f.nodeName(a,"form")||u.test(c))&&(i=v):i=w);if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j)return i.get(a,c);h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.support.getSetAttribute?a.removeAttribute(b):(f.attr(a,b,""),a.removeAttributeNode(a.getAttributeNode(b))),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},tabIndex:{get:function(a){var c=a.getAttributeNode("tabIndex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);c=i&&f.propFix[c]||c,h=f.propHooks[c];return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==b?g:a[c]},propHooks:{}}),w={get:function(a,c){return a[f.propFix[c]||c]?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=b),a.setAttribute(c,c.toLowerCase()));return c}},f.attrHooks.value={get:function(a,b){if(v&&f.nodeName(a,"button"))return v.get(a,b);return a.value},set:function(a,b,c){if(v&&f.nodeName(a,"button"))return v.set(a,b,c);a.value=b}},f.support.getSetAttribute||(f.attrFix=f.propFix,v=f.attrHooks.name=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,c){var d=a.getAttributeNode(c);if(d){d.nodeValue=b;return b}}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var x=Object.prototype.hasOwnProperty,y=/\.(.*)$/,z=/^(?:textarea|input|select)$/i,A=/\./g,B=/ /g,C=/[^\w\s.|`]/g,D=function(a){return a.replace(C,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=E;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=E);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),D).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem )});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},K=function(c){var d=c.target,e,g;if(!!z.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=J(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:K,beforedeactivate:K,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&K.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&K.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",J(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in I)f.event.add(this,c+".specialChange",I[c]);return z.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return z.test(this.nodeName)}},I=f.event.special.change.filters,I.focus=I.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

    ";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
    ";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g0)for(h=g;h0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=U.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a||typeof a=="string")return f.inArray(this[0],a?f(a):this.parent().children());return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(W(c[0])||W(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=T.call(arguments);P.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!V[a]?f.unique(e):e,(this.length>1||R.test(d))&&Q.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var Y=/ jQuery\d+="(?:\d+|null)"/g,Z=/^\s+/,$=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,_=/<([\w:]+)/,ba=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]};bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
    ","
    "]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Y,""):null;if(typeof a=="string"&&!bc.test(a)&&(f.support.leadingWhitespace||!Z.test(a))&&!bg[(_.exec(a)||["",""])[1].toLowerCase()]){a=a.replace($,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bj(a,d),e=bk(a),g=bk(d);for(h=0;e[h];++h)bj(e[h],g[h])}if(b){bi(a,d);if(c){e=bk(a),g=bk(d);for(h=0;e[h];++h)bi(e[h],g[h])}}return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument|| b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!bb.test(k))k=b.createTextNode(k);else{k=k.replace($,"<$1>");var l=(_.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=ba.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&Z.test(k)&&o.insertBefore(b.createTextNode(Z.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bp.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle;c.zoom=1;var e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.filter=bo.test(g)?g.replace(bo,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,c){var d,e,g;c=c.replace(br,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bs.test(d)&&bt.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bE=/%20/g,bF=/\[\]$/,bG=/\r?\n/g,bH=/#.*$/,bI=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bJ=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bK=/^(?:about|app|app\-storage|.+\-extension|file|widget):$/,bL=/^(?:GET|HEAD)$/,bM=/^\/\//,bN=/\?/,bO=/)<[^<]*)*<\/script>/gi,bP=/^(?:select|textarea)/i,bQ=/\s+/,bR=/([?&])_=[^&]*/,bS=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bT=f.fn.load,bU={},bV={},bW,bX;try{bW=e.href}catch(bY){bW=c.createElement("a"),bW.href="",bW=bW.href}bX=bS.exec(bW.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bT)return bT.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
    ").append(c.replace(bO,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bP.test(this.nodeName)||bJ.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bG,"\r\n")}}):{name:b.name,value:c.replace(bG,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?f.extend(!0,a,f.ajaxSettings,b):(b=a,a=f.extend(!0,f.ajaxSettings,b));for(var c in{context:1,url:1})c in b?a[c]=b[c]:c in f.ajaxSettings&&(a[c]=f.ajaxSettings[c]);return a},ajaxSettings:{url:bW,isLocal:bK.test(bX[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML}},ajaxPrefilter:bZ(bU),ajaxTransport:bZ(bV),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a?4:0;var o,r,u,w=l?ca(d,v,l):b,x,y;if(a>=200&&a<300||a===304){if(d.ifModified){if(x=v.getResponseHeader("Last-Modified"))f.lastModified[k]=x;if(y=v.getResponseHeader("Etag"))f.etag[k]=y}if(a===304)c="notmodified",o=!0;else try{r=cb(d,w),c="success",o=!0}catch(z){c="parsererror",u=z}}else{u=c;if(!c||a)c="error",a<0&&(a=0)}v.status=a,v.statusText=c,o?h.resolveWith(e,[r,c,v]):h.rejectWith(e,[v,c,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,c]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bI.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bH,"").replace(bM,bX[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bQ),d.crossDomain==null&&(r=bS.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bX[1]&&r[2]==bX[2]&&(r[3]||(r[1]==="http:"?80:443))==(bX[3]||(bX[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bU,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bL.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bN.test(d.url)?"&":"?")+d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bR,"$1_="+x);d.url=y+(y===d.url?(bN.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", */*; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bV,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){status<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)b_(g,a[g],c,e);return d.join("&").replace(bE,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cc=f.now(),cd=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cc++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(cd.test(b.url)||e&&cd.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(cd,l),b.url===j&&(e&&(k=k.replace(cd,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var ce=a.ActiveXObject?function(){for(var a in cg)cg[a](0,1)}:!1,cf=0,cg;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ch()||ci()}:ch,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,ce&&delete cg[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cf,ce&&(cg||(cg={},f(a).unload(ce)),cg[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cj={},ck,cl,cm=/^(?:toggle|show|hide)$/,cn=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,co,cp=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cq,cr=a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b
    ";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){return this[0]?parseFloat(f.css(this[0],d,"padding")):null},f.fn["outer"+c]=function(a){return this[0]?parseFloat(f.css(this[0],d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c];return e.document.compatMode==="CSS1Compat"&&g||e.document.body["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var h=f.css(e,d),i=parseFloat(h);return f.isNaN(i)?h:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window); stackapplet-1.5.2/html/main_logo.png0000664000175000017500000002413512332345454020230 0ustar nathannathan00000000000000PNG  IHDRsz~sRGBbKGD pHYs  tIME70hB_ZtEXtCommentCreated with GIMPW IDATxyE?9I@9An }߷B9NEKDPEQ  r G$!$$o nWLwO=8-Ds8 &s_ +P!BQ~ MFDo>g?;s߳7;+r{[~@S` :b5SB!D'?7c.a"mvY4[]24is=Yڤy]o"5V&)J!DV4\QtygxdoDlN`Whe(pp_Us~LB!j*ܛ/ y(>n)f&pZ7)p9>p^w!>BLQ'o!ӻM-s:/`+u"6wn{BD=aBwb655B6jPVQ aj.!5]_iy3,\O++>`^w!ʦ;fSoM!D⵪`4Oabuxu=:Qh0*SFل DÓ(& qGQ|"k`J'batn}c`+`&bSeA݉WE4WtBDk\[j#K^ W6vp 0&0T̕`6딤H;z-D<{XR"O4.!H>liҊ{+~J]uex%.5ט+,7Btc<yR"_4.NA{SK8fbÆ-*;Kan}EN4}]'cvi#^H2/{p?[M(Dnh\BT^N4'] Paˍz{p'͖zm~gH&5Afb['!:CܬVBa4A Q8"wG| <LVz9и$DZ$ڸϹ?Fogt:wGGlyΚjhd@냙ݦ&B eQ4a{У<\:ZhO^Bh\":Lh_WA Q8zH|IO:^qI*ўS>|W̵:X "Я>qtywM$ikk{Z;uۿ/a>>*IL{t_QGm*%] LqM+kW(=i^}Ӹ${E;Ob;-n]\Ǹy`SU7G jw lo.8\7U׻Ab}/b[do)m='`skу"KXL i'w0y k$lKڕ0qX GU` $ۏNzZӉ%!2ә$&{>f(;`6/\8x vc~u{ ;0Ӎjwh9/5yQSh b>ov"-H^aܘگ 6aљc8Q'偣T6^8gP؊}gpC"[W5Ø- (.s  <(E(` o?;Ճ؊X;z 3 O жwR*Α_ݱ짺/ vEzpcf*c6Uѣ=VOCy_VyVɡo;qfeTg)L>M޽0)jܾ12xSyW;$ټRb;|wb+8. !^VO"F`j 9D \g!|Ԓ}4X'Ŵo$W;X\~)02.̳Tbs.;gGØE`I|O{`B"0[mf5 9.̣NQ0<>L||Rf&|>;De+9kܫ~gXz7^ej(d Ih\fKZ|ݫPHH/bSgKjZ;zHHlK*%SN~&?w}W(a$g|F4EOH^ϒNH3;Tt# |CeJկPYh~{sm\ۯ& Y 4. &GDя$ءWˌn_[ HF3s'`w"csC{eNd}hu2a.M (VoD 79!P _A p/hoWѷö!ӫ"Fvjt5DzLq"Reϑ~'y4a&MfͪyUҽ]A[q ,\.UzA^jؿxg:];/.-Cq{ZANsB'RC[iL4.g%^fRYs 5-dggi@#U˹ERYx{>Ӹ$D `L܆ezOO޻bR`# <<;y 'EI޷C-܀ٙ=YĜi,yi585!ͷp8AFyoÿ+կvU! >ePI&!B{WbL S撗wnRvR~iN_-p'#u@͒f{:94+}5xV2Q7KeW|#w{G MZhkc*^2AI\@SR,xTaQ "fT@_W[|ӱ |s_fj O]FLq(odp>N^a:6vנݟOL؎ )c^`'+f swQNϣ YeU\S>/B m*E{)a)GQ}H""p:fb(p.~pP78'4h5sKcbI+ g.dw{YO½![Klok6a+1S_f?^t>Nl'0̻T|S9^!D{s-zukDQ?mkoի^_r[sU\YRƠ0^e$+c|suZ]10pfw= u숥| $}cg|/A{Ƃ3-z{>>N$͛iBHK-VwuXeHoj5xIhX`IX0|"Bi%썙4d)2 ٪_e>ph n'kRznp&f4dRuWr7>Og zl8C g^|.ܓ苙BݗlƜyxzLo$"0K>0$_F;6 d^KpЙu0 "u,B&aISV/̅kÀrX渀2+Ẁ|(H5ɣh (6X%GdmϪ_}5yӱ5IM0,%:׾i~Drsz3G6p;' |Ga +yxۉyYAgX]fmFIMWs?ŸT0O+eLj t@j2z"tAςi=sq}42vsz0 461m.ލk>s~2(!k<=ղbQqY܅{ˢ^{DT m#v.MK;3 fP7듢x T nYL8y/gV܊y \/`1 iU$`'ͪͨ'>}KM½%'H<ې9,z RT >5$?Y-. Hwoc s孚 t5דfO )o#~ֽ^ŸTZGɢhTMn\F9BY/fS!Ki@3*їv]il&-%TGXecYWJC.џrjF_<$m/S'}H-ƥVZ< Mv^i ~_L m݀ӱH31S0{?mLG{iyw]tY@{MŴN*E;hx-ɊwX^}B oN7mS9rxWyLLf܁u6K$4XB?q/[ H/E q-ucњnh#Dl l.mWI [냙p};m`AJcwi[jϫm.vxtݾ_Z 3nGo&yEMc/Øht'Q|o_뇙^LL9<7 ^ NWൺ0/?ڨ#]Fr%׽!g'm^My#.H܏a዇/vBl5۪b+t 1oߏ?{]@6~f C)r9̽b܇mE f\mI?wĎe|7S&wg4umLvܤH 1ӝU[څ ^iDZ-nyDn͋n_`uŸT3 ,O:ajߜu-i?ۺ{_i]UNxfI.~np&vƭ*vw5/bf;E{]v-D8wo,vH#oN"ȵ9ի; 3|H XҤuHusFؖ^>~VR+IV!̀2Vq7^aZ#ڤ+4ϫIt~]=yy?Oq}\;a.ǯdĻCtz EcoIDAT'#x#mmf;x-O`{Ku؁12M4NJۻ=IZVCtOWQ_CضnRIC{ 8Dl|ȓF_<~Qq zU韐&dj~ۭ:^to23 ;4 pENlʾWN/XѥyIwb7&7aX2.[hw=f qJS;6ĭlSbElK3ĻN؁Ë]>71031m *UmKĎAޟiNRleiY9MLi\+yoC.M늚Tj83Y,.q`h-_nMuDQ96vS*'p̶-kjkoVNu|͞9s j 0YmD{+kf:N&m^M//o;~3LRjEȽB9`ݻsJ=5^,0lςLsU(`~%Hv7ںVev|U.'A5މ;V6+܉›0c_a7R͘SAvgs,,;m)XwWTc:z~R簝FJǽbL1 bӃ|#4@꠿UMy#31;4NCEXpBIl~8ՉU Nԏ!:!>0B齏gYҵN﻽91MuHv!BLDnԝ_#6ϋxƎ|TT!B4"ufDanE}DZB!Jݭ78anS {}1Q !B GKM؇B!DSw2QhaD>ƌ_P!BH5hbcFSO!5BdD*nvJ5e1 !B!=ׅB/Mj!B!$܅B!B!BH !B!$܅B!B!BH !B!$܅B!B!B!B!B!B!B!B!B!B!B!B!B!B!B!B9TNIENDB`stackapplet-1.5.2/html/jqueryui.css0000664000175000017500000005367512332345454020160 0ustar nathannathan00000000000000/* * jQuery UI CSS Framework 1.8.12 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) * Dual licensed under the MIT or GPL Version 2 licenses. * http://jquery.org/license * * http://docs.jquery.com/UI/Theming/API */ /* Layout helpers ----------------------------------*/ .ui-helper-hidden { display: none; } .ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); } .ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } .ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } .ui-helper-clearfix { display: inline-block; } /* required comment for clearfix to work in Opera \*/ * html .ui-helper-clearfix { height:1%; } .ui-helper-clearfix { display:block; } /* end clearfix */ .ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } /* Interaction Cues ----------------------------------*/ .ui-state-disabled { cursor: default !important; } /* Icons ----------------------------------*/ /* states and images */ .ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } /* Misc visuals ----------------------------------*/ /* Overlays */ .ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } /* * jQuery UI CSS Framework 1.8.12 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) * Dual licensed under the MIT or GPL Version 2 licenses. * http://jquery.org/license * * http://docs.jquery.com/UI/Theming/API * * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Lucida%20Grande,%20Lucida%20Sans,%20Arial,%20sans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=6px&bgColorHeader=deedf7&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=100&borderColorHeader=aed0ea&fcHeader=222222&iconColorHeader=72a7cf&bgColorContent=f2f5f7&bgTextureContent=04_highlight_hard.png&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=362b36&iconColorContent=72a7cf&bgColorDefault=d7ebf9&bgTextureDefault=02_glass.png&bgImgOpacityDefault=80&borderColorDefault=aed0ea&fcDefault=2779aa&iconColorDefault=3d80b3&bgColorHover=e4f1fb&bgTextureHover=02_glass.png&bgImgOpacityHover=100&borderColorHover=74b2e2&fcHover=0070a3&iconColorHover=2694e8&bgColorActive=3baae3&bgTextureActive=02_glass.png&bgImgOpacityActive=50&borderColorActive=2694e8&fcActive=ffffff&iconColorActive=ffffff&bgColorHighlight=ffef8f&bgTextureHighlight=03_highlight_soft.png&bgImgOpacityHighlight=25&borderColorHighlight=f9dd34&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=cd0a0a&bgTextureError=01_flat.png&bgImgOpacityError=15&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffffff&bgColorOverlay=eeeeee&bgTextureOverlay=08_diagonals_thick.png&bgImgOpacityOverlay=90&opacityOverlay=80&bgColorShadow=000000&bgTextureShadow=04_highlight_hard.png&bgImgOpacityShadow=70&opacityShadow=30&thicknessShadow=7px&offsetTopShadow=-7px&offsetLeftShadow=-7px&cornerRadiusShadow=8px */ /* Component containers ----------------------------------*/ .ui-widget { font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; font-size: 1.1em; } .ui-widget .ui-widget { font-size: 1em; } .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; font-size: 1em; } .ui-widget-content { border: 1px solid #dddddd; background: #f2f5f7 url(images/ui-bg_highlight-hard_100_f2f5f7_1x100.png) 50% top repeat-x; color: #362b36; } .ui-widget-content a { color: #362b36; } .ui-widget-header { border: 1px solid #aed0ea; background: #deedf7 url(images/ui-bg_highlight-soft_100_deedf7_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; } .ui-widget-header a { color: #222222; } /* Interaction states ----------------------------------*/ .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #aed0ea; background: #d7ebf9 url(images/ui-bg_glass_80_d7ebf9_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #2779aa; } .ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #2779aa; text-decoration: none; } .ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #74b2e2; background: #e4f1fb url(images/ui-bg_glass_100_e4f1fb_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #0070a3; } .ui-state-hover a, .ui-state-hover a:hover { color: #0070a3; text-decoration: none; } .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #2694e8; background: #3baae3 url(images/ui-bg_glass_50_3baae3_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #ffffff; } .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #ffffff; text-decoration: none; } .ui-widget :active { outline: none; } /* Interaction Cues ----------------------------------*/ .ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #f9dd34; background: #ffef8f url(images/ui-bg_highlight-soft_25_ffef8f_1x100.png) 50% top repeat-x; color: #363636; } .ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; } .ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #cd0a0a url(images/ui-bg_flat_15_cd0a0a_40x100.png) 50% 50% repeat-x; color: #ffffff; } .ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #ffffff; } .ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #ffffff; } .ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; } .ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } .ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } /* Icons ----------------------------------*/ /* states and images */ .ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_72a7cf_256x240.png); } .ui-widget-content .ui-icon {background-image: url(images/ui-icons_72a7cf_256x240.png); } .ui-widget-header .ui-icon {background-image: url(images/ui-icons_72a7cf_256x240.png); } .ui-state-default .ui-icon { background-image: url(images/ui-icons_3d80b3_256x240.png); } .ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_2694e8_256x240.png); } .ui-state-active .ui-icon {background-image: url(images/ui-icons_ffffff_256x240.png); } .ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); } .ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_ffffff_256x240.png); } /* positioning */ .ui-icon-carat-1-n { background-position: 0 0; } .ui-icon-carat-1-ne { background-position: -16px 0; } .ui-icon-carat-1-e { background-position: -32px 0; } .ui-icon-carat-1-se { background-position: -48px 0; } .ui-icon-carat-1-s { background-position: -64px 0; } .ui-icon-carat-1-sw { background-position: -80px 0; } .ui-icon-carat-1-w { background-position: -96px 0; } .ui-icon-carat-1-nw { background-position: -112px 0; } .ui-icon-carat-2-n-s { background-position: -128px 0; } .ui-icon-carat-2-e-w { background-position: -144px 0; } .ui-icon-triangle-1-n { background-position: 0 -16px; } .ui-icon-triangle-1-ne { background-position: -16px -16px; } .ui-icon-triangle-1-e { background-position: -32px -16px; } .ui-icon-triangle-1-se { background-position: -48px -16px; } .ui-icon-triangle-1-s { background-position: -64px -16px; } .ui-icon-triangle-1-sw { background-position: -80px -16px; } .ui-icon-triangle-1-w { background-position: -96px -16px; } .ui-icon-triangle-1-nw { background-position: -112px -16px; } .ui-icon-triangle-2-n-s { background-position: -128px -16px; } .ui-icon-triangle-2-e-w { background-position: -144px -16px; } .ui-icon-arrow-1-n { background-position: 0 -32px; } .ui-icon-arrow-1-ne { background-position: -16px -32px; } .ui-icon-arrow-1-e { background-position: -32px -32px; } .ui-icon-arrow-1-se { background-position: -48px -32px; } .ui-icon-arrow-1-s { background-position: -64px -32px; } .ui-icon-arrow-1-sw { background-position: -80px -32px; } .ui-icon-arrow-1-w { background-position: -96px -32px; } .ui-icon-arrow-1-nw { background-position: -112px -32px; } .ui-icon-arrow-2-n-s { background-position: -128px -32px; } .ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } .ui-icon-arrow-2-e-w { background-position: -160px -32px; } .ui-icon-arrow-2-se-nw { background-position: -176px -32px; } .ui-icon-arrowstop-1-n { background-position: -192px -32px; } .ui-icon-arrowstop-1-e { background-position: -208px -32px; } .ui-icon-arrowstop-1-s { background-position: -224px -32px; } .ui-icon-arrowstop-1-w { background-position: -240px -32px; } .ui-icon-arrowthick-1-n { background-position: 0 -48px; } .ui-icon-arrowthick-1-ne { background-position: -16px -48px; } .ui-icon-arrowthick-1-e { background-position: -32px -48px; } .ui-icon-arrowthick-1-se { background-position: -48px -48px; } .ui-icon-arrowthick-1-s { background-position: -64px -48px; } .ui-icon-arrowthick-1-sw { background-position: -80px -48px; } .ui-icon-arrowthick-1-w { background-position: -96px -48px; } .ui-icon-arrowthick-1-nw { background-position: -112px -48px; } .ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } .ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } .ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } .ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } .ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } .ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } .ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } .ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } .ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } .ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } .ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } .ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } .ui-icon-arrowreturn-1-w { background-position: -64px -64px; } .ui-icon-arrowreturn-1-n { background-position: -80px -64px; } .ui-icon-arrowreturn-1-e { background-position: -96px -64px; } .ui-icon-arrowreturn-1-s { background-position: -112px -64px; } .ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } .ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } .ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } .ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } .ui-icon-arrow-4 { background-position: 0 -80px; } .ui-icon-arrow-4-diag { background-position: -16px -80px; } .ui-icon-extlink { background-position: -32px -80px; } .ui-icon-newwin { background-position: -48px -80px; } .ui-icon-refresh { background-position: -64px -80px; } .ui-icon-shuffle { background-position: -80px -80px; } .ui-icon-transfer-e-w { background-position: -96px -80px; } .ui-icon-transferthick-e-w { background-position: -112px -80px; } .ui-icon-folder-collapsed { background-position: 0 -96px; } .ui-icon-folder-open { background-position: -16px -96px; } .ui-icon-document { background-position: -32px -96px; } .ui-icon-document-b { background-position: -48px -96px; } .ui-icon-note { background-position: -64px -96px; } .ui-icon-mail-closed { background-position: -80px -96px; } .ui-icon-mail-open { background-position: -96px -96px; } .ui-icon-suitcase { background-position: -112px -96px; } .ui-icon-comment { background-position: -128px -96px; } .ui-icon-person { background-position: -144px -96px; } .ui-icon-print { background-position: -160px -96px; } .ui-icon-trash { background-position: -176px -96px; } .ui-icon-locked { background-position: -192px -96px; } .ui-icon-unlocked { background-position: -208px -96px; } .ui-icon-bookmark { background-position: -224px -96px; } .ui-icon-tag { background-position: -240px -96px; } .ui-icon-home { background-position: 0 -112px; } .ui-icon-flag { background-position: -16px -112px; } .ui-icon-calendar { background-position: -32px -112px; } .ui-icon-cart { background-position: -48px -112px; } .ui-icon-pencil { background-position: -64px -112px; } .ui-icon-clock { background-position: -80px -112px; } .ui-icon-disk { background-position: -96px -112px; } .ui-icon-calculator { background-position: -112px -112px; } .ui-icon-zoomin { background-position: -128px -112px; } .ui-icon-zoomout { background-position: -144px -112px; } .ui-icon-search { background-position: -160px -112px; } .ui-icon-wrench { background-position: -176px -112px; } .ui-icon-gear { background-position: -192px -112px; } .ui-icon-heart { background-position: -208px -112px; } .ui-icon-star { background-position: -224px -112px; } .ui-icon-link { background-position: -240px -112px; } .ui-icon-cancel { background-position: 0 -128px; } .ui-icon-plus { background-position: -16px -128px; } .ui-icon-plusthick { background-position: -32px -128px; } .ui-icon-minus { background-position: -48px -128px; } .ui-icon-minusthick { background-position: -64px -128px; } .ui-icon-close { background-position: -80px -128px; } .ui-icon-closethick { background-position: -96px -128px; } .ui-icon-key { background-position: -112px -128px; } .ui-icon-lightbulb { background-position: -128px -128px; } .ui-icon-scissors { background-position: -144px -128px; } .ui-icon-clipboard { background-position: -160px -128px; } .ui-icon-copy { background-position: -176px -128px; } .ui-icon-contact { background-position: -192px -128px; } .ui-icon-image { background-position: -208px -128px; } .ui-icon-video { background-position: -224px -128px; } .ui-icon-script { background-position: -240px -128px; } .ui-icon-alert { background-position: 0 -144px; } .ui-icon-info { background-position: -16px -144px; } .ui-icon-notice { background-position: -32px -144px; } .ui-icon-help { background-position: -48px -144px; } .ui-icon-check { background-position: -64px -144px; } .ui-icon-bullet { background-position: -80px -144px; } .ui-icon-radio-off { background-position: -96px -144px; } .ui-icon-radio-on { background-position: -112px -144px; } .ui-icon-pin-w { background-position: -128px -144px; } .ui-icon-pin-s { background-position: -144px -144px; } .ui-icon-play { background-position: 0 -160px; } .ui-icon-pause { background-position: -16px -160px; } .ui-icon-seek-next { background-position: -32px -160px; } .ui-icon-seek-prev { background-position: -48px -160px; } .ui-icon-seek-end { background-position: -64px -160px; } .ui-icon-seek-start { background-position: -80px -160px; } /* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ .ui-icon-seek-first { background-position: -80px -160px; } .ui-icon-stop { background-position: -96px -160px; } .ui-icon-eject { background-position: -112px -160px; } .ui-icon-volume-off { background-position: -128px -160px; } .ui-icon-volume-on { background-position: -144px -160px; } .ui-icon-power { background-position: 0 -176px; } .ui-icon-signal-diag { background-position: -16px -176px; } .ui-icon-signal { background-position: -32px -176px; } .ui-icon-battery-0 { background-position: -48px -176px; } .ui-icon-battery-1 { background-position: -64px -176px; } .ui-icon-battery-2 { background-position: -80px -176px; } .ui-icon-battery-3 { background-position: -96px -176px; } .ui-icon-circle-plus { background-position: 0 -192px; } .ui-icon-circle-minus { background-position: -16px -192px; } .ui-icon-circle-close { background-position: -32px -192px; } .ui-icon-circle-triangle-e { background-position: -48px -192px; } .ui-icon-circle-triangle-s { background-position: -64px -192px; } .ui-icon-circle-triangle-w { background-position: -80px -192px; } .ui-icon-circle-triangle-n { background-position: -96px -192px; } .ui-icon-circle-arrow-e { background-position: -112px -192px; } .ui-icon-circle-arrow-s { background-position: -128px -192px; } .ui-icon-circle-arrow-w { background-position: -144px -192px; } .ui-icon-circle-arrow-n { background-position: -160px -192px; } .ui-icon-circle-zoomin { background-position: -176px -192px; } .ui-icon-circle-zoomout { background-position: -192px -192px; } .ui-icon-circle-check { background-position: -208px -192px; } .ui-icon-circlesmall-plus { background-position: 0 -208px; } .ui-icon-circlesmall-minus { background-position: -16px -208px; } .ui-icon-circlesmall-close { background-position: -32px -208px; } .ui-icon-squaresmall-plus { background-position: -48px -208px; } .ui-icon-squaresmall-minus { background-position: -64px -208px; } .ui-icon-squaresmall-close { background-position: -80px -208px; } .ui-icon-grip-dotted-vertical { background-position: 0 -224px; } .ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } .ui-icon-grip-solid-vertical { background-position: -32px -224px; } .ui-icon-grip-solid-horizontal { background-position: -48px -224px; } .ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } .ui-icon-grip-diagonal-se { background-position: -80px -224px; } /* Misc visuals ----------------------------------*/ /* Corner radius */ .ui-corner-tl { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; border-top-left-radius: 6px; } .ui-corner-tr { -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; border-top-right-radius: 6px; } .ui-corner-bl { -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; border-bottom-left-radius: 6px; } .ui-corner-br { -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; border-bottom-right-radius: 6px; } .ui-corner-top { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; border-top-left-radius: 6px; -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; border-top-right-radius: 6px; } .ui-corner-bottom { -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; border-bottom-left-radius: 6px; -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; border-bottom-right-radius: 6px; } .ui-corner-right { -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; border-top-right-radius: 6px; -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; border-bottom-right-radius: 6px; } .ui-corner-left { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; border-top-left-radius: 6px; -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; border-bottom-left-radius: 6px; } .ui-corner-all { -moz-border-radius: 6px; -webkit-border-radius: 6px; border-radius: 6px; } /* Overlays */ .ui-widget-overlay { background: #eeeeee url(images/ui-bg_diagonals-thick_90_eeeeee_40x40.png) 50% 50% repeat; opacity: .80;filter:Alpha(Opacity=80); } .ui-widget-shadow { margin: -7px 0 0 -7px; padding: 7px; background: #000000 url(images/ui-bg_highlight-hard_70_000000_1x100.png) 50% top repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }/* * jQuery UI Dialog 1.8.12 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) * Dual licensed under the MIT or GPL Version 2 licenses. * http://jquery.org/license * * http://docs.jquery.com/UI/Dialog#theming */ .ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; } .ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; } .ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; } .ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; } .ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; } .ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; } .ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; } .ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; } .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; } .ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; } .ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; } .ui-draggable .ui-dialog-titlebar { cursor: move; } /* * jQuery UI Tabs 1.8.12 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) * Dual licensed under the MIT or GPL Version 2 licenses. * http://jquery.org/license * * http://docs.jquery.com/UI/Tabs#theming */ .ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */ .ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; } .ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; } .ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; } .ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; } .ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; } .ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */ .ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; } .ui-tabs .ui-tabs-hide { display: none !important; } stackapplet-1.5.2/html/bg.png0000664000175000017500000000041012332345454016642 0ustar nathannathan00000000000000PNG  IHDRs֝sRGB pHYs  tIMEotEXtCommentCreated with GIMPWuIDATӽ;n@gA6`.3RBӝtJb8\v9\zZ/=:;؟bo8ϼʽ#fN voIENDB`stackapplet-1.5.2/html/favicon.ico0000664000175000017500000000217612332345454017700 0ustar nathannathan00000000000000 h(  Q3M3NP Q 0^3 QHP MP PQRQ TQ Q Q ^Q NTwS4xR]/Q Q Q Q Q Q Q Q PyT`xTͭwRʛY+ȖP ƖQ ĖPPQ PQQ |؏Q)؏QW؏QW؏QWՅBWmWmWmWmWmWmWm6ُQxُQُQُQ؎Pz2mmmmmmُQxُQُQُQُQ؎Py/mmmmm؏Q؏Q7؏Q7؏Q7؏Q7؏Q7؍N7m7m7m7m7m#eleeeeeecE666eleeeeeeedF66p1pupupupupupupupuouTuSNу`҄҄҄҄҄҄҄҄҄҄҃ӆ!ф҄҄҄҄҄҄҄҄ф҄P؃҄ф҄҃҃҃ф҄у stackapplet-1.5.2/html/light_theme.png0000664000175000017500000000237512332345454020557 0ustar nathannathan00000000000000PNG  IHDR szzsRGBbKGD pHYs B(xtIME  0`}IDATXWMU=W{F㌙dl4"ĈQDp!(puBQ\@ndP$ !E$h2$Ifz뢧'ӓ8 j=W1sj+JRȩjJ YE1ŕjDV޴|Mvl 8(#A@DݟIuێD`/+Z5p95 qiԯ=" :kD2~b" @t.UZV)&" *av%fϟ  īЭoNU/ z0snE]%a8͆B@Ua-ۤGI8b2 ̪#e-}$M;=@a"9:@'@}k[&3gmMG=\3 d|l;ƪD<2} k!Jh-[w̉#k#OLNRJ]җp"+/%0}؆ YUz tv`:!Qh$S= @P] tBi06⬯  ",/ _M*:}fu1P',246U/12$Tr6~n83cEㆨeC@-BݐT$ !4qZ2WfzZ ^ֹ 8@=PQ/@]윳`j5x/Qʨgf2k PTyHhR kJo0|s^*=%gfl QE'Yqdts٫f_=Mt!c5]4l֚D4͑fPcdY޼x,*}<{}l7 !vlR2lR%&&k<y^e](ٌ7N}PC(g"B%t(Jmx͓OZq6N'AhgyckϦ;#i=Q=ݡ|5CjG2"8ť|9sm|8)EIENDB`stackapplet-1.5.2/html/dark_theme.png0000664000175000017500000000114312332345454020361 0ustar nathannathan00000000000000PNG  IHDR szzsRGBbKGD pHYs B(xtIME xIDATX헿K[Qǿߛ .$.NMN{!A?Adϒ%CSĠvrGn!{jx.~96̒_RZ +$p3dEklY R.a^>CXvT_ pZk:qc)V+&,l#,`SĀ7*ip'O# KRTt힑4JD·~h4W@rO m(2Sl_<ϋw&6, Note: You can reorder items by dragging them.'), 'tr_account_list' : _('Here are all of the accounts registered with StackApplet:'), 'tr_loading' : _('Loading...'), 'tr_account_settings' : _('Account settings:'), 'tr_refresh_rate' : _('Refresh Rate:'), 'tr_every_5' : _('Every 5 minutes'), 'tr_every_8' : _('Every 8 minutes'), 'tr_every_10' : _('Every 10 minutes'), 'tr_every_15' : _('Every 15 minutes'), 'tr_every_20' : _('Every 20 minutes'), 'tr_appearance_title' : _('Use the options below to change the appearance of StackApplet:'), 'tr_icon_theme' : _('Icon theme:'), 'tr_dark' : _(' Dark'), 'tr_light' : _(' Light'), 'tr_behavior' : _('These settings affect the way StackApplet behaves:'), 'tr_startup' : _(' Load StackApplet when I log in'), 'tr_mm' : _(' Register StackApplet in the Messaging Menu'), 'tr_language' : _('Language:'), 'tr_footer' : _('Copyright 2011 - Nathan Osman'), 'tr_enter_details' : _('Enter the details for the new account below:'), 'tr_site' : _('Site:'), 'tr_user_id' : _('User ID:'), 'tr_find_user' : _('Find User'), 'tr_find_user_hint' : _('If you do not know your user ID, click the "find user" button.'), 'tr_check_assoc' : _('Check for associated accounts'), 'tr_add_account_button' : _('Add Account'), 'tr_assoc_list' : _('The following associated accounts were found:'), 'tr_check_all' : _('check all'), 'tr_uncheck_all' : _('uncheck all'), 'tr_select_assoc' : _('Please select all of the accounts you would like to add.'), 'tr_add_accounts' : _('Add Accounts'), 'tr_enter_disp' : _('Please enter part of the user\'s display name and click "search."'), 'tr_search' : _('Search'), 'tr_searching' : _('Searching...'), 'tr_add_account' : _('add a new account'), 'tr_no_accounts' : _('No accounts.'), 'tr_account_dialog_title' : _('Add New Account'), 'tr_associated_dialog_title' : _('Associated Accounts'), 'tr_find_dialog_title' : _('Find User:'), 'tr_success_language' : _('The language was changed successfully but you will need to restart StackApplet in order to apply the new settings to the entire interface.'), 'tr_error_settings' : _('There was an error retrieving account settings.'), 'tr_error_remove' : _('There was an error removing the account.'), 'tr_error_add' : _('There was an error adding the new account.'), 'tr_error_lookup' : _('There was an error looking up your user ID.'), 'tr_error_check' : _('There was an error checking for associated accounts.'), 'tr_error_swap' : _('There was an error swapping the two items.'), 'tr_error_theme' : _('There was an error changing the theme.'), 'tr_error_refresh' : _('There was an error changing the refresh rate.'), 'tr_error_language' : _('There was an error setting the current language.'), 'tr_error_add_assoc' : _('There was an error adding an account.'), 'tr_error_startup' : _('There was an error setting this application to load at startup.'), 'tr_error_search' : _('There was an error searching for users.'), 'tr_error_stackauth' : _('There was an error loading the list of sites from StackAuth.') } stackapplet-1.5.2/src/preferences.py0000664000175000017500000003230012332345454020245 0ustar nathannathan00000000000000#=================================== # preferences # Copyright 2011 - Nathan Osman # # A web server that allows prefs. # to be changed from within the # user's browser. # # StackApplet is released under # the MIT license #=================================== # For providing HTML / JS translations import js_translations import defaults import BaseHTTPServer import os import platform import shutil import sys import threading import urlparse import uuid import webbrowser import gobject gobject.threads_init() from stackapplet import CAN_USE_MM import defaults # Now lets see if we can import the JSON # module. We try either of these two classes try: import json except ImportError: import simplejson as json # This is the callback that the main thread would like # us to use whenever we need to issue a request for data # from the main thread main_thread_callback = None def register_callback(callback): global main_thread_callback main_thread_callback = callback # Here is a list of files that we can # serve from the web server file_list = ['/bg.png', '/dark_theme.png', '/favicon.ico', '/images/ui-bg_diagonals-thick_90_eeeeee_40x40.png', '/images/ui-bg_flat_15_cd0a0a_40x100.png', '/images/ui-bg_glass_100_e4f1fb_1x400.png', '/images/ui-bg_glass_50_3baae3_1x400.png', '/images/ui-bg_glass_80_d7ebf9_1x400.png', '/images/ui-bg_highlight-hard_100_f2f5f7_1x100.png', '/images/ui-bg_highlight-hard_70_000000_1x100.png', '/images/ui-bg_highlight-soft_100_deedf7_1x100.png', '/images/ui-bg_highlight-soft_25_ffef8f_1x100.png', '/images/ui-icons_2694e8_256x240.png', '/images/ui-icons_2e83ff_256x240.png', '/images/ui-icons_3d80b3_256x240.png', '/images/ui-icons_72a7cf_256x240.png', '/images/ui-icons_ffffff_256x240.png', '/index.html', '/jquery.js', '/jqueryui.css', '/jqueryui.js', '/light_theme.png', '/main_logo.png', '/translations.js'] AUTOSTART_FILE_PATH = os.path.join(os.path.expanduser("~"), ".config/autostart") AUTOSTART_FILE_NAME = os.path.join(AUTOSTART_FILE_PATH, "stackapplet.desktop") MM_FILE_PATH = os.path.join(os.path.expanduser("~"), ".config/indicators/messages/applications") MM_FILE_NAME = os.path.join(MM_FILE_PATH, "stackapplet") class preference_server(BaseHTTPServer.BaseHTTPRequestHandler): nonce = '' auth_token = '' @staticmethod def reset_tokens(): # Generate a nonce and a authorization token preference_server.nonce = uuid.uuid4().hex preference_server.auth_token = uuid.uuid4().hex # Initializes the list of actions available to connecting clients def init_actions(self): # This list is a mapping between request actions # and member functions self.data_list = [ [ '/get_settings', self.process_get_settings ], [ '/get_translations', self.process_get_translations ], [ '/add_account', self.process_add_account ], [ '/remove_account', self.process_remove_account ], [ '/reorder', self.process_reorder ], [ '/set_rate', self.process_set_rate ], [ '/set_startup', self.process_set_startup ], [ '/set_mm', self.process_set_mm ], [ '/set_theme', self.process_set_theme ], [ '/set_language', self.process_set_language ] ] def get_action_function(self, action): for entry in self.data_list: if action == entry[0]: return entry[1] return None # Ensures the user is authorized to access the page def check_authorization(self): # Check to see if the user has already received the auth token if not self.nonce == '': # Get the cookies set by the user cookies = self.headers.getheader('Cookie', '').split('; ') # Check for the stackapplet_auth cookie if 'stackapplet_auth=' + self.auth_token in cookies: return True else: self.send_reply(403, "Invalid authorization credentials supplied. Please click on the preferences menu item in the application to view this page.") return False else: self.send_reply(403, "Your session has expired. Please click on the preferences menu item in the application to view this page.") # There are basically two types of requests # that we process - GET requests (for files) # and POST requests (for actions). def do_GET(self): # Log the request print '[GET]: ' + self.path # Check to see if the user is authenticating if not self.nonce == '' and self.path == '/auth?nonce=' + self.nonce: # It can only be used once, so drop it self.nonce = '' # Redirect the client to the '/' page self.send_response(302) # Set the auth token as a cookie to the user self.send_header('Set-Cookie', 'stackapplet_auth=' + self.auth_token) self.send_header('Location', '/') return # Make sure the user is authorized if not self.check_authorization(): return # If no page was specified, default to index.html if self.path == '/': self.path = '/index.html' # self.path contains the path that we want # to deal with. Check to see if it's one of the # pages that we serve static content from. global file_list if self.path in file_list: self.process_file() else: self.send_reply(404, "The page you have requested does not exist on this server.") def do_POST(self): # Log the request print '[POST]: ' + self.path # Make sure the user is authorized if not self.check_authorization(): return self.init_actions() # Get the POST data length = int(self.headers.getheader('content-length')) self.post_vars = urlparse.parse_qs(self.rfile.read(length)) function = self.get_action_function(self.path) if not function == None: function() else: self.send_reply(404, "The specified command is not recognized by StackApplet.") def send_reply(self, status, reply, content_type = 'text/plain'): self.send_response(status) self.send_header('Content-length', str(len(reply))) self.send_header('Content-type', content_type) self.end_headers() self.wfile.write(reply) def process_file(self): # Now we need to simply construct the path # to the file and grab the contents. First check # to see if the file is in the html folder. filename = os.path.join(sys.path[0], "html" + self.path) if not os.path.isfile(filename): if platform.system() == 'Windows': filename = os.path.join(os.path.dirname(sys.executable), "html" + self.path) else: filename = os.path.join(sys.path[0], "../html" + self.path) f = open(filename, 'rb') data = f.read() if filename.endswith('.png'): self.send_reply(200, data, 'image/png') elif filename.endswith('.css'): self.send_reply(200, data, 'text/css') elif filename.endswith('.js'): self.send_reply(200, data, 'text/javascript') else: self.send_reply(200, data, 'text/html') def process_get_settings(self): # We need to get the current list of accounts. # This means sending a request to the main thread # and waiting for a reply with the list of accounts. global main_thread_callback # Now have this message processed in the main # thread BUT then wait for it to be signaled # once processing is complete event = threading.Event() data = {} json_account = [] gobject.idle_add(main_thread_callback, 'get_settings', event, data) event.wait() # Account list should now have our data for account in data['accounts']: json_account.append({ 'site_name': account['site_name'] }) # Get startup data global AUTOSTART_FILE_NAME, MM_FILE_NAME if os.path.isfile(AUTOSTART_FILE_NAME): startup = 1 else: startup = 0 if os.path.isfile(MM_FILE_NAME): mm = 1 else: mm = 0 # Determine if we are on Windows on_windows = 0 if platform.system() == 'Windows': on_windows = 1 # Determine if we have a messaging menu can_use_mm = 0 if CAN_USE_MM: can_use_mm = 1 response = json.dumps({ 'accounts' : json_account, 'theme' : data['theme'], 'refresh_rate': data['refresh_rate'], 'language' : data['language'], 'startup' : startup, 'mm' : mm, 'on_windows' : on_windows, 'can_use_mm' : can_use_mm }) self.send_reply(200, response, 'application/json') def process_get_translations(self): global main_thread_callback data = {} event = threading.Event() gobject.idle_add(main_thread_callback, 'get_translation', event, data) event.wait() # Refresh the translations and return them js_translations.refresh(data['translation']) json_result = json.dumps(js_translations.translation_keys); self.send_reply(200, json_result, 'application/json') def process_add_account(self): global main_thread_callback # Get the variables for this account site = self.post_vars['site'][0] site_name = self.post_vars['site_name'][0] user_id = self.post_vars['user_id'][0] event = threading.Event() gobject.idle_add(main_thread_callback, 'add_account', event, { 'site' : site, 'site_name': site_name, 'user_id' : user_id }) event.wait() self.send_reply(200, '', 'application/json') def process_remove_account(self): global main_thread_callback account_index = self.post_vars['index'][0] event = threading.Event() gobject.idle_add(main_thread_callback, 'remove_account', event, account_index) event.wait() self.send_reply(200, '', 'application/json') def process_reorder(self): global main_thread_callback old_index = self.post_vars['old_index'][0] new_index = self.post_vars['new_index'][0] event = threading.Event() gobject.idle_add(main_thread_callback, 'reorder', event, { 'old_index': old_index, 'new_index': new_index }) event.wait() self.send_reply(200, '', 'application/json') def process_set_rate(self): global main_thread_callback rate = self.post_vars['rate'][0] event = threading.Event() gobject.idle_add(main_thread_callback, 'set_rate', event, rate) event.wait() self.send_reply(200, '', 'application/json') def process_set_startup(self): # We actually don't need the main thread to manipulate # this feature. global AUTOSTART_FILE_PATH, AUTOSTART_FILE_NAME # See if the path exists if not os.path.isdir(AUTOSTART_FILE_PATH): os.mkdir(AUTOSTART_FILE_PATH) # Now see if we're adding or removing value = self.post_vars['value'][0] if value == '0': # We're removing if os.path.isfile(AUTOSTART_FILE_NAME): os.remove(AUTOSTART_FILE_NAME) else: # We're copying it there. shutil.copyfile('/usr/share/applications/stackapplet.desktop', AUTOSTART_FILE_NAME) self.send_reply(200, '', 'application/json') def process_set_mm(self): # We actually don't need the main thread to manipulate # this feature. global MM_FILE_PATH, MM_FILE_NAME # See if the path exists if not os.path.isdir(MM_FILE_PATH): os.makedirs(MM_FILE_PATH) # Now see if we're adding or removing value = self.post_vars['value'][0] if value == '0': # We're removing if os.path.isfile(MM_FILE_NAME): os.remove(MM_FILE_NAME) else: # We're creating the file f = open(MM_FILE_NAME, 'w') f.write("/usr/share/applications/stackapplet.desktop") f.close() self.send_reply(200, '', 'application/json') def process_set_theme(self): global main_thread_callback theme = self.post_vars['theme'][0] event = threading.Event() gobject.idle_add(main_thread_callback, 'set_theme', event, theme) event.wait() self.send_reply(200, '', 'application/json') def process_set_language(self): global main_thread_callback if 'language' in self.post_vars: language = self.post_vars['language'][0] else: language = '' event = threading.Event() gobject.idle_add(main_thread_callback, 'set_language', event, language) event.wait() self.send_reply(200, '', 'application/json') # This is here to supplant those annoying # status messages that display whenever a client # views a page. We provide our own logging facilities ATM. def log_message(self, a, *b): pass # The port we're listening on current_port = defaults.__default_port__ # Create the server while True: try: httpd = BaseHTTPServer.HTTPServer(('localhost', current_port), preference_server) break except: current_port += 1 # No create a special thread just for the server thread = threading.Thread(target=httpd.serve_forever) # Start it thread.start() # The handler def trigger(): global current_port preference_server.reset_tokens() webbrowser.open("http://localhost:" + str(current_port) + '/auth?nonce=' + preference_server.nonce) stackapplet-1.5.2/src/pynotify_replacement.py0000664000175000017500000000574612332345454022222 0ustar nathannathan00000000000000#========================= # # PyNotify for GTK # drop-in replacement # # Copyright 2010 # Nathan Osman # #========================= import pygtk import gtk import gobject # We also have an init() method that does absolutely nothing def init(unused_param): pass # We have a queue here that we store the notifications # in. When someone calls 'notification::show' then the # notification is either appended to the queue or shown. notifications_queue = [] class Notification: def __init__ (self, title, message, icon): # Start by creating a window that we will use # to display the information. self.window = gtk.Window(gtk.WINDOW_POPUP) # Set a few properties on the window, # including background color. self.window.set_border_width(10) self.window.set_opacity(0.8) self.window.modify_bg(gtk.STATE_NORMAL, gtk.gdk.color_parse('#000000')) # Create two labels to insert into the window self.title = gtk.Label() self.message = gtk.Label() self.title.set_markup("" + title + "") self.message.set_label(message) self.title.set_alignment(0,0) self.message.set_alignment(0,0) self.title.show() self.message.show() # Set some properties on the labels self.title.modify_fg(gtk.STATE_NORMAL, gtk.gdk.color_parse('#ffffff')) self.message.modify_fg(gtk.STATE_NORMAL, gtk.gdk.color_parse('#ffffff')) # Create the image self.image = gtk.Image() pixbuf = gtk.gdk.pixbuf_new_from_file(icon) scaled_buf = pixbuf.scale_simple(48, 48, gtk.gdk.INTERP_BILINEAR) self.image.set_from_pixbuf(scaled_buf) self.image.set_size_request(48, 48) self.image.set_alignment(0,0) self.image.show() # Now create the layout for the control vbox = gtk.VBox() vbox.add(self.title) vbox.add(self.message) vbox.show() hbox = gtk.HBox() hbox.set_spacing(8) hbox.add(self.image) hbox.add(vbox) hbox.show() self.window.add(hbox) # Now we need to position the window screen = gtk.gdk.Screen() rect = screen.get_monitor_geometry(0) xpos = (rect.x + rect.width) - self.window.get_size()[0] - 32 ypos = rect.y + 64 self.window.move(xpos, ypos) def show(self): global notifications_queue # If there is nothing in the queue, then # do nothing. Otherwise, display this window. if not len(notifications_queue): # Done will be called when the notification is done self.display_window() # Append this item to the queue notifications_queue.append(self) def display_window(self): self.window.show() gobject.timeout_add(10000, self.done) def done(self): # Hide this window self.window.hide() global notifications_queue # Pop the item being displayed notifications_queue.remove(self) # See if there are any others in the queue if len(notifications_queue): # Pop and display that item next = notifications_queue[0] next.display_window() stackapplet-1.5.2/src/stackapplet.py0000775000175000017500000006576312332620040020270 0ustar nathannathan00000000000000#! /usr/bin/python #=================================== # stackapplet # Copyright 2011 - Nathan Osman # # Contains the main class # used by StackApplet # # StackApplet is released under # the MIT license #=================================== # Standard modules import os import platform import signal import sys import time import urllib2 import webbrowser # The following modules are required # for supporting translations import locale import gettext # We create a shortcut for the gettext function # which will later point to the function that can # be used to retrieve text in the appropriate language. _ = None # Global definitions __application__ = "StackApplet" __authors__ = ["Nathan Osman", "Isaiah Heyer"] __artists__ = ["Marco Ceppi"] __translators__ = "translator-credits" __copyright__ = "Copyright (c) 2014, Nathan Osman" __license__ = '''Copyright (c) 2014 Nathan Osman Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.''' __version__ = "1.5.2" # Before we do much else, we are going to # suppress any warnings - these wreak havok # on Windows. if platform.system() == 'Windows': import warnings warnings.simplefilter('ignore') # modules required for using GTK import pygtk pygtk.require('2.0') import gtk import gobject # Now for our own modules # ======================= # First try to import the native app # indicator module. Failing that, use our # fallback module instead. try: import appindicator except ImportError: import appindicator_replacement as appindicator # Do the exact same thing with pynotify. # Use our fallback module if it's not available try: import pynotify except ImportError: import pynotify_replacement as pynotify # Initialize PyNotify pynotify.init('StackApplet') # ... the rest of them. import config_store # stores configuration settings / data import defaults # list of default settings import network_thread # for making anychronous network requests to the API import preferences # a web server that allows preferences to be changed # Messaging menu support requires try: import pymm CAN_USE_MM = 1 except ImportError: CAN_USE_MM = 0 #======================================= # This is the root class that contains # all of the core logic for StackApplet #======================================= class stackapplet: # Our constructor def __init__ (self): # Before doing anything, we set the current language self.set_language() # Begin by creating the application indicator which we # use for displaying the icon. self.indicator = appindicator.Indicator ("stackapplet-desktop-client", "stackapplet_grey", appindicator.CATEGORY_APPLICATION_STATUS) self.indicator.set_status(appindicator.STATUS_ACTIVE) self.indicator.set_attention_icon("stackapplet") # Create the settings object so that we # can retrieve the list of accounts, preferences, # and so on. self.prefs = config_store.config_store() self.prefs.load_settings() self.refresh_rate = self.prefs.get_val("refresh_rate", defaults.__default_refresh_rate__) language = self.prefs.get_val("language", defaults.__default_language__) if not language == "": self.set_language(language) # Determine which icon set to use. if self.prefs.get_val("theme", defaults.__default_theme__) == 'dark': icon_to_use = 'stackapplet_grey' else: icon_to_use = 'stackapplet_light' self.indicator.set_icon(icon_to_use) # Create the menus for the accounts self.initialize_menu() # Create the messaging menu entry as well. if CAN_USE_MM: self.mm = pymm.pymm("/usr/share/applications/stackapplet.desktop") # Create the threaded network manager self.network = network_thread.network_thread(self.process_error) # Immediately get it fetching the list of sites. self.stackauth = None self.network.issue_request("http://stackauth.com/1.0/sites?key=" + network_thread.API_KEY, self.process_stackauth, None, True, 1) # Register one of our member functions with # the preference server so that we can supply # the requested details as necessary. preferences.register_callback(self.preference_callback) # Finally, begin updating the accounts. self.timer = None self.update() # If language == "", then the system default is used def set_language(self, language=""): # Bind the domain if not platform.system() == 'Windows': gettext.bindtextdomain("stackapplet", "/usr/share/locale") gettext.textdomain("stackapplet") if language == None: # Figure out the system locale (lang, enc) = locale.getdefaultlocale() # Set it to a sensible default if we couldn't # figure it out otherwise if lang == "": lang = "en_US" else: lang = language # Now create the translation object and # register the translation function if platform.system() == 'Windows': tr = gettext.translation("stackapplet", "po", [lang], fallback=True) else: tr = gettext.translation("stackapplet", "/usr/share/locale", [lang], fallback=True) # Now apply tr to our _ shortcut global _ _ = tr.gettext def initialize_menu(self): # Create the root GTK menu self.root_menu = gtk.Menu() # Create the Accounts and Tools # menu headers menu_item_accounts_header = gtk.MenuItem(_("Accounts")) menu_item_accounts_header.set_sensitive(False) menu_item_accounts_header.show() self.root_menu.append(menu_item_accounts_header) # Now add the accounts to the list. # The return value tells us if any accounts # were added, and if so, we add a separator if self.populate_menu(): separator = gtk.SeparatorMenuItem() separator.show() self.root_menu.append(separator) else: menu_item_accounts_header.set_label(_("No Accounts")) # Now we add the remaining menu items menu_item_tools_header = gtk.MenuItem(_("Tools")) menu_item_tools_header.set_sensitive(False) menu_item_tools_header.show() self.root_menu.append(menu_item_tools_header) # For these items, we can use the stock # GTK menuitems menu_item_refresh = gtk.ImageMenuItem(stock_id=gtk.STOCK_REFRESH) menu_item_prefs = gtk.ImageMenuItem(stock_id=gtk.STOCK_PREFERENCES) menu_item_about = gtk.ImageMenuItem(stock_id=gtk.STOCK_ABOUT) menu_item_quit = gtk.ImageMenuItem(stock_id=gtk.STOCK_QUIT) menu_item_refresh.connect("activate", self.menu_refresh_activate) menu_item_prefs .connect("activate", self.menu_prefs_activate) menu_item_about .connect("activate", self.menu_about_activate) menu_item_quit .connect("activate", self.menu_quit_activate) menu_item_refresh.show() menu_item_prefs .show() menu_item_about .show() menu_item_quit .show() # Add them all to the menu self.root_menu.append(menu_item_refresh) self.root_menu.append(menu_item_prefs) self.root_menu.append(menu_item_about) self.root_menu.append(menu_item_quit) self.indicator.set_menu(self.root_menu) def populate_menu(self): # Reset our accounts container self.accounts = [] # Loop through each of the accounts in the list entries = self.prefs.get_val("accounts", defaults.__default_accounts__) accounts_processed = 0 for entry in entries: self.create_menu_item(entry) accounts_processed += 1 return accounts_processed def create_menu_item(self, entry): # Create the menu item menu_entry = gtk.MenuItem() menu_entry.set_label(_("Loading...")) # Add it to the menu menu_entry.show() self.root_menu.insert(menu_entry, 1 + len(self.accounts)) # Create the messaging menu entry if CAN_USE_MM: mm_source = pymm.pymm_source(entry["site_name"]) mm_source.set_count(0) else: mm_source = None # Now we need to check and see what values # are present in the configuration file. reputation_on_last_poll = entry['reputation_on_last_poll'] if 'reputation_on_last_poll' in entry else 0 last_comment_ts = entry['last_comment_ts'] if 'last_comment_ts' in entry else 0 last_answer_ts = entry['last_answer_ts'] if 'last_answer_ts' in entry else 0 unread_reputation = entry['unread_reputation'] if 'unread_reputation' in entry else 0 unread_comments = entry['unread_comments'] if 'unread_comments' in entry else 0 unread_answers = entry['unread_answers'] if 'unread_answers' in entry else 0 notifications = entry['notifications'] if 'notifications' in entry else 0 account = { "menu" : menu_entry, # the Gtk menu "mm_source" : mm_source, # the Messaging menu source "site" : entry['site'], # the URL of the SE site with this account "site_name" : entry['site_name'], # the name of the SE site "user_id" : entry['user_id'], # the user ID for the site "reputation_on_last_poll" : reputation_on_last_poll, # the API will never return 0, so this is safe "last_comment_ts" : last_comment_ts, # the last timestamp for comments to user "last_answer_ts" : last_answer_ts, # the last timestamp for answers to questions "unread_reputation" : unread_reputation, # the amount of rep. earned that hasn't been seen "unread_comments" : unread_comments, # the num. of comments that haven't been seen "unread_answers" : unread_answers, # the num. of answers that haven't been seen "notifications" : notifications } # whether this item has notifications or not # If there are any notifications, display # the indicator. if notifications: self.activate_notification(account) # Set the handlers menu_entry.connect("activate", self.menu_item_activate, account) if CAN_USE_MM: mm_source.source.connect("user-display", self.messaging_item_activate, account) # Add this item to our account list self.accounts.append(account) def process_stackauth(self, data, ignored): self.stackauth = data def display_notification(self, title, message, image): # The image in this case is expected to either # be an icon name (in which case we display it) # or a complete URL (in which case we fetch it) if image.startswith("/"): # Local path, so display it. n = pynotify.Notification(title, message, image) n.show() else: # Check to see if this image is in the cache img_path = os.path.join(os.path.expanduser("~"),".stackapplet") img_path = os.path.join(img_path, 'logos') img_fn = os.path.join(img_path, image + ".png") if os.path.isfile(img_fn): # It's in the cache, so simply display # the image. n = pynotify.Notification(title, message, img_fn) n.show() else: # Make sure that the dir exists if not os.path.isdir(img_path): os.makedirs(img_path) # We need to determine which site is equivalent to this image. for site in self.stackauth['api_sites']: if site['site_url'] == 'http://' + image + '.com': self.network.issue_request(site['icon_url'], self.save_and_display_notification, { 'title': title, 'message': message, 'image_location': img_fn}, False) def save_and_display_notification(self, data, info): # Dump data to the file. f = open(info['image_location'], "wb") f.write(data) f.close() self.display_notification(info['title'], info['message'], info['image_location']) def activate_notification(self, account): # Set the color of our indicator self.indicator.set_status(appindicator.STATUS_ATTENTION) # Also set the active state of the messaging menu if CAN_USE_MM: account['mm_source'].set_notify(True) # Check to see if there are any pending notifications # for any of the accounts. def test_notifications(self): any_notifications = 0 for account in self.accounts: if account['notifications']: if CAN_USE_MM: account['mm_source'].set_notify(True) any_notifications = 1 else: if CAN_USE_MM: account['mm_source'].set_notify(False) if any_notifications: self.indicator.set_status(appindicator.STATUS_ATTENTION) else: self.indicator.set_status(appindicator.STATUS_ACTIVE) # Process an error that we receive from the # network thread def process_error(self, data, error_str): # If it's an account, then at least # display a notification in that account # that there was an error retrieving the data. if data in self.accounts: data['menu'].set_label(error_str) # This function is responsible for dispatching # the API requests and making sure that when the # requests are completed that they are processed # by the right functions. def update(self): # Remove the current timer if(not self.timer == None): gobject.source_remove(self.timer) for account in self.accounts: self.update_account(account) # Now run the update again after the specified # timeout has been reached self.timer = gobject.timeout_add(self.refresh_rate, self.update) def update_account(self, account): # Start by dispatching a request to get the # current reputation for this account. self.network.issue_api_request(account['site'], '/users/' + account['user_id'], self.update_reputation, account) self.network.issue_api_request(account['site'], '/users/' + account['user_id'] + '/mentioned', self.update_comments, account, 'fromdate=' + str(account["last_comment_ts"])) self.network.issue_api_request(account['site'], '/users/' + account['user_id'] + '/questions', self.update_answers_1, account) def update_reputation(self, data, account): # First make sure that the account still exists if not account in self.accounts: return # First check to see if there is any new reputation current_rep = data['items'][0]['reputation'] # Check to see if there has been a change if not current_rep == account['reputation_on_last_poll'] and not account['reputation_on_last_poll'] == 0: # Calculate the change change = current_rep - account['reputation_on_last_poll'] # Add this new reputation to the amount of reputation # that the user has not seen yet. account['unread_reputation'] += change # Display a notification if change > 0: message = _("You have gained %s reputation.") % (change) else: message = _("You have lost %s reputation.") % (abs(change)) self.display_notification(account["site_name"] + ":", message, account['site']) # Last but not least, we need to set that this item # has a pending unread notification account['notifications'] = 1 self.activate_notification(account) # Update the menu captions self.set_menu_label(account, current_rep) # Set this as the new reputation. account['reputation_on_last_poll'] = current_rep def update_comments(self, data, account): # First make sure that the account still exists if not account in self.accounts: return if len(data['items']) and account["last_comment_ts"]: # We know there is one or more comments if len(data['items']) == 1: message = _("%s has posted a comment to you.") % (data['items'][0]["owner"]["display_name"]) else: message = _("You have received %s new comments.") % (len(data['items'])) self.display_notification(account["site_name"] + ":", message, account['site']) account['unread_comments'] += len(data['items']) account['notifications'] = 1 self.set_menu_label(account, account['reputation_on_last_poll']) self.activate_notification(account) # Set the timestamp account["last_comment_ts"] = int(time.time()) def update_answers_1(self, data, account): # First make sure that the account still exists if not account in self.accounts: return # We are only half of the way there. We have the users' # questions... now get the answers to those questions. # Create a vectorized list of question ids id_array = [] for question in data['items']: id_array.append(str(question["question_id"])) if len(id_array) and account["last_answer_ts"]: # Join the IDs id_str = ";".join(id_array) # Issue the second part of the request self.network.issue_api_request(account['site'], '/questions/' + id_str + '/answers', self.update_answers_2, account, 'fromdate=' + str(account["last_answer_ts"])) # ...and the third part - which will get us a list # of comments to the question list we have self.network.issue_api_request(account['site'], '/posts/' + id_str + '/comments', self.update_post_comments, account, 'fromdate=' + str(account["last_answer_ts"])) # Set the timestamp account["last_answer_ts"] = int(time.time()) def update_answers_2(self, data, account): # First make sure that the account still exists if not account in self.accounts: return # See if there are any new answers if len(data['items']): # Display a notification message = _("Your have received %s new answer(s) to your questions.") % (len(data['items'])) self.display_notification(account["site_name"] + ":", message, account['site']) account['unread_answers'] += len(data['items']) account['notifications'] = 1 self.set_menu_label(account, account['reputation_on_last_poll']) self.activate_notification(account) def update_post_comments(self, data, account): # See if there are any comments that matched the criterion # First make sure that the account still exists if not account in self.accounts: return # We know there is one or more comments but are they # comments that were made by that user? for comment in data['items']: if int(account['user_id']) == comment["owner"]["user_id"]: data['items'].remove(comment) if len(data['items']): if len(data['items']) == 1: message = _("%s has posted a comment on your question.") % (data['items'][0]["owner"]["display_name"]) else: message = _("You have received %s new comments to your question.") % (len(data['items'])) self.display_notification(account["site_name"] + ":", message, account['site']) account['unread_comments'] += len(data['items']) account['notifications'] = 1 self.set_menu_label(account, account['reputation_on_last_poll']) self.activate_notification(account) # Either way, save the account information self.save_account_info() def set_menu_label(self, account, reputation): # Construct the label we will be using for the account in the menu label = account['site_name'] + ' / ' + str(reputation) # Check for unread reputation if account['unread_reputation']: label += _(' [%s reputation]') % (account['unread_reputation']) # Check for comments if account['unread_comments']: label += _(' [%s comments]') % (account['unread_comments']) # Check for new answers if account['unread_answers']: label += _(' [%s answers]') % (account['unread_answers']) if account['notifications']: label = "* " + label account['menu'].set_label(label) # Don't forget about the MM if CAN_USE_MM: account['mm_source'].set_count(account['unread_comments'] + account['unread_answers']) def preference_callback(self, command, event, data): # Process the request that was made if command == 'get_settings': data['accounts'] = self.accounts[:] data['theme'] = str(self.prefs.get_val('theme', defaults.__default_theme__)) data['refresh_rate'] = int(self.refresh_rate) data['language'] = str(self.prefs.get_val('language', defaults.__default_language__)) elif command == 'get_translation': global _ data['translation'] = _ elif command == 'add_account': # Add the account self.create_menu_item(data) self.update_account(self.accounts[len(self.accounts) - 1]) elif command == 'remove_account': index = int(data) # Remove the menu item and MM entry self.root_menu.remove(self.accounts[index]['menu']) if CAN_USE_MM: del self.accounts[index]['mm_source'] # Delete the account del self.accounts[index] self.test_notifications() elif command == 'reorder': # We need to grab a copy of the item account = self.accounts[int(data['old_index'])] # Now remove it from the list self.accounts.remove(account) # Insert it into its new location self.accounts.insert(int(data['new_index']), account) # We also need to switch the menu items around too. self.root_menu.remove(account['menu']) self.root_menu.insert(account['menu'], 1 + int(data['new_index'])) elif command == 'set_rate': self.refresh_rate = int(data) self.prefs.set_val('refresh_rate', int(data)) elif command == 'set_theme': if data == 'dark': icon_to_use = 'stackapplet_grey' else: icon_to_use = 'stackapplet_light' self.indicator.set_icon(icon_to_use) self.prefs.set_val('theme', str(data)) elif command == 'set_language': self.set_language(str(data)) self.prefs.set_val('language', str(data)) # Set the event to allow the other thread # to continue along. event.set() def menu_item_activate(self, widget, account): # We need to either reset any unread stuff # or if there isn't any, then launch the user's # profile page. if account['notifications']: # Reset everything. account['notifications'] = 0 account['unread_reputation'] = 0 account['unread_comments'] = 0 account['unread_answers'] = 0 # Reset the menu caption self.set_menu_label(account, account['reputation_on_last_poll']) # Recheck for global notifications self.test_notifications() # Otherwise, display their profile page else: webbrowser.open("http://" + account["site"] + ".com/users/" + str(account["user_id"])) # Note that I have no clue what the third parameter is since # it is not documented ANYWHERE. def messaging_item_activate(self, indicator, unknown_data, account): # Just turn around and call menu_item_activate self.menu_item_activate(None, account) def menu_refresh_activate(self, widget): self.update() def menu_prefs_activate(self, widget): preferences.trigger() def menu_about_activate(self, widget): global _,__application__,__author__,__copyright__,__license__,__version__ # Display the about dialog box dialog = gtk.AboutDialog() dialog.set_name(_(__application__)) dialog.set_authors(__authors__) dialog.set_artists(__artists__) dialog.set_translator_credits(_(__translators__)) dialog.set_copyright(_(__copyright__)) dialog.set_license(_(__license__)) dialog.set_version(__version__) if platform.system() == 'Windows': dialog.set_logo(gtk.gdk.pixbuf_new_from_file(os.path.join(os.path.dirname(sys.executable), "images/stackapplet.png"))) else: dialog.set_logo_icon_name("stackapplet") dialog.connect("response",lambda x,y: dialog.destroy()) dialog.run() def menu_quit_activate(self, widget): self.shutdown() # Saves all account information def save_account_info(self): # Save the accounts accounts_data = [] for account in self.accounts: # Take a copy copy_of_account = dict(account) # Remove two items del copy_of_account['menu'] del copy_of_account['mm_source'] accounts_data.append(copy_of_account) self.prefs.set_val('accounts', accounts_data) self.prefs.save_settings() # This is the safe shutdown function that # ensures all accounts' notification data # are saved with the accounts' information. def shutdown(self): # We need the network thread to shutdown. self.network.request_queue.put([0, None]) self.network.join() # ...and we need the preferences thread to # shutdown. preferences.httpd.shutdown() preferences.thread.join() self.save_account_info(); gtk.main_quit() stackapplet_instance = None # Do a quick check for old config files if os.path.isfile(config_store.CONFIG_FILE_PATH): dialog = gtk.MessageDialog(None, gtk.DIALOG_MODAL, gtk.MESSAGE_INFO,gtk.BUTTONS_OK, _("StackApplet 1.5.1 has found some old configuration files from a previous version of StackApplet.\n\nThese files will be removed so that StackApplet can continue loading. If you had any accounts registered with StackApplet, you will need to add them again.\n\nNote: StackApplet is no longer a Gnome panel applet. It is an indicator and can be located in your system's notification or tray area.")) dialog.set_title(_("StackApplet has been upgraded:")) dialog.connect("response", lambda x,y: dialog.destroy()) dialog.run() # Delete the old files os.remove(config_store.CONFIG_FILE_PATH) # SIGTERM handler def signal_handler(a, b): global stackapplet_instance stackapplet_instance.shutdown() # Create the instance of stackapplet and # run the main GTK thread if __name__ == "__main__": stackapplet_instance = stackapplet() # For Windows, we need our helper module if platform.system() == 'Windows': import w32_notifications w32_notifications.register_main_instance(stackapplet_instance) signal.signal(signal.SIGTERM, signal_handler) gtk.main() stackapplet-1.5.2/src/w32_notifications.py0000664000175000017500000000257512332345454021323 0ustar nathannathan00000000000000#=================================== # stackapplet # Copyright 2011 - Nathan Osman # # Allows StackApplet to receive # Win32 notifications # # StackApplet is released under # the MIT license #=================================== # Win32 modules import win32gui import win32api import win32con stackapplet_instance = None # Provides the main Py file with a way to # give us a reference to itself def register_main_instance(inst): global stackapplet_instance stackapplet_instance = inst # The window procedure that will receive the # messages. def window_procedure(hwnd, msg, wparam, lparam): if msg == win32con.WM_QUERYENDSESSION: global stackapplet_instance stackapplet_instance.shutdown() return win32gui.DefWindowProc(hwnd, msg, wparam, lparam) # Create the window that we # will use to receive notifications window_class = win32gui.WNDCLASS() window_class.lpszClassName = 'test_window' window_class.lpfnWndProc = window_procedure win32gui.RegisterClass(window_class) hinst = win32api.GetModuleHandle(None) main_window = win32gui.CreateWindowEx(0, 'test_window', '', win32con.WS_POPUP, 0, 0, 0, 0, 0, 0, hinst, None) # and we're done! stackapplet-1.5.2/src/appindicator_replacement.py0000664000175000017500000000551712332617754023017 0ustar nathannathan00000000000000#========================= # # AppIndicator for GTK # drop-in replacement # # Copyright 2010 # Nathan Osman # #========================= # We require PyGTK import gtk import gobject # We also need os and sys import os import sys # Types CATEGORY_APPLICATION_STATUS = 0 # Status STATUS_ACTIVE = 0 STATUS_ATTENTION = 1 # Locations to search for the given icon search_locations = [ os.path.join(os.path.dirname(sys.executable), "images"), os.path.join(os.path.dirname(sys.path[0]), "images"), os.path.join(os.path.dirname(sys.path[0]), "../images"), '/usr/share/pixmaps' ] def get_icon_filename(icon_name): # Determine where the icon is global search_locations for folder in search_locations: filename = os.path.join(folder, icon_name + ".png") if os.path.isfile(filename): return filename return None # The main class class Indicator: # Constructor def __init__ (self,unknown,icon,category): # Store the settings self.inactive_icon = get_icon_filename(icon) self.active_icon = "" # Blank until the user calls set_attention_icon # Create the status icon self.icon = gtk.StatusIcon() # Initialize to the default icon self.icon.set_from_file(self.inactive_icon) # Set the rest of the vars self.menu = None # We have no menu yet def set_menu(self,menu): # Save a copy of the menu self.menu = menu # Now attach the icon's signal # to the menu so that it becomes displayed # whenever the user clicks it self.icon.connect("activate", self.show_menu) def set_status(self, status): # Status defines whether the active or inactive # icon should be displayed. if status == STATUS_ACTIVE: self.icon.set_from_file(self.inactive_icon) else: self.icon.set_from_file(self.active_icon) def set_icon(self, icon): # Set the new icon self.icon.set_from_file(get_icon_filename(icon)) def set_attention_icon(self, icon): # Set the icon filename as the attention icon self.active_icon = get_icon_filename(icon) def show_menu(self, widget): # Show the menu self.menu.popup(None,None,None,0,0) # Get the location and size of the window mouse_rect = self.menu.get_window().get_frame_extents() self.x = mouse_rect.x self.y = mouse_rect.y self.right = self.x + mouse_rect.width self.bottom = self.y + mouse_rect.height # Set a timer to poll the menu self.timer = gobject.timeout_add(100, self.check_mouse) def check_mouse(self): if not self.menu.get_window().is_visible(): return # Now check the global mouse coords root = self.menu.get_screen().get_root_window() x,y,z = root.get_pointer() if x < self.x or x > self.right or y < self.y or y > self.bottom: self.hide_menu() else: return True def hide_menu(self): self.menu.popdown() stackapplet-1.5.2/setup.py0000664000175000017500000000401512332351072016310 0ustar nathannathan00000000000000#================================== # # setup.py # Copyright 2011 - Nathan Osman # #================================== from distutils.core import setup from glob import glob from os import path # Enhanced globbing utility def recursive_glob(install_path, base_folder, pattern): # This list will store the tuples we generate installation_tuples = [] # Grab everything that matches the pattern contents = glob(base_folder + '/' + pattern) # Now enumerate all of the matches and recursively add # any folders we come across files = [] for entry in contents: if path.isdir(entry): # Determine the name of the folder basename = path.basename(entry) # Recursively add this folder installation_tuples.extend(recursive_glob(install_path + '/' + basename, entry, '*')) else: # It's not a folder so add it to our list of files files.append(entry) # If there are any files, append them here if len(files): installation_tuples.append((install_path, files)) return installation_tuples # Collect filenames for the package def collect_filenames(): # This list will store all of the tuples for installation installation_tuples = [] installation_tuples.extend(recursive_glob('/usr/share/stackapplet', 'src', '*.py')) installation_tuples.extend(recursive_glob('/usr/share/stackapplet/html', 'html', '*')) installation_tuples.extend(recursive_glob('/usr/share/pixmaps', 'images', '*')) installation_tuples.extend(recursive_glob('/usr/share/locale', 'po', '*')) installation_tuples.extend([('/usr/share/applications', ['other/stackapplet.desktop'])]) return installation_tuples setup(name='stackapplet', version='1.5.2', description='Notification tool for Stack Exchange sites.', author='Nathan Osman', author_email='admin@quickmediasolutions.com', url='https://launchpad.net/stackapplet', license='MIT License', data_files=collect_filenames()) stackapplet-1.5.2/images/0000775000175000017500000000000012333054162016044 5ustar nathannathan00000000000000stackapplet-1.5.2/images/stackoverflow.png0000664000175000017500000000403012332345454021446 0ustar nathannathan00000000000000PNG  IHDR@@iqsRGBbKGD pHYs B(xtIME5VLIDATxlw_K;(dsnnub6[ɀKC8赥\af:QCƲi(-0qJ[_wmg]W[O}y><<菦To֌7b9+&F`\=@ &8!٘?bP,mO9&Ӏtu6b ?0f H0l]RKO`X5r?akv6W&N$& { MXa{'~s#00ABlCsg~2v<# +U|!=_JDXah v +uCu۱NoB6+nvy1fq@XՔ[$za{#Qs"PF-s-Zx;ċ gQNu Sz7;0Ef]׀u8292]W-NJ5ǃZ^{ mǫJ{O'lyR8 -(9gzY`*۬@9kk dΉy ,*TYضtl?}4˱΃4a1Zby5YȈzY,{Ce=FywŲcj,<.^os[ #Z;9P读VGX! kZ ?*/[PRMuW|;մSR+U>tq8=dEj-fjOə_ y:$LuWAC?ooMArBvioWzcYLMHHU~` 8z0* |U+{"@]!B(tl K@!iu/?/#6Hw^m@o( ו۴nb۔\Uf̲,[Vd@u4XuR8&BOc C-;m)VjiX Dz&_0Lexko:@7Uxo^[!d˖~`myg]#vzkkX)|ddjƅ+Veg_S]}x0LϹO"p 3߉ =\!AfBPzwSL C?BF N7MD5^='fZ`Ɔ4JDnQwӡ:P7ftM's0ǶbtkpmAܢU*#`Ri/WMk=W 155 EE4=l̓u@v&]/PD!.  N(˜Z0ՁǼrV,8/{ʕ9V͐"m5 Š 5t'xltn8Ɋ;X} ^rIoPEg㑘"0&Q2.v%7vg &Xr(vu9/ "w6zJs<`5 `9‘]͇?bZcXREj^cP0x{. ,~KWsIENDB`stackapplet-1.5.2/images/stackapplet_light.png0000664000175000017500000000237512332345454022271 0ustar nathannathan00000000000000PNG  IHDR szzsRGBbKGD pHYs B(xtIME  0`}IDATXWMU=W{F㌙dl4"ĈQDp!(puBQ\@ndP$ !E$h2$Ifz뢧'ӓ8 j=W1sj+JRȩjJ YE1ŕjDV޴|Mvl 8(#A@DݟIuێD`/+Z5p95 qiԯ=" :kD2~b" @t.UZV)&" *av%fϟ  īЭoNU/ z0snE]%a8͆B@Ua-ۤGI8b2 ̪#e-}$M;=@a"9:@'@}k[&3gmMG=\3 d|l;ƪD<2} k!Jh-[w̉#k#OLNRJ]җp"+/%0}؆ YUz tv`:!Qh$S= @P] tBi06⬯  ",/ _M*:}fu1P',246U/12$Tr6~n83cEㆨeC@-BݐT$ !4qZ2WfzZ ^ֹ 8@=PQ/@]윳`j5x/Qʨgf2k PTyHhR kJo0|s^*=%gfl QE'Yqdts٫f_=Mt!c5]4l֚D4͑fPcdY޼x,*}<{}l7 !vlR2lR%&&k<y^e](ٌ7N}PC(g"B%t(Jmx͓OZq6N'AhgyckϦ;#i=Q=ݡ|5CjG2"8ť|9sm|8)EIENDB`stackapplet-1.5.2/images/serverfault.png0000664000175000017500000000146312332345454021126 0ustar nathannathan00000000000000PNG  IHDR@@iqsRGBbKGD pHYs B(xtIME52|҃IDATx?hSQƿs_mMRP)RI]DAYu-tt "H;wEi*4J]J(&1y8T /gSoKIEQEQEQeA\Xxd8=;CC`ؚ\]\)G{hYCeYܽ0/ >bv{n\Qz#sZdR}f4Ru `a^j!IFˢ+;o_l@is[w_nlHEڀ=@kMu{&+\i)9`tltY]=O :+D1r#E`,u>|XQ\c`6@ 5o7`#ع<"p*v(*R}7:i fN{\Aqrr 'Ra&ꌫ9>; 4$ xwZpV^-bcG2ٍRiCk h/%[kM+Oܕj"QYN#0|ͩXI_c36n Hկ" QKοAp@E1`\S@ h w|i?ӡSDy:EQEQEQ_~8_]IENDB`stackapplet-1.5.2/images/stackapps.png0000664000175000017500000000556312332345454020562 0ustar nathannathan00000000000000PNG  IHDR@@iqsRGBbKGD pHYs B(xtIME5 IDATxZkU; TڨJ㏚֤⣍NC a3T16bʄsQ@ ]De?B8٥ |{eg+ F>D9i&H 8q֎0#{Ԟ#s` ܛPHC*E "H&+9Q^~e\bD!X%|EZ[|@_{hS5[CEM8@`_bDR"8xvy -Ɍ[޶L0w`l/h  ZA P ű 25.՞e^բAEpqw>ijP+Pم1e6 v>@ f@U Y[z?D42mϜ*[ փzxݥ{HeNWd6f$[ 8 c|H$G%Gw>yU!B5]?$zΗsrb-l)xPymm[lh1;:`ljs(Z?=tvn}5vf0+X / i;ǃmݟ{qˍF ~@5ܺbڻk-b=K67L@"MgLY\d2 )b~&ﰗ#U[h9!-a '"<Pw\wx 3M{L-g rj#22|%M4_3q1Urz9S.% 9]LƼd`czj,G6Y5 ǁ4kbq7%>amv^i2&! RyUy .YWmJWTD+P=(Ź* l VsPrFl@1 +N($Fquuuvo8} ?N /M=ZQ}栚#NQ=Jjf$EAz{ 88N*"ʭFKV &B='-y.1_RJ!P//ne`|m&'f, WD*3Xѧƹ90_ ">S/Y1o:٬a$P) ϿAu@%B;|򵛮$wwwC(;ưc$)pR rSAS b'E6.]`ׇVv݉qqBx-s+DWBŤ fׁɸ#IeƝ՝udDrM3WewM}-q/Waǁq]L4ji{#No07&q]-);GjܣQij,ZXσx }lAxvpzK]iW:|ܨBPZ% j%*qiᨾ`wAVDx?{~n~du^j- _"0by')iȹE*/bܟj=6-0_>SE4KWel_$YhG_|p?VTf^ȱc(/R &9R(ebTDjNjL4';ĨMV9E> # %GאZf"XW%$0?kZO^Ѵ̠o8BJ=+]l%{{CRaɻ/%IO9.%v-|MZ",$z;7@08 u7R=SB}RTGe͞zYoU4X?JU,)Γɘf誤P2ׄ)쁢ͻ5M։^^P&M~U%B8;ҼfY.h7׼]k鳙-JM6|SU;VSsy ,Vv_[.WzĒD4L]_Tuy+I-u~6j/KXv;gdޮzqe A2CĊ;cݩDfŠz?cH9~6ԆPji[$[IENDB`stackapplet-1.5.2/images/superuser.png0000664000175000017500000000224112332345454020614 0ustar nathannathan00000000000000PNG  IHDR@@iqsRGBbKGD pHYs B(xtIME6sz!IDATxMh\U$& 5_5mV"4тBVB7P-tZL&Q UiDSɳJ0IK&^Ni3yw2Ǜ7ᅴ=s  (P@5+YƜǁ.6I &:B)) >E9AL8 h}-y)+R B|x5khBe85j7v]i"; -P^l0TS9,#^(uxU9Va5w+Zm5LJ8`< ~00A55}M!&Z(5J6p@}XzE9菘5ͪޱ A]ZX2Iz&}/P@7ﳤRIENDB`stackapplet-1.5.2/images/meta.stackoverflow.png0000664000175000017500000000356412332345454022406 0ustar nathannathan00000000000000PNG  IHDR@@iqsRGBbKGD pHYs B(xtIME=IDATxZkhUΝ}h[-ZmU""Gm*?**U0tg7[F)n6b1XP!(k!?U6IfںnGge&}&&.{sw]`Z4mQ\7l*fR4Sz" yY!^:e4+)J˲윟~ss =ݚRjIU9A49s< "҈5f^KD |]'`۶m}BDOМ5RʶQG8i$>y۶WL#4 =3X,V;;˪=,d2ٙmnmm =g)FD"0 cX))W"|a"x@kk! B4Mw|B sm#AYm|5MQ>F1KK)h4ژ˜-[Rwuu/.' !DR_Yջ1Lcf3tI:=HxqRRnp #teYw7?? `}e9#B,4:::1""z˶H$Ґ%Iaq1)l8HPrO2s3a浚R>D  ӣx?c)Mڶ}`}V?;G"M$[Qݥ ?W>ffBC|"0n˥Pv\aqBXE":s6mڔt]-daK)7)jii;\d"^,M&O:wF`p+<1ZRjC O&Z)3CDPX,H& @'=nph l'E;(Om#'<7445k"];uҤ%rt4M9^" }8SMO ꁡ+M)i=DG!"z=̽zR'qZ WaV8n-yADw5YTF f̽x|igF72sA?5WxU~1}iZoKKˀן$g]P荲JNM9v9^L^F눨 uj | {30 ӣmذaXMD41sC u}D&)V^ B!@Vq7Pr۶aZ +$p3dEklY R.a^>CXvT_ pZk:qc)V+&,l#,`SĀ7*ip'O# KRTt힑4JD·~h4W@rO m(2Sl_<ϋw&6, Accessories->StackApplet or by running the following command: python /usr/share/stackapplet/stackapplet.py If you are using Ubuntu 11.04 or later, simply press the super key, type "stackapplet", and push [enter]. ==================================== 1.1 Running on Ubuntu StackApplet is designed to take advantage of the new AppIndicator module included with recent versions of Ubuntu. StackApplet will detect its presence and automatically use it when it is available. If you do not have this module installed, see the following section: ==================================== 1.2 Running on other Linux distros Running on other Linux distros is made possible thanks to the replacement for AppIndicators and PyNotify included with StackApplet. These small modules expose the same or similar functionality to StackApplet and translates the functions to their Gtk.StatusIcon / PyNotify equivalent. ==================================== 1.3 Building / running on Windows It is now possible to run StackApplet on Windows. The Python scripts themselves will run unmodified on Windows. Generating the installation file can be done using the following instructions: 1. Download and install Python 2.6, PyGTK, PyInstaller, PyWin32, and InnoSetup. 2. Run 'python stackapplet.py' to verify that StackApplet launches. 3. Run 'python Build.py other/windows/stackapplet.spec', where 'Build.py' is the Python script from PyInstaller. 4. Open the InnoSetup script ('/other/windows/setup.iss') and build the installer. Note that it is possible to create the installer using Wine on another platform. If PyInstaller is installed in 'C:\PyInstaller', then you can simply run: other/windows/build_in_wine.sh Also note that the replacement modules for AppIndicators and PyNotify are designed to run in Windows. ==================================== 2. Translating StackApplet Translating StackApplet is very simple. First, you should make sure that the POT file is up to date by running the following script included with the source: ./generate_translation_file Then you can create the .mo files as per usual. Once the .mo files are created, they can be copied to their proper location by running the following command: ./convert_and_move_translations stackapplet-1.5.2/po/0000775000175000017500000000000012333054162015215 5ustar nathannathan00000000000000stackapplet-1.5.2/po/pt/0000775000175000017500000000000012333054162015640 5ustar nathannathan00000000000000stackapplet-1.5.2/po/pt/LC_MESSAGES/0000775000175000017500000000000012333054162017425 5ustar nathannathan00000000000000stackapplet-1.5.2/po/pt/LC_MESSAGES/stackapplet.mo0000664000175000017500000001626012332345454022310 0ustar nathannathan00000000000000GTa+> jx)>!3 < HU ep, 0 @ J9U >    @ 8I    . M -T % *3 -^ & 4 < +% (Q /z ' 0 ?*C2n>3+"_6  2)!,6c_% :E#W{3%9;MM  X&9  )&,*3*2::m8#=)C$mT09 R@^;!8@y 50(7>;-? !$G*, 3C&:E) #B@AF%.6 2 "D/+ 14'=98< Dark Light Load StackApplet when I log in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment on your question.%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Language:Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:StackApplet 1.5 has found some old configuration files from a previous version of StackApplet. These files will be removed so that StackApplet can continue loading. If you had any accounts registered with StackApplet, you will need to add them again. Note: StackApplet is no longer a Gnome panel applet. It is an indicator and can be located in your system's notification or tray area.StackApplet has been upgraded:SystemThe following associated accounts were found:The language was changed successfully but you will need to restart StackApplet in order to apply the new settings to the entire interface.There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting the current language.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.You have received %s new comments to your question.You have received %s new comments.Your have received %s new answer(s) to your questions.add a new accountcheck alluncheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-11-22 06:27+0000 Last-Translator: brunopereira81 Language-Team: Portuguese MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-23 05:57+0000 X-Generator: Launchpad (build 14336) Escuro Claro Carregar a aplicação quando o login é efetuado Registar a aplicação no Messaging Menu [%s respostas] [%s comentários] [%s de reputação]%s adicionou um comentário à sua pergunta.%s adicionou um comentário.Nota: Pode mudar a ordem dos itens arrastando esses para a posição desejada.Definições das contas:ContasAdicionar uma ContaAdicionar contasAdicionar Nova ContaAparênciaContas AssociadasProcurar todas as contas associadasCopyright 2011 - Nathan OsmanInsira os detalhes da nova conta nos campos abaixo:A cada 10 minutosA cada 15 minutosA cada 20 minutosA cada 5 minutosA cada 8 minutosProcurar utilizadorProcurar UtilizadorAqui encontra a lista de contas registradas em StackApplet:Tema a usar para o icon:Se não sabe os seu numero de utilizador, use o botão "Procurar Utilizador".Idioma:A carregar...Não existem contasSem contas.Por favor insira parte do nome de utilizador que deseja procurar e clique em "procurar."Por favor selecione todas as contas que deseja adicionar.Quando refrescar:PesquisarA Procurar...Sítio na web:A aplicação encontrou alguns ficheiros de uma versão antiga previamente instalada. Para que a aplicação continue a carregar esses ficheiros terão de ser removidos. Se existiam contas previamente configuradas na aplicação terá de as adicionar novamente. Nota: StackApplets não trabalha mais como um Gnome applet. Agora é uma aplicação que pode ser encontrada no seu painel de notificações ou no painel de sistema.A aplicação foi atualizada com sucesso.SistemaAs seguintes contas foram encontradas:A mudança de idioma foi efetuada com sucesso mas para que as alterações seja aplicadas a toda a aplicação terá que a reinicializar.Ocorreu um erro ao adicionar uma nova conta.Ocorreu um erro ao adicionar a nova conta.Ocorreu um erro ao alterar a taxa de refrescamento.Ocorreu um erro ao selecionar o novo tema.Ocorreu um erro ao verificar as contas associadas.Ocorreu um erro ao carregar a lista de sites de StackAuth.Ocorreu um erro ao pesquizar o seu numero de utilizador.Ocorreu um erro ao remover a conta.Ocorreu um erro ao tentar verificar as definições de conta.Ocorreu um erro ao procurar utilizadores.Ocorreu um erro ao alterar o idioma.Ocorreu um erro ao tentar fazer com que a aplicação fosse carregada após o login.Ocorreu um erro ao mudar a ordem dos dois itens.Estas definições afetam o comportamento da aplicação:FerramentasUse as opções abaixo para alterar a aparência da aplicação:ID de utilizador:Ganhou %s de reputação.Perdeu %s de reputação.Recebeu %s novo(s) comentário(s) à(s) sua(s) pergunta(s).Recebeu %s novos comentários.Recebeu %s nova(s) resposta(s) à(s) sua(s) pergunta(s).adicionar uma nova contaadicionar todasremover todasstackapplet-1.5.2/po/gl/0000775000175000017500000000000012333054162015617 5ustar nathannathan00000000000000stackapplet-1.5.2/po/gl/LC_MESSAGES/0000775000175000017500000000000012333054162017404 5ustar nathannathan00000000000000stackapplet-1.5.2/po/gl/LC_MESSAGES/stackapplet.mo0000664000175000017500000001215012332345454022261 0ustar nathannathan00000000000000;O +6>b   "@Qbs  9 > - 7 B N@[8  -2%*- &< 4c < + ( /* 'Z ? * 2  >& e n    ~  ' * A ":ATc {*-<5LH D/T  #y!\%~+.8+W!1%D-B3p B6 MY4!8(7/% ')*192#;- . $:&6 50 3,+" Dark Light Load StackApplet when I log in Register StackApplet in the Messaging MenuNote: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEvery 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Language:Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:SystemThe following associated accounts were found:The language was changed successfully but you will need to restart StackApplet in order to apply the new settings to the entire interface.There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.add a new accountcheck alluncheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-11-16 06:31+0000 Last-Translator: StackApplet Development Team Language-Team: Galician MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-17 05:52+0000 X-Generator: Launchpad (build 14291) Oscuro Craro Cargar StackApplet o entrar no sistema Rexistrar StackApplet no Menu de MensaxesNota:Poder reordenar os obxectos arrastrándoos.Preferencias de contas:ContasEngadir unha contaEngadir ContasEngadir unha nova contaAparenciaContas AsociadasComprobar a existencia de contas asociadasCopyright 2011 - Nathan OsmanCada 10 minutosCada 15 minutosCada 20 minutosCada 5 minutosCada 8 minutosAtopar UsuarioAtopar Usuario:Aqui estan todas as contas rexistradas en StackAppletTema de iconasSe non coñeces a túa ID de usuario pulsa no botón de "Atopar Usuario"Língua:A cargar...Non hai contas.Non hai contas.Por favor, introduza unha parte do nome do usuario e pulse "Buscar".Por favor escolle as contas que queres engadir.Taxa de refresco:BuscarA procurar...Sitio web:SistemaAtopouse a seguinte conta asociada:Cambiouse a lingua correctamente, pero vas ter que reiniciar StackApplet para que se aplique o cambio o interfaz enteiro.Houbo un erro o engadir una contaHoubo un erro o engadir a nova conta.Houbo un erro o cambiar a taxa de refresco.Houbo un erro o cambiar o temaHoubo un erro o comprobar as contas asociadas.Houbo un erro cargando a lista de sitios dende StackAuthHoubo un erro o buscar o teu ID de usuario.Houbo un erro o eliminar a conta.Houbo un erro o recuperar os datos de esta conta.Houbo un erro o procurar os usuarios.Houbo un error o configurar esta aplicación para arrancar o inicio.Houbo un erro o intercambiar os dous obxetos.Estas preferencias afectan a coma actua StackAppletFerramentasUsa as opcións de abaixo para cambiar a aparencia de StackApplet.ID do usuario:Gañou %s de reputación.Perdeu %s de reputación.Engade unha nova contaMarcar todoDesmarcar todostackapplet-1.5.2/po/hi/0000775000175000017500000000000012333054162015615 5ustar nathannathan00000000000000stackapplet-1.5.2/po/hi/LC_MESSAGES/0000775000175000017500000000000012333054162017402 5ustar nathannathan00000000000000stackapplet-1.5.2/po/hi/LC_MESSAGES/stackapplet.mo0000664000175000017500000001057512332345454022270 0ustar nathannathan00000000000000&L5|P>Q   ,HYj{ 9>  (@38t -%-A<o0>"+ =G% 2 ? _ 0  J D \    $ : 2P   ' E:S\UUQqc})08i$!#%"&      Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserHere are all of the accounts registered with StackApplet:If you do not know your user ID, click the "find user" button.Language:Loading...Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.SearchSearching...Site:StackApplet has been upgraded:SystemThe following associated accounts were found:There was an error adding an account.There was an error changing the refresh rate.There was an error loading the list of sites from StackAuth.There was an error setting the current language.ToolsUse the options below to change the appearance of StackApplet:User ID:add a new accountcheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-11-22 06:21+0000 Last-Translator: StackApplet Development Team Language-Team: Hindi MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-23 05:57+0000 X-Generator: Launchpad (build 14336) सुर:खाता सेटिंग्सखातेखाता जोड़ेंलेखा जोड़ेंएक नया खाता जोड़ेंप्रकटीकरणजुड़े खातों के लिए जाँच करेंकॉपीराइट २०११ - नाथन ओसमानप्रतिलिपि पाठ नए खाते के लिए नीचे विवरण दर्ज करें:हर 10 मिनटहर 15 मिनटहर 20 मिनटहर 5 मिनटहर 8 मिनटप्रयोक्ता ढूँढ़ें:यहाँ खातों के सभी स्टैकअप्प्लेट के साथ पंजीकृत हैंयदि आप अपने उपयोगकर्ता आईडी नहीं पता है, "उपयोगकर्ता" बटन पर क्लिक करें.भाषा:लोड कर रहे...उपयोगकर्ता के प्रदर्शन नाम का हिस्सा दर्ज करें और क्लिक करें "खोज"खातों को जोड़ने के लिए चाहेंगे के सभी का चयन करेंखोजखोज रहा है...साइट:StackApplet उन्नत किया गया है:योजनानिम्नलिखित संबंधित खातों पाया गया:एक खाता जोड़ने में कोई त्रुटि थी.ताज़ा दर बदलने में कोई त्रुटि थी.उपयोगकर्ताओं के लिए खोज करने में त्रुटि थी.वर्तमान भाषा सेटिंग में कोई त्रुटि थीउपकरणनीचे दिए विकल्पों का प्रयोग StackApplet का प्रकटन बदलने:प्रयोक्ता आईडी:एक नया खाता जोड़ेंसभी चेकstackapplet-1.5.2/po/tr/0000775000175000017500000000000012333054162015642 5ustar nathannathan00000000000000stackapplet-1.5.2/po/tr/LC_MESSAGES/0000775000175000017500000000000012333054162017427 5ustar nathannathan00000000000000stackapplet-1.5.2/po/tr/LC_MESSAGES/stackapplet.mo0000664000175000017500000000227412332345454022312 0ustar nathannathan00000000000000 01>Q    R, 5 @a q{&   %s has posted a comment to you.Note: You can reorder items by dragging them.AccountsAppearanceCheck for associated accountsFind UserNo AccountsSearchSite:StackApplet has been upgraded:SystemToolsProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-06-17 20:13+0000 Last-Translator: StackApplet Development Team Language-Team: Turkish MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-11 05:15+0000 X-Generator: Launchpad (build 14277) %s size bir yorum gönderdi.Not: Buradan sürüklenen öğeleri yeniden düzenleyebilirsiniz.HesaplarGörünümİlişkili hesapları kontrol etKullanıcı BulHesap yokAraSite:StackApplet şu sürüme yükseltildi:SistemAraçlarstackapplet-1.5.2/po/nl/0000775000175000017500000000000012333054162015626 5ustar nathannathan00000000000000stackapplet-1.5.2/po/nl/LC_MESSAGES/0000775000175000017500000000000012333054162017413 5ustar nathannathan00000000000000stackapplet-1.5.2/po/nl/LC_MESSAGES/stackapplet.mo0000664000175000017500000001505112332345454022273 0ustar nathannathan00000000000000B,Y<+ (>H   ,&Sdu  9 > @ J U a@n8      - % * -9 &g 4 < + (, /U ' ? * 2 K >Q    6    (4#,@Qb rL$@I&`6 *96I :  C.@ oy -G1O<BK;MEM@=^H9_:IOc$r4*-1>=A?< 7B#, 325 .@;%:!$+(/"60 )&' 48 9 Dark Light Load StackApplet when I log in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Language:Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:StackApplet 1.5 has found some old configuration files from a previous version of StackApplet. These files will be removed so that StackApplet can continue loading. If you had any accounts registered with StackApplet, you will need to add them again. Note: StackApplet is no longer a Gnome panel applet. It is an indicator and can be located in your system's notification or tray area.StackApplet has been upgraded:SystemThe following associated accounts were found:There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.Your have received %s new answer(s) to your questions.add a new accountcheck alluncheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-11-22 06:32+0000 Last-Translator: brunopereira81 Language-Team: Dutch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-23 05:57+0000 X-Generator: Launchpad (build 14336) Donker Licht Laadt StackApplet tijdens inloggen Registreer StackApplet in het berichtenmenu [%s antwoorden] [%s commentaar] [%s reputatie]%s heeft je commentaar geleverd.Opmerking:Je kunt items organiseren door ze te verplaatsen.Instellingen accountAccountsAccount toevoegenGebruiker toevoegenEen nieuw account toevoegenWeergaveGeassocieerde accountsControleer op geassocieerde gebruikersCopyright 2011 - Nathan OsmanVoer hier onder de gegevens in van dit nieuwe account:Elke 10 minutenElke 15 minutenElke 20 minutenElke 5 minutenElke 8 minutenZoek gebruikerVind gebruiker:Dit zijn alle accounts geregistreerd voor StackApplet:Icoon thema:Als je niet je id kent, klik op de 'vind gebruiker' knop.Taal:Bezig met laden…Geen accountsGeen accountVoer een gedeelte van de gebruikers schermnaam in en klik "zoeken."Selecteer alle accounts die je wilt toevoegen.VerversenZoekenZoeken…Site:StackApplet 1.5 heeft oude configuratiebestanden gevonden van een vorige versie van StackApplet. Deze bestanden zullen worden verwijderd zodat StackApplet kan verdergaan met laden. Als u een account geregistreerd had bij StackApplet, zal u deze opnieuw moeten toevoegen. Opmerking: StackApplet is niet langer een Gnome paneel apple. Het is een indicator en kan in uw systeem's mededelingengebied gevonden worden.StackApplet is ge-upgradeSysteemDe volgende geassocieerde accounts zijn gevonden:Er is een fout opgetreden bij het toevoegen van een account.Er is een fout opgetreden bij het toevoegen van de nieuwe account.Er is een fout opgetreden bij het veranderen van de vernieuwingsfrequentie.Er is een fout opgetreden bij het veranderen van het thema.Er is een fout opgetreden bij het controleren op gekoppelde accounts.Er is een fout opgetreden bij het laden van de lijst met sites van StackAuth.Er is een fout opgetreden bij het opzoeken van de gebruikers-ID.Er is een fout opgtereden bij het verwijderen van de account.Er is een fout opgetreden bij het ophalen van de gebruikersinstellingen.Er is een fout opgetreden bij het zoeken naar gebruikers.Er is een fout opgetreden bij het instellen dat deze applicatie automatisch mee moet opstarten.Er is een fout opgetreden bij het wisselen van twee items.Deze instellingen beïnvloeden de manier waarop StackApplet zich gedraagtGereedschappenGebruik de instellingen onderin om het uiterlijk van StackApplet aan te passen:Gebruikers-id:Je hebt %s reputatie erbij gekregen.Je hebt %s reputatie verloren.Je hebt %s (een) nieuw(e) antwoord(en) op je vragen.voeg een nieuw account toeAlles aanvinkenalles deselecterenstackapplet-1.5.2/po/da/0000775000175000017500000000000012333054162015601 5ustar nathannathan00000000000000stackapplet-1.5.2/po/da/LC_MESSAGES/0000775000175000017500000000000012333054162017366 5ustar nathannathan00000000000000stackapplet-1.5.2/po/da/LC_MESSAGES/stackapplet.mo0000664000175000017500000000335412332345454022251 0ustar nathannathan00000000000000%@AGN` iu  9 ' 3 = HV ]jp>wipu  . HS Yg} F      Dark LightAccount settings:AccountsAdd AccountAdd New AccountAppearanceEvery 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserHere are all of the accounts registered with StackApplet:Icon theme:Language:Loading...Refresh Rate:SearchSearching...Site:SystemUse the options below to change the appearance of StackApplet:User ID:Project-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-12-13 07:28+0000 Last-Translator: StackApplet Development Team Language-Team: Danish MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-12-14 05:27+0000 X-Generator: Launchpad (build 14487) Mørk LysKonto indstillinger:KontoerTilføj kontoTilføj ny kontoudseendeHver 10 minutterHver 15 minutterHver 20 minutterHver 5 minutterHver 8 minutterFind brugerHer er alle konti registreret med StackApplet:Ikon tema:SprogIndlæser ...Opdateringshastighed:Søg:Søger...Side:SystemBrug valgmulighederne nedenfor til at ændre udseendet af StackApplet:Bruger-id:stackapplet-1.5.2/po/pt_BR/0000775000175000017500000000000012333054162016223 5ustar nathannathan00000000000000stackapplet-1.5.2/po/pt_BR/LC_MESSAGES/0000775000175000017500000000000012333054162020010 5ustar nathannathan00000000000000stackapplet-1.5.2/po/pt_BR/LC_MESSAGES/stackapplet.mo0000664000175000017500000001611112332345454022666 0ustar nathannathan00000000000000GTa+> jx)>!3 < HU ep, 0 @ J9U >    @ 8I    . M -T % *3 -^ & 4 < +% (Q /z ' 0 ?*C2n>3+"_6  &)",7dH  )#;_5}  64kM}  9L bl{)8b&j,*H3s*2:8@#y=)$T*09 D;Ke;8 ,950(7>;-? !$G*, 3C&:E) #B@AF%.6 2 "D/+ 14'=98< Dark Light Load StackApplet when I log in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment on your question.%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Language:Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:StackApplet 1.5 has found some old configuration files from a previous version of StackApplet. These files will be removed so that StackApplet can continue loading. If you had any accounts registered with StackApplet, you will need to add them again. Note: StackApplet is no longer a Gnome panel applet. It is an indicator and can be located in your system's notification or tray area.StackApplet has been upgraded:SystemThe following associated accounts were found:The language was changed successfully but you will need to restart StackApplet in order to apply the new settings to the entire interface.There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting the current language.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.You have received %s new comments to your question.You have received %s new comments.Your have received %s new answer(s) to your questions.add a new accountcheck alluncheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-11-22 06:35+0000 Last-Translator: brunopereira81 Language-Team: Brazilian Portuguese MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-23 05:57+0000 X-Generator: Launchpad (build 14336) Escuro Claro Carregar a aplicação ao fazer login Registar a aplicação no Messaging Menu [%s respostas] [%s comentários] [%s de reputação]%s adicionou um comentário à sua pergunta.%s adicionou um comentário.Nota: A ordem dos itens pode ser alterada arrastado-os.Definições de conta:ContasAdicionar contaAdicionar contasAdicionar nova contaAparênciaContas AssociadasProcurar todas as contas associadasCopyright 2011 - Nathan OsmanInsira os detalhes da nova conta nos campos em baixo:A cada 10 minutosA cada 15 minutosA cada 20 minutosA cada 5 minutosA cada 8 minutosPesquisar UtilizadorProcurar UtilizadorAqui estão todas as contas registadas no StackApplet:Tema dos ícones:Se não sabe os seu numero de utilizador, use o botão "Procurar Utilizador".Idioma:Carregando...Não existem contasSem contas.Adicionar contasPor favor selecione todas as contas que deseje adicionar.Taxa de atualizaçãoPesquisarPesquisando...Sítio na net:A aplicação encontrou alguns ficheiros de uma versão antiga previamente instalada. Para que a aplicação continue a carregar esses ficheiros terão de ser removidos. Se existiam contas previamente configuradas na aplicação terá de as adicionar novamente. Nota: StackApplets não trabalha mais como um Gnome applet. Agora é uma aplicação que pode ser encontrada no seu painel de notificações ou no painel de sistema.A aplicação foi atualizada com sucesso.SistemaAs seguintes contas foram encontradas:A mudança de idioma foi efetuada com sucesso mas para que as alterações seja aplicadas a toda a aplicação terá que a reinicializar.Ocorreu um erro ao adicionar uma nova conta.Ocorreu um erro ao adicionar a nova conta.Ocorreu um erro ao alterar a taxa de refrescamento.Ocorreu um erro ao selecionar o novo tema.Ocorreu um erro ao verificar as contas associadas.Ocorreu um erro ao carregar a lista de sites de StackAuth.Ocorreu um erro ao pesquizar o seu numero de utilizador.Ocorreu um erro ao remover a conta.Ocorreu um erro ao tentar verificar as definições de conta.Ocorreu um erro ao procurar utilizadores.Ocorreu um erro ao alterar o idioma.Ocorreu um erro ao tentar fazer com que a aplicação fosse carregada após o login.Ocorreu um erro ao mudar a ordem dos dois itens.Essas definições afetam o comportamento da aplicação:FerramentasUse as opções em baixo para modificar a aparência da aplicação:ID do usuário:Ganhou %s de reputação.Perdeu %s de reputação.Recebeu %s novo(s) comentário(s) à(s) sua(s) pergunta(s).Recebeu %s novos comentários.Recebeu %s nova(s) resposta(s) à(s) sua(s) pergunta(s).adicionar uma nova contamarcar todosdesmarcar todosstackapplet-1.5.2/po/sv/0000775000175000017500000000000012333054162015645 5ustar nathannathan00000000000000stackapplet-1.5.2/po/sv/LC_MESSAGES/0000775000175000017500000000000012333054162017432 5ustar nathannathan00000000000000stackapplet-1.5.2/po/sv/LC_MESSAGES/stackapplet.mo0000664000175000017500000001473512332345454022322 0ustar nathannathan00000000000000D<a\+ :HW)h>  % 5@Tr,  9% _>k   @8 H V ] j p   - %H *n - & 4 <# +` ( / ' ? *M 2x  >   35"i6  ')   ><V @\m9I$ n { =*  "-%(.-W-02*4!_3)F)&=PH &0/`* .'58,<  #)+ 1@07B( "?=>D%C4 3 !A-*$/2&:;69 Dark Light Load StackApplet when I log in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment on your question.%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:StackApplet 1.5 has found some old configuration files from a previous version of StackApplet. These files will be removed so that StackApplet can continue loading. If you had any accounts registered with StackApplet, you will need to add them again. Note: StackApplet is no longer a Gnome panel applet. It is an indicator and can be located in your system's notification or tray area.StackApplet has been upgraded:SystemThe following associated accounts were found:There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.You have received %s new comments to your question.You have received %s new comments.Your have received %s new answer(s) to your questions.add a new accountcheck alluncheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-11-02 06:21+0000 Last-Translator: StackApplet Development Team Language-Team: Swedish MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-11 05:14+0000 X-Generator: Launchpad (build 14277) Mörkt Ljust Läs in StackApplet när jag loggar in Lägg till StackApplet i medelande menyn [%s svar] [%s kommentarer] [%s rykte]%s Har kommenterat din fråga%s har kommenterat dig.Du kan ändra ordningen på objekten genom att dra runt dem.Konto inställningarKontonLägg till kontoLägg till kontonLägg till ett kontoUtseendeAssocierade kontonKolla efter länkade kontonUpphovsrätt 2011 - Nathan OsmanFyll i ett nytt konto nedanVar tionde minutVar femtonde minutVar tjugonde minutVar femte minutVar åttonde minutHitta användareHitta användare:Här är alla konton som är registrerade med StackApplettema för ikonerOm du inte kommer ihåg ditt användar-id, klicka på "hitta användare".Läser in...Inga kontonInga konton.Fyll vänligen i en del av användarnamnet och klicka "sök."Välj alla konton som du vill lägga till.UppdateringshastighetSökSöker...Webbplats:StackApplet 1.5 har hittat gamla konfigurationsfiler från en tidigare version av StackApplet. Dem här filerna kommer tas bort för att StackApplet ska fortsätta att läsas in. Om du hade några konton registrerade med Stackapplet, så kommer du vara tvungen att lägga till dem igen. Notera, StackApplet är inte längre ett program i Gnome panelen. Utan det är ett indikations program som hittas i ditt systems notifikations område.StackApplet har upgraderats:SystemFöljande associerade konton hittadesDet gick inte att lägga till ett konto.Det gick inte att lägga till det nya kontot.Det gick inte att byta uppdateringshastighet.Det gick inte att byta tema.Det gick inte att leta efter associerade konton.Det gick inte att läsa in listan från StackAuth.Det gick inte att hitta ditt användar-id.Det gick inte att ta bort kontot.Det gick inte att hämta dina konto inställningar.Det gick inte att söka efter användare.Det gick inte att ställa in programmet på att läsa in på uppstart.Det gick inte att byta dem två objekten.Dem här inställningarna berör hur StackApplet uppför sig:VerktygAnvänd valmöjligheterna nedan för att ändra utseendet av StackAppletAnvändar-id:Du här förbättrat ditt rykte med %sDu har förlorat %s rykte.Du har fått %s nya kommentarer på dina frågorDu har fått %s nya kommentarerDu har fått %s nya svar på dina frågor.Lägg till ett konto.Markera allaavmarkera allastackapplet-1.5.2/po/ca/0000775000175000017500000000000012333054162015600 5ustar nathannathan00000000000000stackapplet-1.5.2/po/ca/LC_MESSAGES/0000775000175000017500000000000012333054162017365 5ustar nathannathan00000000000000stackapplet-1.5.2/po/ca/LC_MESSAGES/stackapplet.mo0000664000175000017500000000210712332345454022243 0ustar nathannathan00000000000000HI R ^iz      !'/    AccountsAdd AccountAppearanceEvery 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesLanguage:Loading...Site:SystemUser ID:Project-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-11-23 07:16+0000 Last-Translator: David Planella Language-Team: Catalan MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-24 05:38+0000 X-Generator: Launchpad (build 14336) ComptesAfegeix un compteAparençaCada 10 minutsCada 15 minutsCada 20 minutsCada 5 minutsCada 8 minutsLlengua:S'està carregant...Lloc:SistemaIdentificador d'usuari:stackapplet-1.5.2/po/en_GB/0000775000175000017500000000000012333054162016167 5ustar nathannathan00000000000000stackapplet-1.5.2/po/en_GB/LC_MESSAGES/0000775000175000017500000000000012333054162017754 5ustar nathannathan00000000000000stackapplet-1.5.2/po/en_GB/LC_MESSAGES/stackapplet.mo0000664000175000017500000001466212332345454022643 0ustar nathannathan00000000000000D<a\+ :HW)h>  % 5@Tr,  9% _>k   @8 H V ] j p   - %H *n - & 4 <# +` ( / ' ? *M 2x  >   35"i6  +  )1[>{    ;,Y  9 (>4 s ~ @8  &39-%*7-b&4<+)(U/~'?*2At>z3"26U .'58,<  #)+ 1@07B( "?=>D%C4 3 !A-*$/2&:;69 Dark Light Load StackApplet when I log in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment on your question.%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:StackApplet 1.5 has found some old configuration files from a previous version of StackApplet. These files will be removed so that StackApplet can continue loading. If you had any accounts registered with StackApplet, you will need to add them again. Note: StackApplet is no longer a Gnome panel applet. It is an indicator and can be located in your system's notification or tray area.StackApplet has been upgraded:SystemThe following associated accounts were found:There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.You have received %s new comments to your question.You have received %s new comments.Your have received %s new answer(s) to your questions.add a new accountcheck alluncheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-09-07 06:01+0000 Last-Translator: StackApplet Development Team Language-Team: English (United Kingdom) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-11 05:15+0000 X-Generator: Launchpad (build 14277) Dark Light Load StackApplet when I log-in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment on your question.%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching…Site:StackApplet 1.5 has found some old configuration files from a previous version of StackApplet. These files will be removed so that StackApplet can continue loading. If you had any accounts registered with StackApplet, you will need to add them again. Note: StackApplet is no longer a Gnome panel applet. It is an indicator and can be located in your system's notification or tray area.StackApplet has been upgraded:SystemThe following associated accounts were found:There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.You have received %s new comments to your question.You have received %s new comments.Your have received %s new answer(s) to your questions.add a new accounttick alluntick allstackapplet-1.5.2/po/ru/0000775000175000017500000000000012333054162015643 5ustar nathannathan00000000000000stackapplet-1.5.2/po/ru/LC_MESSAGES/0000775000175000017500000000000012333054162017430 5ustar nathannathan00000000000000stackapplet-1.5.2/po/ru/LC_MESSAGES/stackapplet.mo0000664000175000017500000001615312332345454022314 0ustar nathannathan00000000000000@Y+ >(gy   ,3DUfv  9 >  + 7@D8   - %: *` - & 4 < +R (~ / ' ? *? 2j  >    6' ^ p z  2@JPL65&l/,, 79q.AF]x#$P+|6$J$os$  $ZXkc^(Pi_BwSgnO&lJ)t4,I,vO7+'C(+/<;?9=: 5@"* 103 ,>$8 #)'-!4.%& 26 7 Dark Light Load StackApplet when I log in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:StackApplet has been upgraded:SystemThe following associated accounts were found:There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.Your have received %s new answer(s) to your questions.add a new accountcheck alluncheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-09-25 05:37+0000 Last-Translator: Alexey Ivanov Language-Team: Russian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-11 05:14+0000 X-Generator: Launchpad (build 14277) Тёмный Светлый Загрузить StackApplet когда я вхожу в систему Зарегистрировать StackApplet в меню сообщений [%s ответов] [%s комментариев] [%s репутации]%s отправил(а) вам комментарий.Примечание:Настройки учётной записи:Учётные записиДобавить учётную записьДобавить учётные записиДобавить новую учётную записьВнешний видСвязанные учётные записиПроверить связанные учётные записиCopyright 2011 - Nathan OsmanВведите данные о новой учётной записи:Каждые 10 минутКаждые 15 минутКаждые 20 минутКаждые 5 минутКаждые 8 минутНайти пользователяНайти пользователя:Учётные записи, зарегистрированные в StackAppletВид значкаЕсли вы не знаете свой идентификатор пользователя - нажмите на кнопку "Найти пользователя"Загрузка…Нет учётный записейНет учётных записейПожалуйста, введите часть имени пользователя и нажмите "поиск".Пожалуйста, отметьте все учётные записи, которые вы бы хотели добавить.Частота Обновления:ПоискИдет поиск...Сайт:StackApplet был обновлён:СистемаБыли найдены следующие связанные учётные записи:Произошла ошибка при добавлении учётной записи.Произошла ошибка при добавлении новой учётной записи.Произошла ошибка при изменении частоты обновления.Произошла ошибка при изменении вида значка.Произошла ошибка при проверке связанных учётных записей.Произошла ошибка при загрузке списка сайтов с StackAuth.Произошла ошибка при поиске вашего идентификатора пользователя.Произошла ошибка при удалении учётной записиПроизошла ошибка при получении настроек учётной записи.Произошла ошибка при поиске пользователей.Произошла ошибка при настройке автоматического запуска приложения при загрузке.Произошла ошибка при смене положения двух учётных записей.Эти настройки влияют на поведение StackAppletИнструментыИспользуйте опции, перечисленные ниже, дня настройки внешнего вида StackApplet:Идентификатор пользователя:Вы получили %s репутации.Вы потеряли %s репутации.Вы получили %s новый(х) ответ(ов) на вопрос(ы).добавить новую учётную записьотметить всеснять отметки со всехstackapplet-1.5.2/po/fr/0000775000175000017500000000000012333054162015624 5ustar nathannathan00000000000000stackapplet-1.5.2/po/fr/LC_MESSAGES/0000775000175000017500000000000012333054162017411 5ustar nathannathan00000000000000stackapplet-1.5.2/po/fr/LC_MESSAGES/stackapplet.mo0000664000175000017500000000477112332345454022300 0ustar nathannathan00000000000000)   ,'Tev9     ?(F/o2>+ ,3 EO1mC  O]l !<O ;l  I       Dark Load StackApplet when I log in%s has posted a comment to you.Account settings:AccountsAdd AccountAppearanceCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesHere are all of the accounts registered with StackApplet:Loading...No AccountsRefresh Rate:SearchSearching...Site:StackApplet has been upgraded:SystemThere was an error removing the account.There was an error retrieving account settings.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:Project-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-11-02 06:22+0000 Last-Translator: StackApplet Development Team Language-Team: French MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-11 05:14+0000 X-Generator: Launchpad (build 14277) Foncé Charger StackApplet lorsque je me connecte%s a vous posté un commentaire.Paramètres du compteCompteAjouter un compteApparenceCopyright 2011 - Nathan OsmanEntrez les détails du nouveau compte ci-dessous:Toutes les 10 minutesToutes les 15 minutesToutes les 20 minutesToutes les 5 minutesToutes les 8 minutesVoici la liste de tous les comptes enregistrés avec StackApplet :Chargement...Pas de ComptesFréquence de rafraichissment:RechercherRecherche en cours...Site :StackApplet a été mis à jour :SystèmeUne erreure s'est produite lors de la suppression du compte.Une erreure s'est produite lors de la récupération des paramètres du compte.Ces paramètres affectent le fonctionnement de StackApplet:OutilsUtiliser les options ci-dessous pour modifier l'apparence de StackApplet:stackapplet-1.5.2/po/es/0000775000175000017500000000000012333054162015624 5ustar nathannathan00000000000000stackapplet-1.5.2/po/es/LC_MESSAGES/0000775000175000017500000000000012333054162017411 5ustar nathannathan00000000000000stackapplet-1.5.2/po/es/LC_MESSAGES/stackapplet.mo0000664000175000017500000001577112332345454022302 0ustar nathannathan00000000000000GTa+> jx)>!3 < HU ep, 0 @ J9U >    @ 8I    . M -T % *3 -^ & 4 < +% (Q /z ' 0 ?*C2n>3+"_6  } &.)DEc  72U?5BE  =5,I P\c 0qP(-;%U2{<7(#=L%*S2/<b O &3A"u, 50(7>;-? !$G*, 3C&:E) #B@AF%.6 2 "D/+ 14'=98< Dark Light Load StackApplet when I log in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment on your question.%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Language:Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:StackApplet 1.5 has found some old configuration files from a previous version of StackApplet. These files will be removed so that StackApplet can continue loading. If you had any accounts registered with StackApplet, you will need to add them again. Note: StackApplet is no longer a Gnome panel applet. It is an indicator and can be located in your system's notification or tray area.StackApplet has been upgraded:SystemThe following associated accounts were found:The language was changed successfully but you will need to restart StackApplet in order to apply the new settings to the entire interface.There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting the current language.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.You have received %s new comments to your question.You have received %s new comments.Your have received %s new answer(s) to your questions.add a new accountcheck alluncheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-11-14 18:34+0000 Last-Translator: Javier Rivera Language-Team: Spanish MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-15 05:12+0000 X-Generator: Launchpad (build 14291) Oscuro Luminoso Cargar StackApplet al iniciar sesión Registrar StackApplet en el menú de mensajes [%s respuestas] [%s comentarios] [%s reputación]%s publicó un comentario en su pregunta.%s respondió a su comentario.Nota: Puede reordenar los elementos arrastrándolos.Preferencias de cuentas:CuentasAñadir cuentaAñadir cuentasAñadir cuenta nuevaAparienciaCuentas asociadasComprobar cuentas asociadasCopyright 2011 - Nathan OsmanIntroduzca los detalles de la cuenta nueva debajo:Cada 10 minutosCada 15 minutosCada 20 minutosCada 5 minutosCada 8 minutosBuscar usuarioBuscar usuario:Aquí se muestran todas las cuentas registradas en StackApplet:Tema de iconos:Si no conoce su ID de usuario, pulse el botón «Buscar usuario».Idioma:Cargando...Sin cuentasNo hay cuentas.Introduzca un parte del nombre de usuario y pulse «Buscar».Seleccione todas las cuentas que le gustaria añadir.Intervalo de actualización:BuscarBuscando...Sitio:StackApplet 1.5 encontró algunos archivos de configuración correspondientes a una versión anterior de la aplicación. Se van a eliminar estos archivos para que StackApplet pueda continuar. Si tenía alguna cuenta registrada con StackApplet tendrá que añadirla otra vez. Nota: StackApplet ya no es un applet del panel de Gnome. Ahora es un indicador y puede ubicarlo en su área de notificación.StackApplet ha sido actualizado:SistemaSe encontraron las siguientes cuentas asociadas.Se ha modificado el idioma pero necesitaras reiniciar StackApplet para que cambie la lengua de todo el interface.Ocurrió un error al añadir una cuenta.Ocurrió un error al añadir la nueva cuenta.Ocurrió un error cambiando el intervalo de actualización.Ocurrió un error al cambiar el tema.Ocurrió un error al buscar las cuentas asociadas.Ocurrió un error al cargar la lista de sitios de StackAuth.Ocurrió un error buscando su identificador de usuario.Ocurrió un error al eliminar la cuenta.Ocurrió un error al recuperar las preferencias de la cuenta.Ocurrió un error al buscar usuarios.Ha ocurrido un error al cambiar el idioma.Ocurrió un error intentando que esta aplicación se ejecute al iniciar la sesión.Ocurrió un error al intercambiar los dos objetos.Estas preferencias afectan dl comportamiento de StackApplet:HerramientasUse las opciones que aparecen debajo para cambiar la apariencia de StackApplet:ID del usuario:Ha ganado %s reputación.Ha perdido %s reputación.Ha recibido %s comentarios nuevos en sus preguntas.Ha recibido %s comentarios nuevos.Ha recibido %s respuesta(s) a sus preguntas.añadir una cuenta nuevamarcar tododesmarcar todostackapplet-1.5.2/po/de/0000775000175000017500000000000012333054162015605 5ustar nathannathan00000000000000stackapplet-1.5.2/po/de/LC_MESSAGES/0000775000175000017500000000000012333054162017372 5ustar nathannathan00000000000000stackapplet-1.5.2/po/de/LC_MESSAGES/stackapplet.mo0000664000175000017500000001547712332345454022266 0ustar nathannathan00000000000000EDal+ JXg)x>  (5 EPd,  *95 o>{    @8) b p w    - -4 %b * - & 4 <= +z ( / ' ?' *g 2  >  23O"6  !1(.9%hX( @L_2.3? sL  Q.Jyh92@:s:J54BjL:85Cn9[?H?K !('J5r&9 !04/(69-= !$*, 2A&8C) #@>?E%D5 1 "B.+ 03';<7: Dark Light Load StackApplet when I log in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment on your question.%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Language:Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:StackApplet 1.5 has found some old configuration files from a previous version of StackApplet. These files will be removed so that StackApplet can continue loading. If you had any accounts registered with StackApplet, you will need to add them again. Note: StackApplet is no longer a Gnome panel applet. It is an indicator and can be located in your system's notification or tray area.StackApplet has been upgraded:SystemThe following associated accounts were found:There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.You have received %s new comments to your question.You have received %s new comments.Your have received %s new answer(s) to your questions.add a new accountcheck alluncheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-12-29 06:21+0000 Last-Translator: Daniel Winzen Language-Team: German MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-12-30 05:54+0000 X-Generator: Launchpad (build 14560) Dunkel Hell StackApplet beim Einloggen laden StackApplet in das Nachrichten-Menü integrieren [%s Antworten] [%s Kommentare] [%s Reputation]%s hat einen Kommentar zu ihre Frage gesendet.%s hat ein Kommentar an Sie verfasst.Hinweis: Klicken und ziehen sie Elemente um die Reihenfolge zu ändern.Konto-Einstellungen:KontenKonto hinzufügenKonten hinzufügenNeues Konto hinzufügenDarstellungVerknüpfte KontenNach verknüpften Konten suchenCopyright 2011 - Nathan OsmanGeben Sie die Information für das neue Konto ein:Alle 10 MinutenAlle 15 MinutenAlle 20 MinutenAlle 5 MinutenAlle 8 MinutenBenutzer suchenBenutzer finden:Dies sind alle in StackApplet eingetragenen Konten:Icon-Theme:Wenn Sie Ihre Benutzer-ID nicht kennen, bitte auf "Benutzer suchen" klicken.Sprache:Lade...Keine KontenKeine Konten.Bitte einen Teil des Anzeigenamens des Nutzers eingeben und auf "Suchen" klicken.Bitte alle hinzuzufügenden Konten auswählen.Häufigkeit der Aktualisierung:SuchenSuche...Seite:StackApplet 1.5 hat Konfigurationsdateien von einer älteren Version von StackApplet gefunden. Diese Dateien werden gelöscht, damit StackApplet starten kann. Registrierte Konten müssen erneut hinzugefügt werden. Hinweis: StackApplet ist nicht länger als Applet für das GNOME Panel realisiert, sondern als Indikator für den Infobereich der Systemleiste.StackApplet wurde aktualisiert:SystemDie folgenden verknüpften Konten wurden gefunden:Es ist ein Fehler beim Hinzufügen des Kontos aufgetreten.Es ist ein Fehler beim Hinzufügen des Kontos aufgetreten.Es ist ein Fehler beim Ändern der Aktualisierungshäufigkeit aufgetreten.Es ist ein Fehler beim ändern des Themas aufgetretenEs ist ein Fehler beim Finden von verknüpften Konten aufgetreten.Es ist ein Fehler beim Laden der Liste von Seiten von StackAuth aufgetreten.Es ist ein Fehler beim Finden der Benutzer-ID aufgetreten.Es ist ein Fehler beim Entfernen des Kontos aufgetreten.Es ist ein Fehler beim Abfragen der Kontoeinstellungen aufgetreten.Es ist ein Fehler beim Suchen nach Benutzern aufgetreten.Es ist ein Fehler bei der Konfiguration zum Laden der Anwendung beim Einloggen aufgetreten.Es ist ein Fehler beim Tausch der beiden Einträge aufgetreten.Diese Einstellungen beeinflussen das Verhalten von StackApplet:ExtrasBenutzen Sie diese Optionen, um das Aussehen von StackApplet zu verändern:Benutzer-ID:Sie haben %s Reputation gewonnen.Sie haben %s Ihrer Reputation verloren.Sie haben %s neue Kommentare zu ihrer Frage erhalten.Sie haben %s neue Kommentare erhalten.Sie haben %s neue Nachricht(en) auf Ihre Fragen erhalten.Neues Konto hinzufügenalle markierenalle abwählenstackapplet-1.5.2/po/ar/0000775000175000017500000000000012333054162015617 5ustar nathannathan00000000000000stackapplet-1.5.2/po/ar/LC_MESSAGES/0000775000175000017500000000000012333054162017404 5ustar nathannathan00000000000000stackapplet-1.5.2/po/ar/LC_MESSAGES/stackapplet.mo0000664000175000017500000000212412332345454022261 0ustar nathannathan00000000000000HI R ^iz    y     ,7     AccountsAdd AccountAppearanceEvery 10 minutesEvery 5 minutesLanguage:Loading...SearchSearching...Site:SystemToolsUser ID:Project-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2012-01-06 06:21+0000 Last-Translator: StackApplet Development Team Language-Team: Arabic MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2012-01-07 05:56+0000 X-Generator: Launchpad (build 14640) حساباتأضف حسابًاالمظهركل 10 دقائقكل 5 دقائقاللغة:جاري التحميل...بحثجاري البحث...الموقع:النظامأدواتمعرّف المستخدم:stackapplet-1.5.2/po/en_CA/0000775000175000017500000000000012333054162016162 5ustar nathannathan00000000000000stackapplet-1.5.2/po/en_CA/LC_MESSAGES/0000775000175000017500000000000012333054162017747 5ustar nathannathan00000000000000stackapplet-1.5.2/po/en_CA/LC_MESSAGES/stackapplet.mo0000664000175000017500000001463512332345454022636 0ustar nathannathan00000000000000D<a\+ :HW)h>  % 5@Tr,  9% _>k   @8 H V ] j p   - %H *n - & 4 <# +` ( / ' ? *M 2x  >   35"i6  +  )D>d   $,Bo  9 > \ g s@8  "-%* -K&y4<+(>/g'?*2*]>c3"6>u  .'58,<  #)+ 1@07B( "?=>D%C4 3 !A-*$/2&:;69 Dark Light Load StackApplet when I log in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment on your question.%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:StackApplet 1.5 has found some old configuration files from a previous version of StackApplet. These files will be removed so that StackApplet can continue loading. If you had any accounts registered with StackApplet, you will need to add them again. Note: StackApplet is no longer a Gnome panel applet. It is an indicator and can be located in your system's notification or tray area.StackApplet has been upgraded:SystemThe following associated accounts were found:There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.You have received %s new comments to your question.You have received %s new comments.Your have received %s new answer(s) to your questions.add a new accountcheck alluncheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-07-31 04:57+0000 Last-Translator: George Edison Language-Team: English (Canada) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-11-11 05:15+0000 X-Generator: Launchpad (build 14277) Dark Light Load StackApplet when I log in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment on your question.%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:StackApplet 1.5 has found some old configuration files from a previous version of StackApplet. These files will be removed so that StackApplet can continue loading. If you had any accounts registered with StackApplet, you will need to add them again. Note: StackApplet is no longer a Gnome panel applet. It is an indicator and can be located in your system's notification or tray area.StackApplet has been upgraded:SystemThe following associated accounts were found:There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.You have received %s new comments to your question.You have received %s new comments.Your have received %s new answer(s) to your questions.add a new accountcheck alluncheck allstackapplet-1.5.2/po/ta/0000775000175000017500000000000012333054162015621 5ustar nathannathan00000000000000stackapplet-1.5.2/po/ta/LC_MESSAGES/0000775000175000017500000000000012333054162017406 5ustar nathannathan00000000000000stackapplet-1.5.2/po/ta/LC_MESSAGES/stackapplet.mo0000664000175000017500000002567012332345454022276 0ustar nathannathan00000000000000FLa|+. Zhw)># , 8E U`t,  0 :9E >    @89 r     - %y * - & 4 <T + ( / ' 0> ?o * 2  > R [ z 3 " 6 % 7 AM&*B-m(7%CJ=@VN677>7v66FMc) <;<#`)5 6C bkppuv !!^"j"W#p#R$$%&&&)'u'o^(()*P*P+`W+4/(6=E,> !$:+ 2B&9D) #A?@F%-5 1 "C.* 03'<87; Dark Light Load StackApplet when I log in Register StackApplet in the Messaging Menu [%s answers] [%s comments] [%s reputation]%s has posted a comment on your question.%s has posted a comment to you.Note: You can reorder items by dragging them.Account settings:AccountsAdd AccountAdd AccountsAdd New AccountAppearanceAssociated AccountsCheck for associated accountsCopyright 2011 - Nathan OsmanEnter the details for the new account below:Every 10 minutesEvery 15 minutesEvery 20 minutesEvery 5 minutesEvery 8 minutesFind UserFind User:Here are all of the accounts registered with StackApplet:Icon theme:If you do not know your user ID, click the "find user" button.Language:Loading...No AccountsNo accounts.Please enter part of the user's display name and click "search."Please select all of the accounts you would like to add.Refresh Rate:SearchSearching...Site:StackApplet has been upgraded:SystemThe following associated accounts were found:The language was changed successfully but you will need to restart StackApplet in order to apply the new settings to the entire interface.There was an error adding an account.There was an error adding the new account.There was an error changing the refresh rate.There was an error changing the theme.There was an error checking for associated accounts.There was an error loading the list of sites from StackAuth.There was an error looking up your user ID.There was an error removing the account.There was an error retrieving account settings.There was an error searching for users.There was an error setting the current language.There was an error setting this application to load at startup.There was an error swapping the two items.These settings affect the way StackApplet behaves:ToolsUse the options below to change the appearance of StackApplet:User ID:You have gained %s reputation.You have lost %s reputation.You have received %s new comments to your question.You have received %s new comments.Your have received %s new answer(s) to your questions.add a new accountcheck alluncheck allProject-Id-Version: stackapplet Report-Msgid-Bugs-To: FULL NAME POT-Creation-Date: 2011-11-01 10:12-0700 PO-Revision-Date: 2011-12-01 17:00+0000 Last-Translator: Barneedhar Language-Team: Tamil MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Launchpad-Export-Date: 2011-12-02 05:29+0000 X-Generator: Launchpad (build 14414) கருமை மென்மை உள்நுழையும் பொழுது ஸ்டாக்ஆப்லெட்டை இயக்கவும் ஸ்டாக்ஆப்லெட்டைத் தகவல் பட்டியலில் பதிவு செய்யவும் [%s விடைகள்] [%s கருத்துரைகள்] [%s நன்மதிப்புகள்]%s உங்கள் கேள்வியில் கருத்துரையை வெளியிட்டு உள்ளார்.%s உங்களுக்காகக் கருத்துரையை வெளியிட்டு உள்ளார்.குறிப்பு: நீங்கள் பொருட்களை இழுப்பதன் மூலம் அதனை மறுவரிசைப்படுத்தலாம்.கணக்கின் அமைப்புகள்கணக்குகள்கணக்கைச் சேர்கணக்குகளைச் சேர்க்கவும்புதிய கணக்கைச் சேர்க்கவும்தோற்றம்தொடர்புடையக் கணக்குகள்தொடர்புடைய கணக்குகளைத் தேடவும்பதிப்புரிமை 2011 - நாதன் ஒஸ்மான்புதிய கணக்கிற்கான விவரங்களைக் கீழே உள்ளிடவும்:ஒவ்வொரு 10 நிமிடங்கள்ஒவ்வொரு 15 நிமிடங்கள்ஒவ்வொரு 25 நிமிடங்கள்ஒவ்வொரு 5 நிமிடங்கள்ஒவ்வொரு 8 நிமிடங்கள்பயனரைக் கண்டுபிடிக்கவும்பயனரைக் கண்டுப்பிடிக்கவும்:ஸ்டாக்ஆப்லெட்டுடன் பதிவு செய்யப்பட்டுள்ள கணக்குகள் இங்கே பட்டியலிடப்பட்டுள்ளன.சின்ன அங்கிதம்:பயனர் அடையாள எண் தெரியவில்லை எனில், "பயனரைக் கண்டுபிடிக்கவும்" பொத்தானை அழுத்தவும்.மொழி:பதிவிறக்கப்படுகிறது...கணக்குகள் ஏதும் இல்லைகணக்குகள் ஏதும் இல்லை.பயனரின் காட்சிப் பெயரின் ஒரு பகுதியை உள்ளிட்டு "தேடு" பொத்தானை அழுத்தவும்.நீங்கள் சேர்க்கவிருக்கும் கணக்குகள் அனைத்தையும் தயவுசெய்து தேர்வு செய்யவும்.புதுப்பிப்பு வீதம்:தேடுதேடுகிறது...தளம்:ஸ்டாக்ஆப்லெட் மேம்படுத்தப்பட்டுள்ளது:அமைப்புபின்வரும் தொடர்புடைய கணக்குகள் கண்டறியப்பட்டுள்ளன:மொழி வெற்றிகரமாக மாற்றப்பட்டுள்ளது. ஆனால் முழு இடைமுகத்தில் புதிய அமைப்புகளைப் பயன்படுத்த ஸ்டாக்ஆப்லெட்டை நீங்கள் மீண்டும் துவக்கவேண்டும்.கணக்கைச் சேர்ப்பதில் பிழை ஏற்பட்டுள்ளது.புதிய கணக்கைச் சேர்ப்பதில் பிழை ஏற்பட்டுள்ளது.புதுப்பிப்பு வீதத்தை மாற்றுவதில் பிழை ஏற்பட்டுள்ளது.அங்கிதத்தை மாற்றுவதில் பிழை ஏற்பட்டுள்ளது.தொடர்புடைய கணக்குகளைத் தேடுவதில் பிழை ஏற்பட்டுள்ளது.ஸ்டாக்ஆத்தில் இருந்து தளங்களின் பட்டியலை இறக்குவதில் பிழை ஏற்பட்டுள்ளது.உங்கள் அடையாள எண்ணைத் தேடுவதில் பிழை ஏற்பட்டுள்ளது.கணக்கை அகற்றுவதில் பிழை ஏற்பட்டுள்ளது.கணக்கின் அமைப்புகளை மீட்பதில் பிழை ஏற்பட்டுள்ளது.பயனர்களைத் தேடுவதில் பிழை ஏற்பட்டுள்ளது.தற்போதைய மொழியை அமைப்பதில் பிழை ஏற்பட்டுள்ளது.துவக்கநிலையில் இந்த பயன்பாட்டை இயக்க அமைப்பதில் பிழை ஏற்பட்டுள்ளது.பொருட்களின் இடங்களை மாற்றுவதில் பிழை ஏற்பட்டுள்ளது.இந்த அமைப்புகள் ஸ்டாக்ஆப்லெட் செயல்படும் விதத்தைப் பாதிக்கின்றன:கருவிகள்ஸ்டாக்ஆப்லெட்டின் தோற்றத்தை மாற்ற கீழே உள்ள விருப்பங்களைப் பயன்படுத்தவும்.பயனர் அடையாளம்:நீங்கள் %s நன்மதிப்புகளைப் பெற்றுள்ளீர்கள்.நீங்கள் %s நன்மதிப்புகளை இழந்துள்ளீர்கள்.உங்கள் கேள்விக்கு நீங்கள் %s புதிய கருத்துரைகளைப் பெற்றுள்ளீர்கள்.நீங்கள் %s புதிய கருத்துரைகளைப் பெற்றுள்ளீர்கள்.உங்கள் கேள்விகளுக்கு நீங்கள் %s புதிய விடைகளைப் பெற்றுள்ளீர்கள்.புதியக் கணக்கைச் சேர்க்கவும்அனைத்தையும் தேர்வு செய்யவும்தேர்வு செய்த அனைத்தையும் நீக்கவும்