Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Help with business map
#10
PHP Code:
<?php
/*************************************************************************************************
 * Copyright 2017 JPL TSolucio, S.L. -- This file is a part of TSOLUCIO coreBOS Customizations.
 * Licensed under the vtiger CRM Public License Version 1.1 (the "License"); you may not use this
 * file except in compliance with the License. You can redistribute it and/or modify it
 * under the terms of the License. JPL TSolucio, S.L. reserves all rights not expressly
 * granted by the License. coreBOS distributed by JPL TSolucio S.L. is distributed in
 * the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Unless required by
 * applicable law or agreed to in writing, software distributed under the License is
 * distributed on an "AS IS" BASIS, WITHOUT ANY WARRANTIES OR CONDITIONS OF ANY KIND,
 * either express or implied. See the License for the specific language governing
 * permissions and limitations under the License. You may obtain a copy of the License
 * at <http://corebos.org/documentation/doku.php?id=en:devel:vpl11>
 *************************************************************************************************/
function validaCPF($field$cpf$params$entity) { 
    
// Verifica se um número foi informado
    
if (empty($cpf)) {
        return 
false;
    }

global 
$db$adb$log;

$contato_id $entity['current_record_id'];

$log->debug(" validaCPF - contato_id $contato_id");
/*
$log->debug(" validaCPF - params $params");
$log->debug(" validaCPF - cpf $cpf");
$name = 'arquivo.txt';
$text = var_export($entity, true);
$file = fopen($name, 'a');
fwrite($file, $text);
fclose($file);
*/
    // Elimina possivel mascara
    
$cpf preg_replace('/[^0-9]/'''$cpf);
    
$cpf str_pad($cpf11'0'STR_PAD_LEFT);

    
// Verifica se o numero de digitos informados é igual a 11
    
if (strlen($cpf) != 11) {
        return 
false;
    } elseif (
$cpf == '00000000000' || $cpf == '11111111111' || $cpf == '22222222222' || $cpf == '33333333333' || $cpf == '44444444444' || $cpf == '55555555555' ||
            
$cpf == '66666666666' || $cpf == '77777777777' || $cpf == '88888888888' || $cpf == '99999999999') {
        
// Verifica se nenhuma das sequências invalidas abaixo
        // foi digitada. Caso afirmativo, retorna falso
        
return false;
        
// Calcula os digitos verificadores para verificar se o
        // CPF é válido
    
} else {
        for (
$t 9$t 11$t ++) {
            for (
$d 0$c 0$c $t$c ++) {
                
$d += $cpf {$c} * (($t 1) - $c);
            }
            
$d = ((10 $d) % 11) % 10;
            if (
$cpf {$c} != $d) {
                return 
false;
            }
        }
     
       $mask "###.###.###-##"

        
$cpf str_replace(" ","",$cpf);

 
               for($i=0;$i<strlen($cpf);$i++){ $mask[strpos($mask,"#")] = $cpf[$i]; }
 
               $cpf $mask;

        
$log->debug(" validaCPF - cpf com mascara $cpf");
     
       $adb->pquery("update vtiger_contactscf set $field =? where contactid=?",array($cpf,$contato_id));
        return 
true;
    }
}

function 
validaCNPJ($field$cnpj) {
    
$cnpj preg_replace('/[^0-9]/''', (string) $cnpj);
    
// Valida tamanho
    
if (strlen($cnpj) != 14) {
        
// CNPJ incorrect length
        
return false;
    }
    
// Valida primeiro dígito verificador
    
for ($i 0$j 5$soma 0$i 12$i++) {
        
$soma += $cnpj{$i} * $j;
        
$j = ($j == 2) ? $j 1;
    }
    
$resto $soma 11;
    if (
$cnpj{12} != ($resto 11 $resto)) {
        
// CNPJ incorrect char 12
        
return false;
    }
    
// Valida segundo dígito verificador
    
for ($i 0$j 6$soma 0$i 13$i++) {
        
$soma += $cnpj{$i} * $j;
        
$j = ($j == 2) ? $j 1;
    }
    
$resto $soma 11;
    return 
$cnpj{13} == ($resto 11 $resto);
}

function 
validaCNPJ2($field$cnpj) {
    
$c preg_replace('/\D/'''$cnpj);
    if (
strlen($c) != 14 || preg_match("/^{$c[0]}{14}$/"$c)) {
        
// CNPJ2 incorrect length
        
return false;
    }
    
$b = [6543298765432];
    for (
$i 0$n 0$i 12;
        
$n += $c[$i] * $b[++$i]) {
    }
    if (
$c[12] != ((($n %= 11) < 2) ? 11 $n)) {
        
// CNPJ2 incorrect char 12
        
return false;
    }
    for (
$i 0$n 0$i <= 12;
        
$n += $c[$i] * $b[$i++]) {
    }
    if (
$c[13] != ((($n %= 11) < 2) ? 11 $n)) {
        
// CNPJ2 incorrect char 13
        
return false;
    }
    return 
true;

New code is

but not working, yet ...

$adb->pquery("update vtiger_contactscf set $field =? where contactid=?",array($cpf,$contato_id));

Is necessary any other command ?


=(
Ranieri
eCRM Web
Reply


Messages In This Thread
Help with business map - rslemer - 09-26-2019, 09:55 PM
RE: Help with business map - joebordes - 09-28-2019, 10:14 AM
RE: Help with business map - rslemer - 09-28-2019, 03:13 PM
RE: Help with business map - joebordes - 09-28-2019, 11:27 PM
RE: Help with business map - rslemer - 09-29-2019, 01:50 PM
RE: Help with business map - joebordes - 09-29-2019, 02:34 PM
RE: Help with business map - rslemer - 09-29-2019, 03:52 PM
RE: Help with business map - rslemer - 09-30-2019, 04:20 PM
RE: Help with business map - rslemer - 09-30-2019, 08:16 PM
RE: Help with business map - rslemer - 09-30-2019, 10:48 PM
RE: Help with business map - rslemer - 10-01-2019, 05:03 PM
RE: Help with business map - joebordes - 10-01-2019, 06:01 PM
RE: Help with business map - rslemer - 10-01-2019, 08:12 PM
RE: Help with business map - joebordes - 10-01-2019, 08:41 PM
RE: Help with business map - rslemer - 10-01-2019, 08:56 PM
RE: Help with business map - joebordes - 10-01-2019, 09:32 PM
RE: Help with business map - rslemer - 10-04-2019, 02:52 PM
RE: Help with business map - rslemer - 10-02-2019, 12:56 PM
RE: Help with business map - rslemer - 10-02-2019, 04:17 PM
RE: Help with business map - joebordes - 10-10-2019, 04:35 AM

Forum Jump:


Users browsing this thread: 1 Guest(s)