var gameurl = "ajax/game_ajax.php";

var tabs = document.getElementsByTagName("li");

function toggleDiv(divID)
{
	var toggleDiv = $('Run_'+divID);
	new Effect.toggle(toggleDiv,'appear',{duration:  0.5});
}

function toggleAdvancedDiv(divID)
{
	var toggleDiv = $('toggle_'+divID);
	new Effect.toggle(toggleDiv,'appear',{duration:  0.5});
}
function quickRun( iFuelLoadModel, iFuelConsumptionModel, iEmissionsModel, iPlumeRiseModel, iDispersionModel )
{
    quickFuelLoad( iFuelLoadModel, iFuelConsumptionModel, iEmissionsModel, iPlumeRiseModel, iDispersionModel );
}

function quickFuelLoad( iFuelLoadModel, iFuelConsumptionModel, iEmissionsModel, iPlumeRiseModel, iDispersionModel )
{
    new Ajax.Request
    (
        gameurl,
        {
            method: 'post',
            parameters: {method: 'quickFuelLoad', iModel: iFuelLoadModel},
            onSuccess: function(transport)
            {    
                var response = transport.responseText.evalJSON();
                if(response.msg == "Success")
                { 
                    $('fuelLoad').innerHTML = response.sModel;
                }
                else
                {
                    $('fuelLoad').innerHTML = "<img src='images/cross.gif' alt='An Error occurred while running the Fuel Loading model requested' title='An Error occurred while running the Fuel Loading model requested' />";
                }
            },
            onComplete: function(transport)
            {
                tabs[1].setAttribute('id','visited');
                quickFuelConsumption( iFuelConsumptionModel, iEmissionsModel, iPlumeRiseModel, iDispersionModel );
            },
            onFailure: function(transport)
            {
                $('fuelLoad').innerHTML = "<img src='images/cross.gif' alt='An Error occurred while running the Fuel Loading model requested' title='An Error occurred while running the Fuel Loading model requested' />";
            }
        }
    );
}

function quickFuelConsumption( iFuelConsumptionModel, iEmissionsModel, iPlumeRiseModel, iDispersionModel )
{
    new Ajax.Request
    (
        gameurl,
        {
            method: 'post',
            parameters: {method: 'quickFuelConsumption', iModel: iFuelConsumptionModel},
            onSuccess: function(transport)
            {
                var response = transport.responseText.evalJSON();
                if(response.msg == "Success")
                {
                    $('fuelConsumption').innerHTML = response.sModel;
                }
                else
                {
                    $('fuelConsumption').innerHTML = "<img src='images/cross.gif' alt='An Error occurred while running the Fuel Consumption model requested' title='An Error occurred while running the Fuel Consumption model requested' />";
                }
            },
            onComplete: function(transport)
            {
                tabs[2].setAttribute('id','visited');
                quickEmissions( iEmissionsModel, iPlumeRiseModel, iDispersionModel );
            },
            onFailure: function(transport)
            {
                $('fuelConsumption').innerHTML = "<img src='images/cross.gif' alt='An Error occurred while running the Fuel Consumption model requested' title='An Error occurred while running the Fuel Consumption model requested' />";
            }
        }
    );
}

function quickEmissions( iEmissionsModel, iPlumeRiseModel, iDispersionModel )
{
    new Ajax.Request
    (
        gameurl,
        {
            method: 'post',
            parameters: {method: 'quickEmissions', iModel: iEmissionsModel},
            onSuccess: function(transport)
            {
                var response = transport.responseText.evalJSON();
                if(response.msg == "Success")
                {
                    $('emissions').innerHTML = response.sModel;
                }
                else
                {
                    $('emissions').innerHTML = "<img src='images/cross.gif' alt='An Error occurred while running the Emissions model requested' title='An Error occurred while running the Emissions model requested' />";
                }
            },
            onComplete: function(transport)
            {
                tabs[3].setAttribute('id','visited');
                quickPlumeRise( iPlumeRiseModel, iDispersionModel );
            },
            onFailure: function(transport)
            {
                $('emissions').innerHTML = "<img src='images/cross.gif' alt='An Error occurred while running the Emissions model requested' title='An Error occurred while running the Emissions model requested' />";
            }
        }
    );
}

function quickPlumeRise( iPlumeRiseModel, iDispersionModel )
{
    new Ajax.Request
    (
        gameurl,
        {
            method: 'post',
            parameters: {method: 'quickPlumeRise', iModel: iPlumeRiseModel},
            onSuccess: function(transport)
            {
                var response = transport.responseText.evalJSON();
                if(response.msg == "Success")
                {
                    $('plumeRise').innerHTML = response.sModel;
                }
                else
                {
                    $('plumeRise').innerHTML = "<img src='images/cross.gif' alt='An Error occurred while running the Plume Rise model requested' title='An Error occurred while running the Plume Rise model requested' />";
                }
            },
            onComplete: function(transport)
            {
                tabs[4].setAttribute('id','visited');
                quickSmoke( iDispersionModel );
            },
            onFailure: function(transport)
            {
                $('plumeRise').innerHTML = "<img src='images/cross.gif' alt='An Error occurred while running the Plume Rise model requested' title='An Error occurred while running the Plume Rise model requested' />";
            }
        }
    );
}

function quickSmoke( iDispersionModel )
{
    new Ajax.Request
    (
        gameurl,
        {
            method: 'post',
            parameters: {method: 'quickSmoke', iModel: iDispersionModel},
            onSuccess: function(transport)
            {
                var response = transport.responseText.evalJSON();
                if(response.msg == "Success")
                {
                    $('smoke').innerHTML = response.sModel;
                }
                else
                {
                    $('smoke').innerHTML = "<img src='images/cross.gif' alt='An Error occurred while running the Smoke Dispersion model requested' title='An Error occurred while running the Smoke Dispersion model requested' />";
                }
            },
            onComplete: function(transport)
            {
                tabs[5].setAttribute('id','visited');
            },
            onFailure: function(transport)
            {
                $('smoke').innerHTML = "<img src='images/cross.gif' alt='An Error occurred while running the Smoke Dispersion model requested' title='An Error occurred while running the Smoke Dispersion model requested' />";
            }
        }
    );
}

function checkFireInfo(step)
{
    var success = false;

    new Ajax.Request
    (
        gameurl,
        {
            method: 'post',
            parameters: {method: 'checkFireInfo'},
            onSuccess: function(transport)
            {
                var response = transport.responseText.evalJSON();
            },
            onComplete: function(transport)
            {
                tabs[0].setAttribute('id','visited');

                if( step > 1 )
                {
                    checkFuelLoad(step);
                }
                return true;
            },
            onFailure: function(transport){}
        }
    );
}

function checkFuelLoad( step )
{
    new Ajax.Request
    (
        gameurl,
        {
            method: 'post',
            parameters: {method: 'checkFuelLoad'},
            onSuccess: function(transport)
            {
                var response = transport.responseText.evalJSON();
            },
            onComplete: function(transport)
            {
                tabs[1].setAttribute('id','visited');
                if( step > 2 )
                {
                    checkFuelConsumption(step);
                }
            },
            onFailure: function(transport){}
        }
    );
}

function checkFuelConsumption( step )
{
    new Ajax.Request
    (
        gameurl,
        {
            method: 'post',
            parameters: {method: 'checkFuelConsumption'},
            onSuccess: function(transport)
            {
                var response = transport.responseText.evalJSON();
            },
            onComplete: function(transport)
            {
                tabs[2].setAttribute('id','visited');
                if( step > 3 )
                {
                    checkEmissions(step);
                }
            },
            onFailure: function(transport)
            {}
        }
    );
}

function checkEmissions( step )
{
    new Ajax.Request
    (
        gameurl,
        {
            method: 'post',
            parameters: {method: 'checkEmissions'},
            onSuccess: function(transport)
            {
                var response = transport.responseText.evalJSON();
            },
            onComplete: function(transport)
            {
                tabs[3].setAttribute('id','visited');
                if( step > 4 )
                {
                    //checkEmissions(step);
                }
            },
            onFailure: function(transport)
            {}
        }
    );
}

function openReportWindow()
{
    var location = "report.php";
    window.open(location, "BlueskyPlaygroundReport",'width=800, height=800, resizable = 1, menubar=1, toolbar=1, scrollbars=1');
}

function openDialog(url)
{
        window.open(url, "BlueskyDialog",'width=450, height=350, resizable = 1, menubar=0, toolbar=0, scrollbars=1');
}