+ // +X2C Operation 370
+ /**
+ * Modifica la base de datos segun accion
+ *
+ * @param string $accion Indica la accion a realizar
+ *
+ * @return mixed
+ * @access public
+ */
+ function guardarDatos($accion = grabar) // ~X2C
+ {
+ $accion = strtolower($accion);
+ switch ($accion) {
+ case 'grabar':
+ $res = $this->_grabarDb();
+ break;
+ case 'modificar':
+ $res = $this->_modificarDb();
+ break;
+ case 'eliminar':
+ $res = $this->_borrarDb();
+ break;
+ }
+ return $res;
+ }
+ // -X2C
+
+ // +X2C Operation 371
+ /**
+ * Graba en base la relacion
+ *
+ * @return mixed
+ * @access protected
+ */
+ function _grabarDb() // ~X2C
+ {
+ $datos = array ('login', 'id_perfil', 'id_sistema', 'responsable');
+ $re = $this->_db->autoPrepare('perfil_sist_usuario', $datos, DB_AUTOQUERY_INSERT);
+ foreach ($this->getPerfiles() as $perfil) {
+ $datos = array ($this->getLogin(),
+ $perfil,
+ $_SESSION['samurai']['id_sistema'],
+ $_SESSION['samurai']['login']);
+ $res = $this->_db->execute($re, $datos);
+ if (PEAR::isError($res)) {
+ return $res;
+ }
+ }
+ }
+ // -X2C
+
+ // +X2C Operation 372
+ /**
+ * Borra de la base la relacion
+ *
+ * @return mixed
+ * @access protected
+ */
+ function _borrarDb() // ~X2C
+ {
+ $sql = parse_ini_file(dirname(__FILE__) . '/Usuario/consultas.ini', true);
+ $tmp = $sql['borrar'];
+ $dbh = $this->_db->prepare($tmp);
+ $tmp = array ($this->getLogin(), $_SESSION['samurai']['id_sistema']);
+ return $this->_db->execute($dbh,$tmp);
+ }
+ // -X2C
+
+ // +X2C Operation 373
+ /**
+ * Actualiza los datos de la relacion
+ *
+ * @return mixed
+ * @access protected
+ */
+ function _modificarDb() // ~X2C
+ {
+ $this->_borrarDb();
+ $this->_grabarDb();
+ }
+ // -X2C
+
+ // +X2C Operation 374
+ /**
+ * Verifica si el login actual es valido
+ *
+ * @return mixed
+ * @access public
+ */
+ function verificarLogin() // ~X2C
+ {
+ $usu = new MECON_Usuario();
+ $tmp = $usu->verificarLogin($this->getLogin());
+ if ($tmp) {
+ if (PEAR::isError($tmp)) {
+ return $tmp;
+ }
+ else {
+ return true;
+ }
+ }
+ else {
+ return new PEAR_Error('Usuario no reconocido.<br>Recuerde que éste debe haberse logueado previamente a Intranet');
+ }
+ }
+ // -X2C