Beispiel #1
0
             $formdata_databasehent = true;
             $messages[] = 'The user is now signed off.';
         }
         // hvis netsignup eller resetpassword er valgt, saa generer ogsaa nyt password
         if ($formdata['action'] == 'netsignup' || $formdata['action'] == 'resetpassword') {
             $setbrugerdata['password'] = backend_generer_passwd();
             $smarty->assign('printlogin', true);
             $smarty->assign('password', $setbrugerdata['password']);
             $messages[] = 'A new login paper is created. <a href="javascript:window.print();">Print this page</a>.';
             $formdata_databasehent = true;
         }
         if ($formdata['action'] == 'nothing') {
             $messages[] = 'User data updated.';
         }
         // opdater brugerdata
         backend_set_brugerdata($brugernavn, $setbrugerdata);
         backend_opdater_datafiler();
     }
 } else {
     // hvis data ikke er sendt, brug data fra database
     $formdata_databasehent = true;
 }
 $brugere = backend_hent_brugere(array('brugernavn' => $brugernavn));
 $brugerdata = $brugere[0];
 if ($formdata_databasehent == true) {
     $formdata = array('email' => $brugerdata['email'], 'mobilnummer' => $brugerdata['mobilnummer'], 'hjemmeside' => $brugerdata['hjemmeside'], 'skjult_navn' => (bool) $brugerdata['skjult_navn'], 'skjult_email' => (bool) $brugerdata['skjult_email']);
 }
 $smarty->assign('brugerdata', $brugerdata);
 $smarty->assign('formdata', $formdata);
 $smarty->assign('messages', $messages);
 $smarty->assign('contenttemplate', 'admin-users-edit.tpl');
Beispiel #2
0
        $formdata = array('email' => $_POST['email'], 'mobilnummer' => $_POST['mobilnummer'], 'hjemmeside' => $_POST['hjemmeside'], 'skjult_navn' => (bool) $_POST['skjult_navn'], 'skjult_email' => (bool) $_POST['skjult_email']);
        // valider inputs
        $validate_errors = array();
        if (!validate_email($formdata['email'])) {
            $validate_errors[] = 'Invalid email address.';
        }
        if (!empty($_POST['newpassword']) && $_POST['newpassword'] != $_POST['newpassword2']) {
            $validate_errors[] = 'The two password fields is not equal.';
        }
        if (sizeof($validate_errors) > 0) {
            $smarty->assign('errors', $validate_errors);
        } else {
            // ingen valideringsfejl, så opdater data
            // hvis passwordfeltet er udfyldt, sendes dette med de øvrige data i backend_set_brugerdata
            if (!empty($_POST['newpassword'])) {
                $formdata['password'] = $_POST['newpassword'];
            }
            backend_set_brugerdata($_SESSION['brugernavn'], $formdata);
            backend_opdater_datafiler();
            $smarty->assign('messages', array('The account data is updated.'));
        }
    } else {
        $formdata = array('email' => $brugerdata['email'], 'mobilnummer' => $brugerdata['mobilnummer'], 'hjemmeside' => $brugerdata['hjemmeside'], 'skjult_navn' => (bool) $brugerdata['skjult_navn'], 'skjult_email' => (bool) $brugerdata['skjult_email']);
    }
    $smarty->assign('brugerdata', $brugerdata);
    $smarty->assign('formdata', $formdata);
    $smarty->assign('contenttemplate', 'user-account.tpl');
} catch (Exception $e) {
    fatal_error($e);
}
$smarty->display(WEBFRONTEND_MAINTEMPLATE);
Beispiel #3
0
function valider_bruger_og_password_test()
{
    echo "Tester valider_bruger_og_password: "******"SELECT * FROM brugere WHERE brugernavn LIKE 'nyktte'");
    //if($r[0]['password_cleartext'] == '') fejl(__LINE__);
    backend_set_brugerdata('nyktte', array('password' => 'testpass'));
    //$r = backend_dbquery("SELECT * FROM brugere WHERE brugernavn LIKE 'nyktte'");
    //if($r[0]['password_cleartext'] != 'testpass') fejl(__LINE__);
    if (backend_valider_bruger_og_password('nyktte', 'testpass') != true) {
        fejl(__LINE__);
    }
    if (backend_valider_bruger_og_password('nyktte', 'x') != false) {
        fejl(__LINE__);
    }
    teardown_testdata1();
    echo "ok\n";
}
Beispiel #4
0
/**
 * Laver brugernavn og password og opretter i databasen. Sætter brugeren på
 * default grupperne.
 *
 * Kan kaste en DatabaseException.
 *
 * @param string $vaerelse
 * @param string $navn
 * @param string $indflytning Dato i format "YYYY-MM-DD"
 * @param string $udflytning Dato i format "YYYY-MM-DD". Her oftest null.
 * @param string $kab_lejemaal_id Unikt ID for lejemål fra KABAS
 * @param string $lejer_type 'lejer1', 'lejer2' (lejl.) eller 'fremlejer'
 * @return Brugernavnet på den oprettede bruger
 */
function backend_ny_bruger($vaerelse, $navn, $indflytning, $udflytning, $kab_lejemaal_id, $lejer_type)
{
    $brugernavn = backend_generer_brugernavn($navn);
    $q = 'INSERT INTO brugere SET brugernavn=?, vaerelse=?, ' . 'navn=?, indflytning=?, udflytning=?, kab_lejemaal_id=?, lejer_type=?';
    $p = array($brugernavn, $vaerelse, $navn, $indflytning, $udflytning, $kab_lejemaal_id, $lejer_type);
    backend_dbquery($q, $p);
    $password = backend_generer_passwd();
    backend_set_brugerdata($brugernavn, array('password' => $password));
    // tilmeld til default grupper
    backend_set_gruppemedlemskab($brugernavn, 'nyk_alle_beboere');
    backend_set_gruppemedlemskab($brugernavn, 'nyk_meddelelse');
    backend_set_gruppemedlemskab($brugernavn, 'nyk_kc_reklame');
    // tilmeld til lejlighedsgruppe hvis lejlighed, ellers gang-liste
    $r = backend_dbquery('SELECT vaerelse_type ' . 'FROM vaerelser WHERE vaerelse = ?', array($vaerelse));
    if ($r[0]['vaerelse_type'] == 'lejlighed') {
        backend_set_gruppemedlemskab($brugernavn, 'nyk_lejligheder');
    } else {
        if ($r[0]['vaerelse_type'] == 'vaerelse') {
            $bogstav = substr($vaerelse, 0, 1);
            $lige = substr($vaerelse, 1, 2) % 2 == 0;
            if (stripos('ab', $bogstav) !== false && !$lige) {
                $g = 'nyk_ab_ulige';
            }
            if (stripos('ab', $bogstav) !== false && $lige) {
                $g = 'nyk_ab_lige';
            }
            if (stripos('cd', $bogstav) !== false && !$lige) {
                $g = 'nyk_cd_ulige';
            }
            if (stripos('cd', $bogstav) !== false && $lige) {
                $g = 'nyk_cd_lige';
            }
            if (stripos('ef', $bogstav) !== false && !$lige) {
                $g = 'nyk_ef_ulige';
            }
            if (stripos('ef', $bogstav) !== false && $lige) {
                $g = 'nyk_ef_lige';
            }
            if (stripos('gh', $bogstav) !== false && !$lige) {
                $g = 'nyk_gh_ulige';
            }
            if (stripos('gh', $bogstav) !== false && $lige) {
                $g = 'nyk_gh_lige';
            }
            if (stripos('jk', $bogstav) !== false && !$lige) {
                $g = 'nyk_jk_ulige';
            }
            if (stripos('jk', $bogstav) !== false && $lige) {
                $g = 'nyk_jk_lige';
            }
            if (stripos('lm', $bogstav) !== false && !$lige) {
                $g = 'nyk_lm_ulige';
            }
            if (stripos('lm', $bogstav) !== false && $lige) {
                $g = 'nyk_lm_lige';
            }
            if (stripos('no', $bogstav) !== false && !$lige) {
                $g = 'nyk_no_ulige';
            }
            if (stripos('no', $bogstav) !== false && $lige) {
                $g = 'nyk_no_lige';
            }
            if (stripos('st', $bogstav) !== false && !$lige) {
                $g = 'nyk_st_ulige';
            }
            if (stripos('st', $bogstav) !== false && $lige) {
                $g = 'nyk_st_lige';
            }
            if (stripos('pr', $bogstav) !== false && !$lige) {
                $g = 'nyk_pr_ulige';
            }
            if (stripos('pr', $bogstav) !== false && $lige) {
                $g = 'nyk_pr_lige';
            }
            if ($g) {
                backend_set_gruppemedlemskab($brugernavn, $g);
            }
        }
    }
    return $brugernavn;
}
Beispiel #5
0
/**
 * Opdaterer eventuelle felter for fremlejere i bruger-tabellen i databasen ud
 * fra 'lejemaal'-entry fra KABAS udtræk.
 *
 * @param object $lejemaal SimpleXML-objekt af 'lejemaal'-entry
 */
function opdater_fremlejer_bruger_fra_kabas_lejemaal($lejemaal, $brugernavn)
{
    $r = backend_hent_brugere(array('brugernavn' => $brugernavn), 'vaerelse', false, 'alle');
    if (count($r) == 0) {
        log_skriv('fejl, forsoegte at opdatere fremlejer som ikke var oprettet, ' . 'KAB lejemaal id: ' . $lejemaal->id . ', brugernavn: ' . $brugernavn);
    } else {
        $bruger = $r[0];
        // ting der skal ændres
        $delta = array();
        // er fremlejer navn blevet ændret?
        $navn = klargoer_navn($lejemaal->fremlNavn);
        if ($bruger['navn'] != $navn) {
            $delta['navn'] = $navn;
        }
        // er indflytningsdato blevet ændret?
        $ind = $lejemaal->fremlFra ? fixfremldate($lejemaal->fremlFra) : null;
        if ($bruger['indflytning'] != $ind) {
            $delta['indflytning'] = $ind;
        }
        // er udflytningsdato blevet ændret?
        $ud = $lejemaal->fremlTil ? fixfremldate($lejemaal->fremlTil) : null;
        if ($bruger['udflytning'] != $ud) {
            $delta['udflytning'] = $ud;
        }
        // hvis der er ændringer skal de gemmes i databasen
        if ($delta != null) {
            backend_set_brugerdata($bruger['brugernavn'], $delta);
            log_skriv('rettet brugerdata for ' . $bruger['brugernavn'] . '. Navn: ' . $navn . ' (fremlejer), KAB lejemaal id: ' . $lejemaal->id . ', delta: ' . json_encode($delta));
        }
    }
}