Exemple #1
0
 public function calendarioAttivita(DT $inizio, DT $fine)
 {
     $t = [];
     foreach (Attivita::filtra([['pubblica', ATTIVITA_PUBBLICA]]) as $a) {
         $t[] = $a;
     }
     return $t;
 }
Exemple #2
0
 public function genera($attivita, $turno)
 {
     $att = Attivita::id($attivita);
     $turno = Turno::id($turno);
     $ref = Volontario::id($att->referente);
     $c = $att->comitato();
     $name = '' . date('Ymd_THis', $turno->inizio) . '_' . $turno->id . '_.ics';
     /* Strutturo il file */
     $this->autore = $sessione->utente;
     $this->nome = $name;
     $this->mime = 'text/calendar; charset=utf-8; method=REQUEST';
     /* Inserisco le informazioni */
     $s = "BEGIN:VCALENDAR\nVERSION:2.0\nPRODID:-//Croce Rossa Italiana//Progetto GAIA//IT\nMETHOD:REQUEST\nBEGIN:VTIMEZONE\nTZID:Europe/Rome\nBEGIN:DAYLIGHT\nTZOFFSETFROM:+0100\nTZOFFSETTO:+0200\nTZNAME:CEST\nDTSTART:19700329T020000\nRRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU\nEND:DAYLIGHT\nBEGIN:STANDARD\nTZOFFSETFROM:+0200\nTZOFFSETTO:+0100\nTZNAME:CET\nDTSTART:19701025T030000\nRRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU\nEND:STANDARD\nEND:VTIMEZONE\nBEGIN:VEVENT\nDTSTAMP:" . date('Ymd\\THis', time()) . "\nDTSTART;TZID=Europe/Rome:" . date('Ymd\\THis', $turno->inizio) . "\nDTEND;TZID=Europe/Rome:" . date('Ymd\\THis', $turno->fine) . "\nSUMMARY:" . $att->nome . ": " . $turno->nome . "\nLOCATION:" . $att->luogo . "\nUID:" . $turno->id . "\nDESCRIPTION:\nTurno organizzato da " . $c->nomeCompleto() . ",\ndettagli: " . strip_tags($att->descrizione) . "\nORGANIZER;CN=\"" . $ref->nomeCompleto() . "\":mailto:" . $ref->email . "\nEND:VEVENT\nEND:VCALENDAR\n";
     file_put_contents($this->percorso(), utf8_encode($s));
 }
Exemple #3
0
<?php

controllaParametri(['id', 'formattato'], 'attivita.gestione&err');
$a = Attivita::id($_POST['id']);
paginaAttivita($a);
$a->stato = ATT_STATO_OK;
$a->luogo = $_POST['formattato'];
$a->localizzaStringa($_POST['formattato']);
redirect('attivita.modifica&id=' . $a->id);
Exemple #4
0
<?php

/*
 * ©2012 Croce Rossa Italiana
 */
paginaPrivata();
$id = $_GET['id'];
$a = Attivita::id($id);
?>

<hr />
<div class="row-fluid">
    
    <div class="span3">
        <?php 
menuVolontario();
?>

    </div>

    <div class="span9">
        

        <div class="row-fluid">

        	<div class="btn-group">
	        	<a href="?p=attivita" class="btn btn-large">
	        		<i class="icon-reply"></i>
	        	</a>
	        	<a href="?p=attivita" class="btn btn-large btn-success">
	        		<i class="icon-ok"></i>
<?php

/*
 * ©2014 Croce Rossa Italiana
 */
paginaAdmin();
controllaParametri(array('input'), 'admin.ricerca.attivita&err');
$attivita = Attivita::by('id', $_POST['input']);
if ($attivita) {
    redirect('attivita.scheda&id=' . $attivita);
}
if (!$attivita) {
    $attivita = Attivita::filtra([['nome', "%{$_POST['input']}%", OP_LIKE]]);
}
if (!$attivita) {
    redirect('admin.ricerca.utenti&no');
}
?>
<div class="row-fluid">
	<div class="span12">
    	<div class="row-fluid">
        	<h2>
                <i class="icon-calendar muted"></i>
                Attività 
        	</h2>
        </div>
		<div class="row-fluid">
		    <div class="span12">
		        <table class="table table-striped table-bordered table-condensed" id="tabellaUtenti">
		            <thead>
		                <th>Nome</th>
} else {
    /* Creo la dimissione */
    $d = new Dimissione();
    $d->volontario = $v->id;
    $d->appartenenza = $attuale;
    $d->comitato = $comitato;
    $d->motivo = $_POST['motivo'];
    $d->info = $_POST['info'];
    $d->tConferma = time();
    $d->pConferma = $me;
    /* Evitiamo di lasciare compiti a chi non è più in CRI */
    $f = Area::filtra([['responsabile', $v]]);
    foreach ($f as $_f) {
        $_f->dimettiReferente();
    }
    $f = Attivita::filtra([['referente', $v]]);
    foreach ($f as $_f) {
        $_f->referente = $comitato->unPresidente();
    }
    $f = Autorizzazione::filtra([['volontario', $v]]);
    foreach ($f as $_f) {
        $_f->volontario = $comitato->unPresidente();
    }
    $f = Gruppo::filtra([['referente', $v]]);
    foreach ($f as $_f) {
        $_f->referente = $comitato->unPresidente();
    }
    $f = AppartenenzaGruppo::filtra([['volontario', $v]]);
    foreach ($f as $_f) {
        $_f->cancella();
    }
Exemple #7
0
 public static function pulizia()
 {
     $attivita = Attivita::elenco();
     $eseguiti = 0;
     $nAttivita = 0;
     foreach ($attivita as $a) {
         $comitato = $a->comitato();
         if ($comitato) {
             if (!$a->referente()) {
                 $comitato = $a->comitato();
                 $presidente = $comitato->primoPresidente();
                 $a->referente = $presidente;
                 $turni = Turno::filtra([['attivita', $a]]);
                 foreach ($turni as $_t) {
                     $part = Partecipazione::filtra([['turno', $_t]]);
                     foreach ($part as $_p) {
                         $aut = Autorizzazione::filtra([['partecipazione', $_p]]);
                         foreach ($aut as $_a) {
                             $_a->volontario = $presidente;
                         }
                     }
                 }
                 $eseguiti++;
                 continue;
             }
             continue;
         } else {
             $turni = Turno::filtra([['attivita', $a]]);
             foreach ($turni as $turno) {
                 $partecipazioni = Partecipazione::filtra([['turno', $turno]]);
                 foreach ($partecipazioni as $partecipazione) {
                     $autorizzazioni = Autorizzazione::filtra([['partecipazione', $partecipazione]]);
                     foreach ($autorizzazioni as $autorizzazione) {
                         $autorizzazione->cancella();
                     }
                     $partecipazione->cancella();
                 }
                 $turno->cancella();
             }
             $a->cancella();
             $nAttivita++;
         }
     }
     $t = $eseguiti + $nAttivita;
     return $t;
 }
Exemple #8
0
function cronjobGiornaliero()
{
    global $log, $db, $cache;
    $ok = true;
    /* === 0. PERSISTE LA CACHE SU DISCO */
    cronjobEsegui("Persistere la cache di Redis su disco", function () use($cache) {
        if ($cache) {
            $cache->save();
        }
        return true;
    }, $log, $ok);
    cronjobEsegui("Cancellare file scaduti da disco e database", function () {
        $n = 0;
        foreach (File::scaduti() as $f) {
            $f->cancella();
            $n++;
        }
        return "Cancellati {$n} file scaduti";
    }, $log, $ok);
    cronjobEsegui("Autorizzare estensioni dopo 30gg, con notifica ai volontari", function () {
        $n = 0;
        foreach (Estensione::daAutorizzare() as $e) {
            $e->auto();
            $n++;
        }
        return "Concesse {$n} estensioni";
    }, $log, $ok);
    cronjobEsegui("Terminare estensioni", function () {
        $n = 0;
        foreach (Estensione::daChiudere() as $e) {
            $e->termina();
            $n++;
        }
        return "Chiuse {$n} estensioni";
    }, $log, $ok);
    cronjobEsegui("Autorizzare trasferimenti dopo 30gg, notifica e chiusura sospesi e turni", function () {
        $n = 0;
        foreach (Trasferimento::daAutorizzare() as $t) {
            $t->auto();
            $n++;
        }
        return "Autorizzati {$n} trasferimenti";
    }, $log, $ok);
    cronjobEsegui("Autorizzare riserve dopo 30gg", function () {
        $n = 0;
        foreach (Riserva::daAutorizzare() as $r) {
            $r->auto();
            $n++;
        }
        return "Autorizzate {$n} riserve";
    }, $log, $ok);
    cronjobEsegui("Pulitura e fix delle attività", function () {
        $n = 0;
        $n = Attivita::pulizia();
        return "Fix di {$n} attività";
    }, $log, $ok);
    cronjobEsegui("Rigenerazione albero dei comitati", function () {
        GeoPolitica::rigeneraAlbero();
        return true;
    }, $log, $ok);
    cronjobEsegui("Chiusura validazioni scadute", function () {
        Validazione::chiudi();
        return true;
    }, $log, $ok);
    cronjobEsegui("Rimozione errori vecchi di una settimana", function () {
        $n = MErrore::pulisci();
        return "Cancellati log di {$n} errori in database";
    }, $log, $ok);
    /****************************************************
     * MODULO FORMAZIONE
     ****************************************************/
    // Creo i certificati per i corsi superati
    cronjobEsegui("Cerca i corsi in stato da elaborare e genera i relativi certificati", function () {
        $n = Corso::chiudiCorsi();
        return "Generati ({$n}) certificati";
    }, $log, $ok);
    return $ok;
}
Exemple #9
0
<?php

/* 
 * ©2013 Croce Rossa Italiana
 */
paginaPrivata();
caricaSelettore();
controllaParametri(array('id'));
$a = Attivita::id($_GET['id']);
paginaAttivita($a);
if (!$a->haPosizione()) {
    redirect('attivita.localita&id=' . $a->id);
}
$del = $me->delegazioni(APP_ATTIVITA);
$comitati = $me->comitatiDelegazioni(APP_ATTIVITA);
$domini = $me->dominiDelegazioni(APP_ATTIVITA);
?>

<form action="?p=attivita.modifica.ok" method="POST">
<input type="hidden" name="id" value="<?php 
echo $a->id;
?>
" />
    <div class="row-fluid">
        
        <div class="span6">
            <h2>
                <i class="icon-time muted"></i>
                Giorni e turni dell'attività
            </h2>
            
Exemple #10
0
<?php

paginaPrivata();
$a = $_GET['id'];
$a = Attivita::id($a);
?>

<div class="row-fluid">
	<div class="span8 offset2">

		<h3><i class="icon-warning-sign"></i> Quota non registrata</h3>

		<p><strong>Siamo spiacenti, non possiamo inoltrare la richiesta di partecipazione a questa attivit&agrave;.</strong></p>

		<p>Il Presidente del Comitato organizzatore ha scelto di limitare la possibilit&agrave; partecipazione alle attivit&agrave; dello 
		stesso Comitato ai Volontari aventi una Quota registrata nell'anno. 
		Questo viene generalmente imposto per motivi assicurativi.</p>

		<p>
			<strong>Cosa puoi fare?</strong>

			<ul>
				<li><a href="javascript:history.go(-1);">Torna alla pagina dell'attivit&agrave;</a>;</li>
				<li>Se hai pagato la quota e questa non &egrave; stata registrata, rivolgiti al tuo Ufficio Soci o al tuo Presidente;</li>
				<li>Per qualsiasi altro dubbio, <a href="?p=utente.mail.nuova&id=<?php 
echo $a->comitato()->primoPresidente();
?>
">contatta il Presidente del Comitato organizzatore</a>.</li>
			</ul>

		</p>
Exemple #11
0
  
</div>

<script type="text/javascript">
  function initialize() {
    var opzioni = {
      zoom: 6,
      center: new google.maps.LatLng(41.9,12.4833333),
      mapTypeId: google.maps.MapTypeId.ROADMAP
    }
    var map = new google.maps.Map(document.getElementById("laMappa"), opzioni);
    
    var messaggio = [], marcatore = [];                         
    <?php 
$i = 0;
$elenco = Attivita::elencoMappa();
foreach ($elenco as $a) {
    ?>
      messaggio.push(new google.maps.InfoWindow({
        content: "<a href='https://gaia.cri.it/?p=attivita.scheda&id=<?php 
    echo $a->id;
    ?>
'><?php 
    echo htmlentities($a->nome);
    ?>
</a><br /><?php 
    echo htmlentities($a->luogo);
    ?>
"
      }));
      marcatore.push(new google.maps.Marker({
Exemple #12
0
<?php

/*
 * ©2013 Croce Rossa Italiana
 */
paginaAdmin();
set_time_limit(0);
?>
<h3><i class="icon-wrench muted"></i> Manutenzione attività</h3>
<pre>
<code>Rimozione attività con dati incompleti:
    <?php 
$attivita = Attivita::elenco();
$eseguiti = 0;
$nAutorizzazioni = 0;
$nPartecipazioni = 0;
$nTurni = 0;
$nAttivita = 0;
echo "Start manutenzione attività:<br/>";
foreach ($attivita as $a) {
    echo "Controllo attività {$a->id} <br />";
    $comitato = $a->comitato();
    if ($comitato) {
        if (!$a->referente()) {
            echo "Attività rotta: ", $a->nome;
            $comitato = $a->comitato();
            echo " - ", $comitato->nomeCompleto(), " ID:", $comitato->oid();
            $presidente = $comitato->primoPresidente();
            echo " - Presidente: ", $presidente->nomeCompleto();
            $a->referente = $presidente;
            $turni = Turno::filtra([['attivita', $a]]);
Exemple #13
0
 private function api_attivita_dettagli()
 {
     $this->richiedi(['id']);
     $me = $this->richiediLogin();
     $a = Attivita::id($this->par['id']);
     $t = [];
     foreach ($a->turni() as $turno) {
         $t[] = $turno->toJSON($me);
     }
     array_merge($t, ['luogo' => $a->luogo, 'coordinate' => $a->coordinate(), 'puoPartecipare' => $a->puoPartecipare($me)]);
     return ['nome' => $a->nome, 'comitato' => $a->comitato()->toJSON(), 'descrizione' => $a->descrizione, 'referente' => ['id' => $a->referente()->id, 'nome' => $a->referente()->nomeCompleto(), 'numero' => $a->referente()->cellulare(), 'email' => $a->referente()->email()], 'luogo' => $a->luogo, 'coordinate' => $a->coordinate(), 'turni' => $t];
 }
Exemple #14
0
 public function trasferisci($auto = false, $data = false)
 {
     if ($data) {
         $ora = $data;
     } else {
         $ora = time();
     }
     $this->tConferma = $ora;
     if ($auto) {
         $this->stato = TRASF_AUTO;
     } else {
         global $sessione;
         $this->stato = TRASF_OK;
         $this->pConferma = $sessione->utente();
     }
     $v = $this->volontario();
     $a = $v->appartenenzaAttuale();
     $c = $a->comitato();
     /* Chiusura delle estensioni in corso*/
     $e = Estensione::filtra([['volontario', $v], ['stato', EST_OK]]);
     foreach ($e as $_e) {
         $_e->termina();
     }
     /* Chiudo eventuale riserva in corso*/
     $r = Riserva::filtra([['volontario', $v], ['stato', RISERVA_OK]]);
     foreach ($r as $_r) {
         $_r->fine = $ora;
         $_r->stato = RISERVA_INT;
     }
     /* Chiudo tutto ciò che è legato all'appartenenza attuale */
     // chiudo le deleghe su quel comitato
     $presidente = $c->primoPresidente();
     $d = Delegato::filtra([['volontario', $v]]);
     foreach ($d as $_d) {
         if ($_d->attuale()) {
             $_d->fine = $ora;
         }
     }
     // chiudo le attività referenziate
     $att = Attivita::filtra([['referente', $v->id], ['comitato', $c->id]]);
     foreach ($att as $_att) {
         $_att->referente = $presidente->id;
     }
     // rimetto al presidente i gruppi
     $g = Gruppo::filtra([['referente', $v->id], ['comitato', $c->id]]);
     foreach ($g as $_g) {
         $_g->referente = $presidente->id;
     }
     // chiudo l'appartenenza ad un gruppo
     $ag = AppartenenzaGruppo::filtra([['volontario', $v->id], ['comitato', $c->id]]);
     foreach ($ag as $_ag) {
         $_ag->cancella();
     }
     // chiudo le reperibilità
     $re = Reperibilita::filtra([['volontario', $v->id], ['comitato', $c->id]]);
     foreach ($re as $_re) {
         $_re->cancella();
     }
     // chiudo le partecipazioni
     $p = Partecipazione::filtra([['volontario', $v->id]]);
     foreach ($p as $_p) {
         if ($_p->turno()->futuro()) {
             $_p->cancella();
         }
     }
     /* Chiudo eventuale richiesta di tesserini o invalido l'attuale */
     $motivo = "Trasferimento presso altro comitato";
     $v->invalidaTesserino($motivo);
     /* Posso chiudere definitivamente la vecchia appartenenza */
     $a = Appartenenza::id($a);
     $a->timestamp = $ora;
     $a->fine = $ora;
     $a->stato = MEMBRO_TRASFERITO;
     /* A questo punto rendo operativa la nuova appartenenza */
     $nuovaApp = $this->appartenenza();
     $nuovaApp->timestamp = $ora;
     $nuovaApp->stato = MEMBRO_VOLONTARIO;
     if (!$auto) {
         $nuovaApp->conferma = $sessione->utente()->id;
     }
     $nuovaApp->inizio = $ora;
     $nuovaApp->fine = PROSSIMA_SCADENZA;
     $destinatari = [$v, $presidente, $nuovaApp->comitato()->unPresidente()];
     $m = new Email('richiestaTrasferimentook', 'Approvata richiesta trasferimento verso: ' . $nuovaApp->comitato()->nome);
     if (!$auto) {
         $m->da = $sessione->utente();
     }
     $m->a = $destinatari;
     $m->_NOME = $nuovaApp->volontario()->nomeCompleto();
     $m->_COMITATO = $nuovaApp->comitato()->nomeCompleto();
     $m->_TIME = $this->dataRichiesta()->format('d/m/Y');
     $m->accoda();
 }
Exemple #15
0
 /**
  * Cancella il comitato con tutte le sue dipendenze
  * @param comitato
  */
 public function cancella()
 {
     /* Cancello aree e responsabili */
     $aree = Area::filtra([['comitato', $this]]);
     foreach ($aree as $area) {
         $area->cancella();
     }
     /* Cancello le attività */
     $attivita = Attivita::filtra([['comitato', $this]]);
     foreach ($attivita as $att) {
         $turni = Turno::filtra([['attivita', $att]]);
         foreach ($turni as $turno) {
             $partecipazioni = Partecipazione::filtra([['turno', $turno]]);
             foreach ($partecipazioni as $partecipazione) {
                 $autorizzazioni = Autorizzazione::filtra([['partecipazione', $partecipazione]]);
                 foreach ($autorizzazioni as $autorizzazione) {
                     $autorizzazione->cancella();
                 }
                 $partecipazione->cancella();
             }
             $coturni = Coturno::filtra([['turno', $turno]]);
             foreach ($coturni as $coturno) {
                 $coturno->cancella();
             }
             $turno->cancella();
         }
         $mipiaci = Like::filtra([['oggetto', $att->oid()]]);
         foreach ($mipiaci as $mipiace) {
             $mipiace->cancella();
         }
         $att->cancella();
     }
     /* Cancello le dimissioni */
     $dimissioni = Dimissione::filtra([['comitato', $this]]);
     foreach ($dimissioni as $dimissione) {
         try {
             $appartenenza = $dimissione->appartenenza();
             $appartenenza->cancella();
         } catch (Exception $e) {
         }
         $dimissione->cancella();
     }
     /* Cancello le dimissioni */
     $estensioni = Estensione::filtra([['cProvenienza', $this]]);
     foreach ($estensioni as $estensione) {
         try {
             $appartenenza = $estensione->appartenenza();
             $appartenenza->cancella();
         } catch (Exception $e) {
         }
         $estensione->cancella();
     }
     /* Cancello i gruppi personali */
     $appgruppi = AppartenenzaGruppo::filtra([['comitato', $this]]);
     foreach ($appgruppi as $appgruppo) {
         $appgruppo->cancella();
     }
     /* Cancello reperibilità */
     $reperibilita = Reperibilita::filtra([['comitato', $t]]);
     foreach ($reperibilita as $reperibile) {
         $reperibile->cancella();
     }
     /* Cancello appartenenze */
     $appartenenze = Appartenenza::filtra([['comitato', $this]]);
     foreach ($appartenenze as $appa) {
         $riserve = Riserva::filtra([['appartenenza', $appa]]);
         foreach ($riserve as $riserva) {
             $riserva->cancella();
         }
         $estensioni = Estensione::filtra([['appartenenza', $appa]]);
         foreach ($estensioni as $estensione) {
             $estensione->cancella();
         }
         $trasferimenti = Trasferimento::filtra([['appartenenza', $appa]]);
         foreach ($trasferimenti as $trasferimento) {
             $trasferimento->cancella();
         }
         $appa->cancella();
     }
     parent::cancella();
 }
Exemple #16
0
 public function termina()
 {
     $this->timestamp = time();
     $this->stato = EST_CONCLUSA;
     $app = $this->appartenenza();
     $app->stato = MEMBRO_EST_TERMINATA;
     $app->fine = time();
     $c = $app->comitato();
     $v = $this->volontario();
     // chiudo le deleghe su quel comitato
     $d = $v->delegazioni(null, $c->id);
     foreach ($d as $_d) {
         $_d->fine = $ora;
     }
     // chiudo le attività referenziate
     $a = Attivita::filtra([['referente', $v->id], ['comitato', $c->id]]);
     $presidente = $c->unPresidente();
     foreach ($a as $_a) {
         $_a->referente = $presidente->id;
     }
     // rimetto al presidente i gruppi
     $g = Gruppo::filtra([['referente', $v->id], ['comitato', $c->id]]);
     foreach ($g as $_g) {
         $_g->referente = $presidente->id;
     }
     // chiudo l'appartenenza ad un gruppo
     $ag = AppartenenzaGruppo::filtra([['volontario', $v->id], ['comitato', $c->id]]);
     foreach ($ag as $_ag) {
         $_ag->cancella();
     }
     // chiudo le reperibilità
     $r = Reperibilita::filtra([['volontario', $v->id], ['comitato', $c->id]]);
     foreach ($r as $_r) {
         $_r->cancella();
     }
     // chiudo le partecipazioni
     $p = Partecipazione::filtra([['volontario', $v->id]]);
     foreach ($p as $_p) {
         if ($_p->turno()->futuro() && $_p->turno()->attivita()->comitato() == $c->id) {
             $_p->cancella();
         }
     }
     // mando email per avvisare dello spiacevole evento :o(
     $destinatari = [$v, $app->comitato()->unPresidente(), $v->unComitato()->unPresidente()];
     $m = new Email('richiestaEstensioneConclusa', 'Termine estensione: ' . $app->comitato()->nome);
     $m->a = $destinatari;
     $m->_NOME = $app->volontario()->nomeCompleto();
     $m->_COMITATO = $app->comitato()->nomeCompleto();
     $m->accoda();
 }
Exemple #17
0
 /**
  * Ritorna il dominio di competenza massima nei confronti di un'attivita'
  *
  * es. 1: se sono delegato area provinciale e l'attivita' e' locale, ottengo comitato locale
  * es. 2: se non sono nulla, ritorno false
  * es. 3: se sono referente attivita, ritorno comitato organizzatore (NON estensione)
  * @param Attivita $attivita        L'attivita in questione
  * @return GeoPolitica|bool(false)  Il dominio risultante o false se non ho superpoteri
  */
 public function dominioCompetenzaAttivita(Attivita $attivita)
 {
     if (!$attivita->modificabileDa($this)) {
         return false;
     }
     $pool = [];
     $organizzatore = $attivita->comitato();
     // Referente attivita?
     if ($attivita->referente == $this->id) {
         $pool[] = $organizzatore;
     }
     // Delegato d'area?
     foreach ($this->areeDiCompetenza() as $a) {
         $ac = $a->comitato();
         if ($ac->contiene($organizzatore)) {
             $pool[] = $ac;
         }
     }
     // Comitati di competenza
     foreach ($this->comitatiDiCompetenza() as $a) {
         if ($a->contiene($organizzatore)) {
             $pool[] = $a;
         }
     }
     // Ottiene comitato piu' grande nel pool
     $massimo = array_reduce($pool, function ($a, $b) {
         if ($a === null) {
             return $b;
         }
         if ($a::$_ESTENSIONE > $b::$_ESTENSIONE) {
             return $a;
         } else {
             return $b;
         }
     }, null);
     // Il risultato e' il dominio comune tra la visibilita' dell'attivita'
     // ed il mio potere piu' grande...
     return $attivita->visibilita()->dominioComune($massimo);
 }
Exemple #18
0
 public function attivita()
 {
     return Attivita::id($this->attivita);
 }
Exemple #19
0
 public function attivita($apertura = ATT_APERTA)
 {
     return Attivita::filtra([['area', $this->id], ['apertura', $apertura]]);
 }
Exemple #20
0
<?php

/*
 * ©2013 Croce Rossa Italiana
 */
paginaPrivata();
paginaAttivita();
controllaParametri(array('id'));
$attivita = $_GET['id'];
$attivita = Attivita::id($attivita);
paginaAttivita($attivita);
$g = new Gruppo();
$g->nome = $attivita->nome;
$g->comitato = $attivita->comitato()->oid();
$g->obiettivo = $attivita->area()->obiettivo;
$g->area = $attivita->area();
$g->referente = $attivita->referente();
$g->attivita = $attivita->id;
if ($attivita->comitato()->_estensione() == EST_REGIONALE) {
    $g->estensione = EST_GRP_REGIONALE;
} elseif ($attivita->comitato()->_estensione() == EST_PROVINCIALE) {
    $g->estensione = EST_GRP_PROVINCIALE;
} elseif ($attivita->comitato()->_estensione() == EST_LOCALE) {
    $g->estensione = EST_GRP_LOCALE;
} else {
    $g->estensione = EST_GRP_UNITA;
}
redirect('attivita.scheda&gok&id=' . $attivita->id);
Exemple #21
0
 public function calendarioAttivitaPrivate()
 {
     return Attivita::filtra([['comitato', $this->oid()]]);
 }