3 réponses
le 04 octobre 2018

création type de carte page d'accueil

Bonjour Camille,

Je regarde actuellement pour la mise en place et la création de carte personnalisé en page d'accueil.

Si je prends pour exemple les cartes existantes (PictureCard / SimpleCard / ToolboxCard). Admettons que je souhaite créer une carte ComplexeCard.

1- Je créé mon ComplexeCard.java qui est extends CardBean

2- je créé mes 3 fichiers de JSP pour l'affichage
public ComplexeCard() {
        this.view = "/WEB-INF/jsp/layout/card/fo/view/complexeCardView.jsp";
        this.viewBo = "/adminsite/layout/card/bo/view/complexeCardView.jsp";
        this.editFragment = "/adminsite/layout/card/bo/edit/complexeCardEdit.jsp";
    }

3- j'ajoute ma carte au travers de l'XML Extension contexte
<bean id="complexeCardDescription" class="com.kosmos.layout.card.util.CardDescription">
        <property name="type" value="com.univtoulouse1.cartes.ComplexeCard" />
        <property name="name" value="SITECOM.CARD.COMPLEXE_CARD.NAME" />
        <property name="description" value="SITECOM.CARD.COMPLEXE_CARD.DESCRIPTION" />
        <property name="order" value="4" />
</bean>

Puis sur mon template
<list>
        <value>com.univtoulouse1.cartes.ComplexeCard</value>
</list>


Ceci fonctionne si je reprends les mêmes variables, mêmes méthodes que les cartes existante, par contre je souhaite rajouter un champ personnalisé :

Exemple une liste déroulante autre que la liste déroulante Style

<p>
    <label for="largeur-complexecardbean" class="colonne">Mise en page</label>
    <select id="largeur-complexecardbean" name="largeur_toolbox">
        <option value="siteWidth">largeurSite</option>
        <option value="fullWidth">pleinePage</option>
    </select>
</p>

Comment faire le lien avec les get() set() enregistrer la valeur sélectionnée ? qu'est ce que fait le lien entre le nom de mes champs en front et mes méthodes dans ma class ?

Idem pour un champs supplémentaire de type Photo / input text.



Merci pour votre retour et vos explications.

Bonne journée,


Romain.







création type de carte page d'accueil

Alice ARKle 05 octobre 2018 par Alice ARK

Bonjour Romain,

Je vous invite à consulter la documentation disponible depuis la page suivante (accès restreint, utilisez vos identifiants de la communauté) : 
http://doc.ksup.org/6-0/guide-du-developpeur/developpement-sur-k-sup-v6/faq-v6/faq-v6-19733.kjsp

Vous pouvez également consulter le projet exemple qui est disponible ici : 
https://bitbucket.org/ksup/snippet-ksup/src/016cda9811d9569273d384fc8843aecb8456ab50/?at=extension%2...

Alice

création type de carte page d'accueil

Romain GOMES Romain GOMESle 09 octobre 2018 par Romain GOMES Romain GOMES

Bonjour Alice,

Merci pour ce retour, je commence à comprendre, comment ça fonctionne!

Autre question sur les cartes (où j'avais déjà échangé avec Camille) que je n'arrive pas à résoudre.

Comment afficher correctement en back office les cartes selon les rowspan que l'on choisi, mes cartes s'affichent toujours les une à la suite des autres. Camille m'avait dit :

La modification du nombre de colonnes en back-office est alors modifiable en surchargeant le fichier _utils.scss et en modifiant la variable $zen-column-count.


J'ai trouvé la variable $zen-column-count, mais dans le fichier _layout.scss
Quand je modifie (ligne 160) à 10

// siteCom layout
$zen-column-count: 10;

ce n'est pas pris en compte


Apparement meme si je fais une modif simple dans ce fichier ce n'est pas pris en compte
.layout__simple-grid--siteCom {
margin-left: 14em;  /* au lieu de 13em */

comme si mes SCSS ne sont pas compilé


Merci


Romain






création type de carte page d'accueil

Romain GOMES Romain GOMESle 10 octobre 2018 par Romain GOMES Romain GOMES

Bonjour Alice,



En fait, pour que mes modifs soient prises en compte, je suis obligé de
surcharger dans mon src/ tous les fichiers .scss et le config.rb de
l'adminsite



adminsite
    styles
        sass
            _base.scss
           _bootstrap.scss
            .
            .
            _layout.scs
            .
            .
        config.rb
        screen.css




Si je fais ma modif avec le compass watch, il me compile bien dans
screen.css et avec le maven clean package les fichiers sont déposés sur
mon local et dans le snapshot.





Avec ce scénario si des modifs sont apportées par vous dans l'adminsite
lors d'une montée de version du produit, elles ne seront jamais
appliquées dans notre projet.



Comment puis je surcharger seulement _layout.css pour changer le nombre
de colonnes en back-office pour le template "sitecom" ?



Également si je souhaite ajouter un nouveau template "siteUT1", il faut
que je modifie _layout.scss pour ajouter



// siteUT1 layout
$zen-column-count: 8;
$parent-column-count: 4;

.layout__simple-grid--siteUT1 {
  margin-left: 13.6em;

  .layout__gridSlot {
    @include zen-grid-flow-item(1);
    @extend .slot;
    display: inline-block;
  }
  @include columnSpans($zen-column-count);
  @include rowSpans(4, $slotHeight);
}



Ou alors dois je créer un fichier css séparé et je surcharge le
header.jsp de l'adminsite pour ajouter ce fichier css ?































Valider Annuler