* tweak wording for ui.circ.suppress_checkin_popups setting so that it sorts better
* suppressing alerts/dialogs based on setting
* auto_override_these_events option for util.network
* use auto_override_these_events during checkin based on setting
org unit setting for suppressing alerts/popups during checkin--will indicate these events some other way if true. Commiting now so as to not tie up upgrade_log
Rework clear_hold_shelf process so that it looks for eligible holds for the cleared copies after the transaction updating the existing holds and copies has committed. Also fixed the copy_status test so that Available works as a value for circ.holds.clear_shelf.copy_status
senator [Tue, 13 Apr 2010 20:17:55 +0000 (20:17 +0000)]
Acq: add search-by-file-of-terms to unified search
This feature was present in the now deprecated lineitem search interface.
It works, but it is severely limited at the moment in the number of search
terms you can use, because search queries are made into URIs before the
search actually happens (in order to make backing up to old search results
possible), and at a certain point, very large URIs become infeasible.
Some adjustments to how search history is made naviagable may be in order.
tweaks to <help> widget to support non-chrome help content with chrome <help> widgets, and wiring it up into a generic Help button for embedded browser based interfaces
Reworking the <help> widget to add more hooks for localized/custom content, and a @pathname attribute for overriding the location.pathname value used to derive URL's for content.
Current behavior:
This widget will try to load help content from various static and dynamic URL's, stopping at the
first one that it finds. Given an example location.href of '/xul/server/patron/display.xul' and
a @src of 'foo.html', it will check these URL's in this order:
dijits that are marked as 'required' will show render with the invalid dijit styling when no data is present during page render. The previous behavior was to only style the invalid widgets after the user had focused the widget and left invalid data in the widget. this way users can see at page load if a field is required
XBL for a <help> widget. It will try to load help content from various static and dynamic URL's, stopping
at the first one that it finds. If for example, I were to add this to /xul/server/patron/display.xul:
<help id="bar" src="foo.html" />
We would get a "Help" button that if clicked would then it would test these locations:
foo.html (if @foo not set, then custom_help.html)
/xul/server/patron/display.xul.help.html
/xul/server/patron/help.html
/xul/server/help.html
/xul/help.html
/help.html
and since @id is defined, it would also tack on ?id=bar (for log tracking and/or dynamic use by the content).
It will open the location in a non-modal pop-up window. Navigation buttons not included.
MAYBE TODO:
Add an @anchor for dynamically appending a hash component to each URL tested.
Implement a browser with Back/Forward/Search/Index functionality.
Turn "next page" / "previous page" symbols into entities
Makes it easier for sites to customize this aspect of the look and feel of their skins if they support multiple languages.
This patch adds additional calls to escape_xml to handle cases where patron or library data could contain ampersand or other characters that need to be converted to entities. Issue discovered by Bibliomation; patch includes contributions by Ben Ostrowsky.
move a couple of heavily hit calls from open-ils.storage to open-ils.cstore. removed now-unnecessary xact begin/rollback (handled w/ authoritative via CStoreEditor)
Restore the ability to set the maximum flesh depth by an entry
in the configuration file. This ability was inadvertently
eliminated in the previous commit.
M Open-ILS/include/openils/oils_sql.h
M Open-ILS/src/c-apps/oils_pcrud.c
M Open-ILS/src/c-apps/oils_rstore.c
M Open-ILS/src/c-apps/oils_cstore.c
M Open-ILS/src/c-apps/oils_sql.c
senator [Fri, 9 Apr 2010 20:27:50 +0000 (20:27 +0000)]
Acq: Improved invoice-linking and -viewing features in LI, PO interfaces
Additional miscellany: removed menu entries for deprecated lineitem search
interface, added uniqueness constraint around (provider, inv_ident) on the
acq.invoice table, and made subtle improvements to unified search interface
when amount paid exceeds amount billed, disable save/prorate buttons and style the amount paid box. if either paid/billed are < 0, style their respective boxes
moved entry and item updating into the main
CUD call for consistency.
making use of amount_paid
remove .process call in favor of a specific prorate call
prorate the cost billed as well
Adding amount_paid columns to acq.invoice_item, acq.invoice_entry.
M Open-ILS/src/sql/Pg/200.schema.acq.sql
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0231.schema.acq-inv-amt-paid.sql
M Open-ILS/examples/fm_IDL.xml
Wire up the Clear Shelf functionality into the Hold Shelf Browser.
The button for this enables when the View Expired On-Shelf Holds checkbox is activated. The Clear Shelf process will cancel these holds, optionally set the status for the affected items according to an org unit setting, and report back the needed actions for the affected items.
TODO: the ML clear_shelf_process method needs fixing where it's jumping to storage within a transaction
Add three columns to acq.invoice, plus a
new table acq.invoice_payment_method.
M Open-ILS/src/sql/Pg/200.schema.acq.sql
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0230.schema.acq-inv-pmt-method.sql
M Open-ILS/examples/fm_IDL.xml
senator [Thu, 8 Apr 2010 20:58:50 +0000 (20:58 +0000)]
Acq: you can now back up to old search results
This works by changing what actually happens when you click "Search."
Instead of running your search instantly, the search interface turns your
search into URL parameters and redirects you. This way you get a new entry
in your browser history (much as if you were doing a non-AJAX search).
When the search interface is run with these URL paramters, it actually runs
the search and shows you the results. This has the added benefit of
allowing other interfaces to link to prepopulated searches, and potentially
giving users a way to save searches in the future.
implemented invoice processing to updating encumbered funds (for invoice_entry's) and ad-hoc charges, and prorating fees/taxes, etc. (aka invoice_items)
Most of the machinery is now in a single module, oils_sql.c, shared
by all three servers, and available to other programs as well
through the new header oils_sql.h.
The three different servers -- pcrud, cstore, and reporter-store --
are now in separate modules, whose differences are built-in rather than
controlled by conditional compilation. The original file, oils_cstore.c,
now implements only the cstore server. The other two are now
implemented by oils_rstore.c and oils_pcrud.c.
The test_json_query program now calls functions from oils_sql.c instead
of from oils_cstore.c.
This restructuring required changes to configure.ac and to
Makefile.am in order to regenerate the Makefile appropriately.
M configure.ac
A Open-ILS/include/openils/oils_sql.h
A Open-ILS/src/c-apps/oils_pcrud.c
A Open-ILS/src/c-apps/oils_rstore.c
M Open-ILS/src/c-apps/oils_cstore.c
A Open-ILS/src/c-apps/oils_sql.c
M Open-ILS/src/c-apps/Makefile.am
M Open-ILS/src/c-apps/test_json_query.c
implemented create/save logic
Show PO link for newly attached lineitems
use autofieldwidget everywhere
implemented item/entry delete/detach.
fixed total cost widget
using new invoice_item.fund field.
consolidated invoice attach and create API call into a single cud call
initial invoice process call to create/update the associated debits
added keep_li_marc option, otherwise strip the marc and just return
li attrs
M Open-ILS/src/sql/Pg/200.schema.acq.sql
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0229.schema.acq-inv-item-fund.sql
M Open-ILS/examples/fm_IDL.xml
fix Admin->For Developers->Fieldmapper; global.css is mandatory for <messagecatalog>. The fieldmapper method here is dangerous, however, and can exhaust memory
More Invoice UI work. This covers:
New view interface
Creating new invoices directly in the view UI
Creating invices from PO/LI
Attaching PO/LI data to an existing invoice
UI for handling of prorated item types
Support for creating a new invoice fromt the po view page
Add boolean column "prorate" to acq.invoice_item_type.
M Open-ILS/src/sql/Pg/200.schema.acq.sql
M Open-ILS/src/sql/Pg/002.schema.config.sql
A Open-ILS/src/sql/Pg/upgrade/0228.schema.acq-invoice-item-type-prorate.sql
M Open-ILS/examples/fm_IDL.xml
move the browser progress meter next to the network progress meter and provide a toggle in the Admin menu. The org unit setting isn't wired up in trunk, but that's probably a good thing. still experimental
senator [Tue, 6 Apr 2010 16:40:33 +0000 (16:40 +0000)]
Acq: unified search interface for LI, PO, and PL. Usable but not 100% finished
Still to come:
Paging results (very important with large result sets)
Searchable timestamp fields (those don't work yet)
Search terms interpreted from URI (to enable returning to search later)
Misc PO and PL controls to enable acting on search results
** Bib record searching
Some polish for Item Details/Quick Summary tab (the Alternate View in Item Status)
* localize more bools
* disambiguate Copy Status, Transit Copy Status, and Hold Status. Flesh copy statuses for display and provide a tooltip for Holdable/OPAC visible
* textual labels for fine_level and loan_duration
* show the Fine Level
* fix display of circ modifier and reference flag
* Removed Hold Shelf Location and Rolling Counter for now since those aren't implemented yet (left in the DTD entities, however)
* display Circulate flag
* remove some old commented out code
* flesh and render the call number
* fix display of Remaining Renewals
* Use open-ils.circ.renewal_chain.retrieve_by_circ.summary for simpler rendering of Checkout Workstation with circ chains
provided ability to append the table rows from one edit pane to an existing table. this is useful for inserting edit panes for different objects into a single, consistently formatted table
add embedded holdings paging support to biblio-record_entry type unAPI tag URIs -- also works for holdings_xml format directly -- and teach the local call number BibTemplate opac slot how to use this (show first 10 local call numbers, instead of all of them)
Added a "View / Place Orders" option to the exta actions drop-down for a
bib record in the OPAC. Lineitem related LI's page can now take a
bib ID as the param (instead of lineitem). For consistency, show
title, author, etc. from the catalog record (via BibTemplate) instead
of the selected lineitem.
Create a separate function for adding datatype information
from the database to the IDL information. That way we can
call it in other contexts, e.g. the forthcoming
query set server.
Replace almost all remaining reference to the MODULENAME macro
with references to a corresponding variable name.
This change is part of a project to split up the oils_cstore module
into an interface module (consisting mostly of osrfAppChildInit(),
osrfAppInitialize(), and osrfAppChildExit()) and an implementation
module (consisting of pretty much everything else). The implementation
module will then be available for reuse in other contexts.