Koha/installer/data/mysql/db_revs/210600012.pl
Tomas Cohen Arazi d5257fd99a Bug 29631: (QA follow-up) Add missing cleanups
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2021-12-13 15:46:20 -10:00

95 lines
3.2 KiB
Perl
Executable file

use Modern::Perl;
return {
bug_number => "15067",
description => "Add missing languages",
up => sub {
my ($args) = @_;
my $dbh = $args->{dbh};
if( !unique_key_exists( 'language_subtag_registry', 'uniq_lang' ) ) {
$dbh->do(q{
DELETE a
FROM language_subtag_registry AS a, language_subtag_registry AS b
WHERE a.id < b.id
AND a.subtag IS NOT NULL
AND a.subtag=b.subtag
AND a.type=b.type
});
$dbh->do(q{
ALTER TABLE language_subtag_registry
ADD UNIQUE KEY uniq_lang (subtag, type)
});
};
if( !unique_key_exists( 'language_descriptions', 'uniq_desc' ) ) {
$dbh->do(q{
DELETE a
FROM language_descriptions AS a, language_descriptions AS b
WHERE a.id < b.id
AND a.subtag IS NOT NULL
AND a.subtag=b.subtag
AND a.lang IS NOT NULL
AND a.lang=b.lang
AND a.type=b.type
});
$dbh->do(q{
ALTER TABLE language_descriptions
ADD UNIQUE KEY uniq_desc (subtag, type, lang)
});
};
if( !unique_key_exists( 'language_rfc4646_to_iso639', 'uniq_code' ) ) {
$dbh->do(q{
DELETE a
FROM language_rfc4646_to_iso639 AS a, language_rfc4646_to_iso639 AS b
WHERE a.id < b.id
AND a.rfc4646_subtag IS NOT NULL
AND a.rfc4646_subtag=b.rfc4646_subtag
AND a.iso639_2_code=b.iso639_2_code
});
$dbh->do(q{
ALTER TABLE language_rfc4646_to_iso639
ADD UNIQUE KEY uniq_code (rfc4646_subtag, iso639_2_code)
});
};
$dbh->do(q{
INSERT IGNORE INTO language_subtag_registry (subtag, type, description, added)
VALUES
('et', 'language', 'Estonian', now()),
('lv', 'language', 'Latvian', now()),
('lt', 'language', 'Lithuanian', now()),
('iu', 'language', 'Inuktitut', now()),
('ik', 'language', 'Inupiaq', now())
});
$dbh->do(q{
INSERT IGNORE INTO language_descriptions (subtag, type, lang, description)
VALUES
('et', 'language', 'en', 'Estonian'),
('et', 'language', 'et', 'Eesti'),
('lv', 'language', 'en', 'Latvian'),
('lv', 'language', 'lv', 'Latvija'),
('lt', 'language', 'en', 'Lithuanian'),
('lt', 'language', 'lt', 'Lietuvių'),
('iu', 'language', 'en', 'Inuktitut'),
('iu', 'language', 'iu', 'ᐃᓄᒃᑎᑐᑦ'),
('ik', 'language', 'en', 'Inupiaq'),
('ik', 'language', 'ik', 'Iñupiaq')
});
$dbh->do(q{
INSERT IGNORE INTO language_rfc4646_to_iso639 (rfc4646_subtag, iso639_2_code)
VALUES
('et', 'est'),
('lv', 'lav'),
('lt', 'lit'),
('iu', 'iku'),
('ik', 'ipk')
});
},
}