When displaying several nodes on one page ( i.e. full rendered nodes in a view ), the js snippet for facebook gets added once per each node, even if one time is enough.

The attached patch fixed this.

Comments

mariancalinro’s picture

StatusFileSize
new1.37 KB

The patch file.

asifnoor’s picture

I tried to test this patch using simplytest.me, but unable to reproduce this issue even though i haven ot applied this patch. So i am not sure what the issue was. The patch looks to be fine, no problem with that.

mariancalinro’s picture

The issue is not visible without checking the source of the page.

In source I get the following code (it repeats more than 10 times):

<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>
<script type="text/javascript">
<!--//--><![CDATA[//><!--
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/de_DE/all.js#xfbml=1&appId=";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
//--><!]]>
</script>

Unfortunately the website I'm working on is not public yet, so I can't give you an url.

olofbokedal’s picture

Issue summary: View changes
Status: Needs review » Reviewed & tested by the community

The patch solved the problem for me.

I had a view that displayed several nodes in teaser mode. The script got added once for every node.

claudiu.cristea’s picture

I confirm the bug. The patch from #1 is fixing the bug and looks good to go. Can we have this committed?

emi_bcn’s picture

Confirmed the bug and the patch. Will anybody insert it into code? It's one years ago when it was first found and patched...

mariancalinro’s picture

Assigned: mariancalinro » Unassigned

Unassigning myself, this was by mistake, and maybe this is blocking the merge of the patch.

bredy73’s picture

This is only for dev version?

rhormens’s picture

Thanks guys.
I will commit!

Please wait a new release.

rhormens’s picture

rhormens’s picture

Status: Reviewed & tested by the community » Fixed

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.