Skip to main content
Django administration
Welcome,
Admin
.
View site
/
Documentation
/
Change password
/
Log out
Toggle theme (current theme: auto)
Toggle theme (current theme: light)
Toggle theme (current theme: dark)
Home
›
Systems
›
Generic apps
› Grubhub Zip Code Lookup (5)
Quick links
Filterable
QA Results
Live Sim Sessions
Live Conversations
Transcripts
End User Products
Companies
Users
Api
Api keys
Add
Api logs
Authentication and Authorization
Groups
Add
Users
Add
Celery Results
Group results
Add
Task results
Add
Clients
Lowe's Associates
Add
Common
Audio debug logs
Add
Audio files
Add
Call summary configs
Add
Call summary datas
Add
Call tag configs
Add
Call tag notification configs
Add
Call tag results
Config settingss
Add
Deepgram debug logs
Add
Filter presets
Add
Filterable Filter Configurations
Add
Filterable Items
Add
Notification triggers
Add
Notifications
Add
Prompt templates
Add
Slack notification logs
Add
Speed tests
Add
Transcript keywords
Add
Transcripts
Add
Voice Options
Add
Integration
Pages
Add
Providers
Add
Question historys
Add
Interview Management
Candidates
Add
Interview Categories
Add
Interview notes
Add
Interview steps
Add
Interviews
Add
Knowledge
Document Tags
Add
Document Versions
Add
Documents
Add
Live_Assist
Ask reddy annotations
Add
Ask reddy calls
Add
Transcript Feedbacks
Lms
Courses
Add
Lesson completions
Add
Lesson user time spents
Add
Lessons
Add
Modules
Add
Mainapp
Access tokens
Add
Audio file caches
Add
Auto generation statuss
Add
Call recordings
Add
Chat with transcript messages
Add
Chat with transcript sessions
Add
Company access requests
Add
Company prompt sets
Add
Companys
Add
Custom fields
Add
Embedding faqs
Add
End user products
Add
Export jobs
Faq results
Add
Feedbacks
Add
Gpt metrics
Add
Grade curves
Add
Grades
Add
Live conversation transcripts
Add
Live conversations
Add
Live ingestion controlss
Add
Live sim sessions
Add
Live sim states
Add
Objection scenarios
Add
Objections
Add
Outline sections
Add
Prompt historys
Add
Qa results
Add
Rag chats
Add
Reddy profiles
Add
Script trainings
Add
Suggested prompts
Add
Monitoring
Agent metrics
Add
Event durations
Add
Event metrics
Add
Periodic Tasks
Clocked
Add
Crontabs
Add
Intervals
Add
Periodic tasks
Add
Solar events
Add
Qa
Auto qa configs
Add
Benchmarks
Add
Condition nodes
Add
Data points
Add
External qa items
Add
Feedback messages
Add
Feedback threads
Add
Graph qas
Add
Internal qa items
Add
Live external qa item scores
Add
Live qa item scores
Add
Output nodes
Add
Pop up nodes
Add
Ports
Add
Progresss
Add
Qa automations
Add
Qa embeddings
Add
Qa relation snapshots
Add
Qa run iterations
Add
Qa runs
Add
Qa scoring instructions
Add
Report flags
Add
Training external qa item scores
Add
Training qa item scores
Add
Trigger nodes
Add
Reports
Download jobs
Add
Frequencies
Add
Report instances
Add
Report sections
Add
Reports
Add
Router
Agent call events
Add
Audiohook events
Add
Audiohook states
Add
Genesys agent states
Add
Genesys notification events
Add
Genesys queue to product mappings
Add
Sandbox
App Links
Add
Browser States
Add
CLI Commands
Add
CLI Issues
Add
CLI Sessions
Add
Sandbox Tasks
Add
Sandboxes
Add
Sessions
Sessions
Add
Systems
App keyframes
Add
App timeline frames
Add
Application pages
Add
Automation steps
Add
Custom apps
Add
Generic apps
Add
Grade links
Add
Html generations
Add
Os timeline annotations
Add
Os timeline apps
Add
Os timeline frames
Add
Os timelines
Add
Page links
Add
Screenshot to htmls
Add
Systems training attachments
Add
Systems training checkpoints
Add
Systems training recordings
Add
Systems trainings
Add
Taggit
Tags
Add
Ticket Management
Labels
Add
Tickets
Add
Training
Assignments
Add
Grading criterias
Add
Objection assignments
Add
Usage_Tracking
Llm calls
Add
Llm tags
Add
Stt calls
Add
Stt tags
Add
Tts calls
Add
Tts tags
Add
Wagtail documents
Documents
Add
Wagtail images
Images
Add
Change generic app
Grubhub Zip Code Lookup (5)
History
Name:
Start page:
---------
ApplicationPage object (1)
ApplicationPage object (2)
ApplicationPage object (3)
ApplicationPage object (4)
ApplicationPage object (5)
ApplicationPage object (6)
ApplicationPage object (7)
ApplicationPage object (8)
ApplicationPage object (9)
ApplicationPage object (10)
ApplicationPage object (11)
Systems trainings:
Grubhub - Market Inquiries
Morgan Auto Accident
Hold down “Control”, or “Command” on a Mac, to select more than one.
Archived
Width Settings
Default width:
The default width of an app as a percentage of the operating system viewport. Default: 85.
Min width:
Minimum width of this app in pixels. Default: 200.
Max width:
Maximum width of this app in pixels. Default: 1500.
Height Settings
Default height:
The default height of an app as a percentage of the operating system viewport. Default: 80.
Min height:
Minimum height of this app in pixels. Default: 200.
Max height:
Maximum height of this app in pixels. Default: 1000.
Application pages
Html
Link
Delete?
ApplicationPage object (11)
<style> .nav-bar { background-color: #FF8000; padding: 4px 14px; display: flex; align-items: center; color: white; height: 36px; } .nav-logo { display: flex; align-items: center; gap: 8px; } .nav-logo img { height: 28px; } .nav-menu { margin-left: 28px; display: flex; gap: 16px; } .nav-item { color: white; text-decoration: none; font-size: 12px; } .search-container { margin-left: auto; margin-right: 16px; } .search-input { padding: 4px 8px; border-radius: 4px; border: none; width: 180px; font-size: 12px; } .nav-icons { display: flex; gap: 10px; align-items: center; } .nav-icon { width: 20px; height: 20px; cursor: pointer; font-size: 12px; display: flex; align-items: center; justify-content: center; } .nav-icon.help { background-color: white; color: #FF8000; border-radius: 50%; font-weight: bold; line-height: 18px; text-align: center; width: 18px; height: 18px; } .nav-icon.notification { color: white; display: flex; align-items: center; justify-content: center; } .nav-icon.profile { background-color: rgba(255, 255, 255, 0.2); border-radius: 50%; color: white; display: flex; align-items: center; justify-content: center; } .notification-icon { width: 14px; height: 14px; fill: currentColor; } .profile-icon { width: 12px; height: 12px; fill: currentColor; } .page-container { display: flex; min-height: 100vh; } .sidebar { width: 200px; background-color: #F4F5F7; padding: 14px 0; border-right: 1px solid #DFE1E6; } .sidebar-menu { list-style: none; padding: 0; margin: 0; } .sidebar-item { padding: 6px 10px 6px 16px; color: #42526E; font-size: 11px; display: flex; align-items: center; cursor: pointer; } .sidebar-item:hover { background-color: #EBECF0; } .sidebar-item.active { background-color: #DEEBFF; color: #0052CC; } .sidebar-item .arrow { width: 12px; height: 12px; margin-right: 6px; transform: rotate(0deg); transition: transform 0.2s; } .sidebar-item.expanded .arrow { transform: rotate(90deg); } .submenu { list-style: none; padding: 0; margin: 0; } .submenu .sidebar-item { padding-left: 32px; } .submenu .submenu .sidebar-item { padding-left: 48px; } .space-tools { padding: 10px 16px; color: #42526E; font-size: 11px; border-top: 1px solid #DFE1E6; margin-top: auto; display: flex; align-items: center; } .space-tools .collapse-icon { margin-left: auto; } .main-content { flex: 1; padding: 14px; } .table-wrapper { max-height: 400px; overflow-y: auto; border: 1px solid #DFE1E6; } .zip-code-table { border-collapse: collapse; width: 100%; } .zip-code-table th, .zip-code-table td { border: 1px solid #ddd; padding: 5px; text-align: left; font-size: 11px; } .zip-search-container { margin-bottom: 10px; } .zip-search-input { padding: 5px 8px; border-radius: 4px; border: 1px solid #DFE1E6; width: 150px; font-size: 11px; } .zip-search-input:focus { outline: none; border-color: #4C9AFF; box-shadow: 0 0 0 2px rgba(76, 154, 255, 0.2); } #tableZipSearch { padding: 3px; margin-bottom: 7px; font-size: 11px; } #tableZipSearch::-webkit-outer-spin-button, #tableZipSearch::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } #tableZipSearch { -moz-appearance: textfield; } h1 { font-size: 18px; margin-bottom: 12px; } p { font-size: 12px; margin-bottom: 12px; } .nav-logo img[alt="Grubhub"] { height: 28px; } .nav-logo svg { width: 20px; height: 20px; } </style> <nav class="nav-bar"> <div class="nav-logo"> <svg width="32" height="32" viewBox="0 0 24 24" fill="white"> <path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/> </svg> <img src="https://res.cloudinary.com/grubhub-marketing/image/upload/fl_lossy/v1629395520/grubhubHomePage/opengraph_image_orange_GH.jpg" alt="Grubhub" style="height: 48px; width: auto;"> </div> <div class="nav-menu"> <a href="#" class="nav-item dropdown">Spaces</a> <a href="#" class="nav-item">People</a> <a href="#" class="nav-item">Calendars</a> </div> <div class="nav-icons" style="margin-left: auto;"> <span class="nav-icon help">?</span> <span class="nav-icon notification"> <svg class="notification-icon" viewBox="0 0 24 24"> <path d="M12 22c1.1 0 2-.9 2-2h-4c0 1.1.9 2 2 2zm6-6v-5c0-3.07-1.63-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.64 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2zm-2 1H8v-6c0-2.48 1.51-4.5 4-4.5s4 2.02 4 4.5v6z"/> </svg> </span> <span class="nav-icon profile"> <svg class="profile-icon" viewBox="0 0 24 24"> <path d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"/> </svg> </span> </div> </nav> <div class="page-container"> <div class="sidebar"> <ul class="sidebar-menu"> <li> <div class="sidebar-item"> <span class="arrow">▶</span> FLO Operating Systems </div> </li> <li> <div class="sidebar-item expanded"> <span class="arrow">▶</span> FLO SOPs for Lines of Business </div> <ul class="submenu"> <li class="sidebar-item">Business Process Outsourcing</li> <li class="sidebar-item">Non-Standard Orders (NSO)</li> <li class="sidebar-item">Restaurant Quality</li> <li class="sidebar-item">Non-Standard Order Team</li> <li class="sidebar-item">Applicant Tracking System</li> <li class="sidebar-item">Lead Genius</li> <li> <div class="sidebar-item expanded"> <span class="arrow">▶</span> DCare Tier 2 Escalation Team </div> <ul class="submenu"> <li class="sidebar-item">Delivery Partners/Driver Co</li> <li class="sidebar-item">Floor Support</li> <li class="sidebar-item">Goal Setting</li> <li class="sidebar-item">Redash - How To</li> <li class="sidebar-item active">Region Zip Code List</li> <li class="sidebar-item">Weekly Business Review</li> </ul> </li> <li class="sidebar-item">Process Engineering Team</li> <li class="sidebar-item">Wiki Resources</li> </ul> </li> </ul> <div class="space-tools"> Space tools <span class="collapse-icon">≪</span> </div> </div> <div class="main-content"> <div id="zip-code-container"> <h1>Region Zip Code List</h1> <p>There are only 3 active courier types in DOC: car, scooter, and bike.</p> <input type="number" id="tableZipSearch" name="tableZipSearch" placeholder="Search zip code" maxlength="5" pattern="[0-9]*"> <table class="zip-code-table"> <thead> <tr> <th>Region</th> <th>Postal Code</th> <th>Delivery Method</th> <th>Is Recruiting?</th> </tr> </thead> <tbody> {% for loc in minimal_locations_list %} {% if target_zipcode == loc.1 %} <tr id="target_row"> <td>{{ loc.0 }}</td> <td>{{ loc.1 }}</td> <td>{{ loc.2 }}</td> <td>{{ loc.3 }}</td> </tr> {% else %} <tr> <td>{{ loc.0 }}</td> <td>{{ loc.1 }}</td> <td>{{ loc.2 }}</td> <td>{{ loc.3 }}</td> </tr> {% endif %} {% endfor %} </tbody> </table> </div> </div> </div> <script> (function() { // Minimize window on initialization setTimeout(() => { const currentWinbox = winboxes.find(wb => wb.id === 'winbox-{{ page.app.id }}'); if (!window.grubhubZipLookupShown) { setTimeout(() => { currentWinbox.minimize(); window.grubhubZipLookupShown = true; }, 100); } // Add this line to rename the winbox currentWinbox.setTitle('Region Zip Code List'); }, 0); const pageContainer=queryShadowRoot('{{ page.app_id }}', '.page-container') const navBar=queryShadowRoot('{{ page.app_id }}', '.nav-bar') // Add event listeners after DOM is loaded pageContainer.querySelectorAll('.sidebar-item').forEach(item => { item.addEventListener('click', () => { const submenu = item.nextElementSibling; if (submenu && submenu.classList.contains('submenu')) { item.classList.toggle('expanded'); } }); }); const searchInput = pageContainer.querySelector('#tableZipSearch'); if (searchInput) { // Add hx-trigger attribute searchInput.setAttribute('hx-trigger', 'input changed delay:500ms'); // Process the element with HTMX htmx.process(searchInput); // Create error message element const errorMsg = document.createElement('span'); errorMsg.style.color = '#dc3545'; errorMsg.style.marginLeft = '10px'; errorMsg.style.display = 'none'; errorMsg.textContent = 'please enter full 5 digit zip code'; searchInput.parentNode.insertBefore(errorMsg, searchInput.nextSibling); let errorTimeout; searchInput.addEventListener('input', function(e) { const searchValue = e.target.value.trim().toLowerCase(); const tableRows = pageContainer.querySelectorAll('.zip-code-table tbody tr'); // Clear any existing timeout clearTimeout(errorTimeout); errorMsg.style.display = 'none'; // Show error message if 1-4 digits entered if (/^\d{1,4}$/.test(searchValue)) { errorTimeout = setTimeout(() => { errorMsg.style.display = 'inline'; }, 1000); } // Show all rows if search value is not exactly 5 digits if (!/^\d{5}$/.test(searchValue)) { tableRows.forEach(row => { row.style.display = ''; row.classList.remove('highlight'); }); return; } // Hide error message if 5 digits entered errorMsg.style.display = 'none'; tableRows.forEach(row => { // Remove any existing highlight row.classList.remove('highlight'); // Get the zip code from the second column const zipCode = row.children[1].textContent.trim().toLowerCase(); // If the zip code matches the search value if (zipCode.includes(searchValue)) { row.classList.add('highlight'); row.style.display = ''; } else { row.style.display = 'none'; } }); }); } })(); </script>
Edit page
-
Delete