. */ include_once __DIR__.'/../../core.php'; if (Update::isUpdateAvailable() || !$dbo->isInstalled()) { return; } $has_azienda = $dbo->fetchNum("SELECT `an_anagrafiche`.`idanagrafica` FROM `an_anagrafiche` LEFT JOIN `an_tipianagrafiche_anagrafiche` ON `an_anagrafiche`.`idanagrafica`=`an_tipianagrafiche_anagrafiche`.`idanagrafica` LEFT JOIN `an_tipianagrafiche` ON `an_tipianagrafiche`.`idtipoanagrafica`=`an_tipianagrafiche_anagrafiche`.`idtipoanagrafica` WHERE `an_tipianagrafiche`.`descrizione` = 'Azienda' AND `an_anagrafiche`.`deleted_at` IS NULL") != 0; $has_user = $dbo->fetchNum('SELECT `id` FROM `zz_users`') != 0; $settings = [ 'Regime Fiscale' => true, 'Tipo Cassa Previdenziale' => false, 'Conto predefinito fatture di vendita' => true, 'Conto predefinito fatture di acquisto' => true, "Ritenuta d'acconto predefinita" => false, "Causale ritenuta d'acconto" => false, 'Valuta' => true, 'Utilizza prezzi di vendita comprensivi di IVA' => false, ]; if (!empty(setting("Ritenuta d'acconto predefinita"))) { $settings["Causale ritenuta d'acconto"] = true; } $has_settings = true; foreach ($settings as $setting => $required) { if (empty(setting($setting)) && $required) { $has_settings = false; break; } } if ($has_azienda && $has_user && $has_settings) { return; } $pageTitle = tr('Inizializzazione'); include_once AppLegacy::filepath('include|custom|', 'top.php'); // Controllo sull'esistenza di nuovi parametri di configurazione if (post('action') == 'init') { // Azienda predefinita if (!$has_azienda) { Filter::set('post', 'op', 'add'); $id_module = module('Anagrafiche')['id']; include base_dir().'/modules/anagrafiche/actions.php'; // Logo stampe if (!empty($_FILES) && !empty($_FILES['blob']['name'])) { $upload = Uploads::upload($_FILES['blob'], [ 'name' => 'Logo stampe', 'id_module' => $id_module, 'id_record' => $id_record, ]); Settings::setValue('Logo stampe', $upload->filename); } } // Utente amministratore if (!$has_user) { $admin = $dbo->selectOne('zz_groups', ['id'], [ 'nome' => 'Amministratori', ]); // Creazione utente Amministratore $dbo->insert('zz_users', [ 'username' => post('admin_username'), 'password' => auth()->hashPassword(post('admin_password')), 'email' => post('admin_email'), 'idgruppo' => $admin['id'], 'idanagrafica' => isset($id_record) ? $id_record : 0, 'enabled' => 1, ]); // Creazione token API per l'amministratore $dbo->insert('zz_tokens', [ 'id_utente' => $dbo->lastInsertedID(), 'token' => secure_random_string(), ]); } if (!$has_settings) { foreach ($settings as $setting => $required) { $setting = Settings::get($setting); $value = post('setting')[$setting['id']]; if (!empty($value)) { Settings::setValue($setting['nome'], $value); } } } redirect_legacy(base_path(), 'js'); throw new \LegacyExitException(); } $img = AppLegacy::getPaths()['img']; // Visualizzazione dell'interfaccia di impostazione iniziale, nel caso il file di configurazione sia mancante oppure i paramentri non siano sufficienti echo '
'.tr('OSM Logo').'
'; if (!$has_user) { echo '

'.tr('Amministrazione').'

{[ "type": "text", "label": "'.tr('Username').'", "name": "admin_username", "value": "", "placeholder": "'.tr("Digita l'username dell'amministratore").'", "required": 1 ]}
{[ "type": "password", "label": "'.tr('Password').'", "id": "password", "name": "admin_password", "value": "", "placeholder": "'.tr("Digita la password dell'amministratore").'", "required": 1, "strength": "#config" ]}
{[ "type": "email", "label": "'.tr('Email').'", "name": "admin_email", "value": "", "placeholder": "'.tr("Digita l'indirizzo email dell'amministratore").'", "required": 1 ]}
'; } if (!$has_azienda) { echo '

'.tr('Azienda predefinita').'

'; $idtipoanagrafica = $dbo->fetchArray("SELECT idtipoanagrafica FROM an_tipianagrafiche WHERE descrizione='Azienda'")[0]['idtipoanagrafica']; $readonly_tipo = true; ob_start(); include base_dir().'/modules/anagrafiche/add.php'; $anagrafica = ob_get_clean(); echo str_replace('', '', $anagrafica); echo '

'.tr('Logo stampe').'

{[ "type": "file", "placeholder": "'.tr('File').'", "name": "blob" ]}

 

'.tr('Per impostare il logo delle stampe, caricare un file ".jpg". Risoluzione consigliata 302x111 pixel').'.
'; echo '
'; } if (!$has_settings) { echo '

'.tr('Impostazioni di base').'

'; $i = 0; foreach ($settings as $setting => $required) { if (empty(setting($setting))) { if ($i % 2 == 0 or $i == 0) { echo '
'; } echo '
'.Settings::input($setting, $required).'
'; ++$i; if ($i % 2 == 0 or $i == sizeof($settings)) { echo '
'; } } } echo '
'; } echo '
*'.tr('Campi obbligatori').'
'; echo ' '; include_once AppLegacy::filepath('include|custom|', 'bottom.php'); throw new \LegacyExitException();