def process_css_file_form_2_imports(page, file, url):
    output = []
    
    offset = 0
    
    match_iter = IMPORT_FORM_2.finditer(file)
    for match in match_iter:
        if match.group(1) == '@import':
            # If another css url.
            
            # Calculating the absolute URL of the CSS file.
            import_url = str(helpers.unescape_html(get_absolute_import_url(match.group(3), url)))
            
            # Checking the media type for the import, we're only caching screen CSS.
            media_ok = True
            media = match.group(5)

            if len(media.strip()):
                try:
                    media.index("screen")
                except:
                    media_ok = False
            
            if media_ok:
                # Creating a request to fetch the linked CSS file.
                request = GetCssRequest.objects.create(url=import_url, page=page)
                
                # Replacing the original import statement with a new one, that points to our servers.
                output.append(file[offset:match.start()])
                output.append("@import url('%s');" % request.calculate_local_url())
            else:
                # Treating as if it were a regular file.
                output.append(file[offset:match.start()])
                output.append("%surl('%s')%s" % (match.group(2), import_url, match.group(4) or ''))
            
            offset = match.end()                
        else:
            # If a non-css url.
            
            # Calculating the absolute URL of the file.
            import_url = str(helpers.unescape_html(get_absolute_import_url(match.group(3), url)))
            output.append(file[offset:match.start()])
            output.append("%surl('%s')%s" % (match.group(2), import_url, match.group(4) or ''))
            offset = match.end()
    
    output.append(file[offset:len(file)])
    
    return "".join(output)
def process_css_file_form_1_imports(page, file, url):
    output = []
    
    offset = 0
    
    match_iter = IMPORT_FORM_1.finditer(file)
    for match in match_iter:
        # Calculating the absolute URL of the CSS file.
        import_url = str(helpers.unescape_html(get_absolute_import_url(match.group(1), url)))
        
        # Creating a request to fetch the linked CSS file.
        request = GetCssRequest.objects.create(url=import_url, page=page)
        
        # Replacing the original import statement with a new one, that points to our servers.
        output.append(file[offset:match.start()])
        output.append("@import url('%s');" % request.calculate_local_url())
        
        offset = match.end()
    
    output.append(file[offset:len(file)])
    
    return "".join(output)