Compare commits
1 Commits
master
...
improved_b
Author | SHA1 | Date |
---|---|---|
SnowCode | 55a94c2308 |
|
@ -7,7 +7,6 @@ Macros that insert templates
|
||||||
- `%BANNER_COOKIES%` the cookie banner (requires PHP)
|
- `%BANNER_COOKIES%` the cookie banner (requires PHP)
|
||||||
### [pass1_misc.json](./pass1_misc.json)
|
### [pass1_misc.json](./pass1_misc.json)
|
||||||
Miscellaneous macros
|
Miscellaneous macros
|
||||||
- `%FAVICON%` links the tab icon (HTML <head> section)
|
|
||||||
- `%STYLESHEET%` links stylesheet (HTML <head> section)
|
- `%STYLESHEET%` links stylesheet (HTML <head> section)
|
||||||
- `%PLEAZE_NO_CACHE%` tell the browser not to cache this page (PHP, before any data is sent to the client)
|
- `%PLEAZE_NO_CACHE%` tell the browser not to cache this page (PHP, before any data is sent to the client)
|
||||||
- `%COLOR_BEIGE%`, `%COLOR_ORANGE%`, `%COLOR_BLUE%`, `%COLOR_PINK%`, `%COLOR_CYAN%` color codes, format: #XXXXXX
|
- `%COLOR_BEIGE%`, `%COLOR_ORANGE%`, `%COLOR_BLUE%`, `%COLOR_PINK%`, `%COLOR_CYAN%` color codes, format: #XXXXXX
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
{
|
{
|
||||||
"FAVICON":"<link rel=\"icon\" type=\"image\/png\" href=\"%CONTENT_DIR%\/img\/favicon-32x32.png\" sizes=\"32x32\" />",
|
|
||||||
"STYLESHEET":"<link rel=\"stylesheet\" type=\"text\/css\" href=\"%CONTENT_DIR%\/style.css\">",
|
"STYLESHEET":"<link rel=\"stylesheet\" type=\"text\/css\" href=\"%CONTENT_DIR%\/style.css\">",
|
||||||
"PLEAZE_NO_CACHE":"header('Cache-Control: no-cache, no-store, must-revalidate');header('Pragma: no-cache');header('Expires: 0');",
|
"PLEAZE_NO_CACHE":"header('Cache-Control: no-cache, no-store, must-revalidate');header('Pragma: no-cache');header('Expires: 0');",
|
||||||
"COLOR_BEIGE":"#fef6e4", "COLOR_ORANGE":"#f3d2c1", "COLOR_BLUE":"#001858", "COLOR_PINK":"#f582ae", "COLOR_CYAN":"#8bd3dd"
|
"COLOR_BEIGE":"#fef6e4", "COLOR_ORANGE":"#f3d2c1", "COLOR_BLUE":"#001858", "COLOR_PINK":"#f582ae", "COLOR_CYAN":"#8bd3dd"
|
||||||
|
|
|
@ -5,5 +5,5 @@
|
||||||
"DB_USERNAME":["exec","echo -n \"$(sed --quiet \"/db_username=/s/.*=//p\" config/instance.conf)\""],
|
"DB_USERNAME":["exec","echo -n \"$(sed --quiet \"/db_username=/s/.*=//p\" config/instance.conf)\""],
|
||||||
"DB_NAME" :["exec","echo -n \"$(sed --quiet \"/db_database=/s/.*=//p\" config/instance.conf)\""],
|
"DB_NAME" :["exec","echo -n \"$(sed --quiet \"/db_database=/s/.*=//p\" config/instance.conf)\""],
|
||||||
"DB_SERVER" :["exec","echo -n \"$(sed --quiet \"/db_svr_host=/s/.*=//p\" config/instance.conf)\""],
|
"DB_SERVER" :["exec","echo -n \"$(sed --quiet \"/db_svr_host=/s/.*=//p\" config/instance.conf)\""],
|
||||||
"ABOUT_PAGE" :["file","config/about.template"]
|
"ABOUT_PAGE":["file","config/about.template"]
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@ $navbar="about";
|
||||||
ThreadR - About Us
|
ThreadR - About Us
|
||||||
</title>
|
</title>
|
||||||
%STYLESHEET%
|
%STYLESHEET%
|
||||||
%FAVICON%
|
<link rel="icon" type="image/png" href="%CONTENT_DIR%/img/favicon-32x32.png" sizes="32x32" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
|
@ -11,7 +11,7 @@ $id=$_GET['id'];
|
||||||
<head>
|
<head>
|
||||||
<title>ThreadR - Boards</title>
|
<title>ThreadR - Boards</title>
|
||||||
%STYLESHEET%
|
%STYLESHEET%
|
||||||
%FAVICON%
|
<link rel="icon" type="image/png" href="%CONTENT_DIR%/img/favicon-32x32.png" sizes="32x32" />
|
||||||
<?php
|
<?php
|
||||||
if(isset($_GET['action'])) {
|
if(isset($_GET['action'])) {
|
||||||
if ($_GET['action']=='submit') {
|
if ($_GET['action']=='submit') {
|
||||||
|
|
|
@ -10,16 +10,14 @@ $navbar="boards";
|
||||||
<head>
|
<head>
|
||||||
<title>ThreadR - Boards</title>
|
<title>ThreadR - Boards</title>
|
||||||
%STYLESHEET%
|
%STYLESHEET%
|
||||||
%FAVICON%
|
<link rel="icon" type="image/png" href="%CONTENT_DIR%/img/favicon-32x32.png" sizes="32x32" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
%NAVBAR%
|
%NAVBAR%
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="item-1">
|
<div class="item-1">
|
||||||
<h1>
|
<h1><center>ThreadR Boards</center></h1>
|
||||||
<center>ThreadR Boards</center>
|
|
||||||
</h1>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="item-2">
|
<div class="item-2">
|
||||||
<ul class="list">
|
<ul class="list">
|
||||||
|
|
|
@ -1,25 +1,7 @@
|
||||||
# Short documentation of all files
|
# Short documentation of all files
|
||||||
### [index.html](./index.html)
|
### [index.html](./index.html)
|
||||||
This is my usual nope.html to prevent kiddies from poking at my files. It just redirects. There is no real security benefit to it though as it does not even prevent `wget -r`.
|
This is my usual nope.html to prevent kiddies from poking at my files. It just redirects. There is no real security benefit to it though as it does not even prevent `wget -r`.
|
||||||
### [favicon-32x32.png](./favicon-32x32.png)
|
### *.{svg,png,jpg}
|
||||||
- Tab icon
|
images that are used on the page
|
||||||
- format: PNG
|
|
||||||
- resolution: 32x32
|
|
||||||
### [threadR.png](./threadR.png)
|
|
||||||
- unused
|
|
||||||
- format: PNG
|
|
||||||
- resolution: 48x48
|
|
||||||
### [ThreadR.png](./ThreadR.png)
|
|
||||||
- unused, render of the main logo svg
|
|
||||||
- format: PNG
|
|
||||||
- resolution: 1856x674
|
|
||||||
### [ThreadR.svg](./ThreadR.svg)
|
|
||||||
- main logo, front center on the home page
|
|
||||||
- format: SVG + macros
|
|
||||||
- will not render properly without macro processing
|
|
||||||
### [ThreadR_Home.svg](./ThreadR_Home.svg)
|
|
||||||
- more square version of the logo, used on the "home" link on the navbar
|
|
||||||
- format: SVG + macros
|
|
||||||
- will not render properly without macro processing
|
|
||||||
### [README.md](./README.md)
|
### [README.md](./README.md)
|
||||||
this file
|
this file
|
||||||
|
|
|
@ -11,7 +11,7 @@ $navbar="home";
|
||||||
<head>
|
<head>
|
||||||
<title>ThreadR - Home</title>
|
<title>ThreadR - Home</title>
|
||||||
%STYLESHEET%
|
%STYLESHEET%
|
||||||
%FAVICON%
|
<link rel="icon" type="image/png" href="%CONTENT_DIR%/img/favicon-32x32.png" sizes="32x32" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
|
@ -11,7 +11,7 @@ if (isset($_SESSION['user_id'])){
|
||||||
<head>
|
<head>
|
||||||
<title>ThreadR - Log In</title>
|
<title>ThreadR - Log In</title>
|
||||||
%STYLESHEET%
|
%STYLESHEET%
|
||||||
%FAVICON%
|
<link rel="icon" type="image/png" href="%CONTENT_DIR%/img/favicon-32x32.png" sizes="32x32" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
|
@ -8,7 +8,7 @@ $navbar = "logout";
|
||||||
<head>
|
<head>
|
||||||
<title>ThreadR - Home</title>
|
<title>ThreadR - Home</title>
|
||||||
%STYLESHEET%
|
%STYLESHEET%
|
||||||
%FAVICON%
|
<link rel="icon" type="image/png" href="%CONTENT_DIR%/img/favicon-32x32.png" sizes="32x32" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
@ -26,4 +26,4 @@ $navbar = "logout";
|
||||||
</div>
|
</div>
|
||||||
%BANNER_COOKIES%
|
%BANNER_COOKIES%
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -10,7 +10,7 @@ $navbar = "news";
|
||||||
<head>
|
<head>
|
||||||
<title>ThreadR - News</title>
|
<title>ThreadR - News</title>
|
||||||
%STYLESHEET%
|
%STYLESHEET%
|
||||||
%FAVICON%
|
<link rel="icon" type="image/png" href="%CONTENT_DIR%/img/favicon-32x32.png" sizes="32x32" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
|
@ -26,7 +26,7 @@ $navbar = "profile";
|
||||||
<head>
|
<head>
|
||||||
<title>ThreadR - Profile</title>
|
<title>ThreadR - Profile</title>
|
||||||
%STYLESHEET%
|
%STYLESHEET%
|
||||||
%FAVICON%
|
<link rel="icon" type="image/png" href="%CONTENT_DIR%/img/favicon-32x32.png" sizes="32x32" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
|
@ -9,7 +9,7 @@ $navbar = "signup";
|
||||||
<head>
|
<head>
|
||||||
<title>ThreadR - Sign Up</title>
|
<title>ThreadR - Sign Up</title>
|
||||||
%STYLESHEET%
|
%STYLESHEET%
|
||||||
%FAVICON%
|
<link rel="icon" type="image/png" href="%CONTENT_DIR%/img/favicon-32x32.png" sizes="32x32" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
|
@ -34,7 +34,7 @@ $navbar = "verify-email";
|
||||||
<head>
|
<head>
|
||||||
<title>ThreadR - Verification</title>
|
<title>ThreadR - Verification</title>
|
||||||
%STYLESHEET%
|
%STYLESHEET%
|
||||||
%FAVICON%
|
<link rel="icon" type="image/png" href="%CONTENT_DIR%/img/favicon-32x32.png" sizes="32x32" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
@ -57,4 +57,4 @@ $navbar = "verify-email";
|
||||||
</div>
|
</div>
|
||||||
%BANNER_COOKIES%
|
%BANNER_COOKIES%
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -25,7 +25,7 @@ $navbar = "home";
|
||||||
<head>
|
<head>
|
||||||
<title>ThreadR</title>
|
<title>ThreadR</title>
|
||||||
%STYLESHEET%
|
%STYLESHEET%
|
||||||
%FAVICON%
|
<link rel="icon" type="image/png" href="%CONTENT_DIR%/img/favicon-32x32.png" sizes="32x32" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
CREATE DATABASE threadr;
|
||||||
|
USE threadr;
|
||||||
|
CREATE TABLE boards(
|
||||||
|
id INT AUTO_INCREMENT,
|
||||||
|
name VARCHAR(50),
|
||||||
|
user_friendly_name VARCHAR(50),
|
||||||
|
private BOOL,
|
||||||
|
public_visible BOOL,
|
||||||
|
PRIMARY KEY (id)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE posts(
|
||||||
|
id INT AUTO_INCREMENT,
|
||||||
|
board_id INT,
|
||||||
|
user_id INT,
|
||||||
|
post_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP(),
|
||||||
|
edit_time TIMESTAMP NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP(),
|
||||||
|
content TEXT NULL DEFAULT NULL,
|
||||||
|
attachement_hash BIGINT(20) NULL DEFAULT NULL,
|
||||||
|
attachement_name VARCHAR(100) NULL DEFAULT NULL,
|
||||||
|
title VARCHAR(100) NULL DEFAULT NULL,
|
||||||
|
reply_to INT DEFAULT -1,
|
||||||
|
PRIMARY KEY (id)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE profiles(
|
||||||
|
id INT AUTO_INCREMENT,
|
||||||
|
email VARCHAR(100),
|
||||||
|
display_name VARCHAR(50),
|
||||||
|
status VARCHAR(100),
|
||||||
|
about TEXT,
|
||||||
|
website VARCHAR(100),
|
||||||
|
PRIMARY KEY (id)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE users(
|
||||||
|
id INT AUTO_INCREMENT,
|
||||||
|
name VARCHAR(50),
|
||||||
|
authentication_string VARCHAR(128),
|
||||||
|
authentication_salt VARCHAR(128),
|
||||||
|
authentication_algorithm VARCHAR(128),
|
||||||
|
time_created TIMESTAMP DEFAULT CURRENT_TIMESTAMP(),
|
||||||
|
time_altered TIMESTAMP DEFAULT CURRENT_TIMESTAMP() ON UPDATE CURRENT_TIMESTAMP(),
|
||||||
|
verified BOOLEAN DEFAULT 0,
|
||||||
|
PRIMARY KEY (id)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE USER 'threadr'@'localhost' IDENTIFIED BY 'azerty';
|
||||||
|
GRANT ALL PRIVILEGES ON threadr.* TO 'threadr'@'localhost';
|
||||||
|
FLUSH PRIVILEGES;
|
||||||
|
EXIT;
|
Loading…
Reference in New Issue