Bug 15707 - Add ability to define hierarchical groups of libraries
Summary: Add ability to define hierarchical groups of libraries
Status: CLOSED FIXED
Alias: None
Product: Koha
Classification: Unclassified
Component: Architecture, internals, and plumbing (show other bugs)
Version: Main
Hardware: All All
: P5 - low new feature
Assignee: Kyle M Hall (khall)
QA Contact: Tomás Cohen Arazi (tcohen)
URL:
Keywords:
Depends on:
Blocks: 15708 16735 21645 21674
  Show dependency treegraph
 
Reported: 2016-01-31 11:32 UTC by Kyle M Hall (khall)
Modified: 2019-10-14 19:57 UTC (History)
13 users (show)

See Also:
Change sponsored?: ---
Patch complexity: Large patch
Documentation contact:
Documentation submission:
Text to go in the release notes:
Koha now supports grouping libraries into hierarchies. The previous grouping allowed only a single level of groups. The new hierarchical grouping allows for trees of unlimited depth to be created. This will allow for grouping of libraries based on physical location, political affiliation, or any other type of grouping! The new system is currently used for search groups, and patron visibility limits. Expect to see more features using hierarchical groups in the future!
Version(s) released in:
Circulation function:


Attachments
Bug 15707 - Add Treegrid library (609.43 KB, patch)
2016-01-31 11:40 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.00 KB, patch)
2016-01-31 11:40 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add new modules (5.56 KB, patch)
2016-01-31 11:40 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.73 KB, patch)
2016-01-31 11:40 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add and update schema files (4.71 KB, patch)
2016-01-31 11:40 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add TreeGrid library to about page (1.16 KB, patch)
2016-01-31 11:54 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add Treegrid library (609.43 KB, patch)
2016-02-06 11:30 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.00 KB, patch)
2016-02-06 11:30 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add new modules (4.68 KB, patch)
2016-02-06 11:30 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.73 KB, patch)
2016-02-06 11:30 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add and update schema files (4.71 KB, patch)
2016-02-06 11:30 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add TreeGrid library to about page (1.16 KB, patch)
2016-02-06 11:30 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Unit Tests (3.51 KB, patch)
2016-02-06 11:30 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add Treegrid library (609.43 KB, patch)
2016-02-10 14:10 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.03 KB, patch)
2016-02-10 14:10 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add new modules (4.68 KB, patch)
2016-02-10 14:10 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.72 KB, patch)
2016-02-10 14:10 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add and update schema files (4.71 KB, patch)
2016-02-10 14:10 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add TreeGrid library to about page (1.16 KB, patch)
2016-02-10 14:10 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Unit Tests (3.51 KB, patch)
2016-02-10 14:11 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
[SIGNED-OFF] Bug 15707 - Add Treegrid library (609.49 KB, patch)
2016-02-10 19:10 UTC, Mark Tompsett
Details | Diff | Splinter Review
[SIGNED-OFF] Bug 15707 - Update DB (3.10 KB, patch)
2016-02-10 19:10 UTC, Mark Tompsett
Details | Diff | Splinter Review
[SIGNED-OFF] Bug 15707 - Add new modules (4.74 KB, patch)
2016-02-10 19:10 UTC, Mark Tompsett
Details | Diff | Splinter Review
[SIGNED-OFF] Bug 15707 - Add editor (16.79 KB, patch)
2016-02-10 19:10 UTC, Mark Tompsett
Details | Diff | Splinter Review
[SIGNED-OFF] Bug 15707 - Add and update schema files (4.78 KB, patch)
2016-02-10 19:10 UTC, Mark Tompsett
Details | Diff | Splinter Review
[SIGNED-OFF] Bug 15707 - Add TreeGrid library to about page (1.23 KB, patch)
2016-02-10 19:11 UTC, Mark Tompsett
Details | Diff | Splinter Review
[SIGNED-OFF] Bug 15707 - Unit Tests (3.57 KB, patch)
2016-02-10 19:11 UTC, Mark Tompsett
Details | Diff | Splinter Review
Bug 15707: Fix conflict with bug 15446 (type vs _type) (874 bytes, patch)
2016-02-15 17:24 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.15 KB, patch)
2016-04-19 13:37 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.15 KB, patch)
2016-04-19 13:37 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add new modules (4.73 KB, patch)
2016-04-19 13:37 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.78 KB, patch)
2016-04-19 13:38 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add and update schema files (4.77 KB, patch)
2016-04-19 13:38 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add TreeGrid library to about page (1.17 KB, patch)
2016-04-19 13:38 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Unit Tests (3.56 KB, patch)
2016-04-19 13:38 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Fix conflict with bug 15446 (type vs _type) (874 bytes, patch)
2016-04-19 13:38 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses (2.44 KB, patch)
2016-04-19 13:38 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.14 KB, patch)
2016-06-12 09:17 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Add new modules (4.73 KB, patch)
2016-06-12 09:17 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.78 KB, patch)
2016-06-12 09:17 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Add and update schema files (4.77 KB, patch)
2016-06-12 09:17 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Add TreeGrid library to about page (1.17 KB, patch)
2016-06-12 09:17 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Unit Tests (3.56 KB, patch)
2016-06-12 09:17 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707: Fix conflict with bug 15446 (type vs _type) (874 bytes, patch)
2016-06-12 09:17 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses (2.44 KB, patch)
2016-06-12 09:18 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707: QA follow-up - Drop table if exists (2.08 KB, patch)
2016-06-12 09:18 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Fix UI issues (10.54 KB, patch)
2016-06-14 11:55 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Remove class for treegrid (1016 bytes, patch)
2016-06-14 13:22 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.14 KB, patch)
2016-06-20 11:46 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.14 KB, patch)
2016-06-20 11:46 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add new modules (4.73 KB, patch)
2016-06-20 11:46 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.78 KB, patch)
2016-06-20 11:46 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add and update schema files (4.77 KB, patch)
2016-06-20 11:46 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add TreeGrid library to about page (1.17 KB, patch)
2016-06-20 11:46 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Unit Tests (3.56 KB, patch)
2016-06-20 11:47 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Fix conflict with bug 15446 (type vs _type) (874 bytes, patch)
2016-06-20 11:47 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses (2.44 KB, patch)
2016-06-20 11:47 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: QA follow-up - Drop table if exists (2.08 KB, patch)
2016-06-20 11:47 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Fix UI issues (10.55 KB, patch)
2016-06-20 11:47 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Remove class for treegrid (1016 bytes, patch)
2016-06-20 11:47 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation (3.27 KB, patch)
2016-06-20 11:47 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation (3.29 KB, patch)
2016-06-20 11:48 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.20 KB, patch)
2016-11-02 13:25 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.20 KB, patch)
2016-11-02 13:26 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.20 KB, patch)
2016-11-02 13:28 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add new modules (4.73 KB, patch)
2016-11-02 13:28 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.78 KB, patch)
2016-11-02 13:28 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add TreeGrid library to about page (1.20 KB, patch)
2016-11-02 13:28 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Unit Tests (3.56 KB, patch)
2016-11-02 13:29 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Fix conflict with bug 15446 (type vs _type) (874 bytes, patch)
2016-11-02 13:29 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses (2.44 KB, patch)
2016-11-02 13:29 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: QA follow-up - Drop table if exists (2.08 KB, patch)
2016-11-02 13:29 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Fix UI issues (10.55 KB, patch)
2016-11-02 13:29 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Remove class for treegrid (1016 bytes, patch)
2016-11-02 13:29 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation (3.29 KB, patch)
2016-11-02 13:29 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update Schema Files (4.71 KB, patch)
2016-11-02 13:29 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Followup - use cat-search instead of cities-search in header (943 bytes, patch)
2016-12-10 08:01 UTC, Josef Moravec
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.21 KB, patch)
2017-02-21 13:41 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.21 KB, patch)
2017-02-21 13:41 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add new modules (4.73 KB, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.78 KB, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Unit Tests (3.56 KB, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Fix conflict with bug 15446 (type vs _type) (874 bytes, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses (2.44 KB, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: QA follow-up - Drop table if exists (2.09 KB, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Fix UI issues (10.56 KB, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Remove class for treegrid (1016 bytes, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation (3.29 KB, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update Schema Files (4.71 KB, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Followup - use cat-search instead of cities-search in header (943 bytes, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Switch datetimes to timestamps (1.97 KB, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add UNIQUE constraint to library groups table (1.16 KB, patch)
2017-02-21 13:42 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.21 KB, patch)
2017-02-22 19:56 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.21 KB, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add new modules (4.73 KB, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.78 KB, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Unit Tests (3.56 KB, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Fix conflict with bug 15446 (type vs _type) (874 bytes, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses (2.44 KB, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: QA follow-up - Drop table if exists (2.09 KB, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Fix UI issues (10.56 KB, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Remove class for treegrid (1016 bytes, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation (3.29 KB, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update Schema Files (4.71 KB, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Followup - use cat-search instead of cities-search in header (943 bytes, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Switch datetimes to timestamps (1.97 KB, patch)
2017-02-22 19:57 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add UNIQUE constraint to library groups table (1.16 KB, patch)
2017-02-22 19:58 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Updates for Bootstrap 3 (12.67 KB, patch)
2017-02-22 19:58 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.21 KB, patch)
2017-03-01 14:01 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.21 KB, patch)
2017-03-01 14:02 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add new modules (4.73 KB, patch)
2017-03-01 14:02 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.78 KB, patch)
2017-03-01 14:02 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Unit Tests (3.56 KB, patch)
2017-03-01 14:02 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Fix conflict with bug 15446 (type vs _type) (874 bytes, patch)
2017-03-01 14:02 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses (2.44 KB, patch)
2017-03-01 14:02 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: QA follow-up - Drop table if exists (2.09 KB, patch)
2017-03-01 14:02 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Fix UI issues (10.56 KB, patch)
2017-03-01 14:02 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Remove class for treegrid (1016 bytes, patch)
2017-03-01 14:02 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation (3.29 KB, patch)
2017-03-01 14:03 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update Schema Files (4.71 KB, patch)
2017-03-01 14:03 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Followup - use cat-search instead of cities-search in header (943 bytes, patch)
2017-03-01 14:03 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Switch datetimes to timestamps (1.97 KB, patch)
2017-03-01 14:03 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add UNIQUE constraint to library groups table (2.97 KB, patch)
2017-03-01 14:03 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Updates for Bootstrap 3 (12.70 KB, patch)
2017-03-01 14:03 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Display error if group title is already used (2.28 KB, patch)
2017-03-01 14:03 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.18 KB, patch)
2017-08-08 16:58 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add new modules (4.73 KB, patch)
2017-08-08 16:58 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.78 KB, patch)
2017-08-08 16:58 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Unit Tests (3.56 KB, patch)
2017-08-08 16:58 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Fix conflict with bug 15446 (type vs _type) (875 bytes, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses (2.44 KB, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: QA follow-up - Drop table if exists (2.09 KB, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Fix UI issues (10.56 KB, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Remove class for treegrid (1017 bytes, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation (3.29 KB, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update Schema Files (4.71 KB, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707: Followup - use cat-search instead of cities-search in header (944 bytes, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Switch datetimes to timestamps (1.98 KB, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Add UNIQUE constraint to library groups table (1.16 KB, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Updates for Bootstrap 3 (12.67 KB, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Display error if group title is already used (2.29 KB, patch)
2017-08-08 16:59 UTC, Kyle M Hall (khall)
Details | Diff | Splinter Review
Bug 15707 - Update DB (3.12 KB, patch)
2017-12-05 16:58 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Add new modules (4.74 KB, patch)
2017-12-05 16:59 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Add editor (16.80 KB, patch)
2017-12-05 16:59 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Unit Tests (3.57 KB, patch)
2017-12-05 16:59 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707: Fix conflict with bug 15446 (type vs _type) (887 bytes, patch)
2017-12-05 16:59 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses (2.45 KB, patch)
2017-12-05 16:59 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707: QA follow-up - Drop table if exists (2.10 KB, patch)
2017-12-05 16:59 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Fix UI issues (10.58 KB, patch)
2017-12-05 16:59 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Remove class for treegrid (1023 bytes, patch)
2017-12-05 16:59 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation (3.30 KB, patch)
2017-12-05 16:59 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707: Followup - use cat-search instead of cities-search in header (950 bytes, patch)
2017-12-05 17:00 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Switch datetimes to timestamps (1.99 KB, patch)
2017-12-05 17:00 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Add UNIQUE constraint to library groups table (1.17 KB, patch)
2017-12-05 17:00 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Updates for Bootstrap 3 (12.67 KB, patch)
2017-12-05 17:00 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707 - Display error if group title is already used (2.30 KB, patch)
2017-12-05 17:00 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707: DBIC Schema files (4.74 KB, patch)
2017-12-05 17:05 UTC, Jonathan Druart
Details | Diff | Splinter Review
Bug 15707: Update DB (3.17 KB, patch)
2017-12-06 19:05 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: Add Koha::Library::Group(s) modules (4.82 KB, patch)
2017-12-06 19:05 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: Add library groups editor (16.87 KB, patch)
2017-12-06 19:05 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: Unit Tests (3.62 KB, patch)
2017-12-06 19:05 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: Fix conflict with bug 15446 (type vs _type) (942 bytes, patch)
2017-12-06 19:05 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: (QA followup) Switch to treetable which Koha already uses (2.50 KB, patch)
2017-12-06 19:05 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: (QA followup) Drop table if exists (2.15 KB, patch)
2017-12-06 19:06 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: (QA followup) Fix UI issues (10.63 KB, patch)
2017-12-06 19:06 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: (QA followup) Remove class for treegrid (1.05 KB, patch)
2017-12-06 19:06 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: (QA followup) Allow object names to be styled without impeding translation (3.35 KB, patch)
2017-12-06 19:06 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: (followup) use cat-search instead of cities-search in header (1005 bytes, patch)
2017-12-06 19:06 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: Switch datetimes to timestamps (2.04 KB, patch)
2017-12-06 19:06 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: Add UNIQUE constraint to library groups table (1.22 KB, patch)
2017-12-06 19:06 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: Updates for Bootstrap 3 (12.73 KB, patch)
2017-12-06 19:06 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: Display error if group title is already used (2.46 KB, patch)
2017-12-06 19:06 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: DBIC Schema files (4.79 KB, patch)
2017-12-06 19:07 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review
Bug 15707: (QA followup) Style buttons correctly (2.47 KB, patch)
2017-12-06 19:13 UTC, Tomás Cohen Arazi (tcohen)
Details | Diff | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Kyle M Hall (khall) 2016-01-31 11:32:54 UTC
Koha needs the ability to create hierarchical groups of libraries. This ability could be used in many areas of Koha to make Koha much more flexible and consortium friendly.
Comment 1 Kyle M Hall (khall) 2016-01-31 11:40:29 UTC Comment hidden (obsolete)
Comment 2 Kyle M Hall (khall) 2016-01-31 11:40:42 UTC Comment hidden (obsolete)
Comment 3 Kyle M Hall (khall) 2016-01-31 11:40:44 UTC Comment hidden (obsolete)
Comment 4 Kyle M Hall (khall) 2016-01-31 11:40:46 UTC Comment hidden (obsolete)
Comment 5 Kyle M Hall (khall) 2016-01-31 11:40:48 UTC Comment hidden (obsolete)
Comment 6 Kyle M Hall (khall) 2016-01-31 11:54:19 UTC Comment hidden (obsolete)
Comment 7 Kyle M Hall (khall) 2016-02-06 11:30:15 UTC Comment hidden (obsolete)
Comment 8 Kyle M Hall (khall) 2016-02-06 11:30:24 UTC Comment hidden (obsolete)
Comment 9 Kyle M Hall (khall) 2016-02-06 11:30:27 UTC Comment hidden (obsolete)
Comment 10 Kyle M Hall (khall) 2016-02-06 11:30:29 UTC Comment hidden (obsolete)
Comment 11 Kyle M Hall (khall) 2016-02-06 11:30:31 UTC Comment hidden (obsolete)
Comment 12 Kyle M Hall (khall) 2016-02-06 11:30:33 UTC Comment hidden (obsolete)
Comment 13 Kyle M Hall (khall) 2016-02-06 11:30:36 UTC Comment hidden (obsolete)
Comment 14 Mark Tompsett 2016-02-08 20:27:49 UTC
Obvious test case to check for fails does.
Make root
Make sub group
Add some libraries off both.
Attempt to delete root.
"Software error:

DBIx::Class::Storage::DBI::_dbh_execute(): Cannot delete or update a parent row: a foreign key constraint fails (`koha_library`.`library_groups`, CONSTRAINT `library_groups_ibfk_1` FOREIGN KEY (`parent_id`) REFERENCES `library_groups` (`id`)) at /home/mtompset/kohaclone/Koha/Object.pm line 155
For help, please send mail to the webmaster (webmaster@debian), giving this error message and the time and date of the error."

Treegrid library does add.
Updates both fresh and update work.
Given that the Unit Tests work, I believe the new modules and schema files function.
There is a nice about page entry.
So, this is purely an "Add editor" patch issue.
Comment 15 Mark Tompsett 2016-02-08 20:29:22 UTC
Deletion from bottom up does work, however. :)
Comment 16 Kyle M Hall (khall) 2016-02-09 16:22:47 UTC
(In reply to M. Tompsett from comment #15)
> Deletion from bottom up does work, however. :)

Thanks for testing! Deleting a group with children should have worked, I'm guessing my ON DELETE isn't quite right. I'll look into it!
Comment 17 Kyle M Hall (khall) 2016-02-09 16:34:13 UTC
I've been unable to reproduce your error. Here's is a video of my testing: http://screencast.com/t/cM1Duz9y

Am I not taking the same steps as you were? Can you reproduce the issue repeatedly?
Comment 18 Mark Tompsett 2016-02-09 17:03:28 UTC
(In reply to Kyle M Hall from comment #17)
> I've been unable to reproduce your error. Here's is a video of my testing:
> http://screencast.com/t/cM1Duz9y
> 
> Am I not taking the same steps as you were? Can you reproduce the issue
> repeatedly?

One question.
Were you running from user account or system account?
Where you running from an upgrade or a fresh install?

My scenario, I drop'd the db, created an empty one, did the web install and was using the system account.

root -> group 1 -> subgroup 1 & subgroup 2
add libraries to subgroup 1 & subgroup 2
attempt to delete root.

I'll reattempt after lunch.
Comment 19 Kyle M Hall (khall) 2016-02-09 17:47:26 UTC
(In reply to M. Tompsett from comment #18)

For the record, I was using a user account and tested via upgrade.
Comment 20 Mark Tompsett 2016-02-09 19:13:54 UTC
Preliminary setup: http://screencast.com/t/AtYoC3pJY
Actual test explosion: http://screencast.com/t/SgusNdiT

I noticed in the replay that Koha Admin is Midway, and Midway was one of the libraries I added. I don't know if that has anything to do with it, but I thought I'd mention that.
Comment 21 Kyle M Hall (khall) 2016-02-10 14:10:38 UTC Comment hidden (obsolete)
Comment 22 Kyle M Hall (khall) 2016-02-10 14:10:47 UTC Comment hidden (obsolete)
Comment 23 Kyle M Hall (khall) 2016-02-10 14:10:50 UTC Comment hidden (obsolete)
Comment 24 Kyle M Hall (khall) 2016-02-10 14:10:52 UTC Comment hidden (obsolete)
Comment 25 Kyle M Hall (khall) 2016-02-10 14:10:55 UTC Comment hidden (obsolete)
Comment 26 Kyle M Hall (khall) 2016-02-10 14:10:57 UTC Comment hidden (obsolete)
Comment 27 Kyle M Hall (khall) 2016-02-10 14:11:00 UTC Comment hidden (obsolete)
Comment 28 Kyle M Hall (khall) 2016-02-10 14:13:05 UTC
(In reply to M. Tompsett from comment #20)
> Preliminary setup: http://screencast.com/t/AtYoC3pJY
> Actual test explosion: http://screencast.com/t/SgusNdiT
> 
> I noticed in the replay that Koha Admin is Midway, and Midway was one of the
> libraries I added. I don't know if that has anything to do with it, but I
> thought I'd mention that.

Thanks! I was able to pinpoint the issue thanks to your screencasts. There was missing ON DELETE CASCADE for the parent id column. The cascade existed in the update sql so that's why I wasn't getting the error but you were! This issue should be fixed with this new patch set!
Comment 29 Mark Tompsett 2016-02-10 19:10:17 UTC Comment hidden (obsolete)
Comment 30 Mark Tompsett 2016-02-10 19:10:28 UTC Comment hidden (obsolete)
Comment 31 Mark Tompsett 2016-02-10 19:10:37 UTC Comment hidden (obsolete)
Comment 32 Mark Tompsett 2016-02-10 19:10:47 UTC Comment hidden (obsolete)
Comment 33 Mark Tompsett 2016-02-10 19:10:55 UTC Comment hidden (obsolete)
Comment 34 Mark Tompsett 2016-02-10 19:11:05 UTC Comment hidden (obsolete)
Comment 35 Mark Tompsett 2016-02-10 19:11:13 UTC Comment hidden (obsolete)
Comment 36 Mark Tompsett 2016-02-10 19:13:12 UTC
Failed test case is corrected.
Prove works fine.
About is there.
Applies nicely.
Comment 37 Jonathan Druart 2016-02-15 17:23:54 UTC
Kyle,
1/ Could you provide a test plan?
2/ What's next for these library groups? What's the difference with our existing groups? Is there a plan to move the existing ones to this new table?
3/ We already have a treetable plugin (compatible with DataTables), is there a reason to add another one?

Marked as Failed QA for 1.
Comment 38 Jonathan Druart 2016-02-15 17:24:52 UTC Comment hidden (obsolete)
Comment 39 Kyle M Hall (khall) 2016-04-19 13:37:35 UTC Comment hidden (obsolete)
Comment 40 Kyle M Hall (khall) 2016-04-19 13:37:51 UTC Comment hidden (obsolete)
Comment 41 Kyle M Hall (khall) 2016-04-19 13:37:59 UTC Comment hidden (obsolete)
Comment 42 Kyle M Hall (khall) 2016-04-19 13:38:01 UTC Comment hidden (obsolete)
Comment 43 Kyle M Hall (khall) 2016-04-19 13:38:04 UTC Comment hidden (obsolete)
Comment 44 Kyle M Hall (khall) 2016-04-19 13:38:07 UTC Comment hidden (obsolete)
Comment 45 Kyle M Hall (khall) 2016-04-19 13:38:09 UTC Comment hidden (obsolete)
Comment 46 Kyle M Hall (khall) 2016-04-19 13:38:12 UTC Comment hidden (obsolete)
Comment 47 Kyle M Hall (khall) 2016-04-19 13:38:14 UTC Comment hidden (obsolete)
Comment 48 Kyle M Hall (khall) 2016-04-19 13:43:58 UTC
(In reply to Jonathan Druart from comment #37)
> Kyle,
> 1/ Could you provide a test plan?

Test Plan:
1) Apply this patch
2) Run updatedatabase.pl
3) Browse to Administration/Library groups
4) Create a new group via the add group button
5) Create one or more subgroups in this group
6) Add libraries to the group and subgroups
7) Add another top level group via the add group button
8) Try adding groups and libraries to this group
9) Test editing a group
10) Test deleting a group
11) Test removing a library from a group

> 2/ What's next for these library groups? What's the difference with our
> existing groups? Is there a plan to move the existing ones to this new table?
> 3/ We already have a treetable plugin (compatible with DataTables), is there
> a reason to add another one?

I had thought the treetable plugin wouldn't work well in this instance, but I gave treetables a shot and it looks almost identical. I've removed the patch that adds the treegrid library and have added a follow switching to treetables.
Comment 49 Kyle M Hall (khall) 2016-04-19 13:47:19 UTC
(In reply to Jonathan Druart from comment #37)
> 2/ What's next for these library groups? What's the difference with our
> existing groups? Is there a plan to move the existing ones to this new table?

Bug 15708 is my first enhancement that will take advantage of this. However, I think there will be many other possible uses for this system in the future. The existing groups function is not actually used anywhere in Koha and should probably be removed. The search groups could go either way, but are fine the way they are.

What makes this far more powerful is the ability to define hierarchical group structures. This will be a cornerstone for making Koha much more usable in consortial library settings.
Comment 50 Jonathan Druart 2016-06-12 09:17:32 UTC Comment hidden (obsolete)
Comment 51 Jonathan Druart 2016-06-12 09:17:36 UTC Comment hidden (obsolete)
Comment 52 Jonathan Druart 2016-06-12 09:17:41 UTC Comment hidden (obsolete)
Comment 53 Jonathan Druart 2016-06-12 09:17:45 UTC Comment hidden (obsolete)
Comment 54 Jonathan Druart 2016-06-12 09:17:50 UTC Comment hidden (obsolete)
Comment 55 Jonathan Druart 2016-06-12 09:17:54 UTC Comment hidden (obsolete)
Comment 56 Jonathan Druart 2016-06-12 09:17:58 UTC Comment hidden (obsolete)
Comment 57 Jonathan Druart 2016-06-12 09:18:03 UTC Comment hidden (obsolete)
Comment 58 Jonathan Druart 2016-06-12 09:18:08 UTC Comment hidden (obsolete)
Comment 59 Jonathan Druart 2016-06-12 09:26:13 UTC
(In reply to Kyle M Hall from comment #49)
> (In reply to Jonathan Druart from comment #37)
> > 2/ What's next for these library groups? What's the difference with our
> > existing groups? Is there a plan to move the existing ones to this new table?
> 
> Bug 15708 is my first enhancement that will take advantage of this. However,
> I think there will be many other possible uses for this system in the
> future. The existing groups function is not actually used anywhere in Koha
> and should probably be removed. The search groups could go either way, but
> are fine the way they are.
> 
> What makes this far more powerful is the ability to define hierarchical
> group structures. This will be a cornerstone for making Koha much more
> usable in consortial library settings.

It is weird to have 2 "library groups" features and I think the first step should be to replace the existing one. The existing feature is used in the advanced search form and should work.
Moreover I'd like to get Owen opinion on the modal you use to create/update a new entry. I am going to ping him on IRC.
There are also some inconsistencies on styles, the confirmation of add/update is a warning (orange)

Keeping it in the Signed Off queue to get other opinions.
Comment 60 Jonathan Druart 2016-06-12 09:28:47 UTC
Also it might be odd to have a new feature not doing anything (if pushed as it) :)
Comment 61 Jonathan Druart 2016-06-12 09:32:06 UTC
The following patch could be obsoleted: Bug 15707 - Add TreeGrid library to about page
Comment 62 Owen Leonard 2016-06-13 12:58:15 UTC
> (In reply to Jonathan Druart from comment #59)
> It is weird to have 2 "library groups" features and I think the first step
> should be to replace the existing one.

I agree. It is confusing to have two menu items on the administration page, "Libraries and groups" and "Library groups." I think we should think of a way to manage all this functionality in one section.

Some other comments:

- Nowhere else do we use the "fa-plus-circle" icon for "add." We always use "fa-plus."

- Nowhere else in Koha do we use a modal to display an add form. We either display a form on a separate page or we use JS to show/hide the edit form on the page to mimic the display of a separate page. See admin/items_search_fields.pl for example.

- Nowhere else in Koha do we use the "fa-edit" icon for "edit." We always use "fa-pencil."

- When displaying confirmation messages we use '<div class="dialog message">' not '<div class="dialog alert">'

- There is no reason to display an icon ("<i class="fa fa-object-group"></i>") next to each group. It doesn't serve any function.

- There is no reason to display an icon ("<i class="fa fa-home"></i>") next to each library in a group. It doesn't serve any function.

- Nowhere else in Koha do we use "fa-minus-circle" to mean "remove." It should be "fa-trash."

- Nowhere else in Koha do we add an icon to the "actions" menu.

- Nowhere else in Koha do we use a modal to display a delete confirmation message. I think I could be convinced that we should, but I'd like to hear the argument. If we do, we should use the space given to display more information about the deletion than this implementation does, e.g. what exactly am I deleting?

- Instead of a "home" icon for "Add library" I think it should be the "plus" icon which is associated with adding or creating something.

- The list of libraries in the "Add library" dropdown should be alphabetized by library name, not library code.

- This patch adds five new instances of "onclick." I've been working very hard to eliminate the use of "onclick" and I don't think new patches should add them.
Comment 63 Kyle M Hall (khall) 2016-06-14 11:54:55 UTC
> I agree. It is confusing to have two menu items on the administration page,
> "Libraries and groups" and "Library groups." I think we should think of a
> way to manage all this functionality in one section.

These two sub-systems are completely unrelated. They really don't belong together. I'd be more than happy to rename it "Library hierarchies" if you find that acceptable, or to rename the existing groups to "search groups" which is what they are.
 
> Some other comments:
> 
> - Nowhere else do we use the "fa-plus-circle" icon for "add." We always use
> "fa-plus."

Changed with followup.

> 
> - Nowhere else in Koha do we use a modal to display an add form. We either
> display a form on a separate page or we use JS to show/hide the edit form on
> the page to mimic the display of a separate page. See
> admin/items_search_fields.pl for example.

You are correct, but I believe the modal may be a better paradigm. Would you disagree? It means we aren't shifting elements on the page around when we hide/display a form. I know it's without precedent at the moment but I'd like you to consider the advantages. Think about how every other site does this stuff. It's typically with modals. Koha is generally working against the standard web ux by *not* using modals! Would you agree?

> 
> - Nowhere else in Koha do we use the "fa-edit" icon for "edit." We always
> use "fa-pencil."

Changed with followup!
> 
> - When displaying confirmation messages we use '<div class="dialog
> message">' not '<div class="dialog alert">'

Can do!

> 
> - There is no reason to display an icon ("<i class="fa
> fa-object-group"></i>") next to each group. It doesn't serve any function.

Changed in followup!

> 
> - There is no reason to display an icon ("<i class="fa fa-home"></i>") next
> to each library in a group. It doesn't serve any function.

Changed in followup!

> 
> - Nowhere else in Koha do we use "fa-minus-circle" to mean "remove." It
> should be "fa-trash."

Fixed in followup!

> 
> - Nowhere else in Koha do we add an icon to the "actions" menu.

Will do!

> - Nowhere else in Koha do we use a modal to display a delete confirmation
> message. I think I could be convinced that we should, but I'd like to hear
> the argument. If we do, we should use the space given to display more
> information about the deletion than this implementation does, e.g. what
> exactly am I deleting?

We use plenty of js confirm dialogs for delete confirmation messages. Over the years they've gotten more and more jarring in my opinion. They cannot be styled to match the look of Koha. Even more importantly, we tend to abuse confirm dialogs by adding far to much text to them which we attempt to lay out with only spaces and newlines. With the modal this is a non-issue because we can simply use html. The modal seems much more natural and integrated, while presenting the exact same options to the user.

> 
> - Instead of a "home" icon for "Add library" I think it should be the "plus"
> icon which is associated with adding or creating something.

Fixed!

> 
> - The list of libraries in the "Add library" dropdown should be alphabetized
> by library name, not library code.

Fixed!

> - This patch adds five new instances of "onclick." I've been working very
> hard to eliminate the use of "onclick" and I don't think new patches should
> add them.

Fixed! I wrote this patch before the move away from onclick and I'm happy to see them go ; )
Comment 64 Kyle M Hall (khall) 2016-06-14 11:55:41 UTC Comment hidden (obsolete)
Comment 65 Owen Leonard 2016-06-14 12:55:30 UTC
(In reply to Kyle M Hall from comment #63)

> These two sub-systems are completely unrelated. They really don't belong
> together.

If this is a feature without any real application in Koha yet, perhaps we shouldn't add it to the menu system at all?

> > - Nowhere else in Koha do we use a modal to display an add form.
>
> You are correct, but I believe the modal may be a better paradigm.

Perhaps. However, I think introducing a new interface pattern requires a certain amount of commitment to making that change consistently throughout the interface. For example, using jEditable for the Quote of the Day feature was an interesting proof of concept, but it went nowhere after that. Introducing the use of Font Awesome was a good improvement, but it took a lot of buy-in and work to make it consistent.

> > - Nowhere else in Koha do we use a modal to display a delete confirmation
> > message.
>
> The modal seems much more natural and
> integrated, while presenting the exact same options to the user.

I think that's fine, especially if we take advantage of the opportunity to display thorough information to the user. As I said above, I think making the change requires /some/ commitment to implementing the same change throughout the staff client.
Comment 66 Owen Leonard 2016-06-14 13:11:17 UTC
> I've removed the
> patch that adds the treegrid library and have added a follow switching to
> treetables.

Treegrid is still getting added to the about page.
Comment 67 Kyle M Hall (khall) 2016-06-14 13:15:31 UTC
(In reply to Owen Leonard from comment #65)
> (In reply to Kyle M Hall from comment #63)
> 
> > These two sub-systems are completely unrelated. They really don't belong
> > together.
> 
> If this is a feature without any real application in Koha yet, perhaps we
> shouldn't add it to the menu system at all?

I don't expect this patch set to be pushed to master until Bug 15708 is ready to be pushed along with it. I would like to get this to Passed QA in the meantime.

> 
> > > - Nowhere else in Koha do we use a modal to display an add form.
> >
> > You are correct, but I believe the modal may be a better paradigm.
> 
> Perhaps. However, I think introducing a new interface pattern requires a
> certain amount of commitment to making that change consistently throughout
> the interface. For example, using jEditable for the Quote of the Day feature
> was an interesting proof of concept, but it went nowhere after that.
> Introducing the use of Font Awesome was a good improvement, but it took a
> lot of buy-in and work to make it consistent.

I agree. I'm willing to put in some work if you can identify some areas where you'd like to see modals. I think the low-hanging fruit would be any of the hide/show forms we have. The audio alerts editor is the first one that comes to mind, but I'm sure you can point out some others!

> 
> > > - Nowhere else in Koha do we use a modal to display a delete confirmation
> > > message.
> >
> > The modal seems much more natural and
> > integrated, while presenting the exact same options to the user.
> 
> I think that's fine, especially if we take advantage of the opportunity to
> display thorough information to the user. As I said above, I think making
> the change requires /some/ commitment to implementing the same change
> throughout the staff client.

Agreed, this latest followup takes advantage of that a bit be showing the group to be deleted in one case, in the case of removing a library from a group it shows the library name and the group it will be removed from with some minor styling. Nothing amazing but definitely easier on the eyes and no unnecessary use of quotes around the names of things because the confirm dialogs are only plaintext. If you think my styling could be improved just let me know! Basically it's just styled with the group and library names italicized and bold. I think we need a standard pattern for how to style the names of things in this fashion, and I see no reason not to start here.
Comment 68 Kyle M Hall (khall) 2016-06-14 13:22:20 UTC Comment hidden (obsolete)
Comment 69 Owen Leonard 2016-06-14 13:24:36 UTC
(In reply to Kyle M Hall from comment #63)
> > I agree. It is confusing to have two menu items on the administration page,
> > "Libraries and groups" and "Library groups." I think we should think of a
> > way to manage all this functionality in one section.
> 
> These two sub-systems are completely unrelated.

Do you not plan to replace the existing library groups functionality with this?
Comment 70 Jonathan Druart 2016-06-14 14:51:46 UTC
The discussion about the modal should be brought at the next dev meeting I think:
Is everybody (i.e. the majority) agrees on this change, who is going to implement it to the other pages, etc.
Comment 71 Kyle M Hall (khall) 2016-06-14 14:57:52 UTC
(In reply to Owen Leonard from comment #69)
> (In reply to Kyle M Hall from comment #63)
> > > I agree. It is confusing to have two menu items on the administration page,
> > > "Libraries and groups" and "Library groups." I think we should think of a
> > > way to manage all this functionality in one section.
> > 
> > These two sub-systems are completely unrelated.
> 
> Do you not plan to replace the existing library groups functionality with
> this?

I had not thought about it, but it would make a log of sense! That should definitely be a separate bug to limit scope creep, but I think it's an excellent idea. After that we could do away with the existing groups functionality altogether.
Comment 72 Kyle M Hall (khall) 2016-06-14 15:09:01 UTC
(In reply to Jonathan Druart from comment #70)
> The discussion about the modal should be brought at the next dev meeting I
> think:
> Is everybody (i.e. the majority) agrees on this change, who is going to
> implement it to the other pages, etc.

That sounds good to me. I think we should vote to add this behavior as the preferred "one page" viewer/editor style, deprecating the older "hide/show" style in preference to it. Once that is voted on, we can identify pages that use the "hide/show" style and file bugs to replace each one. I'd be happy to work on those bugs. I think using the modal is great ux improvement and it would be worthwhile to make that change throughout Koha.
Comment 73 Katrin Fischer 2016-06-15 06:08:11 UTC
>Basically it's just styled with the group and library names italicized and >bold. I think we need a standard pattern for how to style the names of things >in this fashion, and I see no reason not to start here.

Please don't do this! It breaks translation by splitting the sentence into multiple parts in the po files. Until that is fixed, using in-sentence mark-up is a really bad thing for translators. Using TT variables works fine and they get replaced by %s, but <b> and <i> mid-sentence are bad.
Comment 74 Katrin Fischer 2016-06-15 06:10:15 UTC
Talking about these for an example:

+    <div class="dialog alert group-added">
+        [% IF added.branchcode %]
+            <i>[% added.library.branchname %]</i> added to group.
+        [% ELSE %]
+            Group <i>[% added.title %]</i> created.
+        [% END %]
+    </div>

Second example in the po file is:
- Group
- created
Instead of: Group %s created.
Comment 75 Kyle M Hall (khall) 2016-06-15 11:31:45 UTC
(In reply to Katrin Fischer from comment #74)
> Talking about these for an example:
> 
> +    <div class="dialog alert group-added">
> +        [% IF added.branchcode %]
> +            <i>[% added.library.branchname %]</i> added to group.
> +        [% ELSE %]
> +            Group <i>[% added.title %]</i> created.
> +        [% END %]
> +    </div>
> 
> Second example in the po file is:
> - Group
> - created
> Instead of: Group %s created.

What if we were to take advantage of TT to "hide" the markup for translations?
Instead of:
Group <i>[% added.title %]</i> created.
we could do this:
Group [% "<i>" _ added.title _ "</i>" %] created.

That way, we can still emphasize names, but the markup will not show. We could even create a filter if we standardize this so we could do something like this:

Group [% added.title | $KohaSpan id => 'myId' class => 'name'  %] created.

That solves the problem of translations while still allowing us to style particular elements in a sentence!

What do you think?
Comment 76 Katrin Fischer 2016-06-15 11:48:03 UTC
If that works with the po files - it's totally ok for me. I can see how highlighting words or pre-formatting things can be useful.
Comment 77 Marc Véron 2016-06-15 12:17:20 UTC
(In reply to Kyle M Hall from comment #75)
> (In reply to Katrin Fischer from comment #74)
> > Talking about these for an example:
> > 
> > +    <div class="dialog alert group-added">
> > +        [% IF added.branchcode %]
> > +            <i>[% added.library.branchname %]</i> added to group.
> > +        [% ELSE %]
> > +            Group <i>[% added.title %]</i> created.
> > +        [% END %]
> > +    </div>
> > 
> > Second example in the po file is:
> > - Group
> > - created
> > Instead of: Group %s created.
> 
> What if we were to take advantage of TT to "hide" the markup for
> translations?
> Instead of:
> Group <i>[% added.title %]</i> created.
> we could do this:
> Group [% "<i>" _ added.title _ "</i>" %] created.
> 
> That way, we can still emphasize names, but the markup will not show. We
> could even create a filter if we standardize this so we could do something
> like this:
> 
> Group [% added.title | $KohaSpan id => 'myId' class => 'name'  %] created.
> 
> That solves the problem of translations while still allowing us to style
> particular elements in a sentence!
> 
> What do you think?

That sounds interesting, see: 
http://template-toolkit.org/docs/manual/Directives.html

---start snip---

You can concatenate strings together using the ' _ ' operator. In Perl 5, the . is used for string concatenation, but in Perl 6, as in the Template Toolkit, the . will be used as the method calling operator and ' _ ' will be used for string concatenation. Note that the operator must be specified with surrounding whitespace which, as Larry says, is construed as a feature:

[% copyright = '(C) Copyright' _ year _ ' ' _ author %]

You can, of course, achieve a similar effect with double quoted string interpolation.

[% copyright = "(C) Copyright $year $author" %]

---end snip---
Comment 78 Marc Véron 2016-06-16 13:54:37 UTC
(In reply to Kyle M Hall from comment #75)
(...)
> That way, we can still emphasize names, but the markup will not show. We
> could even create a filter if we standardize this so we could do something
> like this:
>Group [% added.title | $KohaSpan id => 'myId' class => 'name'  %] created.
(...)

Hi Kyle,
I tried the follwing:

Group [% '<i>' _ added.title | $KohaSpan id => 'myId' class => 'name' _ '</i>'  %] created.
...but it results in a template error. 

A workaround would be:

[% myvalue = added.title | $KohaSpan id => 'myId' class => 'name' %]
Group [% '<i>' _ myvalue _ '</i>'  %] created.
Comment 79 Kyle M Hall (khall) 2016-06-20 11:28:27 UTC
Marc, did you create a KohaSpan filter? If not, that would cause your error. I will write that and add it to this bug!
Comment 80 Kyle M Hall (khall) 2016-06-20 11:46:23 UTC Comment hidden (obsolete)
Comment 81 Kyle M Hall (khall) 2016-06-20 11:46:39 UTC
Created attachment 52563 [details] [review]
Bug 15707 - Update DB

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 82 Kyle M Hall (khall) 2016-06-20 11:46:47 UTC
Created attachment 52564 [details] [review]
Bug 15707 - Add new modules

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 83 Kyle M Hall (khall) 2016-06-20 11:46:50 UTC
Created attachment 52565 [details] [review]
Bug 15707 - Add editor

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 84 Kyle M Hall (khall) 2016-06-20 11:46:53 UTC
Created attachment 52566 [details] [review]
Bug 15707 - Add and update schema files

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 85 Kyle M Hall (khall) 2016-06-20 11:46:57 UTC
Created attachment 52567 [details] [review]
Bug 15707 - Add TreeGrid library to about page

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 86 Kyle M Hall (khall) 2016-06-20 11:47:00 UTC
Created attachment 52568 [details] [review]
Bug 15707 - Unit Tests

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 87 Kyle M Hall (khall) 2016-06-20 11:47:03 UTC
Created attachment 52569 [details] [review]
Bug 15707: Fix conflict with bug 15446 (type vs _type)
Comment 88 Kyle M Hall (khall) 2016-06-20 11:47:07 UTC
Created attachment 52570 [details] [review]
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses
Comment 89 Kyle M Hall (khall) 2016-06-20 11:47:10 UTC
Created attachment 52571 [details] [review]
Bug 15707: QA follow-up - Drop table if exists

1/ DROP table if exists
2/ FAIL   spelling
    decendents  ==> descendants
Comment 90 Kyle M Hall (khall) 2016-06-20 11:47:14 UTC
Created attachment 52572 [details] [review]
Bug 15707 [QA Followup] - Fix UI issues
Comment 91 Kyle M Hall (khall) 2016-06-20 11:47:17 UTC
Created attachment 52573 [details] [review]
Bug 15707 [QA Followup] - Remove class for treegrid
Comment 92 Kyle M Hall (khall) 2016-06-20 11:47:20 UTC Comment hidden (obsolete)
Comment 93 Kyle M Hall (khall) 2016-06-20 11:48:50 UTC
Created attachment 52575 [details] [review]
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation
Comment 94 Jonathan Druart 2016-08-02 09:15:59 UTC
What is the status of this?

IMO we should wait for bug 16735 before pushing this one. It won't make sense to have 15707 without 16735.
Comment 95 Martin Renvoize (ashimema) 2016-10-20 07:31:44 UTC
Is this still moving.. looks interesting
Comment 96 Kyle M Hall (khall) 2016-11-02 13:25:49 UTC
Created attachment 57080 [details] [review]
Bug 15707 - Update DB

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 97 Kyle M Hall (khall) 2016-11-02 13:26:45 UTC
Created attachment 57081 [details] [review]
Bug 15707 - Update DB

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 98 Kyle M Hall (khall) 2016-11-02 13:28:40 UTC
Created attachment 57082 [details] [review]
Bug 15707 - Update DB

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 99 Kyle M Hall (khall) 2016-11-02 13:28:49 UTC
Created attachment 57083 [details] [review]
Bug 15707 - Add new modules

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 100 Kyle M Hall (khall) 2016-11-02 13:28:53 UTC
Created attachment 57084 [details] [review]
Bug 15707 - Add editor

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 101 Kyle M Hall (khall) 2016-11-02 13:28:57 UTC
Created attachment 57085 [details] [review]
Bug 15707 - Add TreeGrid library to about page

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 102 Kyle M Hall (khall) 2016-11-02 13:29:02 UTC
Created attachment 57086 [details] [review]
Bug 15707 - Unit Tests

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 103 Kyle M Hall (khall) 2016-11-02 13:29:06 UTC
Created attachment 57087 [details] [review]
Bug 15707: Fix conflict with bug 15446 (type vs _type)
Comment 104 Kyle M Hall (khall) 2016-11-02 13:29:09 UTC
Created attachment 57088 [details] [review]
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses
Comment 105 Kyle M Hall (khall) 2016-11-02 13:29:13 UTC
Created attachment 57089 [details] [review]
Bug 15707: QA follow-up - Drop table if exists

1/ DROP table if exists
2/ FAIL   spelling
    decendents  ==> descendants
Comment 106 Kyle M Hall (khall) 2016-11-02 13:29:17 UTC
Created attachment 57090 [details] [review]
Bug 15707 [QA Followup] - Fix UI issues
Comment 107 Kyle M Hall (khall) 2016-11-02 13:29:21 UTC
Created attachment 57091 [details] [review]
Bug 15707 [QA Followup] - Remove class for treegrid
Comment 108 Kyle M Hall (khall) 2016-11-02 13:29:25 UTC
Created attachment 57092 [details] [review]
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation
Comment 109 Kyle M Hall (khall) 2016-11-02 13:29:29 UTC
Created attachment 57093 [details] [review]
Bug 15707 - Update Schema Files
Comment 110 Josef Moravec 2016-12-10 08:01:41 UTC
Created attachment 58086 [details] [review]
Bug 15707: Followup - use cat-search instead of cities-search in header
Comment 111 Josef Moravec 2016-12-10 08:03:29 UTC
When testing bug 16735, I found, that in header is used cities search form, I fixed it in followup as it is an easy fix.
Comment 112 Jonathan Druart 2016-12-13 14:17:17 UTC
QA comments (with bug 16735):

1/ treegrid plugin patches should be removed
2/ updatedb: I think we decided not to use Koha code from the updatedb process
3/ I have added a library to  __SEARCH_GROUPS__, on the adv search form, the dropdown list contains an empty line, if I select it, the result list is empty
4/ There are 2 occurrences of Koha::Library->get_categories in C4/Circulation.pm
5/ There is a lack of tests, some new subroutines are not tested
6/ DB structure
- updated_on could be "timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP". That would avoid the trick in ->store
- Don't we want a constraint a the library_groups table? A unique key on title for instance.
Comment 113 Kyle M Hall (khall) 2017-02-21 13:41:30 UTC Comment hidden (obsolete)
Comment 114 Kyle M Hall (khall) 2017-02-21 13:41:55 UTC Comment hidden (obsolete)
Comment 115 Kyle M Hall (khall) 2017-02-21 13:42:03 UTC Comment hidden (obsolete)
Comment 116 Kyle M Hall (khall) 2017-02-21 13:42:07 UTC Comment hidden (obsolete)
Comment 117 Kyle M Hall (khall) 2017-02-21 13:42:11 UTC Comment hidden (obsolete)
Comment 118 Kyle M Hall (khall) 2017-02-21 13:42:15 UTC Comment hidden (obsolete)
Comment 119 Kyle M Hall (khall) 2017-02-21 13:42:19 UTC Comment hidden (obsolete)
Comment 120 Kyle M Hall (khall) 2017-02-21 13:42:23 UTC Comment hidden (obsolete)
Comment 121 Kyle M Hall (khall) 2017-02-21 13:42:28 UTC Comment hidden (obsolete)
Comment 122 Kyle M Hall (khall) 2017-02-21 13:42:32 UTC Comment hidden (obsolete)
Comment 123 Kyle M Hall (khall) 2017-02-21 13:42:37 UTC Comment hidden (obsolete)
Comment 124 Kyle M Hall (khall) 2017-02-21 13:42:42 UTC Comment hidden (obsolete)
Comment 125 Kyle M Hall (khall) 2017-02-21 13:42:46 UTC Comment hidden (obsolete)
Comment 126 Kyle M Hall (khall) 2017-02-21 13:42:51 UTC Comment hidden (obsolete)
Comment 127 Kyle M Hall (khall) 2017-02-21 13:42:55 UTC Comment hidden (obsolete)
Comment 128 Kyle M Hall (khall) 2017-02-22 19:56:40 UTC Comment hidden (obsolete)
Comment 129 Kyle M Hall (khall) 2017-02-22 19:57:00 UTC Comment hidden (obsolete)
Comment 130 Kyle M Hall (khall) 2017-02-22 19:57:09 UTC Comment hidden (obsolete)
Comment 131 Kyle M Hall (khall) 2017-02-22 19:57:13 UTC Comment hidden (obsolete)
Comment 132 Kyle M Hall (khall) 2017-02-22 19:57:17 UTC Comment hidden (obsolete)
Comment 133 Kyle M Hall (khall) 2017-02-22 19:57:21 UTC Comment hidden (obsolete)
Comment 134 Kyle M Hall (khall) 2017-02-22 19:57:26 UTC Comment hidden (obsolete)
Comment 135 Kyle M Hall (khall) 2017-02-22 19:57:30 UTC Comment hidden (obsolete)
Comment 136 Kyle M Hall (khall) 2017-02-22 19:57:34 UTC Comment hidden (obsolete)
Comment 137 Kyle M Hall (khall) 2017-02-22 19:57:39 UTC Comment hidden (obsolete)
Comment 138 Kyle M Hall (khall) 2017-02-22 19:57:43 UTC Comment hidden (obsolete)
Comment 139 Kyle M Hall (khall) 2017-02-22 19:57:48 UTC Comment hidden (obsolete)
Comment 140 Kyle M Hall (khall) 2017-02-22 19:57:52 UTC Comment hidden (obsolete)
Comment 141 Kyle M Hall (khall) 2017-02-22 19:57:57 UTC Comment hidden (obsolete)
Comment 142 Kyle M Hall (khall) 2017-02-22 19:58:01 UTC Comment hidden (obsolete)
Comment 143 Kyle M Hall (khall) 2017-02-22 19:58:05 UTC Comment hidden (obsolete)
Comment 144 Jonathan Druart 2017-02-23 17:46:48 UTC
(In reply to Owen Leonard from comment #62)

> - Nowhere else in Koha do we use a modal to display an add form. We either
> display a form on a separate page or we use JS to show/hide the edit form on
> the page to mimic the display of a separate page. See
> admin/items_search_fields.pl for example.

> - Nowhere else in Koha do we add an icon to the "actions" menu.

> - Nowhere else in Koha do we use a modal to display a delete confirmation
> message. I think I could be convinced that we should, but I'd like to hear
> the argument. If we do, we should use the space given to display more
> information about the deletion than this implementation does, e.g. what
> exactly am I deleting?


This is still valid.
Comment 145 Jonathan Druart 2017-02-23 17:57:54 UTC
(In reply to Kyle M Hall from comment #142)
> Created attachment 60586 [details] [review] [review]
> Bug 15707 - Add UNIQUE constraint to library groups table

This works but explodes if happens (DBD::mysql::st execute failed: Duplicate entry 'xxx' for key 'title')
Comment 146 Jonathan Druart 2017-02-23 18:06:01 UTC
- Empty groups (without libraries) are displayed in the adv search form, I do not think they should.

- If Search groups contain several levels of subgroups, only the first one will be used. Not sure it's the expected behaviour.

Example:
__SEARCH_GROUP__
  Group 1
    Library 1
    Subgroup
      Library 2

Search on "Group 1" will search in library 1.
Comment 147 Jonathan Druart 2017-02-23 18:09:15 UTC
Comment 144 in discussion

Failing QA for comments 145 and 146.
Comment 148 Jonathan Druart 2017-02-23 18:11:18 UTC
Also note that last DB changes have not been propagated to schema files.
Comment 149 Kyle M Hall (khall) 2017-03-01 14:01:13 UTC
Created attachment 60755 [details] [review]
Bug 15707 - Update DB

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 150 Kyle M Hall (khall) 2017-03-01 14:02:07 UTC
Created attachment 60756 [details] [review]
Bug 15707 - Update DB

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 151 Kyle M Hall (khall) 2017-03-01 14:02:18 UTC
Created attachment 60757 [details] [review]
Bug 15707 - Add new modules

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 152 Kyle M Hall (khall) 2017-03-01 14:02:24 UTC
Created attachment 60758 [details] [review]
Bug 15707 - Add editor

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 153 Kyle M Hall (khall) 2017-03-01 14:02:29 UTC
Created attachment 60759 [details] [review]
Bug 15707 - Unit Tests

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 154 Kyle M Hall (khall) 2017-03-01 14:02:34 UTC
Created attachment 60760 [details] [review]
Bug 15707: Fix conflict with bug 15446 (type vs _type)
Comment 155 Kyle M Hall (khall) 2017-03-01 14:02:40 UTC
Created attachment 60761 [details] [review]
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses
Comment 156 Kyle M Hall (khall) 2017-03-01 14:02:46 UTC
Created attachment 60762 [details] [review]
Bug 15707: QA follow-up - Drop table if exists

1/ DROP table if exists
2/ FAIL   spelling
    decendents  ==> descendants
Comment 157 Kyle M Hall (khall) 2017-03-01 14:02:51 UTC
Created attachment 60763 [details] [review]
Bug 15707 [QA Followup] - Fix UI issues
Comment 158 Kyle M Hall (khall) 2017-03-01 14:02:57 UTC
Created attachment 60764 [details] [review]
Bug 15707 [QA Followup] - Remove class for treegrid
Comment 159 Kyle M Hall (khall) 2017-03-01 14:03:03 UTC
Created attachment 60765 [details] [review]
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation
Comment 160 Kyle M Hall (khall) 2017-03-01 14:03:09 UTC
Created attachment 60766 [details] [review]
Bug 15707 - Update Schema Files
Comment 161 Kyle M Hall (khall) 2017-03-01 14:03:14 UTC
Created attachment 60767 [details] [review]
Bug 15707: Followup - use cat-search instead of cities-search in header
Comment 162 Kyle M Hall (khall) 2017-03-01 14:03:19 UTC
Created attachment 60768 [details] [review]
Bug 15707 - Switch datetimes to timestamps
Comment 163 Kyle M Hall (khall) 2017-03-01 14:03:25 UTC
Created attachment 60769 [details] [review]
Bug 15707 - Add UNIQUE constraint to library groups table
Comment 164 Kyle M Hall (khall) 2017-03-01 14:03:30 UTC
Created attachment 60770 [details] [review]
Bug 15707 - Updates for Bootstrap 3
Comment 165 Kyle M Hall (khall) 2017-03-01 14:03:37 UTC
Created attachment 60771 [details] [review]
Bug 15707 - Display error if group title is already used
Comment 166 Kyle M Hall (khall) 2017-03-01 14:09:51 UTC
(In reply to Jonathan Druart from comment #146)
> - Empty groups (without libraries) are displayed in the adv search form, I
> do not think they should.

Fixed!
 
> - If Search groups contain several levels of subgroups, only the first one
> will be used. Not sure it's the expected behaviour.
> 
> Example:
> __SEARCH_GROUP__
>   Group 1
>     Library 1
>     Subgroup
>       Library 2
> 
> Search on "Group 1" will search in library 1.

That is expected behavior and will be documented in the manual. There is no additional utility for this particular feature to sub-groups.
Comment 167 Jonathan Druart 2017-03-07 16:17:31 UTC
(In reply to Kyle M Hall from comment #166)
> > - If Search groups contain several levels of subgroups, only the first one
> > will be used. Not sure it's the expected behaviour.
> > 
> > Example:
> > __SEARCH_GROUP__
> >   Group 1
> >     Library 1
> >     Subgroup
> >       Library 2
> > 
> > Search on "Group 1" will search in library 1.
> 
> That is expected behavior and will be documented in the manual. There is no
> additional utility for this particular feature to sub-groups.

If L1 is in a subgroup that is in a group, L1 is not considered part of the group?
This behaviour sounds very weird.
Why did you choose this behaviour?
Comment 168 Kyle M Hall (khall) 2017-03-16 10:10:29 UTC
(In reply to Jonathan Druart from comment #167)
> (In reply to Kyle M Hall from comment #166)
> > > - If Search groups contain several levels of subgroups, only the first one
> > > will be used. Not sure it's the expected behaviour.
> > > 
> > > Example:
> > > __SEARCH_GROUP__
> > >   Group 1
> > >     Library 1
> > >     Subgroup
> > >       Library 2
> > > 
> > > Search on "Group 1" will search in library 1.
> > 
> > That is expected behavior and will be documented in the manual. There is no
> > additional utility for this particular feature to sub-groups.
> 
> If L1 is in a subgroup that is in a group, L1 is not considered part of the
> group?
> This behaviour sounds very weird.
> Why did you choose this behaviour?

For efficiency. If you think it makes more sense to have all libraries in all subgroups selected as well I'd be happy to change it.
Comment 169 Jonathan Druart 2017-03-16 16:55:08 UTC
(In reply to Kyle M Hall from comment #168)
> For efficiency. If you think it makes more sense to have all libraries in
> all subgroups selected as well I'd be happy to change it.

To me it does not make sense not to go all over the whole tree, I think it would be good to get other opinions.
Comment 170 Martin Renvoize (ashimema) 2017-03-30 06:34:18 UTC
I've not really been following this one too closely yet, though it is interesting.

I agree that we need a clear inheritance model defined, and personally would agree with the above comments.

As a further note, I see you've chosen to use Adjacency List, and you've coded the queries yourself.  Did you investigate any of the other options for storing hierarchies in a database.. Nested Set or Materialized Path perhaps, and did you not consider leaning on the shoulders of giants and using one of the DBIx::Class modules to construct the queries for you in the most optimal way for the data you require?

It's important to consider future use cases, each hierarchical data model has it's strengths and it's weaknesses in terms of performance and space requirements.  In general, I think Materialized Path is the defacto recommended way of doing hierarchies in relational databases now.
Comment 171 Martin Renvoize (ashimema) 2017-04-13 11:22:09 UTC
Is there a 'functional requirements' document anywhere for all this.. the more I read the code and linked bugs the more confused I get about what it's actually trying to achieve :(
Comment 172 Mark Tompsett 2017-06-16 15:15:26 UTC
(In reply to Martin Renvoize from comment #171)
> Is there a 'functional requirements' document anywhere for all this.. the
> more I read the code and linked bugs the more confused I get about what it's
> actually trying to achieve :(

Bug 10276 - RIP.
Comment 173 Kyle M Hall (khall) 2017-08-08 16:58:34 UTC
Created attachment 65666 [details] [review]
Bug 15707 - Update DB

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 174 Kyle M Hall (khall) 2017-08-08 16:58:45 UTC
Created attachment 65667 [details] [review]
Bug 15707 - Add new modules

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 175 Kyle M Hall (khall) 2017-08-08 16:58:50 UTC
Created attachment 65668 [details] [review]
Bug 15707 - Add editor

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 176 Kyle M Hall (khall) 2017-08-08 16:58:55 UTC
Created attachment 65669 [details] [review]
Bug 15707 - Unit Tests

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 177 Kyle M Hall (khall) 2017-08-08 16:59:00 UTC
Created attachment 65670 [details] [review]
Bug 15707: Fix conflict with bug 15446 (type vs _type)
Comment 178 Kyle M Hall (khall) 2017-08-08 16:59:06 UTC
Created attachment 65671 [details] [review]
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses
Comment 179 Kyle M Hall (khall) 2017-08-08 16:59:11 UTC
Created attachment 65672 [details] [review]
Bug 15707: QA follow-up - Drop table if exists

1/ DROP table if exists
2/ FAIL   spelling
    decendents  ==> descendants
Comment 180 Kyle M Hall (khall) 2017-08-08 16:59:16 UTC
Created attachment 65673 [details] [review]
Bug 15707 [QA Followup] - Fix UI issues
Comment 181 Kyle M Hall (khall) 2017-08-08 16:59:20 UTC
Created attachment 65674 [details] [review]
Bug 15707 [QA Followup] - Remove class for treegrid
Comment 182 Kyle M Hall (khall) 2017-08-08 16:59:25 UTC
Created attachment 65675 [details] [review]
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation
Comment 183 Kyle M Hall (khall) 2017-08-08 16:59:31 UTC
Created attachment 65676 [details] [review]
Bug 15707 - Update Schema Files
Comment 184 Kyle M Hall (khall) 2017-08-08 16:59:37 UTC
Created attachment 65677 [details] [review]
Bug 15707: Followup - use cat-search instead of cities-search in header
Comment 185 Kyle M Hall (khall) 2017-08-08 16:59:42 UTC
Created attachment 65678 [details] [review]
Bug 15707 - Switch datetimes to timestamps
Comment 186 Kyle M Hall (khall) 2017-08-08 16:59:48 UTC
Created attachment 65679 [details] [review]
Bug 15707 - Add UNIQUE constraint to library groups table
Comment 187 Kyle M Hall (khall) 2017-08-08 16:59:53 UTC
Created attachment 65680 [details] [review]
Bug 15707 - Updates for Bootstrap 3
Comment 188 Kyle M Hall (khall) 2017-08-08 16:59:58 UTC
Created attachment 65681 [details] [review]
Bug 15707 - Display error if group title is already used
Comment 189 Jonathan Druart 2017-12-05 16:58:58 UTC
Created attachment 69514 [details] [review]
Bug 15707 - Update DB

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 190 Jonathan Druart 2017-12-05 16:59:05 UTC
Created attachment 69515 [details] [review]
Bug 15707 - Add new modules

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 191 Jonathan Druart 2017-12-05 16:59:11 UTC
Created attachment 69516 [details] [review]
Bug 15707 - Add editor

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 192 Jonathan Druart 2017-12-05 16:59:18 UTC
Created attachment 69517 [details] [review]
Bug 15707 - Unit Tests

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Comment 193 Jonathan Druart 2017-12-05 16:59:24 UTC
Created attachment 69518 [details] [review]
Bug 15707: Fix conflict with bug 15446 (type vs _type)
Comment 194 Jonathan Druart 2017-12-05 16:59:30 UTC
Created attachment 69519 [details] [review]
Bug 15707 [QA Followup] - Switch to treetable which Koha already uses
Comment 195 Jonathan Druart 2017-12-05 16:59:36 UTC
Created attachment 69520 [details] [review]
Bug 15707: QA follow-up - Drop table if exists

1/ DROP table if exists
2/ FAIL   spelling
    decendents  ==> descendants
Comment 196 Jonathan Druart 2017-12-05 16:59:44 UTC
Created attachment 69521 [details] [review]
Bug 15707 [QA Followup] - Fix UI issues
Comment 197 Jonathan Druart 2017-12-05 16:59:50 UTC
Created attachment 69522 [details] [review]
Bug 15707 [QA Followup] - Remove class for treegrid
Comment 198 Jonathan Druart 2017-12-05 16:59:56 UTC
Created attachment 69523 [details] [review]
Bug 15707 [QA Followup] - Allow object names to be styled without impeding translation
Comment 199 Jonathan Druart 2017-12-05 17:00:02 UTC
Created attachment 69524 [details] [review]
Bug 15707: Followup - use cat-search instead of cities-search in header
Comment 200 Jonathan Druart 2017-12-05 17:00:08 UTC
Created attachment 69525 [details] [review]
Bug 15707 - Switch datetimes to timestamps
Comment 201 Jonathan Druart 2017-12-05 17:00:15 UTC
Created attachment 69526 [details] [review]
Bug 15707 - Add UNIQUE constraint to library groups table
Comment 202 Jonathan Druart 2017-12-05 17:00:21 UTC
Created attachment 69527 [details] [review]
Bug 15707 - Updates for Bootstrap 3
Comment 203 Jonathan Druart 2017-12-05 17:00:27 UTC
Created attachment 69528 [details] [review]
Bug 15707 - Display error if group title is already used
Comment 204 Jonathan Druart 2017-12-05 17:05:46 UTC
Created attachment 69529 [details] [review]
Bug 15707: DBIC Schema files
Comment 205 Jonathan Druart 2017-12-05 17:35:14 UTC
Patches have been rebased.
Comment 206 Tomás Cohen Arazi (tcohen) 2017-12-06 19:05:26 UTC
Created attachment 69573 [details] [review]
Bug 15707: Update DB

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 207 Tomás Cohen Arazi (tcohen) 2017-12-06 19:05:32 UTC
Created attachment 69574 [details] [review]
Bug 15707: Add Koha::Library::Group(s) modules

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 208 Tomás Cohen Arazi (tcohen) 2017-12-06 19:05:38 UTC
Created attachment 69575 [details] [review]
Bug 15707: Add library groups editor

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 209 Tomás Cohen Arazi (tcohen) 2017-12-06 19:05:44 UTC
Created attachment 69576 [details] [review]
Bug 15707: Unit Tests

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 210 Tomás Cohen Arazi (tcohen) 2017-12-06 19:05:50 UTC
Created attachment 69577 [details] [review]
Bug 15707: Fix conflict with bug 15446 (type vs _type)

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 211 Tomás Cohen Arazi (tcohen) 2017-12-06 19:05:56 UTC
Created attachment 69578 [details] [review]
Bug 15707: (QA followup) Switch to treetable which Koha already uses

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 212 Tomás Cohen Arazi (tcohen) 2017-12-06 19:06:08 UTC
Created attachment 69579 [details] [review]
Bug 15707: (QA followup) Drop table if exists

1/ DROP table if exists
2/ FAIL   spelling
    decendents  ==> descendants

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 213 Tomás Cohen Arazi (tcohen) 2017-12-06 19:06:14 UTC
Created attachment 69580 [details] [review]
Bug 15707: (QA followup) Fix UI issues

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 214 Tomás Cohen Arazi (tcohen) 2017-12-06 19:06:20 UTC
Created attachment 69581 [details] [review]
Bug 15707: (QA followup) Remove class for treegrid

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 215 Tomás Cohen Arazi (tcohen) 2017-12-06 19:06:26 UTC
Created attachment 69582 [details] [review]
Bug 15707: (QA followup) Allow object names to be styled without impeding translation

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 216 Tomás Cohen Arazi (tcohen) 2017-12-06 19:06:33 UTC
Created attachment 69583 [details] [review]
Bug 15707: (followup) use cat-search instead of cities-search in header

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 217 Tomás Cohen Arazi (tcohen) 2017-12-06 19:06:39 UTC
Created attachment 69584 [details] [review]
Bug 15707: Switch datetimes to timestamps

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 218 Tomás Cohen Arazi (tcohen) 2017-12-06 19:06:45 UTC
Created attachment 69585 [details] [review]
Bug 15707: Add UNIQUE constraint to library groups table

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 219 Tomás Cohen Arazi (tcohen) 2017-12-06 19:06:51 UTC
Created attachment 69586 [details] [review]
Bug 15707: Updates for Bootstrap 3

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 220 Tomás Cohen Arazi (tcohen) 2017-12-06 19:06:59 UTC
Created attachment 69587 [details] [review]
Bug 15707: Display error if group title is already used

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Edit: I added !$branchcode && to the checked condition so we can add multiple
libraries back.
Comment 221 Tomás Cohen Arazi (tcohen) 2017-12-06 19:07:06 UTC
Created attachment 69588 [details] [review]
Bug 15707: DBIC Schema files

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 222 Tomás Cohen Arazi (tcohen) 2017-12-06 19:13:23 UTC
Created attachment 69589 [details] [review]
Bug 15707: (QA followup) Style buttons correctly

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Comment 223 Jonathan Druart 2018-02-02 16:51:00 UTC
library_groups.created_on and updated_on are DATETIME in kohastructure but timestamp in atomic update.
Comment 224 Jonathan Druart 2018-02-02 17:29:35 UTC
Patches do not apply but rebased on https://github.com/joubu/Koha/commits/bug_18403
Comment 225 Jonathan Druart 2018-02-09 20:07:41 UTC
(In reply to Jonathan Druart from comment #223)
> library_groups.created_on and updated_on are DATETIME in kohastructure but
> timestamp in atomic update.

I kept TIMESTAMP
Comment 226 Jonathan Druart 2018-02-12 18:47:20 UTC
Pushed to master for 18.05, thanks to everybody involved!
Comment 227 Nick Clemens (kidclamp) 2018-02-16 01:39:08 UTC
Awesome work all! New feature, not backported to stable.