function SetCoords() {
	//объявление переменных и зон доступа
	var oContainer = document.getElementById("random_blocks_container");
	var arrBlocks = new Array();
	var arrWidths = new Array();
	var arrCoords = new Array();
	var arrPictZones = new Array();
	var iBlockHeight = 0;
	
	//определение учавствующих в сортировке элементов
	var k = 0;
	for (var i=0; i < oContainer.childNodes.length; i++) {
		if (oContainer.childNodes[i].nodeType == 1) {
			arrBlocks[k] = oContainer.childNodes[i];
			oContainer.childNodes[i].style.zIndex = k+1;
			k++
		}
	}	
	var iElemsWidth = 0;
	var iLineHeight = 0;
	
	//определение ширин и высот элементов
	for (var i=0; i < arrBlocks.length; i++) {
		var oImgWidth = document.getElementById("random_pos_block_img_" + (i+1));
		var iImgWidth = parseInt($(oImgWidth).css("width"));
		var iImgHeight = parseInt($(oImgWidth).css("height"));
		
		$(arrBlocks[i]).css("width", (iImgWidth + 22));
		arrWidths[i] = [parseInt(iImgWidth + 22), parseInt(iImgHeight + 22)];
		if(iLineHeight < arrWidths[i][1])
			iLineHeight = arrWidths[i][1];
	}
	
	var iNumNum = 0;
	for(var i=0; i<arrWidths.length; i++) {
		iNumNum += arrWidths[i][0];
	}
	
	//alert(iNumNum);
	
	iLineHeight = Math.ceil(iNumNum / arrWidths.length);
	
	//alert(iLineHeight);
	//return;
	
	var iMinWidth = 425;
	var iMaxWidth =  (arrBlocks.length < 10) ? iMinWidth : 890;
	var iArrElemWidth = 0;
	var iSum = 0;
	var iArrIndex = iInnerArrIndex = 0;
	for(var i=0; i < arrBlocks.length; i++) {
		if(i < 1){
			iArrElemWidth = iMinWidth;
			arrPictZones[iArrIndex] = [];
		}
		iSum += arrWidths[i][0] + 20;
		if(iSum > iArrElemWidth){
			iSum = iInnerArrIndex = 0;
			iArrElemWidth = iMaxWidth;
			iArrIndex += 1;
			arrPictZones[iArrIndex] = [];
		}
		arrPictZones[iArrIndex][iInnerArrIndex] = arrBlocks[i];
		iInnerArrIndex++;
	}
	
	//назначение координат
	var iMinNum = (iMinWidth == iMaxWidth) ? 15 : 435;
	var a = 0;
	for(var i=0; i < arrPictZones.length; i++) {
		var arrElems = new Array();
		for(var j=0; j < arrPictZones[i].length; j++) {
			if(i<1){
				var iStartNum = (iMinWidth / arrPictZones[i].length) * j;
				var iFinishNum = (iMinWidth / arrPictZones[i].length) * (j+1) - 150;
			}
			else{
				if(j < 1){
					var iStartNum = (iMaxWidth / arrPictZones[i].length) * j - iMinNum;
					var iFinishNum = (iStartNum + 50);
					
					//alert([iStartNum, iFinishNum]);
				}
				else{
					var iStartNum = parseInt(arrElems[(j-1)][0]) + parseInt(arrElems[(j-1)][1]) - 10;
					var iFinishNum = parseInt(arrElems[(j-1)][0]) + parseInt(arrElems[(j-1)][1]) + 10;
					
					
					//alert([iStartNum, iFinishNum]);
				}
			}
			var iX = RandomNum(iStartNum, iFinishNum);
			var iY = RandomNum(-10, 50) + (iLineHeight * i);
			arrElems[j] = [iX, parseInt(arrPictZones[i][j].clientWidth)];
			
			arrCoords[a] = [iX, iY];
			if( a < (arrBlocks.length - 1) )
				a++;
		}
	}
	
	//построение и вывод на экран
	for (var i = 0; i < arrBlocks.length; i++) {
		$(arrBlocks[i]).css("left", parseInt(arrCoords[i][0]));
		$(arrBlocks[i]).css("top", parseInt(arrCoords[i][1]));
		$(arrBlocks[i]).css("visibility", "visible");
	}

	$("#random_blocks_container").css("height", (iLineHeight * ( arrPictZones.length )));
	$("#random_blocks_container").css("marginBottom", 30);
	//megahack for ie6
	var iContentHeight = parseInt(document.getElementById("layout").clientHeight);
	$("#footer").css("top", (iContentHeight - 90));
	/**/
}
/* ########################################### */
function SetZIndex(oElem) {
	var oContainer = document.getElementById("random_blocks_container");
	var arrBlocks = new Array();
	
	var k = 0;
	for (var i=0; i < oContainer.childNodes.length; i++) {
		if (oContainer.childNodes[i].nodeType == 1) {
			arrBlocks[k] = oContainer.childNodes[i];
			k++
		}
	}
	
	var iZIDndex = 1;
	for(var i=0; i < arrBlocks.length; i++){
		if(parseInt($(arrBlocks[i]).css("zIndex")) > iZIDndex)
			iZIDndex = parseInt($(arrBlocks[i]).css("zIndex"));
	}
	
	oElem.style.zIndex = parseInt(iZIDndex + 1);
}
