Subversion Repositories oidplus

Rev

Rev 635 | Rev 865 | Go to most recent revision | View as "text/javascript" | Blame | Compare with Previous | Last modification | View Log | RSS feed

  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_PgSQL")[0].style.display = (strPlugin == 'PgSQL') ? "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 != 'PgSQL') 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 ($("#pgsql_host")[0].value.length == 0)
  36.         {
  37.                 $("#pgsql_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.                 $("#pgsql_host_warn")[0].innerHTML = '';
  42.         }
  43.  
  44.         // Check 2: Username must not be empty
  45.         if ($("#pgsql_username")[0].value.length == 0)
  46.         {
  47.                 $("#pgsql_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.                 $("#pgsql_username_warn")[0].innerHTML = '';
  52.         }
  53.  
  54.         // Check 3: Database name must not be empty
  55.         if ($("#pgsql_database")[0].value.length == 0)
  56.         {
  57.                 $("#pgsql_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.                 $("#pgsql_database_warn")[0].innerHTML = '';
  62.         }
  63.  
  64.         $("#struct_1")[0].href = setupdir+'struct_empty.sql.php?plugin=pgsql&prefix='+encodeURI($("#tablename_prefix")[0].value)+'&database='+encodeURI($("#pgsql_database")[0].value)+'&slang=pgsql';
  65.         $("#struct_2")[0].href = setupdir+'struct_with_examples.sql.php?plugin=pgsql&prefix='+encodeURI($("#tablename_prefix")[0].value)+'&database='+encodeURI($("#pgsql_database")[0].value)+'&slang=pgsql';
  66.         $("#struct_cli_1")[0].innerHTML = '<br>'+_L('or via command line:')+'<br><code>curl -s "'+$("#struct_1")[0].href+'" | psql <!-- TODO: split host/port  -h '+$("#pgsql_host")[0].value+' --> -U '+$("#pgsql_username")[0].value+' -d '+$("#pgsql_database")[0].value+' -a</code>';
  67.         $("#struct_cli_2")[0].innerHTML = '<br>'+_L('or via command line:')+'<br><code>curl -s "'+$("#struct_2")[0].href+'" | psql <!-- TODO: split host/port  -h '+$("#pgsql_host")[0].value+' --> -U '+$("#pgsql_username")[0].value+' -d '+$("#pgsql_database")[0].value+' -a</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 != 'PgSQL') return '';
  76.  
  77.         return 'OIDplus::baseConfig()->setValue(\'PGSQL_HOST\',        \''+$("#pgsql_host")[0].value+'\');<br>' +
  78.                'OIDplus::baseConfig()->setValue(\'PGSQL_USERNAME\',    \''+$("#pgsql_username")[0].value+'\');<br>' +
  79.                'OIDplus::baseConfig()->setValue(\'PGSQL_PASSWORD\',    base64_decode(\''+b64EncodeUnicode($("#pgsql_password")[0].value)+'\'));<br>' +
  80.                'OIDplus::baseConfig()->setValue(\'PGSQL_DATABASE\',    \''+$("#pgsql_database")[0].value+'\');<br>';
  81. });
  82.