
function $(id) {return document.getElementById(id);}
var CLASMA={};
CLASMA.namespace=function(ns)
{
var o=CLASMA;
var s=ns.split(".");
var n=(s[0]=="CLASMA")?1:0;
while(n<s.length)
{
if(!o[s[n]]) o[s[n]]={};
o=o[s[n++]];
}
return o;
};
CLASMA.libPath="lib/";
CLASMA.cssPath="css/";
CLASMA.resPath="res/";
Number.prototype.NaN0=function() {return isNaN(this)?0:this;};
String.prototype.regrep=function(p,s) {return this.replace(new RegExp(p,"gi"),s);};
String.prototype.regrem=function(p) {return this.replace(new RegExp(p,"gi"),"");};
String.prototype.regmatch=function(p) {return this.match(new RegExp(p,"gi"));};
String.prototype.insertAt=function(n,s) {return this.substr(0,n)+s+this.substr(n);};
String.prototype.ltrim=function() {return this.regrem("^\\s+");};
String.prototype.rtrim=function() {return this.regrem("\\s+$");};
String.prototype.trim=function() {return this.ltrim().rtrim();};
String.prototype.trimsplit=function(c) {var s=this.split(c); for(var n=0;n<s.length;n++) s[n]=s[n].trim(); return s;};
String.prototype.addBreaks=function() {return this.regrep("\r\n|\n|\r","<br/>");};
String.prototype.removeBreaks=function() {return this.regrep("<br\/>","\r\n");};
String.prototype.escapeTabs=function() {return this.regrep("\t","&nbsp;&nbsp;&nbsp;&nbsp;");};
String.prototype.escapeHtml=function() {return this.regrep("&","&amp;").regrep("<","&lt;").regrep(">","&gt;");};
String.prototype.unescapeHtml=function() {return this.regrep("&amp;","&").regrep("&lt;","<").regrep("&gt;",">");};
String.prototype.stripTags=function() {return this.regrem("<([^>]+)>");};
String.prototype.encode=function() {return encodeURIComponent(this);};
String.prototype.parseUrl=function()
{
var m=new RegExp(
"^(?:([^:/?#.]+):)?(?://)?"+
"(([^:/?#]*)(?::(\\d*))?)?"+
"((/(?:[^?#](?![^?#/]*\\.[^?#/.]+(?:[\\?#]|$)))*/?)?([^?#/]*))?(?:\\?([^#]*))?"+
"(?:#(.*))?").exec(this);
var k=["source","protocol","authority","domain","port","path","directory","file","query","hash"];
var o={};
for(var n=0;n<10;n++)
o[k[n]]=(m[n]?m[n]:"");
return o;
};
String.prototype.parseFile=function()
{
var d={path:"",file:"",ext:""};
var n=this.lastIndexOf(".");
if(n>=0) d.ext=this.substr(n+1);
else n=this.length;
var nn=this.lastIndexOf(String.fromCharCode(92));
if(nn<0)
{
nn=this.lastIndexOf("/");
if(nn<0) nn=this.lastIndexOf(":");
}
nn++;
d.file=this.substr(nn,n-nn);
d.path=this.substr(0,nn);
return d;
};
String.prototype.parseEmail=function()
{
var m=this.split("@");
return (m && m.length==2)?{local:m[0],domain:m[1]}:null;
};
String.prototype.validEmail=function()
{
var len=this.length-1;
var at=this.lastIndexOf("@");
if(at<1 || at==len) return false;
var dot=this.lastIndexOf(".");
if(dot<=at+1 || dot==len) return false;
return true;
};
String.prototype.validPassword=function()
{
if(this.length>=6)
{
for(var n=0;n<this.length;n++)
if(CLASMA.lang.isNum(this.charAt(n))) return true;
}
return false;
};
String.prototype.oneOf=function(ar)
{
for(var n=0;n<ar.length;n++)
if(this.toLowerCase()==ar[n].toLowerCase()) return n;
return -1;
};
String.prototype.toTitle=function()
{
function fn(a) {return a.toUpperCase();}
return this.replace(/\b[a-z]/g,fn);
};
Number.prototype.strDecimal=function(dec)
{
if(typeof dec=="undefined") dec=0;
var s=this.strRound(dec);
var l=s.length-(dec?dec+1:0);
var p=l%3;
if(p==0) p=3;
var len=Math.ceil(l/3)-1;
for(var n=0;n<len;n++)
s=s.insertAt(p+(n*4),",");
return s;
};
Number.prototype.strRound=function(dec)
{
if(typeof dec=="undefined") dec=0;
var fac=Math.pow(10,dec);
var n=this.valueOf()+"";
if(n==0) return dec?"0."+(fac+"").substr(1):"0";
var n=Math.round(n*fac)+"";
var p=n.length-dec;
var whole=n.substr(0,p);
if(dec>0)
{
var frac=n.substr(p);
if(frac.length<dec)
frac=(Math.pow(10,dec-frac.length)+"").substr(1)+frac;
return whole+"."+frac;
}
return whole+((Math.pow(10,-dec)+"").substr(1));
};
Date.prototype.getMonthName=function()
{
var months=[
"January",
"February",
"March",
"April",
"May",
"June",
"July",
"August",
"September",
"October",
"November",
"December"];
return months[this.getMonth()];
};
Date.prototype.strDate=function(year)
{
var d=this.getDate();
var m=this.getMonthName();
var y=this.getFullYear();
var ds=m+" "+d;
if(year || y!=(new Date()).getFullYear())
ds+=", "+y;
return ds;
};
Date.prototype.strTime=function(secs)
{
var h=this.getHours();
var m=this.getMinutes();
var pm=(h>=12);
h%=12;
if(h==0) h=12;
if(m<10) m="0"+m;
var ts=h+":"+m;
if(secs)
{
var s=this.getSeconds();
if(s<10) s="0"+s;
ts+=":"+s;
}
ts+=" "+(pm?"pm":"am");
return ts;
};
CLASMA.namespace("CLASMA.lang");
CLASMA.lang=function() {
var number="0123456789";
var lower="abcdefghijklmnopqrstuvwxyz";
var upper="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var isValid=function(s,v)
{
if(s && s!="")
{
for(var n=0;n<s.length;n++)
if(v.indexOf(s.charAt(n))==-1) return false;
}
return true;
};
return {
isUndefined:function(o) {return typeof o=="undefined";},
isNull:function(o) {return o===null;},
isBoolean:function(o) {return typeof o=="boolean";},
isString:function(o) {return typeof o=="string";},
isNumber:function(o) {return typeof o=="number" && isFinite(o);},
isObject:function(o) {return typeof o=="object";},
isFunction:function(o) {return typeof o=="function";},
isNum:function(s) {return isValid(s,number);},
isUpper:function(s) {return isValid(s,upper);},
isLower:function(s) {return isValid(s,lower);},
isAlpha:function(s) {return isValid(s,upper+lower);},
isAlphaNum:function(s) {return isValid(s,upper+lower+number);},
tween:function(t,b,c,d) {return b+((c-b)*(t/d));},
floorit:function(v,n) {v+=n; return v<0?0:v;}
}; }();
CLASMA.namespace("CLASMA.detect");
CLASMA.detect=function() {
var sniffles=[
"MSIE ([\\d|\\.]+);",
"Firefox\\/([\\d|\\.]+)",
"Chrome\\/([\\d|\\.]+)",
"Version\\/([\\d|\\.]+).*Safari",
"AppleWebKit\\/([\\d|\\.]+)"];
var types=[
"IE",
"FireFox",
"Chrome",
"Safari",
"AppleWebKit"];
return {
agent:"Unknown",
platform:"Unknown",
type:"Unknown",
ver:"?",
vermaj:0,
vermin:0,
verbuild:0,
desktop:false,
mobile:false,
ie:false,
firefox:false,
chrome:false,
safari:false,
sniff:function()
{
var a=navigator.userAgent;
var p=navigator.platform;
this.agent=a;
this.platform=p;
for(var n=0;n<sniffles.length;n++)
{
var re=new RegExp(sniffles[n],"i");
if(re.test(a))
{
this.type=types[n];
this.ver=RegExp.$1;
var v=this.ver.split(".");
this.vermaj=v.length>0?parseInt(v[0]):0;
this.vermin=v.length>1?parseInt(v[1]):0;
this.verbuild=v.length>2?parseInt(v[2]):0;
break;
}
}
this.desktop=(p=="MacIntel" || p=="Win32");
this.mobile=!this.desktop;
this.ie=(n==0);
this.firefox=(n==1);
this.chrome=(n==2);
this.safari=(n==3 || n==4);
}
}; }();
CLASMA.detect.sniff();
CLASMA.namespace("CLASMA.dom");
CLASMA.dom=function() {
var cdd=CLASMA.detect;
var loadList=null;
var evalList=null;
var fnDomLoad=null;
var getE=function(id) {return CLASMA.lang.isString(id)?$(id):id;};
var getS=function(id) {var e=getE(id); return e?e.style:null;};
return {
getDocument:function() {return document;},
getRoot:function(doc) {if(!doc) doc=document; return doc.getElementsByTagName("html")[0];},
getHead:function(doc) {if(!doc) doc=document; return doc.getElementsByTagName("head")[0];},
getBody:function(doc) {if(!doc) doc=document; return doc.getElementsByTagName("body")[0];},
getElement:function(id) {return getE(id);},
getStyle:function(id) {return getS(id);},
getParent:function(id) {var e=getE(id); return e?e.parentNode:null;},
getTag:function(id) {var e=getE(id); return (e && e.tagName)?e.tagName.toLowerCase():null;},
setId:function(id,v) {var e=getE(id); if(e) e.id=v;},
getId:function(id) {var e=getE(id); return e?e.id:null;},
setName:function(id,v) {var e=getE(id); if(e) e.name=v;},
getName:function(id) {var e=getE(id); return e?e.name:null;},
setClass:function(id,v) {var e=getE(id); if(e) e.className=v;},
getClass:function(id) {var e=getE(id); return e?e.className:null;},
setHtml:function(id,v) {var e=getE(id); if(e) e.innerHTML=v;},
getHtml:function(id) {var e=getE(id); return e?e.innerHTML:null;},
setSrc:function(id,v) {var e=getE(id); if(e) e.src=v;},
getSrc:function(id) {var e=getE(id); return e?e.src:null;},
setScrollTop:function(id,v) {var e=getE(id); if(e) e.scrollTop=v;},
getScrollTop:function(id) {var e=getE(id); return e?e.scrollTop:null;},
setScrollLeft:function(id,v) {var e=getE(id); if(e) e.scrollLeft=v;},
getScrollLeft:function(id) {var e=getE(id); return e?e.scrollLeft:null;},
getScrollHeight:function(id) {var e=getE(id); return e?e.scrollHeight:null;},
getScrollWidth:function(id) {var e=getE(id); return e?e.scrollWidth:null;},
setValue:function(id,v) {var e=getE(id); if(e) e.value=v;},
getValue:function(id) {var e=getE(id); return e?e.value:null;},
setChecked:function(id,v) {var e=getE(id); if(e) e.checked=v;},
getChecked:function(id) {var e=getE(id); return e?e.checked:null;},
isChecked:function(id) {return this.getChecked(id);},
setDisabled:function(id,v) {var e=getE(id); if(e) e.disabled=v?"disabled":"";},
getDisabled:function(id) {var e=getE(id); return e?e.disabled:null;},
isDisabled:function(id) {return this.getDisabled(id);},
setAttr:function(id,n,v) {var e=getE(id); if(e) e.setAttribute(n,v);},
getAttr:function(id,n) {var e=getE(id); return e?e.getAttribute(n):null;},
removeAttr:function(id,n) {var e=getE(id); if(e) e.removeAttribute(n);},
setTop:function(id,v) {var s=getS(id); if(s) s.top=v+"px";},
getTop:function(id) {var s=getS(id); return s?s.top:null;},
setLeft:function(id,v) {var s=getS(id); if(s) s.left=v+"px";},
getLeft:function(id) {var s=getS(id); return s?s.left:null;},
setBottom:function(id,v) {var s=getS(id); if(s) s.bottom=v+"px";},
getBottom:function(id) {var s=getS(id); return s?s.bottom:null;},
setRight:function(id,v) {var s=getS(id); if(s) s.right=v+"px";},
getRight:function(id) {var s=getS(id); return s?s.right:null;},
setWidth:function(id,v) {var s=getS(id); if(s) s.width=v+"px";},
getWidth:function(id) {var s=getS(id); return s?s.width:null;},
setHeight:function(id,v) {var s=getS(id); if(s) s.height=v+"px";},
getHeight:function(id) {var s=getS(id); return s?s.height:null;},
setBackImage:function(id,v) {var s=getS(id); if(s) s.backgroundImage="url("+v+")";},
getBackImage:function(id) {var s=getS(id); return s?s.backgroundImage:null;},
setBackColor:function(id,v) {var s=getS(id); if(s) s.backgroundColor=v;},
getBackColor:function(id) {var s=getS(id); return s?s.backgroundColor:null;},
setColor:function(id,v) {var s=getS(id); if(s) s.color=v;},
getColor:function(id) {var s=getS(id); return s?s.color:null;},
setMarginTop:function(id,v) {var s=getS(id); if(s) s.marginTop=v+"px";},
getMarginTop:function(id) {var s=getS(id); return s?s.marginTop:null;},
setMarginLeft:function(id,v) {var s=getS(id); if(s) s.marginLeft=v+"px";},
getMarginLeft:function(id) {var s=getS(id); return s?s.marginLeft:null;},
setMarginBottom:function(id,v) {var s=getS(id); if(s) s.marginBottom=v+"px";},
getMarginBottom:function(id) {var s=getS(id); return s?s.marginBottom:null;},
setMarginRight:function(id,v) {var s=getS(id); if(s) s.marginRight=v+"px";},
getMarginRight:function(id) {var s=getS(id); return s?s.marginRight:null;},
setFrame:function(id,v,w) {var s=getS(id); if(s) s.backgroundPosition=(-(v*w))+"px 0px";},
getFrame:function(id) {var s=getS(id); return s?s.backgroundPosition:null;},
setZIndex:function(id,i) {var s=getS(id); if(s) s.zIndex=i;},
getZIndex:function(id) {var s=getS(id); return s?s.zIndex:null;},
setDisplay:function(id,v) {var s=getS(id); if(s) s.display=v;},
getDisplay:function(id) {var s=getS(id); return s?s.display:null;},
setOverflow:function(id,v) {var s=getS(id); if(s) s.overflow=v;},
getOverflow:function(id) {var s=getS(id); return s?s.overflow:null;},
setPosition:function(id,v) {var s=getS(id); if(s) s.position=v;},
getPosition:function(id) {var s=getS(id); return s?s.position:null;},
setVisibility:function(id,v) {var s=getS(id); if(s) s.visibility=v;},
getVisibility:function(id) {var s=getS(id); return s?s.visibility:null;},
setShow:function(id,v) {var s=getS(id); if(s) s.display=v?"block":"none";},
getShow:function(id) {var s=getS(id); return s?s.display:null;},
isVisible:function(id) {var s=getS(id); return s && s.display!="none";},
getFirst:function(id)
{
var e=getE(id);
if(!e) return null;
var p=e.firstChild;
return cdd.ie?p:CLASMA.dom.skipNext(p);
},
getLast:function(id)
{
var e=getE(id);
if(!e) return null;
var p=e.lastChild;
return cdd.ie?p:CLASMA.dom.skipPrev(p);
},
getNext:function(id)
{
var e=getE(id);
if(!e) return null;
var p=e.nextSibling;
return cdd.ie?p:CLASMA.dom.skipNext(p);
},
getPrev:function(id)
{
var e=getE(id);
if(!e) return null;
var p=e.prevSibling;
return cdd.ie?p:CLASMA.dom.skipPrev(p);
},
skipNext:function(p)
{
while(p && p.nodeType!=1)
p=p.nextSibling;
return p;
},
skipPrev:function(p)
{
while(p && p.nodeType!=1)
p=p.prevSibling;
return p;
},
createElement:function()
{
var a=arguments;
var n=0;
var doc=CLASMA.lang.isString(a[n])?document:a[n++];
var e=doc.createElement(a[n++]);
if(!e) return null;
while(n<a.length)
{
var o=a[n++].trimsplit("=");
if(o.length==2) e.setAttribute(o[0],o[1]);
}
return e;
},
appendBody:function(e)
{
document.body.appendChild(e);
},
appendChild:function(parent,e)
{
var p=getE(parent);
if(!p) return;
parent.appendChild(e);
},
insertChild:function(before,e)
{
var c=getE(before);
if(!c) return;
c.parentNode.insertBefore(e,c);
},
insertChildAfter:function(after,e)
{
var c=getE(after);
if(!c) return;
c.parentNode.insertBefore(e,c.nextSibling);
},
deleteElement:function(id)
{
var e=getE(id);
if(!e) return;
var p=CLASMA.dom.getParent(e);
if(p) p.removeChild(e);
},
moveElements:function(from,to)
{
var f=getE(from);
var t=getE(to);
if(!f || !t) return;
while(f.firstChild)
{
var e=f.removeChild(f.firstChild);
t.appendChild(e);
}
},
removeElements:function(id)
{
var e=getE(id);
if(!e) return;
while(e.firstChild)
e.removeChild(e.firstChild);
},
getElements:function(tag,parent,cls)
{
if(!tag) tag="*";
if(!parent) parent=document;
parent=getE(parent);
if(!parent) return [];
var e=(tag=="*" && parent.all)?parent.all:parent.getElementsByTagName(tag);
if(!cls) return e;
var l=[];
var r=new RegExp("(^|\\s)"+cls+"(\\s|$)");
for(var n=0;n<e.length;n++)
if(r.test(CLASMA.dom.getClass(e[n]))) l.push(e[n]);
return l;
},
getElementById:function(parent,id)
{
if(!parent || parent==document)
return document.getElementById(id);
var e=CLASMA.dom.getElements(null,parent,null);
for(var n=0;n<e.length;n++)
if(CLASMA.dom.getId(e[n])==id) return(e[n]);
return null;
},
getElementByClass:function(parent,cls)
{
var e=CLASMA.dom.getElements(null,parent,cls);
return e.length>0?e[0]:null;
},
getParentElement:function(from,tag,cls)
{
if(!tag) tag="*";
var r=cls?(new RegExp("(^|\\s)"+cls+"(\\s|$)")):null;
var e=CLASMA.dom.getParent(from);
while(e && e!=document)
{
if((tag=="*" || CLASMA.dom.getTag(e)==tag) &&
(!r || r.test(CLASMA.dom.getClass(e))))
return e;
e=CLASMA.dom.getParent(e);
}
return null;
},
getFrameDocument:function(id)
{
var e=getE(id);
if(!e) return null;
if(e.contentDocument)
return e.contentDocument;
if(e.contentWindow)
return e.contentWindow.document;
return e.document;
},
isElementVisible:function(e)
{
var b=CLASMA.dom.getBoundingBox(e);
return b.height>0;
},
enableFormElements:function(form,enable,exempt)
{
if(typeof enable=="undefined") enable=true;
if(typeof exempt=="undefined") exempt=null;
form=getE(form);
if(!form) return;
for(var n=0;n<form.elements.length;n++)
{
var e=form.elements[n];
if(e) e.disabled=!enable;
}
if(exempt)
{
var ex=exempt.split(",")
for(n=0;n<ex.length;n++)
$(ex[n]).disabled=enable;
}
},
processScripts:function(t)
{
loadList=[];
evalList=[];
var s1=new RegExp("<script","gi");
var s2=new RegExp("</script>","gi");
var s3=new RegExp(" src=","gi");
while(true)
{
var n1=t.search(s1);
if(n1==-1) break;
var n2=t.search(s2);
if(n2==-1) break;
var s=t.substring(n1,n2);
t=t.substring(0,n1)+t.substring(n2+9);
var n1=s.indexOf(">");
if(n1==-1) break;
var a=s.substring(0,n1+1);
var n2=a.search(s3);
if(n2>=0)
{
var c=a.charAt(n2+5);
var n=a.indexOf(c,n2+6);
a=a.substring(n2+6,n);
if(a!="") loadList.push(a);
}
s=s.substring(n1+1);
if(s!="") evalList.push(s);
}
return t;
},
runScripts:function()
{
for(var n=0;n<loadList.length;n++)
this.loadScript(loadList[n]);
for(var n=0;n<evalList.length;n++)
this.evalScript(evalList[n]);
loadList=null;
evalList=null;
},
loadScript:function(src)
{
var e=this.createElement("script");
e.type="text/javascript";
e.src=src;
try {this.getHead().appendChild(e);}
catch(err) {alert(err.description);}
return e;
},
evalScript:function(t)
{
var e=this.createElement("script");
e.type="text/javascript";
e.text=t;
try {this.getHead().appendChild(e);}
catch(err) {alert(err.description);}
return e;
},
getBoundingBox:function(id)
{
var e=getE(id);
if(!e) return null;
var box={top:0,left:0,bottom:0,right:0,width:0,height:0};
if(e.getBoundingClientRect)
{
var br=e.getBoundingClientRect();
box.top=parseInt(br.top);
box.left=parseInt(br.left);
box.bottom=parseInt(br.bottom);
box.right=parseInt(br.right);
box.width=parseInt(br.right-br.left);
box.height=parseInt(br.bottom-br.top);
return box;
}
if(document.getBoxObjectFor)
{
var bo=document.getBoxObjectFor(e);
box.top=parseInt(bo.y);
box.left=parseInt(bo.x);
box.width=parseInt(bo.width);
box.height=parseInt(bo.height);
box.bottom=parseInt(box.top+bo.height);
box.right=parseInt(box.left+bo.width);
return box;
}
return CLASMA.dom.getOffsetBox(e);
},
getOffsetBox:function(id)
{
var e=getE(id);
if(!e) return null;
var box={top:0,left:0,bottom:0,right:0,width:0,height:0};
box.width=parseInt(e.offsetWidth);
box.height=parseInt(e.offsetHeight);
while(e)
{
box.top+=e.offsetTop;
box.left+=e.offsetLeft;
e=e.offsetParent;
}
box.top=parseInt(box.top);
box.left=parseInt(box.left);
box.bottom=parseInt(box.top+box.height);
box.right=parseInt(box.left+box.width);
return box;
},
ptInBoundingBox:function(id,pt)
{
var b=this.getBoundingBox(id);
return pt.top>=b.top && pt.top<b.bottom &&
pt.left>=b.left && pt.left<b.right;
},
isChild:function(p,e)
{
while(e)
{
if(e==p) return true;
e=e.parentNode;
}
return false;
},
addEvent:function(id,name,fn,capture)
{
var e=getE(id);
if(!e) return;
if(typeof capture=="undefined") capture=false;
if(e.addEventListener)
{
if(cdd.firefox)
{
switch(name)
{
case "mousewheel":
name="DOMMouseScroll";
break;
}
}
e.addEventListener(name,fn,capture);
}
else
{
if(e.attachEvent) e.attachEvent("on"+name,fn);
else e["on"+name]=fn;
}
},
removeEvent:function(id,name,fn,capture)
{
var e=getE(id);
if(!e) return;
if(typeof capture=="undefined") capture=false;
if(e.removeEventListener) e.removeEventListener(name,fn,capture);
else
{
if(e.detachEvent) e.detachEvent("on"+name,fn);
else e["on"+name]=null;
}
},
hasClass:function(e,cls)
{
var r=new RegExp("(^|\\s)"+cls+"(\\s|$)");
return r.test(this.getClass(e));
},
addClass:function(e,cls)
{
if(this.hasClass(e,cls))
return;
var s=this.getClass(e);
this.setClass(e,s+((!s || s=="")?"":" ")+cls);
},
removeClass:function(e,cls)
{
if(!this.hasClass(e,cls))
return;
var r1=new RegExp("(^|\\s)"+cls+"(\\s|$)");
var s=this.getClass(e).replace(r1," ").trim();
this.setClass(e,s);
},
cssAddRule:function(css,selector,rule)
{
if(css>=document.styleSheets.length) return;
var s=document.styleSheets[css];
if(cdd.ie) s.addRule(selector,rule);
else s.insertRule(selector+" {"+rule+"}",css);
},
setOnDomLoaded:function()
{
if(cdd.safari)
{
var timer=setInterval(function()
{
if(document.readyState=="loaded" ||
document.readyState=="complete")
{
clearInterval(timer);
CLASMA.dom.ondomloaded();
}
},10);
return;
}
if(cdd.ie)
{
document.write("<script id=\"__ie_load\" defer=\"defer\" src=\"javascript:void(0)\"></script>");
var e=$("__ie_load");
e.onreadystatechange=function()
{
if(e.readyState=="complete")
{
e.onreadystatechange=null;
e.removeNode(true);
CLASMA.dom.ondomloaded();
}
}
return;
}
if(document.addEventListener)
{
document.addEventListener("DOMContentLoaded",this.ondomloaded,false);
return;
}
window.onload=this.ondomloaded;
},
ondomloaded:function()
{
if(!arguments.callee.done)
{
arguments.callee.done=true;
if(fnDomLoad) fnDomLoad();
}
},
addDomLoadEvent:function(fn)
{
var pfn=fnDomLoad;
fnDomLoad=function()
{
if(pfn) pfn();
fn();
}
},
addLoadEvent:function(fn)
{
var pfn=window.onload;
window.onload=function()
{
if(pfn) pfn();
fn();
}
}
}; }();
CLASMA.dom.setOnDomLoaded();
CLASMA.namespace("CLASMA.framework");
CLASMA.framework=function() {
var cdd=CLASMA.detect;
var cd=CLASMA.dom;
var hint="";
var isExemptTag=function(e)
{
var n=cd.getTag(e);
if(n=="textarea")
return true;
if(n=="select" && (cdd.safari || cdd.chrome))
return true;
if(n=="input")
{
var t=e.getAttribute("type");
if(t=="text" || t=="password" ||
t=="email" || t=="url" || t=="tel" || t=="number")
return true;
}
while(e)
{
n=cd.getClass(e);
if(n=="ovtext5" || n=="ovtable" || n=="ovdetails")
return true;
e=cd.getParent(e);
}
return false;
};
return {
K_BREAK:3,
K_BS:8,
K_TAB:9,
K_RETURN:13,
K_SHIFT:16,
K_CTRL:17,
K_ALT:18,
K_PAUSE:19,
K_CAPSLOCK:20,
K_ESCAPE:27,
K_SPACE:32,
K_PREV:33,
K_NEXT:34,
K_END:35,
K_HOME:36,
K_LEFT:37,
K_UP:38,
K_RIGHT:39,
K_DOWN:40,
K_PRINT:44,
K_INSERT:45,
K_DELETE:46,
K_F1:112,
K_F2:113,
K_F3:114,
K_F4:115,
K_F5:116,
K_F6:117,
K_F7:118,
K_F8:119,
K_F9:120,
K_F10:121,
K_F11:122,
K_F12:123,
K_NUMLOCK:145,
K_SCROLL:145,
reloadSite:function()
{
if(window.location.hash!="")
window.location.hash="";
CLASMA.framework.reloadPage();
},
reloadPage:function()
{
window.location.reload(true);
},
isEditKey:function(k)
{
switch(k)
{
case this.K_TAB:
case this.K_BS:
case this.K_LEFT:
case this.K_RIGHT:
case this.K_HOME:
case this.K_END:
case this.K_DELETE:
return true;
}
return false;
},
help:function(chapter)
{
var url="/pv/help/default.asp";
var args="";
if(chapter && chapter!=0)
args+="c="+chapter;
if(args!="") url+="?"+args;
var s=
"width=680,"+
"height=500,"+
"toolbar=no,"+
"menubar=no,"+
"scrollbars=no,"+
"status=no,"+
"resizable=yes,"+
"loc"+"ation=no,"+
"directories=no";
window.open(url,"CLASMA_help",s).focus();
return false;
},
setTitle:function(title) {cd.getDocument().title=title;},
getTitle:function() {return cd.getDocument().title;},
getFocus:function()
{
return document.activeElement;
},
setFocus:function(id)
{
if(!id)
{
var e=CLASMA.framework.getFocus();
if(!e) return;
e.blur();
if(cdd.safari || cdd.chrome)
document.activeElement=null;
return;
}
var e=cd.getElement(id);
if(!e) return;
if(e.focus) e.focus();
if(cd.getTag(e)=="textarea")
return;
if(e.select) e.select();
},
selectRange:function(id,start,end)
{
var e=cd.getElement(id);
if(!e) return;
if(e.setSelectionRange)
{
e.focus();
e.setSelectionRange(start,end);
return;
}
if(!e.createTextRange) return;
var range=e.createTextRange();
range.collapse(true);
range.moveEnd("character",end);
range.moveStart("character",start);
range.select();
},
selectReplace:function(id,s)
{
var e=cd.getElement(id);
if(!e) return;
if(e.setSelectionRange)
{
var ss=e.selectionStart;
var se=e.selectionEnd;
e.value=e.value.substring(0,ss)+s+e.value.substring(se);
if(ss==se) this.selectRange(e,ss+s.length,ss+s.length);
else this.selectRange(e,ss,ss+s.length);
return;
}
if(!document.selection) return;
var r=document.selection.createRange();
if(r.parentElement()!=e) return;
var c=(r.text=="");
r.text=s;
if(c) return;
r.moveStart("character",-s.length);
r.select();
},
getRadioSelection:function(parent,name)
{
var e=cd.getElements("input",parent)
for(var n=0;n<e.length;n++)
{
if(e[n].name==name && e[n].type=="radio" &&
cd.isChecked(e[n]))
return cd.getValue(e[n]);
}
return null;
},
setRadioSelection:function(parent,name,id)
{
var e=cd.getElements("input",parent)
for(var n=0;n<e.length;n++)
{
if(e[n].name==name && e[n].type=="radio")
cd.setChecked(e[n],false);
}
if(id) cd.setChecked(id,true);
},
getSelectOption:function(e)
{
var v=cd.getValue(e);
var c=cd.getElements("option",e);
for(var n=0;n<c.length;n++)
{
if(cd.getValue(c[n])==v)
return c[n];
}
return null;
},
gradient:function(id,c1,c2,type)
{
var s=cd.getStyle(id);
if(typeof c1=="undefined") c1="black";
if(typeof c2=="undefined") c2="white";
if(typeof type=="undefined") type="0";
if(cdd.ie)
{
var a=c1?"startColorstr='"+c1+"',endColorstr='"+c2+"',gradientType='"+type+"'":null;
s.filter=a?"progid:DXImageTransform.Microsoft.Gradient("+a+")":"";
return;
}
},
opacity:function(id,level)
{
var s=cd.getStyle(id);
if(typeof level=="undefined") level=0.25;
if(cdd.ie)
{
var a=(level<1)?"Opacity='"+(level*100)+"',Style='0'":null;
s.filter=a?"progid:DXImageTransform.Microsoft.Alpha("+a+")":"";
return;
}
s.opacity=(level<1)?level:"";
},
shadow:function(id,radius)
{
var s=cd.getStyle(id);
if(cdd.ie)
{
return;
}
var a=radius?"2px 2px "+radius+"px rgba(0,0,0,0.5)":"";
if(cdd.firefox)
{
s.MozBoxShadow=a;
return;
}
if(cdd.safari || cdd.chrome)
{
s.WebkitBoxShadow=a;
return;
}
s.boxShadow=a;
},
fade:function(id,from,to,duration,callback)
{
if(typeof from=="undefined") from=1;
if(typeof to=="undefined") to=0;
if(typeof duration=="undefined") duration=250;
CLASMA.framework.onfadetimer(id,from,to,duration,0,callback);
},
fadeIn:function(e,callback) {CLASMA.framework.fade(e,0,1,250,callback);},
fadeOut:function(e,callback) {CLASMA.framework.fade(e,1,0,250,callback);},
crossFade:function(fromId,toId,duration,callback)
{
CLASMA.framework.fadeOut(fromId,
function(){CLASMA.framework.fadeIn(toId,callback);});
},
onfadetimer:function(id,from,to,duration,time,callback)
{
if(typeof callback=="undefined")
callback=null;
var e=cd.getElement(id);
var o=CLASMA.lang.tween(time,from,to,duration);
CLASMA.framework.opacity(e,o);
if(time==0 && from==0)
cd.setShow(e,true);
if(time>=duration)
{
if(to==0) cd.setShow(e,false);
if(callback) callback();
return;
}
setTimeout(function(){CLASMA.framework.onfadetimer(id,from,to,duration,time+50,callback);},50);
},
getTarget:function(e)
{
if(!e) e=event;
return e.target?e.target:e.srcElement;
},
getCurrentTarget:function(e)
{
if(!e) e=event;
return e.currentTarget?e.currentTarget:e.srcElement;
},
getCoords:function(e)
{
if(!e) e=event;
return {left:e.clientX,top:e.clientY};
},
getButtons:function(e)
{
if(!e) e=event;
return e.button;
},
getShift:function(e)
{
if(!e) e=event;
return e.shiftKey==1;
},
getFrom:function(e)
{
if(!e) e=event;
return cdd.ie?e.fromElement:e.relatedTarget;
},
getTo:function(e)
{
if(!e) e=event;
return cdd.ie?e.toElement:e.relatedTarget;
},
getKey:function(e)
{
if(!e) e=event;
return e.keyCode?e.keyCode:e.which;
},
getChar:function(e)
{
if(!e) e=event;
return String.fromCharCode(e.charCode || e.keyCode);
},
getWheelDelta:function(e)
{
if(!e) e=event;
return e.wheelDelta?(e.wheelDelta/120):((-e.detail)/3);
},
cancelBubble:function(e)
{
if(!e) e=event;
if(e.stopPropagation) e.stopPropagation();
if(cdd.ie) e.cancelBubble=true;
},
cancelDefault:function(e)
{
if(!e) e=event;
if(e.preventDefault) e.preventDefault();
if(cdd.ie) e.returnValue=false;
},
getScreenWidth:function() {return screen.width;},
getScreenHeight:function() {return screen.height;},
getClientWidth:function() {return document.documentElement.clientWidth;},
getClientHeight:function() {return document.documentElement.clientHeight;},
getDocumentWidth:function() {return document.body.offsetWidth;},
getDocumentHeight:function() {return document.body.offsetHeight;},
getScrollPos:function()
{
if(cdd.ie)
{
return {top:document.documentElement.scrollTop,
left:document.documentElement.scrollLeft};
}
return {top:window.pageYOffset,
left:window.pageXOffset};
},
setCursor:function(c)
{
if(typeof c=="undefined" || !c) c="default";
cd.getBody().style.cursor=c;
},
styleBrowser:function()
{
if(cdd.safari || cdd.chrome)
{
cd.cssAddRule(0,"textarea","resize:none");
cd.cssAddRule(0,":focus","outline:none");
}
if(!cdd.ie) return;
var bh=$("themeHover");
var bb=$("themeBorder");
var bf=$("themeFace");
if(!bh || !bb || !bf) return;
var h=cd.getStyle(bh).color;
var b=cd.getStyle(bb).color;
var f=cd.getStyle(bf).color;
var s=
"scrollbar-base-color:"+f+";"+
"scrollbar-face-color:"+f+";"+
"scrollbar-3dlight-color:"+h+";"+
"scrollbar-highlight-color:"+b+";"+
"scrollbar-shadow-color:"+b+";"+
"scrollbar-darkshadow-color:"+h+";"+
"scrollbar-track-color:"+h+";"+
"scrollbar-arrow-color:#32210b;";
cd.cssAddRule(0,"div",s);
cd.cssAddRule(0,"textarea",s);
},
disableBrowser:function(e)
{
e=(typeof e=="undefined" || !e)?document:cd.getElement(e);
cd.addEvent(e,"contextmenu",this.oncheckexempt);
if(!cdd.ie)
{
cd.addEvent(e,"mousedown",this.onmousedown);
cd.addEvent(e,"mouseup",this.onmouseup);
}
else cd.addEvent(e,"selectstart",this.oncheckexempt);
cd.addEvent(e,"dragstart",this.ondisable);
},
toggleFullScreen:function()
{
return this.sendKeys("{F11}");
},
sendKeys:function(keys)
{
if(!cdd.ie) return false;
var shell;
try {shell=new ActiveXObject("WScript.shell");}
catch(e) {return false;}
if(shell)
{
shell.SendKeys(keys);
return true;
}
return false;
},
onvalidate:function(e,test)
{
var k=this.getKey(e);
if(this.isEditKey(k))
return true;
var c=this.getChar(e);
var re=new RegExp(test,"i");
return re.test(c);
},
onvalidatenumber:function(e)
{
return CLASMA.framework.onvalidate(e,"[0-9]");
},
onvalidatecost:function(e)
{
return CLASMA.framework.onvalidate(e,"[0-9,.]");
},
oncheckexempt:function(e)
{
if(window.getSelection)
{
var s=window.getSelection();
if(s && s.removeAllRanges) s.removeAllRanges();
}
var t=CLASMA.framework.getTarget(e);
if(isExemptTag(t)) return true;
CLASMA.framework.cancelBubble(e);
CLASMA.framework.cancelDefault(e);
return false;
},
onmousedown:function(e)
{
if(CLASMA.framework.oncheckexempt(e))
return true;
var s=cd.getBody().style;
if(cdd.firefox)
{
s.MozUserSelect="none";
return true;
}
if(cdd.safari || cdd.chrome)
{
s.KhtmlUserSelect="none";
return true;
}
return false;
},
onmouseup:function(e)
{
var s=cd.getBody().style;
if(cdd.firefox)
{
s.MozUserSelect="";
return true;
}
if(cdd.safari || cdd.chrome)
{
s.KhtmlUserSelect="";
return true;
}
return true;
},
onenable:function()
{
return true;
},
ondisable:function()
{
return false;
},
onelementfocus:function(e)
{
var f=CLASMA.framework.getTarget(e);
if(!f) return;
document.activeElement=(f==document)?null:f;
},
onhintfocus:function(e)
{
hint=e.value;
e.value="";
},
onhintblur:function(e)
{
e.value=hint;
},
oncheckshow:function(e,id)
{
cd.setShow(id,cd.isChecked(e));
},
oncheckhide:function(e,id)
{
cd.setShow(id,!cd.isChecked(e));
},
ontextlimit:function(e,m)
{
var v=cd.getValue(e);
var c=v.length;
if(c>m+1) alert("Your input exceeds the maximum of "+m+" characters and will be truncated.");
if(c>m) cd.setValue(e,v.substring(0,m));
e=$(cd.getName(e)+"count");
if(!e) return;
cd.setDisplay(e,"");
cd.setHtml(e.firstChild,Math.max(m-c,0)+" left");
},
ontextedit:function(id,e)
{
switch(this.getKey(e))
{
case this.K_TAB:
this.selectReplace(id,String.fromCharCode(9));
setTimeout("document.getElementById('"+id.id+"').focus();",0);
return false;
}
return true;
},
onautosize:function(id)
{
var e=cd.getElement(id);
if(!e) return;
var h=e.contentWindow.document.body.scrollHeight;
cd.setHeight(e,h+10);
},
onprint:function(id)
{
var e=cd.getElement(id);
if(!e)
{
alert("Print context '"+id+"' not found.");
return;
}
id="PRINT_output";
var d=$(id);
if(d)
{
d=d.parentNode;
d.parentNode.removeChild(d);
}
var style="overflow:auto;background-color:white;margin:0px;padding:0px";
var framestyle="style=\"position:absolute;top:-100px;left:-100px;width:0px;height:0px;\"";
var htmlstyle="style=\"overflow:auto;height:auto\"";
var bodystyle="style=\""+style+";height:auto\"";
var divstyle="style=\"display:block;border:none;"+style+"\"";
d=document.createElement("div");
d.innerHTML="<iframe id=\""+id+"\" name=\""+id+"\" "+framestyle+"></iframe>";
document.body.appendChild(d);
var f=document.getElementById(id);
var doc=cd.getFrameDocument(f);
doc.write("<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\" ");
doc.write("\"http://www.w3.org/TR/html4/strict.dtd\">");
doc.write("<html "+htmlstyle+">");
doc.write("<head>");
if(cdd.ie) doc.write("<meta http-equiv=\"X-UA-Compatible\" content=\"IE=7\">")
var l=document.getElementsByTagName("link");
for(var n=0;n<l.length;n++)
{
if(l[n].rel.toLowerCase()=="stylesheet")
doc.write("<link type=\"text/css\" rel=\"stylesheet\" href=\""+l[n].href+"\"/>");
}
doc.write("<title>PointView</title>");
doc.write("</head>");
doc.write("<body onload=\"this.focus(); this.print();\" "+bodystyle+">");
var h=e.innerHTML;
while(e)
{
var c=e.className;
if(c && c!="") h="<div class=\""+c+"\" "+divstyle+">"+h+"</div>";
e=e.parentNode;
}
doc.write(h);
doc.write("</body>");
doc.write("</html>");
doc.close();
setTimeout("PRINT_output.focus()",5000);
},
onprintframe:function(id)
{
var e=window.frames[id];
if(!e)
{
alert("Print context frame '"+id+"' not found.");
return;
}
e.focus();
e.print();
}
}; }();
if(typeof document.activeElement=="undefined")
{
document.activeElement=null;
CLASMA.dom.addEvent(document,"focus",CLASMA.framework.onelementfocus,true);
}
CLASMA.namespace("CLASMA.security");
CLASMA.security=function() {
var rot13=function(s)
{
var o="";
for(var n=0;n<s.length;n++)
{
var c=s.charCodeAt(n);
if((c>64 && c<78) || (c>96 && c<110)) c=c+13;
else if((c>77 && c<91) || (c>109 && c<123)) c=c-13;
o+=String.fromCharCode(c);
}
return o;
};
return {
encrypt:function(s)
{
return rot13(s);
},
decrypt:function(s)
{
return rot13(s);
}
}; }();
CLASMA.namespace("CLASMA.ajax");
CLASMA.ajax=function() {
var cdd=CLASMA.detect;
var cd=CLASMA.dom;
var response=Array("ok","bad","act");
var heartTm=0;
var heartFn=null;
var heartId=null;
var tickover=null;
var tickenable=false;
var ticktext="Please Wait...";
var ticktime=4000;
var tickcount=0;
var ticktimer=null;
var createRequest=function()
{
var r;
try {r=new XMLHttpRequest();}
catch(e)
{
try {r=new ActiveXObject("Microsoft.XMLHTTP");}
catch(e) {throw new Error("Ajax not supported");}
}
return r;
};
var createFrame=function(callback,src)
{
if(typeof src=="undefined" || !src) src="about:blank";
for(var f=0;f<CLASMA.ajax.frames.length;f++)
if(!CLASMA.ajax.frames[f]) break;
var id="XMLHTTP_request"+f;
var s="CLASMA.ajax.onframeload("+f+")";
var d=cd.createElement("div");
cd.setHtml(d,"<iframe id=\""+id+"\" name=\""+id+"\" onload=\""+s+"\" style=\"display:none\"></iframe>");
cd.appendBody(d);
var e=cd.getElementById(null,id);
CLASMA.ajax.frames[f]=e;
CLASMA.ajax.framescb[f]=callback;
e.src=src;
return id;
};
var destroyFrame=function(f)
{
var e=CLASMA.ajax.frames[f];
var d=e.parentNode;
CLASMA.ajax.frames[f]=null;
CLASMA.ajax.framescb[f]=null;
d.parentNode.removeChild(d);
};
var setMsg=function(id,icon,msg)
{
CLASMA.ajax.setResponse(id,CLASMA.ajax.makeMsg(icon,msg));
};
var showTickover=function()
{
if(!tickenable) return;
if(++tickcount>1) return;
if(ticktime>0)
{
if(ticktimer) return;
ticktimer=setTimeout(CLASMA.ajax.onshowtickover,ticktime);
}
else CLASMA.ajax.onshowtickover();
}
var hideTickover=function()
{
if(!tickenable) return;
if(--tickcount>0) return;
tickcount=0;
if(ticktimer)
{
clearTimeout(ticktimer);
ticktimer=null;
}
if(tickover)
{
var s=cd.getStyle(tickover);
s.display="none";
}
}
return {
GET:"GET",
POST:"POST",
HEAD:"HEAD",
RS_UNINITIALIZED:0,
RS_LOADING:1,
RS_LOADED:2,
RS_INTERACTIVE:3,
RS_COMPLETED:4,
S_OFFLINE:0,
S_OK:200,
S_NOTFROUND:404,
RS_INVALID:-1,
RS_NONE:0,
RS_OK:1,
RS_BAD:2,
RS_ACT:3,
user:null,
password:null,
frames:new Array,
framescb:new Array,
isReady:function(r) {return r.readyState==this.RS_COMPLETED;},
isValid:function(r) {return r.status==this.S_OK;},
setWait:function(id) {setMsg(id);},
enableTickover:function(enable) {tickenable=enable;},
setTickover:function(n,s) {ticktime=n; ticktext=s;},
resetTickover:function() {CLASMA.ajax.setTickover(4000,"Please Wait...");},
setInvalid:function(id,r) {setMsg(id,"error","Ajax: #"+r.status+" "+r.statusText);},
setError:function(id,err) {setMsg(id,"error",err);},
request:function(url,method,args,callback,async)
{
if(typeof method=="undefined" || !method) method=this.GET;
if(typeof args=="undefined" || !args) args="";
if(typeof async=="undefined") async=true;
if(async) showTickover();
var r=createRequest();
if(!r) return null;
r.onreadystatechange=function()
{
if(CLASMA.ajax.isReady(r))
{
if(async) hideTickover();
CLASMA.ajax.resetHeartbeat();
if(callback) callback(r);
}
};
r.open(method,url,async,this.user,this.password);
if(method==this.POST)
r.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
r.send(args);
return r;
},
include:function(url,id,args,callback)
{
var cb=function(r)
{
if(CLASMA.ajax.isValid(r)) CLASMA.ajax.setResponse(id,r.responseText);
else CLASMA.ajax.setInvalid(id,r);
if(callback) callback(r);
}
try {this.request(url,this.POST,args,cb);}
catch(e) {this.setError(id,e.message);}
},
getResponse:function(r)
{
if(!this.isValid(r))
return {code:this.RS_INVALID,info:null};
var t=r.responseText;
if(t && t!="")
{
for(var n=0;n<response.length;n++)
{
if(t.indexOf(response[n])==0)
{
var l=response[n].length;
if(t.charAt(l)==":")
return {code:n+1,info:t.substr(l+1)};
return {code:n+1,info:null};
}
}
}
return {code:this.RS_NONE,info:null};
},
setResponse:function(id,s)
{
var e=cd.getElement(id);
if(e) e.innerHTML=s;
},
makeMsg:function(icon,msg)
{
if(typeof icon=="undefined" || !icon) icon="wait";
if(typeof msg=="undefined" || !msg) msg="Requesting content...";
var h=
"<table cellspacing=\"0\" cellpadding=\"0\" class=\"msg\">"+
"<tr>"+
"<td><div class=\"icon"+icon+"\"></div></td>"+
"<td>"+msg+"</td>"+
"</tr>"+
"</table>";
return h;
},
submitForm:function(url,args)
{
var form=cd.createElement("form");
if(!form) return false;
form.setAttribute("action",url);
form.setAttribute("method","post");
for(var n in args)
{
var v=args[n];
if(v!=null && v!="")
{
var e=cd.createElement("input");
e.setAttribute("name",n);
e.setAttribute("type","hidden");
e.setAttribute("value",v);
cd.appendChild(form,e);
}
}
cd.setDisplay(form,"none");
cd.appendBody(form);
form.submit();
},
submitMultiForm:function(f,callback)
{
var id=createFrame(callback);
f.setAttribute("target",id);
f.submit();
},
onframeload:function(f)
{
CLASMA.ajax.resetHeartbeat();
var callback=CLASMA.ajax.framescb[f];
if(callback)
{
var id="XMLHTTP_request"+f;
var e=cd.getElementById(null,id);
var r=new Object;
r.readyState=CLASMA.ajax.RS_COMPLETED;
r.responseText="";
r.status=CLASMA.ajax.S_OK;
r.statusText="";
var d=cd.getFrameDocument(e);
if(d && d.location && d.location.href!="about:blank")
{
r.responseText=d.body.innerHTML;
}
else
{
r.status=CLASMA.ajax.S_NOTFOUND;
r.statusText="File not found";
}
callback(r);
}
destroyFrame(f);
},
setHeartbeat:function(tm,fn)
{
if(typeof tm=="undefined") tm=0;
if(typeof fn=="undefined") fn=null;
heartTm=tm;
heartFn=fn;
CLASMA.ajax.resetHeartbeat();
},
resetHeartbeat:function()
{
if(heartId) clearTimeout(heartId);
if(heartTm>0) heartId=setTimeout(CLASMA.ajax.onheartbeat,heartTm);
},
onheartbeat:function()
{
heartId=null;
if(heartFn) heartFn();
},
onshowtickover:function()
{
if(!tickover)
{
var e=cd.createElement("div");
var s=cd.getStyle(e);
s.display="none";
s.position="absolute";
s.top="0px";
s.left="0px";
s.width="100%";
s.height="100%";
s.fontSize="50px";
s.backgroundColor="#000000";
s.color="#ffffff";
s.paddingTop="20%";
s.textAlign="center";
s.opacity="0.5";
s.zIndex="10000";
if(cdd.ie) s.filter="alpha(opacity=50)";
else s.opacity="0.5";
e.onclick=CLASMA.ajax.onaborttickover;
cd.setHtml(e,
"<div id=\"c_ticktext\">Please Wait...</div>"+
"<img src=\"res/wait64.gif\" alt=\"\" style=\"margin-top:20px\"/>");
cd.appendBody(e);
tickover=e;
}
cd.setHtml("c_ticktext",ticktext);
var s=cd.getStyle(tickover);
s.display="block";
ticktimer=null;
},
onaborttickover:function()
{
tickcount=1;
hideTickover();
}
}; }();
function argu() {this.a="";}
argu.prototype.a="";
argu.prototype.set=function(v) {if(!v) v=""; this.a=v;}
argu.prototype.get=function() {return this.a;}
argu.prototype.getu=function() {return this.a!=""?("?"+this.a):"";}
argu.prototype.add=function(n,v)
{
if(typeof v=="boolean") v=v?"y":"n";
if(typeof v=="number") v+="";
if(!v || v=="") return;
if(this.a!="") this.a+="&";
this.a+=encodeURIComponent(n)+"="+encodeURIComponent(v);
}
argu.prototype.opt=function(v,o)
{
if(!v) v="";
if(!o) o="";
if(o!="") o=":"+o;
return v+o;
}
CLASMA.namespace("CLASMA.history");
CLASMA.history=function() {
var cd=CLASMA.dom;
var cdd=CLASMA.detect;
var histId="historyFrame";
var histUrl="history.htm";
var histTitle;
var histBase;
var histHash=null;
var histTimerId=null;
var histTimer=200;
var histChange=null;
var histUseNotify;
var histUseFrame;
var histUseUrl;
var histUseTimer;
var histUseTimerAdd;
var getHash=function()
{
var hash=window.location.hash;
return hash?stripHash(hash):"";
};
var setHash=function(hash)
{
if(!cdd.ie || hash!="" || stripHash(window.location.hash)!="")
window.location.hash=hash;
};
var stripHash=function(hash)
{
if(hash && hash.indexOf("#")==0)
return hash.substring(1);
return hash;
};
var writeFrame=function(s)
{
var d=$(histId).contentWindow.document;
d.open("javascript:\"<html></html>\"");
d.write(s);
d.close();
};
var triggerChange=function(hash)
{
if(histUseFrame)
$(histId).contentWindow.document.title=histTitle;
if(histChange) histChange(hash);
};
return {
create:function(title,fnChange)
{
histTitle=title?title:document.title;
histChange=fnChange;
histBase=getHash();
histHash=null;
histUseNotify=false;
histUseFrame=cdd.ie;
histUseUrl=false;
histUseTimer=true;
histUseTimerAdd=cdd.ie;
if(histUseNotify)
{
window.onhashchange=CLASMA.history.onhashchange;
histUseFrame=false;
histUseTimer=false;
CLASMA.history.onhashchange();
}
if(histUseFrame)
{
var e=cd.createElement("iframe");
if(histUseUrl) cd.setSrc(e,histUrl);
cd.setId(e,histId);
cd.setShow(e,false);
cd.appendBody(e);
}
if(histUseTimer)
histTimerId=setTimeout(CLASMA.history.ontimer,histTimer);
},
destroy:function()
{
if(histUseNotify)
window.onhashchange=null;
if(histUseFrame)
document.body.removeChild($(histId));
if(histUseTimer && histTimerId)
{
clearTimeout(histTimerId);
histTimerId=null;
}
},
setTitle:function(t)
{
if(histUseFrame)
$(histId).contentWindow.document.title=t;
},
getBaseHash:function()
{
return histBase;
},
add:function(hash)
{
setHash(hash);
if(histUseFrame)
{
writeFrame(
"<html>"+
"<head>"+
"<script type=\"text/javascript\">"+
"parent.CLASMA.history.onframechange('"+hash+"');"+
"</script>"+
"</head>"+
"<body></body>"+
"</html>");
}
},
onhashchange:function()
{
var hash=getHash();
triggerChange(hash);
},
onframeload:function()
{
var hash=CLASMA.history.getBaseHash();
CLASMA.history.onframechange(hash);
},
onframechange:function(hash)
{
histHash=hash;
hash=stripHash(hash);
setHash(hash);
triggerChange(hash);
},
ontimer:function()
{
var hash=getHash();
if(hash!=histHash)
{
histHash=hash;
if(histUseTimerAdd) CLASMA.history.add(hash);
else triggerChange(hash);
}
histTimerId=setTimeout(CLASMA.history.ontimer,histTimer);
}
}; }();
CLASMA.namespace("CLASMA.analytics");
CLASMA.analytics=function() {
var ga_svtestsite="UA-6056827-1";
var ga_pointview="UA-6056827-2";
return {
create:function(account,user)
{
if(typeof _gat=="undefined")
return null;
if(!account)
{
account=(location.hostname=="www.svtestsite.com" ||
location.hostname=="svtestsite.com")?ga_svtestsite:ga_pointview;
}
var tracker=_gat._getTracker(account);
if(user) CLASMA.analytics.setUserVar(tracker,user);
return tracker;
},
setUserVar:function(tracker,user)
{
if(!tracker) return;
tracker._setVar(user);
},
trackPage:function(tracker,page)
{
if(!tracker) return;
tracker._trackPageview(page);
},
trackEvent:function(tracker,category,action,label,value)
{
if(!tracker) return;
tracker._trackEvent(category,action,label,value);
}
}; }();
CLASMA.namespace("CLASMA.online.site");
CLASMA.online.site=function() {
var cdd=CLASMA.detect;
var cd=CLASMA.dom;
var cf=CLASMA.framework;
var cs=CLASMA.security;
var ca=CLASMA.ajax;
var ch=CLASMA.history;
var can=CLASMA.analytics;
var AN_START="<!-- ANALYTICS=";
var AN_STOP=" -->";
var RF_START="<!-- REFRESH=";
var RF_STOP=" -->";
var RD_START="<!-- REDIRECT=";
var RD_STOP=" -->";
var inputOk1=false;
var inputOk2=false;
var refreshId=null;
var refreshes={};
var carousels={};
var trackPage=function(page)
{
can.trackPage(CLASMA.online.site.eventTracker,page);
can.trackPage(CLASMA.online.site.siteTracker,page);
};
var processRedirect=function(h)
{
var m=h.indexOf(RD_START);
var s=h.indexOf(RD_STOP);
if(m>-1 && s>m)
{
var page=h.substring(m+RD_START.length,s);
var id=window.location.hash;
var n=id.indexOf("_");
if(n>0) page+=id.substr(n);
window.location=page;
return true;
}
return false;
};
var processAnalytics=function(h,type,id)
{
if(!type) return h;
var page;
var m=h.indexOf(AN_START);
var s=h.indexOf(AN_STOP);
if(m>-1 && s>m)
{
page=h.substring(m+AN_START.length,s);
h=h.substr(s+AN_STOP.length);
}
else
{
page="/"+_siteTitle+"/"+type.toTitle();
if(id) page+="/"+id;
}
cf.setTitle(page.substr(1).replace(new RegExp("\/","gi")," - "));
trackPage(page);
return h;
};
var processRefresh=function(h)
{
var m=h.indexOf(RF_START);
var s=h.indexOf(RF_STOP);
if(m>-1 && s>m)
{
var tm=h.substring(m+RF_START.length,s);
h=h.substr(s+RF_STOP.length);
startPageRefresh(tm);
}
return h;
};
var createWidgets=function(p)
{
startRefreshes(p);
startCarousels(p);
};
var destroyWidgets=function(p)
{
stopRefreshes(p);
stopCarousels(p);
};
var startPageRefresh=function(tm)
{
stopPageRefresh();
if(tm<=0) return;
refreshId=setInterval(
"CLASMA.online.site.getPage()",
tm*1000);
};
var stopPageRefresh=function()
{
if(!refreshId) return;
clearInterval(refreshId);
refreshId=null;
};
var startRefreshes=function(p)
{
var e=cd.getElements(null,p,"vcrefresh");
for(var n=0;n<e.length;n++)
startRefresh(cd.getId(e[n]));
};
var stopRefreshes=function(p)
{
var e=cd.getElements(null,p,"vcrefresh");
for(var n=0;n<e.length;n++)
stopRefresh(cd.getId(e[n]));
};
var startRefresh=function(id)
{
var cid=cd.getAttr(id,"cid");
var tm=cd.getAttr(id,"timeout");
tm=(tm && tm!="")?parseInt(tm):0;
if(tm<=0) return;
refreshes[id]=setInterval(
"CLASMA.online.site.getContent('"+id+"','"+cid+"')",
tm*1000);
};
var stopRefresh=function(id)
{
if(!(id in refreshes)) return;
clearInterval(refreshes[id]);
delete refreshes[id];
};
var startCarousels=function(p)
{
var e=cd.getElements(null,p,"vccarousel");
for(var n=0;n<e.length;n++)
startCarousel(cd.getId(e[n]));
};
var stopCarousels=function(p)
{
var e=cd.getElements(null,p,"vccarousel");
for(var n=0;n<e.length;n++)
stopCarousel(cd.getId(e[n]));
};
var startCarousel=function(id)
{
setCarouselTimer(id,"oncarousel",1000);
};
var stopCarousel=function(id)
{
if(!(id in carousels)) return;
clearInterval(carousels[id]);
delete carousels[id];
};
var restartCarousel=function(id)
{
setCarouselTimer(id,"oncarouselrestart",5000);
};
var rotateCarousel=function(id)
{
var e=$(id+"currentpage");
if(!e) return;
var p=parseInt(cd.getAttr(e,"page"))+1;
e=$(id+"page"+p);
if(!e) p=1;
setCarouselPage(id,p);
};
var setCarouselPage=function(id,page)
{
var e=$(id+"currentitem");
if(e)
{
var p=cd.getAttr(e,"page");
if(p==page) return;
cd.setClass(e,"vccarouselitem");
cd.setId(e,id+"item"+p);
}
e=$(id+"currentpage");
if(e)
{
cd.setClass(e,"vccarouselpage");
cd.setId(e,id+"page"+cd.getAttr(e,"page"));
}
e=$(id+"item"+page);
if(e)
{
cd.setClass(e,"vccarouselcurrentitem");
cd.setId(e,id+"currentitem");
}
e=$(id+"page"+page);
if(e)
{
cd.setClass(e,"vccarouselcurrentpage");
cd.setId(e,id+"currentpage");
}
};
var setCarouselTimer=function(id,fn,d)
{
var tm=cd.getAttr(id,"timeout");
tm=(tm && tm!="")?parseInt(tm):5;
if(tm<=0) return;
carousels[id]=setInterval(
"CLASMA.online.site."+fn+"('"+id+"')",
tm*d);
};
var getArticles=function(m,c,p,nid)
{
};
var getComments=function(m,c,p,nid)
{
var h=splitHash(window.location.hash);
var callback=function(r)
{
if(ca.isValid(r)) cd.setHtml(c,r.responseText);
else siteError(m,"#"+r.status+" "+r.statusText);
}
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","forum");
args.add("forum",args.opt(h.type,h.id));
args.add("thread",nid);
args.add("page",p);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {siteError(m,e.message);}
};
var refreshMainMenu=function()
{
var callback=function(r)
{
if(ca.isValid(r)) cd.setHtml("menu",r.responseText);
else ca.setInvalid("menu",r);
}
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","menu");
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {ca.setError("menu",e.message);}
};
var splitHash=function(hash)
{
if(hash.charAt(0)=="#") hash=hash.substr(1);
if(hash=="") hash="home";
else hash=hash.toLowerCase();
if(hash.indexOf("_")!=-1)
{
var s=hash.split("_");
return {type:s[0],id:s[1]};
}
return {type:hash,id:null};
};
var siteError=function(id,msg)
{
cd.setHtml(id,
"<div class=\"vcpara\">"+
"<table cellspacing=\"0\" cellpadding=\"0\" class=\"msg\">"+
"<tr>"+
"<td><div class=\"iconerror\"></div></td>"+
"<td>Ajax: "+msg+"</td>"+
"</tr>"+
"</table>"+
"</div>");
};
var regpage=function(page,pid,sid,id,code,himself)
{
var c=$("regscreen");
if(pid!=null && pid=="")
{
siteError(c,"No person");
return;
}
if(sid!=null && sid=="")
{
siteError(c,"No group");
return;
}
var callback=function(r)
{
if(ca.isValid(r))
{
cd.setHtml(c,r.responseText);
if(page=="2")
{
updateRegTotal();
updateRegPasses();
}
return;
}
if(code!=null && r.status==400)
{
ca.setError("regcodeerror","You must enter the correct Registration Code to continue");
cd.setDisplay("regcodeerror","");
cd.setDisabled("regasperson"+pid+"button",false);
cd.setDisabled("regperson"+pid+"button",false);
cf.setFocus("regcodeid");
}
else siteError(c,"#"+r.status+" "+r.statusText);
}
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","reg");
args.add("page",page);
args.add("pid",pid);
args.add("sid",sid);
args.add("id",id);
args.add("code",code);
args.add("himself",himself?"y":"");
if(page=="3" && !getRegTickets(args))
{
siteError(c,"No tickets");
return;
}
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {siteError(c,e.message);}
};
var getRegTickets=function(args)
{
var c=cd.getElements(null,"regoptions");
var t="";
for(var n=0;n<c.length;n++)
{
var tag=cd.getTag(c[n]);
if((tag!="div" && tag!="input" && tag!="select") ||
!cd.isVisible(c[n]) ||
!cd.isElementVisible(c[n]))
continue;
var i=cd.getId(c[n]);
var p="";
var v=false;
switch(tag)
{
case "div":
if(cd.getClass(c[n])=="regselected")
continue;
v=true;
break;
case "input":
switch(cd.getAttr(c[n],"type"))
{
case "radio":
case "checkbox":
v=cd.isChecked(c[n]);
break;
case "text":
p=cd.getValue(c[n]);
v=(p!="");
break;
}
break;
case "select":
p=cd.getValue(c[n]);
v=(p!="");
break;
}
if(!v) continue;
i=i.replace(/[a-zA-Z]+/,"");
if(!i || i=="") continue;
if(t!="") t+=",";
t+=i;
args.add("param"+i,p);
}
if(t!="")
{
args.add("tickets",t);
return true;
}
return false;
};
var showRegOption=function(id,v)
{
var s=v?"":"none";
cd.setDisplay("regblock"+id,s);
cd.setDisplay("regcost"+id,s);
cd.setDisplay("regsel"+id,s);
};
var updateRegTotal=function()
{
var ct=true;
var b=false;
var c=cd.getElements("div","regoptions","regselected");
var t=0.0;
for(var n=0;n<c.length;n++)
{
if(!cd.isElementVisible(c[n].parentNode)) continue;
if(cd.getStyle(c[n]).display=="none") continue;
var rc=(cd.getAttr(c[n],"regchild")=="true");
var rn=(cd.getAttr(c[n],"regnocost")=="true");
if(rc && !getRegChildSelected(c[n]))
ct=false;
if(rn) b=true;
else
{
var s=cd.getAttr(c[n],"value");
if(s && s!="") t+=parseFloat(s);
}
}
cd.setHtml("regtotal",t.strDecimal(2));
var tv=(b || t>0);
var mt=(!ct && tv);
var by=(ct && tv);
cd.setDisplay("regbuytotal",tv?"":"none");
cd.setDisplay("regbuy",by?"":"none");
cd.setDisplay("regnobuy",by?"none":"");
cd.setDisplay("regmand",mt?"":"none");
};
var getRegChildSelected=function(e)
{
var id=cd.getId(e).replace("regsel","regblock");
var c=cd.getElements(null,id);
for(var n=0;n<c.length;n++)
{
var tag=cd.getTag(c[n]);
if((tag!="div" && tag!="input" && tag!="select") ||
!cd.isElementVisible(c[n]))
continue;
var i=cd.getId(c[n]);
if(i && i!="")
{
var v=false;
switch(tag)
{
case "input":
switch(cd.getAttr(c[n],"type"))
{
case "radio":
case "checkbox":
v=cd.isChecked(c[n]);
break;
case "text":
v=(cd.getValue(c[n])!="");
break;
}
break;
case "select":
v=(cd.getValue(c[n])!="");
break;
}
if(v) return true;
}
}
return false;
};
var updateRegPasses=function()
{
var c=cd.getElements("li","regpasses");
for(var n=0;n<c.length;n++)
cd.setDisplay(c[n],"none");
c=cd.getElements(null,"regoptions");
for(var n=0;n<c.length;n++)
{
var tag=cd.getTag(c[n]);
if((tag!="div" && tag!="input" && tag!="select") ||
!cd.isElementVisible(c[n]))
continue;
var p=cd.getAttr(c[n],"regpasses");
if(!p || p=="") continue;
var v=false;
switch(tag)
{
case "div":
v=true;
break;
case "input":
switch(cd.getAttr(c[n],"type"))
{
case "radio":
case "checkbox":
v=cd.isChecked(c[n]);
break;
case "text":
v=true;
break;
}
break;
case "select":
v=(cd.getValue(c[n])!="");
break;
}
if(!v) continue
var s=p.split(",");
for(var m=0;m<s.length;m++)
cd.setDisplay(s[m],"");
}
c=cd.getElements("ul","regpasses");
for(n=0;n<c.length;n++)
{
var e=cd.getElements("li",c[n]);
var v=true;
for(var m=0;m<e.length;m++)
{
if(cd.getDisplay(e[m])!="none")
{
v=false;
break;
}
}
if(v)
{
var i=(n<c.length-1?(n+1):0);
cd.setDisplay("regpass"+i+"_0","");
}
}
};
return {
eventTracker:null,
siteTracker:null,
getPage:function(hash)
{
if(typeof hash=="undefined" || !hash)
hash=window.location.hash;
var h=splitHash(hash);
cd.setId("current","");
var div=cd.getElements("div","menu");
for(var n=0;n<div.length;n++)
{
var a=cd.getElements("a",div[n]);
if(a.length>0 && a[0].href &&
a[0].href.parseUrl().hash.toLowerCase()==h.type)
{
cd.setId(div[n],"current");
break;
}
}
div=cd.getElements("div","menu","submenu");
for(var n=0;n<div.length;n++)
cd.setDisplay(div[n],"none");
setTimeout(function()
{
for(var n=0;n<div.length;n++)
cd.setDisplay(div[n],"");
},100);
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("hash",args.opt(h.type,h.id));
CLASMA.online.site.getPageUrl(h.type,h.id,url,args);
},
getPageUrl:function(type,id,url,args)
{
var p=$("content");
inputOk1=false;
inputOk2=false;
stopPageRefresh();
destroyWidgets(p);
var callback=function(r)
{
if(ca.isValid(r))
{
var t=r.responseText;
if(processRedirect(t))
return;
t=processAnalytics(t,type,id);
t=processRefresh(t);
t=cd.processScripts(t);
cd.setHtml(p,t);
cd.runScripts(t);
createWidgets(p);
window.scrollTo(0,0);
}
else siteError(p,"#"+r.status+" "+r.statusText);
};
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {siteError(p,e.message);}
},
getContent:function(id,cid)
{
var h=splitHash(window.location.hash);
var p=$(id);
destroyWidgets(p);
var callback=function(r)
{
if(ca.isValid(r))
{
var t=r.responseText;
var tmp=cd.createElement("div");
cd.moveElements(p,tmp);
t=cd.processScripts(t);
cd.setHtml(p,t);
cd.runScripts(t);
createWidgets(p);
}
else siteError(p,"#"+r.status+" "+r.statusText);
};
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","content");
args.add("cid",cid);
args.add("ref",h.id);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {siteError(p,e.message);}
},
getDispatchUrl:function(args,secure)
{
var u=window.location.href.parseUrl();
var p=u.protocol;
var d=u.domain;
var r=u.path;
if(typeof secure!="undefined")
p=secure?"https":"http";
if((d=="www.pointview.com" || d=="www.svtestsite.com") &&
r.indexOf("/pv/")==0)
{
if(args) args.add("site",_siteId);
r="/pv/online/inc/";
}
return p+"://"+d+r+"default.asp";
},
stopTimers:function()
{
var e=$("content");
stopRefreshes(e);
stopCarousels(e);
},
onload:function()
{
if(typeof CLASMA.online.strip=="undefined")
CLASMA.online.site.onstripload();
},
onhistory:function(hash)
{
CLASMA.online.site.getPage(hash);
},
onnewsmore:function(p)
{
var m=$("c_morenews");
var c=$("c_morenews"+p);
ca.setWait(m);
getArticles(m,c,p);
},
onforummore:function(p)
{
var m=$("c_more");
var c=$("c_more"+p);
ca.setWait(m);
getComments(m,c,p);
},
onforumfocus:function(e)
{
if(inputOk1) return;
cd.setValue("c_forumcomment","");
inputOk1=true;
},
onforumsubmit:function()
{
var d=$("c_forumdialog");
var c=$("c_forumcomment");
var b=$("c_forumsubmit");
if(cd.isDisabled(b)) return;
var v=cd.getValue(c);
if(!inputOk1 || !v || v=="")
{
cf.setFocus(c);
return;
}
cd.setDisabled(b,true);
inputOk1=false;
var h=splitHash(window.location.hash);
var callback=function(r)
{
if(ca.isValid(r)) getComments(d,"vcforum",1);
else siteError(d,"#"+r.status+" "+r.statusText);
}
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","forum");
args.add("forum",args.opt(h.type,h.id));
args.add("comment",v);
for(var n=1;n<4;n++)
{
var p=$("c_forumstatus"+n);
if(p && cd.isChecked(p))
{
args.add("status"+n,"y");
switch(n)
{
case 1:
case 3:
v=cf.getRadioSelection(
"c_forumservice"+n+"post",
"c_forumservice"+n+"post");
args.add("post"+n,v);
break;
case 2:
v=cd.isChecked("c_formservice"+n+"hash");
args.add("hash"+n,v);
break;
}
}
}
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {siteError(d,e.message);}
},
onforumservice:function(service,dialog)
{
var e=$("c_forumservice"+service);
var v=(cd.getShow(e)=="block");
cd.setDisplay("c_forumservice1","none");
cd.setDisplay("c_forumservice2","none");
cd.setDisplay("c_forumservice3","none");
if(!dialog || v) return;
var box=cd.getBoundingBox("c_forumdialog");
cd.setMarginLeft(e,box.width-275);
cd.setDisplay(e,"block");
e=$("c_forumservice"+service+"post");
if(!e) return;
var callback=function(r)
{
if(ca.isValid(r)) cd.setHtml(e,r.responseText);
else siteError(e,"#"+r.status+" "+r.statusText);
}
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","forum");
args.add("groups",service);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {siteError(e,e.message); return;}
ca.setWait(e);
},
onforumlogin:function()
{
cd.setValue("c_user",cd.getValue("c_forumemail"))
CLASMA.online.strip.invoke("login");
},
onforumsignup:function()
{
var d=$("c_forumsignupmessage");
var f1=cd.getValue("c_forumemail");
var f2=cd.getValue("c_forumfname");
var f3=cd.getValue("c_forumlname");
var f4=cd.getValue("c_forumcompany");
if(!f1 || f1=="")
{
ca.setError(d,"You have not entered your email address");
return;
}
if(!f2 || f2=="" || !f3 || f3=="")
{
ca.setError(d,"You have not entered your name");
return;
}
if(!f4 || f4=="")
{
ca.setError(d,"You have not entered your company");
return;
}
cd.setHtml(d,"");
var callback=function(r)
{
if(ca.isValid(r))
{
if(r.responseText=="bad")
{
var cb=function()
{
cd.setValue("c_email",f1);
cd.setValue("c_fname",f2);
cd.setValue("c_lname",f3);
cd.setValue("c_company",f4);
};
CLASMA.online.strip.invokeSignupButtonWithACallback(cb);
return;
}
ca.setError(d,"You already have an account");
CLASMA.online.site.onforumlogin();
}
else siteError(m,"#"+r.status+" "+r.statusText);
}
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","signup");
args.add("email",f1);
args.add("check","y");
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {siteError(d,e.message);}
},
onthreadfocus:function()
{
if(inputOk2) return;
cd.setValue("c_threadcomment","");
inputOk2=true;
},
onthreadsubmit:function(nid)
{
var d=$("c_threaddialog");
var c=$("c_threadcomment");
var b=$("c_threadsubmit");
var t=$("c_thread"+nid);
if(cd.isDisabled(b)) return;
var v=cd.getValue(c);
if(!inputOk2 || !v || v=="")
{
cf.setFocus(c);
return;
}
cd.setDisabled(c,true);
cd.setDisabled(b,true);
inputOk2=false;
var h=splitHash(window.location.hash);
var callback=function(r)
{
if(ca.isValid(r))
{
cd.setDisabled(c,false);
cd.setDisabled(b,false);
cd.setValue(c,
"Click here to reply to this comment.\r\n"+
"Comments are visible to the public, you may remove your comment later if necessary.");
cd.setHtml("c_threadcommentcount","<div>Please limit your comment to 500 characters.</div>");
getComments(d,t,0,nid);
}
else siteError(d,"#"+r.status+" "+r.statusText);
}
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","forum");
args.add("forum",args.opt(h.type,h.id));
args.add("thread",nid);
args.add("comment",v);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {siteError(d,e.message);}
},
onthreadcomment:function(e,nid)
{
var c=$("c_threaddialog");
var p=$("c_thread"+nid);
var t=cd.getFirst(p);
if(c)
{
cd.deleteElement(c);
if(t==c) return;
}
c=cd.createElement("div");
cd.setId(c,"c_threaddialog");
cd.setClass(c,"vcforumthread");
cd.setHtml(c,
"<table cellpadding=\"0\" cellspacing=\"4\" class=\"vcflowtablefull\">"+
"<tr>"+
"<td class=\"vcflowcel\">"+
"<textarea id=\"c_threadcomment\" name=\"c_threadcomment\""+
"onfocus=\"CLASMA.online.site.onthreadfocus()\" "+
"onkeyup=\"CLASMA.framework.ontextlimit(this,500)\" "+
"class=\"vcforuminput\">"+
"Click here to reply to this comment.\r\n"+
"Comments are visible to the public, you may remove your comment later if necessary."+
"</textarea>"+
"</td>"+
"</tr>"+
"<tr>"+
"<td class=\"vcflowcel\">"+
"<div id=\"c_threadcommentcount\" class=\"vcforumcount\">"+
"<div>Please limit your comment to 500 characters.</div>"+
"</div>"+
"<div class=\"vcforumoptions\">"+
"<button id=\"c_threadsubmit\" "+
"onclick=\"CLASMA.online.site.onthreadsubmit('"+nid+"')\">Submit</button>"+
"</div>"+
"</td>"+
"</tr>"+
"</table>");
if(t) cd.insertChild(t,c);
else cd.appendChild(p,c);
inputOk2=false;
},
onforumremove:function(c,nid,thread)
{
var ok=confirm("Are you sure you want to remove this comment?");
if(!ok) return;
var p=cd.getParentElement(c,"div",thread?"vcforumthread":"vcforumitem");
var h=splitHash(window.location.hash);
var callback=function(r)
{
if(ca.isValid(r)) cd.deleteElement(p);
else siteError(p,"#"+r.status+" "+r.statusText);
}
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","forum");
args.add("forum",args.opt(h.type,h.id));
args.add("remove",nid);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {siteError(p,e.message);}
},
oncarouselpage:function(id,page)
{
setCarouselPage(id,page);
stopCarousel(id);
restartCarousel(id);
},
oncarousel:function(id)
{
rotateCarousel(id);
},
oncarouselrestart:function(id)
{
stopCarousel(id);
startCarousel(id);
},
onreggroup:function(sid)
{
cd.setAttr("regperson","regsid",sid);
if(!cd.isChecked("reggroup0"))
cd.setDisplay("regotherlist","none");
var c=cd.getElements("div","regleft","reginfo");
for(var n=0;n<c.length;n++)
cd.setDisplay(c[n],"none");
var v=(sid && sid!="" && sid!="0");
if(v) cd.setDisplay("reginfo"+sid,"");
var p=(cd.getAttr("reginfo"+sid,"regcode")=="yes");
cd.setValue("regcodeid","");
cd.setDisplay("regcodeerror","none");
cd.setDisplay("regcode",p?"":"none");
if(cd.getHtml("regperson")!="")
{
if(sid=="0")
{
cd.setDisplay("regother","none");
cd.setDisplay("regperson","none");
}
else
{
cd.setDisplay("regother",v?"none":"");
cd.setDisplay("regperson",v?"":"none");
}
}
else
{
if(v) CLASMA.online.site.onregother();
else
{
cd.setDisplay("regfound","none");
cd.setDisplay("regother","none");
}
}
if(p) cf.setFocus("regcodeid");
},
onregothergroup:function()
{
var c=cd.getElements("select","regothergrouplist");
for(var n=0;n<c.length;n++)
{
cd.setValue(c[n],"0");
cd.setDisplay(c[n],"none");
}
cd.setValue("regothergroups","0");
cd.setDisplay("regotherlist","");
cd.setDisplay("regothergrouplist","none");
CLASMA.online.site.onreggroup("0");
},
onregclasslist:function(e)
{
var c=cd.getElements("select","regothergrouplist");
for(var n=0;n<c.length;n++)
{
cd.setValue(c[n],"0");
cd.setDisplay(c[n],"none");
}
var n=cd.getValue(e);
if(n!="0")
{
var id="regothergroup"+n;
cd.setDisplay(id,"");
cd.setDisplay("regothergrouplist","");
}
else cd.setDisplay("regothergrouplist","none");
CLASMA.online.site.onreggroup("0");
},
onreggrouplist:function(e)
{
var sid=cd.getValue(e);
CLASMA.online.site.onreggroup(sid);
},
onregcodekey:function()
{
cd.setDisplay("regcodeerror","none");
return true;
},
onregother:function()
{
cd.setValue("regsearch","");
cd.setDisplay("regfound","none");
cd.setDisplay("regother","");
cf.setFocus("regsearch");
},
onregself:function(e,pid)
{
cd.setDisplay("regother","none");
CLASMA.online.site.onregperson(e,pid);
},
onregperson:function(e,pid,himself)
{
var sid=cd.getAttr("regperson","regsid");
var code=cd.getValue("regcodeid");
var c=$("regtype"+sid);
if(c)
{
code=cd.getAttr(c,"regtype");
if(code=="select")
code=cd.isChecked("regtypestaff"+sid)?"staff":"guest";
}
cd.setDisabled("regasperson"+pid+"button",true);
cd.setDisabled("regperson"+pid+"button",true);
regpage("2",pid,sid,null,code,himself);
},
onregsearchkey:function(e)
{
if(cf.getKey(e)==cf.K_RETURN)
{
CLASMA.online.site.onregsearch();
return false;
}
cd.setDisplay("regfound","none");
return true;
},
onregsearch:function()
{
var c=$("regdetails");
ca.setWait(c);
cd.setDisplay("regfound","");
var sid=cd.getAttr("regperson","regsid");
var s=cd.getValue("regsearch");
if(!s || s=="")
{
ca.setError(c,"You must enter an Email address");
return;
}
if(!s.validEmail())
{
ca.setError(c,"Email address does not look valid");
return;
}
var callback=function(r)
{
if(ca.isValid(r)) cd.setHtml(c,r.responseText);
else ca.setError(c,"#"+r.status+" "+r.statusText);
}
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","reg");
args.add("sid",sid);
args.add("search","yes");
args.add("find",s);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {ca.setError(c,e.message);}
},
onregsignup:function(pid)
{
var c=$("regresult");
ca.setWait(c);
cd.setDisplay("regsignup","");
var email=cd.getValue("regsearch");
var fname=cd.getValue("regfirst");
var lname=cd.getValue("reglast");
var title=cd.getValue("regtitle");
var company=cd.getValue("regcompany");
var country=cd.getValue("regcountry");
var zipcode=cd.getValue("regzipcode");
var phone=cd.getValue("regphone");
if(email=="" || fname=="" || lname=="" ||
title=="" || company=="" || country=="" || zipcode=="" || phone=="")
{
ca.setError(c,"A required field is missing");
return;
}
if(!email.validEmail())
{
ca.setError(c,"Email address does not look valid");
return;
}
if(!cd.isChecked("regagree"))
{
ca.setError(c,"You must agree to our terms of service before you can continue");
return;
}
cd.setDisabled("regsignupbutton",true);
var callback=function(r)
{
if(ca.isValid(r))
{
var resp=ca.getResponse(r);
if(resp.code==ca.RS_OK)
{
CLASMA.online.site.onregsearch();
return;
}
ca.setError(c,resp.info);
}
else ca.setError(c,"#"+r.status+" "+r.statusText);
cd.setDisabled("regsignupbutton",false);
}
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","signup");
args.add("pid",pid);
args.add("email",cs.encrypt(email));
args.add("fname",fname);
args.add("lname",lname);
args.add("title",title);
args.add("company",company);
args.add("country",country);
args.add("zipcode",zipcode);
args.add("phone",phone);
try {ca.request(url,ca.POST,args.get(),callback);return;}
catch(e) {ca.setError(c,e.message);}
cd.setDisabled("regsignupbutton",false);
},
onregstatus:function(id)
{
regpage("status",null,null,id,null);
},
onregradio:function(e,id)
{
var c=cd.getElements("input","regoptions");
for(var n=0;n<c.length;n++)
{
if(c[n].name==e.name)
{
var i=cd.getId(c[n]).replace("regradio","");
showRegOption(i,(i==id));
}
}
updateRegTotal();
updateRegPasses();
},
onregcheckbox:function(e,id)
{
showRegOption(id,cd.isChecked(e));
updateRegTotal();
updateRegPasses();
},
onreglist:function(e,list)
{
var id=cd.getId(e).replace(/[a-zA-Z]+/,"");
if(!id || id=="") return;
var i="";
var c="";
var n="";
var cs="";
var p="";
var o=cf.getSelectOption(e);
if(o)
{
i=cd.getId(o).replace(/[a-zA-Z]+/,"");
c=cd.getAttr(o,"regcost");
n=cd.getAttr(o,"regnocost");
cs=cd.getAttr(o,"regchild");
p=cd.getAttr(o,"regpasses");
}
var v=(c && c!="");
if(list)
{
cd.setHtml("regcostvalue"+id,c);
cd.setDisplay("regcostvalue"+id,v?"":"none");
cd.setAttr("regsel"+id,"regnocost",n)
cd.setAttr("regsel"+id,"regchild",cs)
cd.setAttr("reglist"+id,"regpasses",p)
if(i && i!="")
{
cd.setId("regcost"+id,"regcost"+i);
cd.setId("regcostvalue"+id,"regcostvalue"+i);
cd.setId("regsel"+id,"regsel"+i);
cd.setId("regselvalue"+id,"regselvalue"+i);
cd.setId("reglist"+id,"reglist"+i);
id=i;
}
}
cd.setAttr("regsel"+id,"value",c);
cd.setHtml("regselvalue"+id,c);
showRegOption(id,v);
if(list)
{
c=cd.getElements("option",e);
for(n=0;n<c.length;n++)
{
i=cd.getId(c[n]).replace(/[a-zA-Z]+/,"");
cd.setDisplay("regblock"+i,(c[n]==o)?"":"none");
}
}
updateRegTotal();
updateRegPasses();
},
onregbuy:function(pid,sid,code,himself)
{
cd.setDisabled("regbuybutton",true);
regpage("3",pid,sid,null,code,himself);
},
onregdelete:function(id)
{
var ok=confirm("Are you sure you want to delete this registration?");
if(!ok) return;
var h=splitHash(window.location.hash);
regpage("delete",null,h.id,id,null);
},
onregagain:function()
{
var h=splitHash(window.location.hash);
regpage("1",null,h.id,null,null);
},
onregpaymentnocost:function(id,pid,himself)
{
regpage("nocost",pid,null,id,null,himself);
},
onregpayment:function(pid,himself)
{
regpage("4",pid,null,null,null,himself);
},
onregprint:function(url)
{
var s=
"width=680,"+
"height=500,"+
"toolbar=no,"+
"menubar=yes,"+
"scrollbars=yes,"+
"status=no,"+
"resizable=yes,"+
"loc"+"ation=no,"+
"directories=no";
window.open(url,"ONLINE_print",s).focus();
},
onregmethod:function()
{
var pid=null;
var mid=null;
var save="n";
var o=cf.getSelectOption("regmethod");
if(o)
{
pid=cd.getAttr(o,"regprofile");
mid=cd.getAttr(o,"regmethod");
save=cd.getAttr(o,"regsave");
}
cd.setDisplay("regprofsave",(save=="y")?"":"none");
c=cd.getElements("div","regleft","regmethod");
for(var n=0;n<c.length;n++)
cd.setDisplay(c[n],"none");
var m=cd.getValue("regmethod");
var v=(m!="0");
if(v) cd.setDisplay("regmethod"+m,"");
cd.setDisplay("regsubmit","none");
cd.setDisplay("regnorm",v?"none":"");
cd.setDisplay("regcont",v?"":"none");
},
onregsubmit:function(whopid,himself)
{
var c=$("regresult");
ca.setResponse(c,ca.makeMsg("wait","Confirming purchase..."));
cd.setDisplay("regsubmit","");
var m=cd.getValue("regmethod");
if(m==0)
{
ca.setError(c,"You must select a payment method");
return;
}
var pid=null;
var mid=null;
var o=cf.getSelectOption("regmethod");
if(o)
{
pid=cd.getAttr(o,"regprofile");
mid=cd.getAttr(o,"regmethod");
}
if((!pid || pid=="") && (!mid || mid==""))
{
ca.setError(c,"No payment profile or method found");
return;
}
var save=(cd.isElementVisible("regsave") &&
cd.isChecked("regsave"));
var accept="";
if(cd.isChecked("regaccept")) accept="y";
if(cd.isChecked("regdecline")) accept="n";
var callback=function(r)
{
if(ca.isValid(r))
{
var resp=ca.getResponse(r);
if(resp.code==ca.RS_OK)
{
cd.setHtml(c,"Purchase has been approved");
alert("Purchase has been approved.");
CLASMA.online.site.onregpayment();
return;
}
alert("Purchase has been declined.\n"+
"Reason: "+resp.info+"\n\n"+
"Check your payment details and try again.");
ca.setError(c,resp.info);
}
else ca.setError(c,"#"+r.status+" "+r.statusText);
cd.setDisabled("regsubmitbutton",false);
}
var args=new argu();
var url=CLASMA.online.site.getDispatchUrl(args);
args.add("action","reg");
args.add("payment",m);
args.add("profile",pid);
args.add("method",mid);
args.add("accept",accept);
args.add("save",save);
args.add("pid",whopid);
args.add("himself",himself?"y":"");
var a=cd.getElements(null,"regmethod"+m);
for(var n=0;n<a.length;n++)
{
var i=cd.getId(a[n]);
if(!i || i=="") continue;
var r=(cd.getAttr(a[n],"regreq")=="y");
var b=false;
var v=null;
switch(cd.getTag(a[n]))
{
case "input":
switch(cd.getAttr(a[n],"type"))
{
case "checkbox":
case "radio":
v=cd.isChecked(a[n]);
b=(r && !v);
break;
case "text":
v=cd.getValue(a[n]);
b=(r && v=="");
break;
}
break;
case "select":
v=cd.getValue(a[n]);
b=(r && v==0);
break;
}
if(b)
{
ca.setError(c,"A required field is missing");
cf.setFocus(a[n]);
return;
}
args.add(i,v);
}
if(!cd.isChecked("regagree"))
{
ca.setError(c,"You must agree to our terms of service before you can continue");
return;
}
cd.setDisabled("regsubmitbutton",true);
try {ca.request(url,ca.POST,args.get(),callback);return;}
catch(e) {ca.setError(c,e.message);}
cd.setDisabled("regsubmitbutton",false);
},
ontipshow:function(e,id)
{
var c=$("vctip"+id);
var s=cf.getScrollPos()
var p=cf.getCoords(e);
cd.setTop(c,p.top+21+s.top);
cd.setLeft(c,p.left+s.left);
cd.setDisplay(c,"block");
},
ontiphide:function(id)
{
cd.setDisplay("vctip"+id,"");
},
onstrip:function(cmd,id)
{
if(typeof CLASMA.online.strip=="undefined")
{
alert("Cannot invoke strip command '"+cmd+"'.\n"+
"You must first enable the strip for this site.");
return;
}
CLASMA.online.strip.invoke(cmd,id);
},
onstripload:function()
{
cf.styleBrowser();
if(typeof _stripFullscreen!="undefined" && _stripFullscreen)
{
var s=cd.getStyle(cd.getRoot());
s.overflow="hidden";
cf.toggleFullScreen();
}
trackPage("/"+_siteTitle);
var sf=(typeof _siteFrame!="undefined" && _siteFrame);
if(sf) return;
ch.create(_siteTitle,CLASMA.online.site.onhistory);
},
onstriplogin:function(user)
{
CLASMA.online.site.onstripprofile(user);
var sf=(typeof _siteFrame!="undefined" && _siteFrame);
if(sf) return;
refreshMainMenu();
},
onstripassume:function(user)
{
var sf=(typeof _siteFrame!="undefined" && _siteFrame);
if(sf) return;
CLASMA.online.site.getPage();
},
onstriplogout:function()
{
CLASMA.online.site.onstripprofile(null);
var sf=(typeof _siteFrame!="undefined" && _siteFrame);
if(sf) return;
refreshMainMenu();
},
onstripprofile:function(user)
{
can.setUserVar(CLASMA.online.site.eventTracker,user);
can.setUserVar(CLASMA.online.site.siteTracker,user);
},
onstripupdate:function()
{
var sf=(typeof _siteFrame!="undefined" && _siteFrame);
if(sf) return;
CLASMA.online.site.getPage();
}
}; }();
if(_eventAnalytics!="") CLASMA.online.site.eventTracker=CLASMA.analytics.create(_eventAnalytics);
if(_siteAnalytics!="") CLASMA.online.site.siteTracker=CLASMA.analytics.create(_siteAnalytics);
CLASMA.dom.addLoadEvent(CLASMA.online.site.onload);
CLASMA.namespace("CLASMA.online.twitter");
CLASMA.online.twitter=function() {
var cdd=CLASMA.detect;
var cd=CLASMA.dom;
var format=function(id,user,image,text,time)
{
return "<div class=\"vcforumitemnp\">"+
"<table cellspacing=\"0\" cellpadding=\"0\" class=\"vcflowtable\">"+
"<tr>"+
"<td class=\"vcflowcel\">"+
"<div class=\"vcforumportrait\">"+
"<a href=\"http://twitter.com/#!/"+user+"\">"+
"<img src=\""+image+"\" alt=\"\"/>"+
"</a>"+
"</div>"+
"</td>"+
"<td class=\"vcflowcol\">"+
"<a href=\"http://twitter.com/#!/"+user+"\" class=\"vcforumname\">"+
user+
"</a>"+
" "+formatText(text)+
"<div class=\"vcforumlinks\">"+
"<a href=\"http://twitter.com/#!/"+user+"/statuses/"+id+"\">"+
formatRelativeTime(time)+
"</a>"+
"</div>"+
"</td>"+
"</tr>"+
"</table>"+
"</div>";
};
var formatText=function(t)
{
var s=t.split(" ");
var h="";
for(var n=0;n<s.length;n++)
{
var w=s[n];
if(h!="") h=h+" ";
if(w.indexOf("#")==0)
{
h=h+"<a href=\"http://search.twitter.com/search?q=%23"+w.substring(1)+"\">"+w+"</a>";
continue;
}
if(w.indexOf("@")==0)
{
h=h+"<a href=\"http://twitter.com/#!/"+w.substring(1)+"\">"+w+"</a>";
continue;
}
if(w.indexOf("http:")==0 ||
w.indexOf("https:")==0 ||
w.indexOf("www.")==0)
{
h=h+"<a href=\""+w+"\">"+w+"</a>";
continue;
}
h=h+w;
}
return h;
};
var formatTime=function(t)
{
var s=t.split(" ");
var n=Date.parse(s[1]+" "+s[2]+", "+s[3]+" "+s[4]);
var d=new Date();
d.setTime(n);
return d.strDate()+" at "+d.strTime();
};
var formatRelativeTime=function(t)
{
var now=new Date();
var s=t.split(" ");
var n=Date.parse(s[1]+" "+s[2]+", "+s[3]+" "+s[4]);
var delta=(((now.getTime()-n)/1000)|0)+(now.getTimezoneOffset()*60);
if(delta<0) return "Sometime in the future";
if(delta<=1) return "Just now";
if(delta<60) return delta+" seconds ago";
if(delta<120) return "About a minute ago";
if(delta<3600) return ((delta/60)|0)+" minutes ago";
if(delta<7200) return "About an hour ago";
if(delta<86400) return "About "+((delta/3600)|0)+" hours ago";
if(delta<172800) return "Yesterday";
return ((delta/86400)|0)+" days ago";
};
return {
requestSearch:function(id,q,rpp)
{
CLASMA.online.twitter.request(id,
"http://search.twitter.com/search.json?"+
"q="+encodeURIComponent(q)+"&"+
"rpp="+encodeURIComponent(rpp)+"&"+
"callback=CLASMA.online.twitter.reply"+id,
CLASMA.online.twitter.formatSearch);
},
formatSearch:function(j)
{
var h="";
for(var n=0;n<j.results.length;n++)
{
var r=j.results[n];
h=h+format(
r.id,
r.from_user,
r.profile_image_url,
r.text,
r.created_at);
}
return h;
},
update:function(fn,secs)
{
fn();
return setInterval(fn,secs*1000);
},
request:function(id,url,fn)
{
var e=cd.createElement("script");
this["reply"+id]=function(j){CLASMA.online.twitter.reply(id,j,e,fn);}
e.type="text/javascript";
e.src=url;
try {cd.appendChild(cd.getHead(),e);}
catch(err) {ca.setError(id,err.description);}
},
reply:function(id,j,e,fn)
{
cd.setHtml(id,fn(j));
cd.deleteElement(e);
}
}; }();
CLASMA.namespace("CLASMA.online.strip");
CLASMA.online.strip=function() {
var cl=CLASMA.lang;
var cdd=CLASMA.detect;
var cc=CLASMA.cookie;
var cd=CLASMA.dom;
var cf=CLASMA.framework;
var cs=CLASMA.security;
var ca=CLASMA.ajax;
var can=CLASMA.analytics;
var secTest=false;
var secButton=null;
var secAction=null;
var secDialog=null;
var secWidth=0;
var secTab=null;
var secParams=null;
var secRight=false;
var secModal=false;
var secBuffer=false;
var listSubmit="minor";
var listTasks="major";
var dlgModal=false;
var storeErase="";
var storeSet="";
var storeValues="";
var updateId=1;
var login=function(user,pass,keep)
{
showWait("Logging in...");
var frag=window.location.hash;
if(frag=="#") frag="";
var url=window.location.href;
var n=url.indexOf("#");
if(n>=0) url=url.substring(0,n);
var callback=
_stripLoginUrl+
"?caller="+encodeURIComponent(url)+
(frag==""?"":("&fragment="+encodeURIComponent(frag)));
ca.submitForm(
_stripUrl+"/strip/login.aspx",{
user:user,
pass:pass,
remember:keep?"y":"",
callback:callback});
};
var resume=function(token,keep)
{
showWait("Logging in...");
var frag=window.location.hash;
if(frag=="#") frag="";
var url=window.location.href;
var n=url.indexOf("#");
if(n>=0) url=url.substring(0,n);
var callback=
_stripLoginUrl+
"?caller="+encodeURIComponent(url)+
(frag==""?"":("&fragment="+encodeURIComponent(frag)));
ca.submitForm(
_stripUrl+"/strip/login.aspx",{
token:token,
remember:keep?"y":"",
callback:callback});
};
var logout=function()
{
showWait("Logging out...");
var frag=window.location.hash;
if(frag=="#") frag="";
var url=window.location.href;
var n=url.indexOf("#");
if(n>=0) url=url.substring(0,n);
if(typeof _siteId!="undefined")
{
url+=(url.indexOf("?")==-1?"?":"&")+
"logout=y"+
"&caller="+encodeURIComponent(url)+
(frag==""?"":("&fragment="+encodeURIComponent(frag)));
frag="";
}
var callback=
_stripLogoutUrl+
"?caller="+encodeURIComponent(url)+
(frag==""?"":("&fragment="+encodeURIComponent(frag)));
ca.submitForm(
_stripUrl+"/strip/logout.aspx",{
callback:callback});
};
var assume=function(pid,action)
{
var co=getStripConnection();
var err="Identity assume problem";
showWait("Assuming identity...");
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
userLogin(resp.info);
co.onstripassume(_stripUser);
break;
case ca.RS_BAD:
showError(err,
"<h2>Failed to assume identity</h2>",
"<p>"+resp.info+"</p>");
break;
default:
showError(err);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action",action);
args.add("pid",pid);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var signup=function(email,fname,lname,jobtitle,company,country,zipcode,phone,mobile,web,pass)
{
var co=getStripConnection();
var err="Sign-up problem";
showWait("Signing-up...");
var callback=function(r)
{
if(ca.isValid(r))
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
showInfo("Sign-up successful",
"<h1>Your sign-up request has been accepted</h1>"+
"<p>Check for an <b>Account Activation</b> Email that we<br/>have sent to your sign-up address.</p>"+
"<div class=\"note\">Note: Allow 1-2 minutes for your Email to arrive.</div>");
var email=cd.getValue("c_email");
cd.setValue("c_user",email);
cd.setValue("c_pass","");
enableButtons();
break;
default:
showError(err,r.responseText);
break;
}
}
else showError(err);
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","signup");
args.add("email",cs.encrypt(email));
args.add("fname",fname);
args.add("lname",lname);
args.add("title",jobtitle);
args.add("company",company);
args.add("country",country);
args.add("zipcode",zipcode);
args.add("phone",phone);
args.add("mobile",mobile);
args.add("web",web);
args.add("pass",cs.encrypt(pass));
args.add("location",window.location);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var request=function(email)
{
var co=getStripConnection();
var err="Password request problem";
showWait("Requesting password...");
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
showInfo("Password request accepted",
"<h1>Your password has been sent</h1>"+
"<p>Check your Email and login using the enclosed<br/>Email address and password.</p>"+
"<div class=\"note\">Note: Allow 1-2 minutes for your Email to arrive.</div>");
break;
case ca.RS_BAD:
showError(err,
"<h2>Email address not registered</h2>"+
"<p>Your Email address has not been registered.<br/>"+
"Please check and try again.</p>");
break;
default:
showError(err);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","request");
args.add("email",email);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var membership=function(oid)
{
var co=getStripConnection();
var err="Membership problem";
showWait("Requesting membership...");
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
showInfo("Membership successful",
"<h1>Membership request accepted</h1>"+
"<div>Your membership request has been accepted.</div>");
break;
default:
showError(err);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","membership");
args.add("oid",oid);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var security=function(pass)
{
var co=getStripConnection();
var err="Security check problem";
showWait("Security check...");
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
secTest=true;
showMenu();
showContent(
secButton,
secAction,
secDialog,
secWidth,
secTab,
secParams,
secRight,
secModal,
secBuffer);
break;
case ca.RS_BAD:
showError(err,
"<h2>Incorrect password</h2>"+
"<p>The password you have entered is incorrect.<br/>"+
"Please check and try again.</p>");
break;
default:
showError(err);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","check");
args.add("pass",cs.encrypt(pass));
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var fetchlist=function(c,action,group)
{
var co=getStripConnection();
var err="Request problem";
var callback=function(r)
{
if(ca.isValid(r)) cd.setHtml(c,r.responseText);
else showError(err);
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action",action);
args.add("group",group);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>"); return;}
var l=cd.getElements("div",c,"tabclient");
if(l.length<1) return;
var p=l[0];
cd.setHeight(p,cl.floorit(cd.getBoundingBox(p).height,-21));
ca.setWait(p);
};
var details=function(i,action,type,id,curr)
{
var co=getStripConnection();
var err="Request problem";
var c=cd.getParentElement(i,null,"stripdialog");
if(!c) return;
c=cd.getElementById(c,id);
if(!c) return;
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
cd.getStyle(c).height="";
cd.setHtml(c,resp.info);
break;
default:
showError(err);
break;
}
if(curr)
{
cd.setId(curr,"");
if(i) cd.setId(i,curr);
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action",action);
args.add("details",type);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>"); return;}
cd.setHeight(c,cl.floorit(cd.getBoundingBox(c).height,-21));
ca.setWait(c);
};
var taskupdate=function(id,title,desc,assignpid,duedate,priority)
{
var co=getStripConnection();
var err="Task problem";
showWait((id?"Updating":"Creating")+" task...");
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
showStrip();
co.onstripupdate();
break;
case ca.RS_BAD:
showError(err,
"<h2>Failed to update</h2>"+
"<p>The task could not be updated.<br/>"+
"Please try again.</p>");
break;
default:
showError(err);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","tasks");
if(id) args.add("update",id);
else args.add("create",_stripPid);
args.add("title",title);
args.add("description",desc);
args.add("assignpid",assignpid);
args.add("duedate",duedate);
args.add("priority",priority);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var taskpresstatus=function(id,status,dist)
{
var co=getStripConnection();
var err="Update problem";
showWait("Updating task...");
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
resetTaskList();
co.onstripupdate();
switch(status)
{
case "4":
showInfo("Update successful",
"<h1>Confirmation request accepted</h1>"+
"<div>Your confirmation request has been accepted.</div>");
break;
case "5":
showInfo("Update successful",
"<h1>Make changes request accepted</h1>"+
"<div>Your request to make changes request has been accepted.</div>");
break;
case "6":
showInfo("Update successful",
"<h1>Finalize request accepted</h1>"+
"<div>Your finalize request has been accepted.</div>");
break;
case "10":
showInfo("Update successful",
"<h1>Decline request accepted</h1>"+
"<div>Your decline request has been accepted.</div>");
break;
default:
}
break;
default:
showError(err);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","tasks");
args.add("presstatus",args.opt(id,status));
if(typeof dist!="undefined")
args.add("distribute",dist?"y":"n");
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var taskstatus=function(id,status,dist)
{
var co=getStripConnection();
var err="Update problem";
showWait("Updating task...");
var callback=function(r)
{
showSpinner(false);
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
showStrip();
co.onstripupdate();
break;
default:
showError(err);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","tasks");
args.add("status",args.opt(id,status));
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>"); return;}
showSpinner(true);
};
var submitfile=function(fid)
{
var co=getStripConnection();
var err="Update problem";
showWait("Updating...");
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
resetTaskList();
co.onstripupdate();
showMenu();
break;
default:
showError(err,r.responseText);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","files");
args.add("submit",fid);
args.add("title",cd.getValue("_title"));
args.add("description",cd.getValue("_description"));
args.add("before",cd.isChecked("_before"));
args.add("during",cd.isChecked("_during"));
args.add("after",cd.isChecked("_after"));
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var deletefile=function(fid)
{
var co=getStripConnection();
var err="File problem";
showWait("Deleting...");
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
resetTaskList();
co.onstripupdate();
showInfo("Delete successful",
"<h1>File delete request accepted</h1>"+
"<div>Your file has been deleted from the server.</div>");
break;
default:
showError(err,r.responseText);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","files");
args.add("delete",fid);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var submission=function(sid,id,title,abst,topics,notes)
{
var co=getStripConnection();
var err=(id?"Update":"Submission")+" problem";
showWait(id?"Updating...":"Submitting...");
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
resetSubmitList();
resetTaskList();
co.onstripupdate();
if(id)
{
showMenu();
break;
}
showInfo("Submission successful",
"<h1>Your submission is now under review</h1>"+
"<p>You have been sent an Email with further instructions<br/>"+
"to your sign-up address: "+cd.getValue("c_user")+".</p>"+
"<div class=\"note\">Note: Allow 1-2 minutes for your Email to arrive.</div>");
break;
case ca.RS_BAD:
showError(err,
"<h2>Failed to "+(id?"update":"submit")+"</h2>"+
"<p>"+(id?"Your changes could not be updated.":"Your submission could not be processed.")+"<br/>"+
"Please try again.</p>");
break;
default:
showError(err);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","submit");
if(id) args.add("update",id);
else args.add("create",sid);
args.add("title",title);
args.add("abstract",abst);
args.add("topics",topics);
args.add("notes",notes);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var sendmail=function(id,subject,text,managers,speakers,copyme)
{
var co=getStripConnection();
var err="Email problem";
showWait("Sending...");
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
showInfo("Email successful",
"<h1>Email has been sent</h1>"+
"<p>Your Email has been successfully sent.</p>");
break;
case ca.RS_BAD:
showError(err,
"<h2>Failed to send Email</h2>"+
"<p>Your Email could not be sent.</p>");
break;
default:
showError(err);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","email");
args.add("send",id);
args.add("subject",subject);
args.add("text",text);
args.add("managers",managers?"y":"n");
args.add("speakers",speakers?"y":"n");
args.add("copyme",copyme?"y":"n");
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var sendupload=function(id,ppt)
{
var co=getStripConnection();
var err="Upload problem";
var callback=function(r)
{
cd.setDisplay("c_uploadwait","none");
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
cd.setDisplay("c_uploadok","");
if(ppt)
{
convertppt(id);
break;
}
resetTaskList();
co.onstripupdate();
showUploadResult(false,
"<h1>Upload successful</h1>"+
"<div>Your file has now been successfully uploaded.</div>");
break;
case ca.RS_BAD:
cd.setDisplay("c_uploadbad","");
showUploadResult(true,
"<h6>Failed to upload file</h6>"+
"<p>"+resp.info+"<br/>Make sure your file exists and try again.</p>");
break;
default:
showError(err);
break;
}
}
var f=document.forms["c_uploadform"];
ca.submitMultiForm(f,callback);
var e=getStripItem("c_menustrip","tasks");
showUploading(e,408,true,true);
};
var convertppt=function(id)
{
var co=getStripConnection();
var err="Conversion problem";
var callback=function(r)
{
cd.setDisplay("c_convwait","none");
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
cd.setDisplay("c_convok","");
resetTaskList();
co.onstripupdate();
showUploadResult(false,
"<h1>Upload successful</h1>"+
"<div>Your file has now been successfully uploaded.</div>");
break;
case ca.RS_BAD:
cd.setDisplay("c_convbad","");
showUploadResult(true,
"<h6>Failed to convert file</h6>"+
"<p>An error occured during conversion.</p>");
break;
default:
showError(err);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","convert");
args.add("ppt",id);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>"); return;}
cd.setDisplay("c_convwait","");
};
var profile=function(email,salute,fname,lname,cert,tel,mobile,company,title,dept,country,zipcode,curl,
assname,assemail,asstel,bio,pass)
{
var co=getStripConnection();
var err="Update problem";
showWait("Updating...");
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
_stripUser=resp.info;
cd.setValue("c_user",email);
cd.setValue("c_femail",email);
if(pass!="") cd.setValue("c_pass",pass);
if(cd.isChecked("c_keep"))
{
storeStart();
storeValue("user",email);
storeUpdate();
}
co.onstripprofile(_stripUser);
co.onstripupdate();
showUser();
showMenu();
break;
case ca.RS_BAD:
showError(err,
"<h2>Failed to update</h2>"+
"<p>Your profile could not be updated.<br/>"+
"Please try again.</p>");
break;
default:
showError(err);
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","profile");
args.add("update","0");
args.add("email",cs.encrypt(email));
args.add("salute",salute);
args.add("fname",fname);
args.add("lname",lname);
args.add("cert",cert);
args.add("tel",tel);
args.add("mobile",mobile);
args.add("company",company);
args.add("title",title);
args.add("dept",dept);
args.add("country",country);
args.add("zipcode",zipcode);
args.add("url",curl);
args.add("assname",assname);
args.add("assemail",assemail);
args.add("asstel",asstel);
args.add("bio",bio);
args.add("pass",cs.encrypt(pass))
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>");}
};
var heartbeat=function()
{
var co=getStripConnection();
var callback=function(r)
{
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_OK:
break;
case ca.RS_BAD:
cf.reloadPage();
break;
default:
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action","heartbeat");
args.add("pid",_stripPid);
try {ca.request(url,ca.POST,args.get(),callback);}
catch(e) {}
};
var userLogin=function(info)
{
var s=info.split("=");
_stripLogin=true;
_stripPid=s[0];
_stripUser=s[1];
showUser();
showMenu();
}
var userLogout=function()
{
_stripLogin=false;
_stripPid=null;
_stripUser=null;
showUser();
showMenu();
}
var showUser=function()
{
var e=getStripItem("c_menustrip","user");
if(!e) return;
cd.setHtml(e,_stripUser?(
"<table cellpadding=\"0\" cellspacing=\"0\">"+
"<tr>"+
"<td style=\"white-space:nowrap\">"+_stripUser+"</td>"+
"<td><div class=\"userbutton\"></div></td>"+
"</tr>"+
"</table>"):"");
cd.setClass(e,_stripUser?"stripbl":"stript");
e.onclick=_stripUser?
function(){CLASMA.online.strip.onstrip(e);}:
function(){CLASMA.online.strip.onhidestrip();};
};
var showUploading=function(button,width,right,show)
{
removeDialogs();
if(!show) return;
cd.setId(button,"stripcur");
cd.setDisplay("c_uploadwait","");
cd.setDisplay("c_uploadok","none");
cd.setDisplay("c_uploadbad","none");
cd.setDisplay("c_convwait","none");
cd.setDisplay("c_convok","none");
cd.setDisplay("c_convbad","none");
cd.setDisplay("c_uploadresult","none");
cd.setDisplay("c_uploadprob","none");
cd.setHtml("c_uploadcancel","Cancel");
showDialog("c_uploading",width,right,true);
};
var showUploadResult=function(bad,info)
{
cd.setHtml("c_uploadresult",info);
cd.setDisplay("c_uploadprob",bad?"":"none");
cd.setDisplay("c_uploadresult","");
cd.setHtml("c_uploadcancel","Close");
};
var showWaiting=function(button,width,right,show)
{
removeDialogs();
if(!show) return;
cd.setId(button,"stripcur");
showDialog("c_waiting",width,right,true);
};
var showSpinner=function(show)
{
cd.setDisplay("c_pvicon",show?"none":"");
cd.setDisplay("c_waiticon",show?"inline":"none");
};
var showWait=function(t)
{
showStrip(t);
};
var showMenu=function()
{
showStrip();
};
var showInfo=function(t,s)
{
cd.setDisplay("c_infowarning","inline");
cd.setDisplay("c_infoerror","none");
showStrip(t,s);
var e=getStripItem("c_infostrip","ok");
if(e) cd.setId(e,"stripcur");
cd.setHtml("c_infocontent",s);
showDialog("c_info",400,false,false);
};
var showError=function(t,s)
{
if(typeof s=="undefined")
s="<h2>Invalid server response</h2>";
cd.setDisplay("c_infowarning","none");
cd.setDisplay("c_infoerror","inline");
showStrip(t,s);
var e=getStripItem("c_infostrip","ok");
if(e) cd.setId(e,"stripcur");
cd.setHtml("c_errorcontent",s);
showDialog("c_error",408,false,false);
};
var showStrip=function(t,s)
{
removeDialogs();
var w=false;
var i=false;
var m=false;
if(s) i=true;
else
{
if(t) w=true;
else m=true;
}
if(!w) removeBack();
cd.setDisplay("c_waitstrip",w?"block":"none");
cd.setDisplay("c_infostrip",i?"block":"none");
cd.setDisplay("c_menustrip",m?"block":"none");
var e=null;
if(w) e=getStripItem("c_waitstrip","text");
if(i) e=getStripItem("c_infostrip","text");
if(e) cd.setHtml(e,t);
};
var showAbout=function(e)
{
var args=new argu();
args.add("font",cookieValue("font"));
args.add("fontsize",cookieValue("fontsize"));
args.add("fontspace",cookieValue("fontspace"));
args.add("theme",cookieValue("theme"));
args.add("hue",cookieValue("hue"));
args.add("saturation",cookieValue("saturation"));
args.add("lightness",cookieValue("lightness"));
args.add("background",cookieValue("background"));
showContent(e,"about","c_about",400,null,args.get(),false,true,false);
};
var showSecure=function(button,action,dialog,width,tab,params,right,modal,buffer)
{
if(typeof button=="string")
button=getStripItem("c_menustrip",button);
if(secTest)
{
showContent(button,action,dialog,width,tab,params,right,modal,buffer);
return;
}
removeDialogs();
if(button) cd.setId(button,"stripcur");
cd.setValue("c_secpass","");
enableButtons();
secButton=button;
secAction=action;
secDialog=dialog;
secWidth=width;
secTab=tab;
secParams=params;
secRight=right;
secModal=modal;
secBuffer=buffer;
showDialog("c_security",240,true,false);
};
var showContent=function(button,action,dialog,width,tab,params,right,modal,buffer,cb)
{
var co=getStripConnection();
var err="Content request problem";
var c=dialog+"content";
if(typeof button=="string")
button=getStripItem("c_menustrip",button);
if(buffer && cd.getHtml(c)!="")
{
if(button) cd.setId(button,"stripcur");
if(tab) setTab(action,tab);
showDialog(dialog,width,right,modal);
return;
}
var callback=function(r)
{
if(button) showWaiting(null,0,false,false);
if(!ca.isValid(r))
{
showError(err);
return;
}
var resp=ca.getResponse(r);
switch(resp.code)
{
case ca.RS_BAD:
showError(err,
"<h2>Request failed</h2>"+
"<p>"+resp.info+"</p>");
break;
default:
cd.setHtml(c,r.responseText);
showDialog(dialog,width,right,modal);
if(button) cd.setId(button,"stripcur");
if(tab) setTab(action,tab);
if(typeof cb=="function") cb();
break;
}
}
var args=new argu();
var url=co.getDispatchUrl(args);
args.add("action",action);
switch(action)
{
case "submit":
args.add("group",listSubmit);
break;
case "tasks":
args.add("group",listTasks);
break;
}
var p=args.get();
if(params && params!="")
{
if(p && p!="") p+="&";
p+=params;
}
try {ca.request(url,ca.POST,p,callback);}
catch(e) {showError(err,"<h2>"+e.message+"<h2>"); return;}
if(button) showWaiting(button,width,right,true);
};
var showDialog=function(id,width,right,modal)
{
showBack();
dlgModal=modal;
var d=$(id);
cd.setWidth(d,width);
cd.setDisplay(d,"block");
alignDialog(d,right);
enableButtons();
setInitialFocus(d);
};
var alignDialog=function(d,right)
{
d=cd.getElement(d);
if(!d) return;
var sh=parseInt($("c_strip").offsetHeight)
cd.setTop(d,sh);
if(right)
{
var cl=cf.getClientWidth()-parseInt(d.offsetWidth);
if(cl<0) cl=0;
cd.setLeft(d,cl);
}
else cd.setLeft(d,0);
};
var removeDialogs=function()
{
cd.setDisplay("c_signup","none");
cd.setDisplay("c_login","none");
cd.setDisplay("c_forgot","none");
cd.setDisplay("c_security","none");
cd.setDisplay("c_about","none");
cd.setDisplay("c_delegate","none");
cd.setDisplay("c_submit","none");
cd.setDisplay("c_tasks","none");
cd.setDisplay("c_profile","none");
cd.setDisplay("c_dialog","none");
cd.setDisplay("c_waiting","none");
cd.setDisplay("c_uploading","none");
cd.setDisplay("c_info","none");
cd.setDisplay("c_error","none");
cd.setId("stripcur","");
};
var showBack=function()
{
cd.setDisplay("c_stripback","block");
cf.shadow("c_strip",2);
};
var removeBack=function()
{
cd.setDisplay("c_stripback","none");
cf.shadow("c_strip",0);
};
var setInitialFocus=function(id)
{
var f=null;
var t=cd.getElements(null,id);
for(var n=0;!f && n<t.length;n++)
{
var e=t[n];
switch(cd.getTag(e))
{
case "input":
case "textarea":
case "select":
if(e.getAttribute("type")!="hidden" &&
!e.getAttribute("readonly") &&
!e.onfocus) f=e;
break;
}
}
if(!f) return;
try {cf.setFocus(f);}
catch(e) {}
};
var displayHint=function(e,text,field,dialog,tab)
{
if(text)
{
if(dialog) setTab(dialog,tab);
cd.setHtml(e,text);
cd.setDisplay(e,"block");
if(field) cf.setFocus(field);
}
else cd.setDisplay(e,"none");
};
var enableButtons=function()
{
displayHint("c_signuphint");
displayHint("c_loginhint");
displayHint("c_forgothint");
displayHint("c_securityhint");
displayHint("c_submithint");
displayHint("c_taskhint");
displayHint("c_mailhint");
displayHint("c_uploadhint");
displayHint("c_profilehint");
if($("d_signup"))
{
if(!cd.getValue("c_password").validPassword())
{
displayHint(
"c_signuphint",
"Your password must be a minimum of six characters containing at least one number.");
}
}
var c=cd.getElementById("tabssubmit","tabcurrent");
if(c && cd.getAttr(c,"form")=="notes")
{
cd.setDisplay("c_smnextbtn","none");
cd.setDisplay("c_smbtn","");
}
var c=cd.getElementById("tabsabout","tabcurrent");
if(c && cd.getAttr(c,"form")=="options")
{
cd.setDisplay("c_optsavebtn","");
cd.setHtml("c_optclosebtn","Cancel");
}
};
var getStripItem=function(d,id)
{
var e=cd.getElements("td",d);
for(var n=0;n<e.length;n++)
{
if(cd.getAttr(e[n],"stripitem")==id)
return e[n];
}
return null;
};
var displayStripItem=function(d,id,visible)
{
var e=getStripItem(d,id);
if(e) cd.setDisplay(e,visible?"":"none");
};
var setTab=function(dialog,tab)
{
var id="tabs"+dialog;
var c=cd.getElementById(id,"tabcurrent");
if(c)
{
cd.setId(c,"");
cd.setDisplay("tab"+cd.getAttr(c,"form"),"none");
}
var t=cd.getElements("td",id);
for(var n=0;n<t.length;n++)
{
if(cd.getAttr(t[n],"form")==tab)
{
c="tab"+tab;
cd.setId(t[n],"tabcurrent");
cd.setDisplay(c,"block");
setInitialFocus(c);
break;
}
}
enableButtons();
};
var resetSubmitList=function()
{
cd.setHtml("c_submitcontent","");
};
var resetTaskList=function()
{
cd.setHtml("c_taskscontent","");
};
var toggleListIcon=function(e,v,i1,i2)
{
var n=cd.getElements("div",e,v?i1:i2);
if(n.length>0)
{
cd.setClass(n[0],v?i2:i1);
return true;
}
return false;
};
var cookieValue=function(name)
{
return (typeof window["cookie_"+name]=="undefined")?
"":window["cookie_"+name];
};
var storeStart=function()
{
storeErase="";
storeSet="";
storeValues="";
};
var storeOption=function(s)
{
var v=cd.getValue("_"+s);
if(v=="default") v=null;
storeValue(s,v);
};
var storeValue=function(s,v)
{
var d=(cookieMethod=="direct");
if(!v || v=="")
{
if(d) cc.erase(s);
else
{
if(storeErase!="") storeErase+=",";
storeErase+=s;
}
return;
}
if(d) cc.set(s,v);
else
{
if(storeSet!="") storeSet+=",";
storeSet+=s;
storeValues+="&value"+s+"="+encodeURIComponent(v);
}
};
var storeUpdate=function()
{
if(storeErase!="") pointviewCookies("erase",storeErase,"");
if(storeSet!="") pointviewCookies("set",storeSet,storeValues);
};
var storeReload=function()
{
if(cookieMethod=="direct") cf.reloadPage();
else setTimeout(cf.reloadPage,3000);
};
var pointviewCookies=function(action,cookies,values)
{
if(cdd.ie || cdd.firefox || cdd.chrome)
{
var e=cd.createElement("script");
cd.setAttr(e,"type","text/javascript");
cd.setSrc(e,cookieBase+"/pv/cookies.asp?action="+action+"&method=server&cookies="+cookies+values);
cd.appendBody(e);
return;
}
var url=cookieBase+"/pv/cookies.asp?action="+action+"&method=client&cookies="+cookies+values;
var id="cookieUpdate"+updateId;
var args="top=10,left=10,width=60,height=60,"+
"menubar=no,"+
"toolbar=no,"+
"loc"+"ation=no,"+
"scrollbars=no,"+
"resizable=no,"+
"status=no";
window.open(url,id,args);
updateId++;
};
var getStripConnection=function()
{
if(typeof CLASMA.pointview!="undefined")
return CLASMA.pointview;
if(typeof _siteId!="undefined")
return CLASMA.online.site;
return CLASMA.online.strip;
};
return {
invoke:function(cmd,id)
{
switch(cmd)
{
case "about":
case "signup":
case "submit":
case "tasks":
case "profile":
case "login":
case "logout":
break;
default:
alert("Unknown Strip command '"+cmd+"'.");
return;
}
if(cd.getDisplay("c_menustrip")=="none")
{
alert("Cannot invoke strip command '"+cmd+"' while Strip is busy.");
return;
}
var e=getStripItem("c_menustrip",cmd);
if(cd.getDisplay(e)=="none")
{
if(cmd=="logout") return;
if(cmd!="submit" && cmd!="tasks" && cmd!="profile")
{
alert("Cannot invoke strip command '"+cmd+"' when context is wrong.");
return;
}
cmd="login";
e=getStripItem("c_menustrip",cmd);
}
if(cmd=="submit" && typeof id!="undefined")
{
removeDialogs();
cd.setId(e,"stripcur");
CLASMA.online.strip.onsubmission(id);
return;
}
CLASMA.online.strip.onstrip(e);
},
invokeSignupButtonWithACallback:function(cb)
{
var e=getStripItem("c_menustrip","signup");
showContent(e,"signup","c_submit",350,null,"",true,true,false,cb);
},
onload:function()
{
cf.disableBrowser("c_strip");
cf.opacity("c_stripback");
cd.addEvent(window,"resize",CLASMA.online.strip.onresize);
cd.addEvent(window,"scroll",CLASMA.online.strip.onresize);
CLASMA.online.strip.onresize();
var user=cs.decrypt(cookieValue("user"));
var keep=(user!="");
cd.setValue("c_user",user);
cd.setChecked("c_keep",true);
if(!_stripLogin)
{
var token=cookieValue("token");
if(token!="")
{
resume(token,keep);
return;
}
}
enableButtons();
var co=getStripConnection();
co.onstripload();
if(_stripLogin)
{
co.onstriplogin(_stripUser);
ca.setHeartbeat(
1*(15*1000),
CLASMA.online.strip.onheartbeat);
return;
}
co.onstriplogout();
switch(_stripStatus)
{
case "100":
break;
case "101":
showError("Login problem",
"<h2>Incorrect login details</h2>"+
"<p>Your Email address or password is incorrect.<br/>"+
"Please check and try again.</p>"+
"<p>To receive your password, <a onclick=\"CLASMA.online.strip.onreceive()\">click here</a>.</p>");
break;
case "102":
showError("Login problem",
"<h2>Account de-activated</h2>"+
"<p>An administrator has de-activated your account.</p>");
break;
case "103":
showError("Login problem",
"<h2>Account not activated</h2>"+
"<p>You have not yet activated your account.<br/>"+
"Follow the instructions in your <b>Account Activation</b> Email.</p>");
break;
case "104":
case "105":
case "106":
case "107":
case "108":
showError("Login problem",
"<h2>ERROR "+_stripStatus+"</h2>");
break;
}
_stripStatus="100";
},
onresize:function()
{
var cw=cf.getClientWidth();
var ch=cf.getClientHeight();
var sh=parseInt($("c_strip").offsetHeight);
var e=$("c_stripback");
cd.setTop(e,sh);
cd.setWidth(e,cw);
cd.setHeight(e,cl.floorit(ch,-sh));
alignDialog("c_signup",true);
alignDialog("c_login",true);
alignDialog("c_forgot",true);
alignDialog("c_security",true);
alignDialog("c_submit",true);
alignDialog("c_tasks",true);
alignDialog("c_profile",true);
alignDialog("c_dialog",true);
CLASMA.online.strip.onresizeframe();
},
onresizeframe:function()
{
var e=$("stripframe");
if(!e) return;
var ch=cf.getClientHeight();
var s=cd.getStyle(e);
s.height=(ch-23)+"px";
},
onstrip:function(e)
{
var id=cd.getAttr(e,"stripitem");
var c=$("stripcur");
removeDialogs();
if(e==c)
{
removeBack();
switch(id)
{
case "ok":
showStrip();
break;
}
return;
}
switch(id)
{
case "about":
showAbout(e);
return;
case "user":
showContent(e,"delegate","c_delegate",240,null,"",false,false,false);
break;
case "signup":
showContent(e,"signup","c_submit",350,null,"",true,true,false);
break;
case "login":
showDialog("c_login",190,true,false);
break;
case "submit":
showContent(e,"submit","c_submit",480,null,"",true,false,false);
return;
case "tasks":
showContent(e,"tasks","c_tasks",480,null,"",true,false,false);
return;
case "profile":
showSecure(e,"profile","c_profile",408,null,"",true,true,false);
return;
case "logout":
logout();
break;
case "close":
window.location=cd.getAttr(e,"url");
break;
default:
showError("Option problem",
"<h2>Not yet implemented</h2>"+
"<p>This option has not yet been implemented.<br/>"+
"Please be patient and check back soon.</p>");
return;
}
cd.setId(e,"stripcur");
},
onhidestrip:function()
{
if(dlgModal) return;
var m=(cd.getDisplay("c_info")=="block" ||
cd.getDisplay("c_error")=="block");
removeDialogs();
removeBack();
if(m) showMenu();
},
onlogin:function()
{
var user=cd.getValue("c_user");
var pass=cd.getValue("c_pass");
var keep=cd.isChecked("c_keep");
if(user=="")
{
displayHint(
"c_loginhint",
"Enter Email address to continue.",
"c_user");
return;
}
if(pass=="")
{
displayHint(
"c_loginhint",
"Enter password to continue.",
"c_pass");
return;
}
if(!user.validEmail())
{
displayHint(
"c_loginhint",
"Email does not look valid.",
"c_user");
return;
}
displayHint("c_loginhint");
login(user,pass,keep);
},
onreceive:function()
{
var email=cd.getValue("c_user");
request(email);
},
onsignup:function()
{
var email=cd.getValue("c_email");
var fname=cd.getValue("c_fname");
var lname=cd.getValue("c_lname");
var jobtitle=cd.getValue("c_jobtitle");
var company=cd.getValue("c_company");
var country=cd.getValue("c_country");
var zipcode=cd.getValue("c_zipcode");
var phone=cd.getValue("c_phone");
var mobile=cd.getValue("c_mobile");
var web=cd.getValue("c_web");
var pass=cd.getValue("c_password");
var conf=cd.getValue("c_confirm");
if(email=="" || fname=="" || lname=="" || jobtitle=="" || company=="" ||
country=="" || zipcode=="" || phone=="" || pass=="" || conf=="")
{
displayHint(
"c_signuphint",
"A required field is missing.",
"c_email");
return;
}
if(!email.validEmail())
{
displayHint(
"c_signuphint",
"Email does not look valid.",
"c_email");
return;
}
if(!pass.validPassword())
{
displayHint(
"c_signuphint",
"Your password must be a minimum of six characters containing at least one number.",
"c_password");
return;
}
if(pass!=conf)
{
displayHint(
"c_signuphint",
"Confirmation does not match password.",
"c_confirm");
return;
}
if(!cd.isChecked("c_terms"))
{
displayHint(
"c_signuphint",
"You must agree to our terms of service before you can continue.",
"c_terms");
return;
}
displayHint("c_signuphint");
signup(email,fname,lname,jobtitle,company,country,zipcode,phone,mobile,web,pass);
},
onresend:function()
{
var email=cd.getValue("c_femail");
if(email=="")
{
displayHint(
"c_forgothint",
"Enter Email address to continue.",
"c_femail");
return;
}
if(!email.validEmail())
{
displayHint(
"c_forgothint",
"Email does not look valid.",
"c_femail");
return;
}
cd.setValue("c_user",email);
enableButtons();
displayHint("c_forgothint");
request(email);
},
onforgot:function(ditch)
{
cd.setDisplay("c_login","none");
cd.setDisplay("c_security","none");
var email=cd.getValue("c_user");
cd.setValue("c_femail",email);
enableButtons();
showDialog("c_forgot",240,true,false);
},
onrequest:function()
{
var email=cd.getValue("c_email");
request(email);
},
onkeep:function()
{
if(!cd.isChecked("c_keep"))
{
storeStart();
storeValue("user",null);
storeValue("token",null);
storeUpdate();
}
},
ontermschange:function()
{
enableButtons();
},
onshowterms:function()
{
window.open(cookieBase+"/pv/policy.asp");
cd.setChecked("c_terms",true);
enableButtons();
},
onsecurity:function()
{
var pass=cd.getValue("c_secpass");
if(pass=="")
{
displayHint(
"c_securityhint",
"Enter password to continue.",
"c_secpass");
return;
}
displayHint("c_securityhint");
cd.setValue("c_secpass","");
enableButtons();
security(pass);
},
onmembership:function(oid)
{
membership(oid);
},
ondelegate:function(pid)
{
assume(pid,"delegate");
},
onassume:function(pid)
{
var ok=confirm("Are you sure you want to assume the identity of this person?");
if(!ok) return;
assume(pid,"assume");
},
onlistsection:function(e)
{
var n=e.nextSibling;
var v=cd.isVisible(n);
cd.setShow(n,!v);
if(!toggleListIcon(e,v,"icond","iconr"))
toggleListIcon(e,v,"iconuu","icondd");
},
onsubdetails:function(e,type)
{
if(cd.getId(e)!="subcurr")
details(e,"submit",type,"c_subdetails","subcurr");
},
onsubmission:function(sid)
{
showSecure("submit","submit","c_dialog",480,null,"new="+sid,true,true,false);
},
onsubmit:function(sid,id)
{
var title=cd.getValue("c_smtitle");
var abst=cd.getValue("c_smabstract");
var notes=cd.getValue("c_smnotes");
if(abst=="")
{
displayHint(
"c_submithint",
"You must enter an abstract.",
"c_smabstract",
"submit",
"abstract");
return;
}
var topics="";
var e=cd.getElements("input","tabtopics");
for(var n=0;n<e.length;n++)
{
var c=e[n];
var s=cd.getId(c);
if(s.substr(0,7)=="c_topic" && cd.isChecked(c))
{
if(topics!="") topics+=",";
topics+=s.substr(7);
}
}
displayHint("c_submithint");
submission(sid,id,title,abst,topics,notes);
},
onsubmitnext:function()
{
var n;
var c=cd.getElementById("tabssubmit","tabcurrent");
switch(cd.getAttr(c,"form"))
{
case "introduction": n="details"; break;
case "details": n="abstract"; break;
case "abstract": n="topics"; break;
case "topics": n="notes"; break;
default: return;
}
setTab("submit",n);
},
ontaskdetails:function(e,type)
{
if(cd.getId(e)!="taskcurr")
details(e,"tasks",type,"c_taskdetails","taskcurr");
},
ontaskmanage:function(type,id)
{
removeDialogs();
removeBack();
var hash=type+"_"+id;
if(typeof CLASMA.pointview=="undefined")
{
window.location=cookieBase+"/pv/pointview.asp#"+hash;
return;
}
resetSubmitList();
resetTaskList();
window.location.hash=hash;
},
ontaskadd:function()
{
showSecure("tasks","tasks","c_dialog",408,null,"add="+_stripPid,true,true,false);
},
ontaskedit:function(id)
{
showSecure("tasks","tasks","c_dialog",408,null,"edit="+id,true,true,false);
},
ontaskupdate:function(id)
{
var title=cd.getValue("c_title");
var desc=cd.getValue("c_description");
var assignpid=cd.getValue("c_assignpid");
var duedate=cd.getValue("c_duedate");
var priority=cd.getValue("c_priority");
if(title=="")
{
displayHint(
"c_taskhint",
"A required field is missing.",
"c_title");
return;
}
displayHint("c_taskhint");
taskupdate(id,title,desc,assignpid,duedate,priority);
},
ontaskview:function(id)
{
removeDialogs();
removeBack();
window.location.hash="task_"+id;
},
ontaskpresedit:function(id)
{
showSecure("tasks","submit","c_dialog",480,null,"edit="+id,true,true,false);
},
ontaskmore:function(e)
{
var c=cd.getParentElement(e,null,"striplistdetails");
if(!c) return;
c=cd.getElementById(c,"c_taskmore");
if(!c) return;
var v=(cd.getDisplay(c)=="none");
cd.setValue(e,v?"Less":"More");
cd.setDisplay(c,v?"block":"none");
},
ontaskconfirm:function(id)
{
showSecure("tasks","tasks","c_dialog",480,null,"confirm="+id,true,true,false);
},
ontaskconfirmed:function(id)
{
for(var n=1;n<5;n++)
{
var f="c_con"+n;
if(!cd.isChecked(f))
{
displayHint(
"c_submithint",
"A required field is missing.",
f);
return;
}
}
var dist=cd.isChecked("c_distribute");
displayHint("c_submithint");
taskpresstatus(id,"4",dist);
},
ontaskwithdraw:function(id)
{
showSecure("tasks","tasks","c_dialog",480,null,"withdraw="+id,true,true,false);
},
ontaskdecline:function(id)
{
showSecure("tasks","tasks","c_dialog",480,null,"decline="+id,true,true,false);
},
ontaskdeclined:function(id)
{
taskpresstatus(id,"10");
},
ontasknoppt:function(id)
{
showSecure("tasks","tasks","c_dialog",480,null,"noppt="+id,true,true,false);
},
ontaskfinalize:function(id)
{
showSecure("tasks","tasks","c_dialog",480,null,"finalize="+id,true,true,false);
},
ontaskfinalized:function(id)
{
taskpresstatus(id,"6");
},
ontaskchange:function(id)
{
showSecure("tasks","tasks","c_dialog",480,null,"change="+id,true,true,false);
},
ontaskchanged:function(id)
{
taskpresstatus(id,"5");
},
ontaskstart:function(id)
{
taskstatus(id,"1");
},
ontaskcomplete:function(id)
{
taskstatus(id,"2");
},
ontaskclose:function(id)
{
taskstatus(id,"3");
},
ontasklater:function(e)
{
var c=cd.getParentElement(e,null,"striplistdetails");
if(!c) return;
cd.setHtml(c,"<div class=\"sdetails4anp\">Select an item from the list to see its details.</div>");
},
ongroupby:function(e)
{
var c=cd.getParentElement(e,"div");
if(!c) return;
switch(c.id)
{
case "c_submitcontent":
listSubmit=cd.getAttr(e,"form");
fetchlist(c,"submit",listSubmit);
break;
case "c_taskscontent":
listTasks=cd.getAttr(e,"form");
fetchlist(c,"tasks",listTasks);
break;
}
},
onfiles:function(id)
{
var args="source=presentation:"+id;
showSecure("tasks","files","c_dialog",480,null,args,true,false,false);
},
onfiledetails:function(e,type)
{
details(e,"files",type,"c_filedetails","taskcurr");
},
onfileview:function(url)
{
window.open(url,"_blank")
},
onfileedit:function(fid)
{
var args="edit="+fid;
showSecure("tasks","files","c_dialog",408,null,args,true,true,false);
},
onfilesubmit:function(fid)
{
submitfile(fid);
},
onfiledelete:function(fid)
{
var ok=confirm("Are you sure you want to delete this file?");
if(!ok) return;
deletefile(fid);
},
onfilechange:function(e)
{
var sour=cd.getValue("_sourfile1");
cd.setValue("_title",sour.parseFile().file);
},
onfileupload:function(id,type)
{
var args=type+"="+id;
showSecure("tasks","upload","c_dialog",408,null,args,true,true,false);
},
onfilesend:function(id,ppt,types)
{
var sour=cd.getValue("_sourfile1");
var dest=cd.getValue("_destfile1");
if(sour=="")
{
displayHint(
"c_uploadhint",
"You must select a file to upload.",
"_sourfile1");
return;
}
var s=sour.parseFile();
var e=s.ext.toLowerCase();
if(types.indexOf("."+e+",")==-1)
{
displayHint(
"c_uploadhint",
"File type '"+e+"' is not valid for upload.",
"_sourfile1");
return;
}
if(!ppt && cd.getValue("_title")=="")
{
displayHint(
"c_uploadhint",
"You must supply a title for your file.",
"_title");
return;
}
if(cd.getValue("_destexist1")=="yes")
{
var ok=confirm("A version of this file has previously been uploaded.\nDo you want to overwrite it?");
if(!ok) return;
}
var d=dest.parseFile();
cd.setValue("_destfile1",d.path+d.file+"."+e);
sendupload(id,ppt);
},
onemail:function(id)
{
showSecure("tasks","email","c_dialog",408,null,"new="+id,true,true,false);
},
onsendemail:function(id)
{
var subject=cd.getValue("c_emsubject");
var text=cd.getValue("c_emtext");
var managers=cd.isChecked("c_emmanagers");
var speakers=cd.isChecked("c_emspeakers");
var copyme=cd.isChecked("c_emcopyme");
if(subject=="")
{
displayHint(
"c_mailhint",
"You must supply a subject for your Email.",
"c_emsubject");
return;
}
if(text=="")
{
displayHint(
"c_mailhint",
"You must supply a message for your Email.",
"c_emtext");
return;
}
if(!managers && !speakers)
{
displayHint(
"c_mailhint",
"You specify who you want to send your Email to.",
"c_emmanagers");
return;
}
displayHint("c_mailhint");
sendmail(id,subject,text,managers,speakers,copyme);
},
onprofileedit:function(tab)
{
removeDialogs();
showSecure("profile","profile","c_profile",408,tab,"",true,true,true);
},
onprofile:function()
{
var email=cd.getValue("c_acemail");
var salute=cd.getValue("c_acsalute");
var fname=cd.getValue("c_acfname");
var lname=cd.getValue("c_aclname");
var cert=cd.getValue("c_accert");
var tel=cd.getValue("c_actel");
var mobile=cd.getValue("c_acmobile");
var company=cd.getValue("c_accompany");
var title=cd.getValue("c_actitle");
var dept=cd.getValue("c_acdept");
var country=cd.getValue("c_accountry");
var zipcode=cd.getValue("c_aczipcode");
var url=cd.getValue("c_acurl");
var assname=cd.getValue("c_acassname");
var assemail=cd.getValue("c_acassemail");
var asstel=cd.getValue("c_acasstel");
var bio=cd.getValue("c_acbio");
var pass=cd.getValue("c_acpass");
var conf=cd.getValue("c_acconf");
if(email=="" || fname=="" || lname=="")
{
displayHint(
"c_profilehint",
"A required field is missing.",
"c_acemail",
"profile",
"personal");
return;
}
if(!email.validEmail())
{
displayHint(
"c_profilehint",
"Email does not look valid.",
"c_acemail",
"profile",
"personal");
return;
}
if(assemail!="" && !assemail.validEmail())
{
displayHint(
"c_profilehint",
"Email does not look valid.",
"c_acassemail",
"profile",
"assistant");
return;
}
if(pass!="" || conf!="")
{
if(!pass.validPassword())
{
displayHint(
"c_profilehint",
"Your password must be a minimum of six characters containing at least one number.",
"c_acpass",
"profile",
"password");
return;
}
if(pass!=conf)
{
displayHint(
"c_profilehint",
"Your password confirmation does not match.",
"c_acconf",
"profile",
"password");
return;
}
}
displayHint("c_profilehint");
profile(email,salute,fname,lname,cert,tel,mobile,
company,title,dept,country,zipcode,url,
assname,assemail,asstel,
bio,
pass);
},
onprofilecancel:function()
{
showMenu();
setTimeout(function(){cd.setHtml("c_profilecontent","");},100);
},
onopttheme:function()
{
var v=(cd.getValue("_theme")=="custom");
cd.setDisplay("c_custtheme",v?"":"none");
},
onoptsave:function()
{
storeStart();
storeOption("font");
storeOption("fontsize");
storeOption("fontspace");
storeOption("theme");
storeOption("hue");
storeOption("saturation");
storeOption("lightness");
storeOption("background");
storeOption("background");
storeUpdate();
CLASMA.online.strip.oncancel();
storeReload();
},
ontab:function(dialog,tab)
{
setTab(dialog,tab);
enableButtons();
},
oneditfield:function(e)
{
enableButtons();
return true;
},
onnextfield:function(e,next)
{
enableButtons();
if(cf.getKey(e)==cf.K_RETURN)
{
cf.setFocus(next);
return false;
}
return true;
},
onnexttab:function(e,dialog,tab)
{
enableButtons();
if(cf.getKey(e)==cf.K_RETURN)
{
setTab(dialog,tab);
return false;
}
return true;
},
onlastfield:function(e,fn)
{
enableButtons();
if(cf.getKey(e)==cf.K_RETURN)
{
fn();
return false;
}
return true;
},
oncancel:function()
{
showMenu();
},
onheartbeat:function()
{
heartbeat();
},
getDispatchUrl:function(args)
{
var u=window.location.href.parseUrl();
var p=u.protocol;
var d=u.domain;
return p+"://"+d+"/pv/gateway/strip.asp";
},
onstripload:function()
{
},
onstriplogin:function(user)
{
},
onstripassume:function(user)
{
},
onstriplogout:function()
{
},
onstripprofile:function(user)
{
},
onstripupdate:function()
{
}
}; }();
CLASMA.dom.addLoadEvent(CLASMA.online.strip.onload);

