about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/microformats/parser.clj14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/microformats/parser.clj b/src/microformats/parser.clj
index 0b26372..4f63d55 100644
--- a/src/microformats/parser.clj
+++ b/src/microformats/parser.clj
@@ -92,6 +92,13 @@
   [root url]
   (url/resolve (get-base-url root) url))
 
+(defn get-value-title-class
+  "Get the value-title class of elements"
+  [elements]
+  (str/join " " (into [] ((comp (r/map :title)
+                                (r/map :attrs))
+                          elements))))
+
 (defn get-value-class
   "Get the value class of elements"
   [elements]
@@ -103,8 +110,11 @@
 (defn find-value-class
   "Find and get the value class of elements"
   [el]
-  (when-let [values (seq (html/select el [html/root :> :.value]))]
-    (get-value-class values)))
+  (anacond
+   (not-empty (html/select el [html/root :> :.value-title]))
+   (get-value-title-class %)
+   (not-empty (html/select el [html/root :> :.value ]))
+   (get-value-class %)))
 
 (declare parse-h)