Commitments and Contingencies (Details)
3 Months Ended 6 Months Ended 12 Months Ended
Jun. 30, 2017
USD ($)
claim
Jun. 30, 2016
USD ($)
Jun. 30, 2017
USD ($)
claim
Jun. 30, 2016
USD ($)
Dec. 31, 2016
USD ($)
Operating Leases          
Rental expense $ 700,000 $ 600,000 $ 1,400,000 $ 1,200,000  
Future minimum rental payments          
2017 1,707,000   1,707,000    
2018 2,258,000   2,258,000    
2019 628,000   628,000    
2020 196,000   196,000    
2021 30,000   30,000    
Total 4,819,000   4,819,000    
Purchase Commitments          
Non-cancellable purchase commitments 44,300,000   44,300,000    
Indemnification agreements          
Indemnification          
Accrued liability $ 0   $ 0    
Number of outstanding claims | claim 0   0    
Minimum          
Operating Leases          
Extension term of leases     P3Y    
Maximum          
Operating Leases          
Extension term of leases     P5Y    
Pakedge Device And Software Inc. | General and administrative          
Future minimum rental payments          
Expense due to loss on vacated facility     $ 100,000   $ 400,000