Compare commits

...

13 Commits

Author SHA1 Message Date
Developer 02
39c1d3e624 Add helper methods for color conversion and string checksum generation
- Implemented ToColor extension method to convert predefined ColorType enums to HTML hex colors.
- Added GetChecksum extension method to generate a SHA-256 checksum from a string.
- Included conditional directive for .NET Framework compatibility.
2025-05-21 19:52:58 +02:00
Developer 02
39cc30f48b feat(Receiver): Entsprechend aktualisiert, um die Eigenschaften der Formularanwendung einzubeziehen 2025-05-21 19:31:59 +02:00
Developer 02
79204d4f6d refactor(EnvelopeStatus): umbenennen in EnvelopeReceiver 2025-05-21 18:43:48 +02:00
Developer 02
806b990556 refactor(EnvelopeReceiver): unbenutzte Eigenschaften entfernen und in Receiver umbenennen 2025-05-21 18:41:42 +02:00
Developer 02
d34a1016c4 refactor(Envelope): Eigenschaft StatusTranslated hinzufügen 2025-05-21 18:25:10 +02:00
Developer 02
93dbe63fb4 refactor(Domain.Entites.Envelope): Aktualisiert, um Common.Entities.Envelope zu enthalten 2025-05-21 18:18:40 +02:00
Developer 02
55ffe40c46 Hinzufügen des Attributs Obsolete zu ElementStatus und zugehörigen Methoden 2025-05-21 17:05:52 +02:00
Developer 02
be9516d852 refactor(Domain.Entites.DocumentStatus): Ersetzt durch Common.Entites.DocumentStatus 2025-05-21 15:28:10 +02:00
Developer 02
12502bb2de refactor(EmailMetadata): Entfernt 2025-05-21 12:16:45 +02:00
Developer 02
26745e0c37 feat(Domain.EmailTemplate): Ersetzt durch Common.EmailTemplate 2025-05-21 12:12:29 +02:00
Developer 02
2ea5fd7dbb feat(Domain.User): Ersetzt durch Common.User 2025-05-21 12:08:28 +02:00
Developer 02
446aeb00b1 feat(User): Erforderliche Eigenschaften für Formular hinzugefügt 2025-05-21 11:50:58 +02:00
Developer 02
abc3bb7652 refactor(Applciation): Update Microsoft.Data.SqlClient mit bedingter Versionierung abhängig vom Framework 2025-05-21 09:59:35 +02:00
56 changed files with 3206 additions and 269 deletions

View File

@@ -69,7 +69,7 @@ public class ResetEmailTemplateCommandHandler : IRequestHandler<ResetEmailTempla
new(){
Id = 4,
Name = "DocumentCompleted",
Body = "Guten Tag [NAME_RECEIVER],<br />\r\n<br />\r\nDer Signaturvorgang <B><I>'[DOCUMENT_TITLE]'</I></B> wurde erfolgreich abgeschlossen.<br />\r\n<br />\r\nSie erhalten das Dokument mit einem detaillierten Ergebnisbericht als Anhang zu dieser Email.<br />\r\n<br />\r\nMit freundlichen Grüßen<br />\r\n<br />\r\n[NAME_PORTAL]",
Body = "Guten Tag [NAME_RECEIVER],<br />\r\n<br />\r\nDer Signaturvorgang <B><I>'[DOCUMENT_TITLE]'</I></B> wurde erfolgreich abgeschlossen.<br />\r\n<br />\r\nSie erhalten das Dokument mit einem detaillierten Ergebnisbericht als Anhang zu dieser EmailAddress.<br />\r\n<br />\r\nMit freundlichen Grüßen<br />\r\n<br />\r\n[NAME_PORTAL]",
Subject = "Umschlag abgeschlossen: '[DOCUMENT_TITLE]'"
},
new(){

View File

@@ -20,8 +20,6 @@
<PackageReference Include="DigitalData.EmailProfilerDispatcher" Version="3.1.0" />
<PackageReference Include="MediatR" Version="12.5.0" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="7.0.18" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="5.1.1" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="6.0.2" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.5" />
<PackageReference Include="Otp.NET" Version="1.4.0" />
<PackageReference Include="QRCoder" Version="1.6.0" />
@@ -64,6 +62,7 @@
<ItemGroup Condition="'$(TargetFramework)' == 'net7.0'">
<PackageReference Include="AutoMapper" Version="13.0.1" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="5.2.3" />
<PackageReference Include="CommandDotNet">
<Version>7.0.5</Version>
</PackageReference>
@@ -71,6 +70,7 @@
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0'">
<PackageReference Include="AutoMapper" Version="14.0.0" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="6.0.2" />
<PackageReference Include="CommandDotNet">
<Version>8.1.1</Version>
</PackageReference>
@@ -78,6 +78,7 @@
<ItemGroup Condition="'$(TargetFramework)' == 'net9.0'">
<PackageReference Include="AutoMapper" Version="14.0.0" />
<PackageReference Include="Microsoft.Data.SqlClient" Version="6.0.2" />
<PackageReference Include="CommandDotNet">
<Version>8.1.1</Version>
</PackageReference>

View File

@@ -1,12 +0,0 @@
Imports EnvelopeGenerator.Domain
Public Class DocumentStatus
Public Property Id As Integer
Public Property EnvelopeId As Integer
Public Property ReceiverId As Integer
Public Property Value As String
Public Property Status As Constants.DocumentStatus = Constants.DocumentStatus.Created
Public Property StatusChangedWhen As Date
End Class

View File

@@ -1,4 +0,0 @@
Public Class ElementMetadata
Public Property Index As Integer
Public Property Page As Integer
End Class

View File

@@ -1,5 +1,6 @@
Imports EnvelopeGenerator.Domain
<Obsolete("Tabelle TBSIG_ELEMENT_STATUS entfernt")>
Public Class ElementStatus
Public Property Id As Integer

View File

@@ -27,8 +27,8 @@ Public Class EmailData
''' <param name="pEnvelope"></param>
''' <param name="pReceiver"></param>
''' <param name="pStatus"></param>
Public Sub New(pEnvelope As Envelope, pReceiver As EnvelopeReceiver, pStatus As Constants.EnvelopeStatus)
EmailAdress = pReceiver.Email
Public Sub New(pEnvelope As Envelope, pReceiver As Receiver, pStatus As Constants.EnvelopeStatus)
EmailAdress = pReceiver.EmailAddress
EmailSubject = String.Empty
EmailType = pStatus

View File

@@ -1,8 +0,0 @@
Public Class EmailTemplate
Public Property Id As Integer
Public Property Name As String
Public Property Body As String
Public Property Subject As String
End Class

View File

@@ -1,4 +1,5 @@
Imports EnvelopeGenerator.Domain
Imports EnvelopeGenerator.Domain.Entities
Public Class Envelope
Public Property Id As Integer = 0
@@ -31,7 +32,7 @@ Public Class Envelope
Public Property User As New User()
Public Property Documents As New List(Of EnvelopeDocument)
Public Property Receivers As New List(Of EnvelopeReceiver)
Public Property Receivers As New List(Of Receiver)
Public Property History As New List(Of EnvelopeHistoryEntry)
Public Property EnvelopeType As EnvelopeType
Public Property DOC_RESULT As Byte()

View File

@@ -1,82 +1,4 @@
Imports System.Drawing
Imports DevExpress.Utils.Svg
Imports DigitalData.Modules.Base
Imports EnvelopeGenerator.Domain.Constants
Imports Newtonsoft.Json
Public Class EnvelopeReceiver
Public Property Id As Integer = 0
Public Property UserId As Integer
Public Property Signature As String
Public ReadOnly Property Color As Color
Get
Return Helpers.ColorTypeToColor(ColorType)
End Get
End Property
<JsonIgnore>
Public ReadOnly Property Image As SvgBitmap
Get
Try
Return SvgBitmap.FromFile("Images/circle.svg")
Catch ex As Exception
Return Nothing
End Try
End Get
End Property
Public Property ColorType As ColorType
Public Property Name As String
Public Property Company As String = ""
Public Property JobTitle As String = ""
Public Property Email As String
Public Property Status As ReceiverStatus
Public ReadOnly Property StatusTranslated As String
Get
Dim oStatus = Status.ToString()
Return My.Resources.Model.ResourceManager.GetString(oStatus)
End Get
End Property
Public Property SignedDate As DateTime = DateTime.MinValue
Public ReadOnly Property SignedDateDisplayValue As String
Get
If SignedDate = DateTime.MinValue Then
Return "-"
Else
Return SignedDate.ToString("G")
End If
End Get
End Property
Public ReadOnly Property HasId As Boolean
Get
Return Id > 0
End Get
End Property
Public ReadOnly Property HasEmailAndName As Boolean
Get
Return String.IsNullOrWhiteSpace(Email) = False And
String.IsNullOrWhiteSpace(Name) = False
End Get
End Property
Public Property Sequence As Integer = 0
Public Property PrivateMessage As String = ""
Public Property AccessCode As String = ""
Public Property PhoneNumber As String = ""
Public Function GetSignature() As String
Return StringEx.GetChecksum(Email.ToUpper)
End Function
Public Class EnvelopeReceiver
Public Property Envelope As Envelope
Public Property Receiver As Receiver
End Class

View File

@@ -1,4 +0,0 @@
Public Class EnvelopeResponse
Public Property Envelope As Envelope
Public Property Receiver As EnvelopeReceiver
End Class

View File

@@ -0,0 +1,60 @@
Imports System.Drawing
Imports DigitalData.Modules.Base
Imports EnvelopeGenerator.Domain.Constants
Public Class Receiver
Public Property Id As Integer = 0
Public Property Signature As String
Public ReadOnly Property Color As Color
Get
Return Helpers.ColorTypeToColor(ColorType)
End Get
End Property
Public Property ColorType As ColorType
Public Property Name As String
Public Property Company As String = ""
Public Property JobTitle As String = ""
Public Property EmailAddress As String
Public Property Status As ReceiverStatus
Public Property SignedDate As DateTime = DateTime.MinValue
Public ReadOnly Property SignedDateDisplayValue As String
Get
If SignedDate = DateTime.MinValue Then
Return "-"
Else
Return SignedDate.ToString("G")
End If
End Get
End Property
Public ReadOnly Property HasId As Boolean
Get
Return Id > 0
End Get
End Property
Public ReadOnly Property HasEmailAndName As Boolean
Get
Return String.IsNullOrWhiteSpace(EmailAddress) = False And
String.IsNullOrWhiteSpace(Name) = False
End Get
End Property
Public Property Sequence As Integer = 0
Public Property PrivateMessage As String = ""
Public Property AccessCode As String = ""
Public Property PhoneNumber As String = ""
Public Function GetSignature() As String
Return StringEx.GetChecksum(EmailAddress.ToUpper)
End Function
End Class

View File

@@ -1,5 +1,6 @@
Imports DigitalData.Modules.Database
Imports DigitalData.Modules.Logging
Imports EnvelopeGenerator.Domain.Entities
Public Class State
Public Property UserId As Integer

View File

@@ -1,18 +0,0 @@
Public Class User
Public Property Id As Integer = 0
Public Property Prename As String
Public Property Name As String
Public Property Username As String
Public Property Email As String
Public Property Language As String
Public Property HasAccess As Boolean
Public Property IsAdmin As Boolean
Public Property GhostModeActive As Boolean
Public ReadOnly Property FullName() As String
Get
Return Prename + " " + Name
End Get
End Property
End Class

View File

@@ -275,11 +275,8 @@
<ItemGroup>
<Compile Include="Config.vb" />
<Compile Include="Entities\DbConfig.vb" />
<Compile Include="Entities\ElementMetadata.vb" />
<Compile Include="Entities\DocumentStatus.vb" />
<Compile Include="Entities\ElementStatus.vb" />
<Compile Include="Entities\EmailData.vb" />
<Compile Include="Entities\EmailTemplate.vb" />
<Compile Include="Jobs\APIBackendJobs\APIEnvelopeJob.vb" />
<Compile Include="Jobs\FinalizeDocument\PDFBurnerParams.vb" />
<Compile Include="Services\TemplateService.vb" />
@@ -287,11 +284,10 @@
<Compile Include="Entities\EnvelopeDocument.vb" />
<Compile Include="Entities\EnvelopeDocumentElement.vb" />
<Compile Include="Entities\EnvelopeHistoryEntry.vb" />
<Compile Include="Entities\Receiver.vb" />
<Compile Include="Entities\EnvelopeReceiver.vb" />
<Compile Include="Entities\EnvelopeResponse.vb" />
<Compile Include="Entities\EnvelopeType.vb" />
<Compile Include="Entities\State.vb" />
<Compile Include="Entities\User.vb" />
<Compile Include="Helpers.vb" />
<Compile Include="Jobs\FinalizeDocument\FinalizeDocumentExceptions.vb" />
<Compile Include="Jobs\FinalizeDocument\FinalizeDocumentJob.vb" />

View File

@@ -334,7 +334,7 @@ Namespace Jobs
For Each oReceiver In pEnvelope.Receivers
If ActionService.CompleteEnvelope(pEnvelope, oReceiver) = False Then ', oAttachment
Logger.Error("Envelope could not be completed for receiver [{0}]", oReceiver.Email)
Logger.Error("Envelope could not be completed for receiver [{0}]", oReceiver.EmailAddress)
Return False
End If
Next

View File

@@ -1,4 +1,5 @@
Imports System.Data.SqlClient
Imports EnvelopeGenerator.Domain.Entities
Public Class DocumentStatusModel
Inherits BaseModel

View File

@@ -1,5 +1,6 @@
Imports System.Data.SqlClient
<Obsolete("Tabelle TBSIG_ELEMENT_STATUS entfernt")>
Public Class ElementStatusModel
Inherits BaseModel
@@ -7,6 +8,7 @@ Public Class ElementStatusModel
MyBase.New(pState)
End Sub
<Obsolete("Tabelle TBSIG_ELEMENT_STATUS entfernt")>
Public Function Insert(pElementStatus As ElementStatus) As Boolean
Try
Dim oSql = "INSERT INTO [dbo].[TBSIG_ELEMENT_STATUS]
@@ -41,6 +43,7 @@ Public Class ElementStatusModel
End Try
End Function
<Obsolete("Tabelle TBSIG_ELEMENT_STATUS entfernt")>
Public Function Update(pElementStatus As ElementStatus) As Boolean
Try
Dim oSql = "UPDATE [dbo].[TBSIG_ELEMENT_STATUS]
@@ -68,6 +71,7 @@ Public Class ElementStatusModel
End Try
End Function
<Obsolete("Tabelle TBSIG_ELEMENT_STATUS entfernt")>
Private Function GetElementId(pElement As ElementStatus) As Integer
Try
Return Database.GetScalarValue($"SELECT MAX(GUID) FROM TBSIG_ELEMENT_STATUS

View File

@@ -1,5 +1,6 @@
Imports DigitalData.Modules.Base
Imports EnvelopeGenerator.Domain.Constants
Imports EnvelopeGenerator.Domain.Entities
Public Class EmailTemplateModel
Inherits BaseModel

View File

@@ -1,8 +1,8 @@
Imports System.Data.SqlClient
Imports System.Web.UI.WebControls
Imports DigitalData.Modules.Base
Imports DigitalData.Modules.Logging
Imports EnvelopeGenerator.Domain.Constants
Imports EnvelopeGenerator.Domain.Entities
Public Class EnvelopeModel
Inherits BaseModel

View File

@@ -11,7 +11,7 @@ Public Class ReceiverModel
MyBase.New(pState)
End Sub
Private Function ToReceiver(pRow As DataRow, pColorIndex As Integer) As EnvelopeReceiver
Private Function ToReceiver(pRow As DataRow, pColorIndex As Integer) As Receiver
Dim EmailAdress As String = pRow.ItemEx("EMAIL_ADDRESS", "")
Dim EnvelopeId As Integer = pRow.ItemEx("ENVELOPE_ID", 0)
Dim SignedDate As DateTime = DateTime.MinValue
@@ -24,9 +24,9 @@ Public Class ReceiverModel
End If
End If
Return New EnvelopeReceiver() With {
Return New Receiver() With {
.Id = pRow.ItemEx("GUID", 0),
.Email = pRow.ItemEx("EMAIL_ADDRESS", ""),
.EmailAddress = pRow.ItemEx("EMAIL_ADDRESS", ""),
.Name = pRow.ItemEx("NAME", ""),
.Sequence = pRow.ItemEx("SEQUENCE", 0),
.Signature = pRow.ItemEx("SIGNATURE", ""),
@@ -38,15 +38,15 @@ Public Class ReceiverModel
}
End Function
Private Function ToReceiver(pTable As DataTable) As EnvelopeReceiver
Private Function ToReceiver(pTable As DataTable) As Receiver
Return pTable?.Rows.Cast(Of DataRow).
Select(AddressOf ToReceiver).
Single()
End Function
Public Function TestReceiverExists(pReceiver As EnvelopeReceiver) As Boolean
Public Function TestReceiverExists(pReceiver As Receiver) As Boolean
Try
Dim oGuid = Database.GetScalarValue($"SELECT COALESCE(GUID, 0) FROM TBSIG_RECEIVER WHERE EMAIL_ADDRESS = '{pReceiver.Email}'")
Dim oGuid = Database.GetScalarValue($"SELECT COALESCE(GUID, 0) FROM TBSIG_RECEIVER WHERE EMAIL_ADDRESS = '{pReceiver.EmailAddress}'")
pReceiver.Id = oGuid
Return oGuid > 0
Catch ex As Exception
@@ -55,7 +55,7 @@ Public Class ReceiverModel
End Try
End Function
Public Function Insert(pReceiver As EnvelopeReceiver, pTransaction As SqlTransaction) As Boolean
Public Function Insert(pReceiver As Receiver, pTransaction As SqlTransaction) As Boolean
Try
Dim oSignature As String = pReceiver.GetSignature()
Dim oCheck = $"SELECT COUNT(GUID) FROM [dbo].[TBSIG_RECEIVER] WHERE SIGNATURE = '{oSignature}'"
@@ -66,19 +66,19 @@ Public Class ReceiverModel
([EMAIL_ADDRESS]
,[SIGNATURE])
VALUES
('{pReceiver.Email}'
('{pReceiver.EmailAddress}'
,'{pReceiver.GetSignature()}')"
Dim oCommand = New SqlCommand(oSql)
Dim oResult = Database.ExecuteNonQuery(oCommand)
If oResult = True Then
pReceiver.Id = GetReceiverIdByEmail(pReceiver.Email, pTransaction)
pReceiver.Id = GetReceiverIdByEmail(pReceiver.EmailAddress, pTransaction)
Return True
Else
Return False
End If
Else
Logger.Warn($"Receiver [{pReceiver.Email}] already existing! SignatureID: {oSignature} Check SQL {oCheck}")
Logger.Warn($"Receiver [{pReceiver.EmailAddress}] already existing! SignatureID: {oSignature} Check SQL {oCheck}")
Return True
End If
Catch ex As Exception
@@ -87,7 +87,7 @@ Public Class ReceiverModel
End Try
End Function
Public Function Update(pReceiver As EnvelopeReceiver, pTransaction As SqlTransaction) As Boolean
Public Function Update(pReceiver As Receiver, pTransaction As SqlTransaction) As Boolean
Try
Dim oSql As String = $"UPDATE [dbo].[TBSIG_USER_RECEIVER]
SET [NAME] = '{pReceiver.Name}'
@@ -118,7 +118,7 @@ Public Class ReceiverModel
End Try
End Function
Public Function Assign(pEnvelope As Envelope, pReceiver As EnvelopeReceiver, pTransaction As SqlTransaction) As Boolean
Public Function Assign(pEnvelope As Envelope, pReceiver As Receiver, pTransaction As SqlTransaction) As Boolean
Dim oSql = $"INSERT INTO [dbo].[TBSIG_ENVELOPE_RECEIVER]
([ENVELOPE_ID]
,[RECEIVER_ID]
@@ -153,7 +153,7 @@ Public Class ReceiverModel
Return Database.ExecuteNonQuery(oCommand, pTransaction)
End Function
Public Function ListEnvelopeReceivers(pEnvelopeId As Integer) As IEnumerable(Of EnvelopeReceiver)
Public Function ListEnvelopeReceivers(pEnvelopeId As Integer) As IEnumerable(Of Receiver)
Try
Dim oSql = $"SELECT * FROM [dbo].[VWSIG_ENVELOPE_RECEIVERS] WHERE ENVELOPE_ID = {pEnvelopeId}"
Dim oTable = Database.GetDatatable(oSql)
@@ -187,7 +187,7 @@ Public Class ReceiverModel
End Try
End Function
Public Function ListReceivers() As IEnumerable(Of EnvelopeReceiver)
Public Function ListReceivers() As IEnumerable(Of Receiver)
Try
Dim oSql = $"SELECT * FROM [dbo].[TBSIG_RECEIVER]"
Dim oTable = Database.GetDatatable(oSql)
@@ -202,13 +202,13 @@ Public Class ReceiverModel
End Try
End Function
Public Function ListReceivers(pReceiversFromGrid As List(Of EnvelopeReceiver)) As IEnumerable(Of EnvelopeReceiver)
Public Function ListReceivers(pReceiversFromGrid As List(Of Receiver)) As IEnumerable(Of Receiver)
Try
If pReceiversFromGrid.Count = 0 Then
Return New List(Of EnvelopeReceiver)
Return New List(Of Receiver)
End If
Dim oAddresses = pReceiversFromGrid.Select(Function(r) $"'{r.Email}'").JoinToString(",")
Dim oAddresses = pReceiversFromGrid.Select(Function(r) $"'{r.EmailAddress}'").JoinToString(",")
Dim oSql = $"SELECT * FROM [dbo].[TBSIG_RECEIVER] WHERE EMAIL_ADDRESS IN ({oAddresses})"
Dim oTable = Database.GetDatatable(oSql)
@@ -235,7 +235,7 @@ Public Class ReceiverModel
End Try
End Function
Public Function GetById(pReceiverId As Integer) As EnvelopeReceiver
Public Function GetById(pReceiverId As Integer) As Receiver
'Try
' Dim oSql = $"SELECT * FROM [dbo].[VWSIG_ENVELOPE_RECEIVERS] WHERE RECEIVER_ID = {pReceiverId}"
' Dim oTable = Database.GetDatatable(oSql)

View File

@@ -1,5 +1,6 @@
Imports DigitalData.Modules.Base
Imports DigitalData.Modules.Logging
Imports EnvelopeGenerator.Domain.Entities
Public Class UserModel
Inherits BaseModel

View File

@@ -320,7 +320,7 @@ Partial Public Class rptEnvelopeHistory
Me.XrTableCell19.StylePriority.UseBorders = False
Me.XrTableCell19.StylePriority.UseFont = False
Me.XrTableCell19.StylePriority.UseForeColor = False
Me.XrTableCell19.Text = "Email"
Me.XrTableCell19.Text = "EmailAddress"
Me.XrTableCell19.Weight = 0.11578820509129036R
'
'XrTableCell20
@@ -329,7 +329,7 @@ Partial Public Class rptEnvelopeHistory
Me.XrTableCell20.BorderColor = System.Drawing.Color.Empty
Me.XrTableCell20.Borders = DevExpress.XtraPrinting.BorderSide.None
Me.XrTableCell20.Dpi = 254.0!
Me.XrTableCell20.ExpressionBindings.AddRange(New DevExpress.XtraReports.UI.ExpressionBinding() {New DevExpress.XtraReports.UI.ExpressionBinding("BeforePrint", "Text", "[Envelope].[User].[Email]")})
Me.XrTableCell20.ExpressionBindings.AddRange(New DevExpress.XtraReports.UI.ExpressionBinding() {New DevExpress.XtraReports.UI.ExpressionBinding("BeforePrint", "Text", "[Envelope].[User].[EmailAddress]")})
Me.XrTableCell20.Font = New System.Drawing.Font("Arial", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.XrTableCell20.ForeColor = System.Drawing.Color.Black
Me.XrTableCell20.Multiline = True

View File

@@ -56,7 +56,7 @@ Public Class ActionService
Next
Return oSendResult
End Function
Public Function ResendReceiver(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean
Public Function ResendReceiver(pEnvelope As Envelope, pReceiver As Receiver) As Boolean
Return EmailService.SendDocumentReceivedEmail(pEnvelope, pReceiver)
End Function
@@ -86,7 +86,7 @@ Public Class ActionService
End Function
Public Function API_SendWithdrawn_Mails(pEnvelope As Envelope, pReason As String) As Boolean
Dim oSendResult As Boolean = False
For Each oReceiver As EnvelopeReceiver In pEnvelope.Receivers
For Each oReceiver As Receiver In pEnvelope.Receivers
If EmailService.SendEnvelopeDeletedEmail(pEnvelope, oReceiver, pReason) = False Then
Return False
End If
@@ -94,8 +94,8 @@ Public Class ActionService
Return True
End Function
Public Function OpenEnvelope(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean
Dim oUserReference = pReceiver.Email
Public Function OpenEnvelope(pEnvelope As Envelope, pReceiver As Receiver) As Boolean
Dim oUserReference = pReceiver.EmailAddress
If HistoryService.SetEnvelopeStatus(pEnvelope, EnvelopeStatus.DocumentOpened, oUserReference) = False Then
Return False
@@ -104,8 +104,8 @@ Public Class ActionService
Return True
End Function
Public Function RequestAccessCode(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean
Dim oUserReference = pReceiver.Email
Public Function RequestAccessCode(pEnvelope As Envelope, pReceiver As Receiver) As Boolean
Dim oUserReference = pReceiver.EmailAddress
If HistoryService.SetEnvelopeStatus(pEnvelope, EnvelopeStatus.AccessCodeRequested, oUserReference) = False Then
Return False
@@ -114,8 +114,8 @@ Public Class ActionService
Return True
End Function
Public Function EnterCorrectAccessCode(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean
Dim oUserReference = pReceiver.Email
Public Function EnterCorrectAccessCode(pEnvelope As Envelope, pReceiver As Receiver) As Boolean
Dim oUserReference = pReceiver.EmailAddress
If HistoryService.SetEnvelopeStatus(pEnvelope, EnvelopeStatus.AccessCodeCorrect, oUserReference) = False Then
Return False
@@ -124,8 +124,8 @@ Public Class ActionService
Return True
End Function
Public Function EnterIncorrectAccessCode(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean
Dim oUserReference = pReceiver.Email
Public Function EnterIncorrectAccessCode(pEnvelope As Envelope, pReceiver As Receiver) As Boolean
Dim oUserReference = pReceiver.EmailAddress
If HistoryService.SetEnvelopeStatus(pEnvelope, EnvelopeStatus.AccessCodeIncorrect, oUserReference) = False Then
Return False
@@ -134,8 +134,8 @@ Public Class ActionService
Return True
End Function
Public Function SignEnvelope(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean
Dim oUserReference = pReceiver.Email
Public Function SignEnvelope(pEnvelope As Envelope, pReceiver As Receiver) As Boolean
Dim oUserReference = pReceiver.EmailAddress
If HistoryService.SetEnvelopeStatus(pEnvelope, EnvelopeStatus.DocumentSigned, oUserReference) = False Then
Return False
@@ -152,8 +152,8 @@ Public Class ActionService
Return True
End Function
Public Function CompleteEnvelope(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean ', pAttachment As String
If HistoryService.SetEnvelopeStatus(pEnvelope, EnvelopeStatus.MessageCompletionSent, pReceiver.Email) = False Then
Public Function CompleteEnvelope(pEnvelope As Envelope, pReceiver As Receiver) As Boolean ', pAttachment As String
If HistoryService.SetEnvelopeStatus(pEnvelope, EnvelopeStatus.MessageCompletionSent, pReceiver.EmailAddress) = False Then
Return False
End If

View File

@@ -13,7 +13,7 @@ Public Class EmailService
EmailTemplate = New TemplateService(pState)
End Sub
Public Function SendEnvelopeDeletedEmail(pEnvelope As Envelope, pReceiver As EnvelopeReceiver, pReason As String) As Boolean
Public Function SendEnvelopeDeletedEmail(pEnvelope As Envelope, pReceiver As Receiver, pReason As String) As Boolean
Logger.Debug("SendEnvelopeDeletedEmail - Creating email data object...")
Dim oEmailData As New EmailData(pEnvelope, pReceiver, Domain.Constants.EnvelopeStatus.MessageDeletionSent) With
{
@@ -31,7 +31,7 @@ Public Class EmailService
Return True
End Function
Public Function SendDocumentReceivedEmail(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean
Public Function SendDocumentReceivedEmail(pEnvelope As Envelope, pReceiver As Receiver) As Boolean
Logger.Debug("Creating email data object.")
Dim oEmailData As New EmailData(pEnvelope, pReceiver, Domain.Constants.EnvelopeStatus.MessageInvitationSent) With
{
@@ -49,7 +49,7 @@ Public Class EmailService
Return True
End Function
Public Function GetReceiverUrl(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As String
Public Function GetReceiverUrl(pEnvelope As Envelope, pReceiver As Receiver) As String
Logger.Debug($"State.DbConfig.SignatureHost: {State.DbConfig.SignatureHost}")
Logger.Debug($" pEnvelope.Uuid: {pEnvelope.Uuid}")
Logger.Debug($" pReceiver.Signature: {pReceiver.Signature}")
@@ -62,7 +62,7 @@ Public Class EmailService
End Function
Public Function SendDocumentAccessCodeReceivedEmail(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean
Public Function SendDocumentAccessCodeReceivedEmail(pEnvelope As Envelope, pReceiver As Receiver) As Boolean
Logger.Debug("Creating email data object.")
Logger.Debug($"State.DbConfig.SignatureHost: {State.DbConfig.SignatureHost}")
Logger.Debug($" pEnvelope.Uuid: {pEnvelope.Uuid}")
@@ -83,7 +83,7 @@ Public Class EmailService
Return True
End Function
Public Function SendSignedEmail(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean
Public Function SendSignedEmail(pEnvelope As Envelope, pReceiver As Receiver) As Boolean
Logger.Debug("Creating email data object.")
Dim oEmailData = New EmailData(pEnvelope, pReceiver, Domain.Constants.EnvelopeStatus.MessageConfirmationSent) With
{
@@ -100,7 +100,7 @@ Public Class EmailService
Return True
End Function
Public Function SendDocumentCompletedEmailToReceiver(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean ', pAttachment As String
Public Function SendDocumentCompletedEmailToReceiver(pEnvelope As Envelope, pReceiver As Receiver) As Boolean ', pAttachment As String
Logger.Debug("Creating email data object.")
Dim oEmailData = New EmailData(pEnvelope, pReceiver, Domain.Constants.EnvelopeStatus.MessageCompletionSent) With
{

View File

@@ -43,7 +43,7 @@ Namespace My.Resources
Public Shared ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("EnvelopeGenerator.Common.Email", GetType(Email).Assembly)
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("EnvelopeGenerator.Common.EmailAddress", GetType(Email).Assembly)
resourceMan = temp
End If
Return resourceMan

View File

@@ -236,7 +236,7 @@ Namespace My.Resources
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Die Email-Adresse [ @Mail ] konnte nicht validiert werden! ähnelt.
''' Sucht eine lokalisierte Zeichenfolge, die Die EmailAddress-Adresse [ @Mail ] konnte nicht validiert werden! ähnelt.
'''</summary>
Public Shared ReadOnly Property Error_email_Validation() As String
Get
@@ -300,7 +300,7 @@ Namespace My.Resources
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Mindestens ein Empfänger hat keine Anrede oder keine Email Adresse. ähnelt.
''' Sucht eine lokalisierte Zeichenfolge, die Mindestens ein Empfänger hat keine Anrede oder keine EmailAddress Adresse. ähnelt.
'''</summary>
Public Shared ReadOnly Property Incomplete_Receivers() As String
Get
@@ -309,11 +309,11 @@ Namespace My.Resources
End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Empfänger {0} hat keine gültige Email Addresse. ähnelt.
''' Sucht eine lokalisierte Zeichenfolge, die Empfänger {0} hat keine gültige EmailAddress Addresse. ähnelt.
'''</summary>
Public Shared ReadOnly Property Invalid_Email_Address() As String
Get
Return ResourceManager.GetString("Invalid Email Address", resourceCulture)
Return ResourceManager.GetString("Invalid EmailAddress Address", resourceCulture)
End Get
End Property

View File

@@ -22,9 +22,10 @@ namespace EnvelopeGenerator.Domain.Entities
[Column("RECEIVER_ID")]
public int ReceiverId { get; set; }
// TODO: * check Form Application and remove default value
[Required]
[Column("STATUS")]
public int Status { get; set; }
public Constants.DocumentStatus Status { get; set; } = Constants.DocumentStatus.Created;
[Column("STATUS_CHANGED_WHEN", TypeName = "datetime")]
public DateTime StatusChangedWhen { get; set; }

View File

@@ -3,6 +3,7 @@ using System.ComponentModel.DataAnnotations.Schema;
#if NETFRAMEWORK
using System;
using System.Collections.Generic;
using System.Linq;
#endif
namespace EnvelopeGenerator.Domain.Entities
@@ -10,28 +11,32 @@ namespace EnvelopeGenerator.Domain.Entities
[Table("TBSIG_ENVELOPE", Schema = "dbo")]
public class Envelope
{
// TODO: * Check the Form App and remove the default value
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column("GUID")]
public int Id { get; set; }
public int Id { get; set; } = 0;
[Required]
[Column("USER_ID")]
public int UserId { get; set; }
// TODO: * Check the Form App and remove the default value
[Required]
[Column("STATUS")]
public int Status { get; set; }
public int Status { get; set; } = (int)Constants.EnvelopeStatus.EnvelopeCreated;
[NotMapped]
public string StatusName => ((Constants.EnvelopeStatus)Status).ToString();
// TODO: The default value is set to 0. Check the Form App to remove this
[Required]
[Column("ENVELOPE_UUID", TypeName = "nvarchar(36)")]
public string Uuid { get; set; }
public string Uuid { get; set; } = Guid.NewGuid().ToString();
// TODO: * Check the Form App and remove the default value
[Column("MESSAGE", TypeName = "nvarchar(max)")]
public string Message { get; set; }
public string Message { get; set; } = My.Resources.Envelope.Please_read_and_sign_this_document;
[Column("EXPIRES_WHEN", TypeName = "datetime")]
public DateTime ExpiresWhen { get; set; }
@@ -46,32 +51,43 @@ namespace EnvelopeGenerator.Domain.Entities
[Column("CHANGED_WHEN", TypeName = "datetime")]
public DateTime ChangedWhen { get; set; }
// TODO: * Check the Form App and remove the default value
[Column("TITLE", TypeName = "nvarchar(128)")]
public string Title { get; set; }
public string Title { get; set; } = string.Empty;
[Column("CONTRACT_TYPE")]
public int ContractType { get; set; }
// TODO: * Check the Form App and remove the default value
[NotMapped]
public string ContractTypeTranslated => My.Resources.Model.ResourceManager.GetString(ContractType.ToString());
// TODO: * Check the Form App and remove the default value
[Column("LANGUAGE", TypeName = "nvarchar(5)")]
public string Language { get; set; }
public string Language { get; set; } = "de-DE";
// TODO: * Check the Form App and remove the default value
[Column("SEND_REMINDER_EMAILS")]
public bool SendReminderEmails { get; set; }
public bool SendReminderEmails { get; set; } = false;
// TODO: * Check the Form App and remove the default value
[Column("FIRST_REMINDER_DAYS")]
public int FirstReminderDays { get; set; }
public int FirstReminderDays { get; set; } = 0;
// TODO: * Check the Form App and remove the default value
[Column("REMINDER_INTERVAL_DAYS")]
public int ReminderIntervalDays { get; set; }
public int ReminderIntervalDays { get; set; } = 0;
[Column("ENVELOPE_TYPE")]
public int EnvelopeTypeId { get; set; }
// TODO: * Check the Form App and remove the default value
[Column("CERTIFICATION_TYPE")]
public int CertificationType { get; set; }
public int CertificationType { get; set; } = (int)Constants.CertificationType.AdvancedElectronicSignature;
// TODO: * Check the Form App and remove the default value
[Column("USE_ACCESS_CODE")]
public bool UseAccessCode { get; set; }
public bool UseAccessCode { get; set; } = false;
[Column("FINAL_EMAIL_TO_CREATOR")]
public int FinalEmailToCreator { get; set; }
@@ -85,29 +101,58 @@ namespace EnvelopeGenerator.Domain.Entities
[Column("EXPIRES_WARNING_WHEN_DAYS")]
public int ExpiresWarningWhenDays { get; set; }
// TODO: * Check the Form App and remove the default value
[Column("TFA_ENABLED", TypeName = "bit")]
public bool TFAEnabled { get; set; }
public bool TFAEnabled { get; set; } = false;
[Column("DOC_RESULT", TypeName = "varbinary(max)")]
public byte[] DocResult { get; set; }
/// <summary>
/// The sender of envelope
/// </summary>
[NotMapped]
public string CURRENT_WORK_APP { get; set; } = "signFLOW GUI";
// TODO: * Check the Form App and remove the default value
[ForeignKey("UserId")]
public User User { get; set; }
public User User { get; set; } = new User();
[ForeignKey("EnvelopeTypeId")]
public EnvelopeType EnvelopeType { get; set; }
[NotMapped]
public string EnvelopeTypeTitle => EnvelopeType.Title;
public string EnvelopeTypeTitle => EnvelopeType?.Title;
[NotMapped]
public bool IsAlreadySent => Status > (int)Constants.EnvelopeStatus.EnvelopeSaved;
public IEnumerable<EnvelopeDocument> Documents { get; set; }
[NotMapped]
public string StatusTranslated => My.Resources.Model.ResourceManager.GetString(Status.ToString());
public IEnumerable<EnvelopeHistory> History { get; set; }
// TODO: * Check the Form App and remove the default value
public IEnumerable<EnvelopeDocument> Documents { get; set; } = new List<EnvelopeDocument>();
// TODO: * Check the Form App and remove the default value
public IEnumerable<EnvelopeHistory> History { get; set; } = new List<EnvelopeHistory>();
// TODO: * Check the Form App and remove the default value
public IEnumerable<Receiver> Receivers { get; set; } = new List<Receiver>();
/// <summary>
/// Validates whether the receiver and document data are complete.
/// </summary>
public List<string> ValidateReceiverDocumentData()
{
var errors = new List<string>();
if (!Documents?.Any() ?? true)
errors.Add(My.Resources.Envelope.Missing_Documents);
if (!Receivers?.Any() ?? true)
errors.Add(My.Resources.Envelope.Missing_Receivers);
if (Receivers?.Any(r => !r.HasEmailAndName) ?? false)
errors.Add(My.Resources.Envelope.Incomplete_Receivers);
return errors;
}
}
}

View File

@@ -1,5 +1,6 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Drawing;
#if NETFRAMEWORK
using System;
using System.Collections.Generic;
@@ -34,5 +35,55 @@ namespace EnvelopeGenerator.Domain.Entities
public DateTime TfaRegDeadline { get; set; }
public IEnumerable<EnvelopeReceiver> EnvelopeReceivers { get; set; }
[NotMapped]
public string Name { get; set; }
[NotMapped]
public string Company { get; set; } = string.Empty;
[NotMapped]
public string JobTitle { get; set; } = string.Empty;
[NotMapped]
public string PhoneNumber { get; set; } = string.Empty;
[NotMapped]
public string AccessCode { get; set; } = string.Empty;
[NotMapped]
public string PrivateMessage { get; set; } = string.Empty;
[NotMapped]
public int Sequence { get; set; } = 0;
[NotMapped]
public DateTime SignedDate { get; set; } = DateTime.MinValue;
[NotMapped]
public Constants.ReceiverStatus Status { get; set; }
[NotMapped]
public Constants.ColorType ColorType { get; set; }
[NotMapped]
public bool HasId => Id > 0;
[NotMapped]
public bool HasEmailAndName =>
!string.IsNullOrWhiteSpace(EmailAddress) &&
!string.IsNullOrWhiteSpace(Name);
[NotMapped]
public string SignedDateDisplayValue =>
SignedDate == DateTime.MinValue ? "-" : SignedDate.ToString("G");
[NotMapped]
public Color Color => ColorType.ToColor();
public string GetSignature()
{
return EmailAddress.ToUpperInvariant().GetChecksum();
}
}
}

View File

@@ -13,7 +13,7 @@ namespace EnvelopeGenerator.Domain.Entities
[Column("GUID")]
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public int Id { get; set; } = 0;
[StringLength(50)]
[Column("ADDED_WHO")]
@@ -95,5 +95,19 @@ namespace EnvelopeGenerator.Domain.Entities
[Column("DELETED_WHO")]
[StringLength(50)]
public string DeletedWho { get; set; }
#region FORM_APP
[NotMapped]
public bool HasAccess { get; set; }
[NotMapped]
public bool IsAdmin { get; set; }
[NotMapped]
public bool GhostModeActive { get; set; }
[NotMapped]
public string FullName => $"{Prename} {Name}";
#endregion
}
}

View File

@@ -22,4 +22,59 @@
<PackageReference Include="DigitalData.EmailProfilerDispatcher.Abstraction.Attributes" Version="1.0.0" />
</ItemGroup>
<ItemGroup>
<Compile Update="Resources\Email.Designer.cs">
<DesignTime>True</DesignTime>
<AutoGen>True</AutoGen>
<DependentUpon>Email.resx</DependentUpon>
</Compile>
<Compile Update="Resources\Envelope.Designer.cs">
<DesignTime>True</DesignTime>
<AutoGen>True</AutoGen>
<DependentUpon>Envelope.resx</DependentUpon>
</Compile>
<Compile Update="Resources\Model.Designer.cs">
<DesignTime>True</DesignTime>
<AutoGen>True</AutoGen>
<DependentUpon>Model.resx</DependentUpon>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Update="Resources\Email.en.resx">
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<LastGenOutput>Email.en.Designer.vb</LastGenOutput>
<Generator>PublicResXFileCodeGenerator</Generator>
</EmbeddedResource>
<EmbeddedResource Update="Resources\Email.resx">
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<LastGenOutput>Email.Designer.cs</LastGenOutput>
<Generator>PublicResXFileCodeGenerator</Generator>
</EmbeddedResource>
<EmbeddedResource Update="Resources\Envelope.en.resx">
<SubType>Designer</SubType>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<LastGenOutput>Envelope.en.Designer.vb</LastGenOutput>
<Generator>PublicResXFileCodeGenerator</Generator>
</EmbeddedResource>
<EmbeddedResource Update="Resources\Envelope.resx">
<SubType>Designer</SubType>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<LastGenOutput>Envelope.Designer.cs</LastGenOutput>
<Generator>PublicResXFileCodeGenerator</Generator>
</EmbeddedResource>
<EmbeddedResource Update="Resources\Model.en.resx">
<SubType>Designer</SubType>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<LastGenOutput>Model.en.Designer.vb</LastGenOutput>
<Generator>PublicResXFileCodeGenerator</Generator>
</EmbeddedResource>
<EmbeddedResource Update="Resources\Model.resx">
<SubType>Designer</SubType>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<LastGenOutput>Model.Designer.cs</LastGenOutput>
<Generator>PublicResXFileCodeGenerator</Generator>
</EmbeddedResource>
</ItemGroup>
</Project>

View File

@@ -0,0 +1,48 @@
using System.Drawing;
using System.Text;
using System.Security.Cryptography;
#if NETFRAMEWORK
using System;
#endif
namespace EnvelopeGenerator.Domain
{
public static class Helpers
{
public static Color ToColor(this Constants.ColorType pColorType)
{
switch (pColorType)
{
case Constants.ColorType.ReceiverColor1:
return ColorTranslator.FromHtml("#22c55e");
case Constants.ColorType.ReceiverColor2:
return ColorTranslator.FromHtml("#3b82f6");
case Constants.ColorType.ReceiverColor3:
return ColorTranslator.FromHtml("#8b5cf6");
case Constants.ColorType.ReceiverColor4:
return ColorTranslator.FromHtml("#f59e0b");
case Constants.ColorType.ReceiverColor5:
return ColorTranslator.FromHtml("#ef4444");
case Constants.ColorType.ReceiverColor6:
return ColorTranslator.FromHtml("#14b8a6");
case Constants.ColorType.ReceiverColor7:
return ColorTranslator.FromHtml("#d946ef");
case Constants.ColorType.ReceiverColor8:
return ColorTranslator.FromHtml("#06b6d4");
case Constants.ColorType.ReceiverColor9:
return ColorTranslator.FromHtml("#10b981");
case Constants.ColorType.ReceiverColor10:
return ColorTranslator.FromHtml("#84cc16");
default:
return Color.Empty;
}
}
public static string GetChecksum(this string pStringToCheck)
{
byte[] bytes = Encoding.UTF8.GetBytes(pStringToCheck);
byte[] pChecksum = SHA256.Create().ComputeHash(bytes);
return BitConverter.ToString(pChecksum).Replace("-", "").ToLowerInvariant();
}
}
}

View File

@@ -0,0 +1,72 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace My.Resources {
using System;
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
public class Email {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Email() {
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("EnvelopeGenerator.Domain.Resources.Email", typeof(Email).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
/// <summary>
/// Looks up a localized string similar to Sie haben ein Dokument zur Unterschrift erhalten: {0}.
/// </summary>
public static string Sie_haben_ein_Dokument_zur_Unterschrift_erhalten___0_ {
get {
return ResourceManager.GetString("Sie haben ein Dokument zur Unterschrift erhalten: {0}", resourceCulture);
}
}
}
}

View File

@@ -0,0 +1,123 @@
<?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>
<data name="Sie haben ein Dokument zur Unterschrift erhalten: {0}" xml:space="preserve">
<value>You received a document to sign: {0}</value>
</data>
</root>

Binary file not shown.

View File

@@ -0,0 +1,123 @@
<?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>
<data name="Sie haben ein Dokument zur Unterschrift erhalten: {0}" xml:space="preserve">
<value>Sie haben ein Dokument zur Unterschrift erhalten: {0}</value>
</data>
</root>

View File

@@ -0,0 +1,496 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace My.Resources {
using System;
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
public class Envelope {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Envelope() {
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("EnvelopeGenerator.Domain.Resources.Envelope", typeof(Envelope).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
/// <summary>
/// Looks up a localized string similar to Bitte wählen Sie die PDF-Dokumente die Sie verketten möchten:.
/// </summary>
public static string Dialog_Concat_PDF {
get {
return ResourceManager.GetString("Dialog Concat PDF", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wollen Sie diesen Umschlag wirklich zurückrufen/löschen?.
/// </summary>
public static string Do_you_really_want_to_delete_this_envelope {
get {
return ResourceManager.GetString("Do you really want to delete this envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wollen Sie dieses Dokument wirklich entfernen?.
/// </summary>
public static string Do_you_really_want_to_remove_this_document {
get {
return ResourceManager.GetString("Do you really want to remove this document", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wollen Sie den ausgewählten Empfänger löschen?.
/// </summary>
public static string Do_you_want_to_delete_the_selected_recipient {
get {
return ResourceManager.GetString("Do you want to delete the selected recipient", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wollen Sie die Signatur löschen?.
/// </summary>
public static string Do_you_want_to_delete_the_signature {
get {
return ResourceManager.GetString("Do you want to delete the signature", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wollen Sie den Signaturprozess nun starten?.
/// </summary>
public static string Do_you_want_to_start_the_signature_process_now {
get {
return ResourceManager.GetString("Do you want to start the signature process now", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Das Dokument konnte nicht geöffnet werden!.
/// </summary>
public static string Document_could_not_be_opened {
get {
return ResourceManager.GetString("Document could not be opened", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Dokument konnte nicht gespeichert werden!.
/// </summary>
public static string Document_Could_Not_Be_Saved {
get {
return ResourceManager.GetString("Document Could Not Be Saved", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Umschlag an Empfänger {0} weitergeleitet..
/// </summary>
public static string Document_forwarded {
get {
return ResourceManager.GetString("Document forwarded", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Aktuell ist per Drag and Drop nur eine PDF-Datei erlaubt..
/// </summary>
public static string Drop_only_one_file {
get {
return ResourceManager.GetString("Drop only one file", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Bearbeite Umschlag.
/// </summary>
public static string Edit_Envelope {
get {
return ResourceManager.GetString("Edit Envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Signatur-Elemente konnten nicht geladen werden!.
/// </summary>
public static string Elements_could_not_be_loaded {
get {
return ResourceManager.GetString("Elements could not be loaded", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Signatur-Elemente konnten nicht gespeichert werden!.
/// </summary>
public static string Elements_could_not_be_saved {
get {
return ResourceManager.GetString("Elements could not be saved", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Der Umschlag wurde bereits versendet!.
/// </summary>
public static string Envelope_already_sent {
get {
return ResourceManager.GetString("Envelope already sent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Umschlag konnte nicht gesendet werden!.
/// </summary>
public static string Envelope_could_not_be_sent {
get {
return ResourceManager.GetString("Envelope could not be sent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Umschlag-Editor.
/// </summary>
public static string Envelope_Editor {
get {
return ResourceManager.GetString("Envelope-Editor", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Die Einladungen zum Signieren wurden zum Versand eingereiht..
/// </summary>
public static string Envelope_Invitations_Sent {
get {
return ResourceManager.GetString("Envelope Invitations Sent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Übersicht.
/// </summary>
public static string Envelope_Overview {
get {
return ResourceManager.GetString("Envelope Overview", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Die Einladungen wurden erfolgreich zum Versand bereitgestellt..
/// </summary>
public static string Envelope_successfully_sent {
get {
return ResourceManager.GetString("Envelope successfully sent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Die Email-Adresse [ @Mail ] konnte nicht validiert werden!.
/// </summary>
public static string Error_email_Validation {
get {
return ResourceManager.GetString("Error email Validation", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to The mobile phone number [@PhoneNr] could not be validated.
///Pattern: +491234567890.
/// </summary>
public static string Error_phone_Validation {
get {
return ResourceManager.GetString("Error phone Validation", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehler beim Senden des Umschlags:.
/// </summary>
public static string Error_sending_the_envelope {
get {
return ResourceManager.GetString("Error sending the envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehler beim Speichern des Umschlags!.
/// </summary>
public static string Error_when_saving_the_envelope {
get {
return ResourceManager.GetString("Error when saving the envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehler beim Speichern der Empfänger!.
/// </summary>
public static string Error_when_saving_the_recipients {
get {
return ResourceManager.GetString("Error when saving the recipients", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehler bei der Validierung des Umschlags:.
/// </summary>
public static string Error_when_validating_the_envelope {
get {
return ResourceManager.GetString("Error when validating the envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehler beim Speichern des Umschlags: .
/// </summary>
public static string Errors_when_saving_the_envelope {
get {
return ResourceManager.GetString("Errors when saving the envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Mindestens ein Empfänger hat keine Anrede oder keine Email Adresse..
/// </summary>
public static string Incomplete_Receivers {
get {
return ResourceManager.GetString("Incomplete Receivers", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Empfänger {0} hat keine gültige Email Addresse..
/// </summary>
public static string Invalid_Email_Address {
get {
return ResourceManager.GetString("Invalid Email Address", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Die Einladung an [@Mail] wurde nochmal versendet!.
/// </summary>
public static string Invitation_successfully_resend {
get {
return ResourceManager.GetString("Invitation successfully resend", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehlendes Dokument.
/// </summary>
public static string Missing_Documents {
get {
return ResourceManager.GetString("Missing Documents", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Es muss mindestens ein Signaturfeld gesetzt werden..
/// </summary>
public static string Missing_Elements {
get {
return ResourceManager.GetString("Missing Elements", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Für den Empfänger {0} gibt es noch kein Signaturfeld..
/// </summary>
public static string Missing_Elements_for_Receiver {
get {
return ResourceManager.GetString("Missing Elements for Receiver", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehlende Nachricht.
/// </summary>
public static string Missing_Message {
get {
return ResourceManager.GetString("Missing Message", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehlende Empfänger.
/// </summary>
public static string Missing_Receivers {
get {
return ResourceManager.GetString("Missing Receivers", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to .
/// </summary>
public static string ModificationOriginFile_FormFields {
get {
return ResourceManager.GetString("ModificationOriginFile_FormFields", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Neuer Umschlag.
/// </summary>
public static string New_Envelope {
get {
return ResourceManager.GetString("New Envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Es ist nur eine Datei zulässig!.
/// </summary>
public static string Only_one_file_is_allowed {
get {
return ResourceManager.GetString("Only one file is allowed", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Bitte lesen und unterzeichnen Sie dieses Dokument..
/// </summary>
public static string Please_read_and_sign_this_document {
get {
return ResourceManager.GetString("Please read and sign this document", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Bitte wählen Sie einen Empfänger aus dem Reiter Empfänger aus..
/// </summary>
public static string Please_select_a_recipient_from_the_Recipients_tab {
get {
return ResourceManager.GetString("Please select a recipient from the Recipients tab", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Empfänger konnte nicht gelöscht werden!.
/// </summary>
public static string Recipient_could_not_be_deleted {
get {
return ResourceManager.GetString("Recipient could not be deleted", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Soll der Umschlag gespeichert werden?.
/// </summary>
public static string Should_The_Envelope_Be_Saved {
get {
return ResourceManager.GetString("Should The Envelope Be Saved", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Platzhalter Signatur.
/// </summary>
public static string Signature {
get {
return ResourceManager.GetString("Signature", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Signatur-Editor.
/// </summary>
public static string Signature_Editor {
get {
return ResourceManager.GetString("Signature Editor", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Der Umschlag konnte nicht gelöscht werden!.
/// </summary>
public static string The_envelope_could_not_be_deleted {
get {
return ResourceManager.GetString("The envelope could not be deleted", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Der Umschlag enthält keine Dokumente.
/// </summary>
public static string The_envelope_does_not_contain_any_documents {
get {
return ResourceManager.GetString("The envelope does not contain any documents", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Es gibt für diesen Empfänger bereits Elemente. Wollen Sie den Empfänger trotzdem löschen?.
/// </summary>
public static string There_are_already_elements_for_this_recipient {
get {
return ResourceManager.GetString("There are already elements for this recipient", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Es sind ungespeicherte Änderungen vorhanden. Wollen Sie diese Speichern?.
/// </summary>
public static string There_are_unsaved_changes {
get {
return ResourceManager.GetString("There are unsaved changes", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Sie haben ein Dokument zum signieren erhalten:.
/// </summary>
public static string You_received_a_document_to_sign {
get {
return ResourceManager.GetString("You received a document to sign", resourceCulture);
}
}
}
}

View File

@@ -0,0 +1,495 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Envelope {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Envelope() {
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Envelope", typeof(Envelope).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
/// <summary>
/// Looks up a localized string similar to Bitte wählen Sie die PDF-Dokumente die Sie verketten möchten:.
/// </summary>
internal static string Dialog_Concat_PDF {
get {
return ResourceManager.GetString("Dialog Concat PDF", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wollen Sie diesen Umschlag wirklich zurückrufen/löschen?.
/// </summary>
internal static string Do_you_really_want_to_delete_this_envelope {
get {
return ResourceManager.GetString("Do you really want to delete this envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wollen Sie dieses Dokument wirklich entfernen?.
/// </summary>
internal static string Do_you_really_want_to_remove_this_document {
get {
return ResourceManager.GetString("Do you really want to remove this document", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wollen Sie den ausgewählten Empfänger löschen?.
/// </summary>
internal static string Do_you_want_to_delete_the_selected_recipient {
get {
return ResourceManager.GetString("Do you want to delete the selected recipient", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wollen Sie die Signatur löschen?.
/// </summary>
internal static string Do_you_want_to_delete_the_signature {
get {
return ResourceManager.GetString("Do you want to delete the signature", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wollen Sie den Signaturprozess nun starten?.
/// </summary>
internal static string Do_you_want_to_start_the_signature_process_now {
get {
return ResourceManager.GetString("Do you want to start the signature process now", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Das Dokument konnte nicht geöffnet werden!.
/// </summary>
internal static string Document_could_not_be_opened {
get {
return ResourceManager.GetString("Document could not be opened", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Dokument konnte nicht gespeichert werden!.
/// </summary>
internal static string Document_Could_Not_Be_Saved {
get {
return ResourceManager.GetString("Document Could Not Be Saved", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Umschlag an Empfänger {0} weitergeleitet..
/// </summary>
internal static string Document_forwarded {
get {
return ResourceManager.GetString("Document forwarded", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Aktuell ist per Drag and Drop nur eine PDF-Datei erlaubt..
/// </summary>
internal static string Drop_only_one_file {
get {
return ResourceManager.GetString("Drop only one file", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Bearbeite Umschlag.
/// </summary>
internal static string Edit_Envelope {
get {
return ResourceManager.GetString("Edit Envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Signatur-Elemente konnten nicht geladen werden!.
/// </summary>
internal static string Elements_could_not_be_loaded {
get {
return ResourceManager.GetString("Elements could not be loaded", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Signatur-Elemente konnten nicht gespeichert werden!.
/// </summary>
internal static string Elements_could_not_be_saved {
get {
return ResourceManager.GetString("Elements could not be saved", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Der Umschlag wurde bereits versendet!.
/// </summary>
internal static string Envelope_already_sent {
get {
return ResourceManager.GetString("Envelope already sent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Umschlag konnte nicht gesendet werden!.
/// </summary>
internal static string Envelope_could_not_be_sent {
get {
return ResourceManager.GetString("Envelope could not be sent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Umschlag-Editor.
/// </summary>
internal static string Envelope_Editor {
get {
return ResourceManager.GetString("Envelope-Editor", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Die Einladungen zum Signieren wurden zum Versand eingereiht..
/// </summary>
internal static string Envelope_Invitations_Sent {
get {
return ResourceManager.GetString("Envelope Invitations Sent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Übersicht.
/// </summary>
internal static string Envelope_Overview {
get {
return ResourceManager.GetString("Envelope Overview", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Die Einladungen wurden erfolgreich zum Versand bereitgestellt..
/// </summary>
internal static string Envelope_successfully_sent {
get {
return ResourceManager.GetString("Envelope successfully sent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Die Email-Adresse [ @Mail ] konnte nicht validiert werden!.
/// </summary>
internal static string Error_email_Validation {
get {
return ResourceManager.GetString("Error email Validation", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to The mobile phone number [@PhoneNr] could not be validated.
///Pattern: +491234567890.
/// </summary>
internal static string Error_phone_Validation {
get {
return ResourceManager.GetString("Error phone Validation", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehler beim Senden des Umschlags:.
/// </summary>
internal static string Error_sending_the_envelope {
get {
return ResourceManager.GetString("Error sending the envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehler beim Speichern des Umschlags!.
/// </summary>
internal static string Error_when_saving_the_envelope {
get {
return ResourceManager.GetString("Error when saving the envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehler beim Speichern der Empfänger!.
/// </summary>
internal static string Error_when_saving_the_recipients {
get {
return ResourceManager.GetString("Error when saving the recipients", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehler bei der Validierung des Umschlags:.
/// </summary>
internal static string Error_when_validating_the_envelope {
get {
return ResourceManager.GetString("Error when validating the envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehler beim Speichern des Umschlags: .
/// </summary>
internal static string Errors_when_saving_the_envelope {
get {
return ResourceManager.GetString("Errors when saving the envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Mindestens ein Empfänger hat keine Anrede oder keine Email Adresse..
/// </summary>
internal static string Incomplete_Receivers {
get {
return ResourceManager.GetString("Incomplete Receivers", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Empfänger {0} hat keine gültige Email Addresse..
/// </summary>
internal static string Invalid_Email_Address {
get {
return ResourceManager.GetString("Invalid Email Address", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Die Einladung an [@Mail] wurde nochmal versendet!.
/// </summary>
internal static string Invitation_successfully_resend {
get {
return ResourceManager.GetString("Invitation successfully resend", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehlendes Dokument.
/// </summary>
internal static string Missing_Documents {
get {
return ResourceManager.GetString("Missing Documents", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Es muss mindestens ein Signaturfeld gesetzt werden..
/// </summary>
internal static string Missing_Elements {
get {
return ResourceManager.GetString("Missing Elements", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Für den Empfänger {0} gibt es noch kein Signaturfeld..
/// </summary>
internal static string Missing_Elements_for_Receiver {
get {
return ResourceManager.GetString("Missing Elements for Receiver", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehlende Nachricht.
/// </summary>
internal static string Missing_Message {
get {
return ResourceManager.GetString("Missing Message", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fehlende Empfänger.
/// </summary>
internal static string Missing_Receivers {
get {
return ResourceManager.GetString("Missing Receivers", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to .
/// </summary>
internal static string ModificationOriginFile_FormFields {
get {
return ResourceManager.GetString("ModificationOriginFile_FormFields", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Neuer Umschlag.
/// </summary>
internal static string New_Envelope {
get {
return ResourceManager.GetString("New Envelope", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Es ist nur eine Datei zulässig!.
/// </summary>
internal static string Only_one_file_is_allowed {
get {
return ResourceManager.GetString("Only one file is allowed", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Bitte lesen und unterzeichnen Sie dieses Dokument..
/// </summary>
internal static string Please_read_and_sign_this_document {
get {
return ResourceManager.GetString("Please read and sign this document", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Bitte wählen Sie einen Empfänger aus dem Reiter Empfänger aus..
/// </summary>
internal static string Please_select_a_recipient_from_the_Recipients_tab {
get {
return ResourceManager.GetString("Please select a recipient from the Recipients tab", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Empfänger konnte nicht gelöscht werden!.
/// </summary>
internal static string Recipient_could_not_be_deleted {
get {
return ResourceManager.GetString("Recipient could not be deleted", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Soll der Umschlag gespeichert werden?.
/// </summary>
internal static string Should_The_Envelope_Be_Saved {
get {
return ResourceManager.GetString("Should The Envelope Be Saved", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Platzhalter Signatur.
/// </summary>
internal static string Signature {
get {
return ResourceManager.GetString("Signature", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Signatur-Editor.
/// </summary>
internal static string Signature_Editor {
get {
return ResourceManager.GetString("Signature Editor", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Der Umschlag konnte nicht gelöscht werden!.
/// </summary>
internal static string The_envelope_could_not_be_deleted {
get {
return ResourceManager.GetString("The envelope could not be deleted", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Der Umschlag enthält keine Dokumente.
/// </summary>
internal static string The_envelope_does_not_contain_any_documents {
get {
return ResourceManager.GetString("The envelope does not contain any documents", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Es gibt für diesen Empfänger bereits Elemente. Wollen Sie den Empfänger trotzdem löschen?.
/// </summary>
internal static string There_are_already_elements_for_this_recipient {
get {
return ResourceManager.GetString("There are already elements for this recipient", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Es sind ungespeicherte Änderungen vorhanden. Wollen Sie diese Speichern?.
/// </summary>
internal static string There_are_unsaved_changes {
get {
return ResourceManager.GetString("There are unsaved changes", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Sie haben ein Dokument zum signieren erhalten:.
/// </summary>
internal static string You_received_a_document_to_sign {
get {
return ResourceManager.GetString("You received a document to sign", resourceCulture);
}
}
}

View File

@@ -0,0 +1,264 @@
<?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>
<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">
<value>Do you really want to withdraw/delete this envelope?</value>
</data>
<data name="Do you really want to remove this document" xml:space="preserve">
<value>Do you really want to remove this document?</value>
</data>
<data name="Do you want to delete the selected recipient" xml:space="preserve">
<value>Do you want to delete the selected recipient?</value>
</data>
<data name="Do you want to delete the signature" xml:space="preserve">
<value>Do you want to delete the signature?</value>
</data>
<data name="Do you want to start the signature process now" xml:space="preserve">
<value>Do you want to start the signature process now?</value>
</data>
<data name="Document could not be opened" xml:space="preserve">
<value>The Document could not be opened!</value>
</data>
<data name="Document Could Not Be Saved" xml:space="preserve">
<value>Document could not be saved!</value>
</data>
<data name="Document forwarded" xml:space="preserve">
<value>Document forwarded to receiver: {0}</value>
</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">
<value>Edit Envelope</value>
</data>
<data name="Elements could not be loaded" xml:space="preserve">
<value>Elements could not be loaded!</value>
</data>
<data name="Elements could not be saved" xml:space="preserve">
<value>Elements could not be saved!</value>
</data>
<data name="Envelope already sent" xml:space="preserve">
<value>The envelope has already been sent!</value>
</data>
<data name="Envelope could not be sent" xml:space="preserve">
<value>Envelope could not be sent!</value>
</data>
<data name="Envelope Invitations Sent" xml:space="preserve">
<value>The invitations have been scheduled for dispatch.s</value>
</data>
<data name="Envelope Overview" xml:space="preserve">
<value>Overview</value>
</data>
<data name="Envelope successfully sent" xml:space="preserve">
<value>The invitations were successfully prepared for dispatch.</value>
</data>
<data name="Envelope-Editor" xml:space="preserve">
<value>Envelope-Editor</value>
</data>
<data name="Error email Validation" xml:space="preserve">
<value>The email [ @Mail ] could not be varified!</value>
</data>
<data name="Error phone Validation" xml:space="preserve">
<value />
</data>
<data name="Error sending the envelope" xml:space="preserve">
<value>Error sending the envelope:</value>
</data>
<data name="Error when saving the envelope" xml:space="preserve">
<value>Error when saving the envelope!</value>
</data>
<data name="Error when saving the recipients" xml:space="preserve">
<value>Error when saving the recipients!</value>
</data>
<data name="Error when validating the envelope" xml:space="preserve">
<value>Error when validating the envelope:</value>
</data>
<data name="Errors when saving the envelope" xml:space="preserve">
<value>Errors when saving the envelope</value>
</data>
<data name="Incomplete Receivers" xml:space="preserve">
<value>At least one receiver does not have a name or an email address.</value>
</data>
<data name="Invalid Email Address" xml:space="preserve">
<value>Receiver {0} has an invalid Email Address.</value>
</data>
<data name="Invitation successfully resend" xml:space="preserve">
<value>Invitation to [@Mail] has been send once again!</value>
</data>
<data name="Missing Documents" xml:space="preserve">
<value>Missing Documents</value>
</data>
<data name="Missing Elements" xml:space="preserve">
<value>Missing at least one Element.</value>
</data>
<data name="Missing Elements for Receiver" xml:space="preserve">
<value>For Receiver {0} you need at least one Element.</value>
</data>
<data name="Missing Message" xml:space="preserve">
<value>Missing Message</value>
</data>
<data name="Missing Receivers" xml:space="preserve">
<value>Missing Receivers</value>
</data>
<data name="New Envelope" xml:space="preserve">
<value>New Envelope</value>
</data>
<data name="Only one file is allowed" xml:space="preserve">
<value>Only one file is allowed!</value>
</data>
<data name="Please read and sign this document" xml:space="preserve">
<value>Please read and sign this document.</value>
</data>
<data name="Please select a recipient from the Recipients tab" xml:space="preserve">
<value>Please select a recipient from the Recipients tab.</value>
</data>
<data name="Recipient could not be deleted" xml:space="preserve">
<value>Recipient could not be deleted!</value>
</data>
<data name="Should The Envelope Be Saved" xml:space="preserve">
<value>Should the envelope be saved?</value>
</data>
<data name="Signature" xml:space="preserve">
<value>Placeholder signature</value>
</data>
<data name="Signature Editor" xml:space="preserve">
<value>Signature-Editor</value>
</data>
<data name="The envelope could not be deleted" xml:space="preserve">
<value>The envelope could not be deleted!</value>
</data>
<data name="The envelope does not contain any documents" xml:space="preserve">
<value>The envelope does not contain any documents.</value>
</data>
<data name="There are already elements for this recipient" xml:space="preserve">
<value>There are already elements for this recipient. Do you still want to delete the recipient?</value>
</data>
<data name="There are unsaved changes." xml:space="preserve">
<value>There are unsaved changes. Do you want to save them?</value>
</data>
<data name="You received a document to sign" xml:space="preserve">
<value>You received a document to sign:</value>
</data>
</root>

Binary file not shown.

View File

@@ -0,0 +1,265 @@
<?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>
<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">
<value>Wollen Sie diesen Umschlag wirklich zurückrufen/löschen?</value>
</data>
<data name="Do you really want to remove this document" xml:space="preserve">
<value>Wollen Sie dieses Dokument wirklich entfernen?</value>
</data>
<data name="Do you want to delete the selected recipient" xml:space="preserve">
<value>Wollen Sie den ausgewählten Empfänger löschen?</value>
</data>
<data name="Do you want to delete the signature" xml:space="preserve">
<value>Wollen Sie die Signatur löschen?</value>
</data>
<data name="Do you want to start the signature process now" xml:space="preserve">
<value>Wollen Sie den Signaturprozess nun starten?</value>
</data>
<data name="Document could not be opened" xml:space="preserve">
<value>Das Dokument konnte nicht geöffnet werden!</value>
</data>
<data name="Document Could Not Be Saved" xml:space="preserve">
<value>Dokument konnte nicht gespeichert werden!</value>
</data>
<data name="Document forwarded" xml:space="preserve">
<value>Umschlag an Empfänger {0} weitergeleitet.</value>
</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">
<value>Bearbeite Umschlag</value>
</data>
<data name="Elements could not be loaded" xml:space="preserve">
<value>Signatur-Elemente konnten nicht geladen werden!</value>
</data>
<data name="Elements could not be saved" xml:space="preserve">
<value>Signatur-Elemente konnten nicht gespeichert werden!</value>
</data>
<data name="Envelope already sent" xml:space="preserve">
<value>Der Umschlag wurde bereits versendet!</value>
</data>
<data name="Envelope could not be sent" xml:space="preserve">
<value>Umschlag konnte nicht gesendet werden!</value>
</data>
<data name="Envelope Invitations Sent" xml:space="preserve">
<value>Die Einladungen zum Signieren wurden zum Versand eingereiht.</value>
</data>
<data name="Envelope Overview" xml:space="preserve">
<value>Übersicht</value>
</data>
<data name="Envelope successfully sent" xml:space="preserve">
<value>Die Einladungen wurden erfolgreich zum Versand bereitgestellt.</value>
</data>
<data name="Envelope-Editor" xml:space="preserve">
<value>Umschlag-Editor</value>
</data>
<data name="Error email Validation" xml:space="preserve">
<value>Die Email-Adresse [ @Mail ] konnte nicht validiert werden!</value>
</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">
<value>Fehler beim Senden des Umschlags:</value>
</data>
<data name="Error when saving the envelope" xml:space="preserve">
<value>Fehler beim Speichern des Umschlags!</value>
</data>
<data name="Error when saving the recipients" xml:space="preserve">
<value>Fehler beim Speichern der Empfänger!</value>
</data>
<data name="Error when validating the envelope" xml:space="preserve">
<value>Fehler bei der Validierung des Umschlags:</value>
</data>
<data name="Errors when saving the envelope" xml:space="preserve">
<value>Fehler beim Speichern des Umschlags: </value>
</data>
<data name="Incomplete Receivers" xml:space="preserve">
<value>Mindestens ein Empfänger hat keine Anrede oder keine Email Adresse.</value>
</data>
<data name="Invalid Email Address" xml:space="preserve">
<value>Empfänger {0} hat keine gültige Email Addresse.</value>
</data>
<data name="Invitation successfully resend" xml:space="preserve">
<value>Die Einladung an [@Mail] wurde nochmal versendet!</value>
</data>
<data name="Missing Documents" xml:space="preserve">
<value>Fehlendes Dokument</value>
</data>
<data name="Missing Elements" xml:space="preserve">
<value>Es muss mindestens ein Signaturfeld gesetzt werden.</value>
</data>
<data name="Missing Elements for Receiver" xml:space="preserve">
<value>Für den Empfänger {0} gibt es noch kein Signaturfeld.</value>
</data>
<data name="Missing Message" xml:space="preserve">
<value>Fehlende Nachricht</value>
</data>
<data name="Missing Receivers" xml:space="preserve">
<value>Fehlende Empfänger</value>
</data>
<data name="ModificationOriginFile_FormFields" xml:space="preserve">
<value />
</data>
<data name="New Envelope" xml:space="preserve">
<value>Neuer Umschlag</value>
</data>
<data name="Only one file is allowed" xml:space="preserve">
<value>Es ist nur eine Datei zulässig!</value>
</data>
<data name="Please read and sign this document" xml:space="preserve">
<value>Bitte lesen und unterzeichnen Sie dieses Dokument.</value>
</data>
<data name="Please select a recipient from the Recipients tab" xml:space="preserve">
<value>Bitte wählen Sie einen Empfänger aus dem Reiter Empfänger aus.</value>
</data>
<data name="Recipient could not be deleted" xml:space="preserve">
<value>Empfänger konnte nicht gelöscht werden!</value>
</data>
<data name="Should The Envelope Be Saved" xml:space="preserve">
<value>Soll der Umschlag gespeichert werden?</value>
</data>
<data name="Signature" xml:space="preserve">
<value>Platzhalter Signatur</value>
</data>
<data name="Signature Editor" xml:space="preserve">
<value>Signatur-Editor</value>
</data>
<data name="The envelope could not be deleted" xml:space="preserve">
<value>Der Umschlag konnte nicht gelöscht werden!</value>
</data>
<data name="The envelope does not contain any documents" xml:space="preserve">
<value>Der Umschlag enthält keine Dokumente</value>
</data>
<data name="There are already elements for this recipient" xml:space="preserve">
<value>Es gibt für diesen Empfänger bereits Elemente. Wollen Sie den Empfänger trotzdem löschen?</value>
</data>
<data name="There are unsaved changes" xml:space="preserve">
<value>Es sind ungespeicherte Änderungen vorhanden. Wollen Sie diese Speichern?</value>
</data>
<data name="You received a document to sign" xml:space="preserve">
<value>Sie haben ein Dokument zum signieren erhalten:</value>
</data>
</root>

View File

@@ -0,0 +1,450 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace My.Resources {
using System;
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
public class Model {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Model() {
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("EnvelopeGenerator.Domain.Resources.Model", typeof(Model).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
/// <summary>
/// Looks up a localized string similar to Zugriffscode korrekt eingegeben.
/// </summary>
public static string AccessCodeCorrect {
get {
return ResourceManager.GetString("AccessCodeCorrect", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Zugriffscode falsch eingegeben.
/// </summary>
public static string AccessCodeIncorrect {
get {
return ResourceManager.GetString("AccessCodeIncorrect", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Zugriffscode angefordert.
/// </summary>
public static string AccessCodeRequested {
get {
return ResourceManager.GetString("AccessCodeRequested", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Fortgeschrittene Elektronische Signatur.
/// </summary>
public static string AdvancedElectronicSignature {
get {
return ResourceManager.GetString("AdvancedElectronicSignature", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Abgeschlossen.
/// </summary>
public static string Completed {
get {
return ResourceManager.GetString("Completed", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Vollständig Signiert.
/// </summary>
public static string CompletelySigned {
get {
return ResourceManager.GetString("CompletelySigned", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Vertrag.
/// </summary>
public static string Contract {
get {
return ResourceManager.GetString("Contract", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Erstellt.
/// </summary>
public static string Created {
get {
return ResourceManager.GetString("Created", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Dokument Rotation geändert.
/// </summary>
public static string DocumentMod_Rotation {
get {
return ResourceManager.GetString("DocumentMod_Rotation", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Dokument geöffnet.
/// </summary>
public static string DocumentOpened {
get {
return ResourceManager.GetString("DocumentOpened", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Unterzeichnung abgelehnt.
/// </summary>
public static string DocumentRejected {
get {
return ResourceManager.GetString("DocumentRejected", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Dokument unterzeichnet.
/// </summary>
public static string DocumentSigned {
get {
return ResourceManager.GetString("DocumentSigned", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Entwurf.
/// </summary>
public static string Draft {
get {
return ResourceManager.GetString("Draft", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Archiviert.
/// </summary>
public static string EnvelopeArchived {
get {
return ResourceManager.GetString("EnvelopeArchived", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Vollständig signiert.
/// </summary>
public static string EnvelopeCompletelySigned {
get {
return ResourceManager.GetString("EnvelopeCompletelySigned", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Umschlag Erstellt.
/// </summary>
public static string EnvelopeCreated {
get {
return ResourceManager.GetString("EnvelopeCreated", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Umschlag Gelöscht.
/// </summary>
public static string EnvelopeDeleted {
get {
return ResourceManager.GetString("EnvelopeDeleted", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Teil-Signiert.
/// </summary>
public static string EnvelopePartlySigned {
get {
return ResourceManager.GetString("EnvelopePartlySigned", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Umschlag in Queue.
/// </summary>
public static string EnvelopeQueued {
get {
return ResourceManager.GetString("EnvelopeQueued", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Umschlag abgelehnt.
/// </summary>
public static string EnvelopeRejected {
get {
return ResourceManager.GetString("EnvelopeRejected", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Signierungszertifikat erstellt.
/// </summary>
public static string EnvelopeReportCreated {
get {
return ResourceManager.GetString("EnvelopeReportCreated", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Gespeichert.
/// </summary>
public static string EnvelopeSaved {
get {
return ResourceManager.GetString("EnvelopeSaved", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Gesendet.
/// </summary>
public static string EnvelopeSent {
get {
return ResourceManager.GetString("EnvelopeSent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Umschlag zurückgezogen.
/// </summary>
public static string EnvelopeWithdrawn {
get {
return ResourceManager.GetString("EnvelopeWithdrawn", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Zugriffscode versendet.
/// </summary>
public static string MessageAccessCodeSent {
get {
return ResourceManager.GetString("MessageAccessCodeSent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Abschlussemail versendet.
/// </summary>
public static string MessageCompletionSent {
get {
return ResourceManager.GetString("MessageCompletionSent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Signaturbestätigung versendet.
/// </summary>
public static string MessageConfirmationSent {
get {
return ResourceManager.GetString("MessageConfirmationSent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Löschinformation versendet.
/// </summary>
public static string MessageDeletionSent {
get {
return ResourceManager.GetString("MessageDeletionSent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Dokumentenlink versendet.
/// </summary>
public static string MessageInvitationSent {
get {
return ResourceManager.GetString("MessageInvitationSent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Nein.
/// </summary>
public static string No {
get {
return ResourceManager.GetString("No", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Teil-Signiert.
/// </summary>
public static string PartlySigned {
get {
return ResourceManager.GetString("PartlySigned", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Qualifizierte Signatur.
/// </summary>
public static string QualifiedSignature {
get {
return ResourceManager.GetString("QualifiedSignature", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Arbeitsanweisung.
/// </summary>
public static string ReadAndSign {
get {
return ResourceManager.GetString("ReadAndSign", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Wollen Sie die 2-Faktor Definition für diesen Empfänger zurücksetzen. Der Empfänger muss sich dann neu identifizieren!.
/// </summary>
public static string ResetTOTPUser {
get {
return ResourceManager.GetString("ResetTOTPUser", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Gespeichert.
/// </summary>
public static string Saved {
get {
return ResourceManager.GetString("Saved", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Gesendet.
/// </summary>
public static string Sent {
get {
return ResourceManager.GetString("Sent", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Signatur.
/// </summary>
public static string Signature {
get {
return ResourceManager.GetString("Signature", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Signatur bestätigt.
/// </summary>
public static string SignatureConfirmed {
get {
return ResourceManager.GetString("SignatureConfirmed", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Signiert.
/// </summary>
public static string Signed {
get {
return ResourceManager.GetString("Signed", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Erfolgreich! Dialog wird geschlossen..
/// </summary>
public static string Success_FormClose {
get {
return ResourceManager.GetString("Success_FormClose", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Unsigniert.
/// </summary>
public static string Unsigned {
get {
return ResourceManager.GetString("Unsigned", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Ja.
/// </summary>
public static string Yes {
get {
return ResourceManager.GetString("Yes", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Ja, mit Anhang.
/// </summary>
public static string YesWithAttachment {
get {
return ResourceManager.GetString("YesWithAttachment", resourceCulture);
}
}
}
}

View File

@@ -0,0 +1,243 @@
<?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>
<data name="AccessCodeCorrect" xml:space="preserve">
<value>Accesscode entered correctly</value>
</data>
<data name="AccessCodeIncorrect" xml:space="preserve">
<value>Accesscode entered incorrectly</value>
</data>
<data name="AccessCodeRequested" xml:space="preserve">
<value>Accesscode requested</value>
</data>
<data name="AdvancedElectronicSignature" xml:space="preserve">
<value>Advanced electronic signature</value>
</data>
<data name="Completed" xml:space="preserve">
<value>Completed</value>
</data>
<data name="Contract" xml:space="preserve">
<value>Contract</value>
</data>
<data name="Created" xml:space="preserve">
<value>Created</value>
</data>
<data name="DocumentMod_Rotation" xml:space="preserve">
<value>Document rotation adapted</value>
</data>
<data name="DocumentOpened" xml:space="preserve">
<value>Document opened</value>
</data>
<data name="DocumentRejected" xml:space="preserve">
<value>Signing rejected</value>
</data>
<data name="DocumentSigned" xml:space="preserve">
<value>Document signed</value>
</data>
<data name="Draft" xml:space="preserve">
<value>Draft</value>
</data>
<data name="EnvelopeArchived" xml:space="preserve">
<value>Archived</value>
</data>
<data name="EnvelopeCompletelySigned" xml:space="preserve">
<value>Completely signed</value>
</data>
<data name="EnvelopeCreated" xml:space="preserve">
<value>Envelope Created</value>
</data>
<data name="EnvelopeDeleted" xml:space="preserve">
<value>Envelope Deleted</value>
</data>
<data name="EnvelopePartlySigned" xml:space="preserve">
<value>Partly signed</value>
</data>
<data name="EnvelopeQueued" xml:space="preserve">
<value>Envelope Queued</value>
</data>
<data name="EnvelopeRejected" xml:space="preserve">
<value>Envelope Rejected</value>
</data>
<data name="EnvelopeReportCreated" xml:space="preserve">
<value>Signature certificate created</value>
</data>
<data name="EnvelopeSaved" xml:space="preserve">
<value>Saved</value>
</data>
<data name="EnvelopeSent" xml:space="preserve">
<value>Sent</value>
</data>
<data name="EnvelopeWithdrawn" xml:space="preserve">
<value>Withdrawn</value>
</data>
<data name="MessageAccessCodeSent" xml:space="preserve">
<value>Accesscode sent</value>
</data>
<data name="MessageCompletionSent" xml:space="preserve">
<value>Final email sent</value>
</data>
<data name="MessageConfirmationSent" xml:space="preserve">
<value>Confirmation Sent</value>
</data>
<data name="MessageDeletionSent" xml:space="preserve">
<value>Deletion Notice Sent</value>
</data>
<data name="MessageInvitationSent" xml:space="preserve">
<value>Invitation Sent</value>
</data>
<data name="No" xml:space="preserve">
<value>No</value>
</data>
<data name="QualifiedSignature" xml:space="preserve">
<value>Qualified Signature</value>
</data>
<data name="ReadAndSign" xml:space="preserve">
<value>Read and Sign</value>
</data>
<data name="ResetTOTPUser" xml:space="preserve">
<value>Do you want to reset the 2-factor definition for this receiver? The receiver must then identify itself again!</value>
</data>
<data name="Saved" xml:space="preserve">
<value>Saved</value>
</data>
<data name="Sent" xml:space="preserve">
<value>Sent</value>
</data>
<data name="Signature" xml:space="preserve">
<value>Signature</value>
</data>
<data name="SignatureConfirmed" xml:space="preserve">
<value>Signature confirmed</value>
</data>
<data name="Signed" xml:space="preserve">
<value>Signed</value>
</data>
<data name="Success_FormClose" xml:space="preserve">
<value>Successful! Dialog is closed.successful! Dialog is closed.</value>
</data>
<data name="Unsigned" xml:space="preserve">
<value>Unsigned</value>
</data>
<data name="Yes" xml:space="preserve">
<value>Yes</value>
</data>
<data name="YesWithAttachment" xml:space="preserve">
<value>Yes, with Attachment</value>
</data>
</root>

Binary file not shown.

View File

@@ -0,0 +1,249 @@
<?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>
<data name="AccessCodeCorrect" xml:space="preserve">
<value>Zugriffscode korrekt eingegeben</value>
</data>
<data name="AccessCodeIncorrect" xml:space="preserve">
<value>Zugriffscode falsch eingegeben</value>
</data>
<data name="AccessCodeRequested" xml:space="preserve">
<value>Zugriffscode angefordert</value>
</data>
<data name="AdvancedElectronicSignature" xml:space="preserve">
<value>Fortgeschrittene Elektronische Signatur</value>
</data>
<data name="Completed" xml:space="preserve">
<value>Abgeschlossen</value>
</data>
<data name="CompletelySigned" xml:space="preserve">
<value>Vollständig Signiert</value>
</data>
<data name="Contract" xml:space="preserve">
<value>Vertrag</value>
</data>
<data name="Created" xml:space="preserve">
<value>Erstellt</value>
</data>
<data name="DocumentMod_Rotation" xml:space="preserve">
<value>Dokument Rotation geändert</value>
</data>
<data name="DocumentOpened" xml:space="preserve">
<value>Dokument geöffnet</value>
</data>
<data name="DocumentRejected" xml:space="preserve">
<value>Unterzeichnung abgelehnt</value>
</data>
<data name="DocumentSigned" xml:space="preserve">
<value>Dokument unterzeichnet</value>
</data>
<data name="Draft" xml:space="preserve">
<value>Entwurf</value>
</data>
<data name="EnvelopeArchived" xml:space="preserve">
<value>Archiviert</value>
</data>
<data name="EnvelopeCompletelySigned" xml:space="preserve">
<value>Vollständig signiert</value>
</data>
<data name="EnvelopeCreated" xml:space="preserve">
<value>Umschlag Erstellt</value>
</data>
<data name="EnvelopeDeleted" xml:space="preserve">
<value>Umschlag Gelöscht</value>
</data>
<data name="EnvelopePartlySigned" xml:space="preserve">
<value>Teil-Signiert</value>
</data>
<data name="EnvelopeQueued" xml:space="preserve">
<value>Umschlag in Queue</value>
</data>
<data name="EnvelopeRejected" xml:space="preserve">
<value>Umschlag abgelehnt</value>
</data>
<data name="EnvelopeReportCreated" xml:space="preserve">
<value>Signierungszertifikat erstellt</value>
</data>
<data name="EnvelopeSaved" xml:space="preserve">
<value>Gespeichert</value>
</data>
<data name="EnvelopeSent" xml:space="preserve">
<value>Gesendet</value>
</data>
<data name="EnvelopeWithdrawn" xml:space="preserve">
<value>Umschlag zurückgezogen</value>
</data>
<data name="MessageAccessCodeSent" xml:space="preserve">
<value>Zugriffscode versendet</value>
</data>
<data name="MessageCompletionSent" xml:space="preserve">
<value>Abschlussemail versendet</value>
</data>
<data name="MessageConfirmationSent" xml:space="preserve">
<value>Signaturbestätigung versendet</value>
</data>
<data name="MessageDeletionSent" xml:space="preserve">
<value>Löschinformation versendet</value>
</data>
<data name="MessageInvitationSent" xml:space="preserve">
<value>Dokumentenlink versendet</value>
</data>
<data name="No" xml:space="preserve">
<value>Nein</value>
</data>
<data name="PartlySigned" xml:space="preserve">
<value>Teil-Signiert</value>
</data>
<data name="QualifiedSignature" xml:space="preserve">
<value>Qualifizierte Signatur</value>
</data>
<data name="ReadAndSign" xml:space="preserve">
<value>Arbeitsanweisung</value>
</data>
<data name="ResetTOTPUser" xml:space="preserve">
<value>Wollen Sie die 2-Faktor Definition für diesen Empfänger zurücksetzen. Der Empfänger muss sich dann neu identifizieren!</value>
</data>
<data name="Saved" xml:space="preserve">
<value>Gespeichert</value>
</data>
<data name="Sent" xml:space="preserve">
<value>Gesendet</value>
</data>
<data name="Signature" xml:space="preserve">
<value>Signatur</value>
</data>
<data name="SignatureConfirmed" xml:space="preserve">
<value>Signatur bestätigt</value>
</data>
<data name="Signed" xml:space="preserve">
<value>Signiert</value>
</data>
<data name="Success_FormClose" xml:space="preserve">
<value>Erfolgreich! Dialog wird geschlossen.</value>
</data>
<data name="Unsigned" xml:space="preserve">
<value>Unsigniert</value>
</data>
<data name="Yes" xml:space="preserve">
<value>Ja</value>
</data>
<data name="YesWithAttachment" xml:space="preserve">
<value>Ja, mit Anhang</value>
</data>
</root>

View File

@@ -42,7 +42,7 @@ Public Class EnvelopeEditorController
Public Function DocumentRotationChanged() As Boolean
Return ActionService.SetStatusDocumentRotationChanged(Envelope)
End Function
Public Function ResendReceiverInvitation(pEnvelope As Envelope, pReceiver As EnvelopeReceiver) As Boolean
Public Function ResendReceiverInvitation(pEnvelope As Envelope, pReceiver As Receiver) As Boolean
Return ActionService.ResendReceiver(pEnvelope, pReceiver)
End Function
@@ -55,7 +55,7 @@ Public Class EnvelopeEditorController
If ElementModel.OneElementPerReceiverExist(Envelope.Id) = False Then
For Each receiverItem As EnvelopeReceiver In Envelope.Receivers
For Each receiverItem As Receiver In Envelope.Receivers
If ElementModel.ElementsExist(Envelope.Id, receiverItem.Id) = False Then
oEnvelopeErrors.Add(String.Format(Resources.Envelope.Missing_Elements_for_Receiver, receiverItem.Name))
End If
@@ -89,29 +89,29 @@ Public Class EnvelopeEditorController
End If
End Function
Public Function SaveReceivers(pEnvelope As Envelope, pReceiversFromGrid As List(Of EnvelopeReceiver)) As Boolean
Dim oExistingReceivers As List(Of EnvelopeReceiver) = ReceiverModel.ListReceivers(pReceiversFromGrid).ToList()
Dim oExistingAddresses = oExistingReceivers.Select(Function(r) r.Email)
Public Function SaveReceivers(pEnvelope As Envelope, pReceiversFromGrid As List(Of Receiver)) As Boolean
Dim oExistingReceivers As List(Of Receiver) = ReceiverModel.ListReceivers(pReceiversFromGrid).ToList()
Dim oExistingAddresses = oExistingReceivers.Select(Function(r) r.EmailAddress)
Logger.Debug($"oExistingReceivers.count: {oExistingReceivers.Count}")
Logger.Debug($"oExistingAddresses.count: {oExistingAddresses.Count}")
Dim oNewReceivers = pReceiversFromGrid.Where(Function(r)
If r.Email Is Nothing Then Return False
Return Not oExistingAddresses.Contains(r.Email)
If r.EmailAddress Is Nothing Then Return False
Return Not oExistingAddresses.Contains(r.EmailAddress)
End Function).ToList()
Logger.Debug($"oNewReceivers.count: {oNewReceivers.Count}")
If CreateNewReceivers(oNewReceivers) = False Then
Return False
End If
Dim oAllReceivers As List(Of EnvelopeReceiver) = ReceiverModel.ListReceivers(pReceiversFromGrid).ToList()
Dim oAllReceivers As List(Of Receiver) = ReceiverModel.ListReceivers(pReceiversFromGrid).ToList()
pEnvelope.Receivers.Clear()
For Each oReceiver In pReceiversFromGrid
If oReceiver.Email Is Nothing Then Continue For
If oReceiver.EmailAddress Is Nothing Then Continue For
If oReceiver.Name Is Nothing Then Continue For
Dim oDbReceiver = oAllReceivers.Where(Function(r) r.Email = oReceiver.Email).SingleOrDefault()
Dim oDbReceiver = oAllReceivers.Where(Function(r) r.EmailAddress = oReceiver.EmailAddress).SingleOrDefault()
If oDbReceiver IsNot Nothing Then
oReceiver.Id = oDbReceiver.Id
oReceiver.Signature = oDbReceiver.Signature
@@ -276,7 +276,7 @@ Public Class EnvelopeEditorController
Return ReceiverModel.ListAllEnvelopeReceiverAddresses(pUserId)
End Function
Public Function CreateNewReceivers(pNewReceivers As List(Of EnvelopeReceiver)) As Boolean
Public Function CreateNewReceivers(pNewReceivers As List(Of Receiver)) As Boolean
If pNewReceivers.Count = 0 Then
Return True
End If
@@ -350,7 +350,7 @@ Public Class EnvelopeEditorController
End Try
End Function
Public Function DeleteReceiver(pReceiver As EnvelopeReceiver) As Boolean
Public Function DeleteReceiver(pReceiver As Receiver) As Boolean
Dim oConnection As SqlConnection = Database.GetConnection()
Dim oTransaction As SqlTransaction = oConnection.BeginTransaction()
@@ -381,7 +381,7 @@ Public Class EnvelopeEditorController
Return ElementModel.ElementsExist(Envelope.Id, pReceiverId)
End Function
Private Function InsertReceivers(pReceivers As List(Of EnvelopeReceiver), pTransaction As SqlTransaction) As Boolean
Private Function InsertReceivers(pReceivers As List(Of Receiver), pTransaction As SqlTransaction) As Boolean
Try
Return pReceivers.
Select(Function(r) InsertReceiver(r, pTransaction)).
@@ -404,7 +404,7 @@ Public Class EnvelopeEditorController
End Function
Private Function InsertReceiver(pReceiver As EnvelopeReceiver, pTransaction As SqlTransaction) As Boolean
Private Function InsertReceiver(pReceiver As Receiver, pTransaction As SqlTransaction) As Boolean
If pReceiver.HasId = False Then
Return ReceiverModel.Insert(pReceiver, pTransaction)
Else

View File

@@ -318,7 +318,7 @@ Partial Public Class frmEnvelopeEditor
Me.txtCreatorEmailLabel.ImageOptions.SvgImage = CType(resources.GetObject("txtCreatorEmailLabel.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.txtCreatorEmailLabel.Name = "txtCreatorEmailLabel"
Me.txtCreatorEmailLabel.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
Me.txtCreatorEmailLabel.Tag = "Absender Email: {0}"
Me.txtCreatorEmailLabel.Tag = "Absender EmailAddress: {0}"
'
'txtEnvelopeIdLabel2
'
@@ -526,7 +526,7 @@ Partial Public Class frmEnvelopeEditor
'colEmail
'
Me.colEmail.ColumnEdit = Me.RepositoryItemComboBox1
Me.colEmail.FieldName = "Email"
Me.colEmail.FieldName = "EmailAddress"
Me.colEmail.Name = "colEmail"
Me.colEmail.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.[False]
resources.ApplyResources(Me.colEmail, "colEmail")

View File

@@ -17,7 +17,7 @@ Imports EnvelopeGenerator.Domain.Constants
Partial Public Class frmEnvelopeEditor
Public Property Envelope As Envelope
Public Property Documents As New BindingList(Of EnvelopeDocument)
Public Property Receivers As New BindingList(Of EnvelopeReceiver)
Public Property Receivers As New BindingList(Of Receiver)
Private AllReceiverEmails As New List(Of String)
@@ -25,7 +25,7 @@ Partial Public Class frmEnvelopeEditor
Private Logger As Logger
Private Const COL_NAME = "Name"
Private Const COL_EMAIL = "Email"
Private Const COL_EMAIL = "EmailAddress"
Private Const COL_CODE = "AccessCode"
Private Const COL_PHONE = "PhoneNumber"
Public Property State As State
@@ -104,7 +104,7 @@ Partial Public Class frmEnvelopeEditor
Else
Controller = New EnvelopeEditorController(State, Envelope)
Documents = New BindingList(Of EnvelopeDocument)(Controller.Envelope.Documents)
Receivers = New BindingList(Of EnvelopeReceiver)(Controller.Envelope.Receivers)
Receivers = New BindingList(Of Receiver)(Controller.Envelope.Receivers)
For Each docItem As EnvelopeDocument In Documents
If Not File.Exists(docItem.Filepath) Then
@@ -306,7 +306,7 @@ Partial Public Class frmEnvelopeEditor
End If
For Each Receiver In Receivers
If Helpers.IsValidEmailAddress(Receiver.Email) = False Then
If Helpers.IsValidEmailAddress(Receiver.EmailAddress) = False Then
oErrors.Add(String.Format(Resources.Envelope.Invalid_Email_Address, Receiver.Name))
End If
Next
@@ -365,7 +365,7 @@ Partial Public Class frmEnvelopeEditor
Exit Sub
End If
Dim oReceiver As EnvelopeReceiver = ViewReceivers.GetFocusedRow()
Dim oReceiver As Receiver = ViewReceivers.GetFocusedRow()
If oReceiver Is Nothing Then
Exit Sub
@@ -458,7 +458,7 @@ Partial Public Class frmEnvelopeEditor
End Sub
Private Sub ViewReceivers_InitNewRow(sender As Object, e As InitNewRowEventArgs) Handles ViewReceivers.InitNewRow
Dim oReceiver As EnvelopeReceiver = ViewReceivers.GetRow(e.RowHandle)
Dim oReceiver As Receiver = ViewReceivers.GetRow(e.RowHandle)
Dim oUsedColors = Receivers.Select(Of Integer)(Function(r) r.ColorType).ToList()
Dim oAllColors = [Enum].GetValues(GetType(Domain.Constants.ColorType)).Cast(Of Integer).ToList()

View File

@@ -20,8 +20,8 @@ Partial Public Class frmFieldEditor
Private Controller As FieldEditorController
Public Property Document As EnvelopeDocument = Nothing
Public Property Receivers As List(Of EnvelopeReceiver)
Public Property SelectedReceiver As EnvelopeReceiver = Nothing
Public Property Receivers As List(Of Receiver)
Public Property SelectedReceiver As Receiver = Nothing
Private UnsavedChanges As Boolean = False
@@ -107,7 +107,7 @@ Partial Public Class frmFieldEditor
UnsavedChanges = True
End Sub
Private Function CreateBarItem(pReceiver As EnvelopeReceiver) As BarItem
Private Function CreateBarItem(pReceiver As Receiver) As BarItem
Dim oItem = New BarButtonItem(BarManager1, pReceiver.Name)
Dim oBaseCircle As SvgImage = SvgImageCollection1.Item(0)
Dim oColorCircle = Helpers.GetColorCircle(oBaseCircle, pReceiver.Color)
@@ -122,7 +122,7 @@ Partial Public Class frmFieldEditor
Private Sub ReceiverItem_Click(sender As Object, e As ItemClickEventArgs)
Me.SuspendLayout()
Dim oSelectedReceiver As EnvelopeReceiver = e.Item.Tag
Dim oSelectedReceiver As Receiver = e.Item.Tag
Dim oCurrentPage = GDViewer.CurrentPage
Dim oCurrentPosition = GDViewer.GetVScrollBarPosition()
@@ -154,7 +154,7 @@ Partial Public Class frmFieldEditor
Me.ResumeLayout()
End Sub
Private Sub SetReceiver(pReceiver As EnvelopeReceiver)
Private Sub SetReceiver(pReceiver As Receiver)
Dim oBaseCircle As SvgImage = SvgImageCollection1.Item(0)
txtReceiver.Caption = pReceiver.Name

View File

@@ -231,7 +231,7 @@ Partial Class frmMain
'ColEmail
'
resources.ApplyResources(Me.ColEmail, "ColEmail")
Me.ColEmail.FieldName = "Email"
Me.ColEmail.FieldName = "EmailAddress"
Me.ColEmail.Name = "ColEmail"
Me.ColEmail.OptionsColumn.AllowEdit = False
'
@@ -618,7 +618,7 @@ Partial Class frmMain
'ColEmailCompleted
'
resources.ApplyResources(Me.ColEmailCompleted, "ColEmailCompleted")
Me.ColEmailCompleted.FieldName = "Email"
Me.ColEmailCompleted.FieldName = "EmailAddress"
Me.ColEmailCompleted.Name = "ColEmailCompleted"
'
'ColSignedDateCompleted

View File

@@ -318,7 +318,7 @@ Public Class frmMain
End If
Dim oView As GridView = DirectCast(sender, GridView)
Dim oReceiver As EnvelopeReceiver = oView.GetRow(e.RowHandle)
Dim oReceiver As Receiver = oView.GetRow(e.RowHandle)
If (oReceiver Is Nothing) Then
Exit Sub
@@ -352,7 +352,7 @@ Public Class frmMain
End If
Dim oView As GridView = DirectCast(sender, GridView)
Dim oReceiver As EnvelopeReceiver = oView.GetRow(e.RowHandle)
Dim oReceiver As Receiver = oView.GetRow(e.RowHandle)
If (oReceiver Is Nothing) Then
Exit Sub
@@ -384,9 +384,9 @@ Public Class frmMain
Dim oEnvelope As Envelope = ViewEnvelopes.GetRow(ViewEnvelopes.FocusedRowHandle)
Dim oView As GridView = GridEnvelopes.FocusedView
If oView.Name = ViewReceivers.Name Then
Dim oReceiver As EnvelopeReceiver = oView.GetRow(oView.FocusedRowHandle)
Dim oReceiver As Receiver = oView.GetRow(oView.FocusedRowHandle)
Dim oEnvelopeTitle As String = Net.WebUtility.UrlEncode(oEnvelope.Title)
Process.Start($"mailto:{oReceiver.Email}?subject={oEnvelopeTitle}")
Process.Start($"mailto:{oReceiver.EmailAddress}?subject={oEnvelopeTitle}")
Else
MsgBox(Resources.Envelope.Please_select_a_recipient_from_the_Recipients_tab, MsgBoxStyle.Information, Text)
End If
@@ -567,11 +567,11 @@ Public Class frmMain
Dim oEnvelope As Envelope = ViewEnvelopes.GetRow(ViewEnvelopes.FocusedRowHandle)
Dim oView As GridView = GridEnvelopes.FocusedView
If oView.Name = ViewReceivers.Name Then
Dim oReceiver As EnvelopeReceiver = oView.GetRow(oView.FocusedRowHandle)
Dim oReceiver As Receiver = oView.GetRow(oView.FocusedRowHandle)
Dim mailto As String = "mailto:support-flow@digitaldata.works"
Dim subject As String = Uri.EscapeDataString("signFLOW - Envelope issue - ID: " & oEnvelope.Id)
Dim body As String = Uri.EscapeDataString($"Dear Digital Data Team," & vbCrLf & "There is an error or misbehavin with following envelope and Receiver:" & vbCrLf &
$"Envelope-ID:{oEnvelope.Id}" & vbCrLf & $"Receiver: {oReceiver.Email}" & vbCrLf & "Issue/Description: Please describe the issue in Your own words...")
$"Envelope-ID:{oEnvelope.Id}" & vbCrLf & $"Receiver: {oReceiver.EmailAddress}" & vbCrLf & "Issue/Description: Please describe the issue in Your own words...")
Dim mailtoUri As String = $"{mailto}?subject={subject}&body={body}"
@@ -595,7 +595,7 @@ Public Class frmMain
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles bbtnitm_ResendInvitation.ItemClick
Dim oView As GridView = GridEnvelopes.FocusedView
Dim selReceiver As EnvelopeReceiver
Dim selReceiver As Receiver
If oView.Name = ViewReceivers.Name Then
selReceiver = oView.GetRow(oView.FocusedRowHandle)
Else
@@ -608,12 +608,12 @@ Public Class frmMain
Dim oController = New EnvelopeEditorController(State, oEnvelope)
Dim Documents As New BindingList(Of EnvelopeDocument)
Dim Receivers As New BindingList(Of EnvelopeReceiver)
Receivers = New BindingList(Of EnvelopeReceiver)(oController.Envelope.Receivers)
For Each oReceiver As EnvelopeReceiver In Receivers
If oReceiver.Email = selReceiver.Email Then
Dim Receivers As New BindingList(Of Receiver)
Receivers = New BindingList(Of Receiver)(oController.Envelope.Receivers)
For Each oReceiver As Receiver In Receivers
If oReceiver.EmailAddress = selReceiver.EmailAddress Then
If oController.ActionService.ResendReceiver(oEnvelope, oReceiver) = True Then
Dim oMsg = Resources.Envelope.Invitation_successfully_resend.Replace("@Mail", oReceiver.Email)
Dim oMsg = Resources.Envelope.Invitation_successfully_resend.Replace("@Mail", oReceiver.EmailAddress)
MsgBox(oMsg, MsgBoxStyle.Information, Text)
End If
@@ -779,14 +779,14 @@ Public Class frmMain
Dim oEnvelope As Envelope = ViewEnvelopes.GetRow(ViewEnvelopes.FocusedRowHandle)
Dim oView As GridView = GridEnvelopes.FocusedView
If oView.Name = ViewReceivers.Name Then
Dim oReceiver As EnvelopeReceiver = oView.GetRow(oView.FocusedRowHandle)
Dim oReceiver As Receiver = oView.GetRow(oView.FocusedRowHandle)
Dim oEnvelopeTitle As String = Net.WebUtility.UrlEncode(oEnvelope.Title)
Dim oDT As DataTable = DB_DD_ECM.GetDatatable($"SELECT * FROM TBSIG_RECEIVER WHERE EMAIL_ADDRESS = '{oReceiver.Email}'")
Dim oDT As DataTable = DB_DD_ECM.GetDatatable($"SELECT * FROM TBSIG_RECEIVER WHERE EMAIL_ADDRESS = '{oReceiver.EmailAddress}'")
If Not IsNothing(oDT) Then
If oDT.Rows.Count = 1 Then
Dim oTFA_REG_DL = oDT.Rows(0).Item("TFA_REG_DEADLINE")
Dim oTOTP = oDT.Rows(0).Item("TOTP_SECRET_KEY")
Dim oForm As New frm2Factor_Properties(oReceiver.Email, oTOTP, oTFA_REG_DL, DB_DD_ECM)
Dim oForm As New frm2Factor_Properties(oReceiver.EmailAddress, oTOTP, oTFA_REG_DL, DB_DD_ECM)
oForm.ShowDialog()
End If
End If

View File

@@ -30,7 +30,7 @@ namespace EnvelopeGenerator.Web.Controllers
{
// Validate Envelope Key and load envelope
envelopeService.EnsureValidEnvelopeKey(envelopeKey);
EnvelopeResponse response = await envelopeService.LoadEnvelope(envelopeKey);
EnvelopeReceiver response = await envelopeService.LoadEnvelope(envelopeKey);
// Load document info
var document = await envelopeService.GetDocument(index, envelopeKey);
@@ -61,7 +61,7 @@ namespace EnvelopeGenerator.Web.Controllers
// Validate Envelope Key and load envelope
envelopeService.EnsureValidEnvelopeKey(envelopeKey);
EnvelopeResponse response = await envelopeService.LoadEnvelope(envelopeKey);
EnvelopeReceiver response = await envelopeService.LoadEnvelope(envelopeKey);
actionService?.OpenEnvelope(response.Envelope, response.Receiver);

View File

@@ -47,7 +47,7 @@ namespace EnvelopeGenerator.Web.Controllers
// Validate Envelope Key and load envelope
envelopeService.EnsureValidEnvelopeKey(envelopeKey);
EnvelopeResponse response = await envelopeService.LoadEnvelope(envelopeKey);
EnvelopeReceiver response = await envelopeService.LoadEnvelope(envelopeKey);
if (envelopeService.ReceiverAlreadySigned(response.Envelope, response.Receiver.Id) == true)
{
@@ -79,7 +79,7 @@ namespace EnvelopeGenerator.Web.Controllers
// Validate Envelope Key and load envelope
envelopeService.EnsureValidEnvelopeKey(envelopeKey);
EnvelopeResponse response = await envelopeService.LoadEnvelope(envelopeKey);
EnvelopeReceiver response = await envelopeService.LoadEnvelope(envelopeKey);
// Again check if receiver has already signed
if (envelopeService.ReceiverAlreadySigned(response.Envelope, response.Receiver.Id) == true)

View File

@@ -106,7 +106,7 @@ public class HomeController : ViewControllerBase
var er = er_res.Data;
EnvelopeResponse response = await envelopeOldService.LoadEnvelope(envelopeReceiverId);
EnvelopeReceiver response = await envelopeOldService.LoadEnvelope(envelopeReceiverId);
bool accessCodeAlreadyRequested = await _historyService.AccessCodeAlreadyRequested(envelopeId: er.Envelope!.Id, userReference: er.Receiver!.EmailAddress);
if (!accessCodeAlreadyRequested)
@@ -182,7 +182,7 @@ public class HomeController : ViewControllerBase
_logger.LogInformation("Envelope UUID: [{uuid}]\nReceiver Signature: [{signature}]", uuid, signature);
//check access code
EnvelopeResponse response = await envelopeOldService.LoadEnvelope(envelopeReceiverId);
EnvelopeReceiver response = await envelopeOldService.LoadEnvelope(envelopeReceiverId);
//check rejection
var rejRcvrs = await _historyService.ReadRejectingReceivers(er.Envelope!.Id);
@@ -342,7 +342,7 @@ public class HomeController : ViewControllerBase
_logger.LogInformation("Envelope UUID: [{uuid}]\nReceiver Signature: [{signature}]", uuid, signature);
//check access code
EnvelopeResponse response = await envelopeOldService.LoadEnvelope(envelopeReceiverId);
EnvelopeReceiver response = await envelopeOldService.LoadEnvelope(envelopeReceiverId);
var er_secret_res = await _envRcvService.ReadWithSecretByUuidSignatureAsync(uuid: uuid, signature: signature);
@@ -407,20 +407,20 @@ public class HomeController : ViewControllerBase
{
envelopeReceiverId = _sanitizer.Sanitize(envelopeReceiverId);
return await _envRcvService.IsExisting(envelopeReceiverId: envelopeReceiverId).ThenAsync(
SuccessAsync: async isExisting =>
SuccessAsync: (Func<bool, Task<IActionResult>>)(async isExisting =>
{
if(!isExisting)
return this.ViewEnvelopeNotFound();
EnvelopeResponse response = await envelopeOldService.LoadEnvelope(envelopeReceiverId);
if (!envelopeOldService.ReceiverAlreadySigned(response.Envelope, response.Receiver.Id))
return Redirect($"/EnvelopeKey/{envelopeReceiverId}/Locked");
Common.EnvelopeReceiver response = await envelopeOldService.LoadEnvelope(envelopeReceiverId);
if (!envelopeOldService.ReceiverAlreadySigned((Envelope)response.Envelope, (int)response.Receiver.Id))
return base.Redirect($"/EnvelopeKey/{envelopeReceiverId}/Locked");
await HttpContext.SignOutAsync(CookieAuthenticationDefaults.AuthenticationScheme);
ViewData["UserCulture"] = _cultures[UserLanguage];
ViewData["EnvelopeKey"] = envelopeReceiverId;
return View();
},
return base.View();
}),
Fail: IActionResult (messages, notices) =>
{
_logger.LogNotice(notices);
@@ -500,7 +500,7 @@ public class HomeController : ViewControllerBase
{
var envelopeKey = (er.Envelope!.Uuid, er.Receiver!.Signature).EncodeEnvelopeReceiverId();
EnvelopeResponse response = await envelopeOldService.LoadEnvelope(envelopeKey);
EnvelopeReceiver response = await envelopeOldService.LoadEnvelope(envelopeKey);
//TODO: implement multi-threading to history process (Task)
var hist_res = await _historyService.RecordAsync((int)erro.EnvelopeId, erro.AddedWho, EnvelopeStatus.EnvelopeViewed);

View File

@@ -38,7 +38,7 @@ namespace EnvelopeGenerator.Web.Controllers
var authReceiverMail = this.GetAuthReceiverMail();
if (authReceiverMail is null)
{
_logger.LogError("Email clam is not found in envelope-receiver-read-only creation process. Create DTO is:\n {dto}", JsonConvert.SerializeObject(createDto));
_logger.LogError("EmailAddress clam is not found in envelope-receiver-read-only creation process. Create DTO is:\n {dto}", JsonConvert.SerializeObject(createDto));
return Unauthorized();
}

View File

@@ -48,7 +48,7 @@ namespace EnvelopeGenerator.Web.Services
throw new ArgumentNullException("ReceiverSignature");
}
public async Task<EnvelopeResponse> LoadEnvelope(string pEnvelopeKey)
public async Task<EnvelopeReceiver> LoadEnvelope(string pEnvelopeKey)
{
_logger.LogInformation("Loading Envelope by Key [{0}]", pEnvelopeKey);
@@ -78,7 +78,7 @@ namespace EnvelopeGenerator.Web.Services
_logger.LogInformation("Envelope receivers found: [{0}]", envelope.Receivers.Count);
EnvelopeReceiver? receiver = envelope.Receivers.Where(r => r.Id == receiverId).SingleOrDefault();
Receiver? receiver = envelope.Receivers.Where(r => r.Id == receiverId).SingleOrDefault();
if (receiver == null)
{
@@ -86,7 +86,7 @@ namespace EnvelopeGenerator.Web.Services
throw new NullReferenceException("Receiver not found");
}
_logger.LogInformation("Loading documents for receiver [{0}]", receiver.Email);
_logger.LogInformation("Loading documents for receiver [{0}]", receiver.EmailAddress);
// filter elements by receiver
envelope.Documents = envelope.Documents.Select((document) =>
@@ -152,7 +152,7 @@ namespace EnvelopeGenerator.Web.Services
public async Task<EnvelopeDocument> GetDocument(int documentId, string envelopeKey)
{
EnvelopeResponse response = await LoadEnvelope(envelopeKey);
EnvelopeReceiver response = await LoadEnvelope(envelopeKey);
_logger.LogInformation("Loading document for Id [{0}]", documentId);