Commit 519e86b7 authored by Michael T Bailey's avatar Michael T Bailey

DELete aLL the tHINgs

parent f07d9c50
############################################################
# Dockerfile to build SRCTweb flask application
# Based on Ubuntu
############################################################
# Instructions:
#
# Build: sudo docker build -t srctweb .
# Run: sudo docker run -p 8000:80 -i -t -d srctweb
#
# You'll need to reverse proxy port 8000 via nginx
# Set the base image to Ubuntu
FROM ubuntu
# File Author / Maintainer
MAINTAINER Student-Run Computing and Technology - GMU
# Update the sources list
RUN apt-get update
# Install basic applications
RUN apt-get install -y tar git curl nano wget dialog net-tools build-essential
# Install Python and Basic Python Tools
RUN apt-get install -y python python-dev python-distribute python-pip
# Clone down SRCT-Web
RUN git clone https://github.com/srct/srctweb.git srctweb
# Get pip to download and install requirements:
RUN pip install -r /srctweb/requirements.txt
# Expose ports
EXPOSE 80
# Set the default directory where CMD will execute
WORKDIR /srctweb/srctweb
# Use Gunicorn to serve the application
CMD gunicorn srctweb:website -b 0.0.0.0:80
SRCTweb -- the homepage of Mason SRCT
Copyright (C) 2014 Mason SRCT
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
srct-general@lists.srct.gmu.edu
Mason SRCT
George Mason University
4400 University Drive MSN 2D6
Fairfax, VA 22030
You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
This is to be determined for the time being--
http://techtransfer.gmu.edu/
Yoyodyne, Inc., hereby disclaims all copyright
interest in the program `Gnomovision'
(which makes passes at compilers) written
by James Hacker.
signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary programs.
SRCTweb
===
Our own little site on the world wide web!
On Contributing
---
SRCTweb welcomes all the help it can get. Even if you don't feel like you can be helpful with the more technical aspects, we definitely need designers, technical writers, and testers.
There are many things that can be done with this project (see the "To Do" section), but sometimes it's the small things that count, so don't be afraid of contributing something as small as a spelling mistake.
If you need help, please contact a SRCT member. We want people to contribute, so if you are struggling, or just want to learn, we are more than willing to help.
The project lead for this project is **Daniel Bond**. *dbond2@gmu.edu*
Please visit the [SRCT Wiki](http://wiki.srct.gmu.edu/) for more information on this and other SRCT projects, along with other helpful links and tutorials.
Setup
---
To get started, you'll need the following installed:
* [Git](http://git-scm.com/book/en/Getting-Started-Installing-Git)
* [Python 2.7.3](http://www.python.org/download/)
* [Pip](http://www.pip-installer.org/en/latest/install.html)
* [virtualenv](http://www.virtualenv.org/en/latest/index.html#installation)
Open a terminal window and type in the following commands. (If you're on Windows, use [Cygwin](http://www.cygwin.com/). This will create a local, workable copy of the project.)
(set up pip and virtualenv)
```bash
bash
git clone git@git.gmu.edu:srct/srctweb.git
cd srctweb/
pip install -r requirements.txt
cd srctweb/
python srctweb.py
```
To-do
---
Note-- this should also be on the [wiki](http://wiki.srct.gmu.edu/)
**1.1 Release**
* Set up database for people, meeting date on index page, projects
* Figure out where to put a link to meeting notes
* Jeykll for meeting notes, finish hackmason (both not in this repository)
* Figure out parallaxjs for front page
* Figure out intellectual property with GMU
* Finish writing privacy policy
* Affix js for documents navigation-- example http://www.bootstrapzero.com/bootstrap-template/affix-sidebar
---
**S**tudent - **R**un **C**omputing and **T**echnology (*SRCT*, pronounced "circuit") is a student organization at George Mason University which enhances student computing at Mason. SRCT establishes and maintains systems which provide specific services for Mason's community.
#!flask/bin/python
import sys
from website import website
from website import freezer
if __name__ == '__main__': ## This is for debugging use only.
if len(sys.argv) > 1 and sys.argv[1] == "build":
freezer.freeze()
sys.exit();
website.run(debug=True)
## This is for execution via gunicorn.
# gunicorn command
# gunicorn srctweb:website -b 127.0.0.1:8001
from flask import Flask
from flask.ext.gravatar import Gravatar
from flask_frozen import Freezer
website = Flask(__name__)
freezer = Freezer(website)
from website import views
# initialize gravatar defaults
gravatar = Gravatar(website,
size = 80,
rating='g',
default='mm',
force_default=False,
use_ssl=True,
base_url=None)
body{padding-top:45px}
#banner{border-bottom:none}
.page-header h1{font-size:4em}
.bs-docs-section{margin-top:8em}
footer{margin:5em 0}footer li{float:left;margin-right:1.5em;margin-bottom:1.5em}
footer p{clear:left;margin-bottom:0}
.splash{background-color:#1c2533;background:-webkit-linear-gradient(70deg, #080f1f 30%, #2b4b5a 87%, #435e67 100%);background:-o-linear-gradient(70deg, #080f1f 30%, #2b4b5a 87%, #435e67 100%);background:-ms-linear-gradient(70deg, #080f1f 30%, #2b4b5a 87%, #435e67 100%);background:-moz-linear-gradient(70deg, #080f1f 30%, #2b4b5a 87%, #435e67 100%);background:linear-gradient(20deg, #080f1f 30%, #2b4b5a 87%, #435e67 100%);background-attachment:fixed;padding:6em 0 2em;color:#fff;text-align:center}.splash .alert{margin:4em 0 2em}
.splash h1{font-size:4em}
.splash #social{margin-top:6em}
.section-tout{padding:4em 0 3em;border-top:1px solid rgba(255,255,255,0.1);border-bottom:1px solid rgba(0,0,0,0.1);background-color:#eaf1f1}.section-tout .fa{margin-right:.5em}
.section-tout p{margin-bottom:3em}
.section-preview{padding:4em 0 4em}.section-preview .preview{margin-bottom:4em;background-color:#eaf1f1;border:1px solid rgba(0,0,0,0.1);border-radius:6px}.section-preview .preview .image{padding:5px}.section-preview .preview .image img{border:1px solid rgba(0,0,0,0.1)}
.section-preview .preview .options{text-align:center;padding:0 2em 2em}.section-preview .preview .options p{margin-bottom:2em}
.section-preview .dropdown-menu{text-align:left}
.section-preview .lead{margin-bottom:2em}
@media (max-width:767px){.section-preview .image img{width:100%}}
.bsa .one .bsa_it_ad{border:none !important;background-color:transparent !important}.bsa .one .bsa_it_ad .bsa_it_t,.bsa .one .bsa_it_ad .bsa_it_d{color:inherit !important}
.bsa .one .bsa_it_p{display:none}
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
/* Sticky footer styles */
/* The html and body elements cannot have any padding or margin. */
html,
body {
height:100%;
}
a[name] {
padding-top: 50px;
}
/* Wrapper for page content to push down footer */
#wrap {
min-height: 100%;
height: auto;
/* Negative indent footer by its height */
margin: 0 auto -100px;
/* Pad bottom by footer height */
padding: 0 0 130px;
}
/* Set the fixed height of the footer here */
#footer {
height: 100px;
background-color: #e4e6d7;
}
@font-face {
font-family: 'Xolonium';
src: url('../fonts/Xolonium-Regular.otf') format("opentype");
}
.xolonium {
font-family: Xolonium;
}
.srct-title {
color: white;
font-size: 1.72em;
text-shadow: 1px 1px 6px #333;
}
.jumbostyle {
background: url(/static/img/meeting.jpg) no-repeat;
background-size: cover;
background-position: 20%;
box-shadow: inset 0px 0px 20px #333;
padding-top: 100px;
padding-bottom: 100px;
}
.srctlogo {
width: 10px;
}
.smidge {
padding-bottom: 10px;
}
.smidgen {
padding-bottom: 5px;
}
/** People Page **/
.people-left {
padding-left:0;
padding-right:0;
}
.people-right {
padding-right:0;
padding-left:0;
}
.gravatar {
width:80px;
height:80px;
}
.devs tr > td:first-of-type, .devs2 tr > td:first-of-type {
width:50%;
}
#executive td {
vertical-align: middle;
}
@media(max-width:992px) {
#executive td:first-of-type, #executive th:first-of-type {
display:none;
}
.devs2 thead {
display: none;
}
.devs {
margin-bottom:0;
}
}
@media(min-width:992px){
.people-left {
padding-right:15px;
}
.people-right {
padding-left:15px;
}
}
/** Calendar Page **/
/**
* 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;
}
.googlecal-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
/** Projects Page **/
.project-entry {
margin-bottom:10px;
}
.project-icon {
text-align:center;
display: block;
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;
}
.project-link:hover, .project-link:active, .project-link:focus {
text-decoration: none;
outline:0;
}
.project-icon-stacked {
font-size:55px;
}
.project-role {
width: 150px;
display: inline-block;
color: #3c4042;
font-weight: bold;
display: inline-block;
text-align: left;
background: transparent;
font-size: 0.9em;
}
.project-text {
margin-top:10px;
padding-bottom:15px;
}
#banner {
/*background:#FBFCCA;*/
background: #e4e6d7;
/*background: #ffcc33;*/
/*background: #27AE60;*/
width: 100%;
margin-bottom: 15px;
}
.page-header {
margin-top:0;
border-bottom:none;
}
::,,
::::::,, ,,::,,
,,;;;;,, ::;;;;;;
,,,,;;;;:: ::::::'',,
,,,,;;;;::,, ,,::::::;;;;;
,,::;;;;:::: ,,;;::::;;;;;;'
,,,,::::;;;;;;::,, ,,::;;::;;;;;;;;;;'
::::;;::,,::::::::::::::::::::,,,,,,,,::::;;;;;;;;'';;;;
::::::::,,,,,,,,::::::::::::,,::::::::;;::::'';;;;''++'';;;;
::::::::::,,,,,,,,,,::::::::::::::,,,,,,::::;;;;''::;;''++++;;;;;;
::::::::,,,,,,,,,,,,,,,,::;;::::::::::::::::::::'';;;;;;''++'';;;;;;
::::,,,,,,,,,,,,....,,,,::::;;::::::::::::::::::::::;;'';;;;##++''::;;;;
::,,..,,,,,,,,,,......,,::;;::::::::::::::::::::::::,,;;;;##++++;;::;;,,
,,..,,....,,,,,,,,..,,::::::::::,,,,,,,,::::::::::::::::;;''++;;;;::'',,
,,....,,..,,,,..,,,,,,,,::::::::,,,,,,,,,,::;;::::::::::::::;;;;;;::''::::
,,,........,,####'',,,,::::::::,,,,,,,,,,,,::::::::::::::,,,,,,::;;;;;;;;::
........``..;;++++;;::,,,,,,::::,,,,,,,,,,,,,,::::::::::,,::,,,,,,::;;;;''::,
........``````;;++##++,,,,,,,,,,,,,,,,,,::++''::::::::::::::,,::,,,,,,::'';;,,
.......````....;;++++::,,,,,,,,,,::::::;;''``##@@;;;;::::::,,::::,,,,,,::;;'';;::
........````..,,,,::,,,,,,,,,,..,,::;;++##,,########;;::::,,,,::::,,,,,,::::;;;;::
......``````..,,,,..,,,,,,..,,,,,,,,::''++;;++##++;;,,,,,,,,,,,,,,,,,,::::::::::::
......``````........,,,,,,..,,,,,,::::::;;''::,,,,,,....,,,,,,,,,,,,,,,,,,::::::::
....``..``````..,,,,,,,,,,....,,,,,,::::::,,::,,,,,,,,........,,,,,,,,,,,,,,::::::
,,..``....``;;;;;;;;''::,,,,..,,,,,,,,,,,,::,,::,,,,,,......,,,,,,,,,,,,,,,,::::::
,,........::##########++''......,,,,,,,,,,..,,,,,,,,,,................,,,,,,,,::,,
,,......``,,@@++##@@####++........,,,,,,,,......,,,,................,,,,,,,,,,::::
,,....``..;;++######@@##'',,,,....,,,,,,................,,....,,,,,,,,,,,,,,::::::
,,........::++++######++;;,,::,,,,,,,,,,,,,,................,,,,,,,,,,,,,,::::::::
,,......,,;;''++####'';;::,,,,,,,,,,,,,,....,,,,,,....,,,,,,,,,,,,,,,,,,,,::::::::
,,......,,;;''++++++'';;::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::::
,,......,,;;''++++'';;::::::::,,::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::::
,,........,,++++######++;;::::::::::::::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::
,,........,,''++++++++####++::''++##++;;::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::
``........,,,,;;''++++++++++++'';;::::,,,,::,,,,,,,,,,,,,,,,,,,,,,,,,,,,:::::
``.......,,,,::;;;;;;::;;;;::;;;;::::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::::
``........,,,,,,::::::::::::::::,,,,,,,,,,,,,,,,,,,,,,..,,,,,,,,::::::::
``......,,,,,,,,,,,,,,,,,,,,,,,,,,,,::::,,,,,,,,,,,,,,,,,,,,,,:::::::::
`......,,,,,,,,,,,,,,::,,,,::::::::::,,,,,,,,,,,,,,,,,,,,,,,,::::::
,,,,,,,,,,,,,,,,,,,,,,,,::,,::::::::,,,,,,..,,,,,,,,,,,,,,::::
,,,,,,,,,,,,,,,,::,,,,::,,,,::,,,,,,..,,,,,,,,,,,,::,,::
,,,,,,,,,,,,,,,,,,::,,::::::,,,,,,,,,,,,,,,,,,
This source diff could not be displayed because it is too large. You can view the blob instead.
SRCT is the product of the many GMU students who make it happen, through
contributions large and small, constantly updating our code repositories. If
you'd like to help out too, check out srct.gmu.edu/contact.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
width="176.507px"
height="175.262px"
viewBox="0 0 176.507 175.262"
enable-background="new 0 0 176.507 175.262"
xml:space="preserve"
inkscape:version="0.48.4 r9939"
sodipodi:docname="SRCT_sq_white.svg"><metadata
id="metadata47"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
id="defs45"><filter
id="filter6462"
style="color-interpolation-filters:sRGB;"
inkscape:label="Drop Shadow"><feFlood
id="feFlood6464"
flood-opacity="0.3"
flood-color="rgb(0,0,0)"
result="flood" /><feComposite
id="feComposite6466"
in2="SourceGraphic"
in="flood"
operator="in"
result="composite1" /><feGaussianBlur
id="feGaussianBlur6468"
in="composite"
stdDeviation="4"
result="blur" /><feOffset
id="feOffset6470"
dx="2"
dy="2"
result="offset" /><feComposite
id="feComposite6472"
in2="offset"
in="SourceGraphic"
operator="over"
result="composite2" /></filter></defs><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="2560"
inkscape:window-height="1410"
id="namedview43"
showgrid="false"
inkscape:zoom="7.143591"
inkscape:cx="59.696436"
inkscape:cy="87.630997"
inkscape:window-x="0"
inkscape:window-y="30"
inkscape:window-maximized="1"
inkscape:current-layer="Layer_1" /><g
id="g6443"
style="filter:url(#filter6462)"><path
fill="#232A38"
stroke="#232A38"
stroke-width="2"
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="path7"
d="M24.741,76.15h40.872c2.16,0,4.32,0,4.32-3.313 V61.01c0-3.31-2.16-3.31-4.32-3.31H42.572c-8.64,0-17.281,0-17.281-12.774v-8.042c0-12.772,8.641-12.772,17.281-12.772h36.002 v10.408H41.851c-2.16,0-4.32,0-4.32,3.312v6.15c0,3.311,2.16,3.311,4.32,3.311h23.043c8.641,0,17.281,0,17.281,12.774v13.718 c0,12.774-8.641,12.774-17.281,12.774H25.126L24.741,76.15z"
stroke-miterlimit="10" /><path
fill="#232A38"
stroke="#232A38"
stroke-width="2"
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="path9"
d="M134.855,86.363l-19.441-25.469h-12.961v25.469 h-12.24V24.111h39.604c8.641,0,17.281,0,17.281,12.733v11.318c0,12.732-8.641,12.732-16.563,12.732l19.443,25.469H134.855z M130.535,50.519c2.16,0,4.32,0,4.32-3.301v-9.431c0-3.301-2.16-3.301-4.32-3.301h-28.082v16.033H130.535z"
stroke-miterlimit="10" /><path
fill="#232A38"
stroke="#232A38"
stroke-width="2"
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="path11"
d="M25.291,106.205 c0-11.326,8.642-11.326,17.283-11.326h36.002v9.229H41.853c-2.16,0-4.321,0-4.321,2.939v31.043c0,2.936,2.161,2.936,4.321,2.936 h36.723v9.232H42.574c-8.641,0-17.283,0-17.283-11.328V106.205z"
stroke-miterlimit="10" /><path
fill="#232A38"
stroke="#232A38"
stroke-width="2"
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="path13"
d="M89.493,94.879h60.763v9.229h-24.304v46.15 h-12.153v-46.15H89.493V94.879z"
stroke-miterlimit="10" /><path
sodipodi:nodetypes="csccccssccsssc"
style="fill:none;stroke:#ffffff;stroke-width:12.38400047000000015;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1;stroke-linecap:round"
inkscape:connector-curvature="0"
id="path17"
d="m 13.334,100.012 0,49.324 c 0,6.752 5.16,12.395 11.232,12.395 l 1.937,0 125.531,0 0,0 c 5.89,0 11.232,-5.434 11.232,-12.395 l 0,-123.925 c 0,-6.752 -5.16,-12.495 -11.232,-12.495 l 0,0 -126.743,0 c -5.889,0 -11.957,5.533 -11.957,12.495 l 0,44.444 c 0,6.753 5.016,11.502 11.088,11.502"
stroke-miterlimit="10" /></g></svg>
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
//============================================================
//
// The MIT License
//
// Copyright (C) 2014 Matthew Wagerfield - @mwagerfield
//
// Permission is hereby granted, free of charge, to any
// person obtaining a copy of this software and associated
// documentation files (the "Software"), to deal in the
// Software without restriction, including without limitation
// the rights to use, copy, modify, merge, publish, distribute,
// sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do
// so, subject to the following conditions:
//
// The above copyright notice and this permission notice
// shall be included in all copies or substantial portions
// of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY
// OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
// EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
// AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
// OR OTHER DEALINGS IN THE SOFTWARE.
//
//============================================================
(function(t,i,e){"use strict";function s(t,i){this.element=t,this.layers=t.getElementsByClassName("layer");var e={calibrateX:this.data(this.element,"calibrate-x"),calibrateY:this.data(this.element,"calibrate-y"),invertX:this.data(this.element,"invert-x"),invertY:this.data(this.element,"invert-y"),limitX:this.data(this.element,"limit-x"),limitY:this.data(this.element,"limit-y"),scalarX:this.data(this.element,"scalar-x"),scalarY:this.data(this.element,"scalar-y"),frictionX:this.data(this.element,"friction-x"),frictionY:this.data(this.element,"friction-y")};for(var s in e)null===e[s]&&delete e[s];this.extend(this,a,i,e),this.calibrationTimer=null,this.calibrationFlag=!0,this.enabled=!1,this.depths=[],this.raf=null,this.ox=0,this.oy=0,this.ow=0,this.oh=0,this.cx=0,this.cy=0,this.ix=0,this.iy=0,this.mx=0,this.my=0,this.vx=0,this.vy=0,this.onMouseMove=this.onMouseMove.bind(this),this.onDeviceOrientation=this.onDeviceOrientation.bind(this),this.onOrientationTimer=this.onOrientationTimer.bind(this),this.onCalibrationTimer=this.onCalibrationTimer.bind(this),this.onAnimationFrame=this.onAnimationFrame.bind(this),this.onWindowResize=this.onWindowResize.bind(this),this.initialise()}var o="Parallax",n=30,a={calibrationThreshold:100,calibrationDelay:500,supportDelay:500,calibrateX:!1,calibrateY:!0,invertX:!0,invertY:!0,limitX:!1,limitY:!1,scalarX:10,scalarY:10,frictionX:.1,frictionY:.1};s.prototype.extend=function(){if(arguments.length>1)for(var t=arguments[0],i=1,e=arguments.length;e>i;i++){var s=arguments[i];for(var o in s)t[o]=s[o]}},s.prototype.data=function(t,i){return this.deserialize(t.getAttribute("data-"+i))},s.prototype.deserialize=function(t){return"true"===t?!0:"false"===t?!1:"null"===t?null:!isNaN(parseFloat(t))&&isFinite(t)?parseFloat(t):t},s.prototype.offset=function(t){for(var e,s,o=0,n=0;t&&!isNaN(t.offsetLeft)&&!isNaN(t.offsetTop);)t===i.body?(e=i.documentElement.scrollLeft,s=i.documentElement.scrollTop):(e=t.scrollLeft,s=t.scrollTop),o+=t.offsetLeft-e,n+=t.offsetTop-s,t=t.offsetParent;return{top:n,left:o}},s.prototype.camelCase=function(t){return t.replace(/-+(.)?/g,function(t,i){return i?i.toUpperCase():""})},s.prototype.transformSupport=function(s){for(var o=i.createElement("div"),n=!1,a=null,r=!1,h=null,l=null,p=0,m=this.vendors.length;m>p;p++)if(null!==this.vendors[p]?(h=this.vendors[p][0]+"transform",l=this.vendors[p][1]+"Transform"):(h="transform",l="transform"),o.style[l]!==e){n=!0;break}switch(s){case"2D":r=n;break;case"3D":n&&(i.body.appendChild(o),o.style[l]="translate3d(1px,1px,1px)",a=t.getComputedStyle(o).getPropertyValue(h),r=a!==e&&a.length>0&&"none"!==a,i.body.removeChild(o))}return r},s.prototype.ww=null,s.prototype.wh=null,s.prototype.hw=null,s.prototype.hh=null,s.prototype.portrait=null,s.prototype.desktop=!navigator.userAgent.match(/(iPhone|iPod|iPad|Android|BlackBerry|BB10|mobi|tablet|opera mini|nexus 7)/i),s.prototype.vendors=[null,["-webkit-","webkit"],["-moz-","Moz"],["-o-","O"],["-ms-","ms"]],s.prototype.motionSupport=!!t.DeviceMotionEvent,s.prototype.orientationSupport=!!t.DeviceOrientationEvent,s.prototype.orientationStatus=0,s.prototype.transform2DSupport=s.prototype.transformSupport("2D"),s.prototype.transform3DSupport=s.prototype.transformSupport("3D"),s.prototype.initialise=function(){this.transform3DSupport&&this.accelerate(this.element);var i=t.getComputedStyle(this.element);"static"===i.getPropertyValue("position")&&(this.element.style.position="relative");for(var e=0,s=this.layers.length;s>e;e++){var o=this.layers[e];this.transform3DSupport&&this.accelerate(o),o.style.position=e?"absolute":"relative",o.style.display="block",o.style.height="100%",o.style.width="100%",o.style.left=0,o.style.top=0,this.depths.push(this.data(o,"depth")||0)}this.updateDimensions(),this.enable(),this.queueCalibration(this.calibrationDelay)},s.prototype.updateDimensions=function(){this.ox=this.offset(this.element).left,this.oy=this.offset(this.element).top,this.ow=this.element.offsetWidth,this.oh=this.element.offsetHeight,this.ww=t.innerWidth,this.wh=t.innerHeight,this.hw=this.ww/2,this.hh=this.wh/2},s.prototype.queueCalibration=function(t){clearTimeout(this.calibrationTimer),this.calibrationTimer=setTimeout(this.onCalibrationTimer,t)},s.prototype.enable=function(){this.enabled||(this.enabled=!0,this.orientationSupport?(this.portrait=null,t.addEventListener("deviceorientation",this.onDeviceOrientation),setTimeout(this.onOrientationTimer,this.supportDelay)):(this.cx=0,this.cy=0,this.portrait=!1,t.addEventListener("mousemove",this.onMouseMove)),t.addEventListener("resize",this.onWindowResize),this.raf=requestAnimationFrame(this.onAnimationFrame))},s.prototype.disable=function(){this.enabled&&(this.enabled=!1,this.orientationSupport?t.removeEventListener("deviceorientation",this.onDeviceOrientation):t.removeEventListener("mousemove",this.onMouseMove),t.removeEventListener("resize",this.onWindowResize),cancelAnimationFrame(this.raf))},s.prototype.calibrate=function(t,i){this.calibrateX=t===e?this.calibrateX:t,this.calibrateY=i===e?this.calibrateY:i},s.prototype.invert=function(t,i){this.invertX=t===e?this.invertX:t,this.invertY=i===e?this.invertY:i},s.prototype.friction=function(t,i){this.frictionX=t===e?this.frictionX:t,this.frictionY=i===e?this.frictionY:i},s.prototype.scalar=function(t,i){this.scalarX=t===e?this.scalarX:t,this.scalarY=i===e?this.scalarY:i},s.prototype.limit=function(t,i){this.limitX=t===e?this.limitX:t,this.limitY=i===e?this.limitY:i},s.prototype.clamp=function(t,i,e){return t=Math.max(t,i),t=Math.min(t,e)},s.prototype.css=function(t,i,s){for(var o=null,n=0,a=this.vendors.length;a>n;n++)if(o=null!==this.vendors[n]?this.camelCase(this.vendors[n][1]+"-"+i):i,t.style[o]!==e){t.style[o]=s;break}},s.prototype.accelerate=function(t){this.css(t,"transform","translate3d(0,0,0)"),this.css(t,"transform-style","preserve-3d"),this.css(t,"backface-visibility","hidden")},s.prototype.setPosition=function(t,i,e){i+="%",e+="%",this.transform3DSupport?this.css(t,"transform","translate3d("+i+","+e+",0)"):this.transform2DSupport?this.css(t,"transform","translate("+i+","+e+")"):(t.style.left=i,t.style.top=e)},s.prototype.onOrientationTimer=function(){this.orientationSupport&&0===this.orientationStatus&&(this.disable(),this.orientationSupport=!1,this.enable())},s.prototype.onCalibrationTimer=function(){this.calibrationFlag=!0},s.prototype.onWindowResize=function(){this.updateDimensions()},s.prototype.onAnimationFrame=function(){var t=this.ix-this.cx,i=this.iy-this.cy;(Math.abs(t)>this.calibrationThreshold||Math.abs(i)>this.calibrationThreshold)&&this.queueCalibration(0),this.portrait?(this.mx=(this.calibrateX?i:this.iy)*this.scalarX,this.my=(this.calibrateY?t:this.ix)*this.scalarY):(this.mx=(this.calibrateX?t:this.ix)*this.scalarX,this.my=(this.calibrateY?i:this.iy)*this.scalarY),isNaN(parseFloat(this.limitX))||(this.mx=this.clamp(this.mx,-this.limitX,this.limitX)),isNaN(parseFloat(this.limitY))||(this.my=this.clamp(this.my,-this.limitY,this.limitY)),this.vx+=(this.mx-this.vx)*this.frictionX,this.vy+=(this.my-this.vy)*this.frictionY;for(var e=0,s=this.layers.length;s>e;e++){var o=this.layers[e],n=this.depths[e],a=this.vx*n*(this.invertX?-1:1),r=this.vy*n*(this.invertY?-1:1);this.setPosition(o,a,r)}this.raf=requestAnimationFrame(this.onAnimationFrame)},s.prototype.onDeviceOrientation=function(t){if(!this.desktop&&null!==t.beta&&null!==t.gamma){this.orientationStatus=1;var i=(t.beta||0)/n,e=(t.gamma||0)/n,s=this.wh>this.ww;this.portrait!==s&&(this.portrait=s,this.calibrationFlag=!0),this.calibrationFlag&&(this.calibrationFlag=!1,this.cx=i,this.cy=e),this.ix=i,this.iy=e}},s.prototype.onMouseMove=function(t){this.ix=(t.pageX-this.hw)/this.hw,this.iy=(t.pageY-this.hh)/this.hh},t[o]=s})(window,document),function(){for(var t=0,i=["ms","moz","webkit","o"],e=0;i.length>e&&!window.requestAnimationFrame;++e)window.requestAnimationFrame=window[i[e]+"RequestAnimationFrame"],window.cancelAnimationFrame=window[i[e]+"CancelAnimationFrame"]||window[i[e]+"CancelRequestAnimationFrame"];window.requestAnimationFrame||(window.requestAnimationFrame=function(i){var e=(new Date).getTime(),s=Math.max(0,16-(e-t)),o=window.setTimeout(function(){i(e+s)},s);return t=e+s,o}),window.cancelAnimationFrame||(window.cancelAnimationFrame=function(t){clearTimeout(t)})}();
This diff is collapsed.
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="167.512px" height="166.341px" viewBox="0 0 167.512 166.341" enable-background="new 0 0 167.512 166.341"
xml:space="preserve">
<g>
<defs>
<filter id="Adobe_OpacityMaskFilter" filterUnits="userSpaceOnUse" x="3.003" y="19.473" width="145.191" height="128.147">
<feColorMatrix type="matrix" values="-1 0 0 0 1 0 -1 0 0 1 0 0 -1 0 1 0 0 0 1 0" color-interpolation-filters="sRGB" result="source"/>
<feFlood style="flood-color:white;flood-opacity:1" result="back"/>
<feBlend in="source" in2="back" mode="normal"/>
</filter>
</defs>
<mask maskUnits="userSpaceOnUse" x="3.003" y="19.473" width="145.191" height="128.147" id="SVGID_1_">
<g filter="url(#Adobe_OpacityMaskFilter)">
<g>
<text transform="matrix(0.8849 0 0 1 55.0654 160.4102)" fill="#FFFFFF" font-family="'Xolonium-Bold'" font-size="8.7214">srct.gmu.edu</text>
</g>
</g>
</mask>
<g mask="url(#SVGID_1_)">
<path fill="#232A38" stroke="#232A38" stroke-width="2" stroke-miterlimit="10" d="M21.142,69.849h37.987
c2.034,0,4.069,0,4.069-3.143V55.484c0-3.141-2.035-3.141-4.069-3.141H37.422c-8.14,0-16.28,0-16.28-12.12v-7.631
c0-12.119,8.14-12.119,16.28-12.119h37.005v9.875H36.743c-2.034,0-4.069,0-4.069,3.142v5.835c0,3.142,2.035,3.142,4.069,3.142
h21.709c8.14,0,16.279,0,16.279,12.121v13.016c0,12.121-8.14,12.121-16.279,12.121h-37.31V69.849z"/>
<path fill="#232A38" stroke="#232A38" stroke-width="2" stroke-miterlimit="10" d="M130.987,79.726l-19.441-24.243H98.585v24.243
h-12.24V20.473h39.604c8.641,0,17.281,0,17.281,12.119v10.773c0,12.118-8.641,12.118-16.563,12.118l19.443,24.243H130.987z
M126.667,45.607c2.16,0,4.32,0,4.32-3.141V33.49c0-3.142-2.16-3.142-4.32-3.142H98.585v15.26H126.667z"/>
<path fill="#232A38" stroke="#232A38" stroke-width="2" stroke-miterlimit="10" d="M21.142,100.168
c0-11.943,8.642-11.943,17.283-11.943h36.002v9.732H37.704c-2.16,0-4.321,0-4.321,3.098v32.734c0,3.096,2.161,3.096,4.321,3.096
h36.723v9.734H38.425c-8.641,0-17.283,0-17.283-11.943V100.168z"/>
<path fill="#232A38" stroke="#232A38" stroke-width="2" stroke-miterlimit="10" d="M86.345,88.225h60.763v9.732h-24.304v48.662
H110.65V97.958H86.345V88.225z"/>
<ellipse fill="#232A38" cx="8.936" cy="96.088" rx="5.933" ry="6.148"/>
</g>
<path fill="none" stroke="#242A38" stroke-width="11.808" stroke-miterlimit="10" d="M8.936,96.106v49.324
c0,6.75,5.16,12.393,11.232,12.393h-0.063h127.531l0,0c5.89,0,11.232-5.432,11.232-12.393V21.504
c0-6.752-5.16-12.495-11.232-12.495l0,0H20.892c-5.889,0-11.957,5.533-11.957,12.495v40.413c0,6.753,6.134,12.906,12.207,12.906"/>
</g>
</svg>
User-agent: Googlebot
Disallow:
User-agent: msnbot
Disallow:
User-agent: DuckDuckBot
Disallow:
User-agent: slurp