When i18n goes a little extra

Events happening in the community are now at Drupal community events on www.drupal.org.
Sheedz-gdo's picture

Hello Drupal folk,

I've been looking to build a multilingual (and localized) site for a client. (Please tell me if I'm in the wrong area to be asking/discussing this stuff).

I've been researching all the options and starting to confuse myself as the best method to use.

Country Set-up

The site I want to create has a few countries (i'll try keep out specifics so others can relate to it):

  • Country A
  • Country B
  • Country C
  • Country D

Some of these will just be in their native language. Some will be in English and also their native language. So the languages required will be:

  • Language A (english)
  • Language B
  • Language C
  • language C - English
  • Language D
  • Language D - English

Users

Now, in a perfect world, what I am hoping to achieve is a SuperAdmin who can make a post and send it to one or all countries (rather than having to login to each account and enter it multiple times). This is because some of the content will overlap, but the majority will be country based postings and pages.

I would then like CountryEditors who can only alter their respective country and use their languages on offer (So say country C will be able to make a post in the native language and a translation in english, nothing else).

Specs & Modules

I've decided on Drupal 6 because of it's advances with translations. With the i18n to allow for content translation and Localization Client to better allow translators complete untranslated strings within the site.

I've had a look at numerous sites options:

Domain Access

My research on this is leading me to believe there are issues with separating the languages due to some countries having both english and native.

Multisite Setup

If I can't connect the sites, then the information has to be repeatedly entered for each country.
(and with an attempt to share some nodes, but this won't work as the Country level editors wouldn't be allowed)

I think there was also set-up that attempted to combine Domain Access with a multisite set-up, but I've lost the link and not sure how it would hold up.

Once I nut this out I will try write a good comprehensive tutorial on the method I chose to go with. But I think I may end up having to separate the sites into their respective countries with a multisite setup and no nodes linked.

Plea for help

Has anyone else out there successfully completed a site such as this? What were the modules and site setup method that you used to have this work?

When I have a chance I will provide further information on what issues I have come across and methods I have discovered.

Cheers

Comments

domain project

toemaz's picture

Take a look at http://drupal.org/project/domain and all the contrib modules such as http://drupal.org/project/singlesignon
Good luck!

Other options

jax's picture

You can either tag all your posts with the related country/countries. There are plenty of modules extending the permission system based on taxonomies.

Another approach would be to use og and to make a group per country. This way you can enable users to work on one specific country quite easily. You can also specify specific a theme per group which often is handy.

Cheers. Limiting the languages.

Sheedz-gdo's picture

I'll have more of a look at organic groups as I'd read a little about it but didn't completely understand it. I'll also check out more on the Taxonomy Access.

One issue that seems to pop up if I try have things linked, is limiting users access to languages.

Say I want to create a user for Country B. Is there a way I can limit them to only post translations for their country but only in their native language and in English.

With the current options it seems to be an all or none option.

Thanks for the replies

Very interesting project

fletchgqc's picture

That is a very interesting - and I believe complicated - project. Generally I believe Drupal is the CMS of choice for sites revolving around i18n; certainly in the open source world and probably further than that. This showcase describes briefly some rationale for choosing drupal for a project I did: http://drupal.org/node/315932.

The reason it sounds complicated is that essentially you're talking about 2 separate layers - one is the country the person is in and one is the language they speak. One country can speak many languages; but one language can be spoken in many countries. It would make your life substantially easier if the client would allow everyone from one language group to just have the same resource, regardless of country. Obviously that's not really an option... so at a guess you will definitely end up writing quite a bit of code. Please contribute it at the end in the form of a module that others can use for the same problem!

Some brief thoughts:

  • i18n allows you to select language based on the domain the user is using to access the site. Won't solve your problem but worth investigating - I have used this successfully on prod sites.
  • There's a link from the i18n project page to a module called translation access that sounds like it provides what you are talking about in terms of language-based permissions.

Good luck.

Just to follow up

Sheedz-gdo's picture

I've put this on hiatus for a whie.

However, I did start to research it and make a bit of headway. I need to learn more about making modules. So if someone doesn't work on something similar in the future, I may come back to this.

Thanks very much for your replies.

Internationalization

Group organizers

Group categories

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: