/**------------------------------------------------------------------------
 * Set of function and classes which deal with smi ticker
 *
 * Dependencies:
 *
 * Author: dai
 *
 * @version $Id: SmiTicker.js,v 1.1 2011/04/12 08:32:26 obo Exp $
 *
 *-----------------------------------------------------------------------*/

TICKER_DELTA_UP_COLOR         = "green";         // color used when closing delta >= 0
TICKER_DELTA_DOWN_COLOR        = "red";           // color used when closing delta < 0
TICKER_DELTA_NEUTRAL_COLOR     = "black";            // color used when closing delta < 0

TICKER_DELTA_UP_IMG_SRC        = "/resources/images/smi_ticker/arrow_up.png";
TICKER_DELTA_DOWN_IMG_SRC      = "/resources/images/smi_ticker/arrow_down.png";
TICKER_DELTA_NEUTRAL_IMG_SRC   = "/resources/images/smi_ticker/arrow_neutral.png";


function tickerUpdateCell(updateEvent){

        var col = dojo.byId("ticker_"+updateEvent.rowid+"_"+updateEvent.columnid);
        var value = updateEvent.newValue.replace(/[\s]/g, '');
        /* if value is null or less than one char this should not update the ticker data */
        /* value.length > 1 instead of value != '' is an ie fix because when no update data we */
        /*  have a unknown character in the value field with ie and nothing with ff */
        if ( col && value != null && value.length > 1) {
           if ( updateEvent.columnid == "ClosingDelta" ){
             var delta = updateEvent.newValue.substr(0,updateEvent.newValue.length-1);
             var imgArrow = dojo.byId("ticker_"+updateEvent.rowid+"_arrow");
             value = value + " ";
             var imgArrowRelURL = imgArrow.src.substring(imgArrow.src.indexOf('/', 8), imgArrow.src.length);

             if ( delta > 0 ){
               if( imgArrowRelURL != TICKER_DELTA_UP_IMG_SRC) {
                imgArrow.src = TICKER_DELTA_UP_IMG_SRC;
                col.style.color = TICKER_DELTA_UP_COLOR;
               }
               value = "+" + value;
             }
             else if ( delta < 0 ){
               if( imgArrowRelURL != TICKER_DELTA_DOWN_IMG_SRC) {
                imgArrow.src = TICKER_DELTA_DOWN_IMG_SRC;
                col.style.color = TICKER_DELTA_DOWN_COLOR;
               }
             }
             else{
               if( imgArrowRelURL != TICKER_DELTA_DOWN_IMG_SRC) {
                imgArrow.src = TICKER_DELTA_NEUTRAL_IMG_SRC;
                col.style.color = TICKER_DELTA_NEUTRAL_COLOR;
               }
             }
           }
           col.innerHTML = value;
        }

}

