from reviews.models import QualityAnswer, SearchSession, Source


DEFAULT_SOURCES = [
    ("Scopus", "https://www.scopus.com/"),
    ("IEEE Xplore", "https://ieeexplore.ieee.org/"),
    ("ACM Library", "https://dl.acm.org/"),
    ("PubMed", "https://pubmed.ncbi.nlm.nih.gov/"),
    ("ACM Digital Library", "https://dl.acm.org/"),
    ("ScienceDirect", "https://www.sciencedirect.com/"),
    ("Web of Science", "https://www.webofscience.com/"),
    ("Springer Link", "https://link.springer.com/"),
]

DEFAULT_QA_ANSWERS = [
    ("Yes", 1.0),
    ("Partially", 0.5),
    ("No", 0.0),
]


def seed_defaults():
    for name, url in DEFAULT_SOURCES:
        if not Source.objects.filter(name=name).first():
            Source(name=name, url=url, is_default=True.save())
    


def setup_new_review(review):
    for desc, weight in DEFAULT_QA_ANSWERS:
        
            QualityAnswer(review_id=review.id, description=desc, weight=weight.save()
        )
    SearchSession(review_id=review.id, source_id=None, search_string="".save())
    
    review.ensure_search_sessions()
