From 2fe859189f1b4daf39fa559c31945ce3fec4fb74 Mon Sep 17 00:00:00 2001 From: Blou <philippe.blouin@inlibro.com> Date: Thu, 3 Mar 2016 10:06:39 -0500 Subject: [PATCH] Bug 11317 - Rename config to 'accessdir' and fix qa Also translate date with datetime format preference and move to Tools. Signed-off-by: Nick Clemens <nick@bywatersolutions.com> --- debian/templates/koha-conf-site.xml.in | 5 ++- etc/koha-conf.xml | 3 ++ .../prog/en/modules/reports/report_files.tt | 21 ++++++----- .../prog/en/modules/tools/tools-home.tt | 4 +++ reports/report_files.pl | 42 +++++++++++++--------- 5 files changed, 46 insertions(+), 29 deletions(-) diff --git a/debian/templates/koha-conf-site.xml.in b/debian/templates/koha-conf-site.xml.in index 2add4aa..fb80a36 100644 --- a/debian/templates/koha-conf-site.xml.in +++ b/debian/templates/koha-conf-site.xml.in @@ -299,7 +299,10 @@ __END_SRU_PUBLICSERVER__ <!-- Secret passphrase used by Mojolicious for signed cookies --> <api_secret_passphrase>__API_SECRET__</api_secret_passphrase> - <!-- true type font mapping accoding to type from $font_types in C4/Creators/Lib.pm --> + <!-- Accessible directory from the staff client, uncomment the following line and define a valid path to let the intranet user access it--> + <!-- <accessdir></accessdir> --> + + <!-- true type font mapping according to type from $font_types in C4/Creators/Lib.pm --> <ttf> <font type="TR" >/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif.ttf</font> <font type="TB" >/usr/share/fonts/truetype/ttf-dejavu/DejaVuSerif-Bold.ttf</font> diff --git a/etc/koha-conf.xml b/etc/koha-conf.xml index 4ccee3a..5e98ce7 100644 --- a/etc/koha-conf.xml +++ b/etc/koha-conf.xml @@ -130,6 +130,9 @@ __PAZPAR2_TOGGLE_XML_POST__ <!-- Secret passphrase used by Mojolicious for signed cookies --> <api_secret_passphrase>CHANGEME</api_secret_passphrase> + <!-- Accessible directory from the staff client, uncomment the following line and define a valid path to let the intranet user access it--> + <!-- <accessdir></accessdir> --> + <!-- true type font mapping accoding to type from $font_types in C4/Creators/Lib.pm --> <ttf> <font type="TR" >__FONT_DIR__/DejaVuSerif.ttf</font> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/reports/report_files.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/reports/report_files.tt index 3ee409e..06de9d1 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/reports/report_files.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/reports/report_files.tt @@ -2,12 +2,11 @@ <title>Report/log files</title> [% INCLUDE 'doc-head-close.inc' %] <link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" /> -<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script> +[% INCLUDE 'datatables.inc' %] [% INCLUDE 'datatables-strings.inc' %] -<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script> <script type="text/JavaScript" language="JavaScript"> - //<![CDATA[ - $(document).ready(function() { + //<![CDATA[ + $(document).ready(function() { $("#files").dataTable($.extend(true, {}, dataTablesDefaults, { "sDom": 't', "aoColumnDefs": [ @@ -15,8 +14,8 @@ ], "bPaginate": false })); - }); - //]]> + }); + //]]> </script> </head> <body> @@ -27,13 +26,13 @@ <div id="doc3" class="yui-t2"> <div id="bd"> - <div id="yui-main"> - <div class="yui-b"> + <div id="yui-main"> + <div class="yui-b"> - <h1>Report/log files</h1> + <h1>Report/log files</h1> -[% IF ( error_no_publiclogdir ) %] - <div class="dialog alert"><strong>Error : </strong>Report/log files could not be found because the "publiclogdir" option was not set in "koha-conf.xml". Contact your system administrator to add this option.</div> +[% IF ( error_no_dir ) %] + <div class="dialog alert"><strong>Error : </strong>Report/log files could not be found because the "accessdir" option was not set in "koha-conf.xml". Contact your system administrator to add this option.</div> [% ELSE %] [% IF ( files_loop ) %] <table id="files"> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/tools-home.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/tools-home.tt index 4c8cca9..60a4e85 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/tools-home.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/tools-home.tt @@ -113,6 +113,10 @@ <dt><a href="/cgi-bin/koha/tools/upload.pl">Upload</a></dt> <dd>Upload any type of file, manage uploads</dd> [% END %] + + <dt><a href="/cgi-bin/koha/reports/report_files.pl">Report/log files </a></dt> + <dd>Report/log files</dd> + </dl> </div> diff --git a/reports/report_files.pl b/reports/report_files.pl index 3976ecb..dc319e5 100755 --- a/reports/report_files.pl +++ b/reports/report_files.pl @@ -3,14 +3,14 @@ # Frédérick Capovilla, 2011 - Libéo # # Show a list of all the files in the directory specified by the option -# "publiclogdir" in koha-conf.xml so they can be downloaded by users with the +# "accessdir" in koha-conf.xml so they can be downloaded by users with the # "reports" permission. # # This file is part of Koha. # # Koha is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or (at your option) any later +# Foundation; either version 3 of the License, or (at your option) any later # version. # # Koha is distributed in the hope that it will be useful, but WITHOUT ANY @@ -33,32 +33,39 @@ use Digest::MD5 qw(md5_hex); my $input = new CGI; my $file_id = $input->param("id"); -my $directory = C4::Context->config('publiclogdir'); +my $directory = C4::Context->config('accessdir'); my ($template, $borrowernumber, $cookie) - = get_template_and_user({template_name => "reports/report_files.tt", - query => $input, - type => "intranet", - authnotrequired => 0, - flagsrequired => {reports => '*'}, - }); + = get_template_and_user({template_name => "reports/report_files.tt", + query => $input, + type => "intranet", + authnotrequired => 0, + flagsrequired => {reports => '*'}, + }); unless($directory) { - $template->param(error_no_publiclogdir => 1); + $template->param(error_no_dir => 1); } else { #Get the files list my @files_list; - opendir(DIR, $directory); + opendir(DIR, $directory); foreach my $filename (readdir(DIR)) { - my $id = md5_hex($filename); + my $id = md5_hex($filename); my $full_path = "$directory/$filename"; next if ($filename =~ /^\./ or -d $full_path); my $st = stat($full_path); + my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =localtime($st->mtime); + my $dt=DateTime->new(year => $year + 1900, + month => $mon + 1, + day => $mday, + hour => $hour, + minute => $min, + ); push(@files_list, {name => $filename, - date => scalar localtime($st->mtime), + date =>Koha::DateUtils::output_pref($dt), size => $st->size, id => $id}); } @@ -75,14 +82,15 @@ else { -Content_length => -s "$directory/$filename", -attachment => "$filename"); - open FILE, "<:utf8", "$directory/$filename"; - binmode FILE; + my $fh; + open $fh, "<:encoding(UTF-8)", "$directory/$filename"; + binmode $fh; my $buf; - while(read(FILE, $buf, 65536)) { + while(read($fh, $buf, 65536)) { print $buf; } - close FILE; + close $fh; exit(1); } -- 2.1.0