[DEVELOPPEMENT] Nouveau forum

Jour 24

Tous les smilies actuels seront remplacés par des emojis (voir jour 21).

Le travail du jour a été de trouver une solution pour conserver tout de même ces 3 smilies bien utiles :

smilies

Il a fallu commencer par les rafraîchir et chercher ensuite une solution pour les intégrer à l'éditeur de texte ...

En voici un premier aperçu :

jour 24

Jour 25-27

Début du développement d'une fonction qui servira plus tard à convertir tous les posts existants.

Par exemple, dans la base de données, la charte du forum ressemble actuellement à ceci :

<r><TITRE><s>[Titre]</s>Charte du forum : explications et règles à respecter<e>[/Titre]</e></TITRE>Avant de poster sur ce forum, il est important de prendre connaissance des quelques règles indiquées ci-dessous.<br/><br/>Merci de prendre 2 minutes pour lire ce post entièrement.<br/><TITRE2><s>[Titre2]</s>Poster une nouvelle demande<e>[/Titre2]</e></TITRE2><LIST type="decimal"><s>[list=1]</s><LI><s>[*]</s>Avant de poster, n'hésitez pas à faire une recherche sur le forum pour voir si votre problème n'a pas déjà été traité.</LI><LI><s>[*]</s>Si vous avez besoin d'aide pour un problème lié à Excel (ce qui est le cas pour 99% des posts), posez votre question dans le forum "<URL url="https://forum.excel-pratique.com/viewforum.php?f=2"><s>[url=https://forum.excel-pratique.com/viewforum.php?f=2]</s>Excel - VBA<e>[/url]</e></URL>" (cliquez sur le bouton "Nouveau sujet" pour créer un nouveau sujet).</LI><LI><s>[*]</s><SURLIGNER surligner="#bcf690"><s>[Surligner]</s>Choisissez un titre suffisamment explicite pour votre nouveau sujet<e>[/Surligner]</e></SURLIGNER> (évitez les titres trop vagues tels que "besoin d'aide c'est URGENT" ou encore "problème Excel"). N'abusez pas des majuscules dans le titre.</LI><LI><s>[*]</s>Rédigez votre post de façon détaillée et soignée par respect pour ceux qui vont le lire et s'y intéresser (langage SMS interdit).</LI><LI><s>[*]</s><SURLIGNER surligner="#bcf690"><s>[Surligner]</s>Un minimum de politesse est de rigueur (bonjour, SVP, merci, ...)<e>[/Surligner]</e></SURLIGNER>, sans cela vous aurez peu de chance d'obtenir une réponse et vous risquez de voir votre message verrouillé par un modérateur.</LI><LI><s>[*]</s><SURLIGNER surligner="#bcf690"><s>[Surligner]</s>Pensez à joindre un fichier<e>[/Surligner]</e></SURLIGNER> pour faciliter la compréhension du problème et augmenter les chances de vous faire aider (taille maximale autorisée : 1mo). N'oubliez pas de <SURLIGNER surligner="#bcf690"><s>[Surligner]</s><URL url="https://www.excel-pratique.com/fr/utilitaires/anonymisation-donnees.php"><s>[url=https://www.excel-pratique.com/fr/utilitaires/anonymisation-donnees.php]</s><COLOR color="#177245"><s>[color=#177245]</s>retirer toutes les informations confidentielles<e>[/color]</e></COLOR><e>[/url]</e></URL> avant de joindre votre fichier<e>[/Surligner]</e></SURLIGNER> !</LI><LI><s>[*]</s>N'oubliez pas de cocher la case "M’avertir lorsqu’une réponse est postée" si vous ne consultez pas régulièrement le forum (option disponible lors de l'édition du sujet dans l'onglet "Options").</LI><LI><s>[*]</s><SURLIGNER surligner="#bcf690"><s>[Surligner]</s>En postant une question, vous vous engagez à donner suite à votre demande<e>[/Surligner]</e></SURLIGNER>. C'est vraiment le minimum de respect pour les membres qui prennent le temps de vous aider, si vous ne voulez pas respecter les personnes à qui vous demandez de l'aide, ne posez pas de question, merci.</LI><e>[/list]</e></LIST><TITRE2><s>[Titre2]</s>Lorsque le problème est résolu<e>[/Titre2]</e></TITRE2>Si vous avez obtenu la réponse espérée, commencez par <SURLIGNER surligner="#bcf690"><s>[Surligner]</s>cliquer sur le bouton résolu<e>[/Surligner]</e></SURLIGNER> <BOUTON content="fa-check"><s>[Bouton]</s>fa-check<e>[/Bouton]</e></BOUTON> du post qui a résolu votre problème et n'oubliez pas de remercier tous ceux qui vous ont aidé.<br/><TITRE2><s>[Titre2]</s>Remarques<e>[/Titre2]</e></TITRE2><LIST type="decimal"><s>[list=1]</s><LI><s>[*]</s>Evitez de poser une question en privé à quelqu'un pour espérer obtenir une réponse plus rapidement, vous ne recevrez aucune réponse en procédant ainsi, de plus, cela ne profite pas aux autres utilisateurs du forum.</LI><LI><s>[*]</s>Ne postez pas la même question sur un autre forum pour éviter de faire perdre bêtement du temps aux membres sur un problème qui peut être déjà résolu sur l'autre forum. L'inverse est également valable, si vous avez déjà posé votre question sur un autre forum, ne créez pas un doublon sur ce forum (à moins d'avoir clôturé le sujet sur l'autre forum).</LI><LI><s>[*]</s>Si vous avez la possibilité de résoudre le problème d'un autre internaute, n'hésitez pas à le faire, l'aide n'est pas forcément à sens unique et une réponse fait toujours plaisir.</LI><LI><s>[*]</s>Si vous avez apprécié la participation d'un membre (avec par exemple une réponse qui vous a aidé à résoudre un problème, un fichier partagé qui vous a été utile, etc), vous pouvez cliquer sur le <ICON content="fa-heart-o"><s>[icon]</s>fa-heart-o<e>[/icon]</e></ICON> situé en bas à droite de chaque post pour signaler à son auteur que vous avez apprécié son message.</LI><LI><s>[*]</s>Il n'est pas autorisé de demander aux autres membres de cliquer sur les <ICON content="fa-heart-o"><s>[icon]</s>fa-heart-o<e>[/icon]</e></ICON> de vos messages pour augmenter votre compteur (les clics sur les <ICON content="fa-heart-o"><s>[icon]</s>fa-heart-o<e>[/icon]</e></ICON> doivent rester spontanés).</LI><LI><s>[*]</s>Les liens considérés comme publicitaires sont interdits dans les messages ainsi que dans les signatures (un lien discret est toléré dans certains cas), notez que vous pouvez faire un lien vers votre site par le biais du champ "Site Internet" du profil.</LI><LI><s>[*]</s>Vous êtes conscient d'être seul responsable des messages et des fichiers que vous postez (ne publiez pas de données confidentielles ni de fichiers que vous n'êtes pas autorisé à publier).</LI><e>[/list]</e></LIST><CENTRER><s>[Centrer]</s><B><s>[b]</s><COLOR color="#3f9852"><s>[color=#3f9852]</s><SIZE size="120"><s>[size=120]</s>Le respect de ces quelques règles est essentiel pour maintenir un bel esprit d'entraide sur ce forum.<e>[/size]</e></SIZE><e>[/color]</e></COLOR><e>[/b]</e></B><e>[/Centrer]</e></CENTRER><COLOR color="#777777"><s>[color=#777777]</s><SIZE size="85"><s>[size=85]</s>Je rappelle que pour poster un message ou pour y répondre, il est nécessaire de s'enregistrer. L'enregistrement se fait très rapidement et est évidemment gratuit et sans obligation. Pour poster une nouvelle question, cliquez sur le bouton "Nouveau sujet" qui se situe au sommet de la liste des sujets.<e>[/size]</e></SIZE><e>[/color]</e></COLOR></r>

La fonction devra être capable de remplacer complètement les balises de n'importe quel post du forum, même les anciens posts qui avaient un système de balisage quelque peu différent ...

Jour 28

Le développement de la fonction qui servira à convertir tous les posts existants a bien avancé (mais il me faudra attendre d'avoir travaillé sur la gestion des pièces jointes avant de pouvoir terminer cette fonction).

Par exemple, le code du post précédent (celui de la charte), ressemble maintenant à ceci après avoir été traité par cette fonction :

jour 28

Jour 29-33

Travail de fond en rapport avec la suppression de vieux liens de certains hébergeurs d'images dont les images ne sont plus disponibles ... D'où l'importance de toujours joindre les images via le forum pour éviter tout ce gâchis

Car avec le temps, ça finit par ressembler à :

images perdues

Même principe pour les autres pièces jointes, car avec le temps, c'est perdu ...

Jour 34-40

Travail de fond en rapport avec la suppression de vieux liens de certains hébergeurs de fichiers dont les liens ne sont plus valables (comme par exemple cijoint.fr).

Je pourrais automatiser ces tests et traiter tout ça beaucoup plus rapidement (idem pour le post précédent), par contre le résultat serait beaucoup moins propre. J'ai donc décidé de traiter les posts concernés manuellement, en revanche c'est horriblement long et affreusement répétitif

J'ai également supprimé un certain nombre de posts (ou de sujets entiers) qui n'avaient plus aucune réponse valable suite à la perte des liens contenant les pièces jointes (d'où une réduction du total de messages chez certains membres ces derniers jours).


Je pense que les liens morts des sites qui ne sont pas des hébergeurs d'images ou de fichiers seront traités plus tard de manière automatisée.

Jour 41

Suite du développement de la fonction qui servira à convertir tous les posts existants ...

Aperçu de quelques posts après traitements :

jour 41

Jour 42

Le jour du coup de gueule ...

Après le spam du serveur en début février qui m'a fait perdre du temps et forcé à augmenter les coûts de serveur, voici qu'un nouvel individu malhonnête tente (probablement) de me priver de revenus publicitaires

Cela fait environ un mois et demi que cet individu a mis en place des bots pour cliquer artificiellement sur les publicités du site et de manière régulière

Google n'est pas con, ils savent très bien détecter ce genre de choses. Ces clics ne sont donc jamais payés pour des raisons évidentes mais en plus, ce genre d'action a un impact très négatif sur le reste des revenus publicitaires du site et présente en plus un risque non négligeable de fermeture de compte Adsense

Je ne comprends pas pourquoi des gens font ça ni dans quel but

Dans tous les cas, ce genre de choses fait perdre beaucoup de temps mais également des revenus publicitaires ... Et ça pose un problème parce que développer par exemple un forum en partant d'une page blanche, ça représente des mois de travail à plein temps ... Ça coûte donc indirectement très cher car pendant ce temps-là je ne fais rien d'autre ...

Mais grâce aux publicités principalement (et aux quelques produits payants du site), je peux me permettre d'utiliser une partie importante de mon temps pour des développements "non rentables" (comme ce projet de forum) ou pour créer et mettre à disposition des contenus gratuits.

Donc si quelqu'un s’attaque aux revenus publicitaires du site c'est évidemment un problème et ce n'est pas du tout rassurant pour la suite ...

Ce type d'attaque vient me rappeler que les revenus publicitaires sont loin d'être aussi sûrs et stables que je le pensais ...

Je vais donc réfléchir à une solution pour "sécuriser" un peu plus les revenus du site et pouvoir continuer à consacrer une partie de mon temps pour des projets "non rentables" et des contenus gratuits.

J'ai pensé à un abonnement (complètement facultatif) pour un coût symbolique de ~2€ par mois pour soutenir le site et retirer au passage toutes les publicités ... Je vais encore y réfléchir

En attendant, je croise les doigts pour que le blocage que j'ai mis en place aujourd'hui suffise à arrêter ce bot malveillant ...

EDIT 1 : 13 jours plus tard : le problème est toujours d'actualité

EDIT 2 : 27 jours plus tard : le problème est toujours d'actualité

EDIT 3 : 44 jours plus tard : le problème semble pour le moment résolu, espérons que ça dure

EDIT 4 : 59 jours plus tard : je pensais le problème résolu suite à l'effondrement des revenus publicitaires (merci COVID-19), mais en fait non, il y a toujours une part importante des revenus publicitaires qui sont de faux clics

EDIT 5 : 90 jours plus tard : le problème est toujours d'actualité

EDIT 6 : 120 jours plus tard : rien n'a changé

Jour 43

Travail de "nettoyage" des pièces jointes les plus anciennes du forum (2005-2009) :

  • création d'une liste de toutes les URL des anciens fichiers (en parcourant chaque post du forum et en extrayant les URL de type "excel-pratique.com/~files/...")
  • vérification de l'existence de chaque fichier
  • traitement manuel des cas spéciaux
  • suppression des fichiers non utilisés

Cela a permis de corriger/retirer plusieurs dizaines de liens invalides et de supprimer 3'384 fichiers inutilisés.

Jour 44-50

Suite du développement de la fonction qui servira à convertir tous les posts existants (notamment la partie qui teste les URLs des posts) ...

Le développement du forum est sensiblement ralenti depuis quelques semaines en raison du très grand nombre de traitements à effectuer manuellement

Jour 51-54

Suite du développement de la fonction qui servira à convertir tous les posts existants => travail en lien avec les >240'000 fichiers joints existants (ceux de 2009 à 2020) !

Jour 55

Travail sur la fonction d'insertion des pièces jointes existantes dans les posts.

Exemple avec un post existant :

jour 55 a

Aperçu de ce même post après utilisation de la fonction :

jour 55 b

Il y aura également l'affichage du nombre de téléchargements des pièces jointes (même si ce n'est pas encore visible sur la capture).

De plus, les images pourront êtres agrandies sans quitter la page (comme celles de la section des téléchargements) :

jour 55 c

Jour 56

Début du travail sur les fonctions qui permettront d'ajouter de nouvelles pièces jointes aux posts ...

Bien que rien ne fonctionne à l'heure actuelle, voici tout de même un aperçu :

jour 56

Il suffira (en théorie) de glisser le fichier à joindre (ou de le sélectionner) pour qu'il soit inséré directement dans le message à l’emplacement choisi.

Bon ... Au boulot

Jour 57

Suite du travail sur les fonctions qui permettront d'ajouter de nouvelles pièces jointes aux posts ...

L'ajout de pièce jointe sera plus simple que jamais : (en plus des options indiquées dans le post précédent) il sera même possible de glisser simplement le fichier dans la zone de texte à l'endroit où vous souhaitez l'insérer (et c'est tout)

Taille maximale des pièces jointes

La taille maximale pour les images jointes ne sera (presque) pas limitée car la fonction se chargera de redimensionner et compresser les images automatiquement lorsque c'est utile. Par exemple, si vous postez une image au format BMP de 10mo, elle sera acceptée par la fonction, convertie en JPG, compressée et redimensionnée si nécessaire, pour terminer peut-être à <0.1mo.

La taille maximale des fichiers joints n'est en revanche pas définie pour le moment (je réfléchis également à une solution pour éviter le passage obligé par cjoint.com pour les fichiers trop lourds mais je n'ai encore rien décidé). Ces limites seront définies plus tard dans le développement ... A suivre ...

Jour 58

Suite du travail sur les fonctions qui permettront d'ajouter de nouvelles pièces jointes aux posts, avec l'ajout notamment d'une fonction de compression automatique (zip) de certaines pièces jointes.

Jour 59

Travail sur l'enregistrement d'un nouveau sujet + sur la fonction qui va comptabiliser les vues d'un sujet.


Le tout premier (nouveau) sujet (avec une pièce jointe valide) a été posté avec succès :

jour 59

Jour 60-61

Travail sur la fonction "Répondre" : formulaire de réponse + affichage des 10 derniers messages au-dessous du formulaire + affichage de l'auteur du sujet dans le titre (comme c'est le cas actuellement).

jour 61

Jour 62

Mise en place de la fonction "Résolu" avec en plus :

  • la possibilité de marquer plusieurs posts comme étant la solution
  • une meilleure mise en évidence des solutions
  • l'impossibilité de marquer ses propres posts comme étant la solution (sauf si aucune autre réponse)
jour 62

Jour 63-64

Début du travail sur la fonction de connexion au forum (+ les fonctionnalités qui s'y rapportent) :

jour 63

Jour 65

Début du développement de la fonction "Editer".

Jour 66

Suite du développement de la fonction "Editer" + réalisation d'une nouvelle idée qui m'est venue hier

L'idée pour les sujets sans réponses

Remplacer la valeur 0 par -, mais pas uniquement ...

Il est pratique de savoir si un sujet a obtenu une réponse ou non (actuellement grâce au nombre de réponses à 0).

Mais parfois le membre apporte de précisions à la suite, poste pour remonter son sujet, etc, et le sujet se retrouve avec des réponses du même auteur et le nombre de réponses reçues affiché peut être de 1, 2, ... même si ce membre n'a encore reçu aucune aide.

L'idée est donc d'afficher - tant qu'un sujet n'a pas reçu de réponse provenant d'un autre membre :

jour 66

EDIT : cet affichage sera uniquement actif dans les 6 forums pour les questions.

Rechercher des sujets similaires à "developpement nouveau forum"