Bug 8628 - Add digital signs to the OPAC
Summary: Add digital signs to the OPAC
Status: Failed QA
Alias: None
Product: Koha
Classification: Unclassified
Component: OPAC (show other bugs)
Version: Main
Hardware: All All
: P5 - low new feature (vote)
Assignee: Aleisha Amohia
QA Contact: Marcel de Rooy
URL:
Keywords:
Depends on: 8630
Blocks:
  Show dependency treegraph
 
Reported: 2012-08-13 10:42 UTC by Magnus Enger
Modified: 2023-09-21 13:08 UTC (History)
15 users (show)

See Also:
Change sponsored?: Sponsored
Patch complexity: Large patch
Documentation contact:
Documentation submission:
Text to go in the release notes:
Version(s) released in:


Attachments
Bug 8628: Add digital signs to the OPAC, dbchanges (7.07 KB, patch)
2015-09-18 12:50 UTC, Martin Stenberg
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC (70.43 KB, patch)
2015-09-18 12:51 UTC, Martin Stenberg
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC, dbchanges (7.09 KB, patch)
2015-12-23 23:29 UTC, Chris Cormack
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC (70.70 KB, patch)
2015-12-23 23:29 UTC, Chris Cormack
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] Add digital signs to the OPAC (59.79 KB, patch)
2017-01-04 22:34 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC, dbchanges (7.13 KB, patch)
2017-01-04 22:47 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC (70.71 KB, patch)
2017-01-04 22:47 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] Add digital signs to the OPAC (59.79 KB, patch)
2017-01-04 22:47 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] Add digital signs to the OPAC (59.80 KB, patch)
2017-04-18 22:41 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] More fixes (21.65 KB, patch)
2017-06-13 04:20 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] Add digital signs to the OPAC (59.77 KB, patch)
2017-08-20 21:52 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC, dbchanges (7.13 KB, patch)
2017-08-20 22:06 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC (70.71 KB, patch)
2017-08-20 22:06 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] More fixes (23.87 KB, patch)
2017-08-20 22:06 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] Add digital signs to the OPAC (49.62 KB, patch)
2017-08-20 22:06 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC, dbchanges (7.12 KB, patch)
2018-07-17 01:24 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC (70.71 KB, patch)
2018-07-17 01:24 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] More fixes (24.12 KB, patch)
2018-07-17 01:24 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] Add digital signs to the OPAC (49.62 KB, patch)
2018-07-17 01:24 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC, dbchanges (7.12 KB, patch)
2018-07-20 01:38 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC (70.71 KB, patch)
2018-07-20 01:38 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] More fixes (24.12 KB, patch)
2018-07-20 01:39 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] Add digital signs to the OPAC (49.62 KB, patch)
2018-07-20 01:39 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] Fixing internal server error and rebase issues (9.50 KB, patch)
2018-07-20 01:39 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Screenshot of the test. (64.80 KB, image/jpeg)
2018-09-14 19:03 UTC, Spencer
Details
Bug 8628: [FOLLOW-UP] More fixes (24.15 KB, patch)
2018-10-09 00:37 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] Add digital signs to the OPAC (49.62 KB, patch)
2018-10-09 00:37 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: [FOLLOW-UP] Fixing internal server error and rebase issues (9.50 KB, patch)
2018-10-09 00:37 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Some template fixes (3.05 KB, patch)
2018-10-09 01:04 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC, dbchanges (7.20 KB, patch)
2018-12-05 22:18 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Add digital signs to the OPAC (70.71 KB, patch)
2018-12-05 22:18 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) More fixes (24.37 KB, patch)
2018-12-05 22:18 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Add digital signs to the OPAC (49.62 KB, patch)
2018-12-05 22:18 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fixing internal server error and rebase issues (9.50 KB, patch)
2018-12-05 22:18 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Some template fixes (3.05 KB, patch)
2018-12-05 22:19 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fixing CSS so titles don't overlap (1.17 KB, patch)
2018-12-17 20:57 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - db changes (13.09 KB, patch)
2019-04-26 01:47 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - schema updates (8.58 KB, patch)
2019-04-26 01:48 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - Koha objects (8.54 KB, patch)
2019-04-26 01:48 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - preferences and permissions (2.99 KB, patch)
2019-04-26 01:48 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - staff interface (38.15 KB, patch)
2019-04-26 01:48 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - opac interface (37.42 KB, patch)
2019-04-26 01:48 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - db changes (13.08 KB, patch)
2019-09-20 20:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 8628: Digital signs - schema updates (8.56 KB, patch)
2019-09-20 20:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 8628: Digital signs - Koha objects (8.58 KB, patch)
2019-09-20 20:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 8628: Digital signs - preferences and permissions (3.01 KB, patch)
2019-09-20 20:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 8628: Digital signs - staff interface (38.20 KB, patch)
2019-09-20 20:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 8628: Digital signs - opac interface (37.45 KB, patch)
2019-09-20 20:36 UTC, Nick Clemens
Details | Diff | Splinter Review
Bug 8628: Digital signs - db changes (13.13 KB, patch)
2019-09-20 22:03 UTC, ByWater Sandboxes
Details | Diff | Splinter Review
Bug 8628: Digital signs - schema updates (8.62 KB, patch)
2019-09-20 22:03 UTC, ByWater Sandboxes
Details | Diff | Splinter Review
Bug 8628: Digital signs - Koha objects (8.63 KB, patch)
2019-09-20 22:03 UTC, ByWater Sandboxes
Details | Diff | Splinter Review
Bug 8628: Digital signs - preferences and permissions (3.06 KB, patch)
2019-09-20 22:04 UTC, ByWater Sandboxes
Details | Diff | Splinter Review
Bug 8628: Digital signs - staff interface (38.25 KB, patch)
2019-09-20 22:04 UTC, ByWater Sandboxes
Details | Diff | Splinter Review
Bug 8628: Digital signs - opac interface (37.50 KB, patch)
2019-09-20 22:04 UTC, ByWater Sandboxes
Details | Diff | Splinter Review
Bug 8628: Digital signs - db changes (13.59 KB, patch)
2020-02-25 21:51 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - schema updates (8.59 KB, patch)
2020-02-25 21:51 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - Koha objects (8.59 KB, patch)
2020-02-25 21:51 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - preferences and permissions (3.09 KB, patch)
2020-02-25 21:51 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - staff interface (38.20 KB, patch)
2020-02-25 21:52 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - opac interface (37.48 KB, patch)
2020-02-25 21:52 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Use utf8mb4 and TableExists in atomic update (10.29 KB, patch)
2020-02-25 22:32 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fixing 'UseKohaPlugins' for qa tools (1.55 KB, patch)
2020-02-25 22:50 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fixes for qa tools (3.95 KB, patch)
2020-02-25 23:23 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - db changes (11.79 KB, patch)
2020-02-25 23:30 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - schema updates (8.59 KB, patch)
2020-02-25 23:30 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - Koha objects (8.59 KB, patch)
2020-02-25 23:30 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - preferences and permissions (3.09 KB, patch)
2020-02-25 23:30 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - staff interface (38.20 KB, patch)
2020-02-25 23:31 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - opac interface (37.48 KB, patch)
2020-02-25 23:31 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Use utf8mb4 and TableExists in atomic update (8.49 KB, patch)
2020-02-25 23:31 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fixes for qa tools (3.95 KB, patch)
2020-02-25 23:31 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Use utf8mb4 and TableExists in atomic update (8.50 KB, patch)
2020-02-27 21:17 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fixes for qa tools (3.95 KB, patch)
2020-02-27 21:17 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Screenshots - screens not aligned correctly (186.69 KB, application/pdf)
2020-02-29 07:57 UTC, David Nind
Details
Bug 8628: Digital signs - db changes (10.36 KB, patch)
2021-03-19 01:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - Koha objects (8.63 KB, patch)
2021-03-19 01:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - preferences and permissions (2.99 KB, patch)
2021-03-19 01:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - staff interface (36.96 KB, patch)
2021-03-19 01:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - opac interface (37.50 KB, patch)
2021-03-19 01:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Use utf8mb4 and TableExists in atomic update (8.47 KB, patch)
2021-03-19 01:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fixes for qa tools (2.69 KB, patch)
2021-03-19 01:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Updated schema files (8.57 KB, patch)
2021-03-19 01:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fix layout of signs admin page (1.64 KB, patch)
2021-03-19 01:09 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fix layout of signs admin page (1.69 KB, patch)
2021-04-12 14:02 UTC, Lund University Sandbox
Details | Diff | Splinter Review
Bug 8628: Updated schema files (8.58 KB, patch)
2022-03-02 02:57 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fix documentation, subroutine calls, filters (52.90 KB, patch)
2022-03-02 02:57 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - db changes (10.37 KB, patch)
2023-01-25 02:52 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - Koha objects (8.64 KB, patch)
2023-01-25 02:52 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - preferences and permissions (3.00 KB, patch)
2023-01-25 02:52 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - staff interface (39.17 KB, patch)
2023-01-25 02:52 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - opac interface (37.51 KB, patch)
2023-01-25 02:52 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Use utf8mb4 and TableExists in atomic update (8.48 KB, patch)
2023-01-25 02:53 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fixes for qa tools (2.69 KB, patch)
2023-01-25 02:53 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fix layout of signs admin page (1.69 KB, patch)
2023-01-25 02:53 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fix documentation, subroutine calls, filters (52.90 KB, patch)
2023-01-25 02:53 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Updated schema files (8.58 KB, patch)
2023-01-25 02:53 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - db changes (10.33 KB, patch)
2023-02-21 04:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - Koha objects (8.59 KB, patch)
2023-02-21 04:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - preferences and permissions (2.98 KB, patch)
2023-02-21 04:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - staff interface (39.12 KB, patch)
2023-02-21 04:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Digital signs - opac interface (37.48 KB, patch)
2023-02-21 04:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Use utf8mb4 and TableExists in atomic update (8.46 KB, patch)
2023-02-21 04:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fixes for qa tools (2.69 KB, patch)
2023-02-21 04:08 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fix layout of signs admin page (1.68 KB, patch)
2023-02-21 04:09 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fix documentation, subroutine calls, filters (52.81 KB, patch)
2023-02-21 04:09 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: Updated schema files (8.55 KB, patch)
2023-02-21 04:09 UTC, Aleisha Amohia
Details | Diff | Splinter Review
Bug 8628: (follow-up) Fix search calls and table pagination (3.97 KB, patch)
2023-02-21 04:09 UTC, Aleisha Amohia
Details | Diff | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Magnus Enger 2012-08-13 10:42:22 UTC
See http://wiki.koha-community.org/wiki/Digital_signs_RFC for details.
Comment 1 Martin Stenberg 2015-09-18 12:50:32 UTC Comment hidden (obsolete)
Comment 2 Martin Stenberg 2015-09-18 12:51:10 UTC Comment hidden (obsolete)
Comment 3 Chris Cormack 2015-12-23 23:29:02 UTC Comment hidden (obsolete)
Comment 4 Chris Cormack 2015-12-23 23:29:24 UTC Comment hidden (obsolete)
Comment 5 Jonathan Druart 2015-12-26 12:08:09 UTC
Martin,
Following the coding guidelines, new modules added to the Koha namespace should be object-oriented.
You should have a look at Koha::Object ( see Koha::Patron::Categories and Koha::Virtualshel* for examples).
Comment 6 Aleisha Amohia 2017-01-04 22:34:03 UTC Comment hidden (obsolete)
Comment 7 Aleisha Amohia 2017-01-04 22:47:13 UTC Comment hidden (obsolete)
Comment 8 Aleisha Amohia 2017-01-04 22:47:25 UTC Comment hidden (obsolete)
Comment 9 Aleisha Amohia 2017-01-04 22:47:35 UTC Comment hidden (obsolete)
Comment 10 Aleisha Amohia 2017-01-04 22:48:24 UTC Comment hidden (obsolete)
Comment 11 Aleisha Amohia 2017-04-18 22:41:36 UTC Comment hidden (obsolete)
Comment 12 Katrin Fischer 2017-05-01 21:18:02 UTC Comment hidden (obsolete)
Comment 13 Katrin Fischer 2017-05-01 21:37:57 UTC
Took a quick look at the code of the patches too:

1) There is an atomicupdate for adding a new permission edit_digital_signs, but no corresponding change to koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc
2) Maybe a merge issue, but sysprefs.sql removes 2 existing system preferences and doesn't add the new ones?
3) There is a comment about YUI - maybe that can just be thrown out?
+    // prepare DOM for YUI Toolbar
4) the borrow permission is used in opac-signs.pl but has since been removed.
Comment 14 Aleisha Amohia 2017-06-13 04:20:46 UTC Comment hidden (obsolete)
Comment 15 Katrin Fischer 2017-08-08 13:12:10 UTC
I tried to fix the conflicts in kohastructure.sql, but ended with:
 
Apply? [(y)es, (n)o, (i)nteractive] i
Applying: Bug 8628: [FOLLOW-UP] More fixes
fatal: sha1 information is lacking or useless (installer/data/mysql/kohastructure.sql).
error: could not build fake ancestor
Patch failed at 0001 Bug 8628: [FOLLOW-UP] More fixes
The copy of the patch that failed is found in: .git/rebase-apply/patch
When you have resolved this problem run "git bz apply --continue".
If you would prefer to skip this patch, instead run "git bz apply --skip".
To restore the original branch and stop patching run "git bz apply --abort".
Patch left in /tmp/Bug-8628-FOLLOW-UP-More-fixes-banEXL.patch

Can you please take a look?
Comment 16 Aleisha Amohia 2017-08-20 21:52:15 UTC Comment hidden (obsolete)
Comment 17 Aleisha Amohia 2017-08-20 22:06:07 UTC Comment hidden (obsolete)
Comment 18 Aleisha Amohia 2017-08-20 22:06:13 UTC Comment hidden (obsolete)
Comment 19 Aleisha Amohia 2017-08-20 22:06:20 UTC Comment hidden (obsolete)
Comment 20 Aleisha Amohia 2017-08-20 22:06:25 UTC Comment hidden (obsolete)
Comment 21 Aleisha Amohia 2017-08-20 22:07:20 UTC
Sorry about all that - looks like the patches apply without conflicts now. Ready to test.
Comment 22 Owen Leonard 2017-09-07 16:08:09 UTC
Is it correct that this bug depends on Bug 8630?
Comment 23 Katrin Fischer 2017-10-07 20:04:40 UTC Comment hidden (obsolete)
Comment 24 Magnus Enger 2018-02-06 09:20:54 UTC
I wonder if this would be better as a plugin...
Comment 25 Katrin Fischer 2018-02-08 07:24:58 UTC
It might be an option. But I really wish we could fix the translation problem of plugins so that we can really have fun with them.
Comment 26 Aleisha Amohia 2018-07-17 01:24:16 UTC Comment hidden (obsolete)
Comment 27 Aleisha Amohia 2018-07-17 01:24:23 UTC Comment hidden (obsolete)
Comment 28 Aleisha Amohia 2018-07-17 01:24:29 UTC Comment hidden (obsolete)
Comment 29 Aleisha Amohia 2018-07-17 01:24:35 UTC Comment hidden (obsolete)
Comment 30 Aleisha Amohia 2018-07-20 01:38:47 UTC Comment hidden (obsolete)
Comment 31 Aleisha Amohia 2018-07-20 01:38:54 UTC Comment hidden (obsolete)
Comment 32 Aleisha Amohia 2018-07-20 01:39:00 UTC Comment hidden (obsolete)
Comment 33 Aleisha Amohia 2018-07-20 01:39:07 UTC Comment hidden (obsolete)
Comment 34 Aleisha Amohia 2018-07-20 01:39:46 UTC Comment hidden (obsolete)
Comment 35 Cab Vinton 2018-08-29 00:21:02 UTC
Tested in Biblibre Sandbox 1 --

Digital signs does not appear under Tools/Additional Tools.

cgi-bin/koha/opac-signs.pl not found on server.

OPACDigitalSigns system preference is added.
Comment 36 Spencer 2018-09-14 19:03:05 UTC
Created attachment 78709 [details]
Screenshot of the test.

When creating a stream, I was not forced to NAME the stream, meaning it was unavailable to select for the sign.  The test plan did not call for naming the stream.  I have also attached a screen shot showing the following results:

Images, local or otherwise, do now show.
The listed titles below seem to be both showing up at the same time.
Comment 37 Jonathan Druart 2018-09-14 19:20:17 UTC Comment hidden (obsolete)
Comment 38 Aleisha Amohia 2018-10-09 00:37:32 UTC Comment hidden (obsolete)
Comment 39 Aleisha Amohia 2018-10-09 00:37:41 UTC Comment hidden (obsolete)
Comment 40 Aleisha Amohia 2018-10-09 00:37:48 UTC Comment hidden (obsolete)
Comment 41 Aleisha Amohia 2018-10-09 01:04:12 UTC Comment hidden (obsolete)
Comment 42 Aleisha Amohia 2018-12-05 22:18:22 UTC Comment hidden (obsolete)
Comment 43 Aleisha Amohia 2018-12-05 22:18:29 UTC Comment hidden (obsolete)
Comment 44 Aleisha Amohia 2018-12-05 22:18:38 UTC Comment hidden (obsolete)
Comment 45 Aleisha Amohia 2018-12-05 22:18:45 UTC Comment hidden (obsolete)
Comment 46 Aleisha Amohia 2018-12-05 22:18:52 UTC Comment hidden (obsolete)
Comment 47 Aleisha Amohia 2018-12-05 22:19:00 UTC Comment hidden (obsolete)
Comment 48 Aleisha Amohia 2018-12-17 20:57:41 UTC Comment hidden (obsolete)
Comment 49 Michal Denar 2019-04-14 18:28:36 UTC Comment hidden (obsolete)
Comment 50 Aleisha Amohia 2019-04-26 01:47:54 UTC Comment hidden (obsolete)
Comment 51 Aleisha Amohia 2019-04-26 01:48:03 UTC Comment hidden (obsolete)
Comment 52 Aleisha Amohia 2019-04-26 01:48:09 UTC Comment hidden (obsolete)
Comment 53 Aleisha Amohia 2019-04-26 01:48:14 UTC Comment hidden (obsolete)
Comment 54 Aleisha Amohia 2019-04-26 01:48:20 UTC Comment hidden (obsolete)
Comment 55 Aleisha Amohia 2019-04-26 01:48:25 UTC Comment hidden (obsolete)
Comment 56 Nick Clemens 2019-09-20 20:36:04 UTC Comment hidden (obsolete)
Comment 57 Nick Clemens 2019-09-20 20:36:14 UTC Comment hidden (obsolete)
Comment 58 Nick Clemens 2019-09-20 20:36:25 UTC Comment hidden (obsolete)
Comment 59 Nick Clemens 2019-09-20 20:36:37 UTC Comment hidden (obsolete)
Comment 60 Nick Clemens 2019-09-20 20:36:44 UTC Comment hidden (obsolete)
Comment 61 Nick Clemens 2019-09-20 20:36:58 UTC Comment hidden (obsolete)
Comment 62 Nick Clemens 2019-09-20 20:38:37 UTC Comment hidden (obsolete)
Comment 63 ByWater Sandboxes 2019-09-20 22:03:06 UTC Comment hidden (obsolete)
Comment 64 ByWater Sandboxes 2019-09-20 22:03:30 UTC Comment hidden (obsolete)
Comment 65 ByWater Sandboxes 2019-09-20 22:03:48 UTC Comment hidden (obsolete)
Comment 66 ByWater Sandboxes 2019-09-20 22:04:01 UTC Comment hidden (obsolete)
Comment 67 ByWater Sandboxes 2019-09-20 22:04:15 UTC Comment hidden (obsolete)
Comment 68 ByWater Sandboxes 2019-09-20 22:04:22 UTC Comment hidden (obsolete)
Comment 69 Katrin Fischer 2020-02-18 23:42:50 UTC Comment hidden (obsolete)
Comment 70 Aleisha Amohia 2020-02-25 21:51:36 UTC Comment hidden (obsolete)
Comment 71 Aleisha Amohia 2020-02-25 21:51:43 UTC Comment hidden (obsolete)
Comment 72 Aleisha Amohia 2020-02-25 21:51:52 UTC Comment hidden (obsolete)
Comment 73 Aleisha Amohia 2020-02-25 21:51:59 UTC Comment hidden (obsolete)
Comment 74 Aleisha Amohia 2020-02-25 21:52:06 UTC Comment hidden (obsolete)
Comment 75 Aleisha Amohia 2020-02-25 21:52:12 UTC Comment hidden (obsolete)
Comment 76 Aleisha Amohia 2020-02-25 22:32:26 UTC Comment hidden (obsolete)
Comment 77 Aleisha Amohia 2020-02-25 22:50:31 UTC Comment hidden (obsolete)
Comment 78 Aleisha Amohia 2020-02-25 23:23:33 UTC Comment hidden (obsolete)
Comment 79 Aleisha Amohia 2020-02-25 23:30:39 UTC Comment hidden (obsolete)
Comment 80 Aleisha Amohia 2020-02-25 23:30:45 UTC Comment hidden (obsolete)
Comment 81 Aleisha Amohia 2020-02-25 23:30:51 UTC Comment hidden (obsolete)
Comment 82 Aleisha Amohia 2020-02-25 23:30:58 UTC Comment hidden (obsolete)
Comment 83 Aleisha Amohia 2020-02-25 23:31:04 UTC Comment hidden (obsolete)
Comment 84 Aleisha Amohia 2020-02-25 23:31:10 UTC Comment hidden (obsolete)
Comment 85 Aleisha Amohia 2020-02-25 23:31:17 UTC Comment hidden (obsolete)
Comment 86 Aleisha Amohia 2020-02-25 23:31:23 UTC Comment hidden (obsolete)
Comment 87 Aleisha Amohia 2020-02-25 23:32:05 UTC Comment hidden (obsolete)
Comment 88 Owen Leonard 2020-02-26 15:02:07 UTC
I'm getting this error:

Template process failed: undef error - DBIC result _type  isn't of the _type SavedSql at /kohadevbox/koha/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt line 419.
 at /kohadevbox/koha/C4/Templates.pm line 122


Did I miss a step in the setup?
Comment 89 Aleisha Amohia 2020-02-26 22:06:58 UTC
(In reply to Owen Leonard from comment #88)
> I'm getting this error:
> 
> Template process failed: undef error - DBIC result _type  isn't of the _type
> SavedSql at
> /kohadevbox/koha/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt line
> 419.
>  at /kohadevbox/koha/C4/Templates.pm line 122
> 
> 
> Did I miss a step in the setup?

Hi Owen
You may need to update the schema files and restart memcached because of the db changes
Comment 90 David Nind 2020-02-27 09:49:27 UTC Comment hidden (obsolete)
Comment 91 Aleisha Amohia 2020-02-27 21:17:04 UTC Comment hidden (obsolete)
Comment 92 Aleisha Amohia 2020-02-27 21:17:12 UTC Comment hidden (obsolete)
Comment 93 Aleisha Amohia 2020-02-27 21:18:17 UTC Comment hidden (obsolete)
Comment 94 David Nind 2020-02-29 07:57:31 UTC
Created attachment 99801 [details]
Screenshots - screens not aligned correctly

It may be my setup (using koha-testing-docker) but I can't seem to get the staff interface screens and the signage to display correctly (Firefox, Google Chrome, and Chromium on Ubuntu 18.04).

In the staff interface the add and edit screens take up the whole width of the screen, and the other tools menu items are pushed to the bottom.

On the signage screens, things don't display correctly.

Screenshots attached.

Notes from testing :
- Apply patches
- Run updatedatabase
- Run dbic
- flush_memcached
- restart_all
Comment 95 Aleisha Amohia 2020-03-01 20:36:19 UTC
(In reply to David Nind from comment #94)
> 
> In the staff interface the add and edit screens take up the whole width of
> the screen, and the other tools menu items are pushed to the bottom.

Will look into this

> 
> On the signage screens, things don't display correctly.

Can you please advise what 'correctly' should look like? I took this patch over from someone else and the signs have always displayed for me the way they do in your screenshots. How do you expect them to look?
Comment 96 David Nind 2020-03-02 08:07:27 UTC
I'm not sure what 'correct' should look like, and was going off the original mockups at https://wiki.koha-community.org/wiki/Digital_signs_RFC

I guess I was expecting the covers (if they exist) to display. When you click (or touch on a touch screen) an item it will pop up with the details. You can then continue paging through.
Comment 97 Aleisha Amohia 2021-03-19 01:08:23 UTC Comment hidden (obsolete)
Comment 98 Aleisha Amohia 2021-03-19 01:08:28 UTC Comment hidden (obsolete)
Comment 99 Aleisha Amohia 2021-03-19 01:08:33 UTC Comment hidden (obsolete)
Comment 100 Aleisha Amohia 2021-03-19 01:08:38 UTC Comment hidden (obsolete)
Comment 101 Aleisha Amohia 2021-03-19 01:08:44 UTC Comment hidden (obsolete)
Comment 102 Aleisha Amohia 2021-03-19 01:08:49 UTC Comment hidden (obsolete)
Comment 103 Aleisha Amohia 2021-03-19 01:08:54 UTC Comment hidden (obsolete)
Comment 104 Aleisha Amohia 2021-03-19 01:08:59 UTC Comment hidden (obsolete)
Comment 105 Aleisha Amohia 2021-03-19 01:09:04 UTC Comment hidden (obsolete)
Comment 106 Aleisha Amohia 2021-03-19 01:10:23 UTC
(In reply to David Nind from comment #96)
> I'm not sure what 'correct' should look like, and was going off the original
> mockups at https://wiki.koha-community.org/wiki/Digital_signs_RFC
> 
> I guess I was expecting the covers (if they exist) to display. When you
> click (or touch on a touch screen) an item it will pop up with the details.
> You can then continue paging through.

Cool it looks right to me! So you first see a wall of covers, when you click on one it shows that record in a 'shelf' view, with one or two covers on either side of the clicked on, plus some info about items. You can click on the covers on the shelf to go to them, or go 'Back' to go back to the wall!
Comment 107 Lund University Sandbox 2021-04-12 14:02:01 UTC Comment hidden (obsolete)
Comment 108 Stina Hallin 2021-04-12 14:04:04 UTC
I didn't get the covers to show, even if some of the books had covers. Tested in a sandbox with Firefox and didn't manage to drag the books. Oterwise it worked as described in the test plan.
Comment 109 Marcel de Rooy 2021-07-09 07:51:33 UTC
I would recommend running qa tools yourself too :)
Comment 110 Marcel de Rooy 2021-07-09 07:52:07 UTC
Lots of warnings, especially on filters. But some interesting other ones too ;)

Processing files before patches
|========================>| 20 / 20 (100.00%)
Processing files after patches
File not found : lib/jquery/mobile/jquery.mobile.min.css at /usr/share/koha/Koha/Template/Plugin/Asset.pm line 107.
File not found : lib/jquery/mobile/jquery.mobile.min.js at /usr/share/koha/Koha/Template/Plugin/Asset.pm line 84.
|========================>| 20 / 20 (100.00%)

 OK     Koha/Schema/Result/SavedSql.pm
   OK     critic
   OK     forbidden patterns
   OK     git manipulation
   OK     pod
   OK     pod coverage
   SKIP   spelling
   OK     valid

 FAIL   Koha/Schema/Result/Sign.pm
   OK     critic
   OK     file permissions
   OK     forbidden patterns
   OK     git manipulation
   OK     pod
   FAIL   pod coverage
                POD coverage was greater before, try perl -MPod::Coverage=PackageName -e666
   SKIP   spelling
   OK     valid

 FAIL   Koha/Schema/Result/SignStream.pm
   OK     critic
   OK     file permissions
   OK     forbidden patterns
   OK     git manipulation
   OK     pod
   FAIL   pod coverage
                POD coverage was greater before, try perl -MPod::Coverage=PackageName -e666
   SKIP   spelling
   OK     valid

 FAIL   Koha/Schema/Result/SignsToStream.pm
   OK     critic
   OK     file permissions
   OK     forbidden patterns
   OK     git manipulation
   OK     pod
   FAIL   pod coverage
                POD coverage was greater before, try perl -MPod::Coverage=PackageName -e666
   SKIP   spelling
   OK     valid

 FAIL   Koha/Sign.pm
   OK     critic
   OK     file permissions
   FAIL   forbidden patterns
                forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 18)
   OK     git manipulation
   OK     pod
   FAIL   pod coverage
                POD coverage was greater before, try perl -MPod::Coverage=PackageName -e666
   SKIP   spelling
   OK     valid

 FAIL   Koha/SignStream.pm
   OK     critic
   OK     file permissions
   FAIL   forbidden patterns
                forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 18)
   OK     git manipulation
   OK     pod
   OK     pod coverage
   SKIP   spelling
   OK     valid

 FAIL   Koha/SignStreams.pm
   OK     critic
   OK     file permissions
   FAIL   forbidden patterns
                forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 18)
   OK     git manipulation
   OK     pod
   OK     pod coverage
   SKIP   spelling
   OK     valid

 FAIL   Koha/Signs.pm
   OK     critic
   OK     file permissions
   FAIL   forbidden patterns
                forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 18)
   OK     git manipulation
   OK     pod
   OK     pod coverage
   SKIP   spelling
   OK     valid

 FAIL   Koha/SignsToStream.pm
   OK     critic
   OK     file permissions
   FAIL   forbidden patterns
                forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 18)
   OK     git manipulation
   OK     pod
   OK     pod coverage
   SKIP   spelling
   OK     valid

 FAIL   Koha/SignsToStreams.pm
   OK     critic
   OK     file permissions
   FAIL   forbidden patterns
                forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 18)
   OK     git manipulation
   OK     pod
   OK     pod coverage
   SKIP   spelling
   OK     valid

 FAIL   installer/data/mysql/kohastructure.sql
   FAIL   boolean_vs_tinyint
                WARNING - The new column (webapp) for table signs is using INT(1) as type, must be TINYINT(1) if it has a boolean purpose, see the SQL12 coding guideline
   OK     charset_collate
   OK     git manipulation
   OK     tinyint_has_boolean_flag

 OK     installer/data/mysql/mandatory/sysprefs.sql
   OK     git manipulation
   OK     semicolon
   OK     sysprefs_order

 OK     koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc
   OK     filters
   OK     forbidden patterns
   OK     git manipulation
   OK     js_in_body
   SKIP   spelling
   OK     tt_valid
   OK     valid_template

 OK     koha-tmpl/intranet-tmpl/prog/en/includes/tools-menu.inc
   OK     filters
   OK     forbidden patterns
   OK     git manipulation
   OK     js_in_body
   SKIP   spelling
   OK     tt_valid
   OK     valid_template

 FAIL   koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt
   FAIL   filters
                missing_filter at line 18 (            [% INCLUDE dslink %] Edit "[% stream.name %]")
                missing_filter at line 24 (            [% INCLUDE dslink %] Edit "[% sign.name %]")
                missing_filter at line 29 (        [% INCLUDE dslink %] Edit streams attached to "[% sign.name %]")
                wrong_html_filter at line 32 (        <a href="/cgi-bin/koha/tools/signs.pl?op=edit_streams&sign_id=[% sign.sign_id %]">Edit streams attached to "[% sign.name %]"</a> &rsaquo;)
                missing_filter at line 32 (        <a href="/cgi-bin/koha/tools/signs.pl?op=edit_streams&sign_id=[% sign.sign_id %]">Edit streams attached to "[% sign.name %]"</a> &rsaquo;)
                missing_filter at line 32 (        <a href="/cgi-bin/koha/tools/signs.pl?op=edit_streams&sign_id=[% sign.sign_id %]">Edit streams attached to "[% sign.name %]"</a> &rsaquo;)
                missing_filter at line 35 (        [% INCLUDE dslink %] Delete stream "[% stream.name %]")
                missing_filter at line 39 (        [% INCLUDE dslink %] Delete sign "[% sign.name %]")
                missing_filter at line 82 (    <form action="[% script_name %]" name="streamform" id="streamform" method="post">)
                missing_filter at line 85 (            <input type="hidden" name="sign_stream_id" value="[% stream.sign_stream_id %]" />)
                missing_filter at line 91 (                    <input type="text" name="name" value="[% stream.name %]" required="required">)
                missing_filter at line 101 (                                <option value="[% report.id %]" selected="selected">[% report.report_name %]</option>)
                missing_filter at line 101 (                                <option value="[% report.id %]" selected="selected">[% report.report_name %]</option>)
                missing_filter at line 103 (                                <option value="[% report.id %]">[% report.report_name %]</option>)
                missing_filter at line 103 (                                <option value="[% report.id %]">[% report.report_name %]</option>)
                missing_filter at line 121 (    <form action="[% script_name %]" name="signform" id="signform" method="post">)
                missing_filter at line 124 (            <input type="hidden" name="sign_id" value="[% sign.sign_id %]" />)
                missing_filter at line 129 (                <li><label for="name">Name</label><input type="text" name="name" value="[% sign.name %]" /></li>)
                missing_filter at line 150 (                                <option value="[% swatch %]" selected="selected">[% swatch %]</option>)
                missing_filter at line 150 (                                <option value="[% swatch %]" selected="selected">[% swatch %]</option>)
                missing_filter at line 152 (                                <option value="[% swatch %]">[% swatch %]</option>)
                missing_filter at line 152 (                                <option value="[% swatch %]">[% swatch %]</option>)
                missing_filter at line 161 (                                <option value="[% transition %]" selected="selected">[% transition %]</option>)
                missing_filter at line 161 (                                <option value="[% transition %]" selected="selected">[% transition %]</option>)
                missing_filter at line 163 (                                <option value="[% transition %]">[% transition %]</option>)
                missing_filter at line 163 (                                <option value="[% transition %]">[% transition %]</option>)
                missing_filter at line 174 (                    <input type="text" name="idleafter" id="idleafter" value="[% sign.idleafter %]" size="4" /> seconds. (Set to 0 to disable automatic page turning.))
                missing_filter at line 177 (                    <input type="text" name="pagedelay" id="pagedelay" value="[% sign.pagedelay %]" size="4" /> seconds.)
                missing_filter at line 180 (                    <input type="text" name="reloadafter" id="reloadafter" value="[% sign.reloadafter %]" size="4" /> seconds.)
                missing_filter at line 188 (    <h1>Edit streams attached to [% sign.name %]</h1>)
                missing_filter at line 202 (                    <td>[% s.sign_stream.name %]</td>)
                missing_filter at line 203 (                    <td>[% IF s.params %][% s.params %][% ELSE %]None[% END %]</td>)
                wrong_html_filter at line 206 (                            <a href="/cgi-bin/koha/tools/signs.pl?op=get_params&sign_to_stream_id=[% s.sign_to_stream_id %]&sign_stream_id=[% s.sign_stream_id %]&sign_id=[% s.sign_id %]" class="btn btn-default btn-xs" title="Edit parameters"><i class="fa fa-pencil"></i></a>)
                wrong_html_filter at line 206 (                            <a href="/cgi-bin/koha/tools/signs.pl?op=get_params&sign_to_stream_id=[% s.sign_to_stream_id %]&sign_stream_id=[% s.sign_stream_id %]&sign_id=[% s.sign_id %]" class="btn btn-default btn-xs" title="Edit parameters"><i class="fa fa-pencil"></i></a>)
                wrong_html_filter at line 206 (                            <a href="/cgi-bin/koha/tools/signs.pl?op=get_params&sign_to_stream_id=[% s.sign_to_stream_id %]&sign_stream_id=[% s.sign_stream_id %]&sign_id=[% s.sign_id %]" class="btn btn-default btn-xs" title="Edit parameters"><i class="fa fa-pencil"></i></a>)
                missing_filter at line 206 (                            <a href="/cgi-bin/koha/tools/signs.pl?op=get_params&sign_to_stream_id=[% s.sign_to_stream_id %]&sign_stream_id=[% s.sign_stream_id %]&sign_id=[% s.sign_id %]" class="btn btn-default btn-xs" title="Edit parameters"><i class="fa fa-pencil"></i></a>)
                missing_filter at line 206 (                            <a href="/cgi-bin/koha/tools/signs.pl?op=get_params&sign_to_stream_id=[% s.sign_to_stream_id %]&sign_stream_id=[% s.sign_stream_id %]&sign_id=[% s.sign_id %]" class="btn btn-default btn-xs" title="Edit parameters"><i class="fa fa-pencil"></i></a>)
                missing_filter at line 206 (                            <a href="/cgi-bin/koha/tools/signs.pl?op=get_params&sign_to_stream_id=[% s.sign_to_stream_id %]&sign_stream_id=[% s.sign_stream_id %]&sign_id=[% s.sign_id %]" class="btn btn-default btn-xs" title="Edit parameters"><i class="fa fa-pencil"></i></a>)
                wrong_html_filter at line 208 (                            <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% s.sign_stream.saved_sql_id %]&phase=Edit SQL" class="btn btn-default btn-xs" title="Edit SQL"><i class="fa fa-pencil"></i></a>)
                missing_filter at line 208 (                            <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% s.sign_stream.saved_sql_id %]&phase=Edit SQL" class="btn btn-default btn-xs" title="Edit SQL"><i class="fa fa-pencil"></i></a>)
                wrong_html_filter at line 211 (                    <td class="actions"><a href="/cgi-bin/koha/tools/signs.pl?op=detach_stream_from_sign&sign_id=[% s.sign_id %]&sign_to_stream_id=[% s.sign_to_stream_id %]" class="btn btn-default btn-xs detach"><i class="fa fa-times"></i> Detach</a></td>)
                wrong_html_filter at line 211 (                    <td class="actions"><a href="/cgi-bin/koha/tools/signs.pl?op=detach_stream_from_sign&sign_id=[% s.sign_id %]&sign_to_stream_id=[% s.sign_to_stream_id %]" class="btn btn-default btn-xs detach"><i class="fa fa-times"></i> Detach</a></td>)
                missing_filter at line 211 (                    <td class="actions"><a href="/cgi-bin/koha/tools/signs.pl?op=detach_stream_from_sign&sign_id=[% s.sign_id %]&sign_to_stream_id=[% s.sign_to_stream_id %]" class="btn btn-default btn-xs detach"><i class="fa fa-times"></i> Detach</a></td>)
                missing_filter at line 211 (                    <td class="actions"><a href="/cgi-bin/koha/tools/signs.pl?op=detach_stream_from_sign&sign_id=[% s.sign_id %]&sign_to_stream_id=[% s.sign_to_stream_id %]" class="btn btn-default btn-xs detach"><i class="fa fa-times"></i> Detach</a></td>)
                missing_filter at line 221 (    <form action="[% script_name %]" name="attach_stream_to_sign_form" id="attach_stream_to_sign_form" method="post">)
                missing_filter at line 223 (        <input type="hidden" name="sign_id" value="[% sign_id %]" />)
                missing_filter at line 229 (                            <option value="[% s.sign_stream_id %]">[% s.name %]</option>)
                missing_filter at line 229 (                            <option value="[% s.sign_stream_id %]">[% s.name %]</option>)
                missing_filter at line 239 (    <h1>Parameters for [% stream.name %]</h1>)
                wrong_html_filter at line 240 (    Based on report: [% sql.report_name %] | <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% stream.saved_sql_id %]&phase=Edit SQL">Edit this report</a>)
                missing_filter at line 240 (    Based on report: [% sql.report_name %] | <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% stream.saved_sql_id %]&phase=Edit SQL">Edit this report</a>)
                missing_filter at line 240 (    Based on report: [% sql.report_name %] | <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% stream.saved_sql_id %]&phase=Edit SQL">Edit this report</a>)
                missing_filter at line 242 (    <form action="[% script_name %]" name="get_params_form" id="get_params_form" method="post">)
                missing_filter at line 244 (        <input type="hidden" name="sign_to_stream_id" value="[% sign_to_stream_id %]" />)
                missing_filter at line 245 (        <input type="hidden" name="sign_stream_id" value="[% sign_stream_id %]" />)
                missing_filter at line 246 (        <input type="hidden" name="sign_id" value="[% sign_id %]" />)
                missing_filter at line 255 (                    <input type="text" size="60" name="parameters" id="parameters" value="[% sts.params %]" />)
                missing_filter at line 277 (        <h3>Confirm deletion of stream <span class="ex">'[% stream.name %]'</span>?</h3>)
                missing_filter at line 278 (        <form action="[% script_name %]" id ="confirm_stream_delete_form" method="post">)
                missing_filter at line 280 (            <input type="hidden" name="sign_stream_id" value="[% stream.sign_stream_id %]" />)
                missing_filter at line 284 (        <form action="[% script_name %]" id="cancel_stream_delete_form" method="get">)
                missing_filter at line 292 (        <form action="[% script_name %]" method="get">)
                missing_filter at line 299 (        <h3>Confirm deletion of sign <span class="ex">'[% sign.name %]'</span>?</h3>)
                missing_filter at line 300 (        <form action="[% script_name %]" id ="confirm_sign_delete_form" method="post">)
                missing_filter at line 302 (            <input type="hidden" name="sign_id" value="[% sign.sign_id %]" />)
                missing_filter at line 306 (        <form action="[% script_name %]" id="cancel_sign_delete_form" method="get">)
                missing_filter at line 314 (        <form action="[% script_name %]" method="get">)
                missing_filter at line 320 (    <h1>[% sign.name %]</h1>)
                missing_filter at line 325 (            <h3>[% stream.sign_stream.name %]</h3>)
                wrong_html_filter at line 328 (                    <li><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% record.biblionumber %]">[% record.title %]</a></li>)
                missing_filter at line 328 (                    <li><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% record.biblionumber %]">[% record.title %]</a></li>)
                missing_filter at line 328 (                    <li><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% record.biblionumber %]">[% record.title %]</a></li>)
                missing_filter at line 337 (    <h1>[% stream.name %]</h1>)
                wrong_html_filter at line 338 (    Based on report: [% stream.saved_sql_id.report_name %] | <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% stream.saved_sql_id %]&phase=Edit SQL">Edit this report</a>)
                missing_filter at line 338 (    Based on report: [% stream.saved_sql_id.report_name %] | <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% stream.saved_sql_id %]&phase=Edit SQL">Edit this report</a>)
                missing_filter at line 338 (    Based on report: [% stream.saved_sql_id.report_name %] | <a href="/cgi-bin/koha/reports/guided_reports.pl?reports=[% stream.saved_sql_id %]&phase=Edit SQL">Edit this report</a>)
                wrong_html_filter at line 377 (                    <td><a href="/cgi-bin/koha/tools/signs.pl?op=view_sign&amp;sign_id=[% s.sign_id %]">[% s.name %]</a></td>)
                missing_filter at line 377 (                    <td><a href="/cgi-bin/koha/tools/signs.pl?op=view_sign&amp;sign_id=[% s.sign_id %]">[% s.name %]</a></td>)
                missing_filter at line 377 (                    <td><a href="/cgi-bin/koha/tools/signs.pl?op=view_sign&amp;sign_id=[% s.sign_id %]">[% s.name %]</a></td>)
                missing_filter at line 379 (                    <td>[% s.swatch %]</td>)
                missing_filter at line 380 (                    <td>[% s.transition %]</td>)
                missing_filter at line 381 (                    <td>[% s.idleafter %]</td>)
                missing_filter at line 382 (                    <td>[% s.pagedelay %]</td>)
                missing_filter at line 383 (                    <td>[% s.reloadafter %]</td>)
                missing_filter at line 386 (                            <a class="btn btn-default btn-xs dropdown-toggle" id="opensignsactions[% s.sign_id %]" role="button" data-toggle="dropdown" href="#"> Actions <b class="caret"></b></a>)
                missing_filter at line 387 (                            <ul class="dropdown-menu pull-right" role="menu" aria-labelledby="opensignsactions[% s.sign_id %]">)
                wrong_html_filter at line 388 (                                <li><a href="/cgi-bin/koha/tools/signs.pl?op=edit_sign&amp;sign_id=[% s.sign_id %]"><i class="fa fa-pencil"></i> Edit</a></li>)
                missing_filter at line 388 (                                <li><a href="/cgi-bin/koha/tools/signs.pl?op=edit_sign&amp;sign_id=[% s.sign_id %]"><i class="fa fa-pencil"></i> Edit</a></li>)
                wrong_html_filter at line 389 (                                <li><a href="/cgi-bin/koha/tools/signs.pl?op=edit_streams&amp;sign_id=[% s.sign_id %]"><i class="fa fa-pencil"></i> Edit streams</a></li>)
                missing_filter at line 389 (                                <li><a href="/cgi-bin/koha/tools/signs.pl?op=edit_streams&amp;sign_id=[% s.sign_id %]"><i class="fa fa-pencil"></i> Edit streams</a></li>)
                wrong_html_filter at line 390 (                                <li><a href="/cgi-bin/koha/tools/signs.pl?op=del_sign&amp;sign_id=[% s.sign_id %]"><i class="fa fa-trash"></i> Delete</a></li>)
                missing_filter at line 390 (                                <li><a href="/cgi-bin/koha/tools/signs.pl?op=del_sign&amp;sign_id=[% s.sign_id %]"><i class="fa fa-trash"></i> Delete</a></li>)
                wrong_html_filter at line 391 (                                [% IF ( OPACBaseURL ) %]<li><a href="[% OPACBaseURL %]/cgi-bin/koha/opac-signs.pl?sign=[% s.sign_id %]" title="View this sign in the OPAC"><i class="fa fa-eye"></i> View sign</a></li>[% END %])
                wrong_html_filter at line 391 (                                [% IF ( OPACBaseURL ) %]<li><a href="[% OPACBaseURL %]/cgi-bin/koha/opac-signs.pl?sign=[% s.sign_id %]" title="View this sign in the OPAC"><i class="fa fa-eye"></i> View sign</a></li>[% END %])
                missing_filter at line 391 (                                [% IF ( OPACBaseURL ) %]<li><a href="[% OPACBaseURL %]/cgi-bin/koha/opac-signs.pl?sign=[% s.sign_id %]" title="View this sign in the OPAC"><i class="fa fa-eye"></i> View sign</a></li>[% END %])
                missing_filter at line 391 (                                [% IF ( OPACBaseURL ) %]<li><a href="[% OPACBaseURL %]/cgi-bin/koha/opac-signs.pl?sign=[% s.sign_id %]" title="View this sign in the OPAC"><i class="fa fa-eye"></i> View sign</a></li>[% END %])
                wrong_html_filter at line 417 (                    <td><a href="/cgi-bin/koha/tools/signs.pl?op=view_stream&amp;sign_stream_id=[% s.sign_stream_id %]">[% s.name %]</a></td>)
                missing_filter at line 417 (                    <td><a href="/cgi-bin/koha/tools/signs.pl?op=view_stream&amp;sign_stream_id=[% s.sign_stream_id %]">[% s.name %]</a></td>)
                missing_filter at line 417 (                    <td><a href="/cgi-bin/koha/tools/signs.pl?op=view_stream&amp;sign_stream_id=[% s.sign_stream_id %]">[% s.name %]</a></td>)
                missing_filter at line 418 (                    <td title="ID: [% s.saved_sql_id %]">[% s.saved_sql.report_name %]</td>)
                missing_filter at line 418 (                    <td title="ID: [% s.saved_sql_id %]">[% s.saved_sql.report_name %]</td>)
                missing_filter at line 420 (                        <a class="btn btn-default btn-xs" href="/cgi-bin/koha/tools/signs.pl?op=edit_stream&amp;sign_stream_id=[% s.sign_stream_id %]"><i class="fa fa-pencil"></i> Edit</a>)
                missing_filter at line 421 (                        <a class="btn btn-default btn-xs" href="/cgi-bin/koha/tools/signs.pl?op=del_stream&amp;sign_stream_id=[% s.sign_stream_id %]"><i class="fa fa-trash"></i> Delete</a>)
                missing_filter at line 483 (                    <tr><td>[% r.biblionumber %]</td><td>[% r.title %]</td></tr>)
                missing_filter at line 483 (                    <tr><td>[% r.biblionumber %]</td><td>[% r.title %]</td></tr>)
   FAIL   forbidden patterns
                forbidden pattern: Title elements must start with the unique information (bug 26703) (line 5)
   OK     git manipulation
   OK     js_in_body
   SKIP   spelling
   OK     tt_valid
   OK     valid_template

 OK     koha-tmpl/intranet-tmpl/prog/en/modules/tools/tools-home.tt
   OK     filters
   OK     forbidden patterns
   OK     git manipulation
   OK     js_in_body
   SKIP   spelling
   OK     tt_valid
   OK     valid_template

 OK     koha-tmpl/intranet-tmpl/prog/js/tools-menu.js
   OK     ES template literals
   OK     git manipulation

 FAIL   koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-signs.tt
   FAIL   filters
                missing_filter at line 23 (        [%-%]In transit from [%- item.transfertfrom %] to [%- item.transfertto %] since [%- item.transfertwhen | $KohaDates %])
                missing_filter at line 23 (        [%-%]In transit from [%- item.transfertfrom %] to [%- item.transfertto %] since [%- item.transfertwhen | $KohaDates %])
                missing_filter at line 36 (            [%- item.notforloanvalueopac -%] [%- IF ( item.restrictedopac ) -%] ([%- item.restrictedopac -%])[%- END -%])
                missing_filter at line 36 (            [%- item.notforloanvalueopac -%] [%- IF ( item.restrictedopac ) -%] ([%- item.restrictedopac -%])[%- END -%])
                missing_filter at line 38 (            [%-%]Not for loan [%- IF ( item.restrictedopac ) -%] ([%- item.restrictedopac -%])[%- END -%])
                missing_filter at line 42 (        [%-%]Not for loan [%- IF ( item.restrictedopac ) -%] ([%- item.restrictedopac -%])[%- END -%])
                missing_filter at line 53 (        [%-%]Available [%- IF ( item.restrictedopac ) -%] ([%- item.restrictedopac -%])[%- END -%])
                missing_filter at line 58 (<title>[% IF ( sign )  %][% sign.name %] - Koha[% ELSE %]Koha digital signs[% END %]</title>)
                missing_filter at line 66 (        [% Koha.Preference( 'OPACDigitalSignsCSS' ) %])
                asset_must_be_raw at line 68 (      [% Asset.css("lib/jquery/mobile/jquery.mobile.structure.min.css") %])
                asset_must_be_raw at line 70 (      [% Asset.css("css/signs.css") %])
                asset_must_be_raw at line 71 (      [% Asset.css("lib/jquery/mobile/jquery.mobile.min.css") %])
                missing_filter at line 86 (          <div data-role="page" class="page-stream" data-stream-id="[% s.sign_stream_id %]" data-theme="[% sign.swatch %]" id="stream_[% s.sign_stream_id %]">)
                missing_filter at line 86 (          <div data-role="page" class="page-stream" data-stream-id="[% s.sign_stream_id %]" data-theme="[% sign.swatch %]" id="stream_[% s.sign_stream_id %]">)
                missing_filter at line 86 (          <div data-role="page" class="page-stream" data-stream-id="[% s.sign_stream_id %]" data-theme="[% sign.swatch %]" id="stream_[% s.sign_stream_id %]">)
                missing_filter at line 87 (              <div data-role="header" data-theme="[% sign.swatch %]" data-position="fixed">)
                wrong_html_filter at line 93 (                              <a href="#stream_[% stream.sign_stream_id %]" data-stream-id="[% stream.sign_stream_id %]" class="btn-stream stream-active" data-inline="true" data-icon="star" data-role="button">[% stream.name %]</a>)
                missing_filter at line 93 (                              <a href="#stream_[% stream.sign_stream_id %]" data-stream-id="[% stream.sign_stream_id %]" class="btn-stream stream-active" data-inline="true" data-icon="star" data-role="button">[% stream.name %]</a>)
                missing_filter at line 93 (                              <a href="#stream_[% stream.sign_stream_id %]" data-stream-id="[% stream.sign_stream_id %]" class="btn-stream stream-active" data-inline="true" data-icon="star" data-role="button">[% stream.name %]</a>)
                missing_filter at line 93 (                              <a href="#stream_[% stream.sign_stream_id %]" data-stream-id="[% stream.sign_stream_id %]" class="btn-stream stream-active" data-inline="true" data-icon="star" data-role="button">[% stream.name %]</a>)
                wrong_html_filter at line 95 (                              <a href="#stream_[% stream.sign_stream_id %]" data-stream-id="[% stream.sign_stream_id %]" class="btn-stream" data-inline="true" data-role="button">[% stream.name %]</a>)
                missing_filter at line 95 (                              <a href="#stream_[% stream.sign_stream_id %]" data-stream-id="[% stream.sign_stream_id %]" class="btn-stream" data-inline="true" data-role="button">[% stream.name %]</a>)
                missing_filter at line 95 (                              <a href="#stream_[% stream.sign_stream_id %]" data-stream-id="[% stream.sign_stream_id %]" class="btn-stream" data-inline="true" data-role="button">[% stream.name %]</a>)
                missing_filter at line 95 (                              <a href="#stream_[% stream.sign_stream_id %]" data-stream-id="[% stream.sign_stream_id %]" class="btn-stream" data-inline="true" data-role="button">[% stream.name %]</a>)
                missing_filter at line 101 (                  <h1>[% s.name %]</h1>)
                wrong_html_filter at line 121 (          <li><a href="?sign=[% SIGN.sign_id %]" data-ajax="false">[% SIGN.name %]</a></li>)
                missing_filter at line 121 (          <li><a href="?sign=[% SIGN.sign_id %]" data-ajax="false">[% SIGN.name %]</a></li>)
                missing_filter at line 121 (          <li><a href="?sign=[% SIGN.sign_id %]" data-ajax="false">[% SIGN.name %]</a></li>)
                missing_filter at line 157 (                if (idleTime >= [% sign.idleafter %]) {)
                missing_filter at line 163 (                if (doIdle && idleTimePage >= [% sign.pagedelay %]) {)
                missing_filter at line 170 (                if (doIdle && idleTime >= [% sign.reloadafter %]) {)
                missing_filter at line 370 (                        self.$cover.addClass('ui-bar-[% sign.swatch %]');)
                missing_filter at line 374 (                            self.$vcontainer.addClass('ui-bar-[% sign.swatch %]');)
                missing_filter at line 378 (                            self.$cover.css('border-color', $('.ui-bar-[% sign.swatch %]').first().css('background-color'));)
                missing_filter at line 397 (                var $page = $('<div data-role="page" data-close-btn="none" data-theme="[% sign.swatch %]" id="record_'+sid+'_'+cover.record.biblionumber+'"/>');)
                missing_filter at line 398 (                var $head = $('<div data-role="header" data-theme="[% sign.swatch %]"/>');)
                missing_filter at line 463 (                        $li.append($('<img src="/[% interface %]/lib/famfamfam/'+item.type+'.png" class="ui-li-icon"/>'));)
                missing_filter at line 479 (                $foot.append($('<a href="#stream_'+sid+'" data-role="button" data-theme="[% sign.swatch %]" data-transition="[% sign.transition %]">'+_("Back")+'</a>'));)
                missing_filter at line 479 (                $foot.append($('<a href="#stream_'+sid+'" data-role="button" data-theme="[% sign.swatch %]" data-transition="[% sign.transition %]">'+_("Back")+'</a>'));)
                missing_filter at line 497 (                    '[% stream.sign_stream_id %]': {)
                missing_filter at line 498 (                        'name': [% stream.name.json || '""' %],)
                missing_filter at line 501 (                            {'author': [% record.author.json || '""' %],)
                missing_filter at line 502 (                            'title': [% record.title.json || '""' %],)
                missing_filter at line 503 (                            'publisher': [% record.publishercode.json || '""' %],)
                missing_filter at line 504 (                            'biblionumber': [% record.biblionumber.json || '""' %],)
                missing_filter at line 505 (                            'isbn': [% record.isbn.json || '""' %],)
                missing_filter at line 509 (                                        'type': [% item.itemtype.json || '""' %],)
                missing_filter at line 511 (                                        'location': [% item.location.json || '""' %],)
                missing_filter at line 512 (                                        'location_description': [% item.location_description.json || '""' %],)
                missing_filter at line 513 (                                        'home_branch': "[% Branches.GetName(item.homebranch) | json %]",)
                missing_filter at line 537 (                    var $link = $('<a href="#record_'+sid+'_'+cover.record.biblionumber+'" class="btn-record" data-transition="[% sign.transition %]"/>'))
                missing_filter at line 539 (                    $content.append($link.append($('<div class="cover placeholder ui-bar-[% sign.swatch %] cover_'+cover.id+'" data-id="'+cover.id+'"/>')));)
                asset_must_be_raw at line 561 (    [% Asset.js("lib/jquery/mobile/jquery.mobile.min.js") %])
   FAIL   forbidden patterns
                forbidden pattern: Attribute type should not be used for style tags (bug 20054) (line 65)
                forbidden pattern: Attribute type should not be used for script tags (bug 20053) (line 132)
   OK     git manipulation
   OK     js_in_body
   SKIP   spelling
   OK     tt_valid
   OK     valid_template

 FAIL   opac/opac-signs.pl
   OK     critic
   OK     file permissions
   FAIL   forbidden patterns
                forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 18)
   OK     git manipulation
   OK     pod
   SKIP   spelling
   OK     valid

 FAIL   tools/signs.pl
   FAIL   critic
                Subroutine "new" called using indirect syntax at line 48, column 11. See page 349 of PBP.
   OK     file permissions
   FAIL   forbidden patterns
                forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 18)
                forbidden pattern: Script permissions is authnotrequired => 0, it could be correct for an OPAC script if it is was you really want error (bug 24663) (line 56)
   OK     git manipulation
   OK     pod
   SKIP   spelling
   OK     valid
Comment 111 Marcel de Rooy 2021-07-09 08:18:24 UTC
[10:16] <Joubu> but we have misc/devel/add_missing_filters.pl!

Might be helpful?
Comment 112 Aleisha Amohia 2022-03-02 02:57:40 UTC Comment hidden (obsolete)
Comment 113 Aleisha Amohia 2022-03-02 02:57:47 UTC Comment hidden (obsolete)
Comment 114 solene.ngamga 2023-01-09 20:43:54 UTC
Bug 8628 - Add digital signs to the OPAC

118472 - Bug 8628: Digital signs - db changes
118473 - Bug 8628: Digital signs - Koha objects
118474 - Bug 8628: Digital signs - preferences and permissions
118475 - Bug 8628: Digital signs - staff interface
118476 - Bug 8628: Digital signs - opac interface
118477 - Bug 8628: (follow-up) Use utf8mb4 and TableExists in atomic update
118478 - Bug 8628: (follow-up) Fixes for qa tools
119455 - Bug 8628: (follow-up) Fix layout of signs admin page
131223 - Bug 8628: Updated schema files
131224 - Bug 8628: (follow-up) Fix documentation, subroutine calls, filters

Apply? [(y)es, (n)o, (i)nteractive] y
Applying: Bug 8628: Digital signs - db changes
Applying: Bug 8628: Digital signs - Koha objects
Applying: Bug 8628: Digital signs - preferences and permissions
Using index info to reconstruct a base tree...
M	koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc
M	koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref
Falling back to patching base and 3-way merge...
Auto-merging koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref
Auto-merging koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc
CONFLICT (content): Merge conflict in koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc
error: Failed to merge in the changes.
Patch failed at 0001 Bug 8628: Digital signs - preferences and permissions
hint: Use 'git am --show-current-patch=diff' to see the failed patch
When you have resolved this problem run "git bz apply --continue".
If you would prefer to skip this patch, instead run "git bz apply --skip".
To restore the original branch and stop patching run "git bz apply --abort".
Patch left in /tmp/Bug-8628-Digital-signs---preferences-and-permissio-n3pr1S.patch
Comment 115 Aleisha Amohia 2023-01-25 02:52:22 UTC
Created attachment 145645 [details] [review]
Bug 8628: Digital signs - db changes

- Adding edit_digital_signs permission for managing digital signs
- Adding OPACDigitalSigns, OPACDigitalSignsCSS and
OPACDigitalSignsSwatches system preferences
- Adding signs, sign_streams and signs_to_streams tables
- Updating sysprefs.sql and kohastructure.sql

Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Comment 116 Aleisha Amohia 2023-01-25 02:52:30 UTC
Created attachment 145646 [details] [review]
Bug 8628: Digital signs - Koha objects

Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Comment 117 Aleisha Amohia 2023-01-25 02:52:38 UTC
Created attachment 145647 [details] [review]
Bug 8628: Digital signs - preferences and permissions

Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Comment 118 Aleisha Amohia 2023-01-25 02:52:45 UTC
Created attachment 145648 [details] [review]
Bug 8628: Digital signs - staff interface

This patch adds the interface for creating and managing digital signs
and streams.

Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Comment 119 Aleisha Amohia 2023-01-25 02:52:53 UTC
Created attachment 145649 [details] [review]
Bug 8628: Digital signs - opac interface

To test:
1. Apply this patch and the database updates patch
2. Run updatedatabase.pl
3. In staff client, go to Tools/Additional Tools/Digital signs
4. You should be warned about OPACDigitalSigns not being enabled, you can ignore
   this for now.
5. Add a new sign by clicking the "+ New sign" button
6. Enter a name and optionally numbers for automatic page turing
7. Your new sign should appear in the Signs list
8. Add a new stream by clicking the "+ New stream" button
9. Unless you already have reports in the report group with code SIGN, you should
   be warned that there are no reports in the group with code SIGN and given a
   link for creating a new report. Follow the link and create a new report with
   report group code SIGN. En example SQL command for the report could be:

   SELECT * FROM biblio WHERE timestamp > DATE_SUB(NOW(), INTERVAL 7 DAY)

    or if you are testing the parameters feature of the digital signs, an example report could be:

    SELECT * FROM biblio WHERE biblionumber < placeholder.
10. Go back to the "new stream" page, and reload. You should no longer see a
    warning message, and your newly created report should appear in the list of
    reports.
11. Select the report and click Submit. Your newly created stream should now
    appear in the list of streams.
12. In the list of signs, press "edit streams" for the sign you previously
    created.
13. Choose a stream to attach and click Submit.
    If you have attached a report with a parameter placeholder, edit the parameters so that the placeholder gets substituted with a value. For example, in the edit parameters box, you can have:

    placeholder = 10000

    When you submit, you'll see the SQL replaces the placeholder with your value and completes the query.
    Your sign is now ready for OPAC.
14. In OPAC, visit /cgi-bin/koha/opac-signs.pl
15. You should be told that Digital signs are not enabled. Enable with new
    system preference OPACDigitalSigns and reload the page.
15. You should see a list of available signs, click on a sign that you wish to
    display.
16. You should now see a list of all books matching the SQL query in the report
    that you attached to your stream.
17. If you have OPACLocalCoverImages enabled, all books with local covers
    attached should be presented using this cover.
    If no local cover is available and the book has a ISBN with a cover in
    openlibrary.org, the cover image from openlibrary.org should be shown.
    If all of the above fails, a cover matching the theme of the page should be
    seen, showing the book title and author.
18. Clicking a book should bring you to a detailed view of the book where you
    can see the books availability. You should also see the two next books and
    the two previous books in the stream (unless you're at the beginning or end
    of the stream)
19. Swiping (if no touch screen, click and hold left mouse button and drag)
    left/right should bring you to next/previous book. Clicking on the
    next/previous books (right/left of the active one) should bring you to the
    detailed view of the clicked book.
20. Leaving the page idle (i.e no user interaction) for the amount of time
    specified in step 6. should result in the page automatically switching to
    the next book in the stream.

Sponsored-by: Regionbibliotek Halland / County library of Halland

Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Comment 120 Aleisha Amohia 2023-01-25 02:53:00 UTC
Created attachment 145650 [details] [review]
Bug 8628: (follow-up) Use utf8mb4 and TableExists in atomic update
Comment 121 Aleisha Amohia 2023-01-25 02:53:08 UTC
Created attachment 145651 [details] [review]
Bug 8628: (follow-up) Fixes for qa tools

using Asset and Koha.Preference
Comment 122 Aleisha Amohia 2023-01-25 02:53:15 UTC
Created attachment 145652 [details] [review]
Bug 8628: (follow-up) Fix layout of signs admin page

Signed-off-by: Stina Hallin <stina.hallin@ub.lu.se>
Comment 123 Aleisha Amohia 2023-01-25 02:53:23 UTC
Created attachment 145653 [details] [review]
Bug 8628: (follow-up) Fix documentation, subroutine calls, filters
Comment 124 Aleisha Amohia 2023-01-25 02:53:31 UTC
Created attachment 145654 [details] [review]
Bug 8628: Updated schema files
Comment 125 David Nind 2023-01-26 20:18:31 UTC
For step 2 of the test plan I get an error trace (with OPACDigitalSigns not enabled and enabled):

Template process failed: undef error - The method Koha::Signs->sign_id is not covered by tests!

Trace begun at /kohadevbox/koha/Koha/Objects.pm line 572
Koha::Objects::AUTOLOAD('Koha::Signs=HASH(0x556800cb2c48)') called at /kohadevbox/koha/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt line 385
eval {...} at /kohadevbox/koha/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt line 385
eval {...} at /kohadevbox/koha/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt line 410
eval {...} at /kohadevbox/koha/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt line 18
Template::Provider::__ANON__('Template::Context=HASH(0x556800c154e0)') called at /usr/lib/x86_64-linux-gnu/perl5/5.32/Template/Document.pm line 163
eval {...} at /usr/lib/x86_64-linux-gnu/perl5/5.32/Template/Document.pm line 161
Template::Document::process('Template::Document=HASH(0x556800ac9828)', 'Template::Context=HASH(0x556800c154e0)') called at /usr/lib/x86_64-linux-gnu/perl5/5.32/Template/Context.pm line 351
eval {...} at /usr/lib/x86_64-linux-gnu/perl5/5.32/Template/Context.pm line 321
Template::Context::process('Template::Context=HASH(0x556800c154e0)', 'Template::Document=HASH(0x556800ac9828)') called at /usr/lib/x86_64-linux-gnu/perl5/5.32/Template/Service.pm line 94
eval {...} at /usr/lib/x86_64-linux-gnu/perl5/5.32/Template/Service.pm line 91
Template::Service::process('Template::Service=HASH(0x5568008ca520)', '/kohadevbox/koha/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt', 'HASH(0x556800b93e68)') called at /usr/lib/x86_64-linux-gnu/perl5/5.32/Template.pm line 66
Template::process('Template=HASH(0x5568008f8190)', '/kohadevbox/koha/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt', 'HASH(0x556800b93e68)', 'SCALAR(0x556800da4d88)') called at /kohadevbox/koha/C4/Templates.pm line 127
C4::Templates::output('C4::Templates=HASH(0x55680096b5e8)') called at /kohadevbox/koha/tools/signs.pl line 318
eval {...} at /kohadevbox/koha/tools/signs.pl line 2
.....
Comment 126 David Nind 2023-01-26 20:19:10 UTC
Note: I applied all the patches
Comment 127 solene.ngamga 2023-01-27 13:12:55 UTC
I have the same error as David. After I apply all the patches, I can't access to Digital signs page. I got a error 500.

Trace begun at /inlibro/git/koha-master-dev-solene/Koha/Objects.pm line 572
Koha::Objects::AUTOLOAD('Koha::Signs=HASH(0x55686a4ee3b0)') called at /inlibro/git/koha-master-dev-solene/koha-tmpl/intranet-tmpl/prog/en/modules/    tools/signs.tt line 385
eval {...} at /inlibro/git/koha-master-dev-solene/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt line 385
eval {...} at /inlibro/git/koha-master-dev-solene/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt line 410
eval {...} at /inlibro/git/koha-master-dev-solene/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt line 7
Template::Document::__ANON__('Template::Context=HASH(0x55686a2e91e8)') called at /usr/lib/x86_64-linux-gnu/perl5/5.34/Template/Document.pm line       163
eval {...} at /usr/lib/x86_64-linux-gnu/perl5/5.34/Template/Document.pm line 161
Template::Document::process('Template::Document=HASH(0x55686a4fbe40)', 'Template::Context=HASH(0x55686a2e91e8)') called at /usr/lib/x86_64-linux-     gnu/perl5/5.34/Template/Context.pm line 351
eval {...} at /usr/lib/x86_64-linux-gnu/perl5/5.34/Template/Context.pm line 321
Template::Context::process('Template::Context=HASH(0x55686a2e91e8)', 'Template::Document=HASH(0x55686a4fbe40)') called at /usr/lib/x86_64-linux-      gnu/perl5/5.34/Template/Service.pm line 94
eval {...} at /usr/lib/x86_64-linux-gnu/perl5/5.34/Template/Service.pm line 91
Template::Service::process('Template::Service=HASH(0x55686a2ca150)', '/inlibro/git/koha-master-dev-solene/koha-tmpl/intranet-tmpl/prog/en/modules/    tools/signs.tt', 'HASH(0x55686a527ca8)') called at /usr/lib/x86_64-linux-gnu/perl5/5.34/Template.pm line 66
Template::process('Template=HASH(0x55686121a680)', '/inlibro/git/koha-master-dev-solene/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt',      'HASH(0x55686a527ca8)', 'SCALAR(0x556863f21cf8)') called at /inlibro/git/koha-master-dev-solene/C4/Templates.pm line 127
C4::Templates::output('C4::Templates=HASH(0x55686121ac38)') called at /inlibro/git/koha-master-dev-solene/tools/signs.pl line 318
Comment 128 Magnus Enger 2023-02-03 14:56:30 UTC
Great to see this is being kept alive after so many years! :-) 

I had the same initial error as David and Solene. I was able to make it go away by doing this: 

diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt
index 931079996c..f8b57c0db7 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/signs.tt
@@ -373,7 +373,7 @@
             </tr>
             </thead>
             <tbody>
-                [% FOREACH s IN signs %]
+                [% FOREACH s IN signs.next %]
                 <tr>
                     <td><a href="/cgi-bin/koha/tools/signs.pl?op=view_sign&amp;sign_id=[% s.sign_id | uri %]">[% s.name | html %]</a></td>
                     <td>[% IF ( s.webapp ) %]Yes[% ELSE %]No[% END %]</td>
@@ -413,7 +413,7 @@
             </tr>
             </thead>
             <tbody>
-                [% FOREACH s IN streams %]
+                [% FOREACH s IN streams.next %]
                 <tr>
                     <td><a href="/cgi-bin/koha/tools/signs.pl?op=view_stream&amp;sign_stream_id=[% s.sign_stream_id | uri %]">[% s.name | html %]</a></td>
                     <td title="ID: [% s.saved_sql_id | html %]">[% s.saved_sql.report_name | html %]</td>

But I have problems getting the one sign I added to display, so that change might be just nonsense. 

I was also getting a JS error when viewing the table of signs. It seems to be am invalid value for sPaginationType, so this made the error go away: 

@@ -451,13 +451,13 @@
             "aoColumnDefs": [
                 { "aTargets": [ -1 ], "bSearchable": false, "bSortable": false },
             ],
-            "sPaginationType": "four_button"
+            "sPaginationType": "full"
         }));
         $("#table_streams").dataTable($.extend(true, {}, dataTablesDefaults, {
             "aoColumnDefs": [
                 { "aTargets": [ -1 ], "bSearchable": false, "bSortable": false },
             ],
-            "sPaginationType": "four_button"
+            "sPaginationType": "full"
         }));

Not sure if "full" is the pagination we want, though.
Comment 129 Magnus Enger 2023-02-03 15:14:35 UTC
This made the sign display in the main table: 

diff --git a/tools/signs.pl b/tools/signs.pl
index e243b59b97..5b317925d0 100755
--- a/tools/signs.pl
+++ b/tools/signs.pl
@@ -302,12 +302,12 @@ if ( $op eq 'add_stream' ) {
 
 } else {
 
-    my @streams = Koha::SignStreams->search();
-    my @signs = Koha::Signs->search();
+    my $streams = Koha::SignStreams->search();
+    my $signs = Koha::Signs->search();
 
     $template->param(
-        streams     => \@streams,
-        signs       => \@signs,
+        streams     => $streams,
+        signs       => $signs,
Comment 130 Aleisha Amohia 2023-02-21 04:08:30 UTC
Created attachment 147000 [details] [review]
Bug 8628: Digital signs - db changes

- Adding edit_digital_signs permission for managing digital signs
- Adding OPACDigitalSigns, OPACDigitalSignsCSS and
OPACDigitalSignsSwatches system preferences
- Adding signs, sign_streams and signs_to_streams tables
- Updating sysprefs.sql and kohastructure.sql

Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Comment 131 Aleisha Amohia 2023-02-21 04:08:35 UTC
Created attachment 147001 [details] [review]
Bug 8628: Digital signs - Koha objects

Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Comment 132 Aleisha Amohia 2023-02-21 04:08:39 UTC
Created attachment 147002 [details] [review]
Bug 8628: Digital signs - preferences and permissions

Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Comment 133 Aleisha Amohia 2023-02-21 04:08:44 UTC
Created attachment 147003 [details] [review]
Bug 8628: Digital signs - staff interface

This patch adds the interface for creating and managing digital signs
and streams.

Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Comment 134 Aleisha Amohia 2023-02-21 04:08:49 UTC
Created attachment 147004 [details] [review]
Bug 8628: Digital signs - opac interface

To test:
1. Apply this patch and the database updates patch
2. Run updatedatabase.pl
3. In staff client, go to Tools/Additional Tools/Digital signs
4. You should be warned about OPACDigitalSigns not being enabled, you can ignore
   this for now.
5. Add a new sign by clicking the "+ New sign" button
6. Enter a name and optionally numbers for automatic page turing
7. Your new sign should appear in the Signs list
8. Add a new stream by clicking the "+ New stream" button
9. Unless you already have reports in the report group with code SIGN, you should
   be warned that there are no reports in the group with code SIGN and given a
   link for creating a new report. Follow the link and create a new report with
   report group code SIGN. En example SQL command for the report could be:

   SELECT * FROM biblio WHERE timestamp > DATE_SUB(NOW(), INTERVAL 7 DAY)

    or if you are testing the parameters feature of the digital signs, an example report could be:

    SELECT * FROM biblio WHERE biblionumber < placeholder.
10. Go back to the "new stream" page, and reload. You should no longer see a
    warning message, and your newly created report should appear in the list of
    reports.
11. Select the report and click Submit. Your newly created stream should now
    appear in the list of streams.
12. In the list of signs, press "edit streams" for the sign you previously
    created.
13. Choose a stream to attach and click Submit.
    If you have attached a report with a parameter placeholder, edit the parameters so that the placeholder gets substituted with a value. For example, in the edit parameters box, you can have:

    placeholder = 10000

    When you submit, you'll see the SQL replaces the placeholder with your value and completes the query.
    Your sign is now ready for OPAC.
14. In OPAC, visit /cgi-bin/koha/opac-signs.pl
15. You should be told that Digital signs are not enabled. Enable with new
    system preference OPACDigitalSigns and reload the page.
15. You should see a list of available signs, click on a sign that you wish to
    display.
16. You should now see a list of all books matching the SQL query in the report
    that you attached to your stream.
17. If you have OPACLocalCoverImages enabled, all books with local covers
    attached should be presented using this cover.
    If no local cover is available and the book has a ISBN with a cover in
    openlibrary.org, the cover image from openlibrary.org should be shown.
    If all of the above fails, a cover matching the theme of the page should be
    seen, showing the book title and author.
18. Clicking a book should bring you to a detailed view of the book where you
    can see the books availability. You should also see the two next books and
    the two previous books in the stream (unless you're at the beginning or end
    of the stream)
19. Swiping (if no touch screen, click and hold left mouse button and drag)
    left/right should bring you to next/previous book. Clicking on the
    next/previous books (right/left of the active one) should bring you to the
    detailed view of the clicked book.
20. Leaving the page idle (i.e no user interaction) for the amount of time
    specified in step 6. should result in the page automatically switching to
    the next book in the stream.

Sponsored-by: Regionbibliotek Halland / County library of Halland

Signed-off-by: Lisette Scheer <lisetteslatah@gmail.com>
Comment 135 Aleisha Amohia 2023-02-21 04:08:53 UTC
Created attachment 147005 [details] [review]
Bug 8628: (follow-up) Use utf8mb4 and TableExists in atomic update
Comment 136 Aleisha Amohia 2023-02-21 04:08:58 UTC
Created attachment 147006 [details] [review]
Bug 8628: (follow-up) Fixes for qa tools

using Asset and Koha.Preference
Comment 137 Aleisha Amohia 2023-02-21 04:09:02 UTC
Created attachment 147007 [details] [review]
Bug 8628: (follow-up) Fix layout of signs admin page

Signed-off-by: Stina Hallin <stina.hallin@ub.lu.se>
Comment 138 Aleisha Amohia 2023-02-21 04:09:07 UTC
Created attachment 147008 [details] [review]
Bug 8628: (follow-up) Fix documentation, subroutine calls, filters
Comment 139 Aleisha Amohia 2023-02-21 04:09:11 UTC
Created attachment 147009 [details] [review]
Bug 8628: Updated schema files
Comment 140 Aleisha Amohia 2023-02-21 04:09:15 UTC
Created attachment 147010 [details] [review]
Bug 8628: (follow-up) Fix search calls and table pagination
Comment 141 Eric Bégin 2023-08-18 08:02:10 UTC
When accessing the /cgi-bin/koha/opac-signs.pl, i get :

Could not compile /kohadevbox/koha/opac/opac-signs.pl: "GetMarcBiblio" is not exported by the C4::Biblio module
Can't continue after import errors at /kohadevbox/koha/opac/opac-signs.pl line 23.
BEGIN failed--compilation aborted at /kohadevbox/koha/opac/opac-signs.pl line 23.

While at this, it would be useful to optimize the steps, like setting up the prerequisit first :
Creating the SIGN reports first
Then the Sign stream
followed be the sign itself.

It's a nice feature. I would suggest to name it "Digital Signage" in order to match that kind of product (Xibo, Broadcast, ...)