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