Index: l10n_community/l10n_community.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/l10n_server/l10n_community/Attic/l10n_community.module,v
retrieving revision 1.1.2.23.2.52
diff -u -p -r1.1.2.23.2.52 l10n_community.module
--- l10n_community/l10n_community.module	30 Sep 2009 07:48:18 -0000	1.1.2.23.2.52
+++ l10n_community/l10n_community.module	30 Sep 2009 08:54:16 -0000
@@ -1,5 +1,5 @@
 <?php
-// $Id: l10n_community.module,v 1.1.2.23.2.52 2009/09/30 07:48:18 goba Exp $
+// $Id: l10n_community.module,v 1.1.2.23.2.50 2009/09/18 18:03:19 goba Exp $
 
 /**
  * @file
@@ -168,7 +168,7 @@ function l10n_community_menu() {
   $items['translate/projects/autocomplete'] = array(
     'title' => 'Project autocomplete',
     'page callback' => 'l10n_community_projects_autocomplete',
-    'access arguments' => array('browse translations'),
+    'access arguments' => array('access localization community'),
     'type' => MENU_CALLBACK
   );
 
Index: l10n_community/welcome.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/l10n_server/l10n_community/Attic/welcome.inc,v
retrieving revision 1.1.2.7.2.11
diff -u -p -r1.1.2.7.2.11 welcome.inc
--- l10n_community/welcome.inc	30 Sep 2009 08:09:40 -0000	1.1.2.7.2.11
+++ l10n_community/welcome.inc	30 Sep 2009 08:54:16 -0000
@@ -1,5 +1,5 @@
 <?php
-// $Id: welcome.inc,v 1.1.2.7.2.11 2009/09/30 08:09:40 goba Exp $
+// $Id: welcome.inc,v 1.1.2.7.2.10 2009/09/18 18:03:19 goba Exp $
 
 /**
  * @file
@@ -129,8 +129,15 @@ function l10n_community_pick_go() {
       '#value' => $language_code
     );
   }
+  
+  if (count($language_list) > 1) {
+    $projects_title = user_access('browse translations') ? t('And/or pick a project') : t('Or pick a project');
+  }
+  else {
+    $projects_title = t('Pick a project for @language translation', array('@language' => $language_name));
+  }
   $form['project'] = array(
-    '#title' => (count($language_list) > 1) ? t('And/or pick a project') : t('Pick a project for @language translation', array('@language' => $language_name)),
+    '#title' => $projects_title,
     '#description' => t('Alternatively you can <a href="@explore">explore projects</a>.', array('@explore' => url('translate/projects')))
   );
   if (($count = count($projects)) <= 30) {
@@ -162,7 +169,7 @@ function l10n_community_pick_go() {
 function l10n_community_pick_go_validate($form, &$form_state) {
   if (empty($form_state['values']['project']) && empty($form_state['values']['langcode'])) {
     // We require at least one to be selected to be effective.
-    form_set_error('langcode', t('Select a language and/or a project.'));
+    form_set_error('langcode', t('At least select a language or a project.'));
   }
 }
 
@@ -177,15 +184,22 @@ function l10n_community_pick_go_submit($
   if (!empty($form_state['values']['project']) && ($uri = l10n_community_project_uri_by_title($form_state['values']['project']))) {
     // Project surely selected, possibly with language too.
     if (!empty($form_state['values']['langcode'])) {
-      $action = l10n_community_contribute_access($form_state['values']['langcode']) ? 'edit' : 'view';
-      drupal_goto('translate/languages/'. $form_state['values']['langcode'] .'/'. $action, 'project='. $uri);
+      if (user_access('browse translations')) {
+        $action = l10n_community_contribute_access($form_state['values']['langcode']) ? 'edit' : 'view';
+        drupal_goto('translate/languages/'. $form_state['values']['langcode'] .'/'. $action, 'project='. $uri);
+      }
+      else {
+        // Both language and project set, no access to browse > go to project.
+        drupal_goto('translate/projects/'. $uri);
+      }
     }
     else {
+      // Only project set.
       drupal_goto('translate/projects/'. $uri);
     }
   }
   elseif (!empty($form_state['values']['langcode'])) {
-    // Only language selected.
+    // Only language set.
     drupal_goto('translate/languages/'. $form_state['values']['langcode']);
   }
 }
