IntranetUserJS
Version från den 8 november 2021 kl. 12.48 av Marie (diskussion | bidrag) (Lagt till kod från Musik- och teaterbiblioteket)
Bibliotek Mellansjö
Bibliotek Mellansjös IntranetUserJS
Personnummer - visuell hjälp att se när det är i giltigt format. För bruk i personaldelen. Gör rutan för personnummer: * röd - om formatet på det som står i fältet inte stämmer med ett personnummer. * grön - om formatet på det står i fältet stämmer med ett personnummer. * ofärgad - om rutan är tom. Klistra in i syspref IntranetUserJS för att använda. OBS! Ändra alla förekomster av patron_attr_4 till det id som ert personnummer fält har i HTML-koden. Gå till /cgi-bin/koha/admin/patron-attr-types.pl för att skapa personnummer-attribut om ni inte har det. Aktivera sedan syspref för extendet patron attributes om ni inte redan har det på (Koha ger en varning isf). // Koden ger en visuell hjälp att se att formatet stämmer men kontrollerar inte mot folkbokföringen att det är ett giltigt personnummer. $(document).ready(function () { // Kör bara koden på sidan där låntagarna uppdaterar sina uppgifter if ($("body").is("#pat_memberentrygen")) { // Bevaka fältet för personnummer efter förändringar $("#patron_attr_4").on("input", function () { if ($(this).data("lastval") !== $(this).val()) { $(this).data("lastval", $(this).val()); var VAL = $("#patron_attr_4").val(); // Ett reguljärt uttryck för att matcha mönstret hos personnummer var personnummerPattern = /^(?:19|[2-9][0-9]){0,1}(?:[0-9]{2})(?!0229|0230|0231|0431|0631|0931|1131)(?:(?:0[1-9])|(?:1[0-2]))(?:(?:0[1-9])|(?:1[0-9])|(?:2[0-9])|(?:3[01]))[-+](?!0000)(?:[0-9]{4})$/; // Här logiken för kontroll av själva personnumret if (personnummerPattern.test(VAL)) { // Visa någon indikator för att allt är ok. $("#patron_attr_4").css("border-color", "green"); $("#patron_attr_4").css("background-color", "#d8ffe0"); } else if ($("#patron_attr_4").val().length === 0) { //alert("Inuti else if length 0"); $("#patron_attr_4").css("border-color", "initial"); } else { // Visa en indikator på att det finns problem med personnumret. $("#patron_attr_4").css("border-color", "red"); $("#patron_attr_4").css("background-color", "#ffd8d8"); } } }); } });
Tar bort sista kolumnen i reservationstabellen (#hold-table) Koha version: 16.05.04.000 Av: Magnus Pettersson, LTU - magnus.pettersson@ltu.se Problemet med det flesta tabeller i Koha är att de visas med hjälp av ajax. Det gör att vi inte kan använda oss enbart av "$(document).ready" funktionen för att ändra på sidan. Utan sidan måste först ladda färdigt innan vi kan ändra. I mitt fall gick det utmärkt att ändra table header (th) men inte datan i tabellen (td) eftersom tabellen laddas vid två tillfällen. Lösningen blev att kolla efter DOMSubtreeModified event på table id. När tabellen är uppdaterad så fungerar det utmärkt att uppdatera sidan. $(document).ready(function () { $('#holds-table').bind("DOMSubtreeModified", function() { $('#holds-table tr').find('td:eq(8),th:eq(8)').remove(); }); });
Markerar raden med det aktuella exemplaret efter sökt streckkod Koha-version: 17.11.04.000 Av: Johan Sahlberg, Bibliotek Mellansjö - johan.sahlberg@tidaholm.se $(document).ready(function () { $('#cat-search-block .submit').on('click', function(){ // Vanlig katalogsökning $('input[type="text"]').each(function(){ var id = $(this).attr('id'); var value = $(this).val(); localStorage.setItem(id, value); }); }); $('form[action="search.pl"] .btn').on('click', function(){ // Avancerad sökning $('input[type="text"]').each(function(){ var value = $(this).val(); if (value !== '') { localStorage.setItem('search-form', value);} }); }); $('td a[href^="/cgi-bin/koha/catalogue/moredetail.pl"]').text(function () { var storedsearch = localStorage.getItem('search-form'); if ($(this).text() == storedsearch) { $(this).closest('tr').children().css('background-color','#d4efb7'); localStorage.removeItem('search-form');} }); });
Knapp med "Senaste låntagare" Koha-version: 17.11.04.000 Av: Johan Sahlberg, Bibliotek Mellansjö - johan.sahlberg@tidaholm.se Sparar senast laddade låntagare i webbläsaren och skapar därefter en knapp för att man snabbt ska kunna ladda den senaste låntagaren. När man kommer med muspekaren över knappen visas vilken låntagaren är till höger om knappen. Även en rensa-knapp finns ifall man vill ta bort manuellt. $(document).ready(function () { $('div.patroninfo h5').each(function(){ var value = $(this).text(); var value2 = value.substring(value.lastIndexOf("(")+1,value.lastIndexOf(")")); sessionStorage.setItem('lastpatron', value); sessionStorage.setItem('cardnumber', value2); }); if (sessionStorage["cardnumber"]) { // Visa knappen ifall det finns en sparad låntagare var lpatron = sessionStorage.getItem('lastpatron'); $('<span> </span><button id="lastpatron">Senaste låntagare</button>').insertAfter('input[id="autocsubmit"]'); $('<a href="#" id="clearlpatron"> Rensa</a>').insertAfter('#lastpatron'); }; $("<a href='#' id='patronspan'> "+lpatron+"</a>").insertBefore('#clearlpatron').hide(); $('#lastpatron').mouseover(function(event){ event.preventDefault(); $("#clearlpatron").hide(); $("#patronspan").show(); }); $('#lastpatron').mouseout(function(event){ event.preventDefault(); $("#clearlpatron").show(); $("#patronspan").hide(); }); $('#lastpatron').on('click', function(event){ // Öppna senaste låntagare var lpatronnr = sessionStorage.getItem('cardnumber'); $('input[id="findborrower"]').attr("value", lpatronnr); }); $('#clearlpatron').on('click', function(event){ // Rensa senaste låntagare sessionStorage.removeItem('cardnumber'); sessionStorage.removeItem('lastpatron'); $('#lastpatron').hide(); $('#clearlpatron').hide(); }); });
Musik- och teaterbiblioteket
Tillagt 2021-11-08 av Marie Hedbom, Musik- och teaterbiblioteket
Ändra namn på fält i redigering av exemplarpost. Obs, slår igenom oavsett om man byter språk till tex engelska.
//byter namn på fältets namn $("#cataloguing_additem_newitem label:contains('0 - Withdrawn status')").text('0 - Begränsat material'); $("#cataloguing_additem_newitem label:contains('2 - Source of classification or shelving scheme')").text('2 - Klassifikationssystem'); $("#cataloguing_additem_newitem label:contains('3 - Materials specified (bound volume or other part')").text('3 - Material specificerat'); $("#cataloguing_additem_newitem label:contains('4 - Damaged status')").text('4 - Skadestatus'); $("#cataloguing_additem_newitem label:contains('5 - Use restrictions')").text('5 - Restriktioner'); $("#cataloguing_additem_newitem label:contains('7 - Not for loan')").text('7 - Inte för lån'); $("#cataloguing_additem_newitem label:contains('8 - Collection code')").text('8 - Samling'); $("#cataloguing_additem_newitem label:contains('c - Shelving location')").text('c - Placering'); $("#cataloguing_additem_newitem label:contains('h - Serial Enumeration / chronology')").text('h - Tidskriftsnummer'); $("#cataloguing_additem_newitem label:contains('j - Shelving control number')").text('j - Statistik stämmor'); $("#cataloguing_additem_newitem label:contains('o - Full call number')").text('o - Hyllplacering'); $("#cataloguing_additem_newitem label:contains('p - Barcode')").text('p - Streckkod'); $("#cataloguing_additem_newitem label:contains('t - Copy number')").text('t - Exemplarnummer'); $("#cataloguing_additem_newitem label:contains('x - Non-public note')").text('x - Intern anmärkning'); $("#cataloguing_additem_newitem label:contains('y - Koha item type')").text('y - Exemplartyp'); $("#cataloguing_additem_newitem label:contains('z - Public note')").text('z - Offentlig anmärkning');
Dölja fält som vi inte vill visa i exemplarredigeringen. Obs, ursprungligen från Mellansjö så de ska ha credden.
//döljer onödiga fält i exemplarredigeringen if ($('#cat_additem').length) { var hiddenArr = ['a','b','d','e','f','g','i','v','w','2']; for (i = 0; i < hiddenArr.length; i++) { $('.subfield_line label').each(function() { if ($(this).text().charAt(0) == hiddenArr[i]) { $(this).closest('li').hide(); }; }); }; };
Skriva ut funktionskoder så de blir läsliga/begripliga för användaren. Bara att kopiera och skriva in för varje funktionskod som används.
//Skriver ut funktionskoder i både resultatlistan och på detaljsidan $(".relatorcode").text(function () { return $(this).text().replace(/\bedt(\.|\b)/, "redaktör"); });
Rödmarkera fält i tex låntagar- eller exemplarpost utan att det är obligatoriska fält.
//Rödmarkerar viktiga fält i exemplarposten $("#cataloguing_additem_newitem label:contains('o - Hyllplacering')").addClass("required"); --- //Rödmarkerar statistikfälten Kön och Län även om det går att spara även utan att fylla i $("#memberentry_patron_attributes label[for='patron_attr_1']").addClass("required"); //style attribute in red since it's required $("#memberentry_patron_attributes label[for='patron_attr_2']").addClass("required"); $("#memberentry_identity label:contains('Födelsedatum: ')").addClass("required"); $("#memberentry_mainaddress label:contains('Land: ')").text("Land (inte Sve): "); //$("#memberentry_library_management label[for='branchcode']").hide(); $("#memberentry_mainaddress label[for='address']").addClass("required"); $("#memberentry_mainaddress label[for='zipcode']").addClass("required"); $("#memberentry_mainaddress label[for='city']").addClass("required"); $("#memberentry_contact label[for='phone']").addClass("required"); $("#memberentry_contact label[for='email']").addClass("required"); $("#memberentry_library_management label[for='cardnumber']").addClass("required"); $("#memberentry_library_management label[for='sort2']").addClass("required");
Irriterande popup som kommer om låntagaren har kategorin NY och därmed inte är helt klar
//Ger popupmeddelande om låntagarkategorin är NY med uppmaning att uppgradera kontot if ($('div.patroninfo > ul.patronbriefinfo > li.patroncategory:contains("NY")').length > 0) { alert('Uppgradera kontot innan du lånar ut material till låntagaren!'); }