
var THIRD_KIND_CENTRAL=15;var THIRD_KIND_STORE=7;var THIRD_KIND_SITE=-1;var ITEM_ARTICLE='article';var ITEM_MODEL='model';var PRICE_SOLD=10;var PRICE_SOLD_B=-10;var PRICE_PROMO=11
var PRICE_PROMO_B=-11
var PRICE_PERMANENT=12
var PRICE_WEEE=5
var DATE_FORMAT_DD_MM_YYYY='dd/MM/yyyy';var DATE_FORMAT_MM_DD_YYYY='MM/dd/yyyy';var DATE_FORMAT_YYYY_MM_DD='yyyy/MM/dd';var DATE_FORMAT_DD_MM_YY='dd/MM/yy';var DATE_FORMAT_MM_DD_YY='MM/dd/yyyy';var DATE_FORMAT_YY_MM_DD='yy/MM/dd';var DATE_FORMAT_DD_MM_YYYY_HH_MI_SS='dd/MM/yyyy HH:mm:ss';var DATE_FORMAT_MM_DD_YYYY_HH_MI_SS='MM/dd/yyyy HH:mm:ss';var DATE_FORMAT_YYYY_MM_DD_HH_MI_SS='yyyy/MM/dd';var DATE_FORMAT_DD_MM_YY_HH_MI_SS='dd/MM/yy HH:mm:ss';var DATE_FORMAT_MM_DD_YY_HH_MI_SS='MM/dd/yy HH:mm:ss';var DATE_FORMAT_YY_MM_DD_HH_MI_SS='yy/MM/dd HH:mm:ss';var DATE_BEGIN='begin';var DATE_END='end';var DATE_LAST_UPDATE='last-update';var DATE_SERVER='server-date';var AVAILABLE=1;var UNAVAILABLE=2;var PARTIALLY_AVAILABLE=3;var IN_RANGE=1;var NOT_IN_RANGE=2;var PARTIALLY_IN_RANGE=3;var CENTRAL_SOURCE='central';var STORE_SOURCE='store';var CURRENCY_ARRAY=new Array();var ITEM_ARRAY=new Array();var VARIATIONS_ARRAY=new Array();var THIRD_PARTY_ARRAY=new Array();var DISPLAY_START_DATE="DISPLAY_START_DATE";var DISPLAY_END_DATE="DISPLAY_END_DATE";var DISPLAY_STRIKE_AMI="DISPLAY_STRIKE_AMI";var DISPLAY_STRIKE_PASSION="DISPLAY_STRIKE_PASSION";var DISPLAY_DEMARK_PRICE="DISPLAY_DEMARK_PRICE";var DISPLAY_DEMARK_PURCENT="DISPLAY_DEMARK_PURCENT";var DISPLAY_DEMARK_LT_PERMANENT="DISPLAY_DEMARK_LT_PERMANENT";
function ThirdParty(_kind, _number, _subNumber){this.kind=_kind;this.number=_number;this.subNumber=_subNumber;this.parentKind=null;this.parentNumber=null;this.parentSubNumber=null;this.bookable=false;this.online=false;this.oSoldBegin=null;this.oSoldEnd=null;this.toString=_toStringThirdParty;this.isOnline=_isThirdOnline;this.isBookable=_isThirdBookable;}
function _toStringThirdParty(){with(this){return 'Third Party('+kind+' - '+number+' - '
+subNumber+'): '+bookable+' - '+online;}}
function _isThirdOnline(){with(this){if(online==null){return false;}return online;}}
function _isThirdBookable(){with(this){if(bookable==null){return false;}return bookable;}}
function DateElement(_kind, _day, _month, _year, _hour, _minute, _second){this.kind=_kind;this.day=_day;this.month=_month;this.year=_year;this.hour=_hour;this.minute=_minute;this.second=_second;this.toString=_toStringDate;this.equals=_equalsDate;this.after=_afterDate;this.before=_beforeDate;this.getLiteralDate=_getDateLiteralDate;if(this.hour==null){this.hour='00';}if(this.minute==null){this.minute='00';}if(this.second==null){this.second='00';}}
function _toStringDate(){with(this){return 'Date ['+kind+']: '+day+' / '+month+' / '+year
+' '+hour+':'+minute+':'+second;}}
function _equalsDate(_oDate){if(_oDate==null){return false;}with(this){try{return(day==_oDate.day
&& month==_oDate.month
&& year==_oDate.year
&& hour==_oDate.hour
&& minute==_oDate.minute
&& second==_oDate.second);}catch(e){return false;}}}
function _getDateLiteralDate(_sFormat){if(_sFormat==null){return null;}with(this){if(_sFormat==DATE_FORMAT_DD_MM_YYYY){return day+'/'+month+'/'+year;}else if(_sFormat==DATE_FORMAT_MM_DD_YYYY){return month+'/'+day+'/'+year;}else if(_sFormat==DATE_FORMAT_YYYY_MM_DD){return year+'/'+month+'/'+day;}else if(_sFormat==DATE_FORMAT_DD_MM_YY){return day+'/'+month+'/'+year.substring(2,4);}else if(_sFormat==DATE_FORMAT_MM_DD_YY){return month+'/'+day+'/'+year.substring(2,4);}else if(_sFormat==DATE_FORMAT_YY_MM_DD){return year.substring(2,4)+'/'+month+'/'+day;}else if(_sFormat==DATE_FORMAT_DD_MM_YYYY_HH_MI_SS){return day+'/'+month+'/'+year+' '+hour+':'+minute+':'+second;}else if(_sFormat==DATE_FORMAT_MM_DD_YYYY_HH_MI_SS){return month+'/'+day+'/'+year+' '+hour+':'+minute+':'+second;}else if(_sFormat==DATE_FORMAT_YYYY_MM_DD_HH_MI_SS){return year+'/'+month+'/'+day+' '+hour+':'+minute+':'+second;}else if(_sFormat==DATE_FORMAT_DD_MM_YY_HH_MI_SS){return day+'/'+month+'/'+year.substring(2,4)+' '+hour+':'+minute+':'+second;}else if(_sFormat==DATE_FORMAT_MM_DD_YY_HH_MI_SS){return month+'/'+day+'/'+year.substring(2,4)+' '+hour+':'+minute+':'+second;}else if(_sFormat==DATE_FORMAT_YY_MM_DD_HH_MI_SS){return year.substring(2,4)+'/'+month+'/'+day+' '+hour+':'+minute+':'+second;}else{var sDate=_sFormat;sDate=sDate.replace("dd", day);sDate=sDate.replace("MM", month);sDate=sDate.replace("yyyy", year);sDate=sDate.replace("yy", year.substring(2,4));sDate=sDate.replace("HH", hour);sDate=sDate.replace("mm", minute);sDate=sDate.replace("ss", second);return sDate;}}}
function _afterDate(_oDate){var iLocalTimestamp=null;var iRemoteTimestamp=null;var sLocalTimestamp=null;var sRemoteTimestamp=null;if(_oDate==null){return false;}if(_oDate.year==null){return false;}if(_oDate.month==null){return false;}if(_oDate.day==null){return false;}with(this){try{sLocalTimestamp=''+year+month+day+hour+minute+second+'';sRemoteTimestamp=''+_oDate.year+_oDate.month+_oDate.day+_oDate.hour+_oDate.minute+_oDate.second+'';iLocalTimestamp=sLocalTimestamp * 1;iRemoteTimestamp=sRemoteTimestamp * 1;return(iLocalTimestamp > iRemoteTimestamp);}catch(e){return false;}}}
function _beforeDate(_oDate){var iLocalTimestamp=null;var iRemoteTimestamp=null;var sLocalTimestamp=null;var sRemoteTimestamp=null;if(_oDate==null){return false;}if(_oDate.year==null){return false;}if(_oDate.month==null){return false;}if(_oDate.day==null){return false;}with(this){try{sLocalTimestamp=''+year+month+day+hour+minute+second+'';sRemoteTimestamp=''+_oDate.year+_oDate.month+_oDate.day+_oDate.hour+_oDate.minute+_oDate.second+'';iLocalTimestamp=sLocalTimestamp * 1;iRemoteTimestamp=sRemoteTimestamp * 1;return(iLocalTimestamp < iRemoteTimestamp);}catch(e){return false;}}}
function Value(_integer, _decimal){this.integer=_integer;this.decimal=_decimal;this.equals=_equalsValue;this.toString=_toStringValue;}
function _toStringValue(){with(this){return 'Value : '+integer+'.'+decimal;}}
function _equalsValue(_oValue){var iLocalInteger=null;var iRemoteInteger=null;var iLocalDecimal=null;var iRemoteDecimal=null;if(_oValue==null){return false;}with(this){try{if(integer==null){if(_oValue.integer != null){return false;}}else{if(_oValue.integer==null){return false;}}if(decimal==null){if(_oValue.decimal != null){return false;}}else{if(_oValue.decimal==null){return false;}}
iLocalInteger=(integer * 1);iRemoteInteger=(_oValue.integer * 1);iLocalDecimal=(decimal * 1);iRemoteDecimal=(_oValue.decimal * 1);return(iLocalInteger==iRemoteInteger && iLocalDecimal==iRemoteDecimal);}catch(e){return false;}}}
function Currency(_id, _symbol, _decimalNumber, _decimalDelimiter, _thousandDelimiter, _behind){this.id=_id;this.symbol=_symbol;this.decimalNumber=_decimalNumber;this.decimalDelimiter=_decimalDelimiter;this.thousandDelimiter=_thousandDelimiter;this.behind=_behind;this.isBehind=_isCurrencyBehind;this.isFront=_isCurrencyFront;this.getId=_getCurrencyId;this.getSymbol=_getCurrencySymbol;this.getDecimalNumber=_getCurrencyDecimalNumber;this.getDecimalDelimiter=_getCurrencyDecimalDelimiter;this.getThousandDelimiter=_getCurrencyThousandDelimiter;this.toString=_toStringCurrency;this.equals=_equalsCurrency;this.formatInteger=_formatCurrencyInteger;this.formatDecimal=_formatCurrencyDecimal;this.formatValue=_formatCurrencyValue;}
function _toStringCurrency(){with(this){return 'Currency ['+id+']: '+formatValue(new Value('7888', '99'));}}
function _equalsCurrency(_oCurrency){if(_oCurrency==null){return false;}with(this){try{return(id==_oCurrency.id);}catch(e){return false;}}}
function _getCurrencyId(){with(this){if(id==null){return '';}return id;}}
function _getCurrencySymbol(){with(this){if(symbol==null){return '';}return symbol;}}
function _getCurrencyDecimalNumber(){with(this){if(decimalNumber==null){return 0;}return decimalNumber;}}
function _getCurrencyDecimalDelimiter(){with(this){if(decimalDelimiter==null){return '';}return decimalDelimiter;}}
function _getCurrencyThousandDelimiter(){with(this){if(thousandDelimiter==null){return '';}return thousandDelimiter;}}
function _isCurrencyBehind(){with(this){if(behind==null){return true;}return behind;}}
function _isCurrencyFront(){with(this){return !isBehind();}}
function _formatCurrencyInteger(_oValue){var i=0;var sFormat='';var sInteger=null;var sFinalInteger='';var sChar=null;if(_oValue==null){return null;}if(_oValue.integer==null){return null;}
sInteger=new String(_oValue.integer);with(this){for(i=0;i < sInteger.length;i++){sChar=sInteger.charAt(sInteger.length -(i+1));if(i % 3==0 && i != 0){sFinalInteger=sChar+getThousandDelimiter()+sFinalInteger;}else{sFinalInteger=sChar+sFinalInteger;}}}return sFinalInteger;}
function _formatCurrencyDecimal(_oValue){var i=0;var sDecimal=null;if(_oValue==null){return null;}if(_oValue.decimal==null){return null;}
sDecimal=new String(_oValue.decimal);with(this){if(sDecimal.length > decimalNumber){return sDecimal.substring(0, decimalNumber);}else if(sDecimal.length < decimalNumber){while(sDecimal.length < decimalNumber){sDecimal=sDecimal+'0';}return sDecimal;}else{return sDecimal;}}}
function _formatCurrencyValue(_oValue){var i=0;var sValue='';var sInteger=null;var sDecimal=null;if(_oValue==null){return null;}with(this){sInteger=formatInteger(_oValue);if(sInteger==null){return null;}
sDecimal=formatDecimal(_oValue);if(sDecimal==null){return null;}if(isFront()){sValue=getSymbol()+' ';}
sValue=sValue+sInteger+getDecimalDelimiter()+sDecimal;if(isBehind()){sValue=sValue+' '+getSymbol();}return sValue;}}
function Price(_kind, _begin, _end, _value, _currency, _homoDateBegin, _homoDateEnd, _homoPrice, _homoKind, _markdown){this.kind=_kind;this.begin=_begin;this.end=_end;this.value=_value;this.currency=_currency;this.homoDateBegin=_homoDateBegin;this.homoDateEnd=_homoDateEnd;this.homoPrice=_homoPrice;this.homoKind=_homoKind;this.markdown=_markdown;this.isDateHomogeneous=_isPriceDateHomogeneous;this.isBeginDateHomogeneous=_isPriceBeginDateHomogeneous;this.isEndDateHomogeneous=_isPriceEndDateHomogeneous;this.isPriceHomogeneous=_isPricePriceHomogeneous;this.isKindHomogeneous=_isPriceKindHomogeneous;this.isPermanent=_isPricePermanent;this.isPromo=_isPricePromo;this.isSold=_isPriceSold;this.isWEEE=_isPriceWEEE;this.getPriceCurrency=_getPricePriceCurrency;this.toString=_toStringPrice;}
function _getPricePriceCurrency(){with(this){if(currency==null){return null;}return getCurrency(currency);}}
function _toStringPrice(){var sBegin=null;var sEnd=null;var sValue=null;var oCurrency=null;with(this){oCurrency=getPriceCurrency();if(oCurrency != null){sValue=oCurrency.formatValue(value);}else if(sValue==null){if(currency != null){sValue=currency;}else{sValue='';}}else{if(currency != null){sValue=value.integer+'.'+value.decimal+' '+currency;}else{sValue=value.integer+'.'+value.decimal;}}if(begin==null){sBegin='';}else{sBegin=begin.getLiteralDate();}if(end==null){sEnd='';}else{sEnd=end.getLiteralDate();}return 'Price ['+kind+'] : '+sValue+' - '+sBegin+' - '+sEnd+' - '+isBeginDateHomogeneous()+' - '+isEndDateHomogeneous()+' - '+isPriceHomogeneous();}}
function _isPriceDateHomogeneous(){with(this){if(homoDateBegin==null || homoDateEnd==null){return false;}return homoDateBegin && homoDateEnd;}}
function _isPriceBeginDateHomogeneous(){with(this){if(homoDateBegin==null){return false;}return homoDateBegin;}}
function _isPriceEndDateHomogeneous(){with(this){if(homoDateEnd==null){return false;}return homoDateEnd;}}
function _isPriceKindHomogeneous(){with(this){if(homoKind==null){return false;}return homoKind;}}
function _isPricePriceHomogeneous(){with(this){if(homoPrice==null){return false;}return homoPrice;}}
function _isPricePermanent(){with(this){if(kind==null){return false;}return(kind==PRICE_PERMANENT);}}
function _isPriceSold(){with(this){if(kind==null){return false;}return(kind==PRICE_SOLD || kind==PRICE_SOLD_B);}}
function _isPricePromo(){with(this){if(kind==null){return false;}return(kind==PRICE_PROMO || kind==PRICE_PROMO_B);}}
function _isPriceWEEE(){with(this){if(kind==null){return false;}return(kind==PRICE_WEEE);}}
function Item(_id, _kind){this.oXmlItem=null;this.bInitLastUpdate=false;this.bInitMain=false;this.bInitStrike=false;this.bInitWeee=false;this.bInitChildren=false;this.bInitRules=false;this.id=_id;this.kind=_kind;this.lastUpdate=null;this.step=null;this.order=null;this.state=null;this.avaibility=null;this.range=null;this.stock=null;this.source=null;this.main=null;this.strike=null;this.weee=null;this.getLastUpdate=_getItemLastUpdate;this.getMainPrice=_getItemMainPrice;this.getStrikePrice=_getItemStrikePrice;this.getWeeePrice=_getItemWeeePrice;this.isBDFR1=_isBDFR1;this.isBDFR2=_isBDFR2;this.isAvailable=_isItemAvailable;this.isPartiallyAvailable=_isItemPartiallyAvailable;this.isUnavailable=_isItemUnavailable;this.isInRange=_isItemInRange;this.isPartiallyInRange=_isItemPartiallyInRange;this.isNotInRange=_isItemNotInRange;this.isEnable=_isEnableItem;this.isStepHomogeneous=_isItemStepHomogeneous;this.isCentral=_isCentralItem;this.isStore=_isStoreItem;this.toString=_toStringItem;this.equals=_equalsItem;this.lChildren=new Array();this.loadChildren=_loadItemChildren;this.addChild=_addItemChild;this.getChildren=_getItemChildren;this.getChildOrder=_getItemChildOrder;this.isContainsChild=_isItemContainsChild;this.lRules=new Array();this.loadRules=_loadItemRules;this.addRule=_addItemRule;this.isRuleEnable=_isItemRuleEnable;this.isGotRule=_isItemGotRule;}
function _isCentralItem(){with(this){if(source==null){return false;}return(source==CENTRAL_SOURCE);}}
function _isStoreItem(){with(this){if(source==null){return false;}return(source==STORE_SOURCE);}}
function _isItemInRange(){with(this){if(range==null){return false;}return(range==IN_RANGE);}}
function _isItemPartiallyInRange(){with(this){if(range==null){return false;}return(range==PARTIALLY_IN_RANGE);}}
function _isItemNotInRange(){with(this){return(!isPartiallyInRange()&& !isInRange());}}
function _isItemAvailable(){with(this){if(avaibility==null){return false;}return(avaibility==AVAILABLE);}}
function _isItemPartiallyAvailable(){with(this){if(avaibility==null){return false;}return(avaibility==PARTIALLY_AVAILABLE);}}
function _isItemUnavailable(){with(this){return(!isPartiallyAvailable()&& !isAvailable());}}
function _getItemStrikePrice(){var oXmlPriceStrike=null;with(this){if(bInitStrike){return strike;}
oXmlPriceStrike=getChildWithAttribute(oXmlItem, XML_PRICE, XML_KIND, XML_PRICE_STRIKE);if(oXmlPriceStrike != null){strike=getDomPrice(oXmlPriceStrike);}
bInitStrike=true;}if(this.bInitStrike){addItem(this);}return this.strike;}
function _getItemWeeePrice(){var oXmlPriceWeee=null;with(this){if(bInitWeee){return weee;}
oXmlPriceWeee=getChildWithAttribute(oXmlItem, XML_PRICE, XML_KIND, XML_PRICE_WEEE);if(oXmlPriceWeee != null){weee=getDomPrice(oXmlPriceWeee);}
bInitWeee=true;}if(this.bInitWeee){addItem(this);}return this.weee;}
function _getItemMainPrice(){var oXmlPriceMain=null;with(this){if(bInitMain){return main;}
oXmlPriceMain=getChildWithAttribute(oXmlItem, XML_PRICE, XML_KIND, XML_PRICE_MAIN);if(oXmlPriceMain != null){main=getDomPrice(oXmlPriceMain);}
bInitMain=true;}if(this.bInitMain){addItem(this);}return this.main;}
function _isBDFR1(){with(this){if(getMainPrice()==null){return false;}if(!getMainPrice().isPromo()&& !getMainPrice().isSold()){return false;}if(isBDFR2()){return false;}if(getStrikePrice()!= null){return false;}return true;}}
function _isBDFR2(){with(this){if(getMainPrice()==null){return false;}if(getMainPrice().kind==null){return false;}if(getMainPrice().kind==PRICE_SOLD_B || getMainPrice().kind==PRICE_PROMO_B){return true;}return false;}}
function _getItemLastUpdate(){var oXmlLastUpdate=null;with(this){if(bInitLastUpdate){return lastUpdate;}
oXmlLastUpdate=getChildWithAttribute(oXmlItem, XML_DATE, XML_KIND, DATE_LAST_UPDATE);if(oXmlLastUpdate != null){lastUpdate=getDomDate(oXmlLastUpdate);}
bInitLastUpdate=true;}if(this.bInitLastUpdate){addItem(this);}return this.lastUpdate;}
function getItemRuleIndexKey(_sRuleName){if(_sRuleName==null){return null;}return '#'+_sRuleName+'#';}
function _addItemRule(_sRuleName, _bRuleStatus){var sIndexKey=null;sIndexKey=getItemRuleIndexKey(_sRuleName);if(sIndexKey==null){return false;}with(this){if(lRules[sIndexKey]==null){lRules.push(sIndexKey);}
lRules[sIndexKey]=_bRuleStatus;}return true;}
function _loadItemRules(){var bUpdated=false;with(this){if(!bInitRules){var k=0;var oRulesNode=oXmlItem.getElementsByTagName(XML_RULES);var bRuleEnable=false;if(oRulesNode.length > 0){var oRules=oRulesNode[0].getElementsByTagName(XML_RULE);for(k=0;k< oRules.length;k++){var oRule=oRules[k];var sRuleName=getAttributeValue(oRule, XML_NAME);var bRuleValue=getNodeValue(oRule);if(sRuleName != null && bRuleValue != null){bRuleEnable=(bRuleValue=='true');}
addRule(sRuleName, bRuleEnable);}}
bInitRules=true;bUpdated=true;}}if(bUpdated){addItem(this);}}
function _isItemRuleEnable(_sRuleName, _bDefaultValue){var sIndexKey=null;sIndexKey=getItemRuleIndexKey(_sRuleName);if(sIndexKey==null){return _bDefaultValue;}with(this){loadRules();if(lRules[sIndexKey]==null){return _bDefaultValue;}return lRules[sIndexKey];}}
function _isItemGotRule(_sRuleName){var sIndexKey=null;sIndexKey=getItemRuleIndexKey(_sRuleName);if(sIndexKey==null){return false;}with(this){loadRules();return(lRules[sIndexKey] != null);}}
function _isItemStepHomogeneous(){with(this){if(step==null){return false;}return(step > 0 && step < 9);}}
function getItemChildIndexKey(_sChildId){if(_sChildId==null){return null;}return '#'+_sChildId+'#';}
function _addItemChild(_sChildId, _iChildOrder){var sIndexKey=null;sIndexKey=getItemChildIndexKey(_sChildId);if(sIndexKey==null){return false;}with(this){if(lChildren[sIndexKey]==null){lChildren.push(sIndexKey);}if(_iChildOrder==null){lChildren[sIndexKey]='-1';}else{lChildren[sIndexKey]=_iChildOrder;}}return true;}
function _loadItemChildren(){var bUpdated=false;with(this){if(!bInitChildren){var j=0;var oChildrenNode=oXmlItem.getElementsByTagName(XML_CHILDREN);if(oChildrenNode.length > 0){var oChildren=oChildrenNode[0].getElementsByTagName(XML_ITEM);for(j=0;j< oChildren.length;j++){var oChild=oChildren[j];var sChildId=getAttributeValue(oChild, XML_ID);var iChildOrder=getChildNodeValue(oChild, XML_ORDER);addChild(sChildId, iChildOrder);}}
bInitChildren=true;bUpdated=true;}}if(bUpdated){addItem(this);}}
function _getItemChildren(){var i=0;var lChildrenId=new Array();var sChildKey=null;var sChildId=null;with(this){loadChildren();for(i=0;i<lChildren.length;i++){sChildKey=lChildren[i];if(sChildKey != null && sChildKey.length > 2){sChildId=sChildKey.substring(1, sChildKey.length -1);lChildrenId.push(sChildKey);lChildrenId[sChildKey]=sChildId;}}}return lChildrenId;}
function _getItemChildOrder(_sChildId){var sIndexKey=null;sIndexKey=getItemChildIndexKey(_sChildId);if(sIndexKey==null){return null;}with(this){loadChildren();return(lChildren[sIndexKey]);}}
function _isItemContainsChild(_sChildId){var sIndexKey=null;sIndexKey=getItemChildIndexKey(_sChildId);if(sIndexKey==null){return false;}with(this){loadChildren();return(lChildren[sIndexKey] != null);}}
function _toStringItem(){with(this){return 'Item('+id+' - '+kind+'): '+state ;}}
function _equalsItem(_oItem){if(_oItem==null){return false;}with(this){try{return(id==_oItem.id && kind==_oItem.kind);}catch(e){return false;}}}
function _isEnableItem(){with(this){try{if(state==null){return false;}return(state);}catch(e){return false;}}}
function getCurrencyIndexKeyByKey(_id){if(_id==null){return null;}return '#'+_id+'#';}
function getCurrencyIndexKey(_oCurrency){if(_oCurrency==null){return null;}return getCurrencyIndexKeyByKey(_oCurrency.id);}
function addCurrency(_oCurrency){var sIndexKey=null;sIndexKey=getCurrencyIndexKey(_oCurrency);if(sIndexKey==null){return false;}if(CURRENCY_ARRAY[sIndexKey]==null){CURRENCY_ARRAY.push(sIndexKey);}
CURRENCY_ARRAY[sIndexKey]=_oCurrency;return true;}
function getCurrency(_id){var sIndexKey=null;sIndexKey=getCurrencyIndexKeyByKey(_id);if(sIndexKey==null){return null;}if(CURRENCY_ARRAY[sIndexKey]==null){return null;}return CURRENCY_ARRAY[sIndexKey];}
function getCurrencies(){return CURRENCY_ARRAY;}
function getItemIndexKeyByKey(_id, _kind){if(_id==null){return null;}if(_kind==null){return null;}return '#'+_id+'#'+_kind+'#';}
function getItemIndexKey(_oItem){if(_oItem==null){return null;}return getItemIndexKeyByKey(_oItem.id, _oItem.kind);}
function addItem(_oItem){var sIndexKey=null;sIndexKey=getItemIndexKey(_oItem);if(sIndexKey==null){return false;}if(ITEM_ARRAY[sIndexKey]==null){ITEM_ARRAY.push(sIndexKey);}
ITEM_ARRAY[sIndexKey]=_oItem;return true;}
function getItem(_id, _kind){var sIndexKey=null;sIndexKey=getItemIndexKeyByKey(_id, _kind);if(sIndexKey==null){return null;}if(ITEM_ARRAY[sIndexKey]==null){return null;}return ITEM_ARRAY[sIndexKey];}
function addThird(_oThird){var sIndexKey=null;sIndexKey=getThirdIndexKey(_oThird);if(sIndexKey==null){return false;}if(THIRD_PARTY_ARRAY[sIndexKey]==null){THIRD_PARTY_ARRAY.push(sIndexKey);}
THIRD_PARTY_ARRAY[sIndexKey]=_oThird;return true;}
function getThirdParty(_kind, _number, _subNumber){var sIndexKey=null;sIndexKey=getThirdIndexKeyByKey(_kind, _number, _subNumber);if(sIndexKey==null){return null;}if(THIRD_PARTY_ARRAY[sIndexKey]==null){return null;}return THIRD_PARTY_ARRAY[sIndexKey];}
function isThirdPartyOnline(_kind, _number, _subNumber){var sIndexKey=null;sIndexKey=getThirdIndexKeyByKey(_kind, _number, _subNumber);if(sIndexKey==null){return null;}if(THIRD_PARTY_ARRAY[sIndexKey]==null){return false;}return THIRD_PARTY_ARRAY[sIndexKey].isOnline();}
function isThirdPartyBookable(_kind, _number, _subNumber){var sIndexKey=null;sIndexKey=getThirdIndexKeyByKey(_kind, _number, _subNumber);if(sIndexKey==null){return null;}if(THIRD_PARTY_ARRAY[sIndexKey]==null){return false;}return THIRD_PARTY_ARRAY[sIndexKey].isBookable();}
function getParentThirdParty(_oThird){if(_oThird==null){return null;}return getThirdParty(_oThird.parentKind, _oThird.parentNumber, _oThird.parentSubNumber);}
function getParentThirdPartyByKey(_kind, _number, _subNumber){var _oChild=null;_oChild=getThirdParty(_kind, _number, _subNumber);if(_oChild==null){return null;}return getParentThirdParty(_oChild);}
function getChildrenThirdPartyByKey(_kind, _number, _subNumber, _iChildKind){var _oParent=null;_oParent=getThirdParty(_kind, _number, _subNumber);if(_oParent==null){return null;}return getChildrenThirdParty(_oParent, _iChildKind);}
function getChildrenThirdParty(_oThird, _iChildKind){var lChildren=new Array();var oChild=null;var sChildIndexKey=null;var i=0;if(_oThird==null){return new Array();}if(_oThird.kind==null){return new Array();}if(_oThird.number==null){return new Array();}if(_oThird.subNumber==null){return new Array();}for(i=0;i < THIRD_PARTY_ARRAY.length;i++){oChild=THIRD_PARTY_ARRAY[THIRD_PARTY_ARRAY[i]];sChildIndexKey=getThirdIndexKey(oChild);if(sChildIndexKey != null){if(oChild.parentKind==_oThird.kind
&& oChild.parentNumber==_oThird.number
&& oChild.parentSubNumber==_oThird.subNumber){if(_iChildKind==null || _iChildKind==oChild.kind){if(lChildren[sChildIndexKey]==null){lChildren.push(sChildIndexKey);}
lChildren[sChildIndexKey]=oChild;}}}}return lChildren;}
function getThirdIndexKey(_oThird){if(_oThird==null){return null;}return getThirdIndexKeyByKey(_oThird.kind, _oThird.number, _oThird.subNumber);}
function getThirdIndexKeyByKey(_kind, _number, _subNumber){if(_kind==null){return null;}if(_number==null){return null;}if(_subNumber==null){return null;}return '#'+_kind+'#'+_number+'#'+_subNumber+'#';}
function getVariationsIndexKey(_id, _language){if(_id==null){return null;}if(_language==null){return null;}return '#'+_id+'#'+_language+'#';}
function addVariation(_id, _language, _variation){var sIndexKey=null;var lVariations=null;if(_variation==null){return false;}
sIndexKey=getVariationsIndexKey(_id, _language);if(sIndexKey==null){return false;}if(VARIATIONS_ARRAY[sIndexKey]==null){VARIATIONS_ARRAY.push(sIndexKey);lVariations=new Array();}else{lVariations=VARIATIONS_ARRAY[sIndexKey];}
lVariations.push(_variation);VARIATIONS_ARRAY[sIndexKey]=lVariations;return true;}
function getVariations(_id, _language){var sIndexKey=null;sIndexKey=getVariationsIndexKey(_id, _language);if(sIndexKey==null){return null;}if(VARIATIONS_ARRAY[sIndexKey]==null){return null;}return VARIATIONS_ARRAY[sIndexKey];}
function gotVariation(_id, _language){var lVariations=getVariations(_id, _language);if(lVariations==null){return false;}return(lVariations.length > 0);}
function getBiggestVariation(_id, _language){var i=0;var sVariation=null;var lVariations=getVariations(_id, _language);if(lVariations==null){return null;}if(lVariations.length==0){return null;}for(i=0;i<lVariations.length;i++){if(sVariation==null){sVariation=lVariations[i];}else if(lVariations[i].length > sVariation.length){sVariation=lVariations[i];}}return sVariation;}
var XML_SERVICE_CONTENT='service-content';var XML_CURRENCY='currency';var XML_CURRENCY_ID='id';var XML_SYMBOL='symbol';var XML_THOUSAND_DELIMITER='thousand-delimiter';var XML_DECIMAL_DELIMITER='decimal-delimiter';var XML_DECIMAL_NUMBER='decimal-number';var XML_POSITION='position';var XML_DATE='date';var XML_DATE_DAY='day';var XML_DATE_MONTH='month';var XML_DATE_YEAR='year';var XML_DATE_HOUR='hour';var XML_DATE_MINUTE='minute';var XML_DATE_SECOND='second';var XML_VALUE='value';var XML_VALUE_INTEGER='integer';var XML_VALUE_DECIMAL='decimal';var XML_ID='id';var XML_KIND='kind';var XML_PRICE='price';var XML_PRICE_MAIN='main';var XML_PRICE_STRIKE='strike';var XML_PRICE_WEEE='weee';var XML_MARKDOWN='markdown';var XML_HOMOGENEOUS='homogeneous';var XML_HOMO_DATE_BEGIN='dateBegin';var XML_HOMO_DATE_END='dateEnd';var XML_HOMO_PRICE='price';var XML_HOMO_KIND='kind';var XML_ITEM='item';var XML_STEP='step';var XML_ORDER='order';var XML_STATE='state';var XML_AVAIBILITY='avaibility';var XML_RANGE='range';var XML_CHILDREN='children';var XML_LANGUAGE='language';var XML_VARIATION='variation';var XML_VARIATIONS='variations';var XML_SOURCE='source';var XML_RULES='rules';var XML_RULE='rule';var XML_NAME='name';var XML_STOCK='stock';var iCurrencyTime=0;var iDateTime=0;var iValueTime=0;var iPriceTime=0;var iItemTime=0;var iVariationsTime=0;var XML_THIRD_PARTY='third';var XML_THIRD_PARTY_KIND='kind';var XML_THIRD_PARTY_NUMBER='number';var XML_THIRD_PARTY_SUB_NUMBER='sub-number';var XML_THIRD_PARTY_ONLINE='online';var XML_THIRD_PARTY_BOOKABLE='bookable';
function getDomThirdParty(_oXmlThirdParty){var bOnline=false;var bBookable=false;var oThird=null;try{if(_oXmlThirdParty==null){return null;}
var _kind=getAttributeValue(_oXmlThirdParty, XML_THIRD_PARTY_KIND);var _number=getAttributeValue(_oXmlThirdParty, XML_THIRD_PARTY_NUMBER);var _subNumber=getAttributeValue(_oXmlThirdParty, XML_THIRD_PARTY_SUB_NUMBER);var _online=getChildNodeValue(_oXmlThirdParty, XML_THIRD_PARTY_ONLINE);var _bookable=getChildNodeValue(_oXmlThirdParty, XML_THIRD_PARTY_BOOKABLE);var _begin=null;var _end=null;if(_kind==null || _number==null || _subNumber==null){return null;}if(_bookable==null){bBookable=false;}else{bBookable=(_bookable=='true');}if(_online==null){bOnline=false;}else{bOnline=(_online=='true');}
var oXmlBegin=getChildWithAttribute(_oXmlThirdParty, XML_DATE, XML_KIND, DATE_BEGIN);if(oXmlBegin != null){_begin=getDomDate(oXmlBegin);}
var oXmlEnd=getChildWithAttribute(_oXmlThirdParty, XML_DATE, XML_KIND, DATE_END);if(oXmlEnd != null){_end=getDomDate(oXmlEnd);}
oThird=new ThirdParty(_kind, _number, _subNumber);oThird.bookable=bBookable;oThird.online=bOnline;oThird.oSoldBegin=_begin;oThird.oSoldEnd=_end;return oThird;}catch(e){return null;}}
function getDomCurrency(_oXmlCurrency){var bBehind=false;var oCurrency=null;var iStart=null;var iEnd=null;try{if(_oXmlCurrency==null){return null;}
iStart=new Date();var _id=getAttributeValue(_oXmlCurrency, XML_CURRENCY_ID);var _symbol=getChildNodeValue(_oXmlCurrency, XML_SYMBOL);var _thousandDelimiter=getChildNodeValue(_oXmlCurrency, XML_THOUSAND_DELIMITER);var _decimalDelimiter=getChildNodeValue(_oXmlCurrency, XML_DECIMAL_DELIMITER);var _decimalNumber=getChildNodeValue(_oXmlCurrency, XML_DECIMAL_NUMBER);var _position=getChildNodeValue(_oXmlCurrency, XML_POSITION);if(_id==null){return null;}if(_position==null){bBehind=true;}else{bBehind=!('front'==_position);}if(_decimalDelimiter != null){if(_decimalDelimiter=='space'){_decimalDelimiter=' ';}}if(_thousandDelimiter != null){if(_thousandDelimiter=='space'){_thousandDelimiter=' ';}}
oCurrency=new Currency(_id, _symbol, _decimalNumber, _decimalDelimiter, _thousandDelimiter, bBehind);iEnd=new Date();iCurrencyTime=iCurrencyTime+(iEnd - iStart);return oCurrency;}catch(e){return null;}}
function getDomDate(_oXmlDate){var oDate=null;var iStart=null;var iEnd=null;try{if(_oXmlDate==null){return null;}
iStart=new Date();var _kind=getAttributeValue(_oXmlDate, XML_KIND);var _day=getChildNodeValue(_oXmlDate, XML_DATE_DAY);var _month=getChildNodeValue(_oXmlDate, XML_DATE_MONTH);var _year=getChildNodeValue(_oXmlDate, XML_DATE_YEAR);var _hour=getChildNodeValue(_oXmlDate, XML_DATE_HOUR);var _minute=getChildNodeValue(_oXmlDate, XML_DATE_MINUTE);var _second=getChildNodeValue(_oXmlDate, XML_DATE_SECOND);oDate=new DateElement(_kind, _day, _month, _year, _hour, _minute, _second);iEnd=new Date();iDateTime=iDateTime+(iEnd - iStart);return oDate;}catch(e){return null;}}
function getDomValue(_oXmlValue){var oValue=null;var iStart=null;var iEnd=null;try{if(_oXmlValue==null){return null;}
iStart=new Date();var _integer=getChildNodeValue(_oXmlValue, XML_VALUE_INTEGER);var _decimal=getChildNodeValue(_oXmlValue, XML_VALUE_DECIMAL);oValue=new Value(_integer, _decimal);iEnd=new Date();iValueTime=iValueTime+(iEnd - iStart);return oValue;}catch(e){return null;}}
function getDomPrice(_oXmlPrice){var oPrice=null;var _begin=null;var _end=null;var _value=null;var bHomoDateBegin=false;var bHomoDateEnd=false;var bHomoPrice=false;var bHomoKind=false;var iStart=null;var iEnd=null;try{if(_oXmlPrice==null){return null;}
iStart=new Date();var _kind=getChildNodeValue(_oXmlPrice, XML_KIND);var oXmlBegin=getChildWithAttribute(_oXmlPrice, XML_DATE, XML_KIND, DATE_BEGIN);if(oXmlBegin != null){_begin=getDomDate(oXmlBegin);}
var oXmlEnd=getChildWithAttribute(_oXmlPrice, XML_DATE, XML_KIND, DATE_END);if(oXmlEnd != null){_end=getDomDate(oXmlEnd);}
var oXmlValue=getChild(_oXmlPrice, XML_VALUE);if(oXmlValue != null){_value=getDomValue(oXmlValue);}if(_value==null){return null;}
var _currencyId=getChildNodeValue(_oXmlPrice, XML_CURRENCY);var oXmlHomoDateBegin=getChildWithAttribute(_oXmlPrice, XML_HOMOGENEOUS, XML_KIND, XML_HOMO_DATE_BEGIN);if(oXmlHomoDateBegin != null){var _homoDateBegin=getNodeValue(oXmlHomoDateBegin);if(_homoDateBegin==null){bHomoDateBegin=false;}else{bHomoDateBegin=(_homoDateBegin=='true');}}
var oXmlHomoDateEnd=getChildWithAttribute(_oXmlPrice, XML_HOMOGENEOUS, XML_KIND, XML_HOMO_DATE_END);if(oXmlHomoDateEnd != null){var _homoDateEnd=getNodeValue(oXmlHomoDateEnd);if(_homoDateEnd==null){bHomoDateEnd=false;}else{bHomoDateEnd=(_homoDateEnd=='true');}}
var oXmlHomoPrice=getChildWithAttribute(_oXmlPrice, XML_HOMOGENEOUS, XML_KIND, XML_HOMO_PRICE);if(oXmlHomoPrice != null){var _homoPrice=getNodeValue(oXmlHomoPrice);if(_homoPrice==null){bHomoPrice=false;}else{bHomoPrice=(_homoPrice=='true');}}
var oXmlHomoKind=getChildWithAttribute(_oXmlPrice, XML_HOMOGENEOUS, XML_KIND, XML_HOMO_KIND);if(oXmlHomoKind != null){var _homoKind=getNodeValue(oXmlHomoKind);if(_homoKind==null){bHomoKind=false;}else{bHomoKind=(_homoKind=='true');}}
var _markdown=getChildNodeValue(_oXmlPrice, XML_MARKDOWN);oPrice=new Price(_kind, _begin, _end, _value, _currencyId, bHomoDateBegin, bHomoDateEnd, bHomoPrice, bHomoKind, _markdown);iEnd=new Date();iPriceTime=iPriceTime+(iEnd - iStart);return oPrice;}catch(e){return null;}}
function getDomItem(_oXmlItem){var oItem=null;var _lastUpdate=null;var _main=null;var _strike=null;var _weee=null;var bState=false;var iStart=null;var iEnd=null;try{if(_oXmlItem==null){return null;}
iStart=new Date();var _id=getAttributeValue(_oXmlItem, XML_ID);var _kind=getAttributeValue(_oXmlItem, XML_KIND);if(_id==null){return null;}
var _order=getChildNodeValue(_oXmlItem, XML_ORDER);var _step=getChildNodeValue(_oXmlItem, XML_STEP);var _state=getChildNodeValue(_oXmlItem, XML_STATE);var _avaibility=getChildNodeValue(_oXmlItem, XML_AVAIBILITY);var _range=getChildNodeValue(_oXmlItem, XML_RANGE);var _stock=getChildNodeValue(_oXmlItem, XML_STOCK);var _source=getChildNodeValue(_oXmlItem, XML_SOURCE);if(_state==null){bState=false;}else{bState=(_state=='true');}
oItem=new Item(_id, _kind);oItem.oXmlItem=_oXmlItem;oItem.step=_step;oItem.order=_order;oItem.state=bState;oItem.avaibility=_avaibility;oItem.range=_range;oItem.stock=_stock;oItem.source=_source;iEnd=new Date();iItemTime=iItemTime+(iEnd - iStart);return oItem;}catch(e){return null;}}
function getDomVariations(_oXmlVariations){var i=0;var j=0;var _language=null;var _itemId=null;var _variation=null;var iStart=null;var iEnd=null;try{if(_oXmlVariations==null){return;}
_language=getAttributeValue(_oXmlVariations, XML_LANGUAGE);if(_language==null){return;}
var oItems=_oXmlVariations.getElementsByTagName(XML_ITEM);for(i=0;i< oItems.length;i++){var oItem=oItems[i];var _itemId=getAttributeValue(oItem, XML_ID);var oVariations=oItem.getElementsByTagName(XML_VARIATION);for(j=0;j<oVariations.length;j++){var oVariation=oVariations[j];_variation=getNodeValue(oVariation);addVariation(_itemId, _language, _variation);}}}catch(e){return;}}
var ITEM_BASE_URL=null;var SERVICE_SERVER_DATE=null;var ITEM_MODELS=new Array();var HOT_DATA=true;
function _resetModelList(){ITEM_MODELS=new Array();}
function getModelsServiceIndexKey(_id){if(_id==null){return null;}return '#'+_id+'#';}
function addModelForService(_id){var sIndexKey=null;sIndexKey=getModelsServiceIndexKey(_id);if(sIndexKey==null){return false;}if(ITEM_MODELS.length > 20){return false;}if(ITEM_MODELS[sIndexKey]==null){ITEM_MODELS.push(sIndexKey);}
ITEM_MODELS[sIndexKey]=_id;return true;}
function loadServerDate(oGlobalXml){var oXmlServerDate=getChildWithAttribute(oGlobalXml, XML_DATE, XML_KIND, DATE_SERVER);if(oXmlServerDate != null){SERVICE_SERVER_DATE=getDomDate(oXmlServerDate);}}
function getServerDate(){return SERVICE_SERVER_DATE;}
function _initItemService(_baseUrl){ITEM_BASE_URL=_baseUrl;}
function getArticleUrl(_client, _siteNumber, _centralNumber, _storeNumber, _articleId, _language){if(ITEM_BASE_URL==null){return null;}if(_siteNumber==null){return null;}if(_centralNumber==null){return null;}if(_articleId==null){return null;}
var sUrl=ITEM_BASE_URL+"/service/getArticle.do?serviceClient="+_client
+"&iSiteThird="+_siteNumber
+"&iCentralThird="+_centralNumber
+"&sArticleId="+_articleId;if(_storeNumber != null){sUrl=sUrl+"&iStoreThird="+_storeNumber;}if(_language != null){sUrl=sUrl+"&sLanguage="+_language;}if(HOT_DATA==null){sUrl=sUrl+"&bHotData=true";}else if(HOT_DATA){sUrl=sUrl+"&bHotData=true";}else{sUrl=sUrl+"&bHotData=false";}return sUrl;}
function getModelUrl(_client, _siteNumber, _centralNumber, _storeNumber, _modelId, _language){if(ITEM_BASE_URL==null){return null;}if(_siteNumber==null){return null;}if(_centralNumber==null){return null;}if(_modelId==null){return null;}
var sUrl=ITEM_BASE_URL+"/service/getModel.do?serviceClient="+_client
+"&iSiteThird="+_siteNumber
+"&iCentralThird="+_centralNumber
+"&sModelId="+_modelId;if(_storeNumber != null){sUrl=sUrl+"&iStoreThird="+_storeNumber;}if(_language != null){sUrl=sUrl+"&sLanguage="+_language;}return sUrl;}
function getModelsUrl(_client, _siteNumber, _centralNumber, _storeNumber){var i=0;if(ITEM_BASE_URL==null){return null;}if(_siteNumber==null){return null;}if(_centralNumber==null){return null;}if(ITEM_MODELS.length==0){return null;}
var sUrl=ITEM_BASE_URL+"/service/getModels.do?serviceClient="+_client
+"&iSiteThird="+_siteNumber
+"&iCentralThird="+_centralNumber;if(_storeNumber != null){sUrl=sUrl+"&iStoreThird="+_storeNumber;}for(i=0;i < ITEM_MODELS.length && i < 20;i++){sUrl=sUrl+"&sModelId"+(i+1)+"="+ITEM_MODELS[ITEM_MODELS[i]];}return sUrl;}
function getFamilyUrl(_client, _siteNumber, _centralNumber, _storeNumber, _familyId, _bPriceData){if(ITEM_BASE_URL==null){return null;}if(_siteNumber==null){return null;}if(_centralNumber==null){return null;}if(_familyId==null){return null;}
var sUrl=ITEM_BASE_URL+"/service/getFamily.do?serviceClient="+_client
+"&iSiteThird="+_siteNumber
+"&iCentralThird="+_centralNumber
+"&iFamilyId="+_familyId;if(_storeNumber != null){sUrl=sUrl+"&iStoreThird="+_storeNumber;}if(_bPriceData != null){if(_bPriceData){sUrl=sUrl+"&bPriceData=true";}else{sUrl=sUrl+"&bPriceData=false";}}return sUrl;}
function getDepartmentUrl(_client, _siteNumber, _centralNumber, _storeNumber, _departmentId, _bPriceData){if(ITEM_BASE_URL==null){return null;}if(_siteNumber==null){return null;}if(_centralNumber==null){return null;}if(_departmentId==null){return null;}
var sUrl=ITEM_BASE_URL+"/service/getDepartment.do?serviceClient="+_client
+"&iSiteThird="+_siteNumber
+"&iCentralThird="+_centralNumber
+"&iDepartmentId="+_departmentId;if(_storeNumber != null){sUrl=sUrl+"&iStoreThird="+_storeNumber;}if(_bPriceData != null){if(_bPriceData){sUrl=sUrl+"&bPriceData=true";}else{sUrl=sUrl+"&bPriceData=false";}}return sUrl;}
function _loadDepartment(_client, _siteNumber, _centralNumber, _storeNumber, _departmentId, _bPriceData, _localFunc){var sUrl=null;var i=0;sUrl=getDepartmentUrl(_client, _siteNumber, _centralNumber, _storeNumber, _departmentId, _bPriceData);if(sUrl==null){return false;}
var func=function(xmlHttp, httpStatus){oGlobalXml=xmlHttp.responseXML;if(oGlobalXml!=null){loadServerDate(oGlobalXml);var oNodes=oGlobalXml.getElementsByTagName(XML_SERVICE_CONTENT);if(oNodes.length > 0){var oXmlContent=oNodes[0];for(i=0;i<oNodes[0].childNodes.length;i++){if(oNodes[0].childNodes[i].tagName==XML_CURRENCY){var oCurrency=getDomCurrency(oNodes[0].childNodes[i]);addCurrency(oCurrency);}else if(oNodes[0].childNodes[i].tagName==XML_ITEM){var oItem=getDomItem(oNodes[0].childNodes[i]);addItem(oItem);}else if(oNodes[0].childNodes[i].tagName==XML_VARIATIONS){getDomVariations(oNodes[0].childNodes[i]);}}}}if(_localFunc != null){try{_localFunc(httpStatus, _siteNumber, _centralNumber, _storeNumber, _departmentId, _bPriceData);}catch(e){return false;}}return true;};var oProcess=new IAjaxProcess(sUrl, func);oProcess.run();return true;}
function _loadFamily(_client, _siteNumber, _centralNumber, _storeNumber, _familyId, _bPriceData, _localFunc){var sUrl=null;var i=0;sUrl=getFamilyUrl(_client, _siteNumber, _centralNumber, _storeNumber, _familyId, _bPriceData);if(sUrl==null){return false;}
var func=function(xmlHttp, httpStatus){oGlobalXml=xmlHttp.responseXML;if(oGlobalXml!=null){loadServerDate(oGlobalXml);var oNodes=oGlobalXml.getElementsByTagName(XML_SERVICE_CONTENT);if(oNodes.length > 0){var oXmlContent=oNodes[0];var oCurrency=getDomCurrency(getChildWithAnAttribute(oXmlContent, XML_CURRENCY, XML_CURRENCY_ID));addCurrency(oCurrency);var oItemNodes=oNodes[0].getElementsByTagName(XML_ITEM);for(i=0;i < oItemNodes.length;i++){var oItem=getDomItem(oItemNodes[i]);addItem(oItem);}}}if(_localFunc != null){try{_localFunc(httpStatus, _siteNumber, _centralNumber, _storeNumber, _familyId, _bPriceData);}catch(e){return false;}}return true;};var oProcess=new IAjaxProcess(sUrl, func);oProcess.run();return true;}
function _loadModels(_client, _siteNumber, _centralNumber, _storeNumber, _localFunc){var sUrl=null;var i=0;sUrl=getModelsUrl(_client, _siteNumber, _centralNumber, _storeNumber);if(sUrl==null){return false;}
var func=function(xmlHttp, httpStatus){oGlobalXml=xmlHttp.responseXML;if(oGlobalXml!=null){var oNodes=oGlobalXml.getElementsByTagName(XML_SERVICE_CONTENT);loadServerDate(oGlobalXml);if(oNodes.length > 0){var oXmlContent=oNodes[0];var oCurrency=getDomCurrency(getChildWithAnAttribute(oXmlContent, XML_CURRENCY, XML_CURRENCY_ID));addCurrency(oCurrency);var oItemNodes=oXmlContent.getElementsByTagName(XML_ITEM);for(i=0;i < oItemNodes.length;i++){var oItem=getDomItem(oItemNodes[i]);addItem(oItem);}}}if(_localFunc != null){try{_localFunc(httpStatus, _siteNumber, _centralNumber, _storeNumber);}catch(e){return false;}}return true;};var oProcess=new IAjaxProcess(sUrl, func);oProcess.run();return true;}
function _loadModel(_client, _siteNumber, _centralNumber, _storeNumber, _modelId, _language, _localFunc){var sUrl=null;var i=0;sUrl=getModelUrl(_client, _siteNumber, _centralNumber, _storeNumber, _modelId, _language);if(sUrl==null){return false;}
var func=function(xmlHttp, httpStatus){oGlobalXml=xmlHttp.responseXML;if(oGlobalXml!=null){loadServerDate(oGlobalXml);var oNodes=oGlobalXml.getElementsByTagName(XML_SERVICE_CONTENT);if(oNodes.length > 0){var oXmlContent=oNodes[0];var oCurrency=getDomCurrency(getChildWithAnAttribute(oXmlContent, XML_CURRENCY, XML_CURRENCY_ID));addCurrency(oCurrency);var oItem=getDomItem(getChild(oXmlContent, XML_ITEM));addItem(oItem);getDomVariations(getChild(oXmlContent, XML_VARIATIONS));}}if(_localFunc != null){try{_localFunc(httpStatus, _siteNumber, _centralNumber, _storeNumber, _modelId, _language);}catch(e){return false;}}return true;};var oProcess=new IAjaxProcess(sUrl, func);oProcess.run();return true;}
function _loadArticle(_client, _siteNumber, _centralNumber, _storeNumber, _articleId, _language, _localFunc){var sUrl=null;var i=0;sUrl=getArticleUrl(_client, _siteNumber, _centralNumber, _storeNumber, _articleId, _language);if(sUrl==null){return false;}
var func=function(xmlHttp, httpStatus){oGlobalXml=xmlHttp.responseXML;if(oGlobalXml!=null){loadServerDate(oGlobalXml);var oNodes=oGlobalXml.getElementsByTagName(XML_SERVICE_CONTENT);if(oNodes.length > 0){var oXmlContent=oNodes[0];var oCurrency=getDomCurrency(getChildWithAnAttribute(oXmlContent, XML_CURRENCY, XML_CURRENCY_ID));addCurrency(oCurrency);var oItem=getDomItem(getChild(oXmlContent, XML_ITEM));addItem(oItem);getDomVariations(getChild(oXmlContent, XML_VARIATIONS));}}if(_localFunc != null){try{_localFunc(httpStatus, _siteNumber, _centralNumber, _storeNumber, _articleId, _language);}catch(e){return false;}}return true;};var oProcess=new IAjaxProcess(sUrl, func);oProcess.run();return true;}
var THIRD_BASE_URL=null;
function _initThirdService(_baseUrl){THIRD_BASE_URL=_baseUrl;}
function getThirdPartyUrl(_client, _kind, _number, _subNumber){if(THIRD_BASE_URL==null){return null;}if(_client==null){return null;}if(_kind==null){return null;}if(_number==null){return null;}if(_subNumber==null){return null;}return THIRD_BASE_URL+"/service/getThird.do?serviceClient="+_client
+"&thirdKind="+_kind
+"&thirdNumber="+_number
+"&thirdSubNumber="+_subNumber;}
function getChildrenThirdPartyUrl(_client, _kind, _number, _subNumber){if(THIRD_BASE_URL==null){return null;}if(_client==null){return null;}if(_kind==null){return null;}if(_number==null){return null;}if(_subNumber==null){return null;}return THIRD_BASE_URL+"/service/getChildrenThird.do?serviceClient="+_client
+"&thirdKind="+_kind
+"&thirdNumber="+_number
+"&thirdSubNumber="+_subNumber;}
function _loadThirdParty(_client, _kind, _number, _subNumber, _localFunc){var sUrl=null;var i=0;sUrl=getThirdPartyUrl(_client, _kind, _number, _subNumber);if(sUrl==null){return false;}
var func=function(xmlHttp, httpStatus){oGlobalXml=xmlHttp.responseXML;if(oGlobalXml!=null){var oNodes=oGlobalXml.getElementsByTagName(XML_THIRD_PARTY);for(i=0;i < oNodes.length;i++){var oThirdParty=getDomThirdParty(oNodes[i]);if(oThirdParty != null){addThird(oThirdParty);}}}if(_localFunc != null){try{_localFunc(httpStatus, _kind, _number, _subNumber);}catch(e){return false;}}return true;};var oProcess=new IAjaxProcess(sUrl, func);oProcess.run();return true;}
function _loadChildrenThirdParty(_client, _kind, _number, _subNumber, _localFunc){var sUrl=null;var i=0;sUrl=getChildrenThirdPartyUrl(_client, _kind, _number, _subNumber);if(sUrl==null){return false;}
var func=function(xmlHttp, httpStatus){oGlobalXml=xmlHttp.responseXML;if(oGlobalXml!=null){var oNodes=oGlobalXml.getElementsByTagName(XML_THIRD_PARTY);for(i=0;i < oNodes.length;i++){var oThirdParty=getDomThirdParty(oNodes[i]);if(oThirdParty != null){addThird(oThirdParty);var oChildrenNodes=oNodes[i].getElementsByTagName(XML_THIRD_PARTY);for(i=0;i < oChildrenNodes.length;i++){var oChild=getDomThirdParty(oChildrenNodes[i]);if(oChild != null){oChild.parentKind=oThirdParty.kind;oChild.parentNumber=oThirdParty.number;oChild.parentSubNumber=oThirdParty.subNumber;addThird(oChild);}}}}}if(_localFunc != null){try{_localFunc(httpStatus, _kind, _number, _subNumber);}catch(e){return false;}}return true;};var oProcess=new IAjaxProcess(sUrl, func);oProcess.run();return true;}
