197 lines
8.3 KiB
VB.net
197 lines
8.3 KiB
VB.net
Imports EnvelopeGenerator.CommonServices
|
|
Imports EnvelopeGenerator.CommonServices.My
|
|
Imports EnvelopeGenerator.Domain
|
|
Imports System.ComponentModel
|
|
Imports EnvelopeGenerator.Domain.Constants
|
|
Imports EnvelopeGenerator.Domain.Entities
|
|
|
|
|
|
Public Class frmEnvelopeMainData
|
|
Private FormLoaded As Boolean = False
|
|
Public Property Envelope As Entities.Envelope = New Entities.Envelope()
|
|
Public Property NewEnvelopeMode As Boolean = True
|
|
|
|
Private Property EnvelopeTypeModel As EnvelopeTypeModel
|
|
|
|
<Bindable(True)>
|
|
Private Property EnvelopeType As New EnvelopeType
|
|
|
|
Public Property State As State
|
|
|
|
Public Sub New()
|
|
InitializeComponent()
|
|
End Sub
|
|
|
|
Private Sub frmEnvelopeMainData_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
|
Try
|
|
If NewEnvelopeMode = True Then
|
|
Me.Text = Resources.Envelope.New_Envelope
|
|
Else
|
|
Me.Text = Resources.Envelope.Edit_Envelope
|
|
cmbEnvelopeType.ReadOnly = True
|
|
End If
|
|
|
|
EnvelopeTypeModel = New EnvelopeTypeModel(State)
|
|
Dim oTypes = EnvelopeTypeModel.List()
|
|
|
|
If oTypes.Count = 0 Then
|
|
MsgBox("No templates in Database!", MsgBoxStyle.Exclamation, Text)
|
|
Close()
|
|
Exit Sub
|
|
End If
|
|
|
|
|
|
' Dim oTranslatedVerificationTypeList = VerificationTypeList.Select(AddressOf TranslateVerificationTypeType).ToList()
|
|
|
|
Dim certificationTypeList = [Enum].GetValues(GetType(CertificationType)).Cast(Of CertificationType)()
|
|
Dim oTranslatedCertificationTypeList = certificationTypeList.Select(AddressOf TranslateCertificationType).ToList()
|
|
|
|
cmbCertificationType.Properties.Items.AddRange(oTranslatedCertificationTypeList)
|
|
|
|
|
|
Dim finalEmailTypeList = [Enum].GetValues(GetType(FinalEmailType)).Cast(Of FinalEmailType)()
|
|
Dim oTranslatedFinalEmailTypeList = finalEmailTypeList.Select(AddressOf TranslateFinalEmailType).ToList()
|
|
|
|
cmbEmailToCreator.Properties.Items.AddRange(oTranslatedFinalEmailTypeList)
|
|
cmbEmailToReceivers.Properties.Items.AddRange(oTranslatedFinalEmailTypeList)
|
|
|
|
cmbEnvelopeType.Properties.Items.AddRange(oTypes.ToList)
|
|
cmbLanguage.Properties.Items.AddRange(New List(Of String) From {"de", "en"})
|
|
|
|
groupAllOptions.Expanded = False
|
|
Dim EnvelopeType = oTypes.FirstOrDefault()
|
|
If NewEnvelopeMode = True Then
|
|
|
|
|
|
' This will trigger loading values from the type
|
|
cmbEnvelopeType.EditValue = EnvelopeType
|
|
chked_2Faktor.EditValue = DEF_TF_ENABLED
|
|
|
|
Else
|
|
If IsNothing(Envelope.EnvelopeType) Then
|
|
Envelope.EnvelopeType = EnvelopeType
|
|
End If
|
|
If Envelope.EnvelopeType.ContractType = 0 Then
|
|
cmbEnvelopeType.EditValue = EnvelopeType
|
|
Else
|
|
' This will trigger loading values from the type
|
|
cmbEnvelopeType.EditValue = Envelope.EnvelopeType
|
|
' cmbEnvelopeType.SelectedIndex = Convert.ToInt32(Envelope.EnvelopeType) - 1
|
|
' cmbEnvelopeType.SelectedIndex = Envelope.Type.Id - 1
|
|
' cmbEnvelopeType.SelectedItem = cmbEnvelopeType.Properties.Items.Cast(Of EnvelopeType).Where(Function(i) i.Id = Envelope.EnvelopeType.Id).SingleOrDefault()
|
|
End If
|
|
|
|
|
|
' Now we can override these values with the values from envelope
|
|
txtTitle.EditValue = Envelope.Title
|
|
chkUseAccessCode.EditValue = Envelope.UseAccessCode
|
|
chked_2Faktor.EditValue = Envelope.TFA_Enabled
|
|
cmbCertificationType.SelectedIndex = Convert.ToInt32(Envelope.CertificationType) - 1
|
|
cmbEmailToCreator.SelectedIndex = Convert.ToInt32(Envelope.FinalEmailToCreator)
|
|
cmbEmailToReceivers.SelectedIndex = Convert.ToInt32(Envelope.FinalEmailToReceivers)
|
|
End If
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unexpected Error loading form:")
|
|
End Try
|
|
|
|
|
|
End Sub
|
|
Private Sub CheckAccessCode()
|
|
If Envelope.TFA_Enabled = True Then
|
|
chkUseAccessCode.Checked = True
|
|
chkUseAccessCode.Enabled = False
|
|
Else
|
|
chkUseAccessCode.Enabled = True
|
|
End If
|
|
End Sub
|
|
Private Function TranslateCertificationType(pType As CertificationType) As String
|
|
Return Resources.Model.ResourceManager.GetString(pType.ToString())
|
|
End Function
|
|
Private Function TranslateFinalEmailType(pType As FinalEmailType) As String
|
|
Return Resources.Model.ResourceManager.GetString(pType.ToString())
|
|
End Function
|
|
|
|
Private Sub btOK_Click(sender As Object, e As EventArgs) Handles btOK.Click
|
|
Dim Validator As Validator = New Validator(State.LogConfig, AdornerUIManager1)
|
|
Dim oMissingParams = Validator.Validate(txtTitle)
|
|
|
|
If oMissingParams = True Then
|
|
Me.DialogResult = DialogResult.None
|
|
txtTitle.Focus()
|
|
Return
|
|
End If
|
|
|
|
Dim oEnvelopeType = DirectCast(cmbEnvelopeType.EditValue, EnvelopeType)
|
|
If IsNothing(oEnvelopeType) Then
|
|
oEnvelopeType = EnvelopeType
|
|
End If
|
|
Envelope.Title = txtTitle.EditValue.ToString
|
|
Envelope.EnvelopeType = oEnvelopeType
|
|
Envelope.EnvelopeTypeId = IIf(IsNothing(oEnvelopeType), 0, oEnvelopeType.Id)
|
|
Envelope.CertificationType = cmbCertificationType.SelectedIndex + 1
|
|
Envelope.Language = cmbLanguage.EditValue
|
|
Envelope.UseAccessCode = chkUseAccessCode.EditValue
|
|
Envelope.SendReminderEmails = chkSendReminderEmails.EditValue
|
|
Envelope.FirstReminderDays = spnFirstReminderDays.EditValue
|
|
Envelope.ReminderIntervalDays = spnReminderIntervalDays.EditValue
|
|
Envelope.ExpiresWhenDays = spnExpiresDays.EditValue
|
|
Envelope.ExpiresWarningWhenDays = spnExpiresWarningDays.EditValue
|
|
Envelope.FinalEmailToCreator = cmbEmailToCreator.SelectedIndex
|
|
Envelope.FinalEmailToReceivers = cmbEmailToReceivers.SelectedIndex
|
|
Envelope.TFA_Enabled = chked_2Faktor.EditValue
|
|
' ContractType kann zzt nicht über die Oberfläche gesetzt werden
|
|
Envelope.ContractType = ContractType.Contract
|
|
End Sub
|
|
|
|
Private Sub frmEnvelopeMainData_Shown(sender As Object, e As EventArgs) Handles Me.Shown
|
|
SetFormHeight()
|
|
CheckAccessCode()
|
|
FormLoaded = True
|
|
|
|
End Sub
|
|
|
|
Private Sub SetFormHeight()
|
|
ClientSize = New Size(ClientSize.Width, LayoutControl1.Root.MinSize.Height)
|
|
End Sub
|
|
|
|
Private Sub LayoutControl1_GroupExpandChanged(sender As Object, e As DevExpress.XtraLayout.Utils.LayoutGroupEventArgs) Handles LayoutControl1.GroupExpandChanged
|
|
If e.Group.Name = groupAllOptions.Name Then
|
|
SetFormHeight()
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub cmbContractType_SelectedValueChanged(sender As Object, e As EventArgs) Handles cmbEnvelopeType.SelectedValueChanged
|
|
Dim oSelectedType As EnvelopeType = cmbEnvelopeType.SelectedItem
|
|
|
|
If oSelectedType Is Nothing Then
|
|
Exit Sub
|
|
End If
|
|
|
|
EnvelopeType = oSelectedType
|
|
|
|
cmbLanguage.EditValue = oSelectedType.Language
|
|
chkUseAccessCode.EditValue = oSelectedType.UseAccessCode
|
|
chkSendReminderEmails.EditValue = oSelectedType.SendReminderEmails
|
|
spnFirstReminderDays.EditValue = oSelectedType.FirstReminderDays
|
|
spnReminderIntervalDays.EditValue = oSelectedType.ReminderIntervalDays
|
|
spnExpiresDays.EditValue = oSelectedType.ExpiresWhenDays
|
|
spnExpiresWarningDays.EditValue = oSelectedType.ExpiresWarningWhenDays
|
|
|
|
cmbCertificationType.SelectedIndex = oSelectedType.CertificationType - 1
|
|
cmbEmailToCreator.SelectedIndex = oSelectedType.FinalEmailToCreator
|
|
cmbEmailToReceivers.SelectedIndex = oSelectedType.FinalEmailToReceivers
|
|
|
|
End Sub
|
|
|
|
Private Sub chked_2Faktor_CheckedChanged(sender As Object, e As EventArgs) Handles chked_2Faktor.CheckedChanged
|
|
If FormLoaded = True Then
|
|
If chked_2Faktor.Checked = True Then
|
|
chkUseAccessCode.Checked = True
|
|
chkUseAccessCode.Enabled = False
|
|
Else
|
|
chkUseAccessCode.Enabled = True
|
|
End If
|
|
End If
|
|
End Sub
|
|
End Class |