Zone Interface: group RO RRs and a better display of RRs in general.
parent
419d68784a
commit
d6f85b5a00
|
@ -19,8 +19,8 @@ module App.ZoneInterface where
|
|||
|
||||
import Prelude (Unit, unit, void
|
||||
, bind, pure
|
||||
, comparing, discard, map, show
|
||||
, ($), (/=), (<<<), (<>), (==), (>), (#))
|
||||
, not, comparing, discard, map, show
|
||||
, (&&), ($), (/=), (<<<), (<>), (==), (>), (#))
|
||||
|
||||
import Data.Array as A
|
||||
import Data.Int (fromString)
|
||||
|
@ -691,21 +691,28 @@ render_resources []
|
|||
, Bulma.subtitle "No records for now"
|
||||
]
|
||||
render_resources records
|
||||
= Bulma.box [ render_soa $ A.head $ A.filter (\rr -> rr.rrtype == "SOA") records
|
||||
, basic_records_section
|
||||
, mx_records_section
|
||||
, srv_records_section
|
||||
]
|
||||
= HH.div_ [ render_soa $ A.head $ A.filter (\rr -> rr.rrtype == "SOA") records
|
||||
, Bulma.box [ basic_records_section ]
|
||||
, Bulma.box [ mx_records_section ]
|
||||
, Bulma.box [ srv_records_section ]
|
||||
, Bulma.box_ C.has_background_warning_light [ basic_readonly_records_section ]
|
||||
]
|
||||
where
|
||||
all_basic_rr = A.filter (\rr -> A.elem rr.rrtype baseRecords) records
|
||||
all_basic_rr = A.filter (\rr -> A.elem rr.rrtype baseRecords && not rr.readonly) records
|
||||
all_basic_ro_rr = A.filter (\rr -> A.elem rr.rrtype baseRecords && rr.readonly) records
|
||||
all_mx_rr = A.filter (\rr -> rr.rrtype == "MX") records
|
||||
all_srv_rr = A.filter (\rr -> rr.rrtype == "SRV") records
|
||||
|
||||
basic_records_section
|
||||
= if A.length all_basic_rr > 0
|
||||
then Bulma.table [] [ Bulma.simple_table_header, render_basic_records ]
|
||||
then Bulma.table [] [ Bulma.simple_table_header, render_basic_records all_basic_rr]
|
||||
else Bulma.p "no basic records"
|
||||
|
||||
basic_readonly_records_section
|
||||
= if A.length all_basic_rr > 0
|
||||
then Bulma.table [] [ Bulma.simple_table_header_ro, render_basic_records all_basic_ro_rr]
|
||||
else Bulma.p "no read only records?"
|
||||
|
||||
mx_records_section
|
||||
= if A.length all_mx_rr > 0
|
||||
then Bulma.table [] [ Bulma.mx_table_header, render_mx_records ]
|
||||
|
@ -716,7 +723,7 @@ render_resources records
|
|||
then Bulma.table [] [ Bulma.srv_table_header, render_srv_records ]
|
||||
else Bulma.p "no srv records"
|
||||
|
||||
render_basic_records = table_content_with_separations all_basic_rr
|
||||
render_basic_records _rrs = table_content_with_separations _rrs
|
||||
render_mx_records = table_content all_mx_rr
|
||||
render_srv_records = table_content all_srv_rr
|
||||
|
||||
|
|
|
@ -63,6 +63,20 @@ simple_table_header
|
|||
, HH.th_ [ HH.text "Name" ]
|
||||
, HH.th_ [ HH.text "TTL" ]
|
||||
, HH.th_ [ HH.text "Target" ]
|
||||
, HH.th_ [ HH.text "" ]
|
||||
, HH.th_ [ HH.text "" ]
|
||||
]
|
||||
]
|
||||
|
||||
simple_table_header_ro :: forall w i. HH.HTML w i
|
||||
simple_table_header_ro
|
||||
= HH.thead_ [ HH.tr [ HP.classes C.has_background_warning_light ]
|
||||
[ HH.th [ HP.style "width: 50px;" ] [ HH.text "Type" ]
|
||||
, HH.th_ [ HH.text "Name" ]
|
||||
, HH.th_ [ HH.text "TTL" ]
|
||||
, HH.th_ [ HH.text "Target" ]
|
||||
, HH.th_ [ HH.text "" ]
|
||||
, HH.th_ [ HH.text "" ]
|
||||
]
|
||||
]
|
||||
|
||||
|
@ -73,6 +87,8 @@ mx_table_header
|
|||
, HH.th_ [ HH.text "TTL" ]
|
||||
, HH.th_ [ HH.text "Priority" ]
|
||||
, HH.th_ [ HH.text "Target" ]
|
||||
, HH.th_ [ HH.text "" ]
|
||||
, HH.th_ [ HH.text "" ]
|
||||
]
|
||||
]
|
||||
|
||||
|
@ -86,6 +102,8 @@ srv_table_header
|
|||
, HH.th_ [ HH.text "Weight" ]
|
||||
, HH.th_ [ HH.text "Port" ]
|
||||
, HH.th_ [ HH.text "Target" ]
|
||||
, HH.th_ [ HH.text "" ]
|
||||
, HH.th_ [ HH.text "" ]
|
||||
]
|
||||
]
|
||||
|
||||
|
@ -279,6 +297,9 @@ p_ classes str = HH.p [HP.classes classes] [ HH.text str ]
|
|||
box :: forall w i. Array (HH.HTML w i) -> HH.HTML w i
|
||||
box = HH.div [HP.classes C.box]
|
||||
|
||||
box_ :: forall w i. Array HH.ClassName -> Array (HH.HTML w i) -> HH.HTML w i
|
||||
box_ classes = HH.div [HP.classes $ C.box <> classes]
|
||||
|
||||
option :: forall w i. String -> HH.HTML w i
|
||||
option value = HH.option_ [HH.text value]
|
||||
|
||||
|
|
Loading…
Reference in New Issue