...
 
Commits (68)
......@@ -7,3 +7,6 @@ srctweb/website/build/
srctweb/_site/
.sass-cache/
.jekyll-metadata
.vs
.vscode
*.jekyll-cache
image: ruby:2.3
stages:
- build
- deploy
......@@ -7,32 +5,31 @@ stages:
variables:
JEKYLL_ENV: production
before_script:
- cd srctweb/
- bundle install
build:
image: ruby:2.3
stage: build
before_script:
- cd srctweb/
- bundle install
script:
- bundle exec jekyll build --trace -d '../build'
- cd srctweb/
- bundle install
- bundle exec jekyll build --trace -d '../build'
artifacts:
paths:
- build
- build
deploy_staging:
image: alpine
stage: deploy
script:
- echo 'Deploy bot awayyy';
- echo 'Deploy bot awayyy';
environment:
name: staging
url: https://srct.gmu.io
deploy_production:
image: alpine
stage: deploy
script: echo "Deploy bot awayyyyy"
script:
- echo "Deploy bot awayyyyy"
environment:
name: production
url: https://srct.gmu.edu
......
......@@ -35,7 +35,7 @@ use one at all), but Homebrew is highly reccomended.
To get homebrew, run the following command in a terminal:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
**Note**: You do NOT need to use `sudo` when running any Homebrew commands, and
it likely won't work if you do.
......@@ -50,15 +50,7 @@ Finally we can install git with:
### On Windows
We recommend that if you are on Windows 10 AE (Anniversary Edition) or above to make use of the
Windows Subsystem for Linux (WSL). The following link should get you up and running:
[https://msdn.microsoft.com/en-us/commandline/wsl/install_guide](https://msdn.microsoft.com/en-us/commandline/wsl/install_guide)
#### Contributing with Windows
If you are not on Windows 10 or would rather prefer to not use the WSL you may download Git for
Windows here:
Download Git for Windows here:
[https://git-scm.com/download/win](https://git-scm.com/download/win)
......@@ -72,7 +64,7 @@ the SRCT code respository with SSH.
**a)** Configure your ssh keys by following the directions at:
**[git.gmu.edu/help/ssh/README](https://git.gmu.edu/help/ssh/README)**
**[https://git.gmu.edu/srct/schedules/wikis/Adding-SSH-Keys-to-GitLab](https://git.gmu.edu/srct/schedules/wikis/Adding-SSH-Keys-to-GitLab)**
**b)** Now, on your computer, navigate to the directory in which you want to download the project (ie. perhaps one called `~/development/SRCT`), and run
......@@ -91,7 +83,7 @@ and get to working on setting up a development environment!
Installing Docker on your system:
* For macOS go here: https://docs.docker.com/docker-for-mac/
* For Windows go here: https://docs.docker.com/docker-for-windows/
* For Windows (**PROFESSIONAL EDITION ONLY**) go here: https://docs.docker.com/docker-for-windows/
* For your specific linux disro go here: https://docs.docker.com/engine/installation/
* Additionally, you will need to install docker-compose: https://docs.docker.com/compose/install/
......@@ -105,6 +97,18 @@ If that doesn't work, try:
You should see that the server is running by going to [http://localhost:4000](http://localhost:4000) in your browser. Any changes you make to your local file system will be mirrored in the server.
### Installing Jekyll manually
#### Windows
1. Go to https://jekyllrb.com/docs/installation/windows/
2. Press the RubyInstaller link
3. Install the Ruby+Devkit 2.6.4-1 (x64)
4. Go through the installer
5. Open a terminal and type gem install jekyll bundler tzinfo tzinfo-data
6. Go to the folder you installed srctweb and type jekyll serve -s './srctweb' -d './srctweb/_site'
9. Navigate to localhost:4000 in a web browser
# Contrubuting
Please read `CONTRIBUTING.md` for specific information and best practices on how
......
......@@ -46,7 +46,7 @@ DEPENDENCIES
json
RUBY VERSION
ruby 2.5.0p0
ruby 2.5.1p57
BUNDLED WITH
1.16.1
......@@ -2,6 +2,14 @@
{
"name": "David Haynes",
"email": "dhaynes3@gmu.edu",
"alum": true,
"exec": {
"status": false
}
},
{
"name": "Zac Wood",
"email": "zwood2@gmu.edu",
"alum": false,
"exec": {
"status": true,
......@@ -10,13 +18,21 @@
}
},
{
"name": "Zach Knox",
"email": "zknox@gmu.edu",
"name": "Gilberto Barrientos",
"email": "gbarrien@masonlive.gmu.edu",
"alum": false,
"exec": {
"status": true,
"position": "Vice President",
"link": "http://wiki.srct.gmu.edu/Vice_President"
"position": "Secretary",
"link": "http://wiki.srct.gmu.edu/Secretary"
}
},
{
"name": "Robert Hitt",
"email": "rhitt@gmu.edu",
"alum": false,
"exec": {
"status": false
}
},
{
......@@ -24,34 +40,28 @@
"email": "mbaile18@gmu.edu",
"alum": false,
"exec": {
"status": true,
"position": "Systems Administrator",
"link": "http://wiki.srct.gmu.edu/Systems_Administrator"
"status": false
}
},
{
"name": "Robert Hitt",
"email": "rhitt@gmu.edu",
"name": "Aaron Martinez",
"email": "apoulter@gmu.edu",
"alum": false,
"exec": {
"status": true,
"position": "Treasurer",
"link": "http://wiki.srct.gmu.edu/Treasurer"
"status": false
}
},
{
"name": "Danny Kim",
"email": "dkim74@gmu.edu",
"name": "Andres Villogas",
"email": "jvilloga@gmu.edu",
"alum": false,
"exec": {
"status": true,
"position": "Secretary",
"link": "http://wiki.srct.gmu.edu/Secretary"
"status": false
}
},
{
"name": "Kinga Dobolyi",
"email": "kdobolyi@gmu.edu",
"name": "Jonathan Bell",
"email": "bellj@gmu.edu",
"alum": false,
"exec": {
"status": true,
......@@ -59,6 +69,22 @@
"link": "http://wiki.srct.gmu.edu/Faculty_Advisor"
}
},
{
"name": "Zach Knox",
"email": "zknox@gmu.edu",
"alum": false,
"exec": {
"status": false
}
},
{
"name": "Danny Kim",
"email": "dkim74@gmu.edu",
"alum": false,
"exec": {
"status": false,
}
},
{
"name": "Bryon Bacon",
"email": "bbacon@gmu.edu",
......@@ -120,7 +146,9 @@
"email": "ehasan3@gmu.edu",
"alum": false,
"exec": {
"status": false
"status": true,
"position": "Systems Administrator",
"link": "http://wiki.srct.gmu.edu/Systems_Administrator"
}
},
{
......@@ -166,7 +194,7 @@
{
"name": "Daniel Bond",
"email": "dbond2@gmu.edu",
"alum": false,
"alum": true,
"exec": {
"status": false
}
......@@ -211,14 +239,6 @@
"status": false
}
},
{
"name": "Andres Villogas",
"email": "jvilloga@gmu.edu",
"alum": false,
"exec": {
"status": false
}
},
{
"name": "Jay Wilson",
"email": "jwilso48@gmu.edu",
......@@ -240,7 +260,9 @@
"email": "ahrdy@gmu.edu",
"alum": false,
"exec": {
"status": false
"status": true,
"position": "Vice President",
"link": "http://wiki.srct.gmu.edu/Vice_President"
}
},
{
......@@ -408,23 +430,9 @@
"email": "rdecoito@gmu.edu",
"alum": false,
"exec": {
"status": false
}
},
{
"name": "Aaron Martinez",
"email": "apoulter@gmu.edu",
"alum": false,
"exec": {
"status": false
}
},
{
"name": "Zac Wood",
"email": "zwood2@gmu.edu",
"alum": false,
"exec": {
"status": false
"status": true,
"position": "Treasurer",
"link": "http://wiki.srct.gmu.edu/Treasurer"
}
},
{
......
This diff is collapsed.
......@@ -3,7 +3,7 @@
<div class="row mt-2">
<div class="col-lg-12 text-center">
<a href="https://creativecommons.org/licenses/by-nc/4.0/legalcode">
<i class="fab fa-creative-commons fa-fw"></i> BY-NC 2016</a>
<i class="fab fa-creative-commons fa-fw"></i> BY-NC 2019</a>
Mason SRCT and <a href="https://git.gmu.edu/srct/srctweb/graphs/master">contributors</a>.
</div>
</div>
......
......@@ -26,11 +26,24 @@
<meta name="twitter:image" content="{{ site.url }}/assets/img/SRCT_square_green_sm.png">
<!-- Load stylesheets -->
<link rel="stylesheet" href="https://srct.gmu.io/masonstrap/css/masonstrap.min.css" />
<link rel="stylesheet" href="https://srct.nyc3.digitaloceanspaces.com/masonstrap/masonstrap.min.css" />
<link href="/assets/css/style.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.pride.codes/css/bar_helpers.css">
<!-- Load favicon -->
<link rel="icon" href="/assets/img/favicon.ico">
{% if page.tablesorter_css %}
<link rel="stylesheet" href="/assets/css/theme.bootstrap_4.min.css">
{% endif %}
<link rel="icon" href="/assets/img/favicon.ico"> {% if page.tablesorter_css %}
<link rel="stylesheet" href="/assets/css/tablesorter.css"> {% endif %}
<!-- Matomo -->
<script type="text/javascript">
var _paq = _paq || [];
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
(function() {
var u="//matomo.srct.gmu.edu/";
_paq.push(['setTrackerUr1', u+'piwik.php']);
_paq.push(['setSiteId', '5']);
var d=document, g=d.createElement('script'), s=d.getElementsbyTagName('script')[0];
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Matomo Code -->
\ No newline at end of file
......@@ -2,7 +2,7 @@
<div class="jumbotron jumbostyle">
<div class="container">
<div class="d-flex justify-content-center flex-wrap" id="srct-logo-home">
<div class="d-flex justify-content-center flex-wrap pt-3" id="srct-logo-home">
<img src="/assets/img/SRCT_sq_white_shadow.png" class="srct-logo" alt="SRCT's logo"/>
<p class="xolonium srct-title">Student-Run<br />Computing&nbsp;+<br />Technology</p>
</div>
......
......@@ -25,7 +25,7 @@
{% else %}
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" id="dropdown-link"
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" href="#">
{{ link.title }}
</a>
<div class="dropdown-menu">
......@@ -39,4 +39,4 @@
</ul>
</div>
</div>
</nav>
\ No newline at end of file
</nav>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js" integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
<script src="/assets/js/functions.js"></script>
<script src="https://srct.nyc3.digitaloceanspaces.com/masonstrap/masonstrap.min.js"></script>
\ No newline at end of file
......@@ -13,28 +13,9 @@ as well as some for more general discussion (such as #apple or #tv-film). Join a
<p>You can <strong><a href="https://srct.slack.com/signup">join our Slack team here</a></strong> with your Mason email address.</p>
<legend><i class="far fa-envelope fa-fw"></i>&nbsp;<strong>Mailing Lists</strong></legend>
<p>Please see <a href="http://lists.srct.gmu.edu/">this page</a> to sign up for mailing lists.</p>
<address>
<strong>Members and interested members of the community</strong><br>
srct-general@lists.srct.gmu.edu
</address>
<address>
<strong>Leadership team</strong><br>
exec@srct.gmu.edu
</address>
<address>
<strong>Developers</strong><br>
srct-devs@lists.srct.gmu.edu
</address>
<legend><i class="fas fa-users fa-fw"></i>&nbsp;<strong>Social Media</strong></legend>
<div class="row smidge">
<div class="row pb-2">
<div class="col-sm-4 centered">
<i class="fab fa-facebook fa-fw fa-lg"></i>&nbsp;&nbsp;<a href="https://facebook.com/MasonSRCT">facebook.com/MasonSRCT</a>
</div>
......@@ -46,7 +27,7 @@ srct-devs@lists.srct.gmu.edu
<a href="https://github.com/srct">github.com/srct</a>
</div>
</div>
<div class="row smidge">
<div class="row pb-2">
<div class="col-sm-4">
<i class="fab fa-trello fa-fw fa-lg"></i>&nbsp;&nbsp;<a href="https://trello.com/srct">trello.com/srct</a>
</div>
......
......@@ -61,6 +61,7 @@ Attempt to avoid unrelated topics that derail project channels. Small tangents a
5. Discuss politics in designated channels unless necessary or directly relevant.
6. Avoid usage of @everyone or @channel unless absolutely necessary, or if the channel is known to have many @channels.
7. Avoid repeatedly @ message (otherwise referred to as pinging) someone, especially if they’re unresponsive.
8. No soliciting.
</div>
<div class="col-sm-2 hidden-xs">
......
......@@ -190,11 +190,11 @@ permalink: /documents/logos/
<ul class="list-group list-group-flush">
<li class="list-group-item py-1">
<a href="/assets/media/SRCT_square_black_lg.png"
download="SRCT_square_black_lg.png">PNG (800x800)</a>
download="SRCT_square_white_lg.png">PNG (800x800)</a>
</li>
<li class="list-group-item py-1">
<a href="/assets/media/SRCT_square_black_sm.png"
download="SRCT_square_black_sm.png">PNG (400x400)</a></strong>
download="SRCT_square_white_sm.png">PNG (400x400)</a></strong>
</li>
</ul>
</div>
......
This diff is collapsed.
......@@ -7,29 +7,47 @@ tablesorter_css: true
<!-- Exec Table -->
<h3>
<strong><a href="http://wiki.srct.gmu.edu/Executive_Board">Executive Board</a></strong>
<strong>
<a href="http://wiki.srct.gmu.edu/Executive_Board">Executive Board</a>
</strong>
</h3>
<table class="table table-hover text-center">
<thead>
<tr>
<th></th>
<th><h4>Name</h4></th>
<th><h4>Position</h4></th>
<th><h4>Email</h4></th>
<th>
<h4>Name</h4>
</th>
<th>
<h4>Position</h4>
</th>
<th>
<h4>Email</h4>
</th>
</tr>
</thead>
<tbody>
{% for member in site.data.people %}
{% if member.exec.status == true %}
<tr>
<td><img class="exec-image" src="{{ member.email | get_gravatar }}" alt="gravatar image"></td>
<td class="align-middle"><h5>{{ member.name }}</h5></td>
<td class="align-middle"><h5><a href="{{ member.exec.link }}">{{ member.exec.position }}</a></h5></td>
<td class="align-middle"><h5><a href="mailto:{{ member.email }}">{{ member.email }}</a></h5></td>
</tr>
{% endif %}
{% endfor %}
{% for member in site.data.people %} {% if member.exec.status == true %}
<tr>
<td>
<img class="exec-image" src="{{ member.email | get_gravatar }}" alt="gravatar image">
</td>
<td class="align-middle">
<h5>{{ member.name }}</h5>
</td>
<td class="align-middle">
<h5>
<a href="{{ member.exec.link }}">{{ member.exec.position }}</a>
</h5>
</td>
<td class="align-middle">
<h5>
<a href="mailto:{{ member.email }}">{{ member.email }}</a>
</h5>
</td>
</tr>
{% endif %} {% endfor %}
</tbody>
</table>
......@@ -37,53 +55,70 @@ tablesorter_css: true
<div class="col-md-6">
<!-- Devs -->
<h3>
<strong><a href="http://wiki.srct.gmu.edu/Developers">Developers</a></strong>
<strong>
<a href="http://wiki.srct.gmu.edu/Developers">Developers</a>
</strong>
</h3>
<table id="devs-table" class="table table-hover text-center">
<thead>
<tr>
<th data-sorter="false"></th>
<th class="sorter-last-name"><h4>Name</h4></th>
<th data-sorter="false"><h4>Email</h4></th>
<th class="sorter-last-name">
<h4>Name</h4>
</th>
<th data-sorter="false">
<h4>Email</h4>
</th>
</tr>
</thead>
<tbody>
{% for member in site.data.people %}
{% if member.alum == false and member.exec.position != 'Faculty Advisor' %}
<tr>
<td><img class="member-image" src="{{ member.email | get_gravatar }}" alt="gravatar image"></td>
<td class="align-middle">{{ member.name }}</td>
<td class="align-middle"><a href="mailto:{{ member.email }}">{{ member.email }}</a></td>
</tr>
{% endif %}
{% endfor %}
{% for member in site.data.people %} {% if member.alum == false and member.exec.position
!= 'Faculty Advisor' %}
<tr>
<td>
<img class="member-image" src="{{ member.email | get_gravatar }}" alt="gravatar image">
</td>
<td class="align-middle">{{ member.name }}</td>
<td class="align-middle">
<a href="mailto:{{ member.email }}">{{ member.email }}</a>
</td>
</tr>
{% endif %} {% endfor %}
</tbody>
</table>
</div>
<div class="col-md-6">
<!-- Alum -->
<h3>
<strong><a href="#">Alumni</a></strong>
<strong>
<a href="#">Alumni</a>
</strong>
</h3>
<table id="alums-table" class="table table-hover text-center">
<thead>
<tr>
<th data-sorter="false"></th>
<th class="sorter-last-name"><h4>Name</h4></th>
<th data-sorter="false"><h4>Email</h4></th>
<th class="sorter-last-name">
<h4>Name</h4>
</th>
<th data-sorter="false">
<h4>Email</h4>
</th>
</tr>
</thead>
<tbody>
{% for member in site.data.people %}
{% if member.alum == true %}
<tr>
<td><img class="member-image" src="{{ member.email | get_gravatar }}" alt="gravatar image"></td>
<td class="align-middle">{{ member.name }}</td>
<td class="align-middle"><a href="mailto:{{ member.email }}">{{ member.email }}</a></td>
</tr>
{% endif %}
{% endfor %}
{% for member in site.data.people %} {% if member.alum == true %}
<tr>
<td>
<img class="member-image" src="{{ member.email | get_gravatar }}" alt="gravatar image">
</td>
<td class="align-middle">{{ member.name }}</td>
<td class="align-middle">
<a href="mailto:{{ member.email }}">{{ member.email }}</a>
</td>
</tr>
{% endif %} {% endfor %}
</tbody>
</table>
</div>
......@@ -91,31 +126,35 @@ tablesorter_css: true
<script src="/assets/js/jquery.tablesorter.min.js" type="text/javascript"></script>
<script>
$(function() {
// from https://stackoverflow.com/questions/38209618/
// response there by the person who maintains the project
$.tablesorter.addParser({
id: 'last-name',
is: function() {
return false;
},
format: function(str) {
var parts = (str || '').split(/\s+/),
last = parts.pop();
parts.unshift(last);
return parts.join(' ');
},
// set type, either numeric or text
type: 'text'
});
$(function () {
// from https://stackoverflow.com/questions/38209618/
// response there by the person who maintains the project
$.tablesorter.addParser({
id: 'last-name',
is: function () {
return false;
},
format: function (str) {
var parts = (str || '').split(/\s+/),
last = parts.pop();
parts.unshift(last);
return parts.join(' ');
},
// set type, either numeric or text
type: 'text'
});
$("#devs-table").tablesorter({
theme: "bootstrap",
sortList: [[1,0]]
});
$("#alums-table").tablesorter({
theme: "bootstrap",
sortList: [[1,0]]
$("#devs-table").tablesorter({
theme: "bootstrap",
sortList: [
[1, 0]
]
});
$("#alums-table").tablesorter({
theme: "bootstrap",
sortList: [
[1, 0]
]
});
});
});
</script>
......@@ -11,11 +11,13 @@ description: "Projects created and maintained by SRCT's members."
<div class="row">
{% for project in site.data.projects %}
{% if project.status == 'active' %}
<div class="col-lg-6 project-entry">
<div class="col-lg-6 mb-2">
<a class="project-link" name="{{ project.name }}" href="#{{ project.name }}"><i class="{{ project.fa_icon }} project-icon"></i></a>
<legend>
<strong>{{ project.name }}</strong>
{% if project.deployed_url %}| <a href="https://{{ project.deployed_url }}">{{ project.deployed_url }}</a>{% endif %}
{% if project.deployed_url %}| <a href="https://{{ project.deployed_url }}" target="_blank">{{ project.deployed_url }}</a>{% endif %}
{% if project.appstore_url %}<br /><a href="{{ project.appstore_url }}" target="_blank"><img class="store-badge" src="/assets/img/AppStoreBadge.png" alt="Download on the App Store"></a>{% endif %}
{% if project.googleplay_url %}<br /><a href="{{ project.googleplay_url }}" target="_blank"><img class="store-badge" src="/assets/img/GooglePlayBadge.png" alt="Get It on Google Play"></a>{% endif %}
</legend>
{% if project.docs_url %}<a href="{{ project.docs_url }}">Docs</a>{% endif %}
{% if project.issues_url %}| <a href="{{ project.issues_url }}">Issues</a><br><br>{% endif %}
......@@ -26,7 +28,7 @@ description: "Projects created and maintained by SRCT's members."
{% if project.next_release %}<strong class="project-role">Next Release:</strong> <a href="{{ project.next_release_url }}">{{ project.next_release }}</a><br>{% endif %}
{% if project.language %}<strong class="project-role">Language:</strong> {{ project.language }}{% endif %}
<p class="project-text">
<p class="mt-2 pb-3">
{{ project.blurb }}
</p>
</div>
......@@ -41,11 +43,11 @@ description: "Projects created and maintained by SRCT's members."
<div class="row">
{% for project in site.data.projects %}
{% if project.status == 'in_dev' %}
<div class="col-lg-6 project-entry">
<div class="col-lg-6 mb-2">
<a class="project-link" name="{{ project.name }}" href="#{{ project.name }}"><i class="{{ project.fa_icon }} project-icon"></i></a>
<legend>
<strong>{{ project.name }}</strong>
{% if project.deployed_url %}| <a href="https://{{ project.deployed_url }}">{{ project.deployed_url }}</a>{% endif %}
{% if project.deployed_url %}| <a href="https://{{ project.deployed_url }}" target="_blank">{{ project.deployed_url }}</a>{% endif %}
</legend>
{% if project.docs_url %}<a href="{{ project.docs_url }}">Docs</a>{% endif %}
{% if project.issues_url %}| <a href="{{ project.issues_url }}">Issues</a>{% endif %}
......@@ -57,7 +59,7 @@ description: "Projects created and maintained by SRCT's members."
{% if project.next_release %}<strong class="project-role">Next Release:</strong> <a href="{{ project.next_release_url }}">{{ project.next_release }}</a><br>{% endif %}
{% if project.language %}<strong class="project-role">Language:</strong> {{ project.language }}{% endif %}
<p class="project-text">
<p class="mt-2 pb-3">
{{ project.blurb }}
</p>
</div>
......@@ -72,11 +74,11 @@ description: "Projects created and maintained by SRCT's members."
<div class="row">
{% for project in site.data.projects %}
{% if project.status == 'inactive' %}
<div class="col-lg-6 project-entry">
<div class="col-lg-6 mb-2">
<a class="project-link" name="{{ project.name }}" href="#{{ project.name }}"><i class="{{ project.fa_icon }} project-icon"></i></a>
<legend>
<strong>{{ project.name }}</strong>
{% if project.deployed_url %}| <a href="https://{{ project.deployed_url }}">{{ project.deployed_url }}</a>{% endif %}
{% if project.deployed_url %}| <a href="https://{{ project.deployed_url }}" target="_blank">{{ project.deployed_url }}</a>{% endif %}
</legend>
{% if project.docs_url %}<a href="{{ project.docs_url }}">Docs</a>{% endif %}
{% if project.issues_url %}| <a href="{{ project.issues_url }}">Issues</a>{% endif %}
......@@ -88,7 +90,7 @@ description: "Projects created and maintained by SRCT's members."
{% if project.next_release %}<strong class="project-role">Next Release:</strong> <a href="{{ project.next_release_url }}">{{ project.next_release }}</a><br>{% endif %}
{% if project.language %}<strong class="project-role">Language:</strong> {{ project.language }}{% endif %}
<p class="project-text">
<p class="mt-2 pb-3">
{{ project.blurb }}
</p>
</div>
......@@ -103,11 +105,11 @@ description: "Projects created and maintained by SRCT's members."
<div class="row">
{% for project in site.data.projects %}
{% if project.status == 'ideas' %}
<div class="col-lg-6 project-entry">
<div class="col-lg-6 mb-2">
<a class="project-link" name="{{ project.name }}" href="#{{ project.name }}"><i class="{{ project.fa_icon }} project-icon"></i></a>
<legend>
<strong>{{ project.name }}</strong>
{% if project.deployed_url %}| <a href="https://{{ project.deployed_url }}">{{ project.deployed_url }}</a>{% endif %}
{% if project.deployed_url %}| <a href="https://{{ project.deployed_url }}" target="_blank">{{ project.deployed_url }}</a>{% endif %}
</legend>
{% if project.docs_url %}<a href="{{ project.docs_url }}">Docs</a>{% endif %}
{% if project.issues_url %}| <a href="{{ project.issues_url }}">Issues</a>{% endif %}
......@@ -119,7 +121,7 @@ description: "Projects created and maintained by SRCT's members."
{% if project.next_release %}<strong class="project-role">Next Release:</strong> <a href="{{ project.next_release_url }}">{{ project.next_release }}</a><br>{% endif %}
{% if project.language %}<strong class="project-role">Language:</strong> {{ project.language }}{% endif %}
<p class="project-text">
<p class="mt-2 pb-3">
{{ project.blurb }}
</p>
</div>
......
/* Sticky footer styles */
html {
position: relative;
min-height: 100%;
}
body {
/* Margin bottom by footer height */
margin-bottom: 120px;
}
.footer {
position: absolute;
bottom: 0;
......@@ -17,29 +20,33 @@ body {
}
/* Custom page CSS */
a[name] {
padding-top: 50px;
}
@font-face {
font-family: 'Xolonium';
src: url('../fonts/Xolonium-Regular.otf') format("opentype");
font-family: 'Xolonium';
src: url('../fonts/Xolonium-Regular.otf') format("opentype");
}
.xolonium {
font-family: Xolonium;
}
#srct-logo-home {
padding-top: 1rem;
}
.srct-logo {
height: 10rem;
width: 10rem;
width: 10rem;
}
.srct-title {
color: white;
font-size: 2rem;
padding-top: 0.35rem;
padding-left: 0.5rem;
text-shadow: 1px 1px 6px #333;}
text-shadow: 1px 1px 6px #333;
}
.jumbostyle {
background: url(/assets/img/meeting.jpg) no-repeat;
background-size: cover;
......@@ -49,35 +56,10 @@ a[name] {
padding-bottom: 100px;
border-radius: unset;
}
.srctlogo {
width: 10px;
}
.smidge {
padding-bottom: 10px;
}
.smidgen {
padding-bottom: 5px;
}
.people-left {
padding-left:0;
padding-right:0;
}
.people-right {
padding-right:0;
padding-left:0;
}
@media(min-width:992px){
.people-left {
padding-right:15px;
}
.people-right {
padding-left:15px;
}
}
.index-card {
margin-bottom: 1rem;
}
.index-image {
border-radius: 50%;
......@@ -99,47 +81,54 @@ a[name] {
* A cool little hack I found to try to allow a responsive Google Cal:
* http://themeloom.com/2013/02/tips-embed-google-maps-and-calendars-in-a-responsive-wordpress-theme/
**/
.googlecal-container {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.googlecal-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
/** Projects Page **/
.project-entry {
margin-bottom:10px;
}
.project-icon {
text-align:center;
text-align: center;
display: block;
font-size:100px;
margin:0 auto;
font-size: 100px;
margin: 0 auto;
padding-bottom: 10px;
}
/* can't you extend CSS classes? */
.project-link {
/* Padding and margin business because of the static header */
padding-top:50px !important;
margin-top:-50px;
display:block;
color:#000;
padding-top: 50px !important;
margin-top: -50px;
display: block;
color: #000;
}
.project-link:hover, .project-link:active, .project-link:focus {
.project-link:hover,
.project-link:active,
.project-link:focus {
text-decoration: none;
outline: 0;
}
.project-icon-stacked {
font-size:55px;
font-size: 55px;
}
.project-role {
width: 150px;
display: inline-block;
......@@ -150,10 +139,7 @@ a[name] {
background: transparent;
font-size: 0.9em;
}
.project-text {
margin-top:10px;
padding-bottom:15px;
}
#banner {
padding-top: 2rem;
background: #e4e6d7;
......@@ -161,19 +147,27 @@ a[name] {
margin-bottom: 15px;
font-size: 22.5px;
}
.page-header {
margin-top:0;
border-bottom:none;
margin-top: 0;
border-bottom: none;
}
.white-branding {
color: black;
background-color: white;
}
.green-branding {
color: white;
background-color: #006633;
}
.black-branding {
color: white;
background-color: black;
}
.store-badge {
padding: 2px;
}
.tablesorter-bootstrap {
width: 100%
}
.tablesorter-bootstrap tfoot td,
.tablesorter-bootstrap tfoot th,
.tablesorter-bootstrap thead td,
.tablesorter-bootstrap thead th {
font: 14px/20px Arial, Sans-serif;
font-weight: 700;
padding: 4px;
margin: 0 0 18px
}
.tablesorter-bootstrap thead .tablesorter-header {
background-position: right 5px center;
background-repeat: no-repeat;
cursor: pointer;
white-space: normal
}
.tablesorter-bootstrap:not(.table-dark) tfoot td,
.tablesorter-bootstrap:not(.table-dark) tfoot th,
.tablesorter-bootstrap:not(.table-dark) thead:not(.thead-dark) .tablesorter-header {
background-color: #fff
}
.tablesorter-bootstrap thead .sorter-false {
cursor: default;
background-image: none
}
.tablesorter-bootstrap .tablesorter-header-inner {
position: relative;
padding: 4px 18px 4px 4px
}
.tablesorter-bootstrap .sorter-false .tablesorter-header-inner {
padding: 4px
}
.tablesorter-bootstrap thead .tablesorter-headerUnSorted:not(.sorter-false) {
background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE0IDIwIj48cGF0aCBkPSJNMTQgMTNsLTIuNS0yLjVMNyAxNWwtNC41LTQuNUwwIDEzbDcgN3pNMTQgNy41TDExLjUgMTAgNyA1LjUgMi41IDEwIDAgNy41bDctN3oiLz48L3N2Zz4=)
}
.tablesorter-bootstrap thead .tablesorter-headerAsc {
background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDE0IDE0Ij48cGF0aCBkPSJNMTQgOS41TDExLjUgMTIgNyA3LjUgMi41IDEyIDAgOS41bDctN3oiLz48L3N2Zz4=)
}
.tablesorter-bootstrap thead .tablesorter-headerDesc {
background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDE0IDE0Ij48cGF0aCBkPSJNMTQgNWwtMi41LTIuNS00LjUgNC41LTQuNS00LjVMMCA1IDcgMTJ6Ii8+PC9zdmc+)
}
.tablesorter-bootstrap thead.thead-dark .tablesorter-headerUnSorted:not(.sorter-false),
.tablesorter-bootstrap.table-dark thead .tablesorter-headerUnSorted:not(.sorter-false) {
background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE0IDIwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMTQgMTNsLTIuNS0yLjVMNyAxNWwtNC41LTQuNUwwIDEzbDcgN3pNMTQgNy41TDExLjUgMTAgNyA1LjUgMi41IDEwIDAgNy41bDctN3oiLz48L3N2Zz4=)
}
.tablesorter-bootstrap thead.thead-dark .tablesorter-headerAsc,
.tablesorter-bootstrap.table-dark thead .tablesorter-headerAsc {
background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDE0IDE0Ij48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMTQgOS41TDExLjUgMTIgNyA3LjUgMi41IDEyIDAgOS41bDctN3oiLz48L3N2Zz4=)
}
.tablesorter-bootstrap thead.thead-dark .tablesorter-headerDesc,
.tablesorter-bootstrap.table-dark thead .tablesorter-headerDesc {
background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDE0IDE0Ij48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMTQgNWwtMi41LTIuNS00LjUgNC41LTQuNS00LjVMMCA1IDcgMTJ6Ii8+PC9zdmc+)
}
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.odd>td,
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.tablesorter-hasChildRow.odd:hover~tr.tablesorter-hasChildRow.odd~.tablesorter-childRow.odd>td {
background-color: #f9f9f9
}
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.even:hover>td,
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.hover>td,
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.odd:hover>td,
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.tablesorter-hasChildRow.even:hover~.tablesorter-childRow.even>td,
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.tablesorter-hasChildRow.odd:hover~.tablesorter-childRow.odd>td {
background-color: #f5f5f5
}
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.even>td,
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.tablesorter-hasChildRow.even:hover~tr.tablesorter-hasChildRow.even~.tablesorter-childRow.even>td {
background-color: #fff
}
.tablesorter-bootstrap .tablesorter-processing {
background-image: url(data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=);
background-position: center center !important;
background-repeat: no-repeat !important
}
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.odd td.primary {
background-color: #bfbfbf
}
.tablesorter-bootstrap:not(.table-dark)>tbody>tr td.primary,
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.even td.primary {
background-color: #d9d9d9
}
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.odd td.secondary {
background-color: #d9d9d9
}
.tablesorter-bootstrap:not(.table-dark)>tbody>tr td.secondary,
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.even td.secondary {
background-color: #e6e6e6
}
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.odd td.tertiary {
background-color: #e6e6e6
}
.tablesorter-bootstrap:not(.table-dark)>tbody>tr td.tertiary,
.tablesorter-bootstrap:not(.table-dark)>tbody>tr.even td.tertiary {
background-color: #f2f2f2
}
.tablesorter-bootstrap:not(.table-dark) .caption {
background-color: #fff
}
.tablesorter-bootstrap .tablesorter-filter-row input.tablesorter-filter,
.tablesorter-bootstrap .tablesorter-filter-row select.tablesorter-filter {
width: 98%;
margin: 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
-webkit-transition: height .1s ease;
-moz-transition: height .1s ease;
-o-transition: height .1s ease;
transition: height .1s ease
}
.tablesorter-bootstrap:not(.table-dark) .tablesorter-filter-row {
background-color: #efefef
}
.tablesorter-bootstrap:not(.table-dark) .tablesorter-filter-row input.tablesorter-filter,
.tablesorter-bootstrap:not(.table-dark) .tablesorter-filter-row select.tablesorter-filter {
color: #333
}
.tablesorter-bootstrap .tablesorter-filter-row .tablesorter-filter.disabled {
cursor: not-allowed;
box-shadow: 0 1px 1px rgba(0, 0, 0, .075) inset;
box-sizing: border-box;
transition: height .1s ease
}
.tablesorter-bootstrap:not(.table-dark) .tablesorter-filter-row td {
line-height: normal;
text-align: center;
padding: 4px 6px;
vertical-align: middle;
-webkit-transition: line-height .1s ease;
-moz-transition: line-height .1s ease;
-o-transition: line-height .1s ease;
transition: line-height .1s ease
}
.tablesorter-bootstrap .tablesorter-filter-row.hideme td {
padding: 2px;
margin: 0;
line-height: 0
}
.tablesorter-bootstrap .tablesorter-filter-row.hideme * {
height: 1px;
min-height: 0;
border: 0;
padding: 0;
margin: 0;
/* don't use visibility: hidden because it disables tabbing */
opacity: 0
}
.tablesorter .filtered {
display: none
}
.tablesorter-bootstrap .tablesorter-pager .pagedisplay {
border: 0
}
.tablesorter:not(.table-dark) .tablesorter-errorRow td {
text-align: center;
cursor: pointer;
background-color: #e6bf99
}
.tablesorter-bootstrap{width:100%}.tablesorter-bootstrap tfoot td,.tablesorter-bootstrap tfoot th,.tablesorter-bootstrap thead td,.tablesorter-bootstrap thead th{font:14px/20px Arial,Sans-serif;font-weight:700;padding:4px;margin:0 0 18px}.tablesorter-bootstrap thead .tablesorter-header{background-position:right 5px center;background-repeat:no-repeat;cursor:pointer;white-space:normal}.tablesorter-bootstrap:not(.table-dark) tfoot td,.tablesorter-bootstrap:not(.table-dark) tfoot th,.tablesorter-bootstrap:not(.table-dark) thead:not(.thead-dark) .tablesorter-header{background-color:#fff}.tablesorter-bootstrap thead .sorter-false{cursor:default;background-image:none}.tablesorter-bootstrap .tablesorter-header-inner{position:relative;padding:4px 18px 4px 4px}.tablesorter-bootstrap .sorter-false .tablesorter-header-inner{padding:4px}.tablesorter-bootstrap thead .tablesorter-headerUnSorted:not(.sorter-false){background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE0IDIwIj48cGF0aCBkPSJNMTQgMTNsLTIuNS0yLjVMNyAxNWwtNC41LTQuNUwwIDEzbDcgN3pNMTQgNy41TDExLjUgMTAgNyA1LjUgMi41IDEwIDAgNy41bDctN3oiLz48L3N2Zz4=)}.tablesorter-bootstrap thead .tablesorter-headerAsc{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDE0IDE0Ij48cGF0aCBkPSJNMTQgOS41TDExLjUgMTIgNyA3LjUgMi41IDEyIDAgOS41bDctN3oiLz48L3N2Zz4=)}.tablesorter-bootstrap thead .tablesorter-headerDesc{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDE0IDE0Ij48cGF0aCBkPSJNMTQgNWwtMi41LTIuNS00LjUgNC41LTQuNS00LjVMMCA1IDcgMTJ6Ii8+PC9zdmc+)}.tablesorter-bootstrap thead.thead-dark .tablesorter-headerUnSorted:not(.sorter-false),.tablesorter-bootstrap.table-dark thead .tablesorter-headerUnSorted:not(.sorter-false){background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE0IDIwIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMTQgMTNsLTIuNS0yLjVMNyAxNWwtNC41LTQuNUwwIDEzbDcgN3pNMTQgNy41TDExLjUgMTAgNyA1LjUgMi41IDEwIDAgNy41bDctN3oiLz48L3N2Zz4=)}.tablesorter-bootstrap thead.thead-dark .tablesorter-headerAsc,.tablesorter-bootstrap.table-dark thead .tablesorter-headerAsc{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDE0IDE0Ij48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMTQgOS41TDExLjUgMTIgNyA3LjUgMi41IDEyIDAgOS41bDctN3oiLz48L3N2Zz4=)}.tablesorter-bootstrap thead.thead-dark .tablesorter-headerDesc,.tablesorter-bootstrap.table-dark thead .tablesorter-headerDesc{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDE0IDE0Ij48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMTQgNWwtMi41LTIuNS00LjUgNC41LTQuNS00LjVMMCA1IDcgMTJ6Ii8+PC9zdmc+)}.tablesorter-bootstrap:not(.table-dark)>tbody>tr.odd>td,.tablesorter-bootstrap:not(.table-dark)>tbody>tr.tablesorter-hasChildRow.odd:hover~tr.tablesorter-hasChildRow.odd~.tablesorter-childRow.odd>td{background-color:#f9f9f9}.tablesorter-bootstrap:not(.table-dark)>tbody>tr.even:hover>td,.tablesorter-bootstrap:not(.table-dark)>tbody>tr.hover>td,.tablesorter-bootstrap:not(.table-dark)>tbody>tr.odd:hover>td,.tablesorter-bootstrap:not(.table-dark)>tbody>tr.tablesorter-hasChildRow.even:hover~.tablesorter-childRow.even>td,.tablesorter-bootstrap:not(.table-dark)>tbody>tr.tablesorter-hasChildRow.odd:hover~.tablesorter-childRow.odd>td{background-color:#f5f5f5}.tablesorter-bootstrap:not(.table-dark)>tbody>tr.even>td,.tablesorter-bootstrap:not(.table-dark)>tbody>tr.tablesorter-hasChildRow.even:hover~tr.tablesorter-hasChildRow.even~.tablesorter-childRow.even>td{background-color:#fff}.tablesorter-bootstrap .tablesorter-processing{background-image:url(data:image/gif;base64,R0lGODlhFAAUAKEAAO7u7lpaWgAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQBCgACACwAAAAAFAAUAAACQZRvoIDtu1wLQUAlqKTVxqwhXIiBnDg6Y4eyx4lKW5XK7wrLeK3vbq8J2W4T4e1nMhpWrZCTt3xKZ8kgsggdJmUFACH5BAEKAAIALAcAAAALAAcAAAIUVB6ii7jajgCAuUmtovxtXnmdUAAAIfkEAQoAAgAsDQACAAcACwAAAhRUIpmHy/3gUVQAQO9NetuugCFWAAAh+QQBCgACACwNAAcABwALAAACE5QVcZjKbVo6ck2AF95m5/6BSwEAIfkEAQoAAgAsBwANAAsABwAAAhOUH3kr6QaAcSrGWe1VQl+mMUIBACH5BAEKAAIALAIADQALAAcAAAIUlICmh7ncTAgqijkruDiv7n2YUAAAIfkEAQoAAgAsAAAHAAcACwAAAhQUIGmHyedehIoqFXLKfPOAaZdWAAAh+QQFCgACACwAAAIABwALAAACFJQFcJiXb15zLYRl7cla8OtlGGgUADs=);background-position:center center!important;background-repeat:no-repeat!important}.tablesorter-bootstrap:not(.table-dark)>tbody>tr.odd td.primary{background-color:#bfbfbf}.tablesorter-bootstrap:not(.table-dark)>tbody>tr td.primary,.tablesorter-bootstrap:not(.table-dark)>tbody>tr.even td.primary{background-color:#d9d9d9}.tablesorter-bootstrap:not(.table-dark)>tbody>tr.odd td.secondary{background-color:#d9d9d9}.tablesorter-bootstrap:not(.table-dark)>tbody>tr td.secondary,.tablesorter-bootstrap:not(.table-dark)>tbody>tr.even td.secondary{background-color:#e6e6e6}.tablesorter-bootstrap:not(.table-dark)>tbody>tr.odd td.tertiary{background-color:#e6e6e6}.tablesorter-bootstrap:not(.table-dark)>tbody>tr td.tertiary,.tablesorter-bootstrap:not(.table-dark)>tbody>tr.even td.tertiary{background-color:#f2f2f2}.tablesorter-bootstrap:not(.table-dark) .caption{background-color:#fff}.tablesorter-bootstrap .tablesorter-filter-row input.tablesorter-filter,.tablesorter-bootstrap .tablesorter-filter-row select.tablesorter-filter{width:98%;margin:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:height .1s ease;-moz-transition:height .1s ease;-o-transition:height .1s ease;transition:height .1s ease}.tablesorter-bootstrap:not(.table-dark) .tablesorter-filter-row{background-color:#efefef}.tablesorter-bootstrap:not(.table-dark) .tablesorter-filter-row input.tablesorter-filter,.tablesorter-bootstrap:not(.table-dark) .tablesorter-filter-row select.tablesorter-filter{color:#333}.tablesorter-bootstrap .tablesorter-filter-row .tablesorter-filter.disabled{cursor:not-allowed;box-shadow:0 1px 1px rgba(0,0,0,.075) inset;box-sizing:border-box;transition:height .1s ease}.tablesorter-bootstrap:not(.table-dark) .tablesorter-filter-row td{line-height:normal;text-align:center;padding:4px 6px;vertical-align:middle;-webkit-transition:line-height .1s ease;-moz-transition:line-height .1s ease;-o-transition:line-height .1s ease;transition:line-height .1s ease}.tablesorter-bootstrap .tablesorter-filter-row.hideme td{padding:2px;margin:0;line-height:0}.tablesorter-bootstrap .tablesorter-filter-row.hideme *{height:1px;min-height:0;border:0;padding:0;margin:0;/* don't use visibility: hidden because it disables tabbing */opacity:0}.tablesorter .filtered{display:none}.tablesorter-bootstrap .tablesorter-pager .pagedisplay{border:0}.tablesorter:not(.table-dark) .tablesorter-errorRow td{text-align:center;cursor:pointer;background-color:#e6bf99}
......@@ -2,9 +2,76 @@ function checkDate() {
var d = new Date(),
month = '' + (d.getMonth() + 1),
day = '' + d.getDate()
if (month == 3 && day > 20) {
var body = document.getElementById("body");
body.classList.add("pride-bar");
year = '' + d.getYear();
// Mason Pride Week
// if it is March
if (month == 3) {
// find out what the third week of March is
var marchFirst = new Date(year, month, 1);
// days of the week are 0 - 6
// Sunday is 0
var weekday = marchFirst.getDay();
var daysInFirstWeek = 7 - weekday;
// hopefully they won't schedule a different week
// overlap from March into April would be especially annoying
var thirdWeek = daysInFirstWeek + 14;
var fourthWeek = daysInFirstWeek + 21;
if (day > thirdWeek && day <= fourthWeek){
// appends the pride bar to existing classes,
// maintaining all of the Masonstrap formatting
document.body.className += " pride-bar";
}
}
// Virginia Primaries and General Elections
// Date reference: https://www.fairfaxcounty.gov/elections/ecalendar
var primaryMessage = "<div class='alert alert-info mb-0 text-center' role='alert'>" +
"<i class='fa fa-info-circle'></i> " +
"Today is Virginia's Primary Election. " +
"Polls are open from 6:00am - 7:00pm. " +
"Photo ID is required. " +
"<a href='https://vote.elections.virginia.gov/VoterInformation/'" +
"class='alert-link'>" +
"Click here to verify your registration status, " +
"find your polling place, and review your ballot." +
"</a>" +
"</div>";
var generalMessage = primaryMessage.replace(/Primary/i, 'General');
// primaries are the second Tuesday of June
if (month == 6) {
juneFirst = new Date(year, month, 1);
weekday = juneFirst.getDay();
// math for date calculation based on information read here
// http://www.i-programmer.info/programming/javascript/6322-date-hacks-doing-javascript-date-calculations.html
secondTuesday = 1 + (((2 - weekday) + 7) % 7) + 7;
if (day == secondTuesday) {
document.body.insertAdjacentHTML("afterbegin", primaryMessage);
}
// generals are the first Tuesday after the first Monday of November
} else if (month == 11) {
novemberFirst = new Date(year, month, 1);
weekday = novemberFirst.getDay();
// if the first day of the month is a Tuesday
if (weekday == 1) {
// the election will be on the 8th
general = 8;
} else {
general = 1 + (((2 - weekday) + 7) % 7);
}
if (day == general) {
document.body.insertAdjacentHTML("afterbegin", generalMessage);
}
}
}
window.onload = checkDate
\ No newline at end of file
window.onload = checkDate