Index: openacs-4/packages/ref-language/tcl/apm-callback-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/ref-language/tcl/apm-callback-procs.tcl,v diff -u -r1.1 -r1.2 --- openacs-4/packages/ref-language/tcl/apm-callback-procs.tcl 13 May 2010 16:57:20 -0000 1.1 +++ openacs-4/packages/ref-language/tcl/apm-callback-procs.tcl 14 May 2010 12:22:49 -0000 1.2 @@ -9,6 +9,13 @@ namespace eval ref_language {} namespace eval ref_language::apm {} +ad_proc -private ref_language::apm::after_install { +} { + Fill ISO-639-2 codes table +} { + ref_language::apm::add_language_639_2_codes +} + ad_proc -private ref_language::apm::after_upgrade { {-from_version_name:required} {-to_version_name:required} @@ -21,25 +28,73 @@ set new_languages [ref_language::apm::lang_list_for_5_6_0d2] - foreach {name code} $new_languages { - set exists_p [db_string get_lang {select count(*) from language_codes where language_id = :code} -default 0] - - if { $exists_p } { - db_dml update_lang { - update language_codes set name = :name - where language_id = :code - } - } else { - db_dml insert_lang { - insert into language_codes (language_id, name) - values (:code, :name) - } - } + foreach {code name} $new_languages { + ref_language::set_data -iso1 $code -label $name } + } + 5.6.0d2 5.6.0d3 { + + ref_language::apm::add_language_639_2_codes + + } } } +## Helper procs + +ad_proc -private ref_language::apm::add_language_639_2_codes { +} { + Fills language_639_2_codes + + The ISO-639-2 codes are in a dat file located at + ref-language/sql/commjon directory. The file was downloaded from + http://www.loc.gov/standards/iso639-2/ISO-639-2_utf-8.txt + + Separator is "|" and the columns are: + +