<?php if (stristr($_SERVER['REQUEST_URI'], "session.php") || !defined('T3_ABSPATH')) { die("no access"); } # TemaTres : aplicación para la gestión de lenguajes documentales # # # # # Copyright (C) 2004-2015 Diego Ferreyra tematres@r020.com.ar # Distribuido bajo Licencia GNU Public License, versión 2 (de junio de 1.991) Free Software Foundation # ############################################################################################################### # Include para alta y modificacion de usuarios genericos. if (is_numeric($_GET["user_id"])) { $dato_user = ARRAYdatosUser($_GET["user_id"]); } if ($dato_user["id"]) { $resumen = ARRAYresumen($_SESSION["id_tesa"], "U", $dato_user["id"]); $row_resumen .= '<div id="cajaAncha">' . "\n\r"; $row_resumen .= ' <div><strong>' . LABEL_Acciones . '</strong></div><dl class="dosCol">' . "\n\r"; if ($resumen[cant_total] > 0) { $row_resumen .= '<dt><a href="sobre.php?user_id=' . $dato_user["id"] . '" title="' . LABEL_Terminos . '">' . ucfirst(LABEL_Terminos) . '</dt><dd>' . $resumen[cant_total] . '</a> </dd>' . "\n\r"; } else { $row_resumen .= '<dt>' . ucfirst(LABEL_Terminos) . '</dt><dd>' . $resumen["cant_total"] . " </dd>\n\r"; } $row_resumen .= '<dt>' . ucfirst(LABEL_RelTerminos) . '</dt><dd>' . $resumen["cant_rel"] . " </dd>\n\r"; $row_resumen .= '<dt>' . ucfirst(LABEL_TerminosUP) . '</dt><dd>' . $resumen["cant_up"] . " </dd>\n\r"; $row_resumen .= '</dl></div>'; } $rows .= '<form role="form" name="login" id="form-users" data-toggle="validator" action="admin.php" method="post">'; $rows .= ' <div class="row"> <div class="col-sm-12">
<?php # TemaTres : aplicación para la gestión de lenguajes documentales # # # # # Copyright (C) 2004-2008 Diego Ferreyra tematres@r020.com.ar # Distribuido bajo Licencia GNU Public License, versión 2 (de junio de 1.991) Free Software Foundation # ############################################################################################################### # Include para alta y modificacion de usuarios genericos. if ($_GET[user_id] == 'new') { $nombre_boton = LABEL_Enviar; } else { $dato_user = ARRAYdatosUser($_GET[user_id]); $resumen = ARRAYresumen($_SESSION[id_tesa], "U", "{$dato_user['id']}"); $row_resumen .= '<div id="cajaAncha">' . "\n\r"; $row_resumen .= ' <div><strong>' . LABEL_Acciones . '</strong></div><dl class="dosCol">' . "\n\r"; if ($resumen[cant_total] > 0) { $row_resumen .= '<dt><a href="sobre.php?user_id=' . $dato_user[id] . '" title="' . LABEL_Terminos . '">' . ucfirst(LABEL_Terminos) . '</dt><dd>' . $resumen[cant_total] . '</a> </dd>' . "\n\r"; } else { $row_resumen .= '<dt>' . ucfirst(LABEL_Terminos) . '</dt><dd>' . $resumen[cant_total] . " </dd>\n\r"; } $row_resumen .= '<dt>' . ucfirst(LABEL_RelTerminos) . '</dt><dd>' . $resumen[cant_rel] . " </dd>\n\r"; $row_resumen .= '<dt>' . ucfirst(LABEL_TerminosUP) . '</dt><dd>' . $resumen[cant_up] . " </dd>\n\r"; $row_resumen .= '</dl></div>'; if ($dato_user[estado]) { if ($dato_user[estado] == 'ACTIVO') { $textoEnlace = MENU_Caducar; } else { $textoEnlace = MENU_Habilitar; } $boton_estado = '<input name="boton" type="button" value="' . $textoEnlace . '" onclick="location.href=\'admin.php?user_id=list&usestado=' . $dato_user[id] . '&estado=' . $dato_user[estado] . '\'"/>' . "\n\r";
# Include para actualizacion de datos propios. # $user_id = '0'; $user_id = $_GET[user_id] && $_SESSION[$_SESSION["CFGURL"]][ssuser_nivel] == '1' ? $_GET[user_id] : $_SESSION[$_SESSION["CFGURL"]][ssuser_id]; if ($_POST[actuaDatos]) { $user_id = $_SESSION[$_SESSION["CFGURL"]][ssuser_nivel] == '1' ? $_POST[actuaDatos] : $_SESSION[$_SESSION["CFGURL"]][ssuser_id]; $user_id = admin_users("actua", secure_data($user_id, "sql")); $row_resumen = '<p class="success">' . MSG_ResultCambios . '</p>' . "\n\r"; } $resumen = ARRAYresumen($_SESSION[id_tesa], "U", secure_data($user_id, "sql")); $row_resumen .= '<div id="cajaAncha">' . "\n\r"; $row_resumen .= '<strong>' . ucfirst(LABEL_Acciones) . '</strong><dl class="dosCol">' . "\n\r"; $row_resumen .= '<dt>' . ucfirst(LABEL_Terminos) . '</dt><dd>' . $resumen[cant_total] . "</dd>\n\r"; $row_resumen .= '<dt>' . ucfirst(LABEL_RelTerminos) . '</dt><dd>' . $resumen[cant_rel] . "</dd>\n\r"; $row_resumen .= '<dt>' . ucfirst(LABEL_TerminosUP) . '</dt><dd> ' . $resumen[cant_up] . "</dd>\n\r"; $row_resumen .= '</dl></div>'; $dato_user = ARRAYdatosUser($user_id); $nombre_boton = LABEL_actualizar; ?> <div id="bodyText"> <fieldset> <legend><?php echo MENU_MisDatos; ?> </legend> <?php echo $row_resumen; ?> <form name="login" action="<?php echo $PHP_SELF; ?> " method="post" onsubmit="return checkrequired(this)">
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; }