﻿var ut_appUrl = 'http://videos.usabilitytest.com/';
//var ut_appUrl = 'http://localhost:8080/';


//-----------------------------  DEPLOY JAVA --------------------------

var ut_deployJava = { debug: null, firefoxJavaVersion: null, myInterval: null, preInstallJREList: null, returnPage: null, brand: null, locale: null, installType: null, EAInstallEnabled: false, EarlyAccessURL: null, getJavaURL: 'http://java.sun.com/webapps/getjava/BrowserRedirect?host=java.com', appleRedirectPage: 'http://www.apple.com/support/downloads/', oldMimeType: 'application/npruntime-scriptable-plugin;DeploymentToolkit', mimeType: 'application/java-deployment-toolkit', launchButtonPNG: 'http://java.sun.com/products/jfc/tsc/articles/swing2d/webstart.png', browserName: null, browserName2: null, getJREs: function() {
    var list = new Array(); if (ut_deployJava.isPluginInstalled()) { var plugin = ut_deployJava.getPlugin(); var VMs = plugin.jvms; for (var i = 0; i < VMs.getLength(); i++) { list[i] = VMs.get(i).version; } } else { var browser = ut_deployJava.getBrowser(); if (browser == 'MSIE') { if (ut_deployJava.testUsingActiveX('1.7.0')) { list[0] = '1.7.0'; } else if (ut_deployJava.testUsingActiveX('1.6.0')) { list[0] = '1.6.0'; } else if (ut_deployJava.testUsingActiveX('1.5.0')) { list[0] = '1.5.0'; } else if (ut_deployJava.testUsingActiveX('1.4.2')) { list[0] = '1.4.2'; } else if (ut_deployJava.testForMSVM()) { list[0] = '1.1'; } } else if (browser == 'Netscape Family') { ut_deployJava.getJPIVersionUsingMimeType(); if (ut_deployJava.firefoxJavaVersion != null) { list[0] = ut_deployJava.firefoxJavaVersion; } else if (ut_deployJava.testUsingMimeTypes('1.7')) { list[0] = '1.7.0'; } else if (ut_deployJava.testUsingMimeTypes('1.6')) { list[0] = '1.6.0'; } else if (ut_deployJava.testUsingMimeTypes('1.5')) { list[0] = '1.5.0'; } else if (ut_deployJava.testUsingMimeTypes('1.4.2')) { list[0] = '1.4.2'; } else if (ut_deployJava.browserName2 == 'Safari') { if (ut_deployJava.testUsingPluginsArray('1.7.0')) { list[0] = '1.7.0'; } else if (ut_deployJava.testUsingPluginsArray('1.6')) { list[0] = '1.6.0'; } else if (ut_deployJava.testUsingPluginsArray('1.5')) { list[0] = '1.5.0'; } else if (ut_deployJava.testUsingPluginsArray('1.4.2')) { list[0] = '1.4.2'; } } } }
    if (ut_deployJava.debug) { for (var i = 0; i < list.length; ++i) { alert('We claim to have detected Java SE ' + list[i]); } }
    return list;
}, installJRE: function(requestVersion) {
    var ret = false; if (ut_deployJava.isPluginInstalled()) {
        if (ut_deployJava.getPlugin().installJRE(requestVersion)) {
            ut_deployJava.refresh(); if (ut_deployJava.returnPage != null) { document.location = ut_deployJava.returnPage; }
            return true;
        } else { return false; } 
    } else { return ut_deployJava.installLatestJRE(); } 
}, installLatestJRE: function() {
    if (ut_deployJava.isPluginInstalled()) {
        if (ut_deployJava.getPlugin().installLatestJRE()) {
            ut_deployJava.refresh(); if (ut_deployJava.returnPage != null) { document.location = ut_deployJava.returnPage; }
            return true;
        } else { return false; } 
    } else {
        var browser = ut_deployJava.getBrowser(); var platform = navigator.platform.toLowerCase(); if ((ut_deployJava.EAInstallEnabled == 'true') && (platform.indexOf('win') != -1) && (ut_deployJava.EarlyAccessURL != null)) {
            ut_deployJava.preInstallJREList = ut_deployJava.getJREs(); if (ut_deployJava.returnPage != null) { ut_deployJava.myInterval = setInterval("ut_deployJava.poll()", 3000); }
            location.href = ut_deployJava.EarlyAccessURL; return false;
        } else {
            if (browser == 'MSIE') { return ut_deployJava.IEInstall(); } else if ((browser == 'Netscape Family') && (platform.indexOf('win32') != -1)) { return ut_deployJava.FFInstall(); } else {
                location.href = ut_deployJava.getJavaURL +
((ut_deployJava.returnPage != null) ? ('&returnPage=' + ut_deployJava.returnPage) : '') +
((ut_deployJava.locale != null) ? ('&locale=' + ut_deployJava.locale) : '') +
((ut_deployJava.brand != null) ? ('&brand=' + ut_deployJava.brand) : '');
            }
            return false;
        } 
    } 
}, runApplet: function(attributes, parameters, minimumVersion) {
    if (minimumVersion == 'undefined' || minimumVersion == null) { minimumVersion = '1.1'; }
    var regex = "^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$"; var matchData = minimumVersion.match(regex); if (ut_deployJava.returnPage == null) { ut_deployJava.returnPage = document.location; }
    if (matchData != null) { var browser = ut_deployJava.getBrowser(); if ((browser != '?') && ('Safari' != ut_deployJava.browserName2)) { if (ut_deployJava.versionCheck(minimumVersion + '+')) { ut_deployJava.writeAppletTag(attributes, parameters); } else if (ut_deployJava.installJRE(minimumVersion + '+')) { ut_deployJava.refresh(); location.href = document.location; ut_deployJava.writeAppletTag(attributes, parameters); } } else { ut_deployJava.writeAppletTag(attributes, parameters); } } else {
        if (ut_deployJava.debug) {
            alert('Invalid minimumVersion argument to runApplet():' +
minimumVersion);
        } 
    } 
}, writeAppletTag: function(attributes, parameters) {
    var s = '<' + 'applet '; var codeAttribute = false; for (var attribute in attributes) { s += (' ' + attribute + '="' + attributes[attribute] + '"'); if (attribute == 'code') { codeAttribute = true; } }
    if (!codeAttribute) { s += (' code="dummy"'); }
    s += '>'; document.write(s); if (parameters != 'undefined' && parameters != null) {
        var codebaseParam = false; for (var parameter in parameters) {
            if (parameter == 'codebase_lookup') { codebaseParam = true; }
            s = '<param name="' + parameter + '" value="' +
parameters[parameter] + '">'; document.write(s);
        }
        if (!codebaseParam) { document.write('<param name="codebase_lookup" value="false">'); } 
    }
    document.write('<' + '/' + 'applet' + '>');
}, versionCheck: function(versionPattern) {
    var index = 0; var regex = "^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?(\\*|\\+)?$"; var matchData = versionPattern.match(regex); if (matchData != null) {
        var familyMatch = true; var patternArray = new Array(); for (var i = 1; i < matchData.length; ++i) { if ((typeof matchData[i] == 'string') && (matchData[i] != '')) { patternArray[index] = matchData[i]; index++; } }
        if (patternArray[patternArray.length - 1] == '+') { familyMatch = false; patternArray.length--; } else { if (patternArray[patternArray.length - 1] == '*') { patternArray.length--; } }
        var list = ut_deployJava.getJREs(); for (var i = 0; i < list.length; ++i) { if (ut_deployJava.compareVersionToPattern(list[i], patternArray, familyMatch)) { return true; } }
        return false;
    } else {
        alert('Invalid versionPattern passed to versionCheck: ' +
versionPattern); return false;
    } 
}, isWebStartInstalled: function(minimumVersion) {
    var browser = ut_deployJava.getBrowser(); if ((browser == '?') || ('Safari' == ut_deployJava.browserName2)) { return true; }
    if (minimumVersion == 'undefined' || minimumVersion == null) { minimumVersion = '1.4.2'; }
    var retval = false; var regex = "^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$"; var matchData = minimumVersion.match(regex); if (matchData != null) { retval = ut_deployJava.versionCheck(minimumVersion + '+'); } else {
        if (ut_deployJava.debug) { alert('Invalid minimumVersion argument to isWebStartInstalled(): ' + minimumVersion); }
        retval = ut_deployJava.versionCheck('1.4.2+');
    }
    return retval;
}, getJPIVersionUsingMimeType: function() { for (var i = 0; i < navigator.mimeTypes.length; ++i) { var s = navigator.mimeTypes[i].type; var m = s.match(/^application\/x-java-applet;jpi-version=(.*)$/); if (m != null) { ut_deployJava.firefoxJavaVersion = m[1]; break; } } }, launchWebStartApplication: function(jnlp) {
    var uaString = navigator.userAgent.toLowerCase(); ut_deployJava.getJPIVersionUsingMimeType(); if (uaString.indexOf("windows", 0) != -1) { if (ut_deployJava.isWebStartInstalled('1.6.0_18') == false) { if (ut_deployJava.isPluginInstalled()) { if (ut_deployJava.installLatestJRE() == false) { alert("Java install failed: cannot use launchWebStartApplication function"); return; } } else { alert("Please visit java.com to install Java and try again after"); return; } } } else {
        if (ut_deployJava.firefoxJavaVersion == null) { alert("Please visit java.com to install Java and try again after"); return; }
        if (ut_deployJava.firefoxJavaVersion < "1.6.0_18") { alert("Please visit java.com to install Java and try again after"); return; } 
    }
    var jnlpDocbase = null; if (document.documentURI) { jnlpDocbase = document.documentURI; }
    if (jnlpDocbase == null) { jnlpDocbase = document.URL; }
    var browser = ut_deployJava.getBrowser(); if (browser == 'MSIE') { document.write('<' + 'object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" ' + 'width="0" height="0">' + '<' + 'PARAM name="launchjnlp" value="' + jnlp + '"' + '>' + '<' + 'PARAM name="docbase" value="' + jnlpDocbase + '"' + '>' + '<' + '/' + 'object' + '>'); } else if (browser == 'Netscape Family') {
        document.write('<' + 'embed type="application/x-java-applet;jpi-version=' +
ut_deployJava.firefoxJavaVersion + '" ' + 'width="0" height="0" ' + 'launchjnlp="' + jnlp + '"' + 'docbase="' + jnlpDocbase + '"' + ' />');
    }
    document.location = jnlpDocbase;
}, createWebStartLaunchButtonEx: function(jnlp, minimumVersion) {
    if (ut_deployJava.returnPage == null) { ut_deployJava.returnPage = jnlp; }
    var url = 'javascript:ut_deployJava.launchWebStartApplication(\'' + jnlp + '\');'; document.write('<' + 'a href="' + url + '" onMouseOver="window.status=\'\'; ' + 'return true;"><' + 'img ' + 'src="' + ut_deployJava.launchButtonPNG + '" ' + 'border="0" /><' + '/' + 'a' + '>');
}, createWebStartLaunchButton: function(jnlp, minimumVersion) {
    if (ut_deployJava.returnPage == null) { ut_deployJava.returnPage = jnlp; }
    var url = 'javascript:' + 'if (!ut_deployJava.isWebStartInstalled(&quot;' +
minimumVersion + '&quot;)) {' + 'if (ut_deployJava.installLatestJRE()) {' + 'if (ut_deployJava.launch(&quot;' + jnlp + '&quot;)) {}' + '}' + '} else {' + 'if (ut_deployJava.launch(&quot;' + jnlp + '&quot;)) {}' + '}'; document.write('<' + 'a href="' + url + '" onMouseOver="window.status=\'\'; ' + 'return true;"><' + 'img ' + 'src="' + ut_deployJava.launchButtonPNG + '" ' + 'border="0" /><' + '/' + 'a' + '>');
}, launch: function(jnlp) { if (ut_deployJava.isPluginInstalled()) { return ut_deployJava.getPlugin().launch(jnlp); } else { document.location = jnlp; return true; } }, isPluginInstalled: function() { var plugin = ut_deployJava.getPlugin(); if (plugin && plugin.jvms) { return true; } else { return false; } }, isAutoUpdateEnabled: function() {
    if (ut_deployJava.isPluginInstalled()) { return ut_deployJava.getPlugin().isAutoUpdateEnabled(); }
    return false;
}, setAutoUpdateEnabled: function() {
    if (ut_deployJava.isPluginInstalled()) { return ut_deployJava.getPlugin().setAutoUpdateEnabled(); }
    return false;
}, setInstallerType: function(type) {
    ut_deployJava.installType = type; if (ut_deployJava.isPluginInstalled()) { return ut_deployJava.getPlugin().setInstallerType(type); }
    return false;
}, setAdditionalPackages: function(packageList) {
    if (ut_deployJava.isPluginInstalled()) { return ut_deployJava.getPlugin().setAdditionalPackages(packageList); }
    return false;
}, setEarlyAccess: function(enabled) { ut_deployJava.EAInstallEnabled = enabled; }, isPlugin2: function() {
    if (ut_deployJava.isPluginInstalled()) { if (ut_deployJava.versionCheck('1.6.0_10+')) { try { return ut_deployJava.getPlugin().isPlugin2(); } catch (err) { } } }
    return false;
}, allowPlugin: function() { ut_deployJava.getBrowser(); var ret = ('Chrome' != ut_deployJava.browserName2 && 'Safari' != ut_deployJava.browserName2 && 'Opera' != ut_deployJava.browserName2); return ret; }, getPlugin: function() {
    ut_deployJava.refresh(); var ret = null; if (ut_deployJava.allowPlugin()) { ret = document.getElementById('ut_deployJavaPlugin'); }
    return ret;
}, compareVersionToPattern: function(version, patternArray, familyMatch) {
    var regex = "^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$"; var matchData = version.match(regex); if (matchData != null) {
        var index = 0; var result = new Array(); for (var i = 1; i < matchData.length; ++i) {
            if ((typeof matchData[i] == 'string') && (matchData[i] != ''))
            { result[index] = matchData[i]; index++; } 
        }
        var l = Math.min(result.length, patternArray.length); if (familyMatch) {
            for (var i = 0; i < l; ++i) { if (result[i] != patternArray[i]) return false; }
            return true;
        } else {
            for (var i = 0; i < l; ++i) { if (result[i] < patternArray[i]) { return false; } else if (result[i] > patternArray[i]) { return true; } }
            return true;
        } 
    } else { return false; } 
}, getBrowser: function() {
    if (ut_deployJava.browserName == null) {
        var browser = navigator.userAgent.toLowerCase(); if (ut_deployJava.debug) { alert('userAgent -> ' + browser); }
        if (browser.indexOf('msie') != -1) { ut_deployJava.browserName = 'MSIE'; ut_deployJava.browserName2 = 'MSIE'; } else if (browser.indexOf('firefox') != -1) { ut_deployJava.browserName = 'Netscape Family'; ut_deployJava.browserName2 = 'Firefox'; } else if (browser.indexOf('chrome') != -1) { ut_deployJava.browserName = 'Netscape Family'; ut_deployJava.browserName2 = 'Chrome'; } else if (browser.indexOf('safari') != -1) { ut_deployJava.browserName = 'Netscape Family'; ut_deployJava.browserName2 = 'Safari'; } else if (browser.indexOf('mozilla') != -1) { ut_deployJava.browserName = 'Netscape Family'; ut_deployJava.browserName2 = 'Other'; } else if (browser.indexOf('opera') != -1) { ut_deployJava.browserName = 'Netscape Family'; ut_deployJava.browserName2 = 'Opera'; } else { ut_deployJava.browserName = '?'; ut_deployJava.browserName2 = 'unknown'; }
        if (ut_deployJava.debug) { alert('Detected browser name:' + ut_deployJava.browserName + ', ' + ut_deployJava.browserName2); } 
    }
    return ut_deployJava.browserName;
}, testUsingActiveX: function(version) {
    var objectName = 'JavaWebStart.isInstalled.' + version + '.0'; if (!ActiveXObject) {
        if (ut_deployJava.debug) { alert('Browser claims to be IE, but no ActiveXObject object?'); }
        return false;
    }
    try { return (new ActiveXObject(objectName) != null); } catch (exception) { return false; } 
}, testForMSVM: function() { var clsid = '{08B0E5C0-4FCB-11CF-AAA5-00401C608500}'; if (typeof oClientCaps != 'undefined') { var v = oClientCaps.getComponentVersion(clsid, "ComponentID"); if ((v == '') || (v == '5,0,5000,0')) { return false; } else { return true; } } else { return false; } }, testUsingMimeTypes: function(version) {
    if (!navigator.mimeTypes) {
        if (ut_deployJava.debug) { alert('Browser claims to be Netscape family, but no mimeTypes[] array?'); }
        return false;
    }
    for (var i = 0; i < navigator.mimeTypes.length; ++i) { s = navigator.mimeTypes[i].type; var m = s.match(/^application\/x-java-applet\x3Bversion=(1\.8|1\.7|1\.6|1\.5|1\.4\.2)$/); if (m != null) { if (ut_deployJava.compareVersions(m[1], version)) { return true; } } }
    return false;
}, testUsingPluginsArray: function(version) {
    if ((!navigator.plugins) || (!navigator.plugins.length)) { return false; }
    var platform = navigator.platform.toLowerCase(); for (var i = 0; i < navigator.plugins.length; ++i) { s = navigator.plugins[i].description; if (s.search(/^Java Switchable Plug-in (Cocoa)/) != -1) { if (ut_deployJava.compareVersions("1.5.0", version)) { return true; } } else if (s.search(/^Java/) != -1) { if (platform.indexOf('win') != -1) { if (ut_deployJava.compareVersions("1.5.0", version) || ut_deployJava.compareVersions("1.6.0", version)) { return true; } } } }
    if (ut_deployJava.compareVersions("1.5.0", version)) { return true; }
    return false;
}, IEInstall: function() {
    location.href = ut_deployJava.getJavaURL +
((ut_deployJava.returnPage != null) ? ('&returnPage=' + ut_deployJava.returnPage) : '') +
((ut_deployJava.locale != null) ? ('&locale=' + ut_deployJava.locale) : '') +
((ut_deployJava.brand != null) ? ('&brand=' + ut_deployJava.brand) : '') +
((ut_deployJava.installType != null) ? ('&type=' + ut_deployJava.installType) : ''); return false;
}, done: function(name, result) { }, FFInstall: function() {
    location.href = ut_deployJava.getJavaURL +
((ut_deployJava.returnPage != null) ? ('&returnPage=' + ut_deployJava.returnPage) : '') +
((ut_deployJava.locale != null) ? ('&locale=' + ut_deployJava.locale) : '') +
((ut_deployJava.brand != null) ? ('&brand=' + ut_deployJava.brand) : '') +
((ut_deployJava.installType != null) ? ('&type=' + ut_deployJava.installType) : ''); return false;
}, compareVersions: function(installed, required) {
    var a = installed.split('.'); var b = required.split('.'); for (var i = 0; i < a.length; ++i) { a[i] = Number(a[i]); }
    for (var i = 0; i < b.length; ++i) { b[i] = Number(b[i]); }
    if (a.length == 2) { a[2] = 0; }
    if (a[0] > b[0]) return true; if (a[0] < b[0]) return false; if (a[1] > b[1]) return true; if (a[1] < b[1]) return false; if (a[2] > b[2]) return true; if (a[2] < b[2]) return false; return true;
}, enableAlerts: function() { ut_deployJava.browserName = null; ut_deployJava.debug = true; }, poll: function() {
    ut_deployJava.refresh(); var postInstallJREList = ut_deployJava.getJREs(); if ((ut_deployJava.preInstallJREList.length == 0) && (postInstallJREList.length != 0)) { clearInterval(ut_deployJava.myInterval); if (ut_deployJava.returnPage != null) { location.href = ut_deployJava.returnPage; }; }
    if ((ut_deployJava.preInstallJREList.length != 0) && (postInstallJREList.length != 0) && (ut_deployJava.preInstallJREList[0] != postInstallJREList[0])) { clearInterval(ut_deployJava.myInterval); if (ut_deployJava.returnPage != null) { location.href = ut_deployJava.returnPage; } } 
}, writePluginTag: function() { var browser = ut_deployJava.getBrowser(); if (browser == 'MSIE') { document.write('<' + 'object classid="clsid:CAFEEFAC-DEC7-0000-0000-ABCDEFFEDCBA" ' + 'id="ut_deployJavaPlugin" width="0" height="0">' + '<' + '/' + 'object' + '>'); } else if (browser == 'Netscape Family' && ut_deployJava.allowPlugin()) { ut_deployJava.writeEmbedTag(); } }, refresh: function() { navigator.plugins.refresh(false); var browser = ut_deployJava.getBrowser(); if (browser == 'Netscape Family' && ut_deployJava.allowPlugin()) { var plugin = document.getElementById('ut_deployJavaPlugin'); if (plugin == null) { ut_deployJava.writeEmbedTag(); } } }, writeEmbedTag: function() {
    var written = false; if (navigator.mimeTypes != null) {
        for (var i = 0; i < navigator.mimeTypes.length; i++) {
            if (navigator.mimeTypes[i].type == ut_deployJava.mimeType) {
                if (navigator.mimeTypes[i].enabledPlugin) {
                    document.write('<' + 'embed id="ut_deployJavaPlugin" type="' +
ut_deployJava.mimeType + '" hidden="true" />'); written = true;
                } 
            } 
        }
        if (!written) for (var i = 0; i < navigator.mimeTypes.length; i++) {
            if (navigator.mimeTypes[i].type == ut_deployJava.oldMimeType) {
                if (navigator.mimeTypes[i].enabledPlugin) {
                    document.write('<' + 'embed id="ut_deployJavaPlugin" type="' +
ut_deployJava.oldMimeType + '" hidden="true" />');
                } 
            } 
        } 
    } 
}, do_initialize: function() {
    ut_deployJava.writePluginTag(); if (ut_deployJava.locale == null) {
        var loc = null; if (loc == null) try { loc = navigator.userLanguage; } catch (err) { }
        if (loc == null) try { loc = navigator.systemLanguage; } catch (err) { }
        if (loc == null) try { loc = navigator.language; } catch (err) { }
        if (loc != null) {
            loc.replace("-", "_")
            ut_deployJava.locale = loc;
        } 
    } 
} 
}; ut_deployJava.do_initialize();



//-----------------------------  END OF DEPLOY JAVA --------------------------

// ------------------- SUPPORT FUNCTIONS -------------------
function ut_generateGuid() {
    var guid = '';

    for (var i = 1; i <= 32; i++) {
        var n = Math.floor(Math.random() * 16.0).toString(16);
        guid += n;

        if ((i == 8) || (i == 12) || (i == 16) || (i == 20)) guid += "-";
    }

    return guid;
}

function ut_remoteJson(listener, callback) {
    if (listener) {
        var script = document.createElement("script"); // new script element.
        script.setAttribute("type", "text/javascript");
        script.setAttribute("id", "remotejson" + ut_generateGuid());

        if (listener.indexOf("?") > 0) {
            script.setAttribute("src", listener + "&nocache=" + ut_generateGuid() + "&callback=" + callback);
        }
        else {
            script.setAttribute("src", listener + "?nocache=" + ut_generateGuid() + "&callback=" + callback);
        }

        document.getElementsByTagName("head")[0].appendChild(script);
    }
}

function ut_setCookie(cookieName, cookieValue, nDays) {
    var today = new Date();
    var expire = new Date();
    if (nDays == null || nDays == 0) nDays = 0;
    expire.setTime(today.getTime() + 3600000 * 24 * nDays);
    var cookieString = cookieName + "=" + escape(cookieValue);
    if (nDays > 0)
    {

        cookieString = cookieString + ";expires=" + expire.toGMTString();
    }             
    document.cookie =  cookieString;
}

function ut_readCookie(name) {

    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for (var i = 0; i < ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) == ' ') c = c.substring(1, c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
    }


    return null;
}

function ut_startSession() {
    ut_initFlashCom('applet', 'page');
}

function ut_startInvite(invite, guid) {

    if (invite)
    {
        ut_inviting = true;
        ut_setCookie('ut_invitedToSurvey', 'yes', 999);
        //TODO - invite logic that sets session guid
        ut_guid = guid; //ut_generateGuid();
        //load invite code
        ut_remoteJson(ut_appUrl + 'screencast/invite.js');
        ut_remoteJson(ut_appUrl + 'screencast/inprogress.js');
    }
}

//----------------------------- START LOGIC --------------------------

var ut_guid;
var ut_inviting = false;

if (ut_readCookie('ut_surveyrunning') != "") {
    ut_guid = ut_readCookie('ut_surveyrunning');
    ut_remoteJson(ut_appUrl + 'screencast/inprogress.js','ut_startSession()');
}

var ut_currentUrl = document.location.href;
if (ut_deployJava.getJREs() != "") {
    var forceInvite = (ut_currentUrl.search('survey=display') > 0);
    if (!ut_readCookie('ut_invitedToSurvey') || forceInvite) {
        ut_remoteJson(ut_appUrl + 'screencast/displayinvite.aspx?userguid=' + ut_user + '&force=' + forceInvite);
    }


}