1. IMPORTANT : Nouvelles mesures de sécurité - 2. Règles pour obtenir de l'aide dans les forums de support - 3. Restrictions des droits pour le groupe "Support suspendu"

Il est obligatoire de respecter les Règles de MyBB.fr : Version abrégée ou Version complète pour obtenir du support sur nos forums.

Les membres ayant un site/forum contrevenant aux règles de MyBB.support seront placés dans le groupe "Support suspendu" et ne bénéficieront plus du support du staff. Nous recommandons aux autres membres d'agir de même. Il ne s'agit pas d'un bannissement, le membre retrouvera son statut "normal" dès que sa situation sera conforme aux règles.

Nouveau : un Wiki en français : plus de détails.
Avant de soumettre votre problème, consultez-le, ainsi que la FAQ, sans oublier le moteur de recherche interne.


Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Boutons d'intégration spécifiques aux images pièces jointes
Mots-clés » boutons, intégration, spécifiques, aux, images, pièces, jointes
12-05-2015, 4:10, (Modification du message : 12-05-2015, 21:24 par sinse73.)
#1
Boutons d'intégration spécifiques aux images pièces jointes
.
Avertissement : Les modifications mentionnées ci-dessous n'ont aucunement été validé par le staff de Mybb, en effectuant ces changements, vous vous exposez à de possible faille de sécurité et dysfonctionement. Cela est livré en l'état et vous seul serez responsable des répercussions.


Bonjour,

J'avais déjà fait un ti truc sur MyBB1.6, cf le bas de ce topic : http://mybb.fr/thread-3306.html
Mais donc au passage en 1.8 il est temps d'améliorer un peu tout ça ^^

Qu'est ce que cela va permettre :
- d'avoir des boutons spécifiques pour intégrer des images dans vos posts, un bouton pour la miniature et un bouton d'intégration en taille réelle. Voilà les boutons que vous obtiendrez :
(oui, il y a une faute dans un des boutons ^^" saleté de double frappe non prise en compte)

[Image: attachment.php?aid=1569]

Pour cela, dans le fichier editpost.php,

Trouver :

Code :
$templatelist = "editpost,previewpost,changeuserbox,codebuttons,smilieinsert,smilieinsert_getmore​,smilieinsert_smilie,smilieinsert_smilie_empty,post_attachments_attachment_posti​nsert,post_attachments_attachment_mod_unapprove,postbit_attachments_thumbnails"

Remplacer par :

Code :
$templatelist = "editpost,previewpost,changeuserbox,codebuttons,smilieinsert,smilieinsert_getmore​,smilieinsert_smilie,smilieinsert_smilie_empty,post_attachments_attachment_posti​nsert,post_attachments_attachment_img_postinsert,post_attachments_attachment_mod​_unapprove,postbit_attachments_thumbnails";

Raison : Ajout de l'appel au template "post_attachments_attachment_img_postinsert".

Et aussi, trouver :

Code :
if($mybb->settings['bbcodeinserter'] != 0 && $forum['allowmycode'] != 0 && $mybb->user['showcodebuttons'] != 0)
            {
                eval("\$postinsert = \"".$templates->get("post_attachments_attachment_postinsert")."\";");
            }

Remplacer par :

Code :
$attachtypes = array('image/png', 'image/jpg', 'image/gif', 'image/jpeg', 'image/jpe');
$ext = $attachment['filetype'];

if($mybb->settings['bbcodeinserter'] != 0 && $forum['allowmycode'] != 0 && $mybb->user['showcodebuttons'] != 0)
            {
                if(in_array(strtolower($ext), $attachtypes))
                {
                    eval("\$postinsert = \"".$templates->get("post_attachments_attachment_img_postinsert")."\";");
                }
                else
                {
                    eval("\$postinsert = \"".$templates->get("post_attachments_attachment_postinsert")."\";");
                }
            }

Il faut faire de même pour newreply.php et newthread.php, les lignes peuvent être un peu différente mais vous devriez trouver où effectuer le même genre de modif. (Je peux ajouter ces quelques remplacements ici si c'est jugé nécessaire.)

Maintenant, on crée le template "post_attachments_attachment_img_postinsert" et dedans on met :

Code :
<input type="button" class="button" name="insert" value="Insérer miniature" onclick="MyBBEditor.insertText('[attachment={$attachment['aid']}]');" />
<input type="button" class="button" name="insert" value="Insérer taille réelle" onclick="MyBBEditor.insertText('[url=http://www.domain.tld/forum/attachment.php?aid={$attachment['aid']}][img]http://www.domain.tld/forum/attachment.php?aid={$attachment['aid']}[/img][/url]');" />

Pensez à modifier l'url selon votre configuration.

Afin d'éviter tout soucis de déformation ou d'image trop grande, vous pouvez appliquer une taille max dans les posts comme suggéré par JWH Smith dans le topic cité au début.
Dans global.css, on peut ajouter :

Code :
#posts .scaleimages img {

    max-width: 600px;
}


Et voilà, normalement c'est tout bon. Je n'ai pas noté de soucis pour le moment.
Si vous voyez un problème ou quelque chose qu'il faudrait que je change merci de le signaler que j'essaie d'améliorer cela.

Bien entendu, il est possible d'adapter cela pour d'autres types de fichiers comme bon vous semble.

A vos boutons o//


Pièces jointes Miniature(s)
   
Répondre
12-05-2015, 19:40, (Modification du message : 12-05-2015, 19:41 par Jules.)
#2
RE: Boutons d'intégration spécifiques aux images pièces jointes
Pour citer Saphir :
Saphir a écrit :Rappel : Ne modifiez jamais les fichiers source de MyBB, sauf si vous y êtes invité par un membre de notre équipe : vous risqueriez d'endommager votre installation de MyBB et de créer une brèche de sécurité pouvant mettre en péril l'intégrité de votre hébergement. Modifier les templates ou le style de votre forum au travers de son interface d'administration suffit généralement à résoudre vos requêtes.

En modifiant soit-même les fichiers sources de MyBB, vous risquez d'ajouter des failles exploitables sans le faire exprès ou encore d'endommager le fonctionnement de votre forum...
C'est déconseiller et de mon point de vue, tout à fait justifier.

Pourquoi ne pas prendre un peu de temps, découvrir le moteur MyBB et essayer de concevoir un plugin qui reproduirait exactement la même chose ?
Certes, vous y passerez plus de temps, mais au moins, vous n'aurez pas à recommencer les modifications à chaque mise à jour de MyBB et vous ne risquerez pas d'endommager les fichiers sources de MyBB...

Sinon, le système en lui-même est très bien pensé : Utiliser les miniatures pour faire un hébergeur d'image interne au forum (si j'ai bien compris).

Cordialement, Jules.
Membre du support sur MyBB.support

Retrouvez tout mes partages réalisés sur MyBB.support grâce aux mots-clés : cliquez-ici
Répondre
12-05-2015, 21:46,
#3
RE: Boutons d'intégration spécifiques aux images pièces jointes
Salut Jules,

J'ai rajouté un message d'avertissement au début de mon message.

Concernant la création d'un plugin, cela demande quand même pas de connaissances pour le coder. J'arrive plus où moins à comprendre ce qu'il se passe quand je lis des lignes dans les fichiers de MyBB, mais je ne me sens pas bien capable de réaliser un plugin à ce jour. J'essairai quand même de regarder les "tutos" que mybb.com propose pour cela.

Oui, je voulais me servir du système de pièces jointes afin de donner la possibilité aux gens d'afficher des images dans leurs messages, mais pas que les miniatures.

PS : "vous risquez d'ajouter des failles exploitables sans le faire exprès" -> se serait bêta de le faire exprès en plus ^^
Répondre
13-05-2015, 8:02,
#4
RE: Boutons d'intégration spécifiques aux images pièces jointes
(12-05-2015, 21:46)sinse73 a écrit :  PS : "vous risquez d'ajouter des failles exploitables sans le faire exprès" -> se serait bêta de le faire exprès en plus ^^

Je préfère quand même préciser :')

Pour les plugins, c'est sûr que ça prend du temps et un peu d'entraînement, mais à la finale, c'est beaucoup plus propre que de modifier les fichiers sources :p

Cordialement, Jules.
Membre du support sur MyBB.support

Retrouvez tout mes partages réalisés sur MyBB.support grâce aux mots-clés : cliquez-ici
Répondre
07-09-2015, 14:29,
#5
RE: Boutons d'intégration spécifiques aux images pièces jointes
Super script.... A quand un plugin Big Grin
Répondre




Utilisateur(s) parcourant ce sujet : 1 visiteur(s)

Contact | MyBB.support | Retourner en haut | Retourner au contenu | Version bas-débit (Archivé) | Syndication RSS
 Utilitaire de traduction fourni par Regentronique