SP:Composant:SiteClient
De Hegyd Doc.
(→Fonctions utiles) |
(→Fonctions utiles) |
||
| Ligne 61 : | Ligne 61 : | ||
Liste des fonctions utiles lié aux site Client: | Liste des fonctions utiles lié aux site Client: | ||
| - | * '''SiteClient::getInstance()''': permet d'accéder au siteCLient actuel. L'instance est crée à partir de la méthode | + | * '''SiteClient::getInstance()''': permet d'accéder au siteCLient actuel. L'instance est crée à partir de la méthode ''getById()'' ou ''getByURL()''. Passer false en second argument lors de l'appel à ses fonctions permet de ne pas enregistrer le site ciblé en tant que site courant. |
* '''accesseurs''': en plus de la récupération directe des attributs par le biais de $siteInstance->attribut, des fonctions accesseurs permettent directement de récupérer le thème, la palette de couleur ou encore le modele du site. Elles sont de la forme get{type} bien souvent, et renvoient directement la bonne valeur (brouillon s'il existe et que l'on est en mode éditeur, la valeur de prod sinon). | * '''accesseurs''': en plus de la récupération directe des attributs par le biais de $siteInstance->attribut, des fonctions accesseurs permettent directement de récupérer le thème, la palette de couleur ou encore le modele du site. Elles sont de la forme get{type} bien souvent, et renvoient directement la bonne valeur (brouillon s'il existe et que l'on est en mode éditeur, la valeur de prod sinon). | ||
* '''deleteContent()''': supprimer tout le contenu d'un site. | * '''deleteContent()''': supprimer tout le contenu d'un site. | ||
Version du 7 juillet 2010 à 07:34
Sommaire |
SiteClient
Désigne un site crée par l'éditeur.
Implémentation
Base de données
Chaque siteClient est enregistré dans la table siteClient.
Classe associée
La classe SiteClient est associée a l'entité.
Packages associés
Chaque site est associé a un package, qui détermine les fonctionnalités du site. Les options de packages sont déterminées hors du champ de l'application.
Cela se traduit par la passage d'options, de l'espace de stockage alloué, et du nombre de page autorisé.
Chacun de ces paramètres est enregistré dans la table dans les champs associés:
- siteNbPage: nombre de page du site
- siteOptions: champ de forme bitfield comprenant les options. La liste exhaustive est décrite au sein de la classe SiteClient.
- siteSpace: espace disque alloué
Sites de démo
Des sites de démo peuvent être crées pour des clients ou prospects qui souhaiteraient tester l'éditeur.
Les demandes d'allocation, de désallocation, de passage en mdoe transfert, et de confirmation/annulation du transfert vers une offre payante sont faite par le service VIADUC, via l'API. Ce scindage permet une modularité dans la gestion des sites de démo: choix du nombre de jours alloués pour les sites de démo, des packages etc...
A chaque demande d'allocation d'un nouveau site démo, le système va vérifier s'il n'existe pas un site de démo disponible. Si c'est le cas, alors il renvoit l'identifiant du site disponible, sinon il en crée un nouveau.
Voici le shéma de fonctionnement d'assignation de sites de démo :
Une fois la période de démo terminée, deux cas d'utilisations:
- la période d'essai est prolongée, il ne se passe rien.
- la période d'essai se termine, et dans ce cas il y a désallocation du site: le site est réinitialisé, et passe en status libre.
- le client souhaite passer a une offre packagé :
- si il passe en mode 'free' (loffre de base gratuite), on réinitialise son site, mais il garde le meme site.
- sinon on lui propose de garder son site en l'état ou le réinitialiser
- dans tous les cas, le site passe du statut de compte de démo en site packagé, il ne sera plus éligible pour une demande de site de démo.
Un champ est associé aux sites de démo demoStatus de la table siteClient, dont voici le tableau de valeurs :
- 0: n'est pas un site de démo
- 1: est un site de démo, est libre
- 2: est un site de démo, actuellement occupé
- 3: est un site de démo en attente de transition vers un site packagés, avec conservation du contenu
- 4: est un site de démo en attente de transition vers un site packagé, sans conservatino du contenu
Un second champ demoExpirationUts contient l' UTS d'expiration de la version de démo. Ce champ est utilisé seulement pour afficher lenombre de jours restant au client. Il n'y a pas de controle sur sa valeur. Il est mis a jour a chaque connexion de l'utilisateur sur sa console d'édition.
Fonctions utiles
Liste des fonctions utiles lié aux site Client:
- SiteClient::getInstance(): permet d'accéder au siteCLient actuel. L'instance est crée à partir de la méthode getById() ou getByURL(). Passer false en second argument lors de l'appel à ses fonctions permet de ne pas enregistrer le site ciblé en tant que site courant.
- accesseurs: en plus de la récupération directe des attributs par le biais de $siteInstance->attribut, des fonctions accesseurs permettent directement de récupérer le thème, la palette de couleur ou encore le modele du site. Elles sont de la forme get{type} bien souvent, et renvoient directement la bonne valeur (brouillon s'il existe et que l'on est en mode éditeur, la valeur de prod sinon).
- deleteContent(): supprimer tout le contenu d'un site.
- delete(): supprime un site dans son ensemble
- reInit(): réinitialise un site: suppression du contenu, des styles, sans supprimer le site en lui meme
- restoreTo(): copie le site courant vers une autre base de données
- deployFromSite(): supprime le contenu d'un site et le remplace par celui d'un autre. Utile pour la création de contenu dans le cadre du déploiement d'un métier.
- changeThemeDraft(): change le theme pour la version brouillon du site.
- changeColorPaletteDraft(): change la palette de couleur pour la version brouillon du site.
- publishContent(): publie le contenu du site.
- cancelEditContent(): annule les modifications apportées au site.
- publishStyles(): publie les modifications de style apportées au site.

