Jump to content

Pre Select Payment Gateway For Each Currency


Code-Storm

Recommended Posts

Hi There

Here is what i need:

The user could select the currency on the shopping cart while they ordering something from cart page. After click on the checkout button, only the payment gateways set to that currency should be available.

Example, if an user select currency USD it will show / Marked Paypal Gateway, other Payment Gateway goes hidden , if user select GBP,CAD  it will show Stripe and Paypal goes hidden

same things for the invoices. and user can only see the selected payment gateway on their invoice for duepayment.

 

Does anyone know, how can i accomplish this. i am using WHMCS 7.5.2

 

Thanks in Advance!!

 

 

Link to comment
Share on other sites

  On 11/28/2018 at 7:46 AM, Code-Storm said:

Does anyone know, how can i accomplish this. i am using WHMCS 7.5.2

Expand  

possibly a question better suited to posting in Service Offers & Requests, but basically it's going to be two hooks... can't think of an existing addon that does this, and a hook solution would work in v7.5.2 and later because there have not been any significant changes to that page since that release.

  On 11/28/2018 at 7:46 AM, Code-Storm said:

The user could select the currency on the shopping cart while they ordering something from cart page. After click on the checkout button, only the payment gateways set to that currency should be available.

Expand  

that would require a clientareapagecart hook - it wouldn't be a million miles away from the one I posted below to change the payment options when the cart balance is zero...

  On 11/28/2018 at 7:46 AM, Code-Storm said:

same things for the invoices. and user can only see the selected payment gateway on their invoice for duepayment

Expand  

again, that's going to be another hook (clientareapageviewinvoice this time) - you know the client is going to be logged in, so it should just be a case of getting their currency from the template and modifying the dropdown array accordingly.. i've posted CAPVI hooks before, but the one you need wouldn't be too far from the above hook method wise, e.g the hook will determine the valid gateway(s) and remove the others from the dropdown.

Link to comment
Share on other sites

  On 11/28/2018 at 5:39 PM, brian! said:

possibly a question better suited to posting in Service Offers & Requests, but basically it's going to be two hooks... can't think of an existing addon that does this, and a hook solution would work in v7.5.2 and later because there have not been any significant changes to that page since that release.

that would require a clientareapagecart hook - it wouldn't be a million miles away from the one I posted below to change the payment options when the cart balance is zero...

so you'd have to modify it to make two checks - one to get the current currency if the user isn't logged in (e.g they've chosen it from a dropdown etc) and one if they are logged in (where they will be locked into using the same currency forever).

again, that's going to be another hook (clientareapageviewinvoice this time) - you know the client is going to be logged in, so it should just be a case of getting their currency from the template and modifying the dropdown array accordingly.. i've posted CAPVI hooks before, but the one you need wouldn't be too far from the above hook method wise, e.g the hook will determine the valid gateway(s) and remove the others from the dropdown.

Expand  

Hello Brian,

Thanks for your suggestion, But i saw some previous thread about same option: here one  Payment Gateway selection by Currency

i want the same work ! like if my client choose USD/CAD/AUD/GBP it will pre select "Paypal, if he/she choose BDT it will mark another. i have done some work but nothing comes up!

Will you please help me with those code & in viewcart.tpl & checkout.tpl where i exactly put those codes!

 

 

 

 

Link to comment
Share on other sites

  On 11/28/2018 at 6:58 PM, Code-Storm said:

Thanks for your suggestion, But i saw some previous thread about same option: here one  Payment Gateway selection by Currency

Expand  

but that thread is two and a half years old, written for the "Modern" template and edits a template - as we're virtually in 2019, you shouldn't be editing templates if/when there is a better solution (e.g an action hook) - not least because a) it removes the need to edit the template after every WHMCS release, and b) in this instance, the hook should work on both cart templates options (e.g Modern and Standard_cart). thanks.png

  On 11/28/2018 at 6:58 PM, Code-Storm said:

i want the same work ! like if my client choose USD/CAD/AUD/GBP it will pre select "Paypal, if he/she choose BDT it will mark another. i have done some work but nothing comes up!

Expand  

then do it as a hook and get it to remove the gateways that you don't want by modifying the previous linked hook - although what it won't do (neither would a template edit) is pre-select PayPal or Stripe (as written each would be the only option available) - with PayPal, I think you could pre-select it in the hook without issue; but for Stripe, it's the pressing of the Stripe radio option that triggers the slide event to allow for card entry submission - which if already pre-selected, you can't do... you'd then have to use JS/Jquery in the hook to trigger that slide to occur automatically.

  On 11/28/2018 at 6:58 PM, Code-Storm said:

Will you please help me with those code & in viewcart.tpl & checkout.tpl where i exactly put those codes!

Expand  

it would take me longer to write/test this in the template than it would to write a hook - especially as you haven't said which orderform template you're using.... and unless there's something glaringly obvious that i'm missing, I don't really see any advantage to editing the template for this issue.

besides, after i've done that, you'll then want the same on the invoices page! ðŸ™„

for trivial navbar/sidebar hooks, I don't mind posting code... but when you're into the realms of customisation that likely needs testing time, then you should be thinking about paying a developer... it's not good for the WHMCS developer community, if i'm sat here posting solutions to issues that developers should be paid to solve... i've already told you how to accomplish this (as per your original question) - short of writing the hooks for you, there's not much more I can do.

Link to comment
Share on other sites

  On 11/29/2018 at 2:26 PM, brian! said:

but that thread is two and a half years old, written for the "Modern" template and edits a template - as we're virtually in 2019, you shouldn't be editing templates if/when there is a better solution (e.g an action hook) - not least because a) it removes the need to edit the template after every WHMCS release, and b) in this instance, the hook should work on both cart templates options (e.g Modern and Standard_cart). thanks.png

then do it as a hook and get it to remove the gateways that you don't want by modifying the previous linked hook - although what it won't do (neither would a template edit) is pre-select PayPal or Stripe (as written each would be the only option available) - with PayPal, I think you could pre-select it in the hook without issue; but for Stripe, it's the pressing of the Stripe radio option that triggers the slide event to allow for card entry submission - which if already pre-selected, you can't do... you'd then have to use JS/Jquery in the hook to trigger that slide to occur automatically.

it would take me longer to write/test this in the template than it would to write a hook - especially as you haven't said which orderform template you're using.... and unless there's something glaringly obvious that i'm missing, I don't really see any advantage to editing the template for this issue.

besides, after i've done that, you'll then want the same on the invoices page! ðŸ™„

for trivial navbar/sidebar hooks, I don't mind posting code... but when you're into the realms of customisation that likely needs testing time, then you should be thinking about paying a developer... it's not good for the WHMCS developer community, if i'm sat here posting solutions to issues that developers should be paid to solve... i've already told you how to accomplish this (as per your original question) - short of writing the hooks for you, there's not much more I can do.

Expand  

Hello Brian,

Thanks for the hook!

to be honest, I don't need the same things for Invoice too!.  it's pretty much enough for me, if i get this only for cart pages!. currently i am using 4 templates for 4 different product category.

Standard, modern, pure comparison, universal slider 

Link to comment
Share on other sites

  On 11/29/2018 at 3:40 PM, Code-Storm said:

Thanks for the hook!

Expand  

i'm glad you liked it - don't think i'll be making a habit of it though! headshake.gif

  On 11/29/2018 at 3:40 PM, Code-Storm said:

to be honest, I don't need the same things for Invoice too!.  it's pretty much enough for me, if i get this only for cart pages!. currently i am using 4 templates for 4 different product category.

Standard, modern, pure comparison, universal slider  

Expand  

forget about slider and comparison, by the time you get to checkout, you'll be using modern or sc.

Link to comment
Share on other sites

  On 11/29/2018 at 3:46 PM, brian! said:

i'm glad you liked it - don't think i'll be making a habit of it though! headshake.gif

forget about slider and comparison, by the time you get to checkout, you'll be using modern or sc.

Expand  

Well then it's only possible for specific templates! so is it possible to get those codes Brian as an example?? Thanks is Advance

Link to comment
Share on other sites

  On 11/29/2018 at 3:57 PM, Code-Storm said:

Well then it's only possible for specific templates! so is it possible to get those codes Brian as an example??

Expand  

that hook works in both Modern and Standard_cart... if you're using Pure Comparison or Universal Slider, after the opening products page, you are using Standard_cart anyway, so the hook will work with them too.

Link to comment
Share on other sites

  On 11/30/2018 at 9:44 AM, Code-Storm said:

For USD,AUD,CAD,GBP paypal pre select perfectly but for local currency which is BDT it's not showing the Local Payment Method which is Cash Payment and on checkoutpage

Expand  

have you updated the hook to account for this change? I coded it to use Stripe for BDT as per your question...

		elseif (in_array($currency['code'],array('BDT'))) {
			$allowed = ['stripe'];
		}

you'd need to change that to the internal name used for your Cash Payment gateway - if it's "Mail In Payment", it would be 'mailin'... if it's something else, and you don't know what it is, you'll need to disable the hook (e.g remove the above lines) and view the source of the checkout page in the browser and that will tell you the name...

PPgkWaE.png

then put those lines back in, change stripe to whatever this gateway name is and then save the hook.

Link to comment
Share on other sites

  On 11/30/2018 at 4:50 PM, brian! said:

have you updated the hook to account for this change? I coded it to use Stripe for BDT as per your question...

		elseif (in_array($currency['code'],array('BDT'))) {
			$allowed = ['stripe'];
		}

you'd need to change that to the internal name used for your Cash Payment gateway - if it's "Mail In Payment", it would be 'mailin'... if it's something else, and you don't know what it is, you'll need to disable the hook (e.g remove the above lines) and view the source of the checkout page in the browser and that will tell you the name...

PPgkWaE.png

then put those lines back in, change stripe to whatever this gateway name is and then save the hook.

Expand  

Hello Brian,

I apologize for the mistakes! i just wrote "Stripe" as an example for BDT payment. i am really sorry

I understand! i just need to replace my getaway  name instead Stripe!

what about if i want to keep an option like. For USD/AUD/CAD/GBP/ paypal is pre-selected besides there will be an option like Bank Transfer or Payza

Link to comment
Share on other sites

  On 11/30/2018 at 6:30 PM, Code-Storm said:

what about if i want to keep an option like. For USD/AUD/CAD/GBP/ paypal is pre-selected besides there will be an option like Bank Transfer or Payza

Expand  

then you add the gateways that you want to show for a currency as a list in the hook...

		if (in_array($currency['code'],array('AUD','CAD','GBP','USD'))) {
			$allowed = ['paypal','banktransfer','payza'];
		}

... so for AUD/CAD/GBP/USD, the only gateway options shown will be PayPal, Bank Transfer and Payza... all other gateways will be removed.

Link to comment
Share on other sites

  On 12/1/2018 at 12:35 PM, brian! said:

then you add the gateways that you want to show for a currency as a list in the hook...

		if (in_array($currency['code'],array('AUD','CAD','GBP','USD'))) {
			$allowed = ['paypal','banktransfer','payza'];
		}

... so for AUD/CAD/GBP/USD, the only gateway options shown will be PayPal, Bank Transfer and Payza... all other gateways will be removed.

Expand  

Hello Brian,

Hat's off to you! and also grateful to you!

Link to comment
Share on other sites

  • 1 month later...
  On 12/1/2018 at 12:35 PM, brian! said:

then you add the gateways that you want to show for a currency as a list in the hook...

		if (in_array($currency['code'],array('AUD','CAD','GBP','USD'))) {
			$allowed = ['paypal','banktransfer','payza'];
		}

... so for AUD/CAD/GBP/USD, the only gateway options shown will be PayPal, Bank Transfer and Payza... all other gateways will be removed.

Expand  

Hello Brian,

everythings looks good. but need a little help, according to the code client can pay their bill by using paypal but we want they can pay bill via their credit card without login to paypal. for this paypal express checkout is good option but paypal express checkout option not working when they select their currency USD/AUD/CAD

here is the code

<?php

/**
* Modify Payment Gateway Options Based On Currency
* @author Brian!
*/
 
function cart_gateway_removal_based_on_currency_hook($vars)
{
    if ($vars['templatefile']=='viewcart'){
        $gateways = $vars['gateways'];
        $currency = $vars['currency'];
        if (in_array($currency['code'],array('AUD','CAD','GBP','USD'))) {
            $allowed = ['paypalexpress','paypal','directdebit'];
        }
        elseif (in_array($currency['code'],array('BDT'))) {
            $allowed = ['walletmixgateway','directdebit'];
        }
        if (!empty($allowed)) {
            foreach ($gateways as $k => $item) {
                if (!in_array($item['sysname'],$allowed)) {
                    unset($gateways[$k]);
                }
            }
            return array("gateways" => $gateways);
        }
    }
}
add_hook("ClientAreaPageCart", 1, "cart_gateway_removal_based_on_currency_hook");

 

Link to comment
Share on other sites

  On 1/31/2019 at 6:46 AM, Code-Storm said:

everythings looks good. but need a little help, according to the code client can pay their bill by using paypal but we want they can pay bill via their credit card without login to paypal. for this paypal express checkout is good option but paypal express checkout option not working when they select their currency USD/AUD/CAD

Expand  

the problem is that PayPal Express Checkout isn't a payment gateway option shown at checkout, it's shown at the View Cart stage..

https://docs.whmcs.com/PayPal_Express_Checkout

  Quote

The PayPal Express checkout module allows your clients to check out in a single click without the need to enter their details into the WHMCS order form. The client's name, address, email and phone number will be taken from those stored in their PayPal account and a one-time payment sent when the Express Checkout button is clicked on the order form.

Expand  

9PQ2rOV.png

so the hook is working fine - it's just that you're asking it to do something that it wasn't designed to do. 🙂

you could try another hook to cover PayPal Express Checkout and when it is or isn't shown..

<?php

/**
* PayPal Express Checkout Options Based On Currency
* @author Brian!
*/
 
function cart_paypal_express_checkout_based_on_currency_hook($vars)
{
    if ($vars['templatefile']=='viewcart'){
        $currency = $vars['currency'];
        if (!in_array($currency['code'],array('AUD','CAD','GBP','USD'))) {
            return array("gatewaysoutput" => null);
        }
    }
}
add_hook("ClientAreaPageCart", 1, "cart_paypal_express_checkout_based_on_currency_hook"); 

which basically says that if the current currency is AUD, CAD, GBP or USD, then do nothing (as you want PEC as an option for those currencies) - for any other currency, the PayPal Express option will be removed from View Cart.

you might run into issues if multiple gateways were used at view cart like this, and you wanted to discriminate between them for certain currencies, but I think PEC is the only one so far that does it...

Link to comment
Share on other sites

  • 1 year later...
  • 2 months later...
  On 1/31/2019 at 5:17 PM, brian! said:
<?php

/**
* PayPal Express Checkout Options Based On Currency
* @author Brian!
*/
 
function cart_paypal_express_checkout_based_on_currency_hook($vars)
{
    if ($vars['templatefile']=='viewcart'){
        $currency = $vars['currency'];
        if (!in_array($currency['code'],array('AUD','CAD','GBP','USD'))) {
            return array("gatewaysoutput" => null);
        }
    }
}
add_hook("ClientAreaPageCart", 1, "cart_paypal_express_checkout_based_on_currency_hook"); 

 

Expand  

So I tried re-using this code, I wanted to include Add Funds and Invoices Payment Page with the pre-select per currency option. Currently all available payment gateway show up.

I am trying to ensure clientarea addfunds and viewinvoice also uses the same logic. Using Standard Cart checkout with Six Theme. But I haven't had any success with this modification as all continue to show. Any indicators?
 

 <?php

/**
* Modify Payment Gateway Options Based On Currency
* @author Brian!
*/
 
function cart_gateway_removal_based_on_currency_hook($vars)
{
    if ($vars['templatefile']=='viewcart' && $vars['templatefile']=='clientareaaddfunds' && $vars['templatefile']=='viewinvoice'){
        $gateways = $vars['gateways'];
        $currency = $vars['currency'];
        if (in_array($currency['code'],array('EUR'))) {
            $allowed = ['pl_stripe_sofort'];
        }
        elseif (in_array($currency['code'],array('INR'))) {
            $allowed = ['banktransfer'];
        }
		elseif (in_array($currency['code'],array('USD'))) {
            $allowed = ['paypal'];
        }
        if (!empty($allowed)) {
            foreach ($gateways as $k => $item) {
                if (!in_array($item['sysname'],$allowed)) {
                    unset($gateways[$k]);
                }
            }
            return array("gateways" => $gateways);
        }
    }
}
add_hook("ClientAreaPageCart", 1, "cart_gateway_removal_based_on_currency_hook"); 
add_hook("ClientAreaPageViewInvoice", 1, "cart_gateway_removal_based_on_currency_hook"); 
add_hook("ClientAreaPageAddFunds", 1, "cart_gateway_removal_based_on_currency_hook"); 

 

Link to comment
Share on other sites

  On 11/29/2020 at 8:18 PM, cswschinmay said:

So I tried re-using this code, I wanted to include Add Funds and Invoices Payment Page with the pre-select per currency option. Currently all available payment gateway show up.

Expand  

I doubt it would work as all three pages handle gateway arrays slightly differently - and that first hook would have been about PayPal Express and similar... certainly add funds wouldn't use that gateway in the same away (it's not a cart page).

  On 11/29/2020 at 8:18 PM, cswschinmay said:

I am trying to ensure clientarea addfunds and viewinvoice also uses the same logic. Using Standard Cart checkout with Six Theme. But I haven't had any success with this modification as all continue to show. Any indicators?

Expand  

I would split this into two separate hooks - same file if you like, but separate.... you could do it as one hook, but there's little to be gained.

addfunds & cart could basically use the same hook if it had to... so if I write a very basic example hook where you define the valid gateways that can be used in the add funds page...

<?php

# Remove Gateways From Add Funds Page Hook
# Written by brian!
 
function addfunds_gateway_removal($vars) {
	
	$gateways = $vars['gateways'];
	$validgateways = array('banktransfer','stripe');
	foreach ($gateways as $k => $item) {
		if (!in_array($item['sysname'],$validgateways)) {
			unset($gateways[$k]);
		}
	} 
	return array("gateways" => $gateways);
}
add_hook("ClientAreaPageAddFunds", 1, "addfunds_gateway_removal");

before & after screenshots of the add funds page after the hook has defined banktransfer and stripe as the only valid gateways...

Pxz1lAa.pngUq1AHqK.png

you could add the code below to the end of the hook and it would work in the cart too.

add_hook("ClientAreaPageCart", 1, "addfunds_gateway_removal");

SaEJp15.png

ONPBHe4.png

though in the cart you can define gateways used per product group from product group settings... and as this is a basic example, watch out for leaving the user with no gateway options by removing all of the available gateways!

with regards to viewinvoice, I don't propose to go it this now, but unlike AF/Cart. there isn't a gateways array that you can simple unset elements of to remove them - with VI, the equivalent variable is just the HTML code for a series of form dropdown select options that you would have to remove by replacing the specific string.... the idea is outlined in the hook below...

as I said, you could use one hook if you had to with 2/3 if statements to determine which page the user is on and react accordingly, but there's little to be gained IMO.

Link to comment
Share on other sites

  • 4 weeks later...
  On 12/1/2020 at 5:16 PM, brian! said:
<?php

# Remove Gateways From Add Funds Page Hook
# Written by brian!
 
function addfunds_gateway_removal($vars) {
	
	$gateways = $vars['gateways'];
	$validgateways = array('banktransfer','stripe');
	foreach ($gateways as $k => $item) {
		if (!in_array($item['sysname'],$validgateways)) {
			unset($gateways[$k]);
		}
	} 
	return array("gateways" => $gateways);
}
add_hook("ClientAreaPageAddFunds", 1, "addfunds_gateway_removal");

 

Expand  

 

Hello Brain,

Holidays are here finally can get this to work :) Thanks for the ideas.

So i try this one file -> one hook for addfunds and cart. We have three currencies and 6 gateway. Not all currencies accepted in those gateway.

But sadly only cart option works per currency-gateway.
Add Funds show all Gateways and doesn't work if i do all (Cart and Add Funds in one file)

 <?php

/**
* Modify Payment Gateway Options Based On Currency
* @author Brian!
*/
 
function addfunds_gateway_removal($vars) 
{
    {
        $gateways = $vars['gateways'];
        $currency = $vars['currency'];
        if (in_array($currency['code'],array('EUR'))) {
            $allowed = ['stripe'];
        }
        elseif (in_array($currency['code'],array('INR'))) {
            $allowed = ['razorpay'];
        }
		elseif (in_array($currency['code'],array('USD'))) {
            $allowed = ['paypal'];
        }
        if (!empty($allowed)) {
            foreach ($gateways as $k => $item) {
                if (!in_array($item['sysname'],$allowed)) {
                    unset($gateways[$k]);
                }
            }
            return array("gateways" => $gateways);
        }
    }
}
add_hook("ClientAreaPageCart", 1, "addfunds_gateway_removal"); 
add_hook("ClientAreaPageAddFunds", 1, "addfunds_gateway_removal");

I also tried the hook example you provided from above it worked for selected gateway and modified it slightly for more currency options: This another Hook file for Add Funds which doesn't work :(

<?php

/**
* Modify Payment Gateway Options Based On Currency
* @author Brian!
*/
function addfunds_credit_gateway_removal($vars) 
{
    {
		$gateways = $vars['gateways'];
        $currency = $vars['currency'];
        if ($currency == '6') {
            $validgateways = ['stripe'];
        }
        elseif ($currency == '3') {
            $validgateways = ['razorpay'];
        }
		elseif ($currency == '1') {
            $validgateways = ['paypal'];
        }
        if (!empty($allowed)) {
            foreach ($gateways as $k => $item) {
                if (!in_array($item['sysname'],$validgateways)) {
                    unset($gateways[$k]);
                }
            }
            return array("gateways" => $gateways);
        }
    }
}
add_hook("ClientAreaPageAddFunds", 1, "addfunds_credit_gateway_removal");

 

For the Invoices an logic like this doesn't seem to work

<?php

# ViewInvoice Gateway Hook
# Written by brian!

function hook_view_invoice_gateway($vars) {
	
	$client = $vars['clientsdetails'];
	$currency = $client['currency'];
	$gateways = $vars['gateways'];
	if ($currency == '1') {
		$allowed = ['stripe','paypal','bitpay','banktransfer'];
	}
	elseif ($currency == '3') {
		$allowed = ['razorpay','banktransfer'];
	}
	elseif ($currency == '6') {
		$allowed = ['stripe','pl_stripe_sofort','banktransfer'];
	}
	else {
		$gatewaylimit = 0;
	}
	if ($vars['status'] == 'Unpaid' && $vars['clientdetails']->toNumeric() = $currency) {
		$gatewaydropdown = $vars['gatewaydropdown'];
		$stripe = '<option value="stripe">Stripe</option>';
		$pl_stripe_sofort = '<option value="pl_stripe_sofort">Stripe</option>';
		$gd2 = str_replace($stripe, '', $gatewaydropdown) ;
		return array("gatewaydropdown" => $gd2);
	}
}
add_hook('ClientAreaPageViewInvoice', 1, 'hook_view_invoice_gateway');

 

Link to comment
Share on other sites

  On 12/23/2020 at 9:43 PM, cswschinmay said:

Holidays are here finally can get this to work 🙂

Expand  

I think you'll find holidays are not for coding! 🎄

  On 12/23/2020 at 9:43 PM, cswschinmay said:

But sadly only cart option works per currency-gateway.

Expand  

three points...

  1. I would consider keeping the hooks separate - I know why you would like to join them together (e.g to only define the allowed gateways once), but they all work in slightly different ways, so not easily combined in one hook (can be done, just complicates the coding).
  2. I would not consider the Add Funds page to be part of the cart - so the currency value that is available to the cart will NOT exist... but with Add Funds, the client must be logged in and so therefore you can get the value by other means.
  3. Similarly, the View Invoice page cannot access currency in the same way as the cart - so other methods would be required for that (should be the same as 2).
<?php

# Remove Gateways From Add Funds Page Hook
# Written by brian!
 
function addfunds_gateway_removal($vars) {
	
	$client = Menu::context('client');
	$currency = $client->currency;
	$gateways = $vars['gateways'];
	if ($currency == 1) {
		$validgateways = array('banktransfer');
	}
	elseif ($currency == 2) {
		$validgateways = array('banktransfer');
	}
	foreach ($gateways as $k => $item) {
		if (!in_array($item['sysname'],$validgateways)) {
			unset($gateways[$k]);
		}
	} 
	return array("gateways" => $gateways);
}
add_hook("ClientAreaPageAddFunds", 1, "addfunds_gateway_removal");
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use & Guidelines and understand your posts will initially be pre-moderated