summaryrefslogtreecommitdiff
path: root/dependency_approval.inc
diff options
context:
space:
mode:
authorSashi202019-09-16 11:39:40 +0530
committerSashi202019-09-16 11:39:40 +0530
commitdb34ba9fbc2a625d47f957144929706c2bdec653 (patch)
tree40b255c6caf5c2b29555a04b42a027beb69473c2 /dependency_approval.inc
parentb8e07a4c41eea64ff50f88fd826c96f1a980b3b3 (diff)
downloadcfd_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-xdependency_approval.inc156
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;
+ }