public static function unzip($sourceZip, $destinationFolder, $deleteOnComplete=true)
    {
        if (!extension_loaded('zip') )
        {
            throw new \Exception("Your PHP does not have the zip extesion.");
        }
        
        if (!file_exists($destinationFolder)) 
        {
            mkdir($destinationFolder);
        }
        
        $zip = new \ZipArchive();
        $open = $zip->open($sourceZip);
        
        if (!$open)
        {
            throw new \Exception('Unable to open zip file: ' . $sourceZip);
        }
        
        $unzip = $zip->extractTo($destinationFolder);
        
        if (!$unzip)
        {
            throw new \Exception('Unable to unzip file: ' . $sourceZip . ' to destination: ' . $destinationFolder);
        }
        
        $zip->close();
        
        if ($deleteOnComplete)
        {
            self::deleteDir($sourceZip);
        }
    }