Teach the i18n Makefile how to handle serial.properties
authordbs <dbs@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Tue, 25 Jan 2011 06:17:46 +0000 (06:17 +0000)
committerdbs <dbs@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Tue, 25 Jan 2011 06:17:46 +0000 (06:17 +0000)
Also check in the POT for serial.properties and some other
foobar.label matches for foobar.accesskey (does not have
an effect on properties files but hopefully if we're
consistent then the pattern will be evident for entities).

Noting in passing that there are a number of "foobar(s)"
comined singular/plural labels that should be split to
support translation.

git-svn-id: svn://svn.open-ils.org/ILS/trunk@19282 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/xul/staff_client/server/locale/en-US/serial.properties
Open-ILS/xul/staff_client/server/serial/editor_base.js
build/i18n/Makefile
build/i18n/po/serial.properties/serial.properties.pot [new file with mode: 0644]

index 4acf413..4cec088 100644 (file)
@@ -2,55 +2,55 @@ staff.serial.editor_base.handle_update.error=serial update error:
 staff.serial.editor_base.handle_update.success=Save Successful
 staff.serial.sbsum_editor.count=1 summary
 staff.serial.sbsum_editor.count.plural=%1$s summaries
 staff.serial.editor_base.handle_update.success=Save Successful
 staff.serial.sbsum_editor.count=1 summary
 staff.serial.sbsum_editor.count.plural=%1$s summaries
-staff.serial.sbsum_editor.modify=Modify Basic Summary
+staff.serial.sbsum_editor.modify.label=Modify Basic Summary
 staff.serial.sbsum_editor.modify.accesskey=M
 staff.serial.sisum_editor.count=1 summary
 staff.serial.sisum_editor.count.plural=%1$s summaries
 staff.serial.sbsum_editor.modify.accesskey=M
 staff.serial.sisum_editor.count=1 summary
 staff.serial.sisum_editor.count.plural=%1$s summaries
-staff.serial.sisum_editor.modify=Modify Index Summary
+staff.serial.sisum_editor.modify.label=Modify Index Summary
 staff.serial.sisum_editor.modify.accesskey=M
 staff.serial.sssum_editor.count=1 summary
 staff.serial.sssum_editor.count.plural=%1$s summaries
 staff.serial.sisum_editor.modify.accesskey=M
 staff.serial.sssum_editor.count=1 summary
 staff.serial.sssum_editor.count.plural=%1$s summaries
-staff.serial.sssum_editor.modify=Modify Supplement Summary
+staff.serial.sssum_editor.modify.label=Modify Supplement Summary
 staff.serial.sssum_editor.modify.accesskey=M
 staff.serial.scap_editor.count=1 caption and pattern
 staff.serial.scap_editor.count.plural=%1$s caption and patterns
 staff.serial.sssum_editor.modify.accesskey=M
 staff.serial.scap_editor.count=1 caption and pattern
 staff.serial.scap_editor.count.plural=%1$s caption and patterns
-staff.serial.scap_editor.create=Create Caption and Pattern(s)
+staff.serial.scap_editor.create.label=Create Caption and Pattern(s)
 staff.serial.scap_editor.create.accesskey=C
 staff.serial.scap_editor.create.accesskey=C
-staff.serial.scap_editor.modify=Modify Caption and Pattern(s)
+staff.serial.scap_editor.modify.label=Modify Caption and Pattern(s)
 staff.serial.scap_editor.modify.accesskey=M
 staff.serial.scap_editor.notes=Caption and Pattern Notes
 staff.serial.sdist_editor.count=1 distribution
 staff.serial.sdist_editor.count.plural=%1$s distributions
 staff.serial.scap_editor.modify.accesskey=M
 staff.serial.scap_editor.notes=Caption and Pattern Notes
 staff.serial.sdist_editor.count=1 distribution
 staff.serial.sdist_editor.count.plural=%1$s distributions
-staff.serial.sdist_editor.create=Create Distribution(s)
+staff.serial.sdist_editor.create.label=Create Distribution(s)
 staff.serial.sdist_editor.create.accesskey=C
 staff.serial.sdist_editor.create.accesskey=C
-staff.serial.sdist_editor.modify=Modify Distribution(s)
+staff.serial.sdist_editor.modify.label=Modify Distribution(s)
 staff.serial.sdist_editor.modify.accesskey=M
 staff.serial.sdist_editor.notes=Distribution Notes
 staff.serial.siss_editor.count=1 issuance
 staff.serial.siss_editor.count.plural=%1$s issuances
 staff.serial.sdist_editor.modify.accesskey=M
 staff.serial.sdist_editor.notes=Distribution Notes
 staff.serial.siss_editor.count=1 issuance
 staff.serial.siss_editor.count.plural=%1$s issuances
-staff.serial.siss_editor.create=Create Issuance(s)
+staff.serial.siss_editor.create.label=Create Issuance(s)
 staff.serial.siss_editor.create.accesskey=C
 staff.serial.siss_editor.create.accesskey=C
-staff.serial.siss_editor.modify=Modify Issuance(s)
+staff.serial.siss_editor.modify.label=Modify Issuance(s)
 staff.serial.siss_editor.modify.accesskey=M
 staff.serial.siss_editor.notes=Issuance Notes
 staff.serial.sitem_editor.count=1 item
 staff.serial.sitem_editor.count.plural=%1$s items
 staff.serial.siss_editor.modify.accesskey=M
 staff.serial.siss_editor.notes=Issuance Notes
 staff.serial.sitem_editor.count=1 item
 staff.serial.sitem_editor.count.plural=%1$s items
-staff.serial.sitem_editor.create=Create Item(s)
+staff.serial.sitem_editor.create.label=Create Item(s)
 staff.serial.sitem_editor.create.accesskey=C
 staff.serial.sitem_editor.create.accesskey=C
-staff.serial.sitem_editor.modify=Modify Item(s)
+staff.serial.sitem_editor.modify.label=Modify Item(s)
 staff.serial.sitem_editor.modify.accesskey=M
 staff.serial.sitem_editor.notes=Item Notes
 staff.serial.sstr_editor.count=1 stream
 staff.serial.sstr_editor.count.plural=%1$s streams
 staff.serial.sitem_editor.modify.accesskey=M
 staff.serial.sitem_editor.notes=Item Notes
 staff.serial.sstr_editor.count=1 stream
 staff.serial.sstr_editor.count.plural=%1$s streams
-staff.serial.sstr_editor.create=Create Stream(s)
+staff.serial.sstr_editor.create.label=Create Stream(s)
 staff.serial.sstr_editor.create.accesskey=C
 staff.serial.sstr_editor.create.accesskey=C
-staff.serial.sstr_editor.modify=Modify Stream(s)
+staff.serial.sstr_editor.modify.label=Modify Stream(s)
 staff.serial.sstr_editor.modify.accesskey=M
 staff.serial.ssub_editor.count=1 subscription
 staff.serial.ssub_editor.count.plural=%1$s subscriptions
 staff.serial.sstr_editor.modify.accesskey=M
 staff.serial.ssub_editor.count=1 subscription
 staff.serial.ssub_editor.count.plural=%1$s subscriptions
-staff.serial.ssub_editor.create=Create Subscription(s)
+staff.serial.ssub_editor.create.label=Create Subscription(s)
 staff.serial.ssub_editor.create.accesskey=C
 staff.serial.ssub_editor.create.accesskey=C
-staff.serial.ssub_editor.modify=Modify Subscription(s)
+staff.serial.ssub_editor.modify.label=Modify Subscription(s)
 staff.serial.ssub_editor.modify.accesskey=M
 staff.serial.ssub_editor.notes=Subscription Notes
 staff.serial.manage_subs.add.error=error adding object in manage_subs.js:
 staff.serial.ssub_editor.modify.accesskey=M
 staff.serial.ssub_editor.notes=Subscription Notes
 staff.serial.manage_subs.add.error=error adding object in manage_subs.js:
index 9e35e4d..4108232 100644 (file)
@@ -153,12 +153,12 @@ serial.editor_base = {
             if (obj[fm_type_plural].length > 0 && obj[fm_type_plural][0].isnew()) {
                 obj.mode = 'create';
                 if (obj.can_have_notes) $(obj.xul_id_prefix + '_notes').setAttribute('hidden','true');
             if (obj[fm_type_plural].length > 0 && obj[fm_type_plural][0].isnew()) {
                 obj.mode = 'create';
                 if (obj.can_have_notes) $(obj.xul_id_prefix + '_notes').setAttribute('hidden','true');
-                $(obj.xul_id_prefix + '_save').setAttribute('label', $('serialStrings').getString('staff.serial.' + fm_type + '_editor.create'));
+                $(obj.xul_id_prefix + '_save').setAttribute('label', $('serialStrings').getString('staff.serial.' + fm_type + '_editor.create.label'));
                 $(obj.xul_id_prefix + '_save').setAttribute('accesskey', $('serialStrings').getString('staff.serial.' + fm_type + '_editor.create.accesskey'));
             } else if (obj.mode == 'create') { // switching from create to modify
                 obj.mode = 'modify';
                 if (obj.can_have_notes) $(obj.xul_id_prefix + '_notes').setAttribute('hidden','false');
                 $(obj.xul_id_prefix + '_save').setAttribute('accesskey', $('serialStrings').getString('staff.serial.' + fm_type + '_editor.create.accesskey'));
             } else if (obj.mode == 'create') { // switching from create to modify
                 obj.mode = 'modify';
                 if (obj.can_have_notes) $(obj.xul_id_prefix + '_notes').setAttribute('hidden','false');
-                $(obj.xul_id_prefix + '_save').setAttribute('label', $('serialStrings').getString('staff.serial.' + fm_type + '_editor.modify'));
+                $(obj.xul_id_prefix + '_save').setAttribute('label', $('serialStrings').getString('staff.serial.' + fm_type + '_editor.modify.label'));
                 $(obj.xul_id_prefix + '_save').setAttribute('accesskey', $('serialStrings').getString('staff.serial.' + fm_type + '_editor.modify.accesskey'));
             }
 /*else {
                 $(obj.xul_id_prefix + '_save').setAttribute('accesskey', $('serialStrings').getString('staff.serial.' + fm_type + '_editor.modify.accesskey'));
             }
 /*else {
index d2357b0..79d3945 100644 (file)
@@ -91,6 +91,7 @@ newpo:
        @pot2po $(PROGRESS) -i po/reports.js/reports.js.pot -o $(PO)/reports.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/reservation.js/reservation.js.pot -o $(PO)/reservation.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/selfcheck.js/selfcheck.js.pot -o $(PO)/selfcheck.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/reports.js/reports.js.pot -o $(PO)/reports.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/reservation.js/reservation.js.pot -o $(PO)/reservation.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/selfcheck.js/selfcheck.js.pot -o $(PO)/selfcheck.js/$(LOCALE).po 
+       @pot2po $(PROGRESS) -i po/serial.properties/serial.properties.pot -o $(PO)/serial.properties/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/vandelay.dtd/vandelay.dtd.pot -o $(PO)/vandelay.dtd/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/AutoFieldWidget.js/AutoFieldWidget.js.pot -o $(PO)/AutoFieldWidget.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/TranslatorPopup.js/TranslatorPopup.js.pot -o $(PO)/TranslatorPopup.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/vandelay.dtd/vandelay.dtd.pot -o $(PO)/vandelay.dtd/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/AutoFieldWidget.js/AutoFieldWidget.js.pot -o $(PO)/AutoFieldWidget.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/TranslatorPopup.js/TranslatorPopup.js.pot -o $(PO)/TranslatorPopup.js/$(LOCALE).po 
@@ -135,6 +136,7 @@ updatepo: prep_output
        @pot2po $(PROGRESS) -i po/reports.js/reports.js.pot -o $(PO)/reports.js/$(LOCALE).po  -t $(PO)/reports.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/reservation.js/reservation.js.pot -o $(PO)/reservation.js/$(LOCALE).po  -t $(PO)/reservation.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/selfcheck.js/selfcheck.js.pot -o $(PO)/selfcheck.js/$(LOCALE).po  -t $(PO)/selfcheck.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/reports.js/reports.js.pot -o $(PO)/reports.js/$(LOCALE).po  -t $(PO)/reports.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/reservation.js/reservation.js.pot -o $(PO)/reservation.js/$(LOCALE).po  -t $(PO)/reservation.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/selfcheck.js/selfcheck.js.pot -o $(PO)/selfcheck.js/$(LOCALE).po  -t $(PO)/selfcheck.js/$(LOCALE).po 
+       @pot2po $(PROGRESS) -i po/serial.properties/serial.properties.pot -o $(PO)/serial.properties/$(LOCALE).po  -t $(PO)/serial.properties/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/vandelay.dtd/vandelay.dtd.pot -o $(PO)/vandelay.dtd/$(LOCALE).po  -t $(PO)/vandelay.dtd/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/AutoFieldWidget.js/AutoFieldWidget.js.pot -o $(PO)/AutoFieldWidget.js/$(LOCALE).po  -t $(PO)/AutoFieldWidget.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/TranslatorPopup.js/TranslatorPopup.js.pot -o $(PO)/TranslatorPopup.js/$(LOCALE).po  -t $(PO)/TranslatorPopup.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/vandelay.dtd/vandelay.dtd.pot -o $(PO)/vandelay.dtd/$(LOCALE).po  -t $(PO)/vandelay.dtd/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/AutoFieldWidget.js/AutoFieldWidget.js.pot -o $(PO)/AutoFieldWidget.js/$(LOCALE).po  -t $(PO)/AutoFieldWidget.js/$(LOCALE).po 
        @pot2po $(PROGRESS) -i po/TranslatorPopup.js/TranslatorPopup.js.pot -o $(PO)/TranslatorPopup.js/$(LOCALE).po  -t $(PO)/TranslatorPopup.js/$(LOCALE).po 
@@ -201,6 +203,7 @@ props2pot:
        @moz2po -P $(PROGRESS) -o $(PO)/common.properties/common.properties.pot -i $(SERVER_PROPSDIR)/en-US/common.properties 2>&1
        @moz2po -P $(PROGRESS) -o $(PO)/multiclass_search_help.html/multiclass_search_help.html.pot -i $(SERVER_PROPSDIR)/en-US/multiclass_search_help.html 2>&1
        @moz2po -P $(PROGRESS) -o $(PO)/patron.properties/patron.properties.pot -i $(SERVER_PROPSDIR)/en-US/patron.properties 2>&1
        @moz2po -P $(PROGRESS) -o $(PO)/common.properties/common.properties.pot -i $(SERVER_PROPSDIR)/en-US/common.properties 2>&1
        @moz2po -P $(PROGRESS) -o $(PO)/multiclass_search_help.html/multiclass_search_help.html.pot -i $(SERVER_PROPSDIR)/en-US/multiclass_search_help.html 2>&1
        @moz2po -P $(PROGRESS) -o $(PO)/patron.properties/patron.properties.pot -i $(SERVER_PROPSDIR)/en-US/patron.properties 2>&1
+       @moz2po -P $(PROGRESS) -o $(PO)/serial.properties/serial.properties.pot -i $(SERVER_PROPSDIR)/en-US/serial.properties 2>&1
 
 # There are some hacky things we need to do to make po2moz happy,
 # like ensure that the .po file has either ".dtd" or ".properties" in
 
 # There are some hacky things we need to do to make po2moz happy,
 # like ensure that the .po file has either ".dtd" or ".properties" in
@@ -230,6 +233,7 @@ po2props:
        @po2moz $(PROGRESS) -i $(PO)/common.properties/$(LOCALE).properties.po -o $(PROJECT)/$(LOCALE)/common.properties -t $(SERVER_PROPSDIR)/en-US/common.properties 2>&1
        @po2moz $(PROGRESS) -i $(PO)/multiclass_search_help.html/$(LOCALE).html.po -o $(PROJECT)/$(LOCALE)/multiclass_search_help.html -t $(SERVER_PROPSDIR)/en-US/multiclass_search_help.html 2>&1
        @po2moz $(PROGRESS) -i $(PO)/patron.properties/$(LOCALE).properties.po -o $(PROJECT)/$(LOCALE)/patron.properties -t $(SERVER_PROPSDIR)/en-US/patron.properties 2>&1
        @po2moz $(PROGRESS) -i $(PO)/common.properties/$(LOCALE).properties.po -o $(PROJECT)/$(LOCALE)/common.properties -t $(SERVER_PROPSDIR)/en-US/common.properties 2>&1
        @po2moz $(PROGRESS) -i $(PO)/multiclass_search_help.html/$(LOCALE).html.po -o $(PROJECT)/$(LOCALE)/multiclass_search_help.html -t $(SERVER_PROPSDIR)/en-US/multiclass_search_help.html 2>&1
        @po2moz $(PROGRESS) -i $(PO)/patron.properties/$(LOCALE).properties.po -o $(PROJECT)/$(LOCALE)/patron.properties -t $(SERVER_PROPSDIR)/en-US/patron.properties 2>&1
+       @po2moz $(PROGRESS) -i $(PO)/serial.properties/$(LOCALE).properties.po -o $(PROJECT)/$(LOCALE)/serial.properties -t $(SERVER_PROPSDIR)/en-US/serial.properties 2>&1
 
 sql2pot:
        @scripts/db-seed-i18n.py --pot $(SQLSRCDIR)/$(SQLSRCFILE) --output $(PO)/db.seed/$(SQLPOT)
 
 sql2pot:
        @scripts/db-seed-i18n.py --pot $(SQLSRCDIR)/$(SQLSRCFILE) --output $(PO)/db.seed/$(SQLPOT)
@@ -276,6 +280,7 @@ install: updatepo project fmidl2fmidlent fmidlpo2entity-en
        cp $(PROJECT)/$(LOCALE)/lang.dtd $(DTDDIR)/$(LOCALE)/
        cp $(PROJECT)/$(LOCALE)/opac.dtd $(DTDDIR)/$(LOCALE)/
        cp $(PROJECT)/$(LOCALE)/reports.dtd $(DTDDIR)/$(LOCALE)/
        cp $(PROJECT)/$(LOCALE)/lang.dtd $(DTDDIR)/$(LOCALE)/
        cp $(PROJECT)/$(LOCALE)/opac.dtd $(DTDDIR)/$(LOCALE)/
        cp $(PROJECT)/$(LOCALE)/reports.dtd $(DTDDIR)/$(LOCALE)/
+       cp $(PROJECT)/$(LOCALE)/serial.properties $(SERVER_PROPSDIR)/$(LOCALE)/.
        cp $(PROJECT)/$(LOCALE)/vandelay.dtd $(DTDDIR)/$(LOCALE)/
        cp $(PROJECT)/$(LOCALE)/$(FMIDLENTITY) $(DTDDIR)/$(LOCALE)/
        @scripts/merge_ils_events.py --master $(EVTSRC) --localization $(PROJECT)/$(LOCALE)/$(EVTXML) --output $(EVTSRC)
        cp $(PROJECT)/$(LOCALE)/vandelay.dtd $(DTDDIR)/$(LOCALE)/
        cp $(PROJECT)/$(LOCALE)/$(FMIDLENTITY) $(DTDDIR)/$(LOCALE)/
        @scripts/merge_ils_events.py --master $(EVTSRC) --localization $(PROJECT)/$(LOCALE)/$(EVTXML) --output $(EVTSRC)
diff --git a/build/i18n/po/serial.properties/serial.properties.pot b/build/i18n/po/serial.properties/serial.properties.pot
new file mode 100644 (file)
index 0000000..953d3bc
--- /dev/null
@@ -0,0 +1,554 @@
+#. extracted from ../../Open-ILS/xul/staff_client/server/locale/en-US/serial.properties
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2011-01-25 01:09-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Translate Toolkit 1.8.1\n"
+"X-Accelerator-Marker: &\n"
+
+#: staff.serial.editor_base.handle_update.error
+msgid "serial update error:"
+msgstr ""
+
+#: staff.serial.editor_base.handle_update.success
+msgid "Save Successful"
+msgstr ""
+
+#: staff.serial.sbsum_editor.count
+msgctxt "staff.serial.sbsum_editor.count"
+msgid "1 summary"
+msgstr ""
+
+#: staff.serial.sbsum_editor.count.plural
+msgctxt "staff.serial.sbsum_editor.count.plural"
+msgid "%1$s summaries"
+msgstr ""
+
+#: staff.serial.sbsum_editor.modify.label
+msgid "Modify Basic Summary"
+msgstr ""
+
+#: staff.serial.sbsum_editor.modify.accesskey
+msgctxt "staff.serial.sbsum_editor.modify.accesskey"
+msgid "M"
+msgstr ""
+
+#: staff.serial.sisum_editor.count
+msgctxt "staff.serial.sisum_editor.count"
+msgid "1 summary"
+msgstr ""
+
+#: staff.serial.sisum_editor.count.plural
+msgctxt "staff.serial.sisum_editor.count.plural"
+msgid "%1$s summaries"
+msgstr ""
+
+#: staff.serial.sisum_editor.modify.label
+msgid "Modify Index Summary"
+msgstr ""
+
+#: staff.serial.sisum_editor.modify.accesskey
+msgctxt "staff.serial.sisum_editor.modify.accesskey"
+msgid "M"
+msgstr ""
+
+#: staff.serial.sssum_editor.count
+msgctxt "staff.serial.sssum_editor.count"
+msgid "1 summary"
+msgstr ""
+
+#: staff.serial.sssum_editor.count.plural
+msgctxt "staff.serial.sssum_editor.count.plural"
+msgid "%1$s summaries"
+msgstr ""
+
+#: staff.serial.sssum_editor.modify.label
+msgid "Modify Supplement Summary"
+msgstr ""
+
+#: staff.serial.sssum_editor.modify.accesskey
+msgctxt "staff.serial.sssum_editor.modify.accesskey"
+msgid "M"
+msgstr ""
+
+#: staff.serial.scap_editor.count
+msgid "1 caption and pattern"
+msgstr ""
+
+#: staff.serial.scap_editor.count.plural
+msgid "%1$s caption and patterns"
+msgstr ""
+
+#: staff.serial.scap_editor.create.label
+msgid "Create Caption and Pattern(s)"
+msgstr ""
+
+#: staff.serial.scap_editor.create.accesskey
+msgctxt "staff.serial.scap_editor.create.accesskey"
+msgid "C"
+msgstr ""
+
+#: staff.serial.scap_editor.modify.label
+msgid "Modify Caption and Pattern(s)"
+msgstr ""
+
+#: staff.serial.scap_editor.modify.accesskey
+msgctxt "staff.serial.scap_editor.modify.accesskey"
+msgid "M"
+msgstr ""
+
+#: staff.serial.scap_editor.notes
+msgid "Caption and Pattern Notes"
+msgstr ""
+
+#: staff.serial.sdist_editor.count
+msgid "1 distribution"
+msgstr ""
+
+#: staff.serial.sdist_editor.count.plural
+msgid "%1$s distributions"
+msgstr ""
+
+#: staff.serial.sdist_editor.create.label
+msgid "Create Distribution(s)"
+msgstr ""
+
+#: staff.serial.sdist_editor.create.accesskey
+msgctxt "staff.serial.sdist_editor.create.accesskey"
+msgid "C"
+msgstr ""
+
+#: staff.serial.sdist_editor.modify.label
+msgid "Modify Distribution(s)"
+msgstr ""
+
+#: staff.serial.sdist_editor.modify.accesskey
+msgctxt "staff.serial.sdist_editor.modify.accesskey"
+msgid "M"
+msgstr ""
+
+#: staff.serial.sdist_editor.notes
+msgid "Distribution Notes"
+msgstr ""
+
+#: staff.serial.siss_editor.count
+msgid "1 issuance"
+msgstr ""
+
+#: staff.serial.siss_editor.count.plural
+msgid "%1$s issuances"
+msgstr ""
+
+#: staff.serial.siss_editor.create.label
+msgid "Create Issuance(s)"
+msgstr ""
+
+#: staff.serial.siss_editor.create.accesskey
+msgctxt "staff.serial.siss_editor.create.accesskey"
+msgid "C"
+msgstr ""
+
+#: staff.serial.siss_editor.modify.label
+msgid "Modify Issuance(s)"
+msgstr ""
+
+#: staff.serial.siss_editor.modify.accesskey
+msgctxt "staff.serial.siss_editor.modify.accesskey"
+msgid "M"
+msgstr ""
+
+#: staff.serial.siss_editor.notes
+msgid "Issuance Notes"
+msgstr ""
+
+#: staff.serial.sitem_editor.count
+msgid "1 item"
+msgstr ""
+
+#: staff.serial.sitem_editor.count.plural
+msgid "%1$s items"
+msgstr ""
+
+#: staff.serial.sitem_editor.create.label
+msgid "Create Item(s)"
+msgstr ""
+
+#: staff.serial.sitem_editor.create.accesskey
+msgctxt "staff.serial.sitem_editor.create.accesskey"
+msgid "C"
+msgstr ""
+
+#: staff.serial.sitem_editor.modify.label
+msgid "Modify Item(s)"
+msgstr ""
+
+#: staff.serial.sitem_editor.modify.accesskey
+msgctxt "staff.serial.sitem_editor.modify.accesskey"
+msgid "M"
+msgstr ""
+
+#: staff.serial.sitem_editor.notes
+msgid "Item Notes"
+msgstr ""
+
+#: staff.serial.sstr_editor.count
+msgid "1 stream"
+msgstr ""
+
+#: staff.serial.sstr_editor.count.plural
+msgid "%1$s streams"
+msgstr ""
+
+#: staff.serial.sstr_editor.create.label
+msgid "Create Stream(s)"
+msgstr ""
+
+#: staff.serial.sstr_editor.create.accesskey
+msgctxt "staff.serial.sstr_editor.create.accesskey"
+msgid "C"
+msgstr ""
+
+#: staff.serial.sstr_editor.modify.label
+msgid "Modify Stream(s)"
+msgstr ""
+
+#: staff.serial.sstr_editor.modify.accesskey
+msgctxt "staff.serial.sstr_editor.modify.accesskey"
+msgid "M"
+msgstr ""
+
+#: staff.serial.ssub_editor.count
+msgid "1 subscription"
+msgstr ""
+
+#: staff.serial.ssub_editor.count.plural
+msgid "%1$s subscriptions"
+msgstr ""
+
+#: staff.serial.ssub_editor.create.label
+msgid "Create Subscription(s)"
+msgstr ""
+
+#: staff.serial.ssub_editor.create.accesskey
+msgctxt "staff.serial.ssub_editor.create.accesskey"
+msgid "C"
+msgstr ""
+
+#: staff.serial.ssub_editor.modify.label
+msgid "Modify Subscription(s)"
+msgstr ""
+
+#: staff.serial.ssub_editor.modify.accesskey
+msgctxt "staff.serial.ssub_editor.modify.accesskey"
+msgid "M"
+msgstr ""
+
+#: staff.serial.ssub_editor.notes
+msgid "Subscription Notes"
+msgstr ""
+
+#: staff.serial.manage_subs.add.error
+msgid "error adding object in manage_subs.js:"
+msgstr ""
+
+#: staff.serial.manage_subs.delete.error
+msgid "error deleting object in manage_subs.js:"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_scap.confirm
+msgid "Are you sure you would like to delete this caption and pattern?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_scap.confirm.plural
+msgid "Are you sure you would like to delete these %1$s caption and patterns?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_scap.title
+msgid "Delete Caption and Patterns?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_scap.override
+msgid ""
+"Override Delete Failure? Doing so will delete all attached issuances and "
+"items as well!"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_sdist.confirm
+msgid "Are you sure you would like to delete this distribution?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_sdist.confirm.plural
+msgid "Are you sure you would like to delete these %1$s distributions?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_sdist.title
+msgid "Delete Distributions?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_sdist.override
+msgid "Override Delete Failure?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_siss.confirm
+msgid "Are you sure you would like to delete this issuance?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_siss.confirm.plural
+msgid "Are you sure you would like to delete these %1$s issuances?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_siss.title
+msgid "Delete Issuances?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_siss.override
+msgid ""
+"Override Delete Failure? Doing so will delete all attached items as well!"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_ssub.confirm
+msgid "Are you sure you would like to delete this subscription?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_ssub.confirm.plural
+msgid "Are you sure you would like to delete these %1$s subscriptions?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_ssub.title
+msgid "Delete Subscriptions?"
+msgstr ""
+
+#: staff.serial.manage_subs.delete_ssub.override
+msgid "Override Delete Failure? Doing so will delete all related data as well!"
+msgstr ""
+
+#: batch_receive.bib_lookup.empty
+msgid "Enter a search term."
+msgstr ""
+
+#: batch_receive.bib_lookup.multiple
+msgid ""
+"Multiple matching records found. Please use a more specific identifier, or "
+"use the catalog to find the exact record you want."
+msgstr ""
+
+#: batch_receive.bib_lookup.not_found
+msgid "No matching records found with any subscriptions attached."
+msgstr ""
+
+#: batch_receive.issuance_lookup.error
+msgid "Problem retrieving issuances related to subscription."
+msgstr ""
+
+#: batch_receive.issuance_lookup.none
+msgid "There are no receivable issuances."
+msgstr ""
+
+#: batch_receive.item_lookup.none
+msgid "Could not retrieve receivable items for this issuance."
+msgstr ""
+
+#: batch_receive.autogen_barcodes.questionable
+msgid ""
+"There are already barcodes entered further down the list than the one you "
+"just entered.\n"
+"Fill the intervening fields with auto-generated barcodes?"
+msgstr ""
+
+#: batch_receive.autogen_barcodes.remove
+msgid "Clear the barcodes that have already been auto-generated?"
+msgstr ""
+
+#: batch_receive.none
+msgid "[None]"
+msgstr ""
+
+#: batch_receive.apply
+msgid "Apply"
+msgstr ""
+
+#: batch_receive.receive_time_note
+msgid "Receive-time Note"
+msgstr ""
+
+#: batch_receive.cn_for_lib
+msgid ""
+"Do you want to use this call number at %1$s?\n"
+"It doesn't exist there, and it will have to be created."
+msgstr ""
+
+#: batch_receive.missing_units
+msgid ""
+"You have not provided barcodes and call numbers for all of the selected "
+"items.  Choose OK to receive those items anyway, or choose Cancel to supply "
+"the missing information."
+msgstr ""
+
+#: batch_receive.missing_cn
+msgid ""
+"You cannot assign a barcode without selecting a call number. Please correct "
+"the non-conforming units."
+msgstr ""
+
+#: pattern_wizard.enumeration.a
+msgctxt "pattern_wizard.enumeration.a"
+msgid "First level"
+msgstr ""
+
+#: pattern_wizard.enumeration.b
+msgctxt "pattern_wizard.enumeration.b"
+msgid "Second level"
+msgstr ""
+
+#: pattern_wizard.enumeration.c
+msgctxt "pattern_wizard.enumeration.c"
+msgid "Third level"
+msgstr ""
+
+#: pattern_wizard.enumeration.d
+msgctxt "pattern_wizard.enumeration.d"
+msgid "Fourth level"
+msgstr ""
+
+#: pattern_wizard.enumeration.e
+msgid "Fifth level"
+msgstr ""
+
+#: pattern_wizard.enumeration.f
+msgid "Sixth level"
+msgstr ""
+
+#: pattern_wizard.enumeration.g
+msgid "First alternate"
+msgstr ""
+
+#: pattern_wizard.enumeration.h
+msgid "Second alternate"
+msgstr ""
+
+#: pattern_wizard.chronology.i
+msgctxt "pattern_wizard.chronology.i"
+msgid "First level"
+msgstr ""
+
+#: pattern_wizard.chronology.j
+msgctxt "pattern_wizard.chronology.j"
+msgid "Second level"
+msgstr ""
+
+#: pattern_wizard.chronology.k
+msgctxt "pattern_wizard.chronology.k"
+msgid "Third level"
+msgstr ""
+
+#: pattern_wizard.chronology.l
+msgctxt "pattern_wizard.chronology.l"
+msgid "Fourth level"
+msgstr ""
+
+#: pattern_wizard.chronology.m
+msgid "Alternative numbering scheme"
+msgstr ""
+
+#: pattern_wizard.not_removable_row
+msgid ""
+"You cannot remove this row because it's not at the end of the sequence.  "
+"Remove later rows first."
+msgstr ""
+
+#: pattern_wizard.bad_date_value
+msgid "That is not a valid day for that month."
+msgstr ""
+
+#: serial.editor_base.unset
+msgid "<Unset>"
+msgstr ""
+
+#: serail.manage_dists.streams
+msgid "Streams"
+msgstr ""
+
+#: serial.manage_dists.stream_num
+msgid "Stream : # %1$s"
+msgstr ""
+
+#: serial.manage_dists.sbsum
+msgid "Basic Summary"
+msgstr ""
+
+#: serial.manage_dists.sssum
+msgid "Supplement Summary"
+msgstr ""
+
+#: serial.manage_dists.sisum
+msgid "Index Summary"
+msgstr ""
+
+#: serial.manage_dists.library_label
+msgid "%1$s : %2$s"
+msgstr ""
+
+#: serial.manage_dists.distributions
+msgctxt "serial.manage_dists.distributions"
+msgid "Distributions"
+msgstr ""
+
+#: serial.common.default
+msgid "Default"
+msgstr ""
+
+#: serial.manage_subs.predict.alert
+msgid "You must select a subscription before predicting issuances."
+msgstr ""
+
+#: serial.manage_subs.predict.prompt
+msgid "How many items (per active pattern) would you like to predict?"
+msgstr ""
+
+#: serial.manage_subs.predict.prompt.text
+msgid "Number of Predicted Items"
+msgstr ""
+
+#: serial.manage_subs.invalid_number
+msgid "Invalid number entered!"
+msgstr ""
+
+#: serial.manage_subs.predict_success
+msgid "Successfully predicted %1$s issuance(s) for subscription # %2$s."
+msgstr ""
+
+#: serial.manage_subs.distributions
+msgctxt "serial.manage_subs.distributions"
+msgid "Distributions"
+msgstr ""
+
+#: serial.manage_subs.issuances
+msgid "Issuances"
+msgstr ""
+
+#: serial.manage_subs.captions_patterns
+msgid "Captions/Patterns"
+msgstr ""
+
+#: serial.manage_subs.tree_location
+msgid "Location"
+msgstr ""
+
+#: serial.manage_subs.scap_id
+msgid "Caption / Pattern : # %1$s"
+msgstr ""
+
+#: serial.manage_subs.ssub_id
+msgid "Subscription : # %1$s"
+msgstr ""
+
+#: serial.manage_subs.subscriptions
+msgid "Subscriptions"
+msgstr ""