Advertisement
Dragone2

glinemanager.mrc

Aug 4th, 2016
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.51 KB | None | 0 0
  1. /* Gline Manager
  2. By Master
  3. Version 1.0
  4.  
  5. This script allows you to manage the gline list, including editing, removing,
  6. or even automatically pruning "old" glines which can be expired before their
  7. actual expire date (from BOPM for example, or permanent glines).
  8. This script does NOT have a gline add feature; that can be done with /gline ;)
  9. */
  10. ;Tradotto by Dragone2
  11. ;dialog
  12. dialog gline.m {
  13. title "Gline Manager"
  14. size -1 -1 161 194
  15. option dbu
  16. box "Gline List", 1, 0 0 158 96
  17. list 2, 3 7 151 85, size
  18. box "Comandi", 3, 0 98 158 25
  19. box "Informazioni e Stats", 4, 0 126 158 54
  20. button "Modifica", 5, 3 106 37 12
  21. button "Rimuovi", 6, 43 106 37 12
  22. button "Auto-Rimuovi", 7, 83 106 37 12
  23. button "Pulisci", 8, 123 106 32 12
  24. text "Set by", 9, 2 135 18 8
  25. text "Durata", 13, 2 145 23 8
  26. text "", 14, 27 145 97 8
  27. text "Tempo Trascorso", 15, 2 157 25 8
  28. text "", 16, 27 157 128 8
  29. text "Motivo", 17, 2 168 21 8
  30. edit "", 18, 25 167 131 10, read autohs
  31. button "Chiudi", 19, 120 181 37 12, ok cancel
  32. text "Gline Manager v1.0 - Master", 20, 2 183 112 8, disable center
  33. text "Contatore", 21, 131 135 25 8, center
  34. text "", 22, 131 145 25 8, center
  35. edit "", 10, 23 134 102 10, read autohs
  36. }
  37. On *:DIALOG:gline.m:*:*:{
  38. if ($devent == init) {
  39. set %gline.init 1
  40. !raw -q stats g
  41. did -b $dname 5,6,8
  42. }
  43. elseif ($devent == sclick) {
  44. if ($did == 2) && ($did(2).seltext) {
  45. did -e $dname 6-8
  46. did -r $dname 10,14,16,18
  47. did -a $dname 10 $gstat($did(2).seltext,6)
  48. did -a $dname 14 $duration($calc($gstat($did(2).seltext,4) + $gstat($did(2).seltext,5)),2)
  49. did -a $dname 16 $iif($gstat($did(2).seltext,4) > 0,$duration($gstat($did(2).seltext,4),2),Permanent)
  50. did -a $dname 18 $gstat($did(2).seltext,7)
  51. live.upd
  52. }
  53. elseif ($did == 5) halt
  54. elseif ($did == 6) {
  55. !gline $+(-,$did(2).seltext)
  56. hdel gline.tmp $did(2).seltext
  57. did -d $dname 2 $did(2).line
  58. hdec gline.tmp count
  59. }
  60. elseif ($did == 7) dialog -m gline.p gline.p
  61. elseif ($did == 8) {
  62. set %gline.clear 1
  63. !raw -q stats g
  64. did -r $dname 2
  65. did -r 10,14,16,18
  66. gline.cleanup
  67. }
  68. }
  69. elseif ($devent == close) gline.cleanup
  70. }
  71. ;auto-prune dialog
  72. dialog gline.p {
  73. title "Gline Auto-Remover"
  74. size -1 -1 204 117
  75. option dbu
  76. box "Parametri", 1, 0 0 123 48
  77. text "Setted by", 2, 2 9 25 8
  78. edit "", 3, 30 8 90 10, autohs
  79. check "Non Scadere", 4, 2 34 46 10
  80. text "Host", 5, 2 22 25 8
  81. edit "", 6, 30 21 90 10, autohs
  82. text "Wildcards accettate. Clicka Controlla per vedere quanti bans corrispondenti verranno rimossi, quindi Rimuovi per rimuoverli TUTTI.", 7, 125 3 78 45
  83. box "Anteprima", 8, 0 50 123 53
  84. list 9, 2 57 118 44, size vsbar
  85. button "Controlla", 10, 126 54 37 12
  86. button "Rimuovi", 11, 165 54 37 12
  87. button "Chiudi", 12, 145 90 37 12, ok cancel
  88. text "Gline Auto-Remover Module v1.0 (Gline Manager) - By Master", 13, 2 106 201 8, disable center
  89. check "Escludi Non-Scadenti", 14, 50 34 70 10
  90. text "Contenenti", 15, 125 74 25 8
  91. text "", 16, 162 74 25 8, center
  92. }
  93.  
  94. On *:DIALOG:gline.p:*:*:{
  95. if ($devent == init) did -b $dname 11
  96. elseif ($devent == sclick) {
  97. if ($did == 4) && ($did(14).state == 1) did -u $dname 14
  98. elseif ($did == 14) && ($did(4).state == 1) did -u $dname 4
  99. elseif ($did == 10) {
  100. did -e $dname 11
  101. did -r $dname 9
  102. set %gline.prune $iif($did(4).state == 1,noexpire,1) $did(14).state
  103. if ($did(6)) var %flag = m
  104. if ($did(3)) var %flag = %flag $+ s
  105. !raw -q stats g + $+ %flag $did(6) $did(3)
  106. }
  107. elseif ($did == 11) {
  108. var %a = 1
  109. while (%a <= $did(9).lines) {
  110. gline - $+ $did(9,%a)
  111. inc %a
  112. }
  113. if ($input(Gline rimossa. Per vedere cambiamenti riapri questa finestra!,ov)) {
  114. did -k gline.p
  115. }
  116. }
  117. }
  118. elseif ($devent == close) unset %gline.p*
  119. }
  120.  
  121. ;aliases
  122. ;$me G host countdown countup setter reason
  123. alias -l gstat {
  124. if (!$isid) halt
  125. return $gettok($hget(gline.tmp,$1),$iif($2 > 6,7-,$2),32)
  126. }
  127. alias -l live.upd {
  128. .timergline.upd 1 1 live.upd
  129. if ($did(gline.m,16) > 0) did -o gline.m 16 1 $duration($calc($gstat($did(gline.m,2).seltext,4) - %gline.clock),2)
  130. did -o gline.m 22 1 $hget(gline.tmp,count)
  131. }
  132. alias -l gline.cleanup {
  133. hfree gline.tmp
  134. hfree gline.num
  135. .timergline.* off
  136. unset %gline.*
  137. }
  138.  
  139.  
  140. ;events
  141. raw 223:*:{
  142. if (%gline.init) {
  143. if (!%gline.c) set %gline.c 1
  144. if (!$timer(gline.clock)) .timergline.clock 0 1 inc %gline.clock
  145. ; window @DEBUG
  146. ; aline -p @DEBUG 1: $1 2: $2 3: $3 4: $4 5: $5 6: $6 7-: $7-
  147. hadd -m gline.tmp $3 $1-
  148. hadd -m gline.num %gline.c $3-
  149. did -a gline.m 2 $3
  150. inc %gline.c
  151. if (!$hget(gline.tmp,count)) hadd -m gline.tmp count 1
  152. else hinc gline.tmp count
  153. halt
  154. }
  155. elseif ($gettok(%gline.prune,1,32) == noexpire) && ($4 == 0) did -a gline.p 9 $3
  156. elseif ($gettok(%gline.prune,1,32) == 1) && ($gettok(%gline.prune,2,32) != 1) did -a gline.p 9 $3
  157. elseif ($gettok(%gline.prune,2,32) == 1) && ($4 != 0) did -a gline.p 9 $3
  158. if (%gline.prune) halt
  159.  
  160. elseif (%gline.clear) { gline - $+ $3 | halt }
  161. }
  162. raw 219:*:{
  163. if (%gline.init || %gline.clear || %gline.prune) {
  164. did -o gline.m 22 1 $hget(gline.tmp,count)
  165. did -o gline.p 16 1 $did(gline.p,9).lines
  166. unset %gline.clear
  167. unset %gline.prune
  168. unset %gline.init
  169. unset %gline.c
  170. halt
  171. }
  172. }
  173.  
  174. ;menu
  175. menu status,channel {
  176. Gline Manager:dialog -m gline.m gline.m
  177. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement