htdocs/blog.php
<?php
// Blog page. This is the first page that the web server finds.
$pageInclude = 'blog';
$pageTitle = 'Blog';
// Output the page.
include '../includes/page-output.inc.php';
?>
htdocs/html/about-me.html
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod ultrices lacus, id interdum nunc vehicula non. Maecenas maximus ultricies mi id tempus. Integer eleifend nisi non nisl finibus, ut volutpat ipsum hendrerit. Phasellus tempus sapien vitae laoreet egestas. Aliquam id feugiat mi. Etiam justo leo, ornare vitae lobortis eget, placerat non arcu. Donec mollis orci ut odio tempor, eu consequat nunc varius. Donec id convallis augue. Suspendisse eget dui venenatis, rhoncus metus non, aliquam elit. Integer a odio sed tortor laoreet sagittis. Nulla urna est, pretium nec vulputate quis, vulputate a orci. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed tincidunt varius metus vitae pellentesque. Etiam semper, augue eu venenatis fringilla, enim purus ullamcorper tortor, non aliquet elit urna et lectus. Aenean quis sem tellus.</p>
<p>Vestibulum iaculis mollis nunc, ut tempor erat scelerisque non. Phasellus mattis in odio quis luctus. Mauris eget commodo diam, at lacinia lorem. Vivamus tincidunt nulla et nulla varius, et tincidunt est aliquet. Curabitur sed porttitor risus. Cras rutrum egestas convallis. Mauris id posuere eros. Vivamus euismod nisi et gravida bibendum. Ut nec malesuada purus. Morbi hendrerit suscipit purus ac pretium. Maecenas sed gravida lacus. Vivamus in porttitor neque. Donec vel suscipit felis.</p>
<p>Ut dignissim quam sed neque malesuada, ut fermentum felis molestie. Aliquam eget hendrerit libero. Donec pretium, mi ac finibus accumsan, erat tortor venenatis tortor, at mattis lectus neque sit amet mi. Pellentesque diam tortor, convallis eu nunc eget, cursus ultrices quam. Nullam tortor tortor, aliquam vitae ipsum vel, lobortis ultrices arcu. Sed eu ante non lacus elementum tristique vel et enim. Suspendisse scelerisque lectus hendrerit mauris gravida finibus. Nam ac blandit orci, nec tincidunt nunc.</p>
<p>Duis sed faucibus enim, et suscipit augue. Phasellus lobortis elit ex, sed varius enim gravida in. Mauris finibus velit sed ultricies tincidunt. Nullam viverra nisi enim. Sed accumsan quis turpis vitae sollicitudin. Mauris dignissim facilisis justo nec posuere. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Maecenas varius sit amet velit eu efficitur.</p>
<p>Pellentesque fringilla accumsan ante sit amet tincidunt. Nunc leo elit, mattis quis tellus sit amet, accumsan tristique enim. Morbi porta cursus commodo. Aenean eu purus sollicitudin, vulputate nisi sit amet, pellentesque nisi. Pellentesque placerat leo vel feugiat scelerisque. Aenean cursus viverra porta. Cras congue sem sem, non porttitor nibh tempus vestibulum. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Sed mattis convallis elit vel dapibus. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Etiam cursus dolor vel maximus pellentesque. Proin sed eleifend velit, sit amet dictum nisl. Vivamus cursus, velit vel euismod euismod, sem sem euismod velit, quis vestibulum est nisi at sapien.</p>
<p><a href="/blog.php">Random blog page link</a></p>
htdocs/html/blog.html
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis auctor sem a molestie tincidunt. Maecenas quis lectus diam. Nulla facilisi. In ante sem, sollicitudin vel feugiat in, auctor ac nunc. Donec dapibus enim ac arcu porta, et eleifend turpis commodo. Suspendisse feugiat vestibulum blandit. In hac habitasse platea dictumst. Nullam luctus, lectus faucibus finibus bibendum, ante nisl sodales libero, quis sodales diam quam quis erat. Fusce ut tincidunt lacus. In eu elit nisl. Praesent ultricies pretium lectus, a congue lacus. Donec gravida urna magna, vel euismod velit dapibus mollis. Nulla maximus, eros eget interdum dignissim, est felis accumsan velit, non lobortis nisi diam eu libero. Pellentesque dictum placerat nisl sit amet semper.</p>
<p>Sed dolor augue, placerat eu consequat tempor, consequat vitae tellus. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aenean ac augue tempor, convallis ex eu, hendrerit lacus. Suspendisse luctus nisi turpis, vel molestie diam faucibus ut. Ut eu mi hendrerit, eleifend nisl quis, cursus velit. Aenean fermentum euismod erat, et bibendum ante sagittis a. In egestas dui sit amet libero sollicitudin convallis. Vivamus ultrices volutpat ipsum a fermentum. In augue libero, egestas eget mi sit amet, semper aliquet nisl.</p>
<p>Nullam vitae laoreet arcu. Sed quis quam mi. Suspendisse sit amet semper eros. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nullam porttitor, velit blandit tempus efficitur, purus orci vulputate mauris, eu congue dui ante a lacus. Sed sollicitudin, enim non accumsan aliquam, nunc ante aliquam urna, et faucibus felis ligula nec ante. Aenean augue arcu, pellentesque sed sem quis, posuere bibendum odio. Mauris vulputate magna ut massa porta mollis. Cras consequat magna mattis massa accumsan rutrum. Quisque tristique, diam a iaculis venenatis, felis tellus vehicula quam, vel cursus orci eros vitae erat. Aenean imperdiet faucibus placerat. Duis mollis mattis orci, a ultricies mi ultricies quis. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum ornare mauris a porttitor placerat. Donec nec eros tristique, cursus quam sit amet, pretium enim. Sed bibendum nisi non odio placerat ultrices.</p>
<p>Mauris rutrum nisi mauris. Curabitur ac tincidunt massa. Maecenas vitae efficitur arcu. Nullam luctus aliquam justo. Mauris consectetur orci vitae tincidunt posuere. Quisque blandit ex in quam vulputate viverra. Proin turpis dui, sollicitudin eget vulputate ac, rutrum sed ipsum. Cras maximus justo massa, ac tincidunt urna ullamcorper sit amet. Sed dapibus magna neque, id scelerisque neque dapibus quis. Donec euismod mollis purus et efficitur. Suspendisse congue pulvinar molestie. Pellentesque non risus ultricies, fermentum nibh ut, sodales elit. Aliquam consequat porta justo, ac porttitor turpis pellentesque nec. Curabitur at nulla tempor, pulvinar augue vitae, pulvinar urna. Nunc efficitur libero nunc, ac auctor orci rhoncus vitae.</p>
<p>Integer quis malesuada odio. Mauris tristique laoreet enim, in sollicitudin ligula. Morbi fermentum accumsan nunc a viverra. Nulla ut odio ut sapien tincidunt accumsan euismod in ligula. Cras sagittis metus quam, non aliquet est commodo vel. Duis leo nunc, rhoncus vestibulum ipsum eu, ornare placerat lectus. Nam sit amet neque ut eros efficitur semper at vitae turpis. Curabitur eu erat porttitor, bibendum mauris ut, ultrices leo. Quisque condimentum mauris eu lacus suscipit, facilisis faucibus mauris facilisis. Praesent enim turpis, rhoncus eu pellentesque eget, porta id nunc. Fusce dignissim quam sit amet mi mattis mollis.</p>
includes/page-output.inc.php
<?php
// Set the path for the html directory. We are already in the includes directory by this point.
set_include_path(__DIR__.':../htdocs/html/');
// Draw the *full* page (not the static HTML - this is grabbed straight from Active CSS).
include 'header.inc.php';
include 'menu.inc.php';
include $pageInclude.'.html';
include 'footer.inc.php';
?>
includes/page-output-json.inc.php
<?php
// Alternative page to page-output.inc.php if you have dynamic content and/or need to handle JSON strings.
// Draw the page.
set_include_path(__DIR__.':../htdocs/html/');
// Is this an ajax call? Set a handy variable to true or false.
$acss = (isset($_POST['_ACSS']) && $_POST['_ACSS'] == 1) ? true : false;
// Was there an ajax type sent over? If so, we'll set a variable for it.
$isJson = (isset($_POST['_ACSSTYPE']) && $_POST['_ACSSTYPE'] == 'JSON') ? true : false;
if ($acss && $isJson) {
// This is an JSON-type ajax call - we will want all output to be in a string format.
// Start the output buffer, which puts the output into memory rather than back to the browser.
// We'll take the output out of the buffer later on, and then put it into a variable.
ob_start();
}
if (!$acss) {
// Not ajax - we need to show the whole page. Either refresh was hit or the URL was gone to directly.
include 'header.inc.php';
include 'menu.inc.php';
}
set_include_path(__DIR__.':../htdocs/html/');
// We always output the page contents at the very least.
include $pageInclude.'.html';
if (!$acss) {
// Not ajax - we need to show the whole page. Either refresh was hit or the URL was gone to directly.
include 'footer.inc.php';
}
if ($acss && $isJson) {
// This is a JSON-type ajax call. We'll make a JSON array.
$jsonArray = [];
// Clean the output buffer and put the page data generated so far, it will be a string, into an item in an array.
$jsonArray['result'] = ob_get_clean();
// Convert the array to a JSON string, as we can't sent an array to the front-end. We need it in JSON format as a string.
$jsonString = json_encode($jsonArray);
// Tell the front-end that all is ok.
http_response_code(200);
// Send back the results.
// In this case, it will be found as {result} on the front-end in Active CSS.
// (if it isn't done by this JSON way, the ajax variable will be {$STRING}.)
echo($jsonString);
flush();
}
// That's it. The page has been sent to the front-end.
// If there was an ajax call but it was in HTML format, not JSON, then the contents has already been sent.
?>