CMS Automne

Forum de la communauté du CMS Automne
Nous sommes actuellement le Sam Nov 23, 2024 7:42 pm

Le fuseau horaire est UTC [Heure d’été]




Publier un nouveau sujet Répondre au sujet  [ 4 messages ] 
Auteur Message
MessagePublié: Ven Mars 13, 2009 7:48 pm 
Hors-ligne

Inscrit(e) le : Ven Fév 16, 2007 12:11 am
Message(s) : 25
Bonjour Sébastien,

Je m'occupe d'un site qui tourne actuellement sous Typo3 et j'étudie la possibilité de basculer l'ensemble sur Automne 4.

Pour pouvoir réaliser un prototype, j'ai besoin de comprendre vers quelles tables/champs je dois transférer mes contenus et quelles règles respecter pour importer proprement, dans Automne 4, la structure et le contenu de mes pages (plusieurs milliers).

Comment puis-je accéder à ces informations indispensables ? Existe t-il des documents qui pourraient m'être transmis ?

Citer:
Premiers éléments de réponse de Sébastien :

Ce que vous souhaitez faire n'a jamais été réalisé jusqu'à présent à ma connaissance et nous serions évidemment intéressé d'en connaître la faisabilité.

Ceci étant dit, la tâche ne me semble pas particulièrement aisée.
Deux raisons à cela :
- la structure de base de données d'Automne est assez conséquente.
- la documentation est assez sporadique à l'heure actuelle. Cela va changer car nous allons documenter Automne au maximum d'ici la sortie de la version finale (prévue pour mi-2009) mais d'ici là, vous n'aurez pas grand chose pour vous aider à ce sujet.

Je vous déconseille fortement d'attaquer cela directement au niveau de la base de données car le nombre de tables impliquées et le nombre de liaisons entre elles rendra délicat votre travail et les scripts que vous pourrez créer n'auront qu'une durée de vie minime car la structure de base évolue avec les mises à jour.

Il serait plus judicieux de le faire au niveau objet de PHP directement mais cela reste un travail très lourd.

Pour vous donner un aperçu rapide, voila une description sommaire de la notion technique de page dans Automne :

Une page (table pages) est constituées de propriétés (tables pagesBaseData_*), d'un modèle (table pageTemplates) clone du modèle original (table pageTemplates).
Ce modèle possède des espaces clients (fichier XML dans /automne/templates). Ces espaces clients comportent des rangées (tables mod_standard_clientSpaces_*) prises à partir de la bibliothèque de rangées (table mod_standard_rows + fichiers XML dans /automne/templates/rows).
Enfin les différentes rangées présentes dans les espaces clients du modèle de la page contiennent des blocks de contenu (tables block*_*)

Les différentes tables comportant des * ci-dessus sont des tables soumises au processus de validation. Leurs données peuvent se trouver dans différents états (edited au minimum, edited et public si la page est publique). Le statut de ce processus de validation est contrôle par ce que nous appelons une ressource (tables resources et resourceStatuses).

Enfin, la page est liées à d'autres pages à travers l'arborescence (tables linx_tree_*).

Voila de façon très courte ce qu'il va falloir que vous reconstituez au minimum lors de votre migration.

Pour essayer de comprendre au mieux le processus de création d'une page, je vous recommande de regarder le fichier /automne/admin/page-controler.php (action creation). Cela vous donnera les opérations effectuées à la création d'une page. Le reste de ce fichier vous donnera les autres opérations courantes effectuées sur les pages depuis l'administration d'Automne.

Vous pouvez aussi regarder le fichier /automne/admin/page-content-controler.php qui lui se charge des opérations sur le contenu même des pages.


Haut
 Profil  
 
MessagePublié: Sam Mars 14, 2009 3:39 pm 
Hors-ligne

Inscrit(e) le : Ven Fév 16, 2007 12:11 am
Message(s) : 25
Sébastien a écrit:
Je vous déconseille fortement d'attaquer cela directement au niveau de la base de données car le nombre de tables impliquées et le nombre de liaisons entre elles rendra délicat votre travail et les scripts que vous pourrez créer n'auront qu'une durée de vie minime car la structure de base évolue avec les mises à jour.

Il serait plus judicieux de le faire au niveau objet de PHP directement mais cela reste un travail très lourd.


D'accord avec ces arguments... J'ai donc exploré le code en partant des indications données.
Avec pas mal de sueur compte tenu de mon inexpérience en programmation orientée objet, j'arrive à voir et comprendre comment les données sont créées dans les tables d'Automne 4.
Par contre, de là a être capable d'exploiter les classes et les fonctions existantes... c'est une autre histoire, surtout avec la couche Javascript qui vient s'ajouter en interface :?.

J'ai peur que l'investissement en temps pour maîtriser tout cela sans documentation exhaustive soit un peu trop important juste pour réaliser un proto de validation. Je vais donc essayer plutôt de migrer directement mes données dans la base de données Automne car je maîtrise bien ces manipulations.

Tant pis pour la pérennité des scripts qui devront être éventuellement adaptés en cas de modification de la structure de base.


Haut
 Profil  
 
 Sujet du message: Le champs rowsDefinition_cs
MessagePublié: Dim Mars 15, 2009 12:14 pm 
Hors-ligne

Inscrit(e) le : Ven Fév 16, 2007 12:11 am
Message(s) : 25
Une petite question en passant :
Dans la table mod_standard_clientSpaces_xxx, à quoi sert le champs rowsDefinition_cs et comment est-il calculé (ou dans quel fichier/fonction) ? :?


Haut
 Profil  
 
 Sujet du message:
MessagePublié: Mar Mars 17, 2009 9:34 am 
Hors-ligne
Administrateur
Avatar de l’utilisateur

Inscrit(e) le : Mer Juin 15, 2005 8:28 am
Message(s) : 759
Localisation : Sophia Antipolis
C'est un identifiant unique permettant de faire le lien avec les champs blocks*_* (champs rowID).

Pour sa génération, n'importe quel identifiant unique fera l'affaire.


Haut
 Profil  
 
Afficher les messages publiés depuis :  Trier par  
Publier un nouveau sujet Répondre au sujet  [ 4 messages ] 

Le fuseau horaire est UTC [Heure d’été]


Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 65 invité(s)


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Recherche de:
Aller vers :  
cron
Powered by phpBB® Forum Software © phpBB Group
Traduit par Maël Soucaze et Elglobo © phpBB.fr