// keep all temp data in a separate object to avoid collisions
var filesfm_temp = {};
filesfm_temp.scriptSrc = ‘https://files.fm/web_module/js/v1/?uid=15860566&uid_hash=c306f2ab73ebeb589f1dac3b62a202ca&insert_before_id=files_fm_upload_script_tag’;
filesfm_temp.embedCode = “”;
filesfm_temp.iFrameSrc = ‘https://files.fm/upload_iframe.php?uid=15860566&uid_hash=c306f2ab73ebeb589f1dac3b62a202ca’;
function filesfm_iframe_error()
{
// files.fm is not available or its being blocked by cloudflare?
var elementToReplace = document.getElementById( ‘files_fm_temp_element’ );
// display an error message
var warningElement = document.createElement( ‘div’ );
warningElement.style.width = ‘297px’;
warningElement.innerHTML = ‘Unfortunately, Files.fm file upload form failed to load. Either Files.fm is under maintenance or your IP address is blocked due to security reasons. Please open Files.fm for more information.’;
elementToReplace.parentElement.appendChild( warningElement );
elementToReplace.parentElement.removeChild( elementToReplace );
}
function filesfm_make_iframe_element()
{
var newElement = document.createElement( ‘iframe’ );
newElement.src = filesfm_temp.iFrameSrc;
newElement.setAttribute( ‘frameborder’, 0 );
newElement.style.border = ‘0’;
newElement.style.width = ‘297px’;
newElement.style.height = ‘485px’;
newElement.style.overflowX = ‘hidden’;
newElement.style.maxWidth = ‘none !important’;
return newElement;
}
function filesfm_on_cf_test_response()
{
var elementToReplace = document.getElementById( ‘files_fm_temp_element’ );
var newElement;
if( this.response === ‘1’ )
{
// response is OK
if( filesfm_temp.scriptSrc.length > 0 )
{
newElement = document.createElement( ‘script’ ) ;
newElement.src = filesfm_temp.scriptSrc;
newElement.id = ‘files_fm_upload_script_tag’;
}
else
{
newElement = filesfm_make_iframe_element();
}
elementToReplace.parentElement.appendChild( newElement );
elementToReplace.parentElement.removeChild( elementToReplace );
}
else
{
// response is bad
filesfm_iframe_error();
}
}
function filesfm_init_fileupload_form()
{
// create xhr -> calls cf_test.php (this should always return 1)
var xhr = new XMLHttpRequest();
xhr.addEventListener( ‘load’, filesfm_on_cf_test_response );
xhr.addEventListener( ‘error’, filesfm_iframe_error );
xhr.open( ‘GET’, ‘https://files.fm/web_module/js/v1/cf_test.php’ );
xhr.send();
}
if (typeof document.addEventListener != ‘undefined’)
{
document.addEventListener(‘DOMContentLoaded’, filesfm_init_fileupload_form, false);
}
else
{
window.attachEvent(“onload”, filesfm_init_fileupload_form);
}