/*
 * -----------------------------------------
 * g.labs GmbH Game Management Framework V1
 * -----------------------------------------
 * by g.labs GmbH
 * (c) 2006 - 2009 g.labs GmbH
 * -----------------------------------------
 * web: http://www.g-labs.de
 * Email: info@g-labs.de
 * -----------------------------------------
 *
 * > public/js/xajax.js
 * > Script written by Ronny Beer
 * > Date started: 22st August 2006
 *
 * > Code: 783 lines
 * > Revision:  5.01
 *
 * ---------------------------------
 */
var last_id = false;
var last_ansicht = 1;

function session()
{
   return Session;
}
function modul()
{
   return Modul;
}

function loading( wo )
{
    document.getElementById( wo ).innerHTML = document.getElementById( 'loading' ).innerHTML;
}

function select_ansicht(div)
{
    a = document.getElementById(div).value;//selectedIndex;
    return a;
}

function andere_function()
{
    create_konto_right( last_ansicht );
}

function create_konto_left( id )
{
    last_ansicht = id;
    loading( 'left' );
    xajax_konto_left( session(), modul(), id, select_ansicht('ansicht') );
}

function create_konto_right( id )
{
    last_ansicht = id;
    loading( 'right' );
    if( id == 5 )
        param = "guv_month"
    else
        param = "ansicht";
    xajax_konto_right( session(), modul(), id, select_ansicht(param) );
}

function create_menue( id )
{
    if( document.getElementById('m_'+id).style.display == 'none' )
    {
        document.getElementById('m_'+id).style.display = 'block';

        if( document.getElementById('m_'+id).innerHTML == '' )
        {
           last_ansicht = id;
           loading( 'm_'+id );
           create_konto_right( id );
           xajax_untermenue( session(), modul(), id, select_ansicht('ansicht') );
        }
        if( last_id != false && document.getElementById('m_'+last_id) && last_id != id )
            document.getElementById('m_'+last_id).style.display = 'none';

        last_id = id;
    }
    else if(  document.getElementById('m_'+id).style.display == 'block' )
    {
        document.getElementById('m_'+id).style.display = 'none';
        create_konto_right( id );
    }
}

function reset_berechne_entferung()
{
    send = 1;
    submit_button_enable('rechnen', berechnen );
    document.getElementById('zeit').innerHTML='';
}

function berechne_entfernung( ziel )
{
    if( send == 1 )
    {
        send = 2;
        submit_button_disable('rechnen');
        xajax_berechne_entfernung( session(), modul(), ziel, document.getElementById('ziel_field').options[document.getElementById('ziel_field').selectedIndex].value );
    }
    else
        document.getElementById('form_r').submit();
}

function submit_button_disable( id )
{
    xajax.$(id).disabled=true;
    xajax.$(id).value="please wait...";
}

function submit_button_enable(id, value)
{
    xajax.$(id).disabled=false;
    xajax.$(id).value=value;
}

function fabrik_personal( f, mod, e_id )
{
    xajax_fabrik_personal( session(), modul(), f, document.getElementById(f).value, mod, e_id );
}

function fabrik_add( e_id )
{
    xajax_fabrik_add( session(), modul(), e_id );
}

function fabrik_cancel( id )
{
    if( id )
        xajax_fabrik_cancel( session(), modul(), id );
}

function map_info( id )
{
    if( id )
        xajax_map_info( session(), modul(), id );
}

function bank_transfer()
{
    f_id = document.getElementById('f_id').value
    f_id_ziel = document.getElementById('f_id_ziel').value
    id = document.getElementById('geld').value

    xajax_bank_transfer(session(), modul(), f_id, f_id_ziel, id);
}

function bank_update_transfer()
{
    f_id = document.getElementById('f_id').value
    xajax_bank_update_transfer(session(), modul(), f_id);
}

var ajax = {
    fade : true,
    request : true,
    iblinkon : false,
    isIE : navigator.appVersion.toLowerCase().indexOf("msie")!==-1,
    balpha : 20,
    features   : "scrollbars=yes,resizable=yes,width=420,height=440,left=55,top=55",
    o : function(id) {
        return document.getElementById(id);
    },
    modul : function() {
        return modul();
    },
    session : function() {
        return session();
    },
    get : function() {
        var _GET = new Array();
        var params = unescape(location.search.substring(1,location.search.length)).split("&");
        for(var i=0;i<params.length;i++)
        {
            param = params[i].split("=");
            _GET[param[0]] = param[1];
        }
        return _GET;
    },
    openWindow : function(url, name, features) {
        window.open( ''+url+'', ''+name+'', !features ? this.features : features);
    },
    hide : function(id, m) {
        if (!m && this.o(id))
            this.o(id).style.display = "none";
        else if(m && this.o(id))
            this.o(id).style.visibility = "hidden";
    },
    show : function(id, m) {
        if (!m && this.o(id))
            this.o(id).style.display = "block";
        else if(m && this.o(id))
            this.o(id).style.visibility = "visible";
    },
    _switch : function(id, m) {
        if (!m) {
            if (this.o(id) && this.o(id).style.display == "none")
                this.o(id).style.display = "block";
            else if (this.o(id) && this.o(id).style.display == "block")
                this.o(id).style.display = "none";
        } else {
            if (this.o(id) && this.o(id).style.display.visibility == "hidden")
                this.o(id).style.visibility = "visible";
        else if (this.o(id) && this.o(id).style.visibility == "visible")
            this.o(id).style.display.visibility = "hidden";
        }
    },
    ls : function(a, m) {
        for (i=1;i<a.length;++i) {
            if (!m && this.o(a[i]))
                eval("this."+a[0]+"(\""+a[i]+"\");");
            else if (m && this.o(a[i]))
                eval("this."+a[0]+"(\""+a[i]+"\", \""+m+"\");");
        }
    },
    FadeElement : function(richtung, time, id, start, ende, schritte, block){
        if (this.fade == false) {
            this.fade = true;
            return;
        }
        wert = time*1000 / schritte*1;
        if (richtung == 'in') {
            neuer_wert = start*1 + 100 / wert * 1;
        if (neuer_wert > ende)
            return;
        } else {
            neuer_wert = start*1 - 100 / wert * 1;
            if (neuer_wert < ende)
                return;
        }
        if(this.o(id).style.display != 'block')
            this.o(id).style.display = 'block';
        this.alpha(id, neuer_wert);

        setTimeout("ajax.FadeElement('"+richtung+"', '"+time+"', '"+id+"', '"+neuer_wert+"', '"+ende+"', '"+schritte+"', '"+block+"')", schritte);
    },
    AddTimer : function(id, start, ende, r) {
        if (ende > start) {
            if(this.o(id))
                this.o(id).innerHTML = time_counter(start*1+1*1,ende);
            setTimeout("ajax.AddTimer('"+id+"',"+(start*1+1*1)+ ","+ende+",1)",1000);
        }
    },
    Request : function (m) {
        if (m == true || m == 1 || m == "1" || m == "true")
            this.request = true;
        else
            this.request = false;
    },
    iblink : function (id, wert) {
        if (!wert)
            wert = 100;
        var time = Math.floor(Math.random() * 250);
        if (this.iblinkon == true) {
            this.alpha(id, wert);
        }
        setTimeout("ajax.iblink('"+id+"', "+(wert == 100 ? ajax.balpha : 100)+");", time);
    },
    alpha : function(id, wert) {
        if(this.isIE)
            this.o(id).style.filter = 'alpha(opacity='+parseInt(wert)+')';
        else
            this.o(id).style.opacity = parseFloat(wert/100);
    },
    entertainment : {
        get_dynamic : function() {
            xajax_get_dynamic(ajax.session(), ajax.modul());
        },
        click_dynamic : function(dynId, action) {
            xajax_click_dynamic(ajax.session(), ajax.modul(), dynId, action);
        },
        go_to_easter_egg : function(action) {
            xajax_easter_egg(ajax.session(), ajax.modul(), action);
        }
    },
    selectTab : function( styleOn, styleOff, idOn, idsOff ) {
      this.o(idOn).className = styleOn;

      for (i = 0; i < idsOff.length; i++)
      {
         if ((idsOff[i] != "undefined") && (idsOff[i] != "") && (idsOff[i] != null)) {
            this.o(idsOff[i]).className = styleOff;
         }
      }
    },
    konzern : {
        kid : null,
        view : null,
        nummer : 0,
        count : 0,
        kontoalpha : 65,
        last_build : -1,
        regid : function(id) {
            this.kid = id;
        },
        _init : function() {
            xajax.loadingFunction = function() {
                document.body.style.cursor = "wait";
                ajax.iblinkon = true;
            };
            xajax.doneLoadingFunction = function(){
                document.body.style.cursor = "normal";
                ajax.iblinkon = false;
                ajax.alpha("loading", ajax.balpha);

            };
            xajax.loadingTimeout = 500;
            ajax.iblink("loading");
        },
        info : function(id) {
            if (id)
                ajax.konzern.regid(id);
            xajax_konzern_info(ajax.session(), ajax.modul(), this.kid);
        },
        _switch : function(id) {
            if(this.view != null) {
                ajax.hide(this.id);
                ajax.show(id);
            }
            this.view = id;
        },
        infomembers : function() {
            xajax_konzern_info_members(ajax.session(), ajax.modul(), this.kid);
        },
        apply : function() {
            xajax_konzern_user_bewerbung(ajax.session(), ajax.modul(), this.kid, ajax.o("bw_text").value);
        },
        create : function() {
            xajax_konzern_create(ajax.session(), ajax.modul(), ajax.o("konzernname").value);
        },
        login : function() {
            xajax_konzern_login(ajax.session(), ajax.modul());
            //this._switch("startinfo");
        },
        logout : function() {
            xajax_konzern_logout(ajax.session(), ajax.modul());
        },
        settings : function() {
            xajax_konzern_settings(ajax.session(), ajax.modul());
        },
        save : function(modul) {
            switch (modul) {
                case "setting":
                    xajax_konzern_settings_save(ajax.session(), ajax.modul(), ajax.o("monatsbeitrag").value, ajax.o("konzentext").value, ajax.o("monthly_charge").value, ajax.o("dividende").value);
                break;
            }
        },
        show_bewerbungen : function(m, count, start) {
            if (start) {
                this.nummer = 0;
            }
            if (m == "next") {
                ++ this.nummer;
            } else {
                -- this.nummer;
            }
            if (count) {
                this.count = count;
            }
            xajax_konzern_show_bewerbungen(ajax.session(), ajax.modul(), this.nummer, start);
        },
        to_accept_bid : function(id) {
            xajax_konzern_bewerbungen(ajax.session(), ajax.modul(), 1, id);
        },
        to_dismiss_bid : function(id) {
            xajax_konzern_bewerbungen(ajax.session(), ajax.modul(), 2, id);
        },
        build : function(group) {
            if(!group) {
                ajax.Request(true);
                group = 0;
                this.last_build = -1;
            }
            if(ajax.request == true && group != this.last_build) {
                ajax.Request(false);
                xajax_konzern_build(ajax.session(), ajax.modul(), group);
                this.last_build = group;
            }
        },
        build_start : function(group) {
            xajax_konzern_build_start(ajax.session(), ajax.modul(), group);
        },
        showBuildInfo : function() {
            ajax.fade = true;
            ajax.FadeElement('in', 1, "bdetailsInfo", 0, 90, 20, 1);
        },
        hideBuildInfo : function() {
            ajax.fade = false;
            ajax.o("bdetailsInfo").style.display="none";
        },
        personal : function(m, id) {
            if(!id)
                id = 0;
            if(!m)
                m = 0;
            anzahl = ajax.o('anzahl_'+id) ? ajax.o('anzahl_'+id).value : 0;
            xajax_konzern_personal(ajax.session(), ajax.modul(), id, m, anzahl);
        },
        hidePersonalInfo : function() {
            ajax.fade = false;
            ajax.o("pdetailsInfo").style.display="none";
        },
        showPersonalInfo : function() {
            ajax.fade = true;
            ajax.FadeElement('in', 1, "pdetailsInfo", 0, 90, 20, 1);
        },
        konto : function() {
            xajax_konzern_konto(ajax.session(), ajax.modul());
        },
        KontoOption : function() {
            if(ajax.o("kontoOption").checked == true) {
                ajax.hide("kontoListe");
                ajax.show("kontoZeit");
            } else {
                ajax.show("kontoListe");
                ajax.hide("kontoZeit");
            }
        },
        KontoChange : function() {
            if(ajax.o("kontoID") && ajax.o("kontoZ")) {
                xajax_konzern_konto_details(ajax.session(), ajax.modul(), ajax.o("kontoID").value, ajax.o("kontoZ").value);
            }
        },
        kmembers : function() {
            xajax_konzern_members(ajax.session(), ajax.modul());
        },
        editGroup : function(id) {
            ajax.hide("kmdetailsInfo");
            xajax_konzern_editGroup(ajax.session(), ajax.modul(), id);
        },
        setGroup : function(id, group) {
            xajax_konzern_setGroup(ajax.session(), ajax.modul(), id, group);
        },
        delMember : function(id) {
            xajax_konzern_delMember(ajax.session(), ajax.modul(), id);
        },
        ShowBuilding : function(id) {
            xajax_konzern_ShowBuilding(ajax.session(), ajax.modul(), id)
        },
        EquipmentSendStep : function(step, args) {
            if(step == 1) {
                xajax_konzern_EquipmentSendStep(ajax.session(), ajax.modul(), step, args);
            } else if (step >= 2 && args > 0) {
                xajax_konzern_EquipmentSendStep(ajax.session(), ajax.modul(), step, args);
            }
        },
        TLagerSendStep : function(step, args) {
            xajax_konzern_TLagerSendStep(ajax.session(), ajax.modul(), step, args);
        },
        FixKosten : function() {
            var version = navigator.appVersion;
            var nummer = version.substring(0, version.indexOf(".")) *1;
            if( navigator.appVersion.toLowerCase().indexOf("msie")!==-1 && nummer <= 4 )
            {
                if( ajax.o("TLagerSend") )
                {
                    id = ajax.o("TLagerSend").value;
                    if( ajax.o("op_k_"+id) )
                        ajax.o("TInfo1").innerHTML = ajax.o("op_k_"+id).value;
                    if( ajax.o("op_d_"+id) )
                        ajax.o("TInfo2").innerHTML = ajax.o("op_d_"+id).value;
                }
            }
        },
        TLagerInfo : function(preis, dauer) {
            ajax.o("TInfo1").innerHTML = preis;
            ajax.o("TInfo2").innerHTML = dauer;
        },
        HQMoneySendStep : function(step, args) {
            xajax_konzern_HQMoneySendStep(ajax.session(), ajax.modul(), step, args);
        },
        HQInfo : function(kosten, dauer, menge) {
            ajax.o("TInfo1").innerHTML = kosten;
            ajax.o("TInfo2").innerHTML = dauer;
            //ajax.o("TInfo3").innerHTML = menge;
        },
            austreten : function(step) {
            xajax_konzern_austretten(ajax.session(), ajax.modul(), step);
        },
        callHexagon : function(view, arg1, arg2) {
            if(!arg1)
                xajax_konzern_callHexagon(ajax.session(), ajax.modul(), view);
            else if(!arg2)
                xajax_konzern_callHexagon(ajax.session(), ajax.modul(), view, arg1);
            else
                xajax_konzern_callHexagon(ajax.session(), ajax.modul(), view, arg1, arg2);
        },
        aktienOverview : function() {
            xajax_konzern_aktienOverview(ajax.session(), ajax.modul());
        },
        // News Rödel des Konzerns
        readNews : function( )
        {
            xajax_konzern_readNews(ajax.session(), ajax.modul());
        },
        writeNews : function( )
        {
            xajax_konzern_writeNews(ajax.session(), ajax.modul());
        },
        insertNews : function( )
        {
            xajax_konzern_insertNews(ajax.session(), ajax.modul(), ajax.o("text").value );
        },
        deleteNews : function( id )
        {
            xajax_konzern_deleteNews(ajax.session(), ajax.modul(), id );
        },
        stats : function(uid,typ,move,side)
        {
            xajax_konzern_MoveStats(ajax.session(), ajax.modul(),uid,typ,move,side);
            //alert(uid,typ,move);
        }
    },
    // Konzern Forum
    board : {
        // Forum öffnen
        openBoard : function()
        {
            xajax_board_openBoard(ajax.session(), ajax.modul());
        },
        // Vorlage öffnen
        newTopic : function( t_id )
        {
            xajax_board_newTopic(ajax.session(), ajax.modul(), t_id );
        },
        readTopic : function( id )
        {
            xajax_board_readTopic(ajax.session(), ajax.modul(), id );
        },
        insert : function( t_id )
        {
            xajax_board_insert(ajax.session(), ajax.modul(), t_id, ajax.o( "thema" ).value, ajax.o( "text" ).value );
        },
        del : function( param, id )
        {
            xajax_board_delete(ajax.session(), ajax.modul(), param, id );
        }
    },
    // Konzern Verträge
    contract : {
        show : function(id,typ)
        {
            xajax_contract_show(ajax.session(),ajax.modul(),id,typ);
        },
        closing : function()
        {
            ajax.o("contract").innerHTML = "";
            ajax.hide("contract");
            ajax.konzern.login();
        },
        details : function(id,number)
        {
            xajax_contract_details(ajax.session(),ajax.modul(),id,number);
        }
    },
    // Konzern Transfer .....
    // Fuel Sachen
    roh_transfer : function ( fuel, menge, f_id )
    {
        xajax_create_konzern_div_fuel( this.session(), this.modul(), fuel, menge, f_id );
    },
    // Equipmentteile
    equip_transfer : function( typ, menge, f_id )
    {
        xajax_create_konzern_div_equip( this.session(), this.modul(), typ, menge, f_id );
    },
    fuel_fill : function ()
    {
        var a = this.o("select_menge").value;

        this.o("cost").innerHTML = transfer_kosten[a]+" $";
        this.o("time").innerHTML = (transfer_zeit[a]/60)+" "+lang["min"];
    },
    ToKonzern : function ( id ) {
        var b = this.o("select_menge").options[ this.o("select_menge").selectedIndex ].text;
        if( id == 1 )
        xajax_fuel_to_konzern( this.session(), this.modul(), fuel, b, f_id );
        else if( id == 2 )
        xajax_equip_to_konzern( this.session(), this.modul(), e_typ, b, f_id );
    },
    // gericht
    conviction : function ( id, typ ) {
        if( typ == 2 )
        {
            for (var i = 0; i < document.getElementsByName('verh').length; i++)
            {
                if( ajax.o('v_'+i) && ajax.o('v_'+i).checked == true )
                    typ = ajax.o('v_'+i).value * 1 + 5;
            }
        }
        xajax_conviction( this.session(), this.modul(), id, typ );
    },
    prangerHelp : function( id ) {
        xajax_info( this.session(), this.modul(), id );
    },
    prozessCom : function( id, typ ) {
        var arg1 = "";
        if( typ == 0 )
        {
            arg1 = this.o("comment").value;
            typ = this.o("typ").value;
        }
        xajax_prozessComment( this.session(), this.modul(), id, typ , arg1 );
    },
    loadCom : function( id ) {
        xajax_getComment( this.session(), this.modul(), id );
    },
    // Bank Ansicht
    bank : {
        init : function() {
            xajax_start_info( ajax.session(), ajax.modul(), ajax.get() );
        },
        artikel : function( id ) {
            xajax_select_artikel( ajax.session(), ajax.modul(), id );
        },
        info : function( id ) {
            xajax_artikel_info( ajax.session(), ajax.modul(), id );
        },
        fach : function() {
            xajax_schliessfach( ajax.session(), ajax.modul() );
        },
        konto : function() {
            xajax_konto_auszug( ajax.session(), ajax.modul() );
        },
        scheck : function(action) {
            xajax_gold_barren( ajax.session(), ajax.modul(), action );
        },
        rechne : function(id) {
            if( id == 1 )
            {
                var field_1 = "goldbarren";
                var field_2 = "ergebniss";
            }
            else
            {
                var field_1 = "goldbarren_2";
                var field_2 = "ergebniss_2";
            }
            var menge = ajax.o("menge").value;

            if( menge * ajax.o(field_1).value >= 0 && ajax.o(field_1).value <= ajax.o("gold").innerHTML*1 )
            {
                erg = menge * ajax.o(field_1).value;
                ajax.o(field_2).innerHTML = format_float( erg, 0, '', '.' );
            }
            else
            {
                if( ajax.o(field_1).value > ajax.o("gold").innerHTML*1 )
                    ajax.o(field_1).value = ajax.o("gold").innerHTML*1;
                else if( ajax.o("gold").innerHTML*1 > 0 )
                    ajax.o(field_1).value = 1;
                else
                    ajax.o(field_1).value = 0;

                this.rechne(id);
            }
        },
        submit_barren : function() {
            xajax_submit_barren( ajax.session(), ajax.modul(), ajax.o("goldbarren").value );
        },
        submit_feature : function() {
            var out = new Array;
            for( i = 1; i <=8 ; i++ )
            {
                if( ajax.o("ppo_"+i) )
                {
                    if( ajax.o("ppo_"+i).checked == true )
                        out[i] = 1;
                    else
                        out[i] = 0;
                }
            }
            xajax_submit_feature( ajax.session(), ajax.modul(), out );
        },
        submit_monat : function() {
            xajax_konto_auszug( ajax.session(), ajax.modul(), ajax.o("monat").value );
        },
        skills : function(action) {
            xajax_skills( ajax.session(), ajax.modul(), action );
        },
        submit_skills : function() {
            xajax_submit_skills( ajax.session(), ajax.modul(), ajax.o("saboteur").value, ajax.o("goldbarren_2").value );
        },
        check_barren : function() {
            if( ajax.o("goldbarren").value > ajax.o("gold").innerHTML*1 )
            {
                ajax.o("goldbarren").value = ajax.o("gold").innerHTML*1;
            }
        },
        gift : function(modus) {
            arg1 = "";
            arg2 = "";
            if(modus == 2)
            {
                arg1 = ajax.o("goldbarren").value;
                arg2 = ajax.o("name").value;
            }
            xajax_gift( ajax.session(), ajax.modul(), arg1, arg2 );
        },
		editname : function()
		{
			xajax_editname( ajax.session(), ajax.modul(), 1, "" );
		},
		submit_editname : function(name) {
			xajax_editname( ajax.session(), ajax.modul(), 2, name );
		},
		item_mall : function(arg1) {
			xajax_item_mall( ajax.session(), ajax.modul(), arg1);
		},
        buy_feature : function(id, action)
        {
            var out = new Array;
            out[id] = 1;
            xajax_submit_feature( ajax.session(), ajax.modul(), out, action );
        },
        buy_sat : function(action) {
            xajax_defense_level(ajax.session(), ajax.modul(), action);
        },
        submit_defense : function() {
         out = 0;
         for( i = 0 ; i <= 4 ; i++ )
         {
            if (document.getElementById("defense").dauer[i] && document.getElementById("defense").dauer[i].checked == true)
               out = i + 1;
         }
         if( out == 0 )
         {
            alert('nix ausgewählt');
         }
         else
            xajax_defense_booking(ajax.session(), ajax.modul(), out);
        },
        optimize : function() {
         xajax_optimize(ajax.session(), ajax.modul());
        },
        oilrig : function(action) {
         xajax_oilrig(ajax.session(), ajax.modul(),action);
        },
        buy_oilrig : function() {
         xajax_buy_oilrig(ajax.session(), ajax.modul(), ajax.o('exp_id').value, ajax.o('action').value, ajax.o('field').value);
        },
        expinfo : function(id) {
         xajax_exp_info(ajax.session(), ajax.modul(), id);
        },
        expbutton : function(id) {
         if(ajax.o(id).checked == true)
         {
            ajax.o('exp_submit').disabled = false;
            ajax.o('exp_id').value = id;
            ajax.show('f_name');
         }
         else
         {
            ajax.o('exp_submit').disabled = true;
            ajax.hide('f_name');
         }
        },
        holiday : function(action) {
         xajax_holiday(ajax.session(), ajax.modul(), action);
        },
        holiday_booking : function(action) {
         start = 0;
         end = 0;
         cancel = 0;

         if(ajax.o("start") && ajax.o("start"))
         {
            start = ajax.o("start").value;
            end = ajax.o("end").value;
         }
         if(ajax.o("cancel") && ajax.o("cancel").checked==true)
            cancel = 1;

         xajax_holiday_booking(ajax.session(), ajax.modul(), start, end, cancel, action);
        },
        holiday_calc : function(action) {
         $st_len = ajax.o("start").value.length;
         $en_len = ajax.o("end").value.length;
         if( $st_len == 10 && $en_len == 10 )
            xajax_holiday_calc(ajax.session(), ajax.modul(), ajax.o("start").value, ajax.o("end").value, action);
        },
        infos : function(id, modus, action) {
         if(id != 0) {
            //ajax.o('help_h').innerHTML = lang["ih_"+id];
            //ajax.o('help_t').innerHTML = lang["it_"+id];
            xajax_infos(ajax.session(), ajax.modul(), id, modus, action);
         }
         else {
            ajax.o("help_h").innerHTML = " ";
            ajax.o("help_t").innerHTML = " ";
         }
        },
        get_payment : function(id, mod, action) {
         xajax_getPayment( ajax.session(), ajax.modul(), id, mod, action );
        }
    },
    show_friend_detail : function(uid) {
        xajax_friend_details(ajax.session(),ajax.modul(),uid);
    },
    stockMarket : {
        init : function( step) {
            xajax_initStockMarket( ajax.session( ), ajax.modul( ), step);
        },
        startExchange : function( ) {
            xajax_startExchange( ajax.session( ), ajax.modul( ));
        }
    },
    // Aktientausch-Ansicht
    aktientausch : {
        // Aktientausch-Angebot erstellen
        searchStock : function( )
        {
            xajax_searchStock( ajax.session( ), ajax.modul( ), ajax.o( "stock_search_input").value);
        },
        selectStock : function( aktName)
        {
            xajax_selectStock( ajax.session( ), ajax.modul( ), aktName);
        },
        selectRespondent : function( userName)
        {
            xajax_selectRespondent( ajax.session( ), ajax.modul( ), userName);
        },
        finishStockRequest : function( )
        {
            xajax_finishStockRequest( ajax.session( ), ajax.modul( ), ajax.o( "stock_count_input").value);
        },
        selectOwnStock : function( aktName)
        {
            xajax_selectOwnStock( ajax.session( ), ajax.modul( ), aktName);
        },
        finishStockOffer : function( )
        {
            var stockAmount = 0;
            if( ajax.o( "stock_count_input")) {
                stockAmount = ajax.o( "stock_count_input_owner").value;
            }
            xajax_finishStockOffer( ajax.session( ), ajax.modul( ), stockAmount);
        },
        submitOffer : function( )
        {
            var payment = 0;
            if( ajax.o( "comp_payment_input" ) ) {
                payment = ajax.o( "comp_payment_input").value;
            }
            var offererPays = 1;
            if( ajax.o( "chargeRespondent" ) && ajax.o( "chargeRespondent" ).checked) {
                  offererPays = 0;
            }
            xajax_submitOffer( ajax.session( ), ajax.modul( ), payment, offererPays);
        },
        initOfferOverview : function( step)
        {
            xajax_initStockMarket(ajax.session( ), ajax.modul( ), step);
        },
        editOwnOffer : function( )
        {
            xajax_editOwnOffer( ajax.session( ), ajax.modul( ));
        },
        acceptOffer : function( )
        {
            xajax_acceptOffer( ajax.session( ), ajax.modul( ));
        },
        declineOffer : function( )
        {
            xajax_declineOffer( ajax.session( ), ajax.modul( ));
        },
        respondToOffer : function( )
        {
            xajax_respondToOffer( ajax.session( ), ajax.modul( ));
        },
        showOfferDetails : function( aktId, step ) {
            xajax_showOfferDetails( ajax.session(), ajax.modul(), aktId, step );
        },
        toggleCompPayment : function () {
            xajax_toggleCompPayment( ajax.session(), ajax.modul() );
        },
        submitPayment : function( ) {
            var payment = 0;
            if( ajax.o( "comp_payment_input" ) ) {
                payment = ajax.o( "comp_payment_input").value;
            }
            var offererPays = 1;
            if( ajax.o( "chargeRespondent" ) && ajax.o( "chargeRespondent" ).checked) {
                  offererPays = 0;
            }
            xajax_submitPayment( ajax.session( ), ajax.modul( ), payment, offererPays);
        },
         rechne : function() {
            this.kurs     = ajax.o("this_kurs").value * 1;
            this.menge    = ajax.o("stock_count_input_owner").value * 1;

            if(this.menge < 0 || typeof(this.menge) != "number") {
                    this.menge = 0;
                    control.elm("menge").value = 0;
            }

            this.preis    = this.kurs * this.menge;

            if(this.gebuhr < 0)
                    this.gebuhr = 0;

            ajax.o("this_price").innerHTML  = format_float(this.preis, 0, "", ".")+" $";
         }
    },
    luxury : {
        indexStart : function(level)
        {
            xajax_indexStart(ajax.session(), ajax.modul(), level);
        },
        indexOverview : function()
        {
            xajax_indexOverview(ajax.session(), ajax.modul());
        },
        shopPurchaseEstate : function(level)
        {
            xajax_shopPurchaseEstate(ajax.session(), ajax.modul(), level);
        },
        shopPurchaseItem : function(itemId)
        {
            xajax_shopPurchaseItem(ajax.session(), ajax.modul(), itemId);
        },
        shopSelectItemGroup : function(level, itemGroupId)
        {
            xajax_shopSelectItemGroup(ajax.session(), ajax.modul(), level, itemGroupId);
        },
        shopShowEstateDetails : function(level)
        {
            xajax_shopShowEstateDetails(ajax.session(), ajax.modul(), level);
        },
        shopShowItemDetails : function(itemId)
        {
            xajax_shopShowItemDetails(ajax.session(), ajax.modul(), itemId);
        },
        shopStart : function(level, itemGroupId)
        {
            xajax_shopStart(ajax.session(), ajax.modul(), level, itemGroupId);
        },
        shopShowSpeedupOption : function(userItemId)
        {
            xajax_shopShowSpeedupOption(ajax.session(), ajax.modul(), userItemId);
        },
        shopPurchaseSpeedup : function(userItemId)
        {
            xajax_shopPurchaseSpeedup(ajax.session(), ajax.modul(), userItemId);
        }
    },
    infoBox : {
        setWindowState : function(state)
        {
            xajax_setWindowState(ajax.session(), ajax.modul(), state);
        },
        selectCategory : function(id)
        {
            xajax_selectCategory(ajax.session(), ajax.modul(), id);
        },
        submitCampaignCode : function()
        {
            if (ajax.o("campaign_code"))
            {
                xajax_submitCampaignCode(ajax.session(), ajax.modul(), ajax.o("campaign_code").value);
            }
        }
    },
    management : {
        purchaseBuildingUpgradeSpeedup : function(id)
        {
            xajax_purchaseBuildingUpgradeSpeedup(ajax.session(), ajax.modul(), id);
        }
    },
    canolaField : {
        sow : function(parcelId, seedId, sowerId)
        {
            xajax_sow(ajax.session(), ajax.modul(), parcelId, seedId, sowerId);
        },
        reap : function(parcelId, reaperId)
        {
            xajax_reap(ajax.session(), ajax.modul(), parcelId, reaperId);
        },
        getProcessForParcel : function(parcelId)
        {
            xajax_getProcessForParcel(ajax.session(), ajax.modul(), parcelId);
        },
        buyItem : function(itemType, itemId, amount)
        {
            xajax_buyItem(ajax.session(), ajax.modul(), itemType, itemId, amount);
        },
        checkForNextAchievement : function()
        {
            xajax_checkForNextAchievement(ajax.session(), ajax.modul());
        },
        purchaseParcel : function()
        {
            xajax_purchaseParcel(ajax.session(), ajax.modul());
        }
    },
    notifications : {
        disable : function(actionId)
        {
            xajax_disableUserNotification(ajax.session(), ajax.modul(), actionId);
        }
    }
};

