fields('textbook_companion_preference');
$query->condition('id', $preference_id);
$result = $query->execute();
if ($result)
{
if ($row = $result->fetchObject())
{
/* everything ok */
}
else
{
drupal_set_message(t('Invalid book selected. Please try again.'), 'error');
drupal_goto('code_approval/bulk');
return;
}
}
else
{
drupal_set_message(t('Invalid book selected. Please try again.'), 'error');
drupal_goto('code_approval/bulk');
return;
}
/* get current notes */
$notes = '';
/*$notes_q = db_query("SELECT * FROM {textbook_companion_notes} WHERE preference_id = %d LIMIT 1", $preference_id);*/
$query = db_select('textbook_companion_notes');
$query->fields('textbook_companion_notes');
$query->condition('preference_id', $preference_id);
$query->range(0, 1);
$notes_q = $query->execute();
if ($notes_q)
{
$notes_data = $notes_q->fetchObject();
$notes = $notes_data->notes;
}
$book_details = _book_information($preference_id);
$form['book_details'] = array(
'#type' => 'item',
'#markup' => 'About the Book
' . 'Author: ' . $book_details->author . '
' . 'Title of the Book: ' . $book_details->book . '
' . 'Publisher: ' . $book_details->publisher . '
' . 'Year: ' . $book_details->year . '
' . 'Edition: ' . $book_details->edition . '
' . 'About the Contributor
' . 'Contributor Name: ' . $book_details->full_name . ', ' . $book_details->course . ', ' . $book_details->branch . ', ' . $book_details->university . '
'
);
$form['notes'] = array(
'#type' => 'textarea',
'#rows' => 20,
'#title' => t('Notes for Reviewers'),
'#default_value' => $notes
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Submit')
);
$form['cancel'] = array(
'#type' => 'markup',
'#value' => l(t('Back'), 'code_approval/bulk')
);
return $form;
}
function book_notes_form_submit($form, &$form_state)
{
global $user;
/* get current proposal */
$preference_id = arg(2);
$preference_id = (int) $preference_id;
/*$result = db_query("SELECT * FROM {textbook_companion_preference} WHERE id = %d", $preference_id);*/
$query = db_select('textbook_companion_preference');
$query->fields('textbook_companion_preference');
$query->condition('id', $preference_id);
$result = $query->execute();
if ($result)
{
if ($row = $result->fetchObject())
{
/* everything ok */
}
else
{
drupal_set_message(t('Invalid book selected. Please try again.'), 'error');
drupal_goto('code_approval/bulk');
return;
}
}
else
{
drupal_set_message(t('Invalid book selected. Please try again.'), 'error');
drupal_goto('code_approval/bulk');
return;
}
/* find existing notes */
/*$notes_q = db_query("SELECT * FROM {textbook_companion_notes} WHERE preference_id = %d LIMIT 1", $preference_id);
$notes_data = db_fetch_object($notes_q);*/
$query = db_select('textbook_companion_notes');
$query->fields('textbook_companion_notes');
$query->condition('preference_id', $preference_id);
$query->range(0, 1);
$notes_q = $query->execute();
$notes_data = $notes_q->fetchObject();
/* add or update notes in database */
if ($notes_data)
{
/*db_query("UPDATE {textbook_companion_notes} SET notes = '%s' WHERE id = %d", $form_state['values']['notes'], $notes_data->id);*/
$query = db_update('textbook_companion_notes');
$query->fields(array(
'notes' => $form_state['values']['notes']
));
$query->condition('id', $notes_data->id);
$num_updated = $query->execute();
drupal_set_message('Notes updated successfully.', 'status');
}
else
{
/*db_query("INSERT INTO {textbook_companion_notes} (preference_id, notes) VALUES (%d, '%s')", $preference_id, $form_state['values']['notes']);*/
$query = "INSERT INTO {textbook_companion_notes} (preference_id, notes) VALUES
(:preference_id, :notes)";
$args = array(
":preference_id" => $preference_id,
":notes" => $form_state['values']['notes']
);
$result = db_query($query, $args, array(
'return' => Database::RETURN_INSERT_ID
));
drupal_set_message('Notes added successfully.', 'status');
}
}
/* return proposal and author information */
function _book_information($preference_id)
{
/*$book_data = db_fetch_object(db_query("SELECT
preference.book as preference_book, preference.author as preference_author, preference.isbn as preference_isbn, preference.publisher as preference_publisher, preference.edition as preference_edition, preference.year as preference_year,
proposal.full_name as proposal_full_name, proposal.faculty as proposal_faculty, proposal.reviewer as proposal_reviewer, proposal.course as proposal_course, proposal.branch as proposal_branch, proposal.university as proposal_university
FROM {textbook_companion_proposal} proposal LEFT JOIN {textbook_companion_preference} preference ON proposal.id = preference.proposal_id WHERE preference.id = %d", $preference_id));*/
$query = db_select('textbook_companion_proposal', 'proposal');
$query->fields('preference', array(
'book',
'author',
'isbn',
'publisher',
'edition',
'year'
));
$query->fields('proposal', array(
'full_name',
'faculty',
'reviewer',
'course',
'branch',
'university'
));
$query->leftJoin('textbook_companion_preference', 'preference', 'proposal.id=preference.proposal_id');
$query->condition('preference.id', $preference_id);
$result = $query->execute();
$book_data = $result->fetchObject();
return $book_data;
}