// *** *** Client side DbJsBasket functions - MyBasket Page
// *** Copyright Roy Henderson(henderson.roy@gmail.com) 2012, All Rights Reserved.
String.prototype.repeat = function (num) {
if (num <= 0) { return new Array(1).join(this) }
return new Array(num + 1).join(this);
}
function MyBasketCapatalizeChar(str, intLocation) {
var strOut = str;
var intLength = strOut.lenght;
if (intLength == 0) { return ''; }
if (intLocation > intLength) { return strOut; }
if (intLocation == 0) {
strOut = strOut.toUpperCase().charAt(intLocation) + strOut.substring(intLocation + 1);
}
else {
strOut = strOut.substring(0, intLocation) + strOut.toUpperCase().charAt(intLocation) + strOut.substring(intLocation + 1);
}
return strOut;
}
function MyBasketCapatalizeAllWords(str, bitMac) {
var strOut = '';
var intStart = 0;
var pieces = str.split(" ");
for (var i = 0; i < pieces.length; i++) {
var j = pieces[i].charAt(0).toUpperCase();
pieces[i] = j + pieces[i].substr(1);
}
strOut = pieces.join(" ");
if (bitMac == true) {
intStart = strOut.indexOf(' Mc'); if (intStart >= 0) { strOut = MyBasketCapatalizeChar(strOut, intStart + 3); }
intStart = strOut.indexOf(' Mac'); if (intStart >= 0) { strOut = MyBasketCapatalizeChar(strOut, intStart + 4); }
intStart = strOut.indexOf(' Mic'); if (intStart >= 0) { strOut = MyBasketCapatalizeChar(strOut, intStart + 4); }
intStart = strOut.indexOf(' Fitz'); if (intStart >= 0) { strOut = MyBasketCapatalizeChar(strOut, intStart + 5); }
intStart = strOut.indexOf(" O'"); if (intStart >= 0) { strOut = MyBasketCapatalizeChar(strOut, intStart + 3); }
}
return strOut;
}
function MyBasketStringToNumber(strText, dblDefault) {
var dblOut = dblDefault;
try {
dblOut = parseFloat(strText)
} catch (e) {
dblOut = dblDefault
}
if (isNaN(dblOut)) { dblOut = dblDefault }
return dblOut
}
function MyBasketOnClickQtyIncDec(intLineNumber, strdblChangeBy) {
var dblOut = 1;
dblOut = MyBasketStringToNumber(document.getElementById('idLineQty' + intLineNumber).value, 1);
dblOut = dblOut + strdblChangeBy;
if (dblOut <= 0) { dblOut = 1 }
document.getElementById('idLineQty' + intLineNumber).value = dblOut;
// Add item to bulk batch
objMainSiteBasket.UpdateQuantityItem_AddToRemoveFrom_Bulk(intLineNumber, dblOut, true);
MyBasketQtyDirty(intLineNumber, true);
}
function MyBasketOnChangeQty(intLineNumber) {
var dblOut = 1;
dblOut = MyBasketStringToNumber(document.getElementById('idLineQty' + intLineNumber).value, 1);
if (dblOut <= 0) { dblOut = 1 }
document.getElementById('idLineQty' + intLineNumber).value = dblOut;
// Add item to bulk batch
objMainSiteBasket.UpdateQuantityItem_AddToRemoveFrom_Bulk(intLineNumber, dblOut, true);
MyBasketQtyDirty(intLineNumber, true);
}
function MyBasketQtyDirty(intLineNumber, bitDirty) {
if (bitDirty == true) {
document.getElementById('idLineQty' + intLineNumber).style.backgroundColor = "#f3f3f3";
document.getElementById('idUpdateQtyBTN').className = "MyBasketUpdateQtyBTNVisible";
document.getElementById('idUpdateCancelLinkBTN').style.visibility = "visible";
} else {
document.getElementById('idLineQtyDirty' + intLineNumber).value = 0;
document.getElementById('idLineQty' + intLineNumber).style.backgroundColor = "#ffffff";
}
} // End of MyBasketQtyDirty
function MyBasketOnClickQtyUpdate() {
// Disable button
document.getElementById('idUpdateQtyBTN').className = "MyBasketUpdateQtyBTNHidden";
var intTotalNumberOfLines = MyBasketStringToNumber(document.getElementById('idTotalNumberOfItemsShown').value, 0);
if (intTotalNumberOfLines == 0) { return '' }
// Send bulk batch
objMainSiteBasket.UpdateQuantityItem_SendBulk('/MyBasket');
} // End of MyBasketOnClickQtyUpdate
function MyBasketOnClickPromotionalCode() {
var strPromotionalCode = prompt("Please enter your Promotional Code.\n\ne.g. 1234-5678-09 or WinterOffer.", "");
if (strPromotionalCode == null || strPromotionalCode == "") {
alert('Please complete your code');
return '';
}
objMainSiteBasket.AddPromotionalCode(strPromotionalCode, '/MyBasket');
return '';
} // End of MyBasketOnClickPromotionalCode
function MyBasketRemoveDirty(intLineNumber, bitDirty) {
if (bitDirty == true) {
document.getElementById('idUpdateDeletionsBTN').className = "MyBasketUpdateDeleteItemBTNVisible";
document.getElementById('idLineItem0' + intLineNumber).className = "MyBasketStrikeTotals";
document.getElementById('idLineItem1' + intLineNumber).className = "MyBasketStrikeLine";
//document.getElementById('idLineItem2' + intLineNumber).className = "MyBasketStrikeLine"; // Input line
document.getElementById('idLineItem3' + intLineNumber).className = "MyBasketStrikeLine";
document.getElementById('idLineItem4' + intLineNumber).className = "MyBasketStrikeLine";
document.getElementById('idLineItem5' + intLineNumber).className = "MyBasketStrikeLine";
document.getElementById('idLineQty' + intLineNumber).className = "MyBasketQtyChangeInputStrike";
document.getElementById('idFooterTaxTotal').className = "MyBasketStrikeTotals";
document.getElementById('idFooterGrandTotal').className = "MyBasketStrikeTotals";
document.getElementById('idUpdateCancelLinkBTN').style.visibility = "visible";
} else {
}
} // End ofMyBasketRemoveDirty
function MyBasketOnClickRemoveItem(intLineNumber, strStatus) {
// Add item to bulk batch
objMainSiteBasket.RemoveItem_AddToRemoveFrom_Bulk(intLineNumber, true);
MyBasketRemoveDirty(intLineNumber, true);
}
function MyBasketOnClickRemoveUpdate() {
// Disable button
document.getElementById('idUpdateDeletionsBTN').className = "MyBasketUpdateDeleteItemBTNHidden";
var intTotalNumberOfLines = MyBasketStringToNumber(document.getElementById('idTotalNumberOfItemsShown').value, 0);
if (intTotalNumberOfLines == 0) { return '' }
// Send bulk batch
objMainSiteBasket.RemoveItem_SendBulk('/MyBasket');
}
function MyBasketOnClickRemovedItemUnRemove(intLineNumber) {
// Add item to bulk batch
objMainSiteBasket.UnRemoveItem(intLineNumber, '/MyBasket');
}
function MyBasketOnClickRemovedItemDelete(intLineNumber) {
// Add item to bulk batch
objMainSiteBasket.DeleteItem(intLineNumber, '/MyBasket');
}
function MyBasketSelectAPostageOptionFromBasketStoreCode(intItemsUniqueCodeNumber) {
// Add item to bulk batch
objMainSiteBasket.SelectOptionlItem_FindAndChangeDelivery(intItemsUniqueCodeNumber, '/MyBasket');
}
function MyBasketOnClickPostageOptionSelectRegion(strRegionCode) {
// Make the item list visible
// options -
//
//
//
//
//
//
//
document.getElementById('idUKM').style.visibility = 'collapse';
document.getElementById('idSCO').style.visibility = 'collapse';
document.getElementById('idNOI').style.visibility = 'collapse';
document.getElementById('idROI').style.visibility = 'collapse';
document.getElementById('idCEU').style.visibility = 'collapse';
document.getElementById('idROW').style.visibility = 'collapse';
document.getElementById('idUKM').style.display = 'none';
document.getElementById('idSCO').style.display = 'none';
document.getElementById('idNOI').style.display = 'none';
document.getElementById('idROI').style.display = 'none';
document.getElementById('idCEU').style.display = 'none';
document.getElementById('idROW').style.display = 'none';
if (strRegionCode != 'NOT') {
document.getElementById('id' + strRegionCode).style.visibility = 'visible';
document.getElementById('id' + strRegionCode).style.display = 'inline';
}
document.getElementById('idDeliveryDropDownSelect').value = strRegionCode;
}
function MyBasketInitPostageOptionSelectRegion(intItemsUniqueCodeNumber, intFOC) {
strRegionCode = 'NOT';
switch (intItemsUniqueCodeNumber) {
case 1000000:
strRegionCode = 'NOT';
break;
case 1000001:
strRegionCode = 'UKM';
break;
case 1000002:
strRegionCode = 'UKM';
break;
case 1000003:
strRegionCode = 'UKM';
break;
case 1000004:
strRegionCode = 'UKM';
break;
case 1000005:
strRegionCode = 'UKM';
break;
case 1000006:
strRegionCode = 'UKM';
break;
case 1000007:
strRegionCode = 'UKM';
break;
case 1000008:
strRegionCode = 'UKM';
break;
case 1000009:
strRegionCode = 'SCO';
break;
case 1000010:
strRegionCode = 'SCO';
break;
case 1000011:
strRegionCode = 'NOI';
break;
case 1000012:
strRegionCode = 'ROI';
break;
case 1000013:
strRegionCode = 'CEU';
break;
case 1000014:
strRegionCode = 'ROW';
break;
case 1000015:
strRegionCode = 'NOI';
break;
case 1000016:
strRegionCode = 'ROI';
break;
case 1000017:
strRegionCode = 'CEU';
break;
case 1000018:
strRegionCode = 'ROW';
break;
case 1000019:
strRegionCode = 'UKM';
break;
default:
strRegionCode = 'NOT';
}
MyBasketOnClickPostageOptionSelectRegion(strRegionCode);
// Check Option Radio button - checked="checked"
try {
if (intItemsUniqueCodeNumber > 1000000) {
document.getElementById('idDeliveryRadio' + intItemsUniqueCodeNumber).checked = "checked";
}
} catch (e) {
}
try {
if (intFOC > 0) {
// id="idDeliveryFOC1000014" style="visibility: collapse;"
document.getElementById('idDeliveryFOC1000019').style.visibility = "visible";
document.getElementById('idDeliveryFOC1000010').style.visibility = "visible";
document.getElementById('idDeliveryFOC1000011').style.visibility = "visible";
document.getElementById('idDeliveryFOC1000012').style.visibility = "visible";
document.getElementById('idDeliveryFOC1000013').style.visibility = "visible";
document.getElementById('idDeliveryFOC1000014').style.visibility = "visible";
}
} catch (e) {
}
}
function MyBasketTestCode() {
objMainSiteBasket.AddRecentlyViewedItem(57, '');
}
function MyBasketTestCode1() {
objMainSiteBasket.AddRecentlyViewedItem(67, '');
}
function MyBasketTestCode2() {
objMainSiteBasket.AddRecentlyViewedItem(70, '');
}
function MyBasketTestCode3() {
objMainSiteBasket.AddRecentlyViewedItem(163, '');
}
function MyBasket_BlockDeleteButton(strId,bitApplyBlock) {
if (bitApplyBlock == true) {
$(strId).hide();
}
}
function MyBasket_BlockQuantityPlusMinusButtons(strId,bitApplyBlock) {
if (bitApplyBlock == true) {
$(strId).prop("onclick", null);
$(strId).hide();
}
}
function MyBasket_BlockQuantityInputBox(strId,bitApplyBlock) {
if (bitApplyBlock == true) {
$(strId).prop('disabled', true);
$(strId).css({ 'border': 'none transparent' });
$(strId).css({ 'background-color': '#FFFFFF' });
}
}