Subbu1304 commited on
Commit
082f1a3
Β·
verified Β·
1 Parent(s): aed45d4

Create templets/index.html

Browse files
Files changed (1) hide show
  1. templets/index.html +180 -0
templets/index.html ADDED
@@ -0,0 +1,180 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Biryani Hub Registration</title>
7
+ <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;500&display=swap" rel="stylesheet">
8
+ <style>
9
+ body {
10
+ font-family: 'Roboto', sans-serif;
11
+ background: linear-gradient(135deg, #f4c542, #ff8f6a);
12
+ margin: 0;
13
+ display: flex;
14
+ justify-content: center;
15
+ align-items: center;
16
+ height: 100vh;
17
+ text-align: center;
18
+ }
19
+ .container {
20
+ background-color: #87ceeb; /* Light blue */
21
+ padding: 40px 50px;
22
+ border-radius: 10px;
23
+ width: 400px;
24
+ box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
25
+ }
26
+ h1 {
27
+ font-size: 30px;
28
+ font-weight: bold;
29
+ color: #ff6a00;
30
+ }
31
+ label {
32
+ font-size: 16px;
33
+ margin-top: 20px;
34
+ display: block;
35
+ text-align: left;
36
+ font-weight: bold;
37
+ }
38
+ input[type="text"] {
39
+ width: 100%;
40
+ padding: 12px;
41
+ font-size: 16px;
42
+ border: 2px solid #ccc;
43
+ border-radius: 8px;
44
+ margin-top: 8px;
45
+ box-sizing: border-box;
46
+ }
47
+ input[type="text"]:focus {
48
+ border-color: #ff6a00;
49
+ outline: none;
50
+ }
51
+ .info {
52
+ margin-top: 20px;
53
+ font-size: 16px;
54
+ color: #ff6a00;
55
+ font-weight: bold;
56
+ }
57
+ .status {
58
+ font-size: 14px;
59
+ color: gray;
60
+ margin-top: 20px;
61
+ }
62
+ .image-logo {
63
+ width: 80px;
64
+ margin-bottom: 20px;
65
+ }
66
+ </style>
67
+ </head>
68
+ <body>
69
+ <div class="container">
70
+ <h1>Welcome to Biryani Hub 🍽 πŸ—</h1>
71
+
72
+
73
+ <label for="name">Your Name</label>
74
+ <input type="text" id="name" placeholder="Your name will appear here..." readonly>
75
+
76
+ <label for="email">Your Email</label>
77
+ <input type="text" id="email" placeholder="Your email will appear here..." readonly>
78
+
79
+ <label for="mobile">Your Mobile Number</label>
80
+ <input type="text" id="mobile" placeholder="Your mobile number will appear here..." readonly>
81
+
82
+ <p class="info" id="infoMessage">Listening πŸ—£πŸŽ™οΈ...</p>
83
+ <p class="status" id="status">πŸ”Š...</p>
84
+ </div>
85
+
86
+ <script>
87
+ let recognition;
88
+ let nameCaptured = "";
89
+ let emailCaptured = "";
90
+ let mobileCaptured = "";
91
+ if ('webkitSpeechRecognition' in window) {
92
+ recognition = new webkitSpeechRecognition();
93
+ recognition.continuous = false;
94
+ recognition.interimResults = false;
95
+ recognition.lang = 'en-US';
96
+ } else {
97
+ alert("Speech Recognition API is not supported in this browser.");
98
+ }
99
+ function speak(text, callback) {
100
+ const speech = new SpeechSynthesisUtterance(text);
101
+ speech.onend = callback;
102
+ window.speechSynthesis.speak(speech);
103
+ }
104
+ function startListeningForName() {
105
+ recognition.start();
106
+ recognition.onresult = function(event) {
107
+ nameCaptured = event.results[0][0].transcript.trim();
108
+ document.getElementById('name').value = nameCaptured;
109
+ recognition.stop();
110
+ setTimeout(confirmName, 500);
111
+ };
112
+ }
113
+ function confirmName() {
114
+ speak("You said " + nameCaptured + ". Is it okay, or do you want to change it?", function() {
115
+ recognition.start();
116
+ recognition.onresult = function(event) {
117
+ let confirmation = event.results[0][0].transcript.trim().toLowerCase();
118
+ recognition.stop();
119
+ if (confirmation.includes("ok") || confirmation.includes("yes")) {
120
+ setTimeout(() => speak("Great! Now, tell me your email.", startListeningForEmail), 500);
121
+ } else {
122
+ setTimeout(() => speak("Let's try again. Tell me your name.", startListeningForName), 500);
123
+ }
124
+ };
125
+ });
126
+ }
127
+ function startListeningForEmail() {
128
+ recognition.start();
129
+ recognition.onresult = function(event) {
130
+ emailCaptured = event.results[0][0].transcript.trim().replace(/\bat\b/g, '@').replace(/\s+/g, '');
131
+ document.getElementById('email').value = emailCaptured;
132
+ recognition.stop();
133
+ speak("You said " + emailCaptured + ". Is it correct?", function() {
134
+ recognition.start();
135
+ recognition.onresult = function(event) {
136
+ let confirmation = event.results[0][0].transcript.trim().toLowerCase();
137
+ recognition.stop();
138
+ if (confirmation.includes("ok") || confirmation.includes("yes")) {
139
+ setTimeout(() => speak("Great! Now, tell me your mobile number.", startListeningForMobile), 500);
140
+ } else {
141
+ speak("Let's try again. Tell me your email.", startListeningForEmail);
142
+ }
143
+ };
144
+ });
145
+ };
146
+ }
147
+ function startListeningForMobile() {
148
+ recognition.start();
149
+ recognition.onresult = function(event) {
150
+ mobileCaptured = event.results[0][0].transcript.trim().replace(/\s+/g, '');
151
+ document.getElementById('mobile').value = mobileCaptured;
152
+ recognition.stop();
153
+ speak("You said " + mobileCaptured + ". Is it correct?", function() {
154
+ recognition.start();
155
+ recognition.onresult = function(event) {
156
+ let confirmation = event.results[0][0].transcript.trim().toLowerCase();
157
+ recognition.stop();
158
+ if (confirmation.includes("ok") || confirmation.includes("yes")) {
159
+ speak("Your registration is complete. Thank you for registering.");
160
+ setTimeout(() => location.reload(), 20000);
161
+ } else {
162
+ speak("Let's try again. Tell me your mobile number.", startListeningForMobile);
163
+ }
164
+ };
165
+ });
166
+ };
167
+ }
168
+ function startProcess() {
169
+ speak("Welcome to Biryani Hub", function() {
170
+ speak("Tell me your name, and I will confirm it with you.", function() {
171
+ setTimeout(startListeningForName, 500);
172
+ });
173
+ });
174
+ }
175
+ window.onload = function () {
176
+ setTimeout(startProcess, 4000);
177
+ };
178
+ </script>
179
+ </body>
180
+ </html>