function PN1(){this.config={};}
PN1.prototype.addEventHandler=function(element,eventname,functionname){try{element.addEventListener(eventname,functionname,false);}catch(e){element.attachEvent('on'+eventname,functionname);}}
PN1.prototype.getClassNames=function(element){var classes=element.className.split(/ /);return classes;}
PN1.prototype.containsClass=function(element,classname){return this.getClassNames(element).contains(classname);}
PN1.prototype.addClass=function(element,classname){var classes=this.getClassNames(element);if(!classes.contains(classname)){classes[classes.length]=classname;element.className=classes.join(' ');}}
PN1.prototype.removeClass=function(element,classname){var classes=this.getClassNames(element);var newClasses=[];for(var a=0;a<classes.length;a++){if(classes[a]!=classname){newClasses[newClasses.length]=classes[a];}}
element.className=newClasses.join(' ');}
PN1.prototype.replaceClass=function(element,oldclassname,newclassname){var classes=this.getClassNames(element);for(var a=0;a<classes.length;a++){if(classes[a]==oldclassname){classes[a]=newclassname;}}
element.className=classes.join(' ');}
PN1.prototype.getElementsByClassName=function(parent,name,tag){var tags;if(tag!=undefined){tags=parent.getElementsByTagName(tag);}else{tags=parent.getElementsByTagName('*');}
var results=[];for(var a=0;a<tags.length;a++){var classes=tags[a].className.split(/ /);if(classes.contains(name)){results[results.length]=tags[a];}}
return results;}
PN1.prototype.swapElements=function(element1,element2){var nextsib1=element1.nextSibling;var nextsib2=element2.nextSibling;var parent1=element1.parentNode;var parent2=element2.parentNode;el1=element1.cloneNode(true);el2=element2.cloneNode(true);if(nextsib1!=undefined){parent1.insertBefore(el2,nextsib1);}else{parent1.appendChild(el2);}
if(nextsib2!=undefined){alert(nextsib2.innerHTML);parent1.insertBefore(el1,nextsib2);}else{parent2.appendChild(el1);}
parent1.removeNode(element1);parent2.removeNode(element2);}
PN1.prototype.load=function(arr){if(arr===undefined){return false;}
if(arr.script===undefined){return false;}
var scripts=document.getElementsByTagName('script');var included={};for(var a=0;a<scripts.length;a++){included[scripts[a].src]=true;if(/class\.rpo\.core\.js$/.test(scripts[c].src)&&this.config.scriptpath===undefined){this.config.scriptpath=scripts[c].src.replace(/class\.rpo\.core\.js$/,"");}}
if(arr.path===undefined){var script=this.config.scriptpath+arr.script;}else if(!/^http:\/{2}/.test(arr.path)){var script=this.config.scriptpath+arr.path+arr.script;}else{var script=arr.path+arr.script;}
if(included[script]!==undefined&&arr.force===undefined){return true;}
var com=document.createElement("script");com.setAttribute("type","text/javascript");com.setAttribute("src",script);document.getElementsByTagName("head")[0].appendChild(com);return true;}
Array.prototype.contains=function(value){for(var a=0;a<this.length;a++){if(this[a]==value){return true;}}
return false;}
Function.prototype.bind=function(parent){var f=this;var args=[];for(var a=1;a<arguments.length;a++){args[args.length]=arguments[a];}
var temp=function(){return f.apply(parent,args);}
return(temp);}
