qhandler.php 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. <?php
  2. session_start();
  3. require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/prerequisites.inc.php';
  4. if (quarantine('hash_details', $_GET['hash']) === false && !isset($_POST)) {
  5. header('Location: /admin');
  6. exit();
  7. }
  8. require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/header.inc.php';
  9. if (preg_match("/^([a-f0-9]{64})$/", $_POST['quick_release']) || preg_match("/^([a-f0-9]{64})$/", $_POST['quick_delete'])) {
  10. ?>
  11. <div class="container">
  12. <div class="row">
  13. <div class="col-md-offset-2 col-md-8">
  14. <div class="panel panel-default">
  15. <div class="panel-heading"><span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span> <?= $lang['header']['quarantine']; ?></div>
  16. <div class="panel-body">
  17. <legend><?=(isset($_POST['quick_release'])) ? $lang['quarantine']['release'] : $lang['quarantine']['remove'];?></legend>
  18. <p><?=$lang['quarantine']['qhandler_success'];?></p>
  19. </div>
  20. </div>
  21. </div>
  22. </div> <!-- /row -->
  23. </div> <!-- /container -->
  24. <?php
  25. }
  26. elseif (in_array($_GET['action'], array('release', 'delete'))) {
  27. if (preg_match("/^([a-f0-9]{64})$/", $_GET['hash'])) {
  28. if ($_GET['action'] == "release"):
  29. ?>
  30. <div class="container">
  31. <div class="row">
  32. <div class="col-md-offset-2 col-md-8">
  33. <div class="panel panel-default">
  34. <div class="panel-heading"><span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span> <?= $lang['header']['quarantine']; ?></div>
  35. <div class="panel-body">
  36. <legend data-hash="<?=$_GET['hash'];?>"><?=$lang['quarantine']['release'];?></legend>
  37. <div id="qid_error" style="display:none" class="alert alert-danger"></div>
  38. <div class="form-group">
  39. <label for="qid_detail_symbols"><h4><?=$lang['quarantine']['rspamd_result'];?>:</h4></label>
  40. <p><?=$lang['quarantine']['spam_score'];?>: <span id="qid_detail_score"></span></p>
  41. <p id="qid_detail_symbols"></p>
  42. </div>
  43. <div class="form-group">
  44. <label for="qid_detail_subj"><h4><?=$lang['quarantine']['subj'];?>:</h4></label>
  45. <p id="qid_detail_subj"></p>
  46. </div>
  47. <div class="form-group">
  48. <label for="qid_detail_hfrom"><h4><?=$lang['quarantine']['sender_header'];?>:</h4></label>
  49. <p><span class="mail-address-item" id="qid_detail_hfrom"></span></p>
  50. </div>
  51. <div class="form-group">
  52. <label for="qid_detail_efrom"><h4><?=$lang['quarantine']['sender'];?>:</h4></label>
  53. <p><span class="mail-address-item" id="qid_detail_efrom"></span></p>
  54. </div>
  55. <div class="form-group">
  56. <label for="qid_detail_recipients"><h4><?=$lang['quarantine']['recipients'];?>:</h4></label>
  57. <p id="qid_detail_recipients"></p>
  58. </div>
  59. <div class="form-group">
  60. <label for="qid_detail_fuzzy"><h4>Fuzzy Hashes:</h4></label>
  61. <p id="qid_detail_fuzzy"></p>
  62. </div>
  63. <form method="post" autofill="off">
  64. <div class="form-group">
  65. <button type="submit" class="btn btn-success" name="quick_release" value="<?=$_GET['hash'];?>"><?= $lang['tfa']['confirm']; ?></button>
  66. </div>
  67. </form>
  68. </div>
  69. </div>
  70. </div>
  71. </div> <!-- /row -->
  72. </div> <!-- /container -->
  73. <?php
  74. elseif ($_GET['action'] == "delete"):
  75. ?>
  76. <div class="container">
  77. <div class="row">
  78. <div class="col-md-offset-2 col-md-8">
  79. <div class="panel panel-default">
  80. <div class="panel-heading"><span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span> <?= $lang['header']['quarantine']; ?></div>
  81. <div class="panel-body">
  82. <legend data-hash="<?=$_GET['hash'];?>"><?=$lang['quarantine']['remove'];?></legend>
  83. <div id="qid_error" style="display:none" class="alert alert-danger"></div>
  84. <div class="form-group">
  85. <label for="qid_detail_symbols"><h4><?=$lang['quarantine']['rspamd_result'];?>:</h4></label>
  86. <p><?=$lang['quarantine']['spam_score'];?>: <span id="qid_detail_score"></span></p>
  87. <p id="qid_detail_symbols"></p>
  88. </div>
  89. <div class="form-group">
  90. <label for="qid_detail_subj"><h4><?=$lang['quarantine']['subj'];?>:</h4></label>
  91. <p id="qid_detail_subj"></p>
  92. </div>
  93. <div class="form-group">
  94. <label for="qid_detail_hfrom"><h4><?=$lang['quarantine']['sender_header'];?>:</h4></label>
  95. <p><span class="mail-address-item" id="qid_detail_hfrom"></span></p>
  96. </div>
  97. <div class="form-group">
  98. <label for="qid_detail_efrom"><h4><?=$lang['quarantine']['sender'];?>:</h4></label>
  99. <p><span class="mail-address-item" id="qid_detail_efrom"></span></p>
  100. </div>
  101. <div class="form-group">
  102. <label for="qid_detail_recipients"><h4><?=$lang['quarantine']['recipients'];?>:</h4></label>
  103. <p id="qid_detail_recipients"></p>
  104. </div>
  105. <form method="post" autofill="off">
  106. <div class="form-group">
  107. <button type="submit" class="btn btn-success" name="quick_delete" value="<?=$_GET['hash'];?>"><?= $lang['tfa']['confirm']; ?></button>
  108. </div>
  109. </form>
  110. </div>
  111. </div>
  112. </div>
  113. </div> <!-- /row -->
  114. </div> <!-- /container -->
  115. <?php
  116. endif;
  117. }
  118. }
  119. $js_minifier->add('/web/js/site/qhandler.js');
  120. require_once $_SERVER['DOCUMENT_ROOT'] . '/inc/footer.inc.php';
  121. ?>