1
0
Fork 0
chickadee/common.php

44 lines
1021 B
PHP

<?php
function make_post_link( $a, $post=true ) {
if ( $post ) {
$parts = split_filename( $a );
return sprintf(
'<a href="post.php?f=%s">%s</a>',
$parts["encoded"],
$parts["title"]
);
} else {
return '<a href="media/' . $a . '" target="_blank">media/' . $a . '</a>';
}
}
function title_from_filename( $fn ) {
$fn = str_replace( ".md", "", $fn );
$fn = urldecode( $fn );
return $fn;
}
function make_date_from_stamp( $ts, $ds=DATE_STYLE ) {
// Expects "time" from split_filename
$date = date( $ds, (int)$ts );
return $date;
}
function split_filename( $fn, $ds=DATE_STYLE ) {
$parts = explode( "_", $fn, 2);
$out = [];
$out["time"] = make_date_from_stamp( $parts[0], $ds );
$out["title"] = title_from_filename( $parts[1] );
$out["raw"] = urlencode( $fn );
$out["encoded"] = $fn;
return $out;
}
function read_post( $fn_raw ) {
// Expects "raw" from split_filename
$path = "posts/" . $fn_raw;
$data = file_get_contents( $path );
return $data;
}