function library_transaction_form in Library 5.2
Same name and namespace in other branches
- 6.2 library.pages.inc \library_transaction_form()
- 6 library.pages.inc \library_transaction_form()
- 7 library.pages.inc \library_transaction_form()
1 string reference to 'library_transaction_form'
- library_menu in ./
library.module - Implementation of hook_menu().
File
- ./
library.pages.inc, line 4
Code
function library_transaction_form(&$form_state, $item = NULL) {
$aid = arg(3);
$patron_id = arg(4);
$form = array();
global $user;
if ($aid) {
$action = library_get_action($aid);
}
if ($patron_id) {
$patron = node_load($patron_id);
}
$action_list = array();
$aids = array();
if ($item) {
if ($item->in_circulation == LIBRARY_REFERENCE_ONLY) {
$action_array = variable_get('library_links_display_reference', array());
}
else {
if ($item->library_status == LIBRARY_ITEM_AVAILABLE) {
$action_array = variable_get('library_links_display_available', array());
}
else {
$action_array = variable_get('library_links_display_unavailable', array());
}
}
foreach ($action_array as $aid) {
$aids[] = $aid;
}
}
foreach (library_actions($aids, $user) as $key => $value) {
$action_list[$key] = $value['name'];
}
if (user_access('administer transactions')) {
$form['action_aid'] = array(
'#type' => 'select',
'#title' => t('Action'),
'#default_value' => $action->aid ? $action->aid : '',
'#options' => $action_list,
'#required' => TRUE,
);
}
else {
$form['action_aid'] = array(
'#type' => 'select',
'#title' => t('Action'),
'#default_value' => $action->aid ? $action->aid : '',
'#options' => array(
$action->aid => $action->name,
),
'#required' => TRUE,
'#disabled' => TRUE,
);
}
$form['item_id'] = library_autocomplete_input($item);
if (user_access('view patron content')) {
$form['patron_id'] = array(
'#type' => 'textfield',
'#title' => t('Patron'),
'#default_value' => $patron ? $patron->title . ' [nid:' . $patron->nid . ']' : '',
'#autocomplete_path' => 'patrons/autocomplete',
'#required' => TRUE,
);
}
elseif ($patron) {
$form['patron_id'] = array(
'#type' => 'item',
'#title' => t('Patron'),
'#value' => $patron ? $patron->title . ' [nid:' . $patron->nid . ']' : '',
);
}
else {
$user_patron = patron_load_by_uid($user->uid);
if (is_object($user_patron)) {
$form['patron_id'] = array(
'#type' => 'item',
'#title' => t('Patron'),
'#value' => $user_patron ? $user_patron->title . ' [nid:' . $user_patron->nid . ']' : '',
);
}
else {
form_set_error('', t('You do not have sufficient permission to perform a library transaction.'));
}
}
$form['notes'] = array(
'#type' => 'textarea',
'#title' => t('Message'),
'#required' => FALSE,
'#maxlength' => 250,
'#default_value' => '',
'#description' => t('If you are reserving an item, make sure to include the date and time you would like it to be ready.'),
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Save'),
);
$form['#validate'][] = 'library_transaction_form_validate';
$form['#submit'][] = 'library_transaction_form_submit';
return $form;
}