Jump to content


Honored Contributor
  • Content Count

  • Joined

  • Last visited

  • Days Won


brian! last won the day on September 24

brian! had the most liked content!

Community Reputation

2752 Excellent

About brian!

  • Rank
    Senior Member

Recent Profile Visitors

33354 profile views
  1. if it's a tax field, you might want to take a look at the VAT settings to see if they would work for you... https://docs.whmcs.com/Tax_Configuration#VAT_Settings if not, then it's a client custom field that you can make required when you set it up.
  2. do you want an existing field (e.g one already on the form) to be required or to add anew field ??
  3. it would be ClientAreaPageCart - though ClientAreaPage would work too. yes. this is a hook i've posted before (in many forms), but it allows you to specify which domain options are available for each product, e.g for some products, they can register a domain; for another product, they can register, transfer but not use own domain etc... for your issue, i've simplified the code a little... <?php # Configure Domain Settings For Products # Written by brian! function domain_options_for_products_hook($vars) { $productinfo = $vars['productinfo']; if ($vars['templatefile']=="configureproductdomain") { $validproducts = array(1,2); if (in_array($productinfo['pid'],$validproducts)) { return array("registerdomainenabled" => "on", "domainoption" => "register"); } } } add_hook("ClientAreaPageCart", 1, "domain_options_for_products_hook"); so what this says is that for the product IDs listed in the $validproducts array (that's 1 & 2), the domain options will include Domain Registration (even if disabled in the settings) and it will be the default choice... if transfer/owndomain options are enabled, then they'll be shown too (along with subdomain if that's applicable with the product) -
  4. you can use a simple adminareaheaderoutput hook to add the old links (and date) back above the new menu... the values from $sidebarstats that those three links used are still available in v8, so there's no additional querying required to get the values as they (and others) can be pulled from $vars. if they don't make a similar change to v8 GA, then i'll post the hook - but i'll test it first on the GA as god knows what they'll sneak in in terms of changes between RC3 and GA.
  5. would it not be simpler to query the config and find out the version of WHMCS installed - then if it's 7, you do x to get the value you want; and if it's 8, you do y to get the value.... and then once you have the value, you can carry on with your process.
  6. there's no picture - but you'll need to enable Error Reporting to get WHMCS to tell you exactly what the issue is. https://docs.whmcs.com/Enabling_Error_Reporting
  7. if you don't want to sell domains/products in USD, then the simplest way is not to add pricing for them in USD.... or instead of adding CLP as a separate currency, you could have renamed USD to CLP and only have one currency in your install. if you could remove/disable USD pricing for product/domains (from admin settings), use an action hook / CSS to hide the currency sidebar and add &currency=2 to product links on your main website, then that would add the product in CLP pricing. <?php use WHMCS\View\Menu\Item as MenuItem; add_hook('ClientAreaSecondarySidebar', 1, function (MenuItem $secondarySidebar) { if (!is_null($secondarySidebar->getChild('Choose Currency'))) { $secondarySidebar->removeChild('Choose Currency'); } });
  8. I believe the answer is still the same - e.g it's querying the invoice items and when the recurring limit is reached, the status of the service is changed to "Completed" in order to prevent future invoicing from occurring. although you could contact Support if you want to confirm my suspicion.
  9. I was merely pointing out that this is an old and known situation.... from your description, I assumed they were choosing a site/location with the product - aren't they ?? if they're not and they need to specify a location for the addon, then make it a product and use a bundle, or add a link to it from the first.
  10. from 3 years ago... - plus ça change, plus c’est la même chose. 🙄 why do they need to specify it - and what happens if they could specify a site/location that the product isn't using ??
  11. not from settings - you would have to code it. probably these days it could all be done with hooks - though i'm not aware of an existing off-the-shelf solution for this.
  12. I would have thought either of the InvoiceCreation hooks would suit your need.
  13. three points worth mentioning I think with WHMCS. users cannot change their currencies - e.g once they've bought in USD, when they login, they will only see USD pricing... so they can't buy in USD today, and EUR next week - once invoices/transactions exist, an admin shouldn't change their currency either... unless they know what they're doing as Hostmaria suggests - you can price products in multiple currencies - so is there any reason why you couldn't price or invoice for $1500L and then receive $1500L ? possibly you could use Convert To For Processing in your payment gateway to convert from L to USD. https://docs.whmcs.com/Payment_Gateways
  14. the ClientAdd hook would be run during client creation, so you could code it to write to an external db with the relevant contact details. for a more manual method, you could modify the clients report and export the relevant details to csv and then import into the remote database.
  15. there are multiple ways - depending on how thorough you need to be... you could use CSS (in custom.css) or hooks to hide the links - though if the user knew the URL to the domain register page, then they could still register domains that way... #Primary_Navbar-Store-Register_a_New_Domain {display: none;} #Secondary_Sidebar-Actions-Domain_Registration {display: none;} another way would be to disable domain registration in the settings (e.g setup -> general settings -> domains -> domain registration options -> untick "Allow clients to register domains with you". that disables domain registrations on their own and with products too, so then you could write a hook to enable the register domain option on specific products only and then only the products can you list will be able to register domains when ordering - other products, and direct domain registrations will be prevented.
  • 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