11"""middleware.py contains the middleware add-ons needed for the dolt plugin to work."""
22
3- import random
4-
53from django .contrib import messages
64from django .core .exceptions import ObjectDoesNotExist
75from django .db .models .signals import m2m_changed , post_save , pre_delete
1614 DOLT_DEFAULT_BRANCH ,
1715)
1816from dolt .models import Branch , Commit
19- from dolt .utils import DoltError , active_branch
17+ from dolt .utils import DoltError
2018
2119
2220def dolt_health_check_intercept_middleware (get_response ):
@@ -62,14 +60,6 @@ def process_view(self, request, view_func, view_args, view_kwargs): # pylint: d
6260 msg = f"could not checkout branch { branch } : { str (e )} "
6361 messages .error (request , mark_safe (msg ))
6462
65- if request .user .is_authenticated :
66- # Inject the "active branch" banner. Use a random number for the button id to ensure button listeners do not
67- # clash. This is safe since it is JS generated on our end and should not be modifiable by any XSS attack.
68- msg = DoltBranchMiddleware .get_active_branch_banner (
69- random .randint (0 , 10000 ) # nosec random is not being used for security purposes.
70- )
71- messages .info (request , mark_safe (msg ))
72-
7363 try :
7464 return view_func (request , * view_args , ** view_kwargs )
7565 except DoltError as e :
@@ -91,29 +81,6 @@ def get_branch(request):
9181 request .session [DOLT_BRANCH_KEYWORD ] = DOLT_DEFAULT_BRANCH
9282 return Branch .objects .get (pk = DOLT_DEFAULT_BRANCH )
9383
94- @staticmethod
95- def get_active_branch_banner (b_id ):
96- """get_active_branch_banner returns a banner that renders the active branch and its share button."""
97- return f"""
98- <div class="text-center">
99- Active Branch: { active_branch ()}
100- <div class = "pull-right">
101- <div class="btn btn-xs btn-primary" id="share-button-{ b_id } ">
102- Share
103- </div>
104- </div>
105- </div>
106- <script>
107- const btn{ b_id } = document.getElementById("share-button-{ b_id } ");
108- btn{ b_id } .addEventListener('click', ()=>{{
109- const currLink = window.location.href;
110- const copiedLink = currLink + "?{ DOLT_BRANCH_KEYWORD } ={ active_branch ()} ";
111- navigator.clipboard.writeText(copiedLink);
112- btn{ b_id } .textContent = "Copied!"
113- }});
114- </script>
115- """
116-
11784
11885class DoltAutoCommitMiddleware :
11986 """
0 commit comments