commit 76481bbb0319aa33459ae0729df2f7f594d7a9c7
Author: root <root@hub.scroll.pub>
Date: 2024-12-28 02:23:48 +0000
Subject: Initial commit
diff --git a/body.html b/body.html
new file mode 100644
index 0000000..5b17945
--- /dev/null
+++ b/body.html
@@ -0,0 +1,40 @@
+<header>
+ <h1>TI Net</h1>
+ <nav>
+ <ul>
+ <li><a href="#inventory">Inventory</a></li>
+ <li><a href="#tickets">Tickets</a></li>
+ <li><a href="#services">Service Records</a></li>
+ </ul>
+ </nav>
+</header>
+
+<main>
+ <section id="inventory">
+ <h2>Inventory Management</h2>
+ <div class="search-container">
+ <input type="text" id="search" placeholder="Search inventory...">
+ <button onclick="searchInventory()">Search</button>
+ </div>
+ <div class="inventory-list"></div>
+ </section>
+
+ <section id="tickets">
+ <h2>Support Tickets</h2>
+ <form id="ticket-form">
+ <input type="text" id="ticket-title" placeholder="Ticket title" required>
+ <textarea id="ticket-description" placeholder="Describe your issue" required></textarea>
+ <button type="submit">Create Ticket</button>
+ </form>
+ <div class="tickets-list"></div>
+ </section>
+
+ <section id="services">
+ <h2>Service Records</h2>
+ <div class="service-list"></div>
+ </section>
+</main>
+
+<footer>
+ <p>TI Net - Your IT Support Solution</p>
+</footer>
\ No newline at end of file
diff --git a/index.scroll b/index.scroll
new file mode 100644
index 0000000..1ebed65
--- /dev/null
+++ b/index.scroll
@@ -0,0 +1,8 @@
+buildHtml
+baseUrl https://tinet.scroll.pub
+metaTags
+editButton /edit.html
+title TI Net - IT Support & Inventory Management
+style.css
+body.html
+script.js
\ No newline at end of file
diff --git a/prompt.json b/prompt.json
new file mode 100644
index 0000000..22f673b
--- /dev/null
+++ b/prompt.json
@@ -0,0 +1,25 @@
+{
+ "id": "327954a5-d638-48aa-831d-6afc9b88c3e1",
+ "object": "chat.completion",
+ "created": 1735352608,
+ "model": "deepseek-chat",
+ "choices": [
+ {
+ "index": 0,
+ "message": {
+ "role": "assistant",
+ "content": "---domain---\ntinet.scroll.pub\n---index.scroll---\nbuildHtml\nbaseUrl https://tinet.scroll.pub\nmetaTags\neditButton /edit.html\ntitle TI Net - IT Support & Inventory Management\nstyle.css\nbody.html\nscript.js\n---body.html---\n<header>\n <h1>TI Net</h1>\n <nav>\n <ul>\n <li><a href=\"#inventory\">Inventory</a></li>\n <li><a href=\"#tickets\">Tickets</a></li>\n <li><a href=\"#services\">Service Records</a></li>\n </ul>\n </nav>\n</header>\n\n<main>\n <section id=\"inventory\">\n <h2>Inventory Management</h2>\n <div class=\"search-container\">\n <input type=\"text\" id=\"search\" placeholder=\"Search inventory...\">\n <button onclick=\"searchInventory()\">Search</button>\n </div>\n <div class=\"inventory-list\"></div>\n </section>\n\n <section id=\"tickets\">\n <h2>Support Tickets</h2>\n <form id=\"ticket-form\">\n <input type=\"text\" id=\"ticket-title\" placeholder=\"Ticket title\" required>\n <textarea id=\"ticket-description\" placeholder=\"Describe your issue\" required></textarea>\n <button type=\"submit\">Create Ticket</button>\n </form>\n <div class=\"tickets-list\"></div>\n </section>\n\n <section id=\"services\">\n <h2>Service Records</h2>\n <div class=\"service-list\"></div>\n </section>\n</main>\n\n<footer>\n <p>TI Net - Your IT Support Solution</p>\n</footer>\n---style.css---\n:root {\n --primary-color: #2563eb;\n --secondary-color: #1e40af;\n --background-color: #f8fafc;\n --text-color: #1e293b;\n --border-radius: 8px;\n --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n}\n\nbody {\n font-family: system-ui, -apple-system, sans-serif;\n line-height: 1.6;\n margin: 0;\n padding: 0;\n background-color: var(--background-color);\n color: var(--text-color);\n}\n\nheader {\n background: var(--primary-color);\n color: white;\n padding: 2rem;\n text-align: center;\n box-shadow: var(--shadow);\n}\n\nnav ul {\n list-style: none;\n padding: 0;\n display: flex;\n justify-content: center;\n gap: 1rem;\n margin-top: 1rem;\n}\n\nnav a {\n color: white;\n text-decoration: none;\n padding: 0.5rem 1rem;\n border-radius: var(--border-radius);\n transition: background-color 0.3s;\n}\n\nnav a:hover {\n background-color: var(--secondary-color);\n}\n\nmain {\n padding: 2rem;\n max-width: 1200px;\n margin: 0 auto;\n}\n\nsection {\n margin-bottom: 3rem;\n background: white;\n padding: 2rem;\n border-radius: var(--border-radius);\n box-shadow: var(--shadow);\n}\n\nh2 {\n color: var(--primary-color);\n margin-bottom: 1.5rem;\n}\n\n.search-container {\n display: flex;\n gap: 1rem;\n margin-bottom: 1.5rem;\n}\n\ninput, textarea {\n padding: 0.75rem;\n border: 1px solid #ddd;\n border-radius: var(--border-radius);\n width: 100%;\n}\n\nbutton {\n background: var(--primary-color);\n color: white;\n border: none;\n padding: 0.75rem 1.5rem;\n border-radius: var(--border-radius);\n cursor: pointer;\n transition: background-color 0.3s;\n}\n\nbutton:hover {\n background: var(--secondary-color);\n}\n\n.inventory-list, .tickets-list, .service-list {\n display: grid;\n gap: 1rem;\n}\n\nfooter {\n text-align: center;\n padding: 1.5rem;\n background: var(--primary-color);\n color: white;\n margin-top: 3rem;\n}\n\n@media (max-width: 768px) {\n nav ul {\n flex-direction: column;\n }\n \n .search-container {\n flex-direction: column;\n }\n}\n---script.js---\n// Inventory Data\nlet inventory = [\n { id: 1, name: 'Laptop', quantity: 15 },\n { id: 2, name: 'Monitor', quantity: 20 },\n { id: 3, name: 'Keyboard', quantity: 30 }\n];\n\n// Tickets Data\nlet tickets = [];\n\n// Display Inventory\nfunction displayInventory() {\n const inventoryList = document.querySelector('.inventory-list');\n inventoryList.innerHTML = inventory.map(item => `\n <div class=\"inventory-item\">\n <h3>${item.name}</h3>\n <p>Quantity: ${item.quantity}</p>\n </div>\n `).join('');\n}\n\n// Search Inventory\nfunction searchInventory() {\n const searchTerm = document.getElementById('search').value.toLowerCase();\n const filteredInventory = inventory.filter(item => \n item.name.toLowerCase().includes(searchTerm)\n );\n const inventoryList = document.querySelector('.inventory-list');\n inventoryList.innerHTML = filteredInventory.map(item => `\n <div class=\"inventory-item\">\n <h3>${item.name}</h3>\n <p>Quantity: ${item.quantity}</p>\n </div>\n `).join('');\n}\n\n// Handle Ticket Form\ndocument.getElementById('ticket-form').addEventListener('submit', function(e) {\n e.preventDefault();\n const title = document.getElementById('ticket-title').value;\n const description = document.getElementById('ticket-description').value;\n \n const newTicket = {\n id: tickets.length + 1,\n title,\n description,\n status: 'Open',\n date: new Date().toLocaleDateString()\n };\n \n tickets.push(newTicket);\n displayTickets();\n this.reset();\n});\n\n// Display Tickets\nfunction displayTickets() {\n const ticketsList = document.querySelector('.tickets-list');\n ticketsList.innerHTML = tickets.map(ticket => `\n <div class=\"ticket-item\">\n <h3>${ticket.title}</h3>\n <p>${ticket.description}</p>\n <p>Status: ${ticket.status}</p>\n <small>Created: ${ticket.date}</small>\n </div>\n `).join('');\n}\n\n// Initial Load\ndisplayInventory();\ndisplayTickets();\n---end---"
+ },
+ "logprobs": null,
+ "finish_reason": "stop"
+ }
+ ],
+ "usage": {
+ "prompt_tokens": 254,
+ "completion_tokens": 1474,
+ "total_tokens": 1728,
+ "prompt_cache_hit_tokens": 0,
+ "prompt_cache_miss_tokens": 254
+ },
+ "system_fingerprint": "fp_f1afce2943"
+}
\ No newline at end of file
diff --git a/readme.scroll b/readme.scroll
new file mode 100644
index 0000000..ee574fc
--- /dev/null
+++ b/readme.scroll
@@ -0,0 +1,2 @@
+# tinet.scroll.pub
+Website generated by DeepSeek from prompt: I need a website for TI support with inventory, service records, tickets with emails notifications, ticket status
\ No newline at end of file
diff --git a/script.js b/script.js
new file mode 100644
index 0000000..ae1f6ca
--- /dev/null
+++ b/script.js
@@ -0,0 +1,71 @@
+// Inventory Data
+let inventory = [
+ { id: 1, name: 'Laptop', quantity: 15 },
+ { id: 2, name: 'Monitor', quantity: 20 },
+ { id: 3, name: 'Keyboard', quantity: 30 }
+];
+
+// Tickets Data
+let tickets = [];
+
+// Display Inventory
+function displayInventory() {
+ const inventoryList = document.querySelector('.inventory-list');
+ inventoryList.innerHTML = inventory.map(item => `
+ <div class="inventory-item">
+ <h3>${item.name}</h3>
+ <p>Quantity: ${item.quantity}</p>
+ </div>
+ `).join('');
+}
+
+// Search Inventory
+function searchInventory() {
+ const searchTerm = document.getElementById('search').value.toLowerCase();
+ const filteredInventory = inventory.filter(item =>
+ item.name.toLowerCase().includes(searchTerm)
+ );
+ const inventoryList = document.querySelector('.inventory-list');
+ inventoryList.innerHTML = filteredInventory.map(item => `
+ <div class="inventory-item">
+ <h3>${item.name}</h3>
+ <p>Quantity: ${item.quantity}</p>
+ </div>
+ `).join('');
+}
+
+// Handle Ticket Form
+document.getElementById('ticket-form').addEventListener('submit', function(e) {
+ e.preventDefault();
+ const title = document.getElementById('ticket-title').value;
+ const description = document.getElementById('ticket-description').value;
+
+ const newTicket = {
+ id: tickets.length + 1,
+ title,
+ description,
+ status: 'Open',
+ date: new Date().toLocaleDateString()
+ };
+
+ tickets.push(newTicket);
+ displayTickets();
+ this.reset();
+});
+
+// Display Tickets
+function displayTickets() {
+ const ticketsList = document.querySelector('.tickets-list');
+ ticketsList.innerHTML = tickets.map(ticket => `
+ <div class="ticket-item">
+ <h3>${ticket.title}</h3>
+ <p>${ticket.description}</p>
+ <p>Status: ${ticket.status}</p>
+ <small>Created: ${ticket.date}</small>
+ </div>
+ `).join('');
+}
+
+// Initial Load
+displayInventory();
+displayTickets();
\ No newline at end of file
diff --git a/style.css b/style.css
new file mode 100644
index 0000000..6965c25
--- /dev/null
+++ b/style.css
@@ -0,0 +1,115 @@
+:root {
+ --primary-color: #2563eb;
+ --secondary-color: #1e40af;
+ --background-color: #f8fafc;
+ --text-color: #1e293b;
+ --border-radius: 8px;
+ --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
+}
+
+body {
+ font-family: system-ui, -apple-system, sans-serif;
+ line-height: 1.6;
+ margin: 0;
+ padding: 0;
+ background-color: var(--background-color);
+ color: var(--text-color);
+}
+
+header {
+ background: var(--primary-color);
+ color: white;
+ padding: 2rem;
+ text-align: center;
+ box-shadow: var(--shadow);
+}
+
+nav ul {
+ list-style: none;
+ padding: 0;
+ display: flex;
+ justify-content: center;
+ gap: 1rem;
+ margin-top: 1rem;
+}
+
+nav a {
+ color: white;
+ text-decoration: none;
+ padding: 0.5rem 1rem;
+ border-radius: var(--border-radius);
+ transition: background-color 0.3s;
+}
+
+nav a:hover {
+ background-color: var(--secondary-color);
+}
+
+main {
+ padding: 2rem;
+ max-width: 1200px;
+ margin: 0 auto;
+}
+
+section {
+ margin-bottom: 3rem;
+ background: white;
+ padding: 2rem;
+ border-radius: var(--border-radius);
+ box-shadow: var(--shadow);
+}
+
+h2 {
+ color: var(--primary-color);
+ margin-bottom: 1.5rem;
+}
+
+.search-container {
+ display: flex;
+ gap: 1rem;
+ margin-bottom: 1.5rem;
+}
+
+input, textarea {
+ padding: 0.75rem;
+ border: 1px solid #ddd;
+ border-radius: var(--border-radius);
+ width: 100%;
+}
+
+button {
+ background: var(--primary-color);
+ color: white;
+ border: none;
+ padding: 0.75rem 1.5rem;
+ border-radius: var(--border-radius);
+ cursor: pointer;
+ transition: background-color 0.3s;
+}
+
+button:hover {
+ background: var(--secondary-color);
+}
+
+.inventory-list, .tickets-list, .service-list {
+ display: grid;
+ gap: 1rem;
+}
+
+footer {
+ text-align: center;
+ padding: 1.5rem;
+ background: var(--primary-color);
+ color: white;
+ margin-top: 3rem;
+}
+
+@media (max-width: 768px) {
+ nav ul {
+ flex-direction: column;
+ }
+
+ .search-container {
+ flex-direction: column;
+ }
+}
\ No newline at end of file