Home
        aMember Pro
         Contents
1.          GGI    aMember Guide       2002 2006  CGI Central          What is aMember Pro     Introduction       by Alex Scott    aMember is a flexible membership and subscription  management PHP script  It has support for PayPal   BeanStream  2Checkout  NoChex  VeriSign PayFlow   Authorize Net  PaySystems  Probilling  Multicards  E Gold  and Clickbank payment systems  complete list can be found  here  and allows you to setup paid membership areas on  your site  lt can also be used without any payment system    you can manage users manually  aMember Pro also  supports integration plugins to link with third party scripts  databases  like vBulletin  Invision Board  you can see  complete list here   aMember is a perfect solution for selling  digital membership and downloads  and it can be used for  another applications as well     aMember Pro    O 2002 2006  CGI Central    All rights reserved  No parts of this work may be reproduced in any form or by any means   graphic  electronic  or  mechanical  including photocopying  recording  taping  or information storage and retrieval systems   without the  written permission of the publisher     Products that are referred to in this document may be either trademarks and or registered trademarks of the  respective owners  The publisher and the author make no claim to these trademarks     While every precaution has been taken in the preparation of this document  the publisher and the author assume no  responsibility for errors or omissions
2.     4 3    None of the information entered needs to be your actual information   5  To verify the account return to the Developer Central web page and  select the email tab  All emails sent to your sandbox account will  appear here  Find the verification email and follow the steps to  verify the account   6  On the  Overview  menu click on  Add Bank Account  in the left column   7  Enter anything into  Bank Name  and click  Add Bank    8  Retum to the  Overview  menu  and click on  Confirm Bank Account  in  the left column  then click on  Submit  to confirm the account  10  Return to the  Overview  menu  and click the  Add Credit Card   link in the left hand column of the page   11  Write down the Card Number Expiration Date and Card Verification Number   you will use this card to test your Direct Payment installation   12  Click the  Add Card  button to complete this process         Live Account configuration       1  Follow all the instructions to set up your normal business PayPal account  to use Web Payments Pro  including account verification  back account  verification and signing up for Web Payments Pro  This last step may  take 24 48 hours for approval         The following steps are necessary for both Sandbox and Live accounts      0  Download Certificate  Sandbox users will do this in their Sandbox account    1  Goto My Account  gt  Profile   2  Click the API Access link and allow access to all API functions   3  Click the API Certificate Request link   4  Follow th
3.     global  db           Spayment    db  gt get_payment  Spayment id      Spayment is now  array   Sproduct    db  gt get_product  Spayment  product id       Smember    db  gt get_user   payment    member_id        print  For this period  Spayment begin date     Spayment  expire_date  lt br gt      print  Sproduct title  ordered by Smember name  f   Smember  name_1  lt br gt               update payments  payment id   This function called when payment spayment ia has been updated somehow   changed        O 2002 2006  CGI Central       65       aMember Pro             8 6 3    marked as paid  added  deleted   You can use the same code as for finish waiting payment function     aMember database functions    Often  in plugin hooks  you need to access database records  It is possible in numerous ways   Usually  it is right way to access aMember database with special access functions  You will  find description of these functions in this topic     Note  you have to define global sab  in your function to get access to database object      q    db  gt query  sql    It is not recommended  but if you want to execute a MySQL query to aMember database  you  should use this function  This function will access right database and it will handle errors  automatically    To substitute aMember tables prefix into query  use   db  gt config prefix   in your string   like       Sdb  gt query   sql    SELECT member id  FROM  Sdb  gt config  prefix   members  WHERE login    someone            u   
4.    How it Works in Practice  When a user enters a URL to the protected page the aMember login form is displayed and the  user enters a username password  This information is compared to entries in the member  database to determine whether a user has the right credentials  e Ifthe user has an active subscription to the product or products as defined in   _product_id then the protected page will be displayed   e If the user is not authorized yet  or has an expired subscription  then the login form is  displayed again with an error message   The login form is template based and can be customized  you will find it at   templates login htm   If you are not using subscriptions or wish to allow any member to have access to a page   regardless of the subscriptions they hold  then you can define  _product_id as below     product id   array  ONLY LOGIN     This simply checks that the username and password exist in the database  Be careful   it will  allow access for non paying or expired members        Adding a Logout Link  To add a Log out link anywhere in your protected area you can can use the link       O 2002 2006  CGI Central       35       aMember Pro             5 4    http   www  yoursite com amember logout php  You can set where user will be redirected after logout at the amember CP   gt  Setup   gt   php_include  By default  the user will be redirected to http   www yoursite com       Using auto prepend with php_include    This method of protection convert all your HTML file
5.    Reset Changes      Go Back            Into the empty bottom line  enter     Minute   0   Hour  0   Day      means every day   Month       Weekday        Command    usr bin lynx  source http   yoursite com amember cron php    Of course  replace yoursite com to your actual domain name  Ensure that this  URL works  first try    to open it from your browser     Click  Commit Changes     4  On the next day  if you receive e mail notifications from  Cron Daemon  that says that  something is wrong with your command   please read it carefully  It means that your cron job doesn t work  If it says  Command not    found      try to use the following command lines    usr bin curl  s http   yoursite com amember cron php   usr bin wget  o dev null  O  http   yoursite com amember cron php   usr local bin lynx  source http   yoursite com amember cron php   usr local bin curl  s http   voursite com amember cron php   usr local bin wget  o dev null  O  http   yoursite com amember cron php    If nothing helps  feel free to contact CGI Central Support  and dont  forget to include your  webhosting control panel login info and aMember CP  admin  login info     3 6 First steps    aMember allows you to take payment using a number of different payment processors  for  multiple products on your site     To set up the payments and have them processed automatically by aMember  there are a series  of configuration steps that must be taken     Step 1  Enable payment processor Plugins          2002 2006
6.   CGI Central             15    aMember Pro             3 7    aMember has pre existing plugins which allow you to easily take payment from a number of  payment processors     You can choose just one processor or multiple processors  in which case users will be able to  choose how they prefer to make payments  Of course you must have an account with a  payment processor before you can use the plugin for that processor    To enable payment plugin  visit aMember CP   gt  Setup   gt  Plugins and enable necessary  payment plugins        Step 2  Configure Payment Plugins   Consult and follow the specific configuration information for each plugin you have enabled   You can find plugin configuration page at aMember CP   gt  Setup   gt  PLUGIN NAME  Take an  advice to gray box below the plugin configuration screen   it displays content of readme txt  file from plugin folder  make sure you read it           Step 3  Set up Products  It is necessary that you set up some products  membership types   See Managing Your  Products for details     Step 4  Conduct test purchases   Be sure to leave test thoroughly  before allowing users to subscribe and pay  to ensure that  your systems are working    Visit page http   www yoursite com amember signup php and try to signup  If your payment  processor supports test mode  then enable this mode and use test credit card numbers  If it  doesn t support  run a real payment  then visit your Payment system control panel and refund  payment  it cannot be
7.   e Coupon Count  The number of coupons you wish to add to this batch  This will determine how many  different coupon numbers are generated  It will often be just one  However if you are  running advertising campaigns you might wish to use a different coupon number for  each ad to determine which returned the better results    e Coupon Usage Count  This determines the number of times that the coupons in this batch can be used   Entering 100 would mean that only the first 100 people entering a coupon code would  be able to avail of the discount  To allow unlimited use enter a very large number    e Member Coupons Usage Count  Determines how often an individual user can use a coupon  If you enter  1  then any  individual user will only be able to use the coupon on a single occasion    e Code Length  Determines the number of characters in the coupon code    e Discount       O 2002 2006  CGI Central          51    aMember Pro             7 8    You can apply the discount either as a percentage or as an absolute value   ega  specified number of dollars    e Date  You can specify the start and end dates during which the coupon can be used   Alternately by ticking the  Don t limit date of usage  the coupon code will be valid  indefinitely    e Locked  Tick this box if you wish to disable the coupons  they will be retained in the database  and can be reactivated later    e Products  Select the products or product to which the coupon can be applied  If you do not make  a selection her
8.   is a copyrighted work of authorship and is also protected under  applicable database laws  CGI CENTRAL retains ownership of the Software and any copies of it   regardless of the form in which the copies may exist     By installing and using aMember on your server  you agree to the following terms and conditions  Such  agreement is either on your own behalf or on behalf of any corporate entity which employs you or  which you represent     Corporate Licensee      In this Agreement   you  includes both the reader and any  Corporate Licensee      aMember licence grants you the right to run one instance  a single installation  of the Software on  one web server and one web site for each licence purchased  Each licence may power one instance of  the Software on one domain  For each installed instance of the Software  a separate licence is  required      Transfer Policy  CGI CENTRAL may  in its discretion  allow you to transfer your license to another  domain  providing the license      has not already been transferred  and    was purchased less than 3 months in the past      If you have a valid licence  you may set up an additional test installation on test host  providing it  never will be accessed by the general public      The licence is effective until terminated  You may terminate it at any time by uninstalling the  Software and destroying any copies in any form      You undertake to      ensure that  prior to use of the Software by your employees or agents  all such parties
9.   or for damages resulting from the use of information contained in this document  or from the use of programs and source code that may accompany it  In no event shall the publisher and the author be  liable for any loss of profit or any other commercial damage caused or alleged to have been caused directly or  indirectly by this document        aMember Pro                Table of Contents    Part      1  2    Part Il  1  2  3  4  5  Part Ill  1  2  3  4  5  6  7  8  9    10  Part IV    Introduction 3  aMember Pro Licence Agreement         unsnnsenrnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnannnnnnnnnnnnnnnnannennnnn anne 3  SUPPORT Gi iii 4  How it works 6  Signup  sa e a a ea a E S e a a 6  Payment sinasin EE EE 6  Expiration and subscription renewal sense 7  Protection ue 7  Third party scripts integration inner 7  Installation 10  AAA AA nam ni na akn a innen namen 10  QUICK Start zu    ea ST TU PP a n tk po a bak aa 10  SUC on o AVESSI L  0 ve ket E den ip te n   ki pd gi do pa ka e ka A anne bo ik ma pea n kota ae Pak an Dei kn pip eat ei 10  Initial SOU koki seve centers cect E Rs 11  HOW to ser cron TOD reine an ee 12  FIKSE Sleeps ee 14  Setting up protection iii kis   eu kok kon a Ha nn n a n n kk n n kk ak den 15  Eege    E 17  Upgrade from Free to Pro    cnn nn cerraran enanas 18  Upgrade Pro to newer version ss snnnnnnenennnnsnnnenennsnnnnensnnnnnenss 18  Payment Plugins 21  PayPal eege 21  PayPal Pro  iii a n n a 22  2GheckouUt iii 23  e UI 25  VeriSign PayF
10.  Admin Login  Chose a login name for accessing the aMember Admin Control Panel  e Admin Password  Chose a password for accessing the aMember Admin Control Panel  e Template Cache Level  This can be altered later in the Admin section   leave it at  O  during installation   e License  Paste the full license key here   If you do not have a license key  log on to    https   www cgi central net amember member php using the username and  password supplied when you purchased the script     Database Connection          2002 2006  CGI Central       Installation 12          3 5          To create the aMember database some information is required about your MySQL  database  If you do not know this information please consult your hosting  documentation or contact your host    e MySQL Host  Very often  localhost    if you are unsure  try that   e MySQL Database  If you created a database for aMember  enter its name  If you are using the  default database created by your host it may be called something like    yoursite_com Or  yoursite_host_com   if you are unsure please consult  your hosting documentation or contact your host   e MySQL Username  Will have been supplied to you by your host   e MySQL Password  Will have been supplied to you by your host   e MySQL Tables Prefix  This is important if you are running several applications in the same database  If  you are unsure about this enter  amember     including the underscore     Setting up cron job    aMember has ability to execute peri
11.  FTP the entire aMember folder to  this directory making sure that you transfer the files in binary mode  There is no need  to set up the folders on the server side  you can copy the whole directory over in a       O 2002 2006  CGI Central          11    aMember Pro             3 4    single step    3  To use the Web Based Setup browse to  http    www yoursite com amember setup php  then follow the instructions at  each step in the web based Im    4  Ifthe setup script requires  the following folders must be made writeable for the  script   e amember data   e amember data new rewrite    5  This usually means CHMOD permissions 707 or 777  Which one will depend on your  server configuration  Try 707  if you get an error in the installation procedure you can  change it to 777  If you are unsure about how to CHMOD your files  please see here     Initial Setup    Setup Guide    Each screen of the setup procedure has instructions about the information required  Please  read these instructions carefully     Configuration Parameters    Note  You will be able to edit these later in the aMember Admin Control Panel   e Root URL of script  This will be http    www yoursite com amember Where yoursite  com is your  domain  NO trailing slash    e Secure  HTTPS  Root URL of script  Only required if you are using a secure connection  If not leave it blank  This will  start with https     e Admin Email  Y our email address   the address to which alerts generated by the script will be  sent   e
12.  Table  The examples above add fields to the member table in the database  It is also possible to  add custom fields to the payments table in a similar way  In that case your entry in    config inc php will in each case begin with add  payment field Instead of  add member field    Creating new integration plugins    This chapter requies serious PHP programming expirience  We recommend you to contact  support  cgi central net for suggestion  if you not sure that you have such knowledge     What is integration plugin    Integration plugin is an add on for aMember which allows you to maintain third party  members database or solve other tasks  It consists from several PHP files  This guide will  show you how to create such a plugin and test it     How to start    You will need text editor and FTP client to create a plugin   Creating plugin template     1  Copy folder amember plugins protect plugin_template  to some other folder  lets say       O 2002 2006  CGI Central       Customization 60          8 5 2    8 5 3           some your plugin name    2  Rename  plugin_template inc php  to  some your plugin name inc php    3  In the plugin files  replace all occurrences of  plugin Template  to   some your plugin name   of course  without quotes    4  Now please open  some your plugin name inc php    with your favorite text editor and lets  write some code     Usually you have to define code at least for user status change e    Understanding user record    First  let us explain  mem
13.  and disadvantages of each method  please read this topic li     Consider using aMember CP   gt  Protect Folders function instead of manual procedure  described here  Described below is a manual procedure  and should be used only if amember  CP   gt  Protect Foldes doesn t work for you by some reason        For detailed instructions about using each method  please see the pages below   e Using new rewritel 31   e Using mod_rewrite with php include      protection  e Using htpasswd ss   protection  e Using auto prepend with php include  ss   protection  e Using php include  33    Important Note  If you are unfamiliar with creating and using  htaccess files  please read this page before you  begin     Using new_rewrite    This plugin allow you add cookie based login for ANY protected content  It can protect both  HTML files  downloadable content  and even complex PHP scripts  Currently  it is better and  most recommended protection technique     Useful if    e You wish to protect CGI PHP scripts  HTML content  images or downloads   Not useful if    e Your server does not support mod_rewrite    e You your scripts already uses PHP rewrite  In this case  this method may not work   Requirements   mod_rewrite available from  htaccess files  see below     See your hosting server information if you are unsure   Setting Up Protection    Please use aMember CP   gt  Protect Folders function and choose  new  rewrite  protection  method        Adding a Logout Link  To add a Log out link an
14.  are notified  of the terms of this Agreement  and     hold all data  including object and source codes   software listings and all other information  relating to the Software confidential and not at any time  during the period of the licence or after its  expiry  disclose the same whether directly or indirectly to any third party without CGI CENTRAL s  consent      The Software source code may be altered  at your risk      The Software may not be used for anything that would represent or is associated with an  Intellectual Property violation  including  but not limited to  engaging in any activity that infringes or  misappropriates the intellectual property rights of others  including copyrights  trademarks  service  marks  trade secrets  software piracy  and patents held by individuals  corporations  or other entities        O 2002 2006  CGI Central       Introduction 4                  If any of the terms of this Agreement are violated  CGI CENTRAL reserves the right to revoke the  licence at any time     Disclaimer of Warranty    The software and the accompanying files are sold  As Is  and without warranties as to performance of  merchantability or any other warrantied whether expressed or implied     CGI CENTRAL is not liable for the content of any site powered by the Software     You must assume the entire risk of using the program  ANY LIABILITY OF CGI CENTRAL WILL BE  LIMITED EXCLUSIVELY TO PRODUCT REPLACEMENT OR REFUND OF PURCHASE PRICE     Except in respect of perso
15.  choice   You can activate these fields from the aMember Admin Control Panel as follows        O 2002 2006  CGI Central       Customization 58                Open the aMember Admin Control Panel   From the left menu  click Setup Configuration  aMember Pro Configuration   Global screen opens  Find the field  Use Address info    e If Yes  then users will be asked to enter their full postal address when they  sign up   e If No  no fields for address information will appear in signup forms and this  information will not be requested     2  Add Custom Fields from aMember Control Panel    You can add fields from Control Panel  Go to amember CP   gt  Add Fields  and define new  fields  You can also change order of added fields     3  Define and Add Custom Fields from PHP code    This requires some editing of script files but is easy to do  Please remember to keep a backup  of the original file in case of errors   Also  consider using method  2    this method is depricated     To add another text field  For the purposes of this example  lets suppose you want to add a text field to collect a  Company Name     Open the file config inc php   Add the information for the new field at the bottom of the config inc php file   just before    gt     Add the following at that location     add_member_field  company    Company Name           text    company of member       Save config inc php    The new field will now appear in Admin Control Panel for each customer   If you want to add it to sign
16.  db  gt get_user  user_id     This function will return you a user record for given user_id     db  gt update_user  user   u   This function will update user with new user record  u  You should load record with get_user    change some fields  then pass changed record to this function      db  gt delete_user  user_id   This function will delete user with given user_id     p    db  gt get_payment  payment_id     This function will return you a payment record with given payment_id     db  gt update_payment  payment_id   p     This function will update payment     db  gt delete_payment  payment_id   This function will delete payment     db  gt get_user_payments  member_id   completed   This function will return you array of member payments  each record in this array is the same  as returned from get  payment function   completed parameter may be 1   then only Paid    completed   payments will be returned  or o   then all member payments  include pending   will be returned  This code snippet will show you how to select only active payments from  this list   Spl   ar  Sdat  d    H  w    rayi      ate  Y m d       Q       O 2002 2006  CGI Central    Customization             66       foreach   db  gt qet_user_ payments Smember id  1  as Sp       if   Sp  begin date      dat   amp  amp   Sp  expire dat       gt   dat           Spl     Sp              now Spl contains only completed payments       O 2002 2006  CGI Central             67 aMember Pro             Index   A     after logi
17.  done from aMember yet      Setting up protection    Protection Basics  Essentially protection allows you to make one or more areas on your site available only for  registered and not expired customers  If you have protection set up correctly  only ACTIVE   that is paid and non expired  customers will be able to access the protected area or areas   You already know that aMember allows you to have several membership types   products    each of which broadly equates to a protected area  aMember allows considerable flexibility in  setting up protection for these areas   For example  suppose you have 2 folders on your site     membersA     membersB   and you have 3 products    Product  1   gives access to folder A   Product  2   gives access to folder B   Product  3   gives access to both folder A and folder B  Please note  Products are always numbered  The id number is visible on the  aMember  Admin Control Panel  gt  Edit Products  page  First id is not always equal to 1  and second id  is not always equal to first id increased by 1        O 2002 2006  CGI Central       Installation 16                You can allow access as follows      membersA  access allowed for members subscribed to  products  1 OR  3    membersB  access allowed for members subscribed to  products  2 OR  3    Choosing the right method of protection  There are several methods of protection available with aMember  The one you chose will  depend on both your hosting features and your needs     Username p  veel
18.  e   METHOD     ely login  URL and not  event  Limitation to  window    a    Le E number of  bertormance Requirement    histor  mod_rewrite  most  available    rom     htaccess    mod_rewrite  available    mod_rewrite  available    all your  PROTECTE  D content    no special   requirements   ill work on   any hosting             2002 2006  CGI Central          17    aMember Pro             3 8    As you can see from the table above  php  include with mod_rewrite is the preferred and most  useful method of protection  If hosting limitations don t allow you to use this method  we  recommend using htpasswd_secure protection    php_include plugin uses the MySQL database directly to authenticate members    htpasswd plugin builds  htpasswd and  htgroup files in amember data  folder  These files are  completely updated every time anything is changed in the members database     The  hipasswd file contains a list of ACTIVE user accounts in the following form   usernamel crypted passwordl  usernamel crypted password2     htgroup file contains a list of products  each followed by a list of members who own    subscription for the product   PRODUCT 1  usernamel username2 username5  PRODUCT 2  username3 username4 username5             NOTE  Most effective way to setup protection is to use aMember CP   gt  Protect Folders  function instead of manual procedures described in the manual  It will also show you list of  protection methods available on your website        Enabling Protection Plug
19.  on February 3rd  The duration is entered as a number followed by  y  for years    m  for months and  d  for days   eg 4m is 4 calendar months           2002 2006  CGI Central          45       aMember Pro          Note  It is not a good idea to use 30d   ie 30 days   or similar entries to model a  month  months  indeed years  can have different numbers of days    Product URL   This is the URL to the content to which you wish this product to give access     The purpose of this field is simply to create a link to the content in the list of their  subscriptions which a member will see  If you leave this field blank the Title will  appear as plain text rather than a link in the Member Page  member   php     Please Note  Entering a URL here does NOT protect content  For information  about protecting your content please see the section  Setting up protection     18     Scope  This determines where on your site information about this product will be displayed   You have 4 options    e Visible to All  The product will be displayed on the main signup page AND  will be available to existing members in the Add Renew subscriptions list    e Only Signup  The product be displayed on the signup page only  it will NOT  be available to existing members    e Only Members having paid subscriptions  The product will NOT be  displayed on the main signup page  it will only be available to existing  members    e Disabled  The product will not appear for any users  It will still be available in  th
20.  or may not show  all queries  depending on the protection scheme used        O 2002 2006  CGI Central       aMember Admin CP Guide 52       7 9             e Using php include means that all access to any protected areas will be logged    e Using htpasswd Or htapasswd secure protection means that only access to aMember  files  such as the Member Profile page  member   php  Will be logged  Access to the  actual protected areas is not logged  However if you enable IP Checking with   htpasswd you can log access to these protected areas  Please read this topic for details    53       The access log can be cleared by using the aMember CP   gt  Delete Old Records function        IP based access control    aMember allows you to control the access that members have based on their IP address  This  access can be controlled both on a site wide level and on an individual user level   To Set General Access Controls  e Open the aMember Admin Control Panel  e From the left menu chose Setup Configuration  e From the top menu chose Advanced  e The Advanced Configuration window opens  e There are two options here for access control   e Maximum count of different IP  e Set this to the maximum number of different IP addresses a single user may  connect from in a given period   e Count IP for     hours  e The period in hours for which IP addresses should be counted  IP Checking works automatically if you are using php_include protect plugin  But it is  possible and recommended to setup IP prote
21.  payment clickbank thanks p  hp   Price   Must be the same as in aMember  Changing the price in the aMember script will  not affect ClickBank    You should enter 0 for price to test the script first  It will allow you to check the  script without making a real payment  Make sure to enter the real price after  testing     Write down the numbers of the products you create  You will need them later   Secret Key   At the bottom of the page enter your SECRET KEY  the same word or string of  characters you entered in the ClickBank   Configuration screen in aMember    If you forget this key  you can find it  or edit it  in the aMember file   config plugins inc php     Click on the Save Changes button   Your ClickBank account is now ready to receive payments using aMember  You will be asked  for the ClickBank product number of each product  subscription type  you add in the  aMember Add Products screen     4 5 VeriSign PayFlow Link    First you need to install the PayFlow Plugin  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From the top menu on this page click Plugins  The Configuration   Plugins screen opens  Select the PayFlow Plugin from Payment Plugins  Click Save    Accepting Payment with PayFlow   There are three stages in setting up aMember to receive payments via PayFlow  e Rename the ipn php file  e Configure the aMember PayFlow Plugin  e Configure your PayFlow Account    Rename the ipn php Fi
22.  second subscription  For example  user has subscription to Football News  Jan 01 2006    Jan 31 2006  Jan 15 he comes to amember  member   php and orders a new Baseball  subscription  It will be added with the following period  Jan 15   Feb 15 2006     3  Site offers not related products with different periods and level of access      Monthly Subscription to Football News RENEWAL GROUP set to FOOTBALL    Year Subscription to Football News RENEWAL GROUP set to FOOTBALL     Monthly Subscription to Baseball News RENEWAL GROUP set to BASEBALL    Year Subscription to Baseball News RENEWAL GROUP set to BASEBALL    This sample combines behaviour described above     Managing Users    What is a Member   A Member is a user of your site who is registered in the aMember script  usually via  signup php   Each member has a unique login ID  username  and password     What happens to expired members    While expired members will no longer have access to protected content  they are NOT deleted  from the database when their membership expires  This is important  as 1t means that any data  associated with expired members is still available for reporting and history purposes  There       O 2002 2006  CGI Central       aMember Admin CP Guide 48                are other advantages  for example it means that expired members can login to renew  subscriptions and can also  optionally  be included in emails sent by the administrator     Adding Users Members   Before adding members you must have at le
23.  the left menu to find the test user you created earlier  Click on the User Payments Subscriptions link on the top of the page  The User Subscriptions screen opens       O 2002 2006  CGI Central       aMember Admin CP Guide 50          7 7          Click the Edit link to the right of the payment record you wish to edit  You can edit any of the payment criteria     Suspend a Payment Subscription   When in the Edit screen for any payment  changing the status of the subscription from   Complete  to  Incomplete  will deny the user access to the subscribed content related to that  payment  effectively suspending the subscription     Delete a Payment Subscription  To delete an existing subscription   Open the aMember Admin Control Panel  Click on Browse Users from the left menu to find the test user you created earlier  Click on the User Payments Subscriptions link on the top of the page  The User Subscriptions screen opens  Click the Delete link to the right of the payment record you wish to delete    Coupons    What is a Coupon    When you create a coupon a coupon number is generated  A user entering this number during  signup will receive a discount on their subscription    You can define several criteria for any given batch of coupons     Adding a Coupon Batch  To add a new coupon batch   Open the aMember Admin Control Panel   Click Coupons in the left menu   In the coupons screen click the Generate Coupons link     The following criteria can be defined for a batch of coupons  
24.  the top menu on this page click 2Checkout Rec   The Configuration   2Checkout screen opens  NOTE  If there is no 2Checkout link in the top menu  this means you have not enabled the  2Checkout plugin  Please see Configuring Plugins   In the Configuration   2checkout screen there are three parameters to configure   e Your 2Checkout Account ID  e Enter your 2Checkout Account ID  a number that will have been supplied to you when  you signed up with 2Checkout   e Your 2checkout Secret Phrase  e You MUST enter the identical phrase when configuring your 2checkout account   see  below  Enter a single word     Configuring Your 2Checkout Account  For 2Checkout to process payments correctly and pass the relevant information back to  aMember  This procedure varies according to which 2Checout Plugin you are using  e Login into your 2Checkout account  https   www2 2checkout com 2co login  e Click to  Look amp Feel Setttings  link  Set  Approved URL   http   www  yoursite com amember plugins payment twocheckout r thanks php  Pending URL  http   www  yoursite com amember   e Your Secret Word   set to any value you like  Enter the same secret word as you entered when configuring the  2Checkout Plugin in aMember     Important Notes   Before you start  there are a couple of things to note    For aMember to process payment for products through 2Checkout you must first define  products in your 2Checkout member area as described in the 2Checkout user manual  It is  very important that the price  
25.  will appear here     Adding User Levels to Products   Once the Bulletin Board Plugin is installed a new parameter will be available in the Add  Product screen  This allows you to specify a Bulletin Board user group to be associated with  each product    If you are adding the Bulletin Board plugin and already have Products set up you will need to  amend them to associate a Bulletin Board user group with each    Notes on Using Bulletin Board Plugins   There are two ways that you can set things up when using aMember with a Bulletin Board  Plugin    e Disable user registration in the Bulletin Board and set links so that users must  signup through aMember  Please see your Bulletin Board documentation for how to  disable user registration and refer users to another page to signup    e Keep user registration in the Bulletin Board  but restrict users registering in this  way to a default user group  Then you create new user groups  for paid users  which  can be associated with your products in aMember  This is the recommended method in  most situations        O 2002 2006  CGI Central          aMember Admin CP Guide 42       7 1             aMember Admin CP Guide    Setup Configuration    Before you begin to add products or members  you must finish configuring your aMember  Installation     Global Configuration  The Global Configuration screen allows you to set parameters that affect the entire Member  script  Some of these you will have already defined during setup   To open the Glo
26.  work a  htaccess file must be added to the directory you wish to  protect  The following is the content you need for the  htaccess file     RewriteEngine On  RewriteRule         amember plugins protect php_include rewrite php       Note  Please use correct links inside the protected area  If you link to a directory  write    directory   instead of   directory   use trailing slash   Also remember that protecting a  directory with  htaccess also protects any sub directories within that directory   Unfortunately  the 404 File Not Found error page will never be displayed in this area     How it Works in Practice  Apache s mod_rewrite process access to all pages images anything loading through  aMember s file rewrite php  This file checks the user s authorization in the database   e If the user has an active subscription to the product or products then the protected  content will be displayed   e If the user is not authorized yet  or has an expired subscription  then the login form is          2002 2006  CGI Central       33       aMember Pro             5 3    displayed again with an error message   The login form is template based and can be customized  you will find it at   templates login html       Protecting Multiple Areas  versions 1 9 4 and later   By default rewrite php allows access to users with a subscription to products 1 21  To  change this  please change your  htaccess as follows     RewriteEngine On  RewriteRule           amember plugins protect php_include rewrit
27. an have a number of predefined criteria  The easiest way to understand these is to  add a test product to aMember now  you will be able to delete this product later     Add a Product  To add a product  Open the aMember Admin Control Panel  From the left menu  click Add Products  The Add Product screen opens  The Add Product screen allows you to define a number of parameters for each product   Although you may not need to use all of them it is important to understand what each of them  means   e Product Title  The name of your product  This will be displayed to users on the main signup page  and will also appear in the list of products that an existing member can add or renew   It is also used in various member and admin reports     It is best to keep the title short    e Description  A brief description of the product  usually a description of the content to which the  product gives access  This will be displayed alongside the product title on the main  signup page  You can use HTML in this field    e Price  The cost of the subscription for the given period  Enter only a number here  without  any currency symbols  Example  12 25   e Duration  The length of time for which a subscriber will be able to access the protected content   also referred to as the period of subscription or the subscription cycle     Duration can be defined in days  calendar months or years  Calendar month means  that if the subscription starts on January 3rd  it must be renewed  or will expire   exactly
28. ast one product to subscribe them to  If you have  not already done so return to the Managing Products  44  of this guide and set up a test product  now     To add a member  or user   Open the aMember Admin Control Panel   Click Add User in the left menu   The Add User Screen opens  The add a user form is pretty self explanatory  Fill in the details for a test user  you can  delete this user later    e Click save and you will see a message  Information has Been Saved   e Click the continue link  then you will be redirected to user Payments page  e Using Quick Ada form  add a subscription to customer  By default  both start and  expiration dates are set to today  but it can be easily changed     Managing Users  You can edit both the user information and any member payments at any time from the  Admin Control Panel  In addition to  User Information    and  User Payments Subscriptions  on  the top of the member record page there are two other links  e Actions  Delete a member  resend the signup email to a member or merge member records   e Access Log  Lists recent access by the member to aMember and to other member areas that use PHP  protection    Finding Members  aMember makes it very easy to find your members  either individually or by a number of  different criteria   e Click Browse users on the left Menu to browse through your members  listed by  username   e Click Search Users on the left menu to search through the user database using any of  the various criteria listed th
29. ave an image called using  i if gt  it needs to be amended to    e com images image gif gt         Alternatively you can edit all URLs to be relative from the root  This means all will  begin with a forward slash   eg   images image gif     e From the aMember template file  templates header htm1  copy the CSS  information into the head area of your page    e Now write the word  HERE  in the part of the page where you want the script pages to  appear  this is usually the main part of the page    e The content of the page which appears above the word  HERE  is your header   copy  it into a new file and save as header  html   e The content of the page which appears below the word  HERE  is your footer   copy it  into a new file and save as footer html   e Replace the aMember files  templates header htm1 and   templates footer html With your new ones   don t forget to back up the originals  first           8 2 Adding login form anywhere on your site    Use the following to add a login form anywhere you wish on your site     ogin php            method      If your page is PHP  you may display  smart  login form like that        bp     gt    10 gt  lt br gt         lt input type submit value  Login      lt  form gt          O 2002 2006  CGI Central       57       aMember Pro             8 3    8 4    Make sure you also add  lt  php session start       into the FIRST line in your script  no output before  else you  will get errors like that     Warning  session start    Cannot send 
30. bal Configuration screen   Open the aMember Admin Control Panel  From the left menu  click Setup Configuration  aMember Pro Configuration   Global screen opens    There are a number of parameters to configure on this screen   e Root URL and Secure Root URL  The URLs to your aMember installation  eg http     www yoursite com amember  You already defined these during initial setup but they can be edited here if you wish   e Admin Username and Password  Username and password for access to the aMember Admin Control Panel   These can be edited in this screen at any time   e Generate Login  e If  Yes  then the script will automatically generate a Login ID  username   when members signup  they will not be given the option to choose one  themselves   e If  No  then users will be able to choose their own username at signup  e Login Maximum Minimum Length  Set the maximum and minimum number of characters allowed in usernames   e Generate Password  e If  Yes  then the script will automatically generate a password when members  signup  they will not be given the option to choose one themselves   e If  No  then users will be able to choose their own password at signup  e Password Maximum Minimum Length  Set the maximum and minimum number of characters allowed in passwords  e Require Unique Email  e If  Yes  then a user will not be able to create separate accounts using the same  email address   e If No  a user will be able to signup multiple times with the same email  address     Note  En
31. ber record is an array  usually we name it  member in the code  It  contains the following fields  for example     Smember  login     Smember  pass     Smember  name f     Smember  name l     Smember  email    Also  there is a special  field  called  data   Smember  data     It contains all additional  fields     fields which you ve added with using Of add member fiela   function  So  if you added field  phone  there will be define a varaible    Smember   data     phone       What is user status    aMember always hold and maintain user status in several fields  Because member can have   several subscriptions   for different products in the same time  we maintain 2 status fields   Smember  data    status     This field is an associative array  Keys are product IDs  and values are status value for this   product  O means that subscription for this product is not active  never paid or expired   and 1   means that subscription is active  paid and not expired   This field should be used for most   calculations in plugins     Smember  status    This field is mostly for usage in aMember code  but you can use it as well  It is status of entire  member record and it can have the following values  0   never paid  user never had completed  subscriptions   1   paid and active  user have at least one completed and active subscription    2   expired  all user subscriptions have been expired     How to setup a plugin hook    A plugin hook can be set with this line of code    setup plugin ho
32. bscription rebuild  amp  members   This function will be called when admin clicks on aMember CP   gt  Rebuild pp link  This  function allows admin to ensure that third party members databases are synchronised with  aMember members Db  aMember sends a short list of members  Each key is a member  login  each record is an assotiative array with the following fields   array     pass    gt   MEMBER PASSWORD     product id    gt  array  LIST   OF       ID OF PRODUCTS    WHICH MEMBER IS SUBSCRIBED FOR               It is not necessary to implement this hook     Plugin hooks   login helpers    aMember Pro allows you to implement an unqiue feature    single login   It means that when  user is logged in to third party application  he automatically become logged in in aMember  and vice versa     Please note   there is one potenial problem   when user clicks Logout in aMember  it is  possible to implement that member will be logged out automatically from third party  application  However  it is impossible to implement that when user logs out from third party  application  he automatically logs out from aMember  It can be resolved by replacing logout    link in third party application   it must point to aMember logout page    http   www  yoursite com amember logout php    check logged in    This function must check if user is logged in in third party application  Function can use  cookies  sessions and database info to determine this  Function must return   array  username    password   i
33. ction for your static pages protected with    htpasswd too  See here for details     Controlling Access on a User by User Basis  There also options for IP locking that can be used on a user by user basis  These allows you to  control the access of individual members  This may be useful for example if you wish to ban a  user  or to allow a user more liberal access than would be permissible under the IP access  control settings as set above   To see these options open any user record   e Open the aMember Admin Control Panel  e From the left menu chose Browse users  e Open any user record  e Inthe record you will see a field   Locked  auto locking by IP   e There are three options here   e No  default   means not locked  user has normal access  e Yes  means locked   user s access is suspended  e Disable Autolock for this User  User will be able to connect using as many  different IP addresses as they wish           2002 2006  CGI Central          53    aMember Pro             Setting up IP Checking with  htpasswd protection   To enable IP checking if you are protecting files with htpasswd Or htpasswd_secure  you  must create in each your of your protected directories a php file  named log  access php  with following content     lt     include   home user public_html amember log_access inc php     2     When a user accesses this file  the aMember script automatically writes a log record and does  IP checking    To ensure that this file is called automatically  you must insert in 
34. d supercedes all representations  understandings or prior agreements between you  and CGI CENTRAL     CGI CENTRAL reserves the right to modify these terms at any time     1 2 Support    CGI Central offers fast priority email and web based support to all customers of aMember Pro version   Guaranteed response time is 24 hours for any question     Priority Support  Web Support  https   cgi central net support   E Mail Support  support cgi central net    Forum  no priority support   http   www cgi central net forum     FAQ  Frequently asked questions   https   www cgi central net support fag php          2002 2006  CGI Central          How it works 6                2 How it works    This is an overview of how the aMember script works to sign up users to your protected area or areas   If you are unfamiliar with aMember or have not used a script to protect content in the past  it is highly  recommended that you read this section before installing aMember     2 1 Signup    The procedure for signing up a new customer member is as follows    1  A user comes to the signup page  http   www  yoursite com amember signup php  and  completes a signup form  User is asked to enter their first and last name and email  address  They may also be asked to create a username and password  You can  optionally enable username and or password generation in the aMember Pro settings   in which case the user will be issued with an automatically generated username and or  password    2     You may add mor
35. e Admin Control Panel for manual signups    Sorting Order   This is a very useful field for those who have many products  It determines the order  in which products will be listed on the signup page and in the list of products shown  to members     Products are normally sorted alphabetically  By entering a number in this field you  can override this alphabetical sorting  It also allows you to group products for display  by entering the same number for each of them     Products will be sorted first by the number entered here  then alphabetically   Price Group ID   Again  a useful field for those with many products  Its primary use is to create  different signup pages for different groups of products     If you enter a negative value   for example   1    the product will NOT be displayed on  the default signup page  You can instead use the link   http   www  yoursite com amember signup php price group  l for a signup page  which displays products in this price group only    Display Agreement   Tick this box if you wish users to indicate their agreement with your terms and  conditions before their signup is completed  An individual user will see this          2002 2006  CGI Central       aMember Admin CP Guide 46          7 4          agreement only once  You can add your terms and conditions by editing the file  agreement  html in the templates  folder   e Payment Information  Depending on what payment plugins you have configured there will also be fields  about payment informa
36. e below for details    e When a user subscription expires  the member will revert to the previous user group in  the Bulletin Board     Installing the Bulletin Board Plugin  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From the top menu on this page click Plugins  The Configuration   Plugins screen opens  Select the Bulletin Board Plugin you wish to use from Protection Plugins    Click Save    Configuring the Bulletin Board Plugin  There are a number of parameters to configure here  which may vary slightly depending on  the particular bulletin board you are using   e Board Db and Prefix  e Enter the prefix used by the Bulleting Board tables in your database  For example if  using Invision Board  you would enter ib  e If you are unsure about this please refer to your database or to the documentation that  came with your Bulletin Board        O 2002 2006  CGI Central       Third party Plugins 40                e Default Level   e This is the level to which non paid customers will be assigned  When a member  subscription expires  they will be returned to this level  All the member levels you  have previously set up in your Bulletin Board will appear here    e Denied Groups   e This is an important parameter as it allows you to protect your administration  accounts  Any user groups chosen here will never be changed by aMember  All the  member levels you have previously set up in your Bulletin Board
37. e fields to signup form if you wish    3  After completing the form  the user presses the  Signup  button  aMember now  creates two new database records    e a pending user record   e a pending payment record    This does NOT give the user rights to enter  The pending payment record contains  amount to be paid  subscription start and expiry dates  subscription type ordered  and other related information  However this payment record is not marked as   paid      Read about payment process ES    2 2 Payment    e The user is redirected to payment system payment page where he will be asked for  credit card info  or for other necessary payment information  depending on the  payment method selected   The payment gateway  eg PayPal  2Checkout or  Authorize Net  checks the information entered and makes the transaction    e Once the transaction is completed successfully  the user will be redirected to the   thanks  page of aMember  http   www  yoursite com amember thanks php   If the  transaction failed  user may be redirected to failed payment page  only if the payment  system supports it   http   www  yoursite com amember cancel php      e In background  the payment system sends confirmation to aMember script that the   payment process has been completed  The aMember script then marks the payment as   Paid  and sends a signup  welcome  email to the customer     Read about subscription expiration  7     Full list of supported payment plugins can be found here   http   www cgi central 
38. e on screen instructions to complete your certificate request   5  Click on download and save the file  give it unique filename and upload  to your server  If you upload it to amember plugins payment paypal_pro   folder  it will simplify following configuration     STEP II  ENABLE AND CONFIGURE THE PLUGIN    1  Go to aMember CP   gt  Setup   gt  Plugins   disable  paypal r  plugin if you have it enabled   On the same page  enable  paypal pro     this  plugin    2  Configure plugin at aMember CP   gt  Setup   gt  Paypal Pro  If you have uploaded the certificate to  paypal_pro  plugin folder   you may enter just filename  Else you will have to enter full Unix  path to file     2Checkout    First you need to install the 2Checkout Plugin  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu       O 2002 2006  CGI Central       Payment Plugins 24                The Configuration   Global screen opens   From the top menu on this page click Plugins   The Configuration   Plugins screen opens   Keeping ctr   key pressed  click to twocheckout r plugin in the payment plugins list  Press Save    Accepting Payment with 2Checkout  There are two stages in setting up aMember to receive payments via 2Checkout    e Configure the aMember 2Checkout Plugin  e Configure your 2Checkout Account  Configuring the aMember 2Checkout Plugin  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From
39. e php   E PRODUCT ID  1 2  3               In this example  customers of products  1 and or  2 and or  3 will get access to protected  folder where this file located     Protecting Multiple Areas  versions before 1 9 4   By default rewrite php allows access to users with a subscription to products 1 9  To  specify the ditectory to which you wish to give access you must edit this file   To set up different protection status for different directories follow these steps   e Make a copy of the file rewrite php   e Rename it rewrite_1 php  e Open the file rewrite_1 php and edit it to specify the product number which gives  access to the directory you are protecting   e Edit the  htaccess file so that your new rewrite file is used for authorizing access     RewriteEngine On  RewriteRule           amember plugins protect php include rewrite l php       e This can be repeated for as many directories as you wish   ie you can create r  ewrite 2 php  rewrite 3 php etc     Adding a Logout Link  To add a Log out link anywhere in your protected area you can can use the link  http    www yoursite com amember logout php  You can set where user will be redirected after logout at the amember CP   gt  Setup   gt   php_include  By default  the user will be redirected to http    www yoursite com       Using php_ include    This plugin allow you add cookie based login for protected pages  It is particularly useful for  adding paid membership support to an existing PHP based application   If your e
40. e the coupon will be useable for subscription to any of your products     WARNING  If you do not define the products to which the coupon can be applied  then it  1s in most cases advisable to ensure that the discount is defined as an absolute value  If  you apply the discount to all products  and it is a percentage discount  it would be possible  for a user to order multiple products and receive the percentage discount on their total  value     Editing Coupons  To edit a coupon   Open the aMember Admin Control Panel   Click Coupons in the left menu   Click on the Edit link next to the coupon batch you wish to edit  The following parameters can be edited   e Discount  The amount of discount allowed by the coupons in a batch  e Date  The date range during which a batch of coupons can be used  e Products  The products for which the discount can be applied  e Locked  Tick the check box to temporarily disable the coupon batch    Coupon Usage Statistics  aMember keeps a record of the number of times each coupon is used  You can view the  record of all coupons in a batch by clicking on the Batch number in the coupons screen     Error and Access Logs    There are a number of log files available in the amember Admin Control Panel     Error Logs  Contains a list of error debug messages for periodical review by site owners  The error log can  be cleared by using the Delete old Records function     Access Logs  A log of access to site by authenticated users  ie members  The log files may
41. e to access the member area until their  membership has been approved by the administrator   e If No  New signups will have immediate access to the member area following  signup   e Send E Mail to admin about new subscription  e If Yes  the administrator will receive an email each time a new member signs  up  e If No  Emails will NOT be sent to administrator when a new member signs up  HINT  If you decide to require admin approval for new subscriptions  then 1t is recommended  that you enter  Yes  to receive emails about new signups  This will alert you to go to the  control panel and approve new members     Other plugins    If you are going to use another payment plugin  do the following     Open the aMember Admin Control Panel   Click on Setup Configuration from the left menu  The Configuration   Global screen opens   From the top menu on this page click Plugins   The Configuration   Plugins screen opens   From Payment Plugins  choose the necessary plugin   Click Save    Then go to aMember Admin Control Panel   Setup Configuration  PLUGIN NAME   You will see configuration instructions in gray box in bottom   follow these instructions  It is  also valid   for plugins described in this manual   plugin readme may contain more recent information  and   actual URLs to setup        O 2002 2006  CGI Central             31    aMember Pro             5 1    Protection Plugins    aMember allows you to protect your content in a number of different ways  For the  comparsion  advantages
42. ere        Enter part of username  name or email into the input box in left menu and press Enter  key       Note  Once a user has been added as a member  they will be able to access their member page  at http   www  yoursite com amember member  php  using the username and password in  their member record  However adding a user as a member does not give access to any content   you must subscribe user  add a payment            2002 2006  CGI Central       49       aMember Pro             7 6    Managing Payments    What is a Subscription    A subscription is a permission for the user to use a defined product  that is  to access some set  of pages directories  for a specified period of time    A subscription is set up when a person makes a payment for a product  so subscriptions are  also referred to as  Payments   This payment can be a real payment  or a  not real  payment in  the case of free signups     Adding a Subscription  While in practice most members will probably subscribe themselves by using the public parts  of the aMember script  as administrator you can manually subscribe members to any of your  products   To add a subscription for a member  first open the Member Record    Open the aMember Admin Control Panel   Click on Browse Users from the left menu to find the test user you created earlier   Click on the User Payments Subscriptions link on the top of the page   The User Subscriptions screen opens  There are a number of parameters here to set for each subscriptio
43. f user logged in  and  array       if user is not logged in    after login fmember   This function must login user into third party application  It can use   member to get  member info from aMember database   If this function has incorrect code  it is a potential hole   please be careful  This function  must check third party members  database and ensure that enabled user with exactly the same username and password is  exists in third party       O 2002 2006  CGI Central       63       aMember Pro             8 5 6    8 6    after logout    This function must logout user from third party application  You must clear cookies   session data  database records   anything that you have set in after login   and that you  used IN check logged in   functions     Plugin hooks   signup helpers    check uniq login  login   email   pass    This hooks allows you to check if user is exists in third party database before he can  signup using amember signup php  form  By default  aMember plugins do the following checks       if user with the same username   email and password is exists  allow signup     if username is the same  but email or password is different   don t allow signup  For example  it won t allow  hackers  to get access to existing  but not paid forum  account   Function shoulld return 1 if user is allowed to signup  and 0 if user is not allowed to  signup     fill_in_signup_form  amp  vars   This hook is rarely used  hovewer it offers you great ability to pre fill signup form 
44. hould update  customer profile in your database accordingly  if such profile exists in your database     New info will be stored in snewmember Variable  and old info will be in soldmember  variable  soldmember Will also   help you to find user record in your database  Don t forget   login can be changed too   by  admin     Also  if you need to use member status fields in this function  use it from  01dmember  variable   these fields are  empty IN Snewmember variable     subscription deleted  member id   product id   member   This function will be called when user subscriptions status for  product id becomes  NOT ACTIVE  It may happen  if user payment expired  marked as  not paid  or deleted by admin   This function is an  opposite for subscription added     Be careful here   user may have active subscriptions for another products and he may be  should still in your database   check  member  data    status   variable to be sure that user  has no other subscriptions allowing his to access your application     subscription removed  member id   member   This function will be called when admin  or aMember  completely deletes member       O 2002 2006  CGI Central       Customization 62          8 5 5          profile from aMember database with all related payments and other info     Your plugin should delete user profile from database  if your application allows it    or it  should just disable member access if your application if application doesn t allow profiles  deletion     su
45. in  amember with info received from third party database  if user is logged in in third party  application  For example  if user is logged in in Invision Board  this function may  automatically fill in username and email fields in aMember signup form  To do it  you  have to determine if user is logged in in third party application  get user info from  third party database and save this info to svars array     Extending aMember with PHP    This chapter requies serious PHP programming expirience  We recommend you to contact  support  cgi central net for suggestion  if you not sure that you have such knowledge     Right way to add small piece of code to aMember   We recommend you to create file amember site inc php and put all your customization code  to this file  If you follow this advice  your customizations won t be lost after upgrade  and it  will be easy to track     To start  upload file amember site inc php With the following content    lt  php     customization code must be added below this line    2      Make sure that there are no spaces  newlines or any other output before  lt   or after  gt  gt      Before you read this topic  make sure you ve read topic  Understanding user record lev  in  previous chapter  It is necessary for understanding of this chapter        O 2002 2006  CGI Central       Customization 64                8 6 1 Hooks   validation functions    validate signup form 8  vars   This function will be called when user submits signup form  svars is an ar
46. ins    Step 1  Enable protection plugin  To enable plugin  visit aMember CP   gt  Setup   gt  Plugins and enable necessary protection  plugins        Step 2  Configure protection plugin  Visit aMember CP   gt  Setup   gt  PLUGIN NAME and setup necessary parameters if plugin requires  it           Step 3  Follow plugin readme to actually enable protection   When you are on the page aMember CP   gt  Setup   gt  PLUGIN NAME  have a look to readme text  on this page    It will give you neccessary instructions to actually enable protection  This readme is specially  useful  because it contains  htacess files which can be used on your site without any changes           Step 4  Test your protection   If you followed payment process testing  as described above  you should already have  working username and password to access protected area  Try to access protected area directly    it will ask you for username and password  Enter values and make sure that protection works  as expected     Affiliate program    Starting from version 2 3 0  aMember includes affiliate program  To enable and use it  you  have to make the following steps        O 2002 2006  CGI Central       Installation 18          3 9    3 10          Enable affiliate program usage  set aMember CP     Setup     Advanced   Enable  affiliate program   YES   Go to aMember CP   gt  Setup   gt  Affiliates and configure your affiliate program  Most  important is to enter commissions  Commissions can be set as absolute value  fo
47. l panel  I hope you will be able to  find equivalent controls if your hosting uses different panel software     1  Login into your webhosting control panel  You will see screen like that     General account information  a E B B  Dedicated Ip Addr 69 72 204 38 Mail Webmail Change Parked  Password Domains    0   unlimited        Paikad Domains   170 IR  gt  e  a  EES 0 0  FTP File Disk usage Backup  AA  6 37 Megabytes N    Unlimited Megabytes       w        Error pages Subdomains MySQL Redirects  7159 50 Megabytes Databases    25   unlimited LA fe  8    5          E    Web FTP Raw Access Raw Log Error log  Stats Logs Manager    1   unlimited    Search Chatroom PhpMyChat Bulletin  Engine Board  Submit    General server information     m a g B       Click to View  Scripts Cron jobs Network  24 23 Library Agora Tools  Shopping  i686 Cart       2  Click to  Cron Jobs  link  It may be also hidden in  Tools  or  Advanced  submenu  You  will see screen offering you to choose your expirience level  Choose  Advanced      3  You will see the following screen           2002 2006  CGI Central       Installation 14                Standard Cron Manager    This is a web interface to the crontab program  For example            would mean every min and 0 0       would mean at  midnight   Please enter an email address vhere the cron output vill be sent     Minute Hour Day Month Weekday Command  0 ki e a  gt  Ve er rn Delete  45 es   E k   a e ooo Delete    U    o    se  gt   Fe    Commit Changes
48. layed   and period  We  recommend to use default payout period  else you will be at risk of fraud  For example   we suggest to pay commisions for July in September  or even later  Usually it takes 2 3  months for chargeback to come     Upgrade from Free to Pro    If you are upgrading aMember Free to aMember Pro  follow these instructions     1  Backup everything  both aMember Free files and database    2  Overwrite aMember free files with aMember Pro files    3  Delete amember config inc php and amember config_plugins inc php   4  Run http   yoursite com amember setup php   IMPORTANT  enter exactly the same database settings  Member Pro setup will not  delete any tables or data  it just upgrades database structure to work with latest aMember  Pro version     Read more about Initial setup process ffe    Upgrade Pro to newer version    1  Backup database and aMember files   it is IMPORTANT  Use aMember CP   gt  Backup Db to get a copy of MySQL database       O 2002 2006  CGI Central          19    aMember Pro             and use FTP client to get copy of entire aMember folder     2  Rewrite aMember files with new version  Usually you may keep your customized  USER SIDE templates  folder amember templates      however you MUST upgrade ADMIN SIDE template files  folder amember templates admin     and don t forget to upload new user side template files  which have been not present in the  installed version           3  Run http   www  yoursite com amember admin upgrade_db php  It 
49. le  This is very important   You MUST rename the file  amember plugins payment  payflow_link ipn php to       O 2002 2006  CGI Central          27    aMember Pro             something hard to guess   For example  amember plugins payment  payflow_link ix33kn_115 php  Please make a note of this name  you ll need it later   Configuring the aMember Payflow Plugin  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From the top menu on this page click PayFlow  The Configuration   PayFlow screen opens  NOTE  If there is no PayFlow link in the top menu  this means you have not enabled the  PayFlow plugin  Please see Installing PayFlow Plugin  In the Configuration   PayFlow screen there are two parameters to configure   e Your PayFlow Username  e Your PayFlow Partner Name  e These will have been supplied to you when you signed up with PayFlow     Configuring Your PayFlow Account  For PayFlow to process payments correctly and pass the relevant information back to  aMember   Login into your Payflow Link account  On the menu click on the Account Info link  From the left menu select the Payflow Link Info link  There are a number of parameter to set in this screen   Return URL Method  Set to POST  Return URL  Set to http   www  yoursite com amember thanks php  Silent Post URL  Set to  http   www  yoursite com amember plugins payment payflow_link ipn p  hp  Replacing ipn php with the new name you gave this file ea
50. low Link coccion ic aaa nn 26  114100  6100 EE 28  e CN 28  Other E UE 29  Protection Plugins 31  Using New CET 31  Using mod_rewrite with php_include sense 32       O 2002 2006  CGI Central       Contents Il       Part VI  1    Part VII       OO MN Oa BR ON      Part VIII  1    a P    N             Using php  include EERSTEN de SE ok RA SAD AD don EENEG Ee 33  Using auto prepend with php include nes 35  Using PASS WA E 36  Third party Plugins 39  BulletiniBoard Plugins  diia ad 39  aMember Admin CP Guide 42  Set  p Co  figuratio EE 42  Configuring PIUQINS eege ee EE 43  Managing Products ss       44  Products Renewal Groups 00e rennes EES ENEE 46  Managing USES Ze 47  Managing Payment 5     49  COUPONS Red ee 50  Error and ACCESS E 51  IP based access Control    oke kon ia donn bo do n on ERE EEN rek ka kako a EE E daa 52  Customization 55  Templates  CUSTOMIZATION 5    iaa 55  Creating header and footer files             ccsscsecseecseesseeseesseesenseeseneneeesnenseeseeseeesensnesseeseneneesseeneeseensenesseeseersnenenenneees 55  Adding login form anywhere on your Site ss nnneenensessnnenss 56  Include member s data into pages                           aneneenensneennnss 57  Adding ae  Cl EE 57  Creating new integration plugins sense 59  FOW TO STATE sti li 59  Understanding user record EE 60  How to setup a plugin HOOK    coccion aaa iin 60  Plugin hooks   member status        unnuussnusssnnnnnnnennnnnnnnnnnnnnnnnnnnnnnnnnnnennnnnnnnnnnnnnnnnnnnnnnnnnnnennnnnnnnnnnnnnennn
51. ludes an automated set up for your database    If you are experienced in installing scripts  this Quick Guide will have you up and running in  minutes  If you are less experienced you may prefer to follow the more detailed Step by Step  Instructions  101     Installation Quick Guide  Unpack the distribution of the script   FTP the entire aMember folder to your public HTML directory in binary mode   To use the Web Based Setup browse to   http    www yoursite com amember setup php  If setup script requires  make the following folders writeable for the script  chmod 707 or  777 depending on server configuration    e amember data   e amember data new rewrite     Follow setup script instructions ffe    3 3 Step by Step    Installation is quite easy   If you are experienced in installing PHP scripts  the Quick Guide  10  will have you up and  running in minutes  Otherwise please follow these detailed step by step instructions     Installation Step by Step Instructions   1  Unzip the distribution of the script  To do this you will need an unzipping utility with  support for long filenames  WinZip is suitable    2  You now need to FTP the script files to your server  using an FTP client such as  WS_FTP  It is important that   Member files are copied to the correct place in your  directory structure  The aMember folder should be copied to your public HTML  directory   this is the directory where your home page is located  often called    html_docs    public_htm1  or something similar 
52. n    e Select a product from the drop down Products List to subscribe this member to   e Set the period  start and end dates  of the subscription   e Select the payment method   By default  when subscribing a member through the Control Panel  Manual Payment  1s selected  but you can choose any payment method that you have configured   e Enter the amount paid   this will be displayed to the user in their payment history   e Tick the checkbox to mark the subscription paid   e Click  Add    you will see a message  Information has Been Saved  Return to the payments screen for this user by clicking the  User Payments Subscriptions  link  on the top of the page  You will see that the information you just added now appears in the  member s list of subscriptions     Complete and Incomplete Subscriptions   A subscription does not necessarily give a user immediate access to protected content    If payment was not completed  if you have configured the script to require admin approval of  new subscriptions or 1f you have not ticked the  Paid  box when adding a manual subscription   then the subscription will initially be incomplete    An incomplete subscription does not give the user access to any content  The administrator  can manually change a subscription from incomplete to complete by ticking the  paid  box in  the  User Subscriptions Payments  screen     Edit a Payments Subscription  To edit an existing subscription   Open the aMember Admin Control Panel  Click on Browse Users from
53. n 62  after logout 62  auto prepend with php include 35     B     Bulletin Board Plugins 39     C     check logged in 62  check ung login 63  CSS 55      D     delete payment 65  delete user 65    En    expired members 47    By  n    fill in signup form 63  finish waiting payment 64     G     get_payment 65  get_user 65  get_user_payments 65     H     htpasswd 36    Member 47  mod_rewrite with php include 32     P     payment 49   php include 33  Plugins 43  Product 44  Protection Plugins 31    Setting up IP Checking with  htpasswd 52  Setup plugin hook 60   Signup 6   site inc php 63   Subscription 49   subscription added 61   subscription deleted 61   subscription rebuild 61   subscription removed 61   subscription updated 61     T     Third party scripts integration 7  This is the URL to the content to which you wish this  product to give access  44     U     update payment 65  update payments 64  update user 65    Ve    validate member form 64       O 2002 2006  CGI Central    Index          validate signup form    64       68          O 2002 2006  CGI Central             69    aMember Pro             Endnotes 2     after index        O 2002 2006  CGI Central    
54. nal injury or death caused directly by the negligence of CGI CENTRAL  in no  event will CGI GENTRAL be liable to you for any damages  including any lost profits  lost savings  loss  of data or any indirect  special  incidental or consequential damages arising out of the use of or inability  to use such Software  even if CGI CENTRAL has been advised of the possibility of such damages   Nothing in this Agreement limits liability for fraudulent misrepresentation     This licence gives you specific legal rights and the you may have other rights that vary from country to  country  Some jurisdictions do not allow the exclusion of implied warranties  or certain kinds of  limitations or exclusions of liability  so the above limitations and exclusions may not apply to you  Other  jurisdictions allow limitations and exclusions subject to certain conditions  In such a case the above  limitations and exclusions shall apply to the fullest extent permitted by the laws of such applicable  jurisdictions  If any part of the above limitations or exclusions is held to be void of unenforceable  such  part shall be deemed to be deleted from this agreement and the remainder of the limitation or  exclusion shall continue in full force and effect  Any rights that you may have as a consumer  i e  a  purchaser for private as opposed to business  academic or government use  are not affected     General   This Agreement constitutes the complete statement of the agreement between you and  CGI CENTRAL  an
55. net scripts amember features php paysys       O 2002 2006  CGI Central       7 aMember Pro                2 3 Expiration and subscription renewal    All members  even those who did not pay or whose payment has been failed  can access  the aMember members page  http   www  yoursite com amember member php      On this page they will see    e Links to membership areas which they are allowed to access  is to which subscriptions  are completed and not expired    e Logout link   e Link to update profile info change password   e List of completed payments  if subscription is recurring  a subscription cancel link will  be displayed near every active recurring subscription record    e Controls to renew subscription or order another subscription type product     To add renew a subscription  users must select a membership type  a payment method and  press a button  then they are redirected to a payment system page and payment will be  exactly the same as for initial signup  If a user already has a subscription to the same  subscription type  product   the new subscription start and expiry dates will be calculated  from the day when the existing subscription expires     Read about protection abilities ES    2 4 Protection    aMember can generate an authorization database for any number of protected  destinations  For example  it can generate  htpasswd and  htgroup files  which are suitable  for authorization on Unix platforms     aMember handles subscription expirations and expired membe
56. nnnnnnnnnnnnnnnnnnen 61  Ile CH e UE CEET 62  Plugin hooks   signup helpers        unnuussnusssnnnnnnnennnnnnnnnunnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnennnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnen 63  Extending aMember with PHP        unzessnnssnnnnnnenennnnnnnennnnnnnnnnnnnnnnnnnnnnn nennen nennen nnnnnnnnnnnnnnn nennen 63  HOOKS    Validation TUNCUONS eee A 64  HOOKS   payments Update    pk snas a kosadninoseb kane  siusnn Sia asrandi rook egeeg 64  A AAA 65  Index 67       O 2002 2006  CGI Central       Foreword                   O 2002 2006  CGI Central             aMember Pro             1 1    Introduction    aMember Pro is a PHP script for creating protected areas on websites with payment  processing options  This document covers aMember Pro installation  configuration and  customization     This document is a setup customization guide for aMember Pro script users  It describes the  process new users should follow to install the script on their web site and customize it to their  needs     Much of this guide assumes that the user is familiar with FTP and HTML  Certain parts also  require basic knowledge of PHP  but all these parts are optional and may be skipped     Less experienced users will find it easier to follow the longer step by step installation guide  and will find links to additional information at various points in the Guide     aMember Pro website  http   www cgi central net scripts amember   aMember Pro Licence Agreement    aMember Pro   the Software 
57. ns  Select Protection Plugins  A list of the options available for protection appears  select htpasswd     Step 2  Place  htaccess files in Protected Directories  If you are unfamiliar with  htaccess files and how they work please read this page before you    begin     Each directory that will be protected must contain a  htaccess file which specifies the product  which gives access to that directory   Creating Your  htaccess Files    For sample  htaccess files  specifically configured to work on your server  click  Setup Configuration in the left menu of the aMember Admin Control Panel and  choose htpasswd from the top menu    The file will look something like this     AuthType Basic   AuthName  My Protected Directory    AuthUserFile   home virtual site91 fst var www html amember data  htpasswd  AuthGroupFile   home virtual site91 fst var www html amember data  htgroup  Require group PRODUCT 2          For each directory you wish to protect  create a  htaccess file by copying the code from  your aMember Admin Control Panel into a plain text file and editing the line    Require group PRODUCT 2   to reflect the product number or numbers which give access to the directory  If  multiple products give access to the same directory  edit that line as follows    Require group PRODUCT 2 PRODUCT 5 PRODUCT 9   listing all the products that allow access  Save the file as  htaccess and upload to the  relevant directory        How it Works in Practice   Normally when an user enters a URL 
58. odical jobs  update membership status  rebill  customers  etc  without additional setup  However  it is more reliable to setup an external  cron job  If your hosting   control panel supports setting up cron jobs  please do the  following   e Goto aMember CP   gt  Setup   gt  Advanced and enable  Use External Cron   setting   e Goto your webhosting control panel and setup a cron job that will run URL  http   www  yoursite com amember cron php at 00 00 everyday     Please read the following topic for more details  421     Congratulations  You have successfully installed aMember     How to set cron job    What is a cron job    The cron job is a sheduled task on the hosting server  You may choose to run specific  program in specific time  periodically  In case of aMember Pro  we have to call   Member Pro  page  yes  just regular page  http    yoursite com amember cron php  With browser   However  your hosting is using Linux Unix  so there is no usual browsers like IE or  Netscape    We will use command line text mode browser  named Lynx  You may run it on Unix with the  following command   usr bin lynx  source   Line  usr bin  lynx  source http    yoursite com amember cron php will access specified  URL and display HTML source of page  In our case  we don t need any output  we just need       O 2002 2006  CGI Central          13    aMember Pro             our page to be accessed  so we will ignore output     Setting it up  We will provide here instructions for CPanel based contro
59. ok  subscription added    plugin template added     It means that for even subscription added  aMember will run function   plugin template added  There can be several hooks called for the same event        O 2002 2006  CGI Central       61       aMember Pro             8 5 4    Plugin hooks   member status    These hooks called when changes made to aMember database and you need to update your  third party members database     subscription added  member id   product id   member   This hook will be called when user subscription status Smember  data    status     changed to active  1  for product with ID    product id  In this case  you have to add  or  update  member record in your database  or execute some other actions regarding this  event     Please note   because user may have subscriptions for several products  your database  may already hold this customer record  Then you should update it with new password  for  example and you should unlock customer record if necessary     It is important to understand this hook is not necessary called for every payment  It is  called only when user status for product changes  So  when user already have active  subscription for product  and he orders this product again  this hook will not be called  If  you need to call a function for every member payment  have a look to    finish waiting payment  plugin hook     subscription updated  member id   oldmember  newmember   This hook will be called when user  or admin  updates profile  You s
60. period and other parameters are the same as in aMember  Write  down the 2checkout product numbers of any products you create in 2Checkout   you will need  them when adding products in aMember        O 2002 2006  CGI Central       25       aMember Pro             4 4    2Checkout doesn t return any information if a recurring payment fails or if it is cancelled   Instead  you will receive notification by email from 2Checkout  Once you receive this  notification  login into your aMember Admin Control Panel and set the expiry date for this  user to yesterday s date  This automatically disables the subscription but allows you to keep  the history of your charges and customers  It is preferable to use this method instead of  deleting anything     ClickBank    First you need to install the ClickBank Plugin  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From the top menu on this page click Plugins  The Configuration   Plugins screen opens  Select the ClickBank Plugin from Payment Plugins  Click Save    Accepting Payment with ClickBank   Before you can use aMember to take payments via ClickBank  you must products in your  ClickBank account  These products represent your future subscription types in aMember    The ClickBank account is also useful for testing aMember  To start testing  enter 0 for the  price into ClickBank product settings  Then you may signup as real user  but without entering  real credi
61. ported by aMember  It is recommended to always have the  free   plugin enabled  It will not be displayed in payment methods list  but is useful for testing  and allows the Administrator to add members free of charge in the   Member Admin  Control Panel    You can enable multiple plugins by holding down the Ctrl key while making your  selection     e Protection Plugins   A list of the options currently available for protecting your pages directories    You can enable multiple plugins by holding down the Ctrl key while making your  selection     Configuring Plugins  Once you have added Plugins  a new menu item relating to each installed plugin will appear       O 2002 2006  CGI Central       aMember Admin CP Guide 44                on the top of the Configuration   Plugins screen  Click on the link to each plugin you  installed to complete configuration  Instructions for each plugin are available elsewhere in this  Guide  please consult the section relating to the plugin you are configuring     7 3 Managing Products    What is a Product    Understanding the concept of a  product  or subscription type is central to understanding how  the aMember script works    Many membership management scripts limit you to having just one subscription type   protecting a single directory  This is not the case with aMember  You can have any number of  subscription types  each relating to a protected directory or a set of files  Each subscription  type is referred to as a Product     A product c
62. r  example if you set it as 10 25 will result to  10 25 commission  Or you can set it to be a  percentage from amount paid  for example  1 5   Also  don t forget to choose payout  methods that you will use to pay out your affiliates    Go to aMember CP   gt  Setup Affiliate Banners  you will need to re login into your  aMember CP to start seeing this link  You have to setup some banners and text links that  your affiliates will use to advertise your website  Add at least one text link  if you don t  have banners yet    Last  but not least  you have to make affiliate cookies working  Recent version of IE and  other browsers have the following  feature    it don t store permanent cookies from  websites that don t have P3P policy  Please read this website http   www  p3ptoolbox org   then build and install your own P3P policy    Now  every member of your website  even those who never paid  can go to  yoursite com amember member php and click link named  Advertise our website to your  friends and earn money     Once he clicks this link  he will see pages with text links and  banners that you set on step  3        When new customer comes by affiliate link and places order  affiliate will be credited    corresponding commission  aMember Pro tracks all clicks and commisions  this  information is available for both admin and affiliate       After some time  you have to go aMember Cp   gt  Affiliate Commissions  choose payout    method  only affiliates choosed this method will be disp
63. rants the same level of access must have the same Renewal Group value  If  this field has negative numeric value  it will always set subscription start date to current date   allowing member to have several subscriptions to the same product     Examples    1  Site offers one level of access       O 2002 2006  CGI Central          47    aMember Pro             7 5    For example  there are only 2 products exists in aMember       Monthly Subscription RENEWAL GROUP set to BASIC    Year Subscription RENEWAL GROUP set to BASIC    In this case  you should set  Renewal Group    for both products to something like  1  or   BASIC     or any other equal value  Default empty value will also work fine    If your site offers only one level of access  Renewal Group must be set to the same value for  all products  and then new subscription period will be added to existing     For example  user has existing Monthly subscription  Jan 01  2006   Jan 31  2006  Jan 15 he  comes tO amember  member  php and orders a new Yearly Subscription  It will be added with the  following period  Feb 01  2006   Feb 01  2007   This way customer never loose paid period     2  Site offers not related products with different level of access  For example there are the following 2 products       Subscription to Football News RENEWAL GROUP set to FOOTBALL    Subscription to Baseball News RENEWAL GROUP set to BASEBALL    In this case  products are unrelated and subscription dates should not be added when user  orders
64. ray of  submitted values  You may check it and return array of errors  If no errors found  you may  return empty array   This function is extremelly useful  when you added some fields and need to validate  entered values for these fields  This function can also change submitted variables   validation goes before any processing      Example  validates additional phone and fax fields     function vsf  amp Svars          Serrors   array     if   strlen   vars  phone      Serrors      Pleas nter phone number   if   strlen Svars  fax      Serrors      Please enter fax number           setup_plugin_hook  validate signup form    vsf     validate member form 8  vars   This function will be called when user submits renewal form from  http    www yoursite com amember member php   vars is an array of submitted values   You may check it and return array of errors  If no errors found  you may return empty  array  Please note  that this form doesn t contain any member info  However  you may get  member info from session     8 6 2 Hooks   payments update    finish waiting  payment  payment id   This function called when payment subscription  status changes to Paid   Completed     Then you can retreive info from database about payment and use it to execute some  actions   Please note   if admin switches payment status Paid     NotPaid     Paid from control  panel  this function can be executed twice for the same payment  Be careful   Example of this hook function   function fwp   payment_id 
65. rlier   Also check the box near this field   Force Silent Post Confirmation  Check this box  Failed Silent Post Return URL  Set to    http   www  yoursite com amember plugins payment payflow_link faile  d_ipn php       When testing  you may disable real transaction processing  recommended    To do that  set Transaction Process Model to TEST  Click on Save Changes button           2002 2006  CGI Central       Payment Plugins 28          4 6    4 7          WorldPay    First you need to install the WorldPay Plugin  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From the top menu on this page click Plugins  The Configuration   Plugins screen opens  From Payment Plugins  choose the WorldPay plugin   Click Save    Accepting Payment with WorldPay  There are two steps in setting up aMember to receive payments via WorldPay    e Configure the aMember WorldPay Plugin  e Configure your WorldPay Account    Configuring the aMember WorldPay Plugin  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From the top menu on this page click WorldPay  The Configuration   WorldPay screen opens  NOTE  If there is no WorldPay link in the top menu  this means you have not enabled the  WorldPay plugin  Please see Configuring Plugins   In the Configuration   WorldPay screen there are just two configuration items   e WorldPay Installation ID  e Thi
66. rs will not get access to  protected areas    Member can also act as an authorization source itself  checking  authorization in the database  when someone tries to access a protected area protected  with the php_include method     1    All protection methods are fully described in separate chapter   Protection Plugins  s    Read about third party scripts integration  74  2 5 Third party scripts integration    aMember can be integrated with third party scripts  such as bulletin boards  Content  Management Systems  trouble tickets systems and so on    For example  it can maintain a vBulletin Board database  so that only active  paid and  not expired  members are able to access the board  Thus a user can have a single login for  both aMember and vBulletin and  in case of vBulletin board  will need to login only once  in to access protected areas with HTML content and the vBulletin board     Full list of available integration plugins can be found here           2002 2006  CGI Central    How it works          http   www cgi central net scripts amember features php protect                   2002 2006  CGI Central          Installation 10                3 Installation    3 1 Requirements    e PHP version 4 1 0   e MySQL version 3 23   e Apache  generally Unix based  hosting  only if protection is required      If you are unsure whether your hosting meets these requirements  please contact your host  company for confirmation     3 2 Quick Start    Installation is easy and aMember inc
67. s to PHP and allows you to authenticate  users using the database  You don t need to change file extensions nor do you need to change  the content of files   It is particularly useful for adding paid membership support to an existing site   Useful if   e You wish to protect html files   Not useful if   e SSI tags will not be handled in converted files  so if you use  shtml files this method is  not suitable for you  e Images  downloadable content or other non html files are included in your protected  content   Requirements  PHP compiled as Apache module  See your hosting server information if you are unsure  If you able to execute  php files   then you are probably ok     Setting Up Protection   Note  use aMember CP   gt  Protect Folders function instead  Described below is a manual  procedure  and should be used only if aMember CP   gt  Protect Foldes doesn t work for you by  some reason           Step 1  Add a  htaccess file to the protected directory  For this plugin to work a  htaccess file must be added to the directory you wish to protect   The following is the content you need for the  htaccess file     AddType application x httpd php  html   AddType application x httpd php  htm   php  value auto prepend file   home yoursite public_html   path to protected folder protect inc php     Be sure to replace  home yoursite public html path to protected folder  to  the actual path to the folder where  htaccess and protect inc ph files located     Step 2  Create and add protec
68. s will have been provided to you when you signed up with WorldPay  e Test Mode  e Leave at Yes until you have set up products and completed some test transactions     Configuring Your WorldPay Account  Login into WorldPay Control Panel  Set Postback URL to     http   www  yoursite com amember plugins payment worldpay ipn php    You are now ready to receive payments through WorldPay     Free    Free Signup is an payment plugin which allows you to create sites with free membership   Even if you are not offering free membership it is recommended that you enable this plugin  it  will not appear on your signup page  To use free signup products need to have a price of  0 00    ie to be free  This plugin is always enabled and it is impossible to disable it  It is hidden in  payment systems list on signup page and will be automatically used for payments with zero  total amount           2002 2006  CGI Central          29    aMember Pro             4 8    Configuring the Free Signup Plugin  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From the top menu on this page click Free  The Configuration   Free screen opens  NOTE  If there is no Free link in the top menu  this means you have not enabled the free  signup plugin  Please see Configuring Plugins   In the Configuration   Free screen there are two parameters to configure   e Require admin approval for new payments  e If Yes  New signups will NOT be abl
69. session cookie   headers already sent by  output started  at    Include member s data into pages    1  Adding Member data to the Member profile Page   It is possible to include data from the members table in the database in your Member Profile  page  For example  you may wish to include a  Welcome John Doe  message at the top of the  Member Profile page    To do a u the file templates member htm1  adding the following     arty sess       LE DL ii amemb er user name   f    marty session  amember user name SR   Youc can also add aiiditionial EEN For example the following would add the membere  phone number      Ssmarty session  amember user data phone           2  Adding Member Information to PHP Pages   If you are using PHP pages on your site  you can also add member information to additional  pages  In this case you are using session information to add the data  it will only appear when  amember is logged in    To add a welcome message use the following code         SESSION   amember user    name f          er_user     name_l          an added fields must be used as    SION   amember user    data    phone     Adding new fields    There are two set of additional fields that can be added to the aMember signup page and thus  to the Member database     1  To add fields already in the database    By default the following fields are not included in the sign up form   e street  text   e city  text   e state  text or select  your choice   e zip  text   e country  text or select  your
70. t   templates login htm        Adding a Logout Link   To add a Log out link anywhere in your protected area you can can use the link  http   www  yoursite com amember logout php   You can set where user will be redirected after logout at the amember CP   gt  Setup   gt   php_include  By default  the user will be redirected to http    www  yoursite com       Using htpasswd    This plugin will work to provide protection on any Unix based hosting plan  It will protect all  content in any protected directory  However there are some disadvantages compared to using  php_include plugin   for details see here 151 If it is possible for you to do so we recommend  that you use a php_include method   Useful if    e You require strong protection but are not able to use php_include   Not useful if    e You expect to have a very large database of members  There are some limits to   database size with this method    Requirements   No special requirements    Setting Up Protection   Note  use aMember CP   gt  Protect Folders function instead  Described below is a manual  procedure  and should be used only if aMember CP   gt  Protect Foldes doesn t work for you by  some reason                 2002 2006  CGI Central          37    aMember Pro             Step 1  Enable htpasswd plugin   Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From the top menu on this page click Plugins  The Configuration   Plugins screen ope
71. t card information    There are two stages in setting up aMember to receive payments via PayFlow    e Configure the aMember ClickBank Plugin  e Configure your ClickBank Account    Configuring the aMember ClickBank Plugin  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From the top menu on this page click ClickBank  The Configuration   ClickBank screen opens  NOTE  If there is no ClickBank link in the top menu  this means you have not enabled the  ClickBank plugin  Please see Installing ClickBank Plugin  In the Configuration   ClickBank screen there are two parameters to configure   Your ClickBank Account Name  This will have been supplied to you when you signed up with ClcikBank   Your ClickBank Secret Phrase  Enter a word or series of characters  Make a note of this   you will need it later     Configuring Your ClickBank Account  For ClickBank to process payments correctly and pass the relevant information back to  aMember           2002 2006  CGI Central       Payment Plugins 26                Login into your ClickBank account  On the top of the page click on the Click HERE to modify your account link    On the next page click again on the Click HERE to modify your account link   At the bottom of this page you will find the THANK YOU page fields   For each of your products  subscription types  you have to enter a number of parameters     Thank you page   http    www yoursite com amember plugins
72. t inc php file  Open a text file and add the following to it     2     product id   array  1 3     require_once   home yoursite public_html   amember plugins protect php_include check inc php    2         O 2002 2006  CGI Central       Protection Plugins 36       5 5             Be sure to replace  home yoursite public html amember  to the actual path to your  aMember folder  It can be found at amember CP   gt  Info     Note  You must edit the   product ia array to reflect the aMember product which gives  access to the pages in the directory  For example  if access is confined to those with products  1 and 3 it will be as above  If it is confined to those with products 2 and 5 you would use     product  id   array 2 5      How it Works in Practice  The server will now treat all  html files in the directory as  php files and will include the PHP  file protect  inc php at the top of all these files   When a user enters a URL to a protected page the aMember login form is displayed and the  user enters a username password  This information is compared to entries in the member  database to determine whether a user has the right credentials  e Ifthe user has an active subscription to the product or products as defined in   _product_id then the protected page will be displayed   e If the user is not authorized yet  or has an expired subscription  then the login form is  displayed again with an error message   The login form is template based and can be customized  you will find it a
73. te in the aMember Admin Control Panel  before the user will have access     Secondly  the PayPal Recurring plugin behavior may appear strange  but it is correct  It sets  the expiry date for any active subscription to a future date in the year 2012  When the  subscription is cancelled  the expiry date is automatically set to yesterday s date   it disables  subscription access automatically     Third  it is not required to change IPN URL in your account if you have it already entered   from another script  for example   It does not matter which IPN URL is entered  it is only  required that IPN is enabled in PayPal account  aMember will anyway pass IPN URL with  each payment request  and PayPal will use given URL  it overrides setting in PayPal account      MOST IMPORTANT   Email address entered into aMember settings MUST match your  PayPal account primary email address  else automatic payment confirmation will not work     4 2 PayPal Pro    This plugin uses new WebPayments Pro PayPal interface  It offers nice features like  processing credit cards directly on your website  but 1t does not support recurring billing     STEP I  CREATE AND CONFIGURE TEST OR LIVE PAYPAL ACCOUNT        Sandbox  for tests        1  Visit http   developer paypal com and create a developer s account    2  Click on the  Sandbox  tab  then click on  Create Account     4  Create a Sandbox account just as you would a normal Paypal account        O 2002 2006  CGI Central          23    aMember Pro         
74. tering  Yes  does not preclude a member from having multiple  subscriptions   any member can have multiple subscriptions which they can access  using the same email address  username and password    e Use Address info          2002 2006  CGI Central          43    aMember Pro             7 2    e If  Yes  then users will be asked to enter their full postal address when they  sign up   e If No  no fields for address information will appear in signup forms and this  information will not be requested     Advanced Configuration   To open the Advanced Configuration screen   Open the aMember Admin Control Panel  From the left menu  click Setup Configuration  aMember Pro Configuration   Global screen opens  From the top menu on this page select the Advanced link    Configuring Plugins    A number of the functions of aMember are provided by using plug ins  a system which  enables individual administrators to choose precisely the functionality they require    After basic configuration is complete the next step is to enable the plug ins that you will be  using     How to Install Plug ins  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From the top menu on this page click Plugins  The Configuration   Plugins screen opens  There are two categories of Plugin on this page     e Payment Plugins   A list of the payment options currently available  that is the different payment processors  and payment methods sup
75. tion  Please refer to the notes beside each field before  completing them   e Renewal Group  This field explained in the next topic    6      Edit a Product  To edit an existing product    Open the aMember Admin Control Panel   From the left menu  click Edit Your Products   The Products  Subscription Types  List opens   Click the Edit link in the Actions column of the product you wish to edit   Changing the details of a product will NOT affect existing customers     Delete a Product  To delete a product   Open the aMember Admin Control Panel  From the left menu  click Edit Your Products  The Products  Subscription Types  List opens  Click the Delete link in the Actions column of the product you wish to delete    NOTE  You cannot delete a product to which there have already been subscribers  If you  wish to delete a product to which there are already subscribers  you must first delete all  subscriptions to the product    See Managing Payments l49 for details     Products Renewal Groups    Renewal Group setting    Value in this field in product settings defines how aMember will calculate subscription start  date when user renews his membership or adds a new subscription via amember member   php  page  If user already has a subscription to a product WITH THE SAME renewal group   aMember will use expiration date of previous subscription as start date for new subscription   If user has no such subscriptions  aMember will use current date as start date  Basically   products which g
76. tm1 page determines the font style  and size of the text on script pages and the background colors of tables and table cells  It can  be edited to make the styles match your own site    The CSS information in the header template can be removed to your existing external  stylesheet  just make sure the link to that stylesheet is correct in the header template        Customizing Other Script Pages   Each page in the aMember user interface has a corresponding template page which you can  edit  For example the file  aMember  signup   pnp has the corresponding template   amember templates signup html   Editing these pages is straightforward but as they each contain PHP and or Smarty code  essential for the functioning of the script it is important to be careful when you make your  changes        Creating header and footer files    The easiest way to create custom header and footer files is to start with an existing page on  your site  Follow these steps   e Open an existing page on your site and save it in a new name   say amtemplate html       O 2002 2006  CGI Central       Customization 56                e Remove all the content you do not wish to include in the aMember pages   e You need to change all the urls in the HTML from relative to absolute  Links  image  paths and so on must all be changed     For example if you have a link to your home page that reads      a href index html gt   this must be changed to    a href http   www yoursite com index html      Similarly if you h
77. to a page protected with  htaccess an ugly gray login  screen will pop up  After latest Internet Explorer fixes  it is impossible to avoid this login box   You can use advanced protection methods  php  include in different combinations  to avoid it        O 2002 2006  CGI Central             39       aMember Pro          6 1    Third party Plugins    Bulletin Board Plugins    Bulletin board plugins function in very much the same way  regardless of the particular  bulletin board involved    Please note that it is advisable  before installing and using the Bulletin Board Plugin  that you  have already installed your Bulletin Board and set up the various user groups you need in the  Bulletin Board administration     Overview    e When a user signs up in aMember  the aMember script checks for an existing user  with the same username in the Bulletin Board database     If the username is not found  The user can complete aMember signup in the normal way   If the username is found  aMember checks whether the same email address and password are associated  with it  e Ifthe email address and password details are NOT the same the user  will be asked to chose another username as the one they have chosen is  unavailable  e H the email address and password details ARE the same  the user will  be allowed to complete their signup with aMember    e When a user completes payment  aMember will add a new user record in the Bulletin  Board  or  if appropriate  will upgrade the members record   se
78. to process payments correctly and pass the relevant information back to aMember   you need to set the PayPal IPN  Instant Payment Notification  URL  To do this you must Login to your PayPal Account  The next step will depend on whether you  are using a Personal or a Business Premium account   e PayPal Business Account  Log in to your Business or Premier PayPal account  Go to the Profile subtab  Click on Instant Payment Notification Preferences link in the Selling  Preferences column  Click Edit  Check the box and enter the URL to the file ipn php in your installation     http   www  yoursite com amember plugins payment paypal r ipn ph  p       O 2002 2006  CGI Central       Payment Plugins 22                 please read note below regarding this URL   Click Save  e PayPal Personal Account  Log in to your Personal PayPal account  Go to the Sell tab  Click on Technical Overview link in left hand menu  On the Technical Overview page  click on the Start using IPN link  Click Edit  Check the box and enter the URL to the file ipn php in your installation     http   www  yoursite com amember plugins payment paypal r ipn ph  p   please read note below regarding this URL     Click Save    Important Notes  Before you start  there are a couple of things to note     Firstly  for payments through PayPal to be processed automatically by aMember you MUST  have a business or premium account  If you use a personal account you will have to approve  the payment in PayPal and then mark it comple
79. up page  you have to edit the template  templates signup htm1 and add text input field named    company        To Add Select Fileds    This is    a similar procedure to that described above  For the purposes of this example let s    assume you want to ask where people heard about your site     Open the file config inc php   Add the information for the select or radio button at the bottom of the  config inc php file  just before    gt     Add the following at that location     add_member_field  where_heard    Where did you hear about       O 2002 2006  CGI Central       59       aMember Pro             8 5    8 5 1          us      select   select where you heard about our site    df   array   options    gt  Sitems   array     link    gt   Link from another site     friend    gt   Referred by a Friend     press    gt   Newspaper or Magazine     other    gt   None of the above              Sconfig  where heard items     Sitems     The select box will now appear in the Admin Control Panel in the member profile  To add the field to your sign up page edit the file templates signup html  Using  the following     ET      lt th gt  lt b gt Where did you hear about us  lt  b gt  lt br gt    lt small gt please stell us how you heard about out  site  lt  small gt  lt  th gt      td nowrap gt  lt select name where heard size 1 gt    html_options options Sconfig where  heard items  selected S smarty request where heard       select      lt  td gt     lt  tr gt        Add Field to Payments
80. will upgrade database structure without losing of any data     4  Check everything  we recommend you to run a test payment           2002 2006  CGI Central             21    aMember Pro             4 1    Payment Plugins    PayPal    This plugin uses traditional PayPal integration interface and supports both recurring and  non recurring payments     First you need to install the PayPal Plugin  Open the aMember Admin Control Panel  Click on Setup Configuration from the left menu  The Configuration   Global screen opens  From the top menu on this page click Plugins  The Configuration   Plugins screen opens  Keeping ctr   key pressed  click to paypal r plugin in the payment plugins list  Press Save    Accepting Payment with PayPal  There are two stages in setting up aMember to receive payments via PayPal    e Configure the aMember PayPal Plugin    e Configure your PayPal Account  Configuring the aMember PayPal Plugin    Open the aMember Admin Control Panel   Click on Setup Configuration from the left menu   The Configuration   Global screen opens   From the top menu on this page click PayPal   The Configuration   PayPal screen opens  NOTE  If there is no PayPal link in the top menu  this means you have not enabled the  PayPal plugin  Please see Configuring Plugins   In the Configuration   Paypal screen there is just one piece of information to enter  the email  address used by the PayPal account you want to use to receive payments     Configuring Your PayPal Account  For PayPal 
81. xisting content is in standard  html files rather than  php files  see php_include with  auto_prepend ss    Useful if    e All your protected content  including images  is stored in PHP files   Not useful if    e Images  downloadable content or other non PHP files are included in your protected   content           2002 2006  CGI Central       Protection Plugins 34                Requirements  mod rewrite available from  htaccess files  see below   PHP compiled as Apache module  See your hosting server information if you are unsure  If you able to execute  php files   then you are probably ok     Setting Up Protection   Note  use aMember CP   gt  Protect Folders function instead  Described below is a manual  procedure  and should be used only if aMember CP   gt  Protect Foldes doesn t work for you by  some reason           Step 1  Include check inc php in your pages   For this plugin to work the file  ammember plugins php  include check inc php  must be included at the very top  before the opening  lt html gt  tag  of the PHP pages you  wish to protect as follows      _product_id   array 1 3    include   aMember_Root_Dir plugins php_include check inc php       any existing PHP code goes here    Note  You must edit the  _product_id array to reflect the aMember product which gives  access to the page  For example  if access is confined to those with products 1 and 3 it will be  as above  If it is confined to those with products 2 and 5 you would use     product id   array 2 5   
82. your protected HTML pages  following code      script src  log access inc php      script     or    lt img src  log access inc php  width 1 height 1 gt    The above assumes that the log access inc php file is in the same directory as the pages to  which the code is added  as it should be        O 2002 2006  CGI Central          55       aMember Pro             8 1 1    Customization    Templates Customization    The appearance of aMember is totally template based  which means it is easy to customize it  to match the rest of your site     Finding the templates   Customizing Header and Footer Files  Customizing the CSS   Customizing Other Script Pages    Finding the Templates  The templates which determine the appearance of the front end  that is the parts visible to  users  are located in the folder  templates     Templates which determine the appearance of the Admin Control Panel are located in   templates admin     Customizing Header and Footer Files   For many people customizing the header and footer files will be all that is required  since this  can make the pages immediately look like the rest of your site  You may use any HTML you  wish in these files  but be careful to ensure that you URLS and paths are all valid from the  aMember directory    If you are inexperienced at creating header and footer files please see here for a detailed  description of how to create custom headers and footers     Customizing the CSS   The CSS in the head of the default  templates header h
83. ywhere in your protected area you can can use the link  http   www  yoursite com amember logout php  You can set where user will be redirected after logout at the amember cP   gt  Setup   gt   php_include  By default  the user will be redirected to http   www yoursite com             2002 2006  CGI Central       Protection Plugins 32                5 2 Using mod_rewrite with php include    This plugin allow you add cookie based login for protected content  Any kind of files   HTML  images  downloads  CGI scripts  can be protected  except complex PHP scripts  To  protect complex PHP scripts use other method of protection    Please note  it is always better to use new rewrite  at  protection method if possible     Useful if   e You wish to protect images  PDFs or other file   Not useful if   e Your server does not support mod_rewrite   e You protect complex PHP scripts   this method will not work  You may use plain  php inlcude protection in this case   Requirements  mod_rewrite available from  htaccess files  see below   PHP compiled as Apache module    See your hosting server information if you are unsure  Usually  any Cpanel based hosting  or dedicated server will work     Setting Up Protection  Note  use aMember CP   gt  Protect Folders function instead  Described below is a manual    procedure  and should be used only if amember CP   gt  Protect Foldes doesn t work for you by  some reason           Step 1  Add a  htaccess file to the protected directory  For this plugin to
    
Download Pdf Manuals
 
 
    
Related Search
    
Related Contents
2. 調達物品の仕様および備えるべき要件 <料金  John Deere PC20577 Automobile Parts User Manual  PC702  USER MANUAL - AHS Antriebstechnik  2015 ENG user manual for side snow plow KSM  WFMLNE Software Waveform Monitor for Non  Shocker 90 IRC User Manual Rev. 1  Programme apprentissage 2015  Guía del usuario  for Merchants    Copyright © All rights reserved. 
   Failed to retrieve file