Partial fix for bug #3291306 - Inline edit does not honor bit fields. Works with mysqli extension.
This commit is contained in:
12
js/sql.js
12
js/sql.js
@@ -888,16 +888,20 @@ $(document).ready(function() {
|
||||
*/
|
||||
var is_null = $this_field.find('input:checkbox').is(':checked');
|
||||
var value;
|
||||
var addQuotes = true;
|
||||
|
||||
if (is_null) {
|
||||
sql_query += ' `' + field_name + "`=NULL , ";
|
||||
need_to_post = true;
|
||||
} else {
|
||||
if($this_field.is(":not(.relation, .enum, .set)")) {
|
||||
if($this_field.is(":not(.relation, .enum, .set, .bit)")) {
|
||||
this_field_params[field_name] = $this_field.find('textarea').val();
|
||||
if($this_field.is('.transformed')) {
|
||||
$.extend(transform_fields, this_field_params);
|
||||
}
|
||||
} else if ($this_field.is('.bit')) {
|
||||
this_field_params[field_name] = '0b' + $this_field.find('textarea').val();
|
||||
addQuotes = false;
|
||||
} else if ($this_field.is('.set')) {
|
||||
$test_element = $this_field.find('select');
|
||||
this_field_params[field_name] = $test_element.map(function(){
|
||||
@@ -924,7 +928,11 @@ $(document).ready(function() {
|
||||
new_clause += '`' + window.parent.table + '`.' + '`' + field_name + "` = '" + this_field_params[field_name].replace(/'/g,"''") + "'" + ' AND ';
|
||||
}
|
||||
if (this_field_params[field_name] != $this_field.data('original_data')) {
|
||||
sql_query += ' `' + field_name + "`='" + this_field_params[field_name].replace(/'/g, "''") + "' , ";
|
||||
if (addQuotes == true) {
|
||||
sql_query += ' `' + field_name + "`='" + this_field_params[field_name].replace(/'/g, "''") + "', ";
|
||||
} else {
|
||||
sql_query += ' `' + field_name + "`=" + this_field_params[field_name].replace(/'/g, "''") + ", ";
|
||||
}
|
||||
need_to_post = true;
|
||||
}
|
||||
}
|
||||
|
@@ -1026,6 +1026,11 @@ function PMA_addClass($class, $condition_field, $meta, $nowrap, $is_field_trunca
|
||||
$set_class = ' set';
|
||||
}
|
||||
|
||||
$bit_class = '';
|
||||
if(strpos($meta->type, 'bit') !== false) {
|
||||
$bit_class = ' bit';
|
||||
}
|
||||
|
||||
$mime_type_class = '';
|
||||
if(isset($meta->mimetype)) {
|
||||
$mime_type_class = ' ' . preg_replace('/\//', '_', $meta->mimetype);
|
||||
@@ -1034,7 +1039,7 @@ function PMA_addClass($class, $condition_field, $meta, $nowrap, $is_field_trunca
|
||||
$result = $class . ($condition_field ? ' condition' : '') . $nowrap
|
||||
. ' ' . ($is_field_truncated ? ' truncated' : '')
|
||||
. ($transform_function != $default_function ? ' transformed' : '')
|
||||
. $enum_class . $set_class . $mime_type_class;
|
||||
. $enum_class . $set_class . $bit_class . $mime_type_class;
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
Reference in New Issue
Block a user