Home

aMember Pro

image

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

image

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