WIP: DKIM is working fine. Still some validations to do.
parent
1c080cc948
commit
5be520281f
|
@ -30,6 +30,7 @@ import Data.Tuple (Tuple(..))
|
|||
import Data.ArrayBuffer.Types (ArrayBuffer)
|
||||
import Data.Array.NonEmpty as NonEmpty
|
||||
import Data.Either (Either(..))
|
||||
import Data.String.CodePoints as CP
|
||||
-- import Data.Foldable as Foldable
|
||||
import Data.Maybe (Maybe(..), fromMaybe, maybe)
|
||||
import Effect.Aff.Class (class MonadAff)
|
||||
|
@ -517,6 +518,9 @@ handleAction = case _ of
|
|||
Nothing -> H.raise $ Log $ ErrorLog $ "RR not found (RR " <> show rr_id <> ")"
|
||||
Just rr -> do
|
||||
H.modify_ _ { _currentRR = rr }
|
||||
_ <- case rr.rrtype of
|
||||
"DKIM" -> H.modify_ _ { dkim = fromMaybe DKIM.emptyDKIMRR rr.dkim }
|
||||
_ -> pure unit
|
||||
H.modify_ _ { rr_modal = UpdateRRModal }
|
||||
|
||||
-- | Each time a "new RR" button is clicked, the form resets.
|
||||
|
@ -562,6 +566,7 @@ handleAction = case _ of
|
|||
H.modify_ \s -> s { _currentRR = replace_name s._domain s._currentRR }
|
||||
|
||||
-- TODO: should the code design change? Would the code be simplified by working only on _currentRR.dkim?
|
||||
-- Since _currentRR.dkim isn't modified directly, it is copied from `State`.
|
||||
_ <- case t of
|
||||
DKIM -> H.modify_ \state -> state { _currentRR { dkim = Just state.dkim } }
|
||||
_ -> pure unit
|
||||
|
@ -598,6 +603,12 @@ handleAction = case _ of
|
|||
-- In case the `name` part of the resource record is empty, consider the name to be the domain itself.
|
||||
H.modify_ \s -> s { _currentRR = replace_name s._domain s._currentRR }
|
||||
|
||||
-- Since _currentRR.dkim isn't modified directly, it is copied from `State`.
|
||||
state0 <- H.get
|
||||
_ <- case state0._currentRR.rrtype of
|
||||
"DKIM" -> H.modify_ _ { _currentRR { dkim = Just state0.dkim } }
|
||||
_ -> pure unit
|
||||
|
||||
state <- H.get
|
||||
case Validation.validation state._currentRR of
|
||||
Left actual_errors -> do
|
||||
|
@ -779,7 +790,7 @@ render_resources records
|
|||
tag_mx = tags [tag "MX"]
|
||||
tag_srv = tags [tag "SRV"]
|
||||
tag_spf = tags [tag "SPF"]
|
||||
tag_dkim = tags [tag "DKIM", tag "work in progress 😂"]
|
||||
tag_dkim = tags [tag "DKIM"]
|
||||
tag_basic_ro = tags [tag_ro "Basic RRs", tag_ro "read only"]
|
||||
|
||||
rr_box :: HH.HTML w Action -- box title (type of data)
|
||||
|
@ -862,7 +873,8 @@ render_resources records
|
|||
-- , HH.td_ [ Bulma.p $ maybe "(default)" id rr.v ] -- For now, version isn't displayed. Assume DKIM1.
|
||||
HH.td_ [ Bulma.p $ maybe "" DKIM.show_hashing_algorithm dkim.h ]
|
||||
, HH.td_ [ Bulma.p $ maybe "" DKIM.show_signature_algorithm dkim.k ]
|
||||
, HH.td_ [ Bulma.p dkim.p ]
|
||||
, HH.td_ [ Bulma.p $ CP.take 5 dkim.p ]
|
||||
, HH.td_ [ Bulma.p $ fromMaybe "" dkim.n ]
|
||||
, if rr.readonly
|
||||
then HH.td_ [ Bulma.btn_readonly ]
|
||||
else HH.td_ [ Bulma.btn_modify (CreateUpdateRRModal rr.rrid) ]
|
||||
|
|
|
@ -145,6 +145,7 @@ dkim_table_header
|
|||
, HH.th_ [ HH.text "Hash algo" ]
|
||||
, HH.th_ [ HH.text "Signature algo" ]
|
||||
, HH.th_ [ HH.text "Public Key" ]
|
||||
, HH.th_ [ HH.text "Notes" ]
|
||||
, HH.th_ [ HH.text "" ]
|
||||
, HH.th_ [ HH.text "" ]
|
||||
]
|
||||
|
|
Loading…
Reference in New Issue