[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Koha-cvs] koha koha-tmpl/intranet-tmpl/prog/en/tools/clea... [rel_3_0]
From: |
Antoine Farnault |
Subject: |
[Koha-cvs] koha koha-tmpl/intranet-tmpl/prog/en/tools/clea... [rel_3_0] |
Date: |
Fri, 17 Nov 2006 15:55:16 +0000 |
CVSROOT: /sources/koha
Module name: koha
Branch: rel_3_0
Changes by: Antoine Farnault <toins> 06/11/17 15:55:16
Modified files:
koha-tmpl/intranet-tmpl/prog/en/tools: cleanborrowers.tmpl
tools : cleanborrowers.pl
Log message:
Some minor fix ;-)
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/prog/en/tools/cleanborrowers.tmpl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.1.2.1&r2=1.1.2.2
http://cvs.savannah.gnu.org/viewcvs/koha/tools/cleanborrowers.pl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.1.2.2&r2=1.1.2.3
Patches:
Index: koha-tmpl/intranet-tmpl/prog/en/tools/cleanborrowers.tmpl
===================================================================
RCS file:
/sources/koha/koha/koha-tmpl/intranet-tmpl/prog/en/tools/Attic/cleanborrowers.tmpl,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -b -r1.1.2.1 -r1.1.2.2
--- koha-tmpl/intranet-tmpl/prog/en/tools/cleanborrowers.tmpl 16 Nov 2006
10:10:46 -0000 1.1.2.1
+++ koha-tmpl/intranet-tmpl/prog/en/tools/cleanborrowers.tmpl 17 Nov 2006
15:55:16 -0000 1.1.2.2
@@ -1,4 +1,4 @@
-<!-- TMPL_INCLUDE NAME="doc-head-open.inc" -->Koha -- CLEAN BORROWERS
+<!-- TMPL_INCLUDE NAME="doc-head-open.inc" -->Koha -- Clean borrowers
<!-- TMPL_INCLUDE NAME="doc-head-close.inc" -->
<!-- Additions to enable Calendar system -->
@@ -12,33 +12,18 @@
<!-- TMPL_INCLUDE NAME="menus.inc" -->
<!-- TMPL_INCLUDE NAME="menu-tools.inc" -->
+<h1>Delete some old borrowers/Anonymize some issue history</h1>
-<h1>Delete some old infos</h1>
-
-<fieldset>
-<legend>Search a borrower</legend>
- <div id="quicksearch">
- <form name="f" action="/cgi-bin/koha/tools/cleanborrowers.pl"
method="POST" onsubmit="return checkForm(this);">
- <label for="quick-search">Search a member: </label>
- <input id="quick-search" name="query" type="text"/>
- <input type="hidden" name="do_search" value="1" />
- <label for="orderby">order by: </label>
- <select id="orderby" name="orderby">
- <option value="surname" selected=selected>Surname</option>
- <option value="firstname" >Firstname</option>
- <option value="cardnumber" >Card number</option>
- <option value="categorycode" >Category</option>
- <option value="dateexpiry" >Date expiry</option>
- <option value="dateenrolled" >Date enrolled</option>
- </select>
-
- <br />
- <em>Leave the search box blank to search among all borrowers</em>
- <br /><br />
- <input type="radio" id="old-issue" name="radio" value="old-issue" />
- <label for="old-issue">who has a reading history older than: </label>
- <input size="10" id="to" name="filterdate1" value="<!-- TMPL_VAR
NAME="filterdate1"-->" type="text" />
- <img src="<!-- TMPL_VAR Name="themelang"
-->/includes/calendar/cal.gif" id="openCalendarTo" style="cursor: pointer;"
valign="top" border="0" hspace="0" vspace="0">
+<!-- TMPL_IF NAME="step1" -->
+<!-- step 1 START -->
+<div id="step1">
+ <form name="f1" onsubmit="return checkForm(this);"
action="/cgi-bin/koha/tools/cleanborrowers.pl" method="POST">
+ <fieldset>
+ <legend>What do you want to do ?</legend>
+ <input id="checkborrower" type="checkbox" name="checkbox"
value="borrower" checked="true" />
+ <label for="checkborrower">Delete borrower who has not borrowed
since:</label>
+ <input size="10" id="date1" name="filterdate1" value="<!-- TMPL_VAR
NAME="filterdate1"-->" type="text" />
+ <img src="<!-- TMPL_VAR Name="themelang"
-->/includes/calendar/cal.gif" id="openCalendarTo" valign="top" border="0"
hspace="0" vspace="0" />
<script type="text/javascript">
Calendar.setup(
{
@@ -48,12 +33,12 @@
}
);
</script>
- <br />
- <input type="radio" id="old-borrower" name="radio" checked="true"
value="old-borrower"/>
- <label for="old-borrower">who has not borrowed since: </label>
- <input size="10" id="to" name="filterdate2" value="<!-- TMPL_VAR
NAME="filterdate2"-->" type="text" />
- <img src="<!-- TMPL_VAR Name="themelang"
-->/includes/calendar/cal.gif" id="openCalendarTo" style="cursor: pointer;"
valign="top" border="0" hspace="0" vspace="0">
+ <br />
+ <input id="checkissue" type="checkbox" name="checkbox" value="issue"
checked="true" />
+ <label for="checkissue">Anonymize issue history older than</label>
+ <input size="10" id="date2" name="filterdate2" value="<!-- TMPL_VAR
NAME="filterdate2"-->" type="text" />
+ <img src="<!-- TMPL_VAR Name="themelang"
-->/includes/calendar/cal.gif" id="openCalendarTo" valign="top" border="0"
hspace="0" vspace="0" />
<script type="text/javascript">
Calendar.setup(
{
@@ -63,187 +48,107 @@
}
);
</script>
- <input type="submit" value="search" style="float:right;"/>
- </form>
-</fieldset>
-
-<!-- TMPL_IF NAME="total" -->
- <div id="results" class="searchresults">
- <br />
- <b><!-- TMPL_VAR NAME="total" --> members found</b> when searching
"<!-- TMPL_VAR NAME="query" -->" order by <!-- TMPL_VAR
NAME="orderby" --><br />
<br />
- <div id="action">
- <form name="action-form"
action="/cgi-bin/koha/tools/cleanborrowers.pl" method="POST"
- <!-- TMPL_IF NAME="checkborrower"--> onsubmit="return
confirmDelete();"<!-- /TMPL_IF-->>
- For borrowers checked : <br />
- <!-- TMPL_IF NAME="checkborrower"-->
- <label for="submit"><b>Delete it : </b></label>
- <input type="hidden" name="do_delete" value="true"/>
+ <input type="submit" value=" OK " style="float:right;" />
- <!-- /TMPL_IF -->
- <!-- TMPL_IF NAME="checkissue" -->
- <label for="submit"><b>Anonymise issue history older than <!--
TMPL_VAR NAME="filterdate1" --> :</b></label>
+ <!-- hidden here -->
+ <input type="hidden" name="step2" value="1" />
+ </form>
+</div>
+<!-- step 1 END -->
+<!-- /TMPL_IF -->
- <input type="hidden" value="true" name="do_anonym" />
- <input type="hidden" name="filterdate1" value="<!-- TMPL_VAR
NAME="filterdate1"-->" />
- <!-- /TMPL_IF -->
- <input type="hidden" name="filterdate1" value="<!--TMPL_VAR
NAME="filterdate1"-->" />
- <input type="hidden" name="filterdate2" value="<!--TMPL_VAR
NAME="filterdate2"-->" />
- <input type="submit" value=" OK " />
- </div>
+<!-- TMPL_IF NAME="step2" -->
+<!-- STEP 2 START -->
+<div id="step2">
+ <fieldset>
+ <legend>Warnings</legend>
+ <b>
+ <!-- TMPL_IF NAME="totalToDelete" --><!-- TMPL_VAR
NAME="totalToDelete" --> borrowers will be deleted.<!-- /TMPL_IF -->
+ <!-- TMPL_IF NAME="totalToAnonymize" --><!-- TMPL_VAR
NAME="totalToAnonymize" --> issue history will be anonymized.<!-- /TMPL_IF -->
+ </b>
+ <br /><br />
+ <form name="f2" action="/cgi-bin/koha/tools/cleanborrowers.pl"
method="POST" onsubmit="return checkForm2(this);">
+ <!-- TMPL_IF NAME="totalToDelete" -->
+ What do you want to do for deleted members ?<br />
+ <label for="delete">Delete completly theses members</label>
+ <input id="delete" type="radio" name="radio" value="delete"
checked="true" />
+
+ <label for="trash">Move to trash theses members</label>
+ <input id="trash" type="radio" name="radio" value="trash" />
+ <input type="hidden" name="do_delete" value="<!-- TMPL_VAR
NAME="totalToDelete" -->" />
<br />
- <a href="JavaScript:checkAll(true);">Check All</a> <a
href="JavaScript:checkAll(false);">Uncheck All</a>
- <table name="result-table">
- <tr>
- <th>
-
- </th>
- <th>
- cardnumber
- </th>
- <th>
- Firstname
- </th>
- <th>
- Surname
- </th>
- <th>
- Category
- </th>
- <th>
- Additional infos
- </th>
- </tr>
- <!-- TMPL_LOOP NAME="membersloop" -->
- <tr name="line" onclick="JavaScript:SelectThisLine(<!-- TMPL_VAR
NAME="borrowernumber" -->);">
- <td>
- <input name="checkbox<!-- TMPL_VAR NAME="borrowernumber" -->"
type="checkbox" value="<!-- TMPL_VAR NAME="borrowernumber" -->" id="<!--
TMPL_VAR NAME="borrowernumber"-->" />
- </td>
- <td>
- <!-- TMPL_VAR NAME="cardnumber" -->
- </td>
- <td>
- <!-- TMPL_VAR NAME="firstname" -->
- </td>
- <td>
- <!-- TMPL_VAR NAME="surname" -->
- </td>
- <td>
- <!-- TMPL_VAR NAME="categorycode" -->
- </td>
- <td>
- <!-- TMPL_IF NAME="neverborrowed" -->
- * has never borrowed.<br />
<!-- /TMPL_IF -->
- <!-- TMPL_IF NAME="notborrowedsince" -->
- * has not borrowed since <!-- TMPL_VAR NAME="filterdate2"
--><br />
- <small>The last was on <!-- TMPL_VAR NAME="lastissued"
--></small><br />
- <!-- /TMPL_IF -->
- <!-- TMPL_IF NAME="oldreadinghistory" -->
- * has borrowed <!-- TMPL_VAR NAME="oldreadinghistory" -->
times before <!-- TMPL_VAR NAME="filterdate1" -->
- <!-- /TMPL_IF -->
- </td>
- </tr>
- <!-- /TMPL_LOOP -->
- </table>
- </form>
- </div> <!-- results -->
-
-<!-- TMPL_ELSE --> <!-- if total -->
- <!-- TMPL_IF NAME="query" -->
- <b>No result found.</b>
+ <!--TMPL_IF NAME="totalToAnonymize"-->
+ <br />
+ Are you sure you want to anonymize history for <!-- TMPL_VAR
NAME="totalToAnonymize"--> borrowers ?
+ <input type="hidden" name="do_anonym" value="<!-- TMPL_VAR
NAME="totalToAnonymize" -->" />
<!-- /TMPL_IF -->
-<!-- /TMPL_IF --> <!-- if total -->
+ <br />
+ <input type="submit" value=" OK " style="float:right;"/>
-<!-- TMPL_IF NAME="deleted" -->
- <br /><b>All checked members has been deleted.</b>
+ <input type="hidden" name="step3" value="1" />
+ <input type="hidden" name="filterdate1" value="<!-- TMPL_VAR
NAME="filterdate1" -->" />
+ <input type="hidden" name="filterdate2" value="<!-- TMPL_VAR
NAME="filterdate2" -->" />
+ </form>
+ </fieldset>
+</div>
+<!-- STEP 2 END -->
<!-- /TMPL_IF -->
-<!-- TMPL_IF NAME="anonym" -->
- <!-- TMPL_IF NAME="error" -->
- Error : <span class="problem"><!-- TMPL_VAR NAME="error"--></span>
+<!-- TMPL_IF NAME="step3" -->
+<!-- Step 3 START -->
+
+ <div id="step3">
+ <b>
+ <!-- TMPL_IF NAME="do_delete" -->
+ <!-- TMPL_IF NAME="trash" -->
+ <!-- TMPL_VAR NAME="TotalDel" --> borrrowers has been
successfuly moved to trash.
<!-- TMPL_ELSE -->
- <br /><b>Issue history before than <!--TMPL_VAR NAME="filterdate1"--> for
checked members has been anonymised.</b>
- <!-- TMPL_IF -->
+ <!-- TMPL_VAR NAME="TotalDel" --> borrrowers has been
successfuly deleted.
+ <!-- /TMPL_IF -->
+ <!-- /TMPL_IF -->
+ <!-- TMPL_IF NAME="do_anonym" -->
+ <!-- TMPL_VAR NAME="TotalAno" --> issue's history has been
anonimized.
+ <!-- /TMPL_IF -->
+ </b>
+ </div>
+ <a href="/cgi-bin/koha/tools/tools-home.pl">Go back to tools home.</a>
+<!-- Step 3 END -->
<!-- /TMPL_IF -->
<script type="text/javascript" language="JavaScript">
// <![CDATA[
/**
- * SelectThisLine.
- * This function check the box on the current line and apply a specific
style.
- */
- function SelectThisLine(num){
- var checkbox = document.getElementById(num);
- var line = checkbox.parentNode.parentNode;
- var classLine = line.getAttribute("class");
- if(classLine==="lineSelected"){
- line.removeAttribute("class");
- checkbox.checked=false;
- }
- else{
- line.setAttribute("class","lineSelected");
- checkbox.checked=true;
- }
- }
- /**
- * checkAll(bool)
- * check all the checkbox in the result if bool is true.
- * Uncheck all if false.
- */
- function checkAll(bool){
- var lines = document.getElementsByName('line');
- for(var i=0,len=lines.length;i<len;i++){
- var line = lines[i];
- if(bool){
- line.setAttribute("class","lineSelected");
- }
- else{
- line.removeAttribute("class");
- }
- var checkbox = line.firstChild.nextSibling.firstChild.nextSibling;
- checkbox.checked = bool;
- }
- }
- /**
* checkForm(form)
- * this function checks if the form to submit is correctly filled.
+ * This function check the form is correctly filled.
*/
- function checkForm(form){
- if(form.radio[0].checked){
- if(!form.filterdate1.value){
- alert("you should enter a date to filter on.");
- form.filterdate1.focus;
- return false; //don't submit.
+ function checkForm(form) {
+ if((form.checkbox[0].checked)){
+ if(!(form.date1.value)){
+ alert("please enter a date !");
+ document.form.date1.focus();
+ return false;
}
}
- if(form.radio[1].checked){
- if(!form.filterdate2.value){
- alert("you should enter a date to filter on");
- form.filterdate2.focus;
- return false; //don't submit.
+ if((form.checkbox[1].checked)){
+ if(!(form.date2.value)){
+ alert("please enter a date !");
+ document.form.date2.focus();
+ return false;
}
}
return true;
}
+
/**
- * confirmDelete
- * this function display a window.confirm to be sure the user know what
it does.
+ * checkForm2(form)
+ * This function check the form2 is correctly filled.
*/
- function confirmDelete() {
- try{
- document.getElementById('submit-delete');
- }
- catch(e){
- return;
- }
- if (window.confirm("Are you sure you want to delete all the checked
member ?")){
+ function checkForm2(form) {
return true;
}
- return false;
- }
// ]]>
</script>
<!-- TMPL_INCLUDE NAME="intranet-bottom.inc" -->
-
Index: tools/cleanborrowers.pl
===================================================================
RCS file: /sources/koha/koha/tools/Attic/cleanborrowers.pl,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -b -r1.1.2.2 -r1.1.2.3
--- tools/cleanborrowers.pl 16 Nov 2006 14:39:09 -0000 1.1.2.2
+++ tools/cleanborrowers.pl 17 Nov 2006 15:55:16 -0000 1.1.2.3
@@ -17,7 +17,7 @@
#
# Written by Antoine Farnault address@hidden on Nov. 2006.
-# $Id: cleanborrowers.pl,v 1.1.2.2 2006/11/16 14:39:09 toins Exp $
+# $Id: cleanborrowers.pl,v 1.1.2.3 2006/11/17 15:55:16 toins Exp $
=head1 cleanborrowers.pl
@@ -39,7 +39,7 @@
use C4::Interface::CGI::Output;
use HTML::Template;
-use C4::Members; # bornameSearch.
+use C4::Members; # GetBorrowersWhoHavexxxBorrowed.
use C4::Circulation::Circ2; # AnonymiseIssueHistory.
use Date::Calc qw/Date_to_Days Today/;
@@ -65,156 +65,91 @@
}
);
-# if script has to search
-if ( $params->{'do_search'} ) {
+if ( $params->{'step2'} ) {
+ my $checkbox = $params->{'checkbox'};
- # getting some CGI params.
- my $query = $params->{'query'} || "%"; # the borrower name
- my $orderby = $params->{'orderby'};
- my $checkborrower;
- my $checkissue;
-
- # to know what radio is checked.
- if ( $params->{'radio'} eq "old-borrower" ) {
- $checkborrower = 1;
- $checkissue = 0;
- }
- else {
- $checkborrower = 0;
- $checkissue = 1;
- }
-
- #getting this list of borrower LIKE $query.
- my ( $count, $results ) =
- BornameSearch( C4::Context->env, $query, $orderby, "advanced" );
- my @membersloop;
-
- my $i;
- for ( $i = 0 ; $i < @$results ; $i++ ) { # building the results list.
-
- # getting some infos for the current borrower.
- my ( $od, $issue, $fines ) =
- borrdata2( C4::Context->env, $results->[$i]{'borrowernumber'} );
-
- next if $od; # can't delete a borrower with overdued items.
- next if $issue; # can't delete a borrower with issued items.
- next if $fines; # can't delete a borrower who has to pay some fines.
-
- # if there is a radio button check.
- if ( $checkborrower or $checkissue ) {
-
- #getting the issues list for this borrower
- my ( $count, $issues ) =
- &allissues( $results->[$i]{'borrowernumber'},
- "items.timestamp", 0 );
-
- if ($checkborrower) {
- $template->param( checkborrower => '1' );
-
- #getting the date the librarian has writed to filter.
- my $filterdate2 = $params->{'filterdate2'};
- $template->param( filterdate2 => $filterdate2 );
-
- # setting the date into days format to just have a simple
number.
- $filterdate2 = Date_to_Days( ( split /-/, $filterdate2 ) );
-
- # if this borrower has never borrowed then got him into
@membersloop.
- if ( !$count ) {
- $results->[$i]->{'neverborrowed'} = 1;
- push @membersloop, $results->[$i];
- next;
- }
-
- # if his last borrowed is before the $filterdate2 then got him.
- # -1- getting his last issue
- # the issues array is sort, so getting its last value.
- my ($lastissue) = split / /, $issues->[-1]
- ->{'itemstimestamp'}; # get the date and not the hours.
- $lastissue = Date_to_Days( split /-/, $lastissue );
-
- # -2- if his late issue is before filterdate2 then got him.
- if ( $lastissue < $filterdate2 ) {
- $results->[$i]->{'notborrowedsince'} = 1;
- $results->[$i]->{'lastissued'} =
- $issues->[-1]->{'itemstimestamp'};
- push @membersloop, $results->[$i];
- }
+ my $totalAno;
+ if ($checkbox eq "issue") {
+ $filterdate1 = $params->{'filterdate1'};
+ my $membersToAnonymize =
+ GetBorrowersWithIssuesHistoryOlderThan($filterdate1);
+ $totalAno = scalar @$membersToAnonymize;
}
- # if "reading history older than" is checked
- if ($checkissue) {
- $template->param( checkissue => '1' );
- my $filterdate1 = $params->{'filterdate1'};
- $template->param( filterdate1 => $filterdate1 );
- $filterdate1 = Date_to_Days( split /-/, $filterdate1 );
- my $NbIssuedBefore = 0;
- foreach (@$issues) {
- my ($date) = split / /, $_->{'itemstimestamp'};
- $date = Date_to_Days( split /-/, $date );
- if ( $date < $filterdate1 ) {
- $NbIssuedBefore++;
- }
- }
- if ($NbIssuedBefore) {
- $results->[$i]->{'oldreadinghistory'} = $NbIssuedBefore;
- push @membersloop, $results->[$i];
- }
- }
- }
- else {
- @membersloop = @$results;
- }
+ my $totalDel;
+ if ($checkbox eq "borrower") {
+ $filterdate2 = $params->{'filterdate2'};
+ my $membersToDelete =
GetBorrowersWhoHaveNotBorrowedSince($filterdate2);
+ $totalDel = scalar @$membersToDelete;
}
$template->param(
- total => scalar @membersloop,
- query => $query,
- orderby => $orderby,
- membersloop => address@hidden,
+ step2 => 1,
+ totalToDelete => $totalDel,
+ totalToAnonymize => $totalAno,
+ filterdate1 => $filterdate1,
+ filterdate2 => $filterdate2
);
#writing the template
output_html_with_http_headers $cgi, $cookie, $template->output;
exit;
-} #if do_search
+}
-# if script has to delete some borrowers.
-if ( $params->{'do_delete'} ) {
- foreach my $borrowernumber ( values %$params ) {
- next unless ( $borrowernumber =~ /^([0-9])*$/ );
- DeleteBorrower($borrowernumber)
- ; #FIXME :: This function don't remove complety. It's just rewrited
on deleteborrower table. So what to do ?
+if ( $params->{'step3'} ) {
+ $filterdate1 = $params->{'filterdate1'};
+ $filterdate2 = $params->{'filterdate2'};
+ my $do_delete = $params->{'do_delete'};
+ my $do_anonym = $params->{'do_anonym'};
+
+ my ( $totalDel, $totalAno, $radio ) = ( 0, 0, 0 );
+
+ if ($do_delete) {
+ my $membersToDelete =
GetBorrowersWhoHaveNotBorrowedSince($filterdate2);
+ $totalDel = scalar(@$membersToDelete);
+ $radio = $params->{'radio'};
+ if ( $radio eq 'trash' ) {
+ my $i;
+ for ( $i = 0 ; $i < $totalDel ; $i++ ) {
+ DeleteBorrower( $membersToDelete->[$i]->{'borrowernumber'} );
+ }
+ }
+ else { # delete completly.
+ my $i;
+ for ( $i = 0 ; $i < $totalDel ; $i++ ) {
+
DelBorrowerCompletly($membersToDelete->[$i]->{'borrowernumber'});
+ }
}
-
$template->param(
- deleted => '1',
- filterdate1 => $params->{'filterdate1'},
- filterdate2 => $params->{'filterdate2'}
+ do_delete => '1',
+ TotalDel => $totalDel
);
+ }
- #writing the template
- output_html_with_http_headers $cgi, $cookie, $template->output;
- exit;
-} #if do_delete
-
-#if this script has to anonymise a reading history.
-if ( $params->{'do_anonym'} ) {
- my $error;
- $filterdate1 = $params->{'filterdate1'};
- foreach my $borrowernumber ( values %$params ) {
- next unless ( $borrowernumber =~ /^([0-9])*$/ );
- $error = AnonymiseIssueHistory( $borrowernumber, $filterdate1 );
+ # Anonymising all members
+ if ($do_anonym) {
+ my $membersToAnonymize =
+ GetBorrowersWithIssuesHistoryOlderThan($filterdate1);
+ $totalAno = scalar @$membersToAnonymize;
+ my $i;
+ for ( $i = 0 ; $i < $totalAno ; $i++ ) {
+ AnonymiseIssueHistory(
$membersToAnonymize->[$i]->{'borrowernumber'},
+ $filterdate1 );
}
$template->param(
- anonym => '1',
- filterdate1 => $params->{'filterdate1'},
- filterdate2 => $params->{'filterdate2'},
- error => $error
+ do_anonym => '1',
+ TotalAno => $totalAno,
+ );
+ }
+
+ $template->param(
+ step3 => '1',
+ trash => ( $radio eq "trash" ) ? (1) : (0),
);
#writing the template
output_html_with_http_headers $cgi, $cookie, $template->output;
exit;
-} #if do_anonym
+}
#default value set to the template are the 'CNIL' value.
my ( $year, $month, $day ) = &Today();
@@ -224,6 +159,7 @@
$filterdate2 = $tmpyear . "-" . $month . "-" . $day;
$template->param(
+ step1 => '1',
filterdate1 => $filterdate1,
filterdate2 => $filterdate2
);
- [Koha-cvs] koha koha-tmpl/intranet-tmpl/prog/en/tools/clea... [rel_3_0],
Antoine Farnault <=