def _set_viewer_urls(ctx):
    """Sets viewer urls.

    """
    for exp in ctx.doc.requires_experiments:
        if isinstance(exp, cim.v2.designing.NumericalExperiment):
            exp.viewer_url = VIEWER_URL_BY_ID.format(ctx.meta.project, exp.meta.id, exp.meta.version)
        elif isinstance(exp, cim.v2.shared.DocReference):
            exp.viewer_url = VIEWER_URL_BY_ID.format(ctx.meta.project, exp.id, exp.version)
def _set_viewer_urls(ctx):
    """Sets related experiment viewer urls.

    """
    for i in ctx.doc.related_experiments + ctx.doc.related_mips:
        try:
            i.meta
        except AttributeError:
            i.viewer_url = VIEWER_URL_BY_ID.format(ctx.meta.project, i.id, i.version)
        else:
            i.viewer_url = VIEWER_URL_BY_ID.format(ctx.meta.project, i.meta.id, i.meta.version)