Skip to content
This repository has been archived by the owner on Dec 19, 2023. It is now read-only.

Commit

Permalink
Browse files Browse the repository at this point in the history
MiniVend 3.06
  • Loading branch information
perusionmike authored and jonjensen committed Jan 2, 2009
1 parent 0f19f14 commit fd005f3
Show file tree
Hide file tree
Showing 65 changed files with 3,605 additions and 1,559 deletions.
16 changes: 8 additions & 8 deletions Copying
@@ -1,4 +1,4 @@
MiniVend V3.05
MiniVend V3.06

This program is free software; most users can redistribute it and/or
modify it under the terms of the GNU General Public License as published
Expand All @@ -12,15 +12,15 @@ until such time as MiniVend use is discontinued. The author of MiniVend,
Michael J. Heins, shall be the sole judge of what constitutes a SPAM
incident.

GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc.
675 Mass Ave, Cambridge, MA 02139, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.

Preamble
Preamble

The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Expand Down Expand Up @@ -70,7 +70,7 @@ patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.

GNU GENERAL PUBLIC LICENSE
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. This License applies to any program or other work which contains
Expand Down Expand Up @@ -269,7 +269,7 @@ make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.

NO WARRANTY
NO WARRANTY

11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
Expand All @@ -291,9 +291,9 @@ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.

END OF TERMS AND CONDITIONS
END OF TERMS AND CONDITIONS

How to Apply These Terms to Your New Programs
How to Apply These Terms to Your New Programs

If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
Expand Down
74 changes: 45 additions & 29 deletions INSTALL
Expand Up @@ -17,34 +17,40 @@ IMPORTANT NOTE: If you don't give evidence of having read and
WINDOWS INSTALLATION
--------------------

Obtain the self-extracting executable minivend-3.05.exe
and double-click on it.

If you already have the CYGWIN.DLL executable or plan on using the
Perl link CGI, you can download the file minivend-3.05-nodll.exe
and do the same.

The defaults are set for Microsoft Personal Web Server on Win95 --
if you use another HTTP server you will have to know where to
place CGI executables (the CGI-BIN) and HTML documents (DocumentRoot).

If the program does not find BLAT, you can just enter 'none' when
asked for SendMailProgram -- that will place all orders in the
CATALOG_DIR/etc/tracking.asc and CATALOG_DIR/error.log as the
demo is configured.

You should get PGP as soon as possible so that you might have
secure credit card number storage.

Many features are untested in the Windows version, and it
can be considered a beta.
Obtain the self-extracting executable minivend-3.06.exe
and double-click on it.

IMPORTANT NOTE: If you get the message "Bad command or file name"
when trying to install, then that means that Perl is not installed
on your machine or is not in your path. Go to http://www.perl.com
and install the *standard* 5.004 version (AKA the Gurusamy Sarathy
port). MiniVend will not work with the ActiveState 5.003 port.

If you already have the CYGWIN.DLL executable or plan on using the
Perl link CGI, you can download the file minivend-3.06-nodll.exe
and do the same.

The defaults are set for Microsoft Personal Web Server on Win95 --
if you use another HTTP server you will have to know where to
place CGI executables (the CGI-BIN) and HTML documents (DocumentRoot).

If the program does not find BLAT, you can just enter 'none' when
asked for SendMailProgram -- that will place all orders in the
CATALOG_DIR/etc/tracking.asc and CATALOG_DIR/error.log as the
demo is configured.

You should get PGP as soon as possible so that you might have
secure credit card number storage.

Many features are untested in the Windows version, and it
can be considered a beta.

UNIX INSTALLATION
------------------
Here is the short version:

gzip -dc minivend-3.05.tar.gz | tar xvf -
cd minivend-3.05
gzip -dc minivend-3.06.tar.gz | tar xvf -
cd minivend-3.06
perl Makefile.PL
make
make test
Expand All @@ -56,12 +62,12 @@ Here is the short version:
With comments:

# Unzip and untar the file -- if you have GNU tar, you can substitute
# 'tar xzf minivend-3.05.tar.gz'
gzip -dc minivend-3.05.tar.gz | tar xvf -
# 'tar xzf minivend-3.06.tar.gz'
gzip -dc minivend-3.06.tar.gz | tar xvf -

# Change directory to the one that was created
#
cd minivend-3.05
cd minivend-3.06

# If you have trouble with picking up the wrong Perl version,
# try '/dir/where/perl/is/perl Makefile.PL
Expand Down Expand Up @@ -106,7 +112,7 @@ With comments:
#

# Make the demo catalog. You will be prompted for some initial
# server-wide parameters, then the catalog-specific parameters.
# server-wide parameters, then the catalog-specific parameters.
#
bin/makecat simple

Expand Down Expand Up @@ -143,7 +149,14 @@ Key things that people sometimes don't understand:
that is in question.

-- The highly interpolative nature of MiniVend and HTML tags
means that order is often important.
means that interpolation order, not page position order,
is often important when using the OLD tag syntax.

When using the NEW page syntax, tags are interpreted in
the order they appear on the page.

It is strongly recommended that you move to the new syntax,
as MiniVend 4.0 will be removing many of the old tags.

-- The first thing to do in setting up a custom MiniVend catalog
is to define the database. Everything with MiniVend stems
Expand All @@ -152,12 +165,15 @@ Key things that people sometimes don't understand:
and other databases. Determine your data set first.

-- The demo pages are there to be played with. With MiniVend
3.00, you can't stop the system simply by changing a page.
3.0, you can't stop the system simply by changing a page.

-- Many of the configurable features of MiniVend are determined
by the directives in catalog.cfg (or minivend.cfg in a standalone
catalog).

-- You don't need to do anything to pass variables from page to page.
If you set it, MiniVend will remember it in the user session.

-- WHEN IN DOUBT, RE-CONFIGURE THE CATALOG. It won't take but a few
seconds, and changes to many of the configurable options don't
take effect until it is done.
Expand Down
6 changes: 5 additions & 1 deletion MANIFEST
Expand Up @@ -152,8 +152,12 @@ doc/minivend.html
doc/toc.html
lib/Archive/Tar.pm
lib/Carp.pm
lib/File/Basename.pm
lib/File/CounterFile.pm
lib/File/Spec.pm
lib/File/Spec/OS2.pm
lib/File/Spec/Unix.pm
lib/File/Spec/VMS.pm
lib/File/Spec/Win32.pm
lib/HTML/Entities.pm
lib/IniConf.pm
lib/Vend/Cart.pm
Expand Down
74 changes: 51 additions & 23 deletions Makefile.PL
Expand Up @@ -35,7 +35,8 @@ my $Windows;
# See if we have the CPAN module
my $Cpan = 0;
my $CpanInit;
eval { require CPAN;
eval { require CPAN::Config;
require CPAN;
import CPAN;
};
unless($@) {
Expand Down Expand Up @@ -91,14 +92,34 @@ EOF
}

}
elsif( $Config{osname} =~ /linux/i and
$Config{d_gnulibc} eq 'define' and
$Config{ccflags} !~ /STRUCT_TM_HASZONE/ and
! defined $ENV{MINIVEND_BADPOSIX})
{
print <<EOF;
This looks like a broken version of Perl for Linux, as often
happens with improperly built GLIBC Perls. RedHat Linux 5.0 has
this problem. If your Perl is built properly and does not dump
core when calling POSIX::strftime, then set the environment
variable MINIVEND_BADPOSIX to 0.
MiniVend will normally compensate for this automatically,
but if one thing is broken others may be. If you have problems
with MiniVend, go to www.redhat.com and get the latest Perl RPM.
EOF
my_prompt(" ", 'press RETURN to continue');
}

sub copyright_prompt {

print <<'EOF';
MiniVend V3.05
MiniVend V3.06
Copyright 1996,1997 by Michael J. Heins <mikeh@minivend.com>
Copyright 1996-1998 by Michael J. Heins <mikeh@minivend.com>
MiniVend is free as long as the organization or individual
using it does not employ uninvited commercial email
Expand Down Expand Up @@ -132,26 +153,26 @@ sub cpan_get {

print <<EOF unless defined $CpanInit;
Since you have the CPAN module installed, we can go and
get optional modules that help MiniVend work a bit better
and faster. At least we can if you are connected to the
Internet and have one of the following on your machine:
Since you have the CPAN module installed and initialized,
we can go and get optional modules that help MiniVend work a
bit better and faster. At least we can if you are connected
to the Internet and have one of the following on your machine:
Perl LWP libraries
Perl Net::FTP library
ncftp (a nice FTP program)
lynx (the text-based web browser)
In case you were wondering, CPAN is a worldwide network
of over 40 FTP sites which maintain the latest Perl software.
In case you were wondering, CPAN is a worldwide network of
over 40 FTP sites which maintain the latest Perl software.
If you don't know a URL to use, you can try:
ftp://uiarchive.uiuc.edu/pub/lang/perl/CPAN
ftp://ftp.cdrom.com/pub/perl/CPAN
ftp://ftp.funet.fi/pub/languages/perl/CPAN
If you have never used CPAN before, you may want to reply NO.
MiniVend should work anyway -- it just won't be quite as
easy to build the demo catalogs.
MiniVend should work anyway -- it just won't be quite as easy
to build the demo catalogs.
If you have errors during the process, don't worry. Either
just continue on or stop the program and try again, replying
Expand Down Expand Up @@ -237,7 +258,8 @@ EOF
open(WINBAT, ">configure2.bat")
or die "create configure2.bat: $!\n";
print WINBAT <<EOF;
$Config{perlpath} Makefile.PL install $realdir\r
CALL $Config{perlpath} Makefile.PL install $realdir\r
pause\r
EOF
close WINBAT;
exit;
Expand Down Expand Up @@ -342,8 +364,9 @@ EOF
if($Windows) {

my $dll_source = "win/cygwin.dll";
my $dll_dir = "c:/windows/system";
my $dll_location = "c:/windows/system/cygwin.dll";
my $dll_dir = $ENV{SYSTEMROOT} || "c:/windows/system";
$dll_dir =~ s:\\:/:g;
my $dll_location = $dll_dir . "/system/cygwin.dll";
DLL: {
unless(-f $dll_location) {
if (-f $dll_source and -d $dll_dir) {
Expand Down Expand Up @@ -441,14 +464,19 @@ EOF
mkdir $realdir, 0777 or die "mkdir $realdir: $!\n";
}

chdir 'dist';
$tar->add_files(@files);
chdir $realdir;
$tar->extract(@files,@winfiles);
chdir $origdir;
# Before Archive::Tar
#system "(cd dist; tar cf - *) | (cd $realdir; tar xf -)";
#die "File copy failed: $!\n" if $?;
# Work around Archive::Tar error?
if(-f 'bad_tar_pm') {
# From before Archive::Tar
system "(cd dist; tar cf - *) | (cd $realdir; tar xf -)";
die "File copy failed: $!\n" if $?;
}
else {
chdir 'dist';
$tar->add_files(@files);
chdir $realdir;
$tar->extract(@files,@winfiles);
chdir $origdir;
}

MODGET: {
last MODGET unless $Cpan;
Expand Down

0 comments on commit fd005f3

Please sign in to comment.