[spip-dev] une petite horreur

DOmmage que lorsqu'on décompresse le dossier spip sur son site on obtienne,
si on ne sait pas qu'il faut aller dans ecrire/, la mention suivante :

Warning: Failed opening 'ecrire/inc_connect.php3' for inclusion
(include_path='') in /home/fil/public_html/inc-public.php3 on line 3

Ne serait-il pas plus judicieux d'intercepter cette erreur et de renvoyer
vers ecrire/ ?

-- Fil

Entre autres, j'ai amélioré la page "tous les articles" :
plus compacte et plus rapide à afficher (sous netscape).
Ce serait bien de faire pareil avec "les auteurs".

Aussi d'autres modifs dont je ne me souviens plus (dans
l'espace public notamment).

Sinon, un truc qui serait sympa : réglez vos clients FTP
en mode binaire, y compris pour les fichiers PHP3 ;))

Enfin :

Ne serait-il pas plus judicieux d'intercepter cette erreur et de renvoyer
vers ecrire/ ?

Non, sinon en cas d'erreur ou d'oubli n'importe qui peut
prendre le contrôle du site sans qu'on s'en aperçoive.
C'aurait été possible avec un répertoire séparé pour les
squelettes (à recopier), mais bon....

Aussi d'autres modifs dont je ne me souviens plus (dans
l'espace public notamment).

Ah non! File la liste des fichiers modifiés, STP, parce que de mon côté, j'ai beaucoup avancé aussi.

ARNO*

Salut,

J'ai installé une beta 16. Malheureusement, comme Antoine n'a pas indiqué ce qu'il avait modifié pour la beta 15 (et qu'on travaillait en même temps), il doit y avoir des choses qui se sont perdues.

Donc: Antoine, j'ai repris ta beta 15, mais j'en ai écrasé les fichiers sur lesquels j'ai travaillé. A vue de nez, ça donne une version qui fonctionne bien, mais j'ai p'têt fait sauter quelques unes de tes modifs (notamment espace public).

Voici les fichiers que j'ai modifiés:

/inc-calcul.php3
/inc-forum.php3
/inc-public.php3
/spip-pass.php3
/inc-urls-standard.php3
/inc-urls-html.php3
/article.html
/rubrique.html

/ecrire/aide_gauche.php3
/ecrire/auteurs_edit.php3
/ecrire/configuration.php3
/ecrire/controle_forum.php3
/ecrire/inc_access.php3
/ecrire/inc_admin.php3
/ecrire/inc_base.php3
/ecrire/inc_install.php3
/ecrire/inc_version.php3
/ecrire/install.php3

/ecrire/AIDE/aide

/ecrire/IMG2/valider-message-off.gif
/ecrire/IMG2/valider-message-on.gif

Salut,

Modifs sur:

/inc-calcul.php3
/sommaire.html*
/article.html*
/rubrique.html*

/ecrire/auteurs_edit.php3
/ecrire/inc_logos.php3
/ecrire/breves_voir.php3

* ceux avec l'astérisque, vous pouvez vous en passer...

Le système gère désormais les logos pour les brèves et pour les auteurs (pour les ceusses qui voudraient mettre leur tronche en ligne). Les pseudo-tags sont: #LOGO_AUTEUR et #LOGO_BREVE. (Bon, je fais pas de #LOGO_BREVE_RUBRIQUE, vu que les brèves dépendent directement d'un secteur, ça serait gâcher...)

(Note: quand je programme longtemps, je m'énerve vite. L'andouille qui a utilisé $id_auteur à la place de $connect_id_auteur dans inc_admin m'a fait perdre une bonne heure là où ça aurait dû me prendre 5 minutes. Du coup, j'ai eu recours à un de ces chefs-d'oeuvre de programmation qui rendent le code complètement illisible: dans auteurs_edit.php3, il existe désormais un $top_id_auteur qui se substitue à l'$id_auteur quand c'est nécessaire. Bon, Antoine, vu que décidément y'a des fonctions que j'y pige que dalle, si tu peux transformer mes rustines en pneumatiques rutilants, ça nous évitera l'overdose d'aspirine quand on préparera la release 2.0 :-))

(Note2: dans inc-calcul, pour le #LOGO_AUTEUR, j'ai fait un calcul de porc pour récupérer #EMAIL dans les liens - histoire de pouvoir faire [(#LOGO_AUTEUR|right|email:#EMAIL)] - en ajoutant une requête. C'est dingue, ça, je suis totalement infoutu de comprendre où passent les variables des mysql_results...)

Amicalement,
ARNO*

Re-re-re-salut

Je réinstalle la beta 16, parce que j'ai encore bidouillé...

Cette fois, j'ai mis en place la gestion des articles post-datés (depuis "Configuration précise"). C'est un truc dont Laz aime bien abuser: quand il part en vacances, il "publie" (en interne) un certain nombre d'articles à l'avance, en leur fixant des dates de publication dans les jours qui suivent. Ces articles ne sont alors accessibles publiquement qu'à l'échéance de ces dates. De cette manière, pendant que Laz est dans son bateau, le site continue à évoluer sans lui. C'est toute la magie du Web :-))

Bien entendu, dans inc-calcul.php3, j'ai aussi modifié le calcul des "collections actives" (qui prennent ainsi en compte cette histoire d'articles post-datés).

Egalement, le bouton "Voir en ligne" est désactivé pour les articles post-datés.

Ah oui, les articles post-datés apparaissent dans une case spécifique sur la page "A suivre".

Et y'a le fichier d'aide en ligne qui va bien.

Fichiers modifiés:

/inc-calcul.php3
/ecrire/aide_gauche.php3
/ecrire/articles.php3
/ecrire/configuration.php3
/ecrire/AIDE/aide

Amicalement,
ARNO*

ARNO* wrote:

(Note: quand je programme longtemps, je m'énerve vite. L'andouille
qui a utilisé $id_auteur à la place de $connect_id_auteur dans
inc_admin

où ça ?

dans auteurs_edit.php3, il existe désormais un
$top_id_auteur qui se substitue à l'$id_auteur quand c'est
nécessaire.

je ne vois pas où était le problème....

Petit
soucis: ça fait un "unlink" sur un dossier en amont, est-ce que ça
pose un problème sur Altern? (Dans ce cas, est-ce que tu peux le
transformer pour que ça aille bien, Antoine, moi j'ai pas de site
Altern pour tester.)

Pour tester, il y a f2s.com qui présente la même limitation
(à part ça, oui, ça pose certainement un problème : utiliser
spip_cache.php3 pour contourner).

Le compromis... C'est ce qui m'a demandé le plus de mal. Les
utilisateurs doivent s'inscrire pour obtenir un identifiant sur le
forum. Une fois cet identifiant entré, il est à la fois stocké dans
spip_auteurs, et sous forme de cookie (ce qui fait qu'on n'a pas à
l'entrer plusieurs fois). Cet identifiant est envoyé par mail, donc
comme ça on possède une adresse email valide.

Sympa. Par contre, à vue de nez, c'est un peu dommage d'utiliser le
champ 'login' alors que le 'pass' est crypté depuis une ou deux versions.
Enfin, surtout, n'importe qui peut taper 'pitrou' ou 'lirresponsable'
pour poster des messages sous Antoine Pitrou ou Lirresponsable....

@ Antoine Pitrou (pitrou@free.fr) :

> Ne serait-il pas plus judicieux d'intercepter cette erreur et de renvoyer
> vers ecrire/ ?

Non, sinon en cas d'erreur ou d'oubli n'importe qui peut
prendre le contrôle du site sans qu'on s'en aperçoive.
C'aurait été possible avec un répertoire séparé pour les
squelettes (à recopier), mais bon....

Alors intercepter l'erreur et afficher un truc simple "site en
construction"... ??

-- Fil

Salut,

Dans la beta 16, nouvelle version du fichier:

/inc-calcul.php3

Il y a, dans le langage de boucles, une nouvelle commande: {1/3}, {2/4}, {3/10}...
Elle permet de ne récupérer qu'une portion d'un boucle (ici, le premier tiers, le deuxième quart, le troisième dizième).

Exemple: je veux récupérer les auteurs, mais présenter ça sur 3 colonnes. Jusqu'ici, ne connaissant pas le nombre total d'auteurs à l'avance, il m'était impossible de faire un squelette avec 3 colonnes équilibrées. Désormais, je peux. Il suffit de faire 3 boucles (dans un tableau, of course):

<BOUCLE1(AUTEURS){tout}{par nom}{1/3}>
<BOUCLE2(AUTEURS){tout}{par nom}{2/3}>
<BOUCLE3(AUTEURS){tout}{par nom}{3/3}>

Qu'il y ait 3 auteurs ou 200, j'ai bien un nombre d'auteurs équivalent dans les 3 boucles successives.

Notez: attention aux problèmes de logique avec l'affichage {unique} ou {doublons}. Exemple:

<BOUCLE1(ARTICLES){tout}{1/2}{doublons}>
<BOUCLE2(ARTICLES){tout}{2/2}{doublons}>

n'affiche pas l'intégralité des articles. En effet, imaginons que nous ayons 20 articles. La première boucle en affiche logiquement 10 (de 1 à 10). Cependant, la seconde boucle, elle, ne récupère que la seconde moitié des articles _qui ne sont pas sortis de la première boucle_ (à cause du "boublons"); elle n'affiche donc que 5 résultats (16 à 20). Dans l'affaire, à cause du "doublons", {1/2} plus {2/2} égal seulement trois quarts! C'est pas un problème de programmation, hein, c'est un problème de logique.

(Au passage, Antoine, la classe Boucle gagne deux nouvelles variables: 'partie' et 'total_parties'.)

Ah oui, désormais dans la fonction qui traite les $result (executer_boucle), il y a les deux variables $total_boucle et $compteur_boucle, mais je n'ai pas traité les pseudo-tags #TOTAL_BOUCLE et #COMPTEUR_BOUCLE (parce que là, j'ai peur de faire une bêtise). Antoine, je suppose que tu n'auras pas de mal à le faire?

Amicalement,
ARNO*

Salut,

Je télécharge une version beta 17.

Pas de nouveautés spectaculaires, mais j'ai complété l'aide en ligne (d'où des modifs sur de nombreux fichiers).

-> Pour moi, toute la partie "/ecrire" est mature: je ne prévois plus d'y intégrer d'autres fonctions/modifs avant la release 1.0. Si j'y interviens, à priori, ce sera uniquement pour des corrections mineures. (La succession folle de versions ces derniers jours, ça devrait donc se calmer.) Si Antoine débusque les derniers problèmes et qu'un certain nombre de participants à SPIP testent tout le bazar, je crois qu'on arrivera à la version 1.0 officieuse (l'officielle, ce sera pour quand on aura les docs qui vont bien...)

-> L'aide en ligne me semble complète. Je vois plus trop quoi y ajouter. Y'a guère que la partie "Rédacteurs" qui ne fasse pas l'objet d'une rubrique, mais ça me semble tellement simple...

-> Dans "modifier l'interface" j'ai ajouté la possibilité de désactiver le survol dans la barre de navigation supérieure.

-> Pour préparer la release officielle, il reste donc:

(1) à réaliser une documentation ad hoc dans uZine. Le gros du travail a été fait avec l'aide en ligne, inutile d'en refaire une version dans uZine. Il faut que je transfère et complète la documentation sur les boucles dans uZine.

(2) à faire un squelette très propre.

Salut,

Légère modification dans la beta 17:
inc-calcul.php3

De façon à ce que {doublons} fonctionne dans les boucles (HIERARCHIE).

Amicalement,
ARNO*