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]]); foreach ($apptrasf as $aptrasf) { $aptrasf->trasferimento()->nega($motivo); } $riserve = Riserva::filtra([['comitato', $t], ['stato', RISERVA_INCORSO]]); foreach ($riserve as $riserva) { $riserva->nega($motivo); } $t->principale = 0; $t->locale = $c; } elseif ($estensione == EST_LOCALE) {
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); } } $f = Trasferimento::filtra([['volontario', $v]]); foreach ($f as $_f) { if ($_f->stato == TRASF_INCORSO) { $_f->nega($motivo); } } $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; }
public static function daAutorizzare() { $t = Trasferimento::filtra([['stato', TRASF_INCORSO]]); $r = []; $unmesefa = time() - MESE; foreach ($t as $_t) { if ($_t->appartenenza()->inizio < $unmesefa) { $r[] = $_t; } } return $r; }
<?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(); }
<?php /* * ©2013 Croce Rossa Italiana */ paginaPrivata(); richiediComitato(); $parametri = array('inputComitato', 'inputMotivo'); controllaParametri($parametri); $c = $_POST['inputComitato']; $gia = Trasferimento::filtra([['volontario', $me], ['stato', TRASF_INCORSO]]); if (!$c) { redirect('utente.trasferimento'); } if ($gia) { redirect('utente.trasferimento&gia'); } $m = $_POST['inputMotivo']; /* Cerco appartenenze al comitato specificato */ $f = Appartenenza::filtra([['volontario', $me], ['comitato', $c], ['stato', MEMBRO_VOLONTARIO]]); /* Se sono già appartenente *ora*, * restituisco errore */ foreach ($f as $app) { if ($app->attuale()) { redirect('utente.trasferimento&e'); break; } } /*Se non sono appartenente allora avvio la procedura*/ foreach ($me->storico() as $app) {
</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) { $t = Trasferimento::filtra([['stato', TRASF_INCORSO], ['cProvenienza', $comitato->id]]); foreach ($t as $_t) { $v = $_t->volontario(); ?> <tr> <td><?php echo $v->nome; ?> </td> <td><?php echo $v->cognome; ?> </td> <td><?php echo $v->codiceFiscale; ?>