function lti_tool_provider_outcomes_resource_manage_form in LTI Tool Provider 7
Form to manage outcomes.
Parameters
array $form: The form array.
array $form_state: The form state array.
Return value
array The form array.
1 string reference to 'lti_tool_provider_outcomes_resource_manage_form'
- lti_tool_provider_outcomes_menu in lti_tool_provider_outcomes/
lti_tool_provider_outcomes.module - Implements hook_menu().
File
- lti_tool_provider_outcomes/
lti_tool_provider_outcomes.admin.inc, line 19 - Admin forms and menu page callbacks for LTI Tool Provider module.
Code
function lti_tool_provider_outcomes_resource_manage_form($form, &$form_state, $current = FALSE) {
$form = array();
if (isset($_SESSION['lti_tool_provider_context_info'])) {
$consumer_id = $_SESSION['lti_tool_provider_context_info']['consumer_id'];
$context_id = $_SESSION['lti_tool_provider_context_info']['context_id'];
$resource_link_id = $_SESSION['lti_tool_provider_context_info']['resource_link_id'];
$consumer = lti_tool_provider_consumer_load($consumer_id);
if ($current) {
$resource = lti_tool_provider_outcomes_get_resource($consumer_id, $context_id, $resource_link_id);
if (isset($resource)) {
$resources = array();
$resources[] = $resource;
}
else {
$resources = NULL;
}
}
else {
$resources = lti_tool_provider_outcomes_get_resources_for_context($consumer_id, $context_id);
}
$form['title'] = array(
'#type' => 'item',
'#markup' => t('Consumer: <b>@consumer</b>', array(
'@consumer' => $consumer->lti_tool_provider_consumer_consumer,
)),
);
$form['context'] = array(
'#type' => 'item',
'#markup' => t('Context: <b>@context</b>', array(
'@context' => $context_id,
)),
);
if (isset($resources)) {
$form['records'] = array(
'#type' => 'value',
'#value' => $resources,
);
$form['table'] = array(
'#prefix' => '<div id="replace-table">',
'#suffix' => '</div>',
'#tree' => TRUE,
'#theme' => 'table',
'#rows' => array(),
'#header' => array(
t('No'),
t('Resource Title'),
t('Score Datatype'),
t('Date Created'),
t('Operations'),
),
'#empty' => t('No records found.'),
);
$rows = 0;
foreach ($resources as $resource) {
$entity = array(
'#type' => 'value',
'#value' => $resource,
);
$no = array(
'#type' => 'item',
'#markup' => $rows + 1,
);
$title = array(
'#type' => 'item',
'#markup' => check_plain($resource->lti_tool_provider_outcomes_resource_resource_link_title),
);
$datatype_arr = lti_tool_provider_outcomes_datatype_array($resource->lti_tool_provider_outcomes_resource_resultvalue_sourcedids);
$def_value = isset($form_state['input']['table'][$rows]['container'][1]) ? $form_state['input']['table'][$rows]['container'][1] : array_search($resource->lti_tool_provider_outcomes_resource_score_datatype, $datatype_arr);
$datatype_container = array();
$datatype_container_start = array(
'#prefix' => '<div id=' . $resource->lti_tool_provider_outcomes_resource_id . '"_datatype_container" class="container-inline">',
);
$datatype = array(
'#type' => 'select',
'#options' => $datatype_arr,
'#default_value' => $def_value,
'#ajax' => array(
'callback' => 'lti_tool_provider_outcomes_resource_datatype_callback',
'wrapper' => 'replace-table',
'effect' => 'fade',
'method' => 'replace',
),
);
if (strcasecmp($datatype_arr[$def_value], 'ratio') == 0) {
$prefix = '<div id="' . $resource->lti_tool_provider_outcomes_resource_id . '_base_no_value" style="visibility:visible;">';
$is_visible = TRUE;
$base_no = $resource->lti_tool_provider_outcomes_resource_score_datatype_base_value;
}
else {
$prefix = '<div id="' . $resource->lti_tool_provider_outcomes_resource_id . '_base_no_value" style="visibility:hidden;">';
$is_visible = FALSE;
$base_no = '0';
}
$baseno = array(
'#prefix' => $prefix,
'#type' => 'textfield',
'#size' => 3,
'#maxlength' => 3,
'#required' => FALSE,
'#suffix' => '</div>',
'#is_visible' => $is_visible,
'#default_value' => $base_no,
);
$datatype_container_end = array(
'#prefix' => '</div>',
);
$datatype_container[] = $datatype_container_start;
$datatype_container[] = $datatype;
$datatype_container[] = $baseno;
$datatype_container[] = $datatype_container_end;
$date_created = array(
'#type' => 'item',
'#markup' => '<div style=" white-space:normal;">' . t(format_date($resource->lti_tool_provider_outcomes_resource_timestamp_created)) . "</div>",
);
$operations = array(
'#type' => 'item',
'#markup' => l(t('Outcomes'), 'lti-tool-provider-outcomes/outcomes/by-resource/' . $resource->lti_tool_provider_outcomes_resource_id) . '       ' . l(t('Delete'), 'lti-tool-provider-outcomes/resource/' . $resource->lti_tool_provider_outcomes_resource_id . '/confirm_delete') . '  ',
);
$rows++;
$form['table'][] = array(
'entity' => &$entity,
'no' => $no,
'title' => &$title,
'container' => &$datatype_container,
'date_created' => &$date_created,
'operations' => &$operations,
);
$form['table']['#rows'][] = array(
array(
'data' => &$no,
),
array(
'data' => &$title,
),
array(
'data' => &$datatype_container,
'width' => '160px',
),
array(
'data' => &$date_created,
),
array(
'data' => &$operations,
),
);
unset($no);
unset($title);
unset($datatype_container);
unset($date_created);
unset($operations);
unset($entity);
}
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Save'),
'#submit' => array(
'lti_tool_provider_outcomes_resource_manage_form_submit',
),
);
}
else {
$form['message'] = array(
'#type' => 'item',
'#markup' => t('<b> No records avaliable</b>'),
);
}
}
else {
$form['message'] = array(
'#type' => 'item',
'#markup' => t('<b> This is not a valid LTI Session</b>'),
);
}
return $form;
}