function support_form_alter in Support Ticketing System 7
Same name and namespace in other branches
- 6 support.module \support_form_alter()
Customize comment form for ticket followups.
File
- ./
support.module, line 2141 - support.module
Code
function support_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == 'comment_node_support_ticket_form') {
if (is_array($form) && isset($form['nid']) && is_array($form['nid'])) {
$node = node_load($form['nid']['#value']);
}
if (isset($node) && is_object($node) && isset($node->type) && $node->type == 'support_ticket') {
$reference = array();
_support_status_form_attach($form, $form_state, $node);
_support_subscribe_form_attach($form, $form_state, $node);
$form['comment_filter']['comment']['#title'] = t('Update');
unset($form['_author']);
}
}
else {
if ($form_id == 'search_form' && variable_get('support_remove_tickets', TRUE)) {
unset($form['advanced']['type']['#options']['support_ticket']);
}
else {
if ($form_id == 'search_theme_form' && variable_get('support_override_theme', FALSE)) {
$form['#submit'] = array(
'support_search_form_submit',
);
}
else {
if ($form_id == 'search_block_form' && variable_get('support_override_block', FALSE)) {
$form['#submit'] = array(
'support_search_form_submit',
);
}
}
}
}
if ($form_id == 'search_form' && $form['module']['#value'] == 'support' && user_access('use advanced search')) {
// Keyword boxes:
$form['advanced'] = array(
'#type' => 'fieldset',
'#title' => t('Advanced search'),
'#collapsible' => TRUE,
'#collapsed' => TRUE,
'#attributes' => array(
'class' => array(
'search-advanced',
),
),
);
$form['advanced']['keywords'] = array(
'#prefix' => '<div class="criterion">',
'#suffix' => '</div>',
);
$form['advanced']['keywords']['or'] = array(
'#type' => 'textfield',
'#title' => t('Containing any of the words'),
'#size' => 30,
'#maxlength' => 255,
);
$form['advanced']['keywords']['phrase'] = array(
'#type' => 'textfield',
'#title' => t('Containing the phrase'),
'#size' => 30,
'#maxlength' => 255,
);
$form['advanced']['keywords']['negative'] = array(
'#type' => 'textfield',
'#title' => t('Containing none of the words'),
'#size' => 30,
'#maxlength' => 255,
);
$form['advanced']['submit'] = array(
'#type' => 'submit',
'#value' => t('Advanced search'),
'#prefix' => '<div class="action">',
'#suffix' => '</div>',
);
// Clients
$clients = _support_available_clients();
if (sizeof($clients) > 1) {
$form['advanced']['client'] = array(
'#type' => 'select',
'#multiple' => TRUE,
'#title' => t('Search specific client(s)'),
'#prefix' => '<div class="criterion">',
'#suffix' => '</div>',
'#options' => $clients,
);
}
// States
$states = _support_states();
if (sizeof($states) > 1) {
$form['advanced']['state'] = array(
'#type' => 'select',
'#multiple' => TRUE,
'#title' => t('Search specific state(s)'),
'#prefix' => '<div class="criterion">',
'#suffix' => '</div>',
'#options' => $states,
);
}
// Priorities
$priorities = _support_priorities();
if (sizeof($priorities) > 1) {
$form['advanced']['priority'] = array(
'#type' => 'select',
'#multiple' => TRUE,
'#title' => t('Search specific priorities'),
'#prefix' => '<div class="criterion">',
'#suffix' => '</div>',
'#options' => $priorities,
);
}
$form['#validate'][] = 'support_search_validate';
}
}