views.py 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. from django.shortcuts import render
  2. # Create your views here.
  3. from django.shortcuts import render
  4. from django.http import HttpResponseRedirect
  5. from django.urls import reverse
  6. from django import template
  7. # Create your views here.
  8. from .models import *
  9. from sicurezza.views import *
  10. #from logger.views import *
  11. from comunicazioni.views import *
  12. from datetime import date
  13. from configurazione.views import *
  14. from mqtt import views as m
  15. #from random import randint
  16. #lista dei server disponibili
  17. @securitywrap
  18. def ProxyServerList(request):
  19. session = getSessionParms(request)
  20. userauth = session.get('_userauth_')
  21. proxy2edit = session.get('_proxyserver2edit_')
  22. #request.session['_from_']=":FtpList"
  23. #_from_ = session['_from_']
  24. #print("_from_",_from_)
  25. #print("next",next)
  26. try:
  27. utenteautorizzato = User.objects.get(pk=userauth)
  28. except User.DoesNotExist as dne:
  29. return HttpResponseRedirect(reverse('Login:login',args={}))
  30. c = m.start()
  31. m.publish(c,'Messaggio/Proxy',json.dumps({'me':"Accesso alla lista ProxyServer da {}".format(utenteautorizzato.nome)}))
  32. value={}
  33. value['utenteautorizzato'] = utenteautorizzato
  34. value['navbar'] = True
  35. print("livello autorizzazione",utenteautorizzato.securitylevel_id)
  36. securitylevel = getSecurityLevel(utenteautorizzato.securitylevel_id)
  37. securityrow = getSecurityRow(utenteautorizzato.securitylevel_id)
  38. securitylist = getSecurityList(securityrow)
  39. value['securitylist'] = securitylist
  40. value['securityrow'] = securityrow
  41. value['securityrowLen'] = len(securityrow)
  42. if "POST" in request.method:
  43. if 'edit' in request.POST:
  44. print("Edit Server")
  45. request.session['_proxyserver2edit_'] = request.POST.get('edit')
  46. #eturn HttpResponseRedirect(reverse('Proxy:ProxyServerEdit',args={}))
  47. if 'nuovo' in request.POST:
  48. request.session['_proxyserver2edit_'] = 0
  49. #return HttpResponseRedire(reverse('Proxy:ProxyServerEdit',args={}))
  50. if "disable" in request.POST :
  51. print('id da disattivare',request.POST['disable'])
  52. idpost = request.POST['disable']
  53. w = ProxyServer.objects.get(pk=idpost)
  54. w.enabled=False
  55. w.save()
  56. if "enable" in request.POST:
  57. print('id da attivare',request.POST['enable'])
  58. idpost = request.POST['enable']
  59. f = ProxyServer.objects.get(pk=idpost)
  60. f.enabled=True
  61. f.save()
  62. if "delete" in request.POST:
  63. print('id da cancellare',request.POST['delete'])
  64. idpost = request.POST['delete']
  65. w = ProxyServer.objects.get(pk=idpost)
  66. w.delete()
  67. value['proxyserver'] = ProxyServer.objects.all().order_by('nome')
  68. return render(request,"ProxyServer.List.html",value)
  69. '''
  70. def filtroEdit(request):
  71. session = getSessionParms(request)
  72. userauth = session['_userauth_']
  73. filtro2edit = session['_filtro2edit_']
  74. request.session['from']='Filtro:FiltroList'
  75. utenteautorizzato = User.objects.get(pk=userauth)
  76. value={}
  77. value['utenteautorizzato'] = utenteautorizzato
  78. value['navbar'] = True
  79. print("livello autorizzazione",utenteautorizzato.securitylevel_id)
  80. securitylevel = getSecurityLevel(utenteautorizzato.securitylevel_id)
  81. securityrow = getSecurityRow(utenteautorizzato.securitylevel_id)
  82. securitylist = getSecurityList(securityrow)
  83. value['securitylist'] = securitylist
  84. value['securityrow'] = securityrow
  85. value['securityrowLen'] = len(securityrow)
  86. value['Status'] = None
  87. filtro = Filtro()
  88. try:
  89. filtro = Filtro.objects.get(pk=filtro2edit)
  90. except Filtro.DoesNotExist as dne:
  91. print('valore filtro2edit non valido',filtro2edit)
  92. c = m.start()
  93. m.publish(c,"Messaggio/FiltroEmail","Accesso all'edit filtro da {}".format(utenteautorizzato.nome))
  94. if request.method == 'POST':
  95. print('metodo',request.method)
  96. # non effettua il salvataggio, ma ritorna alla lista FTP
  97. if 'Ritorno' in request.POST:
  98. return HttpResponseRedirect(reverse('Filtro:FiltroList'))
  99. formfiltro = formFiltro(request.POST)
  100. if formfiltro.is_valid():
  101. print('formfiltro.is_valid()',formfiltro.is_valid())
  102. filtro.filtro=formfiltro.cleaned_data.get('filtro')
  103. filtro.status=formfiltro.cleaned_data.get('status')
  104. filtro.destination= formfiltro.cleaned_data.get('destination')
  105. filtro.redirect = formfiltro.cleaned_data.get('redirect')
  106. filtro.dinput = formfiltro.cleaned_data.get('dinput')
  107. filtro.doutput = formfiltro.cleaned_data.get('doutput')
  108. filtro.header = formfiltro.cleaned_data.get('header')
  109. filtro.body = formfiltro.cleaned_data.get('body')
  110. filtro.enabled = formfiltro.cleaned_data.get('enabled')
  111. filtro.save()
  112. print('filtro:',filtro.status)
  113. # if viene selezionato il reject, parte una richiesta di pulizia coda per quel filtro
  114. if 'reject' in filtro.status and filtro.enabled:
  115. print('Eseguo mqtt')
  116. q={}
  117. q['op']='mqremove'
  118. q['filter'] = filtro.filtro
  119. q['header'] = filtro.header
  120. q['body'] = filtro.body
  121. m.publish(c,'Richiesta/FiltroEmail',json.dumps(q))
  122. temp = {}
  123. temp['filtro'] = filtro.filtro
  124. temp['status'] = filtro.status
  125. temp['destination'] = filtro.destination
  126. temp['redirect'] = filtro.redirect
  127. temp['dinput'] = filtro.dinput
  128. temp['doutput'] = filtro.doutput
  129. temp['header'] = filtro.header
  130. temp['body'] = filtro.body
  131. temp['enabled'] = filtro.enabled
  132. value['filtro'] = formFiltro(temp)
  133. value['ListStatus'] = value['filtro'].listStatus()
  134. print(value['ListStatus'])
  135. return render(request,'Filtro.Edit.html',value)
  136. '''