Commit | Line | Data |
---|---|---|
76c2419a GF |
1 | </head> |
2 | <body> | |
3 | ||
4 | <!-- Place banner here --> | |
5 | ||
022f3ac3 | 6 | <iframe src="//static.libreplanet.org/nosvn/banners/2020fundraiser-fall/" style="width: 100%; height: 150px; display: block; margin: 0; border: 0 none; overflow: hidden;"></iframe> |
76c2419a | 7 | |
54f02cb9 | 8 | <!--<div class="lp-archived"> |
76c2419a | 9 | <p>This is an archive of a past conference. Subscribe below to be notified when the next LibrePlanet is announced.</p> |
54f02cb9 | 10 | </div>--> |
76c2419a GF |
11 | <!-- Place modal window here --> |
12 | ||
022f3ac3 MM |
13 | <!-- Begin fsf-modal-window-elem campaign element --> |
14 | <link type="text/css" rel="stylesheet" href="https://static.libreplanet.org/nosvn/fonts/fa/css/font-awesome.min.css"> | |
15 | <style> | |
16 | #fsf-modal-window-elem-container div { | |
17 | -webkit-box-sizing: border-box; | |
18 | -moz-box-sizing: border-box; | |
19 | box-sizing: border-box; | |
20 | } | |
21 | ||
22 | @media screen and (min-width: 700px) { | |
23 | ||
24 | #fsf-modal-window-elem-outer-v-center { | |
25 | display: table; | |
26 | position: absolute; | |
27 | height: 100%; | |
28 | width: 100%; | |
29 | } | |
30 | #fsf-modal-window-elem-inner-v-center { | |
31 | display: table-cell; | |
32 | vertical-align: middle; | |
33 | } | |
34 | ||
35 | #fsf-modal-window-elem { | |
36 | width: 687px; | |
37 | margin-left: auto; | |
38 | margin-right: auto; | |
39 | } | |
40 | ||
41 | #fsf-modal-window-elem-right-column { | |
42 | float: right; | |
43 | width: 280px; | |
44 | padding-left: 20px; | |
45 | } | |
46 | ||
47 | #fsf-modal-window-elem-left-column { | |
48 | width: 100%; | |
49 | float: left; | |
50 | margin-right: -280px; | |
51 | } | |
52 | ||
53 | #fsf-modal-window-elem-text { | |
54 | margin-right: 280px; | |
55 | } | |
56 | } | |
57 | ||
58 | @media screen and (max-width: 699px) { | |
59 | ||
60 | #fsf-modal-window-elem { | |
61 | ||
62 | -ms-box-orient: horizontal; | |
63 | display: -webkit-box; | |
64 | display: -moz-box; | |
65 | display: -ms-flexbox; | |
66 | display: -moz-flex; | |
67 | display: -webkit-flex; | |
68 | display: flex; | |
69 | ||
70 | -webkit-flex-flow: row wrap; | |
71 | flex-flow: row wrap; | |
72 | } | |
73 | ||
74 | #fsf-modal-window-elem { | |
75 | width: 80vw; | |
76 | margin-left: 10vw; | |
77 | margin-right: 10vw; | |
78 | margin-top: 40px; | |
79 | margin-bottom: 40px; | |
80 | } | |
81 | ||
82 | #fsf-modal-window-elem-right-column { | |
83 | width: 100%; | |
84 | order: 1; | |
85 | } | |
86 | ||
87 | #fsf-modal-window-elem-left-column { | |
88 | width: 100%; | |
89 | order: 2; | |
90 | } | |
91 | ||
92 | #fsf-modal-window-elem-text { | |
93 | margin-top: 20px; | |
94 | } | |
95 | } | |
96 | ||
97 | @media screen and (max-width: 360px) { | |
98 | .long-button-text { | |
99 | font-size: 25px !important; | |
100 | } | |
101 | } | |
102 | ||
103 | #fsf-modal-window-elem-container { | |
104 | position: fixed; | |
105 | z-index: 10000; | |
106 | left: 0; | |
107 | top: 0; | |
108 | width: 100%; | |
109 | height: 100%; | |
110 | overflow: auto; | |
111 | background-color: rgba(0,0,0,0.8); | |
112 | ||
113 | font-weight: normal; | |
114 | } | |
115 | ||
116 | #fsf-modal-window-elem a, a:active, a:focus { | |
117 | outline: none; | |
118 | border-bottom: 0px; | |
119 | } | |
120 | ||
121 | #fsf-modal-window-elem { | |
122 | overflow: auto; | |
123 | padding: 20px; | |
124 | border-style: solid; | |
125 | border-width: 5px; | |
126 | border-color: #c44945; | |
127 | border-radius: 20px; | |
128 | box-shadow: 0px 0px 10px #111111; | |
129 | background-color: #fff2ab; | |
130 | } | |
131 | ||
132 | #fsf-modal-window-elem-header { | |
133 | width: 100%; | |
134 | } | |
135 | ||
136 | #fsf-modal-window-elem-header h2 { | |
137 | font-family: sans-serif,"Helvetica",Arial; | |
138 | font-weight: bold; | |
139 | font-size: 24px; | |
140 | color: #002047; | |
141 | /* text-shadow: 0px 0px 8px #00378c; */ | |
142 | padding-bottom: 20px; | |
143 | margin-top: 0px; | |
144 | margin-bottom: 0px; | |
145 | border: none; | |
146 | } | |
147 | ||
148 | #fsf-modal-window-elem-close-button { | |
149 | float: right; | |
150 | height: 40px; | |
151 | margin-right: -20px; | |
152 | margin-top: -20px; | |
153 | padding: 11px; | |
154 | color: #888; | |
155 | cursor: pointer; | |
156 | } | |
157 | ||
158 | #fsf-modal-window-elem-close-button:hover { | |
159 | color: #aaf; | |
160 | } | |
161 | ||
162 | #fsf-modal-window-elem-right-column { | |
163 | text-align: center; | |
164 | -webkit-user-select: none; | |
165 | -moz-user-select: none; | |
166 | -ms-user-select: none; | |
167 | user-select: none; | |
168 | } | |
169 | ||
170 | #fsf-modal-window-elem-buttons div { | |
171 | height:53.333px; | |
172 | line-height: 53.333px; | |
173 | margin-left:auto; | |
174 | margin-right:auto; | |
175 | display:block; | |
176 | } | |
177 | ||
178 | #fsf-modal-window-elem-buttons { | |
179 | } | |
180 | ||
181 | #fsf-modal-window-elem-buttons a { | |
182 | width: 100%; | |
183 | display: block; | |
184 | text-align: center; | |
185 | font-size:35px; | |
186 | color:#002047; | |
187 | text-decoration: none; | |
188 | font-family: sans-serif,"Helvetica",Arial; | |
189 | font-weight: normal; | |
190 | } | |
191 | ||
192 | #fsf-modal-window-elem-maybe-later { | |
193 | margin-top: 5px; | |
194 | margin-bottom: -5px; | |
195 | } | |
196 | ||
197 | #fsf-modal-window-elem-maybe-later a { | |
198 | color: #367c93; | |
199 | line-height: 20px; | |
200 | text-decoration: none; | |
201 | cursor: pointer; | |
202 | font-weight: normal; | |
203 | font-family: sans-serif,"Helvetica",Arial; | |
204 | font-size: 16px; | |
205 | } | |
206 | ||
207 | #fsf-modal-window-elem-text { | |
208 | } | |
209 | ||
210 | #fsf-modal-window-elem-text a { | |
211 | color: #002047; | |
212 | font-weight: 700; | |
213 | text-decoration: none; | |
214 | } | |
215 | ||
216 | #fsf-modal-window-elem-text a:hover { | |
217 | color: #fd8e1b; | |
218 | } | |
219 | ||
220 | #fsf-modal-window-elem-text a:focus { | |
221 | color: #fd8e1b; | |
222 | } | |
223 | ||
224 | #fsf-modal-window-elem-text a:active { | |
225 | color: #ffac30; | |
226 | } | |
227 | ||
228 | #fsf-modal-window-elem-text p { | |
229 | font-family: sans-serif,"Helvetica",Arial; | |
230 | font-size: 17px; | |
231 | font-weight: normal; | |
232 | margin: 0px 0px 10px 0px; | |
233 | line-height: 20px; | |
234 | color: #002047; | |
235 | /* text-shadow: 0px 0px 8px #004067;*/ | |
236 | } | |
237 | </style> | |
238 | <div id="fsf-modal-window-elem-container" style="display: none;"> | |
239 | <div id="fsf-modal-window-elem-outer-v-center"> | |
240 | <div id="fsf-modal-window-elem-inner-v-center"> | |
241 | <div id="fsf-modal-window-elem"> | |
242 | <div id="fsf-modal-window-elem-header"> | |
243 | <div id="fsf-modal-window-elem-close-button" onclick="//fsfModalWindowElemDontShowForAWhile();"> | |
244 | <i class="fa fa-close">​</i> | |
245 | </div> | |
246 | <h2>All aboard for software freedom!</h2> | |
247 | </div> | |
248 | <div id="fsf-modal-window-elem-left-column"> | |
249 | <div id="fsf-modal-window-elem-text"> | |
250 | ||
251 | <p> | |
252 | ||
253 | In our 35 year journey, free software has become a vital global movement for user freedom. | |
254 | ||
255 | </p> | |
256 | ||
257 | <p> | |
258 | ||
259 | Without free software, we cannot and will not have a free society. Your membership fuels the voyage forward, and will help us reach our ultimate destination: full software freedom. | |
260 | ||
261 | </p> | |
262 | ||
263 | <p> | |
264 | ||
265 | Join us today for $10/month ($5 for students) and help us reach our December 31 goal of 500 new associate members! | |
266 | ||
267 | </p> | |
268 | ||
269 | <p><span id="fsf-modal-window-text-link"><a href="https://www.fsf.org/appeal?pk_campaign=frfall2020&pk_kwd=learn-more&pk_source=modal">Read more</a> | <a href="https://my.fsf.org/join?pk_campaign=frfall2020&pk_source=modal">Join</a></span></p> | |
270 | ||
271 | </div> | |
272 | </div> | |
273 | <div id="fsf-modal-window-elem-right-column"> | |
274 | <div id="fsf-modal-window-elem-buttons" style="border-radius: 20px; box-shadow: 0px 0px 5px #0c2b2b;"> | |
275 | <div style="background-color:#c44945; border-top-right-radius: 20px; border-top-left-radius: 20px;"> | |
276 | <a style="text-shadow: 0px 0px 6px #e75e57;" href="https://my.fsf.org/join?pk_campaign=frfall2020&pk_source=modal" onclick="//fsfModalWindowElemFollowedLink();"><i class="fa fa-check-circle"> </i>Join</a> | |
277 | </div> | |
278 | ||
279 | <!--<div style="background-color:#fff2ab">--> | |
280 | <div style="background-color:#c8c4ff"> | |
281 | <a style="text-shadow: 0px 0px 4px #e75e57;" href="https://my.fsf.org/renew?pk_campaign=frfall2020&pk_source=modal" onclick="//fsfModalWindowElemFollowedLink();"><i class="fa fa-refresh"> </i>Renew</a> | |
282 | </div> | |
283 | ||
284 | <div style="background-color:#7745a8; border-bottom-right-radius: 20px; border-bottom-left-radius: 20px; margin-bottom: 2px"> | |
285 | <a style="text-shadow: 0px 0px 6px #fff2ab;" href="https://my.fsf.org/donate?pk_campaign=frfall2020&pk_source=modal" onclick="//fsfModalWindowElemFollowedLink();"><i class="fa fa-money"> </i>Donate</a> | |
286 | </div> | |
287 | </div> | |
288 | </div> | |
289 | </div> | |
290 | </div> | |
291 | </div> | |
292 | <script> | |
293 | // @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&dn=gpl-3.0.txt GPL-3.0 | |
294 | ||
295 | // Licensed GPLv3-or-later by Andrew Engelbrecht | |
296 | ||
297 | var startTime, endTime, switchTextTime; | |
298 | ||
299 | startTime = new Date('2020-11-13T04:00:00Z'); | |
300 | switchTextTime = new Date('2020-12-16T04:00:00Z'); | |
301 | // endTime is unused. | |
302 | endTime = new Date('2021-01-01T04:00:00Z'); | |
303 | ||
304 | // Possibly switch the text that is displayed in the modal window, depending | |
305 | // upon the current date. | |
306 | function fsfModalWindowElemMaybeSwitchText () { | |
307 | ||
308 | var now; | |
309 | ||
310 | now = new Date(); | |
311 | if (now.getTime() < switchTextTime.getTime()) { | |
312 | return; // Do not switch the text | |
313 | } | |
314 | ||
315 | // Switch text | |
316 | document.getElementById("fsf-modal-window-elem-text").innerHTML =' \ | |
317 | \ | |
318 | <p>In our 35 year journey, free software has become a vital global movement for user freedom.<\/p><p>Without free software, we cannot and will not have a free society. Your membership fuels the voyage forward, and will help us reach our ultimate destination: full software freedom.<\/p><p>Join us today for $10\/month ($5 for students) and help us reach our December 31 goal of 500 new associate members!<\/p> \ | |
319 | \ | |
320 | <p><span id="fsf-modal-window-text-link"><a href="https://www.fsf.org/appeal?pk_campaign=frfall2020&pk_kwd=learn-more&pk_source=modal">Read more<\/a> | <a href="https://my.fsf.org/join?pk_campaign=frfall2020&pk_source=modal">Join<\/a><\/span><\/p>'; | |
321 | } | |
322 | ||
323 | // Show fsf-modal-window-elem if it has not been previously closed by | |
324 | // the user, nor recently hit "maybe later", | |
325 | // and the campaign is still happening | |
326 | function fsfModalWindowElemMaybeShow () { | |
327 | ||
328 | var pattern, noShowFsfModalWindowElementP, now; | |
329 | ||
330 | // See if cookie says not to show element | |
331 | pattern = /showFsfFall2020FundraiserModalWindowElementP\s*=\s*false/; | |
332 | noShowFsfModalWindowElementP = pattern.test(document.cookie); | |
333 | ||
334 | //// Uncomment here to enable modal window hiding | |
335 | if (!noShowFsfModalWindowElementP) { | |
336 | setTimeout(function () { | |
337 | // display the element | |
338 | document.getElementById("fsf-modal-window-elem-container").style.display="block"; | |
339 | }, 0); | |
340 | } | |
341 | } | |
342 | ||
343 | // Call this first to set the proper text. | |
344 | fsfModalWindowElemMaybeSwitchText(); | |
345 | // Check if appeal is the url. | |
346 | if (window.location.href.indexOf("appeal") == -1) { | |
347 | // Call this right away to avoid flicker. | |
348 | fsfModalWindowElemMaybeShow(); | |
349 | } | |
350 | ||
351 | // Get the time `plusDays` in the future. | |
352 | // This can be a fraction. | |
353 | function daysInFuture (plusDays) { | |
354 | var now, future; | |
355 | ||
356 | now = new Date(); | |
357 | future = new Date(now.getTime() + Math.floor(1000 * 60 * 60 * 24 * plusDays)); | |
358 | return future.toGMTString(); | |
359 | } | |
360 | ||
361 | // Hide the fsf-modal-window-elem | |
362 | function fsfModalWindowElemHide () { | |
363 | document.getElementById("fsf-modal-window-elem-container").style.display="none"; | |
364 | } | |
365 | ||
366 | // Optionally hide elem and set a cookie to keep the fsf-modal-window-elem hidden for the next `forDays`. | |
367 | function fsfModalWindowElemDontShowForDays (forDays, hideNow) { | |
368 | if (hideNow === true) { | |
369 | fsfModalWindowElemHide(); | |
370 | } | |
371 | //document.cookie = "showFsfFall2020FundraiserModalWindowElementP=false; path=/; domain=.libreplanet.org; expires=" + daysInFuture(forDays); | |
372 | document.cookie = "showFsfFall2020FundraiserModalWindowElementP=false; path=/; SameSite=Strict; Secure; expires=" + daysInFuture(forDays); | |
373 | } | |
374 | ||
375 | // Hide the element from now to two weeks after closing it | |
376 | function fsfModalWindowElemDontShowForAWhile () { | |
377 | fsfModalWindowElemDontShowForDays(7, true); | |
378 | } | |
379 | ||
380 | // Keep the element visible for now, but do not show it for a while | |
381 | function fsfModalWindowElemFollowedLink () { | |
382 | fsfModalWindowElemDontShowForDays(14, false); | |
383 | } | |
384 | ||
385 | // Check if visiting appeal page. | |
386 | if (window.location.href.indexOf("appeal") > -1) { | |
387 | fsfModalWindowElemDontShowForAWhile(); | |
388 | } | |
389 | ||
390 | // Close popup if user clicks trasparent part | |
391 | document.getElementById("fsf-modal-window-elem-container").addEventListener("click", function(event){ | |
392 | fsfModalWindowElemDontShowForAWhile(); | |
393 | }); | |
394 | ||
395 | // Do not close popup if clicking non-trasparent part (with the text and buttons) | |
396 | document.getElementById("fsf-modal-window-elem").addEventListener("click", function(event){ | |
397 | event.stopPropagation(); | |
398 | }); | |
399 | ||
400 | // Close popup if user clicks X icon | |
401 | document.getElementById("fsf-modal-window-elem-close-button").addEventListener("click", function(event){ | |
402 | fsfModalWindowElemDontShowForAWhile(); | |
403 | }); | |
404 | ||
405 | // Disable popup if user clicks one of the main buttons | |
406 | document.getElementById("fsf-modal-window-elem-buttons").addEventListener("click", function(event){ | |
407 | fsfModalWindowElemFollowedLink(); | |
408 | }); | |
409 | ||
410 | // Disable popup if user clicks one of the "Read more" link | |
411 | document.getElementById("fsf-modal-window-text-link").addEventListener("click", function(event){ | |
412 | fsfModalWindowElemFollowedLink(); | |
413 | }); | |
76c2419a | 414 | |
022f3ac3 MM |
415 | // Close popup if user presses escape key |
416 | window.addEventListener("keydown", function (event) { | |
417 | switch (event.key) { | |
418 | case "Escape": | |
419 | fsfModalWindowElemDontShowForAWhile(); | |
420 | break; | |
421 | default: | |
422 | return; | |
423 | } | |
424 | }, true); | |
425 | // @license-end | |
426 | </script> | |
427 | </div> | |
428 | <!-- End fsf-modal-window-elem campaign element --> | |
76c2419a GF |
429 | |
430 | <div id="wrapper"> <!-- start of wrapper --> | |
431 | <div class="lp-banner hidden-xs"> <!--start of lp banner --> | |
432 | <div class="container"> <!-- start of container --> | |
433 | <div class="row"> | |
434 | <div class="lp-head"> <!-- start of lp header --> | |
435 | <div class="lp-logo col-sm-3 col-xs-5"> | |
54f02cb9 | 436 | <a href="/2021/"> |
52342458 | 437 | <img src="/2021/assets/img/logo.svg" |
76c2419a | 438 | class="img-responsive" |
54f02cb9 | 439 | alt="[ LibrePlanet 2021 ]" /> |
76c2419a GF |
440 | </a> |
441 | </div> | |
442 | <div class="lp-date-place col-sm-5 col-xs-2"> | |
443 | <!-- Heads up! When updating this date and place information, | |
444 | remember to update it in the small | |
445 | screen navbar too (see below) --> | |
553f116e | 446 | <p><br><strong>Online<br /> |
91540fad | 447 | March 20-21, 2021</strong></p> |
76c2419a GF |
448 | </div> |
449 | <!-- #top-right-desktop start --> | |
54f02cb9 | 450 | <!--#include virtual="/2021/includes/register-now.html"--> |
76c2419a GF |
451 | <!-- #top-right-desktop end --> |
452 | <!-- #top-right-desktop start --> | |
54f02cb9 | 453 | <!--#include virtual="/2021/includes/join-list.html"--> |
76c2419a GF |
454 | <!-- #top-right-desktop end --> |
455 | </div><!-- end of lp header --> | |
456 | ||
457 | </div> | |
458 | </div> <!-- end of header container --> | |
459 | </div> <!-- end of lp banner --> | |
460 | ||
461 | <!-- start nav for small screens --> | |
462 | <nav class="navbar navbar-default visible-xs"> | |
463 | <div class="container-fluid"> | |
464 | <!-- Brand and toggle get grouped for better mobile display --> | |
465 | <div class="navbar-header"> | |
466 | <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" | |
467 | data-target="#lp-navbar-collapse" aria-expanded="false"> | |
468 | <span class="sr-only">Toggle navigation</span> | |
469 | <span class="icon-bar"></span> | |
470 | <span class="icon-bar"></span> | |
471 | <span class="icon-bar"></span> | |
472 | </button> | |
54f02cb9 | 473 | <a class="navbar-brand" href="/2021/"> |
474 | <img src="/2021/assets/img/logo.svg" | |
76c2419a GF |
475 | style="max-width: 100px" |
476 | class="img-responsive" | |
54f02cb9 | 477 | alt="[ LibrePlanet 2021 ]" /> |
76c2419a GF |
478 | </a> |
479 | <p class="navbar-text"> | |
480 | <!-- Heads up! When updating date place, remember to | |
481 | update it in the lp banner too (see above) --> | |
b5df2398 | 482 | Online<br />March 20 & 21st, 2021 |
76c2419a GF |
483 | </p> |
484 | </div> | |
485 | ||
486 | <div class="collapse navbar-collapse" id="lp-navbar-collapse"> | |
487 | ||
488 | <ul class="nav navbar-nav"> | |
54f02cb9 | 489 | <!--#include virtual="/2021/includes/nav-list-1.html"--> |
76c2419a GF |
490 | </ul> |
491 | ||
492 | <ul class="nav navbar-nav"> | |
54f02cb9 | 493 | <!--#include virtual="/2021/includes/nav-list-2.html"--> |
76c2419a GF |
494 | </ul> |
495 | </div><!-- navbar-collapse end --> | |
496 | </div><!-- navbar container-fluid end --> | |
497 | </nav> | |
498 | <!-- end nav for small screens --> |