﻿
var cs_183a35b3197949289735143ca413f862_Utils = new Object();
cs_183a35b3197949289735143ca413f862_Utils.CreateSafeFunction = function(instance, func)
{
    return function() {
        return func.apply(instance, arguments);
    }
}
var loader_183a35b3197949289735143ca413f862 = new cs_183a35b3197949289735143ca413f862_Loader();
loader_183a35b3197949289735143ca413f862.ReplaceScriptTag('http://www.vacationrentalscommunity.com/media/p/700/embed.aspx','<div id=\"video_552758c9-c854-4270-9cf5-e643e3e0921f\"><noscript><embed src=\"http://www.youtube.com/v/FVOMReOMYyQ&rel=1\" type=\"application/x-shockwave-flash\" wmode=\"transparent\" width=\"400\" height=\"300\"></embed></noscript></div>');
loader_183a35b3197949289735143ca413f862.AddScriptToLoad(new cs_183a35b3197949289735143ca413f862_ScriptToLoad(true, 'http://www.vacationrentalscommunity.com/WebResource.axd?d=aQ4z5hq67vgmvaBnWAOwvA0radGNxbi6y6aLFpXuMaAO7KP030j22su-ffzNUMDlF6mztBsm1Rrgc_yOIIhPwkGT8o8sHtVf1hdAe2H8KGM7q1exNtAZNk5i_hazQ2MI0&t=633638220397350283'));
loader_183a35b3197949289735143ca413f862.AddScriptToLoad(new cs_183a35b3197949289735143ca413f862_ScriptToLoad(false, 'try\n{\ncs_setInnerHtml(\'video_552758c9-c854-4270-9cf5-e643e3e0921f\',\'<embed src=\\\"http://www.youtube.com/v/FVOMReOMYyQ&rel=1\\\" type=\\\"application/x-shockwave-flash\\\" wmode=\\\"transparent\\\" width=\\\"400\\\" height=\\\"300\\\"></embed>\');\n} catch(e) { }'));
loader_183a35b3197949289735143ca413f862.LoadAll();

function cs_183a35b3197949289735143ca413f862_Loader()
{
    this._scriptsToLoad = new Array();
    this._currentScript = 0;

    this.AddScriptToLoad = function(scriptToLoad)
    {
        this._scriptsToLoad[this._scriptsToLoad.length] = scriptToLoad;
    }

    this.ReplaceScriptTag = function(scriptUrl, html)
    {
        scriptUrl = scriptUrl.toLowerCase();

        var scripts = document.getElementsByTagName('script');
        var script = null;
        for (var i = 0; i < scripts.length; i++)
        {
            if (scripts[i].src && scripts[i].src.toLowerCase() == scriptUrl)
	        {
		        script = scripts[i];
		        break;
	        }
        }

        if (script)
        {
	        var d = document.createElement('div');
	        d.innerHTML = html;
	        script.parentNode.insertBefore(d, script);
            script.parentNode.removeChild(script);
        }
    }

    this.AddCssText = function(cssText, media)
    {
        var s = document.createElement('style');
        s.type = 'text/css';

        if (media)
            s.media = media;

        if (s.styleSheet)
            s.styleSheet.cssText = cssText;
        else
            s.appendChild(document.createTextNode(cssText));

        document.getElementsByTagName('HEAD')[0].appendChild(s);            
    }

    this.LoadAll = function()
    {
        if (this._scriptsToLoad.length > 0 && this._currentScript < this._scriptsToLoad.length)
            this._scriptsToLoad[this._currentScript].Load(cs_183a35b3197949289735143ca413f862_Utils.CreateSafeFunction(this, this._loadSuccessful), cs_183a35b3197949289735143ca413f862_Utils.CreateSafeFunction(this, this._loadFailed));
    }

    this._loadSuccessful = function()
    {
        this._currentScript++;
        this.LoadAll();
    }

    this._loadFailed = function(e)
    {
        if (e)
            alert(e.message);
        else if (window.error)
            alert(window.error.message);
        else
            alert('An unknown error occured while loading scripts associated to the latest callback');
    }
}

function cs_183a35b3197949289735143ca413f862_ScriptToLoad(isInclude, content)
{
    this._isInclude = isInclude;
    this._content = content;
    this._element = null;
    this._completeCallback = null;
    this._errorCallback = null;
    this._errorTimeout = null;

    this._isSafari = function()
    {
        return navigator.userAgent.indexOf('Safari') != -1;
    }

    this._isIE = function()
    {
        return navigator && navigator.userAgent && navigator.userAgent.indexOf('MSIE') != -1
    }

    this.Load = function (completeCallback, errorCallback)
    {
        if (this._isInclude)
        {
            if (this._isScriptIncludeRegistered(this._content))
            {
                if (completeCallback)
                    completeCallback();
            }
            
            this._element = document.createElement('script');
            this._element.src = this._content;

            this._completeCallback = completeCallback;
            this._errorCallback = errorCallback;
            
            if (this._isSafari())
            {
                try
                {
                    document.getElementsByTagName('HEAD')[0].appendChild(this._element);
                }
                catch (e)
                {
                   if (errorCallback)
                       errorCallback(e);
                }

                setTimeout(cs_183a35b3197949289735143ca413f862_Utils.CreateSafeFunction(this, this._completeCallback), 999);
            }
            else
            {
                if (this._isIE())
                {
                    this._element.onreadystatechange = cs_183a35b3197949289735143ca413f862_Utils.CreateSafeFunction(this, this._readyStateChanged);
                }
                else
                {
                    this._element.readyState = 'loaded';
                    this._element.onload = cs_183a35b3197949289735143ca413f862_Utils.CreateSafeFunction(this, this._readyStateChanged);
                }
                
                document.getElementsByTagName('HEAD')[0].appendChild(this._element);
                
                this._errorTimeout = setTimeout(cs_183a35b3197949289735143ca413f862_Utils.CreateSafeFunction(this, this._errorOccured), 29999);
            }
        }
        else
        {
            var element = document.createElement('script');
            element.type = 'text/javascript';
            
            if (this._isSafari())
                element.innerHTML = this._content.replace(/(?:^\W*\/\/[^$]*?$|\/\*.*?\*\/)/gm, '');
            else
                element.text = this._content;
             
            try
            {
                document.getElementsByTagName('HEAD')[0].appendChild(element);
                
                if (!this._isSafari())
                    document.getElementsByTagName('HEAD')[0].removeChild(element);
            }
            catch (e)
            {
               if (errorCallback)
                   errorCallback(e);
            }

            if (completeCallback)
                completeCallback();
        }
    }

    this._isScriptIncludeRegistered = function(scriptUrl)
    {
        var scripts = document.getElementsByTagName('SCRIPT');
        
        for (var i = 0; i < scripts.length; i++)
        {

            if (scripts[i].src == scriptUrl)
                return true;
        }
        
        return false;
    }
    
    this._readyStateChanged = function()
    {
        if (this._element && (this._element.readyState == 'loaded' || this._element.readyState == 'complete'))
        {
            clearTimeout(this._errorTimeout);
            
            this._element.onreadystatechange = null;
            this._element.onload = null;
            this._element.onerror = null;
             
            if (this._completeCallback)
                this._completeCallback(); 
        }
    }
    
    this._errorOccured = function()
    {
        if (this._element)
        {
            this._element.onreadystatechange = null;
            this._element.onload = null;
            this._element.onerror = null;
        }
        
        if (this._errorCallback)
            this._errorCallback({'message': 'A script was not able to be loaded within the allowed time.  The callback has failed'});
    }
};
