Stile del codice
This commit is contained in:
parent
6666acf32a
commit
3ee73011f3
|
@ -24,7 +24,7 @@ $qta_minima = 0;
|
|||
if (empty($result['idarticolo'])) {
|
||||
// Sede partenza
|
||||
if ($module['name'] == 'Interventi') {
|
||||
echo '
|
||||
echo '
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Partenza merce').'", "required": "1", "id":"idsede", "name": "idsede_partenza", "ajax-source": "sedi_azienda", "value": "'.($result['idsede_partenza'] ?: $options['idsede_partenza']).'" ]}
|
||||
|
|
|
@ -34,11 +34,11 @@ $final_module = Modules::get($name);
|
|||
// IVA predefinita
|
||||
$id_iva = $id_iva ?: setting('Iva predefinita');
|
||||
|
||||
if($final_module['name']=='Interventi'){
|
||||
if ($final_module['name'] == 'Interventi') {
|
||||
$righe = $documento->getRighe()->where('qta_rimanente', '>', 0)->where('is_descrizione', '=', 0);
|
||||
}elseif($final_module['name']=='Ordini fornitore'){
|
||||
} elseif ($final_module['name'] == 'Ordini fornitore') {
|
||||
$righe = $documento->getRighe();
|
||||
}else{
|
||||
} else {
|
||||
$righe = $documento->getRighe()->where('qta_rimanente', '>', 0);
|
||||
}
|
||||
|
||||
|
@ -266,19 +266,19 @@ echo '
|
|||
<tbody id="righe_documento_importato">';
|
||||
|
||||
foreach ($righe as $i => $riga) {
|
||||
if($final_module['name']=='Ordini fornitore'){
|
||||
if ($final_module['name'] == 'Ordini fornitore') {
|
||||
$qta_rimanente = $riga['qta'];
|
||||
}else{
|
||||
} else {
|
||||
$qta_rimanente = $riga['qta_rimanente'];
|
||||
}
|
||||
|
||||
$attr = 'checked="checked"';
|
||||
if($original_module['name']=='Preventivi'){
|
||||
if(empty($riga['confermato']) && $riga['is_descrizione']==0){
|
||||
if ($original_module['name'] == 'Preventivi') {
|
||||
if (empty($riga['confermato']) && $riga['is_descrizione'] == 0) {
|
||||
$attr = '';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Descrizione
|
||||
echo '
|
||||
<tr data-local_id="'.$i.'">
|
||||
|
@ -312,7 +312,7 @@ foreach ($righe as $i => $riga) {
|
|||
<td style="vertical-align:middle">
|
||||
{[ "type": "number", "name": "qta_da_evadere['.$riga['id'].']", "id": "qta_'.$i.'", "required": 1, "value": "'.$qta_rimanente.'", "decimals": "qta", "min-value": "0", "extra": "'.(($riga['is_descrizione']) ? 'readonly' : '').' onkeyup=\"ricalcolaTotaleRiga('.$i.');\"" ]}
|
||||
</td>';
|
||||
|
||||
|
||||
echo '
|
||||
<td style="vertical-align:middle" class="text-right">
|
||||
<span id="subtotale_'.$i.'"></span>
|
||||
|
|
|
@ -114,7 +114,7 @@ if (in_array($module['name'], ['Ordini cliente', 'Ordini fornitore', 'Preventivi
|
|||
if ($options['action'] == 'add') {
|
||||
if ($module['name'] == 'Ordini cliente') {
|
||||
$confermato = setting('Conferma automaticamente le quantità negli ordini cliente');
|
||||
} elseif($module['name'] == 'Ordini fornitore') {
|
||||
} elseif ($module['name'] == 'Ordini fornitore') {
|
||||
$confermato = setting('Conferma automaticamente le quantità negli ordini fornitore');
|
||||
} else {
|
||||
$confermato = setting('Conferma automaticamente le quantità nei preventivi');
|
||||
|
|
2
mail.php
2
mail.php
|
@ -110,7 +110,7 @@ echo '
|
|||
</div>';
|
||||
|
||||
$uploads = [];
|
||||
if ($smtp['pec']==1 && $module['name']=='Fatture di vendita') {
|
||||
if ($smtp['pec'] == 1 && $module['name'] == 'Fatture di vendita') {
|
||||
$uploads = $dbo->fetchArray('SELECT id FROM zz_files WHERE id_module = '.prepare($module['id']).' AND id_record = '.prepare($id_record).' AND category = \'Fattura Elettronica\'');
|
||||
$uploads = array_column($uploads, 'id');
|
||||
}
|
||||
|
|
|
@ -295,9 +295,9 @@ switch ($resource) {
|
|||
$filter[] = 'id='.prepare($element);
|
||||
}
|
||||
|
||||
if( isset($superselect['idclientefinale']) ){
|
||||
if (isset($superselect['idclientefinale'])) {
|
||||
$where[] = '(idanagrafica='.prepare($superselect['idanagrafica']).' OR idanagrafica='.prepare($superselect['idclientefinale']).')';
|
||||
}else{
|
||||
} else {
|
||||
$where[] = 'idanagrafica='.prepare($superselect['idanagrafica']);
|
||||
}
|
||||
|
||||
|
|
|
@ -17,15 +17,15 @@
|
|||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
use Modules\Anagrafiche\Anagrafica;
|
||||
use Models\Upload;
|
||||
use Modules\Anagrafiche\Anagrafica;
|
||||
|
||||
include_once __DIR__.'/../../../core.php';
|
||||
|
||||
//Controllo i permessi dei modulo per la visualizzazione degli allegati
|
||||
$rs = $dbo->table('zz_permissions')->where('idgruppo',$user->idgruppo)->get();
|
||||
$rs = $dbo->table('zz_permissions')->where('idgruppo', $user->idgruppo)->get();
|
||||
$permessi = [];
|
||||
foreach($rs as $r){
|
||||
foreach ($rs as $r) {
|
||||
$permessi[] = $r->idmodule;
|
||||
}
|
||||
|
||||
|
@ -36,53 +36,53 @@ $documenti[] = [
|
|||
];
|
||||
|
||||
//Interventi dell'anagrafica
|
||||
if( $user->is_admin || in_array(Modules::get('Interventi')['id'],$permessi) ){
|
||||
$interventi = $dbo->fetcharray("SELECT ".prepare(Modules::get('Interventi')['id'])." AS id_module, id AS id_record, CONCAT('Intervento num. ',codice,' del ',DATE_FORMAT(data_richiesta,'%d/%m/%Y')) AS descrizione FROM in_interventi WHERE idanagrafica=".prepare($id_record));
|
||||
if ($user->is_admin || in_array(Modules::get('Interventi')['id'], $permessi)) {
|
||||
$interventi = $dbo->fetcharray('SELECT '.prepare(Modules::get('Interventi')['id'])." AS id_module, id AS id_record, CONCAT('Intervento num. ',codice,' del ',DATE_FORMAT(data_richiesta,'%d/%m/%Y')) AS descrizione FROM in_interventi WHERE idanagrafica=".prepare($id_record));
|
||||
$documenti = array_merge($documenti, $interventi);
|
||||
}
|
||||
|
||||
//Preventivi dell'anagrafica
|
||||
if( $user->is_admin || in_array(Modules::get('Preventivi')['id'],$permessi) ){
|
||||
$preventivi = $dbo->fetcharray("SELECT ".prepare(Modules::get('Preventivi')['id'])." AS id_module, id AS id_record, CONCAT('Preventivo num. ',numero,' del ',DATE_FORMAT(data_bozza,'%d/%m/%Y')) AS descrizione FROM co_preventivi WHERE idanagrafica=".prepare($id_record));
|
||||
if ($user->is_admin || in_array(Modules::get('Preventivi')['id'], $permessi)) {
|
||||
$preventivi = $dbo->fetcharray('SELECT '.prepare(Modules::get('Preventivi')['id'])." AS id_module, id AS id_record, CONCAT('Preventivo num. ',numero,' del ',DATE_FORMAT(data_bozza,'%d/%m/%Y')) AS descrizione FROM co_preventivi WHERE idanagrafica=".prepare($id_record));
|
||||
$documenti = array_merge($documenti, $preventivi);
|
||||
}
|
||||
|
||||
//Contratti dell'anagrafica
|
||||
if( $user->is_admin || in_array(Modules::get('Contratti')['id'],$permessi) ){
|
||||
$contratti = $dbo->fetcharray("SELECT ".prepare(Modules::get('Contratti')['id'])." AS id_module, id AS id_record, CONCAT('Preventivo num. ',numero,' del ',DATE_FORMAT(data_bozza,'%d/%m/%Y')) AS descrizione FROM co_contratti WHERE idanagrafica=".prepare($id_record));
|
||||
if ($user->is_admin || in_array(Modules::get('Contratti')['id'], $permessi)) {
|
||||
$contratti = $dbo->fetcharray('SELECT '.prepare(Modules::get('Contratti')['id'])." AS id_module, id AS id_record, CONCAT('Preventivo num. ',numero,' del ',DATE_FORMAT(data_bozza,'%d/%m/%Y')) AS descrizione FROM co_contratti WHERE idanagrafica=".prepare($id_record));
|
||||
$documenti = array_merge($documenti, $contratti);
|
||||
}
|
||||
|
||||
//DDT dell'anagrafica
|
||||
if( $user->is_admin || in_array(Modules::get('Ddt di vendita')['id'],$permessi) ){
|
||||
$ddt_vendita = $dbo->fetcharray("SELECT ".prepare(Modules::get('Ddt di vendita')['id'])." AS id_module, id AS id_record, CONCAT('Ddt di vendita num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM dt_ddt WHERE idanagrafica=".prepare($id_record));
|
||||
if ($user->is_admin || in_array(Modules::get('Ddt di vendita')['id'], $permessi)) {
|
||||
$ddt_vendita = $dbo->fetcharray('SELECT '.prepare(Modules::get('Ddt di vendita')['id'])." AS id_module, id AS id_record, CONCAT('Ddt di vendita num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM dt_ddt WHERE idanagrafica=".prepare($id_record));
|
||||
$documenti = array_merge($documenti, $ddt_vendita);
|
||||
}
|
||||
|
||||
if( $user->is_admin || in_array(Modules::get('Ddt di acquisto')['id'],$permessi) ){
|
||||
$ddt_acquisto = $dbo->fetcharray("SELECT ".prepare(Modules::get('Ddt di acquisto')['id'])." AS id_module, id AS id_record, CONCAT('Ddt di acquisto num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM dt_ddt WHERE idanagrafica=".prepare($id_record));
|
||||
if ($user->is_admin || in_array(Modules::get('Ddt di acquisto')['id'], $permessi)) {
|
||||
$ddt_acquisto = $dbo->fetcharray('SELECT '.prepare(Modules::get('Ddt di acquisto')['id'])." AS id_module, id AS id_record, CONCAT('Ddt di acquisto num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM dt_ddt WHERE idanagrafica=".prepare($id_record));
|
||||
$documenti = array_merge($documenti, $ddt_acquisto);
|
||||
}
|
||||
|
||||
//Fatture dell'anagrafica
|
||||
if( $user->is_admin || in_array(Modules::get('Fatture di vendita')['id'],$permessi) ){
|
||||
$fatture_vendita = $dbo->fetcharray("SELECT ".prepare(Modules::get('Fatture di vendita')['id'])." AS id_module, id AS id_record, CONCAT('Fattura di vendita num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data_registrazione,'%d/%m/%Y')) AS descrizione FROM co_documenti WHERE idanagrafica=".prepare($id_record));
|
||||
if ($user->is_admin || in_array(Modules::get('Fatture di vendita')['id'], $permessi)) {
|
||||
$fatture_vendita = $dbo->fetcharray('SELECT '.prepare(Modules::get('Fatture di vendita')['id'])." AS id_module, id AS id_record, CONCAT('Fattura di vendita num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data_registrazione,'%d/%m/%Y')) AS descrizione FROM co_documenti WHERE idanagrafica=".prepare($id_record));
|
||||
$documenti = array_merge($documenti, $fatture_vendita);
|
||||
}
|
||||
|
||||
if( $user->is_admin || in_array(Modules::get('Fatture di acquisto')['id'],$permessi) ){
|
||||
$fatture_acquisto = $dbo->fetcharray("SELECT ".prepare(Modules::get('Fatture di acquisto')['id'])." AS id_module, id AS id_record, CONCAT('Fattura di acquisto num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data_registrazione,'%d/%m/%Y')) AS descrizione FROM co_documenti WHERE idanagrafica=".prepare($id_record));
|
||||
if ($user->is_admin || in_array(Modules::get('Fatture di acquisto')['id'], $permessi)) {
|
||||
$fatture_acquisto = $dbo->fetcharray('SELECT '.prepare(Modules::get('Fatture di acquisto')['id'])." AS id_module, id AS id_record, CONCAT('Fattura di acquisto num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data_registrazione,'%d/%m/%Y')) AS descrizione FROM co_documenti WHERE idanagrafica=".prepare($id_record));
|
||||
$documenti = array_merge($documenti, $fatture_acquisto);
|
||||
}
|
||||
|
||||
//Ordini dell'anagrafica
|
||||
if( $user->is_admin || in_array(Modules::get('Ordini cliente')['id'],$permessi) ){
|
||||
$ordini_vendita = $dbo->fetcharray("SELECT ".prepare(Modules::get('Ordini cliente')['id'])." AS id_module, id AS id_record, CONCAT('Ordine cliente num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM or_ordini WHERE idanagrafica=".prepare($id_record));
|
||||
if ($user->is_admin || in_array(Modules::get('Ordini cliente')['id'], $permessi)) {
|
||||
$ordini_vendita = $dbo->fetcharray('SELECT '.prepare(Modules::get('Ordini cliente')['id'])." AS id_module, id AS id_record, CONCAT('Ordine cliente num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM or_ordini WHERE idanagrafica=".prepare($id_record));
|
||||
$documenti = array_merge($documenti, $ordini_vendita);
|
||||
}
|
||||
|
||||
if( $user->is_admin || in_array(Modules::get('Ordini fornitore')['id'],$permessi) ){
|
||||
$ordini_acquisto = $dbo->fetcharray("SELECT ".prepare(Modules::get('Ordini fornitore')['id'])." AS id_module, id AS id_record, CONCAT('Ordine fornitore num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM or_ordini WHERE idanagrafica=".prepare($id_record));
|
||||
if ($user->is_admin || in_array(Modules::get('Ordini fornitore')['id'], $permessi)) {
|
||||
$ordini_acquisto = $dbo->fetcharray('SELECT '.prepare(Modules::get('Ordini fornitore')['id'])." AS id_module, id AS id_record, CONCAT('Ordine fornitore num. ',IFNULL(numero_esterno,numero),' del ',DATE_FORMAT(data,'%d/%m/%Y')) AS descrizione FROM or_ordini WHERE idanagrafica=".prepare($id_record));
|
||||
$documenti = array_merge($documenti, $ordini_acquisto);
|
||||
}
|
||||
|
||||
|
@ -104,33 +104,33 @@ echo '
|
|||
<th class="text-center" width="10%">'.tr('Data').'</th>
|
||||
</tr>';
|
||||
|
||||
foreach($documenti as $documento){
|
||||
$allegati = $dbo->fetchArray("SELECT * FROM zz_files WHERE id_module=".prepare($documento['id_module'])." AND id_record=".prepare($documento['id_record']));
|
||||
foreach ($documenti as $documento) {
|
||||
$allegati = $dbo->fetchArray('SELECT * FROM zz_files WHERE id_module='.prepare($documento['id_module']).' AND id_record='.prepare($documento['id_record']));
|
||||
|
||||
foreach($allegati as $allegato){
|
||||
$file = Upload::find($allegato['id']);
|
||||
foreach ($allegati as $allegato) {
|
||||
$file = Upload::find($allegato['id']);
|
||||
|
||||
echo '
|
||||
echo '
|
||||
<tr>
|
||||
<td class="text-center">
|
||||
<a class="btn btn-xs btn-primary" href="'.base_path().'/actions.php?id_module='.$file->id_module.'&op=download-allegato&id='.$file->id.'&filename='.$file->filename.'" target="_blank">
|
||||
<i class="fa fa-download"></i>
|
||||
</a>';
|
||||
|
||||
// Anteprime supportate dal browser
|
||||
if ($file->hasPreview()) {
|
||||
echo '
|
||||
// Anteprime supportate dal browser
|
||||
if ($file->hasPreview()) {
|
||||
echo '
|
||||
<button class="btn btn-xs btn-info" type="button" data-title="'.prepareToField($file->name).' <small style=\'color:white\'><i>('.$file->filename.')</i></small>" data-href="'.base_path().'/view.php?file_id='.$file->id.'">
|
||||
<i class="fa fa-eye"></i>
|
||||
</button>';
|
||||
} else {
|
||||
echo '
|
||||
} else {
|
||||
echo '
|
||||
<button class="btn btn-xs btn-default disabled" title="'.tr('Anteprima file non disponibile').'" disabled>
|
||||
<i class="fa fa-eye"></i>
|
||||
</button>';
|
||||
}
|
||||
|
||||
echo '
|
||||
}
|
||||
|
||||
echo '
|
||||
</td>
|
||||
<td>
|
||||
<a href="'.base_path().'/view.php?file_id='.$file->id.'" target="_blank">
|
||||
|
@ -140,8 +140,8 @@ echo '
|
|||
<td>'.Modules::link(Modules::get($allegato['id_module'])['name'], $file->id_record, $documento['descrizione']).'</td>
|
||||
<td class="text-center">'.Translator::dateToLocale($file->created_at).'</td>
|
||||
</tr>';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
echo '
|
||||
</table>';
|
||||
} else {
|
||||
|
@ -151,4 +151,4 @@ echo '
|
|||
|
||||
echo '
|
||||
</div>
|
||||
</div>';
|
||||
</div>';
|
||||
|
|
|
@ -113,7 +113,7 @@ if (!empty($movimenti)) {
|
|||
</td>
|
||||
|
||||
<td class="text-center">
|
||||
'.( $movimento->nomesede ?: tr('Sede legale') ).'
|
||||
'.($movimento->nomesede ?: tr('Sede legale')).'
|
||||
</td>';
|
||||
|
||||
// Data
|
||||
|
|
|
@ -241,14 +241,14 @@ class CSV extends CSVImporter
|
|||
}
|
||||
}
|
||||
|
||||
// Gestione um
|
||||
$um = null;
|
||||
if (!empty($record['um'])) {
|
||||
$um = $database->fetchOne('SELECT id FROM `mg_unitamisura` WHERE `valore`='.prepare($record['um']));
|
||||
if (empty($um)) {
|
||||
// Gestione um
|
||||
$um = null;
|
||||
if (!empty($record['um'])) {
|
||||
$um = $database->fetchOne('SELECT id FROM `mg_unitamisura` WHERE `valore`='.prepare($record['um']));
|
||||
if (empty($um)) {
|
||||
$database->query('INSERT INTO `mg_unitamisura` (`valore`) VALUES ('.prepare($record['um']).')');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Individuazione dell'IVA di vendita tramite il relativo Codice
|
||||
$aliquota = null;
|
||||
|
|
|
@ -19,11 +19,11 @@
|
|||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
use Modules\Articoli\Articolo as ArticoloOriginale;
|
||||
use Modules\Contratti\Contratto;
|
||||
use Modules\Fatture\Fattura;
|
||||
use Modules\Fatture\Stato;
|
||||
use Modules\Fatture\Tipo;
|
||||
use Modules\Articoli\Articolo as ArticoloOriginale;
|
||||
|
||||
$module_fatture = 'Fatture di vendita';
|
||||
|
||||
|
|
|
@ -109,9 +109,8 @@ switch (filter('op')) {
|
|||
];
|
||||
}
|
||||
|
||||
if (setting('Visualizza informazioni aggiuntive sul calendario')){
|
||||
|
||||
## Box allDay
|
||||
if (setting('Visualizza informazioni aggiuntive sul calendario')) {
|
||||
//# Box allDay
|
||||
$query = 'SELECT
|
||||
co_preventivi.id,
|
||||
co_preventivi.nome,
|
||||
|
@ -134,35 +133,35 @@ switch (filter('op')) {
|
|||
$alldays = $dbo->fetchArray($query);
|
||||
|
||||
foreach ($alldays as $preventivo) {
|
||||
if(!empty($preventivo['data_accettazione']) && $preventivo['data_accettazione']!='0000-00-00'){
|
||||
if (!empty($preventivo['data_accettazione']) && $preventivo['data_accettazione'] != '0000-00-00') {
|
||||
$results[] = [
|
||||
'id' => 'A_'.$modulo_preventivi->id.'_'.$preventivo['id'],
|
||||
'idintervento' => $preventivo['id'],
|
||||
'idtecnico' => "",
|
||||
'idtecnico' => '',
|
||||
'title' => '<div style=\'position:absolute; top:7%; right:3%;\' > '.(($preventivo['is_completato']) ? '<i class="fa fa-lock" aria-hidden="true"></i>' : '').' '.(($preventivo['have_attachments']) ? '<i class="fa fa-paperclip" aria-hidden="true"></i>' : '').'</div>'.'<b>Accettazione prev. '.$preventivo['numero'].'</b> '.$preventivo['nome'].'<br><b>'.tr('Cliente').':</b> '.$preventivo['cliente'],
|
||||
'start' => $preventivo['data_accettazione'],
|
||||
'end' => $preventivo['data_accettazione'],
|
||||
'url' => base_path().'/editor.php?id_module='.$modulo_preventivi->id.'&id_record='.$preventivo['id'],
|
||||
'backgroundColor' => "#ff7f50",
|
||||
'textColor' => color_inverse("#ff7f50"),
|
||||
'borderColor' => "#ff7f50",
|
||||
'backgroundColor' => '#ff7f50',
|
||||
'textColor' => color_inverse('#ff7f50'),
|
||||
'borderColor' => '#ff7f50',
|
||||
'allDay' => true,
|
||||
'eventStartEditable' => false,
|
||||
];
|
||||
}
|
||||
|
||||
if($preventivo['data_accettazione'] != $preventivo['data_conclusione'] && $preventivo['data_conclusione']!='0000-00-00' && !empty($preventivo['data_conclusione']) ){
|
||||
if ($preventivo['data_accettazione'] != $preventivo['data_conclusione'] && $preventivo['data_conclusione'] != '0000-00-00' && !empty($preventivo['data_conclusione'])) {
|
||||
$results[] = [
|
||||
'id' => 'B_'.$modulo_preventivi->id.'_'.$preventivo['id'],
|
||||
'idintervento' => $preventivo['id'],
|
||||
'idtecnico' => "",
|
||||
'idtecnico' => '',
|
||||
'title' => '<div style=\'position:absolute; top:7%; right:3%;\' > '.(($preventivo['is_completato']) ? '<i class="fa fa-lock" aria-hidden="true"></i>' : '').' '.(($preventivo['have_attachments']) ? '<i class="fa fa-paperclip" aria-hidden="true"></i>' : '').'</div>'.'<b>Conclusione prev. '.$preventivo['numero'].'</b> '.$preventivo['nome'].'<br><b>'.tr('Cliente').':</b> '.$preventivo['cliente'],
|
||||
'start' => $preventivo['data_conclusione'],
|
||||
'end' => $preventivo['data_conclusione'],
|
||||
'url' => base_path().'/editor.php?id_module='.$modulo_preventivi->id.'&id_record='.$preventivo['id'],
|
||||
'backgroundColor' => "#ff7f50",
|
||||
'textColor' => color_inverse("#ff7f50"),
|
||||
'borderColor' => "#ff7f50",
|
||||
'backgroundColor' => '#ff7f50',
|
||||
'textColor' => color_inverse('#ff7f50'),
|
||||
'borderColor' => '#ff7f50',
|
||||
'allDay' => true,
|
||||
'eventStartEditable' => false,
|
||||
];
|
||||
|
@ -208,7 +207,7 @@ switch (filter('op')) {
|
|||
$timeStart = filter('timeStart');
|
||||
$timeEnd = filter('timeEnd');
|
||||
|
||||
if (empty($allday)){
|
||||
if (empty($allday)) {
|
||||
// Lettura dati intervento di riferimento
|
||||
$query = 'SELECT in_interventi_tecnici.idintervento, in_interventi.id, idtecnico, orario_inizio, orario_fine, (SELECT ragione_sociale FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS nome_tecnico, (SELECT colore FROM an_anagrafiche WHERE idanagrafica=idtecnico) AS colore FROM in_interventi_tecnici INNER JOIN in_interventi ON in_interventi_tecnici.idintervento=in_interventi.id WHERE in_interventi.id='.prepare($id).' '.Modules::getAdditionalsQuery('Interventi');
|
||||
$rs = $dbo->fetchArray($query);
|
||||
|
@ -237,7 +236,7 @@ switch (filter('op')) {
|
|||
$tooltip = '<b>'.tr('Numero intervento').'</b>: '.$rs[0]['codice'].'<br/>';
|
||||
|
||||
$tooltip .= '<b>'.tr('Data richiesta').'</b>: '.Translator::timestampToLocale($rs[0]['data_richiesta']).'<br/>';
|
||||
|
||||
|
||||
if (!empty($rs[0]['data_scadenza'])) {
|
||||
$tooltip .= '<b>'.tr('Data scadenza').'</b>: '.Translator::timestampToLocale($rs[0]['data_scadenza']).'<br/>';
|
||||
}
|
||||
|
@ -262,7 +261,6 @@ switch (filter('op')) {
|
|||
$tooltip .= '<b>'.tr('Informazioni aggiuntive').'</b>: '.nl2br($rs[0]['informazioniaggiuntive']).'<br/>';
|
||||
}
|
||||
|
||||
|
||||
$tooltip .= '<b>'.tr('Ragione sociale').'</b>: '.nl2br($rs[0]['ragione_sociale']).'<br/>';
|
||||
|
||||
if (!empty($rs[0]['telefono'])) {
|
||||
|
@ -280,9 +278,7 @@ switch (filter('op')) {
|
|||
if (!empty($rs[0]['note_anagrafica'])) {
|
||||
$tooltip .= '<b>'.tr('Note anagrafica').'</b>: '.nl2br($rs[0]['note_anagrafica']).'<br/>';
|
||||
}
|
||||
|
||||
}else{
|
||||
|
||||
} else {
|
||||
$query = 'SELECT
|
||||
co_preventivi.nome,
|
||||
co_preventivi.numero,
|
||||
|
@ -293,17 +289,12 @@ switch (filter('op')) {
|
|||
FROM co_preventivi
|
||||
LEFT JOIN co_statipreventivi ON co_preventivi.idstato = co_statipreventivi.id
|
||||
WHERE co_preventivi.id='.prepare($id);
|
||||
|
||||
|
||||
|
||||
$rs = $dbo->fetchArray($query);
|
||||
|
||||
|
||||
$tooltip = '<b>Prev. '.$rs[0]['numero'].'</b> '.$rs[0]['nome'].''.(($rs[0]['have_attachments']) ? ' <i class="fa fa-paperclip" aria-hidden="true"></i>' : '').'<br><b>'.tr('Cliente').':</b> '.$rs[0]['cliente'];
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
$tooltip .= '
|
||||
<script type="text/javascript">
|
||||
$(".shorten").shorten({
|
||||
|
@ -313,7 +304,6 @@ switch (filter('op')) {
|
|||
});
|
||||
</script>';
|
||||
|
||||
|
||||
echo $tooltip;
|
||||
}
|
||||
break;
|
||||
|
|
|
@ -19,11 +19,11 @@
|
|||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
use Modules\Articoli\Articolo as ArticoloOriginale;
|
||||
use Modules\DDT\DDT;
|
||||
use Modules\Fatture\Fattura;
|
||||
use Modules\Fatture\Stato;
|
||||
use Modules\Fatture\Tipo;
|
||||
use Modules\Articoli\Articolo as ArticoloOriginale;
|
||||
|
||||
if ($module['name'] == 'Ddt di vendita') {
|
||||
$dir = 'entrata';
|
||||
|
|
|
@ -287,7 +287,6 @@ switch (post('op')) {
|
|||
|
||||
break;
|
||||
|
||||
|
||||
// Elenco fatture Scadute per il cliente
|
||||
case 'fatture_scadute':
|
||||
$id_anagrafica = post('id_anagrafica');
|
||||
|
@ -313,7 +312,6 @@ switch (post('op')) {
|
|||
|
||||
break;
|
||||
|
||||
|
||||
// eliminazione documento
|
||||
case 'delete':
|
||||
try {
|
||||
|
@ -324,7 +322,7 @@ switch (post('op')) {
|
|||
|
||||
// Azzeramento collegamento della rata contrattuale alla pianificazione
|
||||
$dbo->query('UPDATE co_fatturazione_contratti SET iddocumento=0 WHERE iddocumento='.prepare($id_record));
|
||||
|
||||
|
||||
// Eliminazione allegati collegati
|
||||
Uploads::deleteLinked([
|
||||
'id_module' => $id_module,
|
||||
|
|
|
@ -69,7 +69,7 @@ if (!empty($record['is_fiscale'])) {
|
|||
// Aggiunta insoluto
|
||||
$registrazione_insoluto = 0;
|
||||
$pagamento = $fattura->pagamento;
|
||||
if(!empty($pagamento)){
|
||||
if (!empty($pagamento)) {
|
||||
if ($pagamento->isRiBa() && $dir == 'entrata' && in_array($record['stato'], ['Emessa', 'Parzialmente pagato', 'Pagato'])) {
|
||||
$registrazione_insoluto = 1;
|
||||
}
|
||||
|
|
|
@ -17,11 +17,11 @@
|
|||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
use Carbon\Carbon;
|
||||
use Modules\Anagrafiche\Anagrafica;
|
||||
use Modules\Fatture\Gestori\Bollo;
|
||||
use Modules\Iva\Aliquota;
|
||||
use Modules\Interventi\Intervento;
|
||||
use Carbon\Carbon;
|
||||
use Modules\Iva\Aliquota;
|
||||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
|
@ -93,18 +93,18 @@ if ($dir == 'entrata') {
|
|||
}
|
||||
|
||||
// Verifica la data dell'intervento rispetto alla data della fattura
|
||||
$righe_interventi = $fattura->getRighe()->where('idintervento', '!=', NULL);
|
||||
$righe_interventi = $fattura->getRighe()->where('idintervento', '!=', null);
|
||||
if (!empty($righe_interventi)) {
|
||||
foreach($righe_interventi as $riga_intervento){
|
||||
foreach ($righe_interventi as $riga_intervento) {
|
||||
$intervento = Intervento::find($riga_intervento->idintervento);
|
||||
|
||||
if((new Carbon($intervento->fine))->diffInDays(new Carbon($fattura->data), false) < 0){
|
||||
$fatturazione_futura = true;
|
||||
if ((new Carbon($intervento->fine))->diffInDays(new Carbon($fattura->data), false) < 0) {
|
||||
$fatturazione_futura = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if($fatturazione_futura){
|
||||
if ($fatturazione_futura) {
|
||||
echo '
|
||||
<div class="alert alert-warning">
|
||||
<i class="fa fa-warning"></i> '.tr("Stai fatturando un'attività futura rispetto alla data di fatturazione.").'</b>
|
||||
|
@ -182,7 +182,7 @@ if ($dir == 'entrata') {
|
|||
{[ "type": "hidden", "label": "Segmento", "name": "id_segment", "class": "text-center", "value": "$id_segment$" ]}
|
||||
|
||||
<div class="col-md-<?php echo $size; ?>">
|
||||
{[ "type": "text", "label": "<?php echo $label; ?>", "required": "<?php echo (($dir=='uscita')? 1 : 0); ?>", "name": "numero_esterno", "class": "text-center", "value": "$numero_esterno$", "help": "<?php echo (empty($record['numero_esterno']) and $dir == 'entrata') ? tr('Il numero della fattura sarà generato automaticamente in fase di emissione.') : ''; ?>" ]}
|
||||
{[ "type": "text", "label": "<?php echo $label; ?>", "required": "<?php echo ($dir == 'uscita') ? 1 : 0; ?>", "name": "numero_esterno", "class": "text-center", "value": "$numero_esterno$", "help": "<?php echo (empty($record['numero_esterno']) and $dir == 'entrata') ? tr('Il numero della fattura sarà generato automaticamente in fase di emissione.') : ''; ?>" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-2">
|
||||
|
@ -305,7 +305,7 @@ elseif ($record['stato'] == 'Bozza') {
|
|||
</div>
|
||||
|
||||
<div class="col-md-3">
|
||||
<?php echo (!empty($record['idpagamento']) ? Modules::link('Pagamenti', $record['idpagamento'], null, null, 'class="pull-right"') : ''); ?>
|
||||
<?php echo !empty($record['idpagamento']) ? Modules::link('Pagamenti', $record['idpagamento'], null, null, 'class="pull-right"') : ''; ?>
|
||||
|
||||
{[ "type": "select", "label": "<?php echo tr('Pagamento'); ?>", "name": "idpagamento", "required": 1, "ajax-source": "pagamenti", "value": "$idpagamento$", "extra": "onchange=\"$('#id_banca_azienda').selectSetNew( $(this).selectData().id_banca_<?php echo $conto; ?>, $(this).selectData().descrizione_banca_<?php echo $conto; ?> ).change(); \" " ]}
|
||||
</div>
|
||||
|
@ -391,7 +391,7 @@ elseif ($record['stato'] == 'Bozza') {
|
|||
?>
|
||||
|
||||
<div class="col-md-3">
|
||||
<?php echo (!empty($record['id_ritenuta_contributi']) ? Modules::link('Ritenute contributi', $record['id_ritenuta_contributi'], null, null, 'class="pull-right"') : ''); ?>
|
||||
<?php echo !empty($record['id_ritenuta_contributi']) ? Modules::link('Ritenute contributi', $record['id_ritenuta_contributi'], null, null, 'class="pull-right"') : ''; ?>
|
||||
{[ "type": "select", "label": "<?php echo tr('Ritenuta contributi'); ?>", "name": "id_ritenuta_contributi", "value": "$id_ritenuta_contributi$", "values": "query=SELECT *, CONCAT(descrizione,(IF(percentuale>0, CONCAT(\" - \", percentuale, \"% sul \", percentuale_imponibile, \"% imponibile\"), \"\"))) AS descrizione FROM co_ritenuta_contributi", "help": "<?php echo tr('Ritenuta contributi da applicare alle righe della fattura.'); ?>" ]}
|
||||
</div>
|
||||
|
||||
|
|
|
@ -179,7 +179,7 @@ function aggiungi_movimento($iddocumento, $dir, $primanota = 0)
|
|||
|
||||
$netto_fattura = get_netto_fattura($iddocumento);
|
||||
$totale_fattura = get_totale_fattura($iddocumento);
|
||||
$totale_fattura = $is_nota ? -$totale_fattura: $totale_fattura;
|
||||
$totale_fattura = $is_nota ? -$totale_fattura : $totale_fattura;
|
||||
|
||||
$imponibile_fattura = get_imponibile_fattura($iddocumento);
|
||||
|
||||
|
|
|
@ -121,12 +121,12 @@ foreach ($righe as $riga) {
|
|||
echo nl2br($riga->descrizione);
|
||||
}
|
||||
|
||||
if ($riga->isArticolo() && !empty($riga->articolo->deleted_at)){
|
||||
if ($riga->isArticolo() && !empty($riga->articolo->deleted_at)) {
|
||||
echo '
|
||||
<br><b><small class="text-danger">'.tr('Articolo eliminato', []).'</small></b>';
|
||||
}
|
||||
|
||||
if ($riga->isArticolo() && empty($riga->articolo->codice)){
|
||||
if ($riga->isArticolo() && empty($riga->articolo->codice)) {
|
||||
echo '
|
||||
<br><b><small class="text-danger">'.tr('_DATO_ articolo mancante', [
|
||||
'_DATO_' => 'Codice',
|
||||
|
|
|
@ -38,8 +38,8 @@ use Plugins\DichiarazioniIntento\Dichiarazione;
|
|||
use Plugins\ExportFE\FatturaElettronica;
|
||||
use Traits\RecordTrait;
|
||||
use Traits\ReferenceTrait;
|
||||
use Util\Generator;
|
||||
use Translator;
|
||||
use Util\Generator;
|
||||
|
||||
class Fattura extends Document
|
||||
{
|
||||
|
|
|
@ -308,7 +308,7 @@ switch (post('op')) {
|
|||
}
|
||||
|
||||
$qta = post('qta');
|
||||
|
||||
|
||||
$articolo->idsede_partenza = post('idsede_partenza');
|
||||
$articolo->descrizione = post('descrizione');
|
||||
$articolo->um = post('um') ?: null;
|
||||
|
@ -413,7 +413,7 @@ switch (post('op')) {
|
|||
if (post('create_document') == 'on') {
|
||||
$stato = Stato::find(post('id_stato_intervento'));
|
||||
$tipo = TipoSessione::find(post('id_tipo_intervento'));
|
||||
|
||||
|
||||
$anagrafica = post('idanagrafica') ? Anagrafica::find(post('idanagrafica')) : $documento->anagrafica;
|
||||
|
||||
$intervento = Intervento::build($anagrafica, $tipo, $stato, post('data'));
|
||||
|
@ -437,12 +437,12 @@ switch (post('op')) {
|
|||
|
||||
$copia = $riga->copiaIn($intervento, $qta);
|
||||
|
||||
// Aggiornamento seriali
|
||||
if ($copia->isArticolo()) {
|
||||
$serials = is_array(post('serial')[$riga->id]) ? post('serial')[$riga->id] : [];
|
||||
// Aggiornamento seriali
|
||||
if ($copia->isArticolo()) {
|
||||
$serials = is_array(post('serial')[$riga->id]) ? post('serial')[$riga->id] : [];
|
||||
|
||||
$copia->serials = $serials;
|
||||
}
|
||||
$copia->serials = $serials;
|
||||
}
|
||||
|
||||
$copia->save();
|
||||
}
|
||||
|
|
|
@ -5,9 +5,8 @@ include_once __DIR__.'/../../core.php';
|
|||
$id_anagrafica = get('id_anagrafica');
|
||||
$op = get('op');
|
||||
|
||||
switch($op){
|
||||
case "dettagli":
|
||||
|
||||
switch ($op) {
|
||||
case 'dettagli':
|
||||
echo "
|
||||
<div class='row'>";
|
||||
|
||||
|
@ -17,18 +16,18 @@ switch($op){
|
|||
echo "
|
||||
<div class='col-md-4'>
|
||||
<b>CONTRATTI:</b><hr style='margin-top:5px;margin-bottom:15px;'>";
|
||||
if(sizeof($rs_contratti)>0){
|
||||
foreach($rs_contratti AS $contratto){
|
||||
if (sizeof($rs_contratti) > 0) {
|
||||
foreach ($rs_contratti as $contratto) {
|
||||
echo "
|
||||
<div class='alert alert-info' style='margin-bottom: 10px;'>
|
||||
".$contratto['descrizione']."
|
||||
</div>";
|
||||
".$contratto['descrizione'].'
|
||||
</div>';
|
||||
}
|
||||
}else{
|
||||
echo "Nessun contratto per questo cliente...";
|
||||
} else {
|
||||
echo 'Nessun contratto per questo cliente...';
|
||||
}
|
||||
echo "
|
||||
</div>";
|
||||
echo '
|
||||
</div>';
|
||||
|
||||
//Fatture emesse o parzialnente pagate
|
||||
$rs_documenti = $dbo->fetchArray("SELECT co_documenti.id AS id, CONCAT('Fattura ', numero_esterno, ' del ', DATE_FORMAT(data, '%d/%m/%Y')) AS descrizione FROM co_documenti WHERE idstatodocumento IN(SELECT id FROM co_statidocumento WHERE descrizione IN('Emessa', 'Parzialmente pagato')) AND idanagrafica=".prepare($id_anagrafica));
|
||||
|
@ -36,43 +35,40 @@ switch($op){
|
|||
echo "
|
||||
<div class='col-md-4'>
|
||||
<b>Fatture:</b><hr style='margin-top:5px;margin-bottom:15px;'>";
|
||||
if(sizeof($rs_documenti)>0){
|
||||
foreach($rs_documenti AS $documento){
|
||||
|
||||
$rs_scadenze = $dbo->fetchArray("SELECT * FROM co_scadenziario WHERE iddocumento=".prepare($documento['id']));
|
||||
if (sizeof($rs_documenti) > 0) {
|
||||
foreach ($rs_documenti as $documento) {
|
||||
$rs_scadenze = $dbo->fetchArray('SELECT * FROM co_scadenziario WHERE iddocumento='.prepare($documento['id']));
|
||||
|
||||
echo "
|
||||
<div class='alert alert-info' style='margin-bottom: 10px;'>
|
||||
".$documento['descrizione']."<br>";
|
||||
foreach($rs_scadenze AS $scadenza){
|
||||
echo Translator::dateToLocale($scadenza['scadenza'])." - ".Translator::numberToLocale($scadenza['da_pagare'])." €<br>";
|
||||
".$documento['descrizione'].'<br>';
|
||||
foreach ($rs_scadenze as $scadenza) {
|
||||
echo Translator::dateToLocale($scadenza['scadenza']).' - '.Translator::numberToLocale($scadenza['da_pagare']).' €<br>';
|
||||
}
|
||||
echo "
|
||||
</div>";
|
||||
echo '
|
||||
</div>';
|
||||
}
|
||||
}else{
|
||||
echo "Nessuna fattura per questo cliente...";
|
||||
} else {
|
||||
echo 'Nessuna fattura per questo cliente...';
|
||||
}
|
||||
echo "
|
||||
</div>";
|
||||
echo '
|
||||
</div>';
|
||||
|
||||
//Note dell'anagrafica
|
||||
$rs_anagrafica = $dbo->fetchOne("SELECT note FROM an_anagrafiche WHERE idanagrafica=".prepare($id_anagrafica));
|
||||
$rs_anagrafica = $dbo->fetchOne('SELECT note FROM an_anagrafiche WHERE idanagrafica='.prepare($id_anagrafica));
|
||||
|
||||
if($rs_anagrafica['note']!=''){
|
||||
if ($rs_anagrafica['note'] != '') {
|
||||
echo "
|
||||
<div class='col-md-4'>
|
||||
<b>NOTE CLIENTE:</b><hr style='margin-top:5px;margin-bottom:15px;'>
|
||||
<div class='alert alert-info' style='margin-bottom: 10px;'>".$rs_anagrafica['note']."</div>
|
||||
</div>";
|
||||
}else{
|
||||
echo "Nessuna nota per questo cliente...";
|
||||
<div class='alert alert-info' style='margin-bottom: 10px;'>".$rs_anagrafica['note'].'</div>
|
||||
</div>';
|
||||
} else {
|
||||
echo 'Nessuna nota per questo cliente...';
|
||||
}
|
||||
|
||||
echo "
|
||||
</div>";
|
||||
echo '
|
||||
</div>';
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
?>
|
|
@ -28,7 +28,7 @@ $module_anagrafiche = Modules::get('Anagrafiche');
|
|||
// Verifica aggiuntive sulla sequenzialità dei numeri
|
||||
$numero_previsto = verifica_numero_intervento($intervento);
|
||||
|
||||
if (!empty($numero_previsto) && intval((setting('Verifica numero intervento'))) ) {
|
||||
if (!empty($numero_previsto) && intval((setting('Verifica numero intervento')))) {
|
||||
echo '
|
||||
<div class="alert alert-warning">
|
||||
<i class="fa fa-warning"></i> '.tr("E' assente una attività di numero _NUM_ in data precedente o corrispondente a _DATE_: si potrebbero verificare dei problemi con la numerazione corrente delle attività", [
|
||||
|
@ -386,7 +386,7 @@ echo '
|
|||
|
||||
<div class="panel-body">
|
||||
<?php
|
||||
if($show_prezzi){
|
||||
if ($show_prezzi) {
|
||||
echo "
|
||||
<div class=\"pull-right\">
|
||||
<a class='btn btn-default btn-details' onclick=\"$('.extra').removeClass('hide'); $(this).addClass('hide'); $('#dontshowall_dettagli').removeClass('hide');\" id='showall_dettagli'><i class='fa fa-square-o'></i> <?php echo tr('Visualizza dettaglio costi'); ?></a>
|
||||
|
|
|
@ -43,7 +43,7 @@ switch (filter('op')) {
|
|||
], ['id' => $id_record]);
|
||||
|
||||
// Messaggio di avvertenza
|
||||
if ((stripos('N6', (string)$codice_natura) === 0) && $esigibilita == 'S') {
|
||||
if ((stripos('N6', (string) $codice_natura) === 0) && $esigibilita == 'S') {
|
||||
flash()->warning(tr('Combinazione di natura IVA _TYPE_ ed esigibilità non compatibile', [
|
||||
'_TYPE_' => $codice_natura,
|
||||
]));
|
||||
|
|
|
@ -23,7 +23,7 @@ include_once __DIR__.'/../../core.php';
|
|||
// select-options
|
||||
|
||||
if (setting('Attiva scorciatoie da tastiera')) {
|
||||
echo '<div class="alert alert-info">
|
||||
echo '<div class="alert alert-info">
|
||||
<i class="fa fa-info-circle"></i> '.tr('Scorciatoie da tastiera: <b>F7</b> - Barcode, <b>F8</b> - Carico, <b>F9</b> - Sarico, <b>F10</b> - Spostamento').'
|
||||
</div>';
|
||||
}
|
||||
|
|
|
@ -121,19 +121,17 @@ switch (filter('op')) {
|
|||
|
||||
//Controllo indirizzo e-mail aggiunto
|
||||
foreach ($newsletter->anagrafiche as $anagrafica) {
|
||||
|
||||
if (!empty($anagrafica['email'])){
|
||||
if (!empty($anagrafica['email'])) {
|
||||
$check = Validate::isValidEmail($anagrafica['email']);
|
||||
|
||||
if (empty($check['valid-format'])) {
|
||||
$errors[] = $anagrafica['email'];
|
||||
}
|
||||
}else{
|
||||
} else {
|
||||
$errors[] = tr('Indirizzo e-mail mancante per "_EMAIL_"', [
|
||||
'_EMAIL_' => $anagrafica['ragione_sociale'],
|
||||
]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (!empty($errors)) {
|
||||
|
@ -148,7 +146,7 @@ switch (filter('op')) {
|
|||
flash()->warning(tr('Attenzione questi indirizzi e-mail non sembrano essere validi: _EMAIL_ ', [
|
||||
'_EMAIL_' => $message,
|
||||
]));
|
||||
}else{
|
||||
} else {
|
||||
flash()->info(tr('Nuovi destinatari aggiunti correttamente alla newsletter!'));
|
||||
}
|
||||
|
||||
|
@ -167,22 +165,17 @@ switch (filter('op')) {
|
|||
//$receiver = post('id');
|
||||
|
||||
$anagrafiche = $newsletter->anagrafiche;
|
||||
|
||||
foreach ($anagrafiche as $anagrafica) {
|
||||
|
||||
$newsletter->anagrafiche()->detach($anagrafica->id);
|
||||
|
||||
foreach ($anagrafiche as $anagrafica) {
|
||||
$newsletter->anagrafiche()->detach($anagrafica->id);
|
||||
}
|
||||
|
||||
|
||||
flash()->info(tr('Tutti i destinatari sono stati rimossi dalla newsletter!'));
|
||||
|
||||
break;
|
||||
|
||||
|
||||
// Duplica newsletter
|
||||
case 'copy':
|
||||
|
||||
$new = $newsletter->replicate();
|
||||
$new->state = 'DEV';
|
||||
$new->completed_at = null;
|
||||
|
@ -190,10 +183,7 @@ switch (filter('op')) {
|
|||
|
||||
$id_record = $new->id;
|
||||
|
||||
|
||||
flash()->info(tr('Newsletter duplicata correttamente!'));
|
||||
|
||||
break;
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -17,8 +17,6 @@
|
|||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
|
||||
if ($newsletter->state == 'DEV') {
|
||||
echo '
|
||||
<button type="button" class="btn btn-primary ask" data-msg="'.tr('Procedere ad inviare la newsletter?').'" data-op="send" data-button="'.tr('Invia').'" data-class="btn btn-lg btn-warning">
|
||||
|
|
|
@ -147,8 +147,8 @@ echo '
|
|||
<h3 class="panel-title">
|
||||
'.tr('Destinatari').'
|
||||
<span> ('.$anagrafiche->count().')</span> <div class="pull-right" >
|
||||
'.(($anagrafiche->where('email', '')->count()>0) ? ' <span title="'.tr('Indirizzi e-mail mancanti').'" class="tip label label-danger clickable">'.$anagrafiche->where('email', '')->count().'</span>' : '')
|
||||
.(($anagrafiche->where('enable_newsletter', false)->count()>0) ? ' <span title="'.tr('Indirizzi e-mail senza consenso per newsletter').'" class="tip label label-warning clickable">'.$anagrafiche->where('enable_newsletter', false)->count().'</span>' : '').'</div>
|
||||
'.(($anagrafiche->where('email', '')->count() > 0) ? ' <span title="'.tr('Indirizzi e-mail mancanti').'" class="tip label label-danger clickable">'.$anagrafiche->where('email', '')->count().'</span>' : '')
|
||||
.(($anagrafiche->where('enable_newsletter', false)->count() > 0) ? ' <span title="'.tr('Indirizzi e-mail senza consenso per newsletter').'" class="tip label label-warning clickable">'.$anagrafiche->where('enable_newsletter', false)->count().'</span>' : '').'</div>
|
||||
</h3>
|
||||
</div>
|
||||
|
||||
|
@ -175,7 +175,7 @@ if (!$anagrafiche->isEmpty()) {
|
|||
$mail_id = $anagrafica->pivot->id_email;
|
||||
$mail = Mail::find($mail_id);
|
||||
if (!empty($mail) && !empty($mail->sent_at)) {
|
||||
$data = '<span class="fa fa-paper-plane text-success" > '. timestampFormat($mail->sent_at).'</span>';
|
||||
$data = '<span class="fa fa-paper-plane text-success" > '.timestampFormat($mail->sent_at).'</span>';
|
||||
} else {
|
||||
$data = '<span class="fa fa-clock-o text-info" >
|
||||
'.tr('Non ancora inviata').'</span>';
|
||||
|
@ -188,10 +188,10 @@ if (!$anagrafiche->isEmpty()) {
|
|||
<td class="text-left">'.$anagrafica->tipo.'</td>
|
||||
<td class="text-left">
|
||||
'.((!empty($anagrafica->email) ? '
|
||||
{[ "type": "text", "name": "email", "id": "email_'.rand(0,99999).'", "readonly": "1", "class": "email-mask", "value": "'.$anagrafica->email.'", "validation": "email" ]}': '<span class="fa fa-close text-danger"> '.tr('Indirizzo e-mail mancante').'</span>')).'</td>
|
||||
{[ "type": "text", "name": "email", "id": "email_'.rand(0, 99999).'", "readonly": "1", "class": "email-mask", "value": "'.$anagrafica->email.'", "validation": "email" ]}' : '<span class="fa fa-close text-danger"> '.tr('Indirizzo e-mail mancante').'</span>')).'</td>
|
||||
<td class="text-center">'.$data.'</td>
|
||||
<td class="text-left">
|
||||
'.((!empty($anagrafica->enable_newsletter)) ? '<span class="fa fa-check text-success"> '.tr('Abilitato').'</span>': '<span class="fa fa-exclamation-triangle text-warning"> '.tr('Disabilitato').'</span>').'
|
||||
'.((!empty($anagrafica->enable_newsletter)) ? '<span class="fa fa-check text-success"> '.tr('Abilitato').'</span>' : '<span class="fa fa-exclamation-triangle text-warning"> '.tr('Disabilitato').'</span>').'
|
||||
</td>
|
||||
<td class="text-center">
|
||||
<a class="btn btn-danger ask btn-xs" data-backto="record-edit" data-op="remove_receiver" data-id="'.$anagrafica->id.'">
|
||||
|
|
|
@ -23,16 +23,13 @@ $name = filter('name');
|
|||
$value = filter('value');
|
||||
|
||||
switch ($name) {
|
||||
|
||||
case 'email':
|
||||
|
||||
$check = Validate::isValidEmail($value);
|
||||
|
||||
|
||||
if (empty($check['valid-format'])) {
|
||||
$result = false;
|
||||
$errors[] = tr("L'email inserita non possiede un formato valido");
|
||||
}else{
|
||||
} else {
|
||||
$result = true;
|
||||
}
|
||||
|
||||
|
@ -40,8 +37,6 @@ switch ($name) {
|
|||
$result = false;
|
||||
$errors[] = tr("Impossibile verificare l'origine dell'email");
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (!empty($errors)) {
|
||||
$message = tr('Attenzione').':<ul>';
|
||||
|
@ -51,7 +46,6 @@ switch ($name) {
|
|||
$message .= '</ul>';
|
||||
}
|
||||
|
||||
|
||||
$response = [
|
||||
'result' => $result,
|
||||
'message' => $message,
|
||||
|
|
|
@ -469,7 +469,7 @@ switch (post('op')) {
|
|||
$copia->qta = $qta;
|
||||
$copia->qta_evasa = 0;
|
||||
$copia->costo_unitario = 0;
|
||||
|
||||
|
||||
// Impostazione al prezzo di acquisto per Articoli
|
||||
if ($copia->isArticolo()) {
|
||||
$copia->setSconto(0, 'PRC');
|
||||
|
@ -477,11 +477,11 @@ switch (post('op')) {
|
|||
$articolo = $copia->articolo;
|
||||
|
||||
$fornitore = DettaglioPrezzo::dettagli($riga->idarticolo, $anagrafica->id, $dir, $qta)->first();
|
||||
if(empty($fornitore)){
|
||||
$fornitore = DettaglioPrezzo::dettaglioPredefinito($riga->idarticolo, $anagrafica->id, $dir)->first();
|
||||
if (empty($fornitore)) {
|
||||
$fornitore = DettaglioPrezzo::dettaglioPredefinito($riga->idarticolo, $anagrafica->id, $dir)->first();
|
||||
}
|
||||
|
||||
$prezzo_unitario = $fornitore->prezzo_unitario-($fornitore->prezzo_unitario*$fornitore->percentuale/100);
|
||||
$prezzo_unitario = $fornitore->prezzo_unitario - ($fornitore->prezzo_unitario * $fornitore->percentuale / 100);
|
||||
|
||||
$copia->setPrezzoUnitario($fornitore ? $prezzo_unitario : $articolo->prezzo_acquisto, $copia->aliquota->id);
|
||||
$copia->setSconto($fornitore->sconto_percentuale ?: 0, 'PRC');
|
||||
|
@ -496,7 +496,7 @@ switch (post('op')) {
|
|||
$ordine->idstatoordine = post('id_stato');
|
||||
$ordine->save();
|
||||
}
|
||||
|
||||
|
||||
ricalcola_costiagg_ordine($id_record);
|
||||
|
||||
flash()->info(tr('Ordine _NUM_ aggiunto!', [
|
||||
|
@ -545,11 +545,11 @@ switch (post('op')) {
|
|||
$articolo = $copia->articolo;
|
||||
|
||||
$fornitore = DettaglioPrezzo::dettagli($riga->idarticolo, $anagrafica->id, $dir, $qta)->first();
|
||||
if(empty($fornitore)){
|
||||
$fornitore = DettaglioPrezzo::dettaglioPredefinito($riga->idarticolo, $anagrafica->id, $dir)->first();
|
||||
if (empty($fornitore)) {
|
||||
$fornitore = DettaglioPrezzo::dettaglioPredefinito($riga->idarticolo, $anagrafica->id, $dir)->first();
|
||||
}
|
||||
|
||||
$prezzo_unitario = $fornitore->prezzo_unitario-($fornitore->prezzo_unitario*$fornitore->percentuale/100);
|
||||
|
||||
$prezzo_unitario = $fornitore->prezzo_unitario - ($fornitore->prezzo_unitario * $fornitore->percentuale / 100);
|
||||
|
||||
$copia->setPrezzoUnitario($fornitore ? $prezzo_unitario : $articolo->prezzo_acquisto, $copia->aliquota->id);
|
||||
$copia->setSconto($fornitore->sconto_percentuale ?: 0, 'PRC');
|
||||
|
|
|
@ -19,11 +19,11 @@
|
|||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
use Modules\Articoli\Articolo as ArticoloOriginale;
|
||||
use Modules\Fatture\Fattura;
|
||||
use Modules\Fatture\Stato;
|
||||
use Modules\Fatture\Tipo;
|
||||
use Modules\Ordini\Ordine;
|
||||
use Modules\Articoli\Articolo as ArticoloOriginale;
|
||||
|
||||
$module_fatture = 'Fatture di vendita';
|
||||
|
||||
|
|
|
@ -31,7 +31,7 @@ switch (post('op')) {
|
|||
$lvl = post('lvl');
|
||||
|
||||
if (post('id_conto') !== null) {
|
||||
if($lvl=='2'){
|
||||
if ($lvl == '2') {
|
||||
// Controllo che non sia stato usato un numero non valido del conto
|
||||
$query = 'SELECT idpianodeiconti1, numero FROM co_pianodeiconti2 WHERE numero='.prepare($numero).' AND idpianodeiconti1='.prepare($id_conto);
|
||||
$rs = $dbo->fetchArray($query);
|
||||
|
@ -39,7 +39,7 @@ switch (post('op')) {
|
|||
if (sizeof($rs) == 0) {
|
||||
$query = 'INSERT INTO co_pianodeiconti2(numero, descrizione, idpianodeiconti1) VALUES('.prepare($numero).', '.prepare($descrizione).', '.prepare($id_conto).')';
|
||||
}
|
||||
}else {
|
||||
} else {
|
||||
// Controllo che non sia stato usato un numero non valido del conto
|
||||
$query = 'SELECT idpianodeiconti2, numero FROM co_pianodeiconti3 WHERE numero='.prepare($numero).' AND idpianodeiconti2='.prepare($id_conto);
|
||||
$rs = $dbo->fetchArray($query);
|
||||
|
@ -52,7 +52,7 @@ switch (post('op')) {
|
|||
if ($dbo->query($query)) {
|
||||
flash()->info(tr('Nuovo conto aggiunto!'));
|
||||
} else {
|
||||
flash()->error(tr('Il numero scelto è già esistente!'));
|
||||
flash()->error(tr('Il numero scelto è già esistente!'));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -20,8 +20,7 @@
|
|||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
$id_conto = get('id');
|
||||
$lvl = get('lvl')
|
||||
|
||||
$lvl = get('lvl');
|
||||
|
||||
?><form action="<?php echo base_path(); ?>/editor.php?id_module=<?php echo Modules::get('Piano dei conti')['id']; ?>" method="post">
|
||||
<input type="hidden" name="op" value="add">
|
||||
|
|
|
@ -19,11 +19,11 @@
|
|||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
use Modules\Articoli\Articolo as ArticoloOriginale;
|
||||
use Modules\Fatture\Fattura;
|
||||
use Modules\Fatture\Stato;
|
||||
use Modules\Fatture\Tipo;
|
||||
use Modules\Preventivi\Preventivo;
|
||||
use Modules\Articoli\Articolo as ArticoloOriginale;
|
||||
|
||||
$module_fatture = 'Fatture di vendita';
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
echo'
|
||||
echo '
|
||||
<button type="button" class="btn btn-primary" onclick="if( confirm(\'Duplicare questo preventivo?\') ){ $(\'#copia-preventivo\').submit(); }">
|
||||
<i class="fa fa-copy"></i> '.tr('Duplica preventivo').'
|
||||
</button>';
|
||||
|
|
|
@ -30,7 +30,7 @@ $revisione = Preventivo::find($id_record)->ultima_revisione;
|
|||
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "value": "Revisione n. <?php echo $revisione+1; ?>" ]}
|
||||
{[ "type": "text", "label": "<?php echo tr('Descrizione'); ?>", "name": "descrizione", "value": "Revisione n. <?php echo $revisione + 1; ?>" ]}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -24,9 +24,8 @@ use Carbon\CarbonInterval;
|
|||
use Common\Components\Component;
|
||||
use Common\Document;
|
||||
use Modules\Anagrafiche\Anagrafica;
|
||||
use Modules\Interventi\Intervento;
|
||||
use Modules\Ordini\Ordine;
|
||||
use Modules\Fatture\Fattura;
|
||||
use Modules\Interventi\Intervento;
|
||||
use Modules\TipiIntervento\Tipo as TipoSessione;
|
||||
use Traits\RecordTrait;
|
||||
use Traits\ReferenceTrait;
|
||||
|
@ -253,7 +252,7 @@ class Preventivo extends Document
|
|||
if ($qta_evasa == 0) {
|
||||
$descrizione = 'In lavorazione';
|
||||
$codice_intervento = 'OK';
|
||||
} else if($trigger->getDocument() instanceof Fattura){
|
||||
} elseif ($trigger->getDocument() instanceof Fattura) {
|
||||
$descrizione = $parziale ? 'Parzialmente fatturato' : 'Fatturato';
|
||||
$codice_intervento = 'FAT';
|
||||
} else {
|
||||
|
|
|
@ -148,7 +148,7 @@ foreach ($id_documenti as $id_documento) {
|
|||
if ($is_insoluto) {
|
||||
$scadenze = $database->fetchArray('SELECT id, ABS(da_pagare) AS rata, iddocumento FROM co_scadenziario WHERE iddocumento='.prepare($id_documento).' AND ABS(da_pagare) = ABS(pagato) ORDER BY updated_at DESC LIMIT 0, 1');
|
||||
} else {
|
||||
$scadenze = $database->fetchArray('SELECT id, ABS(da_pagare - pagato) AS rata, iddocumento FROM co_scadenziario WHERE iddocumento='.prepare($id_documento).' AND ABS(da_pagare) > ABS(pagato)'. (!empty($id_scadenze) ? 'AND id IN('.implode(',',$id_scadenze).')' : '').' ORDER BY YEAR(scadenza) ASC, MONTH(scadenza) ASC');
|
||||
$scadenze = $database->fetchArray('SELECT id, ABS(da_pagare - pagato) AS rata, iddocumento FROM co_scadenziario WHERE iddocumento='.prepare($id_documento).' AND ABS(da_pagare) > ABS(pagato)'.(!empty($id_scadenze) ? 'AND id IN('.implode(',', $id_scadenze).')' : '').' ORDER BY YEAR(scadenza) ASC, MONTH(scadenza) ASC');
|
||||
}
|
||||
|
||||
// Selezione prima scadenza
|
||||
|
|
|
@ -21,7 +21,6 @@ include_once __DIR__.'/../../core.php';
|
|||
|
||||
switch (post('op')) {
|
||||
case 'update':
|
||||
|
||||
if (!empty(intval(post('predefined'))) && !empty(post('module'))) {
|
||||
$dbo->query('UPDATE zz_prints SET predefined = 0 WHERE zz_prints.id != '.prepare($id_record).' AND id_module = '.post('module'));
|
||||
}
|
||||
|
@ -34,7 +33,6 @@ switch (post('op')) {
|
|||
$print->order = post('order');
|
||||
$print->predefined = intval(post('predefined'));
|
||||
|
||||
|
||||
$print->save();
|
||||
|
||||
flash()->info(tr('Modifiche salvate correttamente'));
|
||||
|
|
|
@ -62,13 +62,13 @@ use Models\PrintTemplate;
|
|||
</div>
|
||||
|
||||
<?php
|
||||
if(empty($stampa_predefinita = PrintTemplate::where('predefined', true)->where('id_module', $record['id_module'])->orderBy('id')->first())){
|
||||
if (empty($stampa_predefinita = PrintTemplate::where('predefined', true)->where('id_module', $record['id_module'])->orderBy('id')->first())) {
|
||||
$stampa_predefinita->name = 'Nessuna';
|
||||
}
|
||||
?>
|
||||
|
||||
<div class="col-md-3">
|
||||
{[ "type": "checkbox", "label": "<?php echo tr('Predefinita'); ?>", "help" : "<?php echo tr("Attiva per impostare questa stampa come predefinita. Attualmente la stampa predefinita per questo modulo è: ".$stampa_predefinita->name); ?>", "name": "predefined", "value": "$predefined$", "disabled": "<?php echo intval($record['predefined']); ?>" ]}
|
||||
{[ "type": "checkbox", "label": "<?php echo tr('Predefinita'); ?>", "help" : "<?php echo tr('Attiva per impostare questa stampa come predefinita. Attualmente la stampa predefinita per questo modulo è: '.$stampa_predefinita->name); ?>", "name": "predefined", "value": "$predefined$", "disabled": "<?php echo intval($record['predefined']); ?>" ]}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -25,17 +25,17 @@ $operazione = filter('op');
|
|||
|
||||
switch ($operazione) {
|
||||
case 'update':
|
||||
$articolo = (array)post('id_articolo');
|
||||
$data_installazione = (array)post('data_installazione');
|
||||
$data_disinstallazione = (array)post('data_disinstallazione');
|
||||
$data_registrazione = (array)post('data_registrazione');
|
||||
$note = (array)post('note');
|
||||
$articolo = (array) post('id_articolo');
|
||||
$data_installazione = (array) post('data_installazione');
|
||||
$data_disinstallazione = (array) post('data_disinstallazione');
|
||||
$data_registrazione = (array) post('data_registrazione');
|
||||
$note = (array) post('note');
|
||||
|
||||
$key = key($articolo);
|
||||
|
||||
if(post('sostituito')){
|
||||
if (post('sostituito')) {
|
||||
$field_articolo = 'pre_id_articolo';
|
||||
} else{
|
||||
} else {
|
||||
$field_articolo = 'id_articolo';
|
||||
}
|
||||
|
||||
|
@ -46,7 +46,7 @@ switch ($operazione) {
|
|||
'data_registrazione' => $data_registrazione[$key] ?: null,
|
||||
'note' => $note[$key],
|
||||
], ['id' => $key]);
|
||||
|
||||
|
||||
flash()->info(tr('Salvataggio completato!'));
|
||||
$dbo->commitTransaction();
|
||||
header('Location: '.$rootdir.'/editor.php?id_module='.$id_module.'&id_record='.$id_record.'#tab_'.$id_plugin);
|
||||
|
@ -69,11 +69,10 @@ switch ($operazione) {
|
|||
$old_id = get('id_old');
|
||||
$old = $dbo->selectOne('my_componenti_articoli', '*', ['id' => $old_id]);
|
||||
|
||||
if(!empty($old['id_articolo'])){
|
||||
|
||||
if(empty($old['data_disinstallazione'])){
|
||||
if (!empty($old['id_articolo'])) {
|
||||
if (empty($old['data_disinstallazione'])) {
|
||||
$data = Carbon::now();
|
||||
} else{
|
||||
} else {
|
||||
$data = $old['data_disinstallazione'];
|
||||
}
|
||||
|
||||
|
@ -81,7 +80,7 @@ switch ($operazione) {
|
|||
'pre_id_articolo' => $old['id_articolo'],
|
||||
'id_articolo' => 0,
|
||||
'data_disinstallazione' => $data,
|
||||
],[
|
||||
], [
|
||||
'id' => $old_id,
|
||||
]);
|
||||
|
||||
|
@ -102,7 +101,7 @@ switch ($operazione) {
|
|||
]);
|
||||
|
||||
flash()->info(tr('Informazioni salvate correttamente!'));
|
||||
} else{
|
||||
} else {
|
||||
flash()->warning(tr('Inserire un articolo prima di effettuare la sostituzione!'));
|
||||
}
|
||||
|
||||
|
|
|
@ -19,4 +19,4 @@
|
|||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
echo '{( "name": "filelist_and_upload", "id":"'.rand(1,999).'", "id_record": "'.get('id').'", "id_module": "'.$id_module.'", "id_plugin": "'.$id_plugin.'" )}';
|
||||
echo '{( "name": "filelist_and_upload", "id":"'.rand(1, 999).'", "id_record": "'.get('id').'", "id_module": "'.$id_module.'", "id_plugin": "'.$id_plugin.'" )}';
|
||||
|
|
|
@ -26,8 +26,8 @@ $componenti = $dbo->fetchArray('SELECT my_componenti_articoli.*, my_impianti.ida
|
|||
$installati = 0;
|
||||
$disinstallati = 0;
|
||||
|
||||
foreach($componenti as $componente){
|
||||
if(!empty($componente['pre_id_articolo'])){
|
||||
foreach ($componenti as $componente) {
|
||||
if (!empty($componente['pre_id_articolo'])) {
|
||||
$id_articolo = $componente['pre_id_articolo'];
|
||||
$check_value = 1;
|
||||
$box = 'danger';
|
||||
|
@ -36,8 +36,8 @@ foreach($componenti as $componente){
|
|||
$text = 'DISINSTALLATO';
|
||||
$class = 'danger';
|
||||
$title = ''.tr('Storico').'';
|
||||
$table ='default';
|
||||
if($disinstallati==0){
|
||||
$table = 'default';
|
||||
if ($disinstallati == 0) {
|
||||
echo '
|
||||
<div class="row">
|
||||
<div class="col-md-12 text-center">
|
||||
|
@ -45,9 +45,9 @@ foreach($componenti as $componente){
|
|||
</div>
|
||||
</div>
|
||||
<hr>';
|
||||
$disinstallati++;
|
||||
++$disinstallati;
|
||||
}
|
||||
} else{
|
||||
} else {
|
||||
$id_articolo = $componente['id_articolo'];
|
||||
$check_value = 0;
|
||||
$box = 'primary';
|
||||
|
@ -56,8 +56,8 @@ foreach($componenti as $componente){
|
|||
$text = 'INSTALLATO';
|
||||
$class = 'primary';
|
||||
$title = ''.tr('Dati').'';
|
||||
$table ='primary';
|
||||
if($installati==0){
|
||||
$table = 'primary';
|
||||
if ($installati == 0) {
|
||||
echo '
|
||||
<div class="row">
|
||||
<div class="col-md-12 text-center">
|
||||
|
@ -65,15 +65,15 @@ foreach($componenti as $componente){
|
|||
</div>
|
||||
</div>
|
||||
<hr>';
|
||||
$installati++;
|
||||
++$installati;
|
||||
}
|
||||
}
|
||||
|
||||
$allegati = $dbo->fetchOne('SELECT COUNT(id) AS num FROM zz_files WHERE id_plugin='.prepare($id_plugin).' AND id_record='.$componente['id'].' GROUP BY id_record')['num'];
|
||||
|
||||
if($allegati){
|
||||
if ($allegati) {
|
||||
$icon = 'fa fa-check text-success';
|
||||
} else{
|
||||
} else {
|
||||
$icon = 'fa fa-times text-danger';
|
||||
}
|
||||
|
||||
|
@ -158,13 +158,13 @@ foreach($componenti as $componente){
|
|||
</a>
|
||||
</div>';
|
||||
|
||||
if(!empty($componente['id_articolo'])){
|
||||
echo '
|
||||
if (!empty($componente['id_articolo'])) {
|
||||
echo '
|
||||
<div class="col-md-9">
|
||||
<button type="button" class="btn btn-warning pull-right" onclick="sostituisci('.$componente['id'].')"><i class="fa fa-cog"></i> '.tr('Sostituisci').'</button>
|
||||
</div>';
|
||||
}
|
||||
echo '
|
||||
}
|
||||
echo '
|
||||
<div class="col-md-1 pull-right">
|
||||
<button type="submit" class="btn btn-success pull-right"><i class="fa fa-check"></i> '.tr('Salva').'</button>
|
||||
</div>
|
||||
|
@ -174,7 +174,7 @@ foreach($componenti as $componente){
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>';
|
||||
</form>';
|
||||
}
|
||||
|
||||
echo '
|
||||
|
@ -191,4 +191,4 @@ echo '
|
|||
}
|
||||
}
|
||||
|
||||
</script>';
|
||||
</script>';
|
||||
|
|
|
@ -96,17 +96,17 @@ class DettaglioPrezzo extends Model
|
|||
->whereNull('massimo');
|
||||
}
|
||||
|
||||
public static function dettagli($id_articolo, $id_anagrafica, $direzione, $qta=null)
|
||||
public static function dettagli($id_articolo, $id_anagrafica, $direzione, $qta = null)
|
||||
{
|
||||
$dettagli = self::where('id_articolo', $id_articolo)
|
||||
->where('id_anagrafica', $id_anagrafica)
|
||||
->where('dir', $direzione);
|
||||
|
||||
if($qta==null){
|
||||
|
||||
if ($qta == null) {
|
||||
$dettagli = $dettagli
|
||||
->whereNotNull('minimo')
|
||||
->whereNotNull('massimo');
|
||||
} else{
|
||||
} else {
|
||||
$dettagli = $dettagli
|
||||
->where('minimo', '<=', $qta)
|
||||
->where('massimo', '>=', $qta);
|
||||
|
|
|
@ -26,7 +26,7 @@ namespace Plugins\DettagliArticolo;
|
|||
*/
|
||||
class METEL
|
||||
{
|
||||
const HEADER = [
|
||||
public const HEADER = [
|
||||
1 => 'Identificazione tracciato',
|
||||
21 => 'Sigla Azienda',
|
||||
24 => 'Partita IVA',
|
||||
|
@ -41,7 +41,7 @@ class METEL
|
|||
153 => 'Filler (spazi)',
|
||||
];
|
||||
|
||||
const ROW = [
|
||||
public const ROW = [
|
||||
1 => 'Sigla Marchio',
|
||||
4 => 'Codice Prodotto Azienda',
|
||||
20 => 'Codice EAN',
|
||||
|
|
|
@ -693,7 +693,7 @@ class FatturaElettronica
|
|||
if ($is_privato_estero) {
|
||||
$result['IdFiscaleIVA']['IdPaese'] = $anagrafica->nazione->iso2;
|
||||
$result['IdFiscaleIVA']['IdCodice'] = '999999999';
|
||||
unset( $result['Anagrafica']['CodiceFiscale'] );
|
||||
unset($result['Anagrafica']['CodiceFiscale']);
|
||||
}
|
||||
|
||||
if (!empty($anagrafica['nome']) or !empty($anagrafica['cognome'])) {
|
||||
|
@ -910,7 +910,7 @@ class FatturaElettronica
|
|||
// Con la nuova versione in vigore dal 01/01/2021, questo nodo diventa ripetibile.
|
||||
$result['DatiRitenuta'] = [
|
||||
'TipoRitenuta' => (Validate::isValidTaxCode($azienda['codice_fiscale']) and $cliente['tipo'] == 'Privato') ? 'RT01' : 'RT02',
|
||||
'ImportoRitenuta' => $totale_ritenutaacconto,
|
||||
'ImportoRitenuta' => $totale_ritenutaacconto,
|
||||
'AliquotaRitenuta' => $percentuale,
|
||||
'CausalePagamento' => setting("Causale ritenuta d'acconto"),
|
||||
];
|
||||
|
@ -1027,7 +1027,6 @@ class FatturaElettronica
|
|||
|
||||
// Se imposto il vettore deve essere indicata anche la p.iva nella sua anagrafica
|
||||
if ($documento->tipo->descrizione == 'Fattura accompagnatoria di vendita') {
|
||||
|
||||
if ($documento['idvettore']) {
|
||||
$vettore = Anagrafica::find($documento['idvettore']);
|
||||
$result['DatiAnagraficiVettore'] = static::getDatiAnagrafici($vettore);
|
||||
|
@ -1050,27 +1049,26 @@ class FatturaElettronica
|
|||
}
|
||||
}
|
||||
|
||||
if (!empty($documento['idsede_destinazione'])){
|
||||
|
||||
if (!empty($documento['idsede_destinazione'])) {
|
||||
$sede = $database->fetchOne('SELECT * FROM an_sedi WHERE id='.prepare($documento['idsede_destinazione']));
|
||||
|
||||
if (!empty($sede['indirizzo'])){
|
||||
if (!empty($sede['indirizzo'])) {
|
||||
$result['IndirizzoResa']['Indirizzo'] = $sede['indirizzo'];
|
||||
}
|
||||
|
||||
if (!empty($sede['cap'])){
|
||||
if (!empty($sede['cap'])) {
|
||||
$result['IndirizzoResa']['CAP'] = $sede['cap'];
|
||||
}
|
||||
|
||||
if (!empty($sede['citta'])){
|
||||
if (!empty($sede['citta'])) {
|
||||
$result['IndirizzoResa']['Comune'] = $sede['citta'];
|
||||
}
|
||||
|
||||
if (!empty($sede['provincia'])){
|
||||
if (!empty($sede['provincia'])) {
|
||||
$result['IndirizzoResa']['Provincia'] = $sede['provincia'];
|
||||
}
|
||||
|
||||
if (!empty($sede['id_nazione'])){
|
||||
if (!empty($sede['id_nazione'])) {
|
||||
$rs_nazione = $database->fetchOne('SELECT * FROM an_nazioni WHERE id='.prepare($sede['id_nazione']));
|
||||
|
||||
$result['IndirizzoResa']['Nazione'] = $rs_nazione['iso2'];
|
||||
|
|
|
@ -146,7 +146,7 @@ class FatturaOrdinaria extends FatturaElettronica
|
|||
$articolo->prezzo_acquisto = $riga['PrezzoUnitario'];
|
||||
$articolo->id_fornitore = $fattura->idanagrafica;
|
||||
$articolo->um = $riga['UnitaMisura'];
|
||||
$articolo->idconto_acquisto = $conto[$key];
|
||||
$articolo->idconto_acquisto = $conto[$key];
|
||||
$articolo->save();
|
||||
|
||||
$direzione = 'uscita';
|
||||
|
|
|
@ -48,11 +48,11 @@ class MissingReceiptTask extends Manager
|
|||
->get();
|
||||
|
||||
// Ricerca delle ricevute dedicate
|
||||
foreach ($in_attesa as $fattura){
|
||||
foreach ($in_attesa as $fattura) {
|
||||
$ricevute = Interaction::getInvoiceRecepits($fattura->id);
|
||||
|
||||
// Importazione di tutte le ricevute trovate
|
||||
foreach ($ricevute as $ricevuta){
|
||||
foreach ($ricevute as $ricevuta) {
|
||||
$name = $ricevuta['name'];
|
||||
|
||||
Ricevuta::process($name);
|
||||
|
|
|
@ -24,7 +24,7 @@ use API\Resource;
|
|||
|
||||
class Revisione extends Resource implements RetrieveInterface
|
||||
{
|
||||
const REVISION = '1';
|
||||
public const REVISION = '1';
|
||||
|
||||
public function retrieve($request)
|
||||
{
|
||||
|
|
|
@ -29,7 +29,7 @@ use Util\Zip;
|
|||
class Backup
|
||||
{
|
||||
/** @var string Pattern per i nomi dei backup */
|
||||
const PATTERN = 'OSM backup YYYY-m-d H_i_s';
|
||||
public const PATTERN = 'OSM backup YYYY-m-d H_i_s';
|
||||
|
||||
/** @var array Elenco delle variabili che identificano i backup giornalieri */
|
||||
protected static $daily_replaces = [
|
||||
|
|
|
@ -294,7 +294,7 @@ abstract class Article extends Accounting
|
|||
|
||||
if ($documento instanceof \Modules\Interventi\Intervento) {
|
||||
$id_sede = $this->idsede_partenza;
|
||||
} else{
|
||||
} else {
|
||||
$id_sede = $documento->direzione == 'uscita' ? $documento->idsede_destinazione : $documento->idsede_partenza;
|
||||
}
|
||||
|
||||
|
|
|
@ -181,9 +181,9 @@ abstract class Component extends Model
|
|||
/**
|
||||
* Copia l'oggetto (articolo, riga, descrizione) nel corrispettivo per il documento indicato.
|
||||
*
|
||||
* @param Document $document Documento di destinazione
|
||||
* @param float|null $qta Quantità da riportare
|
||||
* @param boolean $evadi_qta_parent Definisce se evadere la quantità di provenienza
|
||||
* @param Document $document Documento di destinazione
|
||||
* @param float|null $qta Quantità da riportare
|
||||
* @param bool $evadi_qta_parent Definisce se evadere la quantità di provenienza
|
||||
*
|
||||
* @return self
|
||||
*/
|
||||
|
|
|
@ -105,8 +105,8 @@ class Settings
|
|||
public static function setValue($setting, $value)
|
||||
{
|
||||
$setting = self::get($setting);
|
||||
$value = (is_array($value) ? implode(",",$value) : $value);
|
||||
|
||||
$value = (is_array($value) ? implode(',', $value) : $value);
|
||||
|
||||
// Trasformazioni
|
||||
// Boolean (checkbox)
|
||||
if ($setting->tipo == 'boolean') {
|
||||
|
|
|
@ -301,6 +301,26 @@ class Translator extends Util\Singleton
|
|||
return self::getFormatter()->formatTimestamp($string);
|
||||
}
|
||||
|
||||
/**
|
||||
* Converte il numero in ore.
|
||||
*
|
||||
* @param string $string
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function numberToHours($string)
|
||||
{
|
||||
$string = !isset($string) ? 0 : $string;
|
||||
|
||||
$ore = number_format($string, 2);
|
||||
$splitted_hour = explode('.', $ore);
|
||||
$hour = $splitted_hour[0];
|
||||
$minutes = ($splitted_hour[1] / 100) * 60;
|
||||
$time = $hour.':'.sprintf('%02d', $minutes);
|
||||
|
||||
return $time;
|
||||
}
|
||||
|
||||
/**
|
||||
* Aggiunge i contenuti della cartella specificata alle traduzioni disponibili.
|
||||
*
|
||||
|
@ -359,24 +379,4 @@ class Translator extends Util\Singleton
|
|||
|
||||
self::$formatter->setPrecision(auth()->check() ? setting('Cifre decimali per importi') : 2);
|
||||
}
|
||||
|
||||
/**
|
||||
* Converte il numero in ore.
|
||||
*
|
||||
* @param string $string
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public static function numberToHours($string)
|
||||
{
|
||||
$string = !isset($string) ? 0 : $string;
|
||||
|
||||
$ore = number_format($string, 2);
|
||||
$splitted_hour = explode('.', $ore);
|
||||
$hour = $splitted_hour[0];
|
||||
$minutes = ($splitted_hour[1]/100)*60;
|
||||
$time = $hour.":".sprintf("%02d", $minutes);
|
||||
|
||||
return $time;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -151,7 +151,7 @@ $replaces = array_merge($replaces, [
|
|||
'base_link()' => base_path(),
|
||||
'directory' => Prints::get($id_print)['full_directory'],
|
||||
'footer' => !empty($footer) ? $footer : '',
|
||||
'dicitura_fissa_fattura' => setting('Dicitura fissa fattura').((setting('Regime Fiscale') != 'RF02' && setting('Regime Fiscale') != 'RF19' && setting('Regime Fiscale') != 'RF18' && $tipo_cliente != 'Privato') ? tr('Documento privo di valenza fiscale (art 21 dpr 633/72).') : ''),
|
||||
'dicitura_fissa_fattura' => setting('Dicitura fissa fattura').((setting('Regime Fiscale') != 'RF02' && setting('Regime Fiscale') != 'RF19' && setting('Regime Fiscale') != 'RF18' && $tipo_cliente != 'Privato') ? tr('Documento privo di valenza fiscale (art 21 dpr 633/72).') : ''),
|
||||
]);
|
||||
|
||||
unset($replace);
|
||||
|
|
|
@ -179,13 +179,13 @@ if (!$righe->isEmpty()) {
|
|||
<tbody>';
|
||||
|
||||
foreach ($righe as $riga) {
|
||||
if(setting('Formato ore in stampa')=='Sessantesimi'){
|
||||
if($riga->um=='ore'){
|
||||
if (setting('Formato ore in stampa') == 'Sessantesimi') {
|
||||
if ($riga->um == 'ore') {
|
||||
$qta = Translator::numberToHours($riga->qta);
|
||||
} else{
|
||||
} else {
|
||||
$qta = Translator::numberToLocale($riga->qta, 'qta');
|
||||
}
|
||||
} else{
|
||||
} else {
|
||||
$qta = Translator::numberToLocale($riga->qta, 'qta');
|
||||
}
|
||||
// Articolo
|
||||
|
@ -332,9 +332,9 @@ foreach ($sessioni as $i => $sessione) {
|
|||
}
|
||||
|
||||
// Ore lavorate
|
||||
if(setting('Formato ore in stampa')=='Sessantesimi'){
|
||||
if (setting('Formato ore in stampa') == 'Sessantesimi') {
|
||||
$ore_totali = Translator::numberToHours($documento->ore_totali);
|
||||
} else{
|
||||
} else {
|
||||
$ore_totali = Translator::numberToLocale($documento->ore_totali, 2);
|
||||
}
|
||||
|
||||
|
|
|
@ -38,7 +38,7 @@ echo '
|
|||
echo ' <td></td>
|
||||
<td class="text-right">'.moneyFormat(abs($record['totale']), 2).'</td>';
|
||||
}
|
||||
|
||||
|
||||
$scalare += $record['totale'];
|
||||
|
||||
echo '
|
||||
|
|
|
@ -32,4 +32,4 @@ echo '
|
|||
</thead>
|
||||
<tbody>';
|
||||
|
||||
$scalare = 0;
|
||||
$scalare = 0;
|
||||
|
|
4
view.php
4
view.php
|
@ -32,8 +32,8 @@ $link = base_path().'/'.$file->filepath;
|
|||
// Force download of the file
|
||||
if (get('force') == '1') {
|
||||
header('Content-Type: application/octet-stream');
|
||||
header("Content-Transfer-Encoding: Binary");
|
||||
header("Content-disposition: attachment; filename=\"" . basename($file->original_name) . "\"");
|
||||
header('Content-Transfer-Encoding: Binary');
|
||||
header('Content-disposition: attachment; filename="'.basename($file->original_name).'"');
|
||||
readfile($docroot.'/'.$file->filepath);
|
||||
exit();
|
||||
} else {
|
||||
|
|
Loading…
Reference in New Issue