Hi,
The preferences can be stored in browser's localstorage.
Now, if I logout and re-login. There is a notice (div id="prefs_autoload") saying "Your browser has phpMyAdmin configuration for this domain. Would you like to import it for current session?". (till this, it behaves as expected)
But when I click "Yes", there is a Javascript Error "Invalid JSON!Unexpected token < "
and "Uncaught TypeError: Cannot read property 'status' of null".
The error report is (just for reference):
{
"pma_version": "4.4.7",
"browser_name": "CHROME",
"browser_version": "37.0.2062.120",
"user_os": "Linux",
"server_software": "nginx/1.6.2",
"user_agent_string": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/37.0.2062.120 Chrome/37.0.2062.120 Safari/537.36",
"locale": "en",
"configuration_storage": "enabled",
"php_version": "5.6.9-0+deb8u1",
"exception_type": "js",
"exception": {
"mode": "stack",
"name": "TypeError",
"message": "Cannot read property 'status' of null",
"stack":
{
"line": 232,
"func": "",
"context": [
" lastException = null;",
" notifyHandlers.apply(null, [stack, null.concat(args));",
" }",
" }, (stack.incomplete ? 2000 : 0));",
"",
" throw ex; // re-throw to propagate to the top level (and cause wind//...",
" }",
"",
" report.subscribe = subscribe;",
" report.unsubscribe = unsubscribe;",
" return report;"
],
"column": "",
"filename": "tracekit/tracekit.js"
},
{
"func": "HTMLDocument.<anonymous>",
"line": 173,
"column": "32",
"context":
" try {",
" var data = $.parseJSON(xhr.responseText);",
" PMA_console.ajaxCallback(data);",
" } catch (e) {",
" console.log(\"Invalid JSON!\" + e.message);",
" if(AJAX.xhr.status === 0 && AJAX.xhr.statusText !== 'ab//...",
" PMA_ajaxShowMessage($('
',{class:'error',html//...",
" AJAX.active = false;",
" AJAX.xhr = null;",
" }",
" }"
,
"filename": "console.js"
},
{
"func": "HTMLDocument.new_func",
"line": 276,
"column": "33",
"context":
" */",
" wrap_function: function (func) {",
" if (!func.wrapped) {",
" var new_func = function () {",
" try {",
" return func.apply(this, arguments);",
" } catch (x) {",
" TraceKit.report(x);",
" }",
" };",
" new_func.wrapped = true;"
,
"filename": "error_report.js"
},
{
"func": "HTMLDocument.m.event.dispatch",
"line": 3,
"column": "8436",
"context":
"/*! jQuery v1.11.1 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/li//...",
"!function(a,b){\"object\"==typeof module&&\"object\"==typeof module.exports?mod//...",
"if(k&&j[k&&(e||j
[k].data)||void 0!==d||\"string\"!=typeof b)return k||(k=i?a//...",
"},cur:function(){var a=Zb.propHooks
[this.prop];return a&&a.get?a.get(this)://...",
";",
"",
"function sprintf() {",
"/
"
],
"filename": "jquery/jquery-1.11.1.min.js"
},
{
"func": "HTMLDocument.$event.dispatch",
"line": 373,
"column": "19",
"context":
"$event.dispatch = function( event ){",
"\tif ( $.data( this, \"suppress.\"+ event.type ) - new Date().getTime() > 0 ){",
"\t\t$.removeData( this, \"suppress.\"+ event.type );",
"\t\treturn;",
"\t}",
"\treturn $dispatch.apply( this, arguments );",
"};",
"",
"// event fix hooks for touch events...",
"var touchHooks = ",
"$event.fixHooks.touchstart = "
,
"filename": "jquery/jquery.event.drag-2.2.js"
},
{
"func": "HTMLDocument.r.handle",
"line": 3,
"column": "5146",
"context":
"/*! jQuery v1.11.1 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/li//...",
"!function(a,b){\"object\"==typeof module&&\"object\"==typeof module.exports?mod//...",
"if(k&&j[k&&(e||j[k].data)||void 0!==d||\"string\"!=typeof b)return k||(k=i?a//...",
"},cur:function(){var a=Zb.propHooks[this.prop];return a&&a.get?a.get(this)://...",
";",
"",
"function sprintf() {",
"/"
],
"filename": "jquery/jquery-1.11.1.min.js"
},
{
"func": "Object.m.event.trigger",
"line": 3,
"column": "7537",
"context":
"/*! jQuery v1.11.1 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/li//...",
"!function(a,b){\"object\"==typeof module&&\"object\"==typeof module.exports?mod//...",
"if(k&&j[k&&(e||j
[k].data)||void 0!==d||\"string\"!=typeof b)return k||(k=i?a//...",
"},cur:function(){var a=Zb.propHooks
[this.prop];return a&&a.get?a.get(this)://...",
";",
"",
"function sprintf() {",
"/
"
],
"filename": "jquery/jquery-1.11.1.min.js"
},
{
"func": "x",
"line": 4,
"column": "21995",
"context":
"/*! jQuery v1.11.1 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/li//...",
"!function(a,b){\"object\"==typeof module&&\"object\"==typeof module.exports?mod//...",
"if(k&&j[k&&(e||j[k].data)||void 0!==d||\"string\"!=typeof b)return k||(k=i?a//...",
"},cur:function(){var a=Zb.propHooks[this.prop];return a&&a.get?a.get(this)://...",
";",
"",
"function sprintf() {",
"/",
" * Copyright (c) 2013 Kevin van Zonneveld (http://kvz.io)"
],
"filename": "jquery/jquery-1.11.1.min.js"
},
{
"func": "XMLHttpRequest.b",
"line": 4,
"column": "25897",
"context":
"/*! jQuery v1.11.1 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/li//...",
"!function(a,b){\"object\"==typeof module&&\"object\"==typeof module.exports?mod//...",
"if(k&&j[k&&(e||j
[k].data)||void 0!==d||\"string\"!=typeof b)return k||(k=i?a//...",
"},cur:function(){var a=Zb.propHooks
[this.prop];return a&&a.get?a.get(this)://...",
";",
"",
"function sprintf() {",
"/*",
" * Copyright (c) 2013 Kevin van Zonneveld (http://kvz.io)"
],
"filename": "jquery/jquery-1.11.1.min.js"
}
],
"useragent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/37.0.2062.120 Chrome/37.0.2062.120 Safari/537.36",
"incomplete": "false",
"partial": "true",
"uri": "index.php?target="
},
"script_name": "index.php",
"microhistory": {
"pages":
{
"hash": "index.php?db=&table=&server=2&target=&token=3a15a33d49f2e78dc62435bff7a485fe"
}
,
"current_index": "1"
}
}
Sorry for the bad formatting.
Better formatted report is here :
Should be fixed with https://github.com/phpmyadmin/phpmyadmin/commit/e453cb818b7714e1b6231221c343660c5496ed7f