geofox

Chat Privado

Nov 25th, 2012
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Imports System.Data
  2. Imports System.Data.OleDb
  3. Public Class chat_privado
  4.     Inherits System.Web.UI.Page
  5.  
  6.     Dim Conexion As Conexion = New Conexion()
  7.     Dim DA As OleDbDataAdapter
  8.     Dim DS As DataSet
  9.     Dim CMD As OleDbCommand
  10.     Dim Tabla As DataTable
  11.  
  12.     Dim Idprivado As Integer
  13.  
  14.     Dim Usuario As String
  15.     Dim Privado As String
  16.  
  17.     Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
  18.         Usuario = Request.QueryString("usuario")
  19.         Privado = Request.QueryString("privado")
  20.  
  21.         lblconectado.Text = Usuario
  22.         lblprivado.Text = Privado
  23.  
  24.     End Sub
  25.  
  26.     Public Function Extraer_Idprivado(ByVal Id_usuario As Integer, ByVal Id_privado As Integer) As Integer
  27.  
  28.         Dim id As Integer = 0
  29.  
  30.         Dim userID_R As DataTable = New DataTable
  31.         Dim userID_D As DataTable = New DataTable
  32.  
  33.         userID_R = Verificar_R(Id_usuario)
  34.  
  35.         userID_D = Verificar_D(Id_usuario)
  36.  
  37.         If (userID_R.Rows.Count = 1) Then
  38.  
  39.             Tabla = New DataTable()
  40.  
  41.             Tabla = Buscar_PrivadoR(Id_usuario, Id_privado)
  42.  
  43.  
  44.             If (Tabla.Rows.Count = 1) Then
  45.  
  46.                 id = Tabla.Rows(0)("Idprivado")
  47.  
  48.             End If
  49.  
  50.  
  51.         End If
  52.  
  53.  
  54.  
  55.         If (userID_D.Rows.Count = 1) Then
  56.  
  57.             Tabla = New DataTable()
  58.  
  59.             Tabla = Buscar_PrivadoD(Id_usuario, Id_privado)
  60.  
  61.             If (Tabla.Rows.Count = 1) Then
  62.  
  63.                 id = Tabla.Rows(0)("Idprivado")
  64.  
  65.             End If
  66.  
  67.  
  68.         End If
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.         Return id
  76.  
  77.  
  78.  
  79.     End Function
  80.     Public Function Extraer_userID(ByVal usuario As String) As DataTable
  81.  
  82.  
  83.         Dim consulta As String = "SELECT userID FROM usuarios WHERE Usuario='" + usuario.ToString() + "'"
  84.  
  85.  
  86.         DA = New OleDbDataAdapter(consulta, Conexion.DB)
  87.  
  88.         DS = New DataSet()
  89.         DS.Reset()
  90.  
  91.         DA.Fill(DS)
  92.  
  93.         Tabla = New DataTable()
  94.         Tabla = DS.Tables(0)
  95.  
  96.  
  97.         Return Tabla
  98.  
  99.     End Function
  100.  
  101.  
  102.     Public Function Verificar_R(ByVal userID_R As Integer) As DataTable
  103.  
  104.         Dim consulta As String = "SELECT Idprivado FROM chat_privado WHERE userID_R=" & userID_R.ToString()
  105.  
  106.         DA = New OleDbDataAdapter(consulta, Conexion.DB)
  107.  
  108.         DS = New DataSet()
  109.         DS.Reset()
  110.  
  111.         DA.Fill(DS)
  112.  
  113.         Tabla = New DataTable()
  114.         Tabla = DS.Tables(0)
  115.  
  116.  
  117.         Return Tabla
  118.  
  119.  
  120.  
  121.     End Function
  122.     Public Function Verificar_D(ByVal userID_D As Integer) As DataTable
  123.  
  124.         Dim consulta As String = "select idprivado from chat_privado where userID_D=" & userID_D.ToString()
  125.  
  126.  
  127.         DA = New OleDbDataAdapter(consulta, Conexion.DB)
  128.  
  129.         DS = New DataSet()
  130.         DS.Reset()
  131.  
  132.         DA.Fill(DS)
  133.  
  134.         Tabla = New DataTable()
  135.         Tabla = DS.Tables(0)
  136.  
  137.  
  138.         Return Tabla
  139.  
  140.  
  141.  
  142.     End Function
  143.  
  144.     Public Function Buscar_PrivadoR(ByVal userID_R As Integer, userID_D As Integer) As DataTable
  145.  
  146.         Dim consulta As String = "SELECT Idprivado FROM chat_privado WHERE userID_R=" & userID_R.ToString() & "AND userID_D=" & userID_D.ToString()
  147.  
  148.  
  149.         DA = New OleDbDataAdapter(consulta, Conexion.DB)
  150.  
  151.         DS = New DataSet()
  152.         DS.Reset()
  153.  
  154.         DA.Fill(DS)
  155.  
  156.         Tabla = New DataTable()
  157.         Tabla = DS.Tables(0)
  158.  
  159.  
  160.         Return Tabla
  161.  
  162.  
  163.  
  164.     End Function
  165.  
  166.     Public Function Buscar_PrivadoD(ByVal userID_D As Integer, userID_R As Integer) As DataTable
  167.  
  168.         Dim consulta As String = "SELECT Idprivado FROM chat_privado WHERE userID_D=" & userID_D.ToString() & "AND userID_R=" & userID_R.ToString()
  169.  
  170.  
  171.         DA = New OleDbDataAdapter(consulta, Conexion.DB)
  172.  
  173.         DS = New DataSet()
  174.         DS.Reset()
  175.  
  176.         DA.Fill(DS)
  177.  
  178.         Tabla = New DataTable()
  179.         Tabla = DS.Tables(0)
  180.  
  181.  
  182.         Return Tabla
  183.  
  184.  
  185.  
  186.     End Function
  187.  
  188.     Public Function Iniciar_Privado(ByVal userID_R As Integer, ByVal userID_D As Integer) As Integer
  189.         Dim Estado As Integer
  190.  
  191.         Dim Insertar As String = "insert into chat_privado(userID_R,userID_D)values(@R,@D)"
  192.         CMD = New OleDbCommand(Insertar, Conexion.DB)
  193.  
  194.         CMD.Parameters.AddWithValue("@R", userID_R)
  195.         CMD.Parameters.AddWithValue("@D", userID_D)
  196.  
  197.         Conexion.Conectar()
  198.         Estado = CMD.ExecuteNonQuery()
  199.  
  200.         Conexion.Desconectar()
  201.  
  202.         Return Estado
  203.  
  204.  
  205.     End Function
  206.  
  207.     Public Function Insertar_Msg(ByVal Msg As String, ByVal Fecha As String, ByVal enviado_por As Integer, Idpriv As Integer) As Integer
  208.         Dim Estado As Integer
  209.  
  210.         Dim Insertar As String = "insert into mensajes_privado(Mensaje,Fecha,Enviado_por,Idprivado)values(@Msg,@Fecha,@env_por,@Idprivado)"
  211.         CMD = New OleDbCommand(Insertar, Conexion.DB)
  212.  
  213.         CMD.Parameters.AddWithValue("@Msg", Msg)
  214.         CMD.Parameters.AddWithValue("@Fecha", Fecha)
  215.         CMD.Parameters.AddWithValue("@env_por", enviado_por)
  216.         CMD.Parameters.AddWithValue("@Idprivado", Idpriv)
  217.  
  218.         Conexion.Conectar()
  219.         Estado = CMD.ExecuteNonQuery()
  220.  
  221.         Conexion.Desconectar()
  222.  
  223.         Return Estado
  224.  
  225.  
  226.     End Function
  227.  
  228.     Protected Sub btnEnviar_Click(sender As Object, e As EventArgs) Handles btnEnviar.Click
  229.  
  230.  
  231.         If txtEnviar.Text.Trim().Length = 0 Then
  232.             lblescriba.Visible = True
  233.             txtEnviar.Focus()
  234.             txtMsg.Text = ""
  235.         Else
  236.  
  237.             Dim msg As String
  238.             Dim Insertar As Integer
  239.             Dim Iniciar As Integer
  240.             msg = txtEnviar.Text
  241.  
  242.             Dim tabla_usuario As DataTable = New DataTable()
  243.  
  244.             tabla_usuario = Extraer_userID(Usuario)
  245.  
  246.  
  247.             Dim tabla_privado As DataTable = New DataTable()
  248.  
  249.  
  250.             tabla_privado = Extraer_userID(Privado)
  251.  
  252.             Idprivado = Extraer_Idprivado(tabla_usuario.Rows(0)("userID"), tabla_privado.Rows(0)("userID"))
  253.  
  254.  
  255.             If (Idprivado = 0) Then
  256.  
  257.                 Iniciar = Iniciar_Privado(tabla_usuario.Rows(0)("userID"), tabla_privado.Rows(0)("userID"))
  258.  
  259.                 If (Iniciar = 1) Then
  260.  
  261.  
  262.                     Idprivado = Extraer_Idprivado(tabla_usuario.Rows(0)("userID"), tabla_privado.Rows(0)("userID"))
  263.  
  264.                     Insertar = Insertar_Msg(msg, DateTime.Now.ToString("dd/MM/yyyy"), tabla_usuario.Rows(0)("userID"), Idprivado)
  265.  
  266.                     If (Insertar = 1) Then
  267.  
  268.                         txtEnviar.Text = ""
  269.                         txtMsg.Text = ""
  270.  
  271.  
  272.                     End If
  273.  
  274.  
  275.                 End If
  276.  
  277.             Else
  278.  
  279.  
  280.                 Insertar = Insertar_Msg(msg, DateTime.Now.ToString("dd/MM/yyyy"), tabla_usuario.Rows(0)("userID"), Idprivado)
  281.  
  282.                 If (Insertar = 1) Then
  283.  
  284.                     txtEnviar.Text = ""
  285.                     txtMsg.Text = ""
  286.  
  287.  
  288.                 End If
  289.  
  290.             End If
  291.  
  292.  
  293.             End If
  294.  
  295.     End Sub
  296. End Class
Advertisement
Add Comment
Please, Sign In to add comment