Luke Plant avatar Luke Plant committed c758892 Merge

Merged from default

Comments (0)

Files changed (19)

cciw/cciwmain/common.py

     context['pagevars'] = {
         'media_root_url': settings.CCIW_MEDIA_URL,
         'style_sheet_url': settings.CCIW_MEDIA_URL + '/style.css',
+        'admin_media_root_url': settings.ADMIN_MEDIA_PREFIX,
     }
 
     context.update(view_extras.get_view_extras_context(request))

cciw/officers/models.py

 
         if refnum not in (1,2):
             return u"<Reference improperly created>"
-        referee_name = getattr(app, "referee%d_name" % refnum)
+        referee_name = app.referees[refnum - 1].name
         return u"For %s %s | From %s | Camp %d, %d" % (app.officer.first_name,
                                                        app.officer.last_name,
                                                        referee_name,

cciw/officers/views.py

     prev = list(ReferenceForm.objects\
                 .filter(reference_info__application__officer=ref.application.officer,
                         reference_info__application__finished=True,
+                        reference_info__received=True,
                         date_created__gte=cutoffdate)\
                 .exclude(reference_info__application=ref.application)\
                 .order_by('-reference_info__application__camp__year'))
             'NAME': 'cciw',
             'USER': 'cciw',
             'PASSWORD': 'foo',
-            'HOST': '', # localhost
+            'HOST': 'localhost',
             'PORT': 5432
             }
         }
 MEDIA_ROOT = basedir + '/media'
 
 # URL that handles the media served from MEDIA_ROOT.
-if DEVBOX:
-    MEDIA_URL = 'http://cciw_local/media'
-    SPECIAL_MEDIA_URL = 'http://cciw_local/sp_media'
-else:
-    MEDIA_URL = '/media'
-    SPECIAL_MEDIA_URL = '/sp_media'
+MEDIA_URL = '/media'
+SPECIAL_MEDIA_URL = '/sp_media'
 
 FILE_UPLOAD_TEMP_DIR = basedir + "/uploads"
 
 )
 
 if settings.DEBUG:
-    urlpatterns = urlpatterns + patterns('',
-      (r'^validator/', include('lukeplant_me_uk.django.validator.urls'))
+    import django
+    import os
+    django_root = os.path.dirname(django.__file__)
+    admin_media_root = django_root + '/contrib/admin/media'
+    urlpatterns += patterns('',
+                            (r'^validator/', include('lukeplant_me_uk.django.validator.urls')),
+                            (r'^media/(?P<path>.*)$', 'django.views.static.serve',
+                             {'document_root': settings.MEDIA_ROOT}),
+                            (r'^sp_media/(?P<path>.*)$', 'django.views.static.serve',
+                             {'document_root': settings.MEDIA_ROOT}),
     )
 
 urlpatterns = urlpatterns + patterns('',

media/javascript/MochiKit/MochiKit.js

-/***
-
-    MochiKit.MochiKit 1.4 : PACKED VERSION
-
-    THIS FILE IS AUTOMATICALLY GENERATED.  If creating patches, please
-    diff against the source tree, not this file.
-
-    See <http://mochikit.com/> for documentation, downloads, license, etc.
-
-    (c) 2005 Bob Ippolito.  All rights Reserved.
-
-***/
-
-if(typeof (dojo)!="undefined"){
-dojo.provide("MochiKit.Base");
-}
-if(typeof (MochiKit)=="undefined"){
-MochiKit={};
-}
-if(typeof (MochiKit.Base)=="undefined"){
-MochiKit.Base={};
-}
-if(typeof (MochiKit.__export__)=="undefined"){
-MochiKit.__export__=(MochiKit.__compat__||(typeof (JSAN)=="undefined"&&typeof (dojo)=="undefined"));
-}
-MochiKit.Base.VERSION="1.4";
-MochiKit.Base.NAME="MochiKit.Base";
-MochiKit.Base.update=function(_1,_2){
-if(_1===null||_1===undefined){
-_1={};
-}
-for(var i=1;i<arguments.length;i++){
-var o=arguments[i];
-if(typeof (o)!="undefined"&&o!==null){
-for(var k in o){
-_1[k]=o[k];
-}
-}
-}
-return _1;
-};
-MochiKit.Base.update(MochiKit.Base,{__repr__:function(){
-return "["+this.NAME+" "+this.VERSION+"]";
-},toString:function(){
-return this.__repr__();
-},camelize:function(_6){
-var _7=_6.split("-");
-var cc=_7[0];
-for(var i=1;i<_7.length;i++){
-cc+=_7[i].charAt(0).toUpperCase()+_7[i].substring(1);
-}
-return cc;
-},counter:function(n){
-if(arguments.length===0){
-n=1;
-}
-return function(){
-return n++;
-};
-},clone:function(_b){
-var me=arguments.callee;
-if(arguments.length==1){
-me.prototype=_b;
-return new me();
-}
-},_deps:function(_d,_e){
-if(!(_d in MochiKit)){
-MochiKit[_d]={};
-}
-if(typeof (dojo)!="undefined"){
-dojo.provide("MochiKit."+_d);
-}
-for(var i=0;i<_e.length;i++){
-if(typeof (dojo)!="undefined"){
-dojo.require("MochiKit."+_e[i]);
-}
-if(typeof (JSAN)!="undefined"){
-JSAN.use("MochiKit."+_e[i],[]);
-}
-if(!(_e[i] in MochiKit)){
-throw "MochiKit."+_d+" depends on MochiKit."+_e[i]+"!";
-}
-}
-},_flattenArray:function(res,lst){
-for(var i=0;i<lst.length;i++){
-var o=lst[i];
-if(o instanceof Array){
-arguments.callee(res,o);
-}else{
-res.push(o);
-}
-}
-return res;
-},flattenArray:function(lst){
-return MochiKit.Base._flattenArray([],lst);
-},flattenArguments:function(lst){
-var res=[];
-var m=MochiKit.Base;
-var _18=m.extend(null,arguments);
-while(_18.length){
-var o=_18.shift();
-if(o&&typeof (o)=="object"&&typeof (o.length)=="number"){
-for(var i=o.length-1;i>=0;i--){
-_18.unshift(o[i]);
-}
-}else{
-res.push(o);
-}
-}
-return res;
-},extend:function(_1b,obj,_1d){
-if(!_1d){
-_1d=0;
-}
-if(obj){
-var l=obj.length;
-if(typeof (l)!="number"){
-if(typeof (MochiKit.Iter)!="undefined"){
-obj=MochiKit.Iter.list(obj);
-l=obj.length;
-}else{
-throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
-}
-}
-if(!_1b){
-_1b=[];
-}
-for(var i=_1d;i<l;i++){
-_1b.push(obj[i]);
-}
-}
-return _1b;
-},updatetree:function(_20,obj){
-if(_20===null||_20===undefined){
-_20={};
-}
-for(var i=1;i<arguments.length;i++){
-var o=arguments[i];
-if(typeof (o)!="undefined"&&o!==null){
-for(var k in o){
-var v=o[k];
-if(typeof (_20[k])=="object"&&typeof (v)=="object"){
-arguments.callee(_20[k],v);
-}else{
-_20[k]=v;
-}
-}
-}
-}
-return _20;
-},setdefault:function(_26,obj){
-if(_26===null||_26===undefined){
-_26={};
-}
-for(var i=1;i<arguments.length;i++){
-var o=arguments[i];
-for(var k in o){
-if(!(k in _26)){
-_26[k]=o[k];
-}
-}
-}
-return _26;
-},keys:function(obj){
-var _2c=[];
-for(var _2d in obj){
-_2c.push(_2d);
-}
-return _2c;
-},values:function(obj){
-var _2f=[];
-for(var _30 in obj){
-_2f.push(obj[_30]);
-}
-return _2f;
-},items:function(obj){
-var _32=[];
-var e;
-for(var _34 in obj){
-var v;
-try{
-v=obj[_34];
-}
-catch(e){
-continue;
-}
-_32.push([_34,v]);
-}
-return _32;
-},_newNamedError:function(_36,_37,_38){
-_38.prototype=new MochiKit.Base.NamedError(_36.NAME+"."+_37);
-_36[_37]=_38;
-},operator:{truth:function(a){
-return !!a;
-},lognot:function(a){
-return !a;
-},identity:function(a){
-return a;
-},not:function(a){
-return ~a;
-},neg:function(a){
-return -a;
-},add:function(a,b){
-return a+b;
-},sub:function(a,b){
-return a-b;
-},div:function(a,b){
-return a/b;
-},mod:function(a,b){
-return a%b;
-},mul:function(a,b){
-return a*b;
-},and:function(a,b){
-return a&b;
-},or:function(a,b){
-return a|b;
-},xor:function(a,b){
-return a^b;
-},lshift:function(a,b){
-return a<<b;
-},rshift:function(a,b){
-return a>>b;
-},zrshift:function(a,b){
-return a>>>b;
-},eq:function(a,b){
-return a==b;
-},ne:function(a,b){
-return a!=b;
-},gt:function(a,b){
-return a>b;
-},ge:function(a,b){
-return a>=b;
-},lt:function(a,b){
-return a<b;
-},le:function(a,b){
-return a<=b;
-},seq:function(a,b){
-return a===b;
-},sne:function(a,b){
-return a!==b;
-},ceq:function(a,b){
-return MochiKit.Base.compare(a,b)===0;
-},cne:function(a,b){
-return MochiKit.Base.compare(a,b)!==0;
-},cgt:function(a,b){
-return MochiKit.Base.compare(a,b)==1;
-},cge:function(a,b){
-return MochiKit.Base.compare(a,b)!=-1;
-},clt:function(a,b){
-return MochiKit.Base.compare(a,b)==-1;
-},cle:function(a,b){
-return MochiKit.Base.compare(a,b)!=1;
-},logand:function(a,b){
-return a&&b;
-},logor:function(a,b){
-return a||b;
-},contains:function(a,b){
-return b in a;
-}},forwardCall:function(_76){
-return function(){
-return this[_76].apply(this,arguments);
-};
-},itemgetter:function(_77){
-return function(arg){
-return arg[_77];
-};
-},typeMatcher:function(){
-var _79={};
-for(var i=0;i<arguments.length;i++){
-var typ=arguments[i];
-_79[typ]=typ;
-}
-return function(){
-for(var i=0;i<arguments.length;i++){
-if(!(typeof (arguments[i]) in _79)){
-return false;
-}
-}
-return true;
-};
-},isNull:function(){
-for(var i=0;i<arguments.length;i++){
-if(arguments[i]!==null){
-return false;
-}
-}
-return true;
-},isUndefinedOrNull:function(){
-for(var i=0;i<arguments.length;i++){
-var o=arguments[i];
-if(!(typeof (o)=="undefined"||o===null)){
-return false;
-}
-}
-return true;
-},isEmpty:function(obj){
-return !MochiKit.Base.isNotEmpty.apply(this,arguments);
-},isNotEmpty:function(obj){
-for(var i=0;i<arguments.length;i++){
-var o=arguments[i];
-if(!(o&&o.length)){
-return false;
-}
-}
-return true;
-},isArrayLike:function(){
-for(var i=0;i<arguments.length;i++){
-var o=arguments[i];
-var typ=typeof (o);
-if((typ!="object"&&!(typ=="function"&&typeof (o.item)=="function"))||o===null||typeof (o.length)!="number"||o.nodeType===3||o.nodeType===4){
-return false;
-}
-}
-return true;
-},isDateLike:function(){
-for(var i=0;i<arguments.length;i++){
-var o=arguments[i];
-if(typeof (o)!="object"||o===null||typeof (o.getTime)!="function"){
-return false;
-}
-}
-return true;
-},xmap:function(fn){
-if(fn===null){
-return MochiKit.Base.extend(null,arguments,1);
-}
-var _8a=[];
-for(var i=1;i<arguments.length;i++){
-_8a.push(fn(arguments[i]));
-}
-return _8a;
-},map:function(fn,lst){
-var m=MochiKit.Base;
-var itr=MochiKit.Iter;
-var _90=m.isArrayLike;
-if(arguments.length<=2){
-if(!_90(lst)){
-if(itr){
-lst=itr.list(lst);
-if(fn===null){
-return lst;
-}
-}else{
-throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
-}
-}
-if(fn===null){
-return m.extend(null,lst);
-}
-var _91=[];
-for(var i=0;i<lst.length;i++){
-_91.push(fn(lst[i]));
-}
-return _91;
-}else{
-if(fn===null){
-fn=Array;
-}
-var _93=null;
-for(i=1;i<arguments.length;i++){
-if(!_90(arguments[i])){
-if(itr){
-return itr.list(itr.imap.apply(null,arguments));
-}else{
-throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
-}
-}
-var l=arguments[i].length;
-if(_93===null||_93>l){
-_93=l;
-}
-}
-_91=[];
-for(i=0;i<_93;i++){
-var _95=[];
-for(var j=1;j<arguments.length;j++){
-_95.push(arguments[j][i]);
-}
-_91.push(fn.apply(this,_95));
-}
-return _91;
-}
-},xfilter:function(fn){
-var _98=[];
-if(fn===null){
-fn=MochiKit.Base.operator.truth;
-}
-for(var i=1;i<arguments.length;i++){
-var o=arguments[i];
-if(fn(o)){
-_98.push(o);
-}
-}
-return _98;
-},filter:function(fn,lst,_9d){
-var _9e=[];
-var m=MochiKit.Base;
-if(!m.isArrayLike(lst)){
-if(MochiKit.Iter){
-lst=MochiKit.Iter.list(lst);
-}else{
-throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
-}
-}
-if(fn===null){
-fn=m.operator.truth;
-}
-if(typeof (Array.prototype.filter)=="function"){
-return Array.prototype.filter.call(lst,fn,_9d);
-}else{
-if(typeof (_9d)=="undefined"||_9d===null){
-for(var i=0;i<lst.length;i++){
-var o=lst[i];
-if(fn(o)){
-_9e.push(o);
-}
-}
-}else{
-for(i=0;i<lst.length;i++){
-o=lst[i];
-if(fn.call(_9d,o)){
-_9e.push(o);
-}
-}
-}
-}
-return _9e;
-},_wrapDumbFunction:function(_a2){
-return function(){
-switch(arguments.length){
-case 0:
-return _a2();
-case 1:
-return _a2(arguments[0]);
-case 2:
-return _a2(arguments[0],arguments[1]);
-case 3:
-return _a2(arguments[0],arguments[1],arguments[2]);
-}
-var _a3=[];
-for(var i=0;i<arguments.length;i++){
-_a3.push("arguments["+i+"]");
-}
-return eval("(func("+_a3.join(",")+"))");
-};
-},methodcaller:function(_a5){
-var _a6=MochiKit.Base.extend(null,arguments,1);
-if(typeof (_a5)=="function"){
-return function(obj){
-return _a5.apply(obj,_a6);
-};
-}else{
-return function(obj){
-return obj[_a5].apply(obj,_a6);
-};
-}
-},method:function(_a9,_aa){
-var m=MochiKit.Base;
-return m.bind.apply(this,m.extend([_aa,_a9],arguments,2));
-},compose:function(f1,f2){
-var _ae=[];
-var m=MochiKit.Base;
-if(arguments.length===0){
-throw new TypeError("compose() requires at least one argument");
-}
-for(var i=0;i<arguments.length;i++){
-var fn=arguments[i];
-if(typeof (fn)!="function"){
-throw new TypeError(m.repr(fn)+" is not a function");
-}
-_ae.push(fn);
-}
-return function(){
-var _b2=arguments;
-for(var i=_ae.length-1;i>=0;i--){
-_b2=[_ae[i].apply(this,_b2)];
-}
-return _b2[0];
-};
-},bind:function(_b4,_b5){
-if(typeof (_b4)=="string"){
-_b4=_b5[_b4];
-}
-var _b6=_b4.im_func;
-var _b7=_b4.im_preargs;
-var _b8=_b4.im_self;
-var m=MochiKit.Base;
-if(typeof (_b4)=="function"&&typeof (_b4.apply)=="undefined"){
-_b4=m._wrapDumbFunction(_b4);
-}
-if(typeof (_b6)!="function"){
-_b6=_b4;
-}
-if(typeof (_b5)!="undefined"){
-_b8=_b5;
-}
-if(typeof (_b7)=="undefined"){
-_b7=[];
-}else{
-_b7=_b7.slice();
-}
-m.extend(_b7,arguments,2);
-var _ba=function(){
-var _bb=arguments;
-var me=arguments.callee;
-if(me.im_preargs.length>0){
-_bb=m.concat(me.im_preargs,_bb);
-}
-var _bd=me.im_self;
-if(!_bd){
-_bd=this;
-}
-return me.im_func.apply(_bd,_bb);
-};
-_ba.im_self=_b8;
-_ba.im_func=_b6;
-_ba.im_preargs=_b7;
-return _ba;
-},bindMethods:function(_be){
-var _bf=MochiKit.Base.bind;
-for(var k in _be){
-var _c1=_be[k];
-if(typeof (_c1)=="function"){
-_be[k]=_bf(_c1,_be);
-}
-}
-},registerComparator:function(_c2,_c3,_c4,_c5){
-MochiKit.Base.comparatorRegistry.register(_c2,_c3,_c4,_c5);
-},_primitives:{"boolean":true,"string":true,"number":true},compare:function(a,b){
-if(a==b){
-return 0;
-}
-var _c8=(typeof (a)=="undefined"||a===null);
-var _c9=(typeof (b)=="undefined"||b===null);
-if(_c8&&_c9){
-return 0;
-}else{
-if(_c8){
-return -1;
-}else{
-if(_c9){
-return 1;
-}
-}
-}
-var m=MochiKit.Base;
-var _cb=m._primitives;
-if(!(typeof (a) in _cb&&typeof (b) in _cb)){
-try{
-return m.comparatorRegistry.match(a,b);
-}
-catch(e){
-if(e!=m.NotFound){
-throw e;
-}
-}
-}
-if(a<b){
-return -1;
-}else{
-if(a>b){
-return 1;
-}
-}
-var _cc=m.repr;
-throw new TypeError(_cc(a)+" and "+_cc(b)+" can not be compared");
-},compareDateLike:function(a,b){
-return MochiKit.Base.compare(a.getTime(),b.getTime());
-},compareArrayLike:function(a,b){
-var _d1=MochiKit.Base.compare;
-var _d2=a.length;
-var _d3=0;
-if(_d2>b.length){
-_d3=1;
-_d2=b.length;
-}else{
-if(_d2<b.length){
-_d3=-1;
-}
-}
-for(var i=0;i<_d2;i++){
-var cmp=_d1(a[i],b[i]);
-if(cmp){
-return cmp;
-}
-}
-return _d3;
-},registerRepr:function(_d6,_d7,_d8,_d9){
-MochiKit.Base.reprRegistry.register(_d6,_d7,_d8,_d9);
-},repr:function(o){
-if(typeof (o)=="undefined"){
-return "undefined";
-}else{
-if(o===null){
-return "null";
-}
-}
-try{
-if(typeof (o.__repr__)=="function"){
-return o.__repr__();
-}else{
-if(typeof (o.repr)=="function"&&o.repr!=arguments.callee){
-return o.repr();
-}
-}
-return MochiKit.Base.reprRegistry.match(o);
-}
-catch(e){
-if(typeof (o.NAME)=="string"&&(o.toString==Function.prototype.toString||o.toString==Object.prototype.toString)){
-return o.NAME;
-}
-}
-try{
-var _db=(o+"");
-}
-catch(e){
-return "["+typeof (o)+"]";
-}
-if(typeof (o)=="function"){
-_db=_db.replace(/^\s+/,"").replace(/\s+/g," ");
-var idx=_db.indexOf("{");
-if(idx!=-1){
-_db=_db.substr(0,idx)+"{...}";
-}
-}
-return _db;
-},reprArrayLike:function(o){
-var m=MochiKit.Base;
-return "["+m.map(m.repr,o).join(", ")+"]";
-},reprString:function(o){
-return ("\""+o.replace(/(["\\])/g,"\\$1")+"\"").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r");
-},reprNumber:function(o){
-return o+"";
-},registerJSON:function(_e1,_e2,_e3,_e4){
-MochiKit.Base.jsonRegistry.register(_e1,_e2,_e3,_e4);
-},evalJSON:function(){
-return eval("("+MochiKit.Base._filterJSON(arguments[0])+")");
-},_filterJSON:function(s){
-var m=s.match(/^\s*\/\*(.*)\*\/\s*$/);
-if(m){
-return m[1];
-}
-return s;
-},serializeJSON:function(o){
-var _e8=typeof (o);
-if(_e8=="number"||_e8=="boolean"){
-return o+"";
-}else{
-if(o===null){
-return "null";
-}
-}
-var m=MochiKit.Base;
-var _ea=m.reprString;
-if(_e8=="string"){
-return _ea(o);
-}
-var me=arguments.callee;
-var _ec;
-if(typeof (o.__json__)=="function"){
-_ec=o.__json__();
-if(o!==_ec){
-return me(_ec);
-}
-}
-if(typeof (o.json)=="function"){
-_ec=o.json();
-if(o!==_ec){
-return me(_ec);
-}
-}
-if(_e8!="function"&&typeof (o.length)=="number"){
-var res=[];
-for(var i=0;i<o.length;i++){
-var val=me(o[i]);
-if(typeof (val)!="string"){
-val="undefined";
-}
-res.push(val);
-}
-return "["+res.join(", ")+"]";
-}
-try{
-_ec=m.jsonRegistry.match(o);
-if(o!==_ec){
-return me(_ec);
-}
-}
-catch(e){
-if(e!=m.NotFound){
-throw e;
-}
-}
-if(_e8=="undefined"){
-throw new TypeError("undefined can not be serialized as JSON");
-}
-if(_e8=="function"){
-return null;
-}
-res=[];
-for(var k in o){
-var _f1;
-if(typeof (k)=="number"){
-_f1="\""+k+"\"";
-}else{
-if(typeof (k)=="string"){
-_f1=_ea(k);
-}else{
-continue;
-}
-}
-val=me(o[k]);
-if(typeof (val)!="string"){
-continue;
-}
-res.push(_f1+":"+val);
-}
-return "{"+res.join(", ")+"}";
-},objEqual:function(a,b){
-return (MochiKit.Base.compare(a,b)===0);
-},arrayEqual:function(_f4,arr){
-if(_f4.length!=arr.length){
-return false;
-}
-return (MochiKit.Base.compare(_f4,arr)===0);
-},concat:function(){
-var _f6=[];
-var _f7=MochiKit.Base.extend;
-for(var i=0;i<arguments.length;i++){
-_f7(_f6,arguments[i]);
-}
-return _f6;
-},keyComparator:function(key){
-var m=MochiKit.Base;
-var _fb=m.compare;
-if(arguments.length==1){
-return function(a,b){
-return _fb(a[key],b[key]);
-};
-}
-var _fe=m.extend(null,arguments);
-return function(a,b){
-var rval=0;
-for(var i=0;(rval===0)&&(i<_fe.length);i++){
-var key=_fe[i];
-rval=_fb(a[key],b[key]);
-}
-return rval;
-};
-},reverseKeyComparator:function(key){
-var _105=MochiKit.Base.keyComparator.apply(this,arguments);
-return function(a,b){
-return _105(b,a);
-};
-},partial:function(func){
-var m=MochiKit.Base;
-return m.bind.apply(this,m.extend([func,undefined],arguments,1));
-},listMinMax:function(_10a,lst){
-if(lst.length===0){
-return null;
-}
-var cur=lst[0];
-var _10d=MochiKit.Base.compare;
-for(var i=1;i<lst.length;i++){
-var o=lst[i];
-if(_10d(o,cur)==_10a){
-cur=o;
-}
-}
-return cur;
-},objMax:function(){
-return MochiKit.Base.listMinMax(1,arguments);
-},objMin:function(){
-return MochiKit.Base.listMinMax(-1,arguments);
-},findIdentical:function(lst,_111,_112,end){
-if(typeof (end)=="undefined"||end===null){
-end=lst.length;
-}
-if(typeof (_112)=="undefined"||_112===null){
-_112=0;
-}
-for(var i=_112;i<end;i++){
-if(lst[i]===_111){
-return i;
-}
-}
-return -1;
-},mean:function(){
-var sum=0;
-var m=MochiKit.Base;
-var args=m.extend(null,arguments);
-var _118=args.length;
-while(args.length){
-var o=args.shift();
-if(o&&typeof (o)=="object"&&typeof (o.length)=="number"){
-_118+=o.length-1;
-for(var i=o.length-1;i>=0;i--){
-sum+=o[i];
-}
-}else{
-sum+=o;
-}
-}
-if(_118<=0){
-throw new TypeError("mean() requires at least one argument");
-}
-return sum/_118;
-},median:function(){
-var data=MochiKit.Base.flattenArguments(arguments);
-if(data.length===0){
-throw new TypeError("median() requires at least one argument");
-}
-data.sort(compare);
-if(data.length%2==0){
-var _11c=data.length/2;
-return (data[_11c]+data[_11c-1])/2;
-}else{
-return data[(data.length-1)/2];
-}
-},findValue:function(lst,_11e,_11f,end){
-if(typeof (end)=="undefined"||end===null){
-end=lst.length;
-}
-if(typeof (_11f)=="undefined"||_11f===null){
-_11f=0;
-}
-var cmp=MochiKit.Base.compare;
-for(var i=_11f;i<end;i++){
-if(cmp(lst[i],_11e)===0){
-return i;
-}
-}
-return -1;
-},nodeWalk:function(node,_124){
-var _125=[node];
-var _126=MochiKit.Base.extend;
-while(_125.length){
-var res=_124(_125.shift());
-if(res){
-_126(_125,res);
-}
-}
-},nameFunctions:function(_128){
-var base=_128.NAME;
-if(typeof (base)=="undefined"){
-base="";
-}else{
-base=base+".";
-}
-for(var name in _128){
-var o=_128[name];
-if(typeof (o)=="function"&&typeof (o.NAME)=="undefined"){
-try{
-o.NAME=base+name;
-}
-catch(e){
-}
-}
-}
-},queryString:function(_12c,_12d){
-if(typeof (MochiKit.DOM)!="undefined"&&arguments.length==1&&(typeof (_12c)=="string"||(typeof (_12c.nodeType)!="undefined"&&_12c.nodeType>0))){
-var kv=MochiKit.DOM.formContents(_12c);
-_12c=kv[0];
-_12d=kv[1];
-}else{
-if(arguments.length==1){
-if(typeof (_12c.length)=="number"&&_12c.length==2){
-return arguments.callee(_12c[0],_12c[1]);
-}
-var o=_12c;
-_12c=[];
-_12d=[];
-for(var k in o){
-var v=o[k];
-if(typeof (v)=="function"){
-continue;
-}else{
-if(MochiKit.Base.isArrayLike(v)){
-for(var i=0;i<v.length;i++){
-_12c.push(k);
-_12d.push(v[i]);
-}
-}else{
-_12c.push(k);
-_12d.push(v);
-}
-}
-}
-}
-}
-var rval=[];
-var len=Math.min(_12c.length,_12d.length);
-var _135=MochiKit.Base.urlEncode;
-for(var i=0;i<len;i++){
-v=_12d[i];
-if(typeof (v)!="undefined"&&v!==null){
-rval.push(_135(_12c[i])+"="+_135(v));
-}
-}
-return rval.join("&");
-},parseQueryString:function(_136,_137){
-var qstr=(_136.charAt(0)=="?")?_136.substring(1):_136;
-var _139=qstr.replace(/\+/g,"%20").split(/\&amp\;|\&\#38\;|\&#x26;|\&/);
-var o={};
-var _13b;
-if(typeof (decodeURIComponent)!="undefined"){
-_13b=decodeURIComponent;
-}else{
-_13b=unescape;
-}
-if(_137){
-for(var i=0;i<_139.length;i++){
-var pair=_139[i].split("=");
-var name=_13b(pair.shift());
-if(!name){
-continue;
-}
-var arr=o[name];
-if(!(arr instanceof Array)){
-arr=[];
-o[name]=arr;
-}
-arr.push(_13b(pair.join("=")));
-}
-}else{
-for(i=0;i<_139.length;i++){
-pair=_139[i].split("=");
-var name=pair.shift();
-if(!name){
-continue;
-}
-o[_13b(name)]=_13b(pair.join("="));
-}
-}
-return o;
-}});
-MochiKit.Base.AdapterRegistry=function(){
-this.pairs=[];
-};
-MochiKit.Base.AdapterRegistry.prototype={register:function(name,_141,wrap,_143){
-if(_143){
-this.pairs.unshift([name,_141,wrap]);
-}else{
-this.pairs.push([name,_141,wrap]);
-}
-},match:function(){
-for(var i=0;i<this.pairs.length;i++){
-var pair=this.pairs[i];
-if(pair[1].apply(this,arguments)){
-return pair[2].apply(this,arguments);
-}
-}
-throw MochiKit.Base.NotFound;
-},unregister:function(name){
-for(var i=0;i<this.pairs.length;i++){
-var pair=this.pairs[i];
-if(pair[0]==name){
-this.pairs.splice(i,1);
-return true;
-}
-}
-return false;
-}};
-MochiKit.Base.EXPORT=["flattenArray","noop","camelize","counter","clone","extend","update","updatetree","setdefault","keys","values","items","NamedError","operator","forwardCall","itemgetter","typeMatcher","isCallable","isUndefined","isUndefinedOrNull","isNull","isEmpty","isNotEmpty","isArrayLike","isDateLike","xmap","map","xfilter","filter","methodcaller","compose","bind","bindMethods","NotFound","AdapterRegistry","registerComparator","compare","registerRepr","repr","objEqual","arrayEqual","concat","keyComparator","reverseKeyComparator","partial","merge","listMinMax","listMax","listMin","objMax","objMin","nodeWalk","zip","urlEncode","queryString","serializeJSON","registerJSON","evalJSON","parseQueryString","findValue","findIdentical","flattenArguments","method","average","mean","median"];
-MochiKit.Base.EXPORT_OK=["nameFunctions","comparatorRegistry","reprRegistry","jsonRegistry","compareDateLike","compareArrayLike","reprArrayLike","reprString","reprNumber"];
-MochiKit.Base._exportSymbols=function(_149,_14a){
-if(!MochiKit.__export__){
-return;
-}
-var all=_14a.EXPORT_TAGS[":all"];
-for(var i=0;i<all.length;i++){
-_149[all[i]]=_14a[all[i]];
-}
-};
-MochiKit.Base.__new__=function(){
-var m=this;
-m.noop=m.operator.identity;
-m.forward=m.forwardCall;
-m.find=m.findValue;
-if(typeof (encodeURIComponent)!="undefined"){
-m.urlEncode=function(_14e){
-return encodeURIComponent(_14e).replace(/\'/g,"%27");
-};
-}else{
-m.urlEncode=function(_14f){
-return escape(_14f).replace(/\+/g,"%2B").replace(/\"/g,"%22").rval.replace(/\'/g,"%27");
-};
-}
-m.NamedError=function(name){
-this.message=name;
-this.name=name;
-};
-m.NamedError.prototype=new Error();
-m.update(m.NamedError.prototype,{repr:function(){
-if(this.message&&this.message!=this.name){
-return this.name+"("+m.repr(this.message)+")";
-}else{
-return this.name+"()";
-}
-},toString:m.forwardCall("repr")});
-m.NotFound=new m.NamedError("MochiKit.Base.NotFound");
-m.listMax=m.partial(m.listMinMax,1);
-m.listMin=m.partial(m.listMinMax,-1);
-m.isCallable=m.typeMatcher("function");
-m.isUndefined=m.typeMatcher("undefined");
-m.merge=m.partial(m.update,null);
-m.zip=m.partial(m.map,null);
-m.average=m.mean;
-m.comparatorRegistry=new m.AdapterRegistry();
-m.registerComparator("dateLike",m.isDateLike,m.compareDateLike);
-m.registerComparator("arrayLike",m.isArrayLike,m.compareArrayLike);
-m.reprRegistry=new m.AdapterRegistry();
-m.registerRepr("arrayLike",m.isArrayLike,m.reprArrayLike);
-m.registerRepr("string",m.typeMatcher("string"),m.reprString);
-m.registerRepr("numbers",m.typeMatcher("number","boolean"),m.reprNumber);
-m.jsonRegistry=new m.AdapterRegistry();
-var all=m.concat(m.EXPORT,m.EXPORT_OK);
-m.EXPORT_TAGS={":common":m.concat(m.EXPORT_OK),":all":all};
-m.nameFunctions(this);
-};
-MochiKit.Base.__new__();
-if(MochiKit.__export__){
-compare=MochiKit.Base.compare;
-compose=MochiKit.Base.compose;
-serializeJSON=MochiKit.Base.serializeJSON;
-mean=MochiKit.Base.mean;
-median=MochiKit.Base.median;
-}
-MochiKit.Base._exportSymbols(this,MochiKit.Base);
-MochiKit.Base._deps("Iter",["Base"]);
-MochiKit.Iter.NAME="MochiKit.Iter";
-MochiKit.Iter.VERSION="1.4";
-MochiKit.Base.update(MochiKit.Iter,{__repr__:function(){
-return "["+this.NAME+" "+this.VERSION+"]";
-},toString:function(){
-return this.__repr__();
-},registerIteratorFactory:function(name,_153,_154,_155){
-MochiKit.Iter.iteratorRegistry.register(name,_153,_154,_155);
-},iter:function(_156,_157){
-var self=MochiKit.Iter;
-if(arguments.length==2){
-return self.takewhile(function(a){
-return a!=_157;
-},_156);
-}
-if(typeof (_156.next)=="function"){
-return _156;
-}else{
-if(typeof (_156.iter)=="function"){
-return _156.iter();
-}
-}
-try{
-return self.iteratorRegistry.match(_156);
-}
-catch(e){
-var m=MochiKit.Base;
-if(e==m.NotFound){
-e=new TypeError(typeof (_156)+": "+m.repr(_156)+" is not iterable");
-}
-throw e;
-}
-},count:function(n){
-if(!n){
-n=0;
-}
-var m=MochiKit.Base;
-return {repr:function(){
-return "count("+n+")";
-},toString:m.forwardCall("repr"),next:m.counter(n)};
-},cycle:function(p){
-var self=MochiKit.Iter;
-var m=MochiKit.Base;
-var lst=[];
-var _161=self.iter(p);
-return {repr:function(){
-return "cycle(...)";
-},toString:m.forwardCall("repr"),next:function(){
-try{
-var rval=_161.next();
-lst.push(rval);
-return rval;
-}
-catch(e){
-if(e!=self.StopIteration){
-throw e;
-}
-if(lst.length===0){
-this.next=function(){
-throw self.StopIteration;
-};
-}else{
-var i=-1;
-this.next=function(){
-i=(i+1)%lst.length;
-return lst[i];
-};
-}
-return this.next();
-}
-}};
-},repeat:function(elem,n){
-var m=MochiKit.Base;
-if(typeof (n)=="undefined"){
-return {repr:function(){
-return "repeat("+m.repr(elem)+")";
-},toString:m.forwardCall("repr"),next:function(){
-return elem;
-}};
-}
-return {repr:function(){
-return "repeat("+m.repr(elem)+", "+n+")";
-},toString:m.forwardCall("repr"),next:function(){
-if(n<=0){
-throw MochiKit.Iter.StopIteration;
-}
-n-=1;
-return elem;
-}};
-},next:function(_167){
-return _167.next();
-},izip:function(p,q){
-var m=MochiKit.Base;
-var self=MochiKit.Iter;
-var next=self.next;
-var _16d=m.map(self.iter,arguments);
-return {repr:function(){
-return "izip(...)";
-},toString:m.forwardCall("repr"),next:function(){
-return m.map(next,_16d);
-}};
-},ifilter:function(pred,seq){
-var m=MochiKit.Base;
-seq=MochiKit.Iter.iter(seq);
-if(pred===null){
-pred=m.operator.truth;
-}
-return {repr:function(){
-return "ifilter(...)";
-},toString:m.forwardCall("repr"),next:function(){
-while(true){
-var rval=seq.next();
-if(pred(rval)){
-return rval;
-}
-}
-return undefined;
-}};
-},ifilterfalse:function(pred,seq){
-var m=MochiKit.Base;
-seq=MochiKit.Iter.iter(seq);
-if(pred===null){
-pred=m.operator.truth;
-}
-return {repr:function(){
-return "ifilterfalse(...)";
-},toString:m.forwardCall("repr"),next:function(){
-while(true){
-var rval=seq.next();
-if(!pred(rval)){
-return rval;
-}
-}
-return undefined;
-}};
-},islice:function(seq){
-var self=MochiKit.Iter;
-var m=MochiKit.Base;
-seq=self.iter(seq);
-var _179=0;
-var stop=0;
-var step=1;
-var i=-1;
-if(arguments.length==2){
-stop=arguments[1];
-}else{
-if(arguments.length==3){
-_179=arguments[1];
-stop=arguments[2];
-}else{
-_179=arguments[1];
-stop=arguments[2];
-step=arguments[3];
-}
-}
-return {repr:function(){
-return "islice("+["...",_179,stop,step].join(", ")+")";
-},toString:m.forwardCall("repr"),next:function(){
-var rval;
-while(i<_179){
-rval=seq.next();
-i++;
-}
-if(_179>=stop){
-throw self.StopIteration;
-}
-_179+=step;
-return rval;
-}};
-},imap:function(fun,p,q){
-var m=MochiKit.Base;
-var self=MochiKit.Iter;
-var _183=m.map(self.iter,m.extend(null,arguments,1));
-var map=m.map;
-var next=self.next;
-return {repr:function(){
-return "imap(...)";
-},toString:m.forwardCall("repr"),next:function(){
-return fun.apply(this,map(next,_183));
-}};
-},applymap:function(fun,seq,self){
-seq=MochiKit.Iter.iter(seq);
-var m=MochiKit.Base;
-return {repr:function(){
-return "applymap(...)";
-},toString:m.forwardCall("repr"),next:function(){
-return fun.apply(self,seq.next());
-}};
-},chain:function(p,q){
-var self=MochiKit.Iter;
-var m=MochiKit.Base;
-if(arguments.length==1){
-return self.iter(arguments[0]);
-}
-var _18e=m.map(self.iter,arguments);
-return {repr:function(){
-return "chain(...)";
-},toString:m.forwardCall("repr"),next:function(){
-while(_18e.length>1){
-try{
-var _18f=_18e[0].next();
-return _18f;
-}
-catch(e){
-if(e!=self.StopIteration){
-throw e;
-}
-_18e.shift();
-var _18f=_18e[0].next();
-return _18f;
-}
-}
-if(_18e.length==1){
-var arg=_18e.shift();
-this.next=m.bind("next",arg);
-return this.next();
-}
-throw self.StopIteration;
-}};
-},takewhile:function(pred,seq){
-var self=MochiKit.Iter;
-seq=self.iter(seq);
-return {repr:function(){
-return "takewhile(...)";
-},toString:MochiKit.Base.forwardCall("repr"),next:function(){
-var rval=seq.next();
-if(!pred(rval)){
-this.next=function(){
-throw self.StopIteration;
-};
-this.next();
-}
-return rval;
-}};
-},dropwhile:function(pred,seq){
-seq=MochiKit.Iter.iter(seq);
-var m=MochiKit.Base;
-var bind=m.bind;
-return {"repr":function(){
-return "dropwhile(...)";
-},"toString":m.forwardCall("repr"),"next":function(){
-while(true){
-var rval=seq.next();
-if(!pred(rval)){
-break;
-}
-}
-this.next=bind("next",seq);
-return rval;
-}};
-},_tee:function(_19a,sync,_19c){
-sync.pos[_19a]=-1;
-var m=MochiKit.Base;
-var _19e=m.listMin;
-return {repr:function(){
-return "tee("+_19a+", ...)";
-},toString:m.forwardCall("repr"),next:function(){
-var rval;
-var i=sync.pos[_19a];
-if(i==sync.max){
-rval=_19c.next();
-sync.deque.push(rval);
-sync.max+=1;
-sync.pos[_19a]+=1;
-}else{
-rval=sync.deque[i-sync.min];
-sync.pos[_19a]+=1;
-if(i==sync.min&&_19e(sync.pos)!=sync.min){
-sync.min+=1;
-sync.deque.shift();
-}
-}
-return rval;
-}};
-},tee:function(_1a1,n){
-var rval=[];
-var sync={"pos":[],"deque":[],"max":-1,"min":-1};
-if(arguments.length==1||typeof (n)=="undefined"||n===null){
-n=2;
-}
-var self=MochiKit.Iter;
-_1a1=self.iter(_1a1);
-var _tee=self._tee;
-for(var i=0;i<n;i++){
-rval.push(_tee(i,sync,_1a1));
-}
-return rval;
-},list:function(_1a8){
-var rval;
-if(_1a8 instanceof Array){
-return _1a8.slice();
-}
-if(typeof (_1a8)=="function"&&!(_1a8 instanceof Function)&&typeof (_1a8.length)=="number"){
-rval=[];
-for(var i=0;i<_1a8.length;i++){
-rval.push(_1a8[i]);
-}
-return rval;
-}
-var self=MochiKit.Iter;
-_1a8=self.iter(_1a8);
-var rval=[];
-var _1ac;
-try{
-while(true){
-_1ac=_1a8.next();
-rval.push(_1ac);
-}
-}
-catch(e){
-if(e!=self.StopIteration){
-throw e;
-}
-return rval;
-}
-return undefined;
-},reduce:function(fn,_1ae,_1af){
-var i=0;
-var x=_1af;
-var self=MochiKit.Iter;
-_1ae=self.iter(_1ae);
-if(arguments.length<3){
-try{
-x=_1ae.next();
-}
-catch(e){
-if(e==self.StopIteration){
-e=new TypeError("reduce() of empty sequence with no initial value");
-}
-throw e;
-}
-i++;
-}
-try{
-while(true){
-x=fn(x,_1ae.next());
-}
-}
-catch(e){
-if(e!=self.StopIteration){
-throw e;
-}
-}
-return x;
-},range:function(){
-var _1b3=0;
-var stop=0;
-var step=1;
-if(arguments.length==1){
-stop=arguments[0];
-}else{
-if(arguments.length==2){
-_1b3=arguments[0];
-stop=arguments[1];
-}else{
-if(arguments.length==3){
-_1b3=arguments[0];
-stop=arguments[1];
-step=arguments[2];
-}else{
-throw new TypeError("range() takes 1, 2, or 3 arguments!");
-}
-}
-}
-if(step===0){
-throw new TypeError("range() step must not be 0");
-}
-return {next:function(){
-if((step>0&&_1b3>=stop)||(step<0&&_1b3<=stop)){
-throw MochiKit.Iter.StopIteration;
-}
-var rval=_1b3;
-_1b3+=step;
-return rval;
-},repr:function(){
-return "range("+[_1b3,stop,step].join(", ")+")";
-},toString:MochiKit.Base.forwardCall("repr")};
-},sum:function(_1b7,_1b8){
-if(typeof (_1b8)=="undefined"||_1b8===null){
-_1b8=0;
-}
-var x=_1b8;
-var self=MochiKit.Iter;
-_1b7=self.iter(_1b7);
-try{
-while(true){
-x+=_1b7.next();
-}
-}
-catch(e){
-if(e!=self.StopIteration){
-throw e;
-}
-}
-return x;
-},exhaust:function(_1bb){
-var self=MochiKit.Iter;
-_1bb=self.iter(_1bb);
-try{
-while(true){
-_1bb.next();
-}
-}
-catch(e){
-if(e!=self.StopIteration){
-throw e;
-}
-}
-},forEach:function(_1bd,func,self){
-var m=MochiKit.Base;
-if(arguments.length>2){
-func=m.bind(func,self);
-}
-if(m.isArrayLike(_1bd)){
-try{
-for(var i=0;i<_1bd.length;i++){
-func(_1bd[i]);
-}
-}
-catch(e){
-if(e!=MochiKit.Iter.StopIteration){
-throw e;
-}
-}
-}else{
-self=MochiKit.Iter;
-self.exhaust(self.imap(func,_1bd));
-}
-},every:function(_1c2,func){
-var self=MochiKit.Iter;
-try{
-self.ifilterfalse(func,_1c2).next();
-return false;
-}
-catch(e){
-if(e!=self.StopIteration){
-throw e;
-}
-return true;
-}
-},sorted:function(_1c5,cmp){
-var rval=MochiKit.Iter.list(_1c5);
-if(arguments.length==1){
-cmp=MochiKit.Base.compare;
-}
-rval.sort(cmp);
-return rval;
-},reversed:function(_1c8){
-var rval=MochiKit.Iter.list(_1c8);
-rval.reverse();
-return rval;
-},some:function(_1ca,func){
-var self=MochiKit.Iter;
-try{
-self.ifilter(func,_1ca).next();
-return true;
-}
-catch(e){
-if(e!=self.StopIteration){
-throw e;
-}
-return false;
-}
-},iextend:function(lst,_1ce){
-if(MochiKit.Base.isArrayLike(_1ce)){
-for(var i=0;i<_1ce.length;i++){
-lst.push(_1ce[i]);
-}
-}else{
-var self=MochiKit.Iter;
-_1ce=self.iter(_1ce);
-try{
-while(true){
-lst.push(_1ce.next());
-}
-}
-catch(e){
-if(e!=self.StopIteration){
-throw e;
-}
-}
-}
-return lst;
-},groupby:function(_1d1,_1d2){
-var m=MochiKit.Base;
-var self=MochiKit.Iter;
-if(arguments.length<2){
-_1d2=m.operator.identity;
-}
-_1d1=self.iter(_1d1);
-var pk=undefined;
-var k=undefined;
-var v;
-function fetch(){
-v=_1d1.next();
-k=_1d2(v);
-}
-function eat(){
-var ret=v;
-v=undefined;
-return ret;
-}
-var _1d9=true;
-var _1da=m.compare;
-return {repr:function(){
-return "groupby(...)";
-},next:function(){
-while(_1da(k,pk)===0){
-fetch();
-if(_1d9){
-_1d9=false;
-break;
-}
-}
-pk=k;
-return [k,{next:function(){
-if(v==undefined){
-fetch();
-}
-if(_1da(k,pk)!==0){
-throw self.StopIteration;
-}
-return eat();
-}}];
-}};
-},groupby_as_array:function(_1db,_1dc){
-var m=MochiKit.Base;
-var self=MochiKit.Iter;
-if(arguments.length<2){
-_1dc=m.operator.identity;
-}
-_1db=self.iter(_1db);
-var _1df=[];
-var _1e0=true;
-var _1e1;
-var _1e2=m.compare;
-while(true){
-try{
-var _1e3=_1db.next();
-var key=_1dc(_1e3);
-}
-catch(e){
-if(e==self.StopIteration){
-break;
-}
-throw e;
-}
-if(_1e0||_1e2(key,_1e1)!==0){
-var _1e5=[];
-_1df.push([key,_1e5]);
-}
-_1e5.push(_1e3);
-_1e0=false;
-_1e1=key;
-}
-return _1df;
-},arrayLikeIter:function(_1e6){
-var i=0;
-return {repr:function(){
-return "arrayLikeIter(...)";
-},toString:MochiKit.Base.forwardCall("repr"),next:function(){
-if(i>=_1e6.length){
-throw MochiKit.Iter.StopIteration;
-}
-return _1e6[i++];
-}};
-},hasIterateNext:function(_1e8){
-return (_1e8&&typeof (_1e8.iterateNext)=="function");
-},iterateNextIter:function(_1e9){
-return {repr:function(){
-return "iterateNextIter(...)";
-},toString:MochiKit.Base.forwardCall("repr"),next:function(){
-var rval=_1e9.iterateNext();
-if(rval===null||rval===undefined){
-throw MochiKit.Iter.StopIteration;
-}
-return rval;
-}};
-}});
-MochiKit.Iter.EXPORT_OK=["iteratorRegistry","arrayLikeIter","hasIterateNext","iterateNextIter"];
-MochiKit.Iter.EXPORT=["StopIteration","registerIteratorFactory","iter","count","cycle","repeat","next","izip","ifilter","ifilterfalse","islice","imap","applymap","chain","takewhile","dropwhile","tee","list","reduce","range","sum","exhaust","forEach","every","sorted","reversed","some","iextend","groupby","groupby_as_array"];
-MochiKit.Iter.__new__=function(){
-var m=MochiKit.Base;
-if(typeof (StopIteration)!="undefined"){
-this.StopIteration=StopIteration;
-}else{
-this.StopIteration=new m.NamedError("StopIteration");
-}
-this.iteratorRegistry=new m.AdapterRegistry();
-this.registerIteratorFactory("arrayLike",m.isArrayLike,this.arrayLikeIter);
-this.registerIteratorFactory("iterateNext",this.hasIterateNext,this.iterateNextIter);
-this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
-m.nameFunctions(this);
-};
-MochiKit.Iter.__new__();
-if(MochiKit.__export__){
-reduce=MochiKit.Iter.reduce;
-}
-MochiKit.Base._exportSymbols(this,MochiKit.Iter);
-MochiKit.Base._deps("Logging",["Base"]);
-MochiKit.Logging.NAME="MochiKit.Logging";
-MochiKit.Logging.VERSION="1.4";
-MochiKit.Logging.__repr__=function(){
-return "["+this.NAME+" "+this.VERSION+"]";
-};
-MochiKit.Logging.toString=function(){
-return this.__repr__();
-};
-MochiKit.Logging.EXPORT=["LogLevel","LogMessage","Logger","alertListener","logger","log","logError","logDebug","logFatal","logWarning"];
-MochiKit.Logging.EXPORT_OK=["logLevelAtLeast","isLogMessage","compareLogMessage"];
-MochiKit.Logging.LogMessage=function(num,_1ed,info){
-this.num=num;
-this.level=_1ed;
-this.info=info;
-this.timestamp=new Date();
-};
-MochiKit.Logging.LogMessage.prototype={repr:function(){
-var m=MochiKit.Base;
-return "LogMessage("+m.map(m.repr,[this.num,this.level,this.info]).join(", ")+")";
-},toString:MochiKit.Base.forwardCall("repr")};
-MochiKit.Base.update(MochiKit.Logging,{logLevelAtLeast:function(_1f0){
-var self=MochiKit.Logging;
-if(typeof (_1f0)=="string"){
-_1f0=self.LogLevel[_1f0];
-}
-return function(msg){
-var _1f3=msg.level;
-if(typeof (_1f3)=="string"){
-_1f3=self.LogLevel[_1f3];
-}
-return _1f3>=_1f0;
-};
-},isLogMessage:function(){
-var _1f4=MochiKit.Logging.LogMessage;
-for(var i=0;i<arguments.length;i++){
-if(!(arguments[i] instanceof _1f4)){
-return false;
-}
-}
-return true;
-},compareLogMessage:function(a,b){
-return MochiKit.Base.compare([a.level,a.info],[b.level,b.info]);
-},alertListener:function(msg){
-alert("num: "+msg.num+"\nlevel: "+msg.level+"\ninfo: "+msg.info.join(" "));
-}});
-MochiKit.Logging.Logger=function(_1f9){
-this.counter=0;
-if(typeof (_1f9)=="undefined"||_1f9===null){
-_1f9=-1;
-}
-this.maxSize=_1f9;
-this._messages=[];
-this.listeners={};
-this.useNativeConsole=false;
-};
-MochiKit.Logging.Logger.prototype={clear:function(){
-this._messages.splice(0,this._messages.length);
-},logToConsole:function(msg){
-if(typeof (window)!="undefined"&&window.console&&window.console.log){
-window.console.log(msg.replace(/%/g,"\uff05"));
-}else{
-if(typeof (opera)!="undefined"&&opera.postError){
-opera.postError(msg);
-}else{
-if(typeof (printfire)=="function"){
-printfire(msg);
-}else{
-if(typeof (Debug)!="undefined"&&Debug.writeln){
-Debug.writeln(msg);
-}else{
-if(typeof (debug)!="undefined"&&debug.trace){
-debug.trace(msg);
-}
-}
-}
-}
-}
-},dispatchListeners:function(msg){
-for(var k in this.listeners){
-var pair=this.listeners[k];
-if(pair.ident!=k||(pair[0]&&!pair[0](msg))){
-continue;
-}
-pair[1](msg);
-}
-},addListener:function(_1fe,_1ff,_200){
-if(typeof (_1ff)=="string"){
-_1ff=MochiKit.Logging.logLevelAtLeast(_1ff);
-}
-var _201=[_1ff,_200];
-_201.ident=_1fe;
-this.listeners[_1fe]=_201;
-},removeListener:function(_202){
-delete this.listeners[_202];
-},baseLog:function(_203,_204){
-var msg=new MochiKit.Logging.LogMessage(this.counter,_203,MochiKit.Base.extend(null,arguments,1));
-this._messages.push(msg);
-this.dispatchListeners(msg);
-if(this.useNativeConsole){
-this.logToConsole(msg.level+": "+msg.info.join(" "));
-}
-this.counter+=1;
-while(this.maxSize>=0&&this._messages.length>this.maxSize){
-this._messages.shift();
-}
-},getMessages:function(_206){
-var _207=0;
-if(!(typeof (_206)=="undefined"||_206===null)){
-_207=Math.max(0,this._messages.length-_206);
-}
-return this._messages.slice(_207);
-},getMessageText:function(_208){
-if(typeof (_208)=="undefined"||_208===null){
-_208=30;
-}
-var _209=this.getMessages(_208);
-if(_209.length){
-var lst=map(function(m){
-return "\n  ["+m.num+"] "+m.level+": "+m.info.join(" ");
-},_209);
-lst.unshift("LAST "+_209.length+" MESSAGES:");
-return lst.join("");
-}
-return "";
-},debuggingBookmarklet:function(_20c){
-if(typeof (MochiKit.LoggingPane)=="undefined"){
-alert(this.getMessageText());
-}else{
-MochiKit.LoggingPane.createLoggingPane(_20c||false);
-}
-}};
-MochiKit.Logging.__new__=function(){
-this.LogLevel={ERROR:40,FATAL:50,WARNING:30,INFO:20,DEBUG:10};
-var m=MochiKit.Base;
-m.registerComparator("LogMessage",this.isLogMessage,this.compareLogMessage);
-var _20e=m.partial;
-var _20f=this.Logger;
-var _210=_20f.prototype.baseLog;
-m.update(this.Logger.prototype,{debug:_20e(_210,"DEBUG"),log:_20e(_210,"INFO"),error:_20e(_210,"ERROR"),fatal:_20e(_210,"FATAL"),warning:_20e(_210,"WARNING")});
-var self=this;
-var _212=function(name){
-return function(){
-self.logger[name].apply(self.logger,arguments);
-};
-};
-this.log=_212("log");
-this.logError=_212("error");
-this.logDebug=_212("debug");
-this.logFatal=_212("fatal");
-this.logWarning=_212("warning");
-this.logger=new _20f();
-this.logger.useNativeConsole=true;
-this.EXPORT_TAGS={":common":this.EXPORT,":all":m.concat(this.EXPORT,this.EXPORT_OK)};
-m.nameFunctions(this);
-};
-if(typeof (printfire)=="undefined"&&typeof (document)!="undefined"&&document.createEvent&&typeof (dispatchEvent)!="undefined"){
-printfire=function(){
-printfire.args=arguments;
-var ev=document.createEvent("Events");
-ev.initEvent("printfire",false,true);
-dispatchEvent(ev);
-};
-}
-MochiKit.Logging.__new__();
-MochiKit.Base._exportSymbols(this,MochiKit.Logging);
-MochiKit.Base._deps("DateTime",["Base"]);
-MochiKit.DateTime.NAME="MochiKit.DateTime";
-MochiKit.DateTime.VERSION="1.4";
-MochiKit.DateTime.__repr__=function(){
-return "["+this.NAME+" "+this.VERSION+"]";
-};
-MochiKit.DateTime.toString=function(){
-return this.__repr__();
-};
-MochiKit.DateTime.isoDate=function(str){
-str=str+"";
-if(typeof (str)!="string"||str.length===0){
-return null;
-}
-var iso=str.split("-");
-if(iso.length===0){
-return null;
-}
-return new Date(iso[0],iso[1]-1,iso[2]);
-};
-MochiKit.DateTime._isoRegexp=/(\d{4,})(?:-(\d{1,2})(?:-(\d{1,2})(?:[T ](\d{1,2}):(\d{1,2})(?::(\d{1,2})(?:\.(\d+))?)?(?:(Z)|([+-])(\d{1,2})(?::(\d{1,2}))?)?)?)?)?/;
-MochiKit.DateTime.isoTimestamp=function(str){
-str=str+"";
-if(typeof (str)!="string"||str.length===0){
-return null;
-}
-var res=str.match(MochiKit.DateTime._isoRegexp);
-if(typeof (res)=="undefined"||res===null){
-return null;
-}
-var year,_21a,day,hour,min,sec,msec;
-year=parseInt(res[1],10);
-if(typeof (res[2])=="undefined"||res[2]===""){
-return new Date(year);
-}
-_21a=parseInt(res[2],10)-1;
-day=parseInt(res[3],10);
-if(typeof (res[4])=="undefined"||res[4]===""){
-return new Date(year,_21a,day);
-}
-hour=parseInt(res[4],10);
-min=parseInt(res[5],10);
-sec=(typeof (res[6])!="undefined"&&res[6]!=="")?parseInt(res[6],10):0;
-if(typeof (res[7])!="undefined"&&res[7]!==""){
-msec=Math.round(1000*parseFloat("0."+res[7]));
-}else{
-msec=0;
-}
-if((typeof (res[8])=="undefined"||res[8]==="")&&(typeof (res[9])=="undefined"||res[9]==="")){
-return new Date(year,_21a,day,hour,min,sec,msec);
-}
-var ofs;
-if(typeof (res[9])!="undefined"&&res[9]!==""){
-ofs=parseInt(res[10],10)*3600000;
-if(typeof (res[11])!="undefined"&&res[11]!==""){
-ofs+=parseInt(res[11],10)*60000;
-}
-if(res[9]=="-"){
-ofs=-ofs;
-}
-}else{
-ofs=0;
-}
-return new Date(Date.UTC(year,_21a,day,hour,min,sec,msec)-ofs);
-};
-MochiKit.DateTime.toISOTime=function(date,_222){
-if(typeof (date)=="undefined"||date===null){
-return null;
-}
-var hh=date.getHours();
-var mm=date.getMinutes();
-var ss=date.getSeconds();
-var lst=[((_222&&(hh<10))?"0"+hh:hh),((mm<10)?"0"+mm:mm),((ss<10)?"0"+ss:ss)];
-return lst.join(":");
-};
-MochiKit.DateTime.toISOTimestamp=function(date,_228){
-if(typeof (date)=="undefined"||date===null){
-return null;
-}
-var sep=_228?"T":" ";
-var foot=_228?"Z":"";
-if(_228){
-date=new Date(date.getTime()+(date.getTimezoneOffset()*60000));
-}
-return MochiKit.DateTime.toISODate(date)+sep+MochiKit.DateTime.toISOTime(date,_228)+foot;
-};
-MochiKit.DateTime.toISODate=function(date){
-if(typeof (date)=="undefined"||date===null){
-return null;
-}
-var _22c=MochiKit.DateTime._padTwo;
-return [date.getFullYear(),_22c(date.getMonth()+1),_22c(date.getDate())].join("-");
-};
-MochiKit.DateTime.americanDate=function(d){
-d=d+"";
-if(typeof (d)!="string"||d.length===0){
-return null;
-}
-var a=d.split("/");
-return new Date(a[2],a[0]-1,a[1]);
-};
-MochiKit.DateTime._padTwo=function(n){
-return (n>9)?n:"0"+n;
-};
-MochiKit.DateTime.toPaddedAmericanDate=function(d){
-if(typeof (d)=="undefined"||d===null){
-return null;
-}
-var _231=MochiKit.DateTime._padTwo;
-return [_231(d.getMonth()+1),_231(d.getDate()),d.getFullYear()].join("/");
-};
-MochiKit.DateTime.toAmericanDate=function(d){
-if(typeof (d)=="undefined"||d===null){
-return null;
-}
-return [d.getMonth()+1,d.getDate(),d.getFullYear()].join("/");
-};
-MochiKit.DateTime.EXPORT=["isoDate","isoTimestamp","toISOTime","toISOTimestamp","toISODate","americanDate","toPaddedAmericanDate","toAmericanDate"];
-MochiKit.DateTime.EXPORT_OK=[];
-MochiKit.DateTime.EXPORT_TAGS={":common":MochiKit.DateTime.EXPORT,":all":MochiKit.DateTime.EXPORT};
-MochiKit.DateTime.__new__=function(){
-var base=this.NAME+".";
-for(var k in this){
-var o=this[k];
-if(typeof (o)=="function"&&typeof (o.NAME)=="undefined"){
-try{
-o.NAME=base+k;
-}
-catch(e){
-}
-}
-}
-};
-MochiKit.DateTime.__new__();
-if(typeof (MochiKit.Base)!="undefined"){
-MochiKit.Base._exportSymbols(this,MochiKit.DateTime);
-}else{
-(function(_236,_237){
-if((typeof (JSAN)=="undefined"&&typeof (dojo)=="undefined")||(MochiKit.__export__===false)){
-var all=_237.EXPORT_TAGS[":all"];
-for(var i=0;i<all.length;i++){
-_236[all[i]]=_237[all[i]];
-}
-}
-})(this,MochiKit.DateTime);
-}
-MochiKit.Base._deps("Format",["Base"]);
-MochiKit.Format.NAME="MochiKit.Format";
-MochiKit.Format.VERSION="1.4";
-MochiKit.Format.__repr__=function(){
-return "["+this.NAME+" "+this.VERSION+"]";
-};
-MochiKit.Format.toString=function(){
-return this.__repr__();
-};
-MochiKit.Format._numberFormatter=function(_23a,_23b,_23c,_23d,_23e,_23f,_240,_241,_242){
-return function(num){
-num=parseFloat(num);
-if(typeof (num)=="undefined"||num===null||isNaN(num)){
-return _23a;
-}
-var _244=_23b;
-var _245=_23c;
-if(num<0){
-num=-num;
-}else{
-_244=_244.replace(/-/,"");
-}
-var me=arguments.callee;
-var fmt=MochiKit.Format.formatLocale(_23d);
-if(_23e){
-num=num*100;
-_245=fmt.percent+_245;
-}
-num=MochiKit.Format.roundToFixed(num,_23f);
-var _248=num.split(/\./);
-var _249=_248[0];
-var frac=(_248.length==1)?"":_248[1];
-var res="";
-while(_249.length<_240){
-_249="0"+_249;
-}
-if(_241){
-while(_249.length>_241){
-var i=_249.length-_241;
-res=fmt.separator+_249.substring(i,_249.length)+res;
-_249=_249.substring(0,i);
-}
-}
-res=_249+res;
-if(_23f>0){
-while(frac.length<_242){
-frac=frac+"0";
-}
-res=res+fmt.decimal+frac;
-}
-return _244+res+_245;
-};
-};
-MochiKit.Format.numberFormatter=function(_24d,_24e,_24f){
-if(typeof (_24e)=="undefined"){
-_24e="";
-}
-var _250=_24d.match(/((?:[0#]+,)?[0#]+)(?:\.([0#]+))?(%)?/);
-if(!_250){
-throw TypeError("Invalid pattern");
-}
-var _251=_24d.substr(0,_250.index);
-var _252=_24d.substr(_250.index+_250[0].length);
-if(_251.search(/-/)==-1){
-_251=_251+"-";
-}
-var _253=_250[1];
-var frac=(typeof (_250[2])=="string"&&_250[2]!="")?_250[2]:"";
-var _255=(typeof (_250[3])=="string"&&_250[3]!="");
-var tmp=_253.split(/,/);
-var _257;
-if(typeof (_24f)=="undefined"){
-_24f="default";
-}
-if(tmp.length==1){
-_257=null;
-}else{
-_257=tmp[1].length;
-}
-var _258=_253.length-_253.replace(/0/g,"").length;
-var _259=frac.length-frac.replace(/0/g,"").length;
-var _25a=frac.length;
-var rval=MochiKit.Format._numberFormatter(_24e,_251,_252,_24f,_255,_25a,_258,_257,_259);
-var m=MochiKit.Base;
-if(m){
-var fn=arguments.callee;
-var args=m.concat(arguments);
-rval.repr=function(){
-return [self.NAME,"(",map(m.repr,args).join(", "),")"].join("");
-};
-}
-return rval;
-};
-MochiKit.Format.formatLocale=function(_25f){
-if(typeof (_25f)=="undefined"||_25f===null){
-_25f="default";
-}
-if(typeof (_25f)=="string"){
-var rval=MochiKit.Format.LOCALE[_25f];
-if(typeof (rval)=="string"){
-rval=arguments.callee(rval);
-MochiKit.Format.LOCALE[_25f]=rval;
-}
-return rval;
-}else{
-return _25f;
-}
-};
-MochiKit.Format.twoDigitAverage=function(_261,_262){
-if(_262){
-var res=_261/_262;
-if(!isNaN(res)){
-return MochiKit.Format.twoDigitFloat(_261/_262);
-}
-}
-return "0";
-};
-MochiKit.Format.twoDigitFloat=function(_264){
-var sign=(_264<0?"-":"");
-var s=Math.floor(Math.abs(_264)*100).toString();
-if(s=="0"){
-return s;
-}
-if(s.length<3){
-if(s.length==1){
-s="0"+s;
-}
-while(s.charAt(s.length-1)=="0"){
-s=s.substring(0,s.length-1);
-}
-return sign+"0."+s;
-}
-var head=sign+s.substring(0,s.length-2);