init commit

This commit is contained in:
bckelley
2024-01-25 09:52:59 -06:00
commit a979c73924
33 changed files with 1870 additions and 0 deletions
+9
View File
@@ -0,0 +1,9 @@
</div>
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.12.9/dist/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
<script src="<?php echo URL_ROOT; ?>/js/main.js"></script>
</body>
</html>
+24
View File
@@ -0,0 +1,24 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" href="<?php echo URL_ROOT; ?>/css/style.css">
<title><?php echo SITENAME; ?></title>
</head>
<body>
<?php require APP_ROOT . '/views/inc/navbar.php' ?>
<div class="container">
+53
View File
@@ -0,0 +1,53 @@
<nav class="navbar navbar-expand-lg navbar-dark bg-dark mb-3">
<div class="container">
<!-- Brand Logo and Link -->
<a class="navbar-brand" href="<?php echo URL_ROOT ?>"><?php echo SITENAME ?></a>
<!-- Navbar Toggler Button for Responsive Design -->
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#topNavbarMain" aria-controls="topNavbarMain" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<?php
// TODO: Add bootstrap active class dynamically based on the current page
?>
<!-- Navbar Links -->
<div class="collapse navbar-collapse" id="topNavbarMain">
<ul class="navbar-nav mr-auto">
<!-- Home Link -->
<li class="nav-item">
<a class="nav-link" href="<?php echo URL_ROOT ?>">Home</a>
</li>
<!-- About Link -->
<li class="nav-item">
<a class="nav-link" href="<?php echo URL_ROOT ?>/pages/about">About</a>
</li>
<!-- Posts Link -->
<li class="nav-item">
<a class="nav-link" href="<?php echo URL_ROOT ?>/posts/">Posts</a>
</li>
</ul>
<!-- Right-aligned Navbar Links -->
<ul class="navbar-nav ml-auto">
<?php if (isset($_SESSION['userId'])) : ?>
<!-- Logout Link if User is Logged In -->
<li class="nav-item">
<a class="nav-link" href="<?php echo URL_ROOT ?>/users/logout">Logout</a>
</li>
<?php else : ?>
<!-- Register and Login Links if User is Not Logged In -->
<li class="nav-item">
<a class="nav-link" href="<?php echo URL_ROOT ?>/users/register">Register</a>
</li>
<li class="nav-item">
<a class="nav-link" href="<?php echo URL_ROOT ?>/users/login">Login</a>
</li>
<?php endif; ?>
</ul>
</div>
</div>
</nav>
+9
View File
@@ -0,0 +1,9 @@
<?php require APP_ROOT . '/views/inc/header.php'; ?>
<div class="jumbotron jumbotron-fluid text-center">
<div class="container">
<h1 class="display-3"><?PHP echo $data['title']; ?></h1>
<p class="lead"><?PHP echo $data['description'] ?></p>
<p class="lead"><span class="h5">Version: </span> <?PHP echo $data['version'] ?></p>
</div>
</div>
<?php require APP_ROOT . '/views/inc/footer.php'; ?>
+8
View File
@@ -0,0 +1,8 @@
<?php require APP_ROOT . '/views/inc/header.php'; ?>
<div class="jumbotron jumbotron-fluid text-center">
<div class="container">
<h1 class="display-3"><?php echo $data['title']; ?></h1>
<p class="lead"><?PHP echo $data['description'] ?></p>
</div>
</div>
<?php require APP_ROOT . '/views/inc/footer.php'; ?>
+28
View File
@@ -0,0 +1,28 @@
<?PHP require APP_ROOT.'/views/inc/header.php' ?>
<a href="<?PHP echo URL_ROOT ?>/posts/index" class="btn btn-secondary"><i class="fa fa-backward"></i> Back</a>
<div class="card card-body bg-light mt-5">
<h2>Add Post</h2>
<p>Create a new post.</p>
<form action="<?PHP echo URL_ROOT ?>/posts/add" method="post">
<div class="form-group">
<label for="title">Title: <sup class="is-invalid">*</sup></label>
<input type="text" name="title" id="" class="form-control form-control-lg <?PHP echo (!empty($data['titleErr'])) ? 'is-invalid' : '' ?>" value="<?PHP echo $data['title']?>" />
<span class="invalid-feedback"><?PHP echo $data['titleErr'] ?></span>
</div>
<div class="form-group">
<label for="summary">Summary: <sup class="is-invalid">*</sup></label>
<input type="text" name="summary" id="" class="form-control form-control-lg <?PHP echo (!empty($data['summaryErr'])) ? 'is-invalid' : '' ?>" value="<?PHP echo $data['summary']?>" />
<span class="invalid-feedback"><?PHP echo $data['summaryErr'] ?></span>
</div>
<div class="form-group">
<label for="body">Body: <sup class="is-invalid">*</sup></label>
<textarea name="body" id="" class="form-control form-control-lg <?PHP echo (!empty($data['bodyErr'])) ? 'is-invalid' : '' ?>"><?PHP echo $data['body']?></textarea>
<span class="invalid-feedback"><?PHP echo $data['bodyErr'] ?></span>
</div>
<input type="submit" class="btn btn-primary" value="Submit">
</form>
</div>
<?PHP require APP_ROOT.'/views/inc/footer.php' ?>
+28
View File
@@ -0,0 +1,28 @@
<?PHP require APP_ROOT.'/views/inc/header.php' ?>
<a href="<?PHP echo URL_ROOT ?>/posts/index" class="btn btn-secondary"><i class="fa fa-backward"></i> Back</a>
<div class="card card-body bg-light mt-5">
<h2>Edit Post</h2>
<p>Create a new post.</p>
<form action="<?PHP echo URL_ROOT ?>/posts/edit/<?PHP echo $data['id'] ?>" method="post">
<div class="form-group">
<label for="title">Title: <sup class="is-invalid">*</sup></label>
<input type="text" name="title" id="" class="form-control form-control-lg <?PHP echo (!empty($data['titleErr'])) ? 'is-invalid' : '' ?>" value="<?PHP echo $data['title']?>" />
<span class="invalid-feedback"><?PHP echo $data['titleErr'] ?></span>
</div>
<div class="form-group">
<label for="summary">Summary: <sup class="is-invalid">*</sup></label>
<input type="text" name="summary" id="" class="form-control form-control-lg <?PHP echo (!empty($data['summaryErr'])) ? 'is-invalid' : '' ?>" value="<?PHP echo $data['summary']?>" />
<span class="invalid-feedback"><?PHP echo $data['summaryErr'] ?></span>
</div>
<div class="form-group">
<label for="body">Body: <sup class="is-invalid">*</sup></label>
<textarea name="body" id="" class="form-control form-control-lg <?PHP echo (!empty($data['bodyErr'])) ? 'is-invalid' : '' ?>"><?PHP echo $data['body']?></textarea>
<span class="invalid-feedback"><?PHP echo $data['bodyErr'] ?></span>
</div>
<input type="submit" class="btn btn-primary" value="Submit">
</form>
</div>
<?PHP require APP_ROOT.'/views/inc/footer.php' ?>
+23
View File
@@ -0,0 +1,23 @@
<?php require APP_ROOT . '/views/inc/header.php'; ?>
<?PHP echo message('post_message'); ?>
<div class="row mb-3">
<div class="col-md-6">
<h1>Posts</h1>
</div>
<div class="col-md-6">
<a href="<?PHP echo URL_ROOT; ?>/posts/add" class="btn btn-primary pull-right">
<i class="fa fa-pencil"></i> Add Post
</a>
</div>
</div>
<?PHP foreach ($data['posts'] as $post) : ?>
<div class="card card-body mb-3">
<h4 class="card-title"><?PHP echo $post->title ?></h4>
<div class="bg-light p-2 mb-3">
written by: <?PHP echo $post->name ?> on <?PHP echo $post->postCreated ?>
</div>
<p class="card-text"><?PHP echo $post->summary ?></p>
<a href="<?PHP echo URL_ROOT ?>/posts/show/<?PHP echo $post->postId ?>" class="btn btn-dark">Read More</a>
</div>
<?PHP endforeach; ?>
<?php require APP_ROOT . '/views/inc/footer.php'; ?>
+21
View File
@@ -0,0 +1,21 @@
<?PHP require APP_ROOT.'/views/inc/header.php' ?>
<a href="<?PHP echo URL_ROOT ?>/posts/index" class="btn btn-secondary"><i class="fa fa-backward"></i> Back</a>
<div class="card card-body bg-light mt-5">
<h1><?PHP echo $data['post']->title ?></h1>
<div class="bg-secondary text-white p-2 mb-3">
Written by <?PHP echo $data['user']->name ?> on <?PHP echo $data['post']->created_at ?></div>
</div>
<p><?PHP echo $data['post']->body ?></p>
<?PHP if ($data['post']->user_id == $_SESSION['userId']) : ?>
<hr>
<a href="<?PHP echo URL_ROOT ?>/posts/edit/<?PHP echo $data['post']->id ?>" class="btn btn-dark"><i class="fa fa-edit"></i> Edit Post</a>
<form method="post" action="<?PHP echo URL_ROOT ?>/posts/delete/<?PHP echo $data['post']->id ?>" class="pull-right">
<input type="submit" value="Delete Post" class="btn btn-danger">
</form>
<?PHP endif;?>
<?PHP require APP_ROOT.'/views/inc/footer.php' ?>
+35
View File
@@ -0,0 +1,35 @@
<?PHP require APP_ROOT.'/views/inc/header.php' ?>
<div class="row">
<div class="col-md-6 mx-auto">
<div class="card card-body bg-light mt-5">
<?PHP echo message('reg_success') ?>
<h2>Login to your Account</h2>
<p>Fill in your information to continue.</p>
<form action="<?PHP echo URL_ROOT ?>/users/login" method="post">
<div class="form-group">
<label for="email">Email: <sup class="is-invalid">*</sup></label>
<input type="email" name="email" id="" class="form-control form-control-lg <?PHP echo (!empty($data['emailErr'])) ? 'is-invalid' : '' ?>" value="<?PHP echo $data['email']?>" />
<span class="invalid-feedback"><?PHP echo $data['emailErr'] ?></span>
</div>
<div class="form-group">
<label for="password">Password: <sup class="is-invalid">*</sup></label>
<input type="password" name="password" id="" class="form-control form-control-lg <?PHP echo (!empty($data['passErr'])) ? 'is-invalid' : '' ?>" value="<?PHP echo $data['password']?>" />
<span class="invalid-feedback"><?PHP echo $data['passErr'] ?></span>
</div>
<div class="row">
<div class="col">
<input type="submit" value="Login" class="btn btn-success btn-block" />
</div>
<div class="col">
<a href="<?PHP echo URL_ROOT ?>/users/register" class="btn btn-light btn-block">Register</a>
</div>
</div>
</form>
</div>
</div>
</div>
<?PHP require APP_ROOT.'/views/inc/footer.php' ?>
+42
View File
@@ -0,0 +1,42 @@
<?PHP require APP_ROOT.'/views/inc/header.php' ?>
<div class="row">
<div class="col-md-6 mx-auto">
<div class="card card-body bg-light mt-5">
<h2>Create an Account</h2>
<p>Fill out to Register</p>
<form action="<?PHP echo URL_ROOT ?>/users/register" method="post">
<div class="form-group">
<label for="username">Username: <sup class="is-invalid">*</sup></label>
<input type="text" name="username" id="" class="form-control form-control-lg <?PHP echo (!empty($data['usernameErr'])) ? 'is-invalid' : '' ?>" value="<?PHP echo $data['username']?>" />
<span class="invalid-feedback"><?PHP echo $data['usernameErr'] ?></span>
</div>
<div class="form-group">
<label for="email">Email: <sup class="is-invalid">*</sup></label>
<input type="text" name="email" id="" class="form-control form-control-lg <?PHP echo (!empty($data['emailErr'])) ? 'is-invalid' : '' ?>" value="<?PHP echo $data['email']?>" />
<span class="invalid-feedback"><?PHP echo $data['emailErr'] ?></span>
</div>
<div class="form-group">
<label for="password">Password: <sup class="is-invalid">*</sup></label>
<input type="password" name="password" id="" class="form-control form-control-lg <?PHP echo (!empty($data['passErr'])) ? 'is-invalid' : '' ?>" value="<?PHP echo $data['password']?>" />
<span class="invalid-feedback"><?PHP echo $data['passErr'] ?></span>
</div>
<div class="form-group">
<label for="again">Confirm: <sup class="is-invalid">*</sup></label>
<input type="password" name="again" id="" class="form-control form-control-lg <?PHP echo (!empty($data['againErr'])) ? 'is-invalid' : '' ?>" value="<?PHP echo $data['again']?>" />
<span class="invalid-feedback"><?PHP echo $data['againErr'] ?></span>
</div>
<div class="row">
<div class="col">
<input type="submit" value="Register" class="btn btn-success btn-block" />
</div>
<div class="col">
<a href="<?PHP echo URL_ROOT ?>/users/login" class="btn btn-light btn-block">Already Registered? Login</a>
</div>
</div>
</form>
</div>
</div>
</div>
<?PHP require APP_ROOT.'/views/inc/footer.php' ?>