#!/usr/bin/perl # Bookmarks: 0,3059 $use_absolute_reference = "no"; $urladdress = "http://angelfire.com/musicals/studio2m/guestbook.cgi"; $guestbookroot = "$ENV{'HTTP_HOST'}"; if ($use_absolute_reference eq "no") { $guesturl = "$ENV{'SCRIPT_NAME'}"; } else { $guesturl = $urladdress; } $allurl = "$guestbookroot" . "$guesturl "; $| = 1; $demo="off"; $previewline = "
| ~;
&user_image if $user_image eq "yes";
&title if $use_title eq "on";
&user_html if $use_user_html eq "yes";
&menu;
&no_of_messages_display if $show_no_of_messages eq "yes";
$count = 1;
$grouped = 0;
$no_displayed = int($no_displayed); # fix any funny numbers entered by user
# fix any numbers entered less than one
if ($no_displayed <1)
{
$no_displayed = 1;
}
$start_number = $FORM{'start_number'};
$new_start_number = ($start_number + $no_displayed);
$old_start_number = ($start_number - $no_displayed);
$startplus = $start_number +1;
# print qq~ ~;
unless ($old_start_number < 0)
{
print qq~ $left_bracket$TXT_previous$right_bracket ~;
}
&show_number_menu unless ($number_of_messages <($no_displayed+1));
unless ($new_start_number > ($number_of_messages -1 ))
{
print qq~ $left_bracket$TXT_next$right_bracket ~; } if (($new_start_number > ($number_of_messages -1 )) && ($number_of_messages >($no_displayed))) { print qq~ ~; } print qq~ ~; if ($new_start_number < $number_of_messages) { print qq~ $TXT_viewing_messages$startplus$TXT_to$new_start_number$TXT_after_last_number ~; } else { if ($startplus == $number_of_messages) { print qq~ $TXT_viewing_message$startplus$TXT_after_last_number1 ~; } else { print qq~ $TXT_viewing_messages$startplus$TXT_to$number_of_messages$TXT_after_last_number ~; } } foreach $row (@data_ordered) { @fields = split (/\|/, $row); $grouped++; if (($grouped > ($start_number)) && ($grouped < ($start_number + $no_displayed + 1))) { &main_table_results; } # end if number is right } # end for each row # print qq~ ~; if ($use_hr_image eq "yes") { print " "; } unless ($old_start_number < 0) { print qq~ $left_bracket$TXT_previous$right_bracket ~; } &show_number_menu unless ($number_of_messages <($no_displayed+1)); unless ($new_start_number > ($number_of_messages -1 )) { print qq~ $left_bracket$TXT_next$right_bracket ~; } &search_form; &user_html_footer if $use_user_html_footer eq "yes"; print qq~ ~; print qq~ |
| ~; &user_image if $user_image eq "yes"; &title if $use_title eq "on"; &user_html if $use_user_html eq "yes"; &menu; if ($table_width =~ /\%/) { $table_width_per = $table_width; $table_width_per =~ s/\%//gi; $table_width_per = $table_width_per/3; $table_width_per = ($table_width_per . "%"); $col1 = $table_width_per; } else { $col1 = ($table_width/3); # $col2 = ($table_width - $col1); } if ($use_preview eq "yes") { $whatever = "preview"; } else { $whatever = "no_preview"; } ######### | |
"; print TEMP "Once you have browsed the features in the public part of the guestbook, you will want to access the Active Guestbook Control Panel which allows you to manage your guestbook. To access the Control Panel, you will normally need to use a password. The default password is the word active in lower case but you can change it to anything you like."; print TEMP "
The first thing you should do once you visit the Control Panel is to add the page to your Bookmarks/Favorites so that you can easily get there in the future.
You can now go to the Control Panel by clicking here.
"; print TEMP "You will of course want to delete all these sample messages once you get things set up the way you want.|$time_in_seconds|anthony\@active-scripts.net|active-scripts.net|||$now|$revdate||www.active-scripts.net||||||||||||||||||||\n"; close(TEMP); chmod(0777, "$guestbook_data_name"); &finish_start; exit; } } # end startup sub finish_start { &content; print qq~
Standard preferences updated. ~; &inter_footer; } ########## open prefs sub open_prefs { open(FILE,"$prefs_name"); @LINES =
Return to Guestbook | Return to Control Panel To remove the Active Scripts image from the top of your guestbook, move down to the
Restore FACTORY defaults | Restore USER defaults
Save these settings as USER defaults
(If you have made any changes, you first need to UPDATE using the button at the bottom.)
~;
if ($active_header eq "on")
{
print qq~
Images/titles section below and select No for "Show Active-Scripts header".
~;
}
print qq~
~;
} # end view_prefs
###############
sub view_to_edit
{
&seek_cook;
open(USER_FILE,"$guestbook_data_name") || &oops('$guestbook_data_name');
@data =
";
$count = 1;
$grouped = 0;
#$no_displayed = 5;
$start_number = $FORM{'start_number'};
$new_start_number = ($start_number + $no_displayed);
$old_start_number = ($start_number - $no_displayed);
$startplus = $start_number +1;
$number_of_messages = @datalist;
unless ($old_start_number < 0)
{
print qq~ [Previous] ~;
}
&show_edit_number_menu unless ($number_of_messages <($no_displayed+1));
#################### show number menu
unless ($new_start_number > ($number_of_messages -1 ))
{
print qq~ [Next]
~;
}
if (($new_start_number > ($number_of_messages -1 )) && ($number_of_messages >($no_displayed)))
{
print qq~
~;
}
print qq~ ~;
if ($new_start_number < $number_of_messages)
{
print qq~ Messages $startplus to $new_start_number ~;
}
else
{
if ($startplus == $number_of_messages)
{
print qq~ Message $startplus
| THIS IS A PRIVATE MESSAGE | |
| THIS MESSAGE IS WAITING FOR APPROVAL | |
| $TXT_your_name: | $fields[1] |
| $TXT_your_name: | $fields[1] |
| $TXT_your_web_page_address: | $fields[11] |
| $TXT_your_message: | $fields[2] |
| Date: | $condate |
| $TXT_where_in_the_world: | $fields[5] |
| $web_comment: | $fields[6] |
| IP: | $fields[7] |
| [ Delete this message] ~; unless (($fields[6]) || ($fields[16] eq "yes")) { print qq~ [ Add a comment ] ~; } if (($fields[15] eq "waiting") && ($fields[16] ne "yes")) { print qq~ [ APPROVE THIS MESSAGE ] ~; } if ($fields[16] ne "yes") { print qq~ [ Edit this message ] ~; } print qq~ | |
Comment successfully added. ~; &inter_footer; } # end add response2 sub change1 { &seek_cook; $start_number = $FORM{'start_number'}; $ref = $FORM{'ref'}; open(USER_FILE,"$guestbook_data_name") || &oops('$guestbook_data_name'); @data =
Message successfully edited. ~; &inter_footer; } # end change2 ############### sub view_to_undo { &seek_cook; @datalist = (); open(USER_FILE,"$guestbook_data_name") || &oops('$guestbook_data_name'); @data =
| $TXT_your_name: | $fields[1] |
| $TXT_your_name: | $fields[1] |
| $TXT_your_message: | $fields[2] |
| Date: | $condate |
| $TXT_where_in_the_world: | $fields[5] |
| $web_comment: | $fields[6] |
| IP address: | $fields[7] |
| [ Undelete this message ] [ Permanently wipe this message ] ~; print qq~ | |
Message successfully undeleted. ~; &inter_footer; exit; } sub trash_item { &seek_cook; $ref = $FORM{'ref'}; open(USER_FILE,"$guestbook_data_name") || &oops('$guestbook_data_name'); @data =
Message permanently wiped. ~; &inter_footer; exit; } # end trash_item sub amqdate { $amqdate = $_[0]; @bits = split (/\//, $amqdate); $amqyear = $bits[2]; if ($amqyear > 1999) { $amqyear = ($amqyear - 2000); } if ($amqyear == 4 || $amqyear == 8 || $amqyear == 12 || $amqyear == 16 || $amqyear == 0 || $amqyear == 20 || $amqyear == 24) {$leap = "yes";} else {$leap = "no";} if ($amqyear == 1 || $amqyear == 5 || $amqyear == 9 || $amqyear == 13 || $amqyear == 17 || $amqyear == 21 || $amqyear == 25) { $extradays = ((($amqyear - 1)/4)+1); } $amqyeardays = (($amqyear * 365)+$extradays); $amqday = $bits[0]; if ($bits[1] == 1) {$monthdays = 0;} if ($bits[1] == 2) {$monthdays = 31;} if ($bits[1] == 3) {$monthdays = 59;} if ($bits[1] == 4) {$monthdays = 90;} if ($bits[1] == 5) {$monthdays = 120;} if ($bits[1] == 6) {$monthdays = 151;} if ($bits[1] == 7) {$monthdays = 181;} if ($bits[1] == 8) {$monthdays = 212;} if ($bits[1] == 9) {$monthdays = 243;} if ($bits[1] == 10) {$monthdays = 273;} if ($bits[1] == 11) {$monthdays = 304;} if ($bits[1] == 12) {$monthdays = 334;} if ($leap eq "yes" && $bits[1] >2) { $monthdays = ($monthdays+1); } $amqtotal = ($amqday + $amqyeardays + $monthdays); return($amqtotal); } sub check_update { unless (-e "$update_name") { umask 000; } open(NUMBER,"$update_name") || &oops('$update_name'); $num =
~;
&user_image if $user_image eq "yes";
&title if $use_title eq "on";
&user_html if $use_user_html eq "yes";
print qq~ $TXT_search_results~; &menu; open(USER_FILE,"$guestbook_data_name") || &oops('$guestbook_data_name'); @data =$TXT_no_match "; } else { &html_search_results; } if (($use_user_html_footer eq "yes") && ($use_hr_image eq "yes")) { print " "; &user_html_footer ; } if (($use_user_html_footer eq "yes") && ($use_hr_image ne "yes")) { &user_html_footer ; } print qq~ |
| ~; &user_image if $user_image eq "yes"; &title if $use_title eq "on"; &user_html if $use_user_html eq "yes"; &menu; $messagequot = $message; $locationquot = $location; $urlquot = $url; $full_namequot = $full_name; $messagequot =~ s/\"/QUOTQUOT/g; $locationquot =~ s/\"/QUOTQUOT/g; $urlquot =~ s/\"/QUOTQUOT/g; $full_namequot =~ s/\"/QUOTQUOT/g; print qq~ ~; &user_html_footer if $use_user_html_footer eq "yes"; print qq~ |
Control Panel ~; if (@restore_backup_data >2) { print qq~ | Undo last restore ~; } print qq~ ~; } &inter_footer; } sub undo_last_restore { &seek_cook; open(RESTORE_BACKUP,"./$guestbook_backups_directory/undo_restore.bak"); @restore_backup_data =
Backup has been restored.
(You can undo this from the main Backup Manager page.)
![]() |
![]() |
The password has NOT been changed.
The two passwords you typed were not the same.
Factory default preferences restored. ~; &inter_footer; } sub restore_language_defaults { &seek_cook; open(DEFAULTS,"$langprefs_backup_name"); @default_data =
Factory default language preferences restored. ~; &inter_footer; } sub check_new_files { unless (-e "$counter_name") { &content; print "The file $counter_name does not exist" ; exit; } unless (-e "$guestbook_data_name") { &content; print "The file $guestbook_data_name does not exist" ; exit; } unless (-e "$prefs_name") { &content; print "The file $prefs_name does not exist" ; exit; } unless (-r "$counter_name") { &content; print "The file $counter_name does can not be read." ; exit; } unless (-r "$guestbook_data_name") { &content; print "The file guestbook_data can not be read." ; exit; } unless (-r "$prefs_name") { &content; print "The file $prefs_name can not be read." ; exit; } unless (-w "$counter_name") { &content; print "The file $counter_name can not be written to." ; exit; } unless (-w "$guestbook_data_name") { &content; print "The file $guestbook_data_name can not be written to." ; exit; } unless (-w "$prefs_name") { &content; print "The file $prefs_name can not be written to." ; exit; } } sub view_langprefs { &seek_cook; &content; # upgrade 2.1 ($TXT_has_been_added_moderated = "Thanks. Your message has been sent to our webmaster and will be added shortly.") if ($TXT_has_been_added_moderated eq ""); # upgrade 4.1 ($TXT_has_been_added_private = "Thanks. Your private message has been sent to our webmaster.") if ($TXT_has_been_added_private eq ""); print qq~
User default preferences restored. ~; &inter_footer; } sub save_user_defaults { &seek_cook; open(DEFAULTS,"$prefs_name"); @default_data =
Preferences saved as User Defaults ~; &inter_footer; } sub restore_user_color_defaults { &seek_cook; open(DEFAULTS,"$usercolprefs_backup_name"); @default_data =