#!/usr/bin/perl
######################################################################
# RingWorld v1.7                                                     #
#--------------------------------------------------------------------#
# Copyright 1999-2001 TRXX Programming Group                         #
# Programming by Michael "TRXX" Sissine                              #
# All Rights Reserved                                                #
# http://www.trxx.co.uk                                              #
# trxx@trxx.co.uk                                                    #
######################################################################
# Variables Section
open (F, "<rworld.cfg");
@commands=<F>;
close (F);
foreach (@commands)
{
	eval $_;
}

($webring,$suser,$euser,$method)=split("&",$ENV{QUERY_STRING});

$webringname=$webring;
$fullrn=$webringname;
$fullrn=~s/_/ /g;
if (-e "$basepath/$webring.wrd")
{
open (F,"<$basepath/$webring.wrd");
flock(F,$LOCK_EX);
@data=<F>;
flock(F,$LOCK_UN);
close (F);
shift(@data);
foreach (@data)
{
	chop;
	($nm,$tit,$uurl,$desc,$iflg)=split("\t",$_);
	push(@ndata,"$nm\t$tit\t$uurl\t$desc") unless ($iflg);
}
@data=@ndata;
@ndata=();
$i=1;
while ($i<scalar(@data))
{
	($uname)=split("\t",$data[$i]);
	if ($suser eq $uname)
	{
		$sitem=$i;
	}
	if ($euser eq $uname)
	{
		$eitem=$i;
	}
	$i++;
}
$icount=scalar(@data);
$i=0;
while ($i<5)
{
	$eitem=$eitem+1;
	if ($eitem==scalar(@data))
	{
		$eitem=0;
	}
	$sitem=$sitem-1;
	if ($sitem<0)
	{
		$sitem=scalar(@data)-1;
	}
	push (@next,$eitem);
	unshift (@prev,$sitem);
	$i++;
}
if ($method eq "next")
{
	foreach(@next)
	{
		($username,$title,$uurl,$desc)=split("\t",$data[$_]);
		push(@result,"<li><a href=\"$uurl\"><font face=\"Arial\" size=\"2\">$title</font></a><br><font face=\"Arial\" size=\"2\">$desc</font></li>\n");
	}
	($suser)=split("\t",$data[$next[0]]);
	($euser)=split("\t",$data[$next[4]]);
}
if ($method eq "prev")
{
	foreach(@prev)
	{
		($username,$title,$uurl,$desc)=split("\t",$data[$_]);
		push(@result,"<li><a href=\"$uurl\"><font face=\"Arial\" size=\"2\">$title</font></a><br><font face=\"Arial\" size=\"2\">$desc</font></li>\n");
	}
	($suser)=split("\t",$data[$prev[0]]);
	($euser)=split("\t",$data[$prev[4]]);
}
push(@footer,"<table width=\"100%\" border=0><tr>");
push(@footer,"<td width=\"15%\" align=\"center\"><a href=\"$cgi/rworldfs.cgi?$webring&$suser&$euser&prev\"><img src=\"$ringworld/images/rwprev.gif\" border=0></a></td>");
push(@footer,"<td width=\"70%\" align=\"center\"><img src=\"$ringworld/images/rwline.gif\"></td>");
push(@footer,"<td width=\"15%\" align=\"center\"><a href=\"$cgi/rworldfs.cgi?$webring&$suser&$euser&next\"><img src=\"$ringworld/images/rwnext.gif\" border=0></a></td>");
push(@footer,"</tr></table>");
}
else
{
	push(@result,"<li>Sorry webring <b>$fullrn</b> is not longer exist</li>");
	push(@footer,"<table width=\"100%\" border=0><tr><td width=\"100%\" align=\"center\"><img src=\"$ringworld/images/rwline.gif\"></td></tr></table>");
}

open (F,"<$rwpath/template/sitelist.tpl");
@html=<F>;
close (F);
$html=join("\n",@html);
print "HTTP/1.0 200 Found\n" if ($sysid eq "Windows");
print "content-type: text/html\n\n";
eval $html;
