Class: ODDB::State::Admin::AssignPatinfo

Inherits:
AssignDeprivedSequence show all
Defined in:
src/state/admin/assign_patinfo.rb

Constant Summary

VIEW =
View::Admin::AssignPatinfo

Constants inherited from AssignDeprivedSequence

VIEW

Constants inherited from Global

HOME_STATE, ZONE

Constants inherited from Global

DIRECT_EVENT, GLOBAL_MAP, HOME_STATE, LIMITED, PRINT_STATES, READONLY_STATES, RESOLVE_STATES, REVERSE_MAP, VIEW, ZONE_NAVIGATION

Constants included from UmlautSort

FILTER_PAIRS

Instance Method Summary (collapse)

Methods inherited from AssignDeprivedSequence

#_patinfo_deprived_sequences, #assign_deprived_sequence, #init, #named_sequences, #preview, #search_sequences, #shadow, #symbol

Methods inherited from Global

#zone_navigation

Methods inherited from Global

#_search_drugs, #_search_drugs_state, #_trigger, #add_to_interaction_basket, #allowed?, #atc_chooser, #checkout, #clear_interaction_basket, #creditable?, #direct_request_path, #doctorlist, #download, #export_csv, #extend, #fachinfo, #feedbacks, #help_navigation, #home_navigation, #home_state, #hospitallist, #interaction_basket, #limit_state, #limited?, #logout, #navigation, #notify, #password_reset, #paypal_return, #powerlink, #print, #proceed_download, #proceed_poweruser, #resolve, #resolve_state, #rss, #search, #show, #snapback_event, #sort, #sponsorlink, #suggest_address, #switch, #unique_email, #user_input, #user_navigation, #ywesee_contact, #zone_navigation, #zones

Methods included from LoginMethods

#autologin, #login

Methods included from UmlautSort

#sort_model, #umlaut_filter

Instance Method Details

- (Object) assign



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'src/state/admin/assign_patinfo.rb', line 13

def assign
  keys = [:pointers, :pointer]
  input = user_input(keys, keys)
  pointers = input[:pointers].values
  if(pointers \
    && pointers.any? { |pointer| 
      !allowed?(pointer.resolve(@session))})
    @errors.store(:pointers, 
      create_error('e_not_allowed', :pointers, nil))
  end
  unless(error?)
    args = { :patinfo  => nil, :pdf_patinfo => nil }
    if(pat = @model.sequence.pdf_patinfo)
      args.store(:pdf_patinfo, pat)
    elsif(pat = @model.sequence.patinfo)
      args.store(:patinfo, pat.pointer)
    end
    pointers.each { |pointer|
      @session.app.update(pointer, args, unique_email)
    }
  end
  self
end