// JavaScript Document
//vars
var Locals = { id:0,
				itemnumber:null,
				origprice:0,
				rollbackprice:0,
				aprprice:0,
				dealer:0,
				regularprice:0,
				metal:null,
				changeObject:new Object(),
				mods:new Array(),
				jsBeforePurchase:new Array(),
				defaults: {
							price_number_addon:' $',
							currency_code:'USD'
						},
				redPointExecList: new Array(),
				redPointExecCounter:-1,
				user:{
					name:null,
					email:null
					
					}
				}
				

function WishListRedPoint() {
	var opt = new RedPointOptions()
	opt.container  = AJS.$('cat_3d_wishlist')
	opt.facepic = '/pic/newstruct/design/extra/redpoint/point2.gif'
	opt.width = 193+'px'
	opt.height = 63+'px'
	opt.text = 'You can now save this item to your personal wishlist'
	opt.oldBorderColor='#dbdbdf'
	opt.fontsize = 13
	opt.timeout=5000
	opt.cyclefunc=CatalogCycleRedPoint
	RedPoint(opt)
}


function CatalogLoad() {
	
	BindDoubleRTForDrop('cat_info_extra_plus','cat_info_extra')
	BindDoubleRTForDrop('cat_info_shipping_plus','cat_info_shipping')
	
RegisterMouseOverbgChange('cat_3d_email_a_friend','/pic/newstruct/catalog/buttons/3dbutton-bg-off.jpg','/pic/newstruct/catalog/buttons/3dbutron-starter-email.jpg')
RegisterMouseOverbgChange('cat_3d_ask','/pic/newstruct/catalog/buttons/3dbutton-bg-off.jpg','/pic/newstruct/catalog/buttons/3dbutron-starter-ask.jpg')

if (AJS.$('cat_3d_ask_2')) { 
	RegisterMouseOverbgChange('cat_3d_ask_2','/pic/newstruct/catalog/buttons/3dbutton-bg-off.jpg','/pic/newstruct/catalog/buttons/3dbutron-starter-ask.jpg')
}

RegisterMouseOverbgChange('cat_3d_print','/pic/newstruct/catalog/buttons/3dbutton-bg-off.jpg','/pic/newstruct/catalog/buttons/3dbutron-starter-print.jpg')
if (AJS.$('cat_3d_bestoffer')) { 
	//RegisterMouseOverbgChange('cat_3d_bestoffer','/pic/newstruct/catalog/buttons/3dbutton-bg-off.jpg','/pic/newstruct/catalog/buttons/3dbutron-starter-bestoffer.jpg')
		 }
//RegisterMouseOverBgColorChange('purchase_but','#c6c9CC','#c6c9dd')
//ClearRedDotItems(rcSizeTypeItems)
//UpdateRedComboRow(rcSizeTypeItems,'NL',null,'sdfd')
InitReferFriend()

RedCombo(optCurrency,rcCurrencyItems)

if ( typeof(ExtraStoneRedPoint) == 'function') {
		Locals.redPointExecList.push(ExtraStoneRedPoint)
	}
//if ( typeof(WishListRedPoint) == 'function') {
//		Locals.redPointExecList.push(WishListRedPoint)
//	}
//if ( typeof(PendantChainRedPoint) == 'function') {
	
//	Locals.redPointExecList.push(PendantChainRedPoint)
//}
/*if ( typeof(MetalRedPoint) == 'function') {
	Locals.redPointExecList.push(MetalRedPoint)
}
if ( typeof(ModelsRedPoint) == 'function') {
	Locals.redPointExecList.push(ModelsRedPoint)
}
*/

CatalogCycleRedPoint()







BindDiv2Obj('catalog_email_friend','cat_3d_email_a_friend',0,-250)

}


function PopupHelp(hook,helpid) {

var posAtom = new posXYWH()
posAtom.w=400
posAtom.h = 400

var url = '/pipes/helpbyid.aspx?id='+helpid

floarAjaxToolTip(hook,1,posAtom,url)

}


function AddToRing(id) {
	switch(id) {
		case 3:
			window.location = '/jewel-design/three-stone-ring.aspx?fromstone=1&stoneid=' + Locals.id		
			break;
		case 1:
			window.location = '/jewel-design/semi-mountings-solitair.aspx?fromstone=1&stoneid=' + Locals.id	
			break;
		case 2:
			window.location = '/jewel-design/semi-mountings-multi.aspx?fromstone=1&stoneid=' + Locals.id	
			break;
		case 4:
			window.location = '/jewel-design/semi-mountings-sidestones.aspx?fromstone=1&stoneid=' + Locals.id	
			break;
	}

	//alert('dfgf')
	
}


function AskQuestion() {
	
	window.location = 'mailto:avi@twin-diamonds.com?subject=I would like to ask a question regarding item number:'+Locals.itemnumber
	
	
}




function PrintPage() {
	
	var win = window.open('/pipes/print.aspx?req=itempage','Print',"height=850,width=830,status=yes,toolbar=no,menubar=no,location=no,scrollbars=yes")
	
}

function SetInfoPartText(partid,val) {
	
	if (AJS.$(partid)) {
		AJS.setHTML(AJS.$(partid),val)
		
	
	}
	
}



function RenderExtraMetal(text,val,index) {

	//if (index > 0 ) {
		
		QuickUpdateNote("Updating Jewelry Metal...",2)

			hash = GetHashArrayFromStr(val,'^','::')
		if (Locals.mods["extrastone"]) {
		
			if (hash['delta'] != '0') {
				RecodeStoneValsByMetalDelta(hash['delta'])
				UpdateChangeObject('metalDelta',hash['delta'])
				RenderExtraStone()
			} else {
				if (typeof(ReadChangeObject('metalDelta')) != 'undefined' ) {
					RecodeStoneValsByMetalDelta(-parseInt(ReadChangeObject('metalDelta')))
					UpdateChangeObject('metalDelta',0)
					RenderExtraStone()
				}
			}
			
		} 
		
		else if (Locals.mods["stonestrip"]) {
			//hash = GetHashArrayFromStr(val,'|','::')
			if (hash['delta'] != '0') {
				RecodeStoneValsByMetalDelta(hash['delta'])
				UpdateChangeObject('metalDelta',hash['delta'])
			//	UpdateChangeObject('pr_price',Locals.origprice+parseInt(hash['delta']))
				StoneClick(StripLocals.currentBlockObject,true)
			} else {
			
				if (typeof(ReadChangeObject('metalDelta')) != 'undefined' ) {
					RecodeStoneValsByMetalDelta(-parseInt(ReadChangeObject('metalDelta')))
					UpdateChangeObject('metalDelta',0)
					StoneClick(StripLocals.currentBlockObject,true)
				}
	
			}
			
		}
		else {
			
			UpdatePrice(Locals.origprice+parseInt(hash['delta']))
			UpdateChangeObject('pr_price',Locals.origprice+parseInt(hash['delta']))
			if (Locals.dealer == 1 ) { 
				UpdateRegularPrice(Locals.regularprice+parseInt(hash['delta']))
				UpdateRetailPrice(Locals.regularprice+parseInt(hash['delta']))
			}
			//UpdateChangeObject('pr_regular',Locals.regularprice+parseInt(hash['delta']))
			
		}
		UpdateChangeObject('metal',text)
		
		
	//} 
	
	
}
function gotoCert(id) {
	window.open('http://www.twin-diamonds.com/backoffice/showappraisal2.aspx?id='+id,'mywindow','width=900,height=680')
	
}
function PaymentsHelpShow() {

		PopupHelp(AJS.$('paymentlink'),91)

}
function MakePurchase() {
	

	if (Locals.id == 0) { alert('Please wait until page is finished loading. try in a few seconds for secure perchase') ; return 0 }
	for (var i=0;i<Locals.jsBeforePurchase.length;i++) {
		
		Locals.jsBeforePurchase[i]()
		
	}
	
	//encode 2 objects change and mods
	var general= new Object()
	
	if (Locals.mods["sizing"]) {
		UpdateChangeObject('jewelsize',GetRedComboValueById('comboSize'))
		
	}
	
	general['id']=Locals.id
	
	
	var modEncode = GetStrFromHash(Locals.mods,"|","::")
	var changeEncode = GetStrFromHash(Locals.changeObject,"|","::")
	var generalEncode = GetStrFromHash(general,"|","::")
	
	
	window.location  = '/catalog/mypurchase.aspx?general='+generalEncode+'&mod='+modEncode+'&change='+changeEncode+'&url='+window.location.href.replace(/&/g,'^and^')
	
	
	AJS.$('purchase_but').disabled=true
	
	FancyMsgBox('Please wait a few seconds, you are been redirected to the shopping cart.',100000,null,null,null)
	
	
}
function SoldItemEmail() {
	
	if (Locals.id == 0) { alert('Please wait until page is finished loading. try in a few seconds') ; return 0 }
	
	FancyMsgBox('Please wait',3000,null,null,null )
	
		//window.location = 'mailto:avi@twin-diamonds.com?subject=I would like to get information  about similar items to :'+Locals.itemnumber
		var _ajax =  new microAjax('/ajax/millsajax.aspx?req=3&id='+Locals.id+'&email='+AJS.$('cat_action_2_email').value,function(xmlroot) {																													
																																   												var answer = xmlroot.getElementsByTagName('answer')[0].text
											 
											 if (answer == 'failed') {
												//alert('Error Sending Mail') 
												
												FancyMsgBox('Error Sending Email',3000,null,null,null )
												
												
												
											 } else {
											
												FancyMsgBox('Your Email was sent',1500,null,null,null)
																																   
																																   } 
																																   }
																																   ,null,'xml')
	
}

function CatalogCycleRedPoint() {
		if (Locals.redPointExecList.length - 1 == Locals.redPointExecCounter) { return 0 } 
		Locals.redPointExecCounter++
		
		if (typeof(Locals.redPointExecList[Locals.redPointExecCounter]) == 'function') {
			
			
			Locals.redPointExecList[Locals.redPointExecCounter]()
			
		}

}

function UpdatePrice(price) {
	

	
	AJS.setHTML(AJS.$('pr_price'),FormatNumberBy3(price) + Locals.defaults.price_number_addon)
	
}

function UpdateRegularPrice(price) {
	

	
	AJS.setHTML(AJS.$('pr_regular'),FormatNumberBy3(price) + Locals.defaults.price_number_addon)
	
}

function UpdateRetailPrice(price) {
	

	
	AJS.setHTML(AJS.$('pr_retail'),FormatNumberBy3((Locals.aprprice/Locals.regularprice)*price) + Locals.defaults.price_number_addon)
	//AJS.$('pr_retail').innerHTML = FormatNumberBy3((Locals.aprprice/Locals.origprice)*val) + ' $'
}


function GetCurrentPrice() {
	//alert(ReadChangeObject('pr_price'))
if (typeof(ReadChangeObject('pr_price')) == 'undefined') { return Locals.origprice } 
	return parseInt(ReadChangeObject('pr_price'))
}

function UpdateChangeObject(key,val) {
	
		Locals.changeObject[key]=val
}
function ReadChangeObject(key) {
	
		return Locals.changeObject[key]
}
function ConvertCurrency(currencyID) {
	
	PlaceLoadingImage( { posflag:1,left:90,top:8,hookid:'CurrencyCombo',id:'convert'} )
	
	if (currencyID == 'none') { return 0 } 
	
	//FancyMsgBox('Please wait while converting currencies',2000)
	var _ajax = new  microAjax('/ajax/millsajax.aspx?req=4&pricein='+Locals.origprice+'&priceapr='+Locals.aprprice+'&priceregular='+Locals.regularprice+'&currencyid='+currencyID+'&currentcorrencycode='+Locals.defaults.currency_code,function(xmlroot) { 
		if (xmlroot) {
			
			
			
		var opt = new NorifierOptions()
		opt.subject = 'Someone changes currency in ' + Locals.id
		opt.body='Change to '+currencyID
		
		//NotifierMill(opt)
		
		var priceout = xmlroot.getElementsByTagName("answer")[0].childNodes[0].data
		var priceapr = xmlroot.getElementsByTagName("answer")[1].childNodes[0].data
		var priceregular = xmlroot.getElementsByTagName("answer")[2].childNodes[0].data
		if (AJS.$('BestOfferCurrencySymbol')) {
			AJS.$('BestOfferCurrencySymbol').innerHTML = xmlroot.getElementsByTagName("answer")[3].childNodes[0].data
		}
		 
		AJS.setHTML(AJS.$('pr_price'),priceout)
		AJS.setHTML(AJS.$('pr_retail'),priceapr)
		if (AJS.$('pr_regular')) {
			AJS.setHTML(AJS.$('pr_regular'),priceregular)
		}
		
		PlaceLoadingImage( { posflag:1,left:-70,top:5,hookid:'CurrencyCombo',id:'convert',kill:true} )
		
		} else {
		FancyMsgBox('Error converting, please try again later',2000)
			PlaceLoadingImage( { posflag:1,left:-70,top:2,hookid:'CurrencyCombo',id:'convert',kill:true} )
		}
		
	},null,'xml') 
	
	


}

function AddtoWishList() {
	
	var _ajax = new  microAjax('/ajax/millsajax.aspx?req=5&id='+Locals.id+'&desc='+document.title,function(xmlroot) { 
		if (xmlroot) {
			
		var opt = new NorifierOptions()
		opt.subject = 'Someone added to wishlist item' + Locals.id
		opt.body='this is good'
		
		NotifierMill(opt)
		
		var answer = xmlroot.getElementsByTagName("answer")[0].childNodes[0].data
		
		//alert(answer)
			if (answer=='saved') {
				FancyMsgBox('This Item was saved to wishlist',2000,null,{noAlphaEffect:true} )
			}
			else if (answer=='register') {
				//FancyMsgBox('This Item was saved to wishlist',2000,null,{noAlphaEffect:true} )
				RedirectToPage('/customer/vip-register.aspx?req=wishlist')
			}
			else if(answer=='exists') {
				FancyMsgBox('This Item is already exists in your Wishlist',2000,null,{noAlphaEffect:true} )
			}
			 else {
				FancyMsgBox('An error has occured, please try later',2000,null,{noAlphaEffect:true} )
			}
			
	
		}
	},null,'xml') 	
	
}

function ChangeColorClarity(itemcode,middlestone) {
	
	var metal = Locals.metal
	var combos = AJS.$bytc('select',null,AJS.$('72ModelsComboContainer'))
	
	var color = combos[0].options[combos[0].selectedIndex].text
	var clarity = combos[1].options[combos[1].selectedIndex].text
	
	FancyMsgBox('We are loading your selection of '+color+'/'+clarity,100000,null,{noAlphaEffect:true} )

	var _ajax = new  microAjax('/ajax/millsajax.aspx?req=6&itemcode='+itemcode+'&color='+color+'&clarity='+clarity+'&metal='+metal+'&middlestone='+middlestone,function(xmlroot) {
		
		if (xmlroot) {
			
		var opt = new NorifierOptions()
		opt.subject = 'Someone changed color clarity in item' + Locals.id
		opt.body='selected ' + color + '/'+clarity
		
		
	//	NotifierMill(opt)
		
		var answer = xmlroot.getElementsByTagName("answer")[0].childNodes[0].data
		
		
			if (answer!='none') {
				//FancyMsgBox('This Item was saved to wishlist',2000,null,{noAlphaEffect:true} )
				RedirectToPage(answer)
			}
			 else {
				FancyMsgBox('An error has occured, please try later',2000,null,{noAlphaEffect:true} )
			}
			
	
		}
	},null,'xml') 	
	
	
}

function ChangeColorClarityBySS(itemcode,middlestone) {
	
	var metal = Locals.metal
	var combos = AJS.$bytc('select',null,AJS.$('72ModelsComboContainer'))
	
	var color = combos[0].options[combos[0].selectedIndex].text
	var clarity = combos[1].options[combos[1].selectedIndex].text
	
	FancyMsgBox('We are loading your selection of '+color+'/'+clarity,100000,null,{noAlphaEffect:true} )

	var _ajax = new  microAjax('/ajax/millsajax.aspx?req=7&itemcode='+itemcode+'&color='+color+'&clarity='+clarity+'&metal='+metal+'&middlestone='+middlestone,function(xmlroot) {
		
		if (xmlroot) {
			
		var opt = new NorifierOptions()
		opt.subject = 'Someone changed color clarity in item' + Locals.id
		opt.body='selected ' + color + '/'+clarity
		
		
		//NotifierMill(opt)
		
		var answer = xmlroot.getElementsByTagName("answer")[0].childNodes[0].data
		
		
			if (answer!='none') {
				//FancyMsgBox('This Item was saved to wishlist',2000,null,{noAlphaEffect:true} )
				RedirectToPage(answer)
			}
			 else {
				FancyMsgBox('An error has occured, please try later',2000,null,{noAlphaEffect:true} )
			}
			
	
		}
	},null,'xml') 	
	
	
}
