<!DOCTYPE html>
<html lang="so">
<head>
\<meta charset="UTF-8"\>
\<meta name="viewport" content="width=device-width, initial-scale=1.0"\>
\<title\>Dalbo Internet - EVC Plus\</title\>
\<style\>
body {
font-family: 'Arial', sans-serif;
background: linear-gradient(to right, #00c6ff, #0072ff);
text-align: center;
color: white;
padding: 20px;
}
.container {
background: white;
max-width: 400px;
margin: auto;
padding: 20px;
border-radius: 10px;
box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
text-align: left;
color: black;
}
h2 {
color: red;
}
.tab-buttons {
display: flex;
justify-content: space-around;
margin-bottom: 10px;
}
.tab-buttons button {
background: red;
color: white;
padding: 10px;
border: none;
cursor: pointer;
border-radius: 5px;
flex: 1;
margin: 0 5px;
}
.tab-buttons button.active {
background: darkred;
}
.tab-content {
display: none;
}
.tab-content.active {
display: block;
}
input, select, button {
width: 100%;
padding: 10px;
margin-top: 5px;
border: 1px solid #ccc;
border-radius: 5px;
font-size: 16px;
}
button {
background: red;
color: white;
font-weight: bold;
border: none;
cursor: pointer;
margin-top: 15px;
transition: background 0.3s ease;
}
button:hover {
background: darkred;
}
.payment-info {
background: #f8f9fa;
padding: 10px;
border-radius: 5px;
margin-top: 10px;
font-size: 14px;
}
.company-logo {
display: block;
width: 100px;
margin: 10px auto;
}
.error {
color: red;
font-size: 14px;
}
\</style\>
</head>
<body onload="greetUser()">
\<h2\>Dalbo Internet\</h2\>
\<div class="container"\>
\<div class="tab-buttons"\>
\<button class="active" onclick="openTab('dalbo')"\>📩 Dalbo\</button\>
\<button onclick="openTab('payment')"\>💳 Xaqiiji Payment\</button\>
\</div\>
\<div id="dalbo" class="tab-content active"\>
\<form id="orderForm"\>
\<label\>👤 Magacaaga:\</label\>
\<input type="text" id="name" onfocus="askQuestion('What is your name?')"\>
\<p class="error" id="nameError"\>\</p\>
\<label\>📞 Lambarkaaga:\</label\>
\<input type="tel" id="number" onfocus="askQuestion('What is your phone number?')"\>
\<p class="error" id="numberError"\>\</p\>
\<label\>🏢 Shirkadda:\</label\>
\<select id="company" onchange="updatePackages(); updateLogo(); announceSelection('company')"\>
\<option value="Somtel"\>Somtel\</option\>
\<option value="Somnet"\>Somnet\</option\>
\<option value="Amtel"\>Amtel\</option\>
\<option value="Somlink"\>Somlink\</option\>
\<option value="Hormuud"\>Hormuud\</option\>
\</select\>
\<img id="companyLogo" class="company-logo" src="somtel.png" alt="Shirkadda Logo"\>
\<label\>📦 Xirmada Internetka:\</label\>
\<select id="package" onchange="announceSelection('package')"\>\</select\>
\<button type="button" onclick="validateForm()"\>💳 U Gudub Payment\</button\>
\</form\>
\</div\>
\<div id="payment" class="tab-content"\>
\<div class="payment-info"\>
\<p\>💳 \<b\>Lacagta u dir:\</b\> \<span style="color: green;"\>616656880\</span\>\</p\>
\<p\>✅ Kadibna geli lambarka internet-ka:\</p\>
\</div\>
\<label\>📞 Lambarka Internet-ka:\</label\>
\<input type="tel" id="transaction" onfocus="askQuestion('Enter your internet number for payment confirmation.')"\>
\<p class="error" id="transactionError"\>\</p\>
\<button onclick="sendToWhatsApp()"\>📩 Xaqiiji\</button\>
\<button onclick="sendMoney()"\>📤 Dir Lacagta\</button\>
\</div\>
\</div\>
\<script\>
let companyPrefixes = {
"Somtel": "62",
"Somnet": "68",
"Somlink": "64",
"Hormuud": "61",
"Amtel": "71"
};
function greetUser() {
speak("Welcome! Please enter your details to order internet.");
}
function openTab(tabName) {
document.querySelectorAll(".tab-content").forEach(tab =\> tab.classList.remove("active"));
document.querySelectorAll(".tab-buttons button").forEach(button =\> button.classList.remove("active"));
document.getElementById(tabName).classList.add("active");
document.querySelector(\`\[onclick="openTab('${tabName}')"\]\`).classList.add("active");
}
function validateForm() {
let name = document.getElementById("name").value;
let number = document.getElementById("number").value;
let validPrefixes = \["61", "62", "64", "68", "71"\];
document.getElementById("nameError").innerText = name === "" ? "Magaca waa in la buuxiyaa!" : "";
document.getElementById("numberError").innerText = number === "" ? "Lambarka waa in la buuxiyaa!" : "";
if (number && !validPrefixes.some(prefix =\> number.startsWith(prefix))) {
document.getElementById("numberError").innerText = "Lambarkaagu sax ma ahan!";
speak("Your phone number is incorrect!");
return;
}
if (name && number) {
speak("Your order has been submitted, please proceed to payment.");
openTab("payment");
}
}
function speak(text) {
let msg = new SpeechSynthesisUtterance(text);
msg.lang = "en-US";
window.speechSynthesis.speak(msg);
}
function askQuestion(text) {
speak(text);
}
function announceSelection(type) {
let text = type === "company" ? "You selected " + document.getElementById("company").value : "You chose the " + document.getElementById("package").value + " package";
speak(text);
}
function sendToWhatsApp() {
let name = document.getElementById("name").value;
let number = document.getElementById("number").value;
let company = document.getElementById("company").value;
let packageText = document.getElementById("package").selectedOptions\[0\].text;
let packageType = document.getElementById("package").selectedOptions\[0\].getAttribute("data-type"); // Get type from data-type attribute
let transaction = document.getElementById("transaction").value;
let prefix = companyPrefixes\[company\];
if (transaction.length !== 9) {
document.getElementById("transactionError").innerText = "Lambarka internetka waa inuu noqdaa 9 lambar!";
speak("The internet number must be 9 digits!");
return;
}
if (!transaction.startsWith(prefix)) {
document.getElementById("transactionError").innerText = \`Lambarka internetka waa inuu ku bilaabmaa ${prefix}\`;
speak("The internet number must start with " + prefix);
return;
}
if (!transaction) {
document.getElementById("transactionError").innerText = "Lambarka internetka waa in la buuxiyaa!";
return;
}
// Extract the price from the package text
let price = packageText.split(" - ")\[1\];
// Haddii qiimaha uu yahay "undefined", isticmaal qiimaha default
if (!price) {
price = "0.00"; // Qiimaha default haddii aan la helin qiimaha
}
let message = \`📩 \*Dalab Cusub!\* %0A\`
+ \`👤 \*Magaca:\* ${name} %0A\`
+ \`📞 \*Numberka:\* ${number} %0A\`
+ \`🏢 \*Shirkadda:\* ${company} %0A\`
+ \`📦 \*Xirmada:\* ${packageText} %0A\`
+ \`💾 \*Nooca:\* ${packageType} %0A\` // Use packageType instead of type
+ \`💲 \*Qiimaha:\* ${price} %0A\`
+ \`📡 \*Numberka Internetka:\* ${transaction}\`;
window.open(\`https://wa.me/616656880?text=${message}\`, "\_blank");
speak("Payment verification sent.");
}
function sendMoney() {
let packageSelect = document.getElementById("package");
let price = packageSelect.value; // Qiimaha xirmada la doortay
let ussdCode = \`\*712\*616656880\*${price}#\`;
// U dir USSD code-ka
window.location.href = \`tel:${encodeURIComponent(ussdCode)}\`;
}
function updateLogo() {
let company = document.getElementById("company").value;
document.getElementById("companyLogo").src = \`${company.toLowerCase()}.png\`;
}
function updatePackages() {
let company = document.getElementById("company").value;
let packageSelect = document.getElementById("package");
packageSelect.innerHTML = "";
let packages = \[\];
switch (company) {
case "Somtel":
packages = \[
{ name: "Unlimited (24 saac)", price: "0.65", type: "Unlimited" },
{ name: "1.2GB", price: "0.50", type: "GB" },
{ name: "450MB", price: "0.25", type: "MB" },
{ name: "2.5GB", price: "0.95", type: "GB" }
\];
break;
case "Somnet":
packages = \[
{ name: "Unlimited (24 saac)", price: "0.65", type: "Unlimited" },
{ name: "425MB", price: "0.25", type: "MB" },
{ name: "1.2GB", price: "0.47", type: "GB" },
{ name: "2.5GB", price: "0.95", type: "GB" }
\];
break;
case "Amtel":
packages = \[
{ name: "Unlimited (36 saac)", price: "0.48", type: "Unlimited" },
{ name: "3GB", price: "1.00", type: "GB" }
\];
break;
case "Somlink":
packages = \[
{ name: "Unlimited (24 saac)", price: "0.48", type: "Unlimited" },
{ name: "6GB", price: "1.00", type: "GB" }
\];
break;
case "Hormuud":
packages = \[
{ name: "Unlimited", price: "0.75", type: "Unlimited" },
{ name: "2GB", price: "0.95", type: "GB" }
\];
break;
default:
packages = \[
{ name: "Unlimited", price: "0.75", type: "Unlimited" },
{ name: "2GB", price: "0.95", type: "GB" }
\];
}
packages.forEach(pkg =\> {
let option = document.createElement("option");
option.textContent = \`${pkg.name} - $${pkg.price}\`;
option.value = pkg.price; // Set value to price for payment processing
option.setAttribute("data-type", pkg.type); // Add data-type attribute
packageSelect.appendChild(option);
});
}
window.onload = function() {
greetUser();
updatePackages();
updateLogo();
};
\</script\>
</body>
</html>