11. STOCK BASED COMPENSATION (Details - Stock Option Activity) - Options [Member]
$ / shares in Units, shares in Thousands, $ in Thousands
12 Months Ended
Dec. 31, 2019
USD ($)
$ / shares
shares
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward]  
Options outstanding, beginning balance | shares 2,477
Options exercised | shares 0
Options expired | shares 0
Options outstanding, ending balance | shares 2,934
Options exercisable | shares 2,154
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Prices [Roll Forward]  
Weighted average exercise price, options outstanding beginning balance $ 6.81
Weighted average exercise price, options granted 3.90
Weighted average exercise price, options exercised
Weighted average exercise price, options expired
Weighted average exercise price, options outstanding, ending balance 6.36
Weighted average exercise price, options exercisable $ 6.79
Share-based Compensation Arrangement by Share-based Payment Award, Options, Weighted-Average Remaining Contractual Term [Roll Forward]  
Weighted average remaining contractual term, options outstanding 6 years 10 months 25 days
Weighted average remaining contractual term, options exercisable 6 years 4 months 24 days
Share-based Compensation Arrangement by Share-based Payment Award, Options, Intrinsic Value [Roll Forward]  
Intrinsic value, options outstanding ending balance | $ $ 0
Intrinsic value, options exercisable | $ $ 0