Bug 33346: Add Help link to Koha manual in ERM module
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Tue, 28 Mar 2023 08:11:01 +0000 (10:11 +0200)
committerTomas Cohen Arazi <tomascohen@theke.io>
Fri, 31 Mar 2023 10:11:06 +0000 (12:11 +0200)
The 'Help' is missing in the ERM module, this patch is adding it.

Test plan:
Confirm that the Help link is displayed on the different pages of the
ERM module and that it leads to the correct page of the manual.

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Koha/Manual.pm
koha-tmpl/intranet-tmpl/prog/js/vue/components/ERM/Main.vue
koha-tmpl/intranet-tmpl/prog/js/vue/components/Help.vue [new file with mode: 0644]

index bb052f1..4ef8c09 100644 (file)
@@ -150,6 +150,34 @@ our $mapping = {
     'course_reserves/course-details'           => '/course_reserves.html',
     'course_reserves/course-reserves'          => '/course_reserves.html',
     'course_reserves/course'                   => '/course_reserves.html#adding-courses',
+    'erm/erm'                                  => '/erm.html',
+    'erm/agreements'                           => '/erm.html#agreements',
+    'erm/agreements/'                          => '/erm.html#search-and-view-an-agreement-record',
+    'erm/agreements/add'                       => '/erm.html#create-an-agreement-record',
+    'erm/agreements/edit/'                     => '/erm.html#create-an-agreement-record',
+    'erm/licenses'                             => '/erm.html#licenses',
+    'erm/licenses/'                            => '/erm.html#search-and-view-a-license-record',
+    'erm/licenses/add'                         => '/erm.html#create-a-license-record',
+    'erm/licenses/edit'                        => '/erm.html#create-a-license-record',
+    'erm/eholdings/local/packages'             => '/erm.html#local',
+    'erm/eholdings/local/packages/'            => '/erm.html#local',
+    'erm/eholdings/local/packages/add'         => '/erm.html#local',
+    'erm/eholdings/local/packages/edit/'       => '/erm.html#local',
+    'erm/eholdings/local/titles'               => '/erm.html#titles-1',
+    'erm/eholdings/local/titles/'              => '/erm.html#titles-1',
+    'erm/eholdings/local/titles/add'           => '/erm.html#titles-1',
+    'erm/eholdings/local/titles/edit/'         => '/erm.html#titles-1',
+    'erm/eholdings/local/titles/import'        => '/erm.html#import-a-new-local-title-record-from-a-list',
+    'erm/eholdings/local/resources/'           => '/erm.html#eholdings',
+    'erm/eholdings/ebsco/packages'             => '/erm.html#packages',
+    'erm/eholdings/ebsco/packages/'            => '/erm.html#packages',
+    'erm/eholdings/ebsco/packages/add'         => '/erm.html#packages',
+    'erm/eholdings/ebsco/packages/edit/'       => '/erm.html#packages',
+    'erm/eholdings/ebsco/titles'               => '/erm.html#titles',
+    'erm/eholdings/ebsco/titles/'              => '/erm.html#titles',
+    'erm/eholdings/ebsco/titles/add'           => '/erm.html#titles',
+    'erm/eholdings/ebsco/titles/edit/'         => '/erm.html#titles',
+    'erm/eholdings/ebsco/resources/'           => '/erm.html#ebsco',
     'ill/ill-requests'                         => '/ILL_requests.html',
     'labels/label-edit-batch'                  => '/tools.html#label-batches-label',
     'labels/label-edit-layout'                 => '/tools.html#label-layouts-label',
@@ -254,13 +282,17 @@ our $mapping = {
 sub get_url {
     my ( $url, $preferred_language ) = @_;
     my $file;
-    if ($url =~ /koha\/(.*)\.pl/) {
+    if ($url =~ /koha\/(.*)\.pl/ || $url =~ '/koha/(erm.*)') {
         $file = $1;
     } else {
         $file = 'mainpage';
     }
     $file =~ s/[^a-zA-Z0-9_\-\/]*//g;
 
+    if ( $file =~ m|^erm| ) {
+        $file =~ s|\d*$||;
+    }
+
     my $view;
     if ($url =~ /(?:\?|\&)tab=(?<value>[\w+,.-]*)/) {
         $view = $file . '#' . $+{value};
index 0da4384..ae4b5b5 100644 (file)
@@ -1,6 +1,9 @@
 <template>
     <div v-if="ERMModule">
-        <Breadcrumb />
+        <div id="sub-header">
+            <Breadcrumb />
+            <Help />
+        </div>
         <div class="main container-fluid">
             <div class="row">
                 <div class="col-sm-10 col-sm-push-2">
 <script>
 import { inject } from "vue"
 import Breadcrumb from "../../components/Breadcrumb.vue"
+import Help from "../../components/Help.vue"
 import Dialog from "../../components/Dialog.vue"
 import { APIClient } from "../../fetch/api-client.js"
 import "vue-select/dist/vue-select.css"
@@ -205,6 +209,7 @@ export default {
     components: {
         Breadcrumb,
         Dialog,
+        Help,
     },
 }
 </script>
diff --git a/koha-tmpl/intranet-tmpl/prog/js/vue/components/Help.vue b/koha-tmpl/intranet-tmpl/prog/js/vue/components/Help.vue
new file mode 100644 (file)
index 0000000..246db0c
--- /dev/null
@@ -0,0 +1,9 @@
+<template>
+    <nav id="shortcut" class="shortcut">
+        <a href="/cgi-bin/koha/help.pl"
+            ><i class="fa fa-question-circle"></i> <span>Help</span></a
+        >
+    </nav>
+</template>
+
+<script></script>