
/* =====================================================================
 * 				PAYMENT FUNCTIONS
   ===================================================================== */


// send an Ajax request to record payment button click
function registerPaymentButtonClick(request_id, button)
{
	var req = new Request({ url:'../services/proc.php', method:'post' });
	req.send('action=payment_button_clicked&request_id='+request_id+'&button='+button);

}

/* ===================================================================== */







// rounding corners with ShadedBorder plugin
window.addEvent('load', function(){ 
	var Rounded = RUZEE.ShadedBorder.create({ corner:8 });
	var TopRounded = RUZEE.ShadedBorder.create({ corner:8, border:1, edges:"tlr" });
	var BottomRounded = RUZEE.ShadedBorder.create({ corner:8, border:1, edges:"blr" });
	
	$$('.rounded').each(function(item, index) {
		Rounded.render(item);
	});
	
	$$('.top-rounded').each(function(item, index) {
		TopRounded.render(item);
	});	
	
	$$('.bottom-rounded').each(function(item, index) {
		BottomRounded.render(item);
	});		
	
});





function stop_propagation(e)
{
    if (window.event)
    	window.event.cancelBubble = true;
    else	
        e.stopPropagation();    
}









/* =====================================================================
 * 				SPECIAL OFFER JAVASCRIPT FUNCTIONS
   ===================================================================== */


// checks if Special Offer should be displayed
// it compares selected plan value with special offer value
// and only smaller upgrades benefit from special offer
function special_offer_check(special_offer_plan_id)
{
	var f = document.modify; 
	var field = f.payment_plan;

	if (!special_offer_plan_id)
		return false;		

	var selected_plan_id = 0;
	
	// get selected plan	
	for (i=1; i<field.length; i++)				// starting from 1 as first plan is Free 
	if (field[i].checked)
		selected_plan_id = field[i].value;

	if (selected_plan_id == 0)					// free plan was selected
		return false;
	
	if ($('plan-'+special_offer_plan_id) == null)	// if plan is not listed
		return false;
	
	// plan value is stored on [alt] attribute for each radio option  
	// see /signin/payment_fct.php -> show_pay_plans();
	var selected_plan_value = $('plan-'+selected_plan_id).getProperty('alt').toFloat();
	var special_offer_value = $('plan-'+special_offer_plan_id).getProperty('alt').toFloat();

	if (!selected_plan_value)			// value=0 for lottery plans so we can skipp special offer for those
		return false;	
	
	if (selected_plan_value > special_offer_value)
		return false;
	
	return true;			
			
} // END function


function special_offer_display()
{
	var scroll = $(document.body).getScroll();

	div = $("special-offer");	
	
	div.fade('hide');						// make it transparent
	div.setStyle("display","block");		// display it
	div.style.top = 150 + scroll.y;	
	div.fade('in');							// fade it
	
} // END function


// special offer is accepted
function special_offer_select(offer_plan_id)
{
	var f = document.modify; 
	var field = f.payment_plan;
	var regular_plan_id = get_radio(field);

	var query = 'action=special_offer_result&offer_plan_id='+offer_plan_id;
	query += '&regular_plan_id='+regular_plan_id+'&result=1'; 
	
	// send an ajax request to record that offer was accepted
	var req = new Request({url: 'proc.php', method: 'post', async: false});		// "async: false" is needed becaus in FF, request is aborted when form is submitted 
	req.send(query);	
	
	set_radio(field, offer_plan_id);			// select special offer plan
	f.rec_payment.checked = false;				// disable recurrent payment 
		
	f.submit();	
	
} // END function


// special offer is rejected (user goes with selected plan)
function special_offer_reject(offer_plan_id)
{
	var f = document.modify; 
	var field = f.payment_plan;
	var regular_plan_id = get_radio(field);

	var query = 'action=special_offer_result&offer_plan_id='+offer_plan_id;
	query += '&regular_plan_id='+regular_plan_id+'&result=0'; 
	
	// send an ajax request to record that offer was rejected	
	var req = new Request({url: 'proc.php', method: 'post', async: false}); 	// "async: false" is needed becaus in FF, request is aborted when form is submitted
	req.send(query);	
	
	document.modify.submit();	
}









/* ************************************************************
 * 					MESSAGES MODULE
 * ************************************************************ */


// validation in compose message form 
// /messages/compose.php 
function messages_compose_validate_form()
{
	f = document.forms.compose;

	if (f.to_id_text.value == '')
	{
		alert("Please add the username of the recipient");
		return false;
	}

	return ck_text(f.message_body,"","Please add a message");

}



function messages_delete_thread()
{
	f = document.action_form;

	if (!ck_checkbox(f.elements['selected[]'], 'Please select discussions to delete'))
		return;	

	if (!confirm('Are you sure you want to delete selected discussions?'))
		return;		
	
	f.action.value = 'delete-thread';
	f.submit();	
	
} // END function





