currentUserCan( [ 'manage_options', 'publish_depicter' ] ); } /** * Checks if user has enough quota to publish a new document based on their tier * * @return bool */ public function userHasPublishQuota(){ // For free tier users, check if they've reached the limit (currently 2) if ( \Depicter::auth()->isFreeTier() ) { return \Depicter::documentRepository()->getNumberOfPublishedDocuments() < 2; } return true; } /** * Get user session * * @return string */ public function getUserSession(){ if ( !isset( $_COOKIE['depicter_session'] ) ) { $session = wp_generate_uuid4(); setcookie( 'depicter_session', $session, 86400 * 30, '/' ); return $session; } return $_COOKIE['depicter_session']; } }