/*--------------------------------------------------------------------------*
 *-- GZipped/Cached by ScripZip (c)2006-2007( http://www.php-vision.de/ ) --*
 *--------------------------------------------------------------------------*
 *   Orginal Script Filesize: 18576  Bytes             
 *   GZipped Script Filesize: 4193  Bytes             
 *   GZip Compression Level : 9 GZip Compression Rate : 22.57% of Org. File *
 *   Last Time File Changed : Wed, 22 Feb 2012 15:33:43 GMT                 *
 *   Last Browser Load File : Thu, 23 Feb 2012 01:15:30 GMT                 *
 *   Cached File Expires on : Sun, 26 Feb 2012 01:15:30 GMT                 *
 *--------------------------------------------------------------------------*
 *-- Download ScripZip and speed up your Page on http://www.php-vision.de/  *
 *--------------------------------------------------------------------------*/

// JavaScript Document

var stellen_SearchContainer = null;
var stellen_search_isFocused = false;
var stellen_search_stellenart_isFocused = false;
var stellen_search_arbeitszeit_isFocused = false;
var stellen_search_container_mouseIsOver = false;

function stellen_SearchContainer_make()
{
    stellen_SearchContainer = new YAHOO.widget.Overlay(
                                    "stellen_search_container",
                                    {
                                        context:["stellen_search","tl","bl"],
                                        visible:false,
                                        width:"400px"
                                    }
                                );
    stellen_SearchContainer.render();

    YAHOO.util.Event.addListener('stellen_search_container', "mouseout", stellen_search_container_onMouseOut);
    YAHOO.util.Event.addListener('stellen_search_container', "mouseover", stellen_search_container_onMouseOver);
    YAHOO.util.Event.addListener('stellen_search', "keyup", stellen_search_keyup);
    YAHOO.util.Event.addListener('stellen_search', "focus", stellen_search_onFocus);
    YAHOO.util.Event.addListener('stellen_search', "blur", stellen_search_onBlur);
    YAHOO.util.Event.addListener('stellen_search_arbeitszeit', "focus", stellen_search_arbeitszeit_onFocus);
    YAHOO.util.Event.addListener('stellen_search_arbeitszeit', "blur", stellen_search_arbeitszeit_onBlur);
    YAHOO.util.Event.addListener('stellen_search_arbeitszeit', "change", stellen_search_arbeitszeit_onChange);
    YAHOO.util.Event.addListener('stellen_search_stellenart', "focus", stellen_search_stellenart_onFocus);
    YAHOO.util.Event.addListener('stellen_search_stellenart', "blur", stellen_search_stellenart_onBlur);
    YAHOO.util.Event.addListener('stellen_search_stellenart', "change", stellen_search_stellenart_onChange);
    YAHOO.util.Event.addListener(document, "click", stellen_search_container_toggleVisibility);
}

// YAHOO.util.Event.addListener(window, "load", stellen_SearchContainer_make);

function stellen_search_container_onMouseOver()
{
    if(stellen_search_container_mouseIsOver == false)
    {
        stellen_search_container_mouseIsOver = true;
        stellen_search_container_toggleVisibility();
    }
}
function stellen_search_container_onMouseOut()
{
    if(stellen_search_container_mouseIsOver == true)
    {
        stellen_search_container_mouseIsOver = false;
//        stellen_search_container_toggleVisibility();
    }
}

function stellen_search_keyup()
{
    window.setTimeout(
        "stellen_search_releaseQuery('"+ document.getElementById('stellen_search').value +"')", 
        500
    );
}
function stellen_search_onFocus()
{
    if(stellen_search_isFocused == false)
    {
        stellen_search_isFocused = true;
        stellen_search_container_toggleVisibility();
    }
}
function stellen_search_onBlur()
{
    if(stellen_search_isFocused == true)
    {
        stellen_search_isFocused = false;
        stellen_search_container_toggleVisibility();
    }
}

function stellen_search_stellenart_onFocus()
{
    if(stellen_search_stellenart_isFocused == false)
    {
        stellen_search_stellenart_isFocused = true;
        stellen_search_container_toggleVisibility();
    }
}
function stellen_search_stellenart_onBlur()
{
    if(stellen_search_stellenart_isFocused == true)
    {
        stellen_search_stellenart_isFocused = false;
        stellen_search_container_toggleVisibility();
    }
}
function stellen_search_stellenart_onChange()
{
    var inputText = document.getElementById('stellen_search').value;
    if (inputText != '') {
        stellen_search_releaseQuery(inputText);
    }
}

function stellen_search_arbeitszeit_onFocus()
{
    if(stellen_search_arbeitszeit_isFocused == false)
    {
        stellen_search_arbeitszeit_isFocused = true;
        stellen_search_container_toggleVisibility();
    }
}
function stellen_search_arbeitszeit_onBlur()
{
    if(stellen_search_arbeitszeit_isFocused == true)
    {
        stellen_search_arbeitszeit_isFocused = false;
        stellen_search_container_toggleVisibility();
    }
}
function stellen_search_arbeitszeit_onChange()
{
    var inputText = document.getElementById('stellen_search').value;
    if (inputText != '') {
        stellen_search_releaseQuery(inputText);
    }
}

function stellen_search_container_toggleVisibility()
{
    //var elemRegion = YAHOO.util.Dom.getRegion('stellen_search_container');
    
    if (
        stellen_search_isFocused == true || stellen_search_container_mouseIsOver == true || 
        stellen_search_arbeitszeit_isFocused == true || stellen_search_stellenart_isFocused == true
       )
    {
        stellen_SearchContainer.show();
    } else {
        stellen_SearchContainer.hide();
    }
}


function searchFadeIn(elId, ht) {
    YAHOO.util.Dom.setStyle(elId, 'opacity', 0);
    YAHOO.util.Dom.setStyle(elId, 'display', 'block');

    var subscr = function() {
        var opacityAnim = new YAHOO.util.Anim(elId,
                                    { opacity: { from:0, to: 1 } },
                                        0.20, YAHOO.util.Easing.easeOut);
        opacityAnim.animate();
    }

    var heightAnim = new YAHOO.util.Anim(elId,
                                    { height: { from:0, to: ht } },
                                        0.30, YAHOO.util.Easing.easeOut);
    heightAnim.onComplete.subscribe(subscr);
    heightAnim.animate();
}

function searchFadeOut(elId) {
    var subscr = function() {
        var heightAnim = new YAHOO.util.Anim(elId,
                                        { height: { to: 0 } },
                                        0.30, YAHOO.util.Easing.easeOut);
        heightAnim.onComplete.subscribe(function(){ YAHOO.util.Dom.setStyle(elId, 'display', 'none'); });
        heightAnim.animate();
    }

    var opacityAnim = new YAHOO.util.Anim(elId,
                                    { opacity: { from:1, to: 0 } },
                                        0.20, YAHOO.util.Easing.easeOut);
    opacityAnim.onComplete.subscribe(subscr);
    opacityAnim.animate();
}



function stellen_search_query()
{
    var div_hd = document.getElementById('stellen_search_container_hd');
    var div_bd = document.getElementById('stellen_search_container_bd');
    var div_ft = document.getElementById('stellen_search_container_ft');

    var handleSuccess = function(o){ 
        var teile = o.responseText.split('###');
        if(teile[0] == document.getElementById('stellen_search').value)
        {
            div_hd.innerHTML = teile[1];
            div_bd.innerHTML = teile[2];
            div_ft.innerHTML = teile[3];
        }
    }

    var handleFailure = function(o){
        alert("Status: " + o.status + "\n" + o.statusText);
    }

    var callback =
    {
        success:handleSuccess, 
        failure: handleFailure
    };

    var addParams = 'arbeitszeit='+document.getElementById('stellen_search_arbeitszeit').value+'&stellenart='+document.getElementById('stellen_search_stellenart').value;

    var formObject = document.getElementById('stellen_search_form');
    YAHOO.util.Connect.setForm(formObject);
    YAHOO.util.Connect.asyncRequest('POST', '/JBS_Stellen_livesearch.php', callback, addParams);
}

function stellen_search_releaseQuery(eingabe)
{
    if(eingabe === document.getElementById('stellen_search').value)
    {
        stellen_search_query();
    }
}

function bewerber_search_query()
{
    var handleSuccess = function(o){ 
        document.getElementById('bewerber_search_response').innerHTML = o.responseText;
    }

    var handleFailure = function(o){
        alert("Status: " + o.status + "\n" + o.statusText);
    }

    var callback = { success:handleSuccess, failure: handleFailure };

    

    var formObject = document.getElementById('bewerber_search_form');
    YAHOO.util.Connect.setForm(formObject);
    YAHOO.util.Connect.asyncRequest('POST', '/JBS_Bewerber_livesearch.php', callback);
}

function bewerber_search_releaseQuery(eingabe)
{
    if(eingabe === document.getElementById('bewerber_search').value)
    {
        bewerber_search_query();
    }
}
function bewerber_search_keyup()
{
    var myval = document.getElementById('bewerber_search').value;
    window.setTimeout(
        "bewerber_search_releaseQuery('"+ myval +"')", 
        500
    );
}


var historyShow = [];
function historyDetails(hisDetailElemId)
{
    if (typeof historyShow[hisDetailElemId] == 'undefined') {
        historyShow[hisDetailElemId] = 0;
    }

    if (historyShow[hisDetailElemId] == 1) {
        document.getElementById('hisDet_'+hisDetailElemId+'_icon').src = 'gfx/plus_win.gif';
        YAHOO.util.Dom.setStyle('hisDet_'+hisDetailElemId, 'display', 'none');
        historyShow[hisDetailElemId] = 0;
    } else {
        document.getElementById('hisDet_'+hisDetailElemId+'_icon').src = 'gfx/minus_win.gif';
        YAHOO.util.Dom.setStyle('hisDet_'+hisDetailElemId, 'display', 'block');
        historyShow[hisDetailElemId] = 1;
    }
}


YAHOO.namespace("ipreview");

YAHOO.ipreview.init = function ()
{
    YAHOO.ipreview.instance = new YAHOO.widget.Dialog("ipreview_container", {
                                width : "600px",
                                fixedcenter : true,
                                visible : false,
                                dragdrop : true,
                                constraintoviewport : true,
                                buttons : [ { text:"Schließen", handler:function(){ this.hide(); }, isDefault: true } ]
                                } );
    YAHOO.ipreview.instance.setHeader('<div id="ic_ddHandleId" style="cursor:move;">Stellenangebot - Vorschau</div>');
    YAHOO.ipreview.instance.setBody('<div id="ipreview_content" style="height:400px; width:97%; overflow:auto;"></div>');

    YAHOO.ipreview.instance.render(document.body);

    // Manuelles DragDrop, da automatisches nicht gefunzt hat
    dd = new YAHOO.util.DD("ipreview_container_c");
    dd.setHandleElId("ic_ddHandleId");
}

YAHOO.ipreview.loadContent = function (stellenid)
{
    var Dom = YAHOO.util.Dom;

    var callback = {
        success: function(o) {
            Dom.get('ipreview_content').innerHTML = o.responseText;
        },
        failure: function(o) {
            alert('Fehler bei der Übertragung der Vorschaudaten.');
        }
    }

    var addParams = [
        'pcode=stellenangebote',
        'pageid=17',
        'param2='+stellenid,
        'site=de',
        'ajax=1'
    ].join('&');
    YAHOO.util.Connect.asyncRequest('POST', 'page.php?'+addParams, callback);
}

YAHOO.ipreview.show = function (stellenid)
{
    if (!YAHOO.ipreview.instance) {
        YAHOO.ipreview.init();
    }
    YAHOO.ipreview.loadContent(stellenid);
    YAHOO.ipreview.instance.show();
}


/////////////////////
/// AJAX REQUESTS ///
/////////////////////

function ajaxRequest_favorite(requestPage, addId, imageId, imageSrc)
{
    document.getElementById(imageId).src = '/gfx/ajaxload1.gif';
    YAHOO.util.Dom.setStyle(imageId, 'opacity', 1);

    var callback = {
        success: function(o)
        {
            if(document.getElementById(imageId +'_text')) { var textLink = true; }
            var respo = o.responseText.match(/\(AJAX\(.*?\)\)/);

            document.getElementById(imageId).src = imageSrc;

            // Muss "saved" oder "deleted" zurückliefern
            if(respo == '(AJAX(deleted))') {
                YAHOO.util.Dom.setStyle(imageId, 'opacity', 0.35);
                document.getElementById(imageId).title = 'Zu Favoriten hinzuf&uuml;gen';
                if(textLink === true) { document.getElementById(imageId +'_text').innerHTML = 'zu Favoriten hinzuf&uuml;gen'; }
            } else if(respo == '(AJAX(saved))') {
                YAHOO.util.Dom.setStyle(imageId, 'opacity', 1);
                document.getElementById(imageId).title = 'Von Favoriten entfernen';
                if(textLink === true) { document.getElementById(imageId +'_text').innerHTML = 'von Favoriten entfernen'; }
            }
        },

        failure: function(o)
        {
            alert('Code: '+ o.status +': '.o.statusText);
        }
    }
    

    var connObj = YAHOO.util.Connect.asyncRequest('POST', requestPage, callback, 'add2favorites[0]='+addId);
}


function register_rolle_change(rolleElem)
{
    if (rolleElem.value == '2') {
        YAHOO.util.Dom.setStyle(['hauptdaten','bewerber_adresse'], 'display', 'block');
        YAHOO.util.Dom.setStyle(['firmendaten'], 'display', 'none');
    } else if (rolleElem.value == '3') {
        YAHOO.util.Dom.setStyle(['hauptdaten','firmendaten'], 'display', 'block');
        YAHOO.util.Dom.setStyle(['bewerber_adresse'], 'display', 'none');
    } else {
        YAHOO.util.Dom.setStyle(['hauptdaten','firmendaten','bewerber_adresse'], 'display', 'none');
    }
}



function jbs_acds (indexer)
{
    var append = "index=" + indexer;
    if (jbs_acds.arguments.length == 2) {
        append += "&index2=" + jbs_acds.arguments[1];
    }

    ds = new YAHOO.widget.DS_XHR("/JBS_autocomplete.php", ["result.data", "word"]);
    ds.responseType = YAHOO.widget.DS_XHR.TYPE_JSON;
    ds.maxCacheEntries = 30;
    ds.queryMatchSubset = false;
    ds.scriptQueryAppend = append;
    return ds;
}

function jbs_ac(idPrefix, indexerOrDatasource)
{
    if (typeof indexerOrDatasource == 'string') {
        if (jbs_ac.arguments.length == 3) {
            oACDS = jbs_acds(indexerOrDatasource, jbs_ac.arguments[2]);
        } else {
            oACDS = jbs_acds(indexerOrDatasource);
        }
    } else {
        oACDS = indexerOrDatasource;
    }

    if (!document.getElementById(idPrefix+'_searchcontainer')) {
        var acContainer = document.createElement('div');
        acContainer.id = idPrefix+'_searchcontainer';
        document.getElementById(idPrefix+'_searchwrapper').appendChild(acContainer);
    }

    // Instatiate
    oAC = new YAHOO.widget.AutoComplete(idPrefix+'_searchinput',idPrefix+'_searchcontainer', oACDS);
    oAC.useShadow = true;
    oAC.animVert = true;
    oAC.animSpeed = 0.2;
    oAC.delimChar = " ";
    oAC.maxResultsDisplayed = 20;
    oAC.minQueryLength = 1;
    oAC.queryDelay = 0.1;
    oAC.allowBrowserAutocomplete = false;
    oAC.formatResult = function(oResultItem, sQuery) {
        var sKey = oResultItem[0];
        var sQueryLength = sQuery.replace('ä', 'ae').replace('Ä', 'Ae').replace('ö', 'oe').replace('Ö', 'Oe').replace('ü', 'ue').replace('Ü', 'Ue').replace('ß', 'ss').length;

        var sKeyQuery = sKey.substr(0, sQueryLength);
        var sKeyRemainder = sKey.substr(sQueryLength);
        var aMarkup = ['<div><b>',
            sKeyQuery,
            '</b>',
            sKeyRemainder,'</div>'];
        return aMarkup.join('');
    };

    oAC.doBeforeExpandContainer = function(oTextbox, oContainer, sQuery, aResults)
    {
        var pos = YAHOO.util.Dom.getXY(idPrefix+'_searchinput');
        pos[1] += YAHOO.util.Dom.get(idPrefix+'_searchinput').offsetHeight + 2;
        YAHOO.util.Dom.setXY(idPrefix+'_searchcontainer',pos);
        return true;
    };
}




// Um in ein input textfeld standardmäßig ausgegraut etwas zu schreiben
function textfieldInfo(el, initText)
{
    var Dom   = YAHOO.util.Dom,
        Event = YAHOO.util.Event;

    if (typeof el == 'string') {
        el = Dom.get(el);
    }

    if (!el || el.value != '') return;

    // form ermitteln
    var elForm = el.parentNode;
    while (elForm.tagName != 'FORM') {
        if (elForm.tagName == 'BODY') {
            elForm = false;
            break;
        }
        elForm = elForm.parentNode;
    }

    el.value = initText;
    Dom.addClass(el, 'textfield-init-info');

    Event.on(el, 'focus', function() {
        if (el.value == '' || el.value == initText) {
            Dom.removeClass(el, 'textfield-init-info');
            el.value = '';
        }
    });

    Event.on(el, 'blur', function() {
        if (el.value == '') {
            el.value = initText;
            Dom.addClass(el, 'textfield-init-info');
        }
    });

    if (elForm != false && elForm.tagName == 'FORM') {
        Event.on(elForm, 'submit', function() {
            if (el.value == initText) el.value = '';
        });
    }
}


// Mouseover für Fieldsets
var sets = [];
var borderColorBefore;

function fieldsetMouseOver()
{
    var Event = YAHOO.util.Event;

    sets = document.getElementsByTagName('fieldset');

    for (var i = 0; i<sets.length; i++) {
        Event.on(sets[i], 'mouseover', function() {
            borderColorBefore = this.style.borderColor;
            this.style.borderColor = '#64a2d1';
        });
        Event.on(sets[i], 'mouseout', function() {
            this.style.borderColor = borderColorBefore;
        });
    }
}

YAHOO.util.Event.on(window, 'load', fieldsetMouseOver);


// ajax notizen funktionen

function getAjaxNotiz(key)
{
    YAHOO.util.Connect.asyncRequest('GET', '/JBS_ajaxNotiz.php?get='+key, {
        success: function(o) {
            var ret = o.responseText.parseJSON();
            document.getElementById('ajaxNotizText').value = ret.notiz;
            document.getElementById('ajaxKontakteText').value = ret.kontakte;
            document.getElementById('ajaxStrategieText').value = ret.strategie;
            document.getElementById('ajaxInBearbeitung').checked =
                (ret.inbearbeitung == '1' ? true : false);
        },
        failure: function(o) {
        }
    });
}

function saveAjaxNotiz(key)
{
    var postVars = 'notiz=' + encodeURIComponent(document.getElementById('ajaxNotizText').value);
    postVars += '&kontakte=' + encodeURIComponent(document.getElementById('ajaxKontakteText').value);
    postVars += '&strategie=' + encodeURIComponent(document.getElementById('ajaxStrategieText').value);
    postVars += '&inbearbeitung=' + (document.getElementById('ajaxInBearbeitung').checked ? 1 : 0);
    YAHOO.util.Connect.asyncRequest('POST', '/JBS_ajaxNotiz.php?save='+key, {
        success: function(o) {
            document.getElementById('ajaxNotizStatus').innerHTML =
                '<img src="/gfx/tick.png" border="0" /> Gespeichert';
            window.setTimeout("removeAjaxStatus()", 3000);
        },
        failure: function(o) {
        }
    }, postVars);
}

function removeAjaxStatus()
{
    document.getElementById('ajaxNotizStatus').innerHTML = '';
}

function focusAjaxNotiz(id) {
    document.getElementById(id).style.height = '90px';
}

function blurAjaxNotiz(id) {
    window.setTimeout("document.getElementById('"+id+"').style.height = '35px'", 500);
}



