function auth($cmd = 'auth', $username = '', $password = '')
{
    if (XOX_DEBUG_MODE) {
        echo "auth({$cmd},{$username},{$password})<br>\n";
    }
    $authenticated = false;
    if ($cmd == 'logout') {
        $authenticated = false;
    } elseif ($cmd == 'login') {
        // arrive from login form
        $GLOBALS['user'] = new cUser($username);
        $authenticated = $GLOBALS['user']->validatePassword($password);
    } elseif ($cmd == 'lost') {
        // forgot password
        $tmp_user = new cUser($username);
        if (!empty($tmp_user->email)) {
            return array('email' => $tmp_user->email, 'password' => $tmp_user->generatePassword(), 'displayname' => isset($tmp_user->displayname) ? $tmp_user->displayname : '');
        } else {
            return false;
        }
        $authenticated = false;
    } elseif (isset($_SESSION['user'])) {
        $GLOBALS['user'] = $_SESSION['user'];
        if (is_obj($GLOBALS['user'], 'cUser')) {
            if ($username == $GLOBALS['user']->getUsername() && !empty($password)) {
                $authenticated = $GLOBALS['user']->validatePassword($password);
            } else {
                $authenticated = true;
            }
        }
    }
    if ($authenticated) {
        $_SESSION['user'] = $GLOBALS['user'];
        $GLOBALS['user_name'] = !empty($GLOBALS['user']->displayname) ? $GLOBALS['user']->displayname : $GLOBALS['user']->username;
        $GLOBALS['user_email'] = $GLOBALS['user']->email;
        $GLOBALS['user_rights'] = $GLOBALS['user']->getRights();
    } else {
        unset($_SESSION['user']);
        $GLOBALS['user'] = '';
        $GLOBALS['user_name'] = '';
        $GLOBALS['user_email'] = '';
        $GLOBALS['user_rights'] = array();
    }
    // return authentication succeeded flag
    return is_obj($GLOBALS['user'], 'cUser') && $GLOBALS['user']->isAuthenticated();
}
Exemple #2
0
<?php

error_reporting(1);
header('Content-type: text/html; charset=utf-8');
include "_plugins/smarty/Smarty.class.php";
include "_configs/config.php";
function __autoload($class_name)
{
    require_once '_classes/' . $class_name . '.php';
}
$smarty = new Smarty();
$sesja = new cSession();
$grupa = new cGroup();
$user = new cUser();
$finger = new cFinger();
$log = new cLog();
$czytnik = new cCzytnik();
$smarty->template_dir = '_skins/first';
$smarty->compile_dir = '_var/tmp_c';
$smarty->cache_dir = '_var/cache';
$smarty->config_dir = '_configs';
$smarty->caching = 0;
$smarty->compile_check = true;
//sprawdza czy plik szablonu lub konfiguracja uleg�y zmienie
$smarty->cache_lifetime = 3600;
//czas �ycia pliku w cache 1 godzina
$sesja->start();
$opcja = $_GET[opcja];
$rodzaj = $_GET[rodzaj];
$sortuj = '';
if ($_GET[sortuj]) {
Exemple #3
0
<?php

require_once "_classes/cGroup.php";
require_once "_classes/cUser.php";
$fp = fopen('delete.log', 'a');
if (isset($_POST['id'], $_POST['tab'])) {
    $id = (int) $_POST['id'];
    $tabela = $_POST['tab'];
    fwrite($fp, "[ii] tabela: {$tabela}, id: {$id}\n");
    switch ($tabela) {
        case "uzytkownik":
            $sql = new cUser();
            $sql->delete($id);
            $sql->close();
            fwrite($fp, "[ii] usunieto uzytkownika o ID = {$id}\n");
            break;
        case "grupa":
            $sql = new cGroup();
            $sql->delete($id);
            $sql->close();
            fwrite($fp, "[ii] usunieto grupe o ID = {$id}\n");
            break;
        default:
            fwrite($fp, "[ee] Niepoprawna nazwa tabeli!\n");
            break;
    }
} else {
    fwrite($fp, "[ee] coś nie tak z POST!\n");
}
fclose($fp);
?>
Exemple #4
0
            break;
        case "grupa":
            $sql = new cGroup();
            $sql->delete($id);
            $sql->close();
            break;
        default:
            break;
    }
} else {
    if (isset($_POST['ids'], $_POST['tab'])) {
        $ids = explode(',', $_POST['ids']);
        $tabela = $_POST['tab'];
        switch ($tabela) {
            case "uzytkownik":
                $sql = new cUser();
                foreach ($ids as $id) {
                    $sql->delete((int) $id);
                }
                $sql->close();
                break;
            case "grupa":
                $sql = new cGroup();
                foreach ($ids as $id) {
                    $sql->delete((int) $id);
                }
                $sql->close();
                break;
            default:
                //fwrite($fp, "[ee] Niepoprawna nazwa tabeli!\n");
                break;
Exemple #5
0
<?php

/*
 *
 */
include_once './include/h.inc.php';
//login
if (isset($_POST['op']) && $_POST['op'] == 'login') {
    $username = isset($_POST['username']) ? mysql_escape_string($_POST['username']) : '';
    $password = isset($_POST['password']) ? mysql_escape_string($_POST['password']) : '';
    $obj_user = new cUser($db, DB_PREFIX);
    if (!$obj_user->authenticate($username, $password)) {
        $action = USER_LOGIN_FAILED . ",username:"******",password:"******",username:"******",password:" . $password;
        $obj_user->action_log($action, $username);
        go2url(DEFAULT_PAGE);
    }
}
//logout
if (isset($_GET['op']) && $_GET['op'] == 'logout') {
    $sess_user->action_log(USER_LOGOUT);
    $sess_user->logout();
    session_unregister('sess_user');
    go2url('index.php');
}
//change password
if (isset($_POST['op']) && $_POST['op'] == 'change') {
Exemple #6
0
<?php

require_once "_classes/cUser.php";
require_once "_classes/cGroup.php";
if (isset($_POST['tab'])) {
    $tabela = $_POST['tab'];
    switch ($tabela) {
        case 'uzytkownik':
            $sql = new cUser();
            $imie = $_POST['name'];
            $nazwisko = $_POST['surname'];
            $opis = $_POST['desc'];
            $grupa = $_POST['group'];
            $id = $sql->add($imie, $nazwisko, $opis, 1);
            $sql->close();
            //fwrite($fp, "[ii] dodalem uzytkownika o ID = $id\n");
            break;
        case 'grupa':
            $sql = new cGroup();
            $nazwa = $_POST['name'];
            $opis = $_POST['desc'];
            $id = $sql->add($nazwa, $opis, 1);
            $sql->close();
            //fwrite($fp, "[ii] dodalem grupe o ID = $id\n");
            break;
        default:
            //fwrite($fp, "[ee] Niepoprawna tabela\n");
            break;
    }
}
?>
Exemple #7
0
/**
  Funkcja pakuje w tablice potrzebne dane do wyswietlania stronnicowania
  wynikow
  
  zwraca:
    tablice z danymi lub NULL jezeli otrzyma zly drugi parametr
  
  parametry:
    $strona - aktualna strona, jeżeli wartość będzie -1, to znaczy,
                 że mają być wyświetlone wszystkie rekordy i nie wyświetli
                 się "następny" oraz pogrubiony i bez linku "wszystkie"
    $co - jedna ze stalych: PORCJUJ_GRUPY, PORCJUJ_UZYTKOWNIKOW
*/
function porcjuj($strona, $co)
{
    $zwroc = array();
    // wybieramy jakie dane dzielimy
    switch ($co) {
        case PORCJUJ_GRUPY:
            $sql = new cGroup();
            $link = 'index.php?opcja=wyswietl&rodzaj=grupe&';
            break;
        case PORCJUJ_UZYTKOWNIKOW:
            $sql = new cUser();
            $link = 'index.php?opcja=wyswietl&rodzaj=uzytkownikow&';
            break;
        default:
            return NULL;
    }
    // pobieramy ilosc rekordow
    $zwroc['rekordow'] = $sql->count();
    if ($strona >= 0 and $strona % ITEMS_ON_PAGE == 0 and $strona < $zwroc['rekordow']) {
        $zwroc['rekord_n'] = ($strona / ITEMS_ON_PAGE + 1) * ITEMS_ON_PAGE;
        $zwroc['encje'] = $sql->limit_read($strona, ITEMS_ON_PAGE);
        if ((int) $zwroc['rekord_n'] > (int) $zwroc['rekordow']) {
            $zwroc['rekord_n'] = $zwroc['rekordow'];
        }
        $zwroc['porcjowanie'] = porcjowanie($strona, $zwroc['rekordow'], ITEMS_ON_PAGE, $link);
    } else {
        // wyświetlamy wszystkie rekordy
        $zwroc['porcjowanie'] = porcjowanie($strona, $zwroc['rekordow'], ITEMS_ON_PAGE, $link);
        $zwroc['rekord_n'] = $zwroc['rekordow'];
        $zwroc['encje'] = $sql->read();
    }
    return $zwroc;
}