;IRcap8 3d0297482deda47a00695642ec93126a menu menubar { $s(e-mail) .$s(1): mailnotif .- .$s(2): mandamail .$s(3): run notepad s\log\smail.txt .- .$m(269): icoe-mail } on 1:connect: if ($gettok($readini(%perfil,email,op),1,44) == on) && (!$timer(mail)) { .timerMAIL -oi 1 30 mailnotif -n } alias MANDAMAIL .load -rs mod\mail\smail.mrc | dmail $1- alias -l o return $gettok(%mail.o,$1,44) alias -l S return $hget(mail,$1) alias MAILNOTIF { %mail.o = $readini(%perfil,email,op) if (!%tmp.mail.lee1) { if ($o(1) == on) { .timerMAIL -oi 1 $calc($o(2) * 60) mailnotif -n } | else { .timerMAIL off } } if (v isin $1) { mail.gui | titulamail | return } window -c @e-mails | window -c @maills1 | window -hls @maills1 if (n !isin $1) mail.gui %mail.blanca = $replace($readini(%perfil,email,lb),|,) %mail.negra = $replace($readini(%perfil,email,ln),|,) %mail.pal = $replace($readini(%perfil,email,lp),|,) mailcierrasocks unset %tmp.cmailn %tmp.mail.nn = 0 if (%tmp.mail.lee1) { sockopen CMAIL1 $gettok(%tmp.mail.lee1,1,32) 110 | sockmark CMAIL1 $gettok(%tmp.mail.lee1,2-3,32) $gettok(%tmp.mail.lee1,1,32) 110 0 1 1 | inc %tmp.mail.nn | unset %tmp.mail.lee1 } else { var %n = 0 | :L1 | inc %n 1 | var %d = $readini %perfil EMAIL %n | if ($len(%d) > 5) { if ($gettok(%d,4,32) != off) { sockopen CMAIL $+ %n $gettok(%d,1,32) 110 | sockmark CMAIL $+ %n $gettok(%d,2-3,32) $gettok(%d,1,32) 110 0 1 1 | inc %tmp.mail.nn } | goto L1 } } echo -st $logo  $+ $s(4) ( $+ %tmp.mail.nn $s(5) $+ )... .timerMAIL.FORZA -oi 1 60 mail.forza } alias mail.gui { if (!$1) { window -c @mail var %a = $readini ircap.ini ww mail %mail.skla = 280 150 guiwin @Mail %a $s(e-mail) window -hls @maills1 } var %w = $window(@mail).w , %h = $window(@mail).h %mail.ls1 = 10 40 $calc(%w - 40) $int($calc((%h / 14) - 6)) 1 0 mail.click @maills1 arbol var %y = $calc(%h - 36) , %x = $calc($window(@mail).w / 2) %mail.bt = $calc(%x - 126) %y 100 borramail_1 $s(6) $chr(124) $calc(%x + 10) %y 100 mail.click_0 $s(7) guilista @mail mail.ls1 guidib @mail if (!$1) { window -wa @mail | sss wina } } alias redim.@mail { guiwin @mail x x $window(@mail).w $window(@mail).h mail.gui redim titulamail if $1 == fin { wmueve2 @mail } } alias mail.cierra { mailcierrasocks unset %tmp.mail.* %mail.* window -c @maills1 window -c @e-mails window -c @mail window -c @mail-msg window -c @mail-m0 } alias -l mailcierrasocks { .timerMailCierra-* off sockclose cmail* sockclose dmail* sockclose leemail* } on 1:sockopen:CMAIL*: titulamail | if $sockerr > 0 { scon -a echo -st $logo $gettok($sock($sockname).mark,1,32) 4 $+ $s(8) $+ : $sock($sockname).wsmsg | sockclose $sockname | titulamail | return } on 1:sockclose:CMAIL*: .timerTITULAMAIL -mo 1 200 titulamail on 1:sockread:CMAIL*: { var %a sockread %a var %p = $gettok($sock($sockname).mark,7,32) , %c = $gettok(%a,1,32) , %m = $gettok($sock($sockname).mark,1,32) if -ERR isin %c { scon -a echo -st $logo $gettok($sock($sockname).mark,1,32) 4 $+ $s(8) $+ : %a | sockwrite -tn $sockname quit | sockclose $sockname | titulamail | halt } if %p == 5 { if ($left(%a,5) == from:) { set %tmp.mail.f. [ $+ [ %m ] ] $strip($gettok(%a,2-,58)) } if (reply isin $left(%a,8)) { set %tmp.mail.r. [ $+ [ %m ] ] $strip($gettok(%a,2-,58)) } if (return-path isin $$left(%a,12)) { set %tmp.mail.rp. [ $+ [ %m ] ] $strip($gettok(%a,2-,58)) } if ($$left(%a,8) == subject:) { set %tmp.mail.s. [ $+ [ %m ] ] $strip($gettok(%a,2-,58)) } if ($o(4) == on) { if ([bulk] isin %a) || (filteredbulk isin %a) || (X-Spam-Level: ** isin %a) { set %tmp.mail.sp. [ $+ [ %m ] ] 1 } } } if %a == . { if ($o(5) == on) { var %n = 1 | :BLA | var %a = $gettok(%mail.blanca,%n,22) | if (%a) { if (%a iswm %tmp.mail.f. [ $+ [ %m ] ]) goto FINFILTRO | inc %n | goto BLA } } if ($o(6) == on) { var %n = 1 | :NEG | var %a = $gettok(%mail.negra,%n,22) | if (%a) { if (%a iswm %tmp.mail.f. [ $+ [ %m ] ]) { set %tmp.mail.sp. [ $+ [ %m ] ] 1 | goto FINFILTRO } | inc %n | goto NEG } } if ($o(7) == on) { var %n = 1 | :PAL | var %a = $gettok(%mail.pal,%n,22) | if (%a) { if (%a iswm %tmp.mail.s. [ $+ [ %m ] ]) { set %tmp.mail.sp. [ $+ [ %m ] ] 1 | goto FINFILTRO } | inc %n | goto PAL } } if ($o(3) == on) { if ($spamalea(3,$gettok($limpia(%tmp.mail.f. [ $+ [ %m ] ]),1,64)) == si) { set %tmp.mail.sp. [ $+ [ %m ] ] 1 } } if ($o(3) == on) { if (%tmp.mail.r. [ $+ [ %m ] ]) { if ($limpia(%tmp.mail.f. [ $+ [ %m ] ]) != $limpia(%tmp.mail.r. [ $+ [ %m ] ])) { set %tmp.mail.sp. [ $+ [ %m ] ] 1 } } } if ($o(3) == on) { if (%tmp.mail.rp. [ $+ [ %m ] ]) { if ($limpia(%tmp.mail.f. [ $+ [ %m ] ]) != $limpia(%tmp.mail.rp. [ $+ [ %m ] ])) { set %tmp.mail.sp. [ $+ [ %m ] ] 1 } } } :FINFILTRO $lista(%m,$gettok($sock($sockname).mark,6,32),%tmp.mail.f. [ $+ [ %m ] ] , %tmp.mail.s. [ $+ [ %m ] ],$gettok($sock($sockname).mark,1-4,32) ,%tmp.mail.sp. [ $+ [ %m ] ]) unset %tmp.mail.f. [ $+ [ %m ] ] %tmp.mail.s. [ $+ [ %m ] ] %tmp.mail.sp. [ $+ [ %m ] ] %tmp.mail.r. [ $+ [ %m ] ] %tmp.mail.rp. [ $+ [ %m ] ] var %n = $gettok($sock($sockname).mark,6,32) | inc %n | sockmark $sockname $puttok($sock($sockname).mark,%n,6,32) | if %n > $gettok($sock($sockname).mark,5,32) { smail quit } | else { smail top %n 0 } } if %c == +OK { if %p == 1 { smail user $gettok(%m,1,64) | pmail 2 } if %p == 2 { smail pass $decode64($gettok($sock($sockname).mark,2,32),m) | pmail 3 } if %p == 3 { smail stat | pmail 4 } if %p == 4 { var %n = $gettok(%a,2,32) | if (%n != 0) { sockmark $sockname $puttok($sock($sockname).mark,%n,5,32) | smail top 1 0 | pmail 5 } | else smail quit } } } alias -l smail { sockwrite -tn $sockname $1- } alias -l pmail { var %a = $sock($sockname).mark | sockmark $sockname $gettok(%a,1-6,32) $1 } alias -l limpia { if (< isin $1-) return $gettok($gettok(x $1-,1,64),2,60) $+ @ $+ $gettok($gettok(x $1-,2,64),1,62) | else return $gettok($1-,-1,32) } alias -l spamalea var %i = 1, %c | :L1 | var %a = $mid($2-,%i,1) | if (%a) { if (%a !isin aeiou-_1234567890) { inc %c | if (%c == $1) return si } | else { %c = 0 } | inc %i | goto L1 } alias -l lista { var %g = $iif($6 > 0,zpam,$1) aline @maills1 %g $+ i $+ $iif($len($4) > 60,$left($4,60) $+ ...,$4) 4:14 $limpia($3) $+  $+ $2 $+  $+ $5 $+  $+ 3 $+ $3 $+  $+ $4 mailgrupo %g refres } alias mailgrupo { var %l = $fline(@maills1,$1 $+ g*,1) , %n = $fline(@maills1,$1 $+ i*,0) if (%n > 0) { if (%l) rline @maills1 %l $1 $+ g $+ $replace($1,zpam,$s(9)) $+  ( $+ %n $+ )-- $+ $iif($1 == zpam,5,4) else aline @maills1 $1 $+ g $+ $replace($1,zpam,$s(9)) $+  ( $+ %n $+ )-- $+ $iif($1 == zpam,5,4) return } if (%l) dline @maills1 %l } alias titulamail { if ($window(@mail)) titula @mail $s(e-mail) ::: $s(5) $+ : %tmp.mail.nn ::: $s(10) $+ : $fline(@maills1,*i*,0) ::: $s(11) $+ : $calc($sock(cmail*,0) + $sock(dmail*,0)) if ($sock(cmail*,0) == 0) { var %s = $fline(@maills1,zpami*,0) , %n = $calc($fline(@maills1,*i*,0) - %s) if (%tmp.mail.nn) { unset %tmp.mail.nn | echo -st $logo $s(12) $iif(%n > 0,* %n $s(10) $+ ) $iif(%s > 0,* %s $lower($s(9)) $+ ) } raya if (%n < 1) && (%s < 1) && (!$window(@mail)) { window -c @maills1 } if (%n > 0) && (!$window(@mail)) { var %a = $mail.resumen , %i = 1 , %y = 5 , %g = $gettok(%gui.cc,6,44) | %nl = $numtok(%a,22) var %ac = $active | if $numtok(%ac,32) > 1 { %ac = " $+ %ac $+ " } window -kpBwz +d @e-mails $calc($window(-3).w - 200) $window(@barra).h 200 $calc(15 * %nl + 8) @e-mails drawrect -rnf @e-mails $gettok(%gui.cc,1,44) 1 0 0 200 $window(@e-mails).h cua @e-mails 3 2 192 $calc($window(@e-mails).h - 6) $gettok(%gui.cc,4,44) $gettok(%gui.cc,5,44) $gettok(%gui.cc,3,44) :L1 | var %c = $gettok(%a,%i,22) | if (%c) { if ($gettok(%c,1,32) != spam) { drawtext -rcn @e-mails %g Verdana 9 20 %y 300 14 $gettok(%c,2,32) : $gettok(%c,1,32) drawpic -cnt @e-mails 65280 4 %y 42 0 14 14 " $+ $mircdirskin\ $+ %skin $+ \miniconos.bmp" inc %y 15 } inc %i | goto L1 } drawline @e-mails if ($appactive) { window -a @e-mails | window -a %ac } if ($o(8) == on) $cartelito($s(13),$iif(%n > 0,$s(10) $+ : %n) $iif(%s > 0, \ Spam: %s)) if ($o(9) == on) slocal $o(10) .timerMAIL.FORZA off } } } alias mail.forza { var %n = 1 | : L1 | var %a = $sock(cmail*,%n) | if (%a) { %a = $sock(cmail*,%n).mark | echo -st $logo $gettok(%a,1,32) 4 $+ $s(8) $+ : $s(14) ( $gettok(%a,3,32) ) | inc %n | goto L1 } sockclose cmail* | titulamail } menu @e-mails { dclick: mailnotif -v | window -c @e-mails $s(15): mailnotif -v | window -c @e-mails - $s(16):mail.cierra } alias mail.resumen { var %i = 1 , %c | :L1 | var %a = $fline(@maills1,*g*,%i).text | if (%a) { if ($gettok(%a,1,8) != zpam) { %c = $addtok(%c,$strip($remove($gettok(%a,3,8),$chr(40),$chr(41))),22) } | inc %i | goto L1 } | return %c } alias MAIL.CLICK { if $gettok($1-,2,8) == g { tttip $fin$ | return } if $1 == 1 { if ($3) .timerTTTIPmail -m 1 300 tttip $s(17) $+ : $gettok($gettok($3-,5,8),1,32)  $+ $s(18) $+ : $nexe($gettok($3-,7,8))  $+ $s(19) $+ : $nexe($gettok($3-,8,8)) } if $1 == 2 { .timerTTTIPmail off | lee1mail $gettok($3-,5,8) $gettok($3-,4,8) } if $1 == 0 { var %a = $sline(@maills1,1) | if (%a) lee1mail $gettok(%a,5,8) $gettok(%a,4,8) } } #guimgen.@mail on menu @guimgen { $iif($gettok($sline(@maills1,1),1,8) != zpam && $gettok($sline(@maills1,1),2,8) == i,$s(20)): { var %a = $gettok($sline(@maills1,1),1,8) rline @maills1 $sline(@maills1,1).ln $puttok($sline(@maills1,1),zpam,1,8) mailgrupo zpam mailgrupo %a refres } $iif($gettok($sline(@maills1,1),1,8) == zpam && $gettok($sline(@maills1,1),2,8) == i,$s(21)): { var %a = $sline(@maills1,1) rline @maills1 $sline(@maills1,1).ln $puttok($sline(@maills1,1),$gettok($gettok(%a,5,8),1,32),1,8) mailgrupo zpam mailgrupo $gettok($gettok(%a,5,8),1,32) refres } - $iif($gettok($sline(@maills1,1),2,8) == i,$s(2)): { var %a = $limpia($gettok($sline(@maills1,1),7,8)) mandamail %a } } #guimgen.@mail end alias borramail { if ($1 == 1) { pregunta $s(22) $+ borramail zpamnoop | return } mailcierrasocks var %n = 1 , %l | :L1 var %a = $fline(@maills1,$1 $+ i*,%n).text if (%a) { var %e = $gettok($gettok(%a,5,8),1,32) if (!$findtok(%l,%e,32)) { %l = $addtok(%l,%e,32) | sockopen DMAIL. $+ %e $gettok($gettok(%a,5,8),3-4,32) sockmark DMAIL. $+ %e user_ $+ $gettok($gettok(%a,5,8),1,32) pass_ $+ $decode64($gettok($gettok(%a,5,8),2,32),m) * } inc %n | goto L1 } } on 1:sockopen:DMAIL*: titulamail | if $sockerr > 0 { scon -a echo -st $logo $gettok($sock($sockname).mark,1,32) 4 $+ $s(8) $+ : $sock($sockname).wsmsg | sockclose $sockname | .timerTITULAMAIL -o 1 1 titulamail | return } on 1:sockclose:DMAIL*: .timerTITULAMAIL -o 1 1 titulamail on 1:sockread:DMAIL*: { var %a sockread %a var %m = $sock($sockname).mark , %c = $gettok(%a,1,32) if %c == +OK { var %k = $gettok(%m,1,32) if (%k == *) { var %b = $fline(@maills1,zpami** $+ $gettok($sockname,2-,46) *,1) if (%b) { var %t = $line(@maills1,%b) | sockwrite -tn $sockname dele $gettok(%t,4,8) | titulamail | dline @maills1 %b | refres } else { sockwrite -tn $sockname quit | mailgrupo zpam | refres } return } if (user_* iswm %k) { sockwrite -tn $sockname user $gettok($gettok(%k,2-,95),1,64) | goto D1 } if (pass_* iswm %k) { sockwrite -tn $sockname pass $gettok(%k,2-,95) } :D1 sockmark $sockname $gettok(%m,2-,32) } } alias -l refres { if $window(@mail) { guilista @mail mail.ls1 | drawline @mail } } alias lee1mail { if (!$5) return if (!$sock(LEEMAIL- $+ $1)) { sockopen LEEMAIL- $+ $1 $3 $4 sockmark LEEMAIL- $+ $1 user_ $+ $1 pass_ $+ $decode64($2,m) retr_ $+ $5 } else { sockmark LEEMAIL- $+ $1 retr_ $+ $5 | sockwrite -tn LEEMAIL- $+ $1 stat } .timerMailCierra- $+ $1 1 25 sockclose LEEMAIL- $+ $1 unset %tmp.mail.leemen %tmp.mail.100 window -c @mail-m0 | window -lh @mail-m0 if (!$window(@mail-msg)) { var %a = $readini ircap.ini ww mailmsg | window @mail-msg %a } clear @mail-msg | echo @mail-msg $s(23) $1 ... } on 1:sockopen:LEEMAIL-*: if $sockerr > 0 { scon -a echo -st $logo $removecs($sockname,LEEMAIL-) 4 $+ $s(8) $+ : $sock($sockname).wsmsg | sockclose $sockname | return } on 1:sockread:LEEMAIL-*: { var %s sockread %s if -ERR isin %s { echo -s $sockname 4 $+ $s(8) $+ : %s | sockclose $sockname | halt } if ($len($remove(%s,$chr(32))) < 1) aline @mail-m0  | else aline @mail-m0 %s inc %tmp.mail.100 if ($gettok(%s,1,32) == +OK) { var %k = $gettok($sock($sockname).mark,1,32) if (user_* iswm %k) { sockwrite -tn $sockname user $gettok($gettok(%k,2-,95),1,64) | goto D1 } if (pass_* iswm %k) { sockwrite -tn $sockname pass $gettok(%k,2-,95) } if (retr_* iswm %k) { sockwrite -tn $sockname retr $gettok(%k,2-,95) } :D1 sockmark $sockname $gettok($sock($sockname).mark,2-,32) return } if (Content-Disposition: inline; isin %s) || (Content-Type: text/htmlo; isin %s) || (Content-Disposition: attachment; isin %s) { aline @mail-m0  | aline @mail-m0  $+ $s(24) | sockclose $sockname | sacamail } if %tmp.mail.100 > 200 { aline @mail-m0  $+ $s(25) | sockclose $sockname | sacamail } if (%s == .) { sacamail | return } } alias sacamail { %tmp.mail.mos = $1- unset %tmp.mail.lsep clear @mail-msg unset %tmp.mail.leemen %tmp.mail.raya | if (-c isin $1) { %tmp.mail.leemen = 1 } var %l = 1 | :L1 var %s = $line(@mail-m0,%l) | if (%s) { if (---- isin %s) && (-c !isin $1) { unset %tmp.mail.leemen } if (%tmp.mail.leemen) { if (-c isin $1) echo @mail-msg %s | else { var %t = $sinhtml(%s)) | if (%t) { echo @mail-msg %t | unset %tmp.mail.lsep = 1 } | else { if (!%tmp.mail.lsep) { echo @mail-msg  | %tmp.mail.lsep = 1 } } } } else { var %c = $gettok(%s,1,32) , %k = echo @mail-msg if (%s == ) { %tmp.mail.leemen = 1 | if (!%tmp.mail.raya) { aline @mail-msg $str(-= ,111) | %tmp.mail.raya = 1 } } if ( %c == From:) { %k  $+ $s(18) $+ : $gettok(%s,2-999,32) } if (%c == To:) { %k  $+ $s(26) $+ : $gettok(%s,2-999,32) } if (%c == Date:) { %k  $+ $s(27) $+ : $gettok(%s,2-999,32) } if (%c == Subject:) { %k  $+ $s(19) $+ : $gettok(%s,2-999,32) } } inc %l | goto L1 } } menu @mail-msg { $iif(%tmp.mail.mos != -c,$s(28)): sacamail -c $iif(%tmp.mail.mos == -c,$s(29)): sacamail - $s(30): writeini ircap.ini ww mailmsg $window(@mail-msg).x $window(@mail-msg).y $window(@mail-msg).w $window(@mail-msg).h $window(@mail-msg).font $window(@mail-msg).fontsize } alias icoe-mail { f3 setvarios var %a = $findtok($gettok(%setup.pñ1,5-,32),e-mail,1,22) %setup.pñ1 = $puttok(%setup.pñ1,%a,3,32) setvarios2 %a } alias mail.unload { .timermail* off mail.cierra hfree mail unload -rs mail.mrc } on 1:START: { var %a = $readini(%perfil,email,op) if (!%a) { writeini %perfil email op off,60,off,off,off,off,off,off,off,- } .hmake -s mail | hload mail "lng\ $+ %idioma $+ \mail.lnh" } on 1:SIGNAL:idioma: if ($1 != $2) { hload mail "lng\ $+ %idioma $+ \mail.lnh" } ;EOF