Bug 21526: Use the 'url' filter when needed
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / admin / aqbudgetperiods.tt
index f8a0506..498486c 100644 (file)
+[% USE raw %]
+[% USE Asset %]
 [% USE KohaDates %]
+[% USE Price %]
+[% SET footerjs = 1 %]
+[%- BLOCK action_menu %]
+    <div class="dropdown">
+        <a class="btn btn-default btn-xs dropdown-toggle" id="budgetmenu_[% block_budget.budget_period_id | html %]" role="button" data-toggle="dropdown" href="#">
+           Actions <b class="caret"></b>
+        </a>
+        <ul class="dropdown-menu pull-right" role="menu" aria-labelledby="budgetmenu_[% block_budget.budget_period_id | html %]">
+              <li>
+                  <a href="[% script_name | url %]?op=add_form&amp;budget_period_id=[% block_budget.budget_period_id | uri %]"><i class="fa fa-pencil"></i> Edit</a>
+              </li>
+              [% IF block_budget.count %]
+                  <li class="disabled">
+                      <a data-toggle="tooltip" data-placement="left" title="[% block_budget.count | html %] fund(s) are attached to this budget. You must delete all attached funds before deleting this budget." href="#"><i class="fa fa-trash"></i> Delete</a>
+                  </li>
+              [% ELSE %]
+                  <li>
+                      <a href="[% script_name | url %]?op=delete_confirm&amp;budget_period_id=[% block_budget.budget_period_id | uri %]"><i class="fa fa-trash"></i> Delete</a>
+                  </li>
+              [% END %]
+              <li>
+                  <a href="[% script_name | url %]?op=duplicate_form&amp;budget_period_id=[% block_budget.budget_period_id | uri %]"><i class="fa fa-copy"></i> Duplicate</a>
+              </li>
+              <li>
+                  <a href="[% script_name | url %]?op=close_form&amp;budget_period_id=[% block_budget.budget_period_id | uri %]"><i class="fa fa-times-circle"></i> Close</a>
+              </li>
+              <li>
+                  <a href="/cgi-bin/koha/admin/aqbudgets.pl?op=add_form&amp;budget_period_id=[% block_budget.budget_period_id | uri %]"><i class="fa fa-plus"></i> Add fund</a>
+              </li>
+        </ul>
+    </div>
+[% END -%]
+
 [% INCLUDE 'doc-head-open.inc' %]
-<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
 [% INCLUDE 'doc-head-close.inc' %]
-[% INCLUDE 'calendar.inc' %]
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
-[% INCLUDE 'datatables-strings.inc' %]
-<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
-<script type="text/javascript" src="[% themelang %]/js/acq.js"></script>
-<script type="text/javascript">
-// #################################################################################
-// Javascript
-// #################################################################################
-    function CheckDuplicateForm(f){
-            var ok=1;
-            var _alertString="";
-            var alertString="";
-            if(!(isNotNull(f.budget_period_startdate,1))){
-              _alertString += "\n- " + _("Start date missing");
-            }
-            if (!(isNotNull(f.budget_period_enddate,1))){
-              _alertString += "\n- " + _("End date missing");
-            }
-            if( f.budget_period_startdate > f.budget_period_enddate ) {
-              _alertString += "\n- " + _("Start date must be before end date");
-            }
-
-            if(_alertString.length==0){
-              f.submit();
-            } else {
-              alertString += _("Form not submitted because of the following problem(s)");
-              alertString += "\n-----------------------------------------\n";
-              alertString += _alertString;
-              alert(alertString);
-            }
-    }
-    function Check(f) {
-            var ok=1;
-            var _alertString="";
-            var alertString2;
-
-            if (!(isNotNull(f.budget_period_startdate,1))) {
-                    _alertString += "\n- " + _("Start date missing");
-            }
-
-            if (!(isNotNull(f.budget_period_enddate,1))) {
-                    _alertString += "\n- " + _("End date missing");
-            }
-
-            if ( f.budget_period_startdate >   f.budget_period_enddate )  {
-                    _alertString += "\n- " + _("Start date must be before end date");
-            }
-
-            if (!(isNotNull(f.budget_period_description,1))) {
-                    _alertString += "\n- " + _("Description missing");
-            }
-
-            if (!(isNum(f.budget_period_total))) {
-                    _alertString += "\n- " + _("Amount must be a valid number, or empty");
-            }
-
-/*
-                       checkBudgetTotal(f) {
-                       }
-*/
-
-            if (_alertString.length==0) {
-                    f.submit();
-            } else {
-                    alertString2  = _("Form not submitted because of the following problem(s)");
-                    alertString2 += "\n------------------------------------------------------------------------------------\n";
-                    alertString2 += _alertString;
-                    alert(alertString2);
-            }
-    }
-
-
-
-    [% IF ( dateformat == 'metric' ) %]
-        dt_add_type_uk_date();
-    [% END %]
-    $(document).ready(function() {
-        var tabs = $('#budgetsTabs').tabs();
-        [% IF ( tab ) %]
-            tabs.tabs('select', [% tab %]);
-        [% END %]
-        $("#activeperiodst,#inactiveperiodst").dataTable($.extend(true, {}, dataTablesDefaults, {
-            "aoColumnDefs": [
-                {
-                    [% IF ( dateformat == 'metric' ) %]
-                        "aTargets": [ 1, 2 ], "sType": "uk_date",
-                    [% END %]
-                    "bSortable": false, 'aTargets':['_all'],
-                },
-            ],
-            "sPaginationType": "four_button",
-            "bAutoWidth": false,
-            "bPaginate": false,
-            "bInfo": false,
-            "bFilter": false,
-        } ) );
-    });
-</script>
+[% Asset.css("css/datatables.css") | $raw %]
+[% IF close_form %]
+    [% Asset.css("lib/jquery/plugins/treetable/stylesheets/jquery.treetable.css") | $raw %]
+[% END %]
 
 <title>
     Koha &rsaquo; Administration &rsaquo; Budgets
 
     [% IF ( add_form ) %]&rsaquo;
         [% IF ( budget_period_id ) %]
-            Modify budget'[% budget_period_id %]'
+            Modify budget [% budget_period_description | html %]
         [% ELSE %]
             Add budget
         [% END %]
     [% END %]
     [% IF ( duplicate_form ) %]&rsaquo; Duplicate budget[% END %]
     [% IF ( delete_confirm ) %]&rsaquo;
-            Delete budget '[% budget_period_description %]'?
+            Delete budget '[% budget_period_description | html %]'?
     [% END %]
     [% IF ( delete_confirmed ) %]&rsaquo;
         Data deleted
     [% END %]
+    [% IF close_form %]&rsaquo;
+      Close budget [% budget_period_description | html %]
+    [% END %]
+    [% IF closed %]&rsaquo;
+      Budget [% budget_period_description | html %] closed
+    [% END %]
 </title>
 
 
     <a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo;
     <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a> &rsaquo;
 
-    <!-- add or modify a budget period -->
-    <!-- ####################################### -->
     [% IF ( add_form ) %]
-        <a href="/cgi-bin/koha/admin/aqbudgetperiods.pl">Budget</a> &rsaquo;
+        <a href="/cgi-bin/koha/admin/aqbudgetperiods.pl">Budgets</a> &rsaquo;
         [% IF ( budget_period_id ) %]
-            Modify budget [% budget_period_description %]
-
+            <span>Modify budget '[% budget_period_description | html %]'</span>
         [% ELSE %]
-            Add budget
+            <span>Add budget</span>
         [% END %]
     [% END %]
-
-    <!-- delete a budget period -->
-    <!-- ################################ -->
     [% IF ( delete_confirm ) %]
         <a href="/cgi-bin/koha/admin/aqbudgetperiods.pl">Budgets</a> &rsaquo;
-        [% IF ( total ) %]
-            Cannot delete budget '[% budget_period_description %]'
+        [% IF ( total || funds_exist ) %]
+            <span>Cannot delete budget '[% budget_period_description | html %]'</span>
         [% ELSE %]
-            Delete budget '[% budget_period_description %]'?
+            <span>Delete budget '[% budget_period_description | html %]'?</span>
         [% END %]
     [% END %]
-    <!-- duplicate a budget -->
     [% IF ( duplicate_form ) %]
         <a href="/cgi-bin/koha/admin/aqbudgetperiods.pl">Budgets</a> &rsaquo; Duplicate budget
     [% END %]
-    <!-- display budget periods list -->
-    <!-- ########################################## -->
+    [% IF close_form %]
+        <a href="/cgi-bin/koha/admin/aqbudgetperiods.pl">Budgets</a> &rsaquo;
+        <span>Close budget <a href="/cgi-bin/koha/admin/aqbudgets.pl?budget_period_id=[% budget_period_id | uri %]">[% budget_period_description | html %]</a></span>
+    [% END %]
+    [% IF closed %]
+        <a href="/cgi-bin/koha/admin/aqbudgetperiods.pl">Budgets</a> &rsaquo;
+        <span>Budget <a href="/cgi-bin/koha/admin/aqbudgets.pl?budget_period_id=[% budget_period_id | uri %]">[% budget_period_description | html %]</a> closed</span>
+    [% END %]
     [% IF ( else ) %]
-        Budgets administration
+        <span>Budgets administration</span>
     [% 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>
 
-[% INCLUDE 'budgets-admin-toolbar.inc' %]
+[% UNLESS close_form OR closed OR duplicate_form %]
+  [% INCLUDE 'budgets-admin-toolbar.inc' %]
+[% END %]
 
 [% IF ( duplicate_form ) %]
 <h3>Duplicate budget</h3>
-<form action="/cgi-bin/koha/admin/aqbudgetperiods.pl" name="f" method="post">
+<form action="/cgi-bin/koha/admin/aqbudgetperiods.pl" id="add_modify_budget" name="f" method="post">
     <fieldset class="rows">
     <input type="hidden" name="op" value="duplicate_budget" />
-    <input type="hidden" name="budget_period_id" value="[% budget_period_id %]" />
+    <input type="hidden" name="budget_period_id" value="[% budget_period_id | html %]" />
 
     <ol>
 
     <li>
-    <label class="required" for="from">Start date</label>
+    <label class="required" for="from">Start date</label>
     <input type="text" size="10" id="from" name="budget_period_startdate" value="[% budget_period_startdate | $KohaDates %]" class="datepickerfrom" />
-                               <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
+        <span class="required">Required</span>
+        <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
     </li>
     <li>
 
-    <label class="required" for="to">End date</label>
+    <label class="required" for="to">End date</label>
     <input type="text" size="10" id="to" name="budget_period_enddate" value="[% budget_period_enddate | $KohaDates %]" class="datepickerto" />
-                               <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
+        <span class="required">Required</span>
+        <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
+    </li>
+
+    <li>
+    <label class="required" for="budget_period_description">Description</label>
+    <input type="text" id="budget_period_description" name="budget_period_description" value="[% budgetperiod.budget_period_description | html %]" />
+        <span class="required">Required</span>
+    </li>
+
+    <li>
+      <label for="amount_change_percentage">Change amounts by</label>
+      <input type="text" id="amount_change_percentage" name="amount_change_percentage" /> %
+      <div class="hint">(can be positive or negative)</div>
+    </li>
+
+    <li>
+      <label for="amount_change_round_increment">If amounts changed, round to a multiple of</label>
+      <input type="text" id="amount_change_round_increment" name="amount_change_round_increment" />
+      <div class="hint">(amounts will be rounded down)</div>
+    </li>
+
+    <li>
+      <label for="mark_as_inactive">Mark the original budget as inactive</label>
+      <input type="checkbox" id="mark_as_inactive" name="mark_original_budget_as_inactive" />
+    </li>
+
+    <li>
+      <label for="reset_all_budgets">Set all funds to zero</label>
+      <input type="checkbox" id="reset_all_budgets" name="reset_all_budgets" />
     </li>
 
     </ol>
     </fieldset>
 
     <fieldset class="action">
-        <input type="button" value="Save Changes"  onclick="CheckDuplicateForm(this.form)" /> <a class="cancel" href="/cgi-bin/koha/admin/aqbudgets.pl?budget_period_id=[% budget_period_id %]">Cancel</a>
+        <input type="submit" value="Save" />
+        <a class="cancel" href="/cgi-bin/koha/admin/aqbudgets.pl?budget_period_id=[% budget_period_id | html %]">Cancel</a>
     </fieldset>
 
 </form>
     <!--  add or modify a budget period   -->
 
     [% IF ( budget_period_id ) %]
-        <h3>Modify budget</h3>
+        <h3>Modify budget <i>[% budget_period_description | html %]</i></h3>
     [% ELSE %]
         <h3>Add budget</h3>
        [% END %]
-<form action="/cgi-bin/koha/admin/aqbudgetperiods.pl" name="f" method="post">
+<form action="/cgi-bin/koha/admin/aqbudgetperiods.pl" id="add_modify_budget" name="f" method="post">
     <fieldset class="rows">
     <!-- ################################################################################# -->
     <!-- display information about the budget period that must be added or modified -->
     <!-- ################################################################################# -->
     <input type="hidden" name="op" value="add_validate" />
-    <input type="hidden" name="budget_period_id" value="[% budget_period_id %]" />
+    <input type="hidden" name="budget_period_id" value="[% budget_period_id | html %]" />
     <ol>
     <li>
-    <label class="required" for="from">Start date</label>
+    <label class="required" for="from">Start date</label>
     <input type="text" size="10" id="from" name="budget_period_startdate" value="[% budget_period_startdate | $KohaDates %]" class="datepickerfrom" />
-                               <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
+        <span class="required">Required</span>
+        <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
     </li>
     <li>
 
-    <label class="required" for="to">End date</label>
+    <label class="required" for="to">End date</label>
     <input type="text" size="10" id="to" name="budget_period_enddate" value="[% budget_period_enddate | $KohaDates %]" class="datepickerto" />
-                               <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
+        <span class="required">Required</span>
+        <div class="hint">[% INCLUDE 'date-format.inc' %]</div>
     </li>
 
     <li>
         <!-- DESCRIPTION -->
         <!-- ############################## -->
-        <label class="required" for="budget_period_description">Description</label>
+        <label class="required" for="budget_period_description">Description</label>
         <input type="text" id="budget_period_description" name="budget_period_description"
-        size="48" maxlength="80" value="[% budget_period_description %]" />
+        size="48" maxlength="80" value="[% budget_period_description | html %]" />
+            <span class="required">Required</span>
     </li>
 
     <li>
         <!-- TOTAL -->
         <!-- ############################## -->
-        <label for="budget_period_total">Total amount</label>
+        <label for="budget_period_total">Total amount</label>
         <input type="text" id="budget_period_total" name="budget_period_total"
-        size="10" maxlength="80" value="[% budget_period_total %]" />
+        size="10" maxlength="80" value="[% budget_period_total | $Price on_editing => 1 | html %]" />
     </li>
 
     <li>
         <!-- ACTIVE -->
         <!-- ############################## -->
-        <label for="budget_period_active">Make budget active</label>
+        <label for="budget_period_active">Make budget active</label>
         [% IF ( budget_period_active ) %]<input type="checkbox" checked="checked" id="budget_period_active" name="budget_period_active" value="1" />[% ELSE %]  <input type="checkbox" id="budget_period_active" name="budget_period_active" value="1"/> [% END %]
     </li>
 
     <li>
         <!-- LOCK  -->
         <!-- ############################## -->
-        <label for="budget_period_locked">Lock budget</label>
+        <label for="budget_period_locked">Lock budget</label>
         [% IF ( budget_period_locked ) %]<input type="checkbox" checked="checked" id="budget_period_locked" name="budget_period_locked" value="1" />[% ELSE %]  <input type="checkbox" id="budget_period_locked" name="budget_period_locked" value="1"/> [% END %]
     </li>
     </ol>
     <fieldset class="action">
         <!-- "save changes" button -->
         <!-- ###################################### -->
-        <input type="button" value="Save changes"  onclick="Check(this.form)"    />
-        <!--             <input type="submit" value="Save Changes"  />  -->
-        [% IF ( budget_period_id ) %]<a href="/cgi-bin/koha/admin/aqbudgets.pl?budget_period_id=[% budget_period_id %]" class="cancel">Cancel</a>[% END %]
+        <input type="submit" value="Save" />
+        [% IF ( budget_period_id ) %]
+            <a href="/cgi-bin/koha/admin/aqbudgets.pl?budget_period_id=[% budget_period_id | uri %]" class="cancel">Cancel</a>
+        [% ELSE %]
+            <a href="/cgi-bin/koha/admin/aqbudgetperiods.pl" class="cancel">Cancel</a>
+        [% END %]
     </fieldset>
 
 </form>
     [% IF ( total ) %]
         <div class="dialog message">
         <h3>Cannot delete budget</h3>
-        <p><strong>This record is used [% total %] times</strong>
+        <p><strong>This record is used [% total | html %] times</strong>
         . Deletion is not possible.</p>
+    [% ELSIF ( funds_exist ) %]
+        <div class="dialog message">
+        <h3>Cannot delete budget</h3>
+        <p>This budget has funds attached. You must delete all attached funds before you can delete this budget.</p>
     [% ELSE %]
         <div class="dialog alert">
-        <h3>Delete budget '[% budget_period_description %]'?</h3>
-    [% END %]
+        <h3>Delete budget '[% budget_period_description | html %]'?</h3>
 
     <!-- ############################################################# -->
     <!-- "delete" and "cancel" buttons    -->
     <!-- ############################################################# -->
 
-    <form action="[% script_name %]" method="post">
+    <form action="[% script_name | html %]" method="post">
         <input type="hidden" name="op" value="delete_confirmed" />
-        <input type="hidden" name="budget_period_id" value="[% budget_period_id %]" />
-        <input type="submit" class="approve" value="Delete" />
+        <input type="hidden" name="budget_period_id" value="[% budget_period_id | html %]" />
+        <button type="submit" class="approve"><i class="fa fa-fw fa-check"></i> Yes, delete</button>
     </form>
-
-    <form action="[% script_name %]" method="post">
-        <input type="submit" class="deny" value="Cancel" />
+    <form action="[% script_name | html %]" method="post">
+        <button type="submit" class="deny"><i class="fa fa-fw fa-remove"></i> No, do not delete</button>
     </form>
+    [% END %]
 
     </div>
 [% END %]
+
+[% IF close_form %]
+  [% IF budget_periods.size == 0 %]
+    You cannot move funds of this budget, there is no active budget.
+    Please create a new active budget and retry.
+    <a href="/cgi-bin/koha/admin/aqbudgetperiods.pl">Back</a>
+  [% ELSIF number_of_unreceived_orders == 0 %]
+    There are no unreceived orders for this budget.
+    <a href="/cgi-bin/koha/admin/aqbudgetperiods.pl">Back</a>
+  [% ELSE %]
+    <h3>The unreceived orders from the following funds will be moved</h3>
+      Fund list of budget <a href="/cgi-bin/koha/admin/aqbudgets.pl?budget_period_id=[% budget_period_id | uri %]">[% budget_period_description | html %]</a>:
+    <table id="budgeth">
+      <thead>
+        <tr>
+            <th>Fund id</th>
+            <th>Fund code</th>
+            <th>Fund name</th>
+            <th>Unreceived orders</th>
+        </tr>
+      </thead>
+      <tbody>
+        [% FOREACH budget IN budgets_to_move %]
+          <tr>
+            <td>[% budget.budget_id | html %]</td>
+            <td>[% budget.budget_code_indent | html %]</td>
+            <td>[% budget.budget_name | html %]</td>
+            <td>[% budget.unreceived_orders.size | html %]</td>
+          </tr>
+        [% END %]
+      </tbody>
+    </table>
+    <form action="/cgi-bin/koha/admin/aqbudgetperiods.pl" name="f" method="post" id="move_form">
+      <fieldset class="rows">
+        <ol>
+          <li>
+            <label class="required" for="to_budget_period_id">Select a budget</label>
+            <select name="to_budget_period_id" id="to_budget_period_id" required="required">
+              <option value=""></option>
+              [% FOR budget_period IN budget_periods %]
+                <option value="[% budget_period.budget_period_id | html %]">[% budget_period.budget_period_description | html %]</option>
+              [% END %]
+            </select>
+          </li>
+          <li>
+          <label for="move_remaining_unspent">Move remaining unspent funds</label>
+            <input type="checkbox" name="move_remaining_unspent" id="move_remaining_unspent" />
+          </li>
+        </ol>
+      </fieldset>
+      <fieldset class="action">
+          <input type="hidden" name="op" value="close_confirmed" />
+          <input type="hidden" name="budget_period_id" value="[% budget_period_id | html %]" />
+          <input type="submit" value="Move unreceived orders" />
+          <a class="cancel" href="/cgi-bin/koha/admin/aqbudgetperiods.pl">Cancel</a>
+      </fieldset>
+    </form>
+  [% END %]
+[% ELSIF closed %]
+  <h3>Report after moving unreceived orders from budget [% from_budget_period.budget_period_description | html %] ([% from_budget_period.budget_period_startdate | $KohaDates %] - [% from_budget_period.budget_period_enddate | $KohaDates %]) to [% to_budget_period.budget_period_description | html %] ([% to_budget_period.budget_period_startdate | $KohaDates %] - [% to_budget_period.budget_period_enddate | $KohaDates%])</h3>
+
+  <table id="closed_report">
+    <thead>
+      <tr>
+        <td>Budget id</td>
+        <td>Basket</td>
+        <td>Ordernumber</td>
+        <td>Details</td>
+      </tr>
+    </thead>
+    <tbody>
+      [% FOR r IN report %]
+          [% IF r.moved %]
+            [% IF r.orders_moved.size > 0 %]
+              [% FOR order IN r.orders_moved %]
+                <tr>
+                  <td>[% r.budget.budget_name | html %] (id=[% r.budget.budget_id | html %]) Amount=[% r.budget.budget_amount | $Price %][% IF r.unspent_moved %] ([% r.unspent_moved | $Price %] remaining has been moved)[% END %]</td>
+                  <td>[% order.basketname | html %]</td>
+                  <td>[% order.ordernumber | html %]</td>
+                  <td>Moved!</td>
+                </tr>
+              [% END %]
+            [% ELSE %]
+              <tr>
+                <td>[% r.budget.budget_name | html %] (id=[% r.budget.budget_id | html %])</td>
+                <td></td>
+                <td></td>
+                <td>There were no unreceived orders for this fund.</td>
+              </tr>
+            [% END %]
+          [% ELSE %]
+            [% IF r.error == 'budget_code_not_exists' %]
+              <tr>
+                <td>[% r.budget.budget_id | html %] [% r.budget.budget_amount | $Price %][% IF r.unspent_moved %] ([% r.unspent_moved | $Price %] remaining has been moved)[% END %]</td>
+                <td></td>
+                <td></td>
+                <td>This fund code does not exist in the destination budget.</td>
+              </tr>
+            [% END %]
+          [% END %]
+        </tr>
+      [% END %]
+    </tbody>
+  </table>
+  <a class="cancel" href="/cgi-bin/koha/admin/aqbudgetperiods.pl">Back</a>
+[% END %]
+
 <!--  DEFAULT  display budget periods list -->
 [% IF ( else ) %]
   <h2>Budgets administration</h2>
 
+    [% IF ( failed_delete_funds_exist ) %]
+        <div class="dialog message">Failed to delete budget because funds exist.</div>
+    [% END %]
+
   [% INCLUDE 'budgets-active-currency.inc' %]
 
   <div id="budgetsTabs" class="toptabs">
     <ul>
-        <li><a href="#active">Active Budgets</a></li>
-        <li><a href="#inactive">Inactive Budgets</a></li>
+        <li><a href="#active">Active budgets</a></li>
+        <li><a href="#inactive">Inactive budgets</a></li>
     </ul>
 
     <div id="active">
           <thead>
             <tr>
               <th>Budget name</th>
-              <th>Start date</th>
-              <th>End date</th>
+              <th class="title-string">Start date</th>
+              <th class="title-string">End date</th>
               <th>Locked</th>
               <th>Total</th>
               <th>Actions</th>
           <tbody>
               [% FOREACH period_active IN period_active_loop %]
                 <tr>
-                <td><a href="/cgi-bin/koha/admin/aqbudgets.pl?budget_period_id=[% period_active.budget_period_id %]" title="View funds for [% period_active.budget_period_description %]">[% period_active.budget_period_description %]</a></td>
-                <td>[% period_active.budget_period_startdate | $KohaDates %]</td>
-                <td>[% period_active.budget_period_enddate | $KohaDates %]</td>
+                <td><a href="/cgi-bin/koha/admin/aqbudgets.pl?budget_period_id=[% period_active.budget_period_id | uri %]" title="View funds for [% period_active.budget_period_description | html %]">[% period_active.budget_period_description | html %]</a></td>
+                <td><span title="[% period_active.budget_period_startdate | html %]">[% period_active.budget_period_startdate | $KohaDates %]</span></td>
+                <td><span title="[% period_active.budget_period_enddate | html %]">[% period_active.budget_period_enddate | $KohaDates %]</span></td>
                 <td>
                   [% IF ( period_active.budget_period_locked ) %]
                     <span style="color:green;">Locked</span>&nbsp;
                   [% END %]
                 </td>
-                <td align='right'>[% period_active.budget_period_total %]</td>
+                <td class="data">[% period_active.budget_period_total | $Price %]</td>
                 <td>
-                  <a href="[% script_name %]?op=add_form&amp;budget_period_id=[% period_active.budget_period_id |html %]">Edit</a>
-                  <a href="[% script_name %]?op=delete_confirm&amp;budget_period_id=[% period_active.budget_period_id %]">Delete</a>
-                  <a href="/cgi-bin/koha/admin/aqbudgets.pl?op=add_form&amp;budget_period_id=[% period_active.budget_period_id %]">Add Fund</a>
+                    [% PROCESS action_menu block_budget=period_active %]
                 </td>
                 </tr>
               [% END %]
       [% ELSE %]
         No active budgets
       [% END %]
-      <div class="paginationBar">[% active_pagination_bar %]</div>
     </div>
     <div id="inactive">
       [% IF ( period_inactive_loop ) %]
           <thead>
               <tr>
                   <th>Budget name</th>
-                  <th>Start date</th>
-                  <th>End date</th>
+                  <th class="title-string">Start date</th>
+                  <th class="title-string">End date</th>
                   <th>Locked</th>
                   <th>Total</th>
                   <th>Actions</th>
           </thead>
           <tbody>
               [% FOREACH period_loo IN period_inactive_loop %]
-                  [% IF ( loop.odd ) %]
-                      <tr>
-                  [% ELSE %]
-                      <tr class="highlight">
-                  [% END %]
-                  <td><a href="/cgi-bin/koha/admin/aqbudgets.pl?budget_period_id=[% period_loo.budget_period_id %]" title="View funds for [% period_loo.budget_period_description %]">[% period_loo.budget_period_description %]</a></td>
-                  <td>[% period_loo.budget_period_startdate | $KohaDates %]</td>
-                  <td>[% period_loo.budget_period_enddate | $KohaDates %]</td>
+                  <tr>
+                  <td><a href="/cgi-bin/koha/admin/aqbudgets.pl?budget_period_id=[% period_loo.budget_period_id | uri %]" title="View funds for [% period_loo.budget_period_description | html %]">[% period_loo.budget_period_description | html %]</a></td>
+                  <td><span title="[% period_loo.budget_period_startdate | html %]">[% period_loo.budget_period_startdate | $KohaDates %]</span></td>
+                  <td><span title="[% period_loo.budget_period_enddate | html %]">[% period_loo.budget_period_enddate | $KohaDates %]</span></td>
                   <td> [% IF ( period_loo.budget_period_locked ) %]<span style="color:green;">Locked</span>&nbsp;[% ELSE %][% END %] </td>
-                  <td align='right'>[% period_loo.budget_period_total %]</td>
+                  <td class="data">[% period_loo.budget_period_total | $Price %]</td>
                   <td>
-                      <a href="[% period_loo.script_name %]?op=add_form&amp;budget_period_id=[% period_loo.budget_period_id |html %]">Edit</a>
-                      <a href="[% period_loo.script_name %]?op=delete_confirm&amp;budget_period_id=[% period_loo.budget_period_id %]">Delete</a>
-                  <a href="/cgi-bin/koha/admin/aqbudgets.pl?op=add_form&amp;budget_period_id=[% period_loo.budget_period_id %]">Add fund</a>
+                        [% PROCESS action_menu block_budget=period_loo %]
                   </td>
                   </tr>
               [% END %]
       [% ELSE %]
         No inactive budgets
       [% END %]
-      <div class="pages">[% inactive_pagination_bar %]</div>
     </div>
   </div>
 [% END %]
 
-
-</div>
-</div>
-<div class="yui-b">
-[% INCLUDE 'acquisitions-menu.inc' %]
-</div>
-</div>
-
+            </main>
+        </div> <!-- /.col-sm-10.col-sm-push-2 -->
+
+        <div class="col-sm-2 col-sm-pull-10">
+            <aside>
+                [% INCLUDE 'acquisitions-menu.inc' %]
+            </aside>
+        </div> <!-- /.col-sm-2.col-sm-pull-10 -->
+     </div> <!-- /.row -->
+
+[% MACRO jsinclude BLOCK %]
+    [% INCLUDE 'calendar.inc' %]
+    [% INCLUDE 'datatables.inc' %]
+    [% IF close_form %]
+        [% Asset.js("lib/jquery/plugins/treetable/jquery.treetable.js") | $raw %]
+    [% END %]
+    [% Asset.js("js/acq.js") | $raw %]
+    <script>
+        $(document).ready(function() {
+            var tabs = $('#budgetsTabs').tabs();
+            [% IF ( tab ) %]
+                tabs.tabs("option", "active", [% tab | html %]);
+            [% END %]
+            $("#activeperiodst,#inactiveperiodst").dataTable($.extend(true, {}, dataTablesDefaults, {
+                "aoColumnDefs": [
+                    { "aTargets": [ -1 ], "bSortable": false, "bSearchable": false },
+                    { "sType": "title-string", "aTargets" : [ "title-string" ] }
+                ],
+                "sPaginationType": "four_button",
+                'bAutoWidth': false
+            } ) );
+
+            [% IF close_form %]
+              $("#budgeth").dataTable($.extend(true, {}, dataTablesDefaults, {
+                sDom: "t"
+              }));
+              $("#move_form").submit(function(){
+                var budget_from = "[% budget_period_description | html %]";
+                var budget_to = $("#to_budget_period_id").find("option:selected").html();
+                var alert_message = _("You have chosen to move all unreceived orders from '%s' to '%s'.").format(budget_from, budget_to);
+                alert_message += "\n" + _("This action cannot be reversed. Do you wish to continue?");
+                return confirm ( alert_message );
+              });
+            [% END %]
+            [% IF closed %]
+              var oTable = $("#closed_report").dataTable($.extend(true, {}, dataTablesDefaults, {
+                // The following is a c/p from aqbudgets.tt and is a candidate for refactoring.
+                "fnDrawCallback": function ( oSettings ) {
+                    if ( oSettings.aiDisplay.length == 0 )
+                    {
+                        return;
+                    }
+
+                    var nTrs = $('#closed_report tbody tr');
+                    var iColspan = nTrs[1].getElementsByTagName('td').length;
+                    var sLastGroup = "";
+                    for ( var i=0 ; i<nTrs.length ; i++ )
+                    {
+                        var iDisplayIndex = oSettings._iDisplayStart + i;
+                        var sGroup = oSettings.aoData[ oSettings.aiDisplay[iDisplayIndex] ]._aData[0];
+                        if ( sGroup != sLastGroup )
+                        {
+                            var nGroup = document.createElement( 'tr' );
+                            var nCell = document.createElement( 'td' );
+                            nCell.colSpan = iColspan;
+                            nCell.className = "group";
+                            nCell.innerHTML = sGroup;
+                            nGroup.appendChild( nCell );
+                            nTrs[i].parentNode.insertBefore( nGroup, nTrs[i] );
+                            sLastGroup = sGroup;
+                        }
+                    }
+                },
+                "aoColumnDefs": [
+                    { "bVisible": false, "aTargets": [ 0, 1 ] },
+                    { "bSortable": false, "aTargets": ["_all"] }
+                ],
+                'bSort': true,
+                'aaSortingFixed': [[ 1, 'asc' ]],
+                "bAutoWidth": false,
+                "sPaginationType": "full_numbers"
+              }));
+            [% END %]
+            $("#add_modify_budget").validate({
+                rules: {
+                    budget_period_startdate: "required",
+                    budget_period_enddate: {
+                        required: true,
+                        date_on_or_after: "#from"
+                    },
+                    budget_period_description: "required",
+                    budget_period_total: {
+                        number: true
+                    }
+                },
+                messages: {
+                    budget_period_enddate: {
+                        date_on_or_after: _("Budget end date must be on or after budget start date")
+                    }
+                }
+            });
+        });
+    </script>
+[% END %]
 [% INCLUDE 'intranet-bottom.inc' %]