Commit graph

4291 commits

Author SHA1 Message Date
Duncan Tyler
628788ad8a Added coverage to unit test for TTParser
http://bugs.koha-community.org/show_bug.cgi?id=5327
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Test passes.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 11:35:20 +02:00
Colin Campbell
da49eeb8f9 Bug 7619 Use CRLF as default terminator
Most units require or tolerate CRLF as the terminator
Using only \r causes many including 3M units to signal errors
due to delay this resets CRLF to be default but adds a single
constant variable and explanation so that if you have a
"strictly conforming" unit (the 'Baby' is the only I have encountered
you know where to make the change

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-07-06 11:15:05 +02:00
Jared Camins-Esakov
36f1fb6308 Bug 8311: Fix scoping error in C4::Auth
There is a mis-scoped function call in C4::Auth, on line 154, where
GetMembers is called without explicit scoping and before
'require C4::Members;'. This does not actually have any functional
ramifications as far as I can tell, but it would be a good idea to fix
it.

This patch also corrects a bit of indenting in that area, because it was
an unnecessary challenge to understand the code with the mis-indenting.

Signed-off-by: Marc Veron <veron@veron.ch>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-29 16:16:55 +02:00
Jared Camins-Esakov
c0714a99f2 Bug 6557: Record bib popularity in totalissues
Because updating the total issues count associated with a bibliographic
record on issue could cause a significant load on the server, this
commit adds the syspref UpdateTotalIssuesOnCirc (which defaults to OFF
to match existing behavior). The syspref has the following description:

  Do/Do not update a bibliographic record's total issues count whenever
  an item is issued (WARNING! This increases server load significantly;
  if performance is a concern, use the update_totalissues.pl cron job
  to update the total issues count).

Bug 6557: automatically increment totalissues

Adds the ability to automatically increment biblioitems.totalissues
whenever an item is issued.

To test:
1) Choose a record with at least one item that can circulate
2) Check the value of 942$0 (you may need to look at the plain MARC view
   on the OPAC). Most likely there won't be any 942$0 at all
3) Enable UpdateTotalIssuesOnCirc
4) Check out the item you selected
5) Check the value of 942$0 (you may need to look at the plain MARC view
   on the OPAC). That value should now be one greater than before
6) Discharge the item
7) Disable UpdateTotalIssuesOnCirc
8) Check out the item you selected again
9) Check the value of 942$0 (you may need to look at the plain MARC view
   on the OPAC). That value should not have changed

Bug 6557: add script to update totalissues from stats

NAME
       update_totalissues.pl

SYNOPSIS
         update_totalissues.pl --use-stats
         update_totalissues.pl --use-items
         update_totalissues.pl --commit=1000
         update_totalissues.pl --since='2012-01-01'
         update_totalissues.pl --interval=30d

DESCRIPTION
       This batch job populates bibliographic records' total issues count
       based on historical issue statistics.

       --help  Prints this help

       -v|--verbose
               Provide verbose log information (list every bib modified).

       --use-stats
               Use the data in the statistics table for populating total
               issues.

       --use-items
               Use items.issues data for populating total issues. Note that
               issues data from the items table does not respect the --since
               or --interval options, by definition. Also note that if both
               --use-stats and --use-items are specified, the count of biblios
               processed will be misleading.

       -s|--since=DATE
               Only process issues recorded in the statistics table since
               DATE.

       -i|--interval=S
               Only process issues recorded in the statistics table in the
               last N units of time. The interval should consist of a number
               with a one-letter unit suffix. The valid suffixes are h
               (hours), d (days), w (weeks), m (months), and y (years). The
               default unit is days.

       --incremental
               Add the number of issues found in the statistics table to the
               existing total issues count. Intended so that this script can
               be used as a cron job to update popularity information during
               low-usage periods. If neither --since or --interval are
               specified, incremental mode will default to processing the
               last twenty-four hours.

       --commit=N
               Commit the results to the database after every N records are
               processed.

       --test  Only test the popularity population script.

WARNING

If the time on your database server does not match the time on your Koha
server you will need to take that into account, and probably use the
--since argument instead of the --interval argument for incremental
updating.

=== TESTING PLAN ===

NOTE: in order to test this script, you will need to have some sort of
circulation data already existing in your Koha installation.

1) Disable UpdateTotalIssuesOnCirc
2) Run: misc/cronjobs/update_totalissues.pl --use-items -t -v
3) If you have total checkout data in your item records (i.e. anything
   in 952$l), you should see messages like "Processing bib 43 (1 issues)"
4) Choose one of the lines that shows more than 0 issues, and view the
   record with that biblionumber in the staff client, choosing the "Items"
   tab (moredetail.pl). Add up the "Total checkouts" listed for each item,
   and confirm it matches what the script reported
5) Run: misc/cronjobs/update_totalissues.pl --use-stats -t -v
6) If you have any circulation statistics in your database (i.e. any
   'issue' entries in your statistics table), you should see messages
   like "Processing bib 43 (1 issues)";
7) Choose one of the lines and view the record with that biblionumber in
   the staff client, choosing the "Items" tab (moredetail.pl). If you
   count the number of checkouts listed in each item's checkout history,
   the total should match what the script reported.
8) Check out an item
9) Run: misc/cronjobs/update_totalissues.pl --use-stats
   --incremental --interval=1h -t -v
10) You should see one line reporting a single circ for the bib record
    associated with the item you just checked out (there may be more if
    you checked out any books in the hour prior to running these tests
11) If the results in steps 4, 7, and 10 match the predictions, the
    script worked

This patch to Koha was sponsored by the Arcadia Public Library and the
Arcadia Public Library Foundation in honor of Jackie Faust-Moreno, late
director of the Arcadia Public Library.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Tested this with my test data - numbers are correct and updated appropriately.

More importantly - if I do a popularity search, the most popular items *come up first*. Amazing.
2012-06-29 14:29:22 +02:00
76b80ac33c Bug 8130 - attach PDF files to a patron record
Adds the ability to attach unlimited arbitrary files to
a borrower record.

Test Plan:
1) Enable system preference EnableBorrowerFiles
2) Look up borrower record, click 'Files' tab on left
3) Upload a file, download the file, delete the file.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
rebased for current master.

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
rebased again; some indentation issues in include menus.
2012-06-28 10:55:51 +02:00
Matthias Meusburger
07e30a78d3 Bug 8279: CAS Debugging improvements
Adds more precise debug informations for easier CAS troubleshootings resolution.

  Before this patch, whenever ticket validation failed, the debug message was "Invalid ticket".
  But ticket validation may fail for other reasons: CAS server not reachable, casServerUrl syspref is wrong...

  This patch adds the reason for ticket validation failing.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-27 18:05:02 +02:00
Julian Maurice
203757e353 Bug 7304: More permissions for budgets
- Possibility to add users to a budget
- Restrictions changed to:
  - None
  - Owner
  - Owner and users
  - Owner, users and library
- Restricted users cannot spent on these budgets (they cannot modify them
  either)

Modified pages:
 - admin/aqbudgets.pl
 - admin/aqplan.pl
 - suggestion/suggestion.pl
 - acqui/acqui-home.pl
 - acqui/addorderiso2709.pl
 - acqui/basket.pl
 - acqui/neworderempty.pl

Unit tests in t/Budgets/CanUserUseBudget.t and t/Budgets/CanUserModifyBudget.t

Bug 7304 tmp

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-27 16:25:44 +02:00
Julian Maurice
1e6644f597 Bug 6090: Do not enqueue empty messages
This patch avoid enqueuing messages that have an empty body. It can
happen when letter is empty or becomes empty after being processed by
parseletter

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-25 17:56:05 +02:00
Paul Poulain
a163be4113 Bug 3708 - Add another customizable region to the OPAC: right sidebar nav
This patch creates a new system preference, OpacNavRight, in
which the librarian can add HTML which will appear on the OPAC
main page under the login form. If the user is logged in the content
will appear in place of the login form.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 23:11:06 +02:00
Meenakshi.R
8bd8aba577 Bug 4255 - Add item type to facet list
This is for MARC 21 only.

Made following changed:

- In getFacets in C4/Koha.pm added item type facet for 952y and 942c
- In getRecords in C4:Search.pm added code to get description of itemtype codes
- facets.inc in both staff and opac to show item types related label in the facets block

To test:

Add records such that a certain itype (say BK) is present in both 942c and 952y in two DIFFERENT records.

Run a search where both test records are present. Test to see if itype types are presented in the facets block (both OPAC and staff).

Click on the itype (say BK), both the test records should appear in the refined results. This shows that the feature works for both 942c and 952y.

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

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>

QA Comment: fixed capitalization in template includes according to HTML4 coding
guideline ("Item types" instead of "ItemTypes")

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 22:27:21 +02:00
Paul Poulain
b93e6df3a1 Merge remote-tracking branch 'origin/new/bug_6634' 2012-06-20 22:19:06 +02:00
Maxime Pelletier
8036be591f bug 6634 : 3 more cases of manager_id not populated
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 22:18:19 +02:00
Jonathan Druart
5e2001a6f8 Bug 7955: Statistics tab for Patron checkouts
This patch adds a new 'statistics' tab in the Patron module.
For a borrower, this tab contains a table with:
- number of checkout for today
- number of checkin for today
- "precedent state", the number of checkouts the patron had yesterday on
  its library card
- "actual state", the number of checkouts on the borrower card at the current date

A new syspref (StatisticsFields) contains a list of fields (separated by
pipe (|) on which the table results is based. The default value is
location|itype|ccode

Signed-off-by: Mathilde Formery <mathilde.formery@ville-nimes.fr>
2012-06-20 21:16:50 +02:00
Colin Campbell
9929c52a57 Bug 8216: Allow SIP modules to pass critic tests
Add C4/SIP to perlcritic tests. Fix those issues that were
generating perlcritic errors

Signed-off-by: Stacey Walker <stacey@catalyst-eu.net>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 11:14:00 +02:00
9dc42e9ec4 Bug 8223 - Properly format SQL query in C4::Bookseller::GetBookSeller
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 11:12:29 +02:00
Colin Campbell
bcde875b47 Bug 8227 Fix deprecated construct compile time warning in Serials
The perl parser no longer fools itself into sometimes thinking
qw( ... ) is a ( qw( ... )) this adds the required parentheses
for the foreach expression silencing the compile time warning

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 10:38:25 +02:00
Jared Camins-Esakov
3aaaf2f2e4 Bug 7943: Authority search results are untranslatable
The HTML for authority search results was previously generated in
C4::AuthoritiesMarc::BuildSummary, which meant that it couldn't be
translated. This patch moves the HTML generation into the templates
by introducing a new authorities-search-results.inc include file for
both the OPAC and the Intranet which contains a Template::Toolkit BLOCK
for rendering the authority results. Fixes the authority autocomplete
by removing the untranslatable strings, and returning only data from
the database.

To test:
1. Apply patch.
2. Test authority searching in the authority module in the staff client
3. Test authority searching in the authority control plugin in the
   cataloguing module (and the plugin for UNIMARC field 210$c, if you
   can figure out how)
4. Test authority searching in the OPAC

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested with MARC21 data.

1) Applies cleanly on current HEAD.

2) Authority search in staff

Patch works wonderfully, only some small notes found while testing that have
not been changed by this patch:

ENH note: Search terms show up nowhere. So if I want to change the sorting, I have to
repeat typing in my search term. Even if the form does not keep the term, it
should be visible somewhere on the screen what I searched for.

ENH note: The pagination on top and at the bottom of the result list are formatted
differently. Maybe some missing CSS?

ENH note: Also the authority type is not shown at all in the result list.

3) Cataloguing and authority plugins

The autocomplete function works nicely.

ENH note: There is only one small enhancement
I could imagine. If I start my search from 100 it will limit the search to
'persons' but the autocomplete will also suggest other authorities. It would
be a bit cleaner, if the autocomplete could limit by the appropriate authority
type too. Very nice feature.

Plugins overall work nicely. Created links include the authority numbers and work
correctly.

4) Authority search in OPAC

Works nicely. Display is consistent, but translatability greatly improved.

ENH note: In staff we use 'Details' in OPAC we use 'View full heading' - I wonder
if maybe 'details' would be better understandable for users?

Note: Code reveals a system preference 'AuthDisplayHierarchy' that is
not available in the system preference editor. I talked to Jared and he
will work on this feature later on. For now it's no regression, as the
preference has never been visible.
2012-06-20 10:07:30 +02:00
Sophie Meynieux
533c4c0f46 Bug 7329 [Followup] : when reverting an import, keep matching biblionumber in batch table, if items are not deleted because they are issued.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>

http://bugs.koha-community.org/show_bug.cgi?id=7318
2012-06-20 09:38:01 +02:00
Sophie Meynieux
f86ccea202 Bug 7329 [Followup] : when reverting an import, keep matching biblionumber in batch table, if items are not deleted beacause on loan.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
2012-06-20 09:20:41 +02:00
Christophe Croullebois
c13d4faff7 Bug 7329: Items onloan are deleted when undoing import into catalog
this patch checks the "on loan" and "reserved" status before deleting item, and
do noting in this case, so the record can't be deleted due to existing item.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
2012-06-20 09:20:40 +02:00
Dobrica Pavlinusic
d8c909b5cb Bug 8247 - adding basket doesn't save basket name, internal or vendor note
URL: /cgi-bin/koha/acqui/basketheader.pl?booksellerid=32&op=add_form

I'm also getting mysql referential integrity error:

DBD::mysql::st execute failed: Cannot add or update a child row: a foreign key constraint fails (`koha_srvgit`.`aqbasket`, CONSTRAINT `aqbasket_ibfk_1` FOREIGN KEY (`booksellerid`) REFERENCES `aqbooksellers` (`id`) ON UPDATE CASCADE) at /srv/koha/C4/Acquisition.pm line 416.

Test scenario:

1. Find vendor and select "New basket"
2. fill in basket name, internal and vendor note
3. press save
4. verify that created basket doesn't have name nor internal or vendor notes

Signed-off-by: Marc Veron <veron@veron.ch>

First tested without patch applied, new basket's name and internal / vendor notes were empty-
Applied patch, new basket's name and notes behave OK.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-20 09:16:45 +02:00
Dobrica Pavlinusic
dc1ccb1d74 Bug 7952 - PDF::Reuse under plack writes to console STDOUT instead to browser
Without name option to prFile, PDF::Reuse opens '-' file which is real
console STDOUT on plack so pdf file gets emited to terminal instead of
sending it to browser.

This change creates temporary file using File::Temp, pass it to PDF::Reuse
and then reads it back and prints it out for plack (or CGI) to pick up.

Test secenario:

1. Home › Tools › Patron Card Creator › Manage Card Batches
2. select batch checkbox and click Export
3. select template and click Export
4. click on pdf file to download it

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-11 18:21:57 +02:00
Dobrica Pavlinusic
91bf568114 Bug 7810 - C4/Auth.pm - on plack restart session is undefined
So we shouldn't try to delete it. This produces application error
instead of redirection to login page.

I had similar problems with CGI, especially when session in browser
is still active, and one on filesystem or database is already expired.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Solved the problem when my Plack installation started acting up due to
stale cookies.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-11 18:11:52 +02:00
Chris Cormack
509d673f10 Bug 7941 : Fix version numbers in modules
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-11 17:29:38 +02:00
Katrin Fischer
21fb688276 Bug 7411: Remove diacritics from generated userid
Patch introduces a new module Text::Unaccent.

To test:
1) Add a new patron with diacritics in surname and first name, leave userid empty.
2) Save user and check the created userid has only the base characters and
diacritics have been removed correctly.
3) Create another user with the same surname and first name, check userid
is generated correctly.

Signed-off-by: Dobrica Pavlinusic <dpavlin@rot13.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-11 16:43:39 +02:00
47e4f3ed84 Talking Tech Support - Phase I - Followup - Fix Messaging Preferences
There is a flaw in C4::Members::Messaging::GetMessagingPreferences where
the system assumes that every transport will use the same letter. This
is not necessarily true. Even with the default preferences of just
'email' and 'sms', we should be able to have different letters
for each, as one has a maximum character length ( sms ) and one
does not. GetMessagingPreferences currently uses the letter code
of the last result of its query as the letter code for every transport type.

The returned data is a hashref with a key 'transport_types' that is
an array of transport_types this borrower has selected for the given
alert.

This commit modifies GetMessagingPreferences such that the the
'transport_types' array is now a hash where the name of the transport
type is now a key to the value of the letter code set for that transport
type.

It also modifies code calling GetMessagingPreferences where necessary,
and as a side benefit will correctly get the letter codes for email
and sms correctly, if they are defined differently.

http://bugs.koha-community.org/show_bug.cgi?id=4246
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

In use in production by two libraries: Middletown and Washoe
who give their sign off but don't have git to do so.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-10 17:46:58 +02:00
Ian Walls
d29efac4f3 Talking Tech Support - Phase I
Implements support for Talking Tech I-tiva phone notification for OVERDUE, PREDUE and HOLD notifications.
Overdues respect triggers as configured for the patron's branch.
Predue and Holds notifications respect patron's messaging preference choices.
A new column for phone notification is added if the TalkingTechItivaPhoneNotification system preference is turned on

Record of phone messages being sent to patrons is added to the patron's Notices
tab; notice of success or failure can be retrieved from I-tiva.

See the TalkingTech.README for installation and set-up instructions.

Aside from the control system preference, and the necessary changes to Messaging Preferences
forms to make use of phone notifications, the bulk of the code resides in external
cronjobs.

TalkingTech_itiva_outbound.pl generates the Spec C file to send to I-tiva.  Actual transmission
of the file must be handled by the system administrator.

TalkingTech_itiva_inbound.pl processes the received Results file from I-tiva.  Getting the
file from I-tiva to Koha is the job of the system administrator, as well.

Both scripts have a --help option with full documentation.

The only necessary change to core Koha behavior is in C4::Letters::EnqueueLetter.  The return
value was changed from 0 or 1 (successful addition of letter to message_queue or not), to the actual
insert ID of the letter.  This was required by the outbound script to present a unique Transaction ID
for the notice added to the patron's record (so a 'sent' or 'failed' status could be updated).  Since
the dbh and sth are not shared, and the last_insert_id() command is table-specific, this should be thread-safe.
No changes are necessary to any parts of Koha, as all usage of EnqueueLetter currently ignores the return value.

To Test:

1. Turn on TalkingTechItivaPhoneNotification system preference
2. Verify that 'phone' is now a valid notification option for patrons on both staff and OPAC side
3. Attempt to set a 'phone' preference for PREDUE or HOLD messaging; attempt should succeed
4. Set up the patron for notices to triggers:
   a. include checked out items due in a range of days, including the value set up in their messaging preferences.
   b. place several holds, some in position, others waiting for pickup, others in transit.
   c. set the patron up to have overdues, overdue by a range of days that includes the delay values for
the patrons branch and categorycode
5. Run TalkingTech_itiva_outbound.pl --type=RESERVE --type=PREOVERDUE --type=OVERDUE --outfile=/tmp/talkingtechtest.csv

The resulting talkingtechtest.csv file should include all the items due on X days (where X is the patrons' preference),
and none of the ones due in other increments.  Similarly, overdues messages should be added for each item due by a delay
value as configured; overdues of other numbers of days should be ignore.  Holds that are waiting pick up or in transit should
have messages, those still pending should not.

Messages should be added to the patron's notices tab for each issue sent.  Verify these messages exist, and all Notices
tokens are replaced with appropriate information.

Repeat, this time with 4c making use of the default branch overdue triggers, instead of branch-specific triggers.

To test the inbound script, create a CSV with rows in the format "<<Message_id>>","<<SUCCESS or FAIL>>"
Message ID should correspond to the final column of the talkingtechtest.csv file (the transaction id) for the message.

Primary Authorship: Ian Walls
Additional modifications: Kyle M Hall

http://bugs.koha-community.org/show_bug.cgi?id=4246
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

Tested and in use in production by two public libraries : Middletown
and Washoe. Both have given their sign off, but don't have git to
actually sign off.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-10 17:46:52 +02:00
295f9e2dcd Bug 6679: Fixing 26 perlcritic violations in C4/Tags.pm
Subroutine prototypes used at line XXX, column 1.  See page 194 of PBP.
(Severity: 5)

Note: Rebased on master 06/09/2012 by jcamins
Signed-off-by: Joy Nelson <joy@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-10 15:16:01 +02:00
adebfe3cc6 Bug 6679: Fixing 13 perlcritic violations in C4/Barcodes.pm
Subroutine prototypes used at line XXX, column 1.  See page 194 of PBP.
(Severity: 5)

Note: Rebased on master 06/09/2012 by jcamins
Signed-off-by: Joy Nelson <joy@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-10 15:06:33 +02:00
9f7186afd3 Bug 8005 - Lost item is not anonymized when checked in
This bug is caused by the subroutine C4::Circulation::LostItem
not passing the privacy parameter when calling
C4::Circulation::MarkIssueReturned.

This issue is actually anonymized when the item is marked as lost,
not when the item is checked in.

Note, even if the issue is anonymized, the fine charged for lost
items still contains a description of the lost item, which is
required for the ability to forgive fees for lost items that
are later found.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-10 12:34:08 +02:00
Fridolyn SOMERS
4db3ffed91 BUG5312 XHTML correction in authority summary
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-10 11:17:16 +02:00
Dobrica Pavlinusic
c6f9d4cdc7 Bug 7872 - C4::Items::GetItemsInfo should use C4::Koha instead of SQL queries directly
This simplifies code, and has nice side-effect that memoize of
C4::Koha functions will be more effective.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-10 11:08:14 +02:00
1f5bfbd0aa Bug 8062 [SIGNED-OFF] Perl module dependency Template::Plugin::HtmlToText
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-09 19:33:30 +02:00
Matthias Meusburger
7f957077dd Bug 5337: EAN management : Adds ean for various searches
- in various acquisition pages and serials home
  - in database : biblioitems.ean
  - adds ean and its mapping in default english bibliographic framework
  - adds ean mapping in default french bibliographic framework
  - ean search is not enabled for MARC21

The required mapping between the ean marc field and the biblioitems.ean
database field will be automatically added on an existing unimarc installation.

However, if you already have records with ean, you will have to
run misc/batchRebuildBiblioTables.pl to populate biblioitems.ean

Signed-off-by: jmbroust <jean-manuel.broust@univ-lyon2.fr>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Passed QA at second run. Removed a merge marker only.
2012-06-09 18:26:34 +02:00
2aff4b467b Bug 8167 - Add syspref allow a choice of blocking, non-blocking, or do nothing when issuing lost items.
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Works as advertised.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-09 16:21:05 +02:00
d7a7aaad7b Bug 7805: Exposing the new list permissions in opac and staff
This report builds on 7310.
Had to correct some lines in ModShelf and AddShelf as well in order to
save 0 values correctly for the permission columns.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-09 13:19:13 +02:00
Jared Camins-Esakov
841f8f4d63 Bug 8092 follow-up: Add optional dependency on CHI
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-09 13:08:18 +02:00
Jonathan Druart
b76ab0ec66 Bug 8196: FIX for Bug 5742: All extended attributes are shown when editing a patron
Test scenario:

1. make sure that you have ExtendedPatronAttributes enabled
2. open /cgi-bin/koha/members/memberentry.pl?op=add;categorycode=S0
   (you might need to modify categorycode according to your local config)
3. verify that you get all extended patron attributes in form

Signed-off-by: Dobrica Pavlinusic <dpavlin@rot13.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-09 12:37:06 +02:00
Galen Charlton
7a0f991764 Bug 7818: use Title-cover for title phrase weighting
This is offerred as a compromise alternative to creating
a new Title-rel index to avoid having the statement of
responsiblity unduly affect field weight when using the DOM
filter and MARC21 -- the problem with creating a Title-rel index
is that it would *force* reindexing upon upgrade.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-09 11:44:11 +02:00
Colin Campbell
6dda8a6379 Bug 8176 [SIGNED-OFF] Assign an intial value to $sqlwhere
warnings in log because of undefined value in
string concatenation
variable should be initialized to empty string rather
than left undefined

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Removes a warning in logs

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-05 17:03:51 +02:00
Colin Campbell
dbd2713ff0 Bug 3638 : Captured Holds may need to generate a transfer
If a discharged item is captured for a hold at another branch
the selfcheck should generate a branchtransfer for it.
This was complicated as the checkin routine was setting its own
location from a field not set in many scm machines (e.g. 3M)
also in ILS::Transaction the test for location was incorrect
assuming that an empty string or undefined was a valid location

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-05 16:11:18 +02:00
Colin Campbell
0006fed162 Bug 3638 Self Check Should Capture Hold Items
Shelf Check was receiving messages saying item was wanted
for a hold but the item was discharged to the shelf
not associated with the hold or transited to
the pickup location. The message was also being sent
on discharge of items when a suitable item had already
been captured.
Checkin now associates the item with the hold and sets
the appropriate data for a correct checkin response

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-06-05 16:11:17 +02:00
Jared Camins-Esakov
fab56d3257 Bug 7847: OPAC search dies with Plack
Due to a dependency cycle between C4::Search and C4::Items, searches
in the OPAC die spectacularly under Plack. This counter-patch extends
dpavlin's solution and replaces use with require for C4::Search in
C4::Items and for C4::Items in C4::Search.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-05 15:46:20 +02:00
Liz Rea
e4c1e89691 Bug 8129 - Quickslips not printing
Implemented from the suggestions attached to the bug.

To test:
Check out a book to a patron
Click print -> quick slip

Slip should show only today's checkouts.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-06-05 15:29:43 +02:00
88b6e0f90a Bug 4330 : Adding copyright headers and fixing FSF addresses
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-28 17:54:25 +02:00
Srdjan
722ca127dd bug_8056: sorted out slip print calls
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
preference works as expected.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Tested that CircAutoPrintQuickSlip clear the screen still works well
2012-05-28 13:52:39 +02:00
Dobrica Pavlinusic
5baa35ad3b Bug 7846 - get_batch_summary massive speedup
current code is using DISTINCT and another SQL query which can be replaced with GROUP BY
for massive speedup. In our case, generating Manage Batches screen DBI time decreased
from 24.762 s to 0.147 s

Aside from correct usage of relational database, this change also cleans up code nicely.

This change removed semi-columns from SQL query which broke Manage Patron batches.

Test scenario:

1. open Manage Batches screen and take note of time needed to generate it
2. apply this patch
3. reload page and check page genration time

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-25 17:47:14 +02:00
D Ruth Bavousett
b023de813b Bug 8009: Item descriptive data not populated on pay.pl
GetBorNotifyAcctRecord was not populating the {title} element of the
hash, which pay.tt will use.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-05-25 17:26:02 +02:00
285f06e394 Bug 7112 - Having two prices in 020$c causes basket creation to fail from staged marc import
The root problem here is that the price is being pulled from the MARC record
and is then run through Number::Format::unformat_number. This routine is
really being misused, and should only be used to reverse the effects of
Number::Format on a number string. We are apparently using it to strip
out currency characters and the like.

Number::Format::unformat_number will choke if there is more than one period (.)
in the price field. MARC standards do not limit this field to a single period,
so unless there is only one period, we should skip number unformatting.
Examples of that break unformat_number include '18.95 (U.S.)', and
'$5.99 ($7.75 CAN)', both of which are perfectly valid.

This commit adds the function MungeMarcPrice that will better handle
find a real price value in a given price field. It does a very good
job at finding a price in any currency format, and attempts to find
a price in whichever currency is active before falling back to
the first valid price it can find.

The variable $price may fail to have an actual price, in which case
the price then defaults to '0.00', which would be rarely if ever the
correct price. To combat this, I have added highlighting to any
price in the Order Details table that begins with 0 ( i.e. '0.00' ).

Also, fixed the incomplete table footer, adding a new td with a
span of 3 to fill in the nonexistant cells.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-05-24 15:59:21 +02:00
6cb7dadc59 Bug 8128 - [SIGNED-OFF]Followup - Change default value for cache_expiry
Change default value for cache_expiry from 0 to 300.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-24 15:48:42 +02:00
65129084ef Bug 8128 - can't seem to run new sql reports
Reports cannot be saved because saved_sql.cache_expiry cannot be null.
Fixed by setting default to 0 if a cache_expiry value is not
passed into the function.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
passes t xt

Verified original bug, patch resolves issue.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-24 15:48:37 +02:00
Chris Nighswonger
ef064dca6d Bug 7977: Adding Daily Quotes Tests to Koha.t test suite; also fixing sort order on quote selection SQL
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Mason James <mtj@kohaaloha.com>
2012-05-24 14:14:45 +02:00
Chris Nighswonger
eb7e930eea Bug 7977: Quote-of-the-day (QOTD) Feature for OPAC
This feature will add the option of displaying a select quote
for the day on the OPAC homepage. It will include the addition
of a QOTD editor in the tools section of the staff interface
which will allow the addition, editing, and deletion of quotes.
A single system preference will enable/disable the display of
the QOTD on the OPAC homepage. A new granular permission will
also be added to conrol user access to the QOTD editor tool.

Possible extentions to this would be code to allow alternate
quote selection algorithms to be added to vary how the currently
displayed quote is selected from the table of quotes.

This patch is a squash of the following work:

--Adding quotes table to kohastructure.sql and updatedatabase.pl

Note: This patch is intended for a MySQL based installation only.
That means that it includes backticks because that is what is required
at this point in history to install Koha correctly on a MySQL based
installation.

Feel free to port this over to the Pg stuff in the data/Pg directory.

--Adding system preference to control display of QOTD on OPAC main page
--Adding sample quote data

These quotes are taken from various US presidents. I'm not sure these
are applicable to the rest of the world, so I'm leaving it to translators
and others to add sample quote data for other languages.

--Adding edit_quotes user permissions
--Squash with other db related patches in this series
--Adding quotes editor pages to tools
--Adding QOTD editor link to tools homepage
--Integration of DataTables into QOTD Editor
--Impleminting jEditable into the quote editor
--Adding delete and add option to editor
--Fixing OPAC display so the QOTD div does not show if no quote is returned
--Also removing useless code from tools/quotes.pl
--Adding spans around QOTD foo in opac-main.tt
--Also fixing quote selection logic to accomodate the possibility of
    a single quote in the db a litte better.
--Changing timestamp column header to a more user-friendly 'Last Displayed'
--Fixing bug in quote selection logic. This bug caused a situation where
    when the table had only a single quote with an id greater than 1 in it,
    no quote would be selected.
--Fixing up sorting in the quote editor table. --jcamins
--Adding span element to quote separator --jcamins
--Overriding the default empty table message supplied by datatables-strings.inc
--Adds missing page heading
--Adds beginning of click-for-help elements.
--Refactors delete functionality to allow selecting of quotes to delete,
    enabling multi-delete.
--Refactors saving added quote functionality so that striking <Enter>
    saves the new quote.
--Refactors canceling aded quote functionality so that striking <Esc>
    cancels the new quote.
--Removing debug console.log statements
--Implementng the YUI button widget/toolbar used on other pages.
--Adds a 5px radius to all YUI buttons to bring them into
    conformity with the general trend toward rounded corners
--Fixes capitalization in quote editor
--Implements improvements suggested by jcamins and oleonard
--Adds DataTables Plugin dataTables.fnReloadAjax.js

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Mason James <mtj@kohaaloha.com>
2012-05-24 14:14:05 +02:00
Chris Nighswonger
4953b57fcd Bug 7977: Adding DateTime::Format::MySQL as a core dependency
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Mason James <mtj@kohaaloha.com>
2012-05-24 14:14:03 +02:00
d6c3cb2934 Bug 7757 - Edit basket vendor after it has been created
Signed-off-by: mveron <veron@veron.ch>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-24 13:35:52 +02:00
f9352e89ac Bug 3521 - Items table in catalogue/detail.pl and cataloguing/additem.pl is sorted nonsensically
Based on patch submitted by Ian Walls

Items were sorted by branch, then date accessioned, in GetItemsInfo.  While this can be
helpful in some circumstances, more often it is useful for items to be sorted first by
their enumchron (volume/issue, if applicable) then by their copy number.  This patch changes the
sort on GetItemsInfo to branch, enumcrhon, copynumber then date accessioned.

As sorting on copynumber will be incorrect based on standard sorting ( e.g. 1, 10, 2, 20 ),
the copynumber is now padded with leading zeros to correct the sorting ( e.g. 01, 02, 10 20 ).
This function appears to be a standard SQL function and not a mysql-ism. I have verfified
that is available in MySQL, Postgres, and Oracle.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Passed t xt

Item sorts appear to be correct to me based on the rubric of branch, enumchron, copynumber, then date accessioned.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-22 23:18:40 +02:00
Meenakshi.R
804b073a82 Bug 7704 -Fix bug that prevent items to be returned to home branch, when independentbranches and canreservefromotherbranch sysprefs are both turned on.
Before this fix, when attempt to checkin the item at the other branch is made, system disallows checkin. Now (with this fix) the item is checked in and an automatic transfer to the home branch is setup.

How to test:
Case 1
Set independentbranches to "Prevent" and canreservefromotherbranch to "allow". Set up an item in branch A and a member in branch A and another member in branch B.

Checkout the item to member in branch A.
Place a reserve on the item on behalf of member in branch B.
Return the item in branch A. Check if a transfer is setup to branch B.
Checkout the item to the member in branch B and check it back in. Checkin should be allowed and at this point an automatic return to branch A (the home library) should be setup.

Case 2
Set independentbranches to "Prevent" and canreservefromotherbranch to "not allow". In this case item checkin should not be allowed in branch B.

Other cases
Set independentbranches to "Not Prevent". Here items should be returned automatically to home branch, the value in canreservefromotherbranch has no impact.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-21 18:43:13 +02:00
Julian Maurice
2338d02e9e Bug 7175: Allow to choose which items to receive
If AcqCreateItem=ordering, when you receive an order, you now have a
list of all created items and checkboxes that permit you to choose which
items you want to receive.
A 'Edit' link open additem.pl page in a popup to allow you edit the
items before receiving them (popup is automatically closed after
modification, and items table is automatically updated)
If quantity is set manually in the text box, the appropriate number of
checkbox are checked from top to bottom and a warning shows up if
quantity is greater than order quantity

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-21 17:46:07 +02:00
Chris Hall
03fee7a590 Bug 7248 Added caching support and and moved Caching into Koha namespace
Unit test for Koha/Cache.pm (which includes Koha/Cache/Memcached.pm)

Note that in order to test Koha::Cache you must export the environment variable
MEMCACHED_SERVERS. For example:
$ export MEMCACHED_SERVERS=127.0.0.1:11211

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
2012-05-15 18:05:55 +02:00
Jonathan Druart
a6c6946dfc But 5742: Batch edit patrons
new permission : edit_patrons

Plan test:
- Go on the page: tools > Patrons modification (modborrowers.pl)
- Enter a list of cardnumbers (or use a file)
- Modify one or more patron's fields (you can modify surname, firstname,
branchname, category, sort1, sort2, date of enrollment, date of expiry,
debarred date, debarred comment and borrower note)
- Save
- Check on the result page (or in database for non-displayed fields) if
modifications have been correctly made.
- re test with different attributes. For each attributes filled with an
authorized value category, you can select a value in a drop-down list.
Else it's a free input text. If your attribute is filled with a patron
category, the modification performs only on patrons belonging to this
category
- Save
- Verify on the result page

Signed-off-by: Mathilde Formery <mathilde.formery@ville-nimes.fr>
Signed-off-by: Stéphane Delaye <stephane.delaye@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-15 17:44:19 +02:00
Stéphane Delaune
ab35e1f5f7 Bug 8041: lost items are no longer available in search
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-15 16:44:50 +02:00
377b2fd673 Bug 7722 - Insidious problem with searching
I cannot find the root cause of this issue, but multiple libraries that I am aware of have problems searching on particular search terms ( and never the same terms at the same library ). The error they get when they trigger this problem is:

Tag "" is not a valid tag. at /home/koha/kohaclone/C4/Biblio.pm line 1849

Something somewhere is adding empty keys to C4::Context->marcfromkohafield, I think it may have something to do with the analytics feature that was added.

In the while loop for TransformKohaToMarc, there is a line

next unless my $dtm = $db_to_marc->{''}->{$name};

I don't think it's working.
If I dump $dtm, for each search, I see the dump twice.
It looks like this:
$VAR1 = [
           '952',
           'w'
         ];
 $VAR1 = [];
I think the second time, when it is empty is what's breaking this.
The next never fails because even though it is empty, it is still a valid arrayref.

The solution I have some up with is to skip over the elements where the arrayref is empty.

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-15 16:08:51 +02:00
b04899bafd Bug 7641 - Followup - Suspend Until not set on by suspend button.
For request.pl, there are two ways to suspend a reserve, either
by using the 'suspend' button for an individual reserve, or by
using the 'Update hold(s)' button with suspend until dates set.

If the 'suspend' button is used, any date in the 'suspend until'
field is ignored. This commit fixes this issue.

  * Add suspend_until date to suspend button link via jquery
  * Add optional date to ToggleSuspend()
  * Add KohaDates plugin where necessary

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
passes tests, tested:
* suspend all holds from circ.pl
* suspend one hold from circ.pl
* suspend all holds from moremember.pl
* suspend one hold from moremember.pl
   --- NOTE: clicking suspend all holds without setting a date will mean the holds must be manually unsuspended. I'm not sure this is intentional?
* suspend a specific hold using the in-table button on reserves
* suspend a specific hold using the "update hold" button

500 error is gone.

http://bugs.koha-community.org/show_bug.cgi?id=8084
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-15 15:48:12 +02:00
Marc Veron
fbc309bdde Bug 8019 - Preserve language choice between Browser sessions
Language choice in Opac an Staff client was not preserved between Browser sessions.
Changed expiry date of cookie 'KohaOpacLanguage' from '' (= expire after session) to '+3y' (3 years from now)

To test:
- In a multilingual Koha istallation, choose a language.
- Log out, close all Browser instances. Go to login screen. Login should show up in same language as before.
- Repeat with other languages.

	modified:   C4/Templates.pm

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-14 18:37:56 +02:00
Ian Walls
f61a961718 Bug 5549 followup: fix suspension in days further
Grace periods are now measured in the same unit as the loan.

Suspension in days works explicitly in days, independent of unit.  Since
the 'deltadays' duration is actually the duration, possibly in hours, between
when the material was due and when it's returned, we need to take the finedays
factor (how many days per unit overdue) and multiple it by 24 if the unit is
hourly.

Example: a 1 hour loan material with 1 hour grace period and finedays = 2,
returned 2 hours late would give 4 days suspension

To test:
1.  create some circ rules:
  A) an hourly loan rule with suspension in days
  B) an hourly loan rule with suspension in days and a grace period
  C) a daily loan rule with suspension in days
  D) a daily loan rule with suspension in days and a grace period
2.  Check out 2 materials under each rule.  We'll call these A1-D1
and A2-D2 (to associate with the rule)
3.  Return A1-D1 late, but within the grace period for B1 and D1 as appropriate
4.  Return A2-D2 late, after the grace periods

You should get:

A1: suspended for (#hours late) * (#suspensionindays) days
B1: not suspended
C1: suspended for (#days late) * (#suspensionindays) days
D1: not suspended

A2: suspended for (#hours late) * (#suspensionindays) days
B2: suspended for (#hours late) * (#suspensionindays) days
C2: suspended for (#days late) * (#suspensionindays) days
D2: suspended for (#days late) * (#suspensionindays) days

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-14 18:15:54 +02:00
Paul Poulain
a598b10061 Merge remote-tracking branch 'origin/new/bug_7178' 2012-05-14 16:18:46 +02:00
Julian Maurice
7a81b89357 Bug 7178: Follow-up Improve order item creation
Move SQL code from Perl script to Perl module
Replace SHOW COLUMNS by $dbh->column_info()
Update total on neworderempty.pl when adding or deleting items

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested ok for ordering and receiving items.
Total updated correctly.

Note: There are lots of errors in the logs before and after applying
the patch. A follow up is needed.
2012-05-14 16:16:13 +02:00
Colin Campbell
78938e685c Bug 6335 Set branch in sip session
The server returns its branch as the institution in the config file
However in transactions it will default to the homebranch of the
sip user which may not be consistent with that. Needs to set branch
in the session if there is a value in config otherwise statistics and
behaviour can be wrong (esp in discharge)

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-11 11:15:06 +02:00
Chris Hall
24213703d5 Bug 7249 : Allow reports to be called through a restful interface
Hands back JSON, and supports caching

Squashed commit of the following:

commit 5c93506079738b9a13139417d3a0734289a4b007
Author: Chris Hall <chrish@catalyst.net.nz>
Date:   Mon Nov 21 15:41:14 2011 +1300

    Fixed bugs when creating reports, added more user friendly input and
    feedback

commit c62430bb358ee4af6ee5331b4d3a2ed67f723032
Author: Chris Hall <chrish@catalyst.net.nz>
Date:   Mon Nov 21 12:00:27 2011 +1300

    Added caching to intranet report webservices, added cache expiry and public
    options to reports

commit 2d89f0777d95b26bf08635782070b6367d0698f3
Author: Chris Cormack <chris@bigballofwax.co.nz>
Date:   Wed Nov 9 20:29:26 2011 +1300

    Working on caching for services

commit e0511f180cebd81747858ad776433fe3a1cf6854
Author: Chris Cormack <chris@bigballofwax.co.nz>
Date:   Wed Nov 9 08:28:26 2011 +1300

    Starting work on webservices

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Patch includes database update adding 2 new fields to the saved_sql table.

1) Checked that adding/deleting/editing of sql reports still works and new
fields are correctly saved to the database.

2) The saved reports page now lists the new fields correctly.

3) Checking URLs with JSON output
- if report is not public http://localhost/cgi-bin/koha/svc/report?id=2 fails,
but http://localhost:8080/cgi-bin/koha/svc/report?id=2 works
- if report is public, both links work

4) Checking results are cached
Created a report listing my borrowers, setting caching to 60 seconds and
added new borrowers before doing following tests.
- URL doesn't show new borrower immediately - correct
- Turning off the usecache system preference updates data - correct
- Restarting memcached updates data '/etc/init.d/memcached restart' - correct
- Waiting until cache time runs out updates data - correct

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Retested the feature and renewing my sign-off.

There are some things that should be noted:
- currently there is a hardcoded limit of 10 results for the reports webservice
- reports with runtime parameters are currently not supported
2012-05-11 10:26:29 +02:00
Adrien Saurat
1ea7afdb57 Bug 8025: corrects the return of a zero value for authorised values
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-07 22:00:09 +02:00
Colin Campbell
49ba0df9e7 Fix typo in patch for bug 7849
$type declared twice effectively throwing away the returned value

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-30 14:12:43 +02:00
Elliott Davis
d06c231982 bug 7849 Instant Fine Calculation\n Adds functionality of calculate fines instantly. This is very important for Hourly loans becuase of a loophole from the cron.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-19 17:52:18 +02:00
Paul Poulain
90d13965d3 Revert "Bug 7785: Remove unused function columns() which uses a MySQLism."
This reverts commit 1c8df08aea.

See:
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=7785#c5
and
http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=7975

This patch broke tools/import_borrowers.pl

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-19 10:21:58 +02:00
Katrin Fischer
bd1d643fad Bug 7958 - Batch Item Delete Fails
Adding back "use C4::Search;" in Items.pm fixes the problem.

I think this is probably related to the denesting efforts.

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-18 17:09:50 +02:00
Paul Poulain
367c4fb881 Merge remote-tracking branch 'origin/new/bug_7016' 2012-04-18 16:54:44 +02:00
Galen Charlton
dc1d934c8f bug 7016 further followup: clarify return of GetItemnumbersForBiblio
New function was actually returning an arrayref, so made
perldoc and function usage consistent.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-18 16:48:30 +02:00
Ian Walls
f84671dce9 Bug 7016 Followup: Add new GetItemnumberForBiblio subroutine
Adds a new subroutine in C4::Items, GetItemnumbersForBiblio, which takes a
single biblionumber, and returns an array of all the corresponding itemnumbers.

This patch also replaces the usage of get_itemnumbers_of in C4::Reserves::CanBookBeReserved
with this new subroutine, as the output is more consistent with what we were
lookng for (this is what fixes the bug issue).

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2012-04-18 16:48:25 +02:00
Jonathan Druart
763d69732e Bug 7756: FIX send email for late orders
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
- sending claim mails works now
- claim counter is not increased when vendor has no email address

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-12 16:50:27 +02:00
Katrin Fischer
47fac215af Bug 7935: Introduce sys pref to control 'browse results' in OPAC
Patch introduces a new system preference "OpacBrowseResults" to control
the feature for browsing and paging through results shown on top of the
left menu on detail pages in OPAC.

Preference is activated by default and can be deactivated using the
system preference.

To test:
 - Check database update works correctly
 - Check that browsing and paging still works with after database update
 - Deactivate the feature by setting 'OpacBrowseResults' to 'Disable'
 - Check the feature does no longer show up in OPAC
 - Check that a new installation also has the system preference with correct default

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-04-10 15:26:37 +02:00
Paul Poulain
5d9c7dfe04 Bug 2505 follow-up: C4::Ris not ready for use strict;use warnings;
The patch pushed a few hours ago is a good 1st step in the right direction.
however, many things are still to do to have the script OK with strict/warning, so commenting them

Errors if you have them:

Global symbol "$utf" requires explicit package name at C4/Ris.pm line 111.
Global symbol "$intype" requires explicit package name at C4/Ris.pm line 350.
Global symbol "$intype" requires explicit package name at C4/Ris.pm line 350.
Global symbol "$intype" requires explicit package name at C4/Ris.pm line 353.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 363.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 389.
Global symbol "$intype" requires explicit package name at C4/Ris.pm line 431.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 438.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 439.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 440.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 441.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 442.
Global symbol "$intype" requires explicit package name at C4/Ris.pm line 443.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 464.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 465.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 466.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 479.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 480.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 483.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 484.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 485.
Global symbol "$intype" requires explicit package name at C4/Ris.pm line 501.
Global symbol "$intype" requires explicit package name at C4/Ris.pm line 505.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 527.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 530.
Global symbol "$intype" requires explicit package name at C4/Ris.pm line 539.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 540.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 556.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 557.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 561.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 562.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 578.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 579.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 583.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 584.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 613.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 614.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 629.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 630.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 645.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 646.
Global symbol "$intype" requires explicit package name at C4/Ris.pm line 674.
Global symbol "$protoyear" requires explicit package name at C4/Ris.pm line 706.
Global symbol "$protoyear" requires explicit package name at C4/Ris.pm line 707.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 707.
Global symbol "$protoyear" requires explicit package name at C4/Ris.pm line 710.
Global symbol "$protoyear" requires explicit package name at C4/Ris.pm line 715.
Global symbol "$protoyear" requires explicit package name at C4/Ris.pm line 721.
Global symbol "$protoyear" requires explicit package name at C4/Ris.pm line 725.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 729.
Global symbol "$protoyear" requires explicit package name at C4/Ris.pm line 730.
Global symbol "$protoyear" requires explicit package name at C4/Ris.pm line 730.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 731.
Global symbol "$protoyear" requires explicit package name at C4/Ris.pm line 734.
Global symbol "$protoyear" requires explicit package name at C4/Ris.pm line 735.
Global symbol "$protoyear" requires explicit package name at C4/Ris.pm line 738.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 772.
Global symbol "@kwsubfields" requires explicit package name at C4/Ris.pm line 776.
Global symbol "@kwsubfields" requires explicit package name at C4/Ris.pm line 779.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 789.
Global symbol "@notesubfields" requires explicit package name at C4/Ris.pm line 892.
Global symbol "@notesubfields" requires explicit package name at C4/Ris.pm line 895.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 901.
Global symbol "$marcprint" requires explicit package name at C4/Ris.pm line 935.
Global symbol "$utf" requires explicit package name at C4/Ris.pm line 962.
Global symbol "$uniout" requires explicit package name at C4/Ris.pm line 966.
C4/Ris.pm had compilation errors.
2012-04-10 15:08:47 +02:00
7eef4c8c70 Bug 5668 - Star ratings in the opac
patch applied to commit eb3dc448d2

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

Turned on star ratings in the opac on details and results
Searched for titles - saw the stars
Clicked on a title
Clicked on the stars
Clicked on the stars to change my rating
Logged out
Tried to click on stars
Logged in as different user
Rated items that were rated already and saw average change
Changed preference to show only on detail and repeated tests
Changed preference to now show stars

All above tests passed. Signing off.

Rebased 3-19-12 by Ian Walls

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-10 14:40:49 +02:00
Julian Maurice
680e92115f Bug 7807: [SIGNED-OFF] Fix call to GetSuggestionFromBiblionumber
This sub only takes one parameter

signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-10 11:57:29 +02:00
beb0678bfc Bug 2505 - enable Perl warnings in all modules and scripts
enable warnings, and correct perlcritic's 'Loop iterator is not lexical' errors in C4/Ris.pm

	modified:   C4/Ris.pm

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-10 11:29:33 +02:00
Dobrica Pavlinusic
abffe961f7 Bug 7847 - OPAC search dies with plack
This bug was uncovered by @mglavica during HackFest in Marseille
It also showed it's ugly head during my plack presentation there.

Following chang removes circural dependecy introduced by commit
b65efdaacaf77fb53fee479da7f2e990ba0adeed which is part of Bug 6027

Signed-off-by: Alex Arnaud <alex.arnaud@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-06 18:14:27 +02:00
08cee791a7 Bug 7758 - Koha allowing LOST items to check out without alert
Adds a confirmation alert when issuing an item that has
been marked as lost.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
passes tests, works as advertiesd

Tested:
- checking out an item that is marked lost performs all usual lost operations
- checking out an item that is marked lost prompts for confirmation

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-06 18:08:17 +02:00
Magnus Enger
44ab1c531d Bug 7445 - Clicking on a tag gives "Language ... does not exist"
To test:
- Syspref QueryStemming = Try
- Install Norwegian bokmål:
  cd misc/translator/
  perl translate install nb-NO
- Go to Home › Administration › System Preferences > I18N/L10N
  and enable "Norsk bokmål(nb-NO)" for opaclanguages as well as
  setting opaclanguagesdisplay = Allow
- Make sure you have selected "Norsk bokmål" as the active language
  in the OPAC
- Find a record that has a tag (which does not contain any digits)
- Click on the tag and see that you get the error in the title of
  this bug
- Apply the patch
- Click on the tag again and the error should be gone

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Easy to test with a great test plan. Works nicely.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-06 17:49:35 +02:00
Srdjan
12ff7355bb bug_7613: OCLC Connexion gateway
svc/import_bib:
* takes POST request with parameters in url and MARC XML as DATA
* pushes MARC XML to an impoort bach queue of type 'webservice'
* returns status and imported record XML
* is a drop-in replacement for svc/new_bib

misc/cronjobs/import_webservice_batch.pl:
* a cron job for processing impoort bach queues of type 'webservice'
* batches can also be processed through the UI

misc/bin/connexion_import_daemon.pl:
* a daemon that listens for OCLC Connexion requests and is compliant
  with OCLC Gateway spec
* takes request with MARC XML
* takes import batch params from a config file and forwards the lot to
  svc/import_bib
* returns status

ImportBatches:
* Added new import batch type of 'webservice'
* Changed interface to AddImportBatch() - now it takes a hashref
* Replaced batch_type = 'batch' with
  batch_type IN ( 'batch', 'webservice' ) in some SELECTs

Signed-off-by: MJ Ray <mjr@phonecoop.coop>
2012-04-06 17:26:20 +02:00
Paul Poulain
ef038b258e Merge remote-tracking branch 'origin/new/bug_7310' 2012-04-06 16:02:11 +02:00
a334fec190 7368 Followup for indentation in VirtualShelves.pm
Corrects some further indentation issues, removes last tab from file.
Related to report 7310.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
2012-04-06 16:01:38 +02:00
Marc Balmer
1c8df08aea Bug 7785: Remove unused function columns() which uses a MySQLism.
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-05 10:31:49 +02:00
Colin Campbell
ce046f9a73 Stop unnecessary warnings in get_language
Refactor code to be more idiomatic and clarify its intention was testing
undef against languages causing log warn was creating and assigning to
unnecessary variables calling accept_language with an undef is an
expensive way to get undef returned to the caller test we are asking it
a meabingful question use any rather than first ( we dont care about
firstness it should be unique anyway but it obscures the meaning of the
test ) split takes a pattern not a string

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

Having put my hands recently in this part of Koha code, I can confirm
that this patch fix log warnings, and add clarity and conciseness.

http://bugs.koha-community.org/show_bug.cgi?id=7874
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-04 18:33:11 +02:00
Paul Poulain
2bc542789f Merge remote-tracking branch 'origin/new/bug_7284' 2012-04-04 18:18:26 +02:00
MJ Ray
9d65f66536 bug 7284: fix package build problem, move BEGIN into new
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-04-04 18:18:12 +02:00
Dobrica Pavlinusic
d0b2d72e0b Bug 7766 - C4/Auth.pm: emit DEBUG output to STDERR
writing to STDOUT breaks plack when running with DEBUG=1

Signed-off-by: Alex Arnaud <alex.arnaud@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-04 18:09:24 +02:00
Jonathan Druart
d76dbace5e Bug 7291: Adds new field aqbooksellers.deliverytime
New field deliverytime in aqbooksellers table. It is an estimated
delivery time for orders (in days).
You can set this delay on the supplier modification page.
It is used in the late orders search.

The order estimated date is the aqbasket.closedate +
aqbooksellers.deliverytime

If you set a delay, the query check if closedate <= today - delay

If you set a "delivery time from" and a "delivery time to", the query check if
$delivery_time_from <= aqbooksellers.deliverytime is not NULL and if
closedate + deliverytime >= $delivery_time_to
if there is not a time_to then $delivery_time_to = the current date.
2012-04-03 18:19:46 +02:00
Colin Campbell
32c5ef613d Use hour or day deltas to calculate overdue durations
If durations are calculated by subtraction they will use units
larger than those we care about and these are not convertable
to the smaller units we are attempting to enumerate
Use the appropriate delta methods to calculate theee fines

Adds a separate hours_between method to calendar
This should strictly be checking opening hours (of which
closed days are a special case) of the relevant branch
These need adding to branches

http://bugs.koha-community.org/show_bug.cgi?id=7852
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>

QA comment: renamed "days_minus_grace" variable to "units_minus_grace"
Also added POD to _get_chargeable_units

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-03 17:59:56 +02:00
Dobrica Pavlinusic
574f46fb19 Bug 7821 - fix C4::Templates::_current_language
Bareword "C4::Templates::_current_language" not allowed while "strict subs" in use at /home/oleonard/kohaclone/C4/XSLT.pm line 175.

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

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-04-02 11:33:17 +02:00
Paul Poulain
f9207da8f2 bug 7821 follow-up: escaping {} in regexp 2012-03-29 17:23:50 +02:00
Dobrica Pavlinusic
f91bd36399 Bug 7821 - {langcode} will be replaced with current interface language
This makes bug 4032 support multi-language Koha installation which is important
for some of Koha users.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
1) After update XSLT system preferences are set to 'default'. All views
(OPAC and staff, results and detail page) work and switching languages
selects the correct translated file.

2) Leaving empty works and normal views are used.

3) Putting in a single URL without placeholder works.

4) Putting in a URL with placeholder works. Created local directories
have to match the language codes.

NOTE: In order to make the URLs and patchs work, the Utils file needs to be
copied too.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-29 17:05:12 +02:00
Stéphane Delaune
df0a6a71d7 Bug 4032 XSLT systempreference takes a path to file rather than YesNo
Signed-off-by: Marijana Glavica <mglavica@ffzg.hr>

I am signing it off because it doesn't break anything and I will report
another bug for language issues described in my previous comment.

Removed MySQLism backquotes
2012-03-29 16:58:55 +02:00
Paul Poulain
0a44448bfb bug 7641 follow-up: remove some unconditionnal warns 2012-03-29 15:10:34 +02:00
f446b3d03d Bug 7641: Suspend Reserves
Adds the ability to suspend reserves. The new system preference
AutoResumeSuspendedHolds enables the ability to set a date for
a suspended hold to automatically be resumed.

When a hold is suspended, it will continue to increase in priority
as the holds above it are fulfilled. If the first holds in line
to be filled are suspended, the first non-suspened hold in line
will be used when an item can fulfill a hold that has been placed.

http://bugs.koha-community.org/show_bug.cgi?id=7641
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

Tested with the preference on and off:
1. placed several holds in the staff client
2. suspended some with a date
3. suspended some without a date
4. triggered hold message by checking in for hold with suspensions
5. the suspended hold was skipped as it should be
6. tested suspending holds in the OPAC w and w/out dates
7. ran the cron to clear suspensions with dates

All the above tests worked as expected. Signing off.
2012-03-29 14:37:49 +02:00
Jared Camins-Esakov
98c59fc357 Bug 7701: Error when sending serial alerts
Probably due to bug 6875, C4::Letters is no longer used by C4::Serials, so that
when SendAlerts is called (exactly when this happens is a mystery to me), you
will get an error. Adding a "require C4::Letters;" and prefixing SendAlerts to
C4::Letters:: should fix it.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Patch fixes the perl error. Steps to reproduce:

1) Create a subscription and set patron notification to "Routling list" -
this is necessary, so that a link to email notifications shows up in the OPAC.
2) Search for the serial record in the OPAC and click on the more details
view from the subscriptions tab. Subscribe to email notifications.
3) Go back into the serials module and receive and issue for the serial.
Before the patch a nasty perl error will be shown, after the patch
receiving works.

I couldn't confirm that the email was sent out with my setup, but this patch
certainly fixes serial receive.

[Update 2011-02-29] Fixed the typo and retested. Looks good, but couldn't check
if the mail was actually sent.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-29 11:13:04 +02:00
Jared Camins-Esakov
937480abe0 Bug 7617: Sort authority results by authid
Add the option of sorting authority search results by authid, and instruct the
FirstMatch and LastMatch linkers to use that sort order rather than the default
search order.

To test:
1. Install new Zebra authorities config
    etc/zebradb/marc_defs/marc21/authorities/authority-koha-indexdefs.xml,
    etc/zebradb/marc_defs/marc21/authorities/authority-zebra-indexdefs.xsl,
    etc/zebradb/marc_defs/marc21/authorities/record.abs, and
    etc/zebradb/marc_defs/unimarc/authorities/record.abs
2. Reindex authorities in Zebra
3. Set LinkerModule to FirstMatch or LastMatch
4. Add two identical authority records, and a bib record with a heading that
   matches them
5. Run misc/link_bibs_to_authorities.pl on that record
6. Confirm that the authid that's been inserted into subfield $9 of that
   heading is the first, if you selected FirstMatch, or last if you selected
   LastMatch

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
I followed the test plan and checked that for "Last match" and "First match"
the correct authority was selected and linked to the record.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-29 11:04:58 +02:00
Paul Poulain
0486d0c6b7 Merge remote-tracking branch 'origin/new/bug_6199' 2012-03-28 17:54:55 +02:00
Robin Sheat
b96c8b7ffa Bug 6199 - allow bulkmarkimport.pl to remove duplicate barcodes
This adds the -dedupbarcode option that allows bulkmarkimport to erase
a barcode but keep the item of any items it finds with duplicate
barcodes.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-28 17:30:54 +02:00
Paul Poulain
8271673722 bug 7470 follow-up, fix POD doc 2012-03-26 17:53:28 +02:00
Dobrica Pavlinusic
5ed65ad59f Bug 7451 - PrepareItemrecordDisplay missing $subfield_data{id} which breaks AJAX value_builders
In current version of code, it gets initialized too late, so it produces
unitialized warnings for hidden fields (which is non-fatal) and breaks
generated JavaScript for AJAX value_builders (which is fatal)

This bug was introduced in ticket 6106 which is modification of 5955
which didn't have this particular problem.

Since then, this code moved to C4::Items because of de-nesting patches.

Test scenario:
1. define 952$i plugin: stocknumberam123.pl (this is ajax value_builder)
2. go to one of following pages and verify that plugin works:
	acqui/addorderiso2709.pl
	acqui/neworderempty.pl
	acqui/orderreceive.pl
	serials/serials-edit.pl

For stocknumberam123.pl plugin to work, you have to have at least
one item with stocknumber in format which this plugin expects:
capital letters, space, some number

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works nicely, thanks for the great test plan.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-26 16:18:54 +02:00
Jonathan Druart
f35a1cce68 Bug 7470: Babeltheque integration
3 features:
- adds social network information in search results
- adds babeltheque data in opac-detail
- adds social network links in opac-detail too (google+, twitter, mail
  and co.)
2012-03-26 14:24:04 +02:00
Juan Romay Sieira
020c095377 Bug 7263 - Determine maximum length of some fields or subfields when cataloguing a biblio or an item.
Signed-off-by: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-26 10:51:22 +02:00
Paul Poulain
d5542514d2 Merge remote-tracking branch 'catalyst/merged_5549' into new/bug_5549
Conflicts:
	installer/data/mysql/updatedatabase.pl
	members/moremember.pl
2012-03-22 17:34:26 +01:00
Jonathan Druart
bb35b60828 Bug 7154: Modification in borrower attributes
* group some attributes for a more friendly display

* allow a link between a borrower category and an attribute to display
  it only for the specified category

* Attr classes filled with AV 'PA_CLASS' category (you have to create AV
  with a new category 'PA_CLASS' to fill class list)

this patch add 2 fields in borrower_attribute_types :
    category_code
    class

Signed-off-by: Julien Sicot <julien.sicot@gmail.com>

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-22 16:08:28 +01:00
Srdjan Jankovic
f4ab1e836f bug_7264: [SIGNED-OFF] Branch popup on OPAC detail.Added opac_info field to branches table.
Signed-off-by: Delaye stephane <stephane.delaye@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-22 11:50:00 +01:00
Julian Maurice
28bb1a3ed0 Bug 7745: Wrong service name for CAS authentification
When behind a proxy, Koha give a wrong service name to CAS server
(SCRIPT_URI environment variable). It now uses OPACBaseURL syspref.

Note: despite the OPACBaseURL description, you have to enter the
*full* URL (ie: with http:// or https://) in the syspref. (see Bug
7770)
Signed-off-by: Pierre Angot <tredok.pierre@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-22 06:21:23 +01:00
Katrin Fischer
454386a849 Bug 7700: Cart's more details view shows identity numbers
We already remove $9 with Koha's authority number from output
of GetMarcSubjects and GetMarcAuthors.
Patch additionally removes $0 subfields with identity numbers.

Patch also effects detail pages with normal (non-XSLT) views.

Revised to always remove $0 subfields, they are not used in UNIMARC.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-22 05:18:49 +01:00
Chris Cormack
0c40ff9f98 Merge remote-tracking branch 'kc/master' into merged_5549
Fixed conflicts

Conflicts:
	catalogue/moredetail.pl
	installer/data/mysql/updatedatabase.pl
	koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt
2012-03-22 09:36:55 +13:00
Ian Walls
28309bc61e Bug 5549 Followup: fix suspension in days
ISO dates were being compared with DateTime objects, and DateTime::Durations
with integers.  This patch reimplements the _FixFineDaysOnReturn subroutine
to use the new hourly loans functionality.

Also moves date formatting of patron debar date out of circ/returns.pl and into
KohaDates on the template

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-03-22 09:31:11 +13:00
Julian Maurice
d09e428a7d Bug 7169: Change booksellers search results display
- Replace vendor table by a div (avoid table in a table)
- Add two columns in basket tables: biblio count and expected (not
  received) items)
- Replace tablesorter by datatables
- Add a list of all returned bookseller names in top of the page (easier
  to find a bookseller in a large list of results)
2012-03-21 17:53:57 +01:00
9e11576caa Bug 7597 - Part 5 - Remove my from $branch, which was masking previous declaration
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-21 17:13:43 +01:00
c5abb58f7c Bug 7597 - Part 4 - Change C4::Acounts::WriteOff to WriteOffFee
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
2012-03-21 17:13:41 +01:00
db946ffd58 Bug 7597 - Part 2 - move sub writeoff to C4::Accounts
Currently, the subroutine writeoff lives in pay.pl, which
is a violation of the Koha coding guidelines, as it writes
to the database. This commit restructures and moves writeoff
to C4::Accounts::WriteOff(), and modifies pay.pl to use it.

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

Tested all three patches together and was able to write off single
and multiple fines and the data was correct in the stats table.
2012-03-21 17:13:33 +01:00
26bee7eee7 7310 Indentation followup replacing leading tabs with spaces
March 5, 2012: Rebased for pushed 4912 patch.

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
2012-03-21 16:47:31 +01:00
2dc8a260c5 Bug 7310: Improving list permissions: Deleting patron
Implements following points from the wiki page List permissions:
5) Delete or move list information when deleting a patron.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
2012-03-21 16:47:03 +01:00
c4d21bcbfe Bug 7310: Code changes for Improving list permissions
This lays the foundation for further changes for report 7310.
Implements following points from the wiki page List permissions:
1) Preference that controls if users may create public lists in opac.
2) New add/delete own/delete other permissions per list.

Code has been changed (in some cases refactored). New permissions are not yet visible; with this patch current functionality is kept as much as possible while resolving several issues, improving permissions and extending the code for further developments (using the new permissions and sharing lists).

Feb 23, 2012 (revision): Changed defaults for new lists. Could also remove routine GetRecentShelves by using GetSomeShelfNames in catalogue/search.pl just as opac-search.pl already did. (More consistent.)

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Feb 29, 2012: Automerge version.
March 5, 2012: Rebase for pushed 4912 patch.
March 21, 2012: Rebased. Resolving some conflicts in relation to pushed report 7719.
2012-03-21 16:46:40 +01:00
Magnus Enger
20fd03724a Bug 7092 - Complete-subfield searches TraceCompleteSubfields syspref not working correctly
This patch adds a syspref UseICU for toggling between using "" and {} for
quoting in subject tracings. With normal Zebra indexing, "" must be used. With
ICU Zebra indexing, {} must be used.

This syspref interacts with TraceCompleteSubfields and TraceSubjectSubdivisions.

To test:

- marcflavour = MARC21
- make sure you have a record with a "complex subject", like
  "Internet -- Law and legislation"

Toggle UseICU, TraceCompleteSubfields, and TraceSubjectSubdivisions and check
that you get the expected results for the clickable links in the OPAC detail
view:

TraceCompleteSubfields   = Don't force
TraceSubjectSubdivisions = Don't include
UseICU                   = Not using
  opac-search.pl?q=su:"Internet"
UseICU                   = Using
  opac-search.pl?q=su:{Internet}

TraceCompleteSubfields   = Force
TraceSubjectSubdivisions = Don't include
UseICU                   = Not using
  opac-search.pl?q=su,complete-subfield:"Internet"
UseICU                   = Using
  opac-search.pl?q=su,complete-subfield:{Internet}

TraceCompleteSubfields   = Don't force
TraceSubjectSubdivisions = Include
UsingICU                 = Not using
  opac-search.pl?q=(su:"Internet") and (su:"Law and legislation.")
UsingICU                 = Using
  opac-search.pl?q=(su:{Internet}) and (su:{Law and legislation.})

TraceCompleteSubfields   = Force
TraceSubjectSubdivisions = Include
UseICU                   = Not using
  opac-search.pl?q=(su,complete-subfield:"Internet") and (su,complete-subfield:"Law and legislation.")
UseICU                   = Using
  opac-search.pl?q=(su,complete-subfield:{Internet}) and (su,complete-subfield:{Law and legislation.})

Check that clicking on the generated links gives the expected search results,
but with normal and ICU indexing. (I have actually not tested this with ICU, so
doing that before signing off is crucial.)

UPDATE 2012-03-16:

Changed the name of the syspref from TracingQuotes to UseICU after a suggestion
from Paul P., to make it more generally useful.

I have used "Using/Not using" instead of "Use/Don't use" in the description of
the syspref, to reflect the fact that this syspref will not change how Zebra
does its indexing - it's just a way of telling Koha how the indexing is
actually done.

I have also set UseICU = 1 in updatedatabase.pl, since that will preserve the
current behaviour of Koha, but UseICU = 0 in sysprefs.sql, since most new
installations will not have ICU activated.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-03-21 14:53:14 +01:00
4d26038dd2 Bug 6027 - Delete biblios if deleting all their items in batch deletion
Optionally delete bibliographic record when batch deleting items, if no items remain on the record.

Adds deleting of reserves to DelBiblio. Since subscriptions are deleted automatically,
it made sense for deletion of reserves to maintain the same behavior.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
I like the way this works, and it does. Passes tests.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-21 14:31:38 +01:00
Katrin Fischer
0a9ba9d9df Bug 6831 follow-up: add support for UNIMARC and NORMARC
1) Removes unused subroutine get_host_control_num
2) Fixes small mistake, correct subfield for ISBN 020 is z
3) Checks system preference for correct marcflavour instead of
   assuming MARC21
4) Fixes MARC21 to not use author(), because it would also add
   fields like $w and $0 to 773$a
5) Fixes MARC21 to not use title(), but 245$a, because it would
   also add too many subfields.
6) Adds definitions for UNIMARC and includes NORMARC

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Works properly with all supported MARC flavours.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-21 11:30:37 +01:00
Colin Campbell
adb3777e2e Bug 6831: Add ability to enter adding child record from parent
Simplifies the adding of analytical records and ensures that
the data populating the 773 tag is correct. From the host record
add child record is selected and create bib is entered to generate
a new record with host item tag populated from the parent

Caveat: currently prepare_host_field only returns a field for
MARC21. Values for UNIMARC and NORMARC can easily be added but
should be done by someone familar with those formats
and conventions

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
To test:
- create a new record
--> if you enter a value in 001 anaytics will use that in $w for linking later
--> if you set 000/LDR 19 - Multipart resource record level to 'a' there will
be a link from the parent record to the child record later
- save your record and go to the staff detail page
- in toolbar select 'New' > 'New child record'
- check field 773, 245 and 001 from the parent record should have been copied there
- check links between child and parent in staff

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Fixed conflicts in all 3 files.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Works properly for MARC21, and follow-up adds support for NORMARC and UNIMARC.
2012-03-21 11:30:35 +01:00
Janusz Kaczmarek
fe37dd8167 Bug 5657: Changes made to sub merge to eliminate errors occuring when updating bibio records in batch (after updating multiple authority records)
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-21 11:13:17 +01:00
Ian Walls
d92c595dc4 Enhancement 7144: Floating Collections (per branch/itemtype)
Adds support for Floating Collections (i.e. items that don't automatically return
home when checked in at another branch) on a per branchcode/itemtype basis.

This patch adds a new column (returnbranch) to the default_circ_rules, default_branch_item_rules,
default_branch_circ_rules and branch_item_rules tables, after the 'holdsallowed' column.  While
this is coded as a varchar(15), the only currently supported values are 'homebranch', 'holdingbranch',
'noreturn' and NULL.

On upgrade, the value of HomeOrHoldingBranchReturn is used to populate the global default (which is
stored in default_circ_rules.returnbranch).

To access this value, use C4::Circulation::GetBranchItemRule.  This subroutine is altered to supply
an additional key, "returnbranch", containing this value (or 'homebranch' as a default).  No existing
usage of GetBranchItemRule should need to be modified.

The use of HomeOrHoldingBranchReturn is removed in AddReturn to instead use this subroutine.  This will
determine, on a more granular level, where the item should be transferred, after all is said and done.  If
'noreturn' is specified, then the material will remain at the branch doing the checking in.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Passes prove t xt t/db_dependent

I was able to make this feature work as advertised.
As noted above, if you want a floating rule applied across all branches, adding a single default rule won't suffice, you'll need to add the rule to all branches. That issue is not related to the functioning of *this* patch however.
2012-03-21 10:28:26 +01:00
Chris Cormack
62621825e5 Bug 5549 : _FixFineDaysOnReturn was using C4::Dates in calling
days_between, fixed to use DateTime objects
2012-03-21 11:09:51 +13:00
Chris Cormack
4076e43d22 Bug 5549 : Fixing typo in C4/Circulation.pm
days_between not daysBetween
2012-03-21 08:33:26 +13:00
Jared Camins-Esakov
d7fe2f24db Bug 7600: Return a single-pixel GIF when no local cover image exists
Signed-off-by: Kristina D.C. Hoeppner <kristina@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 16:54:31 +01:00
Jonathan Druart
692ee0e9da Bug 7166: Adds edit order notes when the basket is closed
When you are on parcel.pl or basket.pl you can now add or edit a note
 for each order.

 To test:
 Create orders with and without note.
 Edit/Add the note on basket.pl page

 Close the basket.
 Check you can add/edit the order note on parcel.pl page

+ From Owen:
Correcting markup issues with modordernotes.pl:

- Adding "rows" and "cols" attributes to <textarea> (required)
- Converting cancel button to link to stay consistent with
  other pages
- Changing page layout to fixed & centered (not sidebar needed)
- Expanding information in breadcrumbs to match information
  on basket.pl

Changing markup around note add and edit links: Moving output
of order note to the end of the table cell, putting it in its
own paragraph, and adding a "Note:" label

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-20 16:45:37 +01:00
Julian Maurice
3b0d4e04e0 Bug 6440: Implement OAI-PMH Sets
New sql tables:
  - oai_sets: contains the list of sets, described by a spec and a name
  - oai_sets_descriptions: contains a list of descriptions for each set
  - oai_sets_mappings: conditions on marc fields to match for biblio to be
    in a set
  - oai_sets_biblios: list of biblionumbers for each set

New admin page: allow to configure sets:
  - Creation, deletion, modification of spec, name and descriptions
  - Define mappings which will be used for building oai sets

Implements OAI Sets in opac/oai.pl:
  - ListSets, ListIdentifiers, ListRecords, GetRecord

New script misc/migration_tools/build_oai_sets.pl:
  - Retrieve marcxml from all biblios and test if they belong to defined
    sets. The oai_sets_biblios table is then updated accordingly

New system preference OAI-PMH:AutoUpdateSets. If on, update sets
automatically when a biblio is created or updated.

Use OPACBaseURL in oai_dc xslt
2012-03-20 11:38:26 +01:00
Elliott Davis
da14b2f4ba Bug 5549 : fixed non-cloned date object in Add date for calendar, also removed erounous dumper in moremember.pl that dumped entire issue 2012-03-20 13:41:49 +13:00
Elliott Davis
49c35ba38e Bug 5549 : fixed datetime issue so time is shown in output for circulation.pl and moremember.pl 2012-03-20 13:41:25 +13:00
Chris Cormack
0c15a1ded4 Bug 5549 : Fixing link to calendar 2012-03-20 13:31:56 +13:00
Chris Cormack
9c1a43d91a Bug 5549 - Another typo fix 2012-03-20 13:29:39 +13:00
Chris Cormack
03eea72de3 Bug 5549 - Hourly Loans - Fixing a typo 2012-03-20 13:29:14 +13:00
Colin Campbell
4612eeddf7 Bug 5549 : CalcFine was corrupting due date
Clone the passed duedate as the addition of days was
corrupting it in calling context causing new account recs
to be written rather than updating the existing
2012-03-20 13:27:46 +13:00
Colin Campbell
624edf3dba Bug 5549 : Refactor fines.pl
Clean code in fines to remove unnecessary complexity
remove constructs now thought suspect or
not good pracrice
2012-03-20 13:27:12 +13:00
Colin Campbell
7a8bed5576 Bug 5549 : Daily loans should be due at 23:59
This was failing in one patch through CalcDueDate
2012-03-20 13:25:41 +13:00
Colin Campbell
1e255e93eb Bug 5549 Fix a couple of comparisons in C4::Circulation
Changed a string comparison called on an integer
Deal with case where value is not set without runtime warnings
2012-03-20 13:25:05 +13:00
Colin Campbell
c82d114f1e Bug 5549 : Add Extra Perl Dependencies
Add:
  DateTime::Timezone
  DateTime::Format::DateParse
  DateTime::Set
  DateTime::Event::ICal
  Readonly
  Readonly::XS
2012-03-20 13:21:50 +13:00
Colin Campbell
39d1b7e61b Bug 5549 : Overdues : Handle some date comparison and display issues 2012-03-20 13:21:19 +13:00
Colin Campbell
31a3a7ed93 Bug 5549 : Sip scripts should handle dt due dates 2012-03-20 13:21:11 +13:00
Colin Campbell
3b5ac7543a Bug 5549 : Let Timestamp do the right thing if passed a DateTime 2012-03-20 13:20:54 +13:00
Colin Campbell
7c260e550e Bug 5549 : replace curdate with now in a couple of sql lines
duedate is now datetime and comparing with curdate
causes a system error
2012-03-20 13:20:42 +13:00
Colin Campbell
d55405047b Bug 5549 : Fix calculation of duedates in fines.pl and advance_notices.pl
Cleaned up some no longer used parameters in
Overdues::CalcFine
2012-03-20 13:20:01 +13:00
Colin Campbell
9ffd92948b Bug 5549 : Format Date in ILSDI::Services to include hhmm 2012-03-20 12:37:07 +13:00
Colin Campbell
cb170fe4ff Bug 5549 : Cannot use CUR_DATE on date_due column
Comparison of CUR_TIME() & datetime gives
table corrupted error in mysql
Plus we want to see hourly loans
2012-03-20 12:34:20 +13:00
Colin Campbell
f74da1e834 Bug 5549 : GetPendingIssues now returns DateTime objects
Show due times in addition to dates in using screens
2012-03-20 12:33:37 +13:00
Colin Campbell
aa114f5349 Bug 5549 : Only use DateTime for issues table
Tidied up the module list
Removed an used subroutine
Replaced some old C4::Dates code with DateTime calls
2012-03-20 12:32:56 +13:00
Colin Campbell
99eccc18ed Bug 5549 : Handle datetimes on return 2012-03-20 12:32:13 +13:00
Colin Campbell
00bf7cc774 Bug 5549 : Get basic 24 Hr loan working 2012-03-20 12:13:34 +13:00
Colin Campbell
0ce31bfba9 Bug 5549 : Pass time_zone correctly 2012-03-20 12:12:51 +13:00
Colin Campbell
b7b6a8e388 Bug 5549 : Due Date calculation in issue needs to be HH:MM aware 2012-03-20 12:12:09 +13:00
Colin Campbell
7716fce253 Bug 5549 : Add a timezone object to C4::Context
Will be required by rolling loans to get correct times
NB the setting of the TZ in mysql has not been changed as
this appears to rely on $ENV{TZ} being undefined
2012-03-20 12:08:20 +13:00
Matthias Meusburger
1e7437bbae Bug 7400: Add auto-completion on auth_finder
While typing an authority, will automatically propose authorities (similar to
autocompletion for patron search if activated)

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Tested searching for authorities with and without autocomplete. Note that
this is most useful when used in the "Main entry" box instead of the
"Main entry ($a only)" box.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Corrected tabs to spaces in auth-finder-search.inc while resolving merge
conflict.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-19 18:20:30 +01:00
Jonathan Druart
c548761bc1 Bug 7477: Followup: Fix perlcritic issues
Signed-off-by: Srdjan Jankovic <srdjan@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
An existing holiday in a branch is not deleted when the branch is overwritten:
* branch B, set today as closed
* switch to branch A, where today is not closed
* copy holidays to branch B
* today is still closed for branch B

That's important to notice for the documentation
2012-03-19 18:16:40 +01:00
Srdjan Jankovic
c5b878697e Bug 7477: Copy holidays from one branch to another
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
2012-03-19 18:10:44 +01:00
Srdjan Jankovic
973f84513f bug_7140: Added item description to complement icon to search result and biblio detail pages
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
This seems like a very big improvement, especially for people using screen
readers. I agree that the change to C4::Search is required.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-19 17:52:45 +01:00
Paul Poulain
2eb590c269 C4::Members follow-up
Overdues already loaded, must set full sub patch

http://bugs.koha-community.org/show_bug.cgi?id=6875
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Fixes issue with circ/branchoverdues.pl
Passes tests.
2012-03-19 17:49:40 +01:00
Robin Sheat
4cbeeedbe8 Bug 6296: allow users to be authenticated by SSL client certs
This adds a new syspref: AllowPKIAuth. It can have one of three states:
* None
* Common Name
* emailAddress

If a) this is set to something that's not "None", and b) the webserver
is passing SSL client cert details on to Koha, then the relevant field
in the user's certificate will be matched up against the field in the
database and they will be automatically logged in. This is used as a
secure form of single sign-on in some organisations.

The "Common Name" field is matched up against the userid, while
"emailAddress" is matched against the primary email.

This is an example of what might go in the Apache configuration for the
virtual host:

    #SSLVerifyClient require # only allow PKI authentication
    SSLVerifyClient optional
    SSLVerifyDepth 2
    SSLCACertificateFile /etc/apache2/ssl/test/ca.crt
    SSLOptions +StdEnvVars

The last line ensures that the required details are
passed to Koha.

To test the PKI authentication, use the following curl command:
    curl -k --cert client.crt --key client.key  https://URL/
(look through the output to find the "Welcome," line to indicate that a user
has been authenticated or the "Log in to Your Account" to indicate that a
user has not been authenticated)

To create the certificates needed for the above command, the following series
of commands will work:
    # Create the CA Key and Certificate for signing Client Certs
    openssl genrsa -des3 -out ca.key 4096
    openssl req -new -x509 -days 365 -key ca.key -out ca.crt
    # This is the ca.crt file that the Apache config needs to know about,
    # so put the file at /etc/apache2/ssl/test/ca.crt

    # Create the Server Key, CSR, and Certificate
    openssl genrsa -des3 -out server.key 1024
    openssl req -new -key server.key -out server.csr

    # We're self signing our own server cert here.  This is a no-no in
    # production.
    openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key \
        -set_serial 01 -out server.crt

    # Create the Client Key and CSR
    openssl genrsa -des3 -out client.key 1024
    openssl req -new -key client.key -out client.csr

    # Sign the client certificate with our CA cert. Unlike signing our own
    # server cert, this is what we want to do.
    openssl x509 -req -days 365 -in client.csr -CA ca.crt -CAkey ca.key \
        -set_serial 02 -out client.crt
    openssl pkcs12 -export -in client.crt -inkey client.key -out client.p12
    # In theory we can install this client.p12 file in Firefox or Chrome, but
    # the exact steps for doing so are unclear, and outside the scope of this
    # patch

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Tested with Common Name and E-mail authentication, as well as with PKI
authentication disabled. Regular logins continue to work in all cases when
SSL authentication is set to optional on the server.

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
QA comment: synchronized updatedatabase.pl version of syspref with sysprefs.sql
version, to avoid divergent databases between new and upgrading users.
2012-03-19 17:02:44 +01:00
Paul Poulain
0ef6b0d5c6 Merge remote-tracking branch 'origin/new/bug_6875' 2012-03-14 16:16:21 +01:00
Ian Walls
386284d2d5 Bug 6875 Followup: De-nesting C4::Items breaks bulkmarcimport
Removing 'use C4::Branch' in favour of a subroutine-specific 'require C4::Branch'
causes the GetBranchName subroutine to return an error, as it's not defined
in C4::Items.  Adding "C4::Branch::" scoping fixes the error, which is what's done here.

To confirm problem:
1.  Attempt to run bulkmarcimport.pl before applying the patch.  You should get
    ERROR: Adding items to bib 435 failed: Undefined subroutine &C4::Items::GetBranchName
    called at /home/sekjal/kohaclone/C4/Items.pm line 656, <GEN13> line 435.

To test:
2.  apply patch
3.  run bulkmarcimport again.  Error should disappear.

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Note that this problem only appears when importing records with item (952)
fields.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-14 16:16:07 +01:00
Paul Poulain
cdb05842c3 Merge remote-tracking branch 'origin/new/bug_7031' 2012-03-14 14:47:34 +01:00
Ian Walls
c04404c2fb Enh 7031: More options for Advanced Search
Adds the ability to perform advanced searches in both the OPAC and staff client on more than
a single AdvancedSearchType at a time.  Support included for Itemtype, Collection Code and Shelving Location.

AdvancedSearchTypes syspref preference is repurposed; no longer a single value, it can now take
multiple item code fields separated by "|".  The order of these fields will determine the order
of the tabs in the OPAC and staff client advanced search screens.  Values within the search type
are OR'ed together, while each different search type is AND'ed together in the query limits.  The
current stored values are supported without any required modification.

Each set of advanced search fields are displayed in tabs in both the OPAC and staff client.  The
first value in the AdvancedSearchTypes syspref is the selected tab; if no values are present, "itemtypes"
is used.  For non-itemtype values, the value in AdvancedSearchTypes must match the Authorised Value name, and
must be indexed with 'mc-' prefixing that name.

<li> elements in tab are assigned unique IDs, so the text of the tab can be altered to match the
library's needs (using JQuery)

The logic to handle the 5 element row limit has been moved from the Perl to the templates, since Template::Toolkit
has a simple method for extracting the count of an element in a loop and performing 'modulus' on it.

2011-12-21: Incorporated changes recommend by Owen Leonard on bug report.
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
2012-03-14 14:35:27 +01:00
2577e0b6c5 7261 Followup to make tests consistent
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
2012-03-14 14:14:24 +01:00
Juan Romay Sieira
68ddf79121 Bug 7261 System Preference to select the first day of week
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-03-14 14:14:12 +01:00
Paul Poulain
befebb8a5c bug 7661: Moving C4::tests to unit tests 2012-03-13 18:07:54 +01:00
aed0d8a63d Bug 3216: UNIMARC author facets
Add 700$b to UNIMARC author facets.

Other facets subfields could be added now. For example, other subjects
subfields.

Following patches are required to handle better MARC21 subfields and choose
other subfields to deal with UNIMARC format.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Tested under both MARC21 and UNIMARC. Does not cause any regressions with
MARC21, and offers the possibility for better faceting there in the future.
Works as advertised with UNIMARC.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-13 16:35:02 +01:00
Adrien Saurat
b2180b8bd4 Bug 4969: deletion of suppliers
If a vendor/bookseller has no basket/subscription link, it can now
be deleted (after a JS confirmation).

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Verified that I can only delete vendors without linked orders or
subscriptions.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-13 15:12:26 +01:00
Paul Poulain
5540986811 Merge remote-tracking branch 'origin/new/bug_7001' 2012-03-13 12:27:32 +01:00
Jonathan Druart
9a4873bc4c Bug 7167: Followup: FIX conflicts with Bug 5347
- Fix sql syntax error
- Fix Encoding
- SendAlerts must return an error if no email is defined
- Get error if no email in memberentry

http://bugs.koha-community.org/show_bug.cgi?id=7001
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-13 12:27:13 +01:00
Srdjan Jankovic
38e5e15153 bug_7001: protected are only all libraries letters
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
solves my comment 89: when you have a "mandatory" notice defined for a given library, it's not possible to delete it (and switch back to the "default" notification). isn't this a (small) bug ? was it intended ?

thanks!
2012-03-13 12:07:58 +01:00
Paul Poulain
0298ca4c22 bug 7001 follow-up fixing POD mistake 2012-03-13 11:18:39 +01:00
4fc6759d0c Bug 7408 - Don't cancel found reserves.
At the moment, a reserve will be canceled if it has passed its
expiration date, even if the item is waiting or in the process
of being transferred. The situation could arise where someone
has a hold filled, but it is canceled while in transit, or before
the borrower can pick it up.
2012-03-09 16:13:54 +01:00
0717f8300a Bug 7408 - Expire holds that have been waiting too long
If the new syspref ExpireReservesMaxPickUpDelay is enabled,
this will cancel holds that have been waiting for longer than the
number of days specified in the syspref ReservesMaxPickupDelay.

If ExpireReservesMaxPickUpDelayCharge is set, the borrower charged the fee set therein.

Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
Altered circulation.pref to include currency class and [% local_currency %] param
2012-03-09 16:12:10 +01:00
Srdjan Jankovic
a9ded4fa00 bug_7001: Issue and Reserve slips are notices.
Branches can have their own version of notices - added branchcode to
letter table.
Support html notices - added is_html to letter table.
Support for borrower attributes in templates.
GetPreparedletter() is the interface for compiling letters (notices).
Sysprefs for notice and slips stylesheets
Added TRANSFERSLIP to the letters

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-09 10:11:20 +01:00
Liz Rea
076ca9324f Bug 7271 - change sort in items.pm to sort by home library instead of holding branch
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-08 17:09:28 +01:00
Chris Nighswonger
c7ba7fa8b2 Bug 7615 - Give option to use description for homebranch/holding branch in label creator instead of the branchcode
This patch adds the ability to print the name of the item's homebranch on labels

Thanks to Shane Sammons <ssammons-at-npelem.com> for the modified SQL SELECT statement.

Document Manager: The documentation will need to be updated to reflect the added field 'branchname' to the list
of available fields for label printing.

To test:

1. Create a new label layout or modify an existing one to include 'branchname'
2. Create a new label batch or using an existing one, export the batch.
3. Verify that the resulting labels contain the home branch name for the respective items.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Tested with the plan - works

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-08 16:12:50 +01:00
808b2a44c4 Bug 7616 - Remove unused template markup for css_libs, css_module, js_libs, etc.
Removing references to unused template variables and markup.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-08 16:06:04 +01:00
Jared Camins-Esakov
fa0eb5afd5 Bug 7284: Fix unit test broken by erroneous POD
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-08 15:24:18 +01:00
Jared Camins-Esakov
5207699f98 signed off Bug 7284: Authority matching improvements
Squashed patch incorporating all previous patches (there is no functional
change compared to the previous version of this patch, this patch merely
squashes the original patch and follow-up, and rebases on latest master).

=== TL;DR VERSION ===
*** Installation ***
1. Run installer/data/mysql/atomicupdate/bug_7284_authority_linking_pt1
and installer/data/mysql/atomicupdate/bug_7284_authority_linking_pt2
2. Make sure you copy the following files from kohaclone to koha-dev:
etc/zeradb/authorities/etc/bib1.att,
etc/zebradb/marc_defs/marc21/authorities/authority-koha-indexdefs.xml,
etc/zebradb/marc_defs/marc21/authorities/authority-zebra-indexdefs.xsl,
etc/zebradb/marc_defs/marc21/authorities/koha-indexdefs-to-zebra.xsl, and
etc/zebradb/marc_defs/unimarc/authorities/record.abs
3. Run misc/migration_tools/rebuild_zebra.pl -a -r

*** New sysprefs ***
* AutoCreateAuthorities
* CatalogModuleRelink
* LinkerModule
* LinkerOptions
* LinkerRelink
* LinkerKeepStale

*** Important notes ***
You must have rebuild_zebra processing the zebraqueue for bibs when testing this
patch.

=== DESCRIPTION ===

*** Cataloging module ***
* Added an additional box to the authority finder plugin for "Heading match,"
  which consults not just the main entry but also See-from and See-also-from
  headings.

* With this patch, the automatic authority linking will actually work properly
  in the cataloging module. As Owen pointed out while testing the patch,
  though, longtime users of Koha will not be expecting that. In keeping with
  the principles of least surprise and maximum configurability, a new syspref,
  CatalogModuleRelink makes it possible to disable authority relinking in the
  cataloging module only (i.e. leaving it enabled for future runs of
  link_bibs_to_authorities.pl).  Note that though the default behavior matches
  the current behavior of Koha, it does not match the intended behavior.
  Libraries that want the intended behavior rather than the current behavior
  will need to adjust the CatalogModuleRelink syspref.

*** misc/link_bibs_to_authorities.pl ***
Added the following options to the misc/link_bibs_to_authorities.pl script:
--auth-limit        Only process those headings that match the authorities
                    matching the user-specified WHERE clause.
--bib-limit         Only process those bib records that match the
                    user-specified WHERE clause.
--commit            Commit the results to the database after every N records
                    are processed.
--link-report       Display a report of all the headings that were processed.

Converted misc/link_bibs_to_authorities.pl to use POD.

Added a detailed report of headings that linked, did not link, and linked
in a "fuzzy" fashion (the exact semantics of fuzzy are up to the individual
linker modules) during the run.

*** C4::Linker ***
Implemented new C4::Linker functionality to make it possible to easily add
custom authority linker algorithms. Currently available linker options are:
* Default: retains the current behavior of only creating links when there is
  an exact match to one and only one authority record; if the 'broader_headings'
  option is enabled, it will try to link to headings to authority records for
  broader headings by removing subfields from the end of the heading (NOTE:
  test the results before enabling broader_headings in a production system
  because its usefulness is very much dependent on individual sites' authority
  files)
* First Match: based on Default, creates a link to the *first* authority
  record that matches a given heading, even if there is more than one
  authority record that matches
* Last Match: based on Default, creates a link to the *last* authority
  record that matches a given heading, even if there is more than one record
  that matches

The API for linker modules is very simple. All modules should implement the
following two functions:
<get_link ($field)> - return the authid for the authority that should be
linked to the provided MARC::Field object, and a boolean to indicate whether
the match is "fuzzy" (the semantics of "fuzzy" are up to the individual plugin).
In order to handle authority limits, get_link should always end with:
    return $self->SUPER::_handle_auth_limit($authid), $fuzzy;

<flip_heading ($field)> - return a MARC::Field object with the heading flipped
to the preferred form. At present this routine is not used, and can be a stub.

Made the linking functionality use the SearchAuthorities in C4::AuthoritiesMarc
rather than SimpleSearch in C4::Search. Once C4::Search has been refactored,
SearchAuthorities should be rewritten to simply call into C4::Search. However,
at this time C4::Search cannot handle authority searching. Also fixed numerous
performance issues in SearchAuthorities and the Linker script:
* Correctly destroy ZOOM recordsets in SearchAuthorities when finished. If left
  undestroyed, efficiency appears to approach O(log n^n)
* Add an optional $skipmetadata flag to SearchAuthorities that can be used to
  avoid additional calls into Zebra when all that is wanted are authority
  records and not statistics about their use

*** New sysprefs ***
* AutoCreateAuthorities - When this and BiblioAddsAuthorities are both turned
  on, automatically create authority records for headings that don't have
  any authority link when cataloging. When BiblioAddsAuthorities is on and
  AutoCreateAuthorities is turned off, do not automatically generate authority
  records, but allow the user to enter headings that don't match an existing
  authority. When BiblioAddsAuthorities is off, this has no effect.
* CatalogModuleRelink - when turned on, the automatic linker will relink
  headings when a record is saved in the cataloging module when LinkerRelink
  is turned on, even if the headings were manually linked to a different
  authority by the cataloger. When turned off (the default), the automatic
  linker will not relink any headings that have already been linked when a
  record is saved.
* LinkerModule - Chooses which linker module to use for matching headings
  (current options are as described above in the section on linker options:
  "Default," "FirstMatch," and "LastMatch")
* LinkerOptions - A pipe-separated list of options to set for the authority
  linker (at the moment, the only option available is "broader_headings," which
  is described below)
* LinkerRelink - When turned on, the linker will confirm the links for headings
  that have previously been linked to an authority record when it runs. When
  turned off, any heading with an existing link will be ignored.
* LinkerKeepStale - When turned on, the linker will never *delete* a link to an
  authority record, though, depending on the value of LinkerRelink, it may
  change the link.

*** Other changes ***
* Cleaned up authorities code by removing unused functions and adding
  unimplemented functions and added some unit tests.

* This patch also modifies the authority indexing to remove trailing punctuation
  from Match indexes.

* Replace the old BiblioAddAuthorities subroutines with calls into the new
  C4::Linker routines.

* Add a simple implementation for C4::Heading::UNIMARC. (With thanks to F.
  Demians, 2011.01.09) Correct C4::Heading::UNIMARC class loading. Create
  biblio tag to authority types data structure at initialization rather than
  querying DB.

* Ran perltidy on all changed code.

*** Linker Options ***
Enter "broader_headings" in LinkerOptions. With this option, the linker will
try to match the following heading as follows:
=600  10$aCamins-Esakov, Jared$xCoin collections$vCatalogs$vEarly works to
1800.

First: Camins-Esakov, Jared--Coin collections--Catalogs--Early works to 1800
Next: Camins-Esakov, Jared--Coin collections--Catalogs
Next: Camins-Esakov, Jared--Coin collections
Next: Camins-Esakov, Jared (matches! if a previous attempt had matched, it
would not have tried this)

This is probably relevant only to MARC21 and LCSH, but could potentially be of
great use to libraries that make heavy use of floating subdivisions.

=== TESTING PLAN ===

Note: all of these tests require that you have some authority records,
preferably for headings that actually appear in your bibliographic data. At
least one authority record must contain a "see from" reference (remember which
one contains this, as you'll need it for some of the tests). The number shown
in the "Used in" column in the authority module is populated using Zebra
searches of the bibliographic database, so you *must* have
rebuild_zebra.pl -b -z [-x] running in cron, or manually run it after running
the linker.

*** Testing the Heading match in the cataloging plugin ***
1.  Create a new record, and open the cataloging plugin for an
    authority-controlled field.
2.  Search for an authority by entering the "see from" term in the Heading Match
    box
3.  Confirm that the appropriate heading shows up
4.  Search for an authority by entering the preferred heading into the Main
    entry or Main entry ($a only) box (i.e., repeat the procedure you usually
    use for cataloging, whatever that may be)
5.  Confirm that the appropriate heading shows up

*** Testing the cataloging interface ***
6.  Turn off BiblioAddsAuthorities
7.  Confirm that you cannot enter text directly in an authority-controlled field
8.  Confirm that if you search for a heading using the authority control plugin
    the heading is inserted (note, however, that this patch does not AND IS NOT
    INTENDED TO fix the bugs in the authority plugin with duplicate subfields;
    those are wholly out of scope- this check is for regressions)
9.  Turn on BiblioAddsAuthorities and AutoCreateAuthorities
10. Confirm that you can enter text directly into an authority-controlled field,
    and if you enter a heading that doesn't currently have an authority record,
    an authority record stub is automatically created, and the heading you
    entered linked
11. Confirm that if you enter a heading with only a subfield $a that fully
    *matches* an existing heading (i.e. the existing heading has only
    subfield $a populated), the authid for that heading is inserted into
    subfield $9
12. Confirm that if you enter a heading with multiple subfields that *matches*
    an existing heading, the authid for that heading is inserted into
    subfield $9
13. Turn on BiblioAddsAuthorities and turn off AutoCreateAuthorities
14. Confirm that you can enter text directly into an authority-controlled field,
    and if you enter a heading that doesn't currently have an authority record,
    an authority record stub is *not* created
15. Confirm that if you enter a heading with only a subfield $a that *matches*
    an existing heading, the authid for that heading is inserted into
    subfield $9
16. Confirm that if you enter a heading with multiple subfields that *matches*
    an existing heading, the authid for that heading is inserted into
    subfield $9
17. Create a record and link an authority record to an authorized field using
    the authority plugin.
18. Save the record. Ensure that the heading is linked to the appropriate
    authority.
19. Open the record. Change the heading manually to something else, leaving
    the link. Save the record.
20. Ensure that the heading remains linked to that same authority.
21. Change CatalogModuleRelink to "on."
22. Open the record. Use the authority plugin to link that heading to the
    same authority record you did earlier.
23. Save the record. Ensure that the heading is linked to the appropriate
    authority.
24. Open the record. Change the heading manually to something else, leaving
    the link. Save the record.
25. Ensure that the heading is no longer linked to the old authority record.

*** Testing link_bibs_to_authorities.pl ***
26. Set LinkerModule to "Default," turn on LinkerRelink and
    BiblioAddsAuthorities, and turn AutoCreateAuthorities and
    LinkerKeepStale off
27. Edit one bib record so that an authority controlled field that has already
    been linked (i.e. has data in $9) has a heading that does not match any
    authority record in your database
28. Run misc/link_bibs_to_authorities.pl --link-report --verbose --test (you may
    want to pipe the output into less or a file, as the result is quite a lot of
    information)
29. Look over the report to see if the headings that you have authority records
    for report being matched, that the heading you modified in step 2 is
    reported as "unlinked," and confirm that no changes were actually made to
    the database (to check this, look at the bib record you edited earlier, and
    check that the authid in the field you edited hasn't changed)
30. Run misc/link_bibs_to_authorities.pl --link-report --verbose (you may want
    to pipe the output into less or a file, as the result is quite a lot of
    information)
31. Check that the heading you modified has been unlinked
32. Change the modified heading back to whatever it was, but don't use the
    authority control plugin to populate $9
33. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --bib-limit="biblionumber=${BIB}" (replacing ${BIB} with the biblionumber
    of the record you've been editing)
34. Confirm that the heading has been linked to the correct authority record
35. Turn LinkerKeepStale on
36. Change that heading to something else
37. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --bib-limit="biblionumber=${BIB}" (replacing ${BIB} with the biblionumber
    of the record you've been editing)
38. Confirm that the $9 has not changed
39. Turn LinkerKeepStale off
40. Create two authorities with the same heading
41. Run misc/migration_tools/rebuild_zebra.pl -a -z
42. Enter that heading into the bibliographic record you are working with
43. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --bib-limit="biblionumber=${BIB}" (replacing ${BIB} with the biblionumber
    of the record you've been editing)
44. Confirm that the heading has not been linked
45. Change LinkerModule to "FirstMatch"
46. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --bib-limit="biblionumber=${BIB}" (replacing ${BIB} with the biblionumber
    of the record you've been editing)
47. Confirm that the heading has been linked to the first authority record it
    matches
48. Change LinkerModule to "LastMatch"
49. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --bib-limit="biblionumber=${BIB}" (replacing ${BIB} with the biblionumber
    of the record you've been editing)
50. Confirm that the heading has been linked to the second authority record it
    matches
51. Run misc/link_bibs_to_authorities.pl --link-report --verbose
    --auth-limit="authid=${AUTH}" (replacing ${AUTH} with an authid)
52. Confirm that only that heading is displayed in the report, and only those
    bibs with that heading have been changed

If all those things worked, good news! You're ready to sign off on the patch
for bug 7284.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Rebased on latest master and squashed follow-up, 16 February 2012
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Rebased on latest master, 21 February 2012

Signed-off-by: schuster <dschust1@gmail.com>
2012-03-07 17:34:11 +01:00
3ab28d4e53 Bug 4912 [REVISED] After editing private list, user should be redirect to private lists
As far as I can tell there isn't a redirect in the code which is
triggered in the wake of a ModShelf() action. This patch adds a
redirect which is reflects the context of the original "edit" link.

To test, edit the details of a list in the OPAC from:

- the list of private lists
- the list of public lists
- the contents view of public or private list

After each of these actions you should be redirected back to
the page where you clicked the "edit" link.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-02 18:27:24 +01:00
Paul Poulain
2cff5e7642 Bug 5877 QA follow-up
* removing tabs as indenter
* adding fieldnames in INSERT clause
* updating FSF address
* removing ` in SQL table creation (mysql-ism)
* use strict & use warning added & no error in logs checked

Note that process_koc.pl and updatedatabase are not related to this bug, but the FSF address was wrong, I fixed it as well
2012-03-02 17:53:00 +01:00
a947ef57f8 Bug 5877 Follow-up for Offline circulation improvements
Internationalization fix: Offline circulation operations in
Circulation.pm return English strings for display in the
template. These strings can't be translated, so we must check
their values in the JavaScript and return a translatable
string based on their values.

Interface change: Switching to text links for checking/unchecking
checkboxes since that is more consistent with other areas in
Koha.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-02 17:51:49 +01:00
Paul Poulain
e07b36dd90 Bug 5877 : Offline circulation improvements : upload all files, apply at once
Offline circ : You now can upload all offline files from the Firefox extension.
Once all circ desks have uploaded the file, the librarian can apply all of them, sorted by date.
This avoid the problem of someone issuing an item on desk A, returning it on desk B.
Before this improvement, if desk B uploaded the file before A, the return was applied before the issue,
resulting in the items reamining issued.

Signed-off-by: Sophie Meynieux <sophie.meynieux@biblibre.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
2012-03-02 17:49:35 +01:00
Alex Arnaud
b94586bec1 Bug 6919 - Follow up - call to XSLTParse4Display is now made twice in Search.pm
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signing off on this one with the following note: You have moved the call to XSLTParse4Display from around line 1775 to around 1842, as compared to the situation before the three 6919 patches. I probably would have left it at its original location, but while examining the code between these two spots, I do not see any real problems with this move. Tested it, works okay. Futher QA comments made on the report itself.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-03-02 17:35:35 +01:00
Alex Arnaud
10eb5ae420 bug 6919 - implements XSLTResultsDisplay and adding both unimarc and marc21 xslt
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-03-02 17:35:31 +01:00
99f686ea83 Bug 7579 - Icons for authorized values/item types not showing in OPAC
The functions getitemtypeimagedir and getitemtypeimagesrc
in Koha.pm were using the system preference 'template'
when they should be using 'opacthemes' instead.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 18:32:09 +01:00
Salvador Zaragoza Rubio
2b2a034ca8 Bug 6008 - Locating mysql/psql commands on Installer.pm
In Installer.pm when is looking for the system command to dump a file into the database
it might fail if the web user doesn't have it in its path. So we add before a search with
"which" and "whereis" commands, if they fail the command is itself without path.

E.g.: with OpenBSD 4.8 the web user "www" doesn't have the path to the installed mysql bin:
/usr/local/bin/mysql and fails in the web installer.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Seems to work fine, has a good default for if it fails to find that
path

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
tested on my linux box, no visible change, worked before, work after. Will hopefully improve behaviour for OpenBSD
2012-02-27 15:38:07 +01:00
Paul Poulain
80c202170a Merge remote-tracking branch 'origin/new/bug_3215' 2012-02-27 12:12:59 +01:00
95ead9a42b Bug 3215 [REBASED] It would be nice if "Add to Cart" changed to "Remove from Cart"
"Add to Cart" links in the OPAC should reflect whether a title
is already in the Cart. On the results, list, and detail pages
the "Add to Cart" link will say "In your cart (remove)" if the
title is in your cart. The "(remove)" link will remove the title.

This patch adds a check of the biblionumbers in the cart to the
relevant scripts and sets a variable for the template governing
whether to show "Add to cart" or "In your cart."

Pages to test:

  - the search results page
  - any detail page (normal, MARC, ISBD)
  - any list contents page (/cgi-bin/koha/opac-shelves.pl?viewshelf=XX)

Situations to test:

- Add a single item to the Cart from the above pages

The link should change from "Add to cart" to "In your cart (remove)"
The count of items in your cart should reflect the addition, and the
notification box should appear.

- Remove a single item from the Cart from the above pages

The link should change from "In your cart (remove)" to "Add to cart."
The count of items in your cart should reflect the removal, and the
notification box should appear.

- View an item which is already in the cart from the above pages

The cart links should reflect whether the title is already in the cart.

- Remove one or more items from the Cart via the cart pop-up window

View the above pages as you do so to verify that the operation is
reflected immediately by the state of the "in your cart" links.

- Empty the Cart from the cart pop-up window

View the above pages as you do so to verify that the operation is
reflected immediately by the state of the "in your cart" links.

Tested in Firefox 9, Chrome 16, IE 7, and Opera 11.6 on Win 7

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-27 12:12:07 +01:00
Katrin Fischer
a529262501 Bug 7576: Add ISSN to SearchForTitleIn preference
Adds a new placeholder {ISSN} to the system preference SearchForTitleIn.
For a record with multiple ISSNs only the first ISSN will be used.

Addition: Makes a small change to GetMarcControlnumber so that it checks for
NORMARC too. If you set your system preference to NORMARC, it should output
{CONTROLNUMBER} correctly now.

For testing add following code to the system preference and check output
of SearchForTitleIn for different records in your OPAC and all 3 available
views (normal, MARC and ISBD):
<li>ISSN: {ISSN}</li>
<li>ISBN: {ISBN}</li>
<li>001: {CONTROLNUMBER}</li>

Patch also includes some unit tests:
perl t/db_dependent/Biblio.t

Signed-off-by: Magnus Enger <magnus@enger.priv.no>
Tested with marcflavour = NORMARC, on one book and one periodical record.

* Book

- Before the patch:
ISSN: {ISSN}
ISBN: 0375726446
001:

- After the patch:
ISSN:
ISBN: 0375726446
001: 022976914

* Journal

- Before the patch:
ISSN: {ISSN}
ISBN:
001:

- After the patch:
ISSN: 1890-6931
ISBN:
001: 080721370

Looks good in all 3 views! Thanks for fixing the 001 thing for NORMARC!

Also tested with marcflavour = MARC21, on the same records with the same good
results. Signing off!

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Tested marcflavour= UNIMARC, works fine too
2012-02-27 11:44:20 +01:00
Paul Poulain
9cc9db0753 Bug 6875 follow-up for Items/Biblio de-nesting
the sub _find_value is used only in PrepareItemRecord sub, that has been moved to Items package

This patch moves the _find_value in Items as well.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Editing an already arrived serial issue with an attached item
resulted in an error. After applying the patch it's fixed.
2012-02-27 11:13:02 +01:00
Colin Campbell
766b60e5b3 Bug 7454 Initialize return arrays in ILS/Transaction/RenewAll
Explicitly clear these arrays and update them directly.
In practice item numbers were already in them when called
so that more items were being returned than were actually
renewed (or failed)

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Functionally sound patch, and tested in production

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-21 17:35:56 +01:00
BibLibre
aa06364814 Bug 7513 Marc Import Hangs
On some record, the commit_biblio_file is creating wide
character
because as_xml is not used with correct parameter.
This patch fixes that.
To test on a UNIMARC Koha, stage attachment 7510 and
then import.
It hangs before the patch, it passes after.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-21 17:02:46 +01:00
D Ruth Bavousett
bbfaf8264c Bug 7535: ampersands not showing properly in non-XSLT OPAC
Jared's fix for Bug 3326 fixed this in the staff client, but not the OPAC; moving this one line fixes it
both places.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
This can be replicated by indexing with -x
OPACXSLTResults must be set to "normally"
Reproduced original bug with rebuild-zebra.pl -x -b -w -r -v -v
Patch corrects the issue, does not change intranet behavior.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-21 15:45:11 +01:00
Paul Poulain
6a520f7456 Bug 6193 follow-up of the follow-up = reindentation only 2012-02-21 13:16:11 +01:00
52afe06ddd Bug 6193 - Follow up: use SetEnv and remove memcached from koha-conf.xml
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Confirmed that memcached is still being used after the memcached configuration
in koha-conf.xml was removed, and the following two lines were added to
both virtual hosts in koha-httpd.conf:
SetEnv MEMCACHED_SERVERS "127.0.0.1:11211"
SetEnv MEMCACHED_NAMESPACE "KOHA"
2012-02-20 23:24:02 +01:00
Paul Poulain
f7a525fa09 Merge remote-tracking branch 'origin/new/bug_6875' 2012-02-20 16:45:42 +01:00
Paul Poulain
df5405c56e Bug 6875 de-nesting C4::Items
C4::Branch is used only in CheckItemPresave, moving from a use to a require in the sub
C4::Reserve:
    This package is loaded just for C4::Reserves::CheckReserves called in C4::Items::GetItemsInfo
    The GetItemsInfo stores the result of CheckReserves in a hash entry, count_reserve, that is used only in opac_detail to display the status of a hold. We could remove the reserve_count hash entry and inline C4::Reserves::CheckReserves directly from opac-detail.pl page
    in opac-detail.pl, instead of
    if( $itm->{'count_reserves'} eq "Waiting"){ $itm->{'waiting'} = 1; }
    write :
    if ( C4::Reserves::CheckReserves(<<parameters>>) eq "Waiting"){ $itm->{'waiting'} = 1; }
C4::Acquisition is used only in MoveItemFromBiblio, a sub that is rarely called. Moving from a use to a require in the sub
C4::Charset is used only in _parse_unlinked_item_subfields_from_xml. Moving from a use to require in the sub

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Checked opac-detail and cataloging. Code looks good.
2012-02-20 16:35:20 +01:00
Paul Poulain
49b167e848 Bug 6875 de nesting C4::Biblio
C4::Biblio is used in many many places. The goal of this cleaning is to do from C4::Biblio a package with as many dependancies as possible.

* C4::Heading is called only in 1 place, highly rarely used (only in 1 misc/link_bibs_to_authorities.pl), moving to require
* PrepareItemrecordDisplay is a sub that is more related to Items, moving it here. It means some scripts that used this sub must be checked against use C4::Items
* C4::Items is needed in EmbedItemsInMarcBiblio, moving it only in this sub, and switching to require
* 2 subs are totally useless z3950_extended_services and set_service_options, removing them

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
No test plan included, but tested some opac and cataloging functions.
Code looks good. Marked as Passed QA.
2012-02-20 16:35:17 +01:00
Paul Poulain
803095a798 Merge remote-tracking branch 'origin/new/bug_6488' 2012-02-20 16:28:14 +01:00
Liz Rea
2a8fe16752 Bug 6488 - followup - fixes issue with bibs with no items and serials being suppressed
To test:

* create a bib with no items
* update your index
	serial records and your new bib with no items should be displayed.
* add something to the OPACHiddenItems syspref (I like itype: [BK] from the test data)
*** test both ways, with something in there and with the syspref empty.
* add an item to your new bib that would be suppressed
* update your index
* search for the bib
	The item should not show
* change the item into a state where it would no longer be suppressed
* update your index
* search for the bib
	The item should show in the opac
* just for fun, delete your item
* update your index
* Search for the bib - it should still display.

I tested on MARC21 - please test UNIMARC as well.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-02-20 16:28:02 +01:00
biblibre
f4a5206ae0 Bug 6137: fix a Circulation bug. userenv null
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-02-17 18:38:42 +01:00
Robin Sheat
70d95b515e Bug 7532 - remove dependency on Date::ICal
This removes the dependency on Date::ICal (which is largely
unmaintained) and replaces it with DateTime::Format::ICal which can do
the same job. It also updates all the docs and installation scripts to
handle this change.

Note that this causes a minor behaviour change: previously the generated
times were converted to UTC, now they are left "floating" (that is, have
no timezone attached) and so will appear as the local time when imported
into a calendar. I don't anticipate this'll cause any issues however.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-02-17 11:49:05 +01:00
Jonathan Druart
0200639b00 Bug 5346: Linking suggestions and orders.
Display suggestion info in acquisition module:
  basket.pl
  neworderempty.pl
  orderreceive.pl
  parcel.pl

To Test:
Create a suggestion and accept it.
Create a new order from this suggestion
Receive this order

For each step, check if suggestion info are visible.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Test provides more unit tests, all complete successfully.
perl t/db_dependent/Suggestions.t
Note: test case should be cleaned up after running tests.

Display changes are consistent and information about the suggestion
is shown on every important screen now.

I created an order from a suggestion and one from an existing record.

No problems found.
2012-02-17 10:27:52 +01:00
Paul Poulain
caa08b6b2a Merge remote-tracking branch 'origin/new/bug_6875' 2012-02-17 09:08:16 +01:00
Liz Rea
1ddc9322df Bug 7546 - cannot view subscription detail
This patch adds a C4::Search to subscription-detail.pl to compensate for a removed
one from auth.pm during the denesting effort.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>

Bug 7546 Do not call routine as bareword

Fixes compilation errors due to calling routine without parens
Also nothing was gained (and obfuscation added) by forcing
the return into a hash ref have changed variable to hash
tidied up the if else chain

These routines should be refactored out future

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>

bug 7546 follow-up, enabled_staff_search_views problem

* enabled_staff_search_views was not exported by C4::Search, should have been
* serials/serials-edit.pl were also missing it

Comments:
* checked with for file in */*.pl; do perl -wc $file; done that no script was still having this problem

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Final sign off for all 3 patches
Note: I had some problems with tests, but it is probably related to my data and not this patch.
2012-02-17 09:05:54 +01:00
795dc61f75 Bug 3264 UnCloneField() / minus button in MARC editor can clear all subfields (authorities AND biblio)
All subfields following the removed subfield were not saved.
Problem is in C4/Biblio routine TransformHtmlToMarc.
If the field is emptied, the param list contains a code param but no subfield
param. The while loop handling the subfields could not handle that. Also added
a FIXME because the whole routine depends on an assumption about the order of
cgi parameters that is not strictly guaranteed.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
I was unable to replicate the problem, but can confirm that the patch does
not break anything under any of the following platforms/browsers:
Mac OS X 10.6.8:
Chrome 16.0.912.77
Firefox 9.0.1

Windows 7:
Firefox 3.6.3
Firefox 9.0.1
IE 8.0.7600.16385

Ubuntu 11.10
Firefox 8.0
Chromium 15.0.874.106 (Developer Build 107270 Linux)

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-16 18:52:46 +01:00
Paul Poulain
e780e0669c Bug 6875 de-nesting Auth.pm
* removed use C4::Koha that is useless
* moved "use C4::Members" to "require C4::Members" just before GetMemberDetails call. This will avoid loading C4::Member everytime a page is called by someone not logged

* still to do = work on C4::VirtualShelves, that can be optimized, definetly !

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Rebased on latest master, 28 Jan 2012

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Please WAIT with virtual shelves. Working on that..
Tested and marked as Passed QA.
2012-02-15 14:58:42 +01:00
Paul Poulain
4d2cfa610e Bug 6875 de-nesting C4::VirtualShelves
* C4::Circulation is unused, removing it
* C4::Members used only in ShelfPossibleAction, switching from use to require
* C4::Auth used only in RefreshShelvesSummary, a sub called only in
opac-addbybiblionumber.pl script, moving the require inside the sub

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-02-15 14:58:40 +01:00
Paul Poulain
58c46b27af Bug 6875 de-nesting C4::Heading
C4::Search is needed only in authorities sub, moving it here and switching to
require

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Corrected call to SimpleSearch in both subs where it is used. Additional
performance improvements are included in bug 7284. 28 Jan 2012
2012-02-15 14:58:39 +01:00
Paul Poulain
c52f0b7fdf Bug 6875 de-nesting C4/Serials
* use C4::Branch is loaded only to call GetBranchNAme in PrepareSerialsData
  and set branchname in the hashresult. This sub PrepareSerialsData is used
  in the following scripts :
opac/opac-serial-issues.pl:    my $subscriptioninformation=PrepareSerialsData($subscriptions); => no use of branchname after
serials/serials-collection.pl:   $subscriptions=PrepareSerialsData(\@subscriptioninformation); => no use of branchname after
=> we can remove the ->{branchname} from the result, and remove the C4::Branch dependancy
* moves use C4::Items to require C4::Items, to call AddItemFromMarc, when
  receiving a serial, with Recieving create an item set in the subscription.
* removed use C4::Letters and C4::Search, that are useless

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-02-15 14:58:38 +01:00
Paul Poulain
8165aeef77 Bug 6875 de-nesting C4::Koha.pm
* removed use C4::Output, that was not used
* moved use URI::split to getitemtypeimagelocation and switched to "require".
  Checked it still works through admin/itemtype.pl
* moved use Business::ISBN to _isbn_cleanup.pl and switched to "require".
  Checked it still works with the following small script :

use C4::Koha;
print GetNormalizedISBN("1-56592-257-3");

(GetNormalizedISBN uses _isbn_cleanup)

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-02-15 14:58:28 +01:00
Paul Poulain
1ffbd262b3 Merge remote-tracking branch 'origin/new/bug_5327' 2012-02-15 13:55:48 +01:00
Paul Poulain
5a6cdd088f Revert "Bug 5327: Patch removes unneeded self=shift from TTParser::unshift_token"
This reverts commit d0bb27bf23.
see : http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=5327#c171
2012-02-15 13:54:44 +01:00
Paul Poulain
6f6bfb8aff Merge remote-tracking branch 'origin/new/bug_5327' 2012-02-15 10:49:53 +01:00
Chris Hall
d0bb27bf23 Bug 5327: Patch removes unneeded self=shift from TTParser::unshift_token
Removed  unneeded self=shift from unshift_token
(as peek and next do not take a self, makes interface more consistent)

http://bugs.koha-community.org/show_bug.cgi?id=5327
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-02-15 10:47:23 +01:00
Chris Cormack
efd26a44d5 Bug 7432 : Fixing caching for C4::Languages
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-15 10:26:26 +01:00
Chris Cormack
516abc4896 Bug 7432 : Fixing caching for SQLHelper
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-02-15 10:26:24 +01:00
Chris Cormack
70237c49ef Bug 7432 : Fix how we are setting expiry time when caching
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
2012-02-15 10:26:22 +01:00
Julian Maurice
2916ddae4a Bug 6838: Add pagination and filtering on subscriptions table
Use dataTables plugin

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-13 16:49:35 +01:00
Maxime Pelletier
89893e8d43 Bug 6634 manager_id and itemnumber not populated when paying fines
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-13 15:16:21 +01:00
Jared Camins-Esakov
6378436089 Bug 7345: Enable exporting records sans private fields
Add an option for marcstd to the opac-export.pl and catalogue/export.pl
scripts. This new format removes all 9XX, X9X, XX9 fields and subfield $9
(with the exception of 490 in flavours of MARC other than UNIMARC). The work is
done in C4::Record::marc2marc.

This patch adds the new export option 'marcstd' for exporting MARC
records without 9xx, x9x and xx9 fields and subfields to the staff
detail page.

Testing plan:
1. Export a record in "MARC (Unicode/UTF-8)" format as a control
2. In the OPAC, run the following jQuery to add the marcstd option to the UI:
> $("#export #format").append("<option value='marcstd'>MARC (no 9xx)</option>");
3. Export the same record in "MARC (no 9xx)" format
4. Compare the two, noticing that any subfield $9 or fields including 9 (other
   than 490 in flavours of MARC other than UNIMARC) have been removed

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Works as advertised now.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
This patch squashes both the original patch and Katrin's follow-up adding
marcstd as an export option on the staff client.

Feb 13, 2012 (marcel): Amended this patch to resolved two definitions of $error in catalogue/export script.
2012-02-13 11:32:18 +01:00
Paul Poulain
1161079e1f Bug 7511 [ENH] Template caching (T::T feature)
Just add to your Koha configuration file
<template_cache_dir>/path/writable/by/apache/user</template_cache_dir>
in the <config> block, and Koha will use template caching, for about
10% CPU time saving.

on linux servers, /tmp is usually OK

(also fixes an indenting with a TAB)

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
The results of using this are very striking. Based on an insufficient
sample size, it would seem that the time spent in T::T is reduced by a
factor of at least 5.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-13 11:01:46 +01:00
Srdjan Jankovic
2041f2c973 bug_7090: AllowItemsOnHandCheckout syspref
Observe AllowItemsOnHandCheckout syspref when using SIP self checkout

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
To test:
* place an item on hold for patron A
* attempt to circulate that item to patron B (via SIP/selfcheck)
	syspref off: item should not circulate to patron B
	Syspref On: item should circulate to patron B

Both conditions passed in our testing.
Also verified that normal staff client behavior regarding this situation was preserved. It was.
2012-02-10 19:28:25 +01:00
Paul Poulain
098ac93315 Merge remote-tracking branch 'origin/new/bug_6842' 2012-02-10 15:19:20 +01:00
Kyle M Hall
58c62f69c1 Bug 6490 - Lost and paid not updated when book is checked out.
Signed-off-by: Liz Rea <wizzyrea@gmail.com>

Tested:

item checked out and marked lost - item is removed from borrower's checkouts and charged to patron
Checking out the item (without checking it in first) removed the fines and issued the item normally.

Passed prove t xt t/db_dependent (results congruent with current master failures)

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-03 17:37:52 +01:00
Chris Cormack
43b3fb9701 Bug 7238 : Shifting SIPconfig.xml to the etc dir and the scripts to misc/bin
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
The scripts run with the caveat that you must specify the path to SIPconfig.xml. The followup previously attached should take care of that issue.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-03 15:15:22 +01:00
Liz Rea
866bb561dc Bug 7238 Followup - fix sip_run to require path to SIPconfig.xml
This requires Chris C's patch to move the scripts to the new location outside of C4.

To test:
run sip_run.sh with no arguments - it should fail with a message to add the path and try again.

Run sip_run.sh with a path to a valid SIPconfig.xml - it should start and run.
2012-02-03 15:15:19 +01:00
MJ Ray
d4b132136c Bug 7476 Remove executable bit from files that probably should not be executed
Signed-off-by: Aleksa Vujicic <aleksa@catalyst.net.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Amended to replace some copy-and-paste comments only with consent of MJR.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-03 14:22:15 +01:00
Paul Poulain
8dc85214be Merge remote-tracking branch 'origin/new/bug_7190' 2012-02-02 18:17:42 +01:00
Paul Poulain
f799c32307 Merge remote-tracking branch 'origin/new/bug_6210' 2012-02-02 15:35:38 +01:00
Paul Poulain
1637af349e Bug 6210 follow-up, removing warn
See http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=6210#c27
and http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=6210#c28
2012-02-02 15:35:26 +01:00
Paul Poulain
522a7a3255 Merge remote-tracking branch 'origin/new/bug_6488' 2012-02-02 15:21:45 +01:00
Paul Poulain
1f66e9fa69 Bug 6488 adding a 2nd \n to silence logs
YAML don't like when you try to open a YAML file with just a \n. This patch add a 2nd \n to silence logs.
2012-02-02 15:21:25 +01:00
Srdjan Jankovic
6b092f0e27 bug_7190: Do not reverse writeoffs when item is returned
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-02 14:21:08 +01:00
Koustubha Kale
bafc25c9d2 Renew membership from expiry date or from current date based on a syspref
This patch adds a system preference under Patron -> BorrowerRenewalPeriodBase
Using this preference the patch allows renewal of Patron account either from todays date or from existing expiry date in the patrons account.

To test : Apply patch; Set System Preference BorrowerRenewalPeriodBase ( under Patron ) to "current membership expiry date";
Renew a patron; You will observe that patrons account expiry date has been calculated from previuos expiry date instead of today's date
( as is the default in Koha prior to this patch ).
2012-02-01 22:53:40 +01:00
Henri-Damien LAURENT
54e6b44da9 Bug 6842 FU : library transfer limits edits not stored
Followup :
Changes the DeleteBranchTransferLimits signature :
one now needs to delete only the limits for ONE branch
2012-02-01 22:47:56 +01:00
Paul Poulain
64da5af31d Bug 6539 follow-up, fixing wrong indentation 2012-02-01 17:51:05 +01:00
Peter Lorimer
22aed769a6 Bug 6539 - When searching the catalogue, if I get no results then hit the Z39.50 search the title field in the pop up window is populated with what I searched for.
If I search for a valid ISBN number and hit the Z39.50 search, the title field
is populated with the ISBN number I searched for. This number should populate
the ISBN field and not the title field.

http://bugs.koha-community.org/show_bug.cgi?id=6539
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

To test:
- Search new ISBN using ISBN search from advanced search page
- 0 results - click on Z39.50 search
- Z30.50 form will have your ISBN in ISBN search option

I am signing off on this, because it's an improvement over the current
behaviour.

I see some  problems though that should perhaps be addressed in a separate
bug or as a follow-up:

If you use th catalog search field and search for an ISBN or
a keyword the right fields of the Z39.50 search form will be populated, but
the search index will be put in front:

ISBN: kw,wrdl: 9783492251495
or
Title: kw,wrdl: koha testing

If you search for ISBN as keyword on the advanced search page, it will
still populate the Title search.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-01 17:47:22 +01:00
Srdjan Jankovic
91d870f67a bug_6210: Select framework if merging two records with different frameworks
ModBiblio() - set framework to "" if "Default"

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

All 4 tests passed:

Test 1:  Merge two records with the same framework
    Desired result:  shouldn't get any prompting to pick a framework, and the
same framework should be used

    Test 2:  2 records, different frameworks, into the kept record's framework
    Desired result:  merge with kept records framework used

    Test 3:  2 records, different frameworks, into the discarded record's
framework
    Desired result:  merge with used records framework used

    Test 4:  2 records, different frameworks, into a third framework
    Desired result:  merge with third framework used
2012-02-01 17:40:43 +01:00
Srdjan Jankovic
706712dd1e bug_6488: Take in account opachiddenitems when searching in opac
Changed searchResults() interface
Added trailing \n when parsing OpacHiddenItems to make YAML happy
XSLTParse4Display() and buildKohaItemsNamespace() take hidden
items as input param
Removed numbering from the search results, looks wrong with
hidden items

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-02-01 16:00:20 +01:00
Paul Poulain
209a6fb8c7 Merge remote-tracking branch 'origin/new/bug_6836' 2012-01-27 13:58:50 +01:00
Paul Poulain
19e3607c49 Bug 6836 follow-up fixing POD
this should please jenkins
2012-01-27 13:58:20 +01:00
Paul Poulain
81cf767b17 Merge remote-tracking branch 'origin/new/bug_7367' 2012-01-27 12:38:00 +01:00
9c0ce2bf3b 7367 Removing reintroduced debugging statement from Auth.pm
Commit 07d1eae7cc removed this statement from the module, but some months later commit 7b12e07d3b reintroduced it again while reindenting code ;)

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
2012-01-27 12:30:48 +01:00
Chris Cormack
c1ee7a750f Bug 6836: Adding dependency on Modern::Perl
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-27 11:33:16 +01:00
Julian Maurice
8298250c49 Bug 6836: Add jQuery dataTables plugin
This patch add the javascript library, a CSS (and image files from
datatables.net) and another javascript file which provides some extra
features.
It also add a Perl module C4::Utils::Datatables which provides helpful
functions for server-side processing

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
2012-01-27 11:33:11 +01:00
Jared Camins-Esakov
587e2e920e Bug 1633: QA follow-up
* Show the "Upload images" button when OPACLocalCoverImages is enabled but
LocalCoverImages (i.e. local cover images on the staff client) is not
* Correct copyright and license comments in new files
* perltidy and replace tabs by four spaces

Signed-off-by: Koustubha Kale <kmkale@anantcorp.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-24 11:16:10 +01:00
Jared Camins-Esakov
b4fb5d4095 Bug 1633: [SIGNED-OFF] Add support for uploading images to Koha
A frequently-requested feature for Koha, especially by special libraries, is
the ability to upload local cover images into Koha.

This patch adds a bibliocoverimage table, and image handling code in the
C4::Images module. Key features of the implementation include:
1. The ability to have multiple cover images for a biblio
2. Handling for "full size" (800x600) and thumbnail-size (200x140) images
3. Uploading images directly from the record view

The image display functionality by Koustubha Kale of Anant Corporation will
follow in a second patch.

Special thanks to Koustubha Kale and Anant Corporation for the initial
implementation of local cover images, and to Chris Nighswonger of Foundation
Bible College for his prior work on patron images.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Magnus Enger <magnus@enger.priv.no>
Will add comments on Bugzilla.

Patch failed to apply because installer/data/mysql/sysprefs.sql had changed in master.
Corrected the same with this new patch.
2012-01-24 11:16:02 +01:00
Colin Campbell
d2c24f3bbf Bug 6790: Remove unnecessary variable from getroutinglist return
getroutinglist returns a count variable to indicate how many elements
are in the array. This is almost always a serious code smell. (We are
programming in a list manipulating language) The routine was executing
am unnecessary loop just to maintain that var.
Removed the variable from the routine and perldoc
refactored calls of the routine removed the c-style loops for
more idiomatic and maintainable for loops
renamed some opaquely named variables
removed a call to the routine where nothing was done with the data
moved some html out of the calling script and into the template

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-23 17:59:27 +01:00
Chris Cormack
b32d2d2165 Bug 7402 : Fixing the date formatting so links to the invoice page work
This depends on bug 929

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Uses the new TT plugin to display the date, while using iso format
to build a correct URL to the invoice page.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-23 17:52:19 +01:00
Paul Poulain
f961638465 Bug 5473 follow-up : removed warn & replace some tabs by 4 spaces 2012-01-20 16:30:48 +01:00
Srdjan Jankovic
92ca5a13e5 bug_5473: Update items when receiving shipments
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>

Tested by recieving multiple items with the AcqCreateItem
preference set to 'placing and order' and 'receiving an item'
In both cases the pricing and vendor is brought over to the
item record so I'm signing off.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-20 15:43:11 +01:00
Julian Maurice
8ffbf4e88c Bug 6694: Problem with casAuthentication syspref
A missing test in checkauth caused anonymous session to be destroyed and
re-created at every call when this syspref was set.
Almost the same issue is also fixed in check_api_auth, which caused
C4::Service->init to fail.

Signed-off-by: Alex Arnaud <alex.arnaud@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-20 14:19:56 +01:00
Jonathan Druart
6c2984e78a Bug 5347: Set translatable the "no email" error
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
This bookseller has no email shows up correctly, when vendor has
no email address.

Small change made: Changed bookseller to vendor.
2012-01-20 14:12:28 +01:00
Katrin Fischer
3e282ff91b Bug 5347: Follow up - Fix warnings, check/uncheck all and makes error message translatable
This patch fixes some minor problems found in late order management:

 1) Silences 2 warns in Letters.p
After patch is applied no more warns should show up in the logs.

 2) Fixes check/uncheck al
When limiting on one vendor the checkbox in the last header column
was doing nothing. I changed the checkbox to 2 links 'check all' and
'uncheck all' as it's done in other templates.

 3) Email has been sent
The message was hardcoded into the lateorders.pl file and not
translatable.
I moved it to the template and changed the wording slightly.

Note: The error message 'The bookseller has no email' comes from
Letters.pm. I didn't change that, because I was not sure where it is
used. The error message as is can not be translated and should be
moved into the templates too.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-20 14:12:27 +01:00
Jonathan Druart
ec5d679468 Bug 5347: Followup Adds columns claims_count and claimed_date in aqorders
FIX encoding problem

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Umlauts and diacritics now show up correctly in generated claims notices.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-20 14:12:27 +01:00
Jonathan Druart
b8e9829be5 Bug 5347: Adds columns claims_count and claimed_date in aqorders
This patch adds 2 columns in the aqorders table :
- claims_count : number of claims for an orders
- claimed_date : date of the lastest claim

In the lateorders.pl table, you can not select orders from different
supplier because there is just one letter sent after clicking the "Claim
order" button. So, it's logic that you want to select only orders from
this supplier.

Modification in C4/Letters.pm:
refactoring code for claimacquisition and claimissues letter type.
Now, fields for theses letters check the table name. It's not possible
to chooce aqorders.title, this field doesn't exist !
Furthermore, you can add a <order> tag around your item fields, like
this :

-- Begin example
<<LibrarianFirstname>>
<<LibrarianSurname>>

<<aqbooksellers.contact>>
<<aqbooksellers.address1>>
<<aqbooksellers.phone>>
<<aqbasket.basketno>>
<<aqbooksellers.phone>>
<order>Library : <<items.homebranch>>
In your possesssion : <<biblio.author>>. <<biblio.title>>.
<<biblioitems.publishercode>>, <<biblioitems.publicationyear>>.
Callnumber : <<items.itemcallnumber>>. doc type : <<items.itype>>
Barcode : <<items.barcode>>
Date for the return : <<items.onloan>>.</order>

<<LibrarianSurname>>
-- End example

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
2012-01-20 14:12:27 +01:00
Paul Poulain
9c06057f21 Merge remote-tracking branch 'origin/new/bug_6328' 2012-01-19 16:50:49 +01:00
Lyon3 Team
0e9edb1102 Bug 6328 follow-up, fixes Undefined subroutine &C4::Circulation::Delta_Days
The Delta_Days sub is called only when a patron that is already debarred must be debarred for a longer period.
This (rare) case probably hasn't be tested during QA, because the sub is not loaded.
Loading it fixes the problem

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-19 16:49:25 +01:00
Paul Poulain
0b0212cae3 Merge remote-tracking branch 'origin/new/bug_7083' 2012-01-18 16:20:26 +01:00
Paul Poulain
b70e4f3d6d BZ4376 Minor change in GetMarcAuthor
A minor change in the GetMarcAuthors function of C4/Biblio.pm allow differentiate the type of authors in the templates

This change allow doing things like this in the templates:
<TMPL_IF EXPR="tag == 700" && code eq 'a' >
 <strong>Author:</strong>
<!-- TMPL_ELSE -->
 <TMPL_IF EXPR="tag == 710" && code eq 'a' >
  <strong>Corpotation Author:</strong>
<!-- /TMPL_IF -->
<!-- /TMPL_IF -->

(html template syntax, but also applicable to template toolkit)

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Works as claimed and doesn't break existing functionality.
2012-01-18 12:07:12 +01:00
Paul Poulain
d704808684 Merge remote-tracking branch 'origin/new/bug_7276' 2012-01-17 18:14:03 +01:00
Chris Cormack
94516e7f2a Bug 7276 : Follow up, adding a sub to clear the cache
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-17 18:13:52 +01:00
Henri-Damien LAURENT
6c38cc23d9 Bug 7276 : member entry Performance improvement
Before this patch : 9619 borrowers added in 31 Minutes, After : 68 seconds.
This adds Hashref to table structure in C4::SQLHelper to speed up bulk edits.

Signed-off-by: Stéphane Delaune <stephane.delaune@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-01-17 18:13:51 +01:00
6fd3635a59 Bug 6885 Follow up patch, invert tested condition
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>

Not sure the brackets are nessecary, but I think I remember learning
bitwise operators have a lower priority than other relational
operators so wanted to make sure we notted the result of the bitwise
and, not the flag

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-17 18:06:55 +01:00
JAMES Mason
b0a4233366 Bug 6466 - hung socket read causes SIP tests to fail
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-17 16:16:09 +01:00
Adrien Saurat
cb1a946693 Bug 7357: display serial title instead of '---'
The full title of a serial is now displayed even
if several lines have the same title.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-17 16:08:32 +01:00
Paul Poulain
6456afea95 Bug 6990 follow up PODDOC & unit test updating
This patch removes the TransformKohaToMarcOneField sub, but there was some remaining POD & unit test about it
2012-01-17 12:07:03 +01:00
02d392a502 TransformKohaToMarc enhancement
TransformKohaToMarc function is called for each biblio and item that has
to be build. This function execute a DB statement for each Koha field
that has to be mapped to a MARC tag/letter. This impact deeply
performances for script like rebuild_zebra, especially since items are
not anymore in bilio records and have to be rebuild on the fly.

I'm proposing a patch which read Koha field to MARC field mapping just
one time and cache it. My test show a 30% execution time improvement on
rebuild_zebra.pl script. It uses already cached mapping in C4::Context.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

http://bugs.koha-community.org/show_bug.cgi?id=6990
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-17 12:07:02 +01:00
Paul Poulain
d7a51d83c1 Merge remote-tracking branch 'origin/new/bug_6132' 2012-01-16 14:53:08 +01:00
Julian Maurice
b867d7d12a Bug 6132: Update sysprefs cache in set_preference
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-01-16 14:52:23 +01:00
Paul Poulain
79b0b76481 Merge remote-tracking branch 'origin/new/bug_929' 2012-01-13 17:47:30 +01:00
Chris Cormack
55d0b65522 Bug 929 : Follow up adding unit tests, discovered C4::Dates cached the syspref with no way to clear it, fixed also. 2012-01-13 16:17:48 +01:00
Ian Walls
000047769f Bug 7396: Debarred message not showing over SIP2
Corrects typo in list of flags; was DEBARRED, but the actual name of the flag is
DBARRED (for some reason)

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-13 12:17:04 +01:00
Admin User Koha
a830f46fc7 Bug 7360 Import Default framework into other deletes default Framework
Step to reproduce :
- export default framework as SQL
- create new framework
- Import the exported SQL file into this new framework.
Go to default framework :
It disappeared.

If some libraries want to share default frameworks, then it is a major bug.
This patch fixes the test in order to cope with 0 character framework name.

Signed-off-by: François Charbonnier <francois.charbonnier@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-13 11:52:45 +01:00
Marc Balmer
c9c6bbdea8 Bug 7356 - Fix various typos and mis-spellings
Fix typos: the the -> the, wether -> whether, developper -> developer.

http://bugs.koha-community.org/show_bug.cgi?id=7356
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-13 11:51:26 +01:00
d785d9d57d Bug 6098 Followup -- doesn't replace NSB/NSE by space
On any page, NSB/NSE characters are replaced by space in Output.pm. It isn't a
good thing:

  - It isn't necessary since Zebra indexer handle properly those characters as
    delimiter.
  - It isn't necessary for display since XSL file already do that.
  - It isn't efficient since a regex is done on every whole page sent by Koha,
    not only on biblio record part.
  - It removes an information that librarian want to keep in their biblio
    records: any record edited in Koha loose its NSB/NSE characters.

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-13 11:21:48 +01:00
Julian Maurice
7a3f77de8c Bug 5358: Show cancelled orders in basket page
Signed-off-by: Christophe Croullebois <christophe.croullebois@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-13 10:52:50 +01:00
Duncan Tyler
00290e8619 Bug 6627 [Signed Off] - Update to improve security in specified log files - bug 6627
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Verified sessionlog file is not written to /tmp when patch is applied. Also verified original bug - logging in did in fact log to /tmp.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-06 14:20:34 +01:00
Chris Cormack
01875b565d Bug 929 : Followup fixing date formatting
This patch introduces a Filter (KohaDates) for use in templates
[% USE KohaDates %]
[% somevariable | $KohaDates %]

This will format the date in the format specified by the systempreference

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
2012-01-06 13:52:08 +01:00
Chris Cormack
fa1a90fd4f Bug 7394 : Fixing scoping issue with XSLT processing. Also bailing out early for 404 inestead of doing unnessecary processing
Signed-off-by: Frédéric Demians <f.demians@tamil.fr>

I can confirm the bug and the solution.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Second sign-off from me, patch fixes display of detail page
for last record on a result page.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-01-06 12:29:43 +01:00
Alex Arnaud
a600fbd74c Bug #6142 - Delete sub CanBookBeReserved and delete function's reference on @EXPORT
Original-Author:    Alex Arnaud <alex.arnaud@biblibre.com>, Stéphane Delaune <stephane.delaune@biblibre.com>
Original-Signed-off-by: MJ Ray <mjr@phonecoop.coop>

Correct use statement bug found by Ian Walls

Author: MJ Ray <mjr@phonecoop.coop>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-27 18:38:42 +01:00
bc2a1d18e2 Bug 1623 - Provide view of approved comments
This patch creates two tabs on the comments administration page:
one for approved comments and one for unapproved comments. Each
display is paginated according to the numSearchResults preference.
The list of approved comments has, instead of a link to approve,
a link to unapprove.

The JavaScript table sorter has been removed since it doesn't make
sense to sort individual pages of a multi-page result set.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-27 18:26:50 +01:00
Frédérick Capovilla
6408547cc0 Use MARCAuthorityControlField008 in AddAuthority for empty 008s
The old default value for field 008 didn't have the correct length,
which could potentially cause data corruptions.

Uses the MARCAuthorityControlField008 preference added by BUG4839.

http://bugs.koha-community.org/show_bug.cgi?id=7072
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-27 17:57:42 +01:00
22dca58cba Bug 6193 - Use memcached cache koha-conf.xml configuration variables
Basically I add some code to Context.pm so it stores koha-conf.xml config vars
in memcached server. It is arguable whether this is an improvement or not,
tests are needed to conclude something about this.

Error handling was an issue with Cache::Memcached, I tried to do it the
simplest I could.

Note: As it was pointless to read the xml file to get the memcached
server info for accessing them for retreiving the info in the koha-conf.xml
file... I passed those values through apache's SetEnv. These variables
are set acordingly through the install scripts and commented out if koha
was setup not to use it.

Bug 6193 - Properly comment the code

Required by slef.

Regards
To+

Signed-off-by: Federico Rinaudo <frinaudo@infocpt.com.ar>
Signed-off-by: MJ Ray <mjr@phonecoop.coop>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-27 17:16:35 +01:00
2ab11c4892 6302 follow up
Updates to_address in message queue when sending an email (when needed).

Signed-off-by: Koustubha Kale <kmkale@anantcorp.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-16 17:59:56 +01:00
Srdjan Jankovic
6e07fd7b00 bug_2830: Remove reserve when checking out if the borrower is not the first one in the reserve queue
To test:
Create 4 holds on a bib, for patrons A, B, C, and D,

Check in the item to mark hold as waiting for patron A
Check out the item to patron B -> reserve for patron B should be removed
Check in the item to mark hold as waiting for patron A
Check out the item to Patron A, hold should complete normally
Check in the item to mark hold as waiting for patron C
Check out the item to patron D -> reserve for patron D should be removed.
Check in the item to mark hold as waiting for patron C
Check out the item to patron C, hold should complete normally
Check in the item -> there should be no more reserves.

We also tested:
Created 4 holds on a bib with two items, for patrons A, B, C, and D

All worked as expected.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-16 16:21:38 +01:00
Frère Sébastien Marie
0ad7e76cb7 Bug 7282 - invalid language selection
- ensure that without cookie, language selection is based on browser
  preferences
- refactor function to obtain langugage for stem in search (opac + intranet)

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

To reproduce the bug:

- Activate en and fr-FR for OPAC
- Clear your browser cookies
- Select your language preference in your browser: fr, fr-fr, en
- Load OPAC main page
- OPAC is displayed in English, rather than French as asked by browser
  preferences

  Apply the patch and test:

  - Clear your browser cookies
  - Load OPAC main page
  - Pages are displayed in French

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-16 14:20:11 +01:00
Duncan Tyler
c2bba3ffc8 Bug 7331 - Circulation.pl generates errors in the log
Fixed error in C4::Dates causing unneeded warnings

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-15 17:38:39 +01:00
17df078261 Bug 7325 - Editing a list generates errors in the log
Checking for variables before trying to use them in
building the pagination menu

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-15 17:09:15 +01:00
Katrin Fischer
d831a03fde Bug 7321: Silence some warns in Koha.pm
While testing bug 7013 I noticed a lot of warns in the koha error log.
This patch is silencing them.

To test:
Add or edit an authorised value and check your log files before and after
applying the patch.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-15 16:53:32 +01:00
Paul Poulain
62914dfd83 Revert "Bug 5327: Patch removes unneeded self=shift from TTParser::unshift_token"
This reverts commit 18bb9c2210.
2011-12-15 16:13:43 +01:00
Paul Poulain
746deb5127 Revert "Bug 5327: Patch removes unneeded self=shift from TTParser::unshift_token"
This reverts commit 18bb9c2210.
2011-12-15 16:11:47 +01:00
Paul Poulain
e12fca0eb8 Merge remote-tracking branch 'origin/master' into new/bug_5327 2011-12-15 13:49:47 +01:00
Paul Poulain
4f0da07de6 Merge remote-tracking branch 'origin/new/bug_5327' 2011-12-15 13:43:58 +01:00
Chris Hall
18bb9c2210 Bug 5327: Patch removes unneeded self=shift from TTParser::unshift_token
Removed  unneeded self=shift from unshift_token
(as peek and next do not take a self, makes interface more consistent)

http://bugs.koha-community.org/show_bug.cgi?id=5327
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-15 13:41:45 +01:00
Chris Hall
48f25fec43 bug 7239 fix to avoid error being thrown even though a record is created
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
When creating an item in acquisitions while ordering and not filling out
any fields, there is no longer shown a perl error message.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-14 17:37:41 +01:00
Ian Walls
afd2098f3c Bug 7160: paying fines throws error
The call to ReturnLostItem in C4/Accounts was not properly namespaced to
come from C4::Circulation.  That prefix is added to the call.

To test:

Pay a fine, and confirm the error disappears (and the fines is still paid)

Signed-off-by: Brendan <brendan@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-14 14:31:32 +01:00
Chris Cormack
288c1a768d Bug 7139 : Log addition and deletion of circulation messages
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Changed the two action names into caps no-spaces.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-13 18:05:04 +01:00
Ian Walls
6e497471e3 Bug 7093: placeholds for suggestion table not working in notices
In parseletter_sth, the suggestions table was defined twice.  The first time (which
is the only definition to get called, as it matches first then exists), defined the
primary search keys as borrowernumber and biblionumber.  This is incorrect; the only
usage of the suggestions table tokens is with suggestionid as the key.  This is defined
further down the if/then chain.

This patch removes the erroneous sth query definition.

To test:

1.  Place a suggestion with a patron account with a configured email you can access
2.  Approve or reject it
3.  Verify the message you receive contains suggestion tokens (like title, author and reason)

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Suggestion mails for accepted, rejected and ordered look good now.
I couldn't test the suggestion mail AVAILABLE (bug 7096), but
assuming this would work too.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-13 16:49:54 +01:00
Brendan
b255d091fd Bug 7215 - changed callnumber PRESET field to itemcallnumber
Fixes problem with creating new labels - before it populated with callnumber and not itemcallnumber

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-12 17:36:09 +01:00
8f0c10ef1b Bug 7259 - Show a count of items pending approval on staff client home and tools pages
- Correcting permissions checks on the home page
- Adding default parameter (1)  to numberofreviews subroutine

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-08 12:06:41 +01:00
d3c02c6bb6 Bug 7259 - Show a count of items pending approval on staff client home and tools pages
This patch adds count indicators on the staff client home page and
the tools page for the number of items pending approval. On the
home page this includes suggestions, comments, and tags. On the tools
page a count of pending comments and tags is shown.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Counts appear for all types of actionable items listed, all are clickable through to the proper place.

Nice work!
2011-12-08 12:04:28 +01:00
2951d83e9d Fix for Bug 7083 - [SIGNED-OFF] Show creator name on list of public lists
Show the name of the patron who created each list on the list
of public lists. Also:

- correcting unescaped ampersand in the template
- making conditional a check on a variable that doesn't always
  exist, causing noisy errors in the log

Signed-off-by: Magnus Enger <magnus@enger.priv.no>
After applying the patch a column for "Created by" is added to the display of
public lists, and the errors in the log are silenced. On the "Your lists"
tab, the link on the list name now has an escaped ampersand.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-08 11:48:24 +01:00
Colin Campbell
d39262e61d Bug 6987 Make return from Overdues::GetFine consistent
If there is not a fine amount return zero not
undefined or other undefined behaviour

Use more meaningful var names for readability

Signed-off-by: Sophie Meynieux <sophie.meynieux@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-08 11:19:10 +01:00
924ce3697d Bug 6908 - increase DEBUG level for *NOISY* Dates.pm init() messages
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-06 20:38:08 +01:00
Adrien Saurat
28ef6c199b Bug 6893 : Updates suggestions list when adding orders
A suggestion added through addorder.pl now changes
to the ORDERED status as initially intended (but so
far it stayed as ACCEPTED).

This fixes the list of potential suggestions to order,
the ORDERED ones don't appear anymore.

Bug 6893 : Follow-up: Disabled WHERE clause excluding ORDERED status

In SearchSuggestions, a WHERE clause was excluding the ORDERED
suggestions from the results. Now replaced with 1=1.

(before 6893 correction, the WHERE clause was excluding the
STATUS='CLAIMED' suggestions, but this status cannot be found anywhere
else in the code... so I changed to STATUS='ORDERED' which
seemed more accurate, but it had impacts on OPAC and some Admin tabs)

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Both patches applied cleanly, sqashed them together after testing.

Tested:
1) Creating new suggestions
- from OPAC, shows up in patron account as 'requested', pending in staff
- from staff, shows up in list of pending suggestions
Status in database is ASKED

Note: suggestions made from staff for the same patron have suggestedby = 0
in the database, so are not showing up in the patron account. Is this by
intention? (if not, I think this is a separate bug)

2) Accepting suggestions
- from list
- from edit page
Status in database is ACCEPTED
Patron account shows 'Accepted by the library (Bestseller)'

Note: after changing the status from the list, bug 4068 kicks in and
some tabs and even suggestions are hidden. Going back to the acq start
page and going back to the suggestions page from there helps.

3) Rejecting suggestions
- from list
- from edit page
Status in database is REJECTED
Patron account in OPAC shows 'Suggestion declined'

Note: bug 4068 again.

4) Ordering from suggestions
- new basket
- ordered 2 accepted suggestions
SUCCESS! Great improvement:
- Status in database is now ORDERED
- Already ordered suggestions no longer show up on list of
  suggestions to order from.
- Patron account shows 'Ordered by the library (Bestseller)'
- Suggestion management page shows a new tab 'Ordered'
- For the suggestion with a valid 'suggestedby' borrowernumber,
  a mail was generated. (bug 7094)

5) Receive ordered suggestions
- received my ordered suggestions
This is is not in the scope of this bug, but for documentation:
- No message was generated to inform the patron
- Status stays ORDERED
- Patron account still shows item as ordered, no change to 4)

Looking at the suggestion.tt I think there should be another status
AVAILABLE.
216     [% ELSIF (suggestion.suggestiontypelabel == "Available") %]Available

Signing off, fixes bug reported. Danke!

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-06 20:30:04 +01:00
Dobrica Pavlinusic
0352a8f24a Bug 6022: Auth_with_ldap check if categorycode is valid
When importing users from LDAP, Auth_with_ldap.pm doesn't check if value for
categorycode is present in categories table in Koha resulting in referential
integrity error instead of using default value from koha-conf.xml

Test scenario:
1. enable LDAP in koha-conf.xml using <useldapserver>1</useldapserver>
   and add <ldapserver> configuration with
   <categorycode is="SomeLDAPField">DefaultCategoryCode</categorycode>
2. select/create LDAP user with category in SomeLDAPField which isn't in
   Koha
3. try logging in and ensure that assigned category to new user is
   DefaultCategoryCode

Signed-off-by: Marijana Glavica <mglavica@ffzg.hr>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-06 19:51:15 +01:00
2177562ecf Bug 3385 - Add checkout date and renewal date to display list of checked out items
This patch doesn't fix the origial request to add the renewal date
to the list of checked out items, but follows the other bug commenter's
suggestion that the information be added to the item details page
(moredetail.pl).

The other part of this request, to add the checkout date, has already
been fixed by another patch.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-06 19:22:01 +01:00
Ian Walls
d059079caf Bug 2346: Remove C4::Overdues::UpdateBorrowerDebarred in favour of C4::Members::DebarMember
Removes now-unused subroutine from C4::Overdues, as well as the db_dependent unit test

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-12-06 19:12:20 +01:00
Alex Arnaud
46831f8086 bug/7285 Use C4::Auth::checkpw instead of checkpw only
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-06 18:58:30 +01:00
32d8abbb43 Bug 6786: Follow up fixing index names with hyphens
Adds hyphen to regex looking for index names in buildQuery.
Test by searching on Control-number=...

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-06 11:46:09 +01:00
Henri-Damien LAURENT
7655eaedc1 Bug 6132: preference were case sensitive.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-06 11:39:37 +01:00
Paul Poulain
7267ea91ac Merge remote-tracking branch 'origin/new/bug_5211' 2011-12-06 11:36:57 +01:00
Srdjan Jankovic
1713133fdd bug_5211: LostItem() - added charge_fee param to control fee charging
Pass charge_fee = yes wherever is LostItem() called, which effectively
means tha there's no change.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-06 11:36:34 +01:00
Ian Walls
c70ff88205 Bug 2616: Remove unnecessary 'use HTML::Template' calls
Removes deprecated calls to HTML::Template or HTML::Template::Pro from:
C4/Output.pm
catalogue/export.pl
reports/issues_by_borrower_category.plugin
reports/itemtypes.plugin

Only remaining calls are in misc/cronjobs/rss/rss.pl, misc/cronjobs/smsoverdues.pl,
and t/test_template.pl.  These scripts still legitimately depend on H:T:P

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-06 11:34:05 +01:00
Christophe Croullebois
32317878c0 Bug 7105: Bad request in GetSubscriptions
If $string or $issn is passed to GetSubscriptions, the request is false.
See Bug 5864, especially the last comment from Frédérick Capovilla.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-12-03 08:21:21 +01:00
Paul Poulain
869f83a4ce Bug 6699 follow-up
The warn $error will issue this message if there is a message.
It's because how warn $blabla works : it does not work, you have to add ""
2011-12-03 07:43:15 +01:00
7bbc358067 6699 Add not-empty check for warnings from load_sql in Installer
Eliminates fake warnings "Something is wrong on line 530".

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
2011-12-03 07:41:30 +01:00
Paul Poulain
d019b4c63a Bug 6328 Fixes for comment 35
* correctly indenting with tab the debarrcomment field
* setdebar.pl is called without status parameter, thus it is not working anymore. It's fixed & some dead code has been removed. To test : debar someone, then go to patron detail page and click "lift debarment"
* the test function had not been updated. The fix define a debarment date of 2099-12-31 (no limit)
2011-11-25 14:00:47 +01:00
Paul Poulain
41b42dbe32 Bug 6328 follow-up for QA comments
* fixed documentation in C4/Auth_with_ldap.pm
* updated ILSDI/Utility.pm to work with debarred being a date
* updated Members.pm/patronflags to work with debarred being a date (copy/paste of BibLibre code that had not been backported)
* fixed opac-reserve to check correctly for debarred status

I also have removed a duplicate line on circulation.pl when the patron was restricted = the information was displayed twice
2011-11-25 14:00:47 +01:00
Paul Poulain
1fe3514c3c Bug 6328 fine in days does not work
Some code coming from BibLibre has been lost in the process of inclusion in
3.4. The result is that fine in days does not work at all (you can setup rules,
but it does nothing)

Step to reproduce:

- Koha > Admin > circ rules > set 1 day fine every day of overdue for default
  rule
- Issue a book return date last week
- check-in the book => no debarment is set

The following patch will fix all of those problems by :

* updating borrowers.debarred to a date field (instead of tinyint). It contains
  the limit of the debarment
* changing API of DebarMember and UpdateBorrowerDebarred to pass a date
* display debarrdate where applicable. Note that a debarrdate of 31/12/9999 is
  considered as unlimited and not displayed
* added a debarrcomment, usefull to explain why a patron is debarred (this is
  independant from debarrdate changes and can be used when placing an unlimited
  debarment too)

[2011-05-12] F. Demians. It works as described. And I can confirm this
functionality is impatiently awaited by French libraries since one year. Thanks
BibLibre for the good work and for contributing this code.

Bug 6328 Followup--update DB structure

Thanks Katrin.

Bug 6328: make comment a textbox / fix debar by notice trigger

Debarring by notice triggers was broken, because the new function
expects a date as second parameter.

The comment field in patron account details was a very long text field.
Patch changes it to be a textbox instead.

Bug 6328: Lift debarment leaves patron account

'Lift debarment' redirects to an empty circulation page.

BZ6328 follow-up 3

Fixes comment 23 from Fernando L. Canizo : when the patron was debarred and debar removed
he still could not check-out.

The changes in the IsMemberBlocked (that were on biblibre/master) were lost somewhere
The sub was still checking for old_issues instead of calling CheckBorrowerDebarred
to get a debardate if applicable

Note : this bug was appearing only is you had issuing rules defined for itemtype/categorycode/branch.
Seemed to work if you had only default rules. That's probably why it hadn't been spotted before

BZ6328 follow-up 4
Comments fron Zeno Tajoli: The patch is OK and I sign-off it. Two little changes done on
installer/data/mysql/kohastructure.sql and installer/data/mysql/updatedatabase.pl

Signed-off-by: koha <koha@kohabase.localdomain>
2011-11-25 14:00:47 +01:00
Paul Poulain
c0e1984981 Merge remote-tracking branch 'origin/new/bug_3388' 2011-11-25 11:43:04 +01:00
Katrin Fischer
573b9275a6 Bug 3388: Restore account number on vendor page
This patch makes it possible to add the account number to the
vendor information. The used field aqbookseller.accountnumber was
already existent in the database.

To test:
1) Add a new vendor with accountnumber
> Verify form has a field for accountnumber
> Verify accountnumber does show up on vendor summary page
2) Edit this vendor, change accountnumber
> Verify change was correctly saved and new number is displayed on
vendor summary page
3) Delete accountnumber

Signed-off-by: Liz Rea <lrea@nekls.org>
Tested 1-3, no troubles found.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-25 11:07:11 +01:00
Chris Cormack
9a4e9e54f2 Bug 6629 : Sanitizing input from language cookie
I dont think we can use only 2 digits, some languages is much longer
zh-hans-TW for example

But the regex should stop it bening able handle nasty chars,
whitelisting safe ones instead

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
I checked the patch doesn't break language switching and language selection.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
I confirm the bug security issue was not here for master, but this fix improve the behaviour, so pushing it
2011-11-25 10:56:04 +01:00
fd949453e8 Bug 7254 Show pending orders from baskets with closedate > 180 days
Current code for selecting pending orders does not select orders from baskets
with a closedate > 180 days.
The code in Acquisition.pm already includes a FIXME for that.
IMHO this part of the where clause should just be removed; an order is pending
until it is filled. If you do not want to fill it, delete it.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-24 15:15:18 +01:00
Colin Campbell
862b6ee90d Bug 7191 Remove GetBorrowerIssues from @EXPORT
No subroutine GetBorrowerIssues exists in C4::Circulation
So don't export it into users' namespace

Signed-off-by: Albert Oller <ago@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-24 13:45:13 +01:00
Ian Walls
f56e6c0a58 Bug 7073: GetCOinSBiblio should take $record object, not biblionumber
This patch changes the GetCOinsBiblio subroutine to take a MARC record object
(as returned from GetMarcBiblio) instead of a biblionumber.  The first thing the subroutine
did was GetMarcBiblio, and the $biblionumber passed was never used again.

This subroutine was only used 3 places: opac/opac-search.pl, opac/opac-detail.pl,
and C4/VirtualShelves/Page.pm.  In the first and last cases, it was used in a loop.
In the last two cases, a call to GetMarcBiblio had already been done.  This is expensive, and
we were doing it twice per record.

For opac/opac-search.pl, the call to GetMarcBiblio was moved to just outside GetCOinSBiblio;
this will not change the performance at all.  But for opac/opac-detail.pl and C4/VirtualShelves/Page.pm,
a redudant call to GetMarcBiblio is now avoided.

To Test:
1. Enable COinSinOPACResults in system preferences.  Perform a search in the OPAC.
   Verify that the COinS spans are showing up
2. View the detail record of one of the returned items.  Confirm that the COinS span exists on the detail page.
3. View a list in the OPAC.  Confirm that COinS spans are still showing up

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-24 11:44:02 +01:00
Srdjan Jankovic
2b2e544f05 Bug 6303: Display Organisation and Parent Organisation names when viewing a borrower of type organisation
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works as advertised, doesn't affect display for non-organisational patrons.

Note: Display change in OPAC only affects the summary tab.
It would be a little bit more consistent to make the name show the
same on all tabs in OPAC patron account.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
I repeated Katrin's signoff here (with permission). The patch only changed for some minor rebasing and cosmetic QA requests. Passed QA now.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-24 11:30:08 +01:00
Ian Walls
440c0f21ee Bug 7134: patron records getting corrupted birthdates
If no date of birth is provided in a new member form, the borrower gets the birthdate of "00/02/0", which
is obviously incorrect (the result of passing 0 to the database directly)

The fix is to remove a conditional check buried deep in C4::SQLHelper.  This is in a helper subroutine that was changed
for the Unified Member Search dev (bug 6253).  Reverting this small change to the conditional does not seem to break
search, but testing will be required.

To test:
1. apply patch, and create a new patron with blank birthdate.  The new patron should now have a blank birthdate instead of '00/02/0'
2. search for a borrower by 1 part surname, confirm search works
3. search for a borrower by 2 part surname, confirm search works
4. search for a borrower across firstname AND surname; confirm
5. search for a borrower and include categorycode/branchcode filters

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
I confirm all working tests 1-5
1. Created patron with blank birthdate - birthdate was blank
2. Searched for patron "henry james acevedo III" by using "acevedo" - result was correct
3. Searched for mr. acevedo using "Acevedo III" - result was correct
4. Searched for Henry James Acevedo III, Henry Acevedo and James Acevedo - results were correct
5. Searched for Mr Acevedo with the branch he was not in, with the branch he is in, with a category he was not, and a category he was. All results were correct.

also noted: inner searching seems to be working now? Example: Henry James (firstname) Acevedo III (surname) - searching James Acevedo brings back the correct patron.
Not complaining, just noting. :)

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-18 22:59:11 +01:00
bada2e4c36 Bug 6321 Add a 1/4 months frequency
Thanks Stefano Bargioni for the typo fix

[2011.09.16] Thanks Paul for catching the display error.
[2011.10.11] Thanks Katrin for finding display error on OPAC.

Signed-off-by: Colin Campbell <colin.campbell@ptfs-europe.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested prediction pattern and display in OPAC.
No problems found.
2011-11-17 16:56:28 +01:00
Joy Nelson
1d0192b85c Bug 7221: C4/Biblio.pm documentation is incorrect.
$dbh is not a valid first parameter.  Removed $dbh from line 392 to show correct syntax.

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
2011-11-17 16:47:28 +01:00
Paul Poulain
0f8db0c538 Bug 7188: C4::Context::db_scheme2dbi does case-insensitive grep
Checking NYTProf in C4::Context, it appears that the /i flag is highly time-consumming
As we don't support anything outside from mysql, returning directly mysql directly

If in a future version PostgresSQL works, then we will have to update this sub. But if an ORM is introduced, this code will be removed completly anyway

Testing note:
Drops execution time of the line from 300ms to 20 microseconds (in my testing).
2011-11-06 15:49:48 +01:00
Paul Poulain
016e66c6f2 Bug 7184 raise mySQL error if debug is set
Before this patch, if a mySQL occured in Koha (any error), then the user was seeing nothing.
With this patch, if DEBUG is set in Koha VirtualHost, any mySQL error will make Koha die and display the SQL error

Step to test:
=== BEFORE PATCH ===
go anywhere, and change a mySQL statement to make it invalid.
Launch a page using the SQL you've made wrong, you'll see nothing, except you won't see the expected results

=== AFTER PATCH ===
Modify koha-httpd.conf, and add the following line, in the virtualhost (if it does not already exist)
SetEnv DEBUG 1
restart/reload Apache
Launch the same page, you'll get a Perl statement saying something like:

DBD::mysql::st execute failed: <<blablabla SQL error>> at <<where the error was raised line <<error line>>
2011-11-06 15:41:28 +01:00
Paul Poulain
1e5347fb34 Merge remote-tracking branch 'origin/new/bug_7146' 2011-11-06 12:04:43 +01:00
0c0ddf9211 Fix for Bug 7085 - Problems with searching for orders in acquisitions
Changing "if ( defined $input )" to "if ( $input )" in the section
of the script which builds the order search query seems to give
successful searches where they didn't exist before. Searches from
the advanced order search screen work with title, author, vendor,
basket number, date, etc.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Searches for date ranges, title and author keywords give
me the correct results now.
2011-11-06 10:23:47 +01:00
7ee0565f5c 7146 (Update timestamps when deleting a biblio)
Currently, when you delete an item, the timestamp column in deleteditems is
updated with current time. (This comes from an [unintentional] additional
update statement in DelItem.) It makes deletion time visible.
In the past, the marcxml was updated too at that moment, resulting in an
updated timestamp in biblioitems too. The timestamp in biblio was not touched.

If you delete a biblio however, the timestamps in deletedbiblio and
deletedbiblioitems do not reflect time of deletion. They still show the time of
last update before the record was deleted. This last update can be extracted
from MARC field 005 too.

This behavior is not consistent nor logical. I would suggest to add a statement
in DelBiblio to force updating the timestamp in deletedbiblio(items) too. It
makes the time of deletion visible in the record too. The time of deletion of a
biblio can be very useful for e.g. synchronizing purposes.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-05 05:50:02 +01:00
Ian Walls
36d8e5df96 Bug 7061: unnecessary global variables declared in C4::SQLHelper
Removes $tablename and $hash from global scope of C4/SQLHelper.pm.  They are never used;
all instances of $table are locally scoped to the subroutines, and $hash is never used.

This may help with persistance; if not, it's at least a bit of trivial cleanup.

To test:

1.  Search for a patron
2.  Create a Contract in Acquisitions
3.  Modify that Contract
4.  Delete that Contract

All instances should return error free.  This checks the subroutines of SQLHelper

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-04 12:11:13 +01:00
d998166ea3 Bug 6989 Patron categories not properly displayed if not pure ASCII
C4::Category module returns badly encoded patron categories when they are
containing non pure-ASCII characters.

To reproduce this bug:

  - Go in Administration > Patron Categories
  - Add a new category. Give it this code for example:
    Café
  - Click on Patrons link on top menu
  - Click on New button

    => You get 'Café' displayed without accent

Signed-off-by: Piotr Wejman <ropuch@bagno.be>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-04 12:07:08 +01:00
Ian Walls
a0a9368bec Bug 7076: Lists render OPAC XSLT on staff side
Adds a small check in C4::VirtualShelves::Page::shelfpage to only render
OPACResultsXSLT if the $type is 'opac'.  Since parsing the XML is such an expensive
thing, and the resulting XSLTBloc is not used on the staff side, this will increase
performance for Lists in the intranet

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-11-04 10:35:28 +01:00
Frédérick Capovilla
327be442bd Bug 6963: Corrects a problem when a new order is created with a duplicate barcode.
If the AcqCreateItem preference is set to "ordering" and the barcode for
the new item is already in use, no error is returned, but an invalid
itemnumber is saved in the aqorders_items table and the item is never
created.

This patch adds a duplicate barcode verification in neworderempty.pl
_koha_add_item is also modified so it won't return an invalid ID when
an item can't be added.

http://bugs.koha-community.org/show_bug.cgi?id=6963
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Test plan on second patch.
2011-11-04 10:22:28 +01:00
Ian Walls
d52095b48c Bug 7078: Remove HTML::Template::Pro from Koha perl dependencies list
Removes HTML::Template::Pro as a requirement (since we're now on Template::Toolkit).

To test:

On a system without, HTML::Template::Pro installed, run perl koha_perl_deps.pl -m -u

Shouldn't return anything about HTML::Template::Pro

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-22 09:01:26 +13:00
Chris Cormack
b6cc3acdac Merge remote-tracking branch 'kc/new/bug_7060' into kcmaster 2011-10-22 04:09:49 +13:00
Ian Walls
c5bc35b694 Bug 7060 Followup: AddReturn needs GetMemberDetails
In my haste, I overlooked circ/returns.pl's need for borrower flags.  This patch
changes back the call in AddReturn from GetMember to GetMemberDetails

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-22 04:07:37 +13:00
Salvador Zaragoza Rubio
4a2a95cc25 Bug 6483 - Paging in opac-detail when coming from a search
Add paging in opac-detail when coming from a search to be
able to continue viewing the previous and next register
from the detail without returning to the results.
The partial list pagination can be showed to increase forwarding
or rewinding in the pagination.
It's implemented for Zebra search and not build_grouped_results.

The param busc with all the information from the search is stored
on the session when running opac-search and opac-detail, outside these
pages the busc param is removed from the session.

A list of the biblionumbers inside the OPACnumSearchResults range
is passed to avoid repeating the searching everytime we see the
previous or next biblio. The searching will be run again when
we are going to exceed the list and a new one will be calculated
from the new search.

Signed-off-by: Magnus Enger <magnus@enger.priv.no>
Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-21 04:57:09 +13:00
Ian Walls
769acee41a Bug 7060: GetMemberDetails unnecessary in C4::Circulation
Replaces all instances of GetMemberDetails with the more efficient GetMember.  Since
no hash values other than the borrowers table's fields are used in this module, the
transition is safe.

To test:

1.  Checkout a material; the page should load without error
2.  Renew a material: the page should load without error
3.  Return a material: the page should load without error

The above test plan invokes all the subroutines affected by this patch; any call to an undefined
value in a hashref should give a warning

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-20 14:09:58 +13:00
Ian Walls
a1e3975067 Bug 7057: CheckReserves uses GetMemberDetails unnecessarily
Replaces call to GetMemberDetails with a call to GetMember.  Much more efficient,
and since only branchcode is used, no required data is lost.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-20 14:03:20 +13:00
bf64266e99 Follow-up fix for Bug 4473 - Recent comments view for the OPAC
This follow-up adds a system preference which controls display
of a link to recent comments in the OPAC masthead alongside
"Advanced search," "Tag cloud," etc.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-20 12:12:45 +13:00
Ian Walls
823b807ac9 Bug 7016: CanBookBeReserved uses GetItemsInfo unnecessarily
CanBookBeReserved uses the very heavy-weight function GetItemsInfo to simply retrieve
the itemnumbers attached to a given biblio.  The function get_itemnumbers_of() is much
lighter-weight and returns the required information; switching to it will reduce the overall
system resource cost of placing a hold.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-20 11:55:10 +13:00
05d35b0ae0 6094 Fixing ModAuthority problems
Pref MergeAuthoritiesOnUpdate does not exist; should be dontmerge
(AuthoritiesMarc.pm).

Instead of folder modified_authorities, now introducing a table for this
purpose: need_merge_authorities. This eliminates several permissions and
security issues. This change applies to AuthoritiesMarc.pm and
merge_authority.pl.

POD lines added for ModAuthority. Deprecated parameter $merge removed.

Test this patch by applying the db revision first from the second patch.

August 4, 2011: Rebased.

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

Thanks Marcel. It works as advertised. Both modes are functionnal
(back):

- Immediate with dontmerge=0: After modifying an authority record, its
  linked biblios are immediately modified. This isn't the case in 3.4.5.
- Delayed with dontmerge=1: After modifying an authority record, its
  linked biblios are not modified. But an entry is added to
  need_merge_authority new table and 'merge_authorities.pl -b' script
  updates biblios.

Comment: need_merge_authority, like zebraqueue, should be cleared
from time to time.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-20 11:28:53 +13:00
Chris Cormack
d80c3369d2 Merge remote-tracking branch 'kc/new/bug_6253' into kcmaster 2011-10-20 09:23:36 +13:00
Ian Walls
d80cf35e9b Bug 6253 followup: explicitly check ref value for ARRAY before casting
in C4::SQLHelper::_Process_Operands, $operand has been modified to be cast as an array ref
if the incoming $operand is not a ref.  However, the incoming $operand could be some other
kind of ref (hashref for example), which would case the dereferencing in line 419 to fail and exit.

Adding an explicit test for whether the ref is ARRAY seems to clear up this issue.

To test, run t/db_dependent/Members.t.  Before, it fails after test 3.  After, it completes all tests.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-20 09:20:20 +13:00
Christophe Croullebois
4d67e69107 Bug 5680: Order cancelling improvement : delete attached items & biblio if avalaible
- all items attached to the order are deleted
- if there is no more items, and if the biblio is not in other orders and no subscriptions and no holds then the biblio is proposed to deletion
Now whe have 2 links : "delete order" and "delete order and catalog record", the second one appears only if the deletion is possible.
Note that if an hold is related to the item or if the item is unique for the biblio the link "Delete order" is canceled due to hold remaining.
On mouse over explanations are shown with count.
More lines of warnings with count are shown depending of the case.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Configuration:
AcqCreateItem = on order

Test cases and results:

1) Order new record with 2 items
a) From basket
- delete order: only deletes items, OK!
- delete order and catalog record: deletes record and items, OK
b) From shipment/receive
- delete order: only deletes items, OK!

2) Order 1 additional item for existing record with 1 item
a) From basket:
- delete order: works, existing item and record remain, OK
- Can't delete order and catalog record, 1 item left, OK!

3) Order new record with 1 item, title level hold on record
a) From basket:
- delete order: not possible, OK!
- delete orer and catalog record: not possible, OK!
b) From shipment/receive page
- Cancel: Deletes order, record and hold silently.
NO WARNING. NOT OK. See note below.

4) Order 1 additional item for existing record with 1 item,
item level hold on existing item
a) From basket:
- delete order: works, hold and existing item remain, OK!
- delete order and catalog record: not possible, OK!
b) From shipment/receive page
- Cancel: on order item is deleted, other item and hold remain.

5) Order new serial record, create subscription
a) From basket:
- delete order: works, record and subscription remain, OK!
- delete order and catalog record: not possible, OK!
b) From shipment/receive page:
- Cancel: Subscription and record are silently deleted. NOT OK.

6) Order additional item for existing record with other on order items
a) From basket:
- delete order: works, existing on order items remain, OK!
- delete order and catalog record: not possible, OK!
b) From shipment:
- Cancel: deletes order and ordered item. OK.

Changes made:
I changed the wording of the error messages a bit in the template.
I changed the message 'Can't delete order and catalog record' to not be
shown as a link, as the link does nothing. Tooltip still appears.
I attached a screenshot to the bug showing some of my changes.

Hope that's ok.

Necessary  enhancements:
Cancelling orders when receiving items should work the same as from the
basket summary page. We need the same checks and messages there before
deleting records and items automatically.
I am signing off on this, but to go into Koha it  needs a follow-up for the
order receive page.
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-19 16:58:46 +13:00
Srdjan Jankovic
18b8991cf1 bug_6253: Unified member Search()
Removed SearchMembers() and replaced with more generic Search()
Amended Search() to try cardnumber first
Replaced SearchMembers() calls with Search()
Replaced SELECT with Search() where appropriate
C4::SQLHelper:
- added support for '' key for search filter.
- when passing an array to filter, join with OR (rather than AND)
- added support for key => [val1, val2] in filter
- did not document - there was no input documentation to start with,
  and SQLHelper should be replaced with something better anyway

Signed-off-by: Liz Rea <lrea@nekls.org>
(again - testing merge issue)
The functionality of the patch seems to be maintained with Biblibre's changes.

I tested the following:
Extended attribute searching: works
3 part name searching: works
2 part name searching: works
1 part name searching: works

From:
mainpage.pl
members-home.pl
	Patron search limited by branch: Works
	Patron search limited by patron category: works
	Ordering by cardnumber instead of surname: works
The "Check Out" field in the masthead.

Circ Autocomplete is not reliably functional at this time, but the problem appears to predate this patch.
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-19 16:23:02 +13:00
Paul Poulain
7631bae2b2 Bug 7051 de-nesting C4::Reserve, 1st step
C4::Search is not used, so removing it from C4::Reserves
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-19 04:02:27 +13:00
Paul Poulain
86e9c29f54 Bug 7037 de-nesting C4/Print.pm
removing use C4::Circulation, that is useless

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-19 03:48:21 +13:00
Paul Poulain
56b9412562 Bug 7036 de-nesting C4::Circulation
Just removing use C4::Koha, as other packages are widely used.

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-19 03:47:31 +13:00
Paul Poulain
94b067b53c Bug 7035 de-nesting C4::ClassSource & ClassSortRoutine
just removing use C4::Koha, that are useless

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-19 03:25:59 +13:00
Paul Poulain
69732f5c62 Bug 7034: de-nesting C4/Branch.pm
use C4::Koha was loaded only to call C4::Koha::get_infos_of in get_branchinfos_of

the sub get_branchinfos_of was used nowhere
(checked with "grep -R get_branchinfos_of *")
only one reference was made to get_branchinfos_of, in reserve/request.pl, but the sub was not used in fact (maybe removed previously & silently)

This patch removes sub get_branchinfos_of and use C4::Koha in C4::Branch, as well as the reference in request.pl and the t test

The patch doesn't remove use C4::Branch in reserve/request.pl, as it's still used for other subroutines.

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-19 03:23:31 +13:00
Srdjan Jankovic
4770555855 bug_5533: Slightly improved marking items as lost
Call LostItem() whenever item is lost.
LostItem() new arg - mark returned.
Disabled Lost Status on catalogue item edit.

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

For follow up we need to explain how to hide the 952$1 (lost) from
the framework by putting it in the 'ignore' tab.

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-18 09:01:39 +13:00
Ian Walls
4e95e94727 Bug 6789: biblios with many items can result in broken search results link
This patch fixes an issue whereby biblios with many items (often > 500) would index,
but not the biblionumber itself, resulting in search results with a) inaccurate item counts
and b) no biblionumber to use in the link to the details page.  This is due to Net::Z3950::ZOOM  not providing
a mechanism for specifying different connection attributes; the maximumRecordSize ZOOM connection attribute,
if not specified, defaults to 1MB, which is less than the size of a MARC record with many, many 952 fields.  Since
it is unlikely we can fix Net::Z3950::ZOOM in a timely fashion, this patch aims to build a workaround on the Koha end.

This patch changes EmbedItemsInMarcBiblio to use append_fields instead of insert_ordered_fields,
so the 999$c will come before the item records.  It's VERY unlikely we will encounter more than 1MB of biblio-level MARC
content, as this would break the ISO-2709 standard by a large factor.

To this end, it also moves the fix_biblio_ids portion of get_corrected_marc_record out of rebuild_zebra.pl,
and makes it a part of GetMarcBiblio (right before EmbedItemsInMarcBiblio, so the 952s still come last).  fix_biblio_ids
is kept as a subroutine for the deletion portion of rebuild_zebra.pl, which still uses it.

It also uses the subroutine parameter in GetMarcBiblio to do the EmbedItemsInMarcBiblio action, rather than having
rebuild_zebra.pl perform it on the itemless record returned from GetMarcBiblio.  Simpler and cleaner that way.

To verify bug issue:
1. Find a biblio with over 700 items (or enough that the resulting MARCXML is greater than 1MB)
2. search for this biblio (in a search that would return multiple results, not just this title).  You should get the title in
the results list
3. attempt to click the link to this biblio's details page; the biblionumber should be blank, leading to a 404

To test solution:
1. Apply patch
2. modify the biblio slightly (click the 005 for example) and save
   OR manually add the biblio to zebraqueue for reindexing
3. after rebuild_zebra.pl -z -b -x runs, use the same search as above. The title should still appear.
4. click the link, and find yourself on the biblio detail page as desired

Signed-off-by: D Ruth Bavousett <ruth@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-15 13:47:24 +13:00
Chris Cormack
a118102d4e Merge remote-tracking branch 'kc/new/bug_5995' into kcmaster 2011-10-15 12:59:34 +13:00
Ian Walls
dcb4ac77fb Bug 5995 Followup: checkpw was returning inconsistent values
In the case of LDAP, checkpw was returning the cardnumber of there user, but it was being treated as the
userid.  This patch updates checkpw_ldap to return the cardnumber AND the userid, and updates checkpw to
uniformly return cardnumber and userid in all instances, so that whoever is authenticating can use the
desired value in the right way.
2011-10-15 12:58:10 +13:00
d7cbdd3d0b Bug 6825 OpacNav menu hide user menu on opac-user.pl page
This patch add a new syspref OpacNavBottom which is placed on all pages
after OpacNav. On Patron pages, specif patron links are placed between
OpacNav and OpacNavBottom, like this:

  OpacNav
  Patron links
  OpacNavBottom

To test:

  1 Apply this patch
  2 For RM, modify kohaversion.pl and updatedatabase.pl appropriately
  3 Test that OPAC pages are displayed as before, OpacNav on the left
  4 Test OPAC patron pages: OpacNav is as before displayed after patron
    links
  5 Split OpacNav between itself and OpacNavBottom
  6 Patron pages display patron links between OpacNav and OpacNavBottom

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-14 11:20:06 +13:00
Amit Gupta
6c9ab3678a Bug 6807 - Add ISBN filter to advanced order search.
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-14 10:57:30 +13:00
Galen Charlton
72eeac56fd bug 5780 followup: RIS export now includes all URLs
Also cleanup whitespace and adjust the line ending per
bug 6769.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-14 10:37:31 +13:00
Chris Cormack
412666e52b Bug 5780 - Export the URI as part of a RIS export
Squashed commit of the following:

commit 8486cd30caf879ddff93aaa5fab722838db946a1
Author: Chris Cormack <chrisc@catalyst.net.nz>
Date:   Mon Feb 21 10:23:07 2011 +1300

    WR76962 - Fixing typos

commit f3ac9d9233db2b410fded112e16e54b27280af0a
Author: Chris Cormack <chrisc@catalyst.net.nz>
Date:   Mon Feb 21 09:56:43 2011 +1300

    WR76962 - Extending RIS support to handle URI

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-14 10:34:52 +13:00
Paul Poulain
37902b25a7 Bug 6840 warning in logs
In staff interface, in search (catalogue/search.pl), there is a warning saying:
[Fri Sep  2 18:20:24 2011] search.pl: Use of uninitialized value $key in hash
element at /home/paul/koha.dev/koha-community/C4/Templates.pm line 227.

The problem happens when searching from the quick search toolbar, not when you
search from advanced search.
Investigating, it seems it's because the sort_by is not defined in this case.

This patch
* fixes the problem in Search.pl by setting the parameter only if there is a sort_by field
* modify te Template->param sub to get a better error message. Instead of having just "use of uninitia..." get the value you try to set to an empty key. Much easier to understand which line causes the problem

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-13 16:17:33 +13:00
7621591ae6 Bug 6912 Test 008 presence in get CoinS function
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-13 15:57:18 +13:00
Chris Cormack
cdd798ec32 Bug 6885 Follow up to fix superlibarian permission check 2011-10-13 15:54:48 +13:00
b64dbb246c Bug 6885 Allow superlib to delete items from any library
When IndependantBranches syspref is enabled, a 'regular' user can only
delete items belonging to his/her library. But a superlibrarian should
have the permission to delete items from all libraries. He can't for the
time being. This is fix by this patch.

How to test?

- On a multi-libraries Koha, activate IndependantBranches
- Log in with a superlibrarian user
- Find a biblio with one item from another library than the user home
  library
- Click on Edit > Edit Items
- On the list of items, all lines have Delete link
- If you try to delete an item from another library than the user home
  library, deletion will fail.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-13 15:52:20 +13:00
Paul Poulain
1c0702c76e Bug 5630, follow-up
Fixes chris comment 28, that was a consequence of Marcel comment 27
Recent error
[Thu Sep 01 14:22:45 2011] [error] [client 192.87.126.61] [Thu Sep  1 14:22:45
2011] opac-MARCdetail.pl: DBD::mysql::st execute failed: Unknown column
'limit_desc' in 'field list' at /usr/share/koha/testclone/C4/Auth.pm line 276.
Seems to come from this commit 9a3950f673 (5630
CAS Improvements)

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-13 10:51:12 +13:00
Ian Walls
74c7c4e3a5 Bug 5630 Followup: checkpw_ldap not imported
If LDAP authentication is used, Koha barks that C4::Auth::checkpw_ldap is
undefined, which is true.  checkpw_ldap needs to be imported from C4::Auth_with_ldap,
like it was before the bug fix for 5630

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-13 10:50:50 +13:00
Chris Cormack
046c996c2f Bug 5630 CAS improvements
Squashed commit of the following:

commit 0e13a5278e11b288e48190dc26f31e96d06598dd
Author: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
Date:   Wed Jan 19 21:24:39 2011 +0100

    Bug 5630 : fixing C4/Auth.pm

commit b55abc7a0dc1ca43b2610a27246293e9a9346e18
Author: Matthias Meusburger <matthias.meusburger@biblibre.com>
Date:   Wed Jan 19 21:24:38 2011 +0100

    Bug 5630 : Adds CAS documentation

commit df0098a6a65465e6e734f99f65fb453dd3fa11d1
Author: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
Date:   Wed Jan 19 21:24:37 2011 +0100

    Bug 5630 : ilsdi service AuthenticatePatron doesn't with CAS syspref on

    Signed-off-by: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>

commit 31c8f0c0facfafae011ad24c9d458c50f2fad296
Author: Matthias Meusburger <matthias.meusburger@biblibre.com>
Date:   Wed Jan 19 21:24:36 2011 +0100

    Bug 5630 : Adds the ability to authenticate against multiple CAS servers

commit 9d0def826135d5756533dc0dcf8e0a107d1ac8fc
Author: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
Date:   Wed Jan 19 21:24:34 2011 +0100

    Auth_with_cas : removing a warning

    $sth was defined twice in a function
    Removing the second definition

commit 5ee550e9a2bb7ab6bc09f14fced6ce0df8011eb0
Author: Matthias Meusburger <matthias.meusburger@biblibre.com>
Date:   Wed Jan 19 21:24:33 2011 +0100

    Bug 6012 : MT 2270: CAS proxy

    CAS Proxy
    Examples included are now really usable

    Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-13 10:49:49 +13:00
Jared Camins-Esakov
f09e2ca27e Bug 5528: Analytic records support
Display links to parent biblios, show linked items in holdings, allow holds on
linked items. This uses MARC to maintain relationships.

Sponsored by the Mississippi Department of Archives and History and RapidRadio
Solution. Originally developed by Savitra Sirohi and Amit Gupta at OSSLabs, with
UNIMARC support added by Zeno Tajoli. Commits squashed and merge conflicts
resolved by Chris Cormack from Catalyst. Respect for NORMARC and some small
framework portability fixes made by Jared Camins-Esakov of C & P Bibliography
Services.

IMPORTANT NOTE: A bug in the 773 coding for MARC21 was corrected from the
original OSS Labs code. The 773s generated by the pre-release code did not have
the first indicator set to '0', which means that they were not supposed to
display. Going forward, the first indicator will be set correctly, but existing
records created with this code will no longer appear (they appeared before only
due to another bug). To correct this, you could globally (or, to make sure you
only modify records created with the Analytics tool, for records with 773$0)
change the first indicator of the 773 from blank to '0'.

== Background ==
An analytic record for an item is a more detailed, monographic biblio for an
item attached to a serial record .  This is often used for special issues of a
journal that are released as books on their own (assigned an ISBN, as well as an
ISSN/volume/issue).  It is important for researchers to be able to search for
these items both as issues of the serial, and as monographs.  It is equally
important for the library to not have duplicate item records for the item in
question to have to keep synchronized.

== Establishing relationships ==
Analytical records are connected to items belonging to parent or host
bibliographic records. This can be accomplished by:
* From an analytical bibliographic record linking to an host item by providing
  the item barcode as input
* From a host item by using option "analyze", this creates a new empty
  bibliographic record with field 773 (MARC21) populated
* Running a new CLI script that establishes a relationship between the
  analytical record and the host item identified by the barcode in the
  analytical record's 773$o (MARC21)

== Connecting Records ==
The relationships are maintained in the MARC records, we have not used database
tables at all.

== MARC Representation ==
In MARC21/NORMARC we have used:
* 773$9 to store the Koha item number of the host item
* 773$0 to store the Koha biblio number of the host bibliographic record

The above fields are used to display the relationships in various screens in the
OPAC and the staff interface. Additionally, when populating field 773 with host
item's details, we have used following MARC 21 mapping:
* 'a' <= 100/110/111 $a (author main)
* 'b' <= 250$a (edition)
* 'd' <= 260$a, 260$b, 260$c (place, publisher, year)
* 'o' <= barcode
* 't' <= 245$a (title)
* 'w' <= (003)001 --> if no 001 is available, we can populate biblionumber
* 'x' <= 022$a (issn)
* 'z' <= 020$a (isbn)

In UNIMARC, this code uses:
* 461$9 to store the Koha item number of the host item
* 461$0 to store the Koha biblio number of the host bibliographic record

When populating field 461 in UNIMARC, the following mapping is used:
* 't' <= 200$a (title)

== Treatment of Holds ==
A key requirement was to allow holds to be placed on host items from the
analytical record. We have accomplished this by allowing holds on specific
copies only. Biblio level holds are not allowed. This ensures that holds are
placed on specific items that are relevant to the analytical record.

== Deleting host items with linked analytical records ==
As we have not used database tables to maintain relationships, we had to use
search to find out if any linked analytical records are present. If 1 or more
analytical are present, we do not allow deletion of items. This is similar to
what we see when we try to delete authority records.

== Importing analytical records ==
Analytical records can be imported using bulkmarcimport or the GUI tools. The
new CLI script can be executed after the import to establish relationships with
host items. The script will establish relationships using the host item's
barcode, the barcode must be present in 773$o of the analytical record.

== What if there are two or more copies of the host item? ==
The current design will require that there be two host (773) fields, one for
each copy.

== What if there is no barcode available for the host item? ==
It is still possible to establish a relationship, by populating 773$9 with the
host's item number. However the CLI script uses barcode in 773$o to establish
relationships so it won't work where barcodes are unavailable. Also from an
analytical record, it is possible to establish a relationship to a host item by
providing the barcode as input, this option will not be available as well.

Commits that added the following features were squashed by Chris Cormack (this
is not a list of every commit):
* Display links to host records from biblio detail screens
* Support for UNIMARC, respecting the system preference 'marcflavor'
* Support holds from the OPAC
* Ability to link to items belong to host records from a analytical record
* Display items belonging to host records in the moredetail page
* Ability to edit items belonging to host records, also ability to delink from
  them
* Move get host items code into a C4 routine, also calling the new routine in
  related perl scripts
* Move host field population to a C4 routine, all changes in pl files to call
  new routine
* Allow only specific copy holds for analytical records plus changes to use new
  C4 routines
* Support for holds on items linked via host records
* Storing bibnumber and itemnumber in subfields 0 and 9, plus other mapping
  changes
* New command line script that establishes relationships between analytical
  records and host items and bibs. The script looks for host field (MARC21 773)
  in records, and based on barcode in subfield 'o' populates host bibnumber in
  subfield '0' and host itemnumber in subfield '9'. The script can be run after
  an import of analytical records, it can also be run in the crontab to maintain
  the relationships
* Ability to create analytical records from items, to view linked analytics, and
  prevent deletion of items that have linked analytics
* New template for catalogue/detail.pl (NOTE: not a new template file, just a
  new way of displaying analytics), template displays linked analytics and
  allows creation of analytical records
* New zebra index for item number in host fields. This index will be used to
  display links to analytical records from host records
* Display title of host record instead of the phrase host record
* Using detail.tmpl for analytics tab instead of a new template file
* Improved qualification info prepration in Prephostmarcfield
* Check for linked analytics before deleting item
* Display link to host record and more meaningful anchor text for edit item link
* Analytical record: Unimarc index in record.abs and help in
  create_analytical_rel.pl
* Adding a sys pref that controls display of options to create analytical
  relationships
* Add host entry in XSLT stylesheet in staff item detail
* Added host record support to OPAC detail XSLT
* Adding 773$0 and 773$9 to all frameworks
* Adding 773 subfields 0 and 9 to default marc framework via updatedatabase.pl
* Display create analytics and used in links in catalog detail
* Fixed problem where analytical records not showing in OPAC search results
  because GetMarcBiblio now needs a flag to add item records
* Fixed problem where analytics count was set to 1 for all records, not just
  those with analytics
* Fixed catalogue detail page not to show analytics counts if count is 0

Conflicts:
	installer/data/mysql/updatedatabase.pl
	koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/addbiblio.tt
	kohaversion.pl

Co-author: Savitra Sirohi <savitra.sirohi@osslabs.biz>
Co-author: Zeno Tajoli <tajoli@cilea.it>

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-13 10:03:39 +13:00
Chris Cormack
71defcbc6c Bug 5459 - Holds not being shifted when merging biblios
Holds are now shifted and reordered by date placed.
Holds already marked waiting, or in transit are not reordered.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-13 09:32:24 +13:00
Colin Campbell
0cf8194d5f Bug 6667 Correct documentation of function
Return list was documented as being in the reverse order
to how it is returned. Correct the perldoc description

also removed comments which did not help anyone trying
to make sense of this subroutine

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Just improving text comments. No code changes involved.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-09 20:24:04 +13:00
Robin Sheat
85b1d6d558 Bug 6636 - add 'powered by Koha' text to OPAC footer
Signed-off-by: Robin Sheat <robin@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
  QA control: added () inside 2 [% IF %]

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-09 20:13:09 +13:00
Ian Walls
e05d53d50d Enh 6403: Record local use stats when checking in unissued materials
Adds a new system preference, RecordLocalUseOnReturn, which when active will change the statistical
entry type from "return" to "localuse" in AddReturn() if the material was not on loan when returned.
The intended use-case here is for libraries with 'open' book drops, in which patrons can put locally
used (but unissued) materials.

Adds a small message to the user interface to confirm that Local Use was recorded.

This change opens up the possibility to record more types of statistics on return; one would just need
to update the $stat_type variable accordingly.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-09 19:50:41 +13:00
7d599afe6d Bug 6371 Item Types description not properly displayed if not pure ASCII
In several places, C4::ItemType module is used to retrieve item types
and their description. If the description text contains non-ASCII
characters, those characters are not properly displayed.

This bug can be seen in:

  - 4xx plugin of a UNIMARC DB
  - Home > Admin > Item circulation alerts
  - others?...

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
  - Fixes display probems in circulation alerts and 4xx UNIMARC plugin
  - display in other places looks ok with and without patch

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-08 20:10:29 +13:00
cd1fbb7510 6786: False detection of index names in Search; make index names case insensitive
Fixing the regex to detect index names in ccl queries.  Changing loop
structure: looping through the index candidates in the query is faster than
testing every index name with a regex.  Making the index comparison case
insensitive will benefit users misspelling the case of an index; Zebra does not
care about it.  Test the change by searching on a word followed by a : or =
character.  Previously, when that word contained an index name like an or nb,
the search would crash.

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>

Perltidied the new block to fix indentation

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-07 14:08:09 +13:00
293a9baba8 6769 Getting rid of some RIS errors/warnings
Removing unnecessary warnings. Some were based on errors in the script. Others are removed by adding debug flag and disabling debugging mode by default.
Adding carriage returns for Windows users, assuming that it does not hurt the Linux users. (Perhaps a future option?)
Test it with: http://yourserver.com/cgi-bin/koha/opac-export.pl?bib=yourbibnumber&format=ris&op=export [replace server and biblionumber]

Revision of Aug 24: Fixed two missing newlines too.

Signed-off-by: Steven Callender <stevecallender@esilibrary.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
  (removed comment "240811 marcelr during QA"

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-07 14:02:34 +13:00
f02796d989 6584: Enable searching on Zebra's Bib-level index
Bib-level is already indexed in MARC21 record.abs.
But you cannot search this index, because it is commented in ccl.properties and
not listed in getIndexes of Search.pm.
This very simple patch does only do those two things.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-07 13:43:47 +13:00
6ade95d5db Fix for Bug 6600, Library name linking wrong if current location is different
GetItemsInfo in Items.pm includes this join:

LEFT JOIN branches ON items.homebranch = branches.branchcode

This means that the branch URL (from the branches table) comes out
as the URL for items.homebranch, thus the URL in the holdings
output is the item's home branch even though the display might
be showing a different current location.

This patch changes the join to use items.holdingbranch. The join
was originally added to fix Bug 3702, and based on the description
of that feature I'm assuming this change is not harmful to other
usages. However, it does make the assumption that the item's
current (holding) branch is the branch we want to see information
about.

Signed-off-by: Nicole Engard <nengard@gmail.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-07 11:34:43 +13:00
D Ruth Bavousett
b1e6aadf56 Bug 6867: Date last seen ignored on import
The date last seen field (952 $r) and replacement price date (952 $w) were being
ignored on import, being replaced with NOW() as a hardcoded value.  This patch will
allow a value to be imported, but if none is, it will use the ISO date of import
as a default.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-10-05 09:57:59 +13:00
Liz Rea
085de44ebd Bug 6927-- Typo in C4::Overdues.pm
Corrected a small typo in overdues.pm to fix a "Undefined subroutine &C4::Members::checkoverdues called at /home/koha/kohaclone/C4/Members.pm line 511." when making calls to GetMemberDetails

This fix suggested by Elliot Davis of UT Tyler, and he did the testing -- I'm just submitting the fix to master for him.  :)

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-28 09:24:17 +13:00
Ian Walls
26acaf3dfa Bug 6801: checkoverdues returns unnecessary fields, causing slowness
Explicitly specifies which fields to return in C4::Overdues::checkoverdues
SQL:  all of biblio, items, and issues, and everything in biblioitems
EXCEPT marc, marcxml and timestamp.

Bug 6801: member details page taking long time to load when many checkouts present

This patch removes the call to GetMemberDetails in build_issue_data; this heavy-weight
subroutine was being run for every single item a patron (or their relatives) have checked out.
Instead, the borrowers first name, surname and cardnumber are added to the GetPendingIssues query.
I believe this is reasonable since GetPendingIssues can now return issues for multiple borrowers.

Also corrects the $borrowernumber used for GetIssuesCharges and CanItemBeRenewed; was using the borrower whose
page we were on, NOT the borrower of that specific item (which would be different in the Relatives Checkouts tab).

Template calls to [% scope.borrowername %] are now broken up into [% scope.firstname %] [% scope.surname %].

Signed-off-by: Liz Rea <lrea@nekls.org>
On my test data, a patron with 180 checkouts (without this patch) would take more than a minute to bring back the circulation.pl and moremember.pl pages.
With this patch, the time is reduced to 5 or so seconds.

Big ups to Ian for tenaciously hunting this one down.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-27 09:43:25 +13:00
Chris Cormack
cac6eb1250 Merge remote-tracking branch 'kc/new/bug_6755' into kcmaster 2011-09-27 07:05:03 +13:00
Chris Cormack
c01fcbf973 Bug 6755 : Fixing a bug with guided reports 2011-09-27 07:04:02 +13:00
Chris Cormack
05be38d438 Merge remote-tracking branch 'kc/new/bug_6755' into kcmaster
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-26 23:27:20 +13:00
166f1668d8 Bug 6755 Web browser default lang != syspref selected langs
When Web browser default selected language doesn't belong to selected
languages list defined by syspref (language / opaclanguages), web pages
are returned in this language, which is wrong...

This patch get this behavior:

- If selected by user language is available (cookie), it is used.
- Otherwise, language is set to default web browser language.
- If this language doesn't belong to languages list (syspref),
  English is selected

Some code cleanup.

To test properly: don't forget to delete your cookies, and to test what
happens without and with cookie.
2011-09-26 23:26:09 +13:00
Chris Cormack
c5fe424c0f Merge remote-tracking branch 'kc/new/bug_6755' into kcmaster 2011-09-26 23:14:36 +13:00
Chris Cormack
3bb33fd666 Bug 6755 Follow up, fixing broken call to themelanguage 2011-09-26 23:13:18 +13:00
Meenakshi.R
8b75f5b38c Bug:6781--Log membership renewal
If patron related logging is tuned on, log membership renewal

Signed-off-by: Amit Gupta <amit.gupta@osslabs.biz>
Signed-off-by: Nicole Engard <nengard@gmail.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-26 11:30:27 +13:00
Robin Sheat
62b76aa98c Bug 6205 - if an include doesn't exist, fall back to en
If a language that doesn't exist gets accessed, then it will fall back
to en for the templates, but not for the includes, so everything still
dies. This allows the process to work in this case too.

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

I confirm the bug and the solution. This issue occurs when templates are
partially translated. The main template (.tt) is found for a specific
language, so this language is returned by themetemplate. But in the main
template, some include files (subtemplates) are referenced that can very
well not exist if the translation process had failed to generate them.
This kind of failure is reported by 'translate' script. It's very easy
to miss it, but it's the translator responsability to check it.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-25 21:21:41 +13:00
Chris Cormack
6b9fff61fb Merge remote-tracking branch 'kc/new/bug_6460' into kcmaster 2011-09-24 10:03:08 +12:00
MJ Ray
a746e11c14 Bug 6460: alternative fix, updating template and script instead of C4::Log
Add some test cases and fix a bug in C4::Log found by in review.
Thanks-to: Katrin Fischer.

Signed-off-by: Liz Rea <lrea@nekls.org>
Passes test, interface works as expected.

Signed-off-by: Liz Rea <lrea@nekls.org>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-24 10:01:09 +12:00
Henri-Damien LAURENT
061f2e9251 Fix for Bug 5436 - Extended patron attributes display improvements
Show patron attributes in the sidebar on circ and patron pages

[Edit from Owen Leonard: This patch takes changes originally in
Bug 5436 and isolates just the parts relating to display of
patron attributes. Because function for pulling patron attributes
was merged with the function for displaying address information
in SetMemberInfosInTemplate() (also found in Bug 5749), I moved
the call to GetBorrowerAttributes into the individual scripts.
That keeps the functionality relating specifically to patron
attributes separate from the proposed changes to displaying
addresses.

Because I think it's important to keep the display consistent,
I added display of patron attributes to all pages which include
the patron information sidebar.]

Rebased for compatability with bug 3489 and database documentation by
Ian Walls, 9-21-11

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-23 15:35:54 +12:00
Chris Cormack
8e7b163608 Bug 6755 follow up, fixing broken POD 2011-09-23 11:33:00 +12:00
6b8be20497 Bug 6755 Problems with switching languages
This patch solves the situation that news is in another language than
the Koha interface AND makes that themelanguage routine is always called
the same way in order to prevent mixed display.

It fixes also a bug related to language preselection based on web
browser prefered language.

September 9: Adjusted with input of Frederic Demians.

Septembre 10: Avoid circular dependency, as pointed by Chris Cormack.
Templates related functions are moved from C4::Output to C4::Templates

Signed-off-by: Alex Arnaud <alex.arnaud@biblibre.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-23 09:47:09 +12:00
a2ee6443b9 Bug 3704: SIP Checkin of not checked out item returns error without reason
Checking in an available item returns an error (which is correct) without
giving a reason for the failure as screen_msg (aka AF field in SIP2 is empty).

Based on code suggested by Patrick Langer <patrick.langer@easycheck.org>

Signed-off-by: Ulrich Kleiber <ulrich.kleiber@bsz-bw.de>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-22 19:39:29 +12:00
Srdjan Jankovic
4fb88deaa7 bug_4831: Use unitprice (actual cost) when totalling spent amounts for "All available funds", as in "Already received"
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

To test:
- add new fund for an active budget
- order item, price 8.00
- check funds page and acq home: committed amount should be 8.00
- receive item, enter actual price 10.00
- check funds page and acq home: spent amount should be 10.00

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-22 19:35:40 +12:00
Srdjan Jankovic
c453a45f38 bug_6576: Submit when changing framework rather then reloading
TransformHtmlToMarc(): changed interface - no point passing params when
they can be accessed from $cgi

Signed-off-by: Liz Rea <lrea@nekls.org>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-22 09:05:44 +12:00
Chris Cormack
1a54fc3642 Bug 5675 : CheckReserves not honouring item level itemtypes preferences
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

With item level itypes activated only the item for which holds were
allowed in circulation rules triggered the hold notice on checkin.

Also checked that biblio level itype still trigered correctly.

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-21 09:16:53 +12:00
Srdjan Jankovic
d43aa87d35 bug_6318: Always give predefined fields drop downs on label layout edit
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-16 11:23:59 +12:00
Chris Cormack
6499cfc2c0 Merge remote-tracking branch 'kc/new/bug_6458' into kcmaster 2011-09-15 08:42:56 +12:00
4324377c55 Fix for Bug 6458 - incorrect parsing result in translation processing
Correction for opac-messaging.tt tops tag attribute markup from
being passed to the template directly in favor of using template
logic.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-15 08:38:58 +12:00
Colin Campbell
f9ccfae400 Bug 6620 Ensure autoflush is set on output filehandles
stdout is by default buffered and a flush is only guaranteed on CR
Sip responses are not CR terminated so we need to ensure autoflush
is switched on  so that the filehandle is flushed after a print
Otherwise this can manifest as self checks running slow or
failing due to timeout (although in the log we see the response)

Signed-off-by: Ulrich Kleiber <ulrich.kleiber@bsz-bw.de>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-14 21:40:45 +12:00
Colin Campbell
507c7f4224 Bug 3498 [ENH] Allow Partial Payment of Fines
Allow partial payment of outstanding fines
against either individual fine entries or as a lump payment

Sponsered by East Brunswick Public Library, East Brunswick, NJ, USA

NB: Adds a version of the include circ-menu.inc as circ-menu.tt
this has the same functionality as the old include but does not
require all the borrowers attributes to be passed as global
scoped variables

Signed-off-by: Liz Rea <lrea@nekls.org>

Bug 3498 - Documentation update to explain what every button does.

Help file updated to the following:
Pay and Writeoff Fines

Each line item can be paid in full, partially paid, or written off.
Pay a fine in full

    Click "Pay" next to the fine you want to pay in full
    The full amount of the fine will be populated for you in the "Collect From Patron" box
    Click "Confirm"
    The fine will be removed from outstanding fines, and displayed as fully paid.

Pay a partial fine

    Click "Pay" next to the fine you want to partially pay
    Enter the amount you are collecting from the patron in the "Collect From Patron" box
    Click "Confirm"
    The fine will be updated to show the original Amount, and the current Amount Outstanding

Writeoff a single fine

    Click "Writeoff" next to the fine you wish to writeoff.
    The fine will be removed from outstanding fines, and displayed as fully paid.

Pay an amount towards all fines

    Click the "Pay Amount" button
    Enter the amount you are collecting from the patron in "Collect from Patron." The sum of all fines is shown in "Total Amount Outstanding"
    Click "Confirm"
    The fine totals will be updated with the payment applied to oldest fines first.

Writeoff All fines

    Click the "Writeoff All" button
    All fines will be removed from outstanding fines, and displayed as written off.

Pay Selected fines

    Check the selection boxes next to the fines you wish to pay, click "Pay Selected"
    Enter an amount to pay towards the fines.
    Click "Confirm"
    The fine totals will be updated with the payment applied to the oldest selected fines first.

Bug 3498 - adding parens to TT IF Statements for style

pay.tt

Bug 3498 - Add parens to TT IF statements for style

paycollect.tt

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-13 08:40:49 +12:00
Meenakshi.R
073f4fa7c3 Bug id:6783 - Circulation restrictions dont work when other withdrawn reasons are used
Circulation restrictions work only when withdrawn reason (value 1) is selected.
If ones sets up other withdrawn reasons using authorized values, and selects
one of them (e.g. value 2), circulation restrictions don't work. This changes
fixes this problem.

Signed-off-by: Amit Gupta <amit.gupta@osslabs.biz>
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-11 21:40:09 +12:00
Robin Sheat
4c1d203980 Bug 6857: display a charge warning alert for reserves
If a user is placing a reserve on the OPAC, this'll let them know that
it's going to cost them.

Author: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-11 21:35:52 +12:00
Magnus Enger
6bd38d3eab Bug 6537 - squashed version of the previous 5 commits, signed-off
Bug 6537 - Move installer/data/mysql/en/mandatory/sysprefs.sql to installer/data/mysql/sysprefs.sql

Bug 6537 - Make the web installer use installer/data/mysql/sysprefs.sql

Bug 6537 - New syspref files with only the prefs that differ from the default

I have mostly deleted old syspref files and created new ones, with a new name,
mainly in order to reduce the risk of merge conflicts if the old syspref files
are changed before this patch is pushed, if it is pushed.

See http://wiki.koha-community.org/wiki/Simplified_syspref_handling_RFC for
a description of how the new files were created to reflect sysprefs that
differ from the global default.

.txt files have been moved to reflect the new names of the SQL files they are
associated with.

Bug 6537 - Remove syspref-related tests in xt/

As far as I can see, the previous patches for this bug makes the syspref tests
obsolete, and this patch removes them:

xt/syspref.t
xt/check_sysprefs.t

Bug 6537 - Fix a problem in French syspref file

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-07 09:19:07 +12:00
Chris Cormack
e23608a1f9 Bug 6555 : only 10 lists show in the staff client
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-07 09:00:38 +12:00
Colin Campbell
6c0962f06b Bug 5605 [ENH] SIP: Add Support for the Fee Paid Message
Allow fee paid to be supported for those machines which handle it

Development Sponsered by Halton Borough Council

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-07 08:56:15 +12:00
Chris Cormack
e8f654fcd2 Revert "Bug 5630 CAS improvements"
This reverts commit 9a3950f673.
2011-09-02 13:22:20 +12:00
Chris Cormack
e39de04020 Bug 5524 : Cant delete list from the second page of lists
Includes follow up fixing deleting lists in OPAC

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-09-01 20:55:16 +12:00
Ulrich Kleiber
8a7c916766 Bug 6765: sip2 unicode checksum
Changes checksum calculation method, as per Dan Scott's fix in openncip.
see http://sourceforge.net/tracker/?func=detail&aid=2925760&group_id=161781&atid=821216

http://bugs.koha-community.org/show_bug.cgi?id=6765
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-27 19:38:32 +12:00
Ward van Wanrooij
07838bfcb1 Bug 6723 : import-framework-crlf
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
2011-08-26 12:46:52 +12:00
Srdjan Jankovic
54d38461f0 Bug 6721 - improve searching in the acquisitions system
This allows a basket to be searched for by name or invoice number from
anywhere in the acquisitions system. It is accessible by clicking on
"orders search", clicking the '[+]' and filling in the basket or invoice
no. fields.

Author:    Srdjan Jankovic <srdjan@catalyst.net.nz>
Author:    Robin Sheat <robin@catalyst.net.nz>
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-26 11:34:27 +12:00
Salvador Zaragoza Rubio
6b69260fbd Bug 6727 - Change on exporting and importing csv to deal with spurious CR/LF
Function _export_table_csv modified to remove CR/LF in the data
from the database to built a correct csv file.

Function _import_table_csv modified to deal with CR/LF in the data
field. When a line is found with an unproper end (a data field has not
end quote), it's concatenated to a temporary buffer until the next
line ends ok and then it's proccessed.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-26 08:41:01 +12:00
02f1058a80 Fix for Bug 6754, Improve breadcrumbs on lists pages
Breadcrumb navigation on the lists pages should give the user links back to the
category of list they're viewing, public or private.

Patch changes this:

Lists -> Contents of (Your list)

To this:

Lists -> Your lists -> Contents of (Your list)

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-21 19:39:16 +12:00
a41100a445 Bug 6458 Template Toolkit files test case
This test validate Template Toolkit (TT) Koha files.

For the time being an unique validation is done: Test if TT files
contain TT directive within HTML tag. For example:

  <li[% IF

This kind of constuction MUST be avoided because it break Koha
translation process.

This patch transform also translation specific modules into C4 modules
in order to be able to use them in test case:

  C4::TTPaser
  C4::TmplToken
  C4::TmplTokenType

This patch is a Perl adaptation of a Haskell script from Frère Sébastien
Marie.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Notes on testing:
- translate install de-DE - worked ok
- translate update de-DE > translate install de-DE - worked ok
- running the test xt/tt_valid.t - worked ok and pointed out lots of problems.
Found no problems.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-18 21:11:50 +12:00
Brice Sanchez
5b945d8c41 Bug 5713 :debug calculation when fines are reversed then re-payed
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

I could not reproduce the calculation bug, but after
applying this patch multiple pay/reverse cycles only
are still only  2 lines in accountlines, which makes the
display a lot less confusing.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-17 10:24:52 +12:00
Ian Walls
18c491542b Bugs 6634: manager_id not recorded for payments and rental charges
Manager_id, the borrowernumber of the staff person doing the action, was not recorded
for payments, rental charges, or rental charges on renewals.  This patch implements that.

This patch also adds the recording of itemnumber in a payment, by taking the itemnumber of
the account that it's paying off.  This addresses bug 2696, though it does not make any
change to the display logic of the Payments line in the staff client.

To test:
1.  Check out an item with an issuing charge
2.  Renew the item
3.  Pay one of the rental charges on the item
4.  Verify in koha.accountlines that each of the three above operations recorded your borrowernumber
in accountlines.manager_id

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-15 15:28:29 +12:00
Colin Campbell
1a03a8a38e Bug 6181: Remove CGI Scolling lists from C4::Budgets
As noted on bug 766 more cases of usage of
CGI::scrolling_list were imported into C4::Budgets
Even if we were not trying to remove usage of this
the C4 modules are not the place to generate markup
Most of these routines are noise as they are not used in
any current code but cause confusion and increase
maintenance overhead. They are removed

The sort dropboxes on order create are the only
references in current templates to these routines
they have been replaced by a select list generated
by the markup.
They can probably be removed too but their existence
although the option that causes them to be displayed
seems unlikely to be set. I've left them pending
resolution of some of the inconsistencies and
confusions surrounding Budgts

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-14 20:24:31 +12:00
04e97b57ff 6290: Fix warning on XSLT.pm
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2011-08-11 12:54:47 +12:00
Colin Campbell
c435c8c7d1 Bug 6280 : Don't generate invalid SQL in GetPendingIssues
Change to parameter list in GetPendingIssues made it
callable by an empty list resulting in invalid sql being
sent to server. As this was occuring on most issues error log
was filling up. Put safeguard in the routine
Also don't bother calling when you have no need

Some of the processing was needlessly obscure

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-11 12:53:15 +12:00
Chris Cormack
9a3950f673 Bug 5630 CAS improvements
Squashed commit of the following:

commit 0e13a5278e11b288e48190dc26f31e96d06598dd
Author: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
Date:   Wed Jan 19 21:24:39 2011 +0100

    Bug 5630 : fixing C4/Auth.pm

commit b55abc7a0dc1ca43b2610a27246293e9a9346e18
Author: Matthias Meusburger <matthias.meusburger@biblibre.com>
Date:   Wed Jan 19 21:24:38 2011 +0100

    Bug 5630 : Adds CAS documentation

commit df0098a6a65465e6e734f99f65fb453dd3fa11d1
Author: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
Date:   Wed Jan 19 21:24:37 2011 +0100

    Bug 5630 : ilsdi service AuthenticatePatron doesn't with CAS syspref on

    Signed-off-by: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>

commit 31c8f0c0facfafae011ad24c9d458c50f2fad296
Author: Matthias Meusburger <matthias.meusburger@biblibre.com>
Date:   Wed Jan 19 21:24:36 2011 +0100

    Bug 5630 : Adds the ability to authenticate against multiple CAS servers

commit 9d0def826135d5756533dc0dcf8e0a107d1ac8fc
Author: Henri-Damien LAURENT <henridamien.laurent@biblibre.com>
Date:   Wed Jan 19 21:24:34 2011 +0100

    Auth_with_cas : removing a warning

    $sth was defined twice in a function
    Removing the second definition

commit 5ee550e9a2bb7ab6bc09f14fced6ce0df8011eb0
Author: Matthias Meusburger <matthias.meusburger@biblibre.com>
Date:   Wed Jan 19 21:24:33 2011 +0100

    Bug 6012 : MT 2270: CAS proxy

    CAS Proxy
    Examples included are now really usable

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

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-10 13:16:35 +12:00
Jane Wagner
2bb9904ab3 Bug 6034 - Shelving cart feature can wipe permanent shelving location in certain circumstances
Bugfix for problems when shelving cart used without In Processing settings

To test, with InProcessingToShelvingCart off, NewItemsDefaultLocation blank,
and ReturnToShelvingCart on, create a new item.  Check the contents of the
location and permanent_location fields in its item record -- the same value
should be in both.  Then run the item through checkin, and look at those fields
again.  The location field should now be set to CART while permanent_location
should still have the original value.  After the cart_to_shelf cron job runs
with the proper timing, check the item record again.  Both location and
permanent_location should again be identical.

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-10 13:06:51 +12:00
Jean-André Santoni
2c88e1e0f8 Bug 5639 (MT #3605) Fix escaping in ILSDI
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2011-08-05 09:07:15 +12:00
902d19dfa9 Fix for Bug 5433 - Separate state field for cities
- Updates cities management (admin/cities.pl) to record a separate
  state and country field.
- Updates the cities table with these new columns
- Modifies the patron entry form to populate city, state, zip
  and country when the user chooses a prepopulated city entry

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-04 20:54:49 +12:00
Robin Sheat
4833fd8399 Bug 5072 - prevent creating new orders if there are no valid budgets
On the basket editing screen, the links to add orders to a basket are
hidden unless a valid fund is available.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-04 13:53:59 +12:00
cbf473d592 Bug 5429 : Open Library book covers
Signed-off-by: Magnus Enger <magnus@enger.priv.no>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-04 13:30:23 +12:00
Frédérick Capovilla
94700d65c0 Bug 5737: Modified the merge subroutine in AuthoritiesMarc.pm so it won't destroy the connection to the biblioserver.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
2011-08-03 14:01:52 +12:00
Chris Nighswonger
57155db213 Bug 5263 - Add support for including fields from the ISSUES table in advanced due notices
Adding support for including fields from the Issues table in advanced due notices.
This is primarily to allow the inclusion of the due date for each item in the
advanced due notice, but will allow the inclusion of any field from the ISSUES
table.

This also adds code to exclude timestamp fields as these are irrelevant to the
end user in this context.

Note: Documentation should be updated to reflect the availability of the additional
fields in all circulation notices.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-02 12:44:42 +12:00
Stéphane Delaune
97964bc3e9 Bug 6135: insert fields ordered in C4::biblio:ModBiblioMarc
Fixing order subfields for biblionumber and biblioitemnumber

BibLibre MT5951

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-01 15:23:37 +12:00
Colin Campbell
e793b0dda6 Bug 6311 check_inst_id was being passed non-existent value
Due to a typo in the hash key check_inst_id in the
handle_end_patron_session was always logging an error
as the actual field contents were not being checked
unlike in other messages

Signed-off-by: Frederic Demains <frederic@tamil.fr>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-01 15:17:12 +12:00
Katrin Fischer
4d81858ec6 Bug 4433: Small display problem for topical subjects
This removes the subfield codes shown for topical subject authorities only.

To test:
- Add different authority records and at least one for a topical subject.
- Use search in intranet and opac (turn on opacauthorities) to serch for your subjects.
- All headings will show without the subfield codes (at least $a in front), except the
topical subject.

This patch removes the subfield codes for the topical headings.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Works as advertised in opac and staff. (July 18, 2011)

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-01 13:30:38 +12:00
Chris Cormack
8ae5719d16 Merge remote-tracking branch 'kc/new/bug_6521' into kcmaster 2011-08-01 11:32:43 +12:00
Ian Walls
d119fbd91c Bug 6521 Follow up: previous patch breaks autoMemberNum functionality
The previous patch broke the autoMemberNum feature by adding a line to fixup_cardnumber
that returned 'undef' for cardnumber in all usages of the subroutine (limited to members/memberentry.pl
and tools/import_borrowers.pl.  This prevented the automatic number from being calculated in all cases.

This patch removes the offending line.

Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Nicole Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-08-01 11:31:27 +12:00
Ian Walls
68f99cdf98 Bug 6614: Remove newlines from order notes when exporting to CSV
Newline is not a valid character to Text::CSV's combine() subroutine.  If an order
contained a note with a newline in it, that line would come out as a blank entry in
the exported CSV.  This patch strips such characters, globally.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-07-27 08:56:15 +12:00
Chris Cormack
80ba84159d Fixing missing padding on module version 2011-07-21 20:04:02 +12:00