END_OF_CONTACT;
}
public function display_close($show_contact = true) {
if ($show_contact) {
$this->display_contact();
}
echo <<
END_OF_CLOSE;
ob_flush();
}
}
class blank_page extends cms {
}
class index extends cms {
public function display() {
$this->display_head();
$this->display_exhibits();
echo "
OTHER_PROJECTS;
// Because of the CSS necessary for the animations,
// the contact link needs to be in #portfolio to clear
// the floats.
$this->display_contact();
echo "
END_OF_FORM;
} else {
echo <<
END_OF_FORM;
}
}
}
class archive extends cms {
public function __construct() {
parent::__construct();
}
private function check_exists() {
$sql = "SELECT COUNT(*) FROM notes
WHERE url = ?";
$results = $this->query($sql, "s", $_GET['note']);
if ($results[0]["COUNT(*)"] != 1) {
$this->not_found();
}
}
public function display() {
// this really needs its own pagination...
// there should be a class for that.
$this->display_head();
switch (true) {
case (isset($_GET['year']) && !isset($_GET['month'])
&& !isset($_GET['day'])):
$sql = "SELECT title, url, date_posted, text
FROM notes WHERE YEAR(date_posted) = ?
ORDER BY date_posted DESC";
$result = $this->query($sql, "d",
$_GET['year']);
break;
case (isset($_GET['year']) && isset($_GET['month'])
&& !isset($_GET['day'])):
$sql = "SELECT title, url, date_posted, text
FROM notes WHERE YEAR(date_posted) = ?
AND MONTH(date_posted) = ?
ORDER BY date_posted DESC";
$result = $this->query($sql, "dd",
$_GET['year'], $_GET['month']);
break;
case (isset($_GET['year']) && isset($_GET['month'])
&& isset($_GET['day'])):
$sql = "SELECT title, url, date_posted, text
FROM notes WHERE YEAR(date_posted) = ?
AND MONTH(date_posted) = ?
AND DAY(date_posted) = ?
ORDER BY date_posted DESC";
$result = $this->query($sql, "ddd",
$_GET['year'], $_GET['month'],
$_GET['day']);
break;
}
if (count($result) >= 1) {
echo "