summaryrefslogtreecommitdiff
path: root/framework/Web/Security/TMembershipProvider.php
blob: 674f338c2cd629a5c6f40d7787fded7e485126d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
/**
 * TMembershipProvider class.
 * Defines the contract that PRADO implements to provide membership services using custom membership providers.
 *
 * @author Jason Ragsdale <jrags@jasrags.net>
 * @version $Id: TMembershipProvider.php 1398 2006-09-08 19:31:03Z xue $
 * @package System.Web.Security
 * @since 3.1
 */
Prado::using('System.Configuration.Provider.TProviderBase');
abstract class TMembershipProvider extends TProviderBase
{
	public abstract $ApplicationName;
	public abstract $EnablePasswordReset=false;
	public abstract $EnablePasswordRetrieval=false;
	public abstract $MaxInvalidPasswordAttempts;
	public abstract $MinRequiredNonAlphanumericCharacters;
	public abstract $MinRequiredPasswordLength;
	public abstract $PasswordAttemptWindow;
	public abstract $PasswordStrengthReqularExpression;
	public abstract $RequiresQuestionAndAnswer=false;
	public abstract $RequiresUniqueEmail=false;
	//	private const SALT_SIZE_IN_BYTES = 0x10;
	
	protected function __construct()
	{
		
	}
	public abstract function ChangePassword($username,$oldPassword,$newPassword);
	public abstract function ChangePasswordQuestionAndAnswer($username,$password,$newPasswordQuestion,$newPasswordAnswer);
	public abstract function CreateUser($username,$password,$email,$passwordQuestion,$passwordAnswer,$isApproved,$providerUserKey);
	protected function DecryptPassword($encodedPassword)
	{
		
	}
	public abstract function DeleteUser($username,$deleteAllRelatedData);
	public function EncodePassword($pass,$passwordFormat,$salt)
	{
		
	}
	protected function EncryptPassword($password)
	{
		
	}
	public abstract function FindUsersByEmail($emailToMatch,$pageIndex=null,$pageSize=null);
	public abstract function FindUsersByName($usernameToMatch,$pageIndex=null,$pageSize=null);
	public function GenerateSalt()
	{
		
	}
	public abstract function GetAllUsers($pageIndex=null,$pageSize=null);
	public abstract function GetNumberOfUsersOnline();
	public abstract function GetPassword($username,$answer);
	public abstract function GetUser($username=null,$providerUserKey=null,$userIsOnline);
	public abstract function GetUserNameByEmail($email);
	public abstract function ResetPassword($username,$answer);
	public function UnEncodePassword($pass,$passwordFormat)
	{
		
	}
	public abstract function UnlockUser($userName);
	public abstract function UpdateUser(TMembershipUser $user);
	public abstract function ValidateUser($username,$password);
}
?>