
/* - kupuploneeditor.js - */
// http://www.hadstenbibliotek.dk/portal_javascripts/kupuploneeditor.js?original=1
KupuEditor.prototype._getBase=function(dom){var base=dom.getElementsByTagName('base');if(base.length){return base[0].getAttribute('href')} else{return ''}};KupuEditor.prototype.makeLinksRelative=function(contents,base,debug){var href=base.replace(/\/[^\/]*$/,'/');var pageid=/.*\/([^\/]*)$/.exec(base)[1];var hrefparts=href.split('/');contents=contents.replace(/(<[^>]* (?:src|href)=")([^"]*)"/g,
function(str,tag,url,offset,contents){var resolveuid=url.indexOf('/resolveuid/');if(resolveuid!=-1){str=tag+url.substr(resolveuid+1)+'"';return str}
var urlparts=url.split('#');var anchor=urlparts[1]||'';url=urlparts[0];var urlparts=url.split('/');var common=0;while(common<urlparts.length&&common<hrefparts.length&&urlparts[common]==hrefparts[common]){common++}
var last=urlparts[common];if(common==urlparts.length){urlparts[common]='.'}
else if(common+1==urlparts.length&&(last=='emptypage'||last==pageid)){urlparts[common]=''}
if(common>2){var path=[];var i=0;for(;i+common<hrefparts.length-1;i++){path[i]='..'};while(common<urlparts.length){path[i++]=urlparts[common++]};if(i==0&&!anchor){path[i++]='#'}
str=path.join('/');if(anchor||str==""){str=[str,anchor].join('#')}
str=tag+str+'"'};return str});contents=contents.replace(/<a\s+href="[^"]*"\s*>\s*<\/a>/g,'');contents=contents.replace(/<((p|div)\b[^>]*)>\s*<\/\2>(<br \/>)*/g,'<$1>&nbsp;</$2>').strip();return contents};KupuEditor.prototype.saveDataToField=function(form,field){var sourcetool=this.getTool('sourceedittool');if(sourcetool){sourcetool.cancelSourceMode()};if(!this._initialized){return};this._initialized=false;window.status="Please wait while saving document...";this.logMessage("Starting HTML cleanup");var transform=this._filterContent(this.getInnerDocument().documentElement);var contents=this.getXMLBody(transform);if (/^<body[^>]*>(<\/?(p|br)[^>]*>|\&nbsp;|\s)*<\/body>$/.test(contents)){contents=''}
var base=this._getBase(transform);contents=this._fixupSingletons(contents);contents=this.makeLinksRelative(contents,base).replace(/<\/?body[^>]*>/g,"");this.logMessage("Cleanup done, sending document to server");field.value=contents;this.content_changed=false};
