Public Class usrCntlKundenAvisoMailBenachrichtigung

    Dim kdNr As Integer
    Dim loaded As Boolean = False
    Dim KUNDE As VERAG_PROG_ALLGEMEIN.cKunde = Nothing
    Dim KUNDE_ERW As VERAG_PROG_ALLGEMEIN.cKundenErweitert = Nothing

    Sub New()

        ' Dieser Aufruf ist für den Designer erforderlich.
        InitializeComponent()

        ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.

    End Sub

    Sub New(KUNDE As VERAG_PROG_ALLGEMEIN.cKunde, KUNDE_ERW As VERAG_PROG_ALLGEMEIN.cKundenErweitert)

        ' Dieser Aufruf ist für den Designer erforderlich.
        InitializeComponent()

        init(KUNDE, KUNDE_ERW)
        ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.

    End Sub
    Private Sub CheckBox6_CheckedChanged(sender As Object, e As EventArgs) Handles CheckBox6.CheckedChanged, CheckBox4.CheckedChanged, cbxSendungsListFreigabe.CheckedChanged, cbxFreigabe_Steuerbescheid.CheckedChanged, cbxFreigabe_Steuerbescheid.CheckedChanged, cbxFreigabe_VBD.CheckedChanged, cboFreigabe_SteuerbescheidBedingung.SelectedIndexChanged, CheckBox2.CheckedChanged, CheckBox1.CheckedChanged, cbxFreigabe_ABD.CheckedChanged, cbxAVM.CheckedChanged, cboFreigabeArt.SelectedIndexChanged, cboFreigabeArtExport.SelectedIndexChanged
        Try
            If sender Is cbxSendungsListFreigabe Then
                ' cbxFreigabe_Steuerbescheid.Enabled = cbxSendungsListFreigabe.Checked
                cbxFreigabe_VBD.Enabled = cbxSendungsListFreigabe.Checked
                cboFreigabe_SteuerbescheidBedingung.Enabled = cbxSendungsListFreigabe.Checked
            ElseIf sender Is cbxFreigabe_Steuerbescheid Then
                cboFreigabe_SteuerbescheidBedingung.Enabled = cbxFreigabe_Steuerbescheid.Checked
            End If
            If loaded Then
                cboFreigabeArt.Enabled = CheckBox6.Checked
                cboFreigabeArtExport.Enabled = CheckBox1.Checked

                initAvisoMail()
                Dim kdTmp As New VERAG_PROG_ALLGEMEIN.cKunde(kdNr)
                Dim kdTmpErw As New VERAG_PROG_ALLGEMEIN.cKundenErweitert(kdNr)
                kdTmp.EmailAnkunft = CheckBox4.Checked
                kdTmp.EmailFreigabe = CheckBox6.Checked
                kdTmpErw.EmailAnkunft_Export = CheckBox2.Checked
                kdTmpErw.EmailFreigabe_Export = CheckBox1.Checked
                kdTmpErw.EmailFreigabe_Art = cboFreigabeArt._value
                kdTmpErw.EmailFreigabe_Export_Art = cboFreigabeArtExport._value

                kdTmpErw.EmailFreigabeSendungsListe = cbxSendungsListFreigabe.Checked
                kdTmpErw.EmailFreigabe_SteuerbescheidPDF = cbxFreigabe_Steuerbescheid.Checked
                kdTmpErw.EmailFreigabe_SteuerbescheidPDF_Bedingung = cboFreigabe_SteuerbescheidBedingung._value
                kdTmpErw.EmailFreigabe_VBDPDF = cbxFreigabe_VBD.Checked
                kdTmpErw.EmailFreigabe_ABDPDF = cbxFreigabe_ABD.Checked
                kdTmpErw.Email_AVM = cbxAVM.Checked
                kdTmp.SAVE()
                kdTmpErw.SAVE()


            End If
        Catch ex As Exception
            MsgBox("Fehler beim Speichern." & vbNewLine & ex.Message & ex.StackTrace)
        End Try
    End Sub

    Public Sub init(KUNDE As VERAG_PROG_ALLGEMEIN.cKunde, KUNDE_ERW As VERAG_PROG_ALLGEMEIN.cKundenErweitert)
        loaded = False
        Me.KUNDE = KUNDE
        Me.KUNDE_ERW = KUNDE_ERW

        If KUNDE Is Nothing Or KUNDE_ERW Is Nothing Then
            Exit Sub
        Else
            kdNr = KUNDE.KundenNr
        End If
        loadEmails()

        cboFreigabe_SteuerbescheidBedingung.Items.Clear()
        cboFreigabe_SteuerbescheidBedingung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("immer", "0"))
        cboFreigabe_SteuerbescheidBedingung.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("KD-Aufschub", "1"))

        CheckBox6.Checked = False
        CheckBox6.Checked = False
        cbxSendungsListFreigabe.Checked = False
        cbxFreigabe_Steuerbescheid.Checked = False
        cboFreigabe_SteuerbescheidBedingung.changeItem("")
        cbxFreigabe_VBD.Checked = False
        cbxFreigabe_ABD.Checked = False
        cbxAVM.Checked = False

        If KUNDE IsNot Nothing AndAlso KUNDE.KundenNr > 0 Then
            CheckBox6.Checked = KUNDE.EmailFreigabe
            CheckBox4.Checked = KUNDE.EmailAnkunft
            CheckBox1.Checked = KUNDE_ERW.EmailFreigabe_Export
            CheckBox2.Checked = KUNDE_ERW.EmailAnkunft_Export
            cboFreigabeArt.Enabled = CheckBox6.Checked
            cboFreigabeArt.changeItem(KUNDE_ERW.EmailFreigabe_Art)
            cboFreigabeArtExport.Enabled = CheckBox1.Checked
            cboFreigabeArtExport.changeItem(KUNDE_ERW.EmailFreigabe_Export_Art)

        End If



        If KUNDE_ERW IsNot Nothing AndAlso KUNDE_ERW.kde_KundenNr > 0 Then
            cbxSendungsListFreigabe.Checked = KUNDE_ERW.EmailFreigabeSendungsListe
            cbxFreigabe_Steuerbescheid.Checked = KUNDE_ERW.EmailFreigabe_SteuerbescheidPDF
            cboFreigabe_SteuerbescheidBedingung.changeItem(KUNDE_ERW.EmailFreigabe_SteuerbescheidPDF_Bedingung)
            cbxFreigabe_VBD.Checked = KUNDE_ERW.EmailFreigabe_VBDPDF
            cbxFreigabe_ABD.Checked = KUNDE_ERW.EmailFreigabe_aBDPDF
            cbxAVM.Checked = KUNDE_ERW.Email_AVM
        End If

        initAvisoMail()

        If KUNDE IsNot Nothing AndAlso KUNDE.KundenNr > 0 Then loaded = True
    End Sub
    Sub initAvisoMail()
        rtbLKWFreigabe.Enabled = CheckBox6.Checked
        FlatButton2.Visible = CheckBox6.Checked

        rtbLkwAnkunf.Enabled = CheckBox4.Checked
        FlatButton3.Visible = CheckBox4.Checked


        RichTextBox1.Enabled = CheckBox1.Checked
        FlatButton1.Visible = CheckBox1.Checked

        RichTextBox2.Enabled = CheckBox2.Checked
        FlatButton4.Visible = CheckBox2.Checked
    End Sub

    Private Sub FlatButton3_Click(sender As Object, e As EventArgs) Handles FlatButton3.Click
        Dim f As New frmEmailBenachrichtigung(KUNDE.KundenNr, 1)
        f.ShowDialog(Me)
        loadEmails()
    End Sub

    Private Sub FlatButton2_Click(sender As Object, e As EventArgs) Handles FlatButton2.Click
        Dim f As New frmEmailBenachrichtigung(KUNDE.KundenNr, 2)
        f.ShowDialog(Me)
        loadEmails()
    End Sub

    Sub loadEmails()
        rtbLkwAnkunf.Text = ""
        rtbLKWFreigabe.Text = ""
        RichTextBox1.Text = ""
        RichTextBox2.Text = ""

        If KUNDE IsNot Nothing AndAlso KUNDE.KundenNr > 0 Then
            Dim EMAIL_ANKUNFT = New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList(KUNDE.KundenNr, 1)
            Dim EMAIL_FREIGABE = New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList(KUNDE.KundenNr, 2)
            Dim EMAIL_ANKUNFT_EXPORT = New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList(KUNDE.KundenNr, 3)
            Dim EMAIL_FREIGABE_EXPORT = New VERAG_PROG_ALLGEMEIN.cEmailBenachrichtigungList(KUNDE.KundenNr, 4)
            For Each l In EMAIL_ANKUNFT.LIST
                If l.eb_cc Then
                    rtbLkwAnkunf.Text &= l.eb_EMail & " (CC)" & vbNewLine
                ElseIf l.eb_bcc Then
                    rtbLkwAnkunf.Text &= l.eb_EMail & " (BCC)" & vbNewLine
                Else
                    rtbLkwAnkunf.Text &= l.eb_EMail & vbNewLine
                End If
            Next
            For Each l In EMAIL_FREIGABE.LIST
                If l.eb_cc Then
                    rtbLKWFreigabe.Text &= l.eb_EMail & " (CC)" & vbNewLine
                ElseIf l.eb_bcc Then
                    rtbLKWFreigabe.Text &= l.eb_EMail & " (BCC)" & vbNewLine
                Else
                    rtbLKWFreigabe.Text &= l.eb_EMail & vbNewLine
                End If
            Next

            For Each l In EMAIL_ANKUNFT_EXPORT.LIST
                If l.eb_cc Then
                    RichTextBox2.Text &= l.eb_EMail & " (CC)" & vbNewLine
                ElseIf l.eb_bcc Then
                    RichTextBox2.Text &= l.eb_EMail & " (BCC)" & vbNewLine
                Else
                    RichTextBox2.Text &= l.eb_EMail & vbNewLine
                End If
            Next
            For Each l In EMAIL_FREIGABE_EXPORT.LIST
                If l.eb_cc Then
                    RichTextBox1.Text &= l.eb_EMail & " (CC)" & vbNewLine
                ElseIf l.eb_bcc Then
                    RichTextBox1.Text &= l.eb_EMail & " (BCC)" & vbNewLine
                Else
                    RichTextBox1.Text &= l.eb_EMail & vbNewLine
                End If
            Next
        End If

    End Sub


    Private Sub cboFreigabe_SteuerbescheidBedingung_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboFreigabe_SteuerbescheidBedingung.SelectedIndexChanged

    End Sub

    Private Sub usrCntlKundenAvisoMailBenachrichtigung_Load(sender As Object, e As EventArgs) Handles Me.Load

        cboFreigabeArt.Items.Clear()
        cboFreigabeArt.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Freigabe", "FG"))
        cboFreigabeArt.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Beleg", "BLG"))
        If KUNDE_ERW IsNot Nothing Then cboFreigabeArt.changeItem(If(KUNDE_ERW.EmailFreigabe_Art, "FG"))

        cboFreigabeArtExport.Items.Clear()
        cboFreigabeArtExport.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Freigabe", "FG"))
        cboFreigabeArtExport.Items.Add(New VERAG_PROG_ALLGEMEIN.MyListItem("Beleg", "BLG"))
        If KUNDE_ERW IsNot Nothing Then cboFreigabeArtExport.changeItem(If(KUNDE_ERW.EmailFreigabe_Export_Art, "FG"))

        If Not VERAG_PROG_ALLGEMEIN.cBerechtignunen.CHECK_BERECHTIGUNG_bool("AVISO_MAIL_Steuerbescheid", "AVISO") Then
            cbxFreigabe_Steuerbescheid.Visible = False
            cboFreigabe_SteuerbescheidBedingung.Visible = False
        End If
    End Sub

    Private Sub FlatButton4_Click(sender As Object, e As EventArgs) Handles FlatButton4.Click
        Dim f As New frmEmailBenachrichtigung(KUNDE.KundenNr, 3)
        f.ShowDialog(Me)
        loadEmails()
    End Sub

    Private Sub FlatButton1_Click(sender As Object, e As EventArgs) Handles FlatButton1.Click
        Dim f As New frmEmailBenachrichtigung(KUNDE.KundenNr, 4)
        f.ShowDialog(Me)
        loadEmails()
    End Sub


End Class
