function load_address_book_from_csv($smarty, $arrLang, $ruta_archivo, $pDB, $pDB_2) { $Messages = ""; $arrayColumnas = array(); $pACL = new paloACL($pDB_2); $id_user = $pACL->getIdUser($_SESSION["elastix_user"]); $result = isValidCSV($arrLang, $ruta_archivo, $arrayColumnas); if ($result != 'true') { $smarty->assign("mb_title", $arrLang["Error"]); $smarty->assign("mb_message", $result); return; } $hArchivo = fopen($ruta_archivo, 'rt'); $cont = 0; $pAdressBook = new paloAdressBook($pDB); if ($hArchivo) { //Linea 1 header ignorada $tupla = fgetcsv($hArchivo, 4096, ","); //Desde linea 2 son datos while ($tupla = fgetcsv($hArchivo, 4096, ",")) { if (is_array($tupla) && count($tupla) >= 3) { $data = array(); $namedb = $tupla[$arrayColumnas[0]]; $last_namedb = $tupla[$arrayColumnas[1]]; $telefonodb = $tupla[$arrayColumnas[2]]; $emaildb = isset($arrayColumnas[3]) ? $tupla[$arrayColumnas[3]] : ""; $addressdb = isset($arrayColumnas[4]) ? $tupla[$arrayColumnas[4]] : ""; $companydb = isset($arrayColumnas[5]) ? $tupla[$arrayColumnas[5]] : ""; $statusdb = "isPrivate"; $iduserdb = $id_user; $data = array($namedb, $last_namedb, $telefonodb, $emaildb, $iduserdb, $addressdb, $companydb, $statusdb); //Paso 1: verificar que no exista un usuario con los mismos datos $result = $pAdressBook->existContact($namedb, $last_namedb, $telefonodb); if (!$result) { $Messages .= "{$arrLang["ERROR"]}:" . $pAdressBook->errMsg . " <br />"; } else { if ($result['total'] > 0) { $Messages .= "{$arrLang["ERROR"]}: {$arrLang["Contact Data already exists"]}: {$data['name']} <br />"; } else { //Paso 2: creando en la contact data if (!$pAdressBook->addContactCsv($data)) { $Messages .= $arrLang["ERROR"] . $pDB->errMsg . "<br />"; } $cont++; } } } } $Messages .= $arrLang["Total contacts created"] . ": {$cont}<br />"; $smarty->assign("mb_message", $Messages); } unlink($ruta_archivo); }