NATS3 Site User Management

From TMMwiki
Jump to: navigation, search
NATS 3
Sites Admin
Sites
Site Setup
Configure Redirects
ID Numbers
Automail
Site User Management
Username Checking
Join Form Errors
Free Pre-Initial Checkbox
Payouts Based on Program and Join Options
Payouts Based on Join Option and Per Option
Adding Extra Site Tours
Site Partner
Join Options
Multisite Access
Removing Join Options
Tour Setup
Site Undelete
Join Option Box vs Button
Redirecting Traffic to a Sponsor
Qualified Join Page Hits
Type-In Traffic
Allowed languages
Linkcode Decoding

NATS can send a postback to a script every time a username gets added, removed, changed, expired, or checked. Go to Sites Admin, edit a site, and enter the script's URL in the User Management URL field.

Each request identifies the username action. You script should reply with one of the following messages:

  • OK|message
  • NOTOK|message
  • ERROR|message

Replace message with a detailed explanation. NOTE: message is only recorded for the ERROR response and is otherwise dropped. See the ERROR section below.

Username Actions

ADD

Sent when a new username should be added to the user management system. Sends the following extra parameters: memberid, username, password, email, siteid, biller, trial.

MANUALADD

Sent when a username is manually added via the members admin or a biller refresh. Sends the following extra parameters: memberid, username, password, siteid, biller, trial.

TRIALTOFULL

Sent when a user changes from trial to full membership. Sends the following extra parameters: memberid, username, siteid, biller.

Note: this might be run more than once for a conversion.

CHANGE

Sent when a current username or password should be changed to a new username or password. Sends the following extra parameters: memberid, username, siteid, biller, new_username, new_password.

DELETE

Sent when a user's account should be immediately removed from the active user list. Sends the following extra parameters: memberid, username, siteid, biller.

EXPIRE

Sent when a user's account should be expired on the provided date. The date might be in the past. Sends the following extra parameters: memberid, username, siteid, biller, expire (YYYY-MM-DD format).

CHECK

Sent to check if a username is available. If the username does exist, the reply should be OK. If the username does not exist, the reply should be NOTOK. Sends the following extra parameters: username, siteid.

ACTIVATE

Send to add a member back into the table after they've been deleted. Sends the extra parameters: username, password, siteid, trial, biller, email, memberid.

Error Logging

If the reply is ERROR, NATS adds the error to the surfer's note so you can see the problem the Members Admin.


Sample Script

You may use the following sample script provided by Tanguy de Courson.

/**
* A password authentication script for the NATS user management feature
* where NATS posts the authentication to your authentication script
* 
* NB: all functions MUST print out
* OK|~message~
* or
* NOTOK|~message~
* or
* ERROR|~message~
*
* @author Tanguy de Courson
*
**/


switch(@$_REQUEST['action']) {
	/**
	* Additional parameters: memberid, username, password, email, siteid, biller, trial
	* This call is done whenever a new username should be added to the user management for access.
	*/

	case 'ADD':
		add_user();
	break;

	/**
	* Additional parameters: memberid, username, password, siteid, biller, trial
	* This call is done whenever a username is manually added via the members admin or a biller refresh.
	**/

	case 'MANUALADD':
		add_user();
	break;

	/**
	* Additional parameters: memberid, username, siteid, biller
	* This call is done whenever a user changes from trial to full membership.
	**/

	case 'TRIALTOFULL':
		upgrade_user();
	break;

	/**
	* Additional parameters: memberid, username, siteid, biller, new_username, new_password
	* This call is done whenever an old username should be updated to a new username and/or password.
	**/

	case 'CHANGE':
		change_password();
	break;

	/**
	* Additional parameters: memberid, username, siteid, biller
	* This call is done whenever a current user should be immediately removed from the active user list.
	**/

	case 'DELETE':
		delete_user();
	break;

	/**
	* Additional parameters: memberid, username, siteid, biller, expire (YYYY-MM-DD format)
	* This call is done when a current user should be expired on a given date. The date MIGHT be in the past.
	**/

	case 'EXPIRE':
		expire_user();
	break;

	/**
	* Additional parameters: username, siteid
	* This call is done to verify if a username is still available. If the username DOES exist, the reply should be OK. If the username DOES NOT exist, the reply should be NOTOK.
	**/

	case 'CHECK':
		check_user();
	break;

	/**
	* Additional parameters: username, password, siteid, trial, biller, email, memberid
	* The ACTIVATE call will add a member back into the member_auth table if they had previously been deleted.
	**/

	case 'ACTIVATE':
		activate_user();
	break;
}

function add_user() {
}

function upgrade_user() {
}

function change_password() {
}

function delete_user() {
}

function expire_user() {
}

function check_user() {
}

function activate_user() {
}