//global var
//var tokenName = "org.apache.struts.taglib.html.TOKEN";
var tokenName = "token";
var url_HOMEDEPOT = "http://www.homedepot.com/webapp/wcs/stores/servlet/StoreFinderView?langId=-1&storeId=10051&catalogId=10053";
var optionSelectedid;
var optionSelectedvalue;
var rqtControl_STEP = "1";
var rqtControl_FDFV = "2";
var rqtControl_OPT = "3";
var rqtControl_OPT_NEXT = "1";
var rqtControl_OPT_OK = "2";
var rqtControl_OPT_CANCEL = "3";
var rqtControl_MOVE = "4";
var step;
var rpath = "../images/";

var div_extPaint = 'ExteriorPaint';
var div_intPaint = 'InteriorPaint';
var div_samePaint = 'SamePaint';
var div_PaintMatch = 'Question2';

function unavailable() {
}

function nextAction() {
//  var elmt = document.getElementById( "load" );
//  elmt.style.visibility = "show";
  var args = nextAction.arguments;
  ajaxObject = createAjaxObj();
  ajaxObject.onreadystatechange=function() {
    if (ajaxObject.readyState == 4) { 
        if (ajaxObject.status==200) {
            parasData(); 
        }
        else {
            alert( "error: " + ajaxObject.status );
        }
    }
  }
  var submitURL = getSubmitURL() + "?" + tokenName + "=" + token;
  if ( args.length >= 1 ) {
     submitURL +="&control="+args[0];
     for ( var i = 1; i < args.length; i++ ) {
        submitURL += "&arg" + i + "=" + args[i];
     }
  }
  else {
     alert( "Invalid argument" );
  }
// alert( submitURL );
  ajaxObject.open('GET', submitURL, true);
  ajaxObject.send(null);
}

function refreshPricing( pricing ) {
//alert( "pricing" );
      var total;
      var optionTotal;

      var name = [];
      var value = [];
      var price = [];
      var baseName = "";
      var baseValue = "";
      var basePrice = "";
      var optionTotal = "";
      var total = "";

      var elmt, baseInput, optionInput, totalInput;
      var base = getXMLNode( pricing, "base" );
      baseName = getXMLValue( base, "name" );
      baseValue = getXMLValue( base, "value" );
      basePrice = getXMLValue( base, "price" );

      optionTotal = getXMLValue( pricing, "optiontotal" );
      total = getXMLValue( pricing, "total" );
//      baseInput = document.getElementById( "baseprice" );
//      optionInput = document.getElementById( "optionprice" );
      totalInput = document.getElementById( "totalprice" );
//      baseInput.value = basePrice;
//      optionInput.value = optionTotal;
      totalInput.value = total;

      var items = getXMLNodes( pricing, "item" );
      var result ="<table>";
      result += '<tr><td colspan="3"><b>Price Detail</b></td></tr>';
      result += '<tr><td colspan="3"></td></tr>';
      result += '<tr><td valign="top" width="65" align="left" >' + baseName + '</td><td  width="65" align="left" >' + baseValue + '</td><td valign="top" align="right"  width="60" >' + basePrice + '</td></tr>';
      result += '<tr><td colspan="3"></td></tr>';

      for (var i=0;i<items.length;i++) {
//        name[i] = getXMLValue( items[i], "name" );
        value[i] = getXMLValue( items[i], "value" );
        price[i] = getXMLValue( items[i], "price" );
        result += '<tr><td colspan="2" valign="top" align="left" >' + value[i] + '</td><td valign="top" align="right" >' + price[i] + '</td></tr>';
      }
      result += '<tr><td colspan="3"><hr/></td></tr>';
      result += '<tr><td valign="top" align="left" >Total</td><td></td><td valign="top" align="right" >' + total + '</td></tr>';
      result += "</table>";


      elmt = document.getElementById( "pricingdetail" );
      elmt.innerHTML = result;
}

function refreshSize( size ) {
//alert( "size" );

      var elmt;
      var ro = getXMLNode( size, "ro" );
      var roW = getXMLValue( ro, "width" );
      var roH = getXMLValue( ro, "height" );

      roWH = document.getElementById( "rowidth" );
      roWH.value = roW;
      roWH = document.getElementById( "roheight" );
      roWH.value = roH;
}


function refreshInfo( info ) {
//alert( "info" );
      currentInfo = info;
      var name = [];
      var value = [];
      var code = [];
      var elmt;
      var lines = getXMLNodes( info, "line" );
      var valuenode;

      var result ='<table width="100%" height="90" cellpadding="0" cellspacing="5">';
      for (var i=0;i<lines.length;i++) {
        name[i] = getXMLValue( lines[i], "name" );
        value[i] = getXMLValue( lines[i], "value" );
        code[i] = getXMLValue( lines[i], "code" );
        if ( code[i] != 'CBINFO_OPTION' ) {
            result += '<tr height="14" >';
            result += '<td width="110" align="left" valign="top" class="style10">' + name[i] + '</td>';
            result += '<td width="370" align="left" valign="top" class="style10" style="color: #000000;" bgcolor="#FFFFFF">' + value[i] + '</td>';
            result += '</tr>';
        }
      }
      result += "</table>";

      elmt = document.getElementById( "info" );
      elmt.innerHTML = result;
}

function refreshViewDelay( view ) {
//alert( "view" );
      var divid = [];
      var img = [];
      var hide = "";
      var hideE, load;
      var components = getXMLNodes( view, "component" );

      load = document.getElementById( "load" );
      load.style.display = "block";

      for (var i=0;i<components.length;i++) {
        divid[i] = getXMLValue( components[i], "divid" );
        img[i] = getXMLValue( components[i], "img" );
        hide += '<img src="' + rpath + img[i] + '" border="0" />';
      }
      hideE = document.getElementById( "hide" );
      hideE.innerHTML = hide;

      window.setTimeout( _refreshViewDelay( view ), 2000 );
}
function _refreshViewDelay( view ) {
    return function() { refreshView( view ); }
}
function refreshView( view ) {
//alert( "view" );
      var divid = [];
      var img = [];
      var result = "";
      var elmt, load;
      var components = getXMLNodes( view, "component" );

      load = document.getElementById( "load" );
      load.style.display = "none";

      for (var i=0;i<components.length;i++) {
        divid[i] = getXMLValue( components[i], "divid" );
        img[i] = getXMLValue( components[i], "img" );
        result += '<div id="' + divid[i] + '"><img src="' + rpath + img[i] + '" border="0" /></div>';
      }
      if ( result.length > 0 ) {
        elmt = document.getElementById( "view" );
        elmt.innerHTML = result;
      }
}

function refreshOption( option ) {
//alert( "option" );
      var tab1content = document.getElementById( "ConfigurationContent" );
      var tab2container = document.getElementById( "Configuration2container" );
      var tab2content = document.getElementById( "Configuration2content" );

      var etitle = document.getElementById( "ConfigurationTabTitle" );
      var elmt = document.getElementById( "ConfigurationSelect" );
      var title = getXMLValue( option, "title" );
      etitle.innerHTML = title.toUpperCase();
      tab2container.style.display = "none";
      tab1content.style.height = "340px";

      var fdid = [];
      var name = [];
      var value = [];
      var status = [];
      var flag = [];
      var elmt;
      var lines = getXMLNodes( option, "item" );

      var result = '<table width="100%" class="Blk15px" >';
      result += '<tr align="center">';
      result += '<td width="20" valign="middle" bgcolor="#CCCCCC" class="Blk15px"></td>';
      result += '<td width="180" height="20" align="center" valign="middle" bgcolor="#CCCCCC" class="Blk15px">Item</td>';
      result += '<td align="center" valign="middle" bgcolor="#CCCCCC" class="Blk15px">Current Value</td>';
      result += '</tr>';
      var bgcolor = "#efefef";
      for (var i=0;i<lines.length;i++) {
        fdid[i] = getXMLValue( lines[i], "fdid" );
        name[i] = getXMLValue( lines[i], "name" );
        value[i] = getXMLValue( lines[i], "value" );
        status[i] = getXMLValue( lines[i], "status" );
        flag[i] = getXMLValue( lines[i], "flag" );
        if ( flag[i] == "1" ) {
            result += '<tr ONMOUSEOVER="activeRow(this,\'#D8EBFC\')" ONMOUSEOUT="inactiveRow(this)" ONCLICK="nextAction( ' + rqtControl_FDFV + ',' + fdid[i] + ',0 )" valign="top" bgcolor="' + bgcolor + '" >';
        }
        else {
            result += '<tr valign="top" bgcolor="' + bgcolor + '" >';
        }
        if ( flag[i] == "1" ) {
            if ( name[i] == "" || status[i] != "1" ) {
                result += '<td align="left" ><img src="../images/guielements/EmptyCheckBox.png" width="18" height="19" border="0" /></td>';
            }
            else {
                result += '<td align="left" ><img src="../images/guielements/CheckedBox.png" width="18" height="19" border="0" /></td>';
            }
            result += '<td align="left" class="Orange15px" >' + name[i] + '</td>';
        }
        else {
            result += '<td align="left" ><img src="../images/guielements/GrayCheckBox.png" width="18" height="19" border="0" /></td>';
            result += '<td align="left" class="Blk15px" >' + name[i] + '</td>';
        }
        if ( status[i] == "1" ) {
            if ( flag[i] == "1" ) {
                result += '<td align="left" class="Orange15px" >' + value[i] + '</td>';
            }
            else {
                result += '<td align="left" class="Blk15px" >' + value[i] + '</td>';
            }
        }
        else {
            result += '<td align="left" class="Gry15px" >' + value[i] + '</td>';
        }
        result += '</tr>';
        if ( bgcolor == "#efefef" ) {
            bgcolor = "#ffffff";
        }
        else {
            bgcolor = "#efefef";
        }
      }
      result += "</table>";
      elmt.innerHTML = result;
}

function refreshControl( control ) {
//alert( "control" );
      var elmt;
      var result = "";
      var buttons = getXMLNodes( control, "button" );
      var url;
      var img;
      var imgTag;

      for (var i=0;i<buttons.length;i++) {
        url = getXMLValue( buttons[i], "url" );
        img = getXMLValue( buttons[i], "img" );
        if ( img != 'finish' ) {
            imgTag = '<img src="' + rpath + img + '" border="0" />';
            if ( url == 'cart' ) {
//                result += '<a href="../tecomm/cartaddconfig.action" >' + imgTag + '</a>';
            }
            else if ( url != 'none' ) {
                result += '<a href="javascript:nextAction(' + url + ')" >' + imgTag + '</a>';
            }
            else {
                result += imgTag;
            }
            result += '&nbsp;&nbsp;';
        }
      }
      elmt = document.getElementById( "control" );
      elmt.innerHTML = result;
}

function refreshNavigation( navigation ) {
//alert( "navigtion" );

      var name = [];
      var url = [];

      var result = "";
      var elmt;

      var pages = getXMLNodes( navigation, "page" );
      for (var i=0;i<pages.length;i++) {
        name[i] = getXMLValue( pages[i], "name" );
        url[i] = getXMLValue( pages[i], "url" );
        result += '| <a href="javascript:nextAction(' + url[i] + ')" >' + name[i] + '</a> ';
      }
      if ( result.length > 1 ) result = result.substring(1);

      elmt = document.getElementById( "navigation" );
      elmt.innerHTML = result;

}

function getNavStep( pages, curStep, step, name, width ) {
    var tdClass;
    var code = [];
    var url = [];
    for ( var i=0; i<pages.length; i++ ) {
        code[i] = getXMLValue( pages[i], "code" );
        url[i] = getXMLValue( pages[i], "url" );
// alert( code[i] );
        if ( code[i] == step ) {
           if ( step == curStep ) {
              tdClass = "menuBold";
           }
           else {
              tdClass = "menu";
           }
           return '<td width="' + width + '" align="center" valign="bottom" class="' +  tdClass + '"><a href="javascript:nextAction(' + url[i] + ')" class="secondary">' + name + '</a></td>';
        }
    }
    if ( step == curStep ) {
       tdClass = "menuBold";
    }
    else {
       tdClass = "menuFade";
    }
    return '<td width="' + width + '" align="center" valign="bottom" class="' +  tdClass + '">' + name + '</td>';
}

function overlay( status ) {
      var bod = document.getElementsByTagName('body')[0];
      var htm = document.getElementsByTagName('html')[0];
      var overlay1 = document.getElementById( "overlay" );
      var lightbox1 = document.getElementById( "lightbox" );

      if ( status == "ON" ) {
//        bod.style.overflow = 'hidden';  
//        htm.style.overflow = 'hidden';
		
//        overlay1.style.height = screen.height;
//        overlay1.style.width = screen.width;
        overlay1.style.visibility = 'visible' ;
        lightbox1.style.visibility = 'visible' ;
      }
      if ( status == "OFF" ) {
        if ( htm.style.overflow == "hidden" ) htm.style.overflow = 'auto';
        if ( bod.style.overflow == "hidden" ) bod.style.overflow = 'auto';  
		
        overlay1.style.visibility = 'hidden' ;
        lightbox1.style.visibility = 'hidden' ;
      }
}

function option_Next( fdid ) {
    nextAction( rqtControl_OPT, fdid, optionSelectedid, rqtControl_OPT_NEXT, optionSelectedvalue );
}
function option_OK( fdid ) {
    nextAction( rqtControl_OPT, fdid, optionSelectedid, rqtControl_OPT_OK, optionSelectedvalue );
}
function option_Cancel( fdid ) {
    nextAction( rqtControl_OPT, fdid, -1, rqtControl_OPT_CANCEL );
//    overlay( "OFF" );
}

function do_opt( obj ) {
    if ( obj.checked ) {
        optionSelectedid = obj.value;
        optionSelectedvalue = '0';
        var nextBt = document.getElementById( "nextButton" );
        if ( nextBt != null ) nextBt.disabled = false;
        var okBt = document.getElementById( "okButton" );
        if ( okBt != null ) okBt.disabled = false;
    }
}
function option_select( fvid ) {
    var opts = document.getElementsByName( "opt" );
    if ( opts == null ) return;
    for ( var i=0; i<opts.length; i++ ) {
        if ( opts[i].value == fvid ) {
            opts[i].checked = true;
            do_opt( opts[i] );
            return;
        }
    }
}

function new_design() {
    location.reload();
}

function startup( type ) {
    nextAction( 0, 0 );
}


