WP Job Manager - Version 1.26.2

Version Description

  • Fix: Prevents use of Ajax file upload endpoint for visitors who aren't logged in. Themes should check with job_manager_user_can_upload_file_via_ajax() if using endpoint in templates. (https://github.com/Automattic/WP-Job-Manager/pull/1020)
  • Fix: Escape post title in WP Admin's Job Listings page and template segments. (Props to @EhsanCod3r; https://github.com/Automattic/WP-Job-Manager/pull/1026)
Download this release

Release Info

Developer jakeom
Plugin Icon 128x128 WP Job Manager
Version 1.26.2
Comparing to
See all releases

Code changes from version 1.26.1 to 1.26.2

changelog.txt CHANGED
@@ -1,3 +1,7 @@
 
 
 
 
1
  = 1.26.1 =
2
  * Enhancement: Add language using WordPress's current locale to geocode requests. (@jom; https://github.com/Automattic/WP-Job-Manager/pull/1007)
3
  * Fix: Allow attempts to use Google Maps Geocode API without an API key. (@spencerfinnell; https://github.com/Automattic/WP-Job-Manager/pull/998)
1
+ = 1.26.2 =
2
+ * Fix: Prevents use of Ajax file upload endpoint for visitors who aren't logged in. Themes should check with `job_manager_user_can_upload_file_via_ajax()` if using endpoint in templates. (https://github.com/Automattic/WP-Job-Manager/pull/1020)
3
+ * Fix: Escape post title in WP Admin's Job Listings page and template segments. (Props to @EhsanCod3r; https://github.com/Automattic/WP-Job-Manager/pull/1026)
4
+
5
  = 1.26.1 =
6
  * Enhancement: Add language using WordPress's current locale to geocode requests. (@jom; https://github.com/Automattic/WP-Job-Manager/pull/1007)
7
  * Fix: Allow attempts to use Google Maps Geocode API without an API key. (@spencerfinnell; https://github.com/Automattic/WP-Job-Manager/pull/998)
includes/admin/class-wp-job-manager-cpt.php CHANGED
@@ -346,7 +346,7 @@ class WP_Job_Manager_CPT {
346
  break;
347
  case "job_position" :
348
  echo '<div class="job_position">';
349
- echo '<a href="' . admin_url('post.php?post=' . $post->ID . '&action=edit') . '" class="tips job_title" data-tip="' . sprintf( __( 'ID: %d', 'wp-job-manager' ), $post->ID ) . '">' . $post->post_title . '</a>';
350
 
351
  echo '<div class="company">';
352
 
346
  break;
347
  case "job_position" :
348
  echo '<div class="job_position">';
349
+ echo '<a href="' . admin_url('post.php?post=' . $post->ID . '&action=edit') . '" class="tips job_title" data-tip="' . sprintf( __( 'ID: %d', 'wp-job-manager' ), $post->ID ) . '">' . esc_html( $post->post_title ) . '</a>';
350
 
351
  echo '<div class="company">';
352
 
includes/class-wp-job-manager-ajax.php CHANGED
@@ -263,6 +263,10 @@ class WP_Job_Manager_Ajax {
263
  * No nonce field since the form may be statically cached.
264
  */
265
  public function upload_file() {
 
 
 
 
266
  $data = array(
267
  'files' => array(),
268
  );
263
  * No nonce field since the form may be statically cached.
264
  */
265
  public function upload_file() {
266
+ if ( ! job_manager_user_can_upload_file_via_ajax() ) {
267
+ wp_send_json_error( new WP_Error( 'upload', __( 'You must be logged in to upload files using this method.', 'wp-job-manager' ) ) );
268
+ return;
269
+ }
270
  $data = array(
271
  'files' => array(),
272
  );
includes/class-wp-job-manager-shortcodes.php CHANGED
@@ -106,7 +106,7 @@ class WP_Job_Manager_Shortcodes {
106
  update_post_meta( $job_id, '_filled', 1 );
107
 
108
  // Message
109
- $this->job_dashboard_message = '<div class="job-manager-message">' . sprintf( __( '%s has been filled', 'wp-job-manager' ), $job->post_title ) . '</div>';
110
  break;
111
  case 'mark_not_filled' :
112
  // Check status
@@ -118,14 +118,14 @@ class WP_Job_Manager_Shortcodes {
118
  update_post_meta( $job_id, '_filled', 0 );
119
 
120
  // Message
121
- $this->job_dashboard_message = '<div class="job-manager-message">' . sprintf( __( '%s has been marked as not filled', 'wp-job-manager' ), $job->post_title ) . '</div>';
122
  break;
123
  case 'delete' :
124
  // Trash it
125
  wp_trash_post( $job_id );
126
 
127
  // Message
128
- $this->job_dashboard_message = '<div class="job-manager-message">' . sprintf( __( '%s has been deleted', 'wp-job-manager' ), $job->post_title ) . '</div>';
129
 
130
  break;
131
  case 'duplicate' :
@@ -450,7 +450,7 @@ class WP_Job_Manager_Shortcodes {
450
 
451
  <?php while ( $jobs->have_posts() ) : $jobs->the_post(); ?>
452
 
453
- <h1><?php the_title(); ?></h1>
454
 
455
  <?php get_job_manager_template_part( 'content-single', 'job_listing' ); ?>
456
 
106
  update_post_meta( $job_id, '_filled', 1 );
107
 
108
  // Message
109
+ $this->job_dashboard_message = '<div class="job-manager-message">' . sprintf( __( '%s has been filled', 'wp-job-manager' ), esc_html( $job->post_title ) ) . '</div>';
110
  break;
111
  case 'mark_not_filled' :
112
  // Check status
118
  update_post_meta( $job_id, '_filled', 0 );
119
 
120
  // Message
121
+ $this->job_dashboard_message = '<div class="job-manager-message">' . sprintf( __( '%s has been marked as not filled', 'wp-job-manager' ), esc_html( $job->post_title ) ) . '</div>';
122
  break;
123
  case 'delete' :
124
  // Trash it
125
  wp_trash_post( $job_id );
126
 
127
  // Message
128
+ $this->job_dashboard_message = '<div class="job-manager-message">' . sprintf( __( '%s has been deleted', 'wp-job-manager' ), esc_html( $job->post_title ) ) . '</div>';
129
 
130
  break;
131
  case 'duplicate' :
450
 
451
  <?php while ( $jobs->have_posts() ) : $jobs->the_post(); ?>
452
 
453
+ <h1><?php echo esc_html( get_the_title() ); ?></h1>
454
 
455
  <?php get_job_manager_template_part( 'content-single', 'job_listing' ); ?>
456
 
languages/wp-job-manager.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the GPL2+.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: WP Job Manager 1.26.0\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-job-manager\n"
7
- "POT-Creation-Date: 2017-05-31 22:26:08+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -173,9 +173,9 @@ msgid "Approve"
173
  msgstr ""
174
 
175
  #: includes/admin/class-wp-job-manager-cpt.php:405
176
- #: includes/admin/class-wp-job-manager-writepanels.php:248
177
- #: includes/admin/class-wp-job-manager-writepanels.php:251
178
- #: includes/admin/class-wp-job-manager-writepanels.php:254
179
  msgid "View"
180
  msgstr ""
181
 
@@ -753,47 +753,47 @@ msgid ""
753
  "differently."
754
  msgstr ""
755
 
756
- #: includes/admin/class-wp-job-manager-writepanels.php:108
757
  msgid "Listing Expiry Date"
758
  msgstr ""
759
 
760
- #: includes/admin/class-wp-job-manager-writepanels.php:118
761
  msgid "Posted by"
762
  msgstr ""
763
 
764
- #: includes/admin/class-wp-job-manager-writepanels.php:151
765
  msgid "%s Data"
766
  msgstr ""
767
 
768
- #: includes/admin/class-wp-job-manager-writepanels.php:191
769
  msgid "Most Used"
770
  msgstr ""
771
 
772
- #: includes/admin/class-wp-job-manager-writepanels.php:248
773
- #: includes/admin/class-wp-job-manager-writepanels.php:251
774
- #: includes/admin/class-wp-job-manager-writepanels.php:254
775
  msgid "Use file"
776
  msgstr ""
777
 
778
- #: includes/admin/class-wp-job-manager-writepanels.php:248
779
- #: includes/admin/class-wp-job-manager-writepanels.php:251
780
- #: includes/admin/class-wp-job-manager-writepanels.php:254
781
  msgid "Upload"
782
  msgstr ""
783
 
784
- #: includes/admin/class-wp-job-manager-writepanels.php:254
785
  msgid "Add file"
786
  msgstr ""
787
 
788
- #: includes/admin/class-wp-job-manager-writepanels.php:427
789
  msgid "Guest User"
790
  msgstr ""
791
 
792
- #: includes/admin/class-wp-job-manager-writepanels.php:429
793
  msgid "Change"
794
  msgstr ""
795
 
796
- #: includes/admin/class-wp-job-manager-writepanels.php:433
797
  msgid "Enter the ID of the user, or leave blank if submitted by a guest."
798
  msgstr ""
799
 
@@ -803,6 +803,10 @@ msgid_plural "Search completed. Found %d matching records."
803
  msgstr[0] ""
804
  msgstr[1] ""
805
 
 
 
 
 
806
  #: includes/class-wp-job-manager-geocode.php:221
807
  msgid "No results found"
808
  msgstr ""
@@ -1119,7 +1123,7 @@ msgid "%s is invalid"
1119
  msgstr ""
1120
 
1121
  #: includes/forms/class-wp-job-manager-form-submit-job.php:311
1122
- #: wp-job-manager-functions.php:859
1123
  msgid "\"%s\" (filetype %s) needs to be one of the following file types: %s"
1124
  msgstr ""
1125
 
@@ -1249,12 +1253,12 @@ msgid "Maximum file size: %s."
1249
  msgstr ""
1250
 
1251
  #: templates/form-fields/multiselect-field.php:3
1252
- #: wp-job-manager-functions.php:647
1253
  msgid "No results match"
1254
  msgstr ""
1255
 
1256
  #: templates/form-fields/multiselect-field.php:3
1257
- #: wp-job-manager-functions.php:648
1258
  msgid "Select Some Options"
1259
  msgstr ""
1260
 
@@ -1371,11 +1375,11 @@ msgstr ""
1371
  msgid "This email is already registered, please choose another one."
1372
  msgstr ""
1373
 
1374
- #: wp-job-manager-functions.php:646
1375
  msgid "Choose a category&hellip;"
1376
  msgstr ""
1377
 
1378
- #: wp-job-manager-functions.php:861
1379
  msgid "Uploaded files need to be one of the following file types: %s"
1380
  msgstr ""
1381
 
@@ -1451,7 +1455,7 @@ msgctxt "Default page title (wizard)"
1451
  msgid "Jobs"
1452
  msgstr ""
1453
 
1454
- #: includes/admin/class-wp-job-manager-writepanels.php:112
1455
  #. translators: date format placeholder, see https:secure.php.net/date
1456
  msgctxt "Date format placeholder."
1457
  msgid "yyyy-mm-dd"
2
  # This file is distributed under the GPL2+.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: WP Job Manager 1.26.1\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-job-manager\n"
7
+ "POT-Creation-Date: 2017-06-12 15:22:01+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
173
  msgstr ""
174
 
175
  #: includes/admin/class-wp-job-manager-cpt.php:405
176
+ #: includes/admin/class-wp-job-manager-writepanels.php:249
177
+ #: includes/admin/class-wp-job-manager-writepanels.php:252
178
+ #: includes/admin/class-wp-job-manager-writepanels.php:255
179
  msgid "View"
180
  msgstr ""
181
 
753
  "differently."
754
  msgstr ""
755
 
756
+ #: includes/admin/class-wp-job-manager-writepanels.php:109
757
  msgid "Listing Expiry Date"
758
  msgstr ""
759
 
760
+ #: includes/admin/class-wp-job-manager-writepanels.php:119
761
  msgid "Posted by"
762
  msgstr ""
763
 
764
+ #: includes/admin/class-wp-job-manager-writepanels.php:152
765
  msgid "%s Data"
766
  msgstr ""
767
 
768
+ #: includes/admin/class-wp-job-manager-writepanels.php:192
769
  msgid "Most Used"
770
  msgstr ""
771
 
772
+ #: includes/admin/class-wp-job-manager-writepanels.php:249
773
+ #: includes/admin/class-wp-job-manager-writepanels.php:252
774
+ #: includes/admin/class-wp-job-manager-writepanels.php:255
775
  msgid "Use file"
776
  msgstr ""
777
 
778
+ #: includes/admin/class-wp-job-manager-writepanels.php:249
779
+ #: includes/admin/class-wp-job-manager-writepanels.php:252
780
+ #: includes/admin/class-wp-job-manager-writepanels.php:255
781
  msgid "Upload"
782
  msgstr ""
783
 
784
+ #: includes/admin/class-wp-job-manager-writepanels.php:255
785
  msgid "Add file"
786
  msgstr ""
787
 
788
+ #: includes/admin/class-wp-job-manager-writepanels.php:428
789
  msgid "Guest User"
790
  msgstr ""
791
 
792
+ #: includes/admin/class-wp-job-manager-writepanels.php:430
793
  msgid "Change"
794
  msgstr ""
795
 
796
+ #: includes/admin/class-wp-job-manager-writepanels.php:434
797
  msgid "Enter the ID of the user, or leave blank if submitted by a guest."
798
  msgstr ""
799
 
803
  msgstr[0] ""
804
  msgstr[1] ""
805
 
806
+ #: includes/class-wp-job-manager-ajax.php:267
807
+ msgid "You must be logged in to upload files using this method."
808
+ msgstr ""
809
+
810
  #: includes/class-wp-job-manager-geocode.php:221
811
  msgid "No results found"
812
  msgstr ""
1123
  msgstr ""
1124
 
1125
  #: includes/forms/class-wp-job-manager-form-submit-job.php:311
1126
+ #: wp-job-manager-functions.php:877
1127
  msgid "\"%s\" (filetype %s) needs to be one of the following file types: %s"
1128
  msgstr ""
1129
 
1253
  msgstr ""
1254
 
1255
  #: templates/form-fields/multiselect-field.php:3
1256
+ #: wp-job-manager-functions.php:665
1257
  msgid "No results match"
1258
  msgstr ""
1259
 
1260
  #: templates/form-fields/multiselect-field.php:3
1261
+ #: wp-job-manager-functions.php:666
1262
  msgid "Select Some Options"
1263
  msgstr ""
1264
 
1375
  msgid "This email is already registered, please choose another one."
1376
  msgstr ""
1377
 
1378
+ #: wp-job-manager-functions.php:664
1379
  msgid "Choose a category&hellip;"
1380
  msgstr ""
1381
 
1382
+ #: wp-job-manager-functions.php:879
1383
  msgid "Uploaded files need to be one of the following file types: %s"
1384
  msgstr ""
1385
 
1455
  msgid "Jobs"
1456
  msgstr ""
1457
 
1458
+ #: includes/admin/class-wp-job-manager-writepanels.php:113
1459
  #. translators: date format placeholder, see https:secure.php.net/date
1460
  msgctxt "Date format placeholder."
1461
  msgid "yyyy-mm-dd"
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: mikejolley, automattic, adamkheckler, annezazu, cena, chaselivings
3
  Tags: job manager, job listing, job board, job management, job lists, job list, job, jobs, company, hiring, employment, employer, employees, candidate, freelance, internship, job listings, positions, board, application, hiring, listing, manager, recruiting, recruitment, talent
4
  Requires at least: 4.1
5
  Tested up to: 4.8
6
- Stable tag: 1.26.1
7
  License: GPLv3
8
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
9
 
@@ -141,6 +141,10 @@ You can view (and contribute) translations via the [translate.wordpress.org](htt
141
 
142
  == Changelog ==
143
 
 
 
 
 
144
  = 1.26.1 =
145
  * Enhancement: Add language using WordPress's current locale to geocode requests. (@jom; https://github.com/Automattic/WP-Job-Manager/pull/1007)
146
  * Fix: Allow attempts to use Google Maps Geocode API without an API key. (@spencerfinnell; https://github.com/Automattic/WP-Job-Manager/pull/998)
3
  Tags: job manager, job listing, job board, job management, job lists, job list, job, jobs, company, hiring, employment, employer, employees, candidate, freelance, internship, job listings, positions, board, application, hiring, listing, manager, recruiting, recruitment, talent
4
  Requires at least: 4.1
5
  Tested up to: 4.8
6
+ Stable tag: 1.26.2
7
  License: GPLv3
8
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
9
 
141
 
142
  == Changelog ==
143
 
144
+ = 1.26.2 =
145
+ * Fix: Prevents use of Ajax file upload endpoint for visitors who aren't logged in. Themes should check with `job_manager_user_can_upload_file_via_ajax()` if using endpoint in templates. (https://github.com/Automattic/WP-Job-Manager/pull/1020)
146
+ * Fix: Escape post title in WP Admin's Job Listings page and template segments. (Props to @EhsanCod3r; https://github.com/Automattic/WP-Job-Manager/pull/1026)
147
+
148
  = 1.26.1 =
149
  * Enhancement: Add language using WordPress's current locale to geocode requests. (@jom; https://github.com/Automattic/WP-Job-Manager/pull/1007)
150
  * Fix: Allow attempts to use Google Maps Geocode API without an API key. (@spencerfinnell; https://github.com/Automattic/WP-Job-Manager/pull/998)
templates/content-job_listing.php CHANGED
@@ -3,7 +3,7 @@
3
  <a href="<?php the_job_permalink(); ?>">
4
  <?php the_company_logo(); ?>
5
  <div class="position">
6
- <h3><?php the_title(); ?></h3>
7
  <div class="company">
8
  <?php the_company_name( '<strong>', '</strong> ' ); ?>
9
  <?php the_company_tagline( '<span class="tagline">', '</span>' ); ?>
3
  <a href="<?php the_job_permalink(); ?>">
4
  <?php the_company_logo(); ?>
5
  <div class="position">
6
+ <h3><?php echo esc_html( get_the_title() ); ?></h3>
7
  <div class="company">
8
  <?php the_company_name( '<strong>', '</strong> ' ); ?>
9
  <?php the_company_tagline( '<span class="tagline">', '</span>' ); ?>
templates/content-summary-job_listing.php CHANGED
@@ -11,7 +11,7 @@
11
 
12
  <div class="job_summary_content">
13
 
14
- <h1><?php the_title(); ?></h1>
15
 
16
  <p class="meta"><?php the_job_location( false ); ?> &mdash; <?php the_job_publish_date(); ?></p>
17
 
11
 
12
  <div class="job_summary_content">
13
 
14
+ <h1><?php echo esc_html( get_the_title() ); ?></h1>
15
 
16
  <p class="meta"><?php the_job_location( false ); ?> &mdash; <?php the_job_publish_date(); ?></p>
17
 
templates/content-widget-job_listing.php CHANGED
@@ -1,7 +1,7 @@
1
  <li <?php job_listing_class(); ?>>
2
  <a href="<?php the_job_permalink(); ?>">
3
  <div class="position">
4
- <h3><?php the_title(); ?></h3>
5
  </div>
6
  <ul class="meta">
7
  <li class="location"><?php the_job_location( false ); ?></li>
1
  <li <?php job_listing_class(); ?>>
2
  <a href="<?php the_job_permalink(); ?>">
3
  <div class="position">
4
+ <h3><?php echo esc_html( get_the_title() ); ?></h3>
5
  </div>
6
  <ul class="meta">
7
  <li class="location"><?php the_job_location( false ); ?></li>
templates/form-fields/file-field.php CHANGED
@@ -4,7 +4,7 @@ $allowed_mime_types = array_keys( ! empty( $field['allowed_mime_types'] ) ? $fie
4
  $field_name = isset( $field['name'] ) ? $field['name'] : $key;
5
  $field_name .= ! empty( $field['multiple'] ) ? '[]' : '';
6
 
7
- if ( ! empty( $field['ajax'] ) ) {
8
  wp_enqueue_script( 'wp-job-manager-ajax-file-upload' );
9
  $classes[] = 'wp-job-manager-file-upload';
10
  }
@@ -28,4 +28,4 @@ if ( ! empty( $field['ajax'] ) ) {
28
  <?php else : ?>
29
  <?php printf( __( 'Maximum file size: %s.', 'wp-job-manager' ), size_format( wp_max_upload_size() ) ); ?>
30
  <?php endif; ?>
31
- </small>
4
  $field_name = isset( $field['name'] ) ? $field['name'] : $key;
5
  $field_name .= ! empty( $field['multiple'] ) ? '[]' : '';
6
 
7
+ if ( ! empty( $field['ajax'] ) && job_manager_user_can_upload_file_via_ajax() ) {
8
  wp_enqueue_script( 'wp-job-manager-ajax-file-upload' );
9
  $classes[] = 'wp-job-manager-file-upload';
10
  }
28
  <?php else : ?>
29
  <?php printf( __( 'Maximum file size: %s.', 'wp-job-manager' ), size_format( wp_max_upload_size() ) ); ?>
30
  <?php endif; ?>
31
+ </small>
templates/job-dashboard.php CHANGED
@@ -20,9 +20,9 @@
20
  <td class="<?php echo esc_attr( $key ); ?>">
21
  <?php if ('job_title' === $key ) : ?>
22
  <?php if ( $job->post_status == 'publish' ) : ?>
23
- <a href="<?php echo get_permalink( $job->ID ); ?>"><?php echo $job->post_title; ?></a>
24
  <?php else : ?>
25
- <?php echo $job->post_title; ?> <small>(<?php the_job_status( $job ); ?>)</small>
26
  <?php endif; ?>
27
  <ul class="job-dashboard-actions">
28
  <?php
20
  <td class="<?php echo esc_attr( $key ); ?>">
21
  <?php if ('job_title' === $key ) : ?>
22
  <?php if ( $job->post_status == 'publish' ) : ?>
23
+ <a href="<?php echo get_permalink( $job->ID ); ?>"><?php echo esc_html( $job->post_title ); ?></a>
24
  <?php else : ?>
25
+ <?php echo esc_html( $job->post_title ); ?> <small>(<?php the_job_status( $job ); ?>)</small>
26
  <?php endif; ?>
27
  <ul class="job-dashboard-actions">
28
  <?php
templates/job-preview.php CHANGED
@@ -5,7 +5,7 @@
5
  <h2><?php _e( 'Preview', 'wp-job-manager' ); ?></h2>
6
  </div>
7
  <div class="job_listing_preview single_job_listing">
8
- <h1><?php the_title(); ?></h1>
9
 
10
  <?php get_job_manager_template_part( 'content-single', 'job_listing' ); ?>
11
 
5
  <h2><?php _e( 'Preview', 'wp-job-manager' ); ?></h2>
6
  </div>
7
  <div class="job_listing_preview single_job_listing">
8
+ <h1><?php echo esc_html( get_the_title() ); ?></h1>
9
 
10
  <?php get_job_manager_template_part( 'content-single', 'job_listing' ); ?>
11
 
wp-job-manager-functions.php CHANGED
@@ -523,6 +523,24 @@ function wp_job_manager_create_account( $args, $deprecated = '' ) {
523
  }
524
  endif;
525
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
526
  /**
527
  * Checks if an the user can post a job. If accounts are required, and reg is enabled, users can post (they signup at the same time).
528
  *
523
  }
524
  endif;
525
 
526
+ /**
527
+ * Checks if the user can upload a file via the Ajax endpoint.
528
+ *
529
+ * @since 1.26.2
530
+ * @return bool
531
+ */
532
+ function job_manager_user_can_upload_file_via_ajax() {
533
+ $can_upload = is_user_logged_in() && job_manager_user_can_post_job();
534
+
535
+ /**
536
+ * Override ability of a user to upload a file via Ajax.
537
+ *
538
+ * @since 1.26.2
539
+ * @param bool $can_upload True if they can upload files from Ajax endpoint.
540
+ */
541
+ return apply_filters( 'job_manager_user_can_upload_file_via_ajax', $can_upload );
542
+ }
543
+
544
  /**
545
  * Checks if an the user can post a job. If accounts are required, and reg is enabled, users can post (they signup at the same time).
546
  *
wp-job-manager.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: WP Job Manager
4
  * Plugin URI: https://wpjobmanager.com/
5
  * Description: Manage job listings from the WordPress admin panel, and allow users to post jobs directly to your site.
6
- * Version: 1.26.1
7
  * Author: Automattic
8
  * Author URI: https://wpjobmanager.com/
9
  * Requires at least: 4.1
@@ -53,7 +53,7 @@ class WP_Job_Manager {
53
  */
54
  public function __construct() {
55
  // Define constants
56
- define( 'JOB_MANAGER_VERSION', '1.26.1' );
57
  define( 'JOB_MANAGER_PLUGIN_DIR', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
58
  define( 'JOB_MANAGER_PLUGIN_URL', untrailingslashit( plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) ) );
59
 
3
  * Plugin Name: WP Job Manager
4
  * Plugin URI: https://wpjobmanager.com/
5
  * Description: Manage job listings from the WordPress admin panel, and allow users to post jobs directly to your site.
6
+ * Version: 1.26.2
7
  * Author: Automattic
8
  * Author URI: https://wpjobmanager.com/
9
  * Requires at least: 4.1
53
  */
54
  public function __construct() {
55
  // Define constants
56
+ define( 'JOB_MANAGER_VERSION', '1.26.2' );
57
  define( 'JOB_MANAGER_PLUGIN_DIR', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
58
  define( 'JOB_MANAGER_PLUGIN_URL', untrailingslashit( plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) ) );
59