]> git.evergreen-ils.org Git - Evergreen.git/blob - ChangeLog
version bumping
[Evergreen.git] / ChangeLog
1 Changes between version 1.6.1.0 and 2.0.0 (approximately)
2 =========================================================
3
4 2010-06-14  senator
5
6         * Tiny bug in 16714; fixing it prevents a useless logline in some
7           cases
8
9 2010-06-14  phasefx
10
11         * the dojo code now behind the util.date iso8601 formatter neither
12           needs nor likes us appending timestamps to dates like that
13
14 2010-06-15  phasefx
15
16         * in patron editor, prevent Save and Save & Clone from working with
17           an invalid form, or duplicate barcode or usrname
18
19 2010-06-15  dbs
20
21         * Avoid spurious errors when searching more granular indexes
22           
23           The storage service automatically generates methods for each
24           top-level search
25           class, like
26           open-ils.storage.authority.keyword.see_from.controlled.atomic,
27           but
28           here we were trying to access more granular methods (which
29           storage does not
30           know about) when a granular index was used. This generated an
31           ugly error in
32           the logs.
33           
34           To avoid these errors, we'll only look for cross references from
35           the broad
36           index class to which the granular index belonds.
37
38 2010-06-15  miker
39
40         * support pre-indexing normalizers for facet value normalization
41           (negative pos value in the field-norm map)
42
43 2010-06-15  senator
44
45         * Acq: minor menu reorganization. Move admin-oriented interfaces to
46           admin menu.
47           
48           Also remove "Purchase Order Events" from the acq menu: it's
49           outmoded.
50
51 2010-06-15  phasefx
52
53         * specify @autoscroll=false for xul browser elements
54
55 2010-06-15  erickson
56
57         * no need to start a xact in lineitem search api call, especially
58           if it's not closed out when done
59
60 2010-06-15  senator
61
62         * Acq: misc minor bugfixes to various admin interfaces that didn't
63           load
64           consistently. Also a little more menu re-org.
65
66 2010-06-16  phasefx
67
68         * the layer/bundle version of dojo I was using hid the need for
69           this dojo.require line
70
71 2010-06-16  miker
72
73         * add support for status and copy location filters to supercat
74           browse apis for call number, title/author/etc, item age and
75           general tag browsing
76
77 2010-06-16  erickson
78
79         * make logout with receipt the default for self-check
80
81 2010-06-16  senator
82
83         * Acq: bugfixes for "Import Catalog Records by ID"
84           
85           Previously, this interface did not correctly interpret realistic
86           CSV data as
87           produced by the Reporter module, as it was intended to do.
88
89 2010-06-16  miker
90
91         * update the documentation for browse methods re status/location
92           filters
93
94         * steps toward wiring up authority browse via supercat
95
96         * use the authority, instead of bib, general tag browse method
97
98         * add authority marcxml retrieve method, switch on record type
99
100         * typo in json_query for authority browse
101
102         * split registration of authority browse urls out from record; add
103           authority formats ML method
104
105 2010-06-16  senator
106
107         * Acq: Fix display failure in fund tag interface. Add admin
108           interfaces for
109           invoice_payment_method and invoice_item_type.
110
111         * Acq: remove PO search interface from staff client's acquisitions
112           menu
113           
114           The PO search interface is redundant with the generalized
115           Acquisitions Search
116           interface
117
118 2010-06-17  scottmk
119
120         * Support CAST expressions, taking care to avoid SQL injection.
121           
122           M Open-ILS/include/openils/oils_buildq.h
123           M Open-ILS/src/c-apps/oils_storedq.c
124           M Open-ILS/src/c-apps/buildSQL.c
125
126 2010-06-17  phasefx
127
128         * id collision preventing proper use of these columns
129
130         * correctly sort date/timestamp columns in xul lists now that
131           they're localized
132
133         * more column id collisions and code to rename such id's if they
134           slip through in the future
135
136         * Kludge to fix ISO timestamp parsing in AutoFieldWidget
137
138 2010-06-17  miker
139
140         * protecting facet_xpath from returning empty nodesets
141
142 2010-06-17  phasefx
143
144         * typo
145
146 2010-06-17  miker
147
148         * record evidence of the perl-xpath experiment ... not faster
149           enough to warrant the danger of XML::LibXML
150
151 2010-06-17  senator
152
153         * Acq: Remove the "Selection Lists" entry from the staff client's
154           menu
155           
156           The unified search interface now does everything that the
157           Selection Lists
158           interface could.
159           
160           Also, merging selection lists now updates the edit_time field on
161           the lead
162           list.
163
164 2010-06-17  scottmk
165
166         * 1. Disable fleshing for PCRUD. Otherwise fleshing would provide a
167           back door whereby a user could see stuff he has no permission to
168           see.
169           
170           2. For the id_list method: strip out the "flesh_fields" entry,
171           not
172           the "flesh_columns" entry (which doesn't exist). This actually
173           makes
174           no difference, but if we're going to do something useless, we
175           might
176           as well do it right.
177           
178           M Open-ILS/src/c-apps/oils_sql.c
179
180 2010-06-18  miker
181
182         * support unapi tag embedding in authority records
183
184         * pushing unapi depth support back into trunk
185
186 2010-06-18  scottmk
187
188         * Define some stock datatypes in query.datatype.
189           
190           Set the sequence for query.datatype to leave room for more
191           stock datatypes if we want to add them.
192           
193           M Open-ILS/src/sql/Pg/002.schema.config.sql
194           M Open-ILS/src/sql/Pg/008.schema.query.sql
195           A Open-ILS/src/sql/Pg/upgrade/0311.data.query-seed-datatypes.sql
196           M Open-ILS/src/sql/Pg/950.data.seed-values.sql
197
198 2010-06-18  miker
199
200         * add prompt to install Google Chrome Frames when in IE
201
202         * setting the noGCF cookie to expire after a year, instead of at
203           the end of the browser session
204
205 2010-06-18  atz
206
207         * EDI/JEDI Translator test client
208           
209           Signed-off-by: Joe Atzberger <atz@esilibrary.com>
210
211         * Repo note
212
213         * Extra field in display (slight reorder)
214
215         * Log message to both STDERR and log.
216
217         * 0312 - JEDI template support for multiple ISBNs
218           
219           of same or different types. The first ISBN-13 is treated as
220           primary, if there is one. Otherwise the first ISBN-10 is used.
221           
222           Signed-off-by: Joe Atzberger <atz@esilibrary.com>
223
224 2010-06-18  miker
225
226         * add serial.subscription.owning_lib
227
228         * make sure $depth is defined, and used
229
230 2010-06-18  senator
231
232         * Acq: more menu reorganization
233           
234           New entry points to selection list, PO, and invoice interfaces.
235           Also replaced
236           visible references to "Pick List" with "Selection List" wherever
237           I could think
238           of, for consistency's sake.
239
240 2010-06-18  phasefx
241
242         * stop the autoscrolling behavior with AutoFieldWidget
243
244         * expose the internal record id and create date for a user as a
245           tooltip over the user's name in the patron display
246
247 2010-06-18  miker
248
249         * add serials holdings to the holdings_xml data for bibs
250
251 2010-06-19  dbs
252
253         * Apply RHEL5 prerequisite installer patch by Lee Dickens
254           <ldickens@esilibrary.com>
255           
256           Tweaked slightly to break some long lines over multiple shorter
257           lines
258
259 2010-06-21  senator
260
261         * Acq: add default sort order to canned searches, and provide
262           middle layer
263           support for sort order for unified search generally. The UI for
264           that may
265           come later.
266
267         * Acq: yet another menu-reorganizing commit
268
269 2010-06-21  phasefx
270
271         * rough cut at integrating ChiliFresh reviews with OPAC search
272           results and record details page. Needs polish
273
274 2010-06-22  scottmk
275
276         * 1. In oils_sql.c: make the functions is_identifier() and
277           is_good_operator()
278           global instead of static.
279           
280           2. Use them to protect qstore against various forms of sql
281           injection.
282           
283           M Open-ILS/include/openils/oils_sql.h
284           M Open-ILS/src/c-apps/oils_storedq.c
285           M Open-ILS/src/c-apps/oils_sql.c
286
287 2010-06-22  gmc
288
289         * bug #597245: remove ersatz $7 "tags" from MARC tag selector
290           
291           Signed-of-by: Galen Charlton <gmc@esilibrary.com>
292
293 2010-06-22  erickson
294
295         * when you execute MARC, it opens a portal to the hellmouth
296
297         * added warnings for missing params to MinPassiveTargetAge
298           validator; missing params results in invalid for all target
299           objects (noop_false)
300
301         * removed deprecated MaxPassiveDelayAge validator from default
302           courtesy notice definition
303
304 2010-06-22  phasefx
305
306         * better way of setting these environment variables
307
308         * this should place things better across different browsers re:
309           Chilifresh
310
311 2010-06-22  senator
312
313         * Acq: add a Create PO interface for workflows starting with new,
314           blank POs
315
316         * Acq: make the PO summary pane less monstrously vertical; add PO
317           history link
318
319 2010-06-22  miker
320
321         * caching extention for org tree traversal
322
323 2010-06-22  gmc
324
325         * add 954.data.marc21expand880.sql to build-db.sh so that it gets
326           picked up during new installations
327           
328           Signed-of-by: Galen Charlton <gmc@esilibrary.com>
329
330 2010-06-22  atz
331
332         * Script for git-svn repos (with possible github remote)
333           
334           Please heed WARNING in the script comments.
335
336 2010-06-23  atz
337
338         * SIP Callnumber extensions, POD
339           
340           Use org_unit shortname everywhere, no owning_lib.
341           
342           Checkin response and Item Info response now return callnumber w/
343           current SIP code.
344
345 2010-06-23  miker
346
347         * protect templated slots from errors when there are no template
348           variables
349
350 2010-06-23  phasefx
351
352         * correct the logic for detecting whether ChiliFresh has been
353           configured, and add similar support for Novelist
354
355         * proper spelling of this trademark
356
357 2010-06-23  miker
358
359         * a bit more protection for non-cached values; beware the null
360           depth in the two-param version of actor.org_unit_descendants!
361
362 2010-06-23  dbs
363
364         * Add an explicit link to the favicon.ico per
365           http://www.w3.org/2005/10/howto-favicon
366           
367           Yeah, we're not using the profile attribute on the HEAD element.
368           Do we really need that?
369
370 2010-06-23  atz
371
372         * Cancel reasons from EDI spec
373           
374           Technically, these aren't all cancellation reasons, they are just
375           "Action request/notification description codes". A "5" (or 1005,
376           here)
377           actually means success, for example.
378           
379           Examine the EDI list here:
380           http://www.stylusstudio.com/edifact/D04B/1229.htm
381           
382           Include keep_debits field although it does not necessarily apply
383           to each row.
384           
385           Signed-off-by: Joe Atzberger <atz@esilibrary.com>
386
387 2010-06-24  scottmk
388
389         * Whenever a database call fails -- i.e. whenever dbi_conn_query()
390           or
391           dbi_conn_queryf() returns NULL -- call dbi_conn_error() to get a
392           description of the error, and include that description in the log
393           message.
394           
395           M Open-ILS/src/c-apps/oils_sql.c
396
397 2010-06-24  gmc
398
399         * remove duplicate entries for tag 760 from MARC21 tag list
400           
401           Signed-of-by: Galen Charlton <gmc@esilibrary.com>
402
403 2010-06-24  dbs
404
405         * First stab at Fedora 13 support in prerequisite installer
406           
407           Of possible concern: the use of -JS_THREADSAFE in
408           JavaScript::SpiderMonkey.
409           Need to test this change on other distros - but it enabled me to
410           avoid
411           the libperl.so linking hacks used on RHEL and CentOS.
412
413         * We don't need to install plpython for PostgreSQL;
414           also, add a target for the Fedora PostgreSQL server prereqs.
415
416         * Fix Fedora 13 compiling for libdbi/libdbd
417           
418           * Add libdbi-devel as a prereq
419           * Add Fedora's 64-bit location for the dbd driver libraries
420
421         * Fix compile error due to undefined LONG_MAX constant, which is
422           defined in limits.h
423
424         * Make '3 Day Pre-Overdue Notice' work in seed data; we were
425           missing a validator
426           
427           This was inserted properly in upgrade 0054, so we're just playing
428           catch-up here
429
430         * Use a valid validator for 3 Day Pre-Overdue notice event
431           
432           Curse traitorous middle-click and my tired eyes.
433
434 2010-06-24  atz
435
436         * 0314 Baseline data
437           
438           Signed-off-by: Joe Atzberger <atz@esilibrary.com>
439
440 2010-06-24  miker
441
442         * and imagine that, the ou passed to
443           actor.org_unit_descendants(INT) might also be null. super.
444
445         * add agency-stripping and btrim normalizers; add identifier|arcn
446           index def as facet
447
448         * arg ... thinkos. 0315 will work now
449
450 2010-06-24  scottmk
451
452         * 1. Degrade (relatively) gracefully when the database connection
453           dies.
454           
455           Problem to be solved: a server drone that loses its database
456           connection
457           immediately becomes unusable. It might manage to reconnect, but
458           that
459           wouldn't help if a transaction was in progress at the time of the
460           failure.
461           
462           If the drone merely reports an error and then makes itself
463           available
464           for more requests, every request that it services thereafter will
465           fail.
466           It will continue to fail repeatedly until it reaches the
467           max_requests
468           limit, or until someone kills it manually.
469           
470           Solution: terminate immediately, without waiting for max_requests
471           or a
472           DISCONNECT request. The listener can replace it with a new drone,
473           which will try to establish its own database connection.
474           
475           2. Correct an oversigt in doUpdate() and doDelete().
476           
477           If the database operation fails, report an error to the client.
478           The old code would log an error message but otherwise behave as
479           if
480           the operation had succeeded.
481           
482           It is conceivable that this change will appear to break
483           something,
484           because an operation will fail that would otherwise have appeared
485           to succeed. However if that happens, whatever breaks was already
486           broken; the appearance of success was a snare and a delusion.
487           
488           M Open-ILS/include/openils/oils_sql.h
489           M Open-ILS/src/c-apps/oils_sql.c
490
491 2010-06-24  miker
492
493         * doh, another thinko. spotted by Scott McKellar
494
495 2010-06-24  dbs
496
497         * Return NULL if we don't have anything else to return (keeps the
498           compiler happy)
499
500 2010-06-25  dbs
501
502         * Provide support for Class::DBI::Frozen::301 via
503           UNIVERSAL::require
504           
505           Class::DBI changed its API interfaces after the 3.0.1 release,
506           causing much
507           pain (and incompatibility for existing applications like
508           Evergreen). Some
509           distributions package Class::DBI 0.96 or 3.0.1, but newer
510           distributions
511           package an incompatible 3.0.17. An alternative is to install the
512           Class::DBI::Frozen::301 module from source; UNIVERSAL::require
513           enables us
514           to try loading both and use whichever one we find.
515
516 2010-06-25  miker
517
518         * vandelay.add_field bug fix; add stored procs to 1) create an
519           authority-based overlay template and 2) allow simple application
520           of said template directly with marcxml
521
522         * we will use a real mapping table instead
523
524 2010-06-25  dbs
525
526         * Make CentOS/RHEL use Class::DBI::Frozen::301 and remove
527           Class::DBI::Pg (not necessary)
528
529 2010-06-25  senator
530
531         * Acq: fixing misc UI glitches
532           
533           Creating allocations and credits in the Funding Source Details
534           interface
535           didn't populate the appropriate grid immediately, but now it
536           does.
537           
538           New tags didn't seem to persist in the Fund Details interface if
539           you switched
540           tabs and then came back to the Tags tab. Fixed.
541           
542           Changed some tab names of misc Acq interfaces to match their
543           current names in
544           the staff client menu.
545
546 2010-06-25  miker
547
548         * add bib-authority linking table; add stored proc to extract
549           linking; add hook to ingest (controlled by internal_flag) to
550           implement authority link extraction
551
552         * add stored procs to implement authority propagation if links
553           exist; add trigger to optionally fire this propagation (default
554           ON)
555
556 2010-06-25  phasefx
557
558         * proxied added content support for ContentCafe
559
560 2010-06-27  dbs
561
562         * Correct syntax for dojo.string.substitute() and remove offending
563           unpaired parens
564
565 2010-06-28  miker
566
567         * thinko when trying to preserve any user change to the
568           internal_flag version of the ingest.disable_authority_linking
569           enabled setting
570
571 2010-06-28  scottmk
572
573         * Support function calls with subfields, e.g. (func(args))."id".
574           
575           Note that this support treats the subfield as an optional
576           component of the functional call, not as a type of expression
577           in its own right. A subsequent commit will eliminate the "xfld"
578           expression type.
579           
580           M Open-ILS/include/openils/oils_buildq.h
581           M Open-ILS/src/c-apps/oils_storedq.c
582           M Open-ILS/src/c-apps/buildSQL.c
583
584 2010-06-28  miker
585
586         * forcibly maintain an appropriate 901 field in all MARC data via
587           triggers
588
589         * add missed stored proc to base schema; adjust said stored proc to
590           use 901 (or provided id) instead of 035 for bib-authority linking
591
592 2010-06-28  scottmk
593
594         * Represent a subfield expression as a variant of a function call
595           expression, rather than a function call in its own right.
596           
597           1. Eliminate 'xfld' as a valid value for query.expression.type.
598           
599           2. Eliminate the query.expr_xfld view.
600           
601           3. Expand the query.expr_xfunc view to include the column_name
602           column.
603           
604           M Open-ILS/src/sql/Pg/002.schema.config.sql
605           M Open-ILS/src/sql/Pg/008.schema.query.sql
606           A Open-ILS/src/sql/Pg/upgrade/0322.schema.query.no-xfld-expr.sql
607           M Open-ILS/examples/fm_IDL.xml
608
609 2010-06-29  senator
610
611         * Booking: begin forward-porting code from rel_1_6.
612           
613           Booking (regrettably) was largely written directly against a 1.6
614           environment
615           instead of written for trunk and backported. So now we have
616           booking code in
617           rel_1_6 and rel_1_6_1 that works, but that needs to be cleanly
618           merged with
619           trunk. There has been a lot of drift, and this won't be easy.
620           
621           Here is the first step (some of the easy stuff). These files have
622           been updated
623           wholesale with their contents from rel_1_6, since they don't
624           affect anything
625           other than booking itself.
626           
627           Just to be clear: this commit does not complete the booking
628           foward-port. The
629           booking module did not work in trunk before this commit, and it
630           does not work
631           after this commit. For the moment, booking only works in the
632           rel_1_6 branch,
633           in the rel_1_6_1 branch, and in 1.6.1.* releases. It still does
634           not work in
635           trunk, and it will take a few more hairy commits to get things in
636           sync.
637           
638           Once that's finally done, any future Booking code can be written
639           the Right Way
640           (in trunk) and *back*ported thence to whatever other branches as
641           needed.
642
643         * Fix copy-and-paste-o.
644
645 2010-06-29  miker
646
647         * improve browse support; correct thinkos in new holdings fleshing
648           code; improve generated MODS XML (remove some namespace prefixes)
649
650 2010-06-29  phasefx
651
652         * File->Join Tabs experiment. Can disable through prefs.js, and I
653           may make disabled the default before we branch trunk depending
654           how things play out. One current limitation is that the
655           interfaces thus joined get reloaded as a consequence of their
656           respective DOM nodes being relocated, so tab joining is most
657           useful to setup prior to retrieving information you'd like to
658           view side by side. I haven't found an easy way around this,
659           though we could roll our own tab browser (bleh) or come up with a
660           generic way for interfaces to save their state. Tab labels are
661           also imperfect, given that interfaces are able to dynamically
662           modify the tab label and can clobber each other if sharing a tab
663
664 2010-06-29  senator
665
666         * Booking: forward-porting bit-by-bit; see commit msg for r16827
667
668         * Booking: bit-by-bit forward-port; see commit msg for r16827
669
670         * Booking: thinko: default value for an org_unit_setting has to
671           come after
672           the org_unit_setting_type is defined
673
674 2010-06-30  scottmk
675
676         * 1. Degrade gracefully when the database connection dies.
677           
678           2. Validate the user-specified operator in a series expression.
679           
680           M Open-ILS/include/openils/oils_buildq.h
681           M Open-ILS/src/c-apps/oils_qstore.c
682           M Open-ILS/src/c-apps/oils_buildq.c
683           M Open-ILS/src/c-apps/oils_storedq.c
684           M Open-ILS/src/c-apps/oils_execsql.c
685
686 2010-06-30  dbs
687
688         * explode_array() is needed by 030.schema.metabib.sql now; create
689           it early so that database schema creation doesn't fail
690
691         * Lenny needs DBD::Pg; the unnecessary Class::DBI::Pg had pulled
692           that in as a dependency
693
694 2010-06-30  gmc
695
696         * bug #600432: fix MARC expert search
697           
698           Fix gitch introduced via overzealous tidying that broke MARC
699           expert search; in the expression @array || $scalar, @array
700           is evaluated in scalar context and thus returns the number
701           of elements in it.
702           
703           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
704
705 2010-07-01  gmc
706
707         * bug #600021: fix lookup of FIFO holds OU setting
708           
709           Patch from Anoop Atre that fixes enabling FIFO
710           holds via the circ.holds_fifo org unit setting.
711           
712           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
713
714 2010-07-01  scottmk
715
716         * 1. Support the peculiar syntax of EXTRACT().
717           
718           2. Repair a regression to make SELECT * work again.
719           
720           M Open-ILS/src/c-apps/oils_storedq.c
721           M Open-ILS/src/c-apps/buildSQL.c
722
723         * Support the following built-in functions with peculiar syntax.
724           They take no parameters and don't even accept empty parentheses:
725           
726           current_date
727           current_time
728           current_timestamp
729           localtime
730           localtimestamp
731           
732           M Open-ILS/src/c-apps/buildSQL.c
733
734 2010-07-01  senator
735
736         * Fix missing dojo.require() in a couple of interfaces.
737           
738           This bug doesn't manifest itself in releases, as the
739           openils_dojo.js layer
740           seems to take care of overlooked calls to dojo.require() anyway.
741
742 2010-07-01  miker
743
744         * remove as many namespace prefixes as I can from the MODS record
745           output
746
747 2010-07-02  erickson
748
749         * repaired bug where parsing intervals with months failed becuase
750           dojo.date.add() wants the full word 'months' whereas postgres
751           stores them abbreviated as 'mons'
752
753 2010-07-06  senator
754
755         * Booking: fixed the last db upgrade script. It was trying to
756           insert a row
757           in config.org_unit_setting_type that had already been covered by
758           0109, but
759           which had not been in the seed data until recently, so I think
760           one would have
761           only noticed this if hadn't installed a new schema from scratch
762           in some time.
763           
764           If you already ran 0323 and it worked for you, you don't have to
765           do anything.
766           
767           Also, this now avoids clobbering already-set default_elbow_room
768           values.
769
770         * Selfcheck: Show friendly error messages based on circ event
771           fail_part field
772           
773           Messages lifted from opac.dtd
774
775 2010-07-06  erickson
776
777         * added stored proc to return the distinct set of target copies
778           from a users visible circ history
779
780 2010-07-06  scottmk
781
782         * Add a configuration entry for the qstore server. This entry will
783           look just
784           like the entry for open-ils.cstore, except:
785           
786           1. The <implementation> is oils_qstore.so instead of
787           oils_cstore.so, obviously.
788           
789           2. There is no need (or use) for the max_query_recursion element.
790           
791           M Open-ILS/examples/opensrf.xml.example
792
793 2010-07-06  miker
794
795         * integrate serial.unit by relaxing fkeys against asset.copy and
796           adding hold support
797
798 2010-07-06  phasefx
799
800         * augment these payment receipt templates with more info
801
802 2010-07-06  miker
803
804         * use SQL function for speed, instead of PLPGSQL
805
806 2010-07-06  erickson
807
808         * added ability to tag bib record results from staged multiclass
809           search as previously checked out by the user. the code compares
810           search results to the set of circs in the user's visible
811           circulations history. the ultimate goal is to provide the ability
812           to style rows in search results so the patron can see if he/she
813           already circulated the item (assuming some widget to turn this
814           feature on/off for a search)
815
816 2010-07-06  miker
817
818         * remove all the 901 mangling -- handled by the db now
819
820         * add metarecord support to "already circulated" tagging
821
822 2010-07-06  senator
823
824         * CC payments: address situations where
825           Business::CreditCard::validate() returns
826           true yet Business::CreditCard::cardtype() returns the string
827           "Unknown"
828           
829           Curse you inconsistent APIs! :-)
830
831 2010-07-06  erickson
832
833         * return IDs of newly created payments on success
834
835         * showing the more descriptive cc payment errors in self-check.
836           printing CC payment receipts from self-check. added a
837           commented-out cc type picker for possible future use
838
839 2010-07-06  phasefx
840
841         * adjust code for an API change. Assume success if no ils_event
842
843 2010-07-06  erickson
844
845         * added opac user setting for default sort order for search results
846
847 2010-07-06  scottmk
848
849         * Add new program test_qstore, a command-line utility for testing
850           and exercising most of the code for the qstore server.
851           
852           A Open-ILS/src/c-apps/test_qstore.c
853           M Open-ILS/src/c-apps/Makefile.am
854
855 2010-07-07  miker
856
857         * adding status/copy_location filter support to call number browse
858
859 2010-07-07  erickson
860
861         * updated call number browse pass-thru to accommodate new copy
862           location and status filters
863
864         * added OPAC support for 1) selecting SSL manually and having it
865           stick and 2) forcing SSL when the user is logged in to protect
866           auth tokens and other private data. The latter option is enabled
867           via new apache env variable
868
869 2010-07-07  phasefx
870
871         * define these variables as parameters
872
873 2010-07-07  miker
874
875         * Forward port of r16867: add missing event definition required by
876           vandelay authority import
877
878 2010-07-07  phasefx
879
880         * Merge branch 'browser'
881
882         * Lost my commit msg the first time around, so...
883           
884           This CGI script might be useful for providing an easy way for
885           EZproxy to authenticate users against an Evergreen instance.
886           
887           For example, if you modify your eg_vhost.conf by adding this:
888           <Directory "/openils/var/cgi-bin/ezproxy">
889           AddHandler cgi-script .pl
890           AllowOverride None
891           Options +ExecCGI
892           allow from all
893           </Directory>
894           
895           and make that directory and copy remoteauth.cgi to it:
896           mkdir /openils/var/cgi-bin/ezproxy/
897           cp remoteauth.cgi /openils/var/cgi-bin/ezproxy/
898           
899           Then you could add a line like this to the users.txt of your
900           EZproxy instance:
901           
902           ::external=https://hostname/cgi-bin/ezproxy/remoteauth.cgi,post=user=^u&passwd=^p
903
904 2010-07-08  scottmk
905
906         * Fix a bug in pcrud.
907           
908           When checking a row for permissions, we often read a fresh copy
909           of the
910           row in order to ensure that we have all the foreign keys that we
911           need.
912           However in some cases (mainly when the class is a view), there is
913           no
914           primary key, so we can't re-read the row.
915           
916           Solution: if there is no primary key, don't try to do a fresh
917           read.
918           Use the row image that we already have.
919           
920           For these cases, this solution re-creates the possibility that we
921           may
922           not have all the necessary columns. There's no good way around
923           that
924           problem.
925           
926           M Open-ILS/src/c-apps/oils_sql.c
927
928 2010-07-08  phasefx
929
930         * populate some fields in Item Status->Alternate View->Circulation
931           History->Most Recent Circ Group when we're not bothering to
932           retrieve the circ chain
933
934         * hold/transit data in Item Status->Alternate View->Holds/Transit
935
936         * adding a cc_name field to money.credit_card_payment to hold the
937           human name on the credit card
938
939         * column tweaks. If you already ran 0328, see comments at top
940
941 2010-07-08  dbs
942
943         * Enable plain up-arrow and down-arrow to jump to next row in MARC
944           editor
945           
946           As TAB/shift-TAB move between each editable element of the MARC
947           record,
948           we already have fine-grained keyboard navigation. However, moving
949           down
950           10 data fields requires around 50 TAB presses or more, depending
951           on how
952           many subfields are in the intervening data fields, or a looonng
953           hold of
954           the tab key; not good for RSI.
955           
956           The up-arrow and down-arrow keys, then, move directly to the next
957           or
958           previous row, placing the focus in the first editable subfield
959           element
960           rather than in the tag name (under the assumption that
961           cataloguers are
962           most likely to want to edit the contents of a given subfield, and
963           not
964           the tag name or indicators).
965           
966           Now, in the worst-case scenario, a cataloguer who wants to edit
967           the tag
968           name of a field 10 rows below their current position will have to
969           make 14 key presses (10 down arrows, 4 shift-TABs). Not too
970           shabby.
971
972 2010-07-08  erickson
973
974         * instead of reading the MARC data directly from the socket, set
975           the end-of-line character appropriately and read the data
976           directly from STDIN. The 'wait' time is now only used as a
977           security measure to prevent accidental hogging of worker
978           processes
979
980 2010-07-08  scottmk
981
982         * Streamline pcrud a bit.
983           
984           If there is a permacrud entry for the relevant action, but the
985           list of
986           permissions is empty, we grant access.
987           
988           The change: grant access as soon as the permission list can be
989           known
990           to be empty, instead of doing a lot of irrelevant stuff first
991           (including extra database fetches in some cases).
992           
993           M Open-ILS/src/c-apps/oils_sql.c
994
995 2010-07-08  senator
996
997         * Acq: If you go from a catalog record to "View/Place orders",
998           there are now
999           easy shortcuts for adding a new lineitem to a selection list or a
1000           PO if there
1001           aren't already any existing lineitems to work with.
1002
1003 2010-07-08  phasefx
1004
1005         * record the billing_last and billing_first fields from
1006           bill_cc_info.xul into cc_first_name and cc_last_name on
1007           money.credit_card_payment, even for out-of-band (externally
1008           processed) payments. Also protect the bill_cc_info dialog from
1009           patrons with no billing address (such as admin)
1010
1011 2010-07-08  dbs
1012
1013         * Reclaim cataloguing real estate by hiding unnecessary rows in
1014           fixed field grid editor
1015           
1016           The fixed field grid editor currently shows blank rows for fixed
1017           field
1018           attributes that don't apply to the currently displayed MARC
1019           record type. We
1020           can hide these rows and offer more screen real estate for the
1021           MARC record
1022           proper.
1023
1024 2010-07-08  senator
1025
1026         * Acq: try looking up jacket image by UPC if ISBN is not available
1027
1028 2010-07-08  phasefx
1029
1030         * Fixes Mark Claimed Returned. It seems that dojo isn't the only
1031           library picky about ISO8601;
1032           DateTime::Format::ISO8601->parse_datetime was choking in this
1033           case
1034
1035 2010-07-08  dbs
1036
1037         * Give the "About" button a legitimate accesskey
1038           
1039           r15562 contained a fix for this to rel_1_6_0, but apparently I
1040           never
1041           forward-ported that "fix". Unfortunately, this leads to broken
1042           interfaces in
1043           the i18n build (bug re-found by Robert Souilliere in the 1.6.1.1
1044           release).
1045
1046 2010-07-08  erickson
1047
1048         * add sig handler back in for alarm. log error when read times out
1049           from alarm
1050
1051 2010-07-08  miker
1052
1053         * fix initial subfield detection bug
1054
1055 2010-07-09  dbs
1056
1057         * SuperCat requests for plain marcxml were returning holdings /
1058           links
1059           
1060           This could cause "great fun" in the MARC editor as a bib record
1061           suddenly
1062           grew volume and xhtml:link elements; everything would spiral
1063           downward
1064           from there.
1065
1066         * vandelay.dtd already includes the arrows in the entity definition
1067           for next/previous page
1068
1069 2010-07-09  miker
1070
1071         * add support for switching between xul and textarea marc editors
1072
1073 2010-07-09  dbs
1074
1075         * Initial support for wrapping long subfields in the MARC editor
1076           
1077           Limitations of the current approach are that the line width is
1078           arbitrarily set
1079           to break at 100 characters, and is only calculated on a
1080           per-subfield basis. So
1081           if a given field contains 50 subfields, each with 90 characters,
1082           this commit
1083           isn't going to help you. (But really... in that scenario, you're
1084           beyond help
1085           anyway!)
1086           
1087           Also, the double-dagger aligns itself at the top of the box
1088           rather than the
1089           middle once the box goes into multiline mode, which is annoying;
1090           but long 505
1091           fields that scroll ten screens to the right are more annoying, so
1092           I'll commit
1093           this for now rather than waste more time trying to CSS it into
1094           shape.
1095
1096         * Restore whitespace consistency (spaces not tabs)
1097
1098         * New feature: maintain control numbers (001, 003, 035) for MARC
1099           records
1100           
1101           If a site wishes to maintain their control numbers and control
1102           number
1103           identifiers in authority, bibliographic, and MFHD MARC records
1104           according
1105           to the MARC21 specification, they will now be able to:
1106           
1107           1. Enable the global flag 'cat.maintain_control_numbers' to turn
1108           on
1109           control number maintenance. This is disabled by default, so no
1110           changes
1111           will be made by the system until the flag is enabled.
1112           
1113           2. (Optionally) Set the cat.marc_control_number_identifier OU
1114           setting
1115           to override the control number identifier for records owned by
1116           that OU;
1117           if this is not set, then the control number identifier defaults
1118           to the
1119           OU shortname.
1120           
1121           3. Set the owner field for the records that are to be controlled;
1122           otherwise
1123           they will fall back to the global default which is currently
1124           hardcoded as
1125           'EVRGRN'.
1126
1127         * dojo == elegant; refactor cursor up/down and hide fixed fields in
1128           MARC editor
1129
1130 2010-07-11  miker
1131
1132         * break facets out to a separate table for speed
1133
1134         * thinko in upgrade script
1135
1136 2010-07-12  miker
1137
1138         * facet query correction
1139
1140 2010-07-12  dbs
1141
1142         * NFC() needs Unicode::Normalize - strange that this didn't come up
1143           in previous testing
1144
1145         * Several fixes for authority-controlled field and control number
1146           syncing
1147           
1148           The fix for maintain_control_numbers() was committed earlier, but
1149           wasn't
1150           part of a new upgrade script; this will ensure that everyone
1151           following
1152           trunk picks up the correction.
1153
1154 2010-07-12  gmc
1155
1156         * cache OPAC-visibility of copies and bibs
1157           
1158           Create a new "materialized view" table,
1159           asset.opac_visible_copies,
1160           for use during the copy visibility check during OPAC searches.
1161           This
1162           is used by search.query_parser_fts(), replacing a check of a
1163           five-table
1164           join for each bib in the search results that proved to be far
1165           too slow on some large databases.
1166           
1167           This table is maintained by triggers on inserts and updates to
1168           the
1169           following tables:
1170           
1171           actor.org_unit
1172           biblio.record_entry
1173           config.copy_status
1174           asset.call_number
1175           asset.copy
1176           asset.copy_location
1177           serial.unit
1178           
1179           During a migration or large global change operation, it is
1180           recommended
1181           that those triggers be disabled. To (re)populate the materialized
1182           view, do
1183           
1184           SELECT asset.refresh_opac_visible_copies_mat_view();
1185           
1186           Thanks to Mike Ryladner for his help with this.
1187           
1188           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1189
1190         * protect against deletion of serial.unit rows
1191           
1192           Rules are not inherited by child tables, so must
1193           add one explicitly.
1194           
1195           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1196
1197 2010-07-12  phasefx
1198
1199         * printing the contents of iframes is sometimes problematic,
1200           especially with complex DHTML, etc. This change allows content to
1201           define a printable_output() function for simple text to print
1202           instead of the rendered content itself
1203
1204         * printable_output() for the patron editor, given that printing the
1205           Dojo here is problematic
1206
1207 2010-07-12  senator
1208
1209         * Make a translate button available in the name column of copy
1210           locations editor
1211
1212 2010-07-12  dbs
1213
1214         * Prevent MARC batch import from blindly trusting the user by
1215           checking LDR/06
1216           
1217           With this commit, Vandelay will now check the leader of the
1218           incoming MARC
1219           record to ensure that its MARC type matches the indicated import
1220           record
1221           type. This is useful, for example, if you have a mixed set of bib
1222           & holdings
1223           records that you want to import; you don't want to import the
1224           holdings records
1225           as bib records.
1226           
1227           This is a fairly strict implementation; we could relax this by
1228           turning the
1229           check on its head and allowing the import as the user-indicated
1230           type as long
1231           as the LDR/06 doesn't explicitly match another record type.
1232
1233         * Whitespace consistency for Vandelay
1234
1235 2010-07-13  dbs
1236
1237         * Add 100$e (relator) and 711$c (Location of meeting) to controlled
1238           field map
1239           
1240           We'll probably flesh this out further as we get more serious
1241           about authority
1242           control, but these ones stood out in our initial testing.
1243
1244 2010-07-13  scottmk
1245
1246         * Add limit_count and offset_count columns to query.stored_query
1247           table.
1248           
1249           M Open-ILS/src/sql/Pg/002.schema.config.sql
1250           M Open-ILS/src/sql/Pg/008.schema.query.sql
1251           A Open-ILS/src/sql/Pg/upgrade/0334.schema.query-limit-offset.sql
1252           M Open-ILS/examples/fm_IDL.xml
1253
1254 2010-07-13  dbs
1255
1256         * Stub script for adding authority control to an existing set of
1257           bibs
1258           
1259           The goal of this script is to iterate over every bib record
1260           listed at
1261           the command line (or --all) and check every controlled bib field
1262           for
1263           matching subfield combinations in authority records. This is
1264           going to
1265           be slow, friends, but for this iteration we're looking at paying
1266           a
1267           one-time cost; after that, controlled fields will automatically
1268           be
1269           maintained by triggers on the authority.record_entry tables.
1270           
1271           The bib field-to-auth field mapping needs to be fleshed out
1272           (should
1273           be comparable to the mapping in marcedit.js) and floating
1274           subdivisions
1275           still need to be controlled. Probably in a separate pass over the
1276           bibs,
1277           given the current "design".
1278           
1279           We extend open-ils.s*.authority.validate.tag to offer an
1280           id_list() variant
1281           so that we can get the corresponding authority record ID back
1282           from the
1283           call, instead of just a count.
1284
1285         * Make maintain_901() more robust in the presence of namespaces
1286           
1287           Some records manage to get XML namespace declarations into each
1288           element,
1289           like <datafield xmlns:marc="http://www.loc.gov/MARC21/slim"
1290           
1291           This broke the old maintain_901(), so we'll make the regex more
1292           robust
1293
1294 2010-07-13  scottmk
1295
1296         * Qstore: support LIMIT and OFFSET clauses.
1297           
1298           Also: add some links to the IDL, that should have been there
1299           in the first place.
1300           
1301           M Open-ILS/include/openils/oils_buildq.h
1302           M Open-ILS/src/c-apps/oils_storedq.c
1303           M Open-ILS/src/c-apps/buildSQL.c
1304           M Open-ILS/src/sql/Pg/002.schema.config.sql
1305           M Open-ILS/src/sql/Pg/008.schema.query.sql
1306           A
1307           Open-ILS/src/sql/Pg/upgrade/0336.schema.query-limit-offset-fkey.sql
1308           M Open-ILS/examples/fm_IDL.xml
1309
1310 2010-07-13  dbs
1311
1312         * Relax bib type parsing a little and allow spaces (like the
1313           comments promised)
1314           
1315           Also fix a few drive-by typos
1316
1317 2010-07-13  miker
1318
1319         * remove even more namespace prefixes ... take THAT, IE!
1320
1321 2010-07-13  dbs
1322
1323         * Be more relaxed about what we receive in Vandelay (a bad LDR/09
1324           need not lead to complete misery)
1325           
1326           If MARC::File::XML->as_xml_record() receives a record with
1327           anything other
1328           than 'a' in LDR/09 position, it will try to run a MARC8-to-UTF8
1329           conversion
1330           on the record - even though the source file itself was XML and
1331           clearly
1332           couldn't have been MARC8.
1333           
1334           This code corrects the leader on the fly so that MARC::File::XML
1335           won't
1336           try to convert it and throw a "wide character" warning, but the
1337           fix
1338           means that something was wrong with the leader to begin with, so
1339           we also
1340           write a warning to the log about the situation.
1341
1342 2010-07-14  dbs
1343
1344         * Improve auto-authority-control processing script:
1345           * Prevent duplicate $0 subfields from being generated by multiple
1346           runs
1347           * Provide more bib field/subfield -> auth field/subfield mappings
1348           * Protect against missing bib->auth maps
1349           * Correct --all option to actually retrieve all undeleted records
1350
1351         * validate.tag.id_list: Return an empty list instead of 0 in the
1352           case of no matching records
1353           
1354           This makes it a little easier to handle cases where there was no
1355           match,
1356           rather than having to check to see if we have a scalar or a
1357           reference
1358           to a list.
1359
1360         * In theory, this would be a step towards MFHD records in the
1361           editor looking saner.
1362           
1363           In practice, the BKS fixed fields are hidden. Sadly, the leader
1364           values
1365           for the MFHD record are not displayed either.
1366
1367         * Set the 004 of the new MFHD record to the ID of the targeted bib
1368           record
1369
1370 2010-07-14  scottmk
1371
1372         * When returning a list of bind variables: If a default_ or
1373           actual_value
1374           is undefined for a given variable, leave it out of the JSON
1375           object
1376           altogether, rather than create an entry with a JSON null for it.
1377           
1378           That way the client can distinguish between an undefined value
1379           and
1380           a value defined as null.
1381           
1382           M Open-ILS/src/c-apps/buildSQL.c
1383
1384 2010-07-14  dbs
1385
1386         * CSS makes things visible, or not. Display the nascent MFHD
1387           fixed-field editor.
1388
1389         * Authority records get some fixed-field love in the MARC Editor
1390
1391 2010-07-15  dbs
1392
1393         * Teach assets.merge_record_assets() to also merge authority->bib
1394           links
1395
1396         * On second thought, delete authority links pointing to stale bib
1397           records
1398           
1399           This avoids the overhead of updating controlled fields in deleted
1400           bib records.
1401
1402         * asset.merge_record_assets() needs auth_link declaration (was in
1403           upgrade script)
1404
1405 2010-07-15  gmc
1406
1407         * bug 605884: make MARC expert search of control fields work
1408           
1409           Allows users to search on the 001 and 003 fields, for example.
1410           
1411           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1412
1413         * bug 605921: fix bib search hang on queries like "title ;
1414           subtitle"
1415           
1416           More generally, the fix avoids a to_tsquery exception in cases
1417           where a search term is normalized away to the empty string.
1418           
1419           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1420
1421 2010-07-15  dbs
1422
1423         * Delete links to deleted bib records as part of
1424           biblio.indexing_ingest_or_delete()
1425           
1426           Moves authority.bib_linking cleanup from the special case
1427           of merging bib record assets to the general case of deleting bib
1428           records
1429
1430 2010-07-15  miker
1431
1432         * companion to "browse", which drops you into the middle of a list
1433           centered on your input, "startwith" browses only from your input
1434           on
1435
1436 2010-07-15  dbs
1437
1438         * Protect authority records from real deletion and add a "merge
1439           authorities" function
1440
1441 2010-07-15  erickson
1442
1443         * return # of imported and failed records to the caller
1444
1445 2010-07-15  miker
1446
1447         * ARG! Missed a semicolon. Perl, be like JS and make them optional.
1448           On second thought do not be like JS in any way.
1449
1450 2010-07-15  senator
1451
1452         * make openils.widget.TranslatorPopup a little more
1453           environment-agnostic
1454
1455 2010-07-15  phasefx
1456
1457         * add copy circ lib to alternative item details view
1458
1459         * allow open-ils.circ.hold.update.batch to apply nulls to fields
1460
1461         * wrong variable; could refresh the wrong rows
1462
1463         * more configuration options for date/timepicker dialog, and use
1464           that dialog with staff editing of hold thaw date and expire time
1465
1466         * Have open-ils.circ.circulation.due_date.update return the circ
1467           instead of the circ id so that modified rows in Items Out refresh
1468           correctly, and have Items Out -> Edit Due Date, -> Renew with
1469           Specific Date, and -> Mark Claimed Returned use the
1470           date/timepicker dialog
1471
1472 2010-07-15  senator
1473
1474         * This should have been part of r16946. Now the TranslatorPopup
1475           works in the
1476           Copy Location Editor
1477
1478 2010-07-16  miker
1479
1480         * use a left join instead of -not-exists for anti-join -- much
1481           faster for large nullable-side sets in this case
1482
1483 2010-07-16  gmc
1484
1485         * whitespace consistency improvements
1486           
1487           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1488
1489         * add --timeout switch to marc_export
1490           
1491           Provides way to export bibs with holdings
1492           that have a large number of copies attached. Default
1493           timeout remains 1 second when exporting bibs; increased
1494           to 300 seconds when exporting holdings based on
1495           empirical tests on a big database.
1496           
1497           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1498
1499 2010-07-16  erickson
1500
1501         * rearrange while loop to prevent error: Can't 'last' outside a
1502           loop block
1503
1504 2010-07-16  dbs
1505
1506         * Add the new owner column to the are object in the IDL
1507
1508         * serial.record_entry already had an owner column spelled
1509           "owning_lib"
1510           
1511           Adjust the table and affected function accordingly
1512
1513 2010-07-16  gmc
1514
1515         * make --timeout actually work if setting a timeout > 60 seconds
1516           
1517           Also remove ersatz XML declarations so that XML output
1518           is well-formed.
1519           
1520           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1521
1522 2010-07-16  phasefx
1523
1524         * get rid of the chrome instantiated sound object so it's every
1525           interface for itself, and have remote xul load
1526           server/skin/custom.js instead of chrome
1527
1528 2010-07-16  erickson
1529
1530         * return NULL terminator to indicate successful read; fixed typo
1531
1532 2010-07-16  dbs
1533
1534         * It is important to update the upgrade_log to prevent collisions
1535           and such.
1536           
1537           Updating config.upgrade_log to 0340.
1538
1539 2010-07-16  gmc
1540
1541         * add seed for COPY_NEEDED_FOR_HOLD.override permission
1542           
1543           Being careful during the upgrade since a fair number of
1544           EG database in the wild had this one added manually.
1545           
1546           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1547
1548 2010-07-17  dbs
1549
1550         * Fix schema creation breakage. Damn you dangling commas.
1551
1552         * Switch to ingesting authority records automatically via database
1553           triggers
1554           
1555           Taken largely from the existing approach for ingesting biblio
1556           records,
1557           there is some duplication here that we could genericize. But for
1558           now,
1559           we'll go with the working-but-separate approach to avoid
1560           introducing
1561           badness into the relatively stable biblio ingest pipeline.
1562           
1563           Also, move some of the existing authority-related functions out
1564           of
1565           the metabib schema file and into 999.functions.global.sql.
1566           
1567           Finally, the direct_ingest.pl script is no longer necessary for
1568           ingest of authority records, either, so die in that case as well.
1569
1570         * Teach marc2sre.pl MFHD record ingest script to read a mapping of
1571           library names to OU IDs
1572           
1573           The past approach required workarounds that weren't fun for a
1574           library
1575           without in-house scripting expertise; this provides a
1576           straightforward
1577           mapping approach with docs and a working sample. Which should be
1578           helpful
1579           for all of the libraries that will go with the MFHD serials
1580           approach in
1581           the future. Heh.
1582
1583 2010-07-18  miker
1584
1585         * remove ingest service call from authority import thanks to in-db
1586           ingest of auth by dbs; send final message with total and count
1587           processed; send record counts at most every 3%; rearrange queue
1588           cleanup code to aviod needless rollback and cover all queues, not
1589           just the first one we test
1590
1591         * put the null return back, in case that is important on the client
1592           side
1593
1594 2010-07-19  erickson
1595
1596         * repaired sql syntax for upgrade log commit
1597
1598         * when calculating estimed hold wait time, don't ignore copies that
1599           have no circ modifier
1600
1601         * updated default estimated hold wait display to handle seconds
1602           instead of days returned by the ML API call. TODO, consider
1603           if/how to handle sub-day intervals
1604
1605 2010-07-19  miker
1606
1607         * use LEFT JOIN to allow a single query to count copies per circ
1608           mod
1609
1610         * use abs() to get page number in either direction
1611
1612 2010-07-20  erickson
1613
1614         * md5 module is deprecated; move to hashlib
1615
1616 2010-07-20  miker
1617
1618         * backporting r16982: use the correct table and field, caught by
1619           Doug Kyle and reported via IRC
1620
1621         * Patch from John Craig providing a saner timestamp cleansing setup
1622           for backdated circs
1623
1624 2010-07-20  erickson
1625
1626         * added support for selecting individual copy statuses that will
1627           prevent checkout at self-check even when the generic
1628           copy_not_available event has been overridden to allow for
1629           non-standard copy circs from selfcheck. TODO: ui for managing the
1630           list
1631
1632         * flush the xmpp socket before attempting to process new marc
1633           stream requests
1634
1635         * login just before starting work and log out after each request is
1636           handled. this is removes the need to check for bad authtokens and
1637           re-login mid-process
1638
1639 2010-07-20  gmc
1640
1641         * set truncation to 1 for all biblios.net Z39.50 attributes
1642           
1643           Thanks to Anoop Atre for spotting the problem.
1644           
1645           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1646
1647 2010-07-21  scottmk
1648
1649         * Two new tables in action schema: fieldset and fieldset_col_val.
1650           
1651           M Open-ILS/src/sql/Pg/090.schema.action.sql
1652           M Open-ILS/src/sql/Pg/999.functions.global.sql
1653           M Open-ILS/src/sql/Pg/002.schema.config.sql
1654           A Open-ILS/src/sql/Pg/upgrade/0346.schema.action-fieldset.sql
1655           M Open-ILS/examples/fm_IDL.xml
1656
1657 2010-07-21  miker
1658
1659         * index which /greatly/ speeds collection of pending active events
1660
1661 2010-07-21  gmc
1662
1663         * improve documentation of macros available to receipt templates
1664           
1665           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1666
1667 2010-07-21  miker
1668
1669         * add copy_circ_lib and copy_owning_lib to circ matrix matchpoints,
1670           closer one (if both are set) is more important to the ordering
1671
1672         * add parameter support to acn, acp and auri unapi axes
1673
1674         * protect acn, acp and auri from our $lib faking
1675
1676 2010-07-21  erickson
1677
1678         * pushed view-in-catalog link up to the main lineitem display.
1679           moved pl/po/worksheet/catalog links to a row of their own for a
1680           more consistent location (visually).
1681           replaced 'PO:' 'PL:' with small icons to easier catch the eye;
1682           added 'worksheet' tag to the worksheet icon for clarity
1683           TODO: plug in bib discovery and linking mechanism for freerange
1684           lineitems
1685
1686         * add collection code as non-i18n version of shelving location
1687
1688         * added an 'Add Brief Record' button to the PO interface, which is
1689           visible when there are no lineitems on an existing PO.
1690
1691 2010-07-22  miker
1692
1693         * retain the indicators on located uri 856 merge during asset
1694           merge; update script and backporting to come
1695
1696         * upgrade script and version bump for r17007
1697
1698 2010-07-22  senator
1699
1700         * Acq: always show "add to new selection list" / "create new PO"
1701           buttons in
1702           related lineitems interface
1703
1704         * Acq: attempt to fix issue where adding copies in an LI table's
1705           copies
1706           interface, then returning to the table view, then going back to
1707           copies
1708           doesn't show the most recent saved changes.
1709
1710 2010-07-22  gmc
1711
1712         * bug #608937: make barcode search from main patron search form
1713           case-insensitive
1714           
1715           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1716
1717 2010-07-22  erickson
1718
1719         * fixed bug in related lineitems page where it was attempting to
1720           fetch the bib record based on the lineitem id
1721
1722         * Added option to link a (freerange) lineitem to a catalog
1723           record via simple pop-up search page.
1724
1725 2010-07-22  senator
1726
1727         * Acq: revert something I didn't mean in r17013
1728
1729 2010-07-23  erickson
1730
1731         * log the IP address of the connecting client
1732
1733 2010-07-23  phasefx
1734
1735         * support printing of stat cats and surveys from patron editor
1736
1737         * logic error preventing deletion of addresses in patron editor
1738
1739 2010-07-23  miker
1740
1741         * Forward-port r17024: include null fields, via .toStoreItem(),
1742           when creating a permission map store item
1743
1744 2010-07-23  scottmk
1745
1746         * Add procedure action.apply_fieldset.
1747           
1748           M Open-ILS/src/sql/Pg/090.schema.action.sql
1749           M Open-ILS/src/sql/Pg/002.schema.config.sql
1750           A
1751           Open-ILS/src/sql/Pg/upgrade/0350.schema.action-apply-fieldset.sql
1752
1753 2010-07-26  dbs
1754
1755         * Update README and prereq installer for Evergreen trunk:
1756           
1757           * Favour PostgreSQL 8.4
1758           * Add ISN contrib
1759           * Update Dojo to 1.3.3
1760           * Add Ubuntu Lucid as a target
1761           * Remove Gentoo support (until we have a volunteer)
1762           * Remove Ubuntu Karmic support (can add back in at release time
1763           if warranted)
1764
1765         * Mention oils_web.xml in the README
1766
1767 2010-07-26  gmc
1768
1769         * improve description of VIEW_PERMIT_CHECKOUT and VIEW_HOLD_PERMIT
1770           permissions
1771           
1772           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
1773
1774 2010-07-26  scottmk
1775
1776         * New table: actor.usr_saved_search
1777           
1778           M Open-ILS/src/sql/Pg/005.schema.actors.sql
1779           M Open-ILS/src/sql/Pg/002.schema.config.sql
1780           A Open-ILS/src/sql/Pg/upgrade/0351.schema.usr_saved_search.sql
1781           M Open-ILS/examples/fm_IDL.xml
1782
1783 2010-07-26  phasefx
1784
1785         * tweak hold "status" for canceled holds. And one whitespace fix
1786
1787 2010-07-27  dbs
1788
1789         * We require Buttons on this form. Continuing the good work senator
1790           started.
1791
1792 2010-07-27  scottmk
1793
1794         * Merge Dan Wells' changes to the serial schema from the
1795           seials-integration branch.
1796           
1797           M Open-ILS/src/sql/Pg/002.schema.config.sql
1798           A Open-ILS/src/sql/Pg/upgrade/0352.schema.serials-integration.sql
1799           M Open-ILS/src/sql/Pg/210.schema.serials.sql
1800           M Open-ILS/examples/fm_IDL.xml
1801
1802 2010-07-27  dbs
1803
1804         * Reverse dojo.mixin() order in AutoFieldWidget to favour passed-in
1805           constraints; otherwise we stomp them
1806
1807         * Prevent years in "New Fund" dialog from being displayed with a
1808           comma separator
1809           
1810           Also limit to a seemingly reasonable range of 2000 - 2200 for the
1811           year
1812
1813 2010-07-27  phasefx
1814
1815         * put these command elements into the overlay, closer to where
1816           they're being used
1817
1818         * entry point and function stub for Mark Item as Missing Pieces
1819           entry point for scanning item as missing pieces and stub dialog
1820
1821         * flesh out scan item as missing pieces dialog
1822
1823         * since we're re-circulating to previous patrons sometimes as a
1824           poor man's check-in undo, give us the power to turn off these
1825           fee-generating features. berick++
1826
1827         * middle layer support and client-side utility function. missing
1828           messagecat for missing pieces dialog
1829
1830 2010-07-28  miker
1831
1832         * documentation for facet value retrieve method
1833
1834 2010-07-28  senator
1835
1836         * Syntax error in serials schema file.
1837
1838 2010-07-29  miker
1839
1840         * Patch from Jason Stephenson:
1841           
1842           The patch adds (BinaryEncoding => 'UTF-8') wherever
1843           MARC::File::XML is used in the database
1844           PgPerl functions where it is not already being done. This stops
1845           the functions like
1846           maintain_control_number() from trying to convert records from
1847           MARC8 to UTF-8 and blowing up,
1848           when the records are already UTF-8.
1849
1850 2010-07-29  dbs
1851
1852         * Build a threadsafe libjs so that JavaScript::SpiderMonkey can be
1853           threadsafe
1854           
1855           Thomas Berezansky <tsbere@mvlc.org> reported problems building
1856           JavaScript::SpiderMonkey on 64-bit Ubuntu and offered some
1857           patches to build it without -JS_THREADSAFE. The real problem,
1858           however,
1859           was that libjs was not itself being built with the JS_THREADSAFE
1860           option.
1861           
1862           Enabling the JS_THREADSAFE option pulls in the requirement of
1863           the nspr4-dev package on Ubuntu and Debian.
1864           
1865           Tested on 64-bit Ubuntu Lucid and 64-bit Debian Lenny. 64-bit
1866           Fedora 13
1867           worked previously because it uses the packaged version of libjs -
1868           which
1869           was already built with the JS_THREADSAFE option.
1870
1871         * Add Developer Instructions section, like the OpenSRF README, per
1872           tsbere's suggestion
1873
1874 2010-07-29  atz
1875
1876         * Need to die if we fail to find a picklist, symmetric to the top
1877           of the conditional.
1878           
1879           Otherwise, we crash out on $conn->respond($picklist->id);
1880
1881 2010-07-29  senator
1882
1883         * Acq: better labels for adding catalog record based item to PL or
1884           PO
1885
1886 2010-07-29  miker
1887
1888         * This patch replaces the result page sidebar new-search trees
1889           (implemented before "faceting" became a thing, and designed for
1890           new-search, not drill-down) with and implementation of what has
1891           become
1892           the generally accepted "way to do faceting". This is implemented
1893           as a
1894           Dojo Dijit, and the markup and code footprints within the OPAC
1895           proper
1896           are small, just a couple <div>s and a little bit of glue code to
1897           help
1898           the facet rendering engine find the data it needs. The set and
1899           order
1900           of facet classes to display in a given facet bar (title, author,
1901           subject, etc) is configurable in the markup, as are the number of
1902           values displayed for each facet when collapsed (before the
1903           [More...]
1904           button is pushed).
1905           
1906           Also included is a Searcher Dijit which implements an embeddable
1907           advanced search interface. This is mainly useful for constructing
1908           boolean-chained searches (we support AND and OR now, though
1909           they're
1910           spelled && and || in the query string), and has the beginnings of
1911           support for filters and modifiers.
1912
1913 2010-07-29  erickson
1914
1915         * repaired copy/paste thinko in the vandelay
1916           auto-overlay-with-merge-profile logic
1917
1918 2010-07-30  atz
1919
1920         * Admin Menu link for viewing EDI Messages
1921           
1922           Modifies and uses the existing page for viewing one PO's
1923           messages.
1924           
1925           TODO: Other kinds of filtering/searching.
1926           TODO: Display PO number where name unavailable.
1927
1928 2010-08-02  phasefx
1929
1930         * toward printing slip and letter for missing pieces
1931
1932 2010-08-02  miker
1933
1934         * update schema list for Slony replication
1935
1936         * create correct primary key constraints for some view-based /
1937           inheritted tables
1938
1939 2010-08-02  atz
1940
1941         * 0356 fixup - the updates otherwise failed for syntax or dependent
1942           constraints
1943
1944 2010-08-02  miker
1945
1946         * escape more in the cn label for browse xml
1947
1948 2010-08-03  dbs
1949
1950         * Correct DDL for creating a fresh schema - match upgrade 0356
1951
1952         * Slight overhaul of ISBN indexing focused on the
1953           translate_isbn1013 function
1954           
1955           * Switch to a PLPERLU function built on Business::ISBN for more
1956           robust
1957           indexing of records with problematic ISBNs; thanks to Jason
1958           Stephenson
1959           <jstephenson@mvlc.org> for the initial implementation
1960           
1961           * Remove the first_word, naco_normalize, and split_date_range
1962           normalizers
1963           from the indexing chain for ISBNs, as these unnecessarily munge
1964           the
1965           ISBNs. We can trust Business::ISBN to determine what is a real
1966           ISBN,
1967           hyphens and all.
1968           
1969           * Index all ISBNs in a given record and generate the
1970           corresponding
1971           ISBN10/ISBN13 variations. Also, fix the checksum if given an ISBN
1972           with
1973           a bad checksum, but be sure to index the original bad-checksum
1974           ISBN as
1975           well.
1976           
1977           * Add a set of 10 MARC records with bad ISBNs (thanks to Jason
1978           Stephenson
1979           again for these) for testing purposes to Open-ILS/tests/datasets
1980           
1981           * Add the Business::ISBN Perl module as a prerequisite to the
1982           installer
1983           
1984           * Remove contrib/isn from the PostgreSQL install instructions
1985
1986 2010-08-03  erickson
1987
1988         * added open-ils.circ.copy.due_date.retrieve API call to return the
1989           due date for a given copy if it's circulating. method does not
1990           require auth, so only the due date is exposed, not the circ or
1991           user, etc.
1992
1993 2010-08-03  atz
1994
1995         * 0358 more values for acq.cancel_reason
1996           
1997           Note: we won't be using all of them, the set is just there for
1998           completeness.
1999
2000 2010-08-03  scottmk
2001
2002         * New org unit setting type: serial.prev_issuance_copy_location
2003           
2004           M Open-ILS/src/sql/Pg/002.schema.config.sql
2005           A
2006           Open-ILS/src/sql/Pg/upgrade/0359.data.setting-prev-iss-copy-loc.sql
2007           M Open-ILS/src/sql/Pg/950.data.seed-values.sql
2008
2009 2010-08-04  atz
2010
2011         * Simple 1-line feature for EDI translator
2012           
2013           Allows us to know what the effective version of openils-mapper
2014           is.
2015
2016 2010-08-04  phasefx
2017
2018         * previous changes to better support the embedded browser Print
2019           button broke printing elsewhere
2020
2021         * print missing pieces slip
2022
2023 2010-08-04  erickson
2024
2025         * updated patron fee amount call to use cstore for speed
2026
2027 2010-08-04  dbs
2028
2029         * Close LP bug 613551 - JS error in Internet Explorer from
2030           google.loader.callbacks.books
2031           
2032           Bizarre, this line does not appear to be necessary at all.
2033           Vamoose it.
2034
2035         * Firefox is picky about having attribute values quoted, let's
2036           oblige it
2037           
2038           Still some generated dojo.query() expressions throwing warnings
2039           but we can tackle those... later
2040
2041 2010-08-04  miker
2042
2043         * segregate the old version of facet-modified JS to be
2044           craftsman-specific
2045
2046         * a glue method used to apply a template to a set of records
2047
2048 2010-08-04  phasefx
2049
2050         * tweak to item attribute editor to support hiding of fields with
2051           cat_custom.css
2052
2053 2010-08-04  erickson
2054
2055         * require latest last_xact_id for payments
2056           
2057           To prevent accidental multiple payments on the transaction or
2058           payments
2059           against stale information, require the latest user last_xact_id
2060           to be
2061           passed into the payment API call. Update staff client (thanks
2062           jason)
2063           and self-check payment interfaces to match.
2064
2065 2010-08-04  miker
2066
2067         * allow ACQ-driven ordering and claiming of serial items
2068
2069 2010-08-04  phasefx
2070
2071         * required column for item stat cats
2072
2073 2010-08-04  senator
2074
2075         * Provide a handy method for dojo-based interfaces to correctly
2076           show timestamps
2077           from fieldmapper object fields.
2078
2079 2010-08-04  erickson
2080
2081         * no need to search for patron summary, instead retrieve directly
2082           by usr id
2083
2084 2010-08-04  phasefx
2085
2086         * add Required to copy stat cat editor, add User Summary to patron
2087           stat cat editor for initial stat cat creation, and fix a bug
2088           where editing an existing copy stat cat would attempt to set
2089           usr_summary. Modified behavior a bit so that an update is
2090           attempted whenever the user presses update, and not just if data
2091           is changed (this was me punting instead of trying to modify the
2092           test for both copy and patron stat cats)
2093
2094 2010-08-05  gmc
2095
2096         * bug 613703: normalize backdate on item checkin better
2097           
2098           Fixes bug that appears to cause all checkins uploaded
2099           via offline circ to fail with an "invalid date format"
2100           error.
2101           
2102           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2103
2104 2010-08-05  dbs
2105
2106         * Fix typo in --boostrap option, keeping it as an alias for
2107           possible automated scripts
2108
2109 2010-08-05  phasefx
2110
2111         * updating some auditor tables that were causing problems in cstore
2112           with missing columns, but not sure how to reset the _lifecycle
2113           views
2114
2115         * the caption id was important after all, for keyboard navigation
2116
2117         * fix color highlighting for xulrunner 1.9.2
2118
2119         * disable Create/Modify button in item attribute editor if Required
2120           fields are Unset
2121
2122 2010-08-05  erickson
2123
2124         * removed some deprecated code
2125
2126 2010-08-05  dbs
2127
2128         * Remove OpenILS::Utils::FlatXML - code that has been unused since
2129           before 1.0
2130
2131         * The old default skin is the new default skin
2132           
2133           We need people willing to maintain the craftsman skin, as it is
2134           falling
2135           behind "default" in functionality and goes for long periods in a
2136           broken state.
2137           
2138           This change gives Evergreen the most functional and most likely
2139           to work skin
2140           by default, which is important for making positive first
2141           impressions on
2142           possible adopters of the project.
2143
2144 2010-08-05  erickson
2145
2146         * return the matched circ rule during inspect
2147
2148         * Log the found matchpiont with indb circ policy test
2149
2150 2010-08-05  scottmk
2151
2152         * Correcting some mistakes. Sequence names must be qualified by
2153           schema.
2154           
2155           M Open-ILS/examples/fm_IDL.xml
2156
2157 2010-08-05  miker
2158
2159         * speed up open circ counting and listing
2160
2161 2010-08-05  erickson
2162
2163         * prev commit left some un-esacped <'s. fixed
2164
2165         * repaired primary key column; removed trailing semi's from SQL
2166
2167 2010-08-05  phasefx
2168
2169         * fix open-ils.circ.prev_renewal_chain.retrieve_by_circ.summary to
2170           return the correct user for the previous circ chain, and some
2171           debugging tweaks to Item Status Alternate View and avoid a widget
2172           collision with hold patrons
2173
2174 2010-08-05  erickson
2175
2176         * updated IDL parser to 1) load oils_object:required attr at field
2177           level
2178           instead of class level and 2) added the oils_persist:i18n attr as
2179           another field-level boolean
2180
2181         * honoring IDL 'required' attr for autofieldwidget for styling
2182
2183         * added oils_obj:required attrs for circ_matrix_matchpoint
2184
2185 2010-08-05  phasefx
2186
2187         * Fixed form validation with surveys (the filteringSelect dijits
2188           were treating themselves as invalid if not set)
2189           Some I18N for form validation
2190           Removed some lingering (and annoying) scrollOnFocus behavior with
2191           the non-autoField widgets
2192
2193 2010-08-06  gmc
2194
2195         * bug 614132: fix glitch when used cached permission group widget
2196           
2197           Fixes bug where the initial permission group value in a circ or
2198           hold matrix entry was not displayed when editing an
2199           existing matchpoint.
2200           
2201           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2202
2203         * bug 614150: bail out on ACTOR_USER_NOT_FOUND
2204           
2205           This fixes a bug where uploading an offline checkout
2206           that refers to a missing patron returns an INTERNAL_SERVER_ERROR
2207           instead of ACTOR_USER_NOT_FOUND. More generally, this avoids
2208           an exception in case case where a circ operation is made
2209           without checking the existence of the patron record beforehand.
2210           
2211           mk_env could use a better name, too.
2212           
2213           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2214
2215         * added CentOS/RHEL packages for Business::ISBN and friend
2216           
2217           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2218
2219 2010-08-06  scottmk
2220
2221         * Refine the way we detect loss of the database connection.
2222           
2223           This is a terrible, horrible, no good, very bad kludge.
2224           
2225           We do an innocuous SELECT 1. If this query succeeds, then we know
2226           that the
2227           connection is still good. If it fails, well...
2228           
2229           Sometimes the SELECT 1 query fails, not because the database
2230           connection is dead,
2231           but because (due to a previous error) the database is ignoring
2232           all commands,
2233           even innocuous SELECTs, until the current transaction is rolled
2234           back. The only
2235           known way to detect this condition via the dbi library is by
2236           looking at the error
2237           message returned by dbi_conn_error(). This approach will break if
2238           the language
2239           or wording of the message ever changes.
2240           
2241           Note: the dbi_conn_ping function purports to determine whether
2242           the database
2243           connection is live. At this writing, it follows the same approach
2244           as described
2245           above: try a SELECT 1 and see if it works. Consequently it
2246           presumably suffers
2247           from the same shortcoming: it may erroneously report a dead
2248           connection when the
2249           database is in fact just ignoring commands due to a previous
2250           error. In addition,
2251           if it determines (rightly or wrongly) that the connection is
2252           dead, it silently
2253           tries to reconnect; if the reconnect is succesful, the function
2254           reports that the
2255           connection is still alive, as if nothing had happened. If you
2256           were in the middle
2257           of a transaction at the time, you wouldn't know that it got
2258           rolled back.
2259           
2260           M Open-ILS/src/c-apps/oils_sql.c
2261
2262 2010-08-06  miker
2263
2264         * Index the internal bib id and tcn value to make searching simpler
2265
2266 2010-08-06  erickson
2267
2268         * repaired circ-mod retrieval call to use retrieve instead of
2269           search
2270
2271 2010-08-06  phasefx
2272
2273         * menu.js and patron/display.js were passing xulG functions to
2274           browser.js differently. This makes browser.js a little smarter
2275           (so that it doesn't trampled xulG-destined members sent via
2276           passthru_content_params) and sidesteps some security blockers
2277           with inspecting xulG. xulG is a namespace/object for shoving
2278           foreign data and/or functions into a given window
2279
2280 2010-08-06  gmc
2281
2282         * bug 532217: work around caching issue resulting doubled title
2283           display
2284           
2285           Quick hack shamelessly borrowed from Dan Scott to fix problem
2286           of title being displayed twice on bib details page when back
2287           button is used in OPAC or staff client.
2288           
2289           This is a temporary fix in lieu of rewriting the bib details
2290           display to use BibTemplate exclusively.
2291           
2292           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2293
2294 2010-08-06  erickson
2295
2296         * add some tests for copy existence in checkin routines
2297
2298 2010-08-07  dbs
2299
2300         * Functionality-affecting typo: subjet -> subject
2301
2302         * Build 210.serial before 200.acq, because 200.acq references
2303           serials
2304           
2305           Confusing due to the order implied by the filename numbers, but
2306           priority
2307           has to be on getting trunk to build cleanly again; we can sort
2308           out a
2309           better way later.
2310
2311         * Basic call-number sorting by classification scheme
2312           
2313           Until now, call numbers like 'K 22 .U748 v.18' and 'K 215 .E53
2314           W37 1997' would
2315           sort incorrectly in Evergreen, making call number browsing
2316           painful.
2317           
2318           The following patch adds the following to Evergreen to support
2319           better call
2320           number sorting:
2321           
2322           * asset.call_number gains two new columns:
2323           - label_class - identifies the classification scheme for the
2324           given callnumber
2325           - label_sortkey - holds the normalized callnumber suitable for
2326           sorting
2327           
2328           * a new table, asset.call_number_class, which holds the names of
2329           each
2330           classification scheme and the name of the assorted normalization
2331           function
2332           
2333           * implementations of three normalization functions:
2334           * a generic normalizer
2335           * a Dewey Decimal Classification normalizer (courtesy the Koha
2336           project)
2337           * an LC classification normalizer (courtesy Bill Dueber's
2338           Library::CallNumber::LC)
2339           
2340           * a routine in Makefile.install to checkout and install
2341           Library::CallNumber::LC
2342           
2343           * call number sorting routines were modified to use label_sortkey
2344           instead of
2345           label, where I could find them
2346           
2347           * corresponding changes to fm_IDL.xml for the new columns + table
2348           
2349           A suggested means for applying this to an existing library would
2350           be to issue
2351           update statements against asset.call_number setting label_class
2352           to the value
2353           in asset.call_number_class that corresponds to owning_lib's
2354           scheme, for example:
2355           
2356           UPDATE asset.call_number SET label_class = 3 WHERE owning_lib IN
2357           (4,5);
2358           
2359           We need to teach the staff client holdings maintenance interfaces
2360           how to set
2361           the classification scheme for a given call number, and we should
2362           also create
2363           an org_unit setting that can set the preferred default
2364           classification scheme
2365           that the staff client should inherit. Or maybe we could just make
2366           that a
2367           sticky value and have a BEFORE trigger check the incoming value
2368           of label_class
2369           and only set it to the org_unit default value if it is NULL (to
2370           support bulk
2371           loads).
2372
2373 2010-08-09  dbs
2374
2375         * Patch from Ben Ostrowsky <ben@esilibrary.com> to specify "staff
2376           account" in proxied pages
2377           
2378           This change will make it a bit more clear that we're not looking
2379           for a
2380           patron barcode/PIN in the Selfcheck Login screen (and make the
2381           wording
2382           consistent across similar login pages).
2383
2384         * Get the entries into asset.call_number_class before altering
2385           asset.call_number
2386
2387         * Avoid the NOT NULL problem on the auditor table by not creating
2388           the constraint in the first place
2389           
2390           The auditor schemas will be different for a from-scratch DB vs an
2391           upgraded database,
2392           but just like the would-be iPhone purchaser says, "I don't care."
2393
2394 2010-08-09  erickson
2395
2396         * combine circ and user fetch into 1 cstore call for SIP items.
2397           minor cleanup
2398
2399 2010-08-09  dbs
2400
2401         * And let's create those new auditor columns first, before any
2402           changes ripple through the base table
2403
2404         * And... keep the index creation on asset.call_number in the right
2405           place
2406           
2407           There's tears in my coffee. These are not tears of joy.
2408
2409 2010-08-09  scottmk
2410
2411         * Add middle layer functions for maintaining
2412           actor.usr_saved_search.
2413           
2414           M Open-ILS/src/perlmods/OpenILS/Application/Actor.pm
2415
2416 2010-08-09  dbs
2417
2418         * Teach the staff client volume copy creator to respect OU call
2419           number preferences
2420           
2421           To teach the "Add volumes" dialog in the staff client how to show
2422           the correct
2423           set of call numbers based on the workstation OU's default
2424           classification
2425           scheme, this commit:
2426           
2427           * Adds a column "field" to the asset.call_number_class table that
2428           specifies
2429           the list of tag/subfield combinations to search for a candidate
2430           call number
2431           for a given classification scheme
2432           * Adds a new OU setting, 'cat.default_classification_scheme',
2433           that points
2434           to the asset.call_number_class ID
2435           * Extends the open-ils.cat.biblio.record.marc_cn.retrieve method
2436           to support
2437           a second argument, identifying the classification scheme for the
2438           call
2439           number extraction
2440           * Fixes the IDL for asset.call_number_class to include the ID as
2441           an explicit
2442           field
2443           * Makes the "Add volumes" dialog look up the
2444           'cat.default_classification_scheme'
2445           setting for the workstation OU and apply that to the call to the
2446           open-ils.cat.biblio.record.marc_cn.retrieve method
2447           
2448           TODO:
2449           * Provide a means of switching the classification scheme for the
2450           current volume,
2451           repopulating the call number selector widget
2452           * Save the chosen scheme as part of the acn object
2453
2454         * SQL 101: Remember to name all of the columns before you insert
2455           values into said columns
2456
2457 2010-08-09  miker
2458
2459         * In order to speed up the API call where we ask for the number of
2460           visible (or total, in the staff client), available and "unshadow"
2461           (aka total) copies, as well as record transcendance visiblity, we
2462           create here 10 stored procedures. Eight of them implement the
2463           record/metarecord, staff/opac, OU/lasso varients, and two more
2464           are wrappers simplifying the calling API.
2465
2466 2010-08-09  dbs
2467
2468         * Copy/paste-o; asset.call_number ne asset.call_number_class
2469
2470         * Create the label_class object if null was returned from the
2471           method call
2472
2473 2010-08-09  gmc
2474
2475         * removed executable bit from files that don't need it set
2476           
2477           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2478
2479 2010-08-10  erickson
2480
2481         * repaired typo/pasto in copy vis upgrade script
2482
2483 2010-08-10  miker
2484
2485         * aaaaand, another typo of the r17147 ilk
2486
2487 2010-08-10  erickson
2488
2489         * similar to findbib, replace dojox.data.dom.textContent (which
2490           fails for unknown reasons) with node.textContent for bibtemplate
2491           rendering in related lineitems page
2492
2493 2010-08-10  phasefx
2494
2495         * easier to read and corrected regexp for munging iso8601 dates so
2496           that they're usable by dojo
2497
2498         * replace this broken regexp with cleanse_ISO8601
2499
2500 2010-08-10  miker
2501
2502         * Two things: 1) match old output, with rows for no holdings 2)
2503           calculate transcendance only once per function call
2504
2505 2010-08-10  gmc
2506
2507         * fix age protection proximity test for in-DB circ
2508           
2509           Patch from John Craig.
2510           
2511           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2512
2513 2010-08-10  erickson
2514
2515         * use staff query for lineitem->bib linking ui
2516
2517 2010-08-10  gmc
2518
2519         * bug 592777: allow authoritative version of open-ils.circ.retrieve
2520           
2521           Part of a fix to avoid race condition that can occur
2522           when patron renews an item in the OPAC in a database
2523           that uses pgpool and replication, which sometimes
2524           results in an erroneous 'action_circulation_not_found' error.
2525           
2526           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2527
2528 2010-08-10  senator
2529
2530         * Acq: fix certain dialogs needlessly flashing on-screen while
2531           li_table loads
2532
2533 2010-08-11  erickson
2534
2535         * added an UI for editing vandelay import item attribute
2536           definitions. it's a basic autogrid version for now. TODO: fix
2537           some grid height styling issues
2538
2539 2010-08-11  phasefx
2540
2541         * tweak auto-barcode method to support barcodes of arbitrary
2542           length. trims last digit from seed barcode if 9 or 14 digits.
2543           works with alphanumeric barcodes like b1, test1, demo1 with no
2544           checkdigits (so it'll generate demo2, demo3, etc.)
2545
2546         * change Check Barcodes? checkbox in Volume/Item creator to Use
2547           Checkdigit. In addition to checking the barcodes, it also
2548           dictates whether the Auto-Generate Barcodes function will use
2549           checkdigits or not
2550
2551         * tweak the layout for the volume/copy creator so that buttons/etc
2552           are always on-screen, with just the input textboxes in the
2553           scrollable area
2554
2555 2010-08-11  miker
2556
2557         * missed one fix in previous optimisation effort
2558
2559 2010-08-11  atz
2560
2561         * Add page title and tidy up
2562
2563         * Respect activate_po option in interface
2564
2565 2010-08-11  miker
2566
2567         * Use a COALESCE/NULLIF nested structure instead of CASE (one
2568           branch, easy peasy) for 4x speedup in the core search query
2569
2570 2010-08-11  phasefx
2571
2572         * redundant with util_overlay.xul
2573
2574 2010-08-11  erickson
2575
2576         * Gave the base login code the ability to find username/password
2577           from a
2578           cookie. for security reasons, we don't put login data into
2579           cookies, but if the
2580           login info is available to us in that format already (say, via
2581           external means), we'll
2582           use it. This can be useful for persistent logins (e.g.
2583           self-check) or
2584           automatic logins (pushing cookie data out to workstations)
2585           
2586           Minor cleanup of the login code to make it more re-use friendly.
2587           
2588           Added self-check support for verifying the staff login before
2589           each patron
2590           login.
2591
2592 2010-08-11  scottmk
2593
2594         * Plug some memory leaks.
2595           
2596           In many places we were creating dbi_results without freeing them;
2597           pretty much everything involving transactions, savepoints,
2598           inserts, updates, and deletes.
2599           
2600           M Open-ILS/src/c-apps/oils_sql.c
2601
2602 2010-08-12  miker
2603
2604         * register the autoloader earlier, and log about the use it gets
2605
2606 2010-08-12  scottmk
2607
2608         * Complain when a sequence name is not qualified by a schema.
2609           
2610           M Open-ILS/src/c-apps/idlval.c
2611
2612 2010-08-12  dbs
2613
2614         * Remove broken old JavaScript in Google Book preview code
2615           
2616           I /think/ this was supposed to change the title of the "Preview"
2617           link to
2618           "Read this online" or the like in the case that the full text is
2619           available,
2620           but it was relying on a function that didn't exist (setText) and
2621           trying
2622           to reference an ID that didn't exists. So it broke in those rare
2623           cases
2624           where Google Books did provide the full text.
2625
2626 2010-08-12  erickson
2627
2628         * avoid confusion by not installing the non-functional
2629           GenerateBatchOverduePDF reactor with the seed data.
2630
2631         * created batch/streaming versions of hold placement and
2632           possibility check calls:
2633           open-ils.circ.holds.create[.override].batch and
2634           open-ils.circ.title_hold.is_possible.batch. Arguments are the
2635           same as non-batch, just delivered as an array; responses are
2636           delivered in order inbound params
2637
2638 2010-08-12  phasefx
2639
2640         * yet more auto-scrolling to stamp out
2641
2642         * yet more auto-scrolling to stamp out
2643
2644 2010-08-12  erickson
2645
2646         * yet more auto-scrolling to stamp out
2647
2648         * re-label recv_date as 'Invoice Date' to avoid confusion around
2649           the 'receive date' of constituent physical items
2650
2651 2010-08-12  atz
2652
2653         * Allow * in file portion of pathname
2654           
2655           Example:
2656           incoming/*.xpo => incoming/yegagufoNy.xpo
2657           
2658           You cannot put an asterisk in the path portion of the string,
2659           however,
2660           since that would mean the target directory was not determined.
2661
2662 2010-08-13  miker
2663
2664         * protect authority linking trigger against broken $0 values
2665
2666 2010-08-13  phasefx
2667
2668         * change the (Copy) link next to addresses in the patron summary to
2669           (Copy/Print), with a popup menu for choosing which action to do
2670
2671 2010-08-13  erickson
2672
2673         * DOM text/pattern highlighter
2674           
2675           openils.Util.hilightNode(
2676           node,
2677           [pattern1, pattern2, ...],
2678           {classname:foo}
2679           );
2680
2681 2010-08-13  miker
2682
2683         * fix cut-n-paste-o
2684
2685 2010-08-13  phasefx
2686
2687         * add title to item notes window and an accesskey for closing the
2688           window. Spawn the item note window during the Mark Item Missing
2689           Pieces workflow
2690
2691         * add standing penalty prompt to Mark Item Missing Pieces workflow
2692
2693         * spawn external text editor for Patron Letter during Mark Item
2694           Missing Pieces workflow. Put configuration option under Admin ->
2695           Local System Administration -> External Text Editor Command
2696
2697 2010-08-13  erickson
2698
2699         * repaired class name typo (thanks dbs). made args more generally
2700           useable
2701
2702 2010-08-13  phasefx
2703
2704         * playing around with Find in Page functionality; the recent dojo
2705           highlighter commit prompted me to share this
2706
2707         * go ahead and expose the Find in Page functionality, but hide it
2708           under the Debug label for now. Other than being incomplete (no
2709           Find Next, etc.), the main problem I see are our dynamic dojo
2710           interfaces where the text one might be tempted to search for
2711           won't actually be rendered yet on the screen (say in a scrolling
2712           list)
2713
2714         * meant to hide these Find in Page buttons
2715
2716 2010-08-13  dbs
2717
2718         * Add Debian Squeeze prereq support, drop out-of-date items
2719           
2720           * Drop Debian Etch ("Security updates have been discontinued as
2721           of the end of February 2010.")
2722           * Drop PostgreSQL server packages pre-8.4 as they are no longer
2723           supported
2724           
2725           TODO: To continue to support Ubuntu Hardy and Debian Lenny, we'll
2726           need to
2727           start pulling in backports of postgresql-8.4.
2728
2729 2010-08-13  senator
2730
2731         * merge seials-integration [sic] branch into trunk
2732           
2733           Dan Wells has provided tremendous efforts in developing a user
2734           interface
2735           and middle-layer logic for controlling serials. His work builds
2736           on the
2737           serial schema hashed out earlier in the year, also with his heavy
2738           involvement,
2739           and it provides ways to manage subscriptions, distribution,
2740           prediction,
2741           receiving and more. Although this code is but a beginning, much
2742           of it
2743           is functional today.
2744           
2745           This commit brings Dan's work into trunk. Dan has provided some
2746           release
2747           notes here:
2748           http://www.open-ils.org/dokuwiki/doku.php?id=acq:serials:release_notes:initial_trunk_merge
2749
2750 2010-08-14  scottmk
2751
2752         * Pedantic change for const-correctness: changed three calls to
2753           jsonObjectGetKey() to call jsonObjectGetKeyConst() instead.
2754           
2755           M Open-ILS/src/c-apps/oils_utils.c
2756
2757 2010-08-15  scottmk
2758
2759         * Pedantic change for const-correctness: replaced a call to
2760           jsonObjectGetKey() with a call to jsonObjectGetKeyConst().
2761           
2762           M Open-ILS/src/c-apps/oils_auth.c
2763
2764         * Pedantic change for const-correctness: replaced two calls to
2765           jsonObjectGetKey() with calls to jsonObjectGetKeyConst().
2766           
2767           M Open-ILS/src/c-apps/test_json_query.c
2768
2769         * Pedantic changes for const-correctness:
2770           
2771           1. Add the const qualifier to most of the parameters of SELECT().
2772           
2773           2. In almost all cases: replace calls to jsonObjectGetKey() with
2774           calls to jsonObjectGetKeyConst(). A couple of calls remain that
2775           would be more trouble to replace than they're likely to be worth.
2776           
2777           M Open-ILS/src/c-apps/oils_sql.c
2778
2779 2010-08-16  phasefx
2780
2781         * Disable Replace Barcode button for new patrons, and disable the
2782           barcode field for existing patrons. If Replace Barcode is
2783           activated, then enable the barcode field, give it focus, and
2784           disable the Replace Barcode button.
2785
2786         * tsbere pointed out this typo
2787
2788         * redundant refresh() can cause duplicate rows in list. Also, perm
2789           failure is an "expected" error here, so we can skip the skull and
2790           crossbones if folks without the permission cancel the Void All
2791           Billings action
2792
2793 2010-08-16  atz
2794
2795         * 0372 - acq.edi_message.vendacct
2796           
2797           Needed for some but not all vendors (separate from SAN).
2798
2799 2010-08-16  phasefx
2800
2801         * forwardport of 17216, org hiding depth in opac
2802
2803         * ui.circ.suppress_checkin_popups disables dialog prompts during
2804           check-in, but in the case print slip dialogs, it should still
2805           print the slips if the Auto-Print Hold and Transit Slips checkbox
2806           is toggled on (the action is still occuring). However, only the
2807           dedicated Check-In interface had such a checkbox, and if you were
2808           to check-in from Item Status or Items Out with that org unit
2809           setting active, you'd have no option to print any slips
2810           associated with the check-in. This fixes all that
2811
2812 2010-08-16  erickson
2813
2814         * patch from Ben Ostrowsky to help clarify the CREATE_MARC and
2815           IMPORT_MARC permissions descriptions
2816
2817 2010-08-17  erickson
2818
2819         * libbusiness-creditcard-perl is installed with DEBS. removing from
2820           squeeze-specific debs. make sure we install the
2821           EXTRA_DEBS_SQUEEZE as part of install_extra_debs_squeeze
2822
2823 2010-08-17  dbs
2824
2825         * Fix typo in i18n Makefile that afflicted install
2826
2827         * Move to CSS-based styling of validated vs. unvalidated fields
2828           
2829           This sets the stage for differentiating between validated fields
2830           that
2831           match authority records, and validated fields with a controlling
2832           $0
2833           subfield that match an authority record. This also gives sites a
2834           bit
2835           of an easier entry point to customize their MARC editor - say,
2836           for example,
2837           to support accessibility requirements if red vs. black doesn't
2838           satisfy
2839           the needs of those who are colour-blind.
2840
2841         * Tell developers that they need to install Dojo
2842
2843 2010-08-18  dbs
2844
2845         * Create indexes on some Vandelay tables to speed up retrieval and
2846           delete operations
2847
2848 2010-08-18  phasefx
2849
2850         * thinko here was throwing off the tallies for checked_out.count
2851
2852 2010-08-18  atz
2853
2854         * Descriptive notes in interface
2855
2856         * Fix closing </tr> tags
2857
2858 2010-08-18  dbs
2859
2860         * Fedora packages perl-MARC-Record at 2.0.0, but 2.0.1 is required
2861
2862 2010-08-18  phasefx
2863
2864         * some defensive coding. TODO: disable actions in Holds list
2865           interfaces that affects items when the selected holds have no
2866           Current Copy
2867
2868 2010-08-18  dbs
2869
2870         * Give authority records an XML-valid XML formats list
2871           
2872           Still need to trim the actual list of formats for authority
2873           records,
2874           as marcxml-full and marcxml-uris get listed, and those do not
2875           work
2876           or make sense for authority records.
2877
2878 2010-08-18  miker
2879
2880         * so, some datasets have records with multiple 245a subfields.
2881           yeah, really.
2882
2883         * so, some datasets have records with multiple 245a subfields.
2884           yeah, really.
2885
2886 2010-08-18  atz
2887
2888         * Fixup ctx.page_title and script type declarations
2889           
2890           Some had ctc.page_title, another had page_titel, but most didn't
2891           have any.
2892
2893 2010-08-18  dbs
2894
2895         * Only Debian Squeeze currently packages MARC::Record > 2.0.1
2896
2897 2010-08-18  erickson
2898
2899         * provide an explicit import() sub to collect the boostrap config
2900           name at import. force child_init to run (once) if not run by
2901           Apache
2902
2903         * money_open_user_summary may not exist if the user has no
2904           transactions to summarize. protect against null summary object
2905
2906 2010-08-19  dbs
2907
2908         * Add basic authority browse/edit/delete interface
2909           
2910           http://localhost/eg/cat/authority/list should get you where you
2911           need to be
2912           
2913           The paging is comical, the JS should probably be split out from
2914           the
2915           declarative markup, the interface needs i18n, the UI needs to
2916           become
2917           usable - but at least we have exposed some functionality for
2918           working
2919           with authority records now.
2920           
2921           Ideally this becomes a widget that we can just embed into other
2922           interfaces to maintain context (which suggests using openils.cgi
2923           to seed the initial values of the widget).
2924           
2925           Note that the delete function works - it sets the deleted flag
2926           for
2927           an are to "true" - but the underlying authorities browse
2928           interface
2929           currently doesn't care about such niceties and always returns
2930           deleted
2931           records along with undeleted records. So that might be the next
2932           stop.
2933
2934         * Forgot to set the open-ils.pcrud controller for are in r17255
2935           
2936           And making the new perm section tab-consistent while I'm at it
2937
2938         * Don't return deleted authority records in a browse list
2939
2940         * Don't show deleted authority records in startwith browse, either
2941           
2942           Also restore the >= operator that was stomped in r17257
2943
2944         * Fix some defects in the first iteration of the authority
2945           edit/delete interface
2946           
2947           * Ensure that the correct ID is assigned to the edit/delete
2948           request
2949           * Prevent caching of results so that when a record is deleted, we
2950           don't continue to see it
2951
2952         * Give the authority list interface a place on the staff client
2953           Cataloging menu
2954           
2955           The interface itself still needs usability love, but exposing
2956           basic edit/delete
2957           functionality for authority records should give authoritarians
2958           some level of
2959           happiness.
2960
2961 2010-08-19  erickson
2962
2963         * downgraded a debug log message from error() to debug()
2964
2965         * added clear_marc to po li retrieval to cut down network; mild
2966           code cleanup
2967
2968         * automatically create lineitem assets (i.e. load bibs and items)
2969           during po activation when necessary since activation requires it;
2970           only do this during non-dry-run calls
2971
2972         * for consistency, use same 'icons' to indicate PO and PL. don't
2973           show PO/PL links when no such object is linked to the lineitem
2974
2975         * added missing closing td
2976
2977 2010-08-19  miker
2978
2979         * Add support to BibTemplate for arbitrary XML chunks (DOM node)
2980           via the "xml" constructure param, which disables automatic
2981           format-specific fetching.
2982           
2983           Add a new module, openils.FeedTemplate which, given:
2984           
2985           * an xml feed (URI or pre-collected DOM node)
2986           * a dojo.query to pull out items from the feed
2987           * the DOM node of a template to clone for each item
2988           * the target DOM node into which it should shove the item-filled
2989           template instances
2990           
2991           will render a feed of arbitrary xml for you.
2992
2993 2010-08-19  dbs
2994
2995         * Further enhancements to the authority list interface
2996           
2997           * Offer Next / Previous buttons instead of forcing the number
2998           spinner
2999           * Submit searches onBlur of the search box instead of having to
3000           click Submit
3001           * Accept CGI params so we can kick off a search from other
3002           interfaces
3003           * Factor out the displayRecords() code so we can attach other
3004           events to it
3005
3006 2010-08-19  senator
3007
3008         * Acq: make view/place orders open a new tab w/ xul browser wrapped
3009           therearound
3010
3011         * Serials: an alternative batch receiving interface, to support
3012           certain
3013           heavy-barcoding workflows.
3014           
3015           Still needs some things hooked up in the middle layer to create
3016           serial.units.
3017           Still needs some configurability. Access from "Actions for this
3018           Record" in
3019           the staff-client-wrapped OPAC for a record with subscriptions and
3020           items
3021           attached.
3022
3023 2010-08-19  erickson
3024
3025         * added util function for printing an html string; use new func for
3026           PO printing; TODO, use new func in selfcheck code to reduce
3027           duplication
3028
3029         * circ_modifier codes could be defined, but non-true (i.e. '0').
3030           test for defined instead of truthiness when analyzing LID circ
3031           modifiers. repaired (invisible) bug that unnecessarily lead to
3032           using circ mod objects instead of codes, depending on context
3033
3034 2010-08-19  dbs
3035
3036         * Class::DBI::Frozen::301 needs to be forcefully installed on
3037           Debian Squeeze
3038
3039 2010-08-19  erickson
3040
3041         * move PO status to top of page for clarity
3042
3043         * submit unified search query on Enter when focused on value widget
3044
3045 2010-08-20  dbs
3046
3047         * Give the Authority List interface the ability to merge records...
3048           almost
3049           
3050           Separate the interface into separate JavaScript vs markup files
3051           
3052           To-do:
3053           * Provide a middle layer method that accepts the array of records
3054           to merge and merges them
3055           * Teach the mergeRecords() to call that method when it exists
3056           * Provide a way of reordering the records or otherwise flagging
3057           which record should be the lead
3058           * Prevent the same record from being added to the merge slushbox
3059           twice
3060
3061         * Add a speedbump (confirmation dialog) when deleting authority
3062           records
3063
3064         * Add a speedbump to the MFHD delete workflow
3065
3066         * When initiating a new authority search, reset the pager to zero
3067           to avoid surprises
3068
3069         * Hitting ENTER in the term search box fires off a search now, as
3070           you would expect
3071
3072 2010-08-20  gmc
3073
3074         * bug 620899: fix broken test for oils_web.xml
3075           
3076           Patch from Rick Scott <rick@shadowspar.dyndns.org>
3077           
3078           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3079
3080 2010-08-20  dbs
3081
3082         * Add the authority record merge middle-layer API
3083           (open-ils.cat.authority.records.merge)
3084           
3085           Also add a pertinent permission (MERGE_AUTH_RECORDS)
3086
3087         * Hook up the authority management interface to the middle layer
3088           
3089           For now, uses the first record in the list as the master; we
3090           either
3091           need to give users the ability to select the master record at
3092           merge
3093           time, or to select it prior to clicking "Merge"
3094
3095 2010-08-20  erickson
3096
3097         * repair faulty lineitem detachment from invoices
3098
3099         * propagate estimated price to created copy as copy price (aka list
3100           price or replacement price); propagate invoiced amount to created
3101           copy as copy cost (aka library cost); caveats and consderations
3102           noted in the code.
3103
3104         * until distrib formula skip_count is used (and possibly even
3105           then), let's hide it from the setup UI
3106
3107         * during LI creation, adopt the provider of the PO if linked to a
3108           PO (and no provider was selected). repair event description
3109           copy/paste error
3110
3111 2010-08-20  dbs
3112
3113         * Apply a little bit of style to group form elements together in
3114           confined spaces
3115
3116 2010-08-20  phasefx
3117
3118         * eliminate false positives for ContentCafe features for a given
3119           bib
3120
3121 2010-08-20  erickson
3122
3123         * added support for a SIP config option that forces the server to
3124           return the no_i18n version of the patron profile group name from
3125           the 'ptype' sub (aka PC field in patron-info requests); added
3126           config options getter sub; cleaned up some string concats to
3127           prevent warnings
3128
3129 2010-08-20  dbs
3130
3131         * Add an API for counting the number of bibs linked to each
3132           authority record in the input list
3133           
3134           srfsh# request open-ils.cat
3135           open-ils.cat.authority.records.count_linked_bibs [1,2,3,4,5,6]
3136           
3137           Received Data: [
3138           {
3139           "bibs":1,
3140           "authority":1
3141           },
3142           {
3143           "bibs":1,
3144           "authority":2
3145           },
3146           {
3147           "bibs":2,
3148           "authority":3
3149           }
3150           ]
3151
3152 2010-08-20  senator
3153
3154         * Booking: more progress on the forward-port from rel_1_6
3155           
3156           This completes the merging of changes from r15878 except for
3157           those to
3158           Circulate.pm, which are more involved and call for more
3159           untangling.
3160           
3161           More to come soon.
3162
3163 2010-08-20  erickson
3164
3165         * added internal_id handler
3166           
3167           in anticipation of possible sip extension for returning patron ID
3168
3169         * added sample SIP config for patron_type_uses_code option
3170
3171         * re-tab to use tabs for consistency with rest of file; for now,
3172           add embedded vim command to settle the issue
3173
3174 2010-08-20  atz
3175
3176         * Add type="text/javascript" to <script> tags where needed.
3177           
3178           Probably just a formality.
3179
3180         * Allow STAFF_CLIENT_BUILD_ID to be passed in or set in ENV
3181           
3182           Deconflict actions for STAFF_CLIENT_BUILD_ID='current'. Build
3183           will
3184           always end up in datestamped directory, but a symlink will be
3185           added
3186           to it w/ the build ID string. That should keep everybody happy.
3187
3188 2010-08-20  senator
3189
3190         * Booking: finish the forward-port from rel_1_6
3191           
3192           This /should/ complete the forward port of booking from the
3193           rel_1_6 branch,
3194           which means that booking in trunk should work just how it does in
3195           the latest
3196           1.6.1.* releases.
3197           
3198           Most of the changes in this commit were to Circ/Circulate.pm, and
3199           cursory
3200           tests don't indicate any problems in the circulation logic
3201           overall, but the
3202           lay of the land there is quite different now in trunk than it was
3203           when Booking
3204           was initially developed, so I'd be somewhat wary for a little
3205           while.
3206           
3207           Going forward, trunk can accept improvements/bug fixes/etc for
3208           booking, and
3209           those changes can be *back*ported to branches in the usual way.
3210           Yay!
3211
3212 2010-08-20  gmc
3213
3214         * fix seed for item_barcode Vandelay bib attribute definition
3215           
3216           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3217
3218 2010-08-21  miker
3219
3220         * we need an index on LOWER(barcode) with r17018
3221
3222 2010-08-22  dbs
3223
3224         * Show the number of bibs linked to each authority record
3225           
3226           This information is important to cataloguers when deciding which
3227           records
3228           to merge or delete.
3229
3230 2010-08-23  miker
3231
3232         * Branching for the 2.0 series
3233
3234 2010-08-23  erickson
3235
3236         * perl 5.8 requires quotes around the version #
3237
3238 2010-08-23  gmc
3239
3240         * display copy counts correctly in staff search results
3241           
3242           Useless use of a constant in void context at
3243           .../OpenILS/Application/Search/Biblio.pm line 263.
3244           
3245           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3246
3247 2010-08-23  phasefx
3248
3249         * backport 17314: address deletion in patron editor
3250
3251 2010-08-23  atz
3252
3253         * Failure to open a file(handle) should be a fatal error.
3254           
3255           Otherwise we aren't getting any output anyway.
3256           
3257           Also a few formatting touchups for readability.
3258           
3259           TODO: use warnings! use Cronscript for standardized lockfile and
3260           options.
3261
3262         * Perltidy
3263           
3264           death to tabs
3265
3266         * Paste error
3267
3268 2010-08-24  atz
3269
3270         * 1-line fix for false 404 from sylvar
3271           
3272           solves "The requested URL
3273           /xul/rel_1_6_0_7/server/patron/ue.xhtml&clone=112879 was not
3274           found on this server."
3275
3276 2010-08-24  phasefx
3277
3278         * rip the join tab feature out of 2.0; it's still experimental and
3279           doesn't work well with the embedded OPAC
3280
3281 2010-08-25  miker
3282
3283         * update standing penalty query for blocked barcode list, trunk
3284           style!
3285
3286 2010-08-26  senator
3287
3288         * Backport r17346 to fix broken OPAC renewals
3289
3290 2010-08-26  miker
3291
3292         * examples of how to specify default preferred language and weight
3293           values
3294
3295 2010-08-27  phasefx
3296
3297         * backport 17361: support hiding of patron credit functionality. To
3298           do this, create a server/skin/global_custom.css file containing
3299           .hide_patron_credit { display: none }
3300
3301 2010-08-30  phasefx
3302
3303         * backport 17375-17379 for context sensitive (role-based) print
3304           settings
3305
3306         * backport 17335: circ.missing_pieces.copy_status org unit setting
3307           to support the Mark/Scan as Missing Pieces workflow
3308
3309 2010-08-30  senator
3310
3311         * Backport 17373, making "show item details" consistent within
3312           "items out" i'face
3313
3314 2010-08-30  phasefx
3315
3316         * backport 17383: show penalty/message notes on "Stop Sign Page"
3317
3318         * backport 17385: option to not include claims returned circs in
3319           summary sidebar and under-button tallies
3320
3321 2010-08-30  senator
3322
3323         * Backport r17387, basic copy template editor
3324
3325 2010-08-30  scottmk
3326
3327         * Backporting corrections to some org unit setting types.
3328           
3329           A
3330           Open-ILS/src/sql/Pg/upgrade/0378.data.fix_org_unit_setting_types.sql
3331           M Open-ILS/src/sql/Pg/950.data.seed-values.sql
3332
3333 2010-08-31  senator
3334
3335         * Backport r17405: fix start/end date selection problem with
3336           reservations
3337
3338 2010-08-31  phasefx
3339
3340         * fixes a bug when purging offline transactions after an Export
3341
3342         * printable_output() support in util.browser had stopped working,
3343           and this fixes that. If an interface embedded in util.browser has
3344           a printable_output() function, the text output from that function
3345           should be printed, instead of a direct print attempt against the
3346           content window
3347
3348 2010-09-01  miker
3349
3350         * backport r17396 from trunk: Allow the OPAC to autoload IDL
3351           classes instead of either pulling in a long class list and
3352           evaluating them all, or loading a .5MB+ xml file and parsing the
3353           whole thing. 40% speedup in simple tests where cache is bypassed.
3354
3355         * backport r17419 from trunk: added explicit IDL class loading for
3356           cbreb, cbrebi, mvr, and ahr
3357
3358 2010-09-01  senator
3359
3360         * Backport r17364 from trunk: serial batch receive improvements
3361
3362         * Backport r17428 from trunk: serial batch receive improvements (w/
3363           call number)
3364
3365         * Backport r17431 from trunk, checkbox to en/disable batch receive
3366           w/ units
3367
3368 2010-09-02  dbs
3369
3370         * Backport biblio source enhancements from trunk:
3371           
3372           * Make biblio source selection in Vandelay set the source for
3373           imported
3374           bib records.
3375           
3376           * Place a biblio source editor widget on the MARC Editor when
3377           invoked
3378           with a biblio record that already exists in the database
3379           ("rtype": "bre"
3380           with a specific ID).
3381
3382         * Backport spine label editing and printing enhancements from trunk
3383           
3384           * Automatically add prefix and/or suffix to a spine label if set
3385           in the copy locations editor
3386           
3387           * Set default font size, family, and weight along with label
3388           height, width,
3389           and left margin for each library via library settings editor.
3390           
3391           * Navigate up and down using cursor keys and insert/delete lines
3392           with
3393           the insert/delete keys.
3394           
3395           * Provide some basic LC formatting for line wrapping.
3396           
3397           * Use different print strategies depending on whether we're using
3398           xulrunner 1.9.0 or 1.9.2.
3399
3400         * UI portions of spine label editing enhancements listed in r17437
3401           
3402           Also include the IDL for the new fields on asset.copy_location.
3403           Oops.
3404
3405         * Backport r17343 from trunk: Add explicit identification of the
3406           master authority record when merging
3407           
3408           We now generate a table with the first cell containing either
3409           "Master"
3410           (indicating the record into which the other records will be
3411           merged) and
3412           or "Target" (indicating that the record will be merged into the
3413           master.
3414           
3415           This also adds a horizontal rule to delineate between the form
3416           buttons
3417           at the top, and adds borders to provide more clarity between the
3418           mergebox
3419           contents.
3420
3421         * Backport rtype parameters for invoking MARC editor
3422           
3423           This will result in no different behaviour than before,
3424           but adding the rtype parameter won't hurt, either.
3425
3426 2010-09-02  phasefx
3427
3428         * backport 17441: stop the chilifresh undefined errors in craftsman
3429
3430 2010-09-02  senator
3431
3432         * Backport r17447: kill CAPTURE_RESERVATION
3433
3434 2010-09-02  phasefx
3435
3436         * fix the problem where login does not work immediately after
3437           registering a workstation
3438
3439 2010-09-02  erickson
3440
3441         * back-porting: conify UIs for circ/hold-related config.rule_
3442           tables
3443
3444         * back-porting: added support for configuring redirect depth, skin,
3445           and locale during IP-based org unit redirection; w/ sample config
3446
3447         * back-porting: added support for returning hold shelf expire time
3448           (CM field) in item info response when an item has been captured
3449           for a hold. value is populated if item is on holds shelf or in
3450           transit to holds shelf
3451
3452         * back-porting: 17355 use openils.Util.printHtmlString for invoice
3453           printing; added progress dialog while wiating for invoices to
3454           arrive
3455
3456         * back-porting: 17389 => show lineitem ID for each lineitem in
3457           lineitem table (po/pl) and general lineitem summary blob
3458           (invoicing)
3459
3460         * back-porting: 17390 => disallow self-check login w/ inactive
3461           barcode
3462
3463         * back-porting: r17391 17397 17398; pcrud/fieldmapper bug fixes;
3464           autogrid suppress edit fields option
3465
3466         * back-porting: 17399 17413 => optimized distrib formula management
3467           UI
3468
3469         * back-porting: 17400 17401 => support for overridable physical
3470           location in checkin and honoring current_location in SIP checkin
3471           code
3472
3473         * back-porting: 17416 17417 17418 => filtering-tree-select disable
3474           fields query w/ auto-widget pass-thru; disable non-user-group
3475           fields in patron editor
3476
3477         * back-porting: 17446 => display PO order (activation) date in PO
3478           page
3479
3480 2010-09-03  phasefx
3481
3482         * backport 17445, 17464: A/T template based full pull list printing
3483           for holds
3484
3485         * up the default pull list limit from 50 to 100
3486
3487 2010-09-03  erickson
3488
3489         * back-port: 17467 => users with no transaction history will have
3490           no xact summary; protect
3491
3492 2010-09-03  miker
3493
3494         * backporting supercat improvements from r17469 and r17470
3495
3496 2010-09-03  senator
3497
3498         * Backport r17472 from trunk, serials pattern code wizard
3499
3500 2010-09-03  gmc
3501
3502         * allow updates of permission.perm_list.id to cascade
3503           
3504           Doing this to make it possible to reshuffle permission IDs
3505           for upgrades to 2.0.x
3506           
3507           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3508
3509 2010-09-03  erickson
3510
3511         * repaired thinko in hold targeting org-unit max-loops check
3512
3513         * back-porting: 17480 => patron address copy on clone instead of
3514           link
3515
3516 2010-09-03  gmc
3517
3518         * restrict deletion of perm_lists in use
3519           
3520           Per suggestion by Mike Rylander; prevents overzealous
3521           administrator from removing necessary permisions that
3522           are in use.
3523           
3524           TODO: UI to make it clear when that happens
3525           
3526           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3527
3528         * give default OUs separate addresses
3529           
3530           Per suggestion from Anoop Atre to avoid a new user
3531           changing one OU address in a new database and wondering
3532           why all of the OU addresses were changed.
3533           
3534           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3535
3536 2010-09-03  miker
3537
3538         * backporting r17476, r17477 and r17486 from trunk -- MARC Dojo
3539           module improvements
3540
3541 2010-09-03  erickson
3542
3543         * event code may be 0 (SUCCESS) == false in SIP checkin, check
3544           defined instead
3545
3546 2010-09-03  senator
3547
3548         * Backport r17491 from trunk: fix timestamps in AutoFieldWidget
3549
3550 2010-09-07  scottmk
3551
3552         * Consolidated upgrade script for 1.6 -> 2.0.
3553           
3554           Things still missing:
3555           
3556           1. Inserts and other changes to permission.perm_list and
3557           permission.grp_perm_map. These can't be derived in a simple way
3558           from
3559           the individual upgrade scripts, and will have to be hand-crafted
3560           to
3561           fit what's already in the seed data.
3562           
3563           2. Operations on optional schemas need to be moved out of the
3564           transaction so that the script will work in a database that
3565           doesn't have them.
3566
3567 2010-09-07  erickson
3568
3569         * make lineitem price updates synchronous to prevent race condition
3570           between onChange of price set completion and PO activation
3571
3572 2010-09-07  phasefx
3573
3574         * Only modify msg when needed or we'll get spurious 'stop sign'
3575           pages
3576
3577 2010-09-07  scottmk
3578
3579         * Move some operations out of the transaction so that they can
3580           fail without killing the script. The affected objects do
3581           not necessarily exist -- i.e. the reporter schema, the
3582           extend_reporter schema, and the
3583           auditor.action_hold_request_history
3584           table.
3585
3586         * The reporter and extend_reporter schemas are no longer optional.
3587           So changes to them go back into the transaction.
3588           
3589           ALTERs to auditor.action_hold_request_history stay outside of the
3590           transaction, at least for now, until the status of that table
3591           is clarified.
3592
3593 2010-09-08  phasefx
3594
3595         * backport 17508, 17509, for better user stat cat lookups and
3596           exposing such stat cats in hold slips
3597
3598 2010-09-08  erickson
3599
3600         * back-porting: 17502 17503 => cache the SIP login session to
3601           determine 'where' a transaction is occuring in case the caller
3602           does not indicate the location; compare hold pickup lib to
3603           physical location to determine alert type; small logging and
3604           format tweaks
3605
3606 2010-09-08  phasefx
3607
3608         * backport 17506, 17507 for saner navigation in Holdings
3609           Maintenance
3610
3611 2010-09-08  miker
3612
3613         * backporting r17514 from trunk: A simple "vital stats" collector
3614           method returning information about a user for display in the OPAC
3615           or Staff Client.
3616
3617 2010-09-08  dbs
3618
3619         * Backport r17518 from trunk: install Library::CallNumber::LC from
3620           CPAN
3621           
3622           We briefly had to grab Library::CallNumber::LC from the SVN repo,
3623           but
3624           that broke on systems without subversion installed (argh).
3625           Thankfully
3626           the maintainer moved Library::CallNumber::LC to CPAN so our job
3627           becomes
3628           routine.
3629
3630         * Backport r17520: Make Class::DBI::Frozen::301 a common forced
3631           module for all distros; genericize RHEL/CentOS
3632
3633 2010-09-08  phasefx
3634
3635         * Backport 17516, 17517, 17522, 17523: Allows us to create an
3636           /openils/var/web/css/skin/default/register_custom.css file
3637           containing local CSS for styling the patron editor. Example:
3638           
3639           TR[fmfield=ident_type] { display: none; } /* be sure to set the
3640           ui.patron.default_ident_type setting */
3641           TR[fmfield=ident_value2] { border: solid thick red; font-size:
3642           x-large; }
3643           TR[fmfield=barred] { display: none; }
3644           TR[fmfield=country] { display: none; } /* be sure to set the
3645           ui.patron.default_country setting */
3646           TR[fmfield=master_account] { display: none; }
3647           TR[fmfield=alert_message] { display: none; }
3648           TR[fmfield=ident_value] { z-index: -1; }
3649           TR[stat_cat_id='1'] { border: solid thick red; font-size:
3650           x-large; }
3651
3652 2010-09-08  senator
3653
3654         * Backport r17525 from trunk: summary generation at receive time
3655
3656 2010-09-09  dbs
3657
3658         * Make OpenLibrary the default added content provider
3659           
3660           OpenLibrary is a better choice than Amazon for added content out
3661           of the box
3662           because:
3663           
3664           1) The OpenLibrary added content handler provides cover images +
3665           tables of content, whereas the Amazon added content handler only
3666           provides cover images.
3667           
3668           2) The terms of use for OpenLibrary content are much friendlier
3669           than
3670           the Amazon "Product Advertising API".
3671           
3672           We discussed this back in mid-2009:
3673           http://markmail.org/message/csx2hl6aleznapga
3674
3675 2010-09-09  miker
3676
3677         * Merging r17527-17529 from trunk: Backend issuance-level hold
3678           logic
3679
3680 2010-09-09  dbs
3681
3682         * Address typos and grammar in seed data
3683           
3684           TODO: Consistently wrap translatable content in
3685           oils_i18n_gettext() calls
3686
3687 2010-09-09  erickson
3688
3689         * back-port: 17535 => for consistency, use 'issuanceid' as the
3690           issuance ID param for holds possibility testing; removed some
3691           crusty, old hold create code
3692
3693 2010-09-09  senator
3694
3695         * Backport r17537 from trunk: serials pattern wizard bugfix
3696
3697 2010-09-09  erickson
3698
3699         * updated ils_version for 2-0 branch, updated comment on format
3700
3701 2010-09-09  miker
3702
3703         * Backport from trunk: With group billing calls we need a new index
3704
3705         * Backporting from trunk: should have had this index all along, but
3706           was less important until now where copy notes are used up front
3707
3708         * Backport from trunk: loop over users in a group, as the plan for
3709           usrgroup+mous is terrible
3710
3711 2010-09-09  senator
3712
3713         * Backport r17547 from trunk: overrideEditWidgets in AutoGrid
3714           improvement
3715
3716 2010-09-09  phasefx
3717
3718         * merge r17549 from trunk for brief bib summary bar
3719
3720         * merge r17550 from trunk for call number sorting in volume/item
3721           creator
3722
3723 2010-09-09  senator
3724
3725         * Backport r17555 from trunk, better autogrid overrideEditWidget
3726           value shoving
3727
3728 2010-09-09  phasefx
3729
3730         * merge r17557 from trunk for to prevent accidental address
3731           deletion attempt in patron editor
3732
3733 2010-09-09  erickson
3734
3735         * back-porting: 17553 17554 => support for viewing and editing
3736           existing issuance-level holds to the default opac skin; alternate
3737           issuance flesh call that only fleshes the subscription; used for
3738           public/opac display
3739
3740 2010-09-09  phasefx
3741
3742         * merge r17560 from trunk for tweaks to holds and hold details
3743           interfaces
3744
3745 2010-09-10  senator
3746
3747         * Backport r17563 from trunk: booking bugfix
3748
3749 2010-09-10  erickson
3750
3751         * back-porting: 17566 => added command line option for defining a
3752           stderr output log file for the SIP server
3753
3754 2010-09-10  phasefx
3755
3756         * merge r17576-r17580 from trunk for improved columns in Patron
3757           Search results list. Also fleshes some patron data sent to misc
3758           receipt templates
3759
3760         * merge r17582 from trunk for
3761           ui.patron.registration.require_address setting
3762
3763         * merge r17588-r17592 from trunk for patron refunds and misc tweaks
3764
3765 2010-09-10  senator
3766
3767         * Backport r17595 from trunk, nav buttons in view/place orders
3768
3769         * Backport r17597 from trunk, autogrid refresh
3770
3771         * Backport r17599 from trunk, refresh grid buttons
3772
3773 2010-09-11  miker
3774
3775         * Backporting 17856, 17587, 17593, 17601 and 17603 from trunk:
3776           mod_deflate support; improved and expanded dojo layers; support
3777           for limiting facet retrieval in IE to just the initially
3778           displayed set (IE is terrible with large data sets)
3779
3780 2010-09-12  senator
3781
3782         * Backport r17607 from trunk: serials predictions until end_date
3783
3784 2010-09-12  miker
3785
3786         * Backporting r17609 from trunk: add maxValuesPerFacet attr/param
3787
3788         * Backporting r17605 and r17606 from trunk: Method for retrieving
3789           received issuances attached to a bib, optionally scoped by
3790           location, holding type or item status, with paging and ordering
3791           support
3792
3793 2010-09-12  senator
3794
3795         * Backport r17612 from trunk: serials prediction for multiple dists
3796
3797         * Backport r17615 from trunk: serials quick-and-dirty admin
3798           interfaces
3799
3800 2010-09-12  phasefx
3801
3802         * merge r17614 from trunk for customizable circ modifier rendering
3803           in staff client
3804
3805         * merge r17617 from trunk for _custom.properties file overlays with
3806           messagecatalog
3807
3808 2010-09-12  senator
3809
3810         * Backport r17620 from trunk: serials opac method bugfix
3811
3812 2010-09-13  erickson
3813
3814         * back-port: 17622 => wrap custom props file reader in try/catch to
3815           prevent xhr complaining about missing file
3816
3817 2010-09-13  gmc
3818
3819         * make the other two k_* MARC templates usable by default
3820           
3821           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3822
3823 2010-09-13  erickson
3824
3825         * added declaration of facet cache limit var, which was likely
3826           missed during back-port
3827
3828 2010-09-13  miker
3829
3830         * Backport r17629 and r17630 from trunk: teach fielder to cache
3831           (off by default), with a default timeout of 5min; have fielder
3832           cache some frequently used data
3833
3834 2010-09-13  gmc
3835
3836         * fix retrieval of cat.default_classification_scheme
3837           
3838           Fixes bug where the cat.default_classification_scheme OU
3839           setting was effectively ignored in bib call # display
3840           in bib overlay and list of default call numbers during volume
3841           creation.
3842           
3843           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3844
3845 2010-09-13  dbs
3846
3847         * Merge r17574, r17575, r17584, r17585, r17628, r17639 from trunk
3848           to delete deprecated cgi-bin configuration interfaces
3849           
3850           The CGI interfaces have not been maintained; the interfaces
3851           available through
3852           the Admin -> Server Administration menu in the staff client are
3853           the recommended
3854           method for setting up new libraries in the organizational
3855           hierarchy,
3856           permissions, copy statuses, and circulation rules.
3857           
3858           Note that an adjustment to eg.conf is recommended to point to the
3859           offline.pl script, which is the only remaining CGI script in use;
3860           this
3861           should avoid conflicting Apache definitions for the /cgi-bin/
3862           alias.
3863           
3864           Most modern systems will install Class::DBI::Frozen::301 to avoid
3865           conflicts with incompatible Class::DBI packages. We need to teach
3866           offline.pl how to use Class::DBI::Frozen::301 if it is available.
3867           
3868           Note that we're using "use parent" instead of "use base" per the
3869           recommendation of "perldoc base"; accordingly, we're adding the
3870           system prerequisite for the parent pragma.
3871
3872 2010-09-14  miker
3873
3874         * Backport I18N protection for permission descriptions
3875
3876         * Backport from trunk: method for generating a set of compressed
3877           holdings statements
3878
3879         * Backport from trunk: slimpac cleanup
3880
3881         * Backport r17653: unbreak item count in result list of slimpac
3882
3883 2010-09-14  phasefx
3884
3885         * regexp for robust filename mangling
3886
3887 2010-09-14  erickson
3888
3889         * back-port: 17658 =>additional issuance holds supporting code; in
3890           this case, hold_to_mvr func which is used by the uber hold
3891           details method; commit also includes a small speed tweak for
3892           fetching details for copy holds (1 less cstore call)
3893
3894 2010-09-14  senator
3895
3896         * Backport r17657 from trunk: payflowpro support
3897
3898         * Backport r17661 from trunk, serials opac holding display
3899
3900 2010-09-14  dbs
3901
3902         * Backport r17644 from trunk: Integrate authority browse and
3903           creation support into the MARC editor
3904           
3905           This commit changes the contextual authority menu to be based on
3906           the authority browse interface; this should result in better
3907           matching behavior. The browse axis (author, subject, title,
3908           topic)
3909           is based on the context tag.
3910           
3911           The browse interface has enabled the contextual menu to grow
3912           "Next page" / "Previous page" menu items to enable cataloguers
3913           to wade through long lists of similar authority entries.
3914           
3915           The browse interface has also grown a "Create new authority
3916           record"
3917           menu with two submenu items:
3918           
3919           * "Create immediately" takes the field in context and creates a
3920           new authority
3921           record based on that field, with matching indicators and
3922           subfields.
3923           
3924           * "Create and edit..." displays the MARCXML for the authority
3925           record in
3926           a MARC editor window before saving the record to the database.
3927           
3928           TODO: Make the "Create..." contextual options add the $0 linking
3929           subfield
3930           to the newly controlled field.
3931           
3932           TODO: Address some of the flaky UI behaviour, such as having to
3933           right-click
3934           three times on an authority-controllable field to display the
3935           authority menu.
3936
3937 2010-09-15  gmc
3938
3939         * MARC tooltip updates
3940           
3941           * updated bibliographic tooltips; now current as of LC MARC21
3942           Bibliographic
3943           Update 11, including the RDA tags. Along the way, enhanced the
3944           bib tooltips to:
3945           * include definitions for embedded holdings tags (84X, 853-855,
3946           863-868, 876-878)
3947           * expand dropdown for nonfiling indicator values
3948           * added tooltip files for authority records and MFHDs
3949           * taught MARC editor how to choose the correct tooltip file
3950           
3951           Caveat: if you localize the authority and MFHD tooltips for a
3952           locale other than
3953           en-US, you must edit marcedit.js, either to take your translation
3954           into account
3955           or to make it smarter about checking for available translations
3956           of the tooltips.
3957           
3958           Signed-off-by: Galen Charlton <gmc@esilibrary.com
3959
3960         * backport EDI changes from trunk (r17669:17690,r17692)
3961           
3962           EDI work done by Joe Atzberger; highlights of the enhancements
3963           are:
3964           
3965           * ORDRSP processing improvements
3966           * overhaul of edi_fetcher
3967           * EDI test files
3968           * Beginning of modperl EDI message viewer
3969           
3970           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
3971
3972 2010-09-15  miker
3973
3974         * Backporting from trunk: A big pile of useful serial-schema
3975           indexes
3976
3977 2010-09-15  erickson
3978
3979         * back-port: 17699 => filter debits/allocs by fund in view fund UI
3980
3981 2010-09-15  miker
3982
3983         * Backporting r17702 from trunk: Require that the matchpoint
3984           is_renewal flag be respected if set
3985
3986 2010-09-15  scottmk
3987
3988         * 1. Revamp the contents of permission.perm_list:
3989           
3990           a) Renumber the permissions so that predefined permissions and
3991           non-predefined permissions are in separate ranges. That was
3992           always the intent but the intent has not always been followed.
3993           
3994           b) Add permissions that are referenced in the IDL but not
3995           defined in the database.
3996           
3997           c) Where the description is NULL, apply the code as a
3998           description;
3999           that's better than nothing.
4000           
4001           2. Incorporate miscellaneous recent changes from individual
4002           upgrade
4003           scripts.
4004
4005 2010-09-15  phasefx
4006
4007         * merge r17707-r17708 from trunk for batch call number updates in
4008           same UI as batch barcode updates
4009
4010 2010-09-15  scottmk
4011
4012         * Replace the seed data for permission.perm_list, using the values
4013           assigned for predefined permissions by the upgrade script from
4014           1.6.1 to 2.0.
4015           
4016           M Open-ILS/src/sql/Pg/950.data.seed-values.sql
4017
4018 2010-09-15  miker
4019
4020         * Backporting r17710 from trunk: Need to start the arrayref out
4021           right
4022
4023 2010-09-16  miker
4024
4025         * Backporting r17715 from trunk: Patch from Dan Wells to extend the
4026           serial schema a bit in pref for upcoming improvement to existing
4027           features
4028
4029         * Backport of r17718 from trunk: teach
4030           open-ils.storage.serial.issuance.ranged_tree about "global"
4031           issuances
4032
4033 2010-09-16  senator
4034
4035         * Backport IDL-chunking work for interfaces under web/templates, as
4036           well as
4037           AutoWidget/AutoFieldWidget improvements to deal with some cases
4038           of not having
4039           an IDL class preloaded.
4040
4041 2010-09-16  dbs
4042
4043         * Drop the arn_value / arn_source columns on authority.record_entry
4044           and create an index instead
4045           
4046           The authority record number (ARN) was problematic when trying to
4047           generate
4048           local authorities because the number had no correlation to the
4049           content of
4050           the authority heading. By creating an index on authority records
4051           based on
4052           their heading, thesaurus, and heading text, we can do a better
4053           job of
4054           controlling the actual content of the authority records.
4055           
4056           In a future release, we may convert this index to a unique index.
4057           2.0
4058           will give sites an opportunity to begin cleaning up their
4059           authorities
4060           by identifying duplicate and problematic records through the
4061           authority.normalize_heading(TEXT) database function.
4062
4063         * Backport r17723 from trunk: Add AutoIDL classes for Vandelay
4064           happiness
4065           
4066           Vandelay needs these class definitions for basic import
4067           operations.
4068           
4069           Ideally every templated page wouldn't need to load these, but
4070           this seems to be the best short-term solution.
4071
4072 2010-09-16  scottmk
4073
4074         * Incorporate several late-breaking upgrades into the upgrade
4075           script.
4076           
4077           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4078
4079 2010-09-16  miker
4080
4081         * A couple useful, missing backports for the IDL
4082
4083         * Missed some holds-related OU setting types from
4084           0077.data.holds_local_avail_and_override.sql in the seed data
4085
4086         * This needs to be the same in 2.0 as trunk, and the changes to
4087           this script need to make it into the 1.6-2.0 upgrade script as
4088           well, if not there already
4089
4090         * no need to ignore this improvement, which makes browser-focused
4091           dev simpler
4092
4093         * typo backport
4094
4095         * This needs to be the same in 2.0 as trunk, and the changes to
4096           this script need to make it into the 1.6-2.0 upgrade script as
4097           well, if not there already
4098
4099 2010-09-16  scottmk
4100
4101         * Make acq.provider_contact.name NOT NULL.
4102           
4103           This change corrects the effect of a typo (NULL NULL instead of
4104           NOT NULL).
4105           
4106           M Open-ILS/src/sql/Pg/200.schema.acq.sql
4107           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4108           A
4109           Open-ILS/src/sql/Pg/upgrade/0404.schema.acq-provider-contact-null-null.sql
4110
4111 2010-09-16  senator
4112
4113         * Backport r17736 from trunk: more IDL chunking-related fixes
4114
4115         * Backport r17738 from trunk: more IDL chunking fixing
4116
4117         * Backport r17735 from trunk, opac holds issuances expandy
4118
4119         * Backport r17717 from trunk
4120
4121 2010-09-16  gmc
4122
4123         * remove internal limit with querying on facets
4124           
4125           This allows non-selective facets such a material type facet
4126           to bring in correct results - the tradeoff is that queries
4127           that involve facets will run slower.
4128           
4129           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4130
4131 2010-09-16  miker
4132
4133         * .pot files generated during the alpha2 build process
4134
4135 2010-09-16  scottmk
4136
4137         * Add column usr_summary to actor.stat_cat. (This column was added
4138           before we started maintaining individual update scripts.)
4139           
4140           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4141
4142 2010-09-16  senator
4143
4144         * Backport r17750 from trunk, IDL chunks + copy template UI fix
4145
4146 2010-09-17  senator
4147
4148         * Backport r17752 from trunk
4149
4150 2010-09-17  miker
4151
4152         * Backport r17754 from trunk: Only show "issues held" if there is
4153           something to show
4154
4155         * Backport r17757 from trunk: OU locale lookup needs a bit more
4156           work, it needs to pass a language instead of an xx-YY locale
4157           string
4158
4159         * Backport r17759 from trunk: normalize all locales used in
4160           locale-lang mapping for QueryParser
4161
4162 2010-09-17  scottmk
4163
4164         * -- Dropping a foreign key (which has already been dropped from
4165           the
4166           -- base installation scripts).
4167           
4168           M Open-ILS/src/sql/Pg/002.schema.config.sql
4169           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4170           A
4171           Open-ILS/src/sql/Pg/upgrade/0405.schema.acq-hold-copy-map-drop-fkey.sql
4172
4173 2010-09-17  senator
4174
4175         * Backport r17763 from trunk
4176
4177 2010-09-17  erickson
4178
4179         * back-port: 17765 => protect against fetching lineitem details by
4180           ref instead of ID
4181
4182 2010-09-17  senator
4183
4184         * Backport r17767 from trunk, vandelay Edit Attributes fix
4185
4186 2010-09-17  dbs
4187
4188         * Backport r17769 from trunk: use HTTP URLs to download prereqs to
4189           avoid protocol-blocking annoyances
4190
4191 2010-09-17  erickson
4192
4193         * back-port: 17772 => vandelay import list report all option
4194
4195 2010-09-17  scottmk
4196
4197         * Restore two foreign keys that were somehow inadvertently
4198           dropped, probably by some funky interaction with inheritance.
4199           
4200           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4201
4202 2010-09-17  dbs
4203
4204         * Backport r17776 from trunk: Revert attempt to prevent encoding
4205           corruption that was causing encoding corruption
4206           
4207           LDR/09 was never showing up as 'a' where it was being tested, and
4208           adding the
4209           'a' was preventing a reconversion to UTF8. It somewhat looks like
4210           the UTF8
4211           MARCXML input gets converted to MARC8 as part of MARC::Batch's
4212           magic, then
4213           gets converted back to UTF8 by MARC::File::XML::as_xml_record().
4214           Seems like
4215           this would mean potential performance / encoding problems but it
4216           works, which
4217           is better than what my meddlesome tests were doing.
4218
4219 2010-09-17  senator
4220
4221         * Backport r17778, IDL chunking fixes
4222
4223 2010-09-17  phasefx
4224
4225         * get rid of the disabled-look for the Actions for this Record menu
4226           label
4227
4228         * merge r17782 from trunk to fix progressbar and list refresh after
4229           modifying/archiving existing message/penalty in Patron Messages
4230           UI
4231
4232 2010-09-17  gmc
4233
4234         * enable translation of location name in copy location/status
4235           summary
4236           
4237           Implementation is iffy because it exposes oils_i18n_xlate outside
4238           of cstore.
4239           
4240           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4241
4242 2010-09-17  senator
4243
4244         * Backport r17786, acq po activation failure improvements
4245
4246 2010-09-17  erickson
4247
4248         * load the right class in the on-the-fly IDL loader call
4249
4250         * need cit and actsc for patron reg
4251
4252 2010-09-17  gmc
4253
4254         * added format.po.jedi hook to initial seed
4255           
4256           Signed-off-By: Galen Charlton <gmc@esilibrary.com>
4257
4258 2010-09-18  erickson
4259
4260         * more user stat cat classes
4261
4262 2010-09-18  senator
4263
4264         * Backport r17796 from trunk: serials batch receive improvements
4265
4266 2010-09-18  gmc
4267
4268         * silly me, acqpo.activate is the new format.po.jedi
4269           
4270           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4271
4272 2010-09-18  miker
4273
4274         * Backport r17800 from trunk: Offer a global flag to cause the
4275           testing of hold matrix rules against the receiving user instead
4276           of the requestor, and set the initial value to enabled as this
4277           seems to be the less surprising value for current users of in-db
4278           hold logic
4279
4280         * Patch from James Fournie of SITKA:
4281           
4282           This is a patch that makes the toolbar work with the little
4283           jellybean
4284           button on Macs. It's that little lozenge-like button on the top
4285           right of Mac programs that shows/hides the toolbar. With this
4286           patch
4287           it will show/hide the toolbar "button bar", making it behave more
4288           like
4289           most Mac programs. It shouldn't have any affect on other
4290           platforms.
4291
4292 2010-09-18  dbs
4293
4294         * Backport r17802 and r17803 to provide a human-visible RSS feed in
4295           the dynamic OPAC
4296           
4297           Despite having RSS and Atom feeds at the core since version 1.0,
4298           it can be
4299           hard for humans to access those feeds. This will dynamically add
4300           a feed to
4301           the dynamic OPAC so that the RSS feed indicator will light up.
4302           Google Reader,
4303           look out!
4304
4305 2010-09-18  scottmk
4306
4307         * Remove UNIQUE NOT NULL from config.index_normalizer.description.
4308           
4309           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4310
4311 2010-09-18  erickson
4312
4313         * back-port: 17810 => added cnal to autoidl pile
4314
4315         * in acq copies display, default to ws lib as recipient lib
4316
4317 2010-09-19  phasefx
4318
4319         * Make sure offline interfaces correctly load printer settings
4320           outside of logins. Some refactoring
4321
4322 2010-09-19  erickson
4323
4324         * back-port: 17817 => for large sets of holds, usually around 10 or
4325           more, the holds display takes a little too long. instead of
4326           collecting them all and sorting them by queue position, slot them
4327           into the display table (by queue position) as they arrive
4328
4329 2010-09-19  phasefx
4330
4331         * remove redundant invocation of custom.js, and tweak how menu.js
4332           loads it
4333
4334 2010-09-19  senator
4335
4336         * Backport r17821 from trunk: delay acq provider loading
4337
4338 2010-09-20  senator
4339
4340         * Backport r17823 from trunk: acq po and invoice interfaces
4341
4342         * Backport r17825 from trunk: changing "Picklist" to "Selection
4343           List"
4344
4345 2010-09-20  dbs
4346
4347         * Backport r17827 from trunk: Search for humans: AND and OR are
4348           more understandable than "&&" and "||"
4349           
4350           The operators && and || will not mean much to many people,
4351           whereas AND and
4352           OR have common meanings that will aid in understanding the
4353           advanced search
4354           interface.
4355
4356 2010-09-20  senator
4357
4358         * Backport r17829 from trunk: actions menu to ordinary select in li
4359           table
4360
4361         * Backport r17831 from trunk: holding code miniwizard
4362
4363 2010-09-20  gmc
4364
4365         * marc_add_ids - better failure recovery
4366           
4367           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4368
4369 2010-09-20  erickson
4370
4371         * back-port: 17836 => addd missing opac_visible col and labels to
4372           config.usr_setting_type
4373
4374 2010-09-20  phasefx
4375
4376         * merge r17838 from trunk, change to stat cat display in horizontal
4377           patron summary
4378
4379 2010-09-20  senator
4380
4381         * Backport r17840: misspelling fixing
4382
4383 2010-09-20  scottmk
4384
4385         * Resolving various discrepancies between an upgraded 2.0 database
4386           and a freshly installed one.
4387           
4388           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4389
4390 2010-09-20  erickson
4391
4392         * back-port: 17844 => added pgpt class to pre-load set
4393
4394 2010-09-20  miker
4395
4396         * Backport BibTemplate callback support from trunk
4397
4398 2010-09-20  senator
4399
4400         * Backport r17848 from trunk, sort of
4401           
4402           In rel_2_0, one of these permissions was already there, and the
4403           IDs are
4404           different, but this should be functionally equivalent.
4405
4406 2010-09-20  gmc
4407
4408         * add missing upgrade script for maintain_901() stored function
4409           
4410           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4411
4412 2010-09-20  senator
4413
4414         * Backport r17853 from trunk
4415
4416 2010-09-21  dbs
4417
4418         * Backport r17855 from trunk: Use verbose parameters for createdb
4419           
4420           Thomas Berezansky noticed that the README was using "createdb -t
4421           template0",
4422           which isn't a valid option. To avoid case problems and to be more
4423           apparent
4424           what these options mean, let's use the verbose parameters.
4425
4426         * Merge r17587 and r17588 from trunk to add $0 control subfields
4427           for newly controlled fields
4428           
4429           In the MARC editor, when editing a bibliographic record and
4430           right-clicking on
4431           a controllable subfield, the "Create new authority from this
4432           field" options
4433           now both add a $0 control subfield to the target bib field once
4434           the new
4435           auth record has successfully been created.
4436
4437         * Backport r17860 from trunk: Clean up description of ARN in
4438           O:A:Cat::Authority now that arn_value is gone
4439           
4440           A comment in the create_authority_record_from_bib_field() method
4441           stated that
4442           the ARN value needed to be unique across the database; that is no
4443           longer true
4444           as of r17722. Fix comment accordingly.
4445
4446 2010-09-21  gmc
4447
4448         * backport r17862 and r17863 from trunk
4449           
4450           Two new internal_flags to improve parallel bib ingest.
4451           
4452           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4453
4454 2010-09-21  scottmk
4455
4456         * Correct various discrepancies, especially in the auditor schema,
4457           between a freshly installed 2.0 database and an upgraded one.
4458           
4459           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4460
4461 2010-09-21  phasefx
4462
4463         * merge r17867 from trunk for HoldIsCancelled action_trigger
4464           validator
4465
4466         * merge r17869 from trunk for offline printer role
4467
4468 2010-09-21  scottmk
4469
4470         * Resolve some discrepancies in the auditor schema between a
4471           freshly installed
4472           database and an upgraded one.
4473           
4474           A
4475           Open-ILS/src/sql/Pg/upgrade/0413.schema.upgrade-auditor-tables.sql
4476
4477         * Don't update history tables to fill in new columns
4478           
4479           M
4480           Open-ILS/src/sql/Pg/upgrade/0413.schema.upgrade-auditor-tables.sql
4481
4482         * Don't make new auditor columns NOT NULL, or update them
4483           
4484           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4485
4486         * Replace some changes that had inadvertently been deleted
4487           
4488           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4489
4490 2010-09-22  phasefx
4491
4492         * merge r17879 from trunk to increase timeout for full pull list
4493           call
4494
4495         * handle null as a return result for an empty list
4496
4497 2010-09-22  dbs
4498
4499         * Forward port r17847: Make query parser a bit more careful when
4500           converting convenience classes to search classes
4501           
4502           Queries like "Heart disease: a global problem" were getting
4503           converted to series searches
4504           due to the trailing "se:" in the search terms. This change
4505           ensures that the convenience
4506           class is either at the start of the input or preceded by
4507           whitespace.
4508
4509 2010-09-22  scottmk
4510
4511         * In acq.fund_transfer: drop the NOT NULL constraint from dest_fund
4512           and
4513           dest_amount, in order to accommodate deallocations -- where we
4514           move
4515           money out of a fund without moving it into another fund.
4516           
4517           This change was applied via upgrade script # 0135, but apparently
4518           was
4519           never applied to the base installation script.
4520           
4521           M Open-ILS/src/sql/Pg/200.schema.acq.sql
4522
4523         * For action.circulation and action.aged_circulation: add indexes
4524           on the target_copy column.
4525           
4526           This change was made in upgrade script # 0017, but was apparently
4527           never applied to the base install script.
4528           
4529           M Open-ILS/src/sql/Pg/090.schema.action.sql
4530
4531         * Adding a trigger. Upgrade # 0364 created the trigger function but
4532           not
4533           the trigger itself. However the base install script
4534           040.schema.asset.sql
4535           creates both the function and the trigger.
4536           
4537           M Open-ILS/src/sql/Pg/002.schema.config.sql
4538           A
4539           Open-ILS/src/sql/Pg/upgrade/0414.schema.call-number-upd-ins-trigger.sql
4540
4541 2010-09-22  phasefx
4542
4543         * merge r17892 from trunk for holdings maintenance fix allowing
4544           volumes at top of org tree
4545
4546         * merge r17894 from trunk to fix bug in Item Status -> Alternate
4547           View for items with no circ modifier
4548
4549         * merge r17896-17897 from trunk for printing fixes
4550
4551 2010-09-23  senator
4552
4553         * Backport r17899 from trunk: fix a pull list sorting issue
4554
4555         * Backport r17901 from trunk: IDL chunking fixin'
4556
4557 2010-09-23  miker
4558
4559         * Backport r17903 from trunk: only flesh up to, but not including,
4560           the leaf for the group_field
4561
4562 2010-09-23  dbs
4563
4564         * Backport r17906: Remove most UI annoyances from authority
4565           management interface
4566           
4567           * term input field now gets the focus automatically
4568           * pressing enter in most places submits a new search
4569           * removed the onBlur event as that required users to click a
4570           second
4571           time to open the action menu
4572
4573         * Browse through 20 authority records at a time in management
4574           interface
4575           
4576           The default browse list is set to 9 elements, but we have enough
4577           vertical
4578           space to make use of more. Perhaps we should check the font size
4579           and
4580           viewport height and then adjust accordingly, but that would be
4581           Hard.
4582
4583         * Remove most annoying UI "feature" of the new authority browse
4584           list interface
4585           
4586           When I added the new authority browse list interface, I used
4587           dojo.xhrGet()
4588           to retrieve records from the authority browse backend - but
4589           because I didn't
4590           specify sync:true, when you first right-clicked on a subfield,
4591           the function
4592           would return immediately and default to showing the context menu.
4593           You would
4594           then need to click two more times to show the authority list.
4595           
4596           Now you get it on your first right-click, as it should be.
4597
4598 2010-09-23  scottmk
4599
4600         * Dropping and recreating a foreign key constraint for
4601           config.metabib_field,
4602           in order to change its name. WHen this foreign key was first
4603           introduced,
4604           the upgrade script gave it one name and the base install script
4605           gave it
4606           a different name. Here we bring the names into sync.
4607           
4608           M Open-ILS/src/sql/Pg/002.schema.config.sql
4609           A
4610           Open-ILS/src/sql/Pg/upgrade/0415.schema.rename-field-class-fkey.sql
4611
4612 2010-09-23  miker
4613
4614         * Forward-port of a patch from Steve Callendar, via James Fournie,
4615           via launchpad:
4616           
4617           When the patron.password.use_phone is set, new patrons are
4618           created with their password set to the last 4 digits of their
4619           phone number, HOWEVER, when a
4620           patron's password is reset, it does not work properly. Although
4621           the little underlined summary shows the proper 4 digits, the
4622           password box displays 9-
4623           ish digits, and is not the last 4 digits of the password.
4624           
4625           The attached patch was created by Steve Callender and is
4626           confirmed working on 1.6.0
4627           
4628           ORIGINAL CAVEAT: This patch will not work on 2.0 as that has a
4629           new user editor, but it would presumably be worthwhile to verify
4630           this functionality wor
4631           ks in that editor as well.
4632           
4633           ED NOTE: Because it is possible to use the old editor -- it still
4634           exists -- this patch should be applied. It does what it
4635           advertises to do, which is
4636           fix the old editor to follow the "use phone number" OU setting.
4637
4638         * Merging r17905 and r17914 from trunk: A/T transaction semantics
4639           fixes
4640           
4641           r17905: Use a transaction to avoid talking to a replicated db
4642           when building A/T data structures
4643           r17914: In EventGroup.pm, fetch updated event back from the R/W
4644           db before comitting
4645
4646         * Backport r17912 from trunk: Have the CStoreEditor grow a DESTROY
4647
4648         * Backport r17913 from trunk: event firing util code needs to run
4649           in a xact
4650
4651 2010-09-23  phasefx
4652
4653         * disable holds Detail View button until the asynchronously loading
4654           details UI is ready
4655
4656 2010-09-23  scottmk
4657
4658         * Resolving various discrepancies between a freshly built 2.0
4659           database and an upgraded one.
4660           
4661           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4662
4663 2010-09-23  erickson
4664
4665         * repaired search call for user_setting. cstoreeditor uses the
4666           fieldmapper name, sos/usr/user/
4667
4668 2010-09-23  senator
4669
4670         * Backport r17933 from trunk: unneeded comma removed to placate IE
4671
4672 2010-09-23  erickson
4673
4674         * I can has authoritative for selfcheck receipts
4675
4676 2010-09-23  miker
4677
4678         * Backport r17939 from trunk: Stopping the leak
4679
4680 2010-09-24  senator
4681
4682         * Backport r17941 from trunk: miker's permacrud authoritative
4683           search
4684
4685 2010-09-24  scottmk
4686
4687         * Apply some fixes that were earlier applied to the base
4688           installation script
4689           090.schema.action.sql, but not in an upgrade script.
4690           
4691           Also: correct a typo (INTEVAL -> INTERVAL). Hence this upgrade
4692           needs to go
4693           to v2.0 as well as to trunk.
4694           
4695           M Open-ILS/src/sql/Pg/090.schema.action.sql
4696           M Open-ILS/src/sql/Pg/002.schema.config.sql
4697           A
4698           Open-ILS/src/sql/Pg/upgrade/0418.function.action.fix-purge-circ.sql
4699
4700 2010-09-24  miker
4701
4702         * Backport r17946 from trunk: use _session_request in RO calls
4703
4704 2010-09-24  phasefx
4705
4706         * We're starting to get events where ilsevent == empty string now,
4707           not just null or a number.
4708
4709 2010-09-24  senator
4710
4711         * Backport r17950 from trunk
4712
4713 2010-09-24  phasefx
4714
4715         * this call returns an array; fixes surprise stat cats in patron
4716           display
4717
4718 2010-09-24  gmc
4719
4720         * improve hold targetting
4721           
4722           * all potential capturable copies are now checked (up to the
4723           first
4724           one that is permitted for the request), instead of a small random
4725           subset of them
4726           * don't do redundant permission checks
4727           
4728           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4729
4730 2010-09-24  phasefx
4731
4732         * merge r17958 from trunk for patron display juvenile CSS
4733
4734 2010-09-24  miker
4735
4736         * Backporting hold queue stats fixes from 17956, 17957 and 17963
4737
4738 2010-09-24  phasefx
4739
4740         * spawn item attribute editor instead of item notes UI during
4741           process missing pieces workflow
4742
4743 2010-09-24  miker
4744
4745         * Backport r17972 from trunk: removed extra {}s from where clause
4746
4747 2010-09-24  senator
4748
4749         * Backport r17974 from trunk
4750
4751 2010-09-24  gmc
4752
4753         * backport 17976 from trunk
4754           
4755           Remove confusing older targeter version; move status trimming to
4756           earlier in the process --miker
4757           
4758           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4759
4760 2010-09-24  erickson
4761
4762         * clean up the fire_object_events cstore xact
4763
4764         * more transaction cleanups
4765
4766 2010-09-25  senator
4767
4768         * Backport r17982 from trunk
4769
4770         * Backport r17985
4771
4772 2010-09-25  erickson
4773
4774         * events don't have granularity's. removing
4775
4776 2010-09-25  senator
4777
4778         * Backport r17989 from trunk
4779
4780         * Backport r17992 from trunk: misplaced paranoia
4781
4782 2010-09-26  gmc
4783
4784         * don't leak cstores if CStoreEditor rollback fails
4785           
4786           Patch by Mike Rylander.
4787           
4788           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4789
4790         * more selfcheck receipt transaction hackery
4791           
4792           Instead of having authoritative versions of
4793           open-ils.circ.fire_*_trigger_events, wrap just the
4794           target retrieval itself in a transaction. Avoids as
4795           yet unexplained rollback failure that occurs if
4796           processing a selfcheck receipt with more than a few items on it.
4797           
4798           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4799
4800 2010-09-26  phasefx
4801
4802         * make address_type required in the patron editor, otherwise a
4803           blank value sends a null to the db where it silently fails
4804
4805 2010-09-26  miker
4806
4807         * Backport r18007 from trunk: allow more complex facet ordering
4808
4809         * Backport r18009 from trunk: Only show facetOrder limited facets
4810           that have values
4811
4812 2010-09-26  gmc
4813
4814         * added missing columns to CDBI table definitions
4815           
4816           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4817
4818 2010-09-26  dbs
4819
4820         * Remove a debugging statement that slipped in
4821
4822 2010-09-26  erickson
4823
4824         * backport 18015 : push copy location order update into ML method.
4825           return updated orders from method to prevent replication issues.
4826           update UI JS to match
4827
4828         * backport 18016: no need to warn when emails may just be disabled
4829
4830         * backport 18017: honor SIP return date as the circ backdate
4831
4832 2010-09-27  gmc
4833
4834         * avoid multiple clicks of selfcheck logout link
4835           
4836           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4837
4838 2010-09-27  scottmk
4839
4840         * Resolve differences between stored procedures in a freshly
4841           installed
4842           2.0 database and those in an upgraded one.
4843           
4844           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4845
4846 2010-09-27  miker
4847
4848         * Backport r18025 from trunk: Provide for limiting the number of
4849           classOrder elements to a specific number. Skips those without
4850           facet values.
4851
4852         * Backport r18027 from trunk: Adjust hold-to-record view to cover
4853           I, F and R hold types
4854
4855 2010-09-27  phasefx
4856
4857         * since we're enforcing the requiredness of address type, let's
4858           give it a default value (since empty strings don't work with
4859           these widgets)
4860
4861         * accidental change in previous commit. long term plan here is a
4862           'slip' printer role
4863
4864         * merge part of r18002, and all of r18003 and r18004 from trunk for
4865           persistent/sticky slider positions and window sizes
4866
4867 2010-09-27  miker
4868
4869         * Backporting r17984 from trunk: pedantic protection of cstore
4870           backends -- always use die_event when in xact mode, and rollback
4871           otherwise
4872
4873         * Backport r18034 from trunk: use transaction when gathering
4874           records from a newly created queue; adjust rollback usage in
4875           import loop
4876
4877 2010-09-27  erickson
4878
4879         * backporting some xact management fine tuning
4880
4881 2010-09-27  gmc
4882
4883         * fix default path to selfcheck sounds
4884           
4885           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4886
4887 2010-09-27  miker
4888
4889         * Backporting 18039 from trunk: make pubdate sorting on search
4890           faster by pre-munging date1 and date2 into an acceptable sortkey
4891
4892         * Backport r18041 from trunk: Correct the subquery for A/T
4893           opt_in_setting
4894
4895         * missed in the previous commit, sorry folks
4896
4897 2010-09-27  gmc
4898
4899         * fix glitch in hold target OU weighting
4900           
4901           We want to weight by the copy's circulation library, not the
4902           pickup library.
4903           
4904           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4905
4906         * fix another hold targeting glitch
4907           
4908           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4909
4910         * adjustments to pubdate sorting patch
4911           
4912           * handle upgrade for date1/date2 containing the empty string
4913           * syntax error fix
4914           
4915           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
4916
4917 2010-09-27  senator
4918
4919         * Backport r18051: fix a glitch with the granularity column of the
4920           event def UI
4921
4922 2010-09-27  scottmk
4923
4924         * 1. Turn some ints into bigints.
4925           
4926           2. Rename the uniqueness constraint for booking.resource_type.
4927           
4928           M Open-ILS/src/sql/Pg/090.schema.action.sql
4929           M Open-ILS/src/sql/Pg/200.schema.acq.sql
4930           M Open-ILS/src/sql/Pg/012.schema.vandelay.sql
4931           M Open-ILS/src/sql/Pg/095.schema.booking.sql
4932           M Open-ILS/src/sql/Pg/002.schema.config.sql
4933           M Open-ILS/src/sql/Pg/070.schema.container.sql
4934           A Open-ILS/src/sql/Pg/upgrade/0421.schema.embiggen-ints.sql
4935
4936 2010-09-28  atz
4937
4938         * Utility for ISBN10->ISBN13 upconversion
4939
4940         * Script is executable
4941
4942         * edi_translator sample EDI/JEDI docs
4943           
4944           EDI test and sample data
4945           
4946           Ingram ORDRSP that fails translation
4947
4948 2010-09-28  dbs
4949
4950         * Use quoted attribute values to make Firefox / XULRunner happier
4951           about dojo queries
4952           
4953           The unquoted values in BibTemplate and the OPAC detail template
4954           were generating
4955           mucho noise in the JavaScript console; this hushes it up nicely.
4956
4957 2010-09-28  atz
4958
4959         * For edi_translator on RHEL
4960           
4961           Note: RubyGems 1.3.4 is not available anymore
4962
4963         * Fix POD for RemoteAccount
4964
4965         * Minor cleanup
4966
4967         * typo in POD
4968
4969 2010-09-28  scottmk
4970
4971         * Turn an int into a bigint in acq.acq_lineitem_history, following
4972           up on
4973           a similar change to acq.lineitem.
4974           
4975           M Open-ILS/src/sql/Pg/002.schema.config.sql
4976           A
4977           Open-ILS/src/sql/Pg/upgrade/0422.schema.acq.lineitem-history-bigint.sql
4978
4979         * Incorporate several recent upgrade scripts, through # 0422.
4980           
4981           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
4982
4983 2010-09-28  miker
4984
4985         * Backport r18077 from trunk: add support for the null() xpath
4986           function, which works in pgxml (AKA xml2) but not in the builtin
4987           XPATH function for 8.3+
4988
4989 2010-09-28  dbs
4990
4991         * Change memcached default location to 127.0.0.1 from localhost
4992           
4993           Debian Squeeze currently doesn't fare well with memcached servers
4994           pointing to
4995           localhost and needs an explicit 127.0.0.1, whereas Ubuntu Lucid
4996           is happy with
4997           either. Changing the default here means one less possible gotcha
4998           in the out
4999           of the box install & configure experience for Debian Squeeze
5000           folk.
5001
5002 2010-09-28  phasefx
5003
5004         * this breaks (hides) the buttonbar in windows. Sorry James, miker
5005
5006 2010-09-28  erickson
5007
5008         * repaired logic bug in lineitem worksheet template
5009
5010         * backport 18084: sip override checkins, bug fixes
5011
5012         * for troubleshooting, log the size of the template output to be
5013           stored
5014
5015 2010-09-28  senator
5016
5017         * Backport r18089 from trunk. A/T feature.
5018
5019 2010-09-28  miker
5020
5021         * Backport r18091 from trunk: move the early-out response so we
5022           avoid breaking the caller
5023
5024 2010-09-28  phasefx
5025
5026         * Delete all cookies on logoff. There's dojo code that looks for
5027           stale session cookies and has the xul client prompt for a new
5028           session. When you logoff, the session is destroyed, but the stale
5029           cookies were being left behind (and not overwritten on login? I
5030           don't understand that part). But this fixes it
5031
5032 2010-09-28  miker
5033
5034         * Backport r18095 from trunk: Use transactions everywhere in
5035           Vandelay
5036
5037 2010-09-29  miker
5038
5039         * Backport r18097 from trunk: Process item imports during record
5040           import, not as a secondary call (never should have worked, but
5041           for transaction timing)
5042
5043         * Backport r18099 from trunk: support per-grunlarity parallelizing
5044           via flag and lock file
5045
5046 2010-09-29  gmc
5047
5048         * reporter: don't try to write Excel formulas
5049           
5050           Any cell value that starts with = is now always written
5051           as a text cell in spreadsheet output. Avoids a possible
5052           exploit as well as errors like this:
5053           
5054           Couldn't parse formula: = at /openils/bin/clark-kent.pl line 429
5055           
5056           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5057
5058         * fix FM type of reporter.report.data
5059           
5060           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5061
5062 2010-09-29  phasefx
5063
5064         * merge r18106 from trunk for needless auth prompting
5065
5066 2010-09-30  dbs
5067
5068         * Merge r18076 from trunk: Make authority validation rules match
5069           authority ingest rules for better matches
5070           
5071           This resolves a problem in
5072           O:A:Storage:Publisher:authority:validate_tag() where
5073           the full NACO normalization rules that are applied to the
5074           subfields of the
5075           authority records when they are ingested into authority.full_rec
5076           are not similarly
5077           applied to the incoming subfields of the bib field that is being
5078           validated;
5079           only diacritic characters in the bib field subfields were being
5080           normalized.
5081           
5082           Now we apply naco_normalize() to the search terms so that they
5083           will match
5084           the ingested form of the authority record.
5085
5086 2010-09-30  erickson
5087
5088         * fire the hold_request.cancel.staff when hold is cancelled by
5089           staff
5090
5091 2010-10-01  dbs
5092
5093         * Add serial.record_entry to CDBI definitions
5094           
5095           Better late than never; never added the serial.record_entry
5096           CDBI definitions in the 1.6 series, but as that table can
5097           still be active in 2.0 we might as well get it in place.
5098
5099         * Teach marc_export script how to export MFHD serial records
5100           
5101           Passing the --mfhd flag will export any non-deleted MFHD records
5102           in
5103           serial.record_entry associated with each bib ID. So, for a
5104           hypothetical set of
5105           bib IDs 1, 2, 3, where 2 has no associated MFHD records and 3 has
5106           2 MFHD records
5107           associated with it, the output will be structured as follows:
5108           
5109           Bib MARC for bib ID 1
5110           MFHD MARC for bib ID 1
5111           Bib MARC for bib ID 2
5112           Bib MARC for bib ID 3
5113           MFHD MARC for bib ID 3
5114           MFHD MARC for bib ID 2
5115
5116 2010-10-01  phasefx
5117
5118         * tweak remoteauth.cgi to offer usrname and barcode params in
5119           addition to user. user param now looks for the opac.barcode_regex
5120           org unit setting to determine whether the value is a usrname or
5121           barcode. change double-quotes to single-quotes if we're not doing
5122           string interpolation. change apache instructions for
5123           configuration
5124
5125 2010-10-01  atz
5126
5127         * Silence warning
5128           
5129           Warnings was:
5130           Use of uninitialized value in subroutine entry at
5131           /openils/lib/perl5/OpenILS/SIP/Patron.pm line 230.
5132           
5133           Signed-off-by: Joe Atzberger <atz@esilibrary.com>
5134
5135 2010-10-01  phasefx
5136
5137         * use an opac login here, which doesn't require the STAFF_LOGIN
5138           permission by default
5139
5140 2010-10-01  senator
5141
5142         * Backport r18124 from trunk: another pull list printing pathway
5143
5144 2010-10-01  dbs
5145
5146         * Set due times for durations measured in days to 23:59:59 after
5147           inserts OR updates
5148           
5149           The existing trigger acted only on the initial insert of a
5150           circulation
5151           transaction for duration intervals perfectly divisible by 24
5152           hours.
5153           If updates to those due dates were subsequently issued, then the
5154           due
5155           time would revert to 00:00:00 - which could cause surprising
5156           overdue
5157           fines to be generated on the due date, rather than after the due
5158           date.
5159           
5160           This commit makes the trigger take effect on both INSERT and
5161           UPDATE
5162           to the action.circulation table.
5163
5164 2010-10-01  senator
5165
5166         * Backport r18130 from trunk
5167
5168 2010-10-02  miker
5169
5170         * Backporting r18123 from trunk: Implement a process-local cache
5171           for event target fleshing -- particularly helpful with large
5172           event groups
5173
5174         * Backportin r181323 and r18133 from trunk: Massive search
5175           core-query speed improvement.
5176           
5177           * Only compile the tsquery once
5178           * Use direct ids instead of going back to the db udring a queyr
5179           * Change a remaining CASE to COALESCE/NULLIF
5180
5181         * Backporting r18136 from trunk: configurable chunking of the holds
5182           stream to avoid the xulrunner "I forgot the chunked stream"
5183           problem
5184
5185 2010-10-03  scottmk
5186
5187         * Incorporate upgrade scripts 0423 and 0424
5188           
5189           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
5190
5191 2010-10-04  miker
5192
5193         * Backport r18140 from trunk: moved the cache clear to later in the
5194           firing to pick up data; fixed some typos/thinkos
5195
5196         * Backport r18141 from trunk: Allow caller to ignore selected facet
5197           classes; ignore identifier class by default
5198
5199 2010-10-04  senator
5200
5201         * Backport r18148 from trunk: fix pull list retrieval bug for alt
5202           pull list print
5203
5204 2010-10-04  erickson
5205
5206         * fixed typo in vandelay merge profile permission check
5207
5208 2010-10-04  senator
5209
5210         * Backport r18158 from trunk: patron alias column in some holds
5211           interfaces
5212
5213 2010-10-04  dbs
5214
5215         * French translation of password reset form and prompts at
5216           /opac/password/fr-CA/
5217
5218 2010-10-05  erickson
5219
5220         * avoid running activated hook when in dry run mode
5221
5222 2010-10-05  gmc
5223
5224         * make it easier to grep for bib search durations from the Pg log
5225           
5226           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5227
5228 2010-10-05  phasefx
5229
5230         * merge r18169 from trunk for CSS hooks
5231
5232 2010-10-05  atz
5233
5234         * EDI job POD
5235
5236         * Add title to PO view page.
5237
5238 2010-10-05  senator
5239
5240         * Backport r18175
5241
5242 2010-10-05  atz
5243
5244         * The whole point of test mode, NOT actually committing actions.
5245
5246 2010-10-05  phasefx
5247
5248         * be quiet with errors retrieving remote column settings
5249
5250 2010-10-05  gmc
5251
5252         * hold matrix selection: treat root OU as just another OU
5253           
5254           Treat the root OU as just another OU for the purpose of
5255           calculating OU proximity adjustments when selecting a
5256           matchpoint.
5257           
5258           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5259
5260 2010-10-06  miker
5261
5262         * Backport r18187 from trunk: Add a retargetting specific version
5263           of the hold-permit function which skips user tests
5264
5265         * Backport r18188 from trunk: usr_grp is entirely unused currently;
5266           hide it
5267
5268 2010-10-06  erickson
5269
5270         * first level of groups hash can be array or hash, leading to
5271           breakage; for now, keep it simple and return continue-status to
5272           keep the caller alive
5273
5274 2010-10-06  miker
5275
5276         * Backport r18195 from trunk: Make retargetting check less lax by
5277           including appropriate patron-side test
5278
5279 2010-10-06  erickson
5280
5281         * suppress usr_grp field in hold matrix matchpoint; see also 18188
5282
5283 2010-10-06  scottmk
5284
5285         * Backporting a syntax correction; SQL functions cannot reference
5286           their parameters by name.
5287           
5288           M Pg/upgrade/0428.schema.hold_retarget.sql
5289           M Pg/110.hold_matrix.sql
5290
5291 2010-10-06  phasefx
5292
5293         * hold/transit slips may want to use stat cats as well
5294
5295 2010-10-06  erickson
5296
5297         * avoid retreiving/searching a linked object, when there is no
5298           object to retrieve (i.e. ident value is null) and silence various
5299           warnings by skipping this scenario. mild variable refactor for
5300           easy reading for feeble eyes.
5301
5302 2010-10-06  scottmk
5303
5304         * Incorporate upgrades 0427 and 0428 into the consolidated upgrade
5305           script.
5306           
5307           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
5308
5309 2010-10-06  miker
5310
5311         * Backport spackling from trunk: db upgrade script dislikes holes
5312           -- spackle this one
5313
5314 2010-10-06  senator
5315
5316         * Backport r18215 from trunk: alternate printing for expired holds
5317           shelf lists
5318           
5319           This is slim so that it supports bigger datasets than the usual
5320           interface for
5321           this. Needs improvment: make the template more customizable
5322
5323 2010-10-06  atz
5324
5325         * Warn but continue on skipped upgrade revs.
5326
5327 2010-10-07  phasefx
5328
5329         * merge r18220 from trunk for %destination_shelf% macro in hold and
5330           hold/transit slip templates
5331
5332 2010-10-07  senator
5333
5334         * Backport r18222 from trunk: reasonable default sorting for
5335           expired holds list
5336
5337 2010-10-07  atz
5338
5339         * EDI template update for ORDERS
5340           
5341           This template produces JSON for the edi translator to convert
5342           into
5343           actual EDI lines. It now handles vendor-specific requirements for
5344           account and sub-account identification, and also transmits notes
5345           of the vendor-public variety as FTX segments in the lineitem.
5346
5347 2010-10-07  senator
5348
5349         * Backport r18226 from trunk
5350
5351 2010-10-07  gmc
5352
5353         * choose the hold permit test variant correctly
5354           
5355           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5356
5357 2010-10-07  senator
5358
5359         * Backport r18230 and 18231, hold shelf clearer/printer
5360
5361 2010-10-08  gmc
5362
5363         * do not apply superpage limit inside bib search joins
5364           
5365           Oddly, empirical evidence suggests that this might actually
5366           be faster, and if this pans out, search results will definitely
5367           be more complete.
5368           
5369           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5370
5371 2010-10-08  dbs
5372
5373         * Avoid scary SSL / HTTPS errors in Apache configuration
5374           
5375           When port 443 is the last listener port, Apache generates lots
5376           of "unknown protocol speaking not SSL to HTTPS port!?" errors in
5377           the logs - which are scary, but harmless. Putting port 80 last
5378           avoids those errors entirely, per
5379           http://wiki.apache.org/httpd/InternalDummyConnection
5380
5381 2010-10-08  phasefx
5382
5383         * moving users in and out of groups produced dialogs that expected
5384           vertical patron summaries. this fixes that
5385
5386         * fix logic error where we were just testing for the presence of a
5387           user setting instead of its value
5388
5389 2010-10-08  senator
5390
5391         * Backport r18249 from trunk: clear hold shelf work even on
5392           brokenish holds
5393
5394 2010-10-08  phasefx
5395
5396         * typo
5397
5398 2010-10-08  erickson
5399
5400         * mild fixes for a/t interface admin interface. sort by def name
5401           instead of hook, which probably makes more sense to a human. hide
5402           the opt-in and max-delay columns to free up some badly needed
5403           horizontal space. use percentage width for name column, which
5404           acts a lot like 'auto', but allows the user to manually resize
5405
5406 2010-10-11  erickson
5407
5408         * wait to run-pending if a specific granularity used
5409
5410 2010-10-11  atz
5411
5412         * Tighter verbose format for skipped POs
5413
5414 2010-10-11  phasefx
5415
5416         * initialize these lists just once to prevent display glitch
5417
5418         * avoid race condition with post-save patron editor refresh and
5419           replicated databases
5420
5421 2010-10-12  scottmk
5422
5423         * Incorporate upgrade # 0433 into the consolidated upgrade script.
5424           
5425           M Open-ILS/src/sql/Pg/1.6.1-2.0-upgrade-db.sql
5426
5427 2010-10-12  atz
5428
5429         * Be sure to copy new JS files from OpenSRF on a FULL
5430           update/install
5431
5432 2010-10-12  miker
5433
5434         * Backporting MARC js fixes from trunk
5435
5436 2010-10-13  miker
5437
5438         * thinko supporting multiple rules of the same type in in-line
5439           merge rulesets
5440
5441 2010-10-13  erickson
5442
5443         * clean up duplicate system-controlled penalties during penalty
5444           calculation; perform penalty trigger event creation after the
5445           standalone commit occurs. todo, handle non-standalone post-commit
5446           penalty trigger event creation
5447
5448 2010-10-13  scottmk
5449
5450         * Change the treatment of ORDER BY. Except as noted, these changes
5451           apply only to methods other than json_query.
5452           
5453           1. Allow the use of array syntax for specifying an ORDER BY
5454           clause
5455           as an array of field specifications, such as can be used in
5456           json_query.
5457           The older syntax, using a hash based on class name, is still
5458           available.
5459           
5460           2. For json_query, using the array syntax: relax the requirement
5461           that a
5462           class be in scope. A field from an out-of-scope class will now be
5463           silently ignored. This change avoids certain problems with
5464           fleshing
5465           queries, which use the same order_by array at multiple levels.
5466           
5467           3. For the hash syntax: relax the requirement that the class be
5468           referenced in the SELECT clause. Now it suffices that it be in
5469           scope in the generated SQL. As a result, you can now sort by a
5470           column in a joined class without artificially including that
5471           column
5472           in the SELECT list.
5473           
5474           4. When all or part of an ORDER BY clause is expressed as a
5475           string
5476           literal: require that the string not contain any semicolons, in
5477           order
5478           to block certain kinds of SQL injection. This measure could
5479           create
5480           problems if a semicolon appears within a quoted string -- which
5481           is
5482           possible in theory but highly improbable in practice.
5483           
5484           5. Don't include a virtual field in an ORDER BY clause. If one is
5485           specified, silently ignore it.
5486           
5487           M Open-ILS/src/c-apps/oils_sql.c
5488
5489 2010-10-14  phasefx
5490
5491         * change the Swap Editor button to a persisted checkbox
5492
5493 2010-10-14  miker
5494
5495         * correct top-half ordering by label_sortkey
5496
5497         * patch from Steve Callendar to avoid resetting the passwd every
5498           time a phone number changes
5499
5500         * cast label_sortkey to bytea in order to get ascii-betical sorting
5501           in any locale, even C. stupid glibc ...
5502
5503         * backward compat indexing for label instead of label_sortkey
5504
5505         * "as" not "to" ... you pointed that out the first time, miker,
5506           what is your deal?
5507
5508         * upgrade version number fix
5509
5510 2010-10-14  erickson
5511
5512         * Back-porting a number of action/trigger fixes from trunk:
5513           
5514           parallel collection and reaction with multisession
5515           cut down xact begin/rollbacks to reduce call overhead during
5516           collection
5517           force granularity-only when running w/ --granularity
5518
5519         * If an item is captured for a hold, but not in transit (i.e. on
5520           holds shelf), set the destination_location equal to the pickup
5521           library (i.e where it's supposedly on the shelf). This is useful
5522           for autmated sorting so that the item will return to the branch
5523           whose shelf where it belongs.
5524
5525 2010-10-15  gmc
5526
5527         * tweak expanding search field aliases
5528           
5529           Avoids a glitch that can occur if a search field alias
5530           exists that happens to have the same name as a search field.
5531           
5532           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5533
5534 2010-10-15  miker
5535
5536         * Poked by scottmk to incorporate 0438 into the 1.6.1-2.0 upgrade
5537           script. This may duplicate effort if one is already on 1.6.1.3+
5538           (when it exists) but there is no harm in it either.
5539
5540 2010-10-16  miker
5541
5542         * Backporting r18364-r18366 from trunk: use a function to wrap up
5543           escaping of solidus and casting to bytea, propogate to indexing
5544           and where/order_by
5545
5546 2010-10-18  phasefx
5547
5548         * merge r18374-18375 from trunk for bill receipt fixes
5549
5550         * make Circulation -> Enter Offline Interface open a new window
5551           instead of a tab, like the button from the login window. This
5552           works around a permission issue with loading the offline receipt
5553           templates
5554
5555         * stop sign page was incorrectly coming up for all penalties
5556
5557 2010-10-18  dbs
5558
5559         * Protect biblio.extract_located_uris() from a NULL uri_use value
5560           by using the href as a fallback
5561           
5562           If an 856 field contained a subfield "9" but did not contain a
5563           subfield
5564           "z", "2", or "n", then ingest of the MARC record would fail as it
5565           attempted
5566           to retrieve an asset.uri row where uri_use = NULL - which was
5567           never true.
5568           
5569           This change adds the subfield "u" to fall back to for the uri_use
5570           variable,
5571           just like we do for the uri_label variable, and prevents ugly
5572           ingest errors
5573           from getting thrown back at the client.
5574
5575 2010-10-18  senator
5576
5577         * Backport r18384 from trunk: serials previous issue copy location
5578           moving
5579
5580         * Backport r18386 from trunk, asset.copy_template editing
5581           improvement
5582
5583 2010-10-18  gmc
5584
5585         * fix mapping of the crossed D character in naco_normalize
5586           
5587           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5588
5589         * update 1.6.1 to 2.0 upgrade script for 0441
5590           
5591           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5592
5593 2010-10-19  miker
5594
5595         * expand the scope of BT on the result list page, allowing simpler
5596           slots
5597
5598 2010-10-20  miker
5599
5600         * Backporting r18396 from trunk: Patch from Thomas Berezansky
5601           providing an alternate implementation of Hard Due Dates
5602
5603 2010-10-20  erickson
5604
5605         * during checkin, an item's hold may have a fleshed pickup_lib.
5606           added code to detect and protect against treating a ref as an ID.
5607           minor cleanup
5608
5609 2010-10-20  senator
5610
5611         * Backport r18407 from trunk: alt serials interface tweak
5612
5613 2010-10-20  dbs
5614
5615         * Prevent "Validate" from matching against deleted authority
5616           records
5617           
5618           2.0 introduces the ability to delete authority records. The
5619           routines in
5620           OpenILS:Application:Storage:Publisher:authority check for
5621           matching values
5622           of authority.full_rec without concern about whether the
5623           corresponding
5624           entry in authority.record_entry has been deleted or not.
5625           
5626           This change removes entries from authority.full_rec when an
5627           authority.record_entry row is deleted, with the (possibly
5628           incorrect)
5629           assumption that there won't be many cases where users will want
5630           to
5631           search for deleted authority records and undelete them. If that
5632           assumption turns out to be incorrect, then further changes can
5633           follow;
5634           this change at least makes the current behaviour for user-visible
5635           actions work as expected.
5636
5637 2010-10-20  miker
5638
5639         * 1.6.1-2.0 upgrade script needs to fall in line with reality, re
5640           0442
5641
5642 2010-10-20  senator
5643
5644         * Backport r18414 from trunk
5645
5646         * Backport r18416 from trunk: a/t use rstore to flesh if cstore not
5647           available
5648
5649 2010-10-20  miker
5650
5651         * Patch from tsbere to address backporting issue of hard due dates
5652           patch against trunk (also, get rid of 3-space indentation..)
5653
5654 2010-10-20  senator
5655
5656         * Backport r18419 from trunk: supercat bugs on records with serials
5657           data attached
5658
5659         * Backport r18421 from trunk
5660
5661 2010-10-20  phasefx
5662
5663         * don't allow inactive cards with web-selfcheck
5664
5665 2010-10-20  miker
5666
5667         * add start_date and end_date to scap serialization
5668
5669         * These fields exist ... tell the IDL about them
5670
5671 2010-10-20  erickson
5672
5673         * added some time diagnostics to checkin process; more org unit
5674           caching; do less user fleshing on hold user during checkin (only
5675           card and name is needed)
5676
5677 2010-10-20  gmc
5678
5679         * use a transaction when searching for the nearest hold request
5680           
5681           Solves the following problem in a setup that uses Slony - if
5682           multiple items that can fulfill the same hold are checked
5683           in one after another, occassionally two items will end up
5684           being put in transit for the same hold request.
5685           
5686           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5687
5688 2010-10-21  gmc
5689
5690         * improve call number sorting
5691           
5692           oils_text_as_bytea now does uppercasing in addition
5693           to converting strings to bytea, working around
5694           the limitation that json_query can't stack transforms
5695           
5696           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5697
5698 2010-10-21  phasefx
5699
5700         * ilsevent is no longer a number, but a string. I knew that, but
5701           missed this test
5702
5703 2010-10-21  senator
5704
5705         * Backport r18442 from trunk, autogrid cut-off tweak
5706
5707 2010-10-22  miker
5708
5709         * Move dojo loading around to avoid the "white screen of death" in
5710           Firefox and xulrunner (See:
5711           http://o.dojotoolkit.org/forum/dojo-foundation/general-discussion/firefox-3-fires-domcontentloaded-event-prematurely
5712           )
5713
5714 2010-10-22  senator
5715
5716         * Backport r18448 from trunk, minor acq glitch with view/place
5717           orders interface
5718
5719 2010-10-22  miker
5720
5721         * typo in setTimeout spotted by dbs
5722
5723         * Use standard JS syntax; var [...] seems to be a Spidermonkey
5724           extension
5725
5726 2010-10-22  erickson
5727
5728         * further protection against dreaded opac bank page; wrap
5729           settimeout redetail bibtemplate loading in an onload to ensure it
5730           runs after dojo onload events
5731
5732 2010-10-25  miker
5733
5734         * Dump some debugging output from clark; may later make this
5735           optional, but we usually need it when looking for the cause of
5736           problems.
5737
5738         * Backport r18462-r18463 from trunk: Remove some connectby() uses
5739           and update upgrade script
5740
5741         * quickly, before anyone notices ... minor speed enhancement (aka,
5742           thinko)
5743
5744 2010-10-25  phasefx
5745
5746         * Floating field in alternate item details UI
5747
5748 2010-10-26  miker
5749
5750         * include more information in the debugging dump; correct the "back
5751           to index" link
5752
5753 2010-10-26  gmc
5754
5755         * fix NACO normalization of four letter modifier characters
5756           
5757           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5758
5759 2010-10-26  senator
5760
5761         * Backport r18480 from trunk: copy template editor bugfix
5762
5763 2010-10-27  phasefx
5764
5765         * View Source option for embedded browser (click on the Debug link)
5766
5767 2010-10-27  gmc
5768
5769         * fix glitch in escaping call number labels
5770           
5771           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5772
5773 2010-10-27  senator
5774
5775         * Backport r18489 from trunk: distribution formula UI paging
5776
5777 2010-10-27  erickson
5778
5779         * added grid autoHeight to distrib formula page to prevent the grid
5780           from consuming the whole page
5781
5782 2010-10-27  gmc
5783
5784         * remove unused settings and permission
5785           
5786           circ.holds.alert_if_local_avail and
5787           circ.holds.deny_if_local_avail
5788           are redundant; circ.holds.hold_has_copy_at.{alert|block} are the
5789           settings that will actually be used. Also remove a related,
5790           redundant permission.
5791           
5792           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5793
5794 2010-10-27  senator
5795
5796         * Backport r18502 from trunk: make booking avoidable in circ
5797           service (speedup!)
5798
5799 2010-10-27  miker
5800
5801         * Backport of r18494, r18500 and r18501 from trunk: split fine
5802           generation
5803
5804 2010-10-27  erickson
5805
5806         * since they typically repeat, cache the org and requestor objects
5807           in the permit loop of the find-best-hold calculation
5808
5809 2010-10-27  miker
5810
5811         * Move towards unnest (faster than explode_array); bring upgrade
5812           script up to speed
5813
5814 2010-10-27  erickson
5815
5816         * more micro-optimization of checkin code; protect against undef
5817           var warning in info message; removed unused sub
5818
5819 2010-10-27  senator
5820
5821         * Backport r18514 from trunk, more circ speedups when booking not
5822           in play
5823
5824 2010-10-28  dbs
5825
5826         * Backport r18516: Ensure call numbers are returned to the holdings
5827           editor in ascending sorted order
5828           
5829           James Fournie in https://bugs.launchpad.net/evergreen/+bug/635121
5830           reported
5831           that call numbers were being displayed in the order that they had
5832           been
5833           added to the database, rather than in sorted call number label
5834           order.
5835           
5836           Although I have been unable to reproduce this problem on two
5837           different
5838           test systems, the patch he provided for 1.6.1 (which fixes the
5839           problem on their
5840           test system) shouldn't hurt other systems.
5841           
5842           For sortkey-aware branches, I modified James' patch to take
5843           advantage of the
5844           asset.call_number.label_sortkey column and the
5845           oils_text_as_bytea() function.
5846
5847 2010-10-28  erickson
5848
5849         * condensed SIP patron lookup by barcode into 1 cstore call;
5850           provided option for slimmed-down user object fetching in the case
5851           of checkin, where all we really need is the barcode of the user
5852           on the circulation
5853
5854 2010-10-28  phasefx
5855
5856         * backport r18498-18499 from trunk for staff-initiated age overdue
5857           circ/item to Lost functionality, with upgrade script
5858
5859 2010-10-28  senator
5860
5861         * Backport r18530 from trunk: misc alt serials UI minor
5862           improvements, tweaks
5863
5864 2010-10-28  erickson
5865
5866         * calling noop with no arguments (and not capturing the output) is,
5867           well, a no-op. set the value to true as originally intended
5868
5869 2010-10-28  gmc
5870
5871         * wrap some EDI message retrievals in transactions
5872           
5873           Avoid errors when operating under Slony.
5874           
5875           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5876
5877 2010-10-29  gmc
5878
5879         * loosen cross-check of line item ID when processing incoming EDI
5880           messages
5881           
5882           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5883
5884         * adjust quoting of phrase searches
5885           
5886           This has three main effects:
5887           
5888           * This formalizes the current behavior where a
5889           phrase search like
5890           
5891           title:"^Harry Potter"
5892           
5893           acts as a left-anchored search and
5894           
5895           title:"Harry Potter$"
5896           
5897           acts as a right-anchored search.
5898           
5899           In particular, this can be useful for constructing
5900           searches of bibliographic call numbers.
5901           
5902           * Other regex metacharacters in phrase searches are
5903           now escaped.
5904           
5905           * Phrase searches like "C++" will no longer crash; in fact,
5906           this makes a phrase search currently the only way to
5907           accurately retrieve all C++ titles with the usual
5908           normalization rules
5909           
5910           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5911
5912 2010-11-01  gmc
5913
5914         * let libraries allow funds to be overcommitted
5915           
5916           The check constraints on the balance warning and
5917           stop limits were too strict - a library can validly
5918           choose to permit a fund to have a commitment greater
5919           than 100% of its allocation
5920           
5921           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5922
5923 2010-11-01  miker
5924
5925         * Include copy counts in holdings XML -- I will destroy MVRs yet!
5926
5927 2010-11-01  phasefx
5928
5929         * syntax
5930
5931 2010-11-01  miker
5932
5933         * Backport of in-db hold permit improvements from trunk
5934
5935         * Backport thinko fix for count reporting
5936
5937         * we should not restrict to the top org only, get all counts
5938
5939 2010-11-01  dbs
5940
5941         * Ensure that changes to authority records propagate to linked
5942           bibliographic records
5943           
5944           Per https://bugs.launchpad.net/evergreen/+bug/669596, updated
5945           authority records
5946           weren't being reflected in bibliographic records with fields that
5947           link to those
5948           authority records. We were missing the call to
5949           authority.propaagate_changes()
5950           withing the ingest trigger on authority.record_entry.
5951
5952         * Replace hard-coded '(CONS)' for MARC control number identifier in
5953           authority records
5954           
5955           We created an actor.org_unit_setting,
5956           'cat.marc_control_number_identifier', for
5957           specifying the preferred MARC control number identifier, but when
5958           we create a
5959           new authority record from the MARC editor, the hardcoded value of
5960           'CONS' is being
5961           used.
5962           
5963           This teaches the staff client how to pull the appropriate value
5964           from the AOUS
5965           when invoking the MARC Editor.
5966           
5967           Resolves https://bugs.launchpad.net/evergreen/+bug/669245
5968
5969 2010-11-01  miker
5970
5971         * Backporting r18561 from trunk: Make vandelay.add_field smarter
5972           about applying add rules when no target field exists before hand
5973
5974 2010-11-01  gmc
5975
5976         * yet another replication race condition fix
5977           
5978           Fixes problems that can occur when creating a lineitem
5979           from an existing bib in the catalog; adds an authoritative
5980           version of open-ils.acq.lineitem.retrieve.
5981           
5982           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
5983
5984 2010-11-02  dbs
5985
5986         * Enable merge of authority records to do the right thing
5987           
5988           The target and source authority record was flipped, causing
5989           the update to fail. In reconsidering this function, it is not
5990           necessary to change the contents of the source authority record
5991           just to propagate the content of the target authority record
5992           to any linked bibliographic records.
5993           
5994           Instead, take the approach of updating the ID of the controlled
5995           field in the bib record, then temporarily set "reingest on same
5996           MARC" to TRUE and update the target authority record by setting
5997           deleted = FALSE (which propagates the "changes" to the linked
5998           bib records), then set "reingest on same MARC" flag back to its
5999           original value.
6000           
6001           This has the bonus of actually working.
6002
6003 2010-11-02  erickson
6004
6005         * in SIP patron retrieval, only fetch non-archived penalties and
6006           penalties that that matter (fines, overdues, blocking penalties).
6007           pair down the penalty comparisons to avoid fleshing the penalty
6008           type, potentially numerous times for a given type, by using the
6009           constant identifiers
6010
6011         * back-porting 18571, 18572. provider fetching updates,
6012           autofieldwidget linked class loader
6013
6014 2010-11-02  gmc
6015
6016         * don't break up title and author when ingesting acquisitions MARC
6017           
6018           Note that this can be done more cleanly once oils_xpath groks
6019           XPATH 2.0 functions, in particular string-join.
6020           
6021           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6022
6023         * enable authoritative versions of various acq retrieval functions
6024           
6025           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6026
6027         * DROP TRIGGER IF EXISTS push_due_date_tgr ON action.circulation;
6028           add definition for UPC line item attribute
6029           
6030           Useful for providers of audiovisual material that
6031           don't have ISBNs.
6032           
6033           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6034
6035 2010-11-02  miker
6036
6037         * Patch from Steve Callender to address a booking-related
6038           collection agency reporting problem
6039
6040 2010-11-02  senator
6041
6042         * Backport r18583 from trunk, fund totals on an invoice voucher
6043
6044         * Move upgrade to upgrade directory
6045
6046         * Backport r18535 from trunk: hard due date interfaces
6047
6048 2010-11-03  senator
6049
6050         * Backport r18589 from trunk: acq invoice voucher fix
6051
6052 2010-11-03  gmc
6053
6054         * flip sense of spending limit check
6055           
6056           Testing showed users expecting that the limit would
6057           be based on amount spent, not the amount available
6058           to send.
6059           
6060           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6061
6062 2010-11-03  miker
6063
6064         * add the Batch Bib Update module to startup.pl
6065
6066 2010-11-03  gmc
6067
6068         * blimey
6069
6070 2010-11-04  gmc
6071
6072         * add TT helper to squeeze strings into the UNOB straitjacket
6073           
6074           The force_jedi_unob helper strips non-ASCII characters from
6075           template output but does so nicely by converting the string
6076           to NFD first. This is meant to be used by EDI templates, although
6077           could be useful for A/T output that goes to receipt
6078           printers that cannot print diacritics.
6079           
6080           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6081
6082 2010-11-04  miker
6083
6084         * over-aggressive backporting -- only in trunk and 1.6
6085
6086         * General 2.0b1 cleanup
6087           
6088           * Problem in vandelay.add_fields spotted by tsbere
6089           * Syncing 1.6.1-2.0 upgrade script with reality
6090
6091         * cut down on reloading of IDL classes
6092
6093 2010-11-04  senator
6094
6095         * Backport r18606 from trunk: no more Net::uFTP
6096
6097 2010-11-05  phasefx
6098
6099         * backporting r18609 patch from bshum for catalog search in button
6100           bar
6101
6102 2010-11-05  miker
6103
6104         * remove some extra rollbacks, and catch the failure of others
6105           where they may or may not be needed
6106
6107 2010-11-05  gmc
6108
6109         * fix user password reset request time column def
6110           
6111           Needs to be a timestamp with time zone; fixes a bug
6112           where it was interpreted as a UTC time, throwing off
6113           the calculation of the expiration of the password reset
6114           request.
6115           
6116           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6117
6118 2010-11-05  senator
6119
6120         * Backport r18622 from trunk: legacy serials OPAC fix
6121
6122 2010-11-05  gmc
6123
6124         * remove aupr.request_time fix from 1.6.1-2.0 upgrade
6125           
6126           Fix also in 1.6.1.3
6127           
6128           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6129
6130 2010-11-05  phasefx
6131
6132         * backport r18548, 18564, and 18602 from trunk for opac login form
6133           tweaks
6134
6135 2010-11-05  gmc
6136
6137         * missed database update from password reset fix
6138           
6139           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6140
6141         * switch to authoritative methods for various acq retrievals
6142           
6143           Avoid race condition when using Slony replication
6144           
6145           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6146
6147         * #671213: remove extraneous insert from upgrade script
6148           
6149           Somebody upgrading from 1.6.1 should already have this.
6150           
6151           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6152
6153 2010-11-08  dbs
6154
6155         * Improve Fedora prerequisite installer
6156           
6157           * Explicitly install wget, which isn't installed in a minimal
6158           install
6159           * Hack JavaScript-SpiderMonkey Makefile.PL for 32-bit Fedora
6160           * Provide a fedora14 target
6161           * Change "fedora-13" to "fedora13" to match OpenSRF prereq
6162           installer
6163
6164         * Add UUID::Tiny to Fedora prerequisites
6165
6166         * Further Fedora prereq installer tweaks
6167           
6168           * Install the Perl DBD::Pg module
6169           * Force the CPAN modules, as
6170           Business::OnlinePayment::AuthorizeNet
6171           still suffers from an install-crippling bug
6172
6173 2010-11-08  erickson
6174
6175         * holds retrieval API call sorting and cleanup; sort non-cancelled
6176           holds by ready-for pickup, then active, then suspended; use
6177           json_query to fetch IDs first, so id_list calls can avoid
6178           fetching the full hold objects in the ML. sort fleshed transit by
6179           send time to pick up the latest transit
6180
6181 2010-11-08  miker
6182
6183         * Backporting r18652: Teach vandelay.replace_field to be a little
6184           smarter by allowing simple cases of both replacing and
6185           regexp-testing the same subfield
6186
6187         * 1.6-2.0 upgrade script syncing, re r18652
6188
6189         * Bacport r18657: syntax problem spotted by Jason Etheridge
6190
6191         * More fixing related to r18657
6192
6193 2010-11-08  senator
6194
6195         * Backport r18662 from trunk: don't try to render dropdown of all
6196           bib IDs
6197
6198 2010-11-08  miker
6199
6200         * Backporting IDL bug fixes
6201
6202 2010-11-08  erickson
6203
6204         * dynamically loaded classes also need access to toHash
6205
6206 2010-11-09  phasefx
6207
6208         * merge r18675 from trunk for DP_DateExtension removal
6209
6210 2010-11-10  gmc
6211
6212         * do not use TRUNCATE when refreshing
6213           reporter.materialized_simple_record
6214           
6215           Previous behavior would break Slony replication after doing a
6216           bib load. Since a deletion is slower than a truncate, if you're
6217           not using Slony replication, you may prefer to truncate rmsr
6218           prior to calling
6219           reporter.enable_materialized_simple_record_trigger.
6220           
6221           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6222
6223 2010-11-10  miker
6224
6225         * Move the magic-bib update to the top of the file, avoiding
6226           triggers that care about XML namespaces
6227
6228 2010-11-10  senator
6229
6230         * Backport r18688 from trunk: booking bugfix
6231
6232         * Backport r18685 and r18691 from trunk: serials-integration work +
6233           patch from
6234           Dan Wells
6235
6236 2010-11-10  dbs
6237
6238         * Enable "maintain control numbers" and "record ID as TCN" behavior
6239           by default
6240           
6241           Per http://ur1.ca/2bgc4, this behavior hews more closely to the
6242           MARC21
6243           specification. Note, however, that duplicate bib detection in the
6244           "Import via Z39.50" interface will be somewhat affected; a more
6245           trustworthy workaround is to include the "Local catalog" in
6246           Z39.50 searches to
6247           determine if a matching record already exists in the database.
6248
6249 2010-11-11  dbs
6250
6251         * Update the edit dates for authority and MFHD records when they
6252           are edited
6253           
6254           Addresses the oversight in the original implementation that
6255           missed this;
6256           important if we're going to differentiate between creating and
6257           editing
6258           a record for triggers.
6259
6260 2010-11-11  erickson
6261
6262         * wraps tips appendChild in try/catch to prevent occaisonal
6263           exeptions.
6264
6265 2010-11-11  dbs
6266
6267         * Do not supply a default value for 003 in new authority records
6268           
6269           With cat.maintain_control_numbers enabled by default, we can
6270           trust
6271           the database trigger to create the appropriate 003 for us - and
6272           by
6273           not supplying a 003 in the new record, we won't create a spurious
6274           035 for a brand new record.
6275
6276         * Avoid munging 035 when a new record is created
6277           
6278           If there is no 003 in the record when it is created, then we will
6279           not attempt
6280           to generate a 035. If the incoming record contains a 001 and 003,
6281           then we will
6282           create a 035.
6283
6284 2010-11-12  phasefx
6285
6286         * merge r18687 from trunk for cookie library changes
6287
6288         * ensure that we only fetch this setting once per page
6289
6290 2010-11-12  erickson
6291
6292         * Back-port of 18712 and related changes: Server-generated IDL JS
6293           
6294           
6295           The goal is to reduce use of pre-onload XHR, which is known to
6296           cause
6297           problems (dreaded white-screen-of-death) in firefox/xulrunner.
6298           Change
6299           allows opac, staff client, and embedded browser interfaces to
6300           load
6301           a pre-formatted JS object instead of IDL XML via XHR. In addition
6302           to
6303           dropping the XHR, clients no longer parse the XML, which should
6304           reduce
6305           page render time. Finally, in the staff interfaces, the full IDL
6306           is
6307           once again loaded, so there is no need to specifiy per-page
6308           classes.
6309           Per-page classes are still supported and used in the OPAC to
6310           reduce the
6311           up-front load time.
6312           
6313           Change requires an update to the Evergreen Apache config.
6314           
6315           Part of this change included condensing fieldmapper.hash and
6316           fielmapper.dojoData content into fieldmapper.Fieldmapper to avoid
6317           circular dependencies, which was causing problems with IE. Will
6318           eventually want to deprecate .hash and .dojoData, but for now
6319           they still
6320           function as before.
6321
6322 2010-11-12  miker
6323
6324         * Trim the set of classes and fields pulled in by Searcher; Cache
6325           the cmc data (cmf is too big)
6326
6327         * Cache the language set (per locale) in a cookie
6328
6329         * Backporting r18686 for great justice (and PCRUD speed)
6330
6331 2010-11-12  erickson
6332
6333         * in some scenarios, the 'mous' class may not have loaded yet.
6334           pre-load the class in myopac init
6335
6336 2010-11-13  dbs
6337
6338         * Merge translations from Launchpad
6339
6340 2010-11-15  dbs
6341
6342         * Do not cache the authority context menu
6343           
6344           Caching would be great, except when you add an authority in the
6345           flow and you expect to see it the next time you right-click
6346           on the authority that you just added.
6347
6348         * Fix negative paging issue in
6349           open-ils.supercat.authority.author.startwith
6350           
6351           When paging backwards through authority lists, we were skipping
6352           the
6353           first page of results. By reducing the offset by the value of one
6354           page, we restore the expected order.
6355           
6356           The same problem might affect other paging interfaces: to be
6357           determined.
6358           
6359           Closes Launchpad bug 669247
6360
6361         * Prevent creation of authority records that are truncated by one
6362           letter
6363           
6364           The summarizeField() function grabbed the values of the XUL
6365           elements,
6366           which were set by the keypress event listeners on the XUL
6367           elements.
6368           However, the keypress event listener seems to capture the value
6369           of
6370           the XUL element before the value of the new key is appended to
6371           the
6372           existing value in a textbox - so, when you typed a new subfield,
6373           then
6374           right-clicked to create an authority, the value that was captured
6375           was
6376           missing the final character.
6377           
6378           Adding the "input" event to the registered listeners captures the
6379           actual value for creating an authority and solves the problem. It
6380           might be possible to remove the keypress event listeners, but for
6381           now we'll take the cautious route.
6382           
6383           Address Launchpad bug 669445
6384
6385 2010-11-15  miker
6386
6387         * Reverting and extending r18472 to correct implementation thinko
6388
6389 2010-11-15  erickson
6390
6391         * make sure dojo.cookie is loaded before use; removed unnecessary
6392           import of dojoData
6393
6394 2010-11-15  senator
6395
6396         * Backport r18745 from trunk: serials ease-of-use issues
6397           
6398           It's comical how near a miss this commit is to making it into
6399           beta2, but it's
6400           fairly minor stuff.
6401
6402 2010-11-15  erickson
6403
6404         * return AutoIDL to its original state of loading the while IDL if
6405           no classes are selected. This will ease the process of moving to
6406           /IDL2js; other minor cleanup
6407
6408 2010-11-16  miker
6409
6410         * push the asset.uri pkey serial into reality -- before 2.0 we did
6411           not use the serial
6412
6413 2010-11-16  dbwells
6414
6415         * Backport r18760: small serial fixes
6416
6417 2010-11-17  gmc
6418
6419         * add libnet-ssh2-perl to Debian package deps
6420           
6421           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6422
6423 2010-11-17  miker
6424
6425         * pass the supplied depth parameter to the query parser for use
6426
6427         * 0 (zero) is a valid depth, so allow it via defined()
6428
6429 2010-11-17  dbs
6430
6431         * Add authority control support for 630 and 648 fields
6432           
6433           Thanks to Ole Kerpel <oke@iisg.nl> for providing the additional
6434           definitions for this support to bring us closer to MARC
6435           authority control norms.
6436
6437 2010-11-17  senator
6438
6439         * Hold targeting didn't work right on type I (issuance) holds, but
6440           now it does
6441
6442         * Backport r18762 from trunk:
6443           
6444           Wonder of wonders, a Dojo data store supporting lazy loading
6445           objects via pcrud!
6446           
6447           So openils.PermaCrud.Store was dreamt up and directed by Mike
6448           Rylander, and
6449           implemented by me. Right now it gives us a new way to provide
6450           widgets for
6451           selecting objects in Dojo-based interfaces.
6452           
6453           Where previously we had some dropdowns here and there that really
6454           shouldn't
6455           be dropdowns (such as one for selection lists in Acq, and several
6456           for resources
6457           and resource types in Booking -- these examples I've replaced,
6458           but there are
6459           surely more) because loading a dropdown with potentially zillions
6460           of items
6461           to choose from can take forever and break the interface, now we
6462           can have
6463           autocompleting textboxes that only load items matching what you
6464           type (and
6465           even then with a low-ish default limit so that if you're vague in
6466           your input
6467           you still don't get huge unwieldy result sets).
6468           
6469           Easiest way to see an example is if you already have any acq
6470           selection lists.
6471           Just go to any catalog record, choose Actions for this Record,
6472           choose View/Place
6473           orders, then click "Add to Selection List." In the resulting
6474           dialog, that
6475           second field used to be a dropdown, but now it's an
6476           autocompleting textbox.
6477           
6478           Alternatively, you can see these in the affected booking
6479           interfaces (see files
6480           modified in this commit) under Admin -> Server Administration ->
6481           Booking.
6482           
6483           The future promises even better things for this store. When it
6484           implements the
6485           Dojo Write API, interfaces using grids can potentially be vastly
6486           simplified
6487           by relying on the store to save its own dirty objects. The
6488           Notification API
6489           would facilitate easy use of single stores with multiple widgets.
6490           All good
6491           things for faster-to-write interfaces.
6492           
6493           ------------------------------------------------------------------------
6494
6495 2010-11-18  erickson
6496
6497         * Apparently, IE versions 6+ can handle ssl+keepalive. this apache
6498           change should help speed up IE w/ ssl and reduce server
6499           back-and-forth
6500
6501         * fetch more than the default 10 (per page) distrib formulas; 500
6502           is arbitrary, but still notably less than the infinity that was
6503           in effect before paging. todo: research optiosn for using the new
6504           autofieldwidget/dojo/pcrud-store instead
6505
6506 2010-11-18  gmc
6507
6508         * fetchItemByIdentity now returns null immediately upon null
6509           identity
6510           
6511           Besides being trivially more efficient, this avoids a situation
6512           where pcrud can sometimes time out when attempting to retrieve
6513           a row by a null PK value.
6514           
6515           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6516
6517         * use pcrud auto-complete widget when selecting providers
6518           
6519           Fixes general slowness working with invoice and PO forms if
6520           more than a couple hundred providers are defined.
6521           
6522           This could be generalized with a bit of work with Fieldmapper
6523           to define "has-one-chosen-by-user-from-cast-of-thousands"
6524           relationships that should trigger use the auto-complete widget.
6525           
6526           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6527
6528         * mark some non-NULL provider and EDI fields as required
6529           
6530           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6531
6532 2010-11-18  dbwells
6533
6534         * Replace deprecated use of window.opener in unit selection window.
6535
6536 2010-11-18  dbs
6537
6538         * Unbreak the Russian translation
6539           
6540           Ampersands at the end of msgstr entries break translate-toolkit
6541           but good.
6542
6543         * Stomp another ru-RU PO problem in lang.dtd
6544
6545 2010-11-18  gmc
6546
6547         * only allow choice from active providers when creating POs and
6548           invoices
6549           
6550           Also removed cusotm defaultLinkedDataLoader for the provider
6551           selection widget;
6552           no longer necessary since pcrud handles filter by OUs
6553           
6554           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6555
6556 2010-11-19  phasefx
6557
6558         * no one likes the persisting call number with fast add, not even
6559           me :)
6560
6561 2010-11-20  dbs
6562
6563         * Address maintain_control_numbers() database function bug #677160
6564           
6565           Jason Stephenson reported a bug handling records with multiple
6566           001 or 003 fields, and supplied a set of test records to
6567           reproduce the condition. The bug caused the ingest process
6568           to throw a database error, rolling back the transaction and
6569           preventing the actual ingest of those records.
6570           
6571           The solution was to simplify the logic in
6572           maintain_control_numbers().
6573           Now, in the case that there are either multiple 001s or 003s in
6574           the
6575           incoming record, we simply delete all of the 003s and 001s and
6576           create the desired 001 and 003. Also, if there are not exactly
6577           one
6578           001 and one 003 in the incoming record, we do not try to preserve
6579           one of those values in the 035 as it would be close to
6580           meaningless.
6581           
6582           Many thanks to Jason for the clear bug report and test cases!
6583
6584 2010-11-22  gmc
6585
6586         * hold targeter: add option to run parallel targeter processes
6587           
6588           Permit the hold targeter to divvy up the work and run more than
6589           one process
6590           at a time by setting the opensrf.xml setting
6591           hold_targeter/parallel to a
6592           value greater than one. Doing so can significantly reduce the
6593           time it takes to (re)target a large number of hold requests,
6594           although
6595           only up to a point (in other words, if increasing the number of
6596           parallel
6597           targeters beyond one, it is recommended to do so slowly.)
6598           
6599           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6600
6601         * parallel fine generator
6602           
6603           The fine generator cronjob can now use multiple
6604           parallel processes by setting fine_generator/parallel
6605           in opensrf.xml to a value greater than 1. This
6606           can speed up periodic fine generation in a database
6607           containing a large number of overdue loans.
6608           
6609           Also added a service to return just the list of
6610           IDs of overdue loans and reservations - fleshing
6611           the entire set of overdue loans when generating fines
6612           has been observed to cause significant swap-thrashing in
6613           at least one large database.
6614           
6615           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6616
6617 2010-11-22  miker
6618
6619         * add field to IDL needed by, well, a bunch of stuff:
6620           sstr-[has_many]->items
6621
6622         * more SuperCat XML fixup needed to support serials data --
6623           important for opac customization though BibTemplate (as in, "do
6624           not blow up")
6625
6626 2010-11-22  gmc
6627
6628         * bug #680096 - upgrade script to partially reingest bibs after
6629           upgrade to 2.0
6630           
6631           This solves the problem of the new facets sidebar showing up
6632           empty in
6633           OPAC search results. Since the process of populating
6634           metabib.facet_entry
6635           and updating metabib.*_field_entry can take a long time on large
6636           databases,
6637           the update SQL is generated by a separate script,
6638           reingest-1.6-2.0.pl. Usage
6639           from an example run is:
6640           
6641           ./reingest-1.6-2.0.pl: generate SQL script to reingest bibs
6642           during an upgrade to Evergreen 2.0
6643           
6644           By default, the script writes to the file reingest-1.6-2.0.sql.
6645           To modify
6646           this script's behavior, you can supply the following options:
6647           
6648           --config /path/to/opensrf_core.xml used to get connection
6649           information to
6650           the Evergreen database
6651           --chunk_size n number of bibs to reingest in a chunk;
6652           specify if you don't want all of the
6653           bibs in the database to be reindexes
6654           in a single transaction
6655           --output /path/to/output_file.sql path of output SQL file
6656           
6657           Writing output to file reingest-1.6-2.0.sql
6658           
6659           SQL script complete. To perform the reingest, please run the
6660           script using
6661           the psql program, e.g.,
6662           
6663           psql {connection parameters} < reingest-1.6-2.0.sql
6664           
6665           If you are running a large Evergreen installation, it is
6666           recommend that you
6667           examine the script first; note that a reingest of a large
6668           Evergreen database
6669           can take several hours.
6670           
6671           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6672
6673 2010-11-22  phasefx
6674
6675         * append to bottom of list for xul-based hold list interfaces. The
6676           result of this is that rows appended off-screen (with just the
6677           hold id) will not make a network request for fleshing until they
6678           either become visible, or a column sort action is initiated
6679
6680 2010-11-22  miker
6681
6682         * minor FeedTemplate bug fixes
6683
6684 2010-11-22  gmc
6685
6686         * fix missing dep that prevented acq bib search form from working
6687           
6688           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6689
6690 2010-11-23  gmc
6691
6692         * fix broken prefix and namespace URI for the mods32 transform
6693           
6694           This breakage can be found in databases that started out at
6695           version 1.2 or earlier; matters since in-DB ingest is stricter
6696           with its XPATH processing.
6697           
6698           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6699
6700 2010-11-23  senator
6701
6702         * Backport r18838 from trunk
6703           
6704           Serials: Fix error in batch receiving when trying to change the
6705           shelving
6706           location of the previous item in the stream when there /is/ no
6707           previous
6708           item in the stream
6709
6710 2010-11-24  dbs
6711
6712         * Add an index on asset.copy(create_date) for item-age browse
6713           
6714           Running an item-age browse against a database with a reasonable
6715           number of entries in asset.copy is dog-slow without an index
6716           like this.
6717
6718 2010-11-24  senator
6719
6720         * Backport r18845 from trunk
6721           
6722           Everything else in the menu is alphabetized (in English anyway),
6723           so Copy
6724           Template Editor may as well be too.
6725
6726 2010-11-24  dbs
6727
6728         * Add the asset.copy(create_date) index to the 1.6.1-2.0 update
6729           script
6730
6731 2010-11-28  dbs
6732
6733         * Address 1.6.1-2.0 upgrade problems reported by Ben Shum
6734           
6735           1. We were attempting to update the asset.uri ID sequence value
6736           with the wrong syntax; also, adding just 1 would return an error
6737           in the event that only the seed value for asset.uri had been
6738           inserted.
6739           
6740           2. Somehow the body of the maintain_control_numbers() function
6741           was pasted twice, resulting in a syntax error.
6742
6743 2010-11-29  phasefx
6744
6745         * merge r18841 from trunk for label interface bug
6746           https://bugs.launchpad.net/evergreen/+bug/677628
6747
6748 2010-11-29  miker
6749
6750         * Patch from Jeff Godin, backported from trunkified version:
6751           
6752           In the staff client, the holds context menu option "Edit
6753           PickupLibrary" displays and allows selection of org units that it
6754           shouldn't.
6755           
6756           Org units whose type has can_have_users = FALSE are not valid
6757           pickup locations.
6758           
6759           Using the default types as an example, CONS and SYS1 are invalid
6760           pickup locations.
6761           
6762           The OPAC enforces this when allowing patrons to edit a hold.
6763           
6764           The staff client does not enforce this when staff edit a hold.
6765           
6766           The can_have_users() method of the au object returns a string 't'
6767           or 'f' which is then compared to 0.
6768           
6769           The attached patch corrects this issue. ( foo == 0 becomes
6770           !isTrue(foo) ).
6771
6772         * logic error (inversion) in retargetting of previous copy when no
6773           other holds are looking at it
6774
6775 2010-11-30  gmc
6776
6777         * fix failure when attempting to create invoice
6778           
6779           Occurred for line items that were not part of a selection list
6780           
6781           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6782
6783         * straighten out triggers that maintain rmsr
6784           
6785           In particular, make sure that the old zzz_
6786           trigger on metabib.real_full_rec is completely removed, as
6787           it needlessly slows down bib ingest.
6788           
6789           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6790
6791 2010-11-30  phasefx
6792
6793         * menu entry for Admin->Server Administration->Acquisitions->Line
6794           Item MARC Attribute Definitions
6795
6796 2010-11-30  gmc
6797
6798         * specify default leader for acq brief bibs
6799           
6800           In particular, avoid fun that could ensue if the
6801           Leader/09 is not set to 'a'.
6802           
6803           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6804
6805 2010-11-30  dbs
6806
6807         * Enable GET params to be added properly in buildOPACLink()
6808           
6809           Symptom was that the "?l=#" parameter wasn't being added to the
6810           home screen "Advanced Search" link. Cause was that the
6811           dojo.addOnLoad(init) call was being made after the
6812           dojo.addOnLoad(home_init) call, which depended on globals being
6813           set by init(). This started happening when the JavaScript was
6814           shifted around in an attempt to kill the white screen of death.
6815           
6816           There may be other similar issues in other interfaces; keep
6817           your eyes open!
6818
6819 2010-11-30  gmc
6820
6821         * protect some of the supercat browse interfaces from unboundedness
6822           
6823           E.g., browsing from a call number that contains forward slashes,
6824           e.g.,
6825           
6826           "02/05/2004"
6827           
6828           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6829
6830 2010-11-30  dbs
6831
6832         * Clean up some of the Apache config mod_rewrite rules
6833           
6834           Thomas Berezansky suggested some improvements to the mod_rewrite
6835           rules in eg_vhost.conf on the -devel mailing list; this is a stab
6836           at correcting the most egregious problems.
6837           
6838           Tested with Zotero and unAPI still works; tested with the staff
6839           client and language-switching still works, as do the Conify and
6840           Vandelay interfaces. Seems reasonably good.
6841
6842         * Move Google Preview badge below the book cover image, if there is
6843           one
6844           
6845           There might be a more correct way to do this in CSS, but works++
6846           
6847           Also, give a little room between the images.
6848
6849 2010-11-30  gmc
6850
6851         * test case for minimum required version of Perl modules
6852           
6853           Encode > 2.12 particularly matters, but there are likely
6854           others of significance.
6855           
6856           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
6857
6858 2010-12-01  dbwells
6859
6860         * Assorted small serials fixes
6861
6862 2010-12-01  dbs
6863
6864         * Return the copy status name when a copy is not available
6865           
6866           It looks like the checkout operation used to return a fleshed
6867           config.copy_status object, but that changed and we now get a
6868           raw ccs ID back.
6869           
6870           Retrieve the status name using the ccs ID and present that
6871           to the users. Also, in case problems like this happen in
6872           the future, provide a more specific error message and var
6873           name so that it will be (hopefully!) a little clearer what
6874           payload was expected in the first place :)
6875           
6876           Resolves https://bugs.launchpad.net/evergreen/+bug/680575
6877           
6878           Thanks to Jason Etheridge for a major assist with this bug.
6879
6880 2010-12-02  phasefx
6881
6882         * copy/paste-o. Retrieve Patron in the patron log section of the
6883           Admin->Local Admin->Work Log uses the right list now
6884
6885 2010-12-03  miker
6886
6887         * Normalize spaces in notcontains advance search query terms to
6888           address bug https://bugs.launchpad.net/evergreen/+bug/677122
6889
6890 2010-12-03  senator
6891
6892         * Backport part of r18912 from trunk
6893           
6894           BibTemplate: make a couple of IE-friendly changes to BibTemplate.
6895
6896 2010-12-03  miker
6897
6898         * protect against empty control fields (bad MARC)
6899
6900         * The "All Subjects" index never made it into 1.6, so we need it in
6901           the upgrade script
6902
6903         * Moving bits around and protecting against a pre-existing
6904           subject|complete index definition that some sites have
6905
6906 2010-12-07  senator
6907
6908         * Backport r18931 from trunk
6909           
6910           Serials: When the fully compressed serial holdings are active in
6911           the OPAC,
6912           you get this "issues held" display with an expand/compress toggle
6913           that will
6914           either show you individual holdings (and allow you to place holds
6915           on them)
6916           or compressed holdings statements.
6917           
6918           The functionality existed in trunk before this commit, but this
6919           cleans it up
6920           and makes it better. It's more consistent with the the result
6921           detail table,
6922           it doesn't offer you the change to place holds on issues that
6923           don't have
6924           units (copy-equivalent objects), etc etc.
6925
6926 2010-12-08  dbwells
6927
6928         * Add a simple subfields_list() method to MFHD/Caption.pm to match
6929           that in Holding.pm
6930
6931         * Support for predicting serials with no chronology caption
6932
6933 2010-12-08  senator
6934
6935         * Backport r18800 from trunk (I thought I already had! r18932
6936           depends on it)
6937           
6938           Place holds on issuances from the OPAC. Also a couple very minor
6939           API
6940           documentation fixes.
6941
6942 2010-12-09  phasefx
6943
6944         * transit isn't in payload first time through with ROUTE_ITEM
6945           checkin, fallback on check.org
6946
6947         * big thinko. Going by the stock receipt template, this should be
6948           the workstation lib. Destination is handled by a different
6949           variable
6950
6951 2010-12-10  dbs
6952
6953         * Give the recent_changes list the ability to sort authority
6954           records correctly
6955           
6956           We were always sorting by bibliographic record entry, which does
6957           not
6958           work all that well for authority records.
6959
6960         * Return authority records for freshmeat when authority records are
6961           requested
6962           
6963           Previously, freshmeat was hardcoded to return bibliographic
6964           records, even
6965           when authority records were requested.
6966
6967 2010-12-10  miker
6968
6969         * Backporting r18957 from trunk:
6970           
6971           Fix two bugs:
6972           * Wide Character warning in authority.generate_overlay_template
6973           due to the generated template not being UTF-8 encoded internally
6974           * Correctly test the same space-normalization form of the pre-
6975           and post-strip records during the application of a replace rule
6976           in vandelay.replace_field
6977           
6978           This addresses https://bugs.launchpad.net/evergreen/+bug/687996
6979           for 2.0beta5
6980
6981         * Provide a mechanism to load any random JS file via
6982           dojo.require()-ish syntax.
6983           
6984           Why would we want to do such a thing, you might ask?
6985           
6986           Well, the short answer is that Firefox hates pages that have more
6987           than one script block (inline is worse than tag) that contains
6988           pre-onLoad XHR. So, this allows us to pull the actual loading of
6989           JS from the same domain as the page into an inline block. This
6990           allows us to eliminate the WSOD on FF by pulling all (dangerous)
6991           JS into a single, final inline block, after which we don't care
6992           if the DOMContentLoaded event fires -- that's when it should
6993           fire, structurally -- but in FF it may fire for a different
6994           reason (bug) than it should (fell of the end of the page in the
6995           rendering engine).
6996
6997         * Patch from James Fournie to address
6998           https://bugs.launchpad.net/evergreen/+bug/622908 wherein we learn
6999           that related item physical description might be used as the main
7000           PD of the main item, if the main item lacks such a field in the
7001           MARC
7002
7003         * bumping version numbers
7004
7005         * arg ... reverting version bump that got applied to the wrong
7006           branch
7007
7008 2010-12-13  erickson
7009
7010         * repaired order-by in update_hard_due_dates function to prevent
7011           sql errors
7012
7013         * repaired order-by in update_hard_due_dates function to prevent
7014           sql errors
7015
7016 2010-12-13  miker
7017
7018         * Backport of r18989: boolean test for hard due force flag
7019
7020 2010-12-13  gmc
7021
7022         * regularize spelling of "fulfill"
7023           
7024           Based on patch by Steve Callender
7025           
7026           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7027
7028 2010-12-13  senator
7029
7030         * Serials: simple bug in batch receive. Certain field values got
7031           treated
7032           like strings sometimes when they weren't. No more.
7033
7034 2010-12-15  miker
7035
7036         * Two bug fixes: 1) only allow one fine generator call per
7037           circulation during a given transaction; 2) require that a
7038           circulation be open, based on the xact_finish field, in order to
7039           be the parent of a renewal (I suspect this used to depend on the
7040           open-circ view)
7041
7042 2010-12-15  phasefx
7043
7044         * augment the useragent for the xulrunner staff client
7045
7046 2010-12-15  dbs
7047
7048         * Address the call number browsing performance problem raised in LP
7049           690242
7050           
7051           The ORDER BY clause currently generated by call number browsing
7052           does not
7053           have a sufficient index to use to assist the sorting of the
7054           returned rows,
7055           and consequently does a sequential scan of the asset.call_number
7056           table.
7057           Which, as you can imagine, is not fast for a system with more
7058           than a few
7059           thousand call numbers.
7060           
7061           This adds an index specifically to enable the query to go back to
7062           an
7063           index scan instead of a sequential scan. We can investigate
7064           whether other
7065           indexes should be removed to enable efficient data loading once
7066           we've
7067           squashed the sequential scan problem.
7068
7069 2010-12-16  senator
7070
7071         * Backport r18852, r19005 from trunk
7072           
7073           [18852] Serials: make some IDL changes and some changes to field
7074           order in an
7075           AutoGrid to support easier creation of working copy templates
7076           with serials.
7077           
7078           [19005] Serials: the circ_lib field on a copy template has no
7079           meaning in the
7080           only context where these copy templates are used, which is
7081           serials. Any
7082           copy-like objects that are created in serials have their circ_lib
7083           determined
7084           by distribution.holding_lib
7085           
7086           So remove the circ_lib from the interface.
7087
7088 2010-12-17  erickson
7089
7090         * dump() is a mozilla thing; use console.log instead
7091
7092 2010-12-17  dbs
7093
7094         * Do an equality test, instead of assigning a value
7095           
7096           Thanks to Bill Erickson for catching this; this fixes a bug where
7097           SuperCat requests would end up returning authority records
7098           instead of
7099           bibliographic records.
7100
7101 2010-12-17  senator
7102
7103         * Backport r19013 from trunk
7104           
7105           Thanks to Sally Fortin for drawing attention to this bug, wherein
7106           new
7107           Holding Subfields can't be created in this interface via the
7108           staff client.
7109           
7110           Acq: Tracked down a small but subtle bug with the Holding
7111           Subfield tab of
7112           the Provider editor interface.
7113           
7114           We apparently have a global variable "name" defined somewhere
7115           which, when
7116           assigned in place of an overrideWidget for an AutoGrid thanks to
7117           some vestigial
7118           code, ultimately causes an error from within AutoFieldWidget, if
7119           you're using
7120           the staff client. That's because name is the string
7121           "browser_browser" in the
7122           staff client, but if you access this interface from Firefox, name
7123           is apparently
7124           set to some value that evaluates to false in a boolean context,
7125           because
7126           AutoFieldWidget doesn't choke on it (the comparison at line 182
7127           of that file
7128           will return false).
7129
7130 2010-12-20  dbs
7131
7132         * Provide starting context for authority browse in MARC Editor
7133           context menu
7134           
7135           Using the browse interface instead of startwith provides a first
7136           page
7137           of results that shows some of the authority entries that precede
7138           the
7139           first alphabetical match for the chosen term. Context is good.
7140
7141         * Display the tag of the displayed authority record in MARC Editor
7142           context
7143           
7144           We currently display both 1xx and 5xx fields in the authority
7145           record,
7146           but do not display the tag. This can lead to some confusion when
7147           a 5xx
7148           field is actually present. Ergo, show the tag to disambiguate the
7149           fields
7150           in the authority browse selection interface.
7151
7152         * Display the tag and indicators for authority records in the merge
7153           box
7154           
7155           Also, avoid the risk of creating or stomping on global variables
7156           by
7157           using 'var' to declare our variables.
7158           
7159           Also, apply copyright statement for the International Institute
7160           of
7161           Social History. Thanks for sponsoring this contribution to
7162           Evergreen!
7163
7164         * Add an "Apply full authority" option to the MARC editor
7165           
7166           By definition, the only subfields that should be applied from an
7167           authority record to a bibliographic record are the complete set
7168           from the 1XX field of the authority record. So, rather than
7169           forcing
7170           the user to select the correct subfields from the chosen
7171           authority
7172           record, give them this handy shortcut to do the right thing.
7173           
7174           Also, add copyright / licensing header - hopefully accurate.
7175
7176 2010-12-20  senator
7177
7178         * Acq: In fund propagation and rollover, add amounts as numbers,
7179           not strings
7180
7181 2010-12-20  erickson
7182
7183         * protect against null orig-location resulting in depth=-1 searches
7184           after logout
7185
7186 2010-12-21  senator
7187
7188         * Acq: Fix a bug where upon PO activation, lineitems in the
7189           order-ready state
7190           would stay there, rather than progressing to the on-order state
7191
7192 2010-12-21  dbs
7193
7194         * Propagate merged authority record change to bibliographic record
7195           
7196           Launchpad bug 688015 reported that the merge of authority records
7197           resulted in the control number identifier in a controlled field
7198           in a bibliographic record changing to the right value, but the
7199           value of the field itself wasn't being changed.
7200           
7201           The problem turned out to be a confusion of the "source" and
7202           "target" values in the authority.merge_record() function. Once
7203           that was straightened out, the merge updated the controlled
7204           field as expected.
7205
7206         * Add line feeds to the output of org_tree_proximity.pl
7207           
7208           When another routine was appended to autogen.sh, the output
7209           was appended to the result string returned from
7210           org_tree_proximity.pl;
7211           adding a linefeed cleans that up.
7212
7213 2010-12-21  dbwells
7214
7215         * 'Bindery' item status rethink - this status should eventually be
7216           tracked at the unit level, not the item level.
7217
7218         * For making predictions, remove some debug/dead code, refresh the
7219           list.
7220
7221 2010-12-22  senator
7222
7223         * OPAC/Serials: small aesthetic change to render held issues more
7224           neatly
7225
7226 2010-12-23  miker
7227
7228         * allow vandelay.replace_field() to handle a complex field spec by
7229           splitting and looping; bringing 1.6.1-2.0 upgrade script up to
7230           date
7231
7232         * Patch from Nathanael Schilling protecting cstore/pcrud from
7233           no-search-param segfaults (with minor editorializing)
7234
7235 2010-12-23  gmc
7236
7237         * addressing two Breaker-format issues: 1) supply an "empty"
7238           (space) value for indicators in the internal format if they are
7239           left out and 2) add indicator placeholders to incoming Breaker
7240           datafield lines if they seem to be missing. Addresses
7241           https://bugs.launchpad.net/evergreen/+bug/693468
7242           
7243           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7244
7245         * When the subfield delimiter is configured as "$" (the default),
7246           use {dollar} to represent a literal dollar sign. This is
7247           apparently in line with other Breaker-format tools. Fix suggested
7248           by Galen Charlton, thanks gmc!
7249           
7250           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7251
7252         * commit 620f5d756619b84200add4c534a7cf22e1c0d037
7253           further fixes to null indicator handling in flat-text MARC editor
7254           
7255           [1] ensure that null indicators are converted to blanks
7256           [2] fix glitch when supplying default indicator values
7257           
7258           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7259
7260 2010-12-28  erickson
7261
7262         * refresh cached user during auth session reset
7263           
7264           Add a boolean (1/0) param to open-ils.auth.session.reset_timeout
7265           that forces open-ils.auth to refresh the cached user object.
7266           Useful if
7267           a column on actor.usr was updated and the client may be pulling
7268           the
7269           object from the cache w/ a page reload, etc.
7270           
7271           Signed-off-by: Bill Erickson <erickson@esilibrary.com>
7272
7273         * Update auth-cached user after payment
7274           
7275           After payment toward one's own account, reset the cached user
7276           object so
7277           that it will contain the latest last_xact_id value. This is
7278           necessary
7279           for supporting patron credit card payments in the catalog.
7280           
7281           Signed-off-by: Bill Erickson <erickson@esilibrary.com>
7282
7283 2010-12-29  dbs
7284
7285         * Towards a more useful authority delete confirmation pane
7286           
7287           Rather than simply creating a raw confirm dialogue that only
7288           provides the cataloguer with the ID of the authority record that
7289           is about to be deleted (not an especially useful handle), supply
7290           a confirmation dialogue that recaps how many bibliographic
7291           records
7292           are linked to this authority record and also displays the MARC of
7293           the record about to be deleted.
7294           
7295           Most authority records appear to be short enough that the MARC
7296           display is not a concern, but if it becomes a problem we can opt
7297           not to show the MARC by default and give the cataloguer the
7298           ability
7299           to click a "View MARC" button on the confirmation dialog instead.
7300           
7301           Along the way, make some more variables local and remove some
7302           unnecessary workarounds for object IDs.
7303
7304         * Enhance usability of authority record deletion dialogue
7305           
7306           Don't show the number of linked bib records unless it is
7307           a non-zero sum.
7308           
7309           Make "Cancel" the button with focus in the dialog, so that
7310           an errant press of the "Enter" key doesn't do the wrong thing.
7311           
7312           Trim space from the authority text in the display. Move the
7313           authority text from the dialog title to the contents of the
7314           dialog.
7315           
7316           Do not display the MARC for the authority record by default;
7317           add a "View MARC" button and toggle it to show/hide MARC.
7318
7319         * Invoke MARC editor with the appropriate control number identifier
7320           
7321           The control number identifier is most critical for the creation
7322           of authority records; given that the callers have the required
7323           context, have them pass in the control number identifier to the
7324           MARC editor. Edit MARC record, new MARC record, import MARC
7325           record;
7326           those have to be the big ones, right?
7327
7328         * Create authority records with meaningful cataloging agency values
7329           
7330           Hardcoded values in the 040 are problematic for sites that want
7331           to be a source of authority records; with the addition of another
7332           parameter to the
7333           open-ils.cat.authority.record.create_from_bib(.readonly)
7334           API, we can solve that problem. The callers of this API (the MARC
7335           editor)
7336           have access to the cat.marc_control_number_identifier OU setting,
7337           so as
7338           long as that is set correctly, problem solved.
7339
7340 2010-12-29  erickson
7341
7342         * Vandelay import repairs
7343           
7344           Disable OpenSRF response chunking on calls that respond with
7345           small,
7346           sparse status updates.
7347           
7348           Repaired some bugs with status reporting and changed the
7349           reporting style
7350           for queue imports to report more early in the import, then
7351           plateau.
7352           
7353           Added some fault-tolerance to record importing
7354           
7355           Signed-off-by: Bill Erickson <erickson@esilibrary.com>
7356
7357         * at po activation time, apply the provider's default claim policy
7358           to each lineitem when no policy is already applied
7359           
7360           Signed-off-by: Bill Erickson <berick@esilibrary.com>
7361
7362 2010-12-30  phasefx
7363
7364         * fix a bug with standing penalties and the stop sign page. We
7365           still have a race condition where the stop sign page may not
7366           show, and this seems to happen when multiple patrons are
7367           retrieved at once from a patron search.
7368
7369         * Never do money math as anything but pennies I tell you. :-) Three
7370           $0.60 transactions run through check-in were showing a running
7371           tally of $1.79 instead of $1.80.
7372
7373 2011-01-04  senator
7374
7375         * Acq: backport r19040 and r19094 from trunk
7376           
7377           [19040] Acq: support manual claiming as always intended, which to
7378           some users
7379           means claiming with no predefined policy
7380           
7381           [19094] Acq: Make manual lineitem claiming work better. When a
7382           claiming policy
7383           has not been applied, users can now choose claim actions manually
7384           (this is what
7385           a claiming policy would have specified).
7386
7387 2011-01-04  miker
7388
7389         * Patch from Jason Stephenson to silence spurious warnings:
7390           https://bugs.launchpad.net/evergreen/+bug/695510
7391
7392         * oils_xpath_table was too strict about field nullness -- we need
7393           /some/ data, not /all/ data, to be present
7394
7395 2011-01-04  erickson
7396
7397         * cleaned up vestigal item import API call; repaired some faulty
7398           assumptions in vandelay UI regarding which types of import to
7399           attempt based on user input
7400           
7401           Signed-off-by: Bill Erickson <berick@esilibrary.com>
7402
7403 2011-01-04  miker
7404
7405         * Addressing https://bugs.launchpad.net/evergreen/+bug/696078 where
7406           deleted/inactive records are included in the freshmeat feed.
7407
7408 2011-01-04  erickson
7409
7410         * mixing use of '/' and '/eg' for the auth cookie path is creating
7411           complications; fall back to '/', which is the assumption from
7412           most EG code
7413           
7414           Signed-off-by: Bill Erickson <berick@esilibrary.com>
7415
7416 2011-01-04  dbs
7417
7418         * Improve see from / see also handling in MARC editor authority
7419           menu
7420           
7421           (Backporting r19091 and r19092 from trunk)
7422           
7423           The 2.0-style authorities use a browse menu that currently
7424           consists
7425           of matches against the 1XX entries, which makes working with see
7426           from /
7427           see also entries rather difficult. To prepare for an authority
7428           browse
7429           method that does surface matches against 4xx and 5xx entries, we
7430           will
7431           now display the 4xx and 5xx entries for a given authority record
7432           immediately below the 1xx entry in the browse menu, with the
7433           entry
7434           text italicized, aligned to the right, and prefixed with "See
7435           also" or
7436           "See from" appropriately. This won't provide a perfect
7437           alphabetized
7438           solution - we won't know which field provided the alphabetical
7439           browse
7440           match, so the best we can do is present the 1xx in the main
7441           browse
7442           menu and the 4xx / 5xx below - but it will provide access to the
7443           other
7444           references.
7445           
7446           We now display the 4xx fields in the authority summary / selector
7447           menu
7448           along with the 5xx fields. As part of making the 4xx and 5xx
7449           fields
7450           first-class entries in the context menu, 5xx subfields are no
7451           longer
7452           appended to their 1xx field menu entry with a "/" in the context
7453           menu.
7454           
7455           $0 subfields are no longer added to the 4xx and 5xx fields from
7456           the
7457           authority summary / selector menu; if a user had selected a 5xx
7458           and the
7459           $0 that had been added by the menu, the field would have
7460           incorrectly been
7461           linked to the 1xx authority record. To link to a 5xx entry, for
7462           now the
7463           workaround is for the user to select the 5xx subfield(s), "Apply
7464           Selected",
7465           then right-click on the new subfield to generate a new authority
7466           context menu.
7467           To improve the 5xx handling, we need to make the "See also" entry
7468           fire a new
7469           authority context menu based on the 5xx contents so that the
7470           actual 1xx
7471           authority record can be inserted and linked against.
7472           
7473           Consider an authority record containing the following fields:
7474           
7475           150 $a Infants
7476           450 $a Babies
7477           550 $a Children
7478           
7479           The ASCII-ized authority context menu will now display:
7480           
7481           Infants ->
7482           See from: Babies ->
7483           See also: Children ->
7484           
7485           The submenu in each case will currently lead to the authority
7486           record
7487           for "Infants". If we teach the underlying authority browse and
7488           startswith
7489           methods to return matches based on 4xx and 5xx fields instead of
7490           just 1xx
7491           fields, then the menu triggered by a right-click on "Childs"
7492           might look
7493           like:
7494           
7495           Chickens ->
7496           Infants ->
7497           See from: Babies ->
7498           See also: Children ->
7499           Choking ->
7500           
7501           The main entry will be out of alphabetical order, which is not
7502           ideal,
7503           but the linkage from the 5xx should at least be evident. (Also,
7504           this
7505           suggests that when clicking on a 5xx entry in the authority menu
7506           is
7507           changed to launch a new authority menu, it should use the
7508           1xx-only
7509           browse variant to avoid showing the record from which the user
7510           was
7511           referred...)
7512
7513         * Internationalize the JavaScript portion of the "Manage
7514           Authorities" interface
7515           
7516           We can use the dojo i18n infrastructure to support translations
7517           of the
7518           "Manage Authorities" interface, but unfortunately we still don't
7519           have
7520           a TT2 solution for i18n. Still, better to do what we can.
7521
7522         * Clean up marc_export and teach it how to export (all) authority
7523           records
7524           
7525           The new "--type" parameter enables users to specify "authority"
7526           and have the expected result.
7527           
7528           Add an "--all" option to marc_export and silence some warnings
7529           
7530           Rather than forcing users to generate a set of record IDs using a
7531           separate process, the --all option enables to to export all
7532           records
7533           of the specified type. Note that the approach is basic: grab the
7534           record with the highest ID, then start at ID 0 and count up by 1
7535           while trying to retrieve each record along the way. While this
7536           will
7537           undoubtedly generate plenty of warnings for deleted records or
7538           gaps
7539           in the ID sequences, the alternative of retrieving an ID list for
7540           potentially millions of records in large Evergreen instances
7541           wasn't
7542           appealing.
7543           
7544           Some other refactoring and fixes:
7545           
7546           Three large chunks of code were factored out into subroutines to
7547           make it a little easier to read the main flow of the code.
7548           
7549           As we explicitly call uc() on the $format input parameter
7550           to begin with, we don't have to call it subsequently.
7551           
7552           If a requested ID did not exist in the database, then
7553           the script would die; now we trap and flag that error but
7554           continue to fulfill subsequent requests.
7555           
7556           The --money parameter is now documented in the help, and
7557           the help has a brief overview that describes (poorly) the
7558           expected format for the list of IDs.
7559           
7560           An uninitialized variable error when exporting BRE format
7561           records was squashed.
7562           
7563           Also, $count{did} and $count{bib} resulted in uninitialized
7564           variable
7565           warnings if no records were actually exported, so initialize them
7566           to 0.
7567
7568 2011-01-05  dbs
7569
7570         * Finish adding authority.js to i18n Makefile
7571           
7572           Forgot to add some crucial bits in the extensive copy and paste
7573           effort that's required to add another file to the i18n build.
7574           Sigh. Rewrites welcome! And sorry for leaving this trap for
7575           you to fall into, miker.
7576
7577 2011-01-05  erickson
7578
7579         * roll back xact in set_item_lost when copy is alrady marked lost
7580           and we exit the sub; if caller passes an event to
7581           editor->die_event, capture it as the editor's last event
7582           
7583           Signed-off-by: Bill Erickson <berick@esilibrary.com>
7584
7585 2011-01-05  dbs
7586
7587         * Perhaps naive method of bumping existing custom
7588           config.metabib_field entries
7589
7590 2011-01-05  dbwells
7591
7592         * Unify some summarization code in preparation for further
7593           development.
7594
7595 2011-01-07  senator
7596
7597         * Backport r19134 from trunk
7598           
7599           Acq: fix prorating bug
7600           
7601           When prorating, the system decides what funds to target by
7602           looking at what
7603           funds have already been spent against. Previously, the system
7604           only looked at
7605           acqie objects, but an invoice can also be composed of acqii
7606           objects.
7607
7608         * Backport r19137 from trunk
7609           
7610           Make openils.PermaCrud.Store use a default order_by clause in
7611           common situations
7612           
7613           This avoids an issue where, using a FilteringSelect dijit,
7614           sometimes you type a
7615           couple letters, let's says "ABC", and you get a set of matches
7616           like this:
7617           
7618           "ABCDE"
7619           "ABCD"
7620           "ABC"
7621           
7622           just because there happens to be no specific ordering. If you
7623           click the ABC
7624           match and tab away too quickly, the dijit will reset itself to
7625           the first match,
7626           "ABCDE". This is probably a Dojo/Dijit bug, as I've been able to
7627           duplicate the
7628           problem with other stores, but that's all murky.
7629           
7630           This avoids the issue by making sure the shortest match is at the
7631           top of the
7632           list.
7633
7634 2011-01-10  dbs
7635
7636         * Set explicit library versioning for Evergreen 2.0 to 2:0:0
7637           
7638           This should help for anything linking to core Evergreen
7639           libraries;
7640           as we revise the -version-info number, anything that links
7641           against
7642           the core Evergreen libraries will quickly scream if we rev the
7643           interface number without specifying via the age number that
7644           previous
7645           interfaces are still supported. Let's remember to revise it
7646           accordingly!
7647           
7648           Also remove redundant linkage to oils_idl.
7649
7650         * Clean up c-apps Makefile.am and make everything load cleanly
7651           again
7652           
7653           Executable programs don't have library versions, so don't set
7654           -version-info
7655           for them.
7656           
7657           Add -version-info to liboils_idl and liboils_util, and link
7658           liboils_util
7659           explicitly against liboils_idl rather than relying on AM_LDFLAGS.
7660           
7661           Set the linking dependencies correctly; if a library links
7662           against
7663           liboils_util, set that as the sole link dependency; no need for
7664           liboils_idl
7665           once (let alone twice!)
7666
7667 2011-01-10  erickson
7668
7669         * avoid fetching user settings for new user registration; the
7670           result of fetching settings with a null user id is that settings
7671           of the staff/editor were fetched instead, leading to settings
7672           that appeared to selected, but were not saved during submit
7673
7674 2011-01-10  dbwells
7675
7676         * Additional code unification; add 'reset item' capability to
7677           unitize_items()
7678
7679 2011-01-11  dbs
7680
7681         * Backport authority browsing fixes from trunk
7682           
7683           Primary fix is to remove duplicate records from the results
7684           when dupes are returned due to similar 1XX/4XX/5XX values in
7685           the same records.
7686
7687 2011-01-11  erickson
7688
7689         * repaired pending-order vs order-pending thinko. Thanks to Kathy
7690           Lussier and Mike R. for the diagnosis
7691
7692 2011-01-11  phasefx
7693
7694         * fix regression with org selector when specifying ?ol= and the org
7695           unit hiding setting is unset
7696
7697 2011-01-11  gmc
7698
7699         * allow deletion of incomplete invoice LIs
7700           
7701           Fix silent failure when attempting to delete a LI
7702           whose type or cost was not set; dojo.string.subtitute
7703           does not like replacement values to be null.
7704           
7705           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7706
7707 2011-01-12  gmc
7708
7709         * allow data entry of negative currency amounts
7710           
7711           Plug in fix for Dojo bug http://bugs.dojotoolkit.org/ticket/9438,
7712           which
7713           was preventing the input of discounts and credits during invoice
7714           creation.
7715           
7716           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7717
7718 2011-01-12  dbs
7719
7720         * Backport fixes for custom indexes in the database schema during
7721           1.6.1-2.0 upgrade
7722           
7723           r19133 and r19136 provide more sophisticated, working handling of
7724           custom
7725           indexes during the 1.6.1-2.0 database schema upgrade.
7726
7727 2011-01-12  gmc
7728
7729         * AutoFieldWidget no longer uses CurrencyTextBox dijit
7730           
7731           NumberTextBox used instead to work around problem with
7732           CurrencyTextBox's support for negative monetary amounts
7733           in Dojo 1.3. See https://bugs.launchpad.net/evergreen/+bug/702117
7734           
7735           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7736
7737 2011-01-12  dbs
7738
7739         * Deprecate overdue/predue config sections in favour of
7740           action/trigger
7741           
7742           Set email notification to "false" for holds, overdues, and
7743           predues.
7744           
7745           Fix one line of whitespace.
7746
7747         * Add Net::SSH2 to the prereqs as the libnet-ssh2-perl package is
7748           not on Debian Lenny
7749
7750 2011-01-14  dbs
7751
7752         * Enable truncation attribute in Z39.50 queries to be left out
7753           entirely
7754           
7755           Per https://bugs.launchpad.net/evergreen/+bug/702695, some Z39.50
7756           servers hate the truncation attribute (@attr 5=anything) and
7757           always
7758           return 0 hits.
7759           
7760           This gives you the ability to specify a negative value for the
7761           truncation attribute and thereby prevent the truncation attribute
7762           from being included in the Z39.50 query for a given server.
7763
7764 2011-01-15  dbwells
7765
7766         * Postpone advanced serial call-number handling until after 2.0
7767           
7768           Sharing of a single call-number for multiple volumes, while well
7769           intentioned, was not ready for primetime for various reasons.
7770           This commit:
7771           1) harmonizes and unifies call-number handling in Serial.pm,
7772           sticking with current practices
7773           2) adds a very basic and now necessary prompt to the Serial
7774           Control view
7775
7776 2011-01-17  erickson
7777
7778         * default ordering-agency org unit to workstation org in PO create
7779           dialog
7780
7781 2011-01-17  dbwells
7782
7783         * In serial control, if they defined a *_call_number, honor it as
7784           the default
7785
7786 2011-01-18  dbwells
7787
7788         * Auto-generation of placeholder barcodes approved for backport
7789
7790 2011-01-18  erickson
7791
7792         * user saved searches are only accessible to the originating user;
7793           remove (incorrect) permacrud config for usr_saved_searches
7794
7795 2011-01-18  gmc
7796
7797         * fix glitch that could break invoice proration
7798           
7799           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7800
7801 2011-01-18  dbwells
7802
7803         * Protect against blank and invalid scap IDs in issuance editor
7804
7805 2011-01-19  dbs
7806
7807         * Avoid escaping issues in authority.normalize_heading() by
7808           parameterizing the query
7809           
7810           Long story short: MARC subfield values containing backslashes
7811           caused noise
7812           and in some cases painful errors. Using
7813           spi_prepare/spi_exec_query is the
7814           safest way of handling escaping, rather than adding more regexes
7815           and munging
7816           the data before it even gets to naco_normalize().
7817           
7818           Most painful case was <subfield code="a">Foo, Bar\</subfield> -
7819           the trailing
7820           slash ended up escaping the enclosing single quote (because
7821           PostgreSQL isn't
7822           configured by default with strict conformance to SQL escaping
7823           rules yet) and
7824           threw an error.
7825
7826 2011-01-19  gmc
7827
7828         * backport naco_normalize revisions to rel_2_0
7829           
7830           This implements the latest version of the NACO
7831           normalization specification found at
7832           
7833           http://www.loc.gov/catdir/pcc/naco/SCA_PccNormalization_Final_revised.pdf
7834           
7835           This version of the algorithm is more general -- for example,
7836           all combining characters are removed -- so there should be
7837           fewer fiddly edge cases to worry about for most European
7838           languages.
7839           
7840           Rebuilding the metabib.*_field_entry tables (e.g., by using
7841           reingest-1.6-2.0.pl) is recommended if there are any bibs that
7842           contain
7843           any non-ASCII characters.
7844           
7845           Normalized text is now left in the NFKD form, so while this
7846           should
7847           be transparent to the search system after reindexing, it does
7848           mean
7849           that (for example) Korean text in metabib.*_field_entry may not
7850           be in the same Unicode normalization form as that found in
7851           biblio.record_entry.
7852           
7853           Also includes fix for bug #684467: more bulletproofing of
7854           naco_normalize
7855           
7856           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
7857
7858 2011-01-19  miker
7859
7860         * Build and flatten a tree, correcting a sorting issue in some OU
7861           dropdowns.
7862           
7863           The previous code assumed that work org units would be delivered
7864           in hierarchical order, but alas, they are not. Thus, we build the
7865           hierarchy and then flatten it, sorting at each level. This will
7866           be non-fast with many work OUs, but the common case is a small
7867           set, which is not painful.
7868           
7869           Further improvement is warranted when the above proves false.
7870
7871 2011-01-19  senator
7872
7873         * Backport r19214 from trunk
7874           
7875           Booking: Robert Soulliere spotted and fixed a bug in processing
7876           reservation-
7877           related overdue fines. See
7878           https://bugs.launchpad.net/evergreen/+bug/705061
7879
7880 2011-01-19  phasefx
7881
7882         * let amnesty checkin mode trump the restore overdues on lost
7883           checkin setting
7884
7885 2011-01-19  erickson
7886
7887         * remove disallowed permission groups from the perm group selector
7888           in user registration; see bug 699914
7889
7890         * if this user does not have permission to edit an existing user,
7891           disable the save and clone buttons
7892
7893 2011-01-20  senator
7894
7895         * Backport r19229 from trunk
7896           
7897           Booking: these lines don't belong; they were erroneously copied
7898           and pasted
7899           from a neighboring section of the file
7900
7901 2011-01-20  phasefx
7902
7903         * don't offer to cancel related transits that have already
7904           completed when canceling holds
7905
7906 2011-01-20  senator
7907
7908         * Backport r19239 from trunk
7909           
7910           Acq: use the acqlimad table instead of its ancestor acqliad table
7911           to
7912           populate a dropdown for the Export Single Attribute List function
7913           of lists
7914           of lineitems
7915           
7916           The acqliad table may appear to have duplicate entries since it's
7917           a parent, and
7918           the point of the function that's trying to use it is just to
7919           export lists of
7920           ISBNs or UPCs, so acqlimad is a better fit.
7921
7922         * Backport r19241 from trunk
7923           
7924           Acq: the "Load Catalog Record IDs" interface failed on files
7925           produced in
7926           Windows due to not stripping out carriage returns. Fixed.
7927
7928 2011-01-21  dbs
7929
7930         * Towards a more secure default setup
7931           
7932           Shipping with a default account user name and password is
7933           considered
7934           an authentication anti-pattern; see
7935           http://code.google.com/p/owasp-development-guide/wiki/WebAppSecDesignGuide_D2
7936           
7937           By making the user select an admin user name and password at the
7938           time
7939           they create the database, we avoid the chance that they will
7940           forget to
7941           change the default password and leave their system open to
7942           access.
7943           
7944           Next step is to change the seed data to insert random values for
7945           the
7946           admin username and password, then update the documentation
7947           accordingly.
7948
7949         * Part 2 of creating a more secure default setup
7950           
7951           With this commit, the user name and password for the
7952           administrative
7953           user will be MD5 hashes of a random string of numbers. You can
7954           set
7955           the user name and password to your liking using the --admin-user
7956           and
7957           --admin-pass switches for eg_db_config.pl (this will be the
7958           documented method in the install docs) or via straight SQL as:
7959           
7960           UPDATE actor.usr SET usrname = 'FOO', passwd = 'BAR' WHERE id =
7961           1;
7962
7963         * Part 3 of a more secure default set up
7964           
7965           With this commit, the hardcoded default barcode is replaced by an
7966           MD5 hash of a random string of numbers, preventing the barcode
7967           from
7968           being used as a known login name in the OPAC interface (which
7969           would
7970           remove one of the factors required in a brute forcing of the
7971           account
7972           credentials).
7973           
7974           You probably don't want to change the barcode for the admin user,
7975           but if you feel the need you can use the usual patron editor in
7976           the staff client.
7977           
7978           Thanks to Thomas Berezansky for suggesting this additional
7979           change.
7980
7981 2011-01-21  miker
7982
7983         * Move to the prettier and more useful Laurentian local call number
7984           display code as the example
7985
7986 2011-01-21  dbs
7987
7988         * Avoid hard-coded location IDs for displaying library / call
7989           number / copy location /copy status
7990           
7991           Also use marcxml-full to get the copy location opac visibility
7992           attribute,
7993           and remove the "hide_me" attribute to make the results visible by
7994           default.
7995
7996 2011-01-21  miker
7997
7998         * slimpac issue where deleted copies are visisble, spotted by Steve
7999           Callendar and Jason Etheridge
8000
8001 2011-01-21  dbs
8002
8003         * Use holdings_xml-full for the copy display
8004           
8005           Less to munge and transfer over the wire = win win win!
8006
8007         * Protect against volumes with many copies attached
8008           
8009           Bill Erickson has good data for testing these cases.
8010
8011 2011-01-22  gmc
8012
8013         * handle deleting line item from selection list more carefully
8014           
8015           Once a line item is attached to a purchase order, removing it
8016           from a selection list should mean detaching it from the list,
8017           not deleting it outright.
8018           
8019           The open-ils.acq.lineitem.delete method can be removed
8020           once the old jubgrid code is finally purged.
8021           
8022           Signed-off-by: Galen Charlton <gmc@esilibrary.com>
8023
8024 2011-01-23  miker
8025
8026         * correct XPath attribute test syntax
8027
8028 2011-01-24  miker
8029
8030         * Fix for spurious warning (LP bug #707114)
8031
8032 2011-01-24  dbs
8033
8034         * i18n support for a few OPAC strings
8035           
8036           Enable translation of the "More copies listed in full record
8037           details"
8038           message for the search results library / call number / item
8039           /status
8040           lines
8041           
8042           Also provide translation support for the hold queue status
8043           message,
8044           including singular / plural variants (most languages do not
8045           provide
8046           the equivalent of the "item(s)" idiom in English).
8047           
8048           Instead of burying the display of hold queue status with a hard
8049           coded "if (false)" test, turn it into a top-level variable for
8050           a bit more exposure.
8051
8052         * Updated POT from a recent checkout and "make newpot" of 2.0
8053
8054 2011-01-24  dbwells
8055
8056         * Correct for over-zealous sdist editor field display code
8057
8058         * Expose (in a very basic way) existing serial item reset
8059           functionality, fix small bug in reset code (resetting an item
8060           with no unit)
8061           
8062           Apologies in advance if this shouldn't be backported at this
8063           point, but from my perspective, it is both high-value and
8064           low-risk.
8065
8066 2011-01-25  dbs
8067
8068         * Fix existing serial entities that didn't provide .label partners
8069           for .accesskey
8070           
8071           The translate-toolkit project generates a POT file from an input
8072           DTD
8073           that requires entities ending in .accesskey to have a
8074           corresponding
8075           .label entity; this is a Mozilla convention for localization. Fix
8076           up
8077           the serial interface strings that are localized to match this
8078           expectation.
8079           
8080           Also remove two duplicate entities in lang.dtd that were flagged
8081           by
8082           the build/i18n/tests/check_entities.py script (and which cause
8083           Launchpad
8084           translation imports to break).
8085
8086         * Replace a few hardcoded strings in the serials JavaScript
8087           
8088           There is, unfortunately, an awful lot of this left to fix.
8089
8090         * Teach the i18n Makefile how to handle serial.properties
8091           
8092           Also check in the POT for serial.properties and some other
8093           foobar.label matches for foobar.accesskey (does not have
8094           an effect on properties files but hopefully if we're
8095           consistent then the pattern will be evident for entities).
8096           
8097           Noting in passing that there are a number of "foobar(s)"
8098           comined singular/plural labels that should be split to
8099           support translation.
8100
8101 2011-01-25  dbwells
8102
8103         * Small serial interface string fixes
8104
8105 2011-01-25  phasefx
8106
8107         * backport 19287 for button bar image tweaks, courtesy of Michael
8108           Peters
8109
8110 2011-01-25  dbwells
8111
8112         * Translation string in manage_dists.js : right problem, wrong fix
8113
8114 2011-01-25  phasefx
8115
8116         * mark this as binary
8117
8118         * fix the svn:mimetype properties for these
8119
8120 2011-01-25  dbwells
8121
8122         * This menu was for a different tab (subscriptions), comment out
8123           for now
8124
8125         * Fix broken stream functions, re-enable commented-out menu with
8126           correct options
8127
8128         * Backport r19288 : twice tested, thrice approved
8129           
8130           This change was confirmed to work at two test sites, and also
8131           passed a berick eyeball test. Would always be nice to have
8132           more...
8133
8134 2011-01-26  dbwells
8135
8136         * Clear out some unused code, which in some cases was causing
8137           "command bleed"
8138
8139         * Open-ILS/xul/staff_client/server/locale/en-US/serial.properties
8140
8141 2011-01-26  miker
8142
8143         * .: 2.0.0 for realz, yo!
8144           
8145           (For Grace)
8146