openstamanager/update/2_5.php

455 lines
22 KiB
PHP
Raw Normal View History

<?php
use Symfony\Component\Filesystem\Filesystem as SymfonyFilesystem;
include __DIR__.'/../config.inc.php';
// File e cartelle deprecate
$files = [
'assets/src/js/wacom/sigCaptDialog/libs/',
2024-03-06 14:54:03 +01:00
'modules/impianti/plugins/',
'modules/voci_servizio/'
];
foreach ($files as $key => $value) {
$files[$key] = realpath(base_dir().'/'.$value);
}
delete($files);
/* Fix per file sql di update aggiornato dopo rilascio 2.4.35 */
$has_column = null;
$col_righe = $database->fetchArray('SHOW COLUMNS FROM `zz_groups`');
$has_column = array_search('id_module_start', array_column($col_righe, 'Field'));
if (empty($has_column)) {
$database->query('ALTER TABLE `zz_groups` ADD `id_module_start` INT NULL AFTER `editable`');
}
if ($backup_dir){
2024-03-03 18:42:16 +01:00
/* Rinomino i file zip all'interno della cartella di backup, aggiungendo "FULL" alla fine del nome*/
$filesystem = new SymfonyFilesystem();
//glob viene utilizzata per ottenere la lista dei file zip all'interno della cartella $backup_dir.
$files = glob($backup_dir . '/*.zip');
foreach ($files as $file) {
$fileName = basename($file);
2024-03-03 18:42:16 +01:00
if (strpos($fileName, 'FULL') === false) {
$newFileName = pathinfo($fileName, PATHINFO_FILENAME) . ' FULL.zip';
$newFilePath = $backup_dir . '/' . $newFileName;
$filesystem->rename($file, $newFilePath);
}
}
}else{
echo "Impossibile completare l'aggiornamento. Variabile <b>$backup_dir</b> non impostata.\n";
2024-03-21 10:36:23 +01:00
}
2024-03-21 12:49:20 +01:00
// Aggiunta record per lingua inglese
2024-03-21 10:36:23 +01:00
$tables = [
'an_provenienze_lang',
'an_relazioni_lang',
'an_settori_lang',
'an_tipianagrafiche_lang',
'co_iva_lang',
'co_pagamenti_lang',
'co_staticontratti_lang',
'co_statidocumento_lang',
'co_statipreventivi_lang',
'co_tipidocumento_lang',
'co_tipi_scadenze_lang',
'do_categorie_lang',
'dt_aspettobeni_lang',
'dt_causalet_lang',
'dt_porto_lang',
'dt_spedizione_lang',
'dt_statiddt_lang',
'dt_tipiddt_lang',
'em_lists_lang',
'em_templates_lang',
'in_fasceorarie_lang',
'in_statiintervento_lang',
'in_tipiintervento_lang',
'mg_articoli_lang',
'mg_attributi_lang',
'mg_categorie_lang',
'mg_causali_movimenti_lang',
'mg_combinazioni_lang',
'or_statiordine_lang',
'or_tipiordine_lang',
'zz_cache_lang',
'zz_currencies_lang',
'zz_groups_lang',
'zz_group_module_lang',
'zz_hooks_lang',
'zz_imports_lang',
'zz_modules_lang',
'zz_plugins_lang',
'zz_prints_lang',
'zz_segments_lang',
'zz_settings_lang',
'zz_tasks_lang',
'zz_views_lang',
'zz_widgets_lang',
];
foreach ($tables as $table) {
$database->query('CREATE TEMPORARY TABLE `tmp` SELECT * FROM '.$table);
$database->query('ALTER TABLE `tmp` DROP `id`');
$database->query('UPDATE `tmp` SET `id_lang` = 2');
$database->query('INSERT INTO '.$table.' SELECT NULL,tmp. * FROM tmp');
$database->query('DROP TEMPORARY TABLE tmp');
}
2024-03-21 12:49:20 +01:00
$traduzioni = [
2024-03-21 15:29:01 +01:00
// traduzione moduli
['zz_modules_lang', 'Entities', 'Anagrafiche'],
2024-03-21 12:49:20 +01:00
['zz_modules_lang', 'Tasks', 'Interventi'],
['zz_modules_lang', 'Updates', 'Aggiornamenti'],
2024-03-21 15:29:01 +01:00
['zz_modules_lang', 'Type of entities', 'Tipi di anagrafiche'],
2024-03-21 12:49:20 +01:00
['zz_modules_lang', 'Type of Tasks', 'Tipi di intervento'],
['zz_modules_lang', 'Tasks states', 'Stati di intervento'],
['zz_modules_lang', 'Accounting', 'Contabilità'],
['zz_modules_lang', 'Quotes', 'Preventivi'],
['zz_modules_lang', 'Sales invoices', 'Fatture di vendita'],
['zz_modules_lang', 'Purchase invoices', 'Fatture di acquisto'],
['zz_modules_lang', 'Scheduled payments', 'Scadenzario'],
['zz_modules_lang', 'Storage', 'Magazzino'],
['zz_modules_lang', 'Pricing lists', 'Listini'],
['zz_modules_lang', 'Customer orders', 'Ordini cliente'],
['zz_modules_lang', 'Supplier orders', 'Ordini fornitore'],
['zz_modules_lang', 'Sales delivery document', 'Ddt di vendita'],
['zz_modules_lang', 'Suppliers delivery document', 'Ddt di acquisto'],
['zz_modules_lang', 'Area', 'Zone'],
['zz_modules_lang', 'Technicians rates', 'Tecnici e tariffe'],
['zz_modules_lang', 'Balances', 'Piano dei conti'],
['zz_modules_lang', 'Products', 'Articoli'],
['zz_modules_lang', 'Discounts and Surcharges', 'Piani di sconto/maggiorazione'],
['zz_modules_lang', 'Plants', 'Impianti'],
['zz_modules_lang', 'Contracts', 'Contratti'],
['zz_modules_lang', 'Sales', 'Vendite'],
['zz_modules_lang', 'Purchases', 'Acquisti'],
['zz_modules_lang', 'Tools', 'Strumenti'],
['zz_modules_lang', 'Views', 'Viste'],
['zz_modules_lang', 'Users and permissions', 'Utenti e permessi'],
['zz_modules_lang', 'Settings', 'Impostazioni'],
['zz_modules_lang', 'Tables', 'Tabelle'],
['zz_modules_lang', 'VAT', 'IVA'],
['zz_modules_lang', 'Causals', 'Causali'],
['zz_modules_lang', 'Goods appearances', 'Aspetto beni'],
['zz_modules_lang', 'Units of measure', 'Unità di misura'],
['zz_modules_lang', 'Payments', 'Pagamenti'],
['zz_modules_lang', 'Products categories', 'Categorie articoli'],
['zz_modules_lang', 'Movements', 'Movimenti'],
['zz_modules_lang', 'Charts', 'Statistiche'],
['zz_modules_lang', 'Email accounts', 'Account email'],
['zz_modules_lang', 'Email templates', 'Template email'],
['zz_modules_lang', 'Email managements', 'Gestione email'],
['zz_modules_lang', 'Segments', 'Segmenti'],
['zz_modules_lang', 'Banks', 'Banche'],
['zz_modules_lang', 'Custom fields', 'Campi personalizzati'],
['zz_modules_lang', 'Documents management', 'Gestione documentale'],
['zz_modules_lang', 'Document categories', 'Categorie documenti'],
['zz_modules_lang', 'Types of shipping', 'Tipi di spedizione'],
['zz_modules_lang', 'Plants categories', 'Categorie impianti'],
['zz_modules_lang', 'Quote statuses', 'Stati dei preventivi'],
['zz_modules_lang', 'Contract statuses', 'Stati dei contratti'],
['zz_modules_lang', 'Services status', 'Stato dei servizi'],
['zz_modules_lang', 'Type of deadlines', 'Tipi scadenze'],
['zz_modules_lang', 'Email statuses', 'Coda di invio'],
['zz_modules_lang', 'Lists', 'Liste'],
['zz_modules_lang', 'Relations', 'Relazioni'],
['zz_modules_lang', 'Prints', 'Stampe'],
['zz_modules_lang', 'Movements causes', 'Causali movimenti'],
['zz_modules_lang', 'Stock locations', 'Giacenze sedi'],
['zz_modules_lang', 'Types of document', 'Tipi documento'],
['zz_modules_lang', 'Combination attributes', 'Attributi combinazioni'],
['zz_modules_lang', 'Combinations', 'Combinazioni'],
['zz_modules_lang', 'Contact roles', 'Mansioni referenti'],
['zz_modules_lang', 'Time slots', 'Fasce orarie'],
['zz_modules_lang', 'Events', 'Eventi'],
['zz_modules_lang', 'Customers origins', 'Provenienze clienti'],
['zz_modules_lang', 'Product sectors', 'Settori merceologici'],
['zz_modules_lang', 'Maps', 'Mappa'],
['zz_modules_lang', 'Customers price lists', 'Listini cliente'],
['zz_modules_lang', 'Orders statuses', 'Stati degli ordini'],
['zz_modules_lang', 'Invoices statuses', 'Stati fatture'],
['zz_modules_lang', 'Internal tasks management', 'Gestione task'],
['zz_modules_lang', 'Vehicles', 'Automezzi'],
['zz_modules_lang', 'OAuth access', 'Accesso con OAuth'],
['zz_modules_lang', 'Storage connectors', 'Adattatori di archiviazione'],
['zz_modules_lang', 'test', 'test'],
2024-03-21 15:29:01 +01:00
// traduzione plugins
['zz_plugins_lang', 'Client plants', 'Impianti del cliente'],
['zz_plugins_lang', 'Plants', 'Impianti'],
['zz_plugins_lang', 'Contacts', 'Referenti'],
['zz_plugins_lang', 'Locations', 'Sedi'],
['zz_plugins_lang', 'Statistics', 'Statistiche'],
['zz_plugins_lang', 'Performed tasks', 'Interventi svolti'],
['zz_plugins_lang', 'Movements', 'Movimenti'],
['zz_plugins_lang', 'Serial', 'Serial'],
['zz_plugins_lang', 'Final', 'Consuntivo'],
['zz_plugins_lang', 'Tasks schedulation', 'Pianificazione attività'],
['zz_plugins_lang', 'Customer sales delivery document', 'Ddt del cliente'],
['zz_plugins_lang', 'Electronic invoicing', 'Fatturazione elettronica'],
['zz_plugins_lang', 'Revisions', 'Revisioni'],
['zz_plugins_lang', 'Electronic invoices receipts', 'Ricevute FE'],
['zz_plugins_lang', 'Stocks', 'Giacenze'],
['zz_plugins_lang', 'Renewals', 'Rinnovi'],
['zz_plugins_lang', 'Statistics', 'Statistiche'],
['zz_plugins_lang', 'Intent declarations', 'Dichiarazioni d\'intento'],
['zz_plugins_lang', 'Billing scheduling', 'Pianificazione fatturazione'],
['zz_plugins_lang', 'Net customers', 'Netto clienti'],
['zz_plugins_lang', 'Tasks history', 'Storico attività'],
['zz_plugins_lang', 'Attachments', 'Allegati'],
['zz_plugins_lang', 'Components', 'Componenti'],
['zz_plugins_lang', 'Supplier price list', 'Listino fornitori'],
['zz_plugins_lang', 'Discount/surcharge plans', 'Piani di sconto/maggiorazione'],
['zz_plugins_lang', 'Article variants', 'Varianti articolo'],
['zz_plugins_lang', 'Customer contracts', 'Contratti del cliente'],
['zz_plugins_lang', 'Accounting movements', 'Movimenti contabili'],
['zz_plugins_lang', 'Bank presentations', 'Presentazioni bancarie'],
['zz_plugins_lang', 'Payment rules', 'Regole pagamenti'],
['zz_plugins_lang', 'Registrations', 'Registrazioni'],
['zz_plugins_lang', 'Commissions', 'Provvigioni'],
['zz_plugins_lang', 'Sales statistics', 'Statistiche vendita'],
2024-03-21 15:06:51 +01:00
];
2024-03-21 12:49:20 +01:00
2024-03-21 15:06:51 +01:00
foreach ($traduzioni as $traduzione) {
$database->query('UPDATE '.$traduzione[0].' SET `title` = "'.$traduzione[1].'" WHERE `name` = "'.$traduzione[2].'" AND `id_lang` = 2');
}
$traduzioni = [
2024-03-21 15:29:01 +01:00
// Traduzione widget
2024-03-21 12:49:20 +01:00
['zz_widgets_lang', 'Customers number', 'Numero di clienti'],
['zz_widgets_lang', 'Technicians number', 'Numero di tecnici'],
['zz_widgets_lang', 'Supplier number', 'Numero di fornitori'],
['zz_widgets_lang', 'Agents number', 'Numero di Agenti'],
['zz_widgets_lang', 'Reminders for contracts to plan', 'Promemoria contratti da pianificare'],
['zz_widgets_lang', 'Deadlines', 'Scadenze'],
['zz_widgets_lang', 'Products running out', 'Articoli in esaurimento'],
['zz_widgets_lang', 'Quotations in process', 'Preventivi in lavorazione'],
['zz_widgets_lang', 'Contracts due for renewal', 'Contratti in scadenza'],
['zz_widgets_lang', 'Contractual rates', 'Rate contrattuali'],
['zz_widgets_lang', 'Inventory printout', 'Stampa inventario'],
['zz_widgets_lang', 'Sales revenue', 'Fatturato'],
['zz_widgets_lang', 'Purchases', 'Acquisti'],
['zz_widgets_lang', 'Customer credit balances', 'Crediti da clienti'],
['zz_widgets_lang', 'Bills due', 'Debiti verso fornitori'],
['zz_widgets_lang', 'Number of carriers', 'Numero di vettori'],
2024-03-21 15:29:01 +01:00
['zz_widgets_lang', 'All entities records', 'Tutte le anagrafiche'],
2024-03-21 12:49:20 +01:00
['zz_widgets_lang', 'Inventory value', 'Valore magazzino'],
['zz_widgets_lang', 'Items in stock', 'Articoli in magazzino'],
['zz_widgets_lang', 'Print calendar', 'Stampa calendario'],
2024-03-21 15:06:51 +01:00
['zz_widgets_lang', 'Planned tasks', 'Attività da pianificare'],
['zz_widgets_lang', 'Tasks to be scheduled', 'Attività nello stato da programmare'],
['zz_widgets_lang', 'Confirmed tasks', 'Attività confermate'],
2024-03-21 12:49:20 +01:00
['zz_widgets_lang', 'Inventory usage', 'Spazio utilizzato'],
['zz_widgets_lang', 'Internal notes', 'Note interne'],
['zz_widgets_lang', 'Unsubscribed synchronization', 'Sincronizzazione disiscritti'],
['zz_widgets_lang', 'Active price lists', 'Listini attivi'],
['zz_widgets_lang', 'Expired price lists', 'Listini scaduti'],
['zz_widgets_lang', 'Weekly calendar printout', 'Stampa calendario settimanale'],
['zz_widgets_lang', 'Quotations to invoice', 'Preventivi da fatturare'],
['zz_widgets_lang', 'Print load/unload document', 'Stampa carico odierno'],
['zz_widgets_lang', 'Print inventory report', 'Stampa giacenza'],
['zz_widgets_lang', 'Print assets report', 'Stampa cespiti'],
];
foreach ($traduzioni as $traduzione) {
2024-03-21 15:06:51 +01:00
$database->query('UPDATE '.$traduzione[0].' SET `text` = "'.$traduzione[1].'" WHERE `name` = "'.$traduzione[2].'" AND `id_lang` = 2');
$database->query('UPDATE '.$traduzione[0].' SET `name` = "'.$traduzione[1].'" WHERE `name` = "'.$traduzione[2].'" AND `id_lang` = 2');
2024-03-21 12:49:20 +01:00
}
2024-03-21 16:34:35 +01:00
$traduzioni = [
// Traduzione views
['zz_views_lang', 'Agent','Agente'],
['zz_views_lang', 'Attachments','Allegati'],
['zz_views_lang', 'Entity','Anagrafica'],
['zz_views_lang', 'Entities','Anagrafiche'],
['zz_views_lang', 'Products','Articoli'],
['zz_views_lang', 'Product','Articolo'],
['zz_views_lang', 'Active','Attivo'],
['zz_views_lang', 'Bank','Banca'],
['zz_views_lang', 'Company bank','Banca azienda'],
['zz_views_lang', 'Category','Categoria'],
['zz_views_lang', 'Causal','Causale'],
['zz_views_lang', 'Mobile number','Cellulare'],
['zz_views_lang', 'City','Città'],
['zz_views_lang', 'Consumer','Cliente'],
['zz_views_lang', 'Cod','Codice'],
['zz_views_lang', 'Receiver code','Codice destinatario'],
['zz_views_lang', 'Electric invoice code','Codice FE'],
['zz_views_lang', 'Code Mode', 'Codice Modalità'],
['zz_views_lang', 'Payment Code', 'Codice pagamento'],
['zz_views_lang', 'color', 'colore'],
['zz_views_lang', 'Color', 'Colore'],
['zz_views_lang', 'color_Color', 'color_Colore'],
['zz_views_lang', 'color_Relation', 'color_Relazione'],
['zz_views_lang', 'color_title_Relation', 'color_title_Relazione'],
['zz_views_lang', 'Completed', 'Completato'],
['zz_views_lang', 'Content', 'Contenuto'],
['zz_views_lang', 'Account', 'Conto'],
['zz_views_lang', 'Credit Account', 'Conto avere'],
['zz_views_lang', 'Debit Account', 'Conto dare'],
['zz_views_lang', 'Contract', 'Contratto'],
['zz_views_lang', 'Counterparty', 'Controparte'],
['zz_views_lang', 'Costs', 'Costi'],
['zz_views_lang', 'Cost per km', 'Costo al km'],
['zz_views_lang', 'Cost per km (technical)', 'Costo al km tecnico'],
['zz_views_lang', 'Cost per hour', 'Costo orario'],
['zz_views_lang', 'Cost per hour (technical)', 'Costo orario tecnico'],
['zz_views_lang', 'Deadline', 'Data scadenza'],
['zz_views_lang', 'Activation date', 'Data attivazione'],
['zz_views_lang', 'Completion date', 'Data conclusione'],
['zz_views_lang', 'Creation date', 'Data creazione'],
['zz_views_lang', 'Issue date', 'Data emissione'],
['zz_views_lang', 'End date', 'Data fine'],
['zz_views_lang', 'Start date', 'Data inizio'],
['zz_views_lang', 'Sending date', 'Data invio'],
['zz_views_lang', 'Movement date', 'Data movimento'],
['zz_views_lang', 'Deadline', 'Data scadenza'],
['zz_views_lang', 'Draft date', 'data_bozza'],
['zz_views_lang', 'Conclusion date', 'data_conclusione'],
['zz_views_lang', 'Request date', 'data_richiesta'],
['zz_views_lang', 'To be paid', 'da_pagare'],
['zz_views_lang', 'Description', 'Descrizione'],
['zz_views_lang', 'Deadline description', 'Descrizione scadenza'],
['zz_views_lang', 'Recipients', 'Destinatari'],
['zz_views_lang', 'Dynamic', 'Dinamica'],
['zz_views_lang', 'dir', 'dir'],
['zz_views_lang', 'Direction', 'Direzione'],
['zz_views_lang', 'Call right', 'Diritto di chiamata'],
['zz_views_lang', 'Call right (technical)', 'Diritto di chiamata tecnico'],
['zz_views_lang', 'Distinction', 'Distinta'],
['zz_views_lang', 'Sender email', 'Email mittente'],
['zz_views_lang', 'Debit/Credit', 'Esigibilità'],
['zz_views_lang', 'Export distinta', 'Esportazione distinta'],
['zz_views_lang', 'Expression', 'Expression'],
['zz_views_lang', 'Invoicable', 'Fatturabile'],
['zz_views_lang', 'Festivity', 'Festività'],
['zz_views_lang', 'Branch', 'Filiale'],
['zz_views_lang', 'Supplier', 'Fornitore'],
['zz_views_lang', 'Days', 'Giorni'],
['zz_views_lang', 'Accessible groups', 'Gruppi con accesso'],
['zz_views_lang', 'Group', 'Gruppo'],
['zz_views_lang', 'IBAN', 'IBAN'],
['zz_views_lang', 'Icon', 'Icona'],
['zz_views_lang', 'icon_Electronic invoice', 'icon_FE'],
['zz_views_lang', 'icon_Sent', 'icon_Inviata'],
['zz_views_lang', 'icon_Sent', 'icon_Inviato'],
['zz_views_lang', 'icon_Default', 'icon_Predefinito'],
['zz_views_lang', 'icon_Extimated evasion', 'icon_Prev. evasione'],
['zz_views_lang', 'icon_Status', 'icon_Stato'],
['zz_views_lang', 'icon_title_Electronic invoice', 'icon_title_FE'],
['zz_views_lang', 'icon_title_Sent', 'icon_title_Inviata'],
['zz_views_lang', 'icon_title_Sent', 'icon_title_Inviato'],
['zz_views_lang', 'icon_title_Extimated evasion', 'icon_title_Prev. evasione'],
['zz_views_lang', 'icon_title_Status', 'icon_title_Stato'],
['zz_views_lang', 'Busy', 'Impegnato'],
['zz_views_lang', 'Plants', 'Impianti'],
['zz_views_lang', 'Taxable', 'Imponibile'],
['zz_views_lang', 'Amount', 'Importo'],
['zz_views_lang', 'Include holidays', 'Includi festività'],
['zz_views_lang', 'Address', 'Indirizzo'],
['zz_views_lang', 'Mask', 'Maschera'],
['zz_views_lang', 'Maximum', 'Massimo'],
['zz_views_lang', 'Registration number', 'Matricola'],
['zz_views_lang', 'Minimum', 'Minimo'],
['zz_views_lang', 'Module', 'Modulo'],
['zz_views_lang', 'Initial module', 'Modulo iniziale'],
['zz_views_lang', 'Enabled API', 'N. API abilitate'],
['zz_views_lang', 'Protocol n°', 'N. Prot.'],
['zz_views_lang', 'N° of users', 'N. utenti'],
['zz_views_lang', 'Enabled users', 'N. utenti abilitati'],
['zz_views_lang', 'Nature', 'Natura'],
['zz_views_lang', 'Country', 'Nazione'],
['zz_views_lang', 'Net to pay', 'Netto a pagare'],
['zz_views_lang', 'Name', 'Nome'],
['zz_views_lang', 'Account name', 'Nome account'],
['zz_views_lang', 'File name', 'Nome del file'],
['zz_views_lang', 'Displayed name', 'Nome visualizzato'],
['zz_views_lang', 'Notes', 'Note'],
['zz_views_lang', 'Number', 'Numero'],
['zz_views_lang', 'Customer order number', 'Numero ordine cliente'],
['zz_views_lang', 'Subject', 'Oggetto'],
['zz_views_lang', 'End time', 'Ora fine'],
['zz_views_lang', 'Start time', 'Ora inizio'],
['zz_views_lang', 'End time', 'orario_fine'],
['zz_views_lang', 'Start time', 'orario_inizio'],
['zz_views_lang', 'Order', 'Ordine'],
['zz_views_lang', 'Hours', 'Ore'],
['zz_views_lang', 'Remaining hours', 'Ore rimanenti'],
['zz_views_lang', 'Payment', 'Pagamento'],
['zz_views_lang', 'Customer payment', 'Pagamento cliente'],
['zz_views_lang', 'Supplier payment', 'Pagamento fornitore'],
['zz_views_lang', 'Paid', 'Pagato'],
['zz_views_lang', 'Real paid', 'pagato_reale'],
['zz_views_lang', 'Percentage', 'Percentuale'],
['zz_views_lang', 'Percentage profit or discount', 'Percentuale guadagno o sconto'],
['zz_views_lang', 'Taxable percentage', 'Percentuale imponibile'],
['zz_views_lang', 'Schedulable', 'Pianificabile'],
['zz_views_lang', 'Plugin', 'Plugin'],
['zz_views_lang', 'Previous run', 'Precedente esecuzione'],
['zz_views_lang', 'Default', 'Predefinita'],
['zz_views_lang', 'Default', 'Predefinito'],
['zz_views_lang', 'Quote', 'Preventivo'],
['zz_views_lang', 'Purchase price', 'Prezzo di acquisto'],
['zz_views_lang', 'Selling price', 'Prezzo di vendita'],
['zz_views_lang', 'Unit price', 'Prezzo unitario'],
['zz_views_lang', 'VAT-included selling price', 'Prezzo vendita ivato'],
['zz_views_lang', 'First note', 'Prima nota'],
['zz_views_lang', 'Next run', 'Prossima esecuzione'],
['zz_views_lang', 'Quantity', 'Q.tà'],
['zz_views_lang', 'Available quantity', 'Q.tà disponibile'],
['zz_views_lang', 'Quantity committed', 'Q.tà impegnata'],
['zz_views_lang', 'Ordered quantity', 'Q.tà ordinata'],
['zz_views_lang', 'Quantity', 'Quantità'],
['zz_views_lang', 'Legal entity', 'Ragione sociale'],
['zz_views_lang', 'Rate', 'Rate'],
['zz_views_lang', 'Referent', 'Referente'],
['zz_views_lang', 'Referents', 'Referenti'],
['zz_views_lang', 'Reversed', 'Reversed'],
['zz_views_lang', 'Gross revenue', 'Ricavi'],
['zz_views_lang', 'Request', 'Richiesta'],
['zz_views_lang', 'Recurring', 'Ricorrente'],
['zz_views_lang', 'Invoice reference', 'Rif. fattura'],
['zz_views_lang', 'References', 'Riferimenti'],
['zz_views_lang', 'Renewable', 'Rinnovabile'],
['zz_views_lang', 'Balance', 'Saldo'],
['zz_views_lang', 'Due days', 'Scadenza giorni'],
['zz_views_lang', 'Expired', 'Scaduto'],
['zz_views_lang', 'Discount percentage', 'Sconto percentuale'],
['zz_views_lang', 'Destination', 'Sede destinazione'],
['zz_views_lang', 'Departure', 'Sede partenza'],
['zz_views_lang', 'Locations', 'Sedi'],
['zz_views_lang', 'Always visible', 'Sempre visibile'],
['zz_views_lang', 'Service', 'Servizio'],
['zz_views_lang', 'Sectional', 'Sezionale'],
['zz_views_lang', 'Subcategory', 'Sottocategoria'],
['zz_views_lang', 'Status', 'Stato'],
['zz_views_lang', 'License plate', 'Targa'],
['zz_views_lang', 'Technicians', 'Tecnici'],
['zz_views_lang', 'Assigned technicians', 'Tecnici assegnati'],
['zz_views_lang', 'Technician', 'Tecnico'],
['zz_views_lang', 'Phone', 'Telefono'],
['zz_views_lang', 'Themes', 'Temi'],
['zz_views_lang', 'Template', 'Template'],
['zz_views_lang', 'Standard time', 'Tempo standard'],
['zz_views_lang', 'Attempts', 'Tentativi'],
['zz_views_lang', 'Type', 'Tipo'],
['zz_views_lang', 'Payment type', 'Tipo di pagamento'],
['zz_views_lang', 'Delivery type', 'Tipo spedizione'],
['zz_views_lang', 'Type', 'Tipologia'],
['zz_views_lang', 'Title', 'Titolo'],
['zz_views_lang', 'Document total', 'Totale documento'],
['zz_views_lang', 'Last modification', 'Ultima modifica'],
['zz_views_lang', 'Last attempt', 'Ultimo tentativo'],
['zz_views_lang', 'Measure unit', 'Um'],
['zz_views_lang', 'User', 'Utente'],
['zz_views_lang', 'Value', 'Valore'],
['zz_views_lang', 'Carrier', 'Vettore'],
];
foreach ($traduzioni as $traduzione) {
$database->query('UPDATE '.$traduzione[0].' SET `name` = "'.$traduzione[1].'" WHERE `name` = "'.$traduzione[2].'" AND `id_lang` = 2');
}