/**
* This file is a part of MyWebSQL package
*
* @file: js/common.js
* @author Samnan ur Rehman
* @copyright (c) 2008-2014 Samnan ur Rehman
* @web http://mywebsql.net
* @license http://mywebsql.net/license
*/
function wrkfrmSubmit(type, id, name, query) {
if (!document.frmquery) {
xfrm = getFrame();
frm = xfrm.document.frmquery;
xfrm.onerror = frameErrorHandler;
setPageStatus(true);
}
else { // function called from an iframe in the popup
frm = document.frmquery;
$('#popup_overlay').removeClass('ui-helper-hidden');
}
frm.type.value = type;
frm.id.value = id;
frm.name.value = name;
frm.query.value = query;
if (arguments.length <= 4)
frm.submit();
else {
callback = arguments[4];
data = 'q=wrkfrm&' + $(frm).serialize();
$.ajax({ type: 'POST',
url: '?',
data: data,
success: callback
});
}
}
function getFrame() {
xfrm = null;
if ($.browser.msie && $.browser.version < 9.0)
xfrm = document.frames("wrkfrm");
else
xfrm = window.frames["wrkfrm"];
return xfrm;
}
function resetFrame() {
xfrm = getFrame();
xfrm.src = "javascript:false";
}
function debugMsg(msg) {
$('#messageContainer').innerHTML = msg;
}
function frameErrorHandler() {
setPageStatus(false);
$('#recordCounter').html(' ');
$('#timeCounter').html('');
$('#messageContainer').html('Navigation Error. Try reloading the page');
}
function setPageStatus(flg, msg) {
if (flg) {
$('#nav_bar').css('display', 'none');
$('#loader').css('display', 'table');
showNavBtns(); // hide all buttons
}
else {
$('#loader').css('display', 'none');
$('#nav_bar').css('display', 'table-row');
showNavBtns('query', 'queryall');
}
if (msg)
$('#messageContainer').html(msg);
}
function addCmdHistory(str) {
d = new Date();
h = d.getHours();
m = d.getMinutes();
if (h < 10) h = '0'+h;
if (m < 10) m = '0'+m;
$('#sql-history > tbody:last').append("
| [" + h + ":" + m + "] | " + str + "; |
");
if (arguments.length > 1 && arguments[1] == true)
currentQuery = str;
}
function str_replace(search, replace, subject) {
var f = search, r = replace, s = "" + subject;
var ra = is_array(r), sa = is_array(s), f = [].concat(f), r = [].concat(r), i = (s = [].concat(s)).length;
while (j = 0, i--) {
while (s[i] = s[i].split(f[j]).join(ra ? r[j] || "" : r[0]), ++j in f){};
};
return sa ? s : s[0];
}
function is_array( mixed_var ) {
return ( mixed_var instanceof Array );
}
/* simple hack for IE :P */
if(!Array.indexOf) {
Array.prototype.indexOf = function(obj) {
for(var i=0; i 3) { s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep);
}
if ((s[1] || '').length < prec) {
s[1] = s[1] || '';
s[1] += new Array(prec - s[1].length + 1).join('0'); }
return s.join(dec);
}
/* htmlspecialchars function by phpjs (name changed) */
function htmlchars (string, quote_style, charset, double_encode) {
var optTemp = 0,
i = 0, noquotes = false;
if (typeof quote_style === 'undefined' || quote_style === null) {
quote_style = 2;
}
string = string.toString();
if (double_encode !== false) { // Put this first to avoid double-encoding
string = string.replace(/&/g, '&');
}
string = string.replace(//g, '>');
var OPTS = {
'ENT_NOQUOTES': 0,
'ENT_HTML_QUOTE_SINGLE': 1,
'ENT_HTML_QUOTE_DOUBLE': 2,
'ENT_COMPAT': 2,
'ENT_QUOTES': 3,
'ENT_IGNORE': 4
};
if (quote_style === 0) {
noquotes = true;
}
if (typeof quote_style !== 'number') { // Allow for a single string or an array of string flags
quote_style = [].concat(quote_style);
for (i = 0; i < quote_style.length; i++) {
// Resolve string input to bitwise e.g. 'PATHINFO_EXTENSION' becomes 4
if (OPTS[quote_style[i]] === 0) {
noquotes = true;
} else if (OPTS[quote_style[i]]) {
optTemp = optTemp | OPTS[quote_style[i]];
}
}
quote_style = optTemp;
}
if (quote_style & OPTS.ENT_HTML_QUOTE_SINGLE) {
string = string.replace(/'/g, ''');
}
if (!noquotes) {
string = string.replace(/"/g, '"');
}
return string;
}
function uiShowStatus(progress, type, id, delay) {
var status = $(progress).data("status");
if (!status) {
status = window.setTimeout( function() { uiShowStatus(progress, type, id, delay); }, delay );
$(progress).data("status", status);
return true;
}
$.ajax({ type: 'GET',
url: 'status.php?type=' + type + '&id=' + id,
success: function(res) {
if(res && res.c) {
$(progress).progressbar("value", res.c);
if (res.c >= 100) {
$(progress).progressbar("destory");
$(progress).removeData("status");
}
}
status = window.setTimeout( function() { uiShowStatus(progress, type, id, delay); }, delay );
$(progress).data("status", status);
},
error: function() {
$(progress).progressbar("destory");
$(progress).removeData("status");
},
dataType: 'json'
});
}
function uiShowObjectList(list, name, title, uncheck)
{
// objects other than schema are enclosed inside their schema container, so we make a flat list
// of objects prefixed by the schema name
if (!list.length) {
new_list = [];
for (var i in list) {
for(j=0; j';
}
if (html != '')
{
html = ''
+ html + '
';
$('#db_objects').append(html);
}
}