diff --git a/node_gallery.module b/node_gallery.module
index d218361..689b25a 100755
--- a/node_gallery.module
+++ b/node_gallery.module
@@ -1190,19 +1190,38 @@ function node_gallery_theme_registry_alter(&$theme_registry) {
  */
 function node_gallery_list_galleries_title($account, $content_type = NULL) {
   global $user;
+  $values = array();
 
-  if (isset($content_type)) {
-    $rel = node_gallery_get_relationship($content_type);
-  }
   if (is_string($account) ) {
     $account = user_load(array('name' => $account));
   }
   if (module_exists('realname')) {
     $account->name = theme('username', $account, array('plain' => TRUE));
   }
-  $name = $user->uid == $account->uid ? "My" : $account->name . '\'s';
-  $gallery_name = !empty($rel['settings']['name']) ? $rel['settings']['name'] : '';
-  return t('@user @gallery Galleries', array('@user' => $name, '@gallery' => $gallery_name));
+  
+  if ($user->uid != $account->uid) {
+    $values['@user'] = $account->name;
+  }
+  
+  if (!empty($content_type)) {
+    $rel = node_gallery_get_relationship($content_type);
+    $values['@gallery'] = $rel['settings']['name'];
+  }
+  
+  // localization
+  if (array_key_exists('@user',$values)) {
+    if (array_key_exists('@gallery',$values)) {
+      return t('@user\'s @gallery Galleries', $values);
+    } else {
+      return t('@user\'s Galleries', $values);
+    }
+  } else {
+    if (array_key_exists('@gallery',$values)) {
+      return t('My @gallery Galleries', $values);
+    } else {
+      return t('My Galleries', $values);
+    }
+  }
 }
 
 function node_gallery_preprocess_node(&$vars) {
