Error opening Email Lists file (./.lists_mixedcase); Aborting.
\n" ); exit( 0 ); } $Loop_Count = 0; while( $Email_Lists_Handle && !feof( $Email_Lists_Handle )) { $Email_Lists = fgets( $Email_Lists_Handle ); if( $Loop_Count++ > 1000 ) { printf( "Error reading Email Lists; Stuck in loop; Aborting.
\n" ); exit(0); } if( $Email_Lists[0] == "#" || strlen( $Email_Lists ) < 10 ) continue; else break; } $Email_Lists_Mixed_Case = explode( " ", $Email_Lists ); $List_Count = count( $Email_Lists_Mixed_Case ); for( $a = 0; $a < $List_Count; $a++ ) $Email_Lists_Mixed_Case[ $a ] = str_replace( "\n", "", $Email_Lists_Mixed_Case[ $a ] ); for( $a = 0; $a < $List_Count; $a++ ) $Email_Lists_Mixed_Case_Clean[ $a ] = str_replace( "-List", "", $Email_Lists_Mixed_Case[ $a ] ); for( $a = 0; $a < $List_Count; $a++ ) $Email_Lists_Lower_Case[ $a ] = strtolower( $Email_Lists_Mixed_Case[ $a ] ); for( $a = 0; $a < $List_Count; $a++ ) $Email_Lists_Upper_Case[ $a ] = strtoupper( $Email_Lists_Mixed_Case[ $a ] ); fclose( $Email_Lists_Handle ); //// Parse Command line args. Verify proper construction. $Valid_Request = 1; // Style == 37461 == Contributor // Style == 82701 == NON-Contributor $Style = $_GET[ Style ]; if( $Style != $Contrib_Style && $Style != $NonContrib_Style ) { $Valid_Request = 0; } if( $Style == $Contrib_Style ) $Contrib = 1; if( $Style == $NonContrib_Style ) $Contrib = 0; $View = strtolower( $_GET[ View ] ); if( $View != "txt" && $View != "html" ) { $Valid_Request = 0; } $Chapter = strtolower( $_GET[ Chapter ] ); if( strlen( $Chapter ) != 10 || (!strstr( $Chapter, "-" )) || (strstr( $Chapter, "." )) || (strstr( $Chapter, "/" || (strstr( $Chapter, "\\" )) ))) { $Valid_Request = 0; } $Archive = $_GET[ Archive ]; if( (strstr( $Archive, "-" )) || (strstr( $Archive, "." )) || (strstr( $Archive, "/" )) || (strstr( $Archive, "\\" ))) { $Valid_Request = 0; } $Valid_Archive = 0; $List_Index=0; foreach( $Email_Lists_Mixed_Case_Clean as $List ) { if( $List == $Archive ) { $Valid_Archive = 1; break; } $List_Index++; } if( !$Valid_Request || !$Valid_Archive ) { echo "Invalid Request
\n"; exit(); } $ArchiveDescriptor = fopen( "/usr/home/httpd/htdocs/digest/$Email_Lists_Lower_Case[$List_Index]/Digest.$Email_Lists_Mixed_Case_Clean[$List_Index]-List.$Chapter.$View", "r" ); if( !$ArchiveDescriptor ) { echo "Can't open archive; aborting!
\n"; exit(); } if( $View == "txt" ) { echo "
\n";

	$In_Contrib_Message = 0;
	for( $line = fgets( $ArchiveDescriptor ); !feof( $ArchiveDescriptor ); $line = fgets( $ArchiveDescriptor ) )
		{
		if( $Contrib && ereg( "                     Total Messages Posted ... ../../..: .", $line ) )
			{
			list( $HeaderString, $NumberOfMessages ) = explode( ":", $line );
			$NumberOfMessages = str_replace( " ", "", $NumberOfMessages );	
			$NumberOfMessages = $NumberOfMessages - 1;
			echo "$HeaderString: $NumberOfMessages\n";
			continue;
			}
		else if( $Contrib && ereg( "     0\. ..:.. .M - ", $line ) ) // Contrib Index Line Found; Skip.
			{
			continue;
			}
		else if( $Contrib && ereg( "________________________________  Message 0  _____________________________________", $line ) )
			{
			$In_Contrib_Message = 1;
			}
		else if( $Contrib && ereg( "________________________________  Message 1  _____________________________________", $line ) )
			{
			$In_Contrib_Message = 0;
			}

		if( !$In_Contrib_Message ) 
			{
			echo "$line";
			}
		}

	echo "
\n"; } else // $View == "html" { $In_Contrib_Message = 0; for( $line = fgets( $ArchiveDescriptor ); !feof( $ArchiveDescriptor ); $line = fgets( $ArchiveDescriptor ) ) { if( $Contrib && ereg( "

Total Messages Posted: .", $line ) ) { list( $HeaderString, $NumberOfMessages ) = explode( ":", $line ); $NumberOfMessages = str_replace( "

", "", $NumberOfMessages ); $NumberOfMessages = $NumberOfMessages - 1; echo "$HeaderString: $NumberOfMessages\n"; continue; } else if( $Contrib && ereg( " 0. ..:.. .M -


Message 0


", $line ) ) { $In_Contrib_Message = 1; echo "
\n"; } else if( $Contrib && ereg( "


Message 1


", $line ) ) { $In_Contrib_Message = 0; } if( !$In_Contrib_Message ) { echo "$line"; } } } ?>