
var agewas=new Array(7); var itwas=new Array(7); for (i=0;i<8;i++) { agewas[i]=0; itwas[i]=0;}
var delaymsg=''; var delayfoco; var delays_si_id='';var delays_si_i=0; var s_scrollmax; var s_scroll; var s_scrolltmr=-1; var s_scrolllasty=1; var removeitemdiv=false; function trim(str) { return str.replace(/^\s+|\s+$/g, '');}
function msg(inmsg) {if (delaymsg=='nomsgs') return false; delaymsg=inmsg;setTimeout("alert(delaymsg);",3);}
function foc(id) {foco(document.getElementById(id));}
function foco(id) {if (delayfoco=='nofoco') return false; delayfoco=id;setTimeout("delayfoco.focus();",15); setTimeout("delayfoco.style.borderColor='#ffbe0f';",10); setTimeout("delayfoco.style.borderColor='#555555';",3000);}
function g_totalitem(i) { return document.getElementById('item' + i + 'total').value;}
function g_itemdesc(i) { return document.getElementById('item' + i + 'status').innerHTML;}
function gi(id) { return document.getElementById(id).selectedIndex;}
function si(id,index) { document.getElementById(id).selectedIndex=index;}
function sid(id,index) { delays_si_id=id;delays_si_i=index; setTimeout("document.getElementById(delays_si_id).selectedIndex=delays_si_i;",10);}
function isvis(id) { var vis=document.getElementById(id).style.display; return ((vis=='block')||(vis=='inline'));}
function gv(id) { return document.getElementById(id).value;}
function gvvis(id) { var o=document.getElementById(id); if (o.style.display!='none') return o.value; else return '';}
function sv(id,newval) { return document.getElementById(id).value=newval;}
function sih(id,newval) { return document.getElementById(id).innerHTML=newval;}
function hv(id) { return (trim(document.getElementById(id).value)!='');}function checked(id) { return document.getElementById(id).checked;}function hq(id) { var v=parseInt(document.getElementById(id).value); return ( (!isNaN(v))&&(v>0) );}function nhv(id) { var noval=(trim(document.getElementById(id).value)==''); if (noval) foc(id); return noval;}function visnhv(id) { var obj=document.getElementById(id); if (obj.style.display=='none') return false; else {var noval=(trim(obj.value)==''); if (noval) foc(id); return noval;}}function hvih(id) { return (trim(document.getElementById(id).innerHTML)!='');}function nhvreset(id) { var sel=document.getElementById(id); if ((sel.value=='')||(sel.value=='-')) {sel.selectedIndex=0;return true;} else return false;}function disp(id,disp) { document.getElementById(id).style.display=disp;}
function smoothscroll(val) { if (s_scrolltmr!=-1) clearTimeout(s_scrolltmr); s_scrollmax=val; s_scroll=0; s_scrolllasty=-1; if (val>0) s_scrolltmr=setInterval("smoothscrolldown();",100); else s_scrolltmr=setInterval("smoothscrollup();",100);}
function smoothscrolldown() { var ypos=getscrolly(); if ( (s_scroll<=s_scrollmax)&&(ypos!=s_scrolllasty) ) {s_scrolllasty=ypos; window.scrollBy(0,25);s_scroll+=25;} else {clearTimeout(s_scrolltmr);s_scrolltmr=-1;}}
function smoothscrollup() { if ((s_scroll>=s_scrollmax)&&(getscrolly()>0)) {window.scrollBy(0,-25);s_scroll-=25;} else { clearTimeout(s_scrolltmr); smoothscrollupdone();}}
function smoothscrollupdone() { if (removeitemdiv) { var i=parseInt(gv('itemcount')); document.getElementById('itemdiv' + i).style.display='none'; document.getElementById('sum_row' + i).style.display='none'; sv('visstatus_item' + i,'none'); removeitemdiv=false;}}
function getscrolly() { return (document.body.scrollTop!=0)?document.body.scrollTop:((window.pageYOffset)?window.pageYOffset:((document.body.parentElement)?document.body.parentElement.scrollTop:0));}
function formloaded() { if (gv('visstatus_item' + 0)=='block') { delaymsg='nomsgs'; delayfoco='nofoco'; if (gv('embrorsp')=='Yes') { disp('uploadimages','block'); var imageviscount=gv('imagecount'); for (cimg=0;cimg<10;cimg++) document.getElementById('divfile' + cimg).style.display=(cimg<imageviscount)?'inline':'none'; for (i=0;i<10;i++) logotype_change(i); disp('p_continue','block');}
var itemcount=gv('itemcount'); var dispitembuttons=''; for (i=0;i<7;i++) { if (gv('visstatus_item' + i)=='block') { disp('itemdiv' + i,'block'); disp('sum_row' + i,'table-row'); itemchange(i);}
coloursvisible(i,gv('item' + i + 'colours')); if (gv('item' + i + 'want_design')=='Yes') disp('div_item' + i + 'designs','block'); dispitembuttons=(i<itemcount-1)?'none':'inline'; disp('additem' + i, dispitembuttons); if (i>0) disp('removeitem' + i, dispitembuttons); disp('showsummary' + i, dispitembuttons); var designviscount=gv('item' + i + 'designs'); for (cd=0;cd<7;cd++) { document.getElementById('item' + i + 'des_div' + cd).style.display=(cd<designviscount)?'inline':'none'; dpos_torso_change(i,cd); dpos_apron_change(i,cd); logo_background_change(i,cd); sim_fonts_change(i,cd); dpos_colour_type_change(i,cd);}}
disp('summary','none');
 disp('company_details_div','none'); companydetailstablevisible(); delaymsg=''; delayfoco='';} else { itemchange(0);}}
function embrorsp_change() { var eorsp=gv('embrorsp'); document.getElementById('uploadimages').style.display=(eorsp=='Yes')?'block':'none'; itemdivvisible(0,(eorsp=='No, Plain Garments Only')); for (i=0;i<7;i++) disp('ask_want_design' + i, (eorsp=='Yes')?'block':'none'); if (eorsp=='No, Plain Garments Only') for (i=0;i<7;i++) { document.getElementById('item' + i + 'want_design').selectedIndex=0; disp('div_item' + i + 'designs','none');}
disp('summary','none'); disp('company_details_div','none');}
function images_continue() { var error=validate_images(); if (error=='') itemdivvisible(0,true,350); else msg(error);}
var scroll_amount_no_emborsp=190; function itemdivvisible(i,bool,scrollamount) { if (isNaN(scrollamount)) scrollamount=scroll_amount_no_emborsp; if (bool) { document.getElementById('itemdiv' + i).style.display='block'; sv('visstatus_item' + i,'block'); document.getElementById('sum_row' + i).style.display='table-row'; smoothscroll(scrollamount);} else { if (i>0) { removeitemdiv=true; smoothscroll(-450);} else { document.getElementById('itemdiv' + i).style.display='none'; sv('visstatus_item' + i,'none');}}}
function logotype_change(li) { var blockaction=false; if (gi('logotype' + li)!=0) for (x=0;x<li;x++) if (gi('logotype' + x)==0) {blockaction=true; si('logotype' + li,0); foc('logotype' + x); break;}
if (!blockaction) { var desc=document.getElementById('imagedesc' + li); var file=document.getElementById('imagefile' + li); var logotype=gv('logotype' + li); var fv=false; var tv=false; var tv2=false; switch (logotype) { case '':desc.value='';sv('logotext' + li,''); break; case 'Exact Image': fv=true; break; case 'Exact Image with additional text':fv=true;tv=true;tv2=true; break; case 'Custom Font': fv=true; if (delaymsg!='nomsgs') setTimeout("fontmessage();",1); break; case 'Text Only': tv=true; break; case 'Logo Only without text': fv=true; break;}
desc.style.display=(logotype!='')?'inline':'none'; var imgdescheadingdisp='none'; for (x=0;x<10;x++) if (gi('logotype' + x)!=0) { imgdescheadingdisp='inline';break;}
document.getElementById('imagedescheading').style.display=imgdescheadingdisp; 
if (!fv) file.value=''; file.style.display=(fv)?'inline':'none'; file.style.marginLeft=(tv)?'0px':'145px'; document.getElementById('logotext' + li).style.display=(tv)?'inline':'none'; document.getElementById('logoaddtext' + li).style.display=(tv2)?'block':'none'; var filecount=0; var textcount=0; for (fc=0;fc<document.getElementById('imagecount').value;fc++) { if (document.getElementById('imagefile' + fc).style.display=='inline') filecount++; if (document.getElementById('logotext' + fc).style.display=='inline') textcount++;}
document.getElementById('logotextheading').innerHTML=(textcount==0)?'&nbsp;':'Logo Text'; document.getElementById('fileselectheading').innerHTML=(filecount==0)?'&nbsp;':"Add your image/<a href='javascript:fontmessage();'>font</a>"; 
var imageviscount=gv('imagecount'); var imageviscount_start=imageviscount; var cimg=imageviscount-1;var emptycount=0; do { if (gi('logotype' + cimg--)==0) emptycount++; else break;} while (cimg>0); if (emptycount >1) { imageviscount-=(emptycount-1);} else if ((emptycount==0)&&(imageviscount<10)) { imageviscount++;}
sv('imagecount',imageviscount); if (imageviscount_start!=imageviscount) for (cimg=0;cimg<10;cimg++) document.getElementById('divfile' + cimg).style.display=(cimg<imageviscount)?'inline':'none'; disp('p_continue','block'); sv('visstatus_continue','block');}
disp('summary','none'); txtimagedescchange(li);}
function fontmessage() { window.scroll(0,0); alert("If you use any fonts in your logo which are not standard windows fonts, please add them here.\nSending us the fonts will greatly increase the embroidery accuracy and ensure a quick response."); disp('fonthelp','inline');}
function txtimagedescchange(img) { var newval=getimgdesc(img); if (gv('logotype' + img)=='Custom Font') newval=''; txtimagedescchange2(img,newval);}
function getimgdesc(img) { var newval=document.getElementById('imagedesc' + img).value; 
newval=newval.replace('"','');newval=newval.replace("'",'');newval=newval.replace('<','');newval=newval.replace('>','');newval=newval.replace('&','&amp;'); return newval;}
function txtimagedescchange2(img,newval) { var osel;var newtext; for (index=0;index<7;index++){ for (di=0;di<7;di++) { osel=document.getElementById('item' + index + 'dimg_desc' + di); osel.options[img+1].text =(newval!='')?newval+' (Image '+(img+1)+')':''; osel.options[img+1].value=(newval!='')?newval+'::'+img:'';}}}
function itemchange(i) { var itemtotal=gv('item' + i + 'total'); if ( (itemtotal!=0)&&(itemtotal!='')&&(delaymsg!='nomsgs') ) { si('item' + i + 'type',itwas[i]);
 msg("Different types of items have different sizes.\n\nPlease remove the quantities before you change the item type."); return true;}
nhvreset('item' + i + 'type'); itwas[i]=gi('item' + i + 'type'); var selitem=gv('item' + i + 'type'); if ((selitem=='Knitted Jerseys')||(selitem=='Beanies')||(selitem=='Gloves')||(selitem=='Scarf')) { for (di=0;di<7;di++) {document.getElementById('item' + i + 'design_type' + di).options[2].value='';document.getElementById('item' + i + 'design_type' + di).options[2].text='';}} else { for (di=0;di<7;di++) {document.getElementById('item' + i + 'design_type' + di).options[2].value='Screenprinting';document.getElementById('item' + i + 'design_type' + di).options[2].text='Screenprinting';}}
var displaydescription='none'; switch (selitem) { case 'Golf Shirts': ss(i,0,1,0,1,1,1,0,0,0); break; case 'T-Shirts': ss(i,0,1,0,1,1,1,0,0,1); break; case 'Shirts': ss(i,0,1,0,1,1,1,0,0,0); break; case 'Blouses': ss(i,0,0,1,0,1,1,0,0,0); break; case 'Vests': ss(i,0,1,0,1,1,0,0,0,0); break; case 'Trousers': ss(i,0,0,0,1,0,0,0,0,0); break; case 'Track Suits': ss(i,0,1,0,1,1,1,1,0,0); break; case 'Skirts': ss(i,0,0,1,0,0,0,0,0,0); break; case 'Jackets': ss(i,0,1,0,1,1,1,1,0,0); break; case 'Polar Fleece Tops':ss(i,0,1,0,1,1,1,1,0,1); break; case 'Sweaters (Fleece)':ss(i,0,1,0,1,1,1,1,0,1); break; case 'Knitted Jerseys':ss(i,0,1,0,1,1,0,0,0,1); break; case 'Hoodies': ss(i,0,1,0,1,1,1,1,0,0); break; case 'Caps': 
case 'Bandanas': ss(i,0,1,2,0,0,0,0,0,0,0); break; case 'Beanies': ss(i,0,1,2,0,0,0,0,1,0,0); break; case 'Hats': 
case 'Visors': ss(i,0,1,2,1,0,0,0,0,0); break; case 'Scarf': ss(i,0,1,2,0,0,0,0,1,0); break; case 'Gloves': ss(i,0,1,2,1,0,0,0,1,0); break; case 'Aprons': ss(i,0,1,2,1,0,1,0,0,0); break; case 'Bags': ss(i,0,1,2,1,0,0,0,0,0); break; case 'Workwear': ss(i,0,1,2,1,1,1,1,1,1); break; case 'Accessories': ss(i,0,1,2,1,0,0,0,0,0); break; case 'Other': ss(i,0,1,0,1,1,1,1,0,0); displaydescription='inline'; break; default: msg('not found');}
document.getElementById('div' + i + 'description').style.display=displaydescription; update_dpos_centre_chest(i); switch (selitem) { case 'Golf Shirts': 
case 'T-Shirts':
case 'Shirts':
case 'Blouses':
case 'Vests':
case 'Track Suits':
case 'Jackets':
case 'Polar Fleece Tops':
case 'Sweaters (Fleece)':
case 'Knitted Jerseys':
case 'Hoodies':
case 'Workwear':position_selector(i,'dpos_torso'); break; case 'Caps':
case 'Beanies':
case 'Bandanas':
case 'Hats':
case 'Visors': position_selector(i,'dpos_headwear'); break; case 'Aprons': position_selector(i,'dpos_apron'); break; case 'Scarf': position_selector(i,'dpos_scarf'); break; case 'Bags':
case 'Accessories':
case 'Gloves':
case 'Trousers':
case 'Skirts':
case 'Other': position_selector(i,'dpos_describepos'); break; default: msg(selitem + ' position not found');}
switch (selitem) { case 'Golf Shirts': 
case 'T-Shirts':
case 'Shirts': slv(i,'Short Sleeves','Long Sleeves',''); break; case 'Blouses': slv(i,'Short Sleeves','Long Sleeves','3/4 Sleeve'); break; case 'Vests': slv(i,'Sleeveless','',''); break; case 'Track Suits': slv(i,'Long Sleeves','',''); break; case 'Jackets': slv(i,'Long Sleeves','Zipoff Sleeves',''); break; case 'Polar Fleece Tops':slv(i,'Long Sleeves','Sleeveless','Zipoff Sleeves'); break; case 'Sweaters (Fleece)': 
case 'Knitted Jerseys': slv(i,'Long Sleeves','Sleeveless',''); break; case 'Hoodies': slv(i,'Long Sleeves','',''); break; case 'Workwear': slv(i,'Short Sleeves','Long Sleeves','Sleeveless');break; case 'Caps': 
case 'Beanies':
case 'Bandanas':
case 'Hats':
case 'Visors':
case 'Aprons':
case 'Scarf':
case 'Bags':
case 'Accessories':
case 'Gloves':
case 'Trousers':
case 'Skirts': break; case 'Other': slv(i,'Short Sleeves','Long Sleeves','Sleeveless'); break; default: msg(selitem + ' position not found');}
pocketchange(i,true); document.getElementById('item' + i + 'zip').selectedIndex=0; zero_dpos_torso_index(i); updatesizes(i); updateitemstatus(i); genderchange(i); for (di=0;di<7;di++) dpos_torso_change(i,di);}
function ss(i,a,ae,g,ge,sv,pv,zv,fv,nv) { document.getElementById('item' + i + 'age').selectedIndex=a; 
document.getElementById('item' + i + 'age').disabled=(ae==0)?true:false; 
document.getElementById('item' + i + 'gender').selectedIndex=g; 
document.getElementById('item' + i + 'gender').disabled=(ge==0)?true:false; document.getElementById('divsleeve' + i).style.display=(sv==1)?'inline':'none'; document.getElementById('divpocket' + i).style.display=(pv==1)?'inline':'none'; document.getElementById('divzip' + i).style.display=(zv==1)?'inline':'none'; document.getElementById('divfabric_type' + i).style.display=(fv==1)?'inline':'none'; document.getElementById('divneck' + i).style.display=(nv==1)?'inline':'none'; agewas[i]=a; document.getElementById('item' + i + 'fields_visible').value=(ae + ',' + ge + ',' + sv + ',' + pv + ',' + zv + ',' + fv + ',' + nv);
}
function slv(i,a,b,c) { var osleeve0=document.getElementById('item' + i + 'sleeve'); osleeve0.options[0].value=a;osleeve0.options[0].text=a; osleeve0.options[1].value=b;osleeve0.options[1].text=b; osleeve0.options[2].value=c;osleeve0.options[2].text=c; osleeve0.selectedIndex=0;}
function set_dpos_torso_item(i,listindex,value) { var obj; for (di=0;di<7;di++) { obj=document.getElementById('item' + i + 'dpos_torso' + di); obj.options[listindex].value=value; obj.options[listindex].text=value; 
if (obj.value=='') obj.selectedIndex=0;}}
function zero_dpos_torso_index(i) { for (di=0;di<7;di++) document.getElementById('item' + i + 'dpos_torso' + di).selectedIndex=0;}
function set_dpos_apron_item(i,listindex,value) { var obj; for (di=0;di<7;di++) { obj=document.getElementById('item' + i + 'dpos_apron' + di); obj.options[listindex].value=value; obj.options[listindex].text=value; 
if (obj.value=='') obj.selectedIndex=0;}}
function position_selector(i,postype) { for (di=0;di<7;di++) { document.getElementById('item' + i + 'dpos_torso' + di).style.display=(postype=='dpos_torso')?'block':'none'; document.getElementById('item' + i + 'dpos_apron' + di).style.display=(postype=='dpos_apron')?'block':'none'; document.getElementById('item' + i + 'dpos_headwear' + di).style.display=(postype=='dpos_headwear')?'block':'none'; document.getElementById('item' + i + 'dpos_scarf' + di).style.display=(postype=='dpos_scarf')?'block':'none'; document.getElementById('item' + i + 'dpos_describepos' + di).style.display=(postype=='dpos_describepos')?'block':'none';}
document.getElementById('item' + i + 'd_postype').value=postype;}
function update_dpos_centre_chest(i) { switch (gv('item' + i + 'type')) { case 'T-Shirts':
case 'Vests':
case 'Hoodies':
case 'Workwear':
case 'Sweaters (Fleece)': set_dpos_torso_item(i,1,'Centre Chest'); break; default: set_dpos_torso_item(i,1,'');}}
function agechange(i) { oage=document.getElementById('item' + i + 'age'); if (gv('item' + i + 'total')!=0) { oage.selectedIndex=agewas[i]; msg("Different ages have different types of sizes.\n\nPlease remove the quantities before you change the age.");} else { agewas[i]=oage.selectedIndex; var selitem=document.getElementById('item' + i + 'type').value; if ((selitem!='Scarf')&&(selitem!='Headwear')) { var gen = document.getElementById('item' + i + 'gender'); if (oage.value=='Adult') { gen.selectedIndex=0; gen.disabled=false; document.getElementById('sizelabel' + i).innerHTML='Size'} else { document.getElementById('sizelabel' + i).innerHTML='Age/Size'
gen.selectedIndex=2; gen.disabled=true;}}
updatesizes(i); updateitemstatus(i); genderchange(i);}}
function sleevechange(i) { nhvreset('item' + i + 'sleeve'); updateitemstatus(i);}
function genderchange(i) { if (document.getElementById('item' + i + 'type').value=='Shirts') { slv(i,'Short Sleeves','Long Sleeves',(document.getElementById('item' + i + 'gender').value=='Ladies')?'3/4 Sleeves':'');}
updateitemstatus(i);}
function pocketchange(i,clear) { var pocket=document.getElementById('item' + i + 'pocket'); if (clear===true) pocket.selectedIndex=0; if ((pocket.style.display=='none')||(pocket.value=='No Pocket')) { set_dpos_torso_item(i,3,''); set_dpos_torso_item(i,4,''); set_dpos_apron_item(i,4,''); set_dpos_apron_item(i,5,'');} else { set_dpos_torso_item(i,3,'Above Pocket'); set_dpos_torso_item(i,4,'On Pocket'); set_dpos_apron_item(i,4,'Above Pocket'); set_dpos_apron_item(i,5,'On Pocket');}
updateitemstatus(i); document.getElementById('div' + i + 'subj2avail').style.display=(pocket.selectedIndex>0)?'block':'none';}
function zipchange(i) { 
update_dpos_centre_chest(i); if (gi('item' + i + 'zip')>0) set_dpos_torso_item(i,1,''); for (di=0;di<7;di++) nhvreset('item' + i + 'dpos_torso' + di); updateitemstatus(i);}
function fabric_type_change(i) { updateitemstatus(i);}
function neck_change(i) { updateitemstatus(i);}
function updatesizes(i) { var sizecount=-1; var selitem=document.getElementById('item' + i + 'type').value; switch (selitem) { case 'Hats': sizecount=2; 
if (document.getElementById('item' + i + 'age').value=='Adult') { document.getElementById('item' + i + 'size' + 0).value ='Sm/Med (57/58cm)'; document.getElementById('item' + i + 'size' + 1).value ='Lg/XL (60cm)';} else { document.getElementById('item' + i + 'size' + 0).value ='Sm/Med (52cm)'; document.getElementById('item' + i + 'size' + 1).value ='Lg/XL (54cm)';} break; case 'Bags':
case 'Accessories':
case 'Scarf': sizecount=1; document.getElementById('item' + i + 'size' + 0).value ='As per catalogue'; break; case 'Gloves': sizecount=1; document.getElementById('item' + i + 'size' + 0).value ='1 Size Fits Most'; break; case 'Aprons': sizecount=2; document.getElementById('item' + i + 'size' + 0).value ='Half'; 
document.getElementById('item' + i + 'size' + 1).value ='Full';
 break; case 'Caps':
case 'Beanies':
case 'Bandanas':
case 'Visors': sizecount=1; document.getElementById('item' + i + 'size' + 0).value ='1 Size Fits All'; break; case 'Trousers':
case 'Skirts':
sizecount=10; for (x=0;x<10;x++) document.getElementById('item' + i + 'size' + x).value =(28+x*2) + '"'; break; default:
if (document.getElementById('item' + i + 'age').value=='Adult') { sizecount=9; document.getElementById('item' + i + 'size' + 0).value ='XS'; document.getElementById('item' + i + 'size' + 1).value ='S'; document.getElementById('item' + i + 'size' + 2).value ='M'; document.getElementById('item' + i + 'size' + 3).value ='L'; document.getElementById('item' + i + 'size' + 4).value ='XL'; document.getElementById('item' + i + 'size' + 5).value ='2XL'; document.getElementById('item' + i + 'size' + 6).value ='3XL'; document.getElementById('item' + i + 'size' + 7).value ='4XL'; document.getElementById('item' + i + 'size' + 8).value ='5XL';} else { sizecount=12; for (x=0;x<12;x++) document.getElementById('item' + i + 'size' + x).value =(x+2) + '-' + (x+3);}}
sizesvisible(i,sizecount);}
function sizesvisible(i,n) { sv('item' + i + 'sizes',n); var disp; for (s=0;s<12;s++) { disp=(s<n)?'block':'none'; document.getElementById('item' + i + 'size' + s).style.display=disp; for (c=1;c<10;c++) { document.getElementById('item' + i + 'colour' + c + 'size' + s).style.display=disp; if (disp=='none') document.getElementById('item' + i + 'colour' + c + 'size' + s).value='';}
document.getElementById('item' + i + 'sizetotal' + s).style.display=disp; if (disp=='none') document.getElementById('item' + i + 'sizetotal' + s).value='';}}
function coloursvisible(i,n) { document.getElementById('item' + i + 'colours').value=n; for (c=1;c<10;c++) { document.getElementById('item' + i + 'colourdiv' + c).style.display=(c<=n)?'inline':'none';}}
function colourchange(i,colour) { var col=gv('item' + i + 'colour' + colour); if ( (col!='')&&(isNaN(col)==false) ) { msg("You're supposed to enter a colour in this box"); sv('item' + i + 'colour' + colour,''); foc('item' + i + 'colour' + colour);} else { if ( (colour==2)&&(emptycolour(i,1)) ) { foc('item' + i + 'colour' + 1); var cmd="sv('item" + i + 'colour' + 2 + "','');"; setTimeout(cmd,1); sv('item' + i + 'colour' + 1,col);}}}
function csqchanged(i,size,colour) { var sizes=gv('item' + i + 'sizes'); var colours=gv('item' + i + 'colours'); var cur_csq=document.getElementById('item' + i + 'colour' + colour + 'size' + size); var cur_value=parseInt(cur_csq.value); var csq; if (sizes==0) msg('Please choose a size'); if (isNaN(cur_value)==false) { if (cur_value>0) { if ( (colour==2)&&(colours==2)&&(emptycolour(i,1)) ) { foc('item' + i + 'colour' + 1 + 'size' + size); var cmd="sv('item" + i + 'colour' + 2 + 'size' + size + "','');"; setTimeout(cmd,1); colour=1; var cur_csq=document.getElementById('item' + i + 'colour' + colour + 'size' + size);}
if ((colour==colours)&&(colours<9)) coloursvisible(i,++colours);} else { cur_value='';}
cur_csq.value = cur_value;} else { cur_csq.value=''; if (colours >2) { var checkcolour=colours; var emptycount=0; do { var columnempty=true; for (s=0;s<sizes;s++) { csq=parseInt(document.getElementById('item' + i + 'colour' + checkcolour + 'size' + s).value); if (!isNaN(csq)) {columnempty=false; break;}}
if (columnempty) { emptycount++; document.getElementById('item' + i + 'colourtotal' + checkcolour).value='';}
checkcolour--;} while (columnempty&&(checkcolour>1)); if (emptycount>1) { colours-=(emptycount-1); coloursvisible(i,colours);}}}
var total; var itemtotal=0; for (s=0;s<sizes;s++) { total=0; for (c=1;c<=colours;c++) { csq=parseInt(gv('item' + i + 'colour' + c + 'size' + s)); if (!isNaN(csq)) total +=csq;}
document.getElementById('item' + i + 'sizetotal' + s).value=(total==0)?'':total; itemtotal+=total;}
for (c=1;c<=colours;c++) { total=0; for (s=0;s<sizes;s++) { csq=parseInt(document.getElementById('item' + i + 'colour' + c + 'size' + s).value); if (!isNaN(csq)) total +=csq;}
sv('item' + i + 'colourtotal' + c,total);}
document.getElementById('item' + i + 'total').value=itemtotal; updateitemstatus(i); document.getElementById('div' + i + 'typedisabled').style.display=(itemtotal!=0)?'inline':'none';}
function emptycolour(i,colour) { if (gv('item' + i + 'colour' + colour)!='') return false; var ctot=gv('item' + i + 'colourtotal' + colour); return ( (ctot==0)||(ctot=='') );}
function additem(i) { var error=validate_images(); if (error=='') error=validate_item(i); if (error=='') { itemdivvisible(i+1,true,370); sv('itemcount',i+2); itemchange(i+1); document.getElementById('additem' + i).style.display='none'; if (i>0) document.getElementById('removeitem' + i).style.display='none'; document.getElementById('showsummary' + i).style.display='none';} else { msg(error);
}}
function removeitem(i) { var units=document.getElementById('item' + i + 'total').value; if (units==0) { var itemcount=gv('itemcount'); itemcount--; sv('itemcount',itemcount); itemdivvisible(itemcount+1,false); var prev=i-1; document.getElementById('additem' + prev).style.display='inline'; if (itemcount>1) document.getElementById('removeitem' + prev).style.display='inline'; document.getElementById('showsummary' + prev).style.display='inline';} else { msg('You still have ' + units + ' units selected. Please remove the quantities first.');}}
function show_summary() { var error; itemcount=0; var total=0; var itemtotal; error=validate_images(); if (error=='') { for (i=0;i<7;i++) { if (isvis('itemdiv' + i)) { 
itemcount++; updateitemstatus(i); error=validate_item(i);if (error!='') break; var itemtotal= parseInt(gv('item' + i + 'total')); if ((isNaN(itemtotal))||(itemtotal<=0)) itemtotal=0; total+=itemtotal;} else break;}}
if (error=='') { sih('sum_totals', itemcount + ' types of items, ' + total + ' units in total'); var textc=0; var imagec=0; var fontc=0; for (f=0;f<10;f++) switch (gv('logotype' + f)) { case 'Exact Image':
case 'Exact Image with additional text':
case 'Logo Only without text': imagec++; break; case 'Custom Font': fontc++; break; case 'Text Only': textc++; break;}
sih('sub_text',textc + ' text logos'); sih('sub_image',imagec + ' images'); sih('sub_font',fontc + ' fonts'); disp('summary','block'); smoothscroll(600);} else { msg(error);}}
function lastaddremoveitem() { var ic=gv('itemcount'); for (i=0;i<7;i++) { document.getElementById('additem' + i).style.display=(i<ic)?'none':'inline'; document.getElementById('removeitem' + i).style.display=(i<ic)?'none':'inline';}}
function updateitemstatus(i) { var age= document.getElementById('item' + i + 'age').value; var gender= document.getElementById('item' + i + 'gender').value; var fabric= (document.getElementById('divfabric_type' + i).style.display=='none')?'':document.getElementById('item' + i + 'fabric_type').value + ' '; var selitem=document.getElementById('item' + i + 'type').value; var total= parseInt(gv('item' + i + 'total')); if ((isNaN(total))||(total<=0)) total=0; var inttotal= parseInt(total); if ((isNaN(inttotal))||(inttotal<=0)) inttotal=0; var ostatus=document.getElementById('item' + i + 'status'); var strsleeve=((document.getElementById('divsleeve' + i).style.display=='none')?'':document.getElementById('item' + i + 'sleeve').value); var strpocket=((document.getElementById('divpocket' + i).style.display=='none')?'':document.getElementById('item' + i + 'pocket').value); var strzip=((document.getElementById('divzip' + i).style.display=='none')?'':document.getElementById('item' + i + 'zip').value); 
var strfabric=((document.getElementById('divfabric_type' + i).style.display=='none')?'':document.getElementById('item' + i + 'fabric_type').value); 
var strneck=((document.getElementById('divneck' + i).style.display=='none')?'':document.getElementById('item' + i + 'neck').value); 
var strextra=' ('+strsleeve+', '+strpocket+', '+strzip+', '+strfabric+', '+strneck+')'; var lenstart; do {lenstart=strextra.length; strextra=strextra.replace(', , ',', ');} while (strextra.length<lenstart); strextra=strextra.replace('(, ','('); strextra=strextra.replace(', )',')'); strextra=strextra.replace(' ()',''); var desc=age + ' ' + gender + ' ' + fabric + selitem + strextra; ostatus.innerHTML =total + ' ' + desc; sih('sum' + i + '_0',desc); sih('sum' + i + '_1',inttotal); var sizes=gv('item' + i + 'sizes'); var colours=gv('item' + i + 'colours'); var colourcount=0; var sizecount=0; var q; for (c=1;c<10;c++) if (emptycolour(i,c)==false) colourcount++; else break; 
for (s=0;s<sizes;s++) for (c=1;c<=colours;c++) if (hq('item' + i + 'colour' + c + 'size' + s)) {sizecount++; break;}
sih('sum' + i + '_2',colourcount); sih('sum' + i + '_3',sizecount); sv('item' + i + 'sizecount',sizecount); sv('item' + i + 'colourcount',colourcount); var embcount=0; var spcount=0; var dtype; var designviscount=gv('item' + i + 'designs'); for (di=0;di<designviscount;di++) { dtype=gv('item' + i + 'design_type' + di); if (dtype=='Embroidery') embcount++; if (dtype=='Screenprinting') spcount++;}
sih('sum' + i + '_4',embcount); sih('sum' + i + '_5',spcount); sv('item' + i + 'embcount',embcount); sv('item' + i + 'spcount',spcount); disp('summary','none'); disp('company_details_div','none');}
function want_design(i) { var want_design=document.getElementById('item' + i + 'want_design').value; var error=validate_item(i,'nodesigncheck'); if ( ((g_totalitem(i)!=0)||(want_design==''))&&(error=='') ) { document.getElementById('div_item' + i + 'designs').style.display=(want_design=='Yes')?'block':'none'; if (want_design=='Yes') smoothscroll(400);} else { si('item' + i + 'want_design',0);
 if (error!='') msg(error); else msg("You have not specified any quantities for this item:\n" + g_itemdesc(i));}
if (want_design!='Yes') for (di=0;di<7;di++) si('item' + i + 'design_type' + di,0); disp('summary','none'); disp('company_details_div','none');}
function dimg_descchange(i,di) { if (nhvreset('item' + i + 'dimg_desc' + di)) msg("If you want to add more images, please scroll to the top of the page and add them there.");}
function critical_size_change(i,di) { var txtheight=document.getElementById('item' + i + 'dpos_height' + di); var txtwidth=document.getElementById('item' + i + 'dpos_width' + di); switch (document.getElementById('item' + i + 'critical_size' + di).value) { case 'Height': design_size_inproportion(txtheight,txtwidth); break; case 'Width': design_size_inproportion(txtwidth,txtheight); break; case 'Exact Dimensions': design_size_both(txtheight,txtwidth,false); break; default: design_size_both(txtheight,txtwidth,true);}}
function design_size_inproportion(spec,prop) { prop.value='(in proportion with image)';prop.disabled=true; spec.disabled=false;spec.value='';spec.focus();}
function design_size_both(a,b,disabled) { b.disabled=disabled;b.value=''; a.disabled=disabled;a.value=''; if (!disabled) a.focus();}
function design_type_change(i,di) { nhvreset('item' + i + 'design_type' + di); if ( (di==1)&&(gi('item' + i + 'design_type' + 0)==0) ) { var cindex=gi('item' + i + 'design_type' + 1); si('item' + i + 'design_type' + 1,0); si('item' + i + 'design_type' + 0,cindex); foc('item' + i + 'design_type' + 0); di=1;}
if (gv('item' + i + 'design_type' + di)=='Screenprinting') msg("You will need to send us a high resolution image for screenprinting (at least 300DPI), now or when you place the order."); var designviscount=gv('item' + i + 'designs'); var designviscount_start=designviscount; var cd=designviscount-1;var emptycount=0; do { if (document.getElementById('item' + i + 'design_type' + cd--).selectedIndex==0) emptycount++; else break;} while (cd>0); if (emptycount >1) { designviscount-=(emptycount-1);} else if ((emptycount==0)&&(designviscount<7)) { designviscount++;}
if (designviscount_start!=designviscount) for (cd=0;cd<7;cd++) document.getElementById('item' + i + 'des_div' + cd).style.display=(cd<designviscount)?'inline':'none'; document.getElementById('item' + i + 'designs').value=designviscount; dpos_torso_change(i,di); dpos_colour_type_change(i,di); updateitemstatus(i);}
function dpos_torso_change(i,di) { var selitem=singular_item(i); 
var pemb=document.getElementById('item' + i + 'dpos_pocketemb' + di); var dpos=document.getElementById('item' + i + 'dpos_torso' + di); nhvreset('item' + i + 'dpos_torso' + di); if (dpos.value!='') { var cdpos=''; for (d=0;d<7;d++) if (d!=di) { cdpos=gv('item' + i + 'dpos_torso' + d); if ( (cdpos!='')&&(cdpos==dpos.value) ) { dpos.selectedIndex=0; var selitem=singular_item(i); msg("You can only place one logo in this position on the " + selitem + " you have specified:\n( Item: " + (i+1) + " / " + selitem + " / Style: " + gv('item' + i + 'style') + " / Units: " + gv('item' + i + 'total') + " )\n\nIf you want other " + selitem + "s to have a different logo in this position, please click 'Add Item' below, and then enter the details for that " + selitem + " and its logos in the new section."); break;}}}
pemb.selectedIndex=0; if ( (dpos.value=='On Pocket')&&(gv('item' + i + 'design_type' + di)=='Embroidery')&&((selitem!='t-shirt')&&(selitem!='golf shirt')) ) { msg("Regarding Embroidery on the pocket of Design " + (di+1) + ":\nIf the " + selitem + ' you have selected comes standard with a pocket, the pocket needs to be unpicked from the ' + selitem + ", then embroidered and sewn on again.\nThis is a time consuming process and costs extra.\n\nAlternatively you may:\n* Choose a " + selitem + " which does not come standard a pocket, and we can add a pocket to it. (subject to availability)\n\n* Have embroidery through the pocket, losing use of the pocket.\n\n* Choose another position for your logo, eg: Above the Pocket.\n\nPlease make your selection on the form..."); dpos.style.marginBottom='2px'; pemb.style.display='block';} else { dpos.style.marginBottom='22px'; pemb.style.display='none';}}
function dpos_headwear_change(i,di) {}
function dpos_apron_change(i,di) { var selitem=singular_item(i); 
var pemb=document.getElementById('item' + i + 'dpos_pocketemb' + di); var dpos=document.getElementById('item' + i + 'dpos_apron' + di); nhvreset('item' + i + 'dpos_apron' + di); pemb.selectedIndex=0; if ( (dpos.value=='On Pocket')&&(gv('item' + i + 'design_type' + di)=='Embroidery') ) { msg("Regarding Embroidery on the pocket of Design " + (di+1) + ":\nThe pocket needs to be unpicked from the apron, then embroidered and sewn on again.\nThis is a time consuming process and costs extra.\n\nAlternatively you may:\n* Have embroidery through the pocket, losing use of the pocket.\n\n* Choose another position for your logo, eg: Above the Pocket.\n\nPlease make your selection on the form...");
 dpos.style.marginBottom='2px'; pemb.style.display='block';} else { dpos.style.marginBottom='22px'; pemb.style.display='none';}}
function dpos_scarf_change(i,di) {}
function logo_background_change(i,di) { var bg=document.getElementById('item' + i + 'dpos_logo_background' + di); var bgtxt=document.getElementById('item' + i + 'background_colourtxt' + di); var bglbl=document.getElementById('lblbgcolour' + i); if (bg.value=='Fabric Showing Through') { bg.style.marginBottom='2px'; bgtxt.style.display='block'; bglbl.innerHTML='Background Colour'; var destype=document.getElementById('item' + i + 'design_type' + di).value.toLowerCase(); if (destype=='') destype='design'; msg("Please enter in the box below, the background colour in your logo that you want to be left out of the " + destype + " so the fabric shows through."); foco(bgtxt);} else { bglbl.innerHTML='&nbsp;';for (di=0;di<7;di++) if (document.getElementById('item' + i + 'dpos_logo_background' + di).value=='Fabric Showing Through') {bglbl.innerHTML='Background Colour'; break;}
bg.style.marginBottom='60px'; bgtxt.style.display='none';}}
function sml_ltring_change(i,di) { if ( (gv('item' + i + 'dpos_sml_ltring' + di)=='Change Lettering')&&nhv('item' + i + 'newlettering' + di) ) { msg("You have selected that you want the small lettering in your logo to be changed.\nPlease enter the new lettering in the next box.");} else if (gi('item' + i + 'dpos_sml_ltring' + di)>1) { msg("Please enter the lettering that you're referring to"); foc('item' + i + 'newlettering' + di);}}
function singular_item(i) { return singular(document.getElementById('item' + i + 'type').value);}
function singular(instring) { instring=instring + '|';instring=instring.replace('s|','');instring=instring.replace('|',''); return instring.toLowerCase();}
function dpos_pocketemb_change(i,di) { var selitem=singular_item(i); switch (document.getElementById('item' + i + 'dpos_pocketemb' + di).value) { case 'Usable Pocket': msg('If the ' + selitem + " you requested comes standard with a pocket the pocket will be removed, embroidered, and sewn on again. This process costs extra.\n\nIf the garment you have requested does not come standard with a pocket, we will add a pocket to the " + selitem + ", embroidered with your logo at minimal extra cost. (Subject to availability)");break; case 'Pocket Not Usable': msg('If this ' + selitem + " you have requested comes standard with a pocket, the embroidery will be done on the pocket and you will not be able to use the pocket.\n\nIf this garment does not come standard with a pocket, we will add a usable pocket to the " + selitem + ", embroidered with your logo at minimal extra cost.\n(Subject to availability)");break;}}
function sim_fonts_change(i,di) { var p_fontnotice_display='none'; for (f=0;f<7;f++) if (gv('item' + i + 'dpos_sim_fonts' + f)=='No, Must Be Exact Font') {p_fontnotice_display='block';break;}
document.getElementById('p_exactfont' + i).style.display=p_fontnotice_display; if ( (gv('item' + i + 'dpos_sim_fonts' + di)=='No, Must Be Exact Font')&&nhv('item' + i + 'dpos_fontsusedtxt' + di) ) msg("You have selected that you want the exact same font as it appears in your logo.\n\nPlease type in the font name in the next box.\n\nIf the font is non-standard, it greatly speed up our response if you send us the font by scrolling to the top of the page and adding the font with your logos.");}
function dpos_colour_type_change(i,di) { var printingdisp=((document.getElementById('item' + i + 'design_type' + di).value=='Screenprinting')&&(document.getElementById('item' + i + 'dpos_colour_type' + di).value=='Multi Colour'))?'block':'none'; var ctype=document.getElementById('item' + i + 'dpos_colour_type_p' + di); var numc=document.getElementById('item' + i + 'dpos_num_colours_p' + di); ctype.style.display=printingdisp; numc.style.display=printingdisp; if (printingdisp=='none') { ctype.value=''; numc.value='';}
var printinglbldisp='none'; for (d=0;d<7;d++) if ((document.getElementById('item' + i + 'design_type' + d).value=='Screenprinting')&&(document.getElementById('item' + i + 'dpos_colour_type' + d).value=='Multi Colour')) { printinglbldisp='block'; break;}
document.getElementById('lblprintingmethod' + i).style.display=printinglbldisp; document.getElementById('lblprintingcolours' + i).style.display=printinglbldisp; if (printinglbldisp=='block') { for (d=0;d<7;d++) document.getElementById('item' + i + 'dpos_colour_type' + d).style.marginBottom=((document.getElementById('item' + i + 'design_type' + d).value=='Screenprinting')&&(document.getElementById('item' + i + 'dpos_colour_type' + d).value=='Multi Colour'))?'2px':'48px';} else { for (d=0;d<7;d++) document.getElementById('item' + i + 'dpos_colour_type' + d).style.marginBottom='0px';}}
function dpos_colour_type_p_change(i,di) { switch (document.getElementById('item' + i + 'dpos_colour_type_p' + di).value) { case 'CMYK Colour Blend': msg("Please note that the CMYK Colour blend can provide as many colours as you want, but they will be approximate and may not be exact pantone matches.");
 break; 
case 'Spot Colours': msg("Spot colours means that each colour will be applied to the " + singular_item(i).toLowerCase() + " individually, which provides more accurate colours than CMYK. It will cost more if you have many colours in your logo."); break;}}
function num_colours_p_change(i,di) {}
function companydetailstablevisible() { disp('tblnormalcompany_details',(gv('reseller')=='Yes')?'none':'block'); disp('tblresellercompany_details',(gv('reseller')=='Yes')?'block':'none');}
function validate_images() { if (gv('embrorsp')!='Yes') return ''; var type;var file;var ext=''; var picstr=' gif png jpg jpe jpeg bmp pdf cdr cdx psd pcx ps psp emf eps tif xls xlsx doc docx ppt pptx tga tiff jfif jp2 dst emb pdd wb wmf wp4 wp5 wpd wpg wq wsd ai ai3 ai4 ai5 ai6 ai7 ai8 cal cgm cin clk cmx cpt cpx crw csl des dib dpx drw dsf dwg dxf exr fh fido flm fmv fpx hdr icb mac mgx mrv nef orf pbm pcd pct pfm pgm pic pict plt pnm pp4 pp5 ppf ppm prn psb pxr raf raw rgbe riff rle rtf sct sdpx svg svgz vda vst wbm wbmp xyze '; for (f=0;f<10;f++) { file=document.getElementById('imagefile' + f).value; type=document.getElementById('logotype' + f); if (type.selectedIndex!=0) { if (type.selectedIndex>1) { if ((file!=0)&&(file!='')) { ext=file.substring(file.lastIndexOf('.')+1,file.length); ext=ext.toLowerCase(); if (type.value=='Custom Font') { if (ext!='ttf') return "Please make sure you send us a 'True Type Font'.\nTrue Type Fonts have a .TTF extension, and are usually found in My Computer > C > Windows > Fonts.";} else { if (picstr.indexOf(' ' + ext + ' ')==-1) return 'The file you have added at Logo ' + (f+1) + " is not recognised.\n\nWe recommend JPG, GIF and PNG images for Embroidery. For screenprinting: high resolution (at least 300DPI) Corel Draw (CDR) or PDF is recommended.\n\nAlternatively we can accept images in these formats:\n" + picstr.toUpperCase();}} else { return "You have not chosen a file for Logo " + (f+1);}} if (nhv('imagedesc' + f)) return "Please enter a description for Logo " + (f+1); if (visnhv('logotext' + f)) return "Please enter your text for Logo " + (f+1);}}
return '';}
function validate_item(i,option) { var error=''; var eorsp=gv('embrorsp'); var selitem=singular_item(i); var stylen=gv('item' + i + 'style'); var itemdesc=g_itemdesc(i); var itemcomment=document.getElementById('item' + i + 'comments').innerHTML; var itemtotal=document.getElementById('item' + i + 'total').value; var want_design=document.getElementById('item' + i + 'want_design').value; if (stylen=='') { error="You need to provide more details for Item " + (i+1) + ":\n" + itemdesc + "\n\nPlease fill in the style number or at least a description of the " + selitem + ", and enter the catalog and pg number (or the web address) into the comment box for this " + selitem + "."; foc('item' + i + 'style');}
if ((error=='')&&(option!='nodesigncheck')&&(document.getElementById('embrorsp').value=='Yes')&&(want_design=='')) { error='You have not selected whether you want any embroidery or screenprinting on this item.'; foc('item' + i + 'want_design');}
if (error=='') { var colours=document.getElementById('item' + i + 'colours').value; var ctotal;var col; for (c=1;c<=colours;c++) { ctotal=document.getElementById('item' + i + 'colourtotal' + c).value;if (ctotal=='') ctotal=0; col=document.getElementById('item' + i + 'colour' + c).value; if ((col=='')&&(ctotal!=0)) { 
error="Please enter the colour in column: 'Colour " + c + "' where you have entered a total of " + ctotal + " units.\n\nItem " + (i+1) + ":\n" + itemdesc; foc('item' + i + 'colour' + c); break;} else if ((col!='')&&(ctotal==0)) { error="Please enter the quanties for Colour " + c + ", " + col + " in the appropriate boxes depending on the sizes you want.\n\nItem " + (i+1) + ":\n" + itemdesc; foc('item' + i + 'colour' + c); foc('item' + i + 'colour' + c + 'size0'); break;}}}
if ((error=='')&&(itemtotal==0)) { error='You have 0 units selected. Please fill in the colours and quantities you require before adding another type of item.'; foc('item' + i + 'colour1');}
if ( (error=='')&&(want_design=='Yes')&&(option!='nodesigncheck') ) { if (document.getElementById('item' + i + 'design_type0').selectedIndex==0) { error="You have not selected whether you want embroidery or screenprinting for Design 1.\n\nItem " + (i+1) + ":\n" + itemdesc; foc('item' + i + 'design_type0');}
if (error=='') { var dtype; var dpos; var anyfields; for (di=0;di<7;di++) { if (document.getElementById('item' + i + 'des_div' + di).style.display=='none') break; dtype=document.getElementById('item' + i + 'design_type' + di).value.toLowerCase(); dpos=dposition(i,di); if (dtype!='') { if (dpos.value=='') { error='Please select the position for your ' + dtype + " for Design " + (di+1) + ".\n\nItem " + (i+1) + ":\n" + itemdesc;
 foco(dpos); break;}
anyfields=(nhv('item' + i + 'dimg_desc' + di)||nhv('item' + i + 'critical_size' + di)||nhv('item' + i + 'dpos_height' + di)||nhv('item' + i + 'dpos_width' + di)||nhv('item' + i + 'dpos_logo_background' + di)||nhv('item' + i + 'dpos_sml_ltring' + di)||nhv('item' + i + 'dpos_sim_fonts' + di)||nhv('item' + i + 'dpos_colour_type' + di)); if (anyfields) { error='Please enter the required fields for your ' + dtype + " for Design " + (di+1) + ".\n\nItem " + (i+1) + ":\n" + itemdesc; break;}
if ( (gv('item' + i + 'dpos_logo_background' + di)=='Fabric Showing Through')&&nhv('item' + i + 'background_colourtxt' + di) ) { error="Design " + (di+1) + ' ' + dtype + ":\nPlease enter the background colour in your logo which you'd like to be left out of the " + dtype + " so that the fabric shows through.\n\nItem " + (i+1) + ":\n" + itemdesc; break;}
if ( (gv('item' + i + 'dpos_sml_ltring' + di)=='Change Lettering')&&nhv('item' + i + 'newlettering' + di) ) { error="Design " + (di+1) + ":\nYou have selected that you want the small lettering in your logo to be changed.\nPlease enter the new lettering in the next box.\n\nItem " + (i+1) + ":\n" + itemdesc; break;}
if ( (gv('item' + i + 'dpos_sim_fonts' + di)!='Yes')&&nhv('item' + i + 'dpos_fontsusedtxt' + di) ) { error="Design " + (di+1) + ' ' + dtype + ":\nYou have selected that you want the exact same font for Design " + (di+1) + " as the font in your logo. Please enter the name of the font.\n\nItem " + (i+1) + ":\n" + itemdesc; break;}
if ( (gv('item' + i + 'dpos_colour_type' + di)=='Multi Colour')&&(dtype=='screenprinting') ) { if (nhv('item' + i + 'dpos_colour_type_p' + di)) { error="Design " + (di+1) + ' ' + dtype + ":\nPlease select the printing method you would like to be used.\nPlease click on the different printing methods for more information.\n\nItem " + (i+1) + ":\n" + itemdesc; break;}
if (nhv('item' + i + 'dpos_num_colours_p' + di)) { error="Design " + (di+1) + ' ' + dtype + ":\nPlease select the number of colours you would like to have in your print, and give a description in the box below if you would like colours changed or left out.\n\nItem " + (i+1) + ":\n" + itemdesc; break;}}} else { if (dpos.value!='') { error="You have selected the '" + dpos.value + "' position for Design " + (di+1) + ", but you have not selected whether you want this design embroidered or screenprinted.\n\nItem " + (i+1) + ":\n" + itemdesc; foco(dpos); break;}
anyfields=(hv('item' + i + 'dpos_other' + di)||hv('item' + i + 'dimg_desc' + di)||hv('item' + i + 'critical_size' + di)||hv('item' + i + 'dpos_height' + di)||hv('item' + i + 'dpos_width' + di)||hv('item' + i + 'dpos_comments' + di)||hv('item' + i + 'dpos_logo_background' + di)||hv('item' + i + 'dpos_sml_ltring' + di)||hv('item' + i + 'newlettering' + di)||hv('item' + i + 'dpos_sim_fonts' + di)||hv('item' + i + 'dpos_fontsusedtxt' + di)||hv('item' + i + 'dpos_colour_type' + di)||hv('item' + i + 'dpos_colourcomment' + di)); if (anyfields) { error="You have filled in some details for Design " + (di+1) + ", but you have not selected whether you want this design embroidered or screenprinted.\n\nItem " + (i+1) + ":\n" + itemdesc; foco(dpos); break;}}}}}
return error;}
function dposition(i,di) { var dpos; dpos=objectifvis('item' + i + 'dpos_torso' + di); if (dpos!=false) return dpos; dpos=objectifvis('item' + i + 'dpos_apron' + di); if (dpos!=false) return dpos; dpos=objectifvis('item' + i + 'dpos_headwear' + di); if (dpos!=false) return dpos; dpos=objectifvis('item' + i + 'dpos_scarf' + di); if (dpos!=false) return dpos; return document.getElementById('item' + i + 'dpos_other' + di);}
function objectifvis(id) { if (document.getElementById(id).style.display!='none') return document.getElementById(id); else return false;}
function xor_check_ids(id1,id2) { return (checked(id1) && !checked(id2)) || (!checked(id1) && checked(id2));}
function form_validate() { error=''; if (error=='') if (nhv('howfind')||nhv('buyfrequency')||nhv('reseller')) error="Please fill in the remaining items on the form."; if (error=='') { if (gv('reseller')=='No') { if (nhv('ncustname')||nhv('ncompany')||nhv('nbusinessnature')||nhv('ntelephone')||nhv('ncell')||nhv('nemailsales')||nhv('npoststreet')||nhv('npostsuburb')||nhv('npostcity')||nhv('npostcode')||nhv('ncountry')) error="Please fill in your company details."
if (error=='') { error=emailaddresserror(gv('nemailsales')); if (error!='') foc('nemailsales');}} else { if (nhv('rcustname')||nhv('rcompany')||nhv('rcompanytype')||nhv('rtradingname')||nhv('rregowners')||nhv('rbusinessnature')||nhv('rcompanyregno')||nhv('rvatregno')||nhv('raccountsclerk')||nhv('rtelephone')||nhv('rcell')||nhv('remailsales')||nhv('remailowner')||nhv('rpoststreet')||nhv('rpostsuburb')||nhv('rpostcity')||nhv('rpostcode')||nhv('rphysstreet')||nhv('rphyssuburb')||nhv('rphyscity')||nhv('rphyscode')||nhv('rcountry')||nhv('rmembers0a')) error="Please fill in your company details."
if (error=='') { error=emailaddresserror(gv('remailsales'));
 if (error!='') foc('remailsales');}}}
if (error=='') if (nhv('quotedue')||nhv('goodsday')||nhv('goodsmonth')||nhv('goodsyear')) error="Please enter when you need the quote, and when you're likely to place the order."; if (error=='') if (nhv('formeasy')||nhv('websiteeasy')) error="Please let us know if you found this form and website easy to use."; if (error=='') if ( (checked('important_price')||checked('important_quality')||checked('important_service'))==false ) error="Please select what you value most, Price, Quality or Service."; if (error=='') if (!xor_check_ids('specials_optin_no','specials_optin_yes')) error="Please specify whether you'd like to be notified when we run special deals on Garments, Gifts, Laptops and Office Products."; if (error=='') { var error=validate_images(); if (error=='') { for (i=0;i<7;i++) { if (isvis('itemdiv' + i)) { 
error=validate_item(i);if (error!='') break;} else break;}}}
if (error=='') { return true;} else { msg(error); return false;}}
function emailaddresserror(addr) { if (addr == '') return 'Please enter email address'; var invalidchars = '\/\'\\ ";:?!()[]\{\}^|'; for (i=0; i<invalidchars.length; i++) if (addr.indexOf(invalidchars.charAt(i),0) > -1) return 'Email address contains invalid characters'; 
for (i=0; i<addr.length; i++) if (addr.charCodeAt(i)>127) return 'Email address contains non-ascii characters.'; 
var atPos = addr.indexOf('@',0); if (atPos == -1) return 'Email address must contain an @'; if (atPos == 0) return 'Email address must not start with @'; if (addr.indexOf('@', atPos + 1) > - 1) return 'Email address must contain only one @'; if (addr.indexOf('.', atPos) == -1) return 'Email address must contain a period in the domain name'; if (addr.indexOf('.@',0) != -1) return 'Email address invalid (.@)'; if (addr.indexOf('@.',0) != -1) return 'Email address invalid (@.)'; if (addr.indexOf('..',0) != -1) return 'Email address invalid (..)'; var suffix = addr.substring(addr.lastIndexOf('.')+1); if (suffix.length != 2 && suffix != 'com' && suffix != 'net' && suffix != 'org' && suffix != 'edu' && suffix != 'int' && suffix != 'mil' && suffix != 'gov' & suffix != 'arpa' && suffix != 'biz' && suffix != 'aero' && suffix != 'name' && suffix != 'coop' && suffix != 'info' && suffix != 'pro' && suffix != 'museum') return 'Invalid primary domain in email address'; return '';}

