Sfoglia il codice sorgente

Add blue envelope office-copies question, full-screen order-request confirmation

KCI wants to know if a jurisdiction needs extra office copies when ordering
blue AV envelopes, and the old flash-message confirmation after submitting a
jurisdiction number was easy to miss (auto-dismissed in a few seconds).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
master
Daniel Covington 2 giorni fa
parent
commit
3f71ff8053
9 ha cambiato i file con 138 aggiunte e 11 eliminazioni
  1. +12
    -2
      app/controllers/RequestOrderController.asp
  2. +4
    -0
      app/models/OrderDetailsAnswersMapper.asp
  3. +8
    -8
      app/models/OrderDetailsRepository.asp
  4. +2
    -0
      app/models/OrderMailer.asp
  5. +39
    -1
      app/models/POBO_OrderDetails.asp
  6. +17
    -0
      app/views/Order/continue.asp
  7. +17
    -0
      app/views/RequestOrder/sent.asp
  8. +38
    -0
      db/migrations/20260821164041_add_blue_office_copies_fields.asp
  9. +1
    -0
      public/Default.asp

+ 12
- 2
app/controllers/RequestOrderController.asp Vedi File

@@ -92,8 +92,18 @@ Class RequestOrderController_Class
Dim token : token = OrdersRepository().CreateOrder(email, jurisdictionNumber) Dim token : token = OrdersRepository().CreateOrder(email, jurisdictionNumber)
OrderMailer().SendContinuationEmail email, token OrderMailer().SendContinuationEmail email, token


Flash().Success = "Check your email for a link to continue your order."
Response.Redirect Routes().AppURL
Response.Redirect Routes().AppURL & "request-order/sent"
End Sub

'-------------------------------------------------------------------------------------------------------------------
' GET: full-screen confirmation shown after a successful /request-order submission - replaces
' the old auto-dismissing flash message, which was easy to miss.
'-------------------------------------------------------------------------------------------------------------------
Public Sub Sent()
m_title = "Check Your Email"
%>
<!--#include file="../views/RequestOrder/sent.asp" -->
<%
End Sub End Sub


End Class End Class


+ 4
- 0
app/models/OrderDetailsAnswersMapper.asp Vedi File

@@ -20,6 +20,7 @@ Function ValidateOrderDetailsAnswers(answers)
RequireEnum errors, answers, "PurpleColorCodingBy", Array("Precinct", "Election") RequireEnum errors, answers, "PurpleColorCodingBy", Array("Precinct", "Election")
RequireEnum errors, answers, "BluePermitOwnership", Array("KCIPermit", "OwnPermit") RequireEnum errors, answers, "BluePermitOwnership", Array("KCIPermit", "OwnPermit")
RequireEnum errors, answers, "BlueHasNonprofitStatus", Array("Yes", "No", "Unsure") RequireEnum errors, answers, "BlueHasNonprofitStatus", Array("Yes", "No", "Unsure")
RequireEnum errors, answers, "BlueWantsOfficeCopies", Array("Yes", "No")
RequireEnum errors, answers, "MailingPostageOption", Array("FirstClass", "NonprofitRate", "PresortStandard", "No") RequireEnum errors, answers, "MailingPostageOption", Array("FirstClass", "NonprofitRate", "PresortStandard", "No")
RequireEnum errors, answers, "MailingHasNonprofitStatus", Array("Yes", "No", "NotSure") RequireEnum errors, answers, "MailingHasNonprofitStatus", Array("Yes", "No", "NotSure")


@@ -34,6 +35,7 @@ Function ValidateOrderDetailsAnswers(answers)
RequireNonNegativeInteger errors, answers, "PurplePermanentBallotListCount" RequireNonNegativeInteger errors, answers, "PurplePermanentBallotListCount"
RequireNonNegativeInteger errors, answers, "PurplePrecinctCount" RequireNonNegativeInteger errors, answers, "PurplePrecinctCount"
RequireNonNegativeInteger errors, answers, "PurpleExtraEnvelopeQty" RequireNonNegativeInteger errors, answers, "PurpleExtraEnvelopeQty"
RequireNonNegativeInteger errors, answers, "BlueOfficeCopiesQty"
RequireNonNegativeInteger errors, answers, "MailingEstimatedQuantity" RequireNonNegativeInteger errors, answers, "MailingEstimatedQuantity"
RequireNonNegativeInteger errors, answers, "SecrecySleevesQty" RequireNonNegativeInteger errors, answers, "SecrecySleevesQty"
RequireNonNegativeInteger errors, answers, "IVotedStickerRolls" RequireNonNegativeInteger errors, answers, "IVotedStickerRolls"
@@ -68,6 +70,8 @@ Sub MapOrderDetailsAnswers(ByRef model, answers)


' Blue envelope ' Blue envelope
model.BlueWantsQuote = DictValue(answers, "BlueWantsQuote") model.BlueWantsQuote = DictValue(answers, "BlueWantsQuote")
model.BlueWantsOfficeCopies = DictValue(answers, "BlueWantsOfficeCopies")
model.BlueOfficeCopiesQty = DictValue(answers, "BlueOfficeCopiesQty")
model.PurpleBlueProvider = DictValue(answers, "PurpleBlueProvider") model.PurpleBlueProvider = DictValue(answers, "PurpleBlueProvider")
model.PurpleBlueProviderOther = DictValue(answers, "PurpleBlueProviderOther") model.PurpleBlueProviderOther = DictValue(answers, "PurpleBlueProviderOther")
model.BluePrintPermit = DictValue(answers, "BluePrintPermit") model.BluePrintPermit = DictValue(answers, "BluePrintPermit")


+ 8
- 8
app/models/OrderDetailsRepository.asp Vedi File

@@ -13,7 +13,7 @@
Class OrderDetailsRepository_Class Class OrderDetailsRepository_Class


Public Function FindByID(id) Public Function FindByID(id)
Dim sql : sql = "Select [BlueDeliveryDate], [BlueEnvelopeProvider], [BlueHasNonprofitStatus], [BlueNonprofitAuthCode], [BluePermitCity], [BluePermitClass], [BluePermitNumber], [BluePermitOwnership], [BluePrintPermit], [BluePrintReturnAddress], [BlueWantsQuote], [ContactName], [FutureVoterStickerRolls], [IVotedStickerRolls], [MailingEstimatedQuantity], [MailingHasNonprofitStatus], [MailingNonprofitAuthCode], [MailingNonprofitAuthCodeUnknown], [MailingPickupDate], [MailingPostageOption], [MailingWantsService], [MailingWantsSorting], [Municipality], [OrderDetailID], [OrderID], [Phone], [PurpleBlueProvider], [PurpleBlueProviderOther], [PurpleColorCodingBy], [PurpleColorNames], [PurpleDeliveryDate], [PurpleEnvelopeProvider], [PurpleEnvelopeStock], [PurpleExtraEnvelopeQty], [PurplePermanentBallotListCount], [PurplePrecinctCount], [PurplePrintOption], [PurplePrintStyle], [PurpleTrackMIBallot], [PurpleWantsBlueEnvelopes], [PurpleWantsQuote], [SecrecySleevesQty], [SpecialRequests], [SubmittedAt] FROM [OrderDetails] WHERE [OrderDetailID] = ?"
Dim sql : sql = "Select [BlueDeliveryDate], [BlueEnvelopeProvider], [BlueHasNonprofitStatus], [BlueNonprofitAuthCode], [BlueOfficeCopiesQty], [BluePermitCity], [BluePermitClass], [BluePermitNumber], [BluePermitOwnership], [BluePrintPermit], [BluePrintReturnAddress], [BlueWantsOfficeCopies], [BlueWantsQuote], [ContactName], [FutureVoterStickerRolls], [IVotedStickerRolls], [MailingEstimatedQuantity], [MailingHasNonprofitStatus], [MailingNonprofitAuthCode], [MailingNonprofitAuthCodeUnknown], [MailingPickupDate], [MailingPostageOption], [MailingWantsService], [MailingWantsSorting], [Municipality], [OrderDetailID], [OrderID], [Phone], [PurpleBlueProvider], [PurpleBlueProviderOther], [PurpleColorCodingBy], [PurpleColorNames], [PurpleDeliveryDate], [PurpleEnvelopeProvider], [PurpleEnvelopeStock], [PurpleExtraEnvelopeQty], [PurplePermanentBallotListCount], [PurplePrecinctCount], [PurplePrintOption], [PurplePrintStyle], [PurpleTrackMIBallot], [PurpleWantsBlueEnvelopes], [PurpleWantsQuote], [SecrecySleevesQty], [SpecialRequests], [SubmittedAt] FROM [OrderDetails] WHERE [OrderDetailID] = ?"
Dim rs : Set rs = DAL.Query(sql, Array(id)) Dim rs : Set rs = DAL.Query(sql, Array(id))
If rs.EOF Then If rs.EOF Then
Err.Raise 1, "OrderDetailsRepository_Class", RecordNotFoundException("OrderDetailID", id) Err.Raise 1, "OrderDetailsRepository_Class", RecordNotFoundException("OrderDetailID", id)
@@ -28,7 +28,7 @@ Class OrderDetailsRepository_Class
End Function End Function


Public Function Find(where_kvarray, order_string_or_array) Public Function Find(where_kvarray, order_string_or_array)
Dim sql : sql = "Select [BlueDeliveryDate], [BlueEnvelopeProvider], [BlueHasNonprofitStatus], [BlueNonprofitAuthCode], [BluePermitCity], [BluePermitClass], [BluePermitNumber], [BluePermitOwnership], [BluePrintPermit], [BluePrintReturnAddress], [BlueWantsQuote], [ContactName], [FutureVoterStickerRolls], [IVotedStickerRolls], [MailingEstimatedQuantity], [MailingHasNonprofitStatus], [MailingNonprofitAuthCode], [MailingNonprofitAuthCodeUnknown], [MailingPickupDate], [MailingPostageOption], [MailingWantsService], [MailingWantsSorting], [Municipality], [OrderDetailID], [OrderID], [Phone], [PurpleBlueProvider], [PurpleBlueProviderOther], [PurpleColorCodingBy], [PurpleColorNames], [PurpleDeliveryDate], [PurpleEnvelopeProvider], [PurpleEnvelopeStock], [PurpleExtraEnvelopeQty], [PurplePermanentBallotListCount], [PurplePrecinctCount], [PurplePrintOption], [PurplePrintStyle], [PurpleTrackMIBallot], [PurpleWantsBlueEnvelopes], [PurpleWantsQuote], [SecrecySleevesQty], [SpecialRequests], [SubmittedAt] FROM [OrderDetails]"
Dim sql : sql = "Select [BlueDeliveryDate], [BlueEnvelopeProvider], [BlueHasNonprofitStatus], [BlueNonprofitAuthCode], [BlueOfficeCopiesQty], [BluePermitCity], [BluePermitClass], [BluePermitNumber], [BluePermitOwnership], [BluePrintPermit], [BluePrintReturnAddress], [BlueWantsOfficeCopies], [BlueWantsQuote], [ContactName], [FutureVoterStickerRolls], [IVotedStickerRolls], [MailingEstimatedQuantity], [MailingHasNonprofitStatus], [MailingNonprofitAuthCode], [MailingNonprofitAuthCodeUnknown], [MailingPickupDate], [MailingPostageOption], [MailingWantsService], [MailingWantsSorting], [Municipality], [OrderDetailID], [OrderID], [Phone], [PurpleBlueProvider], [PurpleBlueProviderOther], [PurpleColorCodingBy], [PurpleColorNames], [PurpleDeliveryDate], [PurpleEnvelopeProvider], [PurpleEnvelopeStock], [PurpleExtraEnvelopeQty], [PurplePermanentBallotListCount], [PurplePrecinctCount], [PurplePrintOption], [PurplePrintStyle], [PurpleTrackMIBallot], [PurpleWantsBlueEnvelopes], [PurpleWantsQuote], [SecrecySleevesQty], [SpecialRequests], [SubmittedAt] FROM [OrderDetails]"
Dim where_keys, where_values, i Dim where_keys, where_values, i
If Not IsEmpty(where_kvarray) Then If Not IsEmpty(where_kvarray) Then
KVUnzip where_kvarray, where_keys, where_values KVUnzip where_kvarray, where_keys, where_values
@@ -52,7 +52,7 @@ Class OrderDetailsRepository_Class
End Function End Function


Public Function FindPaged(where_kvarray, order_string_or_array, per_page, page_num, ByRef page_count, ByRef record_count) Public Function FindPaged(where_kvarray, order_string_or_array, per_page, page_num, ByRef page_count, ByRef record_count)
Dim sql : sql = "Select [BlueDeliveryDate], [BlueEnvelopeProvider], [BlueHasNonprofitStatus], [BlueNonprofitAuthCode], [BluePermitCity], [BluePermitClass], [BluePermitNumber], [BluePermitOwnership], [BluePrintPermit], [BluePrintReturnAddress], [BlueWantsQuote], [ContactName], [FutureVoterStickerRolls], [IVotedStickerRolls], [MailingEstimatedQuantity], [MailingHasNonprofitStatus], [MailingNonprofitAuthCode], [MailingNonprofitAuthCodeUnknown], [MailingPickupDate], [MailingPostageOption], [MailingWantsService], [MailingWantsSorting], [Municipality], [OrderDetailID], [OrderID], [Phone], [PurpleBlueProvider], [PurpleBlueProviderOther], [PurpleColorCodingBy], [PurpleColorNames], [PurpleDeliveryDate], [PurpleEnvelopeProvider], [PurpleEnvelopeStock], [PurpleExtraEnvelopeQty], [PurplePermanentBallotListCount], [PurplePrecinctCount], [PurplePrintOption], [PurplePrintStyle], [PurpleTrackMIBallot], [PurpleWantsBlueEnvelopes], [PurpleWantsQuote], [SecrecySleevesQty], [SpecialRequests], [SubmittedAt] FROM [OrderDetails]"
Dim sql : sql = "Select [BlueDeliveryDate], [BlueEnvelopeProvider], [BlueHasNonprofitStatus], [BlueNonprofitAuthCode], [BlueOfficeCopiesQty], [BluePermitCity], [BluePermitClass], [BluePermitNumber], [BluePermitOwnership], [BluePrintPermit], [BluePrintReturnAddress], [BlueWantsOfficeCopies], [BlueWantsQuote], [ContactName], [FutureVoterStickerRolls], [IVotedStickerRolls], [MailingEstimatedQuantity], [MailingHasNonprofitStatus], [MailingNonprofitAuthCode], [MailingNonprofitAuthCodeUnknown], [MailingPickupDate], [MailingPostageOption], [MailingWantsService], [MailingWantsSorting], [Municipality], [OrderDetailID], [OrderID], [Phone], [PurpleBlueProvider], [PurpleBlueProviderOther], [PurpleColorCodingBy], [PurpleColorNames], [PurpleDeliveryDate], [PurpleEnvelopeProvider], [PurpleEnvelopeStock], [PurpleExtraEnvelopeQty], [PurplePermanentBallotListCount], [PurplePrecinctCount], [PurplePrintOption], [PurplePrintStyle], [PurpleTrackMIBallot], [PurpleWantsBlueEnvelopes], [PurpleWantsQuote], [SecrecySleevesQty], [SpecialRequests], [SubmittedAt] FROM [OrderDetails]"
Dim where_keys, where_values, i Dim where_keys, where_values, i
If Not IsEmpty(where_kvarray) Then If Not IsEmpty(where_kvarray) Then
KVUnzip where_kvarray, where_keys, where_values KVUnzip where_kvarray, where_keys, where_values
@@ -77,7 +77,7 @@ Class OrderDetailsRepository_Class
End Function End Function


Public Function SearchTablePaged(columns_array, search_value, order_string_or_array, per_page, page_num, ByRef page_count, ByRef record_count) Public Function SearchTablePaged(columns_array, search_value, order_string_or_array, per_page, page_num, ByRef page_count, ByRef record_count)
Dim sql : sql = "Select [BlueDeliveryDate], [BlueEnvelopeProvider], [BlueHasNonprofitStatus], [BlueNonprofitAuthCode], [BluePermitCity], [BluePermitClass], [BluePermitNumber], [BluePermitOwnership], [BluePrintPermit], [BluePrintReturnAddress], [BlueWantsQuote], [ContactName], [FutureVoterStickerRolls], [IVotedStickerRolls], [MailingEstimatedQuantity], [MailingHasNonprofitStatus], [MailingNonprofitAuthCode], [MailingNonprofitAuthCodeUnknown], [MailingPickupDate], [MailingPostageOption], [MailingWantsService], [MailingWantsSorting], [Municipality], [OrderDetailID], [OrderID], [Phone], [PurpleBlueProvider], [PurpleBlueProviderOther], [PurpleColorCodingBy], [PurpleColorNames], [PurpleDeliveryDate], [PurpleEnvelopeProvider], [PurpleEnvelopeStock], [PurpleExtraEnvelopeQty], [PurplePermanentBallotListCount], [PurplePrecinctCount], [PurplePrintOption], [PurplePrintStyle], [PurpleTrackMIBallot], [PurpleWantsBlueEnvelopes], [PurpleWantsQuote], [SecrecySleevesQty], [SpecialRequests], [SubmittedAt] FROM [OrderDetails]"
Dim sql : sql = "Select [BlueDeliveryDate], [BlueEnvelopeProvider], [BlueHasNonprofitStatus], [BlueNonprofitAuthCode], [BlueOfficeCopiesQty], [BluePermitCity], [BluePermitClass], [BluePermitNumber], [BluePermitOwnership], [BluePrintPermit], [BluePrintReturnAddress], [BlueWantsOfficeCopies], [BlueWantsQuote], [ContactName], [FutureVoterStickerRolls], [IVotedStickerRolls], [MailingEstimatedQuantity], [MailingHasNonprofitStatus], [MailingNonprofitAuthCode], [MailingNonprofitAuthCodeUnknown], [MailingPickupDate], [MailingPostageOption], [MailingWantsService], [MailingWantsSorting], [Municipality], [OrderDetailID], [OrderID], [Phone], [PurpleBlueProvider], [PurpleBlueProviderOther], [PurpleColorCodingBy], [PurpleColorNames], [PurpleDeliveryDate], [PurpleEnvelopeProvider], [PurpleEnvelopeStock], [PurpleExtraEnvelopeQty], [PurplePermanentBallotListCount], [PurplePrecinctCount], [PurplePrintOption], [PurplePrintStyle], [PurpleTrackMIBallot], [PurpleWantsBlueEnvelopes], [PurpleWantsQuote], [SecrecySleevesQty], [SpecialRequests], [SubmittedAt] FROM [OrderDetails]"
Dim i, params() Dim i, params()
If IsArray(columns_array) And UBound(columns_array) >= 0 Then If IsArray(columns_array) And UBound(columns_array) >= 0 Then
sql = sql & " WHERE " sql = sql & " WHERE "
@@ -112,8 +112,8 @@ Class OrderDetailsRepository_Class
End Function End Function


Public Sub AddNew(ByRef model) Public Sub AddNew(ByRef model)
Dim sql : sql = "INSERT INTO [OrderDetails] ([BlueDeliveryDate], [BlueEnvelopeProvider], [BlueHasNonprofitStatus], [BlueNonprofitAuthCode], [BluePermitCity], [BluePermitClass], [BluePermitNumber], [BluePermitOwnership], [BluePrintPermit], [BluePrintReturnAddress], [BlueWantsQuote], [ContactName], [FutureVoterStickerRolls], [IVotedStickerRolls], [MailingEstimatedQuantity], [MailingHasNonprofitStatus], [MailingNonprofitAuthCode], [MailingNonprofitAuthCodeUnknown], [MailingPickupDate], [MailingPostageOption], [MailingWantsService], [MailingWantsSorting], [Municipality], [OrderID], [Phone], [PurpleBlueProvider], [PurpleBlueProviderOther], [PurpleColorCodingBy], [PurpleColorNames], [PurpleDeliveryDate], [PurpleEnvelopeProvider], [PurpleEnvelopeStock], [PurpleExtraEnvelopeQty], [PurplePermanentBallotListCount], [PurplePrecinctCount], [PurplePrintOption], [PurplePrintStyle], [PurpleTrackMIBallot], [PurpleWantsBlueEnvelopes], [PurpleWantsQuote], [SecrecySleevesQty], [SpecialRequests], [SubmittedAt]) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
DAL.Execute sql, Array(model.BlueDeliveryDate, model.BlueEnvelopeProvider, model.BlueHasNonprofitStatus, model.BlueNonprofitAuthCode, model.BluePermitCity, model.BluePermitClass, model.BluePermitNumber, model.BluePermitOwnership, model.BluePrintPermit, model.BluePrintReturnAddress, model.BlueWantsQuote, model.ContactName, model.FutureVoterStickerRolls, model.IVotedStickerRolls, model.MailingEstimatedQuantity, model.MailingHasNonprofitStatus, model.MailingNonprofitAuthCode, model.MailingNonprofitAuthCodeUnknown, model.MailingPickupDate, model.MailingPostageOption, model.MailingWantsService, model.MailingWantsSorting, model.Municipality, model.OrderID, model.Phone, model.PurpleBlueProvider, model.PurpleBlueProviderOther, model.PurpleColorCodingBy, model.PurpleColorNames, model.PurpleDeliveryDate, model.PurpleEnvelopeProvider, model.PurpleEnvelopeStock, model.PurpleExtraEnvelopeQty, model.PurplePermanentBallotListCount, model.PurplePrecinctCount, model.PurplePrintOption, model.PurplePrintStyle, model.PurpleTrackMIBallot, model.PurpleWantsBlueEnvelopes, model.PurpleWantsQuote, model.SecrecySleevesQty, model.SpecialRequests, model.SubmittedAt)
Dim sql : sql = "INSERT INTO [OrderDetails] ([BlueDeliveryDate], [BlueEnvelopeProvider], [BlueHasNonprofitStatus], [BlueNonprofitAuthCode], [BlueOfficeCopiesQty], [BluePermitCity], [BluePermitClass], [BluePermitNumber], [BluePermitOwnership], [BluePrintPermit], [BluePrintReturnAddress], [BlueWantsOfficeCopies], [BlueWantsQuote], [ContactName], [FutureVoterStickerRolls], [IVotedStickerRolls], [MailingEstimatedQuantity], [MailingHasNonprofitStatus], [MailingNonprofitAuthCode], [MailingNonprofitAuthCodeUnknown], [MailingPickupDate], [MailingPostageOption], [MailingWantsService], [MailingWantsSorting], [Municipality], [OrderID], [Phone], [PurpleBlueProvider], [PurpleBlueProviderOther], [PurpleColorCodingBy], [PurpleColorNames], [PurpleDeliveryDate], [PurpleEnvelopeProvider], [PurpleEnvelopeStock], [PurpleExtraEnvelopeQty], [PurplePermanentBallotListCount], [PurplePrecinctCount], [PurplePrintOption], [PurplePrintStyle], [PurpleTrackMIBallot], [PurpleWantsBlueEnvelopes], [PurpleWantsQuote], [SecrecySleevesQty], [SpecialRequests], [SubmittedAt]) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
DAL.Execute sql, Array(model.BlueDeliveryDate, model.BlueEnvelopeProvider, model.BlueHasNonprofitStatus, model.BlueNonprofitAuthCode, model.BlueOfficeCopiesQty, model.BluePermitCity, model.BluePermitClass, model.BluePermitNumber, model.BluePermitOwnership, model.BluePrintPermit, model.BluePrintReturnAddress, model.BlueWantsOfficeCopies, model.BlueWantsQuote, model.ContactName, model.FutureVoterStickerRolls, model.IVotedStickerRolls, model.MailingEstimatedQuantity, model.MailingHasNonprofitStatus, model.MailingNonprofitAuthCode, model.MailingNonprofitAuthCodeUnknown, model.MailingPickupDate, model.MailingPostageOption, model.MailingWantsService, model.MailingWantsSorting, model.Municipality, model.OrderID, model.Phone, model.PurpleBlueProvider, model.PurpleBlueProviderOther, model.PurpleColorCodingBy, model.PurpleColorNames, model.PurpleDeliveryDate, model.PurpleEnvelopeProvider, model.PurpleEnvelopeStock, model.PurpleExtraEnvelopeQty, model.PurplePermanentBallotListCount, model.PurplePrecinctCount, model.PurplePrintOption, model.PurplePrintStyle, model.PurpleTrackMIBallot, model.PurpleWantsBlueEnvelopes, model.PurpleWantsQuote, model.SecrecySleevesQty, model.SpecialRequests, model.SubmittedAt)


' Retrieve the newly inserted ID ' Retrieve the newly inserted ID
On Error Resume Next On Error Resume Next
@@ -132,8 +132,8 @@ Class OrderDetailsRepository_Class
End Sub End Sub


Public Sub Update(model) Public Sub Update(model)
Dim sql : sql = "UPDATE [OrderDetails] SET [BlueDeliveryDate] = ?, [BlueEnvelopeProvider] = ?, [BlueHasNonprofitStatus] = ?, [BlueNonprofitAuthCode] = ?, [BluePermitCity] = ?, [BluePermitClass] = ?, [BluePermitNumber] = ?, [BluePermitOwnership] = ?, [BluePrintPermit] = ?, [BluePrintReturnAddress] = ?, [BlueWantsQuote] = ?, [ContactName] = ?, [FutureVoterStickerRolls] = ?, [IVotedStickerRolls] = ?, [MailingEstimatedQuantity] = ?, [MailingHasNonprofitStatus] = ?, [MailingNonprofitAuthCode] = ?, [MailingNonprofitAuthCodeUnknown] = ?, [MailingPickupDate] = ?, [MailingPostageOption] = ?, [MailingWantsService] = ?, [MailingWantsSorting] = ?, [Municipality] = ?, [OrderID] = ?, [Phone] = ?, [PurpleBlueProvider] = ?, [PurpleBlueProviderOther] = ?, [PurpleColorCodingBy] = ?, [PurpleColorNames] = ?, [PurpleDeliveryDate] = ?, [PurpleEnvelopeProvider] = ?, [PurpleEnvelopeStock] = ?, [PurpleExtraEnvelopeQty] = ?, [PurplePermanentBallotListCount] = ?, [PurplePrecinctCount] = ?, [PurplePrintOption] = ?, [PurplePrintStyle] = ?, [PurpleTrackMIBallot] = ?, [PurpleWantsBlueEnvelopes] = ?, [PurpleWantsQuote] = ?, [SecrecySleevesQty] = ?, [SpecialRequests] = ?, [SubmittedAt] = ? WHERE [OrderDetailID] = ?"
DAL.Execute sql, Array(model.BlueDeliveryDate, model.BlueEnvelopeProvider, model.BlueHasNonprofitStatus, model.BlueNonprofitAuthCode, model.BluePermitCity, model.BluePermitClass, model.BluePermitNumber, model.BluePermitOwnership, model.BluePrintPermit, model.BluePrintReturnAddress, model.BlueWantsQuote, model.ContactName, model.FutureVoterStickerRolls, model.IVotedStickerRolls, model.MailingEstimatedQuantity, model.MailingHasNonprofitStatus, model.MailingNonprofitAuthCode, model.MailingNonprofitAuthCodeUnknown, model.MailingPickupDate, model.MailingPostageOption, model.MailingWantsService, model.MailingWantsSorting, model.Municipality, model.OrderID, model.Phone, model.PurpleBlueProvider, model.PurpleBlueProviderOther, model.PurpleColorCodingBy, model.PurpleColorNames, model.PurpleDeliveryDate, model.PurpleEnvelopeProvider, model.PurpleEnvelopeStock, model.PurpleExtraEnvelopeQty, model.PurplePermanentBallotListCount, model.PurplePrecinctCount, model.PurplePrintOption, model.PurplePrintStyle, model.PurpleTrackMIBallot, model.PurpleWantsBlueEnvelopes, model.PurpleWantsQuote, model.SecrecySleevesQty, model.SpecialRequests, model.SubmittedAt, model.OrderDetailID)
Dim sql : sql = "UPDATE [OrderDetails] SET [BlueDeliveryDate] = ?, [BlueEnvelopeProvider] = ?, [BlueHasNonprofitStatus] = ?, [BlueNonprofitAuthCode] = ?, [BlueOfficeCopiesQty] = ?, [BluePermitCity] = ?, [BluePermitClass] = ?, [BluePermitNumber] = ?, [BluePermitOwnership] = ?, [BluePrintPermit] = ?, [BluePrintReturnAddress] = ?, [BlueWantsOfficeCopies] = ?, [BlueWantsQuote] = ?, [ContactName] = ?, [FutureVoterStickerRolls] = ?, [IVotedStickerRolls] = ?, [MailingEstimatedQuantity] = ?, [MailingHasNonprofitStatus] = ?, [MailingNonprofitAuthCode] = ?, [MailingNonprofitAuthCodeUnknown] = ?, [MailingPickupDate] = ?, [MailingPostageOption] = ?, [MailingWantsService] = ?, [MailingWantsSorting] = ?, [Municipality] = ?, [OrderID] = ?, [Phone] = ?, [PurpleBlueProvider] = ?, [PurpleBlueProviderOther] = ?, [PurpleColorCodingBy] = ?, [PurpleColorNames] = ?, [PurpleDeliveryDate] = ?, [PurpleEnvelopeProvider] = ?, [PurpleEnvelopeStock] = ?, [PurpleExtraEnvelopeQty] = ?, [PurplePermanentBallotListCount] = ?, [PurplePrecinctCount] = ?, [PurplePrintOption] = ?, [PurplePrintStyle] = ?, [PurpleTrackMIBallot] = ?, [PurpleWantsBlueEnvelopes] = ?, [PurpleWantsQuote] = ?, [SecrecySleevesQty] = ?, [SpecialRequests] = ?, [SubmittedAt] = ? WHERE [OrderDetailID] = ?"
DAL.Execute sql, Array(model.BlueDeliveryDate, model.BlueEnvelopeProvider, model.BlueHasNonprofitStatus, model.BlueNonprofitAuthCode, model.BlueOfficeCopiesQty, model.BluePermitCity, model.BluePermitClass, model.BluePermitNumber, model.BluePermitOwnership, model.BluePrintPermit, model.BluePrintReturnAddress, model.BlueWantsOfficeCopies, model.BlueWantsQuote, model.ContactName, model.FutureVoterStickerRolls, model.IVotedStickerRolls, model.MailingEstimatedQuantity, model.MailingHasNonprofitStatus, model.MailingNonprofitAuthCode, model.MailingNonprofitAuthCodeUnknown, model.MailingPickupDate, model.MailingPostageOption, model.MailingWantsService, model.MailingWantsSorting, model.Municipality, model.OrderID, model.Phone, model.PurpleBlueProvider, model.PurpleBlueProviderOther, model.PurpleColorCodingBy, model.PurpleColorNames, model.PurpleDeliveryDate, model.PurpleEnvelopeProvider, model.PurpleEnvelopeStock, model.PurpleExtraEnvelopeQty, model.PurplePermanentBallotListCount, model.PurplePrecinctCount, model.PurplePrintOption, model.PurplePrintStyle, model.PurpleTrackMIBallot, model.PurpleWantsBlueEnvelopes, model.PurpleWantsQuote, model.SecrecySleevesQty, model.SpecialRequests, model.SubmittedAt, model.OrderDetailID)
End Sub End Sub


Public Sub Delete(id) Public Sub Delete(id)


+ 2
- 0
app/models/OrderMailer.asp Vedi File

@@ -102,6 +102,8 @@ Class OrderMailer_Class


html = html & EmailSection("Blue AV Envelopes", _ html = html & EmailSection("Blue AV Envelopes", _
EmailRow("Purchasing blue envelopes from KCI", EmailYesNo(model.BlueWantsQuote)) & _ EmailRow("Purchasing blue envelopes from KCI", EmailYesNo(model.BlueWantsQuote)) & _
EmailRow("Additional office copies", model.BlueWantsOfficeCopies) & _
EmailRow("Additional office copies requested", model.BlueOfficeCopiesQty) & _
EmailRow("Blue envelope provider", blueProviderLine) & _ EmailRow("Blue envelope provider", blueProviderLine) & _
EmailRow("Print permit", EmailYesNo(model.BluePrintPermit)) & _ EmailRow("Print permit", EmailYesNo(model.BluePrintPermit)) & _
EmailRow("Permit ownership", LabelPermitOwnership(model.BluePermitOwnership)) & _ EmailRow("Permit ownership", LabelPermitOwnership(model.BluePermitOwnership)) & _


+ 39
- 1
app/models/POBO_OrderDetails.asp Vedi File

@@ -14,12 +14,14 @@ Class POBO_OrderDetails
Private pBlueEnvelopeProvider Private pBlueEnvelopeProvider
Private pBlueHasNonprofitStatus Private pBlueHasNonprofitStatus
Private pBlueNonprofitAuthCode Private pBlueNonprofitAuthCode
Private pBlueOfficeCopiesQty
Private pBluePermitCity Private pBluePermitCity
Private pBluePermitClass Private pBluePermitClass
Private pBluePermitNumber Private pBluePermitNumber
Private pBluePermitOwnership Private pBluePermitOwnership
Private pBluePrintPermit Private pBluePrintPermit
Private pBluePrintReturnAddress Private pBluePrintReturnAddress
Private pBlueWantsOfficeCopies
Private pBlueWantsQuote Private pBlueWantsQuote
Private pContactName Private pContactName
Private pFutureVoterStickerRolls Private pFutureVoterStickerRolls
@@ -60,12 +62,14 @@ Class POBO_OrderDetails
pBlueEnvelopeProvider = Null pBlueEnvelopeProvider = Null
pBlueHasNonprofitStatus = Null pBlueHasNonprofitStatus = Null
pBlueNonprofitAuthCode = Null pBlueNonprofitAuthCode = Null
pBlueOfficeCopiesQty = 0
pBluePermitCity = Null pBluePermitCity = Null
pBluePermitClass = Null pBluePermitClass = Null
pBluePermitNumber = Null pBluePermitNumber = Null
pBluePermitOwnership = Null pBluePermitOwnership = Null
pBluePrintPermit = False pBluePrintPermit = False
pBluePrintReturnAddress = False pBluePrintReturnAddress = False
pBlueWantsOfficeCopies = Null
pBlueWantsQuote = False pBlueWantsQuote = False
pContactName = Null pContactName = Null
pFutureVoterStickerRolls = 0 pFutureVoterStickerRolls = 0
@@ -100,7 +104,7 @@ Class POBO_OrderDetails
pSecrecySleevesQty = 0 pSecrecySleevesQty = 0
pSpecialRequests = Null pSpecialRequests = Null
pSubmittedAt = #1/1/1970# pSubmittedAt = #1/1/1970#
Properties = Array("BlueDeliveryDate","BlueEnvelopeProvider","BlueHasNonprofitStatus","BlueNonprofitAuthCode","BluePermitCity","BluePermitClass","BluePermitNumber","BluePermitOwnership","BluePrintPermit","BluePrintReturnAddress","BlueWantsQuote","ContactName","FutureVoterStickerRolls","IVotedStickerRolls","MailingEstimatedQuantity","MailingHasNonprofitStatus","MailingNonprofitAuthCode","MailingNonprofitAuthCodeUnknown","MailingPickupDate","MailingPostageOption","MailingWantsService","MailingWantsSorting","Municipality","OrderDetailID","OrderID","Phone","PurpleBlueProvider","PurpleBlueProviderOther","PurpleColorCodingBy","PurpleColorNames","PurpleDeliveryDate","PurpleEnvelopeProvider","PurpleEnvelopeStock","PurpleExtraEnvelopeQty","PurplePermanentBallotListCount","PurplePrecinctCount","PurplePrintOption","PurplePrintStyle","PurpleTrackMIBallot","PurpleWantsBlueEnvelopes","PurpleWantsQuote","SecrecySleevesQty","SpecialRequests","SubmittedAt")
Properties = Array("BlueDeliveryDate","BlueEnvelopeProvider","BlueHasNonprofitStatus","BlueNonprofitAuthCode","BlueOfficeCopiesQty","BluePermitCity","BluePermitClass","BluePermitNumber","BluePermitOwnership","BluePrintPermit","BluePrintReturnAddress","BlueWantsOfficeCopies","BlueWantsQuote","ContactName","FutureVoterStickerRolls","IVotedStickerRolls","MailingEstimatedQuantity","MailingHasNonprofitStatus","MailingNonprofitAuthCode","MailingNonprofitAuthCodeUnknown","MailingPickupDate","MailingPostageOption","MailingWantsService","MailingWantsSorting","Municipality","OrderDetailID","OrderID","Phone","PurpleBlueProvider","PurpleBlueProviderOther","PurpleColorCodingBy","PurpleColorNames","PurpleDeliveryDate","PurpleEnvelopeProvider","PurpleEnvelopeStock","PurpleExtraEnvelopeQty","PurplePermanentBallotListCount","PurplePrecinctCount","PurplePrintOption","PurplePrintStyle","PurpleTrackMIBallot","PurpleWantsBlueEnvelopes","PurpleWantsQuote","SecrecySleevesQty","SpecialRequests","SubmittedAt")
End Sub End Sub


Public Property Get PrimaryKey() Public Property Get PrimaryKey()
@@ -175,6 +179,23 @@ Class POBO_OrderDetails
On Error GoTo 0 On Error GoTo 0
End Property End Property


Public Property Get BlueOfficeCopiesQty()
BlueOfficeCopiesQty = pBlueOfficeCopiesQty
End Property

Public Property Let BlueOfficeCopiesQty(val)
On Error Resume Next
If IsNumeric(val) Then
pBlueOfficeCopiesQty = CDbl(val)
Else
pBlueOfficeCopiesQty = val
End If
If Err.Number <> 0 Then
Err.Raise Err.Number, "POBO_OrderDetails.BlueOfficeCopiesQty", "Invalid value for BlueOfficeCopiesQty: " & Err.Description
End If
On Error GoTo 0
End Property

Public Property Get BluePermitCity() Public Property Get BluePermitCity()
BluePermitCity = pBluePermitCity BluePermitCity = pBluePermitCity
End Property End Property
@@ -273,6 +294,23 @@ Class POBO_OrderDetails
On Error GoTo 0 On Error GoTo 0
End Property End Property


Public Property Get BlueWantsOfficeCopies()
BlueWantsOfficeCopies = pBlueWantsOfficeCopies
End Property

Public Property Let BlueWantsOfficeCopies(val)
On Error Resume Next
If IsNumeric(val) Then
pBlueWantsOfficeCopies = CDbl(val)
Else
pBlueWantsOfficeCopies = val
End If
If Err.Number <> 0 Then
Err.Raise Err.Number, "POBO_OrderDetails.BlueWantsOfficeCopies", "Invalid value for BlueWantsOfficeCopies: " & Err.Description
End If
On Error GoTo 0
End Property

Public Property Get BlueWantsQuote() Public Property Get BlueWantsQuote()
BlueWantsQuote = pBlueWantsQuote BlueWantsQuote = pBlueWantsQuote
End Property End Property


+ 17
- 0
app/views/Order/continue.asp Vedi File

@@ -191,6 +191,23 @@
title: "Would you like to purchase blue AV envelopes from KCI?", title: "Would you like to purchase blue AV envelopes from KCI?",
isRequired: true isRequired: true
}, },
{
type: "radiogroup", name: "BlueWantsOfficeCopies",
title: "Would you like additional office copies when ordering KCI envelopes?",
visibleIf: "{BlueWantsQuote} = true",
isRequired: true,
choices: [
{ value: "Yes", text: "Yes" },
{ value: "No", text: "No" }
]
},
{
type: "text", name: "BlueOfficeCopiesQty",
title: "How many additional office copies would you like?",
inputType: "number", min: 0,
visibleIf: "{BlueWantsOfficeCopies} = 'Yes'",
isRequired: true
},
{ {
type: "radiogroup", name: "PurpleBlueProvider", type: "radiogroup", name: "PurpleBlueProvider",
title: "Who is your blue envelope provider?", title: "Who is your blue envelope provider?",


+ 17
- 0
app/views/RequestOrder/sent.asp Vedi File

@@ -0,0 +1,17 @@
<section style="padding: 48px 0; max-width: 640px; margin: 0 auto;">
<div class="form-panel">
<div class="section-heading form-section">
<span class="eyebrow">Order request received</span>
<h1>Check your email</h1>
<p>
An email has been sent to complete your order. If you do not see an email in your
inbox please check your spam folder.
</p>
<p>
If you do not see the email in either location, please email Ericka at
<a href="mailto:ErickaW@kentcommunications.com">ErickaW@kentcommunications.com</a>
or call <a href="tel:+16169572120">(616) 957-2120</a>.
</p>
</div>
</div>
</section>

+ 38
- 0
db/migrations/20260821164041_add_blue_office_copies_fields.asp Vedi File

@@ -0,0 +1,38 @@
<%
'=======================================================================================================================
' MIGRATION: add_blue_office_copies_fields
'=======================================================================================================================
' This migration was auto-generated. Add your migration logic below.
'
' The migration object provides these helper methods:
' - migration.ExecuteSQL(sql) - Execute raw SQL
' - migration.CreateTable(name, columns) - Create a table
' - migration.DropTable(name) - Drop a table
' - migration.AddColumn(table, column, type) - Add a column
' - migration.DropColumn(table, column) - Drop a column
' - migration.CreateIndex(name, table, columns) - Create an index
' - migration.DropIndex(name, table) - Drop an index
'
' For complex operations, use migration.DB to access the database directly:
' migration.DB.Execute "INSERT INTO users (name) VALUES (?)", Array("John")
'

'-----------------------------------------------------------------------------------------------------------------------
' UP - Apply the migration
'-----------------------------------------------------------------------------------------------------------------------
Sub Migration_Up(migration)
' Blue AV Envelope section - "would you like additional office copies when ordering
' KCI envelopes?" Only asked when BlueWantsQuote = true, so it must tolerate NULL like
' BlueHasNonprofitStatus does - kept as VARCHAR rather than YESNO, which can't store NULL.
migration.AddColumn "OrderDetails", "BlueWantsOfficeCopies", "VARCHAR(10)"
migration.AddColumn "OrderDetails", "BlueOfficeCopiesQty", "INTEGER"
End Sub

'-----------------------------------------------------------------------------------------------------------------------
' DOWN - Rollback the migration
'-----------------------------------------------------------------------------------------------------------------------
Sub Migration_Down(migration)
migration.DropColumn "OrderDetails", "BlueOfficeCopiesQty"
migration.DropColumn "OrderDetails", "BlueWantsOfficeCopies"
End Sub
%>

+ 1
- 0
public/Default.asp Vedi File

@@ -9,6 +9,7 @@


router.AddRoute "GET", "/request-order", "RequestOrderController", "Index" router.AddRoute "GET", "/request-order", "RequestOrderController", "Index"
router.AddRoute "POST", "/request-order", "RequestOrderController", "Create" router.AddRoute "POST", "/request-order", "RequestOrderController", "Create"
router.AddRoute "GET", "/request-order/sent", "RequestOrderController", "Sent"
router.AddRoute "GET", "/order/continue", "OrderController", "Continue" router.AddRoute "GET", "/order/continue", "OrderController", "Continue"
router.AddRoute "POST", "/order/submit", "OrderApiController", "SubmitOrderDetails" router.AddRoute "POST", "/order/submit", "OrderApiController", "SubmitOrderDetails"




Loading…
Annulla
Salva

Powered by TurnKey Linux.