diff --git a/404.php b/404.php deleted file mode 100644 index a3e9b97..0000000 --- a/404.php +++ /dev/null @@ -1,19 +0,0 @@ - -
-

Oh noes!

-

Looks like that page doesn't exist.

-
- 'Left', - 'center' => 'Center', - 'right' => 'Right', - 'hidden' => 'Hidden', - ); -} - -function openbadges_page_attributes_meta_box ($post) { - if ('page' == $post->post_type) { - $title_alignment = get_post_meta($post->ID, 'title_alignment', true); - $embellished = !!get_post_meta($post->ID, 'embellish_page', true); - $hide_meta = get_post_meta($post->ID, 'hide_meta', true); - ?> -

- - -

- checked="checked" value="1"> - -

- checked="checked" value="1"> - - Message Sent.'; - } -} -?> \ No newline at end of file diff --git a/footer.php b/footer.php deleted file mode 100644 index e4940ff..0000000 --- a/footer.php +++ /dev/null @@ -1,33 +0,0 @@ - ID, 'hide_meta', true)): - if (is_active_sidebar('footer')): ?> - - - - - - - - \ No newline at end of file diff --git a/full_width.php b/full_width.php deleted file mode 100644 index 31bdc7b..0000000 --- a/full_width.php +++ /dev/null @@ -1,12 +0,0 @@ -\s*)$|', '$1', $tag); - return $tag; -} - -add_action('style_loader_tag', 'openbadges_clean_tag', 1); - - -/* - * Set up widgets - */ - -function openbadges_setup_widgets () { - register_sidebar(array( - 'name' => __('Footer', 'openbadges'), - 'id' => 'footer', - 'description' => __('Appears at the bottom of every page', 'openbadges'), - 'before_widget' => '
', - 'after_widget' => '
', - 'before_title' => '

', - 'after_title' => '

', - )); -} - -add_action('widgets_init', 'openbadges_setup_widgets'); - - -/* - * Set up menus - */ - -function openbadges_setup_menus () { - register_nav_menus(array( - 'primary' => __('Main Menu', 'openbadges'), - 'footer' => __('Secondary Footer Menu', 'openbadges'), - )); -} - -add_action('after_setup_theme', 'openbadges_setup_menus'); - - -/* - * Set up admin config - */ - -function openbadges_admin_init () { - require_once(dirname(__FILE__).'/admin/init.php'); -} - -add_action('admin_init', 'openbadges_admin_init'); - - - -/* - * Load Scripts - */ -add_action( 'wp_enqueue_scripts', 'load_scripts' ); -function load_scripts() { - wp_enqueue_script('tabzilla', '//www.mozilla.org/tabzilla/media/js/tabzilla.js', '','',true); - wp_deregister_script( 'jquery' ); - wp_register_script( 'jquery', '//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js', false, '1.9.1'); - wp_enqueue_script( 'jquery' ); - wp_enqueue_script('global-logic', get_template_directory_uri() . '/media/js/global.js', 'jquery','',true); - wp_register_style( 'core-styles', get_template_directory_uri() . '/media/css/core.css', array(), '1.1', 'all' ); - wp_register_style( 'tabzilla-styles', 'http://mozorg.cdn.mozilla.net/media/css/tabzilla-min.css', array(), '1.0', 'all' ); - wp_enqueue_style( 'core-styles' ); - wp_enqueue_style( 'tabzilla-styles' ); -} - - - - -?> \ No newline at end of file diff --git a/header.php b/header.php deleted file mode 100644 index e3cb83c..0000000 --- a/header.php +++ /dev/null @@ -1,24 +0,0 @@ - - -> - - - - - <?php wp_title('|', true, 'right'); bloginfo('name'); ?> - - - - - > - - - - diff --git a/index.html b/index.html new file mode 100644 index 0000000..b941c4f --- /dev/null +++ b/index.html @@ -0,0 +1,216 @@ + + + + + + + + Open Badges Community + + + + + + + + + + + + + +
+
+

Recognize & be recognized.

+

Help shape the future of Open Badges.

+ +
+ + +
+ +
+
+

Learn

+

Curious about recognition of skills & interests? +You’re in the right place. Welcome.

+ + +
+
At Mozilla, we believe that learning happens over the course of a lifetime and frequently beyond the classroom. With the support of the MacArthur Foundation, we’ve built the Open Badges Infrastructure, which makes it possible for badges issued by different companies and communities to be interoperable and shareable across the web.
+
People and organizations with content to share align their badges with the open standard, which makes it possible for someone who sees Open Badges to discover the criteria and evidence behind them. Learners around the world are using these portable badges to realize increased learning and professional opportunities.
+
+
+ + + + + + +
+ + +
+ +
+
+

Design

+

Discover & share information about +badge system creation.

+ + +
Hundreds of organizations and individuals have designed and issued Open Badges. They include educators, multinational companies, non-profits, industry alliances, and people interested in professional development.
+
The curriculum that their badges represent include a huge variety of skills, competencies, and interests. You too can create badges for your community members and try the visual design exercises in this video. And stay tuned for a design toolkit launching soon!
+
+
+ + +
+ + +
+ +
+
+

Code

+

Access development documentation +& contribute to Open Badges.

+ + + + + + + +
+ + +
+ +
+
+

News

+

Get up to speed on the latest in the world of alternative accreditation.

+ +
+
+

Blog

+
  • Badge Alliance February 1, 2016
    Badge Alliance: The official publications of the Badge Alliance are switching platforms, over to this collection on Medium. The Tumblr you are reading will remain up for archival purposes. Thanks for …
  • Now the quick badger jumps over the lazy fox August 4, 2015
    An issuer organization decides to start a badge program, so its staff members design a badge system to go with the program’s content delivery and assessment practices. Then they run badge softwa …
  • Badge Alliance FAQ – July 2015 July 15, 2015
    There’s so much we want to say – we can’t put it all into an over-long announcement. Here is a growing list of some of the top questions:What’s happening to the Badge Alliance?The Badge Alliance …
  • The Badge Alliance in 2015 July 8, 2015
    2014 was a great building year for the badges ecosystem and the Badge Alliance (BA) network, and 2015 has been an exciting year so far. Rooms are overflowing for badging-related presentations at confe …
  • Open Badges spec v1.1 Release May 1, 2015
    Open Badges spec v1.1 Release: bananigans: I’m excited to share with you all the work we’ve been devoting ourselves to in the Badge Alliance Standard Working Group over the past several months. We are …
  • New IMS Digital Credentialing Initiative April 21, 2015
    Today is an exciting day for the open badges community! IMS Global, the leading education technology standards body, announced that they are kicking off a new IMS Digital Credentialing initiative.In c …
  • Open Badges Community Call, April 8, 2015 April 14, 2015
    Agenda: http://bit.ly/CC15_April8Audio: http://bit.ly/CC15_April8audioThis week we dived into a discussion on soft skills and workforce development, led by those who kickstarted a conversation last we …
  • An Open Can of Tin Badges – Tin Can API March 31, 2015
    An Open Can of Tin Badges – Tin Can API: People have been talking about a crossover between Open Badges and Tin Can (xAPI) since 2012. Blogs have been written, ideas shared and there’s even a Twitter …
+ +
+ +
+

Tweets

+ + + +
+ + +
+
+ + +
+ +
+ + + + + + + + + + \ No newline at end of file diff --git a/index.php b/index.php deleted file mode 100644 index 70619eb..0000000 --- a/index.php +++ /dev/null @@ -1,31 +0,0 @@ -ID, 'embellish_page', true)) { - $extra[] = 'embellished'; - } - - if (function_exists('get_additional_body_classes')) { - $extra = array_merge($extra, (array) get_additional_body_classes()); - } else { - $extra[] = 'narrow'; - } - - return array_merge($classes, $extra); -} - -add_filter('body_class','add_body_classes'); - -get_header(); - -if (have_posts()) { - while (have_posts()) { - the_post(); - get_template_part('templates/content', get_post_format()); - } -} - -get_footer(); diff --git a/media/css/badges-101.css b/media/css/badges-101.css deleted file mode 100644 index 07a75dc..0000000 --- a/media/css/badges-101.css +++ /dev/null @@ -1,210 +0,0 @@ -/* Badges 101 lesson & quiz slideshow */ -#badges-101.inline { - visibility: hidden; - font: normal 16px Georgia,"Times New Roman",Times,serif; - color: #656565; - position: relative; - padding-bottom: 1.5em; -} - -#badges-101 .intro { - font-style: italic; - width: 100%; - margin-top: 0; -} - -#badges-101 .detail { - font-size: 16px; - margin: 40px; -} - -#badges-101 .quiz { - font-size: 18px; -} - -#badges-101 .options { - width: 75%; - margin: 1em auto; - overflow: hidden; -} - -#badges-101 .discussion .answer { - font-style: italic; -} - -#badges-101 .slide { - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - box-sizing: border-box; - padding: 30px; - position: relative; -} - -#badges-101.inline h2 { - font: normal 60px/56px "MetaWebPro-Black", sans-serif; - text-transform: uppercase; - display: block; - margin: 0; -} - -#badges-101 header img { - margin: 2em 0 -100px; -} - -#badges-101.inline header img { - margin: -40px 0 0; -} - -#badges-101.inline header img + h2 { - margin-top: -10px; -} - -#badges-101 header p { - font-style: italic; - margin-top: -1.5em; -} - -#badges-101.inline header p { - font-size: 14px; - margin-top: 4px; -} - -#slides .pagination { - position: absolute; - bottom: 0; - left: 0; - width: 100%; - height: 1.5em; - line-height: 1.5em; - margin: 0; - padding: 0; - text-align: center; -} - -#slides .pagination li { - display: inline; - margin:0 1px; - list-style:none; -} - -#slides .pagination li a { - display: inline-block; - width: 12px; - height: 0; - padding-top: 12px; - background-image: url(../images/quiz/pagination.png); - background-position: 0 0; - overflow: hidden; -} - -#slides .pagination li.current a { - background-position: 0 -12px; -} - -.slides_container { - width:640px; - height:420px; -} -.slides_container div { - width:640px; - height:420px; - display:block; -} - -#badges-101 .button { - width: 100px; - height: 30px; - line-height: 30px; - padding: 0; - float: none; - display: inline-block; -} - -#badges-101 input.button { - width: auto; - padding: 0 10px; -} - -#badges-101 .next { - position: absolute; - bottom: 10px; - right: 20px; -} - -#badges-101 #quickstart-page-1 .next { - position: static; -} - -#badges-101 .discussion { - font-size: 14px; -} - -#badges-101 .true { - float: left; - background-color: #81BC2E; - /* IE10 */ - background-image: -ms-linear-gradient(top, #81BC2E 0%, #659C28 100%); - /* Mozilla Firefox */ - background-image: -moz-linear-gradient(top, #81BC2E 0%, #659C28 100%); - /* Opera */ - background-image: -o-linear-gradient(top, #81BC2E 0%, #659C28 100%); - /* Webkit (Safari/Chrome 10) */ - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #81BC2E), color-stop(1, #659C28)); - /* Webkit (Chrome 11+) */ - background-image: -webkit-linear-gradient(top, #81BC2E 0%, #659C28 100%); - /* Proposed W3C Markup */ - background-image: linear-gradient(top, #81BC2E 0%, #659C28 100%); -} - -#badges-101 .false { - float: right; - background-color: #D63A2B; - /* IE10 */ - background-image: -ms-linear-gradient(top, #E55927 0%, #D63A2B 100%); - /* Mozilla Firefox */ - background-image: -moz-linear-gradient(top, #E55927 0%, #D63A2B 100%); - /* Opera */ - background-image: -o-linear-gradient(top, #E55927 0%, #D63A2B 100%); - /* Webkit (Safari/Chrome 10) */ - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #E55927), color-stop(1, #D63A2B)); - /* Webkit (Chrome 11+) */ - background-image: -webkit-linear-gradient(top, #E55927 0%, #D63A2B 100%); - /* Proposed W3C Markup */ - background-image: linear-gradient(top, #E55927 0%, #D63A2B 100%); -} - -#badges-101 .true:after, -#badges-101 .false:after { - content: ""; -} - -#nav-panel, -#after-badge { - overflow: hidden; - text-align: center; -} - -#nav-panel p, -#after-badge p { - margin-top: 0; -} - -#nav-panel .backpack, -#after-badge .backpack { - display: block; - float: left; - width: 38%; - margin: 1em 0 0 8%; - padding-top: 100px; - background: url("../images/quiz/backpack.png") 50% 0 no-repeat; -} - -#nav-panel .navigator, -#after-badge .navigator { - display: block; - float: right; - width: 38%; - margin: 1em 8% 0 0; - padding-top: 100px; - background: url("../images/quiz/navigatorbadge.png") 50% 0 no-repeat; -} \ No newline at end of file diff --git a/media/css/core.min.css b/media/css/core.min.css deleted file mode 100644 index d36229d..0000000 --- a/media/css/core.min.css +++ /dev/null @@ -1,61 +0,0 @@ -@font-face{font-family:"Open Sans Light";font-style:normal;font-weight:normal;src:url("../fonts/OpenSans-Light-webfont.eot?#iefix") format("embedded-opentype"),url("../fonts/OpenSans-Light-webfont.woff") format("woff"),url("../fonts/OpenSans-Light-webfont.ttf") format("truetype"),url("../fonts/OpenSans-Light-webfont.svg#OpenSansLight") format("svg");}@font-face{font-family:"Open Sans";font-style:normal;font-weight:normal;src:url("../fonts/OpenSans-Regular-webfont.eot?#iefix") format("embedded-opentype"),url("../fonts/OpenSans-Regular-webfont.woff") format("woff"),url("../fonts/OpenSans-Regular-webfont.ttf") format("truetype"),url("../fonts/OpenSans-Regular-webfont.svg#OpenSansRegular") format("svg");}@font-face{font-family:"Open Sans";font-style:normal;font-weight:bold;src:url("../fonts/OpenSans-Semibold-webfont.eot?#iefix") format("embedded-opentype"),url("../fonts/OpenSans-Semibold-webfont.woff") format("woff"),url("../fonts/OpenSans-Semibold-webfont.ttf") format("truetype"),url("../fonts/OpenSans-Semibold-webfont.svg#OpenSansSemibold") format("svg");}@font-face{font-family:"MetaWebPro-Black";src:url(../fonts/MetaWebPro-Black.woff) format('woff');}html,body{margin:0;padding:0;} -a,label.link{color:#b1cf37;cursor:pointer;text-decoration:underline;} -h2,h3,h4{font-weight:normal;margin:2em 0 1em;clear:both;} -h2{font-size:2.75em;} -h3{font-size:1.95em;} -h4{font-size:1.2em;} -p{font-size:1em;margin:1.5em 0 0;line-height:1.5em;} -input{font:inherit;} -@media all and (max-width:740px){h2{margin-top:1em;}}@media all and (max-width:400px){h2{font-size:1.95em;} h3{font-size:1.55em;}}body{background:#000b19;font-family:"Open Sans Light",sans-serif;font-size:18px;color:#F0F0F0;} -h4{color:#5fc9e5;} -.constrained{max-width:950px;padding:0 25px;margin:0 auto;} -@media all and (max-width:400px){.constrained{padding:0 10px;}}.text-left{text-align:left;} -.text-center{text-align:center;} -.text-right{text-align:right;} -.text-hidden{position:absolute;left:-999em;} -.intro{font-size:1.5em;margin:-0.75em 0 0;} -.tagline{font-size:1.5em;margin:-2em 0 0;font-style:italic;} -.reduced{font-size:0.78em;} -#header{background:#e6e7e8;border-top:solid 2px #FFF;border-bottom:solid 6px #5fc9e5;position:relative;}#header a{color:#073A5A;} -#footer{position:relative;border-top:solid 6px #5fc9e5;padding:20px 0;}#footer a{color:inherit;} -#header .constrained,#footer .constrained{overflow:hidden;} -#header a,#footer a{text-decoration:none;} -#header::before,#header::after,#footer::before,#footer::after{content:"";height:6px;width:33.33%;position:absolute;left:33.33%;background:#b1cf37;} -#header::before,#header::after{bottom:-6px;} -#footer::before,#footer::after{top:-6px;} -#header::after,#footer::after{left:66.66%;background:#f48123;} -#tabzilla{margin-top:-28px;} -#header h1,#footer .footnote,#footer .support{margin:0;padding:28px 0;} -#home,#footer .footnote a{display:block;width:300px;height:80px;background:url("../images/logo.png");text-indent:-100%;overflow:hidden;margin-left:-14px;} -#footer .footnote a{background-position:0 -80px;} -#footer .support{height:80px;line-height:20px;padding-top:0;}#footer .support img{margin-top:-35px;height:80px;vertical-align:middle;display:inline-block;margin-left:1em;} -#header nav,#footer nav{float:right;margin-top:-45px;}#header nav.secondary,#footer nav.secondary{margin-top:-60px;} -#header nav ul,#footer nav ul{margin:-1em 0 0;padding:0;list-style:none;line-height:1em;} -#header nav li,#footer nav li{float:left;margin-left:1.5em;} -@media all and (max-width:1000px){#header nav,#footer nav{float:none;clear:both;margin:0;}#header nav.secondary,#footer nav.secondary{margin-top:-35px;} #header nav ul,#footer nav ul{overflow:hidden;text-align:center;line-height:1.5em;padding-bottom:1.5em;} #header nav li,#footer nav li{float:none;display:inline-block;margin:0 0.75em;}}#content{min-height:300px;padding:5px 0 100px;background:#182d39 50% 100% no-repeat;} -.embellished #content{background-image:url("../images/content-background.png");border-bottom:solid 40px transparent;padding-bottom:275px;} -.narrow #content .constrained{max-width:34em;} -.panel{display:block;padding:25px 0 40px;background:#213441;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px;text-decoration:none;overflow:hidden;text-align:center;color:inherit;}.panel img{max-width:100%;} -.panel h4,.panel p{margin:15px 60px 0;color:inherit;} -@media all and (max-width:1000px){.panel{padding:25px 0 25px 300px;}.panel img{float:left;margin-left:-300px;max-width:300px;} .panel h1,.panel h2,.panel h3,.panel h4{clear:none;} .panel p{margin:15px 20px 0;}}@media all and (max-width:500px){.panel{padding:25px 0;}.panel img{max-width:100%;float:none;margin:0;}}.two-column,.three-column{overflow:hidden;margin:25px 0 0 -25px;padding:0;list-style:none;}.two-column .column,.three-column .column{float:left;width:50%;margin:0;padding:0;border-left:solid 25px transparent;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;} -.two-column .column:nth-child(odd){clear:both;} -.three-column .column{width:33.33%;}.three-column .column:nth-child(3n+1){clear:both;} -@media all and (max-width:1000px){.three-column .column{float:none;width:auto;margin-bottom:25px;}}@media all and (max-width:740px){.two-column,.three-column{margin-left:-10px;}.two-column .column,.three-column .column{float:none;width:auto;border-left-width:10px;}}ul.promo-list,ol.promo-list{list-style:none;padding:0;}ul.promo-list li,ol.promo-list li,ul.promo-list .column,ol.promo-list .column{margin-top:2.4em;padding:0 25px 0 80px;background:url("../images/badge-bullet.png") 25px 0 no-repeat;} -ul.promo-list h3,ol.promo-list h3,ul.promo-list h4,ol.promo-list h4,ul.promo-list p,ol.promo-list p{margin-top:0;} -@media all and (max-width:740px){ul.promo-list li,ol.promo-list li{padding-right:35px;}}.button{display:inline-block;text-decoration:none;text-shadow:0px 1px 0px rgba(0, 0, 0, 0.25);letter-spacing:-0.25px;background-color:#1D94E4;text-align:center;color:white;border:none;cursor:pointer;padding:0.25em 2em;font:inherit;-webkit-border-radius:0.25em;-moz-border-radius:0.25em;border-radius:0.25em;-webkit-box-shadow:0px 2px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);-moz-box-shadow:0px 2px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);box-shadow:0px 2px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);background-image:-ms-linear-gradient(top, #1d94e4 0%, #006dca 100%);background-image:-moz-linear-gradient(top, #1d94e4 0%, #006dca 100%);background-image:-o-linear-gradient(top, #1d94e4 0%, #006dca 100%);background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0, #1d94e4), color-stop(1, #006dca));background-image:-webkit-linear-gradient(top, #1d94e4 0%, #006dca 100%);background-image:linear-gradient(top, #1d94e4 0%, #006dca 100%);-webkit-transition-property:-moz-box-shadow,-webkit-box-shadow,box-shadow;-webkit-transition-duration:0.25s;-webkit-transition-delay:0s;-moz-transition-property:-moz-box-shadow,-webkit-box-shadow,box-shadow;-moz-transition-duration:0.25s;-moz-transition-delay:0s;transition-property:-moz-box-shadow,-webkit-box-shadow,box-shadow;transition-duration:0.25s;transition-delay:0s;}.button.large{padding:0 2em;font-size:24px;line-height:48px;font-style:italic;} -.button:hover,.button:focus{-webkit-box-shadow:0px 2px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(0, 0, 0, 0.2),inset 0px 12 px 24px 2px rgba(255, 255, 255, 0.2);-moz-box-shadow:0px 2px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(0, 0, 0, 0.2),inset 0px 12px 24px 2px rgba(255, 255, 255, 0.2);box-shadow:0px 2px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(0, 0, 0, 0.2),inset 0px 12px 24px 2px rgba(255, 255, 255, 0.2);-webkit-transition-property:-moz-box-shadow,-webkit-box-shadow,box-shadow;-webkit-transition-duration:0.25s;-webkit-transition-delay:0s;-moz-transition-property:-moz-box-shadow,-webkit-box-shadow,box-shadow;-moz-transition-duration:0.25s;-moz-transition-delay:0s;transition-property:-moz-box-shadow,-webkit-box-shadow,box-shadow;transition-duration:0.25s;transition-delay:0s;} -.button:active{-webkit-box-shadow:inset 0px 2px 0px 0px rgba(0, 0, 0, 0.2),inset 0px 12px 24px 6px rgba(0, 0, 0, 0.2),inset 0px 0px 2px 2px rgba(0, 0, 0, 0.2);-moz-box-shadow:inset 0px 2px 0px 0px rgba(0, 0, 0, 0.2),inset 0px 12px 24px 6px rgba(0, 0, 0, 0.2),inset 0px 0px 2px 2px rgba(0, 0, 0, 0.2);box-shadow:inset 0px 2px 0px 0px rgba(0, 0, 0, 0.2),inset 0px 12px 24px 6px rgba(0, 0, 0, 0.2),inset 0px 0px 2px 2px rgba(0, 0, 0, 0.2);-webkit-transition-property:-moz-box-shadow,-webkit-box-shadow,box-shadow;-webkit-transition-duration:0.25s;-webkit-transition-delay:0s;-moz-transition-property:-moz-box-shadow,-webkit-box-shadow,box-shadow;-moz-transition-duration:0.25s;-moz-transition-delay:0s;transition-property:-moz-box-shadow,-webkit-box-shadow,box-shadow;transition-duration:0.25s;transition-delay:0s;} -.button:link,.button:visited,.button:focus,.button:hover,.button:active{color:#fff;text-decoration:none;} -.button:after{content:' ❯';} -#meta{background:#323538;background-image:-webkit-linear-gradient(left, rgba(255,255,255,0.015), rgba(255,255,255,0.015) 50%, rgba(255,255,255,0) 50%, rgba(255,255,255,0));background-image:-moz-linear-gradient(left, rgba(255,255,255,0.015), rgba(255,255,255,0.015) 50%, rgba(255,255,255,0) 50%, rgba(255,255,255,0));background-image:-ms-linear-gradient(left, rgba(255,255,255,0.015), rgba(255,255,255,0.015) 50%, rgba(255,255,255,0) 50%, rgba(255,255,255,0));background-image:linear-gradient(left, rgba(255,255,255,0.015), rgba(255,255,255,0.015) 50%, rgba(255,255,255,0) 50%, rgba(255,255,255,0));background-size:10px 10px;background-position:50% 50%;min-height:200px;position:relative;}#meta::before,#meta::after{content:"";position:absolute;left:0;width:100%;height:6px;} -#meta::before{top:0;background-image:-webkit-gradient(linear, top left, bottom left, from(rgba(0, 0, 0, 0.33)), to(rgba(0, 0, 0, 0)));background-image:-webkit-linear-gradient(top, rgba(0,0,0,0.33), rgba(0,0,0,0));background-image:-moz-linear-gradient(top, rgba(0,0,0,0.33), rgba(0,0,0,0));background-image:-ms-linear-gradient(top, rgba(0,0,0,0.33), rgba(0,0,0,0));background-image:linear-gradient(top, rgba(0,0,0,0.33), rgba(0,0,0,0));} -#meta::after{bottom:0;background-image:-webkit-gradient(linear, bottom left, top left, from(rgba(0, 0, 0, 0.33)), to(rgba(0, 0, 0, 0)));background-image:-webkit-linear-gradient(bottom, rgba(0,0,0,0.33), rgba(0,0,0,0));background-image:-moz-linear-gradient(bottom, rgba(0,0,0,0.33), rgba(0,0,0,0));background-image:-ms-linear-gradient(bottom, rgba(0,0,0,0.33), rgba(0,0,0,0));background-image:linear-gradient(bottom, rgba(0,0,0,0.33), rgba(0,0,0,0));} -#meta .constrained{max-width:920px;padding:0;overflow:hidden;} -#meta section{width:33.33%;float:left;padding:2em 10px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:relative;} -#meta h2{font-family:"Open Sans",sans-serif;color:#9C9C9C;text-transform:uppercase;font-size:18px;font-weight:bold;margin:0;padding:35px 0 0;} -#meta i{position:absolute;top:2em;left:0;height:35px;width:100%;background:url(../images/aside-icons.png) no-repeat 10px 100%;}#meta i.tweet{background-position:10px -145px;} -#meta i.learn{background-position:10px -445px;} -#meta i.mozilla{background-position:10px -295px;} -#meta p,#meta ul{margin:1em 0 0;padding:0;list-style:none;font-size:14px;} -#meta li{list-style-type:none;border-top:solid 1px #656565;padding:0.5em 0 0;margin:0.5em 0 0;}#meta li:first-child{border-top:none;padding:0;margin:0;} -@media all and (max-width:800px){#meta{padding-bottom:2em;}#meta section{float:none;width:auto;max-width:400px;margin:0 auto;padding-bottom:0;}} diff --git a/media/css/jquery.fancybox.css b/media/css/jquery.fancybox.css deleted file mode 100644 index c12e87b..0000000 --- a/media/css/jquery.fancybox.css +++ /dev/null @@ -1,222 +0,0 @@ -/*! fancyBox v2.0.5 fancyapps.com | fancyapps.com/fancybox/#license */ -.fancybox-tmp iframe, .fancybox-tmp object { - vertical-align: top; - padding: 0; - margin: 0; -} - -.fancybox-wrap { - position: absolute; - top: 0; - left: 0; - z-index: 1002; -} - -.fancybox-outer { - position: relative; - padding: 0; - margin: 0; - background: #f9f9f9; - color: #444; - text-shadow: none; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; -} - -.fancybox-opened { - z-index: 1003; -} - -.fancybox-opened .fancybox-outer { - -webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5); - -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5); - box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5); -} - -.fancybox-inner { - width: 100%; - height: 100%; - padding: 0; - margin: 0; - position: relative; - outline: none; - overflow: hidden; -} - -.fancybox-error { - color: #444; - font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif; - margin: 0; - padding: 10px; -} - -.fancybox-image, .fancybox-iframe { - display: block; - width: 100%; - height: 100%; - border: 0; - padding: 0; - margin: 0; - vertical-align: top; -} - -.fancybox-image { - max-width: 100%; - max-height: 100%; -} - -#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span { - background-image: url('../images/fancybox/sprite.png'); -} - -#fancybox-loading { - position: fixed; - top: 50%; - left: 50%; - margin-top: -22px; - margin-left: -22px; - background-position: 0 -108px; - opacity: 0.8; - cursor: pointer; - z-index: 1010; -} - -#fancybox-loading div { - width: 44px; - height: 44px; - background: url(../images/fancybox/loading.gif) center center no-repeat; -} - -.fancybox-close { - position: absolute; - top: -18px; - right: -18px; - width: 36px; - height: 36px; - cursor: pointer; - z-index: 1004; -} - -.fancybox-nav { - position: absolute; - top: 0; - width: 40%; - height: 100%; - cursor: pointer; - background: transparent url('blank.gif'); /* helps IE */ - z-index: 1003; -} - -.fancybox-prev { - left: 0; -} - -.fancybox-next { - right: 0; -} - -.fancybox-nav span { - position: absolute; - top: 50%; - width: 36px; - height: 36px; - margin-top: -18px; - cursor: pointer; - z-index: 1003; - visibility: hidden; -} - -.fancybox-prev span { - left: 20px; - background-position: 0 -36px; -} - -.fancybox-next span { - right: 20px; - background-position: 0 -72px; -} - -.fancybox-nav:hover span { - visibility: visible; -} - -.fancybox-tmp { - position: absolute; - top: -9999px; - left: -9999px; - padding: 0; - overflow: visible; - visibility: hidden; -} - -/* Overlay helper */ - -#fancybox-overlay { - position: absolute; - top: 0; - left: 0; - overflow: hidden; - display: none; - z-index: 1001; - background: #000; -} - -/* Title helper */ - -.fancybox-title { - visibility: hidden; - font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif; - position: relative; - text-shadow: none; - z-index: 1005; -} - -.fancybox-opened .fancybox-title { - visibility: visible; -} - -.fancybox-title-float-wrap { - position: absolute; - bottom: 0; - right: 50%; - margin-bottom: -35px; - z-index: 1003; - text-align: center; -} - -.fancybox-title-float-wrap .child { - display: inline-block; - margin-right: -100%; - padding: 2px 20px; - background: transparent; /* Fallback for web browsers that doesn't support RGBa */ - background: rgba(0, 0, 0, 0.8); - -webkit-border-radius: 15px; - -moz-border-radius: 15px; - border-radius: 15px; - text-shadow: 0 1px 2px #222; - color: #FFF; - font-weight: bold; - line-height: 24px; - white-space: nowrap; -} - -.fancybox-title-outside-wrap { - position: relative; - margin-top: 10px; - color: #fff; -} - -.fancybox-title-inside-wrap { - margin-top: 10px; -} - -.fancybox-title-over-wrap { - position: absolute; - bottom: 0; - left: 0; - color: #fff; - padding: 10px; - background: #000; - background: rgba(0, 0, 0, .8); -} \ No newline at end of file diff --git a/media/images/fabric_1@2X.png b/media/images/fabric_1@2X.png deleted file mode 100644 index 6a2927a..0000000 Binary files a/media/images/fabric_1@2X.png and /dev/null differ diff --git a/media/images/fancybox/loading.gif b/media/images/fancybox/loading.gif deleted file mode 100644 index 0158617..0000000 Binary files a/media/images/fancybox/loading.gif and /dev/null differ diff --git a/media/images/fancybox/sprite.png b/media/images/fancybox/sprite.png deleted file mode 100644 index 753021b..0000000 Binary files a/media/images/fancybox/sprite.png and /dev/null differ diff --git a/media/images/logo-header.png b/media/images/logo-header.png deleted file mode 100644 index bbdac3e..0000000 Binary files a/media/images/logo-header.png and /dev/null differ diff --git a/media/images/quiz/101badge.png b/media/images/quiz/101badge.png deleted file mode 100644 index 9a927f9..0000000 Binary files a/media/images/quiz/101badge.png and /dev/null differ diff --git a/media/images/quiz/backpack.png b/media/images/quiz/backpack.png deleted file mode 100644 index ffcc517..0000000 Binary files a/media/images/quiz/backpack.png and /dev/null differ diff --git a/media/images/quiz/displayer_mono.png b/media/images/quiz/displayer_mono.png deleted file mode 100644 index f77cdd2..0000000 Binary files a/media/images/quiz/displayer_mono.png and /dev/null differ diff --git a/media/images/quiz/issuer_mono.png b/media/images/quiz/issuer_mono.png deleted file mode 100644 index 54e3822..0000000 Binary files a/media/images/quiz/issuer_mono.png and /dev/null differ diff --git a/media/images/quiz/navigatorbadge.png b/media/images/quiz/navigatorbadge.png deleted file mode 100644 index ffc6ce5..0000000 Binary files a/media/images/quiz/navigatorbadge.png and /dev/null differ diff --git a/media/images/quiz/pagination.png b/media/images/quiz/pagination.png deleted file mode 100644 index f282fdd..0000000 Binary files a/media/images/quiz/pagination.png and /dev/null differ diff --git a/media/images/quiz/user_mono.png b/media/images/quiz/user_mono.png deleted file mode 100644 index 1419aa0..0000000 Binary files a/media/images/quiz/user_mono.png and /dev/null differ diff --git a/media/js/badges-101.js b/media/js/badges-101.js deleted file mode 100644 index b480c18..0000000 --- a/media/js/badges-101.js +++ /dev/null @@ -1,166 +0,0 @@ -(function (window, document, $) { - - var winPanel = (function() { - function init () { - /** - * Badges 101 badge acceptance panel - * - * 0. If user skips to end, sees #incomplete panel - * 1. User "wins", sees #win panel with badge and backpack/navigator badge links - * 2. Clicks backpack, sees #get-badge subpanel with email submission form - * 3. Submits email, sees #after-badge subpanel with external links - */ - - $('#incomplete').show(); - $('#win').hide(); - $('#get-badge').hide(); - $('#after-badge').hide(); - - $('#push-to-backpack').one('click', function(){ - $('#nav-panel').hide(); - $('#get-badge').fadeIn(); - }); - - $("#get-badge form").submit(function() { - var email = $(this).find("input#email").val().trim(); - if (QuickBadge.validateEmail(email)) { - var baseURI = $('')[0].href; - var hashedEmail = 'sha256$' + sha256_digest(email); - var publish = QuickBadge.publish({ - service: "http://hackpub.hackasaurus.org/publish", - assertion: { - "recipient": hashedEmail, - "badge": { - "version": "0.5.0", - "name": "Badges 101", - "image": $("#badges101")[0].src, - "description": "You really get badges!", - "criteria": "http://badges-101.openbadges.org/", - "issuer": { - "origin": "http://www.openbadges.org", - "name": "Open Badges", - "org": "Mozilla Foundation", - "contact": "hai2u@openbadges.org" - } - } - } - }); - $("#get-badge form").fadeOut(function() { - $("#throbber").fadeIn(function() { - publish.fail(function() { - alert("Sorry, an error occurred. Please try again later."); - $("#get-badge form").show(); - $("#throbber").hide(); - }); - publish.done(function(url) { - $("#throbber").fadeOut(); - QuickBadge.issue(url).done(function(errors, successes) { - if (successes.length) { - $("#get-badge").hide(); - $("#after-badge").show(); - } - else { - $("#get-badge form").show(); - $("#throbber").hide(); - } - console.log("errors", errors, "successes", successes); - }); - }); - }); - }); - } else { - alert("Please provide a valid e-mail address."); - } - return false; - }); - } - - function show () { - $('#incomplete').hide(); - $('#win').show(); - } - - return { - init: init, - show: show - } - })(); - - var quiz = (function() { - var questions, answered; - - function init () { - var $quizzes = $('#badges-101 .quiz'); - - questions = $quizzes.length; - answered = 0; - - $quizzes.find('.discussion').hide(); - $quizzes.each(function() { - var discussion = $('.discussion', this); - - /* Show the discussion when they click the right answer */ - $('.options', this).one('click', function(evt) { - if ($(evt.target).hasClass('correct')) { - $('.answer', discussion).text("That's right!"); - } else { - $('.answer', discussion).text("That's wrong!"); - } - - discussion.fadeIn(); - answered++; - - if (answered == questions) { - winPanel.show(); - } - }); - }) - } - - return { - init: init - } - })(); - - $(function() { - var cheat = false, - startSlide = 0; - - $('a.quickstart').fancybox({ - type: 'ajax', - afterShow: function() { - var base = this.element.href, - basePath = this.element.pathname; - // Old IE bug - if (basePath.charAt(0) != '/') basePath = '/' + basePath - - winPanel.init(); - quiz.init(); - - $('#badges-101') - .css('visibility','visible') - .find('a[href^="'+base+'"], a[href^="'+basePath+'"]').each(function() { - var $link = $(this), - target; - - if (!$link.hasClass('next') && !$link.hasClass('prev')) { - if (target = /\/(\d+)\/?$/.exec(this.href)) { - this.href = '#' + target[1]; - $link.addClass('link'); - } - } - }); - - if (cheat) { - winPanel.show(); - startSlide = $('#slides .slide').length; - } - - $('#slides').slides({ - start: startSlide - }); - } - }) - }); - -}(window, document, jQuery)); \ No newline at end of file diff --git a/media/js/html5shiv.js b/media/js/html5shiv.js deleted file mode 100755 index 4875fbb..0000000 --- a/media/js/html5shiv.js +++ /dev/null @@ -1,301 +0,0 @@ -/** -* @preserve HTML5 Shiv v3.6.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed -*/ -;(function(window, document) { -/*jshint evil:true */ - /** version */ - var version = '3.6.2'; - - /** Preset options */ - var options = window.html5 || {}; - - /** Used to skip problem elements */ - var reSkip = /^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i; - - /** Not all elements can be cloned in IE **/ - var saveClones = /^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i; - - /** Detect whether the browser supports default html5 styles */ - var supportsHtml5Styles; - - /** Name of the expando, to work with multiple documents or to re-shiv one document */ - var expando = '_html5shiv'; - - /** The id for the the documents expando */ - var expanID = 0; - - /** Cached data for each document */ - var expandoData = {}; - - /** Detect whether the browser supports unknown elements */ - var supportsUnknownElements; - - (function() { - try { - var a = document.createElement('a'); - a.innerHTML = ''; - //if the hidden property is implemented we can assume, that the browser supports basic HTML5 Styles - supportsHtml5Styles = ('hidden' in a); - - supportsUnknownElements = a.childNodes.length == 1 || (function() { - // assign a false positive if unable to shiv - (document.createElement)('a'); - var frag = document.createDocumentFragment(); - return ( - typeof frag.cloneNode == 'undefined' || - typeof frag.createDocumentFragment == 'undefined' || - typeof frag.createElement == 'undefined' - ); - }()); - } catch(e) { - // assign a false positive if detection fails => unable to shiv - supportsHtml5Styles = true; - supportsUnknownElements = true; - } - - }()); - - /*--------------------------------------------------------------------------*/ - - /** - * Creates a style sheet with the given CSS text and adds it to the document. - * @private - * @param {Document} ownerDocument The document. - * @param {String} cssText The CSS text. - * @returns {StyleSheet} The style element. - */ - function addStyleSheet(ownerDocument, cssText) { - var p = ownerDocument.createElement('p'), - parent = ownerDocument.getElementsByTagName('head')[0] || ownerDocument.documentElement; - - p.innerHTML = 'x'; - return parent.insertBefore(p.lastChild, parent.firstChild); - } - - /** - * Returns the value of `html5.elements` as an array. - * @private - * @returns {Array} An array of shived element node names. - */ - function getElements() { - var elements = html5.elements; - return typeof elements == 'string' ? elements.split(' ') : elements; - } - - /** - * Returns the data associated to the given document - * @private - * @param {Document} ownerDocument The document. - * @returns {Object} An object of data. - */ - function getExpandoData(ownerDocument) { - var data = expandoData[ownerDocument[expando]]; - if (!data) { - data = {}; - expanID++; - ownerDocument[expando] = expanID; - expandoData[expanID] = data; - } - return data; - } - - /** - * returns a shived element for the given nodeName and document - * @memberOf html5 - * @param {String} nodeName name of the element - * @param {Document} ownerDocument The context document. - * @returns {Object} The shived element. - */ - function createElement(nodeName, ownerDocument, data){ - if (!ownerDocument) { - ownerDocument = document; - } - if(supportsUnknownElements){ - return ownerDocument.createElement(nodeName); - } - if (!data) { - data = getExpandoData(ownerDocument); - } - var node; - - if (data.cache[nodeName]) { - node = data.cache[nodeName].cloneNode(); - } else if (saveClones.test(nodeName)) { - node = (data.cache[nodeName] = data.createElem(nodeName)).cloneNode(); - } else { - node = data.createElem(nodeName); - } - - // Avoid adding some elements to fragments in IE < 9 because - // * Attributes like `name` or `type` cannot be set/changed once an element - // is inserted into a document/fragment - // * Link elements with `src` attributes that are inaccessible, as with - // a 403 response, will cause the tab/window to crash - // * Script elements appended to fragments will execute when their `src` - // or `text` property is set - return node.canHaveChildren && !reSkip.test(nodeName) ? data.frag.appendChild(node) : node; - } - - /** - * returns a shived DocumentFragment for the given document - * @memberOf html5 - * @param {Document} ownerDocument The context document. - * @returns {Object} The shived DocumentFragment. - */ - function createDocumentFragment(ownerDocument, data){ - if (!ownerDocument) { - ownerDocument = document; - } - if(supportsUnknownElements){ - return ownerDocument.createDocumentFragment(); - } - data = data || getExpandoData(ownerDocument); - var clone = data.frag.cloneNode(), - i = 0, - elems = getElements(), - l = elems.length; - for(;i
', - image: '', - iframe: '', - swf: '', - error: '

The requested content cannot be loaded.
Please try again later.

', - closeBtn: '
', - next: '', - prev: '' - }, - - // Properties for each animation type - // Opening fancyBox - openEffect: 'fade', // 'elastic', 'fade' or 'none' - openSpeed: 250, - openEasing: 'swing', - openOpacity: true, - openMethod: 'zoomIn', - - // Closing fancyBox - closeEffect: 'fade', // 'elastic', 'fade' or 'none' - closeSpeed: 250, - closeEasing: 'swing', - closeOpacity: true, - closeMethod: 'zoomOut', - - // Changing next gallery item - nextEffect: 'elastic', // 'elastic', 'fade' or 'none' - nextSpeed: 300, - nextEasing: 'swing', - nextMethod: 'changeIn', - - // Changing previous gallery item - prevEffect: 'elastic', // 'elastic', 'fade' or 'none' - prevSpeed: 300, - prevEasing: 'swing', - prevMethod: 'changeOut', - - // Enabled helpers - helpers: { - overlay: { - speedIn: 0, - speedOut: 300, - opacity: 0.8, - css: { - cursor: 'pointer' - }, - closeClick: true - }, - title: { - type: 'float' // 'float', 'inside', 'outside' or 'over' - } - }, - - // Callbacks - onCancel: $.noop, // If canceling - beforeLoad: $.noop, // Before loading - afterLoad: $.noop, // After loading - beforeShow: $.noop, // Before changing in current item - afterShow: $.noop, // After opening - beforeClose: $.noop, // Before closing - afterClose: $.noop // After closing - }, - - //Current state - group: {}, // Selected group - opts: {}, // Group options - coming: null, // Element being loaded - current: null, // Currently loaded element - isOpen: false, // Is currently open - isOpened: false, // Have been fully opened at least once - wrap: null, - outer: null, - inner: null, - - player: { - timer: null, - isActive: false - }, - - // Loaders - ajaxLoad: null, - imgPreload: null, - - // Some collections - transitions: {}, - helpers: {}, - - /* - * Static methods - */ - - open: function (group, opts) { - //Kill existing instances - F.close(true); - - //Normalize group - if (group && !$.isArray(group)) { - group = group instanceof $ ? $(group).get() : [group]; - } - - F.isActive = true; - - //Extend the defaults - F.opts = $.extend(true, {}, F.defaults, opts); - - //All options are merged recursive except keys - if ($.isPlainObject(opts) && typeof opts.keys !== 'undefined') { - F.opts.keys = opts.keys ? $.extend({}, F.defaults.keys, opts.keys) : false; - } - - F.group = group; - - F._start(F.opts.index || 0); - }, - - cancel: function () { - if (F.coming && false === F.trigger('onCancel')) { - return; - } - - F.coming = null; - - F.hideLoading(); - - if (F.ajaxLoad) { - F.ajaxLoad.abort(); - } - - F.ajaxLoad = null; - - if (F.imgPreload) { - F.imgPreload.onload = F.imgPreload.onabort = F.imgPreload.onerror = null; - } - }, - - close: function (a) { - F.cancel(); - - if (!F.current || false === F.trigger('beforeClose')) { - return; - } - - F.unbindEvents(); - - //If forced or is still opening then remove immediately - if (!F.isOpen || (a && a[0] === true)) { - $(".fancybox-wrap").stop().trigger('onReset').remove(); - - F._afterZoomOut(); - - } else { - F.isOpen = F.isOpened = false; - - $(".fancybox-item, .fancybox-nav").remove(); - - F.wrap.stop(true).removeClass('fancybox-opened'); - F.inner.css('overflow', 'hidden'); - - F.transitions[F.current.closeMethod](); - } - }, - - // Start/stop slideshow - play: function (a) { - var clear = function () { - clearTimeout(F.player.timer); - }, - set = function () { - clear(); - - if (F.current && F.player.isActive) { - F.player.timer = setTimeout(F.next, F.current.playSpeed); - } - }, - stop = function () { - clear(); - - $('body').unbind('.player'); - - F.player.isActive = false; - - F.trigger('onPlayEnd'); - }, - start = function () { - if (F.current && (F.current.loop || F.current.index < F.group.length - 1)) { - F.player.isActive = true; - - $('body').bind({ - 'afterShow.player onUpdate.player': set, - 'onCancel.player beforeClose.player': stop, - 'beforeLoad.player': clear - }); - - set(); - - F.trigger('onPlayStart'); - } - }; - - if (F.player.isActive || (a && a[0] === false)) { - stop(); - } else { - start(); - } - }, - - next: function () { - if (F.current) { - F.jumpto(F.current.index + 1); - } - }, - - prev: function () { - if (F.current) { - F.jumpto(F.current.index - 1); - } - }, - - jumpto: function (index) { - if (!F.current) { - return; - } - - index = parseInt(index, 10); - - if (F.group.length > 1 && F.current.loop) { - if (index >= F.group.length) { - index = 0; - - } else if (index < 0) { - index = F.group.length - 1; - } - } - - if (typeof F.group[index] !== 'undefined') { - F.cancel(); - - F._start(index); - } - }, - - reposition: function (a) { - if (F.isOpen) { - F.wrap.css(F._getPosition(a)); - } - }, - - update: function (e) { - if (F.isOpen) { - // It's a very bad idea to attach handlers to the window scroll event, run this code after a delay - if (!didResize) { - resizeTimer = setTimeout(function () { - var current = F.current; - - if (didResize) { - didResize = false; - - if (current) { - if (current.autoResize || (e && e.type === 'orientationchange')) { - if (current.autoSize) { - F.inner.height('auto'); - current.height = F.inner.height(); - } - - F._setDimension(); - - if (current.canGrow) { - F.inner.height('auto'); - } - } - - if (current.autoCenter) { - F.reposition(); - } - - F.trigger('onUpdate'); - } - } - }, 100); - } - - didResize = true; - } - }, - - toggle: function () { - if (F.isOpen) { - F.current.fitToView = !F.current.fitToView; - - F.update(); - } - }, - - hideLoading: function () { - $("#fancybox-loading").remove(); - }, - - showLoading: function () { - F.hideLoading(); - - $('
').click(F.cancel).appendTo('body'); - }, - - getViewport: function () { - return { - x: W.scrollLeft(), - y: W.scrollTop(), - w: W.width(), - h: W.height() - }; - }, - - // Unbind the keyboard / clicking actions - unbindEvents: function () { - if (F.wrap) { - F.wrap.unbind('.fb'); - } - - D.unbind('.fb'); - W.unbind('.fb'); - }, - - bindEvents: function () { - var current = F.current, - keys = current.keys; - - if (!current) { - return; - } - - W.bind('resize.fb, orientationchange.fb', F.update); - - if (keys) { - D.bind('keydown.fb', function (e) { - var code; - - // Ignore key combinations and key events within form elements - if (!e.ctrlKey && !e.altKey && !e.shiftKey && !e.metaKey && $.inArray(e.target.tagName.toLowerCase(), ['input', 'textarea', 'select', 'button']) < 0) { - code = e.keyCode; - - if ($.inArray(code, keys.close) > -1) { - F.close(); - e.preventDefault(); - - } else if ($.inArray(code, keys.next) > -1) { - F.next(); - e.preventDefault(); - - } else if ($.inArray(code, keys.prev) > -1) { - F.prev(); - e.preventDefault(); - } - } - }); - } - - if ($.fn.mousewheel && current.mouseWheel && F.group.length > 1) { - F.wrap.bind('mousewheel.fb', function (e, delta) { - var target = $(e.target).get(0); - - if (target.clientHeight === 0 || (target.scrollHeight === target.clientHeight && target.scrollWidth === target.clientWidth)) { - e.preventDefault(); - - F[delta > 0 ? 'prev' : 'next'](); - } - }); - } - }, - - trigger: function (event) { - var ret, obj = F[ $.inArray(event, ['onCancel', 'beforeLoad', 'afterLoad']) > -1 ? 'coming' : 'current' ]; - - if (!obj) { - return; - } - - if ($.isFunction( obj[event] )) { - ret = obj[event].apply(obj, Array.prototype.slice.call(arguments, 1)); - } - - if (ret === false) { - return false; - } - - if (obj.helpers) { - $.each(obj.helpers, function (helper, opts) { - if (opts && typeof F.helpers[helper] !== 'undefined' && $.isFunction(F.helpers[helper][event])) { - F.helpers[helper][event](opts, obj); - } - }); - } - - $.event.trigger(event + '.fb'); - }, - - isImage: function (str) { - return str && str.match(/\.(jpg|gif|png|bmp|jpeg)(.*)?$/i); - }, - - isSWF: function (str) { - return str && str.match(/\.(swf)(.*)?$/i); - }, - - _start: function (index) { - var coming = {}, - element = F.group[index] || null, - isDom, - href, - type, - rez; - - if (element && (element.nodeType || element instanceof $)) { - isDom = true; - - if ($.metadata) { - coming = $(element).metadata(); - } - } - - coming = $.extend(true, {}, F.opts, {index : index, element : element}, ($.isPlainObject(element) ? element : coming)); - - // Re-check overridable options - $.each(['href', 'title', 'content', 'type'], function(i,v) { - coming[v] = F.opts[ v ] || (isDom && $(element).attr( v )) || coming[ v ] || null; - }); - - // Convert margin property to array - top, right, bottom, left - if (typeof coming.margin === 'number') { - coming.margin = [coming.margin, coming.margin, coming.margin, coming.margin]; - } - - // 'modal' propery is just a shortcut - if (coming.modal) { - $.extend(true, coming, { - closeBtn : false, - closeClick: false, - nextClick : false, - arrows : false, - mouseWheel : false, - keys : null, - helpers: { - overlay : { - css: { - cursor : 'auto' - }, - closeClick : false - } - } - }); - } - - //Give a chance for callback or helpers to update coming item (type, title, etc) - F.coming = coming; - - if (false === F.trigger('beforeLoad')) { - F.coming = null; - return; - } - - type = coming.type; - href = coming.href || element; - - ///Check if content type is set, if not, try to get - if (!type) { - if (isDom) { - rez = $(element).data('fancybox-type'); - - if (!rez && element.className) { - rez = element.className.match(/fancybox\.(\w+)/); - type = rez ? rez[1] : null; - } - } - - if (!type && $.type(href) === "string") { - if (F.isImage(href)) { - type = 'image'; - - } else if (F.isSWF(href)) { - type = 'swf'; - - } else if (href.match(/^#/)) { - type = 'inline'; - } - } - - // ...if not - display element itself - if (!type) { - type = isDom ? 'inline' : 'html'; - } - - coming.type = type; - } - - // Check before try to load; 'inline' and 'html' types need content, others - href - if (type === 'inline' || type === 'html') { - if (!coming.content) { - if (type === 'inline') { - coming.content = $( $.type(href) === "string" ? href.replace(/.*(?=#[^\s]+$)/, '') : href ); //strip for ie7 - - } else { - coming.content = element; - } - } - - if (!coming.content || !coming.content.length) { - type = null; - } - - } else if (!href) { - type = null; - } - - /* - Add reference to the group, so it`s possible to access from callbacks, example: - - afterLoad : function() { - this.title = 'Image ' + (this.index + 1) + ' of ' + this.group.length + (this.title ? ' - ' + this.title : ''); - } - - */ - - coming.group = F.group; - coming.isDom = isDom; - coming.href = href; - - if (type === 'image') { - F._loadImage(); - - } else if (type === 'ajax') { - F._loadAjax(); - - } else if (type) { - F._afterLoad(); - - } else { - F._error( 'type' ); - } - }, - - _error: function ( type ) { - F.hideLoading(); - - $.extend(F.coming, { - type : 'html', - autoSize : true, - minHeight : 0, - hasError : type, - content : F.coming.tpl.error - }); - - F._afterLoad(); - }, - - _loadImage: function () { - // Reset preload image so it is later possible to check "complete" property - F.imgPreload = new Image(); - - F.imgPreload.onload = function () { - this.onload = this.onerror = null; - - F.coming.width = this.width; - F.coming.height = this.height; - - F._afterLoad(); - }; - - F.imgPreload.onerror = function () { - this.onload = this.onerror = null; - - F._error( 'image' ); - }; - - F.imgPreload.src = F.coming.href; - - if (!F.imgPreload.width) { - F.showLoading(); - } - }, - - _loadAjax: function () { - F.showLoading(); - - F.ajaxLoad = $.ajax($.extend({}, F.coming.ajax, { - url: F.coming.href, - error: function (jqXHR, textStatus) { - if (textStatus !== 'abort') { - F._error( 'ajax', jqXHR ); - - } else { - F.hideLoading(); - } - }, - success: function (data, textStatus) { - if (textStatus === 'success') { - F.coming.content = data; - - F._afterLoad(); - } - } - })); - }, - - _preloadImages: function() { - var group = F.group, - current = F.current, - len = group.length, - item, - href; - - if (!current.preload || group.length < 2) { - return; - } - - for (var i = 1; i <= Math.min(current.preload, len - 1); i++) { - item = group[ (current.index + i ) % len ]; - href = $( item ).attr('href') || item; - - if (href) { - new Image().src = href; - } - } - }, - - _afterLoad: function () { - F.hideLoading(); - - if (!F.coming || false === F.trigger('afterLoad', F.current)) { - F.coming = false; - - return; - } - - if (F.isOpened) { - $(".fancybox-item").remove(); - - F.wrap.stop(true).removeClass('fancybox-opened'); - F.inner.css('overflow', 'hidden'); - - F.transitions[F.current.prevMethod](); - - } else { - $(".fancybox-wrap").stop().trigger('onReset').remove(); - - F.trigger('afterClose'); - } - - F.unbindEvents(); - - F.isOpen = false; - F.current = F.coming; - - //Build the neccessary markup - F.wrap = $(F.current.tpl.wrap).addClass('fancybox-' + (isMobile ? 'mobile' : 'desktop') + ' fancybox-tmp ' + F.current.wrapCSS).appendTo('body'); - F.outer = $('.fancybox-outer', F.wrap).css('padding', F.current.padding + 'px'); - F.inner = $('.fancybox-inner', F.wrap); - - F._setContent(); - }, - - _setContent: function () { - var content, loadingBay, iframe, current = F.current, type = current.type; - - switch (type) { - case 'inline': - case 'ajax': - case 'html': - content = current.content; - - if (content instanceof $) { - content = content.show().detach(); - - if (content.parent().hasClass('fancybox-inner')) { - content.parents('.fancybox-wrap').trigger('onReset').remove(); - } - - $(F.wrap).bind('onReset', function () { - content.appendTo('body').hide(); - }); - } - - if (current.autoSize) { - loadingBay = $('
').appendTo('body').append(content); - current.width = loadingBay.width(); - current.height = loadingBay.height(); - - // Re-check to fix 1px bug in some browsers - loadingBay.width( F.current.width ); - - if (loadingBay.height() > current.height) { - loadingBay.width(current.width + 1); - - current.width = loadingBay.width(); - current.height = loadingBay.height(); - } - - content = loadingBay.contents().detach(); - - loadingBay.remove(); - } - - break; - - case 'image': - content = current.tpl.image.replace('{href}', current.href); - - current.aspectRatio = true; - break; - - case 'swf': - content = current.tpl.swf.replace(/\{width\}/g, current.width).replace(/\{height\}/g, current.height).replace(/\{href\}/g, current.href); - break; - } - - if (type === 'iframe') { - content = $(current.tpl.iframe.replace('{rnd}', new Date().getTime()) ).attr('scrolling', current.scrolling); - - current.scrolling = 'auto'; - - // Set auto height for iframes - if (current.autoSize) { - content.width( current.width ); - - F.showLoading(); - - content.data('ready', false).appendTo(F.inner).bind({ - onCancel : function() { - $(this).unbind(); - - F._afterZoomOut(); - }, - load : function() { - var iframe = $(this), height; - - try { - if (this.contentWindow.document.location) { - height = iframe.contents().find('body').height() + 12; - - iframe.height( height ); - } - - } catch (e) { - current.autoSize = false; - } - - if (iframe.data('ready') === false) { - F.hideLoading(); - - if (height) { - F.current.height = height; - } - - F._beforeShow(); - - iframe.data('ready', true); - - } else if (height) { - F.update(); - } - } - - }).attr('src', current.href); - - return; - - } else { - content.attr('src', current.href); - } - - } else if (type === 'image' || type === 'swf') { - current.autoSize = false; - current.scrolling = 'visible'; - } - - F.inner.append(content); - - F._beforeShow(); - }, - - _beforeShow : function() { - F.coming = null; - - //Give a chance for helpers or callbacks to update elements - F.trigger('beforeShow'); - - //Set initial dimensions and hide - F._setDimension(); - - F.wrap.hide().removeClass('fancybox-tmp'); - - F.bindEvents(); - F._preloadImages(); - - F.transitions[ F.isOpened ? F.current.nextMethod : F.current.openMethod ](); - }, - - _setDimension: function () { - var wrap = F.wrap, - outer = F.outer, - inner = F.inner, - current = F.current, - viewport = F.getViewport(), - margin = current.margin, - padding2 = current.padding * 2, - width = current.width, - height = current.height, - maxWidth = current.maxWidth, - maxHeight = current.maxHeight, - minWidth = current.minWidth, - minHeight = current.minHeight, - ratio, - height_, - space; - - viewport.w -= (margin[1] + margin[3]); - viewport.h -= (margin[0] + margin[2]); - - if (width.toString().indexOf('%') > -1) { - width = (((viewport.w - padding2) * parseFloat(width)) / 100); - } - - if (height.toString().indexOf('%') > -1) { - height = (((viewport.h - padding2) * parseFloat(height)) / 100); - } - - ratio = width / height; - - width += padding2; - height += padding2; - - if (current.fitToView) { - maxWidth = Math.min(viewport.w, maxWidth); - maxHeight = Math.min(viewport.h, maxHeight); - } - - if (current.aspectRatio) { - if (width > maxWidth) { - width = maxWidth; - height = ((width - padding2) / ratio) + padding2; - } - - if (height > maxHeight) { - height = maxHeight; - width = ((height - padding2) * ratio) + padding2; - } - - if (width < minWidth) { - width = minWidth; - height = ((width - padding2) / ratio) + padding2; - } - - if (height < minHeight) { - height = minHeight; - width = ((height - padding2) * ratio) + padding2; - } - - } else { - width = Math.max(minWidth, Math.min(width, maxWidth)); - height = Math.max(minHeight, Math.min(height, maxHeight)); - } - - width = Math.round(width); - height = Math.round(height); - - //Reset dimensions - $(wrap.add(outer).add(inner)).width('auto').height('auto'); - - inner.width(width - padding2).height(height - padding2); - wrap.width(width); - - height_ = wrap.height(); // Real wrap height - - //Fit wrapper inside - if (width > maxWidth || height_ > maxHeight) { - while ((width > maxWidth || height_ > maxHeight) && width > minWidth && height_ > minHeight) { - height = height - 10; - - if (current.aspectRatio) { - width = Math.round(((height - padding2) * ratio) + padding2); - - if (width < minWidth) { - width = minWidth; - height = ((width - padding2) / ratio) + padding2; - } - - } else { - width = width - 10; - } - - inner.width(width - padding2).height(height - padding2); - wrap.width(width); - - height_ = wrap.height(); - } - } - - current.dim = { - width: width, - height: height_ - }; - - current.canGrow = current.autoSize && height > minHeight && height < maxHeight; - current.canShrink = false; - current.canExpand = false; - - if ((width - padding2) < current.width || (height - padding2) < current.height) { - current.canExpand = true; - - } else if ((width > viewport.w || height_ > viewport.h) && width > minWidth && height > minHeight) { - current.canShrink = true; - } - - space = height_ - padding2; - - F.innerSpace = space - inner.height(); - F.outerSpace = space - outer.height(); - }, - - _getPosition: function (a) { - var current = F.current, - viewport = F.getViewport(), - margin = current.margin, - width = F.wrap.width() + margin[1] + margin[3], - height = F.wrap.height() + margin[0] + margin[2], - rez = { - position: 'absolute', - top: margin[0] + viewport.y, - left: margin[3] + viewport.x - }; - - if (current.fixed && (!a || a[0] === false) && height <= viewport.h && width <= viewport.w) { - rez = { - position: 'fixed', - top: margin[0], - left: margin[3] - }; - } - - rez.top = Math.ceil(Math.max(rez.top, rez.top + ((viewport.h - height) * current.topRatio))) + 'px'; - rez.left = Math.ceil(Math.max(rez.left, rez.left + ((viewport.w - width) * 0.5))) + 'px'; - - return rez; - }, - - _afterZoomIn: function () { - var current = F.current, scrolling = current.scrolling; - - F.isOpen = F.isOpened = true; - - F.wrap.addClass('fancybox-opened').css('overflow', 'visible'); - - F.update(); - - F.inner.css('overflow', scrolling === 'yes' ? 'scroll' : (scrolling === 'no' ? 'hidden' : scrolling)); - - //Assign a click event - if (current.closeClick || current.nextClick) { - F.inner.css('cursor', 'pointer').bind('click.fb', current.nextClick ? F.next : F.close); - } - - //Create a close button - if (current.closeBtn) { - $(current.tpl.closeBtn).appendTo(F.outer).bind('click.fb', F.close); - } - - //Create navigation arrows - if (current.arrows && F.group.length > 1) { - if (current.loop || current.index > 0) { - $(current.tpl.prev).appendTo(F.inner).bind('click.fb', F.prev); - } - - if (current.loop || current.index < F.group.length - 1) { - $(current.tpl.next).appendTo(F.inner).bind('click.fb', F.next); - } - } - - F.trigger('afterShow'); - - if (F.opts.autoPlay && !F.player.isActive) { - F.opts.autoPlay = false; - - F.play(); - } - }, - - _afterZoomOut: function () { - F.trigger('afterClose'); - - F.wrap.trigger('onReset').remove(); - - $.extend(F, { - group: {}, - opts: {}, - current: null, - isActive: false, - isOpened: false, - isOpen: false, - wrap: null, - outer: null, - inner: null - }); - } - }); - - /* - * Default transitions - */ - - F.transitions = { - getOrigPosition: function () { - var current = F.current, - element = current.element, - padding = current.padding, - orig = $(current.orig), - pos = {}, - width = 50, - height = 50, - viewport; - - if (!orig.length && current.isDom && $(element).is(':visible')) { - orig = $(element).find('img:first'); - - if (!orig.length) { - orig = $(element); - } - } - - if (orig.length) { - pos = orig.offset(); - - if (orig.is('img')) { - width = orig.outerWidth(); - height = orig.outerHeight(); - } - - } else { - viewport = F.getViewport(); - - pos.top = viewport.y + (viewport.h - height) * 0.5; - pos.left = viewport.x + (viewport.w - width) * 0.5; - } - - pos = { - top: Math.ceil(pos.top - padding) + 'px', - left: Math.ceil(pos.left - padding) + 'px', - width: Math.ceil(width + padding * 2) + 'px', - height: Math.ceil(height + padding * 2) + 'px' - }; - - return pos; - }, - - step: function (now, fx) { - var ratio, innerValue, outerValue; - - if (fx.prop === 'width' || fx.prop === 'height') { - innerValue = outerValue = Math.ceil(now - (F.current.padding * 2)); - - if (fx.prop === 'height') { - ratio = (now - fx.start) / (fx.end - fx.start); - - if (fx.start > fx.end) { - ratio = 1 - ratio; - } - - innerValue -= F.innerSpace * ratio; - outerValue -= F.outerSpace * ratio; - } - - F.inner[fx.prop](innerValue); - F.outer[fx.prop](outerValue); - } - }, - - zoomIn: function () { - var wrap = F.wrap, - current = F.current, - startPos, - endPos, - dim = current.dim; - - if (current.openEffect === 'elastic') { - endPos = $.extend({}, dim, F._getPosition(true)); - - //Remove "position" property - delete endPos.position; - - startPos = this.getOrigPosition(); - - if (current.openOpacity) { - startPos.opacity = 0; - endPos.opacity = 1; - } - - F.outer.add(F.inner).width('auto').height('auto'); - - wrap.css(startPos).show(); - - wrap.animate(endPos, { - duration: current.openSpeed, - easing: current.openEasing, - step: this.step, - complete: F._afterZoomIn - }); - - } else { - wrap.css($.extend({}, dim, F._getPosition())); - - if (current.openEffect === 'fade') { - wrap.fadeIn(current.openSpeed, F._afterZoomIn); - - } else { - wrap.show(); - F._afterZoomIn(); - } - } - }, - - zoomOut: function () { - var wrap = F.wrap, - current = F.current, - endPos; - - if (current.closeEffect === 'elastic') { - if (wrap.css('position') === 'fixed') { - wrap.css(F._getPosition(true)); - } - - endPos = this.getOrigPosition(); - - if (current.closeOpacity) { - endPos.opacity = 0; - } - - wrap.animate(endPos, { - duration: current.closeSpeed, - easing: current.closeEasing, - step: this.step, - complete: F._afterZoomOut - }); - - } else { - wrap.fadeOut(current.closeEffect === 'fade' ? current.closeSpeed : 0, F._afterZoomOut); - } - }, - - changeIn: function () { - var wrap = F.wrap, - current = F.current, - startPos; - - if (current.nextEffect === 'elastic') { - startPos = F._getPosition(true); - startPos.opacity = 0; - startPos.top = (parseInt(startPos.top, 10) - 200) + 'px'; - - wrap.css(startPos).show().animate({ - opacity: 1, - top: '+=200px' - }, { - duration: current.nextSpeed, - easing: current.nextEasing, - complete: F._afterZoomIn - }); - - } else { - wrap.css(F._getPosition()); - - if (current.nextEffect === 'fade') { - wrap.hide().fadeIn(current.nextSpeed, F._afterZoomIn); - - } else { - wrap.show(); - F._afterZoomIn(); - } - } - }, - - changeOut: function () { - var wrap = F.wrap, - current = F.current, - cleanUp = function () { - $(this).trigger('onReset').remove(); - }; - - wrap.removeClass('fancybox-opened'); - - if (current.prevEffect === 'elastic') { - wrap.animate({ - 'opacity': 0, - top: '+=200px' - }, { - duration: current.prevSpeed, - easing: current.prevEasing, - complete: cleanUp - }); - - } else { - wrap.fadeOut(current.prevEffect === 'fade' ? current.prevSpeed : 0, cleanUp); - } - } - }; - - /* - * Overlay helper - */ - - F.helpers.overlay = { - overlay: null, - - update: function () { - var width, scrollWidth, offsetWidth; - - //Reset width/height so it will not mess - this.overlay.width(0).height(0); - - if ($.browser.msie) { - scrollWidth = Math.max(document.documentElement.scrollWidth, document.body.scrollWidth); - offsetWidth = Math.max(document.documentElement.offsetWidth, document.body.offsetWidth); - - width = scrollWidth < offsetWidth ? W.width() : scrollWidth; - - } else { - width = D.width(); - } - - this.overlay.width(width).height(D.height()); - }, - - beforeShow: function (opts) { - if (this.overlay) { - return; - } - - opts = $.extend(true, { - speedIn : 'fast', - closeClick : true, - opacity : 1, - css : { - background: 'black' - } - }, opts); - - this.overlay = $('
').css(opts.css).appendTo('body'); - - this.update(); - - if (opts.closeClick) { - this.overlay.bind('click.fb', F.close); - } - - W.bind("resize.fb", $.proxy(this.update, this)); - - this.overlay.fadeTo(opts.speedIn, opts.opacity); - }, - - onUpdate: function () { - //Update as content may change document dimensions - this.update(); - }, - - afterClose: function (opts) { - if (this.overlay) { - - this.overlay.fadeOut(opts.speedOut || 0, function () { - $(this).remove(); - }); - } - - this.overlay = null; - } - }; - - /* - * Title helper - */ - - F.helpers.title = { - beforeShow: function (opts) { - var title, text = F.current.title; - - if (text) { - title = $('
' + text + '
').appendTo('body'); - - if (opts.type === 'float') { - //This helps for some browsers - title.width(title.width()); - - title.wrapInner(''); - - //Increase bottom margin so this title will also fit into viewport - F.current.margin[2] += Math.abs(parseInt(title.css('margin-bottom'), 10)); - } - - title.appendTo(opts.type === 'over' ? F.inner : (opts.type === 'outside' ? F.wrap : F.outer)); - } - } - }; - - // jQuery plugin initialization - $.fn.fancybox = function (options) { - var that = $(this), - selector = this.selector || '', - index, - run = function(e) { - var what = this, relType = 'rel', relVal = what[ relType ], idx = index; - - if (!(e.ctrlKey || e.altKey || e.shiftKey || e.metaKey)) { - e.preventDefault(); - - if (!relVal) { - relType = 'data-fancybox-group'; - relVal = $(what).attr('data-fancybox-group'); - } - - if (relVal && relVal !== '' && relVal !== 'nofollow') { - what = selector.length ? $(selector) : that; - what = what.filter('[' + relType + '="' + relVal + '"]'); - idx = what.index(this); - } - - options.index = idx; - - F.open(what, options); - } - }; - - options = options || {}; - index = options.index || 0; - - if (selector) { - D.undelegate(selector, 'click.fb-start').delegate(selector, 'click.fb-start', run); - - } else { - that.unbind('click.fb-start').bind('click.fb-start', run); - } - - return this; - }; - -}(window, document, jQuery)); \ No newline at end of file diff --git a/media/js/jquery.slides.min.js b/media/js/jquery.slides.min.js deleted file mode 100644 index 1a1fcdd..0000000 --- a/media/js/jquery.slides.min.js +++ /dev/null @@ -1,20 +0,0 @@ -/* -* Slides, A Slideshow Plugin for jQuery -* Intructions: http://slidesjs.com -* By: Nathan Searles, http://nathansearles.com -* Version: 1.1.9 -* Updated: September 5th, 2011 -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -(function(a){a.fn.slides=function(b){return b=a.extend({},a.fn.slides.option,b),this.each(function(){function w(g,h,i){if(!p&&o){p=!0,b.animationStart(n+1);switch(g){case"next":l=n,k=n+1,k=e===k?0:k,r=f*2,g=-f*2,n=k;break;case"prev":l=n,k=n-1,k=k===-1?e-1:k,r=0,g=0,n=k;break;case"pagination":k=parseInt(i,10),l=a("."+b.paginationClass+" li."+b.currentClass+" a",c).attr("href").match("[^#/]+$"),k>l?(r=f*2,g=-f*2):(r=0,g=0),n=k}h==="fade"?b.crossfade?d.children(":eq("+k+")",c).css({zIndex:10}).fadeIn(b.fadeSpeed,b.fadeEasing,function(){b.autoHeight?d.animate({height:d.children(":eq("+k+")",c).outerHeight()},b.autoHeightSpeed,function(){d.children(":eq("+l+")",c).css({display:"none",zIndex:0}),d.children(":eq("+k+")",c).css({zIndex:0}),b.animationComplete(k+1),p=!1}):(d.children(":eq("+l+")",c).css({display:"none",zIndex:0}),d.children(":eq("+k+")",c).css({zIndex:0}),b.animationComplete(k+1),p=!1)}):d.children(":eq("+l+")",c).fadeOut(b.fadeSpeed,b.fadeEasing,function(){b.autoHeight?d.animate({height:d.children(":eq("+k+")",c).outerHeight()},b.autoHeightSpeed,function(){d.children(":eq("+k+")",c).fadeIn(b.fadeSpeed,b.fadeEasing)}):d.children(":eq("+k+")",c).fadeIn(b.fadeSpeed,b.fadeEasing,function(){a.browser.msie&&a(this).get(0).style.removeAttribute("filter")}),b.animationComplete(k+1),p=!1}):(d.children(":eq("+k+")").css({left:r,display:"block"}),b.autoHeight?d.animate({left:g,height:d.children(":eq("+k+")").outerHeight()},b.slideSpeed,b.slideEasing,function(){d.css({left:-f}),d.children(":eq("+k+")").css({left:f,zIndex:5}),d.children(":eq("+l+")").css({left:f,display:"none",zIndex:0}),b.animationComplete(k+1),p=!1}):d.animate({left:g},b.slideSpeed,b.slideEasing,function(){d.css({left:-f}),d.children(":eq("+k+")").css({left:f,zIndex:5}),d.children(":eq("+l+")").css({left:f,display:"none",zIndex:0}),b.animationComplete(k+1),p=!1})),b.pagination&&(a("."+b.paginationClass+" li."+b.currentClass,c).removeClass(b.currentClass),a("."+b.paginationClass+" li:eq("+k+")",c).addClass(b.currentClass))}}function x(){clearInterval(c.data("interval"))}function y(){b.pause?(clearTimeout(c.data("pause")),clearInterval(c.data("interval")),u=setTimeout(function(){clearTimeout(c.data("pause")),v=setInterval(function(){w("next",i)},b.play),c.data("interval",v)},b.pause),c.data("pause",u)):x()}a("."+b.container,a(this)).children().wrapAll('
');var c=a(this),d=a(".slides_control",c),e=d.children().size(),f=d.children().outerWidth(),g=d.children().outerHeight(),h=b.start-1,i=b.effect.indexOf(",")<0?b.effect:b.effect.replace(" ","").split(",")[0],j=b.effect.indexOf(",")<0?i:b.effect.replace(" ","").split(",")[1],k=0,l=0,m=0,n=0,o,p,q,r,s,t,u,v;if(e<2)return a("."+b.container,a(this)).fadeIn(b.fadeSpeed,b.fadeEasing,function(){o=!0,b.slidesLoaded()}),a("."+b.next+", ."+b.prev).fadeOut(0),!1;if(e<2)return;h<0&&(h=0),h>e&&(h=e-1),b.start&&(n=h),b.randomize&&d.randomize(),a("."+b.container,c).css({overflow:"hidden",position:"relative"}),d.children().css({position:"absolute",top:0,left:d.children().outerWidth(),zIndex:0,display:"none"}),d.css({position:"relative",width:f*3,height:g,left:-f}),a("."+b.container,c).css({display:"block"}),b.autoHeight&&(d.children().css({height:"auto"}),d.animate({height:d.children(":eq("+h+")").outerHeight()},b.autoHeightSpeed));if(b.preload&&d.find("img:eq("+h+")").length){a("."+b.container,c).css({background:"url("+b.preloadImage+") no-repeat 50% 50%"});var z=d.find("img:eq("+h+")").attr("src")+"?"+(new Date).getTime();a("img",c).parent().attr("class")!="slides_control"?t=d.children(":eq(0)")[0].tagName.toLowerCase():t=d.find("img:eq("+h+")"),d.find("img:eq("+h+")").attr("src",z).load(function(){d.find(t+":eq("+h+")").fadeIn(b.fadeSpeed,b.fadeEasing,function(){a(this).css({zIndex:5}),a("."+b.container,c).css({background:""}),o=!0,b.slidesLoaded()})})}else d.children(":eq("+h+")").fadeIn(b.fadeSpeed,b.fadeEasing,function(){o=!0,b.slidesLoaded()});b.bigTarget&&(d.children().css({cursor:"pointer"}),d.children().click(function(){return w("next",i),!1})),b.hoverPause&&b.play&&(d.bind("mouseover",function(){x()}),d.bind("mouseleave",function(){y()})),b.generateNextPrev&&(a("."+b.container,c).after('Prev'),a("."+b.prev,c).after('Next')),a("."+b.next,c).click(function(a){a.preventDefault(),b.play&&y(),w("next",i)}),a("."+b.prev,c).click(function(a){a.preventDefault(),b.play&&y(),w("prev",i)}),b.generatePagination?(b.prependPagination?c.prepend(""):c.append(""),d.children().each(function(){a("."+b.paginationClass,c).append('
  • '+(m+1)+"
  • "),m++})):a("."+b.paginationClass+" li a",c).each(function(){a(this).attr("href","#"+m),m++}),a("."+b.paginationClass+" li:eq("+h+")",c).addClass(b.currentClass),a("."+b.paginationClass+" li a",c).click(function(){return b.play&&y(),q=a(this).attr("href").match("[^#/]+$"),n!=q&&w("pagination",j,q),!1}),a("a.link",c).click(function(){return b.play&&y(),q=a(this).attr("href").match("[^#/]+$")-1,n!=q&&w("pagination",j,q),!1}),b.play&&(v=setInterval(function(){w("next",i)},b.play),c.data("interval",v))})},a.fn.slides.option={preload:!1,preloadImage:"/img/loading.gif",container:"slides_container",generateNextPrev:!1,next:"next",prev:"prev",pagination:!0,generatePagination:!0,prependPagination:!1,paginationClass:"pagination",currentClass:"current",fadeSpeed:350,fadeEasing:"",slideSpeed:350,slideEasing:"",start:1,effect:"slide",crossfade:!1,randomize:!1,play:0,pause:0,hoverPause:!1,autoHeight:!1,autoHeightSpeed:350,bigTarget:!1,animationStart:function(){},animationComplete:function(){},slidesLoaded:function(){}},a.fn.randomize=function(b){function c(){return Math.round(Math.random())-.5}return a(this).each(function(){var d=a(this),e=d.children(),f=e.length;if(f>1){e.hide();var g=[];for(i=0;i()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; - return re.test(email); - } - - return { - validateEmail: validateEmail, - publish: function(options) { - var assertion = options.assertion; - var publish = jQuery.Deferred(); - if (!assertion || !assertion.badge || !assertion.badge.issuer) - throw new Error("invalid assertion"); - BADGE_REQUIRED_FIELDS.forEach(function(field) { - if (!assertion.badge[field]) - throw new Error("Missing field: badge." + field); - }); - ISSUER_REQUIRED_FIELDS.forEach(function(field) { - if (!assertion.badge.issuer[field]) - throw new Error("Missing field: badge.issuer." + field); - }); - jQuery.ajax({ - type: 'POST', - url: options.service, - data: { - 'json': JSON.stringify(assertion), - 'original-url': window.location.href, - }, - crossDomain: true, - dataType: 'json', - success: function(response) { - publish.resolve(response['published-url']); - }, - error: function() { - publish.reject.apply(publish, arguments); - } - }); - return publish; - }, - issue: function(url) { - var issue = jQuery.Deferred(); - OpenBadges.issue([url], function(errors, successes) { - issue.resolve(errors, successes); - }); - return issue; - } - }; -})(); diff --git a/media/js/sha256.js b/media/js/sha256.js deleted file mode 100644 index b5d43d5..0000000 --- a/media/js/sha256.js +++ /dev/null @@ -1,255 +0,0 @@ -/* -* A JavaScript implementation of the SHA256 hash function. -* -* FILE: sha256.js -* VERSION: 0.8 -* AUTHOR: Christoph Bichlmeier -* -* NOTE: This version is not tested thoroughly! -* -* Copyright (c) 2003, Christoph Bichlmeier -* All rights reserved. -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following conditions -* are met: -* 1. Redistributions of source code must retain the above copyright -* notice, this list of conditions and the following disclaimer. -* 2. Redistributions in binary form must reproduce the above copyright -* notice, this list of conditions and the following disclaimer in the -* documentation and/or other materials provided with the distribution. -* 3. Neither the name of the copyright holder nor the names of contributors -* may be used to endorse or promote products derived from this software -* without specific prior written permission. -* -* ====================================================================== -* -* THIS SOFTWARE IS PROVIDED BY THE AUTHORS ''AS IS'' AND ANY EXPRESS -* OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE -* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE -* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, -* EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -/* SHA256 logical functions */ -function rotateRight(n,x) { - return ((x >>> n) | (x << (32 - n))); -} - -function choice(x,y,z) { - return ((x & y) ^ (~x & z)); -} - -function majority(x,y,z) { - return ((x & y) ^ (x & z) ^ (y & z)); -} - -function sha256_Sigma0(x) { - return (rotateRight(2, x) ^ rotateRight(13, x) ^ rotateRight(22, x)); -} - -function sha256_Sigma1(x) { - return (rotateRight(6, x) ^ rotateRight(11, x) ^ rotateRight(25, x)); -} - -function sha256_sigma0(x) { - return (rotateRight(7, x) ^ rotateRight(18, x) ^ (x >>> 3)); -} - -function sha256_sigma1(x) { - return (rotateRight(17, x) ^ rotateRight(19, x) ^ (x >>> 10)); -} - -function sha256_expand(W, j) { - return (W[j&0x0f] += sha256_sigma1(W[(j+14)&0x0f]) + W[(j+9)&0x0f] + - sha256_sigma0(W[(j+1)&0x0f])); -} - -/* Hash constant words K: */ -var K256 = [ - 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, - 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, - 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, - 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, - 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, - 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, - 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, - 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967, - 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, - 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, - 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, - 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, - 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, - 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, - 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, - 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2 -]; - -/* global arrays */ -var ihash, count, buffer; -var sha256_hex_digits = "0123456789abcdef"; - -/* Add 32-bit integers with 16-bit operations (bug in some JS-interpreters: -overflow) */ -function safe_add(x, y) { - var lsw = (x & 0xffff) + (y & 0xffff); - var msw = (x >> 16) + (y >> 16) + (lsw >> 16); - return (msw << 16) | (lsw & 0xffff); -} - -/* Initialise the SHA256 computation */ -function sha256_init() { - ihash = new Array(8); - count = new Array(2); - buffer = new Array(64); - count[0] = count[1] = 0; - ihash[0] = 0x6a09e667; - ihash[1] = 0xbb67ae85; - ihash[2] = 0x3c6ef372; - ihash[3] = 0xa54ff53a; - ihash[4] = 0x510e527f; - ihash[5] = 0x9b05688c; - ihash[6] = 0x1f83d9ab; - ihash[7] = 0x5be0cd19; -} - -/* Transform a 512-bit message block */ -function sha256_transform() { - var a, b, c, d, e, f, g, h, T1, T2; - var W = new Array(16); - - /* Initialize registers with the previous intermediate value */ - a = ihash[0]; - b = ihash[1]; - c = ihash[2]; - d = ihash[3]; - e = ihash[4]; - f = ihash[5]; - g = ihash[6]; - h = ihash[7]; - - /* make 32-bit words */ - for(var i=0; i<16; i++) - W[i] = ((buffer[(i<<2)+3]) | (buffer[(i<<2)+2] << 8) | (buffer[(i<<2)+1] - << 16) | (buffer[i<<2] << 24)); - - for(var j=0; j<64; j++) { - T1 = h + sha256_Sigma1(e) + choice(e, f, g) + K256[j]; - if(j < 16) T1 += W[j]; - else T1 += sha256_expand(W, j); - T2 = sha256_Sigma0(a) + majority(a, b, c); - h = g; - g = f; - f = e; - e = safe_add(d, T1); - d = c; - c = b; - b = a; - a = safe_add(T1, T2); - } - - /* Compute the current intermediate hash value */ - ihash[0] += a; - ihash[1] += b; - ihash[2] += c; - ihash[3] += d; - ihash[4] += e; - ihash[5] += f; - ihash[6] += g; - ihash[7] += h; -} - -/* Read the next chunk of data and update the SHA256 computation */ -function sha256_update(data, inputLen) { - var i, index, curpos = 0; - /* Compute number of bytes mod 64 */ - index = ((count[0] >> 3) & 0x3f); - var remainder = (inputLen & 0x3f); - - /* Update number of bits */ - if ((count[0] += (inputLen << 3)) < (inputLen << 3)) count[1]++; - count[1] += (inputLen >> 29); - - /* Transform as many times as possible */ - for(i=0; i+63> 3) & 0x3f); - buffer[index++] = 0x80; - if(index <= 56) { - for(var i=index; i<56; i++) - buffer[i] = 0; - } else { - for(var i=index; i<64; i++) - buffer[i] = 0; - sha256_transform(); - for(var i=0; i<56; i++) - buffer[i] = 0; - } - buffer[56] = (count[1] >>> 24) & 0xff; - buffer[57] = (count[1] >>> 16) & 0xff; - buffer[58] = (count[1] >>> 8) & 0xff; - buffer[59] = count[1] & 0xff; - buffer[60] = (count[0] >>> 24) & 0xff; - buffer[61] = (count[0] >>> 16) & 0xff; - buffer[62] = (count[0] >>> 8) & 0xff; - buffer[63] = count[0] & 0xff; - sha256_transform(); -} - -/* Split the internal hash values into an array of bytes */ -function sha256_encode_bytes() { - var j=0; - var output = new Array(32); - for(var i=0; i<8; i++) { - output[j++] = ((ihash[i] >>> 24) & 0xff); - output[j++] = ((ihash[i] >>> 16) & 0xff); - output[j++] = ((ihash[i] >>> 8) & 0xff); - output[j++] = (ihash[i] & 0xff); - } - return output; -} - -/* Get the internal hash as a hex string */ -function sha256_encode_hex() { - var output = new String(); - for(var i=0; i<8; i++) { - for(var j=28; j>=0; j-=4) - output += sha256_hex_digits.charAt((ihash[i] >>> j) & 0x0f); - } - return output; -} - -/* Main function: returns a hex string representing the SHA256 value of the -given data */ -function sha256_digest(data) { - sha256_init(); - sha256_update(data, data.length); - sha256_final(); - return sha256_encode_hex(); -} - -/* test if the JS-interpreter is working properly */ -function sha256_self_test() { - return sha256_digest("message digest") == - "f7846f55cf23e14eebeab5b4e1550cad5b509e3348fbc4efa3a1413d393cb650"; -} - - diff --git a/media/less/_components.less b/media/less/_components.less deleted file mode 100644 index b32a752..0000000 --- a/media/less/_components.less +++ /dev/null @@ -1,493 +0,0 @@ -@import "_variables"; -@import "_mixins"; - -/* ---[ Panels ]------------------------------------------------------------- */ - -.panel { - display: block; - padding: 25px 0 40px; - background: @panel-background; - .border-radius(8px); - text-decoration: none; - overflow: hidden; - text-align: center; - color: inherit; - - img { - max-width: 100%; - } - - h4, p { - margin: 15px 60px 0; - color: inherit; - } -} - -@media all and (max-width: 1000px) { - .panel { - padding: 25px 0 25px 300px; - - img { - float: left; - margin-left: -300px; - max-width: 300px; - } - - h1, h2, h3, h4 { - clear: none; - } - - p { - margin: 15px 20px 0; - } - } -} - -@media all and (max-width: 500px) { - .panel { - padding: 25px 0; - - img { - max-width: 100%; - float: none; - margin: 0; - } - } -} - -/* ---[ Columns ]------------------------------------------------------------ */ - -.two-column, -.three-column { - overflow: hidden; - margin: 25px 0 0 -@content-gutter; - padding: 0; - list-style: none; - - .column { - float: left; - width: 50%; - margin: 0; - padding: 0; - border-left: solid @content-gutter transparent; - .box-sizing(border-box); - } -} - -.two-column { - .column { - &:nth-child(odd) { - clear: both; - } - } -} - -.three-column { - .column { - width: 33.33%; - - &:nth-child(3n+1) { - clear: both; - } - } -} - -@media all and (max-width: 1000px) { - .three-column { - .column { - float: none; - width: auto; - margin-bottom: 25px; - } - } -} - -@media all and (max-width: @small-screen-cutoff) { - .two-column, - .three-column { - margin-left: -@tiny-content-gutter; - - .column { - float: none; - width: auto; - border-left-width: @tiny-content-gutter; - } - } -} - -/* ---[ Promo Lists ]-------------------------------------------------------- */ - -ul, ol { - &.promo-list { - list-style: none; - padding: 0; - - li, .column { - margin-top: 2.4em; - padding: 0 25px 0 80px; - background: url("../images/badge-bullet.png") 25px 0 no-repeat; - } - - h3, h4, p { - margin-top: 0; - } - } -} - -@media all and (max-width: @small-screen-cutoff) { - ul, ol { - &.promo-list { - li { - padding-right: 35px; - } - } - } -} - -/* ---[ Buttons ]------------------------------------------------------------ */ - -.button { - display: inline-block; - text-decoration: none; - text-shadow: 0px 1px 0px rgba(0,0,0,0.25); - letter-spacing: -0.25px; - background-color: #1D94E4; - text-align: center; - color: white; - border: none; - cursor: pointer; - padding: 0.25em 2em; - font: inherit; - - -webkit-border-radius: 0.25em; - -moz-border-radius: 0.25em; - border-radius: 0.25em; - - -webkit-box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.1), inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1); - -moz-box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.1), inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1); - box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.1), inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1); - - // IE10 - background-image: -ms-linear-gradient(top, #1D94E4 0%, #006DCA 100%); - - // Mozilla Firefox - background-image: -moz-linear-gradient(top, #1D94E4 0%, #006DCA 100%); - - // Opera - background-image: -o-linear-gradient(top, #1D94E4 0%, #006DCA 100%); - - // Webkit (Safari/Chrome 10) - background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #1D94E4), color-stop(1, #006DCA)); - - // Webkit (Chrome 11+) - background-image: -webkit-linear-gradient(top, #1D94E4 0%, #006DCA 100%); - - // Proposed W3C Markup - background-image: linear-gradient(top, #1D94E4 0%, #006DCA 100%); - - -webkit-transition-property: -moz-box-shadow, -webkit-box-shadow, box-shadow; - -webkit-transition-duration: 0.25s; - -webkit-transition-delay: 0s; - - -moz-transition-property: -moz-box-shadow, -webkit-box-shadow, box-shadow; - -moz-transition-duration: 0.25s; - -moz-transition-delay: 0s; - - transition-property: -moz-box-shadow, -webkit-box-shadow, box-shadow; - transition-duration: 0.25s; - transition-delay: 0s; - - &.large { - padding: 0 2em; - font-size: 24px; - line-height: 48px; - font-style: italic; - } - - &:hover, - &:focus { - -webkit-box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.1), inset 0px -2px 0px 0px rgba(0, 0, 0, 0.2), inset 0px 12 px 24px 2px rgba(255,255,255,0.2); - -moz-box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.1), inset 0px -2px 0px 0px rgba(0, 0, 0, 0.2), inset 0px 12px 24px 2px rgba(255,255,255,0.2); - box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.1), inset 0px -2px 0px 0px rgba(0, 0, 0, 0.2), inset 0px 12px 24px 2px rgba(255,255,255,0.2); - - -webkit-transition-property: -moz-box-shadow, -webkit-box-shadow, box-shadow; - -webkit-transition-duration: 0.25s; - -webkit-transition-delay: 0s; - - -moz-transition-property: -moz-box-shadow, -webkit-box-shadow, box-shadow; - -moz-transition-duration: 0.25s; - -moz-transition-delay: 0s; - - transition-property: -moz-box-shadow, -webkit-box-shadow, box-shadow; - transition-duration: 0.25s; - transition-delay: 0s; - } - - &:active { - -webkit-box-shadow: inset 0px 2px 0px 0px rgba(0, 0, 0, 0.2), inset 0px 12px 24px 6px rgba(0,0,0,0.2), inset 0px 0px 2px 2px rgba(0,0,0,0.2); - -moz-box-shadow: inset 0px 2px 0px 0px rgba(0, 0, 0, 0.2), inset 0px 12px 24px 6px rgba(0,0,0,0.2), inset 0px 0px 2px 2px rgba(0,0,0,0.2); - box-shadow: inset 0px 2px 0px 0px rgba(0, 0, 0, 0.2), inset 0px 12px 24px 6px rgba(0,0,0,0.2), inset 0px 0px 2px 2px rgba(0,0,0,0.2); - - -webkit-transition-property: -moz-box-shadow, -webkit-box-shadow, box-shadow; - -webkit-transition-duration: 0.25s; - -webkit-transition-delay: 0s; - - -moz-transition-property: -moz-box-shadow, -webkit-box-shadow, box-shadow; - -moz-transition-duration: 0.25s; - -moz-transition-delay: 0s; - - transition-property: -moz-box-shadow, -webkit-box-shadow, box-shadow; - transition-duration: 0.25s; - transition-delay: 0s; - } - - &:link, - &:visited, - &:focus, - &:hover, - &:active { - color: #fff; - text-decoration: none; - } - - &:after { - content: ' ❯'; - } -} - -/* ---[ Meta ]--------------------------------------------------------------- */ - -#meta { - background: #323538; - //.linear-gradient(~"left, rgba(255,255,255,0.015), rgba(255,255,255,0.015) 50%, rgba(255,255,255,0) 50%, rgba(255,255,255,0)"); - background-size: 10px 10px; - background-position: 50% 50%; - padding-bottom: 15px; - min-height: 200px; - position: relative; - .inner-shadow (0, 5px, 10px, 0, 0.4); - - .constrained { - max-width: 950px; - padding: 0; - overflow: hidden; - } - - section { - color: white; - width: 25%; - float: left; - padding: 2em 10px; - font-size: .8em; - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; - position: relative; - } - - form { - margin-top: 10px; - } - - input, textarea { - width: 100%; - display: block; - margin-bottom: 10px; - } - - textarea { - min-height: 60px; - font: inherit; - } - - .twitter-follow-button { - margin-top: 10px; - } - - .widget:nth-child(2) { - width: 30%; - } - - .widget:nth-child(3) { - width: 20%; - } - - h2 { - font-family: @normal-font; - color: #9C9C9C; - text-transform: uppercase; - font-size: 18px; - font-weight: bold; - margin: 0; - padding: 20px 0 0; - } - - i { - position: absolute; - top: 2em; - left: 0; - height: 35px; - width: 100%; - background: url(../images/aside-icons.png) no-repeat 10px 100%; - - &.tweet { - background-position: 10px -145px; - } - - &.learn { - background-position: 10px -445px; - } - - &.mozilla { - background-position: 10px -295px; - } - } - - p, ul { - margin: 1em 0 0; - padding: 0; - list-style: none; - font-size: 14px; - } - - li { - list-style-type: none; - border-top: solid 1px #656565; - padding: 0.5em 0 0; - margin: 0.5em 0 0; - - &:first-child { - border-top: none; - padding: 0; - margin: 0; - } - } -} - -@media all and (max-width: 800px) { - #meta { - padding-bottom: 2em; - padding-left: .5em; - padding-right: .5em; - - section { - float: none; - width: auto !important; - max-width: 400px; - margin: 0 auto; - padding-bottom: 0; - } - } - - #home, #footer .footnote a { - - margin: 0 auto; - background-repeat: no-repeat; - background-size: 100%; - width: 300px; - height: 50px; - } - - #footer .footnote a { - background-position: 0 -50px; - } - - div[role=main] { - - h1 { - font-size: 1.8em; - } - - .column50 { - width: 100%; - padding: 0 !important; - } - - ul.links { - text-align: center; - } - - #news { - .blog li { - - padding-left: 0; - - small { - position: relative; - display: block; - } - } - } - - nav { - text-align: center; - a { - - width: 120px; - margin-bottom: 20px; - background-size: 60%; - font-size: 1.1em; - padding-top: 140px; - } - } - - - - .video iframe { - width: 100%; - } - - #news { - .blog, .tweets { - width: 70%; - float: none; - } - - .blog { - margin-bottom: 30px; - } - } - - ul.links { - - margin: 0; - padding: 0; - - - li { - - display: block; - width: 80%; - padding-right: 0; - padding-left: 0; - margin-left: 0; - margin-right: 0; - - a { - width: 100%; - } - } - - } - - } - - - -} - -// clearfix - -.clear:before, -.clear:after { - content: " "; /* 1 */ - display: table; /* 2 */ -} - -.clear:after { - clear: both; -} - -.clear { - *zoom: 1; -} \ No newline at end of file diff --git a/media/less/_fonts.less b/media/less/_fonts.less deleted file mode 100644 index ea45d45..0000000 --- a/media/less/_fonts.less +++ /dev/null @@ -1,35 +0,0 @@ -@font-face { - font-family: "Open Sans Light"; - font-style: normal; - font-weight: normal; - src: url("../fonts/OpenSans-Light-webfont.eot?#iefix") format("embedded-opentype"), - url("../fonts/OpenSans-Light-webfont.woff") format("woff"), - url("../fonts/OpenSans-Light-webfont.ttf") format("truetype"), - url("../fonts/OpenSans-Light-webfont.svg#OpenSansLight") format("svg"); -} - -@font-face { - font-family: "Open Sans"; - font-style: normal; - font-weight: normal; - src: url("../fonts/OpenSans-Regular-webfont.eot?#iefix") format("embedded-opentype"), - url("../fonts/OpenSans-Regular-webfont.woff") format("woff"), - url("../fonts/OpenSans-Regular-webfont.ttf") format("truetype"), - url("../fonts/OpenSans-Regular-webfont.svg#OpenSansRegular") format("svg"); -} - -@font-face { - font-family: "Open Sans"; - font-style: normal; - font-weight: bold; - src: url("../fonts/OpenSans-Semibold-webfont.eot?#iefix") format("embedded-opentype"), - url("../fonts/OpenSans-Semibold-webfont.woff") format("woff"), - url("../fonts/OpenSans-Semibold-webfont.ttf") format("truetype"), - url("../fonts/OpenSans-Semibold-webfont.svg#OpenSansSemibold") format("svg"); -} - -@font-face { - font-family: "MetaWebPro-Black"; - src: url(../fonts/MetaWebPro-Black.woff) format('woff'); -} - diff --git a/media/less/_mixins.less b/media/less/_mixins.less deleted file mode 100644 index 6874056..0000000 --- a/media/less/_mixins.less +++ /dev/null @@ -1,52 +0,0 @@ -.border-radius (@radius) { - -webkit-border-radius: @radius; - -moz-border-radius: @radius; - border-radius: @radius; -} - -.box-sizing (@sizing) { - -webkit-box-sizing: @sizing; - -moz-box-sizing: @sizing; - box-sizing: @sizing; -} - -.linear-gradient (@defn) { - background-image: -webkit-linear-gradient(@defn); - background-image: -moz-linear-gradient(@defn); - background-image: -ms-linear-gradient(@defn); - background-image: linear-gradient(@defn); -} - -.drop-shadow (@x: 0, @y: 1px, @blur: 2px, @spread: 0, @alpha: 0.25) { - -webkit-box-shadow: @x @y @blur @spread rgba(0, 0, 0, @alpha); - -moz-box-shadow: @x @y @blur @spread rgba(0, 0, 0, @alpha); - box-shadow: @x @y @blur @spread rgba(0, 0, 0, @alpha); -} - -.inner-shadow (@x: 0, @y: 1px, @blur: 2px, @spread: 0, @alpha: 0.25) { - -webkit-box-shadow: inset @x @y @blur @spread rgba(0, 0, 0, @alpha); - -moz-box-shadow: inset @x @y @blur @spread rgba(0, 0, 0, @alpha); - box-shadow: inset @x @y @blur @spread rgba(0, 0, 0, @alpha); -} - - -// the retina mixin. An example goes: .at2x(img/header@2x.png, 650px, 150px, top, left, no-repeat, scroll) -// Put the effective size, it goes width then height -// A modification of the retina.js less mixin - https://github.com/imulus/retinajs - -@highdpi: ~"(-webkit-min-device-pixel-ratio: 1.5), (min--moz-device-pixel-ratio: 1.5), (-o-min-device-pixel-ratio: 3/2), (min-resolution: 1.5dppx)"; - -.at2x(@path, @w: auto, @h: auto, @xpos: 0, @ypos: 0, @repeat: no-repeat; @attachment: scroll;) { - background-image: url(@path); - background-position: @xpos @ypos; - background-repeat: @repeat; - background-attachment: @attachment; - @at2x_path: ~`"@{path}".split('.').slice(0, "@{path}".split('.').length - 1).join(".") + "@2x" + "." + "@{path}".split('.')["@{path}".split('.').length - 1]`; - @media @highdpi { - background-image: url(@at2x_path); - background-size: @w @h; - background-position: @xpos @ypos; - background-repeat: @repeat; - background-attachment: @attachment; - } -} \ No newline at end of file diff --git a/media/less/_reset.less b/media/less/_reset.less deleted file mode 100644 index 2c0fc62..0000000 --- a/media/less/_reset.less +++ /dev/null @@ -1,60 +0,0 @@ -@import "_variables"; - -html, -body { - margin: 0; - padding: 0; -} - -a, -label.link { - color: @ob-blue; - cursor: pointer; - text-decoration: underline; -} - -h2, -h3, -h4 { - font-weight: normal; - margin: 2em 0 1em; - clear: both; -} - -h2 { - font-size: 2.75em; -} - -h3 { - font-size: 1.95em; -} - -h4 { - font-size: 1.2em; -} - -p { - font-size: 1em; - margin: 1.5em 0 0; - line-height: 1.5em; -} - -input { - font: inherit; -} - -@media all and (max-width: @small-screen-cutoff) { - h2 { - margin-top: 1em; - } -} - -@media all and (max-width: @tiny-screen-cutoff) { - h2 { - font-size: 1.95em; - } - - h3 { - font-size: 1.55em; - } -} \ No newline at end of file diff --git a/media/less/_variables.less b/media/less/_variables.less deleted file mode 100644 index 172f35d..0000000 --- a/media/less/_variables.less +++ /dev/null @@ -1,28 +0,0 @@ -@main-background: #FFFFFF; -@header-background: #E6E7E8; -@footer-background: #000B19; -@panel-background: #213441; -@main-text-color: #221f20; - -@ob-blue: #5FC9E5; -@ob-green: #B1CF37; -@ob-orange: #F48123; -@ob-navy: #073a5a; - -@pale-blue: #5FC9E5; - -@striped-border-size: 6px; - -@content-width: 950px; -@content-gutter: 25px; -@tiny-content-gutter: 10px; -@full-content-width: @content-width + 2 * @content-gutter; -@half-content-width: @full-content-width / 2; - -@small-screen-cutoff: 740px; -@tiny-screen-cutoff: 400px; - -@light-font: "Open Sans Light", sans-serif; -@normal-font: "Open Sans", sans-serif; - -@base-font-size: 18px; \ No newline at end of file diff --git a/media/less/core.less b/media/less/core.less deleted file mode 100644 index 2a9f469..0000000 --- a/media/less/core.less +++ /dev/null @@ -1,706 +0,0 @@ -// Target: ../css/$.css - -@import "_variables"; -@import "_mixins"; - -/* ===[ Fonts ]============================================================== */ - -@import "_fonts"; - -/* ===[ Reset ]============================================================== */ - -@import "_reset"; - -/* ===[ Core ]=============================================================== */ - - - -body { - background: #FFFFFF; - font-family: @light-font; - font-size: @base-font-size; - color: #221f20; -} - -h4 { - color: @pale-blue; -} - -.constrained { - max-width: @content-width; - padding: 0 @content-gutter; - margin: 0 auto; -} - -@media all and (max-width: @tiny-screen-cutoff) { - .constrained { - padding: 0 @tiny-content-gutter; - } -} - -.text-left { - text-align: left; -} - -.text-center { - text-align: center; -} - -.text-right { - text-align: right; -} - -.text-hidden { - position: absolute; - left: -999em; -} - -.intro { - font-size: 1.5em; - margin: -0.75em 0 0; -} - -.tagline { - font-size: 1.5em; - margin: -2em 0 0; - font-style: italic; -} - -.reduced { - font-size: 0.78em; -} - -/* ===[ Header/Footer ]====================================================== */ - -#header { - background: @header-background; - border-top: solid 2px #FFF; - border-bottom: solid @striped-border-size @ob-blue; - position: relative; - - a { - color: #073A5A; - } -} - -#footer { - position: relative; - border-top: solid @striped-border-size @ob-blue; - padding: 20px 0; - - a { - color: inherit; - } -} - -#header, #footer { - .constrained { - overflow: hidden; - } - - a { - text-decoration: none; - } -} - -#header::before, -#header::after, -#footer::before, -#footer::after { - content: ""; - height: @striped-border-size; - width: 33.33%; - position: absolute; - left: 33.33%; - background: @ob-green; -} - -#header::before, -#header::after { - bottom: -@striped-border-size; -} - -#footer::before, -#footer::after { - top: -@striped-border-size; -} - -#header::after, -#footer::after { - left: 66.66%; - background: @ob-orange; -} - -/* ---[ Etc. ]--------------------------------------------------------------- */ - -#tabzilla { - margin-top: -28px; - - // Remove this lot later -/* float: right; - display: block; - background: rgba(255,255,255,0.75); - height: 44px; - width: 150px; - position: relative; - text-indent: -2000px; - overflow: hidden; - z-index: 999; -*/} - -#header h1, -#footer .footnote, -#footer .support { - margin: 0; - padding: 28px 0; -} - -#footer .support { - font-size: .8em; - width: 150px; - position: relative; - - img { - position: absolute; - right: -100px; - top: 15px; - } -} - -#home, -#footer .footnote a { - display: block; - width: 474px; - height: 80px; - background: url("../images/logo.png"); - text-indent: -100%; - overflow: hidden; - margin-left: -14px; -} - - - - -/* ---[ Navigation ]--------------------------------------------------------- */ - -#header, #footer { - nav { - float: right; - margin-top: -45px; - - &.secondary { - margin-top: -60px; - } - - ul { - margin: -1em 0 0; - padding: 0; - list-style: none; - line-height: 1em; - } - - li { - float: left; - margin-left: 1.5em; - } - } -} - -#contact { - .error { - color: red; - margin-bottom: 15px; - } -} - -#navigation { - margin-right: 20px; -} - -@media all and (max-width: @full-content-width) { - #header, #footer { - nav { - float: none; - clear: both; - margin: 0; - - &.secondary { - margin-top: -35px; - } - - ul { - overflow: hidden; - text-align: center; - line-height: 1.5em; - padding-bottom: 1.5em; - } - - li { - float: none; - display: inline-block; - margin: 0 0.75em; - } - } - } -} - -/* ===[ Main Content ]======================================================= */ - - - -div[role=main]{ - - h1 { - font-size: 2.5em; - text-align: center; - color: #757575; - font-weight: normal; - } - - h2 { - font-size: 2em; - font-weight: normal; - text-align: center; - margin-top: 0; - margin-bottom: 5px; - font-weight: normal; - padding-top: 140px; - } - - p.subheading { - max-width: 450px; - text-align: center; - margin: 0 auto; - margin-bottom: 40px; - font-size: 1.4em; - } - - nav { - max-width:700px; - margin: 0 auto; - - a { - background: #efefef; - font-weight: normal; - padding-top: 140px; - padding-bottom: 10px; - .border-radius(7px); - width: 29%; - margin-right: 1%; - margin-left: 1%; - display: inline-block; - text-decoration: none; - text-align: center; - color: @main-text-color; - font-size: 32px; - -webkit-transition-property: all, - -webkit-transform; - -webkit-transition-duration: 0.2s, 0.2s; - -moz-transition-property: all, -moz-transform; - -moz-transition-duration: 0.2s, 0.2s; - -ms-transition-property: all, -ms-transform; - -ms-transition-duration: 0.2s, 0.2s; - -o-transition-property: all, -o-transform; - -o-transition-duration: 0.2s, 0.2s; - transition-property: all, transform; - transition-duration: 0.2s, 0.2s; - animation-timing-function:ease-out; - -moz-animation-timing-function:ease-out; - -webkit-animation-timing-function:ease-out; - -o-animation-timing-function:ease-out; - border: 5px solid rgba(0,0,0,0); - - &:hover { - -webkit-transform: scale(1.05); - transform: scale(1.05); - -moz-transform: scale(1.05); - } - - &.learn:hover { - border: 5px solid @ob-blue; - } - - &.design:hover { - border: 5px solid @ob-green; - } - - &.code:hover { - border: 5px solid @ob-orange; - } - - span { - display: block; - width: 15px; - height: 7px; - margin: 20px auto; - } - - &.learn { - .at2x('../images/icon_learn.png', 90px, 102px, center, 30px, no-repeat, scroll); - - span { - .at2x('../images/icon_arrow_dn_blue.png', 15px, 7px, center, center, no-repeat, scroll); - } - } - - &.design { - .at2x('../images/icon_design.png', 90px, 102px, center, 30px, no-repeat, scroll); - span { - .at2x('../images/icon_arrow_dn_green.png', 15px, 7px, center, center, no-repeat, scroll); - } - } - - &.code { - .at2x('../images/icon_code.png', 90px, 102px, center, 30px, no-repeat, scroll); - - span { - .at2x('../images/icon_arrow_dn_orange.png', 15px, 7px, center, center, no-repeat, scroll); - } - } - } // end a - } // end nav - - #learn { - - border-top: 6px solid @ob-blue; - - h2 { - .at2x('../images/icon_learn.png', 90px, 102px, center, 30px, no-repeat, scroll); - } - - ul.links a { - .at2x('../images/icon_bullet_blue.png', 25px, 28px, 8px, 7px, no-repeat, scroll); - - span { - .at2x('../images/icon_arrow_right_blue.png', 6px, 12px, 0, 0, no-repeat, scroll); - } - - &:hover { - border: 2px solid @ob-blue; - } - } - - a.top { - .at2x('../images/top_blue.png', 52px, 25px, 0, 0, no-repeat, scroll); - } - } - - #design { - border-top: 6px solid @ob-green; - - h2 { - .at2x('../images/icon_design.png', 90px, 102px, center, 30px, no-repeat, scroll); - } - - ul.links a { - .at2x('../images/icon_bullet_green.png', 25px, 28px, 8px, 7px, no-repeat, scroll); - - span { - .at2x('../images/icon_arrow_right_green.png', 6px, 12px, 0, 0, no-repeat, scroll); - } - - &:hover { - border: 2px solid @ob-green; - } - } - - a.top { - .at2x('../images/top_green.png', 52px, 25px, 0, 0, no-repeat, scroll); - } - } - - #code { - border-top: 6px solid @ob-orange; - - h2 { - .at2x('../images/icon_code.png', 90px, 102px, center, 30px, no-repeat, scroll); - } - - ul.links a { - .at2x('../images/icon_bullet_orange.png', 25px, 28px, 8px, 7px, no-repeat, scroll); - - span { - .at2x('../images/icon_arrow_right_orange.png', 6px, 12px, 0, 0, no-repeat, scroll); - } - - &:hover { - border: 2px solid @ob-orange; - } - } - - a.top { - .at2x('../images/top_orange.png', 52px, 25px, 0, 0, no-repeat, scroll); - } - } - - #news { - - - - &:after{ - clear: left; - } - - border-top: 6px solid @ob-navy; - - a { - color: @ob-navy; - } - - h2 { - padding-top: 0; - } - - h3 { - padding-top: 0; - margin-top: 0; - margin-bottom: 15px; - border-bottom: 1px solid black; - padding-bottom: 15px; - font-size: 1.6em; - } - - a.top { - .at2x('../images/top_navy.png', 52px, 25px, 0, 0, no-repeat, scroll); - } - - .blog { - - -webkit-box-shadow: 3px 5px 15px 5px rgba(0,0, 0, 0.2); - -moz-box-shadow: 3px 5px 15px 5px rgba(0,0, 0, 0.2); - box-shadow: 3px 5px 15px 5px rgba(0, 0, 0, 0.2); - padding: 40px; - width: 500px; - float: left; - margin-right: 30px; - - ul { - margin: 0; - padding: 0; - } - - li { - list-style: none; - border-bottom: 1px solid black; - padding-bottom: 20px; - padding-top: 20px; - padding-left: 150px; - position: relative; - font-size: .9em; - - a { - font-size: 1.1em; - } - - &:first-child { - padding-top: 0; - - small { - top: 0; - } - } - - &:last-child{ - border-bottom: 0; - padding-bottom: 0; - } - - small { - position: absolute; - left: 0; - top: 20px; - font-weight: bold; - font-size: .9em; - width: 100px; - text-transform: uppercase; - padding-right: 20px; - } - } - } - - .tweets { - -webkit-box-shadow: 3px 5px 15px 5px rgba(0,0, 0, 0.2); - -moz-box-shadow: 3px 5px 15px 5px rgba(0,0, 0, 0.2); - box-shadow: 3px 5px 15px 5px rgba(0, 0, 0, 0.2); - padding: 40px; - width: 250px; - float: left; - - ul { - margin: 0; - padding: 0; - } - - li { - list-style: none; - border-bottom: 1px solid black; - padding-bottom: 20px; - padding-top: 20px; - font-size: .9em; - - &:first-child { - padding-top: 0; - - small { - top: 0; - } - } - - &:last-child{ - border-bottom: 0; - padding-bottom: 0; - } - } - - - } - } - - section { - background: #FFFFFF; - padding: 50px 0 70px 0; - position: relative; - - a.top { - position: absolute; - display: block; - width: 104px; - height: 50px; - top: 0; - right: 0; - } - } - - section:nth-child(even) { - background-image: url(../images/fabric_1.png); - .at2x('../images/fabric_1.png', 400px, 400px, top, left, repeat, scroll); - } - - ul.links { - max-width: 650px; - margin: 0 auto; - margin-bottom: 30px; - - li { - list-style: none; - display: inline-block; - margin: 0 4px 15px 3px; - padding: 0; - width: 300px; - font-size: .9em; - - a { - width: 240px; - border: 2px solid rgba(0,0,0,0); - text-align: left; - display: block; - color: @main-text-color; - background: rgba(0,0,0,0.1); - text-decoration: none; - padding: 10px 15px 10px 40px; - position: relative; - -webkit-transition-property: all, - -webkit-transform; - -webkit-transition-duration: 0.2s, 0.2s; - -moz-transition-property: all, -moz-transform; - -moz-transition-duration: 0.2s, 0.2s; - -ms-transition-property: all, -ms-transform; - -ms-transition-duration: 0.2s, 0.2s; - -o-transition-property: all, -o-transform; - -o-transition-duration: 0.2s, 0.2s; - transition-property: all, transform; - transition-duration: 0.2s, 0.2s; - animation-timing-function:ease-out; - -moz-animation-timing-function:ease-out; - -webkit-animation-timing-function:ease-out; - -o-animation-timing-function:ease-out; - .border-radius(5px); - - &:hover{ - -webkit-transform: scale(1.02); - transform: scale(1.02); - -moz-transform: scale(1.02); - } - - - span { - display: block; - width: 6px; - height: 12px; - position: absolute; - right: 10px; - top: 16px; - } - } - } - } - - .video { - margin: 0 auto; - text-align: center; - } - - .column50 { - width: 46%; - display: inline-block; - - &:nth-child(even) { - padding-left: 3%; - } - - &:nth-child(odd) { - padding-right: 3%; - } - } - - -} // end div role main - - - - - -.embellished #content { - background-image: url("../images/content-background.png"); - border-bottom: solid 40px transparent; - padding-bottom: 275px; -} - -.narrow #content .constrained { - max-width: 34em; -} - - -/* ===[ Footer ]======================================================= */ - -#footer { - - background: @footer-background; - color: white; - - .footnote a { - background-position: 0 -80px; - } - - .support { - height: 80px; - line-height: 20px; - padding-top: 0; - - img { - margin-top: -35px; - height: 80px; - vertical-align: middle; - display: inline-block; - margin-left: 1em; - } - } - - section { - background: none; - } -} - -/* ===[ Components ]========================================================= */ - -@import "_components"; diff --git a/quickstart.php b/quickstart.php deleted file mode 100644 index 14ce052..0000000 --- a/quickstart.php +++ /dev/null @@ -1,83 +0,0 @@ - 1 && strpos(@$_SERVER['HTTP_REFERER'], get_permalink()) !== 0) { - // Send people to the start of the quiz, if they weren't refered internally to this page - header('Location: '.$base); - exit(); -} - -function quickstart_dependencies () { - wp_enqueue_style('badges-101'); -} - -add_action('wp_enqueue_scripts', 'quickstart_dependencies'); - -function add_body_classes ($classes) { - $classes[] = 'narrow'; - return $classes; -} - -add_filter('body_class','add_body_classes'); - -global $post, $page; - -function question_formatting ($matches) { - $buttons = array(); - $body = $matches[3]; - preg_match_all('#(<(\w+) [^>]*class="([^"]*)answer([^"]*)"[^>]*>)(.*?)()#', $body, $options, PREG_SET_ORDER); - - foreach ($options as $option) { - $classes = array(preg_replace('#[^\w]#', '_', trim(strToLower($option[5]))), 'button'); - if (strpos($option[3].' '.$option[4], 'correct') > -1) { - $classes[] = 'correct'; - } - $buttons[] = ''.$option[5].''; - } - - return implode('', array( - $matches[1], - $body, - '

    ' . implode(' ', $buttons) . '

    ', - $matches[4] - )); -} - -get_header(); - -if (have_posts()) { - while (have_posts()) { - the_post(); - - if (IS_AJAX) { - echo '
    '; - - $question_search_re = 'class="[^"]*question[^"]*"'; - $question_re = '#(<(\w+) [^>]*'.$question_search_re.'[^>]*>)(.*?)()#s'; - - echo '
    '; - echo '
    '; - $pages = explode('', $post->post_content); - foreach ($pages as $index => $page) { - $classes = array('slide'); - if (preg_match('#'.$question_search_re.'#', $page)) { - $classes[] = 'quiz'; - $page = preg_replace_callback($question_re, 'question_formatting', $page); - } - echo ''; - } - echo '
    '; - echo '
    '; - echo '
    '; - } else { - get_template_part('templates/content', 'quickstart'); - } - } -} - -get_footer(); diff --git a/style.css b/style.css deleted file mode 100644 index 3802cbb..0000000 --- a/style.css +++ /dev/null @@ -1,13 +0,0 @@ -/* -Theme Name: Open Badges Community -Author: Mozilla Foundation & Ocupop -Author URI: http://mozilla.org/foundation -Version: 1.0 -Description: TO DO -License: GNU General Public License v2 or later -License URI: http://www.gnu.org/licenses/gpl-2.0.html -Text Domain: openbadges - -This theme, like WordPress, is licensed under the GPL. -Use it to make something cool, have fun, and share what you've learned with others. -*/ diff --git a/template-splash.php b/template-splash.php deleted file mode 100644 index 0d4f548..0000000 --- a/template-splash.php +++ /dev/null @@ -1,26 +0,0 @@ - - - - diff --git a/templates/content-quickstart.php b/templates/content-quickstart.php deleted file mode 100644 index 60c99a1..0000000 --- a/templates/content-quickstart.php +++ /dev/null @@ -1,3 +0,0 @@ -
    - -
    \ No newline at end of file diff --git a/templates/content.php b/templates/content.php deleted file mode 100644 index 0a807f5..0000000 --- a/templates/content.php +++ /dev/null @@ -1,13 +0,0 @@ -
    - ID, 'title_alignment', true); - if (empty($title_alignment)) { - $title_class = ''; - } else { - $title_class = ' class="text-'.$title_alignment.'"'; - } - echo ''.get_the_title().''; - - the_content(); - ?> -
    \ No newline at end of file diff --git a/media/css/core.css b/wp-content/themes/open_badges_community/media/css/core.css similarity index 97% rename from media/css/core.css rename to wp-content/themes/open_badges_community/media/css/core.css index dfb1cf3..7eaec31 100644 --- a/media/css/core.css +++ b/wp-content/themes/open_badges_community/media/css/core.css @@ -3,19 +3,19 @@ font-family: "Open Sans Light"; font-style: normal; font-weight: normal; - src: url("../fonts/OpenSans-Light-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Light-webfont.woff") format("woff"), url("../fonts/OpenSans-Light-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Light-webfont.svg#OpenSansLight") format("svg"); + src: url("../fonts/OpenSans-Light-webfont.eot?") format("embedded-opentype"), url("../fonts/OpenSans-Light-webfont.woff") format("woff"), url("../fonts/OpenSans-Light-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Light-webfont.svg") format("svg"); } @font-face { font-family: "Open Sans"; font-style: normal; font-weight: normal; - src: url("../fonts/OpenSans-Regular-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Regular-webfont.woff") format("woff"), url("../fonts/OpenSans-Regular-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Regular-webfont.svg#OpenSansRegular") format("svg"); + src: url("../fonts/OpenSans-Regular-webfont.eot?") format("embedded-opentype"), url("../fonts/OpenSans-Regular-webfont.woff") format("woff"), url("../fonts/OpenSans-Regular-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Regular-webfont.svg") format("svg"); } @font-face { font-family: "Open Sans"; font-style: normal; font-weight: bold; - src: url("../fonts/OpenSans-Semibold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/OpenSans-Semibold-webfont.woff") format("woff"), url("../fonts/OpenSans-Semibold-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Semibold-webfont.svg#OpenSansSemibold") format("svg"); + src: url("../fonts/OpenSans-Semibold-webfont.eot?") format("embedded-opentype"), url("../fonts/OpenSans-Semibold-webfont.woff") format("woff"), url("../fonts/OpenSans-Semibold-webfont.ttf") format("truetype"), url("../fonts/OpenSans-Semibold-webfont.svg") format("svg"); } @font-face { font-family: "MetaWebPro-Black"; diff --git a/media/fonts/MetaWebPro-Black.woff b/wp-content/themes/open_badges_community/media/fonts/MetaWebPro-Black.woff similarity index 100% rename from media/fonts/MetaWebPro-Black.woff rename to wp-content/themes/open_badges_community/media/fonts/MetaWebPro-Black.woff diff --git a/media/fonts/OpenSans-Light-webfont.eot b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Light-webfont.eot old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Light-webfont.eot rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Light-webfont.eot diff --git a/media/fonts/OpenSans-Light-webfont.svg b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Light-webfont.svg old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Light-webfont.svg rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Light-webfont.svg diff --git a/media/fonts/OpenSans-Light-webfont.ttf b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Light-webfont.ttf old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Light-webfont.ttf rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Light-webfont.ttf diff --git a/media/fonts/OpenSans-Light-webfont.woff b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Light-webfont.woff old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Light-webfont.woff rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Light-webfont.woff diff --git a/media/fonts/OpenSans-Regular-webfont.eot b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Regular-webfont.eot? old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Regular-webfont.eot rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Regular-webfont.eot? diff --git a/media/fonts/OpenSans-Regular-webfont.svg b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Regular-webfont.svg old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Regular-webfont.svg rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Regular-webfont.svg diff --git a/media/fonts/OpenSans-Regular-webfont.ttf b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Regular-webfont.ttf old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Regular-webfont.ttf rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Regular-webfont.ttf diff --git a/media/fonts/OpenSans-Regular-webfont.woff b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Regular-webfont.woff old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Regular-webfont.woff rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Regular-webfont.woff diff --git a/media/fonts/OpenSans-Semibold-webfont.eot b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Semibold-webfont.eot? old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Semibold-webfont.eot rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Semibold-webfont.eot? diff --git a/media/fonts/OpenSans-Semibold-webfont.svg b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Semibold-webfont.svg old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Semibold-webfont.svg rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Semibold-webfont.svg diff --git a/media/fonts/OpenSans-Semibold-webfont.ttf b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Semibold-webfont.ttf old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Semibold-webfont.ttf rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Semibold-webfont.ttf diff --git a/media/fonts/OpenSans-Semibold-webfont.woff b/wp-content/themes/open_badges_community/media/fonts/OpenSans-Semibold-webfont.woff old mode 100755 new mode 100644 similarity index 100% rename from media/fonts/OpenSans-Semibold-webfont.woff rename to wp-content/themes/open_badges_community/media/fonts/OpenSans-Semibold-webfont.woff diff --git a/media/images/aside-icons.png b/wp-content/themes/open_badges_community/media/images/aside-icons.png similarity index 100% rename from media/images/aside-icons.png rename to wp-content/themes/open_badges_community/media/images/aside-icons.png diff --git a/media/images/badge-bullet.png b/wp-content/themes/open_badges_community/media/images/badge-bullet.png similarity index 100% rename from media/images/badge-bullet.png rename to wp-content/themes/open_badges_community/media/images/badge-bullet.png diff --git a/media/images/content-background.png b/wp-content/themes/open_badges_community/media/images/content-background.png similarity index 100% rename from media/images/content-background.png rename to wp-content/themes/open_badges_community/media/images/content-background.png diff --git a/media/images/fabric_1.png b/wp-content/themes/open_badges_community/media/images/fabric_1.png similarity index 100% rename from media/images/fabric_1.png rename to wp-content/themes/open_badges_community/media/images/fabric_1.png diff --git a/wp-content/themes/open_badges_community/media/images/fabric_1@2x.png b/wp-content/themes/open_badges_community/media/images/fabric_1@2x.png new file mode 100644 index 0000000..4ac3d1f --- /dev/null +++ b/wp-content/themes/open_badges_community/media/images/fabric_1@2x.png @@ -0,0 +1,216 @@ + + + + + + + + Open Badges Community + + + + + + + + + + +
    + + +
    +
    +

    Recognize & be recognized.

    +

    Help shape the future of Open Badges.

    + +
    + + +
    + +
    +
    +

    Learn

    +

    Curious about recognition of skills & interests? +You’re in the right place. Welcome.

    + + +
    +
    At Mozilla, we believe that learning happens over the course of a lifetime and frequently beyond the classroom. With the support of the MacArthur Foundation, we’ve built the Open Badges Infrastructure, which makes it possible for badges issued by different companies and communities to be interoperable and shareable across the web.
    +
    People and organizations with content to share align their badges with the open standard, which makes it possible for someone who sees Open Badges to discover the criteria and evidence behind them. Learners around the world are using these portable badges to realize increased learning and professional opportunities.
    +
    +
    + + + + + + +
    + + +
    + +
    +
    +

    Design

    +

    Discover & share information about +badge system creation.

    + + +
    Hundreds of organizations and individuals have designed and issued Open Badges. They include educators, multinational companies, non-profits, industry alliances, and people interested in professional development.
    +
    The curriculum that their badges represent include a huge variety of skills, competencies, and interests. You too can create badges for your community members and try the visual design exercises in this video. And stay tuned for a design toolkit launching soon!
    +
    +
    + + +
    + + +
    + +
    +
    +

    Code

    +

    Access development documentation +& contribute to Open Badges.

    + + + + + + + +
    + + +
    + +
    +
    +

    News

    +

    Get up to speed on the latest in the world of alternative accreditation.

    + +
    +
    +

    Blog

    +
    • Badge Alliance February 1, 2016
      Badge Alliance: The official publications of the Badge Alliance are switching platforms, over to this collection on Medium. The Tumblr you are reading will remain up for archival purposes. Thanks for …
    • Now the quick badger jumps over the lazy fox August 4, 2015
      An issuer organization decides to start a badge program, so its staff members design a badge system to go with the program’s content delivery and assessment practices. Then they run badge softwa …
    • Badge Alliance FAQ – July 2015 July 15, 2015
      There’s so much we want to say – we can’t put it all into an over-long announcement. Here is a growing list of some of the top questions:What’s happening to the Badge Alliance?The Badge Alliance …
    • The Badge Alliance in 2015 July 8, 2015
      2014 was a great building year for the badges ecosystem and the Badge Alliance (BA) network, and 2015 has been an exciting year so far. Rooms are overflowing for badging-related presentations at confe …
    • Open Badges spec v1.1 Release May 1, 2015
      Open Badges spec v1.1 Release: bananigans: I’m excited to share with you all the work we’ve been devoting ourselves to in the Badge Alliance Standard Working Group over the past several months. We are …
    • New IMS Digital Credentialing Initiative April 21, 2015
      Today is an exciting day for the open badges community! IMS Global, the leading education technology standards body, announced that they are kicking off a new IMS Digital Credentialing initiative.In c …
    • Open Badges Community Call, April 8, 2015 April 14, 2015
      Agenda: http://bit.ly/CC15_April8Audio: http://bit.ly/CC15_April8audioThis week we dived into a discussion on soft skills and workforce development, led by those who kickstarted a conversation last we …
    • An Open Can of Tin Badges – Tin Can API March 31, 2015
      An Open Can of Tin Badges – Tin Can API: People have been talking about a crossover between Open Badges and Tin Can (xAPI) since 2012. Blogs have been written, ideas shared and there’s even a Twitter …
    + +
    + +
    +

    Tweets

    + + + +
    + + +
    +
    + + +
    + +
    + + + + + + + + + + \ No newline at end of file diff --git a/media/images/icon_arrow_dn_blue.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_dn_blue.png similarity index 100% rename from media/images/icon_arrow_dn_blue.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_dn_blue.png diff --git a/media/images/icon_arrow_dn_blue@2x.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_dn_blue@2x.png similarity index 100% rename from media/images/icon_arrow_dn_blue@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_dn_blue@2x.png diff --git a/media/images/icon_arrow_dn_green.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_dn_green.png similarity index 100% rename from media/images/icon_arrow_dn_green.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_dn_green.png diff --git a/media/images/icon_arrow_dn_green@2x.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_dn_green@2x.png similarity index 100% rename from media/images/icon_arrow_dn_green@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_dn_green@2x.png diff --git a/media/images/icon_arrow_dn_orange.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_dn_orange.png similarity index 100% rename from media/images/icon_arrow_dn_orange.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_dn_orange.png diff --git a/media/images/icon_arrow_dn_orange@2x.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_dn_orange@2x.png similarity index 100% rename from media/images/icon_arrow_dn_orange@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_dn_orange@2x.png diff --git a/media/images/icon_arrow_right_blue.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_right_blue.png similarity index 100% rename from media/images/icon_arrow_right_blue.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_right_blue.png diff --git a/media/images/icon_arrow_right_blue@2x.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_right_blue@2x.png similarity index 100% rename from media/images/icon_arrow_right_blue@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_right_blue@2x.png diff --git a/media/images/icon_arrow_right_green.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_right_green.png similarity index 100% rename from media/images/icon_arrow_right_green.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_right_green.png diff --git a/media/images/icon_arrow_right_green@2x.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_right_green@2x.png similarity index 100% rename from media/images/icon_arrow_right_green@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_right_green@2x.png diff --git a/media/images/icon_arrow_right_orange.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_right_orange.png similarity index 100% rename from media/images/icon_arrow_right_orange.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_right_orange.png diff --git a/media/images/icon_arrow_right_orange@2x.png b/wp-content/themes/open_badges_community/media/images/icon_arrow_right_orange@2x.png similarity index 100% rename from media/images/icon_arrow_right_orange@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_arrow_right_orange@2x.png diff --git a/media/images/icon_bullet_blue.png b/wp-content/themes/open_badges_community/media/images/icon_bullet_blue.png similarity index 100% rename from media/images/icon_bullet_blue.png rename to wp-content/themes/open_badges_community/media/images/icon_bullet_blue.png diff --git a/media/images/icon_bullet_blue@2x.png b/wp-content/themes/open_badges_community/media/images/icon_bullet_blue@2x.png similarity index 100% rename from media/images/icon_bullet_blue@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_bullet_blue@2x.png diff --git a/media/images/icon_bullet_green.png b/wp-content/themes/open_badges_community/media/images/icon_bullet_green.png similarity index 100% rename from media/images/icon_bullet_green.png rename to wp-content/themes/open_badges_community/media/images/icon_bullet_green.png diff --git a/media/images/icon_bullet_green@2x.png b/wp-content/themes/open_badges_community/media/images/icon_bullet_green@2x.png similarity index 100% rename from media/images/icon_bullet_green@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_bullet_green@2x.png diff --git a/media/images/icon_bullet_orange.png b/wp-content/themes/open_badges_community/media/images/icon_bullet_orange.png similarity index 100% rename from media/images/icon_bullet_orange.png rename to wp-content/themes/open_badges_community/media/images/icon_bullet_orange.png diff --git a/media/images/icon_bullet_orange@2x.png b/wp-content/themes/open_badges_community/media/images/icon_bullet_orange@2x.png similarity index 100% rename from media/images/icon_bullet_orange@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_bullet_orange@2x.png diff --git a/media/images/icon_code.png b/wp-content/themes/open_badges_community/media/images/icon_code.png similarity index 100% rename from media/images/icon_code.png rename to wp-content/themes/open_badges_community/media/images/icon_code.png diff --git a/media/images/icon_code@2x.png b/wp-content/themes/open_badges_community/media/images/icon_code@2x.png similarity index 100% rename from media/images/icon_code@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_code@2x.png diff --git a/media/images/icon_design.png b/wp-content/themes/open_badges_community/media/images/icon_design.png similarity index 100% rename from media/images/icon_design.png rename to wp-content/themes/open_badges_community/media/images/icon_design.png diff --git a/media/images/icon_design@2x.png b/wp-content/themes/open_badges_community/media/images/icon_design@2x.png similarity index 100% rename from media/images/icon_design@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_design@2x.png diff --git a/media/images/icon_learn.png b/wp-content/themes/open_badges_community/media/images/icon_learn.png similarity index 100% rename from media/images/icon_learn.png rename to wp-content/themes/open_badges_community/media/images/icon_learn.png diff --git a/media/images/icon_learn@2x.png b/wp-content/themes/open_badges_community/media/images/icon_learn@2x.png similarity index 100% rename from media/images/icon_learn@2x.png rename to wp-content/themes/open_badges_community/media/images/icon_learn@2x.png diff --git a/media/images/logo.png b/wp-content/themes/open_badges_community/media/images/logo.png similarity index 100% rename from media/images/logo.png rename to wp-content/themes/open_badges_community/media/images/logo.png diff --git a/media/images/partners/MacArthur_logo.png b/wp-content/themes/open_badges_community/media/images/partners/MacArthur_logo.png similarity index 100% rename from media/images/partners/MacArthur_logo.png rename to wp-content/themes/open_badges_community/media/images/partners/MacArthur_logo.png diff --git a/media/images/top_blue.png b/wp-content/themes/open_badges_community/media/images/top_blue.png similarity index 100% rename from media/images/top_blue.png rename to wp-content/themes/open_badges_community/media/images/top_blue.png diff --git a/media/images/top_blue@2x.png b/wp-content/themes/open_badges_community/media/images/top_blue@2x.png similarity index 100% rename from media/images/top_blue@2x.png rename to wp-content/themes/open_badges_community/media/images/top_blue@2x.png diff --git a/media/images/top_green.png b/wp-content/themes/open_badges_community/media/images/top_green.png similarity index 100% rename from media/images/top_green.png rename to wp-content/themes/open_badges_community/media/images/top_green.png diff --git a/media/images/top_green@2x.png b/wp-content/themes/open_badges_community/media/images/top_green@2x.png similarity index 100% rename from media/images/top_green@2x.png rename to wp-content/themes/open_badges_community/media/images/top_green@2x.png diff --git a/media/images/top_navy.png b/wp-content/themes/open_badges_community/media/images/top_navy.png similarity index 100% rename from media/images/top_navy.png rename to wp-content/themes/open_badges_community/media/images/top_navy.png diff --git a/media/images/top_navy@2x.png b/wp-content/themes/open_badges_community/media/images/top_navy@2x.png similarity index 100% rename from media/images/top_navy@2x.png rename to wp-content/themes/open_badges_community/media/images/top_navy@2x.png diff --git a/media/images/top_orange.png b/wp-content/themes/open_badges_community/media/images/top_orange.png similarity index 100% rename from media/images/top_orange.png rename to wp-content/themes/open_badges_community/media/images/top_orange.png diff --git a/media/images/top_orange@2x.png b/wp-content/themes/open_badges_community/media/images/top_orange@2x.png similarity index 100% rename from media/images/top_orange@2x.png rename to wp-content/themes/open_badges_community/media/images/top_orange@2x.png diff --git a/media/js/global.js b/wp-content/themes/open_badges_community/media/js/global.js similarity index 100% rename from media/js/global.js rename to wp-content/themes/open_badges_community/media/js/global.js