Posted by Anselm Heaton on May 18, 2011 at 12:44pm
2 followers
Jump to:
| Project: | Composite Layout |
| Version: | 6.x-1.x-dev |
| Component: | Code |
| Category: | bug report |
| Priority: | normal |
| Assigned: | Unassigned |
| Status: | postponed (maintainer needs more info) |
Issue Summary
Hello,
Here is a problem in composite layout :
Setup:
- I have languages L1,L2 and L3 ;
- I have a node N1, originally posted in language L1 and translated in language L2 but not in language L3 ;
- I have a composite layout C1, which includes node N1.
Result:
- If I view composite layout C1 in language L1, I get node N1 in language L1 ;
- If I view composite layout C1 in language L2, I get node N1 in language L2;
- If I view composite layout C1 in language L3, node N1 does not get displayed.
Solutions:
- Without i18n module, Drupal does not offer language based content negotiation settings. In this case I would suggest the correct approach is to display the node in :
- The current language if possible;
- If not, the default language if possible;
- If not the node shouldn't be displayed
- With i18n module, then the language bases content negotiation settings should be followed.
I've attached a patch which implements the no-i18n part of the fix.
Thanks for this awesome module :)
| Attachment | Size |
|---|---|
| composite.patch | 916 bytes |
Comments
#2
Hi,
(Disclaimer: This is a semi-tricky one for me to adjudicate because I don't currently run any multilanguage sites and my experiences with translation.module was with 5.x and quite some time ago. I may not necessarily be up to date with current convention regarding translations.)
Isn't the following more robust (and follows the path of least surprise)?
Without the i18n module, show:
I differ on point 3.
In any case, I don't think your patch covers 'With i18n module, then the language bases content negotiation settings should be followed.' and I'm not about to dig it up either.