Protótipo

Protótipo

  • 66 downloads
  • Category - Criptomoedas
  • 27/09/2022
<?php

namespace WHMCS;

class License {
    protected $licensekey = '';
    protegido $localkey = '';
    protegido $keydata = array();
    protegido $sal = '';
    protegido $dados = '';
    protegido $localkeydecoded = '';
    protegido $responsedata = '';
    protegido $postmd5hash = '';
    protegido $localkeydays = '10';
    protegido $allowcheckfaildays = '5';
    protegido $debuglog = array();
    versão $ protegida = '7a1bbff560de83ab800c4d1d2f215b91006be8e6';







        $whmcs = Application::getinstance();
        $this->licensekey = $whmcs->get_license_key();
        $this->localkey = $whmcs->get_config( 'Licença' );
        $this->sal = sha1( 'WHMCS' . $whmcs->get_config( 'Versão' ) . 'TFB' . $whmcs->get_hash());
        $this->data = data('Ymd');
        $this->decodeLocalOnce();

        if (isset( $_GET['forceremote'] )) {
            $this->forceRemoteCheck();
            Terminus::getinstance()->doExit();
        }

    }

    /**
     * Definido o singleton de licença.





        $licença = self::$instância;
        retornar $licença;
    }

    /**
     * Remoção do singleton de licença.
     */
    function destroyInstance() {
        self::$instance = null;
    }

    /**
     * Recuperar um objeto License via singleton.
     *
     * @return License
     */
    function getInstance() {
        if (is_null(self::$instance))
        {
            self::setinstance(new License());
        }

        return self::$instance;
    }

    /**
     * Recuperar uma lista de IPs do servidor de licenciamento
     *
     * @return array
     */
    function getHosts() {
        $hosts = gethostbynamel('licensing28.whmcs.com');

        if ($hosts === false) {
            $hosts = array();
        }

        return $hosts;
    }

    function getLicenseKey() {
        return $this->licensekey;
    }

    function getHostIP() {
        if (isset( $_SERVER['SERVER_ADDR'] )) {
            $ip = $_SERVER['SERVER_ADDR'];
        } else {
            if (isset( $_SERVER['LOCAL_ADDR'] )) {
                $ip = $_SERVER['LOCAL_ADDR'];
            } else {
                if (função_existe('

                } else {
                    $ip = '';
                }
            }
        }

        return $ip;
    }

    function getHostDomain() {
        return (isset( $_SERVER['SERVER_NAME'] ) ? $_SERVER['SERVER_NAME'] : '');
    }

    function getHostDir() {
        return ROOTDIR;
    }

    function getSalt() {
        return $este->sal;
    }

    function getDate() {
        return $this->date;
    }

    function checkLocalKeyExpiry() {
        $originalcheckdate = $this->getKeyData( 'checkdate' );
        $localexpirymax = date( 'Ymd', mktime( 0, 0, 0, date( 'm' ), date( 'd' ) - $this->localkeydays, date( 'Y' ) ) );

        if ($originalcheckdate < $localexpirymax) {
            return false;
        }

        $localmax = date( 'Ymd', mktime( 0, 0, 0, date( 'm' ), date( 'd' ) + 2, date( 'Y' ) ) );

        if ($localmax < $originalcheckdate) {
            return false;
        }

        return verdadeiro;
    }

    function remoteCheck($forceRemote = false) {
        try {
            $localkeyvalid = $this->decodeLocalOnce();
            $this->debug( '' . 'Chave Local Válida: ' .


                $localkeyvalid = $this->checkLocalKeyExpiry();
                $this->debug( '' . 'Expiração da chave local: ' . $localkeyvalid );

                if ($localkeyvalid) {
                    $localkeyvalid = $this->validateLocalKey();
                    $this->debug('' . 'Validação de Chave Local: ' . $localkeyvalid );
                }
            }


            if ( !$localkeyvalid || $forceRemote ) {
                $whmcs = Application::getinstance();
                $resultados["status"] = "Ativo";
                $resultados["chave"] = $this->licensekey;
                $results["nome registrado"
                $results["productname"] = "Licença de propriedade sem marca - anulada por forum.larsa.ir";
                $resultados["productid"] = "5";
                $results["billingcycle"] = "Uma vez";
                $results["validdomains"] = $this->getHostDomain();
                $resultados["validips"] = $this->getHostIP();
                $results["validdirs"] = $this->getHostDir();
                $resultados["checkdate"] = $this->getDate();
                $resultados["versão"] = $whmcs->getVersion()->getCanonical();
                $resultados["regdate"] = "2016-02-03";
                $results["nextduedate"] = "2050-02-03";
                $resultados["complementos"] = array(
                    array(
                        'name' => 'Remoção da marca',
                        'nextduedate' => '2050-02-03',
                        'status' => 'Ativo'
                    ),
                    array(
                        'name' => 'Suporte e atualizações',
                        ' nextduedate ' => '2050-02-03',
                        'status' => 'Ativo'
                    ),
                    array(
                        'name' => 'Project Management Addon',
                        'nextduedate' => '2050-02-03',
                        'status' => 'Ativo'
                    ),
                    array(
                        'name' => 'Licensing Addon',
                        'nextduedate' => '2050-02-03',
                        'status' => 'Active'
                    ),
                    array(
                        'name' => 'Mobile Edition',
                        'nextduedate' => '2050-02-03',
                        'status' => 'Ativo'
                    ),
                    array(
                        'name' => 'iPhone App',
                        'nextduedate' => '2050-02-03',
                        'status' => 'Ativo '
                    ),
                    array(
                        'nome' => 'Aplicativo Android',
                    )                 );                 $this->setKeyData($resultados);                 $this->updateLocalKey();















            }

            $this->debug('Remote Check Done');
        }
        catch (Exception $exception) {
            $this->debug( sprintf( 'Erro de licença: %s', $exception->getMessage() ) );
            retorna falso;
        }
        return verdadeiro;
    }

    function getLocalMaxExpiryDate() {
Advertisement
Advertisement
Advertisement
Agencia na Web