Файл: lib/docs/INTRO.txt
Строк: 319
These are release and configuration notes for PHPShop. We hope to clearly
identify the state of the distribution and inform you of any
installation, configuration and programming changes to the software.
******
NOTICE
******
If you enjoy this program and would like to help,
please start by reporting any
bugs to us. This would help us tremendously.
You can report bugs at
http://forums.edikon.com/
under "phpShop
Bugs". Please make sure you specify the version number,
operating
system and PHP version in use.
************
FEATURES
************
This
version of phpShop supports one store in your phpShop environment.
The
features available are:
1. Site Adminsitration
a. Users
b.
Modules
c. Functions
2. Vendor Administration
a. Vendors
b.
Vendor Categories
3. Store Administration
a. Store Profile
b.
Store Users
c. Payment Methods
d. Cybercash Administration
4.
Product Administration
a. Products
b. Attributes
c. Items
d. Prices
5. Order Administration
a. Orders
b. Order Status
6.
Shoppers
a. Shoppers
b. Shopper Groups
7. Tax Administration
a. Tax by State
8. Shipping
a. Shipping Capabilities via Zone
Definitions
Still have no support for multiple vendors.
This version of
phpShop is distributed user the GNU GPL License.
************
OVERVIEW
************
First off, architecture. The phpShop
system is all interpreted by one main
php file called index.php. index.php
is in web space so that your Web
Server Root directory under Apache would
look something like:
/home/httpd/html/ <- location of the
web server root.
/home/httpd/html/demo <- location of phpShop
interpreter (index.php3)
The index.php interprets commands based on three
bits of information.
1. the page you want to see and
2. if
you want to perform a function before you view the page.
3. list of
argument that are appropriate to the function called
1. Pages
All
navigation in phpShop is done via a call to the page parameter in the
URL.
For example, to view the main shop page you would issue a URL such
as
http://www.phpshop.org/demo/?page=shop/index
The key piece of
this is the "?page=shop/index" bit. It tells the phpShop
interpreter to open the file:
"modules/shop/html/index.ihtml";
We assume all paths are
relative to the phpshop installation directory.
Notice that the
".ihtml" is automatically appended to the page name
for
inclusion and that shop is actually the name of a module installed
in the
phpShop modules directory.
The phpShop processor not only displays the
page but also checks permissions
for the current user against the module
register. This lets administrators
determine who gets access to what
visual parts of the site.
2. Modules/Functions
A word on modules. In
order to increase to ease with which new features can
be added to phpShop,
we employed the concept of using modules. A module
defines a feature set
of phpShop by providing class files, html layouts,
and the database
definitions related to that particular module. All of the
phpShop modules
are located in the DOCROOT/modules directory. The structure
of each of the
module is as follows:
DOCROOT/modules/module_name
html <- location
of the ihtml files used for this module.
lib <- location of the
ps_*.inc files used for this module.
sql <- location of the database
definition file for this module.
Each module is defined and set in the
phpShop module register. The module
definition form allows the site
administrator to define the following bits
of information:
- module
name: The name of the module. This must be the name of the
directory of the module. It is used in the page= statement
as the
directory name.
- module perms: The perms of this module. Defines who
has access to the
module html directory of this
module.
- module header: Defines the name of the header file to use for
this
module. The header is prepended to every page
loaded
using the page= statement. The header is found
in the
DOCROOT/modules/templates directory.
- module footer:
Defines the name of the footer file to use for this
module. The
footer is appended to every page loaded
using the page= statement.
The footer is found in the
DOCROOT/modules/templates directory.
-
module menu: Specifies whether this module forms part of the
administrative interface main menu. If set to YES,
then the module
is visible as a menu option for
those users that have permission to
browse the files
in its html directory.
- display order: Used to
give the module a number by which to sort its
position in the
administrative interface main menu.
- module description: Used to give
this module a description so that other
users can be informed of how
to utilize this module or
at least understand its purpose.
-
language code: Defines a language code.
- language file: Sets the file
associated to the language code for this
module. The language file
is located in the modules's lib
directory.
- language menu label:
Sets the label to use in the administrative interface
when the
specified language is being used.
It is very important to understand
how modules work since everything, including
the shop, is a module.
Each
phpShop module has a list of functions that can be called from the URL.
For example, to add a user into the system, you would issue a URL such
as:
http://www.phpshop.org/demo/?page=shop/index&func=userAdd&username=myuser\
&password=password&last_name=Smith&first_name=\
John
The
keys of this URL are the page and func=userAdd function call. Everything
else following the page and func are arguments sent to the userAdd
function.
Each function has its own list of arguments based on their
use.
Notice that the userAdd function is not part of the shop module, but
can still
be called. This shows that even though a modules html directory
cannot
be accessed by a user without privelages, its function may be called
since
the module functions have their own permission settings.
In this
case, the userAdd function is called. If the function is
successfull then
the user will be routed to the "page=shop/index". If the
function is unsuccessful, then the last page from which the function
was
called is shown again displaying the generated error message.
What
makes a function call successfull or not depends on a few things:
a.
The function must be registered with the phpShop
system. This is
done/maintained in the module register.
b. The user must have permission
to use this function. The user
permissions are checked against the
permissions in the
module register.
c. The function arguments are
validated to make sure that all data
required for the operation was
given accurately, as defined
in each of the class validation
methods.
d. The function is executed and flow to the next page is set
to
"page=shop/index" if no errors were
returned.
*************
INSTALLATION
*************
Please refer to
INSTALL.txt for installation instructions.
******************
IN CASE OF
TROUBLE
******************
If you need support you should check the online
forums at:
http://forums.edikon.com/