Commit 019bbf17426e83a2decf98d0fbf6b08e2b9df094
1 parent
91c78592
Exists in
master
and in
29 other branches
add infra to embed track block
Showing
7 changed files
with
69 additions
and
34 deletions
Show diff stats
app/controllers/embed_controller.rb
@@ -5,13 +5,13 @@ class EmbedController < ApplicationController | @@ -5,13 +5,13 @@ class EmbedController < ApplicationController | ||
5 | source = params[:source] | 5 | source = params[:source] |
6 | 6 | ||
7 | if !block.visible? | 7 | if !block.visible? |
8 | - render :template => 'shared/embed_denied.rhtml', :status => 403, :layout => "embed-block" | 8 | + render :template => 'shared/embed_denied.rhtml', :status => 403, :layout => "embed" |
9 | else | 9 | else |
10 | locals = {:source => source, :block => block} | 10 | locals = {:source => source, :block => block} |
11 | - render 'embed/index', :layout => 'embed-block', :locals => locals | 11 | + render 'embed/index', :layout => 'embed', :locals => locals |
12 | end | 12 | end |
13 | 13 | ||
14 | rescue ActiveRecord::RecordNotFound | 14 | rescue ActiveRecord::RecordNotFound |
15 | - render :template => 'shared/embed_not_found.rhtml', :status => 404, :layout => "embed-block" | 15 | + render :template => 'shared/embed_not_found.rhtml', :status => 404, :layout => "embed" |
16 | end | 16 | end |
17 | end | 17 | end |
app/helpers/boxes_helper.rb
@@ -221,11 +221,13 @@ module BoxesHelper | @@ -221,11 +221,13 @@ module BoxesHelper | ||
221 | 221 | ||
222 | #if block.respond_to?(:embedable) | 222 | #if block.respond_to?(:embedable) |
223 | if true | 223 | if true |
224 | + | ||
225 | + url = url_for :controller => 'embed', :action => 'embed_block', :id => block.id, :only_path => false; | ||
226 | + | ||
224 | html = content_tag('div', | 227 | html = content_tag('div', |
225 | - content_tag('h2', _('Embed code')) + | 228 | + content_tag('h2', _('Embed block code')) + |
226 | content_tag('div', 'Below, you''ll see a field containing embed code for the block. Just copy the code and paste it into your website or blogging software.', :style => 'margin-bottom: 1em;') + | 229 | content_tag('div', 'Below, you''ll see a field containing embed code for the block. Just copy the code and paste it into your website or blogging software.', :style => 'margin-bottom: 1em;') + |
227 | - content_tag('textarea', '*This is the embed code for this block!*', :style => 'margin-bottom: 1em; width:100%; height:40%;') + | ||
228 | - thickbox_copy_to_clipboard_button(_('Copy to clipboard')) + | 230 | + content_tag('textarea', block.embed_code(url), :style => 'margin-bottom: 1em; width:100%; height:40%;') + |
229 | thickbox_close_button(_('Close')), :style => 'display: none;', :id => "embed-code-box-#{block.id}") | 231 | thickbox_close_button(_('Close')), :style => 'display: none;', :id => "embed-code-box-#{block.id}") |
230 | 232 | ||
231 | buttons << thickbox_inline_popup_icon(:embed, _('Embed code'), {}, "embed-code-box-#{block.id}") << html | 233 | buttons << thickbox_inline_popup_icon(:embed, _('Embed code'), {}, "embed-code-box-#{block.id}") << html |
app/models/block.rb
@@ -16,6 +16,10 @@ class Block < ActiveRecord::Base | @@ -16,6 +16,10 @@ class Block < ActiveRecord::Base | ||
16 | 16 | ||
17 | named_scope :enabled, :conditions => { :enabled => true } | 17 | named_scope :enabled, :conditions => { :enabled => true } |
18 | 18 | ||
19 | + def embed_code(url) | ||
20 | + html = "<iframe src='#{url}?source=SOURCE_NAME' frameborder='0' allowfullscreen ></iframe>" | ||
21 | + end | ||
22 | + | ||
19 | # Determines whether a given block must be visible. Optionally a | 23 | # Determines whether a given block must be visible. Optionally a |
20 | # <tt>context</tt> must be specified. <tt>context</tt> must be a hash, and | 24 | # <tt>context</tt> must be specified. <tt>context</tt> must be a hash, and |
21 | # may contain the following keys: | 25 | # may contain the following keys: |
app/views/layouts/embed-block.rhtml
@@ -1,23 +0,0 @@ | @@ -1,23 +0,0 @@ | ||
1 | -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | ||
2 | -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<%= html_language %>" lang="<%= html_language %>"> | ||
3 | - <head> | ||
4 | - <title>Noosfero embed block</title> | ||
5 | - <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> | ||
6 | - <%= noosfero_stylesheets %> | ||
7 | - <%= noosfero_javascript %> | ||
8 | - </head> | ||
9 | - | ||
10 | - <body id="embed-body"> | ||
11 | - <div id="embed-content"> | ||
12 | - <%= yield %> | ||
13 | - </div> | ||
14 | - | ||
15 | - <script type="text/javascript"> | ||
16 | - jQuery(document).ready(function(){ | ||
17 | - jQuery('a').attr('target','_blank'); | ||
18 | - }); | ||
19 | - </script> | ||
20 | - | ||
21 | - </body> | ||
22 | - | ||
23 | -</html> |
@@ -0,0 +1,57 @@ | @@ -0,0 +1,57 @@ | ||
1 | +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | ||
2 | +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<%= html_language %>" lang="<%= html_language %>"> | ||
3 | + <head> | ||
4 | + <title>Noosfero embed block</title> | ||
5 | + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | ||
6 | + | ||
7 | + <%= noosfero_stylesheets %> | ||
8 | + <%= noosfero_javascript %> | ||
9 | + | ||
10 | + <script type='text/javascript'> | ||
11 | + DEFAULT_LOADING_MESSAGE = <%="'#{ _('loading...') }'" %>; | ||
12 | + </script> | ||
13 | + | ||
14 | + </head> | ||
15 | + <body class="<%= h body_classes %>"> | ||
16 | + | ||
17 | + <%= | ||
18 | + @plugins.dispatch(:body_beginning).collect do |content| | ||
19 | + content.respond_to?(:call) ? content.call : content | ||
20 | + end.join("\n") | ||
21 | + %> | ||
22 | + | ||
23 | + <div id="wrap-1"> | ||
24 | + <div id="wrap-2"> | ||
25 | + <div id="content"> | ||
26 | + <div id="content-inner"> | ||
27 | + <%= yield %> | ||
28 | + <br style="clear: both" /> | ||
29 | + </div> | ||
30 | + </div> | ||
31 | + </div> | ||
32 | + </div> | ||
33 | + | ||
34 | + <script type="text/javascript"> | ||
35 | + jQuery(document).ready(function(){ | ||
36 | + jQuery('a').attr('target','_blank'); | ||
37 | + }); | ||
38 | + </script> | ||
39 | + | ||
40 | + <!-- Piwik --> | ||
41 | + <script type="text/javascript"> | ||
42 | + var _paq = _paq || []; | ||
43 | + _paq.push(["trackPageView"]); | ||
44 | + _paq.push(["enableLinkTracking"]); | ||
45 | + | ||
46 | + (function() { | ||
47 | + var u="http://estatisticas.presidencia.gov.br/"; | ||
48 | + _paq.push(["setTrackerUrl", u+"piwik.php"]); | ||
49 | + _paq.push(["setSiteId", "14"]); | ||
50 | + var d=document, g=d.createElement("script"), s=d.getElementsByTagName("script")[0]; g.type="text/javascript"; | ||
51 | + g.defer=true; g.async=true; g.src="/javascripts/piwik.js"; s.parentNode.insertBefore(g,s); | ||
52 | + })(); | ||
53 | + </script> | ||
54 | + <!-- End Piwik Code --> | ||
55 | + | ||
56 | + </body> | ||
57 | +</html> |
public/designs/icons/tango/style.css
1 | /******************SMALL ICONS********************/ | 1 | /******************SMALL ICONS********************/ |
2 | .icon-embed { background-image: url(Tango/16x16/apps/utilities-terminal.png) } | 2 | .icon-embed { background-image: url(Tango/16x16/apps/utilities-terminal.png) } |
3 | -.icon-copy-to-clipboard { background-image: url(Tango/16x16/actions/gtk-copy.png) } | ||
4 | .icon-edit { background-image: url(Tango/16x16/apps/text-editor.png) } | 3 | .icon-edit { background-image: url(Tango/16x16/apps/text-editor.png) } |
5 | .icon-home { background-image: url(Tango/16x16/actions/go-home.png) } | 4 | .icon-home { background-image: url(Tango/16x16/actions/go-home.png) } |
6 | .icon-home-not { background-image: url(mod/16x16/actions/go-home-not.png) } | 5 | .icon-home-not { background-image: url(mod/16x16/actions/go-home-not.png) } |
public/javascripts/thickbox.js
@@ -265,10 +265,6 @@ function tb_showIframe(){ | @@ -265,10 +265,6 @@ function tb_showIframe(){ | ||
265 | jQuery("#TB_window").css({display:"block"}); | 265 | jQuery("#TB_window").css({display:"block"}); |
266 | } | 266 | } |
267 | 267 | ||
268 | -function tb_copy_to_clipboard() { | ||
269 | - alert('Text copied to clipboard!'); | ||
270 | -} | ||
271 | - | ||
272 | function tb_remove() { | 268 | function tb_remove() { |
273 | jQuery("#TB_imageOff").unbind("click"); | 269 | jQuery("#TB_imageOff").unbind("click"); |
274 | jQuery("#TB_closeWindowButton").unbind("click"); | 270 | jQuery("#TB_closeWindowButton").unbind("click"); |