Avancement

Une refonte partielle de l’interface a été faite. Suite aux développements récents de l’interface et de ces modules, il est apparu qu’il fallait moins mettre en avant les objets et liens et plus les fonctionnalités des modules.

Maintenant, une bonne partie des modules sont externes. Seuls sont restés internes, et donc obligatoires, les modules entités et aide. Les autres modules sont détectés via les liens et chargés si les liens sont valides et les signataires identifiés comme autorités locales. Il faut encore améliorer la détection de collision entre modules prétendants au même nom.

Nous ne sommes plus très loin d’une remise en ligne régulière du code sur le serveur de test…

Enfin, en lien avec la refonte de l’interface, l’iconographie a été revue :

add addent addlnk addobj addtxt
idownload ihlp imenu imetrolog imodify
key lc ld le lf
lk ll lll lo ls
lstent lstobj lu lx mchr
ment mmsg msglist msgsent oent
sylabe synent synlnk synobj

Voici la nouvelle interface :

20150718 sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_2db5ebfbdc6db01b5972837182275c2142d68de20fe78670a87875108e616cf7_-_2015-07-18_16.52.53
Version moyenne et haute définition.

20150718 sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_2db5ebfbdc6db01b5972837182275c2142d68de20fe78670a87875108e616cf7_-_2015-07-18_16.53.45
Version petite définition.

20150718 sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_2db5ebfbdc6db01b5972837182275c2142d68de20fe78670a87875108e616cf7_-_2015-07-18_16.54.48
Version très petite définition.

Et le menu des applications, en fait des modules :

20150718 sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_2db5ebfbdc6db01b5972837182275c2142d68de20fe78670a87875108e616cf7_-_2015-07-18_17.17.35
Le menu des applications.

Avancement

Un nouveau fond de page remplace celui assez sombre de la cascade :

bg_nuages

Le module de messagerie est un peu amélioré, c’est surtout de la cosmétique :

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_425fad5c1e9ab9806550bc1fc8abd39fe230f8214d61d98df7136bb82e130b58_-_2015-06-06_21.33.39

Il y a encore une réflexion sur la messagerie et sa façon de l’implémenter. On continue sur la façon de faire actuelle amis avec un risque de devoir changer si ça pose trop de problèmes.

Enfin, dans le module de téléchargement, une nouvelle page permet de créer un objet directement depuis un texte copié/collé :

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_30199915e30e00681c68687890937204ff4c8a6468d4209c73631671f618e71e_-_2015-06-06_21.29.39

Juste pour ça une nouvelle icône a été créée. Mais elle n’est pas satisfaisante dans l’interface :

addtxt

Cette partie pour envoyer un texte brute va surtout permettre de faire des essais pour la mise en place de la protection, c’est à dire le chiffrement, des objets. Il en faut un certain nombre sur lesquels on peut se tromper… Puis cela servira aussi à la mise en place de l’offuscation de liens, c’est à dire de leur dissimulation, lors de l’envoie de fichier. La protection et la dissimulation seront aussi appliqués sur des objets et liens existants une fois fonctionnel.

La protection des objets est déjà fonctionnelle dans la précédente version de sylabe. Cependant, la mise en place dans les objets en programmation php orientée objet n’est pas juste un copier/coller…

Nouvelles icônes et module messagerie

Il faut que sylabe serve à quelque chose… et un des premiers usages est le stockage de fichiers, sécurisé ou non. Un autre usage est la messagerie, un nouveau module est créé pour ça.

De nouvelles icônes ont été créées pour le téléchargement d’objets, l’aide en ligne et la messagerie :

idownload ihlp mmsg msglist msgsent

Voici l’écran de bienvenue :

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_b46453986901e7f084b0c7c923c89b33e1e85cf6690c04cf5525387e7039cd41_-_2015-05-28_10.33.02

Et enfin, le début de l’intégration du module de messagerie :

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_b46453986901e7f084b0c7c923c89b33e1e85cf6690c04cf5525387e7039cd41_-_2015-05-28_10.33.57

Avancement

Ce soir les avancements sont surtout cosmétiques. Il y a une nouvelle série d’icônes pour répondre aux besoins dans l’interface. Comme le chargement de fichier est fonctionnel, les icônes ont pu être nébulisées et utilisées dans l’interface via leur objets respectifs.

Le chargement de liens complets, c’est à dire signés, est fonctionnel.

L’interface intègre la page pour la création à la main de liens. Mais la moulinette de création n’est pas encore finalisée, ce n’est que de l’affichage pour l’instant.
La création de liens à la main nécessite une bonne connaissance de leur fonctionnement. Un message d’alerte s’affiche pour prévenir de cette aspect.

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_2db5ebfbdc6db01b5972837182275c2142d68de20fe78670a87875108e616cf7_-_2015-05-10_01.52.45

Avancement

L’identification et l’authentification de l’entité en cours d’utilisation se font dans la librairie nebule. Mais l’interface avec l’utilisateur pour ça est faite par sylabe, et plus particulièrement par le module de gestion des entités.

L’interface de verrouillage/déverrouillage (connexion) a été modifiée pour avoir un style plus épurée et direct tout en présentant les informations minimums vitales. Elle met aussi beaucoup plus en évidence le fond d’écran, ce qui n’est plus le cas dans les autres page qui affichent beaucoup plus de contenu.

Voici ce que cela donne lorsque l’on va pour déverrouiller son entité :

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_975571a8a470a6d975662e284f5ef1bd0396c06b31a2207b81bef2e24c5bf0c5_-_2015-03-07_17.31.46

Et on arrive tout de suite sur la fenêtre pour verrouiller l’entité :

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_975571a8a470a6d975662e284f5ef1bd0396c06b31a2207b81bef2e24c5bf0c5_-_2015-03-07_17.32.47

Enfin, en cas de problème grave avec un composant interne remettant en cause le fonctionnement sécurisé, un indicateur passe en jaune (warning) ou en rouge (erreur) :

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_975571a8a470a6d975662e284f5ef1bd0396c06b31a2207b81bef2e24c5bf0c5_-_2015-03-07_17.35.03

Avancement

Quelques captures de l’avancement de la nouvelle interface de sylabe.

Déjà des couleurs du fond de la section centrale de la page sont faites de transparence de blanc, et non plus de noir. Le contraste est meilleur avec le menu, et ça me paraît plus sympa. L’affichage a été aussi un peu épuré, il n’y a plus la barre qui affiche le module en cours, un détail sans importance pour l’utilisateur…

La première capture montre l’affichage simple d’un objet. Le menu de gauche est adapté au module en cours d’utilisation. Ici, le module d’affichage des objets se prend de la place pour lui. Mais un autre module peut aussi en ajouter, ici c’est le module des nÅ“uds qui ajoute une option pour l’objet.

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_2df1f7d23473fa0e964acc0b621c1e6bfd8160003c6a1b7d9374c6f034c6aaf4_-_2015-03-01_23.23.50
Vue de l’objet.

De même le menu de droite adopte la couleur claire. Les icônes ressortent mieux.

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_2df1f7d23473fa0e964acc0b621c1e6bfd8160003c6a1b7d9374c6f034c6aaf4_-_2015-03-01_23.24.31
Vue du menu de droite.

Dans le module des nÅ“uds, on constate que les menu de gauche est moins fourni. Ici c’est le module des objets qui s’incruste un peu.

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_2df1f7d23473fa0e964acc0b621c1e6bfd8160003c6a1b7d9374c6f034c6aaf4_-_2015-03-01_23.28.00
Vue des nœuds.

Dans cette page, si on clique sur le lien « Faire de cet objet un nÅ“ud », on l’ajoute bien aux nÅ“uds de l’entité.

sylabe_-_15d194c0ac5da323b50e868ab62c17c0a5470283c92f3d8a8631743b5cd9f42f_-_2df1f7d23473fa0e964acc0b621c1e6bfd8160003c6a1b7d9374c6f034c6aaf4_-_2015-03-01_23.28.38
Vue de l’ajout d’un objet comme nÅ“ud.

A noter en bas de la fenêtre la partie sous la barre rouge qui indique l’action réalisée, ici la création d’un lien. Le lien est représenté par son équivalent en icônes et couleurs.

Évidemment, l’action n’est possible que parce que l’entité est déverrouillée. Si ce n’est pas le cas, l’action n’est pas acceptée, et les icônes correspondantes ne sont pas affichées.

Symbologie du verrouillage/déverrouillage

La remise en forme de l’interface sylabe suivant le responsive design impose de permettre à l’interface de réduire très fortement dans son affichage. Ainsi, le lien web qui permet à l’utilisateur (entité) de se déverrouiller (se connecter, s’authentifier) ne peut plus forcément être un texte explicite de l’état de connexion et surtout de l’action du lien web. Il faut pouvoir réduire cette action à une icône unique.

On trouve souvent ce genre de lien sur les sites web : Se connecter / Créer un compte

On pourrait aussi utiliser deux icônes, une pour l’état de connexion et une pour le lien d’action. Mais cela pourrait être difficile à comprendre par un utilisateur en fait.
Une des icônes ne serait pas fonctionnelle puisqu’elle ne ferait que afficher l’état : je suis connecté.
L’autre icône serait le lien web de connexion ou déconnexion : je me déconnecte.

Il y a aussi le problème de vocabulaire. On ne parle pas sous nebule d’état connecté ou déconnecté, donc pas plus de connexion ou de déconnexion. On est verrouillé ou déverrouillé, donc on déverrouille et on verrouille, enfin son entité numérique en fait. Ce changement de sémantique traduit une différence profonde dans le sens, et ce même si on peut abusivement faire les traductions connecté/déverrouillé et déconnecté/verrouillé.
Dans la pratique, lorsque l’on consulte la page d’une entité, même si elle est verrouillée, on est connecté à cette entité. Il n’est donc pas besoin de se connecter plus avec cette entité. Par contre, tant qu’elle n’est pas déverrouillée, on ne voit de cette entité que sa partie publique. Dans ce cas, ses informations privées sont verrouillées.

Alors ? Comment doit-on afficher simplement l’état de verrouillage et l’action inverse associée ?

Un autre moyen peut être utilisé pour indiqué l’état de verrouillage. Puisque cela n’a pas à être un lien web et qu’il est peut-être inopportun d’utiliser une image, ce peut être un autre élément de décoration. Il faut quand même qu’il soit visible.
On trouve sur certains sites web, en bordure de la barre d’utilisateur en haut de page, un liseret de couleur en fonction de l’état de connexion. On peut réutiliser ce principe. Un liseret noir peut être utilisé lorsque l’entité est verrouillée, un liseret relativement visible de quelques pixels. Ce même liseret peut passer rouge dès que l’entité est déverrouillée. C’est un code couleur qu’il faut apprendre, mais il peut être imposé systématiquement quelque soit le thème de couleur de la page appliqué, et surtout il est binaire : noir ou rouge.

Reste le lien de changement d’état de verrouillage.
Doit-il être un affichage positif, c’est à dire qu’il représente l’état et non l’action (d’inversion d’état) ?
Ou doit-il être un affichage négatif, c’est à dire qu’il représente l’action et l’état (inversé) ?

Anticipation

L’interface va être un peu revue pour la rendre plus basique dans sa forme et notamment lui permettre de mieux s’afficher dans un écran de tablette voir de téléphone.
Pour cela, le menu du haut doit être simplifié. Il n’y aura plus de partie dédiée à l’objet en cours mais plutôt une partie identité en cours, une partie accolée avec des icônes du mode d’affichage et une icône pour changer de mode d’affichage.

Le fonctionnement interne va changer un peu pour intégrer des vues dans les modes d’affichages. Les modes d’affichages sont à rapprocher des applications dans le principe et devront à se titre devenir des modules activables/désactivables.
Deux modules seront présents obligatoirement, celui d’affichage des objets et celui d’authentification.
Il y aura une option possible dans l’URL, failsafe, pour ne charger que les modules validés par bachue et non ceux éventuellement validés par l’entité en cours. C’est un mode de fonctionnement dégradé mais épuré des applications annexes qui pourraient poser problème.
Il y aura aussi une option possible dans l’URL, rescue, pour ne charger que les modules minimum, c’est à dire celui-ci des objets et celui de l’authentification. C’est un mode de dépannage uniquement pour les gros problèmes. Les deux seuls modules actifs restants sont ceux intégrés par défaut avec sylabe.

Avancement

Voici de nouvelles icônes pour les modes, encore à compléter :

mchr ment mobjkey

La librairie php de nebule intègre maintenant les modifications pour la version 1.2 . L’écriture des liens se fait aussi sur l’entité signataire avec la prise en compte de la spécificité du lien de type c lors de l’écriture.

La traduction est intégralement passée sous forme de tableau. Chaque langue est implémentée dans un objet dédié avec gestion des mises à jours. Chaque langue est reconnue dans sylabe comme un module externe optionnel. Seuls les modules de langues signés par bachue ou par l’entité courante sont pris en compte.

shot-2014-05-18_23-04-23

Avancement

Quelques petits ajustements cosmétiques avec notamment une icône pour la métrologie :

imetrolog

D’autres icônes sont encore en préparation.

La grosse partie qui a pris une bonne journée, c’est la transformation du système de traduction vers un nouveau à base de tableaux. Chaque langue sera stockée dans un objet avec une référence à un titre et une image. Contrairement à ce qui était prévu, il n’y aura pas de vérification de syntaxe à la volée des fichiers de langues, ils seront pris en compte que si signés par bachue ou l’entité locale. C’est en quelque sorte une forme d’extensions optionnelles à sylabe sous contrôle de bachue.

Détournement de liens de mise à jour – suite

Suite à la réflexion de l’article Détournement de liens de mise à jour, je modifie dans le code de sylabe la vérification des paramètres pour autoriser les liens avec des ID d’objets de taille à partir de 6 octets. Cela concerne les paramètres synobj, synlnk, synunkobj, majobj, crlsrc, crldst et crlmet.