diff --git a/app/views/estimates/_list.html.erb b/app/views/estimates/_list.html.erb index 61065f6..b39024e 100644 --- a/app/views/estimates/_list.html.erb +++ b/app/views/estimates/_list.html.erb @@ -2,7 +2,7 @@ <% estimates.sort.reverse.each do |estimate| %>
- <%= check_box_tag "estimate_ids[]", estimate.id, false, onchange: "updateLink()", class: "estimate-checkbox" %> + <%= check_box_tag "estimate_ids[]", estimate.id, false, onchange: "updateLink()", data: { id: estimate.id, doc: estimate.doc_number }, class: "estimate-checkbox" %> <%= link_to "##{estimate.doc_number}", estimate_path(estimate), target: :_blank %> <%= estimate.txn_date %>
<% end %> diff --git a/app/views/invoices/_list.html.erb b/app/views/invoices/_list.html.erb index 66c9117..57873b6 100644 --- a/app/views/invoices/_list.html.erb +++ b/app/views/invoices/_list.html.erb @@ -12,7 +12,7 @@ <% invoices.sort.reverse.each do |invoice| %>
- <%= check_box_tag "invoice_ids[]", invoice.id, false, onchange: "updateLink()", class: "invoice-checkbox" if invoices.count > 1 %> + <%= check_box_tag "invoice_ids[]", invoice.id, false, onchange: "updateLink()", data: { id: invoice.id, doc: invoice.doc_number }, class: "invoice-checkbox" if invoices.count > 1 %> <%= link_to "##{invoice.doc_number}", invoice_path(invoice), target: :_blank %> <%= invoice.txn_date %>
<% end %> diff --git a/assets/javascripts/application.js b/assets/javascripts/application.js index 3bfe4a9..e028756 100644 --- a/assets/javascripts/application.js +++ b/assets/javascripts/application.js @@ -7,23 +7,23 @@ function updateLink() { function getSelectedDocs() { const invoices = document.querySelectorAll('.invoice-checkbox'); const estimates = document.querySelectorAll('.estimate-checkbox'); - - const invoiceIds = Array.from(invoices) - .filter(checkbox => checkbox.checked) - .map(checkbox => checkbox.value); - - const estimateIds = Array.from(estimates) - .filter(checkbox => checkbox.checked) - .map(checkbox => checkbox.value); let output = ''; - for (const value of invoiceIds) { - output += `%0AInvoice:%20${value}%0A`; + for (const i of invoices) { + if (i.checked) { + console.log(i.value); + console.log(i.dataset.doc); + output += `%0AInvoice:%20${i.dataset.doc}%0A`; + } } - for (const value of estimateIds) { - output += `%0AEstimate:%20${value}%0A`; + for (const e of estimates) { + if (e.checked) { + console.log(e.value); + console.log(e.dataset.doc); + output += `%0AEstimate:%20${e.dataset.doc}%0A`; + } } // You can return the array or use it as needed