76 lines
2.9 KiB
PHP
Executable file
76 lines
2.9 KiB
PHP
Executable file
#!/usr/bin/php
|
|
<?php
|
|
include '/opt/md2html/src/strings.php';
|
|
include '/opt/md2html/libs/Parsedown.php';
|
|
$parsedown = new Parsedown();
|
|
if(count($argv) == 1 || count($argv) > 3) {
|
|
echo "Arguments not possible.\n";
|
|
echo $usage;
|
|
} elseif (isset($argv[2])) {
|
|
if(substr_compare($argv[1], ".md", -3) == 0){
|
|
if(substr_compare($argv[2], ".txt", -4) == 0 ||
|
|
substr_compare($argv[2], ".html", -5) == 0) {
|
|
if(file_exists($argv[1])){
|
|
$handler = fopen($argv[1], "r");
|
|
$content = fread($handler, filesize($argv[1]));
|
|
fclose($handler);
|
|
$content = $parsedown
|
|
->setBreaksEnabled(true)
|
|
->text($content);
|
|
if(file_exists($argv[2])){
|
|
echo "The file $argv[2] already exists.\nDo you want to override it? (Y)es / (N)o ";
|
|
$answer = trim(fgets(STDIN));
|
|
if(in_array($answer, array("y","yes","Yes","YES","Y"))) {
|
|
$whandler = fopen($argv[2], "w+");
|
|
if(substr_compare($argv[2], ".html", -5) == 0){
|
|
$content = $htmlbegin . $content . $htmlend;
|
|
}
|
|
if(fwrite($whandler, $content)){
|
|
echo "File sucessfully written.";
|
|
} else {
|
|
echo "An error occured.";
|
|
}
|
|
fclose($whandler);
|
|
} else {
|
|
echo "File not changed.";
|
|
}
|
|
} else {
|
|
$whandler = fopen($argv[2], "x");
|
|
if(substr_compare($argv[2], ".html", -5) == 0){
|
|
$content = $htmlbegin . $content . $htmlend;
|
|
}
|
|
if(fwrite($whandler, $content)){
|
|
echo "HTML file sucessfully written.";
|
|
} else {
|
|
echo "An error occured.";
|
|
}
|
|
fclose($whandler);
|
|
}
|
|
}
|
|
} else {
|
|
echo "The output file is neither a HTML file nor a TXT file.";
|
|
}
|
|
} else {
|
|
echo "This is not a Markdown file!";
|
|
}
|
|
} elseif(isset($argv[1])){
|
|
if(in_array($argv[1], array("--help","-h","-?","--usage","-u"))) {
|
|
echo $usage;
|
|
} else {
|
|
if(substr_compare($argv[1], ".md", -3) == 0){
|
|
if(file_exists($argv[1])){
|
|
$handler = fopen($argv[1], "r");
|
|
$content = fread($handler, filesize($argv[1]));
|
|
fclose($handler);
|
|
echo $parsedown
|
|
->setBreaksEnabled(true)
|
|
->text($content);
|
|
} else {
|
|
echo "The given file doesn't exist.";
|
|
}
|
|
} else {
|
|
echo "This is not a Markdown file!";
|
|
}
|
|
}
|
|
}
|
|
echo "\n";
|