Gossamer Forum
Home : Products : Links 2.0 : Customization :

Glennu, please help with linkdead2

Quote Reply
Glennu, please help with linkdead2
I have a slight problem with linkdead2, and I see Glennu that you also use a spaceports cgi-bin and seen as it is your script, that maybe, just maybe, you could help me.
I have uploaded linkdead2.cgi in ascii to the directory where add, jump, modify.cgi etc.. files are stored and chmoded it to 755. I have uploaded the templates to the template dir and made the relevant changes to site_html_templates.pl, but when hitting the report a deadlink, link it just goes to the spaceports 404 error screen.
Here is my linkdead2.cgi, for you to look at, although I cannot see anything wrong with it.

#!/usr/bin/perl
# -------------
# Links
# -------------
# Links Manager
#
# File: linkdead.cgi
# Notifies the webmaster of a deadlink
# Author: Glenn Utteridge
# Based on and designed to be used with
#Links 2 by: Alex Krohn
# Email: alex@gossamer-threads.com
# Web: http://www.gossamer-threads.com/
# Version: 2.0
#
# (c) 1998 Gossamer Threads Inc.
#
# This script is not freeware! Please read the README for full details
# on registration and terms of use.
# =====================================================================
#
#
# Setup:
# Make sure the require statement below points to the config file.
eval {
($0 =~ m,(.*)/[^/]+,) && unshift (@INC, "$1"); # Get the script location: UNIX /
($0 =~ m,(.*)\\[^\\]+,) && unshift (@INC, "$1"); # Get the script location: Windows \

require "/home2/kjgatter/public_html/links/cgi-bin/admin/links.cfg"; # Change this to full path to links.cfg if you have problems.
require "$db_lib_path/db_utils.pl";
require "$db_lib_path/links.def";
$build_use_templates ?
require "$db_lib_path/site_html_templates.pl" :
require "$db_lib_path/site_html.pl";
};
if ($@) {
print "Content-type: text/plain\n\n";
print "Error including libraries: $@\n";
print "Make sure they exist, permissions are set properly, and paths are set correctly.";
exit;
}

# ========================================================

eval { &main; }; # Trap any fatal errors so the program hopefully
if ($@) { &cgierr("fatal error: $@"); } # never produces that nasty 500 server error page.
exit; # There are only two exit calls in the script, here and in in &cgierr.

sub main {
#-------------------------------------------------------------------
# Main Routine

# Sends an email to the admin, letting him know that there is a dead link.

my %in = &parse_form();

# Check to make sure that there is an admin email address defined.
$db_admin_email or &cgierr("Admin Email Address Not Defined in config file!");

my $to = $db_admin_email;
my $from = $in{$db_cols[$db_contact_email]};
my $subject = "Deadlink ID number: $in{'ID'}\n";
my $msg = qq|
The following link is reported to be dead:

ID number: $in{'ID'}
Site title: $in{'Title'}
Site URL: $in{'URL'}
Category: $in{'Category'}
Comment: $in{'Comment'}

To check the link, please go to:
$db_cgi_url/jump.cgi?ID=$in{'ID'}

Or to delete the link please go to:
$db_cgi_url/$db_script_path/admin.cgi?db=links&ID=$in{'ID'}&Title=&URL=&Date=&Category=---&Description=&Contact+Name=&Contact+Email=&Hits=&isNew=---&isPopular=---&Rating=&Votes=&ReceiveMail=---&Graphic=&Gwidth=&Gheight=&Priority=---&Password=&MonthHits=&isMonthPopular=---&DateAdded=&keyword=&mh=10&sb=---&so=ascend&delete_form=Search&delete=$in{'ID'}



Sincerely,

Visitor.
|;

# Then mail it away!
require "$db_lib_path/Mailer.pm";
my $mailer = new Mailer ( { smtp => $db_smtp_server,
sendmail => $db_mail_path,
from => $from,
subject => $subject,
to => $to,
msg => $msg,
log => $db_mailer_log
} ) or return;
$mailer->send or return;
&site_html_deadlink_mail;
}



'Live Long & Prosper'
Quote Reply
Re: Glennu, please help with linkdead2 In reply to
Don,t worry Glennu I was so blind I didn't see that the link was asking for linkdead.cgi and not linkdead2.cgi as the script was called, I just changed the name and HEY PRESTO!
cheers mate!!
great script

'Live Long & Prosper'