Subversion Repositories oidplus

Rev

Rev 635 | Rev 865 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
635 daniel-mar 1
/*
2
 * OIDplus 2.0
3
 * Copyright 2019 - 2021 Daniel Marschall, ViaThinkSoft
4
 *
5
 * Licensed under the Apache License, Version 2.0 (the "License");
6
 * you may not use this file except in compliance with the License.
7
 * You may obtain a copy of the License at
8
 *
9
 *     http://www.apache.org/licenses/LICENSE-2.0
10
 *
11
 * Unless required by applicable law or agreed to in writing, software
12
 * distributed under the License is distributed on an "AS IS" BASIS,
13
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
 * See the License for the specific language governing permissions and
15
 * limitations under the License.
16
 */
17
 
18
plugin_combobox_change_callbacks.push(function(strPlugin) {
19
        $("#DBPLUGIN_PARAMS_MySQL")[0].style.display = (strPlugin == 'MySQL') ? "Block" : "None";
20
});
21
 
22
rebuild_callbacks.push(function() {
23
        var e = $("#db_plugin")[0];
24
        var strPlugin = e.options[e.selectedIndex].value;
25
        if (strPlugin != 'MySQL') return true;
26
 
27
        $("#struct_cli_1")[0].innerHTML = '';
28
        $("#struct_cli_2")[0].innerHTML = '';
29
        $("#struct_1")[0].href = 'struct_empty.sql.php';
30
        $("#struct_2")[0].href = 'struct_with_examples.sql.php';
31
 
32
        error = false;
33
 
34
        // Check 1: host must not be empty
35
        if ($("#mysql_host")[0].value.length == 0)
36
        {
37
                $("#mysql_host_warn")[0].innerHTML = '<font color="red">'+_L('Please specify a host name!')+'</font>';
38
                $("#config")[0].innerHTML = '<b>&lt?php</b><br><br><i>// ERROR: Please specify a host name!</i>'; // do not translate
39
                error = true;
40
        } else {
41
                $("#mysql_host_warn")[0].innerHTML = '';
42
        }
43
 
44
        // Check 2: Username must not be empty
45
        if ($("#mysql_username")[0].value.length == 0)
46
        {
47
                $("#mysql_username_warn")[0].innerHTML = '<font color="red">'+_L('Please specify a username!')+'</font>';
48
                $("#config")[0].innerHTML = '<b>&lt?php</b><br><br><i>// ERROR: Please specify a username!</i>'; // do not translate
49
                error = true;
50
        } else {
51
                $("#mysql_username_warn")[0].innerHTML = '';
52
        }
53
 
54
        // Check 3: Database name must not be empty
55
        if ($("#mysql_database")[0].value.length == 0)
56
        {
57
                $("#mysql_database_warn")[0].innerHTML = '<font color="red">'+_L('Please specify a database name!')+'</font>';
58
                $("#config")[0].innerHTML = '<b>&lt?php</b><br><br><i>// ERROR: Please specify a database name!</i>'; // do not translate
59
                error = true;
60
        } else {
61
                $("#mysql_database_warn")[0].innerHTML = '';
62
        }
63
 
64
        $("#struct_1")[0].href = setupdir+'struct_empty.sql.php?plugin=mysql&prefix='+encodeURI($("#tablename_prefix")[0].value)+'&database='+encodeURI($("#mysql_database")[0].value)+'&slang=mysql';
65
        $("#struct_2")[0].href = setupdir+'struct_with_examples.sql.php?plugin=mysql&prefix='+encodeURI($("#tablename_prefix")[0].value)+'&database='+encodeURI($("#mysql_database")[0].value)+'&slang=mysql';
66
        $("#struct_cli_1")[0].innerHTML = '<br>'+_L('or via command line:')+'<br><code>curl -s "'+$("#struct_1")[0].href+'" | mysql -u '+$("#mysql_username")[0].value+' -p</code>';
67
        $("#struct_cli_2")[0].innerHTML = '<br>'+_L('or via command line:')+'<br><code>curl -s "'+$("#struct_2")[0].href+'" | mysql -u '+$("#mysql_username")[0].value+' -p</code>';
68
 
69
        return !error;
70
});
71
 
72
rebuild_config_callbacks.push(function() {
73
        var e = $("#db_plugin")[0];
74
        var strPlugin = e.options[e.selectedIndex].value;
75
        if (strPlugin != 'MySQL') return '';
76
 
77
        return 'OIDplus::baseConfig()->setValue(\'MYSQL_HOST\',        \''+$("#mysql_host")[0].value+'\');<br>' +
78
               'OIDplus::baseConfig()->setValue(\'MYSQL_USERNAME\',    \''+$("#mysql_username")[0].value+'\');<br>' +
79
               'OIDplus::baseConfig()->setValue(\'MYSQL_PASSWORD\',    base64_decode(\''+b64EncodeUnicode($("#mysql_password")[0].value)+'\'));<br>' +
80
               'OIDplus::baseConfig()->setValue(\'MYSQL_DATABASE\',    \''+$("#mysql_database")[0].value+'\');<br>';
81
});