Staff Management User Guide
Overview
This guide covers the complete workflow for managing staff members in your CRM system. The staff management system follows HMVC (Hierarchical Model-View-Controller) architecture and provides comprehensive tools for user administration, permissions, and role management.
Table of Contents
- Getting Started
- Staff Management Dashboard
- Adding New Staff Members
- Editing Staff Members
- Staff Permissions & Roles
- Staff Profile Management
- Department Management
- Trading Account Integration
- Mailbox Integration
- Best Practices
- Troubleshooting
Getting Started
Prerequisites
- Administrator access to Nfinx CRM
- Proper permissions for staff management (staff
permission with view
, create
, edit
, delete
capabilities)
- Understanding of your organization's role structure
Navigation
Access staff management through:
- Main Menu: Setup → Staff
- Direct URL: /admin/staff
- Quick Access: Dashboard → Staff widget
Staff Management Dashboard
Dashboard Overview
Quick Statistics Cards
- Total Staff: Shows total number of staff members
- Active Staff: Shows currently active staff members
- Total Roles: Links to role management
- Departments: Shows department count
- Recent Activity: Staff login activity
- Permissions: Overview of permission assignments
Quick Actions
- New Staff: Add new staff member
- Roles: Manage roles and permissions
- Departments: Manage departments
- Bulk Actions: Mass operations on staff
Staff Table Features
- Search & Filter: Find staff by name, email, role, department
- Status Indicators: Active/Inactive status with visual indicators
- Last Activity: Shows when staff last logged in
- Quick Actions: Edit, view profile, permissions, delete
Dashboard Statistics
Adding New Staff Members
Step-by-Step Process
Navigate to Staff Management
- Go to Setup → Staff
- Click "New Staff" button
Basic Information (/application/views/admin/staff/member.php
)
- First Name: Required field
- Last Name: Required field
- Email: Must be unique in system
- Phone: Optional contact number
- Password: Initial login password
Role Assignment
- Select from existing roles
- Assign department (if applicable)
- Set admin status (if needed)
Profile Details
- Profile picture upload
- Email signature configuration
- Contact information
- Personal preferences
Integration Settings
- Trading Account: Option to open trading account
- Mailbox: Email configuration for mailbox module
- Departments: Department assignments
Required Fields Validation
The system validates:
- Email uniqueness across staff and departments
- Password strength requirements
- Required field completion
- Role assignment validity
Trading Account Integration
For staff members who need trading access:
// Calls: open_trading_account($staffid, 'staff')
}
">// Check if trading account exists if (!$is_account_opened) { // Show "Open trading account" button // Calls: open_trading_account($staffid, 'staff') }
Editing Staff Members
Profile Management
Staff profiles can be edited through:
- Admin Edit: Full administrative access to all fields
- Self Edit: Staff can edit their own profiles with limitations
Editable Fields
Administrative Fields (Admin Only)
- Role assignments
- Department assignments
- Active/Inactive status
- Admin privileges
- Permission overrides
Profile Fields (Self + Admin)
- Personal information
- Contact details
- Profile picture
- Email signature
- Password changes
Special Considerations
Staff Permissions & Roles
Role-Based Access Control
The system uses a comprehensive role-based permission system:
Permission Categories
- Finance: Invoices, payments, expenses
- CRM: Leads, clients, contacts
- Projects: Project management, tasks, milestones
- Support: Tickets, knowledge base
- Administration: System settings, staff management
- Trading: CFD positions, margin, balances
- Reports: Analytics and reporting
Permission Levels
- View (Global): See all records
- View (Own): See only own records
- View (Department): See department records only
- Create: Add new records
- Edit: Modify existing records
- Delete: Remove records
Enhanced Permission System
The system includes enhanced tooltips and categorization:
// Permission tooltip system
$tooltip_key = 'permission_tooltip_' . $permission_name;
if (_l($tooltip_key) !== $tooltip_key) {
// Show specific tooltip
} else {
// Show generic tooltip
}
Staff Profile Management
Profile Views
Admin Profile View
- Complete staff information
- Permission overview
- Activity history
- Administrative actions
Self Profile View
- Personal information editing
- Password changes
- Profile picture upload
- Email signature management
Profile Features
Activity Tracking
- Login history
- Last activity timestamps
- Session management
- Activity statistics
Profile Pictures
- Upload and crop functionality
- Automatic resizing
- Default avatar fallback
Department Management
Department Integration
Staff can be assigned to departments for:
- Access Control: Department-based permissions
- Email Routing: Support ticket routing
- Reporting: Department-based analytics
- Workflow: Department-specific processes
Department Conflicts
The system prevents email conflicts:
- Staff email cannot match department email
- Automatic validation during creation/editing
- Warning displays for conflicts
Trading Account Integration
Trading Features
For CRM systems with trading functionality:
Account Management
- Open Trading Account: Create platform trading account
- Account Linking: Link CRM staff to trading platform
- Balance Viewing: View trading balances
- Position Management: Access to trading positions
Mailbox Integration
Email Configuration
If mailbox module is enabled:
Mailbox Settings
- Email Account: IMAP/POP3 configuration
- Password: Email account password
- Signature: Email signature for outgoing messages
- Auto-sync: Automatic email synchronization
Best Practices
Security Best Practices
Password Policies
- Enforce strong passwords
- Regular password updates
- Two-factor authentication (if available)
Permission Management
- Follow principle of least privilege
- Regular permission audits
- Role-based assignments
Account Monitoring
- Monitor last activity
- Track login patterns
- Review inactive accounts
Organizational Best Practices
Role Structure
- Create clear role hierarchies
- Document role responsibilities
- Regular role reviews
Department Organization
- Logical department structure
- Clear department boundaries
- Proper email routing
Onboarding Process
- Standardized staff creation
- Documentation requirements
- Training protocols
Troubleshooting
Common Issues
Email Conflicts
Problem: Staff email matches department email
Solution: Change either staff or department email to ensure uniqueness
Permission Issues
Problem: Staff cannot access required features
Solution: Review role assignments and permission settings
Login Problems
Problem: Staff cannot log in
Solution: Check active status, password, and account locks
Trading Account Issues
Problem: Trading account not accessible
Solution: Verify account creation and platform integration
System Validation
The system provides comprehensive error handling:
- Form validation errors
- Database constraint violations
- Permission access denials
- Integration failures
System Architecture
HMVC Structure
The staff management system follows HMVC architecture:
Database Tables
Key database tables:
- tblstaff
: Staff member records
- tblroles
: Role definitions
- tblstaffpermissions
: Permission assignments
- tbldepartments
: Department information
Integration Points
The staff system integrates with:
- Authentication: Login and session management
- Permissions: Role-based access control
- Departments: Organizational structure
- Mailbox: Email integration
- Trading: Platform account management
- Activity Log: User activity tracking
This guide covers the complete staff management workflow in your Nfinx CRM system. For additional support, refer to the related guides on permissions, roles, and department management.