Dotclear

Vous n'êtes pas identifié(e).

Annonce

#1 2018-08-16 06:07:35

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Bonjour,

Je cherche un/des volontaire(s) pour tester le bon fonctionnement de mrvbToC, de mrvbCustomWidgets et de mrvbDeltaDate dans un environnement avec PHP7.x.

Merci d'avance.

Hors ligne

#2 2018-08-16 10:53:19

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Salut Mirovinben,

Ok pour moi mais:
- pas avant lundi,
- en local (wamp)
- et avec version DC 2.14

nb: je peux aussi tester en passant à des versions antérieures de
- Dotclear 2.?
et/ou
- php (à partir de 5.6)


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#3 2018-08-16 11:24:03

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Merci nanart.

Tester "simplement" avec un Dotclear récent (2.13 voire 2.14) tournant sous PHP 7.x.

Hors ligne

#4 2018-08-18 15:47:11

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

INSTALLATION TEST
.................
Dotclear version 2.14

Apache 2.4.27
Php 7.2.9
MySQL 8.7.19
---------------
A) PREMIER ESSAI, après installation Dotclear, aucune catégorie, mot_clé,  ni page, seul 1 billet celui créé lors de l'installation
    aucune modification du widget.
WIDGET AFFICHAGE site
==============

Notice: Undefined variable: ref_level in C:\wamp64\www\dctest\plugins\mrvbTOC\_public.php on line 177</code>
Notice: Undefined variable: level in C:\wamp64\www\dctest\plugins\mrvbTOC\_public.php on line 177

        --> note: cette erreur se produit aussi sous php version 5.6
        pb: => pas de catégorie: cf lignes 124 à 126 : les deux variables ne sont pas définies avant ni après if (!$rs->isEmpty()

$rs = $core->blog->getCategories();
if (!$rs->isEmpty()) {
		$ref_level = $level = $rs->level-1;

ligne 177 et suivantes: pas de contrôle des deux variables

	if ($ref_level - $level < 0) {
		$res .= str_repeat('</li>'."\n".'</ul>'."\n",-($ref_level - $level));
	}

        après création catégorie et affectation au billet: OK
        après création nouveau billet sans catégorie: OK, mais le billet n'apparait pas dans la liste
B) ACTIVATION Afficher seulement les billets avec catégories
            1 seul billet avec catégorie: affichage OK
            2 seuls billets sans catégorie affectée: même erreurs signalées
            suppression toutes catégories : même erreurs signalées
C) PREMIÈRE CONCLUSION:  peut importe la version php
        1) il semble qu'il faille au moins un billet avec au moins une catégorie affectée
        2) quand "Afficher seulement les billets avec catégories" n'est pas activé, les catégories sans billet s'affichent, mais pas les billets sans catégorie eux-mêmes
EX avec 1 billet avec une catégorie, un billet sans catégorie, 2 catégories créées

Table des matières
    Liste des billets
        test
        welcome
            Bienvenue sur Dotclear !

....
à suivre

Dernière modification par nanart (2018-08-18 15:57:42)


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#5 2018-08-18 15:58:20

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Oups...

Dernière modification par Mirovinben (2018-08-19 05:28:15)

Hors ligne

#6 2018-08-19 05:27:47

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Heu... Je n'ai jamais été très à l'aise dans la hiérarchie des catégories / sous-catégories...

Si tu remplaces la ligne #124

	$rs = $core->blog->getCategories();

par

	$level = 0; $ref_level = $level; $rs = $core->blog->getCategories();

Ça donne quoi ?
Nota 1 : J'ai modifié uniquement la ligne #124 pour conserver la numérotation des lignes suivantes.
Nota 2 : J'hésite pour la valeur initiale de $level (0, 1 , -1 ?) et son impact sur la ligne #177.

J'avoue avoir beaucoup perdu en compétences (pb d'âge et de santé) depuis la création de mrvbToC. Merci de ton aide.

Hors ligne

#7 2018-08-19 09:10:06

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Remplacement: résultat ok, plus d'erreur.

Par contre, j'ai fait une erreur d'interprétation: j'avais nommé un billet du même nom qu'une catégorie.
Du coup ce que je croyais être une catégorie sans billet était en fait un billet sans catégorie...

Conclusion: apparemment tout est rentré dans l'ordre:
(widget paramétré par défaut: seul afficher billets est activé.)
sans catégorie ou 2 catégories non affectées à un/des billet(s):

Liste des billets

    Bienvenue sur Dotclear !
    billet test

(widget paramétré par défaut + afficher seulement billets avec catégories est activé.)
sans catégorie ou 2 catégories non affectées à un/des billet(s):
Ok aucun billet affiché mais si afficher nombre entrées

Liste des billets (2)

--> pas gênant en soi, puisqu'il y a bien 2 billets mais aucun avec catégorie

+ 2 billets, 2 catégories, 1 seul billet affecté d'une catégorie

Liste des billets (2)

    catégorie welcome (1)
        billet test

+hierarcisation des catégories

Table des matières

    Liste des billets (2)
        catégorie test (1)
            billet test

Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#8 2018-08-19 09:14:47

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Petit problème de mise en forme de la liste : les liens <a href... s'applique sur l'ensemble du widget et pas par ligne.
Je pensais à un problème lié à la liste (<ul><li>...), mais en désactivant tous les css, ça semble ok.
Bref, je pense à une erreur de syntaxe quelque part

Dernière modification par nanart (2018-08-19 10:10:31)


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#9 2018-08-19 09:51:01

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Pour le pb des </ul> et </li> ça vient très probablement de la valeur choisie par défaut pour $level : 0, 1 ou -1.

Hors ligne

#10 2018-08-19 10:13:10

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

je viens de modifier mon message précédent: plus d'erreur si je désactive les css...
Je vais voir aussi cette histoire de $level

--
edit:
si  Afficher seulement les billets avec catégories n'est PAS activé, c'est ok.

edit:
Je me suis mélangé les pinceaux, apparemment pas d'erreur ou c'est moi qui ait mal vu...
Désolé du dérangement.
Je vais quand même tester des valeurs différentes pour $level

Dernière modification par nanart (2018-08-19 10:23:09)


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#11 2018-08-19 10:44:33

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

$level : apparemment 0, 1 ou -1 ne semble rien changer au comportement. Je laisse donc  0.

Widget: Tout testé avec liste des billets, y compris aucun billet publié.
Tout semble ok.

Je vais tester pages - apres pause miam miam

Dernière modification par nanart (2018-08-19 10:45:17)


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#12 2018-08-19 13:04:38

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Test pages, tout semble ok.
Je testerais pages connexes plus tard...
--
edit plugin Related Pages 1.6.3 installé, donc testé aussi sous php 7.2.9

Dernière modification par nanart (2018-08-19 18:58:22)


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#13 2018-08-19 19:49:33

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

TEST mrvbToC
Dotclear version 2.14
Apache 2.4.27
Php 7.2.9
MySQL 8.7.19

A part l'erreur signalée au début non critique à corriger, le plug semble fonctionner correctement sous Php 7.2.9 :-)
Le plugin Related Pages 1.6.3 aussi...


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#14 2018-08-20 04:05:53

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Merci pour tes tests...

Hors ligne

#15 2018-08-20 06:38:12

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Je viens de mettre à dispo chez moi la version 0.3.11 qui corrige le bug constaté lorsqu'un blog n'a aucune catégorie.

Hors ligne

#16 2018-08-20 08:59:04

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Je me demande si tes infos  mrvbToC : utilisation avec <tpl:Widget> - que je n'ai pas testé, peuvent être testées avec le plugin suivant mrvbCustomWidgets - je n'ai pas encore lu en détail la doc de ce plug

Tester me permet de mieux comprendre comment fonctionne les plugins.
Mais, en fait, je n'utilise pas les templates et j'ai beaucoup de mal à comprendre le fonctionnement des Behaviors...


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#17 2018-08-20 09:56:05

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

En fait mrvbCustomWidgets ne fait que doublonner les widgets habituellement proposés par Dotclear mais enrichis d'options et de possibilités qui n'étaient, pour certaines, pas proposées dans les premières version de Dc2.

Ils sont utilisés essentiellement dans la sidebar et peuvent cohabiter avec les widgets "canal historique".

Hors ligne

#18 2018-08-20 16:01:05

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

TEST mrvbCustomWidgets
Dotclear version 2.14
Apache 2.4.27
Php 7.2.9
MySQL 8.7.19

Mrvb Mots-clés

Petit problème (php 7 et 5.6)
- Mots-clés à exclure (séparés par virgules ou sauts de ligne), entré: titi
ce tag apparait cependant dans la liste...

-
filr: mrvb_Tags, public static function mrvb_Tags($w)
    * print_r($exclude); donne bien :

Array
(
    [0] => 
titi
)

    * Cependant "Mots-clés Mrvb" liste :

    titi
    toto
    welcome

    * ligne 530,  $tempres = print_r ($res, TRUE) + echo htmlentities($tempres), donne :

<h3>Mots-clés Mrvb</h3>
<ul>
<li><a href="http://dctest/index.php?tag/titi" class="tag100" >titi</a> </li>
<li><a href="http://dctest/index.php?tag/toto" class="tag100" >toto</a> </li>
<li><a href="http://dctest/index.php?tag/welcome" class="tag100" >welcome</a> </li>

--
pas vu où se situe le problème...

Si je fais, avant ou après if (!(in_array($rs->meta_id, $exclude))), ligne 508

echo '$meta_id ';
echo $rs->meta_id;
echo ' is in array $exclude? ';
echo '->';
echo in_array($rs->meta_id, $exclude) ?'YES' :'NO';
echo '<br/>';

ça retourne :

$meta_id titi is in array $exclude? ->NO
$meta_id toto is in array $exclude? ->NO
$meta_id welcome is in array $exclude? ->NO

je vais essayer d'approfondir...


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#19 2018-08-20 16:10:57

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Vu:
un var_dump de $exclure donne:

array (size=1)
  0 => string '<p>titi</p>' (length=11)

...
En fait, dans le formulaire du widget c'est un textarea, et sa forme (peut-être sous Dotclear 2.14 est un éditeur de texte - avec mise en forme, gras, etc.)
Il me semble qu'il conviendrait :
* soit de se contenter d'une balise de formulaire de type texte 'mots séparés par des virgules)
* soit, et/ou, de supprimer toute balise de mise en forme html
pour retrouver un texte "brut" (type string)

Ce que ne fait pas la méthode function mrvb_ListToArray($list)

--
EDIT :
sans oublier le problèmes des "balises" BBCode...

Dernière modification par nanart (2018-08-20 16:27:20)


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#20 2018-08-20 16:18:38

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Le problème "textarea " a déjà été soulevé dans le forum: https://forum.dotclear.org/viewtopic.php?id=48811 (sans réponse)

Depuis la 2.9 ou 2.9.1, les textarea dans les widgets embarque une barre d'outil,

Vais creuser +

EDIT:
La description du blog se fait dans les même conditions (barre outil) . Or, le contenu du champ après clic sur enregistrer et, donc celui stocké dans la bdd semblent être un texte brut sans balise.
Donc il doit exister dans le code Dc une méthode qui nettoie ?

Dernière modification par nanart (2018-08-20 16:56:12)


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#21 2018-08-20 21:52:50

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Apparemment la méthode clean de la librairie html de clearbricks semble jouer ce rôle.
elle utilise la fonction strip_tags de (PHP 4, PHP 5, PHP 7)

function mrvb_ListToArray($list)
...
ligne26: $tab[$i] = trim($tab[$i]);

ajout ligne 27: 
$tab[$i] = strip_tags($tab[$i]);

OU la méthode Dc pour assurer la continuité
$tab[$i] = html::clean($tab[$i]);

un var_dump de $tab donne

array (size=1)
  0 => string 'titi' (length=4)

Amha, faudra faire d'autres recherches pour voir si cela suffit.


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#22 2018-08-21 04:32:24

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

L’ajout d'éditeurs sur les champs de type textarea des widget s'est fait après l'écriture de la plupart de mes plugins. Ça qui génère pas mal de pb en effet, comme celui que tu as détecté. Cet ajout a fait couiner dans certaines chaumières, dont chez moi.

Comme certains utilisateurs de mes widgets ont besoin de ces textarea, il m'est impossible de les remplacer par de simples champ de type text au risque de casser les listes de filtres chez eux.

Dans un premier temps, dans le cadre de tes tests, je te propose donc de supprimer l'usage de ces éditeurs.

"Admin" - "Mes préférences" - "Mes options" - "Utiliser l'éditeur xhtml pour :" - décocher "Les zones de texte multilignes des widgets".

Il sera temps ensuite que nous nous penchions sur un nettoyage des textarea qui en ont besoin. Surtout que tu as trouvé des trucs très intéressants à ce sujet.

Merci de ton implication en tout cas.

Hors ligne

#23 2018-08-21 06:46:13

Mirovinben
M comme Mathusalem
Lieu : Dole (Jura)
Inscription : 2007-02-06
Site Web

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Je viens d'étudier ta proposition et son impact dans tous les widgets de mes plugins qui pourraient être concernés. En fait seul mrvbCustomWigets est impacté et pas pour tous les widgets, uniquement ceux qui proposent une liste d'exclusion.

Excellente proposition, testée avec un dcLegacyEditor activé pour les zones de texte multi-lignes des widgets. Mon message #22 est donc caduc par le fait.

function mrvb_ListToArray($list)
{
	$tmp = str_replace("\n",',',$list);
	$tmp = str_replace("\r",',',$tmp);
	while (strpos($tmp,',,') !== false) {
		$tmp = str_replace(',,',',',$tmp);
	}
	if (!empty($tmp)) {
		$tab = explode(',',$tmp);
		for ($i = 0 ; $i < count($tab) ; $i++) {
			$tab[$i] = trim($tab[$i]);
		}
	} else {
		$tab = array();
	}
	return $tab;
}

devient donc...

function mrvb_ListToArray($list)
{
	$tmp = str_replace("\n",',',$list);
	$tmp = str_replace("\r",',',$tmp);
	while (strpos($tmp,',,') !== false) {
		$tmp = str_replace(',,',',',$tmp);
	}
	if (!empty($tmp)) {
		$tab = explode(',',$tmp);
		for ($i = 0 ; $i < count($tab) ; $i++) {
			$tab[$i] = strip_tags(trim($tab[$i]));
		}
	} else {
		$tab = array();
	}
	return $tab;
}

Peux-tu tester ? Merci d'avance.

Si tu la valides, je la mets à dispo sur mon site et prochainement sur DotAddict.

[edit du 26/08/2018 08:08]
J'ai supprimé le lien vers le zip chez moi. Une nouvelle version de mrvb_ListToArray est dans les tuyaux...

Dernière modification par Mirovinben (2018-08-26 06:08:23)

Hors ligne

#24 2018-08-21 08:07:05

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

Je vais tester avec ta version.
Quand je suggérais l'utilisation de la méthode html::clean de Clearbricks, c'est parce cette méthode fait exactement cela:

    /**
     * Remove markup
     *
     * Removes every tags, comments, cdata from string
     *
     * @param string    $str        String to clean
     * @return    string
     */
    public static function clean($str)
    {
        $str = strip_tags($str);
        return $str;
    }

Donc, en cas de modification -voire remplacement, de la méthode strip_tags de php avec impact sur le résultat, la méthode de la librairie html de clearbricks devrait aussi être modifiée...
Pour résumer: utiliser la méthode clean de Clearbricks, évite de devoir modifier tous les plugs utilisant la méthode strip_tags de php.

Dernière modification par nanart (2018-08-21 08:12:26)


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

#25 2018-08-21 09:47:14

nanart
Membre
Lieu : Roubaix
Inscription : 2007-08-19

Re : Cherche volontaires pour tester certains de mes plugins sous PHP7.x

test Mrvb Mots-clés avec les deux éditeurs activés et aucun (xhtml) et strip_tags, php 5.6 et 7.2.9 : OK

Dernière modification par nanart (2018-08-21 10:41:49)


Dernière version stable Dotclear sur wampserver et chez ovh
Versions testing & unstable en local
https
php: 5.6.40 & 7.3.5

Hors ligne

Vous n'êtes pas identifié(e).

Pied de page des forums

Sites map