Switch branches/tags
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
SPECS Raise minimum Perl version to 5.14.1 Sep 18, 2018
code Remove CVS $Revision$ tags Nov 2, 2017
debian Convert README to Markdown for nice GitHub viewing May 15, 2018
dist Raise minimum Perl version to 5.14.1 Sep 18, 2018
doc Note that Mark added Braintree payment module Sep 19, 2018
eg Remove CVS $Revision$ tags Nov 2, 2017
extensions Raise minimum Perl version to 5.14.1 Sep 18, 2018
lib/Vend Quell error message for harmless empty JSON request body Nov 13, 2018
scripts Raise minimum Perl version to 5.14.1 Sep 18, 2018
share/interchange-5 provide CSS style for mv_contrast class Nov 23, 2009
t Revert recent RobotUA changes until fully baked Jan 18, 2017
.gitignore rename .ic-version to _ic_version for style consistency Nov 2, 2017
.travis.yml Raise minimum Perl version to 5.14.1 Sep 18, 2018
LICENSE Update LICENSE with fresh copy from the FSF at http://www.gnu.org/lic… Mar 30, 2007
MANIFEST Convert README to Markdown for nice GitHub viewing May 15, 2018
MANIFEST.SKIP Escape regex literal . Nov 1, 2017
Makefile.PL Raise minimum Perl version to 5.14.1 Sep 18, 2018
README-DEVELOPMENT Increase version number to 5.7.3 Oct 27, 2009
README.debian moved CSS and image files for UI from /var/www/interchange-5 to Oct 29, 2009
README.md Raise minimum Perl version to 5.14.1 Sep 18, 2018
README.rhel * Remove unneeded version numbers. Mar 23, 2014
README.rpm-dist Update Copyright dates and Version Numbers Oct 27, 2017
UPGRADE Raise minimum Perl version to 5.14.1 Sep 18, 2018
WHATSNEW Update WHATSNEW structure Oct 27, 2017
configure Convert README to Markdown for nice GitHub viewing May 15, 2018
cpanfile Bundle::LWP is not a thing anymore; replace with: Aug 22, 2016
hints.pl Raise minimum Perl version to 5.14.1 Sep 18, 2018
install_lsb.pl Remove bogus usage of $@, which File::Copy doesn't set on error Nov 2, 2017
relocate.pl Adjust relocate.pl to optionally remove the commented indicator line Nov 2, 2017
test.pl Convert README to Markdown for nice GitHub viewing May 15, 2018

README.md

Interchange

Interchange is a web application server, electronic catalog and database display system. Features include:

  • online ordering
  • real-time credit card processing hooks
  • high-level database access and retrieval with SQL support
  • product categorizing, merchandising, and discounting
  • basic customer relationship management
  • dynamic content presentation
  • content management
  • internationalization and localization support
  • real-time tax and shipping hooks
  • reporting
  • web-based administration

License

Licensed under GPLv2. This program is offered without warranty of any kind. See file LICENSE for redistribution terms.

Copyright (C) 2002-2018 Interchange Development Group
Copyright (C) 1996-2002 Red Hat, Inc.
Originally based on Vend 0.2 and 0.3, copyright 1995-96 by Andrew M. Wilcox.

Documentation

More information is in the following files:

README.rpm-dist

Notes on using Interchange when installed from RPM packages.

README.debian

Notes on using Interchange when installed from Debian packages.

README-DEVELOPMENT

How to access the Git repository to track ongoing development.

doc/WHATSNEW-*

Changes per specified version family.

UPGRADE

Instructions on how to upgrade from an earlier Interchange version.

A documentation package is available, with documentation in many different formats. This and other information is available at the Interchange home on the web:

http://www.icdevgroup.org/

Repository layout

Major files and directories in the distribution:

Makefile.PL

Script to create a Makefile, used for installation. (Run ./configure for usage instructions)

dist/

The distribution files, exclusive of executable files and modules. Includes:

  • interchange.cfg.dist - Distribution-default interchange.cfg
  • strap/ - Demo catalog skeleton, used by makecat
  • src/ - C and Perl code for CGI link programs
  • lib/ - Back-end administrative interface
  • code/ - Usertags and other customizable code

hints.pl

OS-specific configuration settings.

eg/

Various helper scripts and addons.

lib/

The library modules needed to run Interchange.

scripts/

The executable files, relocated to bin/ in the install directory.

relocate.pl

Script that adjusts paths in scripts/ for installation into bin/.

test.pl

The installation test script.

Prerequisites

Interchange requires Perl 5.14.1 or later, on a Unix-like operating system. It is primarily used on various Linux distributions, and has also been used on FreeBSD, OpenBSD, macOS, and other Unix variants.

Interchange requires some extra Perl modules to be installed on your system. Unless you are installing from distribution-specific packages (Red Hat, Debian, etc.) the quick way to install the necessary support is to run from the untarred Interchange directory:

cpanm --installdeps .

Alternatively, you can run:

perl -MCPAN -e 'install Bundle::Interchange'

If you would like to use a specific installation of Perl, invoke Perl with an absolute path to the perl binary, such as

/usr/local/bin/perl -MCPAN -e 'install Bundle::Interchange'

Installation

You can install Interchange as root for a multi-user system-wide setup, or as an unprivileged user who will be the only one modifying Interchange files.

Here is the quick installation summary:

tar xvzf interchange-5.12.0.tar.gz
cd interchange-5.12.0
perl Makefile.PL
make
make test
make install

If you would like to use a specific version of Perl, simply invoke with an absolute path to the perl binary, such as:

/usr/local/bin/perl Makefile.PL

The build procedure asks where you'd like to install Interchange and the name of the user account that will own the installation.

The Interchange server doesn't do much if it isn't servicing one or more actual catalogs, so you next need to make your first Interchange catalog, as described in the next section.

Demo catalog

There is a demo catalog skeleton (called 'strap') included.

To build your own catalog from the demo, go to the directory where you installed Interchange (default is "interchange" in your home directory, /usr/local/interchange for root installations, or /usr/lib/interchange for RPM installations) and run:

bin/makecat

Follow the prompts and after restarting the Interchange server you should be able to access the new instance of the demo catalog.

Please note that some functionality (notably the reporting features) may not be available if you are not using an SQL database such as MySQL or PostgreSQL.

Visit http://demo.icdevgroup.org/ to try out a live demo.