Jump to content


Honored Contributor
  • Content count

  • Joined

  • Last visited

  • Days Won


brian! last won the day on January 16

brian! had the most liked content!

Community Reputation

2,325 Excellent

About brian!

  • Rank
    Senior Member

Recent Profile Visitors

28,422 profile views
  1. brian!

    Domain Related Queries

    do you mean ourpride.co.uk costs £10 with product A, but £8 with product B ? promotion codes, product bundles or coding with pricing override hooks would be your main options. untick the Require Domain checkbox in the particular product setup. https://docs.whmcs.com/Products_and_Services https://docs.whmcs.com/Additional_Domain_Fields
  2. brian!

    Disable Affiliate for domain names

    WHMCS should do that by default already. 🙂 https://docs.whmcs.com/Affiliates
  3. brian!

    Domain Renewal URL path incorrect

    take a look at the thread below and see if it helps.
  4. brian!

    Changing the admin theme

    we got there in the end. 🙂 btw, this isn't important, but you could probably trim those uses at the start to just the 3 below - everything else you are seemingly no longer using... use WHMCS\Module\AbstractWidget; use WHMCS\User\Client; use WHMCS\Billing\Invoice; .. or could you leave them in for future use, e.g if you're planning on having more than 4 badges any time soon.
  5. brian!

    Changing the admin theme

    I don't like that getData has two returns - the widget will only see the first (the one taken from the billing widget code) and ignore the second (hence your output). btw, some of the queries can be improved too... public function getData() { $incomeStats = getAdminHomeStats('income'); foreach ($incomeStats['income'] as $key => $value) { $incomeStats['income'][$key] = $value->toPrefixed(); } return array( 'activeCount' => Client::where('status', '=', 'Active')->count('id'), 'unpaidInvoices' => Invoice::unpaid()->count('id'), 'overdueInvoices' => Invoice::overdue()->count('id'), 'incomestats' => $incomeStats, ); } public function generateOutput($data) { $activeCount = (int) $data['activeCount']; $unpaidInvoices = (int) $data['unpaidInvoices']; $overdueInvoices = (int) $data['overdueInvoices']; $incomeThisMonth = $data['incomestats']['income']['thismonth'];
  6. brian!

    I propose a tax-free world

    don't be shy - i'm volunteering you (and your coding colleagues) for a week or two in Houston - all expenses paid by WHMCS. ✈️
  7. brian!

    Changing the admin theme

    I assume you know there are a few lines at the end missing from the above post.... i'm assuming that's just an issue with your copy&paste and not the original file. 🙂 also, have you renamed the file yet, or are you still editing the original badges.php ??
  8. perhaps it doesn't like the double caret that somehow appeared in the pasted code... <span class="pull-left">&nbsp;&raquo; {if $configoption.name|strstr:'('}{$configoption.name|strstr:'(':true}{else}{$configoption.name}{/if}: {$configoption.optionname}</span>
  9. not from the settings - though it could be acheived using an action hook.
  10. brian!

    Creating a new report

    check your PM for the mySQL query for that. 🙂 it shouldn't be difficult to add a country filter to the transactions report that would allow you to specify a 2-letter country code to search for, e.g GB, US etc.
  11. brian!

    display domain checker on custom page

    on the original default page, yes - on a custom page, they probably won't exist.... some arrays/variables are available in all pages (including custom); arrays that are available to a specific existing page, will not be available to a custom page. I should mention first that there is already a separate domain pricing page available in WHMCS - you should just need to go to yourdomain.com/domain/pricing/ (the url might change depending on your friendly URLs settings)... even if you could copy the Smarty code from the existing template (either above or domain register), to do the same on a custom page would require at least 2 arrays to be recreated using action hooks - you would probably need to play with the CSS too. there's a domain pricing table data feed, but you would need to add css or rewrite the code to make it look like the default domain pricing table.
  12. brian!

    check page using $template

    what do you want to do exactly ??
  13. brian!

    How to expand admin widget with css

    I don't see why not - the existing widget will just be querying the project management database tables, the same as any other widget does.
  14. brian!

    display domain checker on custom page

    always assume that there are... unless you find otherwise. 🙂 for example, you can't copy the code from the invoices template and expect it to work on a custom page - it won't - because the invoices template is passed arrays of data to output and a custom page won't have those arrays. we all were once.
  15. brian!

    Creating a new report

    do you need a detailed list of the transactions or just the totals for each year (and the grand total)? the usual 3 solutions are to either... find an existing report that is similar to what you want and modify it for your needs. use a MySQL query directly in phpmyadmin or similar. write a WHMCS report from scratch. ultimately, all you're doing is joining tblclients to tblaccounts, specifying only GB results and then it's just a case of working out what values you need in the results.

Important Information

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