﻿/*********************************************************************
This is the Script to Produce the Controls dynamic in the Client Side.
Eg : Upload more,Add more files to upload.
Requirements : 
1. Div: To display the Dynamic Controls.
2. Reapeated Controls: The html controls u want to reapeat more times.
3. Hidden Field : Html hidden field.
4. int : How many number of controls need to add that count u need to specify
	u can specify negative value to remove the elements.
*********************************************************************/
function addDynamicControls(dynControlsDivId,repeatedControlsString,hiddenValueId,number)
{
    var val1 = number
    if(document.getElementById(hiddenValueId).value == "")
    {
        document.getElementById(hiddenValueId).value = '0';
    }
	var val = parseInt(document.getElementById(hiddenValueId).value);
	var dynStr = ""
	
	if (val1==1)
		val = val + 1;
	else
		val = val - 1;
				
	if (val == 0)
		val = 1;
	
	if(document.getElementById(dynControlsDivId).children.length == 0)
	{
		for(var i = 0; i < val; i++ )
		{
			dynStr = dynStr + "<span id='sp"+ dynControlsDivId +"'> "+repeatedControlsString+"</span><span class='message' name='error"+dynControlsDivId+"' id='error"+dynControlsDivId+"'></span>"
		}
	}
	else if(val1 == 1)
	{
		dynStr = document.getElementById(dynControlsDivId).innerHTML
		dynStr = dynStr + "<span id='sp"+ dynControlsDivId +"'> "+repeatedControlsString+" </span><span class='message' id='error"+dynControlsDivId+"'></span>"		
	}
	else if(val1 == -1)   
	{
		if(document.getElementsByName('sp'+dynControlsDivId).length > 1)
		{
			for(var i = 0;i< document.getElementsByName('sp'+dynControlsDivId).length - 1; i ++)
			{
				dynStr = dynStr + document.getElementsByName('sp'+dynControlsDivId)[i].outerHTML;
				dynStr = dynStr + document.getElementsByName('error'+dynControlsDivId)[i].outerHTML
			}
		}
		else
		{
			dynStr = document.getElementById(dynControlsDivId).innerHTML
		}
	}	
	document.getElementById(dynControlsDivId).innerHTML = dynStr;
	
	document.getElementById(hiddenValueId).value = val;
}


/*********************************************************************
This is the Script to Produce the Controls dynamic in the Client Side.
Eg : Upload more,Add more files to upload.
Requirements : 
1. Div: To display the Dynamic Controls.
2. Reapeated Controls: The html controls u want to reapeat more times.
3. Hidden Field : Html hidden field.
4. int : How many number of controls need to add that count u need to specify
	u can specify negative value to remove the elements.
*********************************************************************/

function validateDynamicControls(dynDivId,message)
{
    var divObj = document.getElementById(dynDivId);
    var count = 0;
    for(var i= 0;i < divObj.getElementsByTagName('span').length; i++)
    {
        var Item = divObj.getElementsByTagName('input')[i];
        if(Item)
        {
            if(Item.type == 'text')
            {
                if(Item.value == '')
                {
                    document.getElementsByName("error"+dynDivId)[i].innerHTML = message;
                    count = count + 1;
                    //return false;
                }
                else
                {
                    document.getElementsByName("error"+dynDivId)[i].innerHTML = "";                    
                }
            }
        }
    }
    if(count == 0)
    {
        return true;
    }
    else
    {
        return false;
    }
}
function showData(dynDivId)
{
    //alert()
}
function setSearchData(index,param)
{
    var paramAr = new Array();
    paramAr = param.split(":")
    
    var searchBy = "";
    var keyWord = "";
    var condition = "0";
        
    searchBy = paramAr[0];    

    if(paramAr[1].indexOf(".") > 0)
    {
        keyWord = paramAr[1].substring(0,paramAr[1].length - 1);        
        condition = "0";
    }
    else if(paramAr[1].indexOf("|") > 0)
    {
        keyWord = paramAr[1].substring(0,paramAr[1].length - 1);        
        condition = "1";
    }
    else
    {
        keyWord = paramAr[1]
    }    
    
    var SearchByObj = document.getElementsByName("SearchBy")[index];
    var keyWordObj = document.getElementsByName("txtKeyword")[index];
    var condObj = document.getElementsByName("condition")[index];
    
    SearchByObj.value = searchBy;
    keyWordObj.value = decodeURIComponent(keyWord);
    
    condObj.options[condition].selected = true;
}
