Class: Evercookie::EvercookieController
- Inherits:
-
ActionController::Base
- Object
- ActionController::Base
- Evercookie::EvercookieController
- Defined in:
- lib/evercookie/controller.rb
Overview
controller class defines evercookie actions
Instance Method Summary collapse
-
#ec_auth ⇒ Object
Renders evercookie value for basic authentication if it was set.
-
#ec_cache ⇒ Object
Renders page with cache header for evercookie js script.
-
#ec_etag ⇒ Object
Renders page with etag header for evercookie js script.
-
#ec_png ⇒ Object
Renders png image with encoded evercookie value in it.
-
#get ⇒ Object
Renders javascript with evercookie get script.
-
#save ⇒ Object
Saves current evercookie value to session.
-
#set ⇒ Object
Renders javascript with evercookie set script.
Instance Method Details
#ec_auth ⇒ Object
Renders evercookie value for basic authentication if it was set
116 117 118 |
# File 'lib/evercookie/controller.rb', line 116 def ec_auth render text: @username end |
#ec_cache ⇒ Object
Renders page with cache header for evercookie js script
99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
# File 'lib/evercookie/controller.rb', line 99 def ec_cache if not [Evercookie.].present? render :nothing => true, :status => 304 return true end puts "cache value (#{Evercookie.}): #{[Evercookie.]}" response.headers["Content-Type"] = "text/html" response.headers["Last-Modified"] = "Wed, 30 Jun 2010 21:36:48 GMT" response.headers["Expires"] = "Tue, 31 Dec 2030 23:30:45 GMT" response.headers["Cache-Control"] = "private, max-age=630720000" render text: [Evercookie.] end |
#ec_etag ⇒ Object
Renders page with etag header for evercookie js script
86 87 88 89 90 91 92 93 94 95 96 |
# File 'lib/evercookie/controller.rb', line 86 def ec_etag if not [Evercookie.].present? render :text => request.headers['If-None-Match'] || '', :status => 304 return true end puts "cache value (#{Evercookie.}): #{[Evercookie.]}" response.headers["Etag"] = [Evercookie.] render text: [Evercookie.] end |
#ec_png ⇒ Object
Renders png image with encoded evercookie value in it
71 72 73 74 75 76 77 78 79 80 81 82 83 |
# File 'lib/evercookie/controller.rb', line 71 def ec_png if not [Evercookie.].present? render :nothing => true, :status => 304 return true end response.headers["Content-Type"] = "image/png" response.headers["Last-Modified"] = "Wed, 30 Jun 2010 21:36:48 GMT" response.headers["Expires"] = "Tue, 31 Dec 2030 23:30:45 GMT" response.headers["Cache-Control"] = "private, max-age=630720000" render text: get_blob_png, status: 200, content_type: 'image/png' end |
#get ⇒ Object
Renders javascript with evercookie get script
55 56 57 |
# File 'lib/evercookie/controller.rb', line 55 def get @data = session[Evercookie.hash_name_for_get] || {key: '', value: ''} end |
#save ⇒ Object
Saves current evercookie value to session
60 61 62 63 64 65 66 67 68 |
# File 'lib/evercookie/controller.rb', line 60 def save if data = session[Evercookie.hash_name_for_get] if data[:key] && [data[:key]] session[Evercookie.hash_name_for_saved] = { data[:key] => [data[:key]] } end end render nothing: true end |
#set ⇒ Object
Renders javascript with evercookie set script
50 51 52 |
# File 'lib/evercookie/controller.rb', line 50 def set @data = session[Evercookie.hash_name_for_set] || {key: '', value: ''} end |