db()->queryRow('SELECT cuentas.*, usuarioscuentas.role FROM usuarioscuentas LEFT JOIN cuentas ON cuentas.id = usuarioscuentas.cuenta_id WHERE usuarioscuentas.usuario_id = :usuario_id AND usuarioscuentas.cuenta_id = :cuenta_id', array( 'usuario_id' => webApp::app()->getUsuarioId(), 'cuenta_id' => $id, )); if ($cuenta and $cuenta->role != CuentaRole::ROLE_NONE) { $_SESSION['cuenta_sel_id'] = $cuenta->id; return true; } return false; } static public function getSelected() { static $cuentaSel; if ($cuentaSel) return $cuentaSel; if (isset($_SESSION['cuenta_sel_id'])) { $cuenta = webApp::app()->db()->queryRow('SELECT cuentas.*, usuarioscuentas.role FROM usuarioscuentas LEFT JOIN cuentas ON cuentas.id = usuarioscuentas.cuenta_id WHERE usuarioscuentas.usuario_id = :usuario_id AND usuarioscuentas.cuenta_id = :cuenta_id', array( 'usuario_id' => webApp::app()->getUsuarioId(), 'cuenta_id' => $_SESSION['cuenta_sel_id'] )); if ($cuenta) { $cuentaSel = new Cuenta(); $cuentaSel->id = $_SESSION['cuenta_sel_id']; $cuentaSel->cuenta = $cuenta->cuenta; $cuentaSel->role = webApp::app()->getRole() == webApp::ROLE_ADMIN ? webApp::ROLE_ADMIN : $cuenta->role; return $cuentaSel; } } return false; } }