var YUI_TYPE_CLASS = "Class"; function createNamedElement(type, name) { var element = null; // Try the IE way; this fails on standards-compliant browsers try { element = document.createElement('<'+type+' name="'+name+'">'); } catch (e) { } if (!element || element.nodeName != type.toUpperCase()) { // Non-IE browser; use canonical method to create named element element = document.createElement(type); element.name = name; } return element; } function in_array(needle, haystack) { for(var i=0;i' + HTML_MORE + '
'; //var ret = '
' + content + '
'; //var ret = '
' + content + '
'; var ret = '
' + content + '
'; //var ret = '
' + content + '
'; return ret; } function getTimestampNow() { return Math.round(((new Date()).getTime()-Date.UTC(1970,0,1))/1000); } function getLoadingNotice(text, className) { if(typeof(text)=='undefined') text = "Loading..."; if(typeof(className)=='undefined') className = ""; ret = ""+LOADING_GRAPHIC+text+""; return ret; } function getStopNotice(text) { if(typeof(text)=='undefined') return getEmptyNotice(); ret = "

"+text+"

"; return ret; } function getEmptyNotice(text) { if(typeof(text)=='undefined') text = "Nothing to display"; ret = "

"+text+"

"; return ret; } function displayResponseMessages(jsonObj){ msg("displayResponseMessages()"); // Sys Error if (typeof(jsonObj[JSON_RESPONSE_INDEX_MSG_SYSERROR]) != 'undefined') { MVRZ.util.errorHandler(jsonObj[JSON_RESPONSE_INDEX_MSG_SYSERROR]); } // Popup if (typeof(jsonObj[JSON_RESPONSE_INDEX_MSG_ERROR_POPUP]) != 'undefined') { popup(NOTIFY_TYPE_ERROR, jsonObj[JSON_RESPONSE_INDEX_MSG_ERROR_POPUP]); } if (typeof(jsonObj[JSON_RESPONSE_INDEX_MSG_WARNING_POPUP]) != 'undefined') { popup(NOTIFY_TYPE_WARNING, jsonObj[JSON_RESPONSE_INDEX_MSG_WARNING_POPUP]); } if (typeof(jsonObj[JSON_RESPONSE_INDEX_MSG_INFO_POPUP]) != 'undefined') { popup(NOTIFY_TYPE_INFO, jsonObj[JSON_RESPONSE_INDEX_MSG_INFO_POPUP]); } // Error if (typeof(jsonObj[JSON_RESPONSE_INDEX_MSG_ERROR]) != 'undefined') { for (msgText in jsonObj[JSON_RESPONSE_INDEX_MSG_ERROR]) { msg(jsonObj[JSON_RESPONSE_INDEX_MSG_ERROR][msgText], "UERR", "UErr"); } } // OK if (typeof(jsonObj[JSON_RESPONSE_INDEX_MSG_OK]) != 'undefined') { for (msgText in jsonObj[JSON_RESPONSE_INDEX_MSG_OK]) { msg(jsonObj[JSON_RESPONSE_INDEX_MSG_OK][msgText], "UOK", "UInfo"); } } // Debug if (typeof(jsonObj[JSON_RESPONSE_INDEX_MSG_DEBUG]) != 'undefined') { for (msgText in jsonObj[JSON_RESPONSE_INDEX_MSG_DEBUG]) { msg(jsonObj[JSON_RESPONSE_INDEX_MSG_DEBUG][msgText], "RDBG", "RDebug"); } } // Write info on errors and oks if (typeof(gLastJsonUnparsed) != 'undefined' && gLastJsonUnparsed.length>0) { if (gIsAdmin) { gRemoteInfoPanel.setBody(gLastJsonUnparsed); gRemoteInfoPanel.show(); } else { notifyAdmin(gLastJsonUnparsed); popupErr(MSG_SYSTEM_ERROR); } } } // Dealing with NVPs var urlEncodingArray = Object(); urlEncodingArray[' '] = '%20'; urlEncodingArray['!'] = '%21'; urlEncodingArray['*'] = '%2A'; urlEncodingArray['\''] = '%27'; urlEncodingArray['('] = '%28'; urlEncodingArray[')'] = '%29'; urlEncodingArray[';'] = '%3B'; urlEncodingArray[':'] = '%3A'; urlEncodingArray['@'] = '%40'; urlEncodingArray['&'] = '%26'; urlEncodingArray['='] = '%3D'; urlEncodingArray['+'] = '%2B'; urlEncodingArray['$'] = '%24'; urlEncodingArray[','] = '%2C'; urlEncodingArray['/'] = '%2F'; urlEncodingArray['?'] = '%3F'; urlEncodingArray['%'] = '%25'; urlEncodingArray['#'] = '%23'; urlEncodingArray['['] = '%5B'; urlEncodingArray[']'] = '%5D'; function rawurldecode(str){ if (typeof(str) === 'undefined' || str.length == 0) { return ''; } //debugAppend('
'+str); var encodingIndex; var val = str; val = val.replace(/%A0/gi, ' '); val = val.replace(/\+/g, ' '); for (encodingIndex in urlEncodingArray) { var re = RegExp(urlEncodingArray[encodingIndex], "gi"); val = val.replace(re, encodingIndex); } //alert('rawurldecode('+str+') = '+val); return val; } function rawurlencode(str){ if (typeof(str) === 'undefined' || str.length == 0) { return ''; } var outStr = ''; var inStr = str.toString(); var dbgCount = 0; //debugAppend('
'+str); for (var c = 0; c < inStr.length; c++) { //debugAppend(str[c]+'='+urlEncodingArray[str[c]] + ' '); if (typeof(urlEncodingArray[inStr.charAt(c)]) != "undefined") { //if(!dbgCount) alert('rawurlencode OK '+inStr+'['+c+']:'+inStr.charAt(c)+'='+urlEncodingArray[inStr.charAt(c)]); outStr += urlEncodingArray[inStr.charAt(c)]; dbgCount++; } else { //if(!dbgCount) alert('rawurlencode UNDEF '+inStr+'['+c+']:'+inStr.charAt(c)+'='+inStr.charAt(c)); outStr += inStr.charAt(c); dbgCount++; } } //alert(str+'\n'+outStr); //alert('rawurlencode('+str+') = '+outStr); return outStr; } function cleanUrlGets(inGetStr, cleanIndex){ //alert('cleanGets('+inGetStr+', '+cleanIndex+')'); //var getArray = Object(); // Find the part up the '?' var qPos = inGetStr.toString().indexOf('?'); if (qPos) { var qStr = inGetStr.toString().substr(qPos + 1); var dStr = inGetStr.toString().substr(0, qPos + 1); //alert('q/d::'+qStr+'\n'+dStr); } else { var qStr = inGetStr; var dStr = ''; } //alert('cleanGets(qStr:: '+dStr+'//'+qStr+')'); var getArray = deserializeArray(qStr); if (typeof(cleanIndex) !== "undefined") getArray[cleanIndex] = ''; qStr = serializeArray(getArray); //alert('cleanGets('+inGetStr+', '+cleanIndex+':: '+dStr+qStr+')'); return dStr + qStr; } function deserializeArray(inStr){ //debugAppend('
deserializeArray::'+inStr); var outArray = Object(); if (typeof(inStr) == 'undefined') return outArray; var pairIndex, outIndex; var inPairArray = inStr.toString().split('&'); for (pairIndex in inPairArray) { var pairArray = inPairArray[pairIndex].toString().split('='); var ind = rawurldecode(pairArray[0]); var val = rawurldecode(pairArray[1]); outArray[ind] = val; } return outArray; } function serializeArray(inArray, level, levelMax){ //debugAppend('
serializeArray::'); var inIndex; var pairStr = ''; if(typeof(level)==='undefined' || level.length==0) level = 0; if(typeof(levelMax)==='undefined') levelMax = 1; if(level>levelMax) return inArray; if(typeof(inArray)!=='undefined' && typeof(inArray)!=='string' && (typeof(inArray)=='object' || inArray instanceof Array)) { for (inIndex in inArray) { if(typeof(inIndex)=='undefined') continue; if(typeof(inIndex)=='object') var rhs = inIndex; else var rhs = inArray[inIndex]; if (typeof(rhs)=='undefined' || rhs == null || rhs.length == 0) continue; if (pairStr.length) pairStr += '&'; //pairStr += rawurlencode(inIndex) + "=" + rawurlencode(inArray[inIndex]); var rhsExpanded = serializeArray(rhs, level+1, levelMax); pairStr += rawurlencode(inIndex) + "=" + rawurlencode(rhsExpanded); //debugAppend('
serializeArray::'+pairStr); } } else pairStr = inArray; return pairStr; } function isEmpty(object) { if( object instanceof Array) { if(object.length>0) { return false; } } else { for(var i in object) { return false; } } return true; } function dump(oIn, maxlevel, level){ var inIndex; var ret = ''; if (typeof(maxlevel) == 'undefined') maxlevel = 4; if (typeof(level) == 'undefined') level = 0; if (level > maxlevel) return '[MAX LEVEL(' + maxlevel + ')]'; var indent = '
'; for (i = 0; i <= level; i++) indent += '  '; switch (typeof(oIn)) { case ('object'): if (oIn instanceof Array) { for (index in oIn) { ret += indent; ret += index + "(Array)=(" + typeof(oIn[index]) + ")" + dump(oIn[index], maxlevel, level + 1) + ', '; } } else { for (index in oIn) { //ret += indent; //if(typeof(index.tagName)=='undefined') continue; //if(typeof(index.id)=='undefined') continue; //ret += index + "("+index.id+")=" + index.value + ', '; switch (index.toLowerCase()) { case ('id'): case ('class'): ret += index + "=" + oIn[index] + ', '; break; default: //ret += index + "("+index.tagName+")" + ', '; } } } break; default: ret += oIn + ", "; } if (level == 0) return '
' + ret + '
'; return ret; }