diff --git a/LICENSE.md b/LICENSE.md
new file mode 100644
index 0000000..86214e2
--- /dev/null
+++ b/LICENSE.md
@@ -0,0 +1,21 @@
+# The MIT License (MIT)
+
+Copyright (C) Tito D. Kesumo Siregar
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the “Software”), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
\ No newline at end of file
diff --git a/assets/css/screen.css b/assets/css/screen.css
deleted file mode 100644
index 1d8fdf3..0000000
--- a/assets/css/screen.css
+++ /dev/null
@@ -1,861 +0,0 @@
-@import url(http://fonts.googleapis.com/css?family=Open+Sans);
-@import url(http://fonts.googleapis.com/css?family=Questrial);
-
-/* Reset & Basics (Inspired by E. Meyers)
-================================================== */
-html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, address, cite, code, em, img, small, strong, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, embed, figure, figcaption, footer, header, hgroup, menu, nav, section, summary, time, audio, video {
- margin: 0;
- padding: 0;
- border: 0;
- font-size: 100%;
- font: inherit;
- vertical-align: baseline; }
-article, aside, details, figcaption, figure, footer, header, hgroup, menu, time, nav, section {
- display: block; }
-html, body, .wrapper {
- min-height: 100%;
-}
-
-
-/* Body
-================================================== */
-html, body {
- height: 100%;
-}
-.wrapper {
- min-height: 100%;
-}
-body {
- overflow-x: hidden;
- font: 17px/28px ff-meta-serif-web-pro, "Georgia", serif;
- color: #333;
- background: #fff;
-}
-
-
-/* Typography
-================================================== */
-h1, h2, h3, h4, h5, h6 {
- font-family: "proxima-nova", "helvetica neue", "helvetica", sans-serif;
- font-weight: normal;
- text-transform: uppercase;
- font-weight: 700;
- color: #000;
- text-rendering: optimizeLegibility;
-}
-
-h1 {
- font-size: 50px;
- padding-bottom: 30px;
-}
-
-h2 {
- font-size: 45px;
- padding-bottom: 25px;
-}
-
-h3 {
- font-size: 40px;
- padding-bottom: 20px;
-}
-
-h4 {
- font-size: 35px;
- padding-bottom: 15px;
-}
-
-h5 {
- font-size: 30px;
- padding-bottom: 10px;
-}
-
-p {
- margin: 0 0 28px 0;
-}
-
-strong {
- font-weight: bold;
-}
-em {
- font-style: italic;
-}
-sup {
- line-height: 0;
-}
-
-small {
- font-size: 70%;
-}
-
-cite {
- font-size: 80%;
- font-style: italic;
- }
-
-/* Teaser
-================================================== */
-
-header#teaser h1 {
- text-transform: none !important;
- color: #333;
- font-size: 28px !important;
- font-weight: 300 !important;
-}
-
-
-/* Links
-================================================== */
-a {
- color: #F40034;
- text-decoration: none;
- -webkit-transition: color .2s ease-in-out;
- -moz-transition: color .2s ease-in-out;
- transition: color .2s ease-in-out;
-}
-a:hover {
- color: #F40034;
-}
-
-/* Layout
-================================================== */
-/* White container that is the "page" */
-.wrapper {
- max-width: 1500px;
- margin: 0 auto;
- background: #fff;
-}
-
-/* Containers to keep content to a set width */
-.nav,
-.art-header-inner,
-.footer,
-.art-list,
-.abt,
-.fourohfour {
- width: 980px;
-}
-.nav,
-.art-body-inner,
-.footer,
-.art-list,
-.abt,
-.fourohfour {
- position: relative;
- margin: 0 auto;
-}
-
-/* Nav
-================================================== */
-.nav {
- position: absolute;
- top: 0;
- left: 50%;
- height: 70px;
- padding-top: 40px;
- margin-left: -490px; /* Half width of nav */
- border-bottom: 1px solid #333;
- z-index: 2;
-}
-.nav.fixed {
- position: fixed;
-}
-#logo {
- float: left;
-}
-.nav-primary {
- float: right;
-}
-.nav-primary li {
- display: inline-block;
- margin-left: 10px;
- font-weight: 500;
-}
-#logo h1,
-.nav-primary li,
-.nav-primary li a {
- font-family: "proxima-nova", "helvetica neue", "helvetica", sans-serif;
- font-weight: 700;
- font-size: 13px;
- line-height: 30px;
- color: #000;
- text-transform: uppercase;
-}
-
-#logo h1 {
- height: 30px;
- margin-left: 0px;
- letter-spacing: 1px;
- font-family: 'Questrial', sans-serif;
- font-size: 30px;
-}
-
-#logo h1 span{
- color: #F40034 !important;
-}
-
-.nav li:first-child {
- margin-left: 0; /* Remove left margin from the first nav li */
-}
-
-/* Home Page
-================================================== */
-
-div#home {}
-
-#home > div.cover {
- max-width: 980px;
- margin: 0px auto;
- /*padding-top: 110px;*/
-}
-
-div.cover {
-
-}
-
-div.cover > img {
- width: 100%;
- height: 100%;
-}
-
-
-/* Article
-================================================== */
-.art {
- margin-top: -131px;
-}
-/* Header */
-.art-header {
- height: 900px;
- /* Background image is defined in the post */
- background-position: top center;
- background-attachment: fixed;
- overflow: hidden;
-}
-/* Contains the time, title and subtitle for an article */
-.art-header-inner {
- position: fixed;
- top: 300px;
- left: 50%;
- margin-left: -490px;
-}
-.art-time,
-.art-title,
-.art-subtitle {
- text-align: center;
- text-transform: uppercase;
-}
-.art-time {
- font-size: 14px;
- line-height: 1.8;
- letter-spacing: 4px;
-}
-.art-title {
- font-size: 100px;
- line-height: .9;
- letter-spacing: -2px;
- width: 100%;
-}
-.art-subtitle {
- margin-top: 4px;
- font-size: 14px;
- line-height: 1.3;
- letter-spacing: 4px;
-}
-
-/* If small header, make few adjustments */
-.small .art-title {
- font-size: 70px;
- line-height: 65px;
-}
-.small.art-header-inner {
- top: 320px;
-}
-
-/* Body */
-.art-body {
- position: relative;
- width: 100%;
- background: #fff;
- z-index: 100;
- -webkit-box-shadow: 0 -3px 3px rgba(0,0,0,.2);
- -moz-box-shadow: 0 -3px 3px rgba(0,0,0,.2);
- box-shadow: 0 -3px 3px rgba(0,0,0,.2);
-}
-.art-body-inner {
- font-family: Georgia,Cambria,"Times New Roman",Times,serif;
- max-width: 640px;
- padding: 80px 0 50px;
- letter-spacing: 0.01rem;
- font-weight: 400;
- font-style: normal;
- font-size: 21px;
- line-height: 1.5;
-}
-.art-body-inner a:hover {
- border-bottom: 1px solid #F40034;
- padding-bottom:2px;
-}
-.art-body-inner ul,
-.art-body-inner ol { /* For lists in the article body */
- margin-bottom: 26px;
-}
-.art-body-inner ul li {
- list-style: disc;
-}
-
-.art-body-inner mark {
- background-color: #fdffb6;
- padding: 2px;
- -webkit-box-shadow: #fdffb6 0 0 5px;
- -moz-box-shadow: #fdffb6 0 0 5px;
- box-shadow: #fdffb6 0 0 5px;
-}
-
-.art-body-inner blockquote {
- font-size: 16px;
- background: #f9f9f9;
- border-left: 10px solid #ccc;
- margin: 1.5em 10px;
- padding: 0.5em 10px;
- quotes: "\201C""\201D""\2018""\2019";
-}
-
-.art-body-inner blockquote p:first-child:before {
- color: #ccc;
- content: "“";
- font-size: 4em;
- line-height: 0.1em;
- margin-right: 0.25em;
- vertical-align: -0.4em;
-}
-
-.art-body-inner blockquote p {
- margin-bottom: 1.5em;
-}
-
-.art-body-inner blockquote p:last-child {
- margin-bottom: 0;
-}
-
-
-.dropcap { /* First character on articles */
- float: left;
- margin: 47px 10px 20px 0;
- font-size: 100px;
- line-height: 0;
-}
-.art-subhead { /* Subheads are used to break up sections of an article */
- margin: 60px 0 15px;
- font-size: 20px;
- line-height: 28px;
- letter-spacing: 3px;
-}
-.callout { /* Callouts are like large pullquotes */
- font-weight: bold;
-}
-.art-body-inner img {
- max-width: 100%;
- max-height: 600px;
- margin-bottom: 26px;
-}
-.art-body-inner img.center {
- display: block;
- margin-left: auto;
- margin-right: auto;
-}
-.art-body-inner .art-reference {
- font-size: 80%;
- color: #999;
- margin-top: 50px;
-}
-
-/* For simple, white background posts */
-.simple .art-body {
- background: none;
- -webkit-box-shadow: none;
- -moz-box-shadow: none;
- box-shadow: none;
-}
-
-
-/* List of Articles
-================================================== */
-.art-list {
- padding: 120px 0 0;
-}
-.art-list-body {
- position: relative;
- overflow: hidden;
-}
-.art-list-item {
- padding: 40px 0;
- list-style: none;
- overflow: hidden;
- border-bottom: 1px solid #ccc;
-}
-.art-list-item:last-child {
- border-bottom: none;
-}
-.art-list-title {
- font-size: 26px;
- line-height: 26px;
- font-weight: 700;
-}
-.art-list-item-title-and-time {
- float: left;
- width: 30%;
- margin-bottom: 10px;
-}
-.art-list-time {
- font-size: 12px;
- line-height: 20px;
- letter-spacing: 2px;
- text-transform: uppercase;
- color: #999;
-}
-.art-list-title a {
- color: #000;
-}
-.art-list-title a:hover {
- color: #F40034;
-}
-.art-list-item p {
- width: 65%;
- float: left;
- margin-left: 5%;
- margin-bottom: 0;
- font-size: 16px;
- line-height: 24px;
-}
-
-
-/* Footer
-================================================== */
-.footer {
- padding: 30px 0 40px;
- overflow: hidden;
- border-top: 1px solid #ccc;
-}
-.footer,
-.footer a {
- font-family: "proxima-nova", "helvetica neue", "helvetica", sans-serif;
- font-size: 13px;
- text-transform: uppercase;
- color: #777;
-}
-.footer a:hover {
- color: #000;
-}
-.back-to-top,
-.footer-nav,
-.offsite-links {
- width: 45%;
- float: left;
-}
-.psi {
- width:10%;
- float:left;
- text-align: center;
-}
-.footer-nav {
- text-align: center;
-}
-.offsite-links {
- text-align: right;
-}
-.footer .twitter-link:hover {
- color: #0084B4;
-}
-.footer .instagram-link:hover {
- color: #3F729B;
-}
-.footer .github-link:hover {
- color: #c5376d;
-}
-.footer .caffein8-link:hover{
- color: black;
-}
-.footer .rss-link:hover {
- color: #e85d24;
-}
-/* Remove prev & next links on loop */
-.art-list + .footer .footer-nav,
-.abt + .footer .footer-nav {
- text-indent: -9999px;
- text-align: left;
-}
-
-
-/* White Reverse Theme
-================================================== */
-/* Nav */
-.nav.white {
- border-bottom-color: #fff;
- border-bottom-color: rgba(255,255,255,.3);
-}
-.nav.white li a,
-.nav.white li,
-.nav.white #logo h1 {
- color: #fff;
- text-shadow: 0 0 8px rgba(0,0,0,.5);
-}
-.nav.white #logo h1 {
- background-position: top center;
-}
-
-nav.pagination{
- text-align: right;
- padding-bottom: 25px;
-}
-/* Art header */
-.art-header.white {
- background-color: #111;
-}
-.art-header.white .art-time,
-.art-header.white .art-title,
-.art-header.white .art-subtitle {
- color: #fff;
- text-shadow: 0 0 8px rgba(0,0,0,.5);
-}
-
-
-/* About page
-================================================== */
-.abt {
- padding: 200px 0 100px;
- list-style: none;
-}
-.abt .abt-header {
- font-size: 140px;
- line-height: 1;
- text-transform: none;
-}
-.abt .abt-subheader {
- font-size: 24px;
- font-style: italic;
- text-transform: none;
- color: #777;
-}
-.abt-body {
- -moz-column-count: 2;
- -moz-column-gap: 20px;
- -webkit-column-count: 2;
- -webkit-column-gap: 20px;
- margin-bottom: 28px;
-}
-.abt-signoff {
- line-height: 1.3;
- font-style: italic;
- color: #777;
-}
-
-/* 404 page
-================================================== */
-.fourohfour {
- padding: 240px 0 100px;
- text-align: center;
-}
-
-/* Code
-================================================== */
-
-code, tt {
-background: #ededee;
-color: #3C4043;
-font-size: 90%;
-padding: 1px 3px;
-}
-
-pre {
- width: 92%;
- overflow: auto;
- margin: 2rem 0;
- padding: 1rem 0.8rem 1rem 1.2rem;
- color: #3f3b36;
- border: 1px solid #ccc;
- border-left: 1rem solid #ccc;
- font: lighter 1.2rem/2rem monospace;
- background: url(/assets/img/pre.png) repeat 0 -0.9rem;
- background-size: 1px 4rem;
-}
-
-pre code, tt {
-font-size: inherit;
-white-space: -moz-pre-wrap;
-white-space: pre-wrap;
-background: transparent;
-border: none;
-padding: 0;
-}
-
-
-.gist {
- font-size: 14px;
-}
-
-
-/* Responsive
-================================================== */
-@media only screen and (max-width: 1080px) {
- /* Set all of the 980 containers to flexible width */
- .nav,
- .art-body-inner,
- .art-header-inner,
- .footer,
- .art-list,
- .abt,
- .fourohfour {
- width: 90%;
- }
- .nav,
- .art-header-inner {
- margin-left: -45%;
- }
-}
-
-@media only screen and (max-width: 1024px) {
- /* Everything becomes scrolling and non-fading */
- .nav,
- .nav.fixed {
- position: relative;
- opacity: 1 !important; /* Important to override JS values */
- display: inline-block;
- }
- .art-header-inner {
- position: relative;
- top: 0 !important; /* Important to override JS values */
- margin-top: 240px !important; /* Important to override JS values */
- opacity: 1 !important; /* Important to override JS values */
- }
- /* Articles no longer have fixed heights */
- .art-header {
- height: auto;
- padding-bottom: 100px;
- background-size: cover !important;
- background-attachment: scroll;
- }
- /* Remove bottom space out if articles doesn't have a background */
- .simple .art-header {
- padding-bottom: 0;
- }
- .art-list {
- padding-top: 0;
- }
- .abt {
- padding: 40px 0;
- }
- .fourohfour {
- padding: 80px 0 60px;
- }
-}
-
-@media only screen and (max-width: 780px) {
- .art-body-inner ul,
- .art-body-inner ol {
- margin-left: 20px;
- }
- .art-title {
- letter-spacing: 0;
- }
- .art-subtitle,
- .art-time {
- font-size: 12px;
- }
- .nav {
- padding-top: 25px;
- height: 55px;
- }
- .art-list-item-title-and-time,
- .art-list-item p {
- float: none;
- width: auto;
- margin-left: 0;
- }
- .abt-body {
- -moz-column-count: 1;
- -webkit-column-count: 1;
- }
-}
-
-@media only screen and (max-width: 500px) {
- .nav-primary li {
- margin-left: 10px;
- }
- .nav #logo h1 {
- font-size: 16px;
- letter-spacing: -1px;
- }
- .nav li a {
- font-size: 12px;
- }
- .art-header {
- padding-bottom: 50px;
- }
- .art-header-inner {
- margin-top: 190px !important;
- }
- .art-body-inner {
- padding-top: 30px;
- }
- body {
- font-size: 15px;
- line-height: 24px;
- }
- p {
- margin-bottom: 24px;
- }
- .footer {
- padding: 10px 0 20px;
- }
- .back-to-top,
- .footer-nav {
- width: 50%;
- }
- .back-to-top {
- text-align: left;
- }
- .footer-nav {
- text-align: right;
- }
- .offsite-links {
- float: left;
- width: 100%;
- text-align: left;
- }
- .offsite-links a {
- font-size: 12px;
- }
- .art-list + .footer .footer-nav {
- display: none;
- }
- .abt .abt-header {
- font-size: 80px;
- }
- .abt .abt-subheader {
- font-size: 18px;
- }
-}
-
-
-/* Misc
-================================================== */
-::selection {
- background: #000;
- color: #fff;
-}
-::-moz-selection {
- background: #000;
- color: #fff;
-}
-img.left {
- float: left;
- margin-right: 20px;
-}
-img.right {
- float: right;
- margin-left: 20px;
-}
-/* Clearfixing pile */
-.nav:before,
-.art-body-inner:before,
-.footer:before,
-.art-list:before {
- content:"";
- display:table;
-}
-.nav:after,
-.art-body-inner:after,
-.footer:after,
-.art-list:after {
- clear:both;
-}
-.nav,
-.art-body-inner,
-.footer,
-.art-list {
- zoom:1; /* For IE 6/7 (trigger hasLayout) */
-}
-
-
-@-webkit-keyframes le-fade {
- 0% {
- opacity: 0;
- }
- 100% {
- opacity: 1;
- }
-}
-@-moz-keyframes le-fade {
- 0% {
- opacity: 0;
- }
- 100% {
- opacity: 1;
- }
-}
-
-.art-header-inner {
- -webkit-animation: le-fade .5s 0 1 ease-out;
- -moz-animation: le-fade .5s 0 1 ease-out;
-}
-
-.art-list,
-.nav,
-.abt,
-.art-body {
- -webkit-animation: le-fade .5s 0s 1 ease-out;
- -moz-animation: le-fade .5s 0s 1 ease-out;
-}
-
-hr.featured-article {
- padding: 0;
- border: none;
- border-top: medium double #bbb;
- color: #bbb;
- text-align: center;
-}
-hr.featured-article:after {
- content: "✭ Featured Article ✭";
- display: inline-block;
- position: relative;
- top: -0.8em;
- font-size: 1.2em;
- padding: 0 0.6em;
- background: white;
-}
-
-/* FORM */
-
-#contact-area {
- width: 600px;
- margin-top: 25px;
-}
-
-#contact-area input, #contact-area textarea {
- padding: 5px;
- width: 471px;
- font-family: Helvetica, sans-serif;
- margin: 0px 0px 10px 0px;
- border: 2px solid #ccc;
-}
-
-#contact-area textarea {
- height: 90px;
-}
-
-#contact-area textarea:focus, #contact-area input:focus {
- border: 2px solid #900;
-}
-
-#contact-area input.submit-button {
- width: 100px;
-
-}
-
-label {
- float: left;
- text-align: right;
- margin-right: 15px;
- width: 100px;
- padding-top: 5px;
-}
\ No newline at end of file
diff --git a/assets/img/favicon.ico b/assets/img/favicon.ico
deleted file mode 100644
index 40b40ed..0000000
Binary files a/assets/img/favicon.ico and /dev/null differ
diff --git a/assets/img/pre.png b/assets/img/pre.png
deleted file mode 100644
index 7f48517..0000000
Binary files a/assets/img/pre.png and /dev/null differ
diff --git a/assets/js/app.js b/assets/js/app.js
deleted file mode 100644
index 66276cd..0000000
--- a/assets/js/app.js
+++ /dev/null
@@ -1,144 +0,0 @@
-var isMobile;
-
-// Identify if visitor on mobile with lame sniffing to remove parallaxing title
-if( navigator.userAgent.match(/Android/i) ||
- navigator.userAgent.match(/webOS/i) ||
- navigator.userAgent.match(/iPhone/i) ||
- navigator.userAgent.match(/iPod/i) ||
- navigator.userAgent.match(/iPad/i) ||
- navigator.userAgent.match(/BlackBerry/)
-){
- isMobile = true;
-}
-
-$(document).ready(function() {
-
- // Global vars
- var $artHeaderInner = $('.art-header-inner');
- var $artHeader = $('.art-header');
- var $artTitle = $('.art-title');
- var $artSubtitle = $('.art-subtitle');
- var $artTime = $('.art-time');
- var artTitleFontSize = parseInt($artTitle.css('font-size'));
- var $nav = $('.nav');
- var windowScroll;
-
- // Apply Fittext to article titles to make it scale responsively in a smooth fashion
- $artTitle.fitText(1, { minFontSize: '34px' });
-
- // Identify if visitor has a large enough viewport for parallaxing title
- function isLargeViewport() {
- if($nav.css('position') == "relative") {
- return false;
- } else {
- return true;
- }
- }
-
- // If large viewport and not mobile, parallax the title
- if(!isMobile) {
- $(window).scroll(function() {
- if(isLargeViewport()) {
- slidingTitle();
- }
- });
- }
-
- // Window gets large enough, need to recalc all parallaxing title values
- $(window).resize(function() {
- if(isLargeViewport()) {
- slidingTitle();
- }
- });
-
- // Functional parallaxing calculations
- function slidingTitle() {
- //Get scroll position of window
- windowScroll = $(this).scrollTop();
-
- //Slow scroll of .art-header-inner scroll and fade it out
- $artHeaderInner.css({
- 'margin-top' : -(windowScroll/3)+"px",
- 'opacity' : 1-(windowScroll/550)
- });
-
- //Slowly parallax the background of .art-header
- $artHeader.css({
- 'background-position' : 'center ' + (-windowScroll/8)+"px"
- });
-
- //Fade the .nav out
- $nav.css({
- 'opacity' : 1-(windowScroll/400)
- });
- }
-
- // Link to top of page without changing URL
- $('.back-to-top a').click(function(e) {
- e.preventDefault();
- $(window).scrollTop(0);
- })
-
- // Cover image of the header
- var $postImage = $('img[alt="cover"]');
- if ( $postImage.length ) {
- var postImageURL = $postImage.attr('src');
- $('.art-header').css('background-image','url(' + postImageURL + ')');
- $('.art-header').css('background-size','100%');
-
- // Change color scheme to white
- $('#logo h1').css('color','white');
- $('.art-title').css('color','white');
- $('.art-subtitle').css('color','white');
- $('.art-time').css('color','white');
- $('.nav-primary li a').css('color','white');
-
- // Add Text Shadows
- $('.art-title').css('text-shadow','3px 3px 0 rgba(0,0,0,0.1), -1px -1px 0 rgba(0,0,0,0.1), 1px -1px 0 rgba(0,0,0,0.1), -1px 1px 0 rgba(0,0,0,0.1), 1px 1px 0 rgba(0,0,0,0.1)');
- $('.art-subtitle').css('text-shadow','3px 3px 0 rgba(0,0,0,0.1), -1px -1px 0 rgba(0,0,0,0.1), 1px -1px 0 rgba(0,0,0,0.1), -1px 1px 0 rgba(0,0,0,0.1), 1px 1px 0 rgba(0,0,0,0.1)');
- $('.art-time').css('text-shadow','3px 3px 0 rgba(0,0,0,0.1), -1px -1px 0 rgba(0,0,0,0.1), 1px -1px 0 rgba(0,0,0,0.1), -1px 1px 0 rgba(0,0,0,0.1), 1px 1px 0 rgba(0,0,0,0.1)');
-
- }
- $postImage.remove();
-
- // Subtitles
- var $subtitle = $('span[id="subtitle"]');
- if ( $subtitle.length ) {
- var subtitleText = $('#subtitle').text();
- $('.art-subtitle').html(subtitleText);
-
- }
- $subtitle.remove();
-
- // Make punctuation smarter
- jQuery.fn.smarten = (function() {
-
- function smartenNode(node) {
- if (node.nodeType === 3) {
- node.data = node.data
- .replace(/(^|[-\u2014/(\[{"\s])'/g, "$1\u2018") // Opening singles
- .replace(/'/g, "\u2019") // Closing singles & apostrophes
- .replace(/(^|[-\u2014/(\[{\u2018\s])"/g, "$1\u201c") // Opening doubles
- .replace(/"/g, "\u201d") // Closing doubles
- .replace(/--/g, "\u2013") // En dashes
- .replace(/---/g, "\u2014") // Em dashes
- .replace(/\.{3}/g, "\u2026"); // Ellipsis
- } else if (node.nodeType === 1) {
- if (node = node.firstChild) do {
- smartenNode(node);
- } while (node = node.nextSibling);
- }
- }
-
- return function() {
- return this.each(function(){
- smartenNode(this);
- });
- };
-
- }());
-
- // Instantiation
- $('article').smarten();
-
-});
\ No newline at end of file
diff --git a/assets/js/fittext.js b/assets/js/fittext.js
deleted file mode 100644
index 035baa3..0000000
--- a/assets/js/fittext.js
+++ /dev/null
@@ -1,46 +0,0 @@
-/*global jQuery */
-/*!
-* FitText.js 1.0
-*
-* Copyright 2011, Dave Rupert http://daverupert.com
-* Released under the WTFPL license
-* http://sam.zoy.org/wtfpl/
-*
-* Date: Thu May 05 14:23:00 2011 -0600
-*/
-$(document).ready(function() {
-
-(function( $ ){
-
- $.fn.fitText = function( kompressor, options ) {
-
- // Setup options
- var compressor = kompressor || 1,
- settings = $.extend({
- 'minFontSize' : Number.NEGATIVE_INFINITY,
- 'maxFontSize' : Number.POSITIVE_INFINITY
- }, options);
-
- return this.each(function(){
-
- // Store the object
- var $this = $(this);
-
- // Resizer() resizes items based on the object width divided by the compressor * 10
- var resizer = function () {
- $this.css('font-size', Math.max(Math.min($this.width() / (compressor*10), parseFloat(settings.maxFontSize)), parseFloat(settings.minFontSize)));
- };
-
- // Call once to set.
- resizer();
-
- // Call on resize. Opera debounces their resize by default.
- $(window).on('resize', resizer);
-
- });
-
- };
-
-})( jQuery );
-
-});
\ No newline at end of file
diff --git a/assets/js/jquery.min.js b/assets/js/jquery.min.js
deleted file mode 100644
index 16ad06c..0000000
--- a/assets/js/jquery.min.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/*! jQuery v1.7.2 jquery.com | jquery.org/license */
-(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cu(a){if(!cj[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ck||(ck=c.createElement("iframe"),ck.frameBorder=ck.width=ck.height=0),b.appendChild(ck);if(!cl||!ck.createElement)cl=(ck.contentWindow||ck.contentDocument).document,cl.write((f.support.boxModel?"":"")+"
"),cl.close();d=cl.createElement(a),cl.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ck)}cj[a]=e}return cj[a]}function ct(a,b){var c={};f.each(cp.concat.apply([],cp.slice(0,b)),function(){c[this]=a});return c}function cs(){cq=b}function cr(){setTimeout(cs,0);return cq=f.now()}function ci(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ch(){try{return new a.XMLHttpRequest}catch(b){}}function cb(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;e=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?+d:j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.2",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){if(typeof c!="string"||!c)return null;var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;ca ",d=p.getElementsByTagName("*"),e=p.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=p.getElementsByTagName("input")[0],b={leadingWhitespace:p.firstChild.nodeType===3,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:p.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,pixelMargin:!0},f.boxModel=b.boxModel=c.compatMode==="CSS1Compat",i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete p.test}catch(r){b.deleteExpando=!1}!p.addEventListener&&p.attachEvent&&p.fireEvent&&(p.attachEvent("onclick",function(){b.noCloneEvent=!1}),p.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),i.setAttribute("name","t"),p.appendChild(i),j=c.createDocumentFragment(),j.appendChild(p.lastChild),b.checkClone=j.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,j.removeChild(i),j.appendChild(p);if(p.attachEvent)for(n in{submit:1,change:1,focusin:1})m="on"+n,o=m in p,o||(p.setAttribute(m,"return;"),o=typeof p[m]=="function"),b[n+"Bubbles"]=o;j.removeChild(p),j=g=h=p=i=null,f(function(){var d,e,g,h,i,j,l,m,n,q,r,s,t,u=c.getElementsByTagName("body")[0];!u||(m=1,t="padding:0;margin:0;border:",r="position:absolute;top:0;left:0;width:1px;height:1px;",s=t+"0;visibility:hidden;",n="style='"+r+t+"5px solid #000;",q=""+"",d=c.createElement("div"),d.style.cssText=s+"width:0;height:0;position:static;top:0;margin-top:"+m+"px",u.insertBefore(d,u.firstChild),p=c.createElement("div"),d.appendChild(p),p.innerHTML="",k=p.getElementsByTagName("td"),o=k[0].offsetHeight===0,k[0].style.display="",k[1].style.display="none",b.reliableHiddenOffsets=o&&k[0].offsetHeight===0,a.getComputedStyle&&(p.innerHTML="",l=c.createElement("div"),l.style.width="0",l.style.marginRight="0",p.style.width="2px",p.appendChild(l),b.reliableMarginRight=(parseInt((a.getComputedStyle(l,null)||{marginRight:0}).marginRight,10)||0)===0),typeof p.style.zoom!="undefined"&&(p.innerHTML="",p.style.width=p.style.padding="1px",p.style.border=0,p.style.overflow="hidden",p.style.display="inline",p.style.zoom=1,b.inlineBlockNeedsLayout=p.offsetWidth===3,p.style.display="block",p.style.overflow="visible",p.innerHTML="
",b.shrinkWrapBlocks=p.offsetWidth!==3),p.style.cssText=r+s,p.innerHTML=q,e=p.firstChild,g=e.firstChild,i=e.nextSibling.firstChild.firstChild,j={doesNotAddBorder:g.offsetTop!==5,doesAddBorderForTableAndCells:i.offsetTop===5},g.style.position="fixed",g.style.top="20px",j.fixedPosition=g.offsetTop===20||g.offsetTop===15,g.style.position=g.style.top="",e.style.overflow="hidden",e.style.position="relative",j.subtractsBorderForOverflowNotVisible=g.offsetTop===-5,j.doesNotIncludeMarginInBodyOffset=u.offsetTop!==m,a.getComputedStyle&&(p.style.marginTop="1%",b.pixelMargin=(a.getComputedStyle(p,null)||{marginTop:0}).marginTop!=="1%"),typeof d.style.zoom!="undefined"&&(d.style.zoom=1),u.removeChild(d),l=p=d=null,f.extend(b,j))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e1,null,!1)},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,b){a&&(b=(b||"fx")+"mark",f._data(a,b,(f._data(a,b)||0)+1))},_unmark:function(a,b,c){a!==!0&&(c=b,b=a,a=!1);if(b){c=c||"fx";var d=c+"mark",e=a?0:(f._data(b,d)||1)-1;e?f._data(b,d,e):(f.removeData(b,d,!0),n(b,c,"mark"))}},queue:function(a,b,c){var d;if(a){b=(b||"fx")+"queue",d=f._data(a,b),c&&(!d||f.isArray(c)?d=f._data(a,b,f.makeArray(c)):d.push(c));return d||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e={};d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),f._data(a,b+".run",e),d.call(a,function(){f.dequeue(a,b)},e)),c.length||(f.removeData(a,b+"queue "+b+".run",!0),n(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){var d=2;typeof a!="string"&&(c=a,a="fx",d--);if(arguments.length1)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,f.prop,a,b,arguments.length>1)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(p);for(c=0,d=this.length;c-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.type]||f.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.type]||f.valHooks[g.nodeName.toLowerCase()];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h,i=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;i=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/(?:^|\s)hover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(
-a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")};f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler,g=p.selector),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&j.push({elem:this,matches:d.slice(e)});for(k=0;k0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));o.match.globalPOS=p;var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c ",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML=" ",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="
";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/ ]","i"),bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*",""],legend:[1,""," "],thead:[1,""],tr:[2,""],td:[3,""],col:[2,""],area:[1,""," "],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div","
"]),f.fn.extend({text:function(a){return f.access(this,function(a){return a===b?f.text(this):this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f
-.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){return f.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>$2>");try{for(;d1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||f.isXMLDoc(a)||!bc.test("<"+a.nodeName+">")?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g,h,i,j=[];b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);for(var k=0,l;(l=a[k])!=null;k++){typeof l=="number"&&(l+="");if(!l)continue;if(typeof l=="string")if(!_.test(l))l=b.createTextNode(l);else{l=l.replace(Y,"<$1>$2>");var m=(Z.exec(l)||["",""])[1].toLowerCase(),n=bg[m]||bg._default,o=n[0],p=b.createElement("div"),q=bh.childNodes,r;b===c?bh.appendChild(p):U(b).appendChild(p),p.innerHTML=n[1]+l+n[2];while(o--)p=p.lastChild;if(!f.support.tbody){var s=$.test(l),t=m==="table"&&!s?p.firstChild&&p.firstChild.childNodes:n[1]===""&&!s?p.childNodes:[];for(i=t.length-1;i>=0;--i)f.nodeName(t[i],"tbody")&&!t[i].childNodes.length&&t[i].parentNode.removeChild(t[i])}!f.support.leadingWhitespace&&X.test(l)&&p.insertBefore(b.createTextNode(X.exec(l)[0]),p.firstChild),l=p.childNodes,p&&(p.parentNode.removeChild(p),q.length>0&&(r=q[q.length-1],r&&r.parentNode&&r.parentNode.removeChild(r)))}var u;if(!f.support.appendChecked)if(l[0]&&typeof (u=l.length)=="number")for(i=0;i1)},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=by(a,"opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=bu.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(by)return by(a,c)},swap:function(a,b,c){var d={},e,f;for(f in b)d[f]=a.style[f],a.style[f]=b[f];e=c.call(a);for(f in b)a.style[f]=d[f];return e}}),f.curCSS=f.css,c.defaultView&&c.defaultView.getComputedStyle&&(bz=function(a,b){var c,d,e,g,h=a.style;b=b.replace(br,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b))),!f.support.pixelMargin&&e&&bv.test(b)&&bt.test(c)&&(g=h.width,h.width=c,c=e.width,h.width=g);return c}),c.documentElement.currentStyle&&(bA=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f==null&&g&&(e=g[b])&&(f=e),bt.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),by=bz||bA,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth!==0?bB(a,b,d):f.swap(a,bw,function(){return bB(a,b,d)})},set:function(a,b){return bs.test(b)?b+"px":b}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bq.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bp,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bp.test(g)?g.replace(bp,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){return f.swap(a,{display:"inline-block"},function(){return b?by(a,"margin-right"):a.style.marginRight})}})}),f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)}),f.each({margin:"",padding:"",border:"Width"},function(a,b){f.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bx[d]+b]=e[d]||e[d-2]||e[0];return f}}});var bC=/%20/g,bD=/\[\]$/,bE=/\r?\n/g,bF=/#.*$/,bG=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bH=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bI=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bJ=/^(?:GET|HEAD)$/,bK=/^\/\//,bL=/\?/,bM=/
-
-
-Simple Blog
-
-
-
-
-
-
-
-
- Simple- Blog
-
-
-
-
-
-
-
-
-
-
-
15 Juli 2014
-
✭ Featured
-
- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perferendis repudiandae quae natus quos alias eos repellendus a obcaecati cupiditate similique quibusdam, atque omnis illum, minus ex dolorem facilis tempora deserunt! …
-
- Edit | Hapus
-
-
-
-
-
- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Perferendis repudiandae quae natus quos alias eos repellendus a obcaecati cupiditate similique quibusdam, atque omnis illum, minus ex dolorem facilis tempora deserunt! …
-
- Edit | Hapus
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/index.php b/index.php
new file mode 100644
index 0000000..21c52e8
--- /dev/null
+++ b/index.php
@@ -0,0 +1,33 @@
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Simple Blog | Tambah Post
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/php/action/add_post.php b/php/action/add_post.php
new file mode 100644
index 0000000..5177313
--- /dev/null
+++ b/php/action/add_post.php
@@ -0,0 +1,11 @@
+ true)));
\ No newline at end of file
diff --git a/php/action/edit_post.php b/php/action/edit_post.php
new file mode 100644
index 0000000..eb55fd6
--- /dev/null
+++ b/php/action/edit_post.php
@@ -0,0 +1,12 @@
+ true)));
\ No newline at end of file
diff --git a/php/ajax/comment_add.php b/php/ajax/comment_add.php
new file mode 100644
index 0000000..fa7fce2
--- /dev/null
+++ b/php/ajax/comment_add.php
@@ -0,0 +1,11 @@
+ 0) ? "SUCCESS" : "FAILED";
\ No newline at end of file
diff --git a/php/ajax/comments_list.php b/php/ajax/comments_list.php
new file mode 100644
index 0000000..2f5956a
--- /dev/null
+++ b/php/ajax/comments_list.php
@@ -0,0 +1,24 @@
+ 0) {
+ while ($comment = mysqli_fetch_assoc($comments)) :
+ ?>
+
+
+ No comments have been posted for this post.
+ $post_id,
+ "content" => $content,
+ "email" => $email,
+ "name" => $name,
+ "date" => $date
+ );
+ return db_query($query, $param);
+}
+
+function comment_select($post_id, $id = NULL) {
+ $query = "SELECT * FROM comments WHERE post_id = '%post_id%'";
+ $param = array("post_id" => $post_id);
+ if ($id != NULL) {
+ $query .= " AND id = '%id%'";
+ $param["id"] = $id;
+ }
+ $query .= " ORDER BY date DESC, id DESC";
+ return db_query($query, $param);
+}
\ No newline at end of file
diff --git a/php/crud/post.php b/php/crud/post.php
new file mode 100644
index 0000000..9426264
--- /dev/null
+++ b/php/crud/post.php
@@ -0,0 +1,46 @@
+ htmlspecialchars($content),
+ "title" => $title,
+ "date" => $date
+ );
+ return db_query($query, $param);
+}
+
+function post_select($id = null) {
+ if ($id) {
+ $query = "SELECT * FROM posts WHERE id = '%id%'";
+ $param = array('id' => $id);
+ } else {
+ $query = "SELECT * FROM posts ORDER BY date DESC, id DESC";
+ $param = array();
+ }
+ return db_query($query, $param);
+}
+
+function post_update($id, $title, $content, $date) {
+ $query = "UPDATE posts
+ SET content = '%content%',
+ title = '%title%',
+ date = '%date%'
+ WHERE id = '%id%'";
+ $param = array(
+ "content" => $content,
+ "title" => $title,
+ "date" => $date,
+ "id" => $id
+ );
+ return db_query($query, $param);
+}
+
+function post_delete($id) {
+ $query = "DELETE FROM posts WHERE id = '%id%'";
+ $param = array("id" => $id);
+ return db_query($query, $param);
+}
\ No newline at end of file
diff --git a/php/lib/database.php b/php/lib/database.php
new file mode 100644
index 0000000..cd3760a
--- /dev/null
+++ b/php/lib/database.php
@@ -0,0 +1,26 @@
+ $value) {
+ $query = str_ireplace("%{$key}%", mysqli_real_escape_string($db, $value), $query);
+ }
+ $result = mysqli_query($db, $query);
+ if (stripos($query, "INSERT") !== false || stripos($query, "UPDATE") !== false) {
+ return mysqli_insert_id($db);
+ } else {
+ return $result;
+ }
+}
\ No newline at end of file
diff --git a/php/lib/url.php b/php/lib/url.php
new file mode 100644
index 0000000..6d3a761
--- /dev/null
+++ b/php/lib/url.php
@@ -0,0 +1,64 @@
+ 0) {
+ $url .= "?";
+ foreach ($param as $key => $value) {
+ $html_key = htmlspecialchars($key);
+ $html_value = htmlspecialchars($value);
+ $url .= "{$html_key}={$html_value}";
+
+ end($param);
+ if ($key !== key($param)) {
+ $url .= "&";
+ }
+ }
+ }
+ return $url;
+}
+
+function url_page($name) {
+ return url_make_get(array("p" => $name));
+}
+
+function url_list_post() {
+ return url_make_get(array("action" => "list"));
+}
+
+function url_edit_post($id = NULL) {
+ $param = array(
+ "action" => "edit"
+ );
+ if ($id != NULL) {
+ $param["id"] = $id;
+ }
+ return url_make_get($param);
+}
+
+function url_view_post($id, $param = NULL) {
+ if ($param == NULL) {
+ $param = array("id" => $id);
+ } else {
+ $param["action"] = "view";
+ $param["id"] = $id;
+ }
+ return url_make_get($param);
+}
+
+function url_delete_post($id) {
+ $param = array(
+ "action" => "delete",
+ "id" => $id
+ );
+ return url_make_get($param);
+}
\ No newline at end of file
diff --git a/php/pages/about.php b/php/pages/about.php
new file mode 100644
index 0000000..d4bd997
--- /dev/null
+++ b/php/pages/about.php
@@ -0,0 +1,27 @@
+Slog
+Slog is a work I have done for college assignment IF3110 Web-Based Development Simple Blog .
+Please note that the website design and structure is still very very unsafe and should not be used directly without modification . For example, the post and comment feature are very prone to malicious HTML injection. After all, Slog is only created in a week from a blank folder by a drunk programmer for a college assignment -- surely you shouldn't expect much.
+Structure
+
+index.php: the main request handler.
+css/style.css: contains the stylesheet for the website. I generated the stylesheet using LESS . The LESS files is available at css/less folder.
+js/script.js: contains the web page script for the website.
+php: contains the PHP files.
+php/action: contains form requests handlers.
+php/ajax: contains AJAX requests handlers.
+php/crud: contains functions to retrieve, update, and delete posts and comments.
+php/lib: contains helper functions to access database and creating URLs.
+php/pages: contains pages that can be accessed using ?p=.
+php/templates: contains templates for views.
+php/views: contains views that will be shown to user.
+php/config.php: contains the configuration variables for the website.
+
+
+
+Notes
+The web page content is generated by index.php, which will use the correct view or do correct actions based on the value of GET parameters. The internal design uses require directive available in PHP. This design was partially inspired by CodeIgniter . This allows URL rewriting (depends on the server) and easier MVC design.
+This website depends on MySQLi feature available in the PHP interpreter, which should be for most PHP-based web servers. The configurations (user name, password, database name, database server) are available at config.php. A sample SQL database dump is provided at slog.sql.
+License
+Slog is licensed under MIT License.
+
+Feel free to contact me at @tkesgar about this project.
diff --git a/php/pages/license.php b/php/pages/license.php
new file mode 100644
index 0000000..4ede2f0
--- /dev/null
+++ b/php/pages/license.php
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright © Tito D. Kesumo Siregar
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the “Software”), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
\ No newline at end of file
diff --git a/php/templates/bottom.php b/php/templates/bottom.php
new file mode 100644
index 0000000..10f2b32
--- /dev/null
+++ b/php/templates/bottom.php
@@ -0,0 +1,10 @@
+
+
+
+