summaryrefslogtreecommitdiff
path: root/framework/Web/Security/TMembershipProvider.php
diff options
context:
space:
mode:
authorjrags <>2006-09-19 03:04:28 +0000
committerjrags <>2006-09-19 03:04:28 +0000
commit2c8fcb129c45faecd1a480c44f8a1708f768b91d (patch)
tree43c0ad8bb4c8f669ef242f278de9ffa12d20b93c /framework/Web/Security/TMembershipProvider.php
parentb767e82ec7bb04e747961e7ecee0e288fde719f0 (diff)
Inital Checkin of new membership and role providers. Currently still in development
Diffstat (limited to 'framework/Web/Security/TMembershipProvider.php')
-rw-r--r--framework/Web/Security/TMembershipProvider.php66
1 files changed, 66 insertions, 0 deletions
diff --git a/framework/Web/Security/TMembershipProvider.php b/framework/Web/Security/TMembershipProvider.php
new file mode 100644
index 00000000..674f338c
--- /dev/null
+++ b/framework/Web/Security/TMembershipProvider.php
@@ -0,0 +1,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);
+}
+?> \ No newline at end of file