Costruzioni
Featured

Sentenza TAR del Lazio n. 3132/2022

Sentenza TAR del Lazio n  3132 2022

Sentenza TAR del Lazio n. 3132/2022

ID 16198 | 24.03.2022 / In allegato Sentenza

La Sentenza TAR del Lazio n. 3132/2022 dispone che le prove e verifiche non distruttive sui materiali da costruzione di strutture e costruzioni esistenti restano di competenza degli ingegneri, non viene riconosciuta pertanto, l'esclusività dei laboratori.

[panel]

FATTO

Con il ricorso r.g. n. 5407/2020 l’Ordine degli Ingegneri di Roma ha impugnato le “Linee guida per la classificazione e gestione del rischio, la valutazione della sicurezza ed il monitoraggio dei ponti esistenti”, approvate dall'Assemblea generale del Consiglio Superiore dei Lavori Pubblici in data 17 aprile 2020, nella parte in cui prevedono che “… le prove ed i controlli sui materiali da costruzione su strutture e costruzioni esistenti di cui alla Circolare 03 dicembre 2019 n. 633/STC e s.m.i., devono essere effettuate e certificate da un laboratorio di cui all'articolo 59 del DPR 380/2001 e s.m.i., dotato di specifica autorizzazione, ove prevista”.

L’Ordine ricorrente ha esposto che, tra le indagini diagnostiche e conoscitive preliminari alla progettazione di interventi di consolidamento e/o di manutenzione straordinaria e collaudo delle strutture già esistenti, rientrano le prove e i controlli mirati a verificare le caratteristiche (specialmente la resistenza e la deformabilità) e il livello di degrado dei materiali da costruzione (“prove di caratterizzazione meccanica dei materiali”), volti ad appurare l’idoneità della struttura a sostenere in sicurezza l’intervento da effettuare.
Per quanto riguarda le concrete modalità di effettuazione delle predette indagini, le Norme Tecniche per le Costruzioni aggiornate al 2018 (approvate con decreto del Ministero delle Infrastrutture e dei Trasporti del 17.1.2018), al Capitolo n. 8 delineano un approccio improntato alla gradualità delle prove (es. limitate, estese, esaustive), articolato per fasi successive (LC1, LC2 e LC3) del livello di conoscenza della struttura su cui si deve intervenire e dei correlati fattori di confidenza (FC).

Tali tecniche di indagine sono state poi integrate dalle previsioni della Circolare n. 7 del 21.1.2019 del Consiglio Superiore dei Lavori Pubblici, recante “Istruzioni per l’applicazione dell’«Aggiornamento delle “Norme tecniche per le costruzioni”» di cui al decreto ministeriale 17 gennaio 2018”.

Per la conoscenza dei materiali dianzi elencati, il punto C-8.5.3 della Circolare n. 7/2019 ammette sia l’impiego di prove su campioni c.d. “indisturbati” prelevati dalle strutture (prove c.d. “distruttive”), sia prove c.d. “non distruttive”; la differenza sostanziale tra le due tipologie di prove appena menzionate consiste nel fatto che le prove “distruttive” implicano il prelievo del materiale dalla struttura (ad esempio il c.d. “carotaggio”) e l’analisi fisica, chimica e meccanica dei singoli campioni asportati (le cui dimensioni, come è ovvio, sono fisiologicamente limitate); le prove “non distruttive”, di contro, consistono in tecniche diagnostiche da applicare direttamente sull’intera struttura, al fine di minimizzare l’impatto sulla stessa.

Le differenti modalità di esecuzione delle prove “distruttive” e “non distruttive” comportano che queste ultime vadano condotte in situ, ben potendo dunque essere eseguite, fino all’adozione, da parte del Consiglio, delle “Linee guida per la classificazione e gestione del rischio, la valutazione della sicurezza ed il monitoraggio dei ponti esistenti” impugnate, anche da ingegneri iscritti all’albo e muniti della dotazione necessaria.

Per converso, a mente del par. 8.5.3 delle NTC (così come integrato dal punto C- 8.5.3 della Circolare n. 7/2019), le prove “distruttive” (elencate nella più risalente Circolare del Consiglio n. 7617 dell’8.9.2010), richiedendo l’analisi chimica e fisica dei campioni, non possono essere esperite in situ; esse devono essere necessariamente effettuate e certificate a cura di un laboratorio debitamente autorizzato ai sensi dell’art. 59, comma 2, del d.P.R. 6.6.2001 n. 380, previa dimostrazione del possesso di determinati requisiti organizzativi e strutturali.

L’assetto delineato nelle NTC prevede quindi una riserva di competenza a favore dei laboratori “di prova” con riferimento alle sole prove “distruttive”, consentendo l’espletamento delle prove “non distruttive” da parte di qualsiasi soggetto dotato della strumentazione e delle competenze necessarie, ivi compresi quindi gli ingegneri iscritti all’albo.

Successivamente all’emanazione della citata circolare del Consiglio n. 7/2019, la l. 14.6.2019, n. 55, di conversione del d.l. “Sblocca-cantieri”, ha aggiunto all’art. 59, comma 2, del d.P.R. n. 380/2001 una nuova lett. c-bis), prevedendo che a laboratori è consentito – sempre previa autorizzazione del MIT – procedere all’espletamento, oltre che delle prove “distruttive”, anche delle “prove e controlli su materiali da costruzione su strutture e costruzioni esistenti”, ossia le prove “non distruttive”, tra cui le prove pacometriche e sclerometriche.

Alla figura dei laboratori “di prova” è venuta quindi ad affiancarsi quella dei laboratori “in situ”.

A fronte di ciò, con la circolare n. 633 del 3.12.2019, il Consiglio (in virtù della specifica delega ad esso conferita dall’art. 3, comma 1-bis, della l. n. 55/2019) ha elencato dettagliatamente i requisiti che i laboratori “in situ” dovranno soddisfare ai fini dell’ottenimento della suddetta autorizzazione, tra cui l’obbligatorio esercizio dell’attività in forma imprenditoriale (punto 1.2), un organico minimo di n. 5 unità (punto 3), locali idonei (punto 4) e dotazione di cospicua attrezzatura e strumentazione (punto 6).

Quindi, nel corso dell’Assemblea generale del 17.4.2020, il Consiglio, nell’approvare le “Linee guida per la classificazione e gestione del rischio, la valutazione della sicurezza ed il monitoraggio dei ponti esistenti” qui impugnate, ha disposto che “In generale, ai fini delle applicazioni di cui alle presenti Linee Guida, il prelievo e le prove distruttive sui materiali da costruzione di cui alla Circolare 08 settembre 2010, n. 7617/STC s.m.i, le prove di laboratorio sulle terre e sulle rocce di cui alla Circolare 08 settembre 2010, n. 7618/STC s.m.i nonché le prove ed i controlli sui materiali da costruzione su strutture e costruzioni esistenti di cui alla Circolare 03 dicembre 2019 n. 633/STC e s.m.i., devono essere effettuate e certificate da un laboratorio di cui all’articolo 59 del DPR 380/2001 e s.m.i., dotato di specifica autorizzazione, ove prevista” (cfr. par. I.8 – Laboratori di prova).

Per effetto di tale previsione l’effettuazione di indagini conoscitive e diagnostiche di carattere “non distruttivo”, funzionali alla classificazione e gestione del rischio, alla valutazione della sicurezza e al monitoraggio dei ponti e dei viadotti esistenti, risulterebbe irragionevolmente riservata ai soli laboratori “in situ” istituiti dalla nuova lett. c-bis) aggiunta dalla L. n. 55/2019 all’art. 59, comma 2, del TUE.

A sostegno del ricorso sono state formulate le seguenti censure:

I) Incompetenza, violazione e/o falsa applicazione dell’art. 59, comma 2, del d.P.R. n. 380/2001, violazione e/o falsa applicazione delle norme tecniche di costruzione aggiornate al 2018, violazione e/o falsa applicazione dell’art. 51 del R.D. n. 2537/1925, violazione e/o falsa applicazione dell’art. 101, comma 3, del d.lgs. n. 50/2016, violazione e/o falsa applicazione del principio di libera concorrenza, eccesso di potere sotto i concorrenti profili dello sviamento, irragionevolezza, contraddittorietà, disparità di trattamento, illogicità e ingiustizia manifesta, travisamento dei presupposti di fatto e di diritto.

Le Linee Guida impugnate sarebbero illegittime nella misura in cui hanno stabilito che le “prove e controlli su materiali da costruzione su strutture e costruzioni esistenti di cui alla Circolare 03 dicembre 2019 n. 633/STC e s.m.i.”, ossia le prove “non distruttive” sui ponti e viadotti esistenti possano essere effettuate e certificate esclusivamente “da un laboratorio di cui all’articolo 59 del DPR 380/2001 e s.m.i.” (par. I.8).

In tal modo, infatti, il Consiglio avrebbe esteso indebitamente – in assenza di presupposto normativo e, anzi, in contrasto con la disciplina esistente – la riserva di competenza in favore dei laboratori di “prova” (che le NTC 2018 dispongono con esclusivo riferimento alle prove “distruttive”) anche alle prove “non distruttive”, precludendo illegittimamente l’esecuzione di tali indagini da parte degli ingegneri liberi professionisti iscritti all’albo professionale, esperti e certificati in attività diagnostiche.

Inoltre, la competenza in ordine alla selezione delle eventuali tipologie di prove da riservare ai laboratori autorizzati – e alla connessa restrizione delle attività libero- professionali svolte dagli ingegneri – non apparterrebbe al Consiglio, bensì al MIT, poiché erano le NTC – adottate con decreto ministeriale – a definire i principi per il progetto, l’esecuzione e il collaudo delle costruzioni e dettati i criteri generali di sicurezza, e ad aver introdotto la riserva di competenza per l’effettuazione delle indagini “distruttive” in favore dei laboratori “di prova” autorizzati ai sensi dell’art. 59, comma 2, del TUE.

Pertanto, una previsione come quella in esame avrebbe dovuto essere introdotta mediante un’apposita modifica alle vigenti NTC 2018 e, quindi, essere specificamente approvata con decreto ministeriale.

Le disposizioni contestate si fonderebbero su un’interpretazione errata della portata del nuovo settore di autorizzazione introdotto dalla L. n. 55/2019 mediante l’aggiunta di una lett. c-bis) all’art. 59, comma 2, del TUE; tale disposizione, infatti, non prevederebbe affatto un obbligo di affidare l’esecuzione delle “prove e controlli su materiali da costruzione su strutture e costruzioni esistenti” ai soli laboratori “in situ”, limitandosi ad estendere il novero di prove (non solo quelle “distruttive” ma anche le “non distruttive”) per la cui esecuzione i laboratori necessitano di apposita autorizzazione ministeriale.

Peraltro, laddove si è inteso riservare l’effettuazione e la certificazione di determinate prove a determinati soggetti, ciò è stato espressamente previsto nelle NTC, come per il caso delle prove “distruttive” sui campioni di materiali, che il par. 8.5.3 delle NTC (così come integrato dal punto C-8.5.3 della Circolare n. 7/2019) ha specificamente demandato ai laboratori “di prova” debitamente autorizzati ai sensi dell’art. 59, comma 2, del TUE.

Qualora, quindi, per i ponti e i viadotti esistenti, si fossero volute aggiungere, tra le indagini riservate alla competenza dei laboratori “autorizzati”, anche le prove “non distruttive”, si sarebbe resa necessaria una correlata modifica alle NTC 2018 da parte del MIT, modifica che non è mai intervenuta.

La decisione del Consiglio di riservare l’esecuzione delle prove “non distruttive” su ponti e viadotti esistenti ai soli laboratori “in situ” sarebbe altresì gravemente antinomica rispetto alle previsioni, di natura primaria e secondaria, che regolano le prerogative professionali della categoria degli ingegneri.

In primo luogo, il par. I.8 delle Linee Guida, nel precludere agli ingegneri liberi professionisti l’esecuzione delle indagini diagnostiche in questione, contrasterebbe con la disciplina della sicurezza delle costruzioni risultante dall’art. 51 del R.D. n. 2537/1925 (recante “Approvazione del regolamento per le professioni d’ingegnere e di architetto”), per la quale “Sono di spettanza della professione d’ingegnere, il progetto, la condotta e la stima dei lavori per estrarre, trasformare ed utilizzare i materiali direttamente od indirettamente occorrenti per le costruzioni e per le industrie, dei lavori relativi alle vie ed ai mezzi di trasporto, di deflusso e di comunicazione, alle costruzioni di ogni specie, alle macchine ed agli impianti industriali, nonché in generale alle applicazioni della fisica, i rilievi geometrici e le operazioni di estimo”.

In secondo luogo, la preclusione agli ingegneri, nell’esercizio della propria attività libero- professionale, della possibilità di effettuare prove “non distruttive” sui ponti e viadotti esistenti sarebbe anche in contraddizione con il fatto che agli ingegneri medesimi è espressamente consentito di ricoprire il ruolo di direttore dei lavori, carica alla quale, ai sensi dell’art. 101, comma 3, del d.lgs. n. 50/2016, compete l’accettazione della qualità dei materiali da costruzione.

Inoltre, in conseguenza delle previsioni gravate i singoli ingegneri, per poter continuare ad eseguire le numerose tipologie di prove “non distruttive” in esame, sarebbero di fatto obbligati a riorganizzare la loro attività professionale al fine di svolgerla non più in forma singola o associata, bensì necessariamente in forma imprenditoriale, predisponendo un organico minimo di n. 5 unità (punto 3), locali idonei (punto 4) e la dotazione di cospicua attrezzatura e strumentazione (punto 6).

II) In via gradata. Illegittimità costituzionale dell’art. 59, comma 2, lett. c-bis) del d.P.R. n. 380/2001.

Nell’ipotesi in cui dovesse ritenersi che la norma citata abbia effettivamente previsto di limitare l’esecuzione di prove “non distruttive” sulle strutture esistenti ai soli laboratori “in situ” debitamente autorizzati, la stessa si porrebbe contrasto con i principi costituzionali di non arbitrarietà, ragionevolezza, libertà di iniziativa economica e buon andamento della Pubblica Amministrazione, di cui, rispettivamente, agli artt. 3, 41 e 97 della Carta costituzionale.

Si è costituito il Ministero delle Infrastrutture e dei Trasporti resistendo al ricorso. Con ordinanza n. 5126 del 5.8.2020 questa Sezione ha respinto l’istanza cautelare ritenendo che, in mancanza del decreto di adozione da parte del Ministero, le suddette Linee guida dovessero ritenersi “prive del requisito della definitività”.

Con motivi aggiunti depositati l’8 marzo 2021 l’ente ricorrente ha impugnato il decreto del Ministero delle Infrastrutture e dei Trasporti del 17 dicembre 2020, pubblicato sulla pagina istituzionale del Ministero in data 28 dicembre 2020, nella parte in cui dispone l’“Adozione delle linee guida per la gestione del rischio dei ponti esistenti e per la definizione di requisiti ed indicazioni relativi al sistema di monitoraggio dinamico”, già approvate in data 17 aprile 2020 dall'Assemblea Generale del Consiglio Superiore dei Lavori Pubblici.

Con i motivi aggiunti sono state riproposte le censure già dedotte con il ricorso introduttivo e, in via autonoma, la violazione e/o falsa applicazione dell’art. 49, comma 1, del d.l. n. 16/2020 e la tardività del D.M. 17.12.2020.

L’art. 49 del d.l. n. 16/2020 disponeva testualmente che “Al fine di assicurare l’omogeneità della classificazione e gestione del rischio, della valutazione della sicurezza e del monitoraggio delle gallerie esistenti lungo la rete stradale e autostradale, con decreto del Ministro delle infrastrutture e dei trasporti, sentito il Consiglio superiore dei lavori pubblici, adottato entro trenta giorni dalla data di entrata in vigore del presente decreto, sono approvate apposite linee guida in materia di programmazione ed esecuzione delle attività di indagine sullo stato di conservazione delle gallerie esistenti lungo le strade statali o autostrade gestite da Anas S.p.A. o da concessionari autostradali, di esecuzione delle ispezioni e di programmazione degli interventi di manutenzione e di messa in sicurezza delle stesse”.

Dunque, anche a voler considerare il termine di trenta giorni previsto dalla norma come decorrente dall’entrata in vigore della legge di conversione (l. 11.9.2020, n. 120), il decreto impugnato, adottato soltanto il 17.12.2020, era stato emanato con ritardo rispetto alle tempistiche dettate dall’art. 49 citato.

Con ordinanza n. 2232 del 15 aprile 2021 questo Tribunale ha accolto l’istanza cautelare proposta con i motivi aggiunti, rilevando che il par. I.8 delle impugnate Linee Guida, adottate con il decreto del MIT del 17 dicembre 2020 riserva in via esclusiva ai laboratori autorizzati di cui all’art. 59 d.P.R. 6 giugno 2001 n. 380 anche le “prove e controlli su materiali da costruzione su strutture e costruzioni esistenti”, con previsione che non appare “mera e necessaria applicazione del modificato testo dell’articolo 59 del DPR 380/01”, il cui testo, invece, si limita a prevedere che “Il Ministero delle infrastrutture e dei trasporti può autorizzare, con proprio decreto, ai sensi del presente capo, altri laboratori ad effettuare:…. prove e controlli su materiali da costruzione su strutture e costruzioni esistenti”, contemplando la mera possibilità che i suddetti laboratori siano autorizzati, ove in possesso dei requisiti di legge, ad effettuare le cd. prove non distruttive in situ su strutture esistenti, dunque al più “in aggiunta” ai soggetti già legittimati a svolgere tali accertamenti e non già “in sostituzione” degli stessi.

Hanno spiegato intervento ad opponendum le associazioni ****.

Con ricorso n.r.g. 5446/2020 le medesime disposizioni sono state impugnate dagli ingegneri ****, ****, ****, **** e ****, i quali hanno proposto anche motivi aggiunti aventi analogo contenuto.

Alla pubblica udienza del 15 dicembre 2021 i ricorsi sono stati trattenuti in decisione.

DIRITTO

Preliminarmente deve essere disposta la riunione dei due ricorsi, aventi ad oggetto i medesimi atti e vertenti su analoghe questioni.

Devono poi essere esaminate le eccezioni di inammissibilità del gravame sollevate in entrambi i giudizi dagli intervenienti, che devono essere disattese in quanto infondate.

Come già evidenziato da questo Tribunale, infatti, non può negarsi l’interesse dell’ente esponenziale della categoria professionale (al quale sono necessariamente iscritti i liberi professionisti) a tutelare l’attività professionale degli iscritti, il cui ambito verrebbe inciso e limitato, secondo la prospettazione dei ricorrenti, dalle disposizioni impugnate (Tar Lazio, sentenza n. 3761/2012).

La giurisprudenza ha, infatti, ritenuto che gli ordini professionali siano legittimati a difendere in sede giurisdizionale gli interessi della categoria dei soggetti di cui abbiano la rappresentanza istituzionale, sia quando si assumano violate le norme poste a tutela della professione, sia quando si tratti di conseguire determinati vantaggi, sia pure di carattere puramente strumentale, giuridicamente riferibili alla intera categoria, ed anche nell'ipotesi in cui possa ipotizzarsi astrattamente un conflitto di interessi tra gli ordini ed i singoli professionisti beneficiari dell'atto impugnato, che l'ordine assume invece essere lesivo dell'interesse istituzionale della categoria, ma non anche quando detto conflitto lungi dall'essere virtuale ed ipotetico è assolutamente concreto (Cons. Stato, sez. V, 7 marzo 2001, n. 1339; sez. VI, 22 settembre 2004 n. 6185; sez. V, 18 dicembre 2009 , n. 8404). Quando, dunque, sia effettivamente riconoscibile nel provvedimento amministrativo una capacità lesiva di interessi unitari della categoria, l'Ente esponenziale della medesima è legittimato a far valere in giudizio anche ragioni ed interessi che non si riferiscano alle attribuzioni proprie dell'Ordine come soggetto (Cons. St., sez. V, 1 ottobre 2001, n. 5193).

Si deve, poi, evidenziare che l’atto impugnato presenta natura normativa, sicché anche sotto tale profilo sussiste un interesse immediato e diretto alla impugnazione da parte degli enti rappresentativi di una categoria professionale incisa dalle disposizioni emanate.

L’art 59 del d.P.R. n. 380 del 2001, infatti, ha attribuito al Ministero delle Infrastrutture il potere di dettare le norme in materia di prove sulle costruzioni, sicché tale disciplina ha natura di atto normativo e rilevanza esterna nell’individuare i soggetti autorizzati all’esecuzione di tali prove, con immediata efficacia lesiva nei confronti degli interessati.

Alla natura di atto generale consegue poi la non ravvisabilità di controinteressati in senso tecnico rispetto all’impugnazione, di tal che l’eccezione sollevata dagli intervenienti a tale proposito nel giudizio r.g. n. 5446/2020 deve essere respinta.

Del pari va respinta l’eccezione di inammissibilità per tardività rispetto all’impugnazione della circolare n. 633/2019.

Tale circolare disciplina, infatti, i “Criteri per il rilascio dell’autorizzazione ai Laboratori per prove e controlli sui materiali da costruzione su strutture e costruzioni esistenti di cui all’art. 59, comma 2, del D.P.R. n. 380/2001”), limitandosi a dettare i criteri e i requisiti che i laboratori devono rispettare ai fini dell’ottenimento della citata autorizzazione ministeriale, senza in alcun modo individuare l’obbligo di affidare l’esecuzione delle prove non distruttive ai laboratori medesimi, contenuto invece nelle Linee Guida impugnate.

Da ultimo deve darsi atto del fatto che le Linee Guida impugnate con i due ricorsi sono state poi trasfuse nel decreto ministeriale oggetto dei motivi aggiunti, di tal che i ricorsi introduttivi devono essere dichiarati improcedibili per sopravvenuto difetto di interesse, mentre devono essere scrutinati i motivi aggiunti, che sono fondati.

Al riguardo appare opportuno esaminare preliminarmente il motivo, già contenuto nel ricorso principale e dedotto in via derivata con i motivi aggiunti, relativo al difetto di previsione normativa in ordine alla limitazione delle prove non distruttive sulle costruzioni esistenti ai laboratori autorizzati e al conseguente contrasto delle Linee Guida con il disposto dell’art. 59 del T.U. Edilizia.

La doglianza è fondata.

L’art. 59, comma 2, del T.U. Edilizia, come di recente modificato con l’introduzione, ad opera della l. n. 55/2019 (di conversione del c.d. decreto “Sblocca cantieri”), di un nuovo settore di autorizzazione relativo all’esecuzione di indagini non distruttive sulle costruzioni esistenti (lett. c bis), prevede che “Il Ministero delle infrastrutture e dei trasporti può autorizzare, con proprio decreto, ai sensi del presente capo, altri laboratori ad effettuare: …. c bis) prove e controlli su materiali da costruzione su strutture e costruzioni esistenti”.

Dal tenore letterale della norma (“Il Ministero … può autorizzare”) si evince chiaramente che non vi è alcun obbligo di legge di affidare l’esecuzione delle “prove e controlli su materiali da costruzione su strutture e costruzioni esistenti” ai soli laboratori “in situ”, giacché la modifica normativa, senza in alcun modo circoscrivere i soggetti abilitati ad effettuare le prove, ha previsto unicamente la possibilità che il Ministero autorizzi i laboratori interessati all’esecuzione delle prove.

Pertanto, la disposizione non implica affatto che solo i laboratori “in situ” siano legittimati ad eseguire indagini “non distruttive” sui ponti e sui viadotti esistenti, come stabilito al par. I.8 Linee guida adottate con il DM 17.12.2020.

Il par. 1.8 delle Linee Guida impugnate dispone, invece: “In generale, ai fini delle applicazioni di cui alle presenti Linee Guida, il prelievo e le prove distruttive sui materiali da costruzione di cui alla Circolare 08 settembre 2010, n. 7617/STC s.m.i, le prove di laboratorio sulle terre e sulle rocce di cui alla Circolare 08 settembre 2010, n. 7618/STC s.m.i nonché le prove ed i controlli sui materiali da costruzione su strutture e costruzioni esistenti di cui alla Circolare 03 dicembre 2019 n. 633/STC e s.m.i., devono essere effettuate e certificate da un laboratorio di cui all’articolo 59 del DPR 380/2001 e s.m.i., dotato di specifica autorizzazione, ove prevista”.

La disposizione impugnata prevede quindi, in assenza di una espressa opzione normativa in tal senso, che i singoli ingegneri non siano abilitati all’effettuazione delle prove in questione, giacché a tal fine dovrebbero riorganizzare la loro attività professionale per svolgerla non più in forma singola, bensì necessariamente in forma imprenditoriale, come laboratori, dovendo soddisfare i “requisiti minimi” dettati dalla Circolare n. 633/2019 per l’ottenimento dell’autorizzazione ministeriale, ovvero un organico minimo di almeno 5 unità (punto 3), locali idonei (punto 4) e dotazione di cospicua attrezzatura e strumentazione (punto 6).

Ne consegue che non può sostenersi che “anche le persone fisiche” possano richiedere l’autorizzazione ministeriale e così continuare a operare, come dedotto dagli intervenienti, poiché i requisiti per l’autorizzazione presuppongono una struttura imprenditoriale con un minimo di dipendenti e il par. 1.2) della circolare n. 633/2019 prevede che “Il soggetto gestore del laboratorio può essere una ditta individuale, una società o un ente pubblico”, con ciò evidentemente imponendo, ai fini dell’ottenimento dell’autorizzazione citata, l’esercizio dell’attività in forma imprenditoriale.

Quanto, poi, alla deduzione secondo cui la preclusione in danno degli ingegneri singoli originerebbe non già dall’impugnato par. I.8) delle Linee guida, bensì dalla Circolare 633/2019 e dalla stessa lett. c bis) dell’art. 59, comma 2, deve rilevarsi, come sopra accennato, che tale circolare disciplina i “Criteri per il rilascio dell’autorizzazione ai Laboratori per prove e controlli sui materiali da costruzione su strutture e costruzioni esistenti di cui all’art. 59, comma 2, del D.P.R. n. 380/2001”), limitandosi a dettare i criteri e i requisiti che i laboratori devono rispettare ai fini dell’ottenimento della citata autorizzazione ministeriale, senza in alcun modo individuare l’obbligo di affidare l’esecuzione delle prove non distruttive ai laboratori medesimi.

Il ricorso è quindi fondato e deve essere accolto, con annullamento del provvedimento impugnato nella parte in cui dispone, al par. I.8, che le prove ed i controlli sui materiali da costruzione su strutture e costruzioni esistenti, di cui alla circolare 633/2019, devono essere effettuate e certificate da un laboratorio di cui all’articolo 59 del d.P.R. n. 380/2001, dotato di specifica autorizzazione.

L’accoglimento del primo motivo di ricorso comporta l’assorbimento delle
ulteriori censure.

Va invece disattesa la richiesta di cancellazione di espressioni asseritamente offensive formulata dagli intervenienti nella memoria depositata il 29 novembre 2021, dovendosi ritenere che le frasi utilizzate dai ricorrenti nella memoria del 24 novembre 2021, pur se di contenuto fortemente critico nei confronti delle controparti, non abbiano comunque travalicato l’ambito della dialettica processuale.

In considerazione della novità delle questioni sussistono le ragioni che giustificano la compensazione delle spese processuali.

P.Q.M.

Il Tribunale Amministrativo Regionale per il Lazio (Sezione Prima), definitivamente pronunciando sui ricorsi riuniti, come in epigrafe proposti, dichiara improcedibili i ricorsi principali, accoglie i motivi aggiunti e, per l’effetto, annulla l’atto impugnato nei sensi di cui in motivazione.

Compensa le spese.

Ordina che la presente sentenza sia eseguita dall'autorità amministrativa.[/panel]

...

Collegati

Certifico s.r.l.

Sede: Via A. De Curtis, 28 - 06135 Perugia - IT
Sede: Via Madonna Alta 138/A - 06128 Perugia - IT
P. IVA: IT02442650541

Tel. 1: +39 075 599 73 63
Tel. 2: +39 075 599 73 43

Assistenza: +39 075 599 73 43

www.certifico.com
info@certifico.com

Testata editoriale iscritta al n. 22/2024 del registro periodici della cancelleria del Tribunale di Perugia in data 19.11.2024

25.539MBMemory Usage256msRequest Duration
Joomla! Version5.2.5
PHP Version8.3.14
Identityguest
Response200
Templateshaper_helixultimate
Database
Server
mysql
Version
10.11.6-MariaDB-0+deb12u1
Collation
utf8mb3_general_ci
Conn Collation
utf8mb4_general_ci
$_GET
[]
$_POST
[]
$_SESSION
array:1 [ "joomla" => "***redacted***" ]
$_COOKIE
array:1 [ "62a92c53e84a3da1ecb6bdbbf83e5ec6" => "6gu1l07kl0kmcrq2cnqojonvdk" ]
$_SERVER
array:48 [ "USER" => "certifico_com_user" "HOME" => "/var/www/vhosts/certifico.com" "SCRIPT_NA...
session
array:3 [ "counter" => 4 "timer" => array:3 [ "start" => 1744368152 "last" => 1744368157...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (86.09KB) (3.93ms)
  • afterInitialise (3.34MB) (20.83ms)
  • afterRoute (391.45KB) (6.33ms)
  • beforeRenderComponent com_content (37.2KB) (695μs)
  • Before Access::preloadComponents (all components) (34.53KB) (779μs)
  • After Access::preloadComponents (all components) (115.88KB) (411μs)
  • Before Access::preloadPermissions (com_content) (1.51KB) (7μs)
  • After Access::preloadPermissions (com_content) (16.77MB) (25.51ms)
  • Before Access::getAssetRules (id:33134 name:com_content.article.16198) (514.65KB) (793μs)
  • After Access::getAssetRules (id:33134 name:com_content.article.16198) (12.67KB) (146μs)
  • afterRenderComponent com_content (615.68KB) (30.94ms)
  • afterDispatch (2.44KB) (276μs)
  • beforeRenderRawModule mod_login (Accedi all'area riservata) (1.75MB) (11.69ms)
  • afterRenderRawModule mod_login (Accedi all'area riservata) (62.79KB) (2.47ms)
  • beforeRenderModule mod_login (Accedi all'area riservata) (736B) (2μs)
  • afterRenderModule mod_login (Accedi all'area riservata) (5.95KB) (323μs)
  • beforeRenderRawModule mod_menu (Main Menu) (33.91KB) (3.5ms)
  • afterRenderRawModule mod_menu (Main Menu) (21.86KB) (28.97ms)
  • beforeRenderModule mod_menu (Main Menu) (704B) (3μs)
  • afterRenderModule mod_menu (Main Menu) (11.27KB) (578μs)
  • beforeRenderRawModule mod_menu (Social) (41.43KB) (413μs)
  • afterRenderRawModule mod_menu (Social) (60.09KB) (2.99ms)
  • beforeRenderModule mod_menu (Social) (704B) (3μs)
  • afterRenderModule mod_menu (Social) (3.92KB) (477μs)
  • beforeRenderRawModule mod_menu (Media) (912B) (9μs)
  • afterRenderRawModule mod_menu (Media) (14.41KB) (2.59ms)
  • beforeRenderModule mod_menu (Media) (704B) (2μs)
  • afterRenderModule mod_menu (Media) (3.11KB) (481μs)
  • beforeRenderRawModule mod_menu (Policies) (616B) (26μs)
  • afterRenderRawModule mod_menu (Policies) (23.48KB) (3.99ms)
  • beforeRenderModule mod_menu (Policies) (704B) (2μs)
  • afterRenderModule mod_menu (Policies) (3.3KB) (488μs)
  • beforeRenderRawModule mod_menu (Store) (912B) (9μs)
  • afterRenderRawModule mod_menu (Store) (18.38KB) (2.99ms)
  • beforeRenderModule mod_menu (Store) (704B) (2μs)
  • afterRenderModule mod_menu (Store) (3.3KB) (459μs)
  • beforeRenderRawModule mod_menu (Info) (440B) (24μs)
  • afterRenderRawModule mod_menu (Info) (11.67KB) (2.01ms)
  • beforeRenderModule mod_menu (Info) (704B) (2μs)
  • afterRenderModule mod_menu (Info) (3.05KB) (458μs)
  • beforeRenderRawModule mod_menu (Marketing) (896B) (9μs)
  • afterRenderRawModule mod_menu (Marketing) (20.39KB) (3.48ms)
  • beforeRenderModule mod_menu (Marketing) (704B) (3μs)
  • afterRenderModule mod_menu (Marketing) (3.3KB) (468μs)
  • beforeRenderRawModule mod_custom (Certifico s.r.l.) (2.29KB) (25μs)
  • afterRenderRawModule mod_custom (Certifico s.r.l.) (4.22KB) (537μs)
  • beforeRenderModule mod_custom (Certifico s.r.l.) (720B) (2μs)
  • afterRenderModule mod_custom (Certifico s.r.l.) (3.36KB) (466μs)
  • beforeRenderRawModule mod_menu (Documenti Abbonati) (1.96KB) (23μs)
  • afterRenderRawModule mod_menu (Documenti Abbonati) (164.93KB) (5.99ms)
  • beforeRenderModule mod_menu (Documenti Abbonati) (720B) (2μs)
  • afterRenderModule mod_menu (Documenti Abbonati) (3.94KB) (478μs)
  • beforeRenderRawModule mod_articles_categories (Costruzioni) (2.36KB) (9μs)
  • afterRenderRawModule mod_articles_categories (Costruzioni) (302.13KB) (6.7ms)
  • beforeRenderModule mod_articles_categories (Costruzioni) (720B) (3μs)
  • afterRenderModule mod_articles_categories (Costruzioni) (10.5KB) (539μs)
  • beforeRenderRawModule mod_custom (Regolamento Macchine) (5.7KB) (11μs)
  • afterRenderRawModule mod_custom (Regolamento Macchine) (1.03KB) (118μs)
  • beforeRenderModule mod_custom (Regolamento Macchine) (720B) (2μs)
  • afterRenderModule mod_custom (Regolamento Macchine) (5.08KB) (188μs)
  • beforeRenderRawModule mod_custom (D. Lgs. 81/2008 - TUSSL) (5.5KB) (7μs)
  • afterRenderRawModule mod_custom (D. Lgs. 81/2008 - TUSSL) (928B) (88μs)
  • beforeRenderModule mod_custom (D. Lgs. 81/2008 - TUSSL) (720B) (2μs)
  • afterRenderModule mod_custom (D. Lgs. 81/2008 - TUSSL) (4.02KB) (75μs)
  • beforeRenderRawModule mod_custom (Codice Prevenzione Incendi | RTO II) (2.25KB) (6μs)
  • afterRenderRawModule mod_custom (Codice Prevenzione Incendi | RTO II) (3.41KB) (87μs)
  • beforeRenderModule mod_custom (Codice Prevenzione Incendi | RTO II) (736B) (1μs)
  • afterRenderModule mod_custom (Codice Prevenzione Incendi | RTO II) (4.16KB) (72μs)
  • beforeRenderRawModule mod_custom (TUA | Testo Unico Ambiente) (2.38KB) (5μs)
  • afterRenderRawModule mod_custom (TUA | Testo Unico Ambiente) (928B) (90μs)
  • beforeRenderModule mod_custom (TUA | Testo Unico Ambiente) (736B) (1μs)
  • afterRenderModule mod_custom (TUA | Testo Unico Ambiente) (4.03KB) (71μs)
  • beforeRenderRawModule mod_custom (TUSSL / Link) (2.52KB) (5μs)
  • afterRenderRawModule mod_custom (TUSSL / Link) (976B) (83μs)
  • beforeRenderModule mod_custom (TUSSL / Link) (720B) (1μs)
  • afterRenderModule mod_custom (TUSSL / Link) (3.64KB) (70μs)
  • beforeRenderRawModule mod_custom (Glossario Certifico HSE) (2.38KB) (5μs)
  • afterRenderRawModule mod_custom (Glossario Certifico HSE) (1.03KB) (84μs)
  • beforeRenderModule mod_custom (Glossario Certifico HSE) (720B) (1μs)
  • afterRenderModule mod_custom (Glossario Certifico HSE) (3.77KB) (69μs)
  • beforeRenderRawModule mod_custom (CEM4 || Ultimo aggiornamento) (2KB) (5μs)
  • afterRenderRawModule mod_custom (CEM4 || Ultimo aggiornamento) (1.03KB) (85μs)
  • beforeRenderModule mod_custom (CEM4 || Ultimo aggiornamento) (736B) (1μs)
  • afterRenderModule mod_custom (CEM4 || Ultimo aggiornamento) (3.91KB) (73μs)
  • beforeRenderRawModule mod_custom (D. Lgs. 231/2001 - Responsabilità amministrativa enti) (1.91KB) (6μs)
  • afterRenderRawModule mod_custom (D. Lgs. 231/2001 - Responsabilità amministrativa enti) (960B) (86μs)
  • beforeRenderModule mod_custom (D. Lgs. 231/2001 - Responsabilità amministrativa enti) (752B) (1μs)
  • afterRenderModule mod_custom (D. Lgs. 231/2001 - Responsabilità amministrativa enti) (4.42KB) (71μs)
  • beforeRenderRawModule mod_custom (D. Lgs. 196/2003 - Codice protezione dati personali | GDPR) (2.22KB) (6μs)
  • afterRenderRawModule mod_custom (D. Lgs. 196/2003 - Codice protezione dati personali | GDPR) (960B) (85μs)
  • beforeRenderModule mod_custom (D. Lgs. 196/2003 - Codice protezione dati personali | GDPR) (768B) (1μs)
  • afterRenderModule mod_custom (D. Lgs. 196/2003 - Codice protezione dati personali | GDPR) (4.44KB) (70μs)
  • beforeRenderRawModule mod_custom (D. Lgs. 101/2020 - Protezione esposizione radiazioni ionizzanti) (2.72KB) (6μs)
  • afterRenderRawModule mod_custom (D. Lgs. 101/2020 - Protezione esposizione radiazioni ionizzanti) (960B) (90μs)
  • beforeRenderModule mod_custom (D. Lgs. 101/2020 - Protezione esposizione radiazioni ionizzanti) (768B) (1μs)
  • afterRenderModule mod_custom (D. Lgs. 101/2020 - Protezione esposizione radiazioni ionizzanti) (4.44KB) (67μs)
  • beforeRenderRawModule mod_custom (Direttiva macchine e norme armonizzate) (2.73KB) (5μs)
  • afterRenderRawModule mod_custom (Direttiva macchine e norme armonizzate) (1.05KB) (85μs)
  • beforeRenderModule mod_custom (Direttiva macchine e norme armonizzate) (736B) (1μs)
  • afterRenderModule mod_custom (Direttiva macchine e norme armonizzate) (4.16KB) (68μs)
  • beforeRenderRawModule mod_custom (Certifico ADR) (1.23KB) (5μs)
  • afterRenderRawModule mod_custom (Certifico ADR) (1.02KB) (85μs)
  • beforeRenderModule mod_custom (Certifico ADR) (720B) (1μs)
  • afterRenderModule mod_custom (Certifico ADR) (3.89KB) (68μs)
  • beforeRenderRawModule mod_custom (MOCA - GMP | Consolidato) (2.5KB) (5μs)
  • afterRenderRawModule mod_custom (MOCA - GMP | Consolidato) (1.03KB) (86μs)
  • beforeRenderModule mod_custom (MOCA - GMP | Consolidato) (736B) (1μs)
  • afterRenderModule mod_custom (MOCA - GMP | Consolidato) (4.02KB) (68μs)
  • beforeRenderRawModule mod_custom (Codice Unico Sicurezza) (2.25KB) (5μs)
  • afterRenderRawModule mod_custom (Codice Unico Sicurezza) (928B) (87μs)
  • beforeRenderModule mod_custom (Codice Unico Sicurezza) (720B) (1μs)
  • afterRenderModule mod_custom (Codice Unico Sicurezza) (4.02KB) (67μs)
  • beforeRenderRawModule mod_custom (DM 21 Marzo 1973 | MOCA IT) (2.38KB) (5μs)
  • afterRenderRawModule mod_custom (DM 21 Marzo 1973 | MOCA IT) (1.03KB) (88μs)
  • beforeRenderModule mod_custom (DM 21 Marzo 1973 | MOCA IT) (736B) (1μs)
  • afterRenderModule mod_custom (DM 21 Marzo 1973 | MOCA IT) (4.03KB) (68μs)
  • beforeRenderRawModule mod_custom (Abbonamento Full) (2.39KB) (5μs)
  • afterRenderRawModule mod_custom (Abbonamento Full) (912B) (86μs)
  • beforeRenderModule mod_custom (Abbonamento Full) (720B) (1μs)
  • afterRenderModule mod_custom (Abbonamento Full) (4.89KB) (72μs)
  • beforeRenderRawModule mod_custom (Abbonamento Full Plus) (1.63KB) (5μs)
  • afterRenderRawModule mod_custom (Abbonamento Full Plus) (912B) (99μs)
  • beforeRenderModule mod_custom (Abbonamento Full Plus) (720B) (1μs)
  • afterRenderModule mod_custom (Abbonamento Full Plus) (4.14KB) (75μs)
  • beforeRenderRawModule mod_custom (Store Certifico) (3.27KB) (5μs)
  • afterRenderRawModule mod_custom (Store Certifico) (976B) (86μs)
  • beforeRenderModule mod_custom (Store Certifico) (720B) (1μs)
  • afterRenderModule mod_custom (Store Certifico) (3.58KB) (69μs)
  • beforeRenderRawModule mod_custom (Food Safety book) (2.52KB) (4μs)
  • afterRenderRawModule mod_custom (Food Safety book) (12.02KB) (85μs)
  • beforeRenderModule mod_custom (Food Safety book) (720B) (1μs)
  • afterRenderModule mod_custom (Food Safety book) (4.02KB) (67μs)
  • beforeRenderRawModule mod_custom (MEPA) (1.95KB) (5μs)
  • afterRenderRawModule mod_custom (MEPA) (960B) (82μs)
  • beforeRenderModule mod_custom (MEPA) (704B) (1μs)
  • afterRenderModule mod_custom (MEPA) (3.75KB) (66μs)
  • beforeRenderRawModule mod_menu (Temi) (904B) (24μs)
  • afterRenderRawModule mod_menu (Temi) (292.94KB) (40.38ms)
  • beforeRenderModule mod_menu (Temi) (704B) (4μs)
  • afterRenderModule mod_menu (Temi) (22.67KB) (531μs)
  • beforeRenderRawModule mod_custom (Titolo "Costruzioni") (2.2KB) (44μs)
  • afterRenderRawModule mod_custom (Titolo "Costruzioni") (992B) (125μs)
  • beforeRenderModule mod_custom (Titolo "Costruzioni") (720B) (2μs)
  • afterRenderModule mod_custom (Titolo "Costruzioni") (2.67KB) (508μs)
  • beforeRenderRawModule mod_menu (Top Menu) (2.56KB) (56μs)
  • afterRenderRawModule mod_menu (Top Menu) (31.08KB) (4.72ms)
  • beforeRenderModule mod_menu (Top Menu) (704B) (3μs)
  • afterRenderModule mod_menu (Top Menu) (4.11KB) (82μs)
  • afterRender (1.06MB) (31.25ms)
  • 1 x afterRenderRawModule mod_menu (Temi) (292.94KB) (15.79%)
    40.38ms
    1 x afterRender (1.06MB) (12.22%)
    31.25ms
    1 x afterRenderComponent com_content (615.68KB) (12.1%)
    30.94ms
    1 x afterRenderRawModule mod_menu (Main Menu) (21.86KB) (11.33%)
    28.97ms
    1 x After Access::preloadPermissions (com_content) (16.77MB) (9.97%)
    25.51ms
    1 x afterInitialise (3.34MB) (8.14%)
    20.83ms
    1 x beforeRenderRawModule mod_login (Accedi all'area riservata) (1.75MB) (4.57%)
    11.69ms
    1 x afterRenderRawModule mod_articles_categories (Costruzioni) (302.13KB) (2.62%)
    6.70ms
    1 x afterRoute (391.45KB) (2.47%)
    6.33ms
    1 x afterRenderRawModule mod_menu (Documenti Abbonati) (164.93KB) (2.34%)
    5.99ms
    1 x afterRenderRawModule mod_menu (Top Menu) (31.08KB) (1.84%)
    4.72ms
    1 x afterRenderRawModule mod_menu (Policies) (23.48KB) (1.56%)
    3.99ms
    1 x afterLoad (86.09KB) (1.54%)
    3.93ms
    1 x beforeRenderRawModule mod_menu (Main Menu) (33.91KB) (1.37%)
    3.50ms
    1 x afterRenderRawModule mod_menu (Marketing) (20.39KB) (1.36%)
    3.48ms
    1 x afterRenderRawModule mod_menu (Social) (60.09KB) (1.17%)
    2.99ms
    1 x afterRenderRawModule mod_menu (Store) (18.38KB) (1.17%)
    2.99ms
    1 x afterRenderRawModule mod_menu (Media) (14.41KB) (1.01%)
    2.59ms
    1 x afterRenderRawModule mod_login (Accedi all'area riservata) (62.79KB) (0.96%)
    2.47ms
    1 x afterRenderRawModule mod_menu (Info) (11.67KB) (0.79%)
    2.01ms
    1 x Before Access::getAssetRules (id:33134 name:com_content.article.16198) (514.65KB) (0.31%)
    793μs
    1 x Before Access::preloadComponents (all components) (34.53KB) (0.3%)
    779μs
    1 x beforeRenderComponent com_content (37.2KB) (0.27%)
    695μs
    1 x afterRenderModule mod_menu (Main Menu) (11.27KB) (0.23%)
    578μs
    1 x afterRenderModule mod_articles_categories (Costruzioni) (10.5KB) (0.21%)
    539μs
    1 x afterRenderRawModule mod_custom (Certifico s.r.l.) (4.22KB) (0.21%)
    537μs
    1 x afterRenderModule mod_menu (Temi) (22.67KB) (0.21%)
    531μs
    1 x afterRenderModule mod_custom (Titolo "Costruzioni") (2.67KB) (0.2%)
    508μs
    1 x afterRenderModule mod_menu (Policies) (3.3KB) (0.19%)
    488μs
    1 x afterRenderModule mod_menu (Media) (3.11KB) (0.19%)
    481μs
    1 x afterRenderModule mod_menu (Documenti Abbonati) (3.94KB) (0.19%)
    478μs
    1 x afterRenderModule mod_menu (Social) (3.92KB) (0.19%)
    477μs
    1 x afterRenderModule mod_menu (Marketing) (3.3KB) (0.18%)
    468μs
    1 x afterRenderModule mod_custom (Certifico s.r.l.) (3.36KB) (0.18%)
    466μs
    1 x afterRenderModule mod_menu (Store) (3.3KB) (0.18%)
    459μs
    1 x afterRenderModule mod_menu (Info) (3.05KB) (0.18%)
    458μs
    1 x beforeRenderRawModule mod_menu (Social) (41.43KB) (0.16%)
    413μs
    1 x After Access::preloadComponents (all components) (115.88KB) (0.16%)
    411μs
    1 x afterRenderModule mod_login (Accedi all'area riservata) (5.95KB) (0.13%)
    323μs
    1 x afterDispatch (2.44KB) (0.11%)
    276μs
    1 x afterRenderModule mod_custom (Regolamento Macchine) (5.08KB) (0.07%)
    188μs
    1 x After Access::getAssetRules (id:33134 name:com_content.article.16198) (12.67KB) (0.06%)
    146μs
    1 x afterRenderRawModule mod_custom (Titolo "Costruzioni") (992B) (0.05%)
    125μs
    1 x afterRenderRawModule mod_custom (Regolamento Macchine) (1.03KB) (0.05%)
    118μs
    1 x afterRenderRawModule mod_custom (Abbonamento Full Plus) (912B) (0.04%)
    99μs
    1 x afterRenderRawModule mod_custom (TUA | Testo Unico Ambiente) (928B) (0.04%)
    90μs
    1 x afterRenderRawModule mod_custom (D. Lgs. 101/2020 - Protezione esposizione radiazioni ionizzanti) (960B) (0.04%)
    90μs
    1 x afterRenderRawModule mod_custom (D. Lgs. 81/2008 - TUSSL) (928B) (0.03%)
    88μs
    1 x afterRenderRawModule mod_custom (DM 21 Marzo 1973 | MOCA IT) (1.03KB) (0.03%)
    88μs
    1 x afterRenderRawModule mod_custom (Codice Prevenzione Incendi | RTO II) (3.41KB) (0.03%)
    87μs
    1 x afterRenderRawModule mod_custom (Codice Unico Sicurezza) (928B) (0.03%)
    87μs
    1 x afterRenderRawModule mod_custom (D. Lgs. 231/2001 - Responsabilità amministrativa enti) (960B) (0.03%)
    86μs
    1 x afterRenderRawModule mod_custom (MOCA - GMP | Consolidato) (1.03KB) (0.03%)
    86μs
    1 x afterRenderRawModule mod_custom (Abbonamento Full) (912B) (0.03%)
    86μs
    1 x afterRenderRawModule mod_custom (Store Certifico) (976B) (0.03%)
    86μs
    1 x afterRenderRawModule mod_custom (CEM4 || Ultimo aggiornamento) (1.03KB) (0.03%)
    85μs
    1 x afterRenderRawModule mod_custom (D. Lgs. 196/2003 - Codice protezione dati personali | GDPR) (960B) (0.03%)
    85μs
    1 x afterRenderRawModule mod_custom (Direttiva macchine e norme armonizzate) (1.05KB) (0.03%)
    85μs
    1 x afterRenderRawModule mod_custom (Certifico ADR) (1.02KB) (0.03%)
    85μs
    1 x afterRenderRawModule mod_custom (Food Safety book) (12.02KB) (0.03%)
    85μs
    1 x afterRenderRawModule mod_custom (Glossario Certifico HSE) (1.03KB) (0.03%)
    84μs
    1 x afterRenderRawModule mod_custom (TUSSL / Link) (976B) (0.03%)
    83μs
    1 x afterRenderRawModule mod_custom (MEPA) (960B) (0.03%)
    82μs
    1 x afterRenderModule mod_menu (Top Menu) (4.11KB) (0.03%)
    82μs
    1 x afterRenderModule mod_custom (D. Lgs. 81/2008 - TUSSL) (4.02KB) (0.03%)
    75μs
    1 x afterRenderModule mod_custom (Abbonamento Full Plus) (4.14KB) (0.03%)
    75μs
    1 x afterRenderModule mod_custom (CEM4 || Ultimo aggiornamento) (3.91KB) (0.03%)
    73μs
    1 x afterRenderModule mod_custom (Codice Prevenzione Incendi | RTO II) (4.16KB) (0.03%)
    72μs
    1 x afterRenderModule mod_custom (Abbonamento Full) (4.89KB) (0.03%)
    72μs
    1 x afterRenderModule mod_custom (D. Lgs. 231/2001 - Responsabilità amministrativa enti) (4.42KB) (0.03%)
    71μs
    1 x afterRenderModule mod_custom (TUA | Testo Unico Ambiente) (4.03KB) (0.03%)
    71μs
    1 x afterRenderModule mod_custom (TUSSL / Link) (3.64KB) (0.03%)
    70μs
    1 x afterRenderModule mod_custom (D. Lgs. 196/2003 - Codice protezione dati personali | GDPR) (4.44KB) (0.03%)
    70μs
    1 x afterRenderModule mod_custom (Store Certifico) (3.58KB) (0.03%)
    69μs
    1 x afterRenderModule mod_custom (Glossario Certifico HSE) (3.77KB) (0.03%)
    69μs
    1 x afterRenderModule mod_custom (Direttiva macchine e norme armonizzate) (4.16KB) (0.03%)
    68μs
    1 x afterRenderModule mod_custom (Certifico ADR) (3.89KB) (0.03%)
    68μs
    1 x afterRenderModule mod_custom (MOCA - GMP | Consolidato) (4.02KB) (0.03%)
    68μs
    1 x afterRenderModule mod_custom (DM 21 Marzo 1973 | MOCA IT) (4.03KB) (0.03%)
    68μs
    1 x afterRenderModule mod_custom (D. Lgs. 101/2020 - Protezione esposizione radiazioni ionizzanti) (4.44KB) (0.03%)
    67μs
    1 x afterRenderModule mod_custom (Codice Unico Sicurezza) (4.02KB) (0.03%)
    67μs
    1 x afterRenderModule mod_custom (Food Safety book) (4.02KB) (0.03%)
    67μs
    1 x afterRenderModule mod_custom (MEPA) (3.75KB) (0.03%)
    66μs
    1 x beforeRenderRawModule mod_menu (Top Menu) (2.56KB) (0.02%)
    56μs
    1 x beforeRenderRawModule mod_custom (Titolo "Costruzioni") (2.2KB) (0.02%)
    44μs
    1 x beforeRenderRawModule mod_menu (Policies) (616B) (0.01%)
    26μs
    1 x beforeRenderRawModule mod_custom (Certifico s.r.l.) (2.29KB) (0.01%)
    25μs
    1 x beforeRenderRawModule mod_menu (Temi) (904B) (0.01%)
    24μs
    1 x beforeRenderRawModule mod_menu (Info) (440B) (0.01%)
    24μs
    1 x beforeRenderRawModule mod_menu (Documenti Abbonati) (1.96KB) (0.01%)
    23μs
    1 x beforeRenderRawModule mod_custom (Regolamento Macchine) (5.7KB) (0%)
    11μs
    1 x beforeRenderRawModule mod_menu (Media) (912B) (0%)
    9μs
    1 x beforeRenderRawModule mod_menu (Store) (912B) (0%)
    9μs
    1 x beforeRenderRawModule mod_menu (Marketing) (896B) (0%)
    9μs
    1 x beforeRenderRawModule mod_articles_categories (Costruzioni) (2.36KB) (0%)
    9μs
    1 x Before Access::preloadPermissions (com_content) (1.51KB) (0%)
    7μs
    1 x beforeRenderRawModule mod_custom (D. Lgs. 81/2008 - TUSSL) (5.5KB) (0%)
    7μs
    1 x beforeRenderRawModule mod_custom (D. Lgs. 101/2020 - Protezione esposizione radiazioni ionizzanti) (2.72KB) (0%)
    6μs
    1 x beforeRenderRawModule mod_custom (Codice Prevenzione Incendi | RTO II) (2.25KB) (0%)
    6μs
    1 x beforeRenderRawModule mod_custom (D. Lgs. 231/2001 - Responsabilità amministrativa enti) (1.91KB) (0%)
    6μs
    1 x beforeRenderRawModule mod_custom (D. Lgs. 196/2003 - Codice protezione dati personali | GDPR) (2.22KB) (0%)
    6μs
    1 x beforeRenderRawModule mod_custom (TUA | Testo Unico Ambiente) (2.38KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (TUSSL / Link) (2.52KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (Glossario Certifico HSE) (2.38KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (CEM4 || Ultimo aggiornamento) (2KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (Direttiva macchine e norme armonizzate) (2.73KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (Certifico ADR) (1.23KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (MOCA - GMP | Consolidato) (2.5KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (Codice Unico Sicurezza) (2.25KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (DM 21 Marzo 1973 | MOCA IT) (2.38KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (Abbonamento Full) (2.39KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (Abbonamento Full Plus) (1.63KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (Store Certifico) (3.27KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (MEPA) (1.95KB) (0%)
    5μs
    1 x beforeRenderRawModule mod_custom (Food Safety book) (2.52KB) (0%)
    4μs
    1 x beforeRenderModule mod_menu (Temi) (704B) (0%)
    4μs
    1 x beforeRenderModule mod_menu (Marketing) (704B) (0%)
    3μs
    1 x beforeRenderModule mod_articles_categories (Costruzioni) (720B) (0%)
    3μs
    1 x beforeRenderModule mod_menu (Main Menu) (704B) (0%)
    3μs
    1 x beforeRenderModule mod_menu (Social) (704B) (0%)
    3μs
    1 x beforeRenderModule mod_menu (Top Menu) (704B) (0%)
    3μs
    1 x beforeRenderModule mod_login (Accedi all'area riservata) (736B) (0%)
    2μs
    1 x beforeRenderModule mod_menu (Policies) (704B) (0%)
    2μs
    1 x beforeRenderModule mod_menu (Store) (704B) (0%)
    2μs
    1 x beforeRenderModule mod_menu (Info) (704B) (0%)
    2μs
    1 x beforeRenderModule mod_menu (Documenti Abbonati) (720B) (0%)
    2μs
    1 x beforeRenderModule mod_custom (Regolamento Macchine) (720B) (0%)
    2μs
    1 x beforeRenderModule mod_custom (Titolo "Costruzioni") (720B) (0%)
    2μs
    1 x beforeRenderModule mod_menu (Media) (704B) (0%)
    2μs
    1 x beforeRenderModule mod_custom (Certifico s.r.l.) (720B) (0%)
    2μs
    1 x beforeRenderModule mod_custom (D. Lgs. 81/2008 - TUSSL) (720B) (0%)
    2μs
    1 x beforeRenderModule mod_custom (TUA | Testo Unico Ambiente) (736B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (DM 21 Marzo 1973 | MOCA IT) (736B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (Abbonamento Full) (720B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (MEPA) (704B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (Codice Prevenzione Incendi | RTO II) (736B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (TUSSL / Link) (720B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (Glossario Certifico HSE) (720B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (CEM4 || Ultimo aggiornamento) (736B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (D. Lgs. 231/2001 - Responsabilità amministrativa enti) (752B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (D. Lgs. 196/2003 - Codice protezione dati personali | GDPR) (768B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (D. Lgs. 101/2020 - Protezione esposizione radiazioni ionizzanti) (768B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (Direttiva macchine e norme armonizzate) (736B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (Certifico ADR) (720B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (MOCA - GMP | Consolidato) (736B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (Codice Unico Sicurezza) (720B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (Abbonamento Full Plus) (720B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (Store Certifico) (720B) (0%)
    1μs
    1 x beforeRenderModule mod_custom (Food Safety book) (720B) (0%)
    1μs
98 statements were executed, 41 of which were duplicates, 57 unique40.4ms4.92MB
  • SELECT @@SESSION.sql_mode;42μs968BExplainStack/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:308Copy
  • SELECT `data` FROM `com_session` WHERE `session_id` = ?69μs1KBParamsExplainStack/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:250Copy
  • SELECT `session_id` FROM `com_session` WHERE `session_id` = :session_id LIMIT 140μs1.31KBParamsExplainStack/libraries/src/Session/MetadataManager.php:187Copy
  • UPDATE `com_session` SET `guest` = :guest , `time` = :time , `userid` = :user_id , `username` = :username , `client_id` = :client_id WHERE `session_id` = :session_id1.03ms992BParamsStack/libraries/src/Session/MetadataManager.php:316Copy
  • SELECT `extension_id` AS `id`,`element` AS `option`,`params`,`enabled` FROM `com_extensions` WHERE `type` = 'component' AND `state` = 0 AND `enabled` = 1160μs1.56KBExplainStack/libraries/src/Component/ComponentHelper.php:399Copy
  • SELECT `id`,`rules` FROM `com_viewlevels`42μs656BExplainStack/libraries/src/Access/Access.php:955Copy
  • SELECT `b`.`id` FROM `com_usergroups` AS `a` LEFT JOIN `com_usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `a`.`id` = :guest73μs1.33KBParamsExplainStack/libraries/src/Access/Access.php:868Copy
  • SELECT `folder` AS `type`,`element` AS `name`,`params` AS `params`,`extension_id` AS `id` FROM `com_extensions` WHERE `enabled` = 1 AND `type` = 'plugin' AND `state` IN (0,1) AND `access` IN (:preparedArray1,:preparedArray2) ORDER BY `ordering`451μs4.48KBParamsExplainStack/libraries/src/Plugin/PluginHelper.php:294Copy
  • SELECT `m`.`id`,`m`.`menutype`,`m`.`title`,`m`.`alias`,`m`.`note`,`m`.`link`,`m`.`type`,`m`.`level`,`m`.`language`,`m`.`browserNav`,`m`.`access`,`m`.`params`,`m`.`home`,`m`.`img`,`m`.`template_style_id`,`m`.`component_id`,`m`.`parent_id`,`m`.`path` AS `route`,`e`.`element` AS `component` FROM `com_menu` AS `m` LEFT JOIN `com_extensions` AS `e` ON `m`.`component_id` = `e`.`extension_id` WHERE ( (`m`.`published` = 1 AND `m`.`parent_id` > 0 AND `m`.`client_id` = 0) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :currentDate1)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :currentDate2) ORDER BY `m`.`lft`924μs375.92KBParamsExplainStack/libraries/src/Menu/SiteMenu.php:166Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`344μs4.14KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `id` FROM `com_content` WHERE `alias` = :segment AND `catid` = :id375μs1.34KBParamsExplainStack/components/com_content/src/Service/Router.php:263Copy
  • SELECT `id`,`home`,`template`,`s`.`params`,`inheritable`,`parent` FROM `com_template_styles` AS `s` LEFT JOIN `com_extensions` AS `e` ON `e`.`element` = `s`.`template` AND `e`.`type` = 'template' AND `e`.`client_id` = `s`.`client_id` WHERE `s`.`client_id` = 0 AND `e`.`enabled` = 1150μs60.84KBExplainStack/administrator/components/com_templates/src/Model/StyleModel.php:775Copy
  • SELECT * FROM `com_template_styles` WHERE `client_id` = 0 AND `id` = '13'63μs40.91KBExplainStack/plugins/system/helixultimate/src/Platform/Helper.php:57Copy
  • SELECT * FROM `com_languages` WHERE `published` = 1 ORDER BY `ordering` ASC68μs1.59KBExplainStack/libraries/src/Language/LanguageHelper.php:177Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `com_assets` WHERE `name` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9,:preparedArray10,:preparedArray11,:preparedArray12,:preparedArray13,:preparedArray14,:preparedArray15,:preparedArray16,:preparedArray17,:preparedArray18,:preparedArray19,:preparedArray20,:preparedArray21,:preparedArray22,:preparedArray23,:preparedArray24,:preparedArray25,:preparedArray26,:preparedArray27,:preparedArray28,:preparedArray29,:preparedArray30,:preparedArray31,:preparedArray32,:preparedArray33,:preparedArray34,:preparedArray35,:preparedArray36,:preparedArray37,:preparedArray38,:preparedArray39)281μs7.44KBParamsExplainStack/libraries/src/Access/Access.php:357Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `com_assets` WHERE `name` LIKE :asset OR `name` = :extension OR `parent_id` = 016.95ms3.92MBParamsExplainStack/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `com_content`400μs3.02KBStack/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • UPDATE `com_content` SET `hits` = (`hits` + 1) WHERE `id` = '16198'1.09ms48BStack/libraries/src/Table/Table.php:1348Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `com_content` AS `a` INNER JOIN `com_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `com_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `com_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `com_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `com_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)371μs78.12KBParamsExplainStack/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`356μs3.92KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`tag_id`,`t`.* FROM `com_contentitem_tag_map` AS `m` INNER JOIN `com_tags` AS `t` ON `m`.`tag_id` = `t`.`id` WHERE `m`.`type_alias` = :contentType AND `m`.`content_item_id` = :id AND `t`.`published` = 1 AND `t`.`access` IN (:preparedArray1,:preparedArray2)4.89ms4.03KBParamsExplainStack/libraries/src/Helper/TagsHelper.php:388Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`353μs3.92KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM com_fields AS a LEFT JOIN `com_languages` AS l ON l.lang_code = a.language LEFT JOIN com_users AS uc ON uc.id=a.checked_out LEFT JOIN com_viewlevels AS ag ON ag.id = a.access LEFT JOIN com_users AS ua ON ua.id = a.created_user_id LEFT JOIN com_fields_groups AS g ON g.id = a.group_id LEFT JOIN `com_fields_categories` AS fc ON fc.field_id = a.id WHERE ( (`a`.`context` = :context AND (`fc`.`category_id` IS NULL OR `fc`.`category_id` IN (:preparedArray1,:preparedArray2,:preparedArray3)) AND `a`.`access` IN (:preparedArray4,:preparedArray5)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray6,:preparedArray7)) AND `a`.`state` = :state) AND (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC568μs4.81KBParamsExplainStack/libraries/src/MVC/Model/BaseDatabaseModel.php:164Copy
  • SELECT `a`.`id`,`a`.`title`,`a`.`catid`,`a`.`language`, CASE WHEN CHAR_LENGTH(`a`.`alias`) != 0 THEN CONCAT_WS(':', `a`.`id`, `a`.`alias`) ELSE a.id END AS `slug`, CASE WHEN CHAR_LENGTH(`cc`.`alias`) != 0 THEN CONCAT_WS(':', `cc`.`id`, `cc`.`alias`) ELSE cc.id END AS `catslug` FROM `com_content` AS `a` LEFT JOIN `com_categories` AS `cc` ON `cc`.`id` = `a`.`catid` WHERE `a`.`catid` = :catid AND `a`.`state` = :state AND `a`.`access` IN (:preparedArray1,:preparedArray2) AND (`publish_up` IS NULL OR `publish_up` <= :nowDate1) AND (`publish_down` IS NULL OR `publish_down` >= :nowDate2) ORDER BY CASE WHEN `a`.`publish_up` IS NULL THEN `a`.`created` ELSE `a`.`publish_up` END DESC3.43ms3.22KBParamsExplainStack/plugins/content/pagenavigation/src/Extension/PageNavigation.php:188Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`278μs3.92KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT * FROM com_hikashop_config110μs24.63KBExplainStack/administrator/components/com_hikashop/classes/config.php:16Copy
  • SET sql_mode=(SELECT REPLACE(REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''), 'STRICT_TRANS_TABLES', ''));21μs0BStack/administrator/components/com_hikashop/helpers/helper.php:3558Copy
  • SELECT `m`.`id`,`m`.`title`,`m`.`module`,`m`.`position`,`m`.`content`,`m`.`showtitle`,`m`.`params`,`mm`.`menuid` FROM `com_modules` AS `m` LEFT JOIN `com_modules_menu` AS `mm` ON `mm`.`moduleid` = `m`.`id` LEFT JOIN `com_extensions` AS `e` ON `e`.`element` = `m`.`module` AND `e`.`client_id` = `m`.`client_id` WHERE ( ( (`m`.`published` = 1 AND `e`.`enabled` = 1 AND `m`.`client_id` = :clientId AND `m`.`access` IN (:preparedArray1,:preparedArray2)) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :publishUp)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :publishDown)) AND (`mm`.`menuid` = :itemId OR `mm`.`menuid` <= 0) ORDER BY `m`.`position`,`m`.`ordering`768μs148.81KBParamsExplainStack/libraries/src/Cache/Controller/CallbackController.php:51Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id51μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id41μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug`,( SELECT COUNT(`i`.`id`) FROM `com_content` AS `i` WHERE `i`.`catid` = `c`.`id` AND `i`.`state` = 1) AS `numitems` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`1.27ms4.22KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`219μs3.92KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`219μs6.42KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`208μs3.95KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`187μs4KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`184μs3.92KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`180μs3.92KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`178μs3.92KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT * FROM `com_schemaorg` WHERE `itemId` = :itemId AND `context` = :context50μs1.55KBParamsExplainStack/plugins/system/schemaorg/src/Extension/Schemaorg.php:403Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `com_content` AS `a` INNER JOIN `com_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `com_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `com_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `com_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `com_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)181μs78.17KBParamsExplainStack/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT SUM(CASE WHEN `a`.`next_execution` <= :now THEN 1 ELSE 0 END) AS due_count,SUM(CASE WHEN `a`.`locked` IS NULL THEN 0 ELSE 1 END) AS locked_count FROM `com_scheduler_tasks` AS `a` WHERE `a`.`state` = 161μs1.37KBParamsExplainStack/administrator/components/com_scheduler/src/Model/TasksModel.php:517Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id47μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`87μs3.88KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id41μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id38μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`75μs3.88KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id35μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id31μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`74μs3.88KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id31μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id34μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`74μs3.88KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id30μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id33μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`73μs3.88KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id32μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id33μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`74μs3.88KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id29μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id36μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`71μs3.88KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id30μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id33μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`69μs3.88KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id29μs12.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id35μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`70μs3.88KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id30μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id32μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id29μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id33μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`269μs3.95KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id34μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id31μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`261μs3.94KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id37μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`258μs3.94KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id36μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`254μs3.95KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id37μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`133μs3.95KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id34μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id34μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id32μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id32μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`129μs3.95KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id38μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id31μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id36μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id28μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id33μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id26μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id34μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `com_categories` AS `s` INNER JOIN `com_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`298μs3.95KBParamsExplainStack/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id48μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `alias` FROM `com_content` WHERE `id` = :id37μs1.31KBParamsExplainStack/components/com_content/src/Service/Router.php:168Copy
  • SELECT `session_id` FROM `com_session` WHERE `session_id` = ?45μs1KBParamsExplainStack/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:277Copy
  • UPDATE `com_session` SET `data` = ? , `time` = ? WHERE `session_id` = ?45μs592BParamsStack/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:301Copy