Jump to content


Popular Content

Showing content with the highest reputation since 06/06/20 in all areas

  1. 5 points
    I've seen there's a feature request submitted 7 years ago about bulk auto recalculate. I know you can do that from phpMyAdmin or with a script but enough is enough. <? /** * Bulk Auto Recalculate Client Domain & Products/Services * * @writtenby Kian * */ use WHMCS\Database\Capsule; add_hook('AdminAreaHeaderOutput', 1, function($vars) { if ($vars['filename'] == 'clientssummary' AND $_GET['userid'] AND in_array($_GET['kata'], array('bulkAutoRecalculateP', 'bulkAutoRecalculateD'))) { $adminUsername = ''; // Optional for WHMCS 7.2 and later if ($_GET['kata'] == 'bulkAutoRecalculateP') { foreach(Capsule::table('tblhosting')->where('userid', '=', $_GET['userid'])->pluck('id') as $v) { localAPI('UpdateClientProduct', array('serviceid' => $v, 'autorecalc' => true), $adminUsername); } header('Location: clientssummary.php?userid=' . $_GET['userid']); die(); } elseif ($_GET['kata'] == 'bulkAutoRecalculateD') { foreach (Capsule::table('tbldomains')->where('userid', '=', $_GET['userid'])->pluck('id') as $v) { localAPI('UpdateClientDomain', array('domainid' => $v, 'autorecalc' => true), $adminUsername); } header('Location: clientssummary.php?userid=' . $_GET['userid']); die(); } } return <<<HTML <script> $(document).ready(function(){ $('[href*="affiliates.php?action=edit&id="], [href*="clientssummary.php?userid="][href*="&activateaffiliate=true&token="]').closest('li').after(('<li><a href="#" id="kata_BulkAutoRecalculate"><i class="fas fa-fw fa-sliders-h" style="width:16px;text-align:center;"></i> Bulk Auto Recalculate</a></li>')); $('#kata_BulkAutoRecalculate').on('click', function(e){ e.preventDefault(); $('#modalAjaxTitle').html('Bulk Auto Recalculate'); $('#modalAjaxBody').html('<div class="container col-md-12"><div class="row"><div class="col-md-6 text-center"><div class="panel panel-default"><div class="panel-body"><p><i class="fas fa-box fa-5x"></i></p><p><small>Auto Recalculate Customer\'s <strong>Products/Services</strong></small></p><p><a href="clientssummary.php?userid={$_GET['userid']}&kata=bulkAutoRecalculateP" class="btn btn-info btn-block">Recalculate Now »</a></p></div></div></div><div class="col-md-6 text-center"><div class="panel panel-default"><div class="panel-body"><p><i class="fas fa-globe fa-5x"></i></p><p><small>Auto Recalculate Customer\'s <strong>Domains</strong></small></p><p><a href="clientssummary.php?userid={$_GET['userid']}&kata=bulkAutoRecalculateD" class="btn btn-info btn-block">Recalculate Now »</a></p></div></div></div></div></div>'); $('#modalAjax .modal-submit').addClass('hidden'); $('#modalAjaxLoader').hide(); $('#modalAjax .modal-dialog').addClass('modal-lg'); $('#modalAjax').modal('show'); }) }) </script> HTML; });
  2. 2 points
    Well you can't. This is what I mentioned in my other reply. In the past I did exactly that. I just rewrote some URL's and paths in the template files to match my .htaccess rules and added some custom rules here and there. It was hard work but it worked. I even made then language independent and it was beautiful, each support article on its own URL that told the server what language to load. Worked better than what WHMCS provided out of the box for SEO friendly URL's. Then WHMCS 7 came it was all destroyed. That is not possible anymore starting with WHMCS 7. Most URL's are not in the template files anymore, that means you cannot change them because you don't have access to them. They are generated on the fly from PHP, like the Laravel garbage magic that so many hard core developer's complaint. The URL's in WHMCS are now also magic, and not user controllable. Example: You decide to rename: whmcs/index.php/password/reset/begin to: whmcs/login/reset With some of your server rules. That will not work because once you activate the SEO friendly rules in your admin side on WHMCS, it decides to use its own hard-coded method and it will redirect to what WHMCS decides disregarding your rules completely. So while you can load the page: whmcs/login/reset Initially. When the user post the form, it will fail because it will try to load whmcs/index.php/password/reset/begin instead of your URL and you cannot modify the POST url because its not in the templates anymore. To resume. You cannot rewrite URLs or have custom ones anymore with .htacess. It was possible in the past, its not possible now as they are hard coded. And you might say, no problem, I will just modify the code in the templates, well no! They are behind IonCube files. That means you cannot edit those files. Its WHMCS property. Sounds unbelievable? Well it is. You cannot change the links and url's on your own site because WHMCS decided they are in control now of the HTML output that is displayed on your website and customers. Don't bother paying for support. They will not help you with this. They don't even know what .htaccess is and support does only get you canned replies, not actually an open channel to the developers that might understand the problem. They will just tell you that support does not include customizations and changes to WHMCS. WHMCS technical support is level 1. I don't bother with that. In most cases they will even argue with you that something is not a bug and you need to insist several times until they admit it as a bug. There is no WHMCS alternative with all the features. This is why most of us are still here. If there was one, we would all move as fast as possible. Not because WHMCS is bad, all software's have bugs, but because they don't listen to users or care about feedback. They don't even want to allow customers to a bug tracker to see the status or existing bugs which every single software company in the planet has. In my experience WHMCS was amazing, version 4, 5, 6. Because if there was a bug, you could always fix it somehow but version 7+ is a total black box. Everything is behind obfuscated code that only WHMCS controls, this makes it impossible to do some stuff or even fix things or at least implement workaround until a patch is out. Even files that are open source libraries, they encoded (not sure if by mistake or on purpose). The problem is they don't really have competition. And that tends to hurt us customers as they don't have to improve over time. Why does this URL issue in particular angers me this much? Because I'm forced to have the same WHMCS front end like everyone else instead of having something customized to my site. It makes everyone running WHMCS look like amateurs running a similar WHMCS page structure, links and customer flow...
  3. 2 points
    Yes, this works - I'm a contact under the account which is owned by my manager, and I'm able to create tickets through that.
  4. 2 points
    Hi @aivcastaneda, you will find your answer in the 2nd answer from Brian in this post : it belongs to the SSL page but it is the same way to translate the Sitelock Page. Greetings Christian
  5. 2 points
    Personally I feel like it makes sense that tapping on the subject of the ticket opens it rather than adding it to the selection - sometimes I might need to open it briefly to check it's the right one to delete. This is how it works on various other apps such as Gmail as well.
  6. 2 points
    Hi everyone! Since I spend most of my time during the day on the WHMCS admin dashboard, answering tickets, activating services, following up with stuff, etc. I wanted to keep eye strain to a minimum, so I recently created this CSS file to turn our admin area into a dark look and feel. ------- Today, I'd like to share with you steps to achieve that. The file is compatible with Blend theme of v7.9.2 of WHMCS, I haven't tested it on the other versions yet. The process is pretty simple and straightforward IF YOU HAVEN'T MADE ANY CUSTOMIZATIONS to your Blend theme already. So just download the attached file (blend-dark.zip) and extract it anywhere in your computer. Next, open the folder and then the "images" folder to locate the (logo-dark.psd) file to edit it by placing your own logo there. Then save it as "logo-dark.gif" replacing the already existing file. Now you should end up with a file tree like this ... blend |__ css | |__ admin-dark.css | | |__ images | |__ logo-dark.gif | |__ logo-dark.psd | |__ header.tpl Now back top and compress your "blend" folder ... Name it something memorable, like "blend-2222.zip" in this example. Next navigate to the "admin" folder inside your WHMCS installation, and open the "templates" folder (based on your customizations, the "admin" folder name may differ, so this here presumes the default setting). /path/to/whmcs/admin/templates/ Next make sure to ZIP and backup your current Blend theme folder (name it something like "blend-original.zip). Next, upload the "blend-2222.zip" you compressed earlier to the "templates" folder and unzip it, and you should be all set and ready! If you have any notes or additions, please feel free to add! Also, any mistakes or errors are unintentional, please feel free to share and highlight them. Wishing everyone a good day! - Mohamed
  7. 2 points
    Hi @WHMCS John, Thanks for that. I can see that v1.0.2 resolves the timestamps and also truncates the ticket number properly. Cheers!
  8. 2 points
    Check out https://www.supportpal.com/integrations/whmcs-integration & https://docs.supportpal.com/current/WHMCS+Integration I've used it myself in a past life and it practically looks the same as WHMCS support its all nicely embedded in and has a similar look and feel as WHMCS Support Tickets, as an admin you would answer the tickets from the SupportPal UI
  9. 2 points
    there was an abandoned cart addon, but I think that ironically got abandoned. the only addon I can think of which would employ exit intent popups would be Exit Offers - but it's not free, and I don't know if it still works with the latest release.
  10. 2 points
    Would love to see an overhaul of themes so that we're not stuck with an old version of Bootstrap. Ideally, removing the dependency entirely so you can switch in something other than Bootstrap should you wish to. Also child themes ala Wordpress so upgrades can be done to a main theme but custom changes are isolated. An easy way to create and edit custom pages. Ability to edit and re-order the menu in the client area. Splitting of updates to WHMCS into streams for security updates and feature updates. Better responsive mobile layout in the admin area. Consistent use of OBVIOUS buttons & links in the client area. The number of times I've had to explain to clients they can click on the line in the table, anywhere, but no don't click on the URL...
  11. 1 point
    Are there any other "support" related features that you think you need, but are missing in the app? What do you think could be improved? Please share your thoughts 🙂
  12. 1 point
    yes. the simplistic way might be to do it in the template(s), e.g {if $loggedin}output template design A{else}output template design B{/if} or you could redirect to a specific orderform template using a hook based on the loggedin status. how different will the orderforms designs be e.g are they slight variations on each other or radically different ??
  13. 1 point
    Hello guys If I am using a developer to customize my current whmcs template what are the must have credentials he need? I don't want to give more information than I need to
  14. 1 point
    if they've got their own WHMCS install, then they wouldn't necessarily need access to yours and should be able to develop it locally. even if they do need access, then they should usually only need access to that specific template folder (or a duplicate of it) - though it all depends on the extent of the modification and whether those changes are going beyond direct changes to the template code.
  15. 1 point
    it's only been five months - give it until the Olympics after next and check again. ⏳ one prolific beta tester is hardly the community... how many users are actually testing the app? double figures at best I suspect. besides, we all know that they like to give the pretence of listening (occasionally they might) during a beta period... outside of that, you might as well kiss the camel. 🐪
  16. 1 point
    1) I don't seem to be able to attach images such as png and jpg files when replying to a ticket. 2) Could the colour of the selected status in the menu be reviewed please? It seems to be yet another accessibility issue as it's just so hart to read. 3) Similar to the issue I raised here, the status menu also never seems to close unless you tap in the same area as when you opened it. This means it is possible to continue typing while the text goes behind the menu. You can even make text selection which end up going behind the menu while it's still open. In addition, opening the menu should really stop the keyboard from displaying otherwise it's impossible to select something towards the bottom of the menu.
  17. 1 point
    Hi @Remitur, Are you using MultiPHP INI and where is your crons folder relative to your WHMCS install? If your crons folder is in your "home" directory it will use the local PHP INI and values for there. If none are set it will inherit the system values. So even if you change the values in your WHMCS install directory (I guess within public_html) it will report your changes accurately for that "folder" but not the values that are being applied when your cron jobs run in their particular location.
  18. 1 point
    I don't know - but i'm testing it successfully on Six & Standard_cart, so if it works for you with S&SC, then it's likely one of the custom themes; if it doesn't work with S&SC, then something else might be going on.
  19. 1 point
    which version of WHMCS are you using ?? if it's very old, then you're going to have switch PHP versions to 5.6 or earlier.
  20. 1 point
    Hi @WHMCS SamP, This was actually partly resolved in 1.0.4, although I've still got the same issue in 1.0.5. When you first load the app, it doesn't display the number of tickets, this only happens when you tap on the 'tickets' to view them, then it loads and displays how many there are. Surly it should tell you how many there are when you first open the app? Thanks
  21. 1 point
    Hi @WHMCS SamP, This is now much better, although I would like to see lighter coloured icons (maybe the same colour as the text?). This should help with accessibility and be easier to on the eye. In addition, the menu across the bottom of the app (home, tickets, settings, etc) it would be great if the icons and text could be lighter so there is more contrast between them and the background. It's currently not the easiest to read, so this would greatly help with accessibility. Thanks
  22. 1 point
    Annyeonghaseyo? 🙂 one of the few words I still remember from times when lived and studied in Korea 🙂 welcome! how is the hosting niche in South Korea?
  23. 1 point
    has anyone said that it's insecure? I would maintain that it's LESS secure than logging in. even if you're hosting the domain? what happens if the client has subaccounts that are entitled to receive Quote Emails and accept them ? you could then get yourself into a situation where one of them, or someone else who checks their mail, has accepted the quote, but you've got no way of knowing who is accepting it without them logging in - even if you were logging IPs etc in the hook.
  24. 1 point
    Not to mention that if you have a page that allows to accept quotes by simply visiting page.php?quoteid=1, who stops a lamer from creating a never ending loop? page.php?quoteid=1 page.php?quoteid=2 page.php?quoteid=3 page.php?quoteid=4 page.php?quoteid=5 ... page.php?quoteid=9999 It ruins your business. Even my approach is not foolproof but of course an hash is more secure than an ID. I don't think a lamer would waste time to brute force a string like a7a4d8eb90f6b1b6eb8289d36ef214978 or to reverse engineer the hash registering X times, asking N quotes and stuff like that.
  25. 1 point
    adding the links yourself in the description is the simplest way - assuming you can upload the images yourself. there would be addons available in Marketplace, but they won't be free and will cost a one-off $25 - $40 USD. 🤑
  26. 1 point
    Something like status colors in the Status Dropdown and everywhere else in the app, to maintain consistency.
  27. 1 point
    well done. i'll give you two presents and then i'm gone until Saturday... 🎁 if you're intent on doing this in the viewinvoice template, then it would be... {if $paymentmodule == "localbank"} <td>: 123123{$clientsdetails["customfields2"]}</td> {else} <td>: 77777{$clientsdetails["customfields2"]}</td> {/if} or... {if $paymentmethod == "Local Bank"} <td>: 123123{$clientsdetails["customfields2"]}</td> {else} <td>: 77777{$clientsdetails["customfields2"]}</td> {/if} either should work and you just need to decide whether to check for the gateway name (localbank) or its display name "Local Bank". if you're going to do it in localbank.php, then it will work there too and remove the need for you to edit the viewinvoice template (and worry about updates removing those changes in the future)... function localbank_link($params) { $code = '<p>' . '123123 ' . $params['clientdetails']['customfields2'] . '</p>'; return $code; }
  28. 1 point
    Just force HTTPS redirect in WHM settings, if you have a valid certificate and you'll be all set. Otherwise, you can manually update the 's' in each of the templates. https://documentation.cpanel.net/display/68Docs/Tweak+Settings+-+Redirection
  29. 1 point
  30. 1 point
  31. 1 point
    merge the two if statements, drop one of the closing IFs and the else (assuming there is nothing after the else you haven't removed above)... ? Access Credentials ============================= Windows Server has been installed and Remote Desktop is enabled: IP Address/Host: {$service_dedicated_ip} Username: Administrator Administrator password: {$service_password} {foreach from=$service_config_options item=configoption} {if $configoption.option eq "IPMI KVM" && $configoption.value eq "Yes"} IPMI Details ============================= IPMI IP Address: {$service_custom_field_ipmiipaddress} IPMI Username: {$service_custom_field_ipmiusername} IPMI Password: {$service_custom_field_ipmipassword} {/if} {/foreach}
  32. 1 point
    it shouldn't do - which currency changer and which versions of PHP make it disappear ? that would be the case - as I think I have mentioned previously, logged in users CANNOT change their currency, and if they have made an order, you (as an admin) should not change it either. even if you could get the chooser to appear for clients, I don't think it would work as WHMCS would prevent it from doing so.
  33. 1 point
    Hi Sachin I have updated the app and now it's working thank you.
  34. 1 point
    YES! the dark would suffice. Regarding v8, I have a paid theme that I did heavy customizing for, would I be able to *convert* it to v8?
  35. 1 point
    a lot of the fields don't have any meaning validation. but I recognise that code from the old v5 days.. a six-year old thread... I think recent versions (e.g anything in the last few years), should prevent them running the code - but i'd certainly recommend opening a ticket with Support to double check that nothing untoward is actually happening (as opposed to just hackers randomly testing WHMCS installs to see if they can be hacked).
  36. 1 point
    Hi Helmuts, If you do not enable these the clients will not be able to buy in those currencies, what you could do us enable them, the go to Setup > Payments > Currencies and click "Update exchange pricing" then run the update product pricing button to update all these details.
  37. 1 point
    phpinfo not light and some other popup in views send clients emails, Credit Management, edit domain pricing, that show original not dark
  38. 1 point
    After months of hard work, we are delighted to launch Single Page Checkout Order form with our most amazing theme Croster. This update of Croster includes so many other exciting features also along with some bug fixes. Our goal is to provide our users with the most convenient and unique experience with our products & services. Please have a look at all new exciting features we have added in this release to boost your experience and expectations with Croster. to see full changed logs please click here
  39. 1 point
    basically, it's still the same solution as the one I posted two years ago... in that case, it's using limits based on the client's currency and then removing a specific gateway (e.g AsiaPay) from the dropdown - if you're only removing one gateway, then you can simply replace the content of that string... if it's multiple gateways, then you'll need multiple replaces. thinking about it, there might be a need for an extra step with this solution - but if that's the case, you'll know as soon as you test it... that step will I suspect have been added to another hook posted elsewhere, but if you don't run into the issue, then you shouldn't need to worry about it.
  40. 1 point
    if they both had the same next due date, then they would be both sent in the same invoice anyway.
  41. 1 point
    Edit the header.tpl or head.tpl file of your template and include the favicon URL including SSL (https) https://docs.whmcs.com/Help:Contents
  42. 1 point
    I never bought iWHMCS because I preferred a one time pricing (even in the $50 range), however I understand that without financial support, it couldn't get feature parity and the right updates for new platforms and screen sizes, so I am starting to change my mind. I am still a little skeptical it will continue to work over time, but I really appreciated the attempt to give away some features for free. I would love if the pricing would be nudged a bit lower, but other than that, I'm sold on it, it works now. On the visual side of things, many text labels seem to be very small on my iPhone X. I hope it gets iPad support soon, it could really work well with keyboard and mouse. Keep up the good work.
  43. 1 point
    Done! http://github.com/WevrLabs-Group/WHMCS-Blend-Admin-Theme-Dark-Mode
  44. 1 point
    it might be worth putting this in a GitHub and adding a link to it in Marketplace - who knows what's going to happen to Blend after v8, but that's going to be many months away at best.
  45. 1 point
    I urge caution if you have used or a planning to use the new domain pricing import function. There are so many domain extensions now and prices change reasonably often. It is pretty hard to stay on top of it and changing prices is tedious to say the least. So WHMCS has this new thing that will import prices from certain registries. In principle it is a great idea and it works well...but it hasn't been thought through properly by WHMCS. So you do your import and all your domain prices are updated. Nice. You can even quite decide on your margin for domains with quite fine granularity. Also nice. You run the import and you notice that there has been a price rise for a domain. You need to update the price that customers are paying (but only for that domain, so the bulk pricing updater isn't the tool for the job). In a customer > domain page you would check "Auto Recalculate on Save ". Well guess what, there is no global way to do that. If you have hundreds of domains with a range of prices, you are in trouble if you want to update them for each of your thousands of customers. WHMCS seems to have considered the first half of updating prices but have failed to realise the implications for users when it comes to the effect of an automated wholesale price change. The suggestions from WHMCS? Write my own module - thanks, but why should I do the work to fix a problem created by your software. And what makes you assume I have the skills to do that? Update each domain manually - I am still laughing... Use the bulk pricing updater - when you have a hammer, everything looks like a nail :P Add a feature request - someone did 7 years ago (!) and because it only got 34 votes it was closed and ignored - https://requests.whmcs.com/topic/bulk-auto-recalculate-option. A feature request system that is based on popularity is flawed and I won't use it. Post something here. - well I am doing that so maybe others will realise the implications of this pricing import "feature" that you might not have noticed. It shouldn't be hard for WHMCS to produce a utility to solve a problem they created, but there is a puzzling resistance to do so.
  46. 1 point
    have you heard of outline? Possible for u to develop a wireguard version? https://getoutline.org/en/home We need this client and whmcs management i.e. 1. data usage control management 2. total number of connected device per account management.
  47. 1 point
    Me gustaria alguna recomendacion para recibir pagos en efectivo en México y de ser posible también en Colombia, pero que exista un módulo para WHMCS compatible con PHP 7.2 o superior. Agradeceria su ayuda.
  48. 1 point
    Hello there I am looking for a way to change how WHMCS handles tasks in project management. i know this addon is hard-coded but perhaps this could be changed with CSS or hook. So... by default WHMCS display all tasks (completed and not completed) and also there is a check box to tick HIDE COMPLETED TASKS. I want to revert it, by default to hide all completed tasks and only if i tick do display HIDDEN COMPLETED TASKS. If i tick now to hide COMPLETED TASKS, once I refresh browser all tasks will be displayed again. Some times i have project with more than 50 tasks, and I need only to focus on UNCOMPLETED TASKS, and now it is boring to see all the time all COMPLETED TASKS. I guess CSS or hook could do that, but I do not have to right skills to do that. PS: I have custom.css on admin with @brian! hook. and also there is some style css on project manager folder on cpanel. thank you!
  49. 1 point
    I had a similar question which i created a support ticket for and will share the answer here since it is not in the general documentation. question: How is the default payment method for new clients defined? We currently have a free trial product which clients order and then after 30 days we upgrade them manually to a paid product but it seems that direct debit is then chosen as their default paymemt method but this is problem since they never left us their bank account details (we have a separate payment gateway for this). If i change the order of payment gateways for the paid product will this change their default payment method after we upgrade them? Or is their default payment method defined when they order the free product, and again, is this done by the order of payment gateways? answer: The system default payment method is the first payment gateway in the list when you view your gateways page. Then, depending on if the client choose a gateway other than the default when placing an order, that client could be using something different than 'default', and then there is the ability to set on the product level a specific gateway as well. The hierarchy is as follows: Invoice level (if you have the option enabled for clients to choose their own gateway when paying an invoice) Product level (this can be set per each product the client has by viewing the product details and changing the payment gateway here) Client level (what is set in the drop down on the clients profile page) System default (the first gateway in the list of configured gateways) Further to this, each product group you have setup with orderable products, you can hide specific gateways so only a certain one is used or vise versa. So if they order the free product, and you have only a specific gateway setup for this, then when they upgrade to the paid version and that free product gateway is not available for the paid one, it will then default to whatever is the default gateway or whatever the client has selected as their gateway in their profile.
  50. 1 point
    sure: <?php if (!defined("WHMCS")) die("This file cannot be accessed directly"); function hook_ForceEveryoneToLogin($vars) { $clientID = intval($_SESSION['uid']); $adminID = intval($_SESSION['adminid']); if ($adminID===0){ if (!in_array($vars['filename'], array("login","dologin","clientarea","pwreset", "register")) && $clientID===0){ header("Location: login.php"); exit; } } } add_hook("ClientAreaPage", 1, "hook_ForceEveryoneToLogin");
  • 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