const { renderView } = require('../../view'); module.exports = function renderAcceptInvitePage(message, token, email, name, passwordRequirements, isValidInvitation) { const requirements = passwordRequirements || { minimumLength: 10, minimumCategories: 3, requireLowercase: false, requireUppercase: false, requireNumber: false, requireSymbol: false }; const requiredCategories = []; if (requirements.requireLowercase) requiredCategories.push('lowercase'); if (requirements.requireUppercase) requiredCategories.push('uppercase'); if (requirements.requireNumber) requiredCategories.push('number'); if (requirements.requireSymbol) requiredCategories.push('symbol'); const passwordRequirementsText = requiredCategories.length ? 'Use at least ' + requirements.minimumLength + ' characters and include ' + requiredCategories.join(', ') + '.' : requirements.minimumCategories === 4 ? 'Use at least ' + requirements.minimumLength + ' characters and include uppercase, lowercase, number, and symbol.' : 'Use at least ' + requirements.minimumLength + ' characters and include ' + requirements.minimumCategories + ' of: uppercase, lowercase, number, and symbol.'; return renderView('auth/accept-invite', { title: 'Accept invitation', authShell: true, bodyClass: 'login-page-body', message: message || '', isValidInvitation: Boolean(isValidInvitation), token: token || '', email: email || '', name: name || '', passwordMinimumLength: requirements.minimumLength, passwordRequirementsText: passwordRequirementsText }); };