% -*- slang -*- ----------------------------------------------------------
%
% written by Sławek Szczyrba; modified by tsca
%                             (last mod: Wed, 21 Mar 2001, 02:18:15 (0.2))
%
% To makro działa z slrnpullem
%                 i slrn-em w wersji co najmniej 0.9.6.4pl4b

 define forward_prhn ()
{
 variable 
     online    = 1,  % wpisz 1 dla online, 0 dla offline z slrn-pull'em
     serwer    = "news101.telia.com"; % tu wpisz nazwę serwera, z którego
                                      % korzystasz (tylko dla online)
% ----------------------------------------------------------------------

 variable mnie      = get_variable_value("realname");
 variable juzer     = get_variable_value("username");  
 variable dzie      = get_variable_value("hostname");
% variable hist      = extract_article_header("References");
 variable artykul   = article_as_string();
 variable newsgroup = current_newsgroup();
 variable autor     = extract_displayed_article_header("From");
 variable subject   = extract_displayed_article_header("Subject");
 variable msgid     = extract_displayed_article_header("Message-ID");
 variable nazwaplik = 
     sprintf("/var/spool/slrnpull/out.going/X%d\-1\-666\.%s",_time,juzer,2);
 if(stat_file(nazwaplik) == NULL) error("Nie mogę utworzyć pliku. Umieram...");
 variable plik      = fopen(nazwaplik,"w");
 variable spacje    = "                                                                                ";
 variable pozycja   = 0;

 fputs(sprintf("From: %s <%s@%s>\n",mnie,juzer,dzie,3),plik);
% fputs(sprintf("References: %s\n",hist),plik);
 fputs(sprintf("Subject: [%s] %s\n",newsgroup,subject,2),plik);
 fputs("Newsgroups: pl.rec.humor.najlepsze\n\n",plik);
 fputs(sprintf("[ From     : %s ]\n",substr(autor     + spacje,1,62)),plik);
 fputs(sprintf("[ Subject  : %s ]\n",substr(subject   + spacje,1,62)),plik);
 fputs(sprintf("[ Newsgroup: %s ]\n",substr(newsgroup + spacje,1,62)),plik);
 fputs(sprintf("[ Msg-ID   : %s ]\n",substr(msgid     + spacje,1,62)),plik);
 fputs("\n  ------- Start of forwarded message -------",plik);
 pozycja = string_match(artykul,"\n\n",1);
 fputs(substr(artykul,pozycja,strlen(artykul)-pozycja),plik);
 fputs("\n  -------- End of forwarded message --------\n\n",plik);
% fputs("Sławek\n-- \n",plik);
 () = fflush(plik);
 () = fclose(plik);
 () = system (sprintf("cat ~/.sig >> %s",nazwaplik));
 () = system (sprintf("jed %s",nazwaplik));
   
 if (1 == get_yes_no_cancel("Forward article to p.r.h.n ? ")) 
    {
     if (online) { () = system (sprintf("slrnpull --post -h %s",serwer)); }
     message ("Posted."); break;
    }
 else () = system (sprintf("rm -f %s",nazwaplik));
  message ("Posting cancelled");
 }

definekey ("forward_prhn", "%", "article");

    Source: geocities.com/tsca.geo/slang

               ( geocities.com/tsca.geo)