Merge remote-tracking branch 'dignajar/master'
# Conflicts: # languages/fr_FR.json
This commit is contained in:
commit
afddcec0d6
10
.gitignore
vendored
10
.gitignore
vendored
@ -1,7 +1,5 @@
|
||||
.DS_Store
|
||||
!themes/pure
|
||||
themes/*
|
||||
content/databases
|
||||
content/pages
|
||||
content/posts
|
||||
content/uploads
|
||||
bl-content/databases
|
||||
bl-content/pages
|
||||
bl-content/posts
|
||||
bl-content/uploads
|
||||
|
@ -1,7 +1,5 @@
|
||||
AddDefaultCharset UTF-8
|
||||
|
||||
DirectorySlash Off
|
||||
|
||||
<IfModule mod_rewrite.c>
|
||||
|
||||
# Enable rewrite rules
|
||||
|
@ -40,10 +40,6 @@ class dbJSON
|
||||
$this->dbBackup = $array;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Log::set(__METHOD__.LOG_SEP.'File '.$file.' does not exists');
|
||||
}
|
||||
}
|
||||
|
||||
public function restoreDB()
|
||||
@ -58,6 +54,7 @@ class dbJSON
|
||||
return count($this->db);
|
||||
}
|
||||
|
||||
// Returns the value from the field.
|
||||
public function getField($field)
|
||||
{
|
||||
if(isset($this->db[$field])) {
|
||||
@ -86,24 +83,24 @@ class dbJSON
|
||||
return file_put_contents($this->file, $data, LOCK_EX);
|
||||
}
|
||||
|
||||
// Returns a JSON encoded string on success or FALSE on failure.
|
||||
private function serialize($data)
|
||||
{
|
||||
// DEBUG: La idea es siempre serializar en json, habria que ver si siempre esta cargado json_enconde y decode
|
||||
if(JSON) {
|
||||
return json_encode($data, JSON_PRETTY_PRINT);
|
||||
}
|
||||
|
||||
return serialize($data);
|
||||
return json_encode($data, JSON_PRETTY_PRINT);
|
||||
}
|
||||
|
||||
// Returns the value encoded in json in appropriate PHP type.
|
||||
private function unserialize($data)
|
||||
{
|
||||
// DEBUG: La idea es siempre serializar en json, habria que ver si siempre esta cargado json_enconde y decode
|
||||
if(JSON) {
|
||||
return json_decode($data, true);
|
||||
// NULL is returned if the json cannot be decoded.
|
||||
$decode = json_decode($data, true);
|
||||
|
||||
// If NULL returns false.
|
||||
if(empty($decode)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return unserialize($data);
|
||||
return $decode;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
@ -6,10 +6,23 @@
|
||||
function updateBludit()
|
||||
{
|
||||
global $Site;
|
||||
global $dbPosts;
|
||||
|
||||
// Check if Bludit need to be update.
|
||||
if( ($Site->currentBuild() < BLUDIT_BUILD) || isset($_GET['update']) )
|
||||
{
|
||||
// --- Update dates ---
|
||||
foreach($dbPosts->db as $key=>$post)
|
||||
{
|
||||
$date = Date::format($post['date'], 'Y-m-d H:i', DB_DATE_FORMAT);
|
||||
if($date !== false) {
|
||||
$dbPosts->setPostDb($key,'date',$date);
|
||||
}
|
||||
}
|
||||
|
||||
$dbPosts->save();
|
||||
|
||||
// --- Update directories ---
|
||||
$directories = array(
|
||||
PATH_POSTS,
|
||||
PATH_PAGES,
|
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB |
Before Width: | Height: | Size: 1005 B After Width: | Height: | Size: 1005 B |
@ -23,4 +23,4 @@ elseif( $_POST['type']==='post' ) {
|
||||
|
||||
echo json_encode( array('slug'=>$slug) );
|
||||
|
||||
?>
|
||||
?>
|
@ -4,7 +4,7 @@
|
||||
define('BLUDIT_VERSION', 'githubVersion');
|
||||
define('BLUDIT_CODENAME', '');
|
||||
define('BLUDIT_RELEASE_DATE', '');
|
||||
define('BLUDIT_BUILD', '20151119');
|
||||
define('BLUDIT_BUILD', '20160122');
|
||||
|
||||
// Debug mode
|
||||
define('DEBUG_MODE', TRUE);
|
||||
@ -21,24 +21,28 @@ if(DEBUG_MODE)
|
||||
|
||||
// PHP paths
|
||||
// PATH_ROOT and PATH_BOOT are defined in index.php
|
||||
define('PATH_LANGUAGES', PATH_ROOT.'languages'.DS);
|
||||
define('PATH_THEMES', PATH_ROOT.'themes'.DS);
|
||||
define('PATH_PLUGINS', PATH_ROOT.'plugins'.DS);
|
||||
define('PATH_KERNEL', PATH_ROOT.'kernel'.DS);
|
||||
define('PATH_LANGUAGES', PATH_ROOT.'bl-languages'.DS);
|
||||
define('PATH_THEMES', PATH_ROOT.'bl-themes'.DS);
|
||||
define('PATH_PLUGINS', PATH_ROOT.'bl-plugins'.DS);
|
||||
define('PATH_KERNEL', PATH_ROOT.'bl-kernel'.DS);
|
||||
define('PATH_CONTENT', PATH_ROOT.'bl-content'.DS);
|
||||
|
||||
define('PATH_ABSTRACT', PATH_KERNEL.'abstract'.DS);
|
||||
define('PATH_RULES', PATH_KERNEL.'boot'.DS.'rules'.DS);
|
||||
define('PATH_HELPERS', PATH_KERNEL.'helpers'.DS);
|
||||
define('PATH_AJAX', PATH_KERNEL.'ajax'.DS);
|
||||
define('PATH_JS', PATH_KERNEL.'js'.DS);
|
||||
define('PATH_CONTENT', PATH_ROOT.'content'.DS);
|
||||
|
||||
define('PATH_POSTS', PATH_CONTENT.'posts'.DS);
|
||||
define('PATH_PAGES', PATH_CONTENT.'pages'.DS);
|
||||
define('PATH_DATABASES', PATH_CONTENT.'databases'.DS);
|
||||
define('PATH_PLUGINS_DATABASES', PATH_CONTENT.'databases'.DS.'plugins'.DS);
|
||||
define('PATH_TMP', PATH_CONTENT.'tmp'.DS);
|
||||
define('PATH_UPLOADS', PATH_CONTENT.'uploads'.DS);
|
||||
|
||||
define('PATH_UPLOADS_PROFILES', PATH_UPLOADS.'profiles'.DS);
|
||||
define('PATH_UPLOADS_THUMBNAILS', PATH_UPLOADS.'thumbnails'.DS);
|
||||
|
||||
define('PATH_ADMIN', PATH_KERNEL.'admin'.DS);
|
||||
define('PATH_ADMIN_THEMES', PATH_ADMIN.'themes'.DS);
|
||||
define('PATH_ADMIN_CONTROLLERS', PATH_ADMIN.'controllers'.DS);
|
||||
@ -76,7 +80,7 @@ define('NO_PARENT_CHAR', '3849abb4cb7abd24c2d8dac17b216f17');
|
||||
define('POSTS_PER_PAGE_ADMIN', 10);
|
||||
|
||||
// Check if JSON encode and decode are enabled.
|
||||
define('JSON', function_exists('json_encode'));
|
||||
// define('JSON', function_exists('json_encode'));
|
||||
|
||||
// TRUE if new posts hand-made set published, or FALSE for draft.
|
||||
define('CLI_STATUS', 'published');
|
||||
@ -132,7 +136,6 @@ include(PATH_KERNEL.'parsedown.class.php');
|
||||
include(PATH_KERNEL.'parsedownextra.class.php');
|
||||
include(PATH_KERNEL.'security.class.php');
|
||||
|
||||
|
||||
// Include Helpers Classes
|
||||
include(PATH_HELPERS.'text.class.php');
|
||||
include(PATH_HELPERS.'log.class.php');
|
||||
@ -152,7 +155,7 @@ include(PATH_HELPERS.'image.class.php');
|
||||
Session::start();
|
||||
if(Session::started()===false) {
|
||||
Log::set('init.php'.LOG_SEP.'Error occurred when trying to start the session.');
|
||||
exit('Bludit CMS. Failed to start session.');
|
||||
exit('Bludit. Failed to start session.');
|
||||
}
|
||||
|
||||
// Objects
|
||||
@ -165,7 +168,10 @@ $Url = new Url();
|
||||
$Parsedown = new ParsedownExtra();
|
||||
$Security = new Security();
|
||||
|
||||
// HTML PATHS
|
||||
// --- Relative paths ---
|
||||
// This paths are relative for the user / web browsing.
|
||||
|
||||
// Base URL
|
||||
// The user can define the base URL.
|
||||
// Left empty if you want to Bludit try to detect the base URL.
|
||||
$base = '';
|
||||
@ -188,30 +194,29 @@ else {
|
||||
$base = '/';
|
||||
}
|
||||
|
||||
define('HTML_PATH_ROOT', $base);
|
||||
|
||||
// Paths for themes
|
||||
define('HTML_PATH_THEMES', HTML_PATH_ROOT.'themes/');
|
||||
define('HTML_PATH_THEME', HTML_PATH_ROOT.'themes/'.$Site->theme().'/');
|
||||
define('HTML_PATH_ROOT', $base);
|
||||
define('HTML_PATH_THEMES', HTML_PATH_ROOT.'bl-themes/');
|
||||
define('HTML_PATH_THEME', HTML_PATH_THEMES.$Site->theme().'/');
|
||||
define('HTML_PATH_THEME_CSS', HTML_PATH_THEME.'css/');
|
||||
define('HTML_PATH_THEME_JS', HTML_PATH_THEME.'js/');
|
||||
define('HTML_PATH_THEME_IMG', HTML_PATH_THEME.'img/');
|
||||
|
||||
define('HTML_PATH_ADMIN_ROOT', HTML_PATH_ROOT.'admin/');
|
||||
define('HTML_PATH_ADMIN_THEME', HTML_PATH_ROOT.'kernel/admin/themes/'.$Site->adminTheme().'/');
|
||||
define('HTML_PATH_ADMIN_THEME', HTML_PATH_ROOT.'bl-kernel/admin/themes/'.$Site->adminTheme().'/');
|
||||
define('HTML_PATH_ADMIN_THEME_JS', HTML_PATH_ADMIN_THEME.'js/');
|
||||
define('HTML_PATH_ADMIN_THEME_CSS', HTML_PATH_ADMIN_THEME.'css/');
|
||||
define('HTML_PATH_ADMIN_THEME_IMG', HTML_PATH_ADMIN_THEME.'img/');
|
||||
|
||||
define('HTML_PATH_UPLOADS', HTML_PATH_ROOT.'content/uploads/');
|
||||
define('HTML_PATH_UPLOADS', HTML_PATH_ROOT.'bl-content/uploads/');
|
||||
define('HTML_PATH_UPLOADS_PROFILES', HTML_PATH_UPLOADS.'profiles/');
|
||||
define('HTML_PATH_UPLOADS_THUMBNAILS', HTML_PATH_UPLOADS.'thumbnails/');
|
||||
define('HTML_PATH_PLUGINS', HTML_PATH_ROOT.'plugins/');
|
||||
define('HTML_PATH_PLUGINS', HTML_PATH_ROOT.'bl-plugins/');
|
||||
|
||||
define('JQUERY', HTML_PATH_ADMIN_THEME_JS.'jquery.min.js');
|
||||
|
||||
// PHP paths with dependency
|
||||
define('PATH_THEME', PATH_ROOT.'themes'.DS.$Site->theme().DS);
|
||||
// --- PHP paths with dependency ---
|
||||
// This paths are absolutes for the OS.
|
||||
define('PATH_THEME', PATH_ROOT.'bl-themes'.DS.$Site->theme().DS);
|
||||
define('PATH_THEME_PHP', PATH_THEME.'php'.DS);
|
||||
define('PATH_THEME_CSS', PATH_THEME.'css'.DS);
|
||||
define('PATH_THEME_JS', PATH_THEME.'js'.DS);
|
||||
@ -219,6 +224,7 @@ define('PATH_THEME_IMG', PATH_THEME.'img'.DS);
|
||||
define('PATH_THEME_LANG', PATH_THEME.'languages'.DS);
|
||||
|
||||
// --- Absolute paths with domain ---
|
||||
// This paths are absolutes for the user / web browsing.
|
||||
define('DOMAIN', $Site->domain());
|
||||
define('DOMAIN_BASE', DOMAIN.HTML_PATH_ROOT);
|
||||
define('DOMAIN_THEME_CSS', DOMAIN.HTML_PATH_THEME_CSS);
|
@ -27,6 +27,11 @@ function buildThemes()
|
||||
{
|
||||
$database = file_get_contents($languageFilename);
|
||||
$database = json_decode($database, true);
|
||||
if(empty($database)) {
|
||||
Log::set('99.themes.php'.LOG_SEP.'JSON Error on theme '.$themePath);
|
||||
break;
|
||||
}
|
||||
|
||||
$database = $database['theme-data'];
|
||||
|
||||
$database['dirname'] = basename($themePath);
|
||||
@ -38,6 +43,10 @@ function buildThemes()
|
||||
{
|
||||
$metadataString = file_get_contents($filenameMetadata);
|
||||
$metadata = json_decode($metadataString, true);
|
||||
if(empty($metadata)) {
|
||||
Log::set('99.themes.php'.LOG_SEP.'JSON Error on theme '.$themePath);
|
||||
break;
|
||||
}
|
||||
|
||||
$database = $database + $metadata;
|
||||
|
||||
@ -55,9 +64,9 @@ function buildThemes()
|
||||
// ============================================================================
|
||||
|
||||
// Load the language file
|
||||
$languageFilename = PATH_THEME.DS.'languages'.DS.$Site->locale().'.json';
|
||||
$languageFilename = PATH_THEME.'languages'.DS.$Site->locale().'.json';
|
||||
if( !Sanitize::pathFile($languageFilename) ) {
|
||||
$languageFilename = PATH_THEME.DS.'languages'.DS.'en_US.json';
|
||||
$languageFilename = PATH_THEME.'languages'.DS.'en_US.json';
|
||||
}
|
||||
|
||||
if( Sanitize::pathFile($languageFilename) )
|
@ -152,12 +152,15 @@ class dbSite extends dbJSON
|
||||
return $this->getField('footer');
|
||||
}
|
||||
|
||||
// Returns the url site.
|
||||
// Returns the full domain and base url.
|
||||
// For example, http://www.domain.com/bludit/
|
||||
public function url()
|
||||
{
|
||||
return $this->getField('url');
|
||||
}
|
||||
|
||||
// Returns the protocol and the domain, without the base url.
|
||||
// For example, http://www.domain.com
|
||||
public function domain()
|
||||
{
|
||||
// If the URL field is not set, try detect the domain.
|
||||
@ -261,4 +264,4 @@ class dbSite extends dbJSON
|
||||
return date_default_timezone_set($timezone);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user