public function referente() { if (!$this->referente) { return false; } return Volontario::id($this->referente); }
public function referente() { if ($this->referente) { return Volontario::id($this->referente); } else { return null; } }
public function volontario() { $volontario = null; try { $volontario = Volontario::id($this->volontario); } catch (Exception $e) { print_r($e); } return $volontario; }
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)); }
<?php /* * ©2013 Croce Rossa Italiana */ paginaPrivata(); controllaParametri(array('id'), 'gruppi.dash&err'); $id = $_GET['id']; $v = Volontario::id($id); $inizio = DT::createFromFormat('d/m/Y', $_POST['datainizio']); $fine = DT::createFromFormat('d/m/Y', $_POST['datafine']); $inizio = $inizio->getTimestamp(); $fine = $fine->getTimestamp(); $excel = new Excel(); $excel->intestazione(['Nome', 'Cognome', 'Data nascita', 'Comitato', 'Attività', 'Obiettivo', 'Turno', 'Inizio', 'Fine']); $partecipazioni = $v->partecipazioni(); foreach ($partecipazioni as $part) { $auts = $part->autorizzazioni(); if (!$auts) { continue; } if ($part->turno()->inizio <= $inizio || $part->turno()->fine >= $fine) { continue; } $excel->aggiungiRiga([$v->nome, $v->cognome, date('d/m/Y', $v->dataNascita), $v->unComitato()->nomeCompleto(), $part->attivita()->nome, $part->attivita()->area()->obiettivo, $part->turno()->nome, date('d/m/Y H:i', $part->turno()->inizio), date('d/m/Y H:i', $part->turno()->fine)]); } $excel->genera('Report turni volontario.xls'); $excel->download();
/* Controlli */ /* Cerca anomalie nel formato del codice fiscale */ if (!preg_match("/^[A-Z]{6}[0-9]{2}[A-Z][0-9]{2}[A-Z][0-9]{3}[A-Z]\$/", $codiceFiscale)) { redirect('us.utente.nuovo&e'); } /* Cerca eventuali utenti con la stessa email... */ $e = Utente::by('email', $email); if ($e && $email && $e->password) { /* Se l'utente esiste, ed ha già pure una password */ redirect('us.utente.nuovo&mail'); } $p = Persona::by('codiceFiscale', $codiceFiscale); if ($p) { redirect('us.utente.nuovo&gia'); } else { $p = new Volontario(); $p->codiceFiscale = $codiceFiscale; } /* * Normalizzazione dei dati */ $id = $p->id; $nome = normalizzaNome($_POST['inputNome']); $cognome = normalizzaNome($_POST['inputCognome']); $sesso = $_POST['inputSesso']; $dnascita = DT::createFromFormat('d/m/Y', $_POST['inputDataNascita']); $dnascita = $dnascita->getTimestamp(); $prnascita = maiuscolo($_POST['inputProvinciaNascita']); $conascita = normalizzaNome($_POST['inputComuneNascita']); $coresidenza = normalizzaNome($_POST['inputComuneResidenza']); $caresidenza = normalizzaNome($_POST['inputCAPResidenza']);
<?php /* * ©2013 Croce Rossa Italiana */ paginaPrivata(); paginaAttivita(); paginaModale(); $parametri = array('id', 'inputReferente'); controllaParametri($parametri); $attivita = $_POST['id']; $attivita = Attivita::id($attivita); paginaAttivita($attivita); $referente = $_POST['inputReferente']; $referente = Volontario::id($referente); $attivita->referente = $referente; $m = new Email('referenteAttivita', 'Referente attività'); $m->_NOME = $referente->nome; $m->_ATTIVITA = $attivita->nome; $m->_COMITATO = $attivita->comitato()->nomeCompleto(); $m->a = $referente; $m->invia(); if (isset($_GET['g'])) { $g = new Gruppo(); $g->nome = $attivita->nome; $g->comitato = $attivita->comitato()->oid(); $g->obiettivo = $attivita->area()->obiettivo; $g->area = $attivita->area(); $g->referente = $referente; $g->attivita = $attivita; if ($attivita->comitato()->_estensione() == EST_REGIONALE) {
public function volontario() { return Volontario::id($this->volontario); }
public function volontario() { return Volontario::by('id', $this->volontario); }
<?php /* * ©2015 Croce Rossa Italiana */ paginaPresidenziale(null, null, APP_OBIETTIVO, OBIETTIVO_1); controllaParametri(['id', 'direttori'], 'admin.corsi.crea&err'); $c = $direttore = null; try { $c = Corso::id(intval($_POST['id'])); if (!$c->modificabile()) { redirect('formazione.corsi.riepilogo&id=' . $c->id . '&err=1'); } $direttore = Volontario::id(intval($_POST['direttori'])); if (empty($c) || empty($direttore)) { throw new Exception('Manomissione'); } } catch (Exception $e) { redirect('admin.corsi.crea&err'); } $c->direttore = $direttore->id; $c->aggiornaStato(); $partecipazione = new PartecipazioneCorso(); $partecipazione->aggiungi($c, $direttore, CORSO_RUOLO_DIRETTORE); if (!empty($_POST['wizard'])) { $tipoCorso = TipoCorso::id($c->tipo); if ($tipoCorso->giorni > 1) { redirect('formazione.corsi.lezioni&id=' . $c->id . '&wizard=1'); die; } else { redirect('formazione.corsi.docenti&id=' . $c->id . '&wizard=1');
</div> </form> </div> </div> <?php } else { $data = DT::createFromFormat('d/m/Y', $_POST['inputDataTaglio']); ?> <pre> <code> <?php echo '<br><strong>Avviata procedura di cambio stato con taglio a ' . $data->getTimeStamp() . '<br><br>'; $v = Volontario::elenco(); $totale = 0; foreach ($v as $_v) { $appartenenze = $_v->numAppartenenzeTotali(MEMBRO_DIMESSO); if ($appartenenze == 0 && $_v->stato == VOLONTARIO && $_v->timestamp > $data->getTimeStamp()) { $totale++; echo 'Anagrafica ID:[' . $_v->id . '] ' . $_v->codiceFiscale . ' ' . $_v->nome . ' ' . $_v->cognome . ' ' . $_v->timestamp . ' -> nuovo stato: Aspirante<br>'; $_v->stato = ASPIRANTE; } } echo '<br><strong>Sono stati cambiati ' . $totale . ' stati</strong>'; ?> </code> </pre> <?php
<?php /* * ©2013 Croce Rossa Italiana */ paginaApp([APP_SOCI, APP_PRESIDENTE]); $parametri = array('idDonazione', 'id'); controllaParametri($parametri, 'presidente.donazioni&err'); $id = $_POST['idDonazione']; $f = $_GET['id']; $v = Volontario::id($f); $t = Donazione::id($id); $p = new DonazionePersonale(); $p->volontario = $v->id; $p->donazione = $t->id; $data = @DateTime::createFromFormat('d/m/Y', $_POST['data']); $data = @$data->getTimestamp(); $p->data = $data; $p->luogo = normalizzaNome($_POST['sede']); $p->tConferma = time(); $p->pConferma = $me->id; if (in_array(count($v->donazioniTipo($t->tipo)), $conf['merito'][$t->tipo])) { $p = new DonazioneMerito(); $p->volontario = $v->id; $p->donazione = $t->tipo; $p->merito = count($v->donazioniTipo($t->tipo)); } redirect('presidente.utente.visualizza&id=' . $v);
/** * Ritorna oggetto volontario che ha dichiarato fuoriuso * @return Volontatario */ public function pInizio() { return Volontario::id($this->pInizio); }
public function responsabile() { return Volontario::id($this->responsabile); }
public function ricercaPatente($ricerca) { $q = $this->db->prepare("\n SELECT DISTINCT (anagrafica.id)\n FROM \n titoli, titoliPersonali, anagrafica, appartenenza\n WHERE \n anagrafica.id = titoliPersonali.volontario\n AND \n titoli.id = titoliPersonali.titolo\n AND \n titoli.nome LIKE :ricerca\n ORDER BY \n anagrafica.cognome, \n anagrafica.nome"); $q->bindValue(":ricerca", $ricerca); $q->execute(); var_dump($q->errorInfo()); $r = []; while ($k = $q->fetch(PDO::FETCH_NUM)) { $r[] = Volontario::id($k[0]); } return $r; }
/** * Ritorna il Corso collegato alla lezione * @return CorsoBase */ public function docente() { return Volontario::id($this->docente); }
} } $back = 'obiettivi'; /* Crea il nuovo delegato */ $d = new Delegato(); $d->inizio = time(); $d->fine = 0; $d->volontario = $_POST[$num]; $d->applicazione = APP_OBIETTIVO; $d->dominio = $num; $d->comitato = $c->oid(); $d->pConferma = $me->id; $d->tConferma = time(); $d->estensione = $c->_estensione(); /* Da fare: INVIA MAIL */ $v = Volontario::id($_POST[$num]); $m = new Email('nuovoObiettivo', 'Delegato per ' . $nom); $m->a = $v; $m->_NOME = $v->nome; $m->_OBIETTIVO = $nom; $m->_COMITATO = $c->nomeCompleto(); $m->invia(); /* Se è il primo, crea apposita AREA */ if ($primo) { $a = new Area(); $a->comitato = $c->oid(); $a->obiettivo = $num; $a->nome = 'Generale'; $a->responsabile = $v->id; } else { /* Il problema è che se è cambiato il delegato col cazzo che ribecco l'area.... */
foreach ($_POST['docenti'] as $d) { if (isset($daEliminare[$d])) { // se il nuovo è anche tra i vecchi, lo toglie dalla lista di quelli da eliminare unset($daEliminare[$d]); } else { // se il nuovo non è tra i vecchi, lo aggiunge dalla lista di quelli da aggiungere $daAggiungere[$d] = true; } } $daAggiungere = array_keys($daAggiungere); $daEliminare = array_keys($daEliminare); foreach ($daEliminare as $d) { PartecipazioneCorso::id($d)->cancella(); } foreach ($daAggiungere as $d) { $docente = Volontario::id($d); // aggiungere verifica del fatto che sia effettivamente un docente $part = new PartecipazioneCorso(); $part->aggiungi($c, $docente, CORSO_RUOLO_DOCENTE); } } else { throw new Exception('Manomissione'); } $c->aggiornaStato(); } catch (Exception $e) { die($e->getMessage()); redirect('admin.corsi.crea&err'); } if (!empty($_POST['wizard'])) { redirect('formazione.corsi.affiancamenti&id=' . $c->id . '&wizard=1'); die;
$tabella = '<table border="1" style="width:100%"> <tbody> <tr> <td align="center"><b>Cognome e Nome</b></td> <td align="center"><b>Luogo di nascita</b></td> <td align="center"><b>Data di nascita</b></td> <td align="center"><b>Esito</b></td> </tr>'; $x = 0; foreach ($corso->partecipazioni(ISCR_SUPERATO) as $pb) { $iscritto = $pb->utente(); $dataNascita = date('d/m/Y', $iscritto->dataNascita); $esito = $conf['partecipazioneBase'][$pb->stato]; $tabella .= "<tr>\n <td>{$iscritto->nomeCompleto()}</td>\n <td>{$iscritto->comuneNascita}</td>\n <td>{$dataNascita}</td>\n <td>{$esito}</td>\n </tr>"; if (isset($_GET['iscritto']) && $x == 0) { $iscritto = Volontario::id($_GET['iscritto']); $f = $corso->generaScheda($iscritto); $a = $corso->generaAttestato($iscritto); $x++; } elseif ($x == 0) { $f = $corso->generaScheda($iscritto); $a = $corso->generaAttestato($iscritto); } $zip->aggiungi($f); $zip->aggiungi($a); } $tabella .= "</tbody></table>"; $part = new PDF('verbaleEsame', 'Verbale esame.pdf'); $part->_COMITATO = $corso->organizzatore()->nomeCompleto(); $part->_GIORNO = date('d', $corso->tEsame); $part->_MESE = date('m', $corso->tEsame);
<?php /* * ©2014 Croce Rossa Italiana */ paginaApp([APP_SOCI, APP_PRESIDENTE]); controllaParametri(array('id', 'motivo', 'info'), 'presidente.utenti&errGen'); $v = Utente::id($_GET['id']); if (!$v->ordinario()) { $v = Volontario::id($_GET['id']); } proteggiDatiSensibili($v, [APP_SOCI, APP_PRESIDENTE]); if (!$v->modificabileDa($me)) { redirect('presidente.utenti&nonpuoi'); } $attuale = $v->appartenenzaAttuale(); $comitato = $attuale->comitato(); $motivo = $conf['dimissioni'][$_POST['motivo']]; /* Invalido il suo tesserino */ $v->invalidaTesserino($motivo); /* Avviso il volontario */ if ($_POST['motivo'] != DIM_DECEDUTO) { $m = new Email('dimissionevolontario', 'Dimissione Volontario: ' . $v->nomeCompleto()); $m->da = $me; $m->a = $v; $m->_NOME = $v->nome; $m->_MOTIVO = $motivo; $m->_INFO = $_POST['info']; $m->invia(); } if ($v->ordinario()) {
/** * Ritorna oggetto volontario che ha registrato la manutenzione * @return Object Volontatario */ public function pRegistra() { return Volontario::id($this->pRegistra); }
<?php /* * ©2014 Croce Rossa Italiana */ paginaApp([APP_SOCI, APP_PRESIDENTE]); controllaParametri(array('id'), 'presidente.riserva&err'); $u = $_GET['id']; $u = Volontario::id($u); proteggiDatiSensibili($u, [APP_SOCI, APP_PRESIDENTE]); ?> <div class="row-fluid"> <div class="span12"> <div class="row-fluid"> <h2> <i class="icon-briefcase muted"></i> Storico Incarichi </h2> <p>Volontario: <strong><?php echo $u->nomeCompleto(); ?> </strong></p> </div> <div class="row-fluid"> <table class="table table-bordered table-striped"> <thead> <th>Stato</th> <th>Ruolo</th>
public function conferma() { return Volontario::id($this->pConferma); }
/** * Restituisce il direttore di un corso * @return Volontario */ public function direttore() { if ($this->direttore) { return Volontario::id($this->direttore); } return null; }
<?php /* * ©2013 Croce Rossa Italiana */ paginaPrivata(); $parametri = array('turno', 'v'); controllaParametri($parametri, 'utente.me&err'); $turno = Turno::id($_GET['turno']); $attivita = $turno->attivita(); paginaAttivita($attivita); $v = Volontario::id($_GET['v']); $p = Partecipazione::filtra([['turno', $turno], ['volontario', $v]]); $aut = Autorizzazione::by('partecipazione', $p[0]); $aut->concedi(); $cal = new ICalendar(); $cal->genera($attivita->id, $turno->id); $m = new Email('autorizzazioneConcessa', "Autorizzazione CONCESSA: {$a->nome}, {$turno->nome}"); $m->a = $v; $m->da = $attivita->referente(); $m->_NOME = $aut->partecipazione()->volontario()->nome; $m->_ATTIVITA = $attivita->nome; $m->_TURNO = $turno->nome; $m->_DATA = $turno->inizio()->format('d-m-Y H:i'); $m->_LUOGO = $attivita->luogo; $m->_REFERENTE = $attivita->referente()->nomeCompleto(); $m->_CELLREFERENTE = $attivita->referente()->cellulare(); $m->allega($cal); $m->invia(); redirect("attivita.scheda&id={$attivita->id}&turno={$turno->id}&riapri={$turno->id}");
<?php /* * ©2013 Croce Rossa Italiana */ $parametri = array('oid', 'persona', 'applicazione'); controllaParametri($parametri); $c = $_REQUEST['oid']; $c = GeoPolitica::daOid($c); paginaApp([APP_PRESIDENTE]); $persona = $_REQUEST['persona']; $persona = Volontario::id($persona); $app = (int) $_REQUEST['applicazione']; $appnome = $conf['applicazioni'][$app]; /* * Crea il nuovo delegato... */ $deleghe = Delegato::filtra([['volontario', $persona->id], ['applicazione', $app], ['comitato', $c->oid()]]); foreach ($deleghe as $delega) { if ($delega->attuale()) { redirect("presidente.comitato&oid={$c->oid()}&double&back=app_{$app}"); } } $d = new Delegato(); $d->estensione = $c->_estensione(); $d->comitato = $c->oid(); $d->applicazione = $app; $d->dominio = null; $d->inizio = time(); $d->pConferma = $me->id; $d->tConferma = time();
<?php /* * ©2013 Croce Rossa Italiana */ paginaApp([APP_SOCI, APP_PRESIDENTE]); $parametri = array('inputVolontario', 'inputComitato', 'inputMotivo'); controllaParametri($parametri); $t = $_POST['inputVolontario']; $t = Volontario::id($t); $c = $_POST['inputComitato']; if (!$c) { redirect('us.utente.estendi&c'); } $c = Comitato::id($c); $m = $_POST['inputMotivo']; /* Cerco appartenenze al comitato specificato */ $f = Appartenenza::filtra([['volontario', $t], ['comitato', $c]]); /* Se sono già appartenente *ora*, * restituisco errore */ foreach ($f as $app) { if ($app->attuale()) { redirect('us.utente.estendi&e'); break; } } /*Se non sono appartenente allora avvio la procedura*/ $a = new Appartenenza(); $a->volontario = $t->id; $a->comitato = $c;
<?php } ?> </div> </div> </div> <?php $n = Commento::filtra([['attivita', $a], ['upCommento', $_c->id]]); foreach ($n as $_n) { ?> <div class="row-fluid"> <div class="span11 subcommento"> <div class="span2 allinea-destra"> <?php $g = Volontario::by('id', $_n->volontario); ?> <img src="<?php echo $g->avatar()->img(10); ?> " class="img-polaroid" /> </div> <div class="span8"> <p class="text-info"><?php echo $g->nomeCompleto(); ?> <?php echo $_n->quando()->inTesto(); ?> </p> <p class="text"><blockquote><?php
<?php /* * ©2013 Croce Rossa Italiana */ paginaApp([APP_CO, APP_PRESIDENTE]); $parametri = array('v', 't'); controllaParametri($parametri, 'co.attivita&err'); $t = $_GET['t']; $v = $_GET['v']; if (isset($_GET['monta'])) { $c = new Coturno(); $v = Volontario::id($v); $c->volontario = $v; $c->appartenenza = $v->unComitato(); $c->turno = $t; $c->pMonta = $me; $c->monta(); redirect('co.attivita&monta'); } if (isset($_GET['smonta'])) { $c = Coturno::filtra([['volontario', $v], ['turno', $t]]); $c = Coturno::id($c[0]); $c->volontario = $v; $c->pSmonta = $me; $c->smonta(); redirect('co.attivita&smonta'); } redirect('co.attivita&err');
<?php $ccompetenza = $me->comitatiDiCompetenza(); $comitati = $me->comitati(); $locale = $me->unComitato()->locale(); array_push($comitati, $locale); if ($ccompetenza) { $comitati = array_merge($comitati, $ccompetenza); } $comitati = array_unique($comitati); $delegati = []; foreach ($comitati as $comitato) { $delegati = array_merge($delegati, $comitato->volontariDelegati()); } $delegati = array_unique($delegati); foreach ($delegati as $delegato) { $_v = Volontario::id($delegato); $d = $_v->delegazioni(); ?> <tr> <td><img src="<?php echo $_v->avatar()->img(10); ?> " class="img-polaroid" /></td> <td><?php echo $_v->nome; ?> </td> <td><?php echo $_v->cognome; ?> </td>