Compare commits

..

3 Commits

Author SHA1 Message Date
Lutchy Horace af617f482b Updated about text 2024-01-29 00:03:51 -05:00
Lutchy Horace 76728ef20f Added a new promo image 2024-01-29 00:02:40 -05:00
Lutchy Horace 54093e75e0 Added a simple TODO list manager 2024-01-29 00:02:02 -05:00
6 changed files with 154 additions and 3 deletions

View File

@ -186,7 +186,7 @@ owa_cmds.push(['trackClicks']);
<div class="section-title position-relative mb-4 pb-4">
<h1 class="mb-2">Welcome to IO Cloud Solutions</h1>
</div>
<p class="mb-4">Hello everyone, my name is <a href="https://www.bugzbunny.net">Lutchy Horace</a> (the owner), but my friends call me Bugz, short for Bugzbunny. I got into this business in 2023 because I believe there was a gap in providing best-in-class support for small businesses. I'm harnessing my 10+ years of experience to provide the service that will provide you peace of mind and affordability. To create an online presence for yourself, for your family, your business, or a given cause. Come join us and support this dream!</p>
<p class="mb-4">Hey everyone! The name's <a href="https://www.bugzbunny.net">Lutchy Horace</a>, but you can call me Bugz, aka Bugzbunny. I jumped into this business in 2023 because I noticed a gap in the market when it came to providing exceptional support for small businesses. Drawing from my extensive 10+ years of experience, I'm here to offer you a service that guarantees peace of mind and affordability. Whether you're looking to create an online presence for yourself, your family, your business, or a cause you're passionate about, we've got your back. Join us in supporting this dream!</p>
<div class="row g-3">
<div class="col-sm-4 wow fadeIn" data-wow-delay="0.1s">
<div class="bg-light rounded text-center p-4">

Binary file not shown.

After

Width:  |  Height:  |  Size: 532 KiB

View File

@ -59,8 +59,8 @@
</div>
</li>
<li class="faq-item">
<div class="question">Why do we use it?</div>
<div class="answer">It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout.</div>
<div class="question">Where can I find the TODO list for staff?</div>
<div class="answer">You'll found it <a href="todo.html">here</a>.</div>
</li>
<li class="faq-item">
<div class="question">Where does it come from?</div>

5
staff/load_tasks.php Normal file
View File

@ -0,0 +1,5 @@
<?php
// Load tasks from the flat-file database (tasks.txt)
$tasks = file_exists("tasks.txt") ? explode("\n", file_get_contents("tasks.txt")) : [];
echo json_encode($tasks);
?>

8
staff/save_tasks.php Normal file
View File

@ -0,0 +1,8 @@
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$data = json_decode(file_get_contents("php://input"), true);
// Store tasks in a flat-file database (tasks.txt)
file_put_contents("tasks.txt", implode("\n", $data["tasks"]));
}
?>

138
staff/todo.html Normal file
View File

@ -0,0 +1,138 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Todo List Manager</title>
<style>
body {
font-family: Arial, sans-serif;
margin: 20px;
}
#taskInput, #assigneeInput {
width: 70%;
padding: 10px;
margin-bottom: 10px;
}
#addButton {
padding: 10px;
cursor: pointer;
}
#taskList {
list-style-type: none;
padding: 0;
}
.taskItem {
display: flex;
justify-content: space-between;
align-items: center;
padding: 10px;
margin-bottom: 5px;
border: 1px solid #ddd;
background-color: #f9f9f9;
}
.deleteButton {
cursor: pointer;
color: red;
font-weight: bold;
}
</style>
</head>
<body>
<h2>Todo List Manager</h2>
<div>
<input type="text" id="taskInput" placeholder="Add a new task">
<input type="text" id="assigneeInput" placeholder="Assignee's name">
<button onclick="addTask()" id="addButton">Add Task</button>
</div>
<ul id="taskList"></ul>
<script>
function addTask() {
// Existing addTask function remains the same
saveTasks(); // Save tasks after adding one
}
function saveTasks() {
var taskList = document.getElementById("taskList");
var tasks = [];
// Iterate through the list items and store task text in the tasks array
for (var i = 0; i < taskList.children.length; i++) {
tasks.push(taskList.children[i].innerText.trim());
}
// Send tasks to the server for saving
var xhr = new XMLHttpRequest();
xhr.open("POST", "save_tasks.php", true);
xhr.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
xhr.send(JSON.stringify({ tasks: tasks }));
// Reload tasks after saving to update any changes
loadTasks();
}
// Load tasks from the server
function loadTasks() {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
var tasks = JSON.parse(xhr.responseText);
displayTasks(tasks);
}
};
xhr.open("GET", "load_tasks.php", true);
xhr.send();
}
// Display tasks on the page
function displayTasks(tasks) {
var taskList = document.getElementById("taskList");
// Clear existing tasks
while (taskList.firstChild) {
taskList.removeChild(taskList.firstChild);
}
// Display tasks from the array
tasks.forEach(function(taskText) {
var listItem = document.createElement("li");
listItem.className = "taskItem";
var taskTextNode = document.createTextNode(taskText);
listItem.appendChild(taskTextNode);
var deleteButton = document.createElement("span");
deleteButton.className = "deleteButton";
deleteButton.innerHTML = "Delete";
deleteButton.onclick = function() {
taskList.removeChild(listItem);
saveTasks(); // Save tasks after deleting one
};
listItem.appendChild(deleteButton);
taskList.appendChild(listItem);
});
}
// Auto-refresh every 5 seconds (adjust as needed)
setInterval(loadTasks, 5000);
// Initial load of tasks when the page is loaded
window.onload = function() {
loadTasks();
};
</script>
</body>
</html>