jekyll-theme-eva 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +8 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +30 -0
- data/_config.yml +35 -0
- data/_includes/_icon_head_links.html +12 -0
- data/_includes/_responsive_image.html +9 -0
- data/_includes/head_symbol_home.html +0 -0
- data/_includes/json_ld_person.html +27 -0
- data/_layouts/album.html +36 -0
- data/_layouts/default.html +110 -0
- data/_layouts/home.html +36 -0
- data/_plugins/albums.rb +148 -0
- data/_plugins/values.rb +14 -0
- data/_plugins/webpack.rb +24 -0
- data/_sass/buorg.scss +47 -0
- data/_sass/jekyll-theme-eva.scss +534 -0
- data/app/index.js +20 -0
- data/app/mail.js +18 -0
- data/app/nav.js +13 -0
- data/assets/css/style.scss +4 -0
- data/assets/img/shadowything-top@2x.png +0 -0
- data/assets/img/shadowything@2x.png +0 -0
- data/assets/js/browser-update-show.js +185 -0
- data/assets/js/browser-update.js +75 -0
- data/favicon.png +0 -0
- data/favicon.svg +54 -0
- data/favicon@4x.png +0 -0
- data/index.md +3 -0
- data/jekyll-theme-eva.gemspec +19 -0
- data/webpack.config.js +33 -0
- metadata +131 -0
data/app/index.js
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
import * as $ from 'jquery';
|
2
|
+
import { getmail } from './mail';
|
3
|
+
import { initnav } from './nav';
|
4
|
+
|
5
|
+
|
6
|
+
$(document).ready(() => {
|
7
|
+
const protectedEmailLinks = $('[data-fill-email]');
|
8
|
+
const email = window.emailc || '';
|
9
|
+
if (
|
10
|
+
email.indexOf(':') >= 0 &&
|
11
|
+
email.replace(':', '').length > 0 &&
|
12
|
+
protectedEmailLinks.length > 0
|
13
|
+
) {
|
14
|
+
const ct = email.split(':')[0];
|
15
|
+
const key = email.split(':')[1];
|
16
|
+
protectedEmailLinks.attr('href', 'mailto:' + getmail(ct, key) + '');
|
17
|
+
}
|
18
|
+
|
19
|
+
initnav('body', 'a[href^="/"]');
|
20
|
+
});
|
data/app/mail.js
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
// Simple anti-spam
|
2
|
+
|
3
|
+
export const getmail = (ciphertext, key) => {
|
4
|
+
const shift = ciphertext.length;
|
5
|
+
var result = "";
|
6
|
+
for (var i = 0; i < ciphertext.length; i++) {
|
7
|
+
var ltr;
|
8
|
+
if (key.indexOf(ciphertext.charAt(i)) == -1) {
|
9
|
+
ltr = ciphertext.charAt(i);
|
10
|
+
result += (ltr);
|
11
|
+
}
|
12
|
+
else {
|
13
|
+
ltr = (key.indexOf(ciphertext.charAt(i)) - shift + key.length) % key.length;
|
14
|
+
result += (key.charAt(ltr));
|
15
|
+
}
|
16
|
+
}
|
17
|
+
return result;
|
18
|
+
};
|
data/app/nav.js
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
import * as $ from 'jquery';
|
2
|
+
|
3
|
+
|
4
|
+
export const initnav = (containerSelector, navLinkSelector) => {
|
5
|
+
$(navLinkSelector).on('click', (e) => {
|
6
|
+
// On navigation link click,
|
7
|
+
// adds .out class to container
|
8
|
+
// and .selected class to triggering link
|
9
|
+
const $triggeredBy = $(e.target).closest(navLinkSelector);
|
10
|
+
$triggeredBy.addClass('selected');
|
11
|
+
$(containerSelector).addClass('out');
|
12
|
+
});
|
13
|
+
};
|
Binary file
|
Binary file
|
@@ -0,0 +1,185 @@
|
|
1
|
+
"use strict";
|
2
|
+
var $buo_show = function() {
|
3
|
+
var op=window._buorgres;
|
4
|
+
var bb=$bu_getBrowser();
|
5
|
+
var burl=op.burl || ("http"+(/MSIE/i.test(navigator.userAgent)?"":"s")+"://outdatedbrowser.com/");
|
6
|
+
if (!op.url) {
|
7
|
+
op.url= burl+((op.l && (op.l+"/"))||"")+""+(op.test?"":"");
|
8
|
+
}
|
9
|
+
function busprintf() {
|
10
|
+
var args=arguments;
|
11
|
+
var data = args[ 0 ];
|
12
|
+
for( var k=1; k<args.length; ++k ) {
|
13
|
+
data = data.replace( /%s/, args[ k ] );
|
14
|
+
}
|
15
|
+
return data;
|
16
|
+
}
|
17
|
+
|
18
|
+
|
19
|
+
var t={},ta;
|
20
|
+
t.en={msg:'Your web browser ({brow_name}) is out of date.',msgmore:'Update your browser for more security, speed and the best experience on this site.',bupdate:'Update browser',bignore:'Ignore',remind:'You will be reminded in a week.',bnever:'Never show again'}
|
21
|
+
//t.af='';
|
22
|
+
t.ar='<b> متصفح الويب ({brow_name}) الخاص بك قديم.</b> قُم بتحديث متصفحك للحصول على مزيدٍ من الحماية والراحة وتجربة أفضل على هذا الموقع. <a{up_but}> تحديث المتصفح</a> <a{ignore_but}> تجاهل</a>';
|
23
|
+
t.bg='<b>Вашият браузър ({brow_name}) не е актуализиран.</b> Актуализирайте го за повече сигурност, удобство и най-добро изживяване на сайта. <a{up_but}>Актуализирайте браузъра</a> <a{ignore_but}>Игнорирайте</a>';
|
24
|
+
t.ca='El teu navegador (%s) està <b>desactualitzat.</b> Té <b>vulnerabilitats</b> conegudes i pot <b>no mostrar totes les característiques</b> d\'aquest i altres llocs web. <a%s>Aprèn a actualitzar el navegador</a>';
|
25
|
+
t.cs='<b>Váš webový prohlížeč ({brow_name}) je zastaralý .</b> Pro větší bezpečnost, pohodlí a optimální zobrazení této stránky si prosím svůj prohlížeč aktualizujte. <a{up_but}>Aktualizovat prohlížeč</a> <a{ignore_but}>Ignorovat</a>';
|
26
|
+
t.da='<b>Din netbrowser ({brow_name}) er forældet.</b> Opdater din browser for mere sikkerhed, komfort og den bedste oplevelse på denne side. <a{up_but}>Opdater browser</a> <a{ignore_but}>Ignorer</a>';
|
27
|
+
t.de={msg:'Ihr Browser ({brow_name}) ist veraltet.',msgmore:'Aktualisieren Sie Ihren Browser für mehr Sicherheit, Komfort und die einwandfreie Nutzung dieser Webseite.',bupdate:'Browser aktualisieren',bignore:'Ignorieren'}//,mr:'Sie werden in einer Woche errinnert',bn:'Nicht mehr benachrichtigen'}
|
28
|
+
t.el='<b>Η έκδοση του προγράμματος περιήγησής σας ({brow_name}) είναι παλιά.</b> Ενημερώστε τον περιηγητή σας για περισσότερη ασφάλεια, άνεση και την βέλτιστη εμπειρία σε αυτή την ιστοσελίδα. <a{up_but}>Αναβάθμιση περιηγητή</a> <a{ignore_but}>Παράβλεψη</a>';
|
29
|
+
t.es='<b>Tu navegador web ({brow_name}) no está actualizado.</b> Actualiza tu navegador para tener más seguridad y comodidad y tener la mejor experiencia en este sitio. <a{up_but}>Actualizar navegador</a> <a{ignore_but}>Ignorar</a>';
|
30
|
+
//t.et='';
|
31
|
+
t.fa = 'مرورگر شما (%s) <b>از رده خارج شده</b> می باشد. این مرورگر دارای <b>مشکلات امنیتی شناخته شده</b> می باشد و <b>نمی تواند تمامی ویژگی های این</b> وب سایت و دیگر وب سایت ها را به خوبی نمایش دهد. <a%s>در خصوص گرفتن راهنمایی درخصوص نحوه ی به روز رسانی مرورگر خود اینجا کلیک کنید.</a>';
|
32
|
+
t.fi='<b>Selaimesi ({brow_name}) on vanhentunut.</b> Päivitä selaimesi parantaaksesi turvallisuutta, mukavuutta ja käyttökokemusta tällä sivustolla. <a{up_but}>Päivitä selain</a> <a{ignore_but}>Ohita</a>';
|
33
|
+
t.fr='<b>Votre navigateur web ({brow_name}) n\'est pas à jour.</b> Mettez votre navigateur à jour pour plus de sécurité, de confort et une expérience optimale sur ce site. <a{up_but}>Mettre le navigateur à jour</a> <a{ignore_but}>Ignorer</a>';
|
34
|
+
t.gl='Tá an líonléitheoir agat (%s) <b>as dáta.</b> Tá <b>laigeachtaí slándála</b> a bhfuil ar eolas ann agus b\'fhéidir <b>nach taispeánfaidh sé gach gné</b> den suíomh gréasáin seo ná cinn eile. <a%s>Foghlaim conas do líonléitheoir a nuashonrú</a>';
|
35
|
+
t.he='<b>הדפדפן שלך ({brow_name}) אינו מעודכן.</b> עדכן את הדפדפן שלך בשביל אבטחה טובה יותר, נוחיות והחוויה הטובה ביותר באתר הזה.<a{up_but}>עדכן דפדפן</a> <a{ignore_but}>התעלם</a>';
|
36
|
+
t.hi='यह वेबसाइट आपको याद दिलाना चाहती हैं: आपका ब्राउज़र (%s) <b> आउट ऑफ़ डेट </b> हैं। <a%s> और अधिक सुरक्षा, आराम और इस साइट पर सबसे अच्छा अनुभव करने लिए आपके ब्राउज़र को अपडेट करें</a>।';
|
37
|
+
//t.hr='';
|
38
|
+
t.hu='<b>Az ön ({brow_name}) böngészője elavult.</b> Frissítse a böngészőjét több biztonság, kényelem és a legjobb felhasználói élmény érdekében ezen az oldalon. <a{up_but}>Böngésző frissítése</a> <a{ignore_but}>Mellőzés</a>';
|
39
|
+
t.id='<b>Browser Anda ({brow_name}) sudah usang.</b> Perbarui browser Anda untuk pengalaman terbaik yang lebih aman dan nyaman di situs ini. <a{up_but}>Perbarui Browser</a> <a{ignore_but}>Abaikan</a>';
|
40
|
+
t.it='<b>Il suo browser web ({brow_name}) non è aggiornato.</b> Aggiorni il suo browser per ottenere maggiore sicurezza, comfort, e la migliore esperienza possibile su questo sito. <a{up_but}>Aggiorna il browser</a> <a{ignore_but}>Ignora</a>';
|
41
|
+
t.ja='<b>お使いのウェブブラウザ ({brow_name}) は古すぎます</b>。安全性と快適さを向上させ、このサイトで最高の体験が出来るよう、お使いのブラウザをアップデートしましょう。<a{up_but}>ブラウザをアップデートする</a> <a{ignore_but}>無視する</a>';
|
42
|
+
t.ko='<b>현재 당신의 웹브라우저 ({brow_name})은(는) 구 버전입니다.</b> 본 사이트에서 향상된 보안 및 편안함과 최상의 경험을 위해 브라우저를 업데이트해 주세요. <a{up_but}>브라우저 업데이트</a> <a{ignore_but}>무시하기</a>';
|
43
|
+
//t.lt='';
|
44
|
+
t.lv='Jūsu pārlūkprogramma (%s) ir <b>novecojusi.</b> Tai ir zināmas <b>drošības problēmas</b>, un tā var attēlot šo un citas tīmekļa lapas <b>nekorekti.</b> <a%s>Uzzini, kā atjaunot savu pārlūkprogrammu</a>';
|
45
|
+
t.ms='<b>Pelayar web ({brow_name}) anda sudah usang.</b> Kemas kini pelayar anda untuk memperoleh lebih keselamatan, keselesaan dan pengalaman terbaik di tapak ini. <a{up_but}>Kemas kini pelayar</a> <a{ignore_but}>Abaikan</a>';
|
46
|
+
t.nl='<b>Uw webbrowser ({brow_name}) is verouderd.</b> Update uw browser voor meer veiligheid, comfort en de beste ervaring op deze site. <a{up_but}>Update browser</a> <a{ignore_but}>Negeer</a>';
|
47
|
+
t.no='<b>Nettleseren din,({brow_name}), er utdatert.</b> Oppdater nettleseren din for mer sikkerhet, komfort og den beste opplevelsen på denne siden. <a{up_but}>Oppdater nettleser</a> <a{ignore_but}>Ignorer</a>';
|
48
|
+
t.pl='<b>Twoja przeglądarka ({brow_name}) jest nieaktualna.</b> Zaktualizuj swoją przeglądarkę, by zapewnić większe bezpieczeństwo i wygodę oraz lepsze wrażenia w tej witrynie. <a{up_but}>Zaktualizuj</a> <a{ignore_but}>Zignoruj</a>';
|
49
|
+
t.pt='<b>Seu navegador de internet ({brow_name}) está desatualizado.</b> Atualize seu navegador para obter mais segurança, conforto e a melhor experiência neste site. <a{up_but}>Atualizar navegador</a> <a{ignore_but}>Ignorar</a>';
|
50
|
+
t.ro='<b>Browserul dumneavoastră ({brow_name}) nu este actualizat.</b> Actualizați-vă browserul pentru securitate sporită, confort și cea mai bună experiență pe site. <a{up_but}>Actualizează browser</a><a{ignore_but}>Ignoră</a>';
|
51
|
+
t.ru='<b>Ваш веб-браузер ({brow_name}) устарел.</b> Обновите свой браузер, чтобы сделать пребывание на этом сайте более безопасным, комфортным и продуктивным. <a{up_but}>Обновить браузер</a> <a{ignore_but}>Игнорировать</a>';
|
52
|
+
t.sk='<b> Váš internetový prehliadač ({brow_name}) je zastaraný.</b> Aktualizujte váš prehliadač pre vyššiu bezpečnosť, komfort a najlepší zážitok na tejto stránke. <a{up_but}>Aktualizovať prehliadač</a><a{ignore_but}>Ignorovať</a>';
|
53
|
+
t.sl='Vaš brskalnik (%s) je <b>zastarel.</b> Ima več <b>varnostnih pomankljivosti</b> in morda <b>ne bo pravilno prikazal</b> te ali drugih strani. <a%s>Poglejte kako lahko posodobite svoj brskalnik</a>';
|
54
|
+
t.sq='<b>Shfletuesi juaj ({brow_name}) është i vjetruar.</b> Përditësojeni shfletuesin tuaj për më tepër siguri, rehati dhe për funksionimin më të mirë në këtë sajt. <a{up_but}>Përditësojeni shfletuesin</a> <a{ignore_but}>Shpërfille</a>';
|
55
|
+
//sr-cs"]='';
|
56
|
+
t.sr='Vaš pretraživač (%s) je <b>zastareo.</b> Ima poznate <b>sigurnosne probleme</b> i najverovatnije <b>neće prikazati sve funkcionalnisti</b> ovog i drugih sajtova. <a%s>Nauči više o nadogradnji svog pretraživača</a>';
|
57
|
+
t.sv='<b>Din webbläsare ({brow_name}) är föråldrad.</b> Uppdatera din webbläsare för bättre säkerhet, bekvämlighet och den bästa upplevelsen på den här sidan. <a{up_but}>Uppdatera webbläsare</a> <a{ignore_but}>Avstå</a>';
|
58
|
+
t.th='<b>เว็บเบราว์เซอร์ ({brow_name}) ของคุณตกรุ่นแล้ว </b> อัพเดทเบราว์เซอร์ของคุณเพื่อเพิ่มความปลอดภัย ความสะดวกและประสบการณ์การใช้งานที่ดีที่สุดในเว็บไซท์นี้ <a{up_but}>อัพเดทเบราว์เซอร์</a> <a{ignore_but}>ไม่สนใจ</a>';
|
59
|
+
t.tr='<b>({brow_name}) internet tarayıcınız güncel değil.</b> Bu sitede daha fazla güvenlik, konfor ve en iyi deneyim için tarayıcınızı güncelleyin. <a{up_but}>Tarayıcıyı güncelle</a> <a{ignore_but}>Yoksay</a>';
|
60
|
+
t.uk='<b>Ваш браузер ({brow_name}) є застарілим.</b> Оновіть його заради безпечнішого, зручнішого та приємнішого перегляду цього та інших сайтів. <a{up_but}>Оновити</a> <a{ignore_but}>Скасувати</a>';
|
61
|
+
t.vi='<b>Trình duyệt web của bạn ({brow_name}) đã cũ.</b> Hãy nâng cấp trình duyệt của bạn để được an toàn và thuận lợi hơn đồng thời có được trải nghiệm tốt nhất với trang này';
|
62
|
+
t.zh='<b>您的网页浏览器 ({brow_name}) 已过期。</b>更新您的浏览器,以提高安全性和舒适性,并获得访问本网站的最佳体验。<a{up_but}>更新浏览器</a> <a{ignore_but}>忽略</a>';
|
63
|
+
t["zh-tw"]='<b>您的網頁瀏覽器 ({brow_name}) 已經過時。</b> 請更新您的瀏覽器,以在此網站取得更安全、舒適的最佳瀏覽體驗。<a{up_but}>更新瀏覽器</a><a{ignore_but}>忽略</a>';
|
64
|
+
t=ta=op["text_"+op.ll]||op.text||t[op.llfull]||t[op.ll]||t.en;
|
65
|
+
if (ta.msg)
|
66
|
+
t='<b class="buorg-mainmsg">'+t.msg+'</b> <span class="buorg-moremsg">'+t.msgmore+'</span> <span class="buorg-buttons"><a{up_but}>'+t.bupdate+'</a> <a{ignore_but}>'+t.bignore+'</a></span>'
|
67
|
+
|
68
|
+
var tar="";
|
69
|
+
if (op.newwindow)
|
70
|
+
tar=' target="_blank" rel="noopener"';
|
71
|
+
|
72
|
+
var div = op.div = document.createElement("div");
|
73
|
+
div.id="buorg";
|
74
|
+
div.className="buorg";
|
75
|
+
|
76
|
+
var style='<style>.buorg-icon {width: 22px; height: 16px; vertical-align: middle; position: relative; top: -0.05em; display: inline-block; background: no-repeat 0px center;}</style>';
|
77
|
+
var style2='<style>.buorg {position:absolute;position:fixed;z-index:111111; width:100%; top:0px; left:0px; border-bottom:1px solid #A29330; text-align:center; cursor:pointer; color:#000; background-color: #fff8ea; font: 18px Calibri,Helvetica,Arial,sans-serif; box-shadow: 0 0 5px rgba(0,0,0,0.2);}'
|
78
|
+
+'.buorg-pad { padding: 9px; line-height: 1.7em; }'
|
79
|
+
+'.buorg-buttons { display: block; text-align: center; }'
|
80
|
+
+'.buorg div a { color: #fff; text-decoration: none; box-shadow: 0 0 2px rgba(0,0,0,0.4); padding: 1px 10px; border-radius: 4px; font-weight: normal; background: #5ab400; white-space: nowrap; margin: 0 2px; display: inline-block;}'
|
81
|
+
+'#buorgig { background-color: #edbc68; position: relative;}'
|
82
|
+
+'@media only screen and (max-width: 700px){.buorg div { padding:5px 12px 5px 9px; line-height: 1.3em;}}'
|
83
|
+
+'@keyframes buorgfly {from {opacity:0;transform:translateY(-50px)} to {opacity:1;transform:translateY(0px)}}'
|
84
|
+
+'.buorg { animation: 1s ease-out 0s buorgfly} .buorg-fadeout {transition: visibility 0s 8.5s, opacity 8s ease-out .5s;}</style>';
|
85
|
+
|
86
|
+
if (!ta.msg && t.indexOf && t.indexOf("{brow_name}")===-1) {//legacy style
|
87
|
+
t=busprintf(t,bb.t,' id="buorgul" href="'+op.url+'"'+tar);
|
88
|
+
|
89
|
+
style += '<style>.buorg {position:absolute;position:fixed;z-index:111111; width:100%; top:0px; left:0px; border-bottom:1px solid #A29330; text-align:left; cursor:pointer; color:#000; font: 13px Arial,sans-serif;color:#000;}'
|
90
|
+
+'.buorg div { padding:5px 36px 5px 40px; }'
|
91
|
+
+'.buorg>div>a,.buorg>div>a:visited{color:#E25600; text-decoration: underline;}'
|
92
|
+
+'#buorgclose{position:absolute;right:6px;top:0px;height:20px;width:12px;font:18px bold;padding:0;}'
|
93
|
+
+'#buorga{display:block;}'
|
94
|
+
+'@media only screen and (max-width: 700px){.buorg div { padding:5px 15px 5px 9px; }}</style>';
|
95
|
+
div.innerHTML= '<div>'+t+'<div id="buorgclose"><a id="buorga">×</a></div></div>'+style;
|
96
|
+
op.addmargin=true;
|
97
|
+
}
|
98
|
+
else {
|
99
|
+
if (op.style === "bottom") {
|
100
|
+
style2 += '<style>.buorg {bottom:0; top:auto; border-top:1px solid #A29330; } @keyframes buorgfly {from {opacity:0;transform:translateY(50px)} to {opacity:1;transform:translateY(0px)}}</style>';
|
101
|
+
}
|
102
|
+
else if (op.style === "corner") {
|
103
|
+
style2 += '<style> .buorg { text-align: left; width:300px; top:50px; right:50px; left:auto; border:1px solid #A29330; } .buorg div b {display:block;} .buorg-buttons { display: block; } .buorg div a {margin: 4px 2px;} .buorg-icon {display: none;}</style>';
|
104
|
+
}
|
105
|
+
else {
|
106
|
+
op.addmargin=true;
|
107
|
+
}
|
108
|
+
t = t.replace("{brow_name}", bb.t).replace("{up_but}", ' id="buorgul" href="' + op.url + '"' + tar).replace("{ignore_but}", ' id="buorgig"');
|
109
|
+
div.innerHTML = '<div class="buorg-pad"><span class="buorg-icon"> </span>' + t + '</div>';
|
110
|
+
}
|
111
|
+
|
112
|
+
op.text=t;
|
113
|
+
if (op.container) {
|
114
|
+
op.container.appendChild(div);
|
115
|
+
op.addmargin=false;
|
116
|
+
}
|
117
|
+
else
|
118
|
+
document.body.insertBefore(div,document.body.firstChild);
|
119
|
+
|
120
|
+
div.onclick=function(){
|
121
|
+
if (op.newwindow)
|
122
|
+
window.open(op.url,"_blank");
|
123
|
+
else
|
124
|
+
window.location.href=op.url;
|
125
|
+
op.setCookie(op.reminderClosed);
|
126
|
+
op.onclick(op);
|
127
|
+
return false;
|
128
|
+
};
|
129
|
+
try {
|
130
|
+
document.getElementById("buorgul").onclick = function(e) {
|
131
|
+
e = e || window.event;
|
132
|
+
if (e.stopPropagation) e.stopPropagation();
|
133
|
+
else e.cancelBubble = true;
|
134
|
+
op.div.style.display = "none";
|
135
|
+
hm.style.marginTop = op.bodymt;
|
136
|
+
op.onclick(op);
|
137
|
+
return true;
|
138
|
+
};
|
139
|
+
}
|
140
|
+
catch(e) {}
|
141
|
+
|
142
|
+
if (op.addmargin && op.shift_page_down!==false) {
|
143
|
+
var hm=document.getElementsByTagName("html")[0]||document.body;
|
144
|
+
op.bodymt = hm.style.marginTop;
|
145
|
+
hm.style.marginTop = (div.clientHeight)+"px";
|
146
|
+
}
|
147
|
+
(document.getElementById("buorga")||document.getElementById("buorgig")).onclick = function(e) {
|
148
|
+
e = e || window.event;
|
149
|
+
if (e.stopPropagation) e.stopPropagation();
|
150
|
+
else e.cancelBubble = true;
|
151
|
+
op.onclose(op);
|
152
|
+
if (op.addmargin && op.shift_page_down!==false)
|
153
|
+
hm.style.marginTop = op.bodymt;
|
154
|
+
op.setCookie(op.reminderClosed);
|
155
|
+
if(!op.no_permanent_hide && ta.bnever && op.reminderClosed==24*7) {
|
156
|
+
op.div.innerHTML='<div><span class="buorg-moremsg">'+ta.remind+'</span> <span class="buorg-buttons"><a id="buorgpermanent" href="javascript: void 0;" target="_blank">'+ta.bnever+'</a></span></div>' + style+style2;
|
157
|
+
div.onclick=null;
|
158
|
+
div.className="buorg buorg-fadeout";
|
159
|
+
document.getElementById("buorgpermanent").onclick = function(e) {
|
160
|
+
op.setCookie(24*365);
|
161
|
+
op.div.style.display = "none";
|
162
|
+
}
|
163
|
+
op.div.style.opacity=0;
|
164
|
+
op.div.style.visibility="hidden";
|
165
|
+
return false;
|
166
|
+
}
|
167
|
+
op.div.style.display = "none";
|
168
|
+
return false;
|
169
|
+
}
|
170
|
+
|
171
|
+
if (op.noclose) {
|
172
|
+
var el=(document.getElementById("buorga")||document.getElementById("buorgig"));
|
173
|
+
el.parentNode.removeChild(el);
|
174
|
+
}
|
175
|
+
op.onshow(op);
|
176
|
+
|
177
|
+
if (op.test && !op.dont_show_debuginfo) {
|
178
|
+
var e=document.createElement("script");
|
179
|
+
e.src = op.domain+"/update.test.js";
|
180
|
+
document.body.appendChild(e);
|
181
|
+
}
|
182
|
+
|
183
|
+
};
|
184
|
+
|
185
|
+
$buo_show();
|
@@ -0,0 +1,75 @@
|
|
1
|
+
"use strict";var $bu_=new function(){var s=this;this.vsakt={e:16,i:14,f:59,o:52,o_a:45.1,s:11.1,c:66,y:"18.2",v:1.14,uc:11.5,samsung:6.4,ios:11.3};this.vsinsecure_below={i:11,e:13,c:62,f:56,y:17.1,s:"10.1.2",ios:"9.3.5",v:"1.12",uc:"11.3",samsung:"5.0",o_a:40,o:45};this.vsdefault={e:-3,i:11,f:-3,o:-3,o_a:-3,s:-1,c:-3,a:535,y:18.1,v:1.12,uc:11.4,samsung:6.1,ios:9};this.names={i:'Internet Explorer',e:"Edge",f:'Firefox',o:'Opera',o_a:'Opera',s:'Safari',c:"Chrome",a:"Android Browser",y:"Yandex Browser",v:"Vivaldi",uc:"UC Browser",samsung:"Samsung Internet",x:"Other",ios:"iOS",silk:"Silk"};this.get_browser=function(ua){var n,ua=(ua||navigator.userAgent).replace("_","."),r={n:"x",v:0,t:"other browser",age_years:undefined,no_os_update:false};function ignore(reason,pattern){if(new RegExp(pattern,"i").test(ua))return reason;return false}
|
2
|
+
r.other=ignore("bot","bot|spider|archiver|transcoder|crawl|checker|monitoring|screenshot|python-|php|uptime|validator|fetcher|facebook|slurp|google|yahoo|microsoft|node|mail.ru|github|cloudflare|addthis|thumb|proxy|feed|fetch|favicon|link|http|scrape|seo|page|search console|AOLBuild|Teoma|Gecko Expeditor")||ignore("TV","SMART-TV|SmartTV")||ignore("niche browser","Dorado|Whale|MIDP|k-meleon|wii|Chromium|Puffin|Opera Mini|maxthon|maxton|dolfin|dolphin|seamonkey|opera mini|netfront|moblin|maemo|arora|kazehakase|epiphany|konqueror|rekonq|symbian|webos|PaleMoon|QupZilla|Otter|Midori|qutebrowser")||ignore("mobile without upgrade path or landing page","kindle|tizen|silk|blackberry|bb10|RIM|PlayBook|meego|nokia|ucweb|ZuneWP7|537.85.10");r.mobile=(/iphone|ipod|ipad|android|mobile|phone|ios|iemobile/i.test(ua));var pats=[["CriOS.VV","c",'ios'],["FxiOS.VV","f",'ios'],["Trident.*rv:VV","i",'i'],["Trident.VV","io",'i'],["UCBrowser.VV","uc",'c'],["MSIE.VV","i",'i'],["Edge.VV","e",'e'],["Vivaldi.VV","v",'c'],["Android.*OPR.VV","o_a",'c'],["OPR.VV","o",'c'],["YaBrowser.VV","y",'c'],["SamsungBrowser.VV","samsung",'c'],["Silk.VV","silk",'c'],["Chrome.VV","c",'c'],["Firefox.VV","f",'f'],[" OS.VV.*Safari","ios",'ios'],["Version.VV.*Safari","s",'s'],["Safari.VV","so",'s'],["Opera.*Version.VV","o"],["Opera.VV","o"]];var VV="(\\d+\\.?\\d+\\.?\\d*\\.?\\d*)";for(var i=0;i<pats.length;i++){if(ua.match(new RegExp(pats[i][0].replace("VV",VV),"i"))){r.n=pats[i][1];r.engine=pats[i][2];break;}}
|
3
|
+
r.fullv=RegExp.$1;r.v=parseFloat(r.fullv);if(/windows.nt.5.0|windows.nt.4.0|windows.95|windows.98|os x 10.2|os x 10.3|os x 10.4|os x 10.5|os x 10.6|os x 10.7/i.test(ua))
|
4
|
+
r.no_os_update=true;if(/iphone|ipod|ipad|ios/i.test(ua)){ua.match(new RegExp("OS."+VV,"i"));r.n="ios";r.fullv=RegExp.$1;r.v=parseFloat(r.fullv);r.engine='ios';var h=Math.max(window.screen.height,window.screen.width);if(!r.v>11.0&&(h<=480||window.devicePixelRatio<2)||r.v<8)
|
5
|
+
r.no_os_update=true;}
|
6
|
+
if(ua.indexOf('Android')>-1&&r.n==="s"){var v=parseInt((/WebKit\/([0-9]+)/i.exec(ua)||0)[1],10)||2000;if(v<=534){r.n="a";r.fullv=r.v=v;}}
|
7
|
+
if(r.n==="so"){r.v=r.fullv=4.0;r.n="s";}
|
8
|
+
if(r.n==="io"){r.n="i";if(r.v>6)r.v=11;else if(r.v>5)r.v=10;else if(r.v>4)r.v=9;else if(r.v>3.1)r.v=8;else if(r.v>3)r.v=7;else r.v=9;r.fullv=r.v;}
|
9
|
+
r.t=s.names[r.n]+" "+r.v;r.is_supported=r.is_latest=!s.vsakt[r.n]?undefined:s.less(r.fullv,s.vsakt[r.n])<=0;r.vmaj=Math.round(r.v);r.is_insecure=!s.vsinsecure_below[r.n]?undefined:s.less(r.fullv,s.vsinsecure_below[r.n])===1;if((r.n==="f"&&(r.vmaj===52||r.vmaj===60))||(r.n==="i"&&r.vmaj===11)){r.is_supported=true;r.is_insecure=false;if(r.n==="f")
|
10
|
+
r.lts=true;}
|
11
|
+
if((r.n==="c"||r.n==="f"||r.n==="o")&&s.less(r.fullv,parseFloat(s.vsakt[r.n])-1)<=0)
|
12
|
+
r.is_supported=true;if(r.n==="ios"&&r.v>10.3)
|
13
|
+
r.is_supported=true;if(r.n==="a"||r.n==="x")
|
14
|
+
r.t=s.names[r.n];if(r.n==="e")
|
15
|
+
r.t=s.names[r.n]+" "+r.vmaj;var releases_per_year={'f':7,'c':8,'o':8,'i':1,'e':1,'s':1}
|
16
|
+
if(releases_per_year[r.n]){r.age_years=Math.round(((s.vsakt[r.n]-r.v)/releases_per_year[r.n])*10)/10||0}
|
17
|
+
var engines={e:"Edge.VV",c:"Chrome.VV",f:"Firefox.VV",s:"Version.VV",i:"MSIE.VV","ios":" OS.VV"}
|
18
|
+
if(r.engine){ua.match(new RegExp(engines[r.engine].replace("VV",VV),"i"))
|
19
|
+
r.engine_version=parseFloat(RegExp.$1)}
|
20
|
+
return r;}
|
21
|
+
this.semver=function(vstr){if(vstr instanceof Array)
|
22
|
+
return vstr
|
23
|
+
var x=(vstr+(".0.0.0")).split('.')
|
24
|
+
return[parseInt(x[0])||0,parseInt(x[1])||0,parseInt(x[2])||0,parseInt(x[3])||0]}
|
25
|
+
this.less=function(v1,v2){v1=s.semver(v1)
|
26
|
+
v2=s.semver(v2)
|
27
|
+
for(var i=0;;i++){if(i>=v1.length)return i>=v2.length?0:1;if(i>=v2.length)return-1;var diff=v2[i]-v1[i]
|
28
|
+
if(diff)return diff>0?1:-1;}}}
|
29
|
+
window.$bu_getBrowser=$bu_.get_browser;var $buo=function(op,test){var n=window.navigator,b;op=window._buorgres=op||{};var ll=op.l||(n.languages?n.languages[0]:null)||n.language||n.browserLanguage||n.userLanguage||document.documentElement.getAttribute("lang")||"en";op.llfull=ll.replace("_","-").toLowerCase().substr(0,5);op.ll=op.llfull.substr(0,2);op.domain=op.domain!==undefined?op.domain:(/file:/.test(location.href)?"https:":"")+"//"+document.location.hostname+"";op.apiver=op.api||op.c||-1;op.jsv="3.0.6";var required_min={i:10,f:11,o:21,s:8,c:30}
|
30
|
+
var vs=op.notify||op.vs||{};vs.e=vs.e||vs.i;var required=op.required||{};required.e=required.e||required.i;for(b in $bu_.vsdefault){if(vs[b]){if($bu_.less(vs[b],0)>=0)
|
31
|
+
required[b]=parseFloat($bu_.vsakt[b])+parseFloat(vs[b])+0.01
|
32
|
+
else
|
33
|
+
required[b]=parseFloat(vs[b])+0.01}
|
34
|
+
if(!required[b])
|
35
|
+
required[b]=$bu_.vsdefault[b]
|
36
|
+
if($bu_.less(required[b],0)>=0)
|
37
|
+
required[b]=$bu_.vsakt[b]+required[b]
|
38
|
+
if(required_min[b]&&$bu_.less(required[b],required_min[b])===1)
|
39
|
+
required[b]=required_min[b]}
|
40
|
+
required.i=required.i||required.e;required.ios=required.ios||required.s;op.required=required;if(op.reminder<0.1||op.reminder===0)
|
41
|
+
op.reminder=0;else
|
42
|
+
op.reminder=op.reminder||24;op.reminderClosed=op.reminderClosed||(24*7);op.onshow=op.onshow||function(o){};op.onclick=op.onclick||function(o){};op.onclose=op.onclose||function(o){};op.pageurl=op.pageurl||location.hostname||"x";op.newwindow=(op.newwindow!==false);op.test=test||op.test||(location.hash==="#test-bu")||false;
|
43
|
+
op.test=test||op.test||location.hash==="#test-bu";op.reasons=[];function check_show(op){var bb=$bu_.get_browser(op.override_ua);op.is_below_required=required[bb.n]&&$bu_.less(bb.fullv,required[bb.n])===1;if(bb.other!==false||bb.lts)
|
44
|
+
return false
|
45
|
+
if(bb.mobile&&op.mobile===false)
|
46
|
+
return false
|
47
|
+
if(bb.no_os_update)
|
48
|
+
return false
|
49
|
+
if(op.is_below_required)
|
50
|
+
op.reasons.push("below required")
|
51
|
+
if((op.insecure||op.unsecure)&&bb.is_insecure)
|
52
|
+
op.reasons.push("insecure")
|
53
|
+
if(op.unsupported&&!bb.is_supported)
|
54
|
+
op.reasons.push("no vendor support")
|
55
|
+
if(op.reasons.length>0)
|
56
|
+
return true
|
57
|
+
return false}
|
58
|
+
op.notified=check_show(op);op.already_shown=document.cookie.indexOf("browserupdateorg=pause")>-1&&op.reminder>0;if(!op.test&&(!op.notified||op.already_shown))
|
59
|
+
return;op.setCookie=function(hours){document.cookie='browserupdateorg=pause; expires='+(new Date(new Date().getTime()+3600000*hours)).toGMTString()+'; path=/';};if(op.reminder>0)
|
60
|
+
op.setCookie(op.reminder);if(op.nomessage){op.onshow(op);return;}
|
61
|
+
|
62
|
+
var e=document.createElement("script");e.src="/assets/js/browser-update-show.js";document.body.appendChild(e);
|
63
|
+
};
|
64
|
+
|
65
|
+
$buo({
|
66
|
+
notify: {e:-6,f:-4,o:-4,s:-2,c:-4},
|
67
|
+
insecure: true,
|
68
|
+
api: 5,
|
69
|
+
no_permanent_hide: true,
|
70
|
+
text:
|
71
|
+
"This browser might be a bit old for my site. " +
|
72
|
+
"Sorry if things look broken. " +
|
73
|
+
"<br>" +
|
74
|
+
"(You’re on {brow_name}. <a{ignore_but}>Ignore this</a>)"});
|
75
|
+
|
data/favicon.png
ADDED
Binary file
|
data/favicon.svg
ADDED
@@ -0,0 +1,54 @@
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="255.99" height="255.99" viewBox="0 0 1050 1050">
|
2
|
+
<metadata><?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
|
3
|
+
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c138 79.159824, 2016/09/14-01:09:01 ">
|
4
|
+
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
5
|
+
<rdf:Description rdf:about=""/>
|
6
|
+
</rdf:RDF>
|
7
|
+
</x:xmpmeta>
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
<?xpacket end="w"?></metadata>
|
30
|
+
<defs>
|
31
|
+
<style>
|
32
|
+
.cls-1 {
|
33
|
+
fill: #dfeafb;
|
34
|
+
}
|
35
|
+
|
36
|
+
.cls-1, .cls-2, .cls-3 {
|
37
|
+
fill-rule: evenodd;
|
38
|
+
}
|
39
|
+
|
40
|
+
.cls-2 {
|
41
|
+
fill: #c3d2da;
|
42
|
+
}
|
43
|
+
|
44
|
+
.cls-3 {
|
45
|
+
fill: #8fa3bb;
|
46
|
+
}
|
47
|
+
</style>
|
48
|
+
</defs>
|
49
|
+
<path id="moon" class="cls-1" d="M360.554,470.372C432.111,526.48,521.424,562,661.353,546.2c67.786-7.656,183.133-32.828,216.969-98.775,27.188-52.989,65.79-142.9,43.389-228.19-13.9-52.92,123.819,115.931,126.859,289.282,2.11,119.662-62.4,310-253.029,418.212C632.481,1019.29,197.806,1036.5,69.1,753.934-25.34,546.6-6.328,377.587,36.333,247.651,69.931,145.321,243.965,7.1,193.078,83.984c-36.85,55.676,3.6,155,21.385,199.916C237.452,341.951,299.786,422.723,360.554,470.372Z"/>
|
50
|
+
<path id="legs" class="cls-2" d="M296.963,655.074c0,43.542-6.322,89.983-3.331,133.509s71.788,47.8,56.016,1.234c-16.575-48.939-13.692-100.159-13.692-142.19S296.963,611.533,296.963,655.074Zm474.294,0c0,43.542,6.321,89.983,3.33,133.509s-71.788,47.8-56.015,1.234c16.574-48.939,13.691-100.159,13.691-142.19S771.257,611.533,771.257,655.074Z"/>
|
51
|
+
<path id="wool" class="cls-3" d="M224.465,357.682c-92.265,13.954-80.223,144.487,8.788,149.9C156.007,573.033,238.264,654,288.775,619.566c-34.059,74.008,35.293,133.6,93.036,80.253C369.383,769.3,470.3,808.134,506.839,737.425c29.635,68.15,138.089,42.077,160.075-8.928,46.749,65.113,119.987-3.253,96.952-66.931,88.687,35.03,127.773-45.655,94.993-99.666,65.653-20.2,56.684-144.1-3.864-149.559,43.064-54.952-2.067-166.366-61.3-125.43,47.2-51.883-43.7-118.244-85.589-95.348,1.049-98.786-174.581-126.255-182.555-31.253-43.573-45.069-138.581-36.635-142.035,38.854C318.446,148.915,228.864,241.8,256.078,306.369,221.016,294.081,205.053,316.561,224.465,357.682Z"/>
|
52
|
+
<path id="head" class="cls-2" d="M467.278,776.742c-18.7-31.053-55.653-85.506-42.527-142.3,22.474-97.235,197.559-97.235,220.033,0,13.126,56.792-23.827,111.245-42.527,142.3C572.031,826.934,497.5,826.934,467.278,776.742ZM414.328,599c-18.81,11.688-44.914,39.765-39.147,81.194,2.243,16.119,38.323-27.569,50.973-49C455.388,581.667,433.139,587.31,414.328,599Zm239.563,0c18.81,11.688,44.914,39.765,39.148,81.194-2.244,16.119-38.324-27.569-50.974-49C612.831,581.667,635.08,587.31,653.891,599Z"/>
|
53
|
+
<path id="top_fluff" data-name="top fluff" class="cls-3" d="M439.285,604.953c-6.105,46.992,53.767,42.158,51.551,2.3,5.8,49.406,73.712,37.114,77.941,9.68,13.266,25.265,83.907,30.2,72.082-17.649,22.9,24.153,82.85-36.45,12-64.019-26.128-10.167-48.879-39.422-81.867-24.891-56.775,25.009-127.078-13.687-130.183,24.6C395.27,549.383,366.664,584,394.672,581.176,375.266,616.625,415.871,648.641,439.285,604.953Z"/>
|
54
|
+
</svg>
|
data/favicon@4x.png
ADDED
Binary file
|
data/index.md
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
Gem::Specification.new do |spec|
|
4
|
+
spec.name = "jekyll-theme-eva"
|
5
|
+
spec.version = "0.1.0"
|
6
|
+
spec.authors = ["Anton Strogonoff"]
|
7
|
+
spec.email = ["anton@strogonoff.name"]
|
8
|
+
|
9
|
+
spec.summary = "Artist’s site theme."
|
10
|
+
spec.license = "MIT"
|
11
|
+
|
12
|
+
spec.files = `git ls-files -z`.split("\x0").select { |f| f.match(%r!^(assets|_layouts|_includes|_sass|LICENSE|README|app|_plugins|)!i) }
|
13
|
+
|
14
|
+
spec.add_runtime_dependency "jekyll", "~> 3.8"
|
15
|
+
spec.add_runtime_dependency "jekyll-responsive-image", "~> 1.5"
|
16
|
+
|
17
|
+
spec.add_development_dependency "bundler", "~> 1.16"
|
18
|
+
spec.add_development_dependency "rake", "~> 12.0"
|
19
|
+
end
|
data/webpack.config.js
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
const webpack = require('webpack');
|
4
|
+
const path = require('path');
|
5
|
+
|
6
|
+
module.exports = {
|
7
|
+
|
8
|
+
entry: './app/index.js',
|
9
|
+
|
10
|
+
mode: 'production',
|
11
|
+
|
12
|
+
output: {
|
13
|
+
publicPath: '/assets/',
|
14
|
+
filename: 'eva.js'
|
15
|
+
},
|
16
|
+
|
17
|
+
module: {
|
18
|
+
rules: [
|
19
|
+
{
|
20
|
+
test: [ /\.vert$/, /\.frag$/ ],
|
21
|
+
use: 'raw-loader'
|
22
|
+
}
|
23
|
+
]
|
24
|
+
},
|
25
|
+
|
26
|
+
plugins: [
|
27
|
+
new webpack.DefinePlugin({
|
28
|
+
'CANVAS_RENDERER': JSON.stringify(true),
|
29
|
+
'WEBGL_RENDERER': JSON.stringify(true)
|
30
|
+
})
|
31
|
+
]
|
32
|
+
|
33
|
+
};
|