Compare commits

...

3 Commits
v0.1 ... master

7 changed files with 58 additions and 3 deletions

View File

@ -2,6 +2,7 @@
class Page
{
public $name, $filename;
public static $parentDir = "../";
public static $contentFolder = "content/";
public function __construct($name, $filename)
@ -26,11 +27,24 @@ class Page
return $this->filename;
}
public function nodir($item)
{
return (!is_dir(Page::$parentDir . Page::$contentFolder . $item));
}
public static function fileList()
{
$dirContent = scandir(Page::$parentDir . Page::$contentFolder);
$files = (array_filter($dirContent, "Page::nodir"));
return $files;
}
// For future-uses...
public function getName()
{
return $this->name;
}
}
?>

View File

@ -3,7 +3,7 @@
function start_html($title)
{
print "
<html>
<!DOCTYPE html>
<head>
<title>$title</title>
</head>

View File

@ -3,6 +3,7 @@ function terminate($message="")
{
print "$message\n";
footer();
exit(1);
exit(0);
}
?>

View File

@ -78,7 +78,6 @@ $contactPage = new Page("Contact", "contact.html");
}
$dirContent = scandir(Page::$contentFolder);
$files = (array_filter($dirContent, "nodir"));
// Iterate through all the files for a match (from ?content=)

28
user/editfile.php Normal file
View File

@ -0,0 +1,28 @@
<?php
require ("../includes/content.php");
require ("../includes/miscfunc.php");
require ("../includes/htmlcode.php");
/*regexp to strip away '..', '/' and so forth. Filename must now be in the
format of myfile.ext, where myfile can be 1 to 20 chars long (including '-'
and '_') and ext can be
from 1 to 4 chars.*/
$filename = $_GET['file'];
preg_match_all("/[a-z_\-0-9]{1,30}\.[a-z]{1,4}/i", $filename, $checkedFilename);
$file = Page::$parentDir . Page::$contentFolder . $checkedFilename[0][0];
if(isset($_POST['content']))
{
$postedContent = $_POST['content'];
file_put_contents($file, $postedContent);
}
start_html("Edit file");
print "<form action=\"\" method=\"post\">\n";
$content = file_get_contents($file);
print "<textarea name='content' cols='80' rows='30'>\n" . ($content) . "\n</textarea>";
print "<br/>\n
<input type=\"submit\" value=\"Save file\"/>
</form>";
end_html();
?>

10
user/editfiles.php Normal file
View File

@ -0,0 +1,10 @@
<?php
require ("../includes/content.php");
require ("../includes/miscfunc.php");
$files = Page::fileList();
foreach($files as $file)
{
print "<a href=\"editfile.php?file=$file\">$file</a><br/>\n";
}
?>

View File

@ -12,6 +12,9 @@ include "../includes/login.inc";
<a href="edit.php">Edit existing post</a>
</p>
<p>
<a href="editfiles.php">Edit content files</a>
</p>
<p>
<a href="logout.php">Logout</a>
</p>