diff options
author | Sashi20 | 2019-09-16 11:39:40 +0530 |
---|---|---|
committer | Sashi20 | 2019-09-16 11:39:40 +0530 |
commit | db34ba9fbc2a625d47f957144929706c2bdec653 (patch) | |
tree | 40b255c6caf5c2b29555a04b42a027beb69473c2 /dependency_approval.inc | |
parent | b8e07a4c41eea64ff50f88fd826c96f1a980b3b3 (diff) | |
download | cfd_lab_migration-db34ba9fbc2a625d47f957144929706c2bdec653.tar.gz cfd_lab_migration-db34ba9fbc2a625d47f957144929706c2bdec653.tar.bz2 cfd_lab_migration-db34ba9fbc2a625d47f957144929706c2bdec653.zip |
Add lab migration module files
Diffstat (limited to 'dependency_approval.inc')
-rwxr-xr-x | dependency_approval.inc | 156 |
1 files changed, 156 insertions, 0 deletions
diff --git a/dependency_approval.inc b/dependency_approval.inc new file mode 100755 index 0000000..625761c --- /dev/null +++ b/dependency_approval.inc @@ -0,0 +1,156 @@ +<?php +/******************************************************************************/ +/********************************* BULK APPROVAL ******************************/ +/******************************************************************************/ +function lab_migration_dependency_approval_form($form, $form_state) + { + /* default value for ahah fields */ + if (!isset($form_state['values']['dependency'])) + { + $dependency_default_value = 0; + } + else + { + $dependency_default_value = $form_state['values']['dependency']; + } + $form['wrapper'] = array( + '#type' => 'fieldset', + '#title' => t('Bulk Manage Code'), + '#collapsible' => FALSE, + '#collapsed' => FALSE, + '#prefix' => '<div id="run-wrapper">', + '#suffix' => '</div>', + '#tree' => TRUE + ); + $form['wrapper']['dependency'] = array( + '#type' => 'select', + '#title' => t('Dependency'), + '#options' => _list_of_dependencies(), + '#default_value' => $dependency_default_value, + '#tree' => TRUE, + '#attributes' => array( + 'id' => 'dependancy' + ) + ); + $form["wrapper"]['dependencyfiles'] = array( + '#markup' => '<div id = "dependency-files"></div>' + ); + $form['wrapper']['delete_dependency'] = array( + '#type' => 'checkbox', + "#description" => 'Please unlink the dependency from the above solutions before deleting it', + '#title' => t('Delete Dependency'), + '#prefix' => '<div id="delete-dependency-file">', + '#attributes' => array( + 'id' => 'delete-dependancy' + ) + ); + $form['wrapper']['submit'] = array( + '#type' => 'submit', + '#value' => t('Submit'), + '#suffix' => '</div>' + ); + return $form; + } +function lab_migration_dependency_approval_ajax($item = "", $key = "") + { + $data = ""; + $dependency_default_value = $key; + $solution_list = array(); + //$solution_id_q = db_query("SELECT * FROM {lab_migration_solution_dependency} WHERE dependency_id = %d", $dependency_default_value); + $query = db_select('lab_migration_solution_dependency'); + $query->fields('lab_migration_solution_dependency'); + $query->condition('dependency_id', $dependency_default_value); + $solution_id_q = $query->execute(); + while ($solution_id_data = $solution_id_q->fetchObject()) + { + //$solution_q = db_query("SELECT * FROM {lab_migration_solution} WHERE id = %d", $solution_id_data->solution_id); + $query = db_select('lab_migration_solution'); + $query->fields('lab_migration_solution'); + $query->condition('id', $solution_id_data->solution_id); + $solution_q = $query->execute(); + $solution_data = $solution_q->fetchObject(); + //$experiment_q = db_query("SELECT * FROM {lab_migration_experiment} WHERE id = %d", $solution_data->experiment_id); + $query = db_select('lab_migration_experiment'); + $query->fields('lab_migration_experiment'); + $query->condition('id', $solution_data->experiment_id); + $experiment_q = $query->execute(); + $experiment_data = $experiment_q->fetchObject(); + //$lab_q = db_query("SELECT * FROM {lab_migration_proposal} WHERE id = %d", $experiment_data->proposal_id); + $query = db_select('lab_migration_proposal'); + $query->fields('lab_migration_proposal'); + $query->condition('id', $experiment_data->proposal_id); + $lab_q = $query->execute(); + $lab_data = $lab_q->fetchObject(); + $solution_list[] = array( + $solution_data->code_number, + $experiment_data->number . ' . ' . $experiment_data->title, + $lab_data->lab_title + ); + } + $solution_list_header = array( + 'Code', + 'Experiment', + 'Lab' + ); + //$solution = theme_table($solution_list_header, $solution_list); + $solution = theme('table', array( + 'header' => $solution_list_header, + 'rows' => $solution_list + )); + $data .= $solution; + echo $data; + } +function lab_migration_dependency_approval_form_submit($form, &$form_state) + { + global $user; + $root_path = lab_migration_path(); + if ($form_state['clicked_button']['#value'] == 'Submit') + { + if (user_access('bulk manage code')) + { + if ($form_state['values']['delete_dependency'] == "1") + { + //$solution_q = db_query("SELECT * FROM {lab_migration_solution_dependency} WHERE dependency_id = %d", $form_state['values']['wrapper']['dependency']); + $query = db_select('lab_migration_solution_dependency'); + $query->fields('lab_migration_solution_dependency'); + $query->condition('dependency_id', $form_state['values']['dependency']); + $solution_q = $query->execute(); + if ($solution_data = $solution_q->fetchObject()) + { + drupal_set_message('Cannot delete dependency since it is linked with some solutions', 'error'); + } + else + { + if (lab_migration_delete_dependency($form_state['values']['dependency'])) + { + drupal_set_message('Dependency deleted', 'status'); + /* email */ + $email_subject = t('Dependency deleted'); + $email_body = t('Dependency deleted : .') . $form_state['values']['dependency']; + $email_to = variable_get('lab_migration_emails', '') . ', ' . $user->mail; + $param['standard']['subject'] = $email_subject; + $param['standard']['body'] = $email_body; + if (!drupal_mail('lab_migration', 'standard', $email_to, language_default(), $param, variable_get('lab_migration_from_email', NULL), TRUE)) + drupal_set_message('Error sending email message.', 'error'); + } + } + } + } + } + } +function _list_of_dependencies() + { + $dependencies = array( + '0' => 'Please select...' + ); + //$dependency_q = db_query("SELECT * FROM {lab_migration_dependency_files} ORDER BY filename ASC"); + $query = db_select('lab_migration_dependency_files'); + $query->fields('lab_migration_dependency_files'); + $query->orderBy('filename', 'ASC'); + $dependency_q = $query->execute(); + while ($dependency_data = $dependency_q->fetchObject()) + { + $dependencies[$dependency_data->id] = $dependency_data->filename . ' (' . $dependency_data->filepath . ')'; + } + return $dependencies; + } |