Class: ODDB::Html::State::Drugs::Compare

Inherits:
Global
  • Object
show all
Includes:
Util::PackageSort
Defined in:
lib/oddb/html/state/drugs/compare.rb

Direct Known Subclasses

CompareRemote

Constant Summary collapse

LIMIT =
true
VIEW =
View::Drugs::Compare

Constants inherited from Global

Global::GLOBAL_MAP

Instance Attribute Summary

Attributes inherited from Global

#passed_turing_test

Attributes included from LoginMethods

#desired_input

Instance Method Summary collapse

Methods included from Util::PackageSort

#sort_proc

Methods included from Util::Sort

#_sort, #_sort_by, #sort, #sort_by, #sort_proc

Methods inherited from Global

transparent_login

Methods included from Events

#_complete, #_explain_ddd_price, #_explain_price, #_fachinfo, #_feedback, #_package, #_package_by_code, #_package_infos, #_patinfo, #_products, #_remote, #_remote_comparables, #_remote_infos, #_remote_package, #_remote_packages, #_search, #_search_append_products, #_search_append_sequences, #_search_by, #_search_local, #_search_remote, #_tax_factor, #compare_remote, #ddd, #limited?, #navigation, #search

Methods inherited from Global

#_download, #compare, #explain_ddd_price, #explain_price, #fachinfo, #feedback, #home, #limit_state, #limited?, #logout, #method_missing, #navigation, #package, #package_infos, #partitioned_keys, #patinfo, #proceed_export, #proceed_poweruser, #product, #products, #remote_infos, #sequence

Methods included from PayPal::Checkout

#ajax_autofill, #checkout, #checkout_keys, #checkout_mandatory, #collect, #create_user

Methods included from LoginMethods

#login_

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class ODDB::Html::State::Global

Instance Method Details

#_compare(code) ⇒ Object



25
26
27
28
29
30
31
# File 'lib/oddb/html/state/drugs/compare.rb', line 25

def _compare(code)
  if(code == @model.query)
    sort
  else
    super
  end
end

#direct_eventObject



32
33
34
35
36
37
38
# File 'lib/oddb/html/state/drugs/compare.rb', line 32

def direct_event
  direct_event = [:compare]
  if(code = @model.query)
    direct_event.push(:query, code)
  end
  direct_event
end

#initObject



17
18
19
20
21
22
23
24
# File 'lib/oddb/html/state/drugs/compare.rb', line 17

def init
  original = @model.origin
  @model.collect! { |package| 
    ODDB::Util::Comparison.new(package, original) }
  sort_by(:product)
  sort_by(:difference)
  sort
end