'."\n";
if(fwrite($handle, $content) === FALSE) {
echo "WARNING: Cannot write to file ($filename)";
}
fclose($handle);
chmod($filename, 0666);
} else {
echo "WARNING: Cannot open file $filename for writing.\n";
}
}
function write_links_files($linksdir, $keyword) {
global $num_links_files;
$keyword = preg_replace('/ /', '-', $keyword);
$fnkwd = preg_replace('/-/', '_', $keyword);
$content = ''."\n";
for($i=1; $i<=$num_links_files; $i++) {
$filename = $linksdir.$fnkwd."_page_".$i.".php";
if($handle = fopen($filename, 'w')) {
if(fwrite($handle, $content) === FALSE) {
echo "WARNING: Cannot write to file ($filename)";
}
fclose($handle);
chmod($filename, 0666);
} else {
echo "WARNING: Cannot open file $filename for writing.\n";
}
}
}
function delete_files($kwdir, $linksdir, $keyword) {
global $num_links_files;
$keyword = preg_replace('/ /', '-', $keyword);
$ukeyword = preg_replace('/-/', '_', $keyword);
$filename = $kwdir.$keyword.".php";
if(is_file($filename)) {
unlink($filename);
}
for ($i=1; $i<=$num_links_files; $i++) {
$filename = $linksdir.$ukeyword."_page_".$i.".php";
if(is_file($filename)) {
unlink($filename);
}
}
}
if(isset($_POST['updatebutton']) && $_POST['updatebutton'] == 'Update') {
// echo "Update button clicked.
";
if(isset($_POST['keyword']) && isset($_POST['article'])) {
$kw_array = $_POST['keyword'];
$art_array = $_POST['article'];
for($i = 0; $i < count($kw_array); $i++) {
$keyword = $kw_array[$i];
$article = $art_array[$i];
if(preg_match('/^[a-zA-Z0-9\-\_\.\%\+]+$/', $keyword)
&& preg_match('/^[a-zA-Z0-9\-\_\.\%\+ #]+$/', $article)
&& $keyword != "sitemap" && $keyword != "toplinks") {
if ($keyword != "index") {
delete_files($dir_kw, $dir_links, $keyword);
write_links_files($dir_links, $keyword);
}
write_keyword_file($dir_kw, $keyword, $article);
}
}
}
} elseif(isset($_POST['addbutton']) && $_POST['addbutton'] == 'Add') {
// echo "Add button clicked.
";
$keywords = preg_split("/[\n\r\t,;]+/", $_POST['newkeywords']);
foreach ($keywords as $keyword) {
$keyword = strtolower($keyword);
if(preg_match('/^[a-z0-9\.]+[a-z0-9\-\_\.\%\+ ]*$/', $keyword)
&& $keyword != "index" && $keyword != "sitemap" && $keyword != "toplinks") {
delete_files($dir_kw, $dir_links, $keyword);
write_keyword_file($dir_kw, $keyword, '# random article #');
write_links_files($dir_links, $keyword);
}
}
} elseif(isset($_POST['deletebutton']) && $_POST['deletebutton'] == 'Delete') {
// echo "Delete button clicked.
";
if(isset($_POST['delete']) && isset($_POST['keyword'])) {
$kw_array = $_POST['keyword'];
foreach($_POST['delete'] as $delete) {
$keyword = $kw_array[$delete];
if(preg_match('/^[a-zA-Z0-9\-\_\.\%\+]+$/', $keyword)
&& $keyword != "index" && $keyword != "sitemap" && $keyword != "toplinks") {
delete_files($dir_kw, $dir_links, $keyword);
}
}
} else {
// echo "No checkbox activated.
";
}
}
}
}
$token = md5(uniqid(mt_rand(), true));
$_SESSION['token'] = $token;
// check permissions
if (!is_writable($dir_kw)) {
die("WARNING: Cannot write main directory.
Updating and creation of keyword files may not work.
Please adjust permissions.
");
}
if (!is_writable($dir_links)) {
die("WARNING: Cannot write links directory.
Creation of new links page files will fail.
Please adjust permissions.
");
}
// read article file names
unset($article_file_name);
unset($keyword);
$article_file_name[] = "# random article #";
if (is_dir($dir_articles)) {
if ($dh = opendir($dir_articles)) {
while ($file = readdir($dh)) {
if ($file != "." && $file != ".." && !empty($file) && !is_dir($file)) {
$article_file_name[] = $file;
}
}
closedir($dh);
@sort($article_file_name, SORT_STRING);
}
}
// read keyword files in root folder
if ($handle = opendir($dir_kw)) {
while ($file = readdir($handle)) {
if (preg_match('/\.php$/', $file)) {
if ($file != "index.php"
&& $file != "sitemap.php"
&& $file != "toplinks.php"
&& $file != "links_template.php"
&& $file != "phpinfo.php"
) {
$keyword[] = str_replace(".php", "", $file);
}
}
}
closedir($handle);
@sort($keyword, SORT_STRING);
}
?>
KEYWORD TO ARTICLE ASSIGNMENT