diff --git a/app/views/layouts/application.html.haml b/app/views/layouts/application.html.haml
index 9049099478b431d90ff6b3ae1252bfbb157b1ca8..d86b80928b603f9045e71ffd6e8bc867365d1562 100644
--- a/app/views/layouts/application.html.haml
+++ b/app/views/layouts/application.html.haml
@@ -57,6 +57,17 @@
         var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
         })();
 
+    -if APP_CONFIG[:piwik_id]
+      :javascript
+        var pkBaseURL = (("https:" == document.location.protocol) ? "https://#{APP_CONFIG[:piwik_url]}/" : "http://#{APP_CONFIG[:piwik_url]}/");
+        document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
+        try {
+        var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", #{APP_CONFIG[:piwik_id]});
+        piwikTracker.trackPageView();
+        piwikTracker.enableLinkTracking();
+        } catch( err ) {}
+
+
     - if current_user
       %link{:rel => "alternate", :href => "#{current_user.public_url}", :type => "application/atom+xml", :title => "Public Diaspora Feed for #{current_user.real_name}"}
 
diff --git a/config/app_config.yml.example b/config/app_config.yml.example
index 06b6c3168dead4303ebba1a2dd3fb2678e3af573..3aef911971f8a06b0786ca829107f1456576b451 100644
--- a/config/app_config.yml.example
+++ b/config/app_config.yml.example
@@ -68,6 +68,12 @@ default:
 
   #google analytics key, if false, it won't include the javascript
   google_a_site: false
+  
+  #piwik integration if not set, no javascript included
+  piwik_id: 
+  # the site url in raw format (e.g. pikwik.examplehost.com)
+  piwik_url: 
+  
 
   #cloudfiles username and api-key, used for backups
   cloudfiles_username: 'example'
diff --git a/config/languages.yml b/config/languages.yml
index 6c38ac8482a0ebc3277aa93b052540cffd6f8b46..e6861687ed129d92992a7e5672b63e4ee79ff8f2 100644
--- a/config/languages.yml
+++ b/config/languages.yml
@@ -8,6 +8,7 @@ available:
   en: 'English'
   es: 'Español'
   es-CL: 'Español Chileno'
+  fi: 'Suomi'
   fr: 'Français'
   he: 'עברית'
   id: 'Bahasa Indonesia'
diff --git a/config/locales/devise/devise.fi.yml b/config/locales/devise/devise.fi.yml
index ba5a0f54424e7492d39e41758764d938454ed1bc..4f9368f2db80124e0bf7fd4a333a07585dd8e3a0 100644
--- a/config/locales/devise/devise.fi.yml
+++ b/config/locales/devise/devise.fi.yml
@@ -8,7 +8,7 @@ fi:
     confirmations: 
       confirmed: "Käyttäjätilisi luonti on vahvistettu. Olet nyt kirjautunut sisään."
       new: 
-        resend_confirmation: "Resend confirmation instructions"
+        resend_confirmation: "Lähetä vahvistusohjeet uudelleen"
       send_instructions: "Saat hetken päästä sähköpostiisi ohjeet siitä miten vahvistat käyttäjätilisi luonnin."
     failure: 
       inactive: "Käyttätiliäsi ei ole vielä vahvistettu."
@@ -19,35 +19,35 @@ fi:
       unauthenticated: "Kirjaudu tai rekisteröidy ennen kuin voit jatkaa."
       unconfirmed: "Sinun täytyy vahvistaa käyttäjätilisi ennen kuin voit jatkaa"
     invitations: 
-      invitation_token_invalid: "The invitation token provided is not valid!"
+      invitation_token_invalid: "Kutsun vahvistustunnus on virheellinen!"
       send_instructions: "Kutsusi on lähetetty."
-      updated: "Your password was set successfully. You are now signed in."
+      updated: "Salasanasi on tallennettu. Olet kirjautunut sisään."
     mailer: 
       confirmation_instructions: 
-        confirm: "Confirm my account"
-        subject: "Confirmation instructions"
-        you_can_confirm: "You can confirm your account through the link below:"
+        confirm: "Vahvista käyttäjätilini"
+        subject: "Vahvistamisohjeet"
+        you_can_confirm: "Voit vahvistaa käyttäjätilisi alla olevan linkin kautta:"
       hello: "Hei %{email}!"
       invitation: 
-        accept: "Accept invitation"
-        ignore: "If you don't want to accept the invitation, please ignore this email."
-        no_account_till: "Your account won't be created until you access the link above and sign up."
+        accept: "Hyväksy kutsu"
+        ignore: "Jos et halua hyväksyä kutsua, voit jättää tämän viestin huomioimatta."
+        no_account_till: "Käyttäjätilisi luodaan vasta kun rekisteröidyt ylläolevan linkin kautta. "
         subject: "Sinut on kutsuttu käyttämään Diasporaa!"
       inviters: 
-        accept_at: ", at %{url}, you can accept it through the link below."
+        accept_at: ", osoitteessa %{url}, voit hyväksyä sen alla olevasta linkistä."
         has_invited_you: "%{name} on kutsunut sinut liittymään Diasporaan"
-        have_invited_you: "%{names} have invited you to join Diaspora"
+        have_invited_you: "%{names} ovat kutsuneet sinut Diasporan käyttäjäksi"
       reset_password_instructions: 
         change: "Vaihda salasana"
-        ignore: "If you didn't request this, please ignore this email."
-        someone_requested: "Someone has requested a link to change your password, and you can do this through the link below."
-        subject: "Reset password instructions"
+        ignore: "Jos et pyytänyt tätä, voit jättää viestin huomiotta."
+        someone_requested: "Joku on pyytänyt salasanasi vaihtamista. Voit tehdä sen allaolevan linkin kautta. "
+        subject: "Palauta salasanan ohjeet"
         wont_change: "Your password won't change until you access the link above and create a new one."
       unlock_instructions: 
-        account_locked: "Your account has been locked due to an excessive amount of unsuccessful sign in attempts."
-        click_to_unlock: "Click the link below to unlock your account:"
-        subject: "Unlock Instructions"
-        unlock: "Unlock my account"
+        account_locked: "Käyttäjätilisi on lukittu liian usean epäonnistuneen kirjautumisyrityksen vuoksi."
+        click_to_unlock: "Avaa käyttäjätilisi alla olevasta linkistä:"
+        subject: "Avaamisohjeet"
+        unlock: "Avaa käyttäjätilini"
       welcome: "Tervetuloa %{email}!"
     passwords: 
       edit: 
@@ -63,11 +63,11 @@ fi:
       updated: "Käyttäjätilisi on päivitetty."
     sessions: 
       new: 
-        alpha_software: "You are about to use alpha software."
-        bugs_and_feedback: "Be advised, you will experience bugs.  We encourage you to use the Feedback button on the right hand side of your browser to report any hiccups!  We will work as fast as we can to resolve any issues you report."
+        alpha_software: "Sovellus on alpha versio. "
+        bugs_and_feedback: "Ota huomioon, että tulet kohtaamaan ohjelmistovirheitä. Kannustamme sinua ilmoittamaan kaikki kokemasi virheet oikealla puolella olevan Feedback nappulan kautta! Korjaamme ilmoittamasi virheet mahdollisimman nopeasti. "
         have_a_problem: "Ongelmia? Löydä ratkaisu täältä"
         login: "Kirjautuminen"
-        modern_browsers: "only supports modern browsers."
+        modern_browsers: "tukee vain moderneja selaimia."
         password: "Salasana"
         remember_me: "Muista minut"
         sign_in: "Kirjaudu"
@@ -77,16 +77,16 @@ fi:
     shared: 
       links: 
         forgot_your_password: "Unohditko salasanasi?"
-        receive_confirmation: "Didn't receive confirmation instructions?"
-        receive_unlock: "Didn't receive unlock instructions?"
+        receive_confirmation: "Etkö saanut vahvistusohjeita?"
+        receive_unlock: "Etkö saanut avaamisohjeita?"
         sign_in: "Kirjaudu"
         sign_up: "Rekisteröidy"
-        sign_up_closed: "Open signups are closed at this time."
+        sign_up_closed: "Avoin rekisteröityminen on tällä hetkellä suljettu. "
       mail_signup_form: 
-        sign_up_for_an_invite: "Sign up for an invite!"
+        sign_up_for_an_invite: "Rekisteröidy saadaksesi kutsu!"
     unlocks: 
       new: 
-        resend_unlock: "Resend unlock instructions"
+        resend_unlock: "Lähetä avaamisohjeet uudelleen"
       send_instructions: "Saat muutaman minuutin kuluttua sähköpostiisi ohjeet siitä miten avaat lukituksen."
       unlocked: "Käyttäjätilisi lukitus on avattu. Olet nyt kirjautunut sisään."
   errors: 
diff --git a/config/locales/devise/devise.it.yml b/config/locales/devise/devise.it.yml
index 74c93127ffd8772fb77b333f0a1d2d66af78ac01..d95d76af79398f125b523d3c4a3472bcf6288501 100644
--- a/config/locales/devise/devise.it.yml
+++ b/config/locales/devise/devise.it.yml
@@ -83,7 +83,7 @@ it:
         sign_up: "Registrati"
         sign_up_closed: "Le iscrizioni pubbliche sono chiuse al momento."
       mail_signup_form: 
-        sign_up_for_an_invite: "Sign up for an invite!"
+        sign_up_for_an_invite: "Registrati per ricevere un invito!"
     unlocks: 
       new: 
         resend_unlock: "Invia di nuovo le istruzioni per lo sblocco"
diff --git a/config/locales/devise/devise.ru.yml b/config/locales/devise/devise.ru.yml
index d43cf824b98c3d700aefcaf9dbaa4d2dcbfafffc..2a7b39b6e3c8ab3ba4f8da0e5e3a88c3c1633fe1 100644
--- a/config/locales/devise/devise.ru.yml
+++ b/config/locales/devise/devise.ru.yml
@@ -83,7 +83,7 @@ ru:
         sign_up: "Регистрация"
         sign_up_closed: "Регистрация на данный момент не доступна."
       mail_signup_form: 
-        sign_up_for_an_invite: "Sign up for an invite!"
+        sign_up_for_an_invite: "Зарегистрируйтесь для приглашения!"
     unlocks: 
       new: 
         resend_unlock: "Отправить повторно инструкции по разблокированию"
diff --git a/config/locales/diaspora/fi.yml b/config/locales/diaspora/fi.yml
index bf526496e27c8ffa9213d38157c6e126ffb4fc4d..0e854e821e484da6b1c310681521e2f982847853 100644
--- a/config/locales/diaspora/fi.yml
+++ b/config/locales/diaspora/fi.yml
@@ -4,8 +4,8 @@
 
 
 fi: 
-  _comments: "Comments"
-  _home: "Home"
+  _comments: "Kommentit"
+  _home: "Alkuun"
   _photos: "kuvat"
   _services: "Palvelut"
   account: "Tili"
@@ -21,7 +21,7 @@ fi:
             email: 
               taken: "on jo käytössä"
             person: 
-              invalid: "is invalid"
+              invalid: "ei kelpaa"
             username: 
               taken: "on jo käytössä"
   ago: "sitten"
@@ -29,148 +29,148 @@ fi:
     helper: 
       unknown_person: "tuntematon persoona"
       youtube_title: 
-        unknown: "Unknown Video Title"
+        unknown: "Videon otsikko tuntematon"
   are_you_sure: "Oletko varma?"
   aspects: 
     add_to_aspect: 
-      failure: "Failed to add friend to aspect."
-      success: "Successfully added friend to aspect."
+      failure: "Kontaktin lisäys verkostonäkymään epäonnistui."
+      success: "Ystävän lisäys verkostonäkymään onnistui."
     create: 
-      failure: "Aspect creation failed."
-      success: "Click on the plus on the left side to tell Diaspora who can see your new aspect."
+      failure: "Verkostonäkymän luonti epäonnistui."
+      success: "Uusi verkostonäkymäsi: %{name} on luotu"
     destroy: 
       success: "%{name} poistettiin onnistuneesti."
     edit_aspect_pane: 
-      add_existing: "Add an existing contact"
-      confirm_remove_aspect: "Remove aspect?"
-      remove_aspect: "Remove Aspect"
+      add_existing: "Lisää olemassa oleva kontakti"
+      confirm_remove_aspect: "Poista verkostonäkymä?"
+      remove_aspect: "Poista verkostonäkymä"
     helper: 
-      are_you_sure: "Are you sure you want to delete this aspect?"
-      aspect_not_empty: "Aspect not empty"
+      are_you_sure: "Haluatko varmasti poistaa tämän verkostonäkymän?"
+      aspect_not_empty: "Verkostonäkymä ei ole tyhjä"
       remove: "poista"
     index: 
-      handle_explanation: "This is your diaspora handle.  Like an email address, you can give this to people to reach you."
+      handle_explanation: "Tämä on Diaspora* tunnuksesi. Käytä sitä kuin sähköpostiosoitetta. Ystäväsi tavoittavat sinut sen avulla."
     manage: 
-      add_a_new_aspect: "Add a new aspect"
-      add_a_new_contact: "Add a new contact"
-      drag_to_add: "Drag to add people"
-      manage_aspects: "Manage aspects"
-      no_requests: "No new requests"
-      requests: "Requests"
+      add_a_new_aspect: "Lisää uusi verkostonäkymä"
+      add_a_new_contact: "Lisää uusi kontakti"
+      drag_to_add: "Lisää ihmisiä raahaamalla"
+      manage_aspects: "Muokkaa verkostonäkymiä"
+      no_requests: "Ei uusia pyyntöjä"
+      requests: "Pyynnöt"
     move_contact: 
-      error: "Error moving contact: %{inspect}"
-      failure: "didn't work %{inspect}"
-      success: "Person moved to new aspect"
+      error: "Virhe siirrettäessä kontaktia: %{inspect}"
+      failure: "ei toiminut %{inspect}"
+      success: "Henkilö siirretty toiseen verkostonäkymään"
     new_aspect: 
       create: "Luo"
       name: "Nimi"
     no_contacts_message: 
-      add_contact: "Add a contact"
-      add_contact_to: "Add someone to %{aspect_name}"
-      invite: "Invite someone to join Diaspora!"
-      nobody: "We know you know people — bring them to Diaspora!"
-      nobody_in_aspect: "Your aspect '%{aspect_name}' is empty."
+      add_contact: "Lisää kontakti"
+      add_contact_to: "Lisää henkilö verkostonäkymään: %{aspect_name}"
+      invite: "Kutsu joku tuttusi Diasporan käyttäjäksi!"
+      nobody: "Tiedämme että tunnet ihmisiä — kutsu heidät Diasporaan!"
+      nobody_in_aspect: "Verkostonäkymäsi: '%{aspect_name}' on tyhjä."
     no_posts_message: 
       start_talking: "Kukaan ei ole sanonut vielä mitään. Aloita keskustelu!"
     remove_from_aspect: 
-      failure: "Failed to remove person from aspect"
-      success: "Successfully removed person from aspect"
+      failure: "Henkilön poisto verkostonäkymästä epäonnistui"
+      success: "Henkilön poisto verkostonäkymästä onnistui"
     seed: 
       family: "Perhe"
       work: "Työ"
     show: 
-      edit_aspect: "edit aspect"
+      edit_aspect: "muokkaa verkostonäkymää"
     update: 
-      success: "Your aspect, %{name}, has been successfully edited."
+      success: "Verkostonäkymäsi, %{name}, muokkaus onnistui."
   back: "Takaisin"
   cancel: "Peruuta"
   comments: 
     new_comment: 
       comment: "Kommentoi"
-      commenting: "Commenting..."
+      commenting: "Kommentoidaan..."
   contacts: 
-    few: "%{count} contacts"
-    one: "1 contact"
-    other: "%{count} contacts"
-    zero: "no contacts"
+    few: "%{count} kontaktia"
+    one: "1 kontakti"
+    other: "%{count} kontaktia"
+    zero: "ei kontakteja"
   delete: "Poista"
   email: "Sähköposti"
   error_messages: 
     helper: 
-      correct_the_following_errors_and_try_again: "Correct the following errors and try again."
-      invalid_fields: "Invalid Fields"
-  fill_me_out: "Fill me out"
+      correct_the_following_errors_and_try_again: "Korjaa seuraavat virheet ja yritä uudelleen."
+      invalid_fields: "Vialliset arvot"
+  fill_me_out: "Täytä tiedot"
   home: 
     show: 
-      already_account: "already have an account?"
-      choice: "Choice"
-      choice_explanation: "Diaspora allows you to sort your connections into groups called Aspects. Unique to Diaspora, Aspects ensure your photos, stories and jokes are shared with only the people you want them to be."
-      learn_about_host: "Learn about how to host your own Diaspora server"
-      login_here: "log in here"
-      ownership: "Ownership"
-      ownership_explanation: "You own your pictures, and you shouldn’t have to give that up just in order to share them. You maintain ownership of everything you share on Diaspora, giving you full control over how it is distributed."
+      already_account: "joko sinulla on käyttäjätili?"
+      choice: "Valinta"
+      choice_explanation: "Diasporassa voit lajitella kontaktisi eri ryhmiin, joita kutsutaan verkostonäkymiksi. Diasporassa (toisin kuin muissa vastaavan tyyppisissä palveluissa) verkostonäkymät takaavat, että kuvasi, viestisi ja vitsisi jaetaan vain niille ihmisille, joille ne on tarkoitettu."
+      learn_about_host: "Lue miten voit perustaa oman Diaspora palvelimen."
+      login_here: "sisäänkirjautuminen"
+      ownership: "Omistajuus"
+      ownership_explanation: "Omistat kuvasi, eikä sinun pidä luopua siitä jakaakseni ne. Säilytät omistajuutesi kaikkeen mitä jaat Diasporassa. Samoin sinulla on täydet oikeudet päättää siitä, miten materiaaliasi jaetaan."
       share_what_you_want: "Jaa mitä halua, kenen kanssa haluat."
-      simplicity: "Simplicity"
-      simplicity_explanation: "Diaspora makes sharing clean and easy – this goes doubly so for privacy. Innherently private, Diaspora doesn’t have pages of settings and options to wade through to keep your profile secure and to your liking."
+      simplicity: "Yksinkertaisuus"
+      simplicity_explanation: "Diaspora tekee jakamisesta helppoa ja siistiä – tämä koskee myös yksityisyyttäsi. Oletusarvoisesti yksityisenä, Diasporassa ei ole sivuittain erilaisia optioita joiden avulla yksityisyyttäsi hallinnoitaisiin."
   invitations: 
     check_token: 
-      not_found: "Invitation token not found"
+      not_found: "Kutsun tunnusta ei löytynyt"
     create: 
-      already_contacts: "You are already connected with this person"
+      already_contacts: "Olet jo yhteydessä tähän henkilöön"
       already_sent: "Olet jo lähettänyt kutsun tälle henkilölle."
-      no_more: "You have no more invitations."
-      rejected: "The following email addresses had problems: "
+      no_more: "Ei enempää kutsuja."
+      rejected: "Ilmeni ongelmia seuraavissa sähköpostiosoitteissa: "
       sent: "Kutsusi on lähetetty henkilölle:"
     edit: 
       sign_up: "sign_up"
     new: 
-      comma_seperated_plz: "You can enter multiple email addresses separated by commas."
-      if_they_accept_info: "if they accept, they will be added to the aspect you invited them"
-      invite_someone_to_join: "Invite someone to join Diaspora!"
+      comma_seperated_plz: "Erottele sähköpostiosoitteet pilkulla."
+      if_they_accept_info: "Jos he hyväksyvät, heidät lisätään määrittämääsi verkostonäkymään."
+      invite_someone_to_join: "Kutsu joku Diasporan käyttäjäksi!"
       message: "Viesti:"
       send_an_invitation: "Lähetä kutsu"
       send_invitation: "Lähetä kutsu"
-      to: "To"
+      to: "Vastaanottaja"
   layouts: 
     application: 
       powered_by: "PALVELUN TARJOAA DIASPORA*"
     header: 
-      account_settings: "account settings"
+      account_settings: "Käyttäjätilin asetukset"
       blog: "blogi"
-      edit_profile: "edit profile"
+      edit_profile: "muokkaa profiilia"
       login: "kirjaudu sisään"
       logout: "kirjaudu ulos"
       view_profile: "tarkastele profiilia"
   new_requests: 
-    few: "%{count} new requests!"
-    one: "new request!"
-    other: "%{count} new requests!"
-    zero: "no new requests"
+    few: "%{count} uutta pyyntöä!"
+    one: "uusi pyyntö!"
+    other: "%{count} uutta pyyntöä!"
+    zero: "ei uusia pyyntöjä"
   notifier: 
-    diaspora: "the diaspora email robot"
+    diaspora: "diasporan sähköpostiohjelma"
     hello: "Hei %{name}!"
-    love: "love,"
+    love: "terveisin,"
     new_request: 
-      just_sent_you: "just sent you a friend request on Diaspora*"
+      just_sent_you: "lähetti juuri äsken sinulle kontaktipyynnön Diaspora*ssa"
       sign_in: "kirjaudu sisään täältä"
-      subject: "new Diaspora* friend request from %{from}"
-      try_it_out: "You should really think about checking it out."
+      subject: "uusi Diaspora* kontaktipyyntö %{from}:lta"
+      try_it_out: "Sinun pitäisi todella harkita sen tarkistamista."
     request_accepted: 
-      accepted: "has accepted your friend request. They are now in your"
-      aspect: "aspect."
-      subject: "%{name} has accepted your friend request on Diaspora*"
+      accepted: "on hyväksynyt kontaktipyyntösi. He kuuluvat nyt sinun "
+      aspect: "verkostonäkymä."
+      subject: "%{name} on hyväksynyt kontaktipyyntösi Diaspora*ssa"
   ok: "OK"
-  or: "or"
+  or: "tai"
   pagination: 
-    next: "Next"
-    previous: "Previous"
+    next: "Seuraava"
+    previous: "Edellinen"
   password: "Salasana"
-  password_confirmation: "Password confirmation"
+  password_confirmation: "Salasanan vahvistus"
   people: 
     edit: 
       allow_search: "Salli ihmisten etsiä sinua Diasporassa"
       first_name: "Etunimi"
-      info_available_to: "This info will be available to whomever you connect with on Diaspora."
+      info_available_to: "Kaikki Diasporan kontaktisi näkevät nämä tiedot."
       last_name: "Sukunimi"
       update_profile: "Päivitä profiili"
       your_bio: "Biografiasi"
@@ -181,54 +181,54 @@ fi:
       your_profile: "Profiilisi"
     helper: 
       people_on_pod_are_aware_of: " people on pod are aware of"
-      results_for: " results for %{params}"
+      results_for: " tulokset kyselylle: %{params}"
     index: 
       results_for: "hakutulokset kohteelle "
     person: 
-      add_contact: "add contact"
-      already_connected: "Already connected"
-      pending_request: "pending request"
-      thats_you: "thats you!"
+      add_contact: "lisää kontakti"
+      already_connected: "Yhteys jo olemassa"
+      pending_request: "odottaa vastausta"
+      thats_you: "tarkoittaa sinua!"
     profile_photo_upload: 
-      or_select_one: "or select one from your already existing"
+      or_select_one: "tai valitse yksi olemassa olevista"
     profile_sidebar: 
       bio: "biografia"
       born: "syntynyt"
-      cannot_remove: "Cannot remove %{name} from last aspect."
+      cannot_remove: "Nimeä: %{name} ei voida poistaa viimeisestä verkostonäkymästä."
       edit_my_profile: "Muokkaa profiilia"
       gender: "sukupuoli"
-      in_aspects: "in aspects"
-      remove_contact: "remove contact"
-      remove_from: "Remove %{name} from %{aspect}?"
+      in_aspects: "verkostonäkymissä"
+      remove_contact: "poista kontakti"
+      remove_from: "Poista %{name} verkostonäkymästä %{aspect}?"
     show: 
-      already_requested: "You have already sent a request to %{name}."
+      already_requested: "Olet jo lähettänyt pyynnön vastaanottajalle: %{name}."
       does_not_exist: "Henkilöä ei ole olemassa!"
-      incoming_request: "You have an incoming request from this person."
+      incoming_request: "Tämä henkilö on lähettänyt sinulle pyynnön."
       no_posts: "ei näytettäviä viestejä!"
-      not_connected: "You are not connected with this person"
-      request_people: "If you'd like, you can request to place him/her in one of your aspects."
-      return_to_aspects: "Return to your aspects page"
-      to_accept_or_ignore: "to accept or ignore it."
+      not_connected: "Et ole yhteydessä tähän henkilöön"
+      request_people: "Jos haluat, voit pyytää hänen sijoittamistaan yhteen verkostonäkymistäsi."
+      return_to_aspects: "Palaa verkostonäkymien sivulle"
+      to_accept_or_ignore: "hyväksy tai hylkää."
     update: 
       failed: "Profiilin päivittäminen epäonnistui"
       updated: "Profiili päivitetty"
   photos: 
     create: 
       integrity_error: "Kuvan lataus epäonnistui. Olethan varma että kyseessä oli kuvatiedosto?"
-      runtime_error: "Photo upload failed.  Are you sure that your seatbelt is fastened?"
-      type_error: "Photo upload failed.  Are you sure an image was added?"
+      runtime_error: "Kuvan tallennus epäonnistui. Onko turvavyösi varmasti kiinni?"
+      type_error: "Kuvan tallennus epäonnistui. Oletko varma, että kuva lisättiin?"
     destroy: 
       notice: "Kuva poistettu."
     edit: 
-      editing: "Editing"
+      editing: "Muokkaa"
     new: 
-      back_to_list: "Back to List"
+      back_to_list: "Takaisin listaan"
       new_photo: "Uusi kuva"
-      post_it: "post it!"
+      post_it: "lähetä!"
     new_photo: 
-      empty: "{file} is empty, please select files again without it."
-      invalid_ext: "{file} has invalid extension. Only {extensions} are allowed."
-      size_error: "{file} is too large, maximum file size is {sizeLimit}."
+      empty: "{file} on tyhjä, valitse tiedostot uudelleen ilman kyseistä tiedostoa."
+      invalid_ext: "{file} sisältää viallisen tiedostopäätteen. Tuetut muodot ovat {extensions}."
+      size_error: "{file} on liian suuri, suurin tiedostokoko on {sizeLimit}."
     photo: 
       view_all: "Näytä kaikki käyttäjän %{name}kuvat"
     show: 
@@ -236,22 +236,22 @@ fi:
       edit: "muokkaa"
       edit_delete_photo: "Muokkaa kuvan kuvausta / poista kuva"
       make_profile_photo: "laita profiili kuvaksi"
-      original_post: "Original Post"
+      original_post: "Alkuperäinen viesti"
       update_photo: "Päivitä kuva"
-      view: "view"
+      view: "avaa"
     update: 
       error: "Kuvan muokkaus epäonnistui."
       notice: "Kuva päivitetty onnistuneesti."
   profile: "Profiili"
   registrations: 
-    closed: "Signups are closed on this Diaspora pod."
+    closed: "Rekisteröityminen on suljettu tässä Diasporassa."
     create: 
-      success: "You've joined Diaspora!"
+      success: "Olet liittynyt Diasporaan!"
     edit: 
-      cancel_my_account: "Cancel my account"
-      edit: "Edit %{name}"
-      leave_blank: "(leave blank if you don't want to change it)"
-      password_to_confirm: "(we need your current password to confirm your changes)"
+      cancel_my_account: "Poista käyttäjätilini"
+      edit: "Muokkaa %{name}"
+      leave_blank: "(jätä tyhjäksi mikäli et halua muuttaa)"
+      password_to_confirm: "(tarvitsemme nykyisen salasanasi muutosten varmistusta varten)"
       unhappy: "Surullinen?"
       update: "Päivitä"
     new: 
@@ -259,88 +259,88 @@ fi:
       sign_up_for_diaspora: "Rekisteröidy Diasporaan"
   requests: 
     create: 
-      sending: "Sending..."
-      sent: "You've asked to share with %{name}.  They should see it next time they log in to Diaspora."
+      sending: "Lähetetään..."
+      sent: "Haluat jakaa %{name}:n kanssa. Heidän pitäisi nähdä se kirjauduttuaan uudelleen Diasporaan."
     destroy: 
-      error: "Please select an aspect!"
-      ignore: "Ignored friend request."
-      success: "You are now friends."
+      error: "Valitse verkostonäkymä!"
+      ignore: "Hylkää kontaktipyyntö."
+      success: "Olette nyt ystäviä."
     manage_aspect_contacts: 
-      existing: "Existing contacts"
-      manage_within: "Manage contacts within"
+      existing: "Kontaktit"
+      manage_within: "Muokkaa kontakteja verkostossa: "
     new_request_to_person: 
-      sent: "sent!"
+      sent: "lähetetty!"
   search: "Etsi"
   services: 
     create: 
-      success: "Authentication successful."
+      success: "Autentikointi onnistui."
     destroy: 
-      success: "Successfully destroyed authentication."
+      success: "Autentikoinnin tuhoaminen onnistui."
     index: 
-      connect_to_facebook: "Connect to facebook"
-      connect_to_twitter: "Connect to twitter"
-      disconnect: "disconnect"
-      logged_in_as: "logged in as"
-      really_disconnect: "disconnect %{service}?"
+      connect_to_facebook: "Yhdistä facebook:iin"
+      connect_to_twitter: "Yhdistä twitter:iin"
+      disconnect: "katkaise"
+      logged_in_as: "kirjautunut käyttäjänä:"
+      really_disconnect: "katkaise %{service}?"
   settings: "Asetukset"
   shared: 
     add_contact: 
-      create_request: "Find by Diaspora handle"
-      diaspora_handle: "Diaspora handle"
-      enter_a_diaspora_username: "Enter a Diaspora username:"
-      know_email: "Know their email address? You should invite them"
-      your_diaspora_username_is: "Your Diaspora username is: %{diaspora_handle}"
+      create_request: "Etsi Diaspora tunnuksella"
+      diaspora_handle: "diaspora@handle.org"
+      enter_a_diaspora_username: "Anna Diaspora käyttäjätunnus:"
+      know_email: "Tiedät heidän sähköpostiosoitteet? Kutsu heidät Diasporaan"
+      your_diaspora_username_is: "Diaspora käyttäjätunnuksesi on: %{diaspora_handle}"
     aspect_contacts: 
-      add_aspect: "add aspect"
-      add_existing: "Add an existing contact"
-      add_to: "add to %{aspect}"
-      all_contacts: "All contacts"
-      aspect_settings: "Aspect settings"
-      aspects: "Aspects"
-      confirm_remove_aspect: "Remove aspect?"
-      done_editing: "done editing"
-      invites: "Invites"
-      no_contacts: "You currently have no contacts.  Find your contacts here."
-      remove_aspect: "Remove Aspect"
+      add_aspect: "lisää verkostonäkymä"
+      add_existing: "Lisää kontakti"
+      add_to: "lisää verkostonäkymään: %{aspect}"
+      all_contacts: "Kaikki kontaktit"
+      aspect_settings: "Verkostonäkymän asetukset"
+      aspects: "Verkostonäkymät"
+      confirm_remove_aspect: "Poista verkostonäkymä?"
+      done_editing: "muokkaus valmis"
+      invites: "Kutsut"
+      no_contacts: "Sinulla ei ole kontakteja. Etsi kontaktejasi täältä."
+      remove_aspect: "Poista verkostonäkymä"
     contact_list: 
-      all_contacts: "All contacts"
-      cannot_remove: "Cannot remove person from last aspect."
+      all_contacts: "Kaikki kontaktit"
+      cannot_remove: "Henkilöä ei voitu poistaa viimeisestä verkostonäkymästä."
     invitations: 
-      dont_have_now: "You don't have any right now, but more invites are coming soon!"
+      dont_have_now: "Sinulla ei ole yhtään kutsua jäljellä, mutta lisää tulee pian!"
       invitations_left: "(%{count} jäljellä)"
-      invite_someone: "Invite someone"
-      invites_closed: "Invites are currently closed on this Diaspora seed"
+      invite_someone: "Kutsu joku Diasporaan"
+      invites_closed: "Kutsut on toistaiseksi suljettu tällä Diaspora palvelimella"
     notification: 
-      new: "New %{type} from %{from}"
+      new: "Uusi %{type}, lähettäjä: %{from}"
     public_explain: 
-      logged_in: "logged in to %{service}"
-      manage: "manage connected services"
-      outside: "Public messages will be available for others outside of Diaspora to see."
-      title: "You are about to post a public message!"
+      logged_in: "sisäänkirjautunut palveluun: %{service}"
+      manage: "muokkaa yhdistettyjä palveluita"
+      outside: "Julkiset viestit näkyvät Diasporan ulkopuolelle."
+      title: "Olet lähettämässä julkista viestiä!"
     publisher: 
-      add_photos: "add photos"
-      all: "all"
-      all_contacts: "all contacts"
-      make_public: "make public"
-      post_a_message_to: "Post a message to %{aspect}"
-      posting: "Posting..."
+      add_photos: "lisää kuvia"
+      all: "kaikki"
+      all_contacts: "kaikki kontaktit"
+      make_public: "julkista"
+      post_a_message_to: "Lähetä viesti %{aspect} verkostonäkymään"
+      posting: "Lähetetään..."
       share: "Jaa"
-      share_with: "Share with %{aspect}"
-      share_with_all: "Share with all aspects"
+      share_with: "Jaa verkostonäkymän %{aspect} kanssa"
+      share_with_all: "Jaa kaikkien verkostonäkymien kesken"
     reshare: 
-      reshare: "Reshare"
+      reshare: "Jaa uudelleen"
   status_messages: 
     helper: 
-      no_message_to_display: "No message to display."
+      no_message_to_display: "Ei näytettäviä viestejä."
     new_status_message: 
-      oh_yeah: "oh yeah!"
-      tell_me_something_good: "tell me something good"
+      oh_yeah: "komiaa!"
+      tell_me_something_good: "kerro jotain mukavaa"
     show: 
       destroy: "Tuhoa"
   stream_helper: 
-    hide_comments: "hide comments"
-    show_comments: "show comments"
-  the_world: "the world"
+    hide_comments: "piilota kommentit"
+    show_comments: "näytä kommentit"
+  the_world: "maailma"
   username: "Käyttäjätunnus"
   users: 
     destroy: "Tili suljettu onnistuneesti."
@@ -348,39 +348,39 @@ fi:
       change_language: "Vaihd kieli"
       change_password: "Vaihda salasana"
       close_account: "Sulje tili"
-      download_photos: "download my photos"
-      download_xml: "download my xml"
-      export_data: "Export Data"
+      download_photos: "lataa kaikki kuvat"
+      download_xml: "lataa tiedot XML-muodossa"
+      export_data: "Vie tiedot"
       new_password: "Uusi salasana"
-      your_email: "Your email"
-      your_handle: "Your diaspora handle"
+      your_email: "Sähköpostisoitteesi"
+      your_handle: "Diaspora tunnuksesi"
     getting_started: 
-      connect_services: "Connect your services"
-      define_aspects: "Define your aspects"
+      connect_services: "Yhdistä muihin palveluihin"
+      define_aspects: "Määritä verkostonäkymäsi"
       edit_profile: "Muokkaa profiiliasi"
-      finished: "Finished!"
+      finished: "Valmis!"
       save_and_continue: "Tallenna ja jatka"
-      signup_steps: "Complete your sign-up by doing these things:"
-      skip: "skip getting started"
+      signup_steps: "Rekisteröinti vaatii seuraavat kolme vaihetta:"
+      skip: "ohita aloitusohjeet"
       step_2: 
         add: "Lisää"
-        aspect_name: "Aspect name"
-        description: "Tell Diaspora what different aspects of you are seen by different friends.  You can manage these later by clicking the manage tab on the top right.  Your aspects are unique to you, and not visible by others."
-        drag_to_add: "Drag them to the aspect of yourself they know"
-        no_requests: "You have no requests"
-        your_aspects: "Your aspects"
-        your_inviter: "Here are the people who are waiting for you:"
+        aspect_name: "Verkostonäkymän nimi"
+        description: "Kerro Diasporalle mitä verkostonäkymiä näytetään kontakteillesi. Voit muokata näitä asetuksia myöhemmin oikealta ylhäältä löytyvän valikon kautta. Verkostonäkymäsi ovat oletusarvoisesti yksityisiä eikä niitä näytetä muille. "
+        drag_to_add: "Raahaa heidät verkostonäkymään"
+        no_requests: "Ei pyyntöjä"
+        your_aspects: "Verkostonäkymäsi"
+        your_inviter: "Sinua odottavat henkilöt:"
       step_3: 
-        description: "Connect your existing social networks to your Diaspora account.  You will be able to post publically through your Everyone tab when you select \"public.\""
-        your_services: "Your services"
+        description: "Yhdistä olemassa olevat sosiaalisten medioiden palvelusi Diaspora tiliisi.  Voit lähettää julkisia (ulospäin) viestejä alkunäkymästä valitsemalla \"julkinen.\""
+        your_services: "Sinun palvelut"
       step_4: 
-        change_profile: "You can change your profile any time by clicking"
-        continue: "Continue on to your everyone page, an overview of all of your aspects."
-        finish: "Finish"
-        manage_aspects: "You can manage your aspects any time by clicking the"
-        ready_to_share: "You're now ready to start sharing with "
-        set_up: "You're all set up, %{name}!"
-        user_menu: "in your user menu (top right)."
+        change_profile: "Voit muokata profiiliasi koska tahansa valitsemalla "
+        continue: "Jatka alkusivulle, joka tarjoaa yleisnäkymän kaikkiin verkostonäkymiisi."
+        finish: "Valmis"
+        manage_aspects: "Voit muokata kontaktejasi kaikissa verkostonäkymissä"
+        ready_to_share: "Olet nyt valmis jakamaan (kanssa) "
+        set_up: "Olet valmis, %{name}!"
+        user_menu: "valikossasi (ylhäällä oikealla)."
       welcome: "Tervetuloa Diasporaan!"
     public: 
       does_not_exist: "Käyttäjää %{username} ei ole olemassa!"
@@ -390,8 +390,8 @@ fi:
       password_changed: "Salasana vaihdettu"
       password_not_changed: "Salasanan vaihto epäonnistui"
   webfinger: 
-    fetch_failed: "failed to fetch webfinger profile for %{profile_url}"
-    hcard_fetch_failed: "there was a problem fetching the hcard for #{@account}"
-    no_person_constructed: "No person could be constructed from this hcard."
-    not_enabled: "webfinger does not seem to be enabled for %{account}'s host"
-    xrd_fetch_failed: "there was an error getting the xrd from account %{account}"
+    fetch_failed: "webfinger profiilin %{profile_url} haku epäonnistui"
+    hcard_fetch_failed: "ongelmia hcard:n hakemisessa tilille #{@account} "
+    no_person_constructed: "Henkilöä ei pystytty muodostamaan hcard:sta."
+    not_enabled: "webfinger palvelua ei ilmeisesti ole asetettu tilin: %{account} isännälle"
+    xrd_fetch_failed: "Haettaessa xrd:tä käyttäjätilille: %{account} tapahtui virhe "
diff --git a/config/locales/diaspora/it.yml b/config/locales/diaspora/it.yml
index 3e13cc2d18c5f6ad500a6782769506169656fd29..1e5dc680f56a7b4a42cd95f3598c3fc356932d2d 100644
--- a/config/locales/diaspora/it.yml
+++ b/config/locales/diaspora/it.yml
@@ -41,9 +41,9 @@ it:
     destroy: 
       success: "%{name} è stato rimosso con successo."
     edit_aspect_pane: 
-      add_existing: "Add an existing contact"
-      confirm_remove_aspect: "Remove aspect?"
-      remove_aspect: "Remove Aspect"
+      add_existing: "Aggiungi un contatto esistente"
+      confirm_remove_aspect: "Rimuovere l'aspetto?"
+      remove_aspect: "Rimuovi Aspetto"
     helper: 
       are_you_sure: "Sei sicuro di voler cancellare questo aspetto?"
       aspect_not_empty: "Aspetto non vuoto"
@@ -89,10 +89,10 @@ it:
       comment: "Commento"
       commenting: "Invio commento in corso..."
   contacts: 
-    few: "%{count} contacts"
-    one: "1 contact"
-    other: "%{count} contacts"
-    zero: "no contacts"
+    few: "%{count} contatti"
+    one: "1 contatto"
+    other: "%{count} contatti"
+    zero: "nessun contatto"
   delete: "Cancella"
   email: "Email"
   error_messages: 
@@ -142,10 +142,10 @@ it:
       logout: "esci"
       view_profile: "visualizza profilo"
   new_requests: 
-    few: "%{count} new requests!"
-    one: "new request!"
-    other: "%{count} new requests!"
-    zero: "no new requests"
+    few: "%{count} nuove richieste!"
+    one: "nuova richiesta!"
+    other: "%{count} nuove richieste!"
+    zero: "nessuna nuova richiesta"
   notifier: 
     diaspora: "l'email robot di diaspora"
     hello: "Ciao %{name}!"
@@ -162,8 +162,8 @@ it:
   ok: "OK"
   or: "o"
   pagination: 
-    next: "Next"
-    previous: "Previous"
+    next: "Successivo"
+    previous: "Precedente"
   password: "Password"
   password_confirmation: "Conferma password"
   people: 
@@ -297,19 +297,19 @@ it:
       all_contacts: "Tutti i contatti"
       aspect_settings: "Impostazioni aspetto"
       aspects: "Aspetti"
-      confirm_remove_aspect: "Rimuovere aspetto?"
+      confirm_remove_aspect: "Rimuovere l'aspetto?"
       done_editing: "modifica completata"
       invites: "Inviti"
       no_contacts: "Al momento non hai contatti.  Trova i tuoi contatti qui."
       remove_aspect: "Rimuovi Aspetto"
     contact_list: 
-      all_contacts: "All contacts"
+      all_contacts: "Tutti i contatti"
       cannot_remove: "Impossibile rimuovere la persona dall'ultimo aspetto."
     invitations: 
       dont_have_now: "Non ne hai alcuno per il momento, ma altri arriveranno presto!"
       invitations_left: "(%{count} rimanenti)"
       invite_someone: "Invita qualcuno"
-      invites_closed: "Invites are currently closed on this Diaspora seed"
+      invites_closed: "Al momento gli inviti sono chiusi su questo pod Diaspora."
     notification: 
       new: "Nuovo %{type} da %{from}"
     public_explain: 
@@ -338,8 +338,8 @@ it:
     show: 
       destroy: "Distruggi"
   stream_helper: 
-    hide_comments: "hide comments"
-    show_comments: "show comments"
+    hide_comments: "nascondi i commenti"
+    show_comments: "mostra i commenti"
   the_world: "il mondo"
   username: "Username"
   users: 
@@ -366,10 +366,10 @@ it:
         add: "Aggiungi"
         aspect_name: "Nome aspetto"
         description: "Specifica a Diaspora quali dei tuoi diversi aspetti sono visti da persone diverse. Potrai gestirli in un secondo momento attraverso il menu account in alto a destra. I tuoi aspetti sono visibili solo da te e non dagli altri."
-        drag_to_add: "Drag them to the aspect of yourself they know"
-        no_requests: "You have no requests"
+        drag_to_add: "Trascinale sull'aspetto di te che conoscono"
+        no_requests: "Non hai richieste"
         your_aspects: "I tuoi aspetti"
-        your_inviter: "Here are the people who are waiting for you:"
+        your_inviter: "Queste sono le persone che ti stanno aspettando:"
       step_3: 
         description: "Puoi collegare altri social network a cui sei iscritto al tuo account Diaspora. Potrai postarci pubblicamente della tua Home page quando selezioni \"rendilo pubblico\""
         your_services: "I tuoi servizi"
@@ -390,8 +390,8 @@ it:
       password_changed: "Password Cambiata"
       password_not_changed: "Cambio di password fallito"
   webfinger: 
-    fetch_failed: "failed to fetch webfinger profile for %{profile_url}"
-    hcard_fetch_failed: "there was a problem fetching the hcard for #{@account}"
-    no_person_constructed: "No person could be constructed from this hcard."
-    not_enabled: "webfinger does not seem to be enabled for %{account}'s host"
-    xrd_fetch_failed: "there was an error getting the xrd from account %{account}"
+    fetch_failed: "impossibile recuperare il profilo webfinger da %{profile_url}"
+    hcard_fetch_failed: "impossibile recuperare l'hcard di %{account}"
+    no_person_constructed: "Questa hcard non contiene i dati di una persona."
+    not_enabled: "webfinger non attivo sull'host di %{account}"
+    xrd_fetch_failed: "impossibile recuperare il xrd dall'account %{account}"
diff --git a/config/locales/diaspora/pl.yml b/config/locales/diaspora/pl.yml
index 8a4989cea3e22b5eccdd9d0a04d9ba963850272d..cab3bd270d0f34e33dffbc9ebbff3537b6e32ae2 100644
--- a/config/locales/diaspora/pl.yml
+++ b/config/locales/diaspora/pl.yml
@@ -109,7 +109,7 @@ pl:
       login_here: "zaloguj siÄ™"
       ownership: "Własność"
       ownership_explanation: "Twoje zdjęcia są Twoją własnością i nie musisz zrzekać się tego prawa, aby się nimi dzielić. Zarządzasz swoim prawem własności w stosunku do wszystkich materiałów umieszczanych w Diasporze, dzięki czemu masz kontrolę nad sposobem ich rozpowszechniania."
-      share_what_you_want: "Podziel siÄ™ czym chcesz i z kim chcesz."
+      share_what_you_want: "Dziel siÄ™ czym chcesz i z kim chcesz."
       simplicity: "Prostota"
       simplicity_explanation: "Diaspora sprawia, że dzielenie się ze znajomymi jest miłe, łatwe i przyjemne, zwłaszcza w odniesieniu do ochrony prywatności. Dbając o prywatność Dispora nie każe Ci korzystać z mnóstwa stron ustawień czy opcji, przez które trzeba się przedzierać, aby zabezpieczyć profil."
   invitations: 
@@ -286,7 +286,7 @@ pl:
   shared: 
     add_contact: 
       create_request: "Znajdź po identyfikatorze Diaspory"
-      diaspora_handle: "identyfikator@w.diasporze"
+      diaspora_handle: "identyfikator@diaspory"
       enter_a_diaspora_username: "Wpisz nazwę użytkownika Diaspory:"
       know_email: "Znasz adres e-mail tej osoby? Może warto ją zaprosić?"
       your_diaspora_username_is: "Twój identyfikator w Diasporze: %{diaspora_handle}"
@@ -391,7 +391,7 @@ pl:
       password_not_changed: "Nie udało się zmienić hasła"
   webfinger: 
     fetch_failed: "Nie udało się pobrać profilu Webfinger dla %{profile_url}"
-    hcard_fetch_failed: "Wystąpił problem podczas pobierania zbioru hcard dla #{@account}"
+    hcard_fetch_failed: "Wystąpił problem podczas pobierania wizytówki hcard użytkownika %{account}"
     no_person_constructed: "Nie udało się stworzyć osoby używając tego zbioru hcard."
-    not_enabled: "webfinger does not seem to be enabled for %{account}'s host"
+    not_enabled: "Usługa Webfinger nie działa w systemie utrzymującym konto użytkownika %{account}"
     xrd_fetch_failed: "wystąpił błąd podczas pobierania xrd z konta %{account}"
diff --git a/config/locales/diaspora/ru.yml b/config/locales/diaspora/ru.yml
index 0890d3bb7ddd691d77797cb5c6318e8ab6e560df..75be9c602d19225371cc6bbf40ae298e38f8d4e2 100644
--- a/config/locales/diaspora/ru.yml
+++ b/config/locales/diaspora/ru.yml
@@ -89,10 +89,10 @@ ru:
       comment: "Комментарий"
       commenting: "Комментирование ..."
   contacts: 
-    few: "%{count} contacts"
-    one: "1 contact"
-    other: "%{count} contacts"
-    zero: "no contacts"
+    few: "%{count} контактов"
+    one: "1 контакт"
+    other: "%{count} контактов"
+    zero: "ни одного контакта"
   delete: "Удаление"
   email: "Email"
   error_messages: 
@@ -142,10 +142,10 @@ ru:
       logout: "выйти"
       view_profile: "просмотр профиля"
   new_requests: 
-    few: "%{count} new requests!"
-    one: "new request!"
-    other: "%{count} new requests!"
-    zero: "no new requests"
+    few: "%{count} новых запросов!"
+    one: "новый запрос!"
+    other: "%{count} новых запросов!"
+    zero: "новых запросов нет"
   notifier: 
     diaspora: "почтовый робот Диаспоры"
     hello: "Привет %{name}!"
@@ -162,8 +162,8 @@ ru:
   ok: "Ок"
   or: "или"
   pagination: 
-    next: "Next"
-    previous: "Previous"
+    next: "Следующая"
+    previous: "Предыдущая"
   password: "Пароль"
   password_confirmation: "Подтверждение пароля"
   people: 
@@ -338,8 +338,8 @@ ru:
     show: 
       destroy: "Уничтожить"
   stream_helper: 
-    hide_comments: "hide comments"
-    show_comments: "show comments"
+    hide_comments: "скрыть комментарии"
+    show_comments: "комментарии"
   the_world: "мир"
   username: "Пользователь"
   users: 
@@ -367,7 +367,7 @@ ru:
         aspect_name: "Имя аспекта"
         description: "Укажите какие аспекты будут доступны для просмотра вашим контактам. Вы сможете изменять их в будущем, нажав на вкладку Управление в правом верхнем углу. Ваши аспекты уникальны и не видны другим."
         drag_to_add: "Перетащите их в ваш аспект"
-        no_requests: "You have no requests"
+        no_requests: "У вас нет запросов"
         your_aspects: "Ваши аспекты"
         your_inviter: "Здесь люди ожидающие вас:"
       step_3: 
@@ -390,7 +390,7 @@ ru:
       password_changed: "Пароль изменён"
       password_not_changed: "Неудачное изменение пароля "
   webfinger: 
-    fetch_failed: "failed to fetch webfinger profile for %{profile_url}"
+    fetch_failed: "Не удалось получить профиль для %{profile_url}"
     hcard_fetch_failed: "there was a problem fetching the hcard for #{@account}"
     no_person_constructed: "No person could be constructed from this hcard."
     not_enabled: "webfinger does not seem to be enabled for %{account}'s host"
diff --git a/lib/log_overrider.rb b/lib/log_overrider.rb
index 85bb64d6b91f68d7a49a91cb7e3d0965dc9cb997..fcc610c706f1f094393c51efb89cfba3b9ac2fa1 100644
--- a/lib/log_overrider.rb
+++ b/lib/log_overrider.rb
@@ -3,7 +3,8 @@ class ActionView::LogSubscriber
     message = "event=render "
     message << "template=#{from_rails_root(event.payload[:identifier])} "
     message << "layout=#{from_rails_root(event.payload[:layout])} " if event.payload[:layout]
-    message << "ms=#{("%.1f" % event.duration)}"
+    message << "ms=#{("%.1f" % event.duration)} "
+    #message << "r_id=#{event.transaction_id} "
     Rails.logger.info(message)
   end
   alias :render_partial :render_template
@@ -24,7 +25,8 @@ class ActionController::LogSubscriber
     log_string << "controller=#{payload[:controller]} action=#{payload[:action]} format=#{payload[:formats].first.to_s.upcase} "
     log_string << "ms=#{"%.0f" % event.duration} "
     log_string << "params='#{params.inspect}' " unless params.empty?
-    log_string << "additions='#{additions.join(" | ")}'" unless additions.blank?
+    #log_string << "additions='#{additions.join(" | ")}' " unless additions.blank?
+    log_string << "r_id=#{event.transaction_id} "
 
     Rails.logger.info(log_string)
   end
diff --git a/spec/controllers/home_controller_spec.rb b/spec/controllers/home_controller_spec.rb
index 806bc0a72c067e639af208ae08c1e00bd515992a..2093119c53065a36cf3df65bd8492db94b45edd9 100644
--- a/spec/controllers/home_controller_spec.rb
+++ b/spec/controllers/home_controller_spec.rb
@@ -27,11 +27,48 @@ describe HomeController do
   end
 
   #This describe should apply to any controller class.  HomeController is just the simplest.
-  describe 'logging' do
+  describe 'log overriding in lib/log_overrider' do
     before do
-      logger = FakeLogger.new
       Rails.stub(:logger).and_return(FakeLogger.new)
     end
+    context 'cross-stage' do
+      before do
+        get :show
+        @lines = Rails.logger.infos
+        @id = @lines.first.match(/r_id=(\w+)\s/).captures.first
+      end
+      it 'logs a unified id in a request' do
+        pending "This might require patching Rails"
+        id = @lines.first.match(/r_id=(\w+)\s/).captures.first
+        @lines.each do |line| 
+          line.match(/r_id=(\w+)\s/).captures.first.should == @id
+        end
+      end
+      it 'logs different ids in different requests' do
+        pending "This might require patching Rails"
+        get :show
+        old_lines = Rails.logger.infos.select do |line| 
+          line.match(/r_id=(\w+)\s/).captures.first == @id
+        end 
+        old_lines.length.should == Rails.logger.infos.length/2
+      end
+    end
+    context 'rendering' do
+      before do
+        get :show, :lasers => 'green'
+        @lines = Rails.logger.infos.select{|l| l.include?("event=render")}
+      end
+      it 'logs all renders' do
+        @lines.length.should == 2
+      end
+      it 'logs layouts' do
+        pending 'where is the template=home/show line?'
+        home_line = @lines.detect{|t| 
+          t.include?("template=home/show.html.haml")}
+        home_line.should match /layout=layouts\/application/
+      end
+
+    end
     context 'completion' do
       context 'ok' do
         before do