feat: add search modal

This commit is contained in:
mostafaei2002 2024-05-14 10:11:07 +03:30
parent 44dd71c7c7
commit 4106ff080b
2 changed files with 174 additions and 124 deletions

View File

@ -1,86 +1,126 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta charset="utf-8" />
<title>
{% if page.title %}{{ page.title }} - {% endif %}{{ config.site_name }}
</title>
<link href="{{ 'img/favicon.ico'|url }}" rel="icon" type="image/x-icon" />
<link rel="canonical" href="{{ page.canonical_url|url }}" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta
name="description"
content="Django, API, REST{% if page %}, {{ page.title }}{% endif %}"
/>
<meta name="author" content="Tom Christie" />
<head> <!-- Le styles -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <!-- <link href="{{ 'css/prettify.css'|url }}" rel="stylesheet">
<meta charset="utf-8">
<title>{% if page.title %}{{ page.title }} - {% endif %}{{ config.site_name }}</title>
<link href="{{ 'img/favicon.ico'|url }}" rel="icon" type="image/x-icon">
<link rel="canonical" href="{{ page.canonical_url|url }}" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="Django, API, REST{% if page %}, {{ page.title }}{% endif %}">
<meta name="author" content="Tom Christie">
<!-- Le styles -->
<!-- <link href="{{ 'css/prettify.css'|url }}" rel="stylesheet">
<link href="{{ 'css/bootstrap.css'|url }}" rel="stylesheet"> <link href="{{ 'css/bootstrap.css'|url }}" rel="stylesheet">
<link href="{{ 'css/bootstrap-responsive.css'|url }}" rel="stylesheet"> <link href="{{ 'css/bootstrap-responsive.css'|url }}" rel="stylesheet">
<link href="{{ 'css/default.css'|url }}" rel="stylesheet"> --> <link href="{{ 'css/default.css'|url }}" rel="stylesheet"> -->
<link rel="stylesheet" href="{{ 'css/bootstrap5.css'|url }}"> <link rel="stylesheet" href="{{ 'css/bootstrap5.css'|url }}" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(["_setAccount", "UA-18852272-2"]);
_gaq.push(["_trackPageview"]);
<script type="text/javascript"> (function () {
var _gaq = _gaq || []; var ga = document.createElement("script");
_gaq.push(['_setAccount', 'UA-18852272-2']); ga.type = "text/javascript";
_gaq.push(['_trackPageview']); ga.async = true;
ga.src =
("https:" == document.location.protocol
? "https://ssl"
: "http://www") + ".google-analytics.com/ga.js";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(ga, s);
})();
</script>
(function() { <style>
var ga = document.createElement('script'); #sidebarInclude img {
ga.type = 'text/javascript'; margin-bottom: 10px;
ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
</script>
<style>
#sidebarInclude img {
margin-bottom: 10px;
}
#sidebarInclude a.promo {
color: black;
}
@media (max-width: 767px) {
div.promo {
display: none;
} }
} #sidebarInclude a.promo {
</style> color: black;
</head> }
<body onload="prettyPrint()" class="{% if page and page.is_homepage %}index{% endif %}-page"> @media (max-width: 767px) {
div.promo {
display: none;
}
}
</style>
</head>
<body
onload="prettyPrint()"
class="{% if page and page.is_homepage %}index{% endif %}-page"
>
<div class="wrapper">
{% include "nav.html" %}
<div class="wrapper"> <div class="body-content">
{% include "nav.html" %} <div class="container-fluid">
<div
class="modal fade"
id="mkdocs_search_modal"
tabindex="-1"
aria-labelledby="searchModal"
aria-hidden="true"
>
<div
class="modal-dialog modal-dialog-centered modal-dialog-scrollable"
>
<div class="modal-content">
<div class="modal-header">
<h3 class="modal-title fs-5" id="search_modal_label">
Documentation Search
</h3>
<button
type="button"
class="btn-close"
data-bs-dismiss="modal"
aria-label="Close"
></button>
</div>
<div class="body-content"> <div class="modal-body">
<div class="container-fluid"> <form role="form" autocomplete="off">
<!-- Search Modal --> <div class="form-group">
<div id="mkdocs_search_modal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <input
<div class="modal-header"> type="text"
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> name="q"
<h3 id="myModalLabel">Documentation search</h3> class="form-control"
</div> placeholder="Search..."
id="mkdocs-search-query"
/>
</div>
</form>
<div class="modal-body"> <div id="mkdocs-search-results" class="mt-3"></div>
<form role="form" autocomplete="off"> </div>
<div class="form-group">
<input type="text" name="q" class="form-control" placeholder="Search..." id="mkdocs-search-query"> <div class="modal-footer">
<button
type="button"
class="btn btn-secondary"
data-bs-dismiss="modal"
>
Close
</button>
</div>
</div> </div>
</form> </div>
<div id="mkdocs-search-results"></div>
</div> </div>
<div class="modal-footer"> <!-- Modal End -->
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button> <div class="row-fluid">
</div> <div class="span3">
</div> <div id="table-of-contents">
<!-- <ul class="nav nav-list side-nav well sidebar-nav-fixed">
<div class="row-fluid">
<div class="span3">
<div id="table-of-contents">
<ul class="nav nav-list side-nav well sidebar-nav-fixed">
{% if page and page.is_homepage %} {% if page and page.is_homepage %}
<li class="main"> <li class="main">
<a href="#">Django REST framework</a> <a href="#">Django REST framework</a>
@ -103,74 +143,83 @@
{% if page.toc %}<hr/>{% endif %} {% if page.toc %}<hr/>{% endif %}
<div id="sidebarInclude"> <div id="sidebarInclude">
</div> </div>
</ul> </ul> -->
</div>
</div> </div>
<div id="main-content" class="span9">
{% block content %} {% if page.meta.source %} {% for filename in
page.meta.source %}
<a
class="github"
href="https://github.com/encode/django-rest-framework/tree/master/rest_framework/{{ filename }}"
>
<span class="label label-info">{{ filename }}</span>
</a>
{% endfor %} {% endif %} {{ page.content }} {% endblock %}
</div>
<!--/span-->
</div> </div>
<!--/row-->
</div>
<!--/.fluid-container-->
</div>
<!--/.body content-->
<div id="push"></div>
</div>
<!--/.wrapper -->
<div id="main-content" class="span9"> <footer class="span12">
{% block content %} <p>
{% if page.meta.source %} Documentation built with <a href="http://www.mkdocs.org/">MkDocs</a>.
{% for filename in page.meta.source %} </p>
<a class="github" href="https://github.com/encode/django-rest-framework/tree/master/rest_framework/{{ filename }}"> </footer>
<span class="label label-info">{{ filename }}</span>
</a>
{% endfor %}
{% endif %}
{{ page.content }} <!-- Le javascript
{% endblock %}
</div> <!--/span-->
</div> <!--/row-->
</div> <!--/.fluid-container-->
</div> <!--/.body content-->
<div id="push"></div>
</div> <!--/.wrapper -->
<footer class="span12">
<p>Documentation built with <a href="http://www.mkdocs.org/">MkDocs</a>.
</p>
</footer>
<!-- Le javascript
================================================== --> ================================================== -->
<!-- Placed at the end of the document so the pages load faster --> <!-- Placed at the end of the document so the pages load faster -->
<!-- <script async src="https://fund.django-rest-framework.org/sidebar_include.js"></script> <!-- <script async src="https://fund.django-rest-framework.org/sidebar_include.js"></script>
<script src="{{ 'js/jquery-1.8.1-min.js'|url }}"></script> <script src="{{ 'js/jquery-1.8.1-min.js'|url }}"></script>
<script src="{{ 'js/prettify-1.0.js'|url }}"></script> <script src="{{ 'js/prettify-1.0.js'|url }}"></script>
<script src="{{ 'js/bootstrap-2.1.1-min.js'|url }}"></script> <script src="{{ 'js/bootstrap-2.1.1-min.js'|url }}"></script>
<script src="{{ 'js/theme.js'|url }}"></script> --> <script src="{{ 'js/theme.js'|url }}"></script> -->
<script>var base_url = '{{ base_url }}';</script> <script>
var base_url = "{{ base_url }}";
</script>
<script src="{{ 'js/bootstrap5.bundle.js'|url }}"></script> <script src="{{ 'js/bootstrap5.bundle.js'|url }}"></script>
{% for path in config.extra_javascript %} {% for path in config.extra_javascript %}
<script src="{{ path|url }}" defer></script> <script src="{{ path|url }}" defer></script>
{% endfor %} {% endfor %}
<script> <script>
var shiftWindow = function() { var shiftWindow = function () {
scrollBy(0, -50) scrollBy(0, -50);
}; };
if (location.hash) shiftWindow(); if (location.hash) shiftWindow();
window.addEventListener("hashchange", shiftWindow); window.addEventListener("hashchange", shiftWindow);
$('.dropdown-menu').on('click touchstart', function(event) { $(".dropdown-menu").on("click touchstart", function (event) {
event.stopPropagation(); event.stopPropagation();
});
// Dynamically force sidenav/dropdown to no higher than browser window
$('.side-nav, .dropdown-menu').css('max-height', window.innerHeight - 130);
$(function() {
$(window).resize(function() {
$('.side-nav, .dropdown-menu').css('max-height', window.innerHeight - 130);
}); });
});
</script>
</body>
// Dynamically force sidenav/dropdown to no higher than browser window
$(".side-nav, .dropdown-menu").css(
"max-height",
window.innerHeight - 130
);
$(function () {
$(window).resize(function () {
$(".side-nav, .dropdown-menu").css(
"max-height",
window.innerHeight - 130
);
});
});
</script>
</body>
</html> </html>

View File

@ -140,15 +140,16 @@
{% endif %} {% endif %}
<div class="d-flex gap-2"> <div class="d-flex gap-2">
<a <button
id="search_modal_btn" type="button"
id="search_modal_show"
class="btn btn-sm btn-secondary" class="btn btn-sm btn-secondary"
href="#search_modal" href="#mkdocs_search_modal"
data-bs-toggle="modal" data-bs-toggle="modal"
data-bs-target="#search_modal" data-bs-target="#mkdocs_search_modal"
> >
Search Search
</a> </button>
<!-- prettier-ignore --> <!-- prettier-ignore -->
<a <a
{% if page.previous_page %}href="{{ page.previous_page.url|url }}"{% endif %} {% if page.previous_page %}href="{{ page.previous_page.url|url }}"{% endif %}