From 04ee1fd3c8006f1255e72f37c52e145ce4d570f1 Mon Sep 17 00:00:00 2001
From: Owen Leonard <oleonard@myacpl.org>
Date: Fri, 22 Nov 2019 14:42:56 +0000
Subject: [PATCH] Bug 11500: Use dateformat syspref and datepicker on
 additems.pl (and other item cataloguing pages)

This patch modifies the cataloging plugin dateaccessioned.pl so that it
triggers the addition of a datepicker widget to fields it is linked
with. Despite its name the plugin can be used on any item field which
requires a date.

To test, apply the patch and make sure you have one or more item
subfields linked to the dateaccessioned.pl plugin. For instance, in
MARC21:

 - Administration -> MARC bibliographic framework -> MARC structure ->
   952 -> Edit subfields:
   - subfields d ("Date acquired") and w ("Price effective from"):
     - Other options -> Plugin -> dateaccessioned.pl

 - Go to cataloging and add or edit an item on a bibliographic record
 - The "Date acquired" and "Price effective from" fields should be
   styled as datepickers.
 - Clicking in these fields should populate the field with today's date
   and trigger the datepicker popup.
 - Test that all the datepicker features work correctly.
 - Test that manual entry of a date works.

 - With the AcqCreateItem system preference set to "placing an order,"
   go to Acquisitions -> Vendor -> Add to basket.
   - Add a title to your basket using your preferred method.
   - In the "New order" form, find the section for adding an item.
   - Test the "Date acquired" and "Price effective from" fields, which
     should behave just like they did in the cataloging module.
---
 cataloguing/value_builder/dateaccessioned.pl                  | 11 ++++++++++-
 .../intranet-tmpl/prog/en/modules/cataloguing/additem.tt      |  1 +
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/cataloguing/value_builder/dateaccessioned.pl b/cataloguing/value_builder/dateaccessioned.pl
index 7bc6db2a134..ab18ee9ec5e 100755
--- a/cataloguing/value_builder/dateaccessioned.pl
+++ b/cataloguing/value_builder/dateaccessioned.pl
@@ -3,6 +3,7 @@
 # Converted to new plugin style (Bug 13437)
 
 # Copyright 2000-2002 Katipo Communications
+# Parts copyright Athens County Public Libraries 2019
 #
 # This file is part of Koha.
 #
@@ -32,13 +33,21 @@ my $builder = sub {
 <script>
 // from: cataloguing/value_builder/dateaccessioned.pl
 
+\$(document).ready(function(){
+    \$("#$function_name").datepicker({
+        dateFormat: "yy-mm-dd"
+    });
+});
+
 function Focus$function_name(event) {
     set_to_today(event.data.id);
+    \$("#$function_name").datepicker("show");
+
 }
 
 function Click$function_name(event) {
+    event.preventDefault();
     set_to_today(event.data.id, 1);
-    return false; // prevent page scroll
 }
 
 function set_to_today( id, force ) {
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/additem.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/additem.tt
index 39476f623a5..d5320e69492 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/additem.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/additem.tt
@@ -12,6 +12,7 @@
 [% INCLUDE 'browser-strings.inc' %]
 [% Asset.js("js/browser.js") | $raw %]
 [% INCLUDE 'select2.inc' %]
+[% INCLUDE 'calendar.inc' %]
 [% INCLUDE 'str/cataloging_additem.inc' %]
 [% Asset.js("js/cataloging_additem.js") | $raw %]
 </head>
-- 
2.11.0