210 lines
7.4 KiB
VB.net
210 lines
7.4 KiB
VB.net
Public Class frmAllgemeinEintrag
|
|
|
|
Property Eintrag As New cEintrag
|
|
Property Berechtigung As New cBerechtigungen
|
|
Property NewID As Boolean = False
|
|
|
|
Private Sub frmAllgemeinEintrag_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
CmdTest.Visible = Class1.DebugMode
|
|
FillIn()
|
|
If Eintrag.Berechtigung = "R" Then
|
|
' MsgBox("nur Leserecht")
|
|
PanTop.Enabled = False : TxtInfo.Enabled = False : PanWrite.Enabled = False
|
|
End If
|
|
End Sub
|
|
|
|
Function FillIn()
|
|
TxtRubrik.Text = Eintrag.rubrik
|
|
TxtTitel.Text = Eintrag.Titel
|
|
TxtInfo.Text = Eintrag.Info
|
|
TxtBenutzername.Text = Eintrag.Benutzer
|
|
TxtKennwort.Text = Eintrag.Passwort
|
|
TxtLink.Text = Eintrag.Link
|
|
End Function
|
|
|
|
Function ReadOut()
|
|
Eintrag.rubrik = TxtRubrik.Text
|
|
Eintrag.Titel = TxtTitel.Text
|
|
Eintrag.Info = Class1.hochkomma(TxtInfo.Text)
|
|
Eintrag.Benutzer = TxtBenutzername.Text
|
|
Eintrag.Passwort = TxtKennwort.Text
|
|
Eintrag.Link = TxtLink.Text
|
|
End Function
|
|
|
|
|
|
Private Sub ChkKennwortAnzeigen_CheckedChanged(sender As Object, e As EventArgs) Handles ChkKennwortAnzeigen.CheckedChanged
|
|
If ChkKennwortAnzeigen.Checked Then
|
|
TxtKennwort.PasswordChar = ""
|
|
Else
|
|
TxtKennwort.PasswordChar = "*"
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub CmdLink_Click(sender As Object, e As EventArgs) Handles CmdLink.Click
|
|
cExtProgramme.startlink(TxtLink.Text)
|
|
End Sub
|
|
|
|
Private Sub CmdTest_Click(sender As Object, e As EventArgs) Handles CmdTest.Click
|
|
MsgBox(Eintrag.ID)
|
|
End Sub
|
|
|
|
Private Sub CmdSave_Click(sender As Object, e As EventArgs) Handles CmdSave.Click
|
|
ReadOut()
|
|
Eintrag.Save()
|
|
End Sub
|
|
|
|
Private Sub btnBerechtigungen_Click(sender As Object, e As EventArgs) Handles btnBerechtigungen.Click
|
|
CmdSave.PerformClick()
|
|
Dim i As Integer = 0
|
|
Dim frm As New frmLeer
|
|
frm.Text = "Berechtigungen für " & Eintrag.Titel
|
|
|
|
For Each Benutzer As cBenutzer In Class1.GroupUsers
|
|
Dim usrcntrl As New uscntr_Berechtigungen
|
|
usrcntrl.User = Benutzer
|
|
usrcntrl.Standort = Eintrag.ID
|
|
usrcntrl.lblName.Text = Benutzer.Vorname & " " & Benutzer.Nachname
|
|
usrcntrl.Berechtigung.StandardZugriff = "W"
|
|
usrcntrl.Location = New Point(0, i * usrcntrl.Height)
|
|
i = i + 1
|
|
frm.PanMain.Controls.Add(usrcntrl)
|
|
Next
|
|
|
|
frm.Show()
|
|
End Sub
|
|
|
|
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()
|
|
|
|
cSQL.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()
|
|
|
|
|
|
cSQL.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
|
|
cSQL.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 |