Blocks seems to be another case where, besides having translatable blocks, we may like to have the option of defining different blocks -may be related or not- per each language.
So the first solution that I thought of was adding a language field to the block table -already added the db field, maybe too quick...- and selecting blocks for display depending on language, like what we did for path aliases. The problem with this option is that it won't allow to show a module provided block for two languages but not for others.
I.e. We have Spanish, French, English. Then we want to show the 'latest comments' block (provided by comment.module) for Spanish and French but not for English. This is not possible right now if we simply add a language field to the 'block' table, as this block should be linked to two languages instead of only one.
So I am thinking: Would it be a good option to have a different table 'block_language' so you can enable a single block for as many languages as you want, like for roles?
May be some more work, bit more complex, some performance impact -blocks table is queried for each page request and we'd have an additional join here-... But on the other side it would be a more 'complete' solution.
|#100||move-block-test-to-block-module.patch||14.17 KB||Gábor Hojtsy|
|PASSED: [[SimpleTest]]: [MySQL] 35,357 pass(es).|
|#93||move-block-test-to-block-module.patch||14.18 KB||Gábor Hojtsy|
|PASSED: [[SimpleTest]]: [MySQL] 35,360 pass(es).|
|#90||135464-language_visibility-c90.patch||20.51 KB||Gábor Hojtsy|
|PASSED: [[SimpleTest]]: [MySQL] 35,356 pass(es).|
|#87||135464-language_visibility-c87.patch||19.96 KB||Gábor Hojtsy|
|PASSED: [[SimpleTest]]: [MySQL] 35,166 pass(es).|
|#86||135464-language_visibility-c86.patch||20.01 KB||Gábor Hojtsy|
|PASSED: [[SimpleTest]]: [MySQL] 35,156 pass(es).|