Quarterly report pursuant to Section 13 or 15(d)

Stockholders' Equity - Schedule of All Options and Exercisable Options (Details)

v3.22.2.2
Stockholders' Equity - Schedule of All Options and Exercisable Options (Details)
3 Months Ended
Jul. 31, 2022
$ / shares
shares
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Outstanding (in shares) | shares 795,182
Exercisable (in shares) | shares 786,549
$3.24 to $4.38  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Minimum exercise price (in dollars per share) $ 3.24
Maximum exercise price (in dollars per share) 4.38
Weighted average exercise price (in dollars per share) $ 3.82
Outstanding (in shares) | shares 36,331
Weighted average exercise price (in dollars per share) $ 4.00
Weighted average remaining life in years 2 years
Exercisable (in shares) | shares 36,331
$4.50 to $5.20  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Minimum exercise price (in dollars per share) $ 4.50
Maximum exercise price (in dollars per share) 5.20
Weighted average exercise price (in dollars per share) $ 4.94
Outstanding (in shares) | shares 135,510
Weighted average exercise price (in dollars per share) $ 4.99
Weighted average remaining life in years 1 year 6 months 7 days
Exercisable (in shares) | shares 134,877
$5.95 to $6.28  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Minimum exercise price (in dollars per share) $ 5.95
Maximum exercise price (in dollars per share) 6.28
Weighted average exercise price (in dollars per share) $ 5.95
Outstanding (in shares) | shares 28,000
Weighted average exercise price (in dollars per share) $ 5.95
Weighted average remaining life in years 21 days
Exercisable (in shares) | shares 28,000
$7.17 to $7.55  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Minimum exercise price (in dollars per share) $ 7.17
Maximum exercise price (in dollars per share) 7.55
Weighted average exercise price (in dollars per share) $ 7.45
Outstanding (in shares) | shares 472,592
Weighted average exercise price (in dollars per share) $ 7.46
Weighted average remaining life in years 1 year 25 days
Exercisable (in shares) | shares 464,592
$8.57 to $9.07  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Minimum exercise price (in dollars per share) $ 8.57
Maximum exercise price (in dollars per share) 9.07
Weighted average exercise price (in dollars per share) $ 8.98
Outstanding (in shares) | shares 122,749
Weighted average exercise price (in dollars per share) $ 8.96
Weighted average remaining life in years 5 months 8 days
Exercisable (in shares) | shares 122,749