Merged in master branch

This commit is contained in:
Bridger Maxwell
2012-03-25 15:05:37 -04:00
62 changed files with 1653 additions and 1293 deletions

View File

@@ -11,10 +11,11 @@ from lxml import etree
try: # This lets us do __name__ == ='__main__' try: # This lets us do __name__ == ='__main__'
from django.conf import settings from django.conf import settings
from django.core.cache import cache
from student.models import UserProfile from student.models import UserProfile
from student.models import UserTestGroup from student.models import UserTestGroup
from mitxmako.shortcuts import render_to_response, render_to_string from mitxmako.shortcuts import render_to_response, render_to_string
from util.cache import cache
except: except:
settings = None settings = None
@@ -157,10 +158,7 @@ def user_groups(user):
cache_expiration = 60 * 60 # one hour cache_expiration = 60 * 60 # one hour
# Kill caching on dev machines -- we switch groups a lot # Kill caching on dev machines -- we switch groups a lot
if "dev" not in settings.DEFAULT_GROUPS: group_names = cache.get(fasthash(key))
group_names = cache.get(fasthash(key))
else:
group_names = None
if group_names is None: if group_names is None:
group_names = [u.name for u in UserTestGroup.objects.filter(users=user)] group_names = [u.name for u in UserTestGroup.objects.filter(users=user)]
@@ -194,7 +192,11 @@ def course_file(user):
cache_key = filename + "_processed?dev_content:" + str(options['dev_content']) + "&groups:" + str(sorted(groups)) cache_key = filename + "_processed?dev_content:" + str(options['dev_content']) + "&groups:" + str(sorted(groups))
tree_string = cache.get(fasthash(cache_key)) if "dev" not in settings.DEFAULT_GROUPS:
tree_string = cache.get(fasthash(cache_key))
else:
tree_string = None
if not tree_string: if not tree_string:
tree = course_xml_process(etree.XML(render_to_string(filename, options, namespace = 'course'))) tree = course_xml_process(etree.XML(render_to_string(filename, options, namespace = 'course')))
tree_string = etree.tostring(tree) tree_string = etree.tostring(tree)

View File

@@ -3,7 +3,6 @@ import os
from django import forms from django import forms
from django.contrib.auth.models import User from django.contrib.auth.models import User
from django.core.cache import cache
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
from django.db import models from django.db import models
from django.db.models import signals from django.db.models import signals
@@ -11,6 +10,8 @@ from django.utils.translation import ugettext_lazy as _
from markdown import markdown from markdown import markdown
from settings import * from settings import *
from util.cache import cache
class ShouldHaveExactlyOneRootSlug(Exception): class ShouldHaveExactlyOneRootSlug(Exception):
pass pass

16
lib/util/cache.py Normal file
View File

@@ -0,0 +1,16 @@
"""
This module aims to give a little more fine-tuned control of caching and cache
invalidation. Import these instead of django.core.cache.
Note that 'default' is being preserved for user session caching, which we're
not migrating so as not to inconvenience users by logging them all out.
"""
from django.core import cache
# If we can't find a 'general' CACHE defined in settings.py, we simply fall back
# to returning the default cache. This will happen with dev machines.
try:
cache = cache.get_cache('general')
except ValueError:
cache = cache.cache

1
pre-requirements.txt Normal file
View File

@@ -0,0 +1 @@
numpy

50
rakefile Normal file
View File

@@ -0,0 +1,50 @@
require 'rake/clean'
require 'tempfile'
REPO_ROOT = File.dirname(__FILE__)
BUILD_DIR = File.join(REPO_ROOT, "build")
CLOBBER.include('build')
CLEAN.include("#{BUILD_DIR}/*.deb")
task :package do
commit = (ENV["GIT_COMMIT"] || `git rev-parse HEAD`).chomp()
branch = (ENV["GIT_BRANCH"] || `git symbolic-ref -q HEAD`).chomp()
branch = branch.gsub('refs/heads/', '').gsub('origin/', '').gsub('/', '_')
build_number = (ENV["BUILD_NUMBER"] || "dev").chomp()
if branch == "master"
package_name = "mitx"
else
package_name = "mitx-#{branch}"
end
FileUtils.mkdir_p(BUILD_DIR)
Dir.chdir(BUILD_DIR) do
args = ["fakeroot", "fpm", "-s", "dir", "-t", "deb",
"--exclude=build",
"--exclude=rakefile",
"--exclude=.git",
"--prefix=/opt/wwc/mitx-#{commit}",
"--depends=python-mysqldb",
"--depends=python-django",
"--depends=python-pip",
"--depends=python-flup",
"--depends=python-numpy",
"--depends=python-scipy",
"--depends=python-matplotlib",
"--depends=python-libxml2",
"--depends=python2.7-dev",
"--depends=libxml2-dev",
"--depends=libxslt-dev",
"--depends=python-markdown",
"--depends=python-pygments",
"--depends=mysql-client",
"--name=#{package_name}-#{commit}",
"--version=0.1",
"--iteration=#{build_number}",
"-a", "all",
"#{REPO_ROOT}"]
system(*args) || raise("fpm failed to build the .deb")
end
end

14
requirements.txt Normal file
View File

@@ -0,0 +1,14 @@
django
pip
flup
scipy
matplotlib
markdown
pygments
django-mako
django-ses
lxml
boto
mako
python-memcached
django-celery

View File

@@ -166,8 +166,17 @@ MAKO_TEMPLATES = {}
LOGGING_ENV = "dev" # override this in different environments LOGGING_ENV = "dev" # override this in different environments
# Default dev cache (i.e. no caching)
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.dummy.DummyCache',
}
}
# Make sure we execute correctly regardless of where we're called from # Make sure we execute correctly regardless of where we're called from
execfile(os.path.join(BASE_DIR, "settings.py")) override_settings = os.path.join(BASE_DIR, "settings.py")
if os.path.isfile(override_settings):
execfile(override_settings)
# A sample logging configuration. The only tangible logging # A sample logging configuration. The only tangible logging
# performed by this configuration is to send an email to # performed by this configuration is to send an email to
@@ -448,7 +457,7 @@ LIVESETTINGS_OPTIONS = {
'MIN_TITLE_LENGTH' : 1, 'MIN_TITLE_LENGTH' : 1,
'MIN_QUESTION_BODY_LENGTH' : 1, 'MIN_QUESTION_BODY_LENGTH' : 1,
'MIN_ANSWER_BODY_LENGTH' : 1, 'MIN_ANSWER_BODY_LENGTH' : 1,
'WIKI_ON' : True, 'WIKI_ON' : False,
'ALLOW_ASK_ANONYMOUSLY' : True, 'ALLOW_ASK_ANONYMOUSLY' : True,
'ALLOW_POSTING_BEFORE_LOGGING_IN' : False, 'ALLOW_POSTING_BEFORE_LOGGING_IN' : False,
'ALLOW_SWAPPING_QUESTION_WITH_ANSWER' : False, 'ALLOW_SWAPPING_QUESTION_WITH_ANSWER' : False,
@@ -541,16 +550,16 @@ LIVESETTINGS_OPTIONS = {
'MIN_REP' : { 'MIN_REP' : {
'MIN_REP_TO_ACCEPT_OWN_ANSWER' : 1, 'MIN_REP_TO_ACCEPT_OWN_ANSWER' : 1,
'MIN_REP_TO_ANSWER_OWN_QUESTION' : 1, 'MIN_REP_TO_ANSWER_OWN_QUESTION' : 1,
'MIN_REP_TO_CLOSE_OTHERS_QUESTIONS' : 250, 'MIN_REP_TO_CLOSE_OTHERS_QUESTIONS' : 1200,
'MIN_REP_TO_CLOSE_OWN_QUESTIONS' : 1, 'MIN_REP_TO_CLOSE_OWN_QUESTIONS' : 1,
'MIN_REP_TO_DELETE_OTHERS_COMMENTS' : 2000, 'MIN_REP_TO_DELETE_OTHERS_COMMENTS' : 5000,
'MIN_REP_TO_DELETE_OTHERS_POSTS' : 5000, 'MIN_REP_TO_DELETE_OTHERS_POSTS' : 10000,
'MIN_REP_TO_EDIT_OTHERS_POSTS' : 2000, 'MIN_REP_TO_EDIT_OTHERS_POSTS' : 5000,
'MIN_REP_TO_EDIT_WIKI' : 50, 'MIN_REP_TO_EDIT_WIKI' : 200,
'MIN_REP_TO_FLAG_OFFENSIVE' : 1, 'MIN_REP_TO_FLAG_OFFENSIVE' : 1,
'MIN_REP_TO_HAVE_STRONG_URL' : 250, 'MIN_REP_TO_HAVE_STRONG_URL' : 250,
'MIN_REP_TO_LEAVE_COMMENTS' : 1, 'MIN_REP_TO_LEAVE_COMMENTS' : 1,
'MIN_REP_TO_LOCK_POSTS' : 4000, 'MIN_REP_TO_LOCK_POSTS' : 10000,
'MIN_REP_TO_REOPEN_OWN_QUESTIONS' : 1, 'MIN_REP_TO_REOPEN_OWN_QUESTIONS' : 1,
'MIN_REP_TO_RETAG_OTHERS_QUESTIONS' : 100, 'MIN_REP_TO_RETAG_OTHERS_QUESTIONS' : 100,
'MIN_REP_TO_UPLOAD_FILES' : 1, 'MIN_REP_TO_UPLOAD_FILES' : 1,

File diff suppressed because one or more lines are too long

View File

@@ -6,8 +6,5 @@ body {
margin: 0; margin: 0;
overflow: hidden; } overflow: hidden; }
div#enroll p.ie-warning {
display: block !important;
line-height: 1.3em; }
div#enroll form { div#enroll form {
display: none; } display: none; }

View File

@@ -5,7 +5,18 @@ Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark Twitter: @rich_clark
*/ */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin: 0; margin: 0;
padding: 0; padding: 0;
border: 0; border: 0;
@@ -17,7 +28,8 @@ html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pr
body { body {
line-height: 1; } line-height: 1; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block; } display: block; }
nav ul { nav ul {
@@ -26,7 +38,8 @@ nav ul {
blockquote, q { blockquote, q {
quotes: none; } quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { blockquote:before, blockquote:after,
q:before, q:after {
content: ''; content: '';
content: none; } content: none; }
@@ -119,8 +132,6 @@ input, select {
.wrapper, .subpage, section.copyright, section.tos, section.privacy-policy, section.honor-code, header.announcement div, footer, section.index-content { .wrapper, .subpage, section.copyright, section.tos, section.privacy-policy, section.honor-code, header.announcement div, footer, section.index-content {
-webkit-box-sizing: border-box; -webkit-box-sizing: border-box;
-moz-box-sizing: border-box; -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
box-sizing: border-box; box-sizing: border-box;
margin: 0 auto; margin: 0 auto;
max-width: 1400px; max-width: 1400px;
@@ -129,27 +140,27 @@ input, select {
.subpage > div, section.copyright > div, section.tos > div, section.privacy-policy > div, section.honor-code > div { .subpage > div, section.copyright > div, section.tos > div, section.privacy-policy > div, section.honor-code > div {
padding-left: 34.171%; } padding-left: 34.171%; }
@media screen and (max-width: 940px) { @media screen and (max-width: 940px) {
.subpage > div, section.copyright > div, section.tos > div, section.privacy-policy > div, section.honor-code > div { .subpage > div, section.copyright > div, section.tos > div, section.privacy-policy > div, section.honor-code > div {
padding-left: 0; } } padding-left: 0; } }
.subpage > div p, section.copyright > div p, section.tos > div p, section.privacy-policy > div p, section.honor-code > div p { .subpage > div p, section.copyright > div p, section.tos > div p, section.privacy-policy > div p, section.honor-code > div p {
margin-bottom: 25.888px; margin-bottom: 25.888px;
line-height: 25.888px; } line-height: 25.888px; }
.subpage > div h1, section.copyright > div h1, section.tos > div h1, section.privacy-policy > div h1, section.honor-code > div h1 { .subpage > div h1, section.copyright > div h1, section.tos > div h1, section.privacy-policy > div h1, section.honor-code > div h1 {
margin-bottom: 12.944px; } margin-bottom: 12.944px; }
.subpage > div h2, section.copyright > div h2, section.tos > div h2, section.privacy-policy > div h2, section.honor-code > div h2 { .subpage > div h2, section.copyright > div h2, section.tos > div h2, section.privacy-policy > div h2, section.honor-code > div h2 {
font: 18px "Open Sans", Helvetica, Arial, sans-serif; font: 18px "Open Sans", Helvetica, Arial, sans-serif;
color: #000; color: #000;
margin-bottom: 12.944px; } margin-bottom: 12.944px; }
.subpage > div ul, section.copyright > div ul, section.tos > div ul, section.privacy-policy > div ul, section.honor-code > div ul { .subpage > div ul, section.copyright > div ul, section.tos > div ul, section.privacy-policy > div ul, section.honor-code > div ul {
list-style: disc outside none; } list-style: disc outside none; }
.subpage > div ul li, section.copyright > div ul li, section.tos > div ul li, section.privacy-policy > div ul li, section.honor-code > div ul li { .subpage > div ul li, section.copyright > div ul li, section.tos > div ul li, section.privacy-policy > div ul li, section.honor-code > div ul li {
list-style: disc outside none; list-style: disc outside none;
line-height: 25.888px; } line-height: 25.888px; }
.subpage > div dl, section.copyright > div dl, section.tos > div dl, section.privacy-policy > div dl, section.honor-code > div dl { .subpage > div dl, section.copyright > div dl, section.tos > div dl, section.privacy-policy > div dl, section.honor-code > div dl {
margin-bottom: 25.888px; } margin-bottom: 25.888px; }
.subpage > div dl dd, section.copyright > div dl dd, section.tos > div dl dd, section.privacy-policy > div dl dd, section.honor-code > div dl dd { .subpage > div dl dd, section.copyright > div dl dd, section.tos > div dl dd, section.privacy-policy > div dl dd, section.honor-code > div dl dd {
margin-bottom: 12.944px; } margin-bottom: 12.944px; }
.clearfix:after, .subpage:after, section.copyright:after, section.tos:after, section.privacy-policy:after, section.honor-code:after, header.announcement div section:after, footer:after, section.index-content:after, section.index-content section:after, section.index-content section.about section:after, div.leanModal_box#enroll ol:after { .clearfix:after, .subpage:after, section.copyright:after, section.tos:after, section.privacy-policy:after, section.honor-code:after, header.announcement div section:after, footer:after, section.index-content:after, section.index-content section:after, section.index-content section.about section:after, div.leanModal_box#enroll ol:after {
content: "."; content: ".";
@@ -200,16 +211,14 @@ input, select {
font-style: normal; font-style: normal;
-webkit-box-shadow: inset 0 1px 0 #b83d3d; -webkit-box-shadow: inset 0 1px 0 #b83d3d;
-moz-box-shadow: inset 0 1px 0 #b83d3d; -moz-box-shadow: inset 0 1px 0 #b83d3d;
-ms-box-shadow: inset 0 1px 0 #b83d3d;
-o-box-shadow: inset 0 1px 0 #b83d3d;
box-shadow: inset 0 1px 0 #b83d3d; box-shadow: inset 0 1px 0 #b83d3d;
-webkit-font-smoothing: antialiased; } -webkit-font-smoothing: antialiased; }
.button:hover, header.announcement div section.course section a:hover, section.index-content section.course a:hover, section.index-content section.staff a:hover, section.index-content section.about-course section.cta a.enroll:hover { .button:hover, header.announcement div section.course section a:hover, section.index-content section.course a:hover, section.index-content section.staff a:hover, section.index-content section.about-course section.cta a.enroll:hover {
background-color: #732626; background-color: #732626;
border-color: #4d1919; } border-color: #4d1919; }
.button span, header.announcement div section.course section a span, section.index-content section.course a span, section.index-content section.staff a span, section.index-content section.about-course section.cta a.enroll span { .button span, header.announcement div section.course section a span, section.index-content section.course a span, section.index-content section.staff a span, section.index-content section.about-course section.cta a.enroll span {
font-family: Garamond, Baskerville, "Baskerville Old Face", "Hoefler Text", "Times New Roman", serif; font-family: Garamond, Baskerville, "Baskerville Old Face", "Hoefler Text", "Times New Roman", serif;
font-style: italic; } font-style: italic; }
p.ie-warning { p.ie-warning {
display: block !important; display: block !important;
@@ -222,39 +231,37 @@ body {
background-color: #fff; background-color: #fff;
color: #444; color: #444;
font: 16px Georgia, serif; } font: 16px Georgia, serif; }
body :focus { body :focus {
outline-color: #ccc; } outline-color: #ccc; }
body h1 { body h1 {
font: 800 24px "Open Sans", Helvetica, Arial, sans-serif; } font: 800 24px "Open Sans", Helvetica, Arial, sans-serif; }
body li { body li {
margin-bottom: 25.888px; } margin-bottom: 25.888px; }
body em { body em {
font-style: italic; } font-style: italic; }
body a { body a {
color: #993333; color: #993333;
font-style: italic; font-style: italic;
text-decoration: none; } text-decoration: none; }
body a:hover, body a:focus { body a:hover, body a:focus {
color: #732626; } color: #732626; }
body input[type="email"], body input[type="number"], body input[type="password"], body input[type="search"], body input[type="tel"], body input[type="text"], body input[type="url"], body input[type="color"], body input[type="date"], body input[type="datetime"], body input[type="datetime-local"], body input[type="month"], body input[type="time"], body input[type="week"], body textarea { body input[type="email"], body input[type="number"], body input[type="password"], body input[type="search"], body input[type="tel"], body input[type="text"], body input[type="url"], body input[type="color"], body input[type="date"], body input[type="datetime"], body input[type="datetime-local"], body input[type="month"], body input[type="time"], body input[type="week"], body textarea {
-webkit-box-shadow: 0 -1px 0 white; -webkit-box-shadow: 0 -1px 0 white;
-moz-box-shadow: 0 -1px 0 white; -moz-box-shadow: 0 -1px 0 white;
-ms-box-shadow: 0 -1px 0 white; box-shadow: 0 -1px 0 white;
-o-box-shadow: 0 -1px 0 white; background-color: #eeeeee;
box-shadow: 0 -1px 0 white; background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #eeeeee), color-stop(100%, white));
background-color: #eeeeee; background-image: -webkit-linear-gradient(top, #eeeeee, white);
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #eeeeee), color-stop(100%, white)); background-image: -moz-linear-gradient(top, #eeeeee, white);
background-image: -webkit-linear-gradient(top, #eeeeee, white); background-image: -ms-linear-gradient(top, #eeeeee, white);
background-image: -moz-linear-gradient(top, #eeeeee, white); background-image: -o-linear-gradient(top, #eeeeee, white);
background-image: -ms-linear-gradient(top, #eeeeee, white); background-image: linear-gradient(top, #eeeeee, white);
background-image: -o-linear-gradient(top, #eeeeee, white); border: 1px solid #999;
background-image: linear-gradient(top, #eeeeee, white); font: 16px Georgia, serif;
border: 1px solid #999; padding: 4px;
font: 16px Georgia, serif; width: 100%; }
padding: 4px; body input[type="email"]:focus, body input[type="number"]:focus, body input[type="password"]:focus, body input[type="search"]:focus, body input[type="tel"]:focus, body input[type="text"]:focus, body input[type="url"]:focus, body input[type="color"]:focus, body input[type="date"]:focus, body input[type="datetime"]:focus, body input[type="datetime-local"]:focus, body input[type="month"]:focus, body input[type="time"]:focus, body input[type="week"]:focus, body textarea:focus {
width: 100%; } border-color: #993333; }
body input[type="email"]:focus, body input[type="number"]:focus, body input[type="password"]:focus, body input[type="search"]:focus, body input[type="tel"]:focus, body input[type="text"]:focus, body input[type="url"]:focus, body input[type="color"]:focus, body input[type="date"]:focus, body input[type="datetime"]:focus, body input[type="datetime-local"]:focus, body input[type="month"]:focus, body input[type="time"]:focus, body input[type="week"]:focus, body textarea:focus {
border-color: #993333; }
header.announcement { header.announcement {
-webkit-background-size: cover; -webkit-background-size: cover;
@@ -266,480 +273,474 @@ header.announcement {
border-bottom: 1px solid #000; border-bottom: 1px solid #000;
color: #fff; color: #fff;
-webkit-font-smoothing: antialiased; } -webkit-font-smoothing: antialiased; }
header.announcement.home {
background: #e3e3e3 url("/static/images/marketing/shot-5-medium.jpg"); }
@media screen and (min-width: 1200px) {
header.announcement.home { header.announcement.home {
background: #e3e3e3 url("/static/images/marketing/shot-5-large.jpg"); } } background: #e3e3e3 url("/static/images/marketing/shot-5-medium.jpg"); }
header.announcement.home div { @media screen and (min-width: 1200px) {
padding: 258.88px 25.888px 77.664px; } header.announcement.home {
@media screen and (max-width:780px) { background: #e3e3e3 url("/static/images/marketing/shot-5-large.jpg"); } }
header.announcement.home div { header.announcement.home div {
padding: 64.72px 25.888px 51.776px; } } padding: 258.88px 25.888px 77.664px; }
header.announcement.home div nav h1 { @media screen and (max-width:780px) {
margin-right: 0; } header.announcement.home div {
header.announcement.home div nav a.login { padding: 64.72px 25.888px 51.776px; } }
display: none; } header.announcement.home div nav h1 {
header.announcement.course { margin-right: 0; }
background: #e3e3e3 url("/static/images/marketing/course-bg-small.jpg"); } header.announcement.home div nav a.login {
@media screen and (min-width: 1200px) { display: none; }
header.announcement.course { header.announcement.course {
background: #e3e3e3 url("/static/images/marketing/course-bg-large.jpg"); } } background: #e3e3e3 url("/static/images/marketing/course-bg-small.jpg"); }
@media screen and (max-width: 1199px) and (min-width: 700px) { @media screen and (min-width: 1200px) {
header.announcement.course { header.announcement.course {
background: #e3e3e3 url("/static/images/marketing/course-bg-medium.jpg"); } } background: #e3e3e3 url("/static/images/marketing/course-bg-large.jpg"); } }
header.announcement.course div { @media screen and (max-width: 1199px) and (min-width: 700px) {
padding: 103.552px 25.888px 51.776px; } header.announcement.course {
@media screen and (max-width:780px) { background: #e3e3e3 url("/static/images/marketing/course-bg-medium.jpg"); } }
header.announcement.course div { header.announcement.course div {
padding: 64.72px 25.888px 51.776px; } } padding: 103.552px 25.888px 51.776px; }
header.announcement div { @media screen and (max-width:780px) {
position: relative; } header.announcement.course div {
header.announcement div nav { padding: 64.72px 25.888px 51.776px; } }
position: absolute; header.announcement div {
top: 0; position: relative; }
right: 25.888px; header.announcement div nav {
-webkit-border-radius: 0 0 3px 3px; position: absolute;
-moz-border-radius: 0 0 3px 3px; top: 0;
-ms-border-radius: 0 0 3px 3px; right: 25.888px;
-o-border-radius: 0 0 3px 3px; -webkit-border-radius: 0 0 3px 3px;
border-radius: 0 0 3px 3px; -moz-border-radius: 0 0 3px 3px;
background: #333; -ms-border-radius: 0 0 3px 3px;
background: rgba(0, 0, 0, 0.7); -o-border-radius: 0 0 3px 3px;
padding: 12.944px 25.888px; } border-radius: 0 0 3px 3px;
header.announcement div nav h1 { background: #333;
display: -moz-inline-box; background: rgba(0, 0, 0, 0.7);
-moz-box-orient: vertical; padding: 12.944px 25.888px; }
display: inline-block; header.announcement div nav h1 {
vertical-align: baseline; display: -moz-inline-box;
zoom: 1; -moz-box-orient: vertical;
*display: inline; display: inline-block;
*vertical-align: auto; vertical-align: baseline;
margin-right: 12.944px; } zoom: 1;
header.announcement div nav h1 a { *display: inline;
font: italic 800 18px "Open Sans", Helvetica, Arial, sans-serif; *vertical-align: auto;
color: #fff; margin-right: 12.944px; }
text-decoration: none; } header.announcement div nav h1 a {
header.announcement div nav h1 a:hover, header.announcement div nav h1 a:focus { font: italic 800 18px "Open Sans", Helvetica, Arial, sans-serif;
color: #999; } color: #fff;
header.announcement div nav a.login { text-decoration: none; }
text-decoration: none; header.announcement div nav h1 a:hover, header.announcement div nav h1 a:focus {
color: #fff; color: #999; }
font-size: 12px; header.announcement div nav a.login {
font-style: normal; text-decoration: none;
font-family: "Open Sans", Helvetica, Arial, sans-serif; } color: #fff;
header.announcement div nav a.login:hover, header.announcement div nav a.login:focus { font-size: 12px;
color: #999; } font-style: normal;
header.announcement div section { font-family: "Open Sans", Helvetica, Arial, sans-serif; }
background: #993333; header.announcement div nav a.login:hover, header.announcement div nav a.login:focus {
display: -moz-inline-box; color: #999; }
-moz-box-orient: vertical; header.announcement div section {
display: inline-block; background: #993333;
vertical-align: baseline; display: -moz-inline-box;
zoom: 1; -moz-box-orient: vertical;
*display: inline; display: inline-block;
*vertical-align: auto; vertical-align: baseline;
margin-left: 34.171%; zoom: 1;
padding: 25.888px 38.832px; } *display: inline;
@media screen and (max-width: 780px) { *vertical-align: auto;
header.announcement div section { margin-left: 34.171%;
margin-left: 0; } } padding: 25.888px 38.832px; }
header.announcement div section h1 { @media screen and (max-width: 780px) {
font-family: "Open Sans"; header.announcement div section {
font-size: 30px; margin-left: 0; } }
font-weight: 800; header.announcement div section h1 {
display: -moz-inline-box; font-family: "Open Sans";
-moz-box-orient: vertical; font-size: 30px;
display: inline-block; font-weight: 800;
vertical-align: baseline; display: -moz-inline-box;
zoom: 1; -moz-box-orient: vertical;
*display: inline; display: inline-block;
*vertical-align: auto; vertical-align: baseline;
line-height: 1.2em; zoom: 1;
margin: 0 25.888px 0 0; } *display: inline;
header.announcement div section h2 { *vertical-align: auto;
font-family: "Open Sans"; line-height: 1.2em;
font-size: 24px; margin: 0 25.888px 0 0; }
font-weight: 400; header.announcement div section h2 {
display: -moz-inline-box; font-family: "Open Sans";
-moz-box-orient: vertical; font-size: 24px;
display: inline-block; font-weight: 400;
vertical-align: baseline; display: -moz-inline-box;
zoom: 1; -moz-box-orient: vertical;
*display: inline; display: inline-block;
*vertical-align: auto; vertical-align: baseline;
line-height: 1.2em; } zoom: 1;
header.announcement div section.course section { *display: inline;
float: left; *vertical-align: auto;
margin-left: 0; line-height: 1.2em; }
margin-right: 3.817%; header.announcement div section.course section {
padding: 0; float: left;
width: 48.092%; } margin-left: 0;
@media screen and (max-width: 780px) { margin-right: 3.817%;
header.announcement div section.course section { padding: 0;
float: none; width: 48.092%; }
width: 100%; @media screen and (max-width: 780px) {
margin-right: 0; } } header.announcement div section.course section {
header.announcement div section.course section a { float: none;
background-color: #4d1919; width: 100%;
border-color: #260d0d; margin-right: 0; } }
-webkit-box-shadow: inset 0 1px 0 #732626, 0 1px 0 #ac3939; header.announcement div section.course section a {
-moz-box-shadow: inset 0 1px 0 #732626, 0 1px 0 #ac3939; background-color: #4d1919;
-ms-box-shadow: inset 0 1px 0 #732626, 0 1px 0 #ac3939; border-color: #260d0d;
-o-box-shadow: inset 0 1px 0 #732626, 0 1px 0 #ac3939; -webkit-box-shadow: inset 0 1px 0 #732626, 0 1px 0 #ac3939;
box-shadow: inset 0 1px 0 #732626, 0 1px 0 #ac3939; -moz-box-shadow: inset 0 1px 0 #732626, 0 1px 0 #ac3939;
display: block; box-shadow: inset 0 1px 0 #732626, 0 1px 0 #ac3939;
padding: 12.944px 25.888px; display: block;
text-align: center; } padding: 12.944px 25.888px;
header.announcement div section.course section a:hover { text-align: center; }
background-color: #732626; header.announcement div section.course section a:hover {
border-color: #4d1919; } background-color: #732626;
header.announcement div section.course p { border-color: #4d1919; }
width: 48.092%; header.announcement div section.course p {
line-height: 25.888px; width: 48.092%;
float: left; } line-height: 25.888px;
@media screen and (max-width: 780px) { float: left; }
header.announcement div section.course p { @media screen and (max-width: 780px) {
float: none; header.announcement div section.course p {
width: 100%; } } float: none;
width: 100%; } }
footer { footer {
padding-top: 0; } padding-top: 0; }
footer div.footer-wrapper {
border-top: 1px solid #e5e5e5;
padding: 25.888px 0;
background: url("/static/images/marketing/mit-logo.png") right center no-repeat; }
@media screen and (max-width: 780px) {
footer div.footer-wrapper { footer div.footer-wrapper {
background-position: left bottom; border-top: 1px solid #e5e5e5;
padding-bottom: 77.664px; } } padding: 25.888px 0;
footer div.footer-wrapper a { background: url("/static/images/marketing/mit-logo.png") right center no-repeat; }
color: #888; @media screen and (max-width: 780px) {
text-decoration: none; footer div.footer-wrapper {
-webkit-transition-property: all; background-position: left bottom;
-moz-transition-property: all; padding-bottom: 77.664px; } }
-ms-transition-property: all; footer div.footer-wrapper a {
-o-transition-property: all; color: #888;
transition-property: all; text-decoration: none;
-webkit-transition-duration: 0.15s; -webkit-transition-property: all;
-moz-transition-duration: 0.15s; -moz-transition-property: all;
-ms-transition-duration: 0.15s; -ms-transition-property: all;
-o-transition-duration: 0.15s; -o-transition-property: all;
transition-duration: 0.15s; transition-property: all;
-webkit-transition-timing-function: ease-out; -webkit-transition-duration: 0.15s;
-moz-transition-timing-function: ease-out; -moz-transition-duration: 0.15s;
-ms-transition-timing-function: ease-out; -ms-transition-duration: 0.15s;
-o-transition-timing-function: ease-out; -o-transition-duration: 0.15s;
transition-timing-function: ease-out; transition-duration: 0.15s;
-webkit-transition-delay: 0; -webkit-transition-timing-function: ease-out;
-moz-transition-delay: 0; -moz-transition-timing-function: ease-out;
-ms-transition-delay: 0; -ms-transition-timing-function: ease-out;
-o-transition-delay: 0; -o-transition-timing-function: ease-out;
transition-delay: 0; } transition-timing-function: ease-out;
footer div.footer-wrapper a:hover, footer div.footer-wrapper a:focus { -webkit-transition-delay: 0;
color: #666; } -moz-transition-delay: 0;
footer div.footer-wrapper p { -ms-transition-delay: 0;
display: -moz-inline-box; -o-transition-delay: 0;
-moz-box-orient: vertical; transition-delay: 0; }
display: inline-block; footer div.footer-wrapper a:hover, footer div.footer-wrapper a:focus {
vertical-align: baseline; color: #666; }
zoom: 1; footer div.footer-wrapper p {
*display: inline; display: -moz-inline-box;
*vertical-align: auto; -moz-box-orient: vertical;
margin-right: 25.888px; } display: inline-block;
footer div.footer-wrapper ul { vertical-align: baseline;
display: -moz-inline-box; zoom: 1;
-moz-box-orient: vertical; *display: inline;
display: inline-block; *vertical-align: auto;
vertical-align: baseline; margin-right: 25.888px; }
zoom: 1; footer div.footer-wrapper ul {
*display: inline; display: -moz-inline-box;
*vertical-align: auto; } -moz-box-orient: vertical;
@media screen and (max-width: 780px) { display: inline-block;
footer div.footer-wrapper ul { vertical-align: baseline;
margin-top: 25.888px; } } zoom: 1;
footer div.footer-wrapper ul li { *display: inline;
display: -moz-inline-box; *vertical-align: auto; }
-moz-box-orient: vertical; @media screen and (max-width: 780px) {
display: inline-block; footer div.footer-wrapper ul {
vertical-align: baseline; margin-top: 25.888px; } }
zoom: 1; footer div.footer-wrapper ul li {
*display: inline; display: -moz-inline-box;
*vertical-align: auto; -moz-box-orient: vertical;
margin-bottom: 0; } display: inline-block;
footer div.footer-wrapper ul li:after { vertical-align: baseline;
content: ' |'; zoom: 1;
display: inline; *display: inline;
color: #ccc; } *vertical-align: auto;
footer div.footer-wrapper ul li:last-child:after { margin-bottom: 0; }
content: none; } footer div.footer-wrapper ul li:after {
footer div.footer-wrapper ul.social { content: ' |';
float: right; display: inline;
margin-right: 60px; color: #ccc; }
position: relative; footer div.footer-wrapper ul li:last-child:after {
top: -5px; } content: none; }
@media screen and (max-width: 780px) { footer div.footer-wrapper ul.social {
footer div.footer-wrapper ul.social { float: right;
float: none; } } margin-right: 60px;
footer div.footer-wrapper ul.social li { position: relative;
float: left; top: -5px; }
margin-right: 12.944px; } @media screen and (max-width: 780px) {
footer div.footer-wrapper ul.social li:after { footer div.footer-wrapper ul.social {
content: none; float: none; } }
display: none; } footer div.footer-wrapper ul.social li {
footer div.footer-wrapper ul.social li a { float: left;
display: block; margin-right: 12.944px; }
height: 29px; footer div.footer-wrapper ul.social li:after {
width: 28px; content: none;
text-indent: -9999px; } display: none; }
footer div.footer-wrapper ul.social li a:hover { footer div.footer-wrapper ul.social li a {
opacity: .8; } display: block;
footer div.footer-wrapper ul.social li.twitter a { height: 29px;
background: url("/static/images/marketing/twitter.png") 0 0 no-repeat; } width: 28px;
footer div.footer-wrapper ul.social li.facebook a { text-indent: -9999px; }
background: url("/static/images/marketing/facebook.png") 0 0 no-repeat; } footer div.footer-wrapper ul.social li a:hover {
footer div.footer-wrapper ul.social li.linkedin a { opacity: .8; }
background: url("/static/images/marketing/linkedin.png") 0 0 no-repeat; } footer div.footer-wrapper ul.social li.twitter a {
background: url("/static/images/marketing/twitter.png") 0 0 no-repeat; }
footer div.footer-wrapper ul.social li.facebook a {
background: url("/static/images/marketing/facebook.png") 0 0 no-repeat; }
footer div.footer-wrapper ul.social li.linkedin a {
background: url("/static/images/marketing/linkedin.png") 0 0 no-repeat; }
section.index-content section { section.index-content section {
float: left; } float: left; }
@media screen and (max-width: 780px) { @media screen and (max-width: 780px) {
section.index-content section { section.index-content section {
float: none; float: none;
width: auto; width: auto;
margin-right: 0; } } margin-right: 0; } }
section.index-content section h1 { section.index-content section h1 {
font-size: 800 24px "Open Sans"; font-size: 800 24px "Open Sans";
margin-bottom: 25.888px; } margin-bottom: 25.888px; }
section.index-content section p { section.index-content section p {
line-height: 25.888px; line-height: 25.888px;
margin-bottom: 25.888px; } margin-bottom: 25.888px; }
section.index-content section ul { section.index-content section ul {
margin: 0; } margin: 0; }
section.index-content section.about {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
box-sizing: border-box;
border-right: 1px solid #e5e5e5;
margin-right: 2.513%;
padding-right: 1.256%;
width: 65.829%; }
@media screen and (max-width: 780px) {
section.index-content section.about { section.index-content section.about {
width: 100%; -webkit-box-sizing: border-box;
border-right: 0; -moz-box-sizing: border-box;
margin-right: 0; box-sizing: border-box;
padding-right: 0; } } border-right: 1px solid #e5e5e5;
section.index-content section.about section { margin-right: 2.513%;
margin-bottom: 25.888px; } padding-right: 1.256%;
section.index-content section.about section p { width: 65.829%; }
width: 48.092%; @media screen and (max-width: 780px) {
float: left; } section.index-content section.about {
@media screen and (max-width: 780px) { width: 100%;
section.index-content section.about section p { border-right: 0;
float: none; margin-right: 0;
width: auto; } } padding-right: 0; } }
section.index-content section.about section p:nth-child(odd) { section.index-content section.about section {
margin-right: 3.817%; } margin-bottom: 25.888px; }
@media screen and (max-width: 780px) { section.index-content section.about section p {
section.index-content section.about section p:nth-child(odd) { width: 48.092%;
margin-right: 0; } } float: left; }
section.index-content section.about section.intro section { @media screen and (max-width: 780px) {
margin-bottom: 0; } section.index-content section.about section p {
section.index-content section.about section.intro section.intro-text { float: none;
margin-right: 3.817%; width: auto; } }
width: 48.092%; } section.index-content section.about section p:nth-child(odd) {
@media screen and (max-width: 780px) { margin-right: 3.817%; }
section.index-content section.about section.intro section.intro-text { @media screen and (max-width: 780px) {
margin-right: 0; section.index-content section.about section p:nth-child(odd) {
width: auto; } } margin-right: 0; } }
section.index-content section.about section.intro section.intro-text p { section.index-content section.about section.intro section {
margin-right: 0; margin-bottom: 0; }
width: auto; section.index-content section.about section.intro section.intro-text {
float: none; } margin-right: 3.817%;
section.index-content section.about section.intro section.intro-video { width: 48.092%; }
width: 48.092%; } @media screen and (max-width: 780px) {
@media screen and (max-width: 780px) { section.index-content section.about section.intro section.intro-text {
section.index-content section.about section.intro section.intro-video { margin-right: 0;
width: auto; } } width: auto; } }
section.index-content section.about section.intro section.intro-video a { section.index-content section.about section.intro section.intro-text p {
display: block; margin-right: 0;
width: 100%; } width: auto;
section.index-content section.about section.intro section.intro-video a img { float: none; }
width: 100%; } section.index-content section.about section.intro section.intro-video {
section.index-content section.about section.intro section.intro-video a span { width: 48.092%; }
display: none; } @media screen and (max-width: 780px) {
section.index-content section.about section.features { section.index-content section.about section.intro section.intro-video {
border-top: 1px solid #E5E5E5; width: auto; } }
padding-top: 25.888px; section.index-content section.about section.intro section.intro-video a {
margin-bottom: 0; } display: block;
section.index-content section.about section.features h2 { width: 100%; }
text-transform: uppercase; section.index-content section.about section.intro section.intro-video a img {
letter-spacing: 1px; width: 100%; }
color: #888; section.index-content section.about section.intro section.intro-video a span {
margin-bottom: 25.888px; display: none; }
font-weight: normal; section.index-content section.about section.features {
font-size: 14px; } border-top: 1px solid #E5E5E5;
section.index-content section.about section.features h2 span { padding-top: 25.888px;
text-transform: none; } margin-bottom: 0; }
section.index-content section.about section.features p { section.index-content section.about section.features h2 {
width: auto; text-transform: uppercase;
clear: both; } letter-spacing: 1px;
section.index-content section.about section.features p strong { color: #888;
font-family: "Open sans"; margin-bottom: 25.888px;
font-weight: 800; } font-weight: normal;
section.index-content section.about section.features p a { font-size: 14px; }
color: #993333; section.index-content section.about section.features h2 span {
text-decoration: none; text-transform: none; }
-webkit-transition-property: all; section.index-content section.about section.features p {
-moz-transition-property: all; width: auto;
-ms-transition-property: all; clear: both; }
-o-transition-property: all; section.index-content section.about section.features p strong {
transition-property: all; font-family: "Open sans";
-webkit-transition-duration: 0.15s; font-weight: 800; }
-moz-transition-duration: 0.15s; section.index-content section.about section.features p a {
-ms-transition-duration: 0.15s; color: #993333;
-o-transition-duration: 0.15s; text-decoration: none;
transition-duration: 0.15s; -webkit-transition-property: all;
-webkit-transition-timing-function: ease-out; -moz-transition-property: all;
-moz-transition-timing-function: ease-out; -ms-transition-property: all;
-ms-transition-timing-function: ease-out; -o-transition-property: all;
-o-transition-timing-function: ease-out; transition-property: all;
transition-timing-function: ease-out; -webkit-transition-duration: 0.15s;
-webkit-transition-delay: 0; -moz-transition-duration: 0.15s;
-moz-transition-delay: 0; -ms-transition-duration: 0.15s;
-ms-transition-delay: 0; -o-transition-duration: 0.15s;
-o-transition-delay: 0; transition-duration: 0.15s;
transition-delay: 0; } -webkit-transition-timing-function: ease-out;
section.index-content section.about section.features p a:hover, section.index-content section.about section.features p a:focus { -moz-transition-timing-function: ease-out;
color: #602020; } -ms-transition-timing-function: ease-out;
section.index-content section.about section.features ul { -o-transition-timing-function: ease-out;
margin-bottom: 0; } transition-timing-function: ease-out;
section.index-content section.about section.features ul li { -webkit-transition-delay: 0;
line-height: 25.888px; -moz-transition-delay: 0;
width: 48.092%; -ms-transition-delay: 0;
float: left; -o-transition-delay: 0;
margin-bottom: 12.944px; } transition-delay: 0; }
@media screen and (max-width: 780px) { section.index-content section.about section.features p a:hover, section.index-content section.about section.features p a:focus {
section.index-content section.about section.features ul li { color: #602020; }
width: auto; section.index-content section.about section.features ul {
float: none; } } margin-bottom: 0; }
section.index-content section.about section.features ul li:nth-child(odd) { section.index-content section.about section.features ul li {
margin-right: 3.817%; } line-height: 25.888px;
@media screen and (max-width: 780px) { width: 48.092%;
section.index-content section.about section.features ul li:nth-child(odd) { float: left;
margin-right: 0; } } margin-bottom: 12.944px; }
section.index-content section.course, section.index-content section.staff { @media screen and (max-width: 780px) {
width: 31.658%; } section.index-content section.about section.features ul li {
@media screen and (max-width: 780px) { width: auto;
float: none; } }
section.index-content section.about section.features ul li:nth-child(odd) {
margin-right: 3.817%; }
@media screen and (max-width: 780px) {
section.index-content section.about section.features ul li:nth-child(odd) {
margin-right: 0; } }
section.index-content section.course, section.index-content section.staff { section.index-content section.course, section.index-content section.staff {
width: auto; } } width: 31.658%; }
section.index-content section.course h1, section.index-content section.staff h1 { @media screen and (max-width: 780px) {
color: #888; section.index-content section.course, section.index-content section.staff {
font: normal 16px Georgia, serif; width: auto; } }
font-size: 14px; section.index-content section.course h1, section.index-content section.staff h1 {
letter-spacing: 1px; color: #888;
margin-bottom: 25.888px; font: normal 16px Georgia, serif;
text-transform: uppercase; } font-size: 14px;
section.index-content section.course h2, section.index-content section.staff h2 { letter-spacing: 1px;
font: 800 24px "Open Sans", Helvetica, Arial, sans-serif; } margin-bottom: 25.888px;
section.index-content section.course h3, section.index-content section.staff h3 { text-transform: uppercase; }
font: 400 18px "Open Sans", Helvetica, Arial, sans-serif; } section.index-content section.course h2, section.index-content section.staff h2 {
section.index-content section.course a span.arrow, section.index-content section.staff a span.arrow { font: 800 24px "Open Sans", Helvetica, Arial, sans-serif; }
color: rgba(255, 255, 255, 0.6); section.index-content section.course h3, section.index-content section.staff h3 {
font-style: normal; font: 400 18px "Open Sans", Helvetica, Arial, sans-serif; }
display: -moz-inline-box; section.index-content section.course a span.arrow, section.index-content section.staff a span.arrow {
-moz-box-orient: vertical; color: rgba(255, 255, 255, 0.6);
display: inline-block; font-style: normal;
vertical-align: baseline; display: -moz-inline-box;
zoom: 1; -moz-box-orient: vertical;
*display: inline; display: inline-block;
*vertical-align: auto; vertical-align: baseline;
padding-left: 10px; } zoom: 1;
section.index-content section.course ul, section.index-content section.staff ul { *display: inline;
list-style: none; } *vertical-align: auto;
section.index-content section.course ul li img, section.index-content section.staff ul li img { padding-left: 10px; }
float: left; section.index-content section.course ul, section.index-content section.staff ul {
margin-right: 12.944px; } list-style: none; }
section.index-content section.course h2 { section.index-content section.course ul li img, section.index-content section.staff ul li img {
padding-top: 129.44px; float: left;
background: url("/static/images/marketing/circuits-bg.jpg") 0 0 no-repeat; margin-right: 12.944px; }
-webkit-background-size: contain;
-moz-background-size: contain;
-ms-background-size: contain;
-o-background-size: contain;
background-size: contain; }
@media screen and (max-width: 998px) and (min-width: 781px) {
section.index-content section.course h2 {
background: url("/static/images/marketing/circuits-medium-bg.jpg") 0 0 no-repeat; } }
@media screen and (max-width: 780px) {
section.index-content section.course h2 { section.index-content section.course h2 {
padding-top: 129.44px; padding-top: 129.44px;
background: url("/static/images/marketing/circuits-bg.jpg") 0 0 no-repeat; } } background: url("/static/images/marketing/circuits-bg.jpg") 0 0 no-repeat;
@media screen and (min-width: 500px) and (max-width: 781px) { -webkit-background-size: contain;
section.index-content section.course h2 { -moz-background-size: contain;
padding-top: 207.104px; } } -ms-background-size: contain;
section.index-content section.about-course { -o-background-size: contain;
-webkit-box-sizing: border-box; background-size: contain; }
-moz-box-sizing: border-box; @media screen and (max-width: 998px) and (min-width: 781px) {
-ms-box-sizing: border-box; section.index-content section.course h2 {
-o-box-sizing: border-box; background: url("/static/images/marketing/circuits-medium-bg.jpg") 0 0 no-repeat; } }
box-sizing: border-box; @media screen and (max-width: 780px) {
border-right: 1px solid #e5e5e5; section.index-content section.course h2 {
margin-right: 2.513%; padding-top: 129.44px;
padding-right: 1.256%; background: url("/static/images/marketing/circuits-bg.jpg") 0 0 no-repeat; } }
width: 65.829%; } @media screen and (min-width: 500px) and (max-width: 781px) {
@media screen and (max-width: 780px) { section.index-content section.course h2 {
padding-top: 207.104px; } }
section.index-content section.about-course { section.index-content section.about-course {
width: auto; -webkit-box-sizing: border-box;
border-right: 0; -moz-box-sizing: border-box;
margin-right: 0; box-sizing: border-box;
padding-right: 0; } } border-right: 1px solid #e5e5e5;
section.index-content section.about-course section { margin-right: 2.513%;
width: 48.092%; } padding-right: 1.256%;
@media screen and (max-width: 780px) { width: 65.829%; }
section.index-content section.about-course section { @media screen and (max-width: 780px) {
width: auto; } } section.index-content section.about-course {
section.index-content section.about-course section.about-info { width: auto;
margin-right: 3.817%; } border-right: 0;
@media screen and (max-width: 780px) { margin-right: 0;
section.index-content section.about-course section.about-info { padding-right: 0; } }
margin-right: 0; } } section.index-content section.about-course section {
section.index-content section.about-course section.requirements { width: 48.092%; }
clear: both; @media screen and (max-width: 780px) {
width: 100%; section.index-content section.about-course section {
border-top: 1px solid #E5E5E5; width: auto; } }
padding-top: 25.888px; section.index-content section.about-course section.about-info {
margin-bottom: 0; } margin-right: 3.817%; }
section.index-content section.about-course section.requirements p { @media screen and (max-width: 780px) {
float: left; section.index-content section.about-course section.about-info {
width: 48.092%; margin-right: 0; } }
margin-right: 3.817%; } section.index-content section.about-course section.requirements {
@media screen and (max-width: 780px) { clear: both;
section.index-content section.about-course section.requirements p { width: 100%;
margin-right: 0; border-top: 1px solid #E5E5E5;
float: none; padding-top: 25.888px;
width: auto; } } margin-bottom: 0; }
section.index-content section.about-course section.requirements p:nth-child(odd) { section.index-content section.about-course section.requirements p {
margin-right: 0; } float: left;
section.index-content section.about-course section.cta { width: 48.092%;
width: 100%; margin-right: 3.817%; }
text-align: center; } @media screen and (max-width: 780px) {
section.index-content section.about-course section.cta a.enroll { section.index-content section.about-course section.requirements p {
padding: 12.944px 51.776px; margin-right: 0;
display: -moz-inline-box; float: none;
-moz-box-orient: vertical; width: auto; } }
display: inline-block; section.index-content section.about-course section.requirements p:nth-child(odd) {
vertical-align: baseline; margin-right: 0; }
zoom: 1; section.index-content section.about-course section.cta {
*display: inline; width: 100%;
*vertical-align: auto; text-align: center; }
text-align: center; section.index-content section.about-course section.cta a.enroll {
font: 800 18px "Open Sans", Helvetica, Arial, sans-serif; } padding: 12.944px 51.776px;
section.index-content section.staff h1 { display: -moz-inline-box;
margin-top: 25.888px; } -moz-box-orient: vertical;
display: inline-block;
vertical-align: baseline;
zoom: 1;
*display: inline;
*vertical-align: auto;
text-align: center;
font: 800 18px "Open Sans", Helvetica, Arial, sans-serif; }
section.index-content section.staff h1 {
margin-top: 25.888px; }
#lean_overlay { #lean_overlay {
position: fixed; position: fixed;
@@ -761,177 +762,165 @@ div.leanModal_box {
border-radius: 3px; border-radius: 3px;
-webkit-box-shadow: 0 0 6px black; -webkit-box-shadow: 0 0 6px black;
-moz-box-shadow: 0 0 6px black; -moz-box-shadow: 0 0 6px black;
-ms-box-shadow: 0 0 6px black;
-o-box-shadow: 0 0 6px black;
box-shadow: 0 0 6px black; box-shadow: 0 0 6px black;
-webkit-box-sizing: border-box; -webkit-box-sizing: border-box;
-moz-box-sizing: border-box; -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
box-sizing: border-box; box-sizing: border-box;
display: none; display: none;
padding: 51.776px; } padding: 51.776px; }
div.leanModal_box a.modal_close { div.leanModal_box a.modal_close {
color: #aaa; color: #aaa;
display: block; display: block;
font-style: normal; font-style: normal;
height: 14px; height: 14px;
position: absolute; position: absolute;
right: 12px; right: 12px;
top: 12px; top: 12px;
width: 14px; width: 14px;
z-index: 2; } z-index: 2; }
div.leanModal_box a.modal_close:hover { div.leanModal_box a.modal_close:hover {
text-decoration: none; text-decoration: none;
color: #993333; } color: #993333; }
div.leanModal_box h1 { div.leanModal_box h1 {
border-bottom: 1px solid #eee; border-bottom: 1px solid #eee;
font-size: 24px; font-size: 24px;
margin-bottom: 25.888px; margin-bottom: 25.888px;
margin-top: 0; margin-top: 0;
padding-bottom: 25.888px; padding-bottom: 25.888px;
text-align: left; } text-align: left; }
div.leanModal_box#enroll { div.leanModal_box#enroll {
max-width: 600px; } max-width: 600px; }
div.leanModal_box#enroll ol { div.leanModal_box#enroll ol {
padding-top: 25.888px; } padding-top: 25.888px; }
div.leanModal_box#enroll ol li.terms, div.leanModal_box#enroll ol li.honor-code { div.leanModal_box#enroll ol li.terms, div.leanModal_box#enroll ol li.honor-code {
width: auto; width: auto;
float: none; } float: none; }
div.leanModal_box#enroll ol li div.tip { div.leanModal_box#enroll ol li div.tip {
display: none; } display: none; }
div.leanModal_box#enroll ol li:hover div.tip { div.leanModal_box#enroll ol li:hover div.tip {
background: #333; background: #333;
color: #fff; color: #fff;
display: block; display: block;
font-size: 16px; font-size: 16px;
line-height: 25.888px; line-height: 25.888px;
margin: 0 0 0 -10px; margin: 0 0 0 -10px;
padding: 10px; padding: 10px;
position: absolute; position: absolute;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
width: 500px; } width: 500px; }
div.leanModal_box form { div.leanModal_box form {
text-align: left; } text-align: left; }
div.leanModal_box form div#enroll_error, div.leanModal_box form div#login_error, div.leanModal_box form div#pwd_error { div.leanModal_box form div#enroll_error, div.leanModal_box form div#login_error, div.leanModal_box form div#pwd_error {
background-color: #333333; background-color: #333333;
border: black; border: black;
color: #fff; color: #fff;
font-family: "Open sans"; font-family: "Open sans";
font-weight: bold; font-weight: bold;
letter-spacing: 1px; letter-spacing: 1px;
margin: -25.888px -25.888px 25.888px; margin: -25.888px -25.888px 25.888px;
padding: 12.944px; padding: 12.944px;
text-shadow: 0 1px 0 #1a1a1a; text-shadow: 0 1px 0 #1a1a1a;
-webkit-font-smoothing: antialiased; } -webkit-font-smoothing: antialiased; }
div.leanModal_box form div#enroll_error:empty, div.leanModal_box form div#login_error:empty, div.leanModal_box form div#pwd_error:empty { div.leanModal_box form div#enroll_error:empty, div.leanModal_box form div#login_error:empty, div.leanModal_box form div#pwd_error:empty {
padding: 0; } padding: 0; }
div.leanModal_box form ol { div.leanModal_box form ol {
list-style: none; list-style: none;
margin-bottom: 25.888px; } margin-bottom: 25.888px; }
div.leanModal_box form ol li { div.leanModal_box form ol li {
margin-bottom: 12.944px; } margin-bottom: 12.944px; }
div.leanModal_box form ol li.terms, div.leanModal_box form ol li.remember { div.leanModal_box form ol li.terms, div.leanModal_box form ol li.remember {
border-top: 1px solid #eee; border-top: 1px solid #eee;
clear: both; clear: both;
float: none; float: none;
padding-top: 25.888px; padding-top: 25.888px;
width: auto; } width: auto; }
div.leanModal_box form ol li.honor-code { div.leanModal_box form ol li.honor-code {
width: auto; width: auto;
float: none; } float: none; }
div.leanModal_box form ol li label { div.leanModal_box form ol li label {
display: block; display: block;
font-weight: bold; } font-weight: bold; }
div.leanModal_box form ol li input[type="email"], div.leanModal_box form ol li input[type="number"], div.leanModal_box form ol li input[type="password"], div.leanModal_box form ol li input[type="search"], div.leanModal_box form ol li input[type="tel"], div.leanModal_box form ol li input[type="text"], div.leanModal_box form ol li input[type="url"], div.leanModal_box form ol li input[type="color"], div.leanModal_box form ol li input[type="date"], div.leanModal_box form ol li input[type="datetime"], div.leanModal_box form ol li input[type="datetime-local"], div.leanModal_box form ol li input[type="month"], div.leanModal_box form ol li input[type="time"], div.leanModal_box form ol li input[type="week"], div.leanModal_box form ol li textarea { div.leanModal_box form ol li input[type="email"], div.leanModal_box form ol li input[type="number"], div.leanModal_box form ol li input[type="password"], div.leanModal_box form ol li input[type="search"], div.leanModal_box form ol li input[type="tel"], div.leanModal_box form ol li input[type="text"], div.leanModal_box form ol li input[type="url"], div.leanModal_box form ol li input[type="color"], div.leanModal_box form ol li input[type="date"], div.leanModal_box form ol li input[type="datetime"], div.leanModal_box form ol li input[type="datetime-local"], div.leanModal_box form ol li input[type="month"], div.leanModal_box form ol li input[type="time"], div.leanModal_box form ol li input[type="week"], div.leanModal_box form ol li textarea {
width: 100%; width: 100%;
-webkit-box-sizing: border-box; -webkit-box-sizing: border-box;
-moz-box-sizing: border-box; -moz-box-sizing: border-box;
-ms-box-sizing: border-box; box-sizing: border-box; }
-o-box-sizing: border-box; div.leanModal_box form ol li input[type="checkbox"] {
box-sizing: border-box; } margin-right: 10px; }
div.leanModal_box form ol li input[type="checkbox"] { div.leanModal_box form ol li ul {
margin-right: 10px; } list-style: disc outside none;
div.leanModal_box form ol li ul { margin: 12.944px 0 25.888px 25.888px; }
list-style: disc outside none; div.leanModal_box form ol li ul li {
margin: 12.944px 0 25.888px 25.888px; } color: #666;
div.leanModal_box form ol li ul li { float: none;
color: #666; font-size: 14px;
float: none; list-style: disc outside none;
font-size: 14px; margin-bottom: 12.944px; }
list-style: disc outside none; div.leanModal_box form input[type="button"], div.leanModal_box form input[type="submit"] {
margin-bottom: 12.944px; } border: 1px solid #691b1b;
div.leanModal_box form input[type="button"], div.leanModal_box form input[type="submit"] { -webkit-border-radius: 3px;
border: 1px solid #691b1b; -moz-border-radius: 3px;
-webkit-border-radius: 3px; -ms-border-radius: 3px;
-moz-border-radius: 3px; -o-border-radius: 3px;
-ms-border-radius: 3px; border-radius: 3px;
-o-border-radius: 3px; -webkit-box-shadow: inset 0 1px 0 0 #bc5c5c;
border-radius: 3px; -moz-box-shadow: inset 0 1px 0 0 #bc5c5c;
-webkit-box-shadow: inset 0 1px 0 0 #bc5c5c; box-shadow: inset 0 1px 0 0 #bc5c5c;
-moz-box-shadow: inset 0 1px 0 0 #bc5c5c; color: white;
-ms-box-shadow: inset 0 1px 0 0 #bc5c5c; display: inline;
-o-box-shadow: inset 0 1px 0 0 #bc5c5c; font-size: 11px;
box-shadow: inset 0 1px 0 0 #bc5c5c; font-weight: bold;
color: white; background-color: #993333;
display: inline; background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #993333), color-stop(100%, #761e1e));
font-size: 11px; background-image: -webkit-linear-gradient(top, #993333, #761e1e);
font-weight: bold; background-image: -moz-linear-gradient(top, #993333, #761e1e);
background-color: #993333; background-image: -ms-linear-gradient(top, #993333, #761e1e);
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #993333), color-stop(100%, #761e1e)); background-image: -o-linear-gradient(top, #993333, #761e1e);
background-image: -webkit-linear-gradient(top, #993333, #761e1e); background-image: linear-gradient(top, #993333, #761e1e);
background-image: -moz-linear-gradient(top, #993333, #761e1e); padding: 6px 18px 7px;
background-image: -ms-linear-gradient(top, #993333, #761e1e); text-shadow: 0 1px 0 #5d1414;
background-image: -o-linear-gradient(top, #993333, #761e1e); -webkit-background-clip: padding-box;
background-image: linear-gradient(top, #993333, #761e1e); font-size: 18px;
padding: 6px 18px 7px; padding: 12.944px; }
text-shadow: 0 1px 0 #5d1414; div.leanModal_box form input[type="button"]:hover, div.leanModal_box form input[type="submit"]:hover {
-webkit-background-clip: padding-box; -webkit-box-shadow: inset 0 1px 0 0 #a44141;
font-size: 18px; -moz-box-shadow: inset 0 1px 0 0 #a44141;
padding: 12.944px; } box-shadow: inset 0 1px 0 0 #a44141;
div.leanModal_box form input[type="button"]:hover, div.leanModal_box form input[type="submit"]:hover { cursor: pointer;
-webkit-box-shadow: inset 0 1px 0 0 #a44141; background-color: #823030;
-moz-box-shadow: inset 0 1px 0 0 #a44141; background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #823030), color-stop(100%, #691c1c));
-ms-box-shadow: inset 0 1px 0 0 #a44141; background-image: -webkit-linear-gradient(top, #823030, #691c1c);
-o-box-shadow: inset 0 1px 0 0 #a44141; background-image: -moz-linear-gradient(top, #823030, #691c1c);
box-shadow: inset 0 1px 0 0 #a44141; background-image: -ms-linear-gradient(top, #823030, #691c1c);
cursor: pointer; background-image: -o-linear-gradient(top, #823030, #691c1c);
background-color: #823030; background-image: linear-gradient(top, #823030, #691c1c); }
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #823030), color-stop(100%, #691c1c)); div.leanModal_box form input[type="button"]:active, div.leanModal_box form input[type="submit"]:active {
background-image: -webkit-linear-gradient(top, #823030, #691c1c); border: 1px solid #691b1b;
background-image: -moz-linear-gradient(top, #823030, #691c1c); -webkit-box-shadow: inset 0 0 8px 4px #5c1919, inset 0 0 8px 4px #5c1919, 0 1px 1px 0 #eeeeee;
background-image: -ms-linear-gradient(top, #823030, #691c1c); -moz-box-shadow: inset 0 0 8px 4px #5c1919, inset 0 0 8px 4px #5c1919, 0 1px 1px 0 #eeeeee;
background-image: -o-linear-gradient(top, #823030, #691c1c); box-shadow: inset 0 0 8px 4px #5c1919, inset 0 0 8px 4px #5c1919, 0 1px 1px 0 #eeeeee; }
background-image: linear-gradient(top, #823030, #691c1c); }
div.leanModal_box form input[type="button"]:active, div.leanModal_box form input[type="submit"]:active {
border: 1px solid #691b1b;
-webkit-box-shadow: inset 0 0 8px 4px #5c1919, inset 0 0 8px 4px #5c1919, 0 1px 1px 0 #eeeeee;
-moz-box-shadow: inset 0 0 8px 4px #5c1919, inset 0 0 8px 4px #5c1919, 0 1px 1px 0 #eeeeee;
-ms-box-shadow: inset 0 0 8px 4px #5c1919, inset 0 0 8px 4px #5c1919, 0 1px 1px 0 #eeeeee;
-o-box-shadow: inset 0 0 8px 4px #5c1919, inset 0 0 8px 4px #5c1919, 0 1px 1px 0 #eeeeee;
box-shadow: inset 0 0 8px 4px #5c1919, inset 0 0 8px 4px #5c1919, 0 1px 1px 0 #eeeeee; }
div#login { div#login {
min-width: 400px; } min-width: 400px; }
div#login header { div#login header {
border-bottom: 1px solid #ddd; border-bottom: 1px solid #ddd;
margin-bottom: 25.888px; margin-bottom: 25.888px;
padding-bottom: 25.888px; } padding-bottom: 25.888px; }
div#login header h1 { div#login header h1 {
border-bottom: 0; border-bottom: 0;
padding-bottom: 0; padding-bottom: 0;
margin-bottom: 6.472px; } margin-bottom: 6.472px; }
div#login ol li { div#login ol li {
width: auto; width: auto;
float: none; } float: none; }
div.lost-password { div.lost-password {
text-align: left; text-align: left;
margin-top: 25.888px; } margin-top: 25.888px; }
div.lost-password a { div.lost-password a {
color: #999; } color: #999; }
div.lost-password a:hover { div.lost-password a:hover {
color: #444; } color: #444; }
div#pwd_reset p { div#pwd_reset p {
margin-bottom: 25.888px; } margin-bottom: 25.888px; }
@@ -941,42 +930,5 @@ div#pwd_reset input[type="email"] {
div#feedback_div form ol li { div#feedback_div form ol li {
float: none; float: none;
width: 100%; } width: 100%; }
div#feedback_div form ol li textarea#feedback_message { div#feedback_div form ol li textarea#feedback_message {
height: 100px; } height: 100px; }
div#calculator_div {
max-width: 500px; }
div#calculator_div form {
padding-bottom: 25.888px;
margin-bottom: 25.888px;
border-bottom: 1px solid #ddd; }
div#calculator_div form input#calculator_input {
width: 400px; }
div#calculator_div form input#calculator_button {
background: 0;
color: #993333;
border: 0;
-webkit-box-shadow: none;
-moz-box-shadow: none;
-ms-box-shadow: none;
-o-box-shadow: none;
box-shadow: none;
padding: 0;
text-shadow: none; }
div#calculator_div form input#calculator_button:hover {
color: #333; }
div#calculator_div form input#calculator_output {
border: 0;
background: none;
padding: 9.061px;
font-size: 24px;
width: 378px;
font-weight: bold;
margin-top: 4px; }
div#calculator_div dl dt {
float: left;
clear: both;
padding-right: 12.944px;
font-weight: bold; }
div#calculator_div dl dd {
float: left; }

BIN
static/images/calc-icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 B

BIN
static/images/info-icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 302 B

View File

@@ -1,4 +1,5 @@
<%inherit file="main.html" /> <%inherit file="main.html" />
<%block name="title"><title>Courseware MITx 6.002x</title></%block>
<%block name="js_extra"> <%block name="js_extra">
<!-- TODO: http://docs.jquery.com/Plugins/Validation --> <!-- TODO: http://docs.jquery.com/Plugins/Validation -->
@@ -7,7 +8,7 @@
${init} ${init}
$(".sequence-nav li a").hover(function(){ $(".sequence-nav li a").hover(function(){
$(this).siblings().toggle(); $(this).siblings().toggleClass("shown");
}); });
}); });
</script> </script>

View File

@@ -73,4 +73,4 @@
%endif %endif
</section> </section>
</div> </div>
</section> </section>

View File

@@ -1,4 +1,5 @@
<%inherit file="main.html" /> <%inherit file="main.html" />
<%block name="title"><title>Help - MITx 6.002x</title></%block>
<%include file="navigation.html" args="active_page='help'"/> <%include file="navigation.html" args="active_page='help'"/>

View File

@@ -1,4 +1,5 @@
<%inherit file="main.html" /> <%inherit file="main.html" />
<%block name="title"><title>Course Info - MITx 6.002x</title></%block>
<%include file="navigation.html" args="active_page='info'" /> <%include file="navigation.html" args="active_page='info'" />

View File

@@ -52,7 +52,38 @@
</ul> </ul>
<ul> <ul>
<li><a href="#feedback_div" rel="leanModal">Feedback</a></li> <li><a href="#feedback_div" rel="leanModal">Feedback</a></li>
<li><a href="#calculator_div" rel="leanModal">Calculator</a></li> <li class="calc-main">
<a href="#" class="calc">Calculator</a>
<div id="calculator_wrapper">
<form id="calculator">
<div class="input-wrapper">
<input type="text" id="calculator_input" />
<div class="help-wrapper">
<a href="#">Hints</a>
<dl class="help">
<dt>Suffixes:</dt>
<dd> %kMGTcmunp</dd>
<dt>Operations:</dt>
<dd>^ * / + - ()</dd>
<dt>Functions:</dt>
<dd>sin, cos, tan, sqrt, log10, log2, ln, arccos, arcsin, arctan, abs </dd>
<dt>Constants</dt>
<dd>e, pi</dd>
<!-- Students won't know what parallel means at this time. Complex numbers aren't well tested in the courseware, so we would prefer to not expose them. If you read the comments in the source, feel free to use them. If you run into a bug, please let us know. But we can't officially support them right now.
<dt>Unsupported:</dt> <dd>||, j </dd> -->
</dl>
</div>
</div>
<input id="calculator_button" type="submit" value="="/>
<input type="text" id="calculator_output" readonly />
</form>
</div>
</li>
<li><a href="/s/help.html">Help</a></li> <li><a href="/s/help.html">Help</a></li>
<li><a href="/logout">Log out</a></li> <li><a href="/logout">Log out</a></li>
</ul> </ul>
@@ -60,6 +91,7 @@
</footer> </footer>
<div id="feedback_div" class="leanModal_box"> <div id="feedback_div" class="leanModal_box">
<h1>Feedback for MITx</h1>
<p>Found a bug? Got an idea for improving our system? Let us know.</p> <p>Found a bug? Got an idea for improving our system? Let us know.</p>
<form> <form>
@@ -72,28 +104,6 @@
</div> </div>
<div id="calculator_div" class="leanModal_box">
<form id="calculator">
<input type="text" id="calculator_input">
<input id="calculator_button" type="submit" value="=">
<input type="text" id="calculator_output" readonly>
</form>
<dl>
<dt>Suffixes:</dt>
<dd> %kMGTcmunp</dd>
<dt>Operations:</dt>
<dd>^ * / + - ()</dd>
<dt>Functions:</dt>
<dd>sin, cos, tan, sqrt, log10, log2, ln, arccos, arcsin, arctan, abs </dd>
<dt>Constants</dt>
<dd>e, pi</dd>
<!-- Students won't know what parallel means at this time. Complex numbers aren't well tested in the courseware, so we would prefer to not expose them. If you read the comments in the source, feel free to use them. If you run into a bug, please let us know. But we can't officially support them right now.
<dt>Unsupported:</dt> <dd>||, j </dd> -->
</dl>
</div>
<script type="text/javascript" src="${ settings.LIB_URL }jquery.treeview.js"></script> <script type="text/javascript" src="${ settings.LIB_URL }jquery.treeview.js"></script>
<script type="text/javascript" src="/static/js/jquery.leanModal.min.js"></script> <script type="text/javascript" src="/static/js/jquery.leanModal.min.js"></script>
@@ -120,6 +130,24 @@ $(function() {
// Calculator // Calculator
$(function() { $(function() {
$("#calculator_wrapper").hide();
$(".calc").click(function(){
$("#calculator_wrapper").slideToggle("fast");
$("#calculator_wrapper #calculator_input").focus();
$(this).toggleClass("closed");
return false;
});
$("div.help-wrapper a").hover(function(){
$(".help").toggleClass("shown");
});
$("div.help-wrapper a").click(function(){
return false;
});
$("form#calculator").submit(function(e){ $("form#calculator").submit(function(e){
e.preventDefault(); e.preventDefault();
$.getJSON("/calculate", {"equation":$("#calculator_input").attr("value")}, $.getJSON("/calculate", {"equation":$("#calculator_input").attr("value")},

View File

@@ -1,6 +1,8 @@
<%inherit file="main.html" /> <%inherit file="main.html" />
<%namespace name="profile_graphs" file="profile_graphs.js"/> <%namespace name="profile_graphs" file="profile_graphs.js"/>
<%block name="title"><title>Profile - MITx 6.002x</title></%block>
<%! <%!
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
%> %>

View File

@@ -8,7 +8,7 @@ We are also using Bourbon with sass. They are a generic set of mixins, and funct
To use bourbon you need to install it with: To use bourbon you need to install it with:
$ gem install bourbon $ gem install bourbon
Then to generate Sass files cd to templates directory and watch the sass files for developement: Then to generate Sass files cd to templates directory and watch the sass files for development:
$ sass --watch sass:../static/css/ -r ./sass/bourbon/lib/bourbon.rb $ sass --watch sass:../static/css/ -r ./sass/bourbon/lib/bourbon.rb
To generate a compressed css file for production: To generate a compressed css file for production:

View File

@@ -7,31 +7,5 @@ div.gradebook-wrapper {
h1 { h1 {
@extend .top-header; @extend .top-header;
} }
> ol {
list-style: none;
margin-top: lh();
> li {
@extend .clearfix;
border-bottom: 1px solid #e3e3e3;
display: table;
padding: lh() 0;
width: 100%;
&:last-child {
border-bottom: 0px;
}
h2 {
border-right: 1px dashed #ddd;
@include box-sizing(border-box);
display: table-cell;
margin: 0;
padding: 0;
width: flex-grid(2, 9);
vertical-align: top;
}
}
}
} }
} }

View File

@@ -21,12 +21,12 @@ div.info-wrapper {
@extend .clearfix; @extend .clearfix;
border-bottom: 1px solid #e3e3e3; border-bottom: 1px solid #e3e3e3;
&:first-child { // &:first-child {
padding: lh(.5); // padding: lh(.5);
margin-left: (-(lh(.5))); // margin-left: (-(lh(.5)));
background: $cream; // background: $cream;
border-bottom: 1px solid darken($cream, 10%); // border-bottom: 1px solid darken($cream, 10%);
} // }
h2 { h2 {
float: left; float: left;
@@ -39,6 +39,10 @@ div.info-wrapper {
width: flex-grid(7, 9); width: flex-grid(7, 9);
margin-bottom: 0; margin-bottom: 0;
li {
margin-bottom: lh(.5);
}
p { p {
&:last-child { &:last-child {
margin-bottom: 0; margin-bottom: 0;

View File

@@ -3,7 +3,7 @@
// Base layout // Base layout
@import "base/reset", "base/font-face"; @import "base/reset", "base/font-face";
@import "base/variables", "base/functions", "base/extends", "base/base"; @import "base/variables", "base/functions", "base/extends", "base/base";
@import "layout/layout", "layout/header", "layout/footer", "layout/leanmodal"; @import "layout/layout", "layout/header", "layout/footer", "layout/calculator", "layout/leanmodal";
@import "plugins/jquery-ui-1.8.16.custom"; @import "plugins/jquery-ui-1.8.16.custom";
// pages // pages

View File

@@ -61,8 +61,13 @@ a {
text-decoration:none; text-decoration:none;
} }
p &, li > &, span > &, .inline {
border-bottom: 1px solid #bbb;
font-style: italic;
}
&:hover, &:focus { &:hover, &:focus {
text-decoration:underline; color: #000;
} }
} }

View File

@@ -74,11 +74,16 @@ h1.top-header {
h1, h2 { h1, h2 {
font-size: 18px; font-size: 18px;
font-weight: 800; font-weight: bold;
letter-spacing: 0; letter-spacing: 0;
text-transform: none; text-transform: none;
} }
a {
font-style: normal;
border: none;
}
.bottom-border { .bottom-border {
@include box-shadow(0 1px 0 #eee); @include box-shadow(0 1px 0 #eee);
border-bottom: 1px solid #d3d3d3; border-bottom: 1px solid #d3d3d3;
@@ -180,6 +185,7 @@ h1.top-header {
} }
a { a {
border-bottom: 0;
color: darken($cream, 80%); color: darken($cream, 80%);
&:hover { &:hover {

View File

@@ -20,3 +20,9 @@
@function lh($amount: 1) { @function lh($amount: 1) {
@return $body-line-height * $amount; @return $body-line-height * $amount;
} }
@mixin hide-text(){
text-indent: -9999px;
overflow: hidden;
display: block;
}

View File

@@ -1,7 +1,11 @@
// Custom Functions // Custom Functions
@import "functions/deprecated-webkit-gradient"; @import "functions/deprecated-webkit-gradient";
@import "functions/flex-grid";
@import "functions/grid-width"; @import "functions/grid-width";
@import "functions/linear-gradient";
@import "functions/modular-scale"; @import "functions/modular-scale";
@import "functions/radial-gradient";
@import "functions/render-gradients";
@import "functions/tint-shade"; @import "functions/tint-shade";
// CSS3 Mixins // CSS3 Mixins
@@ -20,9 +24,11 @@
@import "css3/radial-gradient"; @import "css3/radial-gradient";
@import "css3/transform"; @import "css3/transform";
@import "css3/transition"; @import "css3/transition";
@import "css3/user-select";
// Addons & other mixins // Addons & other mixins
@import "addons/button"; @import "addons/button";
@import "addons/clearfix";
@import "addons/font-family"; @import "addons/font-family";
@import "addons/html5-input-types"; @import "addons/html5-input-types";
@import "addons/position"; @import "addons/position";

View File

@@ -0,0 +1,29 @@
// Micro clearfix provides an easy way to contain floats without adding additional markup
//
// Example usage:
//
// // Contain all floats within .wrapper
// .wrapper {
// @include clearfix;
// .content,
// .sidebar {
// float : left;
// }
// }
@mixin clearfix {
zoom: 1;
&:before,
&:after {
content: "";
display: table;
}
&:after {
clear: both;
}
}
// Acknowledgements
// Micro clearfix: [Nicolas Gallagher](http://nicolasgallagher.com/micro-clearfix-hack/)

View File

@@ -2,8 +2,6 @@
// Background-image property for adding multiple background images with // Background-image property for adding multiple background images with
// gradients, or for stringing multiple gradients together. // gradients, or for stringing multiple gradients together.
//************************************************************************// //************************************************************************//
@import "../functions/linear-gradient";
@import "../functions/radial-gradient";
@mixin background-image( @mixin background-image(
$image-1 , $image-2: false, $image-1 , $image-2: false,
@@ -50,18 +48,6 @@
} }
@function render-gradients($gradients, $gradient-type, $vendor: false) {
$vendor-gradients: false;
@if $vendor {
$vendor-gradients: -#{$vendor}-#{$gradient-type}-gradient($gradients);
}
@else if $vendor == false {
$vendor-gradients: "#{$gradient-type}-gradient(#{$gradients})";
$vendor-gradients: unquote($vendor-gradients);
}
@return $vendor-gradients;
}
//Examples: //Examples:
//@include background-image(linear-gradient(top, orange, red)); //@include background-image(linear-gradient(top, orange, red));

View File

@@ -1,7 +1,56 @@
@mixin border-image ($image) { @mixin border-image($images) {
-webkit-border-image: $image; -webkit-border-image: border-add-prefix($images, webkit);
-moz-border-image: $image; -moz-border-image: border-add-prefix($images, moz);
-ms-border-image: $image; -o-border-image: border-add-prefix($images, o);
-o-border-image: $image; border-image: border-add-prefix($images);
border-image: $image;
} }
@function border-add-prefix($images, $vendor: false) {
$border-image: ();
$images-type: type-of(nth($images, 1));
$first-var: nth(nth($images, 1), 1); // Get type of Gradient (Linear || radial)
// If input is a gradient
@if $images-type == string {
@if ($first-var == "linear") or ($first-var == "radial") {
@for $i from 2 through length($images) {
$gradient-type: nth($images, 1); // Get type of gradient (linear || radial)
$gradient-args: nth($images, $i); // Get actual gradient (red, blue)
$border-image: render-gradients($gradient-args, $gradient-type, $vendor);
}
}
// If input is a URL
@else {
$border-image: $images;
}
}
// If input is gradient or url + additional args
@else if $images-type == list {
@for $i from 1 through length($images) {
$type: type-of(nth($images, $i)); // Get type of variable - List or String
// If variable is a list - Gradient
@if $type == list {
$gradient-type: nth(nth($images, $i), 1); // Get type of gradient (linear || radial)
$gradient-args: nth(nth($images, $i), 2); // Get actual gradient (red, blue)
$border-image: render-gradients($gradient-args, $gradient-type, $vendor);
}
// If variable is a string - Image or number
@else if ($type == string) or ($type == number) {
$border-image: append($border-image, nth($images, $i));
}
}
}
@return $border-image;
}
//Examples:
// @include border-image(url("image.png"));
// @include border-image(url("image.png") 20 stretch);
// @include border-image(linear-gradient(45deg, orange, yellow));
// @include border-image(linear-gradient(45deg, orange, yellow) stretch);
// @include border-image(linear-gradient(45deg, orange, yellow) 20 30 40 50 stretch round);
// @include border-image(radial-gradient(top, cover, orange, yellow, orange));

View File

@@ -9,6 +9,7 @@
@mixin border-top-left-radius($radii) { @mixin border-top-left-radius($radii) {
-webkit-border-top-left-radius: $radii; -webkit-border-top-left-radius: $radii;
-moz-border-top-left-radius: $radii; -moz-border-top-left-radius: $radii;
-moz-border-radius-topleft: $radii;
-ms-border-top-left-radius: $radii; -ms-border-top-left-radius: $radii;
-o-border-top-left-radius: $radii; -o-border-top-left-radius: $radii;
border-top-left-radius: $radii; border-top-left-radius: $radii;
@@ -17,6 +18,7 @@
@mixin border-top-right-radius($radii) { @mixin border-top-right-radius($radii) {
-webkit-border-top-right-radius: $radii; -webkit-border-top-right-radius: $radii;
-moz-border-top-right-radius: $radii; -moz-border-top-right-radius: $radii;
-moz-border-radius-topright: $radii;
-ms-border-top-right-radius: $radii; -ms-border-top-right-radius: $radii;
-o-border-top-right-radius: $radii; -o-border-top-right-radius: $radii;
border-top-right-radius: $radii; border-top-right-radius: $radii;
@@ -25,6 +27,7 @@
@mixin border-bottom-left-radius($radii) { @mixin border-bottom-left-radius($radii) {
-webkit-border-bottom-left-radius: $radii; -webkit-border-bottom-left-radius: $radii;
-moz-border-bottom-left-radius: $radii; -moz-border-bottom-left-radius: $radii;
-moz-border-radius-bottomleft: $radii;
-ms-border-bottom-left-radius: $radii; -ms-border-bottom-left-radius: $radii;
-o-border-bottom-left-radius: $radii; -o-border-bottom-left-radius: $radii;
border-bottom-left-radius: $radii; border-bottom-left-radius: $radii;
@@ -33,6 +36,7 @@
@mixin border-bottom-right-radius($radii) { @mixin border-bottom-right-radius($radii) {
-webkit-border-bottom-right-radius: $radii; -webkit-border-bottom-right-radius: $radii;
-moz-border-bottom-right-radius: $radii; -moz-border-bottom-right-radius: $radii;
-moz-border-radius-bottomright: $radii;
-ms-border-bottom-right-radius: $radii; -ms-border-bottom-right-radius: $radii;
-o-border-bottom-right-radius: $radii; -o-border-bottom-right-radius: $radii;
border-bottom-right-radius: $radii; border-bottom-right-radius: $radii;

View File

@@ -10,7 +10,5 @@
-webkit-box-shadow: $full; -webkit-box-shadow: $full;
-moz-box-shadow: $full; -moz-box-shadow: $full;
-ms-box-shadow: $full;
-o-box-shadow: $full;
box-shadow: $full; box-shadow: $full;
} }

View File

@@ -2,7 +2,5 @@
// content-box | border-box | inherit // content-box | border-box | inherit
-webkit-box-sizing: $box; -webkit-box-sizing: $box;
-moz-box-sizing: $box; -moz-box-sizing: $box;
-ms-box-sizing: $box;
-o-box-sizing: $box;
box-sizing: $box; box-sizing: $box;
} }

View File

@@ -20,7 +20,7 @@
$fallback-color: nth($G1, 1); $fallback-color: nth($G1, 1);
// If $fallback is a color use that color as the fallback color // If $fallback is a color use that color as the fallback color
@if type-of($fallback) == color { @if (type-of($fallback) == color) or ($fallback == "transparent") {
$fallback-color: $fallback; $fallback-color: $fallback;
} }

View File

@@ -4,11 +4,20 @@
$G3: false, $G4: false, $G3: false, $G4: false,
$G5: false, $G6: false, $G5: false, $G6: false,
$G7: false, $G8: false, $G7: false, $G8: false,
$G9: false, $G10: false) { $G9: false, $G10: false,
$fallback: false) {
$full: compact($G1, $G2, $G3, $G4, $G5, $G6, $G7, $G8, $G9, $G10); $full: compact($G1, $G2, $G3, $G4, $G5, $G6, $G7, $G8, $G9, $G10);
background-color: nth($G1, 1); // Set $G1 as the default fallback color
$fallback-color: nth($G1, 1);
// If $fallback is a color use that color as the fallback color
@if (type-of($fallback) == color) or ($fallback == "transparent") {
$fallback-color: $fallback;
}
background-color: $fallback-color;
background-image: deprecated-webkit-gradient(radial, $full); // Safari <= 5.0 background-image: deprecated-webkit-gradient(radial, $full); // Safari <= 5.0
background-image: -webkit-radial-gradient($pos, $shape-size, $full); background-image: -webkit-radial-gradient($pos, $shape-size, $full);
background-image: -moz-radial-gradient($pos, $shape-size, $full); background-image: -moz-radial-gradient($pos, $shape-size, $full);

View File

@@ -0,0 +1,6 @@
@mixin user-select($arg: none) {
-webkit-user-select: $arg;
-moz-user-select: $arg;
-ms-user-select: $arg;
user-select: $arg;
}

View File

@@ -0,0 +1,35 @@
// Flexible grid
@function flex-grid($columns, $container-columns: $fg-max-columns) {
$width: $columns * $fg-column + ($columns - 1) * $fg-gutter;
$container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
@return percentage($width / $container-width);
}
// Flexible gutter
@function flex-gutter($container-columns: $fg-max-columns, $gutter: $fg-gutter) {
$container-width: $container-columns * $fg-column + ($container-columns - 1) * $fg-gutter;
@return percentage($gutter / $container-width);
}
// The $fg-column, $fg-gutter and $fg-max-columns variables must be defined in your base stylesheet to properly use the flex-grid function.
// This function takes the fluid grid equation (target / context = result) and uses columns to help define each.
//
// $fg-column: 60px; // Column Width
// $fg-gutter: 25px; // Gutter Width
// $fg-max-columns: 12; // Total Columns For Main Container
//
// div {
// width: flex-grid(4); // returns (315px / 1020px) = 30.882353%;
// margin-left: flex-gutter(); // returns (25px / 1020px) = 2.45098%;
//
// p {
// width: flex-grid(2, 4); // returns (145px / 315px) = 46.031746%;
// float: left;
// margin: flex-gutter(4); // returns (25px / 315px) = 7.936508%;
// }
//
// blockquote {
// float: left;
// width: flex-grid(2, 4); // returns (145px / 315px) = 46.031746%;
// }
// }

View File

@@ -0,0 +1,14 @@
// User for linear and radial gradients within background-image or border-image properties
@function render-gradients($gradients, $gradient-type, $vendor: false) {
$vendor-gradients: false;
@if $vendor {
$vendor-gradients: -#{$vendor}-#{$gradient-type}-gradient($gradients);
}
@else if $vendor == false {
$vendor-gradients: "#{$gradient-type}-gradient(#{$gradients})";
$vendor-gradients: unquote($vendor-gradients);
}
@return $vendor-gradients;
}

View File

@@ -54,6 +54,7 @@ nav.sequence-nav {
padding: 15px 4px 14px; padding: 15px 4px 14px;
width: 28px; width: 28px;
height: 17px; height: 17px;
@include transition(all, .4s, $ease-in-out-quad);
// @media screen and (max-width: 800px) { // @media screen and (max-width: 800px) {
// padding: 12px 8px; // padding: 12px 8px;
@@ -118,16 +119,24 @@ nav.sequence-nav {
} }
p { p {
position: absolute; // display: none;
display: none; // visibility: hidden;
background: #333; background: #333;
padding: 6px;
white-space: pre-wrap;
z-index: 99;
margin: 4px 0 0 -5px;
text-shadow: 0 -1px 0 #000;
color: #fff; color: #fff;
line-height: lh(); line-height: lh();
margin: 0px 0 0 -5px;
opacity: 0;
padding: 6px;
position: absolute;
text-shadow: 0 -1px 0 #000;
@include transition(all, .6s, $ease-in-out-quart);
white-space: pre-wrap;
z-index: 99;
&.shown {
opacity: 1;
margin-top: 4px;
}
&:empty { &:empty {
background: none; background: none;
@@ -146,7 +155,6 @@ nav.sequence-nav {
top: -5px; top: -5px;
left: 18px; left: 18px;
@include transform(rotate(45deg)); @include transform(rotate(45deg));
@include transition();
width: 10px; width: 10px;
} }
} }
@@ -215,15 +223,24 @@ nav.sequence-nav {
section.course-content { section.course-content {
position: relative;
div#seq_content {
margin-bottom: 60px;
}
nav.sequence-bottom { nav.sequence-bottom {
margin-bottom: -(lh()); position: absolute;
bottom: 0;
right: 50%;
margin-right: -53px;
ul { ul {
@extend .clearfix; @extend .clearfix;
background-color: darken(#F6EFD4, 5%);
border: 1px solid darken(#f6efd4, 20%); border: 1px solid darken(#f6efd4, 20%);
border-bottom: 0; border-bottom: 0;
@include border-radius(3px 3px 0 0); @include border-radius(3px 3px 0 0);
margin: lh() auto 0;
overflow: hidden; overflow: hidden;
width: 106px; width: 106px;
background-color: darken($cream, 5%); background-color: darken($cream, 5%);
@@ -238,22 +255,25 @@ section.course-content {
a { a {
background-position: center center; background-position: center center;
background-repeat: no-repeat; background-repeat: no-repeat;
border-bottom: none;
display: block;
padding: lh(.75) 4px; padding: lh(.75) 4px;
text-indent: -9999px; text-indent: -9999px;
width: 45px; width: 45px;
display: block; display: block;
@include transition(all, .4s, $ease-in-out-quad);
&:hover { &:hover {
text-decoration: none;
color: darken($cream, 60%);
text-decoration: none;
opacity: .5;
background-color: darken($cream, 10%); background-color: darken($cream, 10%);
color: darken(#F6EFD4, 60%);
color: darken($cream, 60%);
opacity: .5;
text-decoration: none;
} }
&.disabled { &.disabled {
opacity: .4;
background-color: lighten($cream, 10%); background-color: lighten($cream, 10%);
opacity: .4;
} }
} }
} }

View File

@@ -34,16 +34,37 @@ section.course-index {
ul.ui-accordion-content { ul.ui-accordion-content {
@include border-radius(0); @include border-radius(0);
@include box-shadow( inset -1px 0 0 #e6e6e6); @include box-shadow( inset -1px 0 0 #e6e6e6);
background: #d6d6d6; background: #dadada;
border: none; border: none;
border-bottom: 1px solid #c3c3c3; border-bottom: 1px solid #c3c3c3;
font-size: 12px; font-size: 12px;
margin: 0; margin: 0;
overflow: hidden; // overflow: visible;
li { li {
position: relative;
&.active { &.active {
font-weight: bold; font-weight: bold;
p.subtitle {
font-weight: normal;
}
// &:after {
// content: " ";
// width: 16px;
// height: 16px;
// position: absolute;
// right: -35px;
// top: 7px;
// display: block;
// background-color: #dadada;
// border-top: 1px solid #c3c3c3;
// border-right: 1px solid #c3c3c3;
// z-index: 99;
// @include transform(rotate(45deg));
// }
} }
a { a {

View File

@@ -95,6 +95,7 @@ section.course-content {
a { a {
@include box-shadow(1px 0 0 #555); @include box-shadow(1px 0 0 #555);
border-bottom: none;
border-right: 1px solid #000; border-right: 1px solid #000;
display: block; display: block;
cursor: pointer; cursor: pointer;
@@ -141,20 +142,13 @@ section.course-content {
line-height: 46px; //height of play pause buttons line-height: 46px; //height of play pause buttons
margin-right: 0; margin-right: 0;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
opacity: .7;
@include transition();
h3 { h3 {
@include inline-block(); @include inline-block();
padding: 0 lh(.5);
a { font-weight: normal;
color: #fff;
padding: 0 lh(.5);
@include inline-block();
&:hover {
text-decoration: none;
// background-color: #444;
}
}
} }
// fix for now // fix for now
@@ -164,13 +158,23 @@ section.course-content {
li { li {
cursor: pointer; cursor: pointer;
color: #fff;
@include inline-block(); @include inline-block();
&.active { &.active {
font-weight: bold; font-weight: bold;
} }
&:hover {
color: #aaa;
}
} }
} }
&:hover {
opacity: 1;
background-color: #444;
}
} }
a.hide-subtitles { a.hide-subtitles {
@@ -184,6 +188,7 @@ section.course-content {
font-weight: 800; font-weight: 800;
background: url('/static/images/cc.png') 16px center no-repeat; background: url('/static/images/cc.png') 16px center no-repeat;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
@include transition();
&:hover { &:hover {
color: #fff; color: #fff;

View File

@@ -125,6 +125,7 @@ div.paginator {
a { a {
color: #555; color: #555;
text-decoration: none; text-decoration: none;
border-bottom: none;
} }
} }
} }

View File

@@ -23,7 +23,10 @@
font-weight: normal; font-weight: normal;
@include border-radius(4px 4px 0 0); @include border-radius(4px 4px 0 0);
} }
a { a {
color: #fb7321; color: #fb7321;
text-decoration: underline; text-decoration: underline;
font-weight: bold; } } font-weight: bold;
}
}

View File

@@ -64,7 +64,6 @@ div.question-header {
overflow: hidden; overflow: hidden;
padding: 5px 0 10px; padding: 5px 0 10px;
div.tag-list { div.tag-list {
display: inline-block; display: inline-block;
float:left; float:left;
@@ -79,7 +78,6 @@ div.question-header {
width: flex-grid(4,8); width: flex-grid(4,8);
a { a {
&.question-delete { &.question-delete {
color: $mit-red; color: $mit-red;
text-decoration: none; text-decoration: none;
@@ -122,6 +120,11 @@ div.question-header {
width: 20%; width: 20%;
border-left: 1px dashed #ddd; border-left: 1px dashed #ddd;
a {
border-bottom: none;
font-style: normal;
}
div.post-update-info { div.post-update-info {
@include box-sizing(border-box); @include box-sizing(border-box);
padding: 10px; padding: 10px;
@@ -140,10 +143,6 @@ div.question-header {
} }
} }
a {
color:$mit-red ;
}
div.change-date { div.change-date {
font-size: 12px; font-size: 12px;
margin-bottom: 2px; margin-bottom: 2px;
@@ -327,6 +326,7 @@ div.question-header {
div.controls { div.controls {
border-top: 1px solid #efefef; border-top: 1px solid #efefef;
text-align: right; text-align: right;
a { a {
display: inline-block; display: inline-block;
font-size: 12px; font-size: 12px;

View File

@@ -51,6 +51,8 @@ ul.tags {
a { a {
color: #555; color: #555;
text-decoration: none; text-decoration: none;
border-bottom: none;
font-style: normal;
} }
} }
} }

View File

@@ -0,0 +1,138 @@
li.calc-main {
bottom: 0;
left: 0;
position: fixed;
width: 100%;
a.calc {
@include hide-text;
background: url("/static/images/calc-icon.png") rgba(#111, .9) no-repeat center;
border-bottom: 0;
color: #fff;
float: right;
margin-right: 10px;
@include border-radius(3px 3px 0 0);
@include inline-block;
padding: 8px 12px;
width: 16px;
height: 20px;
&:hover {
opacity: .8;
}
&.closed {
background-image: url("/static/images/close-calc-icon.png");
}
}
div#calculator_wrapper {
background: rgba(#111, .9);
clear: both;
form {
padding: lh();
@extend .clearfix;
input#calculator_button {
background: #111;
border: 1px solid #000;
@include border-radius(0);
@include box-shadow(none);
@include box-sizing(border-box);
color: #fff;
font-size: 30px;
font-weight: bold;
padding: 0;
text-shadow: none;
width: flex-grid(.5) + flex-gutter();
float: left;
margin: 0 (flex-gutter() / 2);
&:hover {
color: #333;
}
}
input#calculator_output {
background: #222;
border: 0;
@include box-shadow(none);
@include box-sizing(border-box);
color: #fff;
float: left;
font-size: 16px;
font-weight: bold;
margin: 1px 0 0;
padding: 10px;
width: flex-grid(4);
}
div.input-wrapper {
position: relative;
@extend .clearfix;
width: flex-grid(7.5);
margin: 0;
float: left;
input#calculator_input {
border: none;
@include box-shadow(none);
@include box-sizing(border-box);
font-size: 16px;
padding: 10px;
width: 100%;
&:focus {
outline: none;
border: none;
}
}
div.help-wrapper {
position: absolute;
right: 8px;
top: 15px;
a {
@include hide-text;
width: 17px;
height: 17px;
background: url("/static/images/info-icon.png") center center no-repeat;
}
dl {
background: #fff;
@include border-radius(3px);
@include box-shadow(0 0 3px #999);
color: #333;
opacity: 0;
padding: 10px;
position: absolute;
right: -40px;
top: -110px;
width: 500px;
@include transition();
&.shown {
opacity: 1;
top: -115px;
}
dt {
clear: both;
float: left;
font-weight: bold;
padding-right: lh(.5);
}
dd {
float: left;
}
}
}
}
}
}
}

View File

@@ -72,6 +72,7 @@ footer {
height: 29px; height: 29px;
width: 28px; width: 28px;
text-indent: -9999px; text-indent: -9999px;
border-bottom: 0;
&:hover { &:hover {
opacity: .8; opacity: .8;

View File

@@ -52,7 +52,7 @@ div.header-wrapper {
a { a {
color: #fff; color: #fff;
text-decoration: none; border: none;
&:hover { &:hover {
color: rgba(#fff, .7); color: rgba(#fff, .7);
@@ -104,7 +104,8 @@ div.header-wrapper {
display: block; display: block;
font-weight: bold; font-weight: bold;
padding: 10px lh() 8px; padding: 10px lh() 8px;
text-decoration: none; border: none;
font-style: normal;
@media screen and (max-width: 1020px) { @media screen and (max-width: 1020px) {
padding: 10px lh(.7) 8px; padding: 10px lh(.7) 8px;

View File

@@ -219,52 +219,3 @@ div#feedback_div{
} }
} }
div#calculator_div {
max-width: 500px;
form {
padding-bottom: lh();
margin-bottom: lh();
border-bottom: 1px solid #ddd;
input#calculator_input {
width: 400px;
}
input#calculator_button {
background: 0;
color: $mit-red;
border: 0;
@include box-shadow(none);
padding: 0;
text-shadow: none;
&:hover {
color: #333;
}
}
input#calculator_output {
border: 0;
background: none;
padding: lh(.35);
font-size: 24px;
width: 378px;
font-weight: bold;
margin-top: 4px;
}
}
dl {
dt {
float: left;
clear: both;
padding-right: lh(.5);
font-weight: bold;
}
dd {
float: left;
}
}
}

View File

@@ -2,7 +2,7 @@
<%inherit file="simplewiki_base.html"/> <%inherit file="simplewiki_base.html"/>
<%block name="title"><title>Create Article - MITx 6.002x Wiki</title></%block> <%block name="title"><title>Wiki Create Article MITx 6.002x</title></%block>
<%block name="wiki_page_title"> <%block name="wiki_page_title">
<h1>Create article</h1> <h1>Create article</h1>

View File

@@ -6,7 +6,7 @@
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse
%> %>
<%block name="title"><title>Oops... - MITx 6.002x Wiki</title></%block> <%block name="title"><title>Wiki Error MITx 6.002x</title></%block>
<%block name="wiki_page_title"> <%block name="wiki_page_title">

View File

@@ -2,7 +2,7 @@
<%inherit file="simplewiki_base.html"/> <%inherit file="simplewiki_base.html"/>
<%block name="title"><title>${"Revision history of " + wiki_title + " - " if wiki_title is not UNDEFINED else ""}MITx 6.002x Wiki</title></%block> <%block name="title"><title>${"Revision history of " + wiki_title + " - " if wiki_title is not UNDEFINED else ""}Wiki MITx 6.002x</title></%block>
<%! <%!
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse

View File

@@ -2,7 +2,7 @@
<%inherit file="simplewiki_base.html"/> <%inherit file="simplewiki_base.html"/>
<%block name="title"><title>Revision feed - MITx 6.002x Wiki</title></%block> <%block name="title"><title>Wiki - Revision feed - MITx 6.002x</title></%block>
<%! <%!
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse

View File

@@ -2,7 +2,7 @@
<%inherit file="simplewiki_base.html"/> <%inherit file="simplewiki_base.html"/>
<%block name="title"><title>Search Results - MITx 6.002x Wiki</title></%block> <%block name="title"><title>Wiki - Search Results - MITx 6.002x</title></%block>
<%! <%!
from django.core.urlresolvers import reverse from django.core.urlresolvers import reverse

View File

@@ -2,7 +2,7 @@
<%inherit file="simplewiki_base.html"/> <%inherit file="simplewiki_base.html"/>
<%block name="title"><title>${wiki_title + " - " if wiki_title is not UNDEFINED else ""}MITx 6.002x Wiki</title></%block> <%block name="title"><title>${wiki_title + " - " if wiki_title is not UNDEFINED else ""}Wiki MITx 6.002x</title></%block>
<%block name="wiki_page_title"> <%block name="wiki_page_title">
<h1>${ wiki_article.title } ${'<span style="color: red;">- Deleted Revision!</span>' if wiki_current_revision_deleted else ''}</h1> <h1>${ wiki_article.title } ${'<span style="color: red;">- Deleted Revision!</span>' if wiki_current_revision_deleted else ''}</h1>

View File

@@ -1,4 +1,5 @@
<%inherit file="main.html" /> <%inherit file="main.html" />
<%block name="title"><title>Textbook MITx 6.002x</title></%block>
<%block name="js_extra"> <%block name="js_extra">
<script> <script>

View File

@@ -1,4 +1,5 @@
<%inherit file="main.html" /> <%inherit file="main.html" />
<%block name="title"><title>Textbook MITx 6.002x</title></%block>
<div id="bodyContent"> <div id="bodyContent">
<%include file="navigation.html" /> <%include file="navigation.html" />

View File

@@ -28,11 +28,11 @@
<div class="secondary-controls"> <div class="secondary-controls">
<div class="speeds"> <div class="speeds">
<h3><a href="#">Speed</a></h3> <h3>Speed</h3>
<ol id="video_speeds"></ol> <ol id="video_speeds"></ol>
</div> </div>
<a href="#" class="hide-subtitles">on</a> <a href="#" class="hide-subtitles">turn off</a>
</div> </div>
</section> </section>
</section> </section>
@@ -66,7 +66,7 @@
$('div.video-subtitles').toggleClass('closed'); $('div.video-subtitles').toggleClass('closed');
var link_text = $('.hide-subtitles').text(); var link_text = $('.hide-subtitles').text();
$(this).text((link_text == 'on') ? 'off' : 'on'); $(this).text((link_text == 'turn off') ? 'turn on' : 'turn off');
return false; return false;
}); });
}); });