Index: includes/job_posting.views.inc =================================================================== --- includes/job_posting.views.inc (revision 0) +++ includes/job_posting.views.inc (revision 0) @@ -0,0 +1,171 @@ + array ( + 'left_field' => 'nid', + 'field' => 'nid', + ), + ); + + $data['job_posting']['deadline'] = array( + 'title' => t('Deadline'), + 'help' => t('This is the deadline for applications.'), + 'field' => array( + 'handler' => 'views_handler_field_date', + 'click sortable' => TRUE, + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_date', + ), + 'argument' => array( + 'handler' => 'views_handler_argument', + ), + ); + + $data['job_posting']['employer'] = array( + 'title' => t('Employer'), + 'help' => t('This employer for the job posting.'), + 'field' => array( + 'handler' => 'views_handler_field', + 'click sortable' => TRUE, + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_string', + ), + 'argument' => array( + 'handler' => 'views_handler_argument', + ), + ); + + $data['job_posting']['city'] = array( + 'title' => t('City'), + 'help' => t('This is the city for the job posting.'), + 'field' => array( + 'handler' => 'views_handler_field', + 'click sortable' => TRUE, + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_string', + ), + 'argument' => array( + 'handler' => 'views_handler_argument', + ), + ); + + $data['job_posting']['state'] = array( + 'title' => t('State'), + 'help' => t('This is the state for the job posting.'), + 'field' => array( + 'handler' => 'views_handler_field', + 'click sortable' => TRUE, + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_string', + ), + 'argument' => array( + 'handler' => 'views_handler_argument', + ), + ); + + $data['job_posting']['website'] = array( + 'title' => t('Website'), + 'help' => t('This is the website of the employer.'), + 'field' => array( + 'handler' => 'views_handler_field_url', + 'click sortable' => TRUE, + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_string', + ), + 'argument' => array( + 'handler' => 'views_handler_argument_string', + ), + ); + + $data['job_posting']['contact'] = array( + 'title' => t('Contact'), + 'help' => t('This is the contact person for this job posting.'), + 'field' => array( + 'handler' => 'views_handler_field', + 'click sortable' => TRUE, + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_string', + ), + 'argument' => array( + 'handler' => 'views_handler_argument_string', + ), + ); + + + $data['job_posting']['email'] = array( + 'title' => t('Email'), + 'help' => t('This is the email that applications will be sent to.'), + 'field' => array( + 'handler' => 'views_handler_field', + 'click sortable' => TRUE, + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_string', + ), + 'argument' => array( + 'handler' => 'views_handler_argument_string', + ), + ); + + + $data['job_posting_country']['table']['group'] = t('JobPostings'); + $data['job_posting_country']['table']['join']['node'] = array( + 'left_table' => 'job_posting', + 'left_field' => 'cid', + 'field' => 'cid', + ); + + $data['job_posting_country']['name'] = array( + 'title' => t('Country'), + 'help' => t('This job country for the job posting.'), + 'field' => array( + 'handler' => 'views_handler_field', + 'click sortable' => TRUE, + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_string', + ), + 'argument' => array( + 'handler' => 'views_handler_argument_string', + ), + ); + + return $data; +} \ No newline at end of file Index: job_posting.module =================================================================== --- job_posting.module (revision 49) +++ job_posting.module (working copy) @@ -1183,4 +1183,15 @@ } $seconds -= $minutes * 60; return $countdown; +} + +/** + * Implementation of hook_views_api. + * @return unknown_type + */ +function job_posting_views_api() { + return array( + 'api' => 2, + 'path' => drupal_get_path('module', 'job_posting') .'/includes', + ); }