...

Modifications / Ajouts / Corrections / Version 3.5 & 4.5

Démarré par maximus23, 09 Février 2018 à 20:41:01

« précédent - suivant »

maximus23

Bon là je marque quelques trucs qui me passe dans l'esprit.

Réflexion :

Peut-être faire aussi le contraire et vérifier que des liens non associés à des fichiers soient traités aussi et remplacé par une image type avec indication ou alors un point transparent ou alors suppression pure et simple du lien mais bon là on pourrait se demander ce qu'il manque.

A corriger :

Des fautes de frappe dans le module orphelin et quelques dénomination de texte qui sont incorrectes.
Fait OK.

Passer de toute façon tout ce foutu texte en string de texte multilingue.

Demande de divers sites :

Vérification supplémentaire du watermark sur les gif et jpg car utilisés en divers formats sur divers sites donc on vérifie tout pour le backup. Fait OK

Voir la possibilité par l'utilisateur de supprimer une image uploadée -> Là j'en sais rien avec la gestion orpheline si c'est bien nécessaire. ???

Passer la page en standalone directement au forum et non en externe.
Fait Ok.

Voilà pour le moment je devrais mettre cela autre part pour mettre toutes les propositions faites.

Une grosse partie du code scindée et passée en fonction :)

Ajout de l'historique complet.

Pour la vérification des liens/fichiers base Messages et Messages Personnels concaténées pour la recherche.

Testé sur 10.000 fichiers Tests faits en 11 secondes Version 2.0 php 7.1 et 7.2 .( A optimiser pour la version 2.1 car là y a un truc qui colle pas avec la Bdd.

Voilà j'attends la suite des tests et des commentaires.

Toujours version de développement.

:)
Amitiés et à Bientôt.
Have a Nice Day.
Developer Tray Menu Manager (wampmanager) for WampServer

alexetgus

Pour pouvoir supprimer une image, il faut vérifier qu'elle n'existe pas dans la table des messages et MPs.
Bien entendu, ça veut dire requête SQL, ce que je n'apprécie pas beaucoup en terme de ressources système.

Un anti flood pourrait aussi être pratique. En créant un petit script, il est simple d'envoyer des images sur le serveur, encore et encore. Jusqu'au crash.
Le plus simple est de regarder le nom du dernier fichier stocké, vu que c'est un timestamp. Ca permet de connaitre l'heure de stockage de l'image et de limiter l'arrivée des suivantes.

maximus23

Bonsoir,

Des requêtes il y en aura toujours de plus cela sera temporisé pour le serveur x secondes toutes les x requêtes.

Le module sera exécuté une fois toute les lunes on sait même le mettre sur le cron de Smf mais bon je préfère quand même un visuel.

==>>>>  Ok pour la vérification de la base Mps celle là je l'ai zappé. <<<====

Autoriser l'emploi du module dans les Mps ? En général le module Mps attachments est mis c'est pour cela que je l'ai zappé d'ailleurs à force on n'y pense plus aux Mps.

Pour le flood oui le tout est de voir le réglage nombre et x time ?

:)
Amitiés et à Bientôt.
Have a Nice Day.
Developer Tray Menu Manager (wampmanager) for WampServer

alexetgus

Qu'une image affichée dans un post soit reprise sur un MP, je n'y vois pas de problème.
Par contre, héberger des images rien que pour les MPs, ça je suis contre. Le module dans les MP, c'est pas une bonne idée.

Sinon, pour le réglage du temps, une quinzaine de secondes entre chaque image suffirait à se protéger d'une attaque.
Ca donnerait time() >= (timestamp_du_nom_de_l'image + 15) pour autoriser une autre image.
Pour ne pas obliger la personne à reposter son image, on pourrait la faire attendre le temps nécessaire avant d'accepter l'image.

maximus23

#4
Bonjour,

En ce qui concerne les tests et la fusion message => mp c'est fait.

J'ai ajouté un test séparé pour vérifier le nombre de fichiers mis dans les Mp pour juger d'une anormalité le cas échéant en se penchant sur la différence des différents tests.

Le mode expert se fait lui sur une vérification et un report des deux bases et la suppression elle fait bien entendu la suppression des fichiers ne se trouvant pas dans la base message ni dans la base Mp.

Voilà en ce qui concerne l'avancée des fichiers orphelins.

Je ne met pas encore le fichier en test pour le moment car je dois encore ajouter un mode automatique pour les non initiés qui fera toute la série de modifications en une seule fois.

Mais le fichier est disponible sur demande sans soucis.

:)

Pour l'intégration du module dans les Mp je suis contre aussi il y a le module par fichiers attachés si ils veulent car le module en Mp permettrait un trop grand laxisme sur le serveur.

:)

Anti flood noté pour la mise en place.

:)
Amitiés et à Bientôt.
Have a Nice Day.
Developer Tray Menu Manager (wampmanager) for WampServer

maximus23

Bonjour,

Modifications en cours effectuée de cette version :

Modification de la structure de programmation un fichier fonction est ajouté pour mieux scinder le code.

Les librairies sont mises à jour et sont fusionnées pour certaines donc gain de chargement et d'exécution.

Retrait de l'option admin des permissions pour tous désormais les permissions seront obligatoires pour tout les groupes de membres.

Modifications et correction des calculs de poids des images.

Ajout d'une option de vérification par rapport à la taille maximale autorisée par le serveur. En cas de dépassement seule la taille maxi du serveur sera prise en compte.

Ajout du module des gestion des fichiers orphelins.

Pour ce faire un index FULLTEXT sera créé sur la base messages et messages personnels.

Cela permet de traiter des millions de messages en quelques secondes.

Corrections de divers petits bugs.

Voici pour l'avancée actuelle du module.

:)
Amitiés et à Bientôt.
Have a Nice Day.
Developer Tray Menu Manager (wampmanager) for WampServer

Papoune57

Encore du super boulot.
Impatient de pouvoir tester cette nouvelle version.
SMF 2.1.4

maximus23

Bonjour,

Version 3.4 tourne sur quelques très gros forums sans grands soucis on analyse et corrige le tout.

Encore quelques bugs de résolus bientôt la version sera mise à disposition :)
Amitiés et à Bientôt.
Have a Nice Day.
Developer Tray Menu Manager (wampmanager) for WampServer

maximus23

Bonjour,

Avancée :

Pour Historique et Dernières Images ils seront gérés par les permissions :)

:)
Amitiés et à Bientôt.
Have a Nice Day.
Developer Tray Menu Manager (wampmanager) for WampServer

maximus23

Bonjour,

Modification de la barre de progression des uploads pour les petites vitesses.

Merci de tester :)

Amitiés et à Bientôt.
Have a Nice Day.
Developer Tray Menu Manager (wampmanager) for WampServer

alexetgus

En ce qui me concerne, c'est pas la peine que je teste cette progress bar, j'y verrai rien.
J'ai la chance d'habiter une grande ville et d'avoir la fibre. Du coup, je compatis avec ceux qui ont besoin d'une progress bar. :'(

maximus23

Bonjour,

Oui pour les très grandes vitesses on ne voit quasi rien mais on doit penser à tout le monde car il y a encore pas mal de personnes qui ont des petites connexions. J'ai du mettre des points d'arrêts dans le script pour le faire d'où ma demande tests.

Avancement :

Ajout de la taille des vignettes en pixels dans mes dernières images. Taille sur la hauteur de l'image définissable le ratio se calcule automatiquement.

:)
Amitiés et à Bientôt.
Have a Nice Day.
Developer Tray Menu Manager (wampmanager) for WampServer

alexetgus

#12
Une idée me vient. Tu vas avoir du boulot. ;D

Quand un admin utilise le mod, ce serait bien qu'il puisse choisir le dossier membre où sera stockée l'image.
Il arrive qu'on tombe sur une image externe postée par un membre en lisant un post.
Ca permettrait de récupérer les images affichées en hotlinking par un membre et de les héberger dans son dossier d'images. :)  

J'imagine que tu connais le truc pour savoir si un utilisateur est admin ou pas. ;)  
Code: php
if($context['user']['is_admin']) {
Code pour admin;
}

OU

if(!$context['user']['is_admin']) {
Code pour membre;
}



Si on pouvait héberger en donnant le lien d'une image en plus d'un fichier, ce serait très bien aussi. :)

maximus23

Bonjour,

@alexetgus : Et tu comptes mettre cela ou la possibilité de le faire dans le profil de chacun ?

:)
Amitiés et à Bientôt.
Have a Nice Day.
Developer Tray Menu Manager (wampmanager) for WampServer

alexetgus

#14
Cool, ça marche ! :)


Pour ce qui est de stocker des images dans les dossiers d'autres membres, c'est réservé admin.

Par contre, récupérer des images à partir d'un lien, ça peut être mis à disposition des membres. Si ça peut les empêcher de faire du hotlinking. ::)

Je crois qu'il faudrait ajouter des headers à la requête pour le webmaster du site où l'image est prise, histoire de rester honnête.
Exemple :
X-to-site: smf-fr.com (Site qui récupère l'image)
X-User-IP-Time: 127.0.0.1 1521817586 IP du membre et timestamp de la récupération d'image.
X-Contact-for-abuse: abuse@smf-fr.com pour laisser une adresse mail de contact en cas de violation de copyright, images sans licence mais webmaster pas content quand même ( ;D ), etc.

Et dans l'user-agent de la requête qui récupère l'image, on place les même infos en plus de l'user-agent du membre.
Exemple : Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.162 Safari/537.36 OPR/52.0.2871.30 - smf-fr.com - 127.0.0.1 1521817586 - abuse@smf-fr.com
Ca change du fameux Curl ou Wget pour seule info. Perso, je bloque ces user-agent.

De toute façon, quand une image est affichée en hotlinking, le webmaster de l'image récupère les mêmes infos des personnes qui affichent l'image.
Comme ça, ça pourrait peut-être faire prendre conscience que le hotlinking n'est pas si innocent que ça.