Dakosy, Chat, Feiertage, Formulare (AMBAR)
This commit is contained in:
@@ -13,9 +13,11 @@ Public Class frmMessenger
|
||||
Public EMOJI_PATH_MAIN = DATENVERVER_OPTIONS.getRootDir & "\DOKUMENTE\CHAT_EMOJIS\"
|
||||
Public EMOJI_PATH = ""
|
||||
Public AvisoId As Integer = -1
|
||||
Public SendungID As Integer = -1
|
||||
|
||||
Dim alloweasteregg = False
|
||||
|
||||
Dim toggle_CHAT_ART = "CHAT"
|
||||
Public Sub New()
|
||||
|
||||
' Dieser Aufruf ist für den Designer erforderlich.
|
||||
@@ -82,21 +84,32 @@ Public Class frmMessenger
|
||||
MSG_LISTENDER.START()
|
||||
TimerNEW_MESSAGE.Enabled = True
|
||||
|
||||
SplitContainer3.SplitterDistance = 220
|
||||
SplitContainer3.Panel1Collapsed = True
|
||||
|
||||
'UsrCntlChat_Art_Btn_MACHAT.init()
|
||||
'UsrCntlChat_Art_Btn_LKWCHAT.init()
|
||||
UsrCntlChat_Art_Btn_MACHAT.setAktiv()
|
||||
|
||||
If AvisoId > 0 Then
|
||||
|
||||
CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(AvisoId, -1, topMessages, topMessagesDateHistory)
|
||||
Me.Width = 650
|
||||
CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(AvisoId, SendungID, If(SendungID > 0, "SND_CHAT", "LKW_CHAT"), topMessages, topMessagesDateHistory)
|
||||
SplitContainer1.Enabled = True
|
||||
RELOAD_CHAT()
|
||||
|
||||
SplitContainer.Panel1Collapsed = True
|
||||
SplitContainer.Panel1.Enabled = False
|
||||
' Panel3.Enabled = True
|
||||
|
||||
SplitContainer1.Enabled = True
|
||||
|
||||
'MsgBox("O")
|
||||
RELOAD_CHAT()
|
||||
|
||||
|
||||
Else
|
||||
intiDGVChats()
|
||||
|
||||
|
||||
|
||||
End If
|
||||
|
||||
|
||||
@@ -190,6 +203,18 @@ Public Class frmMessenger
|
||||
'End Sub
|
||||
|
||||
Sub intiDGVChats(Optional dgv_ChatID = -1, Optional reloadChat = True, Optional selFirst = False)
|
||||
|
||||
Dim newMsg = VERAG_PROG_ALLGEMEIN.cMessenger.GET_NewMSG_COUNT_ART(VERAG_PROG_ALLGEMEIN.cAllgemein.USRID, "CHAT")
|
||||
UsrCntlChat_Art_Btn_MACHAT.setCnt(newMsg)
|
||||
|
||||
Dim newMsgLKW = VERAG_PROG_ALLGEMEIN.cMessenger.GET_NewMSG_COUNT_ART(VERAG_PROG_ALLGEMEIN.cAllgemein.USRID, "LKW_CHAT")
|
||||
UsrCntlChat_Art_Btn_LKWCHAT.setCnt(newMsgLKW)
|
||||
|
||||
Dim newMsgSND = VERAG_PROG_ALLGEMEIN.cMessenger.GET_NewMSG_COUNT_ART(VERAG_PROG_ALLGEMEIN.cAllgemein.USRID, "SND_CHAT")
|
||||
UsrCntlChat_Art_Btn_SNDCHAT.setCnt(newMsgSND)
|
||||
|
||||
|
||||
|
||||
With dgvChats
|
||||
Dim loadedTmp = loaded
|
||||
If Not reloadChat Then
|
||||
@@ -201,12 +226,24 @@ Public Class frmMessenger
|
||||
whereName = " WHERE chat_name LIKE '%" & MyTextBox1.Text.Trim & "%' "
|
||||
End If
|
||||
|
||||
.DataSource = SQL.loadDgvBySql("SELECT * FROM(
|
||||
Dim where = ""
|
||||
Select Case toggle_CHAT_ART
|
||||
Case "CHAT"
|
||||
where = " AND chat_art IN ('CHAT') "
|
||||
'Case "LKW_CHAT"
|
||||
' where = " AND chat_art IN ('LKW_CHAT') "
|
||||
Case Else
|
||||
where = " AND chat_art IN ('" & toggle_CHAT_ART & "') "
|
||||
End Select
|
||||
|
||||
|
||||
|
||||
.DataSource = SQL.loadDgvBySql("SELECT TOP 200 * FROM(
|
||||
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 ,chat_lastMsg
|
||||
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) & "'
|
||||
AND chat_art IN ('CHAT')
|
||||
" & where & "
|
||||
) as T " & whereName & " ORDER BY chat_lastMsg DESC", "ADMIN")
|
||||
|
||||
If .Columns.Count = 0 Then Exit Sub
|
||||
@@ -223,6 +260,7 @@ Public Class frmMessenger
|
||||
dgvChats.GetOrder()
|
||||
|
||||
If selFirst Then
|
||||
|
||||
dgvChats.ClearSelection()
|
||||
SplitContainer1.Enabled = False
|
||||
|
||||
@@ -411,12 +449,16 @@ Public Class frmMessenger
|
||||
' If scrollMax Then
|
||||
MyFlowLayoutPanel1.VerticalScroll.Value = MyFlowLayoutPanel1.VerticalScroll.Maximum
|
||||
|
||||
If CHAT.chat_name <> "" Then
|
||||
If CHAT.chat_name <> "" Then 'GRUPPENCHAT
|
||||
lblChatName.Text = CHAT.chat_name
|
||||
btnTeilnehmer.BackgroundImage = My.Resources.people
|
||||
SplitContainer3.Panel1Collapsed = False
|
||||
initDGVMembers()
|
||||
Else
|
||||
lblChatName.Text = SQL.getValueTxtBySql("SELECT isnull(mit_vname,'') + ' ' + isnull(mit_nname,'') FROM [tblMessenger_ChatMembers] inner join tblMitarbeiter on mit_id=chatMb_maId where chatMb_chatId ='" & CHAT.chat_id & "' and chatMb_maId<>'" & VERAG_PROG_ALLGEMEIN.cAllgemein.USRID & "'", "ADMIN")
|
||||
btnTeilnehmer.BackgroundImage = My.Resources.person
|
||||
|
||||
SplitContainer3.Panel1Collapsed = True
|
||||
End If
|
||||
End If
|
||||
checkOnlineOffline()
|
||||
@@ -426,6 +468,8 @@ Public Class frmMessenger
|
||||
Select Case CHAT.chat_art
|
||||
Case "UMFRAGE", "MITTEILUNG", "ARBEITSANWEISUNG"
|
||||
pnl.Enabled = False
|
||||
Case "LKW_CHAT"
|
||||
|
||||
Case Else
|
||||
pnl.Enabled = True
|
||||
End Select
|
||||
@@ -769,7 +813,13 @@ Public Class frmMessenger
|
||||
|
||||
Private Sub frmMessenger_Shown(sender As Object, e As EventArgs) Handles Me.Shown
|
||||
dgvChats.ClearSelection()
|
||||
If AvisoId <= 0 Then SplitContainer1.Enabled = False
|
||||
If AvisoId <= 0 Then SplitContainer1.Enabled = False Else RELOAD_CHAT()
|
||||
|
||||
If Me.Height > Screen.FromRectangle(Me.Bounds).WorkingArea.Size.Height Then
|
||||
Me.Height = Screen.FromRectangle(Me.Bounds).WorkingArea.Size.Height
|
||||
Top = 0
|
||||
End If
|
||||
|
||||
loaded = True
|
||||
End Sub
|
||||
|
||||
@@ -1043,13 +1093,17 @@ Public Class frmMessenger
|
||||
End Sub
|
||||
|
||||
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
|
||||
Dim dateTmp = InputBox("Bitte geben Sie das Datum ein, ab dem der Chat dargestellt werden soll:",, Now.AddMonths(-1).ToShortDateString)
|
||||
If IsDate(dateTmp) Then
|
||||
topMessagesDateHistory = CDate(dateTmp)
|
||||
CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(dgvChats.SelectedRows(0).Cells("chat_id").Value, 1, topMessagesDateHistory)
|
||||
RELOAD_CHAT()
|
||||
Else
|
||||
MsgBox("Datum ungültig!")
|
||||
If CHAT IsNot Nothing Then
|
||||
|
||||
Dim dateTmp = InputBox("Bitte geben Sie das Datum ein, ab dem der Chat dargestellt werden soll:",, Now.AddMonths(-1).ToShortDateString)
|
||||
If IsDate(dateTmp) Then
|
||||
topMessagesDateHistory = CDate(dateTmp)
|
||||
CHAT = New VERAG_PROG_ALLGEMEIN.cMessenger.cMessenger_Chat(CHAT.chat_id, 1, topMessagesDateHistory)
|
||||
RELOAD_CHAT()
|
||||
Else
|
||||
MsgBox("Datum ungültig!")
|
||||
End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -1131,5 +1185,94 @@ Public Class frmMessenger
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private Sub Panel7_Paint(sender As Object, e As PaintEventArgs) Handles pnlTeilnehmer.Paint
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub Label4_Click(sender As Object, e As EventArgs) Handles Label4.Click
|
||||
Dim f As New frmMessenger_Members(CHAT)
|
||||
f.ShowDialog(Me)
|
||||
initDGVMembers()
|
||||
End Sub
|
||||
Sub initDGVMembers()
|
||||
With dgvChatMembers
|
||||
.Rows.Clear()
|
||||
|
||||
For Each MB In CHAT.CHAT_MEMBERS
|
||||
Dim MA As New cMitarbeiter(MB.chatMb_maId)
|
||||
.Rows.Add({MB.chatMb_maId, MA.Fullname, If(MA.mit_firma = "ALL", MA.mit_FirmaHaupt, MA.mit_firma)})
|
||||
Next
|
||||
.ClearSelection()
|
||||
End With
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
|
||||
Dim f As New frmMessenger_NeuerChat(CHAT)
|
||||
f.ShowDialog()
|
||||
initDGVMembers()
|
||||
End Sub
|
||||
|
||||
Private Sub Button5_Click_1(sender As Object, e As EventArgs) Handles Button5.Click
|
||||
If dgvChatMembers.SelectedRows.Count >= 1 Then
|
||||
If vbYes = MsgBox("Teilnehmer wirklich entfernen?", vbYesNoCancel) Then
|
||||
Dim ol As New List(Of Object)
|
||||
For Each r As DataGridViewRow In dgvChatMembers.SelectedRows
|
||||
If r.Cells("clmnMaId").Value <> VERAG_PROG_ALLGEMEIN.cAllgemein.USRID Then
|
||||
For Each MB In CHAT.CHAT_MEMBERS
|
||||
If r.Cells("clmnMaId").Value = MB.chatMb_maId Then
|
||||
ol.Add(MB)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
For Each o In ol
|
||||
CHAT.CHAT_MEMBERS.Remove(o)
|
||||
If CHAT.SAVE_MEMBERS() Then
|
||||
initDGVMembers()
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
Sub initChat_ART(CHAT_ART)
|
||||
loaded = False
|
||||
For Each c In FlowLayoutPanel1.Controls
|
||||
DirectCast(c, usrCntlChat_Art_Btn).setInAktiv()
|
||||
Next
|
||||
Me.toggle_CHAT_ART = CHAT_ART
|
||||
intiDGVChats()
|
||||
loaded = True
|
||||
End Sub
|
||||
|
||||
Private Sub UsrCntlChat_Art_Btn1_Load(sender As Object) Handles UsrCntlChat_Art_Btn_MACHAT.CLICKED
|
||||
initChat_ART("CHAT")
|
||||
sender.setAktiv()
|
||||
End Sub
|
||||
|
||||
Private Sub UsrCntlChat_Art_Btn2_Load(sender As Object) Handles UsrCntlChat_Art_Btn_LKWCHAT.CLICKED
|
||||
initChat_ART("LKW_CHAT")
|
||||
sender.setAktiv()
|
||||
End Sub
|
||||
Private Sub UsrCntlChat_Art_snd_Load(sender As Object) Handles UsrCntlChat_Art_Btn_SNDCHAT.CLICKED
|
||||
initChat_ART("SND_CHAT")
|
||||
sender.setAktiv()
|
||||
End Sub
|
||||
|
||||
Private Sub UsrCntlChat_Art_Btn1_Load(ctl As usrCntlChat_Art_Btn) Handles UsrCntlChat_Art_Btn_MACHAT.CLICKED
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub UsrCntlChat_Art_Btn2_Load(ctl As usrCntlChat_Art_Btn) Handles UsrCntlChat_Art_Btn_LKWCHAT.CLICKED
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub UsrCntlChat_Art_snd_Load(ctl As usrCntlChat_Art_Btn) Handles UsrCntlChat_Art_Btn_SNDCHAT.CLICKED
|
||||
|
||||
End Sub
|
||||
End Class
|
||||
Reference in New Issue
Block a user