Esempio n. 1
0
 /**	graba la accion en la base de datos*/
 public function store()
 {
     global $ari;
     //clean vars and validation!
     $this->name = trim($this->name);
     $this->nicename = trim($this->nicename);
     //action
     if (!OOB_validatetext::isNumeric($this->action)) {
         $ari->error->addError("seguridad_action", "INVALID_ACTION");
     }
     //name
     if (!OOB_validatetext::isClean($this->name) || !OOB_validatetext::isCorrectLength($this->name, 1, MAX_LENGTH)) {
         $ari->error->addError("seguridad_action", "INVALID_NAME");
     }
     //nicename
     if (!OOB_validatetext::isClean($this->nicename) || !OOB_validatetext::isCorrectLength($this->nicename, 1, MAX_LENGTH)) {
         $ari->error->addError("seguridad_action", "INVALID_NICENAME");
     }
     //permission
     if (!OOB_validatetext::isNumeric($this->permission->get('permission'))) {
         $ari->error->addError("seguridad_action", "INVALID_PERMISSION");
     }
     //inmenu
     if (!OOB_validatetext::isNumeric($this->inmenu)) {
         $ari->error->addError("seguridad_action", "INVALID_INMENU");
     }
     //valido q no exista la accion
     if ($this->action == ID_UNDEFINED) {
         //para nuevo busco uno con el mismo nombre
         $clausula = "";
     } else {
         //si actualizo busco con el mismo nombre pero con el mismo id
         $clausula = " AND id <> {$this->action}";
     }
     $savem = $ari->db->SetFetchMode(ADODB_FETCH_NUM);
     $name = $ari->db->qMagic($this->name);
     $permissionid = $ari->db->qMagic($this->permission->get('permission'));
     $sql = "SELECT true as accion FROM security_action \n\t\t\t   WHERE name = {$name} and permissionid = {$permissionid} {$clausula}";
     $rs = $ari->db->Execute($sql);
     $ari->db->SetFetchMode($savem);
     if (!$rs->EOF && !$rs == false) {
         $rs->Close();
         $ari->error->addError("seguridad_action", "DUPLICATE_ACTION");
     }
     // end if
     if (!$ari->error->getErrorsfor("seguridad_action")) {
         $name = $ari->db->qMagic($this->name);
         $nicename = $ari->db->qMagic($this->nicename);
         $inmenu = $ari->db->qMagic($this->inmenu);
         if ($this->action > ID_MINIMAL) {
             // update data
             $action_id = $ari->db->qMagic($this->action);
             $ari->db->StartTrans();
             $sql = "UPDATE security_action\n\t\t\t\t\t   SET Name = {$name},\n\t\t\t\t\t   NiceName = {$nicename},\n\t\t\t\t\t   PermissionID = {$permissionid},\n\t\t   \t\t\t   InMenu = {$inmenu},\n\t\t\t\t\t   WHERE id = {$action_id}";
             $ari->db->Execute($sql);
             if (!$ari->db->CompleteTrans()) {
                 throw new OOB_exception("Error en DB: {$ari->db->ErrorMsg()}", "010", "Error en la Base de Datos", false);
             } else {
                 return true;
             }
         } else {
             // insert new and set actionid with new id
             $ari->db->StartTrans();
             $sql = "INSERT INTO security_action \n\t\t\t\t  \t  (name,nicename,permissionid,inmenu)\n\t\t\t\t      VALUES ({$name},\n\t\t\t\t\t\t\t\t{$nicename},\n\t\t\t\t\t\t\t\t{$permissionid},\n\t\t\t\t\t\t\t\t{$inmenu})";
             $ari->db->Execute($sql);
             $this->action = $ari->db->Insert_ID();
             if (!$ari->db->CompleteTrans()) {
                 throw new OOB_exception("Error en DB: {$ari->db->ErrorMsg()}", "010", "Error en la Base de Datos", false);
             } else {
                 return true;
             }
         }
         //end if
     } else {
         // no validan los datos
         return false;
         //devuelve un objeto de error con los errores!
     }
     //end if
 }
Esempio n. 2
0
<?php

#OOB/N1 Framework [2008 - Nutus] - PM
// Codigo por JPCOSEANI
// Script que procesa los datos del FORM UPDATE  ROLE
global $ari;
$ari->popup = 1;
$resultado = array();
$resultado["errors"] = array();
$resultado["success"] = false;
if (isset($_POST['id'])) {
    //id
    if (OOB_validatetext::isNumeric($_POST['id'])) {
        $role = new seguridad_role($_POST['id']);
    } else {
        throw new OOB_exception("INVALID_ID_VALUE", "501", "INVALID_ID_VALUE", false);
    }
    //nombre
    $role->set('name', $_POST['txt_nombre']);
    //descripcion
    $role->set('description', $_POST['txt_descripcion']);
    //anonimo
    if (isset($_POST['chk_anonimo'])) {
        $role->set('anonymous', ANONIMO);
    } else {
        $role->set('anonymous', NO_ANONIMO);
    }
    //confiable
    if (isset($_POST['chk_confiados'])) {
        $role->set('trustees', YES);
    } else {
Esempio n. 3
0
<?php

/* Nutus, Todos los derechos reservados 2005
 * Creado: 28-nov-2005
 *
 */
if (!seguridad::isAllowed(seguridad_action::nameConstructor('selectforemployee', 'user', 'seguridad'))) {
    throw new OOB_exception("Acceso Denegado", "403", "Acceso Denegado. Consulte con su Administrador!", true);
}
global $ari;
$handle = $ari->url->getVars();
$ari->t->caching = 0;
$ari->popup = true;
// valida pos
$pos = 0;
if (isset($_GET['pos']) && OOB_validatetext::isNumeric($_GET['pos']) && $_GET['pos'] > 0) {
    $pos = $_GET['pos'];
}
//levanta el limit
$modulo = new oob_module("personnel");
$limit = $modulo->config()->get('limit', 'employee');
$ari->t->assign('limit', $limit);
$ari->t->assign('total', oob_user::userCountNoAsigned());
$users = array();
if ($return = oob_user::listNoAssigned('uname', $pos, $limit)) {
    // show time
    $i = 0;
    foreach ($return as $u) {
        $users[$i]['id'] = $u->get('user');
        $users[$i]['uname'] = $u->name();
        $users[$i]['unameClean'] = OOB_validatetext::cleanToScript($u->name());
Esempio n. 4
0
 /** Lista los usuarios miembros de los roles que se encuentran 
  *  en el array $roles pasado como paramentro y que tengan el 
  *  estado = USED, ademas lista los usuarios q se encuentren en algun
  *  grupo q sea miembro del algun rol pasado como parametro
  * 	*/
 public static function listAllUsersFor($roles)
 {
     global $ari;
     $roles_array = array();
     //si no es array el parametro lo transformo en uno
     if (!is_array($roles)) {
         $roles_array[0] = $roles;
     } else {
         $roles_array = $roles;
     }
     //recorro el array, y formo la clausula solo con los id
     // de los objetos seguridad_role para usarlo en la clausula in
     $in_string = "";
     $flagFirst = true;
     foreach ($roles_array as $r) {
         if (is_a($r, "seguridad_role")) {
             if ($flagFirst) {
                 $in_string .= $ari->db->qMagic($r->get('role'));
                 $flagFirst = false;
             } else {
                 $in_string .= ',' . $ari->db->qMagic($r->get('role'));
             }
         }
         //end if
     }
     //end foreach
     if ($in_string == "") {
         $ari->error->addError("seguridad_role", "INVALID_ROLE");
         return false;
     }
     $savem = $ari->db->SetFetchMode(ADODB_FETCH_ASSOC);
     //armo la consulta para traer los usuarios miembros del rol
     $sql1 = "SELECT `OOB_User_User`.`ID`, `OOB_User_User`.`Uname`, \n\t\t\t\t\t    `OOB_User_User`.`Password`, `OOB_User_User`.`Email`, \n\t\t\t\t        `OOB_User_User`.`Connections`, `OOB_User_User`.`Status`, \n\t\t\t\t        `OOB_User_User`.`EmployeeID` \n\t\t\t\tFROM `Security_UsersRole`, `OOB_User_User`\n                WHERE `Security_UsersRole`.`UserID` = `OOB_User_User`.`ID`\n\t\t\t\tAND `Security_UsersRole`.`RoleID` IN ({$in_string}) \n\t\t\t\tAND `OOB_User_User`.`Status` = '" . USED . "' \n\t\t\t\t";
     //armo la consulta para traer los usuarios miembros de algun grupo q sea
     //miembro de algun rol
     $sql2 = "SELECT `OOB_User_User`.`ID`, `OOB_User_User`.`Uname`, \n\t\t\t\t\t    `OOB_User_User`.`Password`, `OOB_User_User`.`Email`, \n\t\t\t\t        `OOB_User_User`.`Connections`, `OOB_User_User`.`Status`, \n\t\t\t\t        `OOB_User_User`.`EmployeeID` \n\t\t\t\t FROM `OOB_User_User`, `Security_UsersGroup`\n\t\t\t\t WHERE `Security_UsersGroup`.`UserID` = `OOB_User_User`.`ID`\n\t\t\t\t AND `OOB_User_User`.`Status` = '" . USED . "' \n\t\t\t\t AND `Security_UsersGroup`.`GroupID` IN  \n\t\t\t\t ( SELECT `Security_GroupsRole`.`GroupID` \n\t\t\t\t FROM `Security_GroupsRole` \n\t\t\t\t WHERE `Security_GroupsRole`.`RoleID` IN ({$in_string}) )\n\t\t\t\t ORDER BY 2";
     $sql = $sql1 . " UNION  " . $sql2;
     $rs = $ari->db->Execute($sql);
     $i = 0;
     $ari->db->SetFetchMode($savem);
     if ($rs && !$rs->EOF) {
         while (!$rs->EOF) {
             $return[$i] = new oob_user(ID_UNDEFINED);
             $return[$i]->set("user", $rs->fields["ID"]);
             $return[$i]->set("uname", $rs->fields["Uname"]);
             $return[$i]->set("password", $rs->fields["Password"]);
             $return[$i]->set("email", $rs->fields["Email"]);
             $return[$i]->set("maxcon", $rs->fields["Connections"]);
             $return[$i]->set("status", $rs->fields["Status"]);
             if (!empty($rs->fields['EmployeeID']) && OOB_validatetext::isNumeric($rs->fields['EmployeeID']) && $rs->fields['EmployeeID'] > ID_MINIMAL) {
                 $return[$i]->set('employee', new personnel_employee($rs->fields['EmployeeID']));
             }
             $i++;
             $rs->MoveNext();
         }
     } else {
         $return = false;
     }
     $rs->Close();
     return $return;
 }
Esempio n. 5
0
 * Created on 22/07/2008
 * @author Pablo Micolini (pablo.micolini@nutus.com.ar)
 */
global $ari;
$plantilla_bl = $ari->newTemplate();
$plantilla_bl->caching = 0;
// dynamic content
$language = $ari->get('agent')->getLang();
//var_dump($params);exit;
//validar parametros del bloque
$currency_selected = false;
if (isset($params['currencyID']) && OOB_validatetext::isNumeric($params['currencyID']) && $params['currencyID'] > 0) {
    $currency_selected = $params['currencyID'];
}
$value = '';
if (isset($params['value']) && OOB_validatetext::isNumeric($params['value'])) {
    $value = $params['value'];
}
$prefix = 'currency';
if (isset($params['prefix'])) {
    $prefix = $params['prefix'];
}
if ($currencies = currency_currency::listCurrenciesForLanguage(USED, 'name', $operator = OPERATOR_EQUAL, $language)) {
    $i = 0;
    foreach ($currencies as $c) {
        $array_currencies[$c->get('id')] = $c->get('name') . " (" . $c->get('sign') . ")";
        if ($currency_selected === false && $c->get('default') == YES) {
            $currency_selected = $c->get('id');
        }
        $i++;
    }