Hello web interface (winter remix for David)
This commit is contained in:
parent
11424b3635
commit
77cf31de60
5 changed files with 27 additions and 11 deletions
|
@ -1,4 +1,4 @@
|
|||
Yellow 0.4.8
|
||||
Yellow 0.4.9
|
||||
============
|
||||
Yellow is for people who make websites. [Visit website](http://datenstrom.se/yellow).
|
||||
|
||||
|
|
|
@ -29,6 +29,7 @@ contentPagination = page
|
|||
contentExtension = .txt
|
||||
configExtension = .ini
|
||||
errorPageFile = error(.*).txt
|
||||
newPageFile = new(.*).txt
|
||||
textStringFile = text(.*).ini
|
||||
parser = markdownextra
|
||||
parserSafeMode = 0
|
||||
|
@ -38,7 +39,6 @@ webinterfaceServerScheme = http
|
|||
webinterfaceUserHashAlgorithm = bcrypt
|
||||
webinterfaceUserHashCost = 10
|
||||
webinterfaceUserFile = user.ini
|
||||
webinterfaceNewPage = default
|
||||
webinterfaceFilePrefix = published
|
||||
commandlineDefaultFile = index.html
|
||||
commandlineErrorFile = error404.html
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
// Web interface core plugin
|
||||
class YellowWebinterface
|
||||
{
|
||||
const Version = "0.4.4";
|
||||
const Version = "0.4.5";
|
||||
var $yellow; //access to API
|
||||
var $active; //web interface is active? (boolean)
|
||||
var $userLoginFailed; //web interface login failed? (boolean)
|
||||
|
@ -27,7 +27,6 @@ class YellowWebinterface
|
|||
$this->yellow->config->setDefault("webinterfaceUserHashAlgorithm", "bcrypt");
|
||||
$this->yellow->config->setDefault("webinterfaceUserHashCost", "10");
|
||||
$this->yellow->config->setDefault("webinterfaceUserFile", "user.ini");
|
||||
$this->yellow->config->setDefault("webinterfaceNewPage", "default");
|
||||
$this->yellow->config->setDefault("webinterfaceFilePrefix", "published");
|
||||
$this->users->load($this->yellow->config->get("configDir").$this->yellow->config->get("webinterfaceUserFile"));
|
||||
}
|
||||
|
@ -475,10 +474,13 @@ class YellowWebinterface
|
|||
$this->yellow->page->location, $this->yellow->config->get("contentDir"),
|
||||
$this->yellow->config->get("contentRootDir"), $this->yellow->config->get("contentHomeDir"),
|
||||
$this->yellow->config->get("contentDefaultFile"), $this->yellow->config->get("contentExtension"));
|
||||
$fileName = $this->yellow->toolbox->findNameFromFile($fileName,
|
||||
$this->yellow->config->get("configDir"), $this->yellow->config->get("webinterfaceNewPage"),
|
||||
$this->yellow->config->get("contentExtension"), true);
|
||||
$fileName = $this->yellow->toolbox->findFileNew($fileName,
|
||||
$this->yellow->config->get("configDir"), $this->yellow->config->get("newPageFile"),
|
||||
$this->yellow->config->get("contentDefaultFile"));
|
||||
$fileData = $this->yellow->toolbox->getFileData($fileName);
|
||||
$fileData = preg_replace("/@date/i", date("Y-m-d"), $fileData);
|
||||
$fileData = preg_replace("/@username/i", $this->users->getName(), $fileData);
|
||||
$fileData = preg_replace("/@userlanguage/i", $this->users->getLanguage(), $fileData);
|
||||
if(!empty($title)) $fileData = $this->updateDataTitle($fileData, $title);
|
||||
return $fileData;
|
||||
}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
// Yellow main class
|
||||
class Yellow
|
||||
{
|
||||
const Version = "0.4.8";
|
||||
const Version = "0.4.9";
|
||||
var $page; //current page
|
||||
var $pages; //pages from file system
|
||||
var $config; //configuration
|
||||
|
@ -48,6 +48,7 @@ class Yellow
|
|||
$this->config->setDefault("configExtension", ".ini");
|
||||
$this->config->setDefault("configFile", "config.ini");
|
||||
$this->config->setDefault("errorPageFile", "error(.*).txt");
|
||||
$this->config->setDefault("newPageFile", "new(.*).txt");
|
||||
$this->config->setDefault("textStringFile", "text(.*).ini");
|
||||
$this->config->setDefault("parser", "markdownextra");
|
||||
$this->config->setDefault("parserSafeMode", "0");
|
||||
|
@ -1740,13 +1741,13 @@ class YellowToolbox
|
|||
return $fileNames;
|
||||
}
|
||||
|
||||
// Return file/theme/template name from file path
|
||||
function findNameFromFile($fileName, $pathBase, $nameDefault, $fileExtension, $includeFileName = false)
|
||||
// Return theme/template name from file path
|
||||
function findNameFromFile($fileName, $pathBase, $nameDefault, $fileExtension)
|
||||
{
|
||||
$name = "";
|
||||
if(preg_match("/^.*\/(.+?)$/", dirname($fileName), $matches)) $name = $this->normaliseName($matches[1]);
|
||||
if(!is_file("$pathBase$name$fileExtension")) $name = $this->normaliseName($nameDefault);
|
||||
return $includeFileName ? "$pathBase$name$fileExtension" : $name;
|
||||
return $name;
|
||||
}
|
||||
|
||||
// Return language from file path
|
||||
|
@ -1762,6 +1763,19 @@ class YellowToolbox
|
|||
return $language;
|
||||
}
|
||||
|
||||
// Return file path for new page
|
||||
function findFileNew($fileName, $pathBase, $fileNew, $fileDefault)
|
||||
{
|
||||
if(preg_match("/^.*\/(.+?)$/", dirname($fileName), $matches)) $name = $this->normaliseName($matches[1]);
|
||||
$fileName = strreplaceu("(.*)", $name, $pathBase.$fileNew);
|
||||
if(!is_file($fileName))
|
||||
{
|
||||
$name = $this->normaliseName($fileDefault, true, true);
|
||||
$fileName = strreplaceu("(.*)", $name, $pathBase.$fileNew);
|
||||
}
|
||||
return $fileName;
|
||||
}
|
||||
|
||||
// Return file path from title
|
||||
function findFileFromTitle($titlePrefix, $titleText, $fileName, $fileDefault, $fileExtension)
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue