TPac: first try audience_group SVF for audience maps
authorBill Erickson <berick@esilibrary.com>
Tue, 6 Sep 2011 16:12:36 +0000 (12:12 -0400)
committerBill Erickson <berick@esilibrary.com>
Tue, 6 Sep 2011 16:15:48 +0000 (12:15 -0400)
commite0a07ce391885499da79c19b1e65728dec23f3a9
treea29851d3b9a6fab4674f5d1d5e0f770a23f7fa01
parente477375691143872c8ff5fa9c754380f655ac169
TPac: first try audience_group SVF for audience maps

Allow for configuration of an "audience_group"
config.record_attr_definition for collecting MARC audience codes into more
human-friendly groups.  This allows the TPac to behave more like the
current OPAC, which groups audience values into simpler collections. As
with "mattype", if no "audience_group" configuration exists, fall back to
the traditional, long-form "audience" attribute.

For future referene, here's an example setup using an "audience_group"
attribute.

INSERT INTO config.record_attr_definition
    (name, label, description, fixed_field, filter)
VALUES
    ('audience_group', 'Audience Group', 'Audience Group', 'Audn', TRUE);

INSERT INTO config.coded_value_map
    (ctype, code, value, description)
VALUES
    ('audience_group', 'A', 'Adult', 'Adult Audience'),
    ('audience_group', 'T', 'Teen', 'Teen Audience'),
    ('audience_group', 'C', 'Children', 'Children Audience');

INSERT INTO config.record_attr_index_norm_map
    (attr, norm, params)
VALUES
    ('audience_group', (
        SELECT id FROM
            config.index_normalizer WHERE func =
            'generic_map_normalizer'
        ),
        '["=>A g,e,f=>A a,c,j,b=>C d=>T"]'
);

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Open-ILS/web/templates/default/opac/parts/advanced/search.tt2