Compare commits

..

91 commits

Author SHA1 Message Date
redfast00
b4adda93ac
Merge pull request #48 from AurisAudentis/cleanup
Legend issues
2021-12-25 13:27:08 +01:00
AurisAudentis
b50b08f766
cleaning up the legend formatting 2021-12-25 12:42:03 +01:00
redfast00
cdf633a9bd
Merge pull request #47 from ZeusWPI/7734485917411998476-patch-2
Fix: veel pinnen waren ten onrechte rood
2021-06-03 00:16:53 +02:00
7734485917411998476
baab6bbfc4
Fix: veel pinnen waren ten onrechte rood
Als er "Gesloten" stond bij zaterdag en zondag, werd het rood aangeduid. Nu worden die zoals het hoort blauw.
2021-06-03 00:11:20 +02:00
redfast00
2b46153d20
Merge pull request #45 from ZeusWPI/7734485917411998476-patch-1
Grijze pinnen toegevoegd
2021-05-08 14:06:10 +02:00
7734485917411998476
10c385975c
Grijze pinnen toegevoegd
Grijze pinnen indiceren dat een locatie niet open is, maar binnenkort opent.
2021-05-08 13:47:19 +02:00
redfast00
ddc034e6b2
Merge pull request #44 from ZeusWPI/7734485917411998476-patch-1
Rolstoel/wifi icoonjes
2021-05-07 16:49:00 +02:00
7734485917411998476
0fc0098442
pixels ipv gewoon rauwe integers 2021-05-07 16:46:09 +02:00
7734485917411998476
2503c153eb
grootte afbeeldingen aangepast 2021-05-07 16:39:00 +02:00
7734485917411998476
3af32d958e
we gebruiken nu booleans voor rolstoelen en wifi 2021-05-07 16:26:48 +02:00
7734485917411998476
bf30ee7f7d
twee lijnen toegevoegd die misschien ervoor zorgen dat de icoontjes verschijnen en misschien alles doen crashen 2021-05-07 15:25:14 +02:00
7734485917411998476
94c85f1c4d
Toevoegen icoontjes voor rolstoelvriendelijkheid en wifi 2021-05-07 15:01:55 +02:00
7734485917411998476
e3acb3ee73
Link geüpdatet naar de form 2021-05-06 15:58:56 +02:00
7734485917411998476
a9954b1a76
Veranderd Odisee-logo 2020-10-18 21:32:11 +02:00
7734485917411998476
3adf8249a8
Update README.md 2020-10-13 10:28:33 +02:00
Jeroen De Clerck
0f30b462d6
Update README.md 2020-10-12 22:12:56 +02:00
redfast00
cf6ff9085f
Remove notice 2020-09-07 21:26:11 +02:00
redfast00
7d528d0cbb
Merge pull request #42 from ZeusWPI/mapbox
Use Mapbox as tile provider
2020-08-05 20:59:33 +02:00
redfast00
1b3856e834
Use Mapbox as tile provider 2020-08-05 01:25:24 +02:00
a8de34ff60
Notice in style of map key 2020-08-01 23:57:40 +02:00
74ee5b751d
Move notice to bottom 2020-08-01 23:53:03 +02:00
0b6d9e9349
Fix "design" of notice bar 2020-08-01 23:43:31 +02:00
redfast00
d60fc09823
Merge pull request #41 from ZeusWPI/fix/34
Anonymize IP addresses in Google Analytics
2020-08-01 23:12:26 +02:00
6e62004a58
Anonymize IP addresses in Google Analytics
This is necessary to comply with our privacy policy and fixes #34.
2020-08-01 23:09:29 +02:00
redfast00
2bf5bbf066 Merge remote-tracking branch 'midgard/master' into master 2020-08-01 22:56:03 +02:00
3f44786c0e
Add WIP notice for exam retakes 2020-08-01 22:47:55 +02:00
redfast00
57c0654694 Update form URL 2020-07-26 14:50:21 +02:00
7040282def
Wrap new English text in <span lang="en"> 2020-06-30 23:48:48 +02:00
3cfb1b058b
Link to privacy policy 2020-06-30 23:48:08 +02:00
24019119d1
Change to OSMBE tiles 2020-06-22 13:10:15 +02:00
5d9d45b4f5
Optimize San Marino 2020-05-25 14:57:59 +02:00
7734485917411998476
31e7c39508
van san marino een png gemaakt - gelukkig 2020-05-25 14:51:00 +02:00
redfast00
8774e1921d
Merge branch 'midgard-master' 2020-05-22 22:36:51 +02:00
4daecbccd3
Make map.js play nice with leaflet 1.0.0 again 2020-05-22 22:35:28 +02:00
redfast00
e763493fd5
Merge branch 'midgard-master' 2020-05-22 22:28:01 +02:00
296365b925
Remove debug print 2020-05-22 22:27:14 +02:00
21d7a994f8
Select old version in index.html too 2020-05-22 22:26:46 +02:00
redfast00
ae5f48e9d5
Merge branch 'midgard-master' 2020-05-22 22:21:25 +02:00
cea52ea188
Revert to Leaflet 1.0.0
Leaflet 1.6.0 causes the wrong marker icon to *sometimes* be selected.
So revert to 1.0.0 for now.
2020-05-22 22:19:15 +02:00
d5fe062e7f
Fix race condition 2020-05-22 22:01:41 +02:00
d3cb7bfca8
Log which icon 2020-05-22 22:00:43 +02:00
c9294024a5
Recreate BlueIcon class 2020-05-22 21:59:01 +02:00
redfast00
4aceb15174
Merge branch 'midgard-master' 2020-05-22 18:37:20 +02:00
2af33c6464
Keep white space in opening hours 2020-05-22 18:20:26 +02:00
44980c0ba2
Add image for "Andere" to avoid broken image 2020-05-21 17:01:32 +02:00
fbc52a8cc8
Replace Facebook share button with links
Facebook sharing is no longer desired. Add a link to add locations
2020-05-21 15:01:08 +02:00
9b83232bb8
Optimize PNGs 2020-05-21 14:21:42 +02:00
a85e87a70c
Remove triple-stash for opening hours
Together with 2b4ef6406bc343c9c6ec03e067dbf5346230f1d5 on blokdata.
2020-05-21 03:26:36 +02:00
9102750770
Improve popup layout a bit 2020-05-21 02:59:29 +02:00
77ceb6fa47
Make function more sensible
Redo the getParent function:
* Rename to findAncestorWithClass, which is a better name.
* There's no reason the mouse event's target should not be allowed to be
  the popup's container itself, so check the element itself too.
* Return null if nothing found instead of false.
2020-05-21 02:26:44 +02:00
b2c86c9a94
Change date format to something sensible 2020-05-21 02:05:41 +02:00
855488d227
Fix holiday season and improve icon selection 2020-05-21 01:51:27 +02:00
9e72a5dcc2
Improve style consistency 2020-05-20 18:01:25 +02:00
dff357cfca
Update links to Zeus to zeus.gent 2020-05-20 17:33:39 +02:00
9f0e5f7598
Translate attribution, add lang on English text 2020-05-20 17:31:13 +02:00
daf979ee0e
Merge branches 'privacy' and 'layout' 2020-05-20 17:09:27 +02:00
47a0f53ed3
Update files because data.json has moved
Update README, remove stale data file, remove data check in deploy.sh
2020-05-20 17:06:58 +02:00
43fdcf0c87
Consistent indentation please 2020-05-20 17:06:51 +02:00
fb377030ef
Fix all your design issues 2020-05-20 17:05:56 +02:00
3943320c8e
Remove stray "s" in map.css 2020-05-20 17:05:56 +02:00
42a326aee3
Eliminate CDNs 2020-05-20 16:25:44 +02:00
bffc160d65
Update Leaflet to 1.6.0 2020-05-20 16:25:44 +02:00
8f464cdd93
Replace Facebook SDK with homebrewn button
Better for both privacy and speed!
2020-05-20 16:25:41 +02:00
Robbe Van Herck
81b03b98be whoops 2020-05-20 14:59:56 +02:00
Robbe Van Herck
8b52ba1869 Switch to square logo 2020-05-20 11:33:48 +02:00
Robbe Van Herck
9903d3baf5 New image :O 2020-05-20 11:22:44 +02:00
Robbe Van Herck
6be5239118 Merge branch 'master' of github.com:ZeusWPI/blokmap 2020-05-18 20:03:00 +02:00
Robbe Van Herck
8296779cb4 Update initial view and description 2020-05-18 20:01:08 +02:00
7734485917411998476
0ef626ec10
Gemeente Kuurne toegevoegd 2020-05-15 17:32:55 +02:00
7734485917411998476
43e10ec9a4
Titel veranderd 2020-05-15 01:01:57 +02:00
Robbe Van Herck
aad50d92e7 Don't display logo on smaller screens 2020-05-14 14:13:27 +02:00
Robbe Van Herck
fc592d742f I'm bad at css, but this looks marginally better 2020-05-14 13:47:17 +02:00
Robbe Van Herck
f673ff6637 Square GSR logo 2020-05-14 13:35:00 +02:00
7734485917411998476
c4b27dafd9
watt the firms toegevoegd 2020-05-14 12:23:43 +02:00
7734485917411998476
f7dbe2f518
al deze universiteiten en hoge scholen hun logos toegevoegd 2020-05-13 22:34:42 +02:00
Robbe Van Herck
8aae4c6b58 Goodbye Schamper 2020-05-13 20:46:10 +02:00
7734485917411998476
8e40aa9fdd
werkt dit logo beter? 2020-05-13 20:38:07 +02:00
7734485917411998476
c01d5a2180
GSR-logo toegevoegd 2020-05-13 20:20:32 +02:00
7734485917411998476
e1433015c5
GSR-logo toegevoegd 2020-05-13 20:16:13 +02:00
Robbe Van Herck
6b5ccccfe7
Merge pull request #38 from ZeusWPI/blokdata
Move to blokdata.zeus.gent
2020-05-13 17:18:07 +02:00
Robbe Van Herck
ef3f74b380 Security++ 2020-05-13 17:02:38 +02:00
Robbe Van Herck
dc98be9b58 Move to blokdata.zeus.gent 2020-05-13 17:01:17 +02:00
Wout Schellaert
a9840bbe02
Merge pull request #36 from ZeusWPI/update-jan2020
Update dates and hours
2019-12-11 09:43:24 +01:00
hannes
86b61715a6 Update dates and hours 2019-12-08 21:16:10 +01:00
Feliciaan De Palmenaer
97aeb3c0b0
Merge pull request #33 from fbegyn/blokmap-update
Updated the blok locations based on the PDF
2019-08-14 16:00:15 +02:00
b48542f9e6
Updated the blok locations based on the PDF 2019-08-14 15:07:41 +02:00
Feliciaan De Palmenaer
429b8b14b9
Merge pull request #30 from fbegyn/master
update bloklocations for spring/summer 2019
2019-05-22 10:43:33 +02:00
86c19cf93a
update bloklocations for spring/summer 2019 2019-05-21 22:48:26 +02:00
Wout Schellaert
f6b99c680e
Merge pull request #28 from ZeusWPI/hoverpopup
Hoverpopup
2019-02-19 17:14:51 +01:00
Wout Schellaert
82b84404f0
Merge pull request #27 from ZeusWPI/hoverpopup
moved the popup it doesnt overlap with marker
2019-02-18 08:45:20 +01:00
Robbe Van Herck
234c7d0554
Merge pull request #26 from ZeusWPI/hoverpopup
fixed #23
2019-02-14 19:41:05 +01:00
55 changed files with 1247 additions and 1098 deletions

19
.editorconfig Normal file
View file

@ -0,0 +1,19 @@
# https://editorconfig.org
root = true
[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
indent_style = space
indent_size = 4
quote_type = double
[*.html]
indent_size = 2
[*.svg]
indent_style = tab
indent_size = unset

View file

@ -1,8 +1,8 @@
# Blokmap # BlokLocaties Op Kaart Met Aanduidende Pins
A useful map that lists all the public study locations in Ghent. A useful map that lists all the public study locations in Ghent.
We usually use data from [Stad Gent](https://stad.gent/studenten/studeren/bloklocaties), [Stad Kortrijk](http://www.kortrijkstudentenstad.be/aanbod/bloklocaties/) and emails sent by people.. Data is managed in a separate project, [Blokdata](https://github.com/ZeusWPI/Blokdata).
## Development ## Development
@ -11,5 +11,3 @@ You can easily run the site locally by spawning a simple static file server in t
``` ```
(cd src/; python3 -m http.server) (cd src/; python3 -m http.server)
``` ```
You can also validate the JSON with `(cd src/; python -m json.tool data.json > /dev/null)`. If there are no errors, there will be no output.

View file

@ -13,9 +13,6 @@ echo "-> Pulling latest release"
# Apparently, some systems put "up to date", while others put "up-to-date" # Apparently, some systems put "up to date", while others put "up-to-date"
git pull | grep 'Already up[- ]to[- ]date.' && echo "No updates, exiting..." && exit 20 git pull | grep 'Already up[- ]to[- ]date.' && echo "No updates, exiting..." && exit 20
echo "-> Checking validity of data.json"
python -m json.tool src/data.json > /dev/null
# Create release dir and copy sources to that dir # Create release dir and copy sources to that dir
echo "-> This release will be stored in $release_dir" echo "-> This release will be stored in $release_dir"

640
src/css/leaflet-1.6.0.css Normal file
View file

@ -0,0 +1,640 @@
/* required styles */
.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
position: absolute;
left: 0;
top: 0;
}
.leaflet-container {
overflow: hidden;
}
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
-webkit-user-drag: none;
}
/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::selection {
background: transparent;
}
/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
image-rendering: -webkit-optimize-contrast;
}
/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
width: 1600px;
height: 1600px;
-webkit-transform-origin: 0 0;
}
.leaflet-marker-icon,
.leaflet-marker-shadow {
display: block;
}
/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg,
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
max-width: none !important;
max-height: none !important;
}
.leaflet-container.leaflet-touch-zoom {
-ms-touch-action: pan-x pan-y;
touch-action: pan-x pan-y;
}
.leaflet-container.leaflet-touch-drag {
-ms-touch-action: pinch-zoom;
/* Fallback for FF which doesn't support pinch-zoom */
touch-action: none;
touch-action: pinch-zoom;
}
.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
-ms-touch-action: none;
touch-action: none;
}
.leaflet-container {
-webkit-tap-highlight-color: transparent;
}
.leaflet-container a {
-webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}
.leaflet-tile {
filter: inherit;
visibility: hidden;
}
.leaflet-tile-loaded {
visibility: inherit;
}
.leaflet-zoom-box {
width: 0;
height: 0;
-moz-box-sizing: border-box;
box-sizing: border-box;
z-index: 800;
}
/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
-moz-user-select: none;
}
.leaflet-pane { z-index: 400; }
.leaflet-tile-pane { z-index: 200; }
.leaflet-overlay-pane { z-index: 400; }
.leaflet-shadow-pane { z-index: 500; }
.leaflet-marker-pane { z-index: 600; }
.leaflet-tooltip-pane { z-index: 650; }
.leaflet-popup-pane { z-index: 700; }
.leaflet-map-pane canvas { z-index: 100; }
.leaflet-map-pane svg { z-index: 200; }
.leaflet-vml-shape {
width: 1px;
height: 1px;
}
.lvml {
behavior: url(#default#VML);
display: inline-block;
position: absolute;
}
/* control positioning */
.leaflet-control {
position: relative;
z-index: 800;
pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
pointer-events: auto;
}
.leaflet-top,
.leaflet-bottom {
position: absolute;
z-index: 1000;
pointer-events: none;
}
.leaflet-top {
top: 0;
}
.leaflet-right {
right: 0;
}
.leaflet-bottom {
bottom: 0;
}
.leaflet-left {
left: 0;
}
.leaflet-control {
float: left;
clear: both;
}
.leaflet-right .leaflet-control {
float: right;
}
.leaflet-top .leaflet-control {
margin-top: 10px;
}
.leaflet-bottom .leaflet-control {
margin-bottom: 10px;
}
.leaflet-left .leaflet-control {
margin-left: 10px;
}
.leaflet-right .leaflet-control {
margin-right: 10px;
}
/* zoom and fade animations */
.leaflet-fade-anim .leaflet-tile {
will-change: opacity;
}
.leaflet-fade-anim .leaflet-popup {
opacity: 0;
-webkit-transition: opacity 0.2s linear;
-moz-transition: opacity 0.2s linear;
transition: opacity 0.2s linear;
}
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
opacity: 1;
}
.leaflet-zoom-animated {
-webkit-transform-origin: 0 0;
-ms-transform-origin: 0 0;
transform-origin: 0 0;
}
.leaflet-zoom-anim .leaflet-zoom-animated {
will-change: transform;
}
.leaflet-zoom-anim .leaflet-zoom-animated {
-webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
-moz-transition: -moz-transform 0.25s cubic-bezier(0,0,0.25,1);
transition: transform 0.25s cubic-bezier(0,0,0.25,1);
}
.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
-webkit-transition: none;
-moz-transition: none;
transition: none;
}
.leaflet-zoom-anim .leaflet-zoom-hide {
visibility: hidden;
}
/* cursors */
.leaflet-interactive {
cursor: pointer;
}
.leaflet-grab {
cursor: -webkit-grab;
cursor: -moz-grab;
cursor: grab;
}
.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
cursor: crosshair;
}
.leaflet-popup-pane,
.leaflet-control {
cursor: auto;
}
.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
cursor: move;
cursor: -webkit-grabbing;
cursor: -moz-grabbing;
cursor: grabbing;
}
/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
pointer-events: none;
}
.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
pointer-events: auto;
}
/* visual tweaks */
.leaflet-container {
background: #ddd;
outline: 0;
}
.leaflet-container a {
color: #0078A8;
}
.leaflet-container a.leaflet-active {
outline: 2px solid orange;
}
.leaflet-zoom-box {
border: 2px dotted #38f;
background: rgba(255,255,255,0.5);
}
/* general typography */
.leaflet-container {
font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
}
/* general toolbar styles */
.leaflet-bar {
box-shadow: 0 1px 5px rgba(0,0,0,0.65);
border-radius: 4px;
}
.leaflet-bar a,
.leaflet-bar a:hover {
background-color: #fff;
border-bottom: 1px solid #ccc;
width: 26px;
height: 26px;
line-height: 26px;
display: block;
text-align: center;
text-decoration: none;
color: black;
}
.leaflet-bar a,
.leaflet-control-layers-toggle {
background-position: 50% 50%;
background-repeat: no-repeat;
display: block;
}
.leaflet-bar a:hover {
background-color: #f4f4f4;
}
.leaflet-bar a:first-child {
border-top-left-radius: 4px;
border-top-right-radius: 4px;
}
.leaflet-bar a:last-child {
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
border-bottom: none;
}
.leaflet-bar a.leaflet-disabled {
cursor: default;
background-color: #f4f4f4;
color: #bbb;
}
.leaflet-touch .leaflet-bar a {
width: 30px;
height: 30px;
line-height: 30px;
}
.leaflet-touch .leaflet-bar a:first-child {
border-top-left-radius: 2px;
border-top-right-radius: 2px;
}
.leaflet-touch .leaflet-bar a:last-child {
border-bottom-left-radius: 2px;
border-bottom-right-radius: 2px;
}
/* zoom control */
.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
font: bold 18px 'Lucida Console', Monaco, monospace;
text-indent: 1px;
}
.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {
font-size: 22px;
}
/* layers control */
.leaflet-control-layers {
box-shadow: 0 1px 5px rgba(0,0,0,0.4);
background: #fff;
border-radius: 5px;
}
.leaflet-control-layers-toggle {
background-image: url(images/layers.png);
width: 36px;
height: 36px;
}
.leaflet-retina .leaflet-control-layers-toggle {
background-image: url(images/layers-2x.png);
background-size: 26px 26px;
}
.leaflet-touch .leaflet-control-layers-toggle {
width: 44px;
height: 44px;
}
.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
display: none;
}
.leaflet-control-layers-expanded .leaflet-control-layers-list {
display: block;
position: relative;
}
.leaflet-control-layers-expanded {
padding: 6px 10px 6px 6px;
color: #333;
background: #fff;
}
.leaflet-control-layers-scrollbar {
overflow-y: scroll;
overflow-x: hidden;
padding-right: 5px;
}
.leaflet-control-layers-selector {
margin-top: 2px;
position: relative;
top: 1px;
}
.leaflet-control-layers label {
display: block;
}
.leaflet-control-layers-separator {
height: 0;
border-top: 1px solid #ddd;
margin: 5px -10px 5px -6px;
}
/* Default icon URLs */
.leaflet-default-icon-path {
background-image: url(images/marker-icon.png);
}
/* attribution and scale controls */
.leaflet-container .leaflet-control-attribution {
background: #fff;
background: rgba(255, 255, 255, 0.7);
margin: 0;
}
.leaflet-control-attribution,
.leaflet-control-scale-line {
padding: 0 5px;
color: #333;
}
.leaflet-control-attribution a {
text-decoration: none;
}
.leaflet-control-attribution a:hover {
text-decoration: underline;
}
.leaflet-container .leaflet-control-attribution,
.leaflet-container .leaflet-control-scale {
font-size: 11px;
}
.leaflet-left .leaflet-control-scale {
margin-left: 5px;
}
.leaflet-bottom .leaflet-control-scale {
margin-bottom: 5px;
}
.leaflet-control-scale-line {
border: 2px solid #777;
border-top: none;
line-height: 1.1;
padding: 2px 5px 1px;
font-size: 11px;
white-space: nowrap;
overflow: hidden;
-moz-box-sizing: border-box;
box-sizing: border-box;
background: #fff;
background: rgba(255, 255, 255, 0.5);
}
.leaflet-control-scale-line:not(:first-child) {
border-top: 2px solid #777;
border-bottom: none;
margin-top: -2px;
}
.leaflet-control-scale-line:not(:first-child):not(:last-child) {
border-bottom: 2px solid #777;
}
.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
box-shadow: none;
}
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
border: 2px solid rgba(0,0,0,0.2);
background-clip: padding-box;
}
/* popup */
.leaflet-popup {
position: absolute;
text-align: center;
margin-bottom: 20px;
}
.leaflet-popup-content-wrapper {
padding: 1px;
text-align: left;
border-radius: 12px;
}
.leaflet-popup-content {
margin: 13px 19px;
line-height: 1.4;
}
.leaflet-popup-content p {
margin: 18px 0;
}
.leaflet-popup-tip-container {
width: 40px;
height: 20px;
position: absolute;
left: 50%;
margin-left: -20px;
overflow: hidden;
pointer-events: none;
}
.leaflet-popup-tip {
width: 17px;
height: 17px;
padding: 1px;
margin: -10px auto 0;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}
.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
background: white;
color: #333;
box-shadow: 0 3px 14px rgba(0,0,0,0.4);
}
.leaflet-container a.leaflet-popup-close-button {
position: absolute;
top: 0;
right: 0;
padding: 4px 4px 0 0;
border: none;
text-align: center;
width: 18px;
height: 14px;
font: 16px/14px Tahoma, Verdana, sans-serif;
color: #c3c3c3;
text-decoration: none;
font-weight: bold;
background: transparent;
}
.leaflet-container a.leaflet-popup-close-button:hover {
color: #999;
}
.leaflet-popup-scrolled {
overflow: auto;
border-bottom: 1px solid #ddd;
border-top: 1px solid #ddd;
}
.leaflet-oldie .leaflet-popup-content-wrapper {
zoom: 1;
}
.leaflet-oldie .leaflet-popup-tip {
width: 24px;
margin: 0 auto;
-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
}
.leaflet-oldie .leaflet-popup-tip-container {
margin-top: -1px;
}
.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
border: 1px solid #999;
}
/* div icon */
.leaflet-div-icon {
background: #fff;
border: 1px solid #666;
}
/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
position: absolute;
padding: 6px;
background-color: #fff;
border: 1px solid #fff;
border-radius: 3px;
color: #222;
white-space: nowrap;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
pointer-events: none;
box-shadow: 0 1px 3px rgba(0,0,0,0.4);
}
.leaflet-tooltip.leaflet-clickable {
cursor: pointer;
pointer-events: auto;
}
.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
position: absolute;
pointer-events: none;
border: 6px solid transparent;
background: transparent;
content: "";
}
/* Directions */
.leaflet-tooltip-bottom {
margin-top: 6px;
}
.leaflet-tooltip-top {
margin-top: -6px;
}
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
left: 50%;
margin-left: -6px;
}
.leaflet-tooltip-top:before {
bottom: 0;
margin-bottom: -12px;
border-top-color: #fff;
}
.leaflet-tooltip-bottom:before {
top: 0;
margin-top: -12px;
margin-left: -6px;
border-bottom-color: #fff;
}
.leaflet-tooltip-left {
margin-left: -6px;
}
.leaflet-tooltip-right {
margin-left: 6px;
}
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
top: 50%;
margin-top: -6px;
}
.leaflet-tooltip-left:before {
right: 0;
margin-right: -12px;
border-left-color: #fff;
}
.leaflet-tooltip-right:before {
left: 0;
margin-left: -12px;
border-right-color: #fff;
}

View file

@ -3,6 +3,17 @@ html, body {
padding: 0px; padding: 0px;
width: 100%; width: 100%;
height: 100%; height: 100%;
font-family: sans-serif;
}
.notice {
padding: 0.5em;
background: #fff;
color: #000;
box-shadow: 0 1px 5px rgba(0,0,0,0.65);
}
.leaflet-top.leaflet-left {
z-index: 1001;
} }
#map { #map {
@ -18,7 +29,8 @@ html, body {
.leaflet-popup-content-wrapper { .leaflet-popup-content-wrapper {
width: 600px; width: 600px;
max-height: 400px; max-height: 400px;
overflow-y:auto overflow-y: auto;
overflow-wrap: anywhere;
} }
.leaflet-popup-content { .leaflet-popup-content {
@ -27,6 +39,7 @@ html, body {
a img { a img {
border: none; border: none;
max-height: 60px;
} }
h4 { h4 {
@ -34,12 +47,20 @@ h4 {
margin-bottom: 5px; margin-bottom: 5px;
} }
.location, .period {
margin-bottom: 3px;
}
table { table {
padding-bottom: 10px; padding-bottom: 10px;
border-spacing: 0; border-spacing: 0;
width: 100% width: 100%
} }
td {
white-space: pre-line;
}
.desktop tr td { .desktop tr td {
padding-right: 5px; padding-right: 5px;
width: 75; width: 75;
@ -60,21 +81,46 @@ table {
font: 14px/16px Arial, Helvetica, sans-serif; font: 14px/16px Arial, Helvetica, sans-serif;
background: white; background: white;
background: rgba(255,255,255,0.0); background: rgba(255,255,255,0.0);
text-align: right;
} }
#zeus { .author-icon {
padding-left: 10px; display: block;
margin-left: 10px;
}
.share {
background-color: rgba(255, 255, 255, 0.7);
padding-right: 5px;
margin-left: 10px;
}
.share img {
vertical-align: middle;
margin-left: -10px;
}
.share a {
text-decoration: none;
}
.share a:hover {
text-decoration: underline;
}
a.img-and-text-link:hover {
text-decoration: none;
}
a.img-and-text-link:hover span {
text-decoration: underline;
} }
.legend { .legend {
height: 52px; height: 77px;
width: 130px; width: 130px;
background-color: #fff; background-color: #fff;
box-shadow: 0 1px 5px rgba(0,0,0,0.65); box-shadow: 0 1px 5px rgba(0,0,0,0.65);
} }
.holiday-legend { .holiday-legend {
height: 72px;
width: 145px; width: 145px;
background-color: #fff; background-color: #fff;
box-shadow: 0 1px 5px rgba(0,0,0,0.65); box-shadow: 0 1px 5px rgba(0,0,0,0.65);
@ -100,6 +146,11 @@ table {
width: 250px; width: 250px;
} }
.type {
display: none;
}
.desktop { .desktop {
display: none; display: none;
} }
@ -109,22 +160,8 @@ table {
width: 213px; width: 213px;
} }
h3, .text { .location, .period {
max-width: 150px; margin-bottom: 8px;
}
}
@media screen and (max-width: 800px) {
.info {
max-width: 90px;s
}
#schamper {
width: 90px;
}
#zeus {
width: 75px;
} }
} }
@ -133,3 +170,24 @@ table {
max-height: 150px; max-height: 150px;
} }
} }
@media screen and (min-width: 300px) {
.notice {
max-width: calc(100vw - 150px);
}
}
@media screen and (min-width: 800px) {
.author-icon {
display: inline;
}
.notice {
max-width: calc(100vw - 250px);
}
}
@media (min-width: 800px) and (min-height: 500px) {
.notice {
padding: 1em 1.5em;
}
}

View file

@ -1,818 +0,0 @@
[
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [ 3.724770, 51.045507 ]
},
"properties": {
"name": "Faculteit Letteren en Wijsbegeerte, faculteitsbibliotheek, vleugels Magnel & Loveling",
"address": "Rozier 44",
"capacity": 998,
"period": { "start": "02/01/2019", "end": "31/01/2019" },
"hours": {
"monday": "9u - 20u",
"tuesday": "9u - 20u",
"wednesday": "9u - 20u",
"thursday": "9u - 20u",
"friday": "9u - 17u",
"saturday": false,
"sunday": false
},
"extra": "<a href='https://www.ugent.be/lw/nl/diensten/bibliotheek'> Bekijk de website </a>. Vleugel Magnel bevat 660 werkplekken. De vleugel Loveling bevat 338 werkplekken.",
"type": "UGent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [ 3.724090, 51.051192 ]
},
"properties": {
"name": "Faculteit recht en criminologie",
"address": "Universiteitstraat 4, verdieping 1",
"capacity": 235,
"period": { "start": "02/01/2019", "end": "01/02/2019" },
"hours": {
"monday": "8u30 - 19u",
"tuesday": "8u30 - 19u",
"wednesday": "8u30 - 19u",
"thursday": "8u30 - 19u",
"friday": "8u30 - 16u30",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor iedereen. <a href=\"http://www.ugent.be/re/nl/diensten/bibliotheek\">Bekijk de website</a> <i>Gesloten op weekends.</i>" ,
"type": "UGent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [ 3.70700, 51.053446 ]
},
"properties": {
"name": "Faculteit Bio-Ingenieurswetenschappen, Resto Agora. (gelijkvloers gebouw E)",
"address": "Coupure 653",
"capacity": 400,
"period": { "start": "03/01/2019", "end": "01/02/2019" },
"hours": {
"monday": "14u - 19u",
"tuesday": "14u - 19u",
"wednesday": "14u - 19u",
"thursday": "14u - 19u",
"friday": "14u - 19u",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor alle Gentse studenten. Ook bib toegankelijk. <a href=\"http://lib.ugent.be/en/libraries/ALLW\">Ga naar de website</a>. Gesloten tijdens weekends.",
"type": "UGent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.7014217, 51.04866]
},
"properties": {
"name": "Faculteit Psychologie en Pedagogische Wetenschappen",
"address": "Henri Dunantlaan 2",
"capacity": 132,
"period":{ "start": "02/01/2019", "end": "28/01/2019"},
"hours": {
"monday": "8u30 - 19u",
"tuesday": "8u30 - 19u",
"wednesday": "8u30 - 19u",
"thursday": "8u30 - 19u",
"friday": "8u30 - 15u",
"saturday": false,
"sunday": false
},
"extra": "Gesloten tijdens het weekend.</br> Gesloten van 24/12 tot 01/01.</br> Op 02/01/2019 uitzonderlijk slechts open tot 12u.</br><a href='https://www.ugent.be/pp/nl/diensten/faculteitsbibliotheek'>https://www.ugent.be/pp/nl/diensten/faculteitsbibliotheek</a></br><a href='https://lib.ugent.be/nl/libraries/PPW'>https://lib.ugent.be/nl/libraries/PPW</a></br><a href='https://www.facebook.com/BibFPPW'>https://www.facebook.com/BibFPPW</a>",
"type": "UGent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.7245747, 51.0517789]
},
"properties": {
"name": "Faculteit Politieke en Sociale Wetenschappen",
"address": "Paddenhoek 3, 2de verdiep lokaal 007",
"capacity": 60,
"period": { "start": "02/01/2019", "end": "28/01/2019" },
"hours": {
"monday": "9u - 19u",
"tuesday": "9u - 19u",
"wednesday": "9u - 19u",
"thursday": "9u - 19u",
"friday": "9u - 19u",
"saturday": false,
"sunday": false
},
"extra": "Enkel voor studenten van de UGent. Niet drinken en eten in het lokaal.</br><i>60 plaatsen waarvan 20 plaatsen met pc.</i> <a href='http://www.ugent.be/ps/nl/diensten/pc-knooppunt/pc-klas'>Bekijk de website </a>. Gesloten op 15 augustus.",
"type": "UGent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.72704, 51.04569]
},
"properties": {
"name": "Studentenrestaurant De Brug",
"address": "Sint-Pietersnieuwstraat 45",
"capacity": 700,
"period": { "start": "02/01/2019", "end": "02/02/2019" },
"hours": {
"monday": "8u - 21u30",
"tuesday": "8u - 21u30",
"wednesday": "8u - 21u30",
"thursday": "8u - 21u30",
"friday": "8u - 21u30",
"saturday": false,
"sunday": false
},
"extra": "Gesloten op 12/01/2019. Toegankelijk voor alle Gentse studenten.</br> 2 aparte zaaltjes doorlopend beschikbaar (120 plaatsen).</br> Blokzones restaurant : 1e en 2e verdieping ",
"type": "UGent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.712859, 51.026039]
},
"properties": {
"name": "Faculteit Wetenschappen, Resto S5",
"address": "Krijgslaan 281 Gebouw S5",
"capacity": 200,
"period": { "start": "02/01/2019", "end": "02/02/2019" },
"hours": {
"monday": "15u - 22u",
"tuesday": "15u - 22u",
"wednesday": "15u - 22u",
"thursday": "15u - 22u",
"friday": "15u - 22u",
"saturday": "8u30 - 22u",
"sunday": "8u30 - 22u"
},
"extra": "<strong>Tijdens weekend enkel na reservatie week op voorhand:</strong> iedere zondag om 19u30 op <a href=\"http://student.ugent.be/blok/\">deze website</a>. Tijdens de week enkel voor UGent studenten, tijdens het weekend voor alle studenten. Doorheen de week van 8u30 tot 15u open als resto.",
"type": "UGent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.727952, 51.044599]
},
"properties": {
"name": "Blok@Therminal",
"address": "Hoveniersberg 24",
"capacity": 300,
"period": { "start": "18/12/2018", "end": "02/02/2019" },
"hours": {
"monday": "8u30 - 24u",
"tuesday": "8u30 - 24u",
"wednesday": "8u30 - 24u",
"thursday": "8u30 - 24u",
"friday": "8u30 - 24u",
"saturday": "8u30 - 24u",
"sunday": "8u30 - 24u"
},
"extra": "<strong>Enkel na registratie week op voorhand:</strong> iedere zondag om 19u op <a href=\"http://student.ugent.be/blok/\">deze website</a>. Gesloten op 25/12 en 01/01. Beperkte openingsuren op 24/12 en 31/12: 8u30 - 16u",
"type": "UGent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.728294, 51.039980]
},
"properties": {
"name": "Studentenrestaurant Kantienberg",
"address": "Stalhof 45",
"capacity": 300,
"period": { "start": "26/12/2018", "end": "27/01/2019" },
"hours": {
"monday": false,
"tuesday": false,
"wednesday": false,
"thursday": false,
"friday": false,
"saturday": "8u30 - 22u",
"sunday": "8u30 - 22u"
},
"extra": "<strong>Enkel na registratie week op voorhand:</strong> iedere zondag om 20u op <a href=\"http://student.ugent.be/blok/\">deze website</a>. Enkel open tijdens de kerstvakantie en de weekends. Tijdens de week enkel UGent studenten, tijdens weekends ook andere Gentse studenten. Gesloten op 25/12 en 01/01, beperkte openingsuren op 31/12: 8u30 - 16u",
"type": "UGent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.703135, 51.031663]
},
"properties": {
"name": "BYTES & BOOKS @ gebouw D",
"address": "Openleercentrum campus Schoonmeersen, Vaerwyckweg 1",
"capacity": 444,
"period": { "start": "07/01/2018", "end": "01/02/2019" },
"hours": {
"monday": "8u - 21u45",
"tuesday": "8u - 21u45",
"wednesday": "8u - 21u45",
"thursday": "8u - 21u45",
"friday": "8u - 16u45",
"saturday": false,
"sunday": false
},
"extra": "Tijdens de week toegankelijk voor alle Gentse studenten.</br><a href=\"https://www.facebook.com/ByBSchoonmeersen\">Bekijk hier de facebookpagina</a>. Tijdens de kerstvakantie open van 8u - 16u45 op 27/12, 28/12, 02/01, 04/01.",
"type": "hogent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.703725, 51.031663]
},
"properties": {
"name": "Campus Schoonmeersen - Resto D",
"address": "Resto D, Vaerwyckweg 1",
"capacity": 250,
"period": { "start": "26/12/2018", "end": "27/01/2019" },
"hours": {
"monday": false,
"tuesday": false,
"wednesday": false,
"thursday": false,
"friday": false,
"saturday": "8u - 18u",
"sunday": "8u - 18u"
},
"extra": "Catering beschikbaar van 9 tot 17u. Tijdens het weekend enkel voor HoGent en UGent-studenten in bezit van campuskaart Schoonmeersen. Tijdens de kerstvakantie ook geopend op 26/12, 27/12, 28/12, 02/01, 03/01, 04/01",
"type": "hogent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.724287, 51.036624]
},
"properties": {
"name": "BYTES & BOOKS LEDEGANCK",
"address": "K.L. Ledeganckstraat 8",
"capacity": 110,
"period": { "start": "07/01/2019", "end": "01/02/2019" },
"hours": {
"monday": "8u15 - 18u",
"tuesday": "8u15 - 18u",
"wednesday": "8u15 - 18u",
"thursday": "8u15 - 18u",
"friday": "8u15 - 18u",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor alle Gentse studenten.</br><a href=\"https://www.facebook.com/LeercentrumLerarenopleidingLedeganck\">Bekijk de website</a>",
"type": "hogent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.726827, 51.019702]
},
"properties": {
"name": "BYTES & BOOKS VESALIUS",
"address": "Keramiekstraat 80",
"capacity": 58,
"period": { "start": "07/01/2019", "end": "01/02/2019" },
"hours": {
"monday": "8u15 - 17u",
"tuesday": "8u15 - 17u",
"wednesday": "8u15 - 11u30<br/>12u15 - 16u",
"thursday": "8u15 - 17u",
"friday": "8u15 - 11u30<br/>12u15 - 16u",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor alle Gentse studenten. <a href=\"https://www.facebook.com/BYBVesalius\">Website</a>",
"type": "hogent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.71691, 51.04393]
},
"properties": {
"name": "Kunstenbibliotheek",
"address": "Godshuizenlaan 2A (bij STAM)",
"capacity": 80,
"period": { "start": "07/01/2019", "end": "01/02/2019" },
"hours": {
"monday": "9u - 18u",
"tuesday": "9u - 18u",
"wednesday": "9u - 18u",
"thursday": "9u - 22u",
"friday": "9u - 16u",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor alle Gentse studenten.</br><a href=\"https://www.facebook.com/kunstenbibliotheek\">Bekijk de website</a>",
"type": "hogent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.715416, 51.042241]
},
"properties": {
"name": "BYTES & BOOKS MERCATOR",
"address": "Henleykaai 84",
"capacity": 50,
"period": { "start": "07/01/2019", "end": "01/02/2019" },
"hours": {
"monday": "8u - 21u45",
"tuesday": "8u - 21u45",
"wednesday": "8u - 21u45",
"thursday": "8u - 21u45",
"friday": "8u - 16u45",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor alle Gentse studenten.",
"type": "hogent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.786580, 51.014401]
},
"properties": {
"name": "BYTES & BOOKS MELLE",
"address": "Brusselsesteenweg 161",
"capacity": 50,
"period": { "start": "07/01/2019", "end": "01/02/2019" },
"hours": {
"monday": "8u - 12u30<br/>13u - 17u",
"tuesday": "8u - 12u30<br/>13u - 17u",
"wednesday": "8u - 12u30<br/>13u - 17u",
"thursday": "8u - 12u30<br/>13u - 17u",
"friday": "8u - 12u<br/>12u30 - 16u",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor alle Gentse studenten.",
"type": "hogent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.728505, 51.040832]
},
"properties": {
"name": "Mediatheek campus Kantienberg",
"address": "Voetweg 66",
"capacity": 190,
"period": { "start": "03/12/2018", "end": "30/01/2019" },
"hours": {
"monday": "8u - 18u",
"tuesday": "8u - 18u",
"wednesday": "8u - 18u",
"thursday": "8u - 18u",
"friday": "8u - 16u",
"saturday": false,
"sunday": false
},
"extra": "<strong>Gesloten van 22/12 - 02/01.</strong> Toegankelijk voor alle Gentse studenten.</br> Geen parkeermogelijkheid op het terrein.",
"type": "Arteveldehogeschool"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.728505, 51.040832]
},
"properties": {
"name": "De Kantiene",
"address": "Voetweg 66",
"capacity": 400,
"period": { "start": "07/01/2018", "end": "01/02/2019" },
"hours": {
"monday": "8u - 21u",
"tuesday": "8u - 21u",
"wednesday": "8u - 21u",
"thursday": "8u - 21u",
"friday": "8u - 19u30",
"saturday": false,
"sunday": false
},
"extra": "Gesloten op sommige dagen wegens examens, wordt ter plaatse aangekondigd. Toegankelijk voor alle Gentse studenten. Geen parkeermogelijkheden op het terrein. Stilte is niet gegarandeerd. Eters krijgen voorrang. Zoals overal houden jullie de ruimte proper.",
"type": "Arteveldehogeschool"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.725, 51.041703]
},
"properties": {
"name": "Mediatheek campus Kattenberg",
"address": "Kattenberg 9",
"capacity": 40,
"period": { "start": "03/12/2018", "end": "30/01/2019" },
"hours": {
"monday": "8u - 18u",
"tuesday": "8u - 18u",
"wednesday": "8u - 18u",
"thursday": "8u - 18u",
"friday": "8u - 16u",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor alle Gentse studenten.</br> Geen parkeermogelijkheid op het terrein.</br> Jullie zorgen zelf voor de stilte.</br> <i>Gesloten van 22/12 - 02/01.</i>",
"type": "Arteveldehogeschool"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.724520, 51.041703]
},
"properties": {
"name": "Ontspanningsruimtes campus Kattenberg",
"address": "Kattenberg 9",
"capacity": 80,
"period": { "start": "03/12/2018", "end": "01/02/2019" },
"hours": {
"monday": "8u30 - 18u30",
"tuesday": "8u30 - 18u30",
"wednesday": "8u30 - 18u30",
"thursday": "8u30 - 18u30",
"friday": "8u30 - 18u30",
"saturday": false,
"sunday": false
},
"extra": "Gesloten van 22/12 - 06/01. Toegankelijk voor studenten Arteveldehogescool.</br> Geen parkeermogelijkheid op het terrein.</br> Jullie zorgen zelf voor de stilte.",
"type": "Arteveldehogeschool"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.668704, 51.087336]
},
"properties": {
"name": "Mediatheek campus Mariakerke",
"address": "Industrieweg 232, 9030 Mariakerke",
"capacity": 40,
"period": { "start": "03/12/2018", "end": "01/02/2019" },
"hours": {
"monday": "8u30 - 13u</br>13u30 - 17u",
"tuesday": "8u30 - 13u</br>13u30 - 17u",
"wednesday": "8u30 - 13u</br>13u30 - 17u",
"thursday": "8u30 - 13u</br>13u30 - 17u",
"friday": "8u30 - 13u</br>13u30 - 15u30",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor studenten Arteveldehogeschool.</br> Geen parkeermogelijkheid op het terrein.</br> Jullie zorgen zelf voor de stilte.</br> <i>Gesloten van 22/12 - 06/01.</i>",
"type": "Arteveldehogeschool"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.737994, 51.042897]
},
"properties": {
"name": "Ontspanningsruimte campus BPS",
"address": "Brusselsepoortstraat 93",
"capacity": 90,
"period": { "start": "03/12/2018", "end": "01/02/2019" },
"hours": {
"monday": "8u - 18u30",
"tuesday": "8u - 18u30",
"wednesday": "8u - 18u30",
"thursday": "8u - 18u30",
"friday": "8u - 18u30",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor studenten Arteveldehogeschool.<br/> Jullie zorgen zelf voor de stilte.</br> <i>Gesloten van 22/12 - 06/01.</i>",
"type": "Arteveldehogeschool"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.735499, 51.049960]
},
"properties": {
"name": "Mediatheek campus Sint-Annaplein",
"address": "Sint-Annaplein 31",
"capacity": 40,
"period": { "start": "03/12/2018", "end": "01/02/2019" },
"hours": {
"monday": "8u45 - 17u30",
"tuesday": "8u45 - 17u30",
"wednesday": "8u45 - 17u30",
"thursday": "8u45 - 17u30",
"friday": "8u45 - 16u",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor studenten Arteveldehogeschool.<br/> Geen parkeermogelijkheid op het terrein.<br/>Jullie zorgen zelf voor de stilte.</br> <i>Gesloten van 22/12 - 06/01.</i>",
"type": "Arteveldehogeschool"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.730262, 51.036897]
},
"properties": {
"name": "Ontspanningsruimte campus Stropkaai",
"address": "Stropkaai 14",
"capacity": 35,
"period": { "start": "03/12/2018", "end": "01/02/2019" },
"hours": {
"monday": "8u - 18u30",
"tuesday": "8u - 18u30",
"wednesday": "8u - 18u30",
"thursday": "8u - 18u30",
"friday": "8u - 18u30",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor studenten Arteveldehogeschool.<br/><i>Gesloten van 22/12 - 06/01.</i>",
"type": "Arteveldehogeschool"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.731638, 51.041816]
},
"properties": {
"name": "Ontspanningsruimtes campus Leeuwstraat",
"address": "Leeuwstraat 1",
"capacity": 90,
"period": { "start": "03/12/2018", "end": "01/02/2019" },
"hours": {
"monday": "8u - 18u30",
"tuesday": "8u - 18u30",
"wednesday": "8u - 18u30",
"thursday": "8u - 18u30",
"friday": "8u - 18u30",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor studenten Arteveldehogeschool.<br/>Gen parkeermogelijkheden op het terrein.<br/>Jullie zorgen zelf voor de stilte.<br/><i>Gesloten van 22/12 - 06/01.</i>",
"type": "Arteveldehogeschool"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [ 3.708502, 51.060961 ]
},
"properties": {
"name": "Bibliotheek Odisee",
"address": "Gebr. Desmetstraat 1",
"capacity": 80,
"period": { "start": "07/01/2019", "end": "01/02/2019" },
"hours": {
"monday": "8u30 - 21u",
"tuesday": "8u30 - 21u",
"wednesday": "8u30 - 21u",
"thursday": "8u30 - 21u",
"friday": "8u30 - 16u",
"saturday": false,
"sunday": false
},
"extra": "Gesloten tijdens de kerstvakantie.",
"type": "Odisee"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [ 3.728544, 51.051602 ]
},
"properties": {
"name": "Bibliotheek",
"address": "Reep 1",
"capacity": 25,
"period": { "start": "07/01/2019", "end": "31/01/2019" },
"hours": {
"monday": "10u - 18u",
"tuesday": "10u - 18u",
"wednesday": "10u - 18u",
"thursday": "10u - 18u",
"friday": "10u - 18u",
"saturday": false,
"sunday": false
},
"extra": "Toegankelijk voor iedereen. <a href=\"http://www.vlerick.be/library\">Ga naar de website</a>.",
"type": "vlerick"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.726730, 51.042146]
},
"properties": {
"name": "Sint-Pietersabdij Monnikenzolder",
"address": "Sint-Pietersplein 9",
"capacity": 60,
"period": { "start": "19/12/2018", "end": "27/01/2019" },
"hours": {
"monday": false,
"tuesday": "10u - 18u",
"wednesday": "10u - 18u",
"thursday": "10u - 18u",
"friday": "10u - 18u",
"saturday": "10u - 18u",
"sunday": "10u - 18u"
},
"extra": "Gesloten op 24/12, 25/12, 31/12, 01/01 en op maandagen",
"type": "Stad Gent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.728892, 51.049027]
},
"properties": {
"name": "De Krook",
"address": "Miriam Makebaplein 1",
"capacity": 300,
"period": { "start": false, "end": false },
"hours": {
"monday": "10u - 19u",
"tuesday": "10u - 19u",
"wednesday": "10u - 19u",
"thursday": "10u - 21u",
"friday": "10u - 19u",
"saturday": "10u - 19u",
"sunday": false
},
"extra": "200 plaatsen in de lees- en studiezaal op 3e verdiep.</br> 3x 20 stille werkplekken op 1e, 2e en 3e verdiep aan de kant Platteberg. </br><strong>Respecteer de voorbehouden plaatsen voor het raadplegen van de collectie. In de Kinder- en Jongerenbibliotheek (-1 en -2) zijn er geen studieplekken.</strong><i>Gesloten op 10/05/18 en 21/05/18</i>",
"type": "Stad Gent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.72626, 51.05603]
},
"properties": {
"name": "Jeugddienst Gent",
"address": "Kammerstraat 10",
"capacity": 50,
"period": { "start": "22/12/2018", "end": "27/01/2019"},
"hours": {
"monday": false,
"tuesday": false,
"wednesday": false,
"thursday": false,
"friday": false,
"saturday": "9u - 18u",
"sunday": "9u - 18u"
},
"extra": "Enkel open tijdens de kerstvakantie en tijdens weekends.",
"type": "Stad Gent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.72234, 51.04744]
},
"properties": {
"name": "Rijksarchief Gent",
"address": "Bagattenstraat 43",
"capacity": 40,
"period": { "start": "02/01/2018", "end": "31/01/2019"},
"hours": {
"monday": false,
"tuesday": "9u - 16u30",
"wednesday": "9u - 16u30",
"thursday": "9u - 16u30",
"friday": "9u - 16u30",
"saturday": false,
"sunday": false
},
"extra": "40 plaatsen voor studenten, geen Wi-Fi. <a href=\"http://arch.arch.be/\">Meer info</a>",
"type": "Stad Gent"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.7192127, 51.0554202]
},
"properties": {
"name": "Overkophuis",
"address": "Drabstraat 18",
"capacity": 12,
"period": { "start": "24/12/2018", "end": "25/01/2019" },
"hours": {
"monday": "14u - 20u",
"tuesday": "14u - 20u",
"wednesday": "14u - 20u",
"thursday": "14u - 20u",
"friday": "14u - 20u",
"saturday": false,
"sunday": false
},
"extra": "Gesloten in het weekend en op 25/12 en 01/01. Toegankelijk voor alle Gentse studenten. Breakroom met pooltafel, kickertafel, ...",
"type": "Andere"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.727145, 51.056998]
},
"properties": {
"name": "Bond Moyson Historische kelder",
"address": "Vrijdagsmarkt 10",
"capacity": 20,
"period": { "start": "27/12/2018", "end": "05/01/2019" },
"hours": {
"monday": false,
"tuesday": false,
"wednesday": false,
"thursday": "9u - 12u30 </br> 12u30 - 16u30",
"friday": "9u - 12u30",
"saturday": false,
"sunday": false
},
"extra": "Reserveren per sessie op <a href=\"http://www.supersaas.be/schedule/Bond_Moyson/samen_studeren_bij_bond_moyson\">deze website</a>.",
"type": "Andere"
}
},
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [3.73477, 51.04599]
},
"properties": {
"name": "Sint-Michielshuis",
"address": "Lange Violettestraat 277",
"capacity": 25,
"period": { "start": "02/01/2019", "end": "31/01/2019" },
"hours": {
"monday": "9u - 22u",
"tuesday": "9u - 22u",
"wednesday": "9u - 22u",
"thursday": "9u - 22u",
"friday": "9u - 22u",
"saturday": false,
"sunday": false
},
"extra": "<strong>Reserveren verplicht</strong> via +32 474 06 43 85, of via <a href=\"https://docs.google.com/forms/d/e/1FAIpQLScIE-kH_JaGYy_Z2_ix8gcZ3LRDGSlCdlycxrqEl8FPx__Akg/viewform?usp=send_form\">deze website</a>. Toegankelijk voor alle Gentse studenten. s Avonds steeds mogelijkheid op een warme maaltijd.",
"type": "Andere"
}
}
]

BIN
src/img/AP.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
src/img/Andere.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

BIN
src/img/GSR.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

BIN
src/img/KASK.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

BIN
src/img/KDG.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

BIN
src/img/KUL.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
src/img/Kuurne.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

140
src/img/Logo_WiFi.svg Normal file
View file

@ -0,0 +1,140 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="400"
height="175.49457"
id="svg2"
version="1.1"
inkscape:version="0.47 r22583"
sodipodi:docname="Logo BEI por Hernando.svg">
<defs
id="defs4">
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 526.18109 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="744.09448 : 526.18109 : 1"
inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
id="perspective10" />
<inkscape:perspective
id="perspective9738"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
<clipPath
clipPathUnits="userSpaceOnUse"
id="clipPath3180">
<path
d="m 596.741,190.075 149.223,0 0,64.79 -149.223,0 0,-64.79"
id="path3182" />
</clipPath>
<inkscape:perspective
id="perspective12948"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
<inkscape:perspective
id="perspective8202"
inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
inkscape:vp_z="1 : 0.5 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_x="0 : 0.5 : 1"
sodipodi:type="inkscape:persp3d" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.35"
inkscape:cx="71.569388"
inkscape:cy="-45.087756"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1280"
inkscape:window-height="968"
inkscape:window-x="-4"
inkscape:window-y="-4"
inkscape:window-maximized="1" />
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Capa 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-309.85919,-343.20843)">
<g
id="g2010"
transform="matrix(7.4723057,0,0,-7.4723057,642.24229,518.703)">
<path
d="m 0,0 c 4.977,0 9.049,4.077 9.049,9.049 l 0,5.389 c 0,4.973 -4.072,9.048 -9.049,9.048 l -35.433,0 c -4.973,0 -9.049,-4.075 -9.049,-9.048 l 0,-5.389 C -44.482,4.077 -40.406,0 -35.433,0"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path2012" />
</g>
<g
id="g2014"
transform="matrix(7.4723057,0,0,-7.4723057,518.90441,451.07859)">
<path
d="m 0,0 0,5.389 c 0,4.072 3.314,7.32 7.32,7.32 l 9.187,0 c 4.007,0 7.253,-3.248 7.253,-7.32 L 23.76,0 c 0,-4.005 -3.246,-7.32 -7.253,-7.32 l -20.239,0 C -1.451,-5.664 0,-3.036 0,0"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path2016" />
</g>
<g
id="g2018"
transform="matrix(7.4723057,0,0,-7.4723057,430.12595,472.2626)">
<path
d="m 0,0 -3.043,0 -0.55,2.56 C -3.938,4.354 -4.285,6.565 -4.354,7.393 -4.423,6.565 -4.77,4.354 -5.179,2.56 L -5.734,0 l -2.968,0 -2.767,11.748 3.317,0 0.343,-2.004 c 0.276,-1.66 0.556,-3.659 0.695,-5.044 0.136,1.385 0.481,3.384 0.896,5.044 l 0.412,2.004 2.972,0 0.413,-2.004 c 0.348,-1.66 0.693,-3.659 0.833,-5.044 0.136,1.385 0.482,3.384 0.757,5.044 l 0.278,2.004 3.313,0"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path2020" />
</g>
<g
id="g2022"
transform="matrix(7.4723057,0,0,-7.4723057,472.9572,401.52225)">
<path
d="m 0,0 c -0.968,0 -1.727,0.553 -1.727,1.451 0,0.899 0.759,1.45 1.727,1.45 1.036,0 1.796,-0.551 1.796,-1.45 C 1.796,0.553 1.036,0 0,0 m -1.521,-0.968 3.0401,0 0,-8.4984 -3.0401,0 0,8.4984 z"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path2024" />
</g>
<g
id="g2026"
transform="matrix(7.4723057,0,0,-7.4723057,574.10981,405.16126)">
<path
d="m 0,0 0,-2.618 6.22,0 0,-2.767 -6.22,0 0,-3.593 -3.247,0 0,11.748 10.156,0 0,-2.77"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path2028" />
</g>
<g
id="g2030"
transform="matrix(7.4723057,0,0,-7.4723057,651.02973,401.52225)">
<path
d="m 0,0 c -0.97,0 -1.727,0.553 -1.727,1.451 0,0.899 0.757,1.45 1.727,1.45 1.035,0 1.797,-0.551 1.797,-1.45 C 1.797,0.553 1.035,0 0,0 m -1.521,-0.968 3.0371,0 0,-8.4984 -3.0371,0 0,8.4984 z"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path2032" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.3 KiB

BIN
src/img/Luca.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 19 KiB

BIN
src/img/PXL.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
src/img/SanMarino.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

BIN
src/img/ThomasMore.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

BIN
src/img/UA.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
src/img/UCL.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
src/img/UCLL.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

BIN
src/img/UDSSanMarino.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

BIN
src/img/UHasselt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
src/img/ULB.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
src/img/USLB.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

BIN
src/img/Uppsala.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

BIN
src/img/VUB.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

View file

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 12.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
<!ENTITY ns_svg "http://www.w3.org/2000/svg">
<!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
]>
<svg version="1.1" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="483.2226563" height="551.4306641"
viewBox="0 0 483.2226563 551.4306641" overflow="visible" enable-background="new 0 0 483.2226563 551.4306641"
xml:space="preserve">
<path fill-rule="evenodd" clip-rule="evenodd" fill="#000000" d="M161.9882813,98.1240234
c24.9628906-2.3046875,44.3574219-23.8110352,44.3574219-48.9658203C206.3457031,22.0830078,184.2626953,0,157.1875,0
s-49.1572266,22.0830078-49.1572266,49.1582031c0,8.2568359,2.3037109,16.7055664,6.1445313,23.8105469l17.515625,246.4667969
l180.3964844,0.0488281l73.9912109,173.3652344l97.1445313-38.0976563l-15.0429688-35.8203125l-54.3662109,19.625
l-71.5908203-165.2802734l-167.7294922,1.1269531l-2.3027344-31.2128906l121.4228516,0.0483398v-46.1831055l-126.0546875-0.0493164
L161.9882813,98.1240234z"/>
<path fill-rule="evenodd" clip-rule="evenodd" fill="#000000" d="M343.4199219,451.5908203
c-30.4472656,60.1875-94.1748047,99.8398438-162.1503906,99.8398438C81.4296875,551.4306641,0,470.0009766,0,370.1611328
c0-70.1005859,42.4853516-135.2436523,105.8818359-164.1210938l4.1025391,53.5375977
c-37.4970703,23.628418-60.6123047,66.262207-60.6123047,110.9506836c0,72.4267578,59.0712891,131.4970703,131.4970703,131.4970703
c66.2617188,0,122.7646484-50.8515625,130.4697266-116.0869141L343.4199219,451.5908203z"/>
</svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
src/img/Zeevaartschool.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 39 KiB

BIN
src/img/erasmus.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3 KiB

61
src/img/facebook.svg Normal file
View file

@ -0,0 +1,61 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="20"
height="20"
version="1.1"
id="svg8"
sodipodi:docname="facebook.svg"
inkscape:version="0.92.4 5da689c313, 2019-01-14">
<metadata
id="metadata14">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs12" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1043"
id="namedview10"
showgrid="false"
inkscape:zoom="22.627417"
inkscape:cx="9.2776978"
inkscape:cy="-0.76716337"
inkscape:window-x="0"
inkscape:window-y="37"
inkscape:window-maximized="1"
inkscape:current-layer="svg8" />
<path
style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:18.33872604;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke fill markers"
d="M 11.571808,19.876973 C 11.059776,19.957939 10.534798,20 10,20 9.470853,20 8.9513195,19.958841 8.4444262,19.879533 -16.009211,-2.1035465 38.618255,-2.3039341 11.571808,19.877009 Z"
id="path821"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cscc" />
<path
d="M 20,10.001126 C 20,4.4780969 15.522407,0 10,0 4.4775931,0 0,4.4780969 0,10.001126 c 0,4.991368 3.6563075,9.129087 8.4376465,9.880155 V 12.892716 H 5.8978981 v -2.89159 H 8.4376465 V 7.7971424 c 0,-2.5061407 1.4934564,-3.8916303 3.7772645,-3.8916303 1.094081,0 2.238707,0.195555 2.238707,0.195555 v 2.4612498 h -1.26142 c -1.241735,0 -1.629862,0.7707181 -1.629862,1.5625655 v 1.8762246 h 2.773191 l -0.442965,2.891591 h -2.330281 v 6.988565 c 4.781339,-0.749661 8.437647,-4.887345 8.437647,-9.880336"
id="path4"
style="fill:#1877f2;fill-opacity:1;stroke-width:1.80274773"
inkscape:connector-curvature="0" />
</svg>

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
src/img/grey-marker.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
src/img/howest.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

BIN
src/img/share.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 KiB

BIN
src/img/share_square.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 217 KiB

BIN
src/img/vives.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
src/img/watt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

View file

@ -1,42 +1,45 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="nl">
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>Bloklocaties in Gent</title> <title>Bloklocaties in Vlaanderen</title>
<meta name="apple-itunes-app" content="app-id=602640924"> <meta name="apple-itunes-app" content="app-id=602640924">
<meta name="google-play-app" content="app-id=be.ugent.zeus.hydra"> <meta name="google-play-app" content="app-id=be.ugent.zeus.hydra">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<meta property="og:site_name" content="Zeus WPI"> <meta property="og:site_name" content="Zeus WPI">
<meta property="og:type" content="article"> <meta property="og:type" content="article">
<meta property="og:title" content="Bloklocaties in Gent"> <meta property="og:title" content="Bloklocaties in Vlaanderen">
<meta property="og:description" content="Samenhokken om te blokken? Er zijn maar liefst 4000 zitjes in Gent om dat te doen. Schamper en Zeus maakten een overzicht!"> <meta property="og:description" content="Heb je nood aan een plek om te blokken? Zeus en de Gentse Studentenraad maakten een overzicht van alle beschikbare bloklocaties op één kaart.">
<meta property="og:url" content="https://blok.ugent.be"> <meta property="og:url" content="https://blok.ugent.be">
<meta property="og:image" content="https://blok.ugent.be/img/share.jpg"> <meta property="og:image" content="https://blok.ugent.be/img/share_square.png">
<meta name="twitter:card" content="summary"> <meta name="twitter:card" content="summary">
<meta name="twitter:url" content="//blok.ugent.be"> <meta name="twitter:url" content="//blok.ugent.be">
<meta name="twitter:title" content="Bloklocaties in Gent"> <meta name="twitter:title" content="Bloklocaties in Vlaanderen">
<meta name="twitter:description" content="Samenhokken om te blokken? Er zijn maar liefst 4000 zitjes in Gent om dat te doen. Schamper en Zeus maakten een overzicht!"> <meta name="twitter:description" content="Heb je nood aan een plek om te blokken? Zeus en de Gentse Studentenraad maakten een overzicht van alle beschikbare bloklocaties op één kaart.">
<meta name="twitter:image" content="https://blok.ugent.be/img/share.jpg"> <meta name="twitter:image" content="https://blok.ugent.be/img/share_square.png">
<link rel="stylesheet" href="css/leaflet.css" /> <link rel="stylesheet" href="css/leaflet-1.0.0.css">
<link rel="stylesheet" href="css/map.css" /> <link rel="stylesheet" href="css/map.css">
<script type="text/javascript" src="js/leaflet.js"></script> <script type="text/javascript" src="js/leaflet-1.0.0.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script type="text/javascript" src="js/jquery-1.11.0.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/handlebars.js/2.0.0/handlebars.min.js"></script> <script type="text/javascript" src="js/handlebars-2.0.0.js"></script>
<script type="text/javascript" src="js/map.js"></script> <script type="text/javascript" src="js/map.js"></script>
</head> </head>
<body> <body>
<div id="map"></div> <div id="map"></div>
<script id="popup-template" type="text/x-handlebars-template"> <script id="popup-template" type="text/x-handlebars-template">
<div id="resto-popup"> <div id="resto-popup">
<h3>{{name}} ({{capacity}} pl.)</h3> <h3>{{name}} ({{capacity}} pl.)</h3>
{{#if wheelchair}}<img src="img/Wheelchair_symbol.svg" class="wheelchair" style="width:30px;height:30px;">{{/if}}
{{#if wifi}}<img src="img/Logo_WiFi.svg" class="wifi" style="width:40px;height:20px;">{{/if}}
<img src="img/{{type}}.png" class="type"> <img src="img/{{type}}.png" class="type">
<div class="text">Locatie: {{address}}<br /> <div class="location">Locatie: {{address}}</div>
{{#if period.start}} <div class="period">{{#if period.start}}
Van {{period.start}} tot {{period.end}} Periode: {{date period.start}} tot {{date period.end}}
{{else}} {{else}}
Open gedurende het hele jaar. Open gedurende het hele jaar.
{{/if}} {{/if}}
@ -51,62 +54,56 @@
<td>Vrijdag</td> <td>Vrijdag</td>
<td>Zaterdag</td> <td>Zaterdag</td>
<td>Zondag</td> <td>Zondag</td>
</tr> </tr><tr>
<tr> <td>{{#if hours.monday}}{{hours.monday}}{{else}}Gesloten{{/if}}</td>
<td>{{#if hours.monday}}{{{hours.monday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.tuesday}}{{hours.tuesday}}{{else}}Gesloten{{/if}}</td>
<td>{{#if hours.tuesday}}{{{hours.tuesday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.wednesday}}{{hours.wednesday}}{{else}}Gesloten{{/if}}</td>
<td>{{#if hours.wednesday}}{{{hours.wednesday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.thursday}}{{hours.thursday}}{{else}}Gesloten{{/if}}</td>
<td>{{#if hours.thursday}}{{{hours.thursday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.friday}}{{hours.friday}}{{else}}Gesloten{{/if}}</td>
<td>{{#if hours.friday}}{{{hours.friday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.saturday}}{{hours.saturday}}{{else}}Gesloten{{/if}}</td>
<td>{{#if hours.saturday}}{{{hours.saturday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.sunday}}{{hours.sunday}}{{else}}Gesloten{{/if}}</td>
<td>{{#if hours.sunday}}{{{hours.sunday}}}{{else}}Gesloten{{/if}}</td>
</tr> </tr>
</table> </table>
<table class="mobile"> <table class="mobile">
<tr> <tr>
<td>Maandag</td> <td>Maandag</td>
<td>{{#if hours.monday}}{{{hours.monday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.monday}}{{hours.monday}}{{else}}Gesloten{{/if}}</td>
</tr> </tr><tr>
<tr>
<td>Dinsdag</td> <td>Dinsdag</td>
<td>{{#if hours.tuesday}}{{{hours.tuesday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.tuesday}}{{hours.tuesday}}{{else}}Gesloten{{/if}}</td>
</tr> </tr><tr>
<tr>
<td>Woensdag</td> <td>Woensdag</td>
<td>{{#if hours.wednesday}}{{{hours.wednesday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.wednesday}}{{hours.wednesday}}{{else}}Gesloten{{/if}}</td>
</tr> </tr><tr>
<tr>
<td>Donderdag</td> <td>Donderdag</td>
<td>{{#if hours.thursday}}{{{hours.thursday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.thursday}}{{hours.thursday}}{{else}}Gesloten{{/if}}</td>
</tr><tr> </tr><tr>
<td>Vrijdag</td> <td>Vrijdag</td>
<td>{{#if hours.friday}}{{{hours.friday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.friday}}{{hours.friday}}{{else}}Gesloten{{/if}}</td>
</tr> </tr><tr>
<tr>
<td>Zaterdag</td> <td>Zaterdag</td>
<td>{{#if hours.saturday}}{{{hours.saturday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.saturday}}{{hours.saturday}}{{else}}Gesloten{{/if}}</td>
</tr> </tr><tr>
<tr>
<td>Zondag</td> <td>Zondag</td>
<td>{{#if hours.sunday}}{{{hours.sunday}}}{{else}}Gesloten{{/if}}</td> <td>{{#if hours.sunday}}{{hours.sunday}}{{else}}Gesloten{{/if}}</td>
</tr> </tr>
</table> </table>
{{#if extra}}{{{extra}}}{{/if}} {{#if extra}}{{{extra}}}{{/if}}
</div> </div>
</script> </script>
<script id="info-template" type="text/x-handlebars-template"> <script id="info-template" type="text/x-handlebars-template">
<a href="http://schamper.be/"><img id="schamper" src="img/schamper.png"></a> <a href="https://zeus.gent/" class="author-icon"><img src="img/zeus.png" alt="Zeus WPI"></a>
<a href="http://zeus.ugent.be/"><img id="zeus" src="img/zeus.png"></a> <a href="https://gentsestudentenraad.be/" class="author-icon"><img src="img/GSR.png" alt="Gentse Studentenraad"></a>
</script>
<script id="city-select-template" type="text/x-handlebars-template">
<ul>
<li><a onclick="moveToCoords(51.0475378, 3.7261835, 13)">Gent</a></li>
<li><a onclick="moveToCoords(50.8276123, 3.2672309, 15)">Kortrijk</a></li>
</ul>
</script> </script>
<script id="share-template" type="text/x-handlebars-template"> <script id="share-template" type="text/x-handlebars-template">
<div class="fb-share-button" data-href="//blok.ugent.be" data-layout="button_count"></div> <div class="share">
<a href="https://www.facebook.com/Blokmap-Vlaanderen-105861927804347/" class="img-and-text-link"><img src="img/facebook.svg" alt=""> <span>Facebookpagina</span></a> |
<a href="https://forms.gle/H67tFQp54udB9cyR7">Locatie melden</a>
</div>
</script> </script>
<script id="legend-template" type="text/x-handlebars-template"> <script id="legend-template" type="text/x-handlebars-template">
<div style="padding-top: 5px;"> <div style="padding-top: 5px;">
<div style="width: 125px; height: 18px; padding-top: 5px; padding-left: 5px;"> <div style="width: 125px; height: 18px; padding-top: 5px; padding-left: 5px;">
@ -117,32 +114,27 @@
<div style="height: 10px; width: 10px; background: rgb(36, 126, 202); margin-top: 1px; margin-left: 5px;"></div> <div style="height: 10px; width: 10px; background: rgb(36, 126, 202); margin-top: 1px; margin-left: 5px;"></div>
<span style="position: absolute; left: 25px; top: 30px;">Enkel week</span> <span style="position: absolute; left: 25px; top: 30px;">Enkel week</span>
</div> </div>
<div style="width: 125px; height: 18px; padding-top: 5px; padding-left: 5px;">
<div style="height: 10px; width: 10px; background: rgb(120,120,120); margin-top: 1px; margin-left: 5px;"></div>
<span style="position: absolute; left: 25px; top: 52px;">Opent binnenkort</span>
</div>
<div style="width: 140px; height: 18px; padding-top: 5px; padding-left: 5px;" class="holiday"> <div style="width: 140px; height: 18px; padding-top: 5px; padding-left: 5px;" class="holiday">
<div style="height: 10px; width: 10px; background: rgb(121, 230, 121); margin-top: 0px; margin-left: 5px;"></div> <div style="height: 10px; width: 10px; background: rgb(121, 230, 121); margin-top: 0px; margin-left: 5px;"></div>
<span style="position: absolute; left: 25px; top: 53px;">Tijdens kerstvakantie</span> <span style="position: absolute; left: 25px; top: 75px;">Tijdens kerstvakantie</span>
</div> </div>
</div> </div>
</script> </script>
<!-- Facebook SDK -->
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&appId=146947948791011&version=v2.0";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<!-- Google Analytics SDK --> <!-- Google Analytics SDK -->
<script> <script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (function(i,s,o,g,r,a,m){i["GoogleAnalyticsObject"]=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga'); })(window,document,"script","//www.google-analytics.com/analytics.js","ga");
ga('create', 'UA-25444917-8', 'auto');
ga('send', 'pageview');
ga("create", "UA-25444917-8", "auto");
ga('set', 'anonymizeIp', true);
ga("send", "pageview");
</script> </script>
</body> </body>
</html> </html>

File diff suppressed because one or more lines are too long

4
src/js/jquery-1.11.0.js vendored Normal file

File diff suppressed because one or more lines are too long

5
src/js/leaflet-1.6.0.js Normal file

File diff suppressed because one or more lines are too long

View file

@ -1,24 +1,39 @@
var map;
$(document).ready(function() { $(document).ready(function() {
/* change image path */ Handlebars.registerHelper("date", function (ddmyyyy) {
L.Icon.Default.imagePath = 'img'; return ddmyyyy.replace(/-/g, "/");
});
var popuptemplate = Handlebars.compile($('#popup-template').html());
L.Icon.Default.imagePath = "img";
var popuptemplate = Handlebars.compile($("#popup-template").html());
var BlueIcon = L.Icon.Default.extend({});
var RedIcon = L.Icon.Default.extend({ var RedIcon = L.Icon.Default.extend({
options: { options: {
iconUrl: 'img/red-marker.png' iconUrl: "img/red-marker.png"
} }
}); });
var ChristmasIcon = L.Icon.Default.extend({ var ChristmasIcon = L.Icon.Default.extend({
options: { options: {
iconUrl: 'img/christmas-marker.png' iconUrl: "img/christmas-marker.png"
} }
}); });
var redIcon = new RedIcon(); var GreyIcon = L.Icon.Default.extend({
var BlueIcon = L.Icon.Default.extend({}); options: {
iconUrl: "img/grey-marker.png"
}
});
var blueIcon = new BlueIcon(); var blueIcon = new BlueIcon();
var redIcon = new RedIcon();
var christmasIcon = new ChristmasIcon(); var christmasIcon = new ChristmasIcon();
var christmasHoliday = Date.now() < new Date("2016-01-04").getTime(); var greyIcon = new GreyIcon();
var now = new Date();
var christmasSeason =
now.getTime() > new Date(now.getFullYear() + "-12-20").getTime() ||
now.getTime() < new Date(now.getFullYear() + "-01-04").getTime();
function onEachFeature(feature, layer) { function onEachFeature(feature, layer) {
if (feature.properties) { if (feature.properties) {
@ -29,25 +44,39 @@ $(document).ready(function() {
} }
function pointToLayer(feature, latlng) { function pointToLayer(feature, latlng) {
var marker = new HoverMarker(latlng, { icon: redIcon, riseOnHover: true}); var icon = redIcon;
var iconDescription = "red";
if (feature.properties) { if (feature.properties) {
if (feature.properties.holidays && christmasHoliday) { var startingDateString =feature.properties.period.start;
var marker = new HoverMarker(latlng, { icon: christmasIcon, riseOnHover: true}); var month = (parseInt(startingDateString.substring(3,5))-1);
} var startingDate = new Date("20"+startingDateString.substring(6,8),month,startingDateString.substring(0,2));
if (!feature.properties.hours.saturday && !feature.properties.hours.sunday) { if (Date.now()<startingDate) {
var marker = new HoverMarker(latlng, { icon: blueIcon, riseOnHover: true}); icon = greyIcon;
iconDescription = "grey";
} else if (feature.properties.holidays && christmasSeason) {
icon = christmasIcon;
iconDescription = "christmas";
} else if ((!feature.properties.hours.saturday && !feature.properties.hours.sunday)||(feature.properties.hours.saturday.toLowerCase()==="gesloten"&&feature.properties.hours.sunday.toLowerCase()==="gesloten")) {
icon = blueIcon;
iconDescription = "blue";
} }
} }
return marker return new HoverMarker(latlng, { icon: icon, riseOnHover: true});
} }
map = L.map('map').setView([51.0475378, 3.7261835], 13); var map = L.map("map", {zoomControl: false}).setView([50.702, 4.335], 9);
var osm = L.tileLayer('https://{s}.tiles.mapbox.com/v3/feliciaan.keoaj8d5/{z}/{x}/{y}{r}.png', { var osm = L.tileLayer("https://api.mapbox.com/styles/v1/{id}/tiles/{z}/{x}/{y}?access_token={accessToken}", {
attribution: '© <a href="https://www.mapbox.com/map-feedback/">Mapbox</a> | © <a href="https://www.openstreetmap.org/copyright" target="_blank">OpenStreetMap</a>-contributors | Made with ❤ by <a href="https://zeus.ugent.be">Zeus WPI</a>', id: 'mapbox/streets-v11',
detectRetina: true tileSize: 512,
zoomOffset: -1,
// account name = zeuswpi, details are in password manager
// token has a restriction to only work with our domains and localhost
accessToken: 'pk.eyJ1IjoiemV1c3dwaSIsImEiOiJja2QzMDZ1NmcwMjBtMnlxbXV2bXVpaXhuIn0.-ViXZUT9SqRI3IvB8209LQ',
attribution: '<span>Achtergrondkaart © <a href="https://www.openstreetmap.org/copyright" target="_blank">OpenStreetMap</a>-bijdragers </span>, <span lang="en">Imagery © <a href="https://www.mapbox.com/">Mapbox</a></span>. | <span lang="en">Made with ❤ by <a href="https://zeus.gent/">Zeus WPI</a></span> | <a href="https://zeus.gent/about/privacy/">Privacybeleid</a>',
maxZoom: 18
}).addTo(map); }).addTo(map);
$.getJSON('data.json') $.getJSON("https://blokdata.zeus.gent/data.json")
.done(function(data) { .done(function(data) {
var geojson = L.geoJson(data, { var geojson = L.geoJson(data, {
onEachFeature: onEachFeature, onEachFeature: onEachFeature,
@ -64,65 +93,55 @@ $(document).ready(function() {
}, },
onAdd: function (map) { onAdd: function (map) {
this._div = L.DomUtil.create('div', this.divClass); this._div = L.DomUtil.create("div", this.divClass);
this._div.innerHTML = this.template(); this._div.innerHTML = this.template();
return this._div; return this._div;
} }
}); });
// code copied from http://jsfiddle.net/sowelie/3JbNY/ // code copied from http://jsfiddle.net/sowelie/3JbNY/
var HoverMarker = L.Marker.extend({ var HoverMarker = L.Marker.extend({
bindPopup: function(htmlContent, options) { bindPopup: function(htmlContent, options) {
if (options && options.showOnMouseOver) { if (options && options.showOnMouseOver) {
// call the super method
L.Marker.prototype.bindPopup.apply(this, [htmlContent, options]); L.Marker.prototype.bindPopup.apply(this, [htmlContent, options]);
// unbind the click event
this.off("click", this.openPopup, this); this.off("click", this.openPopup, this);
// bind to mouse over
this.on("mouseover", function(e) { this.on("mouseover", function(e) {
// get the element that the mouse hovered onto // get the element that the mouse hovered onto
var target = e.originalEvent.fromElement || e.originalEvent.relatedTarget; var target = e.originalEvent.fromElement || e.originalEvent.relatedTarget;
var parent = this._getParent(target, "leaflet-popup"); var ancestor = this._findAncestorWithClass(target, "leaflet-popup");
// check to see if the element is a popup, and if it is this marker's popup // check to see if the element is a popup, and if it is this marker's popup
if (parent == this._popup._container) if (ancestor && ancestor === this._popup._container)
return true; return true;
// show the popup
this.openPopup(); this.openPopup();
}, this); }, this);
// and mouse out
this.on("mouseout", function(e) { this.on("mouseout", function(e) {
// get the element that the mouse hovered onto // get the element that the mouse hovered onto
var target = e.originalEvent.toElement || e.originalEvent.relatedTarget; var target = e.originalEvent.toElement || e.originalEvent.relatedTarget;
// check to see if the element is a popup // check to see if the element is a popup
if (this._getParent(target, "leaflet-popup")) { if (this._findAncestorWithClass(target, "leaflet-popup")) {
L.DomEvent.on(this._popup._container, "mouseout", this._popupMouseOut, this); L.DomEvent.on(this._popup._container, "mouseout", this._popupMouseOut, this);
return true; return true;
} }
// hide the popup
this.closePopup(); this.closePopup();
}, this); }, this);
} }
}, },
_popupMouseOut: function(e) { _popupMouseOut: function(e) {
// detach the event // detach the event
L.DomEvent.off(this._popup, "mouseout", this._popupMouseOut, this); L.DomEvent.off(this._popup, "mouseout", this._popupMouseOut, this);
@ -130,53 +149,38 @@ $(document).ready(function() {
var target = e.toElement || e.relatedTarget; var target = e.toElement || e.relatedTarget;
// check to see if the element is a popup // check to see if the element is a popup
if (this._getParent(target, "leaflet-popup")) if (this._findAncestorWithClass(target, "leaflet-popup"))
return true; return true;
// check to see if the marker was hovered back onto // check to see if the marker was hovered back onto
if (target == this._icon) if (target === this._icon)
return true; return true;
// hide the popup
this.closePopup(); this.closePopup();
}, },
_getParent: function(element, className) { _findAncestorWithClass: function(element, className) {
while (element) {
var parent = element.parentNode; if (element.className && L.DomUtil.hasClass(element, className))
return element;
while (parent != null) { element = element.parentNode;
if (parent.className && L.DomUtil.hasClass(parent, className))
return parent;
parent = parent.parentNode;
} }
return false; return null;
} }
}); });
var info = new SimpleControl('#info-template', 'info', { var info = new SimpleControl("#info-template", "info", {
position: 'topright' position: "topright"
}).addTo(map); }).addTo(map);
var citySelect = new SimpleControl('#city-select-template', christmasHoliday ? "holiday-legend" : "legend", { var sharePane = new SimpleControl("#share-template", "info", {
position: 'topleft' position: "bottomleft"
}).addTo(map); }).addTo(map);
var sharePane = new SimpleControl('#share-template', 'info', { var legend = new SimpleControl("#legend-template", christmasSeason ? "holiday-legend" : "legend", {
position: 'bottomleft' position: "bottomright"
}).addTo(map); }).addTo(map);
var legend = new SimpleControl('#legend-template', christmasHoliday ? "holiday-legend" : "legend", { L.control.zoom().addTo(map);
position: 'bottomright'
}).addTo(map);
}); });
function moveToCoords(x, y, scale) {
map.setView([x, y], scale);
}