📄 longwell_other.js
字号:
// Variable Declaration
// Global Vars
var shouldTryLucky=true;
var luckyTimeout=5;
var datapool= new Array;
var datapoolIndex=0;
var updateComplete=true;
var dataStart=true;
var newVendorEnd=false;
var autoDataUpdate=true;
var currentVendorID=0;
var vendorDataCount = new Array();
var userColIndex;
var colIndexRetailPrice;
var searchComplete=false;
var cacheCount=0;
var dataCanBeFiltered= new Array();
var hasLowerPrice=false;
var lastRowCount=0;
var runonce=false;
var userStop=false;
var vendorList= new Array();
var waitCacheUpdateComplete=false;
var dataSectionEnd=false;
var newDataCount=0;
var cacheSectionDownloadComplete=true;
var cacheSectionUpdateComplete=true;
var cacheDownloadComplete=false;
var cacheUpdateComplete=true;
var cache_count=0;
var newCache=false;
var currentCacheRow=0;
var cachepool=new Array;
var CurrentTable;
var colIndexconvertedPrice;
var CurrencyChange=false;
var colIndexCurrencyCode;
var fieldList=new Array();
var TABLE_CONTENT_S = new Array();
var TABLE_CONTENT_TMP= new Array();
var intProgress=0
var convertCache = true;
var firstUse=true;
var filtered_content = [];
var filter_registray = [];
var isTableUpdating = false; //TTable是否正在更新动作中。
//detail window 相关
function updatePopWin(stuff) {
updatePopwinContentHTML(stuff);
}
function updatePopwinContentHTML(msg) {
popWin.UpdateContentHTML(msg);
}
function updatePopwinTitleBarText(msg) {
document.getElementById("popwinTitle").innerHTML=msg;
}
function convertCacheLineToMap(key) {
var j;
var cachelineIndex=map.get(key);
if (cachelineIndex==null) return false;
var tempmap=cachepool[cachelineIndex];
var primKeyValue=tempmap.get("primKey")
for (j=0;j<fieldList.length;j++) {
switch (fieldList[j]) {
case "http://www.travelco.com/hotelName":
tempmap.put(fieldList[j],primKeyValue);
break;
default:
tempmap.put(fieldList[j],TABLE_CONTENT_S[cachelineIndex][j]);
}
}
return tempmap;
}
function submitForDetail(key) {
filterChangedByUser=true;
var detailmap = map.get(key)
if (typeof(detailmap)=="number") detailmap=convertCacheLineToMap(key);
addField(document.forms["detailForm"], 'hidden', 'uri', key);
for(i = 0; i < fieldList.length; i++) {
addField(document.forms["detailForm"], 'hidden', fieldList[i], detailmap.get(fieldList[i]));
}
waitmsg=_ON_LOADING;
width=350;
height=360;
if (typeof(popWin)=="undefined") popWin=new FerantDHTMLWindow(popWinParams);
popWin._724 = Math.min(width, document.body.clientWidth);
popWin._737 = Math.min(height, document.body.clientHeight);
popWin.OpenWindow();
popWin._750(width, height, true);
updatePopwinContentHTML(waitmsg);
updatePopwinTitleBarText(_DETAIL_INFO);
document.forms["detailForm"].submit();
reverse(document.forms["detailForm"]);
}
function submitForComparsion() {
var hasSelected=false;
var components = document.getElementsByName('componentID');
for(i = 0; i < components.length; i++) {
if(components[i].checked) {
hasSelected=true;
var comparemap = map.get(components[i].value)
if (typeof(comparemap)=="number") comparemap=convertCacheLineToMap(components[i].value);
for(j = 0; j < fieldList.length; j++) {
addField(document.forms["compareForm"], 'hidden', i + '---' + fieldList[j], comparemap.get(fieldList[j]));
}
}
}
if (!hasSelected) {
alert(_AT_LEAEST_ONE);
return false;
}
waitmsg=_ON_LOADING;
width=700;
height=360;
if (typeof(popWin)=="undefined") popWin=new FerantDHTMLWindow(popWinParams);
popWin._724 = Math.min(width, document.body.clientWidth);
popWin._737 = Math.min(height, document.body.clientHeight);
popWin.OpenWindow();
popWin._750(width, height, true);
updatePopwinContentHTML(waitmsg);
updatePopwinTitleBarText(_COMPARE);
document.forms["compareForm"].submit();
reverse(document.forms["compareForm"]);
}
function addField (form, fieldType, fieldName, fieldValue) {
if (document.getElementById) {
var input = document.createElement('INPUT');
if (document.all) { // what follows should work with NN6 but doesn't in M14
input.type = fieldType;
input.name = fieldName;
input.value = fieldValue;
} else if (document.getElementById) { // so here is the NN6 workaround
input.setAttribute('type', fieldType);
input.setAttribute('name', fieldName);
input.setAttribute('value', fieldValue);
}
form.appendChild(input);
}
}
function reverse(n) { // Reverse the order of the children of Node n
var kids = n.childNodes; // Get the list of children
var numkids = kids.length; // Figure out how many children there are
for(var i = numkids-1; i >= 0; i--) { // Loop backward through the children
if(kids[i].name != "searchType" && kids[i].name != "lang") {
var c = n.removeChild(kids[i]); // Remove a child
}
}
}
//TTable
function addContent(originalContent, newContent) {
var olength = originalContent.length;
for (i = 0; i < newContent.length; i++) originalContent[olength + i] = newContent[i];
}
function getNoByFilterName(filterName) {
for(i = 0; i < filter_registray.length; i++) {
if(filter_registray[i] == filterName) return i;
}
no = filter_registray.length;
filter_registray[no] = filterName;
return no;
}
function init_filtered_content(content, filterName) {
var i;
var iMax=content.length;
var filterNo = getNoByFilterName(filterName);
for(i = 0; i < iMax; i++) {
if(typeof(filtered_content[i])=="undefined") {
filtered_content[i] = new Array();
}
filtered_content[i][filterNo] = 0;
}
firstUse=false;
return filterNo;
}
function getMaxColValue(content, columnIndex) {
var i;
if(content.length < 1) return;
if(TABLE_CAPT[columnIndex].type == 'NUM') {
var maxVal = parseFloat(content[0][columnIndex]);
for(i = 0; i < content.length; i++) {
val = parseFloat(content[i][columnIndex]);
if(val > maxVal) maxVal = val;}
return maxVal;
}else{
var maxVal = "_maxVal_";
for(i = 0; i < content.length; i++) {
if (content[i][columnIndex]=="--:--" && maxVal=="_maxVal_") {
continue;
} else if (maxVal=="_maxVal_") {
maxVal=content[i][columnIndex];
}
if(content[i][columnIndex]=="--:--") continue;
if(content[i][columnIndex] > maxVal) maxVal = content[i][columnIndex];
}
if (maxVal=="_maxVal_") return false;
return maxVal;
}
}
function getMinColValue(content, columnIndex) {
var i;
if(content.length < 1) return;
if(TABLE_CAPT[columnIndex].type == 'NUM') {
var minVal = parseFloat(content[0][columnIndex]);
for(i = 0; i < content.length; i++) {
val = parseFloat(content[i][columnIndex]);
if(val < minVal) minVal = val;}
return minVal;
}else{
var minVal = "_minVal_";
content[0][columnIndex];
for(i = 0; i < content.length; i++)
try{
if (content[i][columnIndex]=="--:--" && minVal=="_minVal_") {
continue;
} else if (minVal=="_minVal_") {
minVal=content[i][columnIndex];
}
if(content[i][columnIndex]=="--:--") continue;
if(content[i][columnIndex] < minVal) minVal = content[i][columnIndex];
}
catch (err) {
}
if (minVal=="_minVal_") return false;
return minVal;
}
}
function getUniqueColValues(content, columnIndex) {
var i,j,z;
if(content.length < 1) return;
var uniqueNames = [];
j = 0;
for(i = 0; i < content.length; i++) {
var duplicated = false;
for(z = 0; z < uniqueNames.length; z++) {
if(uniqueNames[z] ==content[i][columnIndex]) {
duplicated = true;
}
}
if(!duplicated) {
uniqueNames[j] = content[i][columnIndex];
j++;
}
}
return uniqueNames;
}
function getFilterCreteriaByElementId(elementId) {
var elements = document.getElementsByName(elementId);
var creteria = [];
j = 0;
for(i = 0; i < elements.length; i++) {
if(!elements[i].checked) {
creteria[j] = elements[i].value;
j++;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -