patch #515268 - Feature Request #511816 (enable/disable functions fields) thanks to Alexander M. Turek

This commit is contained in:
Loïc Chapeaux
2002-02-09 18:57:44 +00:00
parent f7cb75b4c1
commit 9c9e5e8a2e
5 changed files with 87 additions and 64 deletions

View File

@@ -24,6 +24,10 @@ $Source$
with <base href=""> thanks to Alexander M. Turek.
* main.php3, lines 11-14; libraries/grab_globals.lib.php3, lines 27-32;
libraries/auth/cookie.auth.lib.php3: improved patch #495360.
* config.inc.php3, lines 142 & 238-265; Documentation.html, lines 746-752;
tbl_change.php3; libraries/common.lib.php3, lines 105-107:
patch #515268 - Feature Request #511816 (enable/disable functions fields)
thanks to Alexander M. Turek <rabus at users.sourceforge.net>.
2002-02-08 Marc Delisle <lem9@users.sourceforge.net>
* ukrainian updates thanks to Markijan Baran.

View File

@@ -732,7 +732,7 @@
<br /><br />
</dd>
<dt><b>$cfgProtectBinary </b>boolean</dt>
<dt><b>$cfgProtectBinary </b>boolean or string</dt>
<dd>
Defines whether <tt>BLOB</tt> or <tt>BINARY</tt> fields are protected
from edition when browsing a table's content or not.
@@ -743,6 +743,13 @@
<br /><br />
</dd>
<dt><b>$cfgShowFunctionFields </b>boolean</dt>
<dd>
Defines whether MySQL functions fields should be displayed or not in edit/insert
mode.
<br /><br />
</dd>
<dt>
<b>$cfgZipDump </b>boolean<br />
<b>$cfgGZipDump </b>boolean<br />

View File

@@ -139,6 +139,7 @@ $cfgProtectBinary = 'blob'; // disallow editing of binary fields
// FALSE allow editing
// 'blob' allow editing except for BLOB fields
// 'all' disallow editing
$cfgShowFunctionFields = TRUE; // Display the function fields in edit/insert mode
$cfgZipDump = TRUE; // Allow the use of zip/gzip/bzip
$cfgGZipDump = TRUE; // compression for
@@ -234,32 +235,34 @@ $cfgAttributeTypes = array(
);
// Available functions
$cfgFunctions = array(
'ASCII',
'CHAR',
'SOUNDEX',
'LCASE',
'UCASE',
'NOW',
'PASSWORD',
'MD5',
'ENCRYPT',
'RAND',
'LAST_INSERT_ID',
'COUNT',
'AVG',
'SUM',
'CURDATE',
'CURTIME',
'FROM_DAYS',
'FROM_UNIXTIME',
'PERIOD_ADD',
'PERIOD_DIFF',
'TO_DAYS',
'UNIX_TIMESTAMP',
'USER',
'WEEKDAY'
);
if ($cfgShowFunctionFields) {
$cfgFunctions = array(
'ASCII',
'CHAR',
'SOUNDEX',
'LCASE',
'UCASE',
'NOW',
'PASSWORD',
'MD5',
'ENCRYPT',
'RAND',
'LAST_INSERT_ID',
'COUNT',
'AVG',
'SUM',
'CURDATE',
'CURTIME',
'FROM_DAYS',
'FROM_UNIXTIME',
'PERIOD_ADD',
'PERIOD_DIFF',
'TO_DAYS',
'UNIX_TIMESTAMP',
'USER',
'WEEKDAY'
);
} // end if
/**

View File

@@ -102,6 +102,9 @@ if (!defined('PMA_COMMON_LIB_INCLUDED')){
$cfgProtectBinary = 'blob';
}
}
if (!isset($cfgShowFunctionFields)) {
$cfgShowFunctionFields = TRUE;
}
if (!isset($cfgZipDump)) {
$cfgZipDump = (isset($cfgGZipDump) ? $cfgGZipDump : TRUE);
}

View File

@@ -142,7 +142,11 @@ echo "\n";
<tr>
<th><?php echo $strField; ?></th>
<th><?php echo $strType; ?></th>
<th><?php echo $strFunction; ?></th>
<?php
if ($cfgShowFunctionFields) {
echo ' <th>' . $strFunction . '</th>' . "\n";
}
?>
<th><?php echo $strNull; ?></th>
<th><?php echo $strValue; ?></th>
</tr>
@@ -242,40 +246,42 @@ for ($i = 0; $i < $fields_cnt; $i++) {
// Note: from the MySQL manual: "BINARY doesn't affect how the column is
// stored or retrieved" so it does not mean that the contents is
// binary
if ((($cfgProtectBinary && $is_blob)
|| ($cfgProtectBinary == 'all' && $is_binary))
&& !empty($data)) {
echo ' <td align="center" bgcolor="'. $bgcolor . '">' . $strBinary . '</td>' . "\n";
} else if (strstr($row_table_def['True_Type'], 'enum') || strstr($row_table_def['True_Type'], 'set')) {
echo ' <td align="center" bgcolor="'. $bgcolor . '">--</td>' . "\n";
} else {
?>
if ($cfgShowFunctionFields) {
if ((($cfgProtectBinary && $is_blob)
|| ($cfgProtectBinary == 'all' && $is_binary))
&& !empty($data)) {
echo ' <td align="center" bgcolor="'. $bgcolor . '">' . $strBinary . '</td>' . "\n";
} else if (strstr($row_table_def['True_Type'], 'enum') || strstr($row_table_def['True_Type'], 'set')) {
echo ' <td align="center" bgcolor="'. $bgcolor . '">--</td>' . "\n";
} else {
?>
<td bgcolor="<?php echo $bgcolor; ?>">
<select name="funcs[<?php echo urlencode($field); ?>]">
<option></option>
<?php
echo "\n";
if (!$first_timestamp) {
for ($j = 0; $j < count($cfgFunctions); $j++) {
echo ' ';
echo '<option>' . $cfgFunctions[$j] . '</option>' . "\n";
}
} else {
<?php
echo "\n";
if (!$first_timestamp) {
for ($j = 0; $j < count($cfgFunctions); $j++) {
echo ' ';
echo '<option>' . $cfgFunctions[$j] . '</option>' . "\n";
}
} else {
// for default function = NOW() on first timestamp field
// -- swix/18jul01
for ($j = 0; $j < count($cfgFunctions); $j++) {
echo ' ';
if ($cfgFunctions[$j] == 'NOW') {
echo '<option selected="selected">' . $cfgFunctions[$j] . '</option>' . "\n";
} else {
echo '<option>' . $cfgFunctions[$j] . '</option>' . "\n";
}
} // end for
}
?>
for ($j = 0; $j < count($cfgFunctions); $j++) {
echo ' ';
if ($cfgFunctions[$j] == 'NOW') {
echo '<option selected="selected">' . $cfgFunctions[$j] . '</option>' . "\n";
} else {
echo '<option>' . $cfgFunctions[$j] . '</option>' . "\n";
}
} // end for
}
?>
</select>
</td>
<?php
<?php
}
}
echo "\n";