noalyss-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Noalyss-commit] [noalyss] 24/29: Task #1749: Cases «Débit» dans les OD'


From: dwm
Subject: [Noalyss-commit] [noalyss] 24/29: Task #1749: Cases «Débit» dans les OD's fait remarquer si débit ou crédit
Date: Sat, 6 Jan 2024 05:59:17 -0500 (EST)

sparkyx pushed a commit to branch devel
in repository noalyss.

commit 54e3a654d88fb3ef9f1bdc16c708169c4ad7a00d
Author: sparkyx <danydb@noalyss.eu>
AuthorDate: Sat Dec 30 01:31:57 2023 +0100

    Task #1749: Cases «Débit» dans les OD's
    fait remarquer si débit ou crédit
---
 html/js/noalyss_checkbox.js        | 49 +++++++++++++++++++++++++++++++++++---
 include/class/acc_ledger.class.php |  2 +-
 2 files changed, 47 insertions(+), 4 deletions(-)

diff --git a/html/js/noalyss_checkbox.js b/html/js/noalyss_checkbox.js
index a04fa1469..80ce301ca 100644
--- a/html/js/noalyss_checkbox.js
+++ b/html/js/noalyss_checkbox.js
@@ -94,12 +94,55 @@ function activate_checkbox_range(p_range_name) {
 function activate_checkbox_side()
 {
     var aCheckBox=$$('.debit-credit')
-    aCheckBox.forEach((item)=>item.addEventListener('click',function (event) 
{display_dcside(item)}))
+    aCheckBox.forEach((item)=>item.addEventListener('click',function (event) {
+        display_range_dcside(event,item);
+        display_dcside(item);
+        }
+    ));
     aCheckBox.forEach((item)=>display_dcside(item))
 }
 
 /**
- * Update the SPAN , id based on checkbox id (txtck0), if checked , display 
Debit otherwise Credit
+ * Update the range of checkbox in Misc Operation
+ * @see Acc_Ledger::input
+ * @param item checkbox to change
+ * @param event event
+ */
+function display_range_dcside(evt,item)
+{
+    if (!evt.shiftKey) {
+        lastcheck = item;
+        return;
+    }
+    var p_name='debit-credit'
+    var aName = document.getElementsByClassName(p_name);
+
+    var from = 0;
+    var end = 0;
+    for (var i = 0; i < aName.length; i++) {
+        if (aName[i] == item) {
+            endcheck = aName[i];
+            from = i;
+        }
+        if (aName[i] == lastcheck) {
+            end = i;
+        }
+    }
+    if (from > end) {
+        let a = from;
+        from = end;
+        end = a;
+    }
+    var check = (aName[from].checked) ? true : false;
+    for (x = from; x <= end; x++) {
+           aName[x].checked = check;
+           display_dcside(aName[x]);
+    }
+    checkTotalDirect()
+}
+
+/**
+ * Update the SPAN for the range , id based on checkbox id (txtck0), if 
checked , display Debit otherwise Credit
  * @param item
  */
 function display_dcside(item)
@@ -109,4 +152,4 @@ function display_dcside(item)
     } else {
         $('txt'+item.id).update("Crédit")
     }
-}
+}
\ No newline at end of file
diff --git a/include/class/acc_ledger.class.php 
b/include/class/acc_ledger.class.php
index 41650f0b3..8fe002ce2 100644
--- a/include/class/acc_ledger.class.php
+++ b/include/class/acc_ledger.class.php
@@ -1102,7 +1102,7 @@ class Acc_Ledger  extends jrn_def_sql
         }
         $ret.=create_script("$('".$wDate->id."').focus()");
         // for displaying Credit or Debit
-        $ret.=create_script("activate_checkbox_side()");
+        $ret.=create_script("(function(){activate_checkbox_side()})();");
 
         return $ret;
     }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]