Imports System.Data.OleDb
Partial Class Login
Inherits System.Web.UI.Page
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Request.Form("btnLogin") <> "" Then
Dim sToken As String = GetToken(Request.Form("selUserName"))
If sToken <> "" Then
Response.Cookies("token").Value = sToken
Response.Redirect("../ReportPortal/login.aspx")
End If
End If
End Sub
Public Function GetToken(ByVal sUserName As String) As String
Dim sSql As String = "exec GetSecurityTokenForUser @UserName='" & sUserName & "'"
Return GetSingleSqlValue(sSql)
End Function
Private Function GetConnection() As OleDbConnection
Dim sFilePath As String = Server.MapPath("xmla.udl")
Dim sConnectionString As String = "File Name=" & sFilePath
Dim cn As OleDbConnection = New OleDbConnection(sConnectionString)
Try
cn.Open()
Catch ex As Exception
Throw New Exception("Could not connect to the database. Please double click " & sFilePath & " and point it to ReportPortal database. Make sure to save the connection and check the option to 'Allow saving password'.")
End Try
Return cn
End Function
Public Function GetSingleSqlValue(ByVal sSql As String) As String
Dim sRet As String
Dim cn As OleDbConnection = GetConnection()
Dim cmd As New OleDbCommand(sSql, cn)
Try
sRet = cmd.ExecuteScalar()
Catch ex As Exception
Throw New Exception(ex.Message & "; SQL: " & sSql)
End Try
cn.Close()
Return sRet
End Function
Public Function GetUserList() As String
Dim sSql As String = "SELECT UserId, UserName FROM AppUser"
Dim cmd As OleDbCommand = New OleDbCommand(sSql, GetConnection())
Dim dr As OleDbDataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection)
Dim sb As New System.Text.StringBuilder
While dr.Read
Dim sUserName As String = dr.GetValue(dr.GetOrdinal("UserName"))
sb.Append("<option value=" & sUserName & ">" & sUserName & "</option>" & vbCrLf)
End While
dr.Close()
Return sb.ToString
End Function
End Class