Pubblicazioni

IN ALLESTIMENTO

<?php
#codice dipartimento DIMSC 
#"idAb": "4708"
#ACCESSO "univpm2024!"
#https://irisws.univpm.it/idip.php?auth=univpm2024!&idAb=4708&year=2024

//calcolo l'anno corrente e il precedente
function calcolanni()
{
	$annoAttuale = '';
	$annoScorso = '';
	$strAnnoAttuale = date("Y");
	$intAnnoAttuale=(int)$strAnnoAttuale;
	$intAnnoScorso = ($intAnnoAttuale-1);
	$intAnnoScorso2 = ($intAnnoAttuale-2);
	$intAnnoScorso3 = ($intAnnoAttuale-3);
	$intAnnoScorso4 = ($intAnnoAttuale-4);
	$intAnnoScorso5 = ($intAnnoAttuale-5);
	$arrAnni = array($intAnnoScorso5,$intAnnoScorso4,$intAnnoScorso3,$intAnnoScorso2,$intAnnoScorso,$intAnnoAttuale);	
	return $arrAnni;
}

if ($_GET["year"]=='') $_GET["year"]="2024";

//$json = file_get_contents('https://irisws.univpm.it/idip.php?auth=univpm2024!&idAb=4708&year=2024');
$json = file_get_contents("https://irisws.univpm.it/idip.php?auth=univpm2024!&idAb=4708&year=".$_GET["year"]."");
$arrRisultato = json_decode($json,true);
//estraggo il sosttonsime di array che contengono i dati che mi interessano

$arrResult[]=$arrRisultato['pubblicazioni'][1];
//print_r($arrResult);

// The page to display (Usually is received in a url parameter)
$page = intval($_GET['page']);

// The number of records to display per page
$page_size = 20;


// funzione per ordinare l'array per data discentente o ascendente
function array_msort($array='', $cols='') { 
    $colarr = array(); 
    foreach ($cols as $col => $order) { 
        $colarr[$col] = array(); 
        foreach ($array as $k => $row) { $colarr[$col]['_'.$k] = strtolower($row[$col]); } 
    } 
    $eval = 'array_multisort('; 
    foreach ($cols as $col => $order) { 
        $eval .= '$colarr[\''.$col.'\'],'.$order.','; 
    } 
    $eval = substr($eval,0,-1).');'; 
    eval($eval); 
    $ret = array(); 
    foreach ($colarr as $col => $arr) { 
        foreach ($arr as $k => $v) { 
            $k = substr($k,1); 
            if (!isset($ret[$k])) $ret[$k] = $array[$k]; 
            $ret[$k][$col] = $array[$k][$col]; 
        } 
    } 
    return $ret; 
}

//chiamata alla funzione che ordina l'array per dateIssued decrescente
$arrOrdinato = array_msort($arrResult[0], array('dateIssued'=>SORT_DESC));
//print_r($arrOrdinato);
//funzione che prepara la stringa da stampare
function Stampa($arrOrdinato=''){

	foreach ($arrOrdinato as $key=>$value) {	
		$arrStampa[] = "<strong>Titolo:</strong> ".$value['dc.title']."<br><strong>Autori:</strong> ".str_replace(",", " ", $value['authors'])."<br><strong>Data pubblicazione:</strong> ".date('d-m-Y', strtotime($value['dateIssued']))."<br><strong>Tutti i dettagli:</strong> <a href=".$value['link'].">Vai alla pubblicazione</a><br><br><br><br>";
		
	}
return $arrStampa;
}
$arrStampa = Stampa($arrOrdinato);
//print_r($arrStampa);




// Calculate total number of records, and total number of pages
$total_records = count($arrStampa);
$total_pages   = ceil($total_records / $page_size);

// Validation: Page to display can not be greater than the total number of pages
if ($page > $total_pages) {
    $page = $total_pages;
}

// Validation: Page to display can not be less than 1
if ($page < 1) {
    $page = 1;
}

// Calculate the position of the first record of the page to display
$offset = ($page - 1) * $page_size;

// Get the subset of records to be displayed from the array
$data = array_slice($arrStampa, $offset, $page_size);

$i=0;
$arrAnni=calcolanni();
echo "<a href=\"?year=".$arrAnni[5]."\">".$arrAnni[5]." </a>| <a href=\"?year=".$arrAnni[4]."\">".$arrAnni[4]." </a>| <a href=\"?year=".$arrAnni[3]."\">".$arrAnni[3]." </a>| <a href=\"?year=".$arrAnni[2]."\">".$arrAnni[2]." </a>| <a href=\"?year=".$arrAnni[1]."\">".$arrAnni[1]." | <a href=\"?year=".$arrAnni[0]."\">".$arrAnni[0]." </a><br><br>";

//print_r($data);
//stampo il contentuto dell'array per visualizzare le pubblicazioni
foreach ($data as $row) {
     echo $row;
	 $i++;
}

// variables for pagination links
if ($page=='') $page = 1;

$page_first = $page > 1 ? 1 : '';
$page_prev  = $page > 1 ? $page-1 : '';
$page_next  = $page < $total_pages ? $page + 1 : '';
$page_last  = $page < $total_pages ? $total_pages : '';

echo "<a href=\"?page=".$page_first."&year=".$_GET[year]."\">« First  </a>";
echo "<a href=\"?page=".$page_prev."&year=".$_GET[year]."\">Prev  </a>";
echo "<a href=\"?page=".$page_next."&year=".$_GET[year]."\">Next  </a>";
echo "<a href=\"?page=".$page_last."&year=".$_GET[year]."\">Last »</a>";

		
?>