Update nach Sync GRC und aktueller Version
This commit is contained in:
95
Vertragsverwaltung/Klassen/clsValidator.vb
Normal file
95
Vertragsverwaltung/Klassen/clsValidator.vb
Normal file
@@ -0,0 +1,95 @@
|
||||
Imports System.IO
|
||||
Imports System.Text.RegularExpressions
|
||||
Imports System.Data.SqlDbType
|
||||
Imports System.Data.SqlClient
|
||||
|
||||
Public Class clsValidator
|
||||
Dim m_result As String
|
||||
Property Resultmessage As String
|
||||
Get
|
||||
Return m_result
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_result = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Dim Connectionstring As String
|
||||
Dim ds As New DataSet
|
||||
|
||||
Sub New()
|
||||
Me.Connectionstring = Globals.sConnectionString
|
||||
End Sub
|
||||
|
||||
Sub Get_Validatordata()
|
||||
Dim scmCmdToExecute As SqlCommand = New SqlCommand()
|
||||
Dim dtToReturn As DataTable = New DataTable()
|
||||
Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute)
|
||||
scmCmdToExecute.CommandText = "select * from URLValidate where aktiv=1 order by nreintrag"
|
||||
scmCmdToExecute.CommandType = CommandType.Text
|
||||
scmCmdToExecute.Connection = conn.scoDBConnection
|
||||
Try
|
||||
sdaAdapter.Fill(dtToReturn)
|
||||
ds.Tables.Clear()
|
||||
ds.Tables.Add(dtToReturn)
|
||||
Catch ex As Exception
|
||||
MsgBox("URL-Validator:" + ex.Message)
|
||||
Finally
|
||||
scmCmdToExecute.Dispose()
|
||||
sdaAdapter.Dispose()
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Public Function VerifyString(ByVal inputstring As String) As Boolean
|
||||
If Trim(inputstring) = "" Then
|
||||
Return True
|
||||
Exit Function
|
||||
|
||||
End If
|
||||
Get_Validatordata()
|
||||
Me.Resultmessage = ""
|
||||
For Each r As DataRow In ds.Tables(0).Rows
|
||||
If r.Item("Regex") = True Then
|
||||
Dim regex As System.Text.RegularExpressions.Regex = New System.Text.RegularExpressions.Regex(r.Item("Regel"))
|
||||
Dim match As Match = regex.Match(inputstring)
|
||||
If r.Item("zwingend") And match.Success = False Then
|
||||
Me.Resultmessage = r.Item("Meldung")
|
||||
Return False
|
||||
End If
|
||||
If r.Item("nicht_erlaubt") And match.Success = True Then
|
||||
Me.Resultmessage = r.Item("Meldung")
|
||||
Return False
|
||||
End If
|
||||
regex = Nothing
|
||||
Else
|
||||
Dim sp As String()
|
||||
sp = UCase(r.Item("Regel")).ToString.Split("|")
|
||||
Dim treffer As Integer = 0
|
||||
|
||||
If r.Item("zwingend") = True Then
|
||||
For i As Integer = 0 To sp.Count - 1
|
||||
If sp(i) <> "|" Then If UCase(inputstring).IndexOf(sp(i)) > -1 Then treffer = treffer + 1
|
||||
Next
|
||||
If treffer = 0 Then
|
||||
Me.Resultmessage = r.Item("meldung")
|
||||
Return False
|
||||
End If
|
||||
End If
|
||||
If r.Item("nicht_erlaubt") = True Then
|
||||
For i As Integer = 0 To sp.Count - 1
|
||||
If sp(i) <> "|" Then If UCase(inputstring).IndexOf(sp(i)) > -1 Then treffer = treffer + 1
|
||||
Next
|
||||
If treffer > 0 Then
|
||||
Me.Resultmessage = r.Item("meldung")
|
||||
Return False
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
Next
|
||||
|
||||
Return True
|
||||
End Function
|
||||
End Class
|
||||
Reference in New Issue
Block a user