[open-ils-commits] SPAM: r10005 - in branches/acq-experiment: .
Open-ILS/examples Open-ILS/src/extras
Open-ILS/src/perlmods/OpenILS/Application
Open-ILS/src/perlmods/OpenILS/Application/Storage
Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher
Open-ILS/src/perlmods/OpenILS/WWW
Open-ILS/src/perlmods/OpenILS/WWW/SuperCat
Open-ILS/src/sql/Pg Open-ILS/src/support-scripts
Open-ILS/web/opac/locale/en-US
Open-ILS/web/opac/skin/default/js Open-ILS/xsl
Open-ILS/xul/staff_client/chrome/content/main
Open-ILS/xul/staff_client/server/cat
Open-ILS/xul/staff_client/server/locale/en-US
Open-ILS/xul/staff_client/server/patron build/i18n/tests
svn at svn.open-ils.org
svn at svn.open-ils.org
Wed Jul 9 16:29:47 EDT 2008
Author: erickson
Date: 2008-07-09 16:29:43 -0400 (Wed, 09 Jul 2008)
New Revision: 10005
Added:
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.xhtml
Removed:
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.xml
Modified:
branches/acq-experiment/
branches/acq-experiment/Open-ILS/examples/fm_IDL.xsd
branches/acq-experiment/Open-ILS/examples/oils_persist.xsd
branches/acq-experiment/Open-ILS/examples/permacrud.xsd
branches/acq-experiment/Open-ILS/src/extras/Makefile.install
branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Ingest.pm
branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/FTS.pm
branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm
branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm
branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/Exporter.pm
branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm
branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat/Feed.pm
branches/acq-experiment/Open-ILS/src/sql/Pg/002.functions.aggregate.sql
branches/acq-experiment/Open-ILS/src/sql/Pg/1.2.2.1-1.2.2.2-upgrade-db.sql
branches/acq-experiment/Open-ILS/src/support-scripts/settings-tester.pl
branches/acq-experiment/Open-ILS/web/opac/locale/en-US/lang.dtd
branches/acq-experiment/Open-ILS/web/opac/skin/default/js/rdetail.js
branches/acq-experiment/Open-ILS/xsl/MARC21slim2ATOM.xsl
branches/acq-experiment/Open-ILS/xsl/MARC21slim2RSS2.xsl
branches/acq-experiment/Open-ILS/xul/staff_client/chrome/content/main/constants.js
branches/acq-experiment/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/cat/z3950.js
branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/admin.properties
branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/cat.properties
branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/circ.properties
branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/common.properties
branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/patron.properties
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/barcode_entry.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/bill_cc_info.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/bill_check_info.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/display.js
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/display.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_group.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_notes.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_stat_cats.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_surveys.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/items.js
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/items.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form.js
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form_overlay.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result.js
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result_overlay.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary.js
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary_overlay.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/ue.js
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_buckets.xul
branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.js
branches/acq-experiment/build/i18n/tests/check_entities.py
Log:
Merged revisions 9947,9950,9953-9955,9964,9966,9969-9981,9984,9995,10002-10003 via svnmerge from
svn://svn.open-ils.org/ILS/trunk
........
r9947 | miker | 2008-06-27 10:27:31 -0400 (Fri, 27 Jun 2008) | 1 line
hit "d" /twice/ ... (thinko, need to remove old WHERE clause)
........
r9950 | dbs | 2008-06-29 03:07:00 -0400 (Sun, 29 Jun 2008) | 14 lines
Address a few RSS and Atom feed validation problems:
* Make OPAC URLs absolute (needs refinement to respect locale/skin)
* Push datetime creation down to the feed and item level
* Atom:
* Merge summary fields into a single element
* RSS2:
* Generate a channel/description field
* Merge item/description fields into a single element
* Use RFC-822 dates (adds DateTime::Format::Mail as a prerequisite)
* Set guid isPermaLink attribute false as we're using tag: URIs
* Place alternate link elements in the xhtml namespace
* Generate a link element with no attributes
........
r9953 | miker | 2008-07-01 21:34:39 -0400 (Tue, 01 Jul 2008) | 1 line
converting time-interval to text-interval
........
r9954 | miker | 2008-07-01 21:42:00 -0400 (Tue, 01 Jul 2008) | 1 line
treat full birth/death dates specially, as tsearch2 is inconsistent between 8.1 and 8.2
........
r9955 | miker | 2008-07-01 22:19:25 -0400 (Tue, 01 Jul 2008) | 1 line
update the currently indexed data to handle birth/death date stemming consistently
........
r9964 | dbs | 2008-07-03 00:25:39 -0400 (Thu, 03 Jul 2008) | 2 lines
Clean up brown paper bag commit
........
r9966 | dbs | 2008-07-03 22:37:16 -0400 (Thu, 03 Jul 2008) | 3 lines
Wrap those attributes in quotes, dangit.
And move one more attribute into an entity.
........
r9969 | dbs | 2008-07-06 12:01:49 -0400 (Sun, 06 Jul 2008) | 3 lines
Tighten up our entity checks; include a more complete range of legal entity chars
Add a missing entity discovered by our more stringent entity tests
........
r9970 | dbs | 2008-07-06 12:06:30 -0400 (Sun, 06 Jul 2008) | 2 lines
Patch from Craig Ricciuto to bring i18n to the patron staff client interfaces
........
r9971 | dbs | 2008-07-06 12:20:05 -0400 (Sun, 06 Jul 2008) | 2 lines
Convert a few more hardcoded strings to i18n
........
r9972 | dbs | 2008-07-06 12:28:59 -0400 (Sun, 06 Jul 2008) | 2 lines
Separate field name and field values with a space
........
r9973 | dbs | 2008-07-06 15:46:24 -0400 (Sun, 06 Jul 2008) | 3 lines
Make current fm_IDL.xml example validate;
- but do we really want to allow maxOccurs=2 for context inside retrieve elements?
........
r9974 | dbs | 2008-07-06 16:09:39 -0400 (Sun, 06 Jul 2008) | 2 lines
Minor typo: confrim -> confirm
........
r9975 | dbs | 2008-07-06 16:10:47 -0400 (Sun, 06 Jul 2008) | 2 lines
Another minor typo: confim -> confirm
........
r9976 | miker | 2008-07-06 20:00:56 -0400 (Sun, 06 Jul 2008) | 1 line
context element can occur as many times as needed ... in practice, maybe 3 times
........
r9977 | dbs | 2008-07-06 21:53:48 -0400 (Sun, 06 Jul 2008) | 2 lines
Check for expected database procedural languages
........
r9978 | dbs | 2008-07-06 23:59:51 -0400 (Sun, 06 Jul 2008) | 4 lines
Terminology consistency and clarity; prepping for translation
* Remove contractions and most abbreviations (Lib -> Library)
* Standardize on "ID" rather than "Id"
........
r9979 | dbs | 2008-07-07 09:29:03 -0400 (Mon, 07 Jul 2008) | 2 lines
Rename user_edit.xml to user_edit.xhtml to auto-enable XMLENT processing
........
r9980 | dbs | 2008-07-07 09:33:07 -0400 (Mon, 07 Jul 2008) | 2 lines
Restore PostgreSQL 8.1 support in trunk schema
........
r9981 | miker | 2008-07-08 11:50:46 -0400 (Tue, 08 Jul 2008) | 1 line
correct schema definition; thanks to Bill Ott for pointing it out
........
r9984 | dbs | 2008-07-08 12:02:18 -0400 (Tue, 08 Jul 2008) | 2 lines
Add check for DateTime::Format::Mail (new dependency with r9550)
........
r9995 | miker | 2008-07-08 15:32:09 -0400 (Tue, 08 Jul 2008) | 1 line
add status as a public note in exporter
........
r10002 | miker | 2008-07-08 23:50:07 -0400 (Tue, 08 Jul 2008) | 1 line
fixing display of online resources with all-numeric display labels (thanks to Dan Scott for the RBI)
........
r10003 | dbs | 2008-07-09 09:17:18 -0400 (Wed, 09 Jul 2008) | 5 lines
Enhance URL detection and linking just a tiny bit further:
* Require a slash to avoid matching online URL for "HTTP: The Complete Reference"
* Use same tests to determine whether the name is just the URL repeated (or a
slight variation thereof)
........
Property changes on: branches/acq-experiment
___________________________________________________________________
Name: svnmerge-integrated
- /trunk:1-9944
+ /trunk:1-10004
Modified: branches/acq-experiment/Open-ILS/examples/fm_IDL.xsd
===================================================================
--- branches/acq-experiment/Open-ILS/examples/fm_IDL.xsd 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/examples/fm_IDL.xsd 2008-07-09 20:29:43 UTC (rev 10005)
@@ -101,6 +101,7 @@
<xs:attribute ref="oils_persist:readonly"/>
<xs:attribute ref="oils_persist:tablename"/>
<xs:attribute ref="oils_persist:virtual"/>
+ <xs:attribute ref="oils_persist:field_safe"/>
<xs:attribute ref="reporter:core"/>
<xs:attribute ref="reporter:label"/>
</xs:complexType>
Modified: branches/acq-experiment/Open-ILS/examples/oils_persist.xsd
===================================================================
--- branches/acq-experiment/Open-ILS/examples/oils_persist.xsd 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/examples/oils_persist.xsd 2008-07-09 20:29:43 UTC (rev 10005)
@@ -37,5 +37,6 @@
<xs:attribute name="sequence"/>
<xs:attribute name="tablename"/>
<xs:attribute name="virtual" type="xs:boolean"/>
+<xs:attribute name="field_safe" type="xs:boolean"/>
</xs:schema>
Modified: branches/acq-experiment/Open-ILS/examples/permacrud.xsd
===================================================================
--- branches/acq-experiment/Open-ILS/examples/permacrud.xsd 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/examples/permacrud.xsd 2008-07-09 20:29:43 UTC (rev 10005)
@@ -22,9 +22,9 @@
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1"
+ xmlns:permacrud="http://open-ils.org/spec/opensrf/IDL/permacrud/v1"
targetNamespace="http://open-ils.org/spec/opensrf/IDL/permacrud/v1"
- elementFormDefault="unqualified"
+ elementFormDefault="qualified"
attributeFormDefault="unqualified"
>
@@ -34,66 +34,62 @@
<xs:element name="context" nillable="true">
<xs:complexType>
<xs:attribute name="link"/>
- <xs:attribute name="field"/>
- <xs:attribute name="global_requried"/>
+ <xs:attribute name="field" use="required"/>
+ <xs:attribute name="global_required"/>
</xs:complexType>
</xs:element>
<xs:element name="create" nillable="true">
<xs:complexType>
<xs:sequence>
- <xs:element ref="context" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="permacrud:context" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="permission" use="required"/>
<xs:attribute name="context_field"/>
+ <xs:attribute name="global_required"/>
</xs:complexType>
- <xs:attribute name="all_perms"/>
- <xs:attribute name="global_requried"/>
</xs:element>
<xs:element name="retrieve" nillable="true">
<xs:complexType>
<xs:sequence>
- <xs:element ref="context" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="permacrud:context" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="permission"/>
<xs:attribute name="context_field"/>
+ <xs:attribute name="global_required"/>
</xs:complexType>
- <xs:attribute name="all_perms"/>
- <xs:attribute name="global_requried"/>
</xs:element>
<xs:element name="update" nillable="true">
<xs:complexType>
<xs:sequence>
- <xs:element ref="context" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="permacrud:context" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="permission" use="required"/>
<xs:attribute name="context_field"/>
+ <xs:attribute name="global_required"/>
</xs:complexType>
- <xs:attribute name="all_perms"/>
- <xs:attribute name="global_requried"/>
</xs:element>
<xs:element name="delete" nillable="true">
<xs:complexType>
<xs:sequence>
- <xs:element ref="context" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="permacrud:context" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="permission" use="required"/>
<xs:attribute name="context_field"/>
+ <xs:attribute name="global_required"/>
</xs:complexType>
- <xs:attribute name="all_perms"/>
- <xs:attribute name="global_requried"/>
</xs:element>
<xs:element name="actions">
<xs:complexType>
<xs:sequence>
- <xs:element ref="create" minOccurs="0" maxOccurs="1"/>
- <xs:element ref="retrieve" minOccurs="0" maxOccurs="1"/>
- <xs:element ref="update" minOccurs="0" maxOccurs="1"/>
- <xs:element ref="delete" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="permacrud:create" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="permacrud:retrieve" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="permacrud:update" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="permacrud:delete" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
@@ -101,7 +97,7 @@
<xs:element name="permacrud">
<xs:complexType>
<xs:sequence>
- <xs:element ref="actions" minOccurs="1" maxOccurs="1"/>
+ <xs:element ref="permacrud:actions" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Modified: branches/acq-experiment/Open-ILS/src/extras/Makefile.install
===================================================================
--- branches/acq-experiment/Open-ILS/src/extras/Makefile.install 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/src/extras/Makefile.install 2008-07-09 20:29:43 UTC (rev 10005)
@@ -101,6 +101,7 @@
libclass-dbi-abstractsearch-perl\
libtemplate-perl\
libtext-aspell-perl\
+ libdatetime-format-mail-perl\
libdatetime-timezone-perl\
libdatetime-perl\
libunix-syslog-perl\
Modified: branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Ingest.pm
===================================================================
--- branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Ingest.pm 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Ingest.pm 2008-07-09 20:29:43 UTC (rev 10005)
@@ -695,6 +695,9 @@
$string .= $value->textContent . " ";
}
}
+
+ $string =~ s/(\d{4})-(\d{4})/$1 $2/sgo;
+
return NFD($string);
}
@@ -900,6 +903,7 @@
$val =~ s/\pM+//sgo;
$val =~ s/\pC+//sgo;
$val =~ s/\W+$//sgo;
+ $val =~ s/(\d{4})-(\d{4})/$1 $2/sgo;
$ns->value( lc($val) );
push @ns_list, $ns;
Modified: branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/FTS.pm
===================================================================
--- branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/FTS.pm 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/FTS.pm 2008-07-09 20:29:43 UTC (rev 10005)
@@ -106,6 +106,7 @@
$term =~ s/(^|\s+)-(\w+)/$1!$2/go;
$term =~ s/\b(\+)(\w+)/$2/go;
$term =~ s/^\s*\b(.+)\b\s*$/$1/o;
+ $term =~ s/(\d{4})-(\d{4})/$1 $2/go;
#$term =~ s/^(?:an?|the)\b(.*)/$1/o;
$log->debug("Stripped search term string is [$term]",DEBUG);
Modified: branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm
===================================================================
--- branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/action.pm 2008-07-09 20:29:43 UTC (rev 10005)
@@ -570,7 +570,10 @@
my $due = $due_dt->epoch;
my $now = time;
- my $fine_interval = interval_to_seconds( $c->fine_interval );
+
+ my $fine_interval = $c->fine_interval;
+ $fine_interval =~ s/(\d{2}):(\d{2}):(\d{2})/$1 h $2 m $3 s/o;
+ $fine_interval = interval_to_seconds( $fine_interval );
if ( interval_to_seconds( $c->fine_interval ) >= interval_to_seconds('1d') ) {
my $tz_offset_s = 0;
Modified: branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm
===================================================================
--- branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/actor.pm 2008-07-09 20:29:43 UTC (rev 10005)
@@ -55,7 +55,6 @@
my $out_sql = <<" SQL";
SELECT id
FROM action.circulation
- WHERE usr = ? AND checkin_time IS NULL AND due_date >= 'today' AND (stop_fines IS NULL OR stop_fines NOT IN ('LOST','CLAIMSRETURNED','LONGOVERDUE'))
WHERE usr = ?
AND checkin_time IS NULL
AND ( (fine_interval >= '1 day' AND due_date >= 'today')
Modified: branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/Exporter.pm
===================================================================
--- branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/Exporter.pm 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/Exporter.pm 2008-07-09 20:29:43 UTC (rev 10005)
@@ -154,6 +154,7 @@
my %orgs;
my %shelves;
+ my %statuses;
my $flesh = {};
if ($holdings) {
@@ -178,6 +179,16 @@
}
$req->finish;
+ $req = $ses->request( 'open-ils.cstore.direct.config.copy_status.search', { id => { '!=' => undef } } );
+
+ while (my $s = $req->recv) {
+ next if ($req->failed);
+ $s = $s->content;
+ last unless ($s);
+ $statuses{$s->id} = $s;
+ }
+ $req->finish;
+
$flesh = { flesh => 2, flesh_fields => { bre => [ 'call_numbers' ], acn => [ 'copies' ] } };
}
@@ -246,6 +257,7 @@
($cp->holdable eq 'f' ? ( x => 'unholdable' ) : ()),
($cp->circulate eq 'f' ? ( x => 'noncirculating' ) : ()),
($cp->opac_visible eq 'f' ? ( x => 'hidden' ) : ()),
+ z => $statuses{$cp->status}->name,
)
);
Modified: branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat/Feed.pm
===================================================================
--- branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat/Feed.pm 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat/Feed.pm 2008-07-09 20:29:43 UTC (rev 10005)
@@ -6,7 +6,10 @@
use XML::LibXSLT;
use OpenSRF::Utils::SettingsClient;
use CGI;
+use DateTime;
+use DateTime::Format::Mail;
+
sub exists {
my $class = shift;
my $type = shift;
@@ -225,6 +228,7 @@
package OpenILS::WWW::SuperCat::Feed::atom;
use base 'OpenILS::WWW::SuperCat::Feed';
+use OpenSRF::Utils qw/:datetime/;
sub new {
my $class = shift;
@@ -244,7 +248,8 @@
sub update_ts {
my $self = shift;
- my $text = shift;
+ # ATOM demands RFC-3339 compliant datetime formats
+ my $text = shift || gmtime_ISO8601();
$self->_create_node($self->{item_xpath},'http://www.w3.org/2005/Atom','updated', $text);
}
@@ -317,11 +322,15 @@
my $self = shift;
my $text = shift;
$self->_create_node('/rss/channel',undef,'title', $text);
+ # RSS2 demands a /channel/description element; just dupe title until we give
+ # users the ability to provide a description for their bookbags
+ $self->_create_node('/rss/channel',undef,'description', $text);
}
sub update_ts {
my $self = shift;
- my $text = shift;
+ # RSS2 demands RFC-822 compliant datetime formats
+ my $text = shift || DateTime::Format::Mail->format_datetime(DateTime->now());
$self->_create_node($self->{item_xpath},undef,'lastBuildDate', $text);
}
@@ -337,17 +346,27 @@
my $id = shift;
my $mime = shift || "application/x-$type+xml";
- $type = 'self' if ($type eq 'rss2');
-
- $self->_create_node(
- $self->{item_xpath},
- undef,
- 'link',
- $id,
- { rel => $type,
- type => $mime,
- }
- );
+ if ($type eq 'rss2' or $type eq 'alternate') {
+ # Just link to ourself using standard RSS2 link element
+ $self->_create_node(
+ $self->{item_xpath},
+ undef,
+ 'link',
+ $id,
+ undef
+ );
+ } else {
+ # Alternate link: use XHTML link element
+ $self->_create_node(
+ $self->{item_xpath},
+ 'http://www.w3.org/1999/xhtml',
+ 'xhtml:link',
+ $id,
+ { rel => $type,
+ type => $mime,
+ }
+ );
+ }
}
sub id {
@@ -372,11 +391,33 @@
sub update_ts {
my $self = shift;
+ # RSS2 demands RFC-822 compliant datetime formats
my $text = shift;
+ if (!$text) {
+ # No date passed in, default to now
+ $text = DateTime::Format::Mail->format_datetime(DateTime->now());
+ } elsif ($text =~ m/^\s*(\d{4})\.?\s*$/o) {
+ # Publication date is just a year, convert accordingly
+ my $year = DateTime->new(year=>$1);
+ $text = DateTime::Format::Mail->format_datetime($year);
+ }
$self->_create_node($self->{item_xpath},undef,'pubDate', $text);
}
+sub id {
+ my $self = shift;
+ my $id = shift;
+ $self->_create_node(
+ $self->{item_xpath},
+ undef,
+ 'guid',
+ $id,
+ {
+ isPermaLink=>"false"
+ }
+ );
+}
#----------------------------------------------------------
Modified: branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm
===================================================================
--- branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/src/perlmods/OpenILS/WWW/SuperCat.pm 2008-07-09 20:29:43 UTC (rev 10005)
@@ -412,7 +412,7 @@
$feed->root($root);
$feed->creator($host);
- $feed->update_ts(gmtime_ISO8601());
+ $feed->update_ts();
$feed->link( unapi => $base) if ($flesh_feed);
print "Content-type: ". $feed->type ."; charset=utf-8\n\n";
@@ -656,7 +656,9 @@
$feed->root($root);
$feed->creator($host);
- $feed->update_ts(gmtime_ISO8601());
+
+ $feed->update_ts();
+
$feed->link( unapi => $base) if ($flesh_feed);
print "Content-type: ". $feed->type ."; charset=utf-8\n\n";
@@ -745,7 +747,7 @@
$feed->title("Items in Book Bag [".$bucket->name."]");
$feed->creator($host);
- $feed->update_ts(gmtime_ISO8601());
+ $feed->update_ts();
$feed->link(alternate => $base . "/rss2-full/$id" => 'application/rss+xml');
$feed->link(atom => $base . "/atom-full/$id" => 'application/atom+xml');
@@ -754,7 +756,7 @@
$feed->link(
OPAC =>
- '/opac/en-US/skin/default/xml/rresult.xml?rt=list&' .
+ $host . '/opac/en-US/skin/default/xml/rresult.xml?rt=list&' .
join('&', map { 'rl=' . $_->target_biblio_record_entry } @{$bucket->items} ),
'text/html'
);
@@ -814,7 +816,7 @@
}
$feed->creator($host);
- $feed->update_ts(gmtime_ISO8601());
+ $feed->update_ts();
$feed->link(alternate => $base . "/rss2-full/$rtype/$axis/$limit/$date" => 'application/rss+xml');
$feed->link(atom => $base . "/atom-full/$rtype/$axis/$limit/$date" => 'application/atom+xml');
@@ -823,7 +825,7 @@
$feed->link(
OPAC =>
- '/opac/en-US/skin/default/xml/rresult.xml?rt=list&' .
+ $host . '/opac/en-US/skin/default/xml/rresult.xml?rt=list&' .
join('&', map { 'rl=' . $_} @$list ),
'text/html'
);
@@ -1069,7 +1071,7 @@
$feed->title("Search results for [$terms] at ".$org_unit->[0]->name);
$feed->creator($host);
- $feed->update_ts(gmtime_ISO8601());
+ $feed->update_ts();
$feed->_create_node(
$feed->{item_xpath},
Modified: branches/acq-experiment/Open-ILS/src/sql/Pg/002.functions.aggregate.sql
===================================================================
--- branches/acq-experiment/Open-ILS/src/sql/Pg/002.functions.aggregate.sql 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/src/sql/Pg/002.functions.aggregate.sql 2008-07-09 20:29:43 UTC (rev 10005)
@@ -15,10 +15,16 @@
*
*/
+-- Allow these to fail gracelessly outside the transaction
+-- because PostgreSQL 8.1 does not support IF EXISTS
+DROP AGGREGATE array_accum(anyelement) CASCADE;
+DROP AGGREGATE public.first(anyelement) CASCADE;
+DROP AGGREGATE public.last(anyelement) CASCADE;
+DROP AGGREGATE public.agg_text(text) CASCADE;
+DROP AGGREGATE public.agg_tsvector(tsvector) CASCADE;
+
BEGIN;
-DROP AGGREGATE IF EXISTS array_accum(anyelement) CASCADE;
-
CREATE AGGREGATE array_accum (
sfunc = array_append,
basetype = anyelement,
@@ -30,8 +36,6 @@
SELECT CASE WHEN $1 IS NULL THEN $2 ELSE $1 END;
$$ LANGUAGE SQL STABLE;
-DROP AGGREGATE IF EXISTS public.first(anyelement) CASCADE;
-
CREATE AGGREGATE public.first (
sfunc = public.first_agg,
basetype = anyelement,
@@ -42,8 +46,6 @@
SELECT $2;
$$ LANGUAGE SQL STABLE;
-DROP AGGREGATE IF EXISTS public.last(anyelement) CASCADE;
-
CREATE AGGREGATE public.last (
sfunc = public.last_agg,
basetype = anyelement,
@@ -60,8 +62,6 @@
END;
$$ LANGUAGE SQL STABLE;
-DROP AGGREGATE IF EXISTS public.agg_text(text) CASCADE;
-
CREATE AGGREGATE public.agg_text (
sfunc = public.text_concat,
basetype = text,
@@ -78,8 +78,6 @@
END;
$$ LANGUAGE SQL STABLE;
-DROP AGGREGATE IF EXISTS public.agg_tsvector(tsvector) CASCADE;
-
CREATE AGGREGATE public.agg_tsvector (
sfunc = public.tsvector_concat,
basetype = tsvector,
Modified: branches/acq-experiment/Open-ILS/src/sql/Pg/1.2.2.1-1.2.2.2-upgrade-db.sql
===================================================================
--- branches/acq-experiment/Open-ILS/src/sql/Pg/1.2.2.1-1.2.2.2-upgrade-db.sql 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/src/sql/Pg/1.2.2.1-1.2.2.2-upgrade-db.sql 2008-07-09 20:29:43 UTC (rev 10005)
@@ -19,7 +19,7 @@
CREATE SCHEMA extend_reporter;
CREATE TABLE extend_reporter.legacy_circ_count (
- id BIGSERIAL PRIMARY KEY REFERENCES asset.copy (id)
+ id BIGSERIAL PRIMARY KEY REFERENCES asset.copy (id),
circ_count INT NOT NULL DEFAULT 0
);
@@ -30,5 +30,29 @@
LEFT JOIN "action".circulation circ ON circ.target_copy = c.id
GROUP BY cp.id;
+UPDATE metabib.title_field_entry
+ SET value = REGEXP_REPLACE(value, E'(\\d{4})-(\\d{4})', E'\\1 \\2','g')
+ WHERE value ~ E'(\\d{4})-(\\d{4})';
+
+UPDATE metabib.author_field_entry
+ SET value = REGEXP_REPLACE(value, E'(\\d{4})-(\\d{4})', E'\\1 \\2','g')
+ WHERE value ~ E'(\\d{4})-(\\d{4})';
+
+UPDATE metabib.keyword_field_entry
+ SET value = REGEXP_REPLACE(value, E'(\\d{4})-(\\d{4})', E'\\1 \\2','g')
+ WHERE value ~ E'(\\d{4})-(\\d{4})';
+
+UPDATE metabib.subject_field_entry
+ SET value = REGEXP_REPLACE(value, E'(\\d{4})-(\\d{4})', E'\\1 \\2','g')
+ WHERE value ~ E'(\\d{4})-(\\d{4})';
+
+UPDATE metabib.series_field_entry
+ SET value = REGEXP_REPLACE(value, E'(\\d{4})-(\\d{4})', E'\\1 \\2','g')
+ WHERE value ~ E'(\\d{4})-(\\d{4})';
+
+UPDATE metabib.full_rec
+ SET value = REGEXP_REPLACE(value, E'(\\d{4})-(\\d{4})', E'\\1 \\2','g')
+ WHERE value ~ E'(\\d{4})-(\\d{4})';
+
COMMIT;
Modified: branches/acq-experiment/Open-ILS/src/support-scripts/settings-tester.pl
===================================================================
--- branches/acq-experiment/Open-ILS/src/support-scripts/settings-tester.pl 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/src/support-scripts/settings-tester.pl 2008-07-09 20:29:43 UTC (rev 10005)
@@ -212,34 +212,78 @@
my $dsn = "dbi:Pg:dbname=$db_name;host=$db_host;port=$db_port";
my $de = undef;
- my ($dbh, $encoding);
+ my ($dbh, $encoding, $langs);
try {
$dbh = DBI->connect($dsn, $db_user, $db_pw);
unless($dbh) {
$de = "* $osrf_xpath :: Unable to connect to database $dsn, user=$db_user, password=$db_pw\n";
warn "* $osrf_xpath :: Unable to connect to database $dsn, user=$db_user, password=$db_pw\n";
}
- my $sth = $dbh->prepare("show server_encoding");
+
+ # Get server encoding
+ my $sth = $dbh->prepare("SHOW server_encoding");
$sth->execute;
$sth->bind_col(1, \$encoding);
$sth->fetch;
$sth->finish;
+
+ # Get list of server languages
+ $sth = $dbh->prepare("SELECT lanname FROM pg_catalog.pg_language");
+ $sth->execute;
+ $langs = $sth->fetchall_arrayref([0]);
+ $sth->finish;
+
$dbh->disconnect;
} catch Error with {
$de = "* $osrf_xpath :: Unable to connect to database $dsn, user=$db_user, password=$db_pw\n" . shift() . "\n";
warn "* $osrf_xpath :: Unable to connect to database $dsn, user=$db_user, password=$db_pw\n" . shift() . "\n";
};
print "* $osrf_xpath :: Successfully connected to database $dsn\n" unless ($de);
+
+ # Check encoding
if ($encoding !~ m/(utf-?8|unicode)/i) {
$de .= "* ERROR: $osrf_xpath :: Database $dsn has encoding $encoding instead of UTF8 or UNICODE.\n";
warn "* ERROR: $osrf_xpath :: Database $dsn has encoding $encoding instead of UTF8 or UNICODE.\n";
} else {
print " * Database has the expected server encoding $encoding.\n";
}
+
+ my $result = check_db_langs($langs);
+ if ($result) {
+ $de .= $result;
+ warn $result;
+ }
+
return ($de) ? $de : "* $osrf_xpath :: Successfully connected to database $dsn with encoding $encoding\n";
}
+sub check_db_langs {
+ my $langs = shift;
+
+ my $errors;
+
+ # Ensure the following PostgreSQL languages have been enabled
+ my %languages = (
+ 'plperl' => 0,
+ 'plperlu' => 0,
+ 'plpgsql' => 0,
+ );
+
+ foreach my $lang (@$langs) {
+ my $lower = lc($$lang[0]);
+ $languages{$lower} = 1;
+ }
+
+ foreach my $lang (keys %languages) {
+ if (!$languages{$lang}) {
+ $errors .= " * ERROR: Language '$lang' is not enabled in the target database\n";
+ }
+ }
+
+ return $errors;
+}
+
sub check_libdbd {
my $results = '';
my @location = `locate libdbdpgsql.so | grep -v home | grep -v .libs`; # simple(ton) attempt to filter out build versions
@@ -329,6 +373,7 @@
DateTime::TimeZone
DateTime
DateTime::Format::ISO8601
+DateTime::Format::Mail
Unix::Syslog
GD::Graph3d
JavaScript::SpiderMonkey
Modified: branches/acq-experiment/Open-ILS/web/opac/locale/en-US/lang.dtd
===================================================================
--- branches/acq-experiment/Open-ILS/web/opac/locale/en-US/lang.dtd 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/web/opac/locale/en-US/lang.dtd 2008-07-09 20:29:43 UTC (rev 10005)
@@ -2005,6 +2005,7 @@
<!ENTITY staff.cat.spine_labels.inc_item_barcode.label "Include Item Barcode">
<!ENTITY staff.cat.spine_labels.custom.label "Custom:">
<!ENTITY staff.cat.spine_labels.available_macros.label "Available Macros">
+<!ENTITY staff.cat.volume_copy_creator.title "Volume/Copy Editor">
<!ENTITY staff.cat.volume_copy_creator.label "Volume/Copy Creator">
<!ENTITY staff.cat.volume_copy_creator.check_barcodes.label "Check Barcodes?">
<!ENTITY staff.cat.volume_copy_creator.check_barcodes.accesskey "B">
@@ -2025,6 +2026,7 @@
<!ENTITY staff.cat.z3950.catalog_service.tooltiptext "Evergreen Native Catalog">
<!ENTITY staff.cat.z3950.save_creds.label "Save as Default">
<!ENTITY staff.cat.z3950.save_creds.accesskey "D">
+<!ENTITY staff.cat.z3950.query.description "Description">
<!ENTITY staff.cat.z3950.query.label "Query">
<!ENTITY staff.cat.z3950.query.label "Tip: Click a search field label and then the 'Save as Default' button to have that field focused by default.">
<!ENTITY staff.cat.z3950.clear.label "Clear Form">
@@ -2067,6 +2069,8 @@
<!ENTITY staff.patron.bill_cc_info.cancel.accesskey "C">
<!ENTITY staff.patron.bill_cc_info.submit.label "Submit this Info">
<!ENTITY staff.patron.bill_cc_info.submit.accesskey "S">
+<!ENTITY staff.patron.bill_cc_info.info.label "Credit Card Info">
+<!ENTITY staff.patron.bill_cc_info.type.label "CC Type">
<!ENTITY staff.patron.bill_check_info.check_info.label "Check Info">
<!ENTITY staff.patron.bill_check_info.check_number.value "Check Number">
<!ENTITY staff.patron.bill_check_info.note.value "Note">
@@ -2198,3 +2202,31 @@
<!ENTITY staff.patron.info_group.group_member.label "Group Members">
<!ENTITY staff.patron.info_group.choose_an_action.label "Choose an Action...">
<!ENTITY staff.patron.info_group.choose_an_action.accesskey "A">
+<!ENTITY staff.patron.info_surveys.survey_number.value "Survey #">
+<!ENTITY staff.patron.info_surveys.last_answered.value "Last Answered on:">
+<!ENTITY staff.patron.info_surveys.answer.value "Answer:">
+<!ENTITY staff.patron.info.notes.label "Notes">
+<!ENTITY staff.patron.info.notes.accesskey "N">
+<!ENTITY staff.patron.info.stat_cats.label "Stat Cats">
+<!ENTITY staff.patron.info.stat_cats.accesskey "S">
+<!ENTITY staff.patron.info.surveys.label "Surveys">
+<!ENTITY staff.patron.info.surveys.accesskey "y">
+<!ENTITY staff.patron.info.group.label "Group">
+<!ENTITY staff.patron.info.group.accesskey "G">
+<!ENTITY staff.patron.search_form_overlay.inactive.value "Include inactive patrons?">
+<!ENTITY staff.patron.search_form_overlay.inactive.accesskey "I">
+<!ENTITY staff.patron.search_form_overlay.search_range_menu.value "Limit results to patrons in">
+<!ENTITY staff.patron.search_result_overlay.save_cols.label "Save Columns">
+<!ENTITY staff.patron.search_result_overlay.copy_to_clipboard.label "Copy to Clipboard">
+<!ENTITY staff.patron.search_result_overlay.print.label "Print">
+<!ENTITY staff.patron.summary_overlay.psagbc.alert.label "Alert">
+<!ENTITY staff.patron.summary_overlay.pssgbc.standing.label "Standing">
+<!ENTITY staff.patron.summary_overlay.overdue.value "Long Overdue:">
+<!ENTITY staff.patron.summary_overlay.claimed_returned.value "Claimed Returned:">
+<!ENTITY staff.patron.summary_overlay.lost_label.value "Lost:">
+<!ENTITY staff.patron.summary_overlay.noncat_label.value "Non Cat:">
+<!ENTITY staff.patron.summary_overlay.summary_contact.label "ID/Contact Info">
+<!ENTITY staff.patron.summary_overlay.opac_login.value "OPAC Login:">
+<!ENTITY staff.patron.user_buckets.stub_not_implemented "Just a stub, Not Yet Implemented">
+<!ENTITY staff.patron.user_edit.user_name.label "User Name:">
+<!ENTITY staff.patron.user_edit.barcode.label "Barcode:">
Modified: branches/acq-experiment/Open-ILS/web/opac/skin/default/js/rdetail.js
===================================================================
--- branches/acq-experiment/Open-ILS/web/opac/skin/default/js/rdetail.js 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/web/opac/skin/default/js/rdetail.js 2008-07-09 20:29:43 UTC (rev 10005)
@@ -207,12 +207,13 @@
// see if the record has any external links
var links = record.online_loc();
- for( var i = 0; links && links.length > 0 && i < links.length; i++ ) {
+ for( var i = 0; links && links.length > 0 && i < links.length; i = i + 2 ) {
var href = links[i];
- if( href.match(/http/) ) {
+ // avoid matching "HTTP: The Complete Reference"
+ if( href.match(/https?:\/|ftps?:\/|mailto:/i) ) {
unHideMe($('rdetail_online_row'));
- var name = links[i+1];
- if(!name || name.match(/http/)) name = href;
+ var name = '' + links[i+1];
+ if(!name || name.match(/https?:\/|ftps?:\/|mailto:/i)) name = href;
$('rdetail_online').appendChild(elem('a', {href:href,'class':'classic_link'}, name));
$('rdetail_online').appendChild(elem('br'));
}
Modified: branches/acq-experiment/Open-ILS/xsl/MARC21slim2ATOM.xsl
===================================================================
--- branches/acq-experiment/Open-ILS/xsl/MARC21slim2ATOM.xsl 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xsl/MARC21slim2ATOM.xsl 2008-07-09 20:29:43 UTC (rev 10005)
@@ -24,6 +24,7 @@
</id>
</xsl:for-each>
+ <!-- Spec wants RFC 3339 format - fix it outside of XSL? -->
<xsl:for-each select="marc:controlfield[@tag=005]">
<updated>
<xsl:value-of select="."/>
@@ -77,17 +78,23 @@
</rights>
</xsl:for-each>
+ <!-- Spec wants RFC 3339 format - fix it outside of XSL? -->
<xsl:for-each select="marc:datafield[@tag=260]/marc:subfield[@code='c']">
<published>
<xsl:value-of select="."/>
</published>
</xsl:for-each>
- <xsl:for-each select="marc:datafield[500<@tag][@tag<=599][not(@tag=506 or @tag=530 or @tag=540 or @tag=546)]">
- <summary>
- <xsl:value-of select="marc:subfield[@code='a']"/>
- </summary>
- </xsl:for-each>
+ <!--
+ Spec wants zero or one summary elements per item; best option
+ would be to test for one of these elements and only create
+ if one exists, but for now we simply merge all candidates
+ -->
+ <summary>
+ <xsl:for-each select="marc:datafield[500<@tag][@tag<=599][not(@tag=506 or @tag=530 or @tag=540 or @tag=546)]">
+ <xsl:value-of select="marc:subfield[@code='a']"/>
+ </xsl:for-each>
+ </summary>
<xsl:for-each select="marc:datafield[@tag=600 or @tag=610 or @tag=611 or @tag=630 or @tag=650 or @tag=653]">
<category>
Modified: branches/acq-experiment/Open-ILS/xsl/MARC21slim2RSS2.xsl
===================================================================
--- branches/acq-experiment/Open-ILS/xsl/MARC21slim2RSS2.xsl 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xsl/MARC21slim2RSS2.xsl 2008-07-09 20:29:43 UTC (rev 10005)
@@ -78,6 +78,7 @@
</dc:publisher>
</xsl:for-each>
+ <!-- this is supposed to be RFC-822 compliant -->
<xsl:for-each select="marc:datafield[@tag=260]/marc:subfield[@code='c']">
<pubDate>
<xsl:value-of select="."/>
@@ -94,11 +95,12 @@
</dc:format>
</xsl:for-each>
- <xsl:for-each select="marc:datafield[500<@tag][@tag<=599][not(@tag=506 or @tag=530 or @tag=540 or @tag=546)]">
- <description>
- <xsl:value-of select="marc:subfield[@code='a']"/>
- </description>
- </xsl:for-each>
+ <!-- specification only allows one description element per item -->
+ <description>
+ <xsl:for-each select="marc:datafield[500<@tag][@tag<=599][not(@tag=506 or @tag=530 or @tag=540 or @tag=546)]">
+ <xsl:value-of select="marc:subfield[@code='a']"/>
+ </xsl:for-each>
+ </description>
<xsl:for-each select="marc:datafield[@tag=600]">
<dc:subject>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/chrome/content/main/constants.js
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/chrome/content/main/constants.js 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/chrome/content/main/constants.js 2008-07-09 20:29:43 UTC (rev 10005)
@@ -285,7 +285,7 @@
'XUL_PATRON_BILL_WIZARD' : '/xul/server/patron/bill_wizard.xul',
'XUL_PATRON_DISPLAY' : '/xul/server/patron/display.xul',
'XUL_PATRON_EDIT' : '/xul/server/patron/ue.xhtml',
- 'XUL_USER_PERM_EDITOR' : '/xul/server/patron/user_edit.xml',
+ 'XUL_USER_PERM_EDITOR' : '/xul/server/patron/user_edit.xhtml',
'XUL_PATRON_HOLDS' : '/xul/server/patron/holds.xul',
'XUL_PATRON_INFO' : '/xul/server/patron/info.xul',
'XUL_PATRON_INFO_NOTES' : '/xul/server/patron/info_notes.xul',
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/cat/volume_copy_creator.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -21,15 +21,15 @@
<window id="cat_volume_copy_creator_win"
onload="try { my_init(); font_helper(); } catch(E) { alert(E); }"
width="800" height="580"
- title="Volume/Copy Editor"
+ title="&staff.cat.volume_copy_creator.title;"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- BEHAVIOR -->
- <script type="text/javascript">
- var myPackageDir = 'open_ils_staff_client'; var IAMXUL = true;
+ <script type="text/javascript">
+ var myPackageDir = 'open_ils_staff_client'; var IAMXUL = true;
</script>
- <scripts id="openils_util_scripts"/>
+ <scripts id="openils_util_scripts"/>
<script type="text/javascript" src="/xul/server/main/JSAN.js"/>
<script type="text/javascript" src="volume_copy_creator.js"/>
@@ -40,11 +40,11 @@
<iframe id="summary" />
<groupbox flex="1" style="overflow: auto">
- <caption id="caption" label="&staff.cat.volume_copy_creator.label;/>
+ <caption id="caption" label="&staff.cat.volume_copy_creator.label;"/>
<hbox style="border-bottom: solid black thin">
<hbox id="marc_cn"/>
<spacer flex="1" />
- <checkbox id="check_barcodes" label="&staff.cat.volume_copy_creator.check_barcodes.label; oncommand="g.save_prefs();" accesskey="&staff.cat.volume_copy_creator.check_barcodes.accesskey;"/>
+ <checkbox id="check_barcodes" label="&staff.cat.volume_copy_creator.check_barcodes.label;" oncommand="g.save_prefs();" accesskey="&staff.cat.volume_copy_creator.check_barcodes.accesskey;"/>
<checkbox id="print_labels" label="&staff.cat.volume_copy_creator.print_labels.label;" oncommand="g.save_prefs();" accesskey="&staff.cat.volume_copy_creator.print_labels.accesskey;"/>
<button id="Create" accesskey="&staff.cat.volume_copy_creator.create.accesskey;" label="&staff.cat.volume_copy_creator.create.label;" disabled="true" oncommand="g.stash_and_close();"/>
</hbox>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/cat/z3950.js
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/cat/z3950.js 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/cat/z3950.js 2008-07-09 20:29:43 UTC (rev 10005)
@@ -571,7 +571,7 @@
if (robj.length != 0) btn2 = null;
}
var btn3 = $("catStrings").getString('staff.cat.z3950.spawn_marc_editor.btn3_cancel_import');
- var p = obj.error.yns_alert(msg,title,btn1,btn2,btn3,$("catStrings").getString('staff.cat.z3950.spawn_marc_editor.confrim_action'));
+ var p = obj.error.yns_alert(msg,title,btn1,btn2,btn3,$("catStrings").getString('staff.cat.z3950.spawn_marc_editor.confirm_action'));
obj.error.sdump('D_ERROR','option ' + p + 'chosen');
switch(p) {
case 0:
@@ -623,11 +623,11 @@
var obj = this; // JSAN.use('OpenILS.data'); var data = new OpenILS.data(); data.init({'via':'stash'});
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserWrite');
var top_xml = '<vbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" flex="1" >';
- top_xml += '<description>'+$("catStrings").getString('staff.cat.z3950.confim_overlay.description')+'</description>';
- top_xml += '<hbox><button id="lead" disabled="false" label="'+$("catStrings").getString('staff.cat.z3950.confim_overlay.lead.label')+'" name="fancy_submit"';
- top_xml += ' accesskey="'+$("catStrings").getString('staff.cat.z3950.confim_overlay.lead.accesskey')+'"/>';
- top_xml += ' <button label="'+$("catStrings").getString('staff.cat.z3950.confim_overlay.cancel.label')+'" accesskey="'+
- $("catStrings").getString('staff.cat.z3950.confim_overlay.cancel.accesskey')+'" name="fancy_cancel"/></hbox></vbox>';
+ top_xml += '<description>'+$("catStrings").getString('staff.cat.z3950.confirm_overlay.description')+'</description>';
+ top_xml += '<hbox><button id="lead" disabled="false" label="'+$("catStrings").getString('staff.cat.z3950.confirm_overlay.lead.label')+'" name="fancy_submit"';
+ top_xml += ' accesskey="'+$("catStrings").getString('staff.cat.z3950.confirm_overlay.lead.accesskey')+'"/>';
+ top_xml += ' <button label="'+$("catStrings").getString('staff.cat.z3950.confirm_overlay.cancel.label')+'" accesskey="'+
+ $("catStrings").getString('staff.cat.z3950.confirm_overlay.cancel.accesskey')+'" name="fancy_cancel"/></hbox></vbox>';
var xml = '<form xmlns="http://www.w3.org/1999/xhtml">';
xml += '<table width="100%"><tr valign="top">';
@@ -650,10 +650,10 @@
// + '&top_xml_in_stash=temp_merge_top'
// + '&title=' + window.escape('Record Overlay'),
'fancy_prompt', 'chrome,resizable,modal,width=700,height=500',
- { 'top_xml' : top_xml, 'xml' : xml, 'title' : $("catStrings").getString('staff.cat.z3950.confim_overlay.title') }
+ { 'top_xml' : top_xml, 'xml' : xml, 'title' : $("catStrings").getString('staff.cat.z3950.confirm_overlay.title') }
);
//data.stash_retrieve();
- if (fancy_prompt_data.fancy_status == 'incomplete') { alert($("catStrings").getString('staff.cat.z3950.confim_overlay.aborted')); return false; }
+ if (fancy_prompt_data.fancy_status == 'incomplete') { alert($("catStrings").getString('staff.cat.z3950.confirm_overlay.aborted')); return false; }
return true;
},
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/admin.properties
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/admin.properties 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/admin.properties 2008-07-09 20:29:43 UTC (rev 10005)
@@ -71,7 +71,7 @@
staff.admin.offline_manage_xacts.error.execute_error=Execute error:
staff.admin.offline_manage_xacts.error.session_execute_error=Error executing session
staff.admin.offline_manage_xacts.error.session_retrieval=Error retrieving session errors:
-staff.admin.offline_manage_xacts.error.non_existent_file=Can't rename a non-existent file
+staff.admin.offline_manage_xacts.error.non_existent_file=Cannot rename a non-existent file
staff.admin.offline_manage_xacts.error.renaming_file=Error renaming transaction file
staff.admin.offline_manage_xacts.error.unique_file=Taking too long to find a unique filename.
staff.admin.offline_manage_xacts.error.transaction_conflicts=Something bad happened. New offline transactions were accumulated during our attempted upload. Tell your system admin that the file involved is %1$s
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/cat.properties
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/cat.properties 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/cat.properties 2008-07-09 20:29:43 UTC (rev 10005)
@@ -27,7 +27,7 @@
staff.cat.copy_browser.add_volume.permission_error=You do not have permission to add volumes to that library.
staff.cat.copy_browser.add_volume.title=Add Volume/Item
staff.cat.copy_browser.add_volume.error=copy browser -> add volumes
-staff.cat.copy_browser.edit_volume.permission_error=You don't have permission to edit this volume.
+staff.cat.copy_browser.edit_volume.permission_error=You do not have permission to edit this volume.
staff.cat.copy_browser.edit_volume.title=Volume
staff.cat.copy_browser.edit_volume.title.plural=Volumes
staff.cat.copy_browser.edit_volume.failed=Edit failed: You tried to change a volume's callnumber to one that is already in use for the given library. You should transfer the items to the desired callnumber instead.
@@ -196,7 +196,7 @@
staff.cat.opac.set_marc_edit.alert=Record successfully saved.
staff.cat.opac.set_marc_edit.std_unexpected_error=Record not likely updated.
staff.cat.opac.refresh.function_not_implemented.alert=Not yet implemented. Work around: Choose Duplicate in New Tab option
-staff.cat.opac.set_tab_name=Bib Record: %1$s
+staff.cat.opac.set_tab_name=Record: %1$s
staff.cat.record_buckets.save_file_as=Save File As
staff.cat.record_buckets.export_records.alert=File not downloaded.
staff.cat.record_buckets.export_records.std_unexpected_error=Records could not be exported.
@@ -244,7 +244,7 @@
staff.cat.record_buckets_quick.name_of_bucket=What would you like to name the bucket?
staff.cat.record_buckets_quick.name_of_bucket.title=Bucket Creation
staff.cat.record_buckets_quick.bucket_creation_failure=Bucket creation failed.
-staff.cat.record_buckets_quick.add_to_bucket.addition_failed=Addition likely failed for bucket = %1$s and record id = %2$s
+staff.cat.record_buckets_quick.add_to_bucket.addition_failed=Addition likely failed for bucket = %1$s and record ID = %2$s
staff.cat.spine_labels.copy=copy
staff.cat.spine_labels.copies=copies
staff.cat.spine_labels.generate.std_unexpeceted_err=Generate
@@ -255,13 +255,13 @@
staff.cat.util.replace_barcode.error_alert=We were unable to retrieve an item with barcode "%1$s".
staff.cat.util.replace_barcode.new_bc_window_prompt.prompt=Enter the replacement barcode for the copy:
staff.cat.util.replace_barcode.new_bc_window_prompt.title=Replace Barcode
-staff.cat.util.replace_barcode.new_bc.failed=Rename aborted. Blank for barcode not allowed.
+staff.cat.util.replace_barcode.new_bc.failed=Rename aborted. Blank barcodes are not allowed.
staff.cat.util.replace_barcode.testing_error=Error testing replacement barcode "%1$s".
staff.cat.util.replace_barcode.insufficient_permission_for_rename=Rename aborted. Insufficient permission.
staff.cat.util.replace_barcode.item_rename_error=Error renaming item.
staff.cat.util.replace_barcode.rename_error=Rename did not likely occur.
staff.cat.util.transfer_copies.unmarked_volume_alert=Please mark a volume as the destination from within holdings maintenance and then try this again.
-staff.cat.util.transfer_copies.params_message=Transfer items from their original volumes to %1$s's volume labelled %2$s on the following record (and change their circ libs to match)?
+staff.cat.util.transfer_copies.params_message=Transfer items from their original volumes to %1$s's volume labelled %2$s on the following record (and change their circulation libs to match)?
staff.cat.util.transfer_copies.transfer.label=Transfer
staff.cat.util.transfer_copies.cancel.label=Cancel
staff.cat.util.transfer_copies.cancel.accesskey=C
@@ -273,7 +273,7 @@
staff.cat.util.spine_editor.tab_name=Spine Labels
staff.cat.util.spine_editor.spine_editor_error=Spine Labels
staff.cat.util.show_in_opac.unknown_barcode=%1$s is not cataloged
-staff.cat.util.show_in_opac.catalog_error_for_doc_id=Error opening catalog for document id = %1$s
+staff.cat.util.show_in_opac.catalog_error_for_doc_id=Error opening catalog for document ID = %1$s
staff.cat.util.copy_editor.batch_in_title=Batch
staff.cat.util.copy_editor.edit_in_title=Edit
staff.cat.util.copy_editor.view_in_title=View
@@ -283,11 +283,11 @@
staff.cat.util.copy_editor.edit=Edit
staff.cat.util.copy_editor.view=View
staff.cat.util.copy_editor.not_modified=Copies not modified.
-staff.cat.util.mark_item_damaged.af_message=Action failed. One or more of these items is in a special status (Checked Out, In Transit, etc.) and cannot be changed to the Damaged status.
+staff.cat.util.mark_item_damaged.af_message=Action failed. One or more of these items is in a special status such as "Checked Out" or "In Transit" and cannot be changed to the Damaged status.
staff.cat.util.mark_item_damaged.af_title=Action failed.
staff.cat.util.mark_item_damaged.af_ok_label=OK
staff.cat.util.mark_item_damaged.af_confirm_action=Check here to confirm this message
-staff.cat.util.mark_item_damaged.md_message='Change the status for these items to Damaged? You will have to manually retrieve the last circulation if you need to bill a patron. Barcodes: %1$s
+staff.cat.util.mark_item_damaged.md_message=Change the status for these items to Damaged? You will have to manually retrieve the last circulation if you need to bill a patron. Barcodes: %1$s
staff.cat.util.mark_item_damaged.md_title=Mark Damaged
staff.cat.util.mark_item_damaged.md_ok_label=OK
staff.cat.util.mark_item_damaged.md_cancel_label=Cancel
@@ -295,7 +295,7 @@
staff.cat.util.mark_item_damaged.marking_error=Error marking item %1$s damaged.
staff.cat.util.mark_item_damaged.one_item_damaged=Item marked Damaged
staff.cat.util.mark_item_damaged.multiple_item_damaged=%1$s items marked Damaged.
-staff.cat.util.mark_item_missing.af_message=Action failed. One or more of these items is in a special status (Checked Out, In Transit, etc.) and cannot be changed to the Missing status.
+staff.cat.util.mark_item_missing.af_message=Action failed. One or more of these items is in a special status such as "Checked Out" or "In Transit" and cannot be changed to the Missing status.
staff.cat.util.mark_item_missing.af_title=Action failed.
staff.cat.util.mark_item_missing.af_ok_label=OK
staff.cat.util.mark_item_missing.af_confirm_action=Check here to confirm this message
@@ -325,9 +325,9 @@
staff.cat.volume_copy_creator.save_prefs.err_storing_prefs=Error storing preferences
staff.cat.z3950.obj_list_init.list_construction_error=Failure during list construction.
staff.cat.z3950.obj_controller_init.deck_label=Results View
-staff.cat.z3950.obj_controller_init.marc_view_error=Failure during marc view.
-staff.cat.z3950.obj_controller_init.marc_import_error=Failure during marc import.
-staff.cat.z3950.obj_controller_init.marc_import_overlay_error=Failure during marc import overlay.
+staff.cat.z3950.obj_controller_init.marc_view_error=Failure during MARC view.
+staff.cat.z3950.obj_controller_init.marc_import_error=Failure during MARC import.
+staff.cat.z3950.obj_controller_init.marc_import_overlay_error=Failure during MARC import overlay.
staff.cat.z3950.obj_controller_init.search_fields_error=Error setting up search fields.
staff.cat.z3950.obj_controller_init.z39_service_error=Z39.50 services not likely retrieved.
staff.cat.z3950.initial_search.no_search_selection=No services selected to search.
@@ -350,19 +350,19 @@
staff.cat.z3950.spawn_marc_editor.btn2_import=Import with alternate TCN %1$s
staff.cat.z3950.spawn_marc_editor.permission_error=check permission
staff.cat.z3950.spawn_marc_editor.btn3_cancel_import=Cancel Import
-staff.cat.z3950.spawn_marc_editor.confrim_action=Check here to confirm this action
+staff.cat.z3950.spawn_marc_editor.confirm_action=Check here to confirm this action
staff.cat.z3950.spawn_marc_editor.successful_overlay=Record successfully overlaid.
staff.cat.z3950.spawn_marc_editor.successful_import_with_new_tcn=Record successfully imported with alternate TCN.
staff.cat.z3950.spawn_marc_editor.import_cancelled=Record import cancelled
staff.cat.z3950.spawn_marc_editor.successful_import=Record successfully imported.
staff.cat.z3950.spawn_marc_editor.import_error=Record not likely imported.
-staff.cat.z3950.confim_overlay.description=Overlay this record?
-staff.cat.z3950.confim_overlay.lead.label=Overlay
-staff.cat.z3950.confim_overlay.lead.accesskey=O
-staff.cat.z3950.confim_overlay.cancel.label=Cancel
-staff.cat.z3950.confim_overlay.cancel.accesskey=C
-staff.cat.z3950.confim_overlay.title=Record Overlay
-staff.cat.z3950.confim_overlay.aborted=Overlay Aborted
+staff.cat.z3950.confirm_overlay.description=Overlay this record?
+staff.cat.z3950.confirm_overlay.lead.label=Overlay
+staff.cat.z3950.confirm_overlay.lead.accesskey=O
+staff.cat.z3950.confirm_overlay.cancel.label=Cancel
+staff.cat.z3950.confirm_overlay.cancel.accesskey=C
+staff.cat.z3950.confirm_overlay.title=Record Overlay
+staff.cat.z3950.confirm_overlay.aborted=Overlay Aborted
staff.cat.z3950.spawn_marc_editor_for_overlay.try_again=Please mark a record for overlay from within the catalog and try this again.
staff.cat.z3950.spawn_marc_editor_for_overlay.tab_name=MARC Editor
staff.cat.z3950.spawn_marc_editor_for_overlay.overlay_record_label=Overlay Record
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/circ.properties
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/circ.properties 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/circ.properties 2008-07-09 20:29:43 UTC (rev 10005)
@@ -93,9 +93,9 @@
staff.circ.copy_status.del_items.success.error=Batch Item Deletion
staff.circ.copy_status.transfer_items.mark_destination=Please mark a volume as the destination and then try this again.
staff.circ.copy_status.transfer_items.problem=All copies not likely transferred.
-staff.circ.copy_status.add_volumes.perm_failure=You don't have permission to add volumes to that library.
+staff.circ.copy_status.add_volumes.perm_failure=You do not have permission to add volumes to that library.
staff.circ.copy_status.add_volumes.title=Add Volume/Item for Record # %1$s
-staff.circ.copy_status.edit_volumes.perm_failure=You don't have permission to edit this volume.
+staff.circ.copy_status.edit_volumes.perm_failure=You do not have permission to edit this volume.
staff.circ.copy_status.edit_volume.title=Volume for record # %1$s
staff.circ.copy_status.edit_volumes.title=Volumes for record # %1$s
staff.circ.copy_status.edit_volumes.duplicate=Edit failed: You tried to change a volume's callnumber to one that is already in use for the given library. You should transfer the items to the desired callnumber instead.
@@ -183,7 +183,7 @@
staff.circ.utils.abort_transits.title=Aborting Transits
staff.circ.utils.yes=Yes
staff.circ.utils.no=No
-staff.circ.utils.abort_transits.not_allowed=Copy Id = %1$s
+staff.circ.utils.abort_transits.not_allowed=Copy ID = %1$s
staff.circ.utils.abort_transits.not_found=This item was no longer in transit at the time of the abort. Perhaps this happened from a stale display?
staff.circ.utils.abort_transits.unexpected_error=Transit not likely aborted.
staff.circ.utils.retrieve_patron.failure=Problem retrieving patron.
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/common.properties
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/common.properties 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/common.properties 2008-07-09 20:29:43 UTC (rev 10005)
@@ -1,6 +1,6 @@
common.exception=!! This software has encountered an error. Please tell your friendly system administrator or software developer the following:\n%1$s\n%2$s\n
common.jsan.missing=The JSAN library object is missing.
-common.error=Please inform your helpdesk or developers of this error:
+common.error=Please inform your help desk or developers of this error:
common.ok=Ok
common.clear=Clear
common.confirm=Check here to confirm this message.
@@ -28,9 +28,9 @@
openils.global_util.font_size.error=Error adjusting the font size: %1$s
staff.acp_label_barcode=Barcode
staff.acp_label_call_number=Call Number
-staff.acp_label_circ_as_type=Circ As Type
-staff.acp_label_circ_lib=Circ Lib
-staff.acp_label_circ_modifier=Circ Modifier
+staff.acp_label_circ_as_type=Circulate As Type
+staff.acp_label_circ_lib=Circulation Library
+staff.acp_label_circ_modifier=Circulation Modifier
staff.acp_label_copy_number=Copy Number
staff.acp_label_deposit_amount=Deposit Amount
staff.acp_label_fine_level=Fine Level
@@ -45,20 +45,20 @@
staff.ahr_fulfillment_time_label=Fulfillment Time
staff.ahr_hold_type_label=Type
staff.ahr_holdable_formats_label=Holdable Formats
-staff.ahr_id_label=Hold Id
+staff.ahr_id_label=Hold ID
staff.ahr_phone_notify_label=Phone Notify
-staff.ahr_pickup_lib_label=Pickup Lib
-staff.ahr_prev_check_time_label=Prev Check Time
+staff.ahr_pickup_lib_label=Pickup Library
+staff.ahr_prev_check_time_label=Previous Check Time
staff.ahr_requestor_label=Requestor
staff.ahr_selection_depth_label=Selection Depth
staff.ahr_status_label=Status
staff.ahr_target_label=Target
-staff.ahr_usr_label=Usr
+staff.ahr_usr_label=User
staff.circ_label_due_date=Due Date
-staff.circ_label_id=Circ Id
+staff.circ_label_id=Circulation ID
staff.circ_label_renewal_remaining=Remaining Renewals
staff.mvr_label_author=Author
-staff.mvr_label_doc_id=Doc Id
+staff.mvr_label_doc_id=Document ID
staff.mvr_label_title=Title
staff.bills_xact_dates_label=Record / Dates
staff.bills_information=Information
@@ -111,19 +111,19 @@
staff.au_claims_returned_count_label=Returns Claimed
staff.au_create_date_label=Created On
staff.au_expire_date_label=Expires On
-staff.au_home_library_label=Home Lib
-staff.au_home_library_fullname_label=Home Lib (Full Name)
+staff.au_home_library_label=Home Library
+staff.au_home_library_fullname_label=Home Library (Full Name)
staff.au_credit_forward_balance_label=Credit
staff.au_day_phone_label=Day Phone
staff.au_evening_phone_label=Evening Phone
staff.au_other_phone_label=Other Phone
staff.au_email_label=Email
staff.au_birth_date_label=Birth Date
-staff.au_ident_type_label=Ident Type
-staff.au_ident_value_label=Ident Value
-staff.au_ident_type2_label=Ident Type 2
-staff.au_ident_value2_label=Ident Value 2
-staff.au_net_access_level_label=Net Access
+staff.au_ident_type_label=Identification Type
+staff.au_ident_value_label=Identification Value
+staff.au_ident_type2_label=Identification Type 2
+staff.au_ident_value2_label=Identification Value 2
+staff.au_net_access_level_label=Internet Access
staff.au_master_account_label=Group Lead
staff.au_group_id_label=Group ID
staff.au_id_label=User ID
@@ -148,15 +148,15 @@
staff.z39_50.search_class.item_type.url=Internet Resources
staff.z39_50.search_class.item_type.vis=Visual materials
staff.z39_50.search_class.lccn=LCCN
-staff.z39_50.search_class.pubdate=PubDate
+staff.z39_50.search_class.pubdate=Publication Date
staff.z39_50.search_class.publisher=Publisher
staff.z39_50.search_class.tcn=Accession #
staff.z39_50.search_class.title=Title
-staff.z39_50_import_interface_label=Z39.50 IMPORT
+staff.z39_50_import_interface_label=Z39.50 Import
staff.main.data.loaded=Data loaded.
staff.main.gen_offline_widgets.synced=Offline interface synchronized with server.
staff.main.gen_offline_widgets.noncat_sort.error=error in noncat sorting:
-staff.main.gen_offline_widgets.please_wait=Please Wait
+staff.main.gen_offline_widgets.please_wait=Please wait
staff.main.gen_offline_widgets.workstation_registration_denied=You do not have permission to register a workstation.
staff.main.gen_offline_widgets.registration.override=Override Registration Failure?
staff.main.gen_offline_widgets.registration.error=Workstation Registration error (%1$s)
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/patron.properties
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/patron.properties 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/locale/en-US/patron.properties 2008-07-09 20:29:43 UTC (rev 10005)
@@ -34,7 +34,7 @@
staff.patron.bills.apply_payment.nothing_applied=No payments or patron credit applied.
staff.patron.bills.pay.annotate_payment=Please annotate this payment:
staff.patron.bills.pay.annotate_payment.title=Annotate Payment
-staff.patron.bills.pay.refund_exceeds_desk_payment=%1$s\n\nAnother way to "zero" this transaction is to use Add Billing and add a misc bill to counter the negative balance.
+staff.patron.bills.pay.refund_exceeds_desk_payment=%1$s\n\nAnother way to "zero" this transaction is to use Add Billing and add a miscellaneous bill to counter the negative balance.
staff.patron.bills.pay.payment_failed=Bill payment likely failed
staff.patron.bills.info_box.label_value.title=Title
staff.patron.bills.info_box.label_value.type=Type
@@ -51,18 +51,23 @@
staff.patron.bills.void_all_billings.error_voiding_bills=Error voiding bills.
staff.patron.bills.void_all_billings.billings_voided=Billings voided.
staff.patron.bill_wizard.patron_bill_finish.billing_added=Billing added.
+staff.patron.display.cmd_search_form.no_patron=No Patron Selected
staff.patron.display.cmd_patron_edit.edit_search=Editor would like to search for: %1$s
staff.patron.display.spawn_editor.editing_related_patron=Editing Related Patron
+staff.patron.display.init.retrieving_patron=Retrieving Patron...
staff.patron.display.init.retrieving=Retrieving...
staff.patron.display.init.network_request.alert_message=Alert message: "%1$s"<br/><br/>
staff.patron.display.init.network_request.inactive_card=Patron account retrieved with an INACTIVE card.<br/><br/>
staff.patron.display.init.network_request.account_barred=Patron account is BARRED.<br/><br/>
staff.patron.display.init.network_request.account_inactive=Patron account is INACTIVE.<br/><br/>
staff.patron.display.init.network_request.account_expired=Patron account is EXPIRED.<br/><br/>
+staff.patron.display.init.holds_ready=Holds available: %1$s
staff.patron.display.init.network_request.window_title=Alert
staff.patron.display.init.network_request.window_message=Press a navigation button above (for example, Check Out) to clear this alert.
staff.patron.display.init.network_request.dump_error_message=Not re-displaying this alert message: %1$s
staff.patron.display.init.network_request.error_showing_alert=Error showing patron alert and holds availability.
+staff.patron.display.render_search_form.patron_search=Patron Search
+staff.patron.display.tab_name=Patron:
staff.patron.hold_notices.tooltiptext=ID: %1$s Hold ID: %2$s Notifying Staff ID: %3$s
staff.patron.hold_notices.new_notification_record=New Notification Record
staff.patron.hold_notices.method=Method
@@ -73,7 +78,7 @@
staff.patron.hold_notices.add_notif_record_accesskey=A
staff.patron.hold_notices.new_notification.not_created=The notification was not likely created.
staff.patron.holds.init.hold_num_error=Error retrieving details for hold #%1$s
-staff.patron.holds.show_notifications.error_rendering_notifs=Error rendering/retrieving hold notifications.
+staff.patron.holds.show_notifications.error_rendering_notifs=Error rendering or retrieving hold notifications.
staff.patron.holds.holds_edit_selection_depth.choose_hold_range=Please choose a Hold Range:
staff.patron.holds.holds_edit_selection_depth.done.label=Done
staff.patron.holds.holds_edit_selection_depth.done.accesskey=D
@@ -90,8 +95,8 @@
staff.patron.holds.holds_edit_pickup_lib.cancel.label=Cancel
staff.patron.holds.holds_edit_pickup_lib.cancel.accesskey=C
staff.patron.holds.holds_edit_pickup_lib.choose_lib=Choose a Pick Up Library
-staff.patron.holds.holds_edit_pickup_lib.change_pickup_lib_message.singular=Are you sure you would like to change the Pick Up Library for hold %1$s to %2$s?;
-staff.patron.holds.holds_edit_pickup_lib.change_pickup_lib_message.plural=Are you sure you would like to change the Pick Up Library for holds %1$s to %2$s?;
+staff.patron.holds.holds_edit_pickup_lib.change_pickup_lib_message.singular=Are you sure you would like to change the Pick Up Library for hold %1$s to %2$s?
+staff.patron.holds.holds_edit_pickup_lib.change_pickup_lib_message.plural=Are you sure you would like to change the Pick Up Library for holds %1$s to %2$s?
staff.patron.holds.holds_edit_pickup_lib.change_pickup_lib_title=Modifying Holds
staff.patron.holds.holds_edit_phone_notify.new_phone_number=Please enter a new phone number for hold notification (leave the field empty to disable phone notification):
staff.patron.holds.holds_edit_phone_notify.btn_done.label=Done
@@ -139,7 +144,7 @@
staff.patron.info_group.spwan_search=spawn search
staff.patron.info_group.remove_patron.warning_message=WARNING: If you remove the currently displayed patron, a NEW group will be displayed in this interface.
staff.patron.info_group.remove_patron.warning_message_confirm=Remove selected patrons from this group? %1$s
-staff.patron.info_group.remove_patron.error_removing_patron=error removing patron (id=%1$s) from usergroup
+staff.patron.info_group.remove_patron.error_removing_patron=error removing patron (ID=%1$s) from usergroup
staff.patron.info_group.remove_patron.patrons_removed_from_group=Patrons removed from group.
staff.patron.info_group.remove_patron.patrons_not_removed_from_group=Patron not removed from group.
staff.patron.info_group.link_patron.null_not_allowed=null parameter not allowed
@@ -151,6 +156,92 @@
staff.patron.info_group.link_patron.done.label=Done
staff.patron.info_group.link_patron.done.accesskey=D
staff.patron.info_group.link_patron.move_patron_to_usergroup=Move Patron into a Usergroup
-staff.patron.info_group.link_patron.error_linking_patron=error linking patron (id=%1$s)
+staff.patron.info_group.link_patron.error_linking_patron=error linking patron (ID=%1$s)
staff.patron.info_group.link_patron.usergroups_updated=User groups updated.
staff.patron.info_group.link_patron.error_linking_patrons=error linking patrons
+staff.patron.info_notes.render_notes.add_new_note.label=Add New Note
+staff.patron.info_notes.render_notes.add_new_note.accesskey=A
+staff.patron.info_notes.render_notes.tooltiptext=Note ID: %1$s Creator ID: %2$s
+staff.patron.info_notes.render_notes.pub.patron_visible=Patron Visible
+staff.patron.info_notes.render_notes.pub.staff_only=Staff Only
+staff.patron.info_notes.render_notes.delete_note_message=Delete the note titled "%1$s" created on %2$s?
+staff.patron.info_notes.render_notes.delete_note_title=Delete Note
+staff.patron.info_notes.render_notes.btn1.delete_note.label=Delete This Note
+staff.patron.info_notes.render_notes.note_deleted=Note deleted.
+staff.patron.info_notes.render_notes.pertaining_to=Pertaining to
+staff.patron.info_notes.render_notes.created_on=created on
+staff.patron.info_notes.render_notes.printing_note_num=printing note #%1$s
+staff.patron.info_notes.render_notes.btn2.print_note.label=Print
+staff.patron.info_notes.new_note.label=New Note
+staff.patron.info_notes.new_note.patron_visible.value=Patron Visible?
+staff.patron.info_notes.new_note.title.value=Title
+staff.patron.info_notes.new_note.note.value=Note
+staff.patron.info_notes.new_note.cancel.label=Cancel
+staff.patron.info_notes.new_note.cancel.accesskey=C
+staff.patron.info_notes.new_note.add.label=Add Note
+staff.patron.info_notes.new_note.add.accesskey=A
+staff.patron.info_notes.new_note.add_note_title=Add Note
+staff.patron.info_notes.new_note.add_note_title=Note added.
+staff.patron.info_notes.new_note.note_not_created=The note was not likely created.
+staff.patron.info_stat_cats.retrieve_fleshed_patron.failed=Failed to retrieve patron stat cats.
+staff.patron.info_stat_cats.render_stat_cats.opac_visible=OPAC Visible
+staff.patron.info_stat_cats.render_stat_cats.not_opac_visible=Not OPAC Visible
+staff.patron.info_stat_cats.render_stat_cats.rendering_exception=rendering or retrieving stat cat
+staff.patron.info_surveys.retrieve_surveys.failed=Failed to retrieve all the survey responses.
+staff.patron.info_surveys.render_surveys.required=Required
+staff.patron.info_surveys.render_surveys.not_required=Not Required
+staff.patron.items.show_noncats.14_days=14 days
+staff.patron.items.show_noncats.err_showing_noncat=Error showing NonCat #%1$s
+staff.patron.items.show_noncats.err_showing_circulations=Error showing NonCat circulations
+staff.patron.items.items_renew_all.list_is_busy=This is list is busy retrieving or rendering rows for a prior action. Abort the prior action and proceed?
+staff.patron.items.items_renew_all.renew_items_in_list=Renew all the items in this list?
+staff.patron.items.items_renew_all.items_not_renewed=All items were not likely renewed (%1$s)
+staff.patron.items.items_renew.renew_item_singular=Are you sure you would like to renew item %1$s?
+staff.patron.items.items_renew.renew_item_singular=Are you sure you would like to renew items %1$s?
+staff.patron.items.items_renew.renewing=Renewing %1$s
+staff.patron.items.items_renew.renewed=%1$s renewed.
+staff.patron.items.items_renew.not_renewed=%1%s not renewed.\n%2$s
+staff.patron.items.items_renew.err_in_renew_via_barcode=Error in renew_via_barcode callback\nRenew probably did not happen for barcode %1$s
+staff.patron.items.items_renew.no_renew_for_barcode=Renew probably did not happen for barcode %1$s
+staff.patron.items.items_renew.no_renew=Renew probably did not happen.
+staff.patron.items.items_edit.invalid_date=Invalid Date
+staff.patron.items.items_edit.need_later_date=Due date needs to be after today.
+staff.patron.items.items_edit.edit_due_date.singular=Edit Due Date
+staff.patron.items.items_edit.edit_due_date.plural=Edit Due Dates
+staff.patron.items.items_edit.new_due_date=Enter a new due date for these items: %1$s
+staff.patron.items.items_edit.dates_not_modified=The due dates were not likely modified.
+staff.patron.items.items_edit.mark_barcode_lost=Mark barcode lost = %1$s
+staff.patron.items.items_edit.item_barcode=Item Barcode %1$s\n%2$s
+staff.patron.items.items_edit.items_not_marked_lost=The items were not likely marked lost.
+staff.patron.items.items_claimed_returned.date_cannot_be_in_future=Claims Returned Date cannot be in the future.
+staff.patron.items.items_claimed_returned.claimed_returned=Claimed Returned
+staff.patron.items.items_claimed_returned.enter_returned_date=Enter a claimed returned date for these items: %1$s
+staff.patron.items.items_claimed_returned.not_marked_claimed_returned=The items were not likely marked Claimed Returned.
+staff.patron.items.items_checkin.confirm_item_check_in.singular=Are you sure you would like to check in item %1$s?
+staff.patron.items.items_checkin.confirm_item_check_in.plural=Are you sure you would like to check in items %1$s?
+staff.patron.items.items_checkin.no_checkin=Checkin probably did not happen.
+staff.patron.items.show_catalog.barcode_not_cataloged=%1$s is not cataloged
+staff.patron.items.show_catalog.retrieving_title=Retrieving title...
+staff.patron.items.retrieve_row.callback_error=Error in callback for FM_CIRC_DETAILS.authoritative in patron/items.js
+staff.patron.items.retrieve_row.error_in_retrieve_row=error in patron/items.js retrieve_row():
+staff.patron.items.refresh.error_refreshing_row2=2 Error refreshing row in list\ncirc_id = %1$s\nnparams = %2$s
+staff.patron.items.refresh.error_refreshing_row=Error refreshing row in list\ncirc_id = %1$s\nnparams = %2$s
+staff.patron.items.retrieve.err_retrieving_circulations=Error retrieving circulations.
+staff.patron.items.gen_list_append.error=patron/items.js: error in gen_list_append
+staff.patron.search_result.search.no_patrons_found=No patrons found matching search criteria.
+staff.patron.search_result.search.capped_results=Results capped at %1$s patrons.
+staff.patron.search_result.search.enter_search_terms=Please enter some search terms.
+staff.patron.search_result.init.typeof_params=typeof params.on_retrieve == %1$s
+staff.patron.search_result.init.search_print=patron search print
+staff.patron.search_result.init.search_clipboard=patron search clipboard
+staff.patron.search_result.init.search_saving_columns=patron search saving columns
+staff.patron.summary.patron_bill.money=$ %1$s
+staff.patron.summary.retrieve.no_barcode=summary: No barcode or ID
+staff.patron.summary.patron_net_access=Internet
+staff.patron.summary.expires_on=Expires on
+staff.patron.ue.uEditInit.session_no_defined=User session is not defined
+staff.patron.ue.uEditSaveuser.error_creating_note=Error creating patron guardian or parent note
+staff.patron.ue.uEditShowSearch.search=Search would be:\n%1$s
+staff.patron.user_edit.save_user.depth_required=Depth is required on the %1$s permission.
+staff.patron.user_edit.save_user.user_modified_successfully=User %1$s [%2$s] successfully modified.\n%3$s permissions and %4$s work locations updated.
+staff.patron.user_edit.display_perm.select_one=-- Select One --
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/barcode_entry.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/barcode_entry.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/barcode_entry.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -61,9 +61,9 @@
if (typeof window.xulG == 'object' && typeof window.xulG.set_tab_name == 'function') {
if (xul_param('perm_editor')) {
- try { window.xulG.set_tab_name($(patronStrings).getString('staff.patron.barcode_entry.user_permission_editor')); } catch(E) { alert(E); }
+ try { window.xulG.set_tab_name($("patronStrings").getString('staff.patron.barcode_entry.user_permission_editor')); } catch(E) { alert(E); }
} else {
- try { window.xulG.set_tab_name($(patronStrings).getString('staff.patron.barcode_entry.check_out')); } catch(E) { alert(E); }
+ try { window.xulG.set_tab_name($("patronStrings").getString('staff.patron.barcode_entry.check_out')); } catch(E) { alert(E); }
}
}
@@ -73,8 +73,6 @@
}
} catch(E) {
- var err_msg = "!! This software has encountered an error. Please tell your friendly " +
- "system administrator or software developer the following:\n" + E + '\n';
var err_msg = $("commonStrings").getFormattedString('common.exception', ['patron/barcode_entry.xul', E]);
try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
alert(err_msg);
@@ -90,7 +88,7 @@
barcode = String( barcode ).replace( /\s+/g, '' );
- if (!barcode) { sound.bad(); add_msg($(patronStrings).getString('staff.patron.barcode_entry.no_barcode')); tb.select(); tb.focus(); return; }
+ if (!barcode) { sound.bad(); add_msg($("patronStrings").getString('staff.patron.barcode_entry.no_barcode')); tb.select(); tb.focus(); return; }
JSAN.use('util.network'); var net = new util.network();
@@ -103,11 +101,11 @@
var robj = req.getResultObject();
if (typeof robj.ilsevent != 'undefined') {
sound.bad();
- add_msg($(patronStrings).getFormattedString('staff.patron.barcode_entry.barcode_retrieval_problem', [barcode, js2JSON(robj)]));
+ add_msg($("patronStrings").getFormattedString('staff.patron.barcode_entry.barcode_retrieval_problem', [barcode, js2JSON(robj)]));
return;
} else if (robj == 0) {
sound.bad();
- add_msg($(patronStrings).getFormattedString('staff.patron.barcode_entry.barcode_not_found', [barcode]));
+ add_msg($("patronStrings").getFormattedString('staff.patron.barcode_entry.barcode_not_found', [barcode]));
return;
}
@@ -123,12 +121,12 @@
var parts = patron.util.retrieve_name_via_id( ses(), robj );
if (0 != g.error.yns_alert(
- $(patronStrings).getFormattedString('staff.patron.barcode_entry.consent_from_patron',
+ $("patronStrings").getFormattedString('staff.patron.barcode_entry.consent_from_patron',
[parts[0], parts[1] + (parts[2] ? ' ' + parts[2] : ''), g.data.hash.aou[ parts[3] ].name(), g.data.hash.aou[ parts[3] ].shortname()]),
- $(patronStrings).getString('staff.patron.barcode_entry.patron_consent_title'),
- $(patronStrings).getString('staff.patron.barcode_entry.patron_consent_accept'),
- $(patronStrings).getString('staff.patron.barcode_entry.patron_consent_deny'), null,
- $(patronStrings).getString('staff.patron.barcode_entry.patron_consent_confirm')
+ $("patronStrings").getString('staff.patron.barcode_entry.patron_consent_title'),
+ $("patronStrings").getString('staff.patron.barcode_entry.patron_consent_accept'),
+ $("patronStrings").getString('staff.patron.barcode_entry.patron_consent_deny'), null,
+ $("patronStrings").getString('staff.patron.barcode_entry.patron_consent_confirm')
)
) {
tb.select(); tb.focus();
@@ -175,7 +173,7 @@
location.href = loc + '?barcode=' + window.escape(barcode);
}
} catch(E) {
- g.error.standard_unexpected_error_alert($(patronStrings).getString('staff.patron.barcode_entry.patron_display_error'),E);
+ g.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.barcode_entry.patron_display_error'),E);
}
}
@@ -189,7 +187,7 @@
location.href = loc;
}
} catch(E) {
- g.error.standard_unexpected_error_alert($(patronStrings).getString('staff.patron.barcode_entry.user_perm_display_error'),E);
+ g.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.barcode_entry.user_perm_display_error'),E);
}
}
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/bill_cc_info.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/bill_cc_info.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/bill_cc_info.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -61,16 +61,16 @@
]]>
</script>
- <messagecatalog id="catStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties" />
+ <messagecatalog id="patronStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties" />
<messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties" />
<groupbox>
- <caption label="Credit Card Info"/>
+ <caption label="&staff.patron.bill_cc_info.info.label;/>
<grid>
<columns> <column flex="0" /> <column flex="0" /> </columns>
<rows>
<row>
- <label value="CC Type"/>
+ <label value="&staff.patron.bill_cc_info.type.label;"/>
<menulist id="cc_type" oncommand="g.payment_blob.cc_type = this.value;">
<menupopup>
<menuitem label="&staff.patron.bill_cc_info.visa.label;" value="Visa"/>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/bill_check_info.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/bill_check_info.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/bill_check_info.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -61,7 +61,7 @@
]]>
</script>
- <messagecatalog id="catStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties" />
+ <messagecatalog id="patronStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties" />
<messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties" />
<groupbox>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/display.js
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/display.js 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/display.js 2008-07-09 20:29:43 UTC (rev 10005)
@@ -102,7 +102,7 @@
function(ev) {
obj.controller.view.cmd_search_form.setAttribute('disabled','true');
obj.left_deck.node.selectedIndex = 0;
- obj.controller.view.patron_name.setAttribute('value','No Patron Selected');
+ obj.controller.view.patron_name.setAttribute('value', $("patronStrings").getString('staff.patron.display.cmd_search_form.no_patron'));
removeCSSClass(document.documentElement,'PATRON_HAS_BILLS');
removeCSSClass(document.documentElement,'PATRON_HAS_OVERDUES');
removeCSSClass(document.documentElement,'PATRON_HAS_NOTES');
@@ -224,8 +224,8 @@
'passthru_content_params' : {
'params' : {
'ses' : ses(),
- 'usr' : obj.patron.id(),
- }
+ 'usr' : obj.patron.id()
+ },
'on_save' : function(p) {
try {
if (obj.barcode) obj.barcode = p.card().barcode();
@@ -339,7 +339,7 @@
if (obj.barcode || obj.id) {
if (typeof window.xulG == 'object' && typeof window.xulG.set_tab_name == 'function') {
- try { window.xulG.set_tab_name('Retrieving Patron...'); } catch(E) { alert(E); }
+ try { window.xulG.set_tab_name($("patronStrings").getString('staff.patron.display.init.retrieving_patron')); } catch(E) { alert(E); }
}
obj.controller.view.PatronNavBar.selectedIndex = 1;
@@ -380,7 +380,8 @@
if (typeof window.xulG == 'object' && typeof window.xulG.set_tab_name == 'function') {
try {
window.xulG.set_tab_name(
- 'Patron: ' + patron.family_name() + ', ' + patron.first_given_name() + ' '
+ $("patronStrings").getString('staff.patron.display.tab_name')
+ + ' ' + patron.family_name() + ', ' + patron.first_given_name() + ' '
+ (patron.second_given_name() ? patron.second_given_name() : '' )
);
} catch(E) {
@@ -436,7 +437,9 @@
}
}
var holds = req.getResultObject();
- if (holds.ready && holds.ready > 0) msg += 'Holds available: ' + holds.ready;
+ if (holds.ready && holds.ready > 0) {
+ msg += $("patronStrings").getFormattedString('staff.patron.display.init.holds_ready', [holds.ready]);
+ }
if (msg) {
if (msg != obj.old_msg) {
//obj.error.yns_alert(msg,'Alert Message','OK',null,null,'Check here to confirm this message.');
@@ -500,7 +503,7 @@
'render_search_form' : function(params) {
var obj = this;
if (typeof window.xulG == 'object' && typeof window.xulG.set_tab_name == 'function') {
- try { window.xulG.set_tab_name('Patron Search'); } catch(E) { alert(E); }
+ try { window.xulG.set_tab_name($("patronStrings").getString('staff.patron.display.render_search_form.patron_search')); } catch(E) { alert(E); }
}
obj.controller.view.PatronNavBar.selectedIndex = 0;
@@ -509,7 +512,12 @@
var loc = urls.XUL_PATRON_SEARCH_FORM;
var my_xulG = {
- 'clear_left_deck' : function() { setTimeout( function() { obj.left_deck.clear_all_except(loc); obj.render_search_form(params); }, 0); },
+ 'clear_left_deck' : function() {
+ setTimeout( function() {
+ obj.left_deck.clear_all_except(loc);
+ obj.render_search_form(params);
+ }, 0);
+ },
'on_submit' : function(query) {
obj.controller.view.cmd_patron_retrieve.setAttribute('disabled','true');
var list_frame = obj.right_deck.reset_iframe(
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/display.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/display.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/display.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -26,10 +26,10 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- BEHAVIOR -->
- <script type="text/javascript">
+ <script type="text/javascript">
var myPackageDir = 'open_ils_staff_client'; var IAMXUL = true; var g = {};
</script>
- <scripts id="openils_util_scripts"/>
+ <scripts id="openils_util_scripts"/>
<script type="text/javascript" src="/xul/server/main/JSAN.js"/>
<script>
@@ -50,7 +50,7 @@
'barcode' : xul_param('barcode'),
'id' : xul_param('id'),
'query' : xul_param('query'),
- 'doit' : xul_param('doit'),
+ 'doit' : xul_param('doit')
} );
//document.documentElement.style.setProperty('font-size-adjust','1','important');
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -12,7 +12,7 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- LOCALIZATION -->
<!DOCTYPE window PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
@@ -39,7 +39,7 @@
function my_init() {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
+ if (typeof JSAN == 'undefined') { throw( $("commonStrings").getString('common.jsan.missing') ); }
JSAN.errorLevel = "die"; // none, warn, or die
JSAN.addRepository('/xul/server/');
@@ -74,8 +74,7 @@
}catch(E){alert(E);}
} catch(E) {
- var err_msg = "!! This software has encountered an error. Please tell your friendly " +
- "system administrator or software developer the following:\npatron_info.xul\n" + E + '\n';
+ var err_msg = $("commonStrings").getFormattedString('common.exception', ['patron/info.xul', E]);
try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
alert(err_msg);
}
@@ -100,10 +99,10 @@
<vbox flex="1" class="my_overflow2">
<tabbox flex="1" orient="horizontal">
<tabs orient="vertical" class="tabs-left">
- <tab accesskey="N" label="Notes" />
- <tab accesskey="S" label="Stat Cats"/>
- <tab accesskey="y" label="Surveys"/>
- <tab accesskey="G" label="Group"/>
+ <tab accesskey="&staff.patron.info.notes.accesskey;" label="&staff.patron.info.notes.label;"/>
+ <tab accesskey="&staff.patron.info.stat_cats.accesskey;" label="&staff.patron.info.stat_cats.label;"/>
+ <tab accesskey="&staff.patron.info.surveys.accesskey;" label="&staff.patron.info.surveys.label;"/>
+ <tab accesskey="&staff.patron.info.group.accesskey;" label="&staff.patron.info.group.label;"/>
<tab label=" " disabled="true" linkedpanel="notes_panel" flex="1"/>
<tab label=" " disabled="true" linkedpanel="notes_panel" flex="1"/>
<tab label=" " disabled="true" linkedpanel="notes_panel" flex="1"/>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_group.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_group.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_group.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -303,9 +303,15 @@
if (direction == null) throw($("patronStrings").getString('staff.patron.info_group.link_patron.null_not_allowed'));
var first_msg; var second_msg;
switch(direction) {
- case true: first_msg = "-->"; break;
- case false: first_msg = "<--"; break;
- default: throw($("patronStrings").getString('staff.patron.info_group.link_patron.invalid_parameter')); break;
+ case true:
+ first_msg = "-->";
+ break;
+ case false:
+ first_msg = "<--";
+ break;
+ default:
+ throw($("patronStrings").getString('staff.patron.info_group.link_patron.invalid_parameter'));
+ break;
}
var barcode = window.prompt($("patronStrings").getString('staff.patron.info_group.link_patron.scan_patron_barcode'),'',first_msg);
if (!barcode) return;
@@ -320,8 +326,8 @@
if (typeof patron_a.ilsevent != 'undefined') throw(patron_a);
switch(direction) {
case true:
- second_msg = $("patronStrings").getFormattedString('staff.patron.info_group.link_patron.move_patron_to_new_usergroup',[patron_a.card().barcode(), patron_b.card().barcode()]);
- break;
+ second_msg = $("patronStrings").getFormattedString('staff.patron.info_group.link_patron.move_patron_to_new_usergroup',[patron_a.card().barcode(), patron_b.card().barcode()]);
+ break;
case false:
second_msg = $("patronStrings").getFormattedString('staff.patron.info_group.link_patron.move_patron_to_new_usergroup',[patron_b.card().barcode(), patron_a.card().barcode()]);
break;
@@ -329,10 +335,10 @@
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect UniversalBrowserWrite');
var top_xml = '<vbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" flex="1" style="overflow: auto"><description>' + second_msg + '</description>';
- top_xml += '<hbox><spacer flex="1"/><button label="'+$("patronStrings").getFormattedString('staff.patron.info_group.link_patron.move.label')+'"';
- top_xml += ' accesskey="'+$("patronStrings").getFormattedString('staff.patron.info_group.link_patron.move.accesskey')+'" name="fancy_submit"/>';
- top_xml += '<button label="'+$("patronStrings").getFormattedString('staff.patron.info_group.link_patron.done.label')+'"';
- top_xml += ' accesskey="'+$("patronStrings").getFormattedString('staff.patron.info_group.link_patron.done.accesskey')+'" name="fancy_cancel"/></hbox></vbox>';
+ top_xml += '<hbox><spacer flex="1"/><button label="'+$("patronStrings").getString('staff.patron.info_group.link_patron.move.label')+'"';
+ top_xml += ' accesskey="'+$("patronStrings").getString('staff.patron.info_group.link_patron.move.accesskey')+'" name="fancy_submit"/>';
+ top_xml += '<button label="'+$("patronStrings").getString('staff.patron.info_group.link_patron.done.label')+'"';
+ top_xml += ' accesskey="'+$("patronStrings").getString('staff.patron.info_group.link_patron.done.accesskey')+'" name="fancy_cancel"/></hbox></vbox>';
var xml = '<vbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" flex="1" style="overflow: vertical"><hbox flex="1">';
/************/
xml += '<vbox flex="1">';
@@ -406,6 +412,7 @@
]]>
</script>
+ <messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties"/>
<messagecatalog id="patronStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties"/>
<commandset id="info_group_cmds">
@@ -426,8 +433,6 @@
</popup>
</popupset>
- <messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties"/>
-
<vbox flex="1" class="my_overflow" id="group_panel">
<groupbox flex="1">
<caption label="&staff.patron.info_group.group_member.label;"/>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_notes.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_notes.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_notes.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -12,7 +12,7 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- LOCALIZATION -->
<!DOCTYPE window PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
@@ -25,8 +25,12 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- BEHAVIOR -->
- <script type="text/javascript">var myPackageDir = 'open_ils_staff_client'; var IAMXUL = true; var g = {};</script>
- <scripts id="openils_util_scripts"/>
+ <script type="text/javascript">
+ var myPackageDir = 'open_ils_staff_client';
+ var IAMXUL = true;
+ var g = {};
+ </script>
+ <scripts id="openils_util_scripts"/>
<script type="text/javascript" src="/xul/server/main/JSAN.js"/>
<script>
@@ -37,7 +41,7 @@
function my_init() {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
+ if (typeof JSAN == 'undefined') { throw( $("commonStrings").getString('common.jsan.missing') ); }
JSAN.errorLevel = "die"; // none, warn, or die
JSAN.addRepository('/xul/server/');
@@ -55,8 +59,7 @@
refresh();
} catch(E) {
- var err_msg = "!! This software has encountered an error. Please tell your friendly " +
- "system administrator or software developer the following:\npatron_info.xul\n" + E + '\n';
+ var err_msg = $("commonStrings").getFormattedString('common.exception', ['patron/info_notes.xul', E]);
try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
alert(err_msg);
}
@@ -91,11 +94,11 @@
function render_notes() {
JSAN.use('util.widgets'); util.widgets.remove_children('notes_panel');
var np = $('notes_panel');
- var hbox = document.createElement('hbox'); np.appendChild(hbox);
- var btn = document.createElement('button'); hbox.appendChild(btn);
- btn.setAttribute('label','Add New Note');
- btn.setAttribute('accesskey','A');
- btn.setAttribute('oncommand','new_note()');
+ var hbox = document.createElement('hbox'); np.appendChild(hbox);
+ var btn = document.createElement('button'); hbox.appendChild(btn);
+ btn.setAttribute('label', $("patronStrings").getString('staff.patron.info_notes.render_notes.add_new_note.label'));
+ btn.setAttribute('accesskey', $("patronStrings").getString('staff.patron.info_notes.render_notes.add_new_note.accesskey'));
+ btn.setAttribute('oncommand','new_note()');
for (var i = 0; i < g.notes.length; i++) {
@@ -103,66 +106,86 @@
var node = $('note_template').cloneNode(true); np.appendChild(node); node.hidden = false;
apply(node,'create_date',g.notes[i].create_date().toString().substr(0,10));
util.widgets.apply(node,'name','create_date',
- function(n){n.setAttribute("tooltiptext","Note ID: " + g.notes[i].id() + " Creator ID: " + g.notes[i].creator());}
+ function(n){n.setAttribute("tooltiptext", $("patronStrings").getFormattedString('staff.patron.info_notes.render_notes.tooltiptext', [g.notes[i].id(), g.notes[i].creator()]));}
);
apply(node,'title',g.notes[i].title());
- apply(node,'pub',get_bool(g.notes[i].pub()) ? "Patron Visible" : "Staff Only");
+ if (get_bool(g.notes[i].pub())) {
+ apply(node, 'pub', $("patronStrings").getString('staff.patron.info_notes.render_notes.pub.patron_visible'));
+ } else {
+ apply(node, 'pub', $("patronStrings").getString('staff.patron.info_notes.render_notes.pub.staff_only') );
+ }
apply(node,'value',g.notes[i].value());
apply(node,'id',g.notes[i].id());
apply(node,'creator',g.notes[i].creator());
/* button bar */
- var hb = document.createElement('hbox'); np.appendChild(hb);
- var btn1 = document.createElement('button'); hb.appendChild(btn1);
- btn1.setAttribute('label','Delete This Note');
- btn1.setAttribute('image',"/xul/server/skin/media/images/up_arrow.gif");
+ var hb = document.createElement('hbox');
+ np.appendChild(hb);
+ var btn1 = document.createElement('button');
+ hb.appendChild(btn1);
+ btn1.setAttribute('label',$("patronStrings").getString('staff.patron.info_notes.render_notes.btn1.delete_note.label'));
+ btn1.setAttribute('image',"/xul/server/skin/media/images/up_arrow.gif");
- btn1.addEventListener(
- 'command',
- function(id){ return function() {
- var r = g.error.yns_alert('Delete the note titled "' + g.notes[id].title() + '" created on ' + g.notes[id].create_date().toString().substr(0,10) + '?','Delete Note','Yes','No',null,'Check here to confirm this action');
- if (r == 0) {
- g.network.simple_request('FM_AUN_DELETE',[ses(),g.notes[id].id()]);
- setTimeout(function(){ g.new_note = true; alert('Note deleted.'); refresh();},0);
- }
- } }(i),
- false
- );
- var btn2 = document.createElement('button'); hb.appendChild(btn2);
- btn2.setAttribute('label','Print');
- btn2.setAttribute('image',"/xul/server/skin/media/images/up_arrow.gif");
+ btn1.addEventListener(
+ 'command',
+ function(id){
+ return function() {
+ var r = g.error.yns_alert(
+ $("patronStrings").getFormattedString('staff.patron.info_notes.render_notes.delete_note_message',[g.notes[id].title(), g.notes[id].create_date().toString().substr(0,10)]),
+ $("patronStrings").getString('staff.patron.info_notes.render_notes.delete_note_title'),
+ $("commonStrings").getString('common.yes'),
+ $("commonStrings").getString('common.no'),
+ null,
+ $("commonStrings").getString('common.check_to_confirm')
+ );
+ if (r == 0) {
+ g.network.simple_request('FM_AUN_DELETE',[ses(),g.notes[id].id()]);
+ setTimeout(function(){
+ g.new_note = true;
+ alert($("patronStrings").getString('staff.patron.info_notes.render_notes.note_deleted'));
+ refresh();
+ },0);
+ }
+ }
+ }
+ (i), false
+ );
+ var btn2 = document.createElement('button');
+ hb.appendChild(btn2);
+ btn2.setAttribute('label',$("patronStrings").getString('staff.patron.info_notes.render_notes.btn2.print_note.label'));
+ btn2.setAttribute('image',"/xul/server/skin/media/images/up_arrow.gif");
- btn2.addEventListener(
- 'command',
- function(id){ return function() {
- try {
- JSAN.use('patron.util');
- var patron_obj = patron.util.retrieve_fleshed_au_via_id(ses(),g.patron_id);
- var staff_obj = patron.util.retrieve_name_via_id( ses(), g.notes[id].creator() );
- JSAN.use('util.print'); var p = new util.print();
- p.simple(
- '<hr/>'
- + '<p>Pertaining to ' +
- ( patron_obj.prefix() ? patron_obj.prefix() + ' ' : '') +
- patron_obj.family_name() + ', ' +
- patron_obj.first_given_name() + ' ' +
- ( patron_obj.second_given_name() ? patron_obj.second_given_name() + ' ' : '' ) +
- ( patron_obj.suffix() ? patron_obj.suffix() : '')
- + ' : '
- + patron_obj.card().barcode() + '</p>'
- + '<p><b>"'
- + g.notes[id].title() + '"</b> created on ' + g.notes[id].create_date().toString().substr(0,10)
- + ' by ' + staff_obj[0] + ' @ ' + g.data.hash.aou[ staff_obj[3] ].shortname()
- + '</p><p>'
- + g.notes[id].value()
- + '</p><hr/>'
- );
- } catch(E) {
- g.error.standard_unexpected_error_alert('printing note #' + g.notes[id].id(), E);
- }
- } }(i),
- false
- );
+ btn2.addEventListener(
+ 'command',
+ function(id){ return function() {
+ try {
+ JSAN.use('patron.util');
+ var patron_obj = patron.util.retrieve_fleshed_au_via_id(ses(),g.patron_id);
+ var staff_obj = patron.util.retrieve_name_via_id( ses(), g.notes[id].creator() );
+ JSAN.use('util.print');
+ var p = new util.print();
+ p.simple(
+ '<hr/>'
+ + '<p>'+ $("patronStrings").getString('staff.patron.info_notes.render_notes.pertaining_to') + ' ' +
+ ( patron_obj.prefix() ? patron_obj.prefix() + ' ' : '') +
+ patron_obj.family_name() + ', ' +
+ patron_obj.first_given_name() + ' ' +
+ ( patron_obj.second_given_name() ? patron_obj.second_given_name() + ' ' : '' ) +
+ ( patron_obj.suffix() ? patron_obj.suffix() : '')
+ + ' : '
+ + patron_obj.card().barcode() + '</p>'
+ + '<p><b>"' + g.notes[id].title() + '"</b>'
+ + $("patronStrings").getFormattedString('staff.patron.info_notes.render_notes.created_on', [g.notes[id].create_date().toString().substr(0,10), staff_obj[0], g.data.hash.aou[ staff_obj[3] ].shortname()])
+ + '</p><p>'
+ + g.notes[id].value()
+ + '</p><hr/>'
+ );
+ } catch(E) {
+ g.error.standard_unexpected_error_alert($("patronStrings").getFormattedString('staff.patron.info_notes.render_notes.printing_note_num', [g.notes[id].id()]), E);
+ }
+ }
+ }(i), false
+ );
}
}
@@ -170,7 +193,15 @@
function new_note() {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect UniversalBrowserWrite");
- var xml = '<groupbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" flex="1"><caption label="New Note"/><grid flex="1"><columns><column/><column flex="1"/></columns><rows><row><label value="Patron Visible?"/><checkbox id="pub" name="fancy_data"/></row><row><label value="Title"/><textbox id="title" name="fancy_data"/></row><row><label value="Note"/><textbox multiline="true" id="note" name="fancy_data"/></row><row><spacer/><hbox><button label="Cancel" name="fancy_cancel" accesskey="C"/><button label="Add Note" accesskey="A" name="fancy_submit"/></hbox></row></rows></grid></groupbox>';
+ var xml = '<groupbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" flex="1">';
+ xml += '<caption label="'+$("patronStrings").getString('staff.patron.info_notes.new_note.label')+'"/><grid flex="1"><columns><column/><column flex="1"/></columns><rows><row>';
+ xml += '<label value="'+$("patronStrings").getString('staff.patron.info_notes.new_note.patron_visible.value')+'"/><checkbox id="pub" name="fancy_data"/></row>';
+ xml += '<row><label value="'+$("patronStrings").getString('staff.patron.info_notes.new_note.title.value')+'"/><textbox id="title" name="fancy_data"/></row>';
+ xml += '<row><label value="'+$("patronStrings").getString('staff.patron.info_notes.new_note.note.value')+'"/><textbox multiline="true" id="note" name="fancy_data"/></row>';
+ xml += '<row><spacer/><hbox><button label="'+$("patronStrings").getString('staff.patron.info_notes.new_note.cancel.label')+'" name="fancy_cancel"';
+ xml += ' accesskey="'+$("patronStrings").getString('staff.patron.info_notes.new_note.cancel.accesskey')+'"/>';
+ xml += '<button label="'+$("patronStrings").getString('staff.patron.info_notes.new_note.add.label')+'"';
+ xml += ' accesskey="'+$("patronStrings").getString('staff.patron.info_notes.new_note.add.accesskey')+'" name="fancy_submit"/></hbox></row></rows></grid></groupbox>';
//g.data.init({'via':'stash'});
//g.data.temp_note_xml = xml; g.data.stash('temp_note_xml');
JSAN.use('util.window'); var win = new util.window();
@@ -180,7 +211,7 @@
//+ '&focus=' + window.escape('title')
//+ '&title=' + window.escape('Add Note'),
'fancy_prompt', 'chrome,resizable,modal,width=700,height=500',
- { 'xml' : xml, 'focus' : 'title', 'title' : 'Add Note' }
+ { 'xml' : xml, 'focus' : 'title', 'title' : $("patronStrings").getString('staff.patron.info_notes.new_note.add_note_title') }
);
if (fancy_prompt_data.fancy_status == 'complete') {
//alert(js2JSON(g.data.fancy_prompt_data));
@@ -192,15 +223,22 @@
note.usr( g.patron_id );
var r = g.network.simple_request('FM_AUN_CREATE',[ ses(), note ]);
if (typeof r.ilsevent != 'undefined') throw(r);
- setTimeout(function(){ g.new_note = true; alert('Note added.'); refresh();},0);
+ setTimeout(function(){
+ g.new_note = true;
+ alert($("patronStrings").getString('staff.patron.info_notes.new_note.add_note_title'));
+ refresh();
+ },0);
}
} catch(E) {
- g.error.standard_unexpected_error_alert('The note was not likely created.',E);
+ g.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.info_notes.new_note.note_not_created'),E);
}
}
]]>
</script>
+
+ <messagecatalog id="patronStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties"/>
+ <messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties" />
<stack hidden="true" id="note_template" flex="1">
<groupbox flex="1" style="background-color: black;"/>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_stat_cats.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_stat_cats.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_stat_cats.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -12,7 +12,7 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- LOCALIZATION -->
<!DOCTYPE window PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
@@ -37,7 +37,7 @@
function my_init() {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
+ if (typeof JSAN == 'undefined') { throw( $("commonStrings").getString('common.jsan.missing') ); }
JSAN.errorLevel = "die"; // none, warn, or die
JSAN.addRepository('/xul/server/');
@@ -53,8 +53,7 @@
refresh();
} catch(E) {
- var err_msg = "!! This software has encountered an error. Please tell your friendly " +
- "system administrator or software developer the following:\npatron_info_stat_cats.xul\n" + E + '\n';
+ var err_msg = $("commonStrings").getFormattedString('common.exception', ['patron/info_stat_cats', E]);
try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
alert(err_msg);
}
@@ -71,7 +70,7 @@
if (g.patron.ilsevent) throw(g.patron);
} catch(E) {
- g.error.standard_unexpected_error_alert('Failed to retrieve patron stat cats.',E);
+ g.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.info_stat_cats.retrieve_fleshed_patron.failed'),E);
g.patron = null;
}
@@ -104,9 +103,15 @@
for (var i = 0; i < my_actsc.length; i++) {
/* template */
- var actsc_node = $('actsc_template').cloneNode(true); sp.appendChild(actsc_node); actsc_node.hidden = false;
+ var actsc_node = $('actsc_template').cloneNode(true);
+ sp.appendChild(actsc_node);
+ actsc_node.hidden = false;
apply(actsc_node,'name',my_actsc[i].name());
- apply(actsc_node,'opac',my_actsc[i].opac_visible() ? 'OPAC Visible' : 'Not OPAC Visible');
+ if (my_actsc[i].opac_visible()) {
+ apply(actsc_node, 'opac', $("patronStrings").getString('staff.patron.info_stat_cats.render_stat_cats.opac_visible'));
+ } else {
+ apply(actsc_node, 'opac', $("patronStrings").getString('staff.patron.info_stat_cats.render_stat_cats.not_opac_visible'));
+ }
apply(actsc_node,'owner',g.data.hash.aou[my_actsc[i].owner()].shortname());
var nl = actsc_node.getElementsByAttribute('name','entry');
@@ -136,9 +141,16 @@
sc = sc[0];
/* template */
- var actsc_node = $('actsc_template').cloneNode(true); sp.appendChild(actsc_node); actsc_node.hidden = false;
+ var actsc_node = $('actsc_template').cloneNode(true);
+ sp.appendChild(actsc_node);
+ actsc_node.hidden = false;
+
apply(actsc_node,'name',sc.name());
- apply(actsc_node,'opac',sc.opac_visible() ? 'OPAC Visible' : 'Not OPAC Visible');
+ if (sc.opac_visible()) {
+ apply(actsc_node, 'opac', $("patronStrings").getString('staff.patron.info_stat_cats.render_stat_cats.opac_visible'));
+ } else {
+ apply(actsc_node, 'opac', $("patronStrings").getString('staff.patron.info_stat_cats.render_stat_cats.not_opac_visible'));
+ }
apply(actsc_node,'owner',g.data.hash.aou[sc.owner()].shortname());
var nl = actsc_node.getElementsByAttribute('name','entry');
@@ -148,20 +160,26 @@
if (entry_placeholder) {
/* template */
- var actsce_node = $('actsce_template').cloneNode(true); entry_placeholder.appendChild(actsce_node); actsce_node.hidden = false;
+ var actsce_node = $('actsce_template').cloneNode(true);
+ entry_placeholder.appendChild(actsce_node);
+ actsce_node.hidden = false;
+
var scem = scem_hash[ i ];
apply(actsce_node,'value',scem.stat_cat_entry());
}
} catch(E) {
- g.error.standard_unexpected_error_alert('rendering/retrieving stat cat',E);
+ g.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.info_stat_cats.render_stat_cats.rendering_exception'),E);
}
}
}
]]>
</script>
+
+ <messagecatalog id="patronStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties"/>
+ <messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties" />
<stack hidden="true" id="actsc_template" flex="1">
<groupbox flex="1" style="background-color: black;"/>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_surveys.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_surveys.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/info_surveys.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -12,7 +12,7 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- LOCALIZATION -->
<!DOCTYPE window PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
@@ -37,7 +37,7 @@
function my_init() {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
+ if (typeof JSAN == 'undefined') { throw( $("commonStrings").getString('common.jsan.missing') ); }
JSAN.errorLevel = "die"; // none, warn, or die
JSAN.addRepository('/xul/server/');
@@ -53,8 +53,7 @@
refresh();
} catch(E) {
- var err_msg = "!! This software has encountered an error. Please tell your friendly " +
- "system administrator or software developer the following:\npatron_info_surveys.xul\n" + E + '\n';
+ var err_msg = $("commonStrings").getFormattedString('common.exception', ['patron/info_surveys.xul', E]);
try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
alert(err_msg);
}
@@ -76,7 +75,7 @@
g.survey_responses[ surveys[i].id() ] = responses;
}
} catch(E) {
- g.error.standard_unexpected_error_alert('Failed to retrieve all the survey responses.',E);
+ g.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.info_surveys.retrieve_surveys.failed'),E);
}
}
@@ -104,8 +103,16 @@
var asv_node = $('asv_template').cloneNode(true); sp.appendChild(asv_node); asv_node.hidden = false;
apply(asv_node,'id',g.data.hash.asv[i].id());
apply(asv_node,'description',g.data.hash.asv[i].description());
- apply(asv_node,'required',g.data.hash.asv[i].required() ? 'Required' : 'Not Required');
- apply(asv_node,'opac',g.data.hash.asv[i].opac() ? 'OPAC Visible' : 'Not OPAC Visible');
+ if (g.data.hash.asv[i].required()) {
+ apply(asv_node, 'required', $("patronStrings").getString('staff.patron.info_surveys.render_surveys.required'));
+ } else {
+ apply(asv_node, 'required', $("patronStrings").getString('staff.patron.info_surveys.render_surveys.not_required'));
+ }
+ if (g.data.hash.asv[i].opac()) {
+ apply(asv_node, 'opac', $("patronStrings").getString('staff.patron.info_stat_cats.render_stat_cats.opac_visible'));
+ } else {
+ apply(asv_node, 'opac', $("patronStrings").getString('staff.patron.info_stat_cats.render_stat_cats.not_opac_visible'));
+ }
var nl = asv_node.getElementsByAttribute('name','questions');
var question_placeholder;
@@ -116,7 +123,10 @@
for (var j = 0; j < questions.length; j++) {
/* template */
- var asvq_node = $('asvq_template').cloneNode(true); question_placeholder.appendChild(asvq_node); asvq_node.hidden = false;
+ var asvq_node = $('asvq_template').cloneNode(true);
+ question_placeholder.appendChild(asvq_node);
+ asvq_node.hidden = false;
+
apply(asvq_node,'ordinal',j+1);
apply(asvq_node,'question',questions[j].question());
@@ -147,11 +157,14 @@
]]>
</script>
+ <messagecatalog id="patronStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties"/>
+ <messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties" />
+
<stack hidden="true" id="asv_template" flex="1">
<groupbox flex="1" style="background-color: black;"/>
<groupbox flex="1" style="background-color: #CC9966; -moz-border-radius-topright: 35px;" >
<hbox>
- <label value="Survey #" style="font-weight: bold"/>
+ <label value="&staff.patron.info_surveys.survey_number.value;" style="font-weight: bold"/>
<label name="id" style="font-weight: bold"/>
<description name="description" style="font-weight: bold"/>
<spacer flex="1"/>
@@ -171,8 +184,8 @@
</grid>
<hbox hidden="true" id="asva_template" flex="1">
- <label value="Last Answered on:"/><label name="date"/>
- <label value="Answer:"/><description style="font-weight: bold" name="answer"/>
+ <label value="&staff.patron.info_surveys.last_answered.value;"/><label name="date"/>
+ <label value="&staff.patron.info_surveys.answer.value;"/><description style="font-weight: bold" name="answer"/>
</hbox>
<vbox flex="1" class="my_overflow" id="surveys_panel">
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/items.js
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/items.js 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/items.js 2008-07-09 20:29:43 UTC (rev 10005)
@@ -1,5 +1,7 @@
dump('entering patron.items.js\n');
+function $(id) { return document.getElementById(id); }
+
if (typeof patron == 'undefined') patron = {};
patron.items = function (params) {
@@ -104,7 +106,7 @@
'cmd_show_catalog2' : [ ['command'], function() { obj.show_catalog(2); } ],
'cmd_add_billing' : [ ['command'], function() { obj.add_billing(1); /*obj.retrieve();*/ } ],
'cmd_add_billing2' : [ ['command'], function() { obj.add_billing(2); /*obj.retrieve();*/ } ],
- 'cmd_show_noncats' : [ ['command'], function() { obj.show_noncats(); } ],
+ 'cmd_show_noncats' : [ ['command'], function() { obj.show_noncats(); } ]
}
}
);
@@ -172,7 +174,7 @@
obj.data.stash('hash','list');
t = obj.data.hash.cnct[ nc_circ.item_type() ];
}
- var cd = t.circ_duration() || "14 days";
+ var cd = t.circ_duration() || $("patronStrings").getString('staff.patron.items.show_noncats.14_days');
var i = util.date.interval_to_seconds( cd ) * 1000;
d.setTime( Date.parse(d) + i );
fake_circ.due_date( util.date.formatted_date(d,'%F') );
@@ -187,12 +189,12 @@
obj.list.append( { 'row' : { 'my' : { 'circ' : fake_circ, 'mvr' : fake_record, 'acp' : fake_copy } }, 'to_bottom' : true, 'no_auto_select' : true } );
} catch(F) {
- obj.error.standard_unexpected_error_alert('Error showing NonCat #' + robj[ii].id(),F);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getFormattedString('staff.patron.items.show_noncats.err_showing_noncat', [robj[ii].id()]),F);
}
}
} catch(E) {
- obj.error.standard_unexpected_error_alert('Error showing NonCat circulations',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.items.show_noncats.err_showing_circulations'),E);
}
},
@@ -225,10 +227,10 @@
try {
var obj = this; var list = obj.list;
if (list.on_all_fleshed != null) {
- var r = window.confirm('This is list is busy retrieving/rendering rows for a prior action. Abort the prior action and proceed?');
+ var r = window.confirm($("patronStrings").getString('staff.patron.items.items_renew_all.list_is_busy'));
if (!r) return;
}
- var r = window.confirm('Renew all the items in this list?');
+ var r = window.confirm($("patronStrings").getString('staff.patron.items.items_renew_all.renew_items_in_list'));
if (!r) return;
function flesh_callback() {
try {
@@ -236,13 +238,13 @@
obj.items_renew(1,true);
setTimeout(function(){list.on_all_fleshed = null; /* obj.retrieve();*/ },0);
} catch(E) {
- obj.error.standard_unexpected_error_alert('2 All items were not likely renewed',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getFormattedString('staff.patron.items.items_renew_all.items_not_renewed', ['2']),E);
}
}
list.on_all_fleshed = flesh_callback;
list.full_retrieve();
} catch(E) {
- this.error.standard_unexpected_error_alert('All items were not likely renewed',E);
+ this.error.standard_unexpected_error_alert($("patronStrings").getFormattedString('staff.patron.items.items_renew_all.items_not_renewed', ['1']),E);
}
},
@@ -254,7 +256,12 @@
if (!retrieve_ids || retrieve_ids.length == 0) return;
JSAN.use('util.functional');
if (!skip_prompt) {
- var msg = 'Are you sure you would like to renew item' + ( retrieve_ids.length > 1 ? 's ' : ' ') + util.functional.map_list( retrieve_ids, function(o){return o.barcode;}).join(', ') + '?';
+ var msg = '';
+ if(retrieve_ids.length > 1) {
+ msg += $("patronStrings").getFormattedString('staff.patron.items.items_renew.renew_item_plural',[util.functional.map_list( retrieve_ids, function(o){return o.barcode;}).join(', ')]);
+ } else {
+ msg += $("patronStrings").getFormattedString('staff.patron.items.items_renew.renew_item_singular', [util.functional.map_list( retrieve_ids, function(o){return o.barcode;}).join(', ')]);
+ }
var r = window.confirm(msg);
if (!r) { return; }
}
@@ -265,21 +272,21 @@
var x = document.getElementById('renew_msgs');
if (x) {
var l = document.createElement('label');
- l.setAttribute('value','Renewing ' + bc);
+ l.setAttribute('value', $("patronStrings").getFormattedString('staff.patron.items.items_renew.renewing',[bc]));
x.appendChild(l);
}
var renew = circ.util.renew_via_barcode( barcode, obj.patron_id,
function(r) {
try {
if ( (typeof r[0].ilsevent != 'undefined' && r[0].ilsevent == 0) ) {
- l.setAttribute('value', bc + ' renewed.');
+ l.setAttribute('value', $("patronStrings").getFormattedString('staff.patron.items.items_renew.renewed',[bc]));
obj.list_circ_map[ circ_id ].row.my.circ = r[0].payload.circ;
obj.list_circ_map[ circ_id ].row.my.acp = r[0].payload.copy;
obj.list_circ_map[ circ_id ].row.my.mvr = r[0].payload.record;
// A renewed circ is a new circ, and has a new circ_id.
obj.list_circ_map[ r[0].payload.circ.id() ] = obj.list_circ_map[ circ_id ];
} else {
- var msg = bc + ' not renewed.\n' + r[0].textcode + r[0].desc;
+ var msg = $("patronStrings").getFormattedString('staff.patron.items.items_renew.not_renewed',[bc, r[0].textcode + r[0].desc]);
l.setAttribute('value', msg);
alert(msg);
}
@@ -290,7 +297,7 @@
}
obj.refresh(circ_id);
} catch(E) {
- obj.error.standard_unexpected_error_alert('Error in renew_via_barcode callback\nRenew probably did not happen for barcode ' + barcode,E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getFormattedString('staff.patron.items.items_renew.err_in_renew_via_barcode',[barcode]), E);
}
}
);
@@ -303,11 +310,11 @@
var circ_id = retrieve_ids[i].circ_id;
gen_renew(barcode,circ_id);
} catch(E) {
- obj.error.standard_unexpected_error_alert('Renew probably did not happen for barcode ' + barcode,E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getFormattedString('staff.patron.items.items_renew.no_renew_for_barcode',[barcode]), E);
}
}
} catch(E) {
- obj.error.standard_unexpected_error_alert('Renew probably did not happen.',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.items.items_renew.no_renew'),E);
}
},
@@ -320,10 +327,10 @@
JSAN.use('util.date');
try {
if (! util.date.check('YYYY-MM-DD',value) ) {
- throw('Invalid Date');
+ throw($("patronStrings").getString('staff.patron.items.items_edit.invalid_date'));
}
if (util.date.check_past('YYYY-MM-DD',value) ) {
- throw('Due date needs to be after today.');
+ throw($("patronStrings").getString('staff.patron.items.items_edit.need_later_date'));
}
/*
if ( util.date.formatted_date(new Date(),'%F') == value) {
@@ -338,10 +345,14 @@
}
JSAN.use('util.functional');
- var title = 'Edit Due Date' + (retrieve_ids.length > 1 ? 's' : '');
+ var title = '';
+ if (retrieve_ids.length > 1) {
+ title += $("patronStrings").getString('staff.patron.items.items_edit.edit_due_date.plural');
+ } else {
+ title += $("patronStrings").getString('staff.patron.items.items_edit.edit_due_date.singular');
+ }
var value = 'YYYY-MM-DD';
- var text = 'Enter a new due date for these items: ' +
- util.functional.map_list(retrieve_ids,function(o){return o.barcode;}).join(', ');
+ var text = $("patronStrings").getFormattedString('staff.patron.items.items_edit.new_due_date', [util.functional.map_list(retrieve_ids,function(o){return o.barcode;}).join(', ')]);
var due_date; var invalid = true;
while(invalid) {
due_date = window.prompt(text,value,title);
@@ -362,7 +373,7 @@
obj.refresh(retrieve_ids[i].circ_id);
}
} catch(E) {
- obj.error.standard_unexpected_error_alert('The due dates were not likely modified.',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.items.items_edit.dates_not_modified'),E);
}
},
@@ -373,12 +384,12 @@
if (!retrieve_ids || retrieve_ids.length == 0) return;
for (var i = 0; i < retrieve_ids.length; i++) {
var barcode = retrieve_ids[i].barcode;
- dump('Mark barcode lost = ' + barcode);
+ dump($("patronStrings").getFormattedString('staff.patron.items.items_edit.mark_barcode_lost', [barcode]));
var robj = obj.network.simple_request( 'MARK_ITEM_LOST', [ ses(), { barcode: barcode } ]);
if (typeof robj.ilsevent != 'undefined') {
switch(Number(robj.ilsevent)) {
case 7018 /* COPY_MARKED_LOST */ :
- alert( 'Item Barcode ' + barcode + '\n' + robj.desc );
+ alert( $("patronStrings").getFormattedString('staff.patron.items.items_edit.item_barcode', [barcode, robj.desc]) );
break;
default: throw(robj);
}
@@ -387,7 +398,7 @@
}
}
} catch(E) {
- obj.error.standard_unexpected_error_alert('The items were not likely marked lost.',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.items.items_edit.items_not_marked_lost'),E);
}
},
@@ -400,13 +411,13 @@
function check_date(value) {
try {
if (! util.date.check('YYYY-MM-DD',value) ) {
- throw('Invalid Date');
+ throw($("patronStrings").getString('staff.patron.items.items_edit.invalid_date'));
}
if ( util.date.formatted_date(new Date(),'%F') == value) {
return true;
}
if (! util.date.check_past('YYYY-MM-DD',value) ) {
- throw('Claims Returned Date cannot be in the future.');
+ throw($("patronStrings").getString('staff.patron.items.items_claimed_returned.date_cannot_be_in_future'));
}
return true;
} catch(E) {
@@ -416,10 +427,10 @@
}
JSAN.use('util.functional');
- var title = 'Claimed Returned';
+ var title = $("patronStrings").getString('staff.patron.items.items_claimed_returned.claimed_returned');
var value = 'YYYY-MM-DD';
- var text = 'Enter a claimed returned date for these items: ' +
- util.functional.map_list(retrieve_ids,function(o){return o.barcode;}).join(', ');
+ var text = $("patronStrings").getFormattedString('staff.patron.items.items_claimed_returned.enter_returned_date',
+ [util.functional.map_list(retrieve_ids,function(o){return o.barcode;}).join(', ')]);
var backdate; var invalid = true;
while(invalid) {
backdate = window.prompt(text,value,title);
@@ -443,7 +454,7 @@
}
for (var i = 0; i < retrieve_ids.length; i++) obj.refresh(retrieve_ids[i].circ_id,true);
} catch(E) {
- obj.error.standard_unexpected_error_alert('The items were not likely marked Claimed Returned.',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.items.items_claimed_returned.not_marked_claimed_returned'),E);
}
},
@@ -453,7 +464,14 @@
var retrieve_ids = ( which == 2 ? obj.retrieve_ids2 : obj.retrieve_ids );
if (!retrieve_ids || retrieve_ids.length == 0) return;
JSAN.use('util.functional');
- var msg = 'Are you sure you would like to check in item' + ( retrieve_ids.length > 1 ? 's ' : ' ') + util.functional.map_list( retrieve_ids, function(o){return o.barcode;}).join(', ') + '?';
+ var msg = '';
+ if (retrieve_ids.length > 1) {
+ msg += $("patronStrings").getFormattedString('staff.patron.items.items_checkin.confirm_item_check_in.plural',
+ [util.functional.map_list( retrieve_ids, function(o){return o.barcode;}).join(', ')]);
+ } else {
+ msg += $("patronStrings").getFormattedString('staff.patron.items.items_checkin.confirm_item_check_in.singular'
+ [util.functional.map_list( retrieve_ids, function(o){return o.barcode;}).join(', ')]);
+ }
var r = window.confirm(msg);
if (!r) { return; }
JSAN.use('circ.util');
@@ -467,7 +485,7 @@
}
obj.retrieve();
} catch(E) {
- obj.error.standard_unexpected_error_alert('Checkin probably did not happen.',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.items.items_checkin.no_checkin'),E);
}
},
@@ -479,18 +497,18 @@
for (var i = 0; i < retrieve_ids.length; i++) {
var doc_id = retrieve_ids[i].doc_id;
if (!doc_id) {
- alert(retrieve_ids[i].barcode + ' is not cataloged');
+ alert($("patronStrings").getFormattedString('staff.patron.items.show_catalog.barcode_not_cataloged', [retrieve_ids[i].barcode]));
continue;
}
var opac_url = xulG.url_prefix( urls.opac_rdetail ) + '?r=' + doc_id;
var content_params = {
'session' : ses(),
'authtime' : ses('authtime'),
- 'opac_url' : opac_url,
+ 'opac_url' : opac_url
};
xulG.new_tab(
xulG.url_prefix(urls.XUL_OPAC_WRAPPER),
- {'tab_name':'Retrieving title...'},
+ {'tab_name': $("patronStrings").getString('staff.patron.items.show_catalog.retrieving_title')},
content_params
);
}
@@ -533,7 +551,7 @@
'title' : { 'hidden' : false, 'flex' : '3' },
'due_date' : { 'hidden' : false },
'renewal_remaining' : { 'hidden' : false },
- 'stop_fines' : { 'hidden' : false },
+ 'stop_fines' : { 'hidden' : false }
}
);
var columns2 = circ.util.columns(
@@ -543,7 +561,7 @@
'circ_lib' : { 'hidden' : false },
'title' : { 'hidden' : false, 'flex' : '3' },
'checkin_time' : { 'hidden' : false },
- 'stop_fines' : { 'hidden' : false },
+ 'stop_fines' : { 'hidden' : false }
}
);
@@ -590,7 +608,7 @@
params.on_retrieve(row);
}
} catch(E) {
- obj.error.standard_unexpected_error_alert('Error in callback for FM_CIRC_DETAILS.authoritative in patron/items.js',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.items.retrieve_row.callback_error'), E);
}
}
);
@@ -614,7 +632,7 @@
return row;
} catch(E) {
- obj.error.standard_unexpected_error_alert('error in patron/items.js retrieve_row(): ',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.items.retrieve_row.error_in_retrieve_row'),E);
return params.row;
}
}
@@ -642,7 +660,7 @@
} else {
obj.error.sdump('D_PATRON','patron.items: No external .on_select()\n');
}
- },
+ }
}
);
@@ -663,7 +681,7 @@
if (typeof obj.on_select2 == 'function') {
obj.on_select2(list);
}
- },
+ }
}
);
},
@@ -679,16 +697,19 @@
} else {
var which_list = nparams.which_list;
switch(which_list) {
- case 1: case '1':
- setTimeout(function(){try{obj.list2.refresh_row(nparams);}catch(E){obj.error.standard_unexpected_error_alert('2 Error refreshing row in list\ncirc_id = ' + circ_id + '\nnparams = ' + nparams,E);}},1000);
+ case 1:
+ case '1':
+ setTimeout(function(){try{obj.list2.refresh_row(nparams);}catch(E){
+ obj.error.standard_unexpected_error_alert($("patronStrings").getFormattedString('staff.patron.items.refresh.error_refreshing_row2', [circ_id, nparams]),E);}},1000);
break;
default:
- setTimeout(function(){try{obj.list.refresh_row(nparams);}catch(E){obj.error.standard_unexpected_error_alert('2 Error refreshing row in list\ncirc_id = ' + circ_id + '\nnparams = ' + nparams,E);}},1000);
+ setTimeout(function(){try{obj.list.refresh_row(nparams);}catch(E){
+ obj.error.standard_unexpected_error_alert($("patronStrings").getFormattedString('staff.patron.items.refresh.error_refreshing_row2', [circ_id, nparams]),E);}},1000);
break;
}
}
} catch(E) {
- obj.error.standard_unexpected_error_alert('Error refreshing row in list\ncirc_id = ' + circ_id + '\nnparams = ' + nparams,E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getFormattedString('staff.patron.items.refresh.error_refreshing_row', [circ_id, nparams]),E);
}
},
@@ -704,7 +725,7 @@
[ ses(), obj.patron_id ]
);
if (typeof robj.ilsevent!='undefined') {
- obj.error.standard_unexpected_error_alert('Error retrieving circulations.',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.items.retrieve.err_retrieving_circulations'),E);
} else {
obj.checkouts = obj.checkouts.concat( robj.overdue );
obj.checkouts = obj.checkouts.concat( robj.out );
@@ -717,7 +738,7 @@
[ ses(), obj.patron_id ]
);
if (typeof robj.ilsevent!='undefined') {
- obj.error.standard_unexpected_error_alert('Error retrieving circulations.',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.items.retrieve.err_retrieving_circulations'),E);
} else {
obj.checkouts2 = obj.checkouts2.concat( robj.lost );
obj.checkouts2 = obj.checkouts2.concat( robj.claims_returned );
@@ -743,7 +764,7 @@
throw('typeof nparams = ' + typeof nparams);
}
} catch(E) {
- obj.error.standard_unexpected_error_alert('patron/items.js: error in gen_list_append',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.items.gen_list_append.error'),E);
}
};
}
@@ -806,7 +827,7 @@
obj.controller.view.sel_mark_items_missing2.setAttribute('disabled','false');
this.retrieve_ids2 = list;
- },
+ }
}
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/items.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/items.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/items.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -12,7 +12,7 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- LOCALIZATION -->
<!DOCTYPE window PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
@@ -35,7 +35,7 @@
function my_init() {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
+ if (typeof JSAN == 'undefined') { throw( $("commonStrings").getString('common.jsan.missing') ); }
JSAN.errorLevel = "die"; // none, warn, or die
JSAN.addRepository('/xul/server/');
JSAN.use('util.error'); g.error = new util.error();
@@ -53,8 +53,7 @@
default_focus();
} catch(E) {
- var err_msg = "!! This software has encountered an error. Please tell your friendly " +
- "system administrator or software developer the following:\n" + E + '\n';
+ var err_msg = $("commonStrings").getFormattedString('common.exception', ['patron/items.xul', E]);
try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
alert(err_msg);
}
@@ -65,7 +64,9 @@
]]>
</script>
- <messagecatalog id="circStrings" src="/xul/server/locale/<!--#echo var='locale' -->/circ.properties"/>
+ <messagecatalog id="circStrings" src="/xul/server/locale/<!--#echo var='locale' -->/circ.properties"/>
+ <messagecatalog id="patronStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties"/>
+ <messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties" />
<commandset id="items_cmds">
<command id="save_columns" />
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form.js
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form.js 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form.js 2008-07-09 20:29:43 UTC (rev 10005)
@@ -23,7 +23,7 @@
control_map : {
'cmd_broken' : [
['command'],
- function() { alert('Not Yet Implemented'); }
+ function() { alert($("commonStrings").getString('common.unimplemented')); }
],
'cmd_patron_search_submit' : [
['command'],
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -12,7 +12,7 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- LOCALIZATION -->
<!DOCTYPE window PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
@@ -32,10 +32,12 @@
<script type="text/javascript" src="/xul/server/main/JSAN.js"/>
<script>
<![CDATA[
+ function $(id) { return document.getElementById(id); }
+
function my_init() {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
+ if (typeof JSAN == 'undefined') { throw( $("commonStrings").getString('common.jsan.missing') ); }
JSAN.errorLevel = "die"; // none, warn, or die
JSAN.addRepository('/xul/server/');
JSAN.use('util.error'); g.error = new util.error();
@@ -62,8 +64,7 @@
}
} catch(E) {
- var err_msg = "!! This software has encountered an error. Please tell your friendly " +
- "system administrator or software developer the following:\n" + 'patron/search_form.xul\n' + E + '\n';
+ var err_msg = $("commonStrings").getFormattedString('common.exception', ['patron/search_form.xul', E]);
try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
alert(err_msg);
}
@@ -85,6 +86,9 @@
]]>
</script>
+
+ <messagecatalog id="patronStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties"/>
+ <messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties" />
<commandset id="patron_search_form_cmds">
</commandset>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form_overlay.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form_overlay.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_form_overlay.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<!DOCTYPE overlay PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
@@ -31,11 +31,11 @@
</columns>
<rows id="psr">
<row>
- <label control="inactive" accesskey="I" value="Include inactive patrons?"/>
+ <label control="inactive" accesskey="&staff.patron.search_form_overlay.inactive.accesskey;" value="&staff.patron.search_form_overlay.inactive.value;"/>
<checkbox id="inactive" />
</row>
<row>
- <label control="search_range_menu" value="Limit results to patrons in"/>
+ <label control="search_range_menu" value="&staff.patron.search_form_overlay.search_range_menu.value;"/>
<hbox id="search_depth" />
</row>
<row id="psr1">
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result.js
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result.js 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result.js 2008-07-09 20:29:43 UTC (rev 10005)
@@ -1,5 +1,7 @@
dump('entering patron/search_result.js\n');
+function $(id) { return document.getElementById(id); }
+
if (typeof patron == 'undefined') patron = {};
patron.search_result = function (params) {
@@ -31,12 +33,12 @@
'family_name' : { 'hidden' : 'false' },
'first_given_name' : { 'hidden' : 'false' },
'second_given_name' : { 'hidden' : 'false' },
- 'dob' : { 'hidden' : 'false' },
+ 'dob' : { 'hidden' : 'false' }
},
{
'except_these' : [
'barcode',
- ],
+ ]
}
);
obj.list.init(
@@ -54,7 +56,7 @@
if (typeof params.on_retrieve == 'function') {
params.on_retrieve(row);
} else {
- alert('typeof params.on_retrieve == ' + typeof params.on_retrieve);
+ alert($("patronStrings").getFormattedString('staff.patron.search_result.init.typeof_params', [typeof params.on_retrieve]));
}
} catch(E) {
alert('error: ' + E);
@@ -88,7 +90,7 @@
control_map : {
'cmd_broken' : [
['command'],
- function() { alert('Not Yet Implemented'); }
+ function() { alert($("commonStrings").getString('common.unimplemented')); }
],
'cmd_search_print' : [
['command'],
@@ -99,7 +101,7 @@
};
obj.list.print( p );
} catch(E) {
- obj.error.standard_unexpected_error_alert('patron search print',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.search_result.init.search_print'),E);
}
}
],
@@ -109,7 +111,7 @@
try {
obj.list.clipboard();
} catch(E) {
- obj.error.standard_unexpected_error_alert('patron search clipboard',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.search_result.init.search_clipboard'),E);
}
}
],
@@ -119,7 +121,7 @@
try {
obj.list.save_columns();
} catch(E) {
- obj.error.standard_unexpected_error_alert('patron search saving columns',E);
+ obj.error.standard_unexpected_error_alert($("patronStrings").getString('staff.patron.search_result.init.search_saving_columns'),E);
}
}
],
@@ -190,15 +192,15 @@
results = this.network.simple_request( 'FM_AU_IDS_RETRIEVE_VIA_HASH', params );
if ( (results == null) || (typeof results.ilsevent != 'undefined') ) throw(results);
if (results.length == 0) {
- alert('No patrons found matching search criteria.');
+ alert($("patronStrings").getString('staff.patron.search_result.search.no_patrons_found'));
return;
}
if (results.length == obj.result_cap+1) {
results.pop();
- alert('Results capped at ' + obj.result_cap + ' patrons.');
+ alert($("patronStrings").getFormattedString('staff.patron.search_result.search.capped_results', [obj.result_cap]));
}
} else {
- alert('Please enter some search terms.');
+ alert($("patronStrings").getString('staff.patron.search_result.search.enter_search_terms'));
return;
}
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -12,7 +12,7 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- LOCALIZATION -->
<!DOCTYPE window PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
@@ -26,16 +26,18 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- BEHAVIOR -->
- <script type="text/javascript">var myPackageDir = 'open_ils_staff_client'; var IAMXUL = true; var g = {};</script>
- <scripts id="openils_util_scripts"/>
+ <script type="text/javascript">var myPackageDir = 'open_ils_staff_client'; var IAMXUL = true; var g = {};</script>
+ <scripts id="openils_util_scripts"/>
<script type="text/javascript" src="/xul/server/main/JSAN.js"/>
<script>
<![CDATA[
+ function $(id) { return document.getElementById(id); }
+
function my_init() {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
+ if (typeof JSAN == 'undefined') { throw( $("commonStrings").getString('common.jsan.missing') ); }
JSAN.errorLevel = "die"; // none, warn, or die
JSAN.addRepository('/xul/server/');
JSAN.use('util.error'); g.error = new util.error();
@@ -57,8 +59,7 @@
g.search_result.init( { 'query' : query } );
} catch(E) {
- var err_msg = "!! This software has encountered an error. Please tell your friendly " +
- "system administrator or software developer the following:\n" + E + '\n';
+ var err_msg = $("commonStrings").getFormattedString('common.exception', ['patron/search_result.xul', E]);
try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
alert(err_msg);
}
@@ -80,7 +81,8 @@
<command id="cmd_save_cols" />
</commandset>
- <messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties"/>
+ <messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties"/>
+ <messagecatalog id="patronStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties"/>
<box id="patron_search_result_main" />
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result_overlay.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result_overlay.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/search_result_overlay.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<!DOCTYPE overlay PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
<overlay id="patron_search_result_overlay"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
@@ -14,9 +14,9 @@
<tree id="patron_list" flex="1" enableColumnDrag="true" seltype="multiple"/>
<hbox>
<spacer flex="1"/>
- <button label="Save Columns" command="cmd_save_cols"/>
- <button label="Copy to Clipboard" command="cmd_sel_clip"/>
- <button label="Print" command="cmd_search_print" />
+ <button label="&staff.patron.search_result_overlay.save_cols.label;" command="cmd_save_cols"/>
+ <button label="&staff.patron.search_result_overlay.copy_to_clipboard.label;" command="cmd_sel_clip"/>
+ <button label="&staff.patron.search_result_overlay.print.label;" command="cmd_search_print" />
</hbox>
</vbox>
</box>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary.js
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary.js 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary.js 2008-07-09 20:29:43 UTC (rev 10005)
@@ -1,5 +1,7 @@
dump('entering patron.summary.js\n');
+function $(id) { return document.getElementById(id); }
+
if (typeof patron == 'undefined') patron = {};
patron.summary = function (params) {
@@ -31,7 +33,7 @@
control_map : {
'cmd_broken' : [
['command'],
- function() { alert('Not Yet Implemented'); }
+ function() { alert($("commonStrings").getString('common.unimplemented')); }
],
'patron_alert' : [
['render'],
@@ -77,8 +79,8 @@
function(e) {
return function() {
e.setAttribute('value',
- 'Internet: ' +
- obj.OpenILS.data.hash.cnal[
+ $("patronStrings").getString('staff.patron.summary.patron_net_access') +
+ ' ' + obj.OpenILS.data.hash.cnal[
obj.patron.net_access_level()
].name()
);
@@ -133,7 +135,7 @@
function(req) {
JSAN.use('util.money');
var robj = req.getResultObject();
- e.setAttribute('value', '$' + util.money.sanitize( robj.balance_owed() ));
+ e.setAttribute('value', $("patronStrings").getFormattedString('staff.patron.summary.patron_bill.money', [util.money.sanitize( robj.balance_owed() )]));
}
);
/*
@@ -301,7 +303,7 @@
function(e) {
return function() {
e.setAttribute('value',
- 'Expires on ' + (
+ $("patronStrings").getString('staff.patron.summary.expires_on') + ' ' + (
obj.patron.expire_date() ?
obj.patron.expire_date().substr(0,10) :
'<Unset>'
@@ -581,7 +583,7 @@
[ ses(), obj.id ]
);
} else {
- throw('summary: No barcode or id');
+ throw($("patronStrings").getString('staff.patron.summary.retrieve.no_barcode'));
}
if (robj) {
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -13,7 +13,7 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- LOCALIZATION -->
<!DOCTYPE window PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
@@ -33,10 +33,12 @@
<script type="text/javascript" src="/xul/server/main/JSAN.js"/>
<script>
<![CDATA[
+ function $(id) { return document.getElementById(id); }
+
function my_init() {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
+ if (typeof JSAN == 'undefined') { throw( $("commonStrings").getString('common.jsan.missing') ); }
JSAN.errorLevel = "die"; // none, warn, or die
JSAN.addRepository('/xul/server/');
JSAN.use('util.error'); g.error = new util.error();
@@ -55,8 +57,7 @@
window.refresh = function () { g.summary.retrieve(); }
} catch(E) {
- var err_msg = "!! This software has encountered an error. Please tell your friendly " +
- "system administrator or software developer the following:\n" + E + '\n';
+ var err_msg = $("commonStrings").getFormattedString('common.exception', ['patron/summary.xul', E]);
try { g.error.sdump('D_ERROR',err_msg); } catch(E) { dump(err_msg); }
alert(err_msg);
}
@@ -64,6 +65,9 @@
]]>
</script>
+
+ <messagecatalog id="patronStrings" src="/xul/server/locale/<!--#echo var='locale'-->/patron.properties"/>
+ <messagecatalog id="commonStrings" src="/xul/server/locale/<!--#echo var='locale'-->/common.properties" />
<commandset id="patron_summary_cmds">
</commandset>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary_overlay.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary_overlay.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/summary_overlay.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<!DOCTYPE overlay PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
<overlay id="patron_summary_overlay"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
@@ -16,11 +16,11 @@
<vbox id="patron_info_sidebar" flex="1">
<label id="patron_name" hidden="true" class="patronNameLarge"/>
<groupbox id="PatronSummaryAlert_groupbox" flex="0" hidden="true" class="alert">
- <caption id="psagbc" label="Alert" class="shrinkable_groupbox"/>
+ <caption id="psagbc" label="&staff.patron.summary_overlay.psagbc.alert.label;" class="shrinkable_groupbox"/>
<description id="patron_alert"/>
</groupbox>
<groupbox id="PatronSummaryStanding_groupbox" flex="0" hidden="true" class="standing">
- <caption id="pssgbc" label="Standing" class="shrinkable_groupbox"/>
+ <caption id="pssgbc" label="&staff.patron.summary_overlay.pssgbc.standing.label;" class="shrinkable_groupbox"/>
<vbox id="patron_standing_penalties"/>
</groupbox>
<groupbox id="PatronSummaryStatus_groupbox" flex="0" class="status"/>
@@ -93,19 +93,19 @@
<label id="patron_overdue" class="items_overdue value" style="background: grey"/>
</row>
<row id="pdsgr5">
- <label id="PatronSummaryStatus_long_overdue_label" value="Long Overdue:" class="text_right items_long_overdue label" style="background: grey"/>
+ <label id="PatronSummaryStatus_long_overdue_label" value="&staff.patron.summary_overlay.overdue.value;" class="text_right items_long_overdue label" style="background: grey"/>
<label id="patron_long_overdue" class="items_long_overdue value" style="background: grey"/>
</row>
<row id="pdsgr7">
- <label id="PatronSummaryStatus_claimed_returned_label" value="Claimed Returned:" class="text_right items_long_overdue label" style="background: grey"/>
+ <label id="PatronSummaryStatus_claimed_returned_label" value="&staff.patron.summary_overlay.claimed_returned.value;" class="text_right items_long_overdue label" style="background: grey"/>
<label id="patron_claimed_returned" class="items_claimed_returned value" style="background: grey"/>
</row>
<row id="pdsgr6">
- <label id="PatronSummaryStatus_lost_label" value="Lost:" class="text_left items_lost label"/>
+ <label id="PatronSummaryStatus_lost_label" value="&staff.patron.summary_overlay.lost_label.value;" class="text_left items_lost label"/>
<label id="patron_lost" class="items_lost value"/>
</row>
<row id="pdsgr6a">
- <label id="PatronSummaryStatus_noncat_label" value="Non Cat:" class="text_left items_noncat label"/>
+ <label id="PatronSummaryStatus_noncat_label" value="&staff.patron.summary_overlay.noncat_label.value;" class="text_left items_noncat label"/>
<label id="patron_noncat" class="items_noncat value"/>
</row>
</rows>
@@ -115,7 +115,7 @@
<!--
<caption label="&staff.patron_display.contact.caption;"/>
-->
- <caption id="PatronSummaryContact_caption" label="ID/Contact Info" class="shrinkable_groupbox" />
+ <caption id="PatronSummaryContact_caption" label="&staff.patron.summary_overlay.summary_contact.label;" class="shrinkable_groupbox" />
<hbox id="pdcgbhb1">
<grid id="PatronSummaryContact_grid" />
<spacer id="pdcgbhbs1" flex="1"/>
@@ -187,7 +187,7 @@
<row id="pdsgpr4"><label id="pdsgpr4l" value=" "/></row>
<row id="pdsgpr4a">
<label id="PatronSummaryContact_usrname_label" class="text_left usrname label"
- value="OPAC Login:" />
+ value="&staff.patron.summary_overlay.opac_login.value;" />
<label id="patron_usrname" class="usrname value"/>
</row>
<row id="pdcgpr5">
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/ue.js
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/ue.js 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/ue.js 2008-07-09 20:29:43 UTC (rev 10005)
@@ -12,6 +12,7 @@
var netLevelsCache = {};
var guardianNote = null;
+function $(id) { return document.getElementById(id); }
/* fetch the necessary data to start off */
function uEditInit() {
@@ -25,7 +26,7 @@
clone = cgi.param('clone');
if (xulG) if (xulG.clone) clone = xulG.clone;
if (xulG) if (xulG.params) if (xulG.params.clone) clone = xulG.params.clone;
- if(!session) throw "User session is not defined";
+ if(!session) throw $("patronStrings").getString('staff.patron.ue.uEditInit.session_no_defined');
fetchUser(session);
$('uedit_user').appendChild(text(USER.usrname()));
@@ -486,8 +487,7 @@
req.send(true);
var resp = req.result();
if( checkILSEvent(resp) ) {
- alertILSEvent(resp,
- "Error creating patron guardian/parent note");
+ alertILSEvent(resp, $("patronStrings").getString('staff.patron.ue.uEditSaveuser.error_creating_note'));
return;
}
}
@@ -607,9 +607,11 @@
function uEditShowSearch(link,type) {
if(!type) type = link.getAttribute('type');
- if(window.xulG)
+ if(window.xulG) {
window.xulG.spawn_search(uEditDupHashes[type]);
- else alert('Search would be:\n' + js2JSON(uEditDupHashes[type]));
+ } else {
+ alert($("patronStrings").getFormattedString('staff.patron.ue.uEditShowSearch.search', [js2JSON(uEditDupHashes[type])]));
+ }
}
function uEditMarkCardLost() {
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_buckets.xul
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_buckets.xul 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_buckets.xul 2008-07-09 20:29:43 UTC (rev 10005)
@@ -11,7 +11,7 @@
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
<!-- LOCALIZATION -->
<!DOCTYPE window PUBLIC "" ""[
- <!--#include virtual="/opac/locale/en-US/lang.dtd"-->
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
]>
<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
@@ -32,10 +32,12 @@
<script type="text/javascript" src="/xul/server/main/JSAN.js"/>
<script>
<![CDATA[
+ function $(id) { return document.getElementById(id); }
+
function my_init() {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
- if (typeof JSAN == 'undefined') { throw( "The JSAN library object is missing."); }
+ if (typeof JSAN == 'undefined') { throw( $("commonStrings").getString('common.jsan.missing') ); }
JSAN.errorLevel = "die"; // none, warn, or die
JSAN.addRepository('/xul/server/');
JSAN.use('util.error'); g.error = new util.error();
@@ -53,7 +55,7 @@
]]>
</script>
- <label value="Just a stub, Not Yet Implemented"/>
+ <label value="&staff.patron.user_buckets.stub_not_implemented;"/>
</window>
Modified: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.js
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.js 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.js 2008-07-09 20:29:43 UTC (rev 10005)
@@ -10,6 +10,8 @@
var user_work_ous = [];
var work_ou_list = [];
+function $(id) { return document.getElementById(id); }
+
function set_work_ou(row) {
var wid = findNodeByName(row,'a.id').getAttribute('workou_id');
var wapply = findNodeByName(row,'a.id').checked;
@@ -103,7 +105,7 @@
break;
}
}
- throw "Depth is required on the " + p.code() + " permission.";
+ throw $("patronStrings").getFormattedString('staff.patron.user_edit.save_user.depth_required', [p.code()]);
}
save_perms.push( user_perms[i] );
@@ -128,9 +130,7 @@
if (pok.ilsevent) throw pok;
if (pok || wok) {
- alert( 'User ' + user.usrname() +
- ' [' + user.card().barcode() + '] ' +
- ' successfully modified.\n' + pok + ' permissions and ' + wok + ' work locations updated.');
+ alert($("patronStrings").getFormattedString('staff.patron.user_edit.save_user.user_modified_successfully', [user.usrname(), user.card().barcode(), pok, wok]));
}
init_editor();
@@ -373,7 +373,7 @@
(up ? up.depth() : findOrgDepth(user.home_ou())),
{ label_field : 'name',
value_field : 'depth',
- empty_label : '-- Select One --',
+ empty_label : $("patronStrings").getString('staff.patron.user_edit.display_perm.select_one'),
empty_value : '',
clear : true }
);
Copied: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.xhtml (from rev 10003, trunk/Open-ILS/xul/staff_client/server/patron/user_edit.xhtml)
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.xhtml (rev 0)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.xhtml 2008-07-09 20:29:43 UTC (rev 10005)
@@ -0,0 +1,155 @@
+<?xml version='1.0'?>
+
+<!-- ///////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
+<!-- LOCALIZATION -->
+<!DOCTYPE window PUBLIC "" ""[
+ <!--#include virtual="/opac/locale/${locale}/lang.dtd"-->
+]>
+
+<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude">
+
+ <head>
+ <title>Evergreen: User Editor</title>
+ <script language='javascript' src='/opac/common/js/utils.js'> </script>
+ <script language='javascript' src='/opac/common/js//config.js'> </script>
+ <script language='javascript' src='/opac/common/js/CGI.js'> </script>
+ <script language='javascript' src='/opac/common/js/Cookie.js'> </script>
+
+ <script language='javascript' src='/opac/common/js/slimtree.js'> </script>
+ <script language='javascript' src='/opac/common/js/JSON_v1.js'> </script>
+ <script language='javascript' src='/opac/common/js/fmall.js'> </script>
+ <script language='javascript' src='/opac/common/js/fmgen.js'> </script>
+ <script language='javascript' src='/opac/common/js/opac_utils.js'> </script>
+ <script language='javascript' src='/opac/common/js/OrgTree.js'> </script>
+ <script language='javascript' src='/opac/common/js/org_utils.js'> </script>
+ <script language='javascript' src='/opac/common/js/init.js'> </script>
+ <script language='javascript' src='/opac/common/js/RemoteRequest.js'> </script>
+ <script language='javascript' src='/opac/common/js/sprintf.js'> </script>
+ <script language='javascript' src='user_edit.js'> </script>
+
+
+ <style>
+
+ .stay_hidden { visibility: hidden;
+ display: none;
+
+ }
+
+ .hideme { visibility: hidden;
+ display: none;
+ }
+
+ table { border-collapse: collapse;
+ margin-bottom: 10px;
+ margin-top: 10px;
+ }
+
+ th {
+ white-space: nowrap;
+ padding-top: 15px;
+ padding-bottom: 10px;
+ text-align: center;
+ border-top: solid black 1px;
+ }
+
+ td.odd { background-color: lightcyan; }
+
+ td.label { text-align: right;
+ padding-right: 10px;
+ }
+
+ td.value { text-align: left;
+ padding-left: 10px;
+ }
+
+ input[disabled='true'] { color: black; }
+
+ </style>
+ </head>
+
+ <body onload="try { init_editor() } catch(E) { alert(js2JSON(E)); }">
+ <form method="GET" name="editor" id="editor" >
+
+ <table width="100%">
+ <tr>
+ <td class="label">&staff.patron.user_edit.user_name.label;</td>
+ <td class="value"><input disabled="true" type="text" name="user.usrname" id="user.usrname"/></td>
+ <td class="label">&staff.patron.user_edit.barcode.label;</td>
+ <td class="value"><input type="text" name="user.card.barcode" id="user.card.barcode" disabled="true"/></td>
+ </tr>
+ <tr>
+ <td class="label">First Name:</td>
+ <td class="value"><input disabled="true" type="text" name="user.first_given_name" id="user.first_given_name"/></td>
+ <td class="label">Middle Name:</td>
+ <td class="value"><input disabled="true" type="text" name="user.second_given_name" id="user.second_given_name"/></td>
+ <td class="label">Last Name:</td>
+ <td class="value"><input disabled="true" type="text" name="user.family_name" id="user.family_name"/></td>
+ </tr>
+ <tr class='advanced hideme'>
+ <td class="value" colspan="6">
+ <table width="100%">
+ <thead>
+ <tr>
+ <th></th>
+ <th>Working Location</th>
+ </tr>
+ </thead>
+ <tbody id="work_ous" name="work_ous"/>
+ </table>
+ </td>
+ </tr>
+ <tr class='advanced hideme'>
+ <td class="value" colspan="6">
+ <table width="100%">
+ <thead>
+ <tr>
+ <th>Permission</th>
+ <th>Applied</th>
+ <th>Depth</th>
+ <th>Grantable</th>
+ </tr>
+ </thead>
+ <tbody id="permissions" name="permissions"/>
+ </table>
+ </td>
+ </tr>
+
+ </table>
+
+ <button onclick="save_user(); return false;">Save</button>
+ </form>
+
+
+ <div class='hideme' id="permission-tmpl">
+ <tr name='prow'>
+ <td class="value" name='plabel'>
+ <span name="p.code"/>
+ </td>
+ <td class="value" name='papply'>
+ <input type="checkbox" name="p.id" onclick="set_perm(this.parentNode.parentNode);"/>
+ </td>
+ <td class="value" name='pdepth'>
+ <select onchange="set_perm(this.parentNode.parentNode);" name="p.depth"/>
+ </td>
+ <td class="value" name='pgrant'>
+ <input type="checkbox" name="p.grantable" onclick="set_perm(this.parentNode.parentNode);"/>
+ </td>
+ </tr>
+ </div>
+
+
+ <div class='hideme' id="work_ou-tmpl">
+ <tr name='wrow'>
+ <td class="value" name='wapply'>
+ <input type="checkbox" name="a.id" onclick="set_work_ou(this.parentNode.parentNode);"/>
+ </td>
+ <td class="value" name='label'>
+ <span name="a.name"/>
+ (<span name="a.shortname"/>)
+ </td>
+ </tr>
+ </div>
+
+ </body>
+</html>
+
Deleted: branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.xml
===================================================================
--- branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.xml 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/Open-ILS/xul/staff_client/server/patron/user_edit.xml 2008-07-09 20:29:43 UTC (rev 10005)
@@ -1,148 +0,0 @@
-<?xml version='1.0'?>
-<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude">
-
- <head>
- <title>Evergreen: User Editor</title>
- <script language='javascript' src='/opac/common/js/utils.js'> </script>
- <script language='javascript' src='/opac/common/js//config.js'> </script>
- <script language='javascript' src='/opac/common/js/CGI.js'> </script>
- <script language='javascript' src='/opac/common/js/Cookie.js'> </script>
-
- <script language='javascript' src='/opac/common/js/slimtree.js'> </script>
- <script language='javascript' src='/opac/common/js/JSON_v1.js'> </script>
- <script language='javascript' src='/opac/common/js/fmall.js'> </script>
- <script language='javascript' src='/opac/common/js/fmgen.js'> </script>
- <script language='javascript' src='/opac/common/js/opac_utils.js'> </script>
- <script language='javascript' src='/opac/common/js/OrgTree.js'> </script>
- <script language='javascript' src='/opac/common/js/org_utils.js'> </script>
- <script language='javascript' src='/opac/common/js/init.js'> </script>
- <script language='javascript' src='/opac/common/js/RemoteRequest.js'> </script>
- <script language='javascript' src='/opac/common/js/sprintf.js'> </script>
- <script language='javascript' src='user_edit.js'> </script>
-
-
- <style>
-
- .stay_hidden { visibility: hidden;
- display: none;
-
- }
-
- .hideme { visibility: hidden;
- display: none;
- }
-
- table { border-collapse: collapse;
- margin-bottom: 10px;
- margin-top: 10px;
- }
-
- th {
- white-space: nowrap;
- padding-top: 15px;
- padding-bottom: 10px;
- text-align: center;
- border-top: solid black 1px;
- }
-
- td.odd { background-color: lightcyan; }
-
- td.label { text-align: right;
- padding-right: 10px;
- }
-
- td.value { text-align: left;
- padding-left: 10px;
- }
-
- input[disabled='true'] { color: black; }
-
- </style>
- </head>
-
- <body onload="try { init_editor() } catch(E) { alert(js2JSON(E)); }">
- <form method="GET" name="editor" id="editor" >
-
- <table width="100%">
- <tr>
- <td class="label">User Name:</td>
- <td class="value"><input disabled="true" type="text" name="user.usrname" id="user.usrname"/></td>
- <td class="label">Barcode:</td>
- <td class="value"><input type="text" name="user.card.barcode" id="user.card.barcode" disabled="true"/></td>
- </tr>
- <tr>
- <td class="label">First Name:</td>
- <td class="value"><input disabled="true" type="text" name="user.first_given_name" id="user.first_given_name"/></td>
- <td class="label">Middle Name:</td>
- <td class="value"><input disabled="true" type="text" name="user.second_given_name" id="user.second_given_name"/></td>
- <td class="label">Last Name:</td>
- <td class="value"><input disabled="true" type="text" name="user.family_name" id="user.family_name"/></td>
- </tr>
- <tr class='advanced hideme'>
- <td class="value" colspan="6">
- <table width="100%">
- <thead>
- <tr>
- <th></th>
- <th>Working Location</th>
- </tr>
- </thead>
- <tbody id="work_ous" name="work_ous"/>
- </table>
- </td>
- </tr>
- <tr class='advanced hideme'>
- <td class="value" colspan="6">
- <table width="100%">
- <thead>
- <tr>
- <th>Permission</th>
- <th>Applied</th>
- <th>Depth</th>
- <th>Grantable</th>
- </tr>
- </thead>
- <tbody id="permissions" name="permissions"/>
- </table>
- </td>
- </tr>
-
- </table>
-
- <button onclick="save_user(); return false;">Save</button>
- </form>
-
-
- <div class='hideme' id="permission-tmpl">
- <tr name='prow'>
- <td class="value" name='plabel'>
- <span name="p.code"/>
- </td>
- <td class="value" name='papply'>
- <input type="checkbox" name="p.id" onclick="set_perm(this.parentNode.parentNode);"/>
- </td>
- <td class="value" name='pdepth'>
- <select onchange="set_perm(this.parentNode.parentNode);" name="p.depth"/>
- </td>
- <td class="value" name='pgrant'>
- <input type="checkbox" name="p.grantable" onclick="set_perm(this.parentNode.parentNode);"/>
- </td>
- </tr>
- </div>
-
-
- <div class='hideme' id="work_ou-tmpl">
- <tr name='wrow'>
- <td class="value" name='wapply'>
- <input type="checkbox" name="a.id" onclick="set_work_ou(this.parentNode.parentNode);"/>
- </td>
- <td class="value" name='label'>
- <span name="a.name"/>
- (<span name="a.shortname"/>)
- </td>
- </tr>
- </div>
-
- </body>
-</html>
-
Modified: branches/acq-experiment/build/i18n/tests/check_entities.py
===================================================================
--- branches/acq-experiment/build/i18n/tests/check_entities.py 2008-07-09 13:18:37 UTC (rev 10004)
+++ branches/acq-experiment/build/i18n/tests/check_entities.py 2008-07-09 20:29:43 UTC (rev 10005)
@@ -62,6 +62,8 @@
prefix = os.path.commonprefix(dtd_files)
for d_file in dtd_files:
+ if DEBUG:
+ print "Checking %s\n" % (d_file)
# Get the shortest unique address for this file
short_df = d_file[len(prefix):]
@@ -79,7 +81,7 @@
# Parse entity/value
unpack = re.search(r'<!ENTITY\s+(.+?)\s+([\'"])(.*?)\2\s*>', line)
if DEBUG and unpack:
- print unpack.groups()
+ print(unpack.groups())
# Skip anything other than entity definitions
# Note that this makes some massive assumptions:
@@ -96,7 +98,7 @@
entity_key, quote, value = unpack.groups()
if DEBUG:
- print entity_key, value
+ print(entity_key, value)
if not entities.has_key(entity_key):
entities[entity_key] = [{'value': value, 'file': short_df}]
@@ -139,23 +141,35 @@
# Typical entity usage:
# &blah.blah.blah_bity.blah;
- strings = re.compile(r'''&([a-zA-Z._]+);''')
+ strings = re.compile(r'''&([a-zA-Z:_][a-zA-Z0-9:_\-.]+);''')
xul = open(os.path.join(root, filename), 'r')
content = xul.read()
xul.close()
if DEBUG:
- print "File: %s" % (os.path.normpath(os.path.join(root, filename)))
+ print("File: %s" % (os.path.normpath(os.path.join(root, filename))))
for s_match in strings.finditer(content):
num_strings += 1
if not entities.has_key(s_match.group(1)):
- print "File: %s" % (os.path.normpath(os.path.join(root, filename)))
- print "\tEntity %s not found, expected in %s" % (s_match.group(1), 'lang.dtd')
+ print("File: %s" % (os.path.normpath(os.path.join(root, filename))))
+ print("\tEntity %s not found, expected in %s" % (s_match.group(1), 'lang.dtd'))
+ # Find bad entities
+ bad_strings = re.compile(r'''&([^a-zA-Z:_]?[a-zA-Z0-9:_]*[^a-zA-Z0-9:_\-.;][a-zA-Z0-9:_\-.]*);''')
+
+ # Match character entities ( etc), which are okay
+ char_entity = re.compile(r'''^((#([0-9])+)|(#x([0-9a-fA-F])+))$''')
+
+ for s_match in bad_strings.finditer(content):
+ # Rule out character entities and URL concatenation
+ if (not char_entity.search(s_match.group(1))) and s_match.group(1) != "'":
+ print("File: %s" % (os.path.normpath(os.path.join(root, filename))))
+ print("\tBad entity: %s" % (s_match.group(1)))
+
if DEBUG:
- print "\t%d entities found" % (num_strings)
+ print("\t%d entities found" % (num_strings))
if __name__ == '__main__':
entities = parse_entities()
More information about the open-ils-commits
mailing list