@@ -47,6 +47,30 @@
4747 %+ turn
4848 entries
4949 |=(=entry hash.entry)
50+++ lengths-valid
51+ |= l=listing
52+ ?& (lte (lent (trip title.post.l)) 77)
53+ (lte (lent (trip description.post.l)) 256)
54+ (lte (lent tags.post.l) 8)
55+ (lte (lent (trip link.post.l)) 1.024)
56+ (lte (lent (trip image.post.l)) 1.024)
57+ ==
58+++ urls-valid
59+ |= l=listing
60+ =/ image
61+ ?: =(image.post.l '') 'X'
62+ (validate image.post.l)
63+ =/ link (validate link.post.l)
64+ &(!=(image ~) !=(link ~))
65+++ listing-valid
66+ |= l=listing
67+ =/ lengths (lengths-valid l)
68+ =/ urls (urls-valid l)
69+ :: ~& title.post.l
70+ :: ~& hash.l
71+ :: ~& ['urls' ?:(urls 'valid' 'invalid')]
72+ :: ~& ['lengths' ?:(lengths 'valid' 'invalid')]
73+ &(lengths urls)
5074++ delver
5175 |_ [=lookup =trigrams =phonetics =trail]
5276 ++ get
@@ -54,20 +78,7 @@
5478 [lookup trigrams phonetics trail]
5579 ++ catalog
5680 |= [=hash l=listing]
57− ?.
58− ?& (lte (lent (trip title.post.l)) 77)
59− (lte (lent (trip description.post.l)) 256)
60− (lte (lent tags.post.l) 8)
61− (lte (lent (trip link.post.l)) 1.024)
62− (lte (lent (trip image.post.l)) 1.024)
63− ==
64− get
65− =/ image
66− ?: =(image.post.l '') 'X'
67− (validate image.post.l)
68− =/ link (validate link.post.l)
69− ?: |(=(image ~) =(link ~))
70− get
81+ ?. (listing-valid l) get
7182 =/ entries=^lookup
7283 %- malt
7384 ^- (list [@t (list entry)])