Esempio n. 1
0
 public static function chiudi()
 {
     $valpass = Validazione::filtra([['stato', VAL_PASS]]);
     $valmail = Validazione::filtra([['stato', VAL_MAIL]]);
     $valmails = Validazione::filtra([['stato', VAL_MAILS]]);
     $validazioni = array_merge($valpass, $valmail);
     $validazioni = array_merge($validazioni, $valmails);
     $duegiornifa = time() - DUEGIORNI;
     foreach ($validazioni as $v) {
         if ($v->timestamp < $duegiornifa) {
             $v->stato = VAL_CHIUSA;
         }
     }
 }
Esempio n. 2
0
<?php

/*
 * ©2013 Croce Rossa Italiana
 */
$parametri = array('inputEmail', 'inputCodiceFiscale');
controllaParametri($parametri, 'recuperaPassword&err');
$codiceFiscale = $_POST['inputCodiceFiscale'];
$codiceFiscale = maiuscolo($codiceFiscale);
$email = $_POST['inputEmail'];
$p = Utente::by('codiceFiscale', $codiceFiscale);
if (!$p) {
    redirect('recuperaPassword&cf');
} elseif ($p->email != $email) {
    redirect('recuperaPassword&email');
}
/* Genera codice di validazione */
$codice = Validazione::generaValidazione($p, VAL_PASS);
if (!$codice) {
    redirect('recuperaPassword&gia');
}
$e = new Email('recuperaPassword', 'Richiesta reimpostazione password');
$e->a = $p;
$e->_NOME = $p->nome;
$e->_DATA = date('d-m-Y H:i');
$e->_CODICE = $codice;
$e->invia();
redirect('recuperaPassword.step');
Esempio n. 3
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;
}
Esempio n. 4
0
<?php

/*
 * ©2013 Croce Rossa Italiana
 */
controllaParametri(array('c'), 'recuperaPassword&err');
$codice = $_GET['c'];
/* Cerca codice di validazione */
$validazione = Validazione::cercaValidazione($codice);
if (!$validazione) {
    redirect('recuperaPassword&sca');
}
$p = $validazione->utente();
/* Genera la password casuale */
$password = generaStringaCasuale(8, DIZIONARIO_ALFANUMERICO);
/* Imposta la password */
$p->cambiaPassword($password);
$validazione->stato = VAL_CHIUSA;
$e = new Email('generaPassword', 'Nuova password generata');
$e->a = $p;
$e->_NOME = $p->nome;
$e->_PASSWORD = $password;
$e->invia();
redirect('validazione.ok&pass');
Esempio n. 5
0
<?php

/*
 * ©2014 Croce Rossa Italiana
 */
paginaPrivata();
// controllo se ho in giro cambi email tra le validazioni del tizio
$mailSospesa = Validazione::filtra([['volontario', $me], ['stato', VAL_MAIL]]);
$mailServizioSospesa = Validazione::filtra([['volontario', $me], ['stato', VAL_MAILS]]);
if ($mailSospesa) {
    $mailSospesa = $mailSospesa[0];
}
if ($mailServizioSospesa) {
    $mailServizioSospesa = $mailServizioSospesa[0];
}
?>
<div class="row-fluid">
    <div class="span3">
        <?php 
menuVolontario();
?>
    </div>
    <div class="span9">
        <h2><i class="icon-phone muted"></i> Modifica delle informazioni di contatto</h3>
        <hr />
        <?php 
if (isset($_GET['emailok'])) {
    ?>
        <div class="alert alert-success">
            <i class="icon-save"></i> <strong>Richiesta salvata</strong>.
            Controlla casella di posta specificata e conferma il tuo nuovo indirizzo per completare la procedura.
Esempio n. 6
0
File: login.php Progetto: pizar/gaia
<?php

/*
 * ©2013 Croce Rossa Italiana
 */
paginaPubblica();
$torna = @$sessione->torna;
if (isset($_GET['back'])) {
    $torna = base64_encode(serialize(['p' => $_GET['back']]));
}
$sessione->torna = null;
if (isset($_GET['token'])) {
    // PROCEDURA DI PREACCESSO DA API
    $token = Validazione::cercaValidazione($_GET['token']);
    $token->stato = VAL_CHIUSA;
    $token = json_decode($token->note);
    $sid = $token->sid;
    $chiave = APIKey::id($token->app);
    $ip = $token->ip;
    $nuovas = Sessione::id($sid);
    $nuovas->app_id = $chiave->id;
    $nuovas->app_ip = $ip;
    $nuovas->app_redirect = $token->redirect;
    setcookie('sessione', $sid, time() + $conf['sessioni']['durata']);
    redirect("login&back=utente.applicazione");
}
paginaPubblica();
?>


<div class="row-fluid">
Esempio n. 7
0
        $e->_NOME = $me->nome;
        $e->_DATA = date('d-m-Y H:i');
        $e->_TIPO = 'personale';
        $e->_NUOVA = $newemail;
        $e->_CODICE = $codice;
        $e->invia();
        $me->email = $email;
        redirect('utente.contatti&emailok');
    }
}
if ($me->stato == VOLONTARIO && $newemailservizio && $newemailservizio != $me->emailservizio) {
    if (Utente::by('email', $newemailservizio)) {
        redirect('utente.contatti&emailep');
    } else {
        /* Genera codice di validazione */
        $codice = Validazione::generaValidazione($me, VAL_MAILS, $newemailservizio);
        if (!$codice) {
            redirect('utente.contatti&emailgia');
        }
        /* Stratagemma per mandare la mail al nuovo indirizzo e validarlo */
        $email = $me->email;
        $me->email = $newemailservizio;
        $e = new Email('validazioneMail', 'Richiesta sostituzione indirizzo email');
        $e->a = $me;
        $e->_NOME = $me->nome;
        $e->_DATA = date('d-m-Y H:i');
        $e->_TIPO = 'di servizio';
        $e->_NUOVA = $newemailservizio;
        $e->_CODICE = $codice;
        $e->invia();
        $me->email = $email;
Esempio n. 8
0
 /**
  * Ritorna un url di login
  */
 private function api_login()
 {
     $this->sessione->logout();
     $sid = $this->sessione->id;
     $redirect = false;
     if (isset($this->par['redirect'])) {
         $redirect = $this->par['redirect'];
     }
     $val = new Validazione();
     $token = $val->generaValidazione(null, VAL_ATTESA, json_encode(['app' => $this->chiave->id, 'ip' => $_SERVER['REMOTE_ADDR'], 'sid' => $sid, 'redirect' => $redirect]));
     $url = "https://gaia.cri.it/?p=login&token={$token}";
     return ['url' => $url, 'token' => $token];
 }