Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pliage des articles #87

Closed
barmic opened this issue Mar 26, 2013 · 46 comments
Closed

Pliage des articles #87

barmic opened this issue Mar 26, 2013 · 46 comments
Assignees
Milestone

Comments

@barmic
Copy link

barmic commented Mar 26, 2013

Est-ce qu'il serait possible que les articles soient présentés sous forme "minimal" et qu'un clique dessus les déplie plutôt que de les ouvrir (en allant sur le site d'origine) ?

Pour les exemples c'est ce que l'on trouve dans google reader, dans feedly avec le mode title et dans rsslounge.

@ghost
Copy link

ghost commented May 27, 2013

On trouve cela également dans tiny tiny rss. Très pratique pour visualiser d'un coup d'oeil les titres des nouveaux flux. Avec un onglet qui s'ouvre "sur place" : permet de taguer , de le mettre dans favoris.

@ghost ghost assigned ldleman Jun 1, 2013
@cobalt74 cobalt74 modified the milestones: Version 1.7, Version 2.0 Feb 20, 2014
@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 3, 2014

@Sbgodin tu veux le prendre ou je prend ?

@Sbgodin
Copy link
Member

Sbgodin commented Mar 3, 2014

Ce serait un greffon ? Avec une façon de déplier l'article et une autre façon d'ouvrir directement l'article quelque soit son état de pliage ?

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 3, 2014

non apparemment, ce sera une nouvelle option d'affichage des articles. (mode plié)
@ldleman l'avait dans son giron donc je pense qu'il faut le faire en interne de Leed.
En gros, le plugin toggleEvent... fait la même chose mais sans le bouton pour déplier.

J'imagine une interface du style : tous les articles sont réduit & article sélectionné = article déplié avec contenu. (partiel ou complet en fct du paramétrage)

on ajoute une option ici
leed

Oui / Non / Sur l'article sélectionné

@Sbgodin
Copy link
Member

Sbgodin commented Mar 3, 2014

Il y a trois façons d'afficher un article :

  • complet (techniquement, c'est content qui est affiché)
  • partiel (description)
  • titre (title)

Selon ton message, je comprends (me corriger...) que :
1/ Si Non est sélectionné, il n'y a que le titre qui s'affiche. Rien d'autre n'est configurable.
2/ Si Oui est sélectionné, on choisit entre Partiel et Complet, comme actuellement. C'est valable pour tous les articles affichés.
3/ Si Sélection (aka Sur l'article sélectionné) est sélectionné, l'affichage se comporte comme Non partout sauf sur l'article sélectionné. Dans ce cas, pour cet article ça se passera comme pour le _Oui. C'est-à-dire qu'on on aura l'affichage des titres partout sauf pour l'article sélectionné. Celui-ci aura l'affichage partiel ou complet selon le réglage choisi.

C'est bien ça ?

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 3, 2014

Tout à fait.

@Sbgodin
Copy link
Member

Sbgodin commented Mar 3, 2014

Je prends le développement sous mon aile.

@Sbgodin Sbgodin assigned Sbgodin and unassigned ldleman Mar 3, 2014
@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 3, 2014

ok. bon ben je fais quoi du coup !! 😄
Y'a encore quelques choses pour la 1.7 ?

@Sbgodin
Copy link
Member

Sbgodin commented Mar 3, 2014

Il y aurait bien le #337.

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 3, 2014

:)

@ldleman
Copy link
Collaborator

ldleman commented Mar 3, 2014

Pourquoi ne pas simplement proposer les 3 modes dans la config pour définir le comportement "par défaut" des articles et utiliser un simple bouton pour switcher entre les trois mode sur un article particulier ?

Notez bien que ce développement ne doit jamais charger un contenu invisible et l'afficher progressivement avec un simple css/js, le but c'est de charger uniquement les infos utiles pour conserver la performance.

@Sbgodin
Copy link
Member

Sbgodin commented Mar 3, 2014

Ça veut dire que pour chaque article, il faudra avoir le titre, la description et le contenu pour pouvoir les afficher. Ou alors, il faudra qu'un XHR parte pour charger les données manquantes quand on utiliserait le bouton.
Tandis qu'avec la façon proposée, et vu que le réglage est fait dans une autre page, il n'y aura qu'à charger le titre et/ou soit le descriptif, soit le contenu.

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 3, 2014

@ldleman

  • une liste sur chaque article genre : T|P|C. (Titre/Partiel/Complet) ?
  • et on charge Partiel et Complet à la demande par ajax (si le paramètre par défaut ne l'a pas déjà fait) ?

si c'est bien ça, note : trouver des raccourcis clavier pour T|P|C

@ldleman
Copy link
Collaborator

ldleman commented Mar 3, 2014

Ça veut dire que pour chaque article, il faudra avoir le titre, la description et le contenu pour pouvoir les afficher.

Justement c'est ce que j'interdis dans mon précédent post pour des raisons de performances

Ou alors, il faudra qu'un XHR parte pour charger les données manquantes quand on utiliserait le bouton.

Oui c'est exactement ça :)

Tandis qu'avec la façon proposée, et vu que le réglage est fait dans une autre page, il n'y aura qu'à charger le titre et/ou soit le descriptif, soit le contenu.

Ça ne répondrait pas entièrement au besoin qui est de pouvoir déplier au jugé et progressivement un article parmi tous les autres (par défaut plié, semi plié ou déplié dans les configs)

une liste sur chaque article genre : T|P|C. (Titre/Partiel/Complet) ?

Plutôt un bouton unique qui respecte la chronologie de dépliement la plus naturelle (a chaque clic on déplie l'article un peu plus, arrivé
à l'article déplié en totalité on revient en mode plié complet (titre uniquement), le but étant de ne pas polluer avec trois bouton quand deux clics
supplémentaires suffisent (et on est certain qu'il n'y aura jamais bien plus de 3 vues pour un article donc qu'on ne dépassera pas les 2 clics pour arriver à la bonne vue)

et on charge Partiel et Complet à la demande par ajax (si le paramètre par défaut ne l'a pas déjà fait) ?

tout à fait

si c'est bien ça, note : trouver des raccourcis clavier pour T|P|C

C'est un bouton unique dans ma vision initiale des choses donc un raccourcis touche seulement pourrait aussi le faire

Donc je résume mon histoire...

Dans la partie config :
trois radio bouton permettant de définir la vue par défaut des articles : o plié (titre seulement) o résumé (titre +description) o déplié (titre + contenu)
Cette config définira l’état de tous les articles au chargement de la page

Sur chaque article un bouton/icône unique et bien place : un appuis sur le bouton déplie d'avantage l'article (le contenu
alors visible est chargé en ajax ET N'EST PAS PRE-CHARGE EN MÊME TEMPS QUE LA PAGE) si l'article est déplié à fond lors du clic,
il se remet en position plié.

De manière à être clair sur la fonction du bouton, ce serait bien que son icone/title change à chaque clic
Je peux bricoler un bouton dans ce sens là si vous ne vous sentez pas chaud sur l'aspect graphique/ergonomie :)

Au bullo ! coup de fouet :D

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 3, 2014

j'aime le brainstorming ! à chaque message des améliorations ! 👍 Bon ben @Sbgodin au boulo. PAF re coup de fouet ^.^

@ldleman
Copy link
Collaborator

ldleman commented Mar 3, 2014

Techniquement ce ne sont pas des améliorations mais la demande initiale, cela dit elle est vielle celle la je ne sais même pas si le projet était sur github à l'époque, je recevais les demandes par mail et comme j’étais tout seul j'en zappais pas mal.

Mais je crois que par la suite des issues semblables ont été ouvertes dans le même genre.

@ldleman
Copy link
Collaborator

ldleman commented Mar 3, 2014

Bref au boulot fouet fouet fouet

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 3, 2014

fouet 1

@Sbgodin
Copy link
Member

Sbgodin commented Mar 3, 2014

j'aurais dû lire les petites lignes avant de signer :-o

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 3, 2014

Je connais bien cette partie. si tu veux je peux me plonger dedans (tu me dis). mais c'est effectivement une grosse maj. (de beau changement) 😄

@Sbgodin
Copy link
Member

Sbgodin commented Mar 3, 2014

Mettons que je fasse la partie configuration, la persistance de la configuration et la disponibilité de l'état de la configuration pour l'affichage. @cobalt74 pourrait attaquer tout ce qui est XHR en présupposant l'état de la configuration. Ensuite on fusionne. @ldleman y ajoute sa touche artistique et hop !

Du coup, on part sur une branche foldArticles et des branches dérivées par fonctionnalités : FA/config (la mienne) et FA/request (ou autre nom, pour @cobalt74 ). Une fois que c'est bon, on fusionne dans foldArticles pour le cycle suivant si nécessaire. Une fois terminé et fonctionnel, ça fusionne dans dev, etc.

Si c'est bon pour vous, on peut commencer ainsi.

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 3, 2014

Fait la partie conf et j'enchainerai après. Je préfère avoir les options à disposition pour faire le dev. Et ça permet de ne faire qu'une branche :p (tu veux me perdre avec toutes tes branches ^.^)

@Sbgodin
Copy link
Member

Sbgodin commented Mar 3, 2014

Rhôo voilà. Okay, je fais la conf' et je passe la main ensuite.

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 6, 2014

(complet, partiel, titre, par défaut)
(cacher), ça reste une option a part car uniquement pour la page d'accueil. a séparer donc.

@Sbgodin
Copy link
Member

Sbgodin commented Mar 6, 2014

Anéfé

@Albator999
Copy link

A mon sens le plus simple est d'appliquer le choix par défaut lors de l'ajout du flux, plus de placer à côté de chaque flux 3 boutons radio dans un petit cadre. Le bouton radio est initialisé selon le choix par défaut lors de l'ajout du flux. L'utilisateur pouvant ensuite le modifier s'il le souhaite. Je ne crois qu'il y ait de plus-value à un choix "par défaut" au niveau du flux, puisque toutes les possibilités sont déjà présentes ; ce serait redondant.

Cette fonctionnalité implique une colonne supplémentaire dans la table des flux pour stocker l'option d'affichage.

@Sbgodin
Copy link
Member

Sbgodin commented Mar 6, 2014

@Albator999 d'accord, par contre le dictateur veut un seul bouton faisant passer le flux par les états possibles.

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 6, 2014

c'est plus compliqué que ça à mettre en place même si très intéressante. et ça rentre même en conflit avec ceux qu'on souhaite faire aujourd'hui.
par exemple, actuellement nous chargeons en bloc les non lus (uniquement le titre).
Demain, il faudra en fonction de chaque article, charger les données résumé ou complet. (bcp plus consommateur car devra être fait à l'unité).
La solution serait peut être de récupérer l'ensemble des informations (sql), de les stocker(objet) et de les restituer à la demande (en complet/reduit/titre). (Bien sur, ne charger coté rendu html que le nécessaire pour éviter de charger toutes les infos et surcharger les pages (option non light & kiss)

@Sbgodin
Copy link
Member

Sbgodin commented Mar 6, 2014

Cela rentre en conflit avec les désidératas du Chef. Selon son commentaire plus haut, il veut que les informations soient chargées au fur et à mesure, en ajax. Chaque article est chargé à minima, c'est-à-dire selon son mode d'affichage. Ensuite, chaque changement donne lieu au téléchargement des données manquantes si elles ne sont pas déjà là.

D'un autre côté, avec le chargement différé, il n'y a pas beaucoup d'articles présentés simultanément. Cela vaut peut être le coup de faire comme tu dis : tout charger et présenter à la demande. Ce serait surtout rentable pour les articles déjà chargés entièrement. Mais s'il ne faut présenter que les titres, ce serait une mauvaise affaire.

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 6, 2014

je pense qu' @ldleman indiquait surtout de ne pas charger le html afin de pas charger le navigateur et avoir un affichage avec des blocs cachés qui surcharge l'affichage navigateur.
je pense que charger en une seule requête les objets et bcp plus rapide que de faire une requête par article.
L'idée (a tester), c'est de faire des appels ajax qui ne vont pas prendre en BDD mais plutôt dans des variables de session par exemple.

Dans un premier temps, on va faire la partie indiqué par @ldleman c'est déjà un beau morceau

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 6, 2014

Note pour info : le plugin ToggleEventContent ne fonctionnera plus après cette évolution.

cobalt74 added a commit that referenced this issue Mar 6, 2014
…nnalité.

Affichage des articles en fonction du paramétrage dans settings.
RAF : bouton pour switcher entre les états d'affichage + appel ajax
cobalt74 added a commit that referenced this issue Mar 7, 2014
@cobalt74 cobalt74 assigned cobalt74 and unassigned Sbgodin Mar 7, 2014
@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 7, 2014

j'ai terminé le dev. Bon test !!

@Sbgodin
Copy link
Member

Sbgodin commented Mar 7, 2014

Quand j'arrive à avoir l'article réduit au titre, je n'ai plus la possibilité de cliquer sur le symbole :

symboleindisponible

Il faudrait aussi voir pour spécifier pour chaque flux son mode d'affichage par défaut, sans vouloir abuser. Un flux qui s'affiche verrait son mode indiqué par :

  • son état actuel, selon les clics de l'utilisateurs,
  • la configuration spécifique à son flux (les trois modes, plus défaut)
  • la configuration générale.

La mise à jour de la base de données supprime les variables obsolètes dans la configuration. Sauf que lorsque je reviens sur une autre branche, ces variables manquent. Je gère, ça peut surprendre, mais un tour dans la configuration comble les vides. Et, non, je ne connais pas de solution idéale ;-)

@Sbgodin Sbgodin mentioned this issue Mar 7, 2014
@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 8, 2014

ahah oui effectivement, la suppression des variables, c'est bien ça nettoie mais quand la branche est validée et intégrée. Désolé.
Je suis étonné de la première copie d'écran. Je n'ai pas le soucis.
capture decran 2014-03-08 a 08 24 04
capture decran 2014-03-08 a 08 24 28
capture decran 2014-03-08 a 08 24 40

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 8, 2014

j'ai reproduis le problème, c'est quand on part d'un paramètre par défaut en réduit.

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 8, 2014

j'ai corrigé mais du coup je viens de voir aussi que les boutons en bas ne sont pas présent quand on part d'un affichage titre/réduit vers un affichage complet. Je corrigerai tout ça ce soir. Bon week.

cobalt74 added a commit that referenced this issue Mar 8, 2014
@Sbgodin
Copy link
Member

Sbgodin commented Mar 9, 2014

J'ai testé (b5f263d) et ça marche bien. C'est bon pour moi concernant la fusion. Il faudra juste corriger/remettre l'ordre des variables.

Tu comptes implémenter la configuration du pliage par flux ou ce sera pour plus tard ?

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 9, 2014

cool.
Pour la fusion, je ferai ça sans le PR.

Pour la configuration du pliage par flux, j'aimerai que @ldleman confirme qu'il est d'accord. C'est une 2nd grosse modifs ^^

cobalt74 added a commit that referenced this issue Mar 9, 2014
* foldArticles:
  #87 - Correction d'affichage
  #87 - Chargement en ajax du content / traduction / raccoucis "j" / maj panneau d'aide
  #87 - Nettoyage des anciennes variables + mise en route de la fonctionnalité. Affichage des articles en fonction du paramétrage dans settings. RAF : bouton pour switcher entre les états d'affichage + appel ajax
  'eventDisplayMode' --> 'articleDisplayMode'
  Change les modes d'affichage des événements

Conflicts:
	install.php
@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 9, 2014

j'ai fais le merge avec résolution du conflit dans dev.

@Sbgodin
Copy link
Member

Sbgodin commented Mar 9, 2014

Ça marche bien. Merci beaucoup, ça change la vie :-)

@cobalt74
Copy link
Collaborator

cobalt74 commented Mar 9, 2014

c'était une bonne idée ! Je vais peut être me mettre à changer l'affichage par défaut en réduit ^^ au lieu de full.

@Sbgodin
Copy link
Member

Sbgodin commented Mar 9, 2014

C'est ce que j'ai fait. C'est excellentissime.

@Sbgodin
Copy link
Member

Sbgodin commented Jul 10, 2014

La fonctionnalité est implémentée et fonctionnelle. J'ai crée un ticket (#400) proposant la faculté de régler l'affichage pour chaque flux.

@Sbgodin Sbgodin closed this as completed Jul 10, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants