WeeMake
  • Introduction
  • Objets
    • Designer vos Objets
      • Mise en forme du nom des objets en fonction de conditions
      • Ajouter un attribut calculé de type texte
    • Travailler avec vos Objets
    • Utilisation Avancée
  • Affaires
    • Vos premiers pas avec les Affaires
    • Designer vos Affaires
    • Travailler avec vos Affaires
    • Utilisation Avancée
  • Extranet
    • Vos premiers pas avec l'Extranet
    • Designer votre Extranet
    • Ouvrez votre extranet à vos clients
    • Personnalisation avancée
  • Document
    • Vos premiers pas dans la génération de documents
    • Designer vos documents
    • Générez vos documents avec vos données
  • WeeMake
    • Intégration Biwee
    • Page d'accueil
    • Personnalisez votre Menu
    • Filtres enregistrés
    • Alertes Email
  • Administration de WeeMake
    • Utilisateurs et droits
    • Configuration
  • Fonctions avancées
    • Configurez l'envoi d'email
    • API REST
    • Imports CSV/Excel
    • Formules de date
    • Formules Weemake
    • Module Weecode
      • Automates sur déclencheurs
      • CSS et Javascript customisé
      • Fonctions PHP
  • Import par fichier CSV
    • Prérequis pour effectuer des imports de données dans WeeMake
    • Modification des paramètres régionaux dans WINDOWS
    • Règles pour alimenter le fichier CSV
    • Étapes pour importer en masse des données dans WeeMake avec EXCEL
    • Étapes pour importer en masse des données dans WeeMake avec OPEN OFFICE / LIBRE OFFICE
  • API Rest WeeMake
  • BIWEE et WEEMAKE
    • Afficher un tableau de bord dans WeeMake
  • CHANGELOG
    • V1.5.0
    • V1.4.2
    • V1.4.1
    • V1.4.0
    • v1.3.2
    • v1.3.1
    • v1.3.0
Powered by GitBook
On this page
  • Exemple de CSS customisé
  • Exemple de Javascript customisé

Was this helpful?

  1. Fonctions avancées
  2. Module Weecode

CSS et Javascript customisé

PreviousAutomates sur déclencheursNextFonctions PHP

Last updated 8 months ago

Was this helpful?

Vous pouvez personnaliser encore plus votre application en ajoutant du CSS customisé ou du javascript personnalisé.

Pour ajouter du CSS ou du javascript, il faut aller dans la roue crantée -> Configuration -> Général -> Avancé.

Exemple de CSS customisé

Par exemple, vous souhaitez changer la couleur du bandeau de menu en haut de l'application.

Pour cela, ajoutez des commandes CSS dans la partie CSS customisé. Le code sera le suivant :

.navbar { background-color: #4c208c;  }
.navbar-default .navbar-nav > .active > a {background-color:#1e1026}
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {background-color: #491760}

Exemple de Javascript customisé

Grâce au Javascript customisé, vous pouvez par exmple ajouter un plan google maps dans vos objets qui contiennent un champ adresse.

Vous pouvez le faire via un ajout de bouton qui ouvre googlemaps dans un autre onglet avec le code suivant :

if ($('.object_entity_view .main-info .attr_adresse').length) { // si un attribut nommé adresse est présent dans la fiche de détail d'un objet
    var adresse = $('.object_entity_view .main-info .attr_adresse .value-container').text().replace(/(\r\n|\n|\r)/gm, " ");
  
    if (adresse) {
        // Créer le nouveau bouton
        var googleMapsButton = document.createElement('a');
        googleMapsButton.className = 'btn btn-info btn-right';  // Classes Bootstrap pour le style
        googleMapsButton.href = 'https://www.google.com/maps?q=' + encodeURI(adresse);  // Lien Google Maps
        googleMapsButton.title = 'Généré via du JS LowCode';
        googleMapsButton.target = '_blank';  // Ouvrir dans un nouvel onglet
        googleMapsButton.innerHTML = '<span class="glyphicon glyphicon-map-marker" aria-hidden="true"></span><span> Voir dans Google Maps</span>';  // Contenu HTML du bouton

        // Insérer le bouton dans la section souhaitée
        $(googleMapsButton).insertAfter('.panel-heading a.btn-success[href*="/edit/"]');
    }
}

if ($('body').hasClass('object_entity_view')) {
    // Vérifie que l'on est bien sur une page de détail d'un objet
    document.addEventListener('DOMContentLoaded', function() {
        $('.panel-heading a[href*=object_entity_]').each(function() {
            var panel = $(this).parents('.panel');
            var regex = /(object_entity[^/]+)/gm;
            var m = regex.exec($(this).attr('href'));
            if (m) {
                m.forEach((match, groupIndex) => {
                    $(panel).addClass(match);
                });
            }
        });
    });
}

Ce code permettra d'affiche un bouton "Voir dans google Maps" sur tous les objets qui contiennent un attribut adresse.

Vous pouvez également le faire en incorporant dans la page Googlemaps avec le code suivant :

if ($('.object_entity_view .main-info .attr_adresse').length) { //si un attribut nommé adresse est présent dans la fiche de détail d'un objet
  var adresse = $('.object_entity_view .main-info .attr_adresse .value-container').text().replace(/(\r\n|\n|\r)/gm, " ");
  
   if (adresse) {
    // Créer le nouveau bouton
    var googleMapsButton = document.createElement('a');
    googleMapsButton.className = 'btn btn-info btn-right';  // Classes Bootstrap pour le style
    googleMapsButton.href = 'https://www.google.com/maps?q='+encodeURI(adresse);  // Lien Google Maps
    googleMapsButton.title = 'Généré via du JS LowCode';
    googleMapsButton.target = '_blank';  // Ouvrir dans un nouvel onglet
    googleMapsButton.innerHTML = '<span class="glyphicon glyphicon-map-marker" aria-hidden="true"></span><span> Voir dans Google Maps</span>';  // Contenu HTML du bouton

    // Insérer le plan google maps dans la section souhaitée

     
     $('<div class="col-xs-12 col-sm-12 col-md-4 col-lg-6"><div class="panel panel-default">\
  <div class="panel-heading"><span class="glyphicon glyphicon-map-marker" aria-hidden="true"></span> Google Maps</div>\
  <div class="panel-body" style="padding: 0;">\
    <iframe src="'+googleMapsButton.href+'&output=embed" class="iframe" style="width: 100%; height: 100%; border: none;"></iframe>\
  </div>\
</div></div>').insertAfter('.object_entity_view .main-info');
     
 
    
  }
}
if ($('body').hasClass('object_entity_view')) {
  //on est sur une page de détail d'un objet
  document.addEventListener('DOMContentLoaded', function() {
      $('.panel-heading a[href*=object_entity_]').each(function() {
          var panel = $(this).parents('.panel');
          var regex = /(object_entity[^/]+)/gm;
          var m = regex.exec($(this).attr('href'));
          if (m) {
            m.forEach((match, groupIndex) => {
                $(panel).addClass(match);
            });
          }
      });
  });
}