This commit is contained in:
Developer 02 2025-01-27 16:50:44 +01:00
commit cf300d3ade
39 changed files with 1307 additions and 761 deletions

View File

@ -77,7 +77,8 @@
End Enum End Enum
Public Enum CertificationType Public Enum CertificationType
ElectronicSignature = 1 AdvancedElectronicSignature = 1
'ElectronicSignature = 1
'QualifiedSignature = 2 'QualifiedSignature = 2
End Enum End Enum
@ -109,7 +110,6 @@
DocumentForwarded DocumentForwarded
DocumentShared DocumentShared
End Enum End Enum
#End Region #End Region
#Region "Constants" #Region "Constants"

View File

@ -5,4 +5,5 @@
Public Property ExportPath As String = "" Public Property ExportPath As String = ""
Public Property SendingProfile As Integer = 0 Public Property SendingProfile As Integer = 0
Public Property SignatureHost As String = "" Public Property SignatureHost As String = ""
Public Property Default_TFA_Enabled As Boolean = False
End Class End Class

View File

@ -8,8 +8,8 @@
Public Property Uuid As String = Guid.NewGuid.ToString() Public Property Uuid As String = Guid.NewGuid.ToString()
Public Property UseAccessCode As Boolean = False Public Property UseAccessCode As Boolean = False
Public Property Language As String = "de-DE" Public Property Language As String = "de-DE"
Public Property CertificationType As Constants.CertificationType = Constants.CertificationType.ElectronicSignature Public Property CertificationType As Constants.CertificationType = Constants.CertificationType.AdvancedElectronicSignature
Public Property TFA_Enabled As Boolean = False
Public Property SendReminderEmails As Boolean = False Public Property SendReminderEmails As Boolean = False
Public Property FirstReminderDays As Integer = 0 Public Property FirstReminderDays As Integer = 0
Public Property ReminderIntervalDays As Integer = 0 Public Property ReminderIntervalDays As Integer = 0

View File

@ -75,6 +75,7 @@ Public Class EnvelopeReceiver
Public Property Sequence As Integer = 0 Public Property Sequence As Integer = 0
Public Property PrivateMessage As String = "" Public Property PrivateMessage As String = ""
Public Property AccessCode As String = "" Public Property AccessCode As String = ""
Public Property PhoneNumber As String = ""
Public Function GetSignature() As String Public Function GetSignature() As String
Return StringEx.GetChecksum(Email.ToUpper) Return StringEx.GetChecksum(Email.ToUpper)

View File

@ -6,7 +6,8 @@
Public Property ContractType As Integer ' Unbenutzt Public Property ContractType As Integer ' Unbenutzt
Public Property Language As String Public Property Language As String
Public Property CertificationType As Constants.CertificationType = Constants.CertificationType.ElectronicSignature Public Property CertificationType As Constants.CertificationType = Constants.CertificationType.AdvancedElectronicSignature
Public Property TFA_Enabled As Boolean = False
Public Property SendReminderEmails As Boolean = False Public Property SendReminderEmails As Boolean = False
Public Property FirstReminderDays As Integer = 0 Public Property FirstReminderDays As Integer = 0
Public Property ReminderIntervalDays As Integer = 0 Public Property ReminderIntervalDays As Integer = 0

View File

@ -77,8 +77,8 @@
<Reference Include="DigitalData.Modules.Logging"> <Reference Include="DigitalData.Modules.Logging">
<HintPath>..\..\2_DLL Projekte\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath> <HintPath>..\..\2_DLL Projekte\DDModules\Logging\bin\Debug\DigitalData.Modules.Logging.dll</HintPath>
</Reference> </Reference>
<Reference Include="GdPicture.NET.14, Version=14.2.89.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL"> <Reference Include="GdPicture.NET.14, Version=14.2.90.0, Culture=neutral, PublicKeyToken=f52a2e60ad468dbb, processorArchitecture=MSIL">
<HintPath>..\packages\GdPicture.14.2.89\lib\net462\GdPicture.NET.14.dll</HintPath> <HintPath>..\packages\GdPicture.14.2.90\lib\net462\GdPicture.NET.14.dll</HintPath>
</Reference> </Reference>
<Reference Include="Microsoft.CSharp" /> <Reference Include="Microsoft.CSharp" />
<Reference Include="Microsoft.Extensions.Logging.Abstractions, Version=2.1.1.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL"> <Reference Include="Microsoft.Extensions.Logging.Abstractions, Version=2.1.1.0, Culture=neutral, PublicKeyToken=adb9793829ddae60, processorArchitecture=MSIL">
@ -291,11 +291,11 @@
</ItemGroup> </ItemGroup>
<ItemGroup /> <ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<Import Project="..\packages\GdPicture.runtimes.windows.14.2.89\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.2.89\build\net462\GdPicture.runtimes.windows.targets')" /> <Import Project="..\packages\GdPicture.runtimes.windows.14.2.90\build\net462\GdPicture.runtimes.windows.targets" Condition="Exists('..\packages\GdPicture.runtimes.windows.14.2.90\build\net462\GdPicture.runtimes.windows.targets')" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup> <PropertyGroup>
<ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText> <ErrorText>Dieses Projekt verweist auf mindestens ein NuGet-Paket, das auf diesem Computer fehlt. Verwenden Sie die Wiederherstellung von NuGet-Paketen, um die fehlenden Dateien herunterzuladen. Weitere Informationen finden Sie unter "http://go.microsoft.com/fwlink/?LinkID=322105". Die fehlende Datei ist "{0}".</ErrorText>
</PropertyGroup> </PropertyGroup>
<Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.2.89\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.2.89\build\net462\GdPicture.runtimes.windows.targets'))" /> <Error Condition="!Exists('..\packages\GdPicture.runtimes.windows.14.2.90\build\net462\GdPicture.runtimes.windows.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\GdPicture.runtimes.windows.14.2.90\build\net462\GdPicture.runtimes.windows.targets'))" />
</Target> </Target>
</Project> </Project>

View File

@ -21,7 +21,8 @@ Public Class ConfigModel
.ExportPath = oRow.ItemEx("EXPORT_PATH", ""), .ExportPath = oRow.ItemEx("EXPORT_PATH", ""),
.SendingProfile = oRow.ItemEx("SENDING_PROFILE", 0), .SendingProfile = oRow.ItemEx("SENDING_PROFILE", 0),
.SignatureHost = oRow.ItemEx("SIGNATURE_HOST", ""), .SignatureHost = oRow.ItemEx("SIGNATURE_HOST", ""),
.ExternalProgramName = oRow.ItemEx("EXTERNAL_PROGRAM_NAME", "") .ExternalProgramName = oRow.ItemEx("EXTERNAL_PROGRAM_NAME", ""),
.Default_TFA_Enabled = oRow.ItemEx("DEF_TFA_ENABLED", False)
} }
Catch ex As Exception Catch ex As Exception
Logger.Error(ex) Logger.Error(ex)

View File

@ -2,6 +2,7 @@
Imports System.Web.UI.WebControls Imports System.Web.UI.WebControls
Imports DigitalData.Modules.Base Imports DigitalData.Modules.Base
Imports DigitalData.Modules.Logging Imports DigitalData.Modules.Logging
Imports EnvelopeGenerator.Common.Constants
Public Class EnvelopeModel Public Class EnvelopeModel
Inherits BaseModel Inherits BaseModel
@ -34,7 +35,7 @@ Public Class EnvelopeModel
.Language = pRow.ItemEx("LANGUAGE", "de-DE"), .Language = pRow.ItemEx("LANGUAGE", "de-DE"),
.Status = ObjectEx.ToEnum(Of Constants.EnvelopeStatus)(pRow.ItemEx("STATUS", Constants.EnvelopeStatus.EnvelopeCreated.ToString())), .Status = ObjectEx.ToEnum(Of Constants.EnvelopeStatus)(pRow.ItemEx("STATUS", Constants.EnvelopeStatus.EnvelopeCreated.ToString())),
.AddedWhen = pRow.Item("ADDED_WHEN"), .AddedWhen = pRow.Item("ADDED_WHEN"),
.CertificationType = ObjectEx.ToEnum(Of Constants.CertificationType)(pRow.ItemEx("CERTIFICATION_TYPE", Constants.CertificationType.ElectronicSignature.ToString())), .CertificationType = ObjectEx.ToEnum(Of Constants.CertificationType)(pRow.ItemEx("CERTIFICATION_TYPE", Constants.CertificationType.AdvancedElectronicSignature.ToString())),
.User = New User(), .User = New User(),
.ExpiresWhen = pRow.ItemEx(Of Date)("EXPIRES_WHEN", Nothing), .ExpiresWhen = pRow.ItemEx(Of Date)("EXPIRES_WHEN", Nothing),
.ExpiresWarningWhen = pRow.ItemEx(Of Date)("EXPIRES_WARNING_WHEN", Nothing), .ExpiresWarningWhen = pRow.ItemEx(Of Date)("EXPIRES_WARNING_WHEN", Nothing),
@ -45,7 +46,8 @@ Public Class EnvelopeModel
.ReminderIntervalDays = pRow.ItemEx("REMINDER_INTERVAL_DAYS", 0), .ReminderIntervalDays = pRow.ItemEx("REMINDER_INTERVAL_DAYS", 0),
.UseAccessCode = pRow.ItemEx("USE_ACCESS_CODE", False), .UseAccessCode = pRow.ItemEx("USE_ACCESS_CODE", False),
.FinalEmailToCreator = ObjectEx.ToEnum(Of Constants.FinalEmailType)(pRow.ItemEx("FINAL_EMAIL_TO_CREATOR", Constants.FinalEmailType.No.ToString())), .FinalEmailToCreator = ObjectEx.ToEnum(Of Constants.FinalEmailType)(pRow.ItemEx("FINAL_EMAIL_TO_CREATOR", Constants.FinalEmailType.No.ToString())),
.FinalEmailToReceivers = ObjectEx.ToEnum(Of Constants.FinalEmailType)(pRow.ItemEx("FINAL_EMAIL_TO_RECEIVERS", Constants.FinalEmailType.No.ToString())) .FinalEmailToReceivers = ObjectEx.ToEnum(Of Constants.FinalEmailType)(pRow.ItemEx("FINAL_EMAIL_TO_RECEIVERS", Constants.FinalEmailType.No.ToString())),
.TFA_Enabled = pRow.ItemEx("TFA_Enabled", False)
} }
Dim oDOC_RESULT = pRow.Item("DOC_RESULT") Dim oDOC_RESULT = pRow.Item("DOC_RESULT")
If Not IsDBNull(oDOC_RESULT) Then If Not IsDBNull(oDOC_RESULT) Then
@ -142,13 +144,17 @@ Public Class EnvelopeModel
Public Function Insert(pEnvelope As Envelope) As Boolean Public Function Insert(pEnvelope As Envelope) As Boolean
Try Try
Dim oSql = "INSERT INTO [dbo].[TBSIG_ENVELOPE] (MESSAGE, ENVELOPE_UUID, STATUS, USER_ID) " Dim oSql = $"INSERT INTO [dbo].[TBSIG_ENVELOPE] (MESSAGE, ENVELOPE_UUID, STATUS, USER_ID)
oSql += " VALUES (@MESSAGE, @UUID, @STATUS, @USER_ID)" VALUES('',
'{pEnvelope.Uuid}',
'{CInt([Enum].Parse(GetType(EnvelopeStatus), Constants.EnvelopeStatus.EnvelopeCreated))}',
'{pEnvelope.UserId}')"
Dim oCommand As New SqlCommand(oSql) Dim oCommand As New SqlCommand(oSql)
oCommand.Parameters.Add("MESSAGE", SqlDbType.NVarChar).Value = String.Empty 'oCommand.Parameters.Add("MESSAGE", SqlDbType.NVarChar).Value = String.Empty
oCommand.Parameters.Add("UUID", SqlDbType.NVarChar).Value = pEnvelope.Uuid 'oCommand.Parameters.Add("UUID", SqlDbType.NVarChar).Value = pEnvelope.Uuid
oCommand.Parameters.Add("STATUS", SqlDbType.Int).Value = Constants.EnvelopeStatus.EnvelopeCreated 'oCommand.Parameters.Add("STATUS", SqlDbType.Int).Value = Constants.EnvelopeStatus.EnvelopeCreated
oCommand.Parameters.Add("USER_ID", SqlDbType.Int).Value = pEnvelope.UserId 'oCommand.Parameters.Add("USER_ID", SqlDbType.Int).Value = pEnvelope.UserId
If Database.ExecuteNonQuery(oCommand) Then If Database.ExecuteNonQuery(oCommand) Then
pEnvelope.Id = GetEnvelopeId(pEnvelope) pEnvelope.Id = GetEnvelopeId(pEnvelope)
@ -182,9 +188,11 @@ Public Class EnvelopeModel
oSql += " [REMINDER_INTERVAL_DAYS] = @REMINDER_INTERVAL_DAYS, " oSql += " [REMINDER_INTERVAL_DAYS] = @REMINDER_INTERVAL_DAYS, "
oSql += " [SEND_REMINDER_EMAILS] = @SEND_REMINDER_EMAILS, " oSql += " [SEND_REMINDER_EMAILS] = @SEND_REMINDER_EMAILS, "
oSql += " [USE_ACCESS_CODE] = @USE_ACCESS_CODE, " oSql += " [USE_ACCESS_CODE] = @USE_ACCESS_CODE, "
oSql += " [CHANGED_WHEN] = GETDATE() " oSql += " [CHANGED_WHEN] = GETDATE(), "
oSql += " [TFA_Enabled] = @TFA_Enabled"
oSql += " WHERE GUID = @ID AND USER_ID = @USER_ID" oSql += " WHERE GUID = @ID AND USER_ID = @USER_ID"
Dim oCommand As New SqlCommand(oSql) Dim oCommand As New SqlCommand(oSql)
oCommand.Parameters.Add("ID", SqlDbType.Int).Value = pEnvelope.Id oCommand.Parameters.Add("ID", SqlDbType.Int).Value = pEnvelope.Id
oCommand.Parameters.Add("USER_ID", SqlDbType.Int).Value = pEnvelope.UserId oCommand.Parameters.Add("USER_ID", SqlDbType.Int).Value = pEnvelope.UserId
@ -206,7 +214,7 @@ Public Class EnvelopeModel
oCommand.Parameters.Add("REMINDER_INTERVAL_DAYS", SqlDbType.Int).Value = pEnvelope.ReminderIntervalDays oCommand.Parameters.Add("REMINDER_INTERVAL_DAYS", SqlDbType.Int).Value = pEnvelope.ReminderIntervalDays
oCommand.Parameters.Add("SEND_REMINDER_EMAILS", SqlDbType.Bit).Value = pEnvelope.SendReminderEmails oCommand.Parameters.Add("SEND_REMINDER_EMAILS", SqlDbType.Bit).Value = pEnvelope.SendReminderEmails
oCommand.Parameters.Add("USE_ACCESS_CODE", SqlDbType.Bit).Value = pEnvelope.UseAccessCode oCommand.Parameters.Add("USE_ACCESS_CODE", SqlDbType.Bit).Value = pEnvelope.UseAccessCode
oCommand.Parameters.Add("TFA_ENABLED", SqlDbType.Bit).Value = pEnvelope.TFA_Enabled
Return Database.ExecuteNonQuery(oCommand, pTransaction) Return Database.ExecuteNonQuery(oCommand, pTransaction)
Catch ex As Exception Catch ex As Exception

View File

@ -1,4 +1,5 @@
Imports DigitalData.Modules.Base Imports DigitalData.Modules.Base
Imports EnvelopeGenerator.Common.Constants
Public Class EnvelopeTypeModel Public Class EnvelopeTypeModel
Inherits BaseModel Inherits BaseModel
@ -21,7 +22,8 @@ Public Class EnvelopeTypeModel
.FinalEmailToCreator = pRow.ItemEx("FINAL_EMAIL_TO_CREATOR", 0), .FinalEmailToCreator = pRow.ItemEx("FINAL_EMAIL_TO_CREATOR", 0),
.FinalEmailToReceivers = pRow.ItemEx("FINAL_EMAIL_TO_RECEIVERS", 0), .FinalEmailToReceivers = pRow.ItemEx("FINAL_EMAIL_TO_RECEIVERS", 0),
.ContractType = pRow.ItemEx("CONTRACT_TYPE", 0), .ContractType = pRow.ItemEx("CONTRACT_TYPE", 0),
.CertificationType = pRow.ItemEx("CERTIFICATION_TYPE", 0) .CertificationType = pRow.ItemEx("CERTIFICATION_TYPE", 0),
.TFA_Enabled = pRow.ItemEx("TFA_Enabled", 0)
} }
End Function End Function

View File

@ -33,7 +33,8 @@ Public Class ReceiverModel
.Status = ReceiverSignedStatus, .Status = ReceiverSignedStatus,
.ColorType = DirectCast(pColorIndex + 1, ColorType), .ColorType = DirectCast(pColorIndex + 1, ColorType),
.AccessCode = pRow.ItemEx("ACCESS_CODE", ""), .AccessCode = pRow.ItemEx("ACCESS_CODE", ""),
.SignedDate = SignedDate .SignedDate = SignedDate,
.PhoneNumber = pRow.ItemEx("PHONE_NUMBER", "")
} }
End Function End Function
@ -56,25 +57,29 @@ Public Class ReceiverModel
Public Function Insert(pReceiver As EnvelopeReceiver, pTransaction As SqlTransaction) As Boolean Public Function Insert(pReceiver As EnvelopeReceiver, pTransaction As SqlTransaction) As Boolean
Try Try
Dim oSql As String = "INSERT INTO [dbo].[TBSIG_RECEIVER] Dim oCheck = $"SELECT COUNT(GUID) FROM [dbo].[TBSIG_RECEIVER] WHERE SIGNATURE = '{pReceiver.GetSignature()}'"
Dim oExists = Database.GetScalarValue(oCheck)
If oExists = 0 Then
Dim oSql As String = $"INSERT INTO [dbo].[TBSIG_RECEIVER]
([EMAIL_ADDRESS] ([EMAIL_ADDRESS]
,[SIGNATURE]) ,[SIGNATURE])
VALUES VALUES
(@EMAIL ('{pReceiver.Email}'
,@SIGNATURE)" ,'{pReceiver.GetSignature()}')"
Dim oCommand = New SqlCommand(oSql) Dim oCommand = New SqlCommand(oSql)
oCommand.Parameters.Add("EMAIL", SqlDbType.NVarChar).Value = pReceiver.Email Dim oResult = Database.ExecuteNonQuery(oCommand)
oCommand.Parameters.Add("SIGNATURE", SqlDbType.NVarChar).Value = pReceiver.GetSignature() If oResult = True Then
pReceiver.Id = GetReceiverIdByEmail(pReceiver.Email, pTransaction)
Dim oResult = Database.ExecuteNonQuery(oCommand) Return True
If oResult = True Then Else
pReceiver.Id = GetReceiverIdByEmail(pReceiver.Email, pTransaction) Return False
End If
Else Else
Return False Logger.Warn($"Receiver [{pReceiver.Email}] already existing! Check collecting not existing Receivers!")
Return True
End If End If
Return True
Catch ex As Exception Catch ex As Exception
Logger.Error(ex) Logger.Error(ex)
Return False Return False
@ -83,18 +88,18 @@ Public Class ReceiverModel
Public Function Update(pReceiver As EnvelopeReceiver, pTransaction As SqlTransaction) As Boolean Public Function Update(pReceiver As EnvelopeReceiver, pTransaction As SqlTransaction) As Boolean
Try Try
Dim oSql As String = "UPDATE [dbo].[TBSIG_USER_RECEIVER] Dim oSql As String = $"UPDATE [dbo].[TBSIG_USER_RECEIVER]
SET [NAME] = @NAME SET [NAME] = '{pReceiver.Name}'
,[COMPANY_NAME] = @COMPANY ,[COMPANY_NAME] = '{pReceiver.Company}'
,[JOB_TITLE] = @JOB ,[JOB_TITLE] = '{pReceiver.JobTitle}'
WHERE RECEIVER_ID = @RECEIVER_ID" WHERE RECEIVER_ID = {pReceiver.Id}"
Dim oCommand = New SqlCommand(oSql) Dim oCommand = New SqlCommand(oSql)
oCommand.Parameters.Add("NAME", SqlDbType.NVarChar).Value = pReceiver.Name 'oCommand.Parameters.Add("NAME", SqlDbType.NVarChar).Value = pReceiver.Name
oCommand.Parameters.Add("COMPANY", SqlDbType.NVarChar).Value = pReceiver.Company 'oCommand.Parameters.Add("COMPANY", SqlDbType.NVarChar).Value = pReceiver.Company
oCommand.Parameters.Add("JOB", SqlDbType.NVarChar).Value = pReceiver.JobTitle 'oCommand.Parameters.Add("JOB", SqlDbType.NVarChar).Value = pReceiver.JobTitle
oCommand.Parameters.Add("RECEIVER_ID", SqlDbType.Int).Value = pReceiver.Id 'oCommand.Parameters.Add("RECEIVER_ID", SqlDbType.Int).Value = pReceiver.Id
oCommand.Parameters.Add("USER_ID", SqlDbType.Int).Value = pReceiver.Id 'oCommand.Parameters.Add("USER_ID", SqlDbType.Int).Value = pReceiver.Id
Return Database.ExecuteNonQuery(oCommand, pTransaction) Return Database.ExecuteNonQuery(oCommand, pTransaction)
Catch ex As Exception Catch ex As Exception
@ -113,7 +118,7 @@ Public Class ReceiverModel
End Function End Function
Public Function Assign(pEnvelope As Envelope, pReceiver As EnvelopeReceiver, pTransaction As SqlTransaction) As Boolean Public Function Assign(pEnvelope As Envelope, pReceiver As EnvelopeReceiver, pTransaction As SqlTransaction) As Boolean
Dim oSql = "INSERT INTO [dbo].[TBSIG_ENVELOPE_RECEIVER] Dim oSql = $"INSERT INTO [dbo].[TBSIG_ENVELOPE_RECEIVER]
([ENVELOPE_ID] ([ENVELOPE_ID]
,[RECEIVER_ID] ,[RECEIVER_ID]
,[PRIVATE_MESSAGE] ,[PRIVATE_MESSAGE]
@ -121,26 +126,28 @@ Public Class ReceiverModel
,[NAME] ,[NAME]
,[JOB_TITLE] ,[JOB_TITLE]
,[COMPANY_NAME] ,[COMPANY_NAME]
,[SEQUENCE]) ,[SEQUENCE]
,[PHONE_NUMBER])
VALUES VALUES
(@ENVELOPE_ID ('{pEnvelope.Id}'
,@RECEIVER_ID ,'{pReceiver.Id}'
,@MESSAGE ,'{pReceiver.PrivateMessage}'
,@ACCESS_CODE ,'{pReceiver.AccessCode}'
,@NAME ,'{pReceiver.Name}'
,@JOB ,'{pReceiver.JobTitle}'
,@COMPANY ,'{pReceiver.Company}'
,@SEQUENCE)" ,'{pReceiver.Sequence}'
,'{pReceiver.PhoneNumber}')"
Dim oCommand As New SqlCommand(oSql) Dim oCommand As New SqlCommand(oSql)
oCommand.Parameters.Add("ENVELOPE_ID", SqlDbType.NVarChar).Value = pEnvelope.Id 'oCommand.Parameters.Add("ENVELOPE_ID", SqlDbType.NVarChar).Value = pEnvelope.Id
oCommand.Parameters.Add("RECEIVER_ID", SqlDbType.NVarChar).Value = pReceiver.Id 'oCommand.Parameters.Add("RECEIVER_ID", SqlDbType.NVarChar).Value = pReceiver.Id
oCommand.Parameters.Add("MESSAGE", SqlDbType.NVarChar).Value = pReceiver.PrivateMessage 'oCommand.Parameters.Add("MESSAGE", SqlDbType.NVarChar).Value = pReceiver.PrivateMessage
oCommand.Parameters.Add("ACCESS_CODE", SqlDbType.NVarChar).Value = pReceiver.AccessCode 'oCommand.Parameters.Add("ACCESS_CODE", SqlDbType.NVarChar).Value = pReceiver.AccessCode
oCommand.Parameters.Add("NAME", SqlDbType.NVarChar).Value = pReceiver.Name 'oCommand.Parameters.Add("NAME", SqlDbType.NVarChar).Value = pReceiver.Name
oCommand.Parameters.Add("JOB", SqlDbType.NVarChar).Value = pReceiver.JobTitle 'oCommand.Parameters.Add("JOB", SqlDbType.NVarChar).Value = pReceiver.JobTitle
oCommand.Parameters.Add("COMPANY", SqlDbType.NVarChar).Value = pReceiver.Company 'oCommand.Parameters.Add("COMPANY", SqlDbType.NVarChar).Value = pReceiver.Company
oCommand.Parameters.Add("SEQUENCE", SqlDbType.NVarChar).Value = pReceiver.Sequence 'oCommand.Parameters.Add("SEQUENCE", SqlDbType.NVarChar).Value = pReceiver.Sequence
Return Database.ExecuteNonQuery(oCommand, pTransaction) Return Database.ExecuteNonQuery(oCommand, pTransaction)
End Function End Function
@ -266,6 +273,22 @@ Public Class ReceiverModel
Return String.Empty Return String.Empty
End Try End Try
End Function End Function
Public Function GetLastUsedReceiverPhone(pEmailAddress As String, pUserId As Integer) As String
Try
Dim oSql As String
oSql = "SELECT TOP 1 [PHONE_NUMBER] FROM dbo.VWSIG_ENVELOPE_RECEIVERS "
oSql += $" WHERE ENV_USERID_CREATED = {pUserId}) "
oSql += $" AND EMAIL_ADDRESS = '{pEmailAddress}' "
oSql += " AND Len([PHONE_NUMBER]) > 0 "
oSql += " ORDER BY [ADDED_WHEN] DESC"
Return Database.GetScalarValue(oSql)
Catch ex As Exception
Logger.Error(ex)
Return String.Empty
End Try
End Function
Private Function GetReceiverIdByEmail(pEmailAddress As String, pTransaction As SqlTransaction) As Integer Private Function GetReceiverIdByEmail(pEmailAddress As String, pTransaction As SqlTransaction) As Integer
Try Try

View File

@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' indem Sie "*" wie unten gezeigt eingeben: ' indem Sie "*" wie unten gezeigt eingeben:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.0.0.0")> <Assembly: AssemblyVersion("2.2.0.0")>
<Assembly: AssemblyFileVersion("2.0.0.0")> <Assembly: AssemblyFileVersion("2.2.0.0")>

View File

@ -117,6 +117,9 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="Dialog Concat PDF" xml:space="preserve">
<value>Please select the PDF documents you would like to link/concat:</value>
</data>
<data name="Do you really want to delete this envelope" xml:space="preserve"> <data name="Do you really want to delete this envelope" xml:space="preserve">
<value>Do you really want to delete this envelope?</value> <value>Do you really want to delete this envelope?</value>
</data> </data>
@ -141,6 +144,12 @@
<data name="Document forwarded" xml:space="preserve"> <data name="Document forwarded" xml:space="preserve">
<value>Document forwarded to receiver: {0}</value> <value>Document forwarded to receiver: {0}</value>
</data> </data>
<data name="Drop only one file" xml:space="preserve">
<value>Currently, only one PDF file is permitted via drag and drop.</value>
</data>
<data name="Drop only pdf" xml:space="preserve">
<value />
</data>
<data name="Edit Envelope" xml:space="preserve"> <data name="Edit Envelope" xml:space="preserve">
<value>Edit Envelope</value> <value>Edit Envelope</value>
</data> </data>
@ -171,6 +180,9 @@
<data name="Error email Validation" xml:space="preserve"> <data name="Error email Validation" xml:space="preserve">
<value>The email [ @Mail ] could not be varified!</value> <value>The email [ @Mail ] could not be varified!</value>
</data> </data>
<data name="Error phone Validation" xml:space="preserve">
<value />
</data>
<data name="Error sending the envelope" xml:space="preserve"> <data name="Error sending the envelope" xml:space="preserve">
<value>Error sending the envelope:</value> <value>Error sending the envelope:</value>
</data> </data>
@ -193,7 +205,7 @@
<value>Receiver {0} has an invalid Email Address.</value> <value>Receiver {0} has an invalid Email Address.</value>
</data> </data>
<data name="Invitation successfully resend" xml:space="preserve"> <data name="Invitation successfully resend" xml:space="preserve">
<value>Invitation has been send once again!</value> <value>Invitation to [@Mail] has been send once again!</value>
</data> </data>
<data name="Missing Documents" xml:space="preserve"> <data name="Missing Documents" xml:space="preserve">
<value>Missing Documents</value> <value>Missing Documents</value>

View File

@ -117,6 +117,9 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="Dialog Concat PDF" xml:space="preserve">
<value>Bitte wählen Sie die PDF-Dokumente die Sie verketten möchten:</value>
</data>
<data name="Do you really want to delete this envelope" xml:space="preserve"> <data name="Do you really want to delete this envelope" xml:space="preserve">
<value>Wollen Sie diesen Umschlag wirklich löschen?</value> <value>Wollen Sie diesen Umschlag wirklich löschen?</value>
</data> </data>
@ -141,6 +144,9 @@
<data name="Document forwarded" xml:space="preserve"> <data name="Document forwarded" xml:space="preserve">
<value>Umschlag an Empfänger {0} weitergeleitet.</value> <value>Umschlag an Empfänger {0} weitergeleitet.</value>
</data> </data>
<data name="Drop only one file" xml:space="preserve">
<value>Aktuell ist per Drag and Drop nur eine PDF-Datei erlaubt.</value>
</data>
<data name="Edit Envelope" xml:space="preserve"> <data name="Edit Envelope" xml:space="preserve">
<value>Bearbeite Umschlag</value> <value>Bearbeite Umschlag</value>
</data> </data>
@ -171,6 +177,10 @@
<data name="Error email Validation" xml:space="preserve"> <data name="Error email Validation" xml:space="preserve">
<value>Die Email-Adresse [ @Mail ] konnte nicht validiert werden!</value> <value>Die Email-Adresse [ @Mail ] konnte nicht validiert werden!</value>
</data> </data>
<data name="Error phone Validation" xml:space="preserve">
<value>The mobile phone number [@PhoneNr] could not be validated.
Pattern: +491234567890</value>
</data>
<data name="Error sending the envelope" xml:space="preserve"> <data name="Error sending the envelope" xml:space="preserve">
<value>Fehler beim Senden des Umschlags:</value> <value>Fehler beim Senden des Umschlags:</value>
</data> </data>
@ -193,7 +203,7 @@
<value>Empfänger {0} hat keine gültige Email Addresse.</value> <value>Empfänger {0} hat keine gültige Email Addresse.</value>
</data> </data>
<data name="Invitation successfully resend" xml:space="preserve"> <data name="Invitation successfully resend" xml:space="preserve">
<value>Die Einladung wurde nochmal versendet!</value> <value>Die Einladung an [@Mail] wurde nochmal versendet!</value>
</data> </data>
<data name="Missing Documents" xml:space="preserve"> <data name="Missing Documents" xml:space="preserve">
<value>Fehlendes Dokument</value> <value>Fehlendes Dokument</value>

View File

@ -64,6 +64,15 @@ Namespace My.Resources
End Set End Set
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Bitte wählen Sie die PDF-Dokumente die Sie verketten möchten: ähnelt.
'''</summary>
Public Shared ReadOnly Property Dialog_Concat_PDF() As String
Get
Return ResourceManager.GetString("Dialog Concat PDF", resourceCulture)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Wollen Sie diesen Umschlag wirklich löschen? ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Wollen Sie diesen Umschlag wirklich löschen? ähnelt.
'''</summary> '''</summary>
@ -136,6 +145,15 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Aktuell ist per Drag and Drop nur eine PDF-Datei erlaubt. ähnelt.
'''</summary>
Public Shared ReadOnly Property Drop_only_one_file() As String
Get
Return ResourceManager.GetString("Drop only one file", resourceCulture)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Bearbeite Umschlag ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Bearbeite Umschlag ähnelt.
'''</summary> '''</summary>
@ -226,6 +244,16 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die The mobile phone number [@PhoneNr] could not be validated.
'''Pattern: +491234567890 ähnelt.
'''</summary>
Public Shared ReadOnly Property Error_phone_Validation() As String
Get
Return ResourceManager.GetString("Error phone Validation", resourceCulture)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Fehler beim Senden des Umschlags: ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Fehler beim Senden des Umschlags: ähnelt.
'''</summary> '''</summary>
@ -290,7 +318,7 @@ Namespace My.Resources
End Property End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Die Einladung wurde nochmal versendet! ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Die Einladung an [@Mail] wurde nochmal versendet! ähnelt.
'''</summary> '''</summary>
Public Shared ReadOnly Property Invitation_successfully_resend() As String Public Shared ReadOnly Property Invitation_successfully_resend() As String
Get Get

View File

@ -91,6 +91,15 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Fortgeschrittene Elektronische Signatur ähnelt.
'''</summary>
Public Shared ReadOnly Property AdvancedElectronicSignature() As String
Get
Return ResourceManager.GetString("AdvancedElectronicSignature", resourceCulture)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Abgeschlossen ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Abgeschlossen ähnelt.
'''</summary> '''</summary>
@ -154,15 +163,6 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Elektronische Signatur ähnelt.
'''</summary>
Public Shared ReadOnly Property ElectronicSignature() As String
Get
Return ResourceManager.GetString("ElectronicSignature", resourceCulture)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Archiviert ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Archiviert ähnelt.
'''</summary> '''</summary>
@ -307,14 +307,14 @@ Namespace My.Resources
End Get End Get
End Property End Property
''''<summary> '''<summary>
'''' Sucht eine lokalisierte Zeichenfolge, die Qualifizierte Signatur ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Qualifizierte Signatur ähnelt.
''''</summary> '''</summary>
'Public Shared ReadOnly Property QualifiedSignature() As String Public Shared ReadOnly Property QualifiedSignature() As String
' Get Get
' Return ResourceManager.GetString("QualifiedSignature", resourceCulture) Return ResourceManager.GetString("QualifiedSignature", resourceCulture)
' End Get End Get
'End Property End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Arbeitsanweisung ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Arbeitsanweisung ähnelt.

View File

@ -126,6 +126,9 @@
<data name="AccessCodeRequested" xml:space="preserve"> <data name="AccessCodeRequested" xml:space="preserve">
<value>Accesscode requested</value> <value>Accesscode requested</value>
</data> </data>
<data name="AdvancedElectronicSignature" xml:space="preserve">
<value>Advanced electronic signature</value>
</data>
<data name="Completed" xml:space="preserve"> <data name="Completed" xml:space="preserve">
<value>Completed</value> <value>Completed</value>
</data> </data>
@ -144,9 +147,6 @@
<data name="Draft" xml:space="preserve"> <data name="Draft" xml:space="preserve">
<value>Draft</value> <value>Draft</value>
</data> </data>
<data name="ElectronicSignature" xml:space="preserve">
<value>Electronic Signature</value>
</data>
<data name="EnvelopeArchived" xml:space="preserve"> <data name="EnvelopeArchived" xml:space="preserve">
<value>Archived</value> <value>Archived</value>
</data> </data>

View File

@ -126,6 +126,9 @@
<data name="AccessCodeRequested" xml:space="preserve"> <data name="AccessCodeRequested" xml:space="preserve">
<value>Zugriffscode angefordert</value> <value>Zugriffscode angefordert</value>
</data> </data>
<data name="AdvancedElectronicSignature" xml:space="preserve">
<value>Fortgeschrittene Elektronische Signatur</value>
</data>
<data name="Completed" xml:space="preserve"> <data name="Completed" xml:space="preserve">
<value>Abgeschlossen</value> <value>Abgeschlossen</value>
</data> </data>
@ -147,9 +150,6 @@
<data name="Draft" xml:space="preserve"> <data name="Draft" xml:space="preserve">
<value>Entwurf</value> <value>Entwurf</value>
</data> </data>
<data name="ElectronicSignature" xml:space="preserve">
<value>Elektronische Signatur</value>
</data>
<data name="EnvelopeArchived" xml:space="preserve"> <data name="EnvelopeArchived" xml:space="preserve">
<value>Archiviert</value> <value>Archiviert</value>
</data> </data>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="GdPicture" version="14.2.89" targetFramework="net462" /> <package id="GdPicture" version="14.2.90" targetFramework="net462" />
<package id="GdPicture.runtimes.windows" version="14.2.89" targetFramework="net462" /> <package id="GdPicture.runtimes.windows" version="14.2.90" targetFramework="net462" />
<package id="Microsoft.Extensions.Logging.Abstractions" version="2.1.1" targetFramework="net462" /> <package id="Microsoft.Extensions.Logging.Abstractions" version="2.1.1" targetFramework="net462" />
<package id="Newtonsoft.Json" version="13.0.3" targetFramework="net462" /> <package id="Newtonsoft.Json" version="13.0.3" targetFramework="net462" />
<package id="Quartz" version="3.8.0" targetFramework="net462" /> <package id="Quartz" version="3.8.0" targetFramework="net462" />

View File

@ -65,7 +65,8 @@ Public Class EnvelopeEditorController
Public Function CreateEnvelope() As Envelope Public Function CreateEnvelope() As Envelope
Dim oEnvelope As New Envelope() With { Dim oEnvelope As New Envelope() With {
.UserId = State.UserId, .UserId = State.UserId,
.User = UserModel.SelectUser() .User = UserModel.SelectUser(),
.TFA_Enabled = DEF_TF_ENABLED
} }
If EnvelopeModel.Insert(oEnvelope) Then If EnvelopeModel.Insert(oEnvelope) Then
@ -87,11 +88,13 @@ Public Class EnvelopeEditorController
Public Function SaveReceivers(pEnvelope As Envelope, pReceiversFromGrid As List(Of EnvelopeReceiver)) As Boolean Public Function SaveReceivers(pEnvelope As Envelope, pReceiversFromGrid As List(Of EnvelopeReceiver)) As Boolean
Dim oExistingReceivers As List(Of EnvelopeReceiver) = ReceiverModel.ListReceivers(pReceiversFromGrid).ToList() Dim oExistingReceivers As List(Of EnvelopeReceiver) = ReceiverModel.ListReceivers(pReceiversFromGrid).ToList()
Dim oExistingAddresses = oExistingReceivers.Select(Function(r) r.Email) Dim oExistingAddresses = oExistingReceivers.Select(Function(r) r.Email)
Logger.Debug($"oExistingReceivers.count: {oExistingReceivers.Count}")
Logger.Debug($"oExistingAddresses.count: {oExistingAddresses.Count}")
Dim oNewReceivers = pReceiversFromGrid.Where(Function(r) Dim oNewReceivers = pReceiversFromGrid.Where(Function(r)
If r.Email Is Nothing Then Return False If r.Email Is Nothing Then Return False
Return Not oExistingAddresses.Contains(r.Email) Return Not oExistingAddresses.Contains(r.Email)
End Function).ToList() End Function).ToList()
Logger.Debug($"oNewReceivers.count: {oNewReceivers.Count}")
If CreateNewReceivers(oNewReceivers) = False Then If CreateNewReceivers(oNewReceivers) = False Then
Return False Return False
End If End If
@ -406,4 +409,11 @@ Public Class EnvelopeEditorController
Return String.Empty Return String.Empty
End If End If
End Function End Function
Public Function GetLastPhoneByEmailAdress(pEmailAdress As String) As String
If (String.IsNullOrEmpty(pEmailAdress) = False) Then
Return ReceiverModel.GetLastUsedReceiverPhone(pEmailAdress, Envelope.UserId)
Else
Return String.Empty
End If
End Function
End Class End Class

View File

@ -76,10 +76,10 @@
<HintPath>..\..\2_DLL Projekte\DDMonorepo\Controls.DocumentViewer\bin\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath> <HintPath>..\..\2_DLL Projekte\DDMonorepo\Controls.DocumentViewer\bin\Debug\DigitalData.Controls.DocumentViewer.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.GUIs.Common"> <Reference Include="DigitalData.GUIs.Common">
<HintPath>..\..\DDMonorepo\GUIs.Common\bin\Debug\DigitalData.GUIs.Common.dll</HintPath> <HintPath>..\..\2_DLL Projekte\DDMonorepo\GUIs.Common\bin\Debug\DigitalData.GUIs.Common.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Base"> <Reference Include="DigitalData.Modules.Base">
<HintPath>..\..\DDModules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath> <HintPath>..\..\2_DLL Projekte\DDModules\Base\bin\Debug\DigitalData.Modules.Base.dll</HintPath>
</Reference> </Reference>
<Reference Include="DigitalData.Modules.Config, Version=1.2.2.0, Culture=neutral, processorArchitecture=MSIL"> <Reference Include="DigitalData.Modules.Config, Version=1.2.2.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
@ -107,6 +107,7 @@
<HintPath>..\packages\NLog.5.0.5\lib\net46\NLog.dll</HintPath> <HintPath>..\packages\NLog.5.0.5\lib\net46\NLog.dll</HintPath>
</Reference> </Reference>
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" /> <Reference Include="System.Configuration" />
<Reference Include="System.Core" /> <Reference Include="System.Core" />
<Reference Include="System.Data.Linq" /> <Reference Include="System.Data.Linq" />
@ -142,12 +143,6 @@
<Compile Include="Controllers\EnvelopeListController.vb" /> <Compile Include="Controllers\EnvelopeListController.vb" />
<Compile Include="Controllers\FieldEditorController.vb" /> <Compile Include="Controllers\FieldEditorController.vb" />
<Compile Include="Controllers\BaseController.vb" /> <Compile Include="Controllers\BaseController.vb" />
<Compile Include="frmChooseDocVariant.Designer.vb">
<DependentUpon>frmChooseDocVariant.vb</DependentUpon>
</Compile>
<Compile Include="frmChooseDocVariant.vb">
<SubType>Form</SubType>
</Compile>
<Compile Include="frmEnvelopeEditor.vb"> <Compile Include="frmEnvelopeEditor.vb">
<SubType>Form</SubType> <SubType>Form</SubType>
</Compile> </Compile>
@ -196,9 +191,6 @@
<DesignTime>True</DesignTime> <DesignTime>True</DesignTime>
</Compile> </Compile>
<Compile Include="My Project\AssemblyInfo.vb" /> <Compile Include="My Project\AssemblyInfo.vb" />
<EmbeddedResource Include="frmChooseDocVariant.resx">
<DependentUpon>frmChooseDocVariant.vb</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="frmEnvelopeEditor.en.resx"> <EmbeddedResource Include="frmEnvelopeEditor.en.resx">
<DependentUpon>frmEnvelopeEditor.vb</DependentUpon> <DependentUpon>frmEnvelopeEditor.vb</DependentUpon>
<SubType>Designer</SubType> <SubType>Designer</SubType>
@ -213,6 +205,7 @@
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="frmEnvelopeMainData.resx"> <EmbeddedResource Include="frmEnvelopeMainData.resx">
<DependentUpon>frmEnvelopeMainData.vb</DependentUpon> <DependentUpon>frmEnvelopeMainData.vb</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="frmFieldEditor.en.resx"> <EmbeddedResource Include="frmFieldEditor.en.resx">
<DependentUpon>frmFieldEditor.vb</DependentUpon> <DependentUpon>frmFieldEditor.vb</DependentUpon>

View File

@ -1,5 +1,6 @@
Imports DigitalData.Modules.Database Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging Imports DigitalData.Modules.Logging
Imports EnvelopeGenerator.Common
Module ModuleSettings Module ModuleSettings
Public ENVELOPE_TEMP_DOCUMENT As String = "" Public ENVELOPE_TEMP_DOCUMENT As String = ""
@ -7,4 +8,12 @@ Module ModuleSettings
Public Directory2Delete As String = "" Public Directory2Delete As String = ""
Public MS_GDPICTUREKEY As String = "" Public MS_GDPICTUREKEY As String = ""
Public DB_DD_ECM As MSSQLServer = Nothing Public DB_DD_ECM As MSSQLServer = Nothing
Public DEF_TF_ENABLED As Boolean = False
Public MYUSER As User
Public MyTempFiles As TempFiles
Public SQL_REP_ENV_USER_LM As String = ""
Public SQL_REP_ENV_USER_TM As String = ""
Public SQL_REP_ENV_USER_Y As String = ""
Public SQL_REP_ENV_USER_ALL As String = ""
Public DT_CHARTS As DataTable
End Module End Module

View File

@ -1,75 +0,0 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmChooseDocVariant
Inherits DevExpress.XtraEditors.XtraForm
'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Wird vom Windows Form-Designer benötigt.
Private components As System.ComponentModel.IContainer
'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich.
'Das Bearbeiten ist mit dem Windows Form-Designer möglich.
'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmChooseDocVariant))
Me.LabelControl1 = New DevExpress.XtraEditors.LabelControl()
Me.SimpleButton2 = New DevExpress.XtraEditors.SimpleButton()
Me.OpenFileDialog1 = New System.Windows.Forms.OpenFileDialog()
Me.SuspendLayout()
'
'LabelControl1
'
Me.LabelControl1.Appearance.Font = New System.Drawing.Font("Segoe UI", 9.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.LabelControl1.Appearance.Options.UseFont = True
Me.LabelControl1.Location = New System.Drawing.Point(12, 26)
Me.LabelControl1.Name = "LabelControl1"
Me.LabelControl1.Size = New System.Drawing.Size(625, 17)
Me.LabelControl1.TabIndex = 2
Me.LabelControl1.Text = "In diesem Dialog wählen Sie die Dokumente aus, welche dann zu einem Dokument verk" &
"ettet werden!"
'
'SimpleButton2
'
Me.SimpleButton2.Appearance.Font = New System.Drawing.Font("Segoe UI", 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.SimpleButton2.Appearance.Options.UseFont = True
Me.SimpleButton2.ImageOptions.SvgImage = CType(resources.GetObject("SimpleButton2.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.SimpleButton2.Location = New System.Drawing.Point(142, 85)
Me.SimpleButton2.Name = "SimpleButton2"
Me.SimpleButton2.Size = New System.Drawing.Size(343, 50)
Me.SimpleButton2.TabIndex = 3
Me.SimpleButton2.Text = "Mehrere PDF auswählen und automatisch verketten"
'
'OpenFileDialog1
'
Me.OpenFileDialog1.FileName = "OpenFileDialog1"
Me.OpenFileDialog1.Filter = "PDF Files|*.pdf"
'
'frmChooseDocVariant
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(644, 189)
Me.Controls.Add(Me.SimpleButton2)
Me.Controls.Add(Me.LabelControl1)
Me.IconOptions.SvgImage = CType(resources.GetObject("frmChooseDocVariant.IconOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.Name = "frmChooseDocVariant"
Me.Text = "Mehrere Dokumente"
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents LabelControl1 As DevExpress.XtraEditors.LabelControl
Friend WithEvents SimpleButton2 As DevExpress.XtraEditors.SimpleButton
Friend WithEvents OpenFileDialog1 As OpenFileDialog
End Class

View File

@ -1,179 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="DevExpress.Data.v21.2" name="DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="SimpleButton2.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAJYEAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ
LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD
MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjc1O30KPC9zdHlsZT4NCiAgPGcgaWQ9IkRvY3VtZW50UERGIj4NCiAgICA8cGF0aCBkPSJN
MjIsMjR2NEgyVjJoMTR2NWMwLDAuNiwwLjQsMSwxLDFoNXY0aDJWN2wtNy03SDFDMC40LDAsMCwwLjQs
MCwxdjI4YzAsMC42LDAuNCwxLDEsMWgyMmMwLjYsMCwxLTAuNCwxLTEgICB2LTVIMjJ6IiBjbGFzcz0i
QmxhY2siIC8+DQogICAgPHBhdGggZD0iTTE5LjIsMTZjMC4zLDAuNSwwLjQsMS4xLDAuNCwxLjljMCww
LjktMC4yLDEuNS0wLjUsMmMtMC4zLDAuNS0wLjcsMC43LTEuMywwLjdoLTAuNnYtNS4zaDAuNiAgIEMx
OC40LDE1LjMsMTguOSwxNS42LDE5LjIsMTZ6IE0xMi4xLDE1LjNoLTAuNXYyLjZoMC41YzAuNywwLDEu
MS0wLjQsMS4xLTEuM2MwLTAuNC0wLjEtMC44LTAuMy0xQzEyLjYsMTUuNCwxMi40LDE1LjMsMTIuMSwx
NS4zeiAgICBNMzAsMTJ2MTJINlYxMkgzMHogTTE0LjgsMTYuNWMwLTAuOC0wLjItMS41LTAuNi0xLjlj
LTAuNC0wLjQtMS0wLjctMS44LTAuN0gxMHY4aDEuNnYtMi43aDAuNmMwLjgsMCwxLjQtMC4zLDEuOS0w
LjggICBDMTQuNSwxOCwxNC44LDE3LjMsMTQuOCwxNi41eiBNMjEuMiwxNy45YzAtMi42LTEuMS0zLjkt
My40LTMuOWgtMi4xdjhoMi4yYzEuMSwwLDEuOS0wLjQsMi41LTEuMUMyMC45LDIwLjIsMjEuMiwxOS4y
LDIxLjIsMTcuOXogICAgTTI2LDE0aC0zLjd2OGgxLjZ2LTMuMWgydi0xLjNoLTJ2LTIuMkgyNlYxNHoi
IGNsYXNzPSJSZWQiIC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value>
</data>
<metadata name="OpenFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<data name="frmChooseDocVariant.IconOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANYEAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTG9naWNhbCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KPC9z
dHlsZT4NCiAgPHBhdGggZD0iTTUsNGgyM1YzYzAtMC42LTAuNC0xLTEtMUg1QzMuMywyLDIsMy4zLDIs
NXYyMmMwLDEuNywxLjMsMywzLDNoMjJjMC42LDAsMS0wLjQsMS0xVjZINUM0LjQsNiw0LDUuNiw0LDUg
IEM0LDQuNCw0LjQsNCw1LDR6IE0xNiwyNGgtMnYtMmgyVjI0eiBNMTEuNiwxNC40YzAuMi0wLjUsMC40
LTAuOSwwLjctMS4zYzAuMy0wLjQsMC43LTAuNiwxLjEtMC44YzAuNC0wLjIsMC45LTAuMywxLjUtMC4z
ICBjMC43LDAsMS4zLDAuMSwxLjgsMC4zYzAuNSwwLjIsMC45LDAuNSwxLjIsMC44YzAuMywwLjMsMC41
LDAuNywwLjYsMWMwLjEsMC40LDAuMiwwLjcsMC4yLDFjMCwwLjQsMCwwLjctMC4xLDEgIGMtMC4xLDAu
My0wLjIsMC41LTAuMywwLjhjLTAuMSwwLjItMC4zLDAuNC0wLjQsMC42Yy0wLjIsMC4yLTAuMywwLjMt
MC41LDAuNGMtMC4yLDAuMS0wLjMsMC4zLTAuNSwwLjRjLTAuMiwwLjEtMC4zLDAuMy0wLjQsMC40ICBj
LTAuMSwwLjEtMC4zLDAuMy0wLjQsMC41Yy0wLjEsMC4yLTAuMiwwLjQtMC4yLDAuNnYwLjZoLTJ2LTAu
N2MwLTAuNCwwLjEtMC43LDAuMS0wLjljMC4xLTAuMywwLjItMC41LDAuMy0wLjcgIGMwLjEtMC4yLDAu
My0wLjQsMC40LTAuNWMwLjEtMC4xLDAuMy0wLjMsMC40LTAuNHMwLjMtMC4zLDAuNC0wLjRjMC4xLTAu
MSwwLjItMC4yLDAuMy0wLjRjMC4xLTAuMSwwLjItMC4zLDAuMi0wLjUgIGMwLjEtMC4yLDAuMS0wLjQs
MC4xLTAuNmMwLTAuNS0wLjEtMC45LTAuMy0xLjFjLTAuMi0wLjItMC41LTAuNC0wLjktMC40Yy0wLjMs
MC0wLjUsMC4xLTAuNywwLjJjLTAuMiwwLjEtMC40LDAuMy0wLjUsMC41ICBjLTAuMSwwLjItMC4yLDAu
NC0wLjMsMC43Yy0wLjEsMC4yLTAuMSwwLjUtMC4xLDAuOGgtMi4yQzExLjQsMTUuNCwxMS40LDE0Ljks
MTEuNiwxNC40eiIgY2xhc3M9IkJsdWUiIC8+DQo8L3N2Zz4L
</value>
</data>
</root>

View File

@ -1,96 +0,0 @@
Imports DevExpress.XtraSplashScreen
Imports EnvelopeGenerator.Common
Imports DigitalData.Modules.Logging
Imports GdPicture14
Public Class frmChooseDocVariant
Private TempFiles As TempFiles
Public Property State As State
Private Logger As Logger
Private Sub frmChooseDocVariant_Load(sender As Object, e As EventArgs) Handles Me.Load
ENVELOPE_TEMP_DOCUMENT = ""
TempFiles = New TempFiles(State.LogConfig)
TempFiles.Create()
Logger = State.LogConfig.GetLogger()
End Sub
Private Sub SimpleButton1_Click(sender As Object, e As EventArgs)
OpenFileDialog1.Multiselect = False
Dim oHandle = SplashScreenManager.ShowOverlayForm(Me)
Try
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
ENVELOPE_TEMP_DOCUMENT = OpenFileDialog1.FileName
End If
Catch ex As Exception
Logger.Error(ex)
Finally
SplashScreenManager.CloseOverlayForm(oHandle)
End Try
' Else
' SplashScreenManager.CloseOverlayForm(oHandle)
' End If
End Sub
Private Sub SimpleButton2_Click(sender As Object, e As EventArgs) Handles SimpleButton2.Click
OpenFileDialog1.Multiselect = True
Dim oHandle = SplashScreenManager.ShowOverlayForm(Me)
Try
Dim oErr As Boolean = False
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
Dim oIDX As Integer = 0
For Each oFile As String In OpenFileDialog1.FileNames
oIDX += 1
Next
Dim arPDF As GdPicturePDF() = New GdPicturePDF(oIDX) {}
oIDX = 0
For Each oFile As String In OpenFileDialog1.FileNames
arPDF(oIDX) = New GdPicturePDF()
If arPDF(oIDX).LoadFromFile(oFile) <> GdPictureStatus.OK Then
MsgBox($"PDF Statsu of file {oFile} is not OK. Please check PDF-conformity!", MsgBoxStyle.Critical)
oErr = True
Exit For
End If
oIDX += 1
Next
If oErr = False Then
Dim dstPDF As GdPicturePDF = arPDF(0).MergeDocuments(arPDF)
Dim oStatus As GdPictureStatus = arPDF(0).GetStat()
If oStatus = GdPictureStatus.OK Then
MsgBox("All documents have been successfully merged.", MsgBoxStyle.Information)
Dim oTempFolder = TempFiles.TempPath
Dim oTempFilename = String.Concat(oTempFolder, "\", $"MergedDoc.pdf")
If System.IO.File.Exists(oTempFilename) Then
System.IO.File.Delete(oTempFilename)
End If
If dstPDF.SaveToFile(oTempFilename) = GdPictureStatus.OK Then
MessageBox.Show("Merged document has been successfully saved.", "Example: MergeDocuments")
ENVELOPE_TEMP_DOCUMENT = oTempFilename
dstPDF.CloseDocument()
End If
Else
MessageBox.Show("The MergeDocuments() method has failed with the status: " + oStatus.ToString(), "Example: MergeDocuments")
End If
dstPDF.Dispose()
oIDX = 0
For Each oFile As String In OpenFileDialog1.FileNames
arPDF(oIDX).CloseDocument()
oIDX += 1
Next
End If
End If
Catch ex As Exception
Logger.Error(ex)
Finally
SplashScreenManager.CloseOverlayForm(oHandle)
End Try
End Sub
Private Sub LabelControl1_Click(sender As Object, e As EventArgs) Handles LabelControl1.Click
End Sub
End Class

View File

@ -56,16 +56,16 @@ Partial Public Class frmEnvelopeEditor
Me.txtCreatorEmailLabel = New DevExpress.XtraBars.BarStaticItem() Me.txtCreatorEmailLabel = New DevExpress.XtraBars.BarStaticItem()
Me.txtEnvelopeIdLabel2 = New DevExpress.XtraBars.BarStaticItem() Me.txtEnvelopeIdLabel2 = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem() Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
Me.BarStaticItem1 = New DevExpress.XtraBars.BarStaticItem() Me.bsitm_info = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem() Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem()
Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem() Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem()
Me.bbtnitm_ConcatFiles = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroupDocuments = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroupDocuments = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroupInvitation = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroupInvitation = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroupAddSignature = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroupAddSignature = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroupReceiver = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroupReceiver = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.LayoutControlGroup4 = New DevExpress.XtraLayout.LayoutControlGroup() Me.LayoutControlGroup4 = New DevExpress.XtraLayout.LayoutControlGroup()
Me.LayoutControlGroup5 = New DevExpress.XtraLayout.LayoutControlGroup() Me.LayoutControlGroup5 = New DevExpress.XtraLayout.LayoutControlGroup()
@ -82,6 +82,7 @@ Partial Public Class frmEnvelopeEditor
Me.RepositoryItemComboBox1 = New DevExpress.XtraEditors.Repository.RepositoryItemComboBox() Me.RepositoryItemComboBox1 = New DevExpress.XtraEditors.Repository.RepositoryItemComboBox()
Me.colName = New DevExpress.XtraGrid.Columns.GridColumn() Me.colName = New DevExpress.XtraGrid.Columns.GridColumn()
Me.colAccessCode = New DevExpress.XtraGrid.Columns.GridColumn() Me.colAccessCode = New DevExpress.XtraGrid.Columns.GridColumn()
Me.colPhoneNumber = New DevExpress.XtraGrid.Columns.GridColumn()
Me.RepositoryItemEmailEdit = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit() Me.RepositoryItemEmailEdit = New DevExpress.XtraEditors.Repository.RepositoryItemTextEdit()
Me.RepositoryItemPictureEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemPictureEdit() Me.RepositoryItemPictureEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemPictureEdit()
Me.RepositoryItemColorPickEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemColorPickEdit() Me.RepositoryItemColorPickEdit1 = New DevExpress.XtraEditors.Repository.RepositoryItemColorPickEdit()
@ -100,7 +101,7 @@ Partial Public Class frmEnvelopeEditor
Me.EnvelopeDocumentBindingSource = New System.Windows.Forms.BindingSource(Me.components) Me.EnvelopeDocumentBindingSource = New System.Windows.Forms.BindingSource(Me.components)
Me.OpenFileDialog1 = New System.Windows.Forms.OpenFileDialog() Me.OpenFileDialog1 = New System.Windows.Forms.OpenFileDialog()
Me.txtEnvelopeIdLabel = New DevExpress.XtraBars.BarStaticItem() Me.txtEnvelopeIdLabel = New DevExpress.XtraBars.BarStaticItem()
Me.BarButtonItem4 = New DevExpress.XtraBars.BarButtonItem() Me.btnShowFile = New DevExpress.XtraBars.BarButtonItem()
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerControl1.Panel1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SplitContainerControl1.Panel1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl1.Panel1.SuspendLayout() Me.SplitContainerControl1.Panel1.SuspendLayout()
@ -243,9 +244,9 @@ Partial Public Class frmEnvelopeEditor
'RibbonControl1 'RibbonControl1
' '
Me.RibbonControl1.ExpandCollapseItem.Id = 0 Me.RibbonControl1.ExpandCollapseItem.Id = 0
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.btnSave, Me.btnCancel, Me.btnNewFile, Me.btnDeleteFile, Me.btnSendEnvelope, Me.btnEditFields, Me.btnDeleteReceiver, Me.btnEditData, Me.txtCreatorEmailLabel, Me.txtEnvelopeIdLabel2, Me.BarButtonItem1, Me.BarStaticItem1, Me.BarButtonItem2, Me.BarButtonItem3, Me.BarButtonItem4}) Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.btnSave, Me.btnCancel, Me.btnNewFile, Me.btnDeleteFile, Me.btnSendEnvelope, Me.btnEditFields, Me.btnDeleteReceiver, Me.btnEditData, Me.txtCreatorEmailLabel, Me.txtEnvelopeIdLabel2, Me.BarButtonItem1, Me.bsitm_info, Me.BarButtonItem2, Me.BarButtonItem3, Me.bbtnitm_ConcatFiles, Me.btnShowFile})
resources.ApplyResources(Me.RibbonControl1, "RibbonControl1") resources.ApplyResources(Me.RibbonControl1, "RibbonControl1")
Me.RibbonControl1.MaxItemId = 17 Me.RibbonControl1.MaxItemId = 18
Me.RibbonControl1.Name = "RibbonControl1" Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1}) Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False] Me.RibbonControl1.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
@ -334,10 +335,10 @@ Partial Public Class frmEnvelopeEditor
Me.BarButtonItem1.Id = 12 Me.BarButtonItem1.Id = 12
Me.BarButtonItem1.Name = "BarButtonItem1" Me.BarButtonItem1.Name = "BarButtonItem1"
' '
'BarStaticItem1 'bsitm_info
' '
Me.BarStaticItem1.Id = 13 Me.bsitm_info.Id = 13
Me.BarStaticItem1.Name = "BarStaticItem1" Me.bsitm_info.Name = "bsitm_info"
' '
'BarButtonItem2 'BarButtonItem2
' '
@ -351,9 +352,16 @@ Partial Public Class frmEnvelopeEditor
Me.BarButtonItem3.Id = 15 Me.BarButtonItem3.Id = 15
Me.BarButtonItem3.Name = "BarButtonItem3" Me.BarButtonItem3.Name = "BarButtonItem3"
' '
'bbtnitm_ConcatFiles
'
resources.ApplyResources(Me.bbtnitm_ConcatFiles, "bbtnitm_ConcatFiles")
Me.bbtnitm_ConcatFiles.Id = 16
Me.bbtnitm_ConcatFiles.ImageOptions.SvgImage = CType(resources.GetObject("bbtnitm_ConcatFiles.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.bbtnitm_ConcatFiles.Name = "bbtnitm_ConcatFiles"
'
'RibbonPage1 'RibbonPage1
' '
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroupDocuments, Me.RibbonPageGroupInvitation, Me.RibbonPageGroupAddSignature, Me.RibbonPageGroupReceiver, Me.RibbonPageGroup2}) Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroupDocuments, Me.RibbonPageGroupInvitation, Me.RibbonPageGroupAddSignature, Me.RibbonPageGroupReceiver})
Me.RibbonPage1.Name = "RibbonPage1" Me.RibbonPage1.Name = "RibbonPage1"
resources.ApplyResources(Me.RibbonPage1, "RibbonPage1") resources.ApplyResources(Me.RibbonPage1, "RibbonPage1")
' '
@ -368,8 +376,9 @@ Partial Public Class frmEnvelopeEditor
'RibbonPageGroupDocuments 'RibbonPageGroupDocuments
' '
Me.RibbonPageGroupDocuments.ItemLinks.Add(Me.btnNewFile) Me.RibbonPageGroupDocuments.ItemLinks.Add(Me.btnNewFile)
Me.RibbonPageGroupDocuments.ItemLinks.Add(Me.BarButtonItem4) Me.RibbonPageGroupDocuments.ItemLinks.Add(Me.bbtnitm_ConcatFiles)
Me.RibbonPageGroupDocuments.ItemLinks.Add(Me.btnDeleteFile) Me.RibbonPageGroupDocuments.ItemLinks.Add(Me.btnDeleteFile)
Me.RibbonPageGroupDocuments.ItemLinks.Add(Me.btnShowFile)
Me.RibbonPageGroupDocuments.Name = "RibbonPageGroupDocuments" Me.RibbonPageGroupDocuments.Name = "RibbonPageGroupDocuments"
resources.ApplyResources(Me.RibbonPageGroupDocuments, "RibbonPageGroupDocuments") resources.ApplyResources(Me.RibbonPageGroupDocuments, "RibbonPageGroupDocuments")
' '
@ -392,17 +401,11 @@ Partial Public Class frmEnvelopeEditor
Me.RibbonPageGroupReceiver.Name = "RibbonPageGroupReceiver" Me.RibbonPageGroupReceiver.Name = "RibbonPageGroupReceiver"
resources.ApplyResources(Me.RibbonPageGroupReceiver, "RibbonPageGroupReceiver") resources.ApplyResources(Me.RibbonPageGroupReceiver, "RibbonPageGroupReceiver")
' '
'RibbonPageGroup2
'
Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonItem3)
Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
resources.ApplyResources(Me.RibbonPageGroup2, "RibbonPageGroup2")
'
'RibbonStatusBar1 'RibbonStatusBar1
' '
Me.RibbonStatusBar1.ItemLinks.Add(Me.txtCreatorEmailLabel) Me.RibbonStatusBar1.ItemLinks.Add(Me.txtCreatorEmailLabel)
Me.RibbonStatusBar1.ItemLinks.Add(Me.txtEnvelopeIdLabel2) Me.RibbonStatusBar1.ItemLinks.Add(Me.txtEnvelopeIdLabel2)
Me.RibbonStatusBar1.ItemLinks.Add(Me.BarStaticItem1) Me.RibbonStatusBar1.ItemLinks.Add(Me.bsitm_info)
resources.ApplyResources(Me.RibbonStatusBar1, "RibbonStatusBar1") resources.ApplyResources(Me.RibbonStatusBar1, "RibbonStatusBar1")
Me.RibbonStatusBar1.Name = "RibbonStatusBar1" Me.RibbonStatusBar1.Name = "RibbonStatusBar1"
Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1 Me.RibbonStatusBar1.Ribbon = Me.RibbonControl1
@ -482,7 +485,7 @@ Partial Public Class frmEnvelopeEditor
'ViewReceivers 'ViewReceivers
' '
Me.ViewReceivers.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.Simple Me.ViewReceivers.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.Simple
Me.ViewReceivers.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.colColor, Me.colEmail, Me.colName, Me.colAccessCode}) Me.ViewReceivers.Columns.AddRange(New DevExpress.XtraGrid.Columns.GridColumn() {Me.colColor, Me.colEmail, Me.colName, Me.colAccessCode, Me.colPhoneNumber})
Me.ViewReceivers.GridControl = Me.GridReceivers Me.ViewReceivers.GridControl = Me.GridReceivers
Me.ViewReceivers.Name = "ViewReceivers" Me.ViewReceivers.Name = "ViewReceivers"
Me.ViewReceivers.OptionsBehavior.AllowDeleteRows = DevExpress.Utils.DefaultBoolean.[True] Me.ViewReceivers.OptionsBehavior.AllowDeleteRows = DevExpress.Utils.DefaultBoolean.[True]
@ -542,6 +545,12 @@ Partial Public Class frmEnvelopeEditor
Me.colAccessCode.OptionsColumn.AllowEdit = False Me.colAccessCode.OptionsColumn.AllowEdit = False
Me.colAccessCode.OptionsColumn.ReadOnly = True Me.colAccessCode.OptionsColumn.ReadOnly = True
' '
'colPhoneNumber
'
resources.ApplyResources(Me.colPhoneNumber, "colPhoneNumber")
Me.colPhoneNumber.FieldName = "PhoneNumber"
Me.colPhoneNumber.Name = "colPhoneNumber"
'
'RepositoryItemEmailEdit 'RepositoryItemEmailEdit
' '
resources.ApplyResources(Me.RepositoryItemEmailEdit, "RepositoryItemEmailEdit") resources.ApplyResources(Me.RepositoryItemEmailEdit, "RepositoryItemEmailEdit")
@ -675,15 +684,16 @@ Partial Public Class frmEnvelopeEditor
Me.txtEnvelopeIdLabel.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph Me.txtEnvelopeIdLabel.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
Me.txtEnvelopeIdLabel.Tag = "Envelope-ID: {0}" Me.txtEnvelopeIdLabel.Tag = "Envelope-ID: {0}"
' '
'BarButtonItem4 'btnShowFile
' '
resources.ApplyResources(Me.BarButtonItem4, "BarButtonItem4") resources.ApplyResources(Me.btnShowFile, "btnShowFile")
Me.BarButtonItem4.Id = 16 Me.btnShowFile.Id = 17
Me.BarButtonItem4.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem4.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) Me.btnShowFile.ImageOptions.SvgImage = CType(resources.GetObject("BarButtonItem4.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.BarButtonItem4.Name = "BarButtonItem4" Me.btnShowFile.Name = "btnShowFile"
' '
'frmEnvelopeEditor 'frmEnvelopeEditor
' '
Me.AllowDrop = True
resources.ApplyResources(Me, "$this") resources.ApplyResources(Me, "$this")
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.Controls.Add(Me.SplitContainerControl1) Me.Controls.Add(Me.SplitContainerControl1)
@ -804,11 +814,12 @@ Partial Public Class frmEnvelopeEditor
Friend WithEvents txtEnvelopeIdLabel2 As DevExpress.XtraBars.BarStaticItem Friend WithEvents txtEnvelopeIdLabel2 As DevExpress.XtraBars.BarStaticItem
Friend WithEvents colPageCount As DevExpress.XtraGrid.Columns.TileViewColumn Friend WithEvents colPageCount As DevExpress.XtraGrid.Columns.TileViewColumn
Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarStaticItem1 As DevExpress.XtraBars.BarStaticItem Friend WithEvents bsitm_info As DevExpress.XtraBars.BarStaticItem
Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarButtonItem3 As DevExpress.XtraBars.BarButtonItem Friend WithEvents BarButtonItem3 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents bbtnitm_ConcatFiles As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarButtonItem4 As DevExpress.XtraBars.BarButtonItem Friend WithEvents colPhoneNumber As DevExpress.XtraGrid.Columns.GridColumn
Friend WithEvents btnShowFile As DevExpress.XtraBars.BarButtonItem
#End Region #End Region

View File

@ -213,7 +213,7 @@
</value> </value>
</data> </data>
<data name="btnNewFile.Caption" xml:space="preserve"> <data name="btnNewFile.Caption" xml:space="preserve">
<value>Ein Dokument hinzufügen</value> <value>Ein PDF-Dokument hinzufügen</value>
</data> </data>
<data name="btnNewFile.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="btnNewFile.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
@ -322,35 +322,30 @@
</value> </value>
</data> </data>
<data name="btnEditData.Caption" xml:space="preserve"> <data name="btnEditData.Caption" xml:space="preserve">
<value>Titel und Typ</value> <value>Eigenschaften</value>
</data> </data>
<data name="btnEditData.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="btnEditData.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAABwFAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAOYDAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg Y2U9InByZXNlcnZlIiBpZD0iRG9jdW1lbnRfUHJvcGVydGllcyIgc3R5bGU9ImVuYWJsZS1iYWNrZ3Jv
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ dW5kOm5ldyAwIDAgMzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLkJsYWNre2ZpbGw6
LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3RDc7fQo8L3N0eWxlPg0KICA8cGF0aCBkPSJNMzAsMjV2
RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh LTJsLTIuMi0wLjRjLTAuMi0wLjYtMC40LTEuMy0wLjctMS44bDEuMy0xLjhsLTEuNC0xLjRsLTEuOCwx
Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm LjNjLTAuNS0wLjMtMS4yLTAuNi0xLjgtMC43TDIzLDE2aC0yICBsLTAuNCwyLjJjLTAuNiwwLjItMS4z
aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyAvPg0KICA8ZyBpZD0iUmVuYW1lXzFfIj4NCiAgICA8 LDAuNC0xLjgsMC43bC0xLjgtMS4zbC0xLjQsMS40bDEuMywxLjhjLTAuMywwLjUtMC42LDEuMi0wLjcs
cGF0aCBkPSJNMi4xLDE2aDIuMmwwLjYtMi4zaDMuMkw4LjgsMTZIMTFMNy44LDZINS40TDIuMSwxNnog MS44TDE0LDIzdjJsMi4yLDAuNGMwLjIsMC42LDAuNCwxLjMsMC43LDEuOCAgbC0xLjMsMS44bDEuNCwx
TTYuNCw4LjdjMC4xLTAuMywwLjEtMC42LDAuMS0wLjloMC4xICAgYzAsMC4zLDAuMSwwLjYsMC4xLDAu LjRsMS44LTEuM2MwLjUsMC4zLDEuMiwwLjYsMS44LDAuN0wyMSwzMmgybDAuNC0yLjJjMC42LTAuMiwx
OWwxLDMuM0g1LjRMNi40LDguN3ogTTE3LjUsMTAuNmMwLjYtMC4yLDEuMS0wLjUsMS41LTAuOWMwLjQt LjMtMC40LDEuOC0wLjdsMS44LDEuM2wxLjQtMS40bC0xLjMtMS44ICBjMC4zLTAuNSwwLjYtMS4yLDAu
MC40LDAuNi0wLjksMC42LTEuNGMwLTAuNy0wLjMtMS4zLTAuOS0xLjcgICBDMTguMSw2LjIsMTcuMSw2 Ny0xLjhMMzAsMjV6IE0yMiwyNmMtMS4xLDAtMi0wLjktMi0yczAuOS0yLDItMnMyLDAuOSwyLDJTMjMu
LDE1LjksNkgxMnY5LjlWMTZoNGMxLjIsMCwyLjItMC4yLDIuOS0wLjhDMTkuNywxNC42LDIwLDE0LDIw MSwyNiwyMiwyNnoiIGNsYXNzPSJCbHVlIiAvPg0KICA8cGF0aCBkPSJNMTQuMywyNkg2VjRoNmg2djVj
LDEzYzAtMC42LTAuMi0xLjItMC43LTEuNiAgIEMxOC45LDExLDE4LjMsMTAuNywxNy41LDEwLjZ6IE0x MCwwLjYsMC40LDEsMSwxaDV2NS45bDAsMC40YzAuNywwLjIsMS40LDAuNSwyLDAuOFY5bC03LTdINUM0
NC40LDcuN2gwLjljMS4xLDAsMS43LDAuNCwxLjcsMS4xYzAsMC40LTAuMSwwLjctMC40LDAuOUMxNi40 LjQsMiw0LDIuNCw0LDN2MjQgIGMwLDAuNiwwLjQsMSwxLDFoMTAuMUMxNC43LDI3LjQsMTQuNCwyNi43
LDkuOSwxNiwxMCwxNS41LDEwaC0xLjFWNy43eiAgICBNMTcsMTMuOGMtMC4zLDAuMi0wLjgsMC40LTEu LDE0LjMsMjZ6IiBjbGFzcz0iQmxhY2siIC8+DQo8L3N2Zz4L
MywwLjRoLTEuM3YtMi42aDEuM2MwLjUsMCwwLjksMC4xLDEuMywwLjNjMC4zLDAuMiwwLjUsMC42LDAu
NSwwLjlDMTcuNSwxMy4zLDE3LjQsMTMuNiwxNywxMy44eiIgY2xhc3M9IkJsYWNrIiAvPg0KICAgIDxw
YXRoIGQ9Ik0yNywxOWwtOCw4bC00LTRsOC04TDI3LDE5eiBNMjgsMThsMS43LTEuN2MwLjQtMC40LDAu
NC0xLDAtMS4zTDI3LDEyLjNjLTAuNC0wLjQtMS0wLjQtMS4zLDBMMjQsMTRMMjgsMTh6ICAgIE0xNCwy
NHY0aDRMMTQsMjR6IiBjbGFzcz0iQmx1ZSIgLz4NCiAgPC9nPg0KPC9zdmc+Cw==
</value> </value>
</data> </data>
<data name="txtCreatorEmailLabel.Caption" xml:space="preserve"> <data name="txtCreatorEmailLabel.Caption" xml:space="preserve">
@ -417,10 +412,10 @@
<data name="BarButtonItem3.Caption" xml:space="preserve"> <data name="BarButtonItem3.Caption" xml:space="preserve">
<value>BarButtonItem3</value> <value>BarButtonItem3</value>
</data> </data>
<data name="BarButtonItem4.Caption" xml:space="preserve"> <data name="bbtnitm_ConcatFiles.Caption" xml:space="preserve">
<value>Mehrere Dokumente hinzufügen</value> <value>Mehrere PDF-Dokumente verketten</value>
</data> </data>
<data name="BarButtonItem4.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="bbtnitm_ConcatFiles.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40 AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
@ -436,6 +431,36 @@
LDguNSwzMS41LDgsMzEsOHogTTYsNXYxN0gyVjJoMTZ2Mkg3QzYuNSw0LDYsNC41LDYsNXogTTEyLDl2 LDguNSwzMS41LDgsMzEsOHogTTYsNXYxN0gyVjJoMTZ2Mkg3QzYuNSw0LDYsNC41LDYsNXogTTEyLDl2
MTdIOFY2aDE2djJIMTMgIEMxMi41LDgsMTIsOC41LDEyLDl6IE0zMCwzMEgxNFYxMGgxNlYzMHoiIGNs MTdIOFY2aDE2djJIMTMgIEMxMi41LDgsMTIsOC41LDEyLDl6IE0zMCwzMEgxNFYxMGgxNlYzMHoiIGNs
YXNzPSJCbGFjayIgLz4NCjwvc3ZnPgs= YXNzPSJCbGFjayIgLz4NCjwvc3ZnPgs=
</value>
</data>
<data name="btnShowFile.Caption" xml:space="preserve">
<value>Dokument anzeigen</value>
</data>
<data name="BarButtonItem4.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAJYEAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi
IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh
Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg
MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ
LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsdWV7ZmlsbDojMTE3N0Q3O30KCS5HcmVlbntmaWxsOiMwMzlD
MjM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuV2hpdGV7ZmlsbDojRkZGRkZGO30KCS5zdDB7b3Bh
Y2l0eTowLjc1O30KPC9zdHlsZT4NCiAgPGcgaWQ9IkRvY3VtZW50UERGIj4NCiAgICA8cGF0aCBkPSJN
MjIsMjR2NEgyVjJoMTR2NWMwLDAuNiwwLjQsMSwxLDFoNXY0aDJWN2wtNy03SDFDMC40LDAsMCwwLjQs
MCwxdjI4YzAsMC42LDAuNCwxLDEsMWgyMmMwLjYsMCwxLTAuNCwxLTEgICB2LTVIMjJ6IiBjbGFzcz0i
QmxhY2siIC8+DQogICAgPHBhdGggZD0iTTE5LjIsMTZjMC4zLDAuNSwwLjQsMS4xLDAuNCwxLjljMCww
LjktMC4yLDEuNS0wLjUsMmMtMC4zLDAuNS0wLjcsMC43LTEuMywwLjdoLTAuNnYtNS4zaDAuNiAgIEMx
OC40LDE1LjMsMTguOSwxNS42LDE5LjIsMTZ6IE0xMi4xLDE1LjNoLTAuNXYyLjZoMC41YzAuNywwLDEu
MS0wLjQsMS4xLTEuM2MwLTAuNC0wLjEtMC44LTAuMy0xQzEyLjYsMTUuNCwxMi40LDE1LjMsMTIuMSwx
NS4zeiAgICBNMzAsMTJ2MTJINlYxMkgzMHogTTE0LjgsMTYuNWMwLTAuOC0wLjItMS41LTAuNi0xLjlj
LTAuNC0wLjQtMS0wLjctMS44LTAuN0gxMHY4aDEuNnYtMi43aDAuNmMwLjgsMCwxLjQtMC4zLDEuOS0w
LjggICBDMTQuNSwxOCwxNC44LDE3LjMsMTQuOCwxNi41eiBNMjEuMiwxNy45YzAtMi42LTEuMS0zLjkt
My40LTMuOWgtMi4xdjhoMi4yYzEuMSwwLDEuOS0wLjQsMi41LTEuMUMyMC45LDIwLjIsMjEuMiwxOS4y
LDIxLjIsMTcuOXogICAgTTI2LDE0aC0zLjd2OGgxLjZ2LTMuMWgydi0xLjNoLTJ2LTIuMkgyNlYxNHoi
IGNsYXNzPSJSZWQiIC8+DQogIDwvZz4NCjwvc3ZnPgs=
</value> </value>
</data> </data>
<data name="RibbonControl1.Location" type="System.Drawing.Point, System.Drawing"> <data name="RibbonControl1.Location" type="System.Drawing.Point, System.Drawing">
@ -445,7 +470,7 @@
<value>Umschlag</value> <value>Umschlag</value>
</data> </data>
<data name="RibbonPageGroupDocuments.Text" xml:space="preserve"> <data name="RibbonPageGroupDocuments.Text" xml:space="preserve">
<value>Dateien</value> <value>Dokument-Funktionen</value>
</data> </data>
<data name="RibbonPageGroupInvitation.Text" xml:space="preserve"> <data name="RibbonPageGroupInvitation.Text" xml:space="preserve">
<value>Prozess</value> <value>Prozess</value>
@ -456,9 +481,6 @@
<data name="RibbonPageGroupReceiver.Text" xml:space="preserve"> <data name="RibbonPageGroupReceiver.Text" xml:space="preserve">
<value>Empfänger</value> <value>Empfänger</value>
</data> </data>
<data name="RibbonPageGroup2.Text" xml:space="preserve">
<value>RibbonPageGroup2</value>
</data>
<data name="RibbonPage1.Text" xml:space="preserve"> <data name="RibbonPage1.Text" xml:space="preserve">
<value>Start</value> <value>Start</value>
</data> </data>
@ -605,7 +627,7 @@
<value>0</value> <value>0</value>
</data> </data>
<data name="colColor.Width" type="System.Int32, mscorlib"> <data name="colColor.Width" type="System.Int32, mscorlib">
<value>37</value> <value>32</value>
</data> </data>
<data name="RepositoryItemComboBox1.AutoHeight" type="System.Boolean, mscorlib"> <data name="RepositoryItemComboBox1.AutoHeight" type="System.Boolean, mscorlib">
<value>False</value> <value>False</value>
@ -620,7 +642,7 @@
<value>1</value> <value>1</value>
</data> </data>
<data name="colEmail.Width" type="System.Int32, mscorlib"> <data name="colEmail.Width" type="System.Int32, mscorlib">
<value>341</value> <value>275</value>
</data> </data>
<data name="colName.Caption" xml:space="preserve"> <data name="colName.Caption" xml:space="preserve">
<value>Anrede Email</value> <value>Anrede Email</value>
@ -632,7 +654,7 @@
<value>2</value> <value>2</value>
</data> </data>
<data name="colName.Width" type="System.Int32, mscorlib"> <data name="colName.Width" type="System.Int32, mscorlib">
<value>344</value> <value>227</value>
</data> </data>
<data name="colAccessCode.Caption" xml:space="preserve"> <data name="colAccessCode.Caption" xml:space="preserve">
<value>Zugriffscode</value> <value>Zugriffscode</value>
@ -644,7 +666,19 @@
<value>3</value> <value>3</value>
</data> </data>
<data name="colAccessCode.Width" type="System.Int32, mscorlib"> <data name="colAccessCode.Width" type="System.Int32, mscorlib">
<value>147</value> <value>109</value>
</data>
<data name="colPhoneNumber.Caption" xml:space="preserve">
<value>Mobilnummer</value>
</data>
<data name="colPhoneNumber.Visible" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="colPhoneNumber.VisibleIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="colPhoneNumber.Width" type="System.Int32, mscorlib">
<value>226</value>
</data> </data>
<data name="RepositoryItemEmailEdit.AutoHeight" type="System.Boolean, mscorlib"> <data name="RepositoryItemEmailEdit.AutoHeight" type="System.Boolean, mscorlib">
<value>False</value> <value>False</value>
@ -1073,10 +1107,10 @@
<data name="&gt;&gt;BarButtonItem1.Type" xml:space="preserve"> <data name="&gt;&gt;BarButtonItem1.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;BarStaticItem1.Name" xml:space="preserve"> <data name="&gt;&gt;bsitm_info.Name" xml:space="preserve">
<value>BarStaticItem1</value> <value>bsitm_info</value>
</data> </data>
<data name="&gt;&gt;BarStaticItem1.Type" xml:space="preserve"> <data name="&gt;&gt;bsitm_info.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarStaticItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.BarStaticItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;BarButtonItem2.Name" xml:space="preserve"> <data name="&gt;&gt;BarButtonItem2.Name" xml:space="preserve">
@ -1091,10 +1125,10 @@
<data name="&gt;&gt;BarButtonItem3.Type" xml:space="preserve"> <data name="&gt;&gt;BarButtonItem3.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;BarButtonItem4.Name" xml:space="preserve"> <data name="&gt;&gt;bbtnitm_ConcatFiles.Name" xml:space="preserve">
<value>BarButtonItem4</value> <value>bbtnitm_ConcatFiles</value>
</data> </data>
<data name="&gt;&gt;BarButtonItem4.Type" xml:space="preserve"> <data name="&gt;&gt;bbtnitm_ConcatFiles.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;RibbonPage1.Name" xml:space="preserve"> <data name="&gt;&gt;RibbonPage1.Name" xml:space="preserve">
@ -1133,12 +1167,6 @@
<data name="&gt;&gt;RibbonPageGroupReceiver.Type" xml:space="preserve"> <data name="&gt;&gt;RibbonPageGroupReceiver.Type" xml:space="preserve">
<value>DevExpress.XtraBars.Ribbon.RibbonPageGroup, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.Ribbon.RibbonPageGroup, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;RibbonPageGroup2.Name" xml:space="preserve">
<value>RibbonPageGroup2</value>
</data>
<data name="&gt;&gt;RibbonPageGroup2.Type" xml:space="preserve">
<value>DevExpress.XtraBars.Ribbon.RibbonPageGroup, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;LayoutControlGroup4.Name" xml:space="preserve"> <data name="&gt;&gt;LayoutControlGroup4.Name" xml:space="preserve">
<value>LayoutControlGroup4</value> <value>LayoutControlGroup4</value>
</data> </data>
@ -1205,6 +1233,12 @@
<data name="&gt;&gt;colAccessCode.Type" xml:space="preserve"> <data name="&gt;&gt;colAccessCode.Type" xml:space="preserve">
<value>DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;colPhoneNumber.Name" xml:space="preserve">
<value>colPhoneNumber</value>
</data>
<data name="&gt;&gt;colPhoneNumber.Type" xml:space="preserve">
<value>DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;RepositoryItemEmailEdit.Name" xml:space="preserve"> <data name="&gt;&gt;RepositoryItemEmailEdit.Name" xml:space="preserve">
<value>RepositoryItemEmailEdit</value> <value>RepositoryItemEmailEdit</value>
</data> </data>
@ -1295,6 +1329,12 @@
<data name="&gt;&gt;txtEnvelopeIdLabel.Type" xml:space="preserve"> <data name="&gt;&gt;txtEnvelopeIdLabel.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarStaticItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.BarStaticItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;btnShowFile.Name" xml:space="preserve">
<value>btnShowFile</value>
</data>
<data name="&gt;&gt;btnShowFile.Type" xml:space="preserve">
<value>DevExpress.XtraBars.BarButtonItem, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve"> <data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>frmEnvelopeEditor</value> <value>frmEnvelopeEditor</value>
</data> </data>

View File

@ -1,6 +1,7 @@
Imports System.ComponentModel Imports System.ComponentModel
Imports System.Data.SqlClient Imports System.Data.SqlClient
Imports System.IO Imports System.IO
Imports System.Text.RegularExpressions
Imports DevExpress.Export.Xl Imports DevExpress.Export.Xl
Imports DevExpress.Utils.CommonDialogs Imports DevExpress.Utils.CommonDialogs
Imports DevExpress.Utils.Drawing Imports DevExpress.Utils.Drawing
@ -17,6 +18,7 @@ Imports DigitalData.Modules.Logging
Imports EnvelopeGenerator.Common Imports EnvelopeGenerator.Common
Imports EnvelopeGenerator.Common.Constants Imports EnvelopeGenerator.Common.Constants
Imports EnvelopeGenerator.Common.My Imports EnvelopeGenerator.Common.My
Imports GdPicture14
Partial Public Class frmEnvelopeEditor Partial Public Class frmEnvelopeEditor
Public Property Envelope As Envelope Public Property Envelope As Envelope
@ -31,7 +33,7 @@ Partial Public Class frmEnvelopeEditor
Private Const COL_NAME = "Name" Private Const COL_NAME = "Name"
Private Const COL_EMAIL = "Email" Private Const COL_EMAIL = "Email"
Private Const COL_CODE = "AccessCode" Private Const COL_CODE = "AccessCode"
Private Const COL_PHONE = "PhoneNumber"
Public Property State As State Public Property State As State
Private TempFiles As TempFiles Private TempFiles As TempFiles
@ -51,14 +53,7 @@ Partial Public Class frmEnvelopeEditor
End If End If
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
Dim oDocument = Await Controller.CreateDocument(OpenFileDialog1.FileName) Await AddDocument(OpenFileDialog1.FileName)
If oDocument IsNot Nothing Then
Documents.Add(oDocument)
' Update_File_DB(OpenFileDialog1.FileName)
Else
MsgBox(Resources.Envelope.Document_Could_Not_Be_Saved, MsgBoxStyle.Critical, Text)
End If
End If End If
Catch ex As Exception Catch ex As Exception
@ -73,15 +68,31 @@ Partial Public Class frmEnvelopeEditor
' End If ' End If
End Sub End Sub
Private Async Function AddDocument(pfilePath As String) As Threading.Tasks.Task(Of Boolean)
Dim oDocument = Await Controller.CreateDocument(pfilePath)
If oDocument IsNot Nothing Then
Documents.Add(oDocument)
' Update_File_DB(OpenFileDialog1.FileName)
ClearBsiItem()
Return True
Else
MsgBox(Resources.Envelope.Document_Could_Not_Be_Saved, MsgBoxStyle.Critical, Text)
Return False
End If
End Function
Private Sub frmEditor_Load(sender As Object, e As EventArgs) Handles Me.Load Private Sub frmEditor_Load(sender As Object, e As EventArgs) Handles Me.Load
Logger = State.LogConfig.GetLogger() Logger = State.LogConfig.GetLogger()
Logger.Debug("Loading Configuration..") Logger.Debug("Loading Configuration..")
TempFiles = New TempFiles(State.LogConfig) TempFiles = New TempFiles(State.LogConfig)
TempFiles.Create() TempFiles.Create()
If Envelope Is Nothing Then If Envelope Is Nothing Then
Logger.Debug("Loading Controller..")
Controller = New EnvelopeEditorController(State) Controller = New EnvelopeEditorController(State)
' Get additional data ' Get additional data
Logger.Debug("Loading oDataForm..")
Dim oDataForm As New frmEnvelopeMainData() With { Dim oDataForm As New frmEnvelopeMainData() With {
.State = State, .State = State,
.Envelope = Controller.Envelope, .Envelope = Controller.Envelope,
@ -116,6 +127,7 @@ Partial Public Class frmEnvelopeEditor
End If End If
WriteBytetoPath(oTempFilename, docItem.Byte_Data) WriteBytetoPath(oTempFilename, docItem.Byte_Data)
docItem.Filepath = oTempFilename docItem.Filepath = oTempFilename
GridDocuments.Tag = docItem.Filepath
End If End If
If docItem.Thumbnail Is Nothing Then If docItem.Thumbnail Is Nothing Then
docItem.Thumbnail = Controller.CreateThumbnail(docItem.Filepath) docItem.Thumbnail = Controller.CreateThumbnail(docItem.Filepath)
@ -139,7 +151,7 @@ Partial Public Class frmEnvelopeEditor
RepositoryItemComboBox1.Items.AddRange(AllReceiverEmails) RepositoryItemComboBox1.Items.AddRange(AllReceiverEmails)
SetAccessCodeColumnVisible() SetAccessCodeColumnVisible()
SetPhoneNumberColumnVisible()
txtEnvelopeIdLabel2.Caption = String.Format(txtEnvelopeIdLabel2.Tag.ToString, Controller.Envelope.Id) txtEnvelopeIdLabel2.Caption = String.Format(txtEnvelopeIdLabel2.Tag.ToString, Controller.Envelope.Id)
txtCreatorEmailLabel.Caption = String.Format(txtCreatorEmailLabel.Tag.ToString, Controller.Envelope.User.Email) txtCreatorEmailLabel.Caption = String.Format(txtCreatorEmailLabel.Tag.ToString, Controller.Envelope.User.Email)
@ -153,6 +165,13 @@ Partial Public Class frmEnvelopeEditor
colAccessCode.Visible = False colAccessCode.Visible = False
End If End If
End Sub End Sub
Private Sub SetPhoneNumberColumnVisible()
If Envelope.TFA_Enabled = True Then
colPhoneNumber.Visible = True
Else
colPhoneNumber.Visible = False
End If
End Sub
Private Sub btnDeleteFile_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnDeleteFile.ItemClick Private Sub btnDeleteFile_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnDeleteFile.ItemClick
If ViewDocuments.GetSelectedRows().Count > 0 Then If ViewDocuments.GetSelectedRows().Count > 0 Then
@ -166,14 +185,18 @@ Partial Public Class frmEnvelopeEditor
If Controller.DeleteDocument(oDocument) Then If Controller.DeleteDocument(oDocument) Then
Documents.Remove(oDocument) Documents.Remove(oDocument)
GridDocuments.DataSource = Nothing GridDocuments.DataSource = Nothing
ClearBsiItem()
End If End If
End If End If
End Sub End Sub
Private Sub btnSave_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnSave.ItemClick Private Sub btnSave_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnSave.ItemClick
Try Try
SaveEnvelopeWithOutValidation() If SaveEnvelopeWithOutValidation() = True Then
bsitm_info.Caption = "Data saved succeddfully " + Now.ToString
Else
bsitm_info.Caption = "Exceprion - Error saving Data. Check LOG"
End If
Catch ex As Exception Catch ex As Exception
Logger.Error(ex) Logger.Error(ex)
End Try End Try
@ -439,7 +462,7 @@ Partial Public Class frmEnvelopeEditor
oForm.ShowDialog() oForm.ShowDialog()
SetAccessCodeColumnVisible() SetAccessCodeColumnVisible()
SetPhoneNumberColumnVisible()
SetFormTitle(Controller.Envelope.Title) SetFormTitle(Controller.Envelope.Title)
End Sub End Sub
@ -491,10 +514,14 @@ Partial Public Class frmEnvelopeEditor
Private Sub DocumentButtons_Enable() Private Sub DocumentButtons_Enable()
If ViewDocuments.RowCount = 0 Then If ViewDocuments.RowCount = 0 Then
btnNewFile.Enabled = True btnNewFile.Enabled = True
bbtnitm_ConcatFiles.Enabled = True
btnDeleteFile.Enabled = False btnDeleteFile.Enabled = False
btnShowFile.Enabled = False
Else Else
btnNewFile.Enabled = False btnNewFile.Enabled = False
bbtnitm_ConcatFiles.Enabled = False
btnDeleteFile.Enabled = True btnDeleteFile.Enabled = True
btnShowFile.Enabled = True
End If End If
End Sub End Sub
@ -555,25 +582,35 @@ Partial Public Class frmEnvelopeEditor
If IsValidEmailAddress(oEmailAdress) = True Then If IsValidEmailAddress(oEmailAdress) = True Then
Dim oLastName As String = Controller.GetLastNameByEmailAdress(oEmailAdress) Dim oLastName As String = Controller.GetLastNameByEmailAdress(oEmailAdress)
Dim oAccessCode As String = Helpers.GetAccessCode() Dim oAccessCode As String = Helpers.GetAccessCode()
Dim oPhoneNumber As String = Controller.GetLastPhoneByEmailAdress(oEmailAdress)
ViewReceivers.SetRowCellValue(e.RowHandle, ViewReceivers.Columns.Item(COL_EMAIL), oEmailAdress) ViewReceivers.SetRowCellValue(e.RowHandle, ViewReceivers.Columns.Item(COL_EMAIL), oEmailAdress)
ViewReceivers.SetRowCellValue(e.RowHandle, ViewReceivers.Columns.Item(COL_NAME), oLastName) ViewReceivers.SetRowCellValue(e.RowHandle, ViewReceivers.Columns.Item(COL_NAME), oLastName)
ViewReceivers.SetRowCellValue(e.RowHandle, ViewReceivers.Columns.Item(COL_CODE), oAccessCode) ViewReceivers.SetRowCellValue(e.RowHandle, ViewReceivers.Columns.Item(COL_CODE), oAccessCode)
CellValueChanged = False ViewReceivers.SetRowCellValue(e.RowHandle, ViewReceivers.Columns.Item(COL_PHONE), oPhoneNumber)
Else Else
Dim oMsg = Resources.Envelope.Error_email_Validation Dim oMsg = Resources.Envelope.Error_email_Validation
oMsg = oMsg.Replace("@Mail", oEmailAdress) oMsg = oMsg.Replace("@Mail", oEmailAdress)
MsgBox(oMsg, MsgBoxStyle.Exclamation, Text) MsgBox(oMsg, MsgBoxStyle.Exclamation, Text)
ViewReceivers.DeleteRow(ViewReceivers.FocusedRowHandle) ViewReceivers.DeleteRow(ViewReceivers.FocusedRowHandle)
End If End If
CellValueChanged = False
End If End If
End If End If
ElseIf e.Column.FieldName = COL_PHONE And CellValueChanged = False Then
CellValueChanged = True
Dim oPhoneNumber As String = DirectCast(e.Value.ToString.ToLower, String)
oPhoneNumber = Trim(oPhoneNumber)
If IsValidMobilePhoneNumber(oPhoneNumber) = True Then
ViewReceivers.SetRowCellValue(e.RowHandle, ViewReceivers.Columns.Item(COL_PHONE), oPhoneNumber)
Else
Dim oMsg = Resources.Envelope.Error_phone_Validation
oMsg = oMsg.Replace("@PhoneNr", oPhoneNumber)
MsgBox(oMsg, MsgBoxStyle.Exclamation, Text)
ViewReceivers.DeleteRow(ViewReceivers.FocusedRowHandle)
End If
CellValueChanged = False
End If End If
End Sub End Sub
Private Sub email_validation()
End Sub
Private Function IsValidEmailAddress(pEmailAddress As String) As Boolean Private Function IsValidEmailAddress(pEmailAddress As String) As Boolean
Try Try
If pEmailAddress.Contains("@") Then If pEmailAddress.Contains("@") Then
@ -587,21 +624,150 @@ Partial Public Class frmEnvelopeEditor
Return False Return False
End Try End Try
End Function End Function
Private Function IsValidMobilePhoneNumber(pPhoneNumber As String) As Boolean
Try
Dim pattern As String = "^\+49\d{10,14}$"
Dim regex As New Regex(pattern)
Return regex.IsMatch(pPhoneNumber)
Catch ex As Exception
Logger.Error(ex)
Return False
End Try
End Function
Private Sub RibbonControl1_Click(sender As Object, e As EventArgs) Handles RibbonControl1.Click Private Sub RibbonControl1_Click(sender As Object, e As EventArgs) Handles RibbonControl1.Click
End Sub End Sub
Private Async Sub bbtnitm_ConcatFiles_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles bbtnitm_ConcatFiles.ItemClick
ENVELOPE_TEMP_DOCUMENT = String.Empty
OpenFileDialog1.Multiselect = True
OpenFileDialog1.Title = Resources.Envelope.Dialog_Concat_PDF
Dim oSuccess As Boolean = False
Dim oHandle = SplashScreenManager.ShowOverlayForm(Me)
Try
Dim oErr As Boolean = False
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
Dim oIDX As Integer = -1
For Each oFile As String In OpenFileDialog1.FileNames
oIDX += 1
Next
Private Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem3.ItemClick Dim arPDF As GdPicturePDF() = New GdPicturePDF(oIDX) {}
frmChooseDocVariant.ShowDialog() oIDX = 0
End Sub For Each oFile As String In OpenFileDialog1.FileNames
arPDF(oIDX) = New GdPicturePDF()
If arPDF(oIDX).LoadFromFile(oFile) <> GdPictureStatus.OK Then
MsgBox($"PDF Status of file {oFile} is not OK. Please check PDF-conformity!", MsgBoxStyle.Critical)
oErr = True
Exit For
End If
oIDX += 1
Next
If oErr = False Then
Private Sub BarButtonItem4_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem4.ItemClick Dim dstPDF As GdPicturePDF = arPDF(0).MergeDocuments(arPDF)
Dim oStatus As GdPictureStatus = arPDF(0).GetStat()
If oStatus = GdPictureStatus.OK Then
Dim oTempFolder = MyTempFiles.TempPath
If Not Directory.Exists(oTempFolder) Then
Directory.CreateDirectory(oTempFolder)
End If
Dim oTempFilename = String.Concat(oTempFolder, "\", $"MergedDoc.pdf")
'wenn es das MergedDocument schon gibt dann löschen
If System.IO.File.Exists(oTempFilename) Then
System.IO.File.Delete(oTempFilename)
End If
If dstPDF.SaveToFile(oTempFilename) = GdPictureStatus.OK Then
ENVELOPE_TEMP_DOCUMENT = oTempFilename
dstPDF.CloseDocument()
oSuccess = True
Else
MsgBox("Unexpected format-error within the final document!", MsgBoxStyle.Critical)
oSuccess = False
End If
Else
MessageBox.Show("The MergeDocuments() method has failed with the status: " + oStatus.ToString(), "Example: MergeDocuments")
oSuccess = False
End If
dstPDF.Dispose()
oIDX = 0
For Each oFile As String In OpenFileDialog1.FileNames
arPDF(oIDX).CloseDocument()
oIDX += 1
Next
If oSuccess = True And ENVELOPE_TEMP_DOCUMENT <> String.Empty Then
Await AddDocument(ENVELOPE_TEMP_DOCUMENT)
End If
End If
End If
Catch ex As Exception
Logger.Error(ex)
Finally
SplashScreenManager.CloseOverlayForm(oHandle)
End Try
'frmChooseDocVariant.ShowDialog()
End Sub End Sub
Private Sub ViewReceivers_CellValueChanging(sender As Object, e As CellValueChangedEventArgs) Handles ViewReceivers.CellValueChanging Private Sub frmEnvelopeEditor_DragEnter(sender As Object, e As DragEventArgs) Handles Me.DragEnter
ClearBsiItem()
' Prüfen, ob die Daten vom Typ Datei sind
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
' prüfen ob es schon eine Datei gibt
If Documents.Count > 0 Then
e.Effect = DragDropEffects.None
bsitm_info.Caption = Resources.Envelope.Only_one_file_is_allowed
bsitm_info.ItemAppearance.Normal.BackColor = Color.Red
bsitm_info.ItemAppearance.Normal.ForeColor = Color.Yellow
Else
' Effekt auf "Kopieren" setzen, um Drag-and-Drop zu ermöglichen
e.Effect = DragDropEffects.Copy
End If
Else
e.Effect = DragDropEffects.None
End If
End Sub
Sub ClearBsiItem()
bsitm_info.Caption = ""
bsitm_info.ItemAppearance.Normal.BackColor = Color.Transparent
bsitm_info.ItemAppearance.Normal.ForeColor = Color.Black
End Sub
Private Async Sub frmEnvelopeEditor_DragDrop(sender As Object, e As DragEventArgs) Handles Me.DragDrop
' Den Pfad der Datei(en) erhalten
Dim ofiles() As String = CType(e.Data.GetData(DataFormats.FileDrop), String())
' Beispiel: Ersten Dateipfad anzeigen
If ofiles IsNot Nothing AndAlso ofiles.Length > 0 Then
If Not ofiles(0).ToString.EndsWith("pdf") Then
bsitm_info.Caption = Resources.Envelope.Drop_only_one_file
bsitm_info.ItemAppearance.Normal.BackColor = Color.Red
bsitm_info.ItemAppearance.Normal.ForeColor = Color.Yellow
Else
Dim oHandle = SplashScreenManager.ShowOverlayForm(Me)
Await AddDocument(ofiles(0))
SplashScreenManager.CloseOverlayForm(oHandle)
' MessageBox.Show("Dateipfad: " & ofiles(0), "Datei abgelegt", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
End If
End Sub End Sub
Private Sub GridDocuments_DoubleClick(sender As Object, e As EventArgs) Handles GridDocuments.DoubleClick
showdocument()
End Sub
Private Sub btnShowFile_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnShowFile.ItemClick
showDocument
End Sub
Sub showdocument()
If Not IsNothing(Documents) Then
Process.Start(Documents.Item(0).Filepath)
End If
End Sub
End Class End Class

View File

@ -25,6 +25,7 @@ Partial Class frmEnvelopeMainData
Me.components = New System.ComponentModel.Container() Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmEnvelopeMainData)) Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmEnvelopeMainData))
Me.LayoutControl1 = New DevExpress.XtraLayout.LayoutControl() Me.LayoutControl1 = New DevExpress.XtraLayout.LayoutControl()
Me.chked_2Faktor = New DevExpress.XtraEditors.CheckEdit()
Me.txtTitle = New DevExpress.XtraEditors.TextEdit() Me.txtTitle = New DevExpress.XtraEditors.TextEdit()
Me.cmbEnvelopeType = New DevExpress.XtraEditors.ComboBoxEdit() Me.cmbEnvelopeType = New DevExpress.XtraEditors.ComboBoxEdit()
Me.btOK = New DevExpress.XtraEditors.SimpleButton() Me.btOK = New DevExpress.XtraEditors.SimpleButton()
@ -62,9 +63,11 @@ Partial Class frmEnvelopeMainData
Me.LayoutControlItem8 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem8 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem12 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem12 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem13 = New DevExpress.XtraLayout.LayoutControlItem() Me.LayoutControlItem13 = New DevExpress.XtraLayout.LayoutControlItem()
Me.LayoutControlItem16 = New DevExpress.XtraLayout.LayoutControlItem()
Me.AdornerUIManager1 = New DevExpress.Utils.VisualEffects.AdornerUIManager(Me.components) Me.AdornerUIManager1 = New DevExpress.Utils.VisualEffects.AdornerUIManager(Me.components)
CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.LayoutControl1.SuspendLayout() Me.LayoutControl1.SuspendLayout()
CType(Me.chked_2Faktor.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.txtTitle.Properties, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.txtTitle.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.cmbEnvelopeType.Properties, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.cmbEnvelopeType.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.cmbCertificationType.Properties, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.cmbCertificationType.Properties, System.ComponentModel.ISupportInitialize).BeginInit()
@ -100,11 +103,13 @@ Partial Class frmEnvelopeMainData
CType(Me.LayoutControlItem8, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem8, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem12, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem12, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem13, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.LayoutControlItem13, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControlItem16, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.AdornerUIManager1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.AdornerUIManager1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout() Me.SuspendLayout()
' '
'LayoutControl1 'LayoutControl1
' '
Me.LayoutControl1.Controls.Add(Me.chked_2Faktor)
Me.LayoutControl1.Controls.Add(Me.txtTitle) Me.LayoutControl1.Controls.Add(Me.txtTitle)
Me.LayoutControl1.Controls.Add(Me.cmbEnvelopeType) Me.LayoutControl1.Controls.Add(Me.cmbEnvelopeType)
Me.LayoutControl1.Controls.Add(Me.btOK) Me.LayoutControl1.Controls.Add(Me.btOK)
@ -124,6 +129,15 @@ Partial Class frmEnvelopeMainData
Me.LayoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = New System.Drawing.Rectangle(855, 189, 650, 400) Me.LayoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = New System.Drawing.Rectangle(855, 189, 650, 400)
Me.LayoutControl1.Root = Me.Root Me.LayoutControl1.Root = Me.Root
' '
'chked_2Faktor
'
resources.ApplyResources(Me.chked_2Faktor, "chked_2Faktor")
Me.chked_2Faktor.Name = "chked_2Faktor"
Me.chked_2Faktor.Properties.Appearance.Font = CType(resources.GetObject("chked_2Faktor.Properties.Appearance.Font"), System.Drawing.Font)
Me.chked_2Faktor.Properties.Appearance.Options.UseFont = True
Me.chked_2Faktor.Properties.Caption = resources.GetString("chked_2Faktor.Properties.Caption")
Me.chked_2Faktor.StyleController = Me.LayoutControl1
'
'txtTitle 'txtTitle
' '
resources.ApplyResources(Me.txtTitle, "txtTitle") resources.ApplyResources(Me.txtTitle, "txtTitle")
@ -311,16 +325,16 @@ Partial Class frmEnvelopeMainData
'EmptySpaceItem2 'EmptySpaceItem2
' '
Me.EmptySpaceItem2.AllowHotTrack = False Me.EmptySpaceItem2.AllowHotTrack = False
Me.EmptySpaceItem2.Location = New System.Drawing.Point(0, 416) Me.EmptySpaceItem2.Location = New System.Drawing.Point(0, 441)
Me.EmptySpaceItem2.Name = "EmptySpaceItem2" Me.EmptySpaceItem2.Name = "EmptySpaceItem2"
Me.EmptySpaceItem2.Size = New System.Drawing.Size(565, 88) Me.EmptySpaceItem2.Size = New System.Drawing.Size(565, 63)
Me.EmptySpaceItem2.TextSize = New System.Drawing.Size(0, 0) Me.EmptySpaceItem2.TextSize = New System.Drawing.Size(0, 0)
' '
'groupFinalEmail 'groupFinalEmail
' '
Me.groupFinalEmail.GroupStyle = DevExpress.Utils.GroupStyle.Light Me.groupFinalEmail.GroupStyle = DevExpress.Utils.GroupStyle.Light
Me.groupFinalEmail.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem9, Me.LayoutControlItem14}) Me.groupFinalEmail.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem9, Me.LayoutControlItem14})
Me.groupFinalEmail.Location = New System.Drawing.Point(0, 323) Me.groupFinalEmail.Location = New System.Drawing.Point(0, 348)
Me.groupFinalEmail.Name = "groupFinalEmail" Me.groupFinalEmail.Name = "groupFinalEmail"
Me.groupFinalEmail.Size = New System.Drawing.Size(565, 93) Me.groupFinalEmail.Size = New System.Drawing.Size(565, 93)
resources.ApplyResources(Me.groupFinalEmail, "groupFinalEmail") resources.ApplyResources(Me.groupFinalEmail, "groupFinalEmail")
@ -348,7 +362,7 @@ Partial Class frmEnvelopeMainData
Me.groupExpiration.Enabled = False Me.groupExpiration.Enabled = False
Me.groupExpiration.GroupStyle = DevExpress.Utils.GroupStyle.Light Me.groupExpiration.GroupStyle = DevExpress.Utils.GroupStyle.Light
Me.groupExpiration.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem10, Me.LayoutControlItem11}) Me.groupExpiration.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem10, Me.LayoutControlItem11})
Me.groupExpiration.Location = New System.Drawing.Point(0, 230) Me.groupExpiration.Location = New System.Drawing.Point(0, 255)
Me.groupExpiration.Name = "groupExpiration" Me.groupExpiration.Name = "groupExpiration"
Me.groupExpiration.Size = New System.Drawing.Size(565, 93) Me.groupExpiration.Size = New System.Drawing.Size(565, 93)
resources.ApplyResources(Me.groupExpiration, "groupExpiration") resources.ApplyResources(Me.groupExpiration, "groupExpiration")
@ -376,7 +390,7 @@ Partial Class frmEnvelopeMainData
Me.groupReminders.Enabled = False Me.groupReminders.Enabled = False
Me.groupReminders.GroupStyle = DevExpress.Utils.GroupStyle.Light Me.groupReminders.GroupStyle = DevExpress.Utils.GroupStyle.Light
Me.groupReminders.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem5, Me.LayoutControlItem6, Me.LayoutControlItem7}) Me.groupReminders.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem5, Me.LayoutControlItem6, Me.LayoutControlItem7})
Me.groupReminders.Location = New System.Drawing.Point(0, 115) Me.groupReminders.Location = New System.Drawing.Point(0, 140)
Me.groupReminders.Name = "groupReminders" Me.groupReminders.Name = "groupReminders"
Me.groupReminders.Size = New System.Drawing.Size(565, 115) Me.groupReminders.Size = New System.Drawing.Size(565, 115)
resources.ApplyResources(Me.groupReminders, "groupReminders") resources.ApplyResources(Me.groupReminders, "groupReminders")
@ -411,10 +425,10 @@ Partial Class frmEnvelopeMainData
'groupOptions 'groupOptions
' '
Me.groupOptions.GroupStyle = DevExpress.Utils.GroupStyle.Light Me.groupOptions.GroupStyle = DevExpress.Utils.GroupStyle.Light
Me.groupOptions.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem8, Me.LayoutControlItem12, Me.LayoutControlItem13}) Me.groupOptions.Items.AddRange(New DevExpress.XtraLayout.BaseLayoutItem() {Me.LayoutControlItem8, Me.LayoutControlItem12, Me.LayoutControlItem13, Me.LayoutControlItem16})
Me.groupOptions.Location = New System.Drawing.Point(0, 0) Me.groupOptions.Location = New System.Drawing.Point(0, 0)
Me.groupOptions.Name = "groupOptions" Me.groupOptions.Name = "groupOptions"
Me.groupOptions.Size = New System.Drawing.Size(565, 115) Me.groupOptions.Size = New System.Drawing.Size(565, 140)
resources.ApplyResources(Me.groupOptions, "groupOptions") resources.ApplyResources(Me.groupOptions, "groupOptions")
' '
'LayoutControlItem8 'LayoutControlItem8
@ -438,12 +452,21 @@ Partial Class frmEnvelopeMainData
'LayoutControlItem13 'LayoutControlItem13
' '
Me.LayoutControlItem13.Control = Me.chkUseAccessCode Me.LayoutControlItem13.Control = Me.chkUseAccessCode
Me.LayoutControlItem13.Location = New System.Drawing.Point(0, 48) Me.LayoutControlItem13.Location = New System.Drawing.Point(0, 73)
Me.LayoutControlItem13.Name = "LayoutControlItem13" Me.LayoutControlItem13.Name = "LayoutControlItem13"
Me.LayoutControlItem13.Size = New System.Drawing.Size(541, 22) Me.LayoutControlItem13.Size = New System.Drawing.Size(541, 22)
Me.LayoutControlItem13.TextSize = New System.Drawing.Size(0, 0) Me.LayoutControlItem13.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem13.TextVisible = False Me.LayoutControlItem13.TextVisible = False
' '
'LayoutControlItem16
'
Me.LayoutControlItem16.Control = Me.chked_2Faktor
Me.LayoutControlItem16.Location = New System.Drawing.Point(0, 48)
Me.LayoutControlItem16.Name = "LayoutControlItem16"
Me.LayoutControlItem16.Size = New System.Drawing.Size(541, 25)
Me.LayoutControlItem16.TextSize = New System.Drawing.Size(0, 0)
Me.LayoutControlItem16.TextVisible = False
'
'AdornerUIManager1 'AdornerUIManager1
' '
Me.AdornerUIManager1.Owner = Me Me.AdornerUIManager1.Owner = Me
@ -461,6 +484,7 @@ Partial Class frmEnvelopeMainData
Me.ShowInTaskbar = False Me.ShowInTaskbar = False
CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.LayoutControl1.ResumeLayout(False) Me.LayoutControl1.ResumeLayout(False)
CType(Me.chked_2Faktor.Properties, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.txtTitle.Properties, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.txtTitle.Properties, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.cmbEnvelopeType.Properties, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.cmbEnvelopeType.Properties, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.cmbCertificationType.Properties, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.cmbCertificationType.Properties, System.ComponentModel.ISupportInitialize).EndInit()
@ -496,6 +520,7 @@ Partial Class frmEnvelopeMainData
CType(Me.LayoutControlItem8, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem8, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem12, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem12, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem13, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.LayoutControlItem13, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.LayoutControlItem16, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.AdornerUIManager1, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.AdornerUIManager1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False) Me.ResumeLayout(False)
@ -540,4 +565,6 @@ Partial Class frmEnvelopeMainData
Friend WithEvents LayoutControlItem14 As DevExpress.XtraLayout.LayoutControlItem Friend WithEvents LayoutControlItem14 As DevExpress.XtraLayout.LayoutControlItem
Friend WithEvents EmptySpaceItem2 As DevExpress.XtraLayout.EmptySpaceItem Friend WithEvents EmptySpaceItem2 As DevExpress.XtraLayout.EmptySpaceItem
Friend WithEvents groupAllOptions As DevExpress.XtraLayout.LayoutControlGroup Friend WithEvents groupAllOptions As DevExpress.XtraLayout.LayoutControlGroup
Friend WithEvents chked_2Faktor As DevExpress.XtraEditors.CheckEdit
Friend WithEvents LayoutControlItem16 As DevExpress.XtraLayout.LayoutControlItem
End Class End Class

View File

@ -118,13 +118,40 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="chked_2Faktor.Location" type="System.Drawing.Point, System.Drawing">
<value>27, 210</value>
</data>
<data name="chked_2Faktor.Properties.Appearance.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 10pt, style=Bold</value>
</data>
<data name="chked_2Faktor.Properties.Caption" xml:space="preserve">
<value>2 Faktor -Authentifizierung aktivieren</value>
</data>
<data name="chked_2Faktor.Size" type="System.Drawing.Size, System.Drawing">
<value>537, 21</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="chked_2Faktor.TabIndex" type="System.Int32, mscorlib">
<value>21</value>
</data>
<data name="&gt;&gt;chked_2Faktor.Name" xml:space="preserve">
<value>chked_2Faktor</value>
</data>
<data name="&gt;&gt;chked_2Faktor.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;chked_2Faktor.Parent" xml:space="preserve">
<value>LayoutControl1</value>
</data>
<data name="&gt;&gt;chked_2Faktor.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="txtTitle.Location" type="System.Drawing.Point, System.Drawing"> <data name="txtTitle.Location" type="System.Drawing.Point, System.Drawing">
<value>204, 45</value> <value>204, 45</value>
</data> </data>
<data name="txtTitle.Size" type="System.Drawing.Size, System.Drawing"> <data name="txtTitle.Size" type="System.Drawing.Size, System.Drawing">
<value>363, 20</value> <value>363, 20</value>
</data> </data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="txtTitle.TabIndex" type="System.Int32, mscorlib"> <data name="txtTitle.TabIndex" type="System.Int32, mscorlib">
<value>4</value> <value>4</value>
</data> </data>
@ -138,7 +165,7 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;txtTitle.ZOrder" xml:space="preserve"> <data name="&gt;&gt;txtTitle.ZOrder" xml:space="preserve">
<value>4</value> <value>5</value>
</data> </data>
<data name="cmbEnvelopeType.Location" type="System.Drawing.Point, System.Drawing"> <data name="cmbEnvelopeType.Location" type="System.Drawing.Point, System.Drawing">
<value>204, 69</value> <value>204, 69</value>
@ -163,7 +190,7 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;cmbEnvelopeType.ZOrder" xml:space="preserve"> <data name="&gt;&gt;cmbEnvelopeType.ZOrder" xml:space="preserve">
<value>5</value> <value>6</value>
</data> </data>
<data name="btOK.Location" type="System.Drawing.Point, System.Drawing"> <data name="btOK.Location" type="System.Drawing.Point, System.Drawing">
<value>22, 636</value> <value>22, 636</value>
@ -191,7 +218,7 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;btOK.ZOrder" xml:space="preserve"> <data name="&gt;&gt;btOK.ZOrder" xml:space="preserve">
<value>6</value> <value>7</value>
</data> </data>
<data name="btCancel.Location" type="System.Drawing.Point, System.Drawing"> <data name="btCancel.Location" type="System.Drawing.Point, System.Drawing">
<value>92, 636</value> <value>92, 636</value>
@ -218,7 +245,7 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;btCancel.ZOrder" xml:space="preserve"> <data name="&gt;&gt;btCancel.ZOrder" xml:space="preserve">
<value>7</value> <value>8</value>
</data> </data>
<data name="cmbCertificationType.Enabled" type="System.Boolean, mscorlib"> <data name="cmbCertificationType.Enabled" type="System.Boolean, mscorlib">
<value>False</value> <value>False</value>
@ -245,10 +272,10 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;cmbCertificationType.ZOrder" xml:space="preserve"> <data name="&gt;&gt;cmbCertificationType.ZOrder" xml:space="preserve">
<value>8</value> <value>9</value>
</data> </data>
<data name="chkSendReminderEmails.Location" type="System.Drawing.Point, System.Drawing"> <data name="chkSendReminderEmails.Location" type="System.Drawing.Point, System.Drawing">
<value>27, 277</value> <value>27, 302</value>
</data> </data>
<data name="chkSendReminderEmails.Properties.Caption" xml:space="preserve"> <data name="chkSendReminderEmails.Properties.Caption" xml:space="preserve">
<value>Erinnerungen senden</value> <value>Erinnerungen senden</value>
@ -269,13 +296,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;chkSendReminderEmails.ZOrder" xml:space="preserve"> <data name="&gt;&gt;chkSendReminderEmails.ZOrder" xml:space="preserve">
<value>9</value> <value>10</value>
</data> </data>
<data name="spnFirstReminderDays.EditValue" type="System.Decimal, mscorlib"> <data name="spnFirstReminderDays.EditValue" type="System.Decimal, mscorlib">
<value>0</value> <value>0</value>
</data> </data>
<data name="spnFirstReminderDays.Location" type="System.Drawing.Point, System.Drawing"> <data name="spnFirstReminderDays.Location" type="System.Drawing.Point, System.Drawing">
<value>207, 299</value> <value>207, 324</value>
</data> </data>
<data name="spnFirstReminderDays.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2"> <data name="spnFirstReminderDays.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value> <value>Combo</value>
@ -296,13 +323,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;spnFirstReminderDays.ZOrder" xml:space="preserve"> <data name="&gt;&gt;spnFirstReminderDays.ZOrder" xml:space="preserve">
<value>10</value> <value>11</value>
</data> </data>
<data name="spnReminderIntervalDays.EditValue" type="System.Decimal, mscorlib"> <data name="spnReminderIntervalDays.EditValue" type="System.Decimal, mscorlib">
<value>0</value> <value>0</value>
</data> </data>
<data name="spnReminderIntervalDays.Location" type="System.Drawing.Point, System.Drawing"> <data name="spnReminderIntervalDays.Location" type="System.Drawing.Point, System.Drawing">
<value>207, 323</value> <value>207, 348</value>
</data> </data>
<data name="spnReminderIntervalDays.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2"> <data name="spnReminderIntervalDays.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value> <value>Combo</value>
@ -323,13 +350,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;spnReminderIntervalDays.ZOrder" xml:space="preserve"> <data name="&gt;&gt;spnReminderIntervalDays.ZOrder" xml:space="preserve">
<value>11</value> <value>12</value>
</data> </data>
<data name="spnExpiresDays.EditValue" type="System.Decimal, mscorlib"> <data name="spnExpiresDays.EditValue" type="System.Decimal, mscorlib">
<value>0</value> <value>0</value>
</data> </data>
<data name="spnExpiresDays.Location" type="System.Drawing.Point, System.Drawing"> <data name="spnExpiresDays.Location" type="System.Drawing.Point, System.Drawing">
<value>207, 392</value> <value>207, 417</value>
</data> </data>
<data name="spnExpiresDays.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2"> <data name="spnExpiresDays.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value> <value>Combo</value>
@ -350,13 +377,13 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;spnExpiresDays.ZOrder" xml:space="preserve"> <data name="&gt;&gt;spnExpiresDays.ZOrder" xml:space="preserve">
<value>12</value> <value>13</value>
</data> </data>
<data name="spnExpiresWarningDays.EditValue" type="System.Decimal, mscorlib"> <data name="spnExpiresWarningDays.EditValue" type="System.Decimal, mscorlib">
<value>0</value> <value>0</value>
</data> </data>
<data name="spnExpiresWarningDays.Location" type="System.Drawing.Point, System.Drawing"> <data name="spnExpiresWarningDays.Location" type="System.Drawing.Point, System.Drawing">
<value>207, 416</value> <value>207, 441</value>
</data> </data>
<data name="spnExpiresWarningDays.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2"> <data name="spnExpiresWarningDays.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value> <value>Combo</value>
@ -377,7 +404,7 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;spnExpiresWarningDays.ZOrder" xml:space="preserve"> <data name="&gt;&gt;spnExpiresWarningDays.ZOrder" xml:space="preserve">
<value>13</value> <value>14</value>
</data> </data>
<data name="cmbLanguage.Location" type="System.Drawing.Point, System.Drawing"> <data name="cmbLanguage.Location" type="System.Drawing.Point, System.Drawing">
<value>207, 186</value> <value>207, 186</value>
@ -401,10 +428,10 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;cmbLanguage.ZOrder" xml:space="preserve"> <data name="&gt;&gt;cmbLanguage.ZOrder" xml:space="preserve">
<value>14</value> <value>15</value>
</data> </data>
<data name="chkUseAccessCode.Location" type="System.Drawing.Point, System.Drawing"> <data name="chkUseAccessCode.Location" type="System.Drawing.Point, System.Drawing">
<value>27, 210</value> <value>27, 235</value>
</data> </data>
<data name="chkUseAccessCode.Properties.Caption" xml:space="preserve"> <data name="chkUseAccessCode.Properties.Caption" xml:space="preserve">
<value>Verwende Zugriffscode</value> <value>Verwende Zugriffscode</value>
@ -425,10 +452,10 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;chkUseAccessCode.ZOrder" xml:space="preserve"> <data name="&gt;&gt;chkUseAccessCode.ZOrder" xml:space="preserve">
<value>15</value> <value>16</value>
</data> </data>
<data name="cmbEmailToCreator.Location" type="System.Drawing.Point, System.Drawing"> <data name="cmbEmailToCreator.Location" type="System.Drawing.Point, System.Drawing">
<value>207, 485</value> <value>207, 510</value>
</data> </data>
<data name="cmbEmailToCreator.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2"> <data name="cmbEmailToCreator.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value> <value>Combo</value>
@ -449,10 +476,10 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;cmbEmailToCreator.ZOrder" xml:space="preserve"> <data name="&gt;&gt;cmbEmailToCreator.ZOrder" xml:space="preserve">
<value>16</value> <value>17</value>
</data> </data>
<data name="cmbEmailToReceivers.Location" type="System.Drawing.Point, System.Drawing"> <data name="cmbEmailToReceivers.Location" type="System.Drawing.Point, System.Drawing">
<value>207, 509</value> <value>207, 534</value>
</data> </data>
<data name="cmbEmailToReceivers.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2"> <data name="cmbEmailToReceivers.Properties.Buttons" type="DevExpress.XtraEditors.Controls.ButtonPredefines, DevExpress.Utils.v21.2">
<value>Combo</value> <value>Combo</value>
@ -473,7 +500,7 @@
<value>LayoutControl1</value> <value>LayoutControl1</value>
</data> </data>
<data name="&gt;&gt;cmbEmailToReceivers.ZOrder" xml:space="preserve"> <data name="&gt;&gt;cmbEmailToReceivers.ZOrder" xml:space="preserve">
<value>17</value> <value>18</value>
</data> </data>
<data name="LayoutControl1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="LayoutControl1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
@ -727,6 +754,12 @@
<data name="&gt;&gt;LayoutControlItem13.Type" xml:space="preserve"> <data name="&gt;&gt;LayoutControlItem13.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;LayoutControlItem16.Name" xml:space="preserve">
<value>LayoutControlItem16</value>
</data>
<data name="&gt;&gt;LayoutControlItem16.Type" xml:space="preserve">
<value>DevExpress.XtraLayout.LayoutControlItem, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;AdornerUIManager1.Name" xml:space="preserve"> <data name="&gt;&gt;AdornerUIManager1.Name" xml:space="preserve">
<value>AdornerUIManager1</value> <value>AdornerUIManager1</value>
</data> </data>

View File

@ -4,7 +4,7 @@ Imports EnvelopeGenerator.Common.Constants
Imports System.ComponentModel Imports System.ComponentModel
Public Class frmEnvelopeMainData Public Class frmEnvelopeMainData
Private FormLoaded As Boolean = False
Public Property Envelope As Envelope = New Envelope() Public Property Envelope As Envelope = New Envelope()
Public Property NewEnvelopeMode As Boolean = True Public Property NewEnvelopeMode As Boolean = True
@ -20,70 +20,87 @@ Public Class frmEnvelopeMainData
End Sub End Sub
Private Sub frmEnvelopeMainData_Load(sender As Object, e As EventArgs) Handles MyBase.Load Private Sub frmEnvelopeMainData_Load(sender As Object, e As EventArgs) Handles MyBase.Load
If NewEnvelopeMode = True Then Try
Me.Text = Resources.Envelope.New_Envelope If NewEnvelopeMode = True Then
Else Me.Text = Resources.Envelope.New_Envelope
Me.Text = Resources.Envelope.Edit_Envelope Else
cmbEnvelopeType.ReadOnly = True Me.Text = Resources.Envelope.Edit_Envelope
End If cmbEnvelopeType.ReadOnly = True
End If
EnvelopeTypeModel = New EnvelopeTypeModel(State) EnvelopeTypeModel = New EnvelopeTypeModel(State)
Dim oTypes = EnvelopeTypeModel.List() Dim oTypes = EnvelopeTypeModel.List()
If oTypes.Count = 0 Then If oTypes.Count = 0 Then
MsgBox("No templates in Database!", MsgBoxStyle.Exclamation, Text) MsgBox("No templates in Database!", MsgBoxStyle.Exclamation, Text)
Close() Close()
Exit Sub Exit Sub
End If End If
Dim certificationTypeList = [Enum].GetValues(GetType(CertificationType)).Cast(Of CertificationType)()
Dim oTranslatedCertificationTypeList = certificationTypeList.Select(AddressOf TranslateCertificationType).ToList()
cmbCertificationType.Properties.Items.AddRange(oTranslatedCertificationTypeList) ' Dim oTranslatedVerificationTypeList = VerificationTypeList.Select(AddressOf TranslateVerificationTypeType).ToList()
Dim finalEmailTypeList = [Enum].GetValues(GetType(FinalEmailType)).Cast(Of FinalEmailType)() Dim certificationTypeList = [Enum].GetValues(GetType(CertificationType)).Cast(Of CertificationType)()
Dim oTranslatedFinalEmailTypeList = FinalEmailTypeList.Select(AddressOf TranslateFinalEmailType).ToList() Dim oTranslatedCertificationTypeList = certificationTypeList.Select(AddressOf TranslateCertificationType).ToList()
cmbEmailToCreator.Properties.Items.AddRange(oTranslatedFinalEmailTypeList) cmbCertificationType.Properties.Items.AddRange(oTranslatedCertificationTypeList)
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 finalEmailTypeList = [Enum].GetValues(GetType(FinalEmailType)).Cast(Of FinalEmailType)()
Dim oTranslatedFinalEmailTypeList = finalEmailTypeList.Select(AddressOf TranslateFinalEmailType).ToList()
If NewEnvelopeMode = True Then cmbEmailToCreator.Properties.Items.AddRange(oTranslatedFinalEmailTypeList)
Dim oType = oTypes.FirstOrDefault() cmbEmailToReceivers.Properties.Items.AddRange(oTranslatedFinalEmailTypeList)
' This will trigger loading values from the type cmbEnvelopeType.Properties.Items.AddRange(oTypes.ToList)
cmbEnvelopeType.EditValue = oType cmbLanguage.Properties.Items.AddRange(New List(Of String) From {"de", "en"})
Else
' This will trigger loading values from the type groupAllOptions.Expanded = False
cmbEnvelopeType.EditValue = Envelope.EnvelopeType
' cmbEnvelopeType.SelectedIndex = Convert.ToInt32(Envelope.EnvelopeType) - 1 If NewEnvelopeMode = True Then
' cmbEnvelopeType.SelectedIndex = Envelope.Type.Id - 1 Dim oType = oTypes.FirstOrDefault()
' cmbEnvelopeType.SelectedItem = cmbEnvelopeType.Properties.Items.Cast(Of EnvelopeType).Where(Function(i) i.Id = Envelope.EnvelopeType.Id).SingleOrDefault()
' This will trigger loading values from the type
cmbEnvelopeType.EditValue = oType
chked_2Faktor.EditValue = DEF_TF_ENABLED
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()
' 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
' Now we can override these values with the values from envelope
txtTitle.EditValue = Envelope.Title
chkUseAccessCode.EditValue = Envelope.UseAccessCode
cmbCertificationType.SelectedIndex = Convert.ToInt32(Envelope.CertificationType) - 1
cmbEmailToCreator.SelectedIndex = Convert.ToInt32(Envelope.FinalEmailToCreator)
cmbEmailToReceivers.SelectedIndex = Convert.ToInt32(Envelope.FinalEmailToReceivers)
End If
End Sub 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 Private Function TranslateCertificationType(pType As CertificationType) As String
Return Resources.Model.ResourceManager.GetString(pType.ToString()) Return Resources.Model.ResourceManager.GetString(pType.ToString())
End Function End Function
Private Function TranslateFinalEmailType(pType As FinalEmailType) As String Private Function TranslateFinalEmailType(pType As FinalEmailType) As String
Return Resources.Model.ResourceManager.GetString(pType.ToString()) Return Resources.Model.ResourceManager.GetString(pType.ToString())
End Function End Function
Private Sub btOK_Click(sender As Object, e As EventArgs) Handles btOK.Click Private Sub btOK_Click(sender As Object, e As EventArgs) Handles btOK.Click
Dim Validator As Validator = New Validator(State.LogConfig, AdornerUIManager1) Dim Validator As Validator = New Validator(State.LogConfig, AdornerUIManager1)
Dim oMissingParams = Validator.Validate(txtTitle) Dim oMissingParams = Validator.Validate(txtTitle)
@ -110,13 +127,16 @@ Public Class frmEnvelopeMainData
Envelope.ExpiresWarningWhenDays = spnExpiresWarningDays.EditValue Envelope.ExpiresWarningWhenDays = spnExpiresWarningDays.EditValue
Envelope.FinalEmailToCreator = cmbEmailToCreator.SelectedIndex Envelope.FinalEmailToCreator = cmbEmailToCreator.SelectedIndex
Envelope.FinalEmailToReceivers = cmbEmailToReceivers.SelectedIndex Envelope.FinalEmailToReceivers = cmbEmailToReceivers.SelectedIndex
Envelope.TFA_Enabled = chked_2Faktor.EditValue
' ContractType kann zzt nicht über die Oberfläche gesetzt werden ' ContractType kann zzt nicht über die Oberfläche gesetzt werden
Envelope.ContractType = ContractType.Contract Envelope.ContractType = ContractType.Contract
End Sub End Sub
Private Sub frmEnvelopeMainData_Shown(sender As Object, e As EventArgs) Handles Me.Shown Private Sub frmEnvelopeMainData_Shown(sender As Object, e As EventArgs) Handles Me.Shown
SetFormHeight() SetFormHeight()
CheckAccessCode()
FormLoaded = True
End Sub End Sub
Private Sub SetFormHeight() Private Sub SetFormHeight()
@ -152,4 +172,15 @@ Public Class frmEnvelopeMainData
cmbEmailToReceivers.SelectedIndex = oSelectedType.FinalEmailToReceivers cmbEmailToReceivers.SelectedIndex = oSelectedType.FinalEmailToReceivers
End Sub 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 End Class

View File

@ -65,7 +65,7 @@ Partial Class frmMain
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageEnvelopeActions = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageEnvelopeActions = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageFunctions = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage() Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup() Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonStatusBar = New DevExpress.XtraBars.Ribbon.RibbonStatusBar() Me.RibbonStatusBar = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
@ -85,8 +85,20 @@ Partial Class frmMain
Me.GridColumn4 = New DevExpress.XtraGrid.Columns.GridColumn() Me.GridColumn4 = New DevExpress.XtraGrid.Columns.GridColumn()
Me.GridColumn5 = New DevExpress.XtraGrid.Columns.GridColumn() Me.GridColumn5 = New DevExpress.XtraGrid.Columns.GridColumn()
Me.GridColumn7 = New DevExpress.XtraGrid.Columns.GridColumn() Me.GridColumn7 = New DevExpress.XtraGrid.Columns.GridColumn()
Me.XtraTabPageAdmin = New DevExpress.XtraTab.XtraTabPage()
Me.GridControlData = New DevExpress.XtraGrid.GridControl()
Me.GridViewData = New DevExpress.XtraGrid.Views.Grid.GridView()
Me.PanelControl1 = New DevExpress.XtraEditors.PanelControl()
Me.GroupControl1 = New DevExpress.XtraEditors.GroupControl()
Me.btnEnvelopes_All = New DevExpress.XtraEditors.SimpleButton()
Me.btnEnvelopes_thisYear = New DevExpress.XtraEditors.SimpleButton()
Me.btnEnvelopes_lastmonth = New DevExpress.XtraEditors.SimpleButton()
Me.btnEnvelopes_thismonth = New DevExpress.XtraEditors.SimpleButton()
Me.RefreshTimer = New System.Windows.Forms.Timer(Me.components) Me.RefreshTimer = New System.Windows.Forms.Timer(Me.components)
Me.SaveFileDialog1 = New System.Windows.Forms.SaveFileDialog() Me.SaveFileDialog1 = New System.Windows.Forms.SaveFileDialog()
Me.GroupControl2 = New DevExpress.XtraEditors.GroupControl()
Me.SplitContainerControl2 = New DevExpress.XtraEditors.SplitContainerControl()
Me.ChartControl1 = New DevExpress.XtraCharts.ChartControl()
CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SplitContainerControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerControl1.Panel1, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.SplitContainerControl1.Panel1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl1.Panel1.SuspendLayout() Me.SplitContainerControl1.Panel1.SuspendLayout()
@ -105,6 +117,21 @@ Partial Class frmMain
CType(Me.ViewReceiversCompleted, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.ViewReceiversCompleted, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.ViewHistoryCompleted, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.ViewHistoryCompleted, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.ViewCompleted, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.ViewCompleted, System.ComponentModel.ISupportInitialize).BeginInit()
Me.XtraTabPageAdmin.SuspendLayout()
CType(Me.GridControlData, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridViewData, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.PanelControl1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.PanelControl1.SuspendLayout()
CType(Me.GroupControl1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.GroupControl1.SuspendLayout()
CType(Me.GroupControl2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerControl2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SplitContainerControl2.Panel1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl2.Panel1.SuspendLayout()
CType(Me.SplitContainerControl2.Panel2, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SplitContainerControl2.Panel2.SuspendLayout()
Me.SplitContainerControl2.SuspendLayout()
CType(Me.ChartControl1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout() Me.SuspendLayout()
' '
'SplashScreenManager1 'SplashScreenManager1
@ -134,7 +161,7 @@ Partial Class frmMain
resources.ApplyResources(Me.XtraTabControlMain, "XtraTabControlMain") resources.ApplyResources(Me.XtraTabControlMain, "XtraTabControlMain")
Me.XtraTabControlMain.Name = "XtraTabControlMain" Me.XtraTabControlMain.Name = "XtraTabControlMain"
Me.XtraTabControlMain.SelectedTabPage = Me.XtraTabPage1 Me.XtraTabControlMain.SelectedTabPage = Me.XtraTabPage1
Me.XtraTabControlMain.TabPages.AddRange(New DevExpress.XtraTab.XtraTabPage() {Me.XtraTabPage1, Me.XtraTabPage2}) Me.XtraTabControlMain.TabPages.AddRange(New DevExpress.XtraTab.XtraTabPage() {Me.XtraTabPage1, Me.XtraTabPage2, Me.XtraTabPageAdmin})
' '
'XtraTabPage1 'XtraTabPage1
' '
@ -426,7 +453,7 @@ Partial Class frmMain
' '
'RibbonPage1 'RibbonPage1
' '
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageEnvelopeActions, Me.RibbonPageGroup1, Me.RibbonPageGroup2}) Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageEnvelopeActions, Me.RibbonPageGroup1, Me.RibbonPageFunctions})
Me.RibbonPage1.Name = "RibbonPage1" Me.RibbonPage1.Name = "RibbonPage1"
resources.ApplyResources(Me.RibbonPage1, "RibbonPage1") resources.ApplyResources(Me.RibbonPage1, "RibbonPage1")
' '
@ -445,15 +472,15 @@ Partial Class frmMain
Me.RibbonPageGroup1.Name = "RibbonPageGroup1" Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
resources.ApplyResources(Me.RibbonPageGroup1, "RibbonPageGroup1") resources.ApplyResources(Me.RibbonPageGroup1, "RibbonPageGroup1")
' '
'RibbonPageGroup2 'RibbonPageFunctions
' '
Me.RibbonPageGroup2.ItemLinks.Add(Me.btnShowDocument) Me.RibbonPageFunctions.ItemLinks.Add(Me.btnShowDocument)
Me.RibbonPageGroup2.ItemLinks.Add(Me.btnContactReceiver) Me.RibbonPageFunctions.ItemLinks.Add(Me.btnContactReceiver)
Me.RibbonPageGroup2.ItemLinks.Add(Me.bbtnitmInfoMail) Me.RibbonPageFunctions.ItemLinks.Add(Me.bbtnitmInfoMail)
Me.RibbonPageGroup2.ItemLinks.Add(Me.bbtnitmEB) Me.RibbonPageFunctions.ItemLinks.Add(Me.bbtnitmEB)
Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonItem2) Me.RibbonPageFunctions.ItemLinks.Add(Me.BarButtonItem2)
Me.RibbonPageGroup2.Name = "RibbonPageGroup2" Me.RibbonPageFunctions.Name = "RibbonPageFunctions"
resources.ApplyResources(Me.RibbonPageGroup2, "RibbonPageGroup2") resources.ApplyResources(Me.RibbonPageFunctions, "RibbonPageFunctions")
' '
'RibbonPage2 'RibbonPage2
' '
@ -606,6 +633,70 @@ Partial Class frmMain
Me.GridColumn7.FieldName = "AddedWhen" Me.GridColumn7.FieldName = "AddedWhen"
Me.GridColumn7.Name = "GridColumn7" Me.GridColumn7.Name = "GridColumn7"
' '
'XtraTabPageAdmin
'
Me.XtraTabPageAdmin.Controls.Add(Me.SplitContainerControl2)
Me.XtraTabPageAdmin.Controls.Add(Me.PanelControl1)
Me.XtraTabPageAdmin.Name = "XtraTabPageAdmin"
resources.ApplyResources(Me.XtraTabPageAdmin, "XtraTabPageAdmin")
'
'GridControlData
'
resources.ApplyResources(Me.GridControlData, "GridControlData")
Me.GridControlData.MainView = Me.GridViewData
Me.GridControlData.MenuManager = Me.RibbonControl
Me.GridControlData.Name = "GridControlData"
Me.GridControlData.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridViewData})
'
'GridViewData
'
Me.GridViewData.GridControl = Me.GridControlData
Me.GridViewData.Name = "GridViewData"
'
'PanelControl1
'
Me.PanelControl1.Controls.Add(Me.GroupControl2)
Me.PanelControl1.Controls.Add(Me.GroupControl1)
resources.ApplyResources(Me.PanelControl1, "PanelControl1")
Me.PanelControl1.Name = "PanelControl1"
'
'GroupControl1
'
Me.GroupControl1.Controls.Add(Me.btnEnvelopes_All)
Me.GroupControl1.Controls.Add(Me.btnEnvelopes_thisYear)
Me.GroupControl1.Controls.Add(Me.btnEnvelopes_lastmonth)
Me.GroupControl1.Controls.Add(Me.btnEnvelopes_thismonth)
resources.ApplyResources(Me.GroupControl1, "GroupControl1")
Me.GroupControl1.Name = "GroupControl1"
'
'btnEnvelopes_All
'
Me.btnEnvelopes_All.Appearance.BackColor = System.Drawing.Color.MediumTurquoise
Me.btnEnvelopes_All.Appearance.Options.UseBackColor = True
resources.ApplyResources(Me.btnEnvelopes_All, "btnEnvelopes_All")
Me.btnEnvelopes_All.Name = "btnEnvelopes_All"
'
'btnEnvelopes_thisYear
'
Me.btnEnvelopes_thisYear.Appearance.BackColor = System.Drawing.Color.LightSeaGreen
Me.btnEnvelopes_thisYear.Appearance.Options.UseBackColor = True
resources.ApplyResources(Me.btnEnvelopes_thisYear, "btnEnvelopes_thisYear")
Me.btnEnvelopes_thisYear.Name = "btnEnvelopes_thisYear"
'
'btnEnvelopes_lastmonth
'
Me.btnEnvelopes_lastmonth.Appearance.BackColor = System.Drawing.Color.Turquoise
Me.btnEnvelopes_lastmonth.Appearance.Options.UseBackColor = True
resources.ApplyResources(Me.btnEnvelopes_lastmonth, "btnEnvelopes_lastmonth")
Me.btnEnvelopes_lastmonth.Name = "btnEnvelopes_lastmonth"
'
'btnEnvelopes_thismonth
'
Me.btnEnvelopes_thismonth.Appearance.BackColor = System.Drawing.Color.Aquamarine
Me.btnEnvelopes_thismonth.Appearance.Options.UseBackColor = True
resources.ApplyResources(Me.btnEnvelopes_thismonth, "btnEnvelopes_thismonth")
Me.btnEnvelopes_thismonth.Name = "btnEnvelopes_thismonth"
'
'RefreshTimer 'RefreshTimer
' '
Me.RefreshTimer.Interval = 120000 Me.RefreshTimer.Interval = 120000
@ -614,6 +705,33 @@ Partial Class frmMain
' '
resources.ApplyResources(Me.SaveFileDialog1, "SaveFileDialog1") resources.ApplyResources(Me.SaveFileDialog1, "SaveFileDialog1")
' '
'GroupControl2
'
resources.ApplyResources(Me.GroupControl2, "GroupControl2")
Me.GroupControl2.Name = "GroupControl2"
'
'SplitContainerControl2
'
resources.ApplyResources(Me.SplitContainerControl2, "SplitContainerControl2")
Me.SplitContainerControl2.Name = "SplitContainerControl2"
'
'SplitContainerControl2.Panel1
'
Me.SplitContainerControl2.Panel1.Controls.Add(Me.GridControlData)
resources.ApplyResources(Me.SplitContainerControl2.Panel1, "SplitContainerControl2.Panel1")
'
'SplitContainerControl2.Panel2
'
Me.SplitContainerControl2.Panel2.Controls.Add(Me.ChartControl1)
resources.ApplyResources(Me.SplitContainerControl2.Panel2, "SplitContainerControl2.Panel2")
Me.SplitContainerControl2.SplitterPosition = 501
'
'ChartControl1
'
resources.ApplyResources(Me.ChartControl1, "ChartControl1")
Me.ChartControl1.Name = "ChartControl1"
Me.ChartControl1.SeriesSerializable = New DevExpress.XtraCharts.Series(-1) {}
'
'frmMain 'frmMain
' '
resources.ApplyResources(Me, "$this") resources.ApplyResources(Me, "$this")
@ -643,6 +761,21 @@ Partial Class frmMain
CType(Me.ViewReceiversCompleted, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.ViewReceiversCompleted, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.ViewHistoryCompleted, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.ViewHistoryCompleted, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.ViewCompleted, System.ComponentModel.ISupportInitialize).EndInit() CType(Me.ViewCompleted, System.ComponentModel.ISupportInitialize).EndInit()
Me.XtraTabPageAdmin.ResumeLayout(False)
CType(Me.GridControlData, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.GridViewData, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.PanelControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.PanelControl1.ResumeLayout(False)
CType(Me.GroupControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.GroupControl1.ResumeLayout(False)
CType(Me.GroupControl2, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.SplitContainerControl2.Panel1, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl2.Panel1.ResumeLayout(False)
CType(Me.SplitContainerControl2.Panel2, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl2.Panel2.ResumeLayout(False)
CType(Me.SplitContainerControl2, System.ComponentModel.ISupportInitialize).EndInit()
Me.SplitContainerControl2.ResumeLayout(False)
CType(Me.ChartControl1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False) Me.ResumeLayout(False)
Me.PerformLayout() Me.PerformLayout()
@ -692,7 +825,7 @@ Partial Class frmMain
Friend WithEvents txtRefreshLabel As DevExpress.XtraBars.BarStaticItem Friend WithEvents txtRefreshLabel As DevExpress.XtraBars.BarStaticItem
Friend WithEvents btnShowDocument As DevExpress.XtraBars.BarButtonItem Friend WithEvents btnShowDocument As DevExpress.XtraBars.BarButtonItem
Friend WithEvents btnContactReceiver As DevExpress.XtraBars.BarButtonItem Friend WithEvents btnContactReceiver As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents RibbonPageFunctions As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents colEnvelopeId As DevExpress.XtraGrid.Columns.GridColumn Friend WithEvents colEnvelopeId As DevExpress.XtraGrid.Columns.GridColumn
Friend WithEvents ViewHistoryCompleted As DevExpress.XtraGrid.Views.Grid.GridView Friend WithEvents ViewHistoryCompleted As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents ColHistoryStatusCompleted As DevExpress.XtraGrid.Columns.GridColumn Friend WithEvents ColHistoryStatusCompleted As DevExpress.XtraGrid.Columns.GridColumn
@ -709,4 +842,16 @@ Partial Class frmMain
Friend WithEvents bbtnitmEB As DevExpress.XtraBars.BarButtonItem Friend WithEvents bbtnitmEB As DevExpress.XtraBars.BarButtonItem
Friend WithEvents bbtnitmInfoMail As DevExpress.XtraBars.BarButtonItem Friend WithEvents bbtnitmInfoMail As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents XtraTabPageAdmin As DevExpress.XtraTab.XtraTabPage
Friend WithEvents PanelControl1 As DevExpress.XtraEditors.PanelControl
Friend WithEvents GroupControl1 As DevExpress.XtraEditors.GroupControl
Friend WithEvents btnEnvelopes_thisYear As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnEnvelopes_lastmonth As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnEnvelopes_thismonth As DevExpress.XtraEditors.SimpleButton
Friend WithEvents btnEnvelopes_All As DevExpress.XtraEditors.SimpleButton
Friend WithEvents GridControlData As DevExpress.XtraGrid.GridControl
Friend WithEvents GridViewData As DevExpress.XtraGrid.Views.Grid.GridView
Friend WithEvents GroupControl2 As DevExpress.XtraEditors.GroupControl
Friend WithEvents SplitContainerControl2 As DevExpress.XtraEditors.SplitContainerControl
Friend WithEvents ChartControl1 As DevExpress.XtraCharts.ChartControl
End Class End Class

View File

@ -764,7 +764,7 @@
<data name="RibbonPageGroup1.Text" xml:space="preserve"> <data name="RibbonPageGroup1.Text" xml:space="preserve">
<value>Daten</value> <value>Daten</value>
</data> </data>
<data name="RibbonPageGroup2.Text" xml:space="preserve"> <data name="RibbonPageFunctions.Text" xml:space="preserve">
<value>Funktionen</value> <value>Funktionen</value>
</data> </data>
<data name="RibbonPage1.Text" xml:space="preserve"> <data name="RibbonPage1.Text" xml:space="preserve">
@ -1025,6 +1025,291 @@
<data name="&gt;&gt;XtraTabPage2.ZOrder" xml:space="preserve"> <data name="&gt;&gt;XtraTabPage2.ZOrder" xml:space="preserve">
<value>1</value> <value>1</value>
</data> </data>
<data name="SplitContainerControl2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="SplitContainerControl2.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 79</value>
</data>
<data name="GridControlData.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="GridControlData.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="GridControlData.Size" type="System.Drawing.Size, System.Drawing">
<value>501, 388</value>
</data>
<data name="GridControlData.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="&gt;&gt;GridControlData.Name" xml:space="preserve">
<value>GridControlData</value>
</data>
<data name="&gt;&gt;GridControlData.Type" xml:space="preserve">
<value>DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;GridControlData.Parent" xml:space="preserve">
<value>SplitContainerControl2.Panel1</value>
</data>
<data name="&gt;&gt;GridControlData.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="SplitContainerControl2.Panel1.Text" xml:space="preserve">
<value>Panel1</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel1.Name" xml:space="preserve">
<value>SplitContainerControl2.Panel1</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel1.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SplitGroupPanel, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel1.Parent" xml:space="preserve">
<value>SplitContainerControl2</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="ChartControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>17, 6</value>
</data>
<data name="ChartControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>300, 200</value>
</data>
<data name="ChartControl1.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;ChartControl1.Name" xml:space="preserve">
<value>ChartControl1</value>
</data>
<data name="&gt;&gt;ChartControl1.Type" xml:space="preserve">
<value>DevExpress.XtraCharts.ChartControl, DevExpress.XtraCharts.v21.2.UI, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;ChartControl1.Parent" xml:space="preserve">
<value>SplitContainerControl2.Panel2</value>
</data>
<data name="&gt;&gt;ChartControl1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="SplitContainerControl2.Panel2.Text" xml:space="preserve">
<value>Panel2</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel2.Name" xml:space="preserve">
<value>SplitContainerControl2.Panel2</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel2.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SplitGroupPanel, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel2.Parent" xml:space="preserve">
<value>SplitContainerControl2</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Panel2.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="SplitContainerControl2.Size" type="System.Drawing.Size, System.Drawing">
<value>1088, 388</value>
</data>
<data name="SplitContainerControl2.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Name" xml:space="preserve">
<value>SplitContainerControl2</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SplitContainerControl, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.Parent" xml:space="preserve">
<value>XtraTabPageAdmin</value>
</data>
<data name="&gt;&gt;SplitContainerControl2.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="GroupControl2.Location" type="System.Drawing.Point, System.Drawing">
<value>496, 5</value>
</data>
<data name="GroupControl2.Size" type="System.Drawing.Size, System.Drawing">
<value>427, 68</value>
</data>
<data name="GroupControl2.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="GroupControl2.Text" xml:space="preserve">
<value>Diagramme</value>
</data>
<data name="&gt;&gt;GroupControl2.Name" xml:space="preserve">
<value>GroupControl2</value>
</data>
<data name="&gt;&gt;GroupControl2.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;GroupControl2.Parent" xml:space="preserve">
<value>PanelControl1</value>
</data>
<data name="&gt;&gt;GroupControl2.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnEnvelopes_All.Location" type="System.Drawing.Point, System.Drawing">
<value>339, 26</value>
</data>
<data name="btnEnvelopes_All.Size" type="System.Drawing.Size, System.Drawing">
<value>104, 35</value>
</data>
<data name="btnEnvelopes_All.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="btnEnvelopes_All.Text" xml:space="preserve">
<value>Insgesamt</value>
</data>
<data name="&gt;&gt;btnEnvelopes_All.Name" xml:space="preserve">
<value>btnEnvelopes_All</value>
</data>
<data name="&gt;&gt;btnEnvelopes_All.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;btnEnvelopes_All.Parent" xml:space="preserve">
<value>GroupControl1</value>
</data>
<data name="&gt;&gt;btnEnvelopes_All.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnEnvelopes_thisYear.Location" type="System.Drawing.Point, System.Drawing">
<value>229, 26</value>
</data>
<data name="btnEnvelopes_thisYear.Size" type="System.Drawing.Size, System.Drawing">
<value>104, 35</value>
</data>
<data name="btnEnvelopes_thisYear.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="btnEnvelopes_thisYear.Text" xml:space="preserve">
<value>Dieses Jahr</value>
</data>
<data name="&gt;&gt;btnEnvelopes_thisYear.Name" xml:space="preserve">
<value>btnEnvelopes_thisYear</value>
</data>
<data name="&gt;&gt;btnEnvelopes_thisYear.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;btnEnvelopes_thisYear.Parent" xml:space="preserve">
<value>GroupControl1</value>
</data>
<data name="&gt;&gt;btnEnvelopes_thisYear.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="btnEnvelopes_lastmonth.Location" type="System.Drawing.Point, System.Drawing">
<value>119, 26</value>
</data>
<data name="btnEnvelopes_lastmonth.Size" type="System.Drawing.Size, System.Drawing">
<value>104, 35</value>
</data>
<data name="btnEnvelopes_lastmonth.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="btnEnvelopes_lastmonth.Text" xml:space="preserve">
<value>Letzten Monat</value>
</data>
<data name="&gt;&gt;btnEnvelopes_lastmonth.Name" xml:space="preserve">
<value>btnEnvelopes_lastmonth</value>
</data>
<data name="&gt;&gt;btnEnvelopes_lastmonth.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;btnEnvelopes_lastmonth.Parent" xml:space="preserve">
<value>GroupControl1</value>
</data>
<data name="&gt;&gt;btnEnvelopes_lastmonth.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="btnEnvelopes_thismonth.Location" type="System.Drawing.Point, System.Drawing">
<value>9, 26</value>
</data>
<data name="btnEnvelopes_thismonth.Size" type="System.Drawing.Size, System.Drawing">
<value>104, 35</value>
</data>
<data name="btnEnvelopes_thismonth.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="btnEnvelopes_thismonth.Text" xml:space="preserve">
<value>Diesen Monat</value>
</data>
<data name="&gt;&gt;btnEnvelopes_thismonth.Name" xml:space="preserve">
<value>btnEnvelopes_thismonth</value>
</data>
<data name="&gt;&gt;btnEnvelopes_thismonth.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.SimpleButton, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;btnEnvelopes_thismonth.Parent" xml:space="preserve">
<value>GroupControl1</value>
</data>
<data name="&gt;&gt;btnEnvelopes_thismonth.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="GroupControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>11, 5</value>
</data>
<data name="GroupControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>453, 68</value>
</data>
<data name="GroupControl1.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="GroupControl1.Text" xml:space="preserve">
<value>Umschläge pro User</value>
</data>
<data name="&gt;&gt;GroupControl1.Name" xml:space="preserve">
<value>GroupControl1</value>
</data>
<data name="&gt;&gt;GroupControl1.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.GroupControl, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;GroupControl1.Parent" xml:space="preserve">
<value>PanelControl1</value>
</data>
<data name="&gt;&gt;GroupControl1.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="PanelControl1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
</data>
<data name="PanelControl1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="PanelControl1.Size" type="System.Drawing.Size, System.Drawing">
<value>1088, 79</value>
</data>
<data name="PanelControl1.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;PanelControl1.Name" xml:space="preserve">
<value>PanelControl1</value>
</data>
<data name="&gt;&gt;PanelControl1.Type" xml:space="preserve">
<value>DevExpress.XtraEditors.PanelControl, DevExpress.Utils.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;PanelControl1.Parent" xml:space="preserve">
<value>XtraTabPageAdmin</value>
</data>
<data name="&gt;&gt;PanelControl1.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="XtraTabPageAdmin.Size" type="System.Drawing.Size, System.Drawing">
<value>1088, 467</value>
</data>
<data name="XtraTabPageAdmin.Text" xml:space="preserve">
<value>Auswertungen (Admin)</value>
</data>
<data name="&gt;&gt;XtraTabPageAdmin.Name" xml:space="preserve">
<value>XtraTabPageAdmin</value>
</data>
<data name="&gt;&gt;XtraTabPageAdmin.Type" xml:space="preserve">
<value>DevExpress.XtraTab.XtraTabPage, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;XtraTabPageAdmin.Parent" xml:space="preserve">
<value>XtraTabControlMain</value>
</data>
<data name="&gt;&gt;XtraTabPageAdmin.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;XtraTabControlMain.Name" xml:space="preserve"> <data name="&gt;&gt;XtraTabControlMain.Name" xml:space="preserve">
<value>XtraTabControlMain</value> <value>XtraTabControlMain</value>
</data> </data>
@ -1098,7 +1383,7 @@
<value>True</value> <value>True</value>
</metadata> </metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>263</value> <value>108</value>
</metadata> </metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing"> <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 13</value> <value>6, 13</value>
@ -1108,83 +1393,83 @@
</data> </data>
<data name="frmMain.IconOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="frmMain.IconOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
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
Bv/c01f/A4y2+8cc2/IPAAAAAElFTkSuQmCC 8g8AAAAASUVORK5CYII=
</value> </value>
</data> </data>
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms"> <data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
@ -1403,10 +1688,10 @@
<data name="&gt;&gt;RibbonPageGroup1.Type" xml:space="preserve"> <data name="&gt;&gt;RibbonPageGroup1.Type" xml:space="preserve">
<value>DevExpress.XtraBars.Ribbon.RibbonPageGroup, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.Ribbon.RibbonPageGroup, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;RibbonPageGroup2.Name" xml:space="preserve"> <data name="&gt;&gt;RibbonPageFunctions.Name" xml:space="preserve">
<value>RibbonPageGroup2</value> <value>RibbonPageFunctions</value>
</data> </data>
<data name="&gt;&gt;RibbonPageGroup2.Type" xml:space="preserve"> <data name="&gt;&gt;RibbonPageFunctions.Type" xml:space="preserve">
<value>DevExpress.XtraBars.Ribbon.RibbonPageGroup, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraBars.Ribbon.RibbonPageGroup, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;RibbonPage2.Name" xml:space="preserve"> <data name="&gt;&gt;RibbonPage2.Name" xml:space="preserve">
@ -1505,6 +1790,12 @@
<data name="&gt;&gt;GridColumn7.Type" xml:space="preserve"> <data name="&gt;&gt;GridColumn7.Type" xml:space="preserve">
<value>DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> <value>DevExpress.XtraGrid.Columns.GridColumn, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data> </data>
<data name="&gt;&gt;GridViewData.Name" xml:space="preserve">
<value>GridViewData</value>
</data>
<data name="&gt;&gt;GridViewData.Type" xml:space="preserve">
<value>DevExpress.XtraGrid.Views.Grid.GridView, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="&gt;&gt;RefreshTimer.Name" xml:space="preserve"> <data name="&gt;&gt;RefreshTimer.Name" xml:space="preserve">
<value>RefreshTimer</value> <value>RefreshTimer</value>
</data> </data>

View File

@ -40,17 +40,22 @@ Public Class frmMain
TempFiles = New TempFiles(LogConfig) TempFiles = New TempFiles(LogConfig)
TempFiles.Create() TempFiles.Create()
MyTempFiles = TempFiles
RefreshHelper = New RefreshHelper(ViewEnvelopes, "Id") RefreshHelper = New RefreshHelper(ViewEnvelopes, "Id")
Controller = New EnvelopeListController(State) Controller = New EnvelopeListController(State)
Try Try
Me.LookAndFeel.UseDefaultLookAndFeel = False Me.LookAndFeel.UseDefaultLookAndFeel = False
LookAndFeel.SetSkinStyle(SkinStyle.Office2019White, SkinSvgPalette.DefaultSkin) LookAndFeel.SetSkinStyle(SkinStyle.Office2019White, SkinSvgPalette.DefaultSkin)
Catch ex As Exception Catch ex As Exception
End Try End Try
If MYUSER.IsAdmin Then
XtraTabControlMain.TabPages(2).PageVisible = True
Else
XtraTabControlMain.TabPages(2).PageVisible = False
End If
LoadEnvelopeData() LoadEnvelopeData()
End Sub End Sub
@ -190,6 +195,8 @@ Public Class frmMain
End Sub End Sub
Private Sub XtraTabControl1_SelectedPageChanged(sender As Object, e As DevExpress.XtraTab.TabPageChangedEventArgs) Handles XtraTabControlMain.SelectedPageChanged Private Sub XtraTabControl1_SelectedPageChanged(sender As Object, e As DevExpress.XtraTab.TabPageChangedEventArgs) Handles XtraTabControlMain.SelectedPageChanged
RibbonPageFunctions.Enabled = True
RibbonPageEnvelopeActions.Enabled = True
Select Case XtraTabControlMain.SelectedTabPageIndex Select Case XtraTabControlMain.SelectedTabPageIndex
Case 1 Case 1
btnEditEnvelope.Enabled = False btnEditEnvelope.Enabled = False
@ -206,6 +213,10 @@ Public Class frmMain
bbtnitmEB.Enabled = False bbtnitmEB.Enabled = False
LoadEnvelopeData() LoadEnvelopeData()
txtEnvelopeIdLabel.Caption = "No Envelope selected" txtEnvelopeIdLabel.Caption = "No Envelope selected"
Case 2
RibbonPageFunctions.Enabled = False
RibbonPageEnvelopeActions.Enabled = False
End Select End Select
End Sub End Sub
@ -565,7 +576,8 @@ Public Class frmMain
For Each oReceiver As EnvelopeReceiver In Receivers For Each oReceiver As EnvelopeReceiver In Receivers
If oReceiver.Email = selReceiver.Email Then If oReceiver.Email = selReceiver.Email Then
If oController.ActionService.ResendReceiver(oEnvelope, oReceiver) = True Then If oController.ActionService.ResendReceiver(oEnvelope, oReceiver) = True Then
MsgBox(Resources.Envelope.Invitation_successfully_resend, MsgBoxStyle.Information, Text) Dim oMsg = Resources.Envelope.Invitation_successfully_resend.Replace("@Mail", oReceiver.Email)
MsgBox(oMsg, MsgBoxStyle.Information, Text)
End If End If
End If End If
@ -583,4 +595,49 @@ Public Class frmMain
txtEnvelopeIdLabel.Caption = String.Format(txtEnvelopeIdLabel.Tag, oEnvelope.Id) txtEnvelopeIdLabel.Caption = String.Format(txtEnvelopeIdLabel.Tag, oEnvelope.Id)
End Sub End Sub
Private Sub btnEnvelopes_thismonth_Click(sender As Object, e As EventArgs) Handles btnEnvelopes_thismonth.Click
If SQL_REP_ENV_USER_TM <> String.Empty Then
Result_Execute(SQL_REP_ENV_USER_TM)
Else
GridControlData.DataSource = Nothing
End If
End Sub
Private Sub btnEnvelopes_lastmonth_Click(sender As Object, e As EventArgs) Handles btnEnvelopes_lastmonth.Click
If SQL_REP_ENV_USER_LM <> String.Empty Then
Result_Execute(SQL_REP_ENV_USER_LM)
Else
GridControlData.DataSource = Nothing
End If
End Sub
Private Sub btnEnvelopes_thisYear_Click(sender As Object, e As EventArgs) Handles btnEnvelopes_thisYear.Click
If SQL_REP_ENV_USER_Y <> String.Empty Then
Result_Execute(SQL_REP_ENV_USER_Y)
Else
GridControlData.DataSource = Nothing
End If
End Sub
Private Sub btnEnvelopes_All_Click(sender As Object, e As EventArgs) Handles btnEnvelopes_All.Click
If SQL_REP_ENV_USER_ALL <> String.Empty Then
Result_Execute(SQL_REP_ENV_USER_ALL)
Else
GridControlData.DataSource = Nothing
End If
End Sub
Private Sub Result_Execute(mySQL As String)
Try
Dim oDT As DataTable = DB_DD_ECM.GetDatatable(mySQL)
If Not IsNothing(oDT) Then
GridControlData.DataSource = oDT
Else
GridControlData.DataSource = Nothing
End If
Catch ex As Exception
End Try
End Sub
End Class End Class

View File

@ -77,12 +77,30 @@ Public Class frmSplashScreen
Worker.ReportProgress(40, "Initializing Configuration") Worker.ReportProgress(40, "Initializing Configuration")
Thread.Sleep(300) Thread.Sleep(300)
Dim oSQl = "SELECT * FROM TBDD_SQL_COMMANDS"
Dim oDT = oState.Database.GetDatatable(oSQl)
For Each oROW As DataRow In oDT.Rows
If oROW.Item("TITLE") = "REPORT ENV USER THIS_MONTH" Then
SQL_REP_ENV_USER_TM = oROW.Item("SQL_COMMAND")
ElseIf oROW.Item("TITLE") = "REPORT ENV USER LAST_MONTH" Then
SQL_REP_ENV_USER_LM = oROW.Item("SQL_COMMAND")
ElseIf oROW.Item("TITLE") = "REPORT ENV USER YEAR" Then
SQL_REP_ENV_USER_Y = oROW.Item("SQL_COMMAND")
ElseIf oROW.Item("TITLE") = "REPORT ENV USER ALL" Then
SQL_REP_ENV_USER_ALL = oROW.Item("SQL_COMMAND")
End If
Next
oSQl = "SELECT * FROM TBSIG_CHART"
DT_CHARTS = oState.Database.GetDatatable(oSQl)
Dim ConfigModel = New ConfigModel(oState) Dim ConfigModel = New ConfigModel(oState)
oState.DbConfig = ConfigModel.LoadConfiguration() oState.DbConfig = ConfigModel.LoadConfiguration()
DEF_TF_ENABLED = oState.DbConfig.Default_TFA_Enabled
' DOCUMENT_PATH_MOVE_AFTSEND = oState.DbConfig.DOCUMENT_PATH_MOVE_AFTSEND ' DOCUMENT_PATH_MOVE_AFTSEND = oState.DbConfig.DOCUMENT_PATH_MOVE_AFTSEND
Worker.ReportProgress(60, "Initializing User") Worker.ReportProgress(60, "Initializing User")
Dim oKey = oState.Database.GetScalarValue("SELECT LICENSE FROM TBDD_3RD_PARTY_MODULES WHERE NAME = 'GDPICTURE' and ACTIVE = 1") Dim oKey = oState.Database.GetScalarValue("SELECT LICENSE FROM TBDD_3RD_PARTY_MODULES WHERE NAME = 'GDPICTURE' and ACTIVE = 1")
Thread.Sleep(300) Thread.Sleep(300)
If oKey.ToString <> String.Empty Then If oKey.ToString <> String.Empty Then
MS_GDPICTUREKEY = oKey MS_GDPICTUREKEY = oKey
End If End If
@ -98,6 +116,7 @@ Public Class frmSplashScreen
If oUser IsNot Nothing Then If oUser IsNot Nothing Then
oUserModel.CheckUserLogin(oUser) oUserModel.CheckUserLogin(oUser)
End If End If
MYUSER = oUser
Worker.ReportProgress(100, "Starting Application") Worker.ReportProgress(100, "Starting Application")
Thread.Sleep(300) Thread.Sleep(300)

View File

@ -1,9 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<configuration> <configuration>
<configSections> <configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="EnvelopeGenerator.Service.My.MySettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
</sectionGroup>
</configSections> </configSections>
<startup> <startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/>
@ -16,11 +13,4 @@
</dependentAssembly> </dependentAssembly>
</assemblyBinding> </assemblyBinding>
</runtime> </runtime>
<applicationSettings>
<EnvelopeGenerator.Service.My.MySettings>
<setting name="RunInDMZ" serializeAs="String">
<value>False</value>
</setting>
</EnvelopeGenerator.Service.My.MySettings>
</applicationSettings>
</configuration> </configuration>

View File

@ -31,5 +31,5 @@ Imports System.Runtime.InteropServices
' übernehmen, indem Sie "*" eingeben: ' übernehmen, indem Sie "*" eingeben:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.7.1.0")> <Assembly: AssemblyVersion("1.8.0.0")>
<Assembly: AssemblyFileVersion("1.7.1.0")> <Assembly: AssemblyFileVersion("1.8.0.0")>

View File

@ -1,10 +1,10 @@
'------------------------------------------------------------------------------ '------------------------------------------------------------------------------
' <auto-generated> ' <auto-generated>
' This code was generated by a tool. ' Dieser Code wurde von einem Tool generiert.
' Runtime Version:4.0.30319.42000 ' Laufzeitversion:4.0.30319.42000
' '
' Changes to this file may cause incorrect behavior and will be lost if ' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' the code is regenerated. ' der Code erneut generiert wird.
' </auto-generated> ' </auto-generated>
'------------------------------------------------------------------------------ '------------------------------------------------------------------------------
@ -22,7 +22,7 @@ Namespace My
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
#Region "My.Settings Auto-Save Functionality" #Region "Automatische My.Settings-Speicherfunktion"
#If _MyType = "WindowsForms" Then #If _MyType = "WindowsForms" Then
Private Shared addedHandler As Boolean Private Shared addedHandler As Boolean
@ -53,15 +53,6 @@ Namespace My
Return defaultInstance Return defaultInstance
End Get End Get
End Property End Property
<Global.System.Configuration.ApplicationScopedSettingAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Configuration.DefaultSettingValueAttribute("False")> _
Public ReadOnly Property RunInDMZ() As Boolean
Get
Return CType(Me("RunInDMZ"),Boolean)
End Get
End Property
End Class End Class
End Namespace End Namespace

View File

@ -1,9 +1,5 @@
<?xml version='1.0' encoding='utf-8'?> <?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="My" GeneratedClassName="MySettings" UseMySettingsClassName="true"> <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" UseMySettingsClassName="true">
<Profiles /> <Profiles />
<Settings> <Settings />
<Setting Name="RunInDMZ" Type="System.Boolean" Scope="Application">
<Value Profile="(Default)">False</Value>
</Setting>
</Settings>
</SettingsFile> </SettingsFile>

View File

@ -33,8 +33,8 @@ Global
{089D5634-FB6B-42D0-B912-7AA7457044E7}.Debug|Any CPU.Build.0 = Debug|Any CPU {089D5634-FB6B-42D0-B912-7AA7457044E7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{089D5634-FB6B-42D0-B912-7AA7457044E7}.Release|Any CPU.ActiveCfg = Debug|Any CPU {089D5634-FB6B-42D0-B912-7AA7457044E7}.Release|Any CPU.ActiveCfg = Debug|Any CPU
{089D5634-FB6B-42D0-B912-7AA7457044E7}.Release|Any CPU.Build.0 = Debug|Any CPU {089D5634-FB6B-42D0-B912-7AA7457044E7}.Release|Any CPU.Build.0 = Debug|Any CPU
{6D56C01F-D6CB-4D8A-BD3D-4FD34326998C}.Debug|Any CPU.ActiveCfg = Release|Any CPU {6D56C01F-D6CB-4D8A-BD3D-4FD34326998C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6D56C01F-D6CB-4D8A-BD3D-4FD34326998C}.Debug|Any CPU.Build.0 = Release|Any CPU {6D56C01F-D6CB-4D8A-BD3D-4FD34326998C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6D56C01F-D6CB-4D8A-BD3D-4FD34326998C}.Release|Any CPU.ActiveCfg = Debug|Any CPU {6D56C01F-D6CB-4D8A-BD3D-4FD34326998C}.Release|Any CPU.ActiveCfg = Debug|Any CPU
{6D56C01F-D6CB-4D8A-BD3D-4FD34326998C}.Release|Any CPU.Build.0 = Debug|Any CPU {6D56C01F-D6CB-4D8A-BD3D-4FD34326998C}.Release|Any CPU.Build.0 = Debug|Any CPU
{6EA0C51F-C2B1-4462-8198-3DE0B32B74F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {6EA0C51F-C2B1-4462-8198-3DE0B32B74F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU