From ac66f25043246116d0decd0392d0ed44f69f2694 Mon Sep 17 00:00:00 2001
From: slainer68 <slainer68@gmail.com>
Date: Fri, 3 May 2013 21:58:10 +0200
Subject: [PATCH] Google Analytics Domain name site setting

---
 app/models/site_setting.rb                  | 1 +
 app/views/common/_google_analytics.html.erb | 7 ++++++-
 config/locales/server.en.yml                | 1 +
 config/locales/server.fr.yml                | 5 +++--
 4 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/app/models/site_setting.rb b/app/models/site_setting.rb
index 3e924dd8941..7c256d1d3e4 100755
--- a/app/models/site_setting.rb
+++ b/app/models/site_setting.rb
@@ -26,6 +26,7 @@ class SiteSetting < ActiveRecord::Base
   client_setting(:track_external_right_clicks, false)
   client_setting(:must_approve_users, false)
   client_setting(:ga_tracking_code, "")
+  client_setting(:ga_domain_name, "")
   client_setting(:new_topics_rollup, 1)
   client_setting(:enable_long_polling, true)
   client_setting(:polling_interval, 3000)
diff --git a/app/views/common/_google_analytics.html.erb b/app/views/common/_google_analytics.html.erb
index 79f2414e848..30910978f4f 100644
--- a/app/views/common/_google_analytics.html.erb
+++ b/app/views/common/_google_analytics.html.erb
@@ -2,6 +2,11 @@
 
   var _gaq = _gaq || [];
   _gaq.push(['_setAccount', '<%= SiteSetting.ga_tracking_code %>']);
+
+  <% if SiteSetting.ga_domain_name.present? %>
+    _gaq.push(['_setDomainName', '<%= SiteSetting.ga_domain_name %>']);
+  <% end %>
+
   _gaq.push(['_setCustomVar', 1, 'Anonymous', <%= !current_user %>, 2]);
   _gaq.push(['_trackPageview']);
 
@@ -11,4 +16,4 @@
     var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
   })();
 
-</script>
\ No newline at end of file
+</script>
diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml
index 01736627cde..cd8a389d594 100644
--- a/config/locales/server.en.yml
+++ b/config/locales/server.en.yml
@@ -453,6 +453,7 @@ en:
     post_undo_action_window_mins: "Number of seconds users are allowed to reverse actions on a post (like, flag, etc)"
     must_approve_users: "Admins must approve all users before they gain access"
     ga_tracking_code: "Google analytics tracking code code, eg: UA-12345678-9; see http://google.com/analytics"
+    ga_domain_name: "Google analytics domain name, eg: mysite.com; see http://google.com/analytics"
     top_menu: "Determine which items appear in the homepage navigation, and in what order. Example latest|hot|read|favorited|unread|new|posted|categories"
     post_menu: "Determine which items appear on the post menu, and in what order. Example like|edit|flag|delete|share|bookmark|reply"
     share_links: "Determine which items appear on the share dialog, and in what order. Example twitter|facebook|google+"
diff --git a/config/locales/server.fr.yml b/config/locales/server.fr.yml
index a49d59100a7..28fcb5a31a5 100644
--- a/config/locales/server.fr.yml
+++ b/config/locales/server.fr.yml
@@ -461,7 +461,8 @@ fr:
     traditional_markdown_linebreaks: "Utiliser le retour à la ligne traditionnel dans markdown, le wrapping est implicite sauf si suivi de 2 espaces"
     post_undo_action_window_mins: "La fenêtre dans laquelle chacun peut annuler une action sur un message (comme signaler)"
     must_approve_users: "Les propriétaires du forum doivent approuver les utilisateurs avant qu'il y aient accès."
-    ga_tracking_code: "Code de suivi de Google Analytics, voir: http://google.com/analytics"
+    ga_tracking_code: "Code de suivi de Google Analytics, par exemple : UA-12345678-9, voir: http://google.com/analytics"
+    ga_domain_name: "Domaine de suivi de Google Analytics, par exemple : monsite.com, voir: http://google.com/analytics"
     top_menu: "L'ordre des éléments dans le menu du haut. Exemple populaire|lus|favoris|non lus|nouveaux|posté|categories"
     post_menu: "L'ordre des éléments dans le menu de rédaction"
     share_links: "Liste ordonnée des boutons de partage. Exemple : twitter|facebook|google+"
@@ -934,4 +935,4 @@ fr:
     image:
       fetch_failure: "Désolé, une erreur s'est produite lorsque nous avons essayé de récupérer l'image."
       unknown_image_type: "Désolé, mais le fichier que vous essayez d'envoyer ne semble pas être une image."
-      size_not_found: "Désolé, mais nous n'avons pas réussit à déterminer la taille de l'image. Peut-être que l'image est corrompue ?"
\ No newline at end of file
+      size_not_found: "Désolé, mais nous n'avons pas réussit à déterminer la taille de l'image. Peut-être que l'image est corrompue ?"