#!/usr/bin/env python3

import nexpose.nexpose as nexpose
import nexpose.args as nexposeargs

def main():
    """
    Parse arguments
    """
    parser = nexposeargs.parser
    parser.description = "Remove old Nexpose reports."
    args = parser.parse_args()

    base_url = ':'.join([args.baseurl, args.port])

    login = nexpose.login(
        base_url=base_url,
        user=args.user,
        password=args.password,
        verify=args.verify,
    )

    pages = nexpose.reports(nlogin=login)["page"]["totalPages"]

    for page in range(pages):
        resources = nexpose.reports(nlogin=login, page=page)["resources"]
        report_ids = [resource['id'] for resource in resources]
        for report_id in report_ids:
            history = nexpose.report_history(nlogin=login, report_id=report_id)
            if len(history['resources']) == 0:
                nexpose.delete_report(nlogin=login, report_id=report_id)
                print(report_id)


if __name__ == "__main__":
    main()
