Jump to content


Level 2 Member
  • Content count

  • Joined

  • Last visited

  • Days Won


Everything posted by bear

  1. I have a client that's sometimes late paying, but it's a known thing and we've discussed it with them. Recently he's had an invoice for a credit card payment (none on file) go overdue, and it generated the usual 1/2/3 reminders. As of a few days ago, however, it's sending payment reminders every single day since it's past the 3rd reminder and he's still not handled it. I feel that's excessive, but can't find where that can be adjusted or stopped. Aside from changing the payment method on the account, can this be adjusted at all?
  2. Looks like this setting under automation may stop the attempts: "Attempt Only Once Tick this box to only attempt the payment automatically once and if it fails, don't attempt it again" But that raises a question as to why it only allows you to make one attempt, and no way to try a second time without it doing so repeatedly without end, assuming this was causing it. Reading more carefully, the docs explain the somewhat ambiguous wording in the admin interface, and setting the "Enter the number of weeks to retry failed CC processing attempts for weekly" is not for weekly hosting periods, but how many weeks it should make the attempt. IMHO, that "for weekly" bit should be removed. Problem solved.
  3. bear

    Detect Logged In User Outside WHMCS

    That path will be wrong unless the "external" file is in or a sub of WHMCS' directory. It needs the path to the file, which if it's being called from *outside* of the WHMCS directory would be more like "require('whmcs/getuserid.php');" if on the same level as WHMCS' directory, but not in it.
  4. bear

    Switch to HTTPS for admin side

    I know you understand, I was referring to slim's post (and why I'd quoted it). 😉 I agree there could and should be a setting to choose, but it's like so many things in this system (hard coded UK dates on domain sync, for instance), it gets encoded and untouchable or needs yet another hook.
  5. bear

    Switch to HTTPS for admin side

    That's on the client running the site, not the WHMCS admin clicking a link to go there from within WHMCS. As for that link being http or https, not all sites have gone secured, so it's a toss up as to which will be correct in all cases. Hard to predict which it will be...
  6. bear


    If you're referring to using something like a Yubikey as the login (and not 2FA), that's less desirable, I feel. It moves logging in to only needing the key instead of needing it to confirm another login method like passwords. That's not 2FA, that's back to one, and one that's easier to have stolen.
  7. cPanel. Look for cron jobs, and edit the "cron.php" one to be every 5 minutes also, just like the "pop.php" one.
  8. Ah, those are not the same cron file being run. One is for importing email, the other is the system cron.
  9. Why have you created two cronjobs? It should be one that's set for every 5 minutes (or so), and in the settings in WHMCS you tell it when you want the main one to fire (in your case, 9 AM). It uses just one cron in cPanel for all of it.
  10. bear

    Twitchy editing

    For anyone making changes to the WHMCS interface via hooks, it's a very twitchy process, at least for those of us that aren't heavily invested in learning the latest language/framework being used. Wanted to alter the garish colors used in the infobar on the admin dashboard (hot pink, really?), so created a hook to load a custom CSS for the admin area. In the dev install, it worked just as expected, so I brought it over to the live install. I'm greeted with "OOPS, something went wrong", and nothing else. sigh. After trying a few things that didn't help, set it to display the errors causing it to fall over. Seems I had another hook created a long while ago that loaded a custom CSS file. Trying to (accidentally) declare that a second time caused the compile to abort badly. Easy fix, but leaves me REALLY gun shy about changes to the live site. Don't really need anything other than to say to the folks behind coding WHMCS...please come up with a more graceful way to fail? If it's a conflict for the same thing, perhaps load neither one, and let us know something's up with maybe a popup/fade in stating "hey, there's a problem in your hooks that needs fixing" rather then nuke the page/site?
  11. bear

    Twitchy editing

    Hadn't noticed the name was the same, but you're right. At least it makes sense now. they were two different hook files, but the name in it was the same. Guess I need to keep track of what I name the functions and calls in these and make sure none get duplicated. Onward! (thanks, Brian!)
  12. bear

    Pre Select Payment Gateway For Each Currency

    Well, until WHMCS changes how (and if) they work, that is. 😉
  13. Most browsers have a shortcut for pasting as plain text. With CTRL-V being paste, also hold the SHIFT key, IE: CTRL-SHIFT-V. For me, anyway, that will ignore all pasted formatting in most programs/browsers, and I use it quite a lot. One notable exception is Opera. For some reason they use that shortcut to follow a link, IIRC, but allows you to edit that in preferences.
  14. bear

    WHMCS with WordPress

    Can't say I agree with this. Though WHMCS is installed on less sites, it's a FAR more valuable target for serious hackers, unless you count using WP to gain access to a server that also has that on it. As for encryption, that's breakable, at least to machine code, so not a full preventative. And as far as the exploit code being known to a single hacker, the victim and WHMCS? Hackers brag. They also sell valuable exploits they've found. If one discovers a way into WHMCS installations, they're going to sell that, and easily. It might not be until it's reasonably widespread that WHMCS learns of it and takes action. Thankfully the codebase these days seems to be pretty tight and there don't seem to be any known exploits, but that doesn't mean there isn't one out there someone's found and is quietly using/selling. It's the nature of software, especially once the code gets really large.
  15. There don't seem to be any updates available, and it's still on the version with hard coded dates here. I'm guessing it's a low priority for them.
  16. More likely some third party baby.
  17. Not in our experience. Though we've offered the free certs to those that ask, every single one opted for a paid certificate instead, even if just a cheap Comodo one. My customers aren't always the most technically savvy, but the notion of something free to secure them is apparently off putting. Your result will most likely vary.
  18. Not getting it. Joke? Dig?
  19. One of many reasons I don't enable the marketplace in mine. 😉
  20. bear

    Client groups

    Those of us that have been here a long while have noticed that the obscurity and difficulty of participating in that feature request section leaves people not bothering. If they do bother, most of the features aren't then implemented unless a lot more people participate. I do have a question, though; what do you feel is the difference between "traction" and "popularity" in this context? I mean, if a lot of users say they want it, that makes it "popular" and at the same time gives it "traction", I'd say. How do *you* define those?
  21. Not if you download it locally to call it from your own server. 😉
  22. There may be legal restrictions on that, but I have no experience using it. I know places like Wix state you can't ever take it with you, so I'd assume the folks at Weebly thought of this also.
  23. Still a bit vague on the Weebly site, but it *looks* like it terminates the whole thing, removing the account from Cpanel also. https://cloud-developer.weebly.com/cl_plugins_whmcs_customer.html
  24. I wouldn't be surprised if it's hard coded behind the encryption then. Quite a lot of things that probably doesn't need to be is, and that makes things just that much harder.
  25. Without trying it, I'd guess it's this bit within the announcements.tpl around line 22. {if $announcement.text|strip_tags|strlen < 350} <p>{$announcement.text}</p> {else} <p>{$announcement.summary} <a href="{routePath('announcement-view', $announcement.id, $announcement.urlfriendlytitle)}" class="label label-warning">{$LANG.readmore} &raquo;</a> </p> {/if} Change that "350" and if it's longer than that it should display the "...more" link. Again, it's not tested. 😉

Important Information

By using this site, you agree to our Terms of Use & Guidelines