;IRcap8 85d8a9e633215ccc17c86c7b7944d635

on 1:LOAD: inileememo

alias MEMOLEE {
  unset %grabamemo
  %numemo = 1 | mms * read 1
}


on ^+69:OPEN:*: {
  if $nick == $gettok($netcon(5),1,64) {
    echo @memos 4> $1- | .timerRAYABOT 1 2 echo @memos -
    if ($strip($1) == Mensaje) && ($strip($3) == de) { %grabamemo = $me $4-6 $+ ) | halt }
    if (%grabamemo != $null) { 
      write -il1 %mlee.fic %grabamemo $1- 
      if $lines(%mlee.fic) > 255 { write -d %mlee.fic | echo -s $logo Borrando ultima linea }
      unset %grabamemo | inc %numemo | mms * read %numemo | halt 
    }
    if (no existe! isin $strip($1-)) { mms * del all | cargamemos | halt }
    if (No tiene mensajes isin $strip($1-)) { cargamemos | halt }
  }
}

on 1:input:@MEMOS: mms $1- | halt
on 1:CLOSE:@memos: unset %mlee.fic %grabamemo %numemo | .unload -rs memolee.mrc

; Gestor de MEMOS

alias inileememo {
  if $window(@Memos).state == $null { window -nkel24 @memos $readini ircap.ini ww memo | focus @memos $cid | echo -e @memos Gestor de memos. Menú para opciones. }

  if ($readini ircap.ini var usamemos != on) {
    window -a @memos | var %louso = $?!="El Gestor de Memos descarga todos los mensajes del servidor y después los borra del mismo. Los mensajes quedan almacenados en el disco. $crlf $crlf $+ Si deseas consultar tus mensajes sin borrarlos del servidor, no uses el Gestor de Memos. En algunos casos, por ejemplo cuando conectas desde un ciber café, es recomendable no usarlo, para no perder tus mensajes. $crlf $crlf $+ ¿ Estás seguro de querer usar el Gestor de Memos ?"
    if %louso == $false { window -c @memos | unset %mlee.fic %grabamemo %numemo | .unload -rs memolee.mrc }
    if %louso == $true { writeini ircap.ini var usamemos on }
  }
  %mlee.fic = usr\memos_ $+ $nnet $+ .mms | if $1 != $null { %mlee.fic = $1 }
  memolee
  cargamemos
}

menu @memos {
  dclick {
    sacamemo $sline(@memos,1).ln
  }
  leer mensajes: memolee
  -
  $remove($gettok($strip($sline(@memos,1)),1,32),-->)
  .whois: w $remove($gettok($strip($sline(@memos,1)),1,32),-->)
  .nick info: mns info $remove($gettok($strip($sline(@memos,1)),1,32),-->)
  -
  contestar a $remove($gettok($strip($sline(@memos,1)),1,32),-->): loadu g-memosend | dmemos $remove($gettok($strip($sline(@memos,1)),1,32),-->)
  enviar memo a ?: loadu g-memosend | dmemos
  -
  borrar marcados
  .confirmar: borramemo
  -
  ayuda Memo: mms help $?="comando ? ( vacio para ayuda general )"
  -
  fichero: var %a = $dir="Fichero de memos ?" usr\*.mms | if %a != $null { %mlee.fic = %a } | clear @memos | cargamemos
  abrir al recibir ( $group(#automemo) ): if $group(#automemo) != on .enable #automemo | else .disable #automemo
  limpiar: clear
  fijar posición: writeini ircap.ini ww memo $window(@memos).x $window(@memos).y $window(@memos).w $window(@memos).h @memos $window(@memos).font $window(@memos).fontsize
}

alias cargamemos {
  titlebar @Memos : $nopath(%mlee.fic)
  if $file(%mlee.fic).size == $Null return
  var %n = 1 | clear -l @memos
  :L1 | var %a = $read -l $+ %n %mlee.fic | if %a == $null { titlebar @Memos : $line(@memos,0,1) mensajes : $nopath(%mlee.fic) | return }
  aline -l @memos  $+ $strip($gettok(%a,2,32))  $+ $strip($gettok(%a,3-4,32))
  inc %n | goto L1
}

alias sacamemo {
  var %a = $read -l $+ $1 %mlee.fic
  if (--> isin $gettok(%a,2,32)) { echo @memos Enviado a $remove($gettok(%a,2,32),-->) en $gettok(%a,3-4,32) ( tu nick era: $gettok(%a,1,32) ) }
  else { echo @memos Mensaje de $gettok(%a,2,32) enviado en $gettok(%a,3-4,32)  ( tu nick era: $gettok(%a,1,32) ) }
  echo @memos $gettok(%a,5-,32)
  echo @memos -
}

alias borramemo {
  :L1
  if $sline(@memos,1) == $null { echo @memos Mensajes borrados | return }
  write -dl $+ $sline(@memos,1).ln %mlee.fic
  dline -l @memos $sline(@memos,1).ln
  goto L1
}

;EOF-dt
