loyalty ranges are mostly working

This commit is contained in:
Ryan Carpenter
2016-09-18 12:42:55 +08:00
parent cfb541a0a2
commit 9f82f96b3c
9 changed files with 2102 additions and 71 deletions
+41 -8
View File
@@ -39,7 +39,6 @@ html, body, ui-gmap-google-map, .angular-google-map, .angular-google-map-contain
border-right: 2px rgb(191, 70, 39);
}
#side {
position: absolute;
top: 0;
@@ -67,7 +66,8 @@ html, body, ui-gmap-google-map, .angular-google-map, .angular-google-map-contain
cursor: pointer;
}
#side h1 {
#side h1,
#legend h1 {
font-family: 'Cutive', serif;
font-size: 1.5em;
line-height: 1.5em;
@@ -78,29 +78,33 @@ html, body, ui-gmap-google-map, .angular-google-map, .angular-google-map-contain
cursor: pointer;
}
#side .list-group {
.list-group {
margin: 10px 2px 2px 2px;
}
#side .list-group a:hover,
#side .list-group button:hover {
.list-group a:hover,
.list-group button:hover {
color: black !important;
text-decoration: none;
}
#side .list-group-item {
#navigation .list-group button:hover {
color: white !important;
}
.list-group-item {
background-color: transparent;
border: none;
color: white !important;
}
#side .list-group-item img {
.list-group-item img {
height: 20px;
margin-left: -5px;
margin-right: 2px;
}
#side .list-group-item a {
.list-group-item a {
color: white !important;
}
@@ -257,3 +261,32 @@ html, body, ui-gmap-google-map, .angular-google-map, .angular-google-map-contain
border: 1px solid black;
padding: 2px;
}
#legend {
position: absolute;
bottom: 0;
background-color: rgb(191, 70, 39);
color: white;
padding: 2px 8px;
width: 300px;
}
.legend-color {
display: inline-block;
float: right;
width: 20px;
height: 20px;
}
#legend .list-group {
margin-top: 0px;
}
#legend .list-group-item {
padding: 1px;
}
#legend .list-group a:hover,
#side .list-group a:hover {
background-color: transparent;
}
+18 -17
View File
@@ -1,17 +1,18 @@
key,title,name,color,
Robert_Baratheon,King,Robert Baratheon,#F3CD18,
Jeor_Mormont,Lord Commander,Jeor Mormont,#000000,
Mance_Rayder,"""King Beyond the Wall""",Mance Rayder,#3F7AE4,
Joffrey_Baratheon,King,Joffrey Baratheon,#FF2700,
Eddard_Stark,Lord,Eddard Stark (Hostage),#505050,
Hoster_Tully,Lord,Hoster Tully,#0606BB,
Stannis_Baratheon,King,Stannis Baratheon,#C68D14,
Renly_Baratheon,King,Renly Baratheon,#C6A714,
Lord_Robb_Stark,King,Robb Stark,#606060,
King_Robb_Stark,Lord,Robb Stark,#606060,
Balon_Greyjoy,King,Balon Greyjoy,#C67400,
Jon_Snow,Lord Commander,Jon Snow,#000000,
Tommen_Baratheon,King,Tommen Baratheon,#FF2700,
Daenerys_Targaryen,Queen,Daenerys Targaryen,#000000,
Euron_Greyjoy,King,Euron Greyjoy,#C67400,
Cersei_Lannister,Queen,Cersei Lannister,#B80000
key,title,name,house,color,firstChapter,lastChapter,firstEpisode,lastEpisode
Robert_Baratheon,King,Robert Baratheon,House_Baratheon,#F3CD18,AGOT-0,AGOT-46,S1E01,S1E06
Jeor_Mormont,Lord Commander,Jeor Mormont,Night%27s_Watch,#000000,AGOT-0,ASOS-33,S1E01,S3E03
Free_folk,,Free Folk,Free_folk,#3F7AE4,AGOT-0,ASOS-72,S1E01,S4E08
Joffrey_Baratheon,King,Joffrey Baratheon,House_Baratheon_of_King%27s_Landing,#FF2700,AGOT-47,ASOS-59,S1E07,S4E01
Stannis_Baratheon,King,Stannis Baratheon,House_Baratheon_of_Dragonstone,#C68D14,AGOT-47,TWOW-???,S1E07,S6E10
Renly_Baratheon,King,Renly Baratheon,House_Baratheon,#C6A714,AGOT-69,ACOK-44,S1E10,S6E10
Robb_Stark,King,Robb Stark,House_Stark,#606060,AGOT-71,ASOS-50,,
Balon_Greyjoy,King,Balon Greyjoy,House_Greyjoy,#C67400,ACOK-46,ASOS-44,,
Night%27s_Watch,Leaderless,Night's Watch,Night%27s_Watch,#000000,ASOS-33,ASOS-78,,
Jon_Snow,Lord Commander,Jon Snow,Night%27s_Watch,#000000,ASOS-79,ADWD-68,,
Tommen_Baratheon,King,Tommen Baratheon,House_Baratheon_of_King%27s_Landing,#FF2700,ASOS-60,TWOW-???,,
Daenerys_Targaryen,Queen,Daenerys Targaryen,House_Targaryen,#000000,ASOS-71,TWOW-???,,
Kingsmoot,Awaiting,Kingsmoot,House_Greyjoy,#C67400,ASOS-45,AFFC-18,,
Euron_Greyjoy,King,Euron Greyjoy,House_Greyjoy,#C67400,AFFC-19,TWOW-???,,
Aegon_Targaryen_(son_of_Rhaegar)-6,King,Aegon Targaryen,House_Targaryen,#000000,ADWD-61,TWOW-???,,
Night%27s_Watch,Leaderless,Night's Watch,Night%27s_Watch,#000000,ADWD-69,TWOW-???,,
Cersei_Lannister,Queen,Cersei Lannister,House_Lannister,#B80000,,,,
1 key title name house color firstChapter lastChapter firstEpisode lastEpisode
2 Robert_Baratheon King Robert Baratheon House_Baratheon #F3CD18 AGOT-0 AGOT-46 S1E01 S1E06
3 Jeor_Mormont Lord Commander Jeor Mormont Night%27s_Watch #000000 AGOT-0 ASOS-33 S1E01 S3E03
4 Mance_Rayder Free_folk "King Beyond the Wall" Mance Rayder Free Folk Free_folk #3F7AE4 AGOT-0 ASOS-72 S1E01 S4E08
5 Joffrey_Baratheon King Joffrey Baratheon House_Baratheon_of_King%27s_Landing #FF2700 AGOT-47 ASOS-59 S1E07 S4E01
6 Eddard_Stark Stannis_Baratheon Lord King Eddard Stark (Hostage) Stannis Baratheon House_Baratheon_of_Dragonstone #505050 #C68D14 AGOT-47 TWOW-??? S1E07 S6E10
7 Hoster_Tully Renly_Baratheon Lord King Hoster Tully Renly Baratheon House_Baratheon #0606BB #C6A714 AGOT-69 ACOK-44 S1E10 S6E10
8 Stannis_Baratheon Robb_Stark King Stannis Baratheon Robb Stark House_Stark #C68D14 #606060 AGOT-71 ASOS-50
9 Renly_Baratheon Balon_Greyjoy King Renly Baratheon Balon Greyjoy House_Greyjoy #C6A714 #C67400 ACOK-46 ASOS-44
10 Lord_Robb_Stark Night%27s_Watch King Leaderless Robb Stark Night's Watch Night%27s_Watch #606060 #000000 ASOS-33 ASOS-78
11 King_Robb_Stark Jon_Snow Lord Lord Commander Robb Stark Jon Snow Night%27s_Watch #606060 #000000 ASOS-79 ADWD-68
12 Balon_Greyjoy Tommen_Baratheon King Balon Greyjoy Tommen Baratheon House_Baratheon_of_King%27s_Landing #C67400 #FF2700 ASOS-60 TWOW-???
13 Jon_Snow Daenerys_Targaryen Lord Commander Queen Jon Snow Daenerys Targaryen House_Targaryen #000000 ASOS-71 TWOW-???
14 Tommen_Baratheon Kingsmoot King Awaiting Tommen Baratheon Kingsmoot House_Greyjoy #FF2700 #C67400 ASOS-45 AFFC-18
15 Daenerys_Targaryen Euron_Greyjoy Queen King Daenerys Targaryen Euron Greyjoy House_Greyjoy #000000 #C67400 AFFC-19 TWOW-???
16 Euron_Greyjoy Aegon_Targaryen_(son_of_Rhaegar)-6 King Euron Greyjoy Aegon Targaryen House_Targaryen #C67400 #000000 ADWD-61 TWOW-???
17 Cersei_Lannister Night%27s_Watch Queen Leaderless Cersei Lannister Night's Watch Night%27s_Watch #B80000 #000000 ADWD-69 TWOW-???
18 Cersei_Lannister Queen Cersei Lannister House_Lannister #B80000
+3 -1
View File
@@ -10,7 +10,7 @@ Benjen_Stark,Benjen Stark,U,#B0B0B0,#FFFFFF,House_Stark,,
Jon_Snow,Jon Snow,J,#837171,#FFFFFF,House_Stark,,
Viserys_Targaryen,Viserys Targaryen,V,#000000,#FF0000,House_Targaryen,,
Daenerys_Targaryen,Daenerys Targaryen,D,#000000,#FF0000,House_Targaryen,,
Aegon_Targaryen,Aegon Targaryen,A,#000000,#FF0000,House_Targaryen,ADWD-18,never
Aegon_Targaryen_(son_of_Rhaegar),Aegon Targaryen,A,#000000,#FF0000,House_Targaryen,ADWD-18,never
Drogon,Drogon,d,#000000,#FF0000,,AGOT-72,S1E10
Rhaegal,Rhaegal,r,#000000,#FF0000,,AGOT-72,S1E10
Viserion,Viserion,v,#000000,#FF0000,,AGOT-72,S1E10
@@ -28,6 +28,7 @@ Renly_Baratheon,Renly Baratheon,r,#C6A714,#000000,House_Baratheon,,
Loras_Tyrell,Loras Tyrell,L,#006600,#FFFF00,House_Tyrell,,
Margaery_Tyrell,Margaery Tyrell,M,#027C02,#FFFF00,House_Tyrell,,
Olenna_Tyrell,Olenna Tyrell,O,#0D8F0D,#FFFF00,House_Tyrell,,
Balon_Greyjoy,Balon Greyjoy,B,#FF9700,#000000,House_Greyjoy,,
Theon_Greyjoy,Theon Greyjoy,T,#FF9700,#000000,House_Greyjoy,,
Asha_Greyjoy,Yara/Asha Greyjoy,Y,#E68801,#000000,House_Greyjoy,,
Euron_Greyjoy,Euron Greyjoy,E,#C67400,#000000,House_Greyjoy,,
@@ -39,6 +40,7 @@ Barristan_Selmy,Barristan Selmy,B,#A55D34,#FCFC06,House_Selmy,,
Petyr_Baelish,Petyr Baelish,P,#006300,#FFFFFF,House_Baelish,,
Jeor_Mormont,Jeor Mormont,J,#66C366,#000000,House_Mormont,,
Jorah_Mormont,Jorah Mormont,J,#66C366,#000000,House_Mormont,,
Quentyn_Martell,Quentyn Martell,Q,#AD011B,#000000,House_Martell,,
Arianne_Martell,Arianne Martell,A,#AD011B,#000000,House_Martell,0,never
Oberyn_Martell,Oberyn Martell,O,#96051A,#000000,House_Martell,,
Ellaria_Sand,Ellaria Sand,E,#942938,#000000,House_Martell,,
1 key name letter markerColor letterColor house firstChapter firstEpisode
10 Jon_Snow Jon Snow J #837171 #FFFFFF House_Stark
11 Viserys_Targaryen Viserys Targaryen V #000000 #FF0000 House_Targaryen
12 Daenerys_Targaryen Daenerys Targaryen D #000000 #FF0000 House_Targaryen
13 Aegon_Targaryen Aegon_Targaryen_(son_of_Rhaegar) Aegon Targaryen A #000000 #FF0000 House_Targaryen ADWD-18 never
14 Drogon Drogon d #000000 #FF0000 AGOT-72 S1E10
15 Rhaegal Rhaegal r #000000 #FF0000 AGOT-72 S1E10
16 Viserion Viserion v #000000 #FF0000 AGOT-72 S1E10
28 Loras_Tyrell Loras Tyrell L #006600 #FFFF00 House_Tyrell
29 Margaery_Tyrell Margaery Tyrell M #027C02 #FFFF00 House_Tyrell
30 Olenna_Tyrell Olenna Tyrell O #0D8F0D #FFFF00 House_Tyrell
31 Balon_Greyjoy Balon Greyjoy B #FF9700 #000000 House_Greyjoy
32 Theon_Greyjoy Theon Greyjoy T #FF9700 #000000 House_Greyjoy
33 Asha_Greyjoy Yara/Asha Greyjoy Y #E68801 #000000 House_Greyjoy
34 Euron_Greyjoy Euron Greyjoy E #C67400 #000000 House_Greyjoy
40 Petyr_Baelish Petyr Baelish P #006300 #FFFFFF House_Baelish
41 Jeor_Mormont Jeor Mormont J #66C366 #000000 House_Mormont
42 Jorah_Mormont Jorah Mormont J #66C366 #000000 House_Mormont
43 Quentyn_Martell Quentyn Martell Q #AD011B #000000 House_Martell
44 Arianne_Martell Arianne Martell A #AD011B #000000 House_Martell 0 never
45 Oberyn_Martell Oberyn Martell O #96051A #000000 House_Martell
46 Ellaria_Sand Ellaria Sand E #942938 #000000 House_Martell
+5 -4
View File
@@ -1,4 +1,5 @@
wikiKey,seatKey,lat,lng,img,clue,isGreat,firstChapter,lastChapter,firstEpisode,lastEpisode
Free_folk,,77.989,-124.1895,http://vignette2.wikia.nocookie.net/gameofthrones/images/c/c5/Free-Folk-Main-Shield.PNG/revision/latest/scale-to-width-down/50?cb=20160811070628,gathering in the Skirling Pass,FALSE,107,999,14,39
Night%27s_Watch,Castle_Black,,,http://awoiaf.westeros.org/images/thumb/4/47/Minigdn.png/109px-Minigdn.png,,TRUE,,,,
House_Stark,Winterfell,,,http://awoiaf.westeros.org/images/thumb/5/51/House_Stark.PNG/90px-House_Stark.PNG,,TRUE,0,118,0,14
House_Greyjoy,Winterfell,,,http://awoiaf.westeros.org/images/thumb/f/f3/Greyjoy_coat_sigil.png/120px-Greyjoy_coat_sigil.png,,TRUE,119,138,15,18
@@ -18,8 +19,8 @@ House_Baratheon_of_King%27s_Landing,King%27s_Landing,,,http://awoiaf.westeros.or
House_Tyrell,Highgarden,,,http://awoiaf.westeros.org/images/thumb/9/99/House_Tyrell.PNG/90px-House_Tyrell.PNG,,TRUE,,,,
House_Baratheon,Storm%27s_End,,,http://awoiaf.westeros.org/images/thumb/d/d1/House_Baratheon.PNG/50px-House_Baratheon.PNG,,TRUE,,,,
House_Martell,Sunspear,,,http://awoiaf.westeros.org/images/thumb/b/ba/House_Martell.PNG/92px-House_Martell.PNG,,TRUE,,,,
House_Baratheon_of_Dragonstone,Dragonstone,,,http://awoiaf.westeros.org/images/thumb/d/d1/House_Baratheon.PNG/50px-House_Baratheon.PNG,,FALSE,0,48,0,5
House_Baratheon_of_Dragonstone,Dragonstone,,,http://awoiaf.westeros.org/images/thumb/6/61/Baratheon_DS.png/102px-Baratheon_DS.png,,TRUE,49,260,6,99
House_Baratheon_of_Dragonstone,Dragonstone,,,http://awoiaf.westeros.org/images/thumb/2/2e/Stannis_sigil_coat.png/120px-Stannis_sigil_coat.png,,FALSE,0,48,0,5
House_Baratheon_of_Dragonstone,Dragonstone,,,http://awoiaf.westeros.org/images/thumb/2/2e/Stannis_sigil_coat.png/120px-Stannis_sigil_coat.png,,TRUE,49,260,6,99
House_Targaryen,Meereen,,,http://awoiaf.westeros.org/images/thumb/4/43/House_Targaryen.PNG/92px-House_Targaryen.PNG,,TRUE,214,999,99,99
House_Cerwyn,Castle_Cerwyn,,,http://awoiaf.westeros.org/images/thumb/d/d8/House_Cerwyn.PNG/90px-House_Cerwyn.PNG,,,,,,
House_Dustin,Barrowton,,,http://awoiaf.westeros.org/images/thumb/7/74/House_Dustin.PNG/50px-House_Dustin.PNG,,,,,,
@@ -210,8 +211,8 @@ House_Redwyne,,-47.1,-156.533,http://awoiaf.westeros.org/images/thumb/b/b1/House
House_Rowan,Goldengrove,,,http://awoiaf.westeros.org/images/thumb/d/dc/House_Rowan.PNG/50px-House_Rowan.PNG,,,,,,
House_Shermer,,-35.5322,-147.744,http://awoiaf.westeros.org/images/thumb/c/ca/Shermer.png/109px-Shermer.png,the Reach at Smithyton,,,,,
House_Tarly,Horn_Hill,,,http://awoiaf.westeros.org/images/thumb/d/d8/Tarly.png/50px-Tarly.png,,,,,,
House_Tyrell_of_Brightwater_Keep,Brightwater_Keep,,,http://awoiaf.westeros.org/images/thumb/9/9c/Garlan_Tyrell_COA.png/90px-Garlan_Tyrell_COA.png,,,,,,
House_Florent,Brightwater_Keep,,,http://awoiaf.westeros.org/images/thumb/c/c1/House_Florent.PNG/50px-House_Florent.PNG,,,,,,
House_Tyrell_of_Brightwater_Keep,Brightwater_Keep,,,http://awoiaf.westeros.org/images/thumb/9/9c/Garlan_Tyrell_COA.png/90px-Garlan_Tyrell_COA.png,,,162,999,,
House_Florent,Brightwater_Keep,,,http://awoiaf.westeros.org/images/thumb/c/c1/House_Florent.PNG/50px-House_Florent.PNG,,,0,161,0,99
House_Fossoway_of_Cider_Hall,Cider_Hall,,,http://awoiaf.westeros.org/images/thumb/4/43/House_Fossoway_red.png/50px-House_Fossoway_red.png,,,,,,
House_Fossoway_of_New_Barrel,,-17.1408,-118.828,http://awoiaf.westeros.org/images/thumb/7/77/House_Fossoway_green.png/50px-House_Fossoway_green.png,New Barrel,,,,,
House_Varner,,-6.0531,-129.551,http://awoiaf.westeros.org/images/thumb/3/33/House_Varner.PNG/112px-House_Varner.PNG,the Reach,,,,,
1 wikiKey seatKey lat lng img clue isGreat firstChapter lastChapter firstEpisode lastEpisode
2 Free_folk 77.989 -124.1895 http://vignette2.wikia.nocookie.net/gameofthrones/images/c/c5/Free-Folk-Main-Shield.PNG/revision/latest/scale-to-width-down/50?cb=20160811070628 gathering in the Skirling Pass FALSE 107 999 14 39
3 Night%27s_Watch Castle_Black http://awoiaf.westeros.org/images/thumb/4/47/Minigdn.png/109px-Minigdn.png TRUE
4 House_Stark Winterfell http://awoiaf.westeros.org/images/thumb/5/51/House_Stark.PNG/90px-House_Stark.PNG TRUE 0 118 0 14
5 House_Greyjoy Winterfell http://awoiaf.westeros.org/images/thumb/f/f3/Greyjoy_coat_sigil.png/120px-Greyjoy_coat_sigil.png TRUE 119 138 15 18
19 House_Tyrell Highgarden http://awoiaf.westeros.org/images/thumb/9/99/House_Tyrell.PNG/90px-House_Tyrell.PNG TRUE
20 House_Baratheon Storm%27s_End http://awoiaf.westeros.org/images/thumb/d/d1/House_Baratheon.PNG/50px-House_Baratheon.PNG TRUE
21 House_Martell Sunspear http://awoiaf.westeros.org/images/thumb/b/ba/House_Martell.PNG/92px-House_Martell.PNG TRUE
22 House_Baratheon_of_Dragonstone Dragonstone http://awoiaf.westeros.org/images/thumb/d/d1/House_Baratheon.PNG/50px-House_Baratheon.PNG http://awoiaf.westeros.org/images/thumb/2/2e/Stannis_sigil_coat.png/120px-Stannis_sigil_coat.png FALSE 0 48 0 5
23 House_Baratheon_of_Dragonstone Dragonstone http://awoiaf.westeros.org/images/thumb/6/61/Baratheon_DS.png/102px-Baratheon_DS.png http://awoiaf.westeros.org/images/thumb/2/2e/Stannis_sigil_coat.png/120px-Stannis_sigil_coat.png TRUE 49 260 6 99
24 House_Targaryen Meereen http://awoiaf.westeros.org/images/thumb/4/43/House_Targaryen.PNG/92px-House_Targaryen.PNG TRUE 214 999 99 99
25 House_Cerwyn Castle_Cerwyn http://awoiaf.westeros.org/images/thumb/d/d8/House_Cerwyn.PNG/90px-House_Cerwyn.PNG
26 House_Dustin Barrowton http://awoiaf.westeros.org/images/thumb/7/74/House_Dustin.PNG/50px-House_Dustin.PNG
211 House_Rowan Goldengrove http://awoiaf.westeros.org/images/thumb/d/dc/House_Rowan.PNG/50px-House_Rowan.PNG
212 House_Shermer -35.5322 -147.744 http://awoiaf.westeros.org/images/thumb/c/ca/Shermer.png/109px-Shermer.png the Reach at Smithyton
213 House_Tarly Horn_Hill http://awoiaf.westeros.org/images/thumb/d/d8/Tarly.png/50px-Tarly.png
214 House_Tyrell_of_Brightwater_Keep Brightwater_Keep http://awoiaf.westeros.org/images/thumb/9/9c/Garlan_Tyrell_COA.png/90px-Garlan_Tyrell_COA.png 162 999
215 House_Florent Brightwater_Keep http://awoiaf.westeros.org/images/thumb/c/c1/House_Florent.PNG/50px-House_Florent.PNG 0 161 0 99
216 House_Fossoway_of_Cider_Hall Cider_Hall http://awoiaf.westeros.org/images/thumb/4/43/House_Fossoway_red.png/50px-House_Fossoway_red.png
217 House_Fossoway_of_New_Barrel -17.1408 -118.828 http://awoiaf.westeros.org/images/thumb/7/77/House_Fossoway_green.png/50px-House_Fossoway_green.png New Barrel
218 House_Varner -6.0531 -129.551 http://awoiaf.westeros.org/images/thumb/3/33/House_Varner.PNG/112px-House_Varner.PNG the Reach
File diff suppressed because it is too large Load Diff
+98 -7
View File
@@ -1,8 +1,99 @@
key,firstChapter,lastChapter,firstEpisode,lastEpisode
Robert_Baratheon-1,AGOT-1,AGOT-46,S1E01,S1E06
Jeor_Mormont-1,AGOT-1,ASOS-33,S1E01,S3E03
Mance_Rayder-1,AGOT-1,ASOS-72,S1E01,S4E08
Undeclared-1,AGOT-47,,S1E07,
Stannis_Baratheon-1,AGOT-47,,S1E07,
Joffrey_Baratheon-1,AGOT-47,,S1E07,
Renly_Baratheon-1,AGOT-47,,S1E07,
Robert_Baratheon-1,AGOT-0,AGOT-46,S1E01,S1E06
Jeor_Mormont-1,AGOT-0,ASOS-33,S1E01,S3E03
Free_folk-1,AGOT-0,ASOS-72,S1E01,S4E08
Stannis_Baratheon-1,AGOT-47,AGOT-70,S1E07,S1E09
Stannis_Baratheon-2,AGOT-47,ASOS-35,S1E07,S6E10
Joffrey_Baratheon-1,AGOT-47,ASOS-59,S1E07,S4E01
Joffrey_Baratheon-2,AGOT-47,ACOK-34,S1E07,S4E01
Joffrey_Baratheon-3,AGOT-56,ACOK-6,S1E07,S4E01
Joffrey_Baratheon-4,AGOT-56,ACOK-6,S1E07,S4E01
Stannis_Baratheon-3,AGOT-59,AGOT-70,S1E09,S1E09
Stannis_Baratheon-4,AGOT-63,AGOT-70,,
Renly_Baratheon-1,AGOT-69,ACOK-32,S1E10,S6E10
Robb_Stark-1,AGOT-71,ACOK-45,S1E10,S6E10
Robb_Stark-2,AGOT-71,ACOK-6,S1E10,S6E10
Joffrey_Baratheon-5,ACOK-7,ACOK-46,S1E08,S4E01
Robb_Stark-3,ACOK-7,ACOK-46,,
Joffrey_Baratheon-6,ACOK-20,ASOS-59,,
Renly_Baratheon-2,ACOK-33,ACOK-44,,
Stannis_Baratheon-5,ACOK-33,ACOK-44,,
Stannis_Baratheon-6,ACOK-33,TWOW-???,,
Stannis_Baratheon-7,ACOK-33,ACOK-61,,
Robb_Stark-4,ACOK-35,ASOS-50,,
Joffrey_Baratheon-8,ACOK-35,ACOK-38,,
Robb_Stark-5,ACOK-39,ASOS-50,,
Joffrey_Baratheon-9,ACOK-39,ACOK-54,,
Stannis_Baratheon-8,ACOK-45,ACOK-61,,
Balon_Greyjoy-1,ACOK-46,ASOS-44,,
Balon_Greyjoy-2,ACOK-46,ACOK-65,,
Robb_Stark-6,ACOK-46,ACOK-49,,
Robb_Stark-7,ACOK-47,ACOK-63,,
Joffrey_Baratheon-10,ACOK-47,ACOK-63,,
Balon_Greyjoy-3,ACOK-50,ASOS-44,,
Balon_Greyjoy-4,ACOK-50,ASOS-44,,
Robb_Stark-8,ACOK-50,ACOK-65,,
Robb_Stark-9,ACOK-55,ASOS-50,,
Joffrey_Baratheon-11,ACOK-55,ASOS-50,,
Joffrey_Baratheon-12,ACOK-62,ASOS-59,,
Joffrey_Baratheon-12B,ACOK-62,ASOS-59,,
Stannis_Baratheon-9,ACOK-62,TWOW-???,,
Stannis_Baratheon-10,ACOK-62,TWOW-???,,
Stannis_Baratheon-11,ACOK-62,TWOW-???,,
Robb_Stark-10,ACOK-64,ASOS-13,,
Robb_Stark-11,ACOK-66,ASOS-50,,
Robb_Stark-12,ASOS-14,ASOS-50,,
Night%27s_Watch-1,ASOS-33,ASOS-78,,
Joffrey_Baratheon-13,ASOS-36,ASOS-59,,
Stannis_Baratheon-12,ASOS-36,TWOW-???,,
Kingsmoot-1,ASOS-45,AFFC-18,,
Kingsmoot-2,ASOS-45,AFFC-18,,
Kingsmoot-3,ASOS-45,AFFC-18,,
Joffrey_Baratheon-14,ASOS-51,ASOS-59,,
Joffrey_Baratheon-15,ASOS-51,ASOS-59,,
Joffrey_Baratheon-16,ASOS-51,ASOS-59,,
Free_folk-2,,,,
Tommen_Baratheon-1A,ASOS-60,ASOS-75,,
Tommen_Baratheon-1B,ASOS-60,ASOS-61,,
Tommen_Baratheon-1C,ASOS-60,TWOW-???,,
Tommen_Baratheon-1D,ASOS-60,TWOW-???,,
Tommen_Baratheon-1E,ASOS-60,AFFC-28,,
Tommen_Baratheon-1F,ASOS-60,ADWD-60,,
Tommen_Baratheon-1G,ASOS-60,TWOW-???,,
Tommen_Baratheon-2,ASOS-62,AFFC-43,,
Tommen_Baratheon-3,ASOS-68,TWOW-???,,
Free_folk-2,,,,
Daenerys_Targaryen-1,ASOS-71,TWOW-???,,
Tommen_Baratheon-4,ASOS-74,TWOW-???,,
Kingsmoot-4,ASOS-76,AFFC-18,,
Tommen_Baratheon-5,ASOS-76,ADWD-2,,
Jon_Snow-1,ASOS-79,ADWD-68,,
Euron_Greyjoy-1A,AFFC-19,TWOW-???,,
Euron_Greyjoy-1B,AFFC-19,ADWD-19,,
Euron_Greyjoy-1C,AFFC-19,ADWD-41,,
Euron_Greyjoy-1D,AFFC-19,TWOW-???,,
Euron_Greyjoy-2,AFFC-29,TWOW-???,,
Tommen_Baratheon-6,AFFC-29,TWOW-???,,
Tommen_Baratheon-7,AFFC-44,ADWD-47,,
Stannis_Baratheon-13,ADWD-3,ADWD-31,,
Tommen_Baratheon-8,ADWD-3,ADWD-19,,
Tommen_Baratheon-9,ADWD-20,ADWD-31,,
Tommen_Baratheon-10,ADWD-32,ADWD-41,,
Stannis_Baratheon-14,ADWD-42,TWOW-???,,
Tommen_Baratheon-11,ADWD-42,TWOW-???,,
Tommen_Baratheon-12,ADWD-48,TWOW-???,,
Aegon_Targaryen_(son_of_Rhaegar)-1,ADWD-61,TWOW-???,,
Tommen_Baratheon-13,ADWD-61,TWOW-???,,
Night%27s_Watch-2,ADWD-69,TWOW-???,,
Aegon_Targaryen_(son_of_Rhaegar)-2,TWOW-???,TWOW-???,,
Tommen_Baratheon-14,TWOW-???,TWOW-???,,
Stannis_Baratheon-15,TWOW-???,TWOW-???,,
Aegon_Targaryen_(son_of_Rhaegar)-3,TWOW-???,TWOW-???,,
Tommen_Baratheon-15,TWOW-???,TWOW-???,,
Aegon_Targaryen_(son_of_Rhaegar)-4,TWOW-???,TWOW-???,,
Tommen_Baratheon-16,TWOW-???,TWOW-???,,
Aegon_Targaryen_(son_of_Rhaegar)-5,TWOW-???,TWOW-???,,
Tommen_Baratheon-17,TWOW-???,TWOW-???,,
Stannis_Baratheon-16,TWOW-???,TWOW-???,,
Aegon_Targaryen_(son_of_Rhaegar)-6,TWOW-???,TWOW-???,,
Tommen_Baratheon-18,TWOW-???,TWOW-???,,
1 key firstChapter lastChapter firstEpisode lastEpisode
2 Robert_Baratheon-1 AGOT-1 AGOT-0 AGOT-46 S1E01 S1E06
3 Jeor_Mormont-1 AGOT-1 AGOT-0 ASOS-33 S1E01 S3E03
4 Mance_Rayder-1 Free_folk-1 AGOT-1 AGOT-0 ASOS-72 S1E01 S4E08
5 Undeclared-1 Stannis_Baratheon-1 AGOT-47 AGOT-70 S1E07 S1E09
6 Stannis_Baratheon-1 Stannis_Baratheon-2 AGOT-47 ASOS-35 S1E07 S6E10
7 Joffrey_Baratheon-1 AGOT-47 ASOS-59 S1E07 S4E01
8 Renly_Baratheon-1 Joffrey_Baratheon-2 AGOT-47 ACOK-34 S1E07 S4E01
9 Joffrey_Baratheon-3 AGOT-56 ACOK-6 S1E07 S4E01
10 Joffrey_Baratheon-4 AGOT-56 ACOK-6 S1E07 S4E01
11 Stannis_Baratheon-3 AGOT-59 AGOT-70 S1E09 S1E09
12 Stannis_Baratheon-4 AGOT-63 AGOT-70
13 Renly_Baratheon-1 AGOT-69 ACOK-32 S1E10 S6E10
14 Robb_Stark-1 AGOT-71 ACOK-45 S1E10 S6E10
15 Robb_Stark-2 AGOT-71 ACOK-6 S1E10 S6E10
16 Joffrey_Baratheon-5 ACOK-7 ACOK-46 S1E08 S4E01
17 Robb_Stark-3 ACOK-7 ACOK-46
18 Joffrey_Baratheon-6 ACOK-20 ASOS-59
19 Renly_Baratheon-2 ACOK-33 ACOK-44
20 Stannis_Baratheon-5 ACOK-33 ACOK-44
21 Stannis_Baratheon-6 ACOK-33 TWOW-???
22 Stannis_Baratheon-7 ACOK-33 ACOK-61
23 Robb_Stark-4 ACOK-35 ASOS-50
24 Joffrey_Baratheon-8 ACOK-35 ACOK-38
25 Robb_Stark-5 ACOK-39 ASOS-50
26 Joffrey_Baratheon-9 ACOK-39 ACOK-54
27 Stannis_Baratheon-8 ACOK-45 ACOK-61
28 Balon_Greyjoy-1 ACOK-46 ASOS-44
29 Balon_Greyjoy-2 ACOK-46 ACOK-65
30 Robb_Stark-6 ACOK-46 ACOK-49
31 Robb_Stark-7 ACOK-47 ACOK-63
32 Joffrey_Baratheon-10 ACOK-47 ACOK-63
33 Balon_Greyjoy-3 ACOK-50 ASOS-44
34 Balon_Greyjoy-4 ACOK-50 ASOS-44
35 Robb_Stark-8 ACOK-50 ACOK-65
36 Robb_Stark-9 ACOK-55 ASOS-50
37 Joffrey_Baratheon-11 ACOK-55 ASOS-50
38 Joffrey_Baratheon-12 ACOK-62 ASOS-59
39 Joffrey_Baratheon-12B ACOK-62 ASOS-59
40 Stannis_Baratheon-9 ACOK-62 TWOW-???
41 Stannis_Baratheon-10 ACOK-62 TWOW-???
42 Stannis_Baratheon-11 ACOK-62 TWOW-???
43 Robb_Stark-10 ACOK-64 ASOS-13
44 Robb_Stark-11 ACOK-66 ASOS-50
45 Robb_Stark-12 ASOS-14 ASOS-50
46 Night%27s_Watch-1 ASOS-33 ASOS-78
47 Joffrey_Baratheon-13 ASOS-36 ASOS-59
48 Stannis_Baratheon-12 ASOS-36 TWOW-???
49 Kingsmoot-1 ASOS-45 AFFC-18
50 Kingsmoot-2 ASOS-45 AFFC-18
51 Kingsmoot-3 ASOS-45 AFFC-18
52 Joffrey_Baratheon-14 ASOS-51 ASOS-59
53 Joffrey_Baratheon-15 ASOS-51 ASOS-59
54 Joffrey_Baratheon-16 ASOS-51 ASOS-59
55 Free_folk-2
56 Tommen_Baratheon-1A ASOS-60 ASOS-75
57 Tommen_Baratheon-1B ASOS-60 ASOS-61
58 Tommen_Baratheon-1C ASOS-60 TWOW-???
59 Tommen_Baratheon-1D ASOS-60 TWOW-???
60 Tommen_Baratheon-1E ASOS-60 AFFC-28
61 Tommen_Baratheon-1F ASOS-60 ADWD-60
62 Tommen_Baratheon-1G ASOS-60 TWOW-???
63 Tommen_Baratheon-2 ASOS-62 AFFC-43
64 Tommen_Baratheon-3 ASOS-68 TWOW-???
65 Free_folk-2
66 Daenerys_Targaryen-1 ASOS-71 TWOW-???
67 Tommen_Baratheon-4 ASOS-74 TWOW-???
68 Kingsmoot-4 ASOS-76 AFFC-18
69 Tommen_Baratheon-5 ASOS-76 ADWD-2
70 Jon_Snow-1 ASOS-79 ADWD-68
71 Euron_Greyjoy-1A AFFC-19 TWOW-???
72 Euron_Greyjoy-1B AFFC-19 ADWD-19
73 Euron_Greyjoy-1C AFFC-19 ADWD-41
74 Euron_Greyjoy-1D AFFC-19 TWOW-???
75 Euron_Greyjoy-2 AFFC-29 TWOW-???
76 Tommen_Baratheon-6 AFFC-29 TWOW-???
77 Tommen_Baratheon-7 AFFC-44 ADWD-47
78 Stannis_Baratheon-13 ADWD-3 ADWD-31
79 Tommen_Baratheon-8 ADWD-3 ADWD-19
80 Tommen_Baratheon-9 ADWD-20 ADWD-31
81 Tommen_Baratheon-10 ADWD-32 ADWD-41
82 Stannis_Baratheon-14 ADWD-42 TWOW-???
83 Tommen_Baratheon-11 ADWD-42 TWOW-???
84 Tommen_Baratheon-12 ADWD-48 TWOW-???
85 Aegon_Targaryen_(son_of_Rhaegar)-1 ADWD-61 TWOW-???
86 Tommen_Baratheon-13 ADWD-61 TWOW-???
87 Night%27s_Watch-2 ADWD-69 TWOW-???
88 Aegon_Targaryen_(son_of_Rhaegar)-2 TWOW-??? TWOW-???
89 Tommen_Baratheon-14 TWOW-??? TWOW-???
90 Stannis_Baratheon-15 TWOW-??? TWOW-???
91 Aegon_Targaryen_(son_of_Rhaegar)-3 TWOW-??? TWOW-???
92 Tommen_Baratheon-15 TWOW-??? TWOW-???
93 Aegon_Targaryen_(son_of_Rhaegar)-4 TWOW-??? TWOW-???
94 Tommen_Baratheon-16 TWOW-??? TWOW-???
95 Aegon_Targaryen_(son_of_Rhaegar)-5 TWOW-??? TWOW-???
96 Tommen_Baratheon-17 TWOW-??? TWOW-???
97 Stannis_Baratheon-16 TWOW-??? TWOW-???
98 Aegon_Targaryen_(son_of_Rhaegar)-6 TWOW-??? TWOW-???
99 Tommen_Baratheon-18 TWOW-??? TWOW-???
+43 -2
View File
@@ -62,13 +62,27 @@
<!-- Loyalty Range Polygons -->
<ui-gmap-polygons
ng-if="state!='edit'"
models="mapModels.loyaltyRanges"
path="'path'"
fill="'fill'"
stroke="'stroke'"
visible="options.politicalAllegiances"
clickable="'clickable'"
events="'events'"
idKey="'key'">
</ui-gmap-polygons>
<!-- <ui-gmap-polygons
ng-if="state=='edit'"
models="mapModels.editableLoyaltyRanges"
path="'path'"
fill="'fill'"
stroke="'stroke'"
static="''"
editable="''"
visible="options.politicalAllegiances"
idKey="'key'">
</ui-gmap-polygons> -->
<!-- Character Markers -->
<ui-gmap-markers
@@ -192,7 +206,7 @@
<i class="glyphicon glyphicon-remove pull-right" ng-click="toState('slider')"></i>
</h1>
<div class="list-group">
<a ng-href="{{locationDetail.url}}" role="button" class="list-group-item btn-clear">
<a ng-href="{{locationDetail.url}}" role="button" class="list-group-item btn-clear" ng-if="locationDetail.name">
<i class="glyphicon glyphicon glyphicon-map-marker"></i>
{{locationDetail.name}}
<i class="glyphicon glyphicon-menu-right pull-right"></i>
@@ -202,7 +216,7 @@
{{locationDetail.house}}
<i class="glyphicon glyphicon-menu-right pull-right"></i>
</a>
<a ng-href="{{locationDetail.direct}}" role="button" class="list-group-item btn-clear">
<a ng-href="{{locationDetail.direct}}" role="button" class="list-group-item btn-clear" ng-if="locationDetail.direct">
<i class="glyphicon glyphicon-pushpin"></i>
Direct Link
<i class="glyphicon glyphicon-menu-right pull-right"></i>
@@ -369,6 +383,18 @@
<hr>
<table>
<tbody ng-repeat="polygon in mapModels.editableLoyaltyRanges">
<tr ng-repeat="point in polygon.path">
<td>{{polygon.key}}</td>
<td>{{point.latitude | number:4}}</td>
<td>{{point.longitude | number:4}}</td>
</tr>
</tbody>
</table>
<hr>
<table>
<tbody>
<tr ng-repeat="point in clickHistory">
@@ -384,5 +410,20 @@
</div>
<div id="legend" ng-if="options.politicalAllegiances">
<h1>Ruling Sovereigns</h1>
<ul class="list-group" >
<li class="list-group-item" ng-repeat="belligerent in belligerents">
<a ng-href="{{belligerent.houseUrl}}" class="hasimg" target="_blank">
<img ng-src="{{belligerent.houseImg}}">
</a>
<a ng-href="{{belligerent.url}}" >{{belligerent.title}} {{belligerent.name}}</a>
<span class="legend-color" style="background-color: {{belligerent.color}};"></span>
</li>
</ul>
</div>
</body>
</html>
+30 -9
View File
@@ -14,7 +14,7 @@ angular.module('quartermaester')
characterPaths: true,
houseHeraldry: false,
geographicRegions: false,
politicalAllegiances: true,
politicalAllegiances: false,
characters: {}
};
$scope.map = {
@@ -36,7 +36,8 @@ angular.module('quartermaester')
smgMapType: smgMapType,
locationClick: locationClick,
heraldryClick: heraldryClick,
characterClick: characterClick
characterClick: characterClick,
loyaltyRangeClick: loyaltyRangeClick
};
$scope.mapModels = {
towns: [],
@@ -44,7 +45,8 @@ angular.module('quartermaester')
characters: [],
paths: [],
regions: [],
loyalties: []
politicalAllegiances: [],
editableLoyaltyRanges: []
};
$scope.episodes = [];
$scope.chapters = [];
@@ -68,6 +70,12 @@ angular.module('quartermaester')
function addToScope(d) {
qmData = d;
for (var i=0;i<qmData.loyaltyRanges.length; i++) {
qmData.loyaltyRanges[i].events = {
click: loyaltyRangeClick
};
}
// Add data from CSV files into $scope
$scope.episodes = qmData.episodes;
$scope.chapters = qmData.chapters;
@@ -91,6 +99,7 @@ angular.module('quartermaester')
$scope.mapModels.towns = $filter('qmSlider')(qmData.towns, $scope.slider);
$scope.mapModels.heraldry = $scope.options.houseHeraldry ? $filter('qmSlider')(qmData.heraldry, $scope.slider) : [];
$scope.mapModels.characters = $filter('qmSlider')(qmData.characterMarkers, $scope.slider, $scope.options);
$scope.belligerents = $filter('qmSlider')(qmData.belligerents, $scope.slider);
var staticPaths = $filter('qmSlider')(qmData.characterPaths, $scope.slider, $scope.options);
$scope.mapModels.paths = angular.copy(staticPaths);
$scope.mapModels.editablePaths = angular.copy(staticPaths).map(function(path) {
@@ -100,8 +109,11 @@ angular.module('quartermaester')
});
$scope.mapModels.loyaltyRanges = $filter('qmSlider')(qmData.loyaltyRanges, $scope.slider);
console.log("mapModels.loyaltyRanges", $scope.mapModels.loyaltyRanges);
//console.log("mapModels.regions", $scope.mapModels.regions);
$scope.mapModels.editableLoyaltyRanges = angular.copy($scope.mapModels.loyaltyRanges).map(function(polygon) {
polygon.static = false;
polygon.editable = true;
return polygon;
});
}
function panToCharacter(newValue, oldValue) {
@@ -189,8 +201,6 @@ angular.module('quartermaester')
}
function panTo(input) {
console.log("panTo", input);
var location = $filter('filter')($scope.map.locations, {key: input})[0];
$scope.map.control.getGMap().panTo({lat: location.coords.latitude, lng: location.coords.longitude});
$scope.locationDetail = location;
@@ -281,6 +291,19 @@ angular.module('quartermaester')
$scope.state = "location";
}
function loyaltyRangeClick(e, eventName, model) {
var keyMatch = /(.+)\-\d+\w?$/.exec(model.key);
var matchingBelligerant = $filter('filter')(qmData.belligerents, {key: keyMatch[1]})[0];
var filtered = $filter('filter')(qmData.belligerents, {key: keyMatch[1]});
$scope.locationDetail = {
house: matchingBelligerant.title + " " + matchingBelligerant.name,
houseImg: matchingBelligerant.houseImg,
houseUrl: matchingBelligerant.url
};
$scope.state = "location";
}
function mapClick(a, b, c, d) {
$scope.state = "slider";
//console.log(a, b, c, d);
@@ -295,8 +318,6 @@ angular.module('quartermaester')
latitude: latitude,
longitude: longitude
});
//console.log("history", $scope.clickHistory);
//$scope.$apply();
}
function onMapLoad(maps) {
+32 -17
View File
@@ -75,11 +75,12 @@ angular.module('quartermaester')
getFile('loyaltyRangeEdges.csv'),
getFile('stops.csv'),
getFile('waypoints.csv'),
getFile('paths.csv')
getFile('paths.csv'),
getFile('belligerents.csv')
]).spread(parseData);
}
function parseData(books, chapters, seasons, episodes, houses, characters, regions, loyaltyRanges, towns, borders, loyaltyRangeEdges, stops, waypoints, paths) {
function parseData(books, chapters, seasons, episodes, houses, characters, regions, loyaltyRanges, towns, borders, loyaltyRangeEdges, stops, waypoints, paths, belligerents) {
var qmData = {
borderArrays: {},
lrEdgeArrays: {},
@@ -98,12 +99,7 @@ angular.module('quartermaester')
if (!(loyaltyRangeEdges[i].key in qmData.lrEdgeArrays))
qmData.lrEdgeArrays[loyaltyRangeEdges[i].key] = [];
qmData.lrEdgeArrays[loyaltyRangeEdges[i].key].push(loyaltyRangeEdges[i]);
// qmData.lrEdgeArrays[loyaltyRangeEdges[i].key].push({
// latitude: parseFloat(loyaltyRangeEdges[i].latitude),
// longitude: parseFloat(loyaltyRangeEdges[i].longitude)
// });
}
//console.log("qmData.lrEdgeArrays", qmData.lrEdgeArrays);
for (var i=0; i<waypoints.length; i++) {
if (!(waypoints[i].key in qmData.waypointArrays))
@@ -120,13 +116,13 @@ angular.module('quartermaester')
qmData.books = books;
qmData.regions = regions.map(regionModel);
qmData.characters = characters.map(characterModel);
qmData.belligerents = belligerents.map(belligerentModel);
qmData.loyaltyRanges = loyaltyRanges.map(loyaltyRangeModel);
qmData.towns = getTownMarkers(towns, houses);
qmData.heraldry = houses.map(heraldryMarkerModel);
qmData.characterMarkers = stops.map(characterMarkerModel);
qmData.characterPaths = paths.map(characterPathModel);
qmData.searchResults = [].concat(
towns.map(townSearchModel),
characters.map(characterSearchModel),
@@ -337,15 +333,12 @@ angular.module('quartermaester')
}
function loyaltyRangeModel(loyaltyRange) {
var matchingCharacter = {color: "#eeeeee"};
console.log(loyaltyRange);
var keyMatch = /(.+)\-\d+$/.exec(loyaltyRange.key);
if (keyMatch[1]!="Undeclared") matchingCharacter = $filter('filter')(qmData.characters, {key: keyMatch[1]})[0];
var keyMatch = /(.+)\-\d+\w?$/.exec(loyaltyRange.key);
var matchingBelligerant = $filter('filter')(qmData.belligerents, {key: keyMatch[1]})[0];
return {
key: loyaltyRange.key,
fill: {
color: matchingCharacter.color,
color: matchingBelligerant.color,
opacity: 0.5
},
stroke: {weight: 0},
@@ -353,7 +346,8 @@ angular.module('quartermaester')
timing: {
episodes: [getEpisodeId(loyaltyRange.firstEpisode), getEpisodeId(loyaltyRange.lastEpisode)],
chapters: [getChapterId(loyaltyRange.firstChapter), getChapterId(loyaltyRange.lastChapter)]
}
},
clickable: true
};
}
@@ -452,12 +446,35 @@ angular.module('quartermaester')
};
}
function belligerentModel(belligerent) {
var matchingHouse = $filter('filter')(houses, {wikiKey: belligerent.house})[0];
return {
key: belligerent.key,
title: belligerent.title,
name: belligerent.name,
url: "http://awoiaf.westeros.org/index.php/" + belligerent.key,
houseImg: matchingHouse.img,
houseUrl: "http://awoiaf.westeros.org/index.php/" + belligerent.house,
color: belligerent.color,
timing: {
episodes: [
getEpisodeId(belligerent.firstEpisode),
getEpisodeId(belligerent.lastEpisode)
],
chapters: [
getChapterId(belligerent.firstChapter),
getChapterId(belligerent.lastChapter)
]
}
};
}
function getChapterId(chapterKey) {
//AGOT-2 to 2
if (chapterKey=="") return -1;
if (chapterKey=="TWOW-?") return 344;
if (chapterKey=="TWOW-???") return 344;
var reMatch = /(\w{4})\-(\d+)/.exec(chapterKey);
var precedingChapters = parseInt(qmData.bookLookup[ reMatch[1] ].precedingChapters, 10)
return precedingChapters + parseInt(reMatch[2], 10);
@@ -525,10 +542,8 @@ angular.module('quartermaester')
return {
restrict: 'A',
link: function (scope, elem, attrs) {
// console.log(elem, attrs);
var winHeight = $window.innerHeight;
// var listHeight = attrs.qmList ? 41*parseInt(attrs.qmList, 10) : 0;
// console.log(winHeight, attrs.qmList, listHeight);
// if (listHeight>winHeight) elem.css('height', winHeight - 48 + 'px');
elem.css('height', winHeight - 55 + 'px');
}