When trying to process you pot files with gettext there are duplicates detected ending with a fatal error. Please remove the correcponding entry.

web/sites/all/modules/devel/translations/devel.pot:777: duplicate message definition...
web/sites/all/modules/devel/translations/devel.pot:27: ...this is the location of the first definition

containing actually:

#: devel_node_access.module:37
msgid ""
msgstr ""

Comments

avpaderno’s picture

The problem is caused by the code passing an empty string to t(). An empty string is always an empty string in every language; it doesn't make sense to use t() in these cases.

function devel_node_access_help($path, $arg) {
  switch ($path) {
    case 'admin/settings/modules#description':
      return t('Development helper for node_access table');
      break;
    case 'admin/help#devel_node_access':
      $output  = '<p>'. t('This module helps in site development.  Specifically, when an access control module is used to limit access to some or all nodes, this module provides some feedback showing the node_access table in the database.') ."</p>\n";
      $output .= '<p>'. t('The node_access table is one method Drupal provides to hide content from some users while displaying it to others.  By default, Drupal shows all nodes to all users.  There are a number of optional modules which may be installed to hide content from some users.') ."</p>\n";
      $output .= '<p>'. t('If you have not installed any of these modules, you really have no need for the devel_node_access module.  This module is intended for use during development, so that developers and admins can confirm that the node_access table is working as expected.  You probably do not want this module enabled on a production site.') ."</p>\n";
      $output .= '<p>'. t('This module provides two blocks.  One called Devel Node Access by User is visible when a single node is shown on a page.  This block shows which users can view, update or delete the node shown.  Note that this block uses an inefficient algorithm to produce its output.  You should only enable this block on sites with very few user accounts.') ."</p>\n";
      $output .= '<p>'. t('The second block provided by this module shows the entries in the node_access table for any nodes shown on the current page.  You can enable the debug mode on the !settings_page to display much more information, but this can cause considerable overhead.  Because the tables shown are wide, it is recommended to enable the blocks in the page footer rather than a sidebar.',
                          array('!settings_page' => l(t('settings page'), 'admin/settings/devel', array('fragment' => 'edit-devel-node-access-debug-mode')))
                          ) ."</p>\n";
      $output .= '<p>'. t('This module also provides a !summary_page which shows general information about your node_access table.  If you have installed the Views module, you may browse node_access by realm.',
                          array('!summary_page' => l(t('summary page'), 'devel/node_access/summary'))
                          ) ."</p>\n";
      $output .= '<p>'. t('') ."</p>\n";
      return $output;
avpaderno’s picture

Title: duplicate in pot translation file » An empty string is passed to t()

I am changing the issue title to reflect what the actual problem is.

salvis’s picture

Assigned: Unassigned » salvis
Status: Fixed » Active

Oops, this is a left-over template line. I'll remove it tonight. Thanks for the analysis, KiamLaLuno!

I'm about to post an update to DNA with quite a few new strings, so if that happens to be your interest, then please wait for the commit. Also, I'm not sure how moshe handles the .pot file. Your best bet is to extract your own fresh version from the module using the potx module. Thanks in advance for looking into translating Devel!

salvis’s picture

Status: Active » Fixed

http://drupal.org/cvs?commit=259508

I've also updated the .pot file, which was 9 months old, so you can use that one. Give it up to 12h to be repackaged.

Assigned: salvis » Unassigned
Status: Active » Closed (fixed)

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