Jump to content

WHMCS Andrew

WHMCS Developer
  • Content Count

  • Joined

  • Last visited

  • Days Won


WHMCS Andrew last won the day on November 5 2019

WHMCS Andrew had the most liked content!

Community Reputation

20 Excellent


About WHMCS Andrew

  • Rank
    WHMCS Developer

Recent Profile Visitors

2260 profile views
  1. An invoice has a payment method set on it that is separate to any manual transaction being added. If you wish to update the invoice payment method, you should do so on the Options tab of the invoice. Adding a manual payment from the Add Payment tab will not change anything on the invoice other than the status if the payment being added covers the invoice amount.
  2. I have just noticed, as a workaround, you could use the API to add/update your announcements where this hook does run differently, without the additional language sync.
  3. Hi, When the initial announcement is created or edited, the AnnouncementEdit/AnnouncementAdd hook point is run. After this hook point is run, the announcement logic will sync the languages within the announcement based on the data entered in the form just submitted. Part of the sync removes all child entries and then loops through each language and loops through only inserting rows where the content has been defined for the language. Your issue here is that you are attempting to insert a row into the table just before the sync happens. I have opened CORE-16927 internally to change when the hook points mentioned above run to ensure that all the announcement data has been written.
  4. Do you see the HTML being output on the complete page? Remember that you have the output conditionally within the {if $ispaid} block and so that will only output if the order has been paid.
  5. Hi, I think you confused what you needed to do. Remove the {literal} tags completely. Then, in the javascript, replace any { and } that aren't smarty, with the delims. I didn't mean for you to use {and} {if $ispaid} <!-- Enter any HTML code which should be displayed when a user has completed checkout here --> <!-- Common uses of this include conversion and affiliate tracking scripts --> <!-- Start TradeDoubler Conversion Tag Insert on confirmation Page --> <script language="javascript"> tdconv('init', '2269371', {ldelim}'element': 'iframe' {rdelim}); tdconv('track', 'sale', {ldelim}'transactionId':'{$orderid}', 'ordervalue':'{$total}', 'voucher':'', 'currency':'EUR','event':404916{rdelim}); </script> <!-- End TradeDoubler tag--> {/if}
  6. The {literal} tags stop any smarty parsing. That means, that the {$orderid} etc in your logic would never display. I would recommend taking out the literal tags, and replacing use of { and } anywhere you don't have a smarty variable with the {ldelim} and {rdelim} appropriately. See https://www.smarty.net/docs/en/language.function.ldelim.tpl for more information on that. Hope this helps you.
  7. Hello, I am going to add Calendar on my custom field.

    How to add calender popup on my custom field. Please help me.


  8. In WHMCS 8 we introduced a new library to import emails when using POP. This includes a stricter validation of email headers. Unfortunately it would seem that an email in your mailbox has an invalid header. Whilst at the current time, it would not be possible to import that, if you could open a ticket with the raw email that is causing this issue, we can open a case to investigate how to not have this message occur.
  9. You would use something like: use WHMCS\Authentication\CurrentUser; $currentUser = new CurrentUser; $user = $currentUser->user(); if ($user) { $ipAddress = $user->currentIp(); } This combines the documentation for CurrentUser on https://developers.whmcs.com/advanced/authentication/ and the User model.
  10. As a workaround, you can create a customer account manually in your Stargate/UK2 account with the same email address being used here in the username parameter.
  11. Hi Sorabit, I have been able to replicate this and I have opened a case to have this resolved - MODULE-7512. Thank you for your report.
  12. The getClientsProducts API command returns an array of 'products' with an 'id' as the first parameter. See the example on the documentation page I linked to. This would be the service id that you need for the updateClientProduct API command.
  13. Hi, You would need a module of some kind in order to automatically suspend the services. If a remote connection is not required, the auto release module can be used to perform actions like this.
  14. Could this be a customised attachments directory? Check your configuration.php file for those locations.
  15. Hi Jason, If you are logged in as an admin user, you are able to login as any client without a password, or with any password. Try the same thing again in either an incognito window, or a different browser without an admin session and you will see that a password is required. Andrew
  • 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