muddasser commited on
Commit
cf3fa48
·
verified ·
1 Parent(s): e8234ea

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -4
app.py CHANGED
@@ -513,6 +513,8 @@ border:2px solid #0f172a;border-radius:50%;z-index:3;}
513
  .role{font-size:.8rem;color:#94a3b8;margin:0 0 12px;}
514
  .status{font-size:.8rem;color:#34d399;background:rgba(16,185,129,.12);padding:6px 14px;
515
  border-radius:999px;display:inline-block;}
 
 
516
  </style></head><body>
517
  <audio id="a" style="display:none;"></audio>
518
  <div class="card"><div class="wrap"><div class="ring" id="ring"></div>
@@ -520,17 +522,20 @@ border-radius:999px;display:inline-block;}
520
  <div class="waves"><div class="bar"></div><div class="bar"></div><div class="bar"></div>
521
  <div class="bar"></div><div class="bar"></div></div></div></div>
522
  <p class="name">__NAME__</p><p class="role">AI Interviewer · مُحاوِرة ذكاء اصطناعي</p>
523
- <div class="status" id="status">Ready</div></div>
 
524
  <script>__SCRIPT__</script></body></html>"""
525
 
526
  AUDIO_JS = """(function(){
527
  var a=document.getElementById('a'),c=document.getElementById('av'),
528
- r=document.getElementById('ring'),s=document.getElementById('status');
 
529
  a.src='data:audio/mp3;base64,__AUDIO__';
530
- a.addEventListener('play',function(){c.classList.add('speaking');r.classList.add('active');s.textContent='Speaking...';});
531
  function stop(){c.classList.remove('speaking');r.classList.remove('active');s.textContent='Listening';}
532
  a.addEventListener('ended',stop);a.addEventListener('pause',stop);
533
- function p(){a.play().catch(function(){});}
 
534
  if(document.readyState==='complete')p();else window.addEventListener('load',p);})();"""
535
 
536
 
 
513
  .role{font-size:.8rem;color:#94a3b8;margin:0 0 12px;}
514
  .status{font-size:.8rem;color:#34d399;background:rgba(16,185,129,.12);padding:6px 14px;
515
  border-radius:999px;display:inline-block;}
516
+ .tap{display:none;margin-top:12px;background:#10b981;color:#fff;border:none;border-radius:999px;
517
+ padding:9px 18px;font-size:.85rem;font-weight:600;cursor:pointer;}
518
  </style></head><body>
519
  <audio id="a" style="display:none;"></audio>
520
  <div class="card"><div class="wrap"><div class="ring" id="ring"></div>
 
522
  <div class="waves"><div class="bar"></div><div class="bar"></div><div class="bar"></div>
523
  <div class="bar"></div><div class="bar"></div></div></div></div>
524
  <p class="name">__NAME__</p><p class="role">AI Interviewer · مُحاوِرة ذكاء اصطناعي</p>
525
+ <div class="status" id="status">Ready</div><br>
526
+ <button class="tap" id="tap">🔊 Tap to hear · اضغط للاستماع</button></div>
527
  <script>__SCRIPT__</script></body></html>"""
528
 
529
  AUDIO_JS = """(function(){
530
  var a=document.getElementById('a'),c=document.getElementById('av'),
531
+ r=document.getElementById('ring'),s=document.getElementById('status'),
532
+ t=document.getElementById('tap');
533
  a.src='data:audio/mp3;base64,__AUDIO__';
534
+ a.addEventListener('play',function(){t.style.display='none';c.classList.add('speaking');r.classList.add('active');s.textContent='Speaking...';});
535
  function stop(){c.classList.remove('speaking');r.classList.remove('active');s.textContent='Listening';}
536
  a.addEventListener('ended',stop);a.addEventListener('pause',stop);
537
+ function p(){var x=a.play();if(x&&x.catch)x.catch(function(){t.style.display='inline-block';s.textContent='Tap to hear';});}
538
+ t.addEventListener('click',function(){a.play().catch(function(){});});
539
  if(document.readyState==='complete')p();else window.addEventListener('load',p);})();"""
540
 
541