Beispiel #1
0
function admin_users($do, $user_id = "")
{
    global $DBCFG;
    $userId = $_SESSION[$_SESSION["CFGURL"]][ssuser_id];
    if (is_numeric($user_id)) {
        $arrayUserData = ARRAYdatosUser($user_id);
        if ($arrayUserData[nivel] == '1') {
            //Cehcquear que sea ADMIN
            $sqlCheckAdmin = SQL("select", "count(*) from {$DBCFG['DBprefix']}usuario where nivel='1' and estado='ACTIVO'");
            $arrayCheckAdmin = mysqli_fetch_row($sqlCheckAdmin[datos]);
        }
    }
    switch ($do) {
        case 'actua':
            $POSTarrayUser = doArrayDatosUser($_POST);
            //Normalice admin
            $nivel = $POSTarrayUser[isAdmin] == '1' ? '1' : '2';
            //Check have one admin user
            if ($nivel == '2' && $arrayUserData[nivel] == '1' && $arrayCheckAdmin[0] == '1') {
                $nivel = '1';
            }
            $sql = SQL("update", "{$DBCFG['DBprefix']}usuario\r\n\t\t\tSET apellido='{$POSTarrayUser['apellido']}',\r\n\t\t\tnombres= '{$POSTarrayUser['nombres']}',\r\n\t\t\tmail='{$POSTarrayUser['mail']}',\r\n\t\t\tuid='{$userId}',\r\n\t\t\tpass= '******'pass']}',\r\n\t\t\torga= '{$POSTarrayUser['orga']}',\r\n\t\t\tnivel ='{$nivel}'\r\n\t\t\tWHERE id='{$arrayUserData['user_id']}'");
            break;
        case 'estado':
            $new_estado = $_GET[estado] == 'ACTIVO' ? 'BAJA' : 'ACTIVO';
            //Check have one admin user
            if ($new_estado == 'BAJA' && $arrayUser[nivel] == '1' && $arrayCheckAdmin[0] == '1') {
                $new_estado = 'ACTIVO';
            }
            $sql = SQL("update", "{$DBCFG['DBprefix']}usuario\r\n\t\t\tSET estado='{$new_estado}',\r\n\t\t\tuid='{$userId}',\r\n\t\t\thasta=now()\r\n\t\t\tWHERE id='{$arrayUserData['user_id']}'\r\n\t\t\t");
            break;
        case 'alta':
            $POSTarrayUser = doArrayDatosUser($_POST);
            $nivel = $POSTarrayUser[isAdmin] == '1' ? '1' : '2';
            $sql = SQL("insert", "into {$DBCFG['DBprefix']}usuario (apellido, nombres, uid, cuando, mail, pass, orga, nivel, estado, hasta)\r\n\t\t\tVALUES\r\n\t\t\t('{$POSTarrayUser['apellido']}', '{$POSTarrayUser['nombres']}', '{$userId}', now(), '{$POSTarrayUser['mail']}', '{$POSTarrayUser['pass']}', '{$POSTarrayUser['orga']}', '{$nivel}', 'ACTIVO', now())\r\n\t\t\t");
            $user_id = $sql[cant];
            break;
    }
    return $user_id;
}
function admin_users($do, $user_id = "")
{
    global $DBCFG;
    global $DB;
    $userId = $_SESSION[$_SESSION["CFGURL"]][ssuser_id];
    if (is_numeric($user_id)) {
        $arrayUserData = ARRAYdatosUser($user_id);
        if ($arrayUserData[nivel] == '1') {
            //Cehcquear que sea ADMIN
            $sqlCheckAdmin = SQL("select", "count(*) as cant from {$DBCFG['DBprefix']}usuario where nivel='1' and estado='ACTIVO'");
            $arrayCheckAdmin = $sqlCheckAdmin->FetchRow();
        }
    }
    switch ($do) {
        case 'actua':
            $POSTarrayUser = doArrayDatosUser($_POST);
            //Normalice admin
            $nivel = $POSTarrayUser["isAdmin"] == '1' ? '1' : '2';
            //Check have one admin user
            if ($arrayUserData["nivel"] == '1' && $arrayCheckAdmin["cant"] == '1') {
                $nivel = '1';
            }
            $POSTarrayUser[apellido] = trim($POSTarrayUser[apellido]);
            $POSTarrayUser[nombres] = trim($POSTarrayUser[nombres]);
            $POSTarrayUser[mail] = trim($POSTarrayUser[mail]);
            $POSTarrayUser[pass] = trim($POSTarrayUser[pass]);
            $POSTarrayUser[orga] = trim($POSTarrayUser[orga]);
            $POSTarrayUser[apellido] = $DB->qstr($POSTarrayUser[apellido], get_magic_quotes_gpc());
            $POSTarrayUser[nombres] = $DB->qstr($POSTarrayUser[nombres], get_magic_quotes_gpc());
            $POSTarrayUser[mail] = $DB->qstr($POSTarrayUser[mail], get_magic_quotes_gpc());
            $POSTarrayUser[orga] = $DB->qstr($POSTarrayUser[orga], get_magic_quotes_gpc());
            $POSTarrayUser[pass] = trim($POSTarrayUser[pass]);
            $POSTarrayUser["status"] = $POSTarrayUser["isAlive"] == 'ACTIVO' ? 'ACTIVO' : 'BAJA';
            //Check have one admin user
            if ($POSTarrayUser["status"] == 'BAJA' && $arrayUserData["nivel"] == '1' && $arrayCheckAdmin["cant"] == '1') {
                $POSTarrayUser["status"] = 'ACTIVO';
            }
            $sql = SQL("update", "{$DBCFG['DBprefix']}usuario\r\n\t\t\tSET apellido={$POSTarrayUser['apellido']},\r\n\t\t\tnombres= {$POSTarrayUser['nombres']},\r\n\t\t\tmail={$POSTarrayUser['mail']},\r\n\t\t\tuid='{$userId}',\r\n\t\t\torga= {$POSTarrayUser['orga']}\r\n\t\t\tWHERE id= '{$arrayUserData['user_id']}'");
            //set password
            if (strlen($POSTarrayUser[pass]) > 0) {
                setPassword($arrayUserData["user_id"], $POSTarrayUser[pass], CFG_HASH_PASS);
            }
            //only admin
            if ($_SESSION[$_SESSION["CFGURL"]]["ssuser_nivel"] == '1') {
                $sql = SQL("update", "{$DBCFG['DBprefix']}usuario\r\n\t\t\t\tSET estado='{$POSTarrayUser['status']}',\r\n\t\t\t\tnivel='{$nivel}',\r\n\t\t\t\tuid='{$userId}',\r\n\t\t\t\thasta=now()\r\n\t\t\t\tWHERE id='{$arrayUserData['user_id']}'");
            }
            break;
        case 'estado':
            $new_estado = $POSTarrayUser["status"] == 'ACTIVO' ? 'ACTIVO' : 'BAJA';
            //Check have one admin user
            if ($new_estado == 'BAJA' && $arrayUserData["nivel"] == '1' && $arrayCheckAdmin["cant"] == '1') {
                $new_estado = 'ACTIVO';
            }
            $sql = SQL("update", "{$DBCFG['DBprefix']}usuario\r\n\t\t\tSET estado='{$new_estado}',\r\n\t\t\tuid='{$userId}',\r\n\t\t\thasta=now()\r\n\t\t\tWHERE id='{$arrayUserData['user_id']}'\r\n\t\t\t");
            break;
        case 'alta':
            $POSTarrayUser = doArrayDatosUser($_POST);
            $nivel = $POSTarrayUser[isAdmin] == '1' ? '1' : '2';
            $POSTarrayUser["apellido"] = trim($POSTarrayUser[apellido]);
            $POSTarrayUser["nombres"] = trim($POSTarrayUser[nombres]);
            $POSTarrayUser["mail"] = trim($POSTarrayUser[mail]);
            $POSTarrayUser["pass"] = trim($POSTarrayUser[pass]);
            $POSTarrayUser["orga"] = trim($POSTarrayUser[orga]);
            $POSTarrayUser["apellido"] = $DB->qstr($POSTarrayUser[apellido], get_magic_quotes_gpc());
            $POSTarrayUser["nombres"] = $DB->qstr($POSTarrayUser[nombres], get_magic_quotes_gpc());
            $POSTarrayUser["mail"] = $DB->qstr($POSTarrayUser[mail], get_magic_quotes_gpc());
            $POSTarrayUser["orga"] = $DB->qstr($POSTarrayUser[orga], get_magic_quotes_gpc());
            $sql = SQLo("insert", "into {$DBCFG['DBprefix']}usuario\r\n\t\t\t(apellido, nombres, uid, cuando, mail,  orga, nivel, estado, hasta)\r\n\t\t\tVALUES\r\n\t\t\t({$POSTarrayUser['apellido']}, {$POSTarrayUser['nombres']}, ?, now(), {$POSTarrayUser['mail']}, {$POSTarrayUser['orga']}, ?, 'ACTIVO', now())", array($userId, $nivel));
            $user_id = $sql[cant];
            //set password
            setPassword($user_id, $POSTarrayUser[pass], CFG_HASH_PASS);
            break;
    }
    return $user_id;
}