// Copyright 1999-2006, Trovix, Inc. All Rights Reserved.
// Confidential and Proprietary Information of Trovix, Inc.
// Patents Pending.

function getJobHostBaseUrl(url)
{
        var baseUrl = url.substring(0, url.indexOf("ListJobPosts.do")-1);

        return baseUrl;
}

function getNewUrl(baseUrl, accountId, context, strutsAction, actionValue ) {
        if( isDefined(accountId) )
        {
                return baseUrl.valueOf() + "/" + strutsAction + "?accountId=" + accountId + "&action=" + actionValue;
        }
        else if(isDefined(context) )
        {
                return baseUrl.valueOf() + "/" + strutsAction + "?context=" + context + "&action=" + actionValue;
        }

}

function processRequest()
{
        var query=this.location.search.substring(1);

        var params=query.split("&");
        var queryParamHash = new Array();


    for ( var i=0 ; i < params.length ; i++)
    {
        var pos = params[i].indexOf("=");
        var name = params[i].substring(0, pos);
        var value = params[i].substring(pos + 1);
        queryParamHash[name] = value;
    }

        var accountId = queryParamHash['accountId'];
        var context =   queryParamHash['context'];

        var action = queryParamHash['action'];
        var jobHostFrame = document.getElementById("jobhostframe");
        var newUrl = "";

        if ( isDefined(jobHostFrame))
        {
                var baseUrl = new String(getJobHostBaseUrl(jobHostFrame.src));

                if ( action == 'applyToJobEmail' )
                {
                        var newUrl =  getNewUrl(baseUrl, accountId, context, "ApplyToJobPostResume.do", action );
                        var jobPostId = queryParamHash['jobPostId'];
                        newUrl += "&jobPostId=" + jobPostId;
                        jobHostFrame.src = newUrl;
                }
                else if ( action == 'applyToJobExt' )
                {
                        var newUrl = baseUrl.valueOf() + "/ApplyToJobPostResumeExt.do?" + action + "&" + query;
                        jobHostFrame.src = newUrl;
                }
                else if( action == 'viewDetails' )
                {
                        var newUrl = getNewUrl(baseUrl, accountId, context, "ViewJobPostDetails.do", action );
                        var jobId = queryParamHash['jobId'];

                        newUrl += "&jobId=" + jobId;
                        jobHostFrame.src = newUrl;
                }

        }

        return true;
}

function scrolltotop() {
        window.scrollBy(0,0);
}

function isDefined( v )
{
        return ( typeof(v) != "undefined" ); }

function renderJobhostIframe(frameWidth, frameHeight, frameStyle,  frameSrc) {
        var frameHtml = "<IFRAME id=\"jobhostframe\" FRAMEBORDER=\"0\" width=\"" + frameWidth  +  "\" height=\"" + frameHeight + "\" onload=\"javascript:scroll(0,0);\" style=\"" + frameStyle + "\" src=\"" + frameSrc + "\"></IFRAME>";
        document.write(frameHtml);

        processRequest();
}
