aboutsummaryrefslogtreecommitdiffstats
path: root/index.php
diff options
context:
space:
mode:
authorkj-sh6042024-12-21 01:46:21 -0500
committerkj-sh6042024-12-21 01:46:21 -0500
commit552d06cd7e61c45476c55895422c8ca3d77a9bc6 (patch)
tree6236304c52b9b6d96d2be2fe1078a06322f67847 /index.php
parent8c77e2a9f6b5badf4b78a91a6c04e8c10bea7ce1 (diff)
refactor: cleaner codebase and best practices
Diffstat (limited to 'index.php')
-rw-r--r--index.php125
1 files changed, 11 insertions, 114 deletions
diff --git a/index.php b/index.php
index dbe46d0..b19bfce 100644
--- a/index.php
+++ b/index.php
@@ -21,123 +21,19 @@ session_start(); ?>
include "includes/procrastislides-banner.php";
include "includes/main-info.php";
include "includes/nav-header.php";
- ?>
- <?php if (isset($_POST["compile"])) {
- $_SESSION["user-input"] = $_POST["user-input"]; ?>
- <div class="centered">
- <h3>🎨 please select your presentation theme 🎭</h3>
- <form action="download.php" method="post" onsubmit="showGeneratingIndicator()">
- <table class="centered">
- <thead>
- <tr>
- <th>
- <h2>preview</h2>
- </th>
- <th>
- <h2>select</h2>
- </th>
- </tr>
- </thead>
- <tbody>
- <?php
- $themes = [
- '90sMakeUpCommercial' => '90sMakeUpCommercial',
- 'chicagoOlives' => 'chicagoOlives',
- 'earlyCupertino' => 'earlyCupertino',
- 'ohioCustard' => 'ohioCustard',
- 'raleighAroundMe' => 'raleighAroundMe',
- 'redmond2013' => 'redmond2013',
- 'defaultIsKing' => 'defaultIsKing',
- 'cuppertinoIsh' => 'cuppertinoIsh',
- 'lazyProfessor' => 'lazyProfessor',
- 'redmond2003' => 'redmond2003',
- 'strengthInNumbers' => 'strengthInNumbers',
- 'thatMagazine' => 'thatMagazine',
- ];
-
- foreach ($themes as $key => $theme) {
- echo "<tr>
- <td>
- <img loading='lazy' class='theme-select' src='img/{$key}.webp' alt='{$theme}'>
- </td>
- <td>
- <button type='submit' name='{$key}'>{$theme}</button>
- </td>
- </tr>";
- }
- ?>
- </tbody>
- </table>
- <div id="generating-indicator" style="display: none;">
- <p>📊</p>
- <p>generating presentation...</p>
- <p>please wait.</p>
- </div>
- </form>
- </div>
- <br>
- <?php } else { ?>
- <div>
- <label for="user-input">
- <h2 class="centered">markdown goes here:</h2>
- </label>
- <form action="index.php" method="post">
- <textarea id="user-input" name="user-input" rows="8" cols="80"><?php echo $_SESSION['user-input'] ?? ''; ?></textarea>
- <div class="centered">
- <button type="submit" name="compile">create presentation</button>
- </div>
- </form>
- <br><br>
- <details>
- <summary style="font-size: 1.125rem;"><strong>← expand for a brief <emphasis>"how-to"</emphasis> 📖</strong></summary>
- <p>
- <ul>
- <li>type '#' to indicate that you are starting a new slide and then press ↵ (enter/return) twice.</li>
- <li>you can add a "slide title" after each '#' to name that portion of your presentation.</li>
- <ul>
- <li>a space between "#" and your slide title is required: <br><br> </li>
- <ul class="no-bullets">
- <li># [YOUR TITLE GOES HERE]</li>
- </ul>
- <br>
- </ul>
- <li>type/format text underneath the '#' for the slide contents.</li>
- <ul>
- <li>make sure to start typing your slide content two ↵'s ("enter key presses") away from the "#".</li>
- <li>lists require to be formatted in this manner as well: <br><br> </li>
- <ul class="no-bullets">
- <li># slide title <br><br>
- This is a list <br><br>
- * item 1 <br>
- * item 2 <br>
- * item 3 <br>
- </li>
- </ul>
- </ul>
- </ul>
- <br>
- <p class="centered"> <i>It's highly recommended that you use markdown lists rather than plain text lists</i> </p><br>
- </p>
- </details>
- <br>
- <details>
- <summary style="font-size: 1.125rem;"><strong>← expand for a quick video demo 🎬</strong></summary>
- <p>
- <video controls>
- <source src="vids/A4upxlH2mIHOXYRq.webm" type="video/webm">
- <source src="vids/A4upxlH2mIHOXYRq.ogg" type="video/ogg">
- <source src="vids/A4upxlH2mIHOXYRq.mp4" type="video/mp4">
- Your browser does not support modern open-source video implementations 😔.
- </video>
- </p>
- </details>
- <br>
- </div>
- <?php } ?>
- <br>
+ if (isset($_POST["compile"])) {
+ $_SESSION["user-input"] = $_POST["user-input"];
+ include "includes/download-logic.php";
+ } else {
+ include "includes/markdown-editor.php";
+ include "includes/quick-how-to.php";
+ include "includes/video-how-to.php";
+ } ?>
<footer>
<?php include "includes/nav-footer.php"; ?>
</footer>
+
+ <!-- JS calls -->
<script type="text/javascript">
function showGeneratingIndicator() {
const generatingIndicator = document.getElementById('generating-indicator');
@@ -150,6 +46,7 @@ session_start(); ?>
element: document.getElementById("user-input")
});
</script>
+
</body>
</html>