[MODDB] [RC1] acp_special_chars_V1.0.0

Vous êtes auteur d'un MODs phpBB3 en développement ou en version bêta, proposez votre MODs à la communauté pour essai dans ce forum.

Modérateur: Equipe

Règles du forum
A lire impérativement : Règlement de phpBB-fr.com

[MODDB] [RC1] acp_special_chars_V1.0.0

Messagepar Mr_Simon » 13 Sep 2013 à 12:59

  • Titre: ACP SPECIAL CHARS
  • Auteur: Simon

  • Description: Ce MOD permet l'ajout de caractères spéciaux sur la page de rédaction des messages comme mon précédent mod special_chars dont il est la mise à jour, cette version permet en plus de gérer tous les caractères spéciaux depuis l'ACP (Ajout, suppression, édition et réorganisation de l'ordre d'affichage et quelques pré-tri des caractères...)

  • Version: 1.0.0 RC1
  • Niveau d'installation: Facile
  • Temps d'installation: 5 minutes ou automod
  • Téléchargement: >--ici--<
  • Notes: Langues disponibles: Anglais / Français

Vue d'ensemble :
Image

Page de gestion des caractères spéciaux
Image

Page d'édition d'un caractère
Image


La pré-validation du mod à échoué car j'utilise (htmlspeciachars et htmlspecialchars_decode) mais c'est volontaire pour afficher dans l'ACP soit :
- le code du caractère
- et/ou le caractère lui-même.

Je vous remercie par avance pour tous vos conseils, suggestion etc... :wink:
Modifié en dernier par Mr_Simon le 01 Nov 2013 à 22:07, modifié 1 fois.
Pas d'aide par MP le forum est la pour ça.
Mes mods phpbb3 Ici
Avatar de l’utilisateur
Mr_Simon
Posteur expérimenté
Posteur expérimenté
 
Messages: 385
Enregistré le: 19 Sep 2007 à 20:31

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Geo » 13 Sep 2013 à 15:48

Salut,

Les échecs du MPV ne sont pas tous a prendre comme tel, certains avertissement/erreurs sont validés par l'équipe selon le contexte :)

Amicalement
Tout mes MODs/Extensions sont maintenant au statut abandonné.
Geo
Trifouilleur de code
 
Messages: 11280
Enregistré le: 25 Fév 2010 à 05:03
Localisation: Nantes, France

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Skouat » 13 Sep 2013 à 20:10

Bonjour,

Petite question : Pourquoi ne pas avoir gardé le nom du MOD déjà validé sur .com et juste passé la version de ce dernier en 2.0.0 ?
Je pose la question, car ça va sentir l'amalgame entre les deux MODs. De plus tu indiques que cette version du MODs est une mise à jour de la version précédente.

J'ajouterai également que s'il y a une très grande similitude entre tes deux MODs, je pense qu'il serait limite obligatoire que tu fournisses une note de mise à jour de la version 1.0.1 de ton précédent MOD vers cette version.
Car que va-t'il se passer si un membre installe ce MOD par dessus l'autre ?

A+
Skouat
Traducteur
Traducteur
 
Messages: 14132
Enregistré le: 02 Avr 2008 à 19:47

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Mr_Simon » 14 Sep 2013 à 07:42

Bonjour,

J'ai pensé à un nouveau nom car le codage est complètement différent, (cette version est plus dans les standards phpbb3 l'ancienne version utilisait essentiellement JavaScript) et pour mettre en avant les nouvelles fonctionnalités de l'ACP. Mais je m'aperçois que ce n'est peut-être pas une bonne idée. :idea:

Je vais donc suivre ton conseil et je referais un pack en version V2.0.0 (pour la validation ) avec une notice de mise à jour.
Cela évitera toute confusion :wink:
Pas d'aide par MP le forum est la pour ça.
Mes mods phpbb3 Ici
Avatar de l’utilisateur
Mr_Simon
Posteur expérimenté
Posteur expérimenté
 
Messages: 385
Enregistré le: 19 Sep 2007 à 20:31

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Skouat » 14 Sep 2013 à 10:33

Salut,

Je pense vraiment que c'est plus sage de faire ainsi. Je parle par expérience, car déjà quand je vois comment cela se passe avec des MODs ayant les mêmes fonctionnalité et provenant d'auteurs différents, alors je n'imagine pas le boxon avec deux MODs similaires et provenant du même auteur. :?

Allez hop rentrons dans le vif du sujet.

Install.xml
  • Pour pouvoir utiliser le code suivant : <github><![CDATA[https://github.com/phpbb/modx]]></github>, il faut que tu remplace modx par le nom du ton projet sur GitHub.
    si tu n'utilise pas GitHub, alors il te faut retirer la ligne.
  • Pour les commentaires du type // Mod : [RC1]acp_special_chars V1.0.0--------------------------------
    A ta place j'éviterai de m'enquiquiner avec les numéros de versions. Car cela implique qu'il te faudra donner les instructions de mises à jour afin d'actualiser les commentaires lorsqu'il y aura une nouvelle version.

    Toujours sur ces commentaires, il faut que tu les harmonises. Certains ne sont présents qu'en début d'ajout de code (cf. 1ère instruction). D'autres n'ont pas les même numéro de version (ce qui tent à appuyer mon commentaire précédent.
  • Le code suivant
    Code: Tout sélectionner
    if (isset($config['sc_chars_on_off']) && $config['sc_chars_on_off']==1) 

    par
    Code: Tout sélectionner
    if (!empty($config['sc_chars_on_off']) 

  • Je n'avais jamais vu l'écriture suivante :shock:. Je me coucherai moins bête :P
    Code: Tout sélectionner
    ($config['sc_chars_type']) == 0 ? $and_chars_type = '' : $and_chars_type = ' AND chars_type = '.(int)$config['sc_chars_type']; 

    Par contre j'ai toujours vu cette écriture
    Code: Tout sélectionner
    $and_chars_type = ($config['sc_chars_type']) == 0 ? '' : ' AND chars_type = '.(int)$config['sc_chars_type']; 

    Ensuite ne pas oublier que phpBB.com à des règles pour la mise à page du code.
    Et au lieu d'utiliser ($config['sc_chars_type']) == 0 j'utiliserai plutot un empty()
    Ce qui donnerai
    Code: Tout sélectionner
    $and_chars_type = !empty($config['sc_chars_type']) ? ' AND chars_type = ' . (int) $config['sc_chars_type'] : ''; 

  • Indentation manquante pour :
    Code: Tout sélectionner
                    $special_chars[] = array(
                    'chars_iso'        => $row['chars_iso'],
                    'chars_langname'        => $row['chars_langname'],
                    'count'        => $count,
                    ); 

  • Dans ce qui suit, j'ai beaucoup d'interrogation.
    Code: Tout sélectionner
    		// Make table and send data...
    		$width = '21'; $height = '21'; $color = '#DCE6E9'; $nb_cols = 22;
    		foreach ($special_chars as $row)
    		{
    			$template->assign_block_vars('td', array(
    				'COLOR'		=> $color,
    				'WIDTH'		=> $width,
    				'HEIGHT'		=> $height,
    				
    				'ISO'		=> $row['chars_iso'], 
    				'LANGNAME'		=> (isset($user->lang[$row['chars_langname']])) ? $user->lang[$row['chars_langname']] : $user->lang['SC_NO_LANGNAME'],
    				'ADD_ROW'		=> (($row['count']) % $nb_cols == 0) ? '</tr><tr>' : '',
    			));
    		}

    Pourquoi initialiser des variables, alors que tu t'en sers comme constante ? => $width = '21'; $height = '21'; $color = '#DCE6E9'; $nb_cols = 22;

    J'ai un gros doute sur le code suivant :
    Code: Tout sélectionner
    'ADD_ROW'        => (($row['count']) % $nb_cols == 0) ? '</tr><tr>' : '', 

    Ou sinon je veux bien une bonne explication.
    Puis de toute manière $nb_cols == 0 ne pourra jamais être égale à 0 vu que initialise $nb_cols à 22
  • Pour :
    Code: Tout sélectionner
    			'S_SPECIAL_CHARS'		=> (sizeof($special_chars)) ? true : false, //not display if empty

    Je pense que j'aurais fait autrement.
    • J'aurais plutot écris
      Code: Tout sélectionner
      'S_SPECIAL_CHARS'		=> $s_special_chars, //not display if empty
    • Ce qui amène à ajouter
      Code: Tout sélectionner
      if (sizeof($special_chars))
      {
      	$s_special_chars = true;
      avant // Make table and send data...
    • Puis à ajouter
      Code: Tout sélectionner
      }
      else
      {
          $s_special_chars = true;
      }
       

      après
      Code: Tout sélectionner
                      'ADD_ROW'        => (($row['count']) % $nb_cols == 0) ? '</tr><tr>' : '',
                  ));
              }
       
    en faisant ainsi, tu évites d'executer le foreach() dans le cas où ton array() serait vide

    Nooonnn!!!!! En fait je me demande de l'intérêt du while() suivi d'un foreach() alors que tout pourrait être géré avec le while()
    En gros tout ce que j'ai indiqué précédemment est bon à prendre, mais bon au final tout serait à revoir :?
  • taille n'est pas un nom de variables en anglais :wink:
    Vu 3 fois dans le fichier

Dans install_sc.php
  • les valeurs numérique sont à écrire en tant que tel.
    Donc
    Code: Tout sélectionner
                array('sc_chars_on_off', '1'),
                array('sc_chars_type', '0'), 

    Devient
    Code: Tout sélectionner
                array('sc_chars_on_off', 1),
                array('sc_chars_type', 0), 

  • Idem que le point précédent pour
    Code: Tout sélectionner
    array('chars_id' =>'1', 'chars_html' =>'&nbsp;', 'chars_iso' => '&#160;', 'chars_display' =>'1', 'chars_langname' =>'NO_BREAKSPACE', 'chars_type' =>'1', 'chars_order' =>'1',),
  • Juste pour infos, dans UMIL tu peux écrire le nom des tables comme tu l'as fait.
    Code: Tout sélectionner
    array(SPECIAL_CHARS_TABLE, array( 

    ou comme suit
    Code: Tout sélectionner
    array('phpbb_special_chars', array( 
  • Etant donné que dans ton install.xml tu fais modifier les templates, il te faut ajouter l'instruction permettant de rafraichir les templates dans l'installeur UMIL
    cf : cache_purge()
  • Le commentaire // Version 1.0.0 de la ligne 369 n'est pas utile.

Fichiers de langues
  • Si tu veux faciliter le travail des traducteurs, il serait bien d'uniformiser l'ensemble de tes fichiers au niveau de leur mise en page.
  • Il faut également que tu rajoutes le commentaire suivant :
    Code: Tout sélectionner
    // DEVELOPERS PLEASE NOTE
    //
    // All language files should use UTF-8 as their encoding and the files must not contain a BOM.
    //
    // Placeholders can now contain order information, e.g. instead of
    // 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows
    // translators to re-order the output of data while ensuring it remains correct
    //
    // You do not need this where single placeholders are used, e.g. 'Message %d' is fine
    // equally where a string contains only two placeholders which are used to wrap text
    // in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine
    //
    // Some characters you may want to copy&paste:
    // ’ « » “ ” …
    //


    Juste après
    Code: Tout sélectionner
    if (empty($lang) || !is_array($lang))
    {
        $lang = array();
    }
     

    Ce n'est pas obligatoire, mais bon, c'est toujours des informations très utiles à l'attention des traducteurs ;)
  • Rempacer "..." par "…" code que tu peux trouver dans le commentaire que je t'ai fait rajouter juste avant :mrgreen:

Dans includes/acp/acp_special_chars.php
  • Il n'est pas nécessaire de déclarer des variables globales si tu n'en a pas l'utilité.
    $auth, $phpbb_root_path, etc.
  • Si tu initialises $form_name autant te servir de la variable pour add_form_key :wink:
    Donc,
    Code: Tout sélectionner
    		$form_name = 'acp_special_chars';
    		add_form_key('acp_special_chars');

    devient
    Code: Tout sélectionner
    		$form_name = 'acp_special_chars';
    		add_form_key($form_name);
  • // Del cache used in posting..., Del n'éxiste pas :mrgreen: à remplacer par delete ou purge ou clear
  • false est à écrire en mininuscule
    Voir $char_choice = False; pour correction.
    Idem pour true
  • De préférence, une ligne = une instruction... donc la ligne suivante à corriger
    Code: Tout sélectionner
    $chars_row['chars_iso'] = getcode($chars_row['chars_iso']); $char_choice = True;

    A appliquer à l'ensemble du document.
  • Je ne vois pas l'intérêt du code suivant:
    Code: Tout sélectionner
    							$check_double = ($action == 'add') ? true : false;
    							if ($check_double)

    Surtout que plus bas dans le code tu écris
    Code: Tout sélectionner
    if ($action == 'add')

    Donc soit tu initialises une variable qui vient se substituer à un contrôle, soit tu ne l'intialise pas et tu utilises directement le contrôle
  • $chars_id à forcer en int
    Donc
    Code: Tout sélectionner
    WHERE chars_id = ' . $chars_id;

    devient
    Code: Tout sélectionner
    WHERE chars_id = ' . (int) $chars_id;

    Vu plusieurs fois dans le fichier
  • idem pour le code suivant :
    Code: Tout sélectionner
                                $sql = 'UPDATE ' . SPECIAL_CHARS_TABLE . "
                                SET chars_order = $order
                                    WHERE chars_id = {$row['chars_id']}"
    ; 

    Je pense que c'est mieux ainsi
    Code: Tout sélectionner
                                $sql = 'UPDATE ' . SPECIAL_CHARS_TABLE . '
                                SET chars_order = '
     . (int) $order . '
                                    WHERE chars_id = '
     . (int) $row['chars_id']; 

  • Moué... le commentaire amène à se poser des
    Code: Tout sélectionner
    $i = 0; $per_page = 18; // 18 because of my screnn :)   

    Si je n'ai pas le même écran que toi je fais comment ?
    Donc je pense qu'il serait mieux d'utiliser les valeurs de pagination de phpBB. :wink:

Remarques générales :
Dans ton éditeur de texte, affiche les caractères invisibles. Ca te permettra de mieux voir là où il y a des tabulations superflues.

Il y a un gros travail à faire sur la mise en page du code. Certe d'un point de vue technique ca n'a aucune incidence, mais bon pour nous c'est beaucoup plus confortable de lire un code bien indenté.
Exemple dans acp_special_chars.php
    ligne 55 à 59
    ligne 111 à 116
    ligne 125 à 130
et le plus gros boulot à ce niveau reste dans les fichiers de langue.

Bon je m'arrête là pour le moment. Ne m'en veut pas, mais j'ai un peu lacher l'affaire sur l'analyse du doc sur la fin.
Je pense que t'as déjà pas mal de chose à revoir, et je pense qu'il y a encor des choses à faire remonter.

A+
Skouat
Traducteur
Traducteur
 
Messages: 14132
Enregistré le: 02 Avr 2008 à 19:47

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Mr_Simon » 15 Sep 2013 à 10:38

Bonjour,

Tout d'abord un grand MERCI pour le temps que tu m'as consacré ;)

A propos Install.xml
<github><![CDATA[https://github.com/phpbb/modx]]></github>
je vais supprimer, en fait c'est là uniquement parce que j'ai utilisé modx_creator_offline-1.2.6 et que la génération du fichier ne se fait pas si on laisse vide ce champ...
Quant aux commentaires de version // Mod : [RC1]acp_special_chars V1.0.0-------------------------------- je vais les supprimer avec plaisir, je les ai mis uniquement pour présenter ici cette mise à jour, car j'ai lu parmi les posts qu'il fallait indiquer RC et un numéro de version ( et forcement j'en ai oublié....)

Ensuite
Tu me conseilles de remplacer
Code: Tout sélectionner
if (isset($config['sc_chars_on_off']) && $config['sc_chars_on_off']==1)  

par
Code: Tout sélectionner
if (!empty($config['sc_chars_on_off']) ) 

Je n'utilise que très rarement cette solution qu'on nomme dans mon jargon "Marche prioritaire" car c'est bien souvent interdit pour des raisons de sécurité...
Je m'explique, avec mon code il n'y a qu'une possibilité qui autorise l'exécution du code qui suit, il faut que $config['sc_chars_on_off'] soit à 1, alors qu'avec ta solution c'est le contraire le code est toujours exécuté sauf dans 2 cas $config['sc_chars_on_off'] n'existe pas ou vaut 0, alors il est vrai qu'ici il n'y aura pas mort d'homme...on va juste planter le forum si l'installation n'est pas allé jusqu'au bout par exemple la table special_chars non créée (je te rassure je n'ai pas utilisé le contrôle dans l'ACP donc avec ma solution ça plantera dans l'acp :D )
Je préférerais garder ma solution (habitude de programmation) sauf si tu me confirmes que ce n'est pas très Coding Guidelines (je dois dire que je ne connais pas bien)

Pour
Code: Tout sélectionner
($config['sc_chars_type']) == 0 ? $and_chars_type = '' : $and_chars_type = ' AND chars_type = '.(int)$config['sc_chars_type']; 

je suis ravi de t'avoir montré quelque chose :D , plus sérieusement, c'est aussi une habitude de programmation ou on doit d'abord testé la variable d'entrée, mais je vais corriger avec ton code qui ressemble plus a ce qu'on utilise en php.

L'indentation c'est corrigé.

Pourquoi initialiser des variables, alors que tu t'en sers comme constante ?
Code: Tout sélectionner
$width = '21'; $height = '21'; $color = '#DCE6E9'; $nb_cols = 22;

J'avais prévu, une personnalisation dans l'ACP pour ceux qui utilisent un thème différent de prosilver et un calcul du nombre de colonnes si le nombre de caractères a affiché est faible...mais je pense que je vais laisser tomber car ça se complique beaucoup s'il y a plusieurs thèmes... et je compte remettre directement ces valeurs dans le fichier special_chars.html ce qui permettra après édition de celui-ci une personnalisation en fonction du thème utilisé. (j’ajouterai une note dans le fichier install)


J'ai un gros doute sur le code suivant :
Code: Tout sélectionner
'ADD_ROW'        => (($row['count']) % $nb_cols == 0) ? '</tr><tr>' : '', 

Ou sinon je veux bien une bonne explication.
Puis de toute manière $nb_cols == 0 ne pourra jamais être égale à 0 vu que initialise $nb_cols à 22

J'explique :D J'utilise la fonction Modulo " % " ici ce n'est pas $nb_cols == 0 que je teste, mais $row['count']) modulo $nb_cols (reste de la division par $nb_cols doit faire 0) pour faire simple si $row['count'] est un multiple de $nb_cols j'ajoute </tr><tr> pour créer une nouvelle ligne dans le tableau...d'ailleur j'ai laissé un parenthèse inutile ($row['count']), c'est peut-être ce qui t'as perturbé...je vais la supprimer.


Code: Tout sélectionner
'S_SPECIAL_CHARS'      => (sizeof($special_chars)) ? true : false, //not display if empty

Je l'ai ajouté au dernier moment pour éviter d'afficher une page vide, si on choisit d'activer le mode mais, avec tous les caractères non affichés (idiot mais faisable)...Il est préférable effectivement de ne pas exécuter la boucle foreach(), quant à la boucle while() elle n'est exécutée qu'une seule fois pour créer le cache c'est sa seule utilité...Je vais modifier pour éviter le foreach() s'il n'y a rien a afficher.

taille n'est pas un nom de variables en anglais ... Effectivement en fait je n'ai pas fais attention, car c'est le seul morceau de code de l'ancienne version du mod que j'ai gardé, et c'était validé alors j'ai complètement zappé. Je vais corriger

install_sc.php Je vais appliquer à la lettre tous tes conseils...Je ne faisais pas valider mes mods à cause de ces fichiers modx, install...

Fichiers de langue Je vais rajouter le code manquant et revoir pour l'indentation

includes/acp/acp_special_chars.php
Je vais supprimer les globales inutiles qui proviennent de mon copier/coller du code utilisé en fonction() oubli :oops:

pour :
Code: Tout sélectionner
          $form_name = 'acp_special_chars';
          add_form_key('acp_special_chars');
j'ai pris modèle dans un fichier de phpbb...
Code: Tout sélectionner
		$form_name = 'acp_lang';
		add_form_key('acp_lang');
pas de chance d'autres utilisent ta solution
Code: Tout sélectionner
		$form_key = 'acp_board';
		add_form_key($form_key);
pour tout le mal que tu t'es donné à contrôler je vais corriger comme tu me l'indique ;)
Idem pour les majuscules/minuscules des true et false et le DEL

Code: Tout sélectionner
$check_double = ($action == 'add') ? true : false;
                     if ($check_double)

Cela évite de rentrer dans le "add" si le caractère existe déjà (erreur) ce qui n'as pas à être testé lors d'une édition "edit"


pour $chars_id à forcer en int je pensais que c'était inutile à cause de
Code: Tout sélectionner
$chars_id = request_var('id', 0);
, mais je vais suivre tes conseils

Dans ton éditeur de texte, affiche les caractères invisibles :lol: Ils sont affichés, mais je suis pas très regardant...je travaille habituellement avec des systèmes industriels qui n'utilisent pas cette écriture alors j'ai un peu de mal à m'y retrouver, je fais un peu au look.
Je te promets de regarder et d'essayer de réorganiser proprement... en respectant au mieux le Coding Guidelines, mais sois indulgent quand même :)

Encore un grand Merci pour tous tes conseils et corrections (en attendant les autres je me mets au travail...)

Simon
Pas d'aide par MP le forum est la pour ça.
Mes mods phpbb3 Ici
Avatar de l’utilisateur
Mr_Simon
Posteur expérimenté
Posteur expérimenté
 
Messages: 385
Enregistré le: 19 Sep 2007 à 20:31

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Skouat » 15 Sep 2013 à 11:30

Salut,

indulgent je le suis... sinon je ne me serais pas embêté à faire un si long post ;)

J'ai effectivement remonté pas mal de point de mise en page qui font parti du coding guideline... mais même si ce dernier n'avais pas exité, je t'aurais indiqué de faire un effort sur l'indentation du code.
C'est très important surtout si tu veux que des tiers personnes lisent/analysent ton code.
Il est souvent très désagréable de devoir réindenter un code pour le comprendre avant meme de pouvoir l'analyser.
Sur ce point là tu pourra effectivement me trouvé très tatillon :twisted: ... mais si tu joues le jeu... je ne mordrais pas :wink:

Après ne boulverse pas tes habitudes de codage. Les remarques que j'ai fait sont basées sur mes habitudes de codeur du dimanche et je suis loin d'être un expert. ;)



A+ :P
Skouat
Traducteur
Traducteur
 
Messages: 14132
Enregistré le: 02 Avr 2008 à 19:47

Re: [RC1] acp_special_chars_V1.0.0

Messagepar sylver35 » 15 Sep 2013 à 16:17

Bonjour,

pour $chars_id à forcer en int je pensais que c'était inutile à cause de
Code: Tout sélectionner
$chars_id = request_var('id', 0);

Tu a tout à fait raison, la variable ayant déjà été protégée et forcée en int, pas besoin de doubler cela, la solution de départ est donc bonne
sylver35
Dieu des floodeurs
Dieu des floodeurs
 
Messages: 5943
Enregistré le: 26 Fév 2008 à 14:58
Localisation: Bretagne

Re: [RC1] acp_special_chars_V1.0.0

Messagepar ABDev » 15 Sep 2013 à 17:10

.Com aimant que tout soit forcé, même si c'est correctement défini dès le départ, mieux vaut le faire quand même.
A moins que tu n'aimes passer dix plombes avant la validation.
Pour se payer le luxe d'être feignant, il faut sans cesse faire travailler ses méninges ! (Korben)

On clique sur le bouton Répondre plutôt que le bouton Citer ...
Un problème avec une extension ? Pas de lien vers celle-ci ? Sujet ignoré !
Avatar de l’utilisateur
ABDev
Programmationateur
Programmationateur
 
Messages: 15826
Enregistré le: 12 Mai 2005 à 22:54

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Mr_Simon » 15 Sep 2013 à 20:07

ABDev a écrit:A moins que tu n'aimes passer dix plombes avant la validation.

Ouhhhh que non c'est d'ailleurs ce qui faisait que je renonçais à faire valider mes mods (et aussi l'anglais :roll: ), d'ailleurs en matière de sécurité la redondance est une chose très courante...

Je vais effectuer toutes les modifs en suivant vos conseils et vous tenir informé.

Merci à tous.
Pas d'aide par MP le forum est la pour ça.
Mes mods phpbb3 Ici
Avatar de l’utilisateur
Mr_Simon
Posteur expérimenté
Posteur expérimenté
 
Messages: 385
Enregistré le: 19 Sep 2007 à 20:31

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Geo » 15 Sep 2013 à 22:11

De toute façon une variable dans une requête SQL sans cast INT, c'est un motif de refus à lui seul, on parle par expérience...
Tout mes MODs/Extensions sont maintenant au statut abandonné.
Geo
Trifouilleur de code
 
Messages: 11280
Enregistré le: 25 Fév 2010 à 05:03
Localisation: Nantes, France

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Dakin Quelia » 16 Sep 2013 à 12:34

HS: Oh ils ont ajouté le Github (comme je l'avais suggéré) dans le MODx. :D
Aucun support par mail, MP ou msn.
Mes MODs: ici | Mon blogue: Mon blogue | DeviantArt: cliquez ici
Dakin Quelia
Floodeur universel
Floodeur universel
 
Messages: 21413
Enregistré le: 31 Oct 2006 à 18:33
Localisation: Belgique

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Informpro » 16 Sep 2013 à 14:27

Geolim4 a écrit:De toute façon une variable dans une requête SQL sans cast INT, c'est un motif de refus à lui seul, on parle par expérience...

J'ai envie de dire que c'est pas la seule décision stupide au niveau du Coding Guidelines de phpBB ;). /troll
Informpro
Apprenti-posteur
Apprenti-posteur
 
Messages: 183
Enregistré le: 06 Aoû 2012 à 20:24

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Geo » 16 Sep 2013 à 16:11

Le guideline a été écrit pour certaines raisons, si on cast en INT c'est pour justement éviter toutze injection SQL, même si la fonction request_var() "pseudo-caste" selon le second param.
Tout mes MODs/Extensions sont maintenant au statut abandonné.
Geo
Trifouilleur de code
 
Messages: 11280
Enregistré le: 25 Fév 2010 à 05:03
Localisation: Nantes, France

Re: [RC1] acp_special_chars_V1.0.0

Messagepar Mr_Simon » 17 Sep 2013 à 13:03

Salut

@ Skouat j'en suis la :
et le plus gros boulot à ce niveau reste dans les fichiers de langue


Peux-tu m'expliquer la règle exacte d'indentation pour les fichiers de langue car je suis un peu perdu, je viens d'en regarder plusieurs et cela va d'une tabulation à 5 voire plus...
Si ces différences de tabulations consistent à faire en sorte que d'un point de vue visuel tout soit aligné a partir des => cela me parait encore plus aléatoire car dépendant de l'éditeur utilisé et/ou des réglages dans l'éditeur (on peut régler la longueur d'une tabulation). Je viens d'essayer plusieurs solutions et à chaque fois un rendu différent... :shock:

Une autre question qui me vient à l'esprit, puisque cela devient la mise à jour de special_chars v1.0.1 peut-on dans la partie update dire qu'il faut complètement désinstallé l'ancienne version (eh oui le seul morceau que j'avais gardé tu me l'a fait modifier) ou faut-il tout décomposer ?

Merci pour les infos.
Pas d'aide par MP le forum est la pour ça.
Mes mods phpbb3 Ici
Avatar de l’utilisateur
Mr_Simon
Posteur expérimenté
Posteur expérimenté
 
Messages: 385
Enregistré le: 19 Sep 2007 à 20:31

Suivante

Retourner vers MODs en développement

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité