Hello !

Je rencontre un problème sous IE6 (peut-être 7 et 8 aussi, pas testé, mais IE6 sera le navigateur utilisé principalement pour accéder à ce site) lorsque je clic sur un lien pour afficher un calendrier dans une popup.

Le site est en HTTPS et j'ai une boite de dialogue "Information sur la sécurité" avec le texte suivant : "Cette page contient des éléments sécurisés et non sécurisés. Souhaitez-vous afficher les éléments non sécurisés ?".

Ceci est dû au fait que IE considère cette popup comme non HTTPS. La parade est simple : Outils > Options Internet > onglet Sécurité > bouton Personnaliser le niveau > Affiche un contenu mixte > Activer. Mais tous les clients ne vont pas modifier leur config IE (et avoir d'éventuelles failles de sécurité) et il faut simplement que ça fonctionne sans afficher à chaque fois ce message ennuyeux.

J'aimerais donc trouver comment faire pour que ce message ne s'affiche pas.

Le calendrier utilisé est Rich Calendar par Vyacheslav Smolin : http://www.richarea.com/demo/rich_calendar/

Voici le code côté HTML :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<a href="#" id="ddCal"><img src="calendar.gif" alt="Calendar" title="Calendar" /></a>
Un listener côté Ajax s'occupe d'afficher le calendrier sur un clic :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
var ddCal = $('ddCal');
ddCal.observe('click', Common.show_calHandler.bindAsEventListener(ddCal, 'ddText'));
Et :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
Common.show_calHandler = function (event){
	var args = $A(arguments);
	args.shift();
	show_cal(this, args[0]); // this = élément à coté duquel on souhaite afficher le calendrier, args[0] = id du champ à remplir
};
Enfin la partie d'affichage proprement dite :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function show_cal(el, tf) {
 
	if (cal_obj)
		return;
 
	text_field = document.getElementById(tf);
 
	cal_obj = new RichCalendar();
	cal_obj.start_week_day = 1;
	cal_obj.show_time = false;
	cal_obj.language = 'fr';
	cal_obj.user_onchange_handler = cal2_on_change;
	cal_obj.user_onclose_handler = cal2_on_close;
	cal_obj.user_onautoclose_handler = cal2_on_autoclose;
 
	cal_obj.parse_date(text_field.value, format);
 
	cal_obj.show_at_element(el, "adj_left-");
	cal_obj.change_skin('edd-web');
}
J'ai cru comprendre en faisant des recherches qu'un lien avec un # (<a href="#"...) permettait d'éviter le problème. Mais c'est déjà le cas ici. Comment faire ?

Merci de votre aide !