from bs4 import BeautifulSoup


class UserAgreement:
    
    @classmethod
    def update_agreement(self, agreement, latitude, longitude, applicant_agreement, co_applicant_agreement=None):
        soup = BeautifulSoup(agreement, 'html.parser')
        
        count = 0
        
        applicant_agreement_div = soup.new_tag('div')
        applicant_agreement_div.string = applicant_agreement 
        
        target_div = soup.find('div', class_='page-height page-agreement', id='agreement-img')
        
        target_div.insert(count, applicant_agreement_div)
        count += 1
        
        if co_applicant_agreement:
            co_applicant_agreement_div = soup.new_tag('div')
            co_applicant_agreement_div.string = co_applicant_agreement 
            
            target_div.insert(count, soup.new_tag('br'))
            target_div.insert(count+1, co_applicant_agreement_div)
            
            count += 2
            
        lat_long_div = soup.new_tag('div')
        lat_long_div.string = f"Latitude: {latitude} Longitude: {longitude}"
        target_div.insert(count, soup.new_tag('br'))
        target_div.insert(count+1, lat_long_div)
        
        return str(soup)