Files
ultimatemember/core/um-actions-user.php
T

80 lines
2.2 KiB
PHP
Raw Normal View History

2014-12-15 22:38:07 +02:00
<?php
2015-11-05 19:51:31 +08:00
/***
*** @sync with WP role
***/
add_action('um_after_user_role_is_updated','um_setup_synced_wp_role', 50, 2);
function um_setup_synced_wp_role( $user_id, $role ) {
global $ultimatemember;
$meta = $ultimatemember->query->role_data( $role );
$meta = apply_filters('um_user_permissions_filter', $meta, $user_id);
if ( isset( $meta['synced_role'] ) && $meta['synced_role'] ) {
$wp_user_object = new WP_User( $user_id );
$wp_user_object->set_role( $meta['synced_role'] );
}
}
2015-02-08 01:49:10 +02:00
/***
*** @after user uploads, clean up uploads dir
***/
add_action('um_after_user_upload','um_remove_unused_uploads', 10);
function um_remove_unused_uploads( $user_id ) {
global $ultimatemember;
2015-02-17 00:51:40 +02:00
2015-02-08 01:49:10 +02:00
um_fetch_user( $user_id );
2015-02-09 00:29:16 +02:00
2015-02-08 01:49:10 +02:00
$array = $ultimatemember->user->profile;
2015-02-17 00:51:40 +02:00
2015-02-08 01:49:10 +02:00
$files = glob( um_user_uploads_dir() . '*', GLOB_BRACE);
2015-02-17 00:51:40 +02:00
if ( file_exists( um_user_uploads_dir() ) && $files && isset( $array ) && is_array( $array ) ) {
foreach($files as $file) {
$str = basename($file);
2015-11-16 22:04:59 +08:00
if ( !strstr( $str, 'profile_photo') && !strstr( $str, 'cover_photo') && !strstr( $str, 'stream_photo') && !preg_grep('/' . $str . '/', $array ) )
2015-02-17 00:51:40 +02:00
unlink( $file );
}
2015-02-08 01:49:10 +02:00
}
2015-02-09 00:29:16 +02:00
2015-02-08 01:49:10 +02:00
}
2014-12-15 22:38:07 +02:00
/***
*** @listen to a new user creation in backend
***/
2015-02-08 01:49:10 +02:00
add_action( 'user_register', 'um_new_user_via_wpadmin', 10, 1 );
2014-12-15 22:38:07 +02:00
function um_new_user_via_wpadmin( $user_id ) {
if ( is_admin() ) {
2015-04-07 20:10:23 +02:00
2014-12-15 22:38:07 +02:00
global $ultimatemember;
if ( isset( $_POST['role'] ) && $_POST['role'] == 'administrator' ) {
$args['role'] = 'admin';
} else {
$args['role'] = 'member';
}
do_action('um_after_new_user_register', $user_id, $args);
do_action('um_update_profile_full_name', $_POST);
}
2015-03-12 18:22:29 +02:00
}
/***
*** @adds main links to a logout widget
***/
add_action('um_logout_user_links', 'um_logout_user_links', 100 );
function um_logout_user_links( $args ) {
global $ultimatemember;
?>
<li><a href="<?php echo um_get_core_page('account'); ?>"><?php _e('Your account','ultimatemember'); ?></a></li>
2015-04-25 21:41:47 +02:00
<li><a href="<?php echo esc_url( add_query_arg('redirect_to', $ultimatemember->permalinks->get_current_url(true), um_get_core_page('logout') ) ); ?>"><?php _e('Logout','ultimatemember'); ?></a></li>
2015-03-12 18:22:29 +02:00
<?php
2015-02-08 01:49:10 +02:00
}