/** * Ce script gère l'affichage dynamique des blocs d'upload de photos pour la saisie d'une annonce */ var gi_nb_bloc_photo = 1; /* * Le test ci-dessous permet la surcharge de la globale gi_nb_max_photo, dans un stm par exemple, * en s'assurant qu'il n'y a pas de problème de synchronisation entre le chargement de cs script * et la prise en compte de la surcharge dans le stm : * * - si ce script est chargé d'abord, la constante est définie puis surchargée par le stm * - si le stm est pris en compte en premier, il définit la constante et le test fait dans ce script ne la surcharge pas. */ if( gi_nb_max_photo == undefined ) { var gi_nb_max_photo = 5; } function ajoutBlocPhoto( pi_numero_bloc ) { if( verification_format_photo(pi_numero_bloc) ) { var bloc_photo = getelement("ajout-photo"); getelement('photo' + pi_numero_bloc).src = "http://www.sitimmo.com/images/saisie_annonces/photo_chargement.gif"; if( pi_numero_bloc == gi_nb_bloc_photo && pi_numero_bloc < gi_nb_max_photo ) { gi_nb_bloc_photo++; var nouveau_bloc = document.createElement("div"); nouveau_bloc.id= "bloc-photo" + gi_nb_bloc_photo; nouveau_bloc.className= "bloc-photo"; nouveau_bloc.innerHTML = '
Conserver photo
Aucune photo
Nouvelle photo
'; bloc_photo.appendChild( nouveau_bloc ); } } else { alert('Les photos doivent être au format JPEG.'); } } /** *fonction vérifiant l'extension de la photo saisie * seules les photos au format JPEG sont autorisées */ function verification_format_photo( pi_numero_photo ) { var url_photo = document.getElementById("input-photo"+pi_numero_photo).value; url_photo = url_photo.toLowerCase(); var extension_photo = url_photo.substring(url_photo.lastIndexOf(".")); if( extension_photo == ".jpg" || extension_photo == ".jpeg" ) { return true; } else { var elements = document.getElementsByName("radio-photo"+pi_numero_photo); for( i=0 ; i < 3 ; i++ ) { if( elements[i].value == 0 ) { elements[i].checked=true; } } document.getElementById("input-photo"+pi_numero_photo).value = ""; document.getElementById("input-photo"+pi_numero_photo).disabled = "disabled"; return false; } } /** * Gestion des photos. Les actions possibles : * - 0 : suppression de la photo * - 1 : ajout de photo * - 2 : conserver la photo * @param integer pi_numero_bloc le numéro identifiant du bloc photo sur lequel agir * @param integer pi_valeur_radio le code renvoyé par le bouton radio qui correspond aux différentes actions possibles */ function activerUpload( pi_numero_bloc, pi_valeur_radio ) { // Suppression de photo : affichage du fond d'image par défaut, désactivation du bouton d'ajout de photo if( pi_valeur_radio == 0 ) { getelement('photo' + pi_numero_bloc).src = "http://www.sitimmo.com/images/saisie_annonces/photo_defaut.gif"; getelement('input-photo' + pi_numero_bloc).disabled = true; } // Ajout de photo : activation du bouton de sélection de fichier de photo if( pi_valeur_radio == 1 ) { getelement('input-photo' + pi_numero_bloc).disabled = false; } // Conservation de la photo : désactivation du bouton de sélection de fichier de photo if( pi_valeur_radio == 2 ) { getelement('input-photo' + pi_numero_bloc).disabled = true; } }