anchor.diff:              end, Admins),
           Type, ID, Message, Warning).
   
  -send_emails0([], _Type, _ID, _Message, _Warning) ->
  -    ok;
  -send_emails0(ToAddrs, Type, ID, Message, Warning) ->
  -    [#config{admin_url=Prefix, email_from=From, email_server=Server,
  -        email_user=User, email_password=Pass}] = mnesia:dirty_read(config, <<"main">>),
  +send_emails0([#config{admin_url=Prefix, email_from=From, email_server=Server,
  +        email_user=User, email_password=Pass}], ToAddrs, Type, ID, Message, Warning)
  +        when byte_size(From) > 0, byte_size(Server) > 0, length(ToAddrs) > 0 ->
       TypeTitle = titlecase(Type),
       Body =
           {<<"multipart">>, <<"alternative">>, [
  
positive.code:                 [{password, Pass}];
              true ->
                  []
          end).
  
  send_slack(Channel, Type, ID, Message, Warning) ->
      case catch send_slack_message(Channel, Type, ID, Message, Warning) of
  
negative.code:     ok;
  send_emails(Admins, Type, ID, Message, Warning) ->
      send_emails0(
          mnesia:dirty_read(config, <<"main">>),
          lists:filtermap(
              fun(User) ->
                  case mnesia:dirty_read(user, User) of
  