function storeCaret (textEl) { 
	if (textEl.createTextRange)  
	textEl.caretPos = document.selection.createRange().duplicate(); 
} 
function insertAtCaret (textEl, text) { 
	if (textEl.createTextRange && textEl.caretPos) { 
		var caretPos = textEl.caretPos; 
		caretPos.text = 
		caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? 
		text + ' ' : text; 
	} 
	else 
		textEl.value = text; 
} 

function AddSnippet (textEl,snippet1,snippet2) {
					var docrange = document.selection.createRange().text;
					var docrange1 = document.selection.createRange();
					if (!docrange) {
						insertAtCaret (textEl, snippet1+snippet2);
					}
					if (docrange) {
						textEl.focus();
						document.selection.createRange().text = snippet1 + docrange + snippet2;
						textEl.focus();
						theSelection = '';
					}
					return false;
			}

function SfindObj(n, d) 
{	//v4.01
	var p, i, x;
	if (!d) 
		d = document; 
	if ((p = n.indexOf("?") ) > 0 && parent.frames.length) 
	{
		d = parent.frames [n.substring(p + 1)].document; 
		n = n.substring(0, p);
	}
	if (!(x = d [n]) && d.all) 
		x = d.all [n]; 
	for (i = 0; !x && i < d.forms.length; i ++) 
		x = d.forms [i] [n];
	for (i = 0; !x && d.layers && i < d.layers.length; i ++)
		x = SfindObj(n, d.layers [i].document);
	if(!x && d.getElementById) 
		x = d.getElementById(n);
	return x;
}


function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=SfindObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

var nTimeOut=0;
var nActiveDiv=0;
function showLayer (num) {
	if (nTimeOut>0)
		clearTimeout(nTimeOut);

	MM_showHideLayers('sub'+nActiveDiv,'','hide');
	nActiveDiv=num;
	MM_showHideLayers('sub'+num,'','show');
}

function hideLayer (num) {
	MM_showHideLayers('sub'+num,'','hide');
} 

function findPosX(objname)
{
	obj=SfindObj(objname);
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}


function findPosY(objname)
{
	obj=SfindObj(objname);
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}

function CenterLayer (layer,width,height,target) {
	if (!target)
		target=window.document;

	leftLayer = (target.body.clientWidth - width)/2;
	topLayerABS = (target.body.clientHeight - height)/2;

	topLayer=target.body.scrollTop;
	
	newTop = topLayer + topLayerABS;
	if (newTop < 0)
		newTop=0;

	target.getElementById(layer).style.left = leftLayer;
	target.getElementById(layer).style.top=topLayer + topLayerABS;
}

function ShowProd (wwidth,wheight,isrc,modelid) {
	obj1=SfindObj('preview');
	obj2=SfindObj('previewimg');
	obj3=SfindObj('previewtbl');
	if (modelid >=0 ) {
		objLoad=SfindObj("loaddata");
		objLoad.innerHTML='';
		objLoad.style.display='none';
	}
	
	obj2.src='/i/dot.gif';

	obj1.style.width=wwidth+25+'px';
	obj1.style.height=wheight+7+'px';
	
	obj3.style.width=wwidth+25+'px';
	obj3.style.height=wheight+7+'px';

	if (modelid == -2) {
		X=findPosX('down');
		Y=findPosY('down');
		obj1.style.left=X-180+'px';
		obj1.style.top=Y-10+'px';
	}
	else
		CenterLayer('preview',wwidth+25,wheight+7,window.document);
	obj1.style.visibility='visible';
	
	
	
	obj2.src=isrc;
}

function HideProd () {
	obj1=SfindObj('preview');
	obj2=SfindObj('previewimg');
	objLoad=SfindObj("loaddata");
	objLoad.innerHTML='';
	objLoad.style.display='none';
	
	obj2.src='/i/dot.gif';
	
	obj1.style.visibility='hidden';
}

nMenuYPos = 0;
nYDelta = 32;
nPrevScrollPos = 0;

function Spy (sObject) {
		objSpy=SfindObj(sObject);
		
		if (document.body.clientHeight < 640)
			return;
		
		if (document.body.scrollTop < nMenuYPos - nYDelta)
			nNeededPos = nMenuYPos;
		else
			nNeededPos = document.body.scrollTop + nYDelta;
			
		/*if (document.body.scrollTop == 0)
			nNeededPos=0;*/
		nNeededPos=nNeededPos-32;
		
		nCurrentPos = objSpy.offsetTop;

		if (nNeededPos == nCurrentPos)
			return;

		nDelta = (nNeededPos - nCurrentPos) / 6;
		if (nDelta > 0 && nDelta < 0.5)
			nCurrentPos += nNeededPos - nCurrentPos;
		else
			if (nDelta < 0 && nDelta >= -0.5)
				nCurrentPos --;
			else
				nCurrentPos += Math.round (nDelta);
		
		pnt = objSpy.style;
		pnt.top = nCurrentPos;
}

function ScriptStart (sObject) {
	setInterval("Spy ('"+sObject+"')", 20);
}

function ShowMeasure () {
	objLoad=SfindObj("loaddata");
	sVal="<table border=0 class=smtxt cellpadding=2 cellspacing=1 style=margin-top:10px> <tr bgcolor=#F0F0F0 align=center style=font-weight:bold> <td colspan=2>&nbsp;</td> <td>70</td> <td>75</td> <td>80</td> <td>85</td> <td>90</td> <td>95</td> </tr> <tr bgcolor=#D0D0D0 align=center> <td colspan=2>обхват под грудью</td> <td style=font-weight:bold nowrap>68-72</td> <td style=font-weight:bold nowrap>73-77</td> <td style=font-weight:bold nowrap>78-82</td> <td style=font-weight:bold nowrap>83-87</td> <td style=font-weight:bold nowrap>88-92</td> <td style=font-weight:bold nowrap>93-97</td> </tr> <tr bgcolor=#F0F0F0 align=center> <td rowspan=5>обхват груди</td> <td bgcolor=#000000 align=center><strong style=color:#FFFFFF>A</strong></td> <td>82-84</td> <td>87-89</td> <td>92-94</td> <td>97-99</td> <td>102-104</td> <td>107-109</td> </tr> <tr bgcolor=#F0F0F0 align=center> <td bgcolor=#000000 align=center><strong style=color:#FFFFFF>B</strong></td> <td>84-86</td> <td>89-91</td> <td>94-96</td> <td>99-101</td> <td>104-106</td> <td nowrap>109-111</td> </tr> <tr bgcolor=#F0F0F0 align=center> <td bgcolor=#000000 align=center><strong style=color:#FFFFFF>C</strong></td> <td>86-88</td> <td>91-93</td> <td>96-98</td> <td>101-103</td> <td>106-108</td> <td nowrap>111-113</td> </tr> <tr bgcolor=#F0F0F0 align=center> <td bgcolor=#000000 align=center><strong style=color:#FFFFFF>D</strong></td> <td>88-89</td> <td>93-95</td> <td>98-100</td> <td>103-105</td> <td>108-110</td> <td nowrap>113-115</td> </tr> <tr bgcolor=#F0F0F0 align=center> <td bgcolor=#000000 align=center><strong style=color:#FFFFFF>E</strong></td> <td nowrap>90-92</td> <td nowrap>95-97</td> <td nowrap>100-102</td> <td nowrap>105-107</td> <td nowrap>110-112</td> <td nowrap>115-117</td> </tr> <tr bgcolor=#D0D0D0 align=center> <td colspan=2>объем бедер (размер трусов)</td> <td style=font-weight:bold>96</td> <td style=font-weight:bold>100</td> <td style=font-weight:bold>104</td> <td style=font-weight:bold>108</td> <td style=font-weight:bold>112</td> <td style=font-weight:bold>116</td> </tr></table>";
	objLoad.innerHTML=sVal;
	objLoad.style.display='block';
	ShowProd (410,160,'/i/dot.gif',-1);
}

function ShowSwitcher () {
	objLoad=SfindObj("loaddata");
	objLoad.innerHTML='<img src=/i/dot.gif width=1 height=10px>'+sSwitcherData;
	objLoad.style.display='block';
	ShowProd (280,280,'/i/dot.gif',-2);
}

function insertAtCursor(myField, myValue1, myValue2) {
//IE support
	if (document.selection) {
		myField.focus();
		sel = document.selection.createRange();
		sel.text =  myValue1 + sel.text + ' ' + myValue2 + ' ';
	}
//GECKO support
	else if (myField.selectionStart || myField.selectionStart == '0') {
		var startPos = myField.selectionStart;
		var endPos = myField.selectionEnd;
		myField.value = myField.value.substring(0, startPos) + myValue1 + myField.value.substring(startPos, endPos) +' '+ myValue2 + ' ' +myField.value.substring(endPos, myField.value.length);
	}
	else {
		myField.value += myValue1+' '+myValue2+' ';
	}
	myField.focus();
}

var visLayers=new Array(); 

function showHideLayers() { //v6.0
  var i,p,v,obj,args=showHideLayers.arguments;
  
  for (i=0; i<(args.length-2); i+=3)
  	if ((obj=SfindObj(args[i]))!=null) {
  		
  			v=args[i+2];
  			
  			if (v=='') {
			 	if (visLayers[args[0]]=='visible')
					v='hide';
				else
			  		v='show';
			}

			 if (obj.style) {
			  		obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v;
			}
    		obj.visibility=v;
    		visLayers[args[0]]=v;
    }
}


function quote() 
{
  if(document.getSelection)
  {
    var str = document.getSelection();
    if(window.RegExp) 
    {
      var regstr = unescape("%20%20%20%20%20");
      var regexp = new RegExp(regstr, "g");
      str = str.replace(regexp, "");
    }
  }
  else
  if(document.selection && document.selection.createRange) 
  {
    var range = document.selection.createRange();
    var str = range.text;
  }
  else 	return '';
  return str;
}

bScriptLoaded = true;


