Fixes on Language dictionaries

This commit is contained in:
Diego Najar 2017-12-26 17:45:02 +01:00
parent a0ab20a816
commit 5f449ab111
43 changed files with 31208 additions and 61 deletions

View File

@ -24,6 +24,7 @@ class dbList extends dbJSON
parent::__construct($file);
}
// Returns an array with a list of key of pages, FALSE if out of range
public function getList($key, $pageNumber, $amountOfItems)
{
if (empty($key)) {
@ -39,7 +40,7 @@ class dbList extends dbJSON
if ($amountOfItems==-1) {
// Invert keys to values, is necesary returns as key the key pages
$list = array_flip($list);
//$list = array_flip($list);
return $list;
}
@ -56,7 +57,7 @@ class dbList extends dbJSON
return false;
}
$list = array_flip($list);
//$list = array_flip($list);
return array_slice($list, $init, $amountOfItems, true);
}

View File

@ -31,12 +31,9 @@ if (empty($published) && $Url->pageNumber()>1) {
Redirect::page('content');
}
// List of drafts pages
$drafts = $dbPages->getDraftDB();
$scheduled = $dbPages->getScheduledDB();
$static = $dbPages->getStaticDB();
$drafts = $dbPages->getDraftDB(true);
$scheduled = $dbPages->getScheduledDB(true);
$static = $dbPages->getStaticDB(true);
// Title of the page
$layout['title'] .= ' - '.$Language->g('Manage content');

View File

@ -46,7 +46,7 @@ function table($status, $icon='arrow-circle-o-down') {
</tr>';
}
foreach($list as $pageKey=>$fields) {
foreach($list as $pageKey) {
$page = buildPage($pageKey);
if ($page) {
echo '<tr>';

View File

@ -114,11 +114,11 @@
<tbody>
<tr>
<td><?php $Language->p('Published') ?></td>
<td><?php echo count($dbPages->getPublishedDB()) ?></td>
<td><?php echo count($dbPages->getPublishedDB(false)) ?></td>
</tr>
<tr>
<td><?php $Language->p('Static') ?></td>
<td><?php echo count($dbPages->getStaticDB()) ?></td>
<td><?php echo count($dbPages->getStaticDB(false)) ?></td>
</tr>
<td><?php $Language->p('Users') ?></td>
<td><?php echo $dbUsers->count() ?></td>
@ -135,12 +135,11 @@
<h4 class="panel-title"><?php $L->p('Scheduled content') ?></h4>
<ul class="uk-list">
<?php
$scheduledPages = $dbPages->getScheduledDB();
$scheduledPages = $dbPages->getScheduledDB(true);
if( empty($scheduledPages) ) {
echo '<li>'.$Language->g('There are no scheduled content').'</li>';
}
else {
$keys = array_keys($scheduledPages);
foreach($keys as $key) {
$page = buildPage($key);
echo '<li><span class="label-time">'.$page->dateRaw(SCHEDULED_DATE_FORMAT).'</span><a href="'.HTML_PATH_ADMIN_ROOT.'edit-content/'.$page->key().'">'.($page->title()?$page->title():'['.$Language->g('Empty title').'] ').'</a></li>';
@ -154,12 +153,11 @@
<h4 class="panel-title"><?php $L->p('Draft content') ?></h4>
<ul class="uk-list">
<?php
$draftPages = $dbPages->getDraftDB();
$draftPages = $dbPages->getDraftDB(true);
if( empty($draftPages) ) {
echo '<li>'.$Language->g('There are no draft content').'</li>';
}
else {
$keys = array_keys($draftPages);
foreach($keys as $key) {
$page = buildPage($key);
echo '<li><a href="'.HTML_PATH_ADMIN_ROOT.'edit-content/'.$page->key().'">'.($page->title()?$page->title():'['.$Language->g('Empty title').'] ').'</a></li>';

View File

@ -165,8 +165,7 @@ echo '<div class="bl-publish-sidebar uk-width-2-10">';
if (count($page->children())==0) {
$options = array(' '=>'- '.$L->g('No parent').' -');
$parentsList = $dbPages->getParents();
$parentsKey = array_keys($parentsList);
foreach($parentsKey as $pageKey) {
foreach ($parentsList as $pageKey) {
$parent = buildPage($pageKey);
$options[$pageKey] = $parent->title();
}

View File

@ -17,17 +17,17 @@ class dbCategories extends dbList
global $dbPages;
// Foreach category
foreach( $this->db as $key=>$value ) {
foreach ($this->db as $key=>$value) {
$this->db[$key]['list'] = array();
}
// Get a database with published pages
$db = $dbPages->getPublishedDB();
$db = $dbPages->getPublishedDB(false);
foreach($db as $pageKey=>$pageFields) {
if( !empty($pageFields['category']) ) {
foreach ($db as $pageKey=>$pageFields) {
if (!empty($pageFields['category'])) {
$categoryKey = $pageFields['category'];
if( isset($this->db[$categoryKey]['list']) ) {
if (isset($this->db[$categoryKey]['list'])) {
array_push($this->db[$categoryKey]['list'], $pageKey);
}
}

View File

@ -292,8 +292,8 @@ class dbPages extends dbJSON
return false;
}
// Returns a database with published pages
public function getPublishedDB($onlyKeys=false)
// Returns a database with published pages keys
public function getPublishedDB($onlyKeys=true)
{
$tmp = $this->db;
foreach ($tmp as $key=>$fields) {
@ -309,7 +309,7 @@ class dbPages extends dbJSON
// Returns an array with a list of keys/database of static pages
// By default the static pages are sort by position
public function getStaticDB($onlyKeys=false)
public function getStaticDB($onlyKeys=true)
{
$tmp = $this->db;
foreach ($tmp as $key=>$fields) {
@ -325,7 +325,7 @@ class dbPages extends dbJSON
}
// Returns an array with a list of keys/database of draft pages
public function getDraftDB($onlyKeys=false)
public function getDraftDB($onlyKeys=true)
{
$tmp = $this->db;
foreach ($tmp as $key=>$fields) {
@ -340,7 +340,7 @@ class dbPages extends dbJSON
}
// Returns an array with a list of keys/database of scheduled pages
public function getScheduledDB($onlyKeys=false)
public function getScheduledDB($onlyKeys=true)
{
$tmp = $this->db;
foreach($tmp as $key=>$fields) {
@ -376,17 +376,17 @@ class dbPages extends dbJSON
return ++$tmp;
}
// Returns an array with a list of pages, FALSE if out of range
// Returns an array with a list of key of pages, FALSE if out of range
// The database is sorted by date or by position
// (int) $pageNumber, the page number
// (int) $amountOfItems, amount of items to return, if -1 returns all the items
// (boolean) $onlyPublished, TRUE to return only published pages
public function getList($pageNumber, $amountOfItems, $onlyPublished=true)
{
$db = $this->db;
$db = array_keys($this->db);
if ($onlyPublished) {
$db = $this->getPublishedDB();
$db = $this->getPublishedDB(true);
}
if ($amountOfItems==-1) {
@ -414,7 +414,7 @@ class dbPages extends dbJSON
public function count($onlyPublished=true)
{
if ($onlyPublished) {
$db = $this->getPublishedDB();
$db = $this->getPublishedDB(false);
return count($db);
}
@ -424,11 +424,11 @@ class dbPages extends dbJSON
// Returns an array with all parents pages key, a parent page is not a child
public function getParents()
{
$db = $this->getPublishedDB() + $this->getStaticDB();
foreach ($db as $key=>$fields) {
$db = $this->getPublishedDB(true) + $this->getStaticDB(true);
foreach ($db as $pageKey) {
// if the key has slash then is a child
if (Text::stringContains($key, '/')) {
unset($db[$key]);
if (Text::stringContains($pageKey, '/')) {
unset($db[$pageKey]);
}
}
return $db;

View File

@ -17,7 +17,7 @@ class dbTags extends dbList
global $dbPages;
// Get a database with published pages
$db = $dbPages->getPublishedDB();
$db = $dbPages->getPublishedDB(false);
$tagsIndex = array();

View File

@ -1,6 +1,6 @@
<?php defined('BLUDIT') or die('Bludit CMS.');
// (object) Returns a Page object, the class is page.class.php, FALSE if something fail to load the page
// Returns a Page object, the class is page.class.php, FALSE if something fail to load the page
function buildPage($key) {
global $dbPages;
global $dbUsers;
@ -61,6 +61,8 @@ function buildPage($key) {
return $page;
}
// Execute a re-index of categories
// If you create/edit/remove a page is necessary regenerate the database of categories
function reindexCategories() {
global $dbCategories;
return $dbCategories->reindex();
@ -71,19 +73,24 @@ function reindexTags() {
return $dbTags->reindex();
}
// Returns a Page Object, this generate on the fly a page-not-found
function buildErrorPage() {
global $dbPages;
global $Language;
global $dbUsers;
$page = new Page(false);
$page->setField('title', $Language->get('page-not-found'));
$page->setField('content', $Language->get('page-not-found-content'));
$page->setField('user', $dbUsers->getUser('admin'));
$page->setField('title', $Language->get('page-not-found'));
$page->setField('content', $Language->get('page-not-found-content'));
$page->setField('user', $dbUsers->getUser('admin'));
return $page;
}
// This function is only used from the rule 69.pages.php, DO NOT use this function!
// This function generate a particular page from the slug of the url
// The page is stored on the global variable $page
// If the slug has not a page associacted returns FALSE and set not-found
function buildThePage() {
global $Url;
global $page, $Page;
@ -96,20 +103,23 @@ function buildThePage() {
$Url->setNotFound();
return false;
}
// The page is not published
// The page is NOT published
elseif( $page->scheduled() || $page->draft() ) {
$Url->setNotFound();
return false;
}
// The page was generate successfully
$content[0] = $pages[0] = $page;
return true;
}
// This function is only used from the rule 69.pages.php, DO NOT use this function!
function buildPagesForHome() {
return buildPagesFor('home');
}
// This function is only used from the rule 69.pages.php, DO NOT use this function!
function buildPagesByCategory() {
global $Url;
@ -117,6 +127,7 @@ function buildPagesByCategory() {
return buildPagesFor('category', $categoryKey, false);
}
// This function is only used from the rule 69.pages.php, DO NOT use this function!
function buildPagesByTag() {
global $Url;
@ -124,6 +135,7 @@ function buildPagesByTag() {
return buildPagesFor('tag', false, $tagKey);
}
// Generate the global variables $pages and $content, defined on 69.pages.php
function buildPagesFor($for, $categoryKey=false, $tagKey=false) {
global $dbPages;
global $dbCategories;
@ -156,7 +168,7 @@ function buildPagesFor($for, $categoryKey=false, $tagKey=false) {
}
$pages = array(); // global variable
foreach($list as $pageKey=>$fields) {
foreach($list as $pageKey) {
$page = buildPage($pageKey);
if($page!==false) {
array_push($pages, $page);

View File

@ -12,7 +12,7 @@ class Filesystem {
}
if($sortByDate) {
usort($directories,
usort($directories,
function($a, $b) {
return filemtime($b) - filemtime($a);
}
@ -22,6 +22,8 @@ class Filesystem {
return $directories;
}
// Returns an array with the list of files with the absolute path
// $sortByDate = TRUE, the first file is the newer file
public static function listFiles($path, $regex='*', $extension='*', $sortByDate=false)
{
$files = glob($path.$regex.'.'.$extension);
@ -31,7 +33,7 @@ class Filesystem {
}
if ($sortByDate) {
usort($files,
usort($files,
function($a, $b) {
return filemtime($b) - filemtime($a);
}

View File

@ -1,11 +1,14 @@
{
"language-data": {
"native": "Русский (Россия)",
"english-name": "Russian",
"last-update": "2017-10-17",
"author": "Сергей Ворон",
"email": "sergey@voron.pw",
"website": "http:\/\/voron.pw"
"english-name": "Russian",
"locale": "ru, ru_RU",
"last-update": "2017-10-17",
"authors": {
"0": "Сергей Ворон http://voron.pw",
"1": "",
"2": ""
}
},
"dashboard": "Панель управления",
"manage-users": "Управление пользователями",

View File

@ -5,7 +5,7 @@
"locale": "tr_TR",
"last-update": "2017-12-25",
"author": "guleyc",
"email": "cagatay@guley.co",
"email": "cagatay@guley.co"
},
"dates": {
"Mon": "Pzt",

View File

@ -246,8 +246,7 @@ class pluginAPI extends Plugin {
);
// Get keys of pages
$keys = array_keys($list);
foreach ($keys as $pageKey) {
foreach ($list as $pageKey) {
// Create the page object from the page key
$page = buildPage($pageKey);
array_push($tmp['data'], $page->json( $returnsArray=true ));

View File

@ -99,8 +99,7 @@ class pluginLatestContent extends Plugin {
}
// Get keys of pages
$keys = array_keys($pages);
foreach($keys as $pageKey) {
foreach($pages as $pageKey) {
// Create the page object from the page key
$page = buildPage($pageKey);
$html .= '<li>';

View File

@ -55,8 +55,7 @@ class pluginRSS extends Plugin {
$xml .= '<description>'.$Site->description().'</description>';
// Get keys of pages
$keys = array_keys($pages);
foreach($keys as $pageKey) {
foreach($pages as $pageKey) {
// Create the page object from the page key
$page = buildPage($pageKey);
$xml .= '<item>';

View File

@ -31,10 +31,9 @@ class pluginSitemap extends Plugin {
$pageNumber = 1;
$amountOfItems = -1;
$onlyPublished = true;
$db = $dbPages->getList($pageNumber, $amountOfItems, $onlyPublished);
$pages = $dbPages->getList($pageNumber, $amountOfItems, $onlyPublished);
$keys = array_keys($db);
foreach($keys as $pageKey) {
foreach($pages as $pageKey) {
// Create the page object from the page key
$page = buildPage($pageKey);

View File

@ -42,7 +42,7 @@ class pluginStaticPages extends Plugin {
global $Site;
global $dbPages;
$pages = $dbPages->getStaticDB();
$pages = $dbPages->getStaticDB(true);
// HTML for sidebar
$html = '<div class="plugin plugin-pages">';
@ -60,7 +60,6 @@ class pluginStaticPages extends Plugin {
}
// Get keys of pages
$keys = array_keys($pages);
foreach($keys as $pageKey) {
// Create the page object from the page key
$page = buildPage($pageKey);

1
bl-themes/alternative/.gitignore vendored Executable file
View File

@ -0,0 +1 @@
node_modules

View File

@ -0,0 +1,11 @@
sudo: false
language: node_js
node_js:
- "node"
install: npm install
script:
- npm test
- gulp
cache:
directories:
- node_modules

View File

@ -0,0 +1,19 @@
/*!
* Start Bootstrap - Scrolling Nav (https://startbootstrap.com/template-overviews/scrolling-nav)
* Copyright 2013-2017 Start Bootstrap
* Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-scrolling-nav/blob/master/LICENSE)
*/
header {
padding: 154px 0 100px;
}
@media (min-width: 992px) {
header {
padding: 156px 0 100px;
}
}
section {
padding: 150px 0;
}

62
bl-themes/alternative/index.php Executable file
View File

@ -0,0 +1,62 @@
<!DOCTYPE html>
<html lang="en">
<head>
<?php include(THEME_DIR_PHP.'head.php') ?>
</head>
<body id="page-top">
<!-- Navigation -->
<nav class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top" id="mainNav">
<div class="container">
<a class="navbar-brand js-scroll-trigger" href="#page-top">BLUDIT</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarResponsive">
<ul class="navbar-nav">
<li class="nav-item active">
<a class="nav-link js-scroll-trigger" href="#about">about <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Features</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Pricing</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">Disabled</a>
</li>
</ul>
</div>
</div>
</nav>
<header class="bg-primary text-white">
<div class="container text-center">
<h1>Welcome to Bludit</h1>
<p class="lead">Congratulations you have successfully installed your Bludit.</p>
</div>
</header>
<!-- Load all pages -->
<?php include(THEME_DIR_PHP.'home.php'); ?>
<!-- Footer -->
<footer class="py-5 bg-dark">
<div class="container">
<p class="m-0 text-center text-white">Copyright &copy; Your Website 2017</p>
</div>
<!-- /.container -->
</footer>
<?php
echo Theme::js('vendor/jquery/jquery.min.js');
echo Theme::js('vendor/bootstrap/js/bootstrap.bundle.min.js');
echo Theme::js('vendor/jquery-easing/jquery.easing.min.js');
echo Theme::js('js/scrolling-nav.js');
?>
</body>
</html>

View File

@ -0,0 +1,29 @@
(function($) {
"use strict"; // Start of use strict
// Smooth scrolling using jQuery easing
$('a.js-scroll-trigger[href*="#"]:not([href="#"])').click(function() {
if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
var target = $(this.hash);
target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
if (target.length) {
$('html, body').animate({
scrollTop: (target.offset().top - 54)
}, 1000, "easeInOutExpo");
return false;
}
}
});
// Closes responsive menu when a scroll trigger link is clicked
$('.js-scroll-trigger').click(function() {
$('.navbar-collapse').collapse('hide');
});
// Activate scrollspy to add active class to navbar items on scroll
$('body').scrollspy({
target: '#mainNav',
offset: 54
});
})(jQuery); // End of use strict

View File

@ -0,0 +1,7 @@
{
"theme-data":
{
"name": "Alternative",
"description": "One page landing page, for small websites."
}
}

View File

@ -0,0 +1,10 @@
{
"author": "Start Bootstrap",
"email": "",
"website": "https://startbootstrap.com/template-overviews/scrolling-nav/",
"version": "1.0",
"releaseDate": "2017-10-08",
"license": "MIT",
"compatible": "2.1",
"notes": ""
}

View File

@ -0,0 +1,16 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<?php
echo Theme::headTitle();
echo Theme::headDescription();
echo Theme::favicon('img/favicon.png');
// CSS files
echo Theme::css('vendor/bootstrap/css/bootstrap.min.css');
echo Theme::css('css/scrolling-nav.css');
// Load plugins with the hook siteHead
Theme::plugins('siteHead');
?>

View File

@ -0,0 +1,25 @@
<?php foreach ($pages as $page): ?>
<?php Theme::plugins('pageBegin') ?>
<section id="<?php echo $page->key() ?>" class="bg-light">
<div class="container">
<div class="row">
<div class="col-lg-8 mx-auto">
<!-- Page title -->
<h2>
<?php echo $page->title() ?>
</h2>
<!-- Page content -->
<p class="lead">
<?php echo $page->content() ?>
</p>
</div>
</div>
</div>
</section>
<?php Theme::plugins('pageEnd') ?>
<?php endforeach ?>

View File

@ -0,0 +1,20 @@
<!-- Section -->
<section class="content">
<article class="page">
<?php Theme::plugins('pageBegin') ?>
<header>
<a href="<?php echo $page->permalink() ?>">
<h2><?php echo $page->title() ?></h2>
</a>
<?php if( $page->coverImage() ) { ?>
<img src="<?php echo $page->coverImage() ?>" alt="<?php echo $page->slug() ?>">
<?php } ?>
</header>
<?php echo $page->content() ?>
<footer>
<div class="date"><i class="fa fa-clock-o"></i> <?php echo $page->date() ?></div>
</footer>
<?php Theme::plugins('pageEnd') ?>
</article>
</section>

View File

@ -0,0 +1 @@
<?php Theme::plugins('siteSidebar') ?>

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,342 @@
/*!
* Bootstrap Reboot v4.0.0-beta.2 (https://getbootstrap.com)
* Copyright 2011-2017 The Bootstrap Authors
* Copyright 2011-2017 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
*/
*,
*::before,
*::after {
box-sizing: border-box;
}
html {
font-family: sans-serif;
line-height: 1.15;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
-ms-overflow-style: scrollbar;
-webkit-tap-highlight-color: transparent;
}
@-ms-viewport {
width: device-width;
}
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
display: block;
}
body {
margin: 0;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 1rem;
font-weight: 400;
line-height: 1.5;
color: #212529;
text-align: left;
background-color: #fff;
}
[tabindex="-1"]:focus {
outline: none !important;
}
hr {
box-sizing: content-box;
height: 0;
overflow: visible;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 0;
margin-bottom: 0.5rem;
}
p {
margin-top: 0;
margin-bottom: 1rem;
}
abbr[title],
abbr[data-original-title] {
text-decoration: underline;
-webkit-text-decoration: underline dotted;
text-decoration: underline dotted;
cursor: help;
border-bottom: 0;
}
address {
margin-bottom: 1rem;
font-style: normal;
line-height: inherit;
}
ol,
ul,
dl {
margin-top: 0;
margin-bottom: 1rem;
}
ol ol,
ul ul,
ol ul,
ul ol {
margin-bottom: 0;
}
dt {
font-weight: 700;
}
dd {
margin-bottom: .5rem;
margin-left: 0;
}
blockquote {
margin: 0 0 1rem;
}
dfn {
font-style: italic;
}
b,
strong {
font-weight: bolder;
}
small {
font-size: 80%;
}
sub,
sup {
position: relative;
font-size: 75%;
line-height: 0;
vertical-align: baseline;
}
sub {
bottom: -.25em;
}
sup {
top: -.5em;
}
a {
color: #007bff;
text-decoration: none;
background-color: transparent;
-webkit-text-decoration-skip: objects;
}
a:hover {
color: #0056b3;
text-decoration: underline;
}
a:not([href]):not([tabindex]) {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
color: inherit;
text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
outline: 0;
}
pre,
code,
kbd,
samp {
font-family: monospace, monospace;
font-size: 1em;
}
pre {
margin-top: 0;
margin-bottom: 1rem;
overflow: auto;
-ms-overflow-style: scrollbar;
}
figure {
margin: 0 0 1rem;
}
img {
vertical-align: middle;
border-style: none;
}
svg:not(:root) {
overflow: hidden;
}
a,
area,
button,
[role="button"],
input:not([type="range"]),
label,
select,
summary,
textarea {
-ms-touch-action: manipulation;
touch-action: manipulation;
}
table {
border-collapse: collapse;
}
caption {
padding-top: 0.75rem;
padding-bottom: 0.75rem;
color: #868e96;
text-align: left;
caption-side: bottom;
}
th {
text-align: inherit;
}
label {
display: inline-block;
margin-bottom: .5rem;
}
button {
border-radius: 0;
}
button:focus {
outline: 1px dotted;
outline: 5px auto -webkit-focus-ring-color;
}
input,
button,
select,
optgroup,
textarea {
margin: 0;
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
button,
input {
overflow: visible;
}
button,
select {
text-transform: none;
}
button,
html [type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
padding: 0;
border-style: none;
}
input[type="radio"],
input[type="checkbox"] {
box-sizing: border-box;
padding: 0;
}
input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
-webkit-appearance: listbox;
}
textarea {
overflow: auto;
resize: vertical;
}
fieldset {
min-width: 0;
padding: 0;
margin: 0;
border: 0;
}
legend {
display: block;
width: 100%;
max-width: 100%;
padding: 0;
margin-bottom: .5rem;
font-size: 1.5rem;
line-height: inherit;
color: inherit;
white-space: normal;
}
progress {
vertical-align: baseline;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}
[type="search"] {
outline-offset: -2px;
-webkit-appearance: none;
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
::-webkit-file-upload-button {
font: inherit;
-webkit-appearance: button;
}
output {
display: inline-block;
}
summary {
display: list-item;
}
template {
display: none;
}
[hidden] {
display: none !important;
}
/*# sourceMappingURL=bootstrap-reboot.css.map */

View File

@ -0,0 +1,8 @@
/*!
* Bootstrap Reboot v4.0.0-beta.2 (https://getbootstrap.com)
* Copyright 2011-2017 The Bootstrap Authors
* Copyright 2011-2017 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
*/*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}@-ms-viewport{width:device-width}article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg:not(:root){overflow:hidden}[role=button],a,area,button,input:not([type=range]),label,select,summary,textarea{-ms-touch-action:manipulation;touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#868e96;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}
/*# sourceMappingURL=bootstrap-reboot.min.css.map */

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,59 @@
/*
* Easing Compatibility v1 - http://gsgd.co.uk/sandbox/jquery/easing
*
* Adds compatibility for applications that use the pre 1.2 easing names
*
* Copyright (c) 2007 George Smith
* Licensed under the MIT License:
* http://www.opensource.org/licenses/mit-license.php
*/
(function($){
$.extend( $.easing,
{
easeIn: function (x, t, b, c, d) {
return $.easing.easeInQuad(x, t, b, c, d);
},
easeOut: function (x, t, b, c, d) {
return $.easing.easeOutQuad(x, t, b, c, d);
},
easeInOut: function (x, t, b, c, d) {
return $.easing.easeInOutQuad(x, t, b, c, d);
},
expoin: function(x, t, b, c, d) {
return $.easing.easeInExpo(x, t, b, c, d);
},
expoout: function(x, t, b, c, d) {
return $.easing.easeOutExpo(x, t, b, c, d);
},
expoinout: function(x, t, b, c, d) {
return $.easing.easeInOutExpo(x, t, b, c, d);
},
bouncein: function(x, t, b, c, d) {
return $.easing.easeInBounce(x, t, b, c, d);
},
bounceout: function(x, t, b, c, d) {
return $.easing.easeOutBounce(x, t, b, c, d);
},
bounceinout: function(x, t, b, c, d) {
return $.easing.easeInOutBounce(x, t, b, c, d);
},
elasin: function(x, t, b, c, d) {
return $.easing.easeInElastic(x, t, b, c, d);
},
elasout: function(x, t, b, c, d) {
return $.easing.easeOutElastic(x, t, b, c, d);
},
elasinout: function(x, t, b, c, d) {
return $.easing.easeInOutElastic(x, t, b, c, d);
},
backin: function(x, t, b, c, d) {
return $.easing.easeInBack(x, t, b, c, d);
},
backout: function(x, t, b, c, d) {
return $.easing.easeOutBack(x, t, b, c, d);
},
backinout: function(x, t, b, c, d) {
return $.easing.easeInOutBack(x, t, b, c, d);
}
});})(jQuery);

View File

@ -0,0 +1,166 @@
/*
* jQuery Easing v1.4.1 - http://gsgd.co.uk/sandbox/jquery/easing/
* Open source under the BSD License.
* Copyright © 2008 George McGinley Smith
* All rights reserved.
* https://raw.github.com/gdsmith/jquery-easing/master/LICENSE
*/
(function (factory) {
if (typeof define === "function" && define.amd) {
define(['jquery'], function ($) {
return factory($);
});
} else if (typeof module === "object" && typeof module.exports === "object") {
exports = factory(require('jquery'));
} else {
factory(jQuery);
}
})(function($){
// Preserve the original jQuery "swing" easing as "jswing"
$.easing.jswing = $.easing.swing;
var pow = Math.pow,
sqrt = Math.sqrt,
sin = Math.sin,
cos = Math.cos,
PI = Math.PI,
c1 = 1.70158,
c2 = c1 * 1.525,
c3 = c1 + 1,
c4 = ( 2 * PI ) / 3,
c5 = ( 2 * PI ) / 4.5;
// x is the fraction of animation progress, in the range 0..1
function bounceOut(x) {
var n1 = 7.5625,
d1 = 2.75;
if ( x < 1/d1 ) {
return n1*x*x;
} else if ( x < 2/d1 ) {
return n1*(x-=(1.5/d1))*x + 0.75;
} else if ( x < 2.5/d1 ) {
return n1*(x-=(2.25/d1))*x + 0.9375;
} else {
return n1*(x-=(2.625/d1))*x + 0.984375;
}
}
$.extend( $.easing,
{
def: 'easeOutQuad',
swing: function (x) {
return $.easing[$.easing.def](x);
},
easeInQuad: function (x) {
return x * x;
},
easeOutQuad: function (x) {
return 1 - ( 1 - x ) * ( 1 - x );
},
easeInOutQuad: function (x) {
return x < 0.5 ?
2 * x * x :
1 - pow( -2 * x + 2, 2 ) / 2;
},
easeInCubic: function (x) {
return x * x * x;
},
easeOutCubic: function (x) {
return 1 - pow( 1 - x, 3 );
},
easeInOutCubic: function (x) {
return x < 0.5 ?
4 * x * x * x :
1 - pow( -2 * x + 2, 3 ) / 2;
},
easeInQuart: function (x) {
return x * x * x * x;
},
easeOutQuart: function (x) {
return 1 - pow( 1 - x, 4 );
},
easeInOutQuart: function (x) {
return x < 0.5 ?
8 * x * x * x * x :
1 - pow( -2 * x + 2, 4 ) / 2;
},
easeInQuint: function (x) {
return x * x * x * x * x;
},
easeOutQuint: function (x) {
return 1 - pow( 1 - x, 5 );
},
easeInOutQuint: function (x) {
return x < 0.5 ?
16 * x * x * x * x * x :
1 - pow( -2 * x + 2, 5 ) / 2;
},
easeInSine: function (x) {
return 1 - cos( x * PI/2 );
},
easeOutSine: function (x) {
return sin( x * PI/2 );
},
easeInOutSine: function (x) {
return -( cos( PI * x ) - 1 ) / 2;
},
easeInExpo: function (x) {
return x === 0 ? 0 : pow( 2, 10 * x - 10 );
},
easeOutExpo: function (x) {
return x === 1 ? 1 : 1 - pow( 2, -10 * x );
},
easeInOutExpo: function (x) {
return x === 0 ? 0 : x === 1 ? 1 : x < 0.5 ?
pow( 2, 20 * x - 10 ) / 2 :
( 2 - pow( 2, -20 * x + 10 ) ) / 2;
},
easeInCirc: function (x) {
return 1 - sqrt( 1 - pow( x, 2 ) );
},
easeOutCirc: function (x) {
return sqrt( 1 - pow( x - 1, 2 ) );
},
easeInOutCirc: function (x) {
return x < 0.5 ?
( 1 - sqrt( 1 - pow( 2 * x, 2 ) ) ) / 2 :
( sqrt( 1 - pow( -2 * x + 2, 2 ) ) + 1 ) / 2;
},
easeInElastic: function (x) {
return x === 0 ? 0 : x === 1 ? 1 :
-pow( 2, 10 * x - 10 ) * sin( ( x * 10 - 10.75 ) * c4 );
},
easeOutElastic: function (x) {
return x === 0 ? 0 : x === 1 ? 1 :
pow( 2, -10 * x ) * sin( ( x * 10 - 0.75 ) * c4 ) + 1;
},
easeInOutElastic: function (x) {
return x === 0 ? 0 : x === 1 ? 1 : x < 0.5 ?
-( pow( 2, 20 * x - 10 ) * sin( ( 20 * x - 11.125 ) * c5 )) / 2 :
pow( 2, -20 * x + 10 ) * sin( ( 20 * x - 11.125 ) * c5 ) / 2 + 1;
},
easeInBack: function (x) {
return c3 * x * x * x - c1 * x * x;
},
easeOutBack: function (x) {
return 1 + c3 * pow( x - 1, 3 ) + c1 * pow( x - 1, 2 );
},
easeInOutBack: function (x) {
return x < 0.5 ?
( pow( 2 * x, 2 ) * ( ( c2 + 1 ) * 2 * x - c2 ) ) / 2 :
( pow( 2 * x - 2, 2 ) *( ( c2 + 1 ) * ( x * 2 - 2 ) + c2 ) + 2 ) / 2;
},
easeInBounce: function (x) {
return 1 - bounceOut( 1 - x );
},
easeOutBounce: bounceOut,
easeInOutBounce: function (x) {
return x < 0.5 ?
( 1 - bounceOut( 1 - 2 * x ) ) / 2 :
( 1 + bounceOut( 2 * x - 1 ) ) / 2;
}
});
});

View File

@ -0,0 +1 @@
(function(factory){if(typeof define==="function"&&define.amd){define(["jquery"],function($){return factory($)})}else if(typeof module==="object"&&typeof module.exports==="object"){exports=factory(require("jquery"))}else{factory(jQuery)}})(function($){$.easing.jswing=$.easing.swing;var pow=Math.pow,sqrt=Math.sqrt,sin=Math.sin,cos=Math.cos,PI=Math.PI,c1=1.70158,c2=c1*1.525,c3=c1+1,c4=2*PI/3,c5=2*PI/4.5;function bounceOut(x){var n1=7.5625,d1=2.75;if(x<1/d1){return n1*x*x}else if(x<2/d1){return n1*(x-=1.5/d1)*x+.75}else if(x<2.5/d1){return n1*(x-=2.25/d1)*x+.9375}else{return n1*(x-=2.625/d1)*x+.984375}}$.extend($.easing,{def:"easeOutQuad",swing:function(x){return $.easing[$.easing.def](x)},easeInQuad:function(x){return x*x},easeOutQuad:function(x){return 1-(1-x)*(1-x)},easeInOutQuad:function(x){return x<.5?2*x*x:1-pow(-2*x+2,2)/2},easeInCubic:function(x){return x*x*x},easeOutCubic:function(x){return 1-pow(1-x,3)},easeInOutCubic:function(x){return x<.5?4*x*x*x:1-pow(-2*x+2,3)/2},easeInQuart:function(x){return x*x*x*x},easeOutQuart:function(x){return 1-pow(1-x,4)},easeInOutQuart:function(x){return x<.5?8*x*x*x*x:1-pow(-2*x+2,4)/2},easeInQuint:function(x){return x*x*x*x*x},easeOutQuint:function(x){return 1-pow(1-x,5)},easeInOutQuint:function(x){return x<.5?16*x*x*x*x*x:1-pow(-2*x+2,5)/2},easeInSine:function(x){return 1-cos(x*PI/2)},easeOutSine:function(x){return sin(x*PI/2)},easeInOutSine:function(x){return-(cos(PI*x)-1)/2},easeInExpo:function(x){return x===0?0:pow(2,10*x-10)},easeOutExpo:function(x){return x===1?1:1-pow(2,-10*x)},easeInOutExpo:function(x){return x===0?0:x===1?1:x<.5?pow(2,20*x-10)/2:(2-pow(2,-20*x+10))/2},easeInCirc:function(x){return 1-sqrt(1-pow(x,2))},easeOutCirc:function(x){return sqrt(1-pow(x-1,2))},easeInOutCirc:function(x){return x<.5?(1-sqrt(1-pow(2*x,2)))/2:(sqrt(1-pow(-2*x+2,2))+1)/2},easeInElastic:function(x){return x===0?0:x===1?1:-pow(2,10*x-10)*sin((x*10-10.75)*c4)},easeOutElastic:function(x){return x===0?0:x===1?1:pow(2,-10*x)*sin((x*10-.75)*c4)+1},easeInOutElastic:function(x){return x===0?0:x===1?1:x<.5?-(pow(2,20*x-10)*sin((20*x-11.125)*c5))/2:pow(2,-20*x+10)*sin((20*x-11.125)*c5)/2+1},easeInBack:function(x){return c3*x*x*x-c1*x*x},easeOutBack:function(x){return 1+c3*pow(x-1,3)+c1*pow(x-1,2)},easeInOutBack:function(x){return x<.5?pow(2*x,2)*((c2+1)*2*x-c2)/2:(pow(2*x-2,2)*((c2+1)*(x*2-2)+c2)+2)/2},easeInBounce:function(x){return 1-bounceOut(1-x)},easeOutBounce:bounceOut,easeInOutBounce:function(x){return x<.5?(1-bounceOut(1-2*x))/2:(1+bounceOut(2*x-1))/2}})});

10253
bl-themes/alternative/vendor/jquery/jquery.js vendored Executable file

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long