From 287b35f63dcae1dee92de9c5b7838a96191cf254 Mon Sep 17 00:00:00 2001
From: Owen Leonard
Date: Wed, 23 Jan 2013 10:05:22 -0500
Subject: [PATCH] Bug 2969 - Report Name should be mandatory for saved reports
Content-Type: text/plain; charset="utf-8"
This patch re-implements the database changes from the original patch
and adds an update for existing reports. It also reimplements the
client-side validation using the new built-in validation plugin and adds
coverage for SQL reports.
I have also added the "required" attribute to the SQL report textarea
since saving a report with no SQL triggers an error.
To test:
- Create a new guided report. Confirm that you cannot save your guided
report without a report name.
- Create or edit a saved SQL report. Confirm that you cannot save your
report without a name or without SQL.
- Confirm that the saved_sql table structure has been updated.
---
installer/data/mysql/kohastructure.sql | 2 +-
installer/data/mysql/updatedatabase.pl | 7 +++++++
.../en/modules/reports/guided_reports_start.tt | 14 +++++++-------
3 files changed, 15 insertions(+), 8 deletions(-)
diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql
index 8f9b30c..4ad79f2 100644
--- a/installer/data/mysql/kohastructure.sql
+++ b/installer/data/mysql/kohastructure.sql
@@ -1841,7 +1841,7 @@ CREATE TABLE saved_sql ( -- saved sql reports
`last_modified` datetime default NULL, -- the date this report was last edited
`savedsql` text, -- the SQL for this report
`last_run` datetime default NULL,
- `report_name` varchar(255) default NULL, -- the name of this report
+ `report_name` varchar(255) NOT NULL default '', -- the name of this report
`type` varchar(255) default NULL, -- always 1 for tabular
`notes` text, -- the notes or description given to this report
`cache_expiry` int NOT NULL default 300,
diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl
index fd8421e..6ead258 100755
--- a/installer/data/mysql/updatedatabase.pl
+++ b/installer/data/mysql/updatedatabase.pl
@@ -7050,6 +7050,13 @@ if ( CheckVersion($DBversion) ) {
SetVersion($DBversion);
}
+$DBversion = "3.13.00.XXX";
+if ( CheckVersion($DBversion) ) {
+ $dbh->do("ALTER TABLE saved_sql CHANGE report_name report_name VARCHAR( 255 ) NOT NULL DEFAULT '' ");
+ print "Upgrade to $DBversion done, requiring that saved report name not be NULL. (Bug 2969: Report Name should be mandatory for saved reports)\n";
+ SetVersion ($DBversion);
+}
+
=head1 FUNCTIONS
=head2 TableExists($table)
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/reports/guided_reports_start.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/reports/guided_reports_start.tt
index 8c34135..6bf0845 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/reports/guided_reports_start.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/reports/guided_reports_start.tt
@@ -636,7 +636,7 @@ canned reports and writing custom SQL reports.