doesfacebook 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. data/lib/doesfacebook/controls.rb +20 -1
  2. metadata +2 -2
@@ -13,12 +13,31 @@ module DoesFacebook
13
13
  protected
14
14
 
15
15
  # Mechanism for redirecting within the Facebook canvas:
16
- def redirect_to_canvas(opts={})
16
+ def redirect_to_canvas_old(opts={})
17
17
  raise MalformedUrlOptions.new("Options passed to `redirect_to_canvas` must be a URL options Hash") unless opts.is_a?(Hash)
18
18
  dest = File.join("http://apps.facebook.com/", facebook_config[:canvas_name], url_for(opts.merge(:only_path=>true)))
19
19
  logger.info "Canvas Redirect to #{opts.inspect}=>#{dest}"
20
20
  redirect_to dest
21
21
  end
22
22
 
23
+ # Purer, JavaScript-based solution for redirecting within the Facebook canvas:
24
+ def redirect_to_canvas(opts={})
25
+ raise MalformedUrlOptions.new("Options passed to `redirect_to_canvas` must be a URL options Hash") unless opts.is_a?(Hash)
26
+ dest = File.join("http://apps.facebook.com/", facebook_config[:canvas_name], url_for(opts.merge(:only_path=>true)))
27
+ @facebook_redirect_url = dest
28
+ logger.info "Canvas Redirect to #{opts.inspect}=>#{dest}"
29
+ begin
30
+ render :partial=>"facebook/redirect"
31
+ rescue ActionView::MissingTemplate=>e
32
+ logger.info "Pretty Redirect Partial facebook/redirect Not Found. Using Unformatted Text."
33
+ render :text=>%{
34
+ Redirecting you to <a href="#{dest}">#{dest}</a>...
35
+ <script type="text/javascript">
36
+ top.location.href = "#{dest}";
37
+ </script>
38
+ }
39
+ end
40
+ end
41
+
23
42
  end # Controls
24
43
  end # DoesFacebook
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: doesfacebook
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.4.0
5
+ version: 0.4.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - mccolin
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-08-05 00:00:00 -04:00
13
+ date: 2011-09-01 00:00:00 -04:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency