neu
This commit is contained in:
@@ -6,7 +6,8 @@ Public Class frmMessenger
|
||||
Dim SQL As New VERAG_PROG_ALLGEMEIN.SQL
|
||||
Dim CHAT As VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat = Nothing
|
||||
Dim MSG_LISTENDER As New cMessangerListender
|
||||
|
||||
Dim topMessages As String = "20"
|
||||
Dim loaded = False
|
||||
Public Sub New()
|
||||
|
||||
' Dieser Aufruf ist für den Designer erforderlich.
|
||||
@@ -23,80 +24,194 @@ Public Class frmMessenger
|
||||
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
|
||||
Dim f As New frmMessenger_NeuerChat
|
||||
f.ShowDialog(Me)
|
||||
|
||||
If f.chat_id > 0 Then
|
||||
'Dim dgv_ChatID = If(dgvChats.SelectedRows.Count > 0, dgvChats.SelectedRows(0).Cells("chat_id").Value, -1)
|
||||
intiDGVChats(f.chat_id)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub frmMessenger_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||
rtbChatMessage.AllowDrop = True
|
||||
MSG_LISTENDER.START()
|
||||
|
||||
intiDGVChats()
|
||||
TimerNEW_MESSAGE.Enabled = True
|
||||
intiDGVChats()
|
||||
|
||||
MyFlowLayoutPanel1.Controls.Clear()
|
||||
'loaded = True
|
||||
End Sub
|
||||
|
||||
Sub intiDGVChats()
|
||||
Sub intiDGVChats(Optional dgv_ChatID = -1, Optional reloadChat = True)
|
||||
With dgvChats
|
||||
|
||||
.DataSource = SQL.loadDgvBySql("SELECT [chat_id],chat_name FROM [tblMessenger_Chat] WHERE [chat_aktiv]=1 AND (SELECT COUNT(*) FROM tblMessenger_ChatMembers WHERE chatMB_chatId=chat_id AND chatMB_maId=" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRID & ")>0", "ADMIN")
|
||||
.DataSource = SQL.loadDgvBySql("SELECT [chat_id],CASE WHEN chat_name<>'' THEN chat_name ELSE (SELECT TOP 1 mit_vname + ' ' + mit_nname FROM tblMessenger_ChatMembers INNER JOIN tblMitarbeiter ON mit_id=chatMb_maId where chatMb_chatId=chat_id AND chatMb_maId <>" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRID & ") END as chat_name
|
||||
,(SELECT REPLACE(COUNT(*),'0','') FROM tblMessenger_ChatMessages INNER JOIN tblMessenger_ChatMessageStatus ON chatMgSt_chatMsgId=chatMg_id WHERE [chat_id]=chatMg_chatId AND chatMgSt_MaId=" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRID & " AND chatMgSt_gelesen=0) as ungelesen
|
||||
FROM [tblMessenger_Chat] WHERE (SELECT COUNT(*) FROM tblMessenger_ChatMembers WHERE chatMB_chatId=chat_id AND chatMB_maId=" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRID & ")>0
|
||||
AND chat_aktiv='" & (Not cbxInaktiveChats.Checked) & "' ORDER BY chat_id", "ADMIN")
|
||||
|
||||
If .Columns.Count = 0 Then Exit Sub
|
||||
|
||||
.Columns("chat_id").Visible = False
|
||||
.Columns("chat_name").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
||||
.Columns("ungelesen").Width = 30
|
||||
.Columns("ungelesen").HeaderText = "neu"
|
||||
.Columns("ungelesen").DefaultCellStyle.ForeColor = Color.White
|
||||
.Columns("ungelesen").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
|
||||
.Columns("ungelesen").DefaultCellStyle.Font = New Font(.Font.FontFamily, 7, FontStyle.Bold)
|
||||
|
||||
Dim loadedTmp = loaded
|
||||
If Not reloadChat Then
|
||||
loaded = False
|
||||
dgvChats.ClearSelection()
|
||||
If dgv_ChatID > 0 Then
|
||||
For Each r As DataGridViewRow In .Rows
|
||||
If r.Cells("chat_id").Value = dgv_ChatID Then
|
||||
dgvChats.ClearSelection()
|
||||
r.Selected = True : Exit For
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
loaded = loadedTmp
|
||||
Else
|
||||
|
||||
dgvChats.ClearSelection()
|
||||
SplitContainer1.Enabled = False
|
||||
|
||||
If dgv_ChatID > 0 Then
|
||||
For Each r As DataGridViewRow In .Rows
|
||||
If r.Cells("chat_id").Value = dgv_ChatID Then
|
||||
dgvChats.ClearSelection()
|
||||
SplitContainer1.Enabled = True
|
||||
r.Selected = True : Exit For
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
'dgvChats.ClearSelection()
|
||||
'SplitContainer1.Enabled = False
|
||||
|
||||
'If dgv_ChatID > 0 Then
|
||||
' For Each r As DataGridViewRow In .Rows
|
||||
' If r.Cells("chat_id").Value = dgv_ChatID Then
|
||||
' dgvChats.ClearSelection()
|
||||
' SplitContainer1.Enabled = True
|
||||
' r.Selected = True : Exit For
|
||||
' End If
|
||||
' Next
|
||||
'End If
|
||||
|
||||
End With
|
||||
rtbChatMessage.Focus()
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub dgvChats_SelectionChanged(sender As Object, e As EventArgs) Handles dgvChats.SelectionChanged
|
||||
If Not loaded Then Exit Sub
|
||||
MyFlowLayoutPanel1.Controls.Clear()
|
||||
If dgvChats.SelectedRows.Count > 0 Then
|
||||
CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(dgvChats.SelectedRows(0).Cells("chat_id").Value)
|
||||
CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(dgvChats.SelectedRows(0).Cells("chat_id").Value, topMessages)
|
||||
SplitContainer1.Enabled = True
|
||||
RELOAD_CHAT()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Sub RELOAD_CHAT()
|
||||
MyFlowLayoutPanel1.Controls.Clear()
|
||||
If CHAT IsNot Nothing Then
|
||||
' CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(dgvChats.SelectedRows(0).Cells("chat_id").Value)
|
||||
For Each MSG In CHAT.CHAT_MESSAGES
|
||||
Try
|
||||
MyFlowLayoutPanel1.Controls.Clear()
|
||||
If CHAT IsNot Nothing Then
|
||||
CHAT.READ_ALL_MESSAGES()
|
||||
' CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(dgvChats.SelectedRows(0).Cells("chat_id").Value)
|
||||
For Each MSG In CHAT.CHAT_MESSAGES
|
||||
|
||||
|
||||
MyFlowLayoutPanel1.Controls.Add(getControlFromMSG(MSG))
|
||||
|
||||
Next
|
||||
' MyFlowLayoutPanel1.VerticalScroll.()
|
||||
'MyFlowLayoutPanel1.AutoScrollPosition = New Point(MyFlowLayoutPanel1.Width, MyFlowLayoutPanel1.Height)
|
||||
' If MyFlowLayoutPanel1.Controls.Count > 0 Then MyFlowLayoutPanel1.ScrollControlIntoView(MyFlowLayoutPanel1.Controls(MyFlowLayoutPanel1.Controls.Count - 1))
|
||||
MyFlowLayoutPanel1.VerticalScroll.Value = MyFlowLayoutPanel1.VerticalScroll.Maximum
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message & ex.StackTrace)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Function getControlFromMSG(MSG As VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_ChatMessages)
|
||||
Select Case MSG.chatMg_type
|
||||
Case "TEXT"
|
||||
|
||||
Dim CHAT_ITEM As New usrCntlMessenger_ChatElement(MSG)
|
||||
checkUsrId(MSG, CHAT_ITEM)
|
||||
|
||||
CHAT_ITEM.txtChatmessage.Text = MSG.chatMg_text
|
||||
'CHAT_ITEM.txtChatmessage.Text = MSG.chatMg_text
|
||||
'CHAT_ITEM.lblName.Text = MSG.chatMg_maId
|
||||
MyFlowLayoutPanel1.Controls.Add(CHAT_ITEM)
|
||||
Next
|
||||
' MyFlowLayoutPanel1.VerticalScroll.()
|
||||
'MyFlowLayoutPanel1.AutoScrollPosition = New Point(MyFlowLayoutPanel1.Width, MyFlowLayoutPanel1.Height)
|
||||
' If MyFlowLayoutPanel1.Controls.Count > 0 Then MyFlowLayoutPanel1.ScrollControlIntoView(MyFlowLayoutPanel1.Controls(MyFlowLayoutPanel1.Controls.Count - 1))
|
||||
MyFlowLayoutPanel1.VerticalScroll.Value = MyFlowLayoutPanel1.VerticalScroll.Maximum
|
||||
End If
|
||||
End Sub
|
||||
Return (CHAT_ITEM)
|
||||
|
||||
|
||||
|
||||
'CHAT.READ_ALL_MESSAGES()
|
||||
|
||||
Case "ATTACHMENT"
|
||||
|
||||
|
||||
Dim CHAT_ITEM As New usrCntlMessenger_ChatAnhang(MSG)
|
||||
checkUsrId(MSG, CHAT_ITEM)
|
||||
' CHAT_ITEM.path = MSG.chatMg_text
|
||||
' CHAT_ITEM.txtChatmessage.Text = MSG.chatMg_text
|
||||
'CHAT_ITEM.lblName.Text = MSG.chatMg_maId
|
||||
Return (CHAT_ITEM)
|
||||
|
||||
End Select
|
||||
End Function
|
||||
|
||||
Sub REFRESH_CHAT()
|
||||
If CHAT IsNot Nothing Then
|
||||
CHAT.LOAD_MESSAGES()
|
||||
Try
|
||||
|
||||
' CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(dgvChats.SelectedRows(0).Cells("chat_id").Value)
|
||||
For Each MSG In CHAT.CHAT_MESSAGES
|
||||
Dim found As Boolean = False
|
||||
For Each I As usrCntlMessenger_ChatElement In MyFlowLayoutPanel1.Controls
|
||||
If I.CHAT_MSG.chatMg_id = MSG.chatMg_id Then
|
||||
found = True
|
||||
If CHAT IsNot Nothing Then
|
||||
CHAT.LOAD_MESSAGES(topMessages)
|
||||
|
||||
' CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(dgvChats.SelectedRows(0).Cells("chat_id").Value)
|
||||
For Each MSG In CHAT.CHAT_MESSAGES
|
||||
Dim found As Boolean = False
|
||||
For Each I In MyFlowLayoutPanel1.Controls
|
||||
Select Case I.GetType.ToString
|
||||
Case GetType(usrCntlMessenger_ChatElement).ToString
|
||||
If DirectCast(I, usrCntlMessenger_ChatElement).CHAT_MSG.chatMg_id = MSG.chatMg_id Then
|
||||
found = True
|
||||
End If
|
||||
Case GetType(usrCntlMessenger_ChatAnhang).ToString
|
||||
If DirectCast(I, usrCntlMessenger_ChatAnhang).CHAT_MSG.chatMg_id = MSG.chatMg_id Then
|
||||
found = True
|
||||
End If
|
||||
End Select
|
||||
|
||||
Next
|
||||
If Not found Then
|
||||
MyFlowLayoutPanel1.Controls.Add(getControlFromMSG(MSG))
|
||||
|
||||
'Dim CHAT_ITEM As New usrCntlMessenger_ChatElement(MSG)
|
||||
'checkUsrId(MSG, CHAT_ITEM)
|
||||
|
||||
''CHAT_ITEM.txtChatmessage.Text = MSG.chatMg_text
|
||||
''CHAT_ITEM.lblName.Text = MSG.chatMg_maId
|
||||
'MyFlowLayoutPanel1.Controls.Add(CHAT_ITEM)
|
||||
CHAT.READ_ALL_MESSAGES()
|
||||
End If
|
||||
Next
|
||||
If Not found Then
|
||||
' MyFlowLayoutPanel1.VerticalScroll.()
|
||||
'MyFlowLayoutPanel1.AutoScrollPosition = New Point(MyFlowLayoutPanel1.Width, MyFlowLayoutPanel1.Height)
|
||||
' If MyFlowLayoutPanel1.Controls.Count > 0 Then MyFlowLayoutPanel1.ScrollControlIntoView(MyFlowLayoutPanel1.Controls(MyFlowLayoutPanel1.Controls.Count - 1))
|
||||
MyFlowLayoutPanel1.VerticalScroll.Value = MyFlowLayoutPanel1.VerticalScroll.Maximum
|
||||
End If
|
||||
|
||||
Dim CHAT_ITEM As New usrCntlMessenger_ChatElement(MSG)
|
||||
checkUsrId(MSG, CHAT_ITEM)
|
||||
|
||||
CHAT_ITEM.txtChatmessage.Text = MSG.chatMg_text
|
||||
'CHAT_ITEM.lblName.Text = MSG.chatMg_maId
|
||||
MyFlowLayoutPanel1.Controls.Add(CHAT_ITEM)
|
||||
End If
|
||||
Next
|
||||
' MyFlowLayoutPanel1.VerticalScroll.()
|
||||
'MyFlowLayoutPanel1.AutoScrollPosition = New Point(MyFlowLayoutPanel1.Width, MyFlowLayoutPanel1.Height)
|
||||
' If MyFlowLayoutPanel1.Controls.Count > 0 Then MyFlowLayoutPanel1.ScrollControlIntoView(MyFlowLayoutPanel1.Controls(MyFlowLayoutPanel1.Controls.Count - 1))
|
||||
MyFlowLayoutPanel1.VerticalScroll.Value = MyFlowLayoutPanel1.VerticalScroll.Maximum
|
||||
End If
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message & ex.StackTrace)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
'Sub ORDER_CHAT_MSG()
|
||||
@@ -129,15 +244,32 @@ Public Class frmMessenger
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Sub checkUsrId(MSG As VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_ChatMessages, CHAT_ITEM As usrCntlMessenger_ChatAnhang)
|
||||
If MSG.chatMg_maId = VERAG_PROG_ALLGEMEIN.cAllgemein.USRID Then
|
||||
CHAT_ITEM.Margin = New Padding(MyFlowLayoutPanel1.Width - CHAT_ITEM.Width - 30, 0, 0, 0)
|
||||
'CHAT_ITEM.Left = (MyFlowLayoutPanel1.Width - CHAT_ITEM.Width - 30)
|
||||
'CHAT_ITEM.Anchor = AnchorStyles.None
|
||||
'CHAT_ITEM.Dock = DockStyle.Right
|
||||
' CHAT_ITEM.Dock = DockStyle.Right
|
||||
CHAT_ITEM.setBgCOLOR(Color.FromArgb(192, 255, 192))
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub btn_Click(sender As Object, e As EventArgs) Handles btn.Click
|
||||
If Not CHAT.chat_aktiv Then MsgBox("Chat inaktiv!") : Exit Sub
|
||||
If rtbChatMessage.Text.Trim <> "" Then
|
||||
If CHAT IsNot Nothing Then
|
||||
|
||||
Dim MSG As New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_ChatMessages(CHAT.chat_id, VERAG_PROG_ALLGEMEIN.cAllgemein.USRID)
|
||||
MSG.chatMg_text = rtbChatMessage.Text.Trim
|
||||
If MSG.SAVE Then
|
||||
MSG.chatMg_maName = VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.Fullname
|
||||
MSG.chatMg_maFirma = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
||||
|
||||
If MSG.SAVE(True, CHAT.CHAT_MEMBERS) Then
|
||||
SEND_TOKEN_NEW_MESSAGE()
|
||||
' CHAT.CHAT_MESSAGES.Add(MSG)
|
||||
SET_ALL_READ()
|
||||
REFRESH_CHAT()
|
||||
rtbChatMessage.Text = ""
|
||||
rtbChatMessage.Focus()
|
||||
@@ -147,7 +279,16 @@ Public Class frmMessenger
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
Sub SET_ALL_READ()
|
||||
For Each u In MyFlowLayoutPanel1.Controls
|
||||
Select Case u.GetType.ToString
|
||||
Case GetType(usrCntlMessenger_ChatElement).ToString
|
||||
DirectCast(u, usrCntlMessenger_ChatElement).lblNewMsg.Visible = False
|
||||
Case GetType(usrCntlMessenger_ChatAnhang).ToString
|
||||
DirectCast(u, usrCntlMessenger_ChatAnhang).lblNewMsg.Visible = False
|
||||
End Select
|
||||
Next
|
||||
End Sub
|
||||
Sub SEND_TOKEN_NEW_MESSAGE()
|
||||
For Each MB In CHAT.CHAT_MEMBERS
|
||||
If MB.chatMb_maId <> VERAG_PROG_ALLGEMEIN.cAllgemein.USRID Then
|
||||
@@ -157,7 +298,7 @@ Public Class frmMessenger
|
||||
If IP <> "" Then
|
||||
Dim SC As New cServerClient ' SC.begin("192.168.0.50", "NEW_MESSAGE") '192.168.0.95 = atlas suben
|
||||
SC.begin(IP, "NEW_MESSAGE")
|
||||
MsgBox(IP)
|
||||
' MsgBox(IP)
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
@@ -182,30 +323,238 @@ Public Class frmMessenger
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
|
||||
If rtbChatMessage.Text.Trim <> "" Then
|
||||
If CHAT IsNot Nothing Then
|
||||
|
||||
Dim MSG As New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_ChatMessages(CHAT.chat_id, VERAG_PROG_ALLGEMEIN.cAllgemein.USRID)
|
||||
MSG.chatMg_text = rtbChatMessage.Text.Trim
|
||||
MSG.chatMg_maId = 99
|
||||
If MSG.SAVE Then
|
||||
' CHAT.CHAT_MESSAGES.Add(MSG)
|
||||
CHAT.LOAD_MESSAGES()
|
||||
REFRESH_CHAT()
|
||||
rtbChatMessage.Text = ""
|
||||
rtbChatMessage.Focus()
|
||||
End If
|
||||
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub TimerNEW_MESSAGE_Tick(sender As Object, e As EventArgs) Handles TimerNEW_MESSAGE.Tick
|
||||
If CHAT IsNot Nothing And VERAG_PROG_ALLGEMEIN.cMessenger.NEW_MESSGE = True Then
|
||||
VERAG_PROG_ALLGEMEIN.cMessenger.NEW_MESSGE = False
|
||||
MsgBox("asd")
|
||||
' MsgBox("asd")
|
||||
REFRESH_CHAT()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub Timer_REFRESH_Tick(sender As Object, e As EventArgs) Handles Timer_REFRESH.Tick
|
||||
loaded = False
|
||||
REFRESH_CHAT()
|
||||
Dim dgv_ChatID = If(dgvChats.SelectedRows.Count > 0, dgvChats.SelectedRows(0).Cells("chat_id").Value, -1)
|
||||
intiDGVChats(dgv_ChatID,False)
|
||||
|
||||
|
||||
|
||||
loaded = True
|
||||
End Sub
|
||||
|
||||
Sub initMsg()
|
||||
Dim dgv_ChatID = If(dgvChats.SelectedRows.Count > 0, dgvChats.SelectedRows(0).Cells("chat_id").Value, -1)
|
||||
'intiDGVChats(dgv_ChatID)
|
||||
End Sub
|
||||
|
||||
Private Sub frmMessenger_Shown(sender As Object, e As EventArgs) Handles Me.Shown
|
||||
dgvChats.ClearSelection()
|
||||
SplitContainer1.Enabled = False
|
||||
loaded = True
|
||||
End Sub
|
||||
|
||||
Private Sub cbxInaktiveChats_CheckedChanged(sender As Object, e As EventArgs) Handles cbxInaktiveChats.CheckedChanged
|
||||
intiDGVChats()
|
||||
If sender.checked Then
|
||||
ChatDeaktivierenToolStripMenuItem.Text = "Chat aktivieren"
|
||||
Else
|
||||
ChatDeaktivierenToolStripMenuItem.Text = "Chat deaktivieren"
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ChatDeaktivierenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ChatDeaktivierenToolStripMenuItem.Click
|
||||
If dgvChats.SelectedRows.Count > 0 Then
|
||||
If vbYes = MsgBox("Möchten Sie diesen Chat wirklich deaktivieren?", vbYesNoCancel) Then
|
||||
|
||||
CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(dgvChats.SelectedRows(0).Cells("chat_id").Value, 1)
|
||||
SplitContainer1.Enabled = True
|
||||
CHAT.chat_aktiv = Not CHAT.chat_aktiv
|
||||
CHAT.SAVE(False)
|
||||
|
||||
intiDGVChats()
|
||||
End If
|
||||
'RELOAD_CHAT()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
'Private Sub dgvChats_CellValueChanged(sender As Object, e As DataGridViewCellEventArgs) Handles dgvChats.CellValueChanged
|
||||
' Try
|
||||
|
||||
' If dgvChats.Columns.Count > 0 Then
|
||||
|
||||
' If e.ColumnIndex = dgvChats.Columns("ungelesen").Index Then
|
||||
' If dgvChats.Rows(e.RowIndex).Cells("ungelesen").Value <> "" Then
|
||||
' dgvChats.Rows(e.RowIndex).Cells("ungelesen").Style.BackColor = Color.Red
|
||||
' End If
|
||||
' 'For Each r As DataGridViewRow In .Rows
|
||||
' ' If r.Cells("chat_id").Value = dgv_ChatID Then
|
||||
' ' dgvChats.ClearSelection()
|
||||
' ' r.Selected = True : Exit For
|
||||
' ' End If
|
||||
|
||||
' ' If r.Cells("ungelesen").Value <> "" Then
|
||||
' ' r.Cells("ungelesen").Style.BackColor = Color.Red
|
||||
' ' End If
|
||||
' 'Next
|
||||
' End If
|
||||
' End If
|
||||
|
||||
' Catch ex As Exception
|
||||
' MsgBox(ex.Message & ex.StackTrace)
|
||||
' End Try
|
||||
'End Sub
|
||||
|
||||
Private Sub dgvChats_CellPainting(sender As Object, e As DataGridViewCellPaintingEventArgs) Handles dgvChats.CellPainting
|
||||
Try
|
||||
|
||||
If dgvChats.Columns.Count > 0 Then
|
||||
|
||||
If e.ColumnIndex = dgvChats.Columns("ungelesen").Index Then
|
||||
If dgvChats.Rows(e.RowIndex).Cells("ungelesen").Value <> "" Then
|
||||
dgvChats.Rows(e.RowIndex).Cells("ungelesen").Style.BackColor = Color.Red
|
||||
End If
|
||||
'For Each r As DataGridViewRow In .Rows
|
||||
' If r.Cells("chat_id").Value = dgv_ChatID Then
|
||||
' dgvChats.ClearSelection()
|
||||
' r.Selected = True : Exit For
|
||||
' End If
|
||||
|
||||
' If r.Cells("ungelesen").Value <> "" Then
|
||||
' r.Cells("ungelesen").Style.BackColor = Color.Red
|
||||
' End If
|
||||
'Next
|
||||
End If
|
||||
End If
|
||||
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message & ex.StackTrace)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
|
||||
If Not CHAT.chat_aktiv Then MsgBox("Chat inaktiv!") : Exit Sub
|
||||
If CHAT IsNot Nothing Then
|
||||
Dim fd As New OpenFileDialog
|
||||
' fd.Filter = "Excel Dateien|*.xls;*.xlsx"
|
||||
fd.RestoreDirectory = True
|
||||
fd.Title = "Datei auswählen"
|
||||
|
||||
' fd.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
|
||||
|
||||
'fd.Filter = "Image Files(*.BMP;*.JPG;*.GIF;*.PNG)|*.BMP;*.JPG;*.GIF;*.PNG"
|
||||
'fd.FilterIndex = 2
|
||||
|
||||
If fd.ShowDialog() = System.Windows.Forms.DialogResult.OK And fd.FileName <> "" Then
|
||||
saveFileAtt(fd.FileName)
|
||||
'Dim fileName = New IO.FileInfo(fd.FileName).Name
|
||||
'Dim docId = -1
|
||||
'If saveToDS(fileName, fd.FileName, docId) Then
|
||||
|
||||
' Dim MSG As New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_ChatMessages(CHAT.chat_id, VERAG_PROG_ALLGEMEIN.cAllgemein.USRID)
|
||||
' MSG.chatMg_type = "ATTACHMENT"
|
||||
' MSG.chatMg_text = fileName
|
||||
' MSG.chatMg_anhang_docId = docId
|
||||
' MSG.chatMg_maName = VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.Fullname
|
||||
' MSG.chatMg_maFirma = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
||||
|
||||
' If MSG.SAVE(True, CHAT.CHAT_MEMBERS) Then
|
||||
' SEND_TOKEN_NEW_MESSAGE()
|
||||
' ' CHAT.CHAT_MESSAGES.Add(MSG)
|
||||
' SET_ALL_READ()
|
||||
' REFRESH_CHAT()
|
||||
' rtbChatMessage.Text = ""
|
||||
' rtbChatMessage.Focus()
|
||||
' End If
|
||||
' End If
|
||||
End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Sub saveFileAtt(filePath)
|
||||
Dim fileName = New IO.FileInfo(filePath).Name
|
||||
Dim docId = -1
|
||||
If saveToDS(fileName, filePath, docId) Then
|
||||
|
||||
Dim MSG As New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_ChatMessages(CHAT.chat_id, VERAG_PROG_ALLGEMEIN.cAllgemein.USRID)
|
||||
MSG.chatMg_type = "ATTACHMENT"
|
||||
MSG.chatMg_text = fileName
|
||||
MSG.chatMg_anhang_docId = docId
|
||||
MSG.chatMg_maName = VERAG_PROG_ALLGEMEIN.cAllgemein.MITARBEITER.Fullname
|
||||
MSG.chatMg_maFirma = VERAG_PROG_ALLGEMEIN.cAllgemein.FIRMA
|
||||
|
||||
If MSG.SAVE(True, CHAT.CHAT_MEMBERS) Then
|
||||
SEND_TOKEN_NEW_MESSAGE()
|
||||
' CHAT.CHAT_MESSAGES.Add(MSG)
|
||||
SET_ALL_READ()
|
||||
REFRESH_CHAT()
|
||||
rtbChatMessage.Text = ""
|
||||
rtbChatMessage.Focus()
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
Public Shared Function saveToDS(fileName, sourcePath, Optional ByRef da_id = -1) As Boolean
|
||||
Dim DS As New VERAG_PROG_ALLGEMEIN.cDATENSERVER("DOKUMENTE", "CHAT_ANHAENGE", Now.ToString("ddMMyy_HHmmss.ffff"), "", "", fileName, -1, False)
|
||||
If Not DS.uploadDataToDATENSERVER(sourcePath) Then MsgBox("Fehler beim Speichern: Datenserver!") : Return False
|
||||
If DS.da_id <= 0 Then MsgBox("Keine DocId!") : Return False
|
||||
da_id = DS.da_id
|
||||
' destPath = DS.GET_TOP1_PATH
|
||||
Return True
|
||||
End Function
|
||||
|
||||
|
||||
Private Sub dgvChats_CellMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles dgvChats.CellMouseClick
|
||||
If e.Button = MouseButtons.Right Then
|
||||
|
||||
If e.RowIndex > 0 Then
|
||||
If dgvChats.Rows.Count > 0 Then
|
||||
|
||||
'Dim chatId = dgvChats.Rows(e.RowIndex).Cells("chat_id").Value
|
||||
'VERAG_PROG_ALLGEMEIN.cMessenger.GEN_NEW_CHAT()
|
||||
dgvChats.ClearSelection()
|
||||
SplitContainer1.Enabled = False
|
||||
CHAT = Nothing
|
||||
End If
|
||||
dgvChats.Rows(e.RowIndex).Selected = True
|
||||
cntxt.Show(Cursor.Position)
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
|
||||
If CHAT IsNot Nothing Then
|
||||
|
||||
Dim f As New frmMessenger_Members(CHAT)
|
||||
f.ShowDialog(Me)
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Private Sub Form1_DragEnter(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles rtbChatMessage.DragEnter ', txt.DragEnter, Me.DragEnter, picPDF.DragEnter
|
||||
e.Effect = DragDropEffects.All
|
||||
End Sub
|
||||
Private Sub txt_Click(sender As Object, e As DragEventArgs) Handles rtbChatMessage.DragDrop ', txt.DragDrop, Me.DragDrop, picPDF.DragDrop
|
||||
Try
|
||||
If e.Data.GetDataPresent("FileDrop", True) = True Then
|
||||
Dim FileList As String() = CType(e.Data.GetData("FileDrop"), Object) 'Hier wird der Variable "Wert" das übergeben, was wir auf die Form gezogen haben. Bei einer Datei wäre es dann der Pfad der Datei.
|
||||
If FileList.Count > 0 Then
|
||||
'If Not _MULTI_FILES And FileList.Count > 1 Then
|
||||
' MsgBox("Es können nicht mehrere Dateien hochgeladen werden!")
|
||||
' Exit Sub
|
||||
'End If
|
||||
For Each W In FileList
|
||||
If Not W.ToUpper.EndsWith(".EXE") Then
|
||||
saveFileAtt(W)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
Catch ex As Exception
|
||||
MsgBox(" FEHLER: DaagDrop!" & ex.Message & ex.StackTrace)
|
||||
End Try
|
||||
End Sub
|
||||
End Class
|
||||
Reference in New Issue
Block a user