$( document ).ready( function()
{
    //---------------------------------------------------------------------------------------
    // Slider Strom
    //---------------------------------------------------------------------------------------
    
    var sliderPwrMap = [ 1500, 2000, 2500, 3000, 4000, 5000, 6000, 7000, 8000, 9000, 10000 ];
    var sliderPersMap = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 ];
    var mapLengthPwr = sliderPwrMap.length;
    var kwhInputPwr = $( "#kwh_strom" );

    $( "#slider_strom" ).slider({
        value:2,
        min: 1,
        max: mapLengthPwr,
        step: 1,
        slide: function( event, ui )
        {
            kwhInputPwr.val( sliderPwrMap[ ui.value-1 ] );
            $( "#pers_strom" ).text( sliderPersMap[ ui.value-1 ] );
        }
    });
    
    var setPwrSliderByEntry = function()
    {
        for( var i=0; i<mapLengthPwr; i++ )
        {
            if
            (
                i == mapLengthPwr-1 ||
                kwhInputPwr.val() <= ( sliderPwrMap[ i ] + sliderPwrMap[ i+1 ] ) / 2
            )
            {
                $( "#slider_strom" ).slider( 'value', i+1 );
                
                var gt = kwhInputPwr.val() > sliderPwrMap[ mapLengthPwr-1 ] ? '&gt; ' : '';
                $( "#pers_strom" ).html( gt + (i+1) );
                
                break;
            }
        }
    };
    
    if( kwhInputPwr.val() == '' )
    {
        kwhInputPwr.val( sliderPwrMap[ 1 ] );
        $( "#pers_strom" ).text( sliderPersMap[ 1 ] );
    }
    else
    {
        setPwrSliderByEntry();
    }
    
    kwhInputPwr.keyup( setPwrSliderByEntry );

    /*
    $( '#strom_minus' ).click( function()
    {
        var pwrSlider = $( "#slider_strom" );
        pwrSlider.slider( 'value', pwrSlider.slider( 'option', 'value' ) - 1 );
    });
    
    $( '#strom_plus' ).click( function()
    {
    	var pwrSlider = $( "#slider_strom" );
    	pwrSlider.slider( 'value', pwrSlider.slider( 'option', 'value' ) + 1 );
    });
    */

    //---------------------------------------------------------------------------------------
    // Slider Erdgas
    //---------------------------------------------------------------------------------------
    var sliderGasMap = [ 1000, 4000, 7000, 10000, 15000, 20000, 25000, 30000, 35000, 40000, 45000, 50000 ];
    var sliderSqmMap = [ 30, 45, 60, 75, 100, 125, 150, 175, 200, 225, 250, 300 ];
    var mapLengthGas = sliderGasMap.length;
    var kwhInputGas = $( "#kwh_gas" );
    
    $( "#slider_gas" ).slider({
        value:3,
        min: 1,
        max: mapLengthGas,
        step: 1,
        slide: function( event, ui )
        {
            kwhInputGas.val( sliderGasMap[ ui.value-1 ] );
            $( "#sqm_gas" ).text( sliderSqmMap[ ui.value-1 ] );
        }
    });
    
    var setGasSliderByEntry = function()
    {
        for( var i=0; i<mapLengthGas; i++ )
        {
            if
            (
                i == mapLengthGas-1 ||
                kwhInputGas.val() <= ( sliderGasMap[ i ] + sliderGasMap[ i+1 ] ) / 2
            )
            {
                $( "#slider_gas" ).slider( 'value', i+1 );
                
                var ltgt = '';
                if( kwhInputGas.val() < sliderGasMap[ 0 ] ) ltgt = '&lt; ';
                else if( kwhInputGas.val() > sliderGasMap[ mapLengthGas-1 ] ) ltgt = '&gt; ';
                $( "#sqm_gas" ).html( ltgt + sliderSqmMap[ i ] );
                
                break;
            }
        }
    };
    
    if( kwhInputGas.val() == '' )
    {
        kwhInputGas.val( sliderGasMap[ 2 ] );
        $( "#sqm_gas" ).text( sliderSqmMap[ 2 ] );
    }
    else
    {
        setGasSliderByEntry();
    }
    
    kwhInputGas.keyup( setGasSliderByEntry );
    
    //---------------------------------------------------------------------------------------
    // Startzustand und Wechsel zwischen Rechnerarten
    //---------------------------------------------------------------------------------------
    $( '.energycalc' ).css( 'position', 'relative' );
    $( '.energycalc' ).css( 'height', $( '.energycalc .sliderarea' ).css( 'height' ) );
    $( '.energycalc .sliderarea' ).css( 'position', 'absolute' );
    
    $( '.switchtopwr' ).click( function()
    {
        $( '#gascalc' ).fadeOut( 'slow' );
        $( '#pwrcalc' ).fadeIn( 'slow' );
        return false;
    });
    
    $( '.switchtogas' ).click( function()
    {
        $( '#pwrcalc' ).fadeOut( 'slow' );
        $( '#gascalc' ).fadeIn( 'slow' );
        return false;
    });
    
    //---------------------------------------------------------------------------------------
    // Kundentyp zwischen Energiearten synchron halten
    //---------------------------------------------------------------------------------------
    $( '#privat_strom' ).click( function(){ $( "#privat_gas" ).attr( "checked", "checked" ); } );
    $( '#privat_gas' ).click( function(){ $( "#privat_strom" ).attr( "checked", "checked" ); } );
    
    $( '#gewerbe_strom' ).click( function(){ $( "#gewerbe_gas" ).attr( "checked", "checked" ); } );
    $( '#gewerbe_gas' ).click( function(){ $( "#gewerbe_strom" ).attr( "checked", "checked" ); } );

});
