"""Activity to mark product status as in_content using ows-video.""" from video.config import AUTO_APPROVE_USER from video.constants import job_io_fields from video.logic.activity_task_logger import activity_task_logger from video.models import ows_video @activity_task_logger([ job_io_fields.PRODUCT_ID, job_io_fields.WORKFLOW_JOB_ID ]) def mark_video_product_as_approved(inputs): """Set product status as in_content. Args: inputs (dict): Inputs. """ product_id = inputs[job_io_fields.PRODUCT_ID] metadata_response = ows_video.get_product_metadata(product_id) upc = metadata_response['upc'] isrc = metadata_response['isrc'] workflow = ows_video.get_job(inputs[job_io_fields.WORKFLOW_JOB_ID]) user_id = workflow['context'].get('user_id') if user_id is None or not user_id.startswith('oa:'): user_id = AUTO_APPROVE_USER ows_video.set_product_status(product_id, upc, isrc, user_id) return {}