import '@material/mwc-button'; import '@material/mwc-checkbox'; import '@material/mwc-fab'; import '@material/mwc-formfield'; import '@material/mwc-list/mwc-list-item'; import '@material/mwc-select'; import '@material/mwc-textarea'; import '../WebComponents/TextField'; import collect from 'collect.js'; import LocaleCode from 'locale-code'; import Mithril from 'mithril'; // eslint-disable-next-line import/no-absolute-path import logoUrl from '/images/logo_completo.png'; import Card from '../Components/Card/Card.jsx'; import Cell from '../Components/Grid/Cell.jsx'; import LayoutGrid from '../Components/Grid/LayoutGrid.jsx'; import Row from '../Components/Grid/Row.jsx'; import Mdi from '../Components/Mdi.jsx'; import Page from '../Components/Page.jsx'; import redaxios from 'redaxios'; import {Alert} from '../Components'; import {getFormData} from '../utils'; export default class SetupPage extends Page { languages() { const listItems: Array[Mithril.Vnode] = []; for (const lang of this.page.props.languages) { const attributes = { selected: this.page.props.locale === lang }; const langCode = lang.replace('_', '-'); listItems.push( {LocaleCode.getLanguageNativeName(langCode)} ); } return listItems; } view(vnode) { const examplesTexts = collect(); for (const example of ['localhost', 'root', 'mysql', 'openstamanager']) { examplesTexts.put(example, __('Esempio: :example', {example})); } return ( <> {__('Benvenuto in :name!', {name: {__('OpenSTAManager')}})} {__('Puoi procedere alla configurazione tecnica del software attraverso i ' + 'parametri seguenti, che potranno essere corretti secondo necessità tramite il file .env.')} {__("Se necessiti supporto puoi contattarci tramite l':contactLink o tramite il nostro :forumLink.", { // eslint-disable-next-line no-secrets/no-secrets contactLink: {__('assistenza ufficiale')}, forumLink: {__('forum')} })} {__('Formato date')} {__('I formati sono impostabili attraverso lo standard previsto da :link.', {link: PHP}) } {__('Database')} {__('* Campi obbligatori')} {__('Lingua')} {this.languages()} {__('Licenza')} {__('OpenSTAManager è tutelato dalla licenza GPL 3.0, da accettare obbligatoriamente per poter utilizzare il gestionale.')} {__('Connessione al database riuscita')} > ); } oncreate(vnode: Mithril.VnodeDOM) { super.oncreate(vnode); $('mwc-fab#contrast-switcher') .on('click', function () { $(this) .toggleClass('contrast-light') .toggleClass('contrast-dark'); $('body') .toggleClass('mdc-high-contrast'); }); // Fix for mwc button inside tags $('a') .has('mwc-button') .css('text-decoration', 'none'); } onTestButtonClicked(event: Event) { this.testDatabase(); } onSaveButtonClicked(event: Event) { const form = $(event.target).closest('form'); form.requestSubmit(); } onFormSubmit(event: Event) { const form = $(event.target).closest('form'); this.saveDatabase(formData); } async testDatabase(silent = false): boolean { const form = $('form'); let response; try { response = await redaxios.options(window.route('setup.test'), {data: getFormData(form)}); } catch (error) { if (!silent) { const alert = $('#test-connection-alert-error'); alert.find('.content').text(__('Si è verificato un errore durante la connessione al' + ' database: :error', {error: error.data.error})); alert.get(0).show(); } return false; } if (response.data.success) { if (!silent) { document.querySelector('#test-connection-alert-success') .show(); } return true; } if (!silent) { const alert = $('#test-connection-alert-error'); alert.find('.content').text(__('Si è verificato un errore durante la connessione al' + ' database: :error', {error: response.data.error})); alert.get(0).show(); } return false; } }
{__('Puoi procedere alla configurazione tecnica del software attraverso i ' + 'parametri seguenti, che potranno essere corretti secondo necessità tramite il file .env.')} {__("Se necessiti supporto puoi contattarci tramite l':contactLink o tramite il nostro :forumLink.", { // eslint-disable-next-line no-secrets/no-secrets contactLink: {__('assistenza ufficiale')}, forumLink: {__('forum')} })}
{__('OpenSTAManager è tutelato dalla licenza GPL 3.0, da accettare obbligatoriamente per poter utilizzare il gestionale.')}
{__('Connessione al database riuscita')}