Jump to content


Popular Content

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

  1. 2 points
    there will be at least two short-term ways to do it... edit the code in the above template. edit scripts.min.js (where there URL is defined). method 2 implies that you should be able to do it via a hook (which would be a better long-term solution), but i've not been able to get it working yet... besides, now that v7.7.1 is released, I suspect there won't be any more updates, apart from hotfixes, until May 2019 and so no harm in editing the template or js files. so if you want to edit the template... {if $service.sslStatus} {if $service.sslStatus->getClass() eq "ssl-state ssl-inactive"}<a href="cart.php?gid=11">{/if}<img src="{$service.sslStatus->getImagePath()}" data-toggle="tooltip" title="{$service.sslStatus->getTooltipContent()}" />{if $service.sslStatus->getClass() eq "ssl-state ssl-inactive"}</a>{/if} {elseif !$service.isActive} <img src="{$BASE_PATH_IMG}/ssl/ssl-inactive-domain.png" data-toggle="tooltip" title="{lang key='sslState.sslInactiveService'}"> {/if} alternatively, in scripts.js (not used by WHMCS), you can change... jQuery(document).on('click', '.ssl-state.ssl-inactive', function(e) { e.preventDefault(); window.location.href = WHMCS.utils.getRouteUrl('/ssl-purchase'); }); to... jQuery(document).on('click', '.ssl-state.ssl-inactive', function(e) { e.preventDefault(); var gidvalue="11"; window.location.href = "cart.php?gid=" + gidvalue; }); minify/compress it and save it as /templates/six/js/scripts.min.js - or if you're familiar with the minified files, you could edit scripts.min.js directly... either method should work, there is no need to do both! it's probably easier to use the template edit, but I posted the js solution because it was the first one that I wrote for this and it seems a shame to let it go to waste if others want to use or improve upon it (e.g the basis of a hook).
  2. 1 point
    Welcome to WHMCS.Community Jason aldean! We're glad you're here please take some time to familiarise yourself with the Community Rules & Guidelines and take a moment to introduce yourself to other WHMCS.Community members in the Introduce Yourself Board.
  3. 1 point
    This one should work. <?php use Illuminate\Database\Capsule\Manager as Capsule; add_hook('InvoiceCreation', 1, function($vars) { $Data = Capsule::select(Capsule::raw('SELECT t1.total, t2.credit FROM tblinvoices AS t1 LEFT JOIN tblclients AS t2 ON t1.userid = t2.id WHERE t1.id = "' . $vars['invoiceid'] . '" LIMIT 1')); $CreditBalance = $Data[0]->credit; $TotalDue = $Data[0]->total; // Apply Credit only if Credit Balance is greater than zero if ($CreditBalance) { $postData = array( 'invoiceid' => $vars['invoiceid'], 'amount' => ($CreditBalance < $TotalDue ? $CreditBalance : $TotalDue) // If Credit Balance is less than Total Due there will be a partial payment ); $results = localAPI('ApplyCredit', $postData, $adminUsername); } });
  4. 1 point
    Hi, Need more details but you can untick Require Domain (Setup > Products/Services > Products/Services > Your hosting package > Edit > Details tab > Require Domain).
  5. 1 point
    No, the issue hasn't been fixed. The problem reversed actually. In the past sometimes discount coupons were being deducted twice from the price, now they are not being deducted at all. I really don't understand why WHMCS was not able to fix the issue. This is just calculation via scripting, not some complex algorithm.
  6. 1 point
    Hey @Unity Capitalism Thanks for your post I've tested this and its working for me as per the image below have you tried clearing your cookies and cache?
  7. 1 point
    Hello, Some more requests: 1-Please add option to change the top black bar phone icon. I prefer to put whatsapp icon instead of phone on my website. 2-Please add option to show all servers instead of tabs on VPS pages, like the screenshot. 3-Please add option to put country flag on dedicated servers, like the screenshot. 4- On the dedicated screenshot, you can see that the "configure" button is changed to "out of stock" and the color of the font is changed to yellow. It wolud be amazing to have that on Croster too. All the screens are from Clouder template, with some adjustments that i made (dynamic prices, dynamic configure button, country flags, and show all VPS instead of tabs). thanks
  8. 1 point
    I would have gone straight to option 4. 🔥🙂 AdminHomepage would probably be the simplest hook if you want them on the homepage as you can just paste your HTML into the hook... possibly easier if you've already modified badges.php as per your previous thread - it's just going to be another div row in the output. none that I can think of off-hand, but either 1️⃣ or 2️⃣ should be ideal for your needs.
  9. 1 point
    purely in terms of the client notes concept, a non-programming way to do that would be to use a Product Custom Field (probably a text area I would have thought) - by default, a PCF should be shown on the product details page in the client area. with regards to username/password etc, where exactly on the page do you want to show them ? I have a sidebar hook that can show service information on the product details page... I fixed the above hook code for a client in July, but it was originally written years ago by Tom @ WHMCS Guru - I can post the updated hook if this is what you want to use.
  10. 1 point
    Hi Everyone! I absolutely agree here that Capsule is the way forward. We recently updated the sample addon module to reflect this however, it looks like the Developer Documentation requires an update too. I've opened up an internal case with our Documentation team to have this updated.
  11. 1 point
    Hello @aissa el youssfu Thanks for your post, can you confirm if you have Six Month and Annual pricing setup for this product in your admin panel?
  12. 1 point
    one other thing that I should have mentioned, though you may probably be aware of it already, but if you've modified the badges.php widget, the automatic updater will probably replace it during an update - so keep a backup copy of it just in case. the other way would be to duplicate the file, give it a filename of badges2.php; call the class in the code Badges2 instead of Badges; optionally rename the Title in the code and disable the default Badges widget in the Show/Hide Widgets menu... the other weird thing with these widgets is that they are all seemingly hardcoded with English output. 🙄 I would have thought that they should be using language strings by now... it wouldn't be difficult to do that (especially if those strings already exist in the language files).
  13. 1 point
    there isn't. without seeing the code, they possibly based it on my post below from 2016... now back then, WHMCS must have used glyphicons for the icons - these days, they're using FA5, but the principle would still work... it's just a case of tweaking the layout and adding an appropriate icon for each category. if you know that URL, then looking at their code could save you some time figuring out how they did it. 💡
  14. 1 point
    FWIW, i'm not keen on the use of "Advisors" as one of the ranks - surely, the definition of an advisor is someone who is qualified to give advice??? users making a lot of posts ASKING questions, or replying to their own threads doesn't necessarily mean that they should be giving technical advice (which calling them advisors implies) - for some users, yes that's fine... but I would have thought not for the majority of users with Advisor type ranks... therefore, using the word "Advisor" in the ranks is potentially confusing... I appreciate that you like change for changes sake, and wanted to get away from the generic use of "Members" for everyone, but using advisor just seems silly to me. and don't get me started on "Collectors" - what are they collecting ??? 🙄 btw - why the use of US English in the titles, e.g "Honored Contributor" ?? that looks plain wrong to me. in the meantime, i've taken the liberty of blocking these rank titles in the browser with uBlock, so i'll never have to see them again. 😎 P.S - the search function is seemingly broken, e.g if I search for knowledgebase, it's returning 7 results! if I search my local backup of threads, I can find 96 posts with knowledgebase just in the title - that's not including posts where it might be mentioned in the body.
  15. 1 point
    Haha, right?! Oh, not available for download here, come to our site and grab it from there... for $30 a pop. So much for "FREE". This should be taken down by mods.
  16. 1 point
    Thank you very much for advise, of course we will try add more options and also consider about mega menu too. But we will wait for more votes for mega menu.
  17. 1 point
    Hello there Almost 3 years using WHMCS I can not find a friendly and better platform out there for automation and managing purposes with possibility to have your website and client area all on same package, so WHMCS came to stay for long long time. The point is that WHMCS is not an Accounting software and also there is no module that could make WHMCS became accounting software, so using a parallel software is needed. Until now I have been using an accounting software on personal laptop because there was no cloud version until now. Now I will have all 2 platform on cloud WHMCS + Accounting software, but to avoid replicating jobs on 2 platform I have search that I could integrate them. Zappier can do that, but after free plan it cost 19.99/month (not cheap) if you consider you are paying WHMCS license+ host+Zapier+Accounting software +Goverment TAX 😓 For small business this solution could be expensive!!! Perhaps WHMCS could consider partnered with some good international accounting software to make our lives easier, so we would just need to register\certified that accounting software on our region 😶 If anyone have found a better way to make things works cheaper please share your good practices for who are starting and wants things done on the right way. Best regards
  18. 1 point
    @Cubeboy in V7.8.x the "Credit Card Information" has been replaced by Pay Methods, are you using a custom admin theme? Your Client area theme will also need updating to support Pay Methods, you'll find a copy of the changes made to the Six and Standard Cart Templates in our release notes https://docs.whmcs.com/Version_7.8.0_Release_Notes#Template_Changes which should help you
  19. 1 point
    Good point but it is written in documentation 😅 I just copy/pasted the snippet 😛 That page should be updated. Sadly I didn't notice it the full_query() statement because it means nothing to me. I stopped using the "deprecated way" years before it was deprecated and I don't use Capsule for a lot of good reasons. It was not my intention to recommend anything about DB connection.
  20. 1 point
    Do you love working with internet technologies and helping people? Do you know WHMCS and Website Hosting? If so, we want you to join team WHMCS! As you can see from the photo, we're a friendly bunch, and we are looking for a new Technical Analyst to join our team --> The type of applicants we are looking for should be passionate about helping customers resolve issues & answering queries they have. Excellent written communication, advanced problem solving and troubleshooting skills, and being able to work independently are a must. Having experience with PHP development, and having the ability to review & understand PHP code is a bonus. We are looking for applicants based worldwide for this remote position. Because of that a stable internet connection required. Experience: Experience with troubleshooting and debugging PHP and MySQL Installation and configuration of PHP Applications within Linux and Windows environments Familiarity of WHMCS software, configuration and implementation Good working knowledge of HTML, CSS and Javascript Eligibility Requirements: High School diploma or equivalent; One year of web hosting industry experience or other related work preferred Previous experience building addons, hooks or modules for WHMCS preferred Familiarity of web hosting control panels or payment gateway APIs preferred If that sounds like you, send us your resume: CLICK HERE TO APPLY! We can't wait to hear from you.
  21. 1 point
    Hasta donde tengo entendido, tú puedes crear tus propias traducciones. Lo que hice fue basarme en los modelos en inglés y las personalicé a mi gusto. No cabe duda que en español tenemos algunas prácticas de escritura muy distintas a las del inglés, así que la mejor opción para mí es hacerlas a mano. Es un poco de trabajo, pero pocas veces las tocas de nuevo.
  22. 1 point
    @WHMCS John - when you get a moment, can you check this for me... on my v7.7.1 dev (clean install of v7.7.0 with a manual update using the incremental patch to v7.7.1), i'm seeing the following... the template is "Six" (clean), the orderform template is "Standard_cart" (again clean) and the product group is using the default orderform (standard_cart) template... yet if you look at the source code for the page, it's using the "Boxes" error.tpl page.. <link rel="stylesheet" type="text/css" href="templates/orderforms//style.css" /> <div id="order-boxes"> <div class="header-lined"> <h1>Out of Stock</h1> </div> <p>We are currently out of stock on this item so orders for it have been suspended until more stock is available. For further information, please contact us.</p> <p class="text-center"> <a href="javascript:history.go(-1)" class="btn btn-default">&laquo; Go back & try again</a> </p> </div> I haven't altered the URL in the <link> - that's exactly how it looks in the browser... so it's not using the error.tpl from standard_cart, it's using error.tpl from "boxes"... if I rename "boxes" to "zboxes", only then does it use the standard_cart/error.tpl template... even if I specify "standard_cart" in the product group settings, it still uses "Boxes"... i've done a complete reupload from the v7.7.1 full zip and that hasn't changed the situation...if it's not a bug, but a quirk in the devs, then I can live with it... but thought it worth mentioning in case it wasn't... also, all my v7 devs that i've tested seem to do the same thing - they were all clean installs, but using duplicated versions of the previous dev database... i've just tried v7.6 with a clean database and i'm seeing exactly the same thing... if I add a {debug} to the boxes/error.tpl template, then I see that $carttpl doesn't exist (which is implied by that <link> anyway)... any ideas? if you wanted the error template to be full-width, you could either edit the template to remove the sidebars, or rewrite the template to check to see if there are any sidebars (pointless if John says there are never any), and adjust the output accordingly.
  23. 1 point
    Hi @NikRB, The next thing to try is: Navigate to Setup > MarketConnect. Click Manage any active provider Click the Products tab Click on a product and make sure a yearly price is specified Click Save Changes
  24. 1 point
    Hello Brian, Thank you very much for your help. With your tips I was able to code what I needed. Here you have the code, as it can be useful for someone else. <?php use WHMCS\View\Menu\Item as MenuItem; add_hook('ClientAreaSecondarySidebar', 1, function(MenuItem $secondarySidebar) { if (APP::getCurrentFileName()=="submitticket"){ if (!is_null($secondarySidebar->getChild('Support'))) { }else{ $secondarySidebar->addChild('sidebar1', array( 'label' => Lang::trans('navsupport'), 'order' => '10', 'icon' => 'fa-support' )); $secondarySidebar->getChild('sidebar1') ->addChild('child1', array( 'label' => Lang::trans('clientareanavsupporttickets'), 'uri' => 'supporttickets.php' )); $secondarySidebar->getChild('sidebar1') ->addChild('child2', array( 'label' => Lang::trans('announcementstitle'), 'uri' => 'announcements' )); $secondarySidebar->getChild('sidebar1') ->addChild('child3', array( 'label' => Lang::trans('knowledgebasetitle'), 'uri' => 'knowledgebase' )); } } });
  25. 1 point
    yes, ticket status can be obtained from the $status variable, but it contains HTML code along with the status value - so you check for the $status variable containing the required string and not equal to it... <?php use WHMCS\View\Menu\Item as MenuItem; add_hook('ClientAreaPrimarySidebar', 1, function (MenuItem $primarySidebar) { global $status; if (strpos($status, Lang::trans('supportticketsstatusonhold')) !== false) { $footer = '<div><button class="btn btn-success btn-sm btn-block" onclick="jQuery(\'#ticketReply\').click()"><i class="fa fa-pencil"></i> Reply</button></div>'; if (!is_null($primarySidebar->getChild('Ticket Information'))) { $primarySidebar->getChild('Ticket Information') ->setFooterHtml($footer); } } }); ...and because the ticket status output uses the client's language choice, i've used the Lang:trans feature to ensure it should work in all the default languages.

Important Information

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