[18279] in Perl-Users-Digest

home help back first fref pref prev next nref lref last post

Perl-Users Digest, Issue: 447 Volume: 10

daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Thu Mar 8 18:10:56 2001

Date: Thu, 8 Mar 2001 15:10:19 -0800 (PST)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)
Message-Id: <984093019-v10-i447@ruby.oce.orst.edu>
Content-Type: text

Perl-Users Digest           Thu, 8 Mar 2001     Volume: 10 Number: 447

Today's topics:
        Net::SMTP modules (Gary Udstrand)
    Re: Net::SMTP modules (Malcolm Dew-Jones)
    Re: Net::SMTP modules <Jonathan.L.Ericson@jpl.nasa.gov>
        number of characters (length) <plusc@freeserve.net>
    Re: pack double-network-order <bart.lateur@skynet.be>
        PERL PROGRAMERS OFFERING (FROM ITALY) <fedebari@supereva.it>
        PerlQt and PerlKDE dead? -> let's continue development! (=?iso-8859-1?Q?J=F6rg?= Ziefle)
    Re: print abstract ('blah'); # subroutine or file handl (Ilya Zakharevich)
        Programmer with vision required <fsrock@career-pro.com>
    Re: Quick script question - I'm lost (Abigail)
    Re: Quick script question - I'm lost <rrauer@mitre.org>
    Re: Regexp matching between <tags> content </tags> <tag@gmx.de>
        strange problem - use lib "E:/...." <wo_ah_ho@yahoo.com>
    Re: Tk based alarm clock <tom.wilkason@home.com>
        Why doesn't glob take a list as argument? (LMC)
        Why glob doesn't take a list? (LMC)
    Re: Why glob doesn't take a list? (Randal L. Schwartz)
    Re: Why glob doesn't take a list? (LMC)
    Re: Why glob doesn't take a list? (Abigail)
    Re: Why glob doesn't take a list? (Ilya Zakharevich)
        Digest Administrivia (Last modified: 16 Sep 99) (Perl-Users-Digest Admin)

----------------------------------------------------------------------

Date: 8 Mar 2001 16:16:49 EST
From: gbu@nospam.completeis.com (Gary Udstrand)
Subject: Net::SMTP modules
Message-Id: <3aa7f6c1$1@excalibur.gbmtech.net>


    	I have written a small perl utility to mail messages via sendmail.  
The initial development was done in Windows 2000 and works just fine, 
however when I went to deploy it on a Solaris box I received the following 
message :

    	Can't locate Net/SMTP.pm in @INC

    	No problem I thought, just download and install the needed modules. I 
download and then attempted to install the module but it is indicating (via 
the 'perl Makefile.PL' process) that it is already installed.  This is very 
odd, if it is installed how come my perl script cannot find the module?

Thanks
-Gary


------------------------------

Date: 8 Mar 2001 14:38:48 -0800
From: yf110@vtn1.victoria.tc.ca (Malcolm Dew-Jones)
Subject: Re: Net::SMTP modules
Message-Id: <3aa809f8@news.victoria.tc.ca>

Gary Udstrand (gbu@nospam.completeis.com) wrote:

:     	I have written a small perl utility to mail messages via sendmail.  
: The initial development was done in Windows 2000 and works just fine, 
: however when I went to deploy it on a Solaris box I received the following 
: message :

:     	Can't locate Net/SMTP.pm in @INC

:     	No problem I thought, just download and install the needed modules. I 
: download and then attempted to install the module but it is indicating (via 
: the 'perl Makefile.PL' process) that it is already installed.  This is very 
: odd, if it is installed how come my perl script cannot find the module?

Perhaps @INC does not include the required directory in its list of
directories (but the files are on disk where the installer thinks they
should be).



------------------------------

Date: 08 Mar 2001 22:22:23 +0000
From: Jon Ericson <Jonathan.L.Ericson@jpl.nasa.gov>
Subject: Re: Net::SMTP modules
Message-Id: <868zmfj3z4.fsf@jon_ericson.jpl.nasa.gov>

gbu@nospam.completeis.com (Gary Udstrand) writes:

>     	Can't locate Net/SMTP.pm in @INC
> 
>     	No problem I thought, just download and install the needed modules. I 
> download and then attempted to install the module but it is indicating (via 
> the 'perl Makefile.PL' process) that it is already installed.  This is very 
> odd, if it is installed how come my perl script cannot find the module?

Because the directory in which Net/SMTP.pm resides isn't in @INC.
Read "perldoc lib".  

Jon


------------------------------

Date: Thu, 8 Mar 2001 22:58:06 -0000
From: "francesca" <plusc@freeserve.net>
Subject: number of characters (length)
Message-Id: <9892rg$70o$1@news7.svr.pol.co.uk>

while using this statement below to match words
what do i need to add to match only the words >= 6 characters

if ($matching=~ /\b(\w+)\b/)

or how could i reduce the length to 6 after the matching ?
removing the characters form the end only

Thanks




------------------------------

Date: Thu, 08 Mar 2001 19:37:39 GMT
From: Bart Lateur <bart.lateur@skynet.be>
Subject: Re: pack double-network-order
Message-Id: <osnfat430vhqgf4bc8pl8jjama586391rs@4ax.com>

Daniel Heiserer wrote:

>I looked at the template list for pack and I didn't find
>how to pack a double using the network-order , which is IEEE-be.

I think floating point is native format only. What you can do, is
reverse() on the packed string, if your native format isn't big-endian.

-- 
	Bart.


------------------------------

Date: Thu, 8 Mar 2001 20:48:21 +0100
From: "Federico Bari" <fedebari@supereva.it>
Subject: PERL PROGRAMERS OFFERING (FROM ITALY)
Message-Id: <988o1v$fn3$1@pegasus.tiscalinet.it>

We offer our experience as Perl, CGI, HTML programers for the realization of
little and middle scripts or modifications, upgrades of Perl scripts already
existing; CGI interfaces between HTML and Perl scripts, little data bases in
Perl lenguage. Graphics. Contact:

Federico Bari: fedebari@supereva.it
Massimo Simioli: maxwsurf@inwind.it






------------------------------

Date: 8 Mar 2001 22:13:32 GMT
From: gt4556a@acmey.gatech.edu (=?iso-8859-1?Q?J=F6rg?= Ziefle)
Subject: PerlQt and PerlKDE dead? -> let's continue development!
Message-Id: <slrn9ag10c.48j.gt4556a@acmey.gatech.edu>


I want to switch from Tk to Qt using Ashley Winter's PerlQt module.
However, as the last version lies about a year back, I am wondering if
PerlQt is still being developed.  The same is valid for the PerlKDE
module by the same author (the last timestamp is dated from 05/02/2000).

After not getting any respone from Ashley after two emails, I want to
ask for help here:

* Does anybody know what's the status of PerlQt/PerlKDE?  How can Ashley
* be reached?  Is anyone interested in a continuing development of the
* two modules?
If so, I would like to offer my contribution.

Especially, I am looking for the development tools Ashley used and
offered to send to interested people of the KDE mailinglist about two
years ago to develop the XS files from the C++ headers.

Any hint or help will be greatly appreciated.  I strongly feel that Perl
needs a strong support for both the modern and popular Qt widget set as
well as KDE.

Jörg


------------------------------

Date: 8 Mar 2001 20:08:55 GMT
From: ilya@math.ohio-state.edu (Ilya Zakharevich)
Subject: Re: print abstract ('blah'); # subroutine or file handle?
Message-Id: <988osn$mj3$1@charm.magnus.acs.ohio-state.edu>

[A complimentary Cc of this posting was sent to Alexander Farber (EED)
<eedalf@eed.ericsson.se>],
who wrote in article <3AA771A3.F4EFE866@eed.ericsson.se>:
> > >  print abstract ('blah');
> > 
> > The problem occurs because at this point in the parsing, perl
> > does not know of any subroutine named 'abstract'. If it did
> > know that you would be defining such a subroutine, then it
> > would do the Right Thing.
> 
> But I also haven't opened any file handle called 
> "abstract". So the perl-parser is not consistent here.

Why do you expect it to be consistent?  Perl parsing is a hodge-podge of
(mostly undocumented) hacks designed to make it DWIM in a limited
pool of particular cases.  One step right or one step left - and you
are in a no man's land.

DWIM was a very bold enterprise.  As people who are fluent in Perl
know, it failed spectacularly...

Ilya


------------------------------

Date: Thu, 8 Mar 2001 16:41:05 -0500
From: "Fred Srock" <fsrock@career-pro.com>
Subject: Programmer with vision required
Message-Id: <988udi$fkt$1@news.igs.net>

From the desk of;
Fred Srock, VPP, 3STEP Marketing Group
1 804 323 0120
1 613 962-4531 x236 (through March 5)

We are currently searching for an individual who
possesses confidence in their programming and web
development skills, but more importantly someone who
has the desire to leverage their time and maximize
their income by using the programming knowledge,
skills and abilities they possess.

If you believe you have the following career attributes,
we want to talk to you:

** A desire to secure your financial future through infinite
residuals on the money made by the programs you write.

** The ability to commit yourself to providing your technical
expertise, time and vision to existing and developing programs
with a dynamic, successful internet marketing group who can
maximize the distribution and revenue of the applications you
write in support of our marketing expertise.

** The willingness to devote unmitigated and exclusive time to
helping us build toward a multi-million dollar sell-out in 5-7 years.


WHAT WE REQUIRE:
===================
** 2+ years programming experience with PERL, MySQL, Java, PHP,
HTML and/or other web development tools.

** Immediate debugging and completion (in support of existing sales)
of one program and full development of three more comprehensive
programs by the end of 2001.

** Exclusive access to your time following completion of your
current commitments.

** The ability to solve problems as they occur immediately with
extreme defference to our organization and client base.

** The ability to assist in developing a strong support staff
capable of providing top quality technical support, installations
and contract maintenance for high volume software sales.


WHAT WE OFFER:
================

Negotiable Monthly Minimum:
  - 10% of Net Revenue on all sales of software you
    develop for us to our specifications:

  - 10% of Net Revenue of Participant Purchases

 [ * Above revenues based on sales of software you develop
and participant purchases in online marketing programs we
operate within our corporate structure.]

  -  Customer Software installations: $240 & up, each
  -  Customer monthly service contract guarantees
  - Top residual commission placement in all our coporate
    operated program networks.

Your earnings expectations for this position should be in excess
of $100,000 the first year and increase significantly each year
thereafter.

If you're ready to earn what you're worth, please respond to vpp@3step.com
with your telephone number and I'll be happy to call you and discuss this
position further.





------------------------------

Date: 8 Mar 2001 19:14:19 GMT
From: abigail@foad.org (Abigail)
Subject: Re: Quick script question - I'm lost
Message-Id: <slrn9afmgb.7l3.abigail@tsathoggua.rlyeh.net>

Ron Auer (rrauer@mitre.org) wrote on MMDCCXLVI September MCMXCIII in
<URL:news:3AA7D271.93E103EF@mitre.org>:
`' I am sorting through thousands of records.
`' 
`' The record is something like:
`' 
`' day month year time host seq num ip msgtype list type
`' 
`' Now, I find the number of times an ip apprears in all the records so I
`' do:
`' 
`' 	$hits{$ip}++
`' And the output file looks like this:
`' 
`' 	124.156.23.01      15,349
`' 	123.155.22.02       3,444
`' 
`' This will give me a list of all ips and the number of times the ip was
`' in the records.
`' 
`' Now, I need to add to the number of hits, the host associated with the
`' ip in the record where the ip was counted so the output file would look
`' like:
`' 
`' 	124.156.23.01      15,349  host1, host2, host3, host4, host5
`' 
`' I only need to list a host name once.
`' 
`' Any ideas on how to accomplish this efficiently (processing time is a
`' concern)?


Instead of doing $hits {$ip} ++, do 

    $hits {$ip} -> {$host} ++;

And print things as:

    while (my ($ip, $hosts) = each %hits) {
	local $" = ", ";
	my @hosts = keys %$hosts;
	my $sum;
	map {$sum += $_} @{$hosts}{@hosts};
	print "$ip    $sum  @hosts\n";
    }



Abigail
-- 
perl -wle'print"Êõóô áîïôèåò Ðåòì Èáãëåò"^"\x80"x24'


------------------------------

Date: Thu, 08 Mar 2001 15:52:47 -0700
From: Ron Auer <rrauer@mitre.org>
Subject: Re: Quick script question - I'm lost
Message-Id: <3AA80D3F.3BD26F38@mitre.org>

Abigail,

	Thanks for the rapid reply.

	I am having problems making this work.

	I enter $hits{$ip} -> {$host}++
	=

	But, then directly underneath to check I enter:

	print "$hits{$ip} \n";
	=

	And I get HASH(0x>.......)

	And, when the print loop is done, all that prints is the ip.

	I have looked over the code I entered, and I don't see a typo.  Since I
am not real good with hashes, I would appreciate any explanation as to
what I may be doing wring.  Thank you very much for your time.

	Ron

Abigail wrote:
> =

> Ron Auer (rrauer@mitre.org) wrote on MMDCCXLVI September MCMXCIII in
> <URL:news:3AA7D271.93E103EF@mitre.org>:
> `' I am sorting through thousands of records.
> `'
> `' The record is something like:
> `'
> `' day month year time host seq num ip msgtype list type
> `'
> `' Now, I find the number of times an ip apprears in all the records so=
 I
> `' do:
> `'
> `'      $hits{$ip}++
> `' And the output file looks like this:
> `'
> `'      124.156.23.01      15,349
> `'      123.155.22.02       3,444
> `'
> `' This will give me a list of all ips and the number of times the ip w=
as
> `' in the records.
> `'
> `' Now, I need to add to the number of hits, the host associated with t=
he
> `' ip in the record where the ip was counted so the output file would l=
ook
> `' like:
> `'
> `'      124.156.23.01      15,349  host1, host2, host3, host4, host5
> `'
> `' I only need to list a host name once.
> `'
> `' Any ideas on how to accomplish this efficiently (processing time is =
a
> `' concern)?
> =

> Instead of doing $hits {$ip} ++, do
> =

>     $hits {$ip} -> {$host} ++;
> =

> And print things as:
> =

>     while (my ($ip, $hosts) =3D each %hits) {
>         local $" =3D ", ";
>         my @hosts =3D keys %$hosts;
>         my $sum;
>         map {$sum +=3D $_} @{$hosts}{@hosts};
>         print "$ip    $sum  @hosts\n";
>     }
> =

> Abigail
> --
> perl -wle'print"=CA=F5=F3=F4 =E1=EE=EF=F4=E8=E5=F2 =D0=E5=F2=EC =C8=E1=E3=
=EB=E5=F2"^"\x80"x24'


------------------------------

Date: Thu, 08 Mar 2001 23:27:59 +0100
From: Toni <tag@gmx.de>
Subject: Re: Regexp matching between <tags> content </tags>
Message-Id: <3AA8076F.2360FB08@gmx.de>

> sub match_between_tags {

Hey, this one seems very good to me.
Thank you (and all the others that replied) very much.

Toni.


------------------------------

Date: Thu, 8 Mar 2001 13:55:48 -0500
From: "Jason Wong" <wo_ah_ho@yahoo.com>
Subject: strange problem - use lib "E:/...."
Message-Id: <988kln$iig$1@bcrkh13.ca.nortel.com>

I'm hosting cgi scripts using IIS and something strange happens when I
copied the entire lib onto the corresponding IIS folder and add the line:
use lib "E:/Inetpub/wwwroot/wsc/eng/bmcwest/cgi-bin/site/lib";

when I try to run the script on a browser, the browser treats it as a
download instead of a cgi script. (The download dialog pops up)
however when I try to take this line away the script works fine.

#!/usr/bin/perl

print "Content-type: text/html\n\n";

print "this is a test";

use lib "E:/Inetpub/wwwroot/wsc/eng/bmcwest/cgi-bin/site/lib";
use DBI;
 .....

what goes wrong?

Jason Wong




------------------------------

Date: Thu, 8 Mar 2001 14:14:59 -0500
From: "Tom Wilkason" <tom.wilkason@home.com>
Subject: Re: Tk based alarm clock
Message-Id: <ZTQp6.17$qf5.401@dfw-service2.ext.raytheon.com>

"* Tong *" <sun_tong_001@yahoo.com> wrote in message
news:sa8ofvcxhiv.fsf@sun_tong_001.personal.yahoo.com...
| Hi,
|
| I'm planing to write a Tk based alarm clock, and make it open source
| tool for the public. So the first thing I have to make sure is that
| there's not such a thing out there. My research is enclosed at the
| end of this email.
|
| Do you know / heard of such program or anything similar? I'd like to
| hear your comment. Thanks.
|
| Here is what I've found and the reason that I don't like
| personally:
|
| xalarm clock: C based.
| alarm clock in tkgoodstuff: too simple and not stand alone.
|
| Beside, a search in all news in comp.lang.* on alarm/Tk turns out
| nothing....
|
| Thanks for your comment.
|
| FYI, when I say alarm clock, I mean something you can set a time
| with, and when the time goes off, it pop up and window with the
| message and sound a alarm sound... When I say Tk based, I mean
| either Tcl/Tk or Perl/Tk. I'm going to write it in Perl/Tk though.
|

Tong,
I think you will find this to be an easy (and fun) task. If you are using Tcl/Tk, you
can look at http://mini.net/cgi-bin/wikit/1011.html for a sample analog clock (of
course digital is trivial). Iwidgets also as an analog clock widget (home page now at
http://sourceforge.net/projects/incrtcl/). Implementing the alarm functions can be
done with after loops quite easily. If you want to have some fun and use audio as an
alarm, take a look at the snack sound extension (it is cross platform) at
http://www.speech.kth.se/snack/.

Tom Wilkason



------------------------------

Date: Thu, 08 Mar 2001 16:41:55 -0500
From: "Antoine Beaupre (LMC)" <lmcabea@lmc.ericsson.se>
Subject: Why doesn't glob take a list as argument?
Message-Id: <3AA7FCA3.603DA6C@lmc.ericsson.se>

Wow. That's horrible syntax. 

Let me rephrase....

voilà.

A.

"Antoine Beaupre (LMC)" wrote:
> 
> Hi!
> 
> I was just wondering why glob() takes only a $scalar instead of using a
> full @array?
> 
> You know, I always end up making something like:
> 
> sub sglob {
>   my (@glob) = ();
>   push (@glob, glob($_)) foreach(@_);
>   return @glob;
> }
> 
> :)
> 
> A.
> 
> --
> La sémantique est la gravité de l'abstraction.

--
La sémantique est la gravité de l'abstraction.


------------------------------

Date: Thu, 08 Mar 2001 16:40:36 -0500
From: "Antoine Beaupre (LMC)" <lmcabea@lmc.ericsson.se>
Subject: Why glob doesn't take a list?
Message-Id: <3AA7FC54.70FB471C@lmc.ericsson.se>

Hi!

I was just wondering why glob() takes only a $scalar instead of using a
full @array?

You know, I always end up making something like:

sub sglob {
  my (@glob) = ();
  push (@glob, glob($_)) foreach(@_);
  return @glob;
}

:)

A.
  
--
La sémantique est la gravité de l'abstraction.


------------------------------

Date: 08 Mar 2001 13:52:57 -0800
From: merlyn@stonehenge.com (Randal L. Schwartz)
Subject: Re: Why glob doesn't take a list?
Message-Id: <m1zoewrkqu.fsf@halfdome.holdit.com>

>>>>> "Antoine" == Antoine Beaupre (LMC) <lmcabea@lmc.ericsson.se> writes:

Antoine> Hi!
Antoine> I was just wondering why glob() takes only a $scalar instead of using a
Antoine> full @array?

Antoine> You know, I always end up making something like:

Antoine> sub sglob {
Antoine>   my (@glob) = ();
Antoine>   push (@glob, glob($_)) foreach(@_);
Antoine>   return @glob;
Antoine> }

Antoine> :)

Learn the map, luke.

my @result = map glob $_, @source;

-- 
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/>
Perl/Unix/security consulting, Technical writing, Comedy, etc. etc.
See PerlTraining.Stonehenge.com for onsite and open-enrollment Perl training!


------------------------------

Date: Thu, 08 Mar 2001 16:57:12 -0500
From: "Antoine Beaupre (LMC)" <lmcabea@lmc.ericsson.se>
Subject: Re: Why glob doesn't take a list?
Message-Id: <3AA80038.5CD3947@lmc.ericsson.se>

Doh! :)

Much better... 

"Randal L. Schwartz" wrote:
> 
> >>>>> "Antoine" == Antoine Beaupre (LMC) <lmcabea@lmc.ericsson.se> writes:
> 
> Antoine> Hi!
> Antoine> I was just wondering why glob() takes only a $scalar instead of using a
> Antoine> full @array?
> 
> Antoine> You know, I always end up making something like:
> 
> Antoine> sub sglob {
> Antoine>   my (@glob) = ();
> Antoine>   push (@glob, glob($_)) foreach(@_);
> Antoine>   return @glob;
> Antoine> }
> 
> Antoine> :)
> 
> Learn the map, luke.
> 
> my @result = map glob $_, @source;
> 
> --
> Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
> <merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/>
> Perl/Unix/security consulting, Technical writing, Comedy, etc. etc.
> See PerlTraining.Stonehenge.com for onsite and open-enrollment Perl training!

--
La sémantique est la gravité de l'abstraction.


------------------------------

Date: 8 Mar 2001 22:22:28 GMT
From: abigail@foad.org (Abigail)
Subject: Re: Why glob doesn't take a list?
Message-Id: <slrn9ag1h4.ic5.abigail@tsathoggua.rlyeh.net>

Randal L. Schwartz (merlyn@stonehenge.com) wrote on MMDCCXLVI September
MCMXCIII in <URL:news:m1zoewrkqu.fsf@halfdome.holdit.com>:
** 
** Learn the map, luke.
** 
** my @result = map glob $_, @source;


Which can be written without $_ as well:

   my @result = map {glob} @source;

(or with the expression in stead of the block variant)

Of course,

   my @result = <@source>;

works too, provided $" contains just whitespace, and there are no
unbalanced quotes.


Abigail
-- 
perl -we '$@="\145\143\150\157\040\042\112\165\163\164\040\141\156\157\164".
             "\150\145\162\040\120\145\162\154\040\110\141\143\153\145\162".
             "\042\040\076\040\057\144\145\166\057\164\164\171";`$@`'


------------------------------

Date: 8 Mar 2001 22:47:52 GMT
From: ilya@math.ohio-state.edu (Ilya Zakharevich)
Subject: Re: Why glob doesn't take a list?
Message-Id: <98926o$prp$1@charm.magnus.acs.ohio-state.edu>

[A complimentary Cc of this posting was sent to Randal L. Schwartz
<merlyn@stonehenge.com>],
who wrote in article <m1zoewrkqu.fsf@halfdome.holdit.com>:
> Learn the map, luke.
> 
> my @result = map glob $_, @source;

you mean

  @result = map glob, @source;

of course.  ;-)

Ilya


------------------------------

Date: 16 Sep 99 21:33:47 GMT (Last modified)
From: Perl-Users-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin) 
Subject: Digest Administrivia (Last modified: 16 Sep 99)
Message-Id: <null>


Administrivia:

The Perl-Users Digest is a retransmission of the USENET newsgroup
comp.lang.perl.misc.  For subscription or unsubscription requests, send
the single line:

	subscribe perl-users
or:
	unsubscribe perl-users

to almanac@ruby.oce.orst.edu.  

| NOTE: The mail to news gateway, and thus the ability to submit articles
| through this service to the newsgroup, has been removed. I do not have
| time to individually vet each article to make sure that someone isn't
| abusing the service, and I no longer have any desire to waste my time
| dealing with the campus admins when some fool complains to them about an
| article that has come through the gateway instead of complaining
| to the source.

To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.

To request back copies (available for a week or so), send your request
to almanac@ruby.oce.orst.edu with the command "send perl-users x.y",
where x is the volume number and y is the issue number.

For other requests pertaining to the digest, send mail to
perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
sending perl questions to the -request address, I don't have time to
answer them even if I did know the answer.


------------------------------
End of Perl-Users Digest V10 Issue 447
**************************************


home help back first fref pref prev next nref lref last post