Bonjour à tous

Après deux ans de galère Smiley sweatdrop , la nouvelle version du site http://www.osirisnet.net a été mise en ligne il y a une semaine, apparemment à la satisfaction générale des utilisateurs Smiley ravi .
Quelque petits problèmes ont été signalés et corrigés dans la foulée, et je pense qu'il y en aura d'autres dans les jours qui viennent, bien entendu, rien n'est jamais parfait...

Il s'agissait de reprendre tout le contenu d'un site très ancien et de le mettre au goût du jour sans modifier son contenu, tout en laissant le propriétaire et rédacteur de ce site travailler selon des méthodes proches de celles dont il avait l'habitude.

Je tiens à remercier tous les membres de ce forum qui m'ont aidé ans cette tâche. Il est clair que je n'aurais pas pu y parvenir sans leurs conseils avisés.

Vos remarques (constructives, bien entendu! Smiley cligne ) sont les bienvenues.
Modifié par PapyJP (30 May 2017 - 18:55)
Bonjour,

Très bon site.
J'avais déjà vu des choses sur les pages de test.
J'ai aussi appris beaucoup en lisant les échanges sur les problématiques posées.

Par contre, dans la page de newsletter, il y a un problème sur le mois de décembre qui est toujours en 1969.
gandalfblanc a écrit :
Par contre, dans la page de newsletter, il y a un problème sur le mois de décembre qui est toujours en 1969.

Judicieuse remarque! je vais voir ça de près

Trouvé et corrigé sur le site de tests, il faut maintenant que le propriétaire fasse la mise à jour voir http://tests.osirisnet.net/news/news.htm
Modifié par PapyJP (30 May 2017 - 18:27)
Salut!
Concernant la recherche dans les newsletters (ou la recherche globale), comment fonctionne t-elle ? car pour le moment cela me ramene sur google avec
site:osirisnet.net/news test 


Le contenu est extraordinairement complet! c'est dingue!
Le design par contre je suis septique, je ne le trouve pas assez moderne, je sens tout cela un peu "rigide", "bétonné". Le chargement est très rapide / fluide pour moi, c'est appréciable !

Je me suis perdu et j'ai remarquer qu'on ne trouver pas de fil d’Ariane, est ce un choix ?

J'ai remarquer des ptits soucis de responsive mais rien de grave.
JENCAL a écrit :
Salut!
Concernant la recherche dans les newsletters (ou la recherche globale), comment fonctionne t-elle ? car pour le moment cela me ramene sur google avec
site:osirisnet.net/news test 


La fonction lance la recherche Google sur le site, ou sur le répertoire news du site, avec la chaîne de caractères que tu as mis dans la zone d'entrée, c'est aussi bête que ça.
Je supposes que tu as demandé "test" dans la zone de recherche de http://www.osirisnet.net/news/news.htm
JENCAL a écrit :

Le contenu est extraordinairement complet! c'est dingue!

Oui, c'est pour cela qu'il n'était pas question de dire "le site est vieux jeu, faisons un un nouveau à partir de zéro." C'est aussi pour cela qu'il a fallu s'assurer que tous les textes et toutes les images étaient conservés tels quel, et donc faire des programmes qui ont analysé en détail le contenu de chaque page, trouvé des équivalences à des choses du genre tables dans tables jusqu'à des niveaux impressionnants, 10 ou plus, je n'ai pas compté...
JENCAL a écrit :

Le design par contre je suis septique, je ne le trouve pas assez moderne, je sens tout cela un peu "rigide", "bétonné".

Nous ne sommes pas parvenus à inclure un designer dans la boucle, c'est donc du design de technicien. Comme tout est fait en CSS assez propre, je trouve, on pourra facilement améliorer si on trouve un designer et qu'il propose un design qui plaise au propriétaire, ce qui n'est pas évident.
Il faut tenir compte de l'âge du propriétaire (65 ans), du mien (75) et de celui des visiteurs habituels. Il faut ne pas trop perturber leurs habitudes.
JENCAL a écrit :
Le chargement est très rapide / fluide pour moi, c'est appréciable !

Il n'y a effectivement pas grand chose à charger dans chaque page: tout est fait avec des images miniatures. Si tu cliques sur un lien ou une image miniature, ça ouvre une page popup, ce qui n'est pas un design très recommandé, mais c'est comme cela que le site fonctionne depuis 2001, et ça permet d'avoir des images nombreuses et détaillées sans avoir un site qui se traine.
JENCAL a écrit :

Je me suis perdu et j'ai remarquer qu'on ne trouver pas de fil d’Ariane, est ce un choix ?

Ce n'est pas un site didactique, c'est un site pour spécialistes qui savent ce qu'il cherchent, c'est à dire des descriptions des tombes de l’Égypte antique. C'est effectivement difficilement utilisable par un non spécialiste, moi le premier, il a fallu que je me plonge dans des bouquins "pour les nuls" pour y comprendre quelque chose.
JENCAL a écrit :

J'ai remarquer des ptits soucis de responsive mais rien de grave.

Tu me dis quoi?
Ce sont ces points que je considère comme la prochaine étape du projet.

Merci 1000 fois pour tes remarques!
Modifié par PapyJP (30 May 2017 - 18:57)
Salut,
depuis le temps, il est sympa comme site Smiley smile

Je crois qu'il y a globalement un seul truc qui me dérange vraiment, mais c'est un peu partout :s (par exemple ici : http://www.osirisnet.net/tombes/nobles/sennefer/sennefer_02.htm et chaque fois qu'on change de page 3...9), c'est qu'en changeant de page, l'image du haut (avec écrit : "Sennefer La tombe aux vignes TT96 A et B" dans l'exemple) arrive après coup. En gros j'ai d'abord le texte qui s'affiche, puis ensuite l'image apparait et cela provoque la descente du texte, je trouve ça très désagréable à regarder (cela me fait un espèce de clignotement à chaque fois :s ).

J'ai l'impression que c'est gérer en javascript et que le script qui fait apparaitre l'image devrait sans doute être exécuté avant d'afficher le texte.

Après en moins gênant, il y a un peu le même phénomène lorsque je clique sur le bouton accueil ou newsletter (ça devient blanc d'abord puis la page apparait), alors que ce n'est pas cas lorsque l'on clique sur Projet ou Carte du site.

Il y a également un espèce de bug lorsque l'on clique sur Tombes ou sur les 3 lignes a coté de Newsletters (dans le menu). Je ne sais pas trop comment l'expliquer donc bon étape par étape pour Tombes (c'est pareil pour les 3 lignes) :
- Je met la souris sur Tombes, la liste des tombes apparait en dessous.
- Je clique sur Tombes, la liste des tombes disparait.
- Si je sors la souris de l'endroit ou il y a écrit Tombes, la liste des tombes réapparait :
+Si je passe la souris dans la liste des Tombes , la liste clignote beaucoup
+Si je remet la souris sur Tombes, la liste des tombes disparait de nouveau
+Si je reclique sur Tombes le bug disparait
+Si je passe sur les 3 petites lignes à droite de Newsletters, le bug disparait

D'ailleurs, question en passant, pourquoi est ce que l'entête le pied de page et le menu sont gérer en javascript (et même les miniatures des images en fait) ? Cela aurait pu être aussi bien (voir mieux pour ceux qui bloquent javascript, bien que cela devient rare..) avec un include php non ?
Car au final, en regardant rapidement le site, j'avais l'impression que la grande majorité des pages pourraient fonctionner sans Javascript, mais au final ce n'est pas le cas :s
Modifié par mathieu1004 (31 May 2017 - 15:24)
@mathieu1004
Merci pour tes remarques
Tu as parfaitement compris le problème: TOUT, absolument TOUT est fait en JS, ce qui explique ces phénomènes.
La raison est pratique, et je ne peux pas y faire grand chose, le propriétaire du site ne connaît que quelque bases de HTML, ce qui est déjà très bien pour un médecin retraité expert en égyptologie. J'ai mis un peu de PHP, mais c'est très limité.
C'était déjà le cas de la version ancienne du site, les utilisateurs y sont habitués depuis 2001, personne ne s'en plaint, même si je suis parfaitement d'accord pour dire que ce serait mieux si le site, comme tous les autres que je gère, était fait en PHP.

Affichage des images de titre:
les images de titre ne sont pas dans la page, elles sont ajoutées au moment du chargement, et comme les infos qui permettent sa génération sont dans des fichiers de données, il faut être sûr que ces fichiers sont bien chargés pour assurer l'affichage, ce qui fait que ça ne se produit que sur "onload". Bien entendu, si c'était un site que je maitrise, tout cela serait fait beaucoup plus rapidement en php à la génération de la page, mais avec une génération en js, je n'ai pas beaucoup de choix.
Mais peut être quelqu'un aura-t-il une solution géniale à me proposer pour contourner ce problème?


En ce qui concerne le temps que mettent les "pages d'index" à s'afficher:
c'est exactement le même genre de problème.
Comme je ne peux pas mettre les fichiers en PHP, j'ai une solution en deux étapes:
au moment du chargement, un script génère l'ajout dans la balise <head> de la page de
<script type="text/javascript" src="/make-lists.php?page=adresse-de-la page"></script>
lequel va rechercher les informations up to date concernant les éléments de la liste, pour générer des objets javascript, lesquels sont interprétés pour générer la liste de "tuiles" au chargement de la page.
Dans un premier temps, ça affichait la page en deux fois. J'ai donc mis un
body{display:none";}
qui fait que la page ne s'affiche pas du tout, et quand le script est terminé j'ai mis
document.body.style.display = 'block';
qui affiche la page complètement générée.
Comme pour le point précédent, je suis preneur d'une solution qui ne m'oblige pas à remplacer les pages .htm par des pages .php

Problème de menu déroulant:
mathieu1004 a écrit :

- Je met la souris sur Tombes, la liste des tombes apparait en dessous.
- Je clique sur Tombes, la liste des tombes disparait.
- Si je sors la souris de l'endroit ou il y a écrit Tombes, la liste des tombes réapparait :
+Si je passe la souris dans la liste des Tombes , la liste clignote beaucoup
+Si je remet la souris sur Tombes, la liste des tombes disparait de nouveau
+Si je reclique sur Tombes le bug disparait
+Si je passe sur les 3 petites lignes à droite de Newsletters, le bug disparait

Tout est une histoire de "responsiveness":
Voici le code de "tombes"

<li class="menuEntry withsub" onclick="showHide(this);" onmouseover="showHide(this);" onmouseout="showHide(this);">Tombes
    <ul class="submenu">
     ..................
    </ul>
</li>

Le "onclick" est là pour les tablettes, les "onmouse..." pour les souris.
Si on clique une fois, ça affiche la liste de façon permanente, si on reclique dessus ça la cache.
En faisant "mouseover", tu as affiché la liste de temporaire, mais comme ensuite tu as fait un clic alors que la liste était active, ça a fait comme si on était sur un mobile, ça a caché la liste.
En y réfléchissant, je vais remplacer le "onclick" par "ontouchend", ça serait plus approprié.
J'ai fait ça tout au début et je n'y ai plus pensé, je ne connaissais rien du tout aux "touch events" (en fait je n'en sais pas beaucoup plus aujourd'hui, sauf l'existence de "ontouchend)
Voilà au moins un point que je vais pourvoir améliorer.
Re,
du coup autre question, pourquoi est ce que tu ne peux pas faire de php sur ce site ?
Le serveur n'en est pas capable ? (Je trouve ça assez étrange a notre époque .. )
Tu ne veux pas changer les extensions des pages ? En gros ça doit rester .htm et ne pas devenir .php ? Si c'est juste pour ça, il a moyen de configurer le serveur pour que les pages reste en extension .htm et soit quand même lu par le serveur comme étant du php (commande dans le genre : AddType application/x-httpd-php5 .php .htm .html dans le .htaccess du site)
Edit : bon bah en fait je viens de voir ton commentaire sur ontouchend à la place de onclick, en le faisant à la ligne 1044 de common.js ça règle directement le problème de clique sans s’embêter avec les fonctions intermediaires que je proposais comme modif ^^

A la limite la remarque sur onmouseenter et onmouseleave à la place de onmouseover et onmouseout reste relativement pertinente je pense.


Post d'origine qui ne sert à rien -_- :
Avec tout dans le javascript, assez galère pour faire des tests ^^.

Enfin bon, petite proposition pour le petit bug de clique sur Tombes :
Transformation de ça (common.js ligne 1044 a priori) :
 var htmlText = '<li class="' + menuClass + ' withsub" onclick="showHide(this);" onmouseover="showHide(this);" onmouseout="showHide(this);">' + menuText + '\n';

en :
 var htmlText = '<li class="' + menuClass + ' withsub" id="tombes" onclick="showHideClick(this);" onmouseenter="showHideEnter(this);" onmouseleave="showHideLeave(this);">' + menuText + '\n';

Les changements : je pense que onmouseenter (idem pour onmouseleave) est suffisant car l'on n'a besoin de déclencher qu'une seule fois l'appel à la fonction (pas besoin d'avoir la propagation sur les enfants)
Création de fonctions intermédiaires qui appelleront la fonction showHide
N'ayant pas de tablette sous la main je ne sais pas si les éléments onmouseenter onmouseleave se déclenche ou non lors d'un clique sur l'écran. Si oui il y aura peut être besoin de faire du code pour showHideClick, sinon ca ne sert à rien, autant appeller directement showHide pour le onclick
J'ai ajouté un id="tombes" pour pouvoir ciblé facilement cet element pour le test, en pratique si l'on utilise des id ce n'est pas a faire ici (mais vu que c'est tout en javascript, c'etait plus simple pour moi de le mettre la pour faire des tests) et idéalement il faudrait faire une méthode qui gère aussi le bug pour les 3 traits blancs.


Puis ajout de ces fonctions la (vers la ligne 910 pour garder un coté logique dans l'enchainement des fonctions) :

function showHideClick(element) //celle ci n'est peut être pas nécessaire 
{
	console.log("click");
	showHide(element);
}

function showHideEnter(element)
{
	console.log("Enter");
	document.getElementById("tombes").removeAttribute("onclick"); //sur un onmouseenter on supprimer l'attribut onclick vu que la liste est deja affiché... 
	showHide(element);
}

function showHideLeave(element)
{
	console.log("Leave");
	showHide(element); 
	document.getElementById("tombes").setAttribute("onClick","showHideClick(this);"); //sur un onmouseenter on remet l'attribut onclick (dans l'absolu dans mon cas ca ne sert a rien car avec la souris le onmouseenter a toujours lieux avant , mais bon peut etre avec un ecran tactile plus souris ... ) 
}

Modifié par mathieu1004 (01 Jun 2017 - 15:06)
@mathieu1004
Merci pour les messages
J'ai été absent toute le journée je répondrai en détail demain.
Me voici de retour parmi vous
Deux points:
ontouchend: j'ai fait un essai avant hier qui donnait le bon résultat sur PC (plus de onclick -> plus de bug) mais pas sur tablette, sans que je comprenne très bien pourquoi. Comme je n'étais pas disponible hier, je suis revenu en arrière, mais je vais creuser le sujet et le faire marcher

PHP: en fait en jouant sur les redirections, on doit pouvoir faire une rewrite rule dans .htaccess pour que tout fichier de forme *.htm soit adressé vers un programme php avec le chemin d'accès de la page en paramètre, quelque chose du genre
RewriteRule ^(.*\.html)$  makepage.php?page=$1  [L] 
(à tester, je ne connais pas très bien ce nème langage!)
Le programme PHP pourrait alors lire le contenu du fichier HTML, effectuer les opérations nécessaires à fabriquer une page HTML avec (beaucoup) moins de scripts, en particulier charger les images de haut de page qui sont effectivement une plaie.
J'avoue que j'hésite à me lancer là dedans, après avoir passé 2 ans à tout réorganiser en JS, c'est beaucoup de travail, moins certainement que ce que je viens de terminer, mais ça me prendrait sans doute quelques semaines.
D'autre part, l'utilisation du JS est induite par la façon dont l'auteur du site travaille depuis 2001, c'est à dire avec DreamWeaver, en local sur son PC.
Personnellement ça fait des années que je travaille sur le serveur avec un éditeur incluant un FTP (actuellement c'est NodePad++), mais je le vois mal changer encore une fois de méthode de travail, surtout que ce n'est absolument pas sa tasse de thé et qu'il a fallu que je fabrique des flopées de snippets DW pour qu'il puisse changer de techno sans trop changer ses habitudes.
Je vais tout de même réfléchir à quelque chose de ce genre, mais de façon limitée à la génération des balises contenues dans <head>, la liste des "tuiles" des pages d'index et autres points critiques, en premier lieu ces fichues images de haut de page.
Modérateur
Bonjour,
PapyJP a écrit :

PHP: en fait en jouant sur les redirections, on doit pouvoir faire une rewrite rule dans .htaccess pour que tout fichier de forme *.htm soit adressé vers un programme php avec le chemin d'accès de la page en paramètre, quelque chose du genre
Voyez plutôt du côté de AddHandler (un truc du genre AddHandler application/x-httpd-php .html)
Smiley smile
Greg_Lumiere a écrit :
Bonjour,
Voyez plutôt du côté de AddHandler (un truc du genre AddHandler application/x-httpd-php .html)
Smiley smile

SI je comprends bien, cette fonction va faire que la page va être transmise telle quelle au moteur PHP, donc il faut qu'elle contienne au moins une commande
<?php include($_SERVER['DOCUMENT_ROOT'] . '/makepage.php'); ?>

Appeler automatiquement le programme php en lui passant en paramètre le chemin de la page me semble plus simple.
Le seul point un peu délicat serait de traiter une adresse du genre
xxx.htm?param1=aaa&param2=bbb...
mais je n'en ai pas dans ce site.