; (sendmail) 

on 1:load:{
  echo -a (sendmail!br)
echo -a version: 1.2
  echo -a to use this addon type /sendmail-br
  echo -a it's a brazilian addon by bart-acerola(sdrx member)<bart-acerola@brasnet.org>
}

alias sendmail-br { 
  if ( $dialog(sendmail-br) == $null ) { dialog -m sendmail-br sendmail-br }
  else { echo -a (sendmail!br) oh..sendmail is already open.. }
}

dialog sendmail-br {
  title "(sendmail!br)"
  size -1 -1 240 260
  text "smtp server:", 1, 5 5 80 20
  edit "", 2, 85 3 150 20, autohs
  text "your email:", 3, 5 25 80 20
  edit "", 4, 85 23 150 20, autohs
  text "send to:", 5, 3 55 80 20
  edit "", 6, 85 52 150 20, autohs
  edit "", 7, 3 80 233 20, autohs
  edit "", 8, 3 105 233 100, autovs multi
  button "(send email)",9, 5 210 120 20
  button "(cancel)",10, 130 210 104 20
  button "a", 12, 4000000 40000000 40000000000 4000000000, ok 
  edit "", 11, 5 235 232 20, read
}

on *:dialog:sendmail-br:sclick:9:{
  if ( $sock(sendmail-br,status) == 1 ) { sockclose sendmail-br }
  if ( $did(sendmail-br,2).text == $null ) { set %sendmail-br.smtpserver mail.airnet.com | did -a sendmail-br 2 %sendmail-br.smtpserver }
  if ( $did(sendmail-br,4).text == $null ) { did -r sendmail-br 11 | did -a sendmail-br 11 preencha o campo do seu email! | halt }
  if ( $did(sendmail-br,7).text == $null ) { did -r sendmail-br 11 | did -a sendmail-br 11 preencha o campo do titulo da mensagem! | halt }
  if ( $did(sendmail-br,8).text == $null ) { did -r sendmail-br 11 | did -a sendmail-br 11 preencha o campo da mensagem! | halt }
  if ( $did(sendmail-br,6).text == $null ) { did -r sendmail-br 11 | did -a sendmail-br 11 preencha o campo de destinatario! | halt }
  set %sendmail-br.meuemail $did(sendmail-br,4).text
  set %sendmail-br.destinatario $did(sendmail-br,6).text
  set %sendmail-br.titulo $did(sendmail-br,7).text
  set %sendmail-br.smtpserver $did(sendmail-br,2).text
  sockopen sendmail-br %sendmail-br.smtpserver 25
  did -r sendmail-br 11
  did -a sendmail-br 11 conectando a %sendmail-br.smtpserver $+ ...
  did -b sendmail-br 9
}

on *:dialog:sendmail-br:sclick:10:{ 
  if ( $sock(sendmail-br,status) == 1 ) { did -e sendmail-br 9 | did -r sendmail-br 11 | did -a sendmail-br 11 envio cancelado! | sockclose sendmail-br }
  else { dialog -x sendmail-br sendmail-br }
}


on *:dialog:sendmail-br:init:0:{
  did -a sendmail-br 2 %sendmail-br.smtpserver
  did -a sendmail-br 4 %sendmail-br.meuemail
  did -a sendmail-br 11 done.
}

on 1:sockopen:sendmail-br: {
  if ($sockerr > 0) { 
    did -r sendmail-br 11
    did -a sendmail-br 11 error, can't connect to smtp server!(try this server: smtp.sti.com.br)
    did -d sendmail-br 9 
    return
  }
  did -r sendmail-br 11
  did -a sendmail-br 11 sending mail...
  sockwrite -n sendmail-br HELO $ip
  sockwrite -n sendmail-br MAIL FROM: %sendmail-br.meuemail
  sockwrite -n sendmail-br RCPT TO: %sendmail-br.destinatario
  sockwrite -n sendmail-br DATA
}
on 1:sockread:sendmail-br: {    
  sockread %sendmail-br.tmp
  if ( 5 == $left($gettok(%sendmail-br.tmp,1,32),1) ) { did -r sendmail-br 11 | did -a sendmail-br 11 error! can't send mail... | sockclose sendmail-br | did -e sendmail-br 9 | halt }
  if (354 == $gettok(%sendmail-br.tmp,1,32)) { 
    sockwrite -n sendmail-br Subject: %sendmail-br.titulo
    sockwrite -n sendmail-br Return-Address: %sendmail-br.meuemail
    mandaoemail
    sockwrite -n sendmail-br  .
    sockwrite -n sendmail-br QUIT
    did -r sendmail-br 11
    did -a sendmail-br 11 mail sent.
    did -e sendmail-br 9
    sockclose sendmail-br
    halt
  }
}

alias mandaoemail {
  set %i 1
  :loop
  set %loop $did(sendmail-br,8,%i).text 
  if ( %loop == $null ) { goto exit }
  else {  sockwrite -n sendmail-br %loop }
  inc %i
  goto loop
  :exit
  unset %i
  unset %loop
}

