Jump to content

Modificar Hook para aceitar automaticamente pedidos grátis (sem fatura)


Recommended Posts

Achei um hook que aceita o pedido automaticamente quando a fatura é marca como paga (usem, vale muito a pena #FicaADica) e gostaria de modificá-lo para fazer o mesmo só que com pedidos grátis (sem fatura). Algum gênio do WHMCS consegue modificá-lo? Seria de grande ajuda para muitos aqui do fórum, eu acho.

Obs: total créditos para o Davide Mantenuto da Kamataze por disponibilizar esse hook

Citar

<?php

/**
 * Automatically Accept Order when invoice is Paid
 *
 * @package     WHMCS
 * @copyright   Katamaze
 * @link        https://katamaze.com
 * @author      Davide Mantenuto <info@katamaze.com>
 */

use WHMCS\Database\Capsule;

add_hook('InvoicePaid', 1, function($vars)
{
    $orderID = Capsule::table('tblorders')->where('invoiceid', '=', $vars['invoiceid'])->pluck('id')[0];
    if (!$orderID): return; endif;

    $invoiceTotal = false; // Auto-accept order based on invoice total. The script performs currency conversion automatically. Leave false to auto-accept everything
    $operator = '<='; // Use "<=" to auto-accept orders less than or equal to $invoiceTotal. Use ">=" for the opposite

    if ($invoiceTotal)
    {
        $currency = Capsule::select(Capsule::raw('SELECT t3.rate FROM tblinvoices AS t1 LEFT JOIN tblclients AS t2 ON t1.userid = t2.id LEFT JOIN tblcurrencies AS t3 ON t2.currency = t3.id WHERE t1.id = "' . $vars['invoiceid'] . '" AND t3.default = "0" LIMIT 1'))[0];
        $invoiceTotal = ($currency ? $invoiceTotal * $currency->rate : $invoiceTotal);

        if (Capsule::table('tblinvoices')->where('id', '=', $vars['invoiceid'])->where('total', ($operator == '>=' ? '<=' : '>='), $invoiceTotal)->pluck('id')[0]): echo 'NON FACCIO L\'AUTO ACCEPT'; return; endif;
    }

    $adminUsername = ''; // Optional for WHMCS 7.2 and later
    localAPI('AcceptOrder', array('orderid' => $orderID), $adminUsername);
});

 

 

Link to post
Share on other sites

  • Replies 7
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Opa, na verdade esse hook eu que pedi para ele assim como tem o que quando cancela a fatura ele cancela o pedido, porem esse que você postou ele tem um problema que mesmo os pedidos pagos em alguns mo

Opa, obrigado por pedir para ele rs, tá ajuda muito por aqui. Tinha visto em um desses sites que vendem módulos algo do tipo mas por um preço absurdo e mensal, não valeria nem um pouco a pena. Quando

Galera segue script para aceitar pedidos automaticamente quando a fatura e marcada como paga <?php use WHMCS\Database\Capsule; add_hook('InvoicePaid', 1, function($MMHospedagem) { $Numero

36 minutos atrás, Carlos Dorelli disse:

Achei um hook que aceita o pedido automaticamente quando a fatura é marca como paga (usem, vale muito a pena #FicaADica) e gostaria de modificá-lo para fazer o mesmo só que com pedidos grátis (sem fatura). Algum gênio do WHMCS consegue modificá-lo? Seria de grande ajuda para muitos aqui do fórum, eu acho.

Obs: total créditos para o Davide Mantenuto da Kamataze por disponibilizar esse hook

 

Opa, na verdade esse hook eu que pedi para ele assim como tem o que quando cancela a fatura ele cancela o pedido, porem esse que você postou ele tem um problema que mesmo os pedidos pagos em alguns momentos ele não esta fazendo a baixa, já mandei um email para ele estou aguardando ver a correção dele, funciona na versão 8 sem problemas.

Link to post
Share on other sites
36 minutos atrás, maisonmdsgreen disse:

Opa, na verdade esse hook eu que pedi para ele assim como tem o que quando cancela a fatura ele cancela o pedido, porem esse que você postou ele tem um problema que mesmo os pedidos pagos em alguns momentos ele não esta fazendo a baixa, já mandei um email para ele estou aguardando ver a correção dele, funciona na versão 8 sem problemas.

Opa, obrigado por pedir para ele rs, tá ajuda muito por aqui. Tinha visto em um desses sites que vendem módulos algo do tipo mas por um preço absurdo e mensal, não valeria nem um pouco a pena. Quando ele corrigir avisa a gente aqui no tópico, vai ajudar muita gente 😀

Link to post
Share on other sites
4 minutos atrás, Carlos Dorelli disse:

Opa, obrigado por pedir para ele rs, tá ajuda muito por aqui. Tinha visto em um desses sites que vendem módulos algo do tipo mas por um preço absurdo e mensal, não valeria nem um pouco a pena. Quando ele corrigir avisa a gente aqui no tópico, vai ajudar muita gente 😀

Sim, aviso sim pode deixar ele tem um repositório no GitHub, assim que ele corrigir eu posto os link de todos até para o pessoal não usar e ter problemas.

Link to post
Share on other sites

Galera segue script para aceitar pedidos automaticamente quando a fatura e marcada como paga

<?php

use WHMCS\Database\Capsule;

add_hook('InvoicePaid', 1, function($MMHospedagem)
{
    $NumeroPedido = Capsule::table('tblorders')->where('invoiceid', '=', $MMHospedagem['invoiceid'])->pluck('id')[0];
    if (!$NumeroPedido): return; endif;
    
    localAPI('AcceptOrder', array('orderid' => $NumeroPedido));
});

Voce deve criar um arquivo .php e colocar dentro da pasta hooks

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.




×
×
  • Create New...