var doorparams = new Array;
var railmaterial = '22 MR MDF 2440 SHAKER RAIL 90';
var midrailmaterial = '22 MR MDF 2440 SHAKER MID RAIL 90';

var railmaterial_magicut = '22 MR MDF 2440 SHAKER RAIL 90';
var midrailmaterial_magicut = '22 MR MDF 2440 SHAKER MID RAIL 90';

function recreateDoors()
{
  loadDoorSettings();
  $("#viewdoororder").hide();
  var id = 1;
  while ((('widthdoor'+id) in doorparams))
  {
    addDoor();
    id++;
  }
  $("#doorblock").append("<button class='cwbutton' onclick=\"addDoor(); return false;\">Add Door</button>");
}

function loadPreviousDoors()
{
  doorparams = [];
  var i = 1;
  loadDoorSettings();
  while ((('widthdoor'+i) in doorparams))
  {
    i++;
  }
  while (i > 1)
  {
    addDoor();
    i--;
  }
  $(".doormaximised").hide();
  $(".doorminmax").text('Show detail');
}

function addDoor()
{
var r = '';
var id;
  loadDoorSettings();
  if ($("#doorblock > div").length != 0)
  {
    id = $("#doorblock > div").size();
    id++;
    id = 'door'+id;
  }
  else
  {
    id = 'door1';
  }
  if (!(('name'+id) in doorparams))
  {
    doorparams['name'+id] = 'Door';
  }
  if (!(('width'+id) in doorparams))
  {
    doorparams['width'+id] = 800;
  }
  if (!(('height'+id) in doorparams))
  {
    doorparams['height'+id] = 2000;
  }
  if (!(('midrail1'+id) in doorparams))
  {
    doorparams['midrail1'+id] = '';
  }
  if (!(('finish'+id) in doorparams))
  {
    doorparams['finish'+id] = 'Unfinished';
  }
  if (!(('qtyL'+id) in doorparams))
  {
    doorparams['qtyL'+id] = '1';
  }
  if (!(('qtyR'+id) in doorparams))
  {
    doorparams['qtyR'+id] = '';
  }
  if (!(('hingebottom'+id) in doorparams))
  {
    doorparams['hingebottom'+id] = '70';
  }
  if (!(('numberhinges'+id) in doorparams))
  {
    doorparams['numberhinges'+id] = '2';
  }
  if (!(('dooroffset'+id) in doorparams))
  {
    doorparams['dooroffset'+id] = '2.5';
  }
  if (!(('carcasssides'+id) in doorparams))
  {
    doorparams['carcasssides'+id] = '';
  }
  if (!(('doorcomments'+id) in doorparams))
  {
    doorparams['doorcomments'+id] = '';
  }
  if (!(('drillingdistance'+id) in doorparams))
  {
    doorparams['drillingdistance'+id] = '5';
  }
  r += "<div class='door' id='"+id+"'>";
  r += "<div id='doorheadline"+id+"' class='doorheadline'></div>";
  r += "<button class='cwbutton doorminmax' onclick=\"minmaxdoor('"+id+"'); return false\">Hide detail</button>";
  r += "<button class='cwbutton' onclick='$(this).parent().remove(); masterDoorCuttingList(); saveDoorSettings(); return false;' >Remove from Job</button><br>";
  r += "<div class='doormaximised'>";
  //r += "Set the dimensions for a frame and panel door and the appropriate sized parts will be added to your cutting list.<br>";
  r += "  <div class='doordiagram' id='diagram"+id+"'>(Left handed door front view)</div>";
  r += "  <div class='doorcontrols'>";

  r += "    <span class='doorlabel'>Door Name</span><span class='doorarglabel'><input id='name"+id+"' value='"+doorparams['name'+id]+"' class='doorarg'></span><hr>";
  r += "    <span class='doorlabel'>Door Quantity (LEFT)</span><span class='doorarglabel'><input id='qtyL"+id+"' value='"+doorparams['qtyL'+id]+"' class='doorarg'></span><hr>";
  r += "    <span class='doorlabel'>Door Quantity (RIGHT)</span><span class='doorarglabel'><input id='qtyR"+id+"' value='"+doorparams['qtyR'+id]+"' class='doorarg'></span><hr>";
  //r += "    <span class='doorlabel'>Frame thickness</span><span class='doorarg'><input id='framethickness"+id+"' value='18'>mm</span><hr>";

  r += "    <span class='doorlabel'>Door Height</span><span class='doorarglabel'><input id='height"+id+"' value='"+doorparams['height'+id]+"' class='doorarg'></span><hr>";
  r += "    <span class='doorlabel'>Door Width</span><span class='doorarglabel'><input id='width"+id+"' value='"+doorparams['width'+id]+"' class='doorarg'></span><hr>";
  r += "    <span class='doorlabel'>Mid rail 1 centreline</span><span class='doorarglabel'><input id='midrail1"+id+"' value='"+doorparams['midrail1'+id]+"' class='doorarg'></span>(leave blank for no mid-rail)<hr>";
  //r += "    <span class='doorlabel'>Mid rail 2 centreline</span><span class='doorarg'><input id='midrail2"+id+"'></span>(leave blank for no mid-rail)<hr>";
  r += "Finish <select id='finish"+id+"' class='doorarg'><option value='Unfinished'>Unfinished</option><option value='Primed'>Primed</option></select><hr>";
  
  var checked = '';
  if (doorparams['hinge'+id] == 'on')
  {
    checked = 'checked';
  }
  r += "Drill holes for 35mm cup hinge<input type='checkbox' "+checked+" id='hinge"+id+"' onclick=\"$('#hingediv"+id+"').toggle();doorChange(this);\" class='doorarg'><hr>";
  
  r += "<div id='hingediv"+id+"' style='display:none'>";
  r += "    <span class='doorlabel'>Number hinges</span><span class='doorarglabel'><input id='numberhinges"+id+"'  value='"+doorparams['numberhinges'+id]+"' class='doorarg'></span><hr>";
  r += "    <span class='doorlabel'>First hinge distance from top<br></span><span class='doorarglabel'><input id='hingebottom"+id+"' value='"+doorparams['hingebottom'+id]+"' class='doorarg'></span><hr>";

  r += "    <span class='doorlabel'>Drilling distance (edge of hinge hole to edge of door. Usually 5mm and range is 2mm-8mm)<br></span><span class='doorarglabel'><input id='drillingdistance"+id+"' value='"+doorparams['drillingdistance'+id]+"' class='doorarg'></span><hr>";

  checked = '';
  if (doorparams['insertapattern'+id] == 'on')
  {
    checked = 'checked';
  }
  r += "Blum Inserta hinge pattern<input type='checkbox' "+checked+" id='insertapattern"+id+"' onclick=\"doorChange(this);\" class='doorarg'><hr>";

  r += "The hinge centreline locations are automatically calculated when you change any of the door parameters. You can override these calculated positions by editing them below. (Note: your edits will be discarded if you subsequently change the door parameters.)<br>";
  r += "    <span class='doorlabel'>Hinge locations<br></span>";
  r += "<textarea class='doorarg' rows='8' cols='20' id='hingelocations"+id+"'>"+doorparams['hingelocations'+id]+"</textarea><hr>";

  checked = '';
  if (doorparams['mountingplate'+id] == 'on')
  {
    checked = 'checked';
  }

  r += "Drill hinge mounting plate holes on carcass sides<input type='checkbox' "+checked+" id='mountingplate"+id+"' onclick=\"$('#mountingplatediv"+id+"').toggle();doorChange(this);\" class='doorarg'><hr>";

  r += "<div id='mountingplatediv"+id+"' style='display:none'>";
  r += "To drill the mounting plate fixing holes we need to know the panels to drill and the offset between the top of the carcass sides and the door.<br>";
  r += "Example 1: An overlay door with 2.5mm clearance at the top the offset would be 2.5mm<br>";
  r += "<img src='overlaydooroffset.png'><br>";
  r += "Example 2: An inset door with 2.5mm clearance at the top the offset would be 20.5mm (assumes 18mm thick carcass top)<br>";
  r += "<img src='insetdooroffset.png'><br>";
  r += "    <span class='doorlabel'>Door offset<br></span><span class='doorarglabel'><input id='dooroffset"+id+"' value='"+doorparams['dooroffset'+id]+"' class='doorarg'></span><hr>";
  r += "    <span>Cutting list line number or description of carcass side panels<br>Examples: OL1234 Line 20 or OL1234 Cabinet Side</span><br><textarea rows='8' cols='40' id='carcasssides"+id+"' class='doorarg'>"+doorparams['carcasssides'+id]+"</textarea><hr>";

  r += "</div><!--mountingplatediv"+id+"-->";

  r += "</div><!--hingediv"+id+"-->";

  r += "<span>Add any comments or additional specifications for your door here</span><br><textarea rows='8' cols='40' id='doorcomments"+id+"' class='doorarg'> "+doorparams['doorcomments'+id]+"</textarea><hr>";

  r += "<button class='cwbutton' onclick=\"addDoor(); return false;\">Add Another Door</button>";

  
  r += "   <div style='display:none' class='doorcl' id='doorcl"+id+"'></div>";
  r += "   <hr>";
  r += "  </div>\n";
  r += "  <p style='clear:both'></p>";
  r += "  </div><!--door maxmimised-->";

  r += "    <div class='tbnlogo doormaximised'><a href='#' onclick=\"$('.tbninfo').toggle('slow');return false;\"><img src='TBNLogo.png' width='50%'></a></div>";
  r += "    <div class='tbnlogo tbninfo'>The door calculator has been licensed from <a href='http://www.templatesbynumbers.com'>Templates by numbers</a>. Templates by numbers makes online and iPhone design tools for woodworking calculations.</div>";
  r += "  <p style='clear:both'></p>";

  r += "</div> <!--door-->";
  r += "<p style='clear:both'></p>";
  $("#doorblock").append(r);
  $("#finish"+id).val(doorparams['finish'+id]);
  paper = Raphael('diagram'+id, "100%","100%");
  //var scale = 10;
  //drawCabFront(paper,id,0,0,800/scale,2000/scale,90/scale,1);
  $(".doorarg").bind('change', function(){doorChange(this);});
  $(".doorarg >input").bind('keypress', function(e){handleEnterDoorArg(this,e);});
  doorChange($("#height"+id).parent());
}

function minmaxdoor(id)
{
  var button = $('#'+id).find(".doorminmax");
  if ($(button).text() == 'Hide detail')
  {
    $('#'+id).find(".doormaximised").toggle();
    $(button).text('Show detail');
  }
  else
  {
    $('#'+id).find(".doormaximised").toggle();
    $(button).text('Hide detail');
  }
}

var paper;
function doorChange(obj)
{
  var cl = '';
  var scale = 10;
  var fw = 90;
  // find parent door div
  var parentdiv = obj;
  while (($(parentdiv).length != 0) && (!$(parentdiv).is('.door')))
  {
    parentdiv = $(parentdiv).parent();
  }
  if (!$(parentdiv).is('.door'))
  {
    return;
  }
  //var id = $(obj).parent().parent().parent().attr('id');
  var id = $(parentdiv).attr('id');
  var w = $("#width"+id).val();
  var h = $("#height"+id).val();
  var name = $("#name"+id).val();
  var midrails = new Array();
  var midrail1 = parseInt( $("#midrail1"+id).val() );
  var midrail2 = parseInt( $("#midrail2"+id).val() );
  var panel1h = 0;
  var panel2h = 0;
  var panel3h = 0;
  var railmidl = 0;
  var groove_depth = 8.0;
  var panel_gap = 1.0;
  var finish = $("#"+id+" select").val();

  if ($("#hinge"+id).is(':checked'))
  {
    $("#hingediv"+id).show();
  }
  if ($("#mountingplate"+id).is(':checked'))
  {
    $("#mountingplatediv"+id).show();
  }
  
  if (isNaN(midrail1))
  {
    midrail1 = 0;
  }
  if (isNaN(midrail2))
  {
    midrail2 = 0;
  }
  
  if ((midrail1 == 0) && (midrail2 == 0))
  {
    panel1h = h-2*fw+2*groove_depth-panel_gap;
  }
  else if ((midrail1 != 0) && (midrail2 == 0))
  {
    panel1h = h-3/2*fw-midrail1+2*groove_depth-panel_gap;
    panel2h = h-3/2*fw-(h-midrail1)+2*groove_depth-panel_gap;
  }
  else if ((midrail1 != 0) && (midrail2 != 0))
  {
    panel1h = h-3/2*fw-midrail1+2*groove_depth-panel_gap;
    panel2h = h-3/2*fw-(h-midrail1)+2*groove_depth-panel_gap;
  }
  
  var raill = (w-2*fw+2*groove_depth);
  var railmidl = 0;
  var panelw = (w-fw*2+2*groove_depth-panel_gap);
  var qtyL = $("#qtyL"+id).val();
  var qtyR = $("#qtyR"+id).val();
  csv = '';
  cl = "Door cutting list<br>";
  cl += "<table>";
  cl += "<thead>";
  cl += "<tr class='clheader'>";
  //Mat, L, B, A, ref, EDGE1, EDGE2, EDGE3, EDGE4, R, BEM\n";
  cl += "  <th>Mat</th> <th>L</th> <th>B</th> <th>A</th><th>BEM</th><th>L1</th>";
  cl += "</tr>";
  cl += "</thead>";
  cl += "<tr>";
  // get 22mm from the excel spreadsheet
  cl += "  <td>"+railmaterial+"</td> <td><span class='sdstilel'>"+h+"</span></td> <td><span class='sdstilew'>"+fw+"</span></td> <td>"+(2*qtyL+2*qtyR)+"</td> <td>"+name+" Stiles "+finish+"</td>";
  cl += "</tr>";
  csv += railmaterial+","+h+","+fw+","+(2*qtyL+2*qtyR)+","+name+" Stiles "+finish+"\n";
  cl += "<tr>";

  cl += "  <td>"+railmaterial+"</td> <td><span class='sdraill'>"+raill+"</span></td> <td><span class='sdrailw'>"+fw+"</span></td> <td>"+(2*qtyL+2*qtyR)+"</td> <td>"+name+" Rails "+finish+"</td>";
  cl += "</tr>";
  csv += railmaterial+","+raill+","+fw+","+(2*qtyL+2*qtyR)+","+name+" Rails "+finish+"\n";

  cl += "<tr>";
  cl += "  <td>6MM MOISTURE RESISTANT MDF</td> <td><span class='spanell'>"+panel1h+"</span></td> <td><span class='spanelw'>"+panelw+"</span></td> <td>"+(1*qtyL+1*qtyR)+"</td> <td>"+name+" Panel 1 "+finish+"</td>";
  cl += "</tr>";
  csv += railmaterial+","+h+","+fw+","+(2*qtyL+2*qtyR)+","+name+" Stiles "+finish+"\n";

  if (panel2h != 0)
  {
    railmidl = (w-fw*2+2*groove_depth);

    cl += "  <td>"+midrailmaterial+"</td> <td><span class='sdraill'>"+railmidl+"</span></td> <td><span class='sdrailw'>"+fw+"</span></td> <td>"+(1*qtyL+1*qtyR)+"</td> <td>"+name+" Mid-Rail "+finish+"</td>";

    cl += "<tr>";
    cl += "  <td>6MM MOISTURE RESISTANT MDF</td> <td>"+panel2h+"</td> <td>"+panelw+"</td> <td>"+(1*qtyL+1*qtyR)+"</td> <td>"+name+" Panel 2 "+finish+"</td>";
    cl += "</tr>";
  }
  cl += "</table>";
  
  var c = 0;
  var grooverailcpm = 2;
  var grooverailmidcpm = 3;
  var panelcpsqm = 7.2;
  var railcutc = 2.5;
  var railcutm = 0.5;
  var tenonc = 0.5;
  var assemblelargec = 7;
  var assemblesmallc = 5;
  var sandingcpsqm = 12;
  var radiuscpm = 1.5;
  var primedcpsqm = 7;
  c += (2*raill+2*h)/1000*grooverailcpm;
  c += panel1h*raill*panelcpsqm/1000000;
  c += railcutc;
  c += 4*tenonc;
  if (panel2h != 0)
  {
    c += railmidl/1000*grooverailmidcpm;
    c += panel2h*railmidl*panelcpsqm/1000000;
    c += railcutm;
    c += 2*tenonc;
  }
  if (h > 1800)
  {
    c += assemblelargec;
  }
  else
  {
    c += assemblesmallc;
  }
  c += sandingcpsqm*w*h/1000000;
  c += radiuscpm*(w*2+h*2)/1000;
  cl += '<h2>';
  var totalqty = parseInt(qtyL-0.0)+parseInt(qtyR-0.0);
  if (finish == 'Unfinished')
  {
    cl += 'Unfinished:&pound;'+(Math.round(totalqty*c*100)/100)+' ';
  }
  else if (finish == 'Primed')
  {
    c += primedcpsqm*w*h/1000000;
    cl += 'Primed:&pound;'+(Math.round(c*100)/100)+'<br>';
  }
  cl += '</h2><hr>';
  $("#doorheadline"+id).html("Cutwrights Doors<br>"+name+" H"+h+"mm W"+w+"mm");
  $("#doorcl"+id).html(cl);
  $("#diagram"+id).children().remove();
  paper = Raphael('diagram'+id, "100%","100%");
  midrails.push( midrail1/scale );
  midrails.push( midrail2/scale );
  drawCabFront(paper,id,0,0,w/scale,h/scale,90/scale,1,midrails,scale);
  saveDoorSettings();
  masterDoorCuttingList();
}

  function drawCabFront(paper,id, left,top,width,height,framewidth,numberdoors,midrails,scale)
  {
  var paper_height=300;
    var w = $('#diagram'+id).width();
    var h = $('#diagram'+id).height();
    paper_height = h - (h-height)/2;
    left += (w-width)/2;
    if (numberdoors < 1)
    {
      numberdoors = 1;
    }
    top = paper_height - top - height;
    var coords = "M"+left+","+top+" L"+left+","+(top-height)+" L"+(left+parseFloat(width))+","+(top-height)+" L"+(left+parseFloat(width))+","+top+" L"+left+","+top;
    //var polygon = paper.path(coords);
    var r;
    for (var i=0; i<numberdoors; i++)
    {
      r = paper.rect(left, top, width/numberdoors, height);
      r.attr({fill: "#eee", stroke: "#000", opacity: 1});
      // stiles
      r = paper.rect(left, top, framewidth, height);
      r.attr({fill: "#ddd", stroke: "#000", opacity: 1});
      r = paper.rect(left+width/numberdoors-framewidth, top, framewidth, height);
      r.attr({fill: "#ddd", stroke: "#000", opacity: 1});
      // top rail
      r = paper.rect(left+parseFloat(framewidth), top, width/numberdoors-2*framewidth, framewidth);
      r.attr({fill: "#ddd", stroke: "#000", opacity: 1});
      // bottom rail
      r = paper.rect(left+parseFloat(framewidth), top+height-framewidth, width/numberdoors-2*framewidth, framewidth);
      r.attr({fill: "#ddd", stroke: "#000", opacity: 1});
      
      var numberhinges = $("#numberhinges"+id).val();
      var bottomhinge = $("#hingebottom"+id).val();
      var y = bottomhinge/scale;
      var hinge_spacing = ((height-bottomhinge*2/scale))/(numberhinges-1);
      //console.debug('hinge spacing '+(hinge_spacing*scale));
      //alert($('#hingelocations'+id).val());
      //$('#hingelocations'+id).val('hello');
      var hl = '';
      
      if ($("#hinge"+id).is(':checked'))
      {
        for (var j=0; j<numberhinges; j++)
        {
          r = paper.circle(left+35/scale, top+parseInt(y), 35/scale);
          r.attr({fill: "#ff0000", stroke: "#000", opacity: 1});
          hl += (Math.floor(y*scale*10)/10)+"mm\n";
          y += hinge_spacing;
        }
      }
      $('#hingelocations'+id).val(hl);
      if (midrails)
      {
        for (var j=0; j<midrails.length; j++)
        {
          //console.debug(midrails[j]);
          if (midrails[j] == '')
          {
            continue;
          }
          if (isNaN(midrails[j]))
          {
            continue;
          }
          r = paper.rect(left+parseFloat(framewidth), top+height-framewidth/2-midrails[j], width/numberdoors-2*framewidth, framewidth);
          r.attr({fill: "#ddd", stroke: "#000", opacity: 1});
          // add annotation
          paper.text(left+width/2, top+height-framewidth/2-midrails[j]/2, (midrails[j]*scale)+'mm');
          r = paper.path("M"+(left+width/2)+" "+(top+height)+"L"+(left+width/2)+" "+(top+height-midrails[j]));
          r.attr({stroke: "#ff0000", opacity: 1});
        }
      }
      left += width/numberdoors;
    }
  }

function handleEnterDoorArg (field, event)
{
  var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
  if ((keyCode != 13) && (keyCode != 39))
  {
    return true;
  }
  //$(field).focus();
  //alert('enter '+field);
  event.preventDefault();
  doorChange($(field).parent());
}

// little function to ensure Ids are sequential
function adjustId(id,x)
{
var org_id = id;
  id = id.replace(/\d+$/, x);
  //console.debug("changed "+org_id+" to "+id);
  return id;
}

function saveDoorSettings()
{
var p = '';
  doorparams.splice(0, doorparams.length);
  var x = 1;
  //while ($("#door"+x).length != 0)
  $(".door").each(function()
  {
    var doorobj = this;
    $(doorobj).find(" .doorarg").each(function()
    {
      var obj = this;
      var id = adjustId( $(obj).attr('id'), x);
      if ($(obj).is(':checkbox'))
      {
        if ($(obj).is(':checked'))
        {
          p += id+'>on£:£';
          doorparams[ id ] = 'on';
        }
      }
      else
      {
        p += id+'>'+$(this).val()+'£:£';
        doorparams[ id ] = $(this).val();
      }
    });
    //if ($("#door"+x+" select").length != 0)
    if ($(this).find("select").length != 0)
    {
      var s = $(this).find("select");
      var id = adjustId( $(s).attr('id'), x);
      p += id+'>'+$(s).val()+'£:£';
      doorparams[ id ] = $(s).val();
    }
    x++;
  });
  localStorage.setItem("fpdoor", p);
  $("#doorpersist").val(p);
}

function loadDoorSettings()
{
  //$("#doorpersist").val(localStorage.getItem("fpdoor"));
  var persist = $("#doorpersist").val(); //localStorage.getItem("fpdoor");
  if (!persist)
  {
    return;
  }
  var kv = persist.split("£:£");
  //doorparams.splice(0, doorparams.length);
  //doorparams = [];
  for (var i=0; i<kv.length; i++)
  {
    var dp = kv[i].split(">");
    if (dp)
    {
      doorparams[ dp[0] ] = dp[1];
    }
  }
}

function createDoors()
{
var i=1;
  while (doorparams['namedoor'+i])
  {
    if ($("#namedoor"+i).length == 0)
    {
      addDoor();
    }
    i++;
  }
}

function doorArdis()
{
var r = '';
var job = $("#clid").val();
var jobcard = $("#doorjobcard").html();

  var html_table = $("#mastercltable").html();
  r = html_table.replace(/<\/tr>/g, "<XBRX>\n\n");
  r = r.replace(/(<\/td>|<\/th>)/g, ",");
  r = r.replace(/<.*?>/g, '');
  $("#doorfiles").load("cutwrights.php?action=dl&job="+job,{'d':escape(html_table),'jc':escape(jobcard)});
  r = r.replace(/<XBRX>/g, "<br>\n\n");
  $("#doormastercltxt").html(r)

  r = "<h1>Cutwrights Doors Job Card for OL"+job+"</h1><br>";
  r += jobcard;
}

function masterDoorCuttingList()
{
var cl = '';
var clheader = "  <th>Mat</th> <th>L</th> <th>B</th> <th>A</th><th>BEM</th>";
  cl += 'This cutting list is automatically updated as changes are made to the doors further down the page<br>';
  cl += "<a href='#' onclick=\"doorArdis();return false;\">Generate files for Ardis/Magicut and Job Card</a>&nbsp;&nbsp;";
  cl += "<br><div id='doorfiles'></div><br>";
  cl += "<h1>Door Master Cutting List</h1>";
  cl += "<tr class='clheader'>";
  //Mat, L, B, A, ref, EDGE1, EDGE2, EDGE3, EDGE4, R, BEM\n";
  // REF - R,S,P
  cl += clheader;
  cl += "</tr>";
  $(".doorcl").each(function()
    {
      cl += $(this).find('tbody').html();
      //alert($(this).html());
      cl = cl.replace(/doorcl/g,"doormcl");
      //cl = cl.replace(/<tr>/g,"doormcl");
      //cl += $(this).find('.sdraill').text() + ",";
    });
  cl = '<table id="mastercltable" class="">'+cl+'</table>';
  
  cl += "<div id='doorjobcard'>"+additionalDoorProcessing()+"</div>";
  
  $("#doormastercl").html(cl);
  $("tr:odd").css("background-color", "#dddddd");
}

function additionalDoorProcessing()
{
var r = '<h1>Job Card OL'+$("#clid").val()+'</h1>';
var needed = $("#deliverydate1").val() + ' '+$("#h_cuttinglistdeliverytime1").val()+ ':'+$("#m_cuttinglistdeliverytime1").val()+ ' '+$("#p_cuttinglistdeliverytime1").val();;
var deliverytype = $("#cuttinglistDeliveryType1").val();
var comments = $("#customercomments").val();
var cuttinglistname = $("#cuttinglistname").val();
var clheader = "  <th>Material</th> <th>Length</th> <th>Width</th> <th>Qty</th><th>Description</th>";

  r += "<h2>"+deliverytype+" date and time "+needed+"</h2>";
  r += "<h2>Description "+cuttinglistname+"</h2>";
  r += "";
  for (var item in doorparams)
  {
    //r += item;
  }
  
  var i=1;
  while (doorparams['namedoor'+i])
  {
    r += "<h3>Door "+i+" Height:"+doorparams['heightdoor'+i]+" Width:"+doorparams['widthdoor'+i]+" Qty Left:"+doorparams['qtyLdoor'+i]+" Qty right:"+doorparams['qtyRdoor'+i]+"</h3>";
    r += "<table>";
    r += clheader;

    r += $(".doorcl").eq(i-1).find('tbody').html();
    r += "</table>";
    if (('hingedoor'+i) in doorparams)
    {
      r += 'Door '+i+' ('+doorparams['namedoor'+i]+') drill hinges. Centreline locations:<br>';
      r += doorparams['hingelocationsdoor'+i]+'<br>';
      r += "Drilling distance:"+doorparams['drillingdistancedoor'+i]+'<br>';
      if (('insertapatterndoor'+i) in doorparams)
      {
        r += "Blum INSERTA pattern<br>";
      }
      if (('mountingplatedoor'+i) in doorparams)
      {
        r += "Drill mounting plate positions in these panels: ";
        r += doorparams['carcasssidesdoor'+i]+'<br>';
      }
    }
    r += "Additional Comments:<br>"+doorparams['doorcommentsdoor'+i]+'<br>';
    r += "<br>";
    i++;
  }

  var cl = '';
  $(".doorcl").each(function()
    {
      cl += $(this).find('tbody').html();
      //alert($(this).html());
      cl = cl.replace(/doorcl/g,"doormcl");
      //cl = cl.replace(/<tr>/g,"doormcl");
      //cl += $(this).find('.sdraill').text() + ",";
      //jc += "<table>"+clheader+cl+"</table>";
    });

  //r += "Additional customer comments:<br>"+comments;
  return r;
}


