For now the way (Link paths set to Link to site home page) DN link to other domain/subdomain is to simply link to default language. But it's quite annoying when user browse your page in French and he is redirected to German all the time. DN should redirect to proper language prefixes just like Domain Switcher Block.

Comments

agentrickard’s picture

Category: feature » bug

Actually going to call this a bug.

kelutrab11’s picture

Interesting. Didn't even try to use Domain Navigation but It could be worth a try. I tried use code from domain_alias but without any success in this particular case.

spamator12’s picture

I can confirm that with i18n this bug is active and frustrating cause you can't use

Link to active url

without sharing content along all the sites.

kerios83’s picture

Is this hard to fix ? Will there be given any ETA ? I'm asking cause it's the last think that delay my site going to live :)

henrix34’s picture

Follow

agentrickard’s picture

It's hard to fix if you don't use i18n.

I find it very hard to believe that no one who uses DA and i18n is capable of writing a patch.

@henrix34 -- Please use follow links from now on. See the button in the upper right of the page.

batigol’s picture

@kerios83 thanks for notice it :) I didn't notice that user Navigation don't work as my admin domain switching, nice catch.

agentrickard’s picture

Status: Active » Needs review
StatusFileSize
new2.23 KB

This patch seems to work, but touches a lot of the underlying interfaces, so we need:

* User reports of successful tests.
* Automated tests for the functionality.

agentrickard’s picture

StatusFileSize
new1.7 KB

Always a good idea to remove debugging statements.

batigol’s picture

This patch is working great! Thx!

EDIT:

BUT I have noticed that all links pointing to other domains use (besides domain navigation) language prefix x2. For example yoursite.com/pl/pl/aktualności (from main domain to a subdomain). Links pointing to default English language (without prefix) are fine though.

agentrickard’s picture

I don't get that behavior. Are you using Domain Path or any other module that rewrites URLs?

What is generating those links? Domain Nav? The Domain Switcher block? Drupal core?

batigol’s picture

Views. I'm using views to display my news and when you click on the title you are redirected to proper domain/subdomain the news belong to. Domain Navigation, Domain Switcher block are working fine.

$view = new view;
$view->name = 'latest_news';
$view->description = '';
$view->tag = 'default';
$view->base_table = 'node';
$view->human_name = 'latest_news';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */

/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'Latest News:';
$handler->display->display_options['access']['type'] = 'perm';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['query']['options']['query_comment'] = FALSE;
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['pager']['options']['items_per_page'] = '10';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['pager']['options']['id'] = '0';
$handler->display->display_options['pager']['options']['total_pages'] = '3';
$handler->display->display_options['pager']['options']['expose']['items_per_page_options_all'] = 0;
$handler->display->display_options['style_plugin'] = 'default';
$handler->display->display_options['row_plugin'] = 'fields';
/* Field: Content: Sticky */
$handler->display->display_options['fields']['sticky']['id'] = 'sticky';
$handler->display->display_options['fields']['sticky']['table'] = 'node';
$handler->display->display_options['fields']['sticky']['field'] = 'sticky';
$handler->display->display_options['fields']['sticky']['label'] = '';
$handler->display->display_options['fields']['sticky']['alter']['alter_text'] = 1;
$handler->display->display_options['fields']['sticky']['alter']['text'] = 'On top';
$handler->display->display_options['fields']['sticky']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['sticky']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['sticky']['alter']['external'] = 0;
$handler->display->display_options['fields']['sticky']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['sticky']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['sticky']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['sticky']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['sticky']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['sticky']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['sticky']['alter']['trim'] = 0;
$handler->display->display_options['fields']['sticky']['alter']['html'] = 0;
$handler->display->display_options['fields']['sticky']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['sticky']['element_default_classes'] = 1;
$handler->display->display_options['fields']['sticky']['hide_empty'] = 1;
$handler->display->display_options['fields']['sticky']['empty_zero'] = 0;
$handler->display->display_options['fields']['sticky']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['sticky']['type'] = 'sticky';
$handler->display->display_options['fields']['sticky']['not'] = 0;
/* Field: Content: Title */
$handler->display->display_options['fields']['title']['id'] = 'title';
$handler->display->display_options['fields']['title']['table'] = 'node';
$handler->display->display_options['fields']['title']['field'] = 'title';
$handler->display->display_options['fields']['title']['label'] = '';
$handler->display->display_options['fields']['title']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['title']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['title']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['title']['alter']['word_boundary'] = 0;
$handler->display->display_options['fields']['title']['alter']['ellipsis'] = 0;
$handler->display->display_options['fields']['title']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['title']['alter']['trim'] = 0;
$handler->display->display_options['fields']['title']['alter']['html'] = 0;
$handler->display->display_options['fields']['title']['hide_empty'] = 0;
$handler->display->display_options['fields']['title']['empty_zero'] = 0;
$handler->display->display_options['fields']['title']['link_to_node'] = 1;
/* Field: Content: domain News Image */
$handler->display->display_options['fields']['field_domain_image']['id'] = 'field_domain_image';
$handler->display->display_options['fields']['field_domain_image']['table'] = 'field_data_field_domain_image';
$handler->display->display_options['fields']['field_domain_image']['field'] = 'field_domain_image';
$handler->display->display_options['fields']['field_domain_image']['label'] = '';
$handler->display->display_options['fields']['field_domain_image']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_domain_image']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_domain_image']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_domain_image']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_domain_image']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_domain_image']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_domain_image']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_domain_image']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_domain_image']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_domain_image']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_domain_image']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_domain_image']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_domain_image']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_domain_image']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_domain_image']['hide_empty'] = 1;
$handler->display->display_options['fields']['field_domain_image']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_domain_image']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['field_domain_image']['click_sort_column'] = 'fid';
$handler->display->display_options['fields']['field_domain_image']['settings'] = array(
  'image_style' => 'subdomain1-image',
  'image_link' => 'content',
);
$handler->display->display_options['fields']['field_domain_image']['group_column'] = 'fid';
$handler->display->display_options['fields']['field_domain_image']['field_api_classes'] = 0;
/* Field: Content: subdomain1 News Image */
$handler->display->display_options['fields']['field_subdomain1_image']['id'] = 'field_subdomain1_image';
$handler->display->display_options['fields']['field_subdomain1_image']['table'] = 'field_data_field_subdomain1_image';
$handler->display->display_options['fields']['field_subdomain1_image']['field'] = 'field_subdomain1_image';
$handler->display->display_options['fields']['field_subdomain1_image']['label'] = '';
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_subdomain1_image']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_subdomain1_image']['hide_empty'] = 1;
$handler->display->display_options['fields']['field_subdomain1_image']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['field_subdomain1_image']['click_sort_column'] = 'fid';
$handler->display->display_options['fields']['field_subdomain1_image']['settings'] = array(
  'image_style' => 'subdomain1-image',
  'image_link' => 'content',
);
$handler->display->display_options['fields']['field_subdomain1_image']['group_column'] = 'fid';
$handler->display->display_options['fields']['field_subdomain1_image']['field_api_classes'] = 0;
/* Field: Content: subdomain2 News Image */
$handler->display->display_options['fields']['field_subdomain2_image']['id'] = 'field_subdomain2_image';
$handler->display->display_options['fields']['field_subdomain2_image']['table'] = 'field_data_field_subdomain2_image';
$handler->display->display_options['fields']['field_subdomain2_image']['field'] = 'field_subdomain2_image';
$handler->display->display_options['fields']['field_subdomain2_image']['label'] = '';
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['external'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['trim'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['alter']['html'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['field_subdomain2_image']['element_default_classes'] = 1;
$handler->display->display_options['fields']['field_subdomain2_image']['hide_empty'] = 1;
$handler->display->display_options['fields']['field_subdomain2_image']['empty_zero'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['field_subdomain2_image']['click_sort_column'] = 'fid';
$handler->display->display_options['fields']['field_subdomain2_image']['settings'] = array(
  'image_style' => 'subdomian1_news-image',
  'image_link' => 'content',
);
$handler->display->display_options['fields']['field_subdomain2_news_image']['group_column'] = 'fid';
$handler->display->display_options['fields']['field_subdomain2_image']['field_api_classes'] = 0;
/* Field: Content: Body */
$handler->display->display_options['fields']['body']['id'] = 'body';
$handler->display->display_options['fields']['body']['table'] = 'field_data_body';
$handler->display->display_options['fields']['body']['field'] = 'body';
$handler->display->display_options['fields']['body']['label'] = '';
$handler->display->display_options['fields']['body']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['body']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['body']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['body']['alter']['external'] = 0;
$handler->display->display_options['fields']['body']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['body']['alter']['trim_whitespace'] = 1;
$handler->display->display_options['fields']['body']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['body']['alter']['max_length'] = '350';
$handler->display->display_options['fields']['body']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['body']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['body']['alter']['strip_tags'] = 1;
$handler->display->display_options['fields']['body']['alter']['trim'] = 1;
$handler->display->display_options['fields']['body']['alter']['html'] = 0;
$handler->display->display_options['fields']['body']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['body']['element_default_classes'] = 1;
$handler->display->display_options['fields']['body']['hide_empty'] = 0;
$handler->display->display_options['fields']['body']['empty_zero'] = 0;
$handler->display->display_options['fields']['body']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['body']['field_api_classes'] = 0;
/* Field: Content: Comment count */
$handler->display->display_options['fields']['comment_count']['id'] = 'comment_count';
$handler->display->display_options['fields']['comment_count']['table'] = 'node_comment_statistics';
$handler->display->display_options['fields']['comment_count']['field'] = 'comment_count';
$handler->display->display_options['fields']['comment_count']['label'] = '';
$handler->display->display_options['fields']['comment_count']['exclude'] = TRUE;
$handler->display->display_options['fields']['comment_count']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['comment_count']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['comment_count']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['comment_count']['alter']['external'] = 0;
$handler->display->display_options['fields']['comment_count']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['comment_count']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['comment_count']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['comment_count']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['comment_count']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['comment_count']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['comment_count']['alter']['trim'] = 0;
$handler->display->display_options['fields']['comment_count']['alter']['html'] = 0;
$handler->display->display_options['fields']['comment_count']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['comment_count']['element_default_classes'] = 1;
$handler->display->display_options['fields']['comment_count']['hide_empty'] = 1;
$handler->display->display_options['fields']['comment_count']['empty_zero'] = 0;
$handler->display->display_options['fields']['comment_count']['hide_alter_empty'] = 0;
$handler->display->display_options['fields']['comment_count']['format_plural'] = 1;
$handler->display->display_options['fields']['comment_count']['format_plural_singular'] = '1 comment';
$handler->display->display_options['fields']['comment_count']['format_plural_plural'] = '@count comments';
$handler->display->display_options['fields']['comment_count']['prefix'] = '(';
$handler->display->display_options['fields']['comment_count']['suffix'] = ')';
/* Field: Content: All taxonomy terms */
$handler->display->display_options['fields']['term_node_tid']['id'] = 'term_node_tid';
$handler->display->display_options['fields']['term_node_tid']['table'] = 'node';
$handler->display->display_options['fields']['term_node_tid']['field'] = 'term_node_tid';
$handler->display->display_options['fields']['term_node_tid']['label'] = 'Tags';
$handler->display->display_options['fields']['term_node_tid']['alter']['alter_text'] = 0;
$handler->display->display_options['fields']['term_node_tid']['alter']['make_link'] = 0;
$handler->display->display_options['fields']['term_node_tid']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['term_node_tid']['alter']['external'] = 0;
$handler->display->display_options['fields']['term_node_tid']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['term_node_tid']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['term_node_tid']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['term_node_tid']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['term_node_tid']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['term_node_tid']['alter']['more_link'] = 0;
$handler->display->display_options['fields']['term_node_tid']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['term_node_tid']['alter']['trim'] = 0;
$handler->display->display_options['fields']['term_node_tid']['alter']['html'] = 0;
$handler->display->display_options['fields']['term_node_tid']['element_label_colon'] = 1;
$handler->display->display_options['fields']['term_node_tid']['element_default_classes'] = 1;
$handler->display->display_options['fields']['term_node_tid']['hide_empty'] = 1;
$handler->display->display_options['fields']['term_node_tid']['empty_zero'] = 0;
$handler->display->display_options['fields']['term_node_tid']['hide_alter_empty'] = 1;
$handler->display->display_options['fields']['term_node_tid']['link_to_taxonomy'] = 1;
$handler->display->display_options['fields']['term_node_tid']['limit'] = 0;
$handler->display->display_options['fields']['term_node_tid']['vocabularies'] = array(
  'forums' => 0,
  'shop' => 0,
  'tags' => 0,
);
/* Field: Content: Link */
$handler->display->display_options['fields']['view_node']['id'] = 'view_node';
$handler->display->display_options['fields']['view_node']['table'] = 'views_entity_node';
$handler->display->display_options['fields']['view_node']['field'] = 'view_node';
$handler->display->display_options['fields']['view_node']['label'] = '';
$handler->display->display_options['fields']['view_node']['alter']['alter_text'] = 1;
$handler->display->display_options['fields']['view_node']['alter']['text'] = 'Read more... [comment_count]';
$handler->display->display_options['fields']['view_node']['alter']['make_link'] = 1;
$handler->display->display_options['fields']['view_node']['alter']['absolute'] = 0;
$handler->display->display_options['fields']['view_node']['alter']['external'] = 0;
$handler->display->display_options['fields']['view_node']['alter']['replace_spaces'] = 0;
$handler->display->display_options['fields']['view_node']['alter']['trim_whitespace'] = 0;
$handler->display->display_options['fields']['view_node']['alter']['nl2br'] = 0;
$handler->display->display_options['fields']['view_node']['alter']['word_boundary'] = 1;
$handler->display->display_options['fields']['view_node']['alter']['ellipsis'] = 1;
$handler->display->display_options['fields']['view_node']['alter']['strip_tags'] = 0;
$handler->display->display_options['fields']['view_node']['alter']['trim'] = 0;
$handler->display->display_options['fields']['view_node']['alter']['html'] = 0;
$handler->display->display_options['fields']['view_node']['element_label_colon'] = FALSE;
$handler->display->display_options['fields']['view_node']['element_default_classes'] = 1;
$handler->display->display_options['fields']['view_node']['hide_empty'] = 0;
$handler->display->display_options['fields']['view_node']['empty_zero'] = 0;
$handler->display->display_options['fields']['view_node']['hide_alter_empty'] = 0;
/* Sort criterion: Content: Sticky */
$handler->display->display_options['sorts']['sticky']['id'] = 'sticky';
$handler->display->display_options['sorts']['sticky']['table'] = 'node';
$handler->display->display_options['sorts']['sticky']['field'] = 'sticky';
$handler->display->display_options['sorts']['sticky']['order'] = 'DESC';
/* Sort criterion: Content: Post date */
$handler->display->display_options['sorts']['created']['id'] = 'created';
$handler->display->display_options['sorts']['created']['table'] = 'node';
$handler->display->display_options['sorts']['created']['field'] = 'created';
$handler->display->display_options['sorts']['created']['order'] = 'DESC';
$handler->display->display_options['sorts']['created']['granularity'] = 'minute';
/* Filter criterion: Content: Published */
$handler->display->display_options['filters']['status']['id'] = 'status';
$handler->display->display_options['filters']['status']['table'] = 'node';
$handler->display->display_options['filters']['status']['field'] = 'status';
$handler->display->display_options['filters']['status']['value'] = 1;
$handler->display->display_options['filters']['status']['group'] = 0;
$handler->display->display_options['filters']['status']['expose']['operator'] = FALSE;
/* Filter criterion: Content: Type */
$handler->display->display_options['filters']['type']['id'] = 'type';
$handler->display->display_options['filters']['type']['table'] = 'node';
$handler->display->display_options['filters']['type']['field'] = 'type';
$handler->display->display_options['filters']['type']['value'] = array(
  'subdomain1' => 'subdomain1',
  'domain' => 'domain',
  'subdomain2' => 'subdomain2',
);
$handler->display->display_options['filters']['type']['group'] = '0';
/* Filter criterion: Content translation: Language */
$handler->display->display_options['filters']['language']['id'] = 'language';
$handler->display->display_options['filters']['language']['table'] = 'node';
$handler->display->display_options['filters']['language']['field'] = 'language';
$handler->display->display_options['filters']['language']['value'] = array(
  '***CURRENT_LANGUAGE***' => '***CURRENT_LANGUAGE***',
);
$handler->display->display_options['filters']['language']['group'] = '0';

/* Display: Block */
$handler = $view->new_display('block', 'Block', 'block');
agentrickard’s picture

Is it the TITLE or the READ MORE link that is broken? Or both?

batigol’s picture

Both.

agentrickard’s picture

Thanks.

kerios83’s picture

Adding path and use it in rewrite results (as a link rewrite with absolute url) doesn't fix this. Views still use /lang-prefix/lang-prefix/ in link.

kerios83’s picture

Status: Needs review » Needs work
agentrickard’s picture

Status: Needs work » Postponed (maintainer needs more info)
StatusFileSize
new14.87 KB

I cannot replicate this error using:

* DA 7.x.3
* Views 7.x.3
* Content Translation (core)
* Locale (core)
* Bartik (core theme)
* Path-based language negotiation.
* Three test languages (English, Swedish, Finnish)
* Content with no language assigned.
* Content in English with a translation in Finnish.

In all cases, the View works as expected. Note that I modified the View to remove certain fields and conditions not on my site.

So what is different about your configuration?

agentrickard’s picture

To be more clear: the provided View works correctly for me when the patch is installed.

kerios83’s picture

Status: Needs work » Postponed (maintainer needs more info)

I have apply the patch and used provided view with same results (prefix x2). Did those news (content) were assigned to different domain/subdomain - other then your default one ? Cause I don't have this problem when content is assigned to default domain.

EDIT: You do check the URL Detection method ? [Home » Administration » Configuration » Regional and language » Languages - Determine the language from the URL (Path prefix or domain).]

agentrickard’s picture

Status: Postponed (maintainer needs more info) » Needs work

Got it.

agentrickard’s picture

Status: Postponed (maintainer needs more info) » Needs work

DA only supports path-prefixing. I duplicated the problem by assigning something to a domain other than default,

kerios83’s picture

Ok, I can only add that on clean drupal 7 install I still have this problem:

drupal 7.12
Chaos tools 7.x-1.0
Views 7.x-3.3
Domain Access 7.x-3.3

* Content Translation (core)
* Locale (core)
+ URL Detection method

i18n, token, pathauto, variable, language icons, doesn't seems to been related with this issue (tested with few configuration possibilities and clear cache, update.php).

agentrickard’s picture

Status: Needs work » Needs review
StatusFileSize
new3.75 KB

I found the problem with the patch. This bit of the code forces the url() function to run twice, once on the root url for the domain and once for the requested path.

$path = domain_check_scheme($domain['scheme']) .'://'. $domain['subdomain'] . url('<front>');

The only solution I found was to make $language an optional argument for domain_get_path() and domain_get_uri(). Only domain_nav_render() passes a $language parameter.

I am not crazy about this solution, but it seems to work as expected.

We could use a test case for this behavior as well.

batigol’s picture

Great job, this is working exactly as it should. I can't say anything about code cause I'm not a programmer but module behaves in harmony with user expectations.

kerios83’s picture

This is working! Thanks!

agentrickard’s picture

Status: Needs review » Needs work
Issue tags: +Needs tests

Ok, so once we have a working test, this can go in.

henrix34’s picture

Patch from http://drupal.org/node/1508448#comment-5858222 is working. Thanks.

Farreres’s picture

Can you post a drupal 6 equivalent patch?

agentrickard’s picture

StatusFileSize
new6.15 KB

Updated patch against HEAD.

The tests still need work. There are some configuration options for language negotiation that are difficult to set properly.

agentrickard’s picture

Priority: Normal » Major
StatusFileSize
new6.15 KB

I still can't make the tests work.

Anyone who wants this feature really needs to help out or else it's never going in.

batigol’s picture

Hi agent, I run some tests on 7.15 with older version of DA (7.x-3.3) and patch from #24 is working fine for me.

I'm gona test newest patch later on.

EDIT: The patch applies partially (I have test it even with 3.4 - same thing happen).
domain.nav.module is updated, domain.test is updated, domain.module is NOT updated.

EDIT2:With this patch domain.module is updated - (can't attach a patch - drupal.org error - gona do it l8er)
and it seems that everything is working fine.

batigol’s picture

StatusFileSize
new6.15 KB

There is problem with opera if you want attach something, working fine on firefox however, here is a patch.

agentrickard’s picture

Patches need to go against the DEV branch of Git. See https://drupal.org/project/domain/git-instructions

henrix34’s picture

I can't download 3.3 dev version so if I understand correctly I must test this patch with 3.4 dev ?

agentrickard’s picture

In git, you want branch 7.x-3.x. If you don't know Git, there are tutorials linked from that page.

henrix34’s picture

This is working extremely well.

kerios83’s picture

I did test this last night. All good, green light here.

batigol’s picture

I have just install 3.6 and after checking available updates there is 3.7 already :P I remember that everything goes fine when I have tested this patch - #32. Anyway it's functionality is crucial so lets hope we will see it in 3.8

agentrickard’s picture

As I recall, the patch does not apply cleanly to 7.x-3.x branch, so it needs a re-roll. That's why it is marked "needs work".

spamator12’s picture

Tested with 3.3 no problems so far.

agentrickard’s picture

Version: 7.x-3.3 » 7.x-3.x-dev

The patch needs to apply to -dev.

kerios83’s picture

I had installed latest DA and I still get this error (with multilingual site). I can see this issue is not closed but the patch provided by @agentrickard is working so what happened... How to fix this ?

eMuse_be’s picture

Issue summary: View changes
StatusFileSize
new5.88 KB

Added a patch for the 3.11 release, as this does not containt the update.

eMuse_be’s picture

eMuse_be’s picture

This is still not implemented in 3.11, is this going to be updated ?

agentrickard’s picture

Status: Needs work » Needs review
Issue tags: -Needs tests

Please set new patches to "Needs Review".

pwiniacki’s picture

I just 'discovered' this bug. After downgrade to 3.3 and install the patch it seems to work just fine!

pwiniacki’s picture

https://www.drupal.org/node/1508448#comment-9545413 is working fine (EDIT: with 3.11 of course). Thanks @eMuse_be.

agentrickard’s picture

StatusFileSize
new5.76 KB

Patch was malformed and does not apply cleanly. We use -p1 formatted patches in Drupal.

agentrickard’s picture

Status: Needs review » Needs work

The use of . url('<front>'); here is a code smell. That doesn't seem proper for language negotiation.

The check for $language in domain_get_uri() makes no sense. That variable is never instantiated, nor is it passed to url() via $options, so that code needs a rewrite.

bluegeek9’s picture

Component: - Domain Nav » Code
Status: Needs work » Closed (outdated)

Drupal 7 in End of Life and no longer supported. We encourage you to upgrade to a supported version of Drupal. For more information, see https://www.drupal.org/upgrade.

//www.flaticon.com/free-icons/thank-you Thank you for your contribution! Your continued support of this project makes other volunteer contributions more sustainable.
There are multiple ways to show appreciation for the work contributed to this project, including:
  • Triaging issues and adding more context to existing issues.
  • Writing documentation or patches for this project.
xmacinfo’s picture

@bluegeek9 Please note that Drupal.org (not the new parts) is still running on Drupal 7.

Make sure to prioritize Drupal.org Drupal 7 upgrade to new Drupal.