initial Commit
1
.gitignore
vendored
@@ -77,3 +77,4 @@ fabric.properties
|
|||||||
# Android studio 3.1+ serialized cache file
|
# Android studio 3.1+ serialized cache file
|
||||||
.idea/caches/build_file_checksums.ser
|
.idea/caches/build_file_checksums.ser
|
||||||
|
|
||||||
|
/Secure/
|
||||||
|
|||||||
10
.idea/.gitignore
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
# Default ignored files
|
||||||
|
/shelf/
|
||||||
|
/workspace.xml
|
||||||
|
# Ignored default folder with query files
|
||||||
|
/queries/
|
||||||
|
# Datasource local storage ignored files
|
||||||
|
/dataSources/
|
||||||
|
/dataSources.local.xml
|
||||||
|
# Editor-based HTTP Client requests
|
||||||
|
/httpRequests/
|
||||||
8
.idea/HalbearNet.iml
generated
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<module type="WEB_MODULE" version="4">
|
||||||
|
<component name="NewModuleRootManager">
|
||||||
|
<content url="file://$MODULE_DIR$" />
|
||||||
|
<orderEntry type="inheritedJdk" />
|
||||||
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
</component>
|
||||||
|
</module>
|
||||||
8
.idea/modules.xml
generated
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectModuleManager">
|
||||||
|
<modules>
|
||||||
|
<module fileurl="file://$PROJECT_DIR$/.idea/HalbearNet.iml" filepath="$PROJECT_DIR$/.idea/HalbearNet.iml" />
|
||||||
|
</modules>
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
19
.idea/php.xml
generated
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="MessDetectorOptionsConfiguration">
|
||||||
|
<option name="transferred" value="true" />
|
||||||
|
</component>
|
||||||
|
<component name="PHPCSFixerOptionsConfiguration">
|
||||||
|
<option name="transferred" value="true" />
|
||||||
|
</component>
|
||||||
|
<component name="PHPCodeSnifferOptionsConfiguration">
|
||||||
|
<option name="highlightLevel" value="WARNING" />
|
||||||
|
<option name="transferred" value="true" />
|
||||||
|
</component>
|
||||||
|
<component name="PhpStanOptionsConfiguration">
|
||||||
|
<option name="transferred" value="true" />
|
||||||
|
</component>
|
||||||
|
<component name="PsalmOptionsConfiguration">
|
||||||
|
<option name="transferred" value="true" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
7
.idea/vcs.xml
generated
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="" vcs="Git" />
|
||||||
|
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
29
Account.php
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Halbear.Net</title>
|
||||||
|
<link rel="stylesheet" href="default.css">
|
||||||
|
</head>
|
||||||
|
<body onload="CalculateGrid(); SetUp(); startApps();">
|
||||||
|
<?php
|
||||||
|
$Page = "Account";
|
||||||
|
require_once("Hotbar.php");
|
||||||
|
?>
|
||||||
|
<script src="WindowManager.js"></script>
|
||||||
|
<script src="AlignDesktopApps.js"></script>
|
||||||
|
<script>
|
||||||
|
var Button = document.getElementById("AccountBtn");
|
||||||
|
Button.onclick = function(){document.location.href='index.php';};
|
||||||
|
Button.classList.remove('hotbarButtonSquare');
|
||||||
|
Button.classList.add('hotbarButton');
|
||||||
|
Button.children[0].textContent = "Home";
|
||||||
|
Button.children[0].classList.remove('accountimg');
|
||||||
|
Button.children[0].classList.add('buttontext');
|
||||||
|
|
||||||
|
function startApps() {
|
||||||
|
OpenApp(document.querySelectorAll('.AccountManagerIcon')[0], true, 50, 45);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
5
AccountApps/AccountLandingPage.html
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<div style="Padding:2vh;">
|
||||||
|
<button class="AccButton">
|
||||||
|
<a class="button-text SignOutButton" class="whiteText">Sign Out</a>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
48
AccountApps/AccountManager.html
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
<div class="AccountManager Initialised" id="AccountManagerBody" style="display: flex; flex-direction: row; align-content: center; align-items: center; justify-content: center; justify-items: center;"></div>
|
||||||
|
<script>
|
||||||
|
function AppInit(ID) {
|
||||||
|
if (sessionStorage.getItem("UID") == null) sessionStorage.setItem("UID", "Inactive");
|
||||||
|
const Body = document.getElementById("AccountManagerBody");
|
||||||
|
if (sessionStorage.getItem("ActiveSession") === true && sessionStorage.getItem("UID") !== "Inactive") {
|
||||||
|
var NewAppLoaded = new XMLHttpRequest();
|
||||||
|
NewAppLoaded.open('GET', "AccountApps/AccountLandingPage.html", true);
|
||||||
|
NewAppLoaded.onreadystatechange = function () {
|
||||||
|
if (NewAppLoaded.readyState !== 4) return;
|
||||||
|
if (NewAppLoaded.status !== 200) return;
|
||||||
|
document.getElementById("AppContainer").insertAdjacentHTML("beforeend", NewAppLoaded.responseText);
|
||||||
|
};
|
||||||
|
NewAppLoaded.send();
|
||||||
|
} else {
|
||||||
|
var NewAppLoaded = new XMLHttpRequest();
|
||||||
|
NewAppLoaded.open('GET', "AccountApps/SignIn.html", true);
|
||||||
|
NewAppLoaded.onreadystatechange = function () {
|
||||||
|
if (NewAppLoaded.readyState !== 4) return;
|
||||||
|
if (NewAppLoaded.status !== 200) return;
|
||||||
|
document.getElementById("AppContainer").insertAdjacentHTML("beforeend", NewAppLoaded.responseText);
|
||||||
|
};
|
||||||
|
NewAppLoaded.send();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function SwitchPage(ID, OldID){
|
||||||
|
document.getElementById(OldID).remove();
|
||||||
|
var NewAppLoaded = new XMLHttpRequest();
|
||||||
|
NewAppLoaded.open('GET', "AccountApps/"+ID+".html", true);
|
||||||
|
NewAppLoaded.onreadystatechange = function () {
|
||||||
|
if (NewAppLoaded.readyState !== 4) return;
|
||||||
|
if (NewAppLoaded.status !== 200) return;
|
||||||
|
Body.insertAdjacentHTML("beforeend",NewAppLoaded.responseText);
|
||||||
|
};
|
||||||
|
NewAppLoaded.send();
|
||||||
|
}
|
||||||
|
function showpass(ID) {
|
||||||
|
var Element = document.getElementById(ID);
|
||||||
|
if (Element.type === "password") {
|
||||||
|
document.getElementById("showpasswordcheckbox").checked = true;
|
||||||
|
Element.type = "text";
|
||||||
|
} else {
|
||||||
|
document.getElementById("showpasswordcheckbox").checked = false;
|
||||||
|
Element.type = "password";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
3
AccountApps/AccountManagerIcon.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<div class="AccountManagerIcon windowIcon hidden 80 80" onclick="OpenApp(this, false, 50, 50);" >
|
||||||
|
<img src="GeneralAssets/AccountSymbol.png" style="width: 8vh; height: 8vh;">
|
||||||
|
<a class="whiteText IconText" style="overflow: hidden;">
|
||||||
32
AccountApps/SignIn.html
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
<div id="SignInBody" style="Padding:2vh;">
|
||||||
|
<form action="#">
|
||||||
|
<div class="flexboxLoginField">
|
||||||
|
<input type="text" id="username" name="username" required>
|
||||||
|
<label for="username" class="whiteText">Username/Email*</label>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField">
|
||||||
|
<input type="password" id="password" name="password" required>
|
||||||
|
<label for="password" class="whiteText">Password*</label>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField showpassword">
|
||||||
|
<input id="showloginpasswordcheckbox" type="checkbox" onclick="showpass('showloginpasswordcheckbox')" style="cursor:pointer" ><a class="whiteText" onclick="showpass('showloginpasswordcheckbox')" style="cursor:pointer; user-select: none;">Show Password</a>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField">
|
||||||
|
<input type="checkbox" id="capapacha" name="humanverification" value="yes" required>
|
||||||
|
<label for="capapacha" class="whiteText"> i think im not a robot*</label><br>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField">
|
||||||
|
<input type="checkbox" id="remember" name="remember" value="yes">
|
||||||
|
<label for="remember" class="whiteText"> remember me?</label><br>
|
||||||
|
</div>
|
||||||
|
<div class="ForgotPass">
|
||||||
|
<a class="hyperlink" href="#">Forgot Password?</a>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField">
|
||||||
|
<button class="AccButton" type="submit">
|
||||||
|
<a class="button-text signintxt" class="whiteText">Log In</a>
|
||||||
|
</button>
|
||||||
|
<p class="whiteText">Don't have a halbear.net account? <a href="#" class="hyperlink register-link" onclick="SwitchPage('SignUp','SignInBody');">>Create One</a></p>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
37
AccountApps/SignUp.html
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
<div id="SignUpBody" style="Padding:2vh;">
|
||||||
|
<form action="includes/RegisterAccount.php" method="POST" style="width: 100%;">
|
||||||
|
<div class="flexboxLoginField">
|
||||||
|
<input type="email" id="email" name="email" required maxlength="50">
|
||||||
|
<label for="Email" class="whiteText">Email Address*</label>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField">
|
||||||
|
<input type="text" id="newusername" name="newusername" required maxlength="20">
|
||||||
|
<label for="newusername" class="whiteText">New Username*</label>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField">
|
||||||
|
<input type="text" id="displayname" name="displayname" maxlength="15">
|
||||||
|
<label for="DisplayName" class="whiteText">New Display Name</label>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField">
|
||||||
|
<input type="password" id="newpassword" name="newpassword" required maxlength="25">
|
||||||
|
<label for="newpassword" class="whiteText">New Password*</label>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField">
|
||||||
|
<input style="width: 50px;" type="text" id="capaacha" name="captcha" maxlength="5" >
|
||||||
|
<a class="whiteText"> Type "human"</a><br>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField showpassword">
|
||||||
|
<input id="showpasswordcheckbox" type="checkbox" onclick="showpass('showpasswordcheckbox')" style="cursor:pointer" ><a class="whiteText" onclick="showpass('showpasswordcheckbox')" style="cursor:pointer; user-select: none;">Show Password</a>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField">
|
||||||
|
<input type="checkbox" id="terms" name="terms" value="yes" required>
|
||||||
|
<label for="terms" class="whiteText"> I agree to the <a href="termsAndConditions.html" class="hyperlink tc">terms and conditions</a>*</label><br>
|
||||||
|
</div>
|
||||||
|
<div class="flexboxLoginField" style="width: 95%; display: flex; justify-content: center; align-items: center; justify-items: center; flex-direction: column;">
|
||||||
|
<button type="submit" class="ButtonHalNetSytle">
|
||||||
|
<a class="buttontext signintxt">Create Account</a>
|
||||||
|
</button>
|
||||||
|
<p class="whiteText">have a halbear.net account? <a href="#" class="hyperlink login-link" onclick="SwitchPage('SignIn','SignUpBody');">Log In</a></p>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
99
AlignDesktopApps.js
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
const DesktopApps = document.querySelectorAll('.windowIcon');
|
||||||
|
var AppGrid = null;
|
||||||
|
var XtileSize;
|
||||||
|
var YtileSize;
|
||||||
|
var XTiles;
|
||||||
|
var YTiles;
|
||||||
|
function SetUp(){
|
||||||
|
for (i = 0; i < DesktopApps.length; i++) {
|
||||||
|
DragIcon(DesktopApps[i])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function CalculateGrid(){
|
||||||
|
|
||||||
|
XtileSize = DesktopApps[0].offsetWidth + (DesktopApps[0].offsetWidth/12);
|
||||||
|
YtileSize = DesktopApps[0].offsetHeight + (DesktopApps[0].offsetHeight/12);
|
||||||
|
console.log(XtileSize + " " + YtileSize);
|
||||||
|
|
||||||
|
XTiles = Math.round(innerWidth / XtileSize);
|
||||||
|
YTiles = Math.round((innerHeight - document.querySelector('.hotbarWrapper').offsetHeight) / YtileSize);
|
||||||
|
console.log(XTiles + " " + YTiles);
|
||||||
|
|
||||||
|
var iteratorX = 0;
|
||||||
|
var iteratorY = Math.round(document.querySelector('.hotbarWrapper').offsetHeight/YtileSize);
|
||||||
|
console.log(iteratorY);
|
||||||
|
for (i = 0; i < DesktopApps.length; i++) {
|
||||||
|
if (iteratorY >= YTiles) {
|
||||||
|
iteratorY = Math.round(document.querySelector('.hotbarWrapper').offsetHeight/YtileSize);
|
||||||
|
iteratorX++;
|
||||||
|
}
|
||||||
|
DesktopApps[i].style.top = (((4 + (YtileSize * iteratorY))/innerHeight)*100) + "vh";
|
||||||
|
DesktopApps[i].style.left = (((4 + (XtileSize * iteratorX))/innerWidth)*100) + "vw";
|
||||||
|
iteratorY++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function calculatePosition(AppIcon, startPosX, startPosY) {
|
||||||
|
var valid = true
|
||||||
|
Xpos = Math.round(AppIcon.offsetLeft / XtileSize);
|
||||||
|
Ypos = Math.round(AppIcon.offsetTop / YtileSize);
|
||||||
|
for (var j = 0; j < DesktopApps.length; j++) {
|
||||||
|
if (DesktopApps[j].offsetLeft === 4 + (Xpos * XtileSize)
|
||||||
|
&& DesktopApps[j].offsetTop === 4 + (Ypos * YtileSize)) {
|
||||||
|
valid = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (valid === false) {
|
||||||
|
AppIcon.style.top = ((startPosY/innerHeight)*100) + "vh";
|
||||||
|
AppIcon.style.left = ((startPosX/innerWidth)*100) + "vw";
|
||||||
|
AppIcon.style.left = startPosX + "px";
|
||||||
|
AppIcon.style.top = startPosY + "px";
|
||||||
|
} else {
|
||||||
|
AppIcon.style.top = (((4 + (Ypos * YtileSize))/innerHeight)*100) + "vh";
|
||||||
|
AppIcon.style.left = (((4 + (Xpos * XtileSize))/innerWidth)*100) + "vw";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function DragIcon(AppIcon){
|
||||||
|
var pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0, startposX = AppIcon.offsetLeft, startposY = AppIcon.offsetTop;
|
||||||
|
AppIcon.addEventListener('mousedown', mouseDown);
|
||||||
|
function mouseDown(e) {
|
||||||
|
startposX = AppIcon.offsetLeft;
|
||||||
|
startposY = AppIcon.offsetTop;
|
||||||
|
AppIcon.style.zIndex = 125;
|
||||||
|
e.preventDefault();
|
||||||
|
document.addEventListener('mousemove', mouseMove);
|
||||||
|
document.addEventListener('mouseup', mouseUp);
|
||||||
|
pos3 = e.clientX;
|
||||||
|
pos4 = e.clientY;
|
||||||
|
}
|
||||||
|
function mouseMove(e){
|
||||||
|
e.preventDefault();
|
||||||
|
pos1 = pos3 - e.clientX;
|
||||||
|
pos2 = pos4 - e.clientY;
|
||||||
|
pos3 = e.clientX;
|
||||||
|
pos4 = e.clientY;
|
||||||
|
if (AppIcon.offsetTop < window.innerHeight) {
|
||||||
|
AppIcon.style.top = (AppIcon.offsetTop - pos2) + 'px';
|
||||||
|
}
|
||||||
|
else if( pos2 >= 0){
|
||||||
|
AppIcon.style.top = (AppIcon.offsetTop - pos2) + 'px';
|
||||||
|
}
|
||||||
|
if (AppIcon.offsetLeft + (AppIcon.clientWidth/2) + 3< window.innerWidth) {
|
||||||
|
AppIcon.style.left = (AppIcon.offsetLeft - pos1) + 'px';
|
||||||
|
}
|
||||||
|
else if(pos1 >= 0) {
|
||||||
|
AppIcon.style.left = (AppIcon.offsetLeft - pos1) + 'px';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function mouseUp(e) {
|
||||||
|
document.removeEventListener('mousemove', mouseMove);
|
||||||
|
document.removeEventListener('mouseup', mouseUp);
|
||||||
|
document.removeEventListener('touchend', mouseUp);
|
||||||
|
AppIcon.style.zIndex = 105;
|
||||||
|
calculatePosition(AppIcon, startposX, startposY);
|
||||||
|
startposX = AppIcon.offsetLeft;
|
||||||
|
startposY = AppIcon.offsetTop
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
15
AppAssets/App.html
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<div id="{id}" class="DraggableWrapper {x} {y} {ApplicationName} minimised">
|
||||||
|
<div class="WindowTitleBar">
|
||||||
|
<div class="WindowTitleBarContainer">
|
||||||
|
<div class="WindowThumbnail" style="background-image: url('{WindowIconImage}');"></div>
|
||||||
|
<div class="WindowTitle">Application</div>
|
||||||
|
</div>
|
||||||
|
<div class="WindowTitleBarContainer">
|
||||||
|
<div id="{id}MinimiseBtn" class=" MinimiseButton appTitleButton" ></div>
|
||||||
|
<div id="{id}ExitBtn" class=" ExitButton appTitleButton" ></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="WindowBody" style="padding: 0; margin: 0;">
|
||||||
|
{body}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
21
Artwork.php
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Halbear.Net</title>
|
||||||
|
<link rel="stylesheet" href="default.css">
|
||||||
|
</head>
|
||||||
|
<body onload="CalculateGrid(); SetUp(); startApps();">
|
||||||
|
<?php
|
||||||
|
$Page = "Artwork";
|
||||||
|
require_once("Hotbar.php");
|
||||||
|
?>
|
||||||
|
<script src="WindowManager.js"></script>
|
||||||
|
<script src="AlignDesktopApps.js"></script>
|
||||||
|
<script>
|
||||||
|
var Button = document.getElementById("ArtworkBtn");
|
||||||
|
Button.onclick = function(){document.location.href='index.php';};
|
||||||
|
Button.children[0].textContent = "Home";
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
4
ArtworkApps/MelonaArame.html
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
<img src="GeneralAssets/halnetmascot.png" style="width: auto; height: 100%;">
|
||||||
|
<div style="height: 100%; width: 50%; left: 50%; top: 0;">
|
||||||
|
<p class="16 whiteText variableFont" style="overflow: hidden;">This is a character called Melona Arame, she is the halbear.net mascot!<br><br>Melona was drawn on a whim when i(halbear) got my animation tablet so there's not much to say about her, i make stuff up as i go, which is what i normally do for most things, she came to be the mascot of this website when i read about windows "OS-tans" which were anime mascots for the windows operating system, and since i want this website to take inspiration from older windows versions, i decided to use this character i have been drawing. <br><br> one thing about her is that shes kinda stupid i guess, most of my drawings of her have an ahoge on top of her head, which is a trope to show a character is clutzy or stupid<br></p>
|
||||||
|
</div>
|
||||||
3
ArtworkApps/MelonaArameIcon.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<div class="MelonaArameIcon windowIcon hidden 70 80" onclick="OpenApp(this, false, 50, 50);" >
|
||||||
|
<img class="NoAA" src="GeneralAssets/mascotchibi/chibismug.png" style="width: 8vh; height: 8vh;">
|
||||||
|
<a class="whiteText IconText" style="overflow: hidden;">
|
||||||
19
Contact.php
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Halbear.Net</title>
|
||||||
|
<link rel="stylesheet" href="default.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<?php
|
||||||
|
$Page = "Contact";
|
||||||
|
require_once("Hotbar.php");
|
||||||
|
?>
|
||||||
|
<script>
|
||||||
|
var Button = document.getElementById("ContactBtn");
|
||||||
|
Button.onclick = function(){document.location.href='index.php';};
|
||||||
|
Button.children[0].textContent = "Home";
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
24
Forum.php
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Halbear.Net</title>
|
||||||
|
<link rel="stylesheet" href="default.css">
|
||||||
|
</head>
|
||||||
|
<body onload="CalculateGrid(); SetUp();">
|
||||||
|
<?php
|
||||||
|
$Page = "Forum";
|
||||||
|
require_once("Hotbar.php");
|
||||||
|
?>
|
||||||
|
<script>
|
||||||
|
var Button = document.getElementById("ForumBtn");
|
||||||
|
Button.onclick = function(){document.location.href='index.php';};
|
||||||
|
Button.children[0].textContent = "Home";
|
||||||
|
</script>
|
||||||
|
<script src="WindowManager.js"></script>
|
||||||
|
<script src="AlignDesktopApps.js"></script>
|
||||||
|
<script>
|
||||||
|
OpenApp(document.querySelectorAll('.NothingHereIcon')[0], true, 50, 45)
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
3
ForumApps/NothingHere.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<p class="16 whiteText variableFont" style="overflow: hidden; padding: 1vh; margin: 0">There is nothing here yet.... so for now have this heavily compressed and anti aliased image of a cricket i drew from memory(i had no wifi to search up a reference)</p>
|
||||||
|
<div style="height: 100px; width: 100%; color:transparent;">sigma</div>
|
||||||
|
<img src="GeneralAssets/cricket.png" style="height: 20vh; width: auto; position: absolute; top: 50%; left: 50%; transform: translateX(-50%);">
|
||||||
3
ForumApps/NothingHereIcon.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<div class="NothingHereIcon windowIcon hidden 40 41" onclick="OpenApp(this, false, 50, 50);" >
|
||||||
|
<img src="GeneralAssets/cricketHead.png" style="width: 8vh; height: 8vh;">
|
||||||
|
<a class="whiteText IconText" style="overflow: hidden;">
|
||||||
BIN
GeneralAssets/AccountSymbol.png
Normal file
|
After Width: | Height: | Size: 852 B |
BIN
GeneralAssets/AccountSymbolhover.png
Normal file
|
After Width: | Height: | Size: 868 B |
BIN
GeneralAssets/AntiAI.png
Normal file
|
After Width: | Height: | Size: 885 B |
BIN
GeneralAssets/ExitButton.png
Normal file
|
After Width: | Height: | Size: 420 B |
BIN
GeneralAssets/ExitButtonHover.png
Normal file
|
After Width: | Height: | Size: 414 B |
BIN
GeneralAssets/Flowers.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
GeneralAssets/GirlTransParent.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
GeneralAssets/HalNetLogo.png
Normal file
|
After Width: | Height: | Size: 6.4 KiB |
BIN
GeneralAssets/Iconbg.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
GeneralAssets/LightPixels.png
Normal file
|
After Width: | Height: | Size: 819 B |
BIN
GeneralAssets/Logo.png
Normal file
|
After Width: | Height: | Size: 6.4 KiB |
BIN
GeneralAssets/MinimiseButton.png
Normal file
|
After Width: | Height: | Size: 397 B |
BIN
GeneralAssets/MinimiseButtonHover.png
Normal file
|
After Width: | Height: | Size: 389 B |
BIN
GeneralAssets/applicationIcon.png
Normal file
|
After Width: | Height: | Size: 694 B |
BIN
GeneralAssets/background/1.png
Normal file
|
After Width: | Height: | Size: 674 B |
BIN
GeneralAssets/background/2.png
Normal file
|
After Width: | Height: | Size: 456 B |
BIN
GeneralAssets/background/3.png
Normal file
|
After Width: | Height: | Size: 268 B |
BIN
GeneralAssets/background/4.png
Normal file
|
After Width: | Height: | Size: 279 B |
BIN
GeneralAssets/background/5.png
Normal file
|
After Width: | Height: | Size: 471 B |
BIN
GeneralAssets/background/6.png
Normal file
|
After Width: | Height: | Size: 455 B |
BIN
GeneralAssets/cricket.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
GeneralAssets/crickethead.png
Normal file
|
After Width: | Height: | Size: 620 B |
BIN
GeneralAssets/fonts/MonocraftFont/Monocraft.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/Rubik-Italic-VariableFont_wght.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/Rubik-VariableFont_wght.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-Black.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-BlackItalic.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-Bold.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-BoldItalic.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-ExtraBold.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-ExtraBoldItalic.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-Italic.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-Light.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-LightItalic.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-Medium.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-MediumItalic.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-Regular.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-SemiBold.ttf
Normal file
BIN
GeneralAssets/fonts/Rubik/static/Rubik-SemiBoldItalic.ttf
Normal file
BIN
GeneralAssets/halbear.gif
Normal file
|
After Width: | Height: | Size: 1.3 MiB |
BIN
GeneralAssets/halnetmascot.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
GeneralAssets/mascotchibi/chibibawl.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
GeneralAssets/mascotchibi/chibilost.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
GeneralAssets/mascotchibi/chibineutral.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
GeneralAssets/mascotchibi/chibiquestion.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
GeneralAssets/mascotchibi/chibismirk.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
GeneralAssets/mascotchibi/chibismug.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
GeneralAssets/mascotchibi/chibisurprise.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
GeneralAssets/mascotchibi/melonaAppIcon.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
GeneralAssets/mascotchibi/melonareactions.png
Normal file
|
After Width: | Height: | Size: 9.3 KiB |
BIN
GeneralAssets/maximisedSymbol.png
Normal file
|
After Width: | Height: | Size: 312 B |
BIN
GeneralAssets/minimisedSymbol.png
Normal file
|
After Width: | Height: | Size: 281 B |
BIN
GeneralAssets/mods/assets/DefaultModBanner.png
Normal file
|
After Width: | Height: | Size: 3.2 MiB |
BIN
GeneralAssets/mods/assets/hPmlogo.png
Normal file
|
After Width: | Height: | Size: 8.7 KiB |
BIN
GeneralAssets/mods/assets/melonaspin.gif
Normal file
|
After Width: | Height: | Size: 2.5 MiB |
BIN
GeneralAssets/mods/assets/musketeers melonarender.png
Normal file
|
After Width: | Height: | Size: 68 KiB |
BIN
GeneralAssets/mods/assets/musketeersbanner.png
Normal file
|
After Width: | Height: | Size: 64 KiB |
BIN
GeneralAssets/mods/assets/musketeersdescription.png
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
GeneralAssets/mods/assets/screenshot.png
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
GeneralAssets/mods/assets/swashbucklerbanner.png
Normal file
|
After Width: | Height: | Size: 3.4 MiB |
BIN
GeneralAssets/mods/assets/swashbucklers banner 2.png
Normal file
|
After Width: | Height: | Size: 1.8 MiB |
BIN
GeneralAssets/mods/playtestlive.png
Normal file
|
After Width: | Height: | Size: 58 KiB |
BIN
GeneralAssets/pointydownyarrow.png
Normal file
|
After Width: | Height: | Size: 745 B |
BIN
GeneralAssets/software.png
Normal file
|
After Width: | Height: | Size: 272 KiB |
BIN
GeneralAssets/voxelgamedirt.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
GeneralAssets/windowsbutton.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
GeneralAssets/windowsxpicon.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
GeneralAssets/winupkey.png
Normal file
|
After Width: | Height: | Size: 484 B |
66
Hotbar.php
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
<div class="CancelAnimOnLoad hotbarWrapper">
|
||||||
|
<div class="hotbarContainer">
|
||||||
|
<img class="Logo" src="GeneralAssets/Logo.png" alt="Halbear.net">
|
||||||
|
<div class="TitleWhite">halbear.net</div>
|
||||||
|
</div>
|
||||||
|
<div class="hotbarContainer">
|
||||||
|
<div class="hotbarButton" id="ForumBtn" onclick="document.location.href='Forum.php';">
|
||||||
|
<a class="buttontext">Forum</a>
|
||||||
|
</div>
|
||||||
|
<div class="hotbarButton" id="SoftwareBtn" onclick="document.location.href='Software.php';">
|
||||||
|
<a class="buttontext">Software</a>
|
||||||
|
</div>
|
||||||
|
<div class="hotbarButton" id="ArtworkBtn" onclick="document.location.href='Artwork.php';">
|
||||||
|
<a class="buttontext">Artwork</a>
|
||||||
|
</div>
|
||||||
|
<div class="hotbarButton" id="ContactBtn" onclick="document.location.href='Contact.php';">
|
||||||
|
<a class="buttontext">Contact</a>
|
||||||
|
</div>
|
||||||
|
<div class="hotbarButtonSquare" id="AccountBtn" onclick="document.location.href='Account.php';">
|
||||||
|
<div class="accountimg"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
setTimeout(function(){
|
||||||
|
var Wrapper=document.querySelector('.CancelAnimOnLoad');
|
||||||
|
Wrapper.classList.remove('CancelAnimOnLoad');
|
||||||
|
Wrapper.classList.add('hotbarHeight');
|
||||||
|
}, 100);
|
||||||
|
</script>
|
||||||
|
</div>
|
||||||
|
<div class="DesktopIconWrapper">
|
||||||
|
<?php
|
||||||
|
$arrApps = array();
|
||||||
|
$Apps = scandir($Page."Apps");
|
||||||
|
foreach ($Apps as $App) {
|
||||||
|
$filePath = $Page."Apps" . '/' . $App;
|
||||||
|
if (is_file($filePath) && str_contains($filePath,"Icon.html")) {
|
||||||
|
$Name = basename($filePath, "Icon.html");
|
||||||
|
echo file_get_contents($filePath) . $Name . "</a> </div>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</div>
|
||||||
|
<div class="appContainer" id="AppContainer" style="position: absolute; top:0; left: 0; display: flex; width: 100vw; height: 100vh; overflow: hidden;"></div>
|
||||||
|
<div class="TaskBar">
|
||||||
|
<div class="TaskbarLeftOptions">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="TaskbarApps" id="taskbar">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="EndTaskbar">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="background nonDraggableImage">
|
||||||
|
<div class="MelonaBGWrapper">
|
||||||
|
<img class="MelonaBackgroundImage nonDraggableImage" src="GeneralAssets/GirlTransParent.png" style="z-index: 1;">
|
||||||
|
<img class="BackgroundImage nonDraggableImage NoAA" src="GeneralAssets/Flowers.png" style="z-index: 2; ">
|
||||||
|
</div>
|
||||||
|
<div class="backgroundRadial nonDraggableImage"></div>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
const Page = "<?php echo $Page ?>";
|
||||||
|
var apps = document.getElementsByClassName("DraggableWrapper");
|
||||||
|
</script>
|
||||||
5
IndexApps/About.html
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<a class="whiteText" style="padding: 0; margin: 2vh;">
|
||||||
|
halbear.net is a website that contains Games, Software, Artwork and Forums, feel free to explore! <br> <br>
|
||||||
|
Verified users can create software and games, and the websites combative measures against AI and scrapers makes it difficult to scrape your uploaded artwork! <br> <br>
|
||||||
|
Software and Game publishing has some criteria and guidelines you need to follow, although we aren't as temperamental as payment processors.
|
||||||
|
</a>
|
||||||
3
IndexApps/AboutIcon.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<div class="AboutIcon windowIcon hidden 45 46" onclick="OpenApp(this, false, 50, 50);" >
|
||||||
|
<img src="GeneralAssets/applicationIcon.png" style="width: 8vh; height: 8vh;">
|
||||||
|
<a class="whiteText IconText" style="overflow: hidden;">
|
||||||
3
IndexApps/CheckThisOut.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<img src="GeneralAssets/mods/playtestlive.png" style=" padding:0; margin: 1vh; height: 30vh; width: auto; cursor: pointer;" class="imgbutton" onclick="window.location.href='Software.php';">
|
||||||
|
|
||||||
|
|
||||||
3
IndexApps/CheckThisOutIcon.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<div class="ModAdIcon windowIcon hidden 57 35" onclick="OpenApp(this, false, 50, 50);" >
|
||||||
|
<img src="GeneralAssets/applicationIcon.png" style="width: 8vh; height: 8vh;">
|
||||||
|
<a class="whiteText IconText" style="overflow: hidden;">
|
||||||
3
IndexApps/DragMe.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<a class="whiteText" style="padding: 0; margin: 2vh;">
|
||||||
|
Move these windows around by dragging the tops!
|
||||||
|
</a>
|
||||||
3
IndexApps/DragMeIcon.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<div class="DragMeIcon windowIcon hidden 20 20" onclick="OpenApp(this, false, 50, 50);" >
|
||||||
|
<img src="GeneralAssets/applicationIcon.png" style="width: 8vh; height: 8vh;">
|
||||||
|
<a class="whiteText IconText" style="overflow: hidden;">
|
||||||
12
IndexApps/Welcome.html
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
<div style="height: 100%; width: 100%;overflow: hidden; display: flex; flex-direction: row; flex-wrap: nowrap; padding: 0; margin: 0;">
|
||||||
|
<img src="GeneralAssets/halbear.gif" style="height:50vh;width: auto;">
|
||||||
|
<div style="padding: 0; margin: 1vh; display: flex; height: 100%; flex-direction: column; justify-content: space-between;">
|
||||||
|
<div class="whiteText " style="overflow: hidden;"> Welcome to the Halbear.Net website! This is the home of everything related to the Company:<br><br><b>Halbear Networking & Software Ltd</b></b><br><br>The Minecraft style Avatar to the left is the digital representation of the companies Director, Halbear1, this avatar may be used when explaining things in first person on the website<br><br>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="whiteText " style="padding: 0; margin: 0; display: flex; align-items: center; margin-right: 5px; color:white; user-select: none;">
|
||||||
|
<img src="GeneralAssets/AntiAI.png" class="nonDraggableImage" style=" height: 5vh; width: 5vh;">
|
||||||
|
: This website is AI free
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
3
IndexApps/WelcomeIcon.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<div class="WelcomeIcon windowIcon hidden 55 55" onclick="OpenApp(this, false, 50, 50);" >
|
||||||
|
<img src="GeneralAssets/applicationIcon.png" style="width: 8vh; height: 8vh;">
|
||||||
|
<a class="whiteText IconText" style="overflow: hidden;">
|
||||||
19
Software.php
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Halbear.Net</title>
|
||||||
|
<link rel="stylesheet" href="default.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<?php
|
||||||
|
$Page = "Software";
|
||||||
|
require_once("Hotbar.php");
|
||||||
|
?>
|
||||||
|
<script>
|
||||||
|
var Button = document.getElementById("SoftwareBtn");
|
||||||
|
Button.onclick = function(){document.location.href='index.php';};
|
||||||
|
Button.children[0].textContent = "Home";
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||