LSobject / customAction : Added noConfirmation parameter
authorBenjamin Renard <brenard@easter-eggs.com>
Wed, 6 Jul 2011 13:53:51 +0000 (15:53 +0200)
committerBenjamin Renard <brenard@easter-eggs.com>
Wed, 6 Jul 2011 13:53:51 +0000 (15:53 +0200)
doc/conf/LSobject/customActions.docbook
public_html/custom_action.php
public_html/includes/js/LSview.js
public_html/view.php

index 06a9537..43baa4e 100644 (file)
@@ -13,6 +13,7 @@
     'question_format' => '[LSformat de la question de confirmation]',
     'onSuccessMsgFormat' => '[LSformat du message à afficher en cas de succès de l'action]',
     'disableOnSuccessMsg' => '[booléen]',
+    'noConfirmation' => '[booléen]',
     'rights' => array(
       'LSprofile1',
       'LSprofile2',
 </varlistentry>
 
 <varlistentry>
+  <term>noConfirmation</term>
+  <listitem>
+    <simpara>Booléen permetant de désactiver la confirmation de l'exécution de
+    l'action.</simpara>
+  </listitem>
+</varlistentry>
+
+<varlistentry>
   <term>rights</term>
   <listitem>
     <simpara>Tableau contenant la liste des noms des &LSprofiles; ayant le droit
index f1e3dc3..20f8234 100644 (file)
@@ -38,7 +38,7 @@ if(LSsession :: startLSsession()) {
               else {
                 $title=__($_GET['customAction']);
               }
-              if (isset($_GET['valid'])) {
+              if (isset($_GET['valid']) || $config['noConfirmation']) {
                 $objectname=$object -> getDisplayName();
                 $GLOBALS['Smarty'] -> assign('pagetitle',$title.' : '.$objectname);
                 if ($config['function']($object)) {
index 2b850a3..bb7eb7e 100644 (file)
@@ -101,6 +101,9 @@ var LSview = new Class({
     },
 
     onCustomActionBtnClick: function(event,a) {
+      if (a.hasClass('LScustomActions_noConfirmation')) {
+        return true;
+      }
       Event(event).stop();
       if (!this._confirmBoxOpen) {
         this._confirmBoxOpen = 1;
index b5be65a..ce68a81 100644 (file)
@@ -71,7 +71,7 @@ if(LSsession :: startLSsession()) {
                     'label' => ((isset($config['label']))?__($config['label']):__($name)),
                     'url' => 'custom_action.php?LSobject='.$LSobject.'&amp;dn='.$dn.'&amp;customAction='.$name,
                     'action' => ((isset($config['icon']))?$config['icon']:'generate'),
-                    'class' => 'LScustomActions'
+                    'class' => 'LScustomActions'.(($config['noConfirmation'])?' LScustomActions_noConfirmation':'')
                   );
                 }
               }