Commit graph

25888 commits

Author SHA1 Message Date
85633155f4 Bug 15635: Koha::Patron::Images - Remove RmPatronImage
The C4::Members::RmPatronImage just removed a row in patronimage.
This can be accomplished using the delete method of Koha::Patron::Image.

Test plan:
From the patron defail page, try to delete the image of a patron.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
2016-03-04 12:53:01 +00:00
d8980b60ee Bug 15635: Koha::Patron::Images - Remove PutPatronImage
The C4::Members::PutPatronImage inserted/updated the image of a patron.
This can be done easily with ->find->set->store or ->new->store

Test plan:
1/ Modify the image of a patron from the patron detail page
2/ Add an image to a new patron
3/ Use the "Upload patron images" tools (tools/picture-upload.pl) to add
or modify the image of a patron
4/ Use the "Upload patron images" tools (tools/picture-upload.pl) to add
or modify the image of several patrons, using a zip file.
Stress the script trying to get as many errors as possible (wrong
cardnumber, wrong mimetype, file does not exist, etc.)
With this patch, if the cardnumber does not exist, you will get a
specific error "Image not imported because this patron does not exist in
the database"

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
2016-03-04 12:53:00 +00:00
b6aa77ac49 Bug 15635: Koha::Patron::Images - Add new classes
There are 3 subroutines in C4::Members to get, add and delete patron
images:
- GetPatronImage
- PutPatronImage
- RmPatronImage

By creating these 2 Koha::Patron::Image[s] classes, we could remove them easily.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
2016-03-04 12:53:00 +00:00
de23e3f2fb Bug 15950: Use Font Awesome icons for acquisitions basket close confirmation
When closing a basket in Acquisitions the confirmation dialog should be
styled using Font Awesome icons. This patch adds them.

The cancel button has been moved into its own form so that we can get
rid of several problematic JavaScript issues: The use of the
"javascript:" pseudo-protocol, the use of an "onclick" attribute, and
the use of a JS redirect where a GET action will do.

To test, apply the patch and locate an open basket in Acquisitions which
can be closed.

- Click the 'Close this basket' button and confirm that the icons in the
  dialog look correct.
- Test the cancel operation to make sure you are redirected back to the
  page showing the basket details.
- Test the confirm operation and verify that the basket is closed.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as advertised

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Please note that the confirmation message display depends on
BasketConfirmations.

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 22:56:43 +00:00
f43f6bd97a Bug 15951: Use Font Awesome icons for acquisitions order cancellation confirmation
In Acquisitions, when you delete (cancel) an order, a dialog asks you to
confirm. This dialog should be styled with Font Awesome icons.

Other minor edit: Changing page grid style for centered main content
area.

To test, apply the patch and locate a basket in Acquisitions with an
order.

- View the details for the basket.
- Click the 'Delete' link next to the order you want to delete.
- Confirm that the dialog is correctly styled.
- Test the cancel operation and verify that you are correctly redirected
  back to where you were.
- Test the confirmation operation and verify that your order is deleted.
- Also test the deletion process from Acquisitions -> Vendor -> Invoices
-> Invoice -> Go to receipt page -> Delete order.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as advertised

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 22:55:24 +00:00
5b4c6f311e Bug 15959: Use Font Awesome icons for attach item confirmations
When attaching an existing item to a record, the confirmation and error
dialogs should be styled using Font Awesome icons. This patch revises
the buttons and revises the global CSS file.

To test, apply the patch and clear your cache if necessary.

- Locate a record in the catalog to which you can attach an item.
- Select "Attach item" from the "Edit" menu.
- Submit a barcode for an exising item.
- Verify that the confirmation dialog is correctly styled.
  - Test the operation of both the "OK" and the "Attach another item"
    buttons.
- Submit an invalid barcode.
- Verify that the error dialog is correctly styled.
  - Test the operation of both the "OK" and the "Try again"
    buttons.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as described

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 22:54:05 +00:00
f8647c1aae Bug 15925 [Revised] Correct some markup issues with patron lists pages
This patch makes some markup changes to the patron lists interface in
order to make them more consistent with other areas of Koha.

Change to look for when testing:

Tools -> Patron lists:

- Wrap "New patron list" button in standard <div id="toolbar">
- Place toolbar above page heading.

Tools -> Patron lists -> New patron list:

- Use built-in form validation for required fields
- Clarify page title and breadcrumbs on list add and edit

Validation errors have been corrected on all three templates, including
removal of an extra </div>.

Revision: I was wrong about the frequency of use of "Modify." There's no
clear-cut reason to replace it with "Edit" so I have undone that change.

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
  Works as expected. No regression. Better texts. Consistent validation.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 22:30:35 +00:00
3f70b4660b Bug 15940 - Remove unused JavaScript from authorities MARC subfield structure
The authorities MARC subfield structure template contains some unused
JavaScript, "function displayMoreConstraint()" This patch removes it.

To test, apply the patch and go to Administration -> Authority types ->
MARC structure -> Subfields -> Edit subfields and confirm that there are
no JavaScript errors and tab switching works correctly.

A search of the source code should show no instances of
"displayMoreConstraint."

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
  No regression, no JS warning.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 22:29:22 +00:00
6d854a167d Bug 15755: Display default item type as "All" in circ rules
Bug 15354 did not fix correctly the issue with the item type display.
The default item type '*' should be "All", at the moment nothing is
displayed in the column.

Test plan:
1/ Define a rule for default item types (All/*) and for specific item
types.
2/ Translate some item type descriptions used in previous step
3/ Default item type should be "All" and correct translations should be
displayed.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 22:24:08 +00:00
4eb0a1ad19 Bug 15864 - SMS cellular providers link missing from administration sidebar menu
When the SMSSendDriver system preference is set to "Email" a link to the
SMS cellular providers management page should appear in the left-hand
sidebar menu on Administration pages. This patch adds the link to
admin-menu.inc.

To test, apply the patch set your SMSSendDriver system preference to
"Email." View various Administration pages which show the left-hand
sidebar menu and confirm that "SMS cellular providers" is in the list.

Empty the SMSSendDriver preference and confirm that the link no longer
appears.

Signed-off-by: Nicole C Engard <nengard@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 22:22:00 +00:00
3bbc861330 Bug 15669: Add a test for GetModificationTemplates
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 22:11:44 +00:00
771e63f5bf Bug 15669: Alphabetize marc modification templates
This patch sorts the modification templates when getting them from the
database  This affects the pages below:

  tools/batch_record_modification.pl
  tools/marc_modification.pl
  tools/stage-marc-import.pl

To test:

1 - Add some marc modification templates in a non alpha order (Shoes,
    Hats, Cats)
2 - visit the pages above and note the templates are in order
    added
3 - apply patch
4 - visit the three pages and note correct order
5 - verify all tools continue to work as expected

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 22:11:44 +00:00
Mark Tompsett
7721a7b8d2 Bug 15871: Improve PerlCritic level for t/RecordProcessor.t
perlcritic -5 failed.
Attempt to clean up to a higher level:
-- use English to address use of $@ variable
-- perltidy on the code
-- substitute q{} for ''
-- expand out single line hacky goodness (... s/\.pm$//) to more code
-- remove parenthesis on functions that don't need it
-- add x, s, and m as needed to regexps
-- change double quotes to single quotes where no variable involved
-- tweaked eval destroy test to check return value and use $EVAL_ERROR
-- renamed $processor to $record_processor in the subtest to avoid
   lexical warnings

TEST PLAN
---------

$ perlcritic -5 t/RecordProcessor.t
Don't modify $_ in list functions at line 43, column 25.  See page 114 of PBP.  (Severity: 5)

$ perlcritic -2 t/RecordProcessor.t
No package-scoped "$VERSION" variable found at line 1, column 1.  See page 404 of PBP.  (Severity: 2)
Quotes used with a string containing no non-whitespace characters at line 34, column 36.  See page 53 of PBP.  (Severity: 2)
Quotes used with a string containing no non-whitespace characters at line 34, column 39.  See page 53 of PBP.  (Severity: 2)
Quotes used with a string containing no non-whitespace characters at line 36, column 33.  See page 53 of PBP.  (Severity: 2)
Quotes used with a string containing no non-whitespace characters at line 36, column 36.  See page 53 of PBP.  (Severity: 2)
Don't modify $_ in list functions at line 43, column 25.  See page 114 of PBP.  (Severity: 5)
Regular expression without "/s" flag at line 43, column 33.  See pages 240,241 of PBP.  (Severity: 2)
Regular expression without "/x" flag at line 43, column 33.  See page 236 of PBP.  (Severity: 3)
Regular expression without "/m" flag at line 43, column 33.  See page 237 of PBP.  (Severity: 2)
Regular expression without "/s" flag at line 43, column 66.  See pages 240,241 of PBP.  (Severity: 2)
Regular expression without "/x" flag at line 43, column 66.  See page 236 of PBP.  (Severity: 3)
Regular expression without "/m" flag at line 43, column 66.  See page 237 of PBP.  (Severity: 2)
Expression form of "grep" at line 47, column 8.  See page 169 of PBP.  (Severity: 4)
Expression form of "grep" at line 50, column 20.  See page 169 of PBP.  (Severity: 4)
Regular expression without "/s" flag at line 50, column 26.  See pages 240,241 of PBP.  (Severity: 2)
Regular expression without "/m" flag at line 50, column 26.  See page 237 of PBP.  (Severity: 2)
Return value of eval not tested at line 73, column 1.  You can't depend upon the value of $@/$EVAL_ERROR to tell whether an eval failed.  (Severity: 3)
Magic punctuation variable $@ used at line 78, column 5.  See page 79 of PBP.  (Severity: 2)
Reused variable name in lexical scope: $processor at line 84, column 5.  Invent unique variable names.  (Severity: 3)
Subroutine "new" called using indirect syntax at line 87, column 18.  See page 349 of PBP.  (Severity: 4)
Subroutine "new" called using indirect syntax at line 93, column 18.  See page 349 of PBP.  (Severity: 4)
Quotes used with a string containing no non-whitespace characters at line 96, column 40.  See page 53 of PBP.  (Severity: 2)
Subroutine "new" called using indirect syntax at line 99, column 18.  See page 349 of PBP.  (Severity: 4)
Subroutine "new" called using indirect syntax at line 106, column 18.  See page 349 of PBP.  (Severity: 4)
$ prove -v t/RecordProcessor.t
t/RecordProcessor.t .. ok
All tests successful.
Files=1, Tests=13,  0 wallclock secs ( 0.01 usr  0.00 sys +  0.22 cusr  0.02 csys =  0.25 CPU)
Result: PASS

$ prove -v t/RecordProcessor.t
...
$ git bz apply 15871

Repeat perlcritic level 2, and only $VERSION warning should exist.
Retest with the prove.
Run koha qa test tools.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as advertised

Signed-off-by: Jesse Maseto <jesse@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>
I don't really care about perlcritic as long as it involves changing '' into qw{} (WTF?)
Anyway, I'd do this kind of things as we go, for example, if we were adding more tests. In that
case it would just be a followup for this, after you provided a patch for an enh/bugfix.

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 22:02:50 +00:00
77e1e7c4ef Bug 15548 [QA Followup] - More new uses of Koha::Borrower
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com>
2016-03-03 14:39:00 -07:00
ed882397da Bug 15548 [QA Followup] - Catch a couple new Koha::Borrower uses
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com>
2016-03-03 14:39:00 -07:00
3691bd8419 Bug 15548: Move new patron related code to Patron*
The 'borrower' should not be used anymore, especially for new code.
This patch move files and rename variables newly pushed (i.e. in the Koha
namespace).

Test plan:
1/
  git grep Koha::Borrower
should not return code in use.

2/
Prove the different modified test files

3/ Do some clicks in the member^Wpatron module to be sure there is not
an obvious error.

Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com>
Works as described. Tested with Circulation, Members/Patrons, Discharge,
Restrictions modules and the must common functionalities

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com>
2016-03-03 14:38:26 -07:00
d53daa3392 Bug 15632 [QA Followup] - Change method type to _type for bug 15446
Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 21:22:16 +00:00
55ad33ba2e Bug 15632 [QA Followup] - Undo changes needed for Bug 13618 which was reverted
Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 21:22:15 +00:00
774993ae2d Bug 15632 [QA Followup] - Get rid of use of uninitialized value errors for unit tests
* Set $user to "" if not passed
* Tidy sub

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 21:22:15 +00:00
3917867b41 Bug 15632: Koha::Patron::Messages - (follow-up) Remove AddMessage
Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 21:22:15 +00:00
ff5b23f94a Bug 15632: Koha::Patron::Messages - Remove tests
The messages related tests in t/db_dependent/Members.t are not
deprecated and can be removed.

Test plan:
  git grep AddMessage
  git grep DeleteMessage
  git grep GetMessagesCount
  git grep GetMessages
should not return any result.

Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 21:22:14 +00:00
2d74d926ce Bug 15632: Koha::Patron::Messages - Remove GetMessages
This subroutine just retrieved the messages given some parameters.
Some job should not have been done in this subroutine.
It was called only 3 times, in circ/circulation.pl and opac-user.pl.
Basically it was used to retrieved the message to displaye for a given
patron ($borrowernumber) at the OPAC (B) or Staff (L).

For the 3 calls, the 2 parameters $borrowernumber and $type
(message_type) were passed, the "%" trick at the beginning of the
subroutine was useless.
Moreover, the date formatting should be done on the TT side, not in
subroutine.
The can_delete flag was set if the branchcode given in parameter was the
same as the one of the message. This has been delegated to the template.
Indeed the can_delete was not valid, since it must depend on the
AllowAllMessageDeletion pref.
The test is now:
  IF message.branchcode == branch OR
  Koha.Preference('AllowAllMessageDeletion'')

There is not specific test plan for this patch, the changes have already
been tested in previous patches.

Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 21:22:14 +00:00
74180472ad Bug 15632: Koha::Patron::Messages - Remove GetMessagesCount
The GetMessageCount subroutine was only used once, in opac-user.pl, to
know if some messages will be displayed.

Test plan:
1/ Create messages to display at the OPAC for a patron
2/ Logged this patron in at the OPAC, you should see the messages
displayed.

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 21:22:13 +00:00
e6bd28682e Bug 15632: Koha::Patron::Messages - Remove DeleteMessage
The DeleteMessage just deleted and logged if needed.
This is now be done by Koha::Patron::Message->delete.

Test plan:
1/ Go on the "check out" page of a patron
2/ Delete some messages

Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 21:22:13 +00:00
d9c983c568 Bug 15632: Koha::Patron::Messages - Remove AddMessage
The AddMessage subroutine just
1. checked if all the parameters were passed
2. inserted the message in the DB
3. logged the action if needed

These 3 jobs are now done by the overloaded store method of
Koha::Patron::Message.

Test plan:
1/ Go on the "check out" page of a patron
2/ Add different new messages

Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 21:22:13 +00:00
b842a08589 Bug 15632: Koha::Patron::Messages - Be sure add and delete will log
If the pref BorrowersLog is on, the store and delete method should log
into the action_logs table.
Easy to do by overloading them.

Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 21:22:12 +00:00
dd31253441 Bug 15632: Koha::Patron::Messages - Add new classes
The following 4 CRUD subroutines in C4::Members:
- AddMessage
- DeleteMessage
- GetMessagesCount
- GetMessages

could be replaced with a new package based on Koha::Objets.
This patchset will add the 2 Koha::Patron::Message[s] classes, then use
it to replace the different calls to these subroutine.
It will slightly reduce the size of C4::Members

Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 21:22:12 +00:00
Brendan A Gallagher
e88457a9fa DBRev Bug 15084 - Move the currency related code to
Koha::Acquisition::Currenc[y|ies]
2016-03-03 21:15:14 +00:00
65c4694b7a Bug 15084: Fix conflict with bug 15446 (type vs _type)
Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:39:03 +00:00
225fb60b40 Bug 15084 [QA Followup] - Clean up test currencies after unit tests
Test currency left behind will cuase next run of the unit test to fail
as well as leaving db cruft.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:39:03 +00:00
2325ef0cb8 Bug 15084: DBIx::Class - Shema changes
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:39:02 +00:00
eceece8de2 Bug 15084: DB Changes - add currency.archived and FK on aqorders.currency
See the comment for details.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:39:02 +00:00
a4013eee67 Bug 15084: Add tests for Koha::Acquisition::Currenc[y|ies]
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:39:01 +00:00
85d08edddf Bug 15084: Remove C4::Budgets::ConvertCurrency
This subroutine is unused and can be removed.
There is no trace left of currency in C4::Budgets.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:39:01 +00:00
1538e9ecf4 Bug 15084: Replace C4::Budgets::GetCurrencies with Koha::Acquisition::Currencies->search
Most part of the code here is unnecessary complex. We should selected
the currency if it is selected, that's all :)

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:39:01 +00:00
0423b82314 Bug 15084: use Koha::Acquisition::Currenc[y|ies] in admin/currency
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:39:00 +00:00
b574b61591 Bug 15084: Make sure the previous active currency is marked as inactive
On inserting an active currency, others should be marked as inactive.
We can only have 1 active currency at the same time.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:39:00 +00:00
6cd3975f64 Bug 15084: Add Koha::Acquisition::Currenc[y|ies] classes
The first step of this patch set is to move the business logic code from
admin/currencies.pl to Koha::Acquisition::Currenc[y|ies].

Then a foreign key will be created on aqorders.currency as we want to
assure data integrity. Note that a aqbooksellers.currency also exists
but is never used. It could be removed in another bug report.
This update has to care about possible breaking relation. For instance
an old order has been made using a currency which is now deleted. To be
sure the update process won't break a new column currency.archived is
created and leave open the door for a further improvement (marked a
currency as archived from the interface: this won't be provided by this
enhancement).
These archived currencies won't appear on the interface for newly
created items (order/suggestion).

Once this is done it becomes easy to remove the subroutine from
C4::Budgets: GetCurrencies and GetCurrency.
ConvertCurrency will also be removed but is not used anymore.

Note that none of these subroutines were covered by tests. Now they are.

Test plan:
0/ Don't apply this patch
1/ Create a temporary currency and an order using it
2/ Remove the currency from your CLI
3/ Apply the patch and execute the DB entry
4/ Note that the currency is inserted and marked as archived.
5/ Edit the previous order and confirm that the correct currency is
still selected.
It won't never be displayed anywhere else.
6/ Test the admin script: on admin/currency.pl add/remove/edit
currencies.
You could not have 2 active currencies at the same time.
7/ Then on the different scripts of the acquisition module, focus on the
currencies values and create a new order, receive it.
Create/edit a suggestion

Other changes must be checked by the QAer.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:38:59 +00:00
676d1e53b3 Bug 14889: Fix typo in Koha/BiblioFrameworks.pm
Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:32:47 +00:00
Brendan A Gallagher
209531eae9 DBRev Bug 12803 - Add ability to skip closed libraries when generating
the holds queue
2016-03-03 20:27:04 +00:00
c0d7030b02 Bug 12803 [QA Followup] - Allow holiday caching to be disabled for testing purposes
Bug 12803 [QA Followup] - Remove use of C4::Dates

C4::Dates was being included, but not used in the code!

Bug 12803 [QA Followup] - Fix koha-qa.pl errors

Bug 12803 [QA Followup] - Update unit tests due to changes in master

Bug 12803 [QA Followup] - Fix to stop failing unit tests

Bug 12803 [QA Followup] - Remove duplicate 'use' lines

Bug 12803 [QA Followup] - Remove NO_CACHE

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:19:00 +00:00
3c9d50d134 Bug 12803 - Add ability to skip closed libraries when generating the holds queue
The holds queue is typically generated many times a day in order to
select items to fill holds. Often these items are to be sent to a
different library. However, if the library whose item is picked to fill
a hold is closed, that hold will remain unfilled even if there are other
open libraries who own that item. It would be helpful if we could skip
closed libraries for the purpose of selecting items to fill holds.

Test Plan:
1) Apply this patch
2) Run updatedatabase.pl
3) Create a record with two items on it, one at Branch A, and one at
   Branch B
4) Place a hold for pickup at Branch C
5) Generate the holds queue
6) Note which branch's item is selected for the hold
7) Enable the new system preference HoldsQueueSkipClosed
8) Add today as a holiday for that branch noted in step 6
9) Regenerate the holds queue
10) View the holds queue, notice the item selected is not from
    the closed branch!
11) prove t/db_dependent/HoldsQueue.t

Signed-off by: Jason Robb <jrobb@sekls.org>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:19:00 +00:00
9bd9476b1d Bug 12426: [QA Follow-up] Clear to_address to force update
When resending an email from the Notices tab in Patrons, we would like
to use the recent email address.

Test plan:
[1] Look up a patron with some notices sent.
[2] Adjust the patron email address (watch AutoEmailPrimaryAddress).
[3] Resend the notice. Verify if the new address was used.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:16:07 +00:00
Lari Taskula
fbb7097b1d Bug 12426: Allow resend for sent messages
This patch allows to resend both sent and failed messages.

With messages in 'sent' status, we have to be careful not to accidentally send
sent messages again. With the previous patch using GET request, this was likely
to happen because of browser storing the GET parameters.

This patch changes request method from GET to POST. Instead of a simple link,
we now have a form element.

In notices.pl we redirect back to notices.pl, because with POST there is a risk
of resending the message accidentally by form resubmission at refresh.

To test, find/create a Patron that has sent or failed notices in message_queue:
1. Enable EnchancedMessagingPreferences system preference
2. Go to Patrons -> Notices
3. In the Notice column, click the title of the sent or failed message
4. Observe that there is nothing for resending the sent or failed message
5. Apply the patches.
6. Reload Notices page and repeat step 3
7. Observe that there is now a link "Resend" in the Status-column
8. Click Resend
9. Observe that the message gets into 'pending' status

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:16:07 +00:00
0813c72b1f Bug 12426: Simplify the code adding a new subroutine GetMessage
The C4::Letters module does not have a GetMessage subroutine, which
could be quite useful.
This patch adds it and simplifies the code added by the previous patch.
It also adds a few tests and fixes POD typos.

Note that ResendNotice only resends failed messages. This will avoid to
resend already sent messages (using an url from the browser history for
instance).

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:16:07 +00:00
Lari Taskula
05ea6ba1a8 Bug 12426: Allow resending of messages from the notices tab in the patron account
This patch adds a link 'Resend' under a notice in 'failed' status
in the Patron's Notices tab.

By clicking the link, we will request notices.pl with parameter
"resendnotice=XXXXX" where XXXXX is message_id. In notices.pl,
we then check whether the given message is actually in 'failed'
status. If so, we use the C4::Letters::ResendMessage(123) to
change the status of the message into 'pending'. This way it
will be processed again by the cronjob process_message_queue.pl.

To test, find/create a Patron that has failed notices in message_queue:
1. Enable EnchancedMessagingPreferences system preference
2. Go to Patrons -> Notices
3. In the Notice column, click the title of the failed message
4. Observe that there is nothing for resending the failed message
5. Apply patch.
6. Reload Notices page and repeat step 3
7. Observe that there is now a link "Resend" in the Status-column
8. Click Resend
9. Observe that the message gets into 'pending' status

Works as expected.
Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 20:16:06 +00:00
Brendan A Gallagher
256785f5db DBRev update Bug 14168 - enhance streaming cataloging to include youtube
Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 19:12:06 +00:00
Mirko Tietgen
3e89695815 Bug 14168: (followup) atomic update for syspref
Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com>
Fixed small typo (extra ').

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 18:47:03 +00:00
Mirko Tietgen
10cbf64b24 Bug 14168: (followup) require WWW::YouTube::Download only when syspref enabled
This patch fixes the problem of missing WWW::YouTube::Download breaking
record detail views. Instead of a general 'use', the module is only
required if the related syspref is enabled.

Signed-off-by: Jesse Weaver <jweaver@bywatersolutions.com>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-03 18:47:03 +00:00
Tomas Cohen Arazi
348cfe6e0a Bug 15288: (QA followup) Tests still point to old 500.tt file
This patch fixes the t/db_dependent/Auth.t so they don't look for the removed
file and use the new one instead.

To test:
- On master, run
  $ prove t/db_dependent/Auth.t
=> FAIL: You get something similar to this:

- Apply the patch
- Re-run the tests
=> SUCCESS: Tests now pass.

Signed-off-by: Tomas Cohen Arazi <tomascohen@unc.edu.ar>

Signed-off-by: Brendan A Gallagher <brendan@bywatersolutions.com>
2016-03-02 23:13:35 +00:00