SP:Composant:BlocObjectDraft
De Hegyd Doc.
(→Implementation) |
(→Base de données) |
||
| (6 versions intermédiaires masquées) | |||
| Ligne 3 : | Ligne 3 : | ||
= BlocObjectDraft = | = BlocObjectDraft = | ||
| - | Un BlocObjectDraft est la version brouillon d'un [[SP:Composant:BlocObject|BlocObject]]. | + | Un BlocObjectDraft est la version brouillon d'un [[SP:Composant:BlocObject|BlocObject]] ([[SP:Définitions|voir le process de brouillon/publication]]). |
| + | Il peut avoir des [[SP:Composant:BlocObjectValuesDraft|valeurs]] associées. | ||
| + | |||
| + | A l'inverse du [[SP:Composant:BlocObject|BlocObject]], seul un BlocObjectDraft peut être transformé en formulaire, pour modifier ses [[SP:Composant:BlocObjectValuesDraft|valeurs]]. | ||
| + | |||
| + | Et seul le blocObjectDraft peut être publié. Un blocObject est la version publié d'un blocObjectDraft. | ||
== Implementation == | == Implementation == | ||
| Ligne 9 : | Ligne 14 : | ||
=== Base de données === | === Base de données === | ||
| - | '''BlocObjectDraftId''': | + | Table '''BlocObjectDraftId''': |
* ''blocObjectDraftId'': identifiant | * ''blocObjectDraftId'': identifiant | ||
| Ligne 22 : | Ligne 27 : | ||
* ''isDeleteable'': flag indiquant si le blocObject peut être supprimé par l'utlisateur (reprend par défaut la valeur du type de blocObject associé) | * ''isDeleteable'': flag indiquant si le blocObject peut être supprimé par l'utlisateur (reprend par défaut la valeur du type de blocObject associé) | ||
* ''activated'': flag indiquant si le blocObject est activé (visible pour l'utilisateur) (reprend par défaut la valeur du type de blocObject associé) | * ''activated'': flag indiquant si le blocObject est activé (visible pour l'utilisateur) (reprend par défaut la valeur du type de blocObject associé) | ||
| - | * ''hasValues'': indique si le blocObject peut avoir des [[SP:Composant: | + | * ''hasValues'': indique si le blocObject peut avoir des [[SP:Composant:blocObjectValuesDraft|valeurs associées]]. |
* ''predefinedContentId'': identifiant du [[SP:Composant:PredefinedContent|contenu prédéfini]] associé au blocObject, si c'est le cas. | * ''predefinedContentId'': identifiant du [[SP:Composant:PredefinedContent|contenu prédéfini]] associé au blocObject, si c'est le cas. | ||
* ''utsCreate'': date de création | * ''utsCreate'': date de création | ||
| Ligne 34 : | Ligne 39 : | ||
La classe '''BlocObjectDraft''' permet de gérer les blocObjectDraft. | La classe '''BlocObjectDraft''' permet de gérer les blocObjectDraft. | ||
| - | == | + | == Publication / Annulation == |
| + | |||
| + | === Publication === | ||
| + | |||
| + | Lors de la publication, le blocObjectDraft est transformé en blocObject: si le draft est lié a un blocObject existant, alors on remplace les infos du blocObject existant par celles du draft. Si aucun blocObject n'est lié, alors on en crée un nouveau. | ||
| + | On [[SP:Composant:blocObjectValuesDraft#Publication|publie ensuite les valeurs des champs associés]] au blocObjectDraft. | ||
| + | Le blocObjectDraft est ensuite détruit. | ||
| + | |||
| + | Voir la méthode '''publish()''' de la classe de l'objet. | ||
| + | |||
| + | |||
| + | === Annulation === | ||
| + | |||
| + | Le blocObjectdraft est détruit ainsi que [[SP:Composant:blocObjectValuesDraft#Annulation|ses valeurs]]. | ||
| - | + | Voir la méthode '''destroy()''' de la classe de l'objet. | |
Version actuelle en date du 27 juillet 2010 à 09:04
Sommaire |
[modifier] BlocObjectDraft
Un BlocObjectDraft est la version brouillon d'un BlocObject (voir le process de brouillon/publication). Il peut avoir des valeurs associées.
A l'inverse du BlocObject, seul un BlocObjectDraft peut être transformé en formulaire, pour modifier ses valeurs.
Et seul le blocObjectDraft peut être publié. Un blocObject est la version publié d'un blocObjectDraft.
[modifier] Implementation
[modifier] Base de données
Table BlocObjectDraftId:
- blocObjectDraftId: identifiant
- pageSiteClientId: identifiant de page
- position: position du blocObject parmi ceux se trouvant a l'intérieur du même bloc.
- customPosition: flag indiquant si l'object sera positionné a la main dans le code (les métas, directement intégrées dans le header), ou de façon automatique par le biais de sa position et du bloc auquel il appartient.
- typeBlocObjectId: type du blocObject (référence a l'identifiant de la table typeBlocObjectId).
- typeBlocId: bloc dans lequel se trouve le blocObject.
- interactiveEdit: autorise la modification au passage sur l'élément dans l'interface (reprend par défaut la valeur du type de blocObject associé)
- isEditable: flag indiquant si l'object est éditable par l'utilisateur (reprend par défaut la valeur du type de blocObject associé)
- isDraggable: flag indiquant si le blocObject est déplacable opar l'utilisateur (reprend par défaut la valeur du type de blocObject associé)
- isDeleteable: flag indiquant si le blocObject peut être supprimé par l'utlisateur (reprend par défaut la valeur du type de blocObject associé)
- activated: flag indiquant si le blocObject est activé (visible pour l'utilisateur) (reprend par défaut la valeur du type de blocObject associé)
- hasValues: indique si le blocObject peut avoir des valeurs associées.
- predefinedContentId: identifiant du contenu prédéfini associé au blocObject, si c'est le cas.
- utsCreate: date de création
- utsUpdate: date de modification
- utsDelete: date de suppression (non utilisé, lorsqu'un blocObject est supprimé, sa ligne en base l'est également).
- status: indique si le blocObjectDraft est en mode édition ou suppression (dans le cas d'une suppression, la publication supprimera l'objet).
- blocObjectId: dans le cas ou l'object dérive d'un blocObject (cas de modification d'un blocObject publié dans l'éditeur par exemple, voir le processus de publication).
[modifier] Classe
La classe BlocObjectDraft permet de gérer les blocObjectDraft.
[modifier] Publication / Annulation
[modifier] Publication
Lors de la publication, le blocObjectDraft est transformé en blocObject: si le draft est lié a un blocObject existant, alors on remplace les infos du blocObject existant par celles du draft. Si aucun blocObject n'est lié, alors on en crée un nouveau. On publie ensuite les valeurs des champs associés au blocObjectDraft. Le blocObjectDraft est ensuite détruit.
Voir la méthode publish() de la classe de l'objet.
[modifier] Annulation
Le blocObjectdraft est détruit ainsi que ses valeurs.
Voir la méthode destroy() de la classe de l'objet.
