How do I put an IF statement in a templates file in Elixir Phoenix?

Lets say you have

defmodule Demo do

  def rut?(rut) when is_binary(rut)do
    rut
    |> clean()
    |> valid?()
  end
  def rut?(_) do
    false
  end

  defp clean(value),
    do: Regex.replace(~r/[^0-9K]/, String.upcase(value), "")

  defp valid?(rut) do
    reversed = String.reverse(rut)
    if verify(reversed) do
      {digits, check} = split(reversed)

      check == checksum(digits)

    else
      false
    end
  end

  defp verify(reversed),
    do: Regex.match?(~r/^(\d|K)\d{7,8}$/, reversed)

  defp split(reversed) do
    [check_digit | rest] = String.graphemes(reversed)

    digits = Enum.map(rest, &(String.to_integer(&1)))
    check =
      case check_digit do
        "K" -> 10
        _ -> String.to_integer(check_digit)
      end
    {digits, check}
  end

  defp checksum(digits) do
    result =
      digits
      |> length()
      |> make_coefficients()
      |> Enum.zip(digits)
      |> Enum.reduce(0,&to_sum/2)
      |> Integer.mod(11)

    case (11 - result) do
      11 -> 0
      n -> n
    end
  end

  defp make_coefficients(amount) do
    (2..7)
    |> Stream.cycle()
    |> Enum.take(amount)
  end

  def to_sum({a,b}, sum),
    do: a * b + sum

end

IO.inspect(Demo.rut?("30.686.957-4")) # true
IO.inspect(Demo.rut?("306869574"))    # true
IO.inspect(Demo.rut?("30.686.954-K")) # true
IO.inspect(Demo.rut?("30686954K"))    # true
IO.inspect(Demo.rut?("3068695K4"))    # false
IO.inspect(Demo.rut?("1938909K"))     # true
IO.inspect(Demo.rut?("19389093"))     # false
IO.inspect(Demo.rut?("0"))            # false
IO.inspect(Demo.rut?(""))             # false
IO.inspect(Demo.rut?(nil))            # false
IO.inspect(Demo.rut?(306869574))      # false

then you should be able to:

defmodule Medica.AppointmentView do
  import Demo, only: [ rut?: 1 ]

  # ...

end

and then

<%= if rut?(appointment.rut_paciente) do %>

should work.