Bug 20102: Remove attribute "text/css" for <style> element used in staff client templates
[koha_ffzg] / koha-tmpl / intranet-tmpl / prog / en / modules / admin / categories.tt
index 79a54e0..d1b3dc8 100644 (file)
+[% USE raw %]
+[% USE Asset %]
 [% USE Koha %]
 [% USE KohaDates %]
 [% USE Price %]
+[% USE ColumnsSettings %]
+[% SET footerjs = 1 %]
 [% INCLUDE 'doc-head-open.inc' %]
-<title>Koha &rsaquo; Administration &rsaquo; Patron categories &rsaquo; [% IF op == 'add_form' %][% IF ( categorycode ) %]Modify category '[% categorycode %]'[% ELSE %]New category[% END %][% END %]
-[% IF op == 'delete_confirm' %][% IF ( patrons_in_category > 0 ) %]Cannot delete: category [% categorycode %] in use[% ELSE %]Confirm deletion of category '[% categorycode %]'[% END %][% END %]
+<title>Koha &rsaquo; Administration &rsaquo; Patron categories &rsaquo; [% IF op == 'add_form' %][% IF ( categorycode ) %]Modify category '[% categorycode | html %]'[% ELSE %]New category[% END %][% END %]
+[% IF op == 'delete_confirm' %][% IF ( patrons_in_category > 0 ) %]Cannot delete: category [% categorycode | html %] in use[% ELSE %]Confirm deletion of category '[% categorycode | html %]'[% END %][% END %]
 </title>
 [% INCLUDE 'doc-head-close.inc' %]
-[% INCLUDE 'calendar.inc' %]
-<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
-[% INCLUDE 'datatables.inc' %]
-<script type="text/javascript" id="js">
-//<![CDATA[
-    $(document).ready(function() {
-        $("#table_categorie").dataTable($.extend(true, {}, dataTablesDefaults, {
-            "aoColumnDefs": [{
-                "aTargets": [-1, -2],
-                "bSortable": false,
-                "bSearchable": false
-            }, {
-                "aTargets": [3, 4, 5],
-                "sType": "natural"
-            }, ],
-            "aaSorting": [
-                [1, "asc"]
-            ],
-            "sPaginationType": "four_button"
-        }));
-
-        $("#enrolmentperioddate").datepicker({
-            minDate: 1
-        }); // Require that "until date" be in the future
-
-        if ($("#branches option:selected").length < 1) {
-            $("#branches option:first").attr("selected", "selected");
-        }
-    });
-
-    function isNotNull(f, noalert) {
-        if (f.value.length == 0) {
-            return false;
-        }
-        return true;
-    }
-
-    function isNum(v, maybenull) {
-        var n = new Number(v.value);
-        if (isNaN(n)) {
-            return false;
-        }
-        if (maybenull == 0 && v.value == '') {
-            return false;
-        }
-        return true;
-    }
-
-    // to check if the data are correctly entered.
-    function Check(ff) {
-        var ok = 0;
-        var _alertString = _("Form not submitted because of the following problem(s)");
-        _alertString += "\n-------------------------------------------------------------------\n\n";
-        ff.categorycode.value = $.trim(ff.categorycode.value);
-        if (ff.categorycode.value.length == 0) {
-            ok = 1;
-            _alertString += _("- categorycode missing") + "\n";
-        } else {
-            var patt = /^[a-zA-Z0-9\-_]+$/g;
-            if (!patt.test(ff.categorycode.value)) {
-                ok = 1;
-                _alertString += _("- category code can only contain the following characters: letters, numbers, - and _") + "\n";
-            }
-        }
-        if (!(ff.category_type.value)) {
-            ok = 1;
-            _alertString += _("- category type missing") + "\n";
-        }
-        if (!(isNotNull(ff.description, 1))) {
-            ok = 1;
-            _alertString += _("- description missing") + "\n";
-        }
-        if (!isNum(ff.upperagelimit, 0) && ff.category_type.value == 'C') {
-            ok = 1;
-            _alertString += _("- upperagelimit is not a number") + "\n";
-
-        }
-        if (!(ff.enrolmentperioddate.value || ff.enrolmentperiod.value)) {
-            ok = 1;
-            _alertString += _("- either Enrollment period or Until date must be provided") + "\n";
-        }
-        if (ff.enrolmentperioddate.value && ff.enrolmentperiod.value) {
-            document.getElementById('enrolmentmessage').className = "error";
-            return false;
-        }
-
-        if (ok) { // if there is a problem
-            alert(_alertString);
-            return false;
-        }
-        // if all is good
-        ff.submit();
-    }
-//]]>
-</script>
-<style type="text/css">#enrolmentmessage.hint { display : none; }</style>
+[% Asset.css("css/datatables.css") | $raw %]
+<style>#enrolmentmessage.hint { display : none; }</style>
 </head>
+
 <body id="admin_categorie" class="admin">
 [% INCLUDE 'header.inc' %]
 [% INCLUDE 'patrons-admin-search.inc' %]
 
-<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a> &rsaquo; [% IF op == 'add_form' %] <a href="/cgi-bin/koha/admin/categories.pl">Patron categories</a> &rsaquo; [% IF ( categorycode ) %]Modify category '[% categorycode %]'[% ELSE %]New category[% END %][% END %]
-[% IF op == 'delete_confirm' %] <a href="/cgi-bin/koha/admin/categories.pl">Patron categories</a> &rsaquo; [% IF ( patrons_in_category > 0 ) %]Cannot delete: Category [% categorycode %] in use[% ELSE %]Confirm deletion of category '[% categorycode %]'[% END %][% END %]
+<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a> &rsaquo; [% IF op == 'add_form' %] <a href="/cgi-bin/koha/admin/categories.pl">Patron categories</a> &rsaquo; [% IF ( categorycode ) %]Modify category '[% categorycode | html %]'[% ELSE %]New category[% END %][% END %]
+[% IF op == 'delete_confirm' %] <a href="/cgi-bin/koha/admin/categories.pl">Patron categories</a> &rsaquo; [% IF ( patrons_in_category > 0 ) %]Cannot delete: Category [% categorycode | html %] in use[% ELSE %]Confirm deletion of category '[% categorycode | html %]'[% END %][% END %]
 [% IF op == 'delete_confirmed' %] <a href="/cgi-bin/koha/admin/categories.pl">Patron categories</a> &rsaquo; Category deleted[% END %]
 [% IF op == 'list' %]Patron categories[% END %]</div>
 
-<div id="doc3" class="yui-t2">
-   <div id="bd">
-    <div id="yui-main">
-    <div class="yui-b">
+<div class="main container-fluid">
+    <div class="row">
+        <div class="col-sm-10 col-sm-push-2">
+            <main>
 
 [% FOR m IN messages %]
-    <div class="dialog [% m.type %]">
+    <div class="dialog [% m.type | html %]">
         [% SWITCH m.code %]
         [% CASE 'error_on_update' %]
             An error occurred when updating this patron category. Perhaps it already exists.
         [% CASE 'already_exists' %]
             This patron category already exists.
         [% CASE %]
-            [% m.code %]
+            [% m.code | html %]
         [% END %]
     </div>
 [% END %]
 
 [% IF op == 'add_form' %]
-    <form name="Aform" action="/cgi-bin/koha/admin/categories.pl" method="post">
+    <form id="category_form" action="/cgi-bin/koha/admin/categories.pl" method="post">
         <input type="hidden" name="op" value="add_validate" />
         <input type="hidden" name="checked" value="0" />
         [% IF category %]
-            <h1>Modify category [% categorycode %]</h1>
+            <h1>Modify category [% categorycode | html %]</h1>
         [% ELSE %]
             <h1>New category</h1>
         [% END %]
             <ol>
                 [% IF category %]
                     <li>
-                        <span class="label">Category code: </span>[% categorycode %]
-                        <input type="hidden" name="categorycode" value="[% category.categorycode %]" /><input type="hidden" name="is_a_modif" value="1" />
+                        <span class="label">Category code: </span>[% categorycode | html %]
+                        <input type="hidden" name="categorycode" value="[% category.categorycode | html %]" /><input type="hidden" name="is_a_modif" value="1" />
                     </li>
                 [% ELSE %]
                     <li>
                         <label for="categorycode" class="required">Category code: </label>
-                        <input type="text" name="categorycode" id="categorycode" size="10" maxlength="10" onblur="toUC(this)" />
+                        <input type="text" name="categorycode" id="categorycode" size="10" maxlength="10" class="required" required="required" />
                         <span class="required">Required</span>
                     </li>
                 [% END %]
                 <li>
                     <label for="description" class="required">Description: </label>
-                    <input type="text" name="description" id="description" size="40" maxlength="80" value="[% category.description %]" />
+                    <input type="text" name="description" id="description" size="40" maxlength="80" class="required" required="required" value="[% category.description | html %]" />
                     <span class="required">Required</span>
                 </li>
                 <li>
-                    <label for="enrolmentperiod" class="required">Enrollment period: </label>
+                    <span class="label">Enrollment period: </span>
                     <fieldset>
                         <legend>Choose one</legend>
                         <ol>
                             <li>
                                 <label for="enrolmentperiod" style="width:6em;">In months: </label>
-                                <input type="text" name="enrolmentperiod" id="enrolmentperiod" size="3" maxlength="3" value="[% IF category.enrolmentperiod %][% category.enrolmentperiod %][% END %]" /> months
+                                [% IF category.enrolmentperiod %]
+                                    <input type="text" class="enrollmentperiod" name="enrolmentperiod" id="enrolmentperiod" size="3" maxlength="3" value="[% category.enrolmentperiod | html %]" /> months
+                               [% ELSE %]
+                                    <input type="text" class="enrollmentperiod" name="enrolmentperiod" id="enrolmentperiod" size="3" maxlength="3" value="" /> months
+                               [% END %]
                             </li>
                             <li>
                                 <label for="enrolmentperioddate" style="width:6em;">Until date: </label>
-                                <input type="text" name="enrolmentperioddate" id="enrolmentperioddate" value="[% category.enrolmentperioddate | $KohaDates %]" />
-                                <div id="enrolmentmessage" class="hint" style="margin-left:0;">Cannot have "months" and "until date" at the same time</div>
+                                <input type="text" class="enrollmentperiod datepicker" name="enrolmentperioddate" id="enrolmentperioddate" value="[% category.enrolmentperioddate | $KohaDates %]" />
                             </li>
                         </ol>
                     </fieldset>
                 </li>
                 <li>
                     <label for="dateofbirthrequired">Age required: </label>
-                    <input type="text" name="dateofbirthrequired" id="dateofbirthrequired" value="[% category.dateofbirthrequired %]" size="3" maxlength="3" /> years
+                    <input type="text" name="dateofbirthrequired" id="dateofbirthrequired" value="[% category.dateofbirthrequired | html %]" size="3" maxlength="3" /> years
                 </li>
                 <li>
                     <label for="upperagelimit">Upperage limit: </label>
-                    <input type="text" name="upperagelimit" id="upperagelimit" size="3" maxlength="3" value="[% category.upperagelimit %]" /> years
+                    <input type="text" name="upperagelimit" id="upperagelimit" size="3" maxlength="3" value="[% category.upperagelimit | html %]" /> years
                 </li>
                 <li>
                     <label for="enrolmentfee">Enrollment fee: </label>
                         <option value="">All branches</option>
                         [% FOREACH branch IN branches_loop %]
                           [% IF branch.selected %]
-                            <option selected="selected" value="[% branch.branchcode %]">[% branch.branchname %]</option>
+                            <option selected="selected" value="[% branch.branchcode | html %]">[% branch.branchname | html %]</option>
                           [% ELSE %]
-                            <option value="[% branch.branchcode %]">[% branch.branchname %]</option>
+                            <option value="[% branch.branchcode | html %]">[% branch.branchname | html %]</option>
                           [% END %]
                         [% END %]
                     </select>
                     <span>Select <i>All branches</i> if this category type must to be displayed all the time. Otherwise select libraries you want to associate with this value.
                     </span>
                 </li>
-                <li><label for="block_expired">Block expired patrons</label>
+                <li><label for="block_expired">Block expired patrons:</label>
                     <select name="BlockExpiredPatronOpacActions" id="block_expired">
                         [% IF not category or category.BlockExpiredPatronOpacActions == -1%]
                             <option value="-1" selected="selected"> Follow system preference BlockExpiredPatronOpacActions </option>
                         Choose whether patrons of this category be blocked from public catalog actions such as renewing and placing holds when their cards have expired.
                     </span>
                 </li>
+                [% IF ( Koha.Preference('CheckPrevCheckout') == 'softyes' || Koha.Preference('CheckPrevCheckout') == 'softno' )  %]
+                  <li><label for="checkprevcheckout">Check for previous checkouts: </label>
+                      <select name="checkprevcheckout" id="checkprevcheckout">
+                          [% IF category.checkprevcheckout == 'yes' %]
+                          <option value="yes" selected="selected">Yes and try to override system preferences</option>
+                          <option value="no">No and try to override system preferences</option>
+                          <option value="inherit">Inherit from system preferences</option>
+                          [% ELSIF category.checkprevcheckout == 'no' %]
+                          <option value="yes">Yes and try to override system preferences</option>
+                          <option value="no" selected="selected">No and try to override system preferences</option>
+                          <option value="inherit">Inherit from system preferences</option>
+                          [% ELSE %]
+                          <option value="yes">Yes and try to override system preferences</option>
+                          <option value="no">No and try to override system preferences</option>
+                          <option value="inherit" selected="selected">Inherit from system preferences</option>
+                          [% END %]
+                      </select>
+                      <span>
+                          Choose whether patrons of this category by default are reminded if they try to borrow an item they borrowed before.
+                      </span>
+                  </li>
+                [% END %]
                 <li>
                     <label for="default_privacy">Default privacy: </label>
                     <select id="default_privacy" name="default_privacy">
                 [% INCLUDE 'messaging-preference-form.inc' %]
             </fieldset>
         [% END %]
-        <fieldset class="action"><input type="button" value="Save" onclick="Check(this.form);" /> </fieldset>
+        <fieldset class="action">
+            <input type="submit" value="Save" />
+            <a href="/cgi-bin/koha/admin/categories.pl" class="cancel">Cancel</a>
+        </fieldset>
     </form>
 [% END %]
 
         <fieldset>
             <legend>
                 [% IF patrons_in_category > 0 %]
-                    Category [% categorycode %] is in use.  Deletion not possible!
+                    Category [% categorycode | html %] is in use.  Deletion not possible!
                 [% ELSE %]
-                    Confirm deletion of category [% categorycode %]
+                    Confirm deletion of category [% categorycode | html %]
                 [% END %]
             </legend>
 
             [% IF patrons_in_category > 0  %]
                 <div class="dialog alert">
-                    <strong>This category is used [% patrons_in_category %] times</strong>. Deletion not possible
+                    <strong>This category is used [% patrons_in_category | html %] times</strong>. Deletion not possible
                 </div>
             [% END %]
             <table>
-                <tr><th scope="row">Category code: </th><td>[% category.categorycode %]</td></tr>
-                <tr><th scope="row">Description: </th><td>[% category.description %]</td></tr>
+                <tr><th scope="row">Category code: </th><td>[% category.categorycode | html %]</td></tr>
+                <tr><th scope="row">Description: </th><td>[% category.description | html %]</td></tr>
                 <tr><th scope="row">Enrollment period: </th>
                     <td>
                         [% IF category.enrolmentperiod %]
-                            [% category.enrolmentperiod %] months
+                            [% category.enrolmentperiod | html %] months
                         [% ELSE %]
                             until [% category.enrolmentperioddate | $KohaDates %]
                         [% END %]
                     </td>
                 </tr>
-                <tr><th scope="row">Age required: </th><td>[% category.dateofbirthrequired %] years</td></tr>
-                <tr><th scope="row">Upperage limit: </th><td>[% category.upperagelimit %] years</td></tr>
+                <tr><th scope="row">Age required: </th><td>[% category.dateofbirthrequired | html %] years</td></tr>
+                <tr><th scope="row">Upperage limit: </th><td>[% category.upperagelimit | html %] years</td></tr>
                 <tr><th scope="row">Enrollment fee: </th><td>[% category.enrolmentfee | $Price %]</td></tr>
                 <tr><th scope="row">Receives overdue notices: </th><td>[% IF category. overduenoticerequired %]Yes[% ELSE %]No[% END %]</td></tr>
                 <tr><th scope="row">Lost items in staff client</th><td>[% IF category.hidelostitems %]Hidden by default[% ELSE %]Shown[% END %]</td></tr>
                 <tr><th scope="row">Hold fee: </th><td>[% category.reservefee | $Price %]</td></tr>
+
+                [% IF ( Koha.Preference('CheckPrevCheckout') == 'softyes' || Koha.Preference('CheckPrevCheckout') == 'softno' ) %]
+                  <tr>
+                      <th scope="row">Check previous checkouts: </th>
+                      <td>
+                          [% SWITCH category.checkprevcheckout %]
+                          [% CASE 'yes' %]
+                              Yes
+                          [% CASE 'no' %]
+                              No
+                          [% CASE 'inherit' %]
+                              Inherit
+                          [% END %]
+                      </td>
+                  </tr>
+                [% END %]
                 <tr>
                     <th scope="row">Default privacy: </th>
                     <td>
                     <input type="submit" value="OK" />
                 [% ELSE %]
                     <input type="hidden" name="op" value="delete_confirmed" />
-                    <input type="hidden" name="categorycode" value="[% categorycode %]" />
+                    <input type="hidden" name="categorycode" value="[% categorycode | html %]" />
                     <input type="submit" value="Delete this category" />
                     <a class="cancel" href="/cgi-bin/koha/admin/categories.pl">Cancel</a>
                 [% END %]
 [% IF op == 'list' %]
 
     <div id="toolbar" class="btn-toolbar">
-        <a class="btn btn-small" id="newcategory" href="/cgi-bin/koha/admin/categories.pl?op=add_form"><i class="fa fa-plus"></i> New category</a>
+        <a class="btn btn-default btn-sm" id="newcategory" href="/cgi-bin/koha/admin/categories.pl?op=add_form"><i class="fa fa-plus"></i> New category</a>
     </div>
 
-    <h2>Patron category administration</h2>
+    <h2>Patron categories</h2>
     [% IF searchfield %]
-        You Searched for [% searchfield %]</span>
+        You Searched for [% searchfield | html %]</span>
     [% END %]
     [% IF categories%]
-        <table id="table_categorie">
+        <table id="patron_categories">
             <thead>
                 <tr>
                     <th scope="col">Code</th>
                     <th scope="col">Messaging</th>
                     [% END %]
                     <th scope="col">Branches limitations</th>
+                    [% IF ( Koha.Preference('CheckPrevCheckout') == 'softyes' || Koha.Preference('CheckPrevCheckout') == 'softno' ) %]
+                    <th scope="col">Check previous checkout?</th>
+                    [% END %]
                     <th scope="col">Default privacy</th>
-                    <th scope="col">&nbsp; </th>
-                    <th scope="col">&nbsp; </th>
+                    <th scope="col">Actions</th>
                 </tr>
             </thead>
             <tbody>
                 [% FOREACH category IN categories %]
                     <tr>
-                        <td>[% category.categorycode %]</td>
+                        <td>[% category.categorycode | html %]</td>
                         <td>
-                            <a href="/cgi-bin/koha/admin/categories.pl?op=add_form&amp;categorycode=[% category.categorycode |uri %]">[% category.description %]</a>
+                            <a href="/cgi-bin/koha/admin/categories.pl?op=add_form&amp;categorycode=[% category.categorycode |uri %]">[% category.description | html %]</a>
                         </td>
                         <td>
                             [% SWITCH category.category_type %]
                         </td>
                         <td>
                             [% IF ( category.enrolmentperiod ) %]
-                                [% category.enrolmentperiod %] months
+                                [% category.enrolmentperiod | html %] months
                             [% ELSE %]
                                 until [% category.enrolmentperioddate | $KohaDates %]
                             [% END %]
                         </td>
-                        <td>[% category.dateofbirthrequired %] years</td>
-                        <td>[% category.upperagelimit %] years</td>
-                        <td>[% category.enrolmentfee | $Price %]</td>
+                        [% IF (category.dateofbirthrequired) %]
+                            <td>[% category.dateofbirthrequired | html %] years</td>
+                        [% ELSE %]
+                            <td>-</td>
+                        [% END %]
+                        [% IF (category.upperagelimit) %]
+                            <td>[% category.upperagelimit | html %] years</td>
+                        [% ELSE %]
+                            <td>-</td>
+                        [% END %]
+                        [% IF (category.enrolmentfee > 0) %]
+                            <td>[% category.enrolmentfee | $Price %]</td>
+                        [% ELSE %]
+                            <td>-</td>
+                        [% END %]
                         <td>[% IF ( category.overduenoticerequired ) %]Yes[% ELSE %]No[% END %]</td>
                         <td>[% IF ( category.hidelostitems ) %]Hidden[% ELSE %]Shown[% END %]</td>
-                        <td>[% category.reservefee | $Price %]</td>
+                        [% IF (category.reservefee > 0) %]
+                            <td>[% category.reservefee | $Price %]</td>
+                        [% ELSE %]
+                            <td>-</td>
+                        [% END %]
                         [% IF Koha.Preference('EnhancedMessagingPreferences') %]
                             <td style="white-space: nowrap; font-size:80%;">
                                 [% SET default_messaging = category.default_messaging %]
                                                 [% ELSIF ( prefs.Item_Checkout ) %]Item checkout
                                                 [% ELSE %]Unknown
                                                 [% END %]:
-                                                <strong>[% transport.transport %]</strong><br />
+                                                <strong>[% transport.transport | html %]</strong><br />
                                             [% ELSE %]None<br />[% END %]
                                         [% END %]
                                     [% END %]
                                 [% FOREACH branch IN branch_limitations %]
                                     [% branches_str = branches_str _ " " _ branch.branchname _ "(" _ branch.branchcode _ ")" %]
                                 [% END %]
-                                <span title="[% branches_str %]">
+                                <span title="[% branches_str | html %]">
                                     [% IF branch_limitations.size > 1 %]
-                                        [% branch_limitations.size %] branches limitations
+                                        [% branch_limitations.size | html %] branches limitations
                                     [% ELSE %]
-                                        [% branch_limitations.size %] branch limitation
+                                        [% branch_limitations.size | html %] branch limitation
                                     [% END %]
                                 </span>
                             [% ELSE %]
                                 No limitation
                             [% END %]
                         </td>
+                        [% IF ( Koha.Preference('CheckPrevCheckout') == 'softyes' || Koha.Preference('CheckPrevCheckout') == 'softno' ) %]
+                          <td>
+                              [% SWITCH category.checkprevcheckout %]
+                              [% CASE 'yes' %]
+                              Yes
+                              [% CASE 'no' %]
+                              No
+                              [% CASE 'inherit' %]
+                              Inherit
+                              [% END %]
+                          </td>
+                        [% END %]
                         <td>
                             [% SWITCH category.default_privacy %]
                             [% CASE 'default' %]
                                 Forever
                             [% END %]
                         </td>
-                        <td><a href="/cgi-bin/koha/admin/categories.pl?op=add_form&amp;categorycode=[% category.categorycode |uri %]">Edit</a></td>
-                        <td><a href="/cgi-bin/koha/admin/categories.pl?op=delete_confirm&amp;categorycode=[% category.categorycode |uri %]">Delete</a></td>
+                        <td class="actions">
+                            <a class="btn btn-default btn-xs" href="/cgi-bin/koha/admin/categories.pl?op=add_form&amp;categorycode=[% category.categorycode |uri %]"><i class="fa fa-pencil"></i> Edit</a>
+                            <a class="btn btn-default btn-xs" href="/cgi-bin/koha/admin/categories.pl?op=delete_confirm&amp;categorycode=[% category.categorycode |uri %]"><i class="fa fa-trash"></i> Delete</a>
+                        </td>
                     </tr>
                 [% END %]
             </tbody>
     [% END %]
 [% END %]
 
-</div>
-</div>
-<div class="yui-b">
-[% INCLUDE 'admin-menu.inc' %]
-</div>
-</div>
+            </main>
+        </div> <!-- /.col-sm-10.col-sm-push-2 -->
+
+        <div class="col-sm-2 col-sm-pull-10">
+            <aside>
+                [% INCLUDE 'admin-menu.inc' %]
+            </aside>
+        </div> <!-- /.col-sm-2.col-sm-pull-10 -->
+     </div> <!-- /.row -->
+
+[% MACRO jsinclude BLOCK %]
+    [% Asset.js("js/admin-menu.js") | $raw %]
+    [% Asset.js("js/messaging-preference-form.js") | $raw %]
+    [% INCLUDE 'calendar.inc' %]
+    [% INCLUDE 'datatables.inc' %]
+    [% INCLUDE 'columns_settings.inc' %]
+    <script>
+        var MSG_CATEGORYCODE_CHARS = _("Category code can only contain the following characters: letters, numbers, - and _.");
+        var MSG_ONE_ENROLLMENTPERIOD = ("Please choose an enrollment period in months OR by date.");
+        var columns_settings = [% ColumnsSettings.GetColumns( 'admin', 'categories', 'patron_categories', 'json' ) | $raw %];
+    </script>
+    [% Asset.js("js/categories.js") | $raw %]
+[% END %]
 [% INCLUDE 'intranet-bottom.inc' %]