diff --git a/app/assets/images/_black.svg b/app/assets/images/_black.svg new file mode 100644 index 0000000..b9b9b13 --- /dev/null +++ b/app/assets/images/_black.svg @@ -0,0 +1,32 @@ + + + +]> + + + + + + diff --git a/app/assets/images/account.png b/app/assets/images/account.png new file mode 100644 index 0000000..f664a94 Binary files /dev/null and b/app/assets/images/account.png differ diff --git a/app/assets/images/account.svg b/app/assets/images/account.svg new file mode 100644 index 0000000..02c9c2a --- /dev/null +++ b/app/assets/images/account.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/account_black.svg b/app/assets/images/account_black.svg new file mode 100644 index 0000000..a026423 --- /dev/null +++ b/app/assets/images/account_black.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + + diff --git a/app/assets/images/arror_left_black.svg b/app/assets/images/arror_left_black.svg new file mode 100644 index 0000000..3e3baec --- /dev/null +++ b/app/assets/images/arror_left_black.svg @@ -0,0 +1,22 @@ + + + +]> + + + + + + diff --git a/app/assets/images/arrow_down.svg b/app/assets/images/arrow_down.svg new file mode 100644 index 0000000..84915f2 --- /dev/null +++ b/app/assets/images/arrow_down.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + diff --git a/app/assets/images/arrow_down2.svg b/app/assets/images/arrow_down2.svg new file mode 100644 index 0000000..54f033c --- /dev/null +++ b/app/assets/images/arrow_down2.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/arrow_down2_black.svg b/app/assets/images/arrow_down2_black.svg new file mode 100644 index 0000000..b65cb3d --- /dev/null +++ b/app/assets/images/arrow_down2_black.svg @@ -0,0 +1,19 @@ + + + +]> + + + + + + diff --git a/app/assets/images/arrow_down_black.svg b/app/assets/images/arrow_down_black.svg new file mode 100644 index 0000000..4b8b9a2 --- /dev/null +++ b/app/assets/images/arrow_down_black.svg @@ -0,0 +1,22 @@ + + + +]> + + + + + + diff --git a/app/assets/images/arrow_left.svg b/app/assets/images/arrow_left.svg new file mode 100644 index 0000000..3243f42 --- /dev/null +++ b/app/assets/images/arrow_left.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + diff --git a/app/assets/images/arrow_left2.svg b/app/assets/images/arrow_left2.svg new file mode 100644 index 0000000..d9c3e43 --- /dev/null +++ b/app/assets/images/arrow_left2.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/arrow_left2_black.svg b/app/assets/images/arrow_left2_black.svg new file mode 100644 index 0000000..f4b5ef2 --- /dev/null +++ b/app/assets/images/arrow_left2_black.svg @@ -0,0 +1,19 @@ + + + +]> + + + + + + diff --git a/app/assets/images/arrow_left_black.png b/app/assets/images/arrow_left_black.png new file mode 100644 index 0000000..f234d82 Binary files /dev/null and b/app/assets/images/arrow_left_black.png differ diff --git a/app/assets/images/arrow_left_black.svg b/app/assets/images/arrow_left_black.svg new file mode 100644 index 0000000..3e3baec --- /dev/null +++ b/app/assets/images/arrow_left_black.svg @@ -0,0 +1,22 @@ + + + +]> + + + + + + diff --git a/app/assets/images/arrow_right.svg b/app/assets/images/arrow_right.svg new file mode 100644 index 0000000..e0066c5 --- /dev/null +++ b/app/assets/images/arrow_right.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + diff --git a/app/assets/images/arrow_right.svgz b/app/assets/images/arrow_right.svgz new file mode 100644 index 0000000..1b80134 Binary files /dev/null and b/app/assets/images/arrow_right.svgz differ diff --git a/app/assets/images/arrow_right2.svg b/app/assets/images/arrow_right2.svg new file mode 100644 index 0000000..0ce6fd6 --- /dev/null +++ b/app/assets/images/arrow_right2.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/arrow_right2_black.svg b/app/assets/images/arrow_right2_black.svg new file mode 100644 index 0000000..633d25e --- /dev/null +++ b/app/assets/images/arrow_right2_black.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + + diff --git a/app/assets/images/arrow_right_black.png b/app/assets/images/arrow_right_black.png new file mode 100644 index 0000000..7b3fd97 Binary files /dev/null and b/app/assets/images/arrow_right_black.png differ diff --git a/app/assets/images/arrow_right_black.svg b/app/assets/images/arrow_right_black.svg new file mode 100644 index 0000000..7022280 --- /dev/null +++ b/app/assets/images/arrow_right_black.svg @@ -0,0 +1,22 @@ + + + +]> + + + + + + diff --git a/app/assets/images/arrow_up.svg b/app/assets/images/arrow_up.svg new file mode 100644 index 0000000..fa4f8e2 --- /dev/null +++ b/app/assets/images/arrow_up.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + diff --git a/app/assets/images/arrow_up2.svg b/app/assets/images/arrow_up2.svg new file mode 100644 index 0000000..2b9360a --- /dev/null +++ b/app/assets/images/arrow_up2.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/arrow_up2_black.svg b/app/assets/images/arrow_up2_black.svg new file mode 100644 index 0000000..d3464f2 --- /dev/null +++ b/app/assets/images/arrow_up2_black.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + + diff --git a/app/assets/images/arrow_up_black.svg b/app/assets/images/arrow_up_black.svg new file mode 100644 index 0000000..894c225 --- /dev/null +++ b/app/assets/images/arrow_up_black.svg @@ -0,0 +1,22 @@ + + + +]> + + + + + + diff --git a/app/assets/images/bookmark.svg b/app/assets/images/bookmark.svg new file mode 100644 index 0000000..49bcfb6 --- /dev/null +++ b/app/assets/images/bookmark.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/bookmark_black.svg b/app/assets/images/bookmark_black.svg new file mode 100644 index 0000000..69b6e1b --- /dev/null +++ b/app/assets/images/bookmark_black.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + + diff --git a/app/assets/images/calendar.svg b/app/assets/images/calendar.svg new file mode 100644 index 0000000..fcd8ff4 --- /dev/null +++ b/app/assets/images/calendar.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/app/assets/images/calendar_black.svg b/app/assets/images/calendar_black.svg new file mode 100644 index 0000000..b07d63f --- /dev/null +++ b/app/assets/images/calendar_black.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + + diff --git a/app/assets/images/comment.svg b/app/assets/images/comment.svg new file mode 100644 index 0000000..0f1641a --- /dev/null +++ b/app/assets/images/comment.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/comment_black.svg b/app/assets/images/comment_black.svg new file mode 100644 index 0000000..85977b6 --- /dev/null +++ b/app/assets/images/comment_black.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + + diff --git a/app/assets/images/cycle.svg b/app/assets/images/cycle.svg new file mode 100644 index 0000000..720ff13 --- /dev/null +++ b/app/assets/images/cycle.svg @@ -0,0 +1,19 @@ + + + +]> + + + + + diff --git a/app/assets/images/cycle_black.svg b/app/assets/images/cycle_black.svg new file mode 100644 index 0000000..bee3332 --- /dev/null +++ b/app/assets/images/cycle_black.svg @@ -0,0 +1,26 @@ + + + +]> + + + + + + diff --git a/app/assets/images/email.svg b/app/assets/images/email.svg new file mode 100644 index 0000000..c63d9d7 --- /dev/null +++ b/app/assets/images/email.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/email_black.svg b/app/assets/images/email_black.svg new file mode 100644 index 0000000..b243f02 --- /dev/null +++ b/app/assets/images/email_black.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + + diff --git a/app/assets/images/facebook.png b/app/assets/images/facebook.png new file mode 100644 index 0000000..c134f41 Binary files /dev/null and b/app/assets/images/facebook.png differ diff --git a/app/assets/images/facebook.svg b/app/assets/images/facebook.svg new file mode 100644 index 0000000..f7c67af --- /dev/null +++ b/app/assets/images/facebook.svg @@ -0,0 +1,14 @@ + + + +]> + + + + + diff --git a/app/assets/images/facebook_black.svg b/app/assets/images/facebook_black.svg new file mode 100644 index 0000000..94d82db --- /dev/null +++ b/app/assets/images/facebook_black.svg @@ -0,0 +1,17 @@ + + + +]> + + + + + + diff --git a/app/assets/images/heart.png b/app/assets/images/heart.png new file mode 100644 index 0000000..87082ae Binary files /dev/null and b/app/assets/images/heart.png differ diff --git a/app/assets/images/heart.svg b/app/assets/images/heart.svg new file mode 100644 index 0000000..c9d0af8 --- /dev/null +++ b/app/assets/images/heart.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/app/assets/images/heart_black.svg b/app/assets/images/heart_black.svg new file mode 100644 index 0000000..e4f1c54 --- /dev/null +++ b/app/assets/images/heart_black.svg @@ -0,0 +1,20 @@ + + + +]> + + + + + + diff --git a/app/assets/images/home.png b/app/assets/images/home.png new file mode 100644 index 0000000..6eb1f95 Binary files /dev/null and b/app/assets/images/home.png differ diff --git a/app/assets/images/home.svg b/app/assets/images/home.svg new file mode 100644 index 0000000..e829acf --- /dev/null +++ b/app/assets/images/home.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/home_black.svg b/app/assets/images/home_black.svg new file mode 100644 index 0000000..d3a1132 --- /dev/null +++ b/app/assets/images/home_black.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + + diff --git a/app/assets/images/location.png b/app/assets/images/location.png new file mode 100644 index 0000000..c785079 Binary files /dev/null and b/app/assets/images/location.png differ diff --git a/app/assets/images/location.svg b/app/assets/images/location.svg new file mode 100644 index 0000000..42b29a4 --- /dev/null +++ b/app/assets/images/location.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/location_black.svg b/app/assets/images/location_black.svg new file mode 100644 index 0000000..2aa8d01 --- /dev/null +++ b/app/assets/images/location_black.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + + diff --git a/app/assets/images/refresh.svg b/app/assets/images/refresh.svg new file mode 100644 index 0000000..22ac735 --- /dev/null +++ b/app/assets/images/refresh.svg @@ -0,0 +1,22 @@ + + + +]> + + + + + diff --git a/app/assets/images/refresh_black.svg b/app/assets/images/refresh_black.svg new file mode 100644 index 0000000..b9b9b13 --- /dev/null +++ b/app/assets/images/refresh_black.svg @@ -0,0 +1,32 @@ + + + +]> + + + + + + diff --git a/app/assets/images/search.png b/app/assets/images/search.png new file mode 100644 index 0000000..e1c0fa4 Binary files /dev/null and b/app/assets/images/search.png differ diff --git a/app/assets/images/search.svg b/app/assets/images/search.svg new file mode 100644 index 0000000..289d3bd --- /dev/null +++ b/app/assets/images/search.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/app/assets/images/search_black.svg b/app/assets/images/search_black.svg new file mode 100644 index 0000000..4aab1d1 --- /dev/null +++ b/app/assets/images/search_black.svg @@ -0,0 +1,20 @@ + + + +]> + + + + + + diff --git a/app/assets/images/star.svg b/app/assets/images/star.svg new file mode 100644 index 0000000..5ee309d --- /dev/null +++ b/app/assets/images/star.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + diff --git a/app/assets/images/star_black.svg b/app/assets/images/star_black.svg new file mode 100644 index 0000000..ea00869 --- /dev/null +++ b/app/assets/images/star_black.svg @@ -0,0 +1,24 @@ + + + +]> + + + + + + diff --git a/app/assets/images/tag.png b/app/assets/images/tag.png new file mode 100644 index 0000000..939330f Binary files /dev/null and b/app/assets/images/tag.png differ diff --git a/app/assets/images/tag.svg b/app/assets/images/tag.svg new file mode 100644 index 0000000..3919ee4 --- /dev/null +++ b/app/assets/images/tag.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/tag_black.svg b/app/assets/images/tag_black.svg new file mode 100644 index 0000000..69722b5 --- /dev/null +++ b/app/assets/images/tag_black.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + + diff --git a/app/assets/images/time.svg b/app/assets/images/time.svg new file mode 100644 index 0000000..a78a7fe --- /dev/null +++ b/app/assets/images/time.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/time_black.svg b/app/assets/images/time_black.svg new file mode 100644 index 0000000..dd52f92 --- /dev/null +++ b/app/assets/images/time_black.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + + diff --git a/app/assets/images/twitter.png b/app/assets/images/twitter.png new file mode 100644 index 0000000..cbaed2b Binary files /dev/null and b/app/assets/images/twitter.png differ diff --git a/app/assets/images/twitter.svg b/app/assets/images/twitter.svg new file mode 100644 index 0000000..bbc4af3 --- /dev/null +++ b/app/assets/images/twitter.svg @@ -0,0 +1,15 @@ + + + +]> + + + + + diff --git a/app/assets/images/twitter_black.svg b/app/assets/images/twitter_black.svg new file mode 100644 index 0000000..408cd55 --- /dev/null +++ b/app/assets/images/twitter_black.svg @@ -0,0 +1,18 @@ + + + +]> + + + + + + diff --git a/app/assets/images/write.png b/app/assets/images/write.png new file mode 100644 index 0000000..7a2fc75 Binary files /dev/null and b/app/assets/images/write.png differ diff --git a/app/assets/images/write.svg b/app/assets/images/write.svg new file mode 100644 index 0000000..b9a2c0b --- /dev/null +++ b/app/assets/images/write.svg @@ -0,0 +1,16 @@ + + + +]> + + + + + diff --git a/app/assets/images/write_black.svg b/app/assets/images/write_black.svg new file mode 100644 index 0000000..d859252 --- /dev/null +++ b/app/assets/images/write_black.svg @@ -0,0 +1,20 @@ + + + +]> + + + + + + diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index dca4339..1e859ce 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -13,6 +13,7 @@ //= require jquery //= require jquery_ujs //= require bootstrap-transition +//= require bootstrap-tooltip //= require bootstrap-carousel //= require_tree . @@ -21,11 +22,13 @@ // favorite_btn $(document).ready(function($) { - $('.carousel').carousel() - $('.previous-button').click(function() { + $('.carousel').carousel({ + interval: 10000 + }); + $('.carousel-previous-button').click(function() { $('.carousel').carousel('prev'); }); - $('.forward-button').click(function() { + $('.carousel-forward-button').click(function() { $('.carousel').carousel('next'); }); diff --git a/app/assets/stylesheets/application.css b/app/assets/stylesheets/application.css index 07e9b86..1b05751 100644 --- a/app/assets/stylesheets/application.css +++ b/app/assets/stylesheets/application.css @@ -11,6 +11,7 @@ *= require global/reset *= require global/fontface *= require global/global + *= require global/forms *= require global/header *= require carousel *= require global/section diff --git a/app/assets/stylesheets/global/_variables.scss b/app/assets/stylesheets/global/_variables.scss index 3116c1a..8d500c0 100644 --- a/app/assets/stylesheets/global/_variables.scss +++ b/app/assets/stylesheets/global/_variables.scss @@ -6,3 +6,5 @@ $red: #bd3b36; $red_shade: #a53430; $yellow: #fff235; $yellow_shade: #dfd32e; +$green: #C5E95B; +$green_shade: #ACCB4F; \ No newline at end of file diff --git a/app/assets/stylesheets/global/footer.css.scss b/app/assets/stylesheets/global/footer.css.scss index 1cde7a2..a66cb47 100644 --- a/app/assets/stylesheets/global/footer.css.scss +++ b/app/assets/stylesheets/global/footer.css.scss @@ -1,13 +1,8 @@ @import 'variables'; @import 'mixins'; -/* variables */ - footer { - - display: none; - position: fixed; right: 0; bottom: 0; @@ -30,15 +25,18 @@ footer { background-color: #222; a { color: #fff; - font-size: 36px; - line-height: 48px; display: block; text-align: center; @include font_face; @include text_shadow(0, 3px, 0, $black); + img { + width: 40%; + height: auto; + padding: 5px; + } } span.nav_label { - // display: none; + display: none; } } } diff --git a/app/assets/stylesheets/global/forms.css.scss b/app/assets/stylesheets/global/forms.css.scss new file mode 100644 index 0000000..aecf497 --- /dev/null +++ b/app/assets/stylesheets/global/forms.css.scss @@ -0,0 +1,145 @@ +button, +input, +select, +textarea { + margin: 0; + font-size: 100%; + vertical-align: middle; +} +button, +input { + *overflow: visible; + line-height: normal; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} +button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + cursor: pointer; + -webkit-appearance: button; +} +.search { + max-width: 620px; + width: 100%; + margin-left: auto; + margin-right: auto; + padding: 3px 0; + + .form-search { + padding-left: 14px; + padding-right: 14px; + .search-query { + + width: 100%; + + margin-bottom: 0; + -webkit-border-radius: 14px; + -moz-border-radius: 14px; + border-radius: 14px; + } + } +} + +/*button, +input, +select, +textarea { + margin: 0; + font-size: 100%; + vertical-align: middle; +} +button, +input { + *overflow: visible; + line-height: normal; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} +button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + cursor: pointer; + -webkit-appearance: button; +} +input[type="search"] { + -webkit-appearance: textfield; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +input[type="search"]::-webkit-search-decoration, +input[type="search"]::-webkit-search-cancel-button { + -webkit-appearance: none; +} +.search-query { + padding-left: 14px; + padding-right: 14px; + margin-bottom: 0; + -webkit-border-radius: 14px; + -moz-border-radius: 14px; + border-radius: 14px; +} +.form-search input, +.form-inline input, +.form-horizontal input, +.form-search textarea, +.form-inline textarea, +.form-horizontal textarea, +.form-search select, +.form-inline select, +.form-horizontal select, +.form-search .help-inline, +.form-inline .help-inline, +.form-horizontal .help-inline, +.form-search .uneditable-input, +.form-inline .uneditable-input, +.form-horizontal .uneditable-input, +.form-search .input-prepend, +.form-inline .input-prepend, +.form-horizontal .input-prepend, +.form-search .input-append, +.form-inline .input-append, +.form-horizontal .input-append { + display: inline-block; + margin-bottom: 0; +} +.form-search .hide, +.form-inline .hide, +.form-horizontal .hide { + display: none; +} +.form-search label, +.form-inline label { + display: inline-block; +} +.form-search .input-append, +.form-inline .input-append, +.form-search .input-prepend, +.form-inline .input-prepend { + margin-bottom: 0; +} +.form-search .radio, +.form-search .checkbox, +.form-inline .radio, +.form-inline .checkbox { + padding-left: 0; + margin-bottom: 0; + vertical-align: middle; +} +.form-search .radio input[type="radio"], +.form-search .checkbox input[type="checkbox"], +.form-inline .radio input[type="radio"], +.form-inline .checkbox input[type="checkbox"] { + float: left; + margin-left: 0; + margin-right: 3px; +}*/ \ No newline at end of file diff --git a/app/assets/stylesheets/global/header.css.scss b/app/assets/stylesheets/global/header.css.scss index f86b9aa..2d05d12 100644 --- a/app/assets/stylesheets/global/header.css.scss +++ b/app/assets/stylesheets/global/header.css.scss @@ -10,48 +10,45 @@ * */ -/* imports */ @import 'variables'; @import 'mixins'; -/* page */ header { position: fixed; top: 0; - right: 0; left: 0; + right: 0; border-bottom: 2px solid $red_shade; z-index: 1000; - - @include box_shadow_inset(0px, 0px, 0px, 0px, rgba(0, 0, 0, 0.1)); background-color: $red; - - a, a:link, a:hover, a:visited { + @include box_shadow_inset(0px, 0px, 0px, 0px, rgba(0, 0, 0, 0.1)); + a { color: #fff; } h1 { font: bold 24px/32px "Helvetica Neue", Helvetica, Arial, sans-serif; text-align: center; - padding: 10px 0; - letter-spacing: -3px; + padding: 5px 0; + letter-spacing: -2px; @include text_shadow(0, 3px, 0, $red_shade); } ul { position: absolute; top: 0; right: 0; - margin: 14px 0; + margin: 0; li { - @include font_face; - font-size: 22px; float: left; + a { + img { + height: auto; + width: 40%; + } + } } } } .btn-create { - width: 64px; - height: 64px; - overflow: hidden; background-color: $red_shade; } \ No newline at end of file diff --git a/app/assets/stylesheets/global/section.css.scss b/app/assets/stylesheets/global/section.css.scss index f147871..bb56108 100644 --- a/app/assets/stylesheets/global/section.css.scss +++ b/app/assets/stylesheets/global/section.css.scss @@ -1,25 +1,18 @@ -/* imports */ @import 'variables'; @import 'mixins'; + section { height: 100%; #carousel-excuses { height: 100%; - .previous-button, .forward-button { + .carousel-previous-button, .carousel-forward-button { background-color: rgba(0, 0, 0, 0.05); float: left; height: 100%; width: 10%; z-index: 2; - - } - .previous-button { - background-image: url('/assets/upload.svg'); - background-image: none, url('/assets/upload.svg'), url('/assets/upload.svg'); - background-size: 60% auto; - background-repeat: no-repeat; - background-position: center center; + cursor: pointer; opacity: 0.4; transition: opacity 200ms; -moz-transition: opacity 200ms; @@ -33,24 +26,19 @@ section { -o-transition: opacity 200ms; } } - .forward-button { - background-image: url('/assets/upload.svg'); - background-image: none, url('/assets/upload.svg'), url('/assets/upload.svg'); + .carousel-previous-button { + background-image: url('/assets/arrow_left_black.png'); + background-image: none, url('/assets/arrow_left_black.svg'), url('/assets/arrow_left_black.png'); + background-size: 60% auto; + background-repeat: no-repeat; + background-position: center center; + } + .carousel-forward-button { + background-image: url('/assets/arrow_right_black.png'); + background-image: none, url('/assets/arrow_right_black.svg'), url('/assets/arrow_right_black.png'); background-size: 60% auto; background-repeat: no-repeat; background-position: center center; - opacity: 0.4; - transition: opacity 200ms; - -moz-transition: opacity 200ms; - -webkit-transition: opacity 200ms; - -o-transition: opacity 200ms; - &:hover { - opacity: 0.6; - transition: opacity 200ms; - -moz-transition: opacity 200ms; - -webkit-transition: opacity 200ms; - -o-transition: opacity 200ms; - } } .carousel-inner { float: left; @@ -60,61 +48,74 @@ section { .item { padding: 5%; min-height: 200px; + h2 { + font-size: 42px; + line-height: 56px; + margin-bottom: 40px; + @include text_shadow(1px, 3px, 0, #fff); + } } } } } .details { - margin: 20px 0; + color: #fff; + font-size: 12px; + line-height: 18px; + letter-spacing: 1px; + margin: 10px 0; + text-transform: uppercase; h3 { - float: left; - font-size: 12px; - letter-spacing: 2px; - line-height: 32px; - margin-right: 10px; - text-transform: uppercase; + color: #000; + margin-bottom: 10px; } - ul { + a { + color: #fff; + } + div { + border-left: 1px solid #ccc; + border-right: 1px solid #fff; + padding-right: 20px; float: left; + padding: 5px 20px; + } + .favorite { + border-left: 0; + } + .location { li { - background-color: $blue; - color: #fff; - float: left; - font-size: 12px; - letter-spacing: 1px; - line-height: 18px; - margin: 2px 5px; + background-color: $green; + display: inline-block; + margin: 0 0 10px 0; padding: 5px 10px; - text-transform: uppercase; + @include border_radius(25px); + @include box_shadow_inset(0, 0, 2px, 2px, rgba(0, 0, 0, 0.03)); + @include box_shadow(0, 2px, 0, 0, #fff); a { - color: #fff; + @include text_shadow(1px, 1px, 0, $green_shade); } - } + &:hover { + background-color: $green_shade; + } + } } -} - -.favorites { - -} -.tags { - li.tag { - background-color: $blue; - color: #fff; - float: left; - font-size: 12px; - letter-spacing: 1px; - line-height: 18px; - margin: 2px 5px; - padding: 5px 10px; - text-transform: uppercase; - @include border_radius(25px); - @include box_shadow_inset(0, 0, 2px, 2px, rgba(0, 0, 0, 0.03)); - a { - color: #fff; - } - &:hover { - background-color: $blue_shade; + .tags { + border-right: 0; + li { + background-color: $blue; + display: inline-block; + margin: 0 10px 10px 0; + padding: 5px 10px; + @include border_radius(25px); + @include box_shadow_inset(0, 0, 2px, 2px, rgba(0, 0, 0, 0.03)); + @include box_shadow(0, 2px, 0, 0, #fff); + a { + @include text_shadow(1px, 1px, 0, $blue_shade); + } + &:hover { + background-color: $blue_shade; + } } } } \ No newline at end of file diff --git a/app/views/pages/_carousel.html.haml b/app/views/pages/_carousel.html.haml new file mode 100644 index 0000000..04dcf55 --- /dev/null +++ b/app/views/pages/_carousel.html.haml @@ -0,0 +1,46 @@ +- if @excuses.count > 0 + - @excuses.each_with_index do |excuse, index| + - if index == 0 + .item.active + %h2 + = excuse.text + .details + - if @current_user.present? + .favorite + %h3 Favorite + = form_tag favorites_path do + = hidden_field_tag :excuse, excuse.id + = submit_tag "Favorite", :name => nil + .location + %h3 Location + %ul + %li= link_to excuse.location.name, "search/#{excuse.location.name.parameterize}" + .tags + %h3 Tags + %ul + - excuse.tags.each do |tag| + %li.tag= link_to tag.name, "tag/#{tag.name}", :rel => "tag" + + - else + .item + %h2 + = excuse.text + .details + - if @current_user.present? + .favorite + %h3 Favorite + = form_tag favorites_path do + = hidden_field_tag :excuse, excuse.id + = submit_tag "Favorite", :name => nil + .location + %h3 Location + %ul + %li= link_to excuse.location.name, "search/#{excuse.location.name.parameterize}" + .tags + %h3 Tags + %ul + - excuse.tags.each do |tag| + %li.tag= link_to tag.name, "tag/#{tag.name}", :rel => "tag" + +- else + .item.active There's no excuse for no excuses! There's only an excuse for Oh, Excuses... Why don't you create one? diff --git a/app/views/pages/_footer.html.haml b/app/views/pages/_footer.html.haml index 617b5d8..198ac75 100644 --- a/app/views/pages/_footer.html.haml +++ b/app/views/pages/_footer.html.haml @@ -2,21 +2,21 @@ %ul %li - = link_to "H", app_excuse_url, :class => "icon" + = link_to (image_tag "/assets/home.svg"), app_excuse_url, :class => "icon", :rel => "tooltip", :title => "Home" %span.nav_label Home %li - = link_to "S", app_search_url, :class => "icon" + = link_to (image_tag "/assets/search.svg"), app_search_url, :class => "icon", :rel => "tooltip", :title => "Search by words" %span.nav_label Search %li - = link_to "L", app_location_url, :class => "icon" + = link_to (image_tag "/assets/location.svg"), app_location_url, :class => "icon", :rel => "tooltip", :title => "Search by location" %span.nav_label Location %li - = link_to "T", app_tag_url, :class => "icon" + = link_to (image_tag "/assets/tag.svg"), app_tag_url, :class => "icon", :rel => "tooltip", :title => "Search by tags" %span.nav_label Tag %li - = link_to "A", app_user_url, :class => "icon" + = link_to (image_tag "/assets/account.svg"), app_user_url, :class => "icon", :rel => "tooltip", :title => "View your account" %span.nav_label Account \ No newline at end of file diff --git a/app/views/pages/_header.html.haml b/app/views/pages/_header.html.haml index b773e5f..77e31b4 100644 --- a/app/views/pages/_header.html.haml +++ b/app/views/pages/_header.html.haml @@ -3,7 +3,7 @@ - if session[:user_id] %ul - %li= link_to "N", new_excuse_path, :class => "btn btn-create icon" + %li= link_to (image_tag "/assets/write.svg"), new_excuse_path, :class => "btn btn-create icon" - else %ul %li= link_to "Sign Up", new_user_path diff --git a/app/views/pages/_nav_def_list.html.haml b/app/views/pages/_nav_def_list.html.haml deleted file mode 100644 index ddd6a91..0000000 --- a/app/views/pages/_nav_def_list.html.haml +++ /dev/null @@ -1,15 +0,0 @@ -%dl - %dd= link_to "H", app_excuse_url, :class => "icon" - %dt Home - - %dd= link_to "S", app_search_url, :class => "icon" - %dt Search - - %dd= link_to "L", app_location_url, :class => "icon" - %dt Location - - %dd= link_to "T", app_tag_url, :class => "icon" - %dt Tag - - %dd= link_to "A", app_user_url, :class => "icon" - %dt Account \ No newline at end of file diff --git a/app/views/pages/_search_box.html.haml b/app/views/pages/_search_box.html.haml index 9ad363b..92be5d9 100644 --- a/app/views/pages/_search_box.html.haml +++ b/app/views/pages/_search_box.html.haml @@ -1,2 +1,3 @@ -= form_tag form_link, method: 'get' do - = search_field_tag :search, params[:search], placeholder: placeholder \ No newline at end of file +.search + = form_tag form_link, method: 'get', :class => "form-search" do + = search_field_tag :search, params[:search], placeholder: placeholder, :class => "search-query" \ No newline at end of file diff --git a/app/views/pages/excuse.html.haml b/app/views/pages/excuse.html.haml index debb910..c4af835 100644 --- a/app/views/pages/excuse.html.haml +++ b/app/views/pages/excuse.html.haml @@ -6,47 +6,11 @@ %section #carousel-excuses.carousel.slide - .previous-button - .previous-icon + .carousel-previous-button + .carousel-previous-icon .carousel-inner - - if @excuses.count > 0 - - @excuses.each_with_index do |excuse, index| - - if index == 0 - .item.active - .text - %h2 - = excuse.text - - if @current_user.present? - .details.favorites - %h3 Favorites - = form_tag favorites_path do - = hidden_field_tag :excuse, excuse.id - = submit_tag "Favorite", :name => nil - .details.tags - %h3 Tags - %ul - - excuse.tags.each do |tag| - %li.tag{ :class => "tag-blue" }= link_to tag.name, "tag/#{tag.name}", :rel => "tag" + = render 'carousel', :excuses => @excuses - - else - .item - .text - %h2 - = excuse.text - - if @current_user.present? - .details.favorites - %h3 Favorites - = form_tag favorites_path do - = hidden_field_tag :excuse, excuse.id - = submit_tag "Favorite", :name => nil - .details.tags - %h3 Tags - %ul - - excuse.tags.each do |tag| - %li.tag{ :class => "tag-blue" }= link_to tag.name, "tag/#{tag.name}", :rel => "tag" - - else - .item.active There's no excuse for no excuses! There's only an excuse for Oh, Excuses... Why don't you create one? - - .forward-button - .forward-icon + .carousel-forward-button + .carousel-forward-icon diff --git a/app/views/pages/location.html.haml b/app/views/pages/location.html.haml index b5c90af..6a7b89f 100644 --- a/app/views/pages/location.html.haml +++ b/app/views/pages/location.html.haml @@ -3,12 +3,17 @@ - if notice = render 'layouts/notice', :notice => notice, :type => "info" -= render 'search_box', form_link: app_location_path, placeholder: 'Search by locations' - -- if @excuses.count > 0 - %ul - - @excuses.each do |excuse| - %li= excuse.text -- else - %ul - %li Can you believe it? There are no excuses from this location... Yet. Why don't you create one? \ No newline at end of file +%section + #carousel-excuses.carousel.slide + + .carousel-previous-button + .carousel-previous-icon + + .carousel-inner + = render 'search_box', form_link: app_location_path, placeholder: 'Search by locations' + = render 'carousel', :excuses => @excuses + + .carousel-forward-button + .carousel-forward-icon + +%span Can you believe it? There are no excuses from this location... Yet. Why don't you create one? \ No newline at end of file diff --git a/app/views/pages/search.html.haml b/app/views/pages/search.html.haml index efec70d..0e33667 100644 --- a/app/views/pages/search.html.haml +++ b/app/views/pages/search.html.haml @@ -3,12 +3,15 @@ - if notice = render 'layouts/notice', :notice => notice, :type => "info" -= render 'search_box', form_link: app_search_path, placeholder: 'Search by words' - -- if @excuses.count > 0 - %ul - - @excuses.each do |excuse| - %li= excuse.text -- else - %ul - %li There's no excuse for no excuses! There's only an excuse for Oh, Excuses... Why don't you create one? \ No newline at end of file +%section + #carousel-excuses.carousel.slide + + .carousel-previous-button + .carousel-previous-icon + + .carousel-inner + = render 'search_box', form_link: app_search_path, placeholder: 'Search by words' + = render 'carousel', :excuses => @excuses + + .carousel-forward-button + .carousel-forward-icon diff --git a/app/views/pages/tag.html.haml b/app/views/pages/tag.html.haml index 89dbeea..21986f1 100644 --- a/app/views/pages/tag.html.haml +++ b/app/views/pages/tag.html.haml @@ -3,13 +3,17 @@ - if notice = render 'layouts/notice', :notice => notice, :type => "info" -= render 'search_box', form_link: app_tag_path, placeholder: 'Search by tags' - -- if @excuses.count > 0 - %ul - - @excuses.each do |excuse| - %li= excuse.text - %li= excuse.tag_names -- else - %ul - %li Can you believe it? There are no excuses with this tag... Yet. Why don't you create one? \ No newline at end of file +%section + #carousel-excuses.carousel.slide + + .carousel-previous-button + .carousel-previous-icon + + .carousel-inner + = render 'search_box', form_link: app_tag_path, placeholder: 'Search by tags' + = render 'carousel', :excuses => @excuses + + .carousel-forward-button + .carousel-forward-icon + +%span Can you believe it? There are no excuses with this tag... Yet. Why don't you create one? \ No newline at end of file diff --git a/vendor/assets/javascripts/bootstrap-tooltip.js b/vendor/assets/javascripts/bootstrap-tooltip.js new file mode 100644 index 0000000..49b5f72 --- /dev/null +++ b/vendor/assets/javascripts/bootstrap-tooltip.js @@ -0,0 +1,270 @@ +/* =========================================================== + * bootstrap-tooltip.js v2.0.2 + * http://twitter.github.com/bootstrap/javascript.html#tooltips + * Inspired by the original jQuery.tipsy by Jason Frame + * =========================================================== + * Copyright 2012 Twitter, Inc. + * + * 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( $ ) { + + "use strict" + + /* TOOLTIP PUBLIC CLASS DEFINITION + * =============================== */ + + var Tooltip = function ( element, options ) { + this.init('tooltip', element, options) + } + + Tooltip.prototype = { + + constructor: Tooltip + + , init: function ( type, element, options ) { + var eventIn + , eventOut + + this.type = type + this.$element = $(element) + this.options = this.getOptions(options) + this.enabled = true + + if (this.options.trigger != 'manual') { + eventIn = this.options.trigger == 'hover' ? 'mouseenter' : 'focus' + eventOut = this.options.trigger == 'hover' ? 'mouseleave' : 'blur' + this.$element.on(eventIn, this.options.selector, $.proxy(this.enter, this)) + this.$element.on(eventOut, this.options.selector, $.proxy(this.leave, this)) + } + + this.options.selector ? + (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) : + this.fixTitle() + } + + , getOptions: function ( options ) { + options = $.extend({}, $.fn[this.type].defaults, options, this.$element.data()) + + if (options.delay && typeof options.delay == 'number') { + options.delay = { + show: options.delay + , hide: options.delay + } + } + + return options + } + + , enter: function ( e ) { + var self = $(e.currentTarget)[this.type](this._options).data(this.type) + + if (!self.options.delay || !self.options.delay.show) { + self.show() + } else { + self.hoverState = 'in' + setTimeout(function() { + if (self.hoverState == 'in') { + self.show() + } + }, self.options.delay.show) + } + } + + , leave: function ( e ) { + var self = $(e.currentTarget)[this.type](this._options).data(this.type) + + if (!self.options.delay || !self.options.delay.hide) { + self.hide() + } else { + self.hoverState = 'out' + setTimeout(function() { + if (self.hoverState == 'out') { + self.hide() + } + }, self.options.delay.hide) + } + } + + , show: function () { + var $tip + , inside + , pos + , actualWidth + , actualHeight + , placement + , tp + + if (this.hasContent() && this.enabled) { + $tip = this.tip() + this.setContent() + + if (this.options.animation) { + $tip.addClass('fade') + } + + placement = typeof this.options.placement == 'function' ? + this.options.placement.call(this, $tip[0], this.$element[0]) : + this.options.placement + + inside = /in/.test(placement) + + $tip + .remove() + .css({ top: 0, left: 0, display: 'block' }) + .appendTo(inside ? this.$element : document.body) + + pos = this.getPosition(inside) + + actualWidth = $tip[0].offsetWidth + actualHeight = $tip[0].offsetHeight + + switch (inside ? placement.split(' ')[1] : placement) { + case 'bottom': + tp = {top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2} + break + case 'top': + tp = {top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2} + break + case 'left': + tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth} + break + case 'right': + tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width} + break + } + + $tip + .css(tp) + .addClass(placement) + .addClass('in') + } + } + + , setContent: function () { + var $tip = this.tip() + $tip.find('.tooltip-inner').html(this.getTitle()) + $tip.removeClass('fade in top bottom left right') + } + + , hide: function () { + var that = this + , $tip = this.tip() + + $tip.removeClass('in') + + function removeWithAnimation() { + var timeout = setTimeout(function () { + $tip.off($.support.transition.end).remove() + }, 500) + + $tip.one($.support.transition.end, function () { + clearTimeout(timeout) + $tip.remove() + }) + } + + $.support.transition && this.$tip.hasClass('fade') ? + removeWithAnimation() : + $tip.remove() + } + + , fixTitle: function () { + var $e = this.$element + if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') { + $e.attr('data-original-title', $e.attr('title') || '').removeAttr('title') + } + } + + , hasContent: function () { + return this.getTitle() + } + + , getPosition: function (inside) { + return $.extend({}, (inside ? {top: 0, left: 0} : this.$element.offset()), { + width: this.$element[0].offsetWidth + , height: this.$element[0].offsetHeight + }) + } + + , getTitle: function () { + var title + , $e = this.$element + , o = this.options + + title = $e.attr('data-original-title') + || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title) + + title = (title || '').toString().replace(/(^\s*|\s*$)/, "") + + return title + } + + , tip: function () { + return this.$tip = this.$tip || $(this.options.template) + } + + , validate: function () { + if (!this.$element[0].parentNode) { + this.hide() + this.$element = null + this.options = null + } + } + + , enable: function () { + this.enabled = true + } + + , disable: function () { + this.enabled = false + } + + , toggleEnabled: function () { + this.enabled = !this.enabled + } + + , toggle: function () { + this[this.tip().hasClass('in') ? 'hide' : 'show']() + } + + } + + + /* TOOLTIP PLUGIN DEFINITION + * ========================= */ + + $.fn.tooltip = function ( option ) { + return this.each(function () { + var $this = $(this) + , data = $this.data('tooltip') + , options = typeof option == 'object' && option + if (!data) $this.data('tooltip', (data = new Tooltip(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + $.fn.tooltip.Constructor = Tooltip + + $.fn.tooltip.defaults = { + animation: true + , delay: 0 + , selector: false + , placement: 'top' + , trigger: 'hover' + , title: '' + , template: '
' + } + +}( window.jQuery ); \ No newline at end of file