Module: Xtend::LitaWizard

Defined in:
lib/xtend/lita_wizard.rb

Instance Method Summary collapse

Instance Method Details

#handle_messageObject

rubocop:disable Style/CyclomaticComplexity



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/xtend/lita_wizard.rb', line 4

def handle_message
  if message.body =~ /(^cancelar$|^abortar$|^não$|^nao$|^pare$|^para$)/
    send_message abort_message
    abort_wizard
    destroy
  elsif step.nil?
    send_message 'Opa, tive um probleminha e por isso cancelei esse procedimento.'
    destroy
  elsif message.body =~ /(^concluir$|^ok$|^feito$)/  && step[:multiline]
    save
    advance
  elsif valid_response?
    if step[:multiline]
      values[current_step_index] ||= ''
      values[current_step_index] << "\n"
      values[current_step_index] << message.body
      values[current_step_index].strip!
      save
    else
      values[current_step_index] = message.body
      save
      advance
    end
  else
    send_message @error_message
  end
end