Quota didn't work for me, i had to do some fix
-
Hi there, i had problem, quota didnt work for me. I give you a question, what happens, when user doesn’t have meta set and uploaded attachement in time of plugin activation? (Note from documentation: “If the meta value does not exist and $single is true the function will return an empty string. If $single is false an empty array is returned.”)
I had to do correction in my code and initialize user meta manually.
if(!$passCapab) { //------ Before Uploading ------// add_filter( 'wp_handle_upload_prefilter', 'uqpu_before_uploading' ); function uqpu_before_uploading( $file ) { global $sizeLimit; $user_id = get_current_user_id(); $uqpu_upload_space = get_user_meta( $user_id, 'uqpu_upload_space', $single = true ); $filesize = $file['size']; if (($filesize+$uqpu_upload_space)>$sizeLimit) $uqpu_upload_space_limit_reached = true; else $uqpu_upload_space_limit_reached = false; if ( $uqpu_upload_space_limit_reached ) $file['error'] = __('You reached the limit of', 'upload-quota-per-user').' '.human_filesize($sizeLimit); return $file; } } //------ After Uploading, modified database ------// add_filter( 'wp_handle_upload', 'uqpu_after_uploading' ); function uqpu_after_uploading( $args ) { $user_id = get_current_user_id(); $size = filesize( $args['file'] ); $uqpu_upload_space = get_user_meta( $user_id, 'uqpu_upload_space', $single = true ); //This is what i wrote vvvvvvvvvvvvvvvvvvvvvvv if($uqpu_upload_space != "" && is_numeric($uqpu_upload_space)) { update_user_meta( $user_id, 'uqpu_upload_space', $uqpu_upload_space + $size ); } else { update_user_meta( $user_id, 'uqpu_upload_space', $size ); } return $args; }
But thanks for plugin, works like a charm after fix ??
Viewing 2 replies - 1 through 2 (of 2 total)
Viewing 2 replies - 1 through 2 (of 2 total)
- The topic ‘Quota didn't work for me, i had to do some fix’ is closed to new replies.