function agregarOpcion(id_contenedor){
	var opcion = document.createElement("input");
	var contenedor = document.getElementById(id_contenedor);
	var inputs = contenedor.getElementsByTagName("input");
	var contInputs = inputs.length;
	var br = document.createElement("br");
	
	opcion.setAttribute("type","text");
	opcion.setAttribute("name","opcion[]");
	opcion.setAttribute("id","opcion_"+(contInputs+1));
	contenedor.appendChild(br);
	contenedor.appendChild(opcion);
}


//iNGRESADO POR DAVID 
function chkNumeric2(obj,nombreCampo,minim,maxim)
{
// only allow 0-9 be entered, plus any values passed
// (can be in any order, and don't have to be comma, period, or hyphen)
// if all numbers allow commas, periods, hyphens or whatever,
// just hard code it here and take out the passed parameters
	var checkOK = "0123456789.-";
	var checkStr = obj;
	var allValid = true;
	var decPoints = 0;
	var allNum = "";
	for (i = 0;  i < checkStr.value.length;  i++){
		ch = checkStr.value.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
				break;
		if (j == checkOK.length){
			allValid = false;
			break;
		}
		if (ch != ",")
			allNum += ch;
	}
	if (!allValid){	
		alertsay = "Favor Ingrese slo estos valores \""
		alertsay = alertsay + checkOK + "\" en el campo \"" + nombreCampo + "\""
		alert(alertsay);
		return (false);
	}
	
	if(minim === false){
	}else{
		if(checkStr.value < minim){
			alert("El valor para el campo \""+ nombreCampo +"\" no puede ser menor a " + minim);
			return false;
		}	
	}

	if(maxim === false){
	}else{
		if(checkStr.value > maxim){
			alert("El valor para el campo \""+ nombreCampo +"\" no puede ser mayor a " + maxim);
			return false;
		}		
	}
	
	return true;
	
}

function chkNumeric(obj,nombreCampo){
	return chkNumeric2(obj,nombreCampo,false,false);	
}


//Ingresado por David
var INNER_LINK = "";
var validado=false;
//Funciones ocupadas para Ajax
function TRUE(){
	validado = true;
}
function FALSE(){
	validado = false;
}

function Visible(objetoVisualizar,id_link){
	var navegador = navigator.appName

	var varDisp = 'visible';

	if (document.getElementById(objetoVisualizar).style.visibility =='hidden') { 
		document.getElementById(objetoVisualizar).style.visibility=varDisp;

		if(id_link != ""){
			INNER_LINK = document.getElementById(id_link).innerHTML;
			document.getElementById(id_link).innerHTML = 'Ocultar';
		}
	} else {
		document.getElementById(objetoVisualizar).style.visibility='hidden';
		if(id_link != "")
			document.getElementById(id_link).innerHTML = INNER_LINK;
	}	
}
function MostrarOcultar (objetoVisualizar,id_link) {
	var navegador = navigator.appName
	
	varDisp = '';

	if (document.getElementById(objetoVisualizar).style.display =='none') { 
		document.getElementById(objetoVisualizar).style.display=varDisp;

		if(id_link != ""){
			INNER_LINK = document.getElementById(id_link).innerHTML;
			document.getElementById(id_link).innerHTML = 'Ocultar';
		}
	} else {
		document.getElementById(objetoVisualizar).style.display='none';
		if(id_link != "")
			document.getElementById(id_link).innerHTML = INNER_LINK;
	}
}

function Mostrar(objetoVisualizar){
	document.getElementById(objetoVisualizar).style.display='';	
}
function Ocultar(objetoVisualizar){
	document.getElementById(objetoVisualizar).style.display='none';		
}
/* Funcion Mostrar_menu */

function mostrar_menu (objetoVisualizar,id_link) {
	var navegador = navigator.appName
	
	if (navegador == "Microsoft Internet Explorer") 
		varDisp = '';
	else
		varDisp = 'table';


//	estado = document.getElementById(objetoVisualizar).style.display;

	if (document.getElementById(objetoVisualizar).style.display =='none') { 
		document.getElementById(objetoVisualizar).style.display=varDisp;

		if(id_link != ""){
			INNER_LINK = document.getElementById(id_link).innerHTML;
			document.getElementById(id_link).innerHTML = '[-]';
		}
	} else {
		document.getElementById(objetoVisualizar).style.display='none';
		if(id_link != "")
			document.getElementById(id_link).innerHTML = INNER_LINK;
			document.getElementById(id_link).innerHTML = '[+]';
	}
}

/********************* **********************/

function newPage(pagina){
	var newWin = window.open(pagina,"_blank","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, copyhistory=yes, width=800, height=600");
}
function goToPage(pagina){
	window.location.href=pagina;
}
function goToPage2(pagina,obj,lnk_name){
	window.location.href=pagina + "&"+ lnk_name +"=" + obj.value;
}
function sendMessage($msg){
	alert($msg);
	return true;
}

function preguntar(){
	resp = confirm("Esta Seguro de Realizar esta Operacin?");
	if(resp){
	 	return true;
	}else{
		return false;
	}
}

function preguntar(msg){
	if(msg ==""){
		return confirm("Esta Seguro de Realizar esta Operacin?");
	}
	resp = confirm(msg);
	if(resp){
	 	return true;
	}else{
		return false;
	}
}

function revisarMail(input){
	var b=/^[^@\s]+@[^@\.\s]+(\.[^@\.\s]+)+$/
	if (!b.test(input.elements["email"].value))
	{
       return false;
	}else{
		return true;
	}

}

//Formato = 12345678-9
function revisarRut(input,rut){
	var rut;
	rut = input.elements[rut].value;
	if((rut.length!=10) && (rut.length!=9)){
		return false;
	}
	var count=0;
	var count2=0;
	var factor=2;
	var suma=0;
	var sum=0;
	var digito=0;
	var codigo=0;
	count2=rut.length - 1;
	codigo=rut.substr(count2,1);
	count2=count2 - 1;
	
	if(rut.substr(count2,1)!="-"){
		return false;
	}
	count2=count2 - 1;
	while(count < rut.length-2)
		{
			sum = factor * (parseInt(rut.substr(count2,1))); 
			suma = suma + sum;
			sum=0;
			count = count + 1;
			count2 = count2 - 1;
			factor = factor + 1;
			if(factor > 7)
			{
				factor=2; 
			} 
		}

	digito= 11 - (suma % 11);
	
	if(digito==11)
	{
		digito=0;
	}
	
	if(digito==10)
	{
		digito="k";
	}
	
	if(codigo==digito){
		return true;
	}else{
		return false;
	}
	return false;
}
function revisarCampos(pagina,f){
	var camposRequeridos;
	var camposNombres;
	var camposRequeridos_select;
	var camposNombres_select;
	var email = false;
	var rut = false;
	var camposCheck   = true;
	var fono = false;
	var camposFaltantes = "\nTodos los campos son obligatorios. El o los siguientes campo(s) esta(n) vacio(s):                        \n\n\t";

	switch (pagina){
		case 'genera_Flor':
				camposRequeridos = new Array("nombre","precio","descripcion","id_imagen_fk");
				camposNombres = new Array("Ingrese el Nombre de la Flor","Ingrese el Precio de la Flor","Ingrese la Descripcion de la Flor","Ingrese la Imagen de la Flor");
				break;
		
		case 'login':
				camposRequeridos = new Array("usuario","clave");
				camposNombres = new Array("Ingrese su Nombre de Usuario","Ingrese su clave");
				break;

		case 'cambio_clave':
				camposRequeridos = new Array("tu_nombre","tu_apellido");
				camposNombres = new Array("Ingrese su Nombre","Ingrese su Apellido");
				break;

		case 'recomiendanos':
				camposRequeridos = new Array("tu_nombre","tu_apellido","tu_email","amigo1");
				camposNombres = new Array("Ingrese su Nombre","Ingrese su Apellido","Ingrese Su E-mail","Ingrese E-mail de Amigo 1");
				break;

		case 'contacto':
				camposRequeridos = new Array("nombre","email","telefono","mensaje");
				camposNombres = new Array("Ingrese su Nombre","Ingrese su E-Mail","Ingrese su Telefono","Ingrese su Mensaje");
				break;
		case 'ver_detalle_flor':
				
				var selects_colores = document.getElementsByName("color_flores");
				
				for(var p = 0;p<selects_colores.length;p++){
					var color = selects_colores[p].value;
					var id_flor = selects_colores[p].getAttribute('id_flor');
					
					if(color=="") camposFaltantes += "Seleccione un color para el producto "+id_flor+"\n\t";
				}
				if(!getRadioValue(f,'tu_fpago')) camposFaltantes += "Seleccione una Forma de Pago\n\t";
		
				camposRequeridos = new Array("nombre","apellido","direccion","ciudad","telefono","tu_nombre","tu_ciudad","tu_telefono","tu_email","tu_texto","tu_firma","tu_comentario");
				camposNombres = new Array("Ingrese el Nombre de quien recibe","Ingrese el Apellido de quien recibe","Ingrese la Direccin de quien recibe","Ingrese la Ciuadad de quien recibe","Ingrese el Telefono de quien recibe (si no tiene, coloque S/N)","Ingrese su Nombre","Ingrese su Ciudad","Ingrese su Telefono (si no tiene, coloque S/N)","Ingrese su E-mail","Ingrese el Texto de la Tarjeta","Ingrese su Firma","Ingrese el Cometario respecto del Pago");
				break;
		default: return false;
	}
	
		//Reviso que los campos ingresados no esten vacios	
		for(var i=0; i < camposRequeridos.length; i++) {
			if ((f.elements[camposRequeridos[i]].value == "") ||
				(f.elements[camposRequeridos[i]].value == " ")) {
	
				camposFaltantes += camposNombres[i] + "\n\t";
				camposCheck = false;
			}
		}
	
		
		//Reviso que el email este bien escrito
		if(email){
			if(!revisarMail(f)){
				camposFaltantes += "Debe escribir correctamente el correo" + "\n\t";
				camposCheck = false;
			}
		}
		
		//reviso que el rut ingresado sea vlido.
		if(rut){
			if(!revisarRut(f,rut)){
				camposFaltantes += "El Rut Ingresado no es Vlido" + "\n\t";
				camposCheck = false;
			}
		}
		
		//Reviso que el fono ingresado sea valido (no ingrese caracteres)
		if(fono){
			//colocar aca la funcion que revise el cuestionsita esta.
		}
		//Reviso que se hayan cumplido todas las condiciones.
		if (camposCheck == true){
			return true;
		}else{
			alert(camposFaltantes);
			return false;
		}
	
}

function isdefined(variable) 
{ 
	if(typeof(variable) !="undefined") 
		return true; 
	else 
	return false; 
}

function existeElementoEnArray(arr,elem)
{
	var i;
	for(i=0; i <  arr.length; i++)
	{
		if(arr[i] == elem)
			return true;
	}
	return false;
}
function eliminarElementoDeArray(arr,elem)
{
	var i,j;
	var tmpArr = new Array();
	for(i=0, j=0; i <  arr.length; i++)
	{
		if(arr[i] != elem)
		{
			tmpArr[j] = arr[i];
			j++;
		}
	}
	return tmpArr;
}
//elem1 y elem2 son arreglos
//La funcion verifica q sean iguales, si lo son retorna verdadero y sino falso !!
//El que sean iguales quiere decir q todos sus elementos son iguales, con mismo valor y en la misma
//posicion.-
function sonIguales(elem1,elem2)
{
	var i;
	if(elem1.lenght != elem2.lenght)
		return false;
	for(i=0; i < elem1.length; i++)
	{
		if(elem1[i]!=elem2[i])
			return false;
	}
	return true;
}

function jsArray2PHPArray(a)
// This converts a javascript array to a string in PHP serialized format.
// This is useful for passing arrays to PHP. On the PHP side you can 
// unserialize this string from a cookie or request variable. For example,
// assuming you used javascript to set a cookie called "php_array"
// to the value of a javascript array then you can restore the cookie 
// from PHP like this:
//    <?php
//    session_start();
//    $my_array = unserialize(urldecode(stripslashes($_COOKIE['php_array'])));
//    print_r ($my_array);
//    ?>
// This automatically converts both keys and values to strings.
// The return string is not URL escaped, so you must call the
// Javascript "escape()" function before you pass this string to PHP.
{
    var a_php = "";
    var total = 0;
    for (var key in a)
    {
        ++ total;
        a_php = a_php + "s:" +
                String(key).length + ":\"" + String(key) + "\";s:" +
                String(a[key]).length + ":\"" + String(a[key]) + "\";";
    }
    a_php = "a:" + total + ":{" + a_php + "}";
    return a_php;
}

function eliminaDeArray(arr, pos)
{
	var cantidad=1;
	arr.splice(pos,cantidad);
}

function encuentraPosEnArray(arr,elem)
{
	var i;
	for(i=0; i < arr.length; i++)
		if(sonIguales(arr[i],elem))
			return i;
	return -1;			
}

/*function eliminarElementoDeArray(arr,elem)
{
	var pos = encuentraPosEnArray(arr,elem);
	arr = eliminaDeArray(arr, pos);
	return arr;
}
*/
carrito = new Array();
function seleccionarTrabajo(chkBox){
	//Esta funcion usa el arreglo carrito (arribita), el cual contiene los elementos
	//que vayan siendo seleccionados. 
	if(existeElementoEnArray(carrito,chkBox.value))
		carrito = eliminarElementoDeArray(carrito,chkBox.value);
	else
		carrito[carrito.length] = chkBox.value;
	//alert(carrito+"   --> "+carrito.length);
		
}

function openVistaImpresion(){	
	if(carrito.length > 0)
		newPage('vistaImpresion.php?ids='+carrito.toString());
	else
		alert("Debe seleccionar al menos un trabajo");
}


function confirmDel()
{
	var agree=confirm("Realmente desea eliminarlo? ");
	if (agree) 
		return true;
	else
		return false;
}

//f es el formulario en el que busco 
function isExterno(f){
	if (getRadioValue(f,"tipointermediario") == 1)
		return true;
	return false;	
}

function getRadioValue(f,id_radio){
	for(m = 0; m < f.length; m++){
		if(f.elements[m].type == "radio"){
			if(f.elements[m].id == id_radio){
				if(f.elements[m].checked){
						return f.elements[m].value;
				}
			}
		}
	}
	return false;	
}

function getRadioValueByName(name_radio){
	var inputs = document.getElementsByName(name_radio);
	for (var i = 0;i<inputs.length;i++){
		if(inputs[i].checked){
			return inputs[i].value;
		}
	}
	return false;
}

function setColor(objHtml){
	var id_flor_pk = objHtml.getAttribute("id_flor");
	var color = objHtml.value;
	xajax_setColorCarrito(id_flor_pk,color);
	return false;
}

function updateCantidad(objHtml){
	var id_flor_pk = objHtml.id;
	var cantidad = objHtml.value;
	
	try{
		cantidad = parseInt(cantidad);
	}catch (e){
		objHtml.value = "1";
		return false;
	}
	if(cantidad > 0){
		xajax_updateCantidadCarrito(id_flor_pk,cantidad,'total_carrito','sub_total_'+id_flor_pk);
	}else if(cantidad <= 0){
		alert("La cantidad debe ser mayor a Cero (0)");
		objHtml.focus();
		return false;
	}else if(!cantidad){
		alert("Ha ingresado un valor invalido");
		objHtml.focus();
		return false;
	}
	objHtml.value = cantidad;
	return false;
}

function validarPeluche(id_peluche,objLink){
	var obj = document.getElementById("opciones"+id_peluche);
	if(!obj){ return true;}
	if(obj.value!=""){
		var href = objLink.getAttribute('href');
		href = href+"&texto="+obj.value;
		objLink.setAttribute("href",href);
		return true;
	}else{
		alert("Debe seleccionar un Texto antes de agregar al carrito");
		return false;
	}
}

function recargarImagenCaptcha(id_imagen){
	if(typeof(id_imagen) == 'undefined'){
		id_imagen = 'captcha_imagen';	
	}
	var captcha_imagen = document.getElementById(id_imagen);
	captcha_imagen.src = "http://www.alisandrafloreria.cl/Flor/captcha_img.php?r="+Math.random();
}
	
function revisarMensajeSeteado(){
	if(document.getElementById('nombre').value != ""){
		MostrarOcultar('form2','');
		recargarImagenCaptcha('captcha_imagen_contact');
	}
}
