-
Notifications
You must be signed in to change notification settings - Fork 0
/
example.php
81 lines (68 loc) · 2.34 KB
/
example.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<!DOCTYPE html>
<head>
<title>CommentMan.php (Test page)</title>
<meta charset="utf-8">
</head>
<html>
<?php
include_once("CommentMan.php");
/* Generate HTML code for comments thread */
function html_thread(array $thread, $date_format='%c',
$locale='en_US.UTF-8', $parent_id=0) {
setlocale(LC_TIME, $locale);
foreach ($thread as $subthread) {
if ($subthread['parent_id'] == $parent_id) {
echo '<div class="comment">' . PHP_EOL;
echo '<div class="comment_message"><p>'.
$subthread['message'] . '</div>' . PHP_EOL;
echo '<div class="comment_signature">' .
'<span class="comment_username">' .
$subthread['username'] . '</span>;' . PHP_EOL;
echo '<span>' .
'<time datetime=' .
strftime('%Y-%m-%dT%H:%M:%S',
strtotime($subthread['timestamp'])) . '>' .
strftime($date_format,
strtotime($subthread['timestamp'])) .
'</time></span>' . PHP_EOL;
echo ' • ';
echo '<span class="comment-reply">'. PHP_EOL;
echo '<a href="#">Reply</a></span>' . PHP_EOL;
echo '</div>' . PHP_EOL;
if ($subthread['children']) {
html_thread($subthread['children'], $date_format,
$locale, $subthread['id']);
}
echo '</div>' . PHP_EOL;
}
}
}
// Start a connection with the database
$comments_db = new CommentMan('comments.db', true);
// Post identifier
$post_id = 2;
// Create first comment
$ca = new Comment();
$ca->parent_id = 0;
$ca->post_id = $post_id;
$ca->ip = $_SERVER['REMOTE_ADDR'];
$ca->username = 'Ipsum of Lorem';
$ca->message = 'First message';
$ca->prepare();
// Create second comment
$cb = new Comment();
$cb->parent_id = 1;
$cb->post_id = $post_id;
$cb->ip = $_SERVER['REMOTE_ADDR'];
$cb->username = 'Lorem of Ipsum';
$cb->message = 'Reply to first message';
$cb->prepare();
// Add the comments to the database
$comments_db->add($ca);
$comments_db->add($cb);
// Get the tree-like thread array
$thread = $comments_db->fetch_thread($post_id);
// Generate HTML
html_thread($thread, $date_format="on %B, %Y");
?>
</html>