summaryrefslogtreecommitdiff
path: root/dependency_approval.inc
diff options
context:
space:
mode:
Diffstat (limited to 'dependency_approval.inc')
-rwxr-xr-xdependency_approval.inc395
1 files changed, 215 insertions, 180 deletions
diff --git a/dependency_approval.inc b/dependency_approval.inc
index 4903141..81cf6f8 100755
--- a/dependency_approval.inc
+++ b/dependency_approval.inc
@@ -1,205 +1,240 @@
<?php
-
/******************************************************************************/
/**************************** DEPNDENCY APPROVAL ******************************/
/******************************************************************************/
-
function textbook_companion_dependency_approval_form($form_state)
-{
- // $form['#redirect'] = FALSE;
-
- // ahah_helper_register($form, $form_state);
-
- /* default value for ahah fields */
- // if (!isset($form_state['storage']['run']['dependency']))
- // {
- // $dependency_default_value = 0;
- // } else {
- // $dependency_default_value = $form_state['storage']['run']['dependency'];
- // }
-
- $form['run'] = array(
- '#type' => 'fieldset',
- '#title' => t('Manage Dependency'),
- '#collapsible' => FALSE,
- '#collapsed' => FALSE,
- '#prefix' => '<div id="run-wrapper">',
- '#suffix' => '</div>',
- '#tree' => TRUE,
- );
-
- $form['run']['dependency'] = array(
- '#type' => 'select',
- '#title' => t('Dependency'),
- '#options' => _textbook_companion_list_of_dependencies(),
- '#default_value' => $dependency_default_value,
- '#tree' => TRUE,
- // '#ahah' => array(
- // 'event' => 'change',
- // 'effect' => 'none',
- // 'path' => ahah_helper_path(array('run')),
- // 'wrapper' => 'run-wrapper',
- // 'progress' => array(
- // 'type' => 'throbber',
- // 'message' => t(''),
- // ),
- // ),
- );
-
- // $example_list = array();
- /************ START OF $_POST **************/
- /*
- if ($_POST)
{
+ // $form['#redirect'] = FALSE;
+ // ahah_helper_register($form, $form_state);
+ /* default value for ahah fields */
+ // if (!isset($form_state['storage']['run']['dependency']))
+ // {
+ // $dependency_default_value = 0;
+ // } else {
+ // $dependency_default_value = $form_state['storage']['run']['dependency'];
+ // }
+ $form['run'] = array(
+ '#type' => 'fieldset',
+ '#title' => t('Manage Dependency'),
+ '#collapsible' => FALSE,
+ '#collapsed' => FALSE,
+ '#prefix' => '<div id="run-wrapper">',
+ '#suffix' => '</div>',
+ '#tree' => TRUE
+ );
+ $form['run']['dependency'] = array(
+ '#type' => 'select',
+ '#title' => t('Dependency'),
+ '#options' => _textbook_companion_list_of_dependencies(),
+ '#default_value' => $dependency_default_value,
+ '#tree' => TRUE
+ // '#ahah' => array(
+ // 'event' => 'change',
+ // 'effect' => 'none',
+ // 'path' => ahah_helper_path(array('run')),
+ // 'wrapper' => 'run-wrapper',
+ // 'progress' => array(
+ // 'type' => 'throbber',
+ // 'message' => t(''),
+ // ),
+ // ),
+ );
+ // $example_list = array();
+ /************ START OF $_POST **************/
+ /*
+ if ($_POST)
+ {
if ($dependency_default_value > 0)
{
- $example_id_q = db_query("SELECT * FROM {textbook_companion_example_dependency} WHERE dependency_id = %d", $dependency_default_value);
- while ($example_id_data = db_fetch_object($example_id_q)) {
- $example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d", $example_id_data->example_id);
- $example_data = db_fetch_object($example_q);
- $chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE id = %d", $example_data->chapter_id);
- $chapter_data = db_fetch_object($chapter_q);
- $preference_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE id = %d", $chapter_data->preference_id);
- $preference_data = db_fetch_object($preference_q);
- $example_list[] = array($example_data->number, $chapter_data->number . ' . ' . $chapter_data->name, $preference_data->book);
- }
- $example_list_header = array('Code', 'Chapter', 'Book');
- $example = theme_table($example_list_header, $example_list);
-
- if ($example_list) {
- $form['run']['example_dependency'] = array(
- '#type' => 'item',
- '#value' => $example,
- );
- $form['run']['example_dependency_message'] = array(
- '#type' => 'item',
- '#value' => 'Please unlink the dependency from the above example before deleting it',
- );
- }
+ $example_id_q = db_query("SELECT * FROM {textbook_companion_example_dependency} WHERE dependency_id = %d", $dependency_default_value);
+ while ($example_id_data = db_fetch_object($example_id_q)) {
+ $example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d", $example_id_data->example_id);
+ $example_data = db_fetch_object($example_q);
+ $chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE id = %d", $example_data->chapter_id);
+ $chapter_data = db_fetch_object($chapter_q);
+ $preference_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE id = %d", $chapter_data->preference_id);
+ $preference_data = db_fetch_object($preference_q);
+ $example_list[] = array($example_data->number, $chapter_data->number . ' . ' . $chapter_data->name, $preference_data->book);
+ }
+ $example_list_header = array('Code', 'Chapter', 'Book');
+ $example = theme_table($example_list_header, $example_list);
+
+ if ($example_list) {
+ $form['run']['example_dependency'] = array(
+ '#type' => 'item',
+ '#value' => $example,
+ );
+ $form['run']['example_dependency_message'] = array(
+ '#type' => 'item',
+ '#value' => 'Please unlink the dependency from the above example before deleting it',
+ );
+ }
+ }
}
+ */
+ /* hidden form elements */
+ // $form['run']['dependency_hidden'] = array(
+ // '#type' => 'hidden',
+ // '#value' => $form_state['values']['run']['dependency'],
+ // );
+ // if (!$example_list && $dependency_default_value > 0)
+ // {
+ $form['run']['delete_dependency'] = array(
+ '#type' => 'checkbox',
+ '#title' => t('Delete Dependency')
+ );
+ $form['run']['submit'] = array(
+ '#type' => 'submit',
+ '#value' => t('Submit')
+ );
+ // }
+ return $form;
}
- */
-
- /* hidden form elements */
- // $form['run']['dependency_hidden'] = array(
- // '#type' => 'hidden',
- // '#value' => $form_state['values']['run']['dependency'],
- // );
-
- // if (!$example_list && $dependency_default_value > 0)
- // {
- $form['run']['delete_dependency'] = array(
- '#type' => 'checkbox',
- '#title' => t('Delete Dependency'),
- );
- $form['run']['submit'] = array(
- '#type' => 'submit',
- '#value' => t('Submit')
- );
- // }
-
- return $form;
-}
-
-
function textbook_companion_dependency_approval_form_submit($form, &$form_state)
-{
- global $user;
- $root_path = textbook_companion_path();
-
- if ($form_state['clicked_button']['#value'] == 'Submit')
{
- if (user_access('bulk manage code'))
- {
- if ($form_state['values']['run']['delete_dependency'] == "1")
+ global $user;
+ $root_path = textbook_companion_path();
+ if ($form_state['clicked_button']['#value'] == 'Submit')
{
- $example_q = db_query("SELECT * FROM {textbook_companion_example_dependency} WHERE dependency_id = %d", $form_state['values']['run']['dependency']);
- if ($example_data = db_fetch_object($example_q)) {
-
- $example_id_q = db_query("SELECT * FROM {textbook_companion_example_dependency} WHERE dependency_id = %d", $form_state['values']['run']['dependency']);
- while ($example_id_data = db_fetch_object($example_id_q)) {
- $example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d", $example_id_data->example_id);
- $example_data = db_fetch_object($example_q);
- $chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE id = %d", $example_data->chapter_id);
- $chapter_data = db_fetch_object($chapter_q);
- $preference_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE id = %d", $chapter_data->preference_id);
- $preference_data = db_fetch_object($preference_q);
- $example_list[] = array($preference_data->book, $chapter_data->number, $example_data->number);
- }
- $example_list_header = array('Book', 'Chapter', 'Code');
- $example = theme_table($example_list_header, $example_list);
-
- drupal_set_message('Cannot delete dependency since it is linked with following examples. Delete these examples first before deleting the dependency file :' . $example, 'error');
-
- } else {
- if (textbook_companion_delete_dependency($form_state['values']['run']['dependency']))
+ if (user_access('bulk manage code'))
{
- drupal_set_message('Dependency deleted' , 'status');
-
- /* email */
- $email_subject = t('Dependency deleted');
- $email_body = t('Dependency deleted : .') . $form_state['values']['run']['dependency'];
- $email_to = $user->mail;
- $param['standard']['subject'] = $email_subject;
- $param['standard']['body'] = $email_body;
- if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $param, variable_get('textbook_companion_from_email', NULL), TRUE))
- drupal_set_message('Error sending email message.', 'error');
+ if ($form_state['values']['run']['delete_dependency'] == "1")
+ {
+ /*$example_q = db_query("SELECT * FROM {textbook_companion_example_dependency} WHERE dependency_id = %d", $form_state['values']['run']['dependency']);*/
+ $query = db_select('textbook_companion_example_dependency');
+ $query->fields('textbook_companion_example_dependency');
+ $query->condition('dependency_id', $form_state['values']['run']['dependency']);
+ $example_q = $query->execute();
+ if ($example_data = $example_q->fetchObject())
+ {
+ /*$example_id_q = db_query("SELECT * FROM {textbook_companion_example_dependency} WHERE dependency_id = %d", $form_state['values']['run']['dependency']);*/
+ $query = db_select('textbook_companion_example_dependency');
+ $query->fields('textbook_companion_example_dependency');
+ $query->condition('dependency_id', $form_state['values']['run']['dependency']);
+ $example_id_q = $query->execute();
+ while ($example_id_data = $example_id_q->fetchObject())
+ {
+ /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d", $example_id_data->example_id);
+ $example_data = db_fetch_object($example_q);*/
+ $query = db_select('textbook_companion_example');
+ $query->fields('textbook_companion_example');
+ $query->condition('id', $example_id_data->example_id);
+ $result = $query->execute();
+ $example_data = $result->fetchObject();
+ /*$chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE id = %d", $example_data->chapter_id);
+ $chapter_data = db_fetch_object($chapter_q);*/
+ $query = db_select('textbook_companion_chapter');
+ $query->fields('textbook_companion_chapter');
+ $query->condition('id', $example_data->chapter_id);
+ $result = $query->execute();
+ $chapter_data = $result->fetchObject();
+ /*$preference_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE id = %d", $chapter_data->preference_id);
+ $preference_data = db_fetch_object($preference_q);*/
+ $query = db_select('textbook_companion_preference');
+ $query->fields('textbook_companion_preference');
+ $query->condition('id', $chapter_data->preference_id);
+ $result = $query->execute();
+ $preference_data = $result->fetchObject();
+ $example_list[] = array(
+ $preference_data->book,
+ $chapter_data->number,
+ $example_data->number
+ );
+ }
+ $example_list_header = array(
+ 'Book',
+ 'Chapter',
+ 'Code'
+ );
+ $example = theme('table', array(
+ 'headers' => $example_list_header,
+ 'rows' => $example_list
+ ));
+ drupal_set_message('Cannot delete dependency since it is linked with following examples. Delete these examples first before deleting the dependency file :' . $example, 'error');
+ }
+ else
+ {
+ if (textbook_companion_delete_dependency($form_state['values']['run']['dependency']))
+ {
+ drupal_set_message('Dependency deleted', 'status');
+ /* email */
+ $email_subject = t('Dependency deleted');
+ $email_body = t('Dependency deleted : .') . $form_state['values']['run']['dependency'];
+ $email_to = $user->mail;
+ $param['standard']['subject'] = $email_subject;
+ $param['standard']['body'] = $email_body;
+ if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $param, variable_get('textbook_companion_from_email', NULL), TRUE))
+ drupal_set_message('Error sending email message.', 'error');
+ }
+ }
+ }
}
- }
}
- }
}
-}
-
function _textbook_companion_list_of_dependencies()
-{
- $dependencies = array('0' => 'Please select...');
- $dependency_q = db_query("SELECT * FROM {textbook_companion_dependency_files} ORDER BY filename ASC");
- while ($dependency_data = db_fetch_object($dependency_q))
{
- $dependencies[$dependency_data->id] = $dependency_data->filename . ' (' . $dependency_data->filepath . ')';
+ $dependencies = array(
+ '0' => 'Please select...'
+ );
+ /*$dependency_q = db_query("SELECT * FROM {textbook_companion_dependency_files} ORDER BY filename ASC");*/
+ $query = db_select('textbook_companion_dependency_files');
+ $query->fields('textbook_companion_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;
}
- return $dependencies;
-}
-
function textbook_companion_delete_dependency($dependency_id)
-{
- global $user;
- $root_path = textbook_companion_path();
- $status = TRUE;
-
- $dependency_files_q = db_query("SELECT * FROM {textbook_companion_dependency_files} WHERE id = %d", $dependency_id);
- $dependency_files_data = db_fetch_object($dependency_files_q);
- if (!$dependency_files_data)
{
- drupal_set_message(t('Invalid dependency.'), 'error');
- return FALSE;
- }
-
- if (!file_exists($root_path . $dependency_files_data->filepath))
- {
- drupal_set_message(t('Error deleting !file. File does not exists.', array('!file' => $dependency_files_data->filepath)), 'error');
- return FALSE;
- }
-
- /* removing dependency file */
- if (!unlink($root_path . $dependency_files_data->filepath))
- {
- $status = FALSE;
- drupal_set_message(t('Error deleting !file', array('!file' => $dependency_files_data->filepath)), 'error');
-
- /* sending email to admins */
- $email_to = variable_get('textbook_companion_emails', '');
- $param['standard']['subject'] = "[ERROR] Error deleting dependency file";
- $param['standard']['body'] = "Error deleting dependency files by " . $user->uid . " at " . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . " :
+ global $user;
+ $root_path = textbook_companion_path();
+ $status = TRUE;
+ /*$dependency_files_q = db_query("SELECT * FROM {textbook_companion_dependency_files} WHERE id = %d", $dependency_id);
+ $dependency_files_data = db_fetch_object($dependency_files_q);*/
+ $query = db_select('textbook_companion_dependency_files');
+ $query->fields('textbook_companion_dependency_files');
+ $query->condition('id', $dependency_id);
+ $result = $query->execute();
+ $dependency_files_data = $result->fetchObject();
+ if (!$dependency_files_data)
+ {
+ drupal_set_message(t('Invalid dependency.'), 'error');
+ return FALSE;
+ }
+ if (!file_exists($root_path . $dependency_files_data->filepath))
+ {
+ drupal_set_message(t('Error deleting !file. File does not exists.', array(
+ '!file' => $dependency_files_data->filepath
+ )), 'error');
+ return FALSE;
+ }
+ /* removing dependency file */
+ if (!unlink($root_path . $dependency_files_data->filepath))
+ {
+ $status = FALSE;
+ drupal_set_message(t('Error deleting !file', array(
+ '!file' => $dependency_files_data->filepath
+ )), 'error');
+ /* sending email to admins */
+ $email_to = variable_get('textbook_companion_emails', '');
+ $param['standard']['subject'] = "[ERROR] Error deleting dependency file";
+ $param['standard']['body'] = "Error deleting dependency files by " . $user->uid . " at " . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . " :
dependency id : " . $dependency_id . "
- file id : " . $dependency_files_data->id . "
+ file id : " . $dependency_files_data->id . "
file path : " . $dependency_files_data->filepath;
- if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $param, variable_get('textbook_companion_from_email', NULL), TRUE))
- drupal_set_message('Error sending email message.', 'error');
- } else {
- /* deleting dependency files database entries */
- db_query("DELETE FROM {textbook_companion_dependency_files} WHERE id = %d", $dependency_id);
+ if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $param, variable_get('textbook_companion_from_email', NULL), TRUE))
+ drupal_set_message('Error sending email message.', 'error');
+ }
+ else
+ {
+ /* deleting dependency files database entries */
+ /*db_query("DELETE FROM {textbook_companion_dependency_files} WHERE id = %d", $dependency_id);*/
+ $query = db_delete('textbook_companion_dependency_files');
+ $query->condition('id', $dependency_id);
+ $num_deleted = $query->execute();
+ }
+ return $status;
}
- return $status;
-}