mirror of
https://github.com/Piwigo/Piwigo.git
synced 2026-07-06 09:52:29 +02:00
Feature 1460 : Customize form installation depending on database engine
- sqlite is proposed by default if severals
database engine are available (cf conf)
- sqlite is proposed before pdo-sqlite
- remove host, user and password for sqlite
git-svn-id: http://piwigo.org/svn/trunk@4985 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
@@ -86,20 +86,41 @@ function available_engines()
|
||||
|
||||
foreach ($dblayers as $engine_name => $engine)
|
||||
{
|
||||
if (file_exists(sprintf($pattern, $engine_name))
|
||||
&& isset($engine['function_available'])
|
||||
&& function_exists($engine['function_available']))
|
||||
if (file_exists(sprintf($pattern, $engine_name)))
|
||||
{
|
||||
$engines[$engine_name] = $engine['engine'];
|
||||
}
|
||||
elseif (file_exists(sprintf($pattern, $engine_name))
|
||||
&& isset($engine['class_available'])
|
||||
&& class_exists($engine['class_available']))
|
||||
{
|
||||
$engines[$engine_name] = $engine['engine'];
|
||||
$engines[$engine_name]['label'] = $engine['engine'];
|
||||
$engines[$engine_name]['available'] = 'disabled';
|
||||
|
||||
if (isset($engine['function_available'])
|
||||
&& function_exists($engine['function_available']))
|
||||
{
|
||||
$engines[$engine_name]['available'] = true;
|
||||
}
|
||||
elseif (isset($engine['class_available'])
|
||||
&& class_exists($engine['class_available']))
|
||||
{
|
||||
$engines[$engine_name]['available'] = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (count($engines)>1)
|
||||
{
|
||||
$engines[$GLOBALS['conf']['dbengine_select_default']]['selected'] = true;
|
||||
}
|
||||
|
||||
if ($engines['sqlite']['available'] && $engines['pdo-sqlite']['available'])
|
||||
{
|
||||
if ($GLOBALS['conf']['db_sqlite_default']=='native')
|
||||
{
|
||||
unset($engines['pdo-sqlite']);
|
||||
}
|
||||
else
|
||||
{
|
||||
unset($engines['sqlite']);
|
||||
}
|
||||
}
|
||||
|
||||
return $engines;
|
||||
}
|
||||
?>
|
||||
@@ -0,0 +1,19 @@
|
||||
<script type="text/javascript" src="template-common/lib/jquery.packed.js"></script>
|
||||
{literal}
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$option_selected = $('#dblayer option:selected').attr('value');
|
||||
if ($option_selected=='sqlite' || $option_selected=='pdo-sqlite') {
|
||||
$('input[name=dbhost],input[name=dbuser],input[name=dbpasswd]').parent().parent().hide();
|
||||
}
|
||||
$('#dblayer').change(function() {
|
||||
$db = this;
|
||||
if ($db.value=='sqlite' || $db.value=='pdo-sqlite') {
|
||||
$('input[name=dbhost],input[name=dbuser],input[name=dbpasswd]').parent().parent().hide();
|
||||
} else {
|
||||
$('input[name=dbhost],input[name=dbuser],input[name=dbpasswd]').parent().parent().show();
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{/literal}
|
||||
@@ -9,6 +9,7 @@
|
||||
<link rel="stylesheet" type="text/css" href="{$ROOT_URL}admin/template/{$themeconf.template}/layout.css">
|
||||
<link rel="stylesheet" type="text/css" href="{$ROOT_URL}admin/template/{$themeconf.template}/default-colors.css">
|
||||
<link rel="stylesheet" type="text/css" href="{$ROOT_URL}admin/template/{$themeconf.template}/theme/{$themeconf.theme}/theme.css">
|
||||
{include file="include/install.inc.tpl"}
|
||||
{literal}
|
||||
<style type="text/css">
|
||||
.content {
|
||||
@@ -88,8 +89,13 @@ TD {
|
||||
<tr>
|
||||
<td style="width: 30%;">{'step1_dbengine'|@translate}</td>
|
||||
<td>
|
||||
<select name="dblayer">
|
||||
{html_options options=$F_DB_ENGINES selected=$F_DB_LAYER}
|
||||
<select name="dblayer" id="dblayer">
|
||||
{foreach from=$F_DB_ENGINES key=k item=v}
|
||||
<option value="{$k}"
|
||||
{if $k==$F_DB_LAYER or $v.selected} selected="selected"{/if}
|
||||
{if $v.available!=1} disabled="disabled"{/if}
|
||||
>{$v.label}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</td>
|
||||
<td>{'step1_dbengine_info'|@translate}</td>
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
body, h3, dt, h2, .throw, .content, label,
|
||||
input.rateButtonSelected /* <= why IE doesn't inherit this ? */ { color:#666; }
|
||||
INPUT, select, textarea { color:#999; background-color: #444; }
|
||||
option[disabled] { background-color: #999; color: #444; }
|
||||
input[type="radio"], input[type="checkbox"] { background-color: transparent; }
|
||||
/* INPUT[type="checkbox"], INPUT[type="radio"]
|
||||
{ color:#999; background-color: #eee; } */
|
||||
|
||||
Reference in New Issue
Block a user