// JScript File
var popup_menu = null;
var popup_body = null;
var lastKeyPress = 0;

function ShowMenu(o,id, mb) {
  try {    
    var prnt = getPartParent(o);
    if (prnt) {
      var mnu = prnt.nextSibling;
      while (mnu) {
        if (mnu && mnu.nodeType == 1 && mnu.className == "part_popup")
          break;
        else 
          mnu = mnu.nextSibling;
      }
      if (mnu) {
        popup_menu = mnu;
        popup_menu.style.left = prnt.offsetLeft + o.offsetLeft + 15 + "px";
        popup_menu.style.top = prnt.offsetTop + o.offsetTop + 1 + "px";
        popup_menu.style.display = "";
        popup_menu.style.zIndex = 5000;
        if (mb) {
          popup_body = document.getElementById(id);
          if (popup_body) {
            popup_body.style.paddingTop = "80px";
          }
        }
      }
    }
  }
  catch (e) {alert("ShowMenu ERROR " + e);}
}

function cls_mnu() {
  if (popup_menu != null) {
    popup_menu.style.display = "none";
    if (popup_body) popup_body.style.paddingTop = "0px";
  }
}

function mdp(o, pt, id) {
  var mnuParent = getMenuParent(o);
  var part = mnuParent.previousSibling;
  while (part) {
    if (part && part.nodeType == 1 && part.className == "PartDrag")
      break;
    else
      part = part.previoussibling;
  }
  if (part != null) {
    var pp = new partParams(mnuParent, 0);
    var url = "MyDeskPopup.aspx?TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter;
    var lang = document.getElementById("usr_lang");
    if (lang) url += "&lang=" + lang.innerHTML;
    var w = window.open(url, "MyDesk");
    w.focus();
  }
}

function getPartParent(o) {
  if (o && o.className == "PartDrag")
    return o;
  else if (o && o.parentNode)
    return (getPartParent(o.parentNode));
  else return null;
}

function getMenuParent(o) {
  if (o && o.className == "part_popup")
    return o;
  else if (o && o.parentNode)
    return (getMenuParent(o.parentNode));
  else return null;
}

function partParams(_prnt, _counter) {
  this.Counter = _counter;
  this.Row = 0;
  this.Col = 0;
  this.Parent = _prnt;

  this.grc=function() {
    while (this.Parent.previousSibling != null) {
      this.Parent = this.Parent.previousSibling;
      if (this.Parent.nodeType == 1 && this.Parent.className == "PartDrag") this.Counter++;
    }
    this.Parent = this.Parent.parentNode;
    var idRS = this.Parent.id.indexOf("_");
    var idCS = this.Parent.id.indexOf("_", idRS + 1);
    this.Row = parseInt(this.Parent.id.substr(idRS + 1, idCS - (idRS + 1)));
    this.Col = parseInt(this.Parent.id.substr(idCS + 1));
  }
  this.grc();
}

function shwPrts(p) {
  for (var c = 0; c < p.childNodes.length; c++) {
    alert("shwPrts "+p.childNodes[c].innerHTML);
  }
}

function ClosePart(o) {
  if (window.confirm(lng(26))) {
    var mnuParent = getMenuParent(o);
    var part = mnuParent.previousSibling;
    while (part) {
      if (part && part.nodeType == 1 && part.className == "PartDrag")
        break;
      else
        part = part.previoussibling;
    }
    var partToDelete = part;
    if (part) {
      var wt = gwi(part);
      var pp = new partParams(part, 1);
      RequestData("CLS_PRT", cbClosePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter, wt, pp.Parent, part);
    }
  }
  return false;
}

function cbClosePart(response,wait,mnuParent, partToDelete) {  
  var data = PreProcessResponse(response);
  if (data[0]) {
    mnuParent.removeChild(partToDelete);
  }
  if (wait) wait.style.visibility = "hidden";
}

function ShowHidePart(o, minimized) {
  var mnuParent = getMenuParent(o);
  var part = mnuParent.previousSibling;
  while (part) {
    if (part && part.nodeType == 1 && part.className == "PartDrag")
      break;
    else 
      part = part.previoussibling;
  }
  if (part != null) {
    var wt = gwi(part);
    var pp = new partParams(part, 1);
    RequestData("MIN_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=" + minimized, wt, part);
  }
  return false;
}

function ShowClock(o, prnt) {
  var mnuParent = document.getElementById(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);
    var clk = (document.getElementById(prnt + "_TS") ? false : true);     
    RequestData("UPD_CLK", cbShowClock, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&ShowClock=" + clk, wt,prnt);
  }
}

function cbShowClock(response, wait, prnt) {
  var data = PreProcessResponse(response);
  if (data[0]) {
    var clk = (document.getElementById(prnt + "_TS") ? false : true);
    var td = document.getElementById(prnt + "_tdK");
    var tdC = document.getElementById(prnt + "_tdTopClock");
    if (td && tdC) {
      if (clk) {
        td.innerHTML = "<img src='img/icon/tick.gif'>";
        tdC.innerHTML = "<span id='" + prnt + "_TS'></span>";
      }
      else {
        td.innerHTML = "";
        tdC.innerHTML = "";
      }
    }
  }
  if (wait) wait.style.visibility = "hidden";
}

function rs(resp) {
  var res = resp;
    var st1 = resp.indexOf("<style");
    if (st1 >= 0) {
      st1 = resp.indexOf("</style>");
      if (st1 > 0) {
        res = resp.substr(st1 + 8);
        var style = resp.substr(0, st1);
        st1 = style.indexOf("id='");
        if (st1 >= 0) {
          var st2 = style.indexOf("'", st1 + 4);
          var id = style.substring(st1 + 4, st2);
          st1 = style.indexOf(">");
          style = style.substr(st1 + 1);
          var ss = document.getElementById(id);
          if (ss)ss.parentNode.removeChild(ss);
          ss = document.createElement('style');
          ss.setAttribute('type', 'text/css');
          ss.id = id;
          var head = document.getElementsByTagName('head')[0];
          head.appendChild(ss);
          var css = document.createTextNode(style);
          ss.nodeValue = "";
          if (ss.styleSheet)
            ss.styleSheet.cssText = css.nodeValue;
          else
            ss.appendChild(css);
        }
      }
    }  
  return res;
}

function clr_sty() {
  var st = document.getElementsByTagName('style');
  for (var s = 0; s < st.length; s++) {
    st[s].parentNode.removeChild(st[s]);
  }
}

function rs_gt(resp) {      
  var res = resp;
  var stS = res.indexOf("<style");
  while (stS >= 0) {
    var stE = res.indexOf("</style>");
    if (stE > 0) {    
      var style = res.substr(stS, stE - stS);
      res = res.substr(0, stS) + res.substr(stE + 8);
      var stID_S = style.indexOf("id='");
      if (stID_S >= 0) {
        var stID_E = style.indexOf("'", stID_S + 4);
        var id = style.substring(stID_S + 4, stID_E);
        stE = style.indexOf(">");
        style = style.substr(stE + 1);
        var ss = document.getElementById(id);
        if (ss) ss.parentNode.removeChild(ss);
        ss = document.createElement('style');
        ss.setAttribute('type', 'text/css');
        ss.id = id;
        var head = document.getElementsByTagName('head')[0];
        head.appendChild(ss);
        var css = document.createTextNode(style);          
        ss.nodeValue = "";
        if (ss.styleSheet)
          ss.styleSheet.cssText = css.nodeValue;          
        else
          ss.appendChild(css);
      }
    }
    stS = res.indexOf("<style");
  }  
  return res;
}

function cbShowHidePart(response, wait, prnt) {
  var data = PreProcessResponse(response);
  if (data[0]) {
    if (prnt) {
      var mnu = prnt.nextSibling;
      while (mnu) {
        if (mnu && mnu.nodeType == 1 && mnu.className == "part_popup")          
          break;
        else 
          mnu = mnu.nextSibling;
      }      
      var m = fsn(data[0], "ctm", 50);
      if (m >= 0) {
        var mt = data[0].substr(m);
        var idS = mt.indexOf(">");
        var idE = mt.lastIndexOf("</div>");        
        mnu.innerHTML = mt.substr(idS + 1, idE - (idS + 1));        
        data[0] = data[0].substr(0, m);
      }
      idS = data[0].indexOf(">");
      idE = data[0].lastIndexOf("</div>");
      data[0] = data[0].substr(idS + 1, idE - (idS + 1));
      prnt.innerHTML = rs(data[0]);
      for (var d = 1; d < data.length; d++) eval(data[d]);
    }
  }
  if(wait)wait.style.visibility="hidden";
}

function fsn(src, id, l) {
  var nd = src.indexOf(id);
  if (nd >= 0) {
    var f = 0;
    while (nd - f >= 0 && f < l) {
      var t = src.substr(nd - (++f), 1);
      if (t == "<") return nd - f;
    }
  }
  return -1;
}

function Drill(o, comm, tab, row, col, part, partType, yr, mn, dy, zoom, cstm) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {  
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);
    RequestData("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&Commodity="+comm+"&sy="+yr+"&sm="+mn+"&sd="+dy+"&zoom="+zoom+"&custom="+cstm,wt,mnuParent);
  }
  return false;
}

function init_ctl_rfsh(op, prnt, tab, row, col, part, partType, tmt) {
  var dynID = document.getElementById(op + "_DynID").innerHTML;
  setTimeout("wait_ctl_rfsh('" + dynID+"','"+op+"','"+prnt+"',"+tab+","+row+","+col+","+part+","+partType+");", tmt);
}

function wait_ctl_rfsh(_dynID,op, prnt, tab, row, col, part, partType) {
  var dynID = document.getElementById(op + "_DynID");
  if (dynID && _dynID == dynID.innerHTML) {    
    ctl_rfsh(prnt, tab, row, col, part, partType);
  }
}

function ctl_rfsh(prnt, tab, row, col, part, partType) {  
  var o = document.getElementById(prnt);
  Drill(o, '', tab, row, col, part, partType, 0, 0, 0, false, '');
}

function DrillPeriod(o, comm, tab, row, col, part, partType, prd,cstm) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {    
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);    
    RequestData("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&Commodity="+comm+"&period=" + prd+"&custom="+cstm,wt,mnuParent);
  }
  return false;
}

function UpdTicker(o, ctlID, tab, row, col, part, partType) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);    
    //get the selected commodities
    var arrCom = new Array("CU", "AL", "NI", "ZN", "PB", "SN", "AA", "AN", "CO", "MO","FM");
    var selCom = "";
    var sep = "";
    for (var c = 0; c < arrCom.length; c++) {
      var chk = document.getElementById(ctlID + "_Com" + arrCom[c]);
      if (chk && chk.checked) {
        selCom = selCom + sep + arrCom[c];
        sep = ",";
      }
    }
    if (selCom.length == 0) {
      alert(lng(2));
    }
    else {
      //get the selected contract types
      var broker = document.getElementById(ctlID + "_lstSourceB").checked;
      var floor = document.getElementById(ctlID + "_lstSourceR").checked;
      var select = document.getElementById(ctlID + "_lstSourceS").checked;
      var carries = document.getElementById(ctlID + "_chkCarries").checked;
      var swaps = document.getElementById(ctlID + "_chkSwaps").checked;
      if (!broker && !floor && !select && !carries && !swaps) {
        alert(lng(3));
      }
      else {
        //is it today ?
        var today = document.getElementById(ctlID + "_optToday").checked;
        //get the filter times
        var st = document.getElementById(ctlID + "_txtStartTime").value;
        var et = document.getElementById(ctlID + "_txtEndTime").value;
        if (st.length == 0 || et.length == 0) {
          alert(lng(4));
        }
        else {
          RequestData("UPD_TKR", cbShowHidePart, "TabIndex=" + tab + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&st=" + st + "&et=" + et + "&commodity=" + selCom + "&broker=" + broker + "&floor=" + floor + "&select=" + select + "&carries=" + carries + "&today=" + today+"&swaps="+swaps, wt,mnuParent);
        }
      }
    }
  }
  return false;
}

function CalcLMEAvg(o, parent, tab, row, col, part,partType) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var sd = document.getElementById(parent + "_calStartDate_lblSelectedDate").innerHTML;
    var ed = document.getElementById(parent + "_calEndDate_lblSelectedDate").innerHTML;
    var com = document.getElementById(parent + "_Instrument");
    com = com.options[com.selectedIndex].value;
    var fx = document.getElementById(parent + "_Currency");
    fx = fx.options[fx.selectedIndex].value;
    pp = new partParams(mnuParent, 1);
    RequestData("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&sdte=" + sd + "&edte=" + ed + "&commodity=" + com + "&ccy=" + fx +"&parent=" + parent + "&MinimizedPart=false", wt, mnuParent);
  }
}

function CalcFwdSprd(o, parent, tab, row, col, part, partType) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var sd = document.getElementById(parent + "_calStartDate_lblSelectedDate").innerHTML;
    var ed = document.getElementById(parent + "_calEndDate_lblSelectedDate").innerHTML;
    var com = document.getElementById(parent + "_Instrument");
    com = com.options[com.selectedIndex].value;
    var cash = document.getElementById(parent + "_optStartCash").checked;
    var _3M = document.getElementById(parent + "_optStart3M").checked;
    var selD = document.getElementById(parent + "_optStartSelectDate").checked;
    if (!selD) sd = "";
    var pp = new partParams(mnuParent, 1);
    RequestData("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&sdte=" + sd + "&edte=" + ed + "&commodity=" + com + "&cash=" + cash + "&M3=" + _3M + "&parent=" + parent + "&MinimizedPart=false", wt, mnuParent);
  }
}

function BuildCurve(o, parent, tab, row, col, part, partType) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var sd = document.getElementById(parent + "_calStartDate_lblSelectedDate").innerHTML;
    var ed = document.getElementById(parent + "_calEndDate_lblSelectedDate").innerHTML;
    var com = document.getElementById(parent + "_Instrument");
    com = com.options[com.selectedIndex].value;
    var sttl = document.getElementById(parent + "_calSettlementDate_lblSelectedDate").innerHTML;
    var errs = "";
    if (sd >= ed) {
      errs = lng(5);
    }
    if (errs.length == 0) {
      var pp = new partParams(mnuParent, 1);
      RequestData("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&sdte=" + sd + "&edte=" + ed + "&commodity=" + com + "&sttl=" + sttl + "&parent=" + parent + "&MinimizedPart=false", wt, mnuParent);
    }
    else alert(errs);
  }
}

function W3Rpt(o, comm, parent, tab, row, col, part, partType, precom, prompt,ct) {
  DrillRpt(o, comm, parent, tab, row, col, part, partType, precom, prompt, o.checked,ct);
}

function DrillRpt(o, comm, parent, tab, row, col, part, partType, precom, prompt, w3, ct) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var sttl = document.getElementById(parent + "_calSettlementDate_lblSelectedDate").innerHTML;
    var pp = new partParams(mnuParent, 1);
    RequestData("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&Commodity=" + comm + "&sttl=" + sttl + "&parent=" + parent + "&MinimizedPart=false&prompt=" + prompt + "&w3=" + w3 + "&ct=" + ct, wt, mnuParent);
  }
}

function ShwMD(o, Tab, Row, Col, Part, Inst, Mkd, Exp, PartType) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);
    RequestData("PRC_EXP_INST", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&InstIndex=" + Inst + "&MarketDepth=" + Mkd + "&Expand=" + Exp + "&partType=" + PartType, wt, mnuParent);
  }
  return false;
}

function gwi(parent) {
  var id = parent.getAttribute("id");
  var i=id.lastIndexOf("_");
  if (i > 0) {
    return document.getElementById(id.substr(0, i + 1) + "imgWait");
  }
}

function crt_ctx(o,ctl,id,prnt,ng) {
  var s = document.getElementById(ctl);
  var re = new RegExp(prnt, 'gi');
  s = s.innerHTML.replace(re, id);
  var re = new RegExp('@@@', 'gi');
  s = s.replace(re, o.id);
  var ns = document.createElement("span");
  ns.innerHTML = s;
  if (ng)
    o.appendChild(ns);
  else
    o.cells[1].appendChild(ns);
}

function shw_ctx(o, ct, ng) {
  o = document.getElementById(o);
  if (o) {
    if ((!ng && o.cells[1].childNodes.length == 0) || (ng && gnl(o,1) == null)) {    
      var i = o.id.indexOf("cdp");
      var id = o.id.substr(0, i - 1);
      var b = document.getElementById(id + "_cdp_Base_ID").innerHTML;      
      switch (ct) {
        case 1:
          {
            crt_ctx(o, "pnlPriceFields", id, "ctlPriceFields", ng);
            var cf = document.getElementById(id + "_cdp_" + b + "_CSTMF");
            if (cf) {
              var arrFO = cf.innerHTML.split(",");
              for (var f = 0; f < arrFO.length; f++) {
                if (arrFO[f].length > 0) {
                  var el = document.getElementById(id + "_F" + arrFO[f]);
                  if (el) el.checked = true;
                  el = document.getElementById(id + "_FO" + arrFO[f]);
                  if (el) el.value = f + 1;
                }
              }
            }
            var c_h = document.getElementById(id + "_cdp_" + b + "_CSTM_H");
            if (c_h) {
              var tb = document.getElementById(id + "_tbM");
              if (tb) {
                for (var hf = 0; hf < 4; hf++) tb.deleteRow(0);
              }
            }
            else {
              cf = document.getElementById(id + "_cdp_" + b + "_CSTMG");
              if (cf && cf.innerHTML == "true") {
                var el = document.getElementById(id + "_Grid");
                if (el) el.checked = true;
              }
              cf = document.getElementById(id + "_cdp_" + b + "_CSTMCS");
              if (cf) {
                var el = document.getElementById(id + "_Pad");
                if (el) el.value = cf.innerHTML;
              }
              cf = document.getElementById(id + "_cdp_" + b + "_CSTML");
              if (cf && cf.innerHTML == "true") {
                var el = document.getElementById(id + "_Link");
                if (el) el.checked = true;
              }
              cf = document.getElementById(id + "_cdp_" + b + "_CSTMSIN");
              if (cf && cf.innerHTML == "true") {
                var el = document.getElementById(id + "_SSIN");
                if (el) el.checked = true;
              }
            }
            break;
          }
        case 6:
          {
            crt_ctx(o, "pnlPriceInstruments", id, "ctlPriceInstruments", ng);
            var sc = document.getElementById(id + "_cdp_" + b + "_CSTMSC");
            var sn = document.getElementById(id + "_cdp_" + b + "_CSTMSN");
            if (sc && sn) {
              var el = document.getElementById(id + "_sc");
              if (el) {
                el.options.length = 0;
                var arrIC = sc.innerHTML.split(",");
                var arrIN = sn.innerHTML.split(",");
                if (arrIN.length == arrIC.length) {
                  for (var i = 0; i < arrIC.length; i++) {
                    var op = new Option(arrIN[i], arrIC[i], false, false);
                    el.options[el.options.length] = op;
                  }
                }
              }
            }
            break;
          }
        case 9:
          {
            crt_ctx(o, "pnlPhysicalsPriceInstruments", id, "ctlPhysicalsPriceInstruments", ng);
            var sc = document.getElementById(id + "_cdp_" + b + "_CSTMSC");
            var sn = document.getElementById(id + "_cdp_" + b + "_CSTMSN");
            if (sc && sn) {
              var el = document.getElementById(id + "_sc");
              if (el) {
                el.options.length = 0;
                var arrIC = sc.innerHTML.split(",");
                var arrIN = sn.innerHTML.split(",");
                if (arrIN.length == arrIC.length) {
                  for (var i = 0; i < arrIC.length; i++) {
                    var op = new Option(arrIN[i], arrIC[i], false, false);
                    el.options[el.options.length] = op;
                  }
                }
              }
            }
            break;
          }
        case 5:
          {
            crt_ctx(o, "pnlScoop", id, "ctlScoopCustom", ng);
            var c_kwd = document.getElementById(id + "_cdp_" + b + "_CSTM_KWDS");
            var c_sbs = document.getElementById(id + "_cdp_" + b + "_CSTM_SUBS");
            var c_cnt = document.getElementById(id + "_cdp_" + b + "_CSTM_CNT");
            var c_tkr = document.getElementById(id + "_cdp_" + b + "_CSTM_TKR");
            if (c_kwd && c_sbs && c_cnt && c_tkr) {
              var el = document.getElementById(id + "_NS");
              if (el) el.value = c_cnt.innerHTML;
              el = document.getElementById(id + "_TKR");
              if (el) el.checked = (c_tkr.innerHTML == 'true');
              c_sbs = c_sbs.innerHTML;
              if (c_sbs) {
                c_sbs = c_sbs.split(",");
                for (var l = 0; l < c_sbs.length; l++) {
                  var el = document.getElementById(id + "_SL_" + c_sbs[l]);
                  if (el) el.checked = true;
                }
              }
              var pnt = document.getElementById(id + "_pnlKeywords");
              c_kwd = c_kwd.innerHTML;
              if (pnt && c_kwd.length > 0) {
                var re = new RegExp(',|;', 'gi');
                var a_k = c_kwd.split(re);
                for (var p = 0; p < pnt.childNodes.length; p++) {
                  var ctl = pnt.childNodes[p];
                  if (ctl.nodeType == 1) {
                    var ctlID = ctl.getAttribute("id");
                    if (ctlID && ctlID.indexOf("_KWD_") > 0) {
                      var ls = ctlID.lastIndexOf("_");
                      for (var f = 0; f < a_k.length; f++) {
                        if (ctl.id.substr(ls + 1) == a_k[f]) {
                          ctl.checked = true;
                          break;
                        }
                      }
                    }
                  }
                }
              }
            }
            break;
          }
      }
    }
    o.style.display = "";    
  }
}

function shw_sty(o,ng,pt) {  
  o = document.getElementById(o);
  if (o) {
    if ((!ng && o.cells[1].childNodes.length == 0) || (ng && gnl(o,1) == null)) {
      var i = o.id.indexOf("cdp");
      var id = o.id.substr(0, i-1);
      var s = document.getElementById("pnlStyles");
      var re = new RegExp('ctlStyles', 'gi');
      s = s.innerHTML.replace(re, id);
      var re = new RegExp('@@@', 'gi');
      s = s.replace(re, o.id);
      var ns = document.createElement("span");
      ns.innerHTML = s;
      if (ng)
        o.appendChild(ns);
      else
        o.cells[1].appendChild(ns);      
      switch(pt){
        case 26:
          {
            var slct = document.getElementById(id + "_styles");
            if (slct) {
              for (var n = 1; n <= 2; n++, slct.remove(0));
              slct = document.getElementById(id + "_Style1_T");
              if (slct) slct.style.display = "none";
              slct = document.getElementById(id + "_Style2_T");
              if (slct) slct.style.display = "";
              slct = document.getElementById(id + "_Style3_T");
              if (slct) slct.style.display = "none";
            }
            break;
            }
        case 15:
            {
                var slct = document.getElementById(id + "_styles");
                if (slct)slct.remove(1);
                slct = document.getElementById(id + "_Style3_T");
                if (slct) slct.style.display = "none";
                break;
            }
      }      
      var b = document.getElementById(id + "_cdp_Base_ID").innerHTML;
      var st = document.getElementById(id + "_cdp_" + b + "_styles");
      if (st) {
        re = new RegExp("#" + id + "_cdp_" + b + " .", 'gi');
        st = st.innerHTML.replace(re, '');                
        re = new RegExp('\n', 'gi');
        st = st.replace(re, '');
        re = new RegExp('\r', 'gi');
        st = st.replace(re, '');
        re = new RegExp('\t', 'gi');
        st = st.replace(re, '');
        re = new RegExp('#', 'gi');
        st = st.replace(re, '');
        re = new RegExp(' ', 'gi');
        st = st.replace(re, '');
        var ast = st.split("}");
        for (var lp = 0; lp < ast.length; lp++) {
          if (ast[lp] != "") {
            var thST = ast[lp].split("{");
            if (thST.length == 2) {
              var stTy = thST[0];
              var stSTY = thST[1];
              var aSTY = stSTY.split(";");
              var vs = "";
              var vl = "";
              for (var lst = 0; lst < aSTY.length; lst++) {
                var arSTY = aSTY[lst].split(":");
                if (arSTY.length == 2) {
                  var fld = "";
                  var val = arSTY[1];
                  var ts = arSTY[0].toLowerCase();                  
                  if (ts.indexOf("font-family") >= 0) {
                    fld = "Font";
                  }
                  else if (ts.indexOf("font-weight") >= 0) {
                    fld = "Bold";
                    val = (val == "normal" ? "false" : "true");
                  }
                  else if (ts.indexOf("font-size") >= 0) {
                    val = val.replace("px", "");
                    fld = "Size";
                  }
                  else if (ts.indexOf("background-color") >= 0)
                    fld = ((stTy.indexOf("_A") > 0) ? "AltRowColfield" : "BackColourfield"); 
                  else if (ts.indexOf("color") >= 0)
                    fld = "Colourfield";                  
                  
                  var sid = 0;
                  switch (stTy.substr(0, 2)) {
                    case "th": sid = 1; break;
                    case "td": sid = 2; break;
                    case "ts": sid = 3; break;
                  }                  
                  var os = document.getElementById(id + "_Style" + sid + "_" + fld);
                  if (os) {
                    switch (os.nodeName.toUpperCase()) {
                      case "SELECT":
                        {
                          var fnd = false;
                          for (var oc = 0; oc < os.options.length; oc++) {
                            var tmpS = os.options[oc].value.replace(re, '');
                            if (tmpS.indexOf(val) >= 0) {
                              os.selectedIndex = oc;
                              fnd = true;
                              break;
                            }
                          }
                          break;
                        }
                      case "INPUT":
                        {
                          if (val == "true" || val == "false")
                            os.checked = (val == "true");
                          else {
                            os.value = val;                            
                          }
                          break;
                        }
                    }
                  }
                  vl += vs + val;
                  vs = ",";
                }
              }              
            }
          }
        }
      }      
    }
    o.style.display = "";
  }
}

function close_ctx(o, id) {
  var s = document.getElementById(id);
  if (s) s.style.display = "none";
}

function save_style(oo,id) {
  var arrType = new Array(); 
  var arrFont=new Array();
  var arrFontSize=new Array();
  var arrBold=new Array();
  var arrColor=new Array();
  var arrBackColor = new Array();
  var arrAltRow = new Array();  
  for (var i = 1; i <= 3; i++) {
    var pt = document.getElementById(id+"_cdp_Part_Type").innerHTML;
    var o = document.getElementById(id + "_Style" + i + "_Font");
    if (o) {
      arrFont[i - 1] = o.options[o.selectedIndex].value;
      o = document.getElementById(id + "_Style" + i + "_Size");
      arrFontSize[i - 1] = o.value;
      o = document.getElementById(id + "_Style" + i + "_Bold");
      arrBold[i - 1] = o.checked;
      o = document.getElementById(id + "_Style" + i + "_Colourfield");
      arrColor[i - 1] = o.value;
      o = document.getElementById(id + "_Style" + i + "_BackColourfield");
      arrBackColor[i - 1] = o.value;
      o = document.getElementById(id + "_Style" + i + "_AltRowColfield");
      arrAltRow[i - 1] = (o ? o.value : ""); 
      o = document.getElementById(id + "_Style" + i + "_Type");
      arrType[i - 1] = o.innerHTML;
    }
  }
  var url = "";
  var errs = "";
  //now check we have all the values necessary to create a style
  for (var i = 1; i <= 3; i++) {
    if (arrBackColor[i-1] != "" && arrColor[i-1] != "" && arrFontSize[i-1] != "") {
      //we have a style so append to the url
      url += "&stfont" + i + "=" + arrFont[i - 1] +
              "&stsize" + i + "=" + arrFontSize[i - 1] +
              "&stbold" + i + "=" + arrBold[i - 1] +
              "&stcolor" + i + "=" + arrColor[i - 1] +
              "&stback" + i + "=" + arrBackColor[i - 1] +
              "&stalt" + i + "=" + arrAltRow[i - 1];
    }
    else errs+=lng_s(13,arrType[i-1]);
   
  }
  if (errs.length > 0) {
    showBox(errs);
  }
  else if (url.length > 0) {
    var mnuParent = getPartParent(oo);
    if (mnuParent != null) {
      var wt = gwi(mnuParent);
      var pp = new partParams(mnuParent, 1);
      RequestData("UPD_STY", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + url, wt,mnuParent);
    }
  }
  else close_ctx(oo, id);
}

function save_com(oo, prnt, pt, id, mx) {
  var errs = "";  
  var cv = document.getElementById(prnt + "_Values").innerHTML;
  var nv = "";
  var cc = 0;
  var arrCom = new Array("CU", "AL", "NI", "ZN", "PB", "SN", "AA", "AN","FM", "PP", "LL","CO","MO");
  for (var f = 0; f < arrCom.length; f++) {
    var cm = document.getElementById(prnt + "_M" + arrCom[f]);    
    if(cm && cm.checked){
      cc++;
      nv += (nv.length > 0 ? "," : "") + arrCom[f];      
    }
  }  
  if (nv != cv) {
    if (cc == 0) errs += lng(7);
    if (errs.length > 0) {
      showBox(errs);
    }
    else if (nv.length > 0) {
      var mnuParent = getPartParent(oo);
      if (mnuParent != null) {
        var wt = gwi(mnuParent);
        var pp = new partParams(mnuParent, 1);
        RequestData("UPD_CSTM", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + "&selcom="+nv, wt,mnuParent);
      }
    }
  }
  else close_ctx(oo, id);
}

function Contains(arr, v) {
  var res = false;
  for (var i = 0; i < arr.length; i++) {
    if (arr[i] == v) {
      res = true;
      break;
    }
  }
  return res;
}

function save_fld(oo, prnt, pt, id,mx) {
  var errs="";
  var url = "";
  var cv = document.getElementById(prnt + "_Values").innerHTML;
  var nv = "";
  var o = document.getElementById(prnt + "_Grid");
  if (o) {
    nv = o.checked + ",";
    url = "&grid=" + o.checked;
  }
  o = document.getElementById(prnt + "_SSIN");
  if (o) {
    nv+=o.checked + ",";
    url += "&ssin=" + o.checked;
  }
  o = document.getElementById(prnt+"_Pad");
  if (o) {
    nv += o.value;
    url += "&cpad=" + o.value;
  }
  o = document.getElementById(prnt + "_Link");
  if (o) {
    nv += o.value;
    url += "&clnk=" + o.checked;
  }
  var fc = 0;
  var arrFO = new Array;
  for (var f = 2; f <= mx; f++) {
    o = document.getElementById(prnt + "_F" + f);
    if (o) {
      nv += "," + o.checked;
      url += "&fld" + f + "=" + o.checked;
      if (o.checked) {
        var fo = document.getElementById(prnt + "_FO" + f);
        if (fo.value.length != 0) {
          var fov=parseInt(fo.value);
          if (fov > 0 && fov <= mx) {
            if (!Contains(arrFO, fov)) {
              arrFO.push(fov);
              nv += "_" + fov;
              url += "&fldo" + f + "=" + fov;
              fc++;
            }
            else errs += lng_s(8,o.nextSibling.innerHTML.replace("&nbsp;"," "));
          }
          else errs += lng_s(9,o.nextSibling.innerHTML.replace("&nbsp;", " ")) + lng_s(10,mx);
        }
        else errs += lng_s(11,o.nextSibling.innerHTML.replace("&nbsp;", " "));
      }
    }
  }
  if (nv != cv) {
    if (fc == 0) errs += lng(12);
    if (errs.length > 0) {
      showBox(errs);
    }
    else if (url.length > 0) {    
      var mnuParent = getPartParent(oo);
      if (mnuParent != null) {
        var wt = gwi(mnuParent);
        var pp = new partParams(mnuParent, 1);
        RequestData("UPD_CSTM", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + "&max=" + mx + url, wt, mnuParent);
      }
    }
  }
  else {
    close_ctx(oo, id);
  }
}

function save_lme_fld(oo, prnt, pt, id, mx) {
  var errs = "";
  var url = "";
  var cv = document.getElementById(prnt + "_Values").innerHTML;
  var nv = "";
  var fc = 0;  
  var arrPFX = new Array("SUM", "DTL");
  var arrPFXCaption = new Array(lng(28), lng(29));
  for (var pfx = 0; pfx < arrPFX.length; pfx++) {
    var arrFO = new Array;
    for (var f = 0; f <= mx; f++) {
      o = document.getElementById(prnt +"_"+arrPFX[pfx]+ "_F" + f);
      if (o) {
        nv += "," + arrPFX[pfx] + o.checked;
        url += "&fld"+arrPFX[pfx] + f + "=" + o.checked;
        if (o.checked) {
          var fo = document.getElementById(prnt +"_"+arrPFX[pfx]+ "_FO" + f);
          if (fo.value.length != 0) {
            var fov = parseInt(fo.value);
            if (fov > 0 && fov <= mx) {
              if (!Contains(arrFO, fov)) {
                arrFO.push(fov);
                nv += "_" + fov;
                url += "&fldo" + arrPFX[pfx] + f + "=" + fov;
                fc++;
              }
              else errs += "\r\n"+arrPFXCaption[pfx]+":"+ lng_s(30,o.nextSibling.innerHTML);
            }
            else errs += "\r\n" + arrPFXCaption[pfx] + ":" + lng_s(30, o.nextSibling.innerHTML)+"."+lng(10);
          }
          else errs += "\r\n" + arrPFXCaption[pfx] + ":" + lng_s(11, o.nextSibling.innerHTML);
        }
      }
    }
  }
  if (nv != cv) {
    if (fc == 0) errs += lng(12);
    if (errs.length > 0) {
      showBox(errs);
    }
    else if (url.length > 0) {
      var mnuParent = getPartParent(oo);
      if (mnuParent != null) {
        var wt = gwi(mnuParent);
        var pp = new partParams(mnuParent, 1);
        RequestData("UPD_CSTM", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + "&max=" + mx + url, wt,mnuParent);
      }
    }
  }
  else close_ctx(oo, id);
}

function save_hist(oo, prnt, pt, id) {
  var errs = "";
  var url = "";
  var cv = document.getElementById(prnt + "_Values").innerHTML;
  var nv = "";
  var o = document.getElementById(prnt + "_PS");
  var ps = parseInt(o.value);
  if (!(ps > 0 && ps <= 200)) ps = 0;
  nv = ps + ",";

  if (nv != cv) {
    if (ps <= 0 || ps > 200) errs += lng(31);   
    url = "&ps=" + ps;
    if (errs.length > 0) {
      showBox(errs);
    }
    else if (url.length > 0) {
      var mnuParent = getPartParent(oo);
      if (mnuParent != null) {
        var wt = gwi(mnuParent);
        var pp = new partParams(mnuParent, 1);
        RequestData("UPD_CSTM", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + url, wt,mnuParent);
      }
    }
  }
  else close_ctx(oo, id);
}

function save_cpt(oo, prnt, pt,id, cid) {
  var errs = "";
  var url = "";
  var cv = document.getElementById(prnt + "_Values").innerHTML;
  var nv = "";
  var o = document.getElementById(prnt + "_HD");
  var cpt = o.value;
  nv = cpt + ","; 

  if (nv != cv) {
    cpt = inp_vld(cpt);
    url = "&cpt=" + cpt;
    if (errs.length > 0) {
      showBox(errs);
    }
    else if (url.length > 0) {
      var mnuParent = getPartParent(oo);
      if (mnuParent != null) {
        var wt = gwi(mnuParent);
        var pp = new partParams(mnuParent, 1);
        RequestData("UPD_BSC_CSTM", cbSaveCpt, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + url, wt,cid,cpt);
      }
    }
  }
  close_ctx(oo, id);
}

function cbSaveCpt(response,wait,cid,cpt) {
  var data = PreProcessResponse(response);
  var c = document.getElementById(cid);
  if (c) c.innerHTML = cpt;
  if (wait) wait.style.visibility = "hidden";
}

function inp_vld(v) {
  var rV = new Array(";", "'", '"');
  for (var i = 0; i < rV.length; i++) {
    if (v.indexOf(rV[i]) >= 0) v = v.replace(rV[i], "");
  }
  return v;
}

function save_bc(oo, prnt, pt, id) {  
  var errs = "";
  var url = "";
  var cv = document.getElementById(prnt + "_Values").innerHTML;
  var nv = "";
  var o = document.getElementById(prnt + "_BC");
  var bc = o.options[o.selectedIndex].value;
  nv = bc + ",";

  if (nv != cv) {    
    url = "&bc=" + bc;
    if (errs.length > 0) {
      showBox(errs);
    }
    else if (url.length > 0) {
      var mnuParent = getPartParent(oo);
      if (mnuParent != null) {
        var wt = gwi(mnuParent);
        var pp = new partParams(mnuParent, 1);
        RequestData("UPD_BC", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + url, wt, mnuParent);
      }
    }
  }
  close_ctx(oo, id);
}

function save_news(oo, prnt, pt, id) {
  var errs = "";
  var url = "";
  var cv = document.getElementById(prnt + "_Values").innerHTML;
  var nv = "";
  var o = document.getElementById(prnt + "_NS");
  var nums = parseInt(o.value);
  if (!(nums > 0 && nums <= 100)) nums = 0;
  nv = nums + ",";
  url = "&numst=" + nums;

  if (nv != cv) {    
    if (nums<=0 || nums>100) errs += lng(32);
    if (errs.length > 0) {
      showBox(errs);
    }
    else if (url.length > 0) {
      var mnuParent = getPartParent(oo);
      if (mnuParent != null) {
        var wt = gwi(mnuParent);
        var pp = new partParams(mnuParent, 1);
        RequestData("UPD_CSTM", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + url, wt,mnuParent);
      }
    }
  }
  else close_ctx(oo, id);
}

function save_scoop_news(oo, prnt, pt, id) {  
  var errs = "";
  var url = "&kwd=";
  var s = "";
  var g = "";
  var pg = -1;
  var o = document.getElementById(prnt + "_pnlKeywords");
  for (var n = 0; n < o.childNodes.length; n++) {
    var tn = o.childNodes[n];
    if (tn && tn.nodeType == 1 && tn.nodeName.toUpperCase() == "INPUT") {
      if(tn.checked){
        var tid = tn.getAttribute("id");
        tid = tid.substr(prnt.length + 5);
        var sep = tid.indexOf("_");
        var tg = tid.substr(0, sep);
        var k = tid.substr(sep + 1);
        if (tg != pg) {
          pg=tg;
          url += g;
          g = ";";
          s = "";
        }
        url += s + k;
        s = ",";
      }
    }
  }
  url += "&sl=";
  var al = new Array(0, 4, 8);
  s = "";
  for (var l = 0; l < al.length; l++) {
    var sl = document.getElementById(prnt + "_SL_" + al[l]);
    if (sl && sl.checked) {
      url += s + al[l];
      s = ",";
    }
  }
  if (s.length == 0) errs += lng(33);
  var o = document.getElementById(prnt + "_NS");
  var nums = parseInt(o.value);
  if (!(nums > 0 && nums <= 100)) nums = 0;
  url += "&numst=" + nums;
  if (nums <= 0 || nums > 100) errs += lng(32);
  o = document.getElementById(prnt + "_TKR");
  url += "&tkr=" + o.checked;
  if (errs.length > 0) {
    showBox(errs);
  }
  else  {
    var mnuParent = getPartParent(oo);
    if (mnuParent != null) {
      var wt = gwi(mnuParent);
      var pp = new partParams(mnuParent, 1);
      RequestData("UPD_CSTM", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + url, wt, mnuParent);
    }
  }
}

function save_chrt(oo, prnt, pt, id) {
  var errs = "";
  var url = "";
  var cv = document.getElementById(prnt + "_Values").innerHTML;
  var nv = "";
  var o = document.getElementById(prnt + "_CW");
  var cw = parseInt(o.value);
  o = document.getElementById(prnt + "_CH");
  var ch = parseInt(o.value);
  nv = cw + ","+ch;
  
  url = "&ch=" + ch+"&cw="+cw;

  if (nv != cv) {
    if (cw <= 0) errs += lng(34);
    if (ch <= 0) errs += lng(35);
    if (errs.length > 0) {
      showBox(errs);
    }
    else if (url.length > 0) {
      var mnuParent = getPartParent(oo);
      if (mnuParent != null) {
        var wt = gwi(mnuParent);
        var pp = new partParams(mnuParent, 1);
        RequestData("UPD_CSTM", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + url, wt,mnuParent);
      }
    }
  }
  else close_ctx(oo, id);
}

function fo_chg(o) {
  var v = o.value;  
  var i = o.id.lastIndexOf("_FO");
  o = document.getElementById(o.id.substr(0, i) + "_F" + o.id.substr(i + 3));    
  o.checked = (v.length > 0);
}

function f_chg(o) {
  var v = o.checked;  
  var i = o.id.lastIndexOf("_F");
  o = document.getElementById(o.id.substr(0, i) + "_FO" + o.id.substr(i + 2));
  if (v)
    o.focus();
  else
    o.value = "";
}

function slct_sty(o, parent) {
  var x = parseInt(o.options[o.selectedIndex].value);
  for (var i = 1; i <= 3; i++) {
    var s = document.getElementById(parent + "_Style" + i+"_T");
    if (s) s.style.display = (i==x?"":"none");
  }
}

function mya_edt(o) {
  RequestData("UPD_CTL", cbUpdPopupPart, "ctype=MYALTEDT", GetWait());
}

function mya_cr(o) {
  RequestData("UPD_CTL", cbUpdPopupPart, "ctype=MYALT", GetWait());
}

function PopupPart(pt) {
  var ctype = "";
  switch (pt) {
    case 19: ctype = "MYPRC"; break;
    case 25: ctype = "MYALT"; break;
  }
  RequestData("UPD_CTL", cbPopupPart, "ctype="+ctype, GetWait());
}

function UpdPopupPart(pt) {
  var ctype = "";
  switch (pt) {    
    case 19: ctype = "MYPRC"; break;
    case 25: ctype = "MYALT"; break;
  }
  RequestData("UPD_CTL", cbUpdPopupPart, "ctype=" + ctype, GetWait());
}

function cbPopupPart(response, wait) {
  var data = PreProcessResponse(response);
  if (data[0]) {    
    showPopup(data[0], 650, 500);
  }
  if (wait) wait.style.visibility = "hidden";
}

function cbUpdPopupPart(response, wait) {
  var data = PreProcessResponse(response);
  if (data[0]) {
    UpdPopup(data[0]);
    for (var d = 1; d < data.length; d++) eval(data[d]);
  }
  if (wait) wait.style.visibility = "hidden";
}

function myp_step(oo, step, prnt,pt,id) {
  var c = document.getElementById(prnt + "_caption").innerHTML;
  var st = parseInt(document.getElementById(prnt + "_step").innerHTML);
  var it = document.getElementById(prnt + "_insttype").innerHTML;
  var pr = document.getElementById(prnt + "_parent").innerHTML;
  var ic = document.getElementById(prnt + "_instC").innerHTML;
  var iv = document.getElementById(prnt + "_instN").innerHTML;
  var pp = document.getElementById(prnt + "_PPID").innerHTML;
  var res = myp_g_sc(prnt);
  
  var errs = "";
  var url="";
  switch (st) {
    case 1:
      {
        var v = document.getElementById(prnt + "_tC").value;
        if (v.length == 0)
          errs += lng(6);
        else {
          url += "&caption=" + v;
          var gd = document.getElementById(prnt + "_grid").innerHTML;
          var lk = document.getElementById(prnt + "_Link").innerHTML;          
          var ss = document.getElementById(prnt + "_SSIN").innerHTML;
          var pd = document.getElementById(prnt + "_pad").innerHTML;
          var fo = document.getElementById(prnt + "_fieldorder").innerHTML;
          var fm = document.getElementById(prnt + "_fields").innerHTML;
          url += "&grid=" + gd + "&ssin=" + ss + "&pad=" + pd + "&mask=" + fm + "&fldo=" + fo + "&clnk=" + lk;
          for (var sy = 1; sy <= 3; sy++) {
            var sty = document.getElementById(prnt + "_Style" + sy);
            if(sty)url += "&stV" + sy + "=" + sty.innerHTML;
          }
        }
        break;
      }
    case 2:
      {
        if (res.Codes.length == 0)
          errs += lng(7);
        else {
          var gd = document.getElementById(prnt + "_grid").innerHTML;
          var lk = document.getElementById(prnt + "_Link").innerHTML;
          var ss = document.getElementById(prnt + "_SSIN").innerHTML;
          var pd = document.getElementById(prnt + "_pad").innerHTML;
          var fo = document.getElementById(prnt + "_fieldorder").innerHTML;
          var fm = document.getElementById(prnt + "_fields").innerHTML;
          url += "&caption=" + c + "&grid=" + gd + "&ssin=" + ss + "&pad=" + pd + "&mask=" + fm + "&fldo=" + fo + "&clnk=" + lk;
          for (var sy = 1; sy <= 3; sy++) {
            var sty = document.getElementById(prnt + "_Style" + sy);
            if (sty) url += "&stV" + sy + "=" + sty.innerHTML;
          }
        }
        break;
      }
    case 3:
      {
        var gd = document.getElementById(prnt + "_Grid").checked;
        var lk = document.getElementById(prnt + "_Link").checked;
        var pd = document.getElementById(prnt + "_Pad").value;
        var ss = document.getElementById(prnt + "_SSIN").checked;
        url += "&caption=" + c + "&grid=" + gd + "&pad=" + pd + "&ssin=" + ss + "&clnk=" + lk;        
        var fc = 0;
        var arrFO = new Array;
        for (var f = 1; f <= 50; f++) {
          var ff = document.getElementById(prnt + "_F" + f);
          if (ff) {
            url += "&fld" + f + "=" + ff.checked;
            if (ff.checked) {
              var fo = document.getElementById(prnt + "_FO" + f);
              if (fo.value.length != 0) {
                var fov = parseInt(fo.value);
                //if (fov > 0 && fov <= mx) {
                if (fov > 0 && fov <= 46) {
                  if (!Contains(arrFO, fov)) {
                    arrFO.push(fov);
                    url += "&fldo" + f + "=" + fo.value;
                    fc++;
                  }
                  else errs += lng_s(8,ff.nextSibling.innerHTML.replace("&nbsp;", " "));
                }
                else errs += lng_s(9,ff.nextSibling.innerHTML.replace("&nbsp;", " ")) + lng(10);
              }
              else errs += lng_s(11,ff.nextSibling.innerHTML.replace("&nbsp;", " "));
            }
          }
        }
        if (fc <= 0)
          errs += lng(12);
        else {
          url += "&max=50";
          for (var sy = 1; sy <= 3; sy++) {
            var sty = document.getElementById(prnt + "_Style" + sy);
            if (sty) url += "&stV" + sy + "=" + sty.innerHTML;
          }
        }
        break;
      }
    case 4:
      {
        var gd = document.getElementById(prnt + "_grid").innerHTML;
        var lk = document.getElementById(prnt + "_Link").innerHTML;
        var ss = document.getElementById(prnt + "_SSIN").innerHTML;
        var pd = document.getElementById(prnt + "_pad").innerHTML;
        var fo = document.getElementById(prnt + "_fieldorder").innerHTML;
        var fm = document.getElementById(prnt + "_fields").innerHTML;
        url += "&caption=" + c + "&grid=" + gd + "&pad=" + pd + "&mask=" + fm + "&fldo=" + fo + "&ssin=" + ss + "&clnk=" + lk;
        var arrType = new Array();
        var arrFont = new Array();
        var arrFontSize = new Array();
        var arrBold = new Array();
        var arrColor = new Array();
        var arrBackColor = new Array();
        var arrAltRow = new Array();
        var arrChanged = new Array();
        var arrEX = new Array();
        for (var i = 1; i <= 3; i++) {
          var sty = "";
          var o = document.getElementById(prnt + "_ctlStyles_Style" + i + "_Font");
          arrFont[i - 1] = o.options[o.selectedIndex].value;
          sty = arrFont[i - 1];
          o = document.getElementById(prnt + "_ctlStyles_Style" + i + "_Size");
          arrFontSize[i - 1] = o.value;
          sty += "," + arrFontSize[i - 1];
          o = document.getElementById(prnt + "_ctlStyles_Style" + i + "_Bold");
          arrBold[i - 1] = o.checked;
          sty += "," + arrBold[i - 1];
          o = document.getElementById(prnt + "_ctlStyles_Style" + i + "_Colourfield");
          arrColor[i - 1] = o.value;
          sty += "," + arrColor[i - 1];
          o = document.getElementById(prnt + "_ctlStyles_Style" + i + "_BackColourfield");
          arrBackColor[i - 1] = o.value;
          sty += "," + arrBackColor[i - 1];
          o = document.getElementById(prnt + "_ctlStyles_Style" + i + "_AltRowColfield");
          arrAltRow[i - 1] = (o ? o.value : "");
          sty += "," + arrAltRow[i - 1];
          arrEX[i - 1] = document.getElementById(prnt + "_ctlStyles_Style" + i + "_Values").innerHTML;
          arrChanged[i - 1] = (sty != arrEX[i - 1]);
          o = document.getElementById(prnt + "_ctlStyles_Style" + i + "_Type");
          arrType[i - 1] = o.innerHTML;
        }
        //now check we have all the values necessary to create a style
        for (var i = 1; i <= 3; i++) {
          if (arrChanged[i - 1]) {
            if (arrBackColor[i - 1] != "" && arrColor[i - 1] != "" && arrFontSize[i - 1] != "") {
              //we have a style so append to the url
              url += "&stfont" + i + "=" + arrFont[i - 1] +
              "&stsize" + i + "=" + arrFontSize[i - 1] +
              "&stbold" + i + "=" + arrBold[i - 1] +
              "&stcolor" + i + "=" + arrColor[i - 1] +
              "&stback" + i + "=" + arrBackColor[i - 1] +
              "&stalt" + i + "=" + arrAltRow[i - 1];
            }
            else errs += lng_s(13, arrType[i - 1]);
          }
          else url += "&stV" + i + "=" + arrEX[i - 1];
        }
        break;
      }
  }
  if (errs.length > 0) {
    alert(errs);
  }
  else {        
    url += "&scc=" + res.Codes + "&sct=" + res.Values + "&it=" + it + "&prnt=" + pr+"&ppid="+pp;
    st += step;
    url= "ctype=MYPRC&parttype=" + pt + "&partid=" + id + url + "&step=" + st;
    RequestData("UPD_CTL", (st <= 4 ? cbUpdPopupPart : cbSavePricePart), url, GetWait(),prnt);    
  }
}

function cbSavePricePart(response, wait, prnt) {
  var data = PreProcessResponse(response);
  if (data[0]) {
    UpdPopup(data[0]);
    RequestData("UPD_CTL", cbShowCat, "ctype=CTLG", GetWait());
  }
  else if (wait) wait.style.visibility = "hidden";
}

function cbShowCat(response, wait) {  
  var data = PreProcessResponse(response);
  if (data[0]) {    
    RfshCat(data[0]);
  }
  if (wait) wait.style.visibility = "hidden";
}

function cbShowCatRfshTab(response, wait) {
  var data = PreProcessResponse(response);
  if (data[0]) {
    RfshCat(data[0]);
    var ct = mSelectedTabIndex;
    mSelectedTabIndex = -1;
    clkTab(ct);
  }
  if (wait) wait.style.visibility = "hidden";
}

function myp_it(o, prnt, pt, id) {
  var c = document.getElementById(prnt + "_caption").innerHTML;
  var st = parseInt(document.getElementById(prnt + "_step").innerHTML);
  var pp = document.getElementById(prnt + "_PPID").innerHTML;
  var url = "&caption=" + c + "&step=" + st;
  url += "&it=" + o.options[o.selectedIndex].value;
  var c = "";
  var t = "";
  var res = myp_g_sc(prnt);
  url += "&scc=" + res.Codes + "&sct=" + res.Values;
  RequestData("UPD_CTL", cbUpdPopupPart, "ctype=MYPRC&parttype=" + pt + "&partid=" + id + url + "&ppid=" + pp, GetWait());
}

function myp_prnt(o, prnt, pt, id) {
  var c = document.getElementById(prnt + "_caption").innerHTML;
  var st = parseInt(document.getElementById(prnt + "_step").innerHTML);
  var it = document.getElementById(prnt + "_insttype").innerHTML;
  var pp = document.getElementById(prnt + "_PPID").innerHTML;
  var url = "&caption=" + c + "&step=" + st+"&it="+it;
  url += "&prnt=" + o.options[o.selectedIndex].value;
  var c = "";
  var t="";
  var res = myp_g_sc(prnt);
  url += "&scc=" + res.Codes + "&sct=" + res.Values + "&ppid=" + pp; 
  RequestData("UPD_CTL", cbUpdPopupPart, "ctype=MYPRC&parttype=" + pt + "&partid=" + id + url, GetWait());
}

function SelVal() {
  this.Codes = "";
  this.Values = "";
}

function myp_g_sc(prnt) {  
  var res = new SelVal();
  var sc = document.getElementById(prnt + "_ctlPriceInstruments_sc");
  if (sc) {
    var s = "";
    for (var lp = 0; lp < sc.options.length; lp++) {
      res.Codes += s + sc.options[lp].value;
      res.Values += s + sc.options[lp].text;
      s = ",";
    }
  }
  else {
    res.Codes = document.getElementById(prnt + "_instC").innerHTML;
    res.Values = document.getElementById(prnt + "_instN").innerHTML;
  }
  return res;
}

function save_ins(o, prnt, pt) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);
    var url = "&sc=";
    var sc = document.getElementById(prnt + "_sc");
    if (sc && sc.options.length > 0) {
      var s = "";
      for (var lp = 0; lp < sc.options.length; lp++) {
        url += s + sc.options[lp].value;
        s = ",";
      }
      RequestData("UPD_INS", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&partType=" + pt + "&PartIndex=" + pp.Counter + url, wt, mnuParent);
    }
    else alert(lng(14));
  }
}

function myp_del(pt, pd) {
  RequestData("RMV_MYP", cbDeletePricePart, "&parttype=" + pt + "&partid=" + pd, GetWait());
}

function myp_up(o, prnt) {
  var sc = document.getElementById(prnt + "_sc");
  if (sc.selectedIndex > 0) {
    var opt = sc.options;
    var no = new Array;
    var x = sc.selectedIndex - 1;
    for (var i = 0; i < sc.selectedIndex - 1; i++) no.push(sc.options[i]);
    no.push(sc.options[sc.selectedIndex]);
    for (var i = sc.selectedIndex - 1; i < sc.options.length; i++) {
      if (i != sc.selectedIndex) no.push(sc.options[i]);
    }
    sc.options.length = 0;
    for (var i = 0; i < no.length; i++) sc.options[i] = no[i];
    sc.selectedIndex = x;
  }
}

function myp_dwn(o, prnt) {
  var sc = document.getElementById(prnt + "_sc");
  if (sc.selectedIndex >= 0 && sc.selectedIndex<sc.options.length-1) {
    var opt = sc.options;
    var no = new Array;
    var x = sc.selectedIndex + 1;
    for (var i = 0; i <= sc.selectedIndex + 1; i++) {
      if (i != sc.selectedIndex)no.push(sc.options[i]);
    }
    no.push(sc.options[sc.selectedIndex]);
    for (var i = sc.selectedIndex + 2; i < sc.options.length; i++)no.push(sc.options[i]);
    sc.options.length = 0;
    for (var i = 0; i < no.length; i++) sc.options[i] = no[i];
    sc.selectedIndex = x;
  }
}

function cbDeletePricePart(response, wait, prnt) {
  var data = PreProcessResponse(response);
  if (data[0]) {
    var err = data[0].indexOf("ERROR:");
    var msg = (err < 0 ? data[0] : data[0].substr(err + 6));
    alert(msg);
    if (err<0) RequestData("UPD_CTL", cbShowCatRfshTab, "ctype=CTLG", GetWait());
  }
  else if (wait) wait.style.visibility = "hidden";
}

function GetHlp(o, hid) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    RequestData("GET_HLP", cbShowHelp, "hlp=" + hid, wt);
  }
}

function cbShowHelp(response, wait) {
  var data = PreProcessResponse(response);
  if (data[0]) {
    showPopup(data[0], 700, 550);
  }
  if (wait) wait.style.visibility = "hidden";
}

function UpdLink(o, prnt,pt) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    //create the url for the Link parameters
    var url = "";
    var href = document.getElementById(prnt + "_txtURL").value;
    var height = document.getElementById(prnt + "_txtH").value;
    var width = document.getElementById(prnt + "_txtW").value;
    var caption = document.getElementById(prnt + "_txtCaption").value;
    var scroll = document.getElementById(prnt + "_chkScroll").checked;
    var scrollL = document.getElementById(prnt + "_txtSL").value;
    var scrollT = document.getElementById(prnt + "_txtST").value;
    var refresh = document.getElementById(prnt + "_txtRR").value;
    if (href != "") {
      href = escape(href);
      url = "&href=" + href + "&height=" + height + "&width=" + width + "&scroll=" + scroll + "&caption=" + caption + "&scrollL=" + scrollL + "&scrollT=" + scrollT + "&rfsh=" + refresh;
      var pp = new partParams(mnuParent, 1);
      RequestData("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + url, wt,mnuParent);
    }
    else alert(lng(15));
  }
}

function ScrWin(id, l, t) {
  try {
    var w = top.frames[id];
    w.scrollTo(l, t);
  } catch (e) { }
}

function ScoopNav(o, Page, CTL_ID, pt) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);
    //do we need search keywords ?
    var kwd = document.getElementById(CTL_ID + "_txtSearchNews");
    kwd = (kwd ? kwd.value : "");
    if (kwd.length > 0) {
      var re = new RegExp(',', 'gi');
      kwd = kwd.replace(re, ' ');
      re = new RegExp('  ', 'gi');
      kwd = kwd.replace(re, ' ');
      re = new RegExp(' ', 'gi');
      kwd = kwd.replace(re, ',');
    }
    RequestData("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + "&Page=" + Page + "&SKeywords=" + kwd, wt, mnuParent);
  }
  return false;
}

function setupEventObject(e) {
  if (!e) return;
  window.event = e;
  window.event.fromElement = e.target;
  window.event.toElement = e.target;
  window.event.srcElement = e.target;
  window.event.x = e.clientX;
  window.event.y = e.clientY;
}

function ScoopSrchK(o, Page, pt) {
  if (lastKeyPress == 13) {
    lastKeyPress = 0;
    //get the keywords from this news Part
    var kwd = o.value;
    ScoopSrch(o, Page, pt, kwd);
    return false;
  } 
}

function ScoopSrchB(o, Page, pt) {  
  //get the keywords from this news Part
  var kwd = o.parentNode.previousSibling.childNodes[0].value;
  ScoopSrch(o, Page, pt,kwd);  
  return false;
}

function ScoopSrch(o, Page, pt,kwd) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);
    var re = new RegExp(',', 'gi');
    kwd = kwd.replace(re, ' ');
    re = new RegExp('  ', 'gi');
    kwd = kwd.replace(re, ' ');
    re = new RegExp(' ', 'gi');
    kwd = kwd.replace(re, ',');
    RequestData("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + "&Page=" + Page + "&SKeywords=" + kwd, wt, mnuParent);
  }
}

function ScoopNav_Pub(o, Page, CTL_ID, pt) {  
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);
    //do we need search keywords ?
    var kwd = document.getElementById(CTL_ID + "_txtSearchNews");
    kwd = (kwd ? kwd.value : "");
    if (kwd.length > 0) {
      var re = new RegExp(',', 'gi');
      kwd = kwd.replace(re, ' ');
      re = new RegExp('  ', 'gi');
      kwd = kwd.replace(re, ' ');
      re = new RegExp(' ', 'gi');
      kwd = kwd.replace(re, ',');
    }    
    RequestDataPub("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + "&Page=" + Page + "&SKeywords=" + kwd, wt, mnuParent);
  }
  return false;
}

function KeyDownPre(e) {  
  lastKeyPress = 0;  
  if (e) {    
    lastKeyPress = e.which?e.which:e.keyCode?e.keyCode:e.charCode;
  }
  else if (window.event) {
    lastKeyPress = window.event.keyCode;
  }
  else if (event) {
    lastKeyPress = event.which;
  }
}

function ScoopSrch_PubK(o, Page, pt) {
  if (lastKeyPress == 13) {
    lastKeyPress = 0;    
    //get the keywords from this news Part
    var kwd = o.value;    
    ScoopSrch_Pub(o, Page, pt, kwd);
    return false;
  }  
}

function ScoopSrch_PubB(o, Page, pt) {
  //get the keywords from this news Part
  var kwd = o.parentNode.previousSibling.childNodes[0].value;
  ScoopSrch_Pub(o, Page, pt, kwd);
  return false;
}

function ScoopSrch_Pub(o, Page, pt, kwd) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);        
    var re = new RegExp(',', 'gi');
    kwd = kwd.replace(re, ' ');
    re = new RegExp('  ', 'gi');
    kwd = kwd.replace(re, ' ');
    re = new RegExp(' ', 'gi');
    kwd = kwd.replace(re, ',');
    RequestDataPub("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + "&Page=" + Page + "&SKeywords=" + kwd, wt, mnuParent);
  }
  return false;
}

function CatSrchB(o, prnt,ft) {
  var txt = o.parentNode.previousSibling.childNodes[0].value;
  CatSrch(o, prnt, txt,ft);
  return false;
}

function CatSrchK(o, prnt,ft) {
  if (lastKeyPress == 13) {
    lastKeyPress = 0;
    //get the keywords from this news Part
    var txt = o.value;
    CatSrch(o, prnt, txt,ft);
    return false;
  }
}

function CatSrch(o, prnt,txt,ft) {
  var mnuParent = getPartParent(o);
  var wt;
  if (mnuParent != null) 
    wt = gwi(mnuParent); 
  else
    wt=gmw();   
  var url = "kwd=" + txt + "&pid=" + prnt + "&ft=" + ft;    
  RequestData("SRCH_CAT", cbShowCatSrch, url, wt, prnt);  
  return false;
}

function cbShowCatSrch(response, wt, prnt) {  
  var data = PreProcessResponse(response);
  if (data[0]) {    
    var srch = document.getElementById(prnt + "_pnlSearchR");    
    var sr = document.createElement("span");
    sr.innerHTML = data[0];
    srch.innerHTML = "";
    srch.appendChild(sr);
    var srch = document.getElementById(prnt + "_pnlSearch");
    srch.style.display = "";
    var tree = document.getElementById(prnt + "_pnlCatalogue");
    tree.style.display = "none";
  }
  if (wt) wt.style.visibility = "hidden";
}

function CatSrchBack(prnt) {
  var srch = document.getElementById(prnt + "_pnlSearch");  
  srch.style.display = "none";
  var tree = document.getElementById(prnt + "_pnlCatalogue");
  tree.style.display = "";
}

function dwnl_lme(o,prnt,pt){  
  var dte=document.getElementById(prnt+"_Date");
  dte=(dte?dte.options[dte.selectedIndex].value:"");
  var tt=document.getElementById(prnt+"_TType");
  tt=(tt?tt.options[tt.selectedIndex].value:"");
  var ins=document.getElementById(prnt+"_Instrument");
  ins=(ins?ins.options[ins.selectedIndex].value:"");
  var url = "ExportData.aspx?dataid=LME&dte=" + dte + "&tt=" + tt + "&ins=" + ins;
  window.open(url);    
  return false;
}

function swch_cstm(o) {
  for (var i = 0; i < o.options.length; i++)document.getElementById(o.options[i].value).style.display = (o.options[i].selected?"":"none");
}

function sp_clk(o, bp, zn, sp,sn,t) {
  var url = "tab=" + t + "&bp=" + bp + "&zn=" + zn + "&sp=" + sp + "&sn=" + sn;
  RequestDataPub("SP_CLK", null, url, null);
}

function pg_rdr(site, tab) {
  var url = "site=" + site + "&tab=" + tab;
  RequestDataPub("PG_RDR", null, url, null);
}

function mya_step(oo, step, prnt, pt, id) {  
  var errs = "";
  var url = "";
  var at;  
  for(var a=1;a<=3;a++){
    var ato = document.getElementById(prnt + "_at_"+a);
    if (ato && (ato.checked || (ato.innerHTML && ato.innerHTML == "checked"))) {
      url = "at="+a;
      at=a;
      break;
    }
  }  
  var st = parseInt(document.getElementById(prnt + "_step").innerHTML);
  var ic = document.getElementById(prnt + "_instC").innerHTML;
  var iv = document.getElementById(prnt + "_instN").innerHTML;
  var ad = document.getElementById(prnt + "_AD");
  if (ad) {
    ad = ad.value ? ad.value : ad.innerHTML;
    url += "&ad=" + ad;
  }
  else ad = "";
  var dt = document.getElementById(prnt + "_DT");
  if (dt){
    if (dt.options)
      dt=(dt.selectedIndex >= 0 ? dt.options[dt.selectedIndex].value : "1");
    else
      dt=dt.innerHTML;
    url += "&dt=" + dt;
  }
  if (dt == "1") {
    var rg = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;    
    if (ad=="" || !rg.test(ad)) errs += lng(39);
  }
  else if (dt == "2") {
    ad = parseInt(ad);    
    if (isNaN(ad)) errs += lng(40);
  }
  
  if (step > 0) {
    switch (at) {
      case 1:
      case 3:
        {
          var pf = document.getElementById(prnt + "_PF");
          if (pf) {
            pf = (pf.options ? pf.options[pf.selectedIndex].value : pf.innerHTML);
            pf = parseInt(pf);
            url += "&pf=" + pf;
          }
          var pfh = document.getElementById(prnt + "_PFH");
          if (pfh) {
            pfh = (pfh.value ? pfh.value : pfh.innerHTML);
            pfh = pfh.replace(":", "");
            if (pfh.length > 0) {
              if (pfh.length == 3) pfh = "0" + pfh;
              if (pfh.length == 4) {
                var pfhH = pfh.substr(0, 2);
                pfhH = parseInt(pfhH);
                if (pfhH >= 0 && pfhH <= 23) {
                  var pfhM = pfh.substr(2, 2);
                  pfhM = parseInt(pfhM);
                  if (pfhM >= 0 && pfhM <= 59)
                    url += "&pfh=" + pfh;
                  else
                    errs += lng(16);
                }
                else errs += lng(16);
              }
              else errs += lng(16);
            }
          }

          var sth = document.getElementById(prnt + "_SH");
          if (sth) {
            sth = (sth.value ? sth.value : sth.innerHTML);
            sth = parseInt(sth);
            if (pf > 0) {
              if (sth >= 0 && sth <= 23)
                url += "&sh=" + sth;
              else
                errs += lng(17);
            }
            else url += "&eh=" + enh;
          }
          var enh = document.getElementById(prnt + "_EH");
          if (enh) {
            enh = (enh.value ? enh.value : enh.innerHTML);
            enh = parseInt(enh);
            if (pf > 0) {
              if (enh >= 0 && enh <= 23)
                url += "&eh=" + enh;
              else
                errs += lng(18);
            }
            else url += "&sh=" + enh;
          }
          if (at == 1) {
            var tl = document.getElementById(prnt + "_TL");
            if (tl) {
              tl = (tl.value ? tl.value : tl.innerHTML);
              var tlp = parseFloat(tl);              
              if (isNaN(tlp)) 
                errs += lng(38);
              else
                url += "&tl=" + tlp;
            }
            var tt = document.getElementById(prnt + "_TT");
            if (tt) url += "&tt=" + (tt.options ? tt.options[tt.selectedIndex].value : tt.innerHTML);
          }
          var res = myp_g_sc(prnt);
          if (st == 2 && res.Codes.length == 0) errs += lng(19);
          url += "&scc=" + res.Codes + "&sct=" + res.Values;
          break;
        }
      case 2:
        {
          switch (st) {
            case 1:
              {
                var kwd = document.getElementById(prnt + "_KWDS");
                if (kwd) url += "&kwd=" + kwd.innerHTML;
                kwd = document.getElementById(prnt + "_KWNS");
                if (kwd) url += "&kwn=" + kwd.innerHTML;
                break;
              }
            case 2:
              {
                var kwd = document.getElementById(prnt + "_kw");
                if (kwd.selectedIndex < 0)
                  errs += lng(20);
                else {
                  url += "&kwd=";
                  var ks = "";
                  for (var k = 0; k < kwd.options.length; k++) {
                    if (kwd.options[k].selected) {
                      url += ks + kwd.options[k].value;
                      ks = ",";
                    }
                  }
                  url += "&kwn=";
                  ks = "";
                  for (var k = 0; k < kwd.options.length; k++) {
                    if (kwd.options[k].selected) {
                      url += ks + kwd.options[k].text;
                      ks = ",";
                    }
                  }
                }
                break;
              }
            case 3:
              {                
                var kwd = document.getElementById(prnt + "_KWDS");
                if (kwd) url += "&kwd=" + kwd.innerHTML;
                kwd = document.getElementById(prnt + "_KWNS");
                if (kwd) url += "&kwn=" + kwd.innerHTML;               
                break;
              }
            case 4:
              {                
                break;
              }
          }
          break;
        }
    }
  }
  else {
    switch (at) {
      case 1:
      case 3:
        {
          var res;
          if (st == 2) {
            var sc = document.getElementById(prnt + "_sc");
            if (!sc) {
              res = new SelVal();
              sc = document.getElementById(prnt + "_inst");
              if (sc && sc.options) {
                var s = (sc.selectedIndex ? sc.selectedIndex : 0);
                res.Codes = sc.options[s].value;
                res.Values = sc.options[s].text;
              }
            }
            else res = myp_g_sc(prnt);
          }
          else res = myp_g_sc(prnt);
          url += "&scc=" + res.Codes + "&sct=" + res.Values;
          var pf = document.getElementById(prnt + "_PF");
          if (pf) url += "&pf=" + (pf.options ? pf.options[pf.selectedIndex].value : pf.innerHTML);
          var pfh = document.getElementById(prnt + "_PFH");
          if (pfh) url += "&pfh=" + (pfh.value ? pfh.value : pfh.innerHTML);
          var sth = document.getElementById(prnt + "_SH");
          if (sth) url += "&sh=" + (sth.value ? sth.value : sth.innerHTML);
          var enh = document.getElementById(prnt + "_EH");
          if (enh) url += "&eh=" + (enh.value ? enh.value : enh.innerHTML);
          if (at == 1) {
            var tl = document.getElementById(prnt + "_TL");
            if (tl) {
              var tlp = parseFloat(tl.value ? tl.value : tl.innerHTML);
              if (isNaN(tlp))
                errs += lng(38);
              else
                url += "&tl=" + tlp;
            }
            var tt = document.getElementById(prnt + "_TT");
            if (tt) url += "&tt=" + (tt.options ? tt.options[tt.selectedIndex].value : tt.innerHTML);
          }
          break;
        }
      case 2:
        {
          var kwd = document.getElementById(prnt + "_KWDS");
          if (kwd) url += "&kwd=" + kwd.innerHTML;
          kwd = document.getElementById(prnt + "_KWNS");
          if (kwd) url += "&kwn=" + kwd.innerHTML;
          break;
        }
    }
  }
  if (errs.length > 0) {
    alert(errs);
  }
  else {
    st += step;
    url += "&ctype=MYALT&parttype=" + pt + "&partid=" + id + "&step=" + st;
    RequestData("UPD_CTL", (st <= 4 ? cbUpdPopupPart : cbSaveMyAlert), url, GetWait(), prnt);
  }
}

function mya_prd_chg(o, prnt) {
  var op = document.getElementById(prnt + "_PFD");
  op.style.display = (o.selectedIndex > 0 ? "none" : "");
  op = document.getElementById(prnt + "_tr3_2");
  op.style.display = (o.selectedIndex == 0 ? "none" : "");  
}

function myae_step(oo, step, prnt, pt, id) {
  var errs = "";
  var url = "";
  var at;
  for (var a = 1; a <= 3; a++) {
    var ato = document.getElementById(prnt + "_at_" + a);
    if (ato && (ato.checked || (ato.innerHTML && ato.innerHTML == "checked"))) {
      url = "at=" + a;
      at = a;
      break;
    }
  }
  var st = parseInt(document.getElementById(prnt + "_step").innerHTML);  
  var ic = document.getElementById(prnt + "_instC").innerHTML;
  var iv = document.getElementById(prnt + "_instN").innerHTML;  
  var ad = document.getElementById(prnt + "_AD");
  if (ad) {
    ad = ad.value ? ad.value : ad.innerHTML;
    url += "&ad=" + ad;
  }
  else ad = "";
  var dt = document.getElementById(prnt + "_DT");
  if (dt) {
    if (dt.options)
      dt=(dt.selectedIndex >= 0 ? dt.options[dt.selectedIndex].value : "1");
    else
      dt=dt.innerHTML;
    url += "&dt=" + dt;
  }
  if (dt == "1") {
    var rg = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    if (ad="" || !rg.test(ad)) errs += lng(39);
  }
  else if (dt == "2") {
    ad = parseInt(ad);
    if (isNaN(ad)) errs += lng(40);
  }

  if (step > 0) {
    switch (at) {
      case 1:
      case 3:
        {
          var pf = document.getElementById(prnt + "_PF");
          if (pf) {
            pf = (pf.options ? pf.options[pf.selectedIndex].value : pf.innerHTML);
            pf = parseInt(pf);
            url += "&pf=" + pf;
          }
          var pfh = document.getElementById(prnt + "_PFH");
          if (pfh) {
            pfh = (pfh.value ? pfh.value : pfh.innerHTML);
            if (pfh.length > 0) {
              pfh = pfh.replace(":", "");
              if (pfh.length == 3) pfh = "0" + pfh;
              if (pfh.length == 4) {
                var pfhH = pfh.substr(0, 2);
                pfhH = parseInt(pfhH);
                if (pfhH >= 0 && pfhH <= 23) {
                  var pfhM = pfh.substr(2, 2);
                  pfhM = parseInt(pfhM);
                  if (pfhM >= 0 && pfhM <= 59)
                    url += "&pfh=" + pfh;
                  else
                    errs += lng(16);
                }
                else errs += lng(16);
              }
              else errs += lng(16);
            }
          }

          var sth = document.getElementById(prnt + "_SH");
          if (sth) {
            sth = (sth.value ? sth.value : sth.innerHTML);
            sth = parseInt(sth);
            if (pf > 0) {
              if (sth >= 0 && sth <= 23)
                url += "&sh=" + sth;
              else
                errs += lng(17);
            }
            else url += "&sh=" + sth;
          }
          var enh = document.getElementById(prnt + "_EH");
          if (enh) {
            enh = (enh.value ? enh.value : enh.innerHTML);
            enh = parseInt(enh);
            if (pf > 0) {
              if (enh >= 0 && enh <= 23)
                url += "&eh=" + enh;
              else
                errs += lng(18);
            }
            else url += "&eh=" + enh;
          }
          if (at == 1) {
            var tl = document.getElementById(prnt + "_TL");
            if (tl) {
              tl = (tl.value ? tl.value : tl.innerHTML);
              tl = parseFloat(tl);
              if (isNaN(tl))
                errs += lng(38);
              else
                url += "&tl=" + tl;
            }
            var tt = document.getElementById(prnt + "_TT");
            if (tt) url += "&tt=" + (tt.options ? tt.options[tt.selectedIndex].value : tt.innerHTML);
          }

          var res = myp_g_sc(prnt);
          if(st==2 && res.Codes.length == 0) errs += lng(19);          
          url += "&scc=" + res.Codes + "&sct=" + res.Values;
          break;
        }
      case 2:
        {
          switch (st) {
            case 1:
              {
                var kwd = document.getElementById(prnt + "_KWDS");
                if (kwd) url += "&kwd=" + kwd.innerHTML;
                kwd = document.getElementById(prnt + "_KWNS");
                if (kwd) url += "&kwn=" + kwd.innerHTML;
                break;
              }
            case 2:
              {
                var kwd = document.getElementById(prnt + "_kw");
                if (kwd.selectedIndex < 0)
                  errs += lng(20);
                else {
                  url += "&kwd=";
                  var ks = "";
                  for (var k = 0; k < kwd.options.length; k++) {
                    if (kwd.options[k].selected) {
                      url += ks + kwd.options[k].value;
                      ks = ",";
                    }
                  }
                  url += "&kwn=";
                  ks = "";
                  for (var k = 0; k < kwd.options.length; k++) {
                    if (kwd.options[k].selected) {
                      url += ks + kwd.options[k].text;
                      ks = ",";
                    }
                  }
                }
                break;
              }
            case 3:
              {
                var kwd = document.getElementById(prnt + "_KWDS");
                if (kwd) url += "&kwd=" + kwd.innerHTML;
                kwd = document.getElementById(prnt + "_KWNS");
                if (kwd) url += "&kwn=" + kwd.innerHTML;
                break;
              }
            case 4:
              {
                break;
              }
          }
          break;
        }
    }
  }
  else {
    switch (at) {
      case 1:
      case 3:
        {
          var res;
          if (st == 2) {
            var sc = document.getElementById(prnt + "_sc");
            if (!sc) {
              res = new SelVal();
              sc = document.getElementById(prnt + "_inst");
              if (sc && sc.options) {
                var s = (sc.selectedIndex ? sc.selectedIndex : 0);
                res.Codes = sc.options[s].value;
                res.Values = sc.options[s].text;
              }
            }
            else res = myp_g_sc(prnt);
          }
          else res = myp_g_sc(prnt);
          url += "&scc=" + res.Codes + "&sct=" + res.Values;
          var pf = document.getElementById(prnt + "_PF");
          if (pf) url += "&pf=" + (pf.options ? pf.options[pf.selectedIndex].value : pf.innerHTML);
          var pfh = document.getElementById(prnt + "_PFH");
          if (pfh) url += "&pfh=" + (pfh.value ? pfh.value : pfh.innerHTML);
          var sth = document.getElementById(prnt + "_SH");
          if (sth) url += "&sh=" + (sth.value ? sth.value : sth.innerHTML);
          var enh = document.getElementById(prnt + "_EH");
          if (enh) url += "&eh=" + (enh.value ? enh.value : enh.innerHTML);
          if (at == 1) {
            var tl = document.getElementById(prnt + "_TL");
            if (tl) {
              tl = parseFloat(tl.value ? tl.value : tl.innerHTML);
              if (isNaN(tl))
                errs += lng(38);
              else
                url += "&tl=" + tl;
            }
            var tt = document.getElementById(prnt + "_TT");
            if (tt) url += "&tt=" + (tt.options ? tt.options[tt.selectedIndex].value : tt.innerHTML);
          }
          break;
        }
      case 2:
        {
          var kwd = document.getElementById(prnt + "_KWDS");
          if (kwd) url += "&kwd=" + kwd.innerHTML;
          kwd = document.getElementById(prnt + "_KWNS");
          if (kwd) url += "&kwn=" + kwd.innerHTML;
          break;
        }
    }
  }
  if (errs.length > 0) {
    alert(errs);
  }
  else {
    st += step;
    url += "&ctype=MYALTEDT&parttype=" + pt + "&partid=" + id + "&step=" + st + "&aid=" + id;    
    RequestData("UPD_CTL", (st <= 4 ? cbUpdPopupPart : cbSaveMyAlert), url, GetWait(), prnt);
  }
}

function myae_at_chg(o,prnt) {
  var url = "ctype=MYALTEDT_F&at=";
  var at = document.getElementById(prnt + "_FAT");
  if (at) url += at.options[at.selectedIndex].value;
  RequestData("UPD_CTL", cbUpdPopupPart, url, GetWait(), prnt);
}

function myae_del(o, prnt, aid,at,ins) {
  if (window.confirm(lng(21))) {
    var url = "ctype=MYALTEDT_D&aid=" + aid+"&at="+at+"&scc="+ins;    
    RequestData("UPD_CTL", cbUpdPopupPart, url, GetWait(), prnt);
  }
}

function myae_edt(o, prnt, aid, at) {
  var url = "step=2&ctype=MYALTEDT&aid="+aid+"&at="+at;  
  RequestData("UPD_CTL", cbUpdPopupPart, url, GetWait(), prnt);
}

function myae_prd_chg(o, prnt) {
  var op = document.getElementById(prnt + "_PFD");
  op.style.display = (o.selectedIndex > 0 ? "none" : "");
  op = document.getElementById(prnt + "_tr3_2");
  op.style.display = (o.selectedIndex == 0 ? "none" : "");
}

function udt(dt) {
  RequestData("UPD_SET", cbPS, "dt=" + dt.options[dt.selectedIndex].value, GetWait());
}

function ups(ps) {
  RequestData("UPD_SET", cbPS, "ps=" + ps.options[ps.selectedIndex].value, GetWait());
}

function rstTabs(o) {
  if (window.confirm(lng(36))) {
    RequestData("RST", cbPS, "", GetWait());
  }
}

function cbPS(response, wt) {
  var data = PreProcessResponse(response);
  if (data[0]) {
    alert(data[0]);
    window.location = "mydesk.aspx";
  }
  else ResetWait(wt);
}

function opt_ins(o, parent, pt) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);
    var ins = document.getElementById(parent + "_ins");
    ins = ins.options[ins.selectedIndex].value;
    RequestData("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + "&Commodity=" + ins, wt, mnuParent);
  }
}

function opt_pmt(o, parent,comm, pt) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);
    var pmt = document.getElementById(parent + "_pmt");
    pmt = pmt.options[pmt.selectedIndex].value;
    RequestData("DRL_PRT", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + "&Commodity=" + comm+"&sttl="+pmt, wt, mnuParent);
  }
}

function opt_upd(o, parent, comm,pmt, pt) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);
    var stk = document.getElementById(parent + "_stk");
    var sk = "";
    var skS = "";
    for (var s = 0; s < stk.options.length; s++) {
      if(stk.options[s].selected){
        sk += skS + stk.options[s].value;
        skS="!";
      }
    }
    stk = document.getElementById(parent + "_ORIG_STK");
    if (stk!=null) stk = stk.innerHTML;
    if (stk.length>0) sk += skS + stk;
    RequestData("UPD_CSTM", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + "&selcom=" + sk + "&Commodity=" + comm + "&sttl=" + pmt, wt, mnuParent);
  }
}

function opt_rmv(o, prnt, sym, comm, pmt, pt) {
  var mnuParent = getPartParent(o);
  if (mnuParent != null) {
    var wt = gwi(mnuParent);
    var pp = new partParams(mnuParent, 1);
    var stk = document.getElementById(prnt + "_ORIG_STK");
    if (stk != null) {
      stk = stk.innerHTML;
      stk = stk.replace("!" + sym, "").replace(sym + "!", "").replace(sym, "");
      RequestData("UPD_CSTM", cbShowHidePart, "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&MinimizedPart=false&partType=" + pt + "&selcom=" + stk + "&Commodity=" + comm + "&sttl=" + pmt, wt, mnuParent);
    }
  }
}

function news_cnt(id) {
  RequestDataPub("NEWS_CNT",null,"id="+id, null, null);
}

function cont_prc_com(o, prnt) {
  var idx = o.selectedIndex;
  var ins = o.options[idx].value;
  var typ = document.getElementById(prnt + "_ins_type");
  if (typ) {
    var arrT = typ.innerHTML.split(",");
    var t = parseInt(arrT[idx]);    
    var cal = document.getElementById(prnt + "_trSelectDate");
    switch (t) {
      case 1:
      case 9:cal.style.display = 'none';break;
      case 27:cal.style.display = '';break;
    }   
  }
}

function cnt_prc(o, prnt) {
  var errs="";
  var url="";
  var usr = document.getElementById(prnt + "_txtCode");
  if (usr && usr.value != "")
    url="usr="+usr.value;
  else  
    errs+=lng(22);
  var pin=document.getElementById(prnt + "_txtPIN");
  if (pin && pin.value != "")
    url+="&pin="+pin.value;
  else
    errs += lng(23);
  var bid = document.getElementById(prnt + "_txtBid");
  if (bid && bid.value != "")
    url+="&bid="+bid.value;
  else
    errs += lng(24);
  var ask = document.getElementById(prnt + "_txtOffer");
  if (ask && ask.value != "")
    url+="&ask="+ask.value;
  else
    errs += lng(25);
  
  var cal = document.getElementById(prnt + "_calSettlementDate_tbM");
  var selDate = document.getElementById(prnt + "_calSettlementDate_lblSelectedDate");
  if (cal && cal.style.display == '')
    url+="&dte="+selDate.innerHTML;
  else
    selDate = "";
  
  if (errs.length == 0) {
    var ins = document.getElementById(prnt + "_COM");
    var idx = ins.selectedIndex;
    url += "&com=" + ins.options[idx].value;
    var typ = document.getElementById(prnt + "_ins_type");
    var arrT = typ.innerHTML.split(",");
    url += "&it=" + arrT[idx];   
    RequestDataPub("UPD_PRC", cbSubmitPrice, url, gmw());    
  }
  else alert(errs);
}

function cbSubmitPrice(response, wait) {
  var data = PreProcessResponse(response);
  if (wait) wait.style.visibility = "hidden";  
  if (data[0])alert(data[0]);
}

function gmw() {
  return document.getElementById("imgRequesting");
}

function drl_ins_cat(o, gid, ft,prnt) {
  var ch=o.nextSibling;
  if (ch) {
    ch.style.display = (ch.style.display == 'none' ? '' : 'none');
  }
  else {
    var mnuParent = getPartParent(o);
    var wt=null;
    if (mnuParent != null)
      wt = gwi(mnuParent);
    else
      wt=gmw();
    var url = "gid=" + gid + "&ft=" + ft+"&pid="+prnt;
    RequestData("DRL_INS_CAT", cbDrlInsCat, url, wt, o);
  } 
}

function cbDrlInsCat(response, wt,grp) {
  var data = PreProcessResponse(response);    
  if (data[0]) {
    var nd = document.createElement("span");
    nd.innerHTML=data[0];
    grp.parentNode.appendChild(nd);
  }    
  ResetWait(wt);
}

function ins_cat_add(o, id, prnt) {
  var sc = document.getElementById(prnt + "_sc");
  var mxi = document.getElementById(prnt + "_MXI");
  mxi = (mxi ? parseInt(mxi.innerHTML) : 0);
  var c = ""+id+"";
  var t = "" + o.innerHTML.replace("<NOBR>", "").replace("</NOBR>", "").replace("<nobr>", "").replace("</nobr>", "") + "";
  var f = false;
  for (var lp = 0; lp < sc.options.length; lp++) {
    if (sc.options[lp].value == c) {
      f = true;
      break;
    }
  }
  if (!f) {    
    if ((mxi == 0) || (mxi > 0 && sc.options.length < mxi)) {
      var op = new Option(t, c, false, false);
      sc.options[sc.options.length] = op;
      sc.selectedIndex = sc.options.length - 1;
    }
    else alert(lng_s(37,mxi));
  }
}

function ins_cat_hist_sel(o, id, prnt) {  
  var mnuParent = getPartParent(o);
  var wt = null;
  if (mnuParent != null)
    wt = gwi(mnuParent);
  else
    wt = gmw();
  var url = "id=" + id + "&pid=" + prnt;
  o.style.fontWeight = "bold";
  if (prevHistItem) prevHistItem.style.fontWeight = "";
  prevHistItem = o;
  var sm = document.getElementById(prnt + "_SMTH");
  if(sm)sm = sm.options[sm.selectedIndex].value;
  var em = document.getElementById(prnt + "_EMTH");
  if(em)em = em.options[em.selectedIndex].value;
  var sy = document.getElementById(prnt + "_SYR");
  if(sy)sy = sy.options[sy.selectedIndex].value;
  var ey = document.getElementById(prnt + "_EYR");
  if (ey) ey = ey.options[ey.selectedIndex].value;
  var oht = document.getElementById(prnt + "_OHT");
  if (oht) oht = oht.options[oht.selectedIndex].value;
  if (sm && em && sy && ey) url += "&sdte=" + sy + sm + "01&edte=" + ey + em + "01&oht=" + oht;
  RequestData("SEL_HIST_INS_CAT", cbSelHistInsCat, url, wt, prnt);
}

function cbSelHistInsCat(response, wt, prnt) {
  var data = PreProcessResponse(response);
  if (data[0]) {
    var txt = document.getElementById(prnt + "_DATES");
    txt.innerHTML = data[0];
    txt.style.display = '';
  }
  ResetWait(wt);
}

function hist_get_data(o, id, prnt, pg) {
  var mnuParent = getPartParent(o);
  var wt = null;
  if (mnuParent != null)
    wt = gwi(mnuParent);
  else
    wt = gmw();
  var pp = new partParams(mnuParent, 1);
  var sm = document.getElementById(prnt + "_SMTH");
  sm = sm.options[sm.selectedIndex].value;
  var em = document.getElementById(prnt + "_EMTH");
  em = em.options[em.selectedIndex].value;
  var sy = document.getElementById(prnt + "_SYR");
  sy = sy.options[sy.selectedIndex].value;
  var ey = document.getElementById(prnt + "_EYR");
  ey = ey.options[ey.selectedIndex].value;
  var oht = document.getElementById(prnt + "_OHT");
  if (oht) oht = oht.options[oht.selectedIndex].value;
  var url = "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&id=" + id + "&pid=" + prnt + "&pg=" + pg + "&sdte=" + sy + sm + "01&edte=" + ey + em + "01&oht=" + oht;
  RequestData("GET_HIST_DATA", cbGetHistData, url, wt, prnt);  
}
var prevHistItem = null;
function ins_hd_hist_flt(prnt) {
  var o = document.getElementById(prnt + "_DATA");
  if (o) o.innerHTML = "";
  o = document.getElementById(prnt + "_DATES");
  if (o) o.style.display = 'none';
}

function cbGetHistData(response, wt, prnt) {  
  var data = PreProcessResponse(response);
  if (data[0]) {    
    var txt = document.getElementById(prnt + "_DATA");
    txt.innerHTML = data[0];
    var svb = document.getElementById(prnt + "_SV");
    if (svb) svb.style.display = "";
  }
  ResetWait(wt);
}

function tgl_hist_cat(o, prnt1,prnt2,oid) {
  var b = document.getElementById(prnt1 + "_cdp_" + prnt2 + "_tblSearch");
  var sh = (b.style.display == "none" ? "" : "none");
  b.style.display = sh;
  b = document.getElementById(prnt1 + "_cdp_"+prnt2+"_tbM");
  b.style.display = sh;
  b = document.getElementById(prnt1+"_"+prnt2 + "_DATES");
  b.style.display = sh;  
  o.style.display = 'none';
  document.getElementById(prnt1+"_cdp_"+oid).style.display = "";
}

function hist_save(o, id, prnt,pgs) {
  var mnuParent = getPartParent(o);
  var wt = null;
  if (mnuParent != null)
    wt = gwi(mnuParent);
  else
    wt = gmw();
  var pp = new partParams(mnuParent, 1);
  var sm = document.getElementById(prnt + "_SMTH");
  sm = sm.options[sm.selectedIndex].value;
  var em = document.getElementById(prnt + "_EMTH");
  em = em.options[em.selectedIndex].value;
  var sy = document.getElementById(prnt + "_SYR");
  sy = sy.options[sy.selectedIndex].value;
  var ey = document.getElementById(prnt + "_EYR");
  ey = ey.options[ey.selectedIndex].value;
  var oht = document.getElementById(prnt + "_OHT");
  if (oht) oht = oht.options[oht.selectedIndex].value;
  var url = "TabIndex=" + mSelectedTabIndex + "&RowIndex=" + pp.Row + "&ColIndex=" + pp.Col + "&PartIndex=" + pp.Counter + "&id=" + id + "&sdte=" + sy + sm + "01&edte=" + ey + em + "01&pgs="+pgs+"&oht="+oht;
  RequestData("SAVE_HIST_DATA", cbHistSave, url, wt, o);
}

function cbHistSave(response, wt, o) {
  var data = PreProcessResponse(response);
  if (data[0]) {
    if (o) o.style.display = 'none';
  }
  ResetWait(wt);
}

function myp_rmv(prnt) {
  var sc = document.getElementById(prnt + "_sc");
  var r = -1;
  for (var i = 0; i < sc.options.length; i++) {
    if (sc.options[i].selected) {
      sc.remove(i);
      r = i;
      i--;      
    }
  }
  if (r >= 0 && r < sc.options.length) {
    sc.selectedIndex = r;
    sc.focus();
  }
}

function nws_tkr(id, n, d) {
  setTimeout("nws_tkr_stp('" + id + "'," + n + "," + d + ",1);", d);
}

function nws_tkr_stp(id, n, d, r) {
  try {
    var dd = id.indexOf("cdp");
    dd = id.substr(0, dd - 1);
    var b = document.getElementById(dd + "_cdp_Base_ID").innerHTML;
    var tkr = document.getElementById(dd + "_cdp_" + b + "_CSTM_TKR");
    if (tkr.innerHTML=='true') {
      var tbl = document.getElementById(id + "_scoop");
      for (var i = 0; i < tbl.rows.length; i++) tbl.rows[i].style.display = 'none';
      if (++r > n) r = 1;
      tbl.rows[r - 1].style.display = '';
      setTimeout("nws_tkr_stp('" + id + "'," + n + "," + d + "," + r + ");", d);
    }
  }
  catch (e) {}  
}
