Added definition searching feature, polished gui, updated instructions, and bug fixes...
[openemr.git] / interface / language / language.inc.php
blobaf09c6996e9060d830b4dd6714fcd55408f170f7
1 <?php
3 // gacl control
4 $thisauth = acl_check('admin', 'language');
6 if (!$thisauth) {
7 echo "<html>\n<body>\n";
8 echo "<p>" . xl('You are not authorized for this.','e') . "</p>\n";
9 echo "</body>\n</html>\n";
10 exit();
13 function check_pattern ($data,$pat) {
14 if (ereg ($pat, $data)) { return TRUE ; } else { RETURN FALSE; }
17 // Function to insert/modify items in the language log table, lang_custom
18 // NOTE THAT ALL PARAMETERS SHOULD ALREADY BE ESCAPED TO PREPARE FOR MYSQL QUERIES
20 function insert_language_log($lang_desc,$lang_code,$cons_name,$def) {
21 global $enable_custom_language_logging;
22 if (!$enable_custom_language_logging) return;
24 // set up the mysql collation string to ensure case is sensitive in the mysql queries
25 if (!$disable_utf8_flag) {
26 $case_sensitive_collation = "COLLATE utf8_bin";
28 else {
29 $case_sensitive_collation = "COLLATE latin_bin";
33 if ($cons_name == '') {
34 // NEW LANGUAGE
35 // (ensure not a repeat log entry)
36 $sql = "SELECT * FROM lang_custom WHERE constant_name='' AND lang_description='".$lang_desc."' ".$case_sensitive_collation;
37 $res_test = SqlStatement($sql);
38 if (!SqlFetchArray($res_test)) {
39 $sql="INSERT INTO lang_custom SET lang_code='".$lang_code."', lang_description='".$lang_desc."'";
40 SqlStatement ($sql);
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='".$cons_name."' ".$case_sensitive_collation;
47 $res_test = SqlStatement($sql);
48 if (!SqlFetchArray($res_test)) {
49 $sql="INSERT INTO lang_custom SET constant_name='".$cons_name."'";
50 SqlStatement ($sql);
53 else {
54 // FULL ENTRY
55 // (ensure not a repeat log entry)
56 $sql = "SELECT * FROM lang_custom WHERE lang_description='".$lang_desc."' ".$case_sensitive_collation." AND constant_name='".$cons_name."' ".$case_sensitive_collation." AND definition='".$def."' ".$case_sensitive_collation;
57 $res_test = SqlStatement($sql);
58 if (!SqlFetchArray($res_test)) {
59 // either modify already existing log entry or create a new one
60 $sql = "SELECT * FROM lang_custom WHERE lang_description='".$lang_desc."' ".$case_sensitive_collation." AND constant_name='".$cons_name."' ".$case_sensitive_collation;
61 $res_test2 = SqlStatement($sql);
62 if (SqlFetchArray($res_test2)) {
63 // modify existing log entry(s)
64 $sql = "UPDATE lang_custom SET definition = '".$def."' WHERE lang_description='".$lang_desc."' ".$case_sensitive_collation." AND constant_name='".$cons_name."' ".$case_sensitive_collation;
65 SqlStatement($sql);
67 else {
68 // create new log entry
69 $sql = "INSERT INTO lang_custom (lang_description,lang_code,constant_name,definition) VALUES ";
70 $sql .= "('".$lang_desc."','".$lang_code."','".$cons_name."','".$def."')";
71 SqlStatement($sql);