voegt hopelijk de kerstpuzzelsite toe
This commit is contained in:
commit
b8314e09e1
25
404.html
Normal file
25
404.html
Normal file
@ -0,0 +1,25 @@
|
||||
---
|
||||
permalink: /404.html
|
||||
layout: default
|
||||
---
|
||||
|
||||
<style type="text/css" media="screen">
|
||||
.container {
|
||||
margin: 10px auto;
|
||||
max-width: 600px;
|
||||
text-align: center;
|
||||
}
|
||||
h1 {
|
||||
margin: 30px 0;
|
||||
font-size: 4em;
|
||||
line-height: 1;
|
||||
letter-spacing: -1px;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="container">
|
||||
<h1>404</h1>
|
||||
|
||||
<p><strong>Page not found :(</strong></p>
|
||||
<p>The requested page could not be found.</p>
|
||||
</div>
|
||||
33
Gemfile
Normal file
33
Gemfile
Normal file
@ -0,0 +1,33 @@
|
||||
source "https://rubygems.org"
|
||||
# Hello! This is where you manage which Jekyll version is used to run.
|
||||
# When you want to use a different version, change it below, save the
|
||||
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
|
||||
#
|
||||
# bundle exec jekyll serve
|
||||
#
|
||||
# This will help ensure the proper Jekyll version is running.
|
||||
# Happy Jekylling!
|
||||
gem "jekyll", "~> 4.3.1"
|
||||
# This is the default theme for new Jekyll sites. You may change this to anything you like.
|
||||
gem "minima", "~> 2.5"
|
||||
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
|
||||
# uncomment the line below. To upgrade, run `bundle update github-pages`.
|
||||
# gem "github-pages", group: :jekyll_plugins
|
||||
# If you have any plugins, put them here!
|
||||
group :jekyll_plugins do
|
||||
gem "jekyll-feed", "~> 0.12"
|
||||
end
|
||||
|
||||
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
|
||||
# and associated library.
|
||||
platforms :mingw, :x64_mingw, :mswin, :jruby do
|
||||
gem "tzinfo", ">= 1", "< 3"
|
||||
gem "tzinfo-data"
|
||||
end
|
||||
|
||||
# Performance-booster for watching directories on Windows
|
||||
gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin]
|
||||
|
||||
# Lock `http_parser.rb` gem to `v0.6.x` on JRuby builds since newer versions of the gem
|
||||
# do not have a Java counterpart.
|
||||
gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby]
|
||||
83
Gemfile.lock
Normal file
83
Gemfile.lock
Normal file
@ -0,0 +1,83 @@
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
addressable (2.8.1)
|
||||
public_suffix (>= 2.0.2, < 6.0)
|
||||
colorator (1.1.0)
|
||||
concurrent-ruby (1.1.10)
|
||||
em-websocket (0.5.3)
|
||||
eventmachine (>= 0.12.9)
|
||||
http_parser.rb (~> 0)
|
||||
eventmachine (1.2.7)
|
||||
ffi (1.15.5)
|
||||
forwardable-extended (2.6.0)
|
||||
http_parser.rb (0.8.0)
|
||||
i18n (1.12.0)
|
||||
concurrent-ruby (~> 1.0)
|
||||
jekyll (4.3.1)
|
||||
addressable (~> 2.4)
|
||||
colorator (~> 1.0)
|
||||
em-websocket (~> 0.5)
|
||||
i18n (~> 1.0)
|
||||
jekyll-sass-converter (>= 2.0, < 4.0)
|
||||
jekyll-watch (~> 2.0)
|
||||
kramdown (~> 2.3, >= 2.3.1)
|
||||
kramdown-parser-gfm (~> 1.0)
|
||||
liquid (~> 4.0)
|
||||
mercenary (>= 0.3.6, < 0.5)
|
||||
pathutil (~> 0.9)
|
||||
rouge (>= 3.0, < 5.0)
|
||||
safe_yaml (~> 1.0)
|
||||
terminal-table (>= 1.8, < 4.0)
|
||||
webrick (~> 1.7)
|
||||
jekyll-feed (0.17.0)
|
||||
jekyll (>= 3.7, < 5.0)
|
||||
jekyll-sass-converter (2.2.0)
|
||||
sassc (> 2.0.1, < 3.0)
|
||||
jekyll-seo-tag (2.8.0)
|
||||
jekyll (>= 3.8, < 5.0)
|
||||
jekyll-watch (2.2.1)
|
||||
listen (~> 3.0)
|
||||
kramdown (2.4.0)
|
||||
rexml
|
||||
kramdown-parser-gfm (1.1.0)
|
||||
kramdown (~> 2.0)
|
||||
liquid (4.0.3)
|
||||
listen (3.7.1)
|
||||
rb-fsevent (~> 0.10, >= 0.10.3)
|
||||
rb-inotify (~> 0.9, >= 0.9.10)
|
||||
mercenary (0.4.0)
|
||||
minima (2.5.1)
|
||||
jekyll (>= 3.5, < 5.0)
|
||||
jekyll-feed (~> 0.9)
|
||||
jekyll-seo-tag (~> 2.1)
|
||||
pathutil (0.16.2)
|
||||
forwardable-extended (~> 2.6)
|
||||
public_suffix (5.0.0)
|
||||
rb-fsevent (0.11.2)
|
||||
rb-inotify (0.10.1)
|
||||
ffi (~> 1.0)
|
||||
rexml (3.2.5)
|
||||
rouge (4.0.0)
|
||||
safe_yaml (1.0.5)
|
||||
sassc (2.4.0)
|
||||
ffi (~> 1.9)
|
||||
terminal-table (3.0.2)
|
||||
unicode-display_width (>= 1.1.1, < 3)
|
||||
unicode-display_width (2.3.0)
|
||||
webrick (1.7.0)
|
||||
|
||||
PLATFORMS
|
||||
x86_64-linux
|
||||
|
||||
DEPENDENCIES
|
||||
http_parser.rb (~> 0.6.0)
|
||||
jekyll (~> 4.3.1)
|
||||
jekyll-feed (~> 0.12)
|
||||
minima (~> 2.5)
|
||||
tzinfo (>= 1, < 3)
|
||||
tzinfo-data
|
||||
wdm (~> 0.1.1)
|
||||
|
||||
BUNDLED WITH
|
||||
2.3.25
|
||||
55
_config.yml
Normal file
55
_config.yml
Normal file
@ -0,0 +1,55 @@
|
||||
# Welcome to Jekyll!
|
||||
#
|
||||
# This config file is meant for settings that affect your whole blog, values
|
||||
# which you are expected to set up once and rarely edit after that. If you find
|
||||
# yourself editing this file very often, consider using Jekyll's data files
|
||||
# feature for the data you need to update frequently.
|
||||
#
|
||||
# For technical reasons, this file is *NOT* reloaded automatically when you use
|
||||
# 'bundle exec jekyll serve'. If you change this file, please restart the server process.
|
||||
#
|
||||
# If you need help with YAML syntax, here are some quick references for you:
|
||||
# https://learn-the-web.algonquindesign.ca/topics/markdown-yaml-cheat-sheet/#yaml
|
||||
# https://learnxinyminutes.com/docs/yaml/
|
||||
#
|
||||
# Site settings
|
||||
# These are used to personalize your new site. If you look in the HTML files,
|
||||
# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
|
||||
# You can create any custom variable you would like, and they will be accessible
|
||||
# in the templates via {{ site.myvariable }}.
|
||||
|
||||
title: Your awesome title
|
||||
email: your-email@example.com
|
||||
description: >- # this means to ignore newlines until "baseurl:"
|
||||
Write an awesome description for your new site here. You can edit this
|
||||
line in _config.yml. It will appear in your document head meta (for
|
||||
Google search results) and in your feed.xml site description.
|
||||
baseurl: "" # the subpath of your site, e.g. /blog
|
||||
url: "" # the base hostname & protocol for your site, e.g. http://example.com
|
||||
twitter_username: jekyllrb
|
||||
github_username: jekyll
|
||||
|
||||
# Build settings
|
||||
theme: minima
|
||||
plugins:
|
||||
- jekyll-feed
|
||||
|
||||
# Exclude from processing.
|
||||
# The following items will not be processed, by default.
|
||||
# Any item listed under the `exclude:` key here will be automatically added to
|
||||
# the internal "default list".
|
||||
#
|
||||
# Excluded items can be processed by explicitly listing the directories or
|
||||
# their entries' file path in the `include:` list.
|
||||
#
|
||||
# exclude:
|
||||
# - .sass-cache/
|
||||
# - .jekyll-cache/
|
||||
# - gemfiles/
|
||||
# - Gemfile
|
||||
# - Gemfile.lock
|
||||
# - node_modules/
|
||||
# - vendor/bundle/
|
||||
# - vendor/cache/
|
||||
# - vendor/gems/
|
||||
# - vendor/ruby/
|
||||
29
_posts/2022-11-14-welcome-to-jekyll.markdown
Normal file
29
_posts/2022-11-14-welcome-to-jekyll.markdown
Normal file
@ -0,0 +1,29 @@
|
||||
---
|
||||
layout: post
|
||||
title: "Welcome to Jekyll!"
|
||||
date: 2022-11-14 20:17:52 +0100
|
||||
categories: jekyll update
|
||||
---
|
||||
You’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `jekyll serve`, which launches a web server and auto-regenerates your site when a file is updated.
|
||||
|
||||
Jekyll requires blog post files to be named according to the following format:
|
||||
|
||||
`YEAR-MONTH-DAY-title.MARKUP`
|
||||
|
||||
Where `YEAR` is a four-digit number, `MONTH` and `DAY` are both two-digit numbers, and `MARKUP` is the file extension representing the format used in the file. After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works.
|
||||
|
||||
Jekyll also offers powerful support for code snippets:
|
||||
|
||||
{% highlight ruby %}
|
||||
def print_hi(name)
|
||||
puts "Hi, #{name}"
|
||||
end
|
||||
print_hi('Tom')
|
||||
#=> prints 'Hi, Tom' to STDOUT.
|
||||
{% endhighlight %}
|
||||
|
||||
Check out the [Jekyll docs][jekyll-docs] for more info on how to get the most out of Jekyll. File all bugs/feature requests at [Jekyll’s GitHub repo][jekyll-gh]. If you have questions, you can ask them on [Jekyll Talk][jekyll-talk].
|
||||
|
||||
[jekyll-docs]: https://jekyllrb.com/docs/home
|
||||
[jekyll-gh]: https://github.com/jekyll/jekyll
|
||||
[jekyll-talk]: https://talk.jekyllrb.com/
|
||||
87
_site/404.html
Normal file
87
_site/404.html
Normal file
@ -0,0 +1,87 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en"><head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"><!-- Begin Jekyll SEO tag v2.8.0 -->
|
||||
<title>Your awesome title | Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.</title>
|
||||
<meta name="generator" content="Jekyll v4.3.1" />
|
||||
<meta property="og:title" content="Your awesome title" />
|
||||
<meta property="og:locale" content="en_US" />
|
||||
<meta name="description" content="Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description." />
|
||||
<meta property="og:description" content="Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description." />
|
||||
<link rel="canonical" href="http://localhost:4000/404.html" />
|
||||
<meta property="og:url" content="http://localhost:4000/404.html" />
|
||||
<meta property="og:site_name" content="Your awesome title" />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<meta property="twitter:title" content="Your awesome title" />
|
||||
<script type="application/ld+json">
|
||||
{"@context":"https://schema.org","@type":"WebPage","description":"Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.","headline":"Your awesome title","url":"http://localhost:4000/404.html"}</script>
|
||||
<!-- End Jekyll SEO tag -->
|
||||
<link rel="stylesheet" href="/assets/main.css"><link type="application/atom+xml" rel="alternate" href="http://localhost:4000/feed.xml" title="Your awesome title" /></head>
|
||||
<body><header class="site-header" role="banner">
|
||||
|
||||
<div class="wrapper"><a class="site-title" rel="author" href="/">Your awesome title</a><nav class="site-nav">
|
||||
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
|
||||
<label for="nav-trigger">
|
||||
<span class="menu-icon">
|
||||
<svg viewBox="0 0 18 15" width="18px" height="15px">
|
||||
<path d="M18,1.484c0,0.82-0.665,1.484-1.484,1.484H1.484C0.665,2.969,0,2.304,0,1.484l0,0C0,0.665,0.665,0,1.484,0 h15.032C17.335,0,18,0.665,18,1.484L18,1.484z M18,7.516C18,8.335,17.335,9,16.516,9H1.484C0.665,9,0,8.335,0,7.516l0,0 c0-0.82,0.665-1.484,1.484-1.484h15.032C17.335,6.031,18,6.696,18,7.516L18,7.516z M18,13.516C18,14.335,17.335,15,16.516,15H1.484 C0.665,15,0,14.335,0,13.516l0,0c0-0.82,0.665-1.483,1.484-1.483h15.032C17.335,12.031,18,12.695,18,13.516L18,13.516z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</label>
|
||||
|
||||
<div class="trigger"><a class="page-link" href="/about/">About</a></div>
|
||||
</nav></div>
|
||||
</header>
|
||||
<main class="page-content" aria-label="Content">
|
||||
<div class="wrapper">
|
||||
<style type="text/css" media="screen">
|
||||
.container {
|
||||
margin: 10px auto;
|
||||
max-width: 600px;
|
||||
text-align: center;
|
||||
}
|
||||
h1 {
|
||||
margin: 30px 0;
|
||||
font-size: 4em;
|
||||
line-height: 1;
|
||||
letter-spacing: -1px;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="container">
|
||||
<h1>404</h1>
|
||||
|
||||
<p><strong>Page not found :(</strong></p>
|
||||
<p>The requested page could not be found.</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</main><footer class="site-footer h-card">
|
||||
<data class="u-url" href="/"></data>
|
||||
|
||||
<div class="wrapper">
|
||||
|
||||
<h2 class="footer-heading">Your awesome title</h2>
|
||||
|
||||
<div class="footer-col-wrapper">
|
||||
<div class="footer-col footer-col-1">
|
||||
<ul class="contact-list">
|
||||
<li class="p-name">Your awesome title</li><li><a class="u-email" href="mailto:your-email@example.com">your-email@example.com</a></li></ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-col footer-col-2"><ul class="social-media-list"><li><a href="https://github.com/jekyll"><svg class="svg-icon"><use xlink:href="/assets/minima-social-icons.svg#github"></use></svg> <span class="username">jekyll</span></a></li><li><a href="https://www.twitter.com/jekyllrb"><svg class="svg-icon"><use xlink:href="/assets/minima-social-icons.svg#twitter"></use></svg> <span class="username">jekyllrb</span></a></li></ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-col footer-col-3">
|
||||
<p>Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</footer>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
88
_site/about/index.html
Normal file
88
_site/about/index.html
Normal file
@ -0,0 +1,88 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en"><head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"><!-- Begin Jekyll SEO tag v2.8.0 -->
|
||||
<title>About | Your awesome title</title>
|
||||
<meta name="generator" content="Jekyll v4.3.1" />
|
||||
<meta property="og:title" content="About" />
|
||||
<meta property="og:locale" content="en_US" />
|
||||
<meta name="description" content="Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description." />
|
||||
<meta property="og:description" content="Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description." />
|
||||
<link rel="canonical" href="http://localhost:4000/about/" />
|
||||
<meta property="og:url" content="http://localhost:4000/about/" />
|
||||
<meta property="og:site_name" content="Your awesome title" />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<meta property="twitter:title" content="About" />
|
||||
<script type="application/ld+json">
|
||||
{"@context":"https://schema.org","@type":"WebSite","description":"Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.","headline":"About","name":"Your awesome title","url":"http://localhost:4000/about/"}</script>
|
||||
<!-- End Jekyll SEO tag -->
|
||||
<link rel="stylesheet" href="/assets/main.css"><link type="application/atom+xml" rel="alternate" href="http://localhost:4000/feed.xml" title="Your awesome title" /></head>
|
||||
<body><header class="site-header" role="banner">
|
||||
|
||||
<div class="wrapper"><a class="site-title" rel="author" href="/">Your awesome title</a><nav class="site-nav">
|
||||
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
|
||||
<label for="nav-trigger">
|
||||
<span class="menu-icon">
|
||||
<svg viewBox="0 0 18 15" width="18px" height="15px">
|
||||
<path d="M18,1.484c0,0.82-0.665,1.484-1.484,1.484H1.484C0.665,2.969,0,2.304,0,1.484l0,0C0,0.665,0.665,0,1.484,0 h15.032C17.335,0,18,0.665,18,1.484L18,1.484z M18,7.516C18,8.335,17.335,9,16.516,9H1.484C0.665,9,0,8.335,0,7.516l0,0 c0-0.82,0.665-1.484,1.484-1.484h15.032C17.335,6.031,18,6.696,18,7.516L18,7.516z M18,13.516C18,14.335,17.335,15,16.516,15H1.484 C0.665,15,0,14.335,0,13.516l0,0c0-0.82,0.665-1.483,1.484-1.483h15.032C17.335,12.031,18,12.695,18,13.516L18,13.516z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</label>
|
||||
|
||||
<div class="trigger"><a class="page-link" href="/about/">About</a></div>
|
||||
</nav></div>
|
||||
</header>
|
||||
<main class="page-content" aria-label="Content">
|
||||
<div class="wrapper">
|
||||
<article class="post">
|
||||
|
||||
<header class="post-header">
|
||||
<h1 class="post-title">About</h1>
|
||||
</header>
|
||||
|
||||
<div class="post-content">
|
||||
<p>This is the base Jekyll theme. You can find out more info about customizing your Jekyll theme, as well as basic Jekyll usage documentation at <a href="https://jekyllrb.com/">jekyllrb.com</a></p>
|
||||
|
||||
<p>You can find the source code for Minima at GitHub:
|
||||
<a href="https://github.com/jekyll">jekyll</a> /
|
||||
<a href="https://github.com/jekyll/minima">minima</a></p>
|
||||
|
||||
<p>You can find the source code for Jekyll at GitHub:
|
||||
<a href="https://github.com/jekyll">jekyll</a> /
|
||||
<a href="https://github.com/jekyll/jekyll">jekyll</a></p>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</article>
|
||||
|
||||
</div>
|
||||
</main><footer class="site-footer h-card">
|
||||
<data class="u-url" href="/"></data>
|
||||
|
||||
<div class="wrapper">
|
||||
|
||||
<h2 class="footer-heading">Your awesome title</h2>
|
||||
|
||||
<div class="footer-col-wrapper">
|
||||
<div class="footer-col footer-col-1">
|
||||
<ul class="contact-list">
|
||||
<li class="p-name">Your awesome title</li><li><a class="u-email" href="mailto:your-email@example.com">your-email@example.com</a></li></ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-col footer-col-2"><ul class="social-media-list"><li><a href="https://github.com/jekyll"><svg class="svg-icon"><use xlink:href="/assets/minima-social-icons.svg#github"></use></svg> <span class="username">jekyll</span></a></li><li><a href="https://www.twitter.com/jekyllrb"><svg class="svg-icon"><use xlink:href="/assets/minima-social-icons.svg#twitter"></use></svg> <span class="username">jekyllrb</span></a></li></ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-col footer-col-3">
|
||||
<p>Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</footer>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
45
_site/ajax.php
Normal file
45
_site/ajax.php
Normal file
@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
include "include.php";
|
||||
|
||||
try {
|
||||
// === LOAD SCORE FILE ===
|
||||
$teamQuestionDates = loadScoreFile();
|
||||
|
||||
// === GENERATE GRAPH DATA ===
|
||||
$period = new DatePeriod(new DateTime("2022-11-01"),
|
||||
new DateInterval("P1D"),
|
||||
new DateTime());
|
||||
|
||||
$labels = [];
|
||||
foreach ($period as $date) {
|
||||
$labels[] = $date->format("m-d");
|
||||
}
|
||||
|
||||
$datasets = [];
|
||||
foreach (TEAMS as $team) {
|
||||
$dataset = ['label' => $team, 'data' => [], 'borderColor' => TEAM_COLORS[$team]];
|
||||
|
||||
$questionDates = $teamQuestionDates[$team];
|
||||
$questions = array_keys($questionDates);
|
||||
|
||||
$score = 0;
|
||||
$i = 0;
|
||||
|
||||
foreach ($period as $date) {
|
||||
while ($i < count($questionDates) && $questionDates[$questions[$i]] <= $date->format("Y-m-d")) {
|
||||
$score += QUESTION_POINTS[$questions[$i]];
|
||||
$i++;
|
||||
}
|
||||
$dataset['data'][] = $score;
|
||||
}
|
||||
|
||||
$datasets[] = $dataset;
|
||||
}
|
||||
|
||||
echo json_encode(['labels' => $labels, 'datasets' => $datasets]);
|
||||
} catch (Exception $e) {
|
||||
echo json_encode(['error' => $e->getMessage()]);
|
||||
}
|
||||
|
||||
?>
|
||||
277
_site/assets/main.css
Normal file
277
_site/assets/main.css
Normal file
@ -0,0 +1,277 @@
|
||||
/** Reset some basic elements */
|
||||
body, h1, h2, h3, h4, h5, h6, p, blockquote, pre, hr, dl, dd, ol, ul, figure { margin: 0; padding: 0; }
|
||||
|
||||
/** Basic styling */
|
||||
body { font: 400 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; color: #111; background-color: #fdfdfd; -webkit-text-size-adjust: 100%; -webkit-font-feature-settings: "kern" 1; -moz-font-feature-settings: "kern" 1; -o-font-feature-settings: "kern" 1; font-feature-settings: "kern" 1; font-kerning: normal; display: flex; min-height: 100vh; flex-direction: column; }
|
||||
|
||||
/** Set `margin-bottom` to maintain vertical rhythm */
|
||||
h1, h2, h3, h4, h5, h6, p, blockquote, pre, ul, ol, dl, figure, .highlight { margin-bottom: 15px; }
|
||||
|
||||
/** `main` element */
|
||||
main { display: block; /* Default value of `display` of `main` element is 'inline' in IE 11. */ }
|
||||
|
||||
/** Images */
|
||||
img { max-width: 100%; vertical-align: middle; }
|
||||
|
||||
/** Figures */
|
||||
figure > img { display: block; }
|
||||
|
||||
figcaption { font-size: 14px; }
|
||||
|
||||
/** Lists */
|
||||
ul, ol { margin-left: 30px; }
|
||||
|
||||
li > ul, li > ol { margin-bottom: 0; }
|
||||
|
||||
/** Headings */
|
||||
h1, h2, h3, h4, h5, h6 { font-weight: 400; }
|
||||
|
||||
/** Links */
|
||||
a { color: #2a7ae2; text-decoration: none; }
|
||||
|
||||
a:visited { color: #1756a9; }
|
||||
|
||||
a:hover { color: #111; text-decoration: underline; }
|
||||
|
||||
.social-media-list a:hover { text-decoration: none; }
|
||||
|
||||
.social-media-list a:hover .username { text-decoration: underline; }
|
||||
|
||||
/** Blockquotes */
|
||||
blockquote { color: #828282; border-left: 4px solid #e8e8e8; padding-left: 15px; font-size: 18px; letter-spacing: -1px; font-style: italic; }
|
||||
|
||||
blockquote > :last-child { margin-bottom: 0; }
|
||||
|
||||
/** Code formatting */
|
||||
pre, code { font-size: 15px; border: 1px solid #e8e8e8; border-radius: 3px; background-color: #eef; }
|
||||
|
||||
code { padding: 1px 5px; }
|
||||
|
||||
pre { padding: 8px 12px; overflow-x: auto; }
|
||||
|
||||
pre > code { border: 0; padding-right: 0; padding-left: 0; }
|
||||
|
||||
/** Wrapper */
|
||||
.wrapper { max-width: -webkit-calc(800px - (30px * 2)); max-width: calc(800px - (30px * 2)); margin-right: auto; margin-left: auto; padding-right: 30px; padding-left: 30px; }
|
||||
|
||||
@media screen and (max-width: 800px) { .wrapper { max-width: -webkit-calc(800px - (30px)); max-width: calc(800px - (30px)); padding-right: 15px; padding-left: 15px; } }
|
||||
|
||||
/** Clearfix */
|
||||
.footer-col-wrapper:after, .wrapper:after { content: ""; display: table; clear: both; }
|
||||
|
||||
/** Icons */
|
||||
.svg-icon { width: 16px; height: 16px; display: inline-block; fill: #828282; padding-right: 5px; vertical-align: text-top; }
|
||||
|
||||
.social-media-list li + li { padding-top: 5px; }
|
||||
|
||||
/** Tables */
|
||||
table { margin-bottom: 30px; width: 100%; text-align: left; color: #3f3f3f; border-collapse: collapse; border: 1px solid #e8e8e8; }
|
||||
|
||||
table tr:nth-child(even) { background-color: #f7f7f7; }
|
||||
|
||||
table th, table td { padding: 10px 15px; }
|
||||
|
||||
table th { background-color: #f0f0f0; border: 1px solid #dedede; border-bottom-color: #c9c9c9; }
|
||||
|
||||
table td { border: 1px solid #e8e8e8; }
|
||||
|
||||
/** Site header */
|
||||
.site-header { border-top: 5px solid #424242; border-bottom: 1px solid #e8e8e8; min-height: 55.95px; position: relative; }
|
||||
|
||||
.site-title { font-size: 26px; font-weight: 300; line-height: 54px; letter-spacing: -1px; margin-bottom: 0; float: left; }
|
||||
|
||||
.site-title, .site-title:visited { color: #424242; }
|
||||
|
||||
.site-nav { float: right; line-height: 54px; }
|
||||
|
||||
.site-nav .nav-trigger { display: none; }
|
||||
|
||||
.site-nav .menu-icon { display: none; }
|
||||
|
||||
.site-nav .page-link { color: #111; line-height: 1.5; }
|
||||
|
||||
.site-nav .page-link:not(:last-child) { margin-right: 20px; }
|
||||
|
||||
@media screen and (max-width: 600px) { .site-nav { position: absolute; top: 9px; right: 15px; background-color: #fdfdfd; border: 1px solid #e8e8e8; border-radius: 5px; text-align: right; } .site-nav label[for="nav-trigger"] { display: block; float: right; width: 36px; height: 36px; z-index: 2; cursor: pointer; } .site-nav .menu-icon { display: block; float: right; width: 36px; height: 26px; line-height: 0; padding-top: 10px; text-align: center; } .site-nav .menu-icon > svg { fill: #424242; } .site-nav input ~ .trigger { clear: both; display: none; } .site-nav input:checked ~ .trigger { display: block; padding-bottom: 5px; } .site-nav .page-link { display: block; padding: 5px 10px; margin-left: 20px; } .site-nav .page-link:not(:last-child) { margin-right: 0; } }
|
||||
|
||||
/** Site footer */
|
||||
.site-footer { border-top: 1px solid #e8e8e8; padding: 30px 0; }
|
||||
|
||||
.footer-heading { font-size: 18px; margin-bottom: 15px; }
|
||||
|
||||
.contact-list, .social-media-list { list-style: none; margin-left: 0; }
|
||||
|
||||
.footer-col-wrapper { font-size: 15px; color: #828282; margin-left: -15px; }
|
||||
|
||||
.footer-col { float: left; margin-bottom: 15px; padding-left: 15px; }
|
||||
|
||||
.footer-col-1 { width: -webkit-calc(35% - (30px / 2)); width: calc(35% - (30px / 2)); }
|
||||
|
||||
.footer-col-2 { width: -webkit-calc(20% - (30px / 2)); width: calc(20% - (30px / 2)); }
|
||||
|
||||
.footer-col-3 { width: -webkit-calc(45% - (30px / 2)); width: calc(45% - (30px / 2)); }
|
||||
|
||||
@media screen and (max-width: 800px) { .footer-col-1, .footer-col-2 { width: -webkit-calc(50% - (30px / 2)); width: calc(50% - (30px / 2)); } .footer-col-3 { width: -webkit-calc(100% - (30px / 2)); width: calc(100% - (30px / 2)); } }
|
||||
|
||||
@media screen and (max-width: 600px) { .footer-col { float: none; width: -webkit-calc(100% - (30px / 2)); width: calc(100% - (30px / 2)); } }
|
||||
|
||||
/** Page content */
|
||||
.page-content { padding: 30px 0; flex: 1; }
|
||||
|
||||
.page-heading { font-size: 32px; }
|
||||
|
||||
.post-list-heading { font-size: 28px; }
|
||||
|
||||
.post-list { margin-left: 0; list-style: none; }
|
||||
|
||||
.post-list > li { margin-bottom: 30px; }
|
||||
|
||||
.post-meta { font-size: 14px; color: #828282; }
|
||||
|
||||
.post-link { display: block; font-size: 24px; }
|
||||
|
||||
/** Posts */
|
||||
.post-header { margin-bottom: 30px; }
|
||||
|
||||
.post-title { font-size: 42px; letter-spacing: -1px; line-height: 1; }
|
||||
|
||||
@media screen and (max-width: 800px) { .post-title { font-size: 36px; } }
|
||||
|
||||
.post-content { margin-bottom: 30px; }
|
||||
|
||||
.post-content h2 { font-size: 32px; }
|
||||
|
||||
@media screen and (max-width: 800px) { .post-content h2 { font-size: 28px; } }
|
||||
|
||||
.post-content h3 { font-size: 26px; }
|
||||
|
||||
@media screen and (max-width: 800px) { .post-content h3 { font-size: 22px; } }
|
||||
|
||||
.post-content h4 { font-size: 20px; }
|
||||
|
||||
@media screen and (max-width: 800px) { .post-content h4 { font-size: 18px; } }
|
||||
|
||||
/** Syntax highlighting styles */
|
||||
.highlight { background: #fff; }
|
||||
|
||||
.highlighter-rouge .highlight { background: #eef; }
|
||||
|
||||
.highlight .c { color: #998; font-style: italic; }
|
||||
|
||||
.highlight .err { color: #a61717; background-color: #e3d2d2; }
|
||||
|
||||
.highlight .k { font-weight: bold; }
|
||||
|
||||
.highlight .o { font-weight: bold; }
|
||||
|
||||
.highlight .cm { color: #998; font-style: italic; }
|
||||
|
||||
.highlight .cp { color: #999; font-weight: bold; }
|
||||
|
||||
.highlight .c1 { color: #998; font-style: italic; }
|
||||
|
||||
.highlight .cs { color: #999; font-weight: bold; font-style: italic; }
|
||||
|
||||
.highlight .gd { color: #000; background-color: #fdd; }
|
||||
|
||||
.highlight .gd .x { color: #000; background-color: #faa; }
|
||||
|
||||
.highlight .ge { font-style: italic; }
|
||||
|
||||
.highlight .gr { color: #a00; }
|
||||
|
||||
.highlight .gh { color: #999; }
|
||||
|
||||
.highlight .gi { color: #000; background-color: #dfd; }
|
||||
|
||||
.highlight .gi .x { color: #000; background-color: #afa; }
|
||||
|
||||
.highlight .go { color: #888; }
|
||||
|
||||
.highlight .gp { color: #555; }
|
||||
|
||||
.highlight .gs { font-weight: bold; }
|
||||
|
||||
.highlight .gu { color: #aaa; }
|
||||
|
||||
.highlight .gt { color: #a00; }
|
||||
|
||||
.highlight .kc { font-weight: bold; }
|
||||
|
||||
.highlight .kd { font-weight: bold; }
|
||||
|
||||
.highlight .kp { font-weight: bold; }
|
||||
|
||||
.highlight .kr { font-weight: bold; }
|
||||
|
||||
.highlight .kt { color: #458; font-weight: bold; }
|
||||
|
||||
.highlight .m { color: #099; }
|
||||
|
||||
.highlight .s { color: #d14; }
|
||||
|
||||
.highlight .na { color: #008080; }
|
||||
|
||||
.highlight .nb { color: #0086B3; }
|
||||
|
||||
.highlight .nc { color: #458; font-weight: bold; }
|
||||
|
||||
.highlight .no { color: #008080; }
|
||||
|
||||
.highlight .ni { color: #800080; }
|
||||
|
||||
.highlight .ne { color: #900; font-weight: bold; }
|
||||
|
||||
.highlight .nf { color: #900; font-weight: bold; }
|
||||
|
||||
.highlight .nn { color: #555; }
|
||||
|
||||
.highlight .nt { color: #000080; }
|
||||
|
||||
.highlight .nv { color: #008080; }
|
||||
|
||||
.highlight .ow { font-weight: bold; }
|
||||
|
||||
.highlight .w { color: #bbb; }
|
||||
|
||||
.highlight .mf { color: #099; }
|
||||
|
||||
.highlight .mh { color: #099; }
|
||||
|
||||
.highlight .mi { color: #099; }
|
||||
|
||||
.highlight .mo { color: #099; }
|
||||
|
||||
.highlight .sb { color: #d14; }
|
||||
|
||||
.highlight .sc { color: #d14; }
|
||||
|
||||
.highlight .sd { color: #d14; }
|
||||
|
||||
.highlight .s2 { color: #d14; }
|
||||
|
||||
.highlight .se { color: #d14; }
|
||||
|
||||
.highlight .sh { color: #d14; }
|
||||
|
||||
.highlight .si { color: #d14; }
|
||||
|
||||
.highlight .sx { color: #d14; }
|
||||
|
||||
.highlight .sr { color: #009926; }
|
||||
|
||||
.highlight .s1 { color: #d14; }
|
||||
|
||||
.highlight .ss { color: #990073; }
|
||||
|
||||
.highlight .bp { color: #999; }
|
||||
|
||||
.highlight .vc { color: #008080; }
|
||||
|
||||
.highlight .vg { color: #008080; }
|
||||
|
||||
.highlight .vi { color: #008080; }
|
||||
|
||||
.highlight .il { color: #099; }
|
||||
|
||||
/*# sourceMappingURL=main.css.map */
|
||||
20
_site/assets/main.css.map
Normal file
20
_site/assets/main.css.map
Normal file
File diff suppressed because one or more lines are too long
33
_site/assets/minima-social-icons.svg
Normal file
33
_site/assets/minima-social-icons.svg
Normal file
@ -0,0 +1,33 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
<symbol id="dribbble" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M8 16c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm6.747-6.905c-.234-.074-2.115-.635-4.257-.292.894 2.456 1.258 4.456 1.328 4.872 1.533-1.037 2.624-2.68 2.93-4.58zM10.67 14.3c-.102-.6-.5-2.688-1.46-5.18l-.044.014C5.312 10.477 3.93 13.15 3.806 13.4c1.158.905 2.614 1.444 4.194 1.444.947 0 1.85-.194 2.67-.543zm-7.747-1.72c.155-.266 2.03-3.37 5.555-4.51.09-.03.18-.056.27-.08-.173-.39-.36-.778-.555-1.16-3.413 1.02-6.723.977-7.023.97l-.003.208c0 1.755.665 3.358 1.756 4.57zM1.31 6.61c.307.005 3.122.017 6.318-.832-1.132-2.012-2.353-3.705-2.533-3.952-1.912.902-3.34 2.664-3.784 4.785zM6.4 1.368c.188.253 1.43 1.943 2.548 4 2.43-.91 3.46-2.293 3.582-2.468C11.323 1.827 9.736 1.176 8 1.176c-.55 0-1.087.066-1.6.19zm6.89 2.322c-.145.194-1.29 1.662-3.816 2.694.16.325.31.656.453.99.05.117.1.235.147.352 2.274-.286 4.533.172 4.758.22-.015-1.613-.59-3.094-1.543-4.257z"/></symbol>
|
||||
|
||||
<symbol id="facebook" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M15.117 0H.883C.395 0 0 .395 0 .883v14.234c0 .488.395.883.883.883h7.663V9.804H6.46V7.39h2.086V5.607c0-2.066 1.262-3.19 3.106-3.19.883 0 1.642.064 1.863.094v2.16h-1.28c-1 0-1.195.48-1.195 1.18v1.54h2.39l-.31 2.42h-2.08V16h4.077c.488 0 .883-.395.883-.883V.883C16 .395 15.605 0 15.117 0" fill-rule="nonzero"/></symbol>
|
||||
|
||||
<symbol id="flickr" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M0 8c0 2.05 1.662 3.71 3.71 3.71 2.05 0 3.713-1.66 3.713-3.71S5.76 4.29 3.71 4.29C1.663 4.29 0 5.95 0 8zm8.577 0c0 2.05 1.662 3.71 3.712 3.71C14.33 11.71 16 10.05 16 8s-1.662-3.71-3.71-3.71c-2.05 0-3.713 1.66-3.713 3.71z"/></symbol>
|
||||
|
||||
<symbol id="github" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M8 0C3.58 0 0 3.582 0 8c0 3.535 2.292 6.533 5.47 7.59.4.075.547-.172.547-.385 0-.19-.007-.693-.01-1.36-2.226.483-2.695-1.073-2.695-1.073-.364-.924-.89-1.17-.89-1.17-.725-.496.056-.486.056-.486.803.056 1.225.824 1.225.824.714 1.223 1.873.87 2.33.665.072-.517.278-.87.507-1.07-1.777-.2-3.644-.888-3.644-3.953 0-.873.31-1.587.823-2.147-.09-.202-.36-1.015.07-2.117 0 0 .67-.215 2.2.82.64-.178 1.32-.266 2-.27.68.004 1.36.092 2 .27 1.52-1.035 2.19-.82 2.19-.82.43 1.102.16 1.915.08 2.117.51.56.82 1.274.82 2.147 0 3.073-1.87 3.75-3.65 3.947.28.24.54.73.54 1.48 0 1.07-.01 1.93-.01 2.19 0 .21.14.46.55.38C13.71 14.53 16 11.53 16 8c0-4.418-3.582-8-8-8"/></symbol>
|
||||
|
||||
<symbol id="googleplus" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M5.09 7.273v1.745h2.89c-.116.75-.873 2.197-2.887 2.197-1.737 0-3.155-1.44-3.155-3.215S3.353 4.785 5.09 4.785c.99 0 1.652.422 2.03.786l1.382-1.33c-.887-.83-2.037-1.33-3.41-1.33C2.275 2.91 0 5.19 0 8s2.276 5.09 5.09 5.09c2.94 0 4.888-2.065 4.888-4.974 0-.334-.036-.59-.08-.843H5.09zm10.91 0h-1.455V5.818H13.09v1.455h-1.454v1.454h1.455v1.455h1.46V8.727H16"/></symbol>
|
||||
|
||||
<symbol id="instagram" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M8 0C5.827 0 5.555.01 4.702.048 3.85.088 3.27.222 2.76.42c-.526.204-.973.478-1.417.923-.445.444-.72.89-.923 1.417-.198.51-.333 1.09-.372 1.942C.008 5.555 0 5.827 0 8s.01 2.445.048 3.298c.04.852.174 1.433.372 1.942.204.526.478.973.923 1.417.444.445.89.72 1.417.923.51.198 1.09.333 1.942.372.853.04 1.125.048 3.298.048s2.445-.01 3.298-.048c.852-.04 1.433-.174 1.942-.372.526-.204.973-.478 1.417-.923.445-.444.72-.89.923-1.417.198-.51.333-1.09.372-1.942.04-.853.048-1.125.048-3.298s-.01-2.445-.048-3.298c-.04-.852-.174-1.433-.372-1.942-.204-.526-.478-.973-.923-1.417-.444-.445-.89-.72-1.417-.923-.51-.198-1.09-.333-1.942-.372C10.445.008 10.173 0 8 0zm0 1.44c2.136 0 2.39.01 3.233.048.78.036 1.203.166 1.485.276.374.145.64.318.92.598.28.28.453.546.598.92.11.282.24.705.276 1.485.038.844.047 1.097.047 3.233s-.01 2.39-.05 3.233c-.04.78-.17 1.203-.28 1.485-.15.374-.32.64-.6.92-.28.28-.55.453-.92.598-.28.11-.71.24-1.49.276-.85.038-1.1.047-3.24.047s-2.39-.01-3.24-.05c-.78-.04-1.21-.17-1.49-.28-.38-.15-.64-.32-.92-.6-.28-.28-.46-.55-.6-.92-.11-.28-.24-.71-.28-1.49-.03-.84-.04-1.1-.04-3.23s.01-2.39.04-3.24c.04-.78.17-1.21.28-1.49.14-.38.32-.64.6-.92.28-.28.54-.46.92-.6.28-.11.7-.24 1.48-.28.85-.03 1.1-.04 3.24-.04zm0 2.452c-2.27 0-4.108 1.84-4.108 4.108 0 2.27 1.84 4.108 4.108 4.108 2.27 0 4.108-1.84 4.108-4.108 0-2.27-1.84-4.108-4.108-4.108zm0 6.775c-1.473 0-2.667-1.194-2.667-2.667 0-1.473 1.194-2.667 2.667-2.667 1.473 0 2.667 1.194 2.667 2.667 0 1.473-1.194 2.667-2.667 2.667zm5.23-6.937c0 .53-.43.96-.96.96s-.96-.43-.96-.96.43-.96.96-.96.96.43.96.96z"/></symbol>
|
||||
|
||||
<symbol id="linkedin" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M13.632 13.635h-2.37V9.922c0-.886-.018-2.025-1.234-2.025-1.235 0-1.424.964-1.424 1.96v3.778h-2.37V6H8.51v1.04h.03c.318-.6 1.092-1.233 2.247-1.233 2.4 0 2.845 1.58 2.845 3.637v4.188zM3.558 4.955c-.762 0-1.376-.617-1.376-1.377 0-.758.614-1.375 1.376-1.375.76 0 1.376.617 1.376 1.375 0 .76-.617 1.377-1.376 1.377zm1.188 8.68H2.37V6h2.376v7.635zM14.816 0H1.18C.528 0 0 .516 0 1.153v13.694C0 15.484.528 16 1.18 16h13.635c.652 0 1.185-.516 1.185-1.153V1.153C16 .516 15.467 0 14.815 0z" fill-rule="nonzero"/></symbol>
|
||||
|
||||
<symbol id="pinterest" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M8 0C3.582 0 0 3.582 0 8c0 3.39 2.108 6.285 5.084 7.45-.07-.633-.133-1.604.028-2.295.146-.625.938-3.977.938-3.977s-.24-.48-.24-1.188c0-1.11.646-1.943 1.448-1.943.683 0 1.012.513 1.012 1.127 0 .687-.436 1.713-.662 2.664-.19.797.4 1.445 1.185 1.445 1.42 0 2.514-1.498 2.514-3.662 0-1.91-1.376-3.25-3.342-3.25-2.276 0-3.61 1.71-3.61 3.47 0 .69.263 1.43.593 1.83.066.08.075.15.057.23-.06.25-.196.8-.223.91-.035.15-.115.18-.268.11C3.516 10.46 2.89 9 2.89 7.82c0-2.52 1.834-4.84 5.287-4.84 2.774 0 4.932 1.98 4.932 4.62 0 2.76-1.74 4.98-4.16 4.98-.81 0-1.57-.42-1.84-.92l-.5 1.9c-.18.698-.67 1.57-1 2.1.75.23 1.54.357 2.37.357 4.41 0 8-3.58 8-8s-3.59-8-8-8z" fill-rule="nonzero"/></symbol>
|
||||
|
||||
<symbol id="rss" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M12.8 16C12.8 8.978 7.022 3.2 0 3.2V0c8.777 0 16 7.223 16 16h-3.2zM2.194 11.61c1.21 0 2.195.985 2.195 2.196 0 1.21-.99 2.194-2.2 2.194C.98 16 0 15.017 0 13.806c0-1.21.983-2.195 2.194-2.195zM10.606 16h-3.11c0-4.113-3.383-7.497-7.496-7.497v-3.11c5.818 0 10.606 4.79 10.606 10.607z"/></symbol>
|
||||
|
||||
<symbol id="stackoverflow" class="svg-icon" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M12.658 14.577v-4.27h1.423V16H1.23v-5.693h1.42v4.27h10.006zm-8.583-1.423h7.16V11.73h-7.16v1.424zm.173-3.235l6.987 1.46.3-1.38L4.55 8.54l-.302 1.38zm.906-3.37l6.47 3.02.602-1.3-6.47-3.02-.602 1.29zm1.81-3.19l5.478 4.57.906-1.08L7.87 2.28l-.9 1.078zM10.502 0L9.338.863l4.27 5.735 1.164-.862L10.5 0z"/></symbol>
|
||||
|
||||
<symbol id="twitter" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M16 3.038c-.59.26-1.22.437-1.885.517.677-.407 1.198-1.05 1.443-1.816-.634.37-1.337.64-2.085.79-.598-.64-1.45-1.04-2.396-1.04-1.812 0-3.282 1.47-3.282 3.28 0 .26.03.51.085.75-2.728-.13-5.147-1.44-6.766-3.42C.83 2.58.67 3.14.67 3.75c0 1.14.58 2.143 1.46 2.732-.538-.017-1.045-.165-1.487-.41v.04c0 1.59 1.13 2.918 2.633 3.22-.276.074-.566.114-.865.114-.21 0-.41-.02-.61-.058.42 1.304 1.63 2.253 3.07 2.28-1.12.88-2.54 1.404-4.07 1.404-.26 0-.52-.015-.78-.045 1.46.93 3.18 1.474 5.04 1.474 6.04 0 9.34-5 9.34-9.33 0-.14 0-.28-.01-.42.64-.46 1.2-1.04 1.64-1.7z" fill-rule="nonzero"/></symbol>
|
||||
|
||||
<symbol id="youtube" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M0 7.345c0-1.294.16-2.59.16-2.59s.156-1.1.636-1.587c.608-.637 1.408-.617 1.764-.684C3.84 2.36 8 2.324 8 2.324s3.362.004 5.6.166c.314.038.996.04 1.604.678.48.486.636 1.588.636 1.588S16 6.05 16 7.346v1.258c0 1.296-.16 2.59-.16 2.59s-.156 1.102-.636 1.588c-.608.638-1.29.64-1.604.678-2.238.162-5.6.166-5.6.166s-4.16-.037-5.44-.16c-.356-.067-1.156-.047-1.764-.684-.48-.487-.636-1.587-.636-1.587S0 9.9 0 8.605v-1.26zm6.348 2.73V5.58l4.323 2.255-4.32 2.24z"/></symbol>
|
||||
|
||||
<symbol id="mastodon" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414">
|
||||
<path transform="scale(0.07)" d="M211.80734 139.0875c-3.18125 16.36625-28.4925 34.2775-57.5625 37.74875-15.15875 1.80875-30.08375 3.47125-45.99875 2.74125-26.0275-1.1925-46.565-6.2125-46.565-6.2125 0 2.53375.15625 4.94625.46875 7.2025 3.38375 25.68625 25.47 27.225 46.39125 27.9425 21.11625.7225 39.91875-5.20625 39.91875-5.20625l.8675 19.09s-14.77 7.93125-41.08125 9.39c-14.50875.7975-32.52375-.365-53.50625-5.91875C9.23234 213.82 1.40609 165.31125.20859 116.09125c-.365-14.61375-.14-28.39375-.14-39.91875 0-50.33 32.97625-65.0825 32.97625-65.0825C49.67234 3.45375 78.20359.2425 107.86484 0h.72875c29.66125.2425 58.21125 3.45375 74.8375 11.09 0 0 32.975 14.7525 32.975 65.0825 0 0 .41375 37.13375-4.59875 62.915"/>
|
||||
<path transform="scale(0.07)" fill="#FFF" d="M177.50984 80.077v60.94125h-24.14375v-59.15c0-12.46875-5.24625-18.7975-15.74-18.7975-11.6025 0-17.4175 7.5075-17.4175 22.3525v32.37625H96.20734V85.42325c0-14.845-5.81625-22.3525-17.41875-22.3525-10.49375 0-15.74 6.32875-15.74 18.7975v59.15H38.90484V80.077c0-12.455 3.17125-22.3525 9.54125-29.675 6.56875-7.3225 15.17125-11.07625 25.85-11.07625 12.355 0 21.71125 4.74875 27.8975 14.2475l6.01375 10.08125 6.015-10.08125c6.185-9.49875 15.54125-14.2475 27.8975-14.2475 10.6775 0 19.28 3.75375 25.85 11.07625 6.36875 7.3225 9.54 17.22 9.54 29.675"/>
|
||||
</symbol>
|
||||
|
||||
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 9.7 KiB |
17
_site/feed.xml
Normal file
17
_site/feed.xml
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.3.1">Jekyll</generator><link href="http://localhost:4000/feed.xml" rel="self" type="application/atom+xml" /><link href="http://localhost:4000/" rel="alternate" type="text/html" /><updated>2022-11-14T20:19:18+01:00</updated><id>http://localhost:4000/feed.xml</id><title type="html">Your awesome title</title><subtitle>Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.</subtitle><entry><title type="html">Welcome to Jekyll!</title><link href="http://localhost:4000/jekyll/update/2022/11/14/welcome-to-jekyll.html" rel="alternate" type="text/html" title="Welcome to Jekyll!" /><published>2022-11-14T20:17:52+01:00</published><updated>2022-11-14T20:17:52+01:00</updated><id>http://localhost:4000/jekyll/update/2022/11/14/welcome-to-jekyll</id><content type="html" xml:base="http://localhost:4000/jekyll/update/2022/11/14/welcome-to-jekyll.html"><![CDATA[<p>You’ll find this post in your <code class="language-plaintext highlighter-rouge">_posts</code> directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run <code class="language-plaintext highlighter-rouge">jekyll serve</code>, which launches a web server and auto-regenerates your site when a file is updated.</p>
|
||||
|
||||
<p>Jekyll requires blog post files to be named according to the following format:</p>
|
||||
|
||||
<p><code class="language-plaintext highlighter-rouge">YEAR-MONTH-DAY-title.MARKUP</code></p>
|
||||
|
||||
<p>Where <code class="language-plaintext highlighter-rouge">YEAR</code> is a four-digit number, <code class="language-plaintext highlighter-rouge">MONTH</code> and <code class="language-plaintext highlighter-rouge">DAY</code> are both two-digit numbers, and <code class="language-plaintext highlighter-rouge">MARKUP</code> is the file extension representing the format used in the file. After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works.</p>
|
||||
|
||||
<p>Jekyll also offers powerful support for code snippets:</p>
|
||||
|
||||
<figure class="highlight"><pre><code class="language-ruby" data-lang="ruby"><span class="k">def</span> <span class="nf">print_hi</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
|
||||
<span class="nb">puts</span> <span class="s2">"Hi, </span><span class="si">#{</span><span class="nb">name</span><span class="si">}</span><span class="s2">"</span>
|
||||
<span class="k">end</span>
|
||||
<span class="n">print_hi</span><span class="p">(</span><span class="s1">'Tom'</span><span class="p">)</span>
|
||||
<span class="c1">#=> prints 'Hi, Tom' to STDOUT.</span></code></pre></figure>
|
||||
|
||||
<p>Check out the <a href="https://jekyllrb.com/docs/home">Jekyll docs</a> for more info on how to get the most out of Jekyll. File all bugs/feature requests at <a href="https://github.com/jekyll/jekyll">Jekyll’s GitHub repo</a>. If you have questions, you can ask them on <a href="https://talk.jekyllrb.com/">Jekyll Talk</a>.</p>]]></content><author><name></name></author><category term="jekyll" /><category term="update" /><summary type="html"><![CDATA[You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run jekyll serve, which launches a web server and auto-regenerates your site when a file is updated.]]></summary></entry></feed>
|
||||
45
_site/history.php
Normal file
45
_site/history.php
Normal file
@ -0,0 +1,45 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="nl">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<link rel='stylesheet' href='https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap'>
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
<link rel="stylesheet" type="text/css" href="w3.css">
|
||||
|
||||
<script src="script.js"></script>
|
||||
<script src='https://kit.fontawesome.com/ac98b28c26.js' crossorigin='anonymous'></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
||||
|
||||
<title>AIVD Kerstpuzzel Scorebord - Scoreverloop</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="w3-card w3-sidebar w3-collapse w3-bar-block w3-blue-gray w3-text-white">
|
||||
<a href="index.php" class="w3-bar-item w3-button">Home</a>
|
||||
<a href="#" class="w3-bar-item w3-button">Scoreverloop</a>
|
||||
<a href="info.php" class="w3-bar-item w3-button">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div id="overlay" class="overlay w3-container w3-bar-block w3-hide w3-hide-large w3-top w3-blue-gray w3-text-white">
|
||||
<header class="w3-container w3-border-bottom w3-border-white">
|
||||
<h1> <i id="overlay-close" class="fas fa-times w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<a href="index.php" class="w3-bar-item w3-button w3-center">Home</a>
|
||||
<a href="#" class="w3-bar-item w3-button w3-center">Scoreverloop</a>
|
||||
<a href="info.php" class="w3-bar-item w3-button w3-center">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div class="main w3-container w3-main">
|
||||
<header class="w3-container w3-border-bottom w3-border-blue-gray">
|
||||
<h1>Scoreverloop<i id="overlay-open" class="fas fa-bars w3-hide-large w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<div class="w3-container">
|
||||
<canvas id="history-graph"></canvas>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
54
_site/include.php
Normal file
54
_site/include.php
Normal file
@ -0,0 +1,54 @@
|
||||
<?php
|
||||
|
||||
define("TEAMS", [
|
||||
"|Math Lads|"
|
||||
]);
|
||||
|
||||
define("TEAM_COLORS", [
|
||||
"|Math Lads|" => "#2ca02c"
|
||||
]);
|
||||
|
||||
define("QUESTION_POINTS", [
|
||||
"1" => 1
|
||||
]);
|
||||
|
||||
define("MEDAL_COLORS", ["amber", "gray", "orange"]);
|
||||
|
||||
function loadScoreFile() {
|
||||
$result = file_get_contents("score.json");
|
||||
if ($result === false) {
|
||||
throw new Exception("Score-bestand kan niet geopend worden.");
|
||||
}
|
||||
|
||||
$teamQuestionDates = array_fill_keys(TEAMS, []);
|
||||
|
||||
$scoreJson = json_decode($result, true);
|
||||
if ($scoreJson === false) {
|
||||
throw new Exception("Er is een fout opgetreden bij het decoderen van het score-bestand.");
|
||||
}
|
||||
|
||||
return array_merge($teamQuestionDates, $scoreJson);
|
||||
}
|
||||
|
||||
function updateScoreFile($teamQuestionDates) {
|
||||
$scoreJson = json_encode($teamQuestionDates, JSON_PRETTY_PRINT);
|
||||
if ($scoreJson === false) {
|
||||
throw new Exception("Er is een fout opgetreden bij het coderen van het score-bestand.");
|
||||
}
|
||||
|
||||
$result = file_put_contents("score.json", $scoreJson."\n");
|
||||
if ($result === false) {
|
||||
throw new Exception("Score-bestand kan niet bijgewerkt worden.");
|
||||
}
|
||||
}
|
||||
|
||||
function showError($error) {
|
||||
exit($error." Stuur een berichtje naar kerstpuzzel@deleidscheflesch.nl, dan wordt het zo voor je gefixt!");
|
||||
}
|
||||
|
||||
function calculatePoints(array $questionDates) {
|
||||
$points = array_intersect_key(QUESTION_POINTS, $questionDates);
|
||||
return array_sum($points);
|
||||
}
|
||||
|
||||
?>
|
||||
77
_site/index.html
Normal file
77
_site/index.html
Normal file
@ -0,0 +1,77 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en"><head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"><!-- Begin Jekyll SEO tag v2.8.0 -->
|
||||
<title>Your awesome title | Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.</title>
|
||||
<meta name="generator" content="Jekyll v4.3.1" />
|
||||
<meta property="og:title" content="Your awesome title" />
|
||||
<meta property="og:locale" content="en_US" />
|
||||
<meta name="description" content="Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description." />
|
||||
<meta property="og:description" content="Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description." />
|
||||
<link rel="canonical" href="http://localhost:4000/" />
|
||||
<meta property="og:url" content="http://localhost:4000/" />
|
||||
<meta property="og:site_name" content="Your awesome title" />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<meta property="twitter:title" content="Your awesome title" />
|
||||
<script type="application/ld+json">
|
||||
{"@context":"https://schema.org","@type":"WebSite","description":"Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.","headline":"Your awesome title","name":"Your awesome title","url":"http://localhost:4000/"}</script>
|
||||
<!-- End Jekyll SEO tag -->
|
||||
<link rel="stylesheet" href="/assets/main.css"><link type="application/atom+xml" rel="alternate" href="http://localhost:4000/feed.xml" title="Your awesome title" /></head>
|
||||
<body><header class="site-header" role="banner">
|
||||
|
||||
<div class="wrapper"><a class="site-title" rel="author" href="/">Your awesome title</a><nav class="site-nav">
|
||||
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
|
||||
<label for="nav-trigger">
|
||||
<span class="menu-icon">
|
||||
<svg viewBox="0 0 18 15" width="18px" height="15px">
|
||||
<path d="M18,1.484c0,0.82-0.665,1.484-1.484,1.484H1.484C0.665,2.969,0,2.304,0,1.484l0,0C0,0.665,0.665,0,1.484,0 h15.032C17.335,0,18,0.665,18,1.484L18,1.484z M18,7.516C18,8.335,17.335,9,16.516,9H1.484C0.665,9,0,8.335,0,7.516l0,0 c0-0.82,0.665-1.484,1.484-1.484h15.032C17.335,6.031,18,6.696,18,7.516L18,7.516z M18,13.516C18,14.335,17.335,15,16.516,15H1.484 C0.665,15,0,14.335,0,13.516l0,0c0-0.82,0.665-1.483,1.484-1.483h15.032C17.335,12.031,18,12.695,18,13.516L18,13.516z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</label>
|
||||
|
||||
<div class="trigger"><a class="page-link" href="/about/">About</a></div>
|
||||
</nav></div>
|
||||
</header>
|
||||
<main class="page-content" aria-label="Content">
|
||||
<div class="wrapper">
|
||||
<div class="home">
|
||||
<h2 class="post-list-heading">Posts</h2>
|
||||
<ul class="post-list"><li><span class="post-meta">Nov 14, 2022</span>
|
||||
<h3>
|
||||
<a class="post-link" href="/jekyll/update/2022/11/14/welcome-to-jekyll.html">
|
||||
Welcome to Jekyll!
|
||||
</a>
|
||||
</h3></li></ul>
|
||||
|
||||
<p class="rss-subscribe">subscribe <a href="/feed.xml">via RSS</a></p></div>
|
||||
|
||||
</div>
|
||||
</main><footer class="site-footer h-card">
|
||||
<data class="u-url" href="/"></data>
|
||||
|
||||
<div class="wrapper">
|
||||
|
||||
<h2 class="footer-heading">Your awesome title</h2>
|
||||
|
||||
<div class="footer-col-wrapper">
|
||||
<div class="footer-col footer-col-1">
|
||||
<ul class="contact-list">
|
||||
<li class="p-name">Your awesome title</li><li><a class="u-email" href="mailto:your-email@example.com">your-email@example.com</a></li></ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-col footer-col-2"><ul class="social-media-list"><li><a href="https://github.com/jekyll"><svg class="svg-icon"><use xlink:href="/assets/minima-social-icons.svg#github"></use></svg> <span class="username">jekyll</span></a></li><li><a href="https://www.twitter.com/jekyllrb"><svg class="svg-icon"><use xlink:href="/assets/minima-social-icons.svg#twitter"></use></svg> <span class="username">jekyllrb</span></a></li></ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-col footer-col-3">
|
||||
<p>Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</footer>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
139
_site/index.php
Normal file
139
_site/index.php
Normal file
@ -0,0 +1,139 @@
|
||||
<?php
|
||||
|
||||
include "include.php";
|
||||
|
||||
// === LOAD SCORE FILE ===
|
||||
try {
|
||||
$teamQuestionDates = loadScoreFile();
|
||||
} catch (Exception $e) {
|
||||
showError($e->getMessage());
|
||||
}
|
||||
|
||||
// === PROCESS FORM DATA ===
|
||||
if (isset($_POST['team']) && isset(QUESTION_POINTS[$_POST['question']])) {
|
||||
$team = $_POST['team'];
|
||||
$question = $_POST['question'];
|
||||
$date = (new DateTime())->format("Y-m-d");
|
||||
|
||||
if (isset($teamQuestionDates[$team][$question])) {
|
||||
unset($teamQuestionDates[$team][$question]);
|
||||
} else {
|
||||
$teamQuestionDates[$team][$question] = $date;
|
||||
}
|
||||
|
||||
try {
|
||||
updateScoreFile($teamQuestionDates);
|
||||
} catch (Exception $e) {
|
||||
showError($e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
$teamPoints = array_map("calculatePoints", $teamQuestionDates);
|
||||
arsort($teamPoints);
|
||||
|
||||
$allQuestions = array_keys(QUESTION_POINTS);
|
||||
|
||||
?>
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="nl">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<link rel='stylesheet' href='https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap'>
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
<link rel="stylesheet" type="text/css" href="w3.css">
|
||||
|
||||
<script src="script.js"></script>
|
||||
<script src='https://kit.fontawesome.com/ac98b28c26.js' crossorigin='anonymous'></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
||||
|
||||
<title>AIVD Kerstpuzzel Scorebord - Home</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="w3-card w3-sidebar w3-collapse w3-bar-block w3-blue-gray w3-text-white">
|
||||
<a href="#" class="w3-bar-item w3-button">Home</a>
|
||||
<a href="history.php" class="w3-bar-item w3-button">Scoreverloop</a>
|
||||
<a href="info.php" class="w3-bar-item w3-button">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div id="overlay" class="overlay w3-container w3-bar-block w3-hide w3-hide-large w3-top w3-blue-gray w3-text-white">
|
||||
<header class="w3-container w3-border-bottom w3-border-white">
|
||||
<h1> <i id="overlay-close" class="fas fa-times w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<a href="#" class="w3-bar-item w3-button w3-center">Home</a>
|
||||
<a href="history.php" class="w3-bar-item w3-button w3-center">Scoreverloop</a>
|
||||
<a href="info.php" class="w3-bar-item w3-button w3-center">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div class="main w3-container w3-main">
|
||||
<header class="w3-container w3-border-bottom w3-border-blue-gray">
|
||||
<h1>AIVD Kerstpuzzel Scorebord<i id="overlay-open" class="fas fa-bars w3-hide-large w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<div class="w3-container">
|
||||
<h2>Huidige stand</h2>
|
||||
<ul class="w3-ul">
|
||||
<?php
|
||||
|
||||
$i = 0;
|
||||
foreach ($teamPoints as $team => $points) {
|
||||
$class = "w3-badge";
|
||||
if ($i < 3) {
|
||||
$class .= " w3-".MEDAL_COLORS[$i];
|
||||
}
|
||||
echo "<li class='w3-border-blue-gray'><span class='".$class."'>".($i + 1)."</span> ".$team." (".$points.")</li>\n";
|
||||
$i++;
|
||||
}
|
||||
|
||||
?>
|
||||
</ul>
|
||||
|
||||
<h2>Opgeloste vragen</h2>
|
||||
<p>Klik in het kaartje van jouw team op het nummer van een opgave om deze als (on)opgelost te markeren, dan
|
||||
wordt de ranglijst meteen bijgewerkt.</p>
|
||||
|
||||
<div class="w3-row-padding">
|
||||
<?php
|
||||
|
||||
$i = 0;
|
||||
$n = count($teamQuestionDates);
|
||||
foreach ($teamQuestionDates as $team => $questionDates) {
|
||||
echo "<form class='w3-card w3-col m6 l3' action='' method='post'>\n";
|
||||
|
||||
echo "<input type='hidden' name='team' value='".$team."'>\n";
|
||||
|
||||
echo "<header class='w3-container w3-border-bottom w3-border-blue-gray'>\n";
|
||||
echo "<h3>".$team."</h3>\n";
|
||||
echo "</header>\n";
|
||||
|
||||
echo "<div class='w3-container'>\n";
|
||||
echo "<p>\n";
|
||||
|
||||
foreach ($allQuestions as $question) {
|
||||
$color = isset($questionDates[$question]) ? "blue-gray" : "light-gray";
|
||||
echo "<button class='question-tag w3-button w3-".$color." w3-padding-small w3-round-large' name='question' value='".$question."'>".$question."</button>\n";
|
||||
}
|
||||
|
||||
echo "</p>\n";
|
||||
echo "</div>\n";
|
||||
|
||||
echo "</form>\n";
|
||||
|
||||
$i++;
|
||||
if ($i % 4 == 0 && $i < $n) {
|
||||
echo "</div>\n";
|
||||
echo "<div class='w3-row-padding'>\n";
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
<div class="w3-rest"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
74
_site/info.php
Normal file
74
_site/info.php
Normal file
@ -0,0 +1,74 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="nl">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<link rel='stylesheet' href='https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap'>
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
<link rel="stylesheet" type="text/css" href="w3.css">
|
||||
|
||||
<script src="script.js"></script>
|
||||
<script src='https://kit.fontawesome.com/ac98b28c26.js' crossorigin='anonymous'></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
||||
|
||||
<title>AIVD Kerstpuzzel Scorebord - Informatie</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="w3-card w3-sidebar w3-collapse w3-bar-block w3-blue-gray w3-text-white">
|
||||
<a href="index.php" class="w3-bar-item w3-button">Home</a>
|
||||
<a href="history.php" class="w3-bar-item w3-button">Scoreverloop</a>
|
||||
<a href="#" class="w3-bar-item w3-button">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div id="overlay" class="overlay w3-container w3-bar-block w3-hide w3-hide-large w3-top w3-blue-gray w3-text-white">
|
||||
<header class="w3-container w3-border-bottom w3-border-white">
|
||||
<h1> <i id="overlay-close" class="fas fa-times w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<a href="index.php" class="w3-bar-item w3-button w3-center">Home</a>
|
||||
<a href="history.php" class="w3-bar-item w3-button w3-center">Scoreverloop</a>
|
||||
<a href="#" class="w3-bar-item w3-button w3-center">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div class="main w3-container w3-main">
|
||||
<header class="w3-container w3-border-bottom w3-border-blue-gray">
|
||||
<h1>Informatie<i id="overlay-open" class="fas fa-bars w3-hide-large w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<div class="w3-container">
|
||||
<p>Hou jij ook van puzzelen, maar heb je geen zin in de zoveelste woordzoeker of sudoku? Dan is de AIVD
|
||||
kerstpuzzel iets voor jou! Of je nu je hersenen wilt laten kraken (door de opgaven), of gewoon gezellig met
|
||||
anderen wilt puzzelen, zoek een team van maximaal vier personen bij elkaar en ga aan de slag! De opgaven
|
||||
kun je <a href="https://www.aivd.nl/onderwerpen/aivd-kerstpuzzel/documenten/publicaties/2021/12/14/aivd-kerstpuzzel-2021-opgaven-en-antwoordformulier">
|
||||
hier</a> downloaden.</p>
|
||||
|
||||
<h2>Puzzelmiddag</h2>
|
||||
<p>Als de coronamaatregelen het toelaten, wordt er halverwege januari een fysiek puzzelmiddagje
|
||||
georganiseerd. Je kunt dan als team bij elkaar komen om onder het genot van koekjes, chips en andere gezonde
|
||||
snacks de puntjes op de i te zetten voordat de puzzel ingeleverd moet worden. Als een fysieke bijeenkomst
|
||||
niet mogelijk is, organiseer dan vooral je eigen puzzelmiddag! We houden jullie per mail op de hoogte van de
|
||||
actuele stand van zaken.</p>
|
||||
|
||||
<h2>Inleveren</h2>
|
||||
<p>Stuur uiterlijk 17 januari 23:59 je <strong>ingevulde</strong> puzzeldocument op naar
|
||||
<a href="mailto:kerstpuzzel@deleidscheflesch.nl">kerstpuzzel@deleidscheflesch.nl</a>, zodat wij alles voor
|
||||
de deadline bij de AIVD in kunnen leveren. De persoonlijke gegevens in het puzzeldocument delen wij
|
||||
uitsluitend met de AIVD. Wanneer de antwoorden op de opgaven gepubliceerd zijn, kijken wij jullie puzzels
|
||||
na, en krijgt het team met de meeste punten een mooie prijs. Je kunt je puzzel ook zelf bij de AIVD
|
||||
inleveren, maar dan maak je geen kans meer op de prijs.</p>
|
||||
|
||||
<h2>Deze website</h2>
|
||||
<p>Op de pagina "Home" vind je de (vermeende) scores van alle deelnemende teams. Klik in het kaartje van jouw eigen team
|
||||
op het nummer van een opgave om deze als (on)opgelost te markeren, dan wordt de ranglijst meteen bijgewerkt.
|
||||
Op de pagina "Scoreverloop" zie je hoe het (vermeende) aantal punten van ieder deelnemend team zich door
|
||||
de tijd heeft ontwikkeld.</p>
|
||||
|
||||
<p>Heb je vragen, opmerkingen of klachten, schroom dan niet om een mailtje te sturen naar
|
||||
<a href="mailto:kerstpuzzel@deleidscheflesch.nl">kerstpuzzel@deleidscheflesch.nl</a>. Veel plezier en succes
|
||||
met puzzelen, en moge de beste winnen!</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
99
_site/jekyll/update/2022/11/14/welcome-to-jekyll.html
Normal file
99
_site/jekyll/update/2022/11/14/welcome-to-jekyll.html
Normal file
@ -0,0 +1,99 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en"><head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"><!-- Begin Jekyll SEO tag v2.8.0 -->
|
||||
<title>Welcome to Jekyll! | Your awesome title</title>
|
||||
<meta name="generator" content="Jekyll v4.3.1" />
|
||||
<meta property="og:title" content="Welcome to Jekyll!" />
|
||||
<meta property="og:locale" content="en_US" />
|
||||
<meta name="description" content="You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run jekyll serve, which launches a web server and auto-regenerates your site when a file is updated." />
|
||||
<meta property="og:description" content="You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run jekyll serve, which launches a web server and auto-regenerates your site when a file is updated." />
|
||||
<link rel="canonical" href="http://localhost:4000/jekyll/update/2022/11/14/welcome-to-jekyll.html" />
|
||||
<meta property="og:url" content="http://localhost:4000/jekyll/update/2022/11/14/welcome-to-jekyll.html" />
|
||||
<meta property="og:site_name" content="Your awesome title" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="article:published_time" content="2022-11-14T20:17:52+01:00" />
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<meta property="twitter:title" content="Welcome to Jekyll!" />
|
||||
<script type="application/ld+json">
|
||||
{"@context":"https://schema.org","@type":"BlogPosting","dateModified":"2022-11-14T20:17:52+01:00","datePublished":"2022-11-14T20:17:52+01:00","description":"You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run jekyll serve, which launches a web server and auto-regenerates your site when a file is updated.","headline":"Welcome to Jekyll!","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/jekyll/update/2022/11/14/welcome-to-jekyll.html"},"url":"http://localhost:4000/jekyll/update/2022/11/14/welcome-to-jekyll.html"}</script>
|
||||
<!-- End Jekyll SEO tag -->
|
||||
<link rel="stylesheet" href="/assets/main.css"><link type="application/atom+xml" rel="alternate" href="http://localhost:4000/feed.xml" title="Your awesome title" /></head>
|
||||
<body><header class="site-header" role="banner">
|
||||
|
||||
<div class="wrapper"><a class="site-title" rel="author" href="/">Your awesome title</a><nav class="site-nav">
|
||||
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
|
||||
<label for="nav-trigger">
|
||||
<span class="menu-icon">
|
||||
<svg viewBox="0 0 18 15" width="18px" height="15px">
|
||||
<path d="M18,1.484c0,0.82-0.665,1.484-1.484,1.484H1.484C0.665,2.969,0,2.304,0,1.484l0,0C0,0.665,0.665,0,1.484,0 h15.032C17.335,0,18,0.665,18,1.484L18,1.484z M18,7.516C18,8.335,17.335,9,16.516,9H1.484C0.665,9,0,8.335,0,7.516l0,0 c0-0.82,0.665-1.484,1.484-1.484h15.032C17.335,6.031,18,6.696,18,7.516L18,7.516z M18,13.516C18,14.335,17.335,15,16.516,15H1.484 C0.665,15,0,14.335,0,13.516l0,0c0-0.82,0.665-1.483,1.484-1.483h15.032C17.335,12.031,18,12.695,18,13.516L18,13.516z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</label>
|
||||
|
||||
<div class="trigger"><a class="page-link" href="/about/">About</a></div>
|
||||
</nav></div>
|
||||
</header>
|
||||
<main class="page-content" aria-label="Content">
|
||||
<div class="wrapper">
|
||||
<article class="post h-entry" itemscope itemtype="http://schema.org/BlogPosting">
|
||||
|
||||
<header class="post-header">
|
||||
<h1 class="post-title p-name" itemprop="name headline">Welcome to Jekyll!</h1>
|
||||
<p class="post-meta">
|
||||
<time class="dt-published" datetime="2022-11-14T20:17:52+01:00" itemprop="datePublished">Nov 14, 2022
|
||||
</time></p>
|
||||
</header>
|
||||
|
||||
<div class="post-content e-content" itemprop="articleBody">
|
||||
<p>You’ll find this post in your <code class="language-plaintext highlighter-rouge">_posts</code> directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run <code class="language-plaintext highlighter-rouge">jekyll serve</code>, which launches a web server and auto-regenerates your site when a file is updated.</p>
|
||||
|
||||
<p>Jekyll requires blog post files to be named according to the following format:</p>
|
||||
|
||||
<p><code class="language-plaintext highlighter-rouge">YEAR-MONTH-DAY-title.MARKUP</code></p>
|
||||
|
||||
<p>Where <code class="language-plaintext highlighter-rouge">YEAR</code> is a four-digit number, <code class="language-plaintext highlighter-rouge">MONTH</code> and <code class="language-plaintext highlighter-rouge">DAY</code> are both two-digit numbers, and <code class="language-plaintext highlighter-rouge">MARKUP</code> is the file extension representing the format used in the file. After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works.</p>
|
||||
|
||||
<p>Jekyll also offers powerful support for code snippets:</p>
|
||||
|
||||
<figure class="highlight"><pre><code class="language-ruby" data-lang="ruby"><span class="k">def</span> <span class="nf">print_hi</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
|
||||
<span class="nb">puts</span> <span class="s2">"Hi, </span><span class="si">#{</span><span class="nb">name</span><span class="si">}</span><span class="s2">"</span>
|
||||
<span class="k">end</span>
|
||||
<span class="n">print_hi</span><span class="p">(</span><span class="s1">'Tom'</span><span class="p">)</span>
|
||||
<span class="c1">#=> prints 'Hi, Tom' to STDOUT.</span></code></pre></figure>
|
||||
|
||||
<p>Check out the <a href="https://jekyllrb.com/docs/home">Jekyll docs</a> for more info on how to get the most out of Jekyll. File all bugs/feature requests at <a href="https://github.com/jekyll/jekyll">Jekyll’s GitHub repo</a>. If you have questions, you can ask them on <a href="https://talk.jekyllrb.com/">Jekyll Talk</a>.</p>
|
||||
|
||||
|
||||
</div><a class="u-url" href="/jekyll/update/2022/11/14/welcome-to-jekyll.html" hidden></a>
|
||||
</article>
|
||||
|
||||
</div>
|
||||
</main><footer class="site-footer h-card">
|
||||
<data class="u-url" href="/"></data>
|
||||
|
||||
<div class="wrapper">
|
||||
|
||||
<h2 class="footer-heading">Your awesome title</h2>
|
||||
|
||||
<div class="footer-col-wrapper">
|
||||
<div class="footer-col footer-col-1">
|
||||
<ul class="contact-list">
|
||||
<li class="p-name">Your awesome title</li><li><a class="u-email" href="mailto:your-email@example.com">your-email@example.com</a></li></ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-col footer-col-2"><ul class="social-media-list"><li><a href="https://github.com/jekyll"><svg class="svg-icon"><use xlink:href="/assets/minima-social-icons.svg#github"></use></svg> <span class="username">jekyll</span></a></li><li><a href="https://www.twitter.com/jekyllrb"><svg class="svg-icon"><use xlink:href="/assets/minima-social-icons.svg#twitter"></use></svg> <span class="username">jekyllrb</span></a></li></ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-col footer-col-3">
|
||||
<p>Write an awesome description for your new site here. You can edit this line in _config.yml. It will appear in your document head meta (for Google search results) and in your feed.xml site description.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</footer>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
3
_site/score.json
Normal file
3
_site/score.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"|Math Lads|": []
|
||||
}
|
||||
51
_site/script.js
Normal file
51
_site/script.js
Normal file
@ -0,0 +1,51 @@
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
setupOverlayButtons();
|
||||
setupHistoryGraph();
|
||||
});
|
||||
|
||||
function setupOverlayButtons() {
|
||||
const openButton = document.getElementById("overlay-open");
|
||||
const closeButton = document.getElementById("overlay-close");
|
||||
|
||||
openButton.addEventListener("click", function() {
|
||||
document.getElementById("overlay").classList.remove("w3-hide")
|
||||
});
|
||||
closeButton.addEventListener("click", function() {
|
||||
document.getElementById("overlay").classList.add("w3-hide");
|
||||
});
|
||||
}
|
||||
|
||||
function setupHistoryGraph() {
|
||||
const request = new XMLHttpRequest();
|
||||
|
||||
if (!request || document.getElementById("history-graph") === null) {
|
||||
return;
|
||||
}
|
||||
|
||||
request.open("GET", "ajax.php");
|
||||
request.onload = function() {
|
||||
const data = JSON.parse(this.response);
|
||||
const canvas = document.getElementById("history-graph");
|
||||
const chart = new Chart(canvas, {
|
||||
type: 'line',
|
||||
data: data,
|
||||
options: {
|
||||
scales: {
|
||||
y: {
|
||||
title: {
|
||||
display: true,
|
||||
text: "Aantal punten"
|
||||
}
|
||||
},
|
||||
x: {
|
||||
title: {
|
||||
display: true,
|
||||
text: "Datum"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
request.send();
|
||||
}
|
||||
16
_site/style.css
Normal file
16
_site/style.css
Normal file
@ -0,0 +1,16 @@
|
||||
:root {
|
||||
--sidebar-width: 200px;
|
||||
}
|
||||
|
||||
.overlay {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.main {
|
||||
margin-left: var(--sidebar-width);
|
||||
}
|
||||
|
||||
.question-tag {
|
||||
margin-right: 8px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
239
_site/w3.css
Normal file
239
_site/w3.css
Normal file
@ -0,0 +1,239 @@
|
||||
:root {
|
||||
--sidebar-width: 200px;
|
||||
}
|
||||
|
||||
/* W3.CSS 4.15 December 2020 by Jan Egil and Borge Refsnes */
|
||||
html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}
|
||||
/* Extract from normalize.css by Nicolas Gallagher and Jonathan Neal git.io/normalize */
|
||||
html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}
|
||||
article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block}summary{display:list-item}
|
||||
audio,canvas,progress,video{display:inline-block}progress{vertical-align:baseline}
|
||||
audio:not([controls]){display:none;height:0}[hidden],template{display:none}
|
||||
a{background-color:transparent}a:active,a:hover{outline-width:0}
|
||||
abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}
|
||||
b,strong{font-weight:bolder}dfn{font-style:italic}mark{background:#ff0;color:#000}
|
||||
small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
|
||||
sub{bottom:-0.25em}sup{top:-0.5em}figure{margin:1em 40px}img{border-style:none}
|
||||
code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}hr{box-sizing:content-box;height:0;overflow:visible}
|
||||
button,input,select,textarea,optgroup{font:inherit;margin:0}optgroup{font-weight:bold}
|
||||
button,input{overflow:visible}button,select{text-transform:none}
|
||||
button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}
|
||||
button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}
|
||||
button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}
|
||||
fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}
|
||||
legend{color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}
|
||||
[type=checkbox],[type=radio]{padding:0}
|
||||
[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}
|
||||
[type=search]{-webkit-appearance:textfield;outline-offset:-2px}
|
||||
[type=search]::-webkit-search-decoration{-webkit-appearance:none}
|
||||
::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
|
||||
/* End extract */
|
||||
html,body{font-family:"Open Sans",Verdana,sans-serif;font-size:15px;line-height:1.5}html{overflow-x:hidden}
|
||||
h1{font-size:36px}h2{font-size:30px}h3{font-size:24px}h4{font-size:20px}h5{font-size:18px}h6{font-size:16px}
|
||||
.w3-serif{font-family:serif}.w3-sans-serif{font-family:sans-serif}.w3-cursive{font-family:cursive}.w3-monospace{font-family:monospace}
|
||||
h1,h2,h3,h4,h5,h6{font-family:"Segoe UI",Arial,sans-serif;font-weight:400;margin:10px 0}.w3-wide{letter-spacing:4px}
|
||||
hr{border:0;border-top:1px solid #eee;margin:20px 0}
|
||||
.w3-image{max-width:100%;height:auto}img{vertical-align:middle}a{color:inherit}
|
||||
.w3-table,.w3-table-all{border-collapse:collapse;border-spacing:0;width:100%;display:table}.w3-table-all{border:1px solid #ccc}
|
||||
.w3-bordered tr,.w3-table-all tr{border-bottom:1px solid #ddd}.w3-striped tbody tr:nth-child(even){background-color:#f1f1f1}
|
||||
.w3-table-all tr:nth-child(odd){background-color:#fff}.w3-table-all tr:nth-child(even){background-color:#f1f1f1}
|
||||
.w3-hoverable tbody tr:hover,.w3-ul.w3-hoverable li:hover{background-color:#ccc}.w3-centered tr th,.w3-centered tr td{text-align:center}
|
||||
.w3-table td,.w3-table th,.w3-table-all td,.w3-table-all th{padding:8px 8px;display:table-cell;text-align:left;vertical-align:top}
|
||||
.w3-table th:first-child,.w3-table td:first-child,.w3-table-all th:first-child,.w3-table-all td:first-child{padding-left:16px}
|
||||
.w3-btn,.w3-button{border:none;display:inline-block;padding:8px 16px;vertical-align:middle;overflow:hidden;text-decoration:none;color:inherit;background-color:inherit;text-align:center;cursor:pointer;white-space:nowrap}
|
||||
.w3-btn:hover{box-shadow:0 8px 16px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19)}
|
||||
.w3-btn,.w3-button{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
|
||||
.w3-disabled,.w3-btn:disabled,.w3-button:disabled{cursor:not-allowed;opacity:0.3}.w3-disabled *,:disabled *{pointer-events:none}
|
||||
.w3-btn.w3-disabled:hover,.w3-btn:disabled:hover{box-shadow:none}
|
||||
.w3-badge,.w3-tag{background-color:#000;color:#fff;display:inline-block;padding-left:8px;padding-right:8px;text-align:center}.w3-badge{border-radius:50%}
|
||||
.w3-ul{list-style-type:none;padding:0;margin:0}.w3-ul li{padding:8px 16px;border-bottom:1px solid #ddd}.w3-ul li:last-child{border-bottom:none}
|
||||
.w3-tooltip,.w3-display-container{position:relative}.w3-tooltip .w3-text{display:none}.w3-tooltip:hover .w3-text{display:inline-block}
|
||||
.w3-ripple:active{opacity:0.5}.w3-ripple{transition:opacity 0s}
|
||||
.w3-input{padding:8px;display:block;border:none;border-bottom:1px solid #ccc;width:100%}
|
||||
.w3-select{padding:9px 0;width:100%;border:none;border-bottom:1px solid #ccc}
|
||||
.w3-dropdown-click,.w3-dropdown-hover{position:relative;display:inline-block;cursor:pointer}
|
||||
.w3-dropdown-hover:hover .w3-dropdown-content{display:block}
|
||||
.w3-dropdown-hover:first-child,.w3-dropdown-click:hover{background-color:#ccc;color:#000}
|
||||
.w3-dropdown-hover:hover > .w3-button:first-child,.w3-dropdown-click:hover > .w3-button:first-child{background-color:#ccc;color:#000}
|
||||
.w3-dropdown-content{cursor:auto;color:#000;background-color:#fff;display:none;position:absolute;min-width:160px;margin:0;padding:0;z-index:1}
|
||||
.w3-check,.w3-radio{width:24px;height:24px;position:relative;top:6px}
|
||||
.w3-sidebar{height:100%;width:var(--sidebar-width);background-color:#fff;position:fixed!important;z-index:1;overflow:auto}
|
||||
.w3-bar-block .w3-dropdown-hover,.w3-bar-block .w3-dropdown-click{width:100%}
|
||||
.w3-bar-block .w3-dropdown-hover .w3-dropdown-content,.w3-bar-block .w3-dropdown-click .w3-dropdown-content{min-width:100%}
|
||||
.w3-bar-block .w3-dropdown-hover .w3-button,.w3-bar-block .w3-dropdown-click .w3-button{width:100%;text-align:left;padding:8px 16px}
|
||||
.w3-main,#main{transition:margin-left .4s}
|
||||
.w3-modal{z-index:3;display:none;padding-top:100px;position:fixed;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgb(0,0,0);background-color:rgba(0,0,0,0.4)}
|
||||
.w3-modal-content{margin:auto;background-color:#fff;position:relative;padding:0;outline:0;width:600px}
|
||||
.w3-bar{width:100%;overflow:hidden}.w3-center .w3-bar{display:inline-block;width:auto}
|
||||
.w3-bar .w3-bar-item{padding:8px 16px;float:left;width:auto;border:none;display:block;outline:0}
|
||||
.w3-bar .w3-dropdown-hover,.w3-bar .w3-dropdown-click{position:static;float:left}
|
||||
.w3-bar .w3-button{white-space:normal}
|
||||
.w3-bar-block .w3-bar-item{width:100%;display:block;padding:8px 16px;text-align:left;border:none;white-space:normal;float:none;outline:0}
|
||||
.w3-bar-block.w3-center .w3-bar-item{text-align:center}.w3-block{display:block;width:100%}
|
||||
.w3-responsive{display:block;overflow-x:auto}
|
||||
.w3-container:after,.w3-container:before,.w3-panel:after,.w3-panel:before,.w3-row:after,.w3-row:before,.w3-row-padding:after,.w3-row-padding:before,
|
||||
.w3-cell-row:before,.w3-cell-row:after,.w3-clear:after,.w3-clear:before,.w3-bar:before,.w3-bar:after{content:"";display:table;clear:both}
|
||||
.w3-col,.w3-half,.w3-third,.w3-twothird,.w3-threequarter,.w3-quarter{float:left;width:100%}
|
||||
.w3-col.s1{width:8.33333%}.w3-col.s2{width:16.66666%}.w3-col.s3{width:24.99999%}.w3-col.s4{width:33.33333%}
|
||||
.w3-col.s5{width:41.66666%}.w3-col.s6{width:49.99999%}.w3-col.s7{width:58.33333%}.w3-col.s8{width:66.66666%}
|
||||
.w3-col.s9{width:74.99999%}.w3-col.s10{width:83.33333%}.w3-col.s11{width:91.66666%}.w3-col.s12{width:99.99999%}
|
||||
@media (min-width:601px){.w3-col.m1{width:8.33333%}.w3-col.m2{width:16.66666%}.w3-col.m3,.w3-quarter{width:24.99999%}.w3-col.m4,.w3-third{width:33.33333%}
|
||||
.w3-col.m5{width:41.66666%}.w3-col.m6,.w3-half{width:49.99999%}.w3-col.m7{width:58.33333%}.w3-col.m8,.w3-twothird{width:66.66666%}
|
||||
.w3-col.m9,.w3-threequarter{width:74.99999%}.w3-col.m10{width:83.33333%}.w3-col.m11{width:91.66666%}.w3-col.m12{width:99.99999%}}
|
||||
@media (min-width:993px){.w3-col.l1{width:8.33333%}.w3-col.l2{width:16.66666%}.w3-col.l3{width:24.99999%}.w3-col.l4{width:33.33333%}
|
||||
.w3-col.l5{width:41.66666%}.w3-col.l6{width:49.99999%}.w3-col.l7{width:58.33333%}.w3-col.l8{width:66.66666%}
|
||||
.w3-col.l9{width:74.99999%}.w3-col.l10{width:83.33333%}.w3-col.l11{width:91.66666%}.w3-col.l12{width:99.99999%}}
|
||||
.w3-rest{overflow:hidden}.w3-stretch{margin-left:-16px;margin-right:-16px}
|
||||
.w3-content,.w3-auto{margin-left:auto;margin-right:auto}.w3-content{max-width:980px}.w3-auto{max-width:1140px}
|
||||
.w3-cell-row{display:table;width:100%}.w3-cell{display:table-cell}
|
||||
.w3-cell-top{vertical-align:top}.w3-cell-middle{vertical-align:middle}.w3-cell-bottom{vertical-align:bottom}
|
||||
.w3-hide{display:none!important}.w3-show-block,.w3-show{display:block!important}.w3-show-inline-block{display:inline-block!important}
|
||||
@media (max-width:1205px){.w3-auto{max-width:95%}}
|
||||
@media (max-width:600px){.w3-modal-content{margin:0 10px;width:auto!important}.w3-modal{padding-top:30px}
|
||||
.w3-dropdown-hover.w3-mobile .w3-dropdown-content,.w3-dropdown-click.w3-mobile .w3-dropdown-content{position:relative}
|
||||
.w3-hide-small{display:none!important}.w3-mobile{display:block;width:100%!important}.w3-bar-item.w3-mobile,.w3-dropdown-hover.w3-mobile,.w3-dropdown-click.w3-mobile{text-align:center}
|
||||
.w3-dropdown-hover.w3-mobile,.w3-dropdown-hover.w3-mobile .w3-btn,.w3-dropdown-hover.w3-mobile .w3-button,.w3-dropdown-click.w3-mobile,.w3-dropdown-click.w3-mobile .w3-btn,.w3-dropdown-click.w3-mobile .w3-button{width:100%}}
|
||||
@media (max-width:768px){.w3-modal-content{width:500px}.w3-modal{padding-top:50px}}
|
||||
@media (min-width:993px){.w3-modal-content{width:900px}.w3-hide-large{display:none!important}.w3-sidebar.w3-collapse{display:block!important}}
|
||||
@media (max-width:992px) and (min-width:601px){.w3-hide-medium{display:none!important}}
|
||||
@media (max-width:992px){.w3-sidebar.w3-collapse{display:none}.w3-main{margin-left:0!important;margin-right:0!important}.w3-auto{max-width:100%}}
|
||||
.w3-top,.w3-bottom{position:fixed;width:100%;z-index:1}.w3-top{top:0}.w3-bottom{bottom:0}
|
||||
.w3-overlay{position:fixed;display:none;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.5);z-index:2}
|
||||
.w3-display-topleft{position:absolute;left:0;top:0}.w3-display-topright{position:absolute;right:0;top:0}
|
||||
.w3-display-bottomleft{position:absolute;left:0;bottom:0}.w3-display-bottomright{position:absolute;right:0;bottom:0}
|
||||
.w3-display-middle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%)}
|
||||
.w3-display-left{position:absolute;top:50%;left:0%;transform:translate(0%,-50%);-ms-transform:translate(-0%,-50%)}
|
||||
.w3-display-right{position:absolute;top:50%;right:0%;transform:translate(0%,-50%);-ms-transform:translate(0%,-50%)}
|
||||
.w3-display-topmiddle{position:absolute;left:50%;top:0;transform:translate(-50%,0%);-ms-transform:translate(-50%,0%)}
|
||||
.w3-display-bottommiddle{position:absolute;left:50%;bottom:0;transform:translate(-50%,0%);-ms-transform:translate(-50%,0%)}
|
||||
.w3-display-container:hover .w3-display-hover{display:block}.w3-display-container:hover span.w3-display-hover{display:inline-block}.w3-display-hover{display:none}
|
||||
.w3-display-position{position:absolute}
|
||||
.w3-circle{border-radius:50%}
|
||||
.w3-round-small{border-radius:2px}.w3-round,.w3-round-medium{border-radius:4px}.w3-round-large{border-radius:8px}.w3-round-xlarge{border-radius:16px}.w3-round-xxlarge{border-radius:32px}
|
||||
.w3-row-padding,.w3-row-padding>.w3-half,.w3-row-padding>.w3-third,.w3-row-padding>.w3-twothird,.w3-row-padding>.w3-threequarter,.w3-row-padding>.w3-quarter,.w3-row-padding>.w3-col{padding:0 8px}
|
||||
.w3-container,.w3-panel{padding:0.01em 16px}.w3-panel{margin-top:16px;margin-bottom:16px}
|
||||
.w3-code,.w3-codespan{font-family:Consolas,"courier new";font-size:16px}
|
||||
.w3-code{width:auto;background-color:#fff;padding:8px 12px;border-left:4px solid #4CAF50;word-wrap:break-word}
|
||||
.w3-codespan{color:crimson;background-color:#f1f1f1;padding-left:4px;padding-right:4px;font-size:110%}
|
||||
.w3-card,.w3-card-2{box-shadow:0 2px 5px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12)}
|
||||
.w3-card-4,.w3-hover-shadow:hover{box-shadow:0 4px 10px 0 rgba(0,0,0,0.2),0 4px 20px 0 rgba(0,0,0,0.19)}
|
||||
.w3-spin{animation:w3-spin 2s infinite linear}@keyframes w3-spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}
|
||||
.w3-animate-fading{animation:fading 10s infinite}@keyframes fading{0%{opacity:0}50%{opacity:1}100%{opacity:0}}
|
||||
.w3-animate-opacity{animation:opac 0.8s}@keyframes opac{from{opacity:0} to{opacity:1}}
|
||||
.w3-animate-top{position:relative;animation:animatetop 0.4s}@keyframes animatetop{from{top:-300px;opacity:0} to{top:0;opacity:1}}
|
||||
.w3-animate-left{position:relative;animation:animateleft 0.4s}@keyframes animateleft{from{left:-300px;opacity:0} to{left:0;opacity:1}}
|
||||
.w3-animate-right{position:relative;animation:animateright 0.4s}@keyframes animateright{from{right:-300px;opacity:0} to{right:0;opacity:1}}
|
||||
.w3-animate-bottom{position:relative;animation:animatebottom 0.4s}@keyframes animatebottom{from{bottom:-300px;opacity:0} to{bottom:0;opacity:1}}
|
||||
.w3-animate-zoom {animation:animatezoom 0.6s}@keyframes animatezoom{from{transform:scale(0)} to{transform:scale(1)}}
|
||||
.w3-animate-input{transition:width 0.4s ease-in-out}.w3-animate-input:focus{width:100%!important}
|
||||
.w3-opacity,.w3-hover-opacity:hover{opacity:0.60}.w3-opacity-off,.w3-hover-opacity-off:hover{opacity:1}
|
||||
.w3-opacity-max{opacity:0.25}.w3-opacity-min{opacity:0.75}
|
||||
.w3-greyscale-max,.w3-grayscale-max,.w3-hover-greyscale:hover,.w3-hover-grayscale:hover{filter:grayscale(100%)}
|
||||
.w3-greyscale,.w3-grayscale{filter:grayscale(75%)}.w3-greyscale-min,.w3-grayscale-min{filter:grayscale(50%)}
|
||||
.w3-sepia{filter:sepia(75%)}.w3-sepia-max,.w3-hover-sepia:hover{filter:sepia(100%)}.w3-sepia-min{filter:sepia(50%)}
|
||||
.w3-tiny{font-size:10px!important}.w3-small{font-size:12px!important}.w3-medium{font-size:15px!important}.w3-large{font-size:18px!important}
|
||||
.w3-xlarge{font-size:24px!important}.w3-xxlarge{font-size:36px!important}.w3-xxxlarge{font-size:48px!important}.w3-jumbo{font-size:64px!important}
|
||||
.w3-left-align{text-align:left!important}.w3-right-align{text-align:right!important}.w3-justify{text-align:justify!important}.w3-center{text-align:center!important}
|
||||
.w3-border-0{border:0!important}.w3-border{border:1px solid #ccc!important}
|
||||
.w3-border-top{border-top:1px solid #ccc!important}.w3-border-bottom{border-bottom:1px solid #ccc!important}
|
||||
.w3-border-left{border-left:1px solid #ccc!important}.w3-border-right{border-right:1px solid #ccc!important}
|
||||
.w3-topbar{border-top:6px solid #ccc!important}.w3-bottombar{border-bottom:6px solid #ccc!important}
|
||||
.w3-leftbar{border-left:6px solid #ccc!important}.w3-rightbar{border-right:6px solid #ccc!important}
|
||||
.w3-section,.w3-code{margin-top:16px!important;margin-bottom:16px!important}
|
||||
.w3-margin{margin:16px!important}.w3-margin-top{margin-top:16px!important}.w3-margin-bottom{margin-bottom:16px!important}
|
||||
.w3-margin-left{margin-left:16px!important}.w3-margin-right{margin-right:16px!important}
|
||||
.w3-padding-small{padding:4px 8px!important}.w3-padding{padding:8px 16px!important}.w3-padding-large{padding:12px 24px!important}
|
||||
.w3-padding-16{padding-top:16px!important;padding-bottom:16px!important}.w3-padding-24{padding-top:24px!important;padding-bottom:24px!important}
|
||||
.w3-padding-32{padding-top:32px!important;padding-bottom:32px!important}.w3-padding-48{padding-top:48px!important;padding-bottom:48px!important}
|
||||
.w3-padding-64{padding-top:64px!important;padding-bottom:64px!important}
|
||||
.w3-padding-top-64{padding-top:64px!important}.w3-padding-top-48{padding-top:48px!important}
|
||||
.w3-padding-top-32{padding-top:32px!important}.w3-padding-top-24{padding-top:24px!important}
|
||||
.w3-left{float:left!important}.w3-right{float:right!important}
|
||||
.w3-button:hover{color:#000!important;background-color:#ccc!important}
|
||||
.w3-transparent,.w3-hover-none:hover{background-color:transparent!important}
|
||||
.w3-hover-none:hover{box-shadow:none!important}
|
||||
/* Colors */
|
||||
.w3-amber,.w3-hover-amber:hover{color:#000!important;background-color:#ffc107!important}
|
||||
.w3-aqua,.w3-hover-aqua:hover{color:#000!important;background-color:#00ffff!important}
|
||||
.w3-blue,.w3-hover-blue:hover{color:#fff!important;background-color:#2196F3!important}
|
||||
.w3-light-blue,.w3-hover-light-blue:hover{color:#000!important;background-color:#87CEEB!important}
|
||||
.w3-brown,.w3-hover-brown:hover{color:#fff!important;background-color:#795548!important}
|
||||
.w3-cyan,.w3-hover-cyan:hover{color:#000!important;background-color:#00bcd4!important}
|
||||
.w3-blue-grey,.w3-hover-blue-grey:hover,.w3-blue-gray,.w3-hover-blue-gray:hover{color:#fff!important;background-color:#607d8b!important}
|
||||
.w3-green,.w3-hover-green:hover{color:#fff!important;background-color:#4CAF50!important}
|
||||
.w3-light-green,.w3-hover-light-green:hover{color:#000!important;background-color:#8bc34a!important}
|
||||
.w3-indigo,.w3-hover-indigo:hover{color:#fff!important;background-color:#3f51b5!important}
|
||||
.w3-khaki,.w3-hover-khaki:hover{color:#000!important;background-color:#f0e68c!important}
|
||||
.w3-lime,.w3-hover-lime:hover{color:#000!important;background-color:#cddc39!important}
|
||||
.w3-orange,.w3-hover-orange:hover{color:#000!important;background-color:#ff9800!important}
|
||||
.w3-deep-orange,.w3-hover-deep-orange:hover{color:#fff!important;background-color:#ff5722!important}
|
||||
.w3-pink,.w3-hover-pink:hover{color:#fff!important;background-color:#e91e63!important}
|
||||
.w3-purple,.w3-hover-purple:hover{color:#fff!important;background-color:#9c27b0!important}
|
||||
.w3-deep-purple,.w3-hover-deep-purple:hover{color:#fff!important;background-color:#673ab7!important}
|
||||
.w3-red,.w3-hover-red:hover{color:#fff!important;background-color:#f44336!important}
|
||||
.w3-sand,.w3-hover-sand:hover{color:#000!important;background-color:#fdf5e6!important}
|
||||
.w3-teal,.w3-hover-teal:hover{color:#fff!important;background-color:#009688!important}
|
||||
.w3-yellow,.w3-hover-yellow:hover{color:#000!important;background-color:#ffeb3b!important}
|
||||
.w3-white,.w3-hover-white:hover{color:#000!important;background-color:#fff!important}
|
||||
.w3-black,.w3-hover-black:hover{color:#fff!important;background-color:#000!important}
|
||||
.w3-grey,.w3-hover-grey:hover,.w3-gray,.w3-hover-gray:hover{color:#000!important;background-color:#9e9e9e!important}
|
||||
.w3-light-grey,.w3-hover-light-grey:hover,.w3-light-gray,.w3-hover-light-gray:hover{color:#000!important;background-color:#f1f1f1!important}
|
||||
.w3-dark-grey,.w3-hover-dark-grey:hover,.w3-dark-gray,.w3-hover-dark-gray:hover{color:#fff!important;background-color:#616161!important}
|
||||
.w3-pale-red,.w3-hover-pale-red:hover{color:#000!important;background-color:#ffdddd!important}
|
||||
.w3-pale-green,.w3-hover-pale-green:hover{color:#000!important;background-color:#ddffdd!important}
|
||||
.w3-pale-yellow,.w3-hover-pale-yellow:hover{color:#000!important;background-color:#ffffcc!important}
|
||||
.w3-pale-blue,.w3-hover-pale-blue:hover{color:#000!important;background-color:#ddffff!important}
|
||||
.w3-text-amber,.w3-hover-text-amber:hover{color:#ffc107!important}
|
||||
.w3-text-aqua,.w3-hover-text-aqua:hover{color:#00ffff!important}
|
||||
.w3-text-blue,.w3-hover-text-blue:hover{color:#2196F3!important}
|
||||
.w3-text-light-blue,.w3-hover-text-light-blue:hover{color:#87CEEB!important}
|
||||
.w3-text-brown,.w3-hover-text-brown:hover{color:#795548!important}
|
||||
.w3-text-cyan,.w3-hover-text-cyan:hover{color:#00bcd4!important}
|
||||
.w3-text-blue-grey,.w3-hover-text-blue-grey:hover,.w3-text-blue-gray,.w3-hover-text-blue-gray:hover{color:#607d8b!important}
|
||||
.w3-text-green,.w3-hover-text-green:hover{color:#4CAF50!important}
|
||||
.w3-text-light-green,.w3-hover-text-light-green:hover{color:#8bc34a!important}
|
||||
.w3-text-indigo,.w3-hover-text-indigo:hover{color:#3f51b5!important}
|
||||
.w3-text-khaki,.w3-hover-text-khaki:hover{color:#b4aa50!important}
|
||||
.w3-text-lime,.w3-hover-text-lime:hover{color:#cddc39!important}
|
||||
.w3-text-orange,.w3-hover-text-orange:hover{color:#ff9800!important}
|
||||
.w3-text-deep-orange,.w3-hover-text-deep-orange:hover{color:#ff5722!important}
|
||||
.w3-text-pink,.w3-hover-text-pink:hover{color:#e91e63!important}
|
||||
.w3-text-purple,.w3-hover-text-purple:hover{color:#9c27b0!important}
|
||||
.w3-text-deep-purple,.w3-hover-text-deep-purple:hover{color:#673ab7!important}
|
||||
.w3-text-red,.w3-hover-text-red:hover{color:#f44336!important}
|
||||
.w3-text-sand,.w3-hover-text-sand:hover{color:#fdf5e6!important}
|
||||
.w3-text-teal,.w3-hover-text-teal:hover{color:#009688!important}
|
||||
.w3-text-yellow,.w3-hover-text-yellow:hover{color:#d2be0e!important}
|
||||
.w3-text-white,.w3-hover-text-white:hover{color:#fff!important}
|
||||
.w3-text-black,.w3-hover-text-black:hover{color:#000!important}
|
||||
.w3-text-grey,.w3-hover-text-grey:hover,.w3-text-gray,.w3-hover-text-gray:hover{color:#757575!important}
|
||||
.w3-text-light-grey,.w3-hover-text-light-grey:hover,.w3-text-light-gray,.w3-hover-text-light-gray:hover{color:#f1f1f1!important}
|
||||
.w3-text-dark-grey,.w3-hover-text-dark-grey:hover,.w3-text-dark-gray,.w3-hover-text-dark-gray:hover{color:#3a3a3a!important}
|
||||
.w3-border-amber,.w3-hover-border-amber:hover{border-color:#ffc107!important}
|
||||
.w3-border-aqua,.w3-hover-border-aqua:hover{border-color:#00ffff!important}
|
||||
.w3-border-blue,.w3-hover-border-blue:hover{border-color:#2196F3!important}
|
||||
.w3-border-light-blue,.w3-hover-border-light-blue:hover{border-color:#87CEEB!important}
|
||||
.w3-border-brown,.w3-hover-border-brown:hover{border-color:#795548!important}
|
||||
.w3-border-cyan,.w3-hover-border-cyan:hover{border-color:#00bcd4!important}
|
||||
.w3-border-blue-grey,.w3-hover-border-blue-grey:hover,.w3-border-blue-gray,.w3-hover-border-blue-gray:hover{border-color:#607d8b!important}
|
||||
.w3-border-green,.w3-hover-border-green:hover{border-color:#4CAF50!important}
|
||||
.w3-border-light-green,.w3-hover-border-light-green:hover{border-color:#8bc34a!important}
|
||||
.w3-border-indigo,.w3-hover-border-indigo:hover{border-color:#3f51b5!important}
|
||||
.w3-border-khaki,.w3-hover-border-khaki:hover{border-color:#f0e68c!important}
|
||||
.w3-border-lime,.w3-hover-border-lime:hover{border-color:#cddc39!important}
|
||||
.w3-border-orange,.w3-hover-border-orange:hover{border-color:#ff9800!important}
|
||||
.w3-border-deep-orange,.w3-hover-border-deep-orange:hover{border-color:#ff5722!important}
|
||||
.w3-border-pink,.w3-hover-border-pink:hover{border-color:#e91e63!important}
|
||||
.w3-border-purple,.w3-hover-border-purple:hover{border-color:#9c27b0!important}
|
||||
.w3-border-deep-purple,.w3-hover-border-deep-purple:hover{border-color:#673ab7!important}
|
||||
.w3-border-red,.w3-hover-border-red:hover{border-color:#f44336!important}
|
||||
.w3-border-sand,.w3-hover-border-sand:hover{border-color:#fdf5e6!important}
|
||||
.w3-border-teal,.w3-hover-border-teal:hover{border-color:#009688!important}
|
||||
.w3-border-yellow,.w3-hover-border-yellow:hover{border-color:#ffeb3b!important}
|
||||
.w3-border-white,.w3-hover-border-white:hover{border-color:#fff!important}
|
||||
.w3-border-black,.w3-hover-border-black:hover{border-color:#000!important}
|
||||
.w3-border-grey,.w3-hover-border-grey:hover,.w3-border-gray,.w3-hover-border-gray:hover{border-color:#9e9e9e!important}
|
||||
.w3-border-light-grey,.w3-hover-border-light-grey:hover,.w3-border-light-gray,.w3-hover-border-light-gray:hover{border-color:#f1f1f1!important}
|
||||
.w3-border-dark-grey,.w3-hover-border-dark-grey:hover,.w3-border-dark-gray,.w3-hover-border-dark-gray:hover{border-color:#616161!important}
|
||||
.w3-border-pale-red,.w3-hover-border-pale-red:hover{border-color:#ffe7e7!important}.w3-border-pale-green,.w3-hover-border-pale-green:hover{border-color:#e7ffe7!important}
|
||||
.w3-border-pale-yellow,.w3-hover-border-pale-yellow:hover{border-color:#ffffcc!important}.w3-border-pale-blue,.w3-hover-border-pale-blue:hover{border-color:#e7ffff!important}
|
||||
18
about.markdown
Normal file
18
about.markdown
Normal file
@ -0,0 +1,18 @@
|
||||
---
|
||||
layout: page
|
||||
title: About
|
||||
permalink: /about/
|
||||
---
|
||||
|
||||
This is the base Jekyll theme. You can find out more info about customizing your Jekyll theme, as well as basic Jekyll usage documentation at [jekyllrb.com](https://jekyllrb.com/)
|
||||
|
||||
You can find the source code for Minima at GitHub:
|
||||
[jekyll][jekyll-organization] /
|
||||
[minima](https://github.com/jekyll/minima)
|
||||
|
||||
You can find the source code for Jekyll at GitHub:
|
||||
[jekyll][jekyll-organization] /
|
||||
[jekyll](https://github.com/jekyll/jekyll)
|
||||
|
||||
|
||||
[jekyll-organization]: https://github.com/jekyll
|
||||
45
ajax.php
Normal file
45
ajax.php
Normal file
@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
include "include.php";
|
||||
|
||||
try {
|
||||
// === LOAD SCORE FILE ===
|
||||
$teamQuestionDates = loadScoreFile();
|
||||
|
||||
// === GENERATE GRAPH DATA ===
|
||||
$period = new DatePeriod(new DateTime("2022-11-01"),
|
||||
new DateInterval("P1D"),
|
||||
new DateTime());
|
||||
|
||||
$labels = [];
|
||||
foreach ($period as $date) {
|
||||
$labels[] = $date->format("m-d");
|
||||
}
|
||||
|
||||
$datasets = [];
|
||||
foreach (TEAMS as $team) {
|
||||
$dataset = ['label' => $team, 'data' => [], 'borderColor' => TEAM_COLORS[$team]];
|
||||
|
||||
$questionDates = $teamQuestionDates[$team];
|
||||
$questions = array_keys($questionDates);
|
||||
|
||||
$score = 0;
|
||||
$i = 0;
|
||||
|
||||
foreach ($period as $date) {
|
||||
while ($i < count($questionDates) && $questionDates[$questions[$i]] <= $date->format("Y-m-d")) {
|
||||
$score += QUESTION_POINTS[$questions[$i]];
|
||||
$i++;
|
||||
}
|
||||
$dataset['data'][] = $score;
|
||||
}
|
||||
|
||||
$datasets[] = $dataset;
|
||||
}
|
||||
|
||||
echo json_encode(['labels' => $labels, 'datasets' => $datasets]);
|
||||
} catch (Exception $e) {
|
||||
echo json_encode(['error' => $e->getMessage()]);
|
||||
}
|
||||
|
||||
?>
|
||||
45
history.php
Normal file
45
history.php
Normal file
@ -0,0 +1,45 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="nl">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<link rel='stylesheet' href='https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap'>
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
<link rel="stylesheet" type="text/css" href="w3.css">
|
||||
|
||||
<script src="script.js"></script>
|
||||
<script src='https://kit.fontawesome.com/ac98b28c26.js' crossorigin='anonymous'></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
||||
|
||||
<title>AIVD Kerstpuzzel Scorebord - Scoreverloop</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="w3-card w3-sidebar w3-collapse w3-bar-block w3-blue-gray w3-text-white">
|
||||
<a href="index.php" class="w3-bar-item w3-button">Home</a>
|
||||
<a href="#" class="w3-bar-item w3-button">Scoreverloop</a>
|
||||
<a href="info.php" class="w3-bar-item w3-button">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div id="overlay" class="overlay w3-container w3-bar-block w3-hide w3-hide-large w3-top w3-blue-gray w3-text-white">
|
||||
<header class="w3-container w3-border-bottom w3-border-white">
|
||||
<h1> <i id="overlay-close" class="fas fa-times w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<a href="index.php" class="w3-bar-item w3-button w3-center">Home</a>
|
||||
<a href="#" class="w3-bar-item w3-button w3-center">Scoreverloop</a>
|
||||
<a href="info.php" class="w3-bar-item w3-button w3-center">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div class="main w3-container w3-main">
|
||||
<header class="w3-container w3-border-bottom w3-border-blue-gray">
|
||||
<h1>Scoreverloop<i id="overlay-open" class="fas fa-bars w3-hide-large w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<div class="w3-container">
|
||||
<canvas id="history-graph"></canvas>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
54
include.php
Normal file
54
include.php
Normal file
@ -0,0 +1,54 @@
|
||||
<?php
|
||||
|
||||
define("TEAMS", [
|
||||
"|Math Lads|"
|
||||
]);
|
||||
|
||||
define("TEAM_COLORS", [
|
||||
"|Math Lads|" => "#2ca02c"
|
||||
]);
|
||||
|
||||
define("QUESTION_POINTS", [
|
||||
"1" => 1
|
||||
]);
|
||||
|
||||
define("MEDAL_COLORS", ["amber", "gray", "orange"]);
|
||||
|
||||
function loadScoreFile() {
|
||||
$result = file_get_contents("score.json");
|
||||
if ($result === false) {
|
||||
throw new Exception("Score-bestand kan niet geopend worden.");
|
||||
}
|
||||
|
||||
$teamQuestionDates = array_fill_keys(TEAMS, []);
|
||||
|
||||
$scoreJson = json_decode($result, true);
|
||||
if ($scoreJson === false) {
|
||||
throw new Exception("Er is een fout opgetreden bij het decoderen van het score-bestand.");
|
||||
}
|
||||
|
||||
return array_merge($teamQuestionDates, $scoreJson);
|
||||
}
|
||||
|
||||
function updateScoreFile($teamQuestionDates) {
|
||||
$scoreJson = json_encode($teamQuestionDates, JSON_PRETTY_PRINT);
|
||||
if ($scoreJson === false) {
|
||||
throw new Exception("Er is een fout opgetreden bij het coderen van het score-bestand.");
|
||||
}
|
||||
|
||||
$result = file_put_contents("score.json", $scoreJson."\n");
|
||||
if ($result === false) {
|
||||
throw new Exception("Score-bestand kan niet bijgewerkt worden.");
|
||||
}
|
||||
}
|
||||
|
||||
function showError($error) {
|
||||
exit($error." Stuur een berichtje naar kerstpuzzel@deleidscheflesch.nl, dan wordt het zo voor je gefixt!");
|
||||
}
|
||||
|
||||
function calculatePoints(array $questionDates) {
|
||||
$points = array_intersect_key(QUESTION_POINTS, $questionDates);
|
||||
return array_sum($points);
|
||||
}
|
||||
|
||||
?>
|
||||
6
index.markdown
Normal file
6
index.markdown
Normal file
@ -0,0 +1,6 @@
|
||||
---
|
||||
# Feel free to add content and custom Front Matter to this file.
|
||||
# To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults
|
||||
|
||||
layout: home
|
||||
---
|
||||
139
index.php
Normal file
139
index.php
Normal file
@ -0,0 +1,139 @@
|
||||
<?php
|
||||
|
||||
include "include.php";
|
||||
|
||||
// === LOAD SCORE FILE ===
|
||||
try {
|
||||
$teamQuestionDates = loadScoreFile();
|
||||
} catch (Exception $e) {
|
||||
showError($e->getMessage());
|
||||
}
|
||||
|
||||
// === PROCESS FORM DATA ===
|
||||
if (isset($_POST['team']) && isset(QUESTION_POINTS[$_POST['question']])) {
|
||||
$team = $_POST['team'];
|
||||
$question = $_POST['question'];
|
||||
$date = (new DateTime())->format("Y-m-d");
|
||||
|
||||
if (isset($teamQuestionDates[$team][$question])) {
|
||||
unset($teamQuestionDates[$team][$question]);
|
||||
} else {
|
||||
$teamQuestionDates[$team][$question] = $date;
|
||||
}
|
||||
|
||||
try {
|
||||
updateScoreFile($teamQuestionDates);
|
||||
} catch (Exception $e) {
|
||||
showError($e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
$teamPoints = array_map("calculatePoints", $teamQuestionDates);
|
||||
arsort($teamPoints);
|
||||
|
||||
$allQuestions = array_keys(QUESTION_POINTS);
|
||||
|
||||
?>
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="nl">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<link rel='stylesheet' href='https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap'>
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
<link rel="stylesheet" type="text/css" href="w3.css">
|
||||
|
||||
<script src="script.js"></script>
|
||||
<script src='https://kit.fontawesome.com/ac98b28c26.js' crossorigin='anonymous'></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
||||
|
||||
<title>AIVD Kerstpuzzel Scorebord - Home</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="w3-card w3-sidebar w3-collapse w3-bar-block w3-blue-gray w3-text-white">
|
||||
<a href="#" class="w3-bar-item w3-button">Home</a>
|
||||
<a href="history.php" class="w3-bar-item w3-button">Scoreverloop</a>
|
||||
<a href="info.php" class="w3-bar-item w3-button">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div id="overlay" class="overlay w3-container w3-bar-block w3-hide w3-hide-large w3-top w3-blue-gray w3-text-white">
|
||||
<header class="w3-container w3-border-bottom w3-border-white">
|
||||
<h1> <i id="overlay-close" class="fas fa-times w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<a href="#" class="w3-bar-item w3-button w3-center">Home</a>
|
||||
<a href="history.php" class="w3-bar-item w3-button w3-center">Scoreverloop</a>
|
||||
<a href="info.php" class="w3-bar-item w3-button w3-center">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div class="main w3-container w3-main">
|
||||
<header class="w3-container w3-border-bottom w3-border-blue-gray">
|
||||
<h1>AIVD Kerstpuzzel Scorebord<i id="overlay-open" class="fas fa-bars w3-hide-large w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<div class="w3-container">
|
||||
<h2>Huidige stand</h2>
|
||||
<ul class="w3-ul">
|
||||
<?php
|
||||
|
||||
$i = 0;
|
||||
foreach ($teamPoints as $team => $points) {
|
||||
$class = "w3-badge";
|
||||
if ($i < 3) {
|
||||
$class .= " w3-".MEDAL_COLORS[$i];
|
||||
}
|
||||
echo "<li class='w3-border-blue-gray'><span class='".$class."'>".($i + 1)."</span> ".$team." (".$points.")</li>\n";
|
||||
$i++;
|
||||
}
|
||||
|
||||
?>
|
||||
</ul>
|
||||
|
||||
<h2>Opgeloste vragen</h2>
|
||||
<p>Klik in het kaartje van jouw team op het nummer van een opgave om deze als (on)opgelost te markeren, dan
|
||||
wordt de ranglijst meteen bijgewerkt.</p>
|
||||
|
||||
<div class="w3-row-padding">
|
||||
<?php
|
||||
|
||||
$i = 0;
|
||||
$n = count($teamQuestionDates);
|
||||
foreach ($teamQuestionDates as $team => $questionDates) {
|
||||
echo "<form class='w3-card w3-col m6 l3' action='' method='post'>\n";
|
||||
|
||||
echo "<input type='hidden' name='team' value='".$team."'>\n";
|
||||
|
||||
echo "<header class='w3-container w3-border-bottom w3-border-blue-gray'>\n";
|
||||
echo "<h3>".$team."</h3>\n";
|
||||
echo "</header>\n";
|
||||
|
||||
echo "<div class='w3-container'>\n";
|
||||
echo "<p>\n";
|
||||
|
||||
foreach ($allQuestions as $question) {
|
||||
$color = isset($questionDates[$question]) ? "blue-gray" : "light-gray";
|
||||
echo "<button class='question-tag w3-button w3-".$color." w3-padding-small w3-round-large' name='question' value='".$question."'>".$question."</button>\n";
|
||||
}
|
||||
|
||||
echo "</p>\n";
|
||||
echo "</div>\n";
|
||||
|
||||
echo "</form>\n";
|
||||
|
||||
$i++;
|
||||
if ($i % 4 == 0 && $i < $n) {
|
||||
echo "</div>\n";
|
||||
echo "<div class='w3-row-padding'>\n";
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
<div class="w3-rest"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
74
info.php
Normal file
74
info.php
Normal file
@ -0,0 +1,74 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="nl">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<link rel='stylesheet' href='https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap'>
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
<link rel="stylesheet" type="text/css" href="w3.css">
|
||||
|
||||
<script src="script.js"></script>
|
||||
<script src='https://kit.fontawesome.com/ac98b28c26.js' crossorigin='anonymous'></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
||||
|
||||
<title>AIVD Kerstpuzzel Scorebord - Informatie</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="w3-card w3-sidebar w3-collapse w3-bar-block w3-blue-gray w3-text-white">
|
||||
<a href="index.php" class="w3-bar-item w3-button">Home</a>
|
||||
<a href="history.php" class="w3-bar-item w3-button">Scoreverloop</a>
|
||||
<a href="#" class="w3-bar-item w3-button">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div id="overlay" class="overlay w3-container w3-bar-block w3-hide w3-hide-large w3-top w3-blue-gray w3-text-white">
|
||||
<header class="w3-container w3-border-bottom w3-border-white">
|
||||
<h1> <i id="overlay-close" class="fas fa-times w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<a href="index.php" class="w3-bar-item w3-button w3-center">Home</a>
|
||||
<a href="history.php" class="w3-bar-item w3-button w3-center">Scoreverloop</a>
|
||||
<a href="#" class="w3-bar-item w3-button w3-center">Informatie</a>
|
||||
</div>
|
||||
|
||||
<div class="main w3-container w3-main">
|
||||
<header class="w3-container w3-border-bottom w3-border-blue-gray">
|
||||
<h1>Informatie<i id="overlay-open" class="fas fa-bars w3-hide-large w3-button w3-right"></i></h1>
|
||||
</header>
|
||||
|
||||
<div class="w3-container">
|
||||
<p>Hou jij ook van puzzelen, maar heb je geen zin in de zoveelste woordzoeker of sudoku? Dan is de AIVD
|
||||
kerstpuzzel iets voor jou! Of je nu je hersenen wilt laten kraken (door de opgaven), of gewoon gezellig met
|
||||
anderen wilt puzzelen, zoek een team van maximaal vier personen bij elkaar en ga aan de slag! De opgaven
|
||||
kun je <a href="https://www.aivd.nl/onderwerpen/aivd-kerstpuzzel/documenten/publicaties/2021/12/14/aivd-kerstpuzzel-2021-opgaven-en-antwoordformulier">
|
||||
hier</a> downloaden.</p>
|
||||
|
||||
<h2>Puzzelmiddag</h2>
|
||||
<p>Als de coronamaatregelen het toelaten, wordt er halverwege januari een fysiek puzzelmiddagje
|
||||
georganiseerd. Je kunt dan als team bij elkaar komen om onder het genot van koekjes, chips en andere gezonde
|
||||
snacks de puntjes op de i te zetten voordat de puzzel ingeleverd moet worden. Als een fysieke bijeenkomst
|
||||
niet mogelijk is, organiseer dan vooral je eigen puzzelmiddag! We houden jullie per mail op de hoogte van de
|
||||
actuele stand van zaken.</p>
|
||||
|
||||
<h2>Inleveren</h2>
|
||||
<p>Stuur uiterlijk 17 januari 23:59 je <strong>ingevulde</strong> puzzeldocument op naar
|
||||
<a href="mailto:kerstpuzzel@deleidscheflesch.nl">kerstpuzzel@deleidscheflesch.nl</a>, zodat wij alles voor
|
||||
de deadline bij de AIVD in kunnen leveren. De persoonlijke gegevens in het puzzeldocument delen wij
|
||||
uitsluitend met de AIVD. Wanneer de antwoorden op de opgaven gepubliceerd zijn, kijken wij jullie puzzels
|
||||
na, en krijgt het team met de meeste punten een mooie prijs. Je kunt je puzzel ook zelf bij de AIVD
|
||||
inleveren, maar dan maak je geen kans meer op de prijs.</p>
|
||||
|
||||
<h2>Deze website</h2>
|
||||
<p>Op de pagina "Home" vind je de (vermeende) scores van alle deelnemende teams. Klik in het kaartje van jouw eigen team
|
||||
op het nummer van een opgave om deze als (on)opgelost te markeren, dan wordt de ranglijst meteen bijgewerkt.
|
||||
Op de pagina "Scoreverloop" zie je hoe het (vermeende) aantal punten van ieder deelnemend team zich door
|
||||
de tijd heeft ontwikkeld.</p>
|
||||
|
||||
<p>Heb je vragen, opmerkingen of klachten, schroom dan niet om een mailtje te sturen naar
|
||||
<a href="mailto:kerstpuzzel@deleidscheflesch.nl">kerstpuzzel@deleidscheflesch.nl</a>. Veel plezier en succes
|
||||
met puzzelen, en moge de beste winnen!</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
3
score.json
Normal file
3
score.json
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"|Math Lads|": []
|
||||
}
|
||||
51
script.js
Normal file
51
script.js
Normal file
@ -0,0 +1,51 @@
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
setupOverlayButtons();
|
||||
setupHistoryGraph();
|
||||
});
|
||||
|
||||
function setupOverlayButtons() {
|
||||
const openButton = document.getElementById("overlay-open");
|
||||
const closeButton = document.getElementById("overlay-close");
|
||||
|
||||
openButton.addEventListener("click", function() {
|
||||
document.getElementById("overlay").classList.remove("w3-hide")
|
||||
});
|
||||
closeButton.addEventListener("click", function() {
|
||||
document.getElementById("overlay").classList.add("w3-hide");
|
||||
});
|
||||
}
|
||||
|
||||
function setupHistoryGraph() {
|
||||
const request = new XMLHttpRequest();
|
||||
|
||||
if (!request || document.getElementById("history-graph") === null) {
|
||||
return;
|
||||
}
|
||||
|
||||
request.open("GET", "ajax.php");
|
||||
request.onload = function() {
|
||||
const data = JSON.parse(this.response);
|
||||
const canvas = document.getElementById("history-graph");
|
||||
const chart = new Chart(canvas, {
|
||||
type: 'line',
|
||||
data: data,
|
||||
options: {
|
||||
scales: {
|
||||
y: {
|
||||
title: {
|
||||
display: true,
|
||||
text: "Aantal punten"
|
||||
}
|
||||
},
|
||||
x: {
|
||||
title: {
|
||||
display: true,
|
||||
text: "Datum"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
request.send();
|
||||
}
|
||||
16
style.css
Normal file
16
style.css
Normal file
@ -0,0 +1,16 @@
|
||||
:root {
|
||||
--sidebar-width: 200px;
|
||||
}
|
||||
|
||||
.overlay {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.main {
|
||||
margin-left: var(--sidebar-width);
|
||||
}
|
||||
|
||||
.question-tag {
|
||||
margin-right: 8px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
239
w3.css
Normal file
239
w3.css
Normal file
@ -0,0 +1,239 @@
|
||||
:root {
|
||||
--sidebar-width: 200px;
|
||||
}
|
||||
|
||||
/* W3.CSS 4.15 December 2020 by Jan Egil and Borge Refsnes */
|
||||
html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}
|
||||
/* Extract from normalize.css by Nicolas Gallagher and Jonathan Neal git.io/normalize */
|
||||
html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}
|
||||
article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block}summary{display:list-item}
|
||||
audio,canvas,progress,video{display:inline-block}progress{vertical-align:baseline}
|
||||
audio:not([controls]){display:none;height:0}[hidden],template{display:none}
|
||||
a{background-color:transparent}a:active,a:hover{outline-width:0}
|
||||
abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}
|
||||
b,strong{font-weight:bolder}dfn{font-style:italic}mark{background:#ff0;color:#000}
|
||||
small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
|
||||
sub{bottom:-0.25em}sup{top:-0.5em}figure{margin:1em 40px}img{border-style:none}
|
||||
code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}hr{box-sizing:content-box;height:0;overflow:visible}
|
||||
button,input,select,textarea,optgroup{font:inherit;margin:0}optgroup{font-weight:bold}
|
||||
button,input{overflow:visible}button,select{text-transform:none}
|
||||
button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}
|
||||
button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}
|
||||
button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}
|
||||
fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:.35em .625em .75em}
|
||||
legend{color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}
|
||||
[type=checkbox],[type=radio]{padding:0}
|
||||
[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}
|
||||
[type=search]{-webkit-appearance:textfield;outline-offset:-2px}
|
||||
[type=search]::-webkit-search-decoration{-webkit-appearance:none}
|
||||
::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
|
||||
/* End extract */
|
||||
html,body{font-family:"Open Sans",Verdana,sans-serif;font-size:15px;line-height:1.5}html{overflow-x:hidden}
|
||||
h1{font-size:36px}h2{font-size:30px}h3{font-size:24px}h4{font-size:20px}h5{font-size:18px}h6{font-size:16px}
|
||||
.w3-serif{font-family:serif}.w3-sans-serif{font-family:sans-serif}.w3-cursive{font-family:cursive}.w3-monospace{font-family:monospace}
|
||||
h1,h2,h3,h4,h5,h6{font-family:"Segoe UI",Arial,sans-serif;font-weight:400;margin:10px 0}.w3-wide{letter-spacing:4px}
|
||||
hr{border:0;border-top:1px solid #eee;margin:20px 0}
|
||||
.w3-image{max-width:100%;height:auto}img{vertical-align:middle}a{color:inherit}
|
||||
.w3-table,.w3-table-all{border-collapse:collapse;border-spacing:0;width:100%;display:table}.w3-table-all{border:1px solid #ccc}
|
||||
.w3-bordered tr,.w3-table-all tr{border-bottom:1px solid #ddd}.w3-striped tbody tr:nth-child(even){background-color:#f1f1f1}
|
||||
.w3-table-all tr:nth-child(odd){background-color:#fff}.w3-table-all tr:nth-child(even){background-color:#f1f1f1}
|
||||
.w3-hoverable tbody tr:hover,.w3-ul.w3-hoverable li:hover{background-color:#ccc}.w3-centered tr th,.w3-centered tr td{text-align:center}
|
||||
.w3-table td,.w3-table th,.w3-table-all td,.w3-table-all th{padding:8px 8px;display:table-cell;text-align:left;vertical-align:top}
|
||||
.w3-table th:first-child,.w3-table td:first-child,.w3-table-all th:first-child,.w3-table-all td:first-child{padding-left:16px}
|
||||
.w3-btn,.w3-button{border:none;display:inline-block;padding:8px 16px;vertical-align:middle;overflow:hidden;text-decoration:none;color:inherit;background-color:inherit;text-align:center;cursor:pointer;white-space:nowrap}
|
||||
.w3-btn:hover{box-shadow:0 8px 16px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19)}
|
||||
.w3-btn,.w3-button{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
|
||||
.w3-disabled,.w3-btn:disabled,.w3-button:disabled{cursor:not-allowed;opacity:0.3}.w3-disabled *,:disabled *{pointer-events:none}
|
||||
.w3-btn.w3-disabled:hover,.w3-btn:disabled:hover{box-shadow:none}
|
||||
.w3-badge,.w3-tag{background-color:#000;color:#fff;display:inline-block;padding-left:8px;padding-right:8px;text-align:center}.w3-badge{border-radius:50%}
|
||||
.w3-ul{list-style-type:none;padding:0;margin:0}.w3-ul li{padding:8px 16px;border-bottom:1px solid #ddd}.w3-ul li:last-child{border-bottom:none}
|
||||
.w3-tooltip,.w3-display-container{position:relative}.w3-tooltip .w3-text{display:none}.w3-tooltip:hover .w3-text{display:inline-block}
|
||||
.w3-ripple:active{opacity:0.5}.w3-ripple{transition:opacity 0s}
|
||||
.w3-input{padding:8px;display:block;border:none;border-bottom:1px solid #ccc;width:100%}
|
||||
.w3-select{padding:9px 0;width:100%;border:none;border-bottom:1px solid #ccc}
|
||||
.w3-dropdown-click,.w3-dropdown-hover{position:relative;display:inline-block;cursor:pointer}
|
||||
.w3-dropdown-hover:hover .w3-dropdown-content{display:block}
|
||||
.w3-dropdown-hover:first-child,.w3-dropdown-click:hover{background-color:#ccc;color:#000}
|
||||
.w3-dropdown-hover:hover > .w3-button:first-child,.w3-dropdown-click:hover > .w3-button:first-child{background-color:#ccc;color:#000}
|
||||
.w3-dropdown-content{cursor:auto;color:#000;background-color:#fff;display:none;position:absolute;min-width:160px;margin:0;padding:0;z-index:1}
|
||||
.w3-check,.w3-radio{width:24px;height:24px;position:relative;top:6px}
|
||||
.w3-sidebar{height:100%;width:var(--sidebar-width);background-color:#fff;position:fixed!important;z-index:1;overflow:auto}
|
||||
.w3-bar-block .w3-dropdown-hover,.w3-bar-block .w3-dropdown-click{width:100%}
|
||||
.w3-bar-block .w3-dropdown-hover .w3-dropdown-content,.w3-bar-block .w3-dropdown-click .w3-dropdown-content{min-width:100%}
|
||||
.w3-bar-block .w3-dropdown-hover .w3-button,.w3-bar-block .w3-dropdown-click .w3-button{width:100%;text-align:left;padding:8px 16px}
|
||||
.w3-main,#main{transition:margin-left .4s}
|
||||
.w3-modal{z-index:3;display:none;padding-top:100px;position:fixed;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgb(0,0,0);background-color:rgba(0,0,0,0.4)}
|
||||
.w3-modal-content{margin:auto;background-color:#fff;position:relative;padding:0;outline:0;width:600px}
|
||||
.w3-bar{width:100%;overflow:hidden}.w3-center .w3-bar{display:inline-block;width:auto}
|
||||
.w3-bar .w3-bar-item{padding:8px 16px;float:left;width:auto;border:none;display:block;outline:0}
|
||||
.w3-bar .w3-dropdown-hover,.w3-bar .w3-dropdown-click{position:static;float:left}
|
||||
.w3-bar .w3-button{white-space:normal}
|
||||
.w3-bar-block .w3-bar-item{width:100%;display:block;padding:8px 16px;text-align:left;border:none;white-space:normal;float:none;outline:0}
|
||||
.w3-bar-block.w3-center .w3-bar-item{text-align:center}.w3-block{display:block;width:100%}
|
||||
.w3-responsive{display:block;overflow-x:auto}
|
||||
.w3-container:after,.w3-container:before,.w3-panel:after,.w3-panel:before,.w3-row:after,.w3-row:before,.w3-row-padding:after,.w3-row-padding:before,
|
||||
.w3-cell-row:before,.w3-cell-row:after,.w3-clear:after,.w3-clear:before,.w3-bar:before,.w3-bar:after{content:"";display:table;clear:both}
|
||||
.w3-col,.w3-half,.w3-third,.w3-twothird,.w3-threequarter,.w3-quarter{float:left;width:100%}
|
||||
.w3-col.s1{width:8.33333%}.w3-col.s2{width:16.66666%}.w3-col.s3{width:24.99999%}.w3-col.s4{width:33.33333%}
|
||||
.w3-col.s5{width:41.66666%}.w3-col.s6{width:49.99999%}.w3-col.s7{width:58.33333%}.w3-col.s8{width:66.66666%}
|
||||
.w3-col.s9{width:74.99999%}.w3-col.s10{width:83.33333%}.w3-col.s11{width:91.66666%}.w3-col.s12{width:99.99999%}
|
||||
@media (min-width:601px){.w3-col.m1{width:8.33333%}.w3-col.m2{width:16.66666%}.w3-col.m3,.w3-quarter{width:24.99999%}.w3-col.m4,.w3-third{width:33.33333%}
|
||||
.w3-col.m5{width:41.66666%}.w3-col.m6,.w3-half{width:49.99999%}.w3-col.m7{width:58.33333%}.w3-col.m8,.w3-twothird{width:66.66666%}
|
||||
.w3-col.m9,.w3-threequarter{width:74.99999%}.w3-col.m10{width:83.33333%}.w3-col.m11{width:91.66666%}.w3-col.m12{width:99.99999%}}
|
||||
@media (min-width:993px){.w3-col.l1{width:8.33333%}.w3-col.l2{width:16.66666%}.w3-col.l3{width:24.99999%}.w3-col.l4{width:33.33333%}
|
||||
.w3-col.l5{width:41.66666%}.w3-col.l6{width:49.99999%}.w3-col.l7{width:58.33333%}.w3-col.l8{width:66.66666%}
|
||||
.w3-col.l9{width:74.99999%}.w3-col.l10{width:83.33333%}.w3-col.l11{width:91.66666%}.w3-col.l12{width:99.99999%}}
|
||||
.w3-rest{overflow:hidden}.w3-stretch{margin-left:-16px;margin-right:-16px}
|
||||
.w3-content,.w3-auto{margin-left:auto;margin-right:auto}.w3-content{max-width:980px}.w3-auto{max-width:1140px}
|
||||
.w3-cell-row{display:table;width:100%}.w3-cell{display:table-cell}
|
||||
.w3-cell-top{vertical-align:top}.w3-cell-middle{vertical-align:middle}.w3-cell-bottom{vertical-align:bottom}
|
||||
.w3-hide{display:none!important}.w3-show-block,.w3-show{display:block!important}.w3-show-inline-block{display:inline-block!important}
|
||||
@media (max-width:1205px){.w3-auto{max-width:95%}}
|
||||
@media (max-width:600px){.w3-modal-content{margin:0 10px;width:auto!important}.w3-modal{padding-top:30px}
|
||||
.w3-dropdown-hover.w3-mobile .w3-dropdown-content,.w3-dropdown-click.w3-mobile .w3-dropdown-content{position:relative}
|
||||
.w3-hide-small{display:none!important}.w3-mobile{display:block;width:100%!important}.w3-bar-item.w3-mobile,.w3-dropdown-hover.w3-mobile,.w3-dropdown-click.w3-mobile{text-align:center}
|
||||
.w3-dropdown-hover.w3-mobile,.w3-dropdown-hover.w3-mobile .w3-btn,.w3-dropdown-hover.w3-mobile .w3-button,.w3-dropdown-click.w3-mobile,.w3-dropdown-click.w3-mobile .w3-btn,.w3-dropdown-click.w3-mobile .w3-button{width:100%}}
|
||||
@media (max-width:768px){.w3-modal-content{width:500px}.w3-modal{padding-top:50px}}
|
||||
@media (min-width:993px){.w3-modal-content{width:900px}.w3-hide-large{display:none!important}.w3-sidebar.w3-collapse{display:block!important}}
|
||||
@media (max-width:992px) and (min-width:601px){.w3-hide-medium{display:none!important}}
|
||||
@media (max-width:992px){.w3-sidebar.w3-collapse{display:none}.w3-main{margin-left:0!important;margin-right:0!important}.w3-auto{max-width:100%}}
|
||||
.w3-top,.w3-bottom{position:fixed;width:100%;z-index:1}.w3-top{top:0}.w3-bottom{bottom:0}
|
||||
.w3-overlay{position:fixed;display:none;width:100%;height:100%;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.5);z-index:2}
|
||||
.w3-display-topleft{position:absolute;left:0;top:0}.w3-display-topright{position:absolute;right:0;top:0}
|
||||
.w3-display-bottomleft{position:absolute;left:0;bottom:0}.w3-display-bottomright{position:absolute;right:0;bottom:0}
|
||||
.w3-display-middle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%)}
|
||||
.w3-display-left{position:absolute;top:50%;left:0%;transform:translate(0%,-50%);-ms-transform:translate(-0%,-50%)}
|
||||
.w3-display-right{position:absolute;top:50%;right:0%;transform:translate(0%,-50%);-ms-transform:translate(0%,-50%)}
|
||||
.w3-display-topmiddle{position:absolute;left:50%;top:0;transform:translate(-50%,0%);-ms-transform:translate(-50%,0%)}
|
||||
.w3-display-bottommiddle{position:absolute;left:50%;bottom:0;transform:translate(-50%,0%);-ms-transform:translate(-50%,0%)}
|
||||
.w3-display-container:hover .w3-display-hover{display:block}.w3-display-container:hover span.w3-display-hover{display:inline-block}.w3-display-hover{display:none}
|
||||
.w3-display-position{position:absolute}
|
||||
.w3-circle{border-radius:50%}
|
||||
.w3-round-small{border-radius:2px}.w3-round,.w3-round-medium{border-radius:4px}.w3-round-large{border-radius:8px}.w3-round-xlarge{border-radius:16px}.w3-round-xxlarge{border-radius:32px}
|
||||
.w3-row-padding,.w3-row-padding>.w3-half,.w3-row-padding>.w3-third,.w3-row-padding>.w3-twothird,.w3-row-padding>.w3-threequarter,.w3-row-padding>.w3-quarter,.w3-row-padding>.w3-col{padding:0 8px}
|
||||
.w3-container,.w3-panel{padding:0.01em 16px}.w3-panel{margin-top:16px;margin-bottom:16px}
|
||||
.w3-code,.w3-codespan{font-family:Consolas,"courier new";font-size:16px}
|
||||
.w3-code{width:auto;background-color:#fff;padding:8px 12px;border-left:4px solid #4CAF50;word-wrap:break-word}
|
||||
.w3-codespan{color:crimson;background-color:#f1f1f1;padding-left:4px;padding-right:4px;font-size:110%}
|
||||
.w3-card,.w3-card-2{box-shadow:0 2px 5px 0 rgba(0,0,0,0.16),0 2px 10px 0 rgba(0,0,0,0.12)}
|
||||
.w3-card-4,.w3-hover-shadow:hover{box-shadow:0 4px 10px 0 rgba(0,0,0,0.2),0 4px 20px 0 rgba(0,0,0,0.19)}
|
||||
.w3-spin{animation:w3-spin 2s infinite linear}@keyframes w3-spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}
|
||||
.w3-animate-fading{animation:fading 10s infinite}@keyframes fading{0%{opacity:0}50%{opacity:1}100%{opacity:0}}
|
||||
.w3-animate-opacity{animation:opac 0.8s}@keyframes opac{from{opacity:0} to{opacity:1}}
|
||||
.w3-animate-top{position:relative;animation:animatetop 0.4s}@keyframes animatetop{from{top:-300px;opacity:0} to{top:0;opacity:1}}
|
||||
.w3-animate-left{position:relative;animation:animateleft 0.4s}@keyframes animateleft{from{left:-300px;opacity:0} to{left:0;opacity:1}}
|
||||
.w3-animate-right{position:relative;animation:animateright 0.4s}@keyframes animateright{from{right:-300px;opacity:0} to{right:0;opacity:1}}
|
||||
.w3-animate-bottom{position:relative;animation:animatebottom 0.4s}@keyframes animatebottom{from{bottom:-300px;opacity:0} to{bottom:0;opacity:1}}
|
||||
.w3-animate-zoom {animation:animatezoom 0.6s}@keyframes animatezoom{from{transform:scale(0)} to{transform:scale(1)}}
|
||||
.w3-animate-input{transition:width 0.4s ease-in-out}.w3-animate-input:focus{width:100%!important}
|
||||
.w3-opacity,.w3-hover-opacity:hover{opacity:0.60}.w3-opacity-off,.w3-hover-opacity-off:hover{opacity:1}
|
||||
.w3-opacity-max{opacity:0.25}.w3-opacity-min{opacity:0.75}
|
||||
.w3-greyscale-max,.w3-grayscale-max,.w3-hover-greyscale:hover,.w3-hover-grayscale:hover{filter:grayscale(100%)}
|
||||
.w3-greyscale,.w3-grayscale{filter:grayscale(75%)}.w3-greyscale-min,.w3-grayscale-min{filter:grayscale(50%)}
|
||||
.w3-sepia{filter:sepia(75%)}.w3-sepia-max,.w3-hover-sepia:hover{filter:sepia(100%)}.w3-sepia-min{filter:sepia(50%)}
|
||||
.w3-tiny{font-size:10px!important}.w3-small{font-size:12px!important}.w3-medium{font-size:15px!important}.w3-large{font-size:18px!important}
|
||||
.w3-xlarge{font-size:24px!important}.w3-xxlarge{font-size:36px!important}.w3-xxxlarge{font-size:48px!important}.w3-jumbo{font-size:64px!important}
|
||||
.w3-left-align{text-align:left!important}.w3-right-align{text-align:right!important}.w3-justify{text-align:justify!important}.w3-center{text-align:center!important}
|
||||
.w3-border-0{border:0!important}.w3-border{border:1px solid #ccc!important}
|
||||
.w3-border-top{border-top:1px solid #ccc!important}.w3-border-bottom{border-bottom:1px solid #ccc!important}
|
||||
.w3-border-left{border-left:1px solid #ccc!important}.w3-border-right{border-right:1px solid #ccc!important}
|
||||
.w3-topbar{border-top:6px solid #ccc!important}.w3-bottombar{border-bottom:6px solid #ccc!important}
|
||||
.w3-leftbar{border-left:6px solid #ccc!important}.w3-rightbar{border-right:6px solid #ccc!important}
|
||||
.w3-section,.w3-code{margin-top:16px!important;margin-bottom:16px!important}
|
||||
.w3-margin{margin:16px!important}.w3-margin-top{margin-top:16px!important}.w3-margin-bottom{margin-bottom:16px!important}
|
||||
.w3-margin-left{margin-left:16px!important}.w3-margin-right{margin-right:16px!important}
|
||||
.w3-padding-small{padding:4px 8px!important}.w3-padding{padding:8px 16px!important}.w3-padding-large{padding:12px 24px!important}
|
||||
.w3-padding-16{padding-top:16px!important;padding-bottom:16px!important}.w3-padding-24{padding-top:24px!important;padding-bottom:24px!important}
|
||||
.w3-padding-32{padding-top:32px!important;padding-bottom:32px!important}.w3-padding-48{padding-top:48px!important;padding-bottom:48px!important}
|
||||
.w3-padding-64{padding-top:64px!important;padding-bottom:64px!important}
|
||||
.w3-padding-top-64{padding-top:64px!important}.w3-padding-top-48{padding-top:48px!important}
|
||||
.w3-padding-top-32{padding-top:32px!important}.w3-padding-top-24{padding-top:24px!important}
|
||||
.w3-left{float:left!important}.w3-right{float:right!important}
|
||||
.w3-button:hover{color:#000!important;background-color:#ccc!important}
|
||||
.w3-transparent,.w3-hover-none:hover{background-color:transparent!important}
|
||||
.w3-hover-none:hover{box-shadow:none!important}
|
||||
/* Colors */
|
||||
.w3-amber,.w3-hover-amber:hover{color:#000!important;background-color:#ffc107!important}
|
||||
.w3-aqua,.w3-hover-aqua:hover{color:#000!important;background-color:#00ffff!important}
|
||||
.w3-blue,.w3-hover-blue:hover{color:#fff!important;background-color:#2196F3!important}
|
||||
.w3-light-blue,.w3-hover-light-blue:hover{color:#000!important;background-color:#87CEEB!important}
|
||||
.w3-brown,.w3-hover-brown:hover{color:#fff!important;background-color:#795548!important}
|
||||
.w3-cyan,.w3-hover-cyan:hover{color:#000!important;background-color:#00bcd4!important}
|
||||
.w3-blue-grey,.w3-hover-blue-grey:hover,.w3-blue-gray,.w3-hover-blue-gray:hover{color:#fff!important;background-color:#607d8b!important}
|
||||
.w3-green,.w3-hover-green:hover{color:#fff!important;background-color:#4CAF50!important}
|
||||
.w3-light-green,.w3-hover-light-green:hover{color:#000!important;background-color:#8bc34a!important}
|
||||
.w3-indigo,.w3-hover-indigo:hover{color:#fff!important;background-color:#3f51b5!important}
|
||||
.w3-khaki,.w3-hover-khaki:hover{color:#000!important;background-color:#f0e68c!important}
|
||||
.w3-lime,.w3-hover-lime:hover{color:#000!important;background-color:#cddc39!important}
|
||||
.w3-orange,.w3-hover-orange:hover{color:#000!important;background-color:#ff9800!important}
|
||||
.w3-deep-orange,.w3-hover-deep-orange:hover{color:#fff!important;background-color:#ff5722!important}
|
||||
.w3-pink,.w3-hover-pink:hover{color:#fff!important;background-color:#e91e63!important}
|
||||
.w3-purple,.w3-hover-purple:hover{color:#fff!important;background-color:#9c27b0!important}
|
||||
.w3-deep-purple,.w3-hover-deep-purple:hover{color:#fff!important;background-color:#673ab7!important}
|
||||
.w3-red,.w3-hover-red:hover{color:#fff!important;background-color:#f44336!important}
|
||||
.w3-sand,.w3-hover-sand:hover{color:#000!important;background-color:#fdf5e6!important}
|
||||
.w3-teal,.w3-hover-teal:hover{color:#fff!important;background-color:#009688!important}
|
||||
.w3-yellow,.w3-hover-yellow:hover{color:#000!important;background-color:#ffeb3b!important}
|
||||
.w3-white,.w3-hover-white:hover{color:#000!important;background-color:#fff!important}
|
||||
.w3-black,.w3-hover-black:hover{color:#fff!important;background-color:#000!important}
|
||||
.w3-grey,.w3-hover-grey:hover,.w3-gray,.w3-hover-gray:hover{color:#000!important;background-color:#9e9e9e!important}
|
||||
.w3-light-grey,.w3-hover-light-grey:hover,.w3-light-gray,.w3-hover-light-gray:hover{color:#000!important;background-color:#f1f1f1!important}
|
||||
.w3-dark-grey,.w3-hover-dark-grey:hover,.w3-dark-gray,.w3-hover-dark-gray:hover{color:#fff!important;background-color:#616161!important}
|
||||
.w3-pale-red,.w3-hover-pale-red:hover{color:#000!important;background-color:#ffdddd!important}
|
||||
.w3-pale-green,.w3-hover-pale-green:hover{color:#000!important;background-color:#ddffdd!important}
|
||||
.w3-pale-yellow,.w3-hover-pale-yellow:hover{color:#000!important;background-color:#ffffcc!important}
|
||||
.w3-pale-blue,.w3-hover-pale-blue:hover{color:#000!important;background-color:#ddffff!important}
|
||||
.w3-text-amber,.w3-hover-text-amber:hover{color:#ffc107!important}
|
||||
.w3-text-aqua,.w3-hover-text-aqua:hover{color:#00ffff!important}
|
||||
.w3-text-blue,.w3-hover-text-blue:hover{color:#2196F3!important}
|
||||
.w3-text-light-blue,.w3-hover-text-light-blue:hover{color:#87CEEB!important}
|
||||
.w3-text-brown,.w3-hover-text-brown:hover{color:#795548!important}
|
||||
.w3-text-cyan,.w3-hover-text-cyan:hover{color:#00bcd4!important}
|
||||
.w3-text-blue-grey,.w3-hover-text-blue-grey:hover,.w3-text-blue-gray,.w3-hover-text-blue-gray:hover{color:#607d8b!important}
|
||||
.w3-text-green,.w3-hover-text-green:hover{color:#4CAF50!important}
|
||||
.w3-text-light-green,.w3-hover-text-light-green:hover{color:#8bc34a!important}
|
||||
.w3-text-indigo,.w3-hover-text-indigo:hover{color:#3f51b5!important}
|
||||
.w3-text-khaki,.w3-hover-text-khaki:hover{color:#b4aa50!important}
|
||||
.w3-text-lime,.w3-hover-text-lime:hover{color:#cddc39!important}
|
||||
.w3-text-orange,.w3-hover-text-orange:hover{color:#ff9800!important}
|
||||
.w3-text-deep-orange,.w3-hover-text-deep-orange:hover{color:#ff5722!important}
|
||||
.w3-text-pink,.w3-hover-text-pink:hover{color:#e91e63!important}
|
||||
.w3-text-purple,.w3-hover-text-purple:hover{color:#9c27b0!important}
|
||||
.w3-text-deep-purple,.w3-hover-text-deep-purple:hover{color:#673ab7!important}
|
||||
.w3-text-red,.w3-hover-text-red:hover{color:#f44336!important}
|
||||
.w3-text-sand,.w3-hover-text-sand:hover{color:#fdf5e6!important}
|
||||
.w3-text-teal,.w3-hover-text-teal:hover{color:#009688!important}
|
||||
.w3-text-yellow,.w3-hover-text-yellow:hover{color:#d2be0e!important}
|
||||
.w3-text-white,.w3-hover-text-white:hover{color:#fff!important}
|
||||
.w3-text-black,.w3-hover-text-black:hover{color:#000!important}
|
||||
.w3-text-grey,.w3-hover-text-grey:hover,.w3-text-gray,.w3-hover-text-gray:hover{color:#757575!important}
|
||||
.w3-text-light-grey,.w3-hover-text-light-grey:hover,.w3-text-light-gray,.w3-hover-text-light-gray:hover{color:#f1f1f1!important}
|
||||
.w3-text-dark-grey,.w3-hover-text-dark-grey:hover,.w3-text-dark-gray,.w3-hover-text-dark-gray:hover{color:#3a3a3a!important}
|
||||
.w3-border-amber,.w3-hover-border-amber:hover{border-color:#ffc107!important}
|
||||
.w3-border-aqua,.w3-hover-border-aqua:hover{border-color:#00ffff!important}
|
||||
.w3-border-blue,.w3-hover-border-blue:hover{border-color:#2196F3!important}
|
||||
.w3-border-light-blue,.w3-hover-border-light-blue:hover{border-color:#87CEEB!important}
|
||||
.w3-border-brown,.w3-hover-border-brown:hover{border-color:#795548!important}
|
||||
.w3-border-cyan,.w3-hover-border-cyan:hover{border-color:#00bcd4!important}
|
||||
.w3-border-blue-grey,.w3-hover-border-blue-grey:hover,.w3-border-blue-gray,.w3-hover-border-blue-gray:hover{border-color:#607d8b!important}
|
||||
.w3-border-green,.w3-hover-border-green:hover{border-color:#4CAF50!important}
|
||||
.w3-border-light-green,.w3-hover-border-light-green:hover{border-color:#8bc34a!important}
|
||||
.w3-border-indigo,.w3-hover-border-indigo:hover{border-color:#3f51b5!important}
|
||||
.w3-border-khaki,.w3-hover-border-khaki:hover{border-color:#f0e68c!important}
|
||||
.w3-border-lime,.w3-hover-border-lime:hover{border-color:#cddc39!important}
|
||||
.w3-border-orange,.w3-hover-border-orange:hover{border-color:#ff9800!important}
|
||||
.w3-border-deep-orange,.w3-hover-border-deep-orange:hover{border-color:#ff5722!important}
|
||||
.w3-border-pink,.w3-hover-border-pink:hover{border-color:#e91e63!important}
|
||||
.w3-border-purple,.w3-hover-border-purple:hover{border-color:#9c27b0!important}
|
||||
.w3-border-deep-purple,.w3-hover-border-deep-purple:hover{border-color:#673ab7!important}
|
||||
.w3-border-red,.w3-hover-border-red:hover{border-color:#f44336!important}
|
||||
.w3-border-sand,.w3-hover-border-sand:hover{border-color:#fdf5e6!important}
|
||||
.w3-border-teal,.w3-hover-border-teal:hover{border-color:#009688!important}
|
||||
.w3-border-yellow,.w3-hover-border-yellow:hover{border-color:#ffeb3b!important}
|
||||
.w3-border-white,.w3-hover-border-white:hover{border-color:#fff!important}
|
||||
.w3-border-black,.w3-hover-border-black:hover{border-color:#000!important}
|
||||
.w3-border-grey,.w3-hover-border-grey:hover,.w3-border-gray,.w3-hover-border-gray:hover{border-color:#9e9e9e!important}
|
||||
.w3-border-light-grey,.w3-hover-border-light-grey:hover,.w3-border-light-gray,.w3-hover-border-light-gray:hover{border-color:#f1f1f1!important}
|
||||
.w3-border-dark-grey,.w3-hover-border-dark-grey:hover,.w3-border-dark-gray,.w3-hover-border-dark-gray:hover{border-color:#616161!important}
|
||||
.w3-border-pale-red,.w3-hover-border-pale-red:hover{border-color:#ffe7e7!important}.w3-border-pale-green,.w3-hover-border-pale-green:hover{border-color:#e7ffe7!important}
|
||||
.w3-border-pale-yellow,.w3-hover-border-pale-yellow:hover{border-color:#ffffcc!important}.w3-border-pale-blue,.w3-hover-border-pale-blue:hover{border-color:#e7ffff!important}
|
||||
Loading…
x
Reference in New Issue
Block a user