Chrono
Pré-requis
Installer l'extension "Chrono"
-
Télécharger le fichier chrono.zip et le décompresser.
-
Menu → Admin → Transfer In.
-
Importer le fichier JSON.
Configuration
Pour afficher le chrono et intégerer l'extension, insérer le code suivant dans l'onglet "Script JS" de la table :
$("#timer").val("00m 00s 00");
clearInterval(timerInterval);
Load_chrono(thisComponent);Exemple
function onLoad_chrono() {
var thisComponent = this;
$("#timer").val("00m 00s 00");
clearInterval(timerInterval);
Load_chrono(thisComponent);
return true;
}Résultat

vsCode
Installation
- Installez l'extension GoPaaS Script Editor depuis le store des extensions de Visual Studio Code.
- Créez un dossier avec le nom de votre application dans votre espace de travail local.
- Dans ce dossier, ajoutez un fichier
config.jsoncontenant la configuration suivante :
{
"API_ENDPOINT": "https://{application-url}/",
"BEARER_TOKEN": "{your-bearer-token}"
}
- API_ENDPOINT : URL de votre application GoPaaS.
- BEARER_TOKEN : Token d'authentification (Bearer) pour accéder à l'application GoPaaS.
Utilisation de l'Extension
-
Pour récupérer les scripts en local :
-
Dans la barre de commande de Visual Studio Code, tapez
> Pull GoPaaS Scripts JSpour télécharger tous les fichiers JavaScript de votre application GoPaaS en local.
-
-
Pour envoyer vos modifications vers GoPaaS :
-
Après avoir modifié un script, tapez
> Push GoPaaS Scripts JSdans la barre de commande pour envoyer vos modifications vers l'application GoPaaS.
-
Utiliser Git pour gérer les développements en équipe
Afin de travailler efficacement à plusieurs sur le même projet GoPaaS et éviter les conflits, il est recommandé d'utiliser un dépôt Git partagé. Voici la procédure de collaboration :
-
L'administrateur du projet :
- Utilise l'extension pour récupérer le code de GoPaaS en local.
- Initialise un dépôt Git local dans le dossier de l'application.
- Pousse le code récupéré vers un dépôt Git distant (par exemple, GitHub).
-
Les développeurs :
- Clonent le dépôt Git distant en local pour obtenir la dernière version du code.
- Travaillent sur les scripts en local et poussent sur GoPaaS pour tester.
- Une vois validé ils poussent leurs modifications vers le dépôt Git.
-
Gestion des conflits :
- Si d'autres modifications ont été faites entre-temps, GitHub proposera un Merge.
- Résoudre les éventuels conflits avant de finaliser le merge.
---
config:
theme: redux
primaryColor: '#BB2528'
---
flowchart TD
%% Groupes
subgraph Admin Team
n2["Admin"]
n3["Admin"]
end
subgraph DevOps Team
n5["DevOps"]
end
subgraph Platforms
A(["GoPaaS"])
B["VSCode"]
C["GitHub"]
end
%% Flux principal
A -->|pull all| B
B -->|Push all| C
%% Flux côté Admin/DevOps
n2 --> A
n3 --> n4(["GitHub"])
n5 --> n4
n4 -->|clone/pull| n6["VSCode"]
n6 -->|push one table| n7["GoPaaS"]
n6 -->|Push| n8["GitHub"]
%% Styles
style A color:#2962FF
style n7 color:#2962FF
style C color:#00C853
style n4 color:#00C853
style n8 color:#00C853
style Admin Team fill:#FFF9C4,stroke:#FDD835,stroke-width:2px
style DevOps Team fill:#E8F5E9,stroke:#66BB6A,stroke-width:2px
style Platforms fill:#E8F5E9,stroke:#AED581,stroke-width:2px
Exemples de Commandes Git
-
Initialiser un dépôt Git (pour l'administrateur) :
git init git add . git commit -m "Initial commit from GoPaaS" git remote add origin https://github.com/your-repo.git git push -u origin main -
Récupérer les dernières modifications du dépôt Git (pour les développeurs) :
git pull origin main -
Envoyer les modifications locales vers le dépôt Git (pour les développeurs) :
git add . git commit -m "Modifications locales" git push origin main -
Récupérer les contributions des développeurs et pousser vers GoPaaS (pour l'administrateur) :
git pull origin main # Résoudre les éventuels conflits si nécessaire > Push GoPaaS Script JS
societe.com
Description
L'extension GoPaaS SOCIETE.COM permet de récupérer des informations sur une entreprise directement depuis société.com.
Une fois installée et configurée, cette extension ajoute un bouton qui permet d'envoyer les données de la fiche de l'entreprise directement dans votre application GoPaaS. Cette extension ne fonctionne que lorsque vous êtes sur une URL au format https://www.societe.com/societe/xxxxx.html. Par exemple, depuis une page comme : https://www.societe.com/societe/nids-consulting-482064706.html.
L'extension est disponible sur le Chrome Web Store : https://chromewebstore.google.com/
Configuration
Après avoir installé l'extension, rendez-vous sur le panneau de contrôle :
Puis suivez les étapes de configuration suivantes :
-
Paramétrer les accès GoPaaS :
- Renseignez l'URL de votre instance GoPaaS.
- Ajoutez votre Bearer Token.
- Sélectionnez la table cible dans laquelle vous souhaitez stocker les informations récupérées.
-
Réaliser le mapping des champs :
- Associez les champs correspondants dans GoPaaS.
- Seuls les champs nécessaires peuvent être mappés ; vous n'êtes pas obligé de tous les mapper.
Utilisation
-
Allez sur la page société.com de l'entreprise que vous souhaitez ajouter à GoPaaS.
-
Cliquez sur le bouton Envoyer vers GoPaaS.
-
Une confirmation vous sera demandée pour vérifier si vous souhaitez créer une fiche pour cette entreprise.
-
Si vous cliquez sur Oui, la fiche est créée, et vous êtes directement redirigé vers la fiche de votre application GoPaaS, qui s'ouvre dans un nouvel onglet.
Exportation et Importation de la Configuration
Il est possible d'exporter la configuration de l'extension pour la réutiliser sur un autre poste. Cela permet aux collaborateurs d'avoir la même configuration sans avoir à la recréer manuellement. Pour cela :
- Allez dans les paramètres de l'extension.
- Exportez la configuration sous forme de fichier.
- Importez ensuite ce fichier de configuration sur un autre poste.
viewMapDirection
Prérequis
Importer le fichier "viewMapDirection.json":
-
Télécharger le fichier viewMapDirection.zip et le décompresser.
-
Menu → Admin → Transfer In.
-
Sélectionner le fichier “viewMapDirection.json”.
Paramètres
| Param | Type | Description |
|---|---|---|
| destinations | tableau | Tableau contenant les différents points sous la forme : adresse, cp, ville |
| fields | tableau | Tableau d'objets contenant divers paramètres : cle (cle de la fiche, obligatoire) markerColor (couleur du point en hexadicimal, obligatoire) Titre (titre de l'information, optionnel) Valeur (valeur de l'information, optionnel) Exemple : "cle" : "20240301_nids", "markerColor" : "FF0000", "Entreprise" : "NiDS CONSULTING", "Contact" : "Francis" ... |
| tableName | string | Nom de la table |
Exemple
Pour afficher le bouton "Afficher sur une carte" et intégerer l'extension, insérer le code suivant dans l'onglet "Script JS" de la vue et/ou de la vue liée :
thisComponent.ui.find(".glyphicon-search").after("<button id='btnShowMap' type='button' role='button' class='btn btn-info' style='margin-left:5px; color:white;' title='Afficher sur une carte'><i class='fas fa-map-marker-alt'></i> <span class='trn'>Afficher sur une carte</span></button>");
thisComponent.ui.find("#btnShowMap").on('click', async function(){
destinations = [];
fields = [];
tableName = "actions";
$.get('webservice/view/list-item.php', {
"tableName": "actions",
"viewName": "LinkVisiteActions",
"filter_value": itemComponent.getValue("cle")
}).done(function (items) {
for(let i = 0; i < items.rows.length; i++){
fields.push({"cle" : items.rows[i].cle, "markerColor" : items.rows[i].code_couleur, "Entreprise": items.rows[i].nom_entreprise, "Ville": items.rows[i].ville, "CP": items.rows[i].cp, "Contact": items.rows[i].prenom + ' ' + items.rows[i].nom + ' ' + items.rows[i].telephone, "RDV" : gopaas.date.toFr(items.rows[i].date_debut) + ' à ' + items.rows[i].heure_debut});
var concat = items.rows[i].adresse + ", " + items.rows[i].ville + ", " + items.rows[i].cp;
destinations.push(concat.toString());
}
viewMapDirection(destinations, fields, tableName);
});
});Résultat

N'hésitez pas à ajuster ces informations en fonction de votre cas d'utilisation spécifique.
L'extension est modifiable, vous pouvez l'adapter à vos besoins.
viewImageGallery
Prérequis
Installer l'extension "viewImageGallery"
-
Télécharger le fichier viewImageGallery.zip et le décompresser.
-
Menu → Admin → Transfer In.
-
Sélectionner le fichier “viewImageGallery.json”.
Paramètres
| Param | Type | Description |
|---|---|---|
| tableName | string | Nom de la table |
| viewName | string | Nom de la vue liée |
| columnName | string | Nom du champ contenant la photo |
Exemple
Pour afficher le bouton "Afficher les photos dans la galerie" et intégerer l'extension, insérer le code suivant dans l'onglet "Script JS" de la vue liée :
thisComponent.ui.find(".glyphicon-search").after("<button id='btnShowGallery' type='button' role='button' class='btn btn-ajouter' style='margin-left:5px; background-color:#296294; color:white;' title='Afficher les photos dans la galerie'><i class='fas fa-images'></i> <span class='trn'>Afficher les photos dans la galerie</span></button>");
thisComponent.ui.find("#btnShowGallery").on("click", function() {
var imageGallery_options = {
tableName : "tableName",
viewName : "viewName",
columnName : "columnName"
};
viewImageGallery(itemComponent, imageGallery_options);
});Résultat

Le champ contenant la photo doit être ajouter dans la vue liée. Le champ contenant la photo peut être du type image ou fichier.
viewExtractPDF
Prérequis
Importer le fichier "viewExtractPDF.json":
-
Télécharger le fichier viewExtractPDF.zip et le décompresser.
-
Menu → Admin → Transfer In.
-
Sélectionner le fichier “viewExtractPDF.json”.
Paramètres
| Param | Type | Description |
|---|---|---|
| tableName | string | Nom de la table dans laquelle enregistrer les informations extraites |
| pjFieldName | string | Nom du champ de type fichier |
| fieldName | string | Noms du champ dans lequel stocker les informations extraites |
| page | float | Numéro de la page ou se situe les informations |
| coord | objet | Contient les coordonnées de l'élément recherché |
| x_min | float | Valeur définissant la position horizontale minimale de l'élément recherché |
| x_max | float | Valeur définissant la position horizontale maximale de l'élément recherché |
| y_min | float | Valeur définissant la position verticale minimale de l'élément recherché |
| y_max | float | Valeur définissant la position verticale maximale de l'élément recherché |
Mode debug
Le mode debug permet aux administrateurs de récupérer les valeurs de la position horizontale et verticale d'un élément contenu dans un fichier PDF en réalisant une recherche par mot-clé.
Pour passer en mode debug, le paramètre "debug" doit être renseigné à "true" :
let debug = true;
viewExtractPDF(options, async function(data){}, debug);

Exemple
Pour afficher le bouton "ExtractPDF" et intégerer l'extension, insérer le code suivant dans l'onglet "Script JS" de la vue :
var viewbar = Component.find("Viewbar", this);
let debug = false;
viewbar.addTool("<span><i class='fas fa-file-pdf'></i> ExtractPDF</span>", function(){
let options = {
tableName : "file",
pjFieldName : "fichier",
values : [
{
fieldName : "reference",
page : 1,
coord : {
x_min : 66,
x_max : 76,
y_min : 682,
y_max : 687
}
},
{
fieldName : "adresse_sinistre",
page : 3,
coord : {
x_min : 147,
x_max : 157,
y_min : 659,
y_max : 664
}
}
]
};
viewExtractPDF(options, function(callback){
console.log(callback);
}, debug);
});Résultat

itemAddButton
Prérequis
Installer l'extension "itemAddButton"
-
Télécharger le fichier itemAddButton.zip et le décompresser.
-
Menu → Admin → Transfer In.
-
Sélectionner le fichier “itemAddButton.json”.
Paramètres
| Param | Type | Description |
|---|---|---|
| id | string | id du bouton |
| position | string | Position du bouton : "right", "top", "bottom", "connection", "section" et "tools" |
| elementId | string | id de l'élément parent du bouton |
| icon | string | Icône font-awesome du bouton |
| style | string | Style du bouton : "primary", "success", "danger", "warning" et "info" |
| label | string | Titre du bouton |
| function | string | Fonction à exécuter sur le clic du bouton |
| col | int | Index de la class "col-sm" du conteneur parent de l'élément qui a pour id "elementId" |
Exemple
Pour ajouter des boutons sur des champs de la fiche et intégerer l'extension, insérer le code suivant dans l'onglet "Script JS" de la table :
let thisComponent = this;
let buttons = [
{id: "button_1", position: "top", elementId: "type_compte", icon: "fas fa-users", style: "primary", label: "Bouton 1", function: "nom_fonction1()", col : 9},
{id: "button_2", position: "connection", elementId: "societe_mere", icon: "fas fa-users", function: "nom_fonction2()"},
{id: "button_3", position: "tools", icon: "fas fa-users", style: "warning", label: "Bouton 3", function: "nom_fonction3()"},
{id: "button_4", position: "section", elementId: "section_1339", icon: "fas fa-users", style: "info", label: "Bouton 4", function: "nom_fonction4()"},
{id: "button_5", position: "right", elementId: "email", icon: "fas fa-users", style: "danger", label: "Bouton 5", function: "nom_fonction5()", col : 9},
{id: "button_6", position: "bottom", elementId: "siret", icon: "fas fa-users", style: "success", label: "Bouton 6", function: "nom_fonction6()", col : 9}
];
itemAddButton(thisComponent, buttons);
Pour ajouter des boutons sur une vue liée, insérer le code suivant dans l'onglet "Script JS" de la vue liée :
let thisComponent = this;
let buttons = [
{id : "button_7", position : "view", elementId : "LinkCompteFile", style : "primary", icon : "fas fa-users", label : "Bouton 7"}
];
itemAddButton(thisComponent, buttons);Résultat

N'hésitez pas à ajuster ces informations en fonction de votre cas d'utilisation spécifique.
L'extension est modifiable, vous pouvez l'adapter à vos besoins.
dropFile
Pré-requis
Installer l'extension "dropfile"
-
Télécharger le fichier dropfile.zip et le décompresser.
-
Menu → Admin → Transfer In.
-
Sélectionner le fichier “dropfile.json”.
Paramètres
| Param | Type | Description |
|---|---|---|
| tableName | string | Nom de la table |
| fieldName | string | Nom du champ de type "Fichier" à utiliser |
| fileName | string | Nom du champ de type "Texte" à utiliser pour enregistrer le nom du fichier |
| imageSize | object | Redimensionnement maximum des images (longueur, largeur) en pixel (option) |
| fieldConnection | string | Nom de la "connexion" à utiliser dans le cas d'une vue liée (option) |
| trigItemName | string | Clé de la fiche parent dans le cas d'une vue liée (option) |
| update | object | Mise à jour des autres champs de la fiche |
Exemple
Pour afficher le bouton "Ajouter des fichiers" et intégerer l'extension, insérer le code suivant dans l'onglet
"Script JS" de la vue liée :
function onLoad_view[VIEW_ID](){
let thisComponent = this;
let itemComponent = Component.find("Item",this);
thisComponent.ui.find('.glyphicon-search').after("<button id='btnDragNDrop' style='margin-left: 5px' class='btn btn-primary'>Ajouter des fichiers</button>");
thisComponent.ui.find('#btnDragNDrop').on('click', function() {
let object = {
tableName : "file",
fileName : "nom_fichier",
fieldName : "fichier",
fieldConnection : "compte",
trigItemName : itemComponent.getValue("cle"),
imageSize : {width : 1920, height : 1080}
};
let update = {type : "En attente"};
dropfile(thisComponent, object, update);
});
return true;
}Résultat

N'hésitez pas à ajuster ces informations en fonction de votre cas d'utilisation spécifique.*
L'extension est modifiable, vous pouvez l'adapter à vos besoins.*