示例#1
0
<?php

/*
 * ©2013 Croce Rossa Italiana
 */
paginaPrivata();
$parametri = array('id', 'inputGruppo');
controllaParametri($parametri);
$t = $_GET['id'];
$g = $_POST['inputGruppo'];
$g = Gruppo::id($g);
/* Cerco se già iscritto a gruppo */
$x = AppartenenzaGruppo::filtra([['volontario', $t], ['gruppo', $g]]);
/* Se sono già appartenente *ora*,
 * restituisco errore
 */
foreach ($x as $app) {
    if ($app->attuale()) {
        redirect('utente.gruppo&e');
        break;
    }
}
/*Se non sono appartenente allora avvio la procedura*/
$t = new AppartenenzaGruppo();
$t->volontario = $me;
$t->comitato = $g->comitato();
$t->gruppo = $g;
$t->inizio = time();
$t->timestamp = time();
redirect('utente.gruppo&ok');
示例#2
0
<?php

/*
 * ©2013 Croce Rossa Italiana
 */
controllaParametri(array('id'), 'gruppi.dash&err');
$gruppo = $_GET['id'];
$gruppo = Gruppo::id($gruppo);
proteggiClasse($gruppo, $me);
?>
<form action="?p=gruppo.modifica.ok" method="POST">

<input type="hidden" name="id" value="<?php 
echo $gruppo->id;
?>
" />

    <div class="modal fade automodal">
            <div class="modal-header">
              <h3><i class="icon-group"></i> Modifica gruppo</h3>
            </div>
            <div class="modal-body">
              <div class="row-fluid">
                    <div class="span4 centrato">
                        <label class="control-label" for="inputNome"> Nome Gruppo</label>
                    </div>
                    <div class="span8">
                      <input value="<?php 
echo $gruppo->nome;
?>
"class="input-medium" type="text" name="inputNome" id="inputNome" required>
示例#3
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();
 }
示例#4
0
文件: Estensione.php 项目: pizar/gaia
 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();
 }
示例#5
0
<?php

/*
 * ©2013 Croce Rossa Italiana
 */
paginaAdmin();
?>
<h3><i class="icon-users muted"></i> Fix estensione gruppi</h3>

<pre>
	<code>
		<?php 
$inizio = time();
$i = 0;
$gruppi = Gruppo::elenco();
echo '<br><strong>Avviata procedura di fix estensione gruppi</strong><br><br>';
foreach ($gruppi as $gruppo) {
    if ($gruppo->estensione != null) {
        continue;
    }
    $est = $gruppo->attivita()->comitato()->_estensione();
    echo 'Gruppo ID:[' . $gruppo->id . '] -> fix ';
    if ($est == EST_REGIONALE) {
        $gruppo->estensione = EST_GRP_REGIONALE;
    } elseif ($est == EST_PROVINCIALE) {
        $gruppo->estensione = EST_GRP_PROVINCIALE;
    } elseif ($est == EST_LOCALE) {
        $gruppo->estensione = EST_GRP_LOCALE;
    } else {
        $gruppo->estensione = EST_GRP_UNITA;
    }
 $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();
 }
 $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();
示例#7
0
文件: Utente.php 项目: pizar/gaia
 /**
  * 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;
 }
示例#8
0
<?php

/*
 * ©2013 Croce Rossa Italiana
 */
paginaPresidenziale();
paginaModale();
controllaParametri(array('id'), 'gruppi.dash&err');
$gruppo = Gruppo::id($_GET['id']);
proteggiClasse($gruppo, $me);
if ($gruppo->comitato()->_estensione() >= EST_PROVINCIALE) {
    redirect('gruppi.dash&err');
}
?>
<form action="?p=gruppo.estensione.ok" method="POST">

<input type="hidden" name="id" value="<?php 
echo $gruppo->id;
?>
" />

<div class="modal fade automodal">
        <div class="modal-header">
          <h3><i class="icon-random"></i> Estensione per il gruppo di lavoro</h3>
        </div>
        <div class="modal-body">
          <p><strong>Cosa è l'estensione ?</strong>
          <p>Permette di estendere il gruppo di lavoro dall'Unità Territoriale a tutto il Comitato Locale</p>
          <select class="input-large" id="inputEstensione" name="inputEstensione"  required>
                <?php 
foreach ($conf['est_grp'] as $numero => $est) {
示例#9
0
 public function gruppo()
 {
     return Gruppo::id($this->gruppo);
 }
示例#10
0
$puoPartecipare = false;
if ($a->puoPartecipare($me)) {
    $puoPartecipare = true;
}
$anonimo = false;
if ($me instanceof Anonimo) {
    $anonimo = true;
}
$geoComitato = GeoPolitica::daOid($a->comitato);
$modificabile = $a->modificabileDa($me);
if ($modificabile) {
    $dominio = $me->dominioCompetenzaAttivita($a);
}
$_titolo = $a->nome . ' - Attività CRI su Gaia';
$_descrizione = $a->luogo . " || Aperto a: " . $conf['att_vis'][$a->visibilita] . " || Organizzato da " . $geoComitato->nomeCompleto();
$g = Gruppo::by('attivita', $a);
$apertura = $a->apertura;
if (isset($_GET['riapri'])) {
    ?>
<script type='text/javascript'>
$(document).ready( function() {
    $('#turno_<?php 
    echo $_GET['riapri'];
    ?>
').parents('tr').show();
    $('#turno_<?php 
    echo $_GET['riapri'];
    ?>
').modal('show');
});
</script>
示例#11
0
<?php

/*
 * ©2014 Croce Rossa Italiana
 */
paginaPrivata();
controllaParametri(array('id'), 'gruppi.dash&err');
$id = $_GET['id'];
$gruppo = Gruppo::id($id);
proteggiClasse($gruppo, $me);
$appartenenti = AppartenenzaGruppo::filtra([['gruppo', $gruppo]]);
foreach ($appartenenti as $appartenente) {
    $appartenente->cancella();
}
$gruppo->cancella();
redirect('gruppi.dash&cancellato');
示例#12
0
 /**
  * Cancella Geopolitica
  * @param GeoPolitica
  */
 public function cancella()
 {
     $oid = $this->oid();
     /* Cancello autoparchi e veicoli ad esso associati li passo al nazionale */
     Autoparco::cancellaTutti([['comitato', $oid]]);
     /* Cancello i corsi base */
     CorsoBase::cancellaTutti([['comitato', $oid]]);
     /* Cancello i delegati */
     Delegato::cancellaTutti([['comitato', $oid]]);
     /* Cancello i gruppi */
     Gruppo::cancellaTutti([['comitato', $oid]]);
     /* Assegno veicoli a nazionale */
     Veicolo::cancellaTutti([['comitato', $oid]]);
     parent::cancella();
 }
示例#13
0
<?php

/*
 * ©2013 Croce Rossa Italiana
 */
paginaPrivata();
controllaParametri(array('id'), 'gruppi.dash&err');
$id = $_GET['id'];
$g = Gruppo::id($id);
proteggiClasse($g, $me);
foreach ($_POST['volontari'] as $v) {
    $v = Volontario::id($v);
    $gp = AppartenenzaGruppo::filtra([['volontario', $v], ['gruppo', $g->id], ['fine', NULL]]);
    if ($gp) {
        continue;
    }
    $t = new AppartenenzaGruppo();
    $t->volontario = $v;
    $t->comitato = $g->comitato();
    $t->gruppo = $g;
    $t->inizio = time();
    $t->timestamp = time();
    $m = new Email('aggiuntogruppo', "Aggiunto al gruppo di lavoro  {$g->nome}");
    $m->a = $v;
    $m->da = $me;
    $m->_NOME = $v->nomeCompleto();
    $m->_GRUPPO = $g->nome;
    $m->_REFERENTE = $g->referente()->nomecompleto();
    $m->_CELLREFERENTE = $g->referente()->cellulare();
    $m->invia();
}