Add initfest views and assets
This commit is contained in:
parent
f47cbd02a3
commit
6c9bdf0cec
|
@ -1,4 +1,10 @@
|
||||||
module ApplicationHelper
|
module ApplicationHelper
|
||||||
|
def locale_collection
|
||||||
|
I18n.available_locales.map do |locale|
|
||||||
|
[t("locales.#{locale}"), locale]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def action_buttons(conference, record, actions = [:index, :show, :edit, :destroy])
|
def action_buttons(conference, record, actions = [:index, :show, :edit, :destroy])
|
||||||
klass = record.class
|
klass = record.class
|
||||||
output = ''
|
output = ''
|
||||||
|
|
|
@ -5,6 +5,10 @@ Rails.application.config.assets.version = '1.0'
|
||||||
|
|
||||||
# Add additional assets to the asset load path
|
# Add additional assets to the asset load path
|
||||||
# Rails.application.config.assets.paths << Emoji.images_path
|
# Rails.application.config.assets.paths << Emoji.images_path
|
||||||
|
Rails.application.config.assets.paths << 'lib/initfest/assets/images'
|
||||||
|
Rails.application.config.assets.paths << 'lib/initfest/assets/javascripts'
|
||||||
|
Rails.application.config.assets.paths << 'lib/initfest/assets/stylesheets'
|
||||||
|
Rails.application.config.assets.precompile << /\.(?:png|jpg|jpeg|gif)\z/
|
||||||
|
|
||||||
# Precompile additional assets.
|
# Precompile additional assets.
|
||||||
# application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
|
# application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
|
||||||
|
|
|
@ -30,23 +30,13 @@ bg:
|
||||||
biography: Опишете се с няколко изречения, говорейки за себе си в трето лице :)
|
biography: Опишете се с няколко изречения, говорейки за себе си в трето лице :)
|
||||||
github: Потребителското Ви име в Github
|
github: Потребителското Ви име в Github
|
||||||
twitter: Потребителското Ви име в Twitter
|
twitter: Потребителското Ви име в Twitter
|
||||||
lecture:
|
event:
|
||||||
title: Заглавието на лекцията Ви
|
title: Заглавието на събитието Ви
|
||||||
subtitle: Подзаглавието на лекцията Ви (ако има такова)
|
subtitle: Подзаглавието на събитието Ви (ако има такова)
|
||||||
track_id: Потокът от лекции, в който искате да попадне лекцията Ви
|
track: Потокът от лекции, в който искате да попадне събитието Ви
|
||||||
length: Продължителността на лекция може да бъде от 40 до 45 минути
|
length: Продължителността на събитието може да бъде от 40 до 45 минути
|
||||||
language: Език, на който ще бъде водена лекцията
|
language: Език, на който ще бъде водено събитието
|
||||||
abstract: Резюме на лекцията, което да може да бъде прочетено от посетителите (1 абзац)
|
abstract: Резюме на събитието, което да може да бъде прочетено от посетителите (1 абзац)
|
||||||
description: Подробно описание на лекцията (няколко абзаца)
|
description: Подробно описание на събитието (няколко абзаца)
|
||||||
notes: Забележки, които искате да споделите с организаторския екип
|
notes: Забележки, които искате да споделите с организаторския екип
|
||||||
agreement: Отбележете съгласни ли сте с това лекцията Ви да бъде записана и публикувана под лиценз CC-BY-ND (Creative Commons – Attribution – No Derivatives)
|
agreement: Отбележете съгласни ли сте с това събитието Ви да бъде записано и публикувано под лиценз CC-BY-ND (Creative Commons – Attribution – No Derivatives)
|
||||||
workshop:
|
|
||||||
title: Заглавието на уъркшопа Ви
|
|
||||||
subtitle: Подзаглавието на уъркшопа Ви (ако има такова)
|
|
||||||
track_id: Потокът от уъркшопи, в който искате да попадне уъркшопа Ви
|
|
||||||
length: Продължителността на всеки уъркшоп може да бъде от 30 до 120 минути
|
|
||||||
language: Език, на който ще бъде воден уъркшопа
|
|
||||||
abstract: Резюме на уъркшопа, което да може да бъде прочетено от посетителите (1 абзац)
|
|
||||||
description: Подробно описание на уъркшопа (няколко абзаца)
|
|
||||||
notes: Забележки, които искате да споделите с организаторския екип
|
|
||||||
agreement: Отбележете съгласни ли сте с това уъркшопът Ви да бъде записан и публикуван под лиценз CC-BY-ND (Creative Commons – Attribution – No Derivatives)
|
|
|
@ -5,3 +5,77 @@ bg:
|
||||||
see_details: Повече информация
|
see_details: Повече информация
|
||||||
user:
|
user:
|
||||||
info: Информация за потребител
|
info: Информация за потребител
|
||||||
|
welcome:
|
||||||
|
submit_event: "Предложи %{event_type}"
|
||||||
|
home_title: "%{conference} - зов за лектори"
|
||||||
|
what_we_ask: 'Бихме искали да получим предложенията Ви за лекции и уъркшопи, принадлежащи към следните категории до 30 септември 2014г.:'
|
||||||
|
license_notice: 'Имайте предвид, че презентациите ви впоследствие ще бъдат публикувани с лиценз CC-BY-ND (Creative Commons – Attribution – No derivatives).'
|
||||||
|
submit_event: Предложи %{event_type}
|
||||||
|
resend_instructions_header: Повторно изпращане на инструкции за потвърждаване на акаунт
|
||||||
|
resend_instructions_btn: Изпрати отново инструкциите
|
||||||
|
|
||||||
|
enter: Вход
|
||||||
|
login: Вход
|
||||||
|
registration: Регистрация
|
||||||
|
lostpass: Забравена парола?
|
||||||
|
did_not_get_confirmation: Не сте получили инструкции за потвърждение?
|
||||||
|
did_not_get_unlock: Не сте получили инструкции за отключване?
|
||||||
|
change_pass: Промяна на парола
|
||||||
|
send_lostpass_instructions: Изпрати ми инструкции за промяна на парола
|
||||||
|
|
||||||
|
login_data: Данни за вход в системата
|
||||||
|
login_with: "Влез с %{with}"
|
||||||
|
|
||||||
|
speaker_profile: Лекторски профил
|
||||||
|
please_fill_in_your_speaker_profile: Моля, попълнете данните в лекторския си профил.
|
||||||
|
expected_validation: "Очаква се потвърждение на: %{email}"
|
||||||
|
pass_update_hint1: Не попълвайте, ако не желаете да промените паролата си
|
||||||
|
pass_update_hint2: Попълнете, ако искате да промените паролата или e-mail адреса си.
|
||||||
|
update: Обнови
|
||||||
|
|
||||||
|
resend_unlock_instructions_title: Изпрати отново инструкции за отключване
|
||||||
|
|
||||||
|
edit_speaker_profile: Редакция на профил
|
||||||
|
|
||||||
|
edit_workshop: Редакция на уъркшоп
|
||||||
|
|
||||||
|
edit_title: "поток: „%{track}“, продължителност: %{len} мин."
|
||||||
|
abstract: Резюме
|
||||||
|
description: Описание
|
||||||
|
edit: Редактирай
|
||||||
|
|
||||||
|
new_workshop_title: Предложи нов уъркшоп
|
||||||
|
|
||||||
|
my_workshops: Моите предложения за уъркшопи
|
||||||
|
no_workshops_submitted: Все още не сте предложили уъркшоп
|
||||||
|
|
||||||
|
edit_talk: Редакция на лекция
|
||||||
|
|
||||||
|
submit_talk_header: Предложи нова лекция
|
||||||
|
|
||||||
|
my_talks: Моите предложения за лекции
|
||||||
|
no_talks_submitted: Все още не сте предложили лекция
|
||||||
|
|
||||||
|
hello: "Здравейте, %{name}"
|
||||||
|
account_locked: Акаунтът Ви беше заключен поради голям брой неуспешни опити за влизане в него.
|
||||||
|
click_to_unlock: 'Кликнете линкът отдолу, за да го отключите:'
|
||||||
|
|
||||||
|
welcome: "Добре дошли, %{name}"
|
||||||
|
confirm_by_clicking: Можете да потвърдите акаунта си, като кликнете на линка отдолу
|
||||||
|
|
||||||
|
someone_requested_passreset: Някой поиска линк за промяна на парола на акаунта Ви. Паролата може да бъде променена от линкът отдолу.
|
||||||
|
do_not_want_pass_reset1: Ако не желаете да смените паролата си, моля изтрийте това писмо.
|
||||||
|
do_not_want_pass_reset2: Паролата Ви няма да бъде променена, докато не кликнете горния линк и не въведете нова парола.
|
||||||
|
|
||||||
|
home: Начало
|
||||||
|
talks: Лекции
|
||||||
|
workshops: Уъркшопи
|
||||||
|
logout: Изход
|
||||||
|
|
||||||
|
of_motto: да споделим свободата
|
||||||
|
|
||||||
|
meta_data: "Език: %{language}, поток: „%{track}“, продължителност: %{length} мин."
|
||||||
|
suggestion_and_speaker_count: "%{suggestions} предложения от %{speakers} лектори"
|
||||||
|
|
||||||
|
lecture_was_successfully_confirmed: "Лекцията беше потвърдена успешно"
|
||||||
|
workshop_was_successfully_confirmed: "Уъркшопът беше потвърден успешно"
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 462 B |
Binary file not shown.
After Width: | Height: | Size: 599 B |
Binary file not shown.
After Width: | Height: | Size: 8.7 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.2 KiB |
|
@ -0,0 +1,15 @@
|
||||||
|
// This is a manifest file that'll be compiled into application.js, which will include all the files
|
||||||
|
// listed below.
|
||||||
|
//
|
||||||
|
// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
|
||||||
|
// or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
|
||||||
|
//
|
||||||
|
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
|
||||||
|
// compiled file.
|
||||||
|
//
|
||||||
|
// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
|
||||||
|
// about supported directives.
|
||||||
|
//
|
||||||
|
//= require jquery
|
||||||
|
//= require jquery_ujs
|
||||||
|
//= require_tree .
|
|
@ -0,0 +1,137 @@
|
||||||
|
.alert-error {
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input {
|
||||||
|
position: relative;
|
||||||
|
margin: 0 0 1em 0;
|
||||||
|
border-top: 0.1em dotted #999;
|
||||||
|
padding: 1em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input label {
|
||||||
|
font-size: 1em;
|
||||||
|
display: block;
|
||||||
|
width: 12em;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input {
|
||||||
|
input.string, input.email, input.password, select.select, input.numeric {
|
||||||
|
font-size: 1em;
|
||||||
|
width: 20em;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
textarea {
|
||||||
|
height: 15em;
|
||||||
|
width: 45em;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
padding: 5px;
|
||||||
|
display: block;
|
||||||
|
border: 1px solid #CCC;
|
||||||
|
background-color: #F1F1F1;
|
||||||
|
margin-left: 12em;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.input label.boolean {
|
||||||
|
margin-left: 12em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input .hint, .input .error {
|
||||||
|
display: block;
|
||||||
|
clear: both;
|
||||||
|
font-size: 0.75em;
|
||||||
|
font-style: italic;
|
||||||
|
width: 20em;
|
||||||
|
margin: 0 0 0 16em;
|
||||||
|
padding: 1em 0 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input .error {
|
||||||
|
font-style: normal;
|
||||||
|
padding: 1em 0 0 0;
|
||||||
|
color: #F00;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input .error::before {
|
||||||
|
content: "⇧";
|
||||||
|
display: inline-block;
|
||||||
|
font-size: 2em;
|
||||||
|
margin: 0 0.2em 0 0;
|
||||||
|
transform: translate(0, 0.1em);
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn {
|
||||||
|
display: block;
|
||||||
|
margin: 2em 0 0 13em;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* styling of the button */
|
||||||
|
.btn {
|
||||||
|
background: #233e83;
|
||||||
|
padding: 0.4em 0.8em;
|
||||||
|
border-radius: 0.2em;
|
||||||
|
color: #FFF;
|
||||||
|
border: none;
|
||||||
|
border-bottom: 0.2em solid #7A95DC;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: background 200ms, border 200ms, transform 200ms;
|
||||||
|
-webkit-transition: background 200ms, border 200ms, transform 200ms;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn:hover {
|
||||||
|
background: #152551;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn:active {
|
||||||
|
background: #597AD2;
|
||||||
|
border-bottom: 0.2em solid #000;
|
||||||
|
transform: translate(0, 0.1em);
|
||||||
|
-webkit-transform: translate(0, 0.1em);
|
||||||
|
}
|
||||||
|
|
||||||
|
.centered {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.large {
|
||||||
|
padding: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-link {
|
||||||
|
background: #233e83;
|
||||||
|
padding: 0.4em 0.8em;
|
||||||
|
border-radius: 0.2em;
|
||||||
|
color: #FFF;
|
||||||
|
border: none;
|
||||||
|
border-bottom: 0.2em solid #7A95DC;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: background 200ms, border 200ms, transform 200ms;
|
||||||
|
-webkit-transition: background 200ms, border 200ms, transform 200ms;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-link:link, .btn-link:active, .btn-link:visited {
|
||||||
|
color: #FFF;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-link:hover {
|
||||||
|
background: #152551;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-link:active {
|
||||||
|
background: #597AD2;
|
||||||
|
border-bottom: 0.2em solid #000;
|
||||||
|
transform: translate(0, 0.1em);
|
||||||
|
-webkit-transform: translate(0, 0.1em);
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-link-large {
|
||||||
|
font-size: 2em;
|
||||||
|
}
|
|
@ -0,0 +1,8 @@
|
||||||
|
@import "font-awesome-sprockets";
|
||||||
|
@import "font-awesome";
|
||||||
|
|
||||||
|
@import 'initfest/styles';
|
||||||
|
@import 'initfest/forms';
|
||||||
|
@import 'initfest/flash_messages';
|
||||||
|
|
||||||
|
nav { background-image: image-url('initfest/navbg.jpg'); }
|
|
@ -0,0 +1,18 @@
|
||||||
|
#flash_messages {
|
||||||
|
border: 1px solid #CCC;
|
||||||
|
background-color: #F1F1F1;
|
||||||
|
padding: 10px;
|
||||||
|
margin: 20px 100px 10px 100px;
|
||||||
|
|
||||||
|
div {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notice {
|
||||||
|
color: green;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert {
|
||||||
|
color: orange;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,827 @@
|
||||||
|
/* cyrillic-ext */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo'), url(http://fonts.gstatic.com/s/arimo/v8/an78_18DAUCSU6a4qacRuA.woff2) format('woff2');
|
||||||
|
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||||
|
}
|
||||||
|
/* cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo'), url(http://fonts.gstatic.com/s/arimo/v8/4NN7UQ_VsRBn7NDD9HKUPw.woff2) format('woff2');
|
||||||
|
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||||
|
}
|
||||||
|
/* greek-ext */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo'), url(http://fonts.gstatic.com/s/arimo/v8/ye-fuRt_0mKrPeIp6Mwa8A.woff2) format('woff2');
|
||||||
|
unicode-range: U+1F00-1FFF;
|
||||||
|
}
|
||||||
|
/* greek */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo'), url(http://fonts.gstatic.com/s/arimo/v8/VF6T-UwCT6WyIiUKP6AykQ.woff2) format('woff2');
|
||||||
|
unicode-range: U+0370-03FF;
|
||||||
|
}
|
||||||
|
/* vietnamese */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo'), url(http://fonts.gstatic.com/s/arimo/v8/eSHy7hCA8QR4qTF-59v60g.woff2) format('woff2');
|
||||||
|
unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
|
||||||
|
}
|
||||||
|
/* latin-ext */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo'), url(http://fonts.gstatic.com/s/arimo/v8/V41d6938Z8eBLYL302F8Ig.woff2) format('woff2');
|
||||||
|
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||||
|
}
|
||||||
|
/* latin */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo'), url(http://fonts.gstatic.com/s/arimo/v8/chnpHRvNNCWcZBKRQ4gVug.woff2) format('woff2');
|
||||||
|
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||||
|
}
|
||||||
|
/* cyrillic-ext */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700;
|
||||||
|
src: local('Arimo Bold'), local('Arimo-Bold'), url(http://fonts.gstatic.com/s/arimo/v8/ar6XjGD_YvbpY9XD5YxKTBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||||
|
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||||
|
}
|
||||||
|
/* cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700;
|
||||||
|
src: local('Arimo Bold'), local('Arimo-Bold'), url(http://fonts.gstatic.com/s/arimo/v8/XzFO_hPcAZmADxw_2htokBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||||
|
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||||
|
}
|
||||||
|
/* greek-ext */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700;
|
||||||
|
src: local('Arimo Bold'), local('Arimo-Bold'), url(http://fonts.gstatic.com/s/arimo/v8/Tq4Zh2K0uru54pu6hyua9BTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||||
|
unicode-range: U+1F00-1FFF;
|
||||||
|
}
|
||||||
|
/* greek */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700;
|
||||||
|
src: local('Arimo Bold'), local('Arimo-Bold'), url(http://fonts.gstatic.com/s/arimo/v8/gRIQMcBGUlcKSvTGaO9yHBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||||
|
unicode-range: U+0370-03FF;
|
||||||
|
}
|
||||||
|
/* vietnamese */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700;
|
||||||
|
src: local('Arimo Bold'), local('Arimo-Bold'), url(http://fonts.gstatic.com/s/arimo/v8/u0Tw4Txbkc9Av4uzN1j1aBTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||||
|
unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
|
||||||
|
}
|
||||||
|
/* latin-ext */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700;
|
||||||
|
src: local('Arimo Bold'), local('Arimo-Bold'), url(http://fonts.gstatic.com/s/arimo/v8/XCmwOdi6K62tkWaszbVGURTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||||
|
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||||
|
}
|
||||||
|
/* latin */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700;
|
||||||
|
src: local('Arimo Bold'), local('Arimo-Bold'), url(http://fonts.gstatic.com/s/arimo/v8/27rE5lMk9EHpLbxiIuGd0BTbgVql8nDJpwnrE27mub0.woff2) format('woff2');
|
||||||
|
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||||
|
}
|
||||||
|
/* cyrillic-ext */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo Italic'), local('Arimo-Italic'), url(http://fonts.gstatic.com/s/arimo/v8/-lqiBwxkYHykb59Lvn7rk_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||||
|
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
|
||||||
|
}
|
||||||
|
/* cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo Italic'), local('Arimo-Italic'), url(http://fonts.gstatic.com/s/arimo/v8/tvCMF1Qlf0MEvcc7JEzrhfY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||||
|
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
|
||||||
|
}
|
||||||
|
/* greek-ext */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo Italic'), local('Arimo-Italic'), url(http://fonts.gstatic.com/s/arimo/v8/aKQL0kir7sjNM0_YzHc9yvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||||
|
unicode-range: U+1F00-1FFF;
|
||||||
|
}
|
||||||
|
/* greek */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo Italic'), local('Arimo-Italic'), url(http://fonts.gstatic.com/s/arimo/v8/c6Ldt38oFMowvdIZIi9CaPY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||||
|
unicode-range: U+0370-03FF;
|
||||||
|
}
|
||||||
|
/* vietnamese */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo Italic'), local('Arimo-Italic'), url(http://fonts.gstatic.com/s/arimo/v8/Phj51JGRBuPcxq7i7-qcHPY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||||
|
unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
|
||||||
|
}
|
||||||
|
/* latin-ext */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo Italic'), local('Arimo-Italic'), url(http://fonts.gstatic.com/s/arimo/v8/-CSRdP_Aes2aBSIDGwIm6vY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||||
|
unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
|
||||||
|
}
|
||||||
|
/* latin */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Arimo';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Arimo Italic'), local('Arimo-Italic'), url(http://fonts.gstatic.com/s/arimo/v8/W9ndJDdcIndrj-dqFXLbVvY6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
|
||||||
|
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
font-size: 16px;
|
||||||
|
font-family: 'Arimo', sans-serif;
|
||||||
|
}
|
||||||
|
@media all and (max-width: 400px) {
|
||||||
|
body {
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
max-width: 960px;
|
||||||
|
margin: 0 auto;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
p {
|
||||||
|
margin: 0 0 1em 0;
|
||||||
|
padding: 0;
|
||||||
|
line-height: 1.5em;
|
||||||
|
font-weight: 300;
|
||||||
|
}
|
||||||
|
h1.big {
|
||||||
|
font-size: 2.4em;
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0.6em;
|
||||||
|
padding-top: 0;
|
||||||
|
}
|
||||||
|
a {
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
a:hover {
|
||||||
|
color: #7789b5;
|
||||||
|
}
|
||||||
|
a img {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
h3 small {
|
||||||
|
font-size: 0.65em;
|
||||||
|
}
|
||||||
|
.tac {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
@media all and (max-width: 960px) {
|
||||||
|
.content {
|
||||||
|
padding: 0 1em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.left { float: left; }
|
||||||
|
.right { float: right; }
|
||||||
|
.cf::after, .cf::before {
|
||||||
|
content: " ";
|
||||||
|
clear: both;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Navigation */
|
||||||
|
nav {
|
||||||
|
position: relative;
|
||||||
|
height: 84px;
|
||||||
|
background: url("../img/navbg.jpg") repeat-x;
|
||||||
|
}
|
||||||
|
nav ul {
|
||||||
|
float: right;
|
||||||
|
list-style: none;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
nav ul li {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav .menu > li {
|
||||||
|
float: left;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav .menu > li {
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
transition: border-top 200ms;
|
||||||
|
-webkit-transition: border-top 200ms;
|
||||||
|
border-top: 0 solid #FFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav .menu > li:hover {
|
||||||
|
border-top: 0.4em solid #A8D6FF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu li.fa::before {
|
||||||
|
display: block;
|
||||||
|
padding: 30px 4px 0 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.menu li.fa a {
|
||||||
|
padding-top: 0;
|
||||||
|
position: absolute;
|
||||||
|
display: block;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
height: 52px;
|
||||||
|
width: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav ul a {
|
||||||
|
color: #000;
|
||||||
|
text-decoration: none;
|
||||||
|
display: block;
|
||||||
|
padding: 1.5em 0.4em;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav ul .sub-menu {
|
||||||
|
display: none;
|
||||||
|
position: absolute;
|
||||||
|
background: #fff;
|
||||||
|
width: 200px;
|
||||||
|
left: 50%;
|
||||||
|
margin-left: -100px;
|
||||||
|
box-shadow: 0 3px 5px -3px #000
|
||||||
|
}
|
||||||
|
|
||||||
|
nav ul li:hover .sub-menu {
|
||||||
|
display: block;
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav ul .sub-menu li,
|
||||||
|
nav ul .sub-menu li a { display: block; width: 100%; }
|
||||||
|
|
||||||
|
nav ul .sub-menu li a { padding: 1em 0; text-align: center; }
|
||||||
|
|
||||||
|
nav ul .sub-menu li { border-bottom: 1px solid #ccc; }
|
||||||
|
|
||||||
|
nav ul .separator {
|
||||||
|
display: block;
|
||||||
|
width: 0.05em;
|
||||||
|
background: #B7B7B7;
|
||||||
|
height: 2em;
|
||||||
|
margin: 1.1em 0.4em 0 0.4em;
|
||||||
|
}
|
||||||
|
nav .logo {
|
||||||
|
display: block;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
nav .selected {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
@media all and (max-width: 840px) {
|
||||||
|
nav .logo {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
nav .logo img {
|
||||||
|
display: block;
|
||||||
|
max-height: 100%;
|
||||||
|
}
|
||||||
|
nav {
|
||||||
|
height: auto;
|
||||||
|
background: none;
|
||||||
|
padding: 0.4em 0;
|
||||||
|
border-bottom: 0.2em solid #d7ecff;
|
||||||
|
}
|
||||||
|
nav ul {
|
||||||
|
float: none;
|
||||||
|
}
|
||||||
|
nav ul a {
|
||||||
|
padding: 0.2em;
|
||||||
|
}
|
||||||
|
nav ul .separator {
|
||||||
|
display: block;
|
||||||
|
width: 0.05em;
|
||||||
|
background: #B7B7B7;
|
||||||
|
height: 1em;
|
||||||
|
margin: 0.2em 0.2em 0 0.2em;
|
||||||
|
}
|
||||||
|
nav ul a:hover {
|
||||||
|
border-top: 0 solid #A8D6FF;
|
||||||
|
}
|
||||||
|
nav .fa-twitter, nav .fa-facebook, nav .fa-rss {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Banner */
|
||||||
|
|
||||||
|
.banner {
|
||||||
|
height: 258px;
|
||||||
|
background: url("../img/banner.jpg") no-repeat;
|
||||||
|
background-size: cover;
|
||||||
|
padding: 0.2em 0 0 0;
|
||||||
|
}
|
||||||
|
.banner img {
|
||||||
|
display: block;
|
||||||
|
max-width: 100%;
|
||||||
|
height: 247px;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
@media all and (max-width: 840px) {
|
||||||
|
.banner { display: none; }
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Grid */
|
||||||
|
.grid {
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.grid::after {
|
||||||
|
content: " ";
|
||||||
|
clear: both;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.grid .col2 {
|
||||||
|
width: 50%;
|
||||||
|
float: left;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
.grid .col2+.col2, .grid .col3+.col3, .grid .col4+.col4 {
|
||||||
|
padding: 0 0 0 1em;
|
||||||
|
}
|
||||||
|
.grid .col3 {
|
||||||
|
width: 33%;
|
||||||
|
float: left;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
.grid .col3:nth-child(3n + 1) {
|
||||||
|
clear: both;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.grid .col4 {
|
||||||
|
width: 25%;
|
||||||
|
float: left;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
.grid .col4:nth-child(4n + 1) {
|
||||||
|
clear: both;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.grid .col-left {
|
||||||
|
width: 70%;
|
||||||
|
float: left;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0 1.6em 0 0;
|
||||||
|
}
|
||||||
|
.grid .col-right {
|
||||||
|
width: 30%;
|
||||||
|
float: left;
|
||||||
|
margin-bottom: 2em;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
.grid .col-right .content {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media all and (max-width: 600px) {
|
||||||
|
.grid .col2, .grid .col3, .grid .col4, .grid .col-left, .grid .col-right {
|
||||||
|
width: 100%;
|
||||||
|
float: none;
|
||||||
|
padding: 0 0 1em 0;
|
||||||
|
}
|
||||||
|
.grid .col2+.col2, .grid .col3+.col3, .grid .col4+.col4 {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Separator */
|
||||||
|
.separator {
|
||||||
|
width: 100%;
|
||||||
|
margin: 1.8em 0;
|
||||||
|
height: 0.1em;
|
||||||
|
background: #7789b5;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* News */
|
||||||
|
h4 {
|
||||||
|
margin: 1em 0 0 0;
|
||||||
|
padding: 0;
|
||||||
|
height: 70px;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.info + p {
|
||||||
|
height: 240px;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.entry-content {
|
||||||
|
padding: 0 0 2em 0;
|
||||||
|
}
|
||||||
|
.info {
|
||||||
|
color: #8F8F8F;
|
||||||
|
font-size: 0.6em;
|
||||||
|
margin: 0 0 1em 0;
|
||||||
|
}
|
||||||
|
.button {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 0.4em 0.6em;
|
||||||
|
border-radius: 0.4em;
|
||||||
|
background: #DEDEDE;
|
||||||
|
font-size: 0.8em;
|
||||||
|
margin: 1em 0 1em 0;
|
||||||
|
text-decoration: none;
|
||||||
|
border-bottom: 0.15em solid #999;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Footer */
|
||||||
|
|
||||||
|
footer {
|
||||||
|
margin: -0.3em 0 0;
|
||||||
|
padding-top: 1em;
|
||||||
|
padding-bottom: 1em;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
background: #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer h3 {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer .content li {
|
||||||
|
list-style: none;
|
||||||
|
margin-bottom: 11px;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer .content li a {
|
||||||
|
margin-left: 4px;
|
||||||
|
color: #000;
|
||||||
|
font-size: 16px;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
#copyright {
|
||||||
|
width: 75%;
|
||||||
|
margin: 15px auto 0;
|
||||||
|
padding-top: 40px;
|
||||||
|
border-top: 1px solid #999;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Sub navigation */
|
||||||
|
.subnav {
|
||||||
|
margin-top: 1.6em;
|
||||||
|
list-style: none;
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
.subnav .menu {
|
||||||
|
margin-left: -2.2em;
|
||||||
|
}
|
||||||
|
.subnav li {
|
||||||
|
float: left;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0 1em 0 0;
|
||||||
|
list-style: none outside;
|
||||||
|
}
|
||||||
|
.subnav li.selected {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.subnav a {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
@media all and (max-width: 960px) {
|
||||||
|
.subnav {
|
||||||
|
padding: 0 1em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Speaker */
|
||||||
|
.speaker {
|
||||||
|
position: relative;
|
||||||
|
margin: 0 0 2em 0;
|
||||||
|
}
|
||||||
|
.speaker::after {
|
||||||
|
content: " ";
|
||||||
|
clear: both;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.speaker > img {
|
||||||
|
/* width: 100px; */
|
||||||
|
float: left;
|
||||||
|
padding: 0.3em;
|
||||||
|
background: #FFF;
|
||||||
|
-moz-box-shadow: 0px 0px 1px 1px #999;
|
||||||
|
-webkit-box-shadow: 0px 0px 1px 1px #999;
|
||||||
|
box-shadow: 0px 0px 1px 1px #999;
|
||||||
|
margin: 0 1em 2em 0;
|
||||||
|
}
|
||||||
|
.speaker .icons {
|
||||||
|
text-align: center;
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0 0 0 0.1em;
|
||||||
|
}
|
||||||
|
.speaker .icons a {
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0 0.3em 0 0;
|
||||||
|
}
|
||||||
|
.speaker h3 {
|
||||||
|
margin: 0 0 0.4em 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Sponsors */
|
||||||
|
.sponsors-item {
|
||||||
|
padding: 0 0 2em 0;
|
||||||
|
}
|
||||||
|
.sponsors-item .col2 > img {
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0 0 2em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sponsors-frontpage a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 0 2.2em 1em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Plugins */
|
||||||
|
.gmp_map_opts {
|
||||||
|
float: none !important;
|
||||||
|
margin-top: 2em !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*********************************************
|
||||||
|
* GLOBAL STYLES (Small style changes)
|
||||||
|
*********************************************/
|
||||||
|
|
||||||
|
h1 { font-size: 1.8em; }
|
||||||
|
h2 { font-size: 1.8em; }
|
||||||
|
h3 { font-size: 1.6em; }
|
||||||
|
h4 { font-size: 1.4em; }
|
||||||
|
h5 { font-size: 1.2em; }
|
||||||
|
h6 { font-size: 1.0em; }
|
||||||
|
|
||||||
|
h1, h2, h3, h4, h5, h6 { font-weight: normal; }
|
||||||
|
|
||||||
|
a { color: #428bca; text-decoration: none; }
|
||||||
|
a:hover { text-decoration: underline; }
|
||||||
|
|
||||||
|
|
||||||
|
/*********************************************
|
||||||
|
* Navigation
|
||||||
|
*********************************************/
|
||||||
|
|
||||||
|
nav .menu > li { margin: 1px 10px; }
|
||||||
|
|
||||||
|
/*********************************************
|
||||||
|
* Tagline & Sponsors
|
||||||
|
*********************************************/
|
||||||
|
|
||||||
|
.col2.tagline { width: 70%; }
|
||||||
|
|
||||||
|
.col2.sponsors { width: 30%; }
|
||||||
|
|
||||||
|
.separator { margin: 2.4em 0; height: 1px; background: #DBDBDB; }
|
||||||
|
|
||||||
|
section.content.grid.homepage { margin-top: 2em; }
|
||||||
|
|
||||||
|
a.footer { color: #333; }
|
||||||
|
|
||||||
|
a.button { text-decoration: none; color: #333; }
|
||||||
|
|
||||||
|
a.button:hover { opacity: 0.8; }
|
||||||
|
|
||||||
|
/*********************************************
|
||||||
|
* Team members
|
||||||
|
*********************************************/
|
||||||
|
|
||||||
|
.members {
|
||||||
|
margin: 0 0 2em 0;
|
||||||
|
}
|
||||||
|
.member {
|
||||||
|
margin: 0 0 1em 0;
|
||||||
|
}
|
||||||
|
.member a {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.member a > img {
|
||||||
|
width: 100px;
|
||||||
|
max-width: 100%;
|
||||||
|
padding: 0.3em;
|
||||||
|
background: #FFF;
|
||||||
|
-moz-box-shadow: 0px 0px 1px 1px #999;
|
||||||
|
-webkit-box-shadow: 0px 0px 1px 1px #999;
|
||||||
|
box-shadow: 0px 0px 1px 1px #999;
|
||||||
|
}
|
||||||
|
.member span {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.member .icons a {
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0 0.3em 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* from the old site */
|
||||||
|
.program a:visited {
|
||||||
|
color:#004B91;
|
||||||
|
}
|
||||||
|
|
||||||
|
.program table {
|
||||||
|
width: 99%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.program h2 {
|
||||||
|
}
|
||||||
|
|
||||||
|
.program table, .program td, .program tr, .program th {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
.program table td.time {
|
||||||
|
width: 130px;
|
||||||
|
vertical-align: baseline;
|
||||||
|
}
|
||||||
|
.program table caption {
|
||||||
|
font-size: 120%;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.program table td, .program table th {
|
||||||
|
padding: 1em 0;
|
||||||
|
}
|
||||||
|
/*********************************************
|
||||||
|
* Team members
|
||||||
|
*********************************************/
|
||||||
|
.schedule {
|
||||||
|
width: 100%;
|
||||||
|
font-size: 0.8em;
|
||||||
|
margin: 0 0 3em 0;
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
.schedule-legend {
|
||||||
|
width: 300px;
|
||||||
|
}
|
||||||
|
.schedule th, .schedule td {
|
||||||
|
border-bottom: 1px solid #000;
|
||||||
|
border-right: 1px dotted #999;
|
||||||
|
padding: 0.6em 0.4em;
|
||||||
|
text-align: center;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
.schedule-legend td {
|
||||||
|
padding: 0.4em;
|
||||||
|
}
|
||||||
|
.schedule a {
|
||||||
|
border-bottom: dotted 1px #000;
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
.schedule a:hover {
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
.schedule tr td:first-child {
|
||||||
|
min-width: 82px;
|
||||||
|
}
|
||||||
|
.schedule-day {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.schedule-empty {
|
||||||
|
background: #FFF;
|
||||||
|
}
|
||||||
|
.schedule-social {
|
||||||
|
background: #EDD7A7;
|
||||||
|
}
|
||||||
|
.schedule-technical {
|
||||||
|
background: #A4D183;
|
||||||
|
}
|
||||||
|
.schedule-workshop {
|
||||||
|
background: #E2E0E9;
|
||||||
|
}
|
||||||
|
.schedule-en::after {
|
||||||
|
content: " ";
|
||||||
|
background: url('../img/en_US.png');
|
||||||
|
width: 16px;
|
||||||
|
height: 11px;
|
||||||
|
display: block;
|
||||||
|
margin: 0.3em auto 0.3em auto;
|
||||||
|
}
|
||||||
|
.schedule-bg::after {
|
||||||
|
content: " ";
|
||||||
|
background: url('../img/bg_BG.png');
|
||||||
|
width: 16px;
|
||||||
|
height: 11px;
|
||||||
|
display: block;
|
||||||
|
margin: 0.3em auto 0.3em auto;
|
||||||
|
}
|
||||||
|
.schedule-civic {
|
||||||
|
background: #E8AAAB;
|
||||||
|
}
|
||||||
|
.schedule-advanced-technical {
|
||||||
|
background: #91C4DF;
|
||||||
|
}
|
||||||
|
.schedule-open-biz {
|
||||||
|
background: #DECDCB;
|
||||||
|
}
|
||||||
|
.schedule-misc {
|
||||||
|
background: #B0E9EC;
|
||||||
|
}
|
||||||
|
.schedule-open-art {
|
||||||
|
background: #ED9134;
|
||||||
|
}
|
||||||
|
.schedule-avatar {
|
||||||
|
float: left;
|
||||||
|
padding: 0.3em;
|
||||||
|
background: #FFF;
|
||||||
|
-moz-box-shadow: 0px 0px 1px 1px #999;
|
||||||
|
-webkit-box-shadow: 0px 0px 1px 1px #999;
|
||||||
|
box-shadow: 0px 0px 1px 1px #999;
|
||||||
|
margin: 0 1em 2em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
p img {
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.front-page-sponsors {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.front-page-big-title h1 {
|
||||||
|
font-size: 1.4em;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.content.front-page-big-title {
|
||||||
|
padding: 1em 0 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
section.entry-meta {
|
||||||
|
font-size: 0.8em;
|
||||||
|
padding: 0 0 2em 0;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
footer.entry-footer {
|
||||||
|
padding: 1em;
|
||||||
|
border-radius: 0.4em;
|
||||||
|
background: #F0F0F0;
|
||||||
|
font-size: 0.8em;
|
||||||
|
}
|
||||||
|
.alignright {
|
||||||
|
display: inline;
|
||||||
|
float: right;
|
||||||
|
margin-left: 1.625em;
|
||||||
|
}
|
|
@ -0,0 +1,15 @@
|
||||||
|
- content_for(:title) { ":: #{t :resend_instructions_header}" }
|
||||||
|
|
||||||
|
h2.entry-title = t :resend_instructions_header
|
||||||
|
|
||||||
|
= simple_form_for(resource, wrapper: :default, as: :user, url: user_confirmation_path) do |f|
|
||||||
|
= f.error_notification
|
||||||
|
= f.full_error :confirmation_token
|
||||||
|
|
||||||
|
.form-inputs
|
||||||
|
= f.input :email, required: true, autofocus: true, hint: false
|
||||||
|
|
||||||
|
.form-actions
|
||||||
|
= f.button :submit, t(:resend_instructions_btn)
|
||||||
|
|
||||||
|
== render 'devise/shared/links'
|
|
@ -0,0 +1,18 @@
|
||||||
|
- content_for(:title) { ":: #{t :change_pass}" }
|
||||||
|
|
||||||
|
h2.entry-title = t :change_pass
|
||||||
|
|
||||||
|
= simple_form_for(resource, wrapper: :default, as: :user, url: user_password_path, html: { method: :put }) do |f|
|
||||||
|
= f.error_notification
|
||||||
|
|
||||||
|
= f.input :reset_password_token, as: :hidden
|
||||||
|
= f.full_error :reset_password_token
|
||||||
|
|
||||||
|
.form-inputs
|
||||||
|
= f.input :password, required: true, autofocus: true
|
||||||
|
= f.input :password_confirmation, required: true
|
||||||
|
|
||||||
|
.form-actions
|
||||||
|
= f.button :submit, t(:change_pass)
|
||||||
|
|
||||||
|
= render 'devise/shared/links'
|
|
@ -0,0 +1,14 @@
|
||||||
|
- content_for(:title) { ":: #{t :lostpass}" }
|
||||||
|
|
||||||
|
h2.entry-title = t :lostpass
|
||||||
|
|
||||||
|
= simple_form_for(resource, wrapper: :default, as: :user, url: user_password_path) do |f|
|
||||||
|
= f.error_notification
|
||||||
|
|
||||||
|
.form-inputs
|
||||||
|
= f.input :email, required: true, autofocus: true, hint: false
|
||||||
|
|
||||||
|
.form-actions
|
||||||
|
= f.button :submit, t(:send_lostpass_instructions)
|
||||||
|
|
||||||
|
== render 'devise/shared/links'
|
|
@ -0,0 +1,25 @@
|
||||||
|
- content_for(:title) { t :edit_speaker_profile }
|
||||||
|
|
||||||
|
= simple_form_for(resource, wrapper: :default, as: :user, url: user_registration_path, html: { method: :put, multipart: true }) do |f|
|
||||||
|
.form_inputs
|
||||||
|
/ h2
|
||||||
|
/ - if current_user.personal_profile(current_conference).present?
|
||||||
|
/ = link_to t(:personal_profile), edit_personal_profile_path
|
||||||
|
/ - else
|
||||||
|
/ = link_to t(:personal_profile), new_personal_profile_path
|
||||||
|
|
||||||
|
.form-inputs
|
||||||
|
h3.entry-title = t :login_data
|
||||||
|
= f.input :email, required: true
|
||||||
|
= f.input :language, collection: I18n.available_locales, required: true
|
||||||
|
|
||||||
|
- if devise_mapping.confirmable? && resource.pending_reconfirmation?
|
||||||
|
p
|
||||||
|
= t :expected_validation, email: resource.unconfirmed_email
|
||||||
|
|
||||||
|
= f.input :password, autocomplete: "off", hint: t(:pass_update_hint1), required: false
|
||||||
|
= f.input :password_confirmation, required: false
|
||||||
|
= f.input :current_password, hint: t(:pass_update_hint2), required: true
|
||||||
|
|
||||||
|
.form-actions
|
||||||
|
= f.button :submit, t(:update)
|
|
@ -0,0 +1,16 @@
|
||||||
|
- content_for(:title) { ":: #{t :registration}" }
|
||||||
|
|
||||||
|
h2.entry-title = t :registration
|
||||||
|
|
||||||
|
= simple_form_for(resource, wrapper: :default, as: :user, url: user_registration_path) do |f|
|
||||||
|
= f.error_notification
|
||||||
|
|
||||||
|
.form-inputs
|
||||||
|
= f.input :email, required: true, autofocus: true
|
||||||
|
= f.input :password, required: true
|
||||||
|
= f.input :password_confirmation, required: true
|
||||||
|
|
||||||
|
.form-actions
|
||||||
|
= f.button :submit
|
||||||
|
|
||||||
|
== render 'devise/shared/links'
|
|
@ -0,0 +1,14 @@
|
||||||
|
- content_for(:title) { "#{t :login}" }
|
||||||
|
|
||||||
|
h2.entry-title = t :login
|
||||||
|
|
||||||
|
= simple_form_for(resource, wrapper: :default, as: :user, url: user_session_path) do |f|
|
||||||
|
.form-inputs
|
||||||
|
= f.input :email, required: false, autofocus: true, hint: false
|
||||||
|
= f.input :password, required: false, hint: false
|
||||||
|
= f.input :remember_me, as: :boolean, wrapper: :default if devise_mapping.rememberable?
|
||||||
|
|
||||||
|
.form-actions
|
||||||
|
= f.button :submit, t(:login)
|
||||||
|
|
||||||
|
== render 'devise/shared/links'
|
|
@ -0,0 +1,15 @@
|
||||||
|
- if controller_name != 'sessions'
|
||||||
|
= link_to t(:enter), new_user_session_path
|
||||||
|
br
|
||||||
|
|
||||||
|
- if devise_mapping.registerable? && controller_name != 'registrations'
|
||||||
|
= link_to t(:registration), new_user_registration_path
|
||||||
|
br
|
||||||
|
|
||||||
|
- if devise_mapping.recoverable? && controller_name != 'passwords' && controller_name != 'registrations'
|
||||||
|
= link_to t(:lostpass), new_user_password_path
|
||||||
|
br
|
||||||
|
|
||||||
|
- if devise_mapping.confirmable? && controller_name != 'confirmations'
|
||||||
|
= link_to t(:did_not_get_confirmation), new_user_confirmation_path
|
||||||
|
br
|
|
@ -0,0 +1,22 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>
|
||||||
|
<% if content_for? :title %>
|
||||||
|
<%= yield :title %> |
|
||||||
|
<% end %>
|
||||||
|
<%= current_conference.try :title %>
|
||||||
|
</title>
|
||||||
|
<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1.0, maximum-scale=1.0">
|
||||||
|
<%= stylesheet_link_tag "initfest/application", media: "all" %>
|
||||||
|
<%= javascript_include_tag "initfest/application" %>
|
||||||
|
<%= csrf_meta_tags %>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<%= render 'public/shared/nav' %>
|
||||||
|
<section class="content">
|
||||||
|
<%= render 'public/shared/flash_messages' unless flash.empty? %>
|
||||||
|
<%= yield %>
|
||||||
|
</section>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1 @@
|
||||||
|
=> link_to t('views.welcome.submit_event', event_type: event_type.name.mb_chars.downcase), new_event_path(type: event_type.id), class: 'btn-link btn-link-large'
|
|
@ -0,0 +1,6 @@
|
||||||
|
li
|
||||||
|
p
|
||||||
|
strong
|
||||||
|
= track.name
|
||||||
|
span<> –
|
||||||
|
= track.description
|
|
@ -0,0 +1,14 @@
|
||||||
|
h1.entry-title = t :home_title, conference: current_conference.title
|
||||||
|
|
||||||
|
= simple_format current_conference.description
|
||||||
|
|
||||||
|
p = t :what_we_ask
|
||||||
|
|
||||||
|
ul
|
||||||
|
= render partial: 'track', collection: current_conference.tracks
|
||||||
|
|
||||||
|
p = t :license_notice
|
||||||
|
|
||||||
|
- if current_conference.call_for_participation.in_progress?
|
||||||
|
.centered.large
|
||||||
|
= render partial: 'event_type', collection: current_conference.event_types
|
|
@ -0,0 +1,24 @@
|
||||||
|
= simple_form_for @event, wrapper: :default do |form|
|
||||||
|
= form.input :event_type_id, as: :hidden, wrapper: false
|
||||||
|
|
||||||
|
h2= t('submit_event', event_type: @event.event_type.name)
|
||||||
|
|
||||||
|
p
|
||||||
|
= form.error_notification
|
||||||
|
|
||||||
|
.form-inputs
|
||||||
|
= form.input :title, autofocus: true
|
||||||
|
= form.input :subtitle
|
||||||
|
= form.association :track, wrapper: :default, collection: current_conference.tracks
|
||||||
|
|
||||||
|
-# TODO length is different for different types of events (translation problem)
|
||||||
|
= form.input :length
|
||||||
|
|
||||||
|
= form.input :language, as: :radio_buttons, collection: locale_collection, include_blank: false, wrapper: :default, checked: current_user.language
|
||||||
|
= form.input :abstract
|
||||||
|
= form.input :description
|
||||||
|
= form.input :notes
|
||||||
|
|
||||||
|
= form.input :agreement, as: :boolean, wrapper: :default
|
||||||
|
|
||||||
|
= form.button :submit
|
|
@ -0,0 +1,20 @@
|
||||||
|
= simple_form_for @profile, wrapper: :default, url: personal_profile_path do |f|
|
||||||
|
= f.error_notification
|
||||||
|
|
||||||
|
.form-inputs
|
||||||
|
.input.file.required.personal_profile_picture
|
||||||
|
= image_tag(@profile.picture.medium.url) if @profile.picture?
|
||||||
|
= f.input :picture, as: :file, required: true, wrapper: false
|
||||||
|
|
||||||
|
= f.hidden_field :picture_cache, class: 'image_preview', wrapper: false
|
||||||
|
= f.input :first_name, autofocus: true
|
||||||
|
= f.input :last_name
|
||||||
|
= f.input :public_email
|
||||||
|
= f.input :organisation
|
||||||
|
= f.input :github
|
||||||
|
= f.input :twitter
|
||||||
|
= f.input :mobile_phone, input_html: {value: @profile.mobile_phone.try(:phony_formatted, format: :international)}
|
||||||
|
= f.input :biography
|
||||||
|
|
||||||
|
.form-actions
|
||||||
|
= f.button :submit
|
|
@ -0,0 +1,5 @@
|
||||||
|
- content_for(:title) { ":: #{t :personal_profile}" }
|
||||||
|
|
||||||
|
h2.entry-title = t :personal_profile
|
||||||
|
|
||||||
|
= render 'form'
|
|
@ -0,0 +1,5 @@
|
||||||
|
- content_for(:title) { ":: #{t :personal_profile}" }
|
||||||
|
|
||||||
|
h2.entry-title = t :personal_profile
|
||||||
|
|
||||||
|
= render 'form'
|
|
@ -0,0 +1,3 @@
|
||||||
|
div#flash_messages
|
||||||
|
- flash.each do |key, value|
|
||||||
|
= content_tag :div, value, class: "flash #{key}"
|
|
@ -0,0 +1,31 @@
|
||||||
|
nav
|
||||||
|
.content.cf
|
||||||
|
= link_to root_path, class: 'logo' do
|
||||||
|
= image_tag 'initfest/logo.png', alt: 'OpenFest'
|
||||||
|
|
||||||
|
div
|
||||||
|
ul.menu
|
||||||
|
li
|
||||||
|
= link_to t('views.navigation.submit_event'), events_path
|
||||||
|
/ li
|
||||||
|
/ a href="#" = t('views.navigation.become_a_volunteer')
|
||||||
|
/ li
|
||||||
|
/ a href="#" = t('views.navigation.become_a_sponsor')
|
||||||
|
|
||||||
|
- unless user_signed_in?
|
||||||
|
== content_tag :li, class: [('current_page_item' if controller_name == 'sessions')] do
|
||||||
|
= link_to t(:login), new_user_session_path
|
||||||
|
- else
|
||||||
|
== content_tag :li, class: [('current_page_item' if controller_name == 'registrations')] do
|
||||||
|
= link_to t(:edit_speaker_profile), edit_user_registration_path
|
||||||
|
li
|
||||||
|
= link_to t(:logout), destroy_user_session_path, method: :delete
|
||||||
|
li
|
||||||
|
- if I18n.locale == :bg
|
||||||
|
= link_to url_for(request.query_parameters.merge(locale: 'en')), hreflang: 'en' do
|
||||||
|
img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAALCAIAAAD5gJpuAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHzSURBVHjaYkxOP8IAB//+Mfz7w8Dwi4HhP5CcJb/n/7evb16/APL/gRFQDiAAw3JuAgAIBEDQ/iswEERjGzBQLEru97ll0g0+3HvqMn1SpqlqGsZMsZsIe0SICA5gt5a/AGIEarCPtFh+6N/ffwxA9OvP/7//QYwff/6fZahmePeB4dNHhi+fGb59Y4zyvHHmCEAAAW3YDzQYaJJ93a+vX79aVf58//69fvEPlpIfnz59+vDhw7t37968efP3b/SXL59OnjwIEEAsDP+YgY53b2b89++/awvLn98MDi2cVxl+/vl6mituCtBghi9f/v/48e/XL86krj9XzwEEEENy8g6gu22rfn78+NGs5Ofr16+ZC58+fvyYwX8rxOxXr169fPny+fPn1//93bJlBUAAsQADZMEBxj9/GBxb2P/9+S/R8u3vzxuyaX8ZHv3j8/YGms3w8ycQARmi2eE37t4ACCDGR4/uSkrKAS35B3TT////wADOgLOBIaXIyjBlwxKAAGKRXjCB0SOEaeu+/y9fMnz4AHQxCP348R/o+l+//sMZQBNLEvif3AcIIMZbty7Ly6t9ZmXl+fXj/38GoHH/UcGfP79//BBiYHjy9+8/oUkNAAHEwt1V/vI/KBY/QSISFqM/GBg+MzB8A6PfYC5EFiDAABqgW776MP0rAAAAAElFTkSuQmCC" title="English" alt="English"
|
||||||
|
- elsif I18n.locale == :en
|
||||||
|
= link_to url_for(request.query_parameters.merge(locale: 'bg')), hreflang: 'bg' do
|
||||||
|
img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAALCAIAAAD5gJpuAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFgSURBVHjaYvz69SsDEvj37x+ERGbAwZ9//wACiAUoysXFBST///8P0QOm//+HU0jgxYsXAAHEAlP0H5nxHxtgZGQEWgIQQCx3Pt2RYZL5+/8vQobh/z8gBIN/MAhErEwst77dAgggRoZmhjKXskefH/359weIfv/7DUJ/f//6CyR//fr7C8j99QdEyvPKH5x0ECAAhWOQAgAMg7D+/8nWNVMQDwmCvWTessZJ9VWHCIns0yWxc/MF4FgMUgCAYRBmpf9/sDqY2yWEQBbEYcK0ZuKxIY0FGZ98Z/8KFlcAsTAcYZDX/M369tefv3/+/AGSIJf8+fMbxPgDYoC4QOP//JER+XPqIANAALH83M7ALPvn3z2gcSBTQK4AOwRKQhh/fjP8+cuo8reOgQEggFiA0cP0+w+DpCRQDijK8AekE+SuP38YICQQ/f0LQUDFAAHECIznf0iIAZWLJgUEAAEGADzQZYYqa4w6AAAAAElFTkSuQmCC" title="Български" alt="Български"
|
||||||
|
- else
|
||||||
|
= I18n.locale.inspect
|
Loading…
Reference in New Issue