adding in-database supported locale, um, support
authormiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Sun, 20 Jul 2008 00:39:44 +0000 (00:39 +0000)
committermiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Sun, 20 Jul 2008 00:39:44 +0000 (00:39 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@10079 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/src/sql/Pg/002.schema.config.sql
Open-ILS/src/sql/Pg/950.data.seed-values.sql

index e29a62d..0cb2053 100644 (file)
@@ -46,16 +46,6 @@ COMMENT ON SCHEMA config IS $$
  */
 $$;
 
-CREATE TABLE config.i18n_core (
-    id              BIGSERIAL   PRIMARY KEY,
-    fq_field        TEXT        NOT NULL,
-    identity_value  TEXT        NOT NULL,
-    translation     TEXT        NOT NULL,
-    string          TEXT        NOT NULL
-);
-
-CREATE UNIQUE INDEX i18n_identity ON config.i18n_core (fq_field,identity_value,translation);
-
 CREATE TABLE config.bib_source (
        id              SERIAL  PRIMARY KEY,
        quality         INT     CHECK ( quality BETWEEN 0 AND 100 ),
@@ -453,5 +443,22 @@ CREATE TABLE config.bib_level_map (
        value   TEXT    NOT NULL
 );
 
+CREATE TABLE config.i18n_locale (
+    code        TEXT    PRIMARY KEY,
+    marc_code   TEXT    NOT NULL REFERENCES config.language_map (code),
+    name        TEXT    UNIQUE NOT NULL,
+    description TEXT
+);
+
+CREATE TABLE config.i18n_core (
+    id              BIGSERIAL   PRIMARY KEY,
+    fq_field        TEXT        NOT NULL,
+    identity_value  TEXT        NOT NULL,
+    translation     TEXT        NOT NULL    REFERENCES config.i18n_locale (code),
+    string          TEXT        NOT NULL
+);
+
+CREATE UNIQUE INDEX i18n_identity ON config.i18n_core (fq_field,identity_value,translation);
+
 COMMIT;
 
index 254a2d4..e08280b 100644 (file)
@@ -173,6 +173,7 @@ INSERT INTO config.lit_form_map (code, value, description) VALUES
     ('u', oils_i18n_gettext('Unknown'), oils_i18n_gettext('The literary form of the item is unknown.'));
 
 -- TO-DO: Auto-generate these values from CLDR
+-- XXX These are the values used in MARC records ... does that match CLDR, including deprecated languages?
 INSERT INTO config.language_map (code, value) VALUES ('aar', oils_i18n_gettext('Afar'));
 INSERT INTO config.language_map (code, value) VALUES ('abk', oils_i18n_gettext('Abkhaz'));
 INSERT INTO config.language_map (code, value) VALUES ('ace', oils_i18n_gettext('Achinese'));
@@ -691,6 +692,20 @@ INSERT INTO config.bib_level_map (code, value) VALUES ('i', oils_i18n_gettext('I
 INSERT INTO config.bib_level_map (code, value) VALUES ('m', oils_i18n_gettext('Monograph/Item'));
 INSERT INTO config.bib_level_map (code, value) VALUES ('s', oils_i18n_gettext('Serial'));
 
+
+-- available locales
+INSERT INTO config.i18n_locale (code,marc_code,name,description)
+    VALUES ('en_us','eng',oils_i18n_gettext('American English'),oils_i18n_gettext('American English'));
+INSERT INTO config.i18n_locale (code,marc_code,name,description)
+    VALUES ('en_ca','eng',oils_i18n_gettext('Canadian English'),oils_i18n_gettext('Canadian English'));
+INSERT INTO config.i18n_locale (code,marc_code,name,description)
+    VALUES ('fr_ca','fre',oils_i18n_gettext('Canadian Fench'),oils_i18n_gettext('Canadian French'));
+INSERT INTO config.i18n_locale (code,marc_code,name,description)
+    VALUES ('es_us','spa',oils_i18n_gettext('American Spanish'),oils_i18n_gettext('American Spanish'));
+INSERT INTO config.i18n_locale (code,marc_code,name,description)
+    VALUES ('es_mx','spa',oils_i18n_gettext('Mexican Spanish'),oils_i18n_gettext('Mexican Spanish'));
+
+
 --005.schema.actors.sql:
 
 -- The PINES levels