Dotclear 2.24
|
Public Member Functions | |
__construct () | |
Credentials and user permissions | |
checkUser (string $user_id, ?string $pwd=null, ?string $user_key=null, bool $check_blog=true) | |
crypt (string $pwd) | |
cryptLegacy (string $pwd) | |
checkPassword (string $pwd) | |
sessionExists () | |
checkSession (?string $uid=null) | |
mustChangePassword () | |
isSuperAdmin () | |
check (?string $permissions, ?string $blog_id) | |
allowPassChange () | |
Sudo | |
sudo ($fn,... $args) | |
User information and options | |
getPermissions (?string $blog_id) | |
getBlogCount () | |
findUserBlog (?string $blog_id=null) | |
userID () | |
getInfo ($information) | |
getOption ($option) | |
getOptions () | |
Permissions | |
parsePermissions ($level) | |
makePermissions ($list) | |
getPermissionsTypes () | |
setPermissionType (string $name, string $title) | |
Password recovery | |
setRecoverKey (string $user_id, string $user_email) | |
recoverUserPassword (string $recover_key) | |
Data Fields | |
const | USER_TABLE_NAME = 'user' |
const | PERMISSIONS_TABLE_NAME = 'permissions' |
const | PERMISSION_ADMIN = 'admin' |
const | PERMISSION_CONTENT_ADMIN = 'contentadmin' |
const | PERMISSION_USAGE = 'usage' |
const | PERMISSION_PUBLISH = 'publish' |
const | PERMISSION_DELETE = 'delete' |
const | PERMISSION_CATEGORIES = 'categories' |
const | PERMISSION_MEDIA_ADMIN = 'media_admin' |
const | PERMISSION_MEDIA = 'media' |
$blog_count = null | |
$user_prefs | |
Protected Attributes | |
$con | |
$user_table | |
$perm_table | |
$blog_table | |
$user_id | |
$user_info = [] | |
$user_options = [] | |
$user_change_pwd | |
$user_admin | |
$permissions = [] | |
$allow_pass_change = true | |
$blogs = [] | |
$perm_types | |
__construct | ( | ) |
Class constructor. Takes dcCore object as single argument.
References dcCore\app(), dcBlog\BLOG_TABLE_NAME, PERMISSIONS_TABLE_NAME, and USER_TABLE_NAME.
checkUser | ( | string | $user_id, |
?string | $pwd = null , |
||
?string | $user_key = null , |
||
bool | $check_blog = true |
||
) |
Checks if user exists and can log in. $pwd argument is optionnal while you may need to check user without password. This method will create credentials and populate all needed object properties.
string | $user_id | User ID |
string | $pwd | User password |
string | $user_key | User key check |
boolean | $check_blog | Checks if user is associated to a blog or not. |
References $ret, $user_id, dcCore\app(), http\browserUID(), DC_CRYPT_ALGO, DC_MASTER_KEY, findUserBlog(), dcUtils\getUserCN(), crypt\hmac(), and dcSqlStatement\where().
Referenced by checkSession().
crypt | ( | string | $pwd | ) |
This method crypt given string (password, session_id, …).
string | $pwd | String to be crypted |
cryptLegacy | ( | string | $pwd | ) |
This method crypt given string (password, session_id, …).
string | $pwd | String to be crypted |
References DC_CRYPT_ALGO, DC_MASTER_KEY, and crypt\hmac().
checkPassword | ( | string | $pwd | ) |
This method only check current user password.
string | $pwd | User password |
sessionExists | ( | ) |
checkSession | ( | ?string | $uid = null | ) |
This method checks user session validity.
string | $uid | Browser UID |
References dcCore\app(), http\browserUID(), checkUser(), DC_MASTER_KEY, and userID().
mustChangePassword | ( | ) |
isSuperAdmin | ( | ) |
check | ( | ?string | $permissions, |
?string | $blog_id | ||
) |
Checks if user has permissions given in $permissions for blog $blog_id.
string | $permissions | Permissions list (comma separated) |
string | $blog_id | Blog ID |
References $permissions, and getPermissions().
allowPassChange | ( | ) |
sudo | ( | $fn, | |
$args | |||
) |
Calls $fn function with super admin rights and returns the function result.
callable | array | $fn | Callback function |
getPermissions | ( | ?string | $blog_id | ) |
Returns user permissions for a blog as an array which looks like:
string | $blog_id | Blog ID |
References parsePermissions().
Referenced by check(), and findUserBlog().
getBlogCount | ( | ) |
findUserBlog | ( | ?string | $blog_id = null | ) |
Finds an user blog.
string | $blog_id | The blog identifier |
References dcBlog\BLOG_OFFLINE, and getPermissions().
Referenced by checkUser().
userID | ( | ) |
getInfo | ( | $information | ) |
Returns information about a user .
string | $information | Information name |
getOption | ( | $option | ) |
Returns a specific user option
string | $option | Option name |
getOptions | ( | ) |
parsePermissions | ( | $level | ) |
Returns an array with permissions parsed from the string $level
string | $level | Permissions string |
Referenced by getPermissions().
makePermissions | ( | $list | ) |
Makes permissions string from an array.
array | $list | The list |
getPermissionsTypes | ( | ) |
setPermissionType | ( | string | $name, |
string | $title | ||
) |
Adds a new permission type.
string | $name | Permission name |
string | $title | Permission title |
setRecoverKey | ( | string | $user_id, |
string | $user_email | ||
) |
Add a recover key to a specific user identified by its email and password.
string | $user_id | User ID |
string | $user_email | User Email |
References $user_id.
recoverUserPassword | ( | string | $recover_key | ) |
Creates a new user password using recovery key. Returns an array:
string | $recover_key | Recovery key |
References crypt\createPassword().
const USER_TABLE_NAME = 'user' |
Referenced by __construct(), dcLog\__construct(), dcCore\delUser(), dcCore\getBlogPermissions(), dcBlog\getComments(), dcBlog\getPosts(), dcBlog\getPostsUsers(), dcCore\getUsers(), dcImportDC1\importUsers(), dcImportWP\importUsers(), adminAuth\process(), adminUserPrefs\process(), adminUser\process(), dcCore\setUserDefaultBlog(), and dcCore\userExists().
const PERMISSIONS_TABLE_NAME = 'permissions' |
const PERMISSION_ADMIN = 'admin' |
Permission codes
Referenced by dcMaintenanceAdmin\adminDashboardFavorites(), dcDefaultPageActions\adminPagesActionsPage(), dcDefaultPostActions\adminPostsActionsPage(), dcDefaultPostActions\doChangePostAuthor(), dcSpamFilter\hasGUI(), adminBlogTheme\init(), dcAdmin\init(), adminAntispam\init(), adminCKEditor\init(), adminLegacyEditor\init(), adminSimpleMenu\init(), defaultFavorites\initDefaultFavorites(), dcExportFlat\process(), and dcThemes\registerModule().
const PERMISSION_CONTENT_ADMIN = 'contentadmin' |
Referenced by dcDefaultCommentActions\adminCommentsActionsPage(), dcDefaultPageActions\adminPagesActionsPage(), tagsBehaviors\adminPostsActions(), dcDefaultPostActions\adminPostsActionsPage(), tagsBehaviors\adminRemoveTags(), dcBlog\changePostsCategory(), dcPage\check(), dcPage\checkSuper(), tagsBehaviors\dashboardFavorites(), dcBlog\delComments(), dcBlog\delJunkComments(), dcBlog\delPosts(), dcDefaultPageActions\doReorderPages(), adminCommentFilter\getCommentIpFilter(), dcBlog\getComments(), dcMeta\getMetadata(), dcBlog\getPosts(), adminChartePage\init(), adminBlogs\init(), adminComment\init(), adminComments\init(), adminCommentsActions\init(), adminHelp\init(), adminIndex\init(), adminPlugin\init(), adminPopupLink\init(), adminPopupPosts\init(), adminPost\init(), adminPostMedia\init(), adminPosts\init(), adminPostsActions\init(), adminUserPrefs\init(), adminSearch\init(), dcAdmin\init(), adminCKEditor\init(), adminLegacyEditor\init(), adminPages\init(), adminPage\init(), defaultFavorites\initDefaultFavorites(), rsExtPost\isDeletable(), rsExtPost\isEditable(), dcPage\open(), adminComment\process(), adminTag\process(), adminComments\render(), adminIndex\render(), adminPage\render(), adminTag\render(), dcMeta\updateMeta(), dcBlog\updComment(), dcBlog\updCommentsStatus(), dcBlog\updPostsCategory(), dcBlog\updPostsSelected(), and dcBlog\updPostsStatus().
const PERMISSION_USAGE = 'usage' |
Referenced by dcPage\check(), dcPage\checkSuper(), tagsBehaviors\dashboardFavorites(), adminChartePage\init(), adminBlogs\init(), adminComment\init(), adminComments\init(), adminCommentsActions\init(), adminHelp\init(), adminIndex\init(), adminPlugin\init(), adminPopupLink\init(), adminPopupPosts\init(), adminPost\init(), adminPostMedia\init(), adminPosts\init(), adminPostsActions\init(), adminUserPrefs\init(), adminSearch\init(), dcAdmin\init(), adminPage\init(), defaultFavorites\initDefaultFavorites(), rsExtPost\isEditable(), adminIndex\render(), dcBlog\updComment(), dcBlog\updPostsCategory(), and dcBlog\updPostsSelected().
const PERMISSION_PUBLISH = 'publish' |
Referenced by dcDefaultCommentActions\adminCommentsActionsPage(), dcDefaultPageActions\adminPagesActionsPage(), dcDefaultPostActions\adminPostsActionsPage(), dcDefaultPageActions\doReorderPages(), adminPost\init(), adminPage\init(), adminComment\process(), adminTag\process(), adminIndex\render(), adminPage\render(), dcBlog\updComment(), dcBlog\updCommentsStatus(), and dcBlog\updPostsStatus().
const PERMISSION_DELETE = 'delete' |
Referenced by dcDefaultCommentActions\adminCommentsActionsPage(), dcDefaultPageActions\adminPagesActionsPage(), tagsBehaviors\adminPostsActions(), dcDefaultPostActions\adminPostsActionsPage(), tagsBehaviors\adminRemoveTags(), dcBlog\delComments(), dcBlog\delJunkComments(), dcBlog\delPosts(), adminComments\init(), rsExtPost\isDeletable(), adminComment\process(), and adminPage\render().
const PERMISSION_CATEGORIES = 'categories' |
Referenced by dcBlog\addCategory(), dcBlog\changePostsCategory(), dcBlog\delCategory(), dcDefaultPostActions\doChangePostCategory(), adminCategories\init(), adminCategory\init(), dcAdmin\init(), defaultFavorites\initDefaultFavorites(), adminPost\process(), dcRestMethods\quickPost(), adminCategories\render(), adminIndex\render(), adminPost\render(), dcBlog\resetCategoriesOrder(), and dcBlog\updCategory().
const PERMISSION_MEDIA_ADMIN = 'media_admin' |
Referenced by dcMedia\createFile(), dcMedia\fileRecord(), dcMedia\getDir(), dcMedia\getFile(), dcRestMethods\getZipMediaContent(), adminMedia\init(), adminMediaItem\init(), dcAdmin\init(), defaultFavorites\initDefaultFavorites(), dcLegacyEditorBehaviors\jsToolBar(), adminMediaPage\mediaArchivable(), adminMedia\process(), dcMedia\removeFile(), dcMedia\searchMedia(), dcMedia\updateFile(), dcMedia\uploadBits(), and dcMedia\uploadFile().
const PERMISSION_MEDIA = 'media' |
Referenced by dcMedia\createFile(), dcMedia\getDir(), dcRestMethods\getZipMediaContent(), adminMedia\init(), adminMediaItem\init(), dcAdmin\init(), defaultFavorites\initDefaultFavorites(), dcLegacyEditorBehaviors\jsToolBar(), dcMedia\removeFile(), dcMedia\updateFile(), dcMedia\uploadBits(), and dcMedia\uploadFile().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by checkUser(), setRecoverKey(), and userID().
|
protected |
|
protected |
Referenced by getOptions().
|
protected |
Referenced by mustChangePassword().
|
protected |
Referenced by isSuperAdmin().
|
protected |
Referenced by check().
|
protected |
Referenced by allowPassChange().
|
protected |
$blog_count = null |
Referenced by getBlogCount().
|
protected |
Referenced by getPermissionsTypes().
$user_prefs |