//--------------------------------------------------------------------------
//--------------------------------------------------------------------------
//CONSTANTS                                                        CONSTANTS
//--------------------------------------------------------------------------
//--------------------------------------------------------------------------

//--------------------------------------------------------------------------
//                      DESC TOOL TABLE / GRID
//--------------------------------------------------------------------------

//Desc Tool Table
var DT_COL_NUM          = 4;
var DT_NAME_IDX         = 0;
var DT_TYPE_ID_IDX      = 1;
var DT_TOOL_ID_IDX      = 2;
var DT_DESCR_IDX        = 3;

//Desc Tool Grid
var DG_WIDTH            = 406;
var DG_HEIGHT           = 100;
var DG_SELECTION_MODE   = "single-row"

//--------------------------------------------------------------------------
//                      COMP TOOL TABLE / GRID
//--------------------------------------------------------------------------

//Comp Tool Table
var CT_COL_NUM          = 3;
var CT_NAME_IDX         = 0;
var CT_TOOL_ID_IDX      = 1;
var CT_DESCR_IDX        = 2;

//Comp Tool Grid
var CG_WIDTH            = 406;
var CG_HEIGHT           = 100;
var CG_SELECTION_MODE   = "single-row"

//--------------------------------------------------------------------------
//                      SHAPE TABLE / GRID
//--------------------------------------------------------------------------

//Shape Table
var ST_COL_NUM          = 7
var ST_MODEL_NAME_IDX   = 0;
var ST_MODEL_DESCR_IDX  = 1;
var ST_MODEL_URL_IDX    = 2;
var ST_PERS_NAME_IDX    = 3;
var ST_THUMBNAIL_IDX    = 4;
var ST_SHAPE_ID_IDX     = 5;
var ST_COMP_VALUE_IDX   = 6;

//Shape Grid
var SG_WIDTH                    = 838;
var SG_HEIGHT                   = 300;
var SG_SELECTION_MODE           = "single-row"
var SG_HEADERS                  = ["Name","Description","Url","Person","Image","Id","Rank"];
var SG_ROW_HEIGHT               = 60;
var SG_MODEL_NAME_COL_WIDTH     = 120;
var SG_MODEL_DESCR_COL_WIDTH    = 200;
var SG_MODEL_URL_COL_WIDTH      = 140;
var SG_PERS_NAME_COL_WIDTH      = 120;
var SG_THUMBNAIL_COL_WIDTH      = 60;
var SG_COMP_VALUE_COL_WIDTH     = 120;


//--------------------------------------------------------------------------
//--------------------------------------------------------------------------
//GLOBAL VARIABLES                                          GLOBAL VARIABLES
//--------------------------------------------------------------------------
//--------------------------------------------------------------------------

//--------------------------------------------------------------------------
//                      TABLES / GRIDS
//--------------------------------------------------------------------------

//Desc tools
var g_objDescGrid;
var g_objDescTable;

//Comp tools
var g_objCompGrid;
var g_objCompTable;

//Shapes
var g_objShapeGrid;
var g_objShapeTable;

//Miscellanea
var g_UploadInProgress;
var g_strShapeComparedLabel;

//--------------------------------------------------------------------------
//                      BUTTONS
//--------------------------------------------------------------------------

//Compare button
var g_objCompareButton

//Reset button
var g_objResetButton

//Compare Upload button
var g_objCompareUploadButton

//--------------------------------------------------------------------------
//                      IMAGES
//--------------------------------------------------------------------------
var runImg    = new Image();
var stopImg  = new Image();
runImg.src    = "/AimShapeApplication-war/resources/images/loading.gif";
stopImg.src    = "/AimShapeApplication-war/resources/images/empty.gif";


//--------------------------------------------------------------------------
//--------------------------------------------------------------------------
//FUNCTIONS                                                        FUNCTIONS
//--------------------------------------------------------------------------
//--------------------------------------------------------------------------

//--------------------------------------------------------------------------
//                          InitDescToolGrid
//--------------------------------------------------------------------------
function InitDescToolGrid() {
    var l_strDtDescr;
    var l_objDtResponse;
    var l_nDtRowNum;
    
    //--- Create the object
    g_objDescGrid = new AW.UI.Grid;
    
    //--- Define the layout
    g_objDescGrid.setSelectionMode(DG_SELECTION_MODE);        
    g_objDescGrid.setColumnCount(DT_COL_NUM);
    g_objDescGrid.setSize(DG_WIDTH,DG_HEIGHT);
    g_objDescGrid.setId("desc_grid");	// necessary for CSS rules
    g_objDescGrid.setVirtualMode(false);	// disable virtual mode
    g_objDescGrid.setHeaderVisible(false);
    
    g_objDescGrid.setColumnWidth(DG_WIDTH - 10, DT_NAME_IDX);                   //@SG04

    //--- Create and assign external data model - CSV text table
    g_objDescTable = new AW.CSV.Table;
    //Set synchronous request handling
    g_objDescTable.setAsync(false);
    //Set the function to handle the response event
    l_objDtResponse = g_objDescTable.response;
    g_objDescTable.response = function(text) {
        l_objDtResponse.call(this,text);            
        // Now table loading has been completed: foreach table row set
        // the tooltip with the description of the desc tool
        		                                                        //@SG04 Start
        //l_nDtRowNum = g_objDescTable.getCount();
        //for (i = 0; i < l_nDtRowNum; i++) {
        //    l_strDtDescr = g_objDescTable.getData(DT_DESCR_IDX,i);
        //    g_objDescGrid.setCellTooltip(l_strDtDescr,DT_NAME_IDX,i);
        //}
            									//@SG04 End
   }
    
    g_objDescGrid.setCellModel(g_objDescTable);
    
    //--- Set the function to handle the changing selected row event
    g_objDescGrid.onSelectedRowsChanged = function(objValue) {
        var l_objSelRow;
        var l_strDescTypeId;
        
        if (objValue.length == 1) {
            //Retrieve the desc type id from the selected row
            l_objSelRow = objValue[0];
            l_strDescTypeId = g_objDescGrid.getCellValue(DT_TYPE_ID_IDX,l_objSelRow);
        } 
        else {
            //No selection or multi selection (not allowed): reset the
            //the comp tool grid
            l_strDescTypeId = "";
        }  
        
        LoadCompToolGrid(l_strDescTypeId);
    }
    
    document.write(g_objDescGrid);         
}

//--------------------------------------------------------------------------
//                          ClearDescToolGrid
//--------------------------------------------------------------------------
function ClearDescToolGrid() {
    g_objDescGrid.setRowCount(0);
    g_objDescGrid.refresh();
}

//--------------------------------------------------------------------------
//                          LoadDescToolGrid
//--------------------------------------------------------------------------
function LoadDescToolGrid(strShapeId) {
    var l_strDtUrl;
    
    //--- Always clear before to load new data
    ClearDescToolGrid();
    
    //--- Compute and set the url for the request
    l_strDtUrl = (strShapeId == "") ?
            "/AimShapeApplication-war/fc/ajax/action_2.ajax" :
            "/AimShapeApplication-war/fc/ajax/action_2.ajax?sid="+strShapeId;    
    g_objDescTable.setURL(l_strDtUrl);
        
    //--- Start asynchronous data retrieval
    g_objDescTable.request();                
} 

//--------------------------------------------------------------------------
//                              InitCompToolGrid
//--------------------------------------------------------------------------
function InitCompToolGrid() {
    var l_strCtDescr;
    var l_objCtResponse;
    var l_nCtRowNum;
    
    //--- Create the object
    g_objCompGrid = new AW.UI.Grid;
    
    //--- Define the layout
    g_objCompGrid.setSelectionMode(CG_SELECTION_MODE);
    g_objCompGrid.setColumnCount(CT_COL_NUM);
    g_objCompGrid.setSize(CG_WIDTH,CG_HEIGHT);
    g_objCompGrid.setId("comp_grid");           // necessary for CSS rules
    g_objCompGrid.setVirtualMode(false);        // disable virtual mode
    g_objCompGrid.setHeaderVisible(false);
    
    g_objCompGrid.setColumnWidth(CG_WIDTH - 10, CT_NAME_IDX);                   //@SG04

    //--- Create and assign external data model - CSV text table
    g_objCompTable = new AW.CSV.Table;    
    //Set synchronous request handling
    g_objCompTable.setAsync(false);
    //Set the function to handle the response event
    l_objCtResponse = g_objCompTable.response;        
    g_objCompTable.response = function(text) {
        l_objCtResponse.call(this,text);
        // Now table loading has been completed: foreach table row
        // set the tooltip with the description of the comp tool

        									//@SG04 Start
        //l_nCtRowNum = g_objCompTable.getCount();
        //for (i = 0; i < l_nCtRowNum; i++) {
        //    l_strCtDescr = g_objCompTable.getData(CT_DESCR_IDX,i);
        //    g_objCompGrid.setCellTooltip(l_strCtDescr,CT_NAME_IDX,i);
        //}
            									//@SG04 End
    }    
    
    g_objCompGrid.setCellModel(g_objCompTable);    
    
    document.write(g_objCompGrid);
}

//--------------------------------------------------------------------------
//                          ClearCompToolGrid
//--------------------------------------------------------------------------
function ClearCompToolGrid() {
    g_objCompGrid.setRowCount(0);
    g_objCompGrid.refresh();
}

//--------------------------------------------------------------------------
//                              LoadCompToolGrid
//--------------------------------------------------------------------------
function LoadCompToolGrid(strDescTypeId) {
    var l_strCtUrl;
    
    //--- Always clear before to load new data
    ClearCompToolGrid();
    
    if (strDescTypeId != "") {
        //--- Compute and set the url for the request
        l_strCtUrl = "/AimShapeApplication-war/fc/ajax/action_3.ajax?id="+strDescTypeId;        
        g_objCompTable.setURL(l_strCtUrl);
        
        //--- Start asynchronous data retrieval
        g_objCompTable.request();        
    }
}

//--------------------------------------------------------------------------
//                              InitShapeGrid
//--------------------------------------------------------------------------
function InitShapeGrid() {
    var l_objStResponse;
    //var l_strSgDescr;
    //var l_nSgRowNum;
    
    //--- Create the object
    g_objShapeGrid = new AW.UI.Grid;
    
    //Define the layout
    g_objShapeGrid.setSelectionMode(SG_SELECTION_MODE);
    g_objShapeGrid.setColumnCount(ST_COL_NUM);
    g_objShapeGrid.setSize(SG_WIDTH,SG_HEIGHT);
    g_objShapeGrid.setHeaderText(SG_HEADERS);
    g_objShapeGrid.setId("shape_grid");          // necessary for CSS rules
    g_objShapeGrid.setVirtualMode(false);        // disable virtual mode
    g_objShapeGrid.setSelectorVisible(true);
    g_objShapeGrid.setSelectorWidth(30);                                        //@SG02
              
    g_objShapeGrid.setRowHeight(SG_ROW_HEIGHT);
    g_objShapeGrid.setColumnWidth(SG_MODEL_NAME_COL_WIDTH,ST_MODEL_NAME_IDX);
    g_objShapeGrid.setColumnWidth(SG_MODEL_DESCR_COL_WIDTH,ST_MODEL_DESCR_IDX);
    g_objShapeGrid.setColumnWidth(SG_MODEL_URL_COL_WIDTH,ST_MODEL_URL_IDX);
    g_objShapeGrid.setColumnWidth(SG_PERS_NAME_COL_WIDTH,ST_PERS_NAME_IDX);
    g_objShapeGrid.setColumnWidth(SG_THUMBNAIL_COL_WIDTH,ST_THUMBNAIL_IDX);
    g_objShapeGrid.setColumnWidth(SG_COMP_VALUE_COL_WIDTH,ST_COMP_VALUE_IDX);
    
    //--- Create and assign external data model - CSV text table
    g_objShapeTable = new AW.CSV.Table;
    g_objShapeTable.setURL("");
    g_strShapeComparedLabel = "Shapes List [ All ]";
    
    //--- Hide the work in progress info
    document.imgShape.src=stopImg.src;
        
    //Set the function to handle the response event
    l_objStResponse = g_objShapeTable.response;
    g_objShapeTable.response = function(text) {
        //Now table loading has been completed: Hide the work in progress info
        document.imgShape.src=stopImg.src;

       
        if (text.length <= 0) {
            alert("No values found for the current selection");
        }
        else if (text.indexOf("Error:") == 0) {
            alert(text);
            g_objShapesListLabel.setControlText("Shapes List [Error]");
        }
        else {
            l_objStResponse.call(this,text);

            //g_objShapesListLabel.setControlText(g_strShapeComparedLabel);

            //foreach table row set the tooltip with the description of the
            //shape
            //l_nSgRowNum = g_objShapeTable.getCount();
            //for (i = 0; i < l_nSgRowNum; i++) {
            //    l_strSgDescr = g_objShapeTable.getData(ST_MODEL_DESCR_IDX,i);
            //    g_objShapeGrid.setCellTooltip(l_strSgDescr,ST_MODEL_DESCR_IDX,i);
            //}
        }
                
        g_objShapeTable.setURL("");        
    }    
    
    g_objShapeGrid.setCellModel(g_objShapeTable);
    
    //--- Set the function to for the selctor text
    g_objShapeGrid.setSelectorText(function(i){return this.getRowPosition(i)+1});
    
    //--- Set the function to handle the changing selected row event
    g_objShapeGrid.onSelectedRowsChanged = function(value) {
        var l_strShapeId;
        var l_objSelRow;
        if (value.length == 1) {
            l_objSelRow = value[0];
            l_strShapeId = g_objShapeGrid.getCellValue(ST_SHAPE_ID_IDX, l_objSelRow)
        } 
        else {
            l_strShapeId = "";
        }
        
        LoadDescToolGrid(l_strShapeId);
        LoadCompToolGrid("");
    }
    
    
    document.write(g_objShapeGrid);
}

//--------------------------------------------------------------------------    
//                          ClearShapeGrid
//--------------------------------------------------------------------------
function ClearShapeGrid() {
    g_objShapeGrid.setRowCount(0);
    g_objShapeGrid.refresh();
}

//--------------------------------------------------------------------------
//                          LoadShapeGridAll
//--------------------------------------------------------------------------
function LoadShapeGridAll() {
    var l_strStUrl;
            
    l_strStUrl = g_objShapeTable.getURL();
    if (l_strStUrl != "") {
        alert("Error: Previous request management is in progress");
    } else {        
        //--- Show the work in progress info
        document.imgShape.src=runImg.src;
        
        //--- Always clear before to load new data
        ClearShapeGrid();
        
        //--- Compute ans set the url for the request
        l_strStUrl = "/AimShapeApplication-war/fc/ajax/action_1.ajax";    
        g_objShapeTable.setURL(l_strStUrl);  
        
        //--- Set the shape grid label
        g_strShapeComparedLabel = "Shapes List [ All ]";            
        g_objShapesListLabel.setControlText(g_strShapeComparedLabel);
      
        //--- Start asynchronous data retrieval
        g_objShapeTable.request();
    }
}

//--------------------------------------------------------------------------
//                          LoadShapeGridCompared
//--------------------------------------------------------------------------
function LoadShapeGridCompared() {
    var l_strShapeId, l_strDescToolTypeId, l_strCompToolId, l_strStUrl;
    var l_strShapeName, l_strDescToolName, l_strCompToolName;
    var l_strShapeImageUrl;
    var l_objGridSelRows, l_objSelRow, l_objStResponse;        
    var l_objDescGridSelRows, l_objDescSelRow;        
    var l_objCompGridSelRows, l_objCompSelRow;        
    var l_strErrMsg = "";
    
    //Retrieve shape id and name
    l_objGridSelRows = g_objShapeGrid.getSelectedRows();
    if (l_objGridSelRows.length == 1) {
        l_objSelRow = l_objGridSelRows[0];
        l_strShapeId = g_objShapeGrid.getCellValue(ST_SHAPE_ID_IDX,l_objSelRow);            
        l_strShapeName = g_objShapeGrid.getCellValue(ST_MODEL_NAME_IDX,l_objSelRow);
	l_strShapeImageUrl = g_objShapeGrid.getCellValue(ST_THUMBNAIL_IDX,l_objSelRow);	
    } else {
        l_strErrMsg += "\tShape is not selected\n";
    }
    
    //Retrieve desc tool type id and name
    l_objDescGridSelRows = g_objDescGrid.getSelectedRows();
    if (l_objDescGridSelRows.length == 1) {
        l_objDescSelRow = l_objDescGridSelRows[0];
        l_strDescToolTypeId = g_objDescGrid.getCellValue(DT_TYPE_ID_IDX,l_objDescSelRow);
        l_strDescToolTypeName = g_objDescGrid.getCellValue(DT_NAME_IDX,l_objDescSelRow);
    } else {
        l_strErrMsg += "\tDesc tool is not selected\n";
    }
    
    //Retrieve comp tool id and name
    l_objCompGridSelRows = g_objCompGrid.getSelectedRows();
    if (l_objCompGridSelRows.length == 1) {
        l_objCompSelRow = l_objCompGridSelRows[0];
        l_strCompToolId = g_objCompGrid.getCellValue(CT_TOOL_ID_IDX,l_objCompSelRow);
        l_strCompToolName = g_objCompGrid.getCellValue(CT_NAME_IDX,l_objCompSelRow);
    } else {
        l_strErrMsg += "\tComp tool is not selected\n";
    }
    
    if (l_strErrMsg != "") {
        alert("Error: Missing parameter selection\n\n" + l_strErrMsg);        
    } else {        
        l_strStUrl = g_objShapeTable.getURL();
        if (l_strStUrl != "") {
            alert("Error: Previous request management is in progress");
        } else {
            //--- Show the work in progress info
            document.imgShape.src=runImg.src;

            //--- Always clear before to load new data
            ClearShapeGrid();
            LoadDescToolGrid("");
            LoadCompToolGrid("");

            //--- Set the shape grid label
            g_strShapeComparedLabel = 'Shapes List [' + 
                                                    ' Shape: ' + l_strShapeName +
                                                    ', Descriptor: ' + l_strDescToolTypeName +
                                                    ', Methodology: ' + l_strCompToolName +
						    ', Image: ' + l_strShapeImageUrl + 
                                                    ' ]';
            g_objShapesListLabel.setControlText(g_strShapeComparedLabel);
            

            //--- Compute and set the url for the request
            l_strStUrl =
            "/AimShapeApplication-war/fc/ajax/action_4.ajax"    +
            "?sid=" + l_strShapeId                              +
            "&tid="+l_strDescToolTypeId                         +
            "&cid="+l_strCompToolId;
            g_objShapeTable.setURL(l_strStUrl);
                        
            //--- Start asynchronous data retrieval
            g_objShapeTable.request();
        }
    }
}


//--------------------------------------------------------------------------
//                          LoadShapeGridComparedForUpload
//--------------------------------------------------------------------------
function LoadShapeGridComparedForUpload() {
        
    var l_strDescToolTypeId, l_strCompToolId, l_strStUrl;
    var l_objGridSelRows, l_objSelRow, l_objStResponse;        
    var l_strShapeName, l_strDescToolName, l_strCompToolName;
    var l_objDescGridSelRows, l_objDescSelRow;        
    var l_objCompGridSelRows, l_objCompSelRow;  
    var l_strErrMsg = "";

    //Retrieve shape id and name
    l_strShapeName = "Uploaded";            
    
    //Retrieve desc tool type id and name
    l_objDescGridSelRows = g_objDescGrid.getSelectedRows();
    if (l_objDescGridSelRows.length == 1) {
        l_objDescSelRow = l_objDescGridSelRows[0];
        l_strDescToolTypeId = g_objDescGrid.getCellValue(DT_TYPE_ID_IDX,l_objDescSelRow);
        l_strDescToolTypeName = g_objDescGrid.getCellValue(DT_NAME_IDX,l_objDescSelRow);
    } else {
        l_strErrMsg += "\tDesc tool is not selected\n";
    }
    
    //Retrieve comp tool id and name
    l_objCompGridSelRows = g_objCompGrid.getSelectedRows();
    if (l_objCompGridSelRows.length == 1) {
        l_objCompSelRow = l_objCompGridSelRows[0];
        l_strCompToolId = g_objCompGrid.getCellValue(CT_TOOL_ID_IDX,l_objCompSelRow);
        l_strCompToolName = g_objCompGrid.getCellValue(CT_NAME_IDX,l_objCompSelRow);
    } else {
        l_strErrMsg += "\tComp tool is not selected\n";
    }
        
    if (l_strErrMsg != "") {
        alert("Error: Missing parameter selection\n\n" + l_strErrMsg);        
    } else {
        l_strStUrl = g_objShapeTable.getURL();
        if (l_strStUrl != "") {
            alert("Error: Previous request management is in progress");
        } else {
            //--- Show the work in progress info
            document.imgShape.src=runImg.src;
            
            //--- Always clear before to load new data
            ClearShapeGrid();
            LoadDescToolGrid("");
            LoadCompToolGrid("");

            //--- Set the shape grid label
            g_strShapeComparedLabel = "Shapes List [" + 
                                                    " Shape: " + l_strShapeName +
                                                    ", Descriptor: " + l_strDescToolTypeName +
                                                    ", Methodology: " + l_strCompToolName +
                                                    " ]";
            g_objShapesListLabel.setControlText(g_strShapeComparedLabel);

            //--- Compute and set the url for the request
            l_strStUrl =
            "/AimShapeApplication-war/fc/ajax/action_6.ajax"    +
            "?tid="+l_strDescToolTypeId                         +
            "&cid="+l_strCompToolId;
            g_objShapeTable.setURL(l_strStUrl);
            
            //--- Start asynchronous data retrieval
            g_objShapeTable.request();
        }
    }
}

//--------------------------------------------------------------------------
//                          InitCompareButton
//--------------------------------------------------------------------------
function InitCompareButton() {
    g_objCompareButton = new AW.UI.Button;
    g_objCompareButton.setControlText("Compare Selected Shape");
    
    //--- Set the function to handle the on click event
    g_objCompareButton.onControlClicked = function(event) {
        LoadShapeGridCompared();
    };
    
    document.write(g_objCompareButton);
}

//--------------------------------------------------------------------------
//                          InitResetButton
//--------------------------------------------------------------------------
function InitResetButton() {
    g_objResetButton = new AW.UI.Button;
    g_objResetButton.setControlText("Reload All Shapes");
    
    //--- Set the function to handle the on click event
    g_objResetButton.onControlClicked = function(event) {
        var l_strStUrl;
        l_strStUrl = g_objShapeTable.getURL();
        if (l_strStUrl != "") {
            alert("Error: Previous request management is in progress");
        } else {        
            LoadDescToolGrid("");
            LoadCompToolGrid("");
            LoadShapeGridAll();
        }
    };
    
    document.write(g_objResetButton);
}

//--------------------------------------------------------------------------
//                          InitCompareUploadButton
//--------------------------------------------------------------------------
function InitCompareUploadButton() {
    g_objCompareUploadButton = new AW.UI.Button;
    g_objCompareUploadButton.setControlText("Compare Uploaded File");
    
    //--- Set the function to handle the on click event
    g_objCompareUploadButton.onControlClicked = function(event) {
        LoadShapeGridComparedForUpload();
    };
    
    document.write(g_objCompareUploadButton);
}

//--------------------------------------------------------------------------
//                          InitShapesListLabel
//--------------------------------------------------------------------------
function InitShapesListLabel() {
    g_objShapesListLabel = new AW.UI.Label;
    g_objShapesListLabel.setId("shape_label");
    g_objShapesListLabel.setStyle("font-size","12");
    g_objShapesListLabel.setStyle("font-weight","bold");
    g_objShapesListLabel.setStyle("font-style","italic");
    g_objShapesListLabel.setStyle("height","50px");
    g_objShapesListLabel.setControlText("Shapes List [ All ]");
    
    document.write(g_objShapesListLabel);
}

//--------------------------------------------------------------------------
//                          InitSelectedShapeImage
//--------------------------------------------------------------------------
function InitSelectedShapeImage() {
    g_objSelectedShapeImage = new AW.UI.Label;
    g_objSelectedShapeImage.setId("shape_image_label");
    g_objSelectedShapeImage.setControlImage("runImg");
    
    document.write(g_objSelectedShapeImage);
}

//--------------------------------------------------------------------------
//                          InitDTLabel
//--------------------------------------------------------------------------
function InitDTLabel() {
    g_objDTLabel = new AW.UI.Label;
    g_objDTLabel.setId("DT_label");
    g_objDTLabel.setStyle("font-size","12");
    g_objDTLabel.setStyle("font-weight","bold");
    g_objDTLabel.setStyle("font-style","italic");
    g_objDTLabel.setControlText("Shape Descriptors");
    
    document.write(g_objDTLabel);
}

//--------------------------------------------------------------------------
//                          InitCTLabel
//--------------------------------------------------------------------------
function InitCTLabel() {
    g_objCTLabel = new AW.UI.Label;
    g_objCTLabel.setId("CT_label");
    g_objCTLabel.setStyle("font-size","12");
    g_objCTLabel.setStyle("font-weight","bold");
    g_objCTLabel.setStyle("font-style","italic");
    g_objCTLabel.setControlText("Comparison Methodologies");
    
    document.write(g_objCTLabel);
}

//--------------------------------------------------------------------------
//                          InitFULabel
//--------------------------------------------------------------------------
function InitFULabel() {
    g_objFULabel = new AW.UI.Label;
    g_objFULabel.setId("FU_label");
    g_objFULabel.setStyle("font-size","12");
    g_objFULabel.setStyle("font-weight","bold");
    g_objFULabel.setStyle("font-style","italic");
    g_objFULabel.setControlText("File Uploading [None]");
    
    document.write(g_objFULabel);

}

//--------------------------------------------------------------------------
//                          InitFNLabel
//--------------------------------------------------------------------------
function InitFNLabel() {
    g_objFNLabel = new AW.UI.Label;
    g_objFNLabel.setId("FN_label");
    g_objFNLabel.setControlText("File: ");
    
    document.write(g_objFNLabel);
}
