function opigno_quiz_app_form_alter in Opigno Quiz App 7
Quiz node form alter
Shows/Hides calendar date field
File
- ./
opigno_quiz_app.module, line 1552 - Module file. Defines module hooks.
Code
function opigno_quiz_app_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == "quiz_node_form" && isset($form['type']['#value']) && $form['type']['#value'] == "quiz") {
$form['field_add_to_calendar']['#parent'] = 'quiz_availability';
$form['opigno_calendar_date']['#parent'] = 'quiz_availability';
$form['opigno_calendar_date']['#states'] = array(
'invisible' => array(
'#edit-field-add-to-calendar-und' => array(
'checked' => FALSE,
),
),
);
$form['quiz_availability']['field_add_to_calendar'] = $form['field_add_to_calendar'];
$form['quiz_availability']['opigno_calendar_date'] = $form['opigno_calendar_date'];
$form['#submit'][] = 'opigno_quiz_app_unset_opigno_calendar_date';
unset($form['field_add_to_calendar']);
unset($form['opigno_calendar_date']);
$form['#validate'][] = "opigno_quiz_app_check_questions_for_type";
}
elseif ($form_id == 'quiz_question_answering_form') {
/// Hides the finish quiz for users not registered
//$form['question']['#weight']=-1;
// Add touch support on mobile.
if (isset($form['question_nid'])) {
$q_node = node_load($form['question_nid']['#value']);
if ($q_node->type === 'quiz_drag_drop') {
$form['#attached']['js'][] = drupal_get_path('module', 'opigno_quiz_app') . '/js/jquery.ui.touch-punch.min.js';
}
}
$form['is_doubtful']['#weight'] = 49;
$form['navigation']['#weight'] = 50;
if (!user_is_logged_in()) {
/// Is it the last question?
if (isset($form['#attributes']['data-confirm-message'])) {
unset($form['navigation']['submit']);
unset($form['navigation']['op']);
}
}
/////////////////////////////////////////////////////
$path = drupal_get_path('module', 'opigno_quiz_app');
drupal_add_js("{$path}/js/opigno_quiz_app.js");
}
}