// CG46 Base de données du patrimoine
// Bibliothèque de fonctions
// février 2002
//
//-----------------------------------------------------------------------------

//-----------------------------------------------------------------------------
function Checkdirect(refer,action,prefix){
    if(!prefix) prefix='';
    if(refer==""){
        alert("Entrez un identifiant de fiche !")
    }else{
        refer = refer.toUpperCase()
        //on evalue les 3 premiers caracteres mis en majuscule
        abrev = refer.substr(0,3)
        //alert("abrev = "+abrev)
        var typFiche = "";
        switch(abrev){
            case "SIT" :
                typFiche = 'FicheSite' 
                break
            case "SUJ" :
                typFiche = 'FicheSujet' 
                break
            case "THE" :
                typFiche = 'FicheTheme' 
                break
            case "PRO" :
                typFiche = 'FicheProduit' 
                break
            case "LEX" :
                typFiche = 'FicheLexique' 
                break
            case "DOC" :
                typFiche = 'FicheDoc' 
                break
            case "MED" :
                typFiche = 'FicheMedia' 
                break
            case "ACT" :
                typFiche = 'Actualite' 
                break
            default :
            
        }
        if(typFiche==""){
            alert("La fiche demandée n'existe pas !")
            return;
        }
        switch(action){
            case "delete" :
                supp(refer)
                break
            case "update" :
				var d = new Date();
                if(abrev=="ACT"){
                    Openactu(prefix + typFiche + '.asp?cach='+ d.getTime() +'&refer=' + refer);
                }else{
                    Open(prefix + typFiche + '.asp?cach='+ d.getTime() +'&refer=' + refer);
                }
                break
            default :
        }
    }
}

//-----------------------------------------------------------------------------
function LienFiche(lien){
    if (lien.substring(0,3)== 'MED'){
        lien = "media.asp?refer="+lien
    }else{
        lien = "fiche.asp?refer="+lien
    }
    var pos = lien.indexOf("=",0)
    var nompage = lien.substring(pos+1, lien.length)
        
    window.open(lien, nompage, 'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=775,height=600,top=5,left=50,true')
}

function LienInternet(lien){
    window.open(lien, 'lien', 'fullscreen=no,toolbar=yes,location=yes,directories=yes,status=yes,menubar=yes,scrollbars=yes,resizable=yes,width=775,height=600,top=5,left=50,true')
}

//-----------------------------------------------------------------------------
function Concat(list_choix, champ_res,separateur){
    //cette fonction permet de concatener plusieurs valeurs avec un séparateur
    //dans un champ donné - utilisé pour les champs liste multiple

    //list_choix = 'this' du menu déroulant
    //champ_res = 'id' de la zone texte qui recevra le résultat

    var res =  document.getElementById(champ_res).value
    var chaine = list_choix.options[list_choix.selectedIndex].value;

    if(res=="")
         document.getElementById(champ_res).value = chaine ;
    else
        if(chaine!="")  document.getElementById(champ_res).value = res + separateur + chaine ;  
}

//-----------------------------------------------------------------------------
function over(obj){
    obj.className = "boutonover"
    //obj.style.width=200
}
function out(obj){
    obj.className = "bouton"
}

//-----------------------------------------------------------------------------
function CouleurFondover(td){
 td.bgColor = "#4b4b4b";
 //td.borderColor = "#eddcb3";
 td.className = "texteboldblanc";
}

//-----------------------------------------------------------------------------
function CouleurFondout(td){
  td.bgColor = "#eddcb3";
 // td.borderColor = "#4b4b4b";
  td.className = "texteboldgris";
}

//-----------------------------------------------------------------------------
function CouleurFondoverb(td){
  //td.bgColor = "#eddcb3";
  //td.borderColor = "#eddcb3";
  //td.className = "texte";
  td.bgColor = "#ebebeb";
  td.borderColor = "#ebebeb";
  td.className = "texte";
}

//-----------------------------------------------------------------------------
function CouleurFondoutb(td){
  td.bgColor = "#FFFFFF";
  td.borderColor = "#FFFFFF";
  td.className = "texte";
}


//-----------------------------------------------------------------------------
function Open(page,scroll){
        //suppression de l'extension du nom de la page
        //var fin = page.indexOf(".",0);
        var aleatoire = Math.round(Math.random()*1000)
        var fin = page.lastIndexOf(".");
        var deb = page.lastIndexOf("/");
        var nompage = page.substring(deb+1, fin) + aleatoire;
        if (scroll == null){scroll = 'no'};
        window.open(page, nompage, 'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=' + scroll + ',resizable=yes,width=756,height=600,top=5,left=50,true');
}


//-----------------------------------------------------------------------------
function Openactu(page){
        //suppression de l'extension du nom de la page
        //var fin = page.indexOf(".",0);
        var fin = page.lastIndexOf(".");
        var deb = page.lastIndexOf("/");
        
        var nompage = page.substring(deb+1, fin);

        window.open(page, nompage, 'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=780,height=600,top=5,left=50,true');
}


//-----------------------------------------------------------------------------
function OpenPlus(page, sizeX, sizeY){
        //suppression de l'extension du nom de la page
        var fin = page.indexOf(".",0);
        var nompage = page.substring(0, fin);
        nompage = nompage.replace("/","_");

        window.open(page, nompage, 'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width='+sizeX+',height='+sizeY+',top=5,left=50,true');
}
//-----------------------------------------------------------------------------
function OpenListe(page){
        //suppression de l'extension du nom de la page
        var fin = page.indexOf(".",0);
        var nompage = page.substring(0, fin);
        nompage = nompage.replace("/","_");

        mywin = window.open(page, nompage, 'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=300,height=500,top=5,left=50,true');
}

//-----------------------------------------------------------------------------
function OpenAnnule(page){
        //suppression de l'extension du nom de la page
        var fin = page.indexOf(".",0);
        var nompage = page.substring(0, fin);

        mywin = window.open(page, nompage, 'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,width=100,height=100,top=100,left=100,true');
}

//-----------------------------------------------------------------------------
function OpenTable(page){
        //suppression de l'extension du nom de la page
        //var fin = page.indexOf(".",0);

        var fin = page.lastIndexOf(".");
        var deb = page.lastIndexOf("/");
//alert(fin)
//alert(deb)
        var nompage = page.substring(deb+1, fin);
//alert(nompage)
        window.open(page, nompage, 'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,width=400,height=360,top=100,left=250,true');
}

//-----------------------------------------------------------------------------
function OpenImage(idliste){
        var liste =  document.getElementById(idliste);
        var v_refer = liste.options[liste.selectedIndex].value;

        window.open('viewmedia.asp?refer='+v_refer ,'', 'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=560,height=550,top=5,left=50,true');
}

//-----------------------------------------------------------------------------
function OpenCarte(refer, classe, appellation, commune, pointX, pointY, Onglet){
    var LogicalScale
    var aleatoire = Math.round(Math.random()*1000);
    var nompage = "carte" + aleatoire;

    if((pointX=="")&&(pointY=="")){
        LogicalScale="10"
        pointX="530474"
        pointY="1939148"    
    }else{
        LogicalScale="7"
    }
    
    var chaine = "../sig/sig_bo.asp?XgoCG46Class="+classe+"&XgoCG46REFER="+refer+"&XgoCG46Liste="+refer+"&XgoCG46APPL="+appellation+"&XgoCG46COM="+commune+"&XgoPointX="+pointX+"&XgoPointY="+pointY+"&XgoSetLogicalScale="+LogicalScale+"&XgoTabs="+Onglet
    window.open(chaine , nompage,'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=620,height=570,top=20,left=10,dependent=yes,true')
}
function OpenCarteU(refer, classe, appellation, commune, pointX, pointY, Onglet){
    var LogicalScale
    var aleatoire = Math.round(Math.random()*1000);
    var nompage = "carte" + aleatoire;

    if((pointX=="")&&(pointY=="")){
        LogicalScale="10"
        pointX="530474"
        pointY="1939148"    
    }else{
        LogicalScale="7"
    }
    
    var chaine = "../sig/sig_bo.asp?mode=update&XgoCG46Class="+classe+"&XgoCG46REFER="+refer+"&XgoCG46Liste="+refer+"&XgoCG46APPL="+appellation+"&XgoCG46COM="+commune+"&XgoPointX="+pointX+"&XgoPointY="+pointY+"&XgoSetLogicalScale="+LogicalScale+"&XgoTabs="+Onglet
    window.open(chaine , nompage,'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,width=620,height=570,top=20,left=10,dependent=yes,true')
}
//-----------------------------------------------------------------------------
//Appel depuis le Flash
function AffichCarte(commune, pointX, pointY, site){
	var LogicalScale

	if( ((pointX=="")&&(pointY=="")) || ((pointX=="0")&&(pointY=="0")) ){
		LogicalScale="10"
		pointX="530474"
		pointY="1939148"	
	}else{
		LogicalScale="7"
	}

	var chaine = "../sig/sig_bo.asp?XgoCG46Liste="+site+"&XgoCG46COM="+commune+"&XgoPointX="+pointX+"&XgoPointY="+pointY+"&XgoSetLogicalScale="+LogicalScale+"&XgoTabs=Web"	
	window.open(chaine ,'carte','fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=620,height=570,top=20,left=10')
}
//-----------------------------------------------------------------------------
function OpenCarteFlash(refer){
    window.open('carteFlash.asp?listrefer='+refer,'carteFlash','fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=500,height=550,top=5,left=50,dependent=yes,true')
}

function OpenCarteOl(refer){
    window.open('carte.asp?listrefer='+refer,'carteFlash','fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=500,height=550,top=5,left=50,dependent=yes,true')
}

//-----------------------------------------------------------------------------
function AffichFiche(type){
    eval('var liste=document.form.'+type)
    var refer = liste.options[liste.selectedIndex].value
    jour=new Date()
    sec=jour.getSeconds()
    var b=sec.toString()
    liste.selectedIndex=0
    
    window.open('AffichFiche.asp?refer='+refer, 'Fiche'+type+b, 'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=775,height=600,top=5,left=50,true')
}
function AffichFicheb(type,refer){
    refer = refer.toUpperCase()
    window.open('AffichFiche.asp?refer='+refer, 'Fiche'+type, 'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=775,height=600,top=5,left=50,true')
}

//-----------------------------------------------------------------------------
function AddPopup(page)
{
        var sizeX;
        var sizeY;
        
        var fin = page.indexOf(".",0);
        var nompage = page.substring(0, fin);
//width=420,height=200
//width=420,height=150
//width=420,height=270
      
        switch(nompage){
            case "Add_type" :
                sizeX = 420
                sizeY = 200
                break
            case "Add_personnage" :
                sizeX = 420
                sizeY = 200
                break
            case "Add_fonction" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_genre" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_vocable" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_materiaux" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_couverture" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_typecouverture" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_copy" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_contact" :
                sizeX = 420
                sizeY = 270
                break
            case "Add_lieu" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_auteur" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_support" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_protection" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_etat" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_typeetude" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_typedoc" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_typeproduit" :
                sizeX = 420
                sizeY = 150
                break
            case "Add_typesujet" :
                sizeX = 420
                sizeY = 150
                break
            default :
                sizeX = 420
                sizeY = 200         
        }
        
        window.open(page, nompage, 'fullscreen=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width='+sizeX+',height='+sizeY+',top=250,left=50,true');
}

function VerifRefMed(objRef,bClear,bUnique){
    //document.body.style.cursor="wait";
    //document.body.style.cursor="auto";

// Create an instance of the XML HTTP Request object
    var oXMLHTTP = new ActiveXObject("Microsoft.XMLHTTP");

    if(objRef.value=="") return false;
    
    // Prepare the XMLHTTP object for a HTTP POST to our validation ASP page
    var sURL = "FicheMediaCheck.asp?refer=" + objRef.value
    if(bUnique) sURL += "&unique=true";
    oXMLHTTP.open("POST", sURL, false);
    
    // Execute the request
    oXMLHTTP.send();
    
    if(oXMLHTTP.responseText == ""){ 
        //alert("Le media " + val.toUpperCase() + " est validé.");
        if(bUnique) {
            var aRef = objRef.value.split(";");
            if(aRef.length > 0) objRef.value = aRef[0];
        }
        objRef.value = objRef.value.toUpperCase();
        return true;
    }else{
        alert("Le media " + oXMLHTTP.responseText + " n'existe pas.");
        if(bClear)
            objRef.value = "";
        else
            objRef.focus();
            
        return false;
    }
}
