From 67ea582e310da85ce167b973df353c10ce4648a5 Mon Sep 17 00:00:00 2001 From: Zhou Hao Date: Wed, 20 Jul 2016 11:22:54 +0800 Subject: [PATCH 01/29] Support Simplifed Chinese --- bl-languages/zh_CN.json | 220 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 220 insertions(+) create mode 100644 bl-languages/zh_CN.json diff --git a/bl-languages/zh_CN.json b/bl-languages/zh_CN.json new file mode 100644 index 00000000..7530e75d --- /dev/null +++ b/bl-languages/zh_CN.json @@ -0,0 +1,220 @@ +{ + "language-data": + { + "native": "Simplified Chinese (PRC)", + "english-name": "Simplified Chinese", + "last-update": "2017-07-20", + "author": "Zhou Hao", + "email": "zhou.hao.27@gmail.com", + "website": "http://thezeusoft.com" + }, + + "username": "使用者名称", + "password": "使用者密码", + "confirm-password": "确认密码", + "editor": "作者", + "dashboard": "主页面", + "role": "角色", + "post": "文章", + "posts": "文章", + "users": "使用者", + "administrator": "管理员", + "add": "新增", + "cancel": "取消", + "content": "內容", + "title": "标题", + "no-parent": "沒有继承页面", + "edit-page": "编辑页面", + "edit-post": "编辑文章", + "add-a-new-user": "新增使用者", + "parent": "继承页面", + "friendly-url": "友好链接", + "description": "简介", + "posted-by": "发表由", + "tags": "标签", + "position": "位置", + "save": "存储", + "draft": "草稿", + "delete": "刪除", + "registered": "已注册", + "Notifications": "通知", + "profile": "个人档案", + "email": "电子邮件", + "settings": "设定", + "general": "一般设定", + "advanced": "高级设定", + "regional": "区域", + "about": "关于", + "login": "登入", + "logout": "登出", + "manage": "管理", + "themes": "主题", + "prev-page": "上一页", + "next-page": "下一页", + "configure-plugin": "插件设置", + "confirm-delete-this-action-cannot-be-undone": "确认删除? 此动作不可复原", + "site-title": "网站标题", + "site-slogan": "网站标语", + "site-description": "网站简介", + "footer-text": "页脚文字", + "posts-per-page": "每页文章数", + "site-url": "网站网址", + "writting-settings": "写作设定", + "url-filters": "网址过滤器", + "page": "页面", + "pages": "页面", + "home": "首页", + "welcome-back": "欢迎回來", + "language": "语言", + "website": "网站", + "timezone": "时区", + "locale": "区域", + "new-post": "新文章", + "html-and-markdown-code-supported": "支持HTML与Markdown代码", + "new-page": "新页面", + "manage-posts": "管理文章", + "published-date": "发表日期", + "modified-date": "修改日期", + "empty-title": "空白标题", + "plugins": "插件", + "install-plugin": "安装插件", + "uninstall-plugin": "移除插件", + "new-password": "新密码", + "edit-user": "编辑用户", + "publish-now": "立即发表", + "first-name": "名", + "last-name": "姓", + "bludit-version": "Bludit版本", + "powered-by": "Powered by", + "recent-posts": "最新文章", + "manage-pages": "管理页面", + "advanced-options": "高级设定", + "user-deleted": "用户已刪除", + "page-added-successfully": "页面已成功新增", + "post-added-successfully": "文章已成功新增", + "the-post-has-been-deleted-successfully": "页面已成功被刪除", + "the-page-has-been-deleted-successfully": "页面已成功被刪除", + "username-or-password-incorrect": "用户账号或者密码不正确", + "database-regenerated": "数据库已经重建", + "the-changes-have-been-saved": "变更已经储存", + "enable-more-features-at": "启用更多功能在", + "username-already-exists": "用户名称已经存在", + "username-field-is-empty": "用户名称字段为空白", + "the-password-and-confirmation-password-do-not-match":"用户密码与确认密码不符", + "user-has-been-added-successfully": "用户已新增成功", + "you-do-not-have-sufficient-permissions": "您沒有权限存取此页面,请联络管理员", + "settings-advanced-writting-settings": "设定->高级设定->写作设定", + "new-posts-and-pages-synchronized": "新文章与页面已经同步完成", + "you-can-choose-the-users-privilege": "您可以选择用户的权限,作者角色只能撰写页面与文章", + "email-will-not-be-publicly-displayed": "Email將不会被公开显示,建议用于复原密码或是通知", + "use-this-field-to-name-your-site": "使用此字段来填写您网站名称,它將会被显示在每一个页面的最上方", + "use-this-field-to-add-a-catchy-phrase": "使用此字段来帮您的网站添加一个可以朗朗上口的标语吧", + "you-can-add-a-site-description-to-provide": "您可以新增一段简短的简介來介绍您的网站", + "you-can-add-a-small-text-on-the-bottom": "您可以在每一页的页尾放置一些短短的文字,例如: 版权、所有人、日期...", + "number-of-posts-to-show-per-page": "每一页会显示几篇文章的数量", + "the-url-of-your-site": "网站的网址", + "add-or-edit-description-tags-or": "新增或编辑简介、标签或是修改友好网址", + "select-your-sites-language": "选择您所使用的语言", + "select-a-timezone-for-a-correct": "选择正确的时区来显示时间", + "you-can-use-this-field-to-define-a-set-of": "您可以使用此字段來定义相关的语言、国家与特別的参数", + "you-can-modify-the-url-which-identifies":"您可以修改网址來让文章或页面的网址可以更接近人类所了解的字词,不能超过150个字", + "this-field-can-help-describe-the-content": "這個字段可以帮助快速理解內容,不能超过150个字", + "write-the-tags-separated-by-comma": "撰写使用逗号分隔的标签,例如: 标签1, 标签2, 标签3", + "delete-the-user-and-all-its-posts":"刪除用户与他所发表的文章", + "delete-the-user-and-associate-its-posts-to-admin-user": "刪除使用者,並將他所发表的文章关联至管理員权限的用户", + "read-more": "继续阅读", + "show-blog": "显示博客", + "default-home-page": "默认首页", + "version": "版本", + "there-are-no-drafts": "沒有草稿", + "create-a-new-article-for-your-blog":"为您的网站建立一篇新文章", + "create-a-new-page-for-your-website":"为您的网站建立一个新页面", + "invite-a-friend-to-collaborate-on-your-website":"邀请朋友合作开发网站", + "change-your-language-and-region-settings":"更改您所使用的语言与地区设定", + "language-and-timezone":"语言与时区", + "author": "作者", + "start-here": "从这里开始", + "install-theme": "安装主题", + "first-post": "第一篇文章", + "congratulations-you-have-successfully-installed-your-bludit": "恭喜您已经成功安裝您的**Bludit**", + "whats-next": "接下來", + "manage-your-bludit-from-the-admin-panel": "通过[admin area](./admin/)管理您的Bludit", + "follow-bludit-on": "Follow Bludit on", + "visit-the-support-forum": "访问[forum](https://forum.bludit.com)來取得支持", + "read-the-documentation-for-more-information": "阅读[documentation](https://docs.bludit.com)來获得更多资讯", + "share-with-your-friends-and-enjoy": "分享给您的朋友们", + "the-page-has-not-been-found": "此页面不存在", + "error": "错误", + "bludit-installer": "Bludit 安裝程式", + "welcome-to-the-bludit-installer": "欢迎使用Bludit安裝程序", + "complete-the-form-choose-a-password-for-the-username-admin": "请完成表单,为此用户名称 « admin » 设置一下密码吧", + "password-visible-field": "密码可见字段", + "install": "安装", + "choose-your-language": "选择您所使用的语言", + "next": "下一步", + "the-password-field-is-empty": "密码字段是空白的", + "your-email-address-is-invalid":"您所输入的email是无效的", + "proceed-anyway": "继续!", + "drafts":"草稿", + "ip-address-has-been-blocked": "IP 地址已被封锁", + "try-again-in-a-few-minutes": "请过几分钟后再试", + "date": "日期", + "you-can-schedule-the-post-just-select-the-date-and-time": "您只需要选择一个日期与时间就可以预定什么時候再发表此文章", + "scheduled": "已安排", + "publish": "发表", + "please-check-your-theme-configuration": "请检查您的主題设定", + "plugin-label": "插件标签", + "enabled": "启用", + "disabled": "禁止", + "cli-mode": "Cli模式", + "command-line-mode": "命令行模式", + "enable-the-command-line-mode-if-you-add-edit": "启用命令行模式,如果您需要完成新增或者编辑工作。", + "configure": "设定", + "uninstall": "移除", + "change-password": "更改密码", + "to-schedule-the-post-just-select-the-date-and-time": "选择日期与时间预定发布此文章", + "write-the-tags-separated-by-commas": "使用逗号分隔标签", + "status": "状态", + "published": "已发表", + "scheduled-posts": "预定文章", + "statistics": "统计", + "name": "名称", + "email-account-settings":"Email账户设定", + "sender-email": "发送者email", + "emails-will-be-sent-from-this-address":"Emails將会被从此地址发送", + "bludit-login-access-code": "BLUDIT - 登入存取码", + "check-your-inbox-for-your-login-access-code":"检查您的收件夹是否有收到登入存取码", + "there-was-a-problem-sending-the-email":"发送email时发生问题", + "back-to-login-form": "返回登入页面", + "send-me-a-login-access-code": "发送一组入存取码给我", + "get-login-access-code": "获得登入存取码", + "email-notification-login-access-code": "

有一则通知从您的博客{{WEBSITE_NAME}}发出

您有要求一组登入存取码,请按下此链接取得:

{{LINK}}

", + "there-are-no-scheduled-posts": "沒有预定发表的文章", + "show-password": "显示密码", + "edit-or-remove-your=pages": "编辑或移除您的页面", + "edit-or-remove-your-blogs-posts": "编辑或移除您的博客文章", + "general-settings": "一般设定", + "advanced-settings": "高级设定", + "manage-users": "管理者", + "view-and-edit-your-profile": "查看与编辑您的个人资料", + "password-must-be-at-least-6-characters-long": "密吗长度必须在6个字节以上", + "images": "图片", + "upload-image": "上传图片", + "drag-and-drop-or-click-here": "拖曳您的图片到这里或是点选这里选择图片", + "insert-image": "插入图片", + "supported-image-file-types": "可以上传的文件格式", + "date-format": "日期格式", + "time-format": "时间格式", + "chat-with-developers-and-users-on-gitter":"与开发者或者用户聊聊~ [Gitter](https://gitter.im/dignajar/bludit)", + "this-is-a-brief-description-of-yourself-our-your-site":"這这是关于您自己或是网站的简短介绍,如果想要修改,请至管理界面/设置/插件,设置一个名为“关于”的插件", + "profile-picture": "大头帖", + "the-about-page-is-very-important": "此关于页面对于用户与合作伙伴非常重要和有用的工具。对于那些不了解您网站內容的人,您的关于页面将会是他们第一个阅读的页面。", + "change-this-pages-content-on-the-admin-panel": "在管理界面中更改此页面的內容,管理/页面,接着点选关于页面。", + "about-your-site-or-yourself": "关于您的网站或是您自己", + "welcome-to-bludit": "欢迎使用Bludit", + + "site-information": "网站资讯", + "date-and-time-formats": "日期与时间格式", + "activate": "启用", + "deactivate": "关闭" +} \ No newline at end of file From 9b0e2dc4cc707e80623fa39d19774991025f484a Mon Sep 17 00:00:00 2001 From: Zhou Hao Date: Wed, 20 Jul 2016 11:36:09 +0800 Subject: [PATCH 02/29] Appending new text for translation into Simplified Chinese --- bl-languages/zh_CN.json | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/bl-languages/zh_CN.json b/bl-languages/zh_CN.json index 7530e75d..a882aa50 100644 --- a/bl-languages/zh_CN.json +++ b/bl-languages/zh_CN.json @@ -9,15 +9,15 @@ "website": "http://thezeusoft.com" }, - "username": "使用者名称", - "password": "使用者密码", + "username": "用户名称", + "password": "用户密码", "confirm-password": "确认密码", "editor": "作者", "dashboard": "主页面", "role": "角色", "post": "文章", "posts": "文章", - "users": "使用者", + "users": "用户", "administrator": "管理员", "add": "新增", "cancel": "取消", @@ -26,7 +26,7 @@ "no-parent": "沒有继承页面", "edit-page": "编辑页面", "edit-post": "编辑文章", - "add-a-new-user": "新增使用者", + "add-a-new-user": "新增用户", "parent": "继承页面", "friendly-url": "友好链接", "description": "简介", @@ -121,7 +121,7 @@ "this-field-can-help-describe-the-content": "這個字段可以帮助快速理解內容,不能超过150个字", "write-the-tags-separated-by-comma": "撰写使用逗号分隔的标签,例如: 标签1, 标签2, 标签3", "delete-the-user-and-all-its-posts":"刪除用户与他所发表的文章", - "delete-the-user-and-associate-its-posts-to-admin-user": "刪除使用者,並將他所发表的文章关联至管理員权限的用户", + "delete-the-user-and-associate-its-posts-to-admin-user": "刪除用户,並將他所发表的文章关联至管理員权限的用户", "read-more": "继续阅读", "show-blog": "显示博客", "default-home-page": "默认首页", @@ -212,7 +212,9 @@ "change-this-pages-content-on-the-admin-panel": "在管理界面中更改此页面的內容,管理/页面,接着点选关于页面。", "about-your-site-or-yourself": "关于您的网站或是您自己", "welcome-to-bludit": "欢迎使用Bludit", - + "you-can-use-this-field-to-define-a-set-off": "使用此字段定义默认语言代码", + "More images": "更多的图片", + "Cover image": "封面图片", "site-information": "网站资讯", "date-and-time-formats": "日期与时间格式", "activate": "启用", From 21f76faba3cc8b5ed424e5e74c46f069afac9d34 Mon Sep 17 00:00:00 2001 From: janxb Date: Mon, 25 Jul 2016 16:56:43 +0200 Subject: [PATCH 03/29] fixed php notice after installation --- bl-kernel/dbpages.class.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bl-kernel/dbpages.class.php b/bl-kernel/dbpages.class.php index cb6ca23e..a92fba6e 100644 --- a/bl-kernel/dbpages.class.php +++ b/bl-kernel/dbpages.class.php @@ -394,7 +394,8 @@ class dbPages extends dbJSON $checksum = md5_file(PATH_PAGES.$key.DS.FILENAME); // If checksum is different, update the post - if( $this->db[$key]['md5file']!==$checksum ) { + if( !isset($this->db[$key]['md5file']) || + $this->db[$key]['md5file']!==$checksum ) { // LOG Log::set('CLI MODE - Different md5 checksum, key: '.$key); From 19cc09847dd74359ea82ca11ad229d2441710067 Mon Sep 17 00:00:00 2001 From: janxb Date: Mon, 25 Jul 2016 16:57:39 +0200 Subject: [PATCH 04/29] fixed translation in javascript files --- bl-kernel/admin/themes/default/init.php | 8 ++++---- bl-kernel/js/bludit-cover-image.js | 2 +- bl-kernel/js/bludit-images-v8.js | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bl-kernel/admin/themes/default/init.php b/bl-kernel/admin/themes/default/init.php index 4cfe7091..bc67c0d9 100644 --- a/bl-kernel/admin/themes/default/init.php +++ b/bl-kernel/admin/themes/default/init.php @@ -205,11 +205,11 @@ class HTML { public static function bluditCoverImage($coverImage="") { + global $L; + // Javascript code include(PATH_JS.'bludit-cover-image.js'); - global $L; - $style = ''; if(!empty($coverImage)) { $style = 'background-image: url('.HTML_PATH_UPLOADS_THUMBNAILS.$coverImage.')'; @@ -263,11 +263,11 @@ class HTML { public static function bluditImagesV8() { + global $L; + // Javascript code include(PATH_JS.'bludit-images-v8.js'); - global $L; - $html = ''; $html .= '
diff --git a/bl-kernel/js/bludit-cover-image.js b/bl-kernel/js/bludit-cover-image.js index 4738cfb8..fef06ebc 100644 --- a/bl-kernel/js/bludit-cover-image.js +++ b/bl-kernel/js/bludit-cover-image.js @@ -85,7 +85,7 @@ $(document).ready(function() { }, notallowed: function(file, settings) { - alert("'.$L->g('Supported image file types').' "+settings.allow); + alert("g('error').'. '.$L->g('Supported image file types')?>: "+settings.allow); } }; diff --git a/bl-kernel/js/bludit-images-v8.js b/bl-kernel/js/bludit-images-v8.js index 4810becb..a6b9f9ec 100644 --- a/bl-kernel/js/bludit-images-v8.js +++ b/bl-kernel/js/bludit-images-v8.js @@ -58,7 +58,7 @@ $(document).ready(function() { }, notallowed: function(file, settings) { - alert("'.$L->g('Supported image file types').' "+settings.allow); + alert("g('error').'. '.$L->g('Supported image file types')?>: "+settings.allow); } }; From 3e94580a870854202a9301a8db46cd2ef1d13a3e Mon Sep 17 00:00:00 2001 From: janxb Date: Mon, 25 Jul 2016 17:05:01 +0200 Subject: [PATCH 05/29] fixed typo in translation. fixes #294 --- bl-kernel/admin/views/settings-regional.php | 2 +- bl-languages/fi_FI.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bl-kernel/admin/views/settings-regional.php b/bl-kernel/admin/views/settings-regional.php index e301df14..30338cf4 100644 --- a/bl-kernel/admin/views/settings-regional.php +++ b/bl-kernel/admin/views/settings-regional.php @@ -34,7 +34,7 @@ HTML::formOpen(array('class'=>'uk-form-horizontal')); 'label'=>$L->g('Locale'), 'value'=>$Site->locale(), 'class'=>'uk-width-1-2 uk-form-medium', - 'tip'=>$L->g('you-can-use-this-field-to-define-a-set-off') + 'tip'=>$L->g('you-can-use-this-field-to-define-a-set-of') )); HTML::legend(array('value'=>$L->g('Date and time formats'))); diff --git a/bl-languages/fi_FI.json b/bl-languages/fi_FI.json index 512ca19a..931c23a2 100644 --- a/bl-languages/fi_FI.json +++ b/bl-languages/fi_FI.json @@ -116,7 +116,7 @@ "add-or-edit-description-tags-or": "Lisää ja muokkaa kuvausta, tageja tai sivun osoitetta.", "select-your-sites-language": "Valitse sivuston kieli.", "select-a-timezone-for-a-correct": "Valitse aikavyöhyke, jotta kellonajat ja päivämäärät näkyvät oikein.", - "you-can-use-this-field-to-define-a-set-off": "Tällä kentällä voit määritellä joukon asetuksia liittyen kieleen, maahan ja erityisiin asetuksiin.", + "you-can-use-this-field-to-define-a-set-of": "Tällä kentällä voit määritellä joukon asetuksia liittyen kieleen, maahan ja erityisiin asetuksiin.", "you-can-modify-the-url-which-identifies":"Voit muokata sivun osoitetta. Enintään 150 merkkiä", "this-field-can-help-describe-the-content": "Kirjoita tähän kuvaus sivun sisällöstä. Kuvaus näkyy hakutuloksessa esim. Googlessa. Enintään 150 merkkiä.", From 38da30dd96b538dc9a2bf2c170deaca0ece6d96d Mon Sep 17 00:00:00 2001 From: janxb Date: Mon, 25 Jul 2016 17:08:36 +0200 Subject: [PATCH 06/29] removed duplicated translation --- bl-languages/ms_MY.json | 1 - 1 file changed, 1 deletion(-) diff --git a/bl-languages/ms_MY.json b/bl-languages/ms_MY.json index fe564f8a..dfc58e9c 100644 --- a/bl-languages/ms_MY.json +++ b/bl-languages/ms_MY.json @@ -116,7 +116,6 @@ "add-or-edit-description-tags-or": "Tambah atau sunting perihal dan tag atau ubah URL mesra.", "select-your-sites-language": "Pilih bahasa laman web anda.", "select-a-timezone-for-a-correct": "Pilih zon masa yang betul untuk paparan tarikh dan masa yang tepat.", - "you-can-use-this-field-to-define-a-set-of": "You can use this field to define a set of parameters related to the language, country and special preferences.", "you-can-use-this-field-to-define-a-set-of": "Tetapkan set parameter berkaitan dengan bahasa, negara dan keutamaan istimewa.", "you-can-modify-the-url-which-identifies":"Anda boleh mengubah URL yang mengenalpasti sesuatu artikel atau halaman menggunakan kata kunci yang boleh dibaca oleh manusia. Tidak lebih daripada 150 aksara.", "this-field-can-help-describe-the-content": "Huraikan secara ringkas kandungan ini. Tidak lebih daripada 150 aksara.", From 44274331d8e3b39e3496877ed36712d2c5e7456e Mon Sep 17 00:00:00 2001 From: dignajar Date: Mon, 25 Jul 2016 20:40:51 -0300 Subject: [PATCH 07/29] Bug fixes, index.md compatibility --- bl-kernel/boot/init.php | 18 ++++++------------ bl-kernel/dbpages.class.php | 2 +- bl-plugins/pages/plugin.php | 6 +++--- install.php | 26 +++++++++++++++----------- 4 files changed, 25 insertions(+), 27 deletions(-) diff --git a/bl-kernel/boot/init.php b/bl-kernel/boot/init.php index 7ffc01ec..c1a9864e 100644 --- a/bl-kernel/boot/init.php +++ b/bl-kernel/boot/init.php @@ -91,7 +91,7 @@ define('NO_PARENT_CHAR', '3849abb4cb7abd24c2d8dac17b216f17'); define('POSTS_PER_PAGE_ADMIN', 10); // Cli mode status for new posts/pages -define('CLI_MODE', TRUE); +define('CLI_MODE', FALSE); // Cli mode status for new posts/pages define('CLI_STATUS', 'published'); @@ -100,7 +100,7 @@ define('CLI_STATUS', 'published'); define('CLI_USERNAME', 'admin'); // Filename for posts and pages -define('FILENAME', 'index.txt'); +define('FILENAME', 'index.md'); // Database date format define('DB_DATE_FORMAT', 'Y-m-d H:i:s'); @@ -123,17 +123,11 @@ define('EXTREME_FRIENDLY_URL', false); // Directory permissions define('DIR_PERMISSIONS', 0755); -// Multibyte string extension loaded. -define('MB_STRING', extension_loaded('mbstring')); +// Set internal character encoding. +mb_internal_encoding(CHARSET); -if(MB_STRING) -{ - // Set internal character encoding. - mb_internal_encoding(CHARSET); - - // Set HTTP output character encoding. - mb_http_output(CHARSET); -} +// Set HTTP output character encoding. +mb_http_output(CHARSET); // Inclde Abstract Classes include(PATH_ABSTRACT.'dbjson.class.php'); diff --git a/bl-kernel/dbpages.class.php b/bl-kernel/dbpages.class.php index cb6ca23e..76afc3b4 100644 --- a/bl-kernel/dbpages.class.php +++ b/bl-kernel/dbpages.class.php @@ -84,7 +84,7 @@ class dbPages extends dbJSON // Make the index.txt and save the file. $data = implode("\n", $dataForFile); - if( file_put_contents(PATH_PAGES.$key.FILENAME, $data) === false ) { + if( file_put_contents(PATH_PAGES.$key.DS.FILENAME, $data) === false ) { Log::set(__METHOD__.LOG_SEP.'Error occurred when trying to put the content in the file index.txt'); return false; } diff --git a/bl-plugins/pages/plugin.php b/bl-plugins/pages/plugin.php index 50f84e7f..886b6905 100644 --- a/bl-plugins/pages/plugin.php +++ b/bl-plugins/pages/plugin.php @@ -43,7 +43,7 @@ class pluginPages extends Plugin { } $html .= '
'; - $html .= '
    '; + $html .= '
      '; // Show home link ? if($this->getDbField('homeLink')) { @@ -59,8 +59,8 @@ class pluginPages extends Plugin { if( $parent->published() ) { // Print the parent - $html .= '
    • '; - $html .= ''.$parent->title().''; + $html .= '
    • '; + $html .= ''.$parent->title().''; // Check if the parent has children if(isset($pagesParents[$parent->key()])) diff --git a/install.php b/install.php index a8dcab6d..8e2bbc81 100644 --- a/install.php +++ b/install.php @@ -41,7 +41,7 @@ define('PATH_ABSTRACT', PATH_KERNEL.'abstract'.DS); define('CHECK_SYMBOLIC_LINKS', TRUE); // Filename for posts and pages -define('FILENAME', 'index.txt'); +define('FILENAME', 'index.md'); // Domain and protocol define('DOMAIN', $_SERVER['HTTP_HOST']); @@ -92,17 +92,11 @@ define('DB_DATE_FORMAT', 'Y-m-d H:i:s'); // Charset, default UTF-8. define('CHARSET', 'UTF-8'); -// Multibyte string extension loaded. -define('MB_STRING', extension_loaded('mbstring')); +// Set internal character encoding. +mb_internal_encoding(CHARSET); -if(MB_STRING) -{ - // Set internal character encoding. - mb_internal_encoding(CHARSET); - - // Set HTTP output character encoding. - mb_http_output(CHARSET); -} +// Set HTTP output character encoding. +mb_http_output(CHARSET); // --- PHP Classes --- @@ -226,6 +220,16 @@ function checkSystem() array_push($stdOut, $tmp); } + if(!in_array('mbstring', $phpModules)) + { + $errorText = 'PHP module Multibyte String (mbstring) is not installed. (ERR_206)'; + error_log($errorText, 0); + + $tmp['title'] = 'PHP module'; + $tmp['errorText'] = $errorText; + array_push($stdOut, $tmp); + } + // Try to create the directory content @mkdir(PATH_CONTENT, $dirpermissions, true); From fae098ee6f56b535fbc3c7db64df1a16db66461a Mon Sep 17 00:00:00 2001 From: dignajar Date: Mon, 25 Jul 2016 20:43:41 -0300 Subject: [PATCH 08/29] Bug fixes, index.md compatibility --- bl-kernel/admin/views/about.php | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/bl-kernel/admin/views/about.php b/bl-kernel/admin/views/about.php index 41206e7c..9cea36b2 100644 --- a/bl-kernel/admin/views/about.php +++ b/bl-kernel/admin/views/about.php @@ -14,8 +14,18 @@ echo ' '; echo ''; - echo 'Bludit'; - echo ''.BLUDIT_VERSION.' ('.BLUDIT_CODENAME.')'; + echo 'Bludit version'; + echo ''.BLUDIT_VERSION.''; + echo ''; + + echo ''; + echo 'Bludit codename'; + echo ''.BLUDIT_CODENAME.''; + echo ''; + + echo ''; + echo 'Bludit build'; + echo ''.BLUDIT_BUILD.''; echo ''; echo ''; From dabcaa6a33a76af072a82153c502216951e3a265 Mon Sep 17 00:00:00 2001 From: janxb Date: Fri, 29 Jul 2016 10:28:19 +0200 Subject: [PATCH 09/29] added php GD module to required modules. Fixes issue #300 --- install.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/install.php b/install.php index 8e2bbc81..fdde03e4 100644 --- a/install.php +++ b/install.php @@ -200,6 +200,16 @@ function checkSystem() array_push($stdOut, $tmp); } + if(!in_array('gd', $phpModules)) + { + $errorText = 'PHP module GD is not installed.'; + error_log($errorText, 0); + + $tmp['title'] = 'PHP module'; + $tmp['errorText'] = $errorText; + array_push($stdOut, $tmp); + } + if(!in_array('dom', $phpModules)) { $errorText = 'PHP module DOM is not installed. (ERR_203)'; From e3eb90ec3e11f61f4e89eda937f9651dcd7c3dcb Mon Sep 17 00:00:00 2001 From: dignajar Date: Sat, 30 Jul 2016 16:11:40 -0300 Subject: [PATCH 10/29] Minor changes --- bl-kernel/boot/init.php | 4 +- bl-themes/diego/assets/css/bludit.css | 186 + bl-themes/diego/assets/css/ie8.css | 72 + bl-themes/diego/assets/css/ie9.css | 123 + bl-themes/diego/assets/css/main.css | 3435 +++++++++++++++++++ bl-themes/diego/assets/js/ie/html5shiv.js | 8 + bl-themes/diego/assets/js/ie/respond.min.js | 6 + bl-themes/diego/assets/js/main.js | 115 + bl-themes/diego/assets/js/skel.min.js | 2 + bl-themes/diego/assets/js/util.js | 587 ++++ bl-themes/diego/img/favicon.png | Bin 0 -> 1005 bytes bl-themes/diego/img/logo.jpg | Bin 0 -> 3644 bytes bl-themes/diego/index.php | 47 + bl-themes/diego/languages/en_US.json | 7 + bl-themes/diego/languages/es_AR.json | 7 + bl-themes/diego/metadata.json | 10 + bl-themes/diego/php/head.php | 29 + bl-themes/diego/php/home.php | 83 + bl-themes/diego/php/page.php | 27 + bl-themes/diego/php/post.php | 57 + bl-themes/diego/php/sidebar.php | 41 + install.php | 2 +- 22 files changed, 4845 insertions(+), 3 deletions(-) create mode 100644 bl-themes/diego/assets/css/bludit.css create mode 100644 bl-themes/diego/assets/css/ie8.css create mode 100644 bl-themes/diego/assets/css/ie9.css create mode 100644 bl-themes/diego/assets/css/main.css create mode 100644 bl-themes/diego/assets/js/ie/html5shiv.js create mode 100644 bl-themes/diego/assets/js/ie/respond.min.js create mode 100644 bl-themes/diego/assets/js/main.js create mode 100644 bl-themes/diego/assets/js/skel.min.js create mode 100644 bl-themes/diego/assets/js/util.js create mode 100644 bl-themes/diego/img/favicon.png create mode 100644 bl-themes/diego/img/logo.jpg create mode 100644 bl-themes/diego/index.php create mode 100644 bl-themes/diego/languages/en_US.json create mode 100644 bl-themes/diego/languages/es_AR.json create mode 100644 bl-themes/diego/metadata.json create mode 100644 bl-themes/diego/php/head.php create mode 100644 bl-themes/diego/php/home.php create mode 100644 bl-themes/diego/php/page.php create mode 100644 bl-themes/diego/php/post.php create mode 100644 bl-themes/diego/php/sidebar.php diff --git a/bl-kernel/boot/init.php b/bl-kernel/boot/init.php index c1a9864e..db57ea16 100644 --- a/bl-kernel/boot/init.php +++ b/bl-kernel/boot/init.php @@ -99,8 +99,8 @@ define('CLI_STATUS', 'published'); // Cli mode username for new posts/pages define('CLI_USERNAME', 'admin'); -// Filename for posts and pages -define('FILENAME', 'index.md'); +// Filename for posts and pages, you can change for example, for index.md +define('FILENAME', 'index.txt'); // Database date format define('DB_DATE_FORMAT', 'Y-m-d H:i:s'); diff --git a/bl-themes/diego/assets/css/bludit.css b/bl-themes/diego/assets/css/bludit.css new file mode 100644 index 00000000..f59c71ad --- /dev/null +++ b/bl-themes/diego/assets/css/bludit.css @@ -0,0 +1,186 @@ +body { + padding-top: 0; + background: #F7F7F7; +} + +a { + border: none; +} + +a:hover { + border-bottom: 1px dotted rgba(160, 160, 160, 0.65) +} + +h1, h2, h3, h4, h5, h6 { + text-transform: none; + letter-spacing: 0; + font-weight: normal; + margin-bottom: 0.8em; +} + +h1 { + font-size: 1.5em; +} + +h2 { + font-size: 1.4em; +} + +h3 { + font-size: 1.3em; +} + +h4 { + font-size: 1.2em; +} + +h5 { + font-size: 1.1em; +} + +h6 { + font-size: 1em; +} + +p { + margin-bottom: 1.3em; +} + +code { + border: 0; + color: #333; + margin: 0; + font-weight: bold; +} + +pre code { + border: 1px solid #ffcb94; + font-weight: normal !important; + overflow-x: auto; +} + +#main { + max-width: 980px; +} + +#header { + background-color: #f7f7f7; + border-bottom: 0; +} + +#header h1 { + font-size: 1.4em; + font-weight: lighter; +} + +#header .links { + border-left: 0; +} + +#header .main ul li { + border-left: 0; +} + +#header .main ul li > a { + color: #2672ec; +} + +header p { + text-transform: none; + letter-spacing: 0; + font-size: 0.9em; +} + +#menu .links > li a h3 { + font-size: 1em; + margin-bottom: 0; +} + +#intro header h2 { + font-weight: lighter; + margin-bottom: 0; +} + +#intro header p { + font-size: 1em; +} + +.post { + border: 0; +} + +.post a { + color: #2672ec; +} + +.post > header { + border-bottom-color: #F7F7F7; + margin-bottom: 1.3em; +} + +.post > header .meta { + padding: 0.5em 3em 0.3em; + border-left: 0; +} + +.post > header .title { + padding: 0.5em 3em 0.3em; +} + +.post > header .title h1 { + font-size: 2em; + font-weight: normal; + margin-bottom: 5px; +} + +.post > header .title h1 a { + color: #3c3b3b; +} + +.post > footer .stats { + margin: 0; +} + +.post > footer .actions { + margin: 0; +} + +blockquote p { + margin: 10px 0; +} + +.author .name { + letter-spacing: 0.05em; +} + +#sidebar { + margin-top: 2.2em; + min-width: 0; +} + +.plugin > h2 { + font-weight: normal !important; + text-transform: uppercase; +} + +.plugin ul { + list-style: none !important; + padding: 0 !important; +} + +.plugin li { + padding: 0 !important; +} + +.plugin-pages ul.children { + margin: 0 0 0 10px; +} + +.plugin-pages li.parent { + margin: 15px 0; +} + +/* Only for Plugin tags */ +.plugin-tags li { + text-transform: capitalize; +} diff --git a/bl-themes/diego/assets/css/ie8.css b/bl-themes/diego/assets/css/ie8.css new file mode 100644 index 00000000..b56a6722 --- /dev/null +++ b/bl-themes/diego/assets/css/ie8.css @@ -0,0 +1,72 @@ +/* + Future Imperfect by HTML5 UP + html5up.net | @n33co + Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +*/ + +/* Button */ + + input[type="submit"], + input[type="reset"], + input[type="button"], + button, + .button { + border: solid 1px #dedede; + } + +/* Form */ + + input[type="text"], + input[type="password"], + input[type="email"], + input[type="tel"], + select, + textarea { + border: solid 1px #dedede; + } + +/* Post */ + + .post { + border: solid 1px #dedede; + } + + .post > header { + border-bottom: solid 1px #dedede; + } + +/* Mini Post */ + + .mini-post { + border: solid 1px #dedede; + } + +/* Header */ + + #header { + border-bottom: solid 1px #dedede; + } + + #header .links { + border-left: solid 1px #dedede; + } + + #header .main ul li { + border-left: solid 1px #dedede; + } + +/* Sidebar */ + + #sidebar > * { + border-top: solid 1px #dedede; + } + +/* Menu */ + + #menu { + border-left: solid 1px #dedede; + } + + #menu > * { + border-top: solid 1px #dedede; + } \ No newline at end of file diff --git a/bl-themes/diego/assets/css/ie9.css b/bl-themes/diego/assets/css/ie9.css new file mode 100644 index 00000000..e36dfe08 --- /dev/null +++ b/bl-themes/diego/assets/css/ie9.css @@ -0,0 +1,123 @@ +/* + Future Imperfect by HTML5 UP + html5up.net | @n33co + Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +*/ + +/* List */ + + ul.posts article:after { + clear: both; + content: ''; + display: block; + } + + ul.posts article .image { + display: table-cell; + vertical-align: top; + } + + ul.posts article header { + display: table-cell; + padding-right: 1em; + vertical-align: top; + } + +/* Author */ + + .author .name { + display: inline-block; + vertical-align: middle; + } + + .author img { + display: inline-block; + vertical-align: middle; + } + +/* Post */ + + .post:after { + clear: both; + content: ''; + display: block; + } + + .post > header:after { + clear: both; + content: ''; + display: block; + } + + .post > header .title { + display: table-cell; + vertical-align: top; + width: 65%; + } + + .post > header .meta { + display: table-cell; + vertical-align: top; + width: 30%; + } + + .post > footer:after { + clear: both; + content: ''; + display: block; + } + + .post > footer .actions { + display: inline-block; + } + + .post > footer .stats { + display: inline-block; + margin-left: 2em; + } + +/* Mini Post */ + + .mini-post .image { + display: block; + } + +/* Header */ + + #header:after { + clear: both; + content: ''; + display: block; + } + + #header h1 { + float: left; + } + + #header .links { + float: left; + } + + #header .main { + position: absolute; + right: 0; + top: 0; + } + +/* Wrapper */ + +/* Sidebar */ + + #sidebar { + display: table-cell; + margin-right: 0; + padding-right: 3em; + vertical-align: top; + } + +/* Main */ + + #main { + display: table-cell; + vertical-align: top; + } \ No newline at end of file diff --git a/bl-themes/diego/assets/css/main.css b/bl-themes/diego/assets/css/main.css new file mode 100644 index 00000000..8af48f5e --- /dev/null +++ b/bl-themes/diego/assets/css/main.css @@ -0,0 +1,3435 @@ +@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,700,400italic); + +/* + Future Imperfect by HTML5 UP + html5up.net | @n33co + Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +*/ + +/* Reset */ + + html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; + } + + article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { + display: block; + } + + body { + line-height: 1; + } + + ol, ul { + list-style: none; + } + + blockquote, q { + quotes: none; + } + + blockquote:before, blockquote:after, q:before, q:after { + content: ''; + content: none; + } + + table { + border-collapse: collapse; + border-spacing: 0; + } + + body { + -webkit-text-size-adjust: none; + } + +/* Box Model */ + + *, *:before, *:after { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; + } + +/* Grid */ + + .row { + border-bottom: solid 1px transparent; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; + } + + .row > * { + float: left; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; + } + + .row:after, .row:before { + content: ''; + display: block; + clear: both; + height: 0; + } + + .row.uniform > * > :first-child { + margin-top: 0; + } + + .row.uniform > * > :last-child { + margin-bottom: 0; + } + + .row.\30 \25 > * { + padding: 0 0 0 0em; + } + + .row.\30 \25 { + margin: 0 0 -1px 0em; + } + + .row.uniform.\30 \25 > * { + padding: 0em 0 0 0em; + } + + .row.uniform.\30 \25 { + margin: 0em 0 -1px 0em; + } + + .row > * { + padding: 0 0 0 1em; + } + + .row { + margin: 0 0 -1px -1em; + } + + .row.uniform > * { + padding: 1em 0 0 1em; + } + + .row.uniform { + margin: -1em 0 -1px -1em; + } + + .row.\32 00\25 > * { + padding: 0 0 0 2em; + } + + .row.\32 00\25 { + margin: 0 0 -1px -2em; + } + + .row.uniform.\32 00\25 > * { + padding: 2em 0 0 2em; + } + + .row.uniform.\32 00\25 { + margin: -2em 0 -1px -2em; + } + + .row.\31 50\25 > * { + padding: 0 0 0 1.5em; + } + + .row.\31 50\25 { + margin: 0 0 -1px -1.5em; + } + + .row.uniform.\31 50\25 > * { + padding: 1.5em 0 0 1.5em; + } + + .row.uniform.\31 50\25 { + margin: -1.5em 0 -1px -1.5em; + } + + .row.\35 0\25 > * { + padding: 0 0 0 0.5em; + } + + .row.\35 0\25 { + margin: 0 0 -1px -0.5em; + } + + .row.uniform.\35 0\25 > * { + padding: 0.5em 0 0 0.5em; + } + + .row.uniform.\35 0\25 { + margin: -0.5em 0 -1px -0.5em; + } + + .row.\32 5\25 > * { + padding: 0 0 0 0.25em; + } + + .row.\32 5\25 { + margin: 0 0 -1px -0.25em; + } + + .row.uniform.\32 5\25 > * { + padding: 0.25em 0 0 0.25em; + } + + .row.uniform.\32 5\25 { + margin: -0.25em 0 -1px -0.25em; + } + + .\31 2u, .\31 2u\24 { + width: 100%; + clear: none; + margin-left: 0; + } + + .\31 1u, .\31 1u\24 { + width: 91.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 0u, .\31 0u\24 { + width: 83.3333333333%; + clear: none; + margin-left: 0; + } + + .\39 u, .\39 u\24 { + width: 75%; + clear: none; + margin-left: 0; + } + + .\38 u, .\38 u\24 { + width: 66.6666666667%; + clear: none; + margin-left: 0; + } + + .\37 u, .\37 u\24 { + width: 58.3333333333%; + clear: none; + margin-left: 0; + } + + .\36 u, .\36 u\24 { + width: 50%; + clear: none; + margin-left: 0; + } + + .\35 u, .\35 u\24 { + width: 41.6666666667%; + clear: none; + margin-left: 0; + } + + .\34 u, .\34 u\24 { + width: 33.3333333333%; + clear: none; + margin-left: 0; + } + + .\33 u, .\33 u\24 { + width: 25%; + clear: none; + margin-left: 0; + } + + .\32 u, .\32 u\24 { + width: 16.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 u, .\31 u\24 { + width: 8.3333333333%; + clear: none; + margin-left: 0; + } + + .\31 2u\24 + *, + .\31 1u\24 + *, + .\31 0u\24 + *, + .\39 u\24 + *, + .\38 u\24 + *, + .\37 u\24 + *, + .\36 u\24 + *, + .\35 u\24 + *, + .\34 u\24 + *, + .\33 u\24 + *, + .\32 u\24 + *, + .\31 u\24 + * { + clear: left; + } + + .\-11u { + margin-left: 91.66667%; + } + + .\-10u { + margin-left: 83.33333%; + } + + .\-9u { + margin-left: 75%; + } + + .\-8u { + margin-left: 66.66667%; + } + + .\-7u { + margin-left: 58.33333%; + } + + .\-6u { + margin-left: 50%; + } + + .\-5u { + margin-left: 41.66667%; + } + + .\-4u { + margin-left: 33.33333%; + } + + .\-3u { + margin-left: 25%; + } + + .\-2u { + margin-left: 16.66667%; + } + + .\-1u { + margin-left: 8.33333%; + } + + @media screen and (max-width: 1680px) { + + .row > * { + padding: 0 0 0 1em; + } + + .row { + margin: 0 0 -1px -1em; + } + + .row.uniform > * { + padding: 1em 0 0 1em; + } + + .row.uniform { + margin: -1em 0 -1px -1em; + } + + .row.\32 00\25 > * { + padding: 0 0 0 2em; + } + + .row.\32 00\25 { + margin: 0 0 -1px -2em; + } + + .row.uniform.\32 00\25 > * { + padding: 2em 0 0 2em; + } + + .row.uniform.\32 00\25 { + margin: -2em 0 -1px -2em; + } + + .row.\31 50\25 > * { + padding: 0 0 0 1.5em; + } + + .row.\31 50\25 { + margin: 0 0 -1px -1.5em; + } + + .row.uniform.\31 50\25 > * { + padding: 1.5em 0 0 1.5em; + } + + .row.uniform.\31 50\25 { + margin: -1.5em 0 -1px -1.5em; + } + + .row.\35 0\25 > * { + padding: 0 0 0 0.5em; + } + + .row.\35 0\25 { + margin: 0 0 -1px -0.5em; + } + + .row.uniform.\35 0\25 > * { + padding: 0.5em 0 0 0.5em; + } + + .row.uniform.\35 0\25 { + margin: -0.5em 0 -1px -0.5em; + } + + .row.\32 5\25 > * { + padding: 0 0 0 0.25em; + } + + .row.\32 5\25 { + margin: 0 0 -1px -0.25em; + } + + .row.uniform.\32 5\25 > * { + padding: 0.25em 0 0 0.25em; + } + + .row.uniform.\32 5\25 { + margin: -0.25em 0 -1px -0.25em; + } + + .\31 2u\28xlarge\29, .\31 2u\24\28xlarge\29 { + width: 100%; + clear: none; + margin-left: 0; + } + + .\31 1u\28xlarge\29, .\31 1u\24\28xlarge\29 { + width: 91.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 0u\28xlarge\29, .\31 0u\24\28xlarge\29 { + width: 83.3333333333%; + clear: none; + margin-left: 0; + } + + .\39 u\28xlarge\29, .\39 u\24\28xlarge\29 { + width: 75%; + clear: none; + margin-left: 0; + } + + .\38 u\28xlarge\29, .\38 u\24\28xlarge\29 { + width: 66.6666666667%; + clear: none; + margin-left: 0; + } + + .\37 u\28xlarge\29, .\37 u\24\28xlarge\29 { + width: 58.3333333333%; + clear: none; + margin-left: 0; + } + + .\36 u\28xlarge\29, .\36 u\24\28xlarge\29 { + width: 50%; + clear: none; + margin-left: 0; + } + + .\35 u\28xlarge\29, .\35 u\24\28xlarge\29 { + width: 41.6666666667%; + clear: none; + margin-left: 0; + } + + .\34 u\28xlarge\29, .\34 u\24\28xlarge\29 { + width: 33.3333333333%; + clear: none; + margin-left: 0; + } + + .\33 u\28xlarge\29, .\33 u\24\28xlarge\29 { + width: 25%; + clear: none; + margin-left: 0; + } + + .\32 u\28xlarge\29, .\32 u\24\28xlarge\29 { + width: 16.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 u\28xlarge\29, .\31 u\24\28xlarge\29 { + width: 8.3333333333%; + clear: none; + margin-left: 0; + } + + .\31 2u\24\28xlarge\29 + *, + .\31 1u\24\28xlarge\29 + *, + .\31 0u\24\28xlarge\29 + *, + .\39 u\24\28xlarge\29 + *, + .\38 u\24\28xlarge\29 + *, + .\37 u\24\28xlarge\29 + *, + .\36 u\24\28xlarge\29 + *, + .\35 u\24\28xlarge\29 + *, + .\34 u\24\28xlarge\29 + *, + .\33 u\24\28xlarge\29 + *, + .\32 u\24\28xlarge\29 + *, + .\31 u\24\28xlarge\29 + * { + clear: left; + } + + .\-11u\28xlarge\29 { + margin-left: 91.66667%; + } + + .\-10u\28xlarge\29 { + margin-left: 83.33333%; + } + + .\-9u\28xlarge\29 { + margin-left: 75%; + } + + .\-8u\28xlarge\29 { + margin-left: 66.66667%; + } + + .\-7u\28xlarge\29 { + margin-left: 58.33333%; + } + + .\-6u\28xlarge\29 { + margin-left: 50%; + } + + .\-5u\28xlarge\29 { + margin-left: 41.66667%; + } + + .\-4u\28xlarge\29 { + margin-left: 33.33333%; + } + + .\-3u\28xlarge\29 { + margin-left: 25%; + } + + .\-2u\28xlarge\29 { + margin-left: 16.66667%; + } + + .\-1u\28xlarge\29 { + margin-left: 8.33333%; + } + + } + + @media screen and (max-width: 1280px) { + + .row > * { + padding: 0 0 0 1em; + } + + .row { + margin: 0 0 -1px -1em; + } + + .row.uniform > * { + padding: 1em 0 0 1em; + } + + .row.uniform { + margin: -1em 0 -1px -1em; + } + + .row.\32 00\25 > * { + padding: 0 0 0 2em; + } + + .row.\32 00\25 { + margin: 0 0 -1px -2em; + } + + .row.uniform.\32 00\25 > * { + padding: 2em 0 0 2em; + } + + .row.uniform.\32 00\25 { + margin: -2em 0 -1px -2em; + } + + .row.\31 50\25 > * { + padding: 0 0 0 1.5em; + } + + .row.\31 50\25 { + margin: 0 0 -1px -1.5em; + } + + .row.uniform.\31 50\25 > * { + padding: 1.5em 0 0 1.5em; + } + + .row.uniform.\31 50\25 { + margin: -1.5em 0 -1px -1.5em; + } + + .row.\35 0\25 > * { + padding: 0 0 0 0.5em; + } + + .row.\35 0\25 { + margin: 0 0 -1px -0.5em; + } + + .row.uniform.\35 0\25 > * { + padding: 0.5em 0 0 0.5em; + } + + .row.uniform.\35 0\25 { + margin: -0.5em 0 -1px -0.5em; + } + + .row.\32 5\25 > * { + padding: 0 0 0 0.25em; + } + + .row.\32 5\25 { + margin: 0 0 -1px -0.25em; + } + + .row.uniform.\32 5\25 > * { + padding: 0.25em 0 0 0.25em; + } + + .row.uniform.\32 5\25 { + margin: -0.25em 0 -1px -0.25em; + } + + .\31 2u\28large\29, .\31 2u\24\28large\29 { + width: 100%; + clear: none; + margin-left: 0; + } + + .\31 1u\28large\29, .\31 1u\24\28large\29 { + width: 91.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 0u\28large\29, .\31 0u\24\28large\29 { + width: 83.3333333333%; + clear: none; + margin-left: 0; + } + + .\39 u\28large\29, .\39 u\24\28large\29 { + width: 75%; + clear: none; + margin-left: 0; + } + + .\38 u\28large\29, .\38 u\24\28large\29 { + width: 66.6666666667%; + clear: none; + margin-left: 0; + } + + .\37 u\28large\29, .\37 u\24\28large\29 { + width: 58.3333333333%; + clear: none; + margin-left: 0; + } + + .\36 u\28large\29, .\36 u\24\28large\29 { + width: 50%; + clear: none; + margin-left: 0; + } + + .\35 u\28large\29, .\35 u\24\28large\29 { + width: 41.6666666667%; + clear: none; + margin-left: 0; + } + + .\34 u\28large\29, .\34 u\24\28large\29 { + width: 33.3333333333%; + clear: none; + margin-left: 0; + } + + .\33 u\28large\29, .\33 u\24\28large\29 { + width: 25%; + clear: none; + margin-left: 0; + } + + .\32 u\28large\29, .\32 u\24\28large\29 { + width: 16.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 u\28large\29, .\31 u\24\28large\29 { + width: 8.3333333333%; + clear: none; + margin-left: 0; + } + + .\31 2u\24\28large\29 + *, + .\31 1u\24\28large\29 + *, + .\31 0u\24\28large\29 + *, + .\39 u\24\28large\29 + *, + .\38 u\24\28large\29 + *, + .\37 u\24\28large\29 + *, + .\36 u\24\28large\29 + *, + .\35 u\24\28large\29 + *, + .\34 u\24\28large\29 + *, + .\33 u\24\28large\29 + *, + .\32 u\24\28large\29 + *, + .\31 u\24\28large\29 + * { + clear: left; + } + + .\-11u\28large\29 { + margin-left: 91.66667%; + } + + .\-10u\28large\29 { + margin-left: 83.33333%; + } + + .\-9u\28large\29 { + margin-left: 75%; + } + + .\-8u\28large\29 { + margin-left: 66.66667%; + } + + .\-7u\28large\29 { + margin-left: 58.33333%; + } + + .\-6u\28large\29 { + margin-left: 50%; + } + + .\-5u\28large\29 { + margin-left: 41.66667%; + } + + .\-4u\28large\29 { + margin-left: 33.33333%; + } + + .\-3u\28large\29 { + margin-left: 25%; + } + + .\-2u\28large\29 { + margin-left: 16.66667%; + } + + .\-1u\28large\29 { + margin-left: 8.33333%; + } + + } + + @media screen and (max-width: 980px) { + + .row > * { + padding: 0 0 0 1em; + } + + .row { + margin: 0 0 -1px -1em; + } + + .row.uniform > * { + padding: 1em 0 0 1em; + } + + .row.uniform { + margin: -1em 0 -1px -1em; + } + + .row.\32 00\25 > * { + padding: 0 0 0 2em; + } + + .row.\32 00\25 { + margin: 0 0 -1px -2em; + } + + .row.uniform.\32 00\25 > * { + padding: 2em 0 0 2em; + } + + .row.uniform.\32 00\25 { + margin: -2em 0 -1px -2em; + } + + .row.\31 50\25 > * { + padding: 0 0 0 1.5em; + } + + .row.\31 50\25 { + margin: 0 0 -1px -1.5em; + } + + .row.uniform.\31 50\25 > * { + padding: 1.5em 0 0 1.5em; + } + + .row.uniform.\31 50\25 { + margin: -1.5em 0 -1px -1.5em; + } + + .row.\35 0\25 > * { + padding: 0 0 0 0.5em; + } + + .row.\35 0\25 { + margin: 0 0 -1px -0.5em; + } + + .row.uniform.\35 0\25 > * { + padding: 0.5em 0 0 0.5em; + } + + .row.uniform.\35 0\25 { + margin: -0.5em 0 -1px -0.5em; + } + + .row.\32 5\25 > * { + padding: 0 0 0 0.25em; + } + + .row.\32 5\25 { + margin: 0 0 -1px -0.25em; + } + + .row.uniform.\32 5\25 > * { + padding: 0.25em 0 0 0.25em; + } + + .row.uniform.\32 5\25 { + margin: -0.25em 0 -1px -0.25em; + } + + .\31 2u\28medium\29, .\31 2u\24\28medium\29 { + width: 100%; + clear: none; + margin-left: 0; + } + + .\31 1u\28medium\29, .\31 1u\24\28medium\29 { + width: 91.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 0u\28medium\29, .\31 0u\24\28medium\29 { + width: 83.3333333333%; + clear: none; + margin-left: 0; + } + + .\39 u\28medium\29, .\39 u\24\28medium\29 { + width: 75%; + clear: none; + margin-left: 0; + } + + .\38 u\28medium\29, .\38 u\24\28medium\29 { + width: 66.6666666667%; + clear: none; + margin-left: 0; + } + + .\37 u\28medium\29, .\37 u\24\28medium\29 { + width: 58.3333333333%; + clear: none; + margin-left: 0; + } + + .\36 u\28medium\29, .\36 u\24\28medium\29 { + width: 50%; + clear: none; + margin-left: 0; + } + + .\35 u\28medium\29, .\35 u\24\28medium\29 { + width: 41.6666666667%; + clear: none; + margin-left: 0; + } + + .\34 u\28medium\29, .\34 u\24\28medium\29 { + width: 33.3333333333%; + clear: none; + margin-left: 0; + } + + .\33 u\28medium\29, .\33 u\24\28medium\29 { + width: 25%; + clear: none; + margin-left: 0; + } + + .\32 u\28medium\29, .\32 u\24\28medium\29 { + width: 16.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 u\28medium\29, .\31 u\24\28medium\29 { + width: 8.3333333333%; + clear: none; + margin-left: 0; + } + + .\31 2u\24\28medium\29 + *, + .\31 1u\24\28medium\29 + *, + .\31 0u\24\28medium\29 + *, + .\39 u\24\28medium\29 + *, + .\38 u\24\28medium\29 + *, + .\37 u\24\28medium\29 + *, + .\36 u\24\28medium\29 + *, + .\35 u\24\28medium\29 + *, + .\34 u\24\28medium\29 + *, + .\33 u\24\28medium\29 + *, + .\32 u\24\28medium\29 + *, + .\31 u\24\28medium\29 + * { + clear: left; + } + + .\-11u\28medium\29 { + margin-left: 91.66667%; + } + + .\-10u\28medium\29 { + margin-left: 83.33333%; + } + + .\-9u\28medium\29 { + margin-left: 75%; + } + + .\-8u\28medium\29 { + margin-left: 66.66667%; + } + + .\-7u\28medium\29 { + margin-left: 58.33333%; + } + + .\-6u\28medium\29 { + margin-left: 50%; + } + + .\-5u\28medium\29 { + margin-left: 41.66667%; + } + + .\-4u\28medium\29 { + margin-left: 33.33333%; + } + + .\-3u\28medium\29 { + margin-left: 25%; + } + + .\-2u\28medium\29 { + margin-left: 16.66667%; + } + + .\-1u\28medium\29 { + margin-left: 8.33333%; + } + + } + + @media screen and (max-width: 736px) { + + .row > * { + padding: 0 0 0 1em; + } + + .row { + margin: 0 0 -1px -1em; + } + + .row.uniform > * { + padding: 1em 0 0 1em; + } + + .row.uniform { + margin: -1em 0 -1px -1em; + } + + .row.\32 00\25 > * { + padding: 0 0 0 2em; + } + + .row.\32 00\25 { + margin: 0 0 -1px -2em; + } + + .row.uniform.\32 00\25 > * { + padding: 2em 0 0 2em; + } + + .row.uniform.\32 00\25 { + margin: -2em 0 -1px -2em; + } + + .row.\31 50\25 > * { + padding: 0 0 0 1.5em; + } + + .row.\31 50\25 { + margin: 0 0 -1px -1.5em; + } + + .row.uniform.\31 50\25 > * { + padding: 1.5em 0 0 1.5em; + } + + .row.uniform.\31 50\25 { + margin: -1.5em 0 -1px -1.5em; + } + + .row.\35 0\25 > * { + padding: 0 0 0 0.5em; + } + + .row.\35 0\25 { + margin: 0 0 -1px -0.5em; + } + + .row.uniform.\35 0\25 > * { + padding: 0.5em 0 0 0.5em; + } + + .row.uniform.\35 0\25 { + margin: -0.5em 0 -1px -0.5em; + } + + .row.\32 5\25 > * { + padding: 0 0 0 0.25em; + } + + .row.\32 5\25 { + margin: 0 0 -1px -0.25em; + } + + .row.uniform.\32 5\25 > * { + padding: 0.25em 0 0 0.25em; + } + + .row.uniform.\32 5\25 { + margin: -0.25em 0 -1px -0.25em; + } + + .\31 2u\28small\29, .\31 2u\24\28small\29 { + width: 100%; + clear: none; + margin-left: 0; + } + + .\31 1u\28small\29, .\31 1u\24\28small\29 { + width: 91.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 0u\28small\29, .\31 0u\24\28small\29 { + width: 83.3333333333%; + clear: none; + margin-left: 0; + } + + .\39 u\28small\29, .\39 u\24\28small\29 { + width: 75%; + clear: none; + margin-left: 0; + } + + .\38 u\28small\29, .\38 u\24\28small\29 { + width: 66.6666666667%; + clear: none; + margin-left: 0; + } + + .\37 u\28small\29, .\37 u\24\28small\29 { + width: 58.3333333333%; + clear: none; + margin-left: 0; + } + + .\36 u\28small\29, .\36 u\24\28small\29 { + width: 50%; + clear: none; + margin-left: 0; + } + + .\35 u\28small\29, .\35 u\24\28small\29 { + width: 41.6666666667%; + clear: none; + margin-left: 0; + } + + .\34 u\28small\29, .\34 u\24\28small\29 { + width: 33.3333333333%; + clear: none; + margin-left: 0; + } + + .\33 u\28small\29, .\33 u\24\28small\29 { + width: 25%; + clear: none; + margin-left: 0; + } + + .\32 u\28small\29, .\32 u\24\28small\29 { + width: 16.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 u\28small\29, .\31 u\24\28small\29 { + width: 8.3333333333%; + clear: none; + margin-left: 0; + } + + .\31 2u\24\28small\29 + *, + .\31 1u\24\28small\29 + *, + .\31 0u\24\28small\29 + *, + .\39 u\24\28small\29 + *, + .\38 u\24\28small\29 + *, + .\37 u\24\28small\29 + *, + .\36 u\24\28small\29 + *, + .\35 u\24\28small\29 + *, + .\34 u\24\28small\29 + *, + .\33 u\24\28small\29 + *, + .\32 u\24\28small\29 + *, + .\31 u\24\28small\29 + * { + clear: left; + } + + .\-11u\28small\29 { + margin-left: 91.66667%; + } + + .\-10u\28small\29 { + margin-left: 83.33333%; + } + + .\-9u\28small\29 { + margin-left: 75%; + } + + .\-8u\28small\29 { + margin-left: 66.66667%; + } + + .\-7u\28small\29 { + margin-left: 58.33333%; + } + + .\-6u\28small\29 { + margin-left: 50%; + } + + .\-5u\28small\29 { + margin-left: 41.66667%; + } + + .\-4u\28small\29 { + margin-left: 33.33333%; + } + + .\-3u\28small\29 { + margin-left: 25%; + } + + .\-2u\28small\29 { + margin-left: 16.66667%; + } + + .\-1u\28small\29 { + margin-left: 8.33333%; + } + + } + + @media screen and (max-width: 480px) { + + .row > * { + padding: 0 0 0 1em; + } + + .row { + margin: 0 0 -1px -1em; + } + + .row.uniform > * { + padding: 1em 0 0 1em; + } + + .row.uniform { + margin: -1em 0 -1px -1em; + } + + .row.\32 00\25 > * { + padding: 0 0 0 2em; + } + + .row.\32 00\25 { + margin: 0 0 -1px -2em; + } + + .row.uniform.\32 00\25 > * { + padding: 2em 0 0 2em; + } + + .row.uniform.\32 00\25 { + margin: -2em 0 -1px -2em; + } + + .row.\31 50\25 > * { + padding: 0 0 0 1.5em; + } + + .row.\31 50\25 { + margin: 0 0 -1px -1.5em; + } + + .row.uniform.\31 50\25 > * { + padding: 1.5em 0 0 1.5em; + } + + .row.uniform.\31 50\25 { + margin: -1.5em 0 -1px -1.5em; + } + + .row.\35 0\25 > * { + padding: 0 0 0 0.5em; + } + + .row.\35 0\25 { + margin: 0 0 -1px -0.5em; + } + + .row.uniform.\35 0\25 > * { + padding: 0.5em 0 0 0.5em; + } + + .row.uniform.\35 0\25 { + margin: -0.5em 0 -1px -0.5em; + } + + .row.\32 5\25 > * { + padding: 0 0 0 0.25em; + } + + .row.\32 5\25 { + margin: 0 0 -1px -0.25em; + } + + .row.uniform.\32 5\25 > * { + padding: 0.25em 0 0 0.25em; + } + + .row.uniform.\32 5\25 { + margin: -0.25em 0 -1px -0.25em; + } + + .\31 2u\28xsmall\29, .\31 2u\24\28xsmall\29 { + width: 100%; + clear: none; + margin-left: 0; + } + + .\31 1u\28xsmall\29, .\31 1u\24\28xsmall\29 { + width: 91.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 0u\28xsmall\29, .\31 0u\24\28xsmall\29 { + width: 83.3333333333%; + clear: none; + margin-left: 0; + } + + .\39 u\28xsmall\29, .\39 u\24\28xsmall\29 { + width: 75%; + clear: none; + margin-left: 0; + } + + .\38 u\28xsmall\29, .\38 u\24\28xsmall\29 { + width: 66.6666666667%; + clear: none; + margin-left: 0; + } + + .\37 u\28xsmall\29, .\37 u\24\28xsmall\29 { + width: 58.3333333333%; + clear: none; + margin-left: 0; + } + + .\36 u\28xsmall\29, .\36 u\24\28xsmall\29 { + width: 50%; + clear: none; + margin-left: 0; + } + + .\35 u\28xsmall\29, .\35 u\24\28xsmall\29 { + width: 41.6666666667%; + clear: none; + margin-left: 0; + } + + .\34 u\28xsmall\29, .\34 u\24\28xsmall\29 { + width: 33.3333333333%; + clear: none; + margin-left: 0; + } + + .\33 u\28xsmall\29, .\33 u\24\28xsmall\29 { + width: 25%; + clear: none; + margin-left: 0; + } + + .\32 u\28xsmall\29, .\32 u\24\28xsmall\29 { + width: 16.6666666667%; + clear: none; + margin-left: 0; + } + + .\31 u\28xsmall\29, .\31 u\24\28xsmall\29 { + width: 8.3333333333%; + clear: none; + margin-left: 0; + } + + .\31 2u\24\28xsmall\29 + *, + .\31 1u\24\28xsmall\29 + *, + .\31 0u\24\28xsmall\29 + *, + .\39 u\24\28xsmall\29 + *, + .\38 u\24\28xsmall\29 + *, + .\37 u\24\28xsmall\29 + *, + .\36 u\24\28xsmall\29 + *, + .\35 u\24\28xsmall\29 + *, + .\34 u\24\28xsmall\29 + *, + .\33 u\24\28xsmall\29 + *, + .\32 u\24\28xsmall\29 + *, + .\31 u\24\28xsmall\29 + * { + clear: left; + } + + .\-11u\28xsmall\29 { + margin-left: 91.66667%; + } + + .\-10u\28xsmall\29 { + margin-left: 83.33333%; + } + + .\-9u\28xsmall\29 { + margin-left: 75%; + } + + .\-8u\28xsmall\29 { + margin-left: 66.66667%; + } + + .\-7u\28xsmall\29 { + margin-left: 58.33333%; + } + + .\-6u\28xsmall\29 { + margin-left: 50%; + } + + .\-5u\28xsmall\29 { + margin-left: 41.66667%; + } + + .\-4u\28xsmall\29 { + margin-left: 33.33333%; + } + + .\-3u\28xsmall\29 { + margin-left: 25%; + } + + .\-2u\28xsmall\29 { + margin-left: 16.66667%; + } + + .\-1u\28xsmall\29 { + margin-left: 8.33333%; + } + + } + +/* Basic */ + + @-ms-viewport { + width: device-width; + } + + body { + -ms-overflow-style: scrollbar; + } + + @media screen and (max-width: 480px) { + + html, body { + min-width: 320px; + } + + } + + body { + background: #f4f4f4; + } + + body.is-loading *, body.is-loading *:before, body.is-loading *:after { + -moz-animation: none !important; + -webkit-animation: none !important; + -ms-animation: none !important; + animation: none !important; + -moz-transition: none !important; + -webkit-transition: none !important; + -ms-transition: none !important; + transition: none !important; + } + +/* Type */ + + body, input, select, textarea { + color: #646464; + font-family: 'Open Sans', sans-serif; + font-size: 14pt; + font-weight: 400; + line-height: 1.75; + } + + @media screen and (max-width: 1680px) { + + body, input, select, textarea { + font-size: 12pt; + } + + } + + @media screen and (max-width: 1280px) { + + body, input, select, textarea { + font-size: 12pt; + } + + } + + @media screen and (max-width: 980px) { + + body, input, select, textarea { + font-size: 12pt; + } + + } + + @media screen and (max-width: 736px) { + + body, input, select, textarea { + font-size: 12pt; + } + + } + + @media screen and (max-width: 480px) { + + body, input, select, textarea { + font-size: 12pt; + } + + } + + a { + -moz-transition: color 0.2s ease, border-bottom-color 0.2s ease; + -webkit-transition: color 0.2s ease, border-bottom-color 0.2s ease; + -ms-transition: color 0.2s ease, border-bottom-color 0.2s ease; + transition: color 0.2s ease, border-bottom-color 0.2s ease; + border-bottom: dotted 1px rgba(160, 160, 160, 0.65); + color: inherit; + text-decoration: none; + } + + a:before { + -moz-transition: color 0.2s ease; + -webkit-transition: color 0.2s ease; + -ms-transition: color 0.2s ease; + transition: color 0.2s ease; + } + + a:hover { + border-bottom-color: transparent; + color: #2672ec !important; + } + + a:hover:before { + color: #2672ec !important; + } + + strong, b { + color: #3c3b3b; + font-weight: 700; + } + + em, i { + font-style: italic; + } + + p { + margin: 0 0 2em 0; + } + + h1, h2, h3, h4, h5, h6 { + color: #3c3b3b; + font-family: 'Open Sans', sans-serif; + font-weight: 800; + letter-spacing: 0.25em; + line-height: 1.65; + margin: 0 0 1em 0; + text-transform: uppercase; + } + + h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { + color: inherit; + border-bottom: 0; + } + + h2 { + font-size: 1.1em; + } + + h3 { + font-size: 0.9em; + } + + h4 { + font-size: 0.7em; + } + + h5 { + font-size: 0.7em; + } + + h6 { + font-size: 0.7em; + } + + sub { + font-size: 0.8em; + position: relative; + top: 0.5em; + } + + sup { + font-size: 0.8em; + position: relative; + top: -0.5em; + } + + blockquote { + border-left: solid 4px rgba(160, 160, 160, 0.3); + font-style: italic; + margin: 0 0 2em 0; + padding: 0.5em 0 0.5em 2em; + } + + code { + background: rgba(160, 160, 160, 0.075); + border: solid 1px rgba(160, 160, 160, 0.3); + font-family: "Courier New", monospace; + font-size: 0.9em; + margin: 0 0.25em; + padding: 0.25em 0.65em; + } + + pre { + -webkit-overflow-scrolling: touch; + font-family: "Courier New", monospace; + font-size: 0.9em; + margin: 0 0 2em 0; + } + + pre code { + display: block; + line-height: 1.75em; + padding: 1em 1.5em; + overflow-x: auto; + } + + hr { + border: 0; + border-bottom: solid 1px rgba(160, 160, 160, 0.3); + margin: 2em 0; + } + + hr.major { + margin: 3em 0; + } + + .align-left { + text-align: left; + } + + .align-center { + text-align: center; + } + + .align-right { + text-align: right; + } + +/* Author */ + + .author { + display: -moz-flex; + display: -webkit-flex; + display: -ms-flex; + display: flex; + -moz-flex-direction: row; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -moz-align-items: center; + -webkit-align-items: center; + -ms-align-items: center; + align-items: center; + -moz-justify-content: -moz-flex-end; + -webkit-justify-content: -webkit-flex-end; + -ms-justify-content: -ms-flex-end; + justify-content: flex-end; + border-bottom: 0; + font-family: 'Open Sans', sans-serif; + font-size: 0.6em; + font-weight: 400; + letter-spacing: 0.25em; + text-transform: uppercase; + white-space: nowrap; + } + + .author .name { + -moz-transition: border-bottom-color 0.2s ease; + -webkit-transition: border-bottom-color 0.2s ease; + -ms-transition: border-bottom-color 0.2s ease; + transition: border-bottom-color 0.2s ease; + border-bottom: dotted 1px rgba(160, 160, 160, 0.65); + display: block; + margin: 0 1.5em 0 0; + } + + .author img { + border-radius: 100%; + display: block; + width: 4em; + } + + .author:hover .name { + border-bottom-color: transparent; + } + +/* Blurb */ + + .blurb h2 { + font-size: 0.8em; + margin: 0 0 1.5em 0; + } + + .blurb h3 { + font-size: 0.7em; + } + + .blurb p { + font-size: 0.9em; + } + +/* Box */ + + .box { + border: solid 1px rgba(160, 160, 160, 0.3); + margin-bottom: 2em; + padding: 1.5em; + } + + .box > :last-child, + .box > :last-child > :last-child, + .box > :last-child > :last-child > :last-child { + margin-bottom: 0; + } + + .box.alt { + border: 0; + border-radius: 0; + padding: 0; + } + +/* Button */ + + input[type="submit"], + input[type="reset"], + input[type="button"], + button, + .button { + -moz-appearance: none; + -webkit-appearance: none; + -ms-appearance: none; + appearance: none; + -moz-transition: background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease; + -webkit-transition: background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease; + -ms-transition: background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease; + transition: background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease; + background-color: transparent; + border: 0; + box-shadow: inset 0 0 0 1px rgba(160, 160, 160, 0.3); + color: #3c3b3b !important; + cursor: pointer; + display: inline-block; + font-family: 'Open Sans', sans-serif; + font-size: 0.6em; + font-weight: 800; + height: 4.8125em; + letter-spacing: 0.25em; + line-height: 4.8125em; + padding: 0 2.5em; + text-align: center; + text-decoration: none; + text-transform: uppercase; + white-space: nowrap; + } + + input[type="submit"]:hover, + input[type="reset"]:hover, + input[type="button"]:hover, + button:hover, + .button:hover { + box-shadow: inset 0 0 0 1px #2672ec; + color: #2672ec !important; + } + + input[type="submit"]:hover:active, + input[type="reset"]:hover:active, + input[type="button"]:hover:active, + button:hover:active, + .button:hover:active { + background-color: rgba(46, 186, 174, 0.05); + } + + input[type="submit"]:before, input[type="submit"]:after, + input[type="reset"]:before, + input[type="reset"]:after, + input[type="button"]:before, + input[type="button"]:after, + button:before, + button:after, + .button:before, + .button:after { + color: #aaaaaa; + position: relative; + } + + input[type="submit"]:before, + input[type="reset"]:before, + input[type="button"]:before, + button:before, + .button:before { + left: -1em; + padding: 0 0 0 0.75em; + } + + input[type="submit"]:after, + input[type="reset"]:after, + input[type="button"]:after, + button:after, + .button:after { + left: 1em; + padding: 0 0.75em 0 0; + } + + input[type="submit"].fit, + input[type="reset"].fit, + input[type="button"].fit, + button.fit, + .button.fit { + display: block; + margin: 0 0 1em 0; + width: 100%; + } + + input[type="submit"].big, + input[type="reset"].big, + input[type="button"].big, + button.big, + .button.big { + font-size: 0.7em; + padding: 0 3em; + } + + input[type="submit"].small, + input[type="reset"].small, + input[type="button"].small, + button.small, + .button.small { + font-size: 0.5em; + } + + input[type="submit"].disabled, input[type="submit"]:disabled, + input[type="reset"].disabled, + input[type="reset"]:disabled, + input[type="button"].disabled, + input[type="button"]:disabled, + button.disabled, + button:disabled, + .button.disabled, + .button:disabled { + -moz-pointer-events: none; + -webkit-pointer-events: none; + -ms-pointer-events: none; + pointer-events: none; + color: rgba(160, 160, 160, 0.3) !important; + } + + input[type="submit"].disabled:before, input[type="submit"]:disabled:before, + input[type="reset"].disabled:before, + input[type="reset"]:disabled:before, + input[type="button"].disabled:before, + input[type="button"]:disabled:before, + button.disabled:before, + button:disabled:before, + .button.disabled:before, + .button:disabled:before { + color: rgba(160, 160, 160, 0.3) !important; + } + +/* Form */ + + form { + margin: 0 0 2em 0; + } + + form.search { + text-decoration: none; + position: relative; + } + + form.search:before { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + font-family: FontAwesome; + font-style: normal; + font-weight: normal; + text-transform: none !important; + } + + form.search:before { + color: #aaaaaa; + content: '\f002'; + display: block; + height: 2.75em; + left: 0; + line-height: 2.75em; + position: absolute; + text-align: center; + top: 0; + width: 2.5em; + } + + form.search > input:first-child { + padding-left: 2.5em; + } + + label { + color: #3c3b3b; + display: block; + font-size: 0.9em; + font-weight: 700; + margin: 0 0 1em 0; + } + + input[type="text"], + input[type="password"], + input[type="email"], + input[type="tel"], + select, + textarea { + -moz-appearance: none; + -webkit-appearance: none; + -ms-appearance: none; + appearance: none; + background: rgba(160, 160, 160, 0.075); + border: none; + border: solid 1px rgba(160, 160, 160, 0.3); + border-radius: 0; + color: inherit; + display: block; + outline: 0; + padding: 0 1em; + text-decoration: none; + width: 100%; + } + + input[type="text"]:invalid, + input[type="password"]:invalid, + input[type="email"]:invalid, + input[type="tel"]:invalid, + select:invalid, + textarea:invalid { + box-shadow: none; + } + + input[type="text"]:focus, + input[type="password"]:focus, + input[type="email"]:focus, + input[type="tel"]:focus, + select:focus, + textarea:focus { + border-color: #2672ec; + box-shadow: inset 0 0 0 1px #2672ec; + } + + .select-wrapper { + text-decoration: none; + display: block; + position: relative; + } + + .select-wrapper:before { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + font-family: FontAwesome; + font-style: normal; + font-weight: normal; + text-transform: none !important; + } + + .select-wrapper:before { + color: rgba(160, 160, 160, 0.3); + content: '\f078'; + display: block; + height: 2.75em; + line-height: 2.75em; + pointer-events: none; + position: absolute; + right: 0; + text-align: center; + top: 0; + width: 2.75em; + } + + .select-wrapper select::-ms-expand { + display: none; + } + + input[type="text"], + input[type="password"], + input[type="email"], + select { + height: 2.75em; + } + + textarea { + padding: 0.75em 1em; + } + + input[type="checkbox"], + input[type="radio"] { + -moz-appearance: none; + -webkit-appearance: none; + -ms-appearance: none; + appearance: none; + display: block; + float: left; + margin-right: -2em; + opacity: 0; + width: 1em; + z-index: -1; + } + + input[type="checkbox"] + label, + input[type="radio"] + label { + text-decoration: none; + color: #646464; + cursor: pointer; + display: inline-block; + font-size: 1em; + font-weight: 400; + padding-left: 2.4em; + padding-right: 0.75em; + position: relative; + } + + input[type="checkbox"] + label:before, + input[type="radio"] + label:before { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + font-family: FontAwesome; + font-style: normal; + font-weight: normal; + text-transform: none !important; + } + + input[type="checkbox"] + label:before, + input[type="radio"] + label:before { + background: rgba(160, 160, 160, 0.075); + border: solid 1px rgba(160, 160, 160, 0.3); + content: ''; + display: inline-block; + height: 1.65em; + left: 0; + line-height: 1.58125em; + position: absolute; + text-align: center; + top: 0; + width: 1.65em; + } + + input[type="checkbox"]:checked + label:before, + input[type="radio"]:checked + label:before { + background: #3c3b3b; + border-color: #3c3b3b; + color: #ffffff; + content: '\f00c'; + } + + input[type="checkbox"]:focus + label:before, + input[type="radio"]:focus + label:before { + border-color: #2672ec; + box-shadow: 0 0 0 1px #2672ec; + } + + input[type="radio"] + label:before { + border-radius: 100%; + } + + ::-webkit-input-placeholder { + color: #aaaaaa !important; + opacity: 1.0; + } + + :-moz-placeholder { + color: #aaaaaa !important; + opacity: 1.0; + } + + ::-moz-placeholder { + color: #aaaaaa !important; + opacity: 1.0; + } + + :-ms-input-placeholder { + color: #aaaaaa !important; + opacity: 1.0; + } + + .formerize-placeholder { + color: #aaaaaa !important; + opacity: 1.0; + } + +/* Icon */ + + .icon { + text-decoration: none; + border-bottom: none; + position: relative; + } + + .icon:before { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + font-family: FontAwesome; + font-style: normal; + font-weight: normal; + text-transform: none !important; + } + + .icon > .label { + display: none; + } + + .icon.suffix:before { + float: right; + } + +/* Image */ + + .image { + border: 0; + display: inline-block; + position: relative; + } + + .image img { + display: block; + } + + .image.left, .image.right { + max-width: 40%; + } + + .image.left img, .image.right img { + width: 100%; + } + + .image.left { + float: left; + padding: 0 1.5em 1em 0; + top: 0.25em; + } + + .image.right { + float: right; + padding: 0 0 1em 1.5em; + top: 0.25em; + } + + .image.fit { + display: block; + margin: 0 0 2em 0; + width: 100%; + } + + .image.fit img { + width: 100%; + } + + .image.featured { + display: block; + margin: 0 0 3em 0; + width: 100%; + } + + .image.featured img { + width: 100%; + } + + @media screen and (max-width: 736px) { + + .image.featured { + margin: 0 0 1.5em 0; + } + + } + + .image.main { + display: block; + margin: 0 0 3em 0; + width: 100%; + } + + .image.main img { + width: 100%; + } + +/* List */ + + ol { + list-style: decimal; + margin: 0 0 2em 0; + padding-left: 1.25em; + } + + ol li { + padding-left: 0.25em; + } + + ul { + list-style: disc; + margin: 0 0 2em 0; + padding-left: 1em; + } + + ul li { + padding-left: 0.5em; + } + + ul.alt { + list-style: none; + padding-left: 0; + } + + ul.alt li { + border-top: solid 1px rgba(160, 160, 160, 0.3); + padding: 0.5em 0; + } + + ul.alt li:first-child { + border-top: 0; + padding-top: 0; + } + + ul.icons { + cursor: default; + list-style: none; + padding-left: 0; + } + + ul.icons li { + display: inline-block; + padding: 0 1em 0 0; + } + + ul.icons li:last-child { + padding-right: 0; + } + + ul.icons li > * { + text-decoration: none; + border: 0; + } + + ul.icons li > *:before { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + font-family: FontAwesome; + font-style: normal; + font-weight: normal; + text-transform: none !important; + } + + ul.icons li > * .label { + display: none; + } + + ul.actions { + cursor: default; + list-style: none; + padding-left: 0; + } + + ul.actions li { + display: inline-block; + padding: 0 1.5em 0 0; + vertical-align: middle; + } + + ul.actions li:last-child { + padding-right: 0; + } + + ul.actions.pagination .next { + text-decoration: none; + } + + ul.actions.pagination .next:after { + content: ""; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + font-family: FontAwesome; + font-style: normal; + font-weight: normal; + text-transform: none !important; + } + + ul.actions.pagination .next:after { + content: '\f054'; + } + + ul.actions.pagination .previous { + text-decoration: none; + } + + ul.actions.pagination .previous:before { + content: ""; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + font-family: FontAwesome; + font-style: normal; + font-weight: normal; + text-transform: none !important; + } + + ul.actions.pagination .previous:before { + content: '\f053'; + } + + @media screen and (max-width: 1280px) { + + ul.actions.pagination { + text-align: center; + } + + ul.actions.pagination .next, ul.actions.pagination .previous { + min-width: 20em; + } + + } + + @media screen and (max-width: 736px) { + + ul.actions.pagination .next, ul.actions.pagination .previous { + min-width: 18em; + } + + } + + ul.actions.small li { + padding: 0 1em 0 0; + } + + ul.actions.vertical li { + display: block; + padding: 1.5em 0 0 0; + } + + ul.actions.vertical li:first-child { + padding-top: 0; + } + + ul.actions.vertical li > * { + margin-bottom: 0; + } + + ul.actions.vertical.small li { + padding: 1em 0 0 0; + } + + ul.actions.vertical.small li:first-child { + padding-top: 0; + } + + ul.actions.fit { + display: table; + margin-left: -1em; + padding: 0; + table-layout: fixed; + width: calc(100% + 1em); + } + + ul.actions.fit li { + display: table-cell; + padding: 0 0 0 1em; + } + + ul.actions.fit li > * { + margin-bottom: 0; + } + + ul.actions.fit.small { + margin-left: -0.5em; + width: calc(100% + 0.5em); + } + + ul.actions.fit.small li { + padding: 0 0 0 0.5em; + } + + @media screen and (max-width: 480px) { + + ul.actions { + margin: 0 0 2em 0; + } + + ul.actions li { + padding: 1em 0 0 0; + display: block; + text-align: center; + width: 100%; + } + + ul.actions li:first-child { + padding-top: 0; + } + + ul.actions li > * { + width: 100%; + margin: 0 !important; + } + + ul.actions.small li { + padding: 0.5em 0 0 0; + } + + ul.actions.small li:first-child { + padding-top: 0; + } + + } + + ul.posts { + list-style: none; + padding: 0; + } + + ul.posts li { + border-top: dotted 1px rgba(160, 160, 160, 0.3); + margin: 1.5em 0 0 0; + padding: 1.5em 0 0 0; + } + + ul.posts li:first-child { + border-top: 0; + margin-top: 0; + padding-top: 0; + } + + ul.posts article { + display: -moz-flex; + display: -webkit-flex; + display: -ms-flex; + display: flex; + -moz-align-items: -moz-flex-start; + -webkit-align-items: -webkit-flex-start; + -ms-align-items: -ms-flex-start; + align-items: flex-start; + -moz-flex-direction: row-reverse; + -webkit-flex-direction: row-reverse; + -ms-flex-direction: row-reverse; + flex-direction: row-reverse; + } + + ul.posts article .image { + display: block; + margin-right: 1.5em; + min-width: 4em; + width: 4em; + } + + ul.posts article .image img { + width: 100%; + } + + ul.posts article header { + -moz-flex-grow: 1; + -webkit-flex-grow: 1; + -ms-flex-grow: 1; + flex-grow: 1; + -ms-flex: 1; + } + + ul.posts article header h3 { + font-size: 0.7em; + margin-top: 0.125em; + } + + ul.posts article header .published { + display: block; + font-family: 'Open Sans', sans-serif; + font-size: 0.6em; + font-weight: 400; + letter-spacing: 0.25em; + margin: -0.625em 0 1.7em 0; + text-transform: uppercase; + } + + ul.posts article header > :last-child { + margin-bottom: 0; + } + + dl { + margin: 0 0 2em 0; + } + + dl dt { + display: block; + font-weight: 700; + margin: 0 0 1em 0; + } + + dl dd { + margin-left: 2em; + } + +/* Mini Post */ + + .mini-post { + display: -moz-flex; + display: -webkit-flex; + display: -ms-flex; + display: flex; + -moz-flex-direction: column-reverse; + -webkit-flex-direction: column-reverse; + -ms-flex-direction: column-reverse; + flex-direction: column-reverse; + background: #ffffff; + border: solid 1px rgba(160, 160, 160, 0.3); + margin: 0 0 2em 0; + } + + .mini-post .image { + overflow: hidden; + width: 100%; + } + + .mini-post .image img { + -moz-transition: -moz-transform 0.2s ease-out; + -webkit-transition: -webkit-transform 0.2s ease-out; + -ms-transition: -ms-transform 0.2s ease-out; + transition: transform 0.2s ease-out; + width: 100%; + } + + .mini-post .image:hover img { + -moz-transform: scale(1.05); + -webkit-transform: scale(1.05); + -ms-transform: scale(1.05); + transform: scale(1.05); + } + + .mini-post header { + padding: 1.25em 4.25em 0.1em 1.25em ; + min-height: 4em; + position: relative; + -moz-flex-grow: 1; + -webkit-flex-grow: 1; + -ms-flex-grow: 1; + flex-grow: 1; + } + + .mini-post header h3 { + font-size: 0.7em; + } + + .mini-post header .published { + display: block; + font-family: 'Open Sans', sans-serif; + font-size: 0.6em; + font-weight: 400; + letter-spacing: 0.25em; + margin: -0.625em 0 1.7em 0; + text-transform: uppercase; + } + + .mini-post header .author { + position: absolute; + right: 2em; + top: 2em; + } + + .mini-posts { + margin: 0 0 2em 0; + } + + @media screen and (max-width: 1280px) { + + .mini-posts { + display: -moz-flex; + display: -webkit-flex; + display: -ms-flex; + display: flex; + -moz-flex-wrap: wrap; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + width: calc(100% + 2em); + } + + .mini-posts > * { + margin: 2em 2em 0 0; + width: calc(50% - 2em); + } + + .mini-posts > :nth-child(-n + 2) { + margin-top: 0; + } + + } + + @media screen and (max-width: 480px) { + + .mini-posts { + display: block; + width: 100%; + } + + .mini-posts > * { + margin: 0 0 2em 0; + width: 100%; + } + + } + +/* Post */ + + .post { + padding: 3em 3em 1em 3em ; + background: #ffffff; + border: solid 1px rgba(160, 160, 160, 0.3); + margin: 0 0 3em 0; + position: relative; + } + + .post > header { + display: -moz-flex; + display: -webkit-flex; + display: -ms-flex; + display: flex; + border-bottom: solid 1px rgba(160, 160, 160, 0.3); + left: -3em; + margin: -3em 0 3em 0; + position: relative; + width: calc(100% + 6em); + } + + .post > header .title { + -moz-flex-grow: 1; + -webkit-flex-grow: 1; + -ms-flex-grow: 1; + flex-grow: 1; + -ms-flex: 1; + padding: 3.75em 3em 3.3em 3em; + } + + .post > header .title h2 { + font-weight: 900; + font-size: 1.5em; + } + + .post > header .title > :last-child { + margin-bottom: 0; + } + + .post > header .meta { + padding: 3.75em 3em 1.75em 3em ; + border-left: solid 1px rgba(160, 160, 160, 0.3); + min-width: 17em; + text-align: right; + width: 17em; + } + + .post > header .meta > * { + margin: 0 0 1em 0; + } + + .post > header .meta > :last-child { + margin-bottom: 0; + } + + .post > header .meta .published { + color: #3c3b3b; + display: block; + font-family: 'Open Sans', sans-serif; + font-size: 0.7em; + font-weight: 800; + letter-spacing: 0.25em; + margin-top: 0.5em; + text-transform: uppercase; + white-space: nowrap; + } + + .post > .image.featured { + overflow: hidden; + } + + .post > .image.featured img { + -moz-transition: -moz-transform 0.2s ease-out; + -webkit-transition: -webkit-transform 0.2s ease-out; + -ms-transition: -ms-transform 0.2s ease-out; + transition: transform 0.2s ease-out; + } + + .post > .image.featured:hover img { + -moz-transform: scale(1.05); + -webkit-transform: scale(1.05); + -ms-transform: scale(1.05); + transform: scale(1.05); + } + + .post > footer { + display: -moz-flex; + display: -webkit-flex; + display: -ms-flex; + display: flex; + -moz-align-items: center; + -webkit-align-items: center; + -ms-align-items: center; + align-items: center; + } + + .post > footer .actions { + -moz-flex-grow: 1; + -webkit-flex-grow: 1; + -ms-flex-grow: 1; + flex-grow: 1; + } + + .post > footer .stats { + cursor: default; + list-style: none; + padding: 0; + } + + .post > footer .stats li { + border-left: solid 1px rgba(160, 160, 160, 0.3); + display: inline-block; + font-family: 'Open Sans', sans-serif; + font-size: 0.6em; + font-weight: 400; + letter-spacing: 0.25em; + line-height: 1; + margin: 0 0 0 2em; + padding: 0 0 0 2em; + text-transform: uppercase; + } + + .post > footer .stats li:first-child { + border-left: 0; + margin-left: 0; + padding-left: 0; + } + + .post > footer .stats li .icon { + border-bottom: 0; + } + + .post > footer .stats li .icon:before { + color: rgba(160, 160, 160, 0.3); + margin-right: 0.75em; + } + + @media screen and (max-width: 980px) { + + .post { + border-left: 0; + border-right: 0; + left: -3em; + width: calc(100% + (3em * 2)); + } + + .post > header { + -moz-flex-direction: column; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + padding: 3.75em 3em 1.25em 3em ; + border-left: 0; + } + + .post > header .title { + -ms-flex: 0 1 auto; + margin: 0 0 2em 0; + padding: 0; + text-align: center; + } + + .post > header .meta { + -moz-align-items: center; + -webkit-align-items: center; + -ms-align-items: center; + align-items: center; + display: -moz-flex; + display: -webkit-flex; + display: -ms-flex; + display: flex; + -moz-justify-content: center; + -webkit-justify-content: center; + -ms-justify-content: center; + justify-content: center; + border-left: 0; + margin: 0 0 2em 0; + padding-top: 0; + padding: 0; + text-align: left; + width: 100%; + } + + .post > header .meta > * { + border-left: solid 1px rgba(160, 160, 160, 0.3); + margin-left: 2em; + padding-left: 2em; + } + + .post > header .meta > :first-child { + border-left: 0; + margin-left: 0; + padding-left: 0; + } + + .post > header .meta .published { + margin-bottom: 0; + margin-top: 0; + } + + .post > header .meta .author { + -moz-flex-direction: row-reverse; + -webkit-flex-direction: row-reverse; + -ms-flex-direction: row-reverse; + flex-direction: row-reverse; + margin-bottom: 0; + } + + .post > header .meta .author .name { + margin: 0 0 0 1.5em; + } + + .post > header .meta .author img { + width: 3.5em; + } + + } + + @media screen and (max-width: 736px) { + + .post { + padding: 1.5em 1.5em 0.1em 1.5em ; + left: -1.5em; + margin: 0 0 2em 0; + width: calc(100% + (1.5em * 2)); + } + + .post > header { + padding: 3em 1.5em 0.5em 1.5em ; + left: -1.5em; + margin: -1.5em 0 1.5em 0; + width: calc(100% + 3em); + } + + .post > header .title h2 { + font-size: 1.1em; + } + + } + + @media screen and (max-width: 480px) { + + .post > header .meta { + -moz-align-items: center; + -webkit-align-items: center; + -ms-align-items: center; + align-items: center; + -moz-flex-direction: column; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + } + + .post > header .meta > * { + border-left: 0; + margin: 1em 0 0 0; + padding-left: 0; + } + + .post > header .meta .author .name { + display: none; + } + + .post > .image.featured { + margin-left: -1.5em; + margin-top: calc(-1.5em - 1px); + width: calc(100% + 3em); + } + + .post > footer { + -moz-align-items: stretch; + -webkit-align-items: stretch; + -ms-align-items: stretch; + align-items: stretch; + -moz-flex-direction: column-reverse; + -webkit-flex-direction: column-reverse; + -ms-flex-direction: column-reverse; + flex-direction: column-reverse; + } + + .post > footer .stats { + text-align: center; + } + + .post > footer .stats li { + margin: 0 0 0 1.25em; + padding: 0 0 0 1.25em; + } + + } + +/* Section/Article */ + + section.special, article.special { + text-align: center; + } + + header p { + font-family: 'Open Sans', sans-serif; + font-size: 0.7em; + font-weight: 400; + letter-spacing: 0.25em; + line-height: 2.5; + margin-top: -1em; + text-transform: uppercase; + } + +/* Table */ + + .table-wrapper { + -webkit-overflow-scrolling: touch; + overflow-x: auto; + } + + table { + margin: 0 0 2em 0; + width: 100%; + } + + table tbody tr { + border: solid 1px rgba(160, 160, 160, 0.3); + border-left: 0; + border-right: 0; + } + + table tbody tr:nth-child(2n + 1) { + background-color: rgba(160, 160, 160, 0.075); + } + + table td { + padding: 0.75em 0.75em; + } + + table th { + color: #3c3b3b; + font-size: 0.9em; + font-weight: 700; + padding: 0 0.75em 0.75em 0.75em; + text-align: left; + } + + table thead { + border-bottom: solid 2px rgba(160, 160, 160, 0.3); + } + + table tfoot { + border-top: solid 2px rgba(160, 160, 160, 0.3); + } + + table.alt { + border-collapse: separate; + } + + table.alt tbody tr td { + border: solid 1px rgba(160, 160, 160, 0.3); + border-left-width: 0; + border-top-width: 0; + } + + table.alt tbody tr td:first-child { + border-left-width: 1px; + } + + table.alt tbody tr:first-child td { + border-top-width: 1px; + } + + table.alt thead { + border-bottom: 0; + } + + table.alt tfoot { + border-top: 0; + } + +/* Header */ + + body { + padding-top: 3.5em; + } + + #header { + display: -moz-flex; + display: -webkit-flex; + display: -ms-flex; + display: flex; + -moz-justify-content: space-between; + -webkit-justify-content: space-between; + -ms-justify-content: space-between; + justify-content: space-between; + background-color: #ffffff; + border-bottom: solid 1px rgba(160, 160, 160, 0.3); + height: 3.5em; + left: 0; + line-height: 3.5em; + position: fixed; + top: 0; + width: 100%; + z-index: 10000; + } + + #header a { + color: inherit; + text-decoration: none; + } + + #header ul { + list-style: none; + margin: 0; + padding-left: 0; + } + + #header ul li { + display: inline-block; + padding-left: 0; + } + + #header h1 { + height: inherit; + line-height: inherit; + padding: 0 0 0 1.5em; + white-space: nowrap; + } + + #header h1 a { + font-size: 0.7em; + } + + #header .links { + -moz-flex: 1; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; + border-left: solid 1px rgba(160, 160, 160, 0.3); + height: inherit; + line-height: inherit; + margin-left: 1.5em; + overflow: hidden; + padding-left: 1.5em; + } + + #header .links ul li { + border-left: solid 1px rgba(160, 160, 160, 0.3); + line-height: 1; + margin-left: 1em; + padding-left: 1em; + } + + #header .links ul li:first-child { + border-left: 0; + margin-left: 0; + padding-left: 0; + } + + #header .links ul li a { + border-bottom: 0; + font-family: 'Open Sans', sans-serif; + font-size: 0.7em; + font-weight: 400; + letter-spacing: 0.25em; + text-transform: uppercase; + } + + #header .main { + height: inherit; + line-height: inherit; + text-align: right; + } + + #header .main ul { + height: inherit; + line-height: inherit; + } + + #header .main ul li { + border-left: solid 1px rgba(160, 160, 160, 0.3); + height: inherit; + line-height: inherit; + white-space: nowrap; + } + + #header .main ul li > * { + display: block; + float: left; + } + + #header .main ul li > a { + text-decoration: none; + border-bottom: 0; + color: #aaaaaa; + overflow: hidden; + position: relative; + text-indent: 4em; + width: 4em; + } + + #header .main ul li > a:before { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + font-family: FontAwesome; + font-style: normal; + font-weight: normal; + text-transform: none !important; + } + + #header .main ul li > a:before { + display: block; + height: inherit; + left: 0; + line-height: inherit; + position: absolute; + text-align: center; + text-indent: 0; + top: 0; + width: inherit; + } + + #header form { + margin: 0; + } + + #header form input { + display: inline-block; + height: 2.5em; + position: relative; + top: -2px; + vertical-align: middle; + } + + #header #search { + -moz-transition: all 0.5s ease; + -webkit-transition: all 0.5s ease; + -ms-transition: all 0.5s ease; + transition: all 0.5s ease; + max-width: 0; + opacity: 0; + overflow: hidden; + padding: 0; + white-space: nowrap; + } + + #header #search input { + width: 12em; + } + + #header #search.visible { + max-width: 12.5em; + opacity: 1; + padding: 0 0.5em 0 0; + } + + @media screen and (max-width: 980px) { + + #header .links { + display: none; + } + + } + + @media screen and (max-width: 736px) { + + #header { + height: 2.75em; + line-height: 2.75em; + } + + #header h1 { + padding: 0 0 0 1em; + } + + #header .main .search { + display: none; + } + + } + +/* Wrapper */ + + #wrapper { + display: -moz-flex; + display: -webkit-flex; + display: -ms-flex; + display: flex; + -moz-flex-direction: row-reverse; + -webkit-flex-direction: row-reverse; + -ms-flex-direction: row-reverse; + flex-direction: row-reverse; + -moz-transition: opacity 0.5s ease; + -webkit-transition: opacity 0.5s ease; + -ms-transition: opacity 0.5s ease; + transition: opacity 0.5s ease; + margin: 0 auto; + max-width: 100%; + opacity: 1; + padding: 4.5em; + width: 90em; + } + + body.is-menu-visible #wrapper { + opacity: 0.15; + } + + @media screen and (max-width: 1680px) { + + #wrapper { + padding: 6.3em 3em; + } + + } + + @media screen and (max-width: 1280px) { + + #wrapper { + display: block; + } + + } + + @media screen and (max-width: 736px) { + + #wrapper { + padding: 1.5em; + } + + } + +/* Main */ + + #main { + -moz-flex-grow: 1; + -webkit-flex-grow: 1; + -ms-flex-grow: 1; + flex-grow: 1; + -ms-flex: 1; + width: 100%; + } + +/* Sidebar */ + + #sidebar { + margin-right: 3em; + min-width: 22em; + width: 22em; + } + + #sidebar > * { + border-top: solid 1px rgba(160, 160, 160, 0.3); + margin: 3em 0 0 0; + padding: 3em 0 0 0; + } + + #sidebar > :first-child { + border-top: 0; + margin-top: 0; + padding-top: 0; + } + + @media screen and (max-width: 1280px) { + + #sidebar { + border-top: solid 1px rgba(160, 160, 160, 0.3); + margin: 3em 0 0 0; + min-width: 0; + padding: 3em 0 0 0; + width: 100%; + } + + } + +/* Intro */ + + #intro .logo { + border-bottom: 0; + display: inline-block; + margin: 0 0 1em 0; + overflow: hidden; + position: relative; + width: 4em; + } + + #intro .logo:before { + background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100px' height='100px' viewBox='0 0 100 100' preserveAspectRatio='none' zoomAndPan='disable'%3E%3Cpolygon points='0,0 100,0 100,25 50,0 0,25' style='fill:%23f4f4f4' /%3E%3Cpolygon points='0,100 100,100 100,75 50,100 0,75' style='fill:%23f4f4f4' /%3E%3C/svg%3E"); + background-position: top left; + background-repeat: no-repeat; + background-size: 100% 100%; + content: ''; + display: block; + height: 100%; + left: 0; + position: absolute; + top: 0; + width: 100%; + } + + #intro .logo img { + display: block; + margin-left: -0.25em; + width: 4.5em; + } + + #intro header h2 { + font-size: 2em; + font-weight: 900; + } + + #intro header p { + font-size: 0.8em; + } + + @media screen and (max-width: 1280px) { + + #intro { + margin: 0 0 3em 0; + text-align: center; + } + + #intro header h2 { + font-size: 2em; + } + + #intro header p { + font-size: 0.7em; + } + + } + + @media screen and (max-width: 736px) { + + #intro { + margin: 0 0 1.5em 0; + padding: 1.25em 0; + } + + #intro > :last-child { + margin-bottom: 0; + } + + #intro .logo { + margin: 0 0 0.5em 0; + } + + #intro header h2 { + font-size: 1.25em; + } + + #intro header > :last-child { + margin-bottom: 0; + } + + } + +/* Footer */ + + #footer .icons { + color: #aaaaaa; + } + + #footer .copyright { + color: #aaaaaa; + font-family: 'Open Sans', sans-serif; + font-size: 0.5em; + font-weight: 400; + letter-spacing: 0.25em; + text-transform: uppercase; + } + +/* Menu */ + + #menu { + -moz-transform: translateX(25em); + -webkit-transform: translateX(25em); + -ms-transform: translateX(25em); + transform: translateX(25em); + -moz-transition: -moz-transform 0.5s ease, visibility 0.5s; + -webkit-transition: -webkit-transform 0.5s ease, visibility 0.5s; + -ms-transition: -ms-transform 0.5s ease, visibility 0.5s; + transition: transform 0.5s ease, visibility 0.5s; + -webkit-overflow-scrolling: touch; + background: #ffffff; + border-left: solid 1px rgba(160, 160, 160, 0.3); + box-shadow: none; + height: 100%; + max-width: 80%; + overflow-y: auto; + position: fixed; + right: 0; + top: 0; + visibility: hidden; + width: 25em; + z-index: 10002; + } + + #menu > * { + border-top: solid 1px rgba(160, 160, 160, 0.3); + padding: 3em; + } + + #menu > * > :last-child { + margin-bottom: 0; + } + + #menu > :first-child { + border-top: 0; + } + + #menu .links { + list-style: none; + padding: 0; + } + + #menu .links > li { + border: 0; + border-top: dotted 1px rgba(160, 160, 160, 0.3); + margin: 1.5em 0 0 0; + padding: 1.5em 0 0 0; + } + + #menu .links > li a { + display: block; + border-bottom: 0; + } + + #menu .links > li a h3 { + -moz-transition: color 0.2s ease; + -webkit-transition: color 0.2s ease; + -ms-transition: color 0.2s ease; + transition: color 0.2s ease; + font-size: 0.7em; + } + + #menu .links > li a p { + font-family: 'Open Sans', sans-serif; + font-size: 0.6em; + font-weight: 400; + letter-spacing: 0.25em; + margin-bottom: 0; + text-decoration: none; + text-transform: uppercase; + } + + #menu .links > li a:hover h3 { + color: #2672ec; + } + + #menu .links > li:first-child { + border-top: 0; + margin-top: 0; + padding-top: 0; + } + + body.is-menu-visible #menu { + -moz-transform: translateX(0); + -webkit-transform: translateX(0); + -ms-transform: translateX(0); + transform: translateX(0); + visibility: visible; + } + + @media screen and (max-width: 736px) { + + #menu > * { + padding: 1.5em; + } + + } diff --git a/bl-themes/diego/assets/js/ie/html5shiv.js b/bl-themes/diego/assets/js/ie/html5shiv.js new file mode 100644 index 00000000..dcf351c8 --- /dev/null +++ b/bl-themes/diego/assets/js/ie/html5shiv.js @@ -0,0 +1,8 @@ +/* + HTML5 Shiv v3.6.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed +*/ +(function(l,f){function m(){var a=e.elements;return"string"==typeof a?a.split(" "):a}function i(a){var b=n[a[o]];b||(b={},h++,a[o]=h,n[h]=b);return b}function p(a,b,c){b||(b=f);if(g)return b.createElement(a);c||(c=i(b));b=c.cache[a]?c.cache[a].cloneNode():r.test(a)?(c.cache[a]=c.createElem(a)).cloneNode():c.createElem(a);return b.canHaveChildren&&!s.test(a)?c.frag.appendChild(b):b}function t(a,b){if(!b.cache)b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag(); +a.createElement=function(c){return!e.shivMethods?b.createElem(c):p(c,a,b)};a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/\w+/g,function(a){b.createElem(a);b.frag.createElement(a);return'c("'+a+'")'})+");return n}")(e,b.frag)}function q(a){a||(a=f);var b=i(a);if(e.shivCSS&&!j&&!b.hasCSS){var c,d=a;c=d.createElement("p");d=d.getElementsByTagName("head")[0]||d.documentElement;c.innerHTML="x"; +c=d.insertBefore(c.lastChild,d.firstChild);b.hasCSS=!!c}g||t(a,b);return a}var k=l.html5||{},s=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,r=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,j,o="_html5shiv",h=0,n={},g;(function(){try{var a=f.createElement("a");a.innerHTML="";j="hidden"in a;var b;if(!(b=1==a.childNodes.length)){f.createElement("a");var c=f.createDocumentFragment();b="undefined"==typeof c.cloneNode|| +"undefined"==typeof c.createDocumentFragment||"undefined"==typeof c.createElement}g=b}catch(d){g=j=!0}})();var e={elements:k.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup main mark meter nav output progress section summary time video",version:"3.6.2",shivCSS:!1!==k.shivCSS,supportsUnknownElements:g,shivMethods:!1!==k.shivMethods,type:"default",shivDocument:q,createElement:p,createDocumentFragment:function(a,b){a||(a=f);if(g)return a.createDocumentFragment(); +for(var b=b||i(a),c=b.frag.cloneNode(),d=0,e=m(),h=e.length;d #mq-test-1 { width: 42px; }',c.insertBefore(e,d),b=42===f.offsetWidth,c.removeChild(e),{matches:b,media:a}}}(a.document)}(this),function(a){"use strict";function b(){v(!0)}var c={};a.respond=c,c.update=function(){};var d=[],e=function(){var b=!1;try{b=new a.XMLHttpRequest}catch(c){b=new a.ActiveXObject("Microsoft.XMLHTTP")}return function(){return b}}(),f=function(a,b){var c=e();c&&(c.open("GET",a,!0),c.onreadystatechange=function(){4!==c.readyState||200!==c.status&&304!==c.status||b(c.responseText)},4!==c.readyState&&c.send(null))},g=function(a){return a.replace(c.regex.minmaxwh,"").match(c.regex.other)};if(c.ajax=f,c.queue=d,c.unsupportedmq=g,c.regex={media:/@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi,keyframes:/@(?:\-(?:o|moz|webkit)\-)?keyframes[^\{]+\{(?:[^\{\}]*\{[^\}\{]*\})+[^\}]*\}/gi,comments:/\/\*[^*]*\*+([^/][^*]*\*+)*\//gi,urls:/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,findStyles:/@media *([^\{]+)\{([\S\s]+?)$/,only:/(only\s+)?([a-zA-Z]+)\s?/,minw:/\(\s*min\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/,maxw:/\(\s*max\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/,minmaxwh:/\(\s*m(in|ax)\-(height|width)\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/gi,other:/\([^\)]*\)/g},c.mediaQueriesSupported=a.matchMedia&&null!==a.matchMedia("only all")&&a.matchMedia("only all").matches,!c.mediaQueriesSupported){var h,i,j,k=a.document,l=k.documentElement,m=[],n=[],o=[],p={},q=30,r=k.getElementsByTagName("head")[0]||l,s=k.getElementsByTagName("base")[0],t=r.getElementsByTagName("link"),u=function(){var a,b=k.createElement("div"),c=k.body,d=l.style.fontSize,e=c&&c.style.fontSize,f=!1;return b.style.cssText="position:absolute;font-size:1em;width:1em",c||(c=f=k.createElement("body"),c.style.background="none"),l.style.fontSize="100%",c.style.fontSize="100%",c.appendChild(b),f&&l.insertBefore(c,l.firstChild),a=b.offsetWidth,f?l.removeChild(c):c.removeChild(b),l.style.fontSize=d,e&&(c.style.fontSize=e),a=j=parseFloat(a)},v=function(b){var c="clientWidth",d=l[c],e="CSS1Compat"===k.compatMode&&d||k.body[c]||d,f={},g=t[t.length-1],p=(new Date).getTime();if(b&&h&&q>p-h)return a.clearTimeout(i),i=a.setTimeout(v,q),void 0;h=p;for(var s in m)if(m.hasOwnProperty(s)){var w=m[s],x=w.minw,y=w.maxw,z=null===x,A=null===y,B="em";x&&(x=parseFloat(x)*(x.indexOf(B)>-1?j||u():1)),y&&(y=parseFloat(y)*(y.indexOf(B)>-1?j||u():1)),w.hasquery&&(z&&A||!(z||e>=x)||!(A||y>=e))||(f[w.media]||(f[w.media]=[]),f[w.media].push(n[w.rules]))}for(var C in o)o.hasOwnProperty(C)&&o[C]&&o[C].parentNode===r&&r.removeChild(o[C]);o.length=0;for(var D in f)if(f.hasOwnProperty(D)){var E=k.createElement("style"),F=f[D].join("\n");E.type="text/css",E.media=D,r.insertBefore(E,g.nextSibling),E.styleSheet?E.styleSheet.cssText=F:E.appendChild(k.createTextNode(F)),o.push(E)}},w=function(a,b,d){var e=a.replace(c.regex.comments,"").replace(c.regex.keyframes,"").match(c.regex.media),f=e&&e.length||0;b=b.substring(0,b.lastIndexOf("/"));var h=function(a){return a.replace(c.regex.urls,"$1"+b+"$2$3")},i=!f&&d;b.length&&(b+="/"),i&&(f=1);for(var j=0;f>j;j++){var k,l,o,p;i?(k=d,n.push(h(a))):(k=e[j].match(c.regex.findStyles)&&RegExp.$1,n.push(RegExp.$2&&h(RegExp.$2))),o=k.split(","),p=o.length;for(var q=0;p>q;q++)l=o[q],g(l)||m.push({media:l.split("(")[0].match(c.regex.only)&&RegExp.$2||"all",rules:n.length-1,hasquery:l.indexOf("(")>-1,minw:l.match(c.regex.minw)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:l.match(c.regex.maxw)&&parseFloat(RegExp.$1)+(RegExp.$2||"")})}v()},x=function(){if(d.length){var b=d.shift();f(b.href,function(c){w(c,b.href,b.media),p[b.href]=!0,a.setTimeout(function(){x()},0)})}},y=function(){for(var b=0;blarge. + skel + .on('+large', function() { + $intro.prependTo($main); + }) + .on('-large', function() { + $intro.prependTo($sidebar); + }); + + }); + +})(jQuery); \ No newline at end of file diff --git a/bl-themes/diego/assets/js/skel.min.js b/bl-themes/diego/assets/js/skel.min.js new file mode 100644 index 00000000..688de7c9 --- /dev/null +++ b/bl-themes/diego/assets/js/skel.min.js @@ -0,0 +1,2 @@ +/* skel.js v3.0.0 | (c) n33 | skel.io | MIT licensed */ +var skel=function(){"use strict";var t={breakpointIds:null,events:{},isInit:!1,obj:{attachments:{},breakpoints:{},head:null,states:{}},sd:"/",state:null,stateHandlers:{},stateId:"",vars:{},DOMReady:null,indexOf:null,isArray:null,iterate:null,matchesMedia:null,extend:function(e,n){t.iterate(n,function(i){t.isArray(n[i])?(t.isArray(e[i])||(e[i]=[]),t.extend(e[i],n[i])):"object"==typeof n[i]?("object"!=typeof e[i]&&(e[i]={}),t.extend(e[i],n[i])):e[i]=n[i]})},newStyle:function(t){var e=document.createElement("style");return e.type="text/css",e.innerHTML=t,e},_canUse:null,canUse:function(e){t._canUse||(t._canUse=document.createElement("div"));var n=t._canUse.style,i=e.charAt(0).toUpperCase()+e.slice(1);return e in n||"Moz"+i in n||"Webkit"+i in n||"O"+i in n||"ms"+i in n},on:function(e,n){var i=e.split(/[\s]+/);return t.iterate(i,function(e){var a=i[e];if(t.isInit){if("init"==a)return void n();if("change"==a)n();else{var r=a.charAt(0);if("+"==r||"!"==r){var o=a.substring(1);if(o in t.obj.breakpoints)if("+"==r&&t.obj.breakpoints[o].active)n();else if("!"==r&&!t.obj.breakpoints[o].active)return void n()}}}t.events[a]||(t.events[a]=[]),t.events[a].push(n)}),t},trigger:function(e){return t.events[e]&&0!=t.events[e].length?(t.iterate(t.events[e],function(n){t.events[e][n]()}),t):void 0},breakpoint:function(e){return t.obj.breakpoints[e]},breakpoints:function(e){function n(t,e){this.name=this.id=t,this.media=e,this.active=!1,this.wasActive=!1}return n.prototype.matches=function(){return t.matchesMedia(this.media)},n.prototype.sync=function(){this.wasActive=this.active,this.active=this.matches()},t.iterate(e,function(i){t.obj.breakpoints[i]=new n(i,e[i])}),window.setTimeout(function(){t.poll()},0),t},addStateHandler:function(e,n){t.stateHandlers[e]=n},callStateHandler:function(e){var n=t.stateHandlers[e]();t.iterate(n,function(e){t.state.attachments.push(n[e])})},changeState:function(e){t.iterate(t.obj.breakpoints,function(e){t.obj.breakpoints[e].sync()}),t.vars.lastStateId=t.stateId,t.stateId=e,t.breakpointIds=t.stateId===t.sd?[]:t.stateId.substring(1).split(t.sd),t.obj.states[t.stateId]?t.state=t.obj.states[t.stateId]:(t.obj.states[t.stateId]={attachments:[]},t.state=t.obj.states[t.stateId],t.iterate(t.stateHandlers,t.callStateHandler)),t.detachAll(t.state.attachments),t.attachAll(t.state.attachments),t.vars.stateId=t.stateId,t.vars.state=t.state,t.trigger("change"),t.iterate(t.obj.breakpoints,function(e){t.obj.breakpoints[e].active?t.obj.breakpoints[e].wasActive||t.trigger("+"+e):t.obj.breakpoints[e].wasActive&&t.trigger("-"+e)})},generateStateConfig:function(e,n){var i={};return t.extend(i,e),t.iterate(t.breakpointIds,function(e){t.extend(i,n[t.breakpointIds[e]])}),i},getStateId:function(){var e="";return t.iterate(t.obj.breakpoints,function(n){var i=t.obj.breakpoints[n];i.matches()&&(e+=t.sd+i.id)}),e},poll:function(){var e="";e=t.getStateId(),""===e&&(e=t.sd),e!==t.stateId&&t.changeState(e)},_attach:null,attach:function(e){var n=t.obj.head,i=e.element;return i.parentNode&&i.parentNode.tagName?!1:(t._attach||(t._attach=n.firstChild),n.insertBefore(i,t._attach.nextSibling),e.permanent&&(t._attach=i),!0)},attachAll:function(e){var n=[];t.iterate(e,function(t){n[e[t].priority]||(n[e[t].priority]=[]),n[e[t].priority].push(e[t])}),n.reverse(),t.iterate(n,function(e){t.iterate(n[e],function(i){t.attach(n[e][i])})})},detach:function(t){var e=t.element;return t.permanent||!e.parentNode||e.parentNode&&!e.parentNode.tagName?!1:(e.parentNode.removeChild(e),!0)},detachAll:function(e){var n={};t.iterate(e,function(t){n[e[t].id]=!0}),t.iterate(t.obj.attachments,function(e){e in n||t.detach(t.obj.attachments[e])})},attachment:function(e){return e in t.obj.attachments?t.obj.attachments[e]:null},newAttachment:function(e,n,i,a){return t.obj.attachments[e]={id:e,element:n,priority:i,permanent:a}},init:function(){t.initMethods(),t.initVars(),t.initEvents(),t.obj.head=document.getElementsByTagName("head")[0],t.isInit=!0,t.trigger("init")},initEvents:function(){t.on("resize",function(){t.poll()}),t.on("orientationChange",function(){t.poll()}),t.DOMReady(function(){t.trigger("ready")}),window.onload&&t.on("load",window.onload),window.onload=function(){t.trigger("load")},window.onresize&&t.on("resize",window.onresize),window.onresize=function(){t.trigger("resize")},window.onorientationchange&&t.on("orientationChange",window.onorientationchange),window.onorientationchange=function(){t.trigger("orientationChange")}},initMethods:function(){document.addEventListener?!function(e,n){t.DOMReady=n()}("domready",function(){function t(t){for(r=1;t=n.shift();)t()}var e,n=[],i=document,a="DOMContentLoaded",r=/^loaded|^c/.test(i.readyState);return i.addEventListener(a,e=function(){i.removeEventListener(a,e),t()}),function(t){r?t():n.push(t)}}):!function(e,n){t.DOMReady=n()}("domready",function(t){function e(t){for(h=1;t=i.shift();)t()}var n,i=[],a=!1,r=document,o=r.documentElement,s=o.doScroll,c="DOMContentLoaded",d="addEventListener",u="onreadystatechange",l="readyState",f=s?/^loaded|^c/:/^loaded|c/,h=f.test(r[l]);return r[d]&&r[d](c,n=function(){r.removeEventListener(c,n,a),e()},a),s&&r.attachEvent(u,n=function(){/^c/.test(r[l])&&(r.detachEvent(u,n),e())}),t=s?function(e){self!=top?h?e():i.push(e):function(){try{o.doScroll("left")}catch(n){return setTimeout(function(){t(e)},50)}e()}()}:function(t){h?t():i.push(t)}}),Array.prototype.indexOf?t.indexOf=function(t,e){return t.indexOf(e)}:t.indexOf=function(t,e){if("string"==typeof t)return t.indexOf(e);var n,i,a=e?e:0;if(!this)throw new TypeError;if(i=this.length,0===i||a>=i)return-1;for(0>a&&(a=i-Math.abs(a)),n=a;i>n;n++)if(this[n]===t)return n;return-1},Array.isArray?t.isArray=function(t){return Array.isArray(t)}:t.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)},Object.keys?t.iterate=function(t,e){if(!t)return[];var n,i=Object.keys(t);for(n=0;i[n]&&e(i[n],t[i[n]])!==!1;n++);}:t.iterate=function(t,e){if(!t)return[];var n;for(n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&e(n,t[n])===!1)break},window.matchMedia?t.matchesMedia=function(t){return""==t?!0:window.matchMedia(t).matches}:window.styleMedia||window.media?t.matchesMedia=function(t){if(""==t)return!0;var e=window.styleMedia||window.media;return e.matchMedium(t||"all")}:window.getComputedStyle?t.matchesMedia=function(t){if(""==t)return!0;var e=document.createElement("style"),n=document.getElementsByTagName("script")[0],i=null;e.type="text/css",e.id="matchmediajs-test",n.parentNode.insertBefore(e,n),i="getComputedStyle"in window&&window.getComputedStyle(e,null)||e.currentStyle;var a="@media "+t+"{ #matchmediajs-test { width: 1px; } }";return e.styleSheet?e.styleSheet.cssText=a:e.textContent=a,"1px"===i.width}:t.matchesMedia=function(t){if(""==t)return!0;var e,n,i,a,r={"min-width":null,"max-width":null},o=!1;for(i=t.split(/\s+and\s+/),e=0;er["max-width"]||null!==r["min-height"]&&cr["max-height"]?!1:!0},navigator.userAgent.match(/MSIE ([0-9]+)/)&&RegExp.$1<9&&(t.newStyle=function(t){var e=document.createElement("span");return e.innerHTML=' ",e})},initVars:function(){var e,n,i,a=navigator.userAgent;e="other",n=0,i=[["firefox",/Firefox\/([0-9\.]+)/],["bb",/BlackBerry.+Version\/([0-9\.]+)/],["bb",/BB[0-9]+.+Version\/([0-9\.]+)/],["opera",/OPR\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)/],["edge",/Edge\/([0-9\.]+)/],["safari",/Version\/([0-9\.]+).+Safari/],["chrome",/Chrome\/([0-9\.]+)/],["ie",/MSIE ([0-9]+)/],["ie",/Trident\/.+rv:([0-9]+)/]],t.iterate(i,function(t,i){return a.match(i[1])?(e=i[0],n=parseFloat(RegExp.$1),!1):void 0}),t.vars.browser=e,t.vars.browserVersion=n,e="other",n=0,i=[["ios",/([0-9_]+) like Mac OS X/,function(t){return t.replace("_",".").replace("_","")}],["ios",/CPU like Mac OS X/,function(t){return 0}],["android",/Android ([0-9\.]+)/,null],["mac",/Macintosh.+Mac OS X ([0-9_]+)/,function(t){return t.replace("_",".").replace("_","")}],["wp",/Windows Phone ([0-9\.]+)/,null],["windows",/Windows NT ([0-9\.]+)/,null],["bb",/BlackBerry.+Version\/([0-9\.]+)/,null],["bb",/BB[0-9]+.+Version\/([0-9\.]+)/,null]],t.iterate(i,function(t,i){return a.match(i[1])?(e=i[0],n=parseFloat(i[2]?i[2](RegExp.$1):RegExp.$1),!1):void 0}),t.vars.os=e,t.vars.osVersion=n,t.vars.IEVersion="ie"==t.vars.browser?t.vars.browserVersion:99,t.vars.touch="wp"==t.vars.os?navigator.msMaxTouchPoints>0:!!("ontouchstart"in window),t.vars.mobile="wp"==t.vars.os||"android"==t.vars.os||"ios"==t.vars.os||"bb"==t.vars.os}};return t.init(),t}();!function(t,e){"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?module.exports=e():t.skel=e()}(this,function(){return skel}); diff --git a/bl-themes/diego/assets/js/util.js b/bl-themes/diego/assets/js/util.js new file mode 100644 index 00000000..bdb8e9f0 --- /dev/null +++ b/bl-themes/diego/assets/js/util.js @@ -0,0 +1,587 @@ +(function($) { + + /** + * Generate an indented list of links from a nav. Meant for use with panel(). + * @return {jQuery} jQuery object. + */ + $.fn.navList = function() { + + var $this = $(this); + $a = $this.find('a'), + b = []; + + $a.each(function() { + + var $this = $(this), + indent = Math.max(0, $this.parents('li').length - 1), + href = $this.attr('href'), + target = $this.attr('target'); + + b.push( + '' + + '' + + $this.text() + + '' + ); + + }); + + return b.join(''); + + }; + + /** + * Panel-ify an element. + * @param {object} userConfig User config. + * @return {jQuery} jQuery object. + */ + $.fn.panel = function(userConfig) { + + // No elements? + if (this.length == 0) + return $this; + + // Multiple elements? + if (this.length > 1) { + + for (var i=0; i < this.length; i++) + $(this[i]).panel(userConfig); + + return $this; + + } + + // Vars. + var $this = $(this), + $body = $('body'), + $window = $(window), + id = $this.attr('id'), + config; + + // Config. + config = $.extend({ + + // Delay. + delay: 0, + + // Hide panel on link click. + hideOnClick: false, + + // Hide panel on escape keypress. + hideOnEscape: false, + + // Hide panel on swipe. + hideOnSwipe: false, + + // Reset scroll position on hide. + resetScroll: false, + + // Reset forms on hide. + resetForms: false, + + // Side of viewport the panel will appear. + side: null, + + // Target element for "class". + target: $this, + + // Class to toggle. + visibleClass: 'visible' + + }, userConfig); + + // Expand "target" if it's not a jQuery object already. + if (typeof config.target != 'jQuery') + config.target = $(config.target); + + // Panel. + + // Methods. + $this._hide = function(event) { + + // Already hidden? Bail. + if (!config.target.hasClass(config.visibleClass)) + return; + + // If an event was provided, cancel it. + if (event) { + + event.preventDefault(); + event.stopPropagation(); + + } + + // Hide. + config.target.removeClass(config.visibleClass); + + // Post-hide stuff. + window.setTimeout(function() { + + // Reset scroll position. + if (config.resetScroll) + $this.scrollTop(0); + + // Reset forms. + if (config.resetForms) + $this.find('form').each(function() { + this.reset(); + }); + + }, config.delay); + + }; + + // Vendor fixes. + $this + .css('-ms-overflow-style', '-ms-autohiding-scrollbar') + .css('-webkit-overflow-scrolling', 'touch'); + + // Hide on click. + if (config.hideOnClick) { + + $this.find('a') + .css('-webkit-tap-highlight-color', 'rgba(0,0,0,0)'); + + $this + .on('click', 'a', function(event) { + + var $a = $(this), + href = $a.attr('href'), + target = $a.attr('target'); + + if (!href || href == '#' || href == '' || href == '#' + id) + return; + + // Cancel original event. + event.preventDefault(); + event.stopPropagation(); + + // Hide panel. + $this._hide(); + + // Redirect to href. + window.setTimeout(function() { + + if (target == '_blank') + window.open(href); + else + window.location.href = href; + + }, config.delay + 10); + + }); + + } + + // Event: Touch stuff. + $this.on('touchstart', function(event) { + + $this.touchPosX = event.originalEvent.touches[0].pageX; + $this.touchPosY = event.originalEvent.touches[0].pageY; + + }) + + $this.on('touchmove', function(event) { + + if ($this.touchPosX === null + || $this.touchPosY === null) + return; + + var diffX = $this.touchPosX - event.originalEvent.touches[0].pageX, + diffY = $this.touchPosY - event.originalEvent.touches[0].pageY, + th = $this.outerHeight(), + ts = ($this.get(0).scrollHeight - $this.scrollTop()); + + // Hide on swipe? + if (config.hideOnSwipe) { + + var result = false, + boundary = 20, + delta = 50; + + switch (config.side) { + + case 'left': + result = (diffY < boundary && diffY > (-1 * boundary)) && (diffX > delta); + break; + + case 'right': + result = (diffY < boundary && diffY > (-1 * boundary)) && (diffX < (-1 * delta)); + break; + + case 'top': + result = (diffX < boundary && diffX > (-1 * boundary)) && (diffY > delta); + break; + + case 'bottom': + result = (diffX < boundary && diffX > (-1 * boundary)) && (diffY < (-1 * delta)); + break; + + default: + break; + + } + + if (result) { + + $this.touchPosX = null; + $this.touchPosY = null; + $this._hide(); + + return false; + + } + + } + + // Prevent vertical scrolling past the top or bottom. + if (($this.scrollTop() < 0 && diffY < 0) + || (ts > (th - 2) && ts < (th + 2) && diffY > 0)) { + + event.preventDefault(); + event.stopPropagation(); + + } + + }); + + // Event: Prevent certain events inside the panel from bubbling. + $this.on('click touchend touchstart touchmove', function(event) { + event.stopPropagation(); + }); + + // Event: Hide panel if a child anchor tag pointing to its ID is clicked. + $this.on('click', 'a[href="#' + id + '"]', function(event) { + + event.preventDefault(); + event.stopPropagation(); + + config.target.removeClass(config.visibleClass); + + }); + + // Body. + + // Event: Hide panel on body click/tap. + $body.on('click touchend', function(event) { + $this._hide(event); + }); + + // Event: Toggle. + $body.on('click', 'a[href="#' + id + '"]', function(event) { + + event.preventDefault(); + event.stopPropagation(); + + config.target.toggleClass(config.visibleClass); + + }); + + // Window. + + // Event: Hide on ESC. + if (config.hideOnEscape) + $window.on('keydown', function(event) { + + if (event.keyCode == 27) + $this._hide(event); + + }); + + return $this; + + }; + + /** + * Apply "placeholder" attribute polyfill to one or more forms. + * @return {jQuery} jQuery object. + */ + $.fn.placeholder = function() { + + // Browser natively supports placeholders? Bail. + if (typeof (document.createElement('input')).placeholder != 'undefined') + return $(this); + + // No elements? + if (this.length == 0) + return $this; + + // Multiple elements? + if (this.length > 1) { + + for (var i=0; i < this.length; i++) + $(this[i]).placeholder(); + + return $this; + + } + + // Vars. + var $this = $(this); + + // Text, TextArea. + $this.find('input[type=text],textarea') + .each(function() { + + var i = $(this); + + if (i.val() == '' + || i.val() == i.attr('placeholder')) + i + .addClass('polyfill-placeholder') + .val(i.attr('placeholder')); + + }) + .on('blur', function() { + + var i = $(this); + + if (i.attr('name').match(/-polyfill-field$/)) + return; + + if (i.val() == '') + i + .addClass('polyfill-placeholder') + .val(i.attr('placeholder')); + + }) + .on('focus', function() { + + var i = $(this); + + if (i.attr('name').match(/-polyfill-field$/)) + return; + + if (i.val() == i.attr('placeholder')) + i + .removeClass('polyfill-placeholder') + .val(''); + + }); + + // Password. + $this.find('input[type=password]') + .each(function() { + + var i = $(this); + var x = $( + $('
      ') + .append(i.clone()) + .remove() + .html() + .replace(/type="password"/i, 'type="text"') + .replace(/type=password/i, 'type=text') + ); + + if (i.attr('id') != '') + x.attr('id', i.attr('id') + '-polyfill-field'); + + if (i.attr('name') != '') + x.attr('name', i.attr('name') + '-polyfill-field'); + + x.addClass('polyfill-placeholder') + .val(x.attr('placeholder')).insertAfter(i); + + if (i.val() == '') + i.hide(); + else + x.hide(); + + i + .on('blur', function(event) { + + event.preventDefault(); + + var x = i.parent().find('input[name=' + i.attr('name') + '-polyfill-field]'); + + if (i.val() == '') { + + i.hide(); + x.show(); + + } + + }); + + x + .on('focus', function(event) { + + event.preventDefault(); + + var i = x.parent().find('input[name=' + x.attr('name').replace('-polyfill-field', '') + ']'); + + x.hide(); + + i + .show() + .focus(); + + }) + .on('keypress', function(event) { + + event.preventDefault(); + x.val(''); + + }); + + }); + + // Events. + $this + .on('submit', function() { + + $this.find('input[type=text],input[type=password],textarea') + .each(function(event) { + + var i = $(this); + + if (i.attr('name').match(/-polyfill-field$/)) + i.attr('name', ''); + + if (i.val() == i.attr('placeholder')) { + + i.removeClass('polyfill-placeholder'); + i.val(''); + + } + + }); + + }) + .on('reset', function(event) { + + event.preventDefault(); + + $this.find('select') + .val($('option:first').val()); + + $this.find('input,textarea') + .each(function() { + + var i = $(this), + x; + + i.removeClass('polyfill-placeholder'); + + switch (this.type) { + + case 'submit': + case 'reset': + break; + + case 'password': + i.val(i.attr('defaultValue')); + + x = i.parent().find('input[name=' + i.attr('name') + '-polyfill-field]'); + + if (i.val() == '') { + i.hide(); + x.show(); + } + else { + i.show(); + x.hide(); + } + + break; + + case 'checkbox': + case 'radio': + i.attr('checked', i.attr('defaultValue')); + break; + + case 'text': + case 'textarea': + i.val(i.attr('defaultValue')); + + if (i.val() == '') { + i.addClass('polyfill-placeholder'); + i.val(i.attr('placeholder')); + } + + break; + + default: + i.val(i.attr('defaultValue')); + break; + + } + }); + + }); + + return $this; + + }; + + /** + * Moves elements to/from the first positions of their respective parents. + * @param {jQuery} $elements Elements (or selector) to move. + * @param {bool} condition If true, moves elements to the top. Otherwise, moves elements back to their original locations. + */ + $.prioritize = function($elements, condition) { + + var key = '__prioritize'; + + // Expand $elements if it's not already a jQuery object. + if (typeof $elements != 'jQuery') + $elements = $($elements); + + // Step through elements. + $elements.each(function() { + + var $e = $(this), $p, + $parent = $e.parent(); + + // No parent? Bail. + if ($parent.length == 0) + return; + + // Not moved? Move it. + if (!$e.data(key)) { + + // Condition is false? Bail. + if (!condition) + return; + + // Get placeholder (which will serve as our point of reference for when this element needs to move back). + $p = $e.prev(); + + // Couldn't find anything? Means this element's already at the top, so bail. + if ($p.length == 0) + return; + + // Move element to top of parent. + $e.prependTo($parent); + + // Mark element as moved. + $e.data(key, $p); + + } + + // Moved already? + else { + + // Condition is true? Bail. + if (condition) + return; + + $p = $e.data(key); + + // Move element back to its original location (using our placeholder). + $e.insertAfter($p); + + // Unmark element as moved. + $e.removeData(key); + + } + + }); + + }; + +})(jQuery); \ No newline at end of file diff --git a/bl-themes/diego/img/favicon.png b/bl-themes/diego/img/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..517c6c127f5793d143f271e7008b55c45bcb4c25 GIT binary patch literal 1005 zcmVPx&r%6OXR9FeUSIu^J=B^nFVvZj#AnEt?Ju^X9#8 z-g`T<`{r8{)7e}um$kmW-eWeKpU@H~^`>lxhgh~pE-x=X?d|P-U0Yi_hoM|EsR0KE z2M(*%+NRd6udm;lpPwHko0pu+o12^L?CeYp5y=TsPF-AF1jFI*ZxMj&@)9^cK7L^` znci`uX!QI2YRGlz2)6FpHE1>STJL*DWnAVYl0TTjaOW3GkRb z7K`P(*XzB<6@1J~fX>;*4MvZ&6An6#&xJc-;elFPTdPQZFG-R;7K<@-o6W|ms-V7V z^g^M8XxL5EF;9{wG!_f(v6A9o}t9WZ@Xb{C{LLInP0@KseY=3{h$eGXQV{L7D7ik^_ zMe5W0gvSha0A%7$2|$tBZnq2hKy`I>5mtxd*R>Ovn3&Mv zS2rYv1R~VkdY1$O0k*rls|!9pKF*v@&5tZ1fy2>V{alwv0wod&c6fNG3r>_w6NlIm z2xMbpBRHI{YKVf;-rlb1m>cWr>bNKx6NoK=y;1^Ggm@-G73z9>d)fK9F2c)dYikRa ztLIaQjdy^7z0&P8N@Cd?adL7}_!+7_b6JB=oFFD}sDupE8SEAE|7eKC>AJE52ny;< z?DYYOJz7bOjg7I>(^D--&PM)nvPxJ+EI!XA0N(C!IQqd}scbp`NT(Ir#<9vscX-}h z?*zW+$)hy(tN#&{Bj8T5+wvGd=pqr62xHpD#zvAJ>=EC3?lms~C>ItMeo&U(Brea* z%_;1dga37;uO^*Jr5=Vtp`V35a)pw6-^XI55Lx{0#iAoik$=$47T#pz$t z*V)UBJ?m=k00000NkvXXu0mjflz!ZO literal 0 HcmV?d00001 diff --git a/bl-themes/diego/img/logo.jpg b/bl-themes/diego/img/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7c522026661c11ae4dc29b25e3df706987d2c3be GIT binary patch literal 3644 zcmbtWcT^ME9=<~oLR;w~p=2p4QdLky7J?#8mIW-Zf|7Mvl_JIhijZYc6ckZZ1Qf*t z5y1w66h(SKP*>@QASD#(m>`6Kgqb(Edv?!xfBD|tIcMf~ZtneZzwiDU){gZ8xvln2 z_5gwaaKs;gaY3A2sQ-QdTwH)Y06+qeAO%3cEeL-AL;<9)HUL{8wZH9ckltTw!~lr# z2gJYDc;Vm0fg>;O{_9I%L;oPM#r|IH&L;e0FK)vozy>!zMlj=;ALH=%rpBwmhRsec z#6@&`e6^QL0`w$ zZTJfkBM?dAWC=+rX?#I}91w#D1Ti9kL|XhC=y&{gK$IsbXsy{KuIRp(tbIgj?Wrqi z5;~i6E0wo3@^npqJ$hPFYN^UHRm$=eEA>|Co2^@KzQJOn?G`(G2S=x^+js2r@cem~ zm+x=;_8;)`4>%Saa{NT-$*`z1XQN}zosYema4j(@`TC8NJLz{b?qz1(e~|Yyzo4+_ z+4JHmPIb-8+PYV-o0?l%+upZ-=-~GC4-9@98Xg(tPkou55zHcU^NYN2J^!SIzyDJ))?+_LPLu<|}Erm6AH9+jz>q9&MCb zs%yqw&R?YVmD#ruJNU^vLXL%?@qUAS9HV;w+-0O8I=kOwq? z3K<84Rxh06A{$Se#y#8^4Q7b0G#vf!-3Bx2-&enqNLa=FL{oC`_x& zQ0IzrHS1M~WmR!FQwQ-ru{bw&I}Fe1&eG-7X;~wAcMH zWp=fgO+F1*Z^i&`NBz8UnFa2Tz?J1;7SgSx1%M9)1MPPRdTUMyi9)e*hi{( zBuvi$aC$uFallx$wIr|bX;`20TW8K~YK!rJl$=ute5c)K&xVVKuRQ$dYVgQUOuMjE z>cO2z%K)GU*kX}VK#zbmpmQ_7ne5ZPlyL_GjThc;pt61{=~sf#9p#0rN@`qj%mggl zPXAf75=lJads1j83MkGiDdMe+%_u0ze}-J>Qw^G&FjjO7%?>)Gy)UV|Z-w6>Ex)0& zw^emJ!-l%389I@~t(O6I0oEHgp~x1H8(wGqyBd2%=FE?rmasCo)$%(?%okgzOL^1!kxP9T=#urp@wUWDrmT3oyVs2Y>Fv0RJ_xejkVdnj8jt zYB11OKP4I#JG^N?&LPW!O~P-1hBcw69+Weyw$O&|fY4AH@0h3P?sg6a1VQk3@QfjH z(T4gC19Lda(3~52_%;gzBtHzCzU=SeQ5=yf^kp8&%gZY&TFfbYW^N6s;E{Z%H-~az zpVZ|_C3pMME1;jcn$&}Y*NT*i(0JSaT6F1lm>&yh+|N|rww`$_*?20l%LM~3^~A#I zh@px|>Giulwd-(@>?M0gT_;}^%~j5I(pq(jUR@tt1COW<^FG=du9Z!4?7~Y6dIRpg zSk9xHC`UA~uL>`>vs9QB4*>bcK01c&Ua z)A1t?p^~Y>h-_1#Rzw3~xlKKXrf~FUt_=n@t6!~vZVkoBh}hJnV`0V*xupj@c!JW* zu91!1QTKa>JKiP3gigADadvWuQBrzlw|CuAN8|DA-jt3{Do|gFx%~hIykReSS`j9A z%%!V^I#hRjH{NmRIk!jAk1}~NtMmD#e%IFgi(buc%{f6InT_>h`Slhc$NtR9wpXrd~Ep9lljv9^p~=l$WhBQE(X*@+mWcg1qr&X#^d3}66d~B?_EtbU3vBToqMDW z>Z}_dMwS!Wy}K37SwnNT;S}N>hUvRMGKLAoC?30~omg{mXeAX<6|RFf(^x|` zGS*al+VSf&?daSE&Ii`T2klVg@Aiu1^y#|HyPu6j@Lx%+#AY*OcCc`)_i~7E2=5-_-h7xeMIE=%v6cJ}m%3!Bx zpNiMLQ)#1~+9t6{Yifr^DRznDgK~)0>$DWEU`2#omBQc&H!>Xqa!nBxv>v1x12I0h zDA&CJt&if`P8MQ-0`tb&;V;rQ)LT8g9T-5g4~)kM)zO!9emeP0?{7`y zb0x5Uw!ckiRBZ&6H!<50++JdEuk_`?bryfDoH%^$-p=AnXskgS>JXlt$v+^T zdzxW}2|%(ZtNemx70`F6V)OJKr~;J;TCYu{ z?;s;ztKPaDnS1%BMMJO^ z)wRfFR%Jdr=i#n)|2B_d2@|WF@);xSRINTudgH^`GjJu-} zTKfwMW4rfx5Tm6HeEc})*FzrXjy*LR2lf@txFY?4>9OIJDZo44zcohHI8?y_Pliiv{`DaXT5scop ziq + + + + + + +
      + +
      + + whereAmI()=='home') || ($Url->whereAmI()=='tag') || ($Url->whereAmI()=='blog') ) + { + include(THEME_DIR_PHP.'home.php'); + } + elseif($Url->whereAmI()=='post') + { + include(THEME_DIR_PHP.'post.php'); + } + elseif($Url->whereAmI()=='page') + { + include(THEME_DIR_PHP.'page.php'); + } + ?> + +
      + + + + +
      + + + + + + + + + + + + + \ No newline at end of file diff --git a/bl-themes/diego/languages/en_US.json b/bl-themes/diego/languages/en_US.json new file mode 100644 index 00000000..5c294a64 --- /dev/null +++ b/bl-themes/diego/languages/en_US.json @@ -0,0 +1,7 @@ +{ + "theme-data": + { + "name": "diego", + "description": "Minimalist and very responsive theme, developed by @n33co, adapted and modified for Bludit." + } +} \ No newline at end of file diff --git a/bl-themes/diego/languages/es_AR.json b/bl-themes/diego/languages/es_AR.json new file mode 100644 index 00000000..3ea08c41 --- /dev/null +++ b/bl-themes/diego/languages/es_AR.json @@ -0,0 +1,7 @@ +{ + "theme-data": + { + "name": "Log", + "description": "Minimalista y a su vez altamente adaptable para todo tipo de pantallas, desarrollado por @n33co, adaptado y modificado para Bludit." + } +} \ No newline at end of file diff --git a/bl-themes/diego/metadata.json b/bl-themes/diego/metadata.json new file mode 100644 index 00000000..e0688e65 --- /dev/null +++ b/bl-themes/diego/metadata.json @@ -0,0 +1,10 @@ +{ + "author": "n33co", + "email": "", + "website": "http://html5up.net", + "version": "1.4", + "releaseDate": "2016-05-20", + "license": "CCA 3.0", + "compatible": "1.5beta", + "notes": "" +} diff --git a/bl-themes/diego/php/head.php b/bl-themes/diego/php/head.php new file mode 100644 index 00000000..081363b5 --- /dev/null +++ b/bl-themes/diego/php/head.php @@ -0,0 +1,29 @@ + + + + + + + + + + + + + diff --git a/bl-themes/diego/php/home.php b/bl-themes/diego/php/home.php new file mode 100644 index 00000000..35b7e177 --- /dev/null +++ b/bl-themes/diego/php/home.php @@ -0,0 +1,83 @@ + + + +
      + + + + + +
      +
      +

      title() ?>

      +

      description() ?>

      +
      +
      + user(); + + // Default author is the username. + $author = $User->username(); + + // If the user complete the first name or last name this will be the author. + if( Text::isNotEmpty($User->firstName()) || Text::isNotEmpty($User->lastName()) ) { + $author = $User->firstName().' '.$User->lastName(); + } + ?> + +
      +
      +
      + + + coverImage()) { + echo 'Cover Image'; + } + ?> + + + content(false) ?> + + +
      + + + readMore()) { ?> + + + + +
        + tags(true); + + foreach($tags as $tagKey=>$tagName) { + echo '
      • '.$tagName.'
      • '; + } + ?> +
      +
      + + + + +
      + + + + + \ No newline at end of file diff --git a/bl-themes/diego/php/page.php b/bl-themes/diego/php/page.php new file mode 100644 index 00000000..f1ef6e82 --- /dev/null +++ b/bl-themes/diego/php/page.php @@ -0,0 +1,27 @@ +
      + + + + + +
      +
      +

      title() ?>

      +

      description() ?>

      +
      +
      + + + coverImage()) { + echo 'Cover Image'; + } + ?> + + + content() ?> + + + + +
      \ No newline at end of file diff --git a/bl-themes/diego/php/post.php b/bl-themes/diego/php/post.php new file mode 100644 index 00000000..a18a95a0 --- /dev/null +++ b/bl-themes/diego/php/post.php @@ -0,0 +1,57 @@ +
      + + + + + +
      + +
      + user(); + + // Default author is the username. + $author = $User->username(); + + // If the user complete the first name or last name this will be the author. + if( Text::isNotEmpty($User->firstName()) || Text::isNotEmpty($User->lastName()) ) { + $author = $User->firstName().' '.$User->lastName(); + } + ?> + +
      +
      +
      + + + coverImage()) { + echo 'Cover Image'; + } + ?> + + + content() ?> + + +
      + + +
        + tags(true); + + foreach($tags as $tagKey=>$tagName) { + echo '
      • '.$tagName.'
      • '; + } + ?> +
      +
      + + + + +
      \ No newline at end of file diff --git a/bl-themes/diego/php/sidebar.php b/bl-themes/diego/php/sidebar.php new file mode 100644 index 00000000..3413301a --- /dev/null +++ b/bl-themes/diego/php/sidebar.php @@ -0,0 +1,41 @@ + +
      +
      +

      title() ?>

      +

      slogan() ?>

      +
      +
      + + + + + \ No newline at end of file diff --git a/install.php b/install.php index 8e2bbc81..f4799e42 100644 --- a/install.php +++ b/install.php @@ -41,7 +41,7 @@ define('PATH_ABSTRACT', PATH_KERNEL.'abstract'.DS); define('CHECK_SYMBOLIC_LINKS', TRUE); // Filename for posts and pages -define('FILENAME', 'index.md'); +define('FILENAME', 'index.txt'); // Domain and protocol define('DOMAIN', $_SERVER['HTTP_HOST']); From 05838e31a6415dca051a38aa163c1ba1ca560665 Mon Sep 17 00:00:00 2001 From: Hristo Dipchikov Date: Tue, 2 Aug 2016 10:41:31 +0300 Subject: [PATCH 11/29] bg_BG --- bl-languages/bg_BG.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/bl-languages/bg_BG.json b/bl-languages/bg_BG.json index c3a2bb7f..e6fab2d9 100644 --- a/bl-languages/bg_BG.json +++ b/bl-languages/bg_BG.json @@ -27,7 +27,7 @@ "no-parent": "Самостоятелна страница", "edit-page": "Редактиране на страницата", "edit-post": "Редактиране на публикацията", - "add-a-new-user": "Добавяне на нов потребител", + "add-a-new-user": "Добавяне на потребител", "parent": "Избор на основна страница", "friendly-url": "Friendly URL", "description": "Описание", @@ -42,7 +42,7 @@ "profile": "Профил", "email": "Имейл адрес", "settings": "Настройки", - "general": "Общи настройки", + "general": "Общи настройки:", "advanced": "Разширени настройки", "regional": "Регионални настройки", "about": "Относно", @@ -73,7 +73,7 @@ "new-post": "Нова публикация", "html-and-markdown-code-supported": "Поддръжан код HTML и Markdown ", "new-page": "Нова страница", - "manage-posts": "Управление на публикациите", + "manage-posts": "Управление на публикации", "published-date": "Дата на побликуване", "modified-date": "Промяна на дата", "empty-title": "Без заглавие", @@ -88,7 +88,7 @@ "bludit-version": "Bludit version", "powered-by": "Създадено от", "recent-posts": "Последни публикации", - "manage-pages": "Управление на страниците", + "manage-pages": "Управление на страници", "advanced-options": "Разширени настройки", "user-deleted": "Изтриване на потребител", "page-added-successfully": "Страницата е добавена успешно", @@ -125,12 +125,12 @@ "delete-the-user-and-associate-its-posts-to-admin-user": "Изтриване на потребителя, без изтриване на неговите публикации.", "read-more": "Вижте повече...", "show-blog": "Покажи блога", - "default-home-page": "Задай начална страница по подразбиране", + "default-home-page": "Начална страница по подразбиране", "version": "Версия", "there-are-no-drafts": "Не са открити чернови.", - "create-a-new-article-for-your-blog":"Създайте на нова публикация във вашия блог.", - "create-a-new-page-for-your-website":"Създайте на нова страница във вашия уеб сайт.", - "invite-a-friend-to-collaborate-on-your-website":"Добави потребител, който да ви помага за развитието вашият сайт.", + "create-a-new-article-for-your-blog":"Създайте нова публикация във вашия блог.", + "create-a-new-page-for-your-website":"Създайте нова страница във вашия уеб сайт.", + "invite-a-friend-to-collaborate-on-your-website":"Добавете потребител, който да Ви помага за развитието вашият уеб сайт.", "change-your-language-and-region-settings":"Избор на параметри свързани с език, страна и местоположение.", "language-and-timezone":"Език и часова зона", "author": "Автор", @@ -177,12 +177,12 @@ "write-the-tags-separated-by-commas": "Напишете етикети, разделени със запетая.", "status": "Статус", "published": "Публикувай", - "scheduled-posts": "Планирани постове:", + "scheduled-posts": "Планирани публикации:", "statistics": "Статистика:", "name": "Име", - "email-account-settings":"Настройки на имейл акаунт", + "email-account-settings":"Настройки на имейл акаунт:", "sender-email": "Имейл на изпращача", - "emails-will-be-sent-from-this-address":"Имейлите ще бъдат изпратени от този адрес.", + "emails-will-be-sent-from-this-address":"Писмата ще бъдат изпращани на този адрес.", "bludit-login-access-code": "BLUDIT - Код за достъп", "check-your-inbox-for-your-login-access-code":":Моля, проверете вашата пощенска кутия за вашият код!", "there-was-a-problem-sending-the-email":"Възникна проблем при изпращането на имейла", @@ -215,8 +215,8 @@ "about-your-site-or-yourself": "За твоя сайт или за теб", "welcome-to-bludit": "Добре дошли в Bludit", - "site-information": "Информация за сайта", - "date-and-time-formats": "Формат дата и час", + "site-information": "Информация за сайта:", + "date-and-time-formats": "Формат дата и час:", "activate": "Активиране", "deactivate": "Деактивиране", @@ -233,7 +233,7 @@ "set-as-cover-image": "Задай като обложка ", "delete-image": "Изтрий изображенито", "image-description": "Описание на изображението ", - "social-networks-links": "Социалните мрежи", + "social-networks-links": "Социални мрежи:", "email-access-code": "Имейл код за достъп", "current-format": "Текущ формат" From efdd2d18453fa261989f179da2e33b4d5be51873 Mon Sep 17 00:00:00 2001 From: Hristo Dipchikov Date: Fri, 5 Aug 2016 11:19:05 +0300 Subject: [PATCH 12/29] test --- bl-plugins/latest_posts/plugin.php | 2 +- bl-plugins/pages/plugin.php | 15 ++++++++------- bl-plugins/tags/metadata.json | 8 ++++---- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/bl-plugins/latest_posts/plugin.php b/bl-plugins/latest_posts/plugin.php index d8dc1af5..64b51d46 100644 --- a/bl-plugins/latest_posts/plugin.php +++ b/bl-plugins/latest_posts/plugin.php @@ -45,7 +45,7 @@ class pluginLatestPosts extends Plugin { foreach($posts as $Post) { - $html .= '
    • '; + $html .= '
    • '; $html .= ''.$Post->title().''; $html .= '
    • '; } diff --git a/bl-plugins/pages/plugin.php b/bl-plugins/pages/plugin.php index 324d5bda..d6738cfa 100644 --- a/bl-plugins/pages/plugin.php +++ b/bl-plugins/pages/plugin.php @@ -5,7 +5,7 @@ class pluginPages extends Plugin { public function init() { $this->dbFields = array( - 'homeLink'=>true, + 'homeLink'=>1, 'label'=>'Pages' ); } @@ -20,7 +20,8 @@ class pluginPages extends Plugin { $html .= '
'; $html .= '
'; - $html .= 'getDbField('homeLink')?'checked':'').'>'; + $html .= ''; + $html .= 'getDbField('homeLink')?'checked':'').'>'; $html .= ''; $html .= '
'; @@ -38,15 +39,15 @@ class pluginPages extends Plugin { // Print the label if not empty. $label = $this->getDbField('label'); if( !empty($label) ) { - $html .= '

'.$label.'

'; + $html .= '

'.$label.'

'; } $html .= '
'; - $html .= '
    '; + $html .= '
      '; // Show home link ? if($this->getDbField('homeLink')) { - $html .= '
    • '; + $html .= '
    • '; $html .= ''.$Language->get('Home').''; $html .= '
    • '; } @@ -58,8 +59,8 @@ class pluginPages extends Plugin { if( $parent->published() ) { // Print the parent - $html .= '
    • '; - $html .= ''.$parent->title().''; + $html .= '
    • '; + $html .= ''.$parent->title().''; // Check if the parent has children if(isset($pagesParents[$parent->key()])) diff --git a/bl-plugins/tags/metadata.json b/bl-plugins/tags/metadata.json index 7eec067d..7b36ecc6 100644 --- a/bl-plugins/tags/metadata.json +++ b/bl-plugins/tags/metadata.json @@ -1,10 +1,10 @@ { "author": "Bludit", "email": "", - "website": "https://github.com/dignajar/bludit-plugins", - "version": "1.1", - "releaseDate": "2016-02-13", + "website": "https://plugins.bludit.com", + "version": "1.4", + "releaseDate": "2016-05-28", "license": "MIT", - "requires": "Bludit v1.1", + "compatible": "1.5beta", "notes": "" } From 1e7f13e315440cf1a880db67e570ad16d5672471 Mon Sep 17 00:00:00 2001 From: Hristo Dipchikov Date: Fri, 5 Aug 2016 14:37:56 +0300 Subject: [PATCH 13/29] update bg_BG --- bl-languages/bg_BG.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bl-languages/bg_BG.json b/bl-languages/bg_BG.json index e6fab2d9..9c6ddc54 100644 --- a/bl-languages/bg_BG.json +++ b/bl-languages/bg_BG.json @@ -57,7 +57,7 @@ "site-title": "Заглавие на сайта", "site-slogan": "Ключови думи / Етикети", "site-description": "Описание на сайта", - "footer-text": "Текст долната част на страницата.", + "footer-text": "Текст в долната част", "posts-per-page": "Брой публикации на страница", "site-url": "Адрес, на който блога е ще бъде намиран", "writting-settings": "Запиши настройките", @@ -108,8 +108,8 @@ "new-posts-and-pages-synchronized": "Новите публикации и страници са синхронизирани.", "you-can-choose-the-users-privilege": "Можете да зададете правомощия на потребителя. Редактора, може само да напише страници и мнения.", "email-will-not-be-publicly-displayed": "Този имейл адрес няма да бъде показван. Ще се използва за възстановяване парола и уведомления.", - "use-this-field-to-name-your-site": "Използвайте това поле за име на вашия сайт, той ще се появи в горната част на всяка страница на вашия сайт.", - "use-this-field-to-add-a-catchy-phrase": "Използвайте това поле, за да добавите ключови думи и изрази за вашия сайт.", + "use-this-field-to-name-your-site": "Използвайте това поле за име на сайта, то ще се появи в горната част на всяка страница.", + "use-this-field-to-add-a-catchy-phrase": "Използвайте това поле, за да добавите ключови думи и изрази за сайта.", "you-can-add-a-site-description-to-provide": "Можете да добавите кратко описание или биография на сайта.", "you-can-add-a-small-text-on-the-bottom": "Можете да добавите кратък текст в долната част на всяка страница. Например: авторско право, собственик, дати и т.н..", "number-of-posts-to-show-per-page": "Изберете желаният брой публикации на страница.", @@ -182,7 +182,7 @@ "name": "Име", "email-account-settings":"Настройки на имейл акаунт:", "sender-email": "Имейл на изпращача", - "emails-will-be-sent-from-this-address":"Писмата ще бъдат изпращани на този адрес.", + "emails-will-be-sent-from-this-address":"Писмата ще бъдат изпращани от този адрес.", "bludit-login-access-code": "BLUDIT - Код за достъп", "check-your-inbox-for-your-login-access-code":":Моля, проверете вашата пощенска кутия за вашият код!", "there-was-a-problem-sending-the-email":"Възникна проблем при изпращането на имейла", From 5562c16a67295bb4042390d085bd593f644461d8 Mon Sep 17 00:00:00 2001 From: Hristo Dipchikov Date: Mon, 8 Aug 2016 09:13:31 +0300 Subject: [PATCH 14/29] Revert "test" This reverts commit efdd2d18453fa261989f179da2e33b4d5be51873. --- bl-plugins/latest_posts/plugin.php | 2 +- bl-plugins/pages/plugin.php | 15 +++++++-------- bl-plugins/tags/metadata.json | 8 ++++---- 3 files changed, 12 insertions(+), 13 deletions(-) diff --git a/bl-plugins/latest_posts/plugin.php b/bl-plugins/latest_posts/plugin.php index 64b51d46..d8dc1af5 100644 --- a/bl-plugins/latest_posts/plugin.php +++ b/bl-plugins/latest_posts/plugin.php @@ -45,7 +45,7 @@ class pluginLatestPosts extends Plugin { foreach($posts as $Post) { - $html .= '
    • '; + $html .= '
    • '; $html .= ''.$Post->title().''; $html .= '
    • '; } diff --git a/bl-plugins/pages/plugin.php b/bl-plugins/pages/plugin.php index d6738cfa..324d5bda 100644 --- a/bl-plugins/pages/plugin.php +++ b/bl-plugins/pages/plugin.php @@ -5,7 +5,7 @@ class pluginPages extends Plugin { public function init() { $this->dbFields = array( - 'homeLink'=>1, + 'homeLink'=>true, 'label'=>'Pages' ); } @@ -20,8 +20,7 @@ class pluginPages extends Plugin { $html .= '
'; $html .= '
'; - $html .= ''; - $html .= 'getDbField('homeLink')?'checked':'').'>'; + $html .= 'getDbField('homeLink')?'checked':'').'>'; $html .= ''; $html .= '
'; @@ -39,15 +38,15 @@ class pluginPages extends Plugin { // Print the label if not empty. $label = $this->getDbField('label'); if( !empty($label) ) { - $html .= '

'.$label.'

'; + $html .= '

'.$label.'

'; } $html .= '
'; - $html .= '