diff options
Diffstat (limited to 'textbook_companion.module')
-rwxr-xr-x | textbook_companion.module | 6807 |
1 files changed, 3521 insertions, 3286 deletions
diff --git a/textbook_companion.module b/textbook_companion.module index 847d0bc..3198902 100755 --- a/textbook_companion.module +++ b/textbook_companion.module @@ -1,1930 +1,2072 @@ <?php // $Id$ - /* -* Implementation of hook_menu(). -*/ - + * Implementation of hook_menu(). + */ function textbook_companion_menu() { - $items = array(); - - /* users */ - $items['proposal'] = array( - 'title' => 'Book Proposal Form', - 'description' => 'Book Proposal Form.', - 'page callback' => 'textbook_companion_proposal_all', - 'access callback' => 'user_access', - 'access arguments' => array('create book proposal'), - 'type' => MENU_CALLBACK, - ); - $items["aicte_proposal"] = array( - "title" => "AICTE Book Proposal", - "description" => "AICTE Book Proposal Form", - "page callback" => "textbook_companion_aicte_proposal_all", - 'access arguments' => array('create book proposal'), - 'type' => MENU_CALLBACK, - ); - $items["all_proposal"] = array( - "title" => "Book Proposal", - "description" => "Book Proposal Form", - "page callback" => "textbook_companion_aicte_proposal_all", - 'access arguments' => array('create book proposal'), - 'type' => MENU_CALLBACK, - ); - /* for reviewers */ - $items['manage_proposal'] = array( - 'title' => 'Manage Book Proposals', - 'description' => 'Manage Book Proposals', - 'page callback' => '_proposal_pending', - 'access callback' => 'user_access', - 'access arguments' => array('approve book proposal'), - 'file' => 'manage_proposal.inc', - ); - $items['manage_proposal/pending'] = array( - 'title' => 'Pending Proposals', - 'description' => 'Pending Proposals Queue', - 'page callback' => '_proposal_pending', - 'access callback' => 'user_access', - 'access arguments' => array('approve book proposal'), - 'type' => MENU_DEFAULT_LOCAL_TASK, - 'weight' => 1, - 'file' => 'manage_proposal.inc', - ); - $items['manage_proposal/all'] = array( - 'title' => 'All Proposals', - 'description' => 'All Proposals', - 'page callback' => '_proposal_all', - 'access callback' => 'user_access', - 'access arguments' => array('approve book proposal'), - 'type' => MENU_LOCAL_TASK, - 'weight' => 2, - 'file' => 'manage_proposal.inc', - ); - $items['manage_proposal/category'] = array( - 'title' => 'Categorize', - 'description' => 'Categorize Books', - 'page callback' => '_category_all', - 'access callback' => 'user_access', - 'access arguments' => array('approve book proposal'), - 'type' => MENU_LOCAL_TASK, - 'weight' => 2, - 'file' => 'manage_proposal.inc', - ); - $items['manage_proposal/failed'] = array( - 'title' => 'Failed Proposals', - 'description' => 'Failed to submit code', - 'page callback' => '_failed_all', - 'access callback' => 'user_access', - 'access arguments' => array('approve book proposal'), - 'type' => MENU_LOCAL_TASK, - 'weight' => 3, - 'file' => 'manage_proposal.inc', - ); - $items['manage_proposal/approve'] = array( - 'title' => 'Proposal Approval', - 'description' => 'Proposal Approval', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('proposal_approval_form'), - 'access arguments' => array('approve book proposal'), - 'type' => MENU_CALLBACK, - 'file' => 'manage_proposal.inc', - ); - $items['manage_proposal/status'] = array( - 'title' => 'Proposal Status', - 'description' => 'Proposal Status', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('proposal_status_form'), - 'access arguments' => array('approve book proposal'), - 'type' => MENU_CALLBACK, - 'file' => 'manage_proposal.inc', - ); - $items['manage_proposal/edit'] = array( - 'title' => 'Edit Proposal', - 'description' => 'Edit Proposal', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('proposal_edit_form'), - 'access arguments' => array('edit book proposal'), - 'type' => MENU_CALLBACK, - 'file' => 'manage_proposal.inc', - ); - $items['manage_proposal/category/edit'] = array( - 'title' => 'Edit Category', - 'description' => 'Edit category', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('category_edit_form'), - 'access arguments' => array('edit book proposal'), - 'type' => MENU_CALLBACK, - 'file' => 'manage_proposal.inc', - ); - - $items['code_approval'] = array( - 'title' => 'Manage Code Approval', - 'description' => 'Manage Code Approval', - 'page callback' => 'code_approval', - 'access arguments' => array('approve code'), - 'type' => MENU_NORMAL_ITEM, - 'file' => 'code_approval.inc', - ); - $items['code_approval/approve'] = array( - 'title' => 'Code Approval', - 'description' => 'Code Approval', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('code_approval_form'), - 'access arguments' => array('approve code'), - 'type' => MENU_DEFAULT_LOCAL_TASK, - 'weight' => 1, - 'file' => 'code_approval.inc', - ); - $items['code_approval/bulk'] = array( - 'title' => 'Bulk Manage', - 'description' => 'Bulk Mangage', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('bulk_approval_form'), - 'access arguments' => array('bulk manage code'), - 'type' => MENU_LOCAL_TASK, - 'weight' => 2, - 'file' => 'code_approval.inc', - ); - $items['code_approval/editcode'] = array( - 'title' => 'Admin Edit Example', - 'description' => 'Admin Edit Example', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('upload_examples_admin_edit_form'), - 'access arguments' => array('approve code'), - 'type' => MENU_CALLBACK, - 'weight' => 3, - 'file' => 'editcodeadmin.inc', - ); - $items['code_approval/notes'] = array( - 'title' => 'Notes for Reviewers', - 'description' => 'Notes for Reviewers', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('book_notes_form'), - 'access arguments' => array('bulk manage code'), - 'type' => MENU_CALLBACK, - 'weight' => 4, - 'file' => 'notes.inc', - ); - $items['code_approval/dependency'] = array( - 'title' => 'Dependency', - 'description' => 'Dependency', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('textbook_companion_dependency_approval_form'), - 'access arguments' => array('bulk manage code'), - 'type' => MENU_LOCAL_TASK, - 'weight' => 3, - 'file' => 'dependency_approval.inc', - ); - $items['textbook_companion/code'] = array( - 'title' => 'Code Submission', - 'description' => 'Code Submission', - 'page callback' => 'list_chapters', - 'access callback' => 'user_access', - 'access arguments' => array('upload code'), - 'file' => 'general.inc', - ); - $items['textbook_companion/code/list_chapters'] = array( - 'title' => 'List Chapters', - 'description' => 'List Chapters', - 'page callback' => 'list_chapters', - 'access arguments' => array('upload code'), - 'type' => MENU_DEFAULT_LOCAL_TASK, - 'file' => 'general.inc', - 'weight' => 1, - ); - $items['textbook_companion/code/upload'] = array( - 'title' => 'Code Submission', - 'description' => 'Code Submission', - 'page callback' => 'upload_examples', - 'access arguments' => array('upload code'), - 'type' => MENU_LOCAL_TASK, - 'file' => 'code.inc', - 'weight' => 2, - ); - $items['textbook_companion/code/upload_dep'] = array( - 'title' => 'Upload Dependency', - 'description' => 'Upload Dependency Files', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('upload_dependency_form'), - 'access arguments' => array('upload code'), - 'type' => MENU_LOCAL_TASK, - 'file' => 'dependency.inc', - 'weight' => 3, - ); - $items['textbook_companion/code/edit_dep'] = array( - 'title' => 'Edit Dependency', - 'description' => 'Edit Dependency File', - 'page callback' => 'edit_dependency', - 'access arguments' => array('upload code'), - 'type' => MENU_CALLBACK, - 'file' => 'dependency.inc', - ); - $items['textbook_companion/code/delete_dep'] = array( - 'title' => 'Delete Dependency', - 'description' => 'Delete Dependency File', - 'page callback' => 'delete_dependency', - 'access arguments' => array('upload code'), - 'type' => MENU_CALLBACK, - 'file' => 'dependency.inc', - ); - $items['textbook_companion/code/edit'] = array( - 'title' => 'Edit Example', - 'description' => 'Edit Example', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('upload_examples_edit_form'), - 'access arguments' => array('edit uploaded code'), - 'type' => MENU_CALLBACK, - 'file' => 'editcode.inc', - ); - $items['textbook_companion/code/delete'] = array( - 'title' => 'Delete Example', - 'description' => 'Delete Example', - 'page callback' => '_upload_examples_delete', - 'access arguments' => array('upload code'), - 'type' => MENU_CALLBACK, - 'file' => 'code.inc', - ); - $items['textbook_companion/code/chapter/edit'] = array( - 'title' => 'Edit Chapter Title', - 'description' => 'Edit Chapter Title', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('edit_chapter_title_form'), - 'access arguments' => array('upload code'), - 'type' => MENU_CALLBACK, - 'file' => 'editcode.inc', - ); - $items['textbook_companion/code/list_examples'] = array( - 'title' => 'List Examples', - 'description' => 'List Examples', - 'page callback' => 'list_examples', - 'access arguments' => array('upload code'), - 'type' => MENU_CALLBACK, - 'file' => 'general.inc', - 'weight' => 3, - ); - - $items['textbook_search'] = array( - 'title' => 'Book Search', - 'description' => '', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('textbook_companion_search_form'), - 'access arguments' => array('access content'), - 'type' => MENU_NORMAL_ITEM, - 'file' => 'search.inc', - ); - $items['textbook_search/search'] = array( - 'title' => 'Book Search', - 'description' => '', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('textbook_companion_search_form'), - 'access arguments' => array('access content'), - 'type' => MENU_DEFAULT_LOCAL_TASK, - 'file' => 'search.inc', - 'weight' => 1, - ); - - $items['textbook_run'] = array( - 'title' => 'Download Codes', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('textbook_companion_run_form'), - 'access arguments' => array('access content'), - 'type' => MENU_NORMAL_ITEM, - 'file' => 'run.inc', - - ); - $items['download_codes'] = array( - 'title' => 'Download Codes', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('textbook_companion_run_form'), - 'access arguments' => array('access content'), - 'type' => MENU_NORMAL_ITEM, - 'file' => 'run.inc', - ); - - /* download callbacks */ - $items['download/file'] = array( - 'title' => 'Code Download', - 'description' => 'Code Download', - 'page callback' => 'textbook_companion_download_example_file', - 'access arguments' => array('download code'), - 'type' => MENU_CALLBACK, - 'file' => 'download.inc', - ); - $items['download/samplecode'] = array( - 'title' => 'Sample Code Download', - 'description' => 'Sample Code Download', - 'page callback' => 'textbook_companion_download_sample_code', - 'access arguments' => array('download code'), - 'type' => MENU_CALLBACK, - 'file' => 'download.inc', - ); - $items['download/dependency'] = array( - 'title' => 'Code Download', - 'description' => 'Code Download', - 'page callback' => 'textbook_companion_download_dependency_file', - 'access arguments' => array('download code'), - 'type' => MENU_CALLBACK, - 'file' => 'download.inc', - ); - $items['download/example'] = array( - 'title' => 'Code Download', - 'description' => 'Code Download', - 'page callback' => 'textbook_companion_download_example', - 'access arguments' => array('download code'), - 'type' => MENU_CALLBACK, - 'file' => 'download.inc', - ); - $items['download/chapter'] = array( - 'title' => 'Code Download', - 'description' => 'Code Download', - 'page callback' => 'textbook_companion_download_chapter', - 'access arguments' => array('download code'), - 'type' => MENU_CALLBACK, - 'file' => 'download.inc', - ); - $items['download/book'] = array( - 'title' => 'Code Download', - 'description' => 'Code Download', - 'page callback' => 'textbook_companion_download_book', - 'access arguments' => array('download code'), - 'type' => MENU_CALLBACK, - 'file' => 'download.inc', - ); - - /* reviewer download */ - $items['full_download/chapter'] = array( - 'title' => 'Code Download', - 'description' => 'Code Download', - 'page callback' => 'textbook_companion_download_full_chapter', - 'access arguments' => array('approve code'), - 'type' => MENU_CALLBACK, - 'file' => 'full_download.inc', - ); - $items['full_download/book'] = array( - 'title' => 'Code Download', - 'description' => 'Code Download', - 'page callback' => 'textbook_companion_download_full_book', - 'access arguments' => array('approve code'), - 'type' => MENU_CALLBACK, - 'file' => 'full_download.inc', - ); - - /* external reviewer download */ - $items['full_download_external/chapter'] = array( - 'title' => 'Code Download', - 'description' => 'Code Download', - 'page callback' => 'textbook_companion_download_full_chapter', - 'access arguments' => array('download books to review'), - 'type' => MENU_CALLBACK, - 'file' => 'full_download.inc', - ); - $items['full_download_external/book'] = array( - 'title' => 'Code Download', - 'description' => 'Code Download', - 'page callback' => 'textbook_companion_download_full_book', - 'access arguments' => array('download books to review'), - 'type' => MENU_CALLBACK, - 'file' => 'full_download.inc', - ); - - /* latex script for book generation */ - $items['textbook_companion/generate_book'] = array( - 'title' => 'Generate Book', - 'description' => 'Generate Book From Latex Script', - 'page callback' => 'textbook_companion_download_book', - 'access arguments' => array('generate book'), - 'type' => MENU_CALLBACK, - 'file' => 'latex.inc', - ); - $items['textbook_companion/delete_book'] = array( - 'title' => 'Delete Book PDF', - 'description' => 'Delete Book PDF', - 'page callback' => 'textbook_companion_delete_book', - 'access arguments' => array('approve code'), - 'type' => MENU_CALLBACK, - 'file' => 'latex.inc', - ); - - /* general purpose callbacks */ - $items['textbook_companion/ajax'] = array( - 'title' => 'Ajax', - 'description' => 'Ajax', - 'page callback' => 'textbook_companion_ajax', - 'access arguments' => array('access content'), - 'type' => MENU_CALLBACK, - ); - - /* for admin */ - $items['admin/settings/book_companion'] = array( - 'title' => 'Book Companion Settings', - 'description' => 'Book Companion Settings', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('textbook_companion_settings_form'), - 'access arguments' => array('administer book companion'), - 'type' => MENU_NORMAL_ITEM, - 'file' => 'settings.inc', - ); - /* for data entry */ - $items['dataentry_book'] = array( - 'title' => 'Approved books list', - 'page callback' => '_data_entry_proposal_all', - 'access callback' => 'user_access', - 'access arguments' => array('dataentry book proposal'), - 'file' => 'manage_proposal.inc', - ); - $items['dataentry_edit'] = array( - 'title' => 'Edit book details', - 'page callback' => 'dataentry_edit', - 'access callback' => 'user_access', - 'access arguments' => array('dataentry book proposal'), - 'type' => MENU_NORMAL_ITEM, - 'file' => 'manage_proposal.inc', - ); - /*Cheque Details and Contact Form */ - $items['cheque_manage/all'] = array( - 'title' => 'Cheque Proposals', - 'description' => 'Cheque Proposals', - 'page callback' => 'cheque_proposal_all', - 'access arguments' => array('cheque proposal'), - 'file' => 'cheque_manage.inc', - ); - $items['mycontact'] = array( - 'title' => 'Update Contact Details', - 'description' => 'Update Contact Details', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('contact_details'), - 'access arguments' => array('contact_details'), - 'file' => 'cheque_contact.inc', - ); - - $items['cheque_contct'] = array( - 'title' => 'Report', - 'description' => 'Cheque Contact Form', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('cheque_contct_form'), - 'access arguments' => array('cheque contct form'), - 'file' => 'cheque_contact.inc', - ); - $items['cheque_contact/status'] = array( - 'title' => 'Cheque Status', - 'description' => 'Cheque Status', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('cheque_status_form'), - 'access' => 'user_is_logged_in', - 'access arguments' => array('cheque status form'), - 'file' => 'cheque_contact.inc', - ); - $items['cheque_contct/report'] = array( - 'title' => 'Report', - 'description' => 'Report', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('cheque_report_form'), - 'access' => 'user_is_logged_in', - 'access arguments' => array('cheque report form'), - 'file' => 'cheque_contact.inc', - ); - $items['certificate'] = array( - 'title' => 'List Of All Certificates', - 'description' => 'List Of All Certificates', - 'page callback' => '_list_all_certificates', - 'access arguments' => array('list all certificates'), - 'file' => 'pdf/list_all_certificates.inc', - ); - $items['certificate/generate_pdf'] = array( - 'title' => 'Download Certificate', - 'description' => 'Download Certificate', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('generate_pdf'), - 'access arguments' => array('generate pdf'), - 'file' => 'pdf/generate_pdf.inc', - ); - $items['manage_proposal/paper_submission'] = array( - 'title' => 'Application Submission', - 'description' => 'Application Submission', - 'page callback' => 'drupal_get_form', - 'page arguments' => array('paper_submission_form'), - 'access arguments' => array('paper submission form'), - 'type' => MENU_CALLBACK, - 'file' => 'cheque_contact.inc', - ); - $items["nonaicte_proposal"] = array( - "title" => "Book Suggestion Form ", - "description" => "NON-AICTE Book Proposal Form", - 'page callback' => 'textbook_companion_nonaicte_proposal_all', - 'access arguments' => array('create book proposal'), - 'type' => MENU_CALLBACK, - ); - return $items; + $items = array(); + /* users */ + $items['proposal'] = array( + 'title' => 'Book Proposal Form', + 'description' => 'Book Proposal Form.', + 'page callback' => 'textbook_companion_proposal_all', + 'access callback' => 'user_access', + 'access arguments' => array( + 'create book proposal' + ), + 'type' => MENU_CALLBACK + ); + $items["aicte_proposal"] = array( + "title" => "AICTE Book Proposal", + "description" => "AICTE Book Proposal Form", + "page callback" => "textbook_companion_aicte_proposal_all", + 'access arguments' => array( + 'create book proposal' + ), + 'type' => MENU_CALLBACK + ); + $items["all_proposal"] = array( + "title" => "Book Proposal", + "description" => "Book Proposal Form", + "page callback" => "textbook_companion_aicte_proposal_all", + 'access arguments' => array( + 'create book proposal' + ), + 'type' => MENU_CALLBACK + ); + /* for reviewers */ + $items['manage_proposal'] = array( + 'title' => 'Manage Book Proposals', + 'description' => 'Manage Book Proposals', + 'page callback' => '_proposal_pending', + 'access callback' => 'user_access', + 'access arguments' => array( + 'approve book proposal' + ), + 'file' => 'manage_proposal.inc' + ); + $items['manage_proposal/pending'] = array( + 'title' => 'Pending Proposals', + 'description' => 'Pending Proposals Queue', + 'page callback' => '_proposal_pending', + 'access callback' => 'user_access', + 'access arguments' => array( + 'approve book proposal' + ), + 'type' => MENU_DEFAULT_LOCAL_TASK, + 'weight' => 1, + 'file' => 'manage_proposal.inc' + ); + $items['manage_proposal/all'] = array( + 'title' => 'All Proposals', + 'description' => 'All Proposals', + 'page callback' => '_proposal_all', + 'access callback' => 'user_access', + 'access arguments' => array( + 'approve book proposal' + ), + 'type' => MENU_LOCAL_TASK, + 'weight' => 2, + 'file' => 'manage_proposal.inc' + ); + $items['manage_proposal/category'] = array( + 'title' => 'Categorize', + 'description' => 'Categorize Books', + 'page callback' => '_category_all', + 'access callback' => 'user_access', + 'access arguments' => array( + 'approve book proposal' + ), + 'type' => MENU_LOCAL_TASK, + 'weight' => 2, + 'file' => 'manage_proposal.inc' + ); + $items['manage_proposal/failed'] = array( + 'title' => 'Failed Proposals', + 'description' => 'Failed to submit code', + 'page callback' => '_failed_all', + 'access callback' => 'user_access', + 'access arguments' => array( + 'approve book proposal' + ), + 'type' => MENU_LOCAL_TASK, + 'weight' => 3, + 'file' => 'manage_proposal.inc' + ); + $items['manage_proposal/approve'] = array( + 'title' => 'Proposal Approval', + 'description' => 'Proposal Approval', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'proposal_approval_form' + ), + 'access arguments' => array( + 'approve book proposal' + ), + 'type' => MENU_CALLBACK, + 'file' => 'manage_proposal.inc' + ); + $items['manage_proposal/status'] = array( + 'title' => 'Proposal Status', + 'description' => 'Proposal Status', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'proposal_status_form' + ), + 'access arguments' => array( + 'approve book proposal' + ), + 'type' => MENU_CALLBACK, + 'file' => 'manage_proposal.inc' + ); + $items['manage_proposal/edit'] = array( + 'title' => 'Edit Proposal', + 'description' => 'Edit Proposal', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'proposal_edit_form' + ), + 'access arguments' => array( + 'edit book proposal' + ), + 'type' => MENU_CALLBACK, + 'file' => 'manage_proposal.inc' + ); + $items['manage_proposal/category/edit'] = array( + 'title' => 'Edit Category', + 'description' => 'Edit category', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'category_edit_form' + ), + 'access arguments' => array( + 'edit book proposal' + ), + 'type' => MENU_CALLBACK, + 'file' => 'manage_proposal.inc' + ); + $items['code_approval'] = array( + 'title' => 'Manage Code Approval', + 'description' => 'Manage Code Approval', + 'page callback' => 'code_approval', + 'access arguments' => array( + 'approve code' + ), + 'type' => MENU_NORMAL_ITEM, + 'file' => 'code_approval.inc' + ); + $items['code_approval/approve'] = array( + 'title' => 'Code Approval', + 'description' => 'Code Approval', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'code_approval_form' + ), + 'access arguments' => array( + 'approve code' + ), + 'type' => MENU_DEFAULT_LOCAL_TASK, + 'weight' => 1, + 'file' => 'code_approval.inc' + ); + $items['code_approval/bulk'] = array( + 'title' => 'Bulk Manage', + 'description' => 'Bulk Mangage', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'bulk_approval_form' + ), + 'access arguments' => array( + 'bulk manage code' + ), + 'type' => MENU_LOCAL_TASK, + 'weight' => 2, + 'file' => 'code_approval.inc' + ); + $items['code_approval/editcode'] = array( + 'title' => 'Admin Edit Example', + 'description' => 'Admin Edit Example', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'upload_examples_admin_edit_form' + ), + 'access arguments' => array( + 'approve code' + ), + 'type' => MENU_CALLBACK, + 'weight' => 3, + 'file' => 'editcodeadmin.inc' + ); + $items['code_approval/notes'] = array( + 'title' => 'Notes for Reviewers', + 'description' => 'Notes for Reviewers', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'book_notes_form' + ), + 'access arguments' => array( + 'bulk manage code' + ), + 'type' => MENU_CALLBACK, + 'weight' => 4, + 'file' => 'notes.inc' + ); + $items['code_approval/dependency'] = array( + 'title' => 'Dependency', + 'description' => 'Dependency', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'textbook_companion_dependency_approval_form' + ), + 'access arguments' => array( + 'bulk manage code' + ), + 'type' => MENU_LOCAL_TASK, + 'weight' => 3, + 'file' => 'dependency_approval.inc' + ); + $items['textbook_companion/code'] = array( + 'title' => 'Code Submission', + 'description' => 'Code Submission', + 'page callback' => 'list_chapters', + 'access callback' => 'user_access', + 'access arguments' => array( + 'upload code' + ), + 'file' => 'general.inc' + ); + $items['textbook_companion/code/list_chapters'] = array( + 'title' => 'List Chapters', + 'description' => 'List Chapters', + 'page callback' => 'list_chapters', + 'access arguments' => array( + 'upload code' + ), + 'type' => MENU_DEFAULT_LOCAL_TASK, + 'file' => 'general.inc', + 'weight' => 1 + ); + $items['textbook_companion/code/upload'] = array( + 'title' => 'Code Submission', + 'description' => 'Code Submission', + 'page callback' => 'upload_examples', + 'access arguments' => array( + 'upload code' + ), + 'type' => MENU_LOCAL_TASK, + 'file' => 'code.inc', + 'weight' => 2 + ); + $items['textbook_companion/code/upload_dep'] = array( + 'title' => 'Upload Dependency', + 'description' => 'Upload Dependency Files', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'upload_dependency_form' + ), + 'access arguments' => array( + 'upload code' + ), + 'type' => MENU_LOCAL_TASK, + 'file' => 'dependency.inc', + 'weight' => 3 + ); + $items['textbook_companion/code/edit_dep'] = array( + 'title' => 'Edit Dependency', + 'description' => 'Edit Dependency File', + 'page callback' => 'edit_dependency', + 'access arguments' => array( + 'upload code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'dependency.inc' + ); + $items['textbook_companion/code/delete_dep'] = array( + 'title' => 'Delete Dependency', + 'description' => 'Delete Dependency File', + 'page callback' => 'delete_dependency', + 'access arguments' => array( + 'upload code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'dependency.inc' + ); + $items['textbook_companion/code/edit'] = array( + 'title' => 'Edit Example', + 'description' => 'Edit Example', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'upload_examples_edit_form' + ), + 'access arguments' => array( + 'edit uploaded code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'editcode.inc' + ); + $items['textbook_companion/code/delete'] = array( + 'title' => 'Delete Example', + 'description' => 'Delete Example', + 'page callback' => '_upload_examples_delete', + 'access arguments' => array( + 'upload code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'code.inc' + ); + $items['textbook_companion/code/chapter/edit'] = array( + 'title' => 'Edit Chapter Title', + 'description' => 'Edit Chapter Title', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'edit_chapter_title_form' + ), + 'access arguments' => array( + 'upload code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'editcode.inc' + ); + $items['textbook_companion/code/list_examples'] = array( + 'title' => 'List Examples', + 'description' => 'List Examples', + 'page callback' => 'list_examples', + 'access arguments' => array( + 'upload code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'general.inc', + 'weight' => 3 + ); + $items['textbook_search'] = array( + 'title' => 'Book Search', + 'description' => '', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'textbook_companion_search_form' + ), + 'access arguments' => array( + 'access content' + ), + 'type' => MENU_NORMAL_ITEM, + 'file' => 'search.inc' + ); + $items['textbook_search/search'] = array( + 'title' => 'Book Search', + 'description' => '', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'textbook_companion_search_form' + ), + 'access arguments' => array( + 'access content' + ), + 'type' => MENU_DEFAULT_LOCAL_TASK, + 'file' => 'search.inc', + 'weight' => 1 + ); + $items['textbook_run'] = array( + 'title' => 'Download Codes', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'textbook_companion_run_form' + ), + 'access arguments' => array( + 'access content' + ), + 'type' => MENU_NORMAL_ITEM, + 'file' => 'run.inc' + ); + $items['download_codes'] = array( + 'title' => 'Download Codes', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'textbook_companion_run_form' + ), + 'access arguments' => array( + 'access content' + ), + 'type' => MENU_NORMAL_ITEM, + 'file' => 'run.inc' + ); + /* download callbacks */ + $items['download/file'] = array( + 'title' => 'Code Download', + 'description' => 'Code Download', + 'page callback' => 'textbook_companion_download_example_file', + 'access arguments' => array( + 'download code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'download.inc' + ); + $items['download/samplecode'] = array( + 'title' => 'Sample Code Download', + 'description' => 'Sample Code Download', + 'page callback' => 'textbook_companion_download_sample_code', + 'access arguments' => array( + 'download code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'download.inc' + ); + $items['download/dependency'] = array( + 'title' => 'Code Download', + 'description' => 'Code Download', + 'page callback' => 'textbook_companion_download_dependency_file', + 'access arguments' => array( + 'download code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'download.inc' + ); + $items['download/example'] = array( + 'title' => 'Code Download', + 'description' => 'Code Download', + 'page callback' => 'textbook_companion_download_example', + 'access arguments' => array( + 'download code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'download.inc' + ); + $items['download/chapter'] = array( + 'title' => 'Code Download', + 'description' => 'Code Download', + 'page callback' => 'textbook_companion_download_chapter', + 'access arguments' => array( + 'download code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'download.inc' + ); + $items['download/book'] = array( + 'title' => 'Code Download', + 'description' => 'Code Download', + 'page callback' => 'textbook_companion_download_book', + 'access arguments' => array( + 'download code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'download.inc' + ); + /* reviewer download */ + $items['full_download/chapter'] = array( + 'title' => 'Code Download', + 'description' => 'Code Download', + 'page callback' => 'textbook_companion_download_full_chapter', + 'access arguments' => array( + 'approve code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'full_download.inc' + ); + $items['full_download/book'] = array( + 'title' => 'Code Download', + 'description' => 'Code Download', + 'page callback' => 'textbook_companion_download_full_book', + 'access arguments' => array( + 'approve code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'full_download.inc' + ); + /* external reviewer download */ + $items['full_download_external/chapter'] = array( + 'title' => 'Code Download', + 'description' => 'Code Download', + 'page callback' => 'textbook_companion_download_full_chapter', + 'access arguments' => array( + 'download books to review' + ), + 'type' => MENU_CALLBACK, + 'file' => 'full_download.inc' + ); + $items['full_download_external/book'] = array( + 'title' => 'Code Download', + 'description' => 'Code Download', + 'page callback' => 'textbook_companion_download_full_book', + 'access arguments' => array( + 'download books to review' + ), + 'type' => MENU_CALLBACK, + 'file' => 'full_download.inc' + ); + /* latex script for book generation */ + $items['textbook_companion/generate_book'] = array( + 'title' => 'Generate Book', + 'description' => 'Generate Book From Latex Script', + 'page callback' => 'textbook_companion_download_book', + 'access arguments' => array( + 'generate book' + ), + 'type' => MENU_CALLBACK, + 'file' => 'latex.inc' + ); + $items['textbook_companion/delete_book'] = array( + 'title' => 'Delete Book PDF', + 'description' => 'Delete Book PDF', + 'page callback' => 'textbook_companion_delete_book', + 'access arguments' => array( + 'approve code' + ), + 'type' => MENU_CALLBACK, + 'file' => 'latex.inc' + ); + /* general purpose callbacks */ + $items['textbook_companion/ajax'] = array( + 'title' => 'Ajax', + 'description' => 'Ajax', + 'page callback' => 'textbook_companion_ajax', + 'access arguments' => array( + 'access content' + ), + 'type' => MENU_CALLBACK + ); + /* for admin */ + $items['admin/settings/book_companion'] = array( + 'title' => 'Book Companion Settings', + 'description' => 'Book Companion Settings', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'textbook_companion_settings_form' + ), + 'access arguments' => array( + 'administer book companion' + ), + 'type' => MENU_NORMAL_ITEM, + 'file' => 'settings.inc' + ); + /* for data entry */ + $items['dataentry_book'] = array( + 'title' => 'Approved books list', + 'page callback' => '_data_entry_proposal_all', + 'access callback' => 'user_access', + 'access arguments' => array( + 'dataentry book proposal' + ), + 'file' => 'manage_proposal.inc' + ); + $items['dataentry_edit'] = array( + 'title' => 'Edit book details', + 'page callback' => 'dataentry_edit', + 'access callback' => 'user_access', + 'access arguments' => array( + 'dataentry book proposal' + ), + 'type' => MENU_NORMAL_ITEM, + 'file' => 'manage_proposal.inc' + ); + /*Cheque Details and Contact Form */ + $items['cheque_manage/all'] = array( + 'title' => 'Cheque Proposals', + 'description' => 'Cheque Proposals', + 'page callback' => 'cheque_proposal_all', + 'access arguments' => array( + 'cheque proposal' + ), + 'file' => 'cheque_manage.inc' + ); + $items['mycontact'] = array( + 'title' => 'Update Contact Details', + 'description' => 'Update Contact Details', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'contact_details' + ), + 'access arguments' => array( + 'contact_details' + ), + 'file' => 'cheque_contact.inc' + ); + $items['cheque_contct'] = array( + 'title' => 'Report', + 'description' => 'Cheque Contact Form', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'cheque_contct_form' + ), + 'access arguments' => array( + 'cheque contct form' + ), + 'file' => 'cheque_contact.inc' + ); + $items['cheque_contact/status'] = array( + 'title' => 'Cheque Status', + 'description' => 'Cheque Status', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'cheque_status_form' + ), + 'access' => 'user_is_logged_in', + 'access arguments' => array( + 'cheque status form' + ), + 'file' => 'cheque_contact.inc' + ); + $items['cheque_contct/report'] = array( + 'title' => 'Report', + 'description' => 'Report', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'cheque_report_form' + ), + 'access' => 'user_is_logged_in', + 'access arguments' => array( + 'cheque report form' + ), + 'file' => 'cheque_contact.inc' + ); + $items['certificate'] = array( + 'title' => 'List Of All Certificates', + 'description' => 'List Of All Certificates', + 'page callback' => '_list_all_certificates', + 'access arguments' => array( + 'list all certificates' + ), + 'file' => 'pdf/list_all_certificates.inc' + ); + $items['certificate/generate_pdf'] = array( + 'title' => 'Download Certificate', + 'description' => 'Download Certificate', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'generate_pdf' + ), + 'access arguments' => array( + 'generate pdf' + ), + 'file' => 'pdf/generate_pdf.inc' + ); + $items['manage_proposal/paper_submission'] = array( + 'title' => 'Application Submission', + 'description' => 'Application Submission', + 'page callback' => 'drupal_get_form', + 'page arguments' => array( + 'paper_submission_form' + ), + 'access arguments' => array( + 'paper submission form' + ), + 'type' => MENU_CALLBACK, + 'file' => 'cheque_contact.inc' + ); + $items["nonaicte_proposal"] = array( + "title" => "Book Suggestion Form ", + "description" => "NON-AICTE Book Proposal Form", + 'page callback' => 'textbook_companion_nonaicte_proposal_all', + 'access arguments' => array( + 'create book proposal' + ), + 'type' => MENU_CALLBACK + ); + return $items; } - /** * Implementation of hook_permission(). */ -function textbook_companion_permission() { - -return array( - "create book proposal" => array( - "title" => t("Book Proposal Form"), - "description" => t("Book Proposal Form.") - ), - "approve book proposal" => array( - "title" => t("Approve book proposal"), - "description" => t("Allows users to approve book proposal.") - ), - "approve code" => array( - "title" => t("Approve code"), - "description" => t("Allows users to approve code.") - ), - "upload code" => array( - "title" => t("Upload code"), - "description" => t("Allows users to upload code.") - ), - "edit uploaded code" => array( - "title" => t("Edit uploaded code"), - "description" => t("Allows users to edit uploaded code.") - ), - "download code" => array( - "title" => t("Download code"), - "description" => t("Allows users to download code.") - ), - "create feedback" => array( - "title" => t("Create feedback"), - "description" => t("Allows users to create feedback.") - ), - "bulk manage code" => array( - "title" => t("Bulk manage code"), - "description" => t("Allows users to manage Bulk code.") - ), - "bulk delete code" => array( - "title" => t("Bulk delete code"), - "description" => t("Allows users to delete bulk code.") - ), - "edit book proposal" => array( - "title" => t("Edit book proposal"), - "description" => t("Allows users to edit book proposal.") - ), - "administer book companion" => array( - "title" => t("Administer book companion"), - "description" => t("Allows users to administer book companion.") - ), - "generate book" => array( - "title" => t("Generate book"), - "description" => t("Allows users to generate book.") - ), - "cheque contct form" => array( - "title" => t("Cheque contact form"), - "description" => t("Cheque contct form.") - ), - "contact_details" => array( - "title" => t("Contact_details"), - "description" => t("Contact_details.") - ), - "comment cheque" => array( - "title" => t("Comment cheque"), - "description" => t("Comment cheque.") - ), - "list all certificates" => array( - "title" => t("list all certificates"), - "description" => t("Allows users to list all certificates.") - ), - "generate pdf" => array( - "title" => t("Generate pdf"), - "description" => t("Allows users to Generate pdf.") - ), - "paper submission form" => array( - "title" => t("paper submission form"), - "description" => t("Paper submission form.") - ), - - "cheque status form" => array( - "title" => t("Cheque status form"), - "description" => t("Cheque status form.") - ), - "cheque report form" => array( - "title" => t("Cheque report form"), - "description" => t("Cheque report form.") - ), - "cheque proposal" => array( - "title" => t("Cheque proposal"), - "description" => t("Cheque proposal.") - ), - "download books to review" => array( - "title" => t("download books to review"), - "description" => t("Download books to review.") - ), - ); - +function textbook_companion_permission() +{ + return array( + "create book proposal" => array( + "title" => t("Book Proposal Form"), + "description" => t("Book Proposal Form.") + ), + "approve book proposal" => array( + "title" => t("Approve book proposal"), + "description" => t("Allows users to approve book proposal.") + ), + "approve code" => array( + "title" => t("Approve code"), + "description" => t("Allows users to approve code.") + ), + "upload code" => array( + "title" => t("Upload code"), + "description" => t("Allows users to upload code.") + ), + "edit uploaded code" => array( + "title" => t("Edit uploaded code"), + "description" => t("Allows users to edit uploaded code.") + ), + "download code" => array( + "title" => t("Download code"), + "description" => t("Allows users to download code.") + ), + "create feedback" => array( + "title" => t("Create feedback"), + "description" => t("Allows users to create feedback.") + ), + "bulk manage code" => array( + "title" => t("Bulk manage code"), + "description" => t("Allows users to manage Bulk code.") + ), + "bulk delete code" => array( + "title" => t("Bulk delete code"), + "description" => t("Allows users to delete bulk code.") + ), + "edit book proposal" => array( + "title" => t("Edit book proposal"), + "description" => t("Allows users to edit book proposal.") + ), + "administer book companion" => array( + "title" => t("Administer book companion"), + "description" => t("Allows users to administer book companion.") + ), + "generate book" => array( + "title" => t("Generate book"), + "description" => t("Allows users to generate book.") + ), + "cheque contct form" => array( + "title" => t("Cheque contact form"), + "description" => t("Cheque contct form.") + ), + "contact_details" => array( + "title" => t("Contact_details"), + "description" => t("Contact_details.") + ), + "comment cheque" => array( + "title" => t("Comment cheque"), + "description" => t("Comment cheque.") + ), + "list all certificates" => array( + "title" => t("list all certificates"), + "description" => t("Allows users to list all certificates.") + ), + "generate pdf" => array( + "title" => t("Generate pdf"), + "description" => t("Allows users to Generate pdf.") + ), + "paper submission form" => array( + "title" => t("paper submission form"), + "description" => t("Paper submission form.") + ), + "cheque status form" => array( + "title" => t("Cheque status form"), + "description" => t("Cheque status form.") + ), + "cheque report form" => array( + "title" => t("Cheque report form"), + "description" => t("Cheque report form.") + ), + "cheque proposal" => array( + "title" => t("Cheque proposal"), + "description" => t("Cheque proposal.") + ), + "download books to review" => array( + "title" => t("download books to review"), + "description" => t("Download books to review.") + ) + ); } - /* Aicte books pickup before the proposal form */ -function textbook_companion_aicte_proposal_form($form,&$form_state) { - /*********** fetch aicte book data ********************/ +function textbook_companion_aicte_proposal_form($form, &$form_state) +{ + /*********** fetch aicte book data ********************/ $query = db_select('textbook_companion_aicte'); $query->fields('textbook_companion_aicte'); $query->condition('status', 0); $query->condition('selected', 0); $result = $query->execute(); - - $form = array(); - $form["wrapper"] = array( - "#type" => "fieldset", - "#prefix" => "<div id='aicte-form-wrapper'>", - "#suffix" => "</div>", - ); - - $num_rows = $result->rowCount(); - if ($num_rows > 0) { - while($row = $result->fetchObject()) { - /* fixing title string */ - $title = ""; - $edition = ""; - $year = ""; - $title = "{$row->book} by {$row->author}"; - if($row->edition) { - $edition = "<i>ed</i>: {$row->edition}"; - } - if($row->year) { - if($row->edition) { - $year = ", <i>pub</i>: {$row->year}"; - } else { - $year = "<i>pub</i>: {$row->year}"; - } - } - if($edition or $year) { - $title .= "({$edition} {$year})"; - } - $form["wrapper"][$row->id] = array( - "#type" => "checkbox", - "#title" => $title, - "#prefix" => "<div class='title'>", - "#suffix" => "</div>", - ); - } - } - $form["submit"] = array( - "#type" => "submit", - "#value" => "Submit Book Selections" - ); - return $form; + $form = array(); + $form["wrapper"] = array( + "#type" => "fieldset", + "#prefix" => "<div id='aicte-form-wrapper'>", + "#suffix" => "</div>" + ); + $num_rows = $result->rowCount(); + if ($num_rows > 0) + { + while ($row = $result->fetchObject()) + { + /* fixing title string */ + $title = ""; + $edition = ""; + $year = ""; + $title = "{$row->book} by {$row->author}"; + if ($row->edition) + { + $edition = "<i>ed</i>: {$row->edition}"; + } //$row->edition + if ($row->year) + { + if ($row->edition) + { + $year = ", <i>pub</i>: {$row->year}"; + } //$row->edition + else + { + $year = "<i>pub</i>: {$row->year}"; + } + } //$row->year + if ($edition or $year) + { + $title .= "({$edition} {$year})"; + } //$edition or $year + $form["wrapper"][$row->id] = array( + "#type" => "checkbox", + "#title" => $title, + "#prefix" => "<div class='title'>", + "#suffix" => "</div>" + ); + } //$row = $result->fetchObject() + } //$num_rows > 0 + $form["submit"] = array( + "#type" => "submit", + "#value" => "Submit Book Selections" + ); + return $form; } - -function textbook_companion_aicte_proposal_form_validate($form, &$form_state) { - - +function textbook_companion_aicte_proposal_form_validate($form, &$form_state) +{ $query = db_select('textbook_companion_aicte'); $query->fields('textbook_companion_aicte'); $query->condition('status', 0); $query->condition('selected', 0); $result = $query->execute(); - - $count = 0; - $selections = array(); - while($row = $result->fetchObject()) { - if($form_state["values"][$row->id] == 1) { - $count++; - array_push($selections, $row->id); - } - } - /* user can choose only 3 books to propose */ - if($count != 3) { - form_set_error("", "Please select exactly <strong>3</strong> books. You currently selected <strong>{$count}</strong>"); - } else { - $form_state["values"]["selections"] = $selections; - } + $count = 0; + $selections = array(); + while ($row = $result->fetchObject()) + { + if ($form_state["values"][$row->id] == 1) + { + $count++; + array_push($selections, $row->id); + } //$form_state["values"][$row->id] == 1 + } //$row = $result->fetchObject() + /* user can choose only 3 books to propose */ + if ($count != 3) + { + form_set_error("", "Please select exactly <strong>3</strong> books. You currently selected <strong>{$count}</strong>"); + } //$count != 3 + else + { + $form_state["values"]["selections"] = $selections; + } } - /* AICTE Book list proposal form submit */ -function textbook_companion_aicte_proposal_form_submit($form, &$form_state) { - global $user; - $selections = $form_state["values"]["selections"]; - //var_dump($selections); - variable_set("aicte_".$user->uid, $selections); - drupal_goto("proposal"); +function textbook_companion_aicte_proposal_form_submit($form, &$form_state) +{ + global $user; + $selections = $form_state["values"]["selections"]; + //var_dump($selections); + variable_set("aicte_" . $user->uid, $selections); + drupal_goto("proposal"); } - /************* AICTE book report form **************/ -function textbook_companion_aicte_report_form($from, $form_state) { - +function textbook_companion_aicte_report_form($from, $form_state) +{ $query = db_select('textbook_companion_aicte'); $query->fields('textbook_companion_aicte'); $query->condition('status', 0); $query->orderBy('book', 'ASC'); $result = $query->execute(); - - $books = array(); - $books[0] = "Please select a book"; - while($row = $result->fetchObject()) { - $books[$row->id] = "{$row->book} ({$row->author})"; - } - $form = array(); - $form["name"] = array( - "#type" => "textfield", - "#title" => "Name", - "#description" => t("Please enter your name."), - ); - $form["email"] = array( - "#type" => "textfield", - "#title" => "Email", - "#description" => t("Please enter your valid email id."), - ); - $form["number"] = array( - "#type" => "textfield", - "#title" => "Number", - "#description" => t("Please enter your valid phone number."), - ); - $form["book"] = array( - "#type" => "select", - "#title" => "AICTE Book", - "#description" => t("Please select a book."), - "#options" => $books - ); - $form["comment"] = array( - "#type" => "textarea", - "#title" => "Any other comment?", - "#description" => t("Please enter your query (if any)") - ); - $form["submit"] = array( - "#type" => "submit", - "#value" => "Submit" - ); - return $form; + $books = array(); + $books[0] = "Please select a book"; + while ($row = $result->fetchObject()) + { + $books[$row->id] = "{$row->book} ({$row->author})"; + } //$row = $result->fetchObject() + $form = array(); + $form["name"] = array( + "#type" => "textfield", + "#title" => "Name", + "#description" => t("Please enter your name.") + ); + $form["email"] = array( + "#type" => "textfield", + "#title" => "Email", + "#description" => t("Please enter your valid email id.") + ); + $form["number"] = array( + "#type" => "textfield", + "#title" => "Number", + "#description" => t("Please enter your valid phone number.") + ); + $form["book"] = array( + "#type" => "select", + "#title" => "AICTE Book", + "#description" => t("Please select a book."), + "#options" => $books + ); + $form["comment"] = array( + "#type" => "textarea", + "#title" => "Any other comment?", + "#description" => t("Please enter your query (if any)") + ); + $form["submit"] = array( + "#type" => "submit", + "#value" => "Submit" + ); + return $form; } /************* AICTE book report form submit **************/ -function textbook_companion_aicte_report_form_submit($form, &$form_state) { - $v = $form_state["values"]; - +function textbook_companion_aicte_report_form_submit($form, &$form_state) +{ + $v = $form_state["values"]; $query = "INSERT INTO textbook_companion_aicte_report (aicte_id, name, number, email, comment) VALUES (:aicte_id, :name, :number, :email, :comment)"; $args = array( - ":aicte_id" => $v["book"], - ":name" => $v["name"], - ":number" => $v["number"], - ":email" =>$v["email"], - ":comment" => $v["comment"] - ); - $result = db_query($query, $args, array('return' => Database::RETURN_INSERT_ID)); - - drupal_set_message("Thank you for reporting.", "status"); + ":aicte_id" => $v["book"], + ":name" => $v["name"], + ":number" => $v["number"], + ":email" => $v["email"], + ":comment" => $v["comment"] + ); + $result = db_query($query, $args, array( + 'return' => Database::RETURN_INSERT_ID + )); + drupal_set_message("Thank you for reporting.", "status"); } /************* AICTE book list selection **************/ -function textbook_companion_aicte_proposal_all() { - global $user; -$page_content = ""; - - - if (!$user->uid) { - - $query = db_select('textbook_companion_aicte'); - $query->fields('textbook_companion_aicte'); - $query->condition('status', 0); - $result = $query->execute(); - - $page_content .= "<ul>"; - $page_content .= "<li>These are the list of books available for <em>Textbook Companion</em> proposal.</li>"; - $page_content .= "<li>Please <a href='/user'><b><u>Login</u></b></a> to create a proposal.</li>"; - //$page_content .= "<li>Unable to propose particular book: <a id='aicte-report' href='#'>Click here</a></li>"; - //$page_content .= "<li>Do not wish to propose any of the below books: <a id='aicte-report' href='http://fossee.in/feedback/scilab-aicte' target = _blank>Click here</a></li>"; - $page_content .= "</ul>"; - $page_content .= "Search : <input type='text' id='searchtext' onkeyup='searchbookFunction()' style='width:82%'/>"; - $page_content .= "<input type='button' value ='clear' id='search_clear'/>"; - $page_content .= "<div id='aicte-list-wrapper'>"; - $num_rows = $result->rowCount(); - if ($num_rows > 0) { - $i = 1; - while($row = $result->fetchObject()) { - /* fixing title string */ - $title = ""; - $edition = ""; - $year = ""; - $title = "{$row->book} by {$row->author}"; - if($row->edition) { - $edition = "<i>ed</i>: {$row->edition}"; - } - if($row->year) { - if($row->edition) { - $year = ", <i>pub</i>: {$row->year}"; - } else { - $year = "<i>pub</i>: {$row->year}"; - } - } - if($edition or $year) { - $title .= "({$edition} {$year})"; - } - $page_content .= "<div class='title'>{$i}) {$title}</div>"; - $i++; - } - } - $page_content .= "</div>"; - /* adding aicte report form */ - //$page_content .= drupal_get_form("textbook_companion_aicte_report_form"); - return $page_content; - } - - /* check if user has already submitted a proposal */ - +function textbook_companion_aicte_proposal_all() +{ + global $user; + $page_content = ""; + if (!$user->uid) + { + $query = db_select('textbook_companion_aicte'); + $query->fields('textbook_companion_aicte'); + $query->condition('status', 0); + $result = $query->execute(); + $page_content .= "<ul>"; + $page_content .= "<li>These are the list of books available for <em>Textbook Companion</em> proposal.</li>"; + $page_content .= "<li>Please <a href='/user'><b><u>Login</u></b></a> to create a proposal.</li>"; + //$page_content .= "<li>Unable to propose particular book: <a id='aicte-report' href='#'>Click here</a></li>"; + //$page_content .= "<li>Do not wish to propose any of the below books: <a id='aicte-report' href='http://fossee.in/feedback/scilab-aicte' target = _blank>Click here</a></li>"; + $page_content .= "</ul>"; + $page_content .= "Search : <input type='text' id='searchtext' onkeyup='searchbookFunction()' style='width:82%'/>"; + $page_content .= "<input type='button' value ='clear' id='search_clear'/>"; + $page_content .= "<div id='aicte-list-wrapper'>"; + $num_rows = $result->rowCount(); + if ($num_rows > 0) + { + $i = 1; + while ($row = $result->fetchObject()) + { + /* fixing title string */ + $title = ""; + $edition = ""; + $year = ""; + $title = "{$row->book} by {$row->author}"; + if ($row->edition) + { + $edition = "<i>ed</i>: {$row->edition}"; + } //$row->edition + if ($row->year) + { + if ($row->edition) + { + $year = ", <i>pub</i>: {$row->year}"; + } //$row->edition + else + { + $year = "<i>pub</i>: {$row->year}"; + } + } //$row->year + if ($edition or $year) + { + $title .= "({$edition} {$year})"; + } //$edition or $year + $page_content .= "<div class='title'>{$i}) {$title}</div>"; + $i++; + } //$row = $result->fetchObject() + } //$num_rows > 0 + $page_content .= "</div>"; + /* adding aicte report form */ + //$page_content .= drupal_get_form("textbook_companion_aicte_report_form"); + return $page_content; + } //!$user->uid + /* check if user has already submitted a proposal */ $query = db_select('textbook_companion_proposal'); $query->fields('textbook_companion_proposal'); $query->condition('uid', $user->uid); $query->orderBy('id', 'DESC'); $query->range(0, 1); $proposal_q = $query->execute(); - - if ($proposal_q) { - if ($proposal_data = $proposal_q->fetchObject()) { - switch ($proposal_data->proposal_status) { - case 0: - drupal_set_message(t('We have already received your proposal. We will get back to you soon.'), 'status'); - drupal_goto(''); - return; - break; - case 1: - drupal_set_message(t('Your proposal has been approved. Please go to ' . l('Code Submission', 'textbook_companion/code') . ' to upload your code'), 'status'); - drupal_goto(''); - return; - break; - case 2: - drupal_set_message(t('Your proposal has been dis-approved. Please create another proposal below.'), 'error'); - break; - case 3: - drupal_set_message(t('Congratulations! You have completed your last book proposal. You can create another proposal below.'), 'status'); - break; - default: - drupal_set_message(t('Invalid proposal state. Please contact site administrator for further information.'), 'error'); - drupal_goto(''); - return; - break; - } - } - } - - variable_del("aicte_".$user->uid); - $page_content .= "<h5><b>* Please select any 3 books from the below list.</b></h5></br>"; - //$page_content .= "Unable to propose particular book: <a id='aicte-report' href='#'>Click here</a></br></br>"; - //$page_content .= "Do not wish to propose any of the below books: <a id='aicte-report' href='http://fossee.in/feedback/scilab-aicte' target = _blank>Click here</a></br></br>"; - $page_content .= "Search : <input type='text' id='searchtext' style='width:82%'/>"; - $page_content .= "<input type='button' value ='clear' id='search_clear'/>"; - $textbook_companion_aicte_proposal_form = drupal_get_form("textbook_companion_aicte_proposal_form"); - $page_content .= drupal_render($textbook_companion_aicte_proposal_form); - return $page_content; + if ($proposal_q) + { + if ($proposal_data = $proposal_q->fetchObject()) + { + switch ($proposal_data->proposal_status) + { + case 0: + drupal_set_message(t('We have already received your proposal. We will get back to you soon.'), 'status'); + drupal_goto(''); + return; + break; + case 1: + drupal_set_message(t('Your proposal has been approved. Please go to ' . l('Code Submission', 'textbook_companion/code') . ' to upload your code'), 'status'); + drupal_goto(''); + return; + break; + case 2: + drupal_set_message(t('Your proposal has been dis-approved. Please create another proposal below.'), 'error'); + break; + case 3: + drupal_set_message(t('Congratulations! You have completed your last book proposal. You can create another proposal below.'), 'status'); + break; + default: + drupal_set_message(t('Invalid proposal state. Please contact site administrator for further information.'), 'error'); + drupal_goto(''); + return; + break; + } //$proposal_data->proposal_status + } //$proposal_data = $proposal_q->fetchObject() + } //$proposal_q + variable_del("aicte_" . $user->uid); + $page_content .= "<h5><b>* Please select any 3 books from the below list.</b></h5></br>"; + //$page_content .= "Unable to propose particular book: <a id='aicte-report' href='#'>Click here</a></br></br>"; + //$page_content .= "Do not wish to propose any of the below books: <a id='aicte-report' href='http://fossee.in/feedback/scilab-aicte' target = _blank>Click here</a></br></br>"; + $page_content .= "Search : <input type='text' id='searchtext' style='width:82%'/>"; + $page_content .= "<input type='button' value ='clear' id='search_clear'/>"; + $textbook_companion_aicte_proposal_form = drupal_get_form("textbook_companion_aicte_proposal_form"); + $page_content .= drupal_render($textbook_companion_aicte_proposal_form); + return $page_content; } /*************** non aicte book proposal *******************/ -function textbook_companion_nonaicte_proposal_all() { - global $user; - $page_content = ""; - - if (!$user->uid) { - - $page_content .= "<ul>"; - $page_content .= "<li>Please <a href='/user'><b><u>Login</u></b></a> to create a proposal.</li>"; - $page_content .= "</ul>"; - return $page_content; - } - - /* check if user has already submitted a proposal */ - - /*$proposal_q = db_query("SELECT * FROM {textbook_companion_proposal} WHERE uid = %d ORDER BY id DESC LIMIT 1", $user->uid);*/ - +function textbook_companion_nonaicte_proposal_all() +{ + global $user; + $page_content = ""; + if (!$user->uid) + { + $page_content .= "<ul>"; + $page_content .= "<li>Please <a href='/user'><b><u>Login</u></b></a> to create a proposal.</li>"; + $page_content .= "</ul>"; + return $page_content; + } //!$user->uid + /* check if user has already submitted a proposal */ + /*$proposal_q = db_query("SELECT * FROM {textbook_companion_proposal} WHERE uid = %d ORDER BY id DESC LIMIT 1", $user->uid);*/ $query = db_select('textbook_companion_proposal'); $query->fields('textbook_companion_proposal'); $query->condition('uid', $user->uid); $query->orderBy('id', 'DESC'); $query->range(0, 1); $proposal_q = $query->execute(); - - if ($proposal_q) { - if ($proposal_data = $proposal_q->fetchObject()) { - switch ($proposal_data->proposal_status) { - case 0: - drupal_set_message(t('We have already received your proposal. We will get back to you soon.'), 'status'); - drupal_goto(''); - return; - break; - case 1: - drupal_set_message(t('Your proposal has been approved. Please go to ' . l('Code Submission', 'textbook_companion/code') . ' to upload your code'), 'status'); - drupal_goto(''); - return; - break; - case 2: - drupal_set_message(t('Your proposal has been dis-approved. Please create another proposal below.'), 'error'); - break; - case 3: - drupal_set_message(t('Congratulations! You have completed your last book proposal. You can create another proposal below.'), 'status'); - break; - default: - drupal_set_message(t('Invalid proposal state. Please contact site administrator for further information.'), 'error'); - drupal_goto(''); - return; - break; - } - } - } - - //variable_del("aicte_".$user->uid); - $book_proposal_nonaicte_form = drupal_get_form("book_proposal_nonaicte_form"); - $page_content .= drupal_render($book_proposal_nonaicte_form); - return $page_content; + if ($proposal_q) + { + if ($proposal_data = $proposal_q->fetchObject()) + { + switch ($proposal_data->proposal_status) + { + case 0: + drupal_set_message(t('We have already received your proposal. We will get back to you soon.'), 'status'); + drupal_goto(''); + return; + break; + case 1: + drupal_set_message(t('Your proposal has been approved. Please go to ' . l('Code Submission', 'textbook_companion/code') . ' to upload your code'), 'status'); + drupal_goto(''); + return; + break; + case 2: + drupal_set_message(t('Your proposal has been dis-approved. Please create another proposal below.'), 'error'); + break; + case 3: + drupal_set_message(t('Congratulations! You have completed your last book proposal. You can create another proposal below.'), 'status'); + break; + default: + drupal_set_message(t('Invalid proposal state. Please contact site administrator for further information.'), 'error'); + drupal_goto(''); + return; + break; + } //$proposal_data->proposal_status + } //$proposal_data = $proposal_q->fetchObject() + } //$proposal_q + //variable_del("aicte_".$user->uid); + $book_proposal_nonaicte_form = drupal_get_form("book_proposal_nonaicte_form"); + $page_content .= drupal_render($book_proposal_nonaicte_form); + return $page_content; } - /* Textbook Companion Proposal */ -function textbook_companion_proposal_all() { - global $user; - $page_content = ""; - - // if (!$user->uid) { - // drupal_set_message('It is mandatory to login on this website to access the proposal form', 'error'); - // return; - // } - - /************* check if user has already submitted a proposal **************/ - - - +function textbook_companion_proposal_all() +{ + global $user; + $page_content = ""; + // if (!$user->uid) { + // drupal_set_message('It is mandatory to login on this website to access the proposal form', 'error'); + // return; + // } + /************* check if user has already submitted a proposal **************/ $query = db_select('textbook_companion_proposal'); $query->fields('textbook_companion_proposal'); $query->condition('uid', $user->uid); $query->orderBy('id', 'DESC'); $query->range(0, 1); $proposal_q = $query->execute(); - - if ($proposal_q) { - if ($proposal_data =$proposal_q->fetchObject()) { - switch ($proposal_data->proposal_status) { - case 0: - drupal_set_message(t('We have already received your proposal. We will get back to you soon.'), 'status'); - drupal_goto(''); - return; - break; - case 1: - drupal_set_message(t('Your proposal has been approved. Please go to ' . l('Code Submission', 'textbook_companion/code') . ' to upload your code'), 'status'); - drupal_goto(''); - return; - break; - case 2: - drupal_set_message(t('Your proposal has been dis-approved. Please create another proposal below.'), 'error'); - break; - case 3: - drupal_set_message(t('Congratulations! You have completed your last book proposal. You can create another proposal below.'), 'status'); - break; - default: - drupal_set_message(t('Invalid proposal state. Please contact site administrator for further information.'), 'error'); - drupal_goto(''); - return; - break; - } - } - } - - $selections = variable_get("aicte_".$user->uid, ""); - if($selections) { - - $query = db_select('textbook_companion_aicte'); - $query->fields('textbook_companion_aicte'); - $query->condition('id',$selections[0]); - $result1 = $query->execute(); - $row1 = $result1->fetchObject(); - - $query = db_select('textbook_companion_aicte'); - $query->fields('textbook_companion_aicte'); - $query->condition('id',$selections[1]); - $result2 = $query->execute(); - $row2 = $result2->fetchObject(); - - $query = db_select('textbook_companion_aicte'); - $query->fields('textbook_companion_aicte'); - $query->condition('id',$selections[2]); - $result3 = $query->execute(); - $row3 = $result3->fetchObject(); - $book_proposal_form = drupal_get_form("book_proposal_form", $row1, $row2, $row3); - - $page_content .= drupal_render($book_proposal_form); - } else { - // $book_proposal_form = drupal_get_form("book_proposal_form"); - // $page_content .= drupal_render($book_proposal_form); - drupal_goto("aicte_proposal"); - } - - return $page_content; + if ($proposal_q) + { + if ($proposal_data = $proposal_q->fetchObject()) + { + switch ($proposal_data->proposal_status) + { + case 0: + drupal_set_message(t('We have already received your proposal. We will get back to you soon.'), 'status'); + drupal_goto(''); + return; + break; + case 1: + drupal_set_message(t('Your proposal has been approved. Please go to ' . l('Code Submission', 'textbook_companion/code') . ' to upload your code'), 'status'); + drupal_goto(''); + return; + break; + case 2: + drupal_set_message(t('Your proposal has been dis-approved. Please create another proposal below.'), 'error'); + break; + case 3: + drupal_set_message(t('Congratulations! You have completed your last book proposal. You can create another proposal below.'), 'status'); + break; + default: + drupal_set_message(t('Invalid proposal state. Please contact site administrator for further information.'), 'error'); + drupal_goto(''); + return; + break; + } //$proposal_data->proposal_status + } //$proposal_data = $proposal_q->fetchObject() + } //$proposal_q + $selections = variable_get("aicte_" . $user->uid, ""); + if ($selections) + { + $query = db_select('textbook_companion_aicte'); + $query->fields('textbook_companion_aicte'); + $query->condition('id', $selections[0]); + $result1 = $query->execute(); + $row1 = $result1->fetchObject(); + $query = db_select('textbook_companion_aicte'); + $query->fields('textbook_companion_aicte'); + $query->condition('id', $selections[1]); + $result2 = $query->execute(); + $row2 = $result2->fetchObject(); + $query = db_select('textbook_companion_aicte'); + $query->fields('textbook_companion_aicte'); + $query->condition('id', $selections[2]); + $result3 = $query->execute(); + $row3 = $result3->fetchObject(); + $book_proposal_form = drupal_get_form("book_proposal_form", $row1, $row2, $row3); + $page_content .= drupal_render($book_proposal_form); + } //$selections + else + { + // $book_proposal_form = drupal_get_form("book_proposal_form"); + // $page_content .= drupal_render($book_proposal_form); + drupal_goto("aicte_proposal"); + } + return $page_content; } - -function book_proposal_form($form,&$form_state, $row1=NULL, $row2=NULL, $row3=NULL) +function book_proposal_form($form, &$form_state, $row1 = NULL, $row2 = NULL, $row3 = NULL) { - global $user; - $form = array(); - $form['imp_notice'] = array( - '#type' => 'item', - '#markup' => '<font color="red"><b>Please fill up this form carefully as the details entered here will be exactly written in the Textbook Companion</b></font>', - ); - - $form['full_name'] = array( - '#type' => 'textfield', - '#title' => t('Full Name'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - ); - $form['email_id'] = array( - '#type' => 'textfield', - '#title' => t('Email'), - '#size' => 30, - '#value' => $user->mail, - '#disabled' => TRUE, - ); - $form['mobile'] = array( - '#type' => 'textfield', - '#title' => t('Mobile No.'), - '#size' => 30, - '#maxlength' => 15, - '#required' => TRUE, - ); - $form['gender'] = array( - '#type' => 'radios', - '#title' => t('Gender'), - '#options' => array('M' => 'Male', 'F' => 'Female'), - '#required' => TRUE, - ); - - /*$form['how_project'] = array( - '#type' => 'select', - '#title' => t('How did you come to know about this project'), - '#options' => array('Scilab Website' => 'Scilab Website', - 'Friend' => 'Friend', - 'Professor/Teacher' => 'Professor/Teacher', - 'Mailing List' => 'Mailing List', - 'Poster in my/other college' => 'Poster in my/other college', - 'Others' => 'Others'), - '#required' => TRUE, - );*/ - $form['course'] = array( - '#type' => 'textfield', - '#title' => t('Course'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - ); - $form['branch'] = array( - '#type' => 'select', - '#title' => t('Department/Branch'), - '#options' => _tbc_list_of_departments(), - '#required' => TRUE, - ); - $form['university'] = array( - '#type' => 'textfield', - '#title' => t('University/Institute'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - ); - $form['country'] = array( - '#type' => 'select', - '#title' => t('Country'), - '#options' => array( - 'India' => 'India', - 'Others' => 'Others', - ), - '#required' => TRUE, - '#tree' => TRUE, - '#validated' => TRUE, - ); - $form['other_country'] = array( - '#type' => 'textfield', - '#title' => t('Other than India'), - '#size' => 100, - '#attributes' =>array('placeholder' => t('Enter your country name')), - '#states' => array( - 'visible' => array( - ':input[name="country"]' => array('value' => 'Others'), - ), - ), - ); - $form['other_state'] = array( - '#type' => 'textfield', - '#title' => t('State other than India'), - '#size' => 100, - '#attributes' =>array('placeholder' => t('Enter your state/region name')), - '#states' => array( - 'visible' => array( - ':input[name="country"]' => array('value' => 'Others'), - ), - ), - ); - $form['other_city'] = array( - '#type' => 'textfield', - '#title' => t('City other than India'), - '#size' => 100, - '#attributes' =>array('placeholder' => t('Enter your city name')), - '#states' => array( - 'visible' => array( - ':input[name="country"]' => array('value' => 'Others'), - ), - ), - ); - $form['all_state'] = array( - '#type' => 'select', - '#title' => t('State'), - '#options' => _tbc_list_of_states(), - '#validated' => TRUE, - '#states' => array( - 'visible' => array( - ':input[name="country"]' => array('value' => 'India'), - ), - ), - ); - $form['city'] = array( - '#type' => 'select', - '#title' => t('City'), - '#options' => _tbc_list_of_cities(), - '#states' => array( - 'visible' => array( - ':input[name="country"]' => array('value' => 'India'), - ), - ), - ); - $form['pincode'] = array( - '#type' => 'textfield', - '#title' => t('Pincode'), - '#size' => 30, - '#maxlength' => 6, - '#required' => False, - '#attributes' =>array('placeholder' =>'Enter pincode....'), - ); - $form['faculty'] = array( - '#type' => 'hidden', - '#value' => 'None', - '#title' => t('College Teacher/Professor'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - ); - $form['faculty_email'] = array( - '#type' => 'hidden', - '#value' => 'None', - '#title' => t('Teacher/Professor Email Id'), - '#default_value' => '@email.com', - '#size' => 30, - '#maxlength' => 50, - ); - $form['reviewer'] = array( - '#type' => 'hidden', - '#value' => 'None', - '#title' => t('Reviewer'), - '#size' => 30, - '#maxlength' => 50, - ); - - $form['completion_date'] = array( - '#type' => 'textfield', - '#title' => t('Expected Date of Completion'), - '#description' => t('Input date format should be DD-MM-YYYY. Eg: 23-03-2011'), - '#size' => 10, - '#maxlength' => 10, - ); - $form['operating_system'] = array( - '#type' => 'textfield', - '#title' => t('Operating System'), - '#required' => TRUE, - '#size' => 30, - '#maxlength' => 50, - ); - $form['version'] = array( - '#type' => 'textfield', - '#title' => t('Scilab Version'), - '#description' => t('Input version format should be like 5.4 or 5.4.1'), - '#size' => 10, - '#required' => TRUE, - '#maxlength' => 20, - ); - $form['preference1'] = array( - '#type' => 'fieldset', - '#title' => t('Book Preference 1'), - '#collapsible' => TRUE, - '#collapsed' => FALSE, - ); - $form['preference1']['book1'] = array( - '#type' => 'textfield', - '#title' => t('Title of the book'), - '#size' => 30, - '#maxlength' => 100, - '#required' => TRUE, - '#default_value' => $row1->book, - '#disabled' => ($row1->book?TRUE:FALSE), - ); - $form['preference1']['author1'] = array( - '#type' => 'textfield', - '#title' => t('Author Name'), - '#size' => 30, - '#maxlength' => 100, - '#required' => TRUE, - '#default_value' => $row1->author, - '#disabled' => ($row1->author?TRUE:FALSE), - ); - $form['preference1']['isbn1'] = array( - '#type' => 'textfield', - '#title' => t('ISBN No'), - '#size' => 30, - '#maxlength' => 25, - '#required' => TRUE, - '#default_value' => $row1->isbn, - '#disabled' => ($row1->isbn?TRUE:FALSE), - ); - $form['preference1']['publisher1'] = array( - '#type' => 'textfield', - '#title' => t('Publisher & Place'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - '#default_value' => $row1->publisher, - ); - $form['preference1']['edition1'] = array( - '#type' => 'textfield', - '#title' => t('Edition'), - '#size' => 4, - '#maxlength' => 2, - '#required' => TRUE, - '#default_value' => $row1->edition, - ); - $form['preference1']['year1'] = array( - '#type' => 'textfield', - '#title' => t('Year of pulication'), - '#size' => 4, - '#maxlength' => 4, - '#required' => TRUE, - '#default_value' => $row1->year, - ); - $form['preference1']['book_category_1'] = array( - '#type' => 'select', - '#title' => t('Category'), - '#options' => _tbc_list_of_category(), - '#required' => TRUE, - ); - $form['preference2'] = array( - '#type' => 'fieldset', - '#title' => t('Book Preference 2'), - '#collapsible' => TRUE, - '#collapsed' => FALSE, - ); - $form['preference2']['book2'] = array( - '#type' => 'textfield', - '#title' => t('Title of the book'), - '#size' => 30, - '#maxlength' => 100, - '#required' => TRUE, - '#default_value' => $row2->book, - '#disabled' => ($row2->book?TRUE:FALSE), - ); - $form['preference2']['author2'] = array( - '#type' => 'textfield', - '#title' => t('Author Name'), - '#size' => 30, - '#maxlength' => 100, - '#required' => TRUE, - '#default_value' => $row2->author, - '#disabled' => ($row2->author?TRUE:FALSE), - ); - $form['preference2']['isbn2'] = array( - '#type' => 'textfield', - '#title' => t('ISBN No'), - '#size' => 30, - '#maxlength' => 25, - '#required' => TRUE, - '#default_value' => $row2->isbn, - '#disabled' => ($row2->isbn?TRUE:FALSE), - ); - $form['preference2']['publisher2'] = array( - '#type' => 'textfield', - '#title' => t('Publisher & Place'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - '#default_value' => $row2->publisher, - ); - $form['preference2']['edition2'] = array( - '#type' => 'textfield', - '#title' => t('Edition'), - '#size' => 4, - '#maxlength' => 2, - '#required' => TRUE, - '#default_value' => $row2->edition, - ); - $form['preference2']['year2'] = array( - '#type' => 'textfield', - '#title' => t('Year of pulication'), - '#size' => 4, - '#maxlength' => 4, - '#required' => TRUE, - '#default_value' => $row2->year, - ); - $form['preference2']['book_category_2'] = array( - '#type' => 'select', - '#title' => t('Category'), - '#options' => _tbc_list_of_category(), - '#required' => TRUE, - ); - $form['preference3'] = array( - '#type' => 'fieldset', - '#title' => t('Book Preference 3'), - '#collapsible' => TRUE, - '#collapsed' => FALSE, - ); - $form['preference3']['book3'] = array( - '#type' => 'textfield', - '#title' => t('Title of the book'), - '#size' => 30, - '#maxlength' => 100, - '#required' => TRUE, - '#default_value' => $row3->book, - '#disabled' => ($row3->book?TRUE:FALSE), - ); - $form['preference3']['author3'] = array( - '#type' => 'textfield', - '#title' => t('Author Name'), - '#size' => 30, - '#maxlength' => 100, - '#required' => TRUE, - '#default_value' => $row3->author, - '#disabled' => ($row3->author?TRUE:FALSE), - ); - $form['preference3']['isbn3'] = array( - '#type' => 'textfield', - '#title' => t('ISBN No'), - '#size' => 30, - '#maxlength' => 25, - '#required' => TRUE, - '#default_value' => $row3->isbn, - '#disabled' => ($row3->isbn?TRUE:FALSE), - ); - $form['preference3']['publisher3'] = array( - '#type' => 'textfield', - '#title' => t('Publisher & Place'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - '#default_value' => $row3->publisher, - ); - $form['preference3']['edition3'] = array( - '#type' => 'textfield', - '#title' => t('Edition'), - '#size' => 4, - '#maxlength' => 2, - '#required' => TRUE, - '#default_value' => $row3->edition, - ); - $form['preference3']['year3'] = array( - '#type' => 'textfield', - '#title' => t('Year of pulication'), - '#size' => 4, - '#maxlength' => 4, - '#required' => TRUE, - '#default_value' => $row3->year, - ); - $form['preference3']['book_category_3'] = array( - '#type' => 'select', - '#title' => t('Category'), - '#options' => _tbc_list_of_category(), - '#required' => TRUE, - ); - $form['samplefile'] = array( - '#type' => 'fieldset', - '#title' => t('<span class="form-required form-item" title="This field is required.">Sample Source Files *</span>'), - '#collapsible' => FALSE, - '#collapsed' => FALSE, - ); - $form['samplefile']['samplefile1'] = array( - '#type' => 'file', - '#title' => t('Upload sample source file'), - '#size' => 48, - '#description' => t('Separate filenames with underscore. No spaces or any special characters allowed in filename.') . '<br />' . - t('<span style="color:red;">Allowed file extensions : ') . variable_get('textbook_companion_sample_source_file_extensions', '').'</span>', - - ); - $form['termconditions'] = array( - '#type' => 'checkboxes', - '#title' => t('Terms And Conditions'), - '#options' => array( - 'status' => t('<a href="/term-and-conditions" target="_blank">I agree to the Terms and Conditions</a>'),), - '#required' => TRUE, - ); - $form['submit'] = array( - '#type' => 'submit', - '#value' => t('Submit') - ); - - return $form; + global $user; + $form = array(); + $form['imp_notice'] = array( + '#type' => 'item', + '#markup' => '<font color="red"><b>Please fill up this form carefully as the details entered here will be exactly written in the Textbook Companion</b></font>' + ); + $form['full_name'] = array( + '#type' => 'textfield', + '#title' => t('Full Name'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE + ); + $form['email_id'] = array( + '#type' => 'textfield', + '#title' => t('Email'), + '#size' => 30, + '#value' => $user->mail, + '#disabled' => TRUE + ); + $form['mobile'] = array( + '#type' => 'textfield', + '#title' => t('Mobile No.'), + '#size' => 30, + '#maxlength' => 15, + '#required' => TRUE + ); + $form['gender'] = array( + '#type' => 'radios', + '#title' => t('Gender'), + '#options' => array( + 'M' => 'Male', + 'F' => 'Female' + ), + '#required' => TRUE + ); + /*$form['how_project'] = array( + '#type' => 'select', + '#title' => t('How did you come to know about this project'), + '#options' => array('Scilab Website' => 'Scilab Website', + 'Friend' => 'Friend', + 'Professor/Teacher' => 'Professor/Teacher', + 'Mailing List' => 'Mailing List', + 'Poster in my/other college' => 'Poster in my/other college', + 'Others' => 'Others'), + '#required' => TRUE, + );*/ + $form['course'] = array( + '#type' => 'textfield', + '#title' => t('Course'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE + ); + $form['branch'] = array( + '#type' => 'select', + '#title' => t('Department/Branch'), + '#options' => _tbc_list_of_departments(), + '#required' => TRUE + ); + $form['university'] = array( + '#type' => 'textfield', + '#title' => t('University/Institute'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE + ); + $form['country'] = array( + '#type' => 'select', + '#title' => t('Country'), + '#options' => array( + 'India' => 'India', + 'Others' => 'Others' + ), + '#required' => TRUE, + '#tree' => TRUE, + '#validated' => TRUE + ); + $form['other_country'] = array( + '#type' => 'textfield', + '#title' => t('Other than India'), + '#size' => 100, + '#attributes' => array( + 'placeholder' => t('Enter your country name') + ), + '#states' => array( + 'visible' => array( + ':input[name="country"]' => array( + 'value' => 'Others' + ) + ) + ) + ); + $form['other_state'] = array( + '#type' => 'textfield', + '#title' => t('State other than India'), + '#size' => 100, + '#attributes' => array( + 'placeholder' => t('Enter your state/region name') + ), + '#states' => array( + 'visible' => array( + ':input[name="country"]' => array( + 'value' => 'Others' + ) + ) + ) + ); + $form['other_city'] = array( + '#type' => 'textfield', + '#title' => t('City other than India'), + '#size' => 100, + '#attributes' => array( + 'placeholder' => t('Enter your city name') + ), + '#states' => array( + 'visible' => array( + ':input[name="country"]' => array( + 'value' => 'Others' + ) + ) + ) + ); + $form['all_state'] = array( + '#type' => 'select', + '#title' => t('State'), + '#options' => _tbc_list_of_states(), + '#validated' => TRUE, + '#states' => array( + 'visible' => array( + ':input[name="country"]' => array( + 'value' => 'India' + ) + ) + ) + ); + $form['city'] = array( + '#type' => 'select', + '#title' => t('City'), + '#options' => _tbc_list_of_cities(), + '#states' => array( + 'visible' => array( + ':input[name="country"]' => array( + 'value' => 'India' + ) + ) + ) + ); + $form['pincode'] = array( + '#type' => 'textfield', + '#title' => t('Pincode'), + '#size' => 30, + '#maxlength' => 6, + '#required' => False, + '#attributes' => array( + 'placeholder' => 'Enter pincode....' + ) + ); + $form['faculty'] = array( + '#type' => 'hidden', + '#value' => 'None', + '#title' => t('College Teacher/Professor'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE + ); + $form['faculty_email'] = array( + '#type' => 'hidden', + '#value' => 'None', + '#title' => t('Teacher/Professor Email Id'), + '#default_value' => '@email.com', + '#size' => 30, + '#maxlength' => 50 + ); + $form['reviewer'] = array( + '#type' => 'hidden', + '#value' => 'None', + '#title' => t('Reviewer'), + '#size' => 30, + '#maxlength' => 50 + ); + $form['completion_date'] = array( + '#type' => 'textfield', + '#title' => t('Expected Date of Completion'), + '#description' => t('Input date format should be DD-MM-YYYY. Eg: 23-03-2011'), + '#size' => 10, + '#maxlength' => 10 + ); + $form['operating_system'] = array( + '#type' => 'textfield', + '#title' => t('Operating System'), + '#required' => TRUE, + '#size' => 30, + '#maxlength' => 50 + ); + $form['version'] = array( + '#type' => 'textfield', + '#title' => t('Scilab Version'), + '#description' => t('Input version format should be like 5.4 or 5.4.1'), + '#size' => 10, + '#required' => TRUE, + '#maxlength' => 20 + ); + $form['preference1'] = array( + '#type' => 'fieldset', + '#title' => t('Book Preference 1'), + '#collapsible' => TRUE, + '#collapsed' => FALSE + ); + $form['preference1']['book1'] = array( + '#type' => 'textfield', + '#title' => t('Title of the book'), + '#size' => 30, + '#maxlength' => 100, + '#required' => TRUE, + '#default_value' => $row1->book, + '#disabled' => ($row1->book ? TRUE : FALSE) + ); + $form['preference1']['author1'] = array( + '#type' => 'textfield', + '#title' => t('Author Name'), + '#size' => 30, + '#maxlength' => 100, + '#required' => TRUE, + '#default_value' => $row1->author, + '#disabled' => ($row1->author ? TRUE : FALSE) + ); + $form['preference1']['isbn1'] = array( + '#type' => 'textfield', + '#title' => t('ISBN No'), + '#size' => 30, + '#maxlength' => 25, + '#required' => TRUE, + '#default_value' => $row1->isbn, + '#disabled' => ($row1->isbn ? TRUE : FALSE) + ); + $form['preference1']['publisher1'] = array( + '#type' => 'textfield', + '#title' => t('Publisher & Place'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE, + '#default_value' => $row1->publisher + ); + $form['preference1']['edition1'] = array( + '#type' => 'textfield', + '#title' => t('Edition'), + '#size' => 4, + '#maxlength' => 2, + '#required' => TRUE, + '#default_value' => $row1->edition + ); + $form['preference1']['year1'] = array( + '#type' => 'textfield', + '#title' => t('Year of pulication'), + '#size' => 4, + '#maxlength' => 4, + '#required' => TRUE, + '#default_value' => $row1->year + ); + $form['preference1']['book_category_1'] = array( + '#type' => 'select', + '#title' => t('Category'), + '#options' => _tbc_list_of_category(), + '#required' => TRUE + ); + $form['preference2'] = array( + '#type' => 'fieldset', + '#title' => t('Book Preference 2'), + '#collapsible' => TRUE, + '#collapsed' => FALSE + ); + $form['preference2']['book2'] = array( + '#type' => 'textfield', + '#title' => t('Title of the book'), + '#size' => 30, + '#maxlength' => 100, + '#required' => TRUE, + '#default_value' => $row2->book, + '#disabled' => ($row2->book ? TRUE : FALSE) + ); + $form['preference2']['author2'] = array( + '#type' => 'textfield', + '#title' => t('Author Name'), + '#size' => 30, + '#maxlength' => 100, + '#required' => TRUE, + '#default_value' => $row2->author, + '#disabled' => ($row2->author ? TRUE : FALSE) + ); + $form['preference2']['isbn2'] = array( + '#type' => 'textfield', + '#title' => t('ISBN No'), + '#size' => 30, + '#maxlength' => 25, + '#required' => TRUE, + '#default_value' => $row2->isbn, + '#disabled' => ($row2->isbn ? TRUE : FALSE) + ); + $form['preference2']['publisher2'] = array( + '#type' => 'textfield', + '#title' => t('Publisher & Place'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE, + '#default_value' => $row2->publisher + ); + $form['preference2']['edition2'] = array( + '#type' => 'textfield', + '#title' => t('Edition'), + '#size' => 4, + '#maxlength' => 2, + '#required' => TRUE, + '#default_value' => $row2->edition + ); + $form['preference2']['year2'] = array( + '#type' => 'textfield', + '#title' => t('Year of pulication'), + '#size' => 4, + '#maxlength' => 4, + '#required' => TRUE, + '#default_value' => $row2->year + ); + $form['preference2']['book_category_2'] = array( + '#type' => 'select', + '#title' => t('Category'), + '#options' => _tbc_list_of_category(), + '#required' => TRUE + ); + $form['preference3'] = array( + '#type' => 'fieldset', + '#title' => t('Book Preference 3'), + '#collapsible' => TRUE, + '#collapsed' => FALSE + ); + $form['preference3']['book3'] = array( + '#type' => 'textfield', + '#title' => t('Title of the book'), + '#size' => 30, + '#maxlength' => 100, + '#required' => TRUE, + '#default_value' => $row3->book, + '#disabled' => ($row3->book ? TRUE : FALSE) + ); + $form['preference3']['author3'] = array( + '#type' => 'textfield', + '#title' => t('Author Name'), + '#size' => 30, + '#maxlength' => 100, + '#required' => TRUE, + '#default_value' => $row3->author, + '#disabled' => ($row3->author ? TRUE : FALSE) + ); + $form['preference3']['isbn3'] = array( + '#type' => 'textfield', + '#title' => t('ISBN No'), + '#size' => 30, + '#maxlength' => 25, + '#required' => TRUE, + '#default_value' => $row3->isbn, + '#disabled' => ($row3->isbn ? TRUE : FALSE) + ); + $form['preference3']['publisher3'] = array( + '#type' => 'textfield', + '#title' => t('Publisher & Place'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE, + '#default_value' => $row3->publisher + ); + $form['preference3']['edition3'] = array( + '#type' => 'textfield', + '#title' => t('Edition'), + '#size' => 4, + '#maxlength' => 2, + '#required' => TRUE, + '#default_value' => $row3->edition + ); + $form['preference3']['year3'] = array( + '#type' => 'textfield', + '#title' => t('Year of pulication'), + '#size' => 4, + '#maxlength' => 4, + '#required' => TRUE, + '#default_value' => $row3->year + ); + $form['preference3']['book_category_3'] = array( + '#type' => 'select', + '#title' => t('Category'), + '#options' => _tbc_list_of_category(), + '#required' => TRUE + ); + $form['samplefile'] = array( + '#type' => 'fieldset', + '#title' => t('<span class="form-required form-item" title="This field is required.">Sample Source Files *</span>'), + '#collapsible' => FALSE, + '#collapsed' => FALSE + ); + $form['samplefile']['samplefile1'] = array( + '#type' => 'file', + '#title' => t('Upload sample source file'), + '#size' => 48, + '#description' => t('Separate filenames with underscore. No spaces or any special characters allowed in filename.') . '<br />' . t('<span style="color:red;">Allowed file extensions : ') . variable_get('textbook_companion_sample_source_file_extensions', '') . '</span>' + ); + $form['termconditions'] = array( + '#type' => 'checkboxes', + '#title' => t('Terms And Conditions'), + '#options' => array( + 'status' => t('<a href="/term-and-conditions" target="_blank">I agree to the Terms and Conditions</a>') + ), + '#required' => TRUE + ); + $form['submit'] = array( + '#type' => 'submit', + '#value' => t('Submit') + ); + return $form; } /******************** AICTE book proposal from validate *****************************/ -function book_proposal_form_validate($form,&$form_state) +function book_proposal_form_validate($form, &$form_state) { - - /* mobile */ - if (!preg_match('/^[0-9\ \+]{0,15}$/', $form_state['values']['mobile'])) - form_set_error('mobile', t('Invalid mobile number')); - - /* date of completion */ - if (!preg_match('/^[0-9]{1,2}-[0-9]{1,2}-[0-9]{4}$/', $form_state['values']['completion_date'])) - form_set_error('completion_date', t('Invalid expected date of completion')); - - list($d, $m, $y) = explode('-', $form_state['values']['completion_date']); - $d = (int)$d; $m = (int)$m; $y = (int)$y; - if (!checkdate($m, $d, $y)) - form_set_error('completion_date', t('Invalid expected date of completion')); - if (mktime(0, 0, 0, $m, $d, $y) <= time()) - form_set_error('completion_date', t('Expected date of completion should be in future')); - - /* edition */ - if (!preg_match('/^[1-9][0-9]{0,1}$/', $form_state['values']['edition1'])) - form_set_error('edition1', t('Invalid edition for Book Preference 1')); - if (!preg_match('/^[1-9][0-9]{0,1}$/', $form_state['values']['edition2'])) - form_set_error('edition2', t('Invalid edition for Book Preference 2')); - if (!preg_match('/^[1-9][0-9]{0,1}$/', $form_state['values']['edition3'])) - form_set_error('edition3', t('Invalid edition for Book Preference 3')); - - /* year of publication */ - if (!preg_match('/^[1-3][0-9][0-9][0-9]$/', $form_state['values']['year1'])) - form_set_error('year1', t('Invalid year of pulication for Book Preference 1')); - if (!preg_match('/^[1-3][0-9][0-9][0-9]$/', $form_state['values']['year2'])) - form_set_error('year2', t('Invalid year of pulication for Book Preference 2')); - if (!preg_match('/^[1-3][0-9][0-9][0-9]$/', $form_state['values']['year3'])) - form_set_error('year3', t('Invalid year of pulication for Book Preference 3')); - - /* year of publication */ - $cur_year = date('Y'); - if ((int)$form_state['values']['year1'] > $cur_year) - form_set_error('year1', t('Year of pulication should be not in the future for Book Preference 1')); - if ((int)$form_state['values']['year2'] > $cur_year) - form_set_error('year2', t('Year of pulication should be not in the future for Book Preference 2')); - if ((int)$form_state['values']['year3'] > $cur_year) - form_set_error('year3', t('Year of pulication should be not in the future for Book Preference 3')); - - /* isbn */ - if (!preg_match('/^[0-9\-xX]+$/', $form_state['values']['isbn1'])) - form_set_error('isbn1', t('Invalid ISBN for Book Preference 1')); - if (!preg_match('/^[0-9\-xX]+$/', $form_state['values']['isbn2'])) - form_set_error('isbn2', t('Invalid ISBN for Book Preference 2')); - if (!preg_match('/^[0-9\-xX]+$/', $form_state['values']['isbn3'])) - form_set_error('isbn3', t('Invalid ISBN for Book Preference 3')); -/* version */ - if (!preg_match('/^\d+(?:\.\d+)+/', $form_state['values']['version'])) - form_set_error('version', t('Please enter correct version in given format')); - /* country */ - if($form_state['values']['country']=='Others'){ - if($form_state['values']['other_country']== ''){ - form_set_error('other_country', t('Enter country name')); - }else{ - $form_state['values']['country'] = $form_state['values']['other_country']; - } - if($form_state['values']['other_state']== ''){ - form_set_error('other_state', t('Enter state name')); - }else{ - $form_state['values']['all_state'] = $form_state['values']['other_state']; - } - if($form_state['values']['other_city']== ''){ - form_set_error('other_city', t('Enter city name')); - }else{ - $form_state['values']['city'] = $form_state['values']['other_city']; - } - }else{ - if($form_state['values']['country']== ''){ - form_set_error('country', t('Select country name')); - } - if($form_state['values']['all_state']== ''){ - form_set_error('all_state', t('Select state name')); - } - if($form_state['values']['city']== ''){ - form_set_error('city', t('Select city name')); - } - - - } - - - if (isset($_FILES['files'])) - { - /* check if atleast one source or result file is uploaded */ - if ( ! ($_FILES['files']['name']['samplefile1'])) - form_set_error('samplefile1', t('Please upload sample code main or source file.')); - - /* check for valid filename extensions */ - foreach ($_FILES['files']['name'] as $file_form_name => $file_name) - { - if ($file_name) - { - /* checking file type */ - if (strstr($file_form_name, 'sample')) - $file_type = 'S'; - - else - $file_type = 'U'; - - $allowed_extensions_str = ''; - switch ($file_type) - { - case 'S': - $allowed_extensions_str = variable_get('textbook_companion_sample_source_file_extensions', ''); - break; - - } - $allowed_extensions = explode(',' , $allowed_extensions_str); - $allowd_file = strtolower($_FILES['files']['name'][$file_form_name]); - $allowd_files = explode('.', $allowd_file); - $temp_extension = end($allowd_files); - if (!in_array($temp_extension, $allowed_extensions)) - form_set_error($file_form_name, t('Only file with ' . $allowed_extensions_str . ' extensions can be uploaded.')); - if ($_FILES['files']['size'][$file_form_name] <= 0) - form_set_error($file_form_name, t('File size cannot be zero.')); - - /* check if valid file name */ - if (!textbook_companion_check_valid_filename($_FILES['files']['name'][$file_form_name])) - form_set_error($file_form_name, t('Invalid file name specified. Only alphabets and numbers are allowed as a valid filename.')); - - - } - } - } - - return; + /* mobile */ + if (!preg_match('/^[0-9\ \+]{0,15}$/', $form_state['values']['mobile'])) + form_set_error('mobile', t('Invalid mobile number')); + /* date of completion */ + if (!preg_match('/^[0-9]{1,2}-[0-9]{1,2}-[0-9]{4}$/', $form_state['values']['completion_date'])) + form_set_error('completion_date', t('Invalid expected date of completion')); + list($d, $m, $y) = explode('-', $form_state['values']['completion_date']); + $d = (int) $d; + $m = (int) $m; + $y = (int) $y; + if (!checkdate($m, $d, $y)) + form_set_error('completion_date', t('Invalid expected date of completion')); + if (mktime(0, 0, 0, $m, $d, $y) <= time()) + form_set_error('completion_date', t('Expected date of completion should be in future')); + /* edition */ + if (!preg_match('/^[1-9][0-9]{0,1}$/', $form_state['values']['edition1'])) + form_set_error('edition1', t('Invalid edition for Book Preference 1')); + if (!preg_match('/^[1-9][0-9]{0,1}$/', $form_state['values']['edition2'])) + form_set_error('edition2', t('Invalid edition for Book Preference 2')); + if (!preg_match('/^[1-9][0-9]{0,1}$/', $form_state['values']['edition3'])) + form_set_error('edition3', t('Invalid edition for Book Preference 3')); + /* year of publication */ + if (!preg_match('/^[1-3][0-9][0-9][0-9]$/', $form_state['values']['year1'])) + form_set_error('year1', t('Invalid year of pulication for Book Preference 1')); + if (!preg_match('/^[1-3][0-9][0-9][0-9]$/', $form_state['values']['year2'])) + form_set_error('year2', t('Invalid year of pulication for Book Preference 2')); + if (!preg_match('/^[1-3][0-9][0-9][0-9]$/', $form_state['values']['year3'])) + form_set_error('year3', t('Invalid year of pulication for Book Preference 3')); + /* year of publication */ + $cur_year = date('Y'); + if ((int) $form_state['values']['year1'] > $cur_year) + form_set_error('year1', t('Year of pulication should be not in the future for Book Preference 1')); + if ((int) $form_state['values']['year2'] > $cur_year) + form_set_error('year2', t('Year of pulication should be not in the future for Book Preference 2')); + if ((int) $form_state['values']['year3'] > $cur_year) + form_set_error('year3', t('Year of pulication should be not in the future for Book Preference 3')); + /* isbn */ + if (!preg_match('/^[0-9\-xX]+$/', $form_state['values']['isbn1'])) + form_set_error('isbn1', t('Invalid ISBN for Book Preference 1')); + if (!preg_match('/^[0-9\-xX]+$/', $form_state['values']['isbn2'])) + form_set_error('isbn2', t('Invalid ISBN for Book Preference 2')); + if (!preg_match('/^[0-9\-xX]+$/', $form_state['values']['isbn3'])) + form_set_error('isbn3', t('Invalid ISBN for Book Preference 3')); + /* version */ + if (!preg_match('/^\d+(?:\.\d+)+/', $form_state['values']['version'])) + form_set_error('version', t('Please enter correct version in given format')); + /* country */ + if ($form_state['values']['country'] == 'Others') + { + if ($form_state['values']['other_country'] == '') + { + form_set_error('other_country', t('Enter country name')); + } //$form_state['values']['other_country'] == '' + else + { + $form_state['values']['country'] = $form_state['values']['other_country']; + } + if ($form_state['values']['other_state'] == '') + { + form_set_error('other_state', t('Enter state name')); + } //$form_state['values']['other_state'] == '' + else + { + $form_state['values']['all_state'] = $form_state['values']['other_state']; + } + if ($form_state['values']['other_city'] == '') + { + form_set_error('other_city', t('Enter city name')); + } //$form_state['values']['other_city'] == '' + else + { + $form_state['values']['city'] = $form_state['values']['other_city']; + } + } //$form_state['values']['country'] == 'Others' + else + { + if ($form_state['values']['country'] == '') + { + form_set_error('country', t('Select country name')); + } //$form_state['values']['country'] == '' + if ($form_state['values']['all_state'] == '') + { + form_set_error('all_state', t('Select state name')); + } //$form_state['values']['all_state'] == '' + if ($form_state['values']['city'] == '') + { + form_set_error('city', t('Select city name')); + } //$form_state['values']['city'] == '' + } + if (isset($_FILES['files'])) + { + /* check if atleast one source or result file is uploaded */ + if (!($_FILES['files']['name']['samplefile1'])) + form_set_error('samplefile1', t('Please upload sample code main or source file.')); + /* check for valid filename extensions */ + foreach ($_FILES['files']['name'] as $file_form_name => $file_name) + { + if ($file_name) + { + /* checking file type */ + if (strstr($file_form_name, 'sample')) + $file_type = 'S'; + else + $file_type = 'U'; + $allowed_extensions_str = ''; + switch ($file_type) + { + case 'S': + $allowed_extensions_str = variable_get('textbook_companion_sample_source_file_extensions', ''); + break; + } //$file_type + $allowed_extensions = explode(',', $allowed_extensions_str); + $allowd_file = strtolower($_FILES['files']['name'][$file_form_name]); + $allowd_files = explode('.', $allowd_file); + $temp_extension = end($allowd_files); + if (!in_array($temp_extension, $allowed_extensions)) + form_set_error($file_form_name, t('Only file with ' . $allowed_extensions_str . ' extensions can be uploaded.')); + if ($_FILES['files']['size'][$file_form_name] <= 0) + form_set_error($file_form_name, t('File size cannot be zero.')); + /* check if valid file name */ + if (!textbook_companion_check_valid_filename($_FILES['files']['name'][$file_form_name])) + form_set_error($file_form_name, t('Invalid file name specified. Only alphabets and numbers are allowed as a valid filename.')); + } //$file_name + } //$_FILES['files']['name'] as $file_form_name => $file_name + } //isset($_FILES['files']) + return; } - function book_proposal_form_submit($form, &$form_state) { - - global $user; - $selections = variable_get("aicte_".$user->uid, ""); - $root_path =textbook_companion_samplecode_path(); - - if (!$user->uid) { + global $user; + $selections = variable_get("aicte_" . $user->uid, ""); + $root_path = textbook_companion_samplecode_path(); + if (!$user->uid) + { drupal_set_message('It is mandatory to login on this website to access the proposal form', 'error'); return; - } - - /* completion date to timestamp */ - list($d, $m, $y) = explode('-', $form_state['values']['completion_date']); - $completion_date_timestamp = mktime(0, 0, 0, $m, $d, $y); - $scilab_version = 'scilab ' . $form_state['values']['version']; - -$query = "INSERT INTO {textbook_companion_proposal} + } //!$user->uid + /* completion date to timestamp */ + list($d, $m, $y) = explode('-', $form_state['values']['completion_date']); + $completion_date_timestamp = mktime(0, 0, 0, $m, $d, $y); + $scilab_version = 'scilab ' . $form_state['values']['version']; + $query = "INSERT INTO {textbook_companion_proposal} (uid, approver_uid, full_name, mobile, gender, how_project, course, branch, university, country, city, pincode, state, faculty, reviewer, completion_date, creation_date, approval_date, proposal_status, scilab_version, operating_system, teacher_email, message, samplefilepath) VALUES (:uid, :approver_uid, :full_name, :mobile, :gender, :how_project, :course, :branch, :university, :country, :city, :pincode, :state, :faculty, :reviewer, :completion_date, :creation_date, :approval_date, :proposal_status, :scilab_version, :operating_system, :teacher_email, :message, :samplefilepath)"; -$args = array( - ":uid" => $user->uid, - ":approver_uid" => 0, - ":full_name" => ucwords(strtolower($form_state['values']['full_name'])), - ":mobile" =>$form_state['values']['mobile'], - ":gender" => $form_state['values']['gender'], - ":how_project" => 'Not available', - ":course" => $form_state['values']['course'], - ":branch" => $form_state['values']['branch'], - ":university" => $form_state['values']['university'], - ":country" => $form_state['values']['country'], - ":city"=> $form_state['values']['city'], - ":pincode"=> $form_state['values']['pincode'], - ":state"=> $form_state['values']['all_state'], - ":faculty" => ucwords(strtolower($form_state['values']['faculty'])), - ":reviewer" => ucwords(strtolower($form_state['values']['reviewer'])), - ":completion_date" => $completion_date_timestamp, - ":creation_date" => time(), - ":approval_date" => 0, - ":proposal_status" => 0, - ":scilab_version" => $scilab_version, - ":operating_system" => $form_state['values']['operating_system'], - ":teacher_email" => $form_state['values']['faculty_email'], - ":message" => 'None', - ":samplefilepath"=>"" - ); - - $result = db_query($query, $args, array('return' => Database::RETURN_INSERT_ID)); + $args = array( + ":uid" => $user->uid, + ":approver_uid" => 0, + ":full_name" => ucwords(strtolower($form_state['values']['full_name'])), + ":mobile" => $form_state['values']['mobile'], + ":gender" => $form_state['values']['gender'], + ":how_project" => 'Not available', + ":course" => $form_state['values']['course'], + ":branch" => $form_state['values']['branch'], + ":university" => $form_state['values']['university'], + ":country" => $form_state['values']['country'], + ":city" => $form_state['values']['city'], + ":pincode" => $form_state['values']['pincode'], + ":state" => $form_state['values']['all_state'], + ":faculty" => ucwords(strtolower($form_state['values']['faculty'])), + ":reviewer" => ucwords(strtolower($form_state['values']['reviewer'])), + ":completion_date" => $completion_date_timestamp, + ":creation_date" => time(), + ":approval_date" => 0, + ":proposal_status" => 0, + ":scilab_version" => $scilab_version, + ":operating_system" => $form_state['values']['operating_system'], + ":teacher_email" => $form_state['values']['faculty_email'], + ":message" => 'None', + ":samplefilepath" => "" + ); + $result = db_query($query, $args, array( + 'return' => Database::RETURN_INSERT_ID + )); $dest_path = $result . '/'; - if (!is_dir($root_path . $dest_path)) - mkdir($root_path . $dest_path); - /* uploading files */ - foreach ($_FILES['files']['name'] as $file_form_name => $file_name) - { - if ($file_name) - { - /* checking file type */ - $file_type = 'S'; - - if (file_exists($root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) - { - drupal_set_message(t("Error uploading file. File !filename already exists.", array('!filename' => $_FILES['files']['name'][$file_form_name])), 'error'); - return; - } - - /* uploading file */ - if (move_uploaded_file($_FILES['files']['tmp_name'][$file_form_name], $root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) - { - $query = "UPDATE {textbook_companion_proposal} SET samplefilepath = :samplefilepath WHERE id = :id"; - $args = array( - ":samplefilepath" => $dest_path . $_FILES['files']['name'][$file_form_name], - ":id" =>$result, - ); - $updateresult = db_query($query, $args); - - drupal_set_message($file_name . ' uploaded successfully.', 'status'); - } else { - drupal_set_message('Error uploading file : ' . $dest_path . '/' . $file_name, 'error'); - } - } - } - - if (!$result) - { - drupal_set_message(t('Error receiving your proposal. Please try again.'), 'error'); - return; - } - /* proposal id */ - // $proposal_id = db_last_insert_id('textbook_companion_proposal', 'id'); - $proposal_id = $result; - - /* inserting first book preference */ - if ($form_state['values']['book1']) - { - - $query = "INSERT INTO {textbook_companion_preference} + if (!is_dir($root_path . $dest_path)) + mkdir($root_path . $dest_path); + /* uploading files */ + foreach ($_FILES['files']['name'] as $file_form_name => $file_name) + { + if ($file_name) + { + /* checking file type */ + $file_type = 'S'; + if (file_exists($root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) + { + drupal_set_message(t("Error uploading file. File !filename already exists.", array( + '!filename' => $_FILES['files']['name'][$file_form_name] + )), 'error'); + return; + } //file_exists($root_path . $dest_path . $_FILES['files']['name'][$file_form_name]) + /* uploading file */ + if (move_uploaded_file($_FILES['files']['tmp_name'][$file_form_name], $root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) + { + $query = "UPDATE {textbook_companion_proposal} SET samplefilepath = :samplefilepath WHERE id = :id"; + $args = array( + ":samplefilepath" => $dest_path . $_FILES['files']['name'][$file_form_name], + ":id" => $result + ); + $updateresult = db_query($query, $args); + drupal_set_message($file_name . ' uploaded successfully.', 'status'); + } //move_uploaded_file($_FILES['files']['tmp_name'][$file_form_name], $root_path . $dest_path . $_FILES['files']['name'][$file_form_name]) + else + { + drupal_set_message('Error uploading file : ' . $dest_path . '/' . $file_name, 'error'); + } + } //$file_name + } //$_FILES['files']['name'] as $file_form_name => $file_name + if (!$result) + { + drupal_set_message(t('Error receiving your proposal. Please try again.'), 'error'); + return; + } //!$result + /* proposal id */ + // $proposal_id = db_last_insert_id('textbook_companion_proposal', 'id'); + $proposal_id = $result; + /* inserting first book preference */ + if ($form_state['values']['book1']) + { + $query = "INSERT INTO {textbook_companion_preference} (proposal_id, pref_number, book, author, isbn, publisher, edition, year, category, approval_status) VALUES (:proposal_id, :pref_number, :book, :author, :isbn, :publisher, :edition, :year, :category, :approval_status) "; - - $args = array( - ":proposal_id" => $proposal_id, - ":pref_number" => 1, - ":book" => ucwords(strtolower($form_state['values']['book1'])), - ":author" => ucwords(strtolower($form_state['values']['author1'])), - ":isbn" => $form_state['values']['isbn1'], - ":publisher" => ucwords(strtolower($form_state['values']['publisher1'])), - ":edition" => $form_state['values']['edition1'], - ":year" => $form_state['values']['year1'], - ":category"=> $form_state['values']['book_category_1'], - ":approval_status" => 0, + $args = array( + ":proposal_id" => $proposal_id, + ":pref_number" => 1, + ":book" => ucwords(strtolower($form_state['values']['book1'])), + ":author" => ucwords(strtolower($form_state['values']['author1'])), + ":isbn" => $form_state['values']['isbn1'], + ":publisher" => ucwords(strtolower($form_state['values']['publisher1'])), + ":edition" => $form_state['values']['edition1'], + ":year" => $form_state['values']['year1'], + ":category" => $form_state['values']['book_category_1'], + ":approval_status" => 0 ); - $result = db_query($query, $args, array('return' => Database::RETURN_INSERT_ID)); - - - if (!$result) - { - drupal_set_message(t('Error receiving your first book preference.'), 'error'); - } else { - - //$preference_id = db_last_insert_id("textbook_companion_preference", "id"); - - $preference_id = $result; - - /*$query = " - UPDATE textbook_companion_aicte - SET preference_id = {$preference_id} - WHERE id = {$selections[0]} - "; - db_query($query);*/ - - $query = db_update('textbook_companion_aicte'); - $query->fields(array( - 'preference_id' => $preference_id, - )); - $query->condition('id', $selections[0]); - $num_updated = $query->execute(); - } - } - - /* inserting second book preference */ - if ($form_state['values']['book2']) - { - /*$result = db_query("INSERT INTO {textbook_companion_preference} - (proposal_id, pref_number, book, author, isbn, publisher, edition, year, category, approval_status) VALUES - (%d, %d, '%s', '%s', '%s', '%s', '%s', '%s', %d, %d)", - $proposal_id, - 2, - ucwords(strtolower($form_state['values']['book2'])), - ucwords(strtolower($form_state['values']['author2'])), - $form_state['values']['isbn2'], - ucwords(strtolower($form_state['values']['publisher2'])), - $form_state['values']['edition2'], - $form_state['values']['year2'], - 0, - 0 - ); -*/ - - $query = "INSERT INTO {textbook_companion_preference} + $result = db_query($query, $args, array( + 'return' => Database::RETURN_INSERT_ID + )); + if (!$result) + { + drupal_set_message(t('Error receiving your first book preference.'), 'error'); + } //!$result + else + { + //$preference_id = db_last_insert_id("textbook_companion_preference", "id"); + $preference_id = $result; + /*$query = " + UPDATE textbook_companion_aicte + SET preference_id = {$preference_id} + WHERE id = {$selections[0]} + "; + db_query($query);*/ + $query = db_update('textbook_companion_aicte'); + $query->fields(array( + 'preference_id' => $preference_id + )); + $query->condition('id', $selections[0]); + $num_updated = $query->execute(); + } + } //$form_state['values']['book1'] + /* inserting second book preference */ + if ($form_state['values']['book2']) + { + /*$result = db_query("INSERT INTO {textbook_companion_preference} + (proposal_id, pref_number, book, author, isbn, publisher, edition, year, category, approval_status) VALUES + (%d, %d, '%s', '%s', '%s', '%s', '%s', '%s', %d, %d)", + $proposal_id, + 2, + ucwords(strtolower($form_state['values']['book2'])), + ucwords(strtolower($form_state['values']['author2'])), + $form_state['values']['isbn2'], + ucwords(strtolower($form_state['values']['publisher2'])), + $form_state['values']['edition2'], + $form_state['values']['year2'], + 0, + 0 + ); + */ + $query = "INSERT INTO {textbook_companion_preference} (proposal_id, pref_number, book, author, isbn, publisher, edition, year, category, approval_status) VALUES (:proposal_id, :pref_number, :book, :author, :isbn, :publisher, :edition, :year, :category, :approval_status) "; - - $args = array( - ":proposal_id" => $proposal_id, - ":pref_number" => 2, - ":book" => ucwords(strtolower($form_state['values']['book2'])), - ":author" => ucwords(strtolower($form_state['values']['author2'])), - ":isbn" => $form_state['values']['isbn2'], - ":publisher" => ucwords(strtolower($form_state['values']['publisher2'])), - ":edition" => $form_state['values']['edition2'], - ":year" => $form_state['values']['year2'], - ":category"=> $form_state['values']['book_category_2'], - ":approval_status" => 0 + $args = array( + ":proposal_id" => $proposal_id, + ":pref_number" => 2, + ":book" => ucwords(strtolower($form_state['values']['book2'])), + ":author" => ucwords(strtolower($form_state['values']['author2'])), + ":isbn" => $form_state['values']['isbn2'], + ":publisher" => ucwords(strtolower($form_state['values']['publisher2'])), + ":edition" => $form_state['values']['edition2'], + ":year" => $form_state['values']['year2'], + ":category" => $form_state['values']['book_category_2'], + ":approval_status" => 0 ); - $result = db_query($query, $args, array('return' => Database::RETURN_INSERT_ID)); - - if (!$result) - { - drupal_set_message(t('Error receiving your second book preference.'), 'error'); - } else { - - //$preference_id = db_last_insert_id("textbook_companion_preference", "id"); - $preference_id = $result; - - /*$query = " - UPDATE textbook_companion_aicte - SET preference_id = {$preference_id} - WHERE id = {$selections[1]} - "; - db_query($query);*/ - $query = db_update('textbook_companion_aicte'); - $query->fields(array( - 'preference_id' => $preference_id, - )); - $query->condition('id', $selections[1]); - $num_updated = $query->execute(); - } - } - - /* inserting third book preference */ - if ($form_state['values']['book3']) - { - - $query = "INSERT INTO {textbook_companion_preference} + $result = db_query($query, $args, array( + 'return' => Database::RETURN_INSERT_ID + )); + if (!$result) + { + drupal_set_message(t('Error receiving your second book preference.'), 'error'); + } //!$result + else + { + //$preference_id = db_last_insert_id("textbook_companion_preference", "id"); + $preference_id = $result; + /*$query = " + UPDATE textbook_companion_aicte + SET preference_id = {$preference_id} + WHERE id = {$selections[1]} + "; + db_query($query);*/ + $query = db_update('textbook_companion_aicte'); + $query->fields(array( + 'preference_id' => $preference_id + )); + $query->condition('id', $selections[1]); + $num_updated = $query->execute(); + } + } //$form_state['values']['book2'] + /* inserting third book preference */ + if ($form_state['values']['book3']) + { + $query = "INSERT INTO {textbook_companion_preference} (proposal_id, pref_number, book, author, isbn, publisher, edition, year, category, approval_status) VALUES (:proposal_id, :pref_number, :book, :author, :isbn, :publisher, :edition, :year, :category, :approval_status) "; - - $args = array( - ":proposal_id" => $proposal_id, - ":pref_number" => 3, - ":book" => ucwords(strtolower($form_state['values']['book3'])), - ":author" => ucwords(strtolower($form_state['values']['author3'])), - ":isbn" => $form_state['values']['isbn3'], - ":publisher" => ucwords(strtolower($form_state['values']['publisher3'])), - ":edition" => $form_state['values']['edition3'], - ":year" => $form_state['values']['year3'], - ":category"=> $form_state['values']['book_category_3'], - ":approval_status" => 0 + $args = array( + ":proposal_id" => $proposal_id, + ":pref_number" => 3, + ":book" => ucwords(strtolower($form_state['values']['book3'])), + ":author" => ucwords(strtolower($form_state['values']['author3'])), + ":isbn" => $form_state['values']['isbn3'], + ":publisher" => ucwords(strtolower($form_state['values']['publisher3'])), + ":edition" => $form_state['values']['edition3'], + ":year" => $form_state['values']['year3'], + ":category" => $form_state['values']['book_category_3'], + ":approval_status" => 0 ); - $result = db_query($query, $args, array('return' => Database::RETURN_INSERT_ID)); - - if (!$result) - { - drupal_set_message(t('Error receiving your third book preference.'), 'error'); - } else { - $preference_id = $result; - - /*$query = " - UPDATE textbook_companion_aicte - SET preference_id = {$preference_id} - WHERE id = {$selections[2]} - "; - db_query($query);*/ - - $query = db_update('textbook_companion_aicte'); - $query->fields(array( - 'preference_id' => $preference_id, - )); - $query->condition('id', $selections[2]); - $num_updated = $query->execute(); - - } - - /* locking the books in the textbook_companion_aicte table */ - foreach ($selections as $selection) { - /*$query = " - UPDATE textbook_companion_aicte - SET status = 1, uid = {$user->uid}, proposal_id = {$proposal_id} - WHERE id = {$selection} AND status = 0 - "; - db_query($query);*/ - - $query = db_update('textbook_companion_aicte'); - $query->fields(array( - 'status' => 1, - 'uid' => $user->uid, - 'proposal_id' => $proposal_id, - )); - $query->condition('id', $selection); - $query->condition('status', 0); - $num_updated = $query->execute(); - - } - if (!$result) - { - drupal_set_message(t('Error receiving your third book preference.'), 'error'); - } - } - - /* sending email */ - $email_to = $user->mail; - $from = variable_get('textbook_companion_from_email', ''); - $bcc = variable_get('textbook_companion_emails', ''); - $cc = variable_get('textbook_companion_cc_emails', ''); - - $params['proposal_received']['proposal_id'] = $proposal_id; - $params['proposal_received']['user_id'] = $user->uid; - $params['proposal_received']['headers']=array('From'=>$from,'MIME-Version'=> '1.0', - 'Content-Type'=> 'text/plain; charset=UTF-8; format=flowed; delsp=yes', - 'Content-Transfer-Encoding' => '8Bit', - 'X-Mailer'=> 'Drupal','Cc' => $cc, 'Bcc' => $bcc); - - if (!drupal_mail('textbook_companion', 'proposal_received', $email_to , language_default(), $params, $from, TRUE)) - drupal_set_message('Error sending email message.', 'error'); - - drupal_set_message(t('We have received you book proposal. We will get back to you soon.'), 'status'); - drupal_goto(''); + $result = db_query($query, $args, array( + 'return' => Database::RETURN_INSERT_ID + )); + if (!$result) + { + drupal_set_message(t('Error receiving your third book preference.'), 'error'); + } //!$result + else + { + $preference_id = $result; + /*$query = " + UPDATE textbook_companion_aicte + SET preference_id = {$preference_id} + WHERE id = {$selections[2]} + "; + db_query($query);*/ + $query = db_update('textbook_companion_aicte'); + $query->fields(array( + 'preference_id' => $preference_id + )); + $query->condition('id', $selections[2]); + $num_updated = $query->execute(); + } + /* locking the books in the textbook_companion_aicte table */ + foreach ($selections as $selection) + { + /*$query = " + UPDATE textbook_companion_aicte + SET status = 1, uid = {$user->uid}, proposal_id = {$proposal_id} + WHERE id = {$selection} AND status = 0 + "; + db_query($query);*/ + $query = db_update('textbook_companion_aicte'); + $query->fields(array( + 'status' => 1, + 'uid' => $user->uid, + 'proposal_id' => $proposal_id + )); + $query->condition('id', $selection); + $query->condition('status', 0); + $num_updated = $query->execute(); + } //$selections as $selection + if (!$result) + { + drupal_set_message(t('Error receiving your third book preference.'), 'error'); + } //!$result + } //$form_state['values']['book3'] + /* sending email */ + $email_to = $user->mail; + $from = variable_get('textbook_companion_from_email', ''); + $bcc = variable_get('textbook_companion_emails', ''); + $cc = variable_get('textbook_companion_cc_emails', ''); + $params['proposal_received']['proposal_id'] = $proposal_id; + $params['proposal_received']['user_id'] = $user->uid; + $params['proposal_received']['headers'] = array( + 'From' => $from, + 'MIME-Version' => '1.0', + 'Content-Type' => 'text/plain; charset=UTF-8; format=flowed; delsp=yes', + 'Content-Transfer-Encoding' => '8Bit', + 'X-Mailer' => 'Drupal', + 'Cc' => $cc, + 'Bcc' => $bcc + ); + if (!drupal_mail('textbook_companion', 'proposal_received', $email_to, language_default(), $params, $from, TRUE)) + drupal_set_message('Error sending email message.', 'error'); + drupal_set_message(t('We have received you book proposal. We will get back to you soon.'), 'status'); + drupal_goto(''); } - /** * Implementation of hook_mail(). */ function textbook_companion_mail($key, &$message, $params) { - global $user; - $language = $message['language']; - /*$tbc_bcc_emails = array( - 'Bcc' => variable_get('textbook_companion_emails', ''), - );*/ - - switch ($key) - { - case 'proposal_received': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - /* initializing data */ - - /*$proposal_q = db_query("SELECT * FROM {textbook_companion_proposal} WHERE id = %d LIMIT 1", $params['proposal_received']['proposal_id']); - $proposal_data = db_fetch_object($proposal_q);*/ - - $query = db_select('textbook_companion_proposal'); - $query->fields('textbook_companion_proposal'); - $query->condition('id', $params['proposal_received']['proposal_id']); - $query->range(0, 1); - $result = $query->execute(); - $proposal_data =$result->fetchObject(); - - $samplecodefilename=""; - if(strlen($proposal_data->samplefilepath)>=5){ - $samplecodefilename=substr($proposal_data->samplefilepath, strrpos($proposal_data->samplefilepath, '/') + 1); - }else{ - $samplecodefilename="Not provided"; - } - /*$preference1_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND pref_number = %d LIMIT 1", $params['proposal_received']['proposal_id'], 1); - $preference1_data = db_fetch_object($preference1_q);*/ - - $query = " + global $user; + $language = $message['language']; + /*$tbc_bcc_emails = array( + 'Bcc' => variable_get('textbook_companion_emails', ''), + );*/ + switch ($key) + { + case 'proposal_received': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + /* initializing data */ + /*$proposal_q = db_query("SELECT * FROM {textbook_companion_proposal} WHERE id = %d LIMIT 1", $params['proposal_received']['proposal_id']); + $proposal_data = db_fetch_object($proposal_q);*/ + $query = db_select('textbook_companion_proposal'); + $query->fields('textbook_companion_proposal'); + $query->condition('id', $params['proposal_received']['proposal_id']); + $query->range(0, 1); + $result = $query->execute(); + $proposal_data = $result->fetchObject(); + $samplecodefilename = ""; + if (strlen($proposal_data->samplefilepath) >= 5) + { + $samplecodefilename = substr($proposal_data->samplefilepath, strrpos($proposal_data->samplefilepath, '/') + 1); + } //strlen($proposal_data->samplefilepath) >= 5 + else + { + $samplecodefilename = "Not provided"; + } + /*$preference1_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND pref_number = %d LIMIT 1", $params['proposal_received']['proposal_id'], 1); + $preference1_data = db_fetch_object($preference1_q);*/ + $query = " SELECT * FROM list_of_category loc JOIN textbook_companion_preference tcp ON loc.category_id = tcp.category WHERE proposal_id = :proposal_id AND pref_number = :pref_number LIMIT 1 "; - $args = array( - ':proposal_id' => $params['proposal_received']['proposal_id'], - ':pref_number' => 1, - ); - $preference1_q = db_query($query,$args); - $preference1_data = $preference1_q->fetchObject(); - - /*$preference2_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND pref_number = %d LIMIT 1", $params['proposal_received']['proposal_id'], 2); - $preference2_data = db_fetch_object($preference2_q);*/ - -$query = " + $args = array( + ':proposal_id' => $params['proposal_received']['proposal_id'], + ':pref_number' => 1 + ); + $preference1_q = db_query($query, $args); + $preference1_data = $preference1_q->fetchObject(); + /*$preference2_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND pref_number = %d LIMIT 1", $params['proposal_received']['proposal_id'], 2); + $preference2_data = db_fetch_object($preference2_q);*/ + $query = " SELECT * FROM list_of_category loc JOIN textbook_companion_preference tcp ON loc.category_id = tcp.category WHERE proposal_id = :proposal_id AND pref_number = :pref_number LIMIT 1 "; - $args = array( - ':proposal_id' => $params['proposal_received']['proposal_id'], - ':pref_number' => 2, - ); - $preference2_q = db_query($query,$args); - $preference2_data = $preference2_q->fetchObject(); - - - $query = " + $args = array( + ':proposal_id' => $params['proposal_received']['proposal_id'], + ':pref_number' => 2 + ); + $preference2_q = db_query($query, $args); + $preference2_data = $preference2_q->fetchObject(); + $query = " SELECT * FROM list_of_category loc JOIN textbook_companion_preference tcp ON loc.category_id = tcp.category WHERE proposal_id = :proposal_id AND pref_number = :pref_number LIMIT 1 "; - $args = array( - ':proposal_id' => $params['proposal_received']['proposal_id'], - ':pref_number' => 3, - ); - $preference3_q = db_query($query,$args); - $preference3_data = $preference3_q->fetchObject(); - - /*$query = db_select('textbook_companion_preference'); - $query->fields('textbook_companion_preference'); - $query->condition('proposal_id', $params['proposal_received']['proposal_id']); - $query->condition('pref_number', 3); - $query->range(0, 1); - $result = $query->execute(); - $preference3_data =$result->fetchObject();*/ - - - $user_data = user_load($params['proposal_received']['user_id']); - $message['headers'] = $params['proposal_received']['headers']; - $message['subject'] = t('[!site_name] Your book proposal has been received', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] =array('body' => t(' + $args = array( + ':proposal_id' => $params['proposal_received']['proposal_id'], + ':pref_number' => 3 + ); + $preference3_q = db_query($query, $args); + $preference3_data = $preference3_q->fetchObject(); + /*$query = db_select('textbook_companion_preference'); + $query->fields('textbook_companion_preference'); + $query->condition('proposal_id', $params['proposal_received']['proposal_id']); + $query->condition('pref_number', 3); + $query->range(0, 1); + $result = $query->execute(); + $preference3_data =$result->fetchObject();*/ + $user_data = user_load($params['proposal_received']['user_id']); + $message['headers'] = $params['proposal_received']['headers']; + $message['subject'] = t('[!site_name] Your book proposal has been received', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, We have received your following book proposal: @@ -1934,10 +2076,10 @@ Email : ' . $user_data->mail . ' Mobile : ' . $proposal_data->mobile . ' Course : ' . $proposal_data->course . ' Department/Branch : ' . $proposal_data->branch . ' -University/Institute : ' . $proposal_data->university . ' +University/Institute : ' . $proposal_data->university . ' College Teacher / Professor : ' . $proposal_data->faculty . ' -Reviewer : ' . $proposal_data->reviewer . ' -Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' +Reviewer : ' . $proposal_data->reviewer . ' +Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' Your Book Preferences : @@ -1969,7 +2111,7 @@ Year of publication : ' . $preference3_data->year . ' Category : ' . $preference3_data->category_name . ' -Uploaded Sample Code :'.$samplecodefilename.' +Uploaded Sample Code :' . $samplecodefilename . ' Your proposal is under review and you will soon receive an email from us regarding the same. @@ -1977,64 +2119,64 @@ Your proposal is under review and you will soon receive an email from us regardi Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); - break; - - case 'proposal_disapproved': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - /* initializing data */ - - /*$proposal_q = db_query("SELECT * FROM {textbook_companion_proposal} WHERE id = %d LIMIT 1", $params['proposal_disapproved']['proposal_id']); - $proposal_data = db_fetch_object($proposal_q);*/ - - $query = db_select('textbook_companion_proposal'); - $query->fields('textbook_companion_proposal'); - $query->condition('id', $params['proposal_disapproved']['proposal_id']); - $query->range(0, 1); - $result = $query->execute(); - $proposal_data =$result->fetchObject(); - - /*$preference1_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND pref_number = %d LIMIT 1", $params['proposal_disapproved']['proposal_id'], 1); - $preference1_data = db_fetch_object($preference1_q);*/ - - $query = db_select('textbook_companion_preference'); - $query->fields('textbook_companion_preference'); - $query->condition('proposal_id', $params['proposal_disapproved']['proposal_id']); - $query->condition('pref_number', 1); - $query->range(0, 1); - $result = $query->execute(); - $preference1_data =$result->fetchObject(); - - - /*$preference2_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND pref_number = %d LIMIT 1", $params['proposal_disapproved']['proposal_id'], 2); - $preference2_data = db_fetch_object($preference2_q);*/ - - $query = db_select('textbook_companion_preference'); - $query->fields('textbook_companion_preference'); - $query->condition('proposal_id', $params['proposal_disapproved']['proposal_id']); - $query->condition('pref_number', 2); - $query->range(0, 1); - $result = $query->execute(); - $preference2_data =$result->fetchObject(); - - - /*$preference3_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND pref_number = %d LIMIT 1", $params['proposal_disapproved']['proposal_id'], 3); - $preference3_data = db_fetch_object($preference3_q);*/ - - $query = db_select('textbook_companion_preference'); - $query->fields('textbook_companion_preference'); - $query->condition('proposal_id', $params['proposal_disapproved']['proposal_id']); - $query->condition('pref_number', 3); - $query->range(0, 1); - $result = $query->execute(); - $preference3_data =$result->fetchObject(); - - $user_data = user_load($params['proposal_disapproved']['user_id']); - $message['headers'] = $params['proposal_disapproved']['headers']; - $message['subject'] = t('[!site_name] Your book proposal has been disapproved', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - if($proposal_data->proposal_type != 1){ - $message['body'] =array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'proposal_disapproved': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + /* initializing data */ + /*$proposal_q = db_query("SELECT * FROM {textbook_companion_proposal} WHERE id = %d LIMIT 1", $params['proposal_disapproved']['proposal_id']); + $proposal_data = db_fetch_object($proposal_q);*/ + $query = db_select('textbook_companion_proposal'); + $query->fields('textbook_companion_proposal'); + $query->condition('id', $params['proposal_disapproved']['proposal_id']); + $query->range(0, 1); + $result = $query->execute(); + $proposal_data = $result->fetchObject(); + /*$preference1_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND pref_number = %d LIMIT 1", $params['proposal_disapproved']['proposal_id'], 1); + $preference1_data = db_fetch_object($preference1_q);*/ + $query = db_select('textbook_companion_preference'); + $query->fields('textbook_companion_preference'); + $query->condition('proposal_id', $params['proposal_disapproved']['proposal_id']); + $query->condition('pref_number', 1); + $query->range(0, 1); + $result = $query->execute(); + $preference1_data = $result->fetchObject(); + /*$preference2_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND pref_number = %d LIMIT 1", $params['proposal_disapproved']['proposal_id'], 2); + $preference2_data = db_fetch_object($preference2_q);*/ + $query = db_select('textbook_companion_preference'); + $query->fields('textbook_companion_preference'); + $query->condition('proposal_id', $params['proposal_disapproved']['proposal_id']); + $query->condition('pref_number', 2); + $query->range(0, 1); + $result = $query->execute(); + $preference2_data = $result->fetchObject(); + /*$preference3_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND pref_number = %d LIMIT 1", $params['proposal_disapproved']['proposal_id'], 3); + $preference3_data = db_fetch_object($preference3_q);*/ + $query = db_select('textbook_companion_preference'); + $query->fields('textbook_companion_preference'); + $query->condition('proposal_id', $params['proposal_disapproved']['proposal_id']); + $query->condition('pref_number', 3); + $query->range(0, 1); + $result = $query->execute(); + $preference3_data = $result->fetchObject(); + $user_data = user_load($params['proposal_disapproved']['user_id']); + $message['headers'] = $params['proposal_disapproved']['headers']; + $message['subject'] = t('[!site_name] Your book proposal has been disapproved', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + if ($proposal_data->proposal_type != 1) + { + $message['body'] = array( + 'body' => t(' Dear !user_name, Your following book proposal has been disapproved: @@ -2046,10 +2188,10 @@ Email : ' . $user_data->mail . ' Mobile : ' . $proposal_data->mobile . ' Course : ' . $proposal_data->course . ' Department/Branch : ' . $proposal_data->branch . ' -University/Institute : ' . $proposal_data->university . ' +University/Institute : ' . $proposal_data->university . ' College Teacher / Professor : ' . $proposal_data->faculty . ' -Reviewer : ' . $proposal_data->reviewer . ' -Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' +Reviewer : ' . $proposal_data->reviewer . ' +Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' Your Book Preferences : @@ -2079,11 +2221,19 @@ Year of publication : ' . $preference3_data->year . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); -} -else{ -//Non AICTE book proposal dissaprove// -$message['body'] = array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + } //$proposal_data->proposal_type != 1 + else + { + //Non AICTE book proposal dissaprove// + $message['body'] = array( + 'body' => t(' Dear !user_name, Your following book proposal has been disapproved: @@ -2095,10 +2245,10 @@ Email : ' . $user_data->mail . ' Mobile : ' . $proposal_data->mobile . ' Course : ' . $proposal_data->course . ' Department/Branch : ' . $proposal_data->branch . ' -University/Institute : ' . $proposal_data->university . ' +University/Institute : ' . $proposal_data->university . ' College Teacher / Professor : ' . $proposal_data->faculty . ' -Reviewer : ' . $proposal_data->reviewer . ' -Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' +Reviewer : ' . $proposal_data->reviewer . ' +Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' Your Book Preferences : @@ -2114,47 +2264,57 @@ Year of publication : ' . $preference1_data->year . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); -} - break; - - /* Non AICTE Book Proposal */ - case 'nonaicte_proposal_received': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - /* initializing data */ - - /*$proposal_q = db_query("SELECT * FROM {textbook_companion_proposal} WHERE id = %d LIMIT 1", $params['proposal_received']['proposal_id']); - $proposal_data = db_fetch_object($proposal_q);*/ - - $query = db_select('textbook_companion_proposal'); - $query->fields('textbook_companion_proposal'); - $query->condition('id', $params['nonaicte_proposal_received']['proposal_id']); - $query->range(0, 1); - $result = $query->execute(); - $proposal_data =$result->fetchObject(); - - $samplecodefilename=""; - if(strlen($proposal_data->samplefilepath)>=5){ - $samplecodefilename=substr($proposal_data->samplefilepath, strrpos($proposal_data->samplefilepath, '/') + 1); - }else{ - $samplecodefilename="Not provided"; - } - $query = " +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + } + break; + /* Non AICTE Book Proposal */ + case 'nonaicte_proposal_received': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + /* initializing data */ + /*$proposal_q = db_query("SELECT * FROM {textbook_companion_proposal} WHERE id = %d LIMIT 1", $params['proposal_received']['proposal_id']); + $proposal_data = db_fetch_object($proposal_q);*/ + $query = db_select('textbook_companion_proposal'); + $query->fields('textbook_companion_proposal'); + $query->condition('id', $params['nonaicte_proposal_received']['proposal_id']); + $query->range(0, 1); + $result = $query->execute(); + $proposal_data = $result->fetchObject(); + $samplecodefilename = ""; + if (strlen($proposal_data->samplefilepath) >= 5) + { + $samplecodefilename = substr($proposal_data->samplefilepath, strrpos($proposal_data->samplefilepath, '/') + 1); + } //strlen($proposal_data->samplefilepath) >= 5 + else + { + $samplecodefilename = "Not provided"; + } + $query = " SELECT * FROM list_of_category loc JOIN textbook_companion_preference tcp ON loc.category_id = tcp.category WHERE proposal_id = :proposal_id AND pref_number = :pref_number LIMIT 1 "; - $args = array( - ':proposal_id' => $params['nonaicte_proposal_received']['proposal_id'], - ':pref_number' => 1, - ); - $preference1_q = db_query($query,$args); - $preference1_data = $preference1_q->fetchObject(); - $user_data = user_load($params['nonaicte_proposal_received']['user_id']); - $message['headers'] = $params['nonaicte_proposal_received']['headers']; - $message['subject'] = t('[!site_name] Your book proposal has been received', array('!site_name' => variable_get('site_name', '')),array('language' => $language->language)); - $message['body'] =array('body' => t(' + $args = array( + ':proposal_id' => $params['nonaicte_proposal_received']['proposal_id'], + ':pref_number' => 1 + ); + $preference1_q = db_query($query, $args); + $preference1_data = $preference1_q->fetchObject(); + $user_data = user_load($params['nonaicte_proposal_received']['user_id']); + $message['headers'] = $params['nonaicte_proposal_received']['headers']; + $message['subject'] = t('[!site_name] Your book proposal has been received', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, We have received your following book proposal: @@ -2164,10 +2324,10 @@ Email : ' . $user_data->mail . ' Mobile : ' . $proposal_data->mobile . ' Course : ' . $proposal_data->course . ' Department/Branch : ' . $proposal_data->branch . ' -University/Institute : ' . $proposal_data->university . ' +University/Institute : ' . $proposal_data->university . ' College Teacher / Professor : ' . $proposal_data->faculty . ' -Reviewer : ' . $proposal_data->reviewer . ' -Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' +Reviewer : ' . $proposal_data->reviewer . ' +Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' Your Non AICTE Book Preferences: @@ -2181,48 +2341,55 @@ Year of publication : ' . $preference1_data->year . ' Category : ' . $preference1_data->category_name . ' -Uploaded Sample Code : '.$samplecodefilename.' +Uploaded Sample Code : ' . $samplecodefilename . ' Your proposal is under review and you will soon receive an email from us regarding the same. Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); - break; -case 'nonaicte_proposal_to_pi': - /************ fetch proposal data ****************/ - - $query = db_select('textbook_companion_proposal'); - $query->fields('textbook_companion_proposal'); - $query->condition('id', $params['nonaicte_proposal_received']['proposal_id']); - $query->range(0, 1); - $result = $query->execute(); - $proposal_data=$result->fetchObject(); - - /************ fetch book preference data ****************/ - - $query = db_select('textbook_companion_preference'); - $query->fields('textbook_companion_preference'); - $query->condition('proposal_id', $params['nonaicte_proposal_received']['proposal_id']); - $query->condition('pref_number', 1); - $query->range(0, 1); - $result = $query->execute(); - $preference1_data=$result->fetchObject(); - - $user_data = user_load($params['nonaicte_proposal_received']['user_id']); - $message['headers'] = $params['nonaicte_proposal_received']['headers']; - $message['subject'] = t('[!site_name] New Non AICTE book suggestion has been received', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - /******************* Email Template for not aicte book suggestion **************************/ - $message['body'] = array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'nonaicte_proposal_to_pi': + /************ fetch proposal data ****************/ + $query = db_select('textbook_companion_proposal'); + $query->fields('textbook_companion_proposal'); + $query->condition('id', $params['nonaicte_proposal_received']['proposal_id']); + $query->range(0, 1); + $result = $query->execute(); + $proposal_data = $result->fetchObject(); + /************ fetch book preference data ****************/ + $query = db_select('textbook_companion_preference'); + $query->fields('textbook_companion_preference'); + $query->condition('proposal_id', $params['nonaicte_proposal_received']['proposal_id']); + $query->condition('pref_number', 1); + $query->range(0, 1); + $result = $query->execute(); + $preference1_data = $result->fetchObject(); + $user_data = user_load($params['nonaicte_proposal_received']['user_id']); + $message['headers'] = $params['nonaicte_proposal_received']['headers']; + $message['subject'] = t('[!site_name] New Non AICTE book suggestion has been received', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + /******************* Email Template for not aicte book suggestion **************************/ + $message['body'] = array( + 'body' => t(' Dear all, We have received following Non AICTE book suggestion: Full Name : ' . $proposal_data->full_name . ' -University/Institute :' . $proposal_data->university . ' +University/Institute :' . $proposal_data->university . ' -Reason(s): '. $proposal_data->reason . ' +Reason(s): ' . $proposal_data->reason . ' Your Non AICTE Book Preference : @@ -2234,51 +2401,56 @@ Publisher and Place : ' . $preference1_data->publisher . ' Edition : ' . $preference1_data->edition . ' Year of publication : ' . $preference1_data->year . ' -Reference :- '.$proposal_data->reference - -//Please click here to provide your feedback: http://scilab.in/comments -.' +Reference :- ' . $proposal_data->reference + //Please click here to provide your feedback: http://scilab.in/comments + . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); - break; - - case 'proposal_approved': - - $query = db_select('textbook_companion_proposal'); - $query->fields('textbook_companion_proposal'); - $query->condition('id', $params['proposal_approved']['proposal_id']); - $query->range(0, 1); - $result = $query->execute(); - $proposal_data=$result->fetchObject(); - - - $query = db_select('textbook_companion_preference'); - $query->fields('textbook_companion_preference'); - $query->condition('proposal_id', $params['proposal_approved']['proposal_id']); - $query->condition('approval_status', 1); - $query->range(0, 1); - $result = $query->execute(); - $approved_preference_data=$result->fetchObject(); - - $user_data = user_load($params['proposal_approved']['user_id']); - $message['headers'] = $params['proposal_approved']['headers']; - $message['subject'] = t('[!site_name] Your book proposal has been approved', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] =array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'proposal_approved': + $query = db_select('textbook_companion_proposal'); + $query->fields('textbook_companion_proposal'); + $query->condition('id', $params['proposal_approved']['proposal_id']); + $query->range(0, 1); + $result = $query->execute(); + $proposal_data = $result->fetchObject(); + $query = db_select('textbook_companion_preference'); + $query->fields('textbook_companion_preference'); + $query->condition('proposal_id', $params['proposal_approved']['proposal_id']); + $query->condition('approval_status', 1); + $query->range(0, 1); + $result = $query->execute(); + $approved_preference_data = $result->fetchObject(); + $user_data = user_load($params['proposal_approved']['user_id']); + $message['headers'] = $params['proposal_approved']['headers']; + $message['subject'] = t('[!site_name] Your book proposal has been approved', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, Your following book proposal has been approved: Full Name : ' . $proposal_data->full_name . ' Email : ' . $user_data->mail . ' -Mobile : ' . $proposal_data->mobile . ' +Mobile : ' . $proposal_data->mobile . ' Course : ' . $proposal_data->course . ' Department/Branch : ' . $proposal_data->branch . ' -University/Institute : ' . $proposal_data->university . ' +University/Institute : ' . $proposal_data->university . ' College Teacher / Professor : ' . $proposal_data->faculty . ' -Reviewer : ' . $proposal_data->reviewer . ' -Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' +Reviewer : ' . $proposal_data->reviewer . ' +Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' Title of the book : ' . $approved_preference_data->book . ' Author name : ' . $approved_preference_data->author . ' @@ -2295,52 +2467,56 @@ Please contact us by sending an e-mail to textbook@scilab.in in case you wish to Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name),array('language' => $language->language))); - break; - - case 'proposal_completed': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - - /*$proposal_q = db_query("SELECT * FROM {textbook_companion_proposal} WHERE id = %d LIMIT 1", $params['proposal_completed']['proposal_id']); - $proposal_data = db_fetch_object($proposal_q);*/ - - $query = db_select('textbook_companion_proposal'); - $query->fields('textbook_companion_proposal'); - $query->condition('id', $params['proposal_completed']['proposal_id']); - $query->range(0, 1); - $result = $query->execute(); - $proposal_data=$result->fetchObject(); - - /*$approved_preference_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND approval_status = 1 LIMIT 1", $params['proposal_completed']['proposal_id']); - $approved_preference_data = db_fetch_object($approved_preference_q);*/ - - $query = db_select('textbook_companion_preference'); - $query->fields('textbook_companion_preference'); - $query->condition('proposal_id', $params['proposal_completed']['proposal_id']); - $query->condition('approval_status', 1); - $query->range(0, 1); - $result = $query->execute(); - $approved_preference_data=$result->fetchObject(); - - - $user_data = user_load($params['proposal_completed']['user_id']); - $message['headers'] = $params['proposal_completed']['headers']; - $message['subject'] = t('[!site_name] Congratulations for completion of the book.', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] =array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'proposal_completed': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + /*$proposal_q = db_query("SELECT * FROM {textbook_companion_proposal} WHERE id = %d LIMIT 1", $params['proposal_completed']['proposal_id']); + $proposal_data = db_fetch_object($proposal_q);*/ + $query = db_select('textbook_companion_proposal'); + $query->fields('textbook_companion_proposal'); + $query->condition('id', $params['proposal_completed']['proposal_id']); + $query->range(0, 1); + $result = $query->execute(); + $proposal_data = $result->fetchObject(); + /*$approved_preference_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE proposal_id = %d AND approval_status = 1 LIMIT 1", $params['proposal_completed']['proposal_id']); + $approved_preference_data = db_fetch_object($approved_preference_q);*/ + $query = db_select('textbook_companion_preference'); + $query->fields('textbook_companion_preference'); + $query->condition('proposal_id', $params['proposal_completed']['proposal_id']); + $query->condition('approval_status', 1); + $query->range(0, 1); + $result = $query->execute(); + $approved_preference_data = $result->fetchObject(); + $user_data = user_load($params['proposal_completed']['user_id']); + $message['headers'] = $params['proposal_completed']['headers']; + $message['subject'] = t('[!site_name] Congratulations for completion of the book.', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, Following book has been completed sucessfully by you: Full Name : ' . $proposal_data->full_name . ' Email : ' . $user_data->mail . ' -Mobile : ' . $proposal_data->mobile . ' +Mobile : ' . $proposal_data->mobile . ' Course : ' . $proposal_data->course . ' Department/Branch : ' . $proposal_data->branch . ' -University/Institute : ' . $proposal_data->university . ' +University/Institute : ' . $proposal_data->university . ' College Teacher / Professor : ' . $proposal_data->faculty . ' -Reviewer : ' . $proposal_data->reviewer . ' -Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' +Reviewer : ' . $proposal_data->reviewer . ' +Expected date of completion : ' . date('d-m-Y', $proposal_data->completion_date) . ' Title of the book : ' . $approved_preference_data->book . ' Author name : ' . $approved_preference_data->author . ' @@ -2357,177 +2533,206 @@ Now you should be able to propose a new book... Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name),array('language' => $language->language))); - break; - - case 'example_uploaded': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - - /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d LIMIT 1", $params['example_uploaded']['example_id']); - $example_data = db_fetch_object($example_q);*/ - - $query = db_select('textbook_companion_example'); - $query->fields('textbook_companion_example'); - $query->condition('id', $params['example_uploaded']['example_id']); - $query->range(0, 1); - $result = $query->execute(); - $example_data=$result->fetchObject(); - - $query = db_select('textbook_companion_chapter'); - $query->fields('textbook_companion_chapter'); - $query->condition('id', $example_data->chapter_id); - $query->range(0, 1); - $result = $query->execute(); - $chapter_data=$result->fetchObject(); - - $query = db_select('textbook_companion_preference'); - $query->fields('textbook_companion_preference'); - $query->condition('id', $chapter_data->preference_id); - $query->range(0, 1); - $result = $query->execute(); - $preference_data=$result->fetchObject(); - - $user_data = user_load($params['example_uploaded']['user_id']); - $message['headers'] = $params['example_uploaded']['headers']; - $message['subject'] = t('[!site_name] You have uploaded example for Textbook Companion', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] =array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'example_uploaded': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d LIMIT 1", $params['example_uploaded']['example_id']); + $example_data = db_fetch_object($example_q);*/ + $query = db_select('textbook_companion_example'); + $query->fields('textbook_companion_example'); + $query->condition('id', $params['example_uploaded']['example_id']); + $query->range(0, 1); + $result = $query->execute(); + $example_data = $result->fetchObject(); + $query = db_select('textbook_companion_chapter'); + $query->fields('textbook_companion_chapter'); + $query->condition('id', $example_data->chapter_id); + $query->range(0, 1); + $result = $query->execute(); + $chapter_data = $result->fetchObject(); + $query = db_select('textbook_companion_preference'); + $query->fields('textbook_companion_preference'); + $query->condition('id', $chapter_data->preference_id); + $query->range(0, 1); + $result = $query->execute(); + $preference_data = $result->fetchObject(); + $user_data = user_load($params['example_uploaded']['user_id']); + $message['headers'] = $params['example_uploaded']['headers']; + $message['subject'] = t('[!site_name] You have uploaded example for Textbook Companion', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, You have uploaded the following solution : Title of the book : ' . $preference_data->book . ' -Title of the chapter : '. $chapter_data->name . ' +Title of the chapter : ' . $chapter_data->name . ' Example number : ' . $example_data->number . ' -Caption : ' . $example_data->caption . ' +Caption : ' . $example_data->caption . ' You shall be notified after the solution is reviewed Best Wishes, !site_name Team, -FOSSEE,IIT Bombay', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); - - break; - - case 'example_updated': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - - /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d LIMIT 1", $params['example_updated']['example_id']); - $example_data = db_fetch_object($example_q);*/ - - $query = db_select('textbook_companion_example'); - $query->fields('textbook_companion_example'); - $query->condition('id', $params['example_updated']['example_id']); - $query->range(0, 1); - $result = $query->execute(); - $example_data=$result->fetchObject(); - - $query = db_select('textbook_companion_chapter'); - $query->fields('textbook_companion_chapter'); - $query->condition('id', $example_data->chapter_id); - $query->range(0, 1); - $result = $query->execute(); - $chapter_data=$result->fetchObject(); - - $query = db_select('textbook_companion_preference'); - $query->fields('textbook_companion_preference'); - $query->condition('id', $chapter_data->preference_id); - $query->range(0, 1); - $result = $query->execute(); - $preference_data=$result->fetchObject(); - - $user_data = user_load($params['example_updated']['user_id']); - $message['headers'] = $params['example_updated']['headers']; - $message['subject'] = t('[!site_name] You have updated example for Textbook Companion', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] =array('body' => t(' +FOSSEE,IIT Bombay', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'example_updated': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d LIMIT 1", $params['example_updated']['example_id']); + $example_data = db_fetch_object($example_q);*/ + $query = db_select('textbook_companion_example'); + $query->fields('textbook_companion_example'); + $query->condition('id', $params['example_updated']['example_id']); + $query->range(0, 1); + $result = $query->execute(); + $example_data = $result->fetchObject(); + $query = db_select('textbook_companion_chapter'); + $query->fields('textbook_companion_chapter'); + $query->condition('id', $example_data->chapter_id); + $query->range(0, 1); + $result = $query->execute(); + $chapter_data = $result->fetchObject(); + $query = db_select('textbook_companion_preference'); + $query->fields('textbook_companion_preference'); + $query->condition('id', $chapter_data->preference_id); + $query->range(0, 1); + $result = $query->execute(); + $preference_data = $result->fetchObject(); + $user_data = user_load($params['example_updated']['user_id']); + $message['headers'] = $params['example_updated']['headers']; + $message['subject'] = t('[!site_name] You have updated example for Textbook Companion', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, You have updated the following example: Title of the book : ' . $preference_data->book . ' -Title of the chapter : '. $chapter_data->name . ' +Title of the chapter : ' . $chapter_data->name . ' Example number : ' . $example_data->number . ' -Caption : ' . $example_data->caption . ' +Caption : ' . $example_data->caption . ' The example is still under review. You will be notified when it has been approved. Best Wishes, !site_name Team, -FOSSEE,IIT Bombay', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); - - break; - - case 'example_updated_admin': - // bcc to textbook_companion_emails - $message['headers'] += $tbc_bcc_emails; - - /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d LIMIT 1", $params['example_updated_admin']['example_id']); - $example_data = db_fetch_object($example_q);*/ - - $query = db_select('textbook_companion_example'); - $query->fields('textbook_companion_example'); - $query->condition('id', $params['example_updated_admin']['example_id']); - $query->range(0, 1); - $result = $query->execute(); - $example_data=$result->fetchObject(); - - $user_data = user_load($params['example_updated_admin']['user_id']); - - $message['subject'] = t('[!site_name] Reviewer have updated example', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] = array('body' =>t(' +FOSSEE,IIT Bombay', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'example_updated_admin': + // bcc to textbook_companion_emails + $message['headers'] += $tbc_bcc_emails; + /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d LIMIT 1", $params['example_updated_admin']['example_id']); + $example_data = db_fetch_object($example_q);*/ + $query = db_select('textbook_companion_example'); + $query->fields('textbook_companion_example'); + $query->condition('id', $params['example_updated_admin']['example_id']); + $query->range(0, 1); + $result = $query->execute(); + $example_data = $result->fetchObject(); + $user_data = user_load($params['example_updated_admin']['user_id']); + $message['subject'] = t('[!site_name] Reviewer have updated example', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, Reviewer have updated the following example: Example number : ' . $example_data->number . ' -Caption : ' . $example_data->caption . ' +Caption : ' . $example_data->caption . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name),array('language' => $language->language))); - break; - - case 'example_approved': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - - /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d LIMIT 1", $params['example_approved']['example_id']); - $example_data = db_fetch_object($example_q);*/ - - $query = db_select('textbook_companion_example'); - $query->fields('textbook_companion_example'); - $query->condition('id', $params['example_approved']['example_id']); - $query->range(0, 1); - $result = $query->execute(); - $example_data=$result->fetchObject(); - - - $user_data = user_load($params['example_approved']['user_id']); - $message['headers'] = $params['example_approved']['headers']; - $message['subject'] = t('[!site_name] Your uploaded example has been approved', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] =array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'example_approved': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d LIMIT 1", $params['example_approved']['example_id']); + $example_data = db_fetch_object($example_q);*/ + $query = db_select('textbook_companion_example'); + $query->fields('textbook_companion_example'); + $query->condition('id', $params['example_approved']['example_id']); + $query->range(0, 1); + $result = $query->execute(); + $example_data = $result->fetchObject(); + $user_data = user_load($params['example_approved']['user_id']); + $message['headers'] = $params['example_approved']['headers']; + $message['subject'] = t('[!site_name] Your uploaded example has been approved', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, Your following example has been approved: Example number : ' . $example_data->number . ' -Caption : ' . $example_data->caption . ' +Caption : ' . $example_data->caption . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); - break; - - case 'example_disapproved': - // bcc to textbook_companion_emails - $message['headers'] += $tbc_bcc_emails; - $user_data = user_load($params['example_disapproved']['user_id']); - - $message['subject'] = t('[!site_name] Your uploaded example has been disapproved', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] = array('body' =>t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'example_disapproved': + // bcc to textbook_companion_emails + $message['headers'] += $tbc_bcc_emails; + $user_data = user_load($params['example_disapproved']['user_id']); + $message['subject'] = t('[!site_name] Your uploaded example has been disapproved', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, Your following example has been disapproved: @@ -2539,16 +2744,26 @@ Reason for dis-approval : ' . $params['example_disapproved']['message'] . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name),array('language' => $language->language))); - break; - - case 'example_deleted_user': - // bcc to textbook_companion_emails - // $message['headers'] += $tbc_bcc_emails; - $user_data = user_load($params['example_deleted_user']['user_id']); - $message['headers'] = $params['example_deleted_user']['headers']; - $message['subject'] = t('[!site_name] User has deleted pending example', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] =array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'example_deleted_user': + // bcc to textbook_companion_emails + // $message['headers'] += $tbc_bcc_emails; + $user_data = user_load($params['example_deleted_user']['user_id']); + $message['headers'] = $params['example_deleted_user']['headers']; + $message['subject'] = t('[!site_name] User has deleted pending example', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, Your following pending example has been deleted : @@ -2560,18 +2775,27 @@ Caption : ' . $params['example_deleted_user']['example_caption'] . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); - break; - - case 'dependency_uploaded': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - $user_data = user_load($params['dependency_uploaded']['user_id']); - $message['headers'] = $params['example_deleted_user']['headers']; - $dependency_files = implode(',', $params['dependency_uploaded']['dependency_names']); - - $message['subject'] = t('[!site_name] You have uploaded dependency file', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] = array('body' =>t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'dependency_uploaded': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + $user_data = user_load($params['dependency_uploaded']['user_id']); + $message['headers'] = $params['example_deleted_user']['headers']; + $dependency_files = implode(',', $params['dependency_uploaded']['dependency_names']); + $message['subject'] = t('[!site_name] You have uploaded dependency file', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, You have uploaded following dependency files : @@ -2579,18 +2803,26 @@ You have uploaded following dependency files : Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), -array('language' => $language->language))); - break; - - case 'feedback_received': - // bcc to textbook_companion_emails - // $message['headers'] += $tbc_bcc_emails; - $message['headers'] = $params['feedback_received']['headers']; - $user_data = user_load($params['feedback_received']['user_id']); - - $message['subject'] = t('[!site_name] We have received your feedback', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] = array('body' =>t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'feedback_received': + // bcc to textbook_companion_emails + // $message['headers'] += $tbc_bcc_emails; + $message['headers'] = $params['feedback_received']['headers']; + $user_data = user_load($params['feedback_received']['user_id']); + $message['subject'] = t('[!site_name] We have received your feedback', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, We have received your following feedback @@ -2604,17 +2836,26 @@ Your feedback : Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); - break; - - case 'internshipform': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - $message['headers'] = $params['internshipform']['headers']; - $user_data = user_load($params['internshipform']['user_id']); - - $message['subject'] = t('[!site_name] We have received your feedback', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] = array('body' =>t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'internshipform': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + $message['headers'] = $params['internshipform']['headers']; + $user_data = user_load($params['internshipform']['user_id']); + $message['subject'] = t('[!site_name] We have received your feedback', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, We have received your Internship Form Application for the book @@ -2625,18 +2866,26 @@ Example No.: ' . $params['internshipform']['example_no'] . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name),array('language' => $language->language))); - break; - -case 'copyrighttransferform': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - $message['headers'] = $params['copyrighttransferform']['headers']; - - $user_data = user_load($params['copyrighttransferform']['user_id']); - - $message['subject'] = t('[!site_name] We have received your feedback', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] =array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'copyrighttransferform': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + $message['headers'] = $params['copyrighttransferform']['headers']; + $user_data = user_load($params['copyrighttransferform']['user_id']); + $message['subject'] = t('[!site_name] We have received your feedback', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, We have received your Copyright Form Application for the book @@ -2647,17 +2896,26 @@ Example No.: ' . $params['copyrighttransferform']['example_no'] . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name),array('language' => $language->language))); - break; - -case 'undertakingform': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - $message['headers'] = $params['undertakingform']['headers']; - $user_data = user_load($params['undertakingform']['user_id']); - - $message['subject'] = t('[!site_name] We have received your feedback', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] =array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'undertakingform': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + $message['headers'] = $params['undertakingform']['headers']; + $user_data = user_load($params['undertakingform']['user_id']); + $message['subject'] = t('[!site_name] We have received your feedback', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, We have received your Undertaking Form Application for the book @@ -2668,18 +2926,26 @@ Example No.: ' . $params['undertakingform']['example_no'] . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); - break; - - -case 'remark': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - - $user_data = user_load($params['remark']['user_id']); - $message['headers'] = $params['remark']['headers']; - $message['subject'] = t('[!site_name] A remark has been given.Please check your contact detail form', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] =array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'remark': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + $user_data = user_load($params['remark']['user_id']); + $message['headers'] = $params['remark']['headers']; + $message['subject'] = t('[!site_name] A remark has been given.Please check your contact detail form', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, A Remark has been given.Please check your Contact Detail Form @@ -2690,18 +2956,26 @@ Example No.: ' . $params['internshipform']['example_no'] . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); - break; - - case 'cheque_sent': - // bcc to textbook_companion_emails - // $message['headers'] += $tbc_bcc_emails; - - $user_data = user_load($params['cheque_sent']['user_id']); - $message['headers'] = $params['cheque_sent']['headers']; - - $message['subject'] = t('[!site_name] We have received your feedback', array('!site_name' => variable_get('site_name', '')), array('language' => $language->language)); - $message['body'] =array('body' => t(' +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'cheque_sent': + // bcc to textbook_companion_emails + // $message['headers'] += $tbc_bcc_emails; + $user_data = user_load($params['cheque_sent']['user_id']); + $message['headers'] = $params['cheque_sent']['headers']; + $message['subject'] = t('[!site_name] We have received your feedback', array( + '!site_name' => variable_get('site_name', '') + ), array( + 'language' => $language->language + )); + $message['body'] = array( + 'body' => t(' Dear !user_name, We have Sent Cheque for the following book proposed @@ -2712,435 +2986,398 @@ Example No.: ' . $params['cheque_sent']['example_no'] . ' Best Wishes, -!site_name', array('!site_name' => variable_get('site_name', ''), '!user_name' => $user_data->name), array('language' => $language->language))); - break; - - - case 'standard': - // bcc to textbook_companion_emails - //$message['headers'] += $tbc_bcc_emails; - $message['headers'] = $params['standard']['headers']; - $message['subject'] = $params['standard']['subject']; - $message['body'] = $params['standard']['body']; - break; - } +!site_name', array( + '!site_name' => variable_get('site_name', ''), + '!user_name' => $user_data->name + ), array( + 'language' => $language->language + )) + ); + break; + case 'standard': + // bcc to textbook_companion_emails + //$message['headers'] += $tbc_bcc_emails; + $message['headers'] = $params['standard']['headers']; + $message['subject'] = $params['standard']['subject']; + $message['body'] = $params['standard']['body']; + break; + } //$key } - /* AJAX CALLS */ function textbook_companion_ajax() { - $query_type = arg(2); - if ($query_type == 'chapter_title') - { - $chapter_number = arg(3); - $preference_id = arg(4); - - /*$chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE number = %d AND preference_id = %d LIMIT 1", $chapter_number, $preference_id);*/ - - $query = db_select('textbook_companion_chapter'); - $query->fields('textbook_companion_chapter'); - $query->condition('number', $chapter_number); - $query->condition('preference_id', $preference_id); - $query->range(0, 1); - $chapter_q = $query->execute(); - - if ($chapter_data = $chapter_q->fetchObject()) - { - echo $chapter_data->name; - return; - } - } else if ($query_type == 'example_exists') { - $chapter_number = arg(3); - $preference_id = arg(4); - $example_number = arg(5); - - $chapter_id = 0; - - /* $chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE number = %d AND preference_id = %d LIMIT 1", $chapter_number, $preference_id);*/ - - $query = db_select('textbook_companion_chapter'); - $query->fields('textbook_companion_chapter'); - $query->condition('number',$chapter_number); - $query->condition('preference_id', $preference_id); - $query->range(0, 1); - $chapter_q = $query->execute(); - - if (!$chapter_data = $chapter_q->fetchObject()) - { - echo ''; - return; - } else { - $chapter_id = $chapter_data->id; - } - - /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE chapter_id = %d AND number = '%s' LIMIT 1", $chapter_id, $example_number);*/ - - $query = db_select('textbook_companion_example'); - $query->fields('textbook_companion_example'); - $query->condition('chapter_id', $chapter_id); - $query->condition('number', $example_number); - $query->range(0, 1); - $example_q = $query->execute(); - - if ($example_data =$example_q->fetchObject()) - { - if ($example_data->approval_status == 1) - echo 'Warning! Example already approved. You cannot upload the same example again.'; - else - echo 'Warning! Example already uploaded. Delete the example and reupload it.'; - return; - } - } - echo ''; + $query_type = arg(2); + if ($query_type == 'chapter_title') + { + $chapter_number = arg(3); + $preference_id = arg(4); + /*$chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE number = %d AND preference_id = %d LIMIT 1", $chapter_number, $preference_id);*/ + $query = db_select('textbook_companion_chapter'); + $query->fields('textbook_companion_chapter'); + $query->condition('number', $chapter_number); + $query->condition('preference_id', $preference_id); + $query->range(0, 1); + $chapter_q = $query->execute(); + if ($chapter_data = $chapter_q->fetchObject()) + { + echo $chapter_data->name; + return; + } //$chapter_data = $chapter_q->fetchObject() + } //$query_type == 'chapter_title' + else if ($query_type == 'example_exists') + { + $chapter_number = arg(3); + $preference_id = arg(4); + $example_number = arg(5); + $chapter_id = 0; + /* $chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE number = %d AND preference_id = %d LIMIT 1", $chapter_number, $preference_id);*/ + $query = db_select('textbook_companion_chapter'); + $query->fields('textbook_companion_chapter'); + $query->condition('number', $chapter_number); + $query->condition('preference_id', $preference_id); + $query->range(0, 1); + $chapter_q = $query->execute(); + if (!$chapter_data = $chapter_q->fetchObject()) + { + echo ''; + return; + } //!$chapter_data = $chapter_q->fetchObject() + else + { + $chapter_id = $chapter_data->id; + } + /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE chapter_id = %d AND number = '%s' LIMIT 1", $chapter_id, $example_number);*/ + $query = db_select('textbook_companion_example'); + $query->fields('textbook_companion_example'); + $query->condition('chapter_id', $chapter_id); + $query->condition('number', $example_number); + $query->range(0, 1); + $example_q = $query->execute(); + if ($example_data = $example_q->fetchObject()) + { + if ($example_data->approval_status == 1) + echo 'Warning! Example already approved. You cannot upload the same example again.'; + else + echo 'Warning! Example already uploaded. Delete the example and reupload it.'; + return; + } //$example_data = $example_q->fetchObject() + } //$query_type == 'example_exists' + echo ''; } - /*************************** VALIDATION FUNCTIONS *****************************/ -function textbook_companion_check_valid_filename($file_name) { - if (!preg_match('/^[0-9a-zA-Z\_\.]+$/', $file_name)) - return FALSE; - else - if (substr_count($file_name, ".") > 1) - return FALSE; - else - return TRUE; +function textbook_companion_check_valid_filename($file_name) +{ + if (!preg_match('/^[0-9a-zA-Z\_\.]+$/', $file_name)) + return FALSE; + else if (substr_count($file_name, ".") > 1) + return FALSE; + else + return TRUE; } - -function check_name($name = '') { - if (!preg_match('/^[0-9a-zA-Z\ ]+$/', $name)) - return FALSE; - else - return TRUE; +function check_name($name = '') +{ + if (!preg_match('/^[0-9a-zA-Z\ ]+$/', $name)) + return FALSE; + else + return TRUE; } - -function check_chapter_number($name = '') { - if (!preg_match('/^([0-9])+(\.([0-9a-zA-Z])+)+$/', $name)) - return FALSE; - else - return TRUE; +function check_chapter_number($name = '') +{ + if (!preg_match('/^([0-9])+(\.([0-9a-zA-Z])+)+$/', $name)) + return FALSE; + else + return TRUE; } - -function textbook_companion_path() { - return $_SERVER['DOCUMENT_ROOT'] . base_path() . 'uploads/'; +function textbook_companion_path() +{ + return $_SERVER['DOCUMENT_ROOT'] . base_path() . 'uploads/'; } - -function textbook_companion_samplecode_path() { - return $_SERVER['DOCUMENT_ROOT'] . base_path() . 'tbc_sample_code/'; +function textbook_companion_samplecode_path() +{ + return $_SERVER['DOCUMENT_ROOT'] . base_path() . 'tbc_sample_code/'; } /****************************** DELETION FUNCTIONS ****************************/ - function delete_example($example_id) { - global $user; - $root_path = textbook_companion_path(); - $status = TRUE; - - /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d", $example_id); - $example_data = db_fetch_object($example_q);*/ - + global $user; + $root_path = textbook_companion_path(); + $status = TRUE; + /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE id = %d", $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); $example_q = $query->execute(); - $example_data =$example_q->fetchObject(); - - if (!$example_data) - { - drupal_set_message(t('Invalid example.'), 'error'); - return FALSE; - } - - /*$chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE id = %d", $example_data->chapter_id); - $chapter_data = db_fetch_object($chapter_q);*/ - + $example_data = $example_q->fetchObject(); + if (!$example_data) + { + drupal_set_message(t('Invalid example.'), 'error'); + return FALSE; + } //!$example_data + /*$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); $chapter_q = $query->execute(); - $chapter_data=$chapter_q->fetchObject(); - - - if (!$chapter_data) - { - drupal_set_message(t('Invalid example chapter.'), 'error'); - return FALSE; - } - - /* deleting example files */ - - /*$examples_files_q = db_query("SELECT * FROM {textbook_companion_example_files} WHERE example_id = %d", $example_id);*/ - + $chapter_data = $chapter_q->fetchObject(); + if (!$chapter_data) + { + drupal_set_message(t('Invalid example chapter.'), 'error'); + return FALSE; + } //!$chapter_data + /* deleting example files */ + /*$examples_files_q = db_query("SELECT * FROM {textbook_companion_example_files} WHERE example_id = %d", $example_id);*/ $query = db_select('textbook_companion_example_files'); $query->fields('textbook_companion_example_files'); $query->condition('example_id', $example_id); $examples_files_q = $query->execute(); - - while ($examples_files_data =$examples_files_q->fetchObject()) - { - if (!file_exists($root_path . $examples_files_data->filepath)) - { - $status = FALSE; - drupal_set_message(t('Error deleting !file. File does not exists.', array('!file' => $examples_files_data->filepath)), 'error'); - continue; - } - - /* removing example file */ - if (!drupal_unlink($root_path . $examples_files_data->filepath)) - { - $status = FALSE; - drupal_set_message(t('Error deleting !file', array('!file' => $examples_files_data->filepath)), 'error'); - - /* sending email to admins */ - $email_to = variable_get('textbook_companion_emails', ''); - $params['standard']['subject'] = "[ERROR] Error deleting example file"; - $params['standard']['body'] = array(0 =>"Error deleting example files by " . $user->uid . " at " . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . " : + while ($examples_files_data = $examples_files_q->fetchObject()) + { + if (!file_exists($root_path . $examples_files_data->filepath)) + { + $status = FALSE; + drupal_set_message(t('Error deleting !file. File does not exists.', array( + '!file' => $examples_files_data->filepath + )), 'error'); + continue; + } //!file_exists($root_path . $examples_files_data->filepath) + /* removing example file */ + if (!drupal_unlink($root_path . $examples_files_data->filepath)) + { + $status = FALSE; + drupal_set_message(t('Error deleting !file', array( + '!file' => $examples_files_data->filepath + )), 'error'); + /* sending email to admins */ + $email_to = variable_get('textbook_companion_emails', ''); + $params['standard']['subject'] = "[ERROR] Error deleting example file"; + $params['standard']['body'] = array( + 0 => "Error deleting example files by " . $user->uid . " at " . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . " : example id : " . $example_id . " - file id : " . $examples_files_data->id . " - file path : " . $examples_files_data->filepath); - if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $params, variable_get('textbook_companion_from_email', NULL), TRUE)) - drupal_set_message('Error sending email message.', 'error'); - } else { - /* deleting example files database entries */ - - /*db_query("DELETE FROM {textbook_companion_example_files} WHERE id = %d", $examples_files_data->id);*/ - $query = db_delete('textbook_companion_example_files'); - $query->condition('id', $examples_files_data->id); - $num_deleted = $query->execute(); - - - } - } - - if (!$status) - return FALSE; - - /* removing example folder */ - $ex_path = $chapter_data->preference_id . '/' . 'CH' . $chapter_data->number . '/' . 'EX' . $example_data->number; - $dir_path = $root_path . $ex_path; - - - if (is_dir($dir_path)) - { - if (!drupal_rmdir($dir_path)) - { - - - drupal_set_message(t('Error deleting folder !folder', array('!folder' => $dir_path)), 'error'); - - /* sending email to admins */ - $email_to = variable_get('textbook_companion_emails', ''); - $params['standard']['subject'] = "[ERROR] Error deleting folder"; - $params['standard']['body'] = array(0 => "Error deleting folder " . $dir_path . " by " . $user->uid . " at " . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']); - if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $params, variable_get('textbook_companion_from_email', NULL), TRUE)) - drupal_set_message('Error sending email message.', 'error'); - return FALSE; - - - } - - } else { - - - drupal_set_message(t('Cannot delete example folder. !folder does not exists.', array('!folder' => $dir_path)), 'error'); - return FALSE; - } - - /* deleting example dependency and exmaple database entries */ - -/*db_query("DELETE FROM {textbook_companion_example_dependency} WHERE example_id = %d", $example_id);*/ + file id : " . $examples_files_data->id . " + file path : " . $examples_files_data->filepath + ); + if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $params, variable_get('textbook_companion_from_email', NULL), TRUE)) + drupal_set_message('Error sending email message.', 'error'); + } //!drupal_unlink($root_path . $examples_files_data->filepath) + else + { + /* deleting example files database entries */ + /*db_query("DELETE FROM {textbook_companion_example_files} WHERE id = %d", $examples_files_data->id);*/ + $query = db_delete('textbook_companion_example_files'); + $query->condition('id', $examples_files_data->id); + $num_deleted = $query->execute(); + } + } //$examples_files_data = $examples_files_q->fetchObject() + if (!$status) + return FALSE; + /* removing example folder */ + $ex_path = $chapter_data->preference_id . '/' . 'CH' . $chapter_data->number . '/' . 'EX' . $example_data->number; + $dir_path = $root_path . $ex_path; + if (is_dir($dir_path)) + { + if (!drupal_rmdir($dir_path)) + { + drupal_set_message(t('Error deleting folder !folder', array( + '!folder' => $dir_path + )), 'error'); + /* sending email to admins */ + $email_to = variable_get('textbook_companion_emails', ''); + $params['standard']['subject'] = "[ERROR] Error deleting folder"; + $params['standard']['body'] = array( + 0 => "Error deleting folder " . $dir_path . " by " . $user->uid . " at " . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] + ); + if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $params, variable_get('textbook_companion_from_email', NULL), TRUE)) + drupal_set_message('Error sending email message.', 'error'); + return FALSE; + } //!drupal_rmdir($dir_path) + } //is_dir($dir_path) + else + { + drupal_set_message(t('Cannot delete example folder. !folder does not exists.', array( + '!folder' => $dir_path + )), 'error'); + return FALSE; + } + /* deleting example dependency and exmaple database entries */ + /*db_query("DELETE FROM {textbook_companion_example_dependency} WHERE example_id = %d", $example_id);*/ $query = db_delete('textbook_companion_example_dependency'); $query->condition('example_id', $example_id); $num_deleted = $query->execute(); - - /*db_query("DELETE FROM {textbook_companion_example} WHERE id = %d", $example_id);*/ + /*db_query("DELETE FROM {textbook_companion_example} WHERE id = %d", $example_id);*/ $query = db_delete('textbook_companion_example'); $query->condition('id', $example_id); $num_deleted = $query->execute(); - - return $status; + return $status; } - -function delete_chapter($chapter_id) +function delete_chapter($chapter_id) { - $status = TRUE; - $root_path = textbook_companion_path(); - - /*$chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE id = %d", $chapter_id); - $chapter_data = db_fetch_object($chapter_q);*/ - + $status = TRUE; + $root_path = textbook_companion_path(); + /*$chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE id = %d", $chapter_id); + $chapter_data = db_fetch_object($chapter_q);*/ $query = db_select('textbook_companion_chapter'); $query->fields('textbook_companion_chapter'); $query->condition('id', $chapter_id); $chapter_q = $query->execute(); - $chapter_data =$chapter_q->fetchObject(); - - if (!$chapter_data) - { - drupal_set_message('Invalid chapter.', 'error'); - return FALSE; - } - - /* deleting examples */ - - /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE chapter_id = %d", $chapter_id);*/ - + $chapter_data = $chapter_q->fetchObject(); + if (!$chapter_data) + { + drupal_set_message('Invalid chapter.', 'error'); + return FALSE; + } //!$chapter_data + /* deleting examples */ + /*$example_q = db_query("SELECT * FROM {textbook_companion_example} WHERE chapter_id = %d", $chapter_id);*/ $query = db_select('textbook_companion_example'); $query->fields('textbook_companion_example'); $query->condition('chapter_id', $chapter_id); $example_q = $query->execute(); - - while ($example_data = $example_q->fetchObject()) - { - if (!delete_example($example_data->id)) - $status = FALSE; - } - - if ($status) - { - $dir_path = $root_path . $chapter_data->preference_id . '/CH' . $chapter_data->number; - - if (is_dir($dir_path)) - { - $res = rmdir($dir_path); - if (!$res) - { - drupal_set_message(t('Error deleting chapter folder !folder', array('!folder' => $dir_path)), 'error'); - - /* sending email to admins */ - $email_to = variable_get('textbook_companion_emails', ''); - $params['standard']['subject'] = "[ERROR] Error deleting folder"; - $params['standard']['body'] = "Error deleting folder " . $dir_path; - if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $params, variable_get('textbook_companion_from_email', NULL), TRUE)) - drupal_set_message('Error sending email message.', 'error'); - return FALSE; - } else { - /* deleting chapter details from database */ - - /*db_query("DELETE FROM {textbook_companion_chapter} WHERE id = %d", $chapter_id);*/ - $query = db_delete('textbook_companion_chapter'); - $query->condition('id', $chapter_id); - $num_deleted = $query->execute(); - - return TRUE; - } - } else { - drupal_set_message(t('Cannot delete chapter folder. !folder does not exists.', array('!folder' => $dir_path)), 'error'); - return FALSE; - } - } - return FALSE; + while ($example_data = $example_q->fetchObject()) + { + if (!delete_example($example_data->id)) + $status = FALSE; + } //$example_data = $example_q->fetchObject() + if ($status) + { + $dir_path = $root_path . $chapter_data->preference_id . '/CH' . $chapter_data->number; + if (is_dir($dir_path)) + { + $res = rmdir($dir_path); + if (!$res) + { + drupal_set_message(t('Error deleting chapter folder !folder', array( + '!folder' => $dir_path + )), 'error'); + /* sending email to admins */ + $email_to = variable_get('textbook_companion_emails', ''); + $params['standard']['subject'] = "[ERROR] Error deleting folder"; + $params['standard']['body'] = "Error deleting folder " . $dir_path; + if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $params, variable_get('textbook_companion_from_email', NULL), TRUE)) + drupal_set_message('Error sending email message.', 'error'); + return FALSE; + } //!$res + else + { + /* deleting chapter details from database */ + /*db_query("DELETE FROM {textbook_companion_chapter} WHERE id = %d", $chapter_id);*/ + $query = db_delete('textbook_companion_chapter'); + $query->condition('id', $chapter_id); + $num_deleted = $query->execute(); + return TRUE; + } + } //is_dir($dir_path) + else + { + drupal_set_message(t('Cannot delete chapter folder. !folder does not exists.', array( + '!folder' => $dir_path + )), 'error'); + return FALSE; + } + } //$status + return FALSE; } - function delete_book($book_id) { - $status = TRUE; - $root_path = textbook_companion_path(); - - /*$preference_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE id = %d", $book_id); - $preference_data = db_fetch_object($preference_q);*/ + $status = TRUE; + $root_path = textbook_companion_path(); + /*$preference_q = db_query("SELECT * FROM {textbook_companion_preference} WHERE id = %d", $book_id); + $preference_data = db_fetch_object($preference_q);*/ $query = db_select('textbook_companion_preference'); $query->fields('textbook_companion_preference'); $query->condition('id', $book_id); $preference_q = $query->execute(); - $preference_data =$preference_q->fetchObject(); - - if (!$preference_data) - { - drupal_set_message('Invalid book.', 'error'); - return FALSE; - } - - /* delete chapters */ - - /*$chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE preference_id = %d", $preference_data->id);*/ + $preference_data = $preference_q->fetchObject(); + if (!$preference_data) + { + drupal_set_message('Invalid book.', 'error'); + return FALSE; + } //!$preference_data + /* delete chapters */ + /*$chapter_q = db_query("SELECT * FROM {textbook_companion_chapter} WHERE preference_id = %d", $preference_data->id);*/ $query = db_select('textbook_companion_chapter'); $query->fields('textbook_companion_chapter'); $query->condition('preference_id', $preference_data->id); $chapter_q = $query->execute(); - - while ($chapter_data = $chapter_q->fetchObject()) - { - if (!delete_chapter($chapter_data->id)) - { - $status = FALSE; - } - } - return $status; + while ($chapter_data = $chapter_q->fetchObject()) + { + if (!delete_chapter($chapter_data->id)) + { + $status = FALSE; + } //!delete_chapter($chapter_data->id) + } //$chapter_data = $chapter_q->fetchObject() + return $status; } - function delete_file($file_id) { - $root_path = textbook_companion_path(); - - /*$file_q = db_query("SELECT * FROM {textbook_companion_example_files} WHERE id = %d LIMIT 1", $file_id);*/ - + $root_path = textbook_companion_path(); + /*$file_q = db_query("SELECT * FROM {textbook_companion_example_files} WHERE id = %d LIMIT 1", $file_id);*/ $query = db_select('textbook_companion_example_files'); $query->fields('textbook_companion_example_files'); $query->condition('id', $file_id); $query->range(0, 1); $file_q = $query->execute(); - - $file_data = $file_q->fetchObject(); - if (!$file_data) - { - drupal_set_message('Invalid file specified.', 'error'); - return FALSE; - } - - if (!file_exists($root_path . $file_data->filepath)) - { - drupal_set_message(t('Error deleting !file. File does not exists.', array('!file' => $file_data->filepath)), 'error'); - return FALSE; - } - - /* removing example file */ - if (!unlink($root_path . $file_data->filepath)) - { - drupal_set_message(t('Error deleting !file', array('!file' => $file_data->filepath)), 'error'); - - /* sending email to admins */ - $email_to = variable_get('textbook_companion_emails', ''); - $params['standard']['subject'] = "[ERROR] Error deleting file"; - $params['standard']['body'] = "Error deleting file by " . $user->uid . " at " . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . " : - file id : " . $file_id . " + $file_data = $file_q->fetchObject(); + if (!$file_data) + { + drupal_set_message('Invalid file specified.', 'error'); + return FALSE; + } //!$file_data + if (!file_exists($root_path . $file_data->filepath)) + { + drupal_set_message(t('Error deleting !file. File does not exists.', array( + '!file' => $file_data->filepath + )), 'error'); + return FALSE; + } //!file_exists($root_path . $file_data->filepath) + /* removing example file */ + if (!unlink($root_path . $file_data->filepath)) + { + drupal_set_message(t('Error deleting !file', array( + '!file' => $file_data->filepath + )), 'error'); + /* sending email to admins */ + $email_to = variable_get('textbook_companion_emails', ''); + $params['standard']['subject'] = "[ERROR] Error deleting file"; + $params['standard']['body'] = "Error deleting file by " . $user->uid . " at " . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . " : + file id : " . $file_id . " file path : " . $file_data->filepath; - if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $params, variable_get('textbook_companion_from_email', NULL), TRUE)) - drupal_set_message('Error sending email message.', 'error'); - return FALSE; - } else { - /* deleting example files database entries */ - - /*db_query("DELETE FROM {textbook_companion_example_files} WHERE id = %d", $file_id);*/ - $query = db_delete('textbook_companion_example_files'); - $query->condition('id', $file_id); - $num_deleted = $query->execute(); - - return TRUE; - } + if (!drupal_mail('textbook_companion', 'standard', $email_to, language_default(), $params, variable_get('textbook_companion_from_email', NULL), TRUE)) + drupal_set_message('Error sending email message.', 'error'); + return FALSE; + } //!unlink($root_path . $file_data->filepath) + else + { + /* deleting example files database entries */ + /*db_query("DELETE FROM {textbook_companion_example_files} WHERE id = %d", $file_id);*/ + $query = db_delete('textbook_companion_example_files'); + $query->condition('id', $file_id); + $num_deleted = $query->execute(); + return TRUE; + } } - //Non aicte book proposal form - -function book_proposal_nonaicte_form($form,&$form_state) +function book_proposal_nonaicte_form($form, &$form_state) { - - global $user; - - $form = array(); - $form['imp_notice'] = array( - '#type' => 'item', - '#markup' => '<font color="red"><b>Please fill up this form carefully as the details entered here will be exactly written in the Textbook Companion and also follow the additional guidelines.</b></font>', - ); - $form['guidelines'] = array( - '#type' => 'fieldset', - '#title' => t('Guidelines'), - '#attributes' => array('style'=>'font-weight: bold'), - '#collapsible' => TRUE, - '#collapsed' => FALSE, - ); - $form['guidelines']['book'] = array( - '#type' => 'item', - '#required' => TRUE, - '#markup' => '<ul style="list-style-type:disc;font-weight: normal"> + global $user; + $form = array(); + $form['imp_notice'] = array( + '#type' => 'item', + '#markup' => '<font color="red"><b>Please fill up this form carefully as the details entered here will be exactly written in the Textbook Companion and also follow the additional guidelines.</b></font>' + ); + $form['guidelines'] = array( + '#type' => 'fieldset', + '#title' => t('Guidelines'), + '#attributes' => array( + 'style' => 'font-weight: bold' + ), + '#collapsible' => TRUE, + '#collapsed' => FALSE + ); + $form['guidelines']['book'] = array( + '#type' => 'item', + '#required' => TRUE, + '#markup' => '<ul style="list-style-type:disc;font-weight: normal"> <li>All the fields are compulsory</li> <li>Proof (example: syllabus) to the usage/ popularity of the textbook must be provided in the references box below</li> <li>Please make sure that the book proposed by you has <b>at least 80</b> examples which include numerical computations and which can be coded in Scilab</li> @@ -3149,687 +3386,685 @@ function book_proposal_nonaicte_form($form,&$form_state) or a <a href="Books_Progress" target="_blank">book in progress</a> </li> <li>You will be intimated about the approval or rejection of your suggestion via e-mail</li> -</ul> ', - - ); - - - $form['full_name'] = array( - '#type' => 'textfield', - '#title' => t('Full Name'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - ); - $form['email_id'] = array( - '#type' => 'textfield', - '#title' => t('Email'), - '#size' => 30, - '#value' => $user->mail, - '#disabled' => TRUE, - ); - $form['mobile'] = array( - '#type' => 'textfield', - '#title' => t('Mobile No.'), - '#size' => 30, - '#maxlength' => 15, - '#required' => TRUE, - ); - $form['gender'] = array( - '#type' => 'radios', - '#title' => t('Gender'), - '#options' => array('M' => 'Male', 'F' => 'Female'), - '#required' => TRUE, - ); - - /*$form['how_project'] = array( - '#type' => 'select', - '#title' => t('How did you come to know about this project'), - '#options' => array('Scilab Website' => 'Scilab Website', - 'Friend' => 'Friend', - 'Professor/Teacher' => 'Professor/Teacher', - 'Mailing List' => 'Mailing List', - 'Poster in my/other college' => 'Poster in my/other college', - 'Others' => 'Others'), - '#required' => TRUE, - );*/ - - $form['course'] = array( - '#type' => 'textfield', - '#title' => t('Course'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - ); - $form['branch'] = array( - '#type' => 'select', - '#title' => t('Department/Branch'), - '#options' => _tbc_list_of_departments(), - '#required' => TRUE, - ); - $form['university'] = array( - '#type' => 'textfield', - '#title' => t('University/Institute'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - ); - $form['country'] = array( - '#type' => 'select', - '#title' => t('Country'), - '#options' => array( - 'India' => 'India', - 'Others' => 'Others', - ), - '#required' => TRUE, - '#tree' => TRUE, - '#validated' => TRUE, - ); - $form['other_country'] = array( - '#type' => 'textfield', - '#title' => t('Other than India'), - '#size' => 100, - '#attributes' =>array('placeholder' => t('Enter your country name')), - '#states' => array( - 'visible' => array( - ':input[name="country"]' => array('value' => 'Others'), - ), - ), - ); - $form['other_state'] = array( - '#type' => 'textfield', - '#title' => t('State other than India'), - '#size' => 100, - '#attributes' =>array('placeholder' => t('Enter your state/region name')), - '#states' => array( - 'visible' => array( - ':input[name="country"]' => array('value' => 'Others'), - ), - ), - ); - $form['other_city'] = array( - '#type' => 'textfield', - '#title' => t('City other than India'), - '#size' => 100, - '#attributes' =>array('placeholder' => t('Enter your city name')), - '#states' => array( - 'visible' => array( - ':input[name="country"]' => array('value' => 'Others'), - ), - ), - ); - $form['all_state'] = array( - '#type' => 'select', - '#title' => t('State'), - '#options' => _tbc_list_of_states(), - '#validated' => TRUE, - '#states' => array( - 'visible' => array( - ':input[name="country"]' => array('value' => 'India'), - ), - ), - ); - $form['city'] = array( - '#type' => 'select', - '#title' => t('City'), - '#options' => _tbc_list_of_cities(), - '#states' => array( - 'visible' => array( - ':input[name="country"]' => array('value' => 'India'), - ), - ), - ); - $form['pincode'] = array( - '#type' => 'textfield', - '#title' => t('Pincode'), - '#size' => 30, - '#maxlength' => 6, - '#required' => False, - '#attributes' =>array('placeholder' =>'Enter pincode....'), - ); - $form['faculty'] = array( - '#type' => 'hidden', - '#value' => 'None', - '#title' => t('College Teacher/Professor'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - ); - $form['faculty_email'] = array( - '#type' => 'hidden', - '#value' => 'None', - '#title' => t('Teacher/Professor Email Id'), - '#default_value' => '@email.com', - '#size' => 30, - '#maxlength' => 50, - ); - $form['reviewer'] = array( - '#type' => 'hidden', - '#value' => 'None', - '#title' => t('Reviewer'), - '#size' => 30, - '#maxlength' => 50, - ); - - $form['version'] = array( - '#type' => 'textfield', - '#title' => t('Scilab Version'), - '#description' => t('Input version format should be like 5.4 or 5.4.1'), - '#size' => 10, - '#required' => TRUE, - '#maxlength' => 20, - ); - $form['completion_date'] = array( - '#type' => 'textfield', - '#title' => t('Expected Date of Completion'), - '#description' => t('Input date format should be DD-MM-YYYY. Eg: 23-03-2011'), - '#size' => 10, - '#maxlength' => 10, - '#required' => TRUE, - ); - $form['operating_system'] = array( - '#type' => 'textfield', - '#title' => t('Operating System'), - '#required' => TRUE, - '#size' => 30, - '#maxlength' => 50, - ); - - $reason=array( - 'Used in more than one University' =>t('Used in more than one University'), - 'The book has multiple editions' => t('The book has multiple editions'), - 'Extremely useful' => t('Extremely useful'), - 'Other reason' => t('Any other reason state below') - ); - $form['reason'] = array( - '#type' => 'checkboxes', - '#title' => t('Reasons'), - '#options' => $reason, - '#required' => TRUE, - ); - $form['other_reason'] = array( - '#type' => 'textarea', - '#size' => 300, - '#maxlength' => 300, - '#states' => array('visible' => array(':input[name="reason[Other reason]"]' => array('checked' => TRUE),),), - //'#required' => FALSE, - ); - $form['proposal_type'] = array( - '#type' => 'hidden', - '#default_value' => '1', - '#required' => FALSE, - ); - $form['reference'] = array( - '#type' => 'textarea', - '#title' => t('Reference'), - '#required' => TRUE, - '#size' => 1000, - '#attributes' =>array('placeholder' =>'Links of the syllabus must be provided....'), - ); - $form['preference1'] = array( - '#type' => 'fieldset', - '#title' => t('Book Preference'), - '#collapsible' => TRUE, - '#collapsed' => FALSE, - ); - $form['preference1']['book1'] = array( - '#type' => 'textfield', - '#title' => t('Title of the book'), - '#size' => 30, - '#maxlength' => 100, - '#required' => TRUE, - '#default_value' => $row1->book, - '#disabled' => ($row1->book?TRUE:FALSE), - ); - $form['preference1']['author1'] = array( - '#type' => 'textfield', - '#title' => t('Author Name'), - '#size' => 30, - '#maxlength' => 100, - '#required' => TRUE, - '#default_value' => $row1->author, - '#disabled' => ($row1->author?TRUE:FALSE), - ); - $form['preference1']['isbn1'] = array( - '#type' => 'textfield', - '#title' => t('ISBN No'), - '#size' => 30, - '#maxlength' => 25, - '#required' => TRUE, - '#default_value' => $row1->isbn, - '#disabled' => ($row1->isbn?TRUE:FALSE), - ); - $form['preference1']['publisher1'] = array( - '#type' => 'textfield', - '#title' => t('Publisher & Place'), - '#size' => 30, - '#maxlength' => 50, - '#required' => TRUE, - '#default_value' => $row1->publisher, - ); - $form['preference1']['edition1'] = array( - '#type' => 'textfield', - '#title' => t('Edition'), - '#size' => 4, - '#maxlength' => 2, - '#required' => TRUE, - '#default_value' => $row1->edition, - ); - $form['preference1']['year1'] = array( - '#type' => 'textfield', - '#title' => t('Year of pulication'), - '#size' => 4, - '#maxlength' => 4, - '#required' => TRUE, - '#default_value' => $row1->year, - ); - $form['preference1']['book_category_1'] = array( - '#type' => 'select', - '#title' => t('Category'), - '#options' => _tbc_list_of_category(), - '#required' => TRUE, - ); - $form['samplefile'] = array( - '#type' => 'fieldset', - '#title' => t('<span class="form-required form-item" title="This field is required.">Sample Source Files *</span>'), - '#collapsible' => FALSE, - '#collapsed' => FALSE, - ); - $form['samplefile']['samplefile1'] = array( - '#type' => 'file', - '#title' => t('Upload sample source file'), - '#size' => 48, - '#description' => t('Separate filenames with underscore. No spaces or any special characters allowed in filename.') . '<br />' . - t('<span style="color:red;">Allowed file extensions : ') . variable_get('textbook_companion_sample_source_file_extensions', '').'</span>', - - ); - - $form['termconditions'] = array( - '#type' => 'checkboxes', - '#title' => t('Terms And Conditions'), - '#options' => array( - 'status' => t('<a href="term-and-conditions" target="_blank">I agree to the Terms and Conditions</a>'),), - '#required' => TRUE, - ); - $form['submit'] = array( - '#type' => 'submit', - '#value' => t('Submit') - ); - - return $form; +</ul> ' + ); + $form['full_name'] = array( + '#type' => 'textfield', + '#title' => t('Full Name'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE + ); + $form['email_id'] = array( + '#type' => 'textfield', + '#title' => t('Email'), + '#size' => 30, + '#value' => $user->mail, + '#disabled' => TRUE + ); + $form['mobile'] = array( + '#type' => 'textfield', + '#title' => t('Mobile No.'), + '#size' => 30, + '#maxlength' => 15, + '#required' => TRUE + ); + $form['gender'] = array( + '#type' => 'radios', + '#title' => t('Gender'), + '#options' => array( + 'M' => 'Male', + 'F' => 'Female' + ), + '#required' => TRUE + ); + /*$form['how_project'] = array( + '#type' => 'select', + '#title' => t('How did you come to know about this project'), + '#options' => array('Scilab Website' => 'Scilab Website', + 'Friend' => 'Friend', + 'Professor/Teacher' => 'Professor/Teacher', + 'Mailing List' => 'Mailing List', + 'Poster in my/other college' => 'Poster in my/other college', + 'Others' => 'Others'), + '#required' => TRUE, + );*/ + $form['course'] = array( + '#type' => 'textfield', + '#title' => t('Course'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE + ); + $form['branch'] = array( + '#type' => 'select', + '#title' => t('Department/Branch'), + '#options' => _tbc_list_of_departments(), + '#required' => TRUE + ); + $form['university'] = array( + '#type' => 'textfield', + '#title' => t('University/Institute'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE + ); + $form['country'] = array( + '#type' => 'select', + '#title' => t('Country'), + '#options' => array( + 'India' => 'India', + 'Others' => 'Others' + ), + '#required' => TRUE, + '#tree' => TRUE, + '#validated' => TRUE + ); + $form['other_country'] = array( + '#type' => 'textfield', + '#title' => t('Other than India'), + '#size' => 100, + '#attributes' => array( + 'placeholder' => t('Enter your country name') + ), + '#states' => array( + 'visible' => array( + ':input[name="country"]' => array( + 'value' => 'Others' + ) + ) + ) + ); + $form['other_state'] = array( + '#type' => 'textfield', + '#title' => t('State other than India'), + '#size' => 100, + '#attributes' => array( + 'placeholder' => t('Enter your state/region name') + ), + '#states' => array( + 'visible' => array( + ':input[name="country"]' => array( + 'value' => 'Others' + ) + ) + ) + ); + $form['other_city'] = array( + '#type' => 'textfield', + '#title' => t('City other than India'), + '#size' => 100, + '#attributes' => array( + 'placeholder' => t('Enter your city name') + ), + '#states' => array( + 'visible' => array( + ':input[name="country"]' => array( + 'value' => 'Others' + ) + ) + ) + ); + $form['all_state'] = array( + '#type' => 'select', + '#title' => t('State'), + '#options' => _tbc_list_of_states(), + '#validated' => TRUE, + '#states' => array( + 'visible' => array( + ':input[name="country"]' => array( + 'value' => 'India' + ) + ) + ) + ); + $form['city'] = array( + '#type' => 'select', + '#title' => t('City'), + '#options' => _tbc_list_of_cities(), + '#states' => array( + 'visible' => array( + ':input[name="country"]' => array( + 'value' => 'India' + ) + ) + ) + ); + $form['pincode'] = array( + '#type' => 'textfield', + '#title' => t('Pincode'), + '#size' => 30, + '#maxlength' => 6, + '#required' => False, + '#attributes' => array( + 'placeholder' => 'Enter pincode....' + ) + ); + $form['faculty'] = array( + '#type' => 'hidden', + '#value' => 'None', + '#title' => t('College Teacher/Professor'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE + ); + $form['faculty_email'] = array( + '#type' => 'hidden', + '#value' => 'None', + '#title' => t('Teacher/Professor Email Id'), + '#default_value' => '@email.com', + '#size' => 30, + '#maxlength' => 50 + ); + $form['reviewer'] = array( + '#type' => 'hidden', + '#value' => 'None', + '#title' => t('Reviewer'), + '#size' => 30, + '#maxlength' => 50 + ); + $form['version'] = array( + '#type' => 'textfield', + '#title' => t('Scilab Version'), + '#description' => t('Input version format should be like 5.4 or 5.4.1'), + '#size' => 10, + '#required' => TRUE, + '#maxlength' => 20 + ); + $form['completion_date'] = array( + '#type' => 'textfield', + '#title' => t('Expected Date of Completion'), + '#description' => t('Input date format should be DD-MM-YYYY. Eg: 23-03-2011'), + '#size' => 10, + '#maxlength' => 10, + '#required' => TRUE + ); + $form['operating_system'] = array( + '#type' => 'textfield', + '#title' => t('Operating System'), + '#required' => TRUE, + '#size' => 30, + '#maxlength' => 50 + ); + $reason = array( + 'Used in more than one University' => t('Used in more than one University'), + 'The book has multiple editions' => t('The book has multiple editions'), + 'Extremely useful' => t('Extremely useful'), + 'Other reason' => t('Any other reason state below') + ); + $form['reason'] = array( + '#type' => 'checkboxes', + '#title' => t('Reasons'), + '#options' => $reason, + '#required' => TRUE + ); + $form['other_reason'] = array( + '#type' => 'textarea', + '#size' => 300, + '#maxlength' => 300, + '#states' => array( + 'visible' => array( + ':input[name="reason[Other reason]"]' => array( + 'checked' => TRUE + ) + ) + ) + //'#required' => FALSE, + ); + $form['proposal_type'] = array( + '#type' => 'hidden', + '#default_value' => '1', + '#required' => FALSE + ); + $form['reference'] = array( + '#type' => 'textarea', + '#title' => t('Reference'), + '#required' => TRUE, + '#size' => 1000, + '#attributes' => array( + 'placeholder' => 'Links of the syllabus must be provided....' + ) + ); + $form['preference1'] = array( + '#type' => 'fieldset', + '#title' => t('Book Preference'), + '#collapsible' => TRUE, + '#collapsed' => FALSE + ); + $form['preference1']['book1'] = array( + '#type' => 'textfield', + '#title' => t('Title of the book'), + '#size' => 30, + '#maxlength' => 100, + '#required' => TRUE, + '#default_value' => $row1->book, + '#disabled' => ($row1->book ? TRUE : FALSE) + ); + $form['preference1']['author1'] = array( + '#type' => 'textfield', + '#title' => t('Author Name'), + '#size' => 30, + '#maxlength' => 100, + '#required' => TRUE, + '#default_value' => $row1->author, + '#disabled' => ($row1->author ? TRUE : FALSE) + ); + $form['preference1']['isbn1'] = array( + '#type' => 'textfield', + '#title' => t('ISBN No'), + '#size' => 30, + '#maxlength' => 25, + '#required' => TRUE, + '#default_value' => $row1->isbn, + '#disabled' => ($row1->isbn ? TRUE : FALSE) + ); + $form['preference1']['publisher1'] = array( + '#type' => 'textfield', + '#title' => t('Publisher & Place'), + '#size' => 30, + '#maxlength' => 50, + '#required' => TRUE, + '#default_value' => $row1->publisher + ); + $form['preference1']['edition1'] = array( + '#type' => 'textfield', + '#title' => t('Edition'), + '#size' => 4, + '#maxlength' => 2, + '#required' => TRUE, + '#default_value' => $row1->edition + ); + $form['preference1']['year1'] = array( + '#type' => 'textfield', + '#title' => t('Year of pulication'), + '#size' => 4, + '#maxlength' => 4, + '#required' => TRUE, + '#default_value' => $row1->year + ); + $form['preference1']['book_category_1'] = array( + '#type' => 'select', + '#title' => t('Category'), + '#options' => _tbc_list_of_category(), + '#required' => TRUE + ); + $form['samplefile'] = array( + '#type' => 'fieldset', + '#title' => t('<span class="form-required form-item" title="This field is required.">Sample Source Files *</span>'), + '#collapsible' => FALSE, + '#collapsed' => FALSE + ); + $form['samplefile']['samplefile1'] = array( + '#type' => 'file', + '#title' => t('Upload sample source file'), + '#size' => 48, + '#description' => t('Separate filenames with underscore. No spaces or any special characters allowed in filename.') . '<br />' . t('<span style="color:red;">Allowed file extensions : ') . variable_get('textbook_companion_sample_source_file_extensions', '') . '</span>' + ); + $form['termconditions'] = array( + '#type' => 'checkboxes', + '#title' => t('Terms And Conditions'), + '#options' => array( + 'status' => t('<a href="term-and-conditions" target="_blank">I agree to the Terms and Conditions</a>') + ), + '#required' => TRUE + ); + $form['submit'] = array( + '#type' => 'submit', + '#value' => t('Submit') + ); + return $form; } function book_proposal_nonaicte_form_validate($form, &$form_state) { - /* mobile */ - if (!preg_match('/^[0-9\ \+]{0,15}$/', $form_state['values']['mobile'])) - form_set_error('mobile', t('Invalid mobile number')); - - /* date of completion */ - if (!preg_match('/^[0-9]{1,2}-[0-9]{1,2}-[0-9]{4}$/', $form_state['values']['completion_date'])) - form_set_error('completion_date', t('Invalid expected date of completion')); - - list($d, $m, $y) = explode('-', $form_state['values']['completion_date']); - $d = (int)$d; $m = (int)$m; $y = (int)$y; - if (!checkdate($m, $d, $y)) - form_set_error('completion_date', t('Invalid expected date of completion')); - if (mktime(0, 0, 0, $m, $d, $y) <= time()) - form_set_error('completion_date', t('Expected date of completion should be in future')); - - /* edition */ - if (!preg_match('/^[1-9][0-9]{0,1}$/', $form_state['values']['edition1'])) - form_set_error('edition1', t('Invalid edition for Book Preference 1')); - - - /* year of publication */ - if (!preg_match('/^[1-3][0-9][0-9][0-9]$/', $form_state['values']['year1'])) - form_set_error('year1', t('Invalid year of pulication for Book Preference 1')); - - /* year of publication */ - $cur_year = date('Y'); - if ((int)$form_state['values']['year1'] > $cur_year) - form_set_error('year1', t('Year of pulication should be not in the future for Book Preference 1')); - - - /* isbn */ - if (!preg_match('/^[0-9\-xX]+$/', $form_state['values']['isbn1'])) - form_set_error('isbn1', t('Invalid ISBN for Book Preference 1')); - - if (!preg_match('/^\d+(?:\.\d+)+/', $form_state['values']['version'])) - form_set_error('version', t('Please enter correct version in speacifed format')); - - if($form_state['values']['country']=='Others'){ - if($form_state['values']['other_country']== ''){ - form_set_error('other_country', t('Enter country name')); - // $form_state['values']['country'] = $form_state['values']['other_country']; - }else{ - $form_state['values']['country'] = $form_state['values']['other_country']; - } - if($form_state['values']['other_state']== ''){ - form_set_error('other_state', t('Enter state name')); - // $form_state['values']['country'] = $form_state['values']['other_country']; - }else{ - $form_state['values']['all_state'] = $form_state['values']['other_state']; - } - if($form_state['values']['other_city']== ''){ - form_set_error('other_city', t('Enter city name')); - // $form_state['values']['country'] = $form_state['values']['other_country']; - }else{ - $form_state['values']['city'] = $form_state['values']['other_city']; - } - }else{ - if($form_state['values']['country']== ''){ - form_set_error('country', t('Select country name')); - // $form_state['values']['country'] = $form_state['values']['other_country']; - } - if($form_state['values']['all_state']== ''){ - form_set_error('all_state', t('Select state name')); - // $form_state['values']['country'] = $form_state['values']['other_country']; - } - if($form_state['values']['city']== ''){ - form_set_error('city', t('Select city name')); - // $form_state['values']['country'] = $form_state['values']['other_country']; - } - - - } - - - if (isset($_FILES['files'])) - { - /* check if atleast one source or result file is uploaded */ - if ( ! ($_FILES['files']['name']['samplefile1'])) - form_set_error('samplefile1', t('Please upload sample code main or source file.')); - - /* check for valid filename extensions */ - foreach ($_FILES['files']['name'] as $file_form_name => $file_name) - { - if ($file_name) - { - /* checking file type */ - if (strstr($file_form_name, 'sample')) - $file_type = 'S'; - - else - $file_type = 'U'; - - $allowed_extensions_str = ''; - switch ($file_type) - { - case 'S': - $allowed_extensions_str = variable_get('textbook_companion_sample_source_file_extensions', ''); - break; - - } - $allowed_extensions = explode(',' , $allowed_extensions_str); - $allowd_file = strtolower($_FILES['files']['name'][$file_form_name]); - $temp_extension = end(explode('.', $allowd_file)); - if (!in_array($temp_extension, $allowed_extensions)) - form_set_error($file_form_name, t('Only file with ' . $allowed_extensions_str . ' extensions can be uploaded.')); - if ($_FILES['files']['size'][$file_form_name] <= 0) - form_set_error($file_form_name, t('File size cannot be zero.')); - - /* check if valid file name */ - if (!textbook_companion_check_valid_filename($_FILES['files']['name'][$file_form_name])) - form_set_error($file_form_name, t('Invalid file name specified. Only alphabets and numbers are allowed as a valid filename.')); - - - } - } - } - - return; - -} - + /* mobile */ + if (!preg_match('/^[0-9\ \+]{0,15}$/', $form_state['values']['mobile'])) + form_set_error('mobile', t('Invalid mobile number')); + /* date of completion */ + if (!preg_match('/^[0-9]{1,2}-[0-9]{1,2}-[0-9]{4}$/', $form_state['values']['completion_date'])) + form_set_error('completion_date', t('Invalid expected date of completion')); + list($d, $m, $y) = explode('-', $form_state['values']['completion_date']); + $d = (int) $d; + $m = (int) $m; + $y = (int) $y; + if (!checkdate($m, $d, $y)) + form_set_error('completion_date', t('Invalid expected date of completion')); + if (mktime(0, 0, 0, $m, $d, $y) <= time()) + form_set_error('completion_date', t('Expected date of completion should be in future')); + /* edition */ + if (!preg_match('/^[1-9][0-9]{0,1}$/', $form_state['values']['edition1'])) + form_set_error('edition1', t('Invalid edition for Book Preference 1')); + /* year of publication */ + if (!preg_match('/^[1-3][0-9][0-9][0-9]$/', $form_state['values']['year1'])) + form_set_error('year1', t('Invalid year of pulication for Book Preference 1')); + /* year of publication */ + $cur_year = date('Y'); + if ((int) $form_state['values']['year1'] > $cur_year) + form_set_error('year1', t('Year of pulication should be not in the future for Book Preference 1')); + /* isbn */ + if (!preg_match('/^[0-9\-xX]+$/', $form_state['values']['isbn1'])) + form_set_error('isbn1', t('Invalid ISBN for Book Preference 1')); + if (!preg_match('/^\d+(?:\.\d+)+/', $form_state['values']['version'])) + form_set_error('version', t('Please enter correct version in speacifed format')); + if ($form_state['values']['country'] == 'Others') + { + if ($form_state['values']['other_country'] == '') + { + form_set_error('other_country', t('Enter country name')); + // $form_state['values']['country'] = $form_state['values']['other_country']; + } //$form_state['values']['other_country'] == '' + else + { + $form_state['values']['country'] = $form_state['values']['other_country']; + } + if ($form_state['values']['other_state'] == '') + { + form_set_error('other_state', t('Enter state name')); + // $form_state['values']['country'] = $form_state['values']['other_country']; + } //$form_state['values']['other_state'] == '' + else + { + $form_state['values']['all_state'] = $form_state['values']['other_state']; + } + if ($form_state['values']['other_city'] == '') + { + form_set_error('other_city', t('Enter city name')); + // $form_state['values']['country'] = $form_state['values']['other_country']; + } //$form_state['values']['other_city'] == '' + else + { + $form_state['values']['city'] = $form_state['values']['other_city']; + } + } //$form_state['values']['country'] == 'Others' + else + { + if ($form_state['values']['country'] == '') + { + form_set_error('country', t('Select country name')); + // $form_state['values']['country'] = $form_state['values']['other_country']; + } //$form_state['values']['country'] == '' + if ($form_state['values']['all_state'] == '') + { + form_set_error('all_state', t('Select state name')); + // $form_state['values']['country'] = $form_state['values']['other_country']; + } //$form_state['values']['all_state'] == '' + if ($form_state['values']['city'] == '') + { + form_set_error('city', t('Select city name')); + // $form_state['values']['country'] = $form_state['values']['other_country']; + } //$form_state['values']['city'] == '' + } + if (isset($_FILES['files'])) + { + /* check if atleast one source or result file is uploaded */ + if (!($_FILES['files']['name']['samplefile1'])) + form_set_error('samplefile1', t('Please upload sample code main or source file.')); + /* check for valid filename extensions */ + foreach ($_FILES['files']['name'] as $file_form_name => $file_name) + { + if ($file_name) + { + /* checking file type */ + if (strstr($file_form_name, 'sample')) + $file_type = 'S'; + else + $file_type = 'U'; + $allowed_extensions_str = ''; + switch ($file_type) + { + case 'S': + $allowed_extensions_str = variable_get('textbook_companion_sample_source_file_extensions', ''); + break; + } //$file_type + $allowed_extensions = explode(',', $allowed_extensions_str); + $allowd_file = strtolower($_FILES['files']['name'][$file_form_name]); + $temp_extension = end(explode('.', $allowd_file)); + if (!in_array($temp_extension, $allowed_extensions)) + form_set_error($file_form_name, t('Only file with ' . $allowed_extensions_str . ' extensions can be uploaded.')); + if ($_FILES['files']['size'][$file_form_name] <= 0) + form_set_error($file_form_name, t('File size cannot be zero.')); + /* check if valid file name */ + if (!textbook_companion_check_valid_filename($_FILES['files']['name'][$file_form_name])) + form_set_error($file_form_name, t('Invalid file name specified. Only alphabets and numbers are allowed as a valid filename.')); + } //$file_name + } //$_FILES['files']['name'] as $file_form_name => $file_name + } //isset($_FILES['files']) + return; +} function book_proposal_nonaicte_form_submit($form, &$form_state) { - global $user; - $root_path = textbook_companion_samplecode_path(); - $selections = variable_get("aicte_".$user->uid, ""); - $tbc_to_emails = variable_get("textbook_companion_emails_all"); - - - if (!$user->uid) { - drupal_set_message('It is mandatory to login on this website to access the proposal form', 'error'); - return; - } - - /* completion date to timestamp */ - list($d, $m, $y) = explode('-', $form_state['values']['completion_date']); - $completion_date_timestamp = mktime(0, 0, 0, $m, $d, $y); - - /* Reasons for suggesting a book*/ - - - if (isset($_POST['reason'])) { - - if(!($form_state['values']['other_reason'])){ - - $my_reason = implode(", ", $_POST['reason']); - - } - - else{ - $my_reason = implode(", ", $_POST['reason']); - $my_reason = $my_reason."-"." ".$form_state['values']['other_reason']; - } - } - - /************************************/ - - $scilab_version = 'scilab ' . $form_state['values']['version']; - - $query = " + global $user; + $root_path = textbook_companion_samplecode_path(); + $selections = variable_get("aicte_" . $user->uid, ""); + $tbc_to_emails = variable_get("textbook_companion_emails_all"); + if (!$user->uid) + { + drupal_set_message('It is mandatory to login on this website to access the proposal form', 'error'); + return; + } //!$user->uid + /* completion date to timestamp */ + list($d, $m, $y) = explode('-', $form_state['values']['completion_date']); + $completion_date_timestamp = mktime(0, 0, 0, $m, $d, $y); + /* Reasons for suggesting a book*/ + if (isset($_POST['reason'])) + { + if (!($form_state['values']['other_reason'])) + { + $my_reason = implode(", ", $_POST['reason']); + } //!($form_state['values']['other_reason']) + else + { + $my_reason = implode(", ", $_POST['reason']); + $my_reason = $my_reason . "-" . " " . $form_state['values']['other_reason']; + } + } //isset($_POST['reason']) + /************************************/ + $scilab_version = 'scilab ' . $form_state['values']['version']; + $query = " INSERT INTO {textbook_companion_proposal} (uid, approver_uid, full_name, mobile, gender, how_project, course, branch, university, country, city, pincode, state, faculty, reviewer, reference, completion_date, creation_date, approval_date, proposal_status, message, scilab_version, operating_system, teacher_email, proposal_type, reason, samplefilepath) VALUES (:uid, :approver_uid, :full_name, :mobile, :gender, :how_project, :course, :branch, :university, :country, :city, :pincode, :state, :faculty, :reviewer, :reference, :completion_date, :creation_date, :approval_date, :proposal_status, :message, :scilab_version, :operating_system, :teacher_email, :proposal_type, :reason, :samplefilepath) "; - - // $result = db_query($query); - - -$args = array( - ":uid"=> $user->uid, - ":approver_uid"=> 0, - ":full_name"=> ucwords(strtolower($form_state['values']['full_name'])), - ":mobile"=> $form_state['values']['mobile'], - ":gender"=> $form_state['values']['gender'], - ":how_project"=> 'Not available', - ":course"=> $form_state['values']['course'], - ":branch"=> $form_state['values']['branch'], - ":university"=> $form_state['values']['university'], - ":country" => $form_state['values']['country'], - ":city"=> $form_state['values']['city'], - ":pincode"=> $form_state['values']['pincode'], - ":state"=> $form_state['values']['all_state'], - ":faculty"=> ucwords(strtolower($form_state['values']['faculty'])), - ":reviewer"=> ucwords(strtolower($form_state['values']['reviewer'])), - ":reference"=> strtolower($form_state['values']['reference']), - ":completion_date"=> $completion_date_timestamp, - ":creation_date"=> time(), - ":approval_date"=> time(), - ":proposal_status"=> 0, - ":message"=> 'None', - ":scilab_version"=>$scilab_version, - ":operating_system"=>$form_state['values']['operating_system'], - ":teacher_email"=>$form_state['values']['faculty_email'], - ":proposal_type"=>$form_state['values']['proposal_type'], - ":reason"=> $my_reason, - ":samplefilepath"=>"" - ); -//var_dump($args); - $result = db_query($query, $args, array('return' => Database::RETURN_INSERT_ID)); - - $dest_path = $result . '/'; - - if (!is_dir($root_path . $dest_path)){ - mkdir($root_path . $dest_path); -} - -/* uploading files */ - foreach ($_FILES['files']['name'] as $file_form_name => $file_name) - { - if ($file_name) - { - /* checking file type */ - $file_type = 'S'; - - if (file_exists($root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) - { - drupal_set_message(t("Error uploading file. File !filename already exists.", array('!filename' => $_FILES['files']['name'][$file_form_name])), 'error'); - return; - } - - /* uploading file */ - if (move_uploaded_file($_FILES['files']['tmp_name'][$file_form_name], $root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) - { - $query = "UPDATE {textbook_companion_proposal} SET samplefilepath = :samplefilepath WHERE id = :id"; - $args = array( - ":samplefilepath" => $dest_path . $_FILES['files']['name'][$file_form_name], - ":id" =>$result, - ); - $updateresult = db_query($query, $args); - - drupal_set_message($file_name . ' uploaded successfully.', 'status'); - } else { - drupal_set_message('Error uploading file : ' . $dest_path . $file_name, 'error'); - } - } - } - - - if (!$result) - { - drupal_set_message(t('Error receiving your proposal. Please try again.'), 'error'); - return; - } - /* proposal id */ - - $proposal_id = $result; - - /* inserting first book preference */ - if ($form_state['values']['book1']) - { - -$query = "INSERT INTO {textbook_companion_preference} + // $result = db_query($query); + $args = array( + ":uid" => $user->uid, + ":approver_uid" => 0, + ":full_name" => ucwords(strtolower($form_state['values']['full_name'])), + ":mobile" => $form_state['values']['mobile'], + ":gender" => $form_state['values']['gender'], + ":how_project" => 'Not available', + ":course" => $form_state['values']['course'], + ":branch" => $form_state['values']['branch'], + ":university" => $form_state['values']['university'], + ":country" => $form_state['values']['country'], + ":city" => $form_state['values']['city'], + ":pincode" => $form_state['values']['pincode'], + ":state" => $form_state['values']['all_state'], + ":faculty" => ucwords(strtolower($form_state['values']['faculty'])), + ":reviewer" => ucwords(strtolower($form_state['values']['reviewer'])), + ":reference" => strtolower($form_state['values']['reference']), + ":completion_date" => $completion_date_timestamp, + ":creation_date" => time(), + ":approval_date" => time(), + ":proposal_status" => 0, + ":message" => 'None', + ":scilab_version" => $scilab_version, + ":operating_system" => $form_state['values']['operating_system'], + ":teacher_email" => $form_state['values']['faculty_email'], + ":proposal_type" => $form_state['values']['proposal_type'], + ":reason" => $my_reason, + ":samplefilepath" => "" + ); + //var_dump($args); + $result = db_query($query, $args, array( + 'return' => Database::RETURN_INSERT_ID + )); + $dest_path = $result . '/'; + if (!is_dir($root_path . $dest_path)) + { + mkdir($root_path . $dest_path); + } //!is_dir($root_path . $dest_path) + /* uploading files */ + foreach ($_FILES['files']['name'] as $file_form_name => $file_name) + { + if ($file_name) + { + /* checking file type */ + $file_type = 'S'; + if (file_exists($root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) + { + drupal_set_message(t("Error uploading file. File !filename already exists.", array( + '!filename' => $_FILES['files']['name'][$file_form_name] + )), 'error'); + return; + } //file_exists($root_path . $dest_path . $_FILES['files']['name'][$file_form_name]) + /* uploading file */ + if (move_uploaded_file($_FILES['files']['tmp_name'][$file_form_name], $root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) + { + $query = "UPDATE {textbook_companion_proposal} SET samplefilepath = :samplefilepath WHERE id = :id"; + $args = array( + ":samplefilepath" => $dest_path . $_FILES['files']['name'][$file_form_name], + ":id" => $result + ); + $updateresult = db_query($query, $args); + drupal_set_message($file_name . ' uploaded successfully.', 'status'); + } //move_uploaded_file($_FILES['files']['tmp_name'][$file_form_name], $root_path . $dest_path . $_FILES['files']['name'][$file_form_name]) + else + { + drupal_set_message('Error uploading file : ' . $dest_path . $file_name, 'error'); + } + } //$file_name + } //$_FILES['files']['name'] as $file_form_name => $file_name + if (!$result) + { + drupal_set_message(t('Error receiving your proposal. Please try again.'), 'error'); + return; + } //!$result + /* proposal id */ + $proposal_id = $result; + /* inserting first book preference */ + if ($form_state['values']['book1']) + { + $query = "INSERT INTO {textbook_companion_preference} (proposal_id, pref_number, book, author, isbn, publisher, edition, year, category, approval_status, nonaicte_book) VALUES (:proposal_id, :pref_number, :book, :author, :isbn, :publisher, :edition, :year, :category, :approval_status, :nonaicte_book)"; - -$args = array( - ":proposal_id"=> $proposal_id, - ":pref_number"=> 1, - ":book"=> ucwords(strtolower($form_state['values']['book1'])), - ":author"=> ucwords(strtolower($form_state['values']['author1'])), - ":isbn"=> $form_state['values']['isbn1'], - ":publisher"=> ucwords(strtolower($form_state['values']['publisher1'])), - ":edition"=> $form_state['values']['edition1'], - ":year"=> $form_state['values']['year1'], - ":category"=> $form_state['values']['book_category_1'], - ":approval_status"=> 0, - ":nonaicte_book"=> 1, + $args = array( + ":proposal_id" => $proposal_id, + ":pref_number" => 1, + ":book" => ucwords(strtolower($form_state['values']['book1'])), + ":author" => ucwords(strtolower($form_state['values']['author1'])), + ":isbn" => $form_state['values']['isbn1'], + ":publisher" => ucwords(strtolower($form_state['values']['publisher1'])), + ":edition" => $form_state['values']['edition1'], + ":year" => $form_state['values']['year1'], + ":category" => $form_state['values']['book_category_1'], + ":approval_status" => 0, + ":nonaicte_book" => 1 ); - - $result = db_query($query, $args); - - if (!$result) - { - drupal_set_message(t('Error receiving your first book preference.'), 'error'); - } - } - - /* sending email */ - $email_to = $user->mail; - $from = variable_get('textbook_companion_from_email', ''); - $bcc = variable_get('textbook_companion_emails', ''); - $cc = variable_get('textbook_companion_cc_emails', ''); - - $params['nonaicte_proposal_received']['proposal_id'] = $proposal_id; - $params['nonaicte_proposal_received']['user_id'] = $user->uid; - $params['nonaicte_proposal_received']['headers']=array('From'=>$from,'MIME-Version'=> '1.0', - 'Content-Type'=> 'text/plain; charset=UTF-8; format=flowed; delsp=yes', - 'Content-Transfer-Encoding' => '8Bit', - 'X-Mailer'=> 'Drupal','Cc' => $cc, 'Bcc' => $bcc); - - if (!drupal_mail('textbook_companion', 'nonaicte_proposal_received', $email_to , language_default(), $params, $from, TRUE)) - drupal_set_message('Error sending email message.', 'error'); - - drupal_set_message(t('We have received your book proposal. We will get back to you soon.'), 'status'); - drupal_goto(''); + $result = db_query($query, $args); + if (!$result) + { + drupal_set_message(t('Error receiving your first book preference.'), 'error'); + } //!$result + } //$form_state['values']['book1'] + /* sending email */ + $email_to = $user->mail; + $from = variable_get('textbook_companion_from_email', ''); + $bcc = variable_get('textbook_companion_emails', ''); + $cc = variable_get('textbook_companion_cc_emails', ''); + $params['nonaicte_proposal_received']['proposal_id'] = $proposal_id; + $params['nonaicte_proposal_received']['user_id'] = $user->uid; + $params['nonaicte_proposal_received']['headers'] = array( + 'From' => $from, + 'MIME-Version' => '1.0', + 'Content-Type' => 'text/plain; charset=UTF-8; format=flowed; delsp=yes', + 'Content-Transfer-Encoding' => '8Bit', + 'X-Mailer' => 'Drupal', + 'Cc' => $cc, + 'Bcc' => $bcc + ); + if (!drupal_mail('textbook_companion', 'nonaicte_proposal_received', $email_to, language_default(), $params, $from, TRUE)) + drupal_set_message('Error sending email message.', 'error'); + drupal_set_message(t('We have received your book proposal. We will get back to you soon.'), 'status'); + drupal_goto(''); } - function del_book_pdf($book_id) { - $root_path = textbook_companion_path(); - $dir_path = $root_path . "latex/"; - $pdf_filename = "book_" . $book_id . ".pdf"; - if (file_exists($dir_path . $pdf_filename)) - unlink($dir_path . $pdf_filename); + $root_path = textbook_companion_path(); + $dir_path = $root_path . "latex/"; + $pdf_filename = "book_" . $book_id . ".pdf"; + if (file_exists($dir_path . $pdf_filename)) + unlink($dir_path . $pdf_filename); } - -function _tbc_list_of_states(){ - $states = array(0 => '-Select-'); - $query = db_select('list_states_of_india'); - $query->fields('list_states_of_india'); - - //$query->orderBy('', ''); - $states_list = $query->execute(); - while ($states_list_data = $states_list->fetchObject()) - { - $states[$states_list_data->state] = $states_list_data->state; - } - return $states; +function _tbc_list_of_states() +{ + $states = array( + 0 => '-Select-' + ); + $query = db_select('list_states_of_india'); + $query->fields('list_states_of_india'); + //$query->orderBy('', ''); + $states_list = $query->execute(); + while ($states_list_data = $states_list->fetchObject()) + { + $states[$states_list_data->state] = $states_list_data->state; + } //$states_list_data = $states_list->fetchObject() + return $states; } -function _tbc_list_of_cities(){ - $city = array(0 => '-Select-'); - $query = db_select('list_cities_of_india'); - $query->fields('list_cities_of_india'); - $query->orderBy('city', 'ASC'); - $city_list = $query->execute(); - while ($city_list_data = $city_list->fetchObject()) - { - $city[$city_list_data->city] = $city_list_data->city; - } - return $city; +function _tbc_list_of_cities() +{ + $city = array( + 0 => '-Select-' + ); + $query = db_select('list_cities_of_india'); + $query->fields('list_cities_of_india'); + $query->orderBy('city', 'ASC'); + $city_list = $query->execute(); + while ($city_list_data = $city_list->fetchObject()) + { + $city[$city_list_data->city] = $city_list_data->city; + } //$city_list_data = $city_list->fetchObject() + return $city; } -function _tbc_list_of_departments(){ - - $query = db_select('list_of_departments'); - $query->fields('list_of_departments'); - $query->orderBy('id', 'DESC'); - $department_list = $query->execute(); - while ($department_list_data = $department_list->fetchObject()) - { - $department[$department_list_data->department] = $department_list_data->department; - } - return $department; +function _tbc_list_of_departments() +{ + $query = db_select('list_of_departments'); + $query->fields('list_of_departments'); + $query->orderBy('id', 'DESC'); + $department_list = $query->execute(); + while ($department_list_data = $department_list->fetchObject()) + { + $department[$department_list_data->department] = $department_list_data->department; + } //$department_list_data = $department_list->fetchObject() + return $department; } -function _tbc_list_of_category($category_id=NULL){ - if($category_id==NULL){ - $query = db_select('list_of_category'); - $query->fields('list_of_category'); - $query->orderBy('id', 'ASC'); - $category_list = $query->execute(); - }else{ - $query = db_select('list_of_category'); - $query->fields('list_of_category'); - $query->condition('category_id', $category_id); - $query->orderBy('id', 'ASC'); - $category_list = $query->execute(); - } - while ($category_list_data = $category_list->fetchObject()) - { - $category[$category_list_data->category_id] = $category_list_data->category_name; - } - return $category; +function _tbc_list_of_category($category_id = NULL) +{ + if ($category_id == NULL) + { + $query = db_select('list_of_category'); + $query->fields('list_of_category'); + $query->orderBy('id', 'ASC'); + $category_list = $query->execute(); + } //$category_id == NULL + else + { + $query = db_select('list_of_category'); + $query->fields('list_of_category'); + $query->condition('category_id', $category_id); + $query->orderBy('id', 'ASC'); + $category_list = $query->execute(); + } + while ($category_list_data = $category_list->fetchObject()) + { + $category[$category_list_data->category_id] = $category_list_data->category_name; + } //$category_list_data = $category_list->fetchObject() + return $category; } - -function textbook_companion_init(){ - - $path = drupal_get_path('module', 'textbook_companion'); - drupal_add_css($path . '/css/textbook_companion.css'); - drupal_add_js($path . '/js/textbook_companion.js'); - drupal_add_js($path . '/js/jquery-1.7.1.js'); - +function textbook_companion_init() +{ + $path = drupal_get_path('module', 'textbook_companion'); + drupal_add_css($path . '/css/textbook_companion.css'); + drupal_add_js($path . '/js/textbook_companion.js'); + drupal_add_js($path . '/js/jquery-1.7.1.js'); } - |