Annual report pursuant to Section 13 and 15(d)

Contracts Receivable - Amounts Due on Contracts (Detail)

v2.4.1.9
Contracts Receivable - Amounts Due on Contracts (Detail) (USD $)
In Thousands, unless otherwise specified
Dec. 31, 2014
Dec. 31, 2013
Long-term Contracts or Programs Disclosure [Line Items]    
Current receivables $ 80,448us-gaap_ContractReceivableDueOneYearOrLess $ 98,579us-gaap_ContractReceivableDueOneYearOrLess
Retainage due within one year   111us-gaap_ContractReceivableRetainageDueOneYearOrLess
Accounts Receivable, Gross 84,051us-gaap_AccountsReceivableGross 99,577us-gaap_AccountsReceivableGross
Less allowance for doubtful accounts 3,603us-gaap_AllowanceForDoubtfulAccountsReceivable 887us-gaap_AllowanceForDoubtfulAccountsReceivable
Accounts Receivable, Net 80,448us-gaap_AccountsReceivableNet 98,690us-gaap_AccountsReceivableNet
Completed Contracts [Member]    
Long-term Contracts or Programs Disclosure [Line Items]    
Current receivables 24,667us-gaap_ContractReceivableDueOneYearOrLess
/ gifi_ContractTypeAxis
= gifi_CompletedContractsMember
3,885us-gaap_ContractReceivableDueOneYearOrLess
/ gifi_ContractTypeAxis
= gifi_CompletedContractsMember
Long term receivables due after one year      
Contracts In Progress [Member]    
Long-term Contracts or Programs Disclosure [Line Items]    
Current receivables 59,384us-gaap_ContractReceivableDueOneYearOrLess
/ gifi_ContractTypeAxis
= gifi_ContractsInProgressMember
95,581us-gaap_ContractReceivableDueOneYearOrLess
/ gifi_ContractTypeAxis
= gifi_ContractsInProgressMember
Retainage due within one year   $ 111us-gaap_ContractReceivableRetainageDueOneYearOrLess
/ gifi_ContractTypeAxis
= gifi_ContractsInProgressMember