Project

General

Profile

Créer un module dans SITools3/ extjs 4 "sencha"

1 - Ou mettre les fichiers

  1. Le fichier html de la page est a déposé dans le dossier : workspace/client-public-3.0/html/
  2. 3 fichiers js à déposer respectivement dans:
    • client-user-3.0/app/modules/
    • client-user-3.0/app/controller/modules/<nouveau dossier> (exemple nouveau dossier projectDescription)
    • client-user-3.0/app/view/modules/<nouveau dossier>(exemple nouveau dossier projectDescription)

2- Contenus des 3 fichiers Javascript

La structure du fichier Javascript a changé par comparaison à  Sitools2
  1. Structure du fichier js sous client-user-3.0/app/modules/
    
    Ext.namespace('sitools.user.modules.FILE');
    /**
     * @param activeNode
     *            the node to activate
     */
    Ext.define('sitools.user.modules.FILE', {
        extend : 'sitools.user.core.Module',
    
        controllers : ['sitools.user.controller.modules.NEW_CONTROLLE_RFOLDER.CONTROLLER_FILE'],
    
        init : function () {
            var project = Ext.getStore('ProjectStore').getProject();
            Ext.Ajax.request({
                method : "GET",
                url : project.get('sitoolsAttachementForUsers'), 
                success : function (response) {
                    var json = Ext.decode(response.responseText);
    
                    this.view = Ext.create('sitools.user.view.modules.NEW_VIEW_FOLDER.VIEW_FILE', {
    
                             //call html file
    
                    });
    
                    this.show(this.view);
                }, 
                failure : alertFailure, 
                scope : this
            });
        },
    
        /**
         * method called when trying to save preference
         * @returns
         */
        _getSettings : function () {
            return {
                preferencesPath : "/modules", 
                preferencesFileName : this.id
            };
        }
    });
    
    

2. Structure du fichier Javascript sous client-user-3.0/app/controller/modules/<nouveau dossier>

Ext.namespace('sitools.user.controller.modules.CONTROLLER_FILE');

Ext.define('sitools.user.controller.modules.NEW_CONTROLLER_FOLDER.CONTROLLER_FILE', {
    extend : 'Ext.app.Controller',
    alias : 'sitools.user.modules.CONTROLLER_FILE',

    views : ['modules.NEW_VIEW_FOLDER.VIEW_FILE']
});

3. Structure du fichier sous client-user-3.0/app/view/modules/<nouveau dossier>


Ext.namespace('sitools.user.view.modules.VIEW_FILE');

Ext.define('sitools.user.view.modules.NEW_VIEW_FOLDER.VIEW_FILE', {
    extend : 'Ext.panel.Panel',

    border : false,
    bodyBorder : false,

    /**
     * method called when trying to save preference
     * 
     * @returns
     */
    _getSettings : function () {
        return {
            preferencesPath : "/modules",
            preferencesFileName : this.id
        };

    }
});

Créer un module dans Client-admin

Aller dans l'interface d'administration, cliquez sur project modules, puis sur create, voir ci dessous.

Une fois appuyé sur Create, on a cette pop-up (Ex: module projectDescription).

Il faut renseigner tous les champs avec ce que l'on souhaite sauf :

  • xtype : il doit etre le meme que dans le fichier JS.
  • Icon CSS Class : c'est le nom de la classe css qui sera appliqué à la page, cette classe doit etre déclaré dans le fichier desktop.css du dossier /workspace/client-public-3.0/res/css/