diff --git a/include/class.ticket.php b/include/class.ticket.php index cfc167ae9e9311783649cea00304b9c8d39fa259..a2cee6153ae00ba9efb04c91562f00804fb235b9 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -2980,7 +2980,7 @@ implements RestrictedAccess, Threadable { } $user_form = UserForm::getUserForm()->getForm($vars); - $can_create = $thisstaff->getRole()->hasPerm(User::PERM_CREATE); + $can_create = !$thisstaff || $thisstaff->getRole()->hasPerm(User::PERM_CREATE); if (!$user_form->isValid($field_filter('user')) || !($user=User::fromVars($user_form->getClean(), $can_create)) ) { diff --git a/include/client/open.inc.php b/include/client/open.inc.php index e04c9f6eefcb4e165aa9918e602503281f5c3fcd..30013531f1b897f3e5880b24f2235429a544b678 100644 --- a/include/client/open.inc.php +++ b/include/client/open.inc.php @@ -16,6 +16,8 @@ if (!$info['topicId']) $forms = array(); if ($info['topicId'] && ($topic=Topic::lookup($info['topicId']))) { foreach ($topic->getForms() as $F) { + if (!$F->hasAnyVisibleFields()) + continue; if ($_POST) { $F = $F->instanciate(); $F->isValidForClient(); @@ -82,8 +84,6 @@ if ($info['topicId'] && ($topic=Topic::lookup($info['topicId']))) { </tbody> <tbody id="dynamic-form"> <?php foreach ($forms as $form) { - if (!$form->hasAnyVisibleFields()) - continue; include(CLIENTINC_DIR . 'templates/dynamic-form.tmpl.php'); } ?> </tbody> diff --git a/include/staff/ticket-open.inc.php b/include/staff/ticket-open.inc.php index a6fe4c26cce9173c1c1d30eaaa954e79de4a99e4..80f4829e20f950bd81d30f13d5053e7ad0214cfb 100644 --- a/include/staff/ticket-open.inc.php +++ b/include/staff/ticket-open.inc.php @@ -12,6 +12,8 @@ if (!$info['topicId']) $forms = array(); if ($info['topicId'] && ($topic=Topic::lookup($info['topicId']))) { foreach ($topic->getForms() as $F) { + if (!$F->hasAnyVisibleFields()) + continue; if ($_POST) { $F = $F->instanciate(); $F->isValidForClient(); @@ -266,8 +268,6 @@ if ($_POST) <tbody id="dynamic-form"> <?php foreach ($forms as $form) { - if (!$form->hasAnyVisibleFields()) - continue; print $form->getForm()->getMedia(); include(STAFFINC_DIR . 'templates/dynamic-form.tmpl.php'); }