</div> <hr /> <table class="table table-striped table-bordered" id="tabellaUtenti"> <thead> <th>Nome</th> <th>Cognome</th> <th>Codice Fiscale</th> <th>Data richiesta</th> <th>Comitato destinazione</th> <th>Azione</th> </thead> <?php $comitati = $me->comitatiApp([APP_SOCI, APP_PRESIDENTE]); foreach ($comitati as $comitato) { $e = Estensione::filtra([['stato', EST_INCORSO], ['cProvenienza', $comitato]]); foreach ($e as $_e) { $v = $_e->volontario(); $modificabile = $v->modificabileDa($me); ?> <tr> <td><?php echo $v->nome; ?> </td> <td><?php echo $v->cognome; ?> </td> <td><?php echo $v->codiceFiscale;
/* * ©2013 Croce Rossa Italiana */ paginaAdmin(); $t = GeoPolitica::daOid($_GET['oid']); $c = GeoPolitica::daOid($_POST['inputComitato']); $estensione = $t->_estensione(); $motivo = "Cambio Presidente dell'unità territoriale"; $delegati = Delegato::filtra([['comitato', $t], ['applicazione', APP_OBIETTIVO]]); foreach ($delegati as $delegato) { $delegato->fine = time(); } if ($estensione == EST_UNITA) { /* Estensioni dal comitato */ $est = Estensione::filtra([['cProvenienza', $t], ['stato', EST_INCORSO]]); foreach ($est as $este) { $este->nega($motivo); } /* Estensioni verso il comitato */ $appest = Appartenenza::filtra([['comitato', $t], ['stato', MEMBRO_EST_PENDENTE]]); foreach ($appest as $apest) { $apest->estensione()->nega($motivo); } /* Trasferimenti dal comitato */ $trasf = Trasferimento::filtra([['cProvenienza', $t], ['stato', TRASF_INCORSO]]); foreach ($trasf as $trasfe) { $trasfe->nega($motivo); } /* Trasferimenti verso il comitato */ $apptrasf = Appartenenza::filtra([['comitato', $t], ['stato', MEMBRO_TRASF_IN_CORSO]]);
public static function inScadenza() { $eok = Estensione::filtra([['stato', EST_OK]]); $eauto = Estensione::filtra([['stato', EST_AUTO]]); $e = array_merge($eok, $eauto); $r = []; $traunmese = time() + MESE; foreach ($e as $_e) { if ($_e->appartenenza()->fine < $traunmese) { $r[] = $_e; } } return $r; }
$i++; $excel->aggiungiRiga([$i, $v->nome, $v->cognome, date('d/m/Y', $v->dataNascita), $v->comuneNascita, $v->provinciaNascita, $v->codiceFiscale, $v->indirizzo, $v->civico, $v->comuneResidenza, $v->CAPResidenza, $v->provinciaResidenza, date('d/m/Y', $r->inizio), date('d/m/Y', $r->fine), $r->protNumero, date('d/m/Y', $r->protData), $r->motivo]); } } $excel->genera("Volontari riserve passate {$c->nome}.xls"); } elseif (isset($_GET['estesi'])) { $a = Appartenenza::filtra([['comitato', $c->id], ['stato', MEMBRO_ESTESO]]); foreach ($a as $_a) { $v = $_a->volontario(); $i++; $excel->aggiungiRiga([$i, $v->nome, $v->cognome, date('d/m/Y', $v->dataNascita), $v->comuneNascita, $v->provinciaNascita, $v->codiceFiscale, $v->indirizzo, $v->civico, $v->comuneResidenza, $v->CAPResidenza, $v->provinciaResidenza, $v->email, $v->emailServizio, $v->cellulare, $v->cellulareServizio, ($_di = $v->ingresso()) ? $_di->format('d/m/Y') : $nessuna_data]); } $excel->genera("Volontari estesi {$c->nome}.xls"); } elseif (isset($_GET['inestensione'])) { $eok = Estensione::filtra([['cProvenienza', $c], ['stato', EST_OK]]); $eauto = Estensione::filtra([['cProvenienza', $c], ['stato', EST_AUTO]]); $estesi = array_merge($eok, $eauto); foreach ($estesi as $est) { $v = $est->volontario(); $i++; $excel->aggiungiRiga([$i, $v->nome, $v->cognome, date('d/m/Y', $v->dataNascita), $v->comuneNascita, $v->provinciaNascita, $v->codiceFiscale, $v->indirizzo, $v->civico, $v->comuneResidenza, $v->CAPResidenza, $v->provinciaResidenza, $v->email, $v->emailServizio, $v->cellulare, $v->cellulareServizio, ($_di = $v->ingresso()) ? $_di->format('d/m/Y') : $nessuna_data]); } $excel->genera("Volontari in estensione {$c->nome}.xls"); } elseif (isset($_GET['trasferiti'])) { $t = $c->membriTrasferiti(); foreach ($t as $_t) { $v = $_t->volontario(); $a = Appartenenza::filtra([['comitato', $_t->provenienza()], ['stato', MEMBRO_TRASFERITO]]); $i++; $excel->aggiungiRiga([$i, $v->nome, $v->cognome, $v->codiceFiscale, date('d/m/Y', $a->inizio), date('d/m/Y', $_t->appartenenza()->inizio), $_t->comitato()->nomeCompleto()]); }
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(); }
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(); } $f = Reperibilita::filtra([['volontario', $v]]); foreach ($f as $_f) { $_f->fine = time(); } $f = Estensione::filtra([['volontario', $v]]); foreach ($f as $_f) { if ($_f->stato == EST_OK || $_f->stato == EST_AUTO) { $_f->termina(); } elseif ($_f->stato == EST_INCORSO) { $_f->nega($motivo); } } $f = Riserva::filtra([['volontario', $v]]); foreach ($f as $_f) { if ($_f->stato == RISERVA_OK || $_f->stato == RISERVA_AUTO) { $_f->termina(); } elseif ($_f->stato == RISERVA_INCORSO) { $_f->nega($motivo); } }
<?php /* * ©2013 Croce Rossa Italiana */ paginaAdmin(); controllaParametri(array('a')); $a = $_GET['a']; $app = Appartenenza::id($a); $v = $app->volontario; foreach (Coturno::filtra([['appartenenza', $app]]) as $coturno) { $coturno->cancella(); } foreach (Dimissione::filtra([['appartenenza', $app]]) as $dimissioni) { $dimissioni->cancella(); } foreach (Estensione::filtra([['appartenenza', $app]]) as $estensione) { $estensione->cancella(); } foreach (Quota::filtra([['appartenenza', $app]]) as $quote) { $quote->cancella(); } foreach (Trasferimento::filtra([['appartenenza', $app]]) as $trasferimento) { $trasferimento->cancella(); } foreach (Riserva::filtra([['appartenenza', $app]]) as $riserva) { $riserva->cancella(); } $app->cancella(); redirect('presidente.utente.visualizza&id=' . $v);
/** * Dimette un volontario * @param $motivo, motivazione di dimissione * @param $info default NULL, informazioni aggiuntive sulla dimissione */ public function dimettiVolontario($motivo, $info = NULL, $chi) { $quando = time(); $v = $this->volontario(); $attuale = $v->appartenenzaAttuale(); $comitato = $attuale->comitato(); $motivazione = $conf['dimissioni'][$motivo]; $fine = time(); /* Avviso il volontario */ $m = new Email('dimissionevolontario', 'Dimissione Volontario: ' . $v->nomeCompleto()); $m->da = $chi; $m->a = $v; $m->_NOME = $v->nome; $m->_MOTIVO = $motivazione; $m->_INFO = $info; $m->invia(); /* Creo la dimissione */ $d = new Dimissione(); $d->volontario = $v->id; $d->appartenenza = $attuale; $d->comitato = $comitato; $d->motivo = $motivo; $d->info = $info; $d->tConferma = time(); $d->pConferma = $chi; /* 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(); } $f = Reperibilita::filtra([['volontario', $v]]); foreach ($f as $_f) { $_f->fine = $fine; } $f = Estensione::filtra([['volontario', $v]]); foreach ($f as $_f) { if ($_f->stato == EST_OK || $_f->stato == EST_AUTO) { $_f->termina(); } elseif ($_f->stato == EST_INCORSO) { $_f->nega($motivazione); } } $f = Riserva::filtra([['volontario', $v]]); foreach ($f as $_f) { if ($_f->stato == RISERVA_OK || $_f->stato == RISERVA_AUTO) { $_f->termina(); } elseif ($_f->stato == RISERVA_INCORSO) { $_f->nega($motivazione); } } $f = Trasferimento::filtra([['volontario', $v]]); foreach ($f as $_f) { if ($_f->stato == TRASF_INCORSO) { $_f->nega($motivazione); } } $p = Partecipazione::filtra([['volontario', $v]]); foreach ($p as $_p) { if ($_p->turno()->futuro() && $_p->turno()->attivita()->comitato() == $c->id) { $_p->cancella(); } } $f = Delegato::filtra([['volontario', $v]]); foreach ($f as $_f) { $_f->fine = $fine; } /* Chiudo l'appartenenza e declasso a persona */ $attuale->fine = $fine; $attuale->stato = MEMBRO_DIMESSO; $v->stato = PERSONA; $v->admin = null; return; }
/** * 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(); }