dump db version
[openemr.git] / interface / language / language.inc.php
blobf0f0e805677c70221662822270bb7f6ab88de90d
1 <?php
2 /**
3 * language.inc.php script
5 * @package OpenEMR
6 * @link http://www.open-emr.org
7 * @author Brady Miller <brady.g.miller@gmail.com>
8 * @copyright Copyright (c) 2018 Brady Miller <brady.g.miller@gmail.com>
9 * @license https://github.com/openemr/openemr/blob/master/LICENSE GNU General Public License 3
12 function check_pattern($data, $pat)
14 if (preg_match("/" . addcslashes($pat, '/') . "/", $data)) {
15 return true ;
16 } else {
17 return false;
21 // Function to insert/modify items in the language log table, lang_custom
23 function insert_language_log($lang_desc, $lang_code, $cons_name, $def)
26 // set up the mysql collation string to ensure case is sensitive in the mysql queries
27 if (!$disable_utf8_flag) {
28 $case_sensitive_collation = "COLLATE utf8_bin";
29 } else {
30 $case_sensitive_collation = "COLLATE latin_bin";
34 if ($cons_name == '') {
35 // NEW LANGUAGE
36 // (ensure not a repeat log entry)
37 $sql = "SELECT * FROM lang_custom WHERE constant_name='' AND lang_description=? ".$case_sensitive_collation;
38 $res_test = SqlStatement($sql, array($lang_desc));
39 if (!SqlFetchArray($res_test)) {
40 $sql="INSERT INTO lang_custom SET lang_code=?, lang_description=?";
41 SqlStatement($sql, array($lang_code, $lang_desc));
43 } elseif ($lang_desc == '') {
44 // NEW CONSTANT
45 // (ensure not a repeat entry)
46 $sql = "SELECT * FROM lang_custom WHERE lang_description='' AND constant_name=? ".$case_sensitive_collation;
47 $res_test = SqlStatement($sql, array($cons_name));
48 if (!SqlFetchArray($res_test)) {
49 $sql="INSERT INTO lang_custom SET constant_name=?";
50 SqlStatement($sql, array($cons_name));
52 } else {
53 // FULL ENTRY
54 // (ensure not a repeat log entry)
55 $sql = "SELECT * FROM lang_custom WHERE lang_description=? ".$case_sensitive_collation." AND constant_name=? ".$case_sensitive_collation." AND definition=? ".$case_sensitive_collation;
56 $res_test = SqlStatement($sql, array($lang_desc, $cons_name, $def));
57 if (!SqlFetchArray($res_test)) {
58 // either modify already existing log entry or create a new one
59 $sql = "SELECT * FROM lang_custom WHERE lang_description=? ".$case_sensitive_collation." AND constant_name=? ".$case_sensitive_collation;
60 $res_test2 = SqlStatement($sql, array($lang_desc, $cons_name));
61 if (SqlFetchArray($res_test2)) {
62 // modify existing log entry(s)
63 $sql = "UPDATE lang_custom SET definition=? WHERE lang_description=? ".$case_sensitive_collation." AND constant_name=? ".$case_sensitive_collation;
64 SqlStatement($sql, array($def, $lang_desc, $cons_name));
65 } else {
66 // create new log entry
67 $sql = "INSERT INTO lang_custom (lang_description,lang_code,constant_name,definition) VALUES (?,?,?,?)";
68 SqlStatement($sql, array($lang_desc, $lang_code, $cons_name, $def));