
Type.createNamespace('Axinom.Toolkit');Axinom.Toolkit.PageFragment=function(container){this.$1=container;}
Axinom.Toolkit.PageFragment.attachTo=function(container){return new Axinom.Toolkit.PageFragment(container);}
Axinom.Toolkit.PageFragment.prototype={$1:null,onSuccess:null,$2:null,$3:null,embedContent:function(contentUrl){if(this.$3!=null){this.$3.onreadystatechange=Delegate.create(this,function(){
});this.$3.abort();}this.$2=contentUrl;this.$3=new XMLHttpRequest();this.$3.onreadystatechange=Delegate.create(this,this.$4);this.$3.open('get',contentUrl,true);this.$3.send(null);},$4:function(){if(this.$3.readyState===4){if(this.$3.status===200){this.$1.innerHTML=this.$3.responseText;var $0=this.$1.getElementsByTagName('a');for(var $2=0;$2<$0.length;$2++){var $3=$0[$2];if($3.href.startsWith('http://example.com/FRAGMENT_PLACEHOLDER/')){$3.href=$3.href.substr('http://example.com/FRAGMENT_PLACEHOLDER/'.length);}}var $1=this.$1.getElementsByTagName('img');for(var $4=0;$4<$1.length;$4++){var $5=$1[$4];if($5.src.startsWith('http://example.com/FRAGMENT_PLACEHOLDER/')){$5.src=$5.src.substr('http://example.com/FRAGMENT_PLACEHOLDER/'.length);}}if(this.onSuccess!=null){this.onSuccess.invoke();}}else{throw new Error(String.format('Page fragment failed to load with status code {0}. Fragment URL was: {1}',this.$3.status,this.$2));}}}}
Axinom.Toolkit.QueryString=function(qs){this.$0={};qs=qs.replace('+',' ');var $0=qs.split('&');var $enum1=$0.getEnumerator();while($enum1.moveNext()){var $1=$enum1.get_current();var $2=$1.split('=',2);var $3=decodeURIComponent($2[0]);var $4=($2.length===2)?decodeURIComponent($2[1]):decodeURIComponent($2[0]);this.$0[$3]=$4;}}
Axinom.Toolkit.QueryString.fromUrl=function(url){var $0=url.indexOf('?');if($0===-1){return Axinom.Toolkit.QueryString.fromQueryString('');}var $1=url.indexOf('#');if($1===-1){return Axinom.Toolkit.QueryString.fromQueryString(url.remove(0,$0+1));}else{return Axinom.Toolkit.QueryString.fromQueryString(url.remove(0,$0+1).remove($1-$0-1));}}
Axinom.Toolkit.QueryString.fromQueryString=function(qs){return new Axinom.Toolkit.QueryString(qs);}
Axinom.Toolkit.QueryString.prototype={get:function(key){if(Object.keyExists(this.$0,key)){return this.$0[key];}else{throw new Error('QueryString does not contain argument: '+key);}},tryGet:function(key,defaultValue){if(Object.keyExists(this.$0,key)){return this.$0[key];}else{return defaultValue;}},contains:function(key){return Object.keyExists(this.$0,key);}}
Axinom.Toolkit.PageFragment.createClass('Axinom.Toolkit.PageFragment');Axinom.Toolkit.QueryString.createClass('Axinom.Toolkit.QueryString');
// ---- Do not remove this footer ----
// This script was generated using Script# v0.5.5.0 (http://projects.nikhilk.net/ScriptSharp)
// -----------------------------------
