diff --git a/_templates/feedback.html b/_templates/feedback.html new file mode 100644 index 0000000000000000000000000000000000000000..57b7e7a8c65da105fee44b5cad5e00c0733533cb --- /dev/null +++ b/_templates/feedback.html @@ -0,0 +1,67 @@ + +<a role="button" data-bs-toggle="modal" data-bs-target="#feedbackModal" id="feedbackButton" href="#"> + <i class="fa-solid fa-arrows-rotate"></i> Provide Feedback +</a> + +<div class="modal fade" id="feedbackModal" aria-labelledby="feedbackModalLabel" aria-hidden="true"> + <div class="modal-dialog modal-dialog-centered"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title m-0" id="feedbackModalLabel">Feedback</h5> + <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> + </div> + <div class="modal-body text-center"> + <div class="btn-group mb-3" role="group" aria-label="Basic radio toggle button group" id="feedbackType" onChange="feedbackInputHandler()"> + <input type="radio" class="btn-check" name="feedbackType" id="btnradio1" autocomplete="off" value="Issue"> + <label class="btn btn-outline-dark shadow-none" for="btnradio1"><i class="fa-solid fa-triangle-exclamation"></i> Issue</label> + + <input type="radio" class="btn-check" name="feedbackType" id="btnradio2" autocomplete="off" value="Feedback" checked> + <label class="btn btn-outline-dark shadow-none" for="btnradio2"><i class="fa-solid fa-arrows-rotate"></i> Feedback</label> + + <input type="radio" class="btn-check" name="feedbackType" id="btnradio3" autocomplete="off" value="Idea"> + <label class="btn btn-outline-dark shadow-none" for="btnradio3"><i class="fa-solid fa-lightbulb"></i> Idea</label> + </div> + <div class="mb-3"> + <input type="title" class="form-control" id="feedbackModalTitle" placeholder="Title (minimum 4 characters)" onChange="feedbackInputHandler()"> + </div> + <div class="mb-3"> + <textarea class="form-control" id="feedbackModalDescription" minlength="13" rows="3" placeholder="Description (minimum 10 characters)" onChange="feedbackInputHandler()"></textarea> + </div> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-bs-dismiss="modal" onclick="feedbackClear()">Clear & Close</button> + <a href="javascript:void(0);" id="feedbacklink" type="button" class="btn btn-primary disabled text-light"> + <i class="fa-solid fa-up-right-from-square"></i> Generate OpenBeagle Issue + </a> + </div> + </div> + </div> +</div> + +<script> + + document.body.appendChild(document.getElementById('feedbackModal')); + + var link = document.getElementById("feedbacklink") + var project = "{{gitlab_project}}" + + var title = document.getElementById("feedbackModalTitle") + var description = document.getElementById("feedbackModalDescription") + var type = document.querySelector('input[name="feedbackType"]:checked') + + function feedbackInputHandler() { + if(title.value.length >= 4 && description.value.length >= 10) { + link.target="_blank" + link.classList.remove("disabled"); + link.href = project + "/-/issues/new?issue[title]=" + type.value + ": " + title.value + "&issue[description]=" + description.value + "%0A%0AGenerated from: " + "{{docs_url}}/{{pagename}}" + } else { + link.classList.add("disabled"); + } + } + + function feedbackClear() { + title.value = "" + description.value = "" + } + +</script> \ No newline at end of file diff --git a/_templates/forum.html b/_templates/forum.html new file mode 100644 index 0000000000000000000000000000000000000000..518e63b82d5354c7f30e6ca04b0edd9a60723a61 --- /dev/null +++ b/_templates/forum.html @@ -0,0 +1,12 @@ +<a role="button" href="https://forum.beagleboard.org" target="_blank"> + <i class="fa-brands fa-discourse"></i> Discuss on Forum +</a> + +<div class="card bg-light mt-4 text-center"> + <div class="card-body"> + <p class="card-text text-dark"> + <a href="https://www.beagleboard.org/" target="_blank">BeagleBoard.org</a> + is all about being open, please discuss in public on our + <a href="https://forum.beagleboard.org" target="_blank">forum</a>!</p> + </div> +</div> diff --git a/conf.py b/conf.py index bdc45f32eb8521af4e2fbac16df3f9c999d35311..049f51e2240de2fec9070a67908444ae1f9c133b 100644 --- a/conf.py +++ b/conf.py @@ -215,7 +215,7 @@ html_theme_options = { "footer_end": ["last-updated"], # "content_footer_items": ["last-updated"], "secondary_sidebar_items": { - "**": ["page-toc", "edit-this-page", "sourcelink","pdf","forum","oshw"] + "**": ["page-toc", "edit-this-page", "sourcelink","pdf", "feedback", "forum", "oshw"] }, } @@ -252,6 +252,7 @@ gitlab_user = "docs" gitlab_version = "main" gitlab_url = "https://openbeagle.org" gitlab_repo = "docs.beagleboard.io" +gitlab_project = "/".join((gitlab_url, gitlab_user, gitlab_repo)) docs_url = "https://docs.beagleboard.io" # parse pages details from 'PAGES' file @@ -280,6 +281,7 @@ with open("PAGES") as f: gitlab_version = branch gitlab_url = host gitlab_repo = repo + gitlab_project = "/".join((gitlab_url, gitlab_user, gitlab_repo)) docs_url = "/".join((url, slug)) html_context = { @@ -288,6 +290,7 @@ html_context = { "gitlab_user": gitlab_user, "gitlab_repo": gitlab_repo, "gitlab_version": gitlab_version, + "gitlab_project": gitlab_project, "doc_path": "", #"use_edit_page_button": True, #"edit_page_url_template": "https://openbeagle.org/XXXX/{{ file_name }}",