Jump to content


Popular Content

Showing content with the highest reputation since 09/10/2019 in all areas

  1. 2 points
    Hi all, We are planning a 7.8.3 maintenance update by the end of the month. Included, amongst the usual maintenance fixes, will be the few outstanding issues with the new Stripe Elements module and Pay Methods feature. We are potentially also looking to include module updates for gateway(s) who have published 3DSecureV2 implementation docs in the past few days.
  2. 1 point
    you could modify the hook posted in the above thread... <?php # Remove Paid Invoices Array Hook # Written by brian! function clients_hide_paid_invoices_hook($vars) { $hideStatus = array ('paid'); // add status which you want to hide here in lowercase.. $invoices = $vars['invoices']; foreach($invoices as $key => $invoice) { if (in_array($invoice['rawstatus'], $hideStatus)) { unset($invoices[$key]); } } return array("invoices" => $invoices); } add_hook("ClientAreaPageInvoices", 1, "clients_hide_paid_invoices_hook"); and hide the filter sidebar with some code in custom.css #Primary_Sidebar-My_Invoices_Status_Filter-Paid {display: none;}
  3. 1 point
    Never mind i have fixed it by adding this record to tblpaymentgateways: ID - Gateway - Setting - Value - Order 43 - banktransfer - type - Invoices - 3 I assume that will not cause any issues with anything else related to this?
  4. 1 point
    the information you want is in the tables - just not all in the same table. 😞 tblinvoices -> this will tell you whether the invoice has been paid... for your needs, only those that are paid will matter. tblinvoiceitems -> using the ID value from tblinvoices, this gives you two fields in tblinvoiceitems, 'type' & 'relid'... if these are products, the 'type' will be "Hosting" and the 'relid' value will be the ID value in tblhosting... note: if they're not products, then the relid will point to ID values in other tables, depending on the value on 'type'. tblhosting -> with the hosting ID (relid) you got from tblinvoiceitems, you can then get the packageid value in tblhosting - that will be the ID value of the product in tblproducts. tblproducts -> with the product ID, you will be able to get the name of the product and this, I assume, calculate your profit for that product.
  5. 1 point
    not out of the box... there's no upload option with a product, so in effect what they would need to do is buy the service, login in and then open a support ticket, attach the document file to that support ticket... the translated document could be added to their client area for them to download. to add an upload option during ordering would require customisation help from a developer.
  6. 1 point
    To remove the SSL check from the client area, you can follow this: Currently there is no way to disable it over the admin interface. There is a feature request for it: https://requests.whmcs.com/topic/customization-of-ssl-monitoring-introduced-in-7-7-0 I think the SSL checks can be skipped by adjusting the WHMCS cronjob parameters (by using the do argument and execute only what you need. Ugly, but probably working).
  7. 1 point
    More details about the SCA delay/state by country. https://support.stripe.com/questions/strong-customer-authentication-sca-enforcement-date
  8. 1 point
    I don't have the links but you can search this community and there are a couple of posts that show you how to edit your template to hide it all on the client side. We do the same thing for now.
  9. 1 point
    Hi @JimJ, That will be the cause of the error. Version 7.8 has much more complex logic surrounding payment gateways, so has higher data integrity requirements. Disabling the Bank Transfer gateway and then re-activating it will create the necessary records.
  10. 1 point
    We upgraded WHMCS to 7.8 a few minutes after it became available. At first, we had a few issues, but since 7.8.2 we haven't had any concerning issues. The only issue is that the invoice number doesn't appear on the Stripe transaction, but that's just a visual thing (which is being worked on fixing). We run version 7.8.2 and have a lot of transactions each day. At this point, you're not really risking anything by upgrading.
  11. 1 point
    I simply can't comprehend why WHMCS doesn't do this automatically. Dealing with multiple transfers each day, the To Do list becomes cluttered really fast. The following hook will execute on 'DomainTransferCompleted', look for Pending Domain Transfers that are In Progress containing the domain name and set all of them to Completed (in case there are multiple entries). <?php use WHMCS\Database\Capsule; add_hook('DomainTransferCompleted', 1, function($vars) { //This hook will complete to do items for transfers when the transfer is completed. $toDoID = Capsule::table('tbltodolist') ->where('status', 'In Progress') ->where('title', 'Domain Pending Transfer') ->where('description', 'LIKE', '% ' . $vars["domain"] . ' %') ->get(); //Loop through the ID's and set them as completed. foreach ($toDoID as $entry) { $command = 'UpdateToDoItem'; $postData = array( 'itemid' => $entry->id, 'adminid' => '1', 'status' => 'Completed', ); $results = localAPI($command, $postData); print_r($results); } }); Place the file in /includes/hooks/. UpdateToDo.php
  12. 1 point
    <?php if (!defined("WHMCS")) die("This file cannot be accessed directly"); function nodupepids($vars) { $nodupepids = array('<product ID>'); foreach ($_SESSION['cart']['products'] as $key => $value) { if (in_array($value[pid], $pidsfound)) { header('Location: cart.php?a=remove&r=p&i=' . $key); } if (in_array($value[pid], $nodupepids)) { $pidsfound[] = $value[pid]; } } } add_hook("PreCalculateCartTotals", 1, "nodupepids");
  13. 1 point
    FYI, WHMCS have acknowledged the problem via my support ticket and say that they're working on a fix. Case number MODULE-7114 .
  14. 1 point
    https://docs.whmcs.com/Setting_Up_Your_First_Product you could assign different welcome emails to the different products/services. there would be no admin option setting to enable this - it would likely need a coding solution to make it work that way.
  15. 1 point
    I remembered it from a report pack posted in the old App Store (Community Addons) site years ago... the curse of having a good memory. 📝
  16. 1 point
    Check that the correct card payment template, css and javascript is being loaded. I had a similar report and the client's browser was loading the old cached javascript file. Getting them to clear their browser cache resulted in the new card payment template being displayed.
  17. 1 point
    Okay, all you need is looking for solutions that allow to use multiple domains on the same installation of WHMCS. There's Multi-Brand of ModulesGarden and another one that will be released soon. Once your domains have been configured, the Affiliate program should work without any problem. This way you'll have one WHMC that can be accessed from multiple domain names. Each domain will work for affiliates.
  18. 1 point
    a quick search found the report file below (I didn't write it) - it gives a list of clients with credit, and the client name is linkable... clients_in_credit.php
  19. 1 point

    Version 1.0.0


    An issue has been identified in the 7.8.2 release - published on 6th September 2019, that can result in an error when visiting the pwreset.php file directly: Call to undefined function WHMCS\CALinkUpdateCC This is caused by the introduction of new Friendly URLs for the password reset path /password/reset/begin Attempting to access the old location at pwreset.php results in this error. This hotfix applies only to 7.8.2
  20. 1 point
    you could try the following hook, which redirects users who are not logged in from viewcart to checkout... <?php # ViewCart For Clients Only Hook # Written by brian! function viewcart_for_clients_only_hook($vars) { $client = Menu::context('client'); if (!$client && $vars['templatefile'] === 'viewcart' && $vars['checkout'] !== true) { header("Location: cart.php?a=checkout"); exit; } } add_hook("ClientAreaPageCart", 1, "viewcart_for_clients_only_hook"); logged in users, e.g clients, will still able to go to viewcart as normal.
  21. 1 point
    WHMCS was one of the companies which take average 6 - 8 hours to respond to our support requests. Even if the answer requires canned responses. But recently since this month precisely, WHMCS support staffs impress me by sending their responses in less than five minutes. Read me, the last response I received from WHMCS staff about is just after one minute of my post. 👏 👏 👏 To all of their efforts.
  22. 1 point
    The modified version of the Display Credit Balance hook for our all of themes & templates above version 3.x. 1) Upload the PHP file from Attachements to -> /WHMCS-Path/includes/hooks/ directory. WHMCS_CreditBalance.zip
  23. 1 point
    This is my settings screen:
  24. 1 point
    <?php # Remove Terminated Products From Services Array Hook # Written by brian! function clients_services_remove_terminated_hook($vars) { $services = $vars['services']; foreach($services as $key => $service) { if ($service['status'] == "Terminated") { unset($services[$key]); } } return array("services" => $services); } add_hook("ClientAreaPageProductsServices", 1, "clients_services_remove_terminated_hook"); ?> you might need another hook to remove the Terminated link from the sidebar if you're showing that sidebar on your site... or even simpler, you should be able to hide it using custom.css
  25. 1 point
    Matt Any chance you could post the code for others to use. Thanks Jamie.

Important Information

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