Benutzerberechtigungen eingebaut

This commit is contained in:
ms
2019-08-19 09:32:57 +02:00
parent 43c151d184
commit f470bce279
19 changed files with 610 additions and 154 deletions

View File

@@ -7,7 +7,8 @@
Private Sub frmAllgemeinEintrag_Load(sender As Object, e As EventArgs) Handles Me.Load
CmdTest.Visible = Class1.DebugMode
FillIn()
If GetRights() = "R" Then
If Eintrag.Berechtigung = "R" Then
' MsgBox("nur Leserecht")
PanTop.Enabled = False : TxtInfo.Enabled = False : PanWrite.Enabled = False
End If
End Sub
@@ -72,10 +73,138 @@
frm.Show()
End Sub
Function GetRights() As String
Berechtigung.Benutzeranmeldename = Class1.LoggedOnUser.BenutzeranmeldeName
Berechtigung.Standort = Eintrag.ID
Berechtigung.getFromSQL()
Return Berechtigung.Zugriff
Private Sub CmdAbbrechen_Click(sender As Object, e As EventArgs) Handles CmdAbbrechen.Click
Me.Close()
End Sub
Private Sub CmdDateien_Click(sender As Object, e As EventArgs) Handles CmdDateien.Click
openfilepath()
End Sub
Private Function openfilepath(Optional ByVal returnonlypath As Boolean = False)
Dim ds As New DataSet()
Dim islinked As Integer
Dim LinkedWith As String = ""
Dim path As String = ""
Try
'dbload()
'con.Open()
'Dim sda As New SqlDataAdapter("SELECT * FROM TbL_Allgemein WHERE " & abfrage & "", con)
'sda.Fill(ds)
'con.Close()
SQL.SQL2DS("SELECT * FROM TbL_Allgemein WHERE Rubrik='" & Eintrag.rubrik & "' AND Titel='" & Eintrag.Titel & "'", ds)
Dim Info As String = ds.Tables(0).Rows(0).Item("Info")
If IsDBNull(ds.Tables(0).Rows(0).Item("Linked")) Then
islinked = "0"
ElseIf Not IsDBNull(ds.Tables(0).Rows(0).Item("Linked")) Then
islinked = ds.Tables(0).Rows(0).Item("Linked")
End If
If IsDBNull(ds.Tables(0).Rows(0).Item("LinkedWith")) Then
LinkedWith = ""
ElseIf Not IsDBNull(ds.Tables(0).Rows(0).Item("LinkedWith")) Then
LinkedWith = ds.Tables(0).Rows(0).Item("LinkedWith")
End If
If islinked = "1" Then
Dim dslinked As New DataSet()
SQL.SQL2DS("SELECT * FROM Tbl_Allgemein WHERE LinkedWith='" & LinkedWith & "'", dslinked)
path = Class1.FilePath & "\" & dslinked.Tables(0).Rows(0).Item("Rubrik") & "\" & dslinked.Tables(0).Rows(0).Item("Titel") '& "\" & dslinked.Tables(0).Rows(0).Item("Host")
Else
'MsgBox("not linked")
path = Class1.FilePath & "\" & Eintrag.rubrik & "\" & Eintrag.Titel '& "\" & SenderHost
End If
Catch ex As Exception
MsgBox("openfilepath() Tbl_Allgemein: " & ex.Message)
End Try
''Pfad öffnen:
If returnonlypath = True Then
Return path
Exit Function
End If
Try
If IO.Directory.Exists(path) Then
Process.Start(path)
Else
IO.Directory.CreateDirectory(path)
Process.Start(path)
End If
Catch ex As Exception
End Try
End Function
Private Sub CmdDelete_Click(sender As Object, e As EventArgs) Handles CmdDelete.Click
Dim path As String
path = openfilepath(True) 'Class1.FilePath & "\" & Rubrik & "\" & Titel
If MsgBox("Eintrag wirklich löschen?", MsgBoxStyle.OkCancel) = MsgBoxResult.Ok Then
If MessageBox.Show("Dazugehörigen Ordner im Dateisystem löschen?", "Dateien löschen", MessageBoxButtons.YesNo) = DialogResult.Yes Then
deleteFiles(path, Eintrag.rubrik)
ElseIf DialogResult.No Then
Exit Sub
End If
SQL.DeleteSQL("TbL_Allgemein", "ID = '" & Eintrag.ID & "'")
' Main.LstStandortLoad()
Me.Close()
Else
Exit Sub
End If
End Sub
Private Function deleteFiles(path As String, Rubrik As String)
Dim rubrikpath As String = Class1.FilePath & "\" & Rubrik
Try
If IO.Directory.Exists(path) Then
Dim files As String() = IO.Directory.GetFiles(path)
For Each file As String In files
IO.File.Delete(file)
Next
IO.Directory.Delete(path, True)
Else
'MsgBox("Kein Ordner zum Löschen gefunden: wird übersprungen.")
End If
Catch ex As Exception
MsgBox("Beim Löschen der Dateien: " & ex.Message)
End Try
''Überprüfen, ob letzter Eintrag der Rubrik bzw. ob Odner der Rubrik leer ist:
Try
If IO.Directory.Exists(rubrikpath) Then
Dim files As String() = IO.Directory.GetFiles(rubrikpath)
Dim folder As String() = IO.Directory.GetDirectories(rubrikpath)
Dim out As String = ""
For Each row As String In files
out &= row
Next
For Each row As String In folder
out &= row
Next
If out IsNot "" Then
Exit Function
Else
IO.Directory.Delete(rubrikpath, True)
End If
Else
'MsgBox("Kein Ordner zum Löschen gefunden: wird übersprungen.")
End If
Catch ex As Exception
MsgBox("Beim Löschen der Dateien: " & ex.Message)
End Try
End Function
Private Sub CmdReset_Click(sender As Object, e As EventArgs) Handles CmdReset.Click
FillIn()
End Sub
End Class