UNPKG

gentelella

Version:

Gentelella Admin is a free to use Bootstrap admin template

639 lines (603 loc) 35.3 kB
<!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <!-- Meta, title, CSS, favicons, etc. --> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Gentelella Alela! | </title> <!-- Compiled CSS (includes Bootstrap, Font Awesome, and all vendor styles) --> <script type="module" src="/src/main-minimal.js"></script> </head> <body class="nav-md"> <div class="container body"> <div class="main_container"> <div class="col-md-3 left_col"> <div class="left_col scroll-view"> <div class="navbar nav_title" style="border: 0;"> <a href="index.html" class="site_title"><i class="fas fa-paw"></i> <span>Gentelella Alela!</span></a> </div> <div class="clearfix"></div> <!-- menu profile quick info --> <div class="profile clearfix"> <div class="profile_pic"> <img src="images/img.jpg" alt="..." class="img-circle profile_img"> </div> <div class="profile_info"> <span>Welcome,</span> <h2>John Doe</h2> </div> </div> <!-- /menu profile quick info --> <br /> <!-- sidebar menu --> <div id="sidebar-menu" class="main_menu_side hidden-print main_menu"> <div class="menu_section"> <h3>General</h3> <ul class="nav side-menu"> <li><a><i class="fas fa-home"></i> Home <span class="fas fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="index.html">Dashboard 1</a></li> <li><a href="index2.html">Dashboard 2</a></li> <li><a href="index3.html">Dashboard 3</a></li><li><a href="index4.html">Dashboard 4</a></li> <li><a href="index3.html">Dashboard 3</a></li> </ul> <li><a><i class="fas fa-edit"></i> Forms <span class="fas fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="form.html">General Form</a></li> <li><a href="form_advanced.html">Advanced Components</a></li> <li><a href="form_validation.html">Form Validation</a></li> <li><a href="form_wizards.html">Form Wizard</a></li> <li><a href="form_upload.html">Form Upload</a></li> <li><a href="form_buttons.html">Form Buttons</a></li> </ul> <li><a><i class="fas fa-desktop"></i> UI Elements <span class="fas fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="general_elements.html">General Elements</a></li> <li><a href="media_gallery.html">Media Gallery</a></li> <li><a href="typography.html">Typography</a></li> <li><a href="icons.html">Icons</a></li> <li><a href="widgets.html">Widgets</a></li> <li><a href="invoice.html">Invoice</a></li> <li><a href="inbox.html">Inbox</a></li> <li><a href="calendar.html">Calendar</a></li> </ul> <li><a><i class="fas fa-table"></i> Tables <span class="fas fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="tables.html">Tables</a></li> <li><a href="tables_dynamic.html">Table Dynamic</a></li> </ul> <li><a><i class="fas fa-chart-column"></i> Data Presentation <span class="fas fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="chartjs.html">Chart JS</a></li> <li><a href="chartjs2.html">Chart JS2</a></li> <li><a href="chart3.html">Chart JS3</a></li> <li><a href="echarts.html">ECharts</a></li> <li><a href="other_charts.html">Other Charts</a></li> </ul> <li><a><i class="fas fa-clone"></i>Layouts <span class="fas fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="fixed_sidebar.html">Fixed Sidebar</a></li> <li><a href="fixed_footer.html">Fixed Footer</a></li> </ul> </ul> </div> <div class="menu_section"> <h3>Live On</h3> <ul class="nav side-menu"> <li><a><i class="fas fa-bug"></i> Additional Pages <span class="fas fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="e_commerce.html">E-commerce</a></li> <li><a href="projects.html">Projects</a></li> <li><a href="project_detail.html">Project Detail</a></li> <li><a href="contacts.html">Contacts</a></li> <li><a href="profile.html">Profile</a></li> </ul> <li><a><i class="fas fa-window-restore"></i> Extras <span class="fas fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="page_403.html">403 Error</a></li> <li><a href="page_404.html">404 Error</a></li> <li><a href="page_500.html">500 Error</a></li> <li><a href="plain_page.html">Plain Page</a></li> <li><a href="login.html">Login Page</a></li> <li><a href="pricing_tables.html">Pricing Tables</a></li> </ul> <li><a><i class="fas fa-sitemap"></i> Multilevel Menu <span class="fas fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="#level1_1">Level One</a></li> <li><a>Level One<span class="fas fa-chevron-down"></span></a> <ul class="nav child_menu"> <li class="sub_menu"><a href="level2.html">Level Two</a> <li><a href="#level2_1">Level Two</a> <li><a href="#level2_2">Level Two</a> </ul> <li><a href="#level1_2">Level One</a></li> </ul> <li><a href="landing.html"><i class="fas fa-laptop"></i> Landing Page</a></li> </ul> </div> </div> <!-- /sidebar menu --> <!-- /menu footer buttons --> <div class="sidebar-footer hidden-small"> <a data-bs-toggle="tooltip" data-bs-placement="top" title="Settings"> <span class="fas fa-cog" aria-hidden="true"></span> </a> <a data-bs-toggle="tooltip" data-bs-placement="top" title="FullScreen"> <span class="fas fa-expand" aria-hidden="true"></span> </a> <a data-bs-toggle="tooltip" data-bs-placement="top" title="Lock"> <span class="fas fa-eye-slash" aria-hidden="true"></span> </a> <a data-bs-toggle="tooltip" data-bs-placement="top" title="Logout" href="login.html"> <span class="fas fa-power-off" aria-hidden="true"></span> </a> </div> <!-- /menu footer buttons --> </div> </div> <!-- top navigation --> <div class="top_nav"> <div class="nav_menu"> <div class="nav toggle"> <a id="menu_toggle"><i class="fas fa-bars"></i></a> </div> <nav class="nav navbar-nav"> <ul class="navbar-right"> <li class="nav-item dropdown open" style="padding-left: 15px;"> <a href="javascript:;" class="user-profile dropdown-toggle" aria-haspopup="true" id="navbarDropdown" data-bs-toggle="dropdown" aria-expanded="false"> <img src="images/img.jpg" alt="">John Doe </a> <div class="dropdown-menu dropdown-usermenu float-end" aria-labelledby="navbarDropdown"> <a class="dropdown-item" href="javascript:;"> Profile</a> <a class="dropdown-item" href="javascript:;"> <span class="badge bg-red float-end">50%</span> <span>Settings</span> </a> <a class="dropdown-item" href="javascript:;">Help</a> <a class="dropdown-item" href="login.html"><i class="fas fa-sign-out-alt float-end"></i> Log Out</a> </div> <li role="presentation" class="nav-item dropdown open"> <a href="javascript:;" class="dropdown-toggle info-number" id="navbarDropdown1" data-bs-toggle="dropdown" aria-expanded="false"> <i class="fas fa-envelope"></i> <span class="badge bg-green">6</span> </a> <ul class="dropdown-menu list-unstyled msg_list" role="menu" aria-labelledby="navbarDropdown1"> <li class="nav-item"> <a class="dropdown-item"> <span class="image"><img src="images/img.jpg" alt="Profile Image" /></span> <span> <span>John Smith</span> <span class="time">3 mins ago</span> </span> <span class="message"> Film festivals used to be do-or-die moments for movie makers. They were where... </span> </a> <li class="nav-item"> <a class="dropdown-item"> <span class="image"><img src="images/img.jpg" alt="Profile Image" /></span> <span> <span>John Smith</span> <span class="time">3 mins ago</span> </span> <span class="message"> Film festivals used to be do-or-die moments for movie makers. They were where... </span> </a> <li class="nav-item"> <a class="dropdown-item"> <span class="image"><img src="images/img.jpg" alt="Profile Image" /></span> <span> <span>John Smith</span> <span class="time">3 mins ago</span> </span> <span class="message"> Film festivals used to be do-or-die moments for movie makers. They were where... </span> </a> <li class="nav-item"> <a class="dropdown-item"> <span class="image"><img src="images/img.jpg" alt="Profile Image" /></span> <span> <span>John Smith</span> <span class="time">3 mins ago</span> </span> <span class="message"> Film festivals used to be do-or-die moments for movie makers. They were where... </span> </a> <li class="nav-item"> <div class="text-center"> <a class="dropdown-item"> <strong>See All Alerts</strong> <i class="fas fa-angle-right"></i> </a> </div> </ul> </ul> </nav> </div> </div> <!-- /top navigation --> <!-- page content --> <div class="right_col" role="main"> <div class=""> <div class="page-title"> <div class="title_left"> <h3>Form Wizards</h3> </div> <div class="title_right"> <div class="col-md-5 col-sm-5 mb-3 float-end top_search"> <div class="input-group search-bar-fix"> <input type="text" class="form-control" placeholder="Search for..."> <button class="btn btn-outline-secondary" type="button"> <i class="fas fa-search"></i> </button> </div> </div> </div> </div> <div class="clearfix"></div> <div class="row"> <div class="col-md-12 col-sm-12"> <div class="x_panel"> <div class="x_title"> <h2>Form Wizards <small>Sessions</small></h2> <ul class="nav navbar-right panel_toolbox"> <li><a class="collapse-link"><i class="fas fa-chevron-up"></i></a> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-bs-toggle="dropdown" role="button" aria-expanded="false"><i class="fas fa-wrench"></i></a> <ul class="dropdown-menu" role="menu"> <li><a href="#">Settings 1</a> <li><a href="#">Settings 2</a> </ul> <li><a class="btn-btn-close-link"><i class="fas fa-times"></i></a> </ul> <div class="clearfix"></div> </div> <div class="x_content"> <!-- ========================= --> <!-- Modern Bootstrap-5 Wizard --> <!-- Horizontal style first --> <!-- ========================= --> <div class="x_panel"> <div class="x_title"> <h2>Horizontal Wizard <small class="text-muted">Bootstrap 5 nav-pills</small></h2> <div class="clearfix"></div> </div> <div class="x_content"> <!-- Progress pills --> <ul class="nav nav-pills mb-4 justify-content-center" id="hzWizardNav" role="tablist"> <li class="nav-item" role="presentation"> <button class="nav-link active" id="h-step1-tab" data-bs-toggle="pill" data-bs-target="#h-step1" type="button" role="tab">1. Personal</button> <li class="nav-item" role="presentation"> <button class="nav-link" id="h-step2-tab" data-bs-toggle="pill" data-bs-target="#h-step2" type="button" role="tab">2. Address</button> <li class="nav-item" role="presentation"> <button class="nav-link" id="h-step3-tab" data-bs-toggle="pill" data-bs-target="#h-step3" type="button" role="tab">3. Review</button> </ul> <!-- Step panes --> <div class="tab-content" id="hzWizardContent"> <div class="tab-pane fade show active" id="h-step1" role="tabpanel" aria-labelledby="h-step1-tab"> <form class="row g-3"> <div class="col-md-6"> <label class="form-label">First name</label> <input type="text" class="form-control" placeholder="John" required> </div> <div class="col-md-6"> <label class="form-label">Last name</label> <input type="text" class="form-control" placeholder="Doe" required> </div> <div class="col-md-6"> <label class="form-label">Email</label> <input type="email" class="form-control" placeholder="john@example.com" required> </div> <div class="col-md-6"> <label class="form-label">Phone</label> <input type="tel" class="form-control" placeholder="+1 555-…"> </div> <div class="d-flex justify-content-end gap-2"> <button type="button" class="btn btn-theme" data-wz-next>Next</button> </div> </form> </div> <div class="tab-pane fade" id="h-step2" role="tabpanel" aria-labelledby="h-step2-tab"> <form class="row g-3"> <div class="col-md-8"> <label class="form-label">Street</label> <input type="text" class="form-control" placeholder="123 Main St" required> </div> <div class="col-md-4"> <label class="form-label">City</label> <input type="text" class="form-control" placeholder="New York" required> </div> <div class="col-md-4"> <label class="form-label">State</label> <input type="text" class="form-control" placeholder="NY" required> </div> <div class="col-md-4"> <label class="form-label">ZIP</label> <input type="text" class="form-control" placeholder="10001" required> </div> <div class="d-flex justify-content-between gap-2"> <button type="button" class="btn btn-secondary" data-wz-prev>Back</button> <button type="button" class="btn btn-theme" data-wz-next>Next</button> </div> </form> </div> <div class="tab-pane fade" id="h-step3" role="tabpanel" aria-labelledby="h-step3-tab"> <div class="alert alert-info">Review your information and click <strong>Finish</strong>.</div> <div class="d-flex justify-content-between gap-2"> <button type="button" class="btn btn-secondary" data-wz-prev>Back</button> <button type="button" class="btn btn-success" data-wz-finish>Finish</button> </div> </div> </div> </div> </div> <!-- ========================= --> <!-- Vertical Wizard example --> <!-- ========================= --> <div class="x_panel"> <div class="x_title"> <h2>Vertical Wizard</h2> <div class="clearfix"></div> </div> <div class="x_content"> <div class="row"> <div class="col-md-3"> <div class="nav flex-column nav-pills" id="vtWizardNav" role="tablist"> <button class="nav-link active" data-bs-target="#v-step1" data-bs-toggle="pill" type="button">Step 1</button> <button class="nav-link" data-bs-target="#v-step2" data-bs-toggle="pill" type="button">Step 2</button> <button class="nav-link" data-bs-target="#v-step3" data-bs-toggle="pill" type="button">Step 3</button> </div> </div> <div class="col-md-9"> <div class="tab-content" id="vtWizardContent"> <div class="tab-pane fade show active" id="v-step1" role="tabpanel"> <p class="lead mb-3">Some placeholder content for step 1.</p> <button class="btn btn-theme" data-wz-next>Next</button> </div> <div class="tab-pane fade" id="v-step2" role="tabpanel"> <p class="lead mb-3">Placeholder for step 2.</p> <div class="d-flex justify-content-between"> <button class="btn btn-secondary" data-wz-prev>Back</button> <button class="btn btn-theme" data-wz-next>Next</button> </div> </div> <div class="tab-pane fade" id="v-step3" role="tabpanel"> <p class="lead mb-3">Done! 🎉</p> <button class="btn btn-secondary" data-wz-prev>Back</button> </div> </div> </div> </div> </div> </div> <!-- ========================= --> <!-- Progress Bar Wizard --> <!-- ========================= --> <div class="x_panel"> <div class="x_title"> <h2>Progress Bar Wizard <small>with hidden nav</small></h2> <div class="clearfix"></div> </div> <div class="x_content"> <!-- Hidden nav just for JS targeting --> <ul class="nav nav-pills d-none" id="pgWizardNav" role="tablist"> <li class="nav-item"><button class="nav-link active" data-bs-target="#p-step1" data-bs-toggle="pill" type="button">1</button></li> <li class="nav-item"><button class="nav-link" data-bs-target="#p-step2" data-bs-toggle="pill" type="button">2</button></li> <li class="nav-item"><button class="nav-link" data-bs-target="#p-step3" data-bs-toggle="pill" type="button">3</button></li> </ul> <!-- Dynamic progress --> <div class="progress mb-4" style="height:8px;"> <div class="progress-bar bg-theme" role="progressbar" style="width: 33%;" aria-valuemin="0" aria-valuemax="100"></div> </div> <div class="tab-content" id="pgWizardContent"> <div class="tab-pane fade show active" id="p-step1" role="tabpanel"> <h4 class="mb-3">Basic Info</h4> <p class="text-muted">Enter some basic information.</p> <div class="mb-3"><input type="text" class="form-control" placeholder="Title"></div> <div class="d-flex justify-content-end"> <button class="btn btn-theme" data-wz-next>Next</button> </div> </div> <div class="tab-pane fade" id="p-step2" role="tabpanel"> <h4 class="mb-3">Details</h4> <p class="text-muted">Add your details here.</p> <div class="mb-3"><textarea class="form-control" rows="3"></textarea></div> <div class="d-flex justify-content-between"> <button class="btn btn-secondary" data-wz-prev>Back</button> <button class="btn btn-theme" data-wz-next>Next</button> </div> </div> <div class="tab-pane fade" id="p-step3" role="tabpanel"> <h4 class="mb-3">Finish</h4> <div class="alert alert-warning">Click finish when ready.</div> <div class="d-flex justify-content-between"> <button class="btn btn-secondary" data-wz-prev>Back</button> <button class="btn btn-success" data-wz-finish>Finish</button> </div> </div> </div> </div> </div> <!-- ========================= --> <!-- Accordion Wizard (Steps) --> <!-- ========================= --> <div class="x_panel"> <div class="x_title"> <h2>Accordion Wizard</h2> <div class="clearfix"></div> </div> <div class="x_content"> <div class="accordion" id="accordionWizard"> <div class="accordion-item"> <h2 class="accordion-header" id="aw-headingOne"> <button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#aw-step1" aria-expanded="true"> Step 1: Account Setup </button> </h2> <div id="aw-step1" class="accordion-collapse collapse show" data-bs-parent="#accordionWizard"> <div class="accordion-body"> <div class="mb-3"><input type="email" class="form-control" placeholder="Email"></div> <button class="btn btn-theme" data-aw-next>Next</button> </div> </div> </div> <div class="accordion-item"> <h2 class="accordion-header" id="aw-headingTwo"> <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#aw-step2"> Step 2: Profile Info </button> </h2> <div id="aw-step2" class="accordion-collapse collapse" data-bs-parent="#accordionWizard"> <div class="accordion-body"> <div class="mb-3"><input type="text" class="form-control" placeholder="Full Name"></div> <div class="d-flex justify-content-between"> <button class="btn btn-secondary" data-aw-prev>Back</button> <button class="btn btn-theme" data-aw-next>Next</button> </div> </div> </div> </div> <div class="accordion-item"> <h2 class="accordion-header" id="aw-headingThree"> <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#aw-step3"> Step 3: Confirm </button> </h2> <div id="aw-step3" class="accordion-collapse collapse" data-bs-parent="#accordionWizard"> <div class="accordion-body"> <div class="alert alert-success">All set! 🎉</div> <div class="d-flex justify-content-between"> <button class="btn btn-secondary" data-aw-prev>Back</button> <button class="btn btn-success" data-aw-finish>Finish</button> </div> </div> </div> </div> </div> </div> </div> <!-- Wizard helper script (vanilla JS) --> <script type="module"> /** Generic helpers **/ const wizardNavClick = (container, pane) => { // Prefer nav-link inside this wizard; fallback to manual show const nav = container.querySelector(`[data-bs-target="#${pane.id}"]`); if (nav) { nav.click(); } else { container.querySelectorAll('.tab-pane.active').forEach(p => p.classList.remove('show', 'active')); pane.classList.add('show', 'active'); } }; const updateProgress = (container) => { const bar = container.querySelector('.progress-bar'); if (!bar) return; const panes = Array.from(container.querySelectorAll('.tab-content .tab-pane')); const activeIdx = panes.findIndex(p => p.classList.contains('active')); if (activeIdx === -1) return; const percent = Math.round(((activeIdx + 1) / panes.length) * 100); bar.style.width = percent + '%'; bar.setAttribute('aria-valuenow', percent); }; // NEXT / PREV / FINISH for tab-based wizards document.querySelectorAll('[data-wz-next]').forEach(btn => { btn.addEventListener('click', () => { const current = btn.closest('.tab-pane'); if (!current) return; const container = current.closest('.x_panel'); const next = current.nextElementSibling; if (next && next.classList.contains('tab-pane')) { wizardNavClick(container, next); updateProgress(container); } }); }); document.querySelectorAll('[data-wz-prev]').forEach(btn => { btn.addEventListener('click', () => { const current = btn.closest('.tab-pane'); if (!current) return; const container = current.closest('.x_panel'); const prev = current.previousElementSibling; if (prev && prev.classList.contains('tab-pane')) { wizardNavClick(container, prev); updateProgress(container); } }); }); document.querySelectorAll('[data-wz-finish]').forEach(btn => { btn.addEventListener('click', () => { btn.closest('.x_panel').querySelector('.tab-content').innerHTML = '<div class="alert alert-success"><strong>Success!</strong> All steps completed.</div>'; }); }); /** Accordion wizard controls **/ const awToItem = (elem, dir) => { const item = elem.closest('.accordion-item'); if (!item) return; const sibling = dir === 'next' ? item.nextElementSibling : item.previousElementSibling; if (sibling && sibling.querySelector('.accordion-button')) { sibling.querySelector('.accordion-button').click(); } }; document.querySelectorAll('[data-aw-next]').forEach(btn => btn.addEventListener('click', () => awToItem(btn, 'next'))); document.querySelectorAll('[data-aw-prev]').forEach(btn => btn.addEventListener('click', () => awToItem(btn, 'prev'))); document.querySelectorAll('[data-aw-finish]').forEach(btn => { btn.addEventListener('click', () => { const accordion = btn.closest('.accordion'); accordion.innerHTML = '<div class="alert alert-success"><strong>Finished!</strong> All accordion steps complete.</div>'; }); }); </script> <!-- End Modern Wizard --> </div> </div> </div> </div> </div> </div> <!-- /page content --> <!-- footer content --> <footer> <div class="float-end"> Gentelella - Bootstrap Admin Template by <a href="https://colorlib.com">Colorlib</a> </div> <div class="clearfix"></div> </footer> <!-- /footer content --> </div> </div> <!-- Compiled JavaScript (includes jQuery, Bootstrap, and all vendor scripts) --> <!-- Initialize Tempus Dominus datetimepicker --> <script type="text/javascript"> document.addEventListener('DOMContentLoaded', function() { if (typeof TempusDominus !== 'undefined') { // Initialize birthday pickers const birthdayPicker = new TempusDominus(document.getElementById('birthday'), { display: { components: { clock: false, date: true } }, localization: { format: 'dd-MM-yyyy' } }); const birthdayPicker2 = new TempusDominus(document.getElementById('birthday2'), { display: { components: { clock: false, date: true } }, localization: { format: 'dd-MM-yyyy' } }); } }); </script> </body> </html>