blob: 2e45463c521adba2fba96cac0ffc002ce586d345 (
plain)
| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
 | module View.Player exposing (get_html)
-- Elm -------------------------------------------------------------------------
import Html
import Html.Attributes
-- import Html.Events
-- Extension -------------------------------------------------------------------
import Struct.BattleSummary
import Struct.Event
import Struct.Player
--------------------------------------------------------------------------------
-- LOCAL -----------------------------------------------------------------------
--------------------------------------------------------------------------------
get_item_html : (
      String ->
      String ->
      Struct.BattleSummary.Type ->
      (Html.Html Struct.Event.Type)
   )
get_item_html url_prefix additional_class item =
   (Html.a
      [
         (Html.Attributes.class additional_class),
         (Html.Attributes.href
            (
               url_prefix
               ++ (Struct.BattleSummary.get_id item)
            )
         )
      ]
      [
         (Html.div
            [
               (Html.Attributes.class "battle-summary-name")
            ]
            [
               (Html.text (Struct.BattleSummary.get_name item))
            ]
         ),
         (Html.div
            [
               (Html.Attributes.class "battle-summary-date")
            ]
            [
               (Html.text (Struct.BattleSummary.get_last_edit item))
            ]
         )
      ]
   )
--------------------------------------------------------------------------------
-- EXPORTED --------------------------------------------------------------------
--------------------------------------------------------------------------------
get_html : Struct.Player.Type -> (Html.Html Struct.Event.Type)
get_html player =
   let
      url_prefix = (Struct.Player.get_url_prefix player)
   in
      (Html.div
         [
            (Html.Attributes.class "player-summary")
         ]
         [
            (Html.div
               [
                  (Html.Attributes.class "player-summary-listing-header")
               ]
               [
                  (Html.text (Struct.Player.get_username player))
               ]
            ),
            (Html.div
               [
                  (Html.Attributes.class "player-summary-listing-body")
               ]
               (
                  (List.map
                     (get_item_html url_prefix "campaign-link")
                     (Struct.Player.get_campaigns player)
                  )
                  ++
                  (List.map
                     (get_item_html url_prefix "invasion-link")
                     (Struct.Player.get_invasions player)
                  )
                  ++
                  (List.map
                     (get_item_html url_prefix "event-link")
                     (Struct.Player.get_events player)
                  )
               )
            )
         ]
      )
 |