phasefx [Sat, 1 May 2010 09:57:46 +0000 (09:57 +0000)]
Org unit settings gui.disable_local_save_columns and url.remote_column_settings. Respectively, these allow us to prevent the local saving and use of column settings, and allows us to specify column settings remotely. If local settings are allowed and remote settings are also configured, then local settings will trump remote settings. Currently these only work with xul lists, not dojo. There is no UI for saving settings remotely; for now the notion is that an admin sets columns up locally, and then transfers the setting files to the remote server.
phasefx [Sat, 1 May 2010 08:33:51 +0000 (08:33 +0000)]
Dedicated interface for circ.staff_client.do_not_auto_attempt_print org unit setting (given that the generic one does not handle settings of type array very well--particularly enumeration of allowed array values)
phasefx [Sat, 1 May 2010 08:33:50 +0000 (08:33 +0000)]
make the Javascript Shell environment more closely resemble that of the xul interfaces (JSAN loaded, utility functions and constants loaded, and network and error objects pre-configured)
senator [Fri, 30 Apr 2010 21:17:57 +0000 (21:17 +0000)]
Acq: Towards a working lineitems + bibs search, but still not really there
At least these things still need done:
1) Need to find out how to combine search terms correctly for the
open-ils.search multiclass method.
2) Need either to find out how to negate multiclass search terms or
to disable not- based searching for lineitem+bib
3) Need to make uploaded file-of-terms work.
added support for update the fund on an LID after the debits have been created. added a .dry_run version of open-ils.acq.lineitem_detail.cud.batch[.dry_run] to allow the caller to check the fund warning percents
Added global_flag and support for using the internal record
identifier as the tcn_value for newly imported records
TODO: add support to vandelay stored import procedures
1. When a class name is available instead of a table/view name,
look up the class in the IDL to get a table name, view name, or
(in parentheses) a source definition in the form of a subquery.
2. Rename buildQuery() to build_Query() in order to avoid a
name collision.
Subsequent EDI patch from Joe Atzberger. In this installmanent, EDI really does some stuff. Also included are a number of test scripts and some mild code cleanup
1. Renamed function getRelation to oilsGetRelation.
2. Made oilsGetRelation() globally scoped so that qstore
can call it.
3. Renamed its formal parameter from "class" to "classdef",
since "class" is a reserved word in C++. That can create
problems if the header file is #included in a C++ program.
4. Added a doxygen-style comment along the way.
M Open-ILS/include/openils/oils_sql.h
M Open-ILS/src/c-apps/oils_sql.c
Return of the top-level Help menu, with a context sensitive For Active Tab menu entry.
So now every interface has a help option, though more work can still be done for interfaces containing sub-interfaces (I've reworked the OPAC wrapper here, but Patron Display / Patron Search could still use some love).
We'll also want to give thought to adding Help widgets to any popup dialogs.
added pcrud entries for po_items, repaired pcrud entries for po notes
added logic to create invoice_item's from po_item's.
added po_item fund debit creation on po activation
added po_items to po money summary
added support for handling po_item debits during invoiceing.
showing po_item estimated cost summary data in invoice table
Add a po_item column, pointing to acq.po_item, to acq.invoice_item.
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/0243.schema.acq-inv-item-po-item.sql
M Open-ILS/examples/fm_IDL.xml
1. Implement a messages method to return a list of previously
generated error messages.
2. Comment out some code that looked up datatype for all the
non-virtual fields in the IDL. This time-consuming step serves
no purpose in qstore, and likely never will.
Loosened some restrictions on invoicing. It is now possible to invoice
items that have not yet been received. It is also possible to invoice
for cancelled items, assuming the debit for the cancelled item remains.
Add a row for delivered_but_lost, with keep_debits = TRUE.
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/0242.schema.acq-cancel-reason-keep-debits.sql
M Open-ILS/src/sql/Pg/950.data.seed-values.sql
M Open-ILS/examples/fm_IDL.xml
Bring the password reset interface to the Craftsman skin
Along the way, we make the placement slightly less hard-coded so that we
can better support custom skins that might not match default - although
we're still assuming that the login box will be a table with a tbody, you
can use the config.ids.login.tbody variable to point at the ID you care
about for your skin.
Clean up after ourselves by clearing the values of the barcode / username
text fields if the user hits Cancel or submits a request that was handled
by the backend service.
Added support to invoice page for adding extra copies to an invoice than
were ordered. The process creates new lineitem details and fund debits
to accommodate the new copies.
Fixed some typos
TODO: update the li summary blob to treat the li title/author as a link
to the details page for the lineitem
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/0241.schema.acq-po-item.sql
M Open-ILS/examples/fm_IDL.xml
replace lingering date substring kludges with util.date/dojo.locale. In some places (like due dates) I'm letting the whole timestamp show where before we were showing just the date
IDL:
added pcrud <retrieve> entry for acq selection list.
added selector columns to PL and PO.
removed now-virtual item_count column from acq.acq_lineitem_history
repaired faulty pcrud actions stanza for acq po
AutoGrid
added a readOnly edit mode to AutoGrid. this will allow users to pop up the edit dialog for copy/paste, since it is not (currently) possible to copy values directly from a dojo grid
new UIs
added a lineitem history ui which shows the audit values from a given lineitem
added a po history ui which shows the audit values from a given po
* show most recent and previous circ chains in item details history tab, with patron retrieval buttons
* accesskeys for the Item Details tab box
* fix: don't render 'undefined'
chicanery to let us pass the queue from one sound object to another (where for example, the timer for the first object may be blocked by the modalness of the window for the second object. This ensures that sounds queued up prior to a fancy prompt popup will play during the popup and not after
don't let util.error create sound objects (trying to reduce proliferation of such objects for easier debugging), and give fancy_prompt the ability to handle its own sounds, to prevent blocking of sounds due to the modal window dialog. Have util.error and util.network make fancy_prompt do this
create a sound timer/queue in menu_frame that gets inherited by child interfaces, and don't let it grab the one from data.xul
if we try to share xulG._sound from window 1 with window 2, and window 1 is destroyed, the sound object no longer works correctly (it loses reference to the 'urls' variable and cannot find the sounds to play). May try a common sound file from data.xul later. As it is now, sound behavior between window 1 and window 2 is slightly different with fancy prompt on my workstation. In window 2, a sound queued before fancy prompt starts to play before the popup and then gets clipped. In window 1, the fancy prompt sound obj takes over the queue and plays the sound without clipping
smoother destruction of exec.timer. We can now invoke exec.timer multiple times for a given util.exec instance, if for example, we want to regulate the frequency at which it shifts functions off the queue. Plus optional debug info
senator [Fri, 23 Apr 2010 20:53:11 +0000 (20:53 +0000)]
Acq: more work on the claiming UI. It begins to be workable, but still rough.
Definitely still have to fix at least these things:
Changes to lineitems' claim policies and initiation of claims against LIs
aren't reflected in realtime in the LI table. You still need a reload for
that so far.
The "Consider individual copies for claiming" needs to take you to the
speicific lineitems' claim copies dialog, not just to the PO in general.
senator [Wed, 21 Apr 2010 21:01:55 +0000 (21:01 +0000)]
Acq: added UI controls to attach a claim policy to one or many lineitems
Incidentally, two bugs were fixed:
1) Incorrect permacrud action entries in the IDL that stopped
open-ils.pcrud from generating methods for the jub and acqlih
classes.
2) A widely used acq subroutine, retrieve_lineitem_impl, incorrectly
cleared the purchase_order and picklist fields of its result if
fleshing for those fields was not specifically requested. The
correct behavior is to set those fields back to their integer
foreign key values. This was causing several subtle problems.
senator [Tue, 20 Apr 2010 20:20:32 +0000 (20:20 +0000)]
Acq: large parts of the UI for making claims to a vendor against lineitems
Large parts of this are done, but not yet all of them. Woof. If lineitems
are claim-ready (have an attached claim policy, which has claim event types
that have intervals that have passed since the items were ordered), and you
want to find them with no search criteria other than ordering agency, then
you can issue claims and print a very primitive voucher. Bits of niceness
are still to come, such as attaching policies, claiming from other LI table-
based interfaces, etc.
Implement the .prepare and .sql methods (except ignoring
bind variables).
M Open-ILS/src/c-apps/oils_qstore.c
A Open-ILS/src/c-apps/oils_buildq.c
A Open-ILS/src/c-apps/oils_storedq.c
A Open-ILS/src/c-apps/buildSQL.c
M Open-ILS/src/c-apps/Makefile.am
Rework constants for audio to be more dynamic. We can now specify a specific sound for every event that goes through network.js, however, in Windows sounds get cut off by subsequent sounds, so currently, if you wanted to hear the Red Alert example for AUDIO_event_ASSET_COPY_NOT_FOUND, you'd have to undefine or nullify or empty-string AUDIO_circ_bad.
Look for and evaluate /xul/server/skin/custom.js if it exists. Mainly for overriding parts of constants.js with local customizations
We'll do this with all remote interfaces (via util_overlay.xul) and with the main chrome menu/window and the chrome opac browser
Add a new service, open-ils.qstore. It is not yet useful except for testing
connectivity, because the methods are stubbed out. It will require changes to
opensrf.core before a client can access it.
A Open-ILS/src/c-apps/oils_qstore.c
M Open-ILS/src/c-apps/Makefile.am
Forward-port self-serve password reset implementation from rel_1_6
TODO: Add support for craftsman
TODO: Add barcode + email input option
TODO: Document how it works
Prevent possible character corruption or fatal errors in SRU / Z39.50
All MARC records in the Evergreen database are Unicode-encoded. However,
if the LDR09 hasn't been updated to indicate this, when we invoke
MARC::File::XML->as_xml_record it automatically runs a MARC8-to-UTF8 conversion
over the data - potentially corrupting the data, or resulting in fatal
errors. When holdings are added to records in SRU / Z39.50, we invoke
this code path.
The solution here is to simply manually set the leader 09 position to 'a'
before invoking MARC::File::XML->as_xml_record.