Forum Ametys

Forum de la communauté Ametys

You are not logged in.

#1 18/06/2014 11:49:43

frigoku
Guest
Registered: 21/02/2014
Posts: 18

Widget textarea et taille dans le back-office

Bonjour,

J'ai créé un contenu qui comprend des widgets de type "textarea" et quand j'édite mon contenu, le "table" qui contient le textarea fait 1626px de largeur.

Voici le style de l'élément :

<table role="presentation" id="ext-gen3516_tbl" class="mceLayout" cellspacing="0" cellpadding="0" style="width: 1626px; height: 393px;"><tbody><tr class="mceFirst">

Je ne trouve pas où est paramétré cet élément pour réduire la largeur à sa création (car cela sort de mon écran).

Puis-je créer directement une feuille de style qui modifie la class="mceLayout" où ça ne sera pas pris en compte dans le back-office?

Par avance Merci.

Offline

#2 18/06/2014 14:14:55

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Widget textarea et taille dans le back-office

Les "textarea" sont des textes simples multilignes.
Là je pense que vous me parlez de rich-text non ? Du coup, préciser "textarea" comme widget sur un richtext est simplement ignoré.
Le richtext prend, normalement, la largeur de la zone dans la page où on l'édite... est-ce bien le cas ?


Raphael Franchet
Expert Ametys

Offline

#3 18/06/2014 14:31:20

frigoku
Guest
Registered: 21/02/2014
Posts: 18

Re: Widget textarea et taille dans le back-office

Effectivement, il s'agit d'un rich-text. Je ne savais pas que le widget serait ignoré.

Je vous joins la capture d'écran de ce que donne l'édition de mon contenu.

On peut voir que le rich-text dépasse largement mon écran, qu'il y a un ascenseur horizontal et si je vais tout à droite, j'atteints le bord de la fenêtre du rich-text mais je ne peux pas voir le petit point d'interrogation pour la description du champ.

De plus, je n'arrive pas à réduire ce champ horizontalement via le coin prévu à cet effet en bas à droite (en vertical, tout est ok).

Offline

#4 18/06/2014 14:47:01

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Widget textarea et taille dans le back-office

Le comportement que vous m'expliquez est cohérent : quajd vous êtes sur la page, au moment où vous avez cliqué sur MODIFIER pour éditer le contenu : il relève la largeur de la zone et les rich-text se calent là dessus.

Il n'y a que 2 possibilités:
1) Soit votre zone fait aussi 1600 pixels de large et tout est cohérent
2) Soit le calcul de la largeur de votre zone est faux (principalement à cause de CSS de votre charte graphique j'imagine)

Donc aller sur l'onglet de votre page et faites une autre capture d'écran avec le contenu sélectionné pour voir


Raphael Franchet
Expert Ametys

Offline

#5 18/06/2014 15:59:15

frigoku
Guest
Registered: 21/02/2014
Posts: 18

Re: Widget textarea et taille dans le back-office

Voici la nouvelle capture d'écran. Est-ce bien ce que vous vouliez?

edit : j'ai sélectionné le texte d'une autre page car il est plus rempli mais en mode modification, j'ai le même problème avec le rich-text.

Last edited by frigoku (18/06/2014 16:01:06)

Offline

#6 18/06/2014 16:44:05

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Widget textarea et taille dans le back-office

C'est presque ce que je voulais dire. Quand je parle de sélectionner, je parle de cliquer sur la petite icone du contenu en haut à gauche de celui-ci.
Bref, dans votre charte, le contenu en visualisation mesure 1600 pixels, donc dans le but d'être wysiwyg l'éditeur se met à 1600 pixels.


Allez sur la démo ametys.org :  et ouvrez une page.
Si vous éditez un contenu de la colonne de gauche, vous aurez un petit éditeur en ligne.
Si vous éditez un contenu de la colonne centrale (même si c'est le même contenu déplacé) vous aurez un éditeur en ligne plus large.

La largeur de l'éditeur en ligne s'adapte à la largeur à laquelle il est quand on le visualise dans une page.
Dans votre capture d'écran on voit que la zone centrale fait toute la largeur de l'écran => en édition le richtext fait toute la largeur de l'écran.


Raphael Franchet
Expert Ametys

Offline

#7 19/06/2014 10:02:43

frigoku
Guest
Registered: 21/02/2014
Posts: 18

Re: Widget textarea et taille dans le back-office

Je vous remercies pour ces explications.
Du coup, est-il possible de modifier la vue du mode édition par exemple afin que les rich-text s'adaptent à 90% de la vue édition et à 100% de la zone dans laquelle on les visualise?

Autre point, Est-ce normal que je ne puisse plus modifier le rich-text en largeur une fois la taille adaptée automatiquement? Pour la hauteur, pas de problème mais la largeur, rien ne se passe.

Merci d'avance,

Offline

#8 19/06/2014 12:23:53

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Widget textarea et taille dans le back-office

Oui, c'est fait exprès que le richtext ne soit modifiable que verticalement. Le but étant de conserver une prévisualisation fidèle.

Je ne comprends pas votre remarque "est-il possible de modifier la vue du mode édition par exemple afin que les rich-text s'adaptent à 90% de la vue édition et à 100% de la zone dans laquelle on les visualise?".
Mais pour faire court, ce n'est pas l'édition qui décide de cela, mais le widget richtext, ce que vous pouvez faire si ce comportement ne vous sied pas, c'est écrire votre propre widget de richtext et l'utiliser. (ceci dit, nous utilisons celui par défaut partout et il est toujours bien allé)

Pour écrire un nouveau widget de richtext, c'est assez simple:
1) définissez un fichier JS avec cela dans un plugin

MonRichTextWidget = function (config)
{
    if (config.zoneWidth != null)
        config.width = config.zoneWidth + 26;
    if (!config.width)
        config.width = 500; // default width
    if (!config.height)
        config.height = 400; // default height

    MonRichTextWidget.superclass.constructor.call (this, config);
}
Ext.extend(MonRichTextWidget, org.ametys.widgets.RichTextWidget, {});

org.ametys.utils.Widgets.registerWidget ('rich_text', 'monrichtext', 'MonRichTextWidget');

(je vous ai mis le code du richtext par défaut dans le constructeur, à savoir, si une zoneWidth est spécifiée on l'utilise + 26 pixels)

2) dans le plugin.xml du même plugin, importez ce js dans le backoffice avec quelquechose comme

    <feature name="monrichtextwidget">
        <extensions>
            <extension id="monrichtextwidget"
                       point="org.ametys.cms.workspace.uitool.StaticFileImportsManager"
                       class="org.ametys.cms.workspace.uitool.StaticFileImportsClientSideElement">
                       
                <scripts>
                    <file>js/MonRichTextWidget.js</file>
                         </scripts>
                     </extension>
                 </extensions>
         </feature>

3) dans votre type de contenu, mettez le widget à 'monrichtext' (valeur définie dans registerWidget)

4) redémarrez pour tenir compte des modifications du plugin.xml et du type de contenu.

5) priez et testez


Raphael Franchet
Expert Ametys

Offline

Board footer

Powered by FluxBB