Ook vandaag heb ik verder gewerkt aan het ontwikkelen van de meertaligheids functionaliteit in de despat applicatie.
De eerste uren van de dag heb ik mij vooral bezig gehouden met het afwerken van de code om pagina’s in verschillende talen te bekijken zoals ik gisteren reeds besproken heb. >.
TinyMCE
Eens de artikels juist werden weergegeven kon ik beginnen aan de eigenlijke interface om de vertaling op uit te voeren. Deze zou per tekstblok bestaan uit 2 tekstvelden (1 met de originele tekst en 1 met de vertaalde tekst). Deze tekstvelden worden dan omgezet naar WYSIWYG-editors met behulp van TinyMCE. TinyMCE is een opensource javascript project dat dus textareas omzet naar volwaardige editors. In de configuratie-file kan worden ingesteld welke knoppen er moeten worden weergegeven.
In onderstaande afbeelding zie je een tinyMCE editor met alle mogelijke functieknoppen.

Readonly
Maar al snel bleek dat er op het eerste tekstveld (met de originele tekst) geen TinyMCE editor nodig was, omdat dit veld toch onveranderd moest blijven. Normaal gezien zit er in de TinyMCE applicatie een plugin die ervoor zorgt dat de inhoud van een tekstveld niet kan gewijzigd worden. Maar deze bleek niet te werken. Na een beetje zoekwerk bleek dat er nog vele anderen met die probleem kampten, dus ben ik op zoek gegaan naar een andere oplossing.
De oplossing leek vrij simpel te zijn. Niels (de persoon die verantwoordelijk is voor het schrijven van de xhtml en css code van de design patterns) kwam met het voorstel om de originele tekst in een div te steken met “overflow: auto”. Dit zou ervoor zorgen dat als de inhoud van de div groter wordt dan de opgegeven hoogte, zal er een scrollbar getoond worden.
Eens de template van deze pagina voltooid was kon ik terug beginnen met programmeren. Als een gebruiker op de Translate link klikt van een pagina krijgt hij nu dus een formulier te zien waarop hij zijn vertaling kan uitvoeren, en waar hij kan kiezen naar welke taal de tekst vertaald wordt.





