public function actionEditSubmission(array $variables = array())
{
// Do we have a submission model?
if (!isset($variables['submission'])) {
// We require a submission ID
if (empty($variables['submissionId'])) {
throw new HttpException(404);
}
// Get submission if available
$submission = craft()->amForms_submissions->getSubmissionById($variables['submissionId']);
if (!$submission) {
throw new Exception(Craft::t('No submission exists with the ID “{id}”.', array('id' => $variables['submissionId'])));
}
} else {
$submission = $variables['submission'];
}
// Get form if available
$form = craft()->amForms_forms->getFormById($submission->formId);
if (!$form) {
throw new Exception(Craft::t('No form exists with the ID “{id}”.', array('id' => $submission->formId)));
}
// Get tabs
$tabs = array();
$layoutTabs = $submission->getFieldLayout()->getTabs();
foreach ($layoutTabs as $tab) {
$tabs[$tab->id] = array('label' => $tab->name, 'url' => '#tab' . $tab->sortOrder);
}
// Add notes to tabs
$tabs['notes'] = array('label' => Craft::t('Notes'), 'url' => $submission->getCpEditUrl() . '/notes');
// Set variables
$variables['submission'] = $submission;
$variables['form'] = $form;
$variables['tabs'] = $tabs;
$variables['layoutTabs'] = $layoutTabs;
$this->renderTemplate('amforms/submissions/_edit', $variables);
}