commit
9c5febca69
18
install.php
18
install.php
|
@ -243,9 +243,9 @@ function install($adminPassword, $email, $timezoneOffset)
|
||||||
error_log($errorText, 0);
|
error_log($errorText, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!mkdir(PATH_PLUGINS_DATABASES.'simplemde', $dirpermissions, true))
|
if(!mkdir(PATH_PLUGINS_DATABASES.'tinymce', $dirpermissions, true))
|
||||||
{
|
{
|
||||||
$errorText = 'Error when trying to created the directory=>'.PATH_PLUGINS_DATABASES.'simplemde';
|
$errorText = 'Error when trying to created the directory=>'.PATH_PLUGINS_DATABASES.'tinymce';
|
||||||
error_log($errorText, 0);
|
error_log($errorText, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -408,14 +408,14 @@ function install($adminPassword, $email, $timezoneOffset)
|
||||||
LOCK_EX
|
LOCK_EX
|
||||||
);
|
);
|
||||||
|
|
||||||
// File plugins/simplemde/db.php
|
// File plugins/tinymce/db.php
|
||||||
file_put_contents(
|
file_put_contents(
|
||||||
PATH_PLUGINS_DATABASES.'simplemde'.DS.'db.php',
|
PATH_PLUGINS_DATABASES.'tinymce'.DS.'db.php',
|
||||||
$dataHead.json_encode(
|
$dataHead.json_encode(
|
||||||
array(
|
array(
|
||||||
'position'=>0,
|
'position'=>0,
|
||||||
'tabSize'=>4,
|
'plugins'=>'autoresize, fullscreen, pagebreak, link, textcolor, code, image',
|
||||||
'toolbar'=>'"bold", "italic", "heading", "|", "quote", "unordered-list", "|", "link", "image", "code", "horizontal-rule", "|", "preview", "side-by-side", "fullscreen", "guide"'
|
'toolbar'=>'bold italic underline strikethrough | alignleft aligncenter alignright | bullist numlist | styleselect | link forecolor backcolor removeformat image | pagebreak code fullscreen'
|
||||||
),
|
),
|
||||||
JSON_PRETTY_PRINT),
|
JSON_PRETTY_PRINT),
|
||||||
LOCK_EX
|
LOCK_EX
|
||||||
|
@ -531,12 +531,12 @@ if( $_SERVER['REQUEST_METHOD'] == 'POST' )
|
||||||
<link rel="shortcut icon" type="image/x-icon" href="./img/favicon.png">
|
<link rel="shortcut icon" type="image/x-icon" href="./img/favicon.png">
|
||||||
|
|
||||||
<!-- CSS -->
|
<!-- CSS -->
|
||||||
<link rel="stylesheet" type="text/css" href="./css/uikit.almost-flat.min.css?version=<?php echo time() ?>">
|
<link rel="stylesheet" type="text/css" href="./css/uikit/uikit.almost-flat.min.css?version=<?php echo time() ?>">
|
||||||
<link rel="stylesheet" type="text/css" href="./css/installer.css?version=<?php echo time() ?>">
|
<link rel="stylesheet" type="text/css" href="./css/installer.css?version=<?php echo time() ?>">
|
||||||
|
|
||||||
<!-- Javascript -->
|
<!-- Javascript -->
|
||||||
<script charset="utf-8" src="./js/jquery.min.js?version=<?php echo time() ?>"></script>
|
<script charset="utf-8" src="./js/jquery.min.js?version=<?php echo time() ?>"></script>
|
||||||
<script charset="utf-8" src="./js/uikit.min.js?version=<?php echo time() ?>"></script>
|
<script charset="utf-8" src="./js/uikit/uikit.min.js?version=<?php echo time() ?>"></script>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
<body class="uk-height-1-1">
|
<body class="uk-height-1-1">
|
||||||
|
@ -660,4 +660,4 @@ $(document).ready(function()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -106,4 +106,4 @@ class dbJSON
|
||||||
return unserialize($data);
|
return unserialize($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -191,4 +191,4 @@ class Plugin {
|
||||||
// The user can define your own dbFields.
|
// The user can define your own dbFields.
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,4 +23,4 @@ if($Login->role()!=='admin') {
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// Main after POST
|
// Main after POST
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|
|
@ -79,4 +79,4 @@ if(!$dbPosts->postExists($layout['parameters']))
|
||||||
|
|
||||||
$_Post = buildPost($layout['parameters']);
|
$_Post = buildPost($layout['parameters']);
|
||||||
|
|
||||||
$layout['title'] .= ' - '.$Language->g('Edit post').' - '.$_Post->title();
|
$layout['title'] .= ' - '.$Language->g('Edit post').' - '.$_Post->title();
|
||||||
|
|
|
@ -33,4 +33,4 @@ foreach($plugins['all'] as $P)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Redirect::page('admin', 'plugins');
|
Redirect::page('admin', 'plugins');
|
||||||
|
|
|
@ -36,4 +36,4 @@ else
|
||||||
Log::set(__METHOD__.LOG_SEP.'Error occurred when trying to install the theme: '.$themeDirname);
|
Log::set(__METHOD__.LOG_SEP.'Error occurred when trying to install the theme: '.$themeDirname);
|
||||||
}
|
}
|
||||||
|
|
||||||
Redirect::page('admin', 'themes');
|
Redirect::page('admin', 'themes');
|
||||||
|
|
|
@ -83,7 +83,7 @@ function checkGet($args)
|
||||||
if( $Login->verifyUserByToken($args['username'], $args['tokenEmail']) )
|
if( $Login->verifyUserByToken($args['username'], $args['tokenEmail']) )
|
||||||
{
|
{
|
||||||
// Renew the tokenCRFS. This token will be the same inside the session for multiple forms.
|
// Renew the tokenCRFS. This token will be the same inside the session for multiple forms.
|
||||||
$Security->generateToken();
|
$Security->generateTokenCSRF();
|
||||||
|
|
||||||
Redirect::page('admin', 'dashboard');
|
Redirect::page('admin', 'dashboard');
|
||||||
return true;
|
return true;
|
||||||
|
@ -119,4 +119,4 @@ if( $_SERVER['REQUEST_METHOD'] == 'POST' )
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// Main after POST
|
// Main after POST
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|
|
@ -23,7 +23,7 @@ function checkPost($args)
|
||||||
if( $Login->verifyUser($_POST['username'], $_POST['password']) )
|
if( $Login->verifyUser($_POST['username'], $_POST['password']) )
|
||||||
{
|
{
|
||||||
// Renew the token. This token will be the same inside the session for multiple forms.
|
// Renew the token. This token will be the same inside the session for multiple forms.
|
||||||
$Security->generateToken();
|
$Security->generateTokenCSRF();
|
||||||
|
|
||||||
Redirect::page('admin', 'dashboard');
|
Redirect::page('admin', 'dashboard');
|
||||||
return true;
|
return true;
|
||||||
|
@ -51,4 +51,4 @@ if( $_SERVER['REQUEST_METHOD'] == 'POST' )
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// Main after POST
|
// Main after POST
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|
|
@ -23,4 +23,4 @@
|
||||||
if( $Login->logout())
|
if( $Login->logout())
|
||||||
{
|
{
|
||||||
Redirect::home();
|
Redirect::home();
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
<?php defined('BLUDIT') or die('Bludit CMS.');
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// Check role
|
||||||
|
// ============================================================================
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// Functions
|
||||||
|
// ============================================================================
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// Main before POST
|
||||||
|
// ============================================================================
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// POST Method
|
||||||
|
// ============================================================================
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// Main after POST
|
||||||
|
// ============================================================================
|
|
@ -0,0 +1,21 @@
|
||||||
|
<?php defined('BLUDIT') or die('Bludit CMS.');
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// Check role
|
||||||
|
// ============================================================================
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// Functions
|
||||||
|
// ============================================================================
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// Main before POST
|
||||||
|
// ============================================================================
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// POST Method
|
||||||
|
// ============================================================================
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// Main after POST
|
||||||
|
// ============================================================================
|
|
@ -40,4 +40,4 @@ if( $_SERVER['REQUEST_METHOD'] == 'POST' )
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// Main after POST
|
// Main after POST
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|
|
@ -45,4 +45,4 @@ if( $_SERVER['REQUEST_METHOD'] == 'POST' )
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// Main after POST
|
// Main after POST
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|
|
@ -23,4 +23,4 @@ if($Login->role()!=='admin') {
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// Main after POST
|
// Main after POST
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|
|
@ -34,16 +34,17 @@ foreach($themesPaths as $themePath)
|
||||||
{
|
{
|
||||||
$database = new dbJSON($langDefaultFile, false);
|
$database = new dbJSON($langDefaultFile, false);
|
||||||
$databaseArray = $database->db;
|
$databaseArray = $database->db;
|
||||||
|
$themeMetaData = $database->db['theme-data'];
|
||||||
|
|
||||||
// Check if exists locale language
|
// Check if exists locale language
|
||||||
if( Sanitize::pathFile($langLocaleFile) ) {
|
if( Sanitize::pathFile($langLocaleFile) ) {
|
||||||
$database = new dbJSON($langLocaleFile, false);
|
$database = new dbJSON($langLocaleFile, false);
|
||||||
$databaseArray['theme-data'] = array_merge($databaseArray['theme-data'], $database->db['theme-data']);
|
$themeMetaData = array_merge($themeMetaData, $database->db['theme-data']);
|
||||||
}
|
}
|
||||||
|
|
||||||
$databaseArray['theme-data']['dirname'] = basename($themePath);
|
$themeMetaData['dirname'] = basename($themePath);
|
||||||
|
|
||||||
// Theme data
|
// Theme data
|
||||||
array_push($themes, $databaseArray['theme-data']);
|
array_push($themes, $themeMetaData);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,4 +29,4 @@ $pluginClassName = $layout['parameters'];
|
||||||
$Plugin = new $pluginClassName;
|
$Plugin = new $pluginClassName;
|
||||||
$Plugin->uninstall();
|
$Plugin->uninstall();
|
||||||
|
|
||||||
Redirect::page('admin', 'plugins');
|
Redirect::page('admin', 'plugins');
|
||||||
|
|
|
@ -26,8 +26,13 @@
|
||||||
background: #1F5FC4;
|
background: #1F5FC4;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uk-form legend {
|
legend {
|
||||||
width: 70% !important;
|
width: 70% !important;
|
||||||
|
margin-top: 40px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
legend.first-child {
|
||||||
|
margin-top: 0px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uk-navbar-nav > li > a {
|
.uk-navbar-nav > li > a {
|
||||||
|
@ -90,7 +95,7 @@ li.bludit-logo {
|
||||||
}
|
}
|
||||||
|
|
||||||
h2.title {
|
h2.title {
|
||||||
margin: 20px 0;
|
margin: 0 0 20px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
button.delete-button {
|
button.delete-button {
|
||||||
|
@ -111,16 +116,22 @@ button.delete-button:hover {
|
||||||
height: 400px;
|
height: 400px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.bl-view {
|
||||||
|
margin-top: 25px;
|
||||||
|
margin-bottom: 25px;
|
||||||
|
}
|
||||||
|
|
||||||
/* ----------- ALERT ----------- */
|
/* ----------- ALERT ----------- */
|
||||||
|
|
||||||
#alert {
|
#alert {
|
||||||
display: none;
|
bottom: 20px;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
|
display: none;
|
||||||
padding: 24px;
|
padding: 24px;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
|
right: 20px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
width: 100%;
|
width: 350px;
|
||||||
z-index: 100;
|
z-index: 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -149,7 +160,7 @@ div.login-form {
|
||||||
/* ----------- DASHBOARD ----------- */
|
/* ----------- DASHBOARD ----------- */
|
||||||
|
|
||||||
div.dashboard-links {
|
div.dashboard-links {
|
||||||
margin: 20px 0;
|
margin: 0 0 25px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.dashboard-links h4 {
|
div.dashboard-links h4 {
|
||||||
|
|
|
@ -18,6 +18,11 @@ input[type="password"] {
|
||||||
|
|
||||||
/* ----------- BLUDIT ----------- */
|
/* ----------- BLUDIT ----------- */
|
||||||
|
|
||||||
|
div.login-box {
|
||||||
|
width: 400px;
|
||||||
|
max-width: calc(100% - 40px);
|
||||||
|
}
|
||||||
|
|
||||||
div.login-box > h1 {
|
div.login-box > h1 {
|
||||||
font-weight: lighter;
|
font-weight: lighter;
|
||||||
letter-spacing: 4px;
|
letter-spacing: 4px;
|
||||||
|
@ -26,7 +31,6 @@ div.login-box > h1 {
|
||||||
}
|
}
|
||||||
|
|
||||||
div.login-form {
|
div.login-form {
|
||||||
width: 400px;
|
|
||||||
text-align: left;
|
text-align: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
/*! UIkit 2.23.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
|
||||||
.uk-progress{box-sizing:border-box;height:20px;margin-bottom:15px;background:#eee;overflow:hidden;line-height:20px}*+.uk-progress{margin-top:15px}.uk-progress-bar{width:0;height:100%;background:#00a8e6;float:left;-webkit-transition:width .6s ease;transition:width .6s ease;font-size:12px;color:#fff;text-align:center}.uk-progress-mini{height:6px}.uk-progress-small{height:12px}.uk-progress-success .uk-progress-bar{background-color:#8cc14c}.uk-progress-warning .uk-progress-bar{background-color:#faa732}.uk-progress-danger .uk-progress-bar{background-color:#da314b}.uk-progress-striped .uk-progress-bar{background-image:-webkit-linear-gradient(-45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(-45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:30px 30px}.uk-progress-striped.uk-active .uk-progress-bar{-webkit-animation:uk-progress-bar-stripes 2s linear infinite;animation:uk-progress-bar-stripes 2s linear infinite}@-webkit-keyframes uk-progress-bar-stripes{0%{background-position:0 0}100%{background-position:30px 0}}@keyframes uk-progress-bar-stripes{0%{background-position:0 0}100%{background-position:30px 0}}
|
|
File diff suppressed because one or more lines are too long
2
kernel/admin/themes/default/css/form-file.min.css → kernel/admin/themes/default/css/uikit/form-file.almost-flat.min.css
vendored
Normal file → Executable file
2
kernel/admin/themes/default/css/form-file.min.css → kernel/admin/themes/default/css/uikit/form-file.almost-flat.min.css
vendored
Normal file → Executable file
|
@ -1,2 +1,2 @@
|
||||||
/*! UIkit 2.23.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
/*! UIkit 2.24.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||||
.uk-form-file{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-file input[type=file]{position:absolute;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;left:0;font-size:500px}
|
.uk-form-file{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-file input[type=file]{position:absolute;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;left:0;font-size:500px}
|
2
kernel/admin/themes/default/css/placeholder.min.css → kernel/admin/themes/default/css/uikit/placeholder.almost-flat.min.css
vendored
Normal file → Executable file
2
kernel/admin/themes/default/css/placeholder.min.css → kernel/admin/themes/default/css/uikit/placeholder.almost-flat.min.css
vendored
Normal file → Executable file
|
@ -1,2 +1,2 @@
|
||||||
/*! UIkit 2.23.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
/*! UIkit 2.24.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||||
.uk-placeholder{margin-bottom:15px;padding:15px;border:1px dashed #ddd;background:#fafafa;color:#444}*+.uk-placeholder{margin-top:15px}.uk-placeholder>:last-child{margin-bottom:0}.uk-placeholder-large{padding-top:80px;padding-bottom:80px}
|
.uk-placeholder{margin-bottom:15px;padding:15px;border:1px dashed #ddd;background:#fafafa;color:#444}*+.uk-placeholder{margin-top:15px}.uk-placeholder>:last-child{margin-bottom:0}.uk-placeholder-large{padding-top:80px;padding-bottom:80px}
|
|
@ -0,0 +1,2 @@
|
||||||
|
/*! UIkit 2.24.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||||
|
.uk-progress{box-sizing:border-box;height:20px;margin-bottom:15px;background:#f5f5f5;overflow:hidden;line-height:20px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);border-radius:4px}*+.uk-progress{margin-top:15px}.uk-progress-bar{width:0;height:100%;background:#00a8e6;float:left;-webkit-transition:width .6s ease;transition:width .6s ease;font-size:12px;color:#fff;text-align:center;box-shadow:inset 0 0 5px rgba(0,0,0,.05);text-shadow:0 -1px 0 rgba(0,0,0,.1)}.uk-progress-mini{height:6px}.uk-progress-small{height:12px}.uk-progress-success .uk-progress-bar{background-color:#8cc14c}.uk-progress-warning .uk-progress-bar{background-color:#faa732}.uk-progress-danger .uk-progress-bar{background-color:#da314b}.uk-progress-striped .uk-progress-bar{background-image:-webkit-linear-gradient(-45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(-45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:30px 30px}.uk-progress-striped.uk-active .uk-progress-bar{-webkit-animation:uk-progress-bar-stripes 2s linear infinite;animation:uk-progress-bar-stripes 2s linear infinite}@-webkit-keyframes uk-progress-bar-stripes{0%{background-position:0 0}100%{background-position:30px 0}}@keyframes uk-progress-bar-stripes{0%{background-position:0 0}100%{background-position:30px 0}}.uk-progress-mini,.uk-progress-small{border-radius:500px}
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,2 @@
|
||||||
|
/*! UIkit 2.24.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||||
|
.uk-dragover{box-shadow:0 0 20px rgba(100,100,100,.3)}
|
|
@ -1,2 +0,0 @@
|
||||||
/*! UIkit 2.23.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
|
||||||
.uk-dragover{box-shadow:0 0 20px rgba(100,100,100,.3)}
|
|
|
@ -12,19 +12,20 @@
|
||||||
<link rel="shortcut icon" type="image/x-icon" href="./img/favicon.png">
|
<link rel="shortcut icon" type="image/x-icon" href="./img/favicon.png">
|
||||||
|
|
||||||
<!-- CSS -->
|
<!-- CSS -->
|
||||||
<link rel="stylesheet" type="text/css" href="./css/uikit.almost-flat.min.css?version=<?php echo BLUDIT_VERSION ?>">
|
<link rel="stylesheet" type="text/css" href="./css/uikit/uikit.almost-flat.min.css?version=<?php echo BLUDIT_VERSION ?>">
|
||||||
|
<link rel="stylesheet" type="text/css" href="./css/uikit/upload.almost-flat.min.css?version=<?php echo BLUDIT_VERSION ?>">
|
||||||
|
<link rel="stylesheet" type="text/css" href="./css/uikit/form-file.almost-flat.min.css?version=<?php echo BLUDIT_VERSION ?>">
|
||||||
|
<link rel="stylesheet" type="text/css" href="./css/uikit/placeholder.almost-flat.min.css?version=<?php echo BLUDIT_VERSION ?>">
|
||||||
|
<link rel="stylesheet" type="text/css" href="./css/uikit/progress.almost-flat.min.css?version=<?php echo BLUDIT_VERSION ?>">
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="./css/default.css?version=<?php echo BLUDIT_VERSION ?>">
|
<link rel="stylesheet" type="text/css" href="./css/default.css?version=<?php echo BLUDIT_VERSION ?>">
|
||||||
<link rel="stylesheet" type="text/css" href="./css/jquery.datetimepicker.css?version=<?php echo BLUDIT_VERSION ?>">
|
<link rel="stylesheet" type="text/css" href="./css/jquery.datetimepicker.css?version=<?php echo BLUDIT_VERSION ?>">
|
||||||
<link rel="stylesheet" type="text/css" href="./css/upload.min.css?version=<?php echo BLUDIT_VERSION ?>">
|
|
||||||
<link rel="stylesheet" type="text/css" href="./css/form-file.min.css?version=<?php echo BLUDIT_VERSION ?>">
|
|
||||||
<link rel="stylesheet" type="text/css" href="./css/placeholder.min.css?version=<?php echo BLUDIT_VERSION ?>">
|
|
||||||
<link rel="stylesheet" type="text/css" href="./css/progress.min.css?version=<?php echo BLUDIT_VERSION ?>">
|
|
||||||
|
|
||||||
<!-- Javascript -->
|
<!-- Javascript -->
|
||||||
<script charset="utf-8" src="./js/jquery.min.js?version=<?php echo BLUDIT_VERSION ?>"></script>
|
<script charset="utf-8" src="./js/jquery.min.js?version=<?php echo BLUDIT_VERSION ?>"></script>
|
||||||
<script charset="utf-8" src="./js/uikit.min.js?version=<?php echo BLUDIT_VERSION ?>"></script>
|
<script charset="utf-8" src="./js/uikit/uikit.min.js?version=<?php echo BLUDIT_VERSION ?>"></script>
|
||||||
|
<script charset="utf-8" src="./js/uikit/upload.min.js?version=<?php echo BLUDIT_VERSION ?>"></script>
|
||||||
<script charset="utf-8" src="./js/jquery.datetimepicker.js?version=<?php echo BLUDIT_VERSION ?>"></script>
|
<script charset="utf-8" src="./js/jquery.datetimepicker.js?version=<?php echo BLUDIT_VERSION ?>"></script>
|
||||||
<script charset="utf-8" src="./js/upload.min.js?version=<?php echo BLUDIT_VERSION ?>"></script>
|
|
||||||
|
|
||||||
<!-- Plugins -->
|
<!-- Plugins -->
|
||||||
<?php Theme::plugins('adminHead') ?>
|
<?php Theme::plugins('adminHead') ?>
|
||||||
|
@ -54,77 +55,80 @@ $(document).ready(function() {
|
||||||
|
|
||||||
<!-- Navbar -->
|
<!-- Navbar -->
|
||||||
<nav class="uk-navbar">
|
<nav class="uk-navbar">
|
||||||
<div class="uk-container uk-container-center">
|
|
||||||
|
|
||||||
<ul class="uk-navbar-nav uk-hidden-small">
|
<!-- Navbar for Desktop -->
|
||||||
<li class="bludit-logo">BLUDIT</li>
|
<div class="uk-container uk-container-center uk-hidden-small">
|
||||||
<li <?php echo ($layout['view']=='dashboard')?'class="uk-active"':'' ?> ><a href="<?php echo HTML_PATH_ADMIN_ROOT.'dashboard' ?>"><i class="uk-icon-object-ungroup"></i> <?php $L->p('Dashboard') ?></a></li>
|
|
||||||
<li <?php echo ($layout['view']=='new-post')?'class="uk-active"':'' ?>><a href="<?php echo HTML_PATH_ADMIN_ROOT.'new-post' ?>"><i class="uk-icon-pencil"></i> <?php $L->p('New post') ?></a></li>
|
|
||||||
<li <?php echo ($layout['view']=='new-page')?'class="uk-active"':'' ?>><a href="<?php echo HTML_PATH_ADMIN_ROOT.'new-page' ?>"><i class="uk-icon-file-text-o"></i> <?php $L->p('New page') ?></a></li>
|
|
||||||
|
|
||||||
<li class="uk-parent" data-uk-dropdown>
|
<ul class="uk-navbar-nav">
|
||||||
<a href="<?php echo HTML_PATH_ADMIN_ROOT.'manage-posts' ?>"><i class="uk-icon-clone"></i> <?php $L->p('Manage') ?> ▾</a>
|
<li class="bludit-logo">BLUDIT</li>
|
||||||
<div class="uk-dropdown uk-dropdown-navbar">
|
<li <?php echo ($layout['view']=='dashboard')?'class="uk-active"':'' ?> ><a href="<?php echo HTML_PATH_ADMIN_ROOT.'dashboard' ?>"><i class="uk-icon-object-ungroup"></i> <?php $L->p('Dashboard') ?></a></li>
|
||||||
<ul class="uk-nav uk-nav-navbar">
|
<li <?php echo ($layout['view']=='new-post')?'class="uk-active"':'' ?>><a href="<?php echo HTML_PATH_ADMIN_ROOT.'new-post' ?>"><i class="uk-icon-pencil"></i> <?php $L->p('New post') ?></a></li>
|
||||||
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'manage-posts' ?>"><i class="uk-icon-folder-o"></i> <?php $L->p('Posts') ?></a></li>
|
<li <?php echo ($layout['view']=='new-page')?'class="uk-active"':'' ?>><a href="<?php echo HTML_PATH_ADMIN_ROOT.'new-page' ?>"><i class="uk-icon-file-text-o"></i> <?php $L->p('New page') ?></a></li>
|
||||||
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'manage-pages' ?>"><i class="uk-icon-folder-o"></i> <?php $L->p('Pages') ?></a></li>
|
|
||||||
<?php if($Login->role() == 'admin') { ?>
|
<li class="uk-parent" data-uk-dropdown>
|
||||||
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'users' ?>"><i class="uk-icon-users"></i> <?php $L->p('Users') ?></a></li>
|
<a href="<?php echo HTML_PATH_ADMIN_ROOT.'manage-posts' ?>"><i class="uk-icon-clone"></i> <?php $L->p('Manage') ?> ▾</a>
|
||||||
<?php } ?>
|
<div class="uk-dropdown uk-dropdown-navbar">
|
||||||
</ul>
|
<ul class="uk-nav uk-nav-navbar">
|
||||||
|
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'manage-posts' ?>"><i class="uk-icon-folder-o"></i> <?php $L->p('Posts') ?></a></li>
|
||||||
|
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'manage-pages' ?>"><i class="uk-icon-folder-o"></i> <?php $L->p('Pages') ?></a></li>
|
||||||
|
<?php if($Login->role() == 'admin') { ?>
|
||||||
|
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'users' ?>"><i class="uk-icon-users"></i> <?php $L->p('Users') ?></a></li>
|
||||||
|
<?php } ?>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<?php if($Login->role() == 'admin') { ?>
|
||||||
|
<li class="uk-parent" data-uk-dropdown>
|
||||||
|
<a href="<?php echo HTML_PATH_ADMIN_ROOT.'settings-general' ?>"><i class="uk-icon-cog"></i> <?php $L->p('Settings') ?> ▾</a>
|
||||||
|
<div class="uk-dropdown uk-dropdown-navbar">
|
||||||
|
<ul class="uk-nav uk-nav-navbar">
|
||||||
|
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'settings-general' ?>"><i class="uk-icon-th-large"></i> <?php $L->p('General') ?></a></li>
|
||||||
|
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'settings-advanced' ?>"><i class="uk-icon-th"></i> <?php $L->p('Advanced') ?></a></li>
|
||||||
|
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'settings-regional' ?>"><i class="uk-icon-globe"></i> <?php $L->p('Language and timezone') ?></a></li>
|
||||||
|
<li class="uk-nav-divider"></li>
|
||||||
|
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'plugins' ?>"><i class="uk-icon-puzzle-piece"></i> <?php $L->p('Plugins') ?></a></li>
|
||||||
|
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'themes' ?>"><i class="uk-icon-paint-brush"></i> <?php $L->p('Themes') ?></a></li>
|
||||||
|
<li class="uk-nav-divider"></li>
|
||||||
|
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'about' ?>"><?php $L->p('About') ?></a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<div class="uk-navbar-flip">
|
||||||
|
<ul class="uk-navbar-nav">
|
||||||
|
<li class="uk-parent" data-uk-dropdown>
|
||||||
|
<?php
|
||||||
|
$profilePictureSrc = HTML_PATH_ADMIN_THEME_IMG.'default.jpg';
|
||||||
|
if(file_exists(PATH_UPLOADS_PROFILES.$Login->username().'.jpg')) {
|
||||||
|
$profilePictureSrc = HTML_PATH_UPLOADS_PROFILES.$Login->username().'.jpg';
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<a href="<?php echo HTML_PATH_ADMIN_ROOT.'edit-user/'.$Login->username() ?>">
|
||||||
|
<img class="uk-border-circle" width="28px" src="<?php echo $profilePictureSrc ?>" alt=""> <?php echo $Login->username() ?> ▾
|
||||||
|
</a>
|
||||||
|
<div class="uk-dropdown uk-dropdown-navbar">
|
||||||
|
<ul class="uk-nav uk-nav-navbar">
|
||||||
|
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'edit-user/'.$Login->username() ?>"><?php $L->p('Profile') ?></a></li>
|
||||||
|
<li class="uk-nav-divider"></li>
|
||||||
|
<li><a target="_blank" href="<?php echo HTML_PATH_ROOT ?>"><?php $L->p('Website') ?></a></li>
|
||||||
|
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'logout' ?>"><?php $L->p('Logout') ?></a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
|
||||||
|
|
||||||
<?php if($Login->role() == 'admin') { ?>
|
|
||||||
<li class="uk-parent" data-uk-dropdown>
|
|
||||||
<a href="<?php echo HTML_PATH_ADMIN_ROOT.'settings-general' ?>"><i class="uk-icon-cog"></i> <?php $L->p('Settings') ?> ▾</a>
|
|
||||||
<div class="uk-dropdown uk-dropdown-navbar">
|
|
||||||
<ul class="uk-nav uk-nav-navbar">
|
|
||||||
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'settings-general' ?>"><i class="uk-icon-th-large"></i> <?php $L->p('General') ?></a></li>
|
|
||||||
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'settings-advanced' ?>"><i class="uk-icon-th"></i> <?php $L->p('Advanced') ?></a></li>
|
|
||||||
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'settings-regional' ?>"><i class="uk-icon-globe"></i> <?php $L->p('Language and timezone') ?></a></li>
|
|
||||||
<li class="uk-nav-divider"></li>
|
|
||||||
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'plugins' ?>"><i class="uk-icon-puzzle-piece"></i> <?php $L->p('Plugins') ?></a></li>
|
|
||||||
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'themes' ?>"><i class="uk-icon-paint-brush"></i> <?php $L->p('Themes') ?></a></li>
|
|
||||||
<li class="uk-nav-divider"></li>
|
|
||||||
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'about' ?>"><?php $L->p('About') ?></a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
<?php } ?>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<div class="uk-navbar-flip uk-hidden-small">
|
|
||||||
<ul class="uk-navbar-nav">
|
|
||||||
<li class="uk-parent" data-uk-dropdown>
|
|
||||||
<?php
|
|
||||||
$profilePictureSrc = HTML_PATH_ADMIN_THEME_IMG.'default.jpg';
|
|
||||||
if(file_exists(PATH_UPLOADS_PROFILES.$Login->username().'.jpg')) {
|
|
||||||
$profilePictureSrc = HTML_PATH_UPLOADS_PROFILES.$Login->username().'.jpg';
|
|
||||||
}
|
|
||||||
?>
|
|
||||||
<a href="<?php echo HTML_PATH_ADMIN_ROOT.'edit-user/'.$Login->username() ?>">
|
|
||||||
<img class="uk-border-circle" width="28px" src="<?php echo $profilePictureSrc ?>" alt=""> <?php echo $Login->username() ?> ▾
|
|
||||||
</a>
|
|
||||||
<div class="uk-dropdown uk-dropdown-navbar">
|
|
||||||
<ul class="uk-nav uk-nav-navbar">
|
|
||||||
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'edit-user/'.$Login->username() ?>"><?php $L->p('Profile') ?></a></li>
|
|
||||||
<li class="uk-nav-divider"></li>
|
|
||||||
<li><a target="_blank" href="<?php echo HTML_PATH_ROOT ?>"><?php $L->p('Website') ?></a></li>
|
|
||||||
<li><a href="<?php echo HTML_PATH_ADMIN_ROOT.'logout' ?>"><?php $L->p('Logout') ?></a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- Navbar for Mobile -->
|
||||||
<a href="#offcanvas" class="uk-navbar-toggle uk-visible-small" data-uk-offcanvas></a>
|
<a href="#offcanvas" class="uk-navbar-toggle uk-visible-small" data-uk-offcanvas></a>
|
||||||
<div class="uk-navbar-brand uk-navbar-center uk-visible-small">Bludit</div>
|
<div class="uk-navbar-brand uk-navbar-center uk-visible-small">BLUDIT</div>
|
||||||
</div>
|
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<!-- Offcanvas -->
|
<!-- Offcanvas for Mobile -->
|
||||||
<div id="offcanvas" class="uk-offcanvas">
|
<div id="offcanvas" class="uk-offcanvas">
|
||||||
<div class="uk-offcanvas-bar">
|
<div class="uk-offcanvas-bar">
|
||||||
<ul class="uk-nav uk-nav-offcanvas">
|
<ul class="uk-nav uk-nav-offcanvas">
|
||||||
|
@ -147,7 +151,7 @@ $(document).ready(function() {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- View -->
|
<!-- View -->
|
||||||
<div class="uk-container uk-container-center">
|
<div class="uk-container uk-container-center bl-view">
|
||||||
<?php
|
<?php
|
||||||
if( Sanitize::pathFile(PATH_ADMIN_VIEWS, $layout['view'].'.php') ) {
|
if( Sanitize::pathFile(PATH_ADMIN_VIEWS, $layout['view'].'.php') ) {
|
||||||
include(PATH_ADMIN_VIEWS.$layout['view'].'.php');
|
include(PATH_ADMIN_VIEWS.$layout['view'].'.php');
|
||||||
|
@ -162,4 +166,4 @@ $(document).ready(function() {
|
||||||
<?php Theme::plugins('adminBodyEnd') ?>
|
<?php Theme::plugins('adminBodyEnd') ?>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -117,7 +117,9 @@ class HTML {
|
||||||
|
|
||||||
public static function legend($args)
|
public static function legend($args)
|
||||||
{
|
{
|
||||||
$html = '<legend>'.$args['value'].'</legend>';
|
$class = empty($args['class']) ? '' : 'class="'.$args['class'].'"';
|
||||||
|
|
||||||
|
$html = '<legend '.$class.'>'.$args['value'].'</legend>';
|
||||||
echo $html;
|
echo $html;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -267,4 +269,4 @@ class HTML {
|
||||||
echo $html;
|
echo $html;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
kernel/admin/themes/default/js/upload.min.js → kernel/admin/themes/default/js/uikit/upload.min.js
vendored
Normal file → Executable file
2
kernel/admin/themes/default/js/upload.min.js → kernel/admin/themes/default/js/uikit/upload.min.js
vendored
Normal file → Executable file
|
@ -1,2 +1,2 @@
|
||||||
/*! UIkit 2.23.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
/*! UIkit 2.24.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
||||||
!function(e){var t;window.UIkit&&(t=e(UIkit)),"function"==typeof define&&define.amd&&define("uikit-upload",["uikit"],function(){return t||e(UIkit)})}(function(e){"use strict";function t(o,a){function r(t,n){var o=new FormData,a=new XMLHttpRequest;if(n.before(n,t)!==!1){for(var r,i=0;r=t[i];i++)o.append(n.param,r);for(var l in n.params)o.append(l,n.params[l]);a.upload.addEventListener("progress",function(e){var t=e.loaded/e.total*100;n.progress(t,e)},!1),a.addEventListener("loadstart",function(e){n.loadstart(e)},!1),a.addEventListener("load",function(e){n.load(e)},!1),a.addEventListener("loadend",function(e){n.loadend(e)},!1),a.addEventListener("error",function(e){n.error(e)},!1),a.addEventListener("abort",function(e){n.abort(e)},!1),a.open(n.method,n.action,!0),"json"==n.type&&a.setRequestHeader("Accept","application/json"),a.onreadystatechange=function(){if(n.readystatechange(a),4==a.readyState){var t=a.responseText;if("json"==n.type)try{t=e.$.parseJSON(t)}catch(o){t=!1}n.complete(t,a)}},n.beforeSend(a),a.send(o)}}if(!e.support.ajaxupload)return this;if(a=e.$.extend({},t.defaults,a),o.length){if("*.*"!==a.allow)for(var i,l=0;i=o[l];l++)if(!n(a.allow,i.name))return"string"==typeof a.notallowed?alert(a.notallowed):a.notallowed(i,a),void 0;var s=a.complete;if(a.single){var d=o.length,f=0,p=!0;a.beforeAll(o),a.complete=function(e,t){f+=1,s(e,t),a.filelimit&&f>=a.filelimit&&(p=!1),p&&d>f?r([o[f]],a):a.allcomplete(e,t)},r([o[0]],a)}else a.complete=function(e,t){s(e,t),a.allcomplete(e,t)},r(o,a)}}function n(e,t){var n="^"+e.replace(/\//g,"\\/").replace(/\*\*/g,"(\\/[^\\/]+)*").replace(/\*/g,"[^\\/]+").replace(/((?!\\))\?/g,"$1.")+"$";return n="^"+n+"$",null!==t.match(new RegExp(n,"i"))}return e.component("uploadSelect",{init:function(){var e=this;this.on("change",function(){t(e.element[0].files,e.options);var n=e.element.clone(!0).data("uploadSelect",e);e.element.replaceWith(n),e.element=n})}}),e.component("uploadDrop",{defaults:{dragoverClass:"uk-dragover"},init:function(){var e=this,n=!1;this.on("drop",function(n){n.dataTransfer&&n.dataTransfer.files&&(n.stopPropagation(),n.preventDefault(),e.element.removeClass(e.options.dragoverClass),e.element.trigger("dropped.uk.upload",[n.dataTransfer.files]),t(n.dataTransfer.files,e.options))}).on("dragenter",function(e){e.stopPropagation(),e.preventDefault()}).on("dragover",function(t){t.stopPropagation(),t.preventDefault(),n||(e.element.addClass(e.options.dragoverClass),n=!0)}).on("dragleave",function(t){t.stopPropagation(),t.preventDefault(),e.element.removeClass(e.options.dragoverClass),n=!1})}}),e.support.ajaxupload=function(){function e(){var e=document.createElement("INPUT");return e.type="file","files"in e}function t(){var e=new XMLHttpRequest;return!!(e&&"upload"in e&&"onprogress"in e.upload)}function n(){return!!window.FormData}return e()&&t()&&n()}(),e.support.ajaxupload&&e.$.event.props.push("dataTransfer"),t.defaults={action:"",single:!0,method:"POST",param:"files[]",params:{},allow:"*.*",type:"text",filelimit:!1,before:function(){},beforeSend:function(){},beforeAll:function(){},loadstart:function(){},load:function(){},loadend:function(){},error:function(){},abort:function(){},progress:function(){},complete:function(){},allcomplete:function(){},readystatechange:function(){},notallowed:function(e,t){alert("Only the following file types are allowed: "+t.allow)}},e.Utils.xhrupload=t,t});
|
!function(e){var t;window.UIkit&&(t=e(UIkit)),"function"==typeof define&&define.amd&&define("uikit-upload",["uikit"],function(){return t||e(UIkit)})}(function(e){"use strict";function t(o,a){function r(t,n){var o=new FormData,a=new XMLHttpRequest;if(n.before(n,t)!==!1){for(var r,i=0;r=t[i];i++)o.append(n.param,r);for(var l in n.params)o.append(l,n.params[l]);a.upload.addEventListener("progress",function(e){var t=e.loaded/e.total*100;n.progress(t,e)},!1),a.addEventListener("loadstart",function(e){n.loadstart(e)},!1),a.addEventListener("load",function(e){n.load(e)},!1),a.addEventListener("loadend",function(e){n.loadend(e)},!1),a.addEventListener("error",function(e){n.error(e)},!1),a.addEventListener("abort",function(e){n.abort(e)},!1),a.open(n.method,n.action,!0),"json"==n.type&&a.setRequestHeader("Accept","application/json"),a.onreadystatechange=function(){if(n.readystatechange(a),4==a.readyState){var t=a.responseText;if("json"==n.type)try{t=e.$.parseJSON(t)}catch(o){t=!1}n.complete(t,a)}},n.beforeSend(a),a.send(o)}}if(!e.support.ajaxupload)return this;if(a=e.$.extend({},t.defaults,a),o.length){if("*.*"!==a.allow)for(var i,l=0;i=o[l];l++)if(!n(a.allow,i.name))return"string"==typeof a.notallowed?alert(a.notallowed):a.notallowed(i,a),void 0;var s=a.complete;if(a.single){var d=o.length,f=0,p=!0;a.beforeAll(o),a.complete=function(e,t){f+=1,s(e,t),a.filelimit&&f>=a.filelimit&&(p=!1),p&&d>f?r([o[f]],a):a.allcomplete(e,t)},r([o[0]],a)}else a.complete=function(e,t){s(e,t),a.allcomplete(e,t)},r(o,a)}}function n(e,t){var n="^"+e.replace(/\//g,"\\/").replace(/\*\*/g,"(\\/[^\\/]+)*").replace(/\*/g,"[^\\/]+").replace(/((?!\\))\?/g,"$1.")+"$";return n="^"+n+"$",null!==t.match(new RegExp(n,"i"))}return e.component("uploadSelect",{init:function(){var e=this;this.on("change",function(){t(e.element[0].files,e.options);var n=e.element.clone(!0).data("uploadSelect",e);e.element.replaceWith(n),e.element=n})}}),e.component("uploadDrop",{defaults:{dragoverClass:"uk-dragover"},init:function(){var e=this,n=!1;this.on("drop",function(n){n.dataTransfer&&n.dataTransfer.files&&(n.stopPropagation(),n.preventDefault(),e.element.removeClass(e.options.dragoverClass),e.element.trigger("dropped.uk.upload",[n.dataTransfer.files]),t(n.dataTransfer.files,e.options))}).on("dragenter",function(e){e.stopPropagation(),e.preventDefault()}).on("dragover",function(t){t.stopPropagation(),t.preventDefault(),n||(e.element.addClass(e.options.dragoverClass),n=!0)}).on("dragleave",function(t){t.stopPropagation(),t.preventDefault(),e.element.removeClass(e.options.dragoverClass),n=!1})}}),e.support.ajaxupload=function(){function e(){var e=document.createElement("INPUT");return e.type="file","files"in e}function t(){var e=new XMLHttpRequest;return!!(e&&"upload"in e&&"onprogress"in e.upload)}function n(){return!!window.FormData}return e()&&t()&&n()}(),e.support.ajaxupload&&e.$.event.props.push("dataTransfer"),t.defaults={action:"",single:!0,method:"POST",param:"files[]",params:{},allow:"*.*",type:"text",filelimit:!1,before:function(){},beforeSend:function(){},beforeAll:function(){},loadstart:function(){},load:function(){},loadend:function(){},error:function(){},abort:function(){},progress:function(){},complete:function(){},allcomplete:function(){},readystatechange:function(){},notallowed:function(e,t){alert("Only the following file types are allowed: "+t.allow)}},e.Utils.xhrupload=t,t});
|
|
@ -1,7 +1,6 @@
|
||||||
<!DOCTYPE HTML>
|
<!DOCTYPE HTML>
|
||||||
<html class="uk-height-1-1 uk-notouch">
|
<html class="uk-height-1-1 uk-notouch">
|
||||||
<head>
|
<head>
|
||||||
<base href="<?php echo HTML_PATH_ADMIN_THEME ?>">
|
|
||||||
<meta charset="<?php echo CHARSET ?>">
|
<meta charset="<?php echo CHARSET ?>">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta name="robots" content="noindex,nofollow">
|
<meta name="robots" content="noindex,nofollow">
|
||||||
|
@ -9,15 +8,15 @@
|
||||||
<title>Bludit</title>
|
<title>Bludit</title>
|
||||||
|
|
||||||
<!-- Favicon -->
|
<!-- Favicon -->
|
||||||
<link rel="shortcut icon" type="image/x-icon" href="./img/favicon.png">
|
<link rel="shortcut icon" type="image/x-icon" href="<?php echo HTML_PATH_ADMIN_THEME.'img/favicon.png' ?>">
|
||||||
|
|
||||||
<!-- CSS -->
|
<!-- CSS -->
|
||||||
<link rel="stylesheet" type="text/css" href="./css/uikit.almost-flat.min.css?version=<?php echo BLUDIT_VERSION ?>">
|
<link rel="stylesheet" type="text/css" href="<?php echo HTML_PATH_ADMIN_THEME.'css/uikit/uikit.almost-flat.min.css?version='.BLUDIT_VERSION ?>">
|
||||||
<link rel="stylesheet" type="text/css" href="./css/login.css?version=<?php echo BLUDIT_VERSION ?>">
|
<link rel="stylesheet" type="text/css" href="<?php echo HTML_PATH_ADMIN_THEME.'css/login.css?version='.BLUDIT_VERSION ?>">
|
||||||
|
|
||||||
<!-- Javascript -->
|
<!-- Javascript -->
|
||||||
<script charset="utf-8" src="./js/jquery.min.js?version=<?php echo BLUDIT_VERSION ?>"></script>
|
<script charset="utf-8" src="<?php echo HTML_PATH_ADMIN_THEME.'js/jquery.min.js?version='.BLUDIT_VERSION ?>"></script>
|
||||||
<script charset="utf-8" src="./js/uikit.min.js?version=<?php echo BLUDIT_VERSION ?>"></script>
|
<script charset="utf-8" src="<?php echo HTML_PATH_ADMIN_THEME.'js/uikit/uikit.min.js?version='.BLUDIT_VERSION ?>"></script>
|
||||||
|
|
||||||
<!-- Plugins -->
|
<!-- Plugins -->
|
||||||
<?php Theme::plugins('loginHead') ?>
|
<?php Theme::plugins('loginHead') ?>
|
||||||
|
@ -46,4 +45,4 @@
|
||||||
<?php Theme::plugins('loginBodyEnd') ?>
|
<?php Theme::plugins('loginBodyEnd') ?>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -31,4 +31,4 @@ echo '
|
||||||
echo '
|
echo '
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
';
|
';
|
||||||
|
|
|
@ -7,7 +7,7 @@ HTML::formOpen(array('id'=>'add-user-form', 'class'=>'uk-form-horizontal'));
|
||||||
// Security token
|
// Security token
|
||||||
HTML::formInputHidden(array(
|
HTML::formInputHidden(array(
|
||||||
'name'=>'tokenCSRF',
|
'name'=>'tokenCSRF',
|
||||||
'value'=>$Security->getToken()
|
'value'=>$Security->getTokenCSRF()
|
||||||
));
|
));
|
||||||
|
|
||||||
HTML::formInputText(array(
|
HTML::formInputText(array(
|
||||||
|
@ -57,4 +57,4 @@ HTML::formOpen(array('id'=>'add-user-form', 'class'=>'uk-form-horizontal'));
|
||||||
</div>
|
</div>
|
||||||
</div>';
|
</div>';
|
||||||
|
|
||||||
HTML::formClose();
|
HTML::formClose();
|
||||||
|
|
|
@ -7,7 +7,7 @@ HTML::formOpen(array('id'=>'jsformplugin'));
|
||||||
// Security token
|
// Security token
|
||||||
HTML::formInputHidden(array(
|
HTML::formInputHidden(array(
|
||||||
'name'=>'tokenCSRF',
|
'name'=>'tokenCSRF',
|
||||||
'value'=>$Security->getToken()
|
'value'=>$Security->getTokenCSRF()
|
||||||
));
|
));
|
||||||
|
|
||||||
// Print the plugin form
|
// Print the plugin form
|
||||||
|
@ -19,4 +19,4 @@ HTML::formOpen(array('id'=>'jsformplugin'));
|
||||||
<a class="uk-button" href="'.HTML_PATH_ADMIN_ROOT.'plugins">'.$L->g('Cancel').'</a>
|
<a class="uk-button" href="'.HTML_PATH_ADMIN_ROOT.'plugins">'.$L->g('Cancel').'</a>
|
||||||
</div>';
|
</div>';
|
||||||
|
|
||||||
HTML::formClose();
|
HTML::formClose();
|
||||||
|
|
|
@ -119,7 +119,7 @@
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
foreach($_scheduledPosts as $Post) {
|
foreach($_scheduledPosts as $Post) {
|
||||||
echo '<li><span class="label-time">'.$Post->date(SCHEDULED_DATE_FORMAT).'</span><a href="'.HTML_PATH_ADMIN_ROOT.'edit-post/'.$Post->key().'">'.($Post->title()?$Post->title():'['.$Language->g('Empty title').'] ').'</a></li>';
|
echo '<li><span class="label-time">'.$Post->dateRaw(SCHEDULED_DATE_FORMAT).'</span><a href="'.HTML_PATH_ADMIN_ROOT.'edit-post/'.$Post->key().'">'.($Post->title()?$Post->title():'['.$Language->g('Empty title').'] ').'</a></li>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
@ -128,4 +128,4 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -7,7 +7,7 @@ HTML::formOpen(array('class'=>'uk-form-stacked'));
|
||||||
// Security token
|
// Security token
|
||||||
HTML::formInputHidden(array(
|
HTML::formInputHidden(array(
|
||||||
'name'=>'tokenCSRF',
|
'name'=>'tokenCSRF',
|
||||||
'value'=>$Security->getToken()
|
'value'=>$Security->getTokenCSRF()
|
||||||
));
|
));
|
||||||
|
|
||||||
// Key input
|
// Key input
|
||||||
|
@ -195,4 +195,4 @@ $(document).ready(function()
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -7,7 +7,7 @@ HTML::formOpen(array('class'=>'uk-form-stacked'));
|
||||||
// Security token
|
// Security token
|
||||||
HTML::formInputHidden(array(
|
HTML::formInputHidden(array(
|
||||||
'name'=>'tokenCSRF',
|
'name'=>'tokenCSRF',
|
||||||
'value'=>$Security->getToken()
|
'value'=>$Security->getTokenCSRF()
|
||||||
));
|
));
|
||||||
|
|
||||||
// Key input
|
// Key input
|
||||||
|
@ -94,7 +94,7 @@ echo '<div class="uk-width-large-3-10">';
|
||||||
// Date input
|
// Date input
|
||||||
HTML::formInputText(array(
|
HTML::formInputText(array(
|
||||||
'name'=>'date',
|
'name'=>'date',
|
||||||
'value'=>$_Post->date(),
|
'value'=>$_Post->dateRaw(),
|
||||||
'class'=>'uk-width-1-1 uk-form-large',
|
'class'=>'uk-width-1-1 uk-form-large',
|
||||||
'tip'=>$L->g('To schedule the post just select the date and time'),
|
'tip'=>$L->g('To schedule the post just select the date and time'),
|
||||||
'label'=>$L->g('Date')
|
'label'=>$L->g('Date')
|
||||||
|
@ -155,4 +155,4 @@ $(document).ready(function() {
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -10,7 +10,7 @@ HTML::formOpen(array('id'=>'edit-user-profile-form','class'=>'uk-form-horizontal
|
||||||
// Security token
|
// Security token
|
||||||
HTML::formInputHidden(array(
|
HTML::formInputHidden(array(
|
||||||
'name'=>'tokenCSRF',
|
'name'=>'tokenCSRF',
|
||||||
'value'=>$Security->getToken()
|
'value'=>$Security->getTokenCSRF()
|
||||||
));
|
));
|
||||||
|
|
||||||
// Security token
|
// Security token
|
||||||
|
@ -19,7 +19,7 @@ HTML::formOpen(array('id'=>'edit-user-profile-form','class'=>'uk-form-horizontal
|
||||||
'value'=>$_user['username']
|
'value'=>$_user['username']
|
||||||
));
|
));
|
||||||
|
|
||||||
HTML::legend(array('value'=>$L->g('Profile')));
|
HTML::legend(array('value'=>$L->g('Profile'), 'class'=>'first-child'));
|
||||||
|
|
||||||
HTML::formInputText(array(
|
HTML::formInputText(array(
|
||||||
'name'=>'usernameDisable',
|
'name'=>'usernameDisable',
|
||||||
|
@ -122,4 +122,4 @@ $(document).ready(function() {
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
<form method="post" action="" class="uk-form" autocomplete="off">
|
<form method="post" action="" class="uk-form" autocomplete="off">
|
||||||
|
|
||||||
<input type="hidden" id="jstoken" name="tokenCSRF" value="<?php $Security->printToken() ?>">
|
<input type="hidden" id="jstoken" name="tokenCSRF" value="<?php $Security->printTokenCSRF() ?>">
|
||||||
|
|
||||||
<div class="uk-form-row">
|
<div class="uk-form-row">
|
||||||
<input name="email" class="uk-width-1-1 uk-form-large" placeholder="<?php $L->p('Email') ?>" type="text">
|
<input name="email" class="uk-width-1-1 uk-form-large" placeholder="<?php $L->p('Email') ?>" type="text">
|
||||||
|
@ -16,4 +16,4 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<a class="login-email" href="<?php echo HTML_PATH_ADMIN_ROOT.'login' ?>"><i class="uk-icon-chevron-left"></i> <?php $L->p('Back to login form') ?></a>
|
<a class="login-email" href="<?php echo HTML_PATH_ADMIN_ROOT.'login' ?>"><i class="uk-icon-chevron-left"></i> <?php $L->p('Back to login form') ?></a>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
<form method="post" action="" class="uk-form" autocomplete="off">
|
<form method="post" action="" class="uk-form" autocomplete="off">
|
||||||
|
|
||||||
<input type="hidden" id="jstoken" name="tokenCSRF" value="<?php $Security->printToken() ?>">
|
<input type="hidden" id="jstoken" name="tokenCSRF" value="<?php $Security->printTokenCSRF() ?>">
|
||||||
|
|
||||||
<div class="uk-form-row">
|
<div class="uk-form-row">
|
||||||
<input name="username" class="uk-width-1-1 uk-form-large" placeholder="<?php $L->p('Username') ?>" type="text">
|
<input name="username" class="uk-width-1-1 uk-form-large" placeholder="<?php $L->p('Username') ?>" type="text">
|
||||||
|
@ -20,4 +20,4 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<a class="login-email" href="<?php echo HTML_PATH_ADMIN_ROOT.'login-email' ?>"><i class="uk-icon-envelope-o"></i> <?php $L->p('Send me a login access code') ?></a>
|
<a class="login-email" href="<?php echo HTML_PATH_ADMIN_ROOT.'login-email' ?>"><i class="uk-icon-envelope-o"></i> <?php $L->p('Send me a login access code') ?></a>
|
||||||
|
|
|
@ -38,4 +38,4 @@ echo '
|
||||||
echo '
|
echo '
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
';
|
';
|
||||||
|
|
|
@ -52,4 +52,4 @@ echo '
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -7,7 +7,7 @@ HTML::formOpen(array('class'=>'uk-form-stacked'));
|
||||||
// Security token
|
// Security token
|
||||||
HTML::formInputHidden(array(
|
HTML::formInputHidden(array(
|
||||||
'name'=>'tokenCSRF',
|
'name'=>'tokenCSRF',
|
||||||
'value'=>$Security->getToken()
|
'value'=>$Security->getTokenCSRF()
|
||||||
));
|
));
|
||||||
|
|
||||||
// ---- LEFT SIDE ----
|
// ---- LEFT SIDE ----
|
||||||
|
@ -170,4 +170,4 @@ $(document).ready(function()
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -7,7 +7,7 @@ HTML::formOpen(array('class'=>'uk-form-stacked'));
|
||||||
// Security token
|
// Security token
|
||||||
HTML::formInputHidden(array(
|
HTML::formInputHidden(array(
|
||||||
'name'=>'tokenCSRF',
|
'name'=>'tokenCSRF',
|
||||||
'value'=>$Security->getToken()
|
'value'=>$Security->getTokenCSRF()
|
||||||
));
|
));
|
||||||
|
|
||||||
// ---- LEFT SIDE ----
|
// ---- LEFT SIDE ----
|
||||||
|
@ -140,4 +140,4 @@ $(document).ready(function() {
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -15,36 +15,36 @@ echo '
|
||||||
<tbody>
|
<tbody>
|
||||||
';
|
';
|
||||||
|
|
||||||
foreach($plugins['all'] as $Plugin)
|
foreach($plugins['all'] as $Plugin)
|
||||||
{
|
{
|
||||||
echo '
|
echo '
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<div class="plugin-name">'.$Plugin->name().'</div>
|
<div class="plugin-name">'.$Plugin->name().'</div>
|
||||||
<div class="plugin-links">
|
<div class="plugin-links">
|
||||||
';
|
';
|
||||||
|
|
||||||
if($Plugin->installed()) {
|
if($Plugin->installed()) {
|
||||||
if(method_exists($Plugin, 'form')) {
|
if(method_exists($Plugin, 'form')) {
|
||||||
echo '<a class="configure" href="'.HTML_PATH_ADMIN_ROOT.'configure-plugin/'.$Plugin->className().'">'.$L->g('Configure').'</a>';
|
echo '<a class="configure" href="'.HTML_PATH_ADMIN_ROOT.'configure-plugin/'.$Plugin->className().'">'.$L->g('Configure').'</a>';
|
||||||
echo '<span class="separator"> | </span>';
|
echo '<span class="separator"> | </span>';
|
||||||
}
|
|
||||||
echo '<a class="uninstall" href="'.HTML_PATH_ADMIN_ROOT.'uninstall-plugin/'.$Plugin->className().'">'.$L->g('Uninstall').'</a>';
|
|
||||||
}
|
}
|
||||||
else {
|
echo '<a class="uninstall" href="'.HTML_PATH_ADMIN_ROOT.'uninstall-plugin/'.$Plugin->className().'">'.$L->g('Deactivate').'</a>';
|
||||||
echo '<a class="install" href="'.HTML_PATH_ADMIN_ROOT.'install-plugin/'.$Plugin->className().'">'.$L->g('Install').'</a>';
|
|
||||||
}
|
|
||||||
|
|
||||||
echo '
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td>'.$Plugin->description().'</td>
|
|
||||||
<td class="uk-text-center">'.$Plugin->version().'</td>
|
|
||||||
<td class="uk-text-center"><a targe="_blank" href="'.$Plugin->website().'">'.$Plugin->author().'</a></td>
|
|
||||||
';
|
|
||||||
|
|
||||||
echo '</tr>';
|
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
echo '<a class="install" href="'.HTML_PATH_ADMIN_ROOT.'install-plugin/'.$Plugin->className().'">'.$L->g('Activate').'</a>';
|
||||||
|
}
|
||||||
|
|
||||||
|
echo '
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td>'.$Plugin->description().'</td>
|
||||||
|
<td class="uk-text-center">'.$Plugin->version().'</td>
|
||||||
|
<td class="uk-text-center"><a targe="_blank" href="'.$Plugin->website().'">'.$Plugin->author().'</a></td>
|
||||||
|
';
|
||||||
|
|
||||||
|
echo '</tr>';
|
||||||
|
}
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
</tbody>
|
</tbody>
|
||||||
|
|
|
@ -6,9 +6,11 @@ HTML::formOpen(array('class'=>'uk-form-horizontal'));
|
||||||
|
|
||||||
HTML::formInputHidden(array(
|
HTML::formInputHidden(array(
|
||||||
'name'=>'tokenCSRF',
|
'name'=>'tokenCSRF',
|
||||||
'value'=>$Security->getToken()
|
'value'=>$Security->getTokenCSRF()
|
||||||
));
|
));
|
||||||
|
|
||||||
|
HTML::legend(array('value'=>$L->g('General'), 'class'=>'first-child'));
|
||||||
|
|
||||||
HTML::formSelect(array(
|
HTML::formSelect(array(
|
||||||
'name'=>'postsperpage',
|
'name'=>'postsperpage',
|
||||||
'label'=>$L->g('Posts per page'),
|
'label'=>$L->g('Posts per page'),
|
||||||
|
|
|
@ -7,9 +7,11 @@ HTML::formOpen(array('class'=>'uk-form-horizontal'));
|
||||||
// Security token
|
// Security token
|
||||||
HTML::formInputHidden(array(
|
HTML::formInputHidden(array(
|
||||||
'name'=>'tokenCSRF',
|
'name'=>'tokenCSRF',
|
||||||
'value'=>$Security->getToken()
|
'value'=>$Security->getTokenCSRF()
|
||||||
));
|
));
|
||||||
|
|
||||||
|
HTML::legend(array('value'=>$L->g('Site information'), 'class'=>'first-child'));
|
||||||
|
|
||||||
HTML::formInputText(array(
|
HTML::formInputText(array(
|
||||||
'name'=>'title',
|
'name'=>'title',
|
||||||
'label'=>$L->g('Site title'),
|
'label'=>$L->g('Site title'),
|
||||||
|
@ -48,4 +50,4 @@ HTML::formOpen(array('class'=>'uk-form-horizontal'));
|
||||||
</div>
|
</div>
|
||||||
</div>';
|
</div>';
|
||||||
|
|
||||||
HTML::formClose();
|
HTML::formClose();
|
||||||
|
|
|
@ -6,9 +6,11 @@ HTML::formOpen(array('class'=>'uk-form-horizontal'));
|
||||||
|
|
||||||
HTML::formInputHidden(array(
|
HTML::formInputHidden(array(
|
||||||
'name'=>'tokenCSRF',
|
'name'=>'tokenCSRF',
|
||||||
'value'=>$Security->getToken()
|
'value'=>$Security->getTokenCSRF()
|
||||||
));
|
));
|
||||||
|
|
||||||
|
HTML::legend(array('value'=>$L->g('General'), 'class'=>'first-child'));
|
||||||
|
|
||||||
HTML::formSelect(array(
|
HTML::formSelect(array(
|
||||||
'name'=>'language',
|
'name'=>'language',
|
||||||
'label'=>$L->g('Language'),
|
'label'=>$L->g('Language'),
|
||||||
|
@ -35,6 +37,8 @@ HTML::formOpen(array('class'=>'uk-form-horizontal'));
|
||||||
'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-off')
|
||||||
));
|
));
|
||||||
|
|
||||||
|
HTML::legend(array('value'=>$L->g('Date and time formats')));
|
||||||
|
|
||||||
HTML::formInputText(array(
|
HTML::formInputText(array(
|
||||||
'name'=>'dateFormat',
|
'name'=>'dateFormat',
|
||||||
'label'=>$L->g('Date format'),
|
'label'=>$L->g('Date format'),
|
||||||
|
@ -63,4 +67,4 @@ $(document).ready(function() {
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -15,30 +15,30 @@ echo '
|
||||||
<tbody>
|
<tbody>
|
||||||
';
|
';
|
||||||
|
|
||||||
foreach($themes as $theme)
|
foreach($themes as $theme)
|
||||||
{
|
{
|
||||||
echo '
|
echo '
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<div class="plugin-name">'.$theme['name'].'</div>
|
<div class="plugin-name">'.$theme['name'].'</div>
|
||||||
<div class="plugin-links">
|
<div class="plugin-links">
|
||||||
';
|
';
|
||||||
|
|
||||||
if($theme['dirname']!=$Site->theme()) {
|
if($theme['dirname']!=$Site->theme()) {
|
||||||
echo '<a class="install" href="'.HTML_PATH_ADMIN_ROOT.'install-theme/'.$theme['dirname'].'">'.$L->g('Install').'</a>';
|
echo '<a class="install" href="'.HTML_PATH_ADMIN_ROOT.'install-theme/'.$theme['dirname'].'">'.$L->g('Activate').'</a>';
|
||||||
}
|
|
||||||
|
|
||||||
echo '
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td>'.$theme['description'].'</td>
|
|
||||||
<td class="uk-text-center">'.$theme['version'].'</td>
|
|
||||||
<td class="uk-text-center"><a targe="_blank" href="'.$theme['website'].'">'.$theme['author'].'</a></td>
|
|
||||||
';
|
|
||||||
|
|
||||||
echo '</tr>';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
echo '
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td>'.$theme['description'].'</td>
|
||||||
|
<td class="uk-text-center">'.$theme['version'].'</td>
|
||||||
|
<td class="uk-text-center"><a targe="_blank" href="'.$theme['website'].'">'.$theme['author'].'</a></td>
|
||||||
|
';
|
||||||
|
|
||||||
|
echo '</tr>';
|
||||||
|
}
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
|
@ -7,7 +7,7 @@ HTML::formOpen(array('id'=>'edit-user-profile-form','class'=>'uk-form-horizontal
|
||||||
// Security token
|
// Security token
|
||||||
HTML::formInputHidden(array(
|
HTML::formInputHidden(array(
|
||||||
'name'=>'tokenCSRF',
|
'name'=>'tokenCSRF',
|
||||||
'value'=>$Security->getToken()
|
'value'=>$Security->getTokenCSRF()
|
||||||
));
|
));
|
||||||
|
|
||||||
// Hidden field username
|
// Hidden field username
|
||||||
|
@ -52,4 +52,4 @@ HTML::formOpen(array('id'=>'edit-user-profile-form','class'=>'uk-form-horizontal
|
||||||
|
|
||||||
HTML::formClose();
|
HTML::formClose();
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -35,4 +35,4 @@ foreach($users as $username=>$field)
|
||||||
echo '
|
echo '
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
';
|
';
|
||||||
|
|
|
@ -23,4 +23,4 @@ elseif( $_POST['type']==='post' ) {
|
||||||
|
|
||||||
echo json_encode( array('slug'=>$slug) );
|
echo json_encode( array('slug'=>$slug) );
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -58,4 +58,4 @@ exit(json_encode(array(
|
||||||
'filename'=>$tmpName
|
'filename'=>$tmpName
|
||||||
)));
|
)));
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -15,7 +15,7 @@ $layout['controller'] = $layout['view'] = $layout['slug'] = $explodeSlug[0];
|
||||||
unset($explodeSlug[0]);
|
unset($explodeSlug[0]);
|
||||||
$layout['parameters'] = implode('/', $explodeSlug);
|
$layout['parameters'] = implode('/', $explodeSlug);
|
||||||
|
|
||||||
// Disable Magic Quotes
|
// Disable Magic Quotes.
|
||||||
// Thanks, http://stackoverflow.com/questions/517008/how-to-turn-off-magic-quotes-on-shared-hosting
|
// Thanks, http://stackoverflow.com/questions/517008/how-to-turn-off-magic-quotes-on-shared-hosting
|
||||||
if ( in_array( strtolower( ini_get( 'magic_quotes_gpc' ) ), array( '1', 'on' ) ) )
|
if ( in_array( strtolower( ini_get( 'magic_quotes_gpc' ) ), array( '1', 'on' ) ) )
|
||||||
{
|
{
|
||||||
|
@ -24,18 +24,19 @@ if ( in_array( strtolower( ini_get( 'magic_quotes_gpc' ) ), array( '1', 'on' ) )
|
||||||
$_COOKIE = array_map('stripslashes', $_COOKIE);
|
$_COOKIE = array_map('stripslashes', $_COOKIE);
|
||||||
}
|
}
|
||||||
|
|
||||||
// AJAX
|
// --- AJAX ---
|
||||||
if( $layout['slug']==='ajax' )
|
if( $layout['slug']==='ajax' )
|
||||||
{
|
{
|
||||||
|
// Check if the user is loggued.
|
||||||
if($Login->isLogged())
|
if($Login->isLogged())
|
||||||
{
|
{
|
||||||
// Load AJAX file
|
// Load the ajax file.
|
||||||
if( Sanitize::pathFile(PATH_AJAX, $layout['parameters'].'.php') ) {
|
if( Sanitize::pathFile(PATH_AJAX, $layout['parameters'].'.php') ) {
|
||||||
include(PATH_AJAX.$layout['parameters'].'.php');
|
include(PATH_AJAX.$layout['parameters'].'.php');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// ADMIN AREA
|
// --- ADMIN AREA ---
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Boot rules
|
// Boot rules
|
||||||
|
@ -47,6 +48,10 @@ else
|
||||||
include(PATH_RULES.'99.themes.php');
|
include(PATH_RULES.'99.themes.php');
|
||||||
include(PATH_RULES.'99.security.php');
|
include(PATH_RULES.'99.security.php');
|
||||||
|
|
||||||
|
// Page not found.
|
||||||
|
// User not logged.
|
||||||
|
// Slug is login.
|
||||||
|
// Slug is login-email.
|
||||||
if($Url->notFound() || !$Login->isLogged() || ($Url->slug()==='login') || ($Url->slug()==='login-email') )
|
if($Url->notFound() || !$Login->isLogged() || ($Url->slug()==='login') || ($Url->slug()==='login-email') )
|
||||||
{
|
{
|
||||||
$layout['controller'] = 'login';
|
$layout['controller'] = 'login';
|
||||||
|
@ -59,28 +64,29 @@ else
|
||||||
$layout['view'] = 'login-email';
|
$layout['view'] = 'login-email';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Generate the token for the user not logged, when the user is loggued the token will be change.
|
// Generate the tokenCSRF for the user not logged, when the user log-in the token will be change.
|
||||||
$Security->generateToken();
|
$Security->generateTokenCSRF();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Plugins before admin area loaded
|
// Load plugins before the admin area will be load.
|
||||||
Theme::plugins('beforeAdminLoad');
|
Theme::plugins('beforeAdminLoad');
|
||||||
|
|
||||||
// Admin theme init.php
|
// Load init.php if the theme has one.
|
||||||
if( Sanitize::pathFile(PATH_ADMIN_THEMES, $Site->adminTheme().DS.'init.php') ) {
|
if( Sanitize::pathFile(PATH_ADMIN_THEMES, $Site->adminTheme().DS.'init.php') ) {
|
||||||
include(PATH_ADMIN_THEMES.$Site->adminTheme().DS.'init.php');
|
include(PATH_ADMIN_THEMES.$Site->adminTheme().DS.'init.php');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Load controller
|
// Load controller.
|
||||||
if( Sanitize::pathFile(PATH_ADMIN_CONTROLLERS, $layout['controller'].'.php') ) {
|
if( Sanitize::pathFile(PATH_ADMIN_CONTROLLERS, $layout['controller'].'.php') ) {
|
||||||
include(PATH_ADMIN_CONTROLLERS.$layout['controller'].'.php');
|
include(PATH_ADMIN_CONTROLLERS.$layout['controller'].'.php');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Load view and theme
|
// Load view and theme.
|
||||||
if( Sanitize::pathFile(PATH_ADMIN_THEMES, $Site->adminTheme().DS.$layout['template']) ) {
|
if( Sanitize::pathFile(PATH_ADMIN_THEMES, $Site->adminTheme().DS.$layout['template']) ) {
|
||||||
include(PATH_ADMIN_THEMES.$Site->adminTheme().DS.$layout['template']);
|
include(PATH_ADMIN_THEMES.$Site->adminTheme().DS.$layout['template']);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Plugins after admin area loaded
|
// Load plugins after the admin area is loaded.
|
||||||
Theme::plugins('afterAdminLoad');
|
Theme::plugins('afterAdminLoad');
|
||||||
}
|
|
||||||
|
}
|
||||||
|
|
|
@ -194,11 +194,10 @@ define('PATH_THEME_JS', PATH_THEME.'js'.DS);
|
||||||
define('PATH_THEME_IMG', PATH_THEME.'img'.DS);
|
define('PATH_THEME_IMG', PATH_THEME.'img'.DS);
|
||||||
define('PATH_THEME_LANG', PATH_THEME.'languages'.DS);
|
define('PATH_THEME_LANG', PATH_THEME.'languages'.DS);
|
||||||
|
|
||||||
// Objects with dependency
|
// --- Objects with dependency ---
|
||||||
$Language = new dbLanguage( $Site->locale() );
|
$Language = new dbLanguage( $Site->locale() );
|
||||||
$Login = new Login( $dbUsers );
|
$Login = new Login( $dbUsers );
|
||||||
|
|
||||||
$Url->checkFilters( $Site->uriFilters() );
|
$Url->checkFilters( $Site->uriFilters() );
|
||||||
|
|
||||||
// Objects shortcuts
|
// --- Objects shortcuts ---
|
||||||
$L = $Language;
|
$L = $Language;
|
||||||
|
|
|
@ -28,6 +28,7 @@ function build_page($key)
|
||||||
global $dbPages;
|
global $dbPages;
|
||||||
global $dbUsers;
|
global $dbUsers;
|
||||||
global $Parsedown;
|
global $Parsedown;
|
||||||
|
global $Site;
|
||||||
|
|
||||||
// Page object, content from FILE.
|
// Page object, content from FILE.
|
||||||
$Page = new Page($key);
|
$Page = new Page($key);
|
||||||
|
@ -58,6 +59,13 @@ function build_page($key)
|
||||||
$content = Text::imgRel2Abs($content, HTML_PATH_UPLOADS); // Parse img src relative to absolute.
|
$content = Text::imgRel2Abs($content, HTML_PATH_UPLOADS); // Parse img src relative to absolute.
|
||||||
$Page->setField('content', $content, true);
|
$Page->setField('content', $content, true);
|
||||||
|
|
||||||
|
// Date format
|
||||||
|
$pageDate = $Page->date();
|
||||||
|
$Page->setField('dateRaw', $pageDate, true);
|
||||||
|
|
||||||
|
$pageDateFormated = $Page->dateRaw( $Site->dateFormat() );
|
||||||
|
$Page->setField('date', $pageDateFormated, true);
|
||||||
|
|
||||||
// Parse username for the page.
|
// Parse username for the page.
|
||||||
if( $dbUsers->userExists( $Page->username() ) )
|
if( $dbUsers->userExists( $Page->username() ) )
|
||||||
{
|
{
|
||||||
|
|
|
@ -172,4 +172,4 @@ else
|
||||||
else {
|
else {
|
||||||
buildPostsForPage($Url->pageNumber(), $Site->postsPerPage(), true);
|
buildPostsForPage($Url->pageNumber(), $Site->postsPerPage(), true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,29 +63,31 @@ function build_plugins()
|
||||||
{
|
{
|
||||||
$Plugin = new $pluginClass;
|
$Plugin = new $pluginClass;
|
||||||
|
|
||||||
// Set Plugin data
|
// Default language and meta data for the plugin
|
||||||
|
$tmpMetaData = array();
|
||||||
|
$languageFilename = PATH_PLUGINS.$Plugin->directoryName().DS.'languages'.DS.'en_US.json';
|
||||||
|
$database = new dbJSON($languageFilename, false);
|
||||||
|
$tmpMetaData = $database->db['plugin-data'];
|
||||||
|
|
||||||
|
// Check if the plugin is translated.
|
||||||
$languageFilename = PATH_PLUGINS.$Plugin->directoryName().DS.'languages'.DS.$Site->locale().'.json';
|
$languageFilename = PATH_PLUGINS.$Plugin->directoryName().DS.'languages'.DS.$Site->locale().'.json';
|
||||||
if( Sanitize::pathFile($languageFilename) )
|
if( Sanitize::pathFile($languageFilename) )
|
||||||
{
|
{
|
||||||
$database = new dbJSON($languageFilename, false);
|
$database = new dbJSON($languageFilename, false);
|
||||||
}
|
$tmpMetaData = array_merge($tmpMetaData, $database->db['plugin-data']);
|
||||||
else
|
|
||||||
{
|
|
||||||
$languageFilename = PATH_PLUGINS.$Plugin->directoryName().DS.'languages'.DS.'en_US.json';
|
|
||||||
$database = new dbJSON($languageFilename, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$databaseArray = $database->db;
|
// Set plugin meta data
|
||||||
$Plugin->setData( $databaseArray['plugin-data'] );
|
$Plugin->setData($tmpMetaData);
|
||||||
|
|
||||||
// Add words to language dictionary.
|
// Add words to language dictionary.
|
||||||
unset($databaseArray['plugin-data']);
|
unset($database->db['plugin-data']);
|
||||||
$Language->add($databaseArray);
|
$Language->add($database->db);
|
||||||
|
|
||||||
// Push Plugin to array all plugins installed and not installed.
|
// Push Plugin to array all plugins installed and not installed.
|
||||||
$plugins['all'][$pluginClass] = $Plugin;
|
$plugins['all'][$pluginClass] = $Plugin;
|
||||||
|
|
||||||
// If the plugin installed
|
// If the plugin is installed, order by hooks.
|
||||||
if($Plugin->installed())
|
if($Plugin->installed())
|
||||||
{
|
{
|
||||||
foreach($pluginsEvents as $event=>$value)
|
foreach($pluginsEvents as $event=>$value)
|
||||||
|
|
|
@ -20,9 +20,9 @@ if( $_SERVER['REQUEST_METHOD'] == 'POST' )
|
||||||
{
|
{
|
||||||
$token = isset($_POST['tokenCSRF']) ? Sanitize::html($_POST['tokenCSRF']) : false;
|
$token = isset($_POST['tokenCSRF']) ? Sanitize::html($_POST['tokenCSRF']) : false;
|
||||||
|
|
||||||
if( !$Security->validateToken($token) )
|
if( !$Security->validateTokenCSRF($token) )
|
||||||
{
|
{
|
||||||
Log::set(__METHOD__.LOG_SEP.'Error occurred when trying validate the tokenCSRF. Token CSRF ID: '.$token);
|
Log::set(__FILE__.LOG_SEP.'Error occurred when trying to validate the tokenCSRF. Token CSRF ID: '.$token);
|
||||||
|
|
||||||
// Destroy the session.
|
// Destroy the session.
|
||||||
Session::destroy();
|
Session::destroy();
|
||||||
|
@ -38,4 +38,4 @@ if( $_SERVER['REQUEST_METHOD'] == 'POST' )
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// Main after POST
|
// Main after POST
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|
|
@ -26,25 +26,27 @@ $langLocaleFile = PATH_THEME.'languages'.DS.$Site->locale().'.json';
|
||||||
$langDefaultFile = PATH_THEME.'languages'.DS.'en_US.json';
|
$langDefaultFile = PATH_THEME.'languages'.DS.'en_US.json';
|
||||||
$database = false;
|
$database = false;
|
||||||
|
|
||||||
|
// Theme meta data from English
|
||||||
|
if( Sanitize::pathFile($langDefaultFile) ) {
|
||||||
|
$database = new dbJSON($langDefaultFile, false);
|
||||||
|
$themeMetaData = $database->db['theme-data'];
|
||||||
|
}
|
||||||
|
|
||||||
// Check if exists locale language
|
// Check if exists locale language
|
||||||
if( Sanitize::pathFile($langLocaleFile) ) {
|
if( Sanitize::pathFile($langLocaleFile) ) {
|
||||||
$database = new dbJSON($langLocaleFile, false);
|
$database = new dbJSON($langLocaleFile, false);
|
||||||
}
|
}
|
||||||
// Check if exists default language
|
|
||||||
elseif( Sanitize::pathFile($langDefaultFile) ) {
|
|
||||||
$database = new dbJSON($langDefaultFile, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
if($database!==false)
|
if($database!==false)
|
||||||
{
|
{
|
||||||
$databaseArray = $database->db;
|
$databaseArray = $database->db;
|
||||||
|
|
||||||
// Theme data
|
// Theme data
|
||||||
$theme = $databaseArray['theme-data'];
|
$theme = $themeMetaData;
|
||||||
|
|
||||||
// Remove theme data
|
// Remove theme meta data
|
||||||
unset($databaseArray['theme-data']);
|
unset($databaseArray['theme-data']);
|
||||||
|
|
||||||
// Add new words from language theme
|
// Add new words/phrase from language theme
|
||||||
$Language->add($databaseArray);
|
$Language->add($databaseArray);
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,4 +25,4 @@ else {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Plugins after site loaded
|
// Plugins after site loaded
|
||||||
Theme::plugins('afterSiteLoad');
|
Theme::plugins('afterSiteLoad');
|
||||||
|
|
|
@ -106,4 +106,4 @@ class dbLanguage extends dbJSON
|
||||||
|
|
||||||
return $tmp;
|
return $tmp;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -418,4 +418,4 @@ class dbPages extends dbJSON
|
||||||
|
|
||||||
return $this->db!=$db;
|
return $this->db!=$db;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -466,4 +466,4 @@ class dbPosts extends dbJSON
|
||||||
return $this->db!=$db;
|
return $this->db!=$db;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -150,6 +150,30 @@ class dbSite extends dbJSON
|
||||||
return $this->getField('url');
|
return $this->getField('url');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function domain()
|
||||||
|
{
|
||||||
|
// If the URL field is not set, try detect the domain.
|
||||||
|
if(Text::isEmpty( $this->url() ))
|
||||||
|
{
|
||||||
|
if(!empty($_SERVER['HTTPS'])) {
|
||||||
|
$protocol = 'https://';
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$protocol = 'http://';
|
||||||
|
}
|
||||||
|
|
||||||
|
$domain = $_SERVER['HTTP_HOST'];
|
||||||
|
|
||||||
|
return $protocol.$domain.HTML_PATH_ROOT;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Parse the domain from the field URL.
|
||||||
|
$parse = parse_url($this->url());
|
||||||
|
$domain = $parse['scheme']."://".$parse['host'];
|
||||||
|
|
||||||
|
return $domain;
|
||||||
|
}
|
||||||
|
|
||||||
// Returns TRUE if the cli mode is enabled, otherwise FALSE.
|
// Returns TRUE if the cli mode is enabled, otherwise FALSE.
|
||||||
public function cliMode()
|
public function cliMode()
|
||||||
{
|
{
|
||||||
|
@ -228,4 +252,4 @@ class dbSite extends dbJSON
|
||||||
return date_default_timezone_set($timezone);
|
return date_default_timezone_set($timezone);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -84,4 +84,4 @@ class dbTags extends dbJSON
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -188,4 +188,4 @@ class dbUsers extends dbJSON
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,4 +31,4 @@ class Alert {
|
||||||
return Session::get('defined');
|
return Session::get('defined');
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,9 +25,14 @@ class Date {
|
||||||
// Format a local time/date according to locale settings.
|
// Format a local time/date according to locale settings.
|
||||||
public static function format($date, $currentFormat, $outputFormat)
|
public static function format($date, $currentFormat, $outputFormat)
|
||||||
{
|
{
|
||||||
|
// Returns a new DateTime instance or FALSE on failure.
|
||||||
$Date = DateTime::createFromFormat($currentFormat, $date);
|
$Date = DateTime::createFromFormat($currentFormat, $date);
|
||||||
|
|
||||||
return $Date->format($outputFormat);
|
if($Date!==false) {
|
||||||
|
return $Date->format($outputFormat);
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function timeago($time)
|
public static function timeago($time)
|
||||||
|
|
|
@ -26,4 +26,4 @@ class Email {
|
||||||
return mail($args['to'], $args['subject'], $message, implode(PHP_EOL, $headers));
|
return mail($args['to'], $args['subject'], $message, implode(PHP_EOL, $headers));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,4 +63,4 @@ class Paginator {
|
||||||
return $html;
|
return $html;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -76,4 +76,4 @@ class Sanitize {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -82,4 +82,4 @@
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -165,11 +165,13 @@ class Text {
|
||||||
return ucfirst($string);
|
return ucfirst($string);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Find position of first occurrence of substring in a string.
|
// Find position of first occurrence of substring in a string otherwise returns FALSE.
|
||||||
public static function strpos($string, $substring)
|
public static function stringPosition($string, $substring)
|
||||||
{
|
{
|
||||||
if(MB_STRING)
|
if(MB_STRING) {
|
||||||
return mb_strpos($string, $substring, 0, 'UTF-8');
|
return mb_strpos($string, $substring, 0, 'UTF-8');
|
||||||
|
}
|
||||||
|
|
||||||
return strpos($string, $substring);
|
return strpos($string, $substring);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -225,4 +227,4 @@ class Text {
|
||||||
$string);
|
$string);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,4 +33,4 @@ class Valid {
|
||||||
return $tmp && $tmp->format($format)==$date;
|
return $tmp && $tmp->format($format)==$date;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -71,4 +71,4 @@ function checkSlug(type, text, parentPage, key, writeResponse)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -159,4 +159,4 @@ class Login {
|
||||||
return Session::destroy();
|
return Session::destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -79,13 +79,18 @@ class Page extends fileContent
|
||||||
}
|
}
|
||||||
|
|
||||||
// Returns the post date according to locale settings and format settings.
|
// Returns the post date according to locale settings and format settings.
|
||||||
public function date($format=false)
|
public function date()
|
||||||
{
|
{
|
||||||
$date = $this->getField('date');
|
return $this->getField('date');
|
||||||
|
}
|
||||||
|
|
||||||
|
// Returns the post date according to locale settings and format as database stored.
|
||||||
|
public function dateRaw($format=false)
|
||||||
|
{
|
||||||
|
$date = $this->getField('dateRaw');
|
||||||
|
|
||||||
if($format) {
|
if($format) {
|
||||||
// En %d %b deberia ir el formato definido por el usuario
|
return Date::format($date, DB_DATE_FORMAT, $format);
|
||||||
return Date::format($date, DB_DATE_FORMAT, '%d %B');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return $date;
|
return $date;
|
||||||
|
@ -147,6 +152,7 @@ class Page extends fileContent
|
||||||
return '/'.$htmlPath.'/'.$tmp;
|
return '/'.$htmlPath.'/'.$tmp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Returns the parent key, if the page doesn't have a parent returns FALSE.
|
||||||
public function parentKey()
|
public function parentKey()
|
||||||
{
|
{
|
||||||
$explode = explode('/', $this->getField('key'));
|
$explode = explode('/', $this->getField('key'));
|
||||||
|
@ -157,6 +163,18 @@ class Page extends fileContent
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Returns the parent method output, if the page doesn't have a parent returns FALSE.
|
||||||
|
public function parentMethod($method)
|
||||||
|
{
|
||||||
|
global $pages;
|
||||||
|
|
||||||
|
if( isset($pages[$this->parentKey()]) ) {
|
||||||
|
return $pages[$this->parentKey()]->{$method}();
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
public function children()
|
public function children()
|
||||||
{
|
{
|
||||||
$tmp = array();
|
$tmp = array();
|
||||||
|
@ -184,4 +202,4 @@ class Page extends fileContent
|
||||||
return $this->getField('authorLastName');
|
return $this->getField('authorLastName');
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,16 +19,18 @@ class Security extends dbJSON
|
||||||
// ====================================================
|
// ====================================================
|
||||||
|
|
||||||
// Generate and save the token in Session.
|
// Generate and save the token in Session.
|
||||||
public function generateToken()
|
public function generateTokenCSRF()
|
||||||
{
|
{
|
||||||
$token = Text::randomText(8);
|
$token = Text::randomText(8);
|
||||||
$token = sha1($token);
|
$token = sha1($token);
|
||||||
|
|
||||||
|
Log::set(__METHOD__.LOG_SEP.'New tokenCSRF was generated '.$token);
|
||||||
|
|
||||||
Session::set('tokenCSRF', $token);
|
Session::set('tokenCSRF', $token);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Validate the token.
|
// Validate the token.
|
||||||
public function validateToken($token)
|
public function validateTokenCSRF($token)
|
||||||
{
|
{
|
||||||
$sessionToken = Session::get('tokenCSRF');
|
$sessionToken = Session::get('tokenCSRF');
|
||||||
|
|
||||||
|
@ -36,12 +38,12 @@ class Security extends dbJSON
|
||||||
}
|
}
|
||||||
|
|
||||||
// Returns the token.
|
// Returns the token.
|
||||||
public function getToken()
|
public function getTokenCSRF()
|
||||||
{
|
{
|
||||||
return Session::get('tokenCSRF');
|
return Session::get('tokenCSRF');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function printToken()
|
public function printTokenCSRF()
|
||||||
{
|
{
|
||||||
echo Session::get('tokenCSRF');
|
echo Session::get('tokenCSRF');
|
||||||
}
|
}
|
||||||
|
@ -134,4 +136,4 @@ class Security extends dbJSON
|
||||||
|
|
||||||
return $ip;
|
return $ip;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,7 +32,7 @@ class Url
|
||||||
$this->filters = array();
|
$this->filters = array();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Filters may be changed for different languages
|
// Filters change for different languages
|
||||||
// Ex (Spanish): Array('post'=>'/publicacion/', 'tag'=>'/etiqueta/', ....)
|
// Ex (Spanish): Array('post'=>'/publicacion/', 'tag'=>'/etiqueta/', ....)
|
||||||
// Ex (English): Array('post'=>'/post/', 'tag'=>'/tag/', ....)
|
// Ex (English): Array('post'=>'/post/', 'tag'=>'/tag/', ....)
|
||||||
public function checkFilters($filters)
|
public function checkFilters($filters)
|
||||||
|
@ -41,35 +41,33 @@ class Url
|
||||||
$adminFilter['admin'] = $filters['admin'];
|
$adminFilter['admin'] = $filters['admin'];
|
||||||
unset($filters['admin']);
|
unset($filters['admin']);
|
||||||
|
|
||||||
// Sort by filter length
|
// Sort filters by length
|
||||||
uasort($filters, array($this, 'sortByLength'));
|
uasort($filters, array($this, 'sortByLength'));
|
||||||
|
|
||||||
// Push the admin filter first
|
// Push the admin filter first
|
||||||
$filters = $adminFilter + $filters;
|
$filters = $adminFilter + $filters;
|
||||||
|
|
||||||
$this->filters = $filters;
|
$this->filters = $filters;
|
||||||
|
|
||||||
foreach($filters as $filterKey=>$filter)
|
foreach($filters as $filterName=>$filterURI)
|
||||||
{
|
{
|
||||||
// getSlugAfterFilter() set the variable $this->slug
|
// $slug will be FALSE if the filter is not included in the URI.
|
||||||
$slug = $this->getSlugAfterFilter($filter);
|
$slug = $this->getSlugAfterFilter($filterURI);
|
||||||
|
|
||||||
// If the filter is included in the URI.
|
|
||||||
if($slug!==false)
|
if($slug!==false)
|
||||||
{
|
{
|
||||||
// Where Am I is the filter now, because is in the URI.
|
$this->slug = $slug;
|
||||||
$this->whereAmI = $filterKey;
|
$this->whereAmI = $filterName;
|
||||||
|
|
||||||
// If the slug empty
|
// If the slug is empty
|
||||||
if(empty($slug))
|
if(Text::isEmpty($slug))
|
||||||
{
|
{
|
||||||
if($filter==='/')
|
if($filterURI==='/')
|
||||||
{
|
{
|
||||||
$this->whereAmI = 'home';
|
$this->whereAmI = 'home';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($filter===$adminFilter['admin'])
|
if($filterURI===$adminFilter['admin'])
|
||||||
{
|
{
|
||||||
$this->whereAmI = 'admin';
|
$this->whereAmI = 'admin';
|
||||||
$this->slug = 'dashboard';
|
$this->slug = 'dashboard';
|
||||||
|
@ -140,43 +138,50 @@ class Url
|
||||||
$this->notFound = $error;
|
$this->notFound = $error;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getDomain()
|
// Returns the slug after the $filter, the slug could be an empty string
|
||||||
{
|
|
||||||
if(!empty($_SERVER['HTTPS'])) {
|
|
||||||
$protocol = 'https://';
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$protocol = 'http://';
|
|
||||||
}
|
|
||||||
|
|
||||||
$domain = $_SERVER['HTTP_HOST'];
|
|
||||||
|
|
||||||
return $protocol.$domain.HTML_PATH_ROOT;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Return the slug after the $filter
|
|
||||||
// If the filter is not included in the uri, returns FALSE
|
// If the filter is not included in the uri, returns FALSE
|
||||||
// If the filter is included in the uri and the slug is not empty, returns the slug
|
|
||||||
// ex: http://domain.com/cms/$filter/slug123 => slug123
|
// ex: http://domain.com/cms/$filter/slug123 => slug123
|
||||||
|
// ex: http://domain.com/cms/$filter/name/lastname => name/lastname
|
||||||
|
// ex: http://domain.com/cms/$filter/ => empty string
|
||||||
|
// ex: http://domain.com/cms/$filter => empty string
|
||||||
private function getSlugAfterFilter($filter)
|
private function getSlugAfterFilter($filter)
|
||||||
{
|
{
|
||||||
if($filter=='/') {
|
// Remove both slash from the filter
|
||||||
$filter = HTML_PATH_ROOT;
|
$filter = trim($filter, '/');
|
||||||
}
|
|
||||||
|
// Add to the filter the root directory
|
||||||
|
$filter = HTML_PATH_ROOT.$filter;
|
||||||
|
|
||||||
// Check if the filter is in the uri.
|
// Check if the filter is in the uri.
|
||||||
$position = Text::strpos($this->uri, $filter);
|
$position = Text::stringPosition($this->uri, $filter);
|
||||||
|
|
||||||
|
// If the position is FALSE, the filter isn't in the URI.
|
||||||
if($position===false) {
|
if($position===false) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Start position to cut
|
||||||
$start = $position + Text::length($filter);
|
$start = $position + Text::length($filter);
|
||||||
|
|
||||||
|
// End position to cut
|
||||||
$end = $this->uriStrlen;
|
$end = $this->uriStrlen;
|
||||||
|
|
||||||
|
// Get the slug from the URI
|
||||||
$slug = Text::cut($this->uri, $start, $end);
|
$slug = Text::cut($this->uri, $start, $end);
|
||||||
$this->slug = trim($slug, '/');
|
|
||||||
|
|
||||||
return $slug;
|
if(Text::isEmpty($slug)) {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
|
if($slug[0]=='/') {
|
||||||
|
return ltrim($slug, '/');
|
||||||
|
}
|
||||||
|
|
||||||
|
if($filter==HTML_PATH_ROOT) {
|
||||||
|
return $slug;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function sortByLength($a, $b)
|
private function sortByLength($a, $b)
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
"confirm-password": "Повтори паролата",
|
"confirm-password": "Повтори паролата",
|
||||||
"editor": "Редактор",
|
"editor": "Редактор",
|
||||||
"dashboard": "Администраторски панел",
|
"dashboard": "Администраторски панел",
|
||||||
"role": "Потребител",
|
"role": "Вид потребител",
|
||||||
"post": "Публикация",
|
"post": "Публикация",
|
||||||
"posts": "Публикаций",
|
"posts": "Публикаций",
|
||||||
"users": "Потребители",
|
"users": "Потребители",
|
||||||
|
@ -164,7 +164,7 @@
|
||||||
"scheduled": "Планирано",
|
"scheduled": "Планирано",
|
||||||
"publish": "Публикувай",
|
"publish": "Публикувай",
|
||||||
"please-check-your-theme-configuration": "Моля, проверете конфигурацията на вашата тема.",
|
"please-check-your-theme-configuration": "Моля, проверете конфигурацията на вашата тема.",
|
||||||
"plugin-label": "Plugin етикет",
|
"plugin-label": "Заглавие плъгин",
|
||||||
"enabled": "Разреши",
|
"enabled": "Разреши",
|
||||||
"disabled": "Забрани",
|
"disabled": "Забрани",
|
||||||
"cli-mode": "Режим CLI",
|
"cli-mode": "Режим CLI",
|
||||||
|
@ -205,7 +205,7 @@
|
||||||
"drag-and-drop-or-click-here": "Влачите и пускате или натиснете тук",
|
"drag-and-drop-or-click-here": "Влачите и пускате или натиснете тук",
|
||||||
"insert-image": "Вмъкни снимка",
|
"insert-image": "Вмъкни снимка",
|
||||||
"supported-image-file-types": "Поддържани файлови формати за снимки",
|
"supported-image-file-types": "Поддържани файлови формати за снимки",
|
||||||
"date-format": "Формат за дата",
|
"date-format": "Формат дата ",
|
||||||
"time-format": "Формат за време",
|
"time-format": "Формат за време",
|
||||||
"chat-with-developers-and-users-on-gitter":"Чат с разработчици и потребители на [Gitter](https://gitter.im/dignajar/bludit)",
|
"chat-with-developers-and-users-on-gitter":"Чат с разработчици и потребители на [Gitter](https://gitter.im/dignajar/bludit)",
|
||||||
"this-is-a-brief-description-of-yourself-our-your-site":"Това е кратко описание на вашия сайт, за да се промени този текст отидете в админ панела, настройки плъгини, конфигуриране на плъгин About.",
|
"this-is-a-brief-description-of-yourself-our-your-site":"Това е кратко описание на вашия сайт, за да се промени този текст отидете в админ панела, настройки плъгини, конфигуриране на плъгин About.",
|
||||||
|
@ -213,6 +213,11 @@
|
||||||
"the-about-page-is-very-important": "The about page is an important and powerful tool for potential clients and partners. For those who wonder who is behind the website, your About page is the first source of information.",
|
"the-about-page-is-very-important": "The about page is an important and powerful tool for potential clients and partners. For those who wonder who is behind the website, your About page is the first source of information.",
|
||||||
"change-this-pages-content-on-the-admin-panel": "Промяна на съдържанието на страницата се извършва от админ панела, управление, страници и кликнете върху страницата.",
|
"change-this-pages-content-on-the-admin-panel": "Промяна на съдържанието на страницата се извършва от админ панела, управление, страници и кликнете върху страницата.",
|
||||||
"about-your-site-or-yourself": "За твоя сайт или за теб",
|
"about-your-site-or-yourself": "За твоя сайт или за теб",
|
||||||
"welcome-to-bludit": "Добре дошли в Bludit"
|
"welcome-to-bludit": "Добре дошли в Bludit",
|
||||||
|
|
||||||
|
"site-information": "Информация за сайта",
|
||||||
|
"date-and-time-formats": "Формат дата и час",
|
||||||
|
"activate": "Активиране",
|
||||||
|
"deactivate": "Деактивиране"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -213,5 +213,10 @@
|
||||||
"the-about-page-is-very-important": "The about page is an important and powerful tool for potential clients and partners. For those who wonder who is behind the website, your About page is the first source of information.",
|
"the-about-page-is-very-important": "The about page is an important and powerful tool for potential clients and partners. For those who wonder who is behind the website, your About page is the first source of information.",
|
||||||
"change-this-pages-content-on-the-admin-panel": "Change this page's content on the admin panel, manage, pages and click on the about page.",
|
"change-this-pages-content-on-the-admin-panel": "Change this page's content on the admin panel, manage, pages and click on the about page.",
|
||||||
"about-your-site-or-yourself": "About your site or yourself",
|
"about-your-site-or-yourself": "About your site or yourself",
|
||||||
"welcome-to-bludit": "Welcome to Bludit"
|
"welcome-to-bludit": "Welcome to Bludit",
|
||||||
|
|
||||||
|
"site-information": "Site information",
|
||||||
|
"date-and-time-formats": "Date and time formats",
|
||||||
|
"activate": "Activate",
|
||||||
|
"deactivate": "Deactivate"
|
||||||
}
|
}
|
|
@ -13,7 +13,7 @@
|
||||||
"password": "Contraseña",
|
"password": "Contraseña",
|
||||||
"confirm-password": "Confirmar contraseña",
|
"confirm-password": "Confirmar contraseña",
|
||||||
"editor": "Editor",
|
"editor": "Editor",
|
||||||
"dashboard": "Panel",
|
"dashboard": "Panel de administración",
|
||||||
"role": "Rol",
|
"role": "Rol",
|
||||||
"post": "Entrada",
|
"post": "Entrada",
|
||||||
"posts": "Entradas",
|
"posts": "Entradas",
|
||||||
|
|
|
@ -0,0 +1,217 @@
|
||||||
|
{
|
||||||
|
"language-data":
|
||||||
|
{
|
||||||
|
"native": "Italiano (Italy)",
|
||||||
|
"english-name": "Italian",
|
||||||
|
"last-update": "2015-11-27",
|
||||||
|
"author": "Daniele La Pira",
|
||||||
|
"email": "daniele.lapira@gmail.com",
|
||||||
|
"website": "https://github.com/danielelapira"
|
||||||
|
},
|
||||||
|
|
||||||
|
"username": "Nome Utente",
|
||||||
|
"password": "Password",
|
||||||
|
"confirm-password": "Conferma Password",
|
||||||
|
"editor": "Editor",
|
||||||
|
"dashboard": "Pannello",
|
||||||
|
"role": "Ruolo",
|
||||||
|
"post": "Articolo",
|
||||||
|
"posts": "Articoli",
|
||||||
|
"users": "Utenti",
|
||||||
|
"administrator": "Amministratore",
|
||||||
|
"add": "Aggiungi",
|
||||||
|
"cancel": "Annulla",
|
||||||
|
"content": "Contenuto",
|
||||||
|
"title": "Titolo",
|
||||||
|
"no-parent": "Nessuna pagina genitore",
|
||||||
|
"edit-page": "Modifica Pagina",
|
||||||
|
"edit-post": "Modifica Articolo",
|
||||||
|
"add-a-new-user": "Aggiungi un nuovo utente",
|
||||||
|
"parent": "Genitore",
|
||||||
|
"friendly-url": "URL amichevole",
|
||||||
|
"description": "Descrizione",
|
||||||
|
"posted-by": "Pubblicato da",
|
||||||
|
"tags": "Tags",
|
||||||
|
"position": "Posizione",
|
||||||
|
"save": "Salva",
|
||||||
|
"draft": "Bozza",
|
||||||
|
"delete": "Elimina",
|
||||||
|
"registered": "Registrato",
|
||||||
|
"Notifications": "Notifiche",
|
||||||
|
"profile": "Profilo",
|
||||||
|
"email": "Email",
|
||||||
|
"settings": "Impostazioni",
|
||||||
|
"general": "Generale",
|
||||||
|
"advanced": "Avanzato",
|
||||||
|
"regional": "Regionale",
|
||||||
|
"about": "About",
|
||||||
|
"login": "Inizia sessione",
|
||||||
|
"logout": "Termina sessione",
|
||||||
|
"manage": "Amministra",
|
||||||
|
"themes": "Temi",
|
||||||
|
"prev-page": "Pagina precedente",
|
||||||
|
"next-page": "Pagina seguente",
|
||||||
|
"configure-plugin": "Configura plugin",
|
||||||
|
"confirm-delete-this-action-cannot-be-undone": "Conferma l'eliminazione. Questa azione non può essere annullata.",
|
||||||
|
"site-title": "Titolo del sito",
|
||||||
|
"site-slogan": "Slogan del sito",
|
||||||
|
"site-description": "Descrizione del sito",
|
||||||
|
"footer-text": "Testo pie' di pagina",
|
||||||
|
"posts-per-page": "Articoli per pagina",
|
||||||
|
"site-url": "URL del sito",
|
||||||
|
"writting-settings": "Impostazioni di scrittura",
|
||||||
|
"url-filters": "Filtri URL",
|
||||||
|
"page": "Pagina",
|
||||||
|
"pages": "Pagine",
|
||||||
|
"home": "Inizio",
|
||||||
|
"welcome-back": "Bentornato",
|
||||||
|
"language": "Lingua",
|
||||||
|
"website": "Sito web",
|
||||||
|
"timezone": "Fuso orario",
|
||||||
|
"locale": "Locale",
|
||||||
|
"new-post": "Nuovo articolo",
|
||||||
|
"new-page": "Nuova pagina",
|
||||||
|
"html-and-markdown-code-supported": "Codici HTML e Markdown supportati",
|
||||||
|
"manage-posts": "Gestisci articoli",
|
||||||
|
"published-date": "Data di pubblicazione",
|
||||||
|
"modified-date": "Data di modifica",
|
||||||
|
"empty-title": "Titolo assente",
|
||||||
|
"plugins": "Plugins",
|
||||||
|
"install-plugin": "Installa plugin",
|
||||||
|
"uninstall-plugin": "Disinstalla plugin",
|
||||||
|
"new-password": "Nuova password",
|
||||||
|
"edit-user": "Modifica utente",
|
||||||
|
"publish-now": "Pubblica adesso",
|
||||||
|
"first-name": "Nome",
|
||||||
|
"last-name": "Cognome",
|
||||||
|
"bludit-version": "Versione di Bludit",
|
||||||
|
"powered-by": "Powered by",
|
||||||
|
"recent-posts": "Articoli recenti",
|
||||||
|
"manage-pages": "Gestisci pagine",
|
||||||
|
"advanced-options": "Opzioni avanzate",
|
||||||
|
"user-deleted": "Utente eliminato",
|
||||||
|
"page-added-successfully": "Pagina aggiunta con successo",
|
||||||
|
"post-added-successfully": "Articolo aggiunto con successo",
|
||||||
|
"the-post-has-been-deleted-successfully": "L'articolo è stato eliminato con successo",
|
||||||
|
"the-page-has-been-deleted-successfully": "La pagina è stata eliminata con successo",
|
||||||
|
"username-or-password-incorrect": "Nome utente o password non corretti",
|
||||||
|
"database-regenerated": "Database rigenerato",
|
||||||
|
"the-changes-have-been-saved": "Le modifiche sono state salvate",
|
||||||
|
"enable-more-features-at": "Abilita altre funzioni a",
|
||||||
|
"username-already-exists": "Il nome utente esiste già",
|
||||||
|
"username-field-is-empty": "Campo nome utente vuoto",
|
||||||
|
"the-password-and-confirmation-password-do-not-match":"Le password non corrispondono",
|
||||||
|
"user-has-been-added-successfully": "Utente aggiunto con successo",
|
||||||
|
"you-do-not-have-sufficient-permissions": "Non hai i permessi sufficienti per accedere a questa pagina, contatta l'amministratore.",
|
||||||
|
"settings-advanced-writting-settings": "Impostazioni->Avanzate->Impostazioni di scrittura",
|
||||||
|
"new-posts-and-pages-synchronized": "Nuovi articoli e pagine sincronizzate.",
|
||||||
|
"you-can-choose-the-users-privilege": "Puoi selezionare i privilegi dell'utente. Il ruolo di editore può solo scrivere e modificare pagine e articoli.",
|
||||||
|
"email-will-not-be-publicly-displayed": "L'indirizzo Email non sarà visibile. Raccomandato per il recupero della password e per ricevere notifiche.",
|
||||||
|
"use-this-field-to-name-your-site": "Usa questo campo per dare un nome al tuo sito, apparirà nella parte superiore in ogni pagina del tuo sito.",
|
||||||
|
"use-this-field-to-add-a-catchy-phrase": "Usa questo campo per aggiungere uno slogan al tuo sito.",
|
||||||
|
"you-can-add-a-site-description-to-provide": "Puoi aggiungere una descrizione del sito per fornire una breve biografia o descrizione del sito.",
|
||||||
|
"you-can-add-a-small-text-on-the-bottom": "Puoi aggiungere un breve testo in fondo ad ogni pagina. Ad es. copyright, autore, date, ecc.",
|
||||||
|
"number-of-posts-to-show-per-page": "Numero di articoli da mostrare per pagina.",
|
||||||
|
"the-url-of-your-site": "Indirizzo URL del tuo sito.",
|
||||||
|
"add-or-edit-description-tags-or": "Aggiungi o modifica descrizione, tags oppure modifica l'URL amichevole.",
|
||||||
|
"select-your-sites-language": "Seleziona la lingua del tuo sito.",
|
||||||
|
"select-a-timezone-for-a-correct": "Seleziona un fuso orario per la corretta visualizzazione di data e ora sul sito.",
|
||||||
|
"you-can-use-this-field-to-define-a-set-of": "Puoi utilizzare questo campo per definire set di parametri riferiti alla lingua, alla nazione e preferenze speciali.",
|
||||||
|
"you-can-modify-the-url-which-identifies":"Puoi modificare l'indirizzo URL che identifica una pagina o un articolo utilizzando delle parole chiavi leggibili. Non più di 150 caratteri.",
|
||||||
|
"this-field-can-help-describe-the-content": "Quì puoi descrivere il contenuto in poche parole. Non più di 150 caratteri.",
|
||||||
|
|
||||||
|
"delete-the-user-and-all-its-posts":"Elimina l'utente e tutti i suoi articoli",
|
||||||
|
"delete-the-user-and-associate-its-posts-to-admin-user": "Elimina l'utente e assegna i suoi articoli all'utente admin",
|
||||||
|
"read-more": "Leggi tutto",
|
||||||
|
"show-blog": "Visualizza blog",
|
||||||
|
"default-home-page": "Home page predefinita",
|
||||||
|
"version": "Versione",
|
||||||
|
"there-are-no-drafts": "Non ci sono bozze.",
|
||||||
|
"create-a-new-article-for-your-blog":"Crea un nuovo articolo per il tuo blog.",
|
||||||
|
"create-a-new-page-for-your-website":"Crea una nuova pagina per il tuo sito.",
|
||||||
|
"invite-a-friend-to-collaborate-on-your-website":"Invita un amico per collaborare sul tuo sito.",
|
||||||
|
"change-your-language-and-region-settings":"Modifica le impostazioni di lingua e regione.",
|
||||||
|
"language-and-timezone":"Lingua e fuso orario",
|
||||||
|
"author": "Autore",
|
||||||
|
"start-here": "Inizia quì",
|
||||||
|
"install-theme": "Installa tema",
|
||||||
|
"first-post": "Primo articolo",
|
||||||
|
"congratulations-you-have-successfully-installed-your-bludit": "Congratulazioni, hai installato con successo **Bludit**",
|
||||||
|
"whats-next": "Passi seguenti",
|
||||||
|
"manage-your-bludit-from-the-admin-panel": "Gestisci Bludit dal [pannello di amministrazione](./admin/)",
|
||||||
|
"follow-bludit-on": "Segui Bludit su",
|
||||||
|
"visit-the-support-forum": "Visita il [forum](http://forum.bludit.com) for support",
|
||||||
|
"read-the-documentation-for-more-information": "Leggi la [documentazione](http://docs.bludit.com) per ulteriori informazioni",
|
||||||
|
"share-with-your-friends-and-enjoy": "Condividi con i tuoi amici",
|
||||||
|
"the-page-has-not-been-found": "La pagina non è stata trovata.",
|
||||||
|
"error": "Errore",
|
||||||
|
"bludit-installer": "Installa Bludit",
|
||||||
|
"welcome-to-the-bludit-installer": "Benvenuto nel programma di installazione di Bludit",
|
||||||
|
"complete-the-form-choose-a-password-for-the-username-admin": "Compila il modulo e scegli una password per l'utente « admin »",
|
||||||
|
"password-visible-field": "Password, campo visibile!",
|
||||||
|
"install": "Installa",
|
||||||
|
"choose-your-language": "Scegli la tua lingua",
|
||||||
|
"next": "Avanti",
|
||||||
|
"the-password-field-is-empty": "Il campo password è vuoto",
|
||||||
|
"your-email-address-is-invalid":"Il tuo indirizzo email non è valido.",
|
||||||
|
"proceed-anyway": "Procedi comunque!",
|
||||||
|
"drafts":"Bozze",
|
||||||
|
"ip-address-has-been-blocked": "L'indirizzo IP è stato bloccato.",
|
||||||
|
"try-again-in-a-few-minutes": "Prova di nuovo fra qualche minuto.",
|
||||||
|
"date": "Data",
|
||||||
|
|
||||||
|
"scheduled": "Programmato",
|
||||||
|
"publish": "Pubblica",
|
||||||
|
"please-check-your-theme-configuration": "Per favore verifica la configurazione del tuo tema.",
|
||||||
|
"plugin-label": "Etichetta del Plugin",
|
||||||
|
"enabled": "Abilitato",
|
||||||
|
"disabled": "Disabilitato",
|
||||||
|
"cli-mode": "Modo Cli",
|
||||||
|
"command-line-mode": "Modo linia di comando",
|
||||||
|
"enable-the-command-line-mode-if-you-add-edit": "Abilita il modo della linea di comando se vuoi aggiungere, modificare o eliminare articoli e pagine dal filesystem",
|
||||||
|
|
||||||
|
"configure": "Configura",
|
||||||
|
"uninstall": "Disinstalla",
|
||||||
|
"change-password": "Cambia password",
|
||||||
|
"to-schedule-the-post-just-select-the-date-and-time": "Per programmare l'articolo, seleziona data e ora.",
|
||||||
|
"write-the-tags-separated-by-commas": "Scrivi i tags separati da virgole.",
|
||||||
|
"status": "Status",
|
||||||
|
"published": "Pubblicato",
|
||||||
|
"scheduled-posts": "Articoli programmati",
|
||||||
|
"statistics": "Statistiche",
|
||||||
|
"name": "Nome",
|
||||||
|
"email-account-settings":"Impostazioni dell'account email",
|
||||||
|
"sender-email": "Mittente email",
|
||||||
|
"emails-will-be-sent-from-this-address":"Le emails saranno inviate da questo indirizzo.",
|
||||||
|
"bludit-login-access-code": "BLUDIT - Login access code",
|
||||||
|
"check-your-inbox-for-your-login-access-code":"Controlla la tua posta in ingresso per il codice di accesso",
|
||||||
|
"there-was-a-problem-sending-the-email":"C'è stato un problema nell'invio dell' email",
|
||||||
|
"back-to-login-form": "Torna indietro alla pagina di accesso",
|
||||||
|
"send-me-a-login-access-code": "Inviami un codice accesso",
|
||||||
|
"get-login-access-code": "Richiedi un codice accesso",
|
||||||
|
"email-notification-login-access-code": "<p>Questa è una notifica dal tuo sito {{WEBSITE_NAME}}</p><p>Hai richiesto un codice per accedere, segui il link seguente:</p><p>{{LINK}}</p>",
|
||||||
|
"there-are-no-scheduled-posts": "Non ci sono articoli programmati.",
|
||||||
|
"show-password": "Mostra password",
|
||||||
|
"edit-or-remove-your=pages": "Modifica o elimina pagine.",
|
||||||
|
"edit-or-remove-your-blogs-posts": "Modifica o elimina gli articoli del tuo blog.",
|
||||||
|
"general-settings": "Impostazioni generali",
|
||||||
|
"advanced-settings": "Impostazioni avanzate",
|
||||||
|
"manage-users": "Gestisci utenti",
|
||||||
|
"view-and-edit-your-profile": "Visualizza e modifica il tuo profilo.",
|
||||||
|
|
||||||
|
"password-must-be-at-least-6-characters-long": "La Password deve contenere almeno 6 caratteri",
|
||||||
|
"images": "Immagini",
|
||||||
|
"upload-image": "Invia un'immagine",
|
||||||
|
"drag-and-drop-or-click-here": "Trascina e rilascia oppure clicca quì",
|
||||||
|
"insert-image": "Inserisci immagine",
|
||||||
|
"supported-image-file-types": "Formati file immagine supportati",
|
||||||
|
"date-format": "Formato data",
|
||||||
|
"time-format": "Formato ora",
|
||||||
|
"chat-with-developers-and-users-on-gitter":"Chatta con gli sviluppatori e gli utenti su [Gitter](https://gitter.im/dignajar/bludit)",
|
||||||
|
"this-is-a-brief-description-of-yourself-our-your-site":"Questa è una breve descrizione tua o del tuo sito, Per cambiare il testo vai nel pannello di amministrazione, impostazioni, plugins, e configura il plugin about.",
|
||||||
|
"profile-picture": "Foto del profilo",
|
||||||
|
"the-about-page-is-very-important": "La pagina << about >> è molto utile. Fornisce ai tuoi visitatori importanti informazioni sul sito. Uno strumento efficace per potenziali clienti e partners.",
|
||||||
|
"change-this-pages-content-on-the-admin-panel": "Cambia il contenuto di questa pagina sul pannello di amministrazione, Amministra -> Pagine e Clicca sulla pagina << about >> per modificare.",
|
||||||
|
"about-your-site-or-yourself": "A proposito del tuo sito o di te stesso",
|
||||||
|
"welcome-to-bludit": "Benvenuti a Bludit"
|
||||||
|
}
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
"plugin-data":
|
||||||
|
{
|
||||||
|
"name": "За мен",
|
||||||
|
"description": "Кратко описание за вашия сайт или за себе си.",
|
||||||
|
"author": "Bludit",
|
||||||
|
"email": "",
|
||||||
|
"website": "https://github.com/dignajar/bludit-plugins",
|
||||||
|
"version": "0.6",
|
||||||
|
"releaseDate": "2015-11-13"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
"plugin-data":
|
||||||
|
{
|
||||||
|
"name": "Acerca de",
|
||||||
|
"description": "Pequeña descripcion sobre tu mismo o sobre tu sitio."
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"plugin-data":
|
"plugin-data":
|
||||||
{
|
{
|
||||||
"name": "Обо мне",
|
"name": "О блоге",
|
||||||
"description": "Небольшое описание о вашем сайте или о себя."
|
"description": "Небольшое описание о вашем сайте или о себя."
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
"plugin-data":
|
||||||
|
{
|
||||||
|
"name": "Про блог",
|
||||||
|
"description": "Невеликий опис вашого сайту або про Вас."
|
||||||
|
}
|
||||||
|
}
|
|
@ -44,4 +44,4 @@ class pluginAbout extends Plugin {
|
||||||
|
|
||||||
return $html;
|
return $html;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
{
|
||||||
|
"plugin-data":
|
||||||
|
{
|
||||||
|
"name": "Disqus коментари",
|
||||||
|
"description": "Disqus коментари е услуги за уеб сайтове и блогове. Трябва да сте регистрирани в Disqus.com, преди да използвате този плъгин.",
|
||||||
|
"author": "Bludit",
|
||||||
|
"email": "",
|
||||||
|
"website": "https://github.com/dignajar/bludit-plugins",
|
||||||
|
"version": "0.6",
|
||||||
|
"releaseDate": "2015-11-13"
|
||||||
|
},
|
||||||
|
"disqus-shortname": "Disqus shortname",
|
||||||
|
"enable-disqus-on-pages": "Активиране Disqus на страници",
|
||||||
|
"enable-disqus-on-posts": "Активиране Disqus на публикации",
|
||||||
|
"enable-disqus-on-default-home-page": "Активиране Disqus на начална страница"
|
||||||
|
}
|
|
@ -6,8 +6,8 @@
|
||||||
"author": "Bludit",
|
"author": "Bludit",
|
||||||
"email": "",
|
"email": "",
|
||||||
"website": "https://github.com/dignajar/bludit-plugins",
|
"website": "https://github.com/dignajar/bludit-plugins",
|
||||||
"version": "0.6",
|
"version": "0.7",
|
||||||
"releaseDate": "2015-11-13"
|
"releaseDate": "2015-11-28"
|
||||||
},
|
},
|
||||||
"disqus-shortname": "Disqus shortname",
|
"disqus-shortname": "Disqus shortname",
|
||||||
"enable-disqus-on-pages": "Enable Disqus on pages",
|
"enable-disqus-on-pages": "Enable Disqus on pages",
|
||||||
|
|
|
@ -121,4 +121,4 @@ class pluginDisqus extends Plugin {
|
||||||
|
|
||||||
return $html;
|
return $html;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -60,4 +60,4 @@ class pluginGoogleTools extends Plugin {
|
||||||
|
|
||||||
return $html;
|
return $html;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue