Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

Upgrading SilverStripe

Ask questions about upgrading SilverStripe to the latest version.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Translations for Userform


Reply

736 Views

Avatar
ragunalth

21 May 2010 at 7:47pm Community Member, 14 Posts

Here is code to copy the form when creating a new language.

Add the following function in userforms/code/UserDefinedForm.php

function createTranslation($locale) {
$page = parent::createTranslation($locale);

$newPage = $page->getTranslation(Translatable::default_locale());
foreach($newPage->Fields() as $field) {
$newField = $field->duplicate();
$newField->ParentID = $page->ID;
$newField->write();
}
foreach($newPage->EmailRecipients() as $recipient) {
$newER = $recipient->duplicate();
$newER->FormID = $page->ID;
$newER->write();
}

return $page;
}

After this has been added you can create new languages on a page and it should copy your form over.