WP Job Manager - Version 1.19.0

Version Description

  • Feature - Added html5 required attribute to required fields.
  • Feature - Added compatibility with RP4WP.
  • Fix - Chosen RTL.
  • Fix - Addded additonal check to check edit capabilities.
  • Fix - Add correct step input to submission form.
  • Tweak - Add CSS class to 'showing' bar when shoing all results (no filters).
  • Tweak - Geocode, use sublocality_level_1 as city.
  • Tweak - Don't update slug when editing via the frontend.
  • Tweak - Set default meta data for new jobs.
  • Tweak - Add geolocation data after import with WP ALL Import.
  • Tweak - Filter to disable chosen: job_manager_chosen_enabled
  • Tweak - Login link on job dashboard. job-dashboard-login.php template file.
  • Tweak - Made backend management honour capabilities of users. Props to minderdl.
Download this release

Release Info

Developer mikejolley
Plugin Icon 128x128 WP Job Manager
Version 1.19.0
Comparing to
See all releases

Code changes from version 1.18.0 to 1.19.0

Files changed (37) hide show
  1. assets/css/frontend.css +1 -1
  2. assets/css/frontend.less +15 -1
  3. assets/js/ajax-filters.js +15 -6
  4. assets/js/ajax-filters.min.js +1 -1
  5. includes/admin/class-wp-job-manager-addons.php +1 -1
  6. includes/admin/class-wp-job-manager-cpt.php +26 -20
  7. includes/admin/class-wp-job-manager-writepanels.php +15 -9
  8. includes/class-wp-job-manager-ajax.php +25 -22
  9. includes/class-wp-job-manager-geocode.php +1 -0
  10. includes/class-wp-job-manager-post-types.php +77 -0
  11. includes/class-wp-job-manager-shortcodes.php +2 -1
  12. includes/forms/class-wp-job-manager-form-edit-job.php +2 -1
  13. includes/forms/class-wp-job-manager-form-submit-job.php +32 -24
  14. languages/wp-job-manager-af.mo +0 -0
  15. languages/wp-job-manager-af.po +2 -2
  16. languages/wp-job-manager-de_DE.mo +0 -0
  17. languages/wp-job-manager-de_DE.po +10 -9
  18. languages/wp-job-manager-es_ES.mo +0 -0
  19. languages/wp-job-manager-es_ES.po +5 -4
  20. languages/wp-job-manager-id_ID.mo +0 -0
  21. languages/wp-job-manager-id_ID.po +18 -17
  22. languages/wp-job-manager-ja.mo +0 -0
  23. languages/wp-job-manager-ja.po +5 -5
  24. languages/wp-job-manager-pt_PT.po +1 -1
  25. languages/wp-job-manager.pot +97 -101
  26. readme.txt +17 -2
  27. templates/account-signin.php +1 -1
  28. templates/form-fields/checkbox-field.php +9 -1
  29. templates/form-fields/multiselect-field.php +1 -1
  30. templates/form-fields/password-field.php +10 -1
  31. templates/form-fields/select-field.php +1 -1
  32. templates/form-fields/text-field.php +10 -1
  33. templates/form-fields/textarea-field.php +10 -1
  34. templates/job-dashboard-login.php +5 -0
  35. templates/job-submit.php +1 -1
  36. wp-job-manager-functions.php +2 -2
  37. wp-job-manager.php +18 -10
assets/css/frontend.css CHANGED
@@ -1 +1 @@
1
- .clearfix{zoom:1}.clearfix:after,.clearfix:before{content:"";display:table}.clearfix:after{clear:both}@font-face{font-family:job-manager;src:url(../font/job-manager.eot?4963673);src:url(../font/job-manager.eot?4963673#iefix) format('embedded-opentype'),url(../font/job-manager.woff?4963673) format('woff'),url(../font/job-manager.ttf?4963673) format('truetype'),url(../font/job-manager.svg?4963673#job-manager) format('svg');font-weight:400;font-style:normal}.jm-icon{font-family:job-manager!important;font-style:normal;font-weight:400;speak:none;display:inline-block;text-decoration:inherit;width:1em;text-align:center;font-variant:normal;text-transform:none;line-height:1em}.display-icon{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline}.job-manager-error,.job-manager-info,.job-manager-message{padding:1em 1em 1em 3.5em;margin:0 0 2em;position:relative;-webkit-border-radius:4px;border-radius:4px;background:#fff;background:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#fff));background:-webkit-linear-gradient(#fff,#fff);background:-moz-linear-gradient(center top,#fff 0,#fff 100%);background:-moz-gradient(center top,#fff 0,#fff 100%);color:#666;text-shadow:0 1px 0 #fff;list-style:none outside;zoom:1;width:auto;box-shadow:inset 0 -2px 6px rgba(0,0,0,.05),inset 0 -2px 30px rgba(0,0,0,.015),inset 0 1px 0 #fff,0 1px 2px rgba(0,0,0,.3)}.job-manager-error:after,.job-manager-error:before,.job-manager-info:after,.job-manager-info:before,.job-manager-message:after,.job-manager-message:before{content:"";display:table}.job-manager-error:after,.job-manager-info:after,.job-manager-message:after{clear:both}.job-manager-error:before,.job-manager-info:before,.job-manager-message:before{content:"";height:1.5em;width:1.5em;display:block;position:absolute;top:0;left:1em;font-family:sans-serif;font-size:1em;line-height:1.5;text-align:center;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.2);padding-top:1em;-webkit-border-bottom-left-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-bottom-right-radius:4px;box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.1);-webkit-box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.1);-moz-box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.1)}.job-manager-error li,.job-manager-info li,.job-manager-message li{list-style:none outside;padding-left:0;margin-left:0}.job-manager-error.job-manager-message,.job-manager-info.job-manager-message,.job-manager-message.job-manager-message{border-top:3px solid #8fae1b}.job-manager-error.job-manager-message:before,.job-manager-info.job-manager-message:before,.job-manager-message.job-manager-message:before{background-color:#8fae1b;content:"\2713"}.job-manager-error.job-manager-info,.job-manager-info.job-manager-info,.job-manager-message.job-manager-info{border-top:3px solid #1e85be}.job-manager-error.job-manager-info:before,.job-manager-info.job-manager-info:before,.job-manager-message.job-manager-info:before{background-color:#1e85be;content:"i";font-family:Times,Georgia,serif;font-style:italic}.job-manager-error.job-manager-error,.job-manager-info.job-manager-error,.job-manager-message.job-manager-error{border-top:3px solid #b81c23}.job-manager-error.job-manager-error:before,.job-manager-info.job-manager-error:before,.job-manager-message.job-manager-error:before{background-color:#b81c23;content:"\00d7";font-weight:700}.job-manager-form fieldset{margin:0 0 1em;padding:0 0 1em;line-height:2em;border:0;border-bottom:1px solid #eee;zoom:1}.job-manager-form fieldset:after,.job-manager-form fieldset:before{content:"";display:table}.job-manager-form fieldset:after{clear:both}.job-manager-form fieldset label{display:block;margin:0;width:29%;float:left;vertical-align:middle}.job-manager-form fieldset label small{opacity:.75;font-size:.83em}.job-manager-form fieldset div.field{width:70%;float:right;vertical-align:middle}.job-manager-form fieldset .wp-editor-container{border:1px solid #ccc;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.job-manager-form fieldset .account-sign-in .button{margin-right:.5em}.job-manager-form fieldset .account-sign-in .button:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e808'}.job-manager-form fieldset abbr.required{color:red;font-weight:700;border:0}.job-manager-form fieldset input.input-text,.job-manager-form fieldset select,.job-manager-form fieldset textarea{margin:0;vertical-align:middle;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.job-manager-form fieldset small.description{opacity:.75;font-size:.83em;margin:1.2em 0 0;display:block;line-height:1.2em}.job-manager-form fieldset .job-manager-uploaded-files{display:table}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file{line-height:1.5em;font-style:italic;display:table-row}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-preview{display:table-cell;vertical-align:middle;padding:.5em 0}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-preview img{height:64px;margin:0}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-name{display:table-cell;vertical-align:middle;padding:.5em 0 .5em 1em}.job-manager-form .submit-job{padding:1em 0}.job-manager-form .job-manager-term-checklist{list-style:none outside;max-height:200px;overflow:auto;margin:0}.job-manager-form .job-manager-term-checklist li{list-style:none outside;margin:0;display:block;float:none}.job-manager-form .job-manager-term-checklist li label{width:auto;float:none}.job-manager-form .job-manager-term-checklist li li{margin:0 0 0 2em}div.job_listings{margin-bottom:1em}div.job_listings ul.job_listings{margin:0}ul.job_listings{padding:0;margin:0;border-top:1px solid #eee}ul.job_listings.loading{min-height:96px;border-bottom:1px solid #eee;background:url(../images/ajax-loader.gif) no-repeat center 32px}ul.job_listings li.job_listing,ul.job_listings li.no_job_listings_found{list-style:none outside;padding:0;margin:0;border-bottom:1px solid #eee}ul.job_listings li.job_listing.job_position_filled a,ul.job_listings li.no_job_listings_found.job_position_filled a{opacity:.25}ul.job_listings li.job_listing.no_job_listings_found,ul.job_listings li.no_job_listings_found.no_job_listings_found{padding:1em;border-bottom:1px solid #eee}ul.job_listings li.job_listing a,ul.job_listings li.no_job_listings_found a{display:block;padding:1em 1em 1em 2em;overflow:hidden;zoom:1;position:relative;line-height:1.5em;text-decoration:none}ul.job_listings li.job_listing a:focus,ul.job_listings li.job_listing a:hover,ul.job_listings li.no_job_listings_found a:focus,ul.job_listings li.no_job_listings_found a:hover{background-color:#fcfcfc}ul.job_listings li.job_listing a img.company_logo,ul.job_listings li.no_job_listings_found a img.company_logo{width:42px;height:42px;position:absolute;left:1em;float:left;margin-right:1em;vertical-align:middle;box-shadow:none}ul.job_listings li.job_listing a div.location,ul.job_listings li.job_listing a div.position,ul.job_listings li.job_listing a ul.meta,ul.job_listings li.no_job_listings_found a div.location,ul.job_listings li.no_job_listings_found a div.position,ul.job_listings li.no_job_listings_found a ul.meta{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}ul.job_listings li.job_listing a div.position,ul.job_listings li.no_job_listings_found a div.position{float:left;width:55%;padding:0 0 0 42px;line-height:1.5em}ul.job_listings li.job_listing a div.position h3,ul.job_listings li.no_job_listings_found a div.position h3{margin:0;padding:0;line-height:inherit;font-size:inherit}ul.job_listings li.job_listing a div.position .company,ul.job_listings li.no_job_listings_found a div.position .company{color:#999}ul.job_listings li.job_listing a div.position .company .tagline,ul.job_listings li.no_job_listings_found a div.position .company .tagline{margin-left:.5em}ul.job_listings li.job_listing a div.location,ul.job_listings li.no_job_listings_found a div.location{float:left;text-align:left;width:25%;padding:0 0 0 1em;color:#999;line-height:1.5em}ul.job_listings li.job_listing a .meta,ul.job_listings li.no_job_listings_found a .meta{float:right;text-align:right;width:20%;padding:0 0 0 1em;margin:0;line-height:1.5em;color:#999;list-style:none outside}ul.job_listings li.job_listing a .meta li,ul.job_listings li.no_job_listings_found a .meta li{list-style:none outside;display:block;margin:0}ul.job_listings li.job_listing a .meta .job-type,ul.job_listings li.no_job_listings_found a .meta .job-type{font-weight:700}ul.job_listings li.job_listing.job_position_featured a,ul.job_listings li.no_job_listings_found.job_position_featured a{background:#fefee5}ul.job_listings li.job_listing.job_position_featured a:focus,ul.job_listings li.job_listing.job_position_featured a:hover,ul.job_listings li.no_job_listings_found.job_position_featured a:focus,ul.job_listings li.no_job_listings_found.job_position_featured a:hover{background-color:#fefed8}.widget ul.job_listings li.job_listing a{padding:1em 0}.widget ul.job_listings li.job_listing .position{float:none;width:auto;padding:0}.widget ul.job_listings li.job_listing ul.meta{float:none;width:auto;padding:0;margin:0;text-align:left}.widget ul.job_listings li.job_listing ul.meta li{float:none;display:inline;padding:0;margin:0 .5em 0 0;font-weight:400}.widget ul.job_listings li.job_listing ul.meta li:after{padding:0 0 0 .5em;content:"\2023"}.widget ul.job_listings li.job_listing ul.meta li:last-child:after{content:''}.job-manager .job-type,.job-types .job-type,.job_listing .job-type{color:#f08d3c}.job-manager .full-time,.job-types .full-time,.job_listing .full-time{color:#90da36}.job-manager .part-time,.job-types .part-time,.job_listing .part-time{color:#f08d3c}.job-manager .temporary,.job-types .temporary,.job_listing .temporary{color:#d93674}.job-manager .freelance,.job-types .freelance,.job_listing .freelance{color:#39c}.job-manager .internship,.job-types .internship,.job_listing .internship{color:#6033cc}.single_job_listing .company{position:relative;border:1px solid #eee;padding:1em;margin:0 0 2em;display:block;clear:both;min-height:3em;box-shadow:0 1px 1px rgba(0,0,0,.1)}.single_job_listing .company img{width:3em;height:3em;position:absolute;left:1em;float:left;vertical-align:middle;box-shadow:none}.single_job_listing .company .name{margin:0 0 0 3em;padding:0 0 0 1em;line-height:1.5em}.single_job_listing .company .name a{float:right;margin-left:1em}.single_job_listing .company .tagline{display:block;margin:0 0 0 42px;padding:0 0 0 1em;line-height:1.5em;font-style:italic;color:#999}.single_job_listing .company .website:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e809'}.single_job_listing .company .company_twitter:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e80a'}.single_job_listing .company .company_video{border-top:1px solid #eee;padding:1em 0 0;margin:1em 0 0}.single_job_listing .company .company_video iframe{margin:0;display:block}.single_job_listing .meta{list-style:none outside;padding:0;margin:0 0 1.5em;overflow:hidden;zoom:1;clear:both}.single_job_listing .meta li{margin:0 1em 0 0;padding:.5em;float:left;line-height:1em;color:#999}.single_job_listing .meta .job-type{color:#fff;background-color:#f08d3c}.single_job_listing .meta .full-time{background-color:#90da36}.single_job_listing .meta .part-time{background-color:#f08d3c}.single_job_listing .meta .temporary{background-color:#d93674}.single_job_listing .meta .freelance{background-color:#39c}.single_job_listing .meta .internship{background-color:#6033cc}.single_job_listing .meta .position-filled{color:#b81c23}.single_job_listing .meta .location:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e81d'}.single_job_listing .meta .date-posted:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e80f'}.single_job_listing .meta .position-filled:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e80e'}.single_job_listing .application{padding:0;margin:0 0 1em}.single_job_listing .application .application_button,.single_job_listing .application .application_details{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.single_job_listing .application .application_button{text-align:center;font-size:1.1em;line-height:1em;float:left;margin:0 .5em 20px 0;padding:.90909091em 2em;outline:0}.single_job_listing .application .application_details{clear:both;border:1px solid #eee;padding:.75em 1em 0;margin:0;line-height:1.5em;display:block;position:relative;box-shadow:0 1px 1px rgba(0,0,0,.1)}.single_job_listing .application .application_details p{margin:0 0 .75em}.single_job_listing .application .application_details:before{content:"";position:absolute;margin:-10px 0 0 0;top:0;left:5em;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid #eee}.single_job_listing .application .application_details:after{content:"";position:absolute;margin:-9px 0 0 1px;left:5em;top:0;width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:9px solid #fff}.job_filters{background:#eee;zoom:1}.job_filters:after,.job_filters:before{content:"";display:table}.job_filters:after{clear:both}.job_filters .search_jobs{padding:1em;zoom:1}.job_filters .search_jobs:after,.job_filters .search_jobs:before{content:"";display:table}.job_filters .search_jobs:after{clear:both}.job_filters .search_jobs div{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.job_filters .search_jobs div label{display:none}.job_filters .search_jobs div.filter_first,.job_filters .search_jobs div.search_keywords{float:left;padding-right:.5em;width:50%}.job_filters .search_jobs div.filter_last,.job_filters .search_jobs div.search_location{float:right;padding-left:.5em;width:50%}.job_filters .search_jobs div.filter_wide,.job_filters .search_jobs div.search_categories{padding-top:.5em;clear:both;width:100%}.job_filters .search_jobs div .showing_jobs a{padding:.25em}.job_filters .search_jobs div .showing_jobs a.active{background:#ddd;text-decoration:none}.job_filters .search_jobs input,.job_filters .search_jobs select{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%}.job_filters .job_types{list-style:none outside;margin:0;padding:0;font-size:.83em;background:#f9f9f9;border-top:1px solid #e5e5e5;zoom:1}.job_filters .job_types:after,.job_filters .job_types:before{content:"";display:table}.job_filters .job_types:after{clear:both}.job_filters .job_types li{margin:0;padding:.5em 1em;float:left;border-right:1px solid #eee}.job_filters .job_types li:last-child{border-right:0}.job_filters .showing_jobs{padding:.5em 1em;display:none;font-size:.83em;background:#f9f9f9;border-top:1px solid #e5e5e5}.job_filters .showing_jobs a{float:right;padding-left:10px}div.job_listings .job-manager-pagination{text-align:center;display:block;padding:1em 0;border-bottom:1px solid #eee;line-height:1}div.job_listings .load_more_jobs{text-align:center;display:block;padding:1em 1em 1em 2em;border-bottom:1px solid #eee;font-weight:700}div.job_listings .load_more_jobs.loading{background:url(../images/ajax-loader.gif) no-repeat center}div.job_listings .load_more_jobs.loading strong{visibility:hidden}div.job_listings .load_more_jobs:focus,div.job_listings .load_more_jobs:hover{background-color:#fcfcfc}.job_listing_preview{padding:0 1em 1em;border:5px solid #eee}.entry-content .job_listing_preview_title,.job_listing_preview_title{padding:.5em 1em;vertical-align:middle;position:relative;background:#eee}.entry-content .job_listing_preview_title h2,.job_listing_preview_title h2{margin:0;clear:none}.entry-content .job_listing_preview_title .button,.job_listing_preview_title .button{float:right;margin-left:.25em}.job_summary_shortcode{border:1px solid #ccc;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;text-align:center;position:relative;box-shadow:0 2px 4px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.4);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.job_summary_shortcode.aligncenter{display:block;margin:2em auto}.job_summary_shortcode.alignleft{float:left;margin:0 2em 2em 0}.job_summary_shortcode.alignright{float:right;margin:0 0 2em 2em}.job_summary_shortcode a{text-decoration:none;color:inherit}.job_summary_shortcode img{margin:0;padding:0;display:block;width:100%;-moz-border-radius:0;-webkit-border-radius:0;-moz-border-top-left-radius:3px;-moz-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-radius:0;border-top-left-radius:3px;border-top-right-radius:3px;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}.job_summary_shortcode .job_summary_content{padding:0 1em}.job_summary_shortcode .meta{font-style:italic;color:#777}.job_summary_shortcode .job-type{-moz-border-radius:1em;-webkit-border-radius:1em;border-radius:1em;color:#fff;text-shadow:0 1px 0 rgba(255,255,255,.5);box-shadow:0 2px 4px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.4);position:absolute;top:0;right:0;padding:.5em;height:1em;width:auto;min-width:1em;font-size:1em;text-align:center;vertical-align:middle;line-height:1em;margin:-.5em -.5em 0 0}.job_summary_shortcode .job-type.full-time{background-color:#90da36}.job_summary_shortcode .job-type.part-time{background-color:#f08d3c}.job_summary_shortcode .job-type.temporary{background-color:#d93674}.job_summary_shortcode .job-type.freelance{background-color:#39c}.job_summary_shortcode .job-type.internship{background-color:#6033cc}#job-manager-job-dashboard table ul.job-dashboard-actions{margin:0;padding:0;visibility:hidden;font-size:.92em}#job-manager-job-dashboard table ul.job-dashboard-actions li{float:none;display:inline;padding:0;margin:0 .5em 0 0;font-weight:400;list-style:none outside}#job-manager-job-dashboard table ul.job-dashboard-actions li:after{padding:0 0 0 .5em;content:"\2023"}#job-manager-job-dashboard table ul.job-dashboard-actions li:last-child:after{content:''}#job-manager-job-dashboard table ul.job-dashboard-actions li .job-dashboard-action-delete{color:red}#job-manager-job-dashboard table tr:focus ul.job-dashboard-actions,#job-manager-job-dashboard table tr:hover ul.job-dashboard-actions{visibility:visible}#job-manager-job-dashboard table td,#job-manager-job-dashboard table th{padding:.5em 1em .5em 0}#job-manager-job-dashboard table .job_title small{color:#999}#content nav.job-manager-pagination,#job-manager-job-dashboard table .applications,#job-manager-job-dashboard table .expires,#job-manager-job-dashboard table .filled,nav.job-manager-pagination{text-align:center}#content nav.job-manager-pagination ul,nav.job-manager-pagination ul{display:inline-block;white-space:nowrap;padding:0;clear:both;border-left:1px solid #eee;margin:1px}#content nav.job-manager-pagination ul li,nav.job-manager-pagination ul li{border-right:1px solid #eee;border-top:1px solid #eee;border-bottom:1px solid #eee;padding:0;margin:0;float:left;display:inline;overflow:hidden}#content nav.job-manager-pagination ul li a,#content nav.job-manager-pagination ul li span,nav.job-manager-pagination ul li a,nav.job-manager-pagination ul li span{margin:0;text-decoration:none;line-height:1em;font-size:1em;font-weight:400;padding:.5em;min-width:1em;display:block}#content nav.job-manager-pagination ul li a:focus,#content nav.job-manager-pagination ul li a:hover,#content nav.job-manager-pagination ul li span.current,nav.job-manager-pagination ul li a:focus,nav.job-manager-pagination ul li a:hover,nav.job-manager-pagination ul li span.current{background:#eee;color:#888}@media only screen and (max-width:767px){ul.job_listings li.job_listing a,ul.job_listings li.no_job_listings_found a{padding:1em}ul.job_listings li.job_listing a img.company_logo,ul.job_listings li.no_job_listings_found a img.company_logo{visibility:hidden}ul.job_listings li.job_listing a div.position,ul.job_listings li.no_job_listings_found a div.position{float:left;width:60%;padding:0}ul.job_listings li.job_listing a div.location,ul.job_listings li.no_job_listings_found a div.location{float:right;width:40%;line-height:2em;font-size:.75em;padding:0 0 0 1em;text-align:right}ul.job_listings li.job_listing a .meta,ul.job_listings li.no_job_listings_found a .meta{float:right;width:40%;line-height:2em;font-size:.75em}ul.job_listings li.job_listing a .meta li,ul.job_listings li.no_job_listings_found a .meta li{font-size:1em}}.twenty-eleven ul.job_listings li.job_listing,.twenty-eleven ul.job_listings li.no_job_listings_found{padding:0!important}.twenty-ten .chosen-choices,.twenty-ten .job_types{margin:0!important}
1
+ .clearfix{zoom:1}.clearfix:after,.clearfix:before{content:"";display:table}.clearfix:after{clear:both}@font-face{font-family:job-manager;src:url(../font/job-manager.eot?4963673);src:url(../font/job-manager.eot?4963673#iefix) format('embedded-opentype'),url(../font/job-manager.woff?4963673) format('woff'),url(../font/job-manager.ttf?4963673) format('truetype'),url(../font/job-manager.svg?4963673#job-manager) format('svg');font-weight:400;font-style:normal}.jm-icon{font-family:job-manager!important;font-style:normal;font-weight:400;speak:none;display:inline-block;text-decoration:inherit;width:1em;text-align:center;font-variant:normal;text-transform:none;line-height:1em}.display-icon{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline}.job-manager-error,.job-manager-info,.job-manager-message{padding:1em 1em 1em 3.5em;margin:0 0 2em;position:relative;-webkit-border-radius:4px;border-radius:4px;background:#fff;background:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#fff));background:-webkit-linear-gradient(#fff,#fff);background:-moz-linear-gradient(center top,#fff 0,#fff 100%);background:-moz-gradient(center top,#fff 0,#fff 100%);color:#666;text-shadow:0 1px 0 #fff;list-style:none outside;zoom:1;width:auto;box-shadow:inset 0 -2px 6px rgba(0,0,0,.05),inset 0 -2px 30px rgba(0,0,0,.015),inset 0 1px 0 #fff,0 1px 2px rgba(0,0,0,.3)}.job-manager-error:after,.job-manager-error:before,.job-manager-info:after,.job-manager-info:before,.job-manager-message:after,.job-manager-message:before{content:"";display:table}.job-manager-error:after,.job-manager-info:after,.job-manager-message:after{clear:both}.job-manager-error:before,.job-manager-info:before,.job-manager-message:before{content:"";height:1.5em;width:1.5em;display:block;position:absolute;top:0;left:1em;font-family:sans-serif;font-size:1em;line-height:1.5;text-align:center;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.2);padding-top:1em;-webkit-border-bottom-left-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-bottom-right-radius:4px;box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.1);-webkit-box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.1);-moz-box-shadow:inset 0 -1px 0 0 rgba(0,0,0,.1)}.job-manager-error li,.job-manager-info li,.job-manager-message li{list-style:none outside;padding-left:0;margin-left:0}.job-manager-error.job-manager-message,.job-manager-info.job-manager-message,.job-manager-message.job-manager-message{border-top:3px solid #8fae1b}.job-manager-error.job-manager-message:before,.job-manager-info.job-manager-message:before,.job-manager-message.job-manager-message:before{background-color:#8fae1b;content:"\2713"}.job-manager-error.job-manager-info,.job-manager-info.job-manager-info,.job-manager-message.job-manager-info{border-top:3px solid #1e85be}.job-manager-error.job-manager-info:before,.job-manager-info.job-manager-info:before,.job-manager-message.job-manager-info:before{background-color:#1e85be;content:"i";font-family:Times,Georgia,serif;font-style:italic}.job-manager-error.job-manager-error,.job-manager-info.job-manager-error,.job-manager-message.job-manager-error{border-top:3px solid #b81c23}.job-manager-error.job-manager-error:before,.job-manager-info.job-manager-error:before,.job-manager-message.job-manager-error:before{background-color:#b81c23;content:"\00d7";font-weight:700}.job-manager-form fieldset{margin:0 0 1em;padding:0 0 1em;line-height:2em;border:0;border-bottom:1px solid #eee;zoom:1}.job-manager-form fieldset:after,.job-manager-form fieldset:before{content:"";display:table}.job-manager-form fieldset:after{clear:both}.job-manager-form fieldset label{display:block;margin:0;width:29%;float:left;vertical-align:middle}.job-manager-form fieldset label small{opacity:.75;font-size:.83em}.job-manager-form fieldset div.field{width:70%;float:right;vertical-align:middle}.job-manager-form fieldset .wp-editor-container{border:1px solid #ccc;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.job-manager-form fieldset .account-sign-in .button{margin-right:.5em}.job-manager-form fieldset .account-sign-in .button:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e808'}.job-manager-form fieldset abbr.required{color:red;font-weight:700;border:0}.job-manager-form fieldset input.input-text,.job-manager-form fieldset select,.job-manager-form fieldset textarea{margin:0;vertical-align:middle;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.job-manager-form fieldset small.description{opacity:.75;font-size:.83em;margin:1.2em 0 0;display:block;line-height:1.2em}.job-manager-form fieldset .job-manager-uploaded-files{display:table}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file{line-height:1.5em;font-style:italic;display:table-row}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-preview{display:table-cell;vertical-align:middle;padding:.5em 0}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-preview img{height:64px;margin:0}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-name{display:table-cell;vertical-align:middle;padding:.5em 0 .5em 1em}.job-manager-form .submit-job{padding:1em 0}.job-manager-form .job-manager-term-checklist{list-style:none outside;max-height:200px;overflow:auto;margin:0}.job-manager-form .job-manager-term-checklist li{list-style:none outside;margin:0;display:block;float:none}.job-manager-form .job-manager-term-checklist li label{width:auto;float:none}.job-manager-form .job-manager-term-checklist li li{margin:0 0 0 2em}div.job_listings{margin-bottom:1em}div.job_listings ul.job_listings{margin:0}.rp4wp-related-job_listing>ul,ul.job_listings{padding:0;margin:0;border-top:1px solid #eee}.rp4wp-related-job_listing>ul.loading,ul.job_listings.loading{min-height:96px;border-bottom:1px solid #eee;background:url(../images/ajax-loader.gif) no-repeat center 32px}.rp4wp-related-job_listing>ul li.job_listing,.rp4wp-related-job_listing>ul li.no_job_listings_found,ul.job_listings li.job_listing,ul.job_listings li.no_job_listings_found{list-style:none outside;padding:0;margin:0;border-bottom:1px solid #eee}.rp4wp-related-job_listing>ul li.job_listing.job_position_filled a,.rp4wp-related-job_listing>ul li.no_job_listings_found.job_position_filled a,ul.job_listings li.job_listing.job_position_filled a,ul.job_listings li.no_job_listings_found.job_position_filled a{opacity:.25}.rp4wp-related-job_listing>ul li.job_listing.no_job_listings_found,.rp4wp-related-job_listing>ul li.no_job_listings_found.no_job_listings_found,ul.job_listings li.job_listing.no_job_listings_found,ul.job_listings li.no_job_listings_found.no_job_listings_found{padding:1em;border-bottom:1px solid #eee}.rp4wp-related-job_listing>ul li.job_listing a,.rp4wp-related-job_listing>ul li.no_job_listings_found a,ul.job_listings li.job_listing a,ul.job_listings li.no_job_listings_found a{display:block;padding:1em 1em 1em 2em;border:0;overflow:hidden;zoom:1;position:relative;line-height:1.5em;text-decoration:none}.rp4wp-related-job_listing>ul li.job_listing a:focus,.rp4wp-related-job_listing>ul li.job_listing a:hover,.rp4wp-related-job_listing>ul li.no_job_listings_found a:focus,.rp4wp-related-job_listing>ul li.no_job_listings_found a:hover,ul.job_listings li.job_listing a:focus,ul.job_listings li.job_listing a:hover,ul.job_listings li.no_job_listings_found a:focus,ul.job_listings li.no_job_listings_found a:hover{background-color:#fcfcfc}.rp4wp-related-job_listing>ul li.job_listing a img.company_logo,.rp4wp-related-job_listing>ul li.no_job_listings_found a img.company_logo,ul.job_listings li.job_listing a img.company_logo,ul.job_listings li.no_job_listings_found a img.company_logo{width:42px;height:42px;position:absolute;left:1em;float:left;margin-right:1em;vertical-align:middle;box-shadow:none}.rp4wp-related-job_listing>ul li.job_listing a div.location,.rp4wp-related-job_listing>ul li.job_listing a div.position,.rp4wp-related-job_listing>ul li.job_listing a ul.meta,.rp4wp-related-job_listing>ul li.no_job_listings_found a div.location,.rp4wp-related-job_listing>ul li.no_job_listings_found a div.position,.rp4wp-related-job_listing>ul li.no_job_listings_found a ul.meta,ul.job_listings li.job_listing a div.location,ul.job_listings li.job_listing a div.position,ul.job_listings li.job_listing a ul.meta,ul.job_listings li.no_job_listings_found a div.location,ul.job_listings li.no_job_listings_found a div.position,ul.job_listings li.no_job_listings_found a ul.meta{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.rp4wp-related-job_listing>ul li.job_listing a div.position,.rp4wp-related-job_listing>ul li.no_job_listings_found a div.position,ul.job_listings li.job_listing a div.position,ul.job_listings li.no_job_listings_found a div.position{float:left;width:55%;padding:0 0 0 42px;line-height:1.5em}.rp4wp-related-job_listing>ul li.job_listing a div.position h3,.rp4wp-related-job_listing>ul li.no_job_listings_found a div.position h3,ul.job_listings li.job_listing a div.position h3,ul.job_listings li.no_job_listings_found a div.position h3{margin:0;padding:0;line-height:inherit;font-size:inherit}.rp4wp-related-job_listing>ul li.job_listing a div.position .company,.rp4wp-related-job_listing>ul li.no_job_listings_found a div.position .company,ul.job_listings li.job_listing a div.position .company,ul.job_listings li.no_job_listings_found a div.position .company{color:#999}.rp4wp-related-job_listing>ul li.job_listing a div.position .company .tagline,.rp4wp-related-job_listing>ul li.no_job_listings_found a div.position .company .tagline,ul.job_listings li.job_listing a div.position .company .tagline,ul.job_listings li.no_job_listings_found a div.position .company .tagline{margin-left:.5em}.rp4wp-related-job_listing>ul li.job_listing a div.location,.rp4wp-related-job_listing>ul li.no_job_listings_found a div.location,ul.job_listings li.job_listing a div.location,ul.job_listings li.no_job_listings_found a div.location{float:left;text-align:left;width:25%;padding:0 0 0 1em;color:#999;line-height:1.5em}.rp4wp-related-job_listing>ul li.job_listing a .meta,.rp4wp-related-job_listing>ul li.no_job_listings_found a .meta,ul.job_listings li.job_listing a .meta,ul.job_listings li.no_job_listings_found a .meta{float:right;text-align:right;width:20%;padding:0 0 0 1em;margin:0;line-height:1.5em;color:#999;list-style:none outside}.rp4wp-related-job_listing>ul li.job_listing a .meta li,.rp4wp-related-job_listing>ul li.no_job_listings_found a .meta li,ul.job_listings li.job_listing a .meta li,ul.job_listings li.no_job_listings_found a .meta li{list-style:none outside;display:block;margin:0}.rp4wp-related-job_listing>ul li.job_listing a .meta .job-type,.rp4wp-related-job_listing>ul li.no_job_listings_found a .meta .job-type,ul.job_listings li.job_listing a .meta .job-type,ul.job_listings li.no_job_listings_found a .meta .job-type{font-weight:700}.rp4wp-related-job_listing>ul li.job_listing.job_position_featured a,.rp4wp-related-job_listing>ul li.no_job_listings_found.job_position_featured a,ul.job_listings li.job_listing.job_position_featured a,ul.job_listings li.no_job_listings_found.job_position_featured a{background:#fefee5}.rp4wp-related-job_listing>ul li.job_listing.job_position_featured a:focus,.rp4wp-related-job_listing>ul li.job_listing.job_position_featured a:hover,.rp4wp-related-job_listing>ul li.no_job_listings_found.job_position_featured a:focus,.rp4wp-related-job_listing>ul li.no_job_listings_found.job_position_featured a:hover,ul.job_listings li.job_listing.job_position_featured a:focus,ul.job_listings li.job_listing.job_position_featured a:hover,ul.job_listings li.no_job_listings_found.job_position_featured a:focus,ul.job_listings li.no_job_listings_found.job_position_featured a:hover{background-color:#fefed8}.widget ul.job_listings li.job_listing a{padding:1em 0}.widget ul.job_listings li.job_listing .position{float:none;width:auto;padding:0}.widget ul.job_listings li.job_listing ul.meta{float:none;width:auto;padding:0;margin:0;text-align:left}.widget ul.job_listings li.job_listing ul.meta li{float:none;display:inline;padding:0;margin:0 .5em 0 0;font-weight:400}.widget ul.job_listings li.job_listing ul.meta li:after{padding:0 0 0 .5em;content:"\2023"}.widget ul.job_listings li.job_listing ul.meta li:last-child:after{content:''}.job-manager .job-type,.job-types .job-type,.job_listing .job-type{color:#f08d3c}.job-manager .full-time,.job-types .full-time,.job_listing .full-time{color:#90da36}.job-manager .part-time,.job-types .part-time,.job_listing .part-time{color:#f08d3c}.job-manager .temporary,.job-types .temporary,.job_listing .temporary{color:#d93674}.job-manager .freelance,.job-types .freelance,.job_listing .freelance{color:#39c}.job-manager .internship,.job-types .internship,.job_listing .internship{color:#6033cc}.single_job_listing .company{position:relative;border:1px solid #eee;padding:1em;margin:0 0 2em;display:block;clear:both;min-height:5em;box-shadow:0 1px 1px rgba(0,0,0,.1)}.single_job_listing .company img{width:3em;height:3em;position:absolute;left:1em;float:left;vertical-align:middle;box-shadow:none}.single_job_listing .company .name{margin:0 0 0 3em;padding:0 0 0 1em;line-height:1.5em}.single_job_listing .company .name a{float:right;margin-left:1em}.single_job_listing .company .tagline{display:block;margin:0 0 0 42px;padding:0 0 0 1em;line-height:1.5em;font-style:italic;color:#999}.single_job_listing .company .website:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e809'}.single_job_listing .company .company_twitter:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e80a'}.single_job_listing .company .company_video{border-top:1px solid #eee;padding:1em 0 0;margin:1em 0 0}.single_job_listing .company .company_video iframe{margin:0;display:block}.single_job_listing .meta{list-style:none outside;padding:0;margin:0 0 1.5em;overflow:hidden;zoom:1;clear:both}.single_job_listing .meta li{margin:0 1em 0 0;padding:.5em;float:left;line-height:1em;color:#999}.single_job_listing .meta .job-type{color:#fff;background-color:#f08d3c}.single_job_listing .meta .full-time{background-color:#90da36}.single_job_listing .meta .part-time{background-color:#f08d3c}.single_job_listing .meta .temporary{background-color:#d93674}.single_job_listing .meta .freelance{background-color:#39c}.single_job_listing .meta .internship{background-color:#6033cc}.single_job_listing .meta .position-filled{color:#b81c23}.single_job_listing .meta .location:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e81d'}.single_job_listing .meta .date-posted:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e80f'}.single_job_listing .meta .position-filled:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e80e'}.single_job_listing .application{padding:0;margin:0 0 1em}.single_job_listing .application .application_button,.single_job_listing .application .application_details{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.single_job_listing .application .application_button{text-align:center;font-size:1.1em;line-height:1em;float:left;margin:0 .5em 20px 0;padding:.90909091em 2em;outline:0}.single_job_listing .application .application_details{clear:both;border:1px solid #eee;padding:.75em 1em 0;margin:0;line-height:1.5em;display:block;position:relative;box-shadow:0 1px 1px rgba(0,0,0,.1)}.single_job_listing .application .application_details p{margin:0 0 .75em}.single_job_listing .application .application_details:before{content:"";position:absolute;margin:-10px 0 0 0;top:0;left:5em;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:10px solid #eee}.single_job_listing .application .application_details:after{content:"";position:absolute;margin:-9px 0 0 1px;left:5em;top:0;width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:9px solid #fff}.job_filters{background:#eee;zoom:1}.job_filters:after,.job_filters:before{content:"";display:table}.job_filters:after{clear:both}.job_filters .search_jobs{padding:1em;zoom:1}.job_filters .search_jobs:after,.job_filters .search_jobs:before{content:"";display:table}.job_filters .search_jobs:after{clear:both}.job_filters .search_jobs div{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.job_filters .search_jobs div label{display:none}.job_filters .search_jobs div.filter_first,.job_filters .search_jobs div.search_keywords{float:left;padding-right:.5em;width:50%}.job_filters .search_jobs div.filter_last,.job_filters .search_jobs div.search_location{float:right;padding-left:.5em;width:50%}.job_filters .search_jobs div.filter_wide,.job_filters .search_jobs div.search_categories{padding-top:.5em;clear:both;width:100%}.job_filters .search_jobs div .showing_jobs a{padding:.25em}.job_filters .search_jobs div .showing_jobs a.active{background:#ddd;text-decoration:none}.job_filters .search_jobs input,.job_filters .search_jobs select{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%}.job_filters .job_types{list-style:none outside;margin:0;padding:0;font-size:.83em;background:#f9f9f9;border-top:1px solid #e5e5e5;zoom:1}.job_filters .job_types:after,.job_filters .job_types:before{content:"";display:table}.job_filters .job_types:after{clear:both}.job_filters .job_types li{margin:0;padding:.5em 1em;float:left;border-right:1px solid #eee}.job_filters .job_types li:last-child{border-right:0}.job_filters .showing_jobs{padding:.5em 1em;display:none;font-size:.83em;background:#f9f9f9;border-top:1px solid #e5e5e5}.job_filters .showing_jobs a{float:right;padding-left:10px;border:0}div.job_listings .job-manager-pagination{text-align:center;display:block;padding:1em 0;border-bottom:1px solid #eee;line-height:1}div.job_listings .load_more_jobs{text-align:center;display:block;padding:1em 1em 1em 2em;border-bottom:1px solid #eee;font-weight:700}div.job_listings .load_more_jobs.loading{background:url(../images/ajax-loader.gif) no-repeat center}div.job_listings .load_more_jobs.loading strong{visibility:hidden}div.job_listings .load_more_jobs:focus,div.job_listings .load_more_jobs:hover{background-color:#fcfcfc;border-bottom:1px solid #eee}.job_listing_preview{padding:0 1em 1em;border:5px solid #eee}.entry-content .job_listing_preview_title,.job_listing_preview_title{padding:.5em 1em;vertical-align:middle;position:relative;background:#eee}.entry-content .job_listing_preview_title h2,.job_listing_preview_title h2{margin:0;clear:none}.entry-content .job_listing_preview_title .button,.job_listing_preview_title .button{float:right;margin-left:.25em}.job_summary_shortcode{border:1px solid #ccc;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;text-align:center;position:relative;box-shadow:0 2px 4px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.4);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.job_summary_shortcode.aligncenter{display:block;margin:2em auto}.job_summary_shortcode.alignleft{float:left;margin:0 2em 2em 0}.job_summary_shortcode.alignright{float:right;margin:0 0 2em 2em}.job_summary_shortcode a{text-decoration:none;color:inherit}.job_summary_shortcode img{margin:0;padding:0;display:block;width:100%;-moz-border-radius:0;-webkit-border-radius:0;-moz-border-top-left-radius:3px;-moz-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-radius:0;border-top-left-radius:3px;border-top-right-radius:3px;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}.job_summary_shortcode .job_summary_content{padding:0 1em}.job_summary_shortcode .meta{font-style:italic;color:#777}.job_summary_shortcode .job-type{-moz-border-radius:1em;-webkit-border-radius:1em;border-radius:1em;color:#fff;text-shadow:0 1px 0 rgba(255,255,255,.5);box-shadow:0 2px 4px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.4);position:absolute;top:0;right:0;padding:.5em;height:1em;width:auto;min-width:1em;font-size:1em;text-align:center;vertical-align:middle;line-height:1em;margin:-.5em -.5em 0 0}.job_summary_shortcode .job-type.full-time{background-color:#90da36}.job_summary_shortcode .job-type.part-time{background-color:#f08d3c}.job_summary_shortcode .job-type.temporary{background-color:#d93674}.job_summary_shortcode .job-type.freelance{background-color:#39c}.job_summary_shortcode .job-type.internship{background-color:#6033cc}#job-manager-job-dashboard .account-sign-in .button{margin-right:.5em}#job-manager-job-dashboard .account-sign-in .button:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:job-manager!important;text-decoration:none;font-weight:400;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\e808'}#job-manager-job-dashboard table ul.job-dashboard-actions{margin:0;padding:0;visibility:hidden;font-size:.92em}#job-manager-job-dashboard table ul.job-dashboard-actions li{float:none;display:inline;padding:0;margin:0 .5em 0 0;font-weight:400;list-style:none outside}#job-manager-job-dashboard table ul.job-dashboard-actions li:after{padding:0 0 0 .5em;content:"\2023"}#job-manager-job-dashboard table ul.job-dashboard-actions li:last-child:after{content:''}#job-manager-job-dashboard table ul.job-dashboard-actions li .job-dashboard-action-delete{color:red}#job-manager-job-dashboard table tr:focus ul.job-dashboard-actions,#job-manager-job-dashboard table tr:hover ul.job-dashboard-actions{visibility:visible}#job-manager-job-dashboard table td,#job-manager-job-dashboard table th{padding:.5em 1em .5em 0}#job-manager-job-dashboard table .job_title small{color:#999}#content nav.job-manager-pagination,#job-manager-job-dashboard table .applications,#job-manager-job-dashboard table .expires,#job-manager-job-dashboard table .filled,nav.job-manager-pagination{text-align:center}#content nav.job-manager-pagination ul,nav.job-manager-pagination ul{display:inline-block;white-space:nowrap;padding:0;clear:both;border-left:1px solid #eee;margin:1px}#content nav.job-manager-pagination ul li,nav.job-manager-pagination ul li{border-right:1px solid #eee;border-top:1px solid #eee;border-bottom:1px solid #eee;padding:0;margin:0;float:left;display:inline;overflow:hidden}#content nav.job-manager-pagination ul li a,#content nav.job-manager-pagination ul li span,nav.job-manager-pagination ul li a,nav.job-manager-pagination ul li span{margin:0;text-decoration:none;line-height:1em;font-size:1em;font-weight:400;padding:.5em;min-width:1em;display:block;border:0}#content nav.job-manager-pagination ul li a:focus,#content nav.job-manager-pagination ul li a:hover,#content nav.job-manager-pagination ul li span.current,nav.job-manager-pagination ul li a:focus,nav.job-manager-pagination ul li a:hover,nav.job-manager-pagination ul li span.current{background:#eee;color:#888}@media only screen and (max-width:767px){ul.job_listings li.job_listing a,ul.job_listings li.no_job_listings_found a{padding:1em}ul.job_listings li.job_listing a img.company_logo,ul.job_listings li.no_job_listings_found a img.company_logo{visibility:hidden}ul.job_listings li.job_listing a div.position,ul.job_listings li.no_job_listings_found a div.position{float:left;width:60%;padding:0}ul.job_listings li.job_listing a div.location,ul.job_listings li.no_job_listings_found a div.location{float:right;width:40%;line-height:2em;font-size:.75em;padding:0 0 0 1em;text-align:right}ul.job_listings li.job_listing a .meta,ul.job_listings li.no_job_listings_found a .meta{float:right;width:40%;line-height:2em;font-size:.75em}ul.job_listings li.job_listing a .meta li,ul.job_listings li.no_job_listings_found a .meta li{font-size:1em}}.twenty-eleven ul.job_listings li.job_listing,.twenty-eleven ul.job_listings li.no_job_listings_found{padding:0!important}.twenty-ten .chosen-choices,.twenty-ten .job_types{margin:0!important}
assets/css/frontend.less CHANGED
@@ -211,6 +211,7 @@ div.job_listings {
211
  margin: 0;
212
  }
213
  }
 
214
  ul.job_listings {
215
  padding: 0;
216
  margin: 0;
@@ -239,6 +240,7 @@ ul.job_listings {
239
  a {
240
  display: block;
241
  padding: 1em 1em 1em 2em;
 
242
  overflow: hidden;
243
  zoom: 1;
244
  position: relative;
@@ -383,7 +385,7 @@ ul.job_listings {
383
  margin: 0 0 2em;
384
  display: block;
385
  clear: both;
386
- min-height: 3em;
387
  box-shadow: 0 1px 1px rgba(0,0,0,0.1);
388
 
389
  img {
@@ -615,6 +617,7 @@ ul.job_listings {
615
  a {
616
  float: right;
617
  padding-left: 10px;
 
618
  }
619
  }
620
  }
@@ -640,6 +643,7 @@ div.job_listings {
640
  }
641
  &:hover, &:focus {
642
  background-color: #fcfcfc;
 
643
  }
644
  }
645
  }
@@ -758,6 +762,15 @@ div.job_listings {
758
  }
759
 
760
  #job-manager-job-dashboard {
 
 
 
 
 
 
 
 
 
761
  table {
762
  ul.job-dashboard-actions {
763
  margin: 0;
@@ -829,6 +842,7 @@ nav.job-manager-pagination, #content nav.job-manager-pagination {
829
  padding: .5em;
830
  min-width: 1em;
831
  display: block;
 
832
  }
833
  span.current, a:hover, a:focus {
834
  background: #eee;
211
  margin: 0;
212
  }
213
  }
214
+ .rp4wp-related-job_listing > ul,
215
  ul.job_listings {
216
  padding: 0;
217
  margin: 0;
240
  a {
241
  display: block;
242
  padding: 1em 1em 1em 2em;
243
+ border: 0;
244
  overflow: hidden;
245
  zoom: 1;
246
  position: relative;
385
  margin: 0 0 2em;
386
  display: block;
387
  clear: both;
388
+ min-height: 5em;
389
  box-shadow: 0 1px 1px rgba(0,0,0,0.1);
390
 
391
  img {
617
  a {
618
  float: right;
619
  padding-left: 10px;
620
+ border: 0;
621
  }
622
  }
623
  }
643
  }
644
  &:hover, &:focus {
645
  background-color: #fcfcfc;
646
+ border-bottom: 1px solid #eee;
647
  }
648
  }
649
  }
762
  }
763
 
764
  #job-manager-job-dashboard {
765
+ .account-sign-in {
766
+ .button {
767
+ margin-right: .5em;
768
+ &:before {
769
+ .display-icon;
770
+ content: '\e808';
771
+ }
772
+ }
773
+ }
774
  table {
775
  ul.job-dashboard-actions {
776
  margin: 0;
842
  padding: .5em;
843
  min-width: 1em;
844
  display: block;
845
+ border: 0;
846
  }
847
  span.current, a:hover, a:focus {
848
  background: #eee;
assets/js/ajax-filters.js CHANGED
@@ -34,12 +34,12 @@ jQuery( document ).ready( function ( $ ) {
34
  } );
35
 
36
  var categories = form.find( ':input[name^=search_categories], :input[name^=search_categories]' ).map( function () {
37
- return $( this ).val();
38
  } ).get();
39
- var keywords = '';
40
- var location = '';
41
- var $keywords = form.find( ':input[name=search_keywords]' );
42
- var $location = form.find( ':input[name=search_location]' );
43
 
44
  // Workaround placeholder scripts
45
  if ( $keywords.val() !== $keywords.attr( 'placeholder' ) ) {
@@ -110,11 +110,17 @@ jQuery( document ).ready( function ( $ ) {
110
  var result = $.parseJSON( response );
111
 
112
  if ( result.showing ) {
113
- $( showing ).show().html( '' ).append( '<span>' + result.showing + '</span>' + result.showing_links );
114
  } else {
115
  $( showing ).hide();
116
  }
117
 
 
 
 
 
 
 
118
  if ( result.html ) {
119
  if ( append ) {
120
  $( results ).append( result.html );
@@ -209,6 +215,9 @@ jQuery( document ).ready( function ( $ ) {
209
  } );
210
 
211
  if ( $.isFunction( $.fn.chosen ) ) {
 
 
 
212
  $( 'select[name^="search_categories"]' ).chosen();
213
  }
214
  } );
34
  } );
35
 
36
  var categories = form.find( ':input[name^=search_categories], :input[name^=search_categories]' ).map( function () {
37
+ return $( this ).val();
38
  } ).get();
39
+ var keywords = '';
40
+ var location = '';
41
+ var $keywords = form.find( ':input[name=search_keywords]' );
42
+ var $location = form.find( ':input[name=search_location]' );
43
 
44
  // Workaround placeholder scripts
45
  if ( $keywords.val() !== $keywords.attr( 'placeholder' ) ) {
110
  var result = $.parseJSON( response );
111
 
112
  if ( result.showing ) {
113
+ $( showing ).show().html( '<span>' + result.showing + '</span>' + result.showing_links );
114
  } else {
115
  $( showing ).hide();
116
  }
117
 
118
+ if ( result.showing_all ) {
119
+ $( showing ).addClass( 'wp-job-manager-showing-all' );
120
+ } else {
121
+ $( showing ).removeClass( 'wp-job-manager-showing-all' );
122
+ }
123
+
124
  if ( result.html ) {
125
  if ( append ) {
126
  $( results ).append( result.html );
215
  } );
216
 
217
  if ( $.isFunction( $.fn.chosen ) ) {
218
+ if ( job_manager_ajax_filters.is_rtl == 1 ) {
219
+ $( 'select[name^="search_categories"]' ).addClass( 'chosen-rtl' );
220
+ }
221
  $( 'select[name^="search_categories"]' ).chosen();
222
  }
223
  } );
assets/js/ajax-filters.min.js CHANGED
@@ -1 +1 @@
1
- jQuery(document).ready(function(a){var b=[];a(".job_listings").on("update_results",function(c,d,e){var f="",g=a(this),h=g.find(".job_filters"),i=g.find(".showing_jobs"),j=g.find(".job_listings"),k=g.data("per_page"),l=g.data("orderby"),m=g.data("order"),n=g.data("featured"),o=a("div.job_listings").index(this);if(b[o]&&b[o].abort(),e?a(".load_more_jobs",g).addClass("loading"):(a(j).addClass("loading"),a("li.job_listing, li.no_job_listings_found",j).css("visibility","hidden")),1==g.data("show_filters")){var p=[];a(':input[name="filter_job_type[]"]:checked, :input[name="filter_job_type[]"][type="hidden"]',h).each(function(){p.push(a(this).val())});var q=h.find(":input[name^=search_categories], :input[name^=search_categories]").map(function(){return a(this).val()}).get(),r="",s="",t=h.find(":input[name=search_keywords]"),u=h.find(":input[name=search_location]");t.val()!==t.attr("placeholder")&&(r=t.val()),u.val()!==u.attr("placeholder")&&(s=u.val()),f={action:"job_manager_get_listings",search_keywords:r,search_location:s,search_categories:q,filter_job_type:p,per_page:k,orderby:l,order:m,page:d,featured:n,show_pagination:g.data("show_pagination"),form_data:h.serialize()}}else{var q=g.data("categories"),r=g.data("keywords"),s=g.data("location");q&&(q=q.split(",")),f={action:"job_manager_get_listings",search_categories:q,search_keywords:r,search_location:s,per_page:k,orderby:l,order:m,page:d,featured:n,show_pagination:g.data("show_pagination")}}b[o]=a.ajax({type:"POST",url:job_manager_ajax_filters.ajax_url,data:f,success:function(b){if(b)try{b.indexOf("<!--WPJM-->")>=0&&(b=b.split("<!--WPJM-->")[1]),b.indexOf("<!--WPJM_END-->")>=0&&(b=b.split("<!--WPJM_END-->")[0]);var c=a.parseJSON(b);c.showing?a(i).show().html("").append("<span>"+c.showing+"</span>"+c.showing_links):a(i).hide(),c.html&&(e?a(j).append(c.html):a(j).html(c.html)),1==g.data("show_pagination")?(g.find(".job-manager-pagination").remove(),c.pagination&&g.append(c.pagination)):(c.found_jobs&&c.max_num_pages!==d?a(".load_more_jobs",g).show().data("page",d):a(".load_more_jobs",g).hide(),a(".load_more_jobs",g).removeClass("loading"),a("li.job_listing",j).css("visibility","visible")),a(j).removeClass("loading"),g.triggerHandler("updated_results",c)}catch(f){}}})}),a("#search_keywords, #search_location, .job_types input, #search_categories").change(function(){var b=a(this).closest("div.job_listings");b.triggerHandler("update_results",[1,!1])}).on("keyup",function(b){13===b.which&&a(this).trigger("change")}),a(".job_filters").each(function(){a(this).find("#search_keywords, #search_location, .job_types input, #search_categories").eq(0).change()}),a(".job_filters").on("click",".reset",function(){var b=a(this).closest("div.job_listings"),c=a(this).closest("form");return c.find(':input[name="search_keywords"]').not(':input[type="hidden"]').val(""),c.find(':input[name="search_location"]').not(':input[type="hidden"]').val(""),c.find(':input[name^="search_categories"]').not(':input[type="hidden"]').val(0).trigger("chosen:updated"),a(':input[name="filter_job_type[]"]',c).not(':input[type="hidden"]').attr("checked","checked"),b.triggerHandler("reset"),b.triggerHandler("update_results",[1,!1]),!1}),a(".load_more_jobs").click(function(){var b=a(this).closest("div.job_listings"),c=a(this).data("page");return c=c?parseInt(c):1,a(this).data("page",c+1),b.triggerHandler("update_results",[c+1,!0]),!1}),a("div.job_listings").on("click",".job-manager-pagination a",function(){var b=a(this).closest("div.job_listings"),c=a(this).data("page");return b.triggerHandler("update_results",[c,!1]),!1}),a.isFunction(a.fn.chosen)&&a('select[name^="search_categories"]').chosen()});
1
+ jQuery(document).ready(function(a){var b=[];a(".job_listings").on("update_results",function(c,d,e){var f="",g=a(this),h=g.find(".job_filters"),i=g.find(".showing_jobs"),j=g.find(".job_listings"),k=g.data("per_page"),l=g.data("orderby"),m=g.data("order"),n=g.data("featured"),o=a("div.job_listings").index(this);if(b[o]&&b[o].abort(),e?a(".load_more_jobs",g).addClass("loading"):(a(j).addClass("loading"),a("li.job_listing, li.no_job_listings_found",j).css("visibility","hidden")),1==g.data("show_filters")){var p=[];a(':input[name="filter_job_type[]"]:checked, :input[name="filter_job_type[]"][type="hidden"]',h).each(function(){p.push(a(this).val())});var q=h.find(":input[name^=search_categories], :input[name^=search_categories]").map(function(){return a(this).val()}).get(),r="",s="",t=h.find(":input[name=search_keywords]"),u=h.find(":input[name=search_location]");t.val()!==t.attr("placeholder")&&(r=t.val()),u.val()!==u.attr("placeholder")&&(s=u.val()),f={action:"job_manager_get_listings",search_keywords:r,search_location:s,search_categories:q,filter_job_type:p,per_page:k,orderby:l,order:m,page:d,featured:n,show_pagination:g.data("show_pagination"),form_data:h.serialize()}}else{var q=g.data("categories"),r=g.data("keywords"),s=g.data("location");q&&(q=q.split(",")),f={action:"job_manager_get_listings",search_categories:q,search_keywords:r,search_location:s,per_page:k,orderby:l,order:m,page:d,featured:n,show_pagination:g.data("show_pagination")}}b[o]=a.ajax({type:"POST",url:job_manager_ajax_filters.ajax_url,data:f,success:function(b){if(b)try{b.indexOf("<!--WPJM-->")>=0&&(b=b.split("<!--WPJM-->")[1]),b.indexOf("<!--WPJM_END-->")>=0&&(b=b.split("<!--WPJM_END-->")[0]);var c=a.parseJSON(b);c.showing?a(i).show().html("<span>"+c.showing+"</span>"+c.showing_links):a(i).hide(),c.showing_all?a(i).addClass("wp-job-manager-showing-all"):a(i).removeClass("wp-job-manager-showing-all"),c.html&&(e?a(j).append(c.html):a(j).html(c.html)),1==g.data("show_pagination")?(g.find(".job-manager-pagination").remove(),c.pagination&&g.append(c.pagination)):(c.found_jobs&&c.max_num_pages!==d?a(".load_more_jobs",g).show().data("page",d):a(".load_more_jobs",g).hide(),a(".load_more_jobs",g).removeClass("loading"),a("li.job_listing",j).css("visibility","visible")),a(j).removeClass("loading"),g.triggerHandler("updated_results",c)}catch(f){}}})}),a("#search_keywords, #search_location, .job_types input, #search_categories").change(function(){var b=a(this).closest("div.job_listings");b.triggerHandler("update_results",[1,!1])}).on("keyup",function(b){13===b.which&&a(this).trigger("change")}),a(".job_filters").each(function(){a(this).find("#search_keywords, #search_location, .job_types input, #search_categories").eq(0).change()}),a(".job_filters").on("click",".reset",function(){var b=a(this).closest("div.job_listings"),c=a(this).closest("form");return c.find(':input[name="search_keywords"]').not(':input[type="hidden"]').val(""),c.find(':input[name="search_location"]').not(':input[type="hidden"]').val(""),c.find(':input[name^="search_categories"]').not(':input[type="hidden"]').val(0).trigger("chosen:updated"),a(':input[name="filter_job_type[]"]',c).not(':input[type="hidden"]').attr("checked","checked"),b.triggerHandler("reset"),b.triggerHandler("update_results",[1,!1]),!1}),a(".load_more_jobs").click(function(){var b=a(this).closest("div.job_listings"),c=a(this).data("page");return c=c?parseInt(c):1,a(this).data("page",c+1),b.triggerHandler("update_results",[c+1,!0]),!1}),a("div.job_listings").on("click",".job-manager-pagination a",function(){var b=a(this).closest("div.job_listings"),c=a(this).data("page");return b.triggerHandler("update_results",[c,!1]),!1}),a.isFunction(a.fn.chosen)&&(1==job_manager_ajax_filters.is_rtl&&a('select[name^="search_categories"]').addClass("chosen-rtl"),a('select[name^="search_categories"]').chosen())});
includes/admin/class-wp-job-manager-addons.php CHANGED
@@ -44,7 +44,7 @@ class WP_Job_Manager_Addons {
44
  break;
45
  }
46
 
47
- $addons = wp_kses_post( utf8_decode( $addons ) );
48
 
49
  if ( $addons ) {
50
  set_transient( 'wp_job_manager_addons_html', $addons, 60*60*24*7 ); // Cached for a week
44
  break;
45
  }
46
 
47
+ $addons = wp_kses_post( $addons );
48
 
49
  if ( $addons ) {
50
  set_transient( 'wp_job_manager_addons_html', $addons, 60*60*24*7 ); // Cached for a week
includes/admin/class-wp-job-manager-cpt.php CHANGED
@@ -76,12 +76,12 @@ class WP_Job_Manager_CPT {
76
  'ID' => $post_id,
77
  'post_status' => 'publish'
78
  );
79
- if ( in_array( get_post_status( $post_id ), array( 'pending', 'pending_payment' ) ) && wp_update_post( $job_data ) ) {
80
  $approved_jobs[] = $post_id;
81
  }
82
  }
83
 
84
- wp_redirect( add_query_arg( 'approve_jobs', $approved_jobs, remove_query_arg( array( 'approved_jobs', 'expired_jobs' ), admin_url( 'edit.php?post_type=job_listing' ) ) ) );
85
  exit;
86
  break;
87
  case 'expire_jobs' :
@@ -96,7 +96,7 @@ class WP_Job_Manager_CPT {
96
  'ID' => $post_id,
97
  'post_status' => 'expired'
98
  );
99
- if ( wp_update_post( $job_data ) )
100
  $expired_jobs[] = $post_id;
101
  }
102
 
@@ -112,7 +112,7 @@ class WP_Job_Manager_CPT {
112
  * Approve a single job
113
  */
114
  public function approve_job() {
115
- if ( ! empty( $_GET['approve_job'] ) && wp_verify_nonce( $_REQUEST['_wpnonce'], 'approve_job' ) && current_user_can( 'edit_post', $_GET['approve_job'] ) ) {
116
  $post_id = absint( $_GET['approve_job'] );
117
  $job_data = array(
118
  'ID' => $post_id,
@@ -324,7 +324,7 @@ class WP_Job_Manager_CPT {
324
  case "job_actions" :
325
  echo '<div class="actions">';
326
  $admin_actions = array();
327
- if ( in_array( $post->post_status, array( 'pending', 'pending_payment' ) ) ) {
328
  $admin_actions['approve'] = array(
329
  'action' => 'approve',
330
  'name' => __( 'Approve', 'wp-job-manager' ),
@@ -332,21 +332,27 @@ class WP_Job_Manager_CPT {
332
  );
333
  }
334
  if ( $post->post_status !== 'trash' ) {
335
- $admin_actions['view'] = array(
336
- 'action' => 'view',
337
- 'name' => __( 'View', 'wp-job-manager' ),
338
- 'url' => get_permalink( $post->ID )
339
- );
340
- $admin_actions['edit'] = array(
341
- 'action' => 'edit',
342
- 'name' => __( 'Edit', 'wp-job-manager' ),
343
- 'url' => get_edit_post_link( $post->ID )
344
- );
345
- $admin_actions['delete'] = array(
346
- 'action' => 'delete',
347
- 'name' => __( 'Delete', 'wp-job-manager' ),
348
- 'url' => get_delete_post_link( $post->ID )
349
- );
 
 
 
 
 
 
350
  }
351
 
352
  $admin_actions = apply_filters( 'job_manager_admin_actions', $admin_actions, $post );
76
  'ID' => $post_id,
77
  'post_status' => 'publish'
78
  );
79
+ if ( in_array( get_post_status( $post_id ), array( 'pending', 'pending_payment' ) ) && current_user_can( 'publish_post', $post_id ) && wp_update_post( $job_data ) ) {
80
  $approved_jobs[] = $post_id;
81
  }
82
  }
83
 
84
+ wp_redirect( add_query_arg( 'approved_jobs', $approved_jobs, remove_query_arg( array( 'approved_jobs', 'expired_jobs' ), admin_url( 'edit.php?post_type=job_listing' ) ) ) );
85
  exit;
86
  break;
87
  case 'expire_jobs' :
96
  'ID' => $post_id,
97
  'post_status' => 'expired'
98
  );
99
+ if ( current_user_can( 'manage_job_listings' ) && wp_update_post( $job_data ) )
100
  $expired_jobs[] = $post_id;
101
  }
102
 
112
  * Approve a single job
113
  */
114
  public function approve_job() {
115
+ if ( ! empty( $_GET['approve_job'] ) && wp_verify_nonce( $_REQUEST['_wpnonce'], 'approve_job' ) && current_user_can( 'publish_post', $_GET['approve_job'] ) ) {
116
  $post_id = absint( $_GET['approve_job'] );
117
  $job_data = array(
118
  'ID' => $post_id,
324
  case "job_actions" :
325
  echo '<div class="actions">';
326
  $admin_actions = array();
327
+ if ( in_array( $post->post_status, array( 'pending', 'pending_payment' ) ) && current_user_can ( 'publish_post', $post->ID ) ) {
328
  $admin_actions['approve'] = array(
329
  'action' => 'approve',
330
  'name' => __( 'Approve', 'wp-job-manager' ),
332
  );
333
  }
334
  if ( $post->post_status !== 'trash' ) {
335
+ if ( current_user_can( 'read_post', $post->ID ) ) {
336
+ $admin_actions['view'] = array(
337
+ 'action' => 'view',
338
+ 'name' => __( 'View', 'wp-job-manager' ),
339
+ 'url' => get_permalink( $post->ID )
340
+ );
341
+ }
342
+ if ( current_user_can( 'edit_post', $post->ID ) ) {
343
+ $admin_actions['edit'] = array(
344
+ 'action' => 'edit',
345
+ 'name' => __( 'Edit', 'wp-job-manager' ),
346
+ 'url' => get_edit_post_link( $post->ID )
347
+ );
348
+ }
349
+ if ( current_user_can( 'delete_post', $post->ID ) ) {
350
+ $admin_actions['delete'] = array(
351
+ 'action' => 'delete',
352
+ 'name' => __( 'Delete', 'wp-job-manager' ),
353
+ 'url' => get_delete_post_link( $post->ID )
354
+ );
355
+ }
356
  }
357
 
358
  $admin_actions = apply_filters( 'job_manager_admin_actions', $admin_actions, $post );
includes/admin/class-wp-job-manager-writepanels.php CHANGED
@@ -26,7 +26,7 @@ class WP_Job_Manager_Writepanels {
26
 
27
  $current_user = wp_get_current_user();
28
 
29
- return apply_filters( 'job_manager_job_listing_data_fields', array(
30
  '_job_location' => array(
31
  'label' => __( 'Location', 'wp-job-manager' ),
32
  'placeholder' => __( 'e.g. "London"', 'wp-job-manager' ),
@@ -67,21 +67,27 @@ class WP_Job_Manager_Writepanels {
67
  '_filled' => array(
68
  'label' => __( 'Position filled?', 'wp-job-manager' ),
69
  'type' => 'checkbox'
70
- ),
71
- '_featured' => array(
 
 
72
  'label' => __( 'Feature this listing?', 'wp-job-manager' ),
73
  'type' => 'checkbox',
74
  'description' => __( 'Featured listings will be sticky during searches, and can be styled differently.', 'wp-job-manager' )
75
- ),
76
- '_job_expires' => array(
77
  'label' => __( 'Expires', 'wp-job-manager' ),
78
  'placeholder' => __( 'yyyy-mm-dd', 'wp-job-manager' )
79
- ),
80
- '_job_author' => array(
 
 
81
  'label' => __( 'Posted by', 'wp-job-manager' ),
82
  'type' => 'author'
83
- )
84
- ) );
 
 
85
  }
86
 
87
  /**
26
 
27
  $current_user = wp_get_current_user();
28
 
29
+ $fields = array(
30
  '_job_location' => array(
31
  'label' => __( 'Location', 'wp-job-manager' ),
32
  'placeholder' => __( 'e.g. "London"', 'wp-job-manager' ),
67
  '_filled' => array(
68
  'label' => __( 'Position filled?', 'wp-job-manager' ),
69
  'type' => 'checkbox'
70
+ )
71
+ );
72
+ if ( $current_user->has_cap( 'manage_job_listings' ) ) {
73
+ $fields['_featured'] = array(
74
  'label' => __( 'Feature this listing?', 'wp-job-manager' ),
75
  'type' => 'checkbox',
76
  'description' => __( 'Featured listings will be sticky during searches, and can be styled differently.', 'wp-job-manager' )
77
+ );
78
+ $fields['_job_expires'] = array(
79
  'label' => __( 'Expires', 'wp-job-manager' ),
80
  'placeholder' => __( 'yyyy-mm-dd', 'wp-job-manager' )
81
+ );
82
+ }
83
+ if ( $current_user->has_cap( 'edit_others_job_listings' ) ) {
84
+ $fields['_job_author'] = array(
85
  'label' => __( 'Posted by', 'wp-job-manager' ),
86
  'type' => 'author'
87
+ );
88
+ }
89
+
90
+ return apply_filters( 'job_manager_job_listing_data_fields', $fields );
91
  }
92
 
93
  /**
includes/class-wp-job-manager-ajax.php CHANGED
@@ -27,6 +27,7 @@ class WP_Job_Manager_Ajax {
27
  $search_categories = isset( $_POST['search_categories'] ) ? $_POST['search_categories'] : '';
28
  $filter_job_types = isset( $_POST['filter_job_type'] ) ? array_filter( array_map( 'sanitize_title', (array) $_POST['filter_job_type'] ) ) : null;
29
  $types = get_job_listing_types();
 
30
 
31
  if ( is_array( $search_categories ) ) {
32
  $search_categories = array_filter( array_map( 'sanitize_text_field', array_map( 'stripslashes', $search_categories ) ) );
@@ -69,7 +70,8 @@ class WP_Job_Manager_Ajax {
69
 
70
  <?php endif;
71
 
72
- $result['html'] = ob_get_clean();
 
73
 
74
  // Generate 'showing' text
75
  $showing_types = array();
@@ -83,41 +85,42 @@ class WP_Job_Manager_Ajax {
83
  }
84
  }
85
 
86
- if ( ! $unmatched ) {
87
- $showing_types = '';
88
- } elseif ( sizeof( $showing_types ) == 1 ) {
89
- $showing_types = implode( ', ', $showing_types ) . ' ';
90
- } else {
91
- $last = array_pop( $showing_types );
92
- $showing_types = implode( ', ', $showing_types );
93
- $showing_types .= " &amp; $last ";
94
  }
95
 
96
- $showing_categories = array();
97
-
98
  if ( $search_categories ) {
 
 
99
  foreach ( $search_categories as $category ) {
100
- if ( ! is_numeric( $category ) ) {
101
- $category_object = get_term_by( 'slug', $category, 'job_listing_category' );
102
- }
103
- if ( is_numeric( $category ) || is_wp_error( $category_object ) || ! $category_object ) {
104
- $category_object = get_term_by( 'id', $category, 'job_listing_category' );
105
- }
106
  if ( ! is_wp_error( $category_object ) ) {
107
  $showing_categories[] = $category_object->name;
108
  }
109
  }
 
 
110
  }
111
 
112
  if ( $search_keywords ) {
113
- $showing_jobs = sprintf( __( 'Showing %s', 'wp-job-manager' ), $showing_types . '&ldquo;' . $search_keywords . '&rdquo; ' . implode( ', ', $showing_categories ) . $wp_post_types['job_listing']->labels->name );
114
- } else {
115
- $showing_jobs = sprintf( __( 'Showing all %s', 'wp-job-manager' ), $showing_types . implode( ', ', $showing_categories ) . ' ' . $wp_post_types['job_listing']->labels->name );
 
 
 
 
116
  }
117
 
118
- $showing_location = $search_location ? sprintf( ' ' . __( 'located in &ldquo;%s&rdquo;', 'wp-job-manager' ), $search_location ) : '';
 
 
119
 
120
- $result['showing'] = apply_filters( 'job_manager_get_listings_custom_filter_text', $showing_jobs . $showing_location );
121
 
122
  // Generate RSS link
123
  $result['showing_links'] = job_manager_get_filtered_links( array(
27
  $search_categories = isset( $_POST['search_categories'] ) ? $_POST['search_categories'] : '';
28
  $filter_job_types = isset( $_POST['filter_job_type'] ) ? array_filter( array_map( 'sanitize_title', (array) $_POST['filter_job_type'] ) ) : null;
29
  $types = get_job_listing_types();
30
+ $post_type_label = $wp_post_types['job_listing']->labels->name;
31
 
32
  if ( is_array( $search_categories ) ) {
33
  $search_categories = array_filter( array_map( 'sanitize_text_field', array_map( 'stripslashes', $search_categories ) ) );
70
 
71
  <?php endif;
72
 
73
+ $result['html'] = ob_get_clean();
74
+ $result['showing'] = array();
75
 
76
  // Generate 'showing' text
77
  $showing_types = array();
85
  }
86
  }
87
 
88
+ if ( sizeof( $showing_types ) == 1 ) {
89
+ $result['showing'][] = implode( ', ', $showing_types );
90
+ } elseif ( $unmatched ) {
91
+ $last_type = array_pop( $showing_types );
92
+ $result['showing'][] = implode( ', ', $showing_types ) . " &amp; $last_type";
 
 
 
93
  }
94
 
 
 
95
  if ( $search_categories ) {
96
+ $showing_categories = array();
97
+
98
  foreach ( $search_categories as $category ) {
99
+ $category_object = get_term_by( is_numeric( $category ) ? 'id' : 'slug', $category, 'job_listing_category' );
100
+
 
 
 
 
101
  if ( ! is_wp_error( $category_object ) ) {
102
  $showing_categories[] = $category_object->name;
103
  }
104
  }
105
+
106
+ $result['showing'][] = implode( ', ', $showing_categories );
107
  }
108
 
109
  if ( $search_keywords ) {
110
+ $result['showing'][] = '&ldquo;' . $search_keywords . '&rdquo;';
111
+ }
112
+
113
+ $result['showing'][] = $post_type_label;
114
+
115
+ if ( $search_location ) {
116
+ $result['showing'][] = sprintf( __( 'located in &ldquo;%s&rdquo;', 'wp-job-manager' ), $search_location );
117
  }
118
 
119
+ if ( 1 === sizeof( $result['showing'] ) ) {
120
+ $result['showing_all'] = true;
121
+ }
122
 
123
+ $result['showing'] = apply_filters( 'job_manager_get_listings_custom_filter_text', sprintf( __( 'Showing all %s', 'wp-job-manager' ), implode( ' ', $result['showing'] ) ) );
124
 
125
  // Generate RSS link
126
  $result['showing_links'] = job_manager_get_filtered_links( array(
includes/class-wp-job-manager-geocode.php CHANGED
@@ -191,6 +191,7 @@ class WP_Job_Manager_Geocode {
191
  else
192
  $address['street'] = $route;
193
  break;
 
194
  case 'locality' :
195
  $address['city'] = sanitize_text_field( $data->long_name );
196
  break;
191
  else
192
  $address['street'] = $route;
193
  break;
194
+ case 'sublocality_level_1' :
195
  case 'locality' :
196
  $address['city'] = sanitize_text_field( $data->long_name );
197
  break;
includes/class-wp-job-manager-post-types.php CHANGED
@@ -31,6 +31,15 @@ class WP_Job_Manager_Post_Types {
31
 
32
  add_filter( 'wp_insert_post_data', array( $this, 'fix_post_name' ), 10, 2 );
33
  add_action( 'update_post_meta', array( $this, 'maybe_generate_geolocation_data' ), 10, 4 );
 
 
 
 
 
 
 
 
 
34
  }
35
 
36
  /**
@@ -478,4 +487,72 @@ class WP_Job_Manager_Post_Types {
478
  }
479
  do_action( 'job_manager_job_location_edited', $object_id, $_meta_value );
480
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
481
  }
31
 
32
  add_filter( 'wp_insert_post_data', array( $this, 'fix_post_name' ), 10, 2 );
33
  add_action( 'update_post_meta', array( $this, 'maybe_generate_geolocation_data' ), 10, 4 );
34
+ add_action( 'wp_insert_post', array( $this, 'maybe_add_default_meta_data' ), 10, 2 );
35
+
36
+ // WP ALL Import
37
+ add_action( 'pmxi_saved_post', array( $this, 'pmxi_saved_post' ), 10, 1 );
38
+
39
+ // RP4WP
40
+ add_filter( 'rp4wp_get_template', array( $this, 'rp4wp_template' ), 10, 3 );
41
+ add_filter( 'rp4wp_related_meta_fields', array( $this, 'rp4wp_related_meta_fields' ), 10, 3 );
42
+ add_filter( 'rp4wp_related_meta_fields_weight', array( $this, 'rp4wp_related_meta_fields_weight' ), 10, 3 );
43
  }
44
 
45
  /**
487
  }
488
  do_action( 'job_manager_job_location_edited', $object_id, $_meta_value );
489
  }
490
+
491
+ /**
492
+ * Maybe set default meta data for job listings
493
+ * @param int $post_id
494
+ * @param WP_Post $post
495
+ */
496
+ public function maybe_add_default_meta_data( $post_id, $post = '' ) {
497
+ if ( empty( $post ) || 'job_listing' === $post->post_type ) {
498
+ add_post_meta( $post_id, '_filled', 0, true );
499
+ add_post_meta( $post_id, '_featured', 0, true );
500
+ }
501
+ }
502
+
503
+ /**
504
+ * After importing via WP ALL Import, add default meta data
505
+ * @param int $post_id
506
+ */
507
+ public function pmxi_saved_post( $post_id ) {
508
+ if ( 'job_listing' === get_post_type( $post_id ) ) {
509
+ $this->maybe_add_default_meta_data( $post_id );
510
+ if ( ! WP_Job_Manager_Geocode::has_location_data( $post_id ) && ( $location = get_post_meta( $post_id, '_job_location', true ) ) ) {
511
+ WP_Job_Manager_Geocode::generate_location_data( $post_id, $location );
512
+ }
513
+ }
514
+ }
515
+
516
+ /**
517
+ * Replace RP4WP template with the template from Job Manager
518
+ * @param string $located
519
+ * @param string $template_name
520
+ * @param array $args
521
+ * @return string
522
+ */
523
+ public function rp4wp_template( $located, $template_name, $args ) {
524
+ if ( 'related-post-default.php' === $template_name && 'job_listing' === $args['related_post']->post_type ) {
525
+ return JOB_MANAGER_PLUGIN_DIR . '/templates/content-job_listing.php';
526
+ }
527
+ return $located;
528
+ }
529
+
530
+ /**
531
+ * Add meta fields for RP4WP to relate jobs by
532
+ * @param array $meta_fields
533
+ * @param int $post_id
534
+ * @param WP_Post $post
535
+ * @return array
536
+ */
537
+ public function rp4wp_related_meta_fields( $meta_fields, $post_id, $post ) {
538
+ if ( 'job_listing' === $post->post_type ) {
539
+ $meta_fields[] = '_company_name';
540
+ $meta_fields[] = '_job_location';
541
+ }
542
+ return $meta_fields;
543
+ }
544
+
545
+ /**
546
+ * Add meta fields for RP4WP to relate jobs by
547
+ * @param int $weight
548
+ * @param WP_Post $post
549
+ * @param string $meta_field
550
+ * @return int
551
+ */
552
+ public function rp4wp_related_meta_fields_weight( $weight, $post, $meta_field ) {
553
+ if ( 'job_listing' === $post->post_type ) {
554
+ $weight = 100;
555
+ }
556
+ return $weight;
557
+ }
558
  }
includes/class-wp-job-manager-shortcodes.php CHANGED
@@ -119,7 +119,8 @@ class WP_Job_Manager_Shortcodes {
119
  */
120
  public function job_dashboard( $atts ) {
121
  if ( ! is_user_logged_in() ) {
122
- return __( 'You need to be signed in to manage your listings.', 'wp-job-manager' );
 
123
  }
124
 
125
  extract( shortcode_atts( array(
119
  */
120
  public function job_dashboard( $atts ) {
121
  if ( ! is_user_logged_in() ) {
122
+ get_job_manager_template( 'job-dashboard-login.php' );
123
+ return;
124
  }
125
 
126
  extract( shortcode_atts( array(
includes/forms/class-wp-job-manager-form-edit-job.php CHANGED
@@ -73,6 +73,7 @@ class WP_Job_Manager_Form_Edit_Job extends WP_Job_Manager_Form_Submit_Job {
73
  'action' => self::get_action(),
74
  'job_fields' => self::get_fields( 'job' ),
75
  'company_fields' => self::get_fields( 'company' ),
 
76
  'submit_button_text' => __( 'Save changes', 'wp-job-manager' )
77
  ) );
78
  }
@@ -96,7 +97,7 @@ class WP_Job_Manager_Form_Edit_Job extends WP_Job_Manager_Form_Submit_Job {
96
  }
97
 
98
  // Update the job
99
- self::save_job( $values['job']['job_title'], $values['job']['job_description'], '', $values );
100
  self::update_job_data( $values );
101
 
102
  // Successful
73
  'action' => self::get_action(),
74
  'job_fields' => self::get_fields( 'job' ),
75
  'company_fields' => self::get_fields( 'company' ),
76
+ 'step' => self::get_step(),
77
  'submit_button_text' => __( 'Save changes', 'wp-job-manager' )
78
  ) );
79
  }
97
  }
98
 
99
  // Update the job
100
+ self::save_job( $values['job']['job_title'], $values['job']['job_description'], '', $values, false );
101
  self::update_job_data( $values );
102
 
103
  // Successful
includes/forms/class-wp-job-manager-form-submit-job.php CHANGED
@@ -535,6 +535,7 @@ class WP_Job_Manager_Form_Submit_Job extends WP_Job_Manager_Form {
535
  'action' => self::get_action(),
536
  'job_fields' => self::get_fields( 'job' ),
537
  'company_fields' => self::get_fields( 'company' ),
 
538
  'submit_button_text' => apply_filters( 'submit_job_form_submit_button_text', __( 'Preview &rarr;', 'wp-job-manager' ) )
539
  ) );
540
  }
@@ -595,39 +596,45 @@ class WP_Job_Manager_Form_Submit_Job extends WP_Job_Manager_Form {
595
  * @param string $post_title
596
  * @param string $post_content
597
  * @param string $status
 
 
598
  */
599
- protected static function save_job( $post_title, $post_content, $status = 'preview', $values = array() ) {
600
- $job_slug = array();
 
 
 
 
 
601
 
602
- // Prepend with company name
603
- if ( ! empty( $values['company']['company_name'] ) ) {
604
- $job_slug[] = $values['company']['company_name'];
605
- }
606
 
607
- // Prepend location
608
- if ( ! empty( $values['job']['job_location'] ) ) {
609
- $job_slug[] = $values['job']['job_location'];
610
- }
611
 
612
- // Prepend with job type
613
- if ( ! empty( $values['job']['job_type'] ) ) {
614
- $job_slug[] = $values['job']['job_type'];
615
- }
616
 
617
- $job_slug[] = $post_title;
 
 
 
618
 
619
- $job_data = apply_filters( 'submit_job_form_save_job_data', array(
620
- 'post_title' => $post_title,
621
- 'post_name' => sanitize_title( implode( '-', $job_slug ) ),
622
- 'post_content' => $post_content,
623
- 'post_type' => 'job_listing',
624
- 'comment_status' => 'closed'
625
- ), $post_title, $post_content, $status, $values );
626
 
627
  if ( $status ) {
628
  $job_data['post_status'] = $status;
629
  }
630
 
 
 
631
  if ( self::$job_id ) {
632
  $job_data['ID'] = self::$job_id;
633
  wp_update_post( $job_data );
@@ -736,11 +743,12 @@ class WP_Job_Manager_Form_Submit_Job extends WP_Job_Manager_Form {
736
  * Preview Step
737
  */
738
  public static function preview() {
739
- global $post;
740
 
741
  if ( self::$job_id ) {
742
 
743
- $post = get_post( self::$job_id );
 
744
  setup_postdata( $post );
745
  $post->post_status = 'preview';
746
  ?>
535
  'action' => self::get_action(),
536
  'job_fields' => self::get_fields( 'job' ),
537
  'company_fields' => self::get_fields( 'company' ),
538
+ 'step' => self::get_step(),
539
  'submit_button_text' => apply_filters( 'submit_job_form_submit_button_text', __( 'Preview &rarr;', 'wp-job-manager' ) )
540
  ) );
541
  }
596
  * @param string $post_title
597
  * @param string $post_content
598
  * @param string $status
599
+ * @param array $values
600
+ * @param bool $update_slug
601
  */
602
+ protected static function save_job( $post_title, $post_content, $status = 'preview', $values = array(), $update_slug = true ) {
603
+ $job_data = array(
604
+ 'post_title' => $post_title,
605
+ 'post_content' => $post_content,
606
+ 'post_type' => 'job_listing',
607
+ 'comment_status' => 'closed'
608
+ );
609
 
610
+ if ( $update_slug ) {
611
+ $job_slug = array();
 
 
612
 
613
+ // Prepend with company name
614
+ if ( ! empty( $values['company']['company_name'] ) ) {
615
+ $job_slug[] = $values['company']['company_name'];
616
+ }
617
 
618
+ // Prepend location
619
+ if ( ! empty( $values['job']['job_location'] ) ) {
620
+ $job_slug[] = $values['job']['job_location'];
621
+ }
622
 
623
+ // Prepend with job type
624
+ if ( ! empty( $values['job']['job_type'] ) ) {
625
+ $job_slug[] = $values['job']['job_type'];
626
+ }
627
 
628
+ $job_slug[] = $post_title;
629
+ $job_data['post_name'] = sanitize_title( implode( '-', $job_slug ) );
630
+ }
 
 
 
 
631
 
632
  if ( $status ) {
633
  $job_data['post_status'] = $status;
634
  }
635
 
636
+ $job_data = apply_filters( 'submit_job_form_save_job_data', $job_data, $post_title, $post_content, $status, $values );
637
+
638
  if ( self::$job_id ) {
639
  $job_data['ID'] = self::$job_id;
640
  wp_update_post( $job_data );
743
  * Preview Step
744
  */
745
  public static function preview() {
746
+ global $post, $job_preview;
747
 
748
  if ( self::$job_id ) {
749
 
750
+ $job_preview = true;
751
+ $post = get_post( self::$job_id );
752
  setup_postdata( $post );
753
  $post->post_status = 'preview';
754
  ?>
languages/wp-job-manager-af.mo CHANGED
Binary file
languages/wp-job-manager-af.po CHANGED
@@ -7,8 +7,8 @@ msgstr ""
7
  "Project-Id-Version: WP Job Manager\n"
8
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
9
  "POT-Creation-Date: 2014-05-11 11:00:29+00:00\n"
10
- "PO-Revision-Date: 2014-10-30 23:39+0000\n"
11
- "Last-Translator: Mike Jolley <mike.jolley@me.com>\n"
12
  "Language-Team: Afrikaans (http://www.transifex.com/projects/p/wp-job-manager/language/af/)\n"
13
  "MIME-Version: 1.0\n"
14
  "Content-Type: text/plain; charset=UTF-8\n"
7
  "Project-Id-Version: WP Job Manager\n"
8
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
9
  "POT-Creation-Date: 2014-05-11 11:00:29+00:00\n"
10
+ "PO-Revision-Date: 2014-12-08 21:01+0000\n"
11
+ "Last-Translator: Riaan\n"
12
  "Language-Team: Afrikaans (http://www.transifex.com/projects/p/wp-job-manager/language/af/)\n"
13
  "MIME-Version: 1.0\n"
14
  "Content-Type: text/plain; charset=UTF-8\n"
languages/wp-job-manager-de_DE.mo CHANGED
Binary file
languages/wp-job-manager-de_DE.po CHANGED
@@ -1,6 +1,7 @@
1
  # Copyright (C) 2014 WP Job Manager
2
  # This file is distributed under the same license as the WP Job Manager package.
3
  # Translators:
 
4
  # kochhase <mail@henryk-ibemeinhardt.de>, 2014
5
  # Mike Jolley <mike.jolley@me.com>, 2014
6
  # Sebastian Wendler <sebastian.wendler@netzlodern.de>, 2014
@@ -9,8 +10,8 @@ msgstr ""
9
  "Project-Id-Version: WP Job Manager\n"
10
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
11
  "POT-Creation-Date: 2014-05-11 11:00:29+00:00\n"
12
- "PO-Revision-Date: 2014-10-30 23:39+0000\n"
13
- "Last-Translator: Mike Jolley <mike.jolley@me.com>\n"
14
  "Language-Team: German (Germany) (http://www.transifex.com/projects/p/wp-job-manager/language/de_DE/)\n"
15
  "MIME-Version: 1.0\n"
16
  "Content-Type: text/plain; charset=UTF-8\n"
@@ -134,7 +135,7 @@ msgstr "Kategorien"
134
 
135
  #: includes/admin/class-wp-job-manager-cpt.php:284
136
  msgid "Featured?"
137
- msgstr "Besonderheit?"
138
 
139
  #: includes/admin/class-wp-job-manager-cpt.php:285
140
  #: templates/job-dashboard.php:10
@@ -292,11 +293,11 @@ msgstr "Wie viele <strong>Tage</strong> sollen Joblistings aktiv bleiben. Leer l
292
 
293
  #: includes/admin/class-wp-job-manager-settings.php:120
294
  msgid "Application method"
295
- msgstr "Anwendungsmethode"
296
 
297
  #: includes/admin/class-wp-job-manager-settings.php:121
298
  msgid "Choose what employers can use for their job application method."
299
- msgstr "Wählen Sie, was Arbeitgeber für ihre Bewerbung Methode verwenden können."
300
 
301
  #: includes/admin/class-wp-job-manager-settings.php:124
302
  msgid "Email address or website URL"
@@ -418,7 +419,7 @@ msgstr "Verwenden der Datei"
418
 
419
  #: includes/admin/class-wp-job-manager-writepanels.php:101
420
  msgid "Upload"
421
- msgstr "Das Hinaufladen"
422
 
423
  #: includes/admin/class-wp-job-manager-writepanels.php:269
424
  msgid "Guest user"
@@ -452,7 +453,7 @@ msgstr "Geocoding Fehler"
452
 
453
  #: includes/class-wp-job-manager-install.php:39
454
  msgid "Employer"
455
- msgstr "Der Arbeitgeber"
456
 
457
  #: includes/class-wp-job-manager-post-types.php:48
458
  msgid "Job Category"
@@ -740,7 +741,7 @@ msgstr "Bitte geben Sie eine gültige URL ein"
740
 
741
  #: includes/forms/class-wp-job-manager-form-submit-job.php:335
742
  msgid "Please enter a valid application email address or URL"
743
- msgstr "Bitte geben Sie eine gültige E-Mail-Bewerber Adresse oder URL ein"
744
 
745
  #: includes/forms/class-wp-job-manager-form-submit-job.php:456
746
  msgid "Preview job listing &rarr;"
@@ -849,7 +850,7 @@ msgstr "Bewerben per Webmail: "
849
  msgid ""
850
  "To apply for this job please visit the following URL: <a href=\"%1$s\" "
851
  "target=\"_blank\">%1$s &rarr;</a>"
852
- msgstr "Um sich für diesen Job zu bewerben, geben Sie bitte die folgende URL ein: <a href=\"%1$s\" target=\"_blank\">%1$s &rarr;</a>"
853
 
854
  #: templates/job-application.php:5
855
  msgid "Apply for job"
1
  # Copyright (C) 2014 WP Job Manager
2
  # This file is distributed under the same license as the WP Job Manager package.
3
  # Translators:
4
+ # Daniel <daniel.minder@uni-due.de>, 2014
5
  # kochhase <mail@henryk-ibemeinhardt.de>, 2014
6
  # Mike Jolley <mike.jolley@me.com>, 2014
7
  # Sebastian Wendler <sebastian.wendler@netzlodern.de>, 2014
10
  "Project-Id-Version: WP Job Manager\n"
11
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
12
  "POT-Creation-Date: 2014-05-11 11:00:29+00:00\n"
13
+ "PO-Revision-Date: 2014-11-29 19:21+0000\n"
14
+ "Last-Translator: Daniel <daniel.minder@uni-due.de>\n"
15
  "Language-Team: German (Germany) (http://www.transifex.com/projects/p/wp-job-manager/language/de_DE/)\n"
16
  "MIME-Version: 1.0\n"
17
  "Content-Type: text/plain; charset=UTF-8\n"
135
 
136
  #: includes/admin/class-wp-job-manager-cpt.php:284
137
  msgid "Featured?"
138
+ msgstr "Hevorgehoben?"
139
 
140
  #: includes/admin/class-wp-job-manager-cpt.php:285
141
  #: templates/job-dashboard.php:10
293
 
294
  #: includes/admin/class-wp-job-manager-settings.php:120
295
  msgid "Application method"
296
+ msgstr "Bewerbungsmethode"
297
 
298
  #: includes/admin/class-wp-job-manager-settings.php:121
299
  msgid "Choose what employers can use for their job application method."
300
+ msgstr "Wählen Sie, welche Methoden Arbeitgeber für Bewerbungen verwenden können."
301
 
302
  #: includes/admin/class-wp-job-manager-settings.php:124
303
  msgid "Email address or website URL"
419
 
420
  #: includes/admin/class-wp-job-manager-writepanels.php:101
421
  msgid "Upload"
422
+ msgstr "Hochladen"
423
 
424
  #: includes/admin/class-wp-job-manager-writepanels.php:269
425
  msgid "Guest user"
453
 
454
  #: includes/class-wp-job-manager-install.php:39
455
  msgid "Employer"
456
+ msgstr "Arbeitgeber"
457
 
458
  #: includes/class-wp-job-manager-post-types.php:48
459
  msgid "Job Category"
741
 
742
  #: includes/forms/class-wp-job-manager-form-submit-job.php:335
743
  msgid "Please enter a valid application email address or URL"
744
+ msgstr "Bitte geben Sie eine gültige E-Mail-Adresse oder URL für die Bewerbung ein"
745
 
746
  #: includes/forms/class-wp-job-manager-form-submit-job.php:456
747
  msgid "Preview job listing &rarr;"
850
  msgid ""
851
  "To apply for this job please visit the following URL: <a href=\"%1$s\" "
852
  "target=\"_blank\">%1$s &rarr;</a>"
853
+ msgstr "Um sich für diesen Job zu bewerben, gehen Sie bitte zu folgender URL: <a href=\"%1$s\" target=\"_blank\">%1$s &rarr;</a>"
854
 
855
  #: templates/job-application.php:5
856
  msgid "Apply for job"
languages/wp-job-manager-es_ES.mo CHANGED
Binary file
languages/wp-job-manager-es_ES.po CHANGED
@@ -2,14 +2,15 @@
2
  # This file is distributed under the same license as the WP Job Manager package.
3
  # Translators:
4
  # Edouard Scherer <escherer@stagesperou.com>, 2014
 
5
  # IlDucci <victor.gonfraile@hotmail.es>, 2014
6
  msgid ""
7
  msgstr ""
8
  "Project-Id-Version: WP Job Manager\n"
9
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
10
  "POT-Creation-Date: 2014-05-11 11:00:29+00:00\n"
11
- "PO-Revision-Date: 2014-10-30 23:39+0000\n"
12
- "Last-Translator: Mike Jolley <mike.jolley@me.com>\n"
13
  "Language-Team: Spanish (Spain) (http://www.transifex.com/projects/p/wp-job-manager/language/es_ES/)\n"
14
  "MIME-Version: 1.0\n"
15
  "Content-Type: text/plain; charset=UTF-8\n"
@@ -26,7 +27,7 @@ msgstr "Extensiones de WP Job Manager "
26
  msgid ""
27
  "Buying multiple add-ons? <a href=\"%s\">Check out the core add-on bundle "
28
  "&rarr;</a>"
29
- msgstr "¿Compras varios complementos? <a href=\"%s\">Echa un vistazo al paquete de complementos centrales &rarr;</a>"
30
 
31
  #: includes/admin/class-wp-job-manager-admin.php:57
32
  msgid "Settings"
@@ -44,7 +45,7 @@ msgstr "Aprobar Vacantes"
44
  #: includes/admin/class-wp-job-manager-cpt.php:47
45
  #: includes/admin/class-wp-job-manager-cpt.php:48
46
  msgid "Expire Jobs"
47
- msgstr "Ofertas Expiradas"
48
 
49
  #: includes/admin/class-wp-job-manager-cpt.php:135
50
  #: includes/admin/class-wp-job-manager-cpt.php:137
2
  # This file is distributed under the same license as the WP Job Manager package.
3
  # Translators:
4
  # Edouard Scherer <escherer@stagesperou.com>, 2014
5
+ # Emilio Gomez Fernandez <emilio.gomez.fdez@gmail.com>, 2014
6
  # IlDucci <victor.gonfraile@hotmail.es>, 2014
7
  msgid ""
8
  msgstr ""
9
  "Project-Id-Version: WP Job Manager\n"
10
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
11
  "POT-Creation-Date: 2014-05-11 11:00:29+00:00\n"
12
+ "PO-Revision-Date: 2014-11-19 10:29+0000\n"
13
+ "Last-Translator: Emilio Gomez Fernandez <emilio.gomez.fdez@gmail.com>\n"
14
  "Language-Team: Spanish (Spain) (http://www.transifex.com/projects/p/wp-job-manager/language/es_ES/)\n"
15
  "MIME-Version: 1.0\n"
16
  "Content-Type: text/plain; charset=UTF-8\n"
27
  msgid ""
28
  "Buying multiple add-ons? <a href=\"%s\">Check out the core add-on bundle "
29
  "&rarr;</a>"
30
+ msgstr "¿Desea comprar varios complementos? <a href=\"%s\">Echa un vistazo al paquete de complementos centrales &rarr;</a>"
31
 
32
  #: includes/admin/class-wp-job-manager-admin.php:57
33
  msgid "Settings"
45
  #: includes/admin/class-wp-job-manager-cpt.php:47
46
  #: includes/admin/class-wp-job-manager-cpt.php:48
47
  msgid "Expire Jobs"
48
+ msgstr "Ofertas expiradas"
49
 
50
  #: includes/admin/class-wp-job-manager-cpt.php:135
51
  #: includes/admin/class-wp-job-manager-cpt.php:137
languages/wp-job-manager-id_ID.mo CHANGED
Binary file
languages/wp-job-manager-id_ID.po CHANGED
@@ -1,13 +1,14 @@
1
  # Copyright (C) 2014 WP Job Manager
2
  # This file is distributed under the same license as the WP Job Manager package.
3
  # Translators:
 
4
  msgid ""
5
  msgstr ""
6
  "Project-Id-Version: WP Job Manager\n"
7
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
8
  "POT-Creation-Date: 2014-05-11 11:00:29+00:00\n"
9
- "PO-Revision-Date: 2014-10-30 23:39+0000\n"
10
- "Last-Translator: Mike Jolley <mike.jolley@me.com>\n"
11
  "Language-Team: Indonesian (Indonesia) (http://www.transifex.com/projects/p/wp-job-manager/language/id_ID/)\n"
12
  "MIME-Version: 1.0\n"
13
  "Content-Type: text/plain; charset=UTF-8\n"
@@ -24,67 +25,67 @@ msgstr ""
24
  msgid ""
25
  "Buying multiple add-ons? <a href=\"%s\">Check out the core add-on bundle "
26
  "&rarr;</a>"
27
- msgstr ""
28
 
29
  #: includes/admin/class-wp-job-manager-admin.php:57
30
  msgid "Settings"
31
- msgstr ""
32
 
33
  #: includes/admin/class-wp-job-manager-admin.php:60
34
  msgid "Add-ons"
35
- msgstr ""
36
 
37
  #: includes/admin/class-wp-job-manager-cpt.php:44
38
  #: includes/admin/class-wp-job-manager-cpt.php:45
39
  msgid "Approve Jobs"
40
- msgstr ""
41
 
42
  #: includes/admin/class-wp-job-manager-cpt.php:47
43
  #: includes/admin/class-wp-job-manager-cpt.php:48
44
  msgid "Expire Jobs"
45
- msgstr ""
46
 
47
  #: includes/admin/class-wp-job-manager-cpt.php:135
48
  #: includes/admin/class-wp-job-manager-cpt.php:137
49
  msgid "%s approved"
50
- msgstr ""
51
 
52
  #: includes/admin/class-wp-job-manager-cpt.php:155
53
  #: includes/admin/class-wp-job-manager-cpt.php:157
54
  msgid "%s expired"
55
- msgstr ""
56
 
57
  #: includes/admin/class-wp-job-manager-cpt.php:200
58
  msgid "Select a category"
59
- msgstr ""
60
 
61
  #: includes/admin/class-wp-job-manager-cpt.php:233
62
  msgid "Job position title"
63
- msgstr ""
64
 
65
  #: includes/admin/class-wp-job-manager-cpt.php:249
66
  msgid "Job listing updated. <a href=\"%s\">View Job</a>"
67
- msgstr ""
68
 
69
  #: includes/admin/class-wp-job-manager-cpt.php:250
70
  msgid "Custom field updated."
71
- msgstr ""
72
 
73
  #: includes/admin/class-wp-job-manager-cpt.php:251
74
  msgid "Custom field deleted."
75
- msgstr ""
76
 
77
  #: includes/admin/class-wp-job-manager-cpt.php:252
78
  msgid "Job listing updated."
79
- msgstr ""
80
 
81
  #: includes/admin/class-wp-job-manager-cpt.php:253
82
  msgid "Job listing restored to revision from %s"
83
- msgstr ""
84
 
85
  #: includes/admin/class-wp-job-manager-cpt.php:254
86
  msgid "Job listing published. <a href=\"%s\">View Job</a>"
87
- msgstr ""
88
 
89
  #: includes/admin/class-wp-job-manager-cpt.php:255
90
  msgid "Job listing saved."
1
  # Copyright (C) 2014 WP Job Manager
2
  # This file is distributed under the same license as the WP Job Manager package.
3
  # Translators:
4
+ # Nakamura Agatha <hello@nakamuraagatha.co>, 2014
5
  msgid ""
6
  msgstr ""
7
  "Project-Id-Version: WP Job Manager\n"
8
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
9
  "POT-Creation-Date: 2014-05-11 11:00:29+00:00\n"
10
+ "PO-Revision-Date: 2014-11-21 06:20+0000\n"
11
+ "Last-Translator: Nakamura Agatha <hello@nakamuraagatha.co>\n"
12
  "Language-Team: Indonesian (Indonesia) (http://www.transifex.com/projects/p/wp-job-manager/language/id_ID/)\n"
13
  "MIME-Version: 1.0\n"
14
  "Content-Type: text/plain; charset=UTF-8\n"
25
  msgid ""
26
  "Buying multiple add-ons? <a href=\"%s\">Check out the core add-on bundle "
27
  "&rarr;</a>"
28
+ msgstr "Membeli Beberapa add-ons? <a href=\"%s\">Periksa core paket add-on &rarr;</a>"
29
 
30
  #: includes/admin/class-wp-job-manager-admin.php:57
31
  msgid "Settings"
32
+ msgstr "Pengaturan"
33
 
34
  #: includes/admin/class-wp-job-manager-admin.php:60
35
  msgid "Add-ons"
36
+ msgstr "Add-ons"
37
 
38
  #: includes/admin/class-wp-job-manager-cpt.php:44
39
  #: includes/admin/class-wp-job-manager-cpt.php:45
40
  msgid "Approve Jobs"
41
+ msgstr "Pekerjaan di setujui"
42
 
43
  #: includes/admin/class-wp-job-manager-cpt.php:47
44
  #: includes/admin/class-wp-job-manager-cpt.php:48
45
  msgid "Expire Jobs"
46
+ msgstr "Pekerjaan telah Kadaluarsa"
47
 
48
  #: includes/admin/class-wp-job-manager-cpt.php:135
49
  #: includes/admin/class-wp-job-manager-cpt.php:137
50
  msgid "%s approved"
51
+ msgstr "%s disetujui"
52
 
53
  #: includes/admin/class-wp-job-manager-cpt.php:155
54
  #: includes/admin/class-wp-job-manager-cpt.php:157
55
  msgid "%s expired"
56
+ msgstr "%s kadaluarsa"
57
 
58
  #: includes/admin/class-wp-job-manager-cpt.php:200
59
  msgid "Select a category"
60
+ msgstr "Pilih Kategori"
61
 
62
  #: includes/admin/class-wp-job-manager-cpt.php:233
63
  msgid "Job position title"
64
+ msgstr "Judul Posisi Pekerjaan"
65
 
66
  #: includes/admin/class-wp-job-manager-cpt.php:249
67
  msgid "Job listing updated. <a href=\"%s\">View Job</a>"
68
+ msgstr "Job listing diperbarui. <a href=\"%s\">Lihat Pekerjaan</a>"
69
 
70
  #: includes/admin/class-wp-job-manager-cpt.php:250
71
  msgid "Custom field updated."
72
+ msgstr "Bidang kustom diperbarui."
73
 
74
  #: includes/admin/class-wp-job-manager-cpt.php:251
75
  msgid "Custom field deleted."
76
+ msgstr "Bidang kustom dihapus."
77
 
78
  #: includes/admin/class-wp-job-manager-cpt.php:252
79
  msgid "Job listing updated."
80
+ msgstr "Listing Pekerjaan diperbarui."
81
 
82
  #: includes/admin/class-wp-job-manager-cpt.php:253
83
  msgid "Job listing restored to revision from %s"
84
+ msgstr "Listing Pekerjaan dikembalikan ke revisi dari %s"
85
 
86
  #: includes/admin/class-wp-job-manager-cpt.php:254
87
  msgid "Job listing published. <a href=\"%s\">View Job</a>"
88
+ msgstr "Listing Pekerjaan diterbitkan. <a href=\"%s\">Lihat Pekerjaan</a>"
89
 
90
  #: includes/admin/class-wp-job-manager-cpt.php:255
91
  msgid "Job listing saved."
languages/wp-job-manager-ja.mo CHANGED
Binary file
languages/wp-job-manager-ja.po CHANGED
@@ -7,8 +7,8 @@ msgstr ""
7
  "Project-Id-Version: WP Job Manager\n"
8
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
9
  "POT-Creation-Date: 2014-05-11 11:00:29+00:00\n"
10
- "PO-Revision-Date: 2014-10-30 23:39+0000\n"
11
- "Last-Translator: Mike Jolley <mike.jolley@me.com>\n"
12
  "Language-Team: Japanese (http://www.transifex.com/projects/p/wp-job-manager/language/ja/)\n"
13
  "MIME-Version: 1.0\n"
14
  "Content-Type: text/plain; charset=UTF-8\n"
@@ -171,18 +171,18 @@ msgstr ""
171
 
172
  #: includes/admin/class-wp-job-manager-cpt.php:361
173
  msgid "View"
174
- msgstr ""
175
 
176
  #: includes/admin/class-wp-job-manager-cpt.php:366
177
  #: includes/class-wp-job-manager-post-types.php:162
178
  #: templates/job-dashboard.php:33
179
  msgid "Edit"
180
- msgstr ""
181
 
182
  #: includes/admin/class-wp-job-manager-cpt.php:371
183
  #: templates/job-dashboard.php:43
184
  msgid "Delete"
185
- msgstr ""
186
 
187
  #: includes/admin/class-wp-job-manager-settings.php:42
188
  #: includes/class-wp-job-manager-post-types.php:138
7
  "Project-Id-Version: WP Job Manager\n"
8
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
9
  "POT-Creation-Date: 2014-05-11 11:00:29+00:00\n"
10
+ "PO-Revision-Date: 2014-12-12 06:40+0000\n"
11
+ "Last-Translator: 田中 昌平 <shohei.tanaka@artisanworkshop.biz>\n"
12
  "Language-Team: Japanese (http://www.transifex.com/projects/p/wp-job-manager/language/ja/)\n"
13
  "MIME-Version: 1.0\n"
14
  "Content-Type: text/plain; charset=UTF-8\n"
171
 
172
  #: includes/admin/class-wp-job-manager-cpt.php:361
173
  msgid "View"
174
+ msgstr "表示"
175
 
176
  #: includes/admin/class-wp-job-manager-cpt.php:366
177
  #: includes/class-wp-job-manager-post-types.php:162
178
  #: templates/job-dashboard.php:33
179
  msgid "Edit"
180
+ msgstr "編集"
181
 
182
  #: includes/admin/class-wp-job-manager-cpt.php:371
183
  #: templates/job-dashboard.php:43
184
  msgid "Delete"
185
+ msgstr "削除"
186
 
187
  #: includes/admin/class-wp-job-manager-settings.php:42
188
  #: includes/class-wp-job-manager-post-types.php:138
languages/wp-job-manager-pt_PT.po CHANGED
@@ -3,7 +3,7 @@
3
  # Translators:
4
  # Zé Fontainhas <jfontainhas@gmail.com>, 2014
5
  # Mike Jolley <mike.jolley@me.com>, 2014
6
- # Nuno Alves <nuno@raulpinadesign.pt>, 2014
7
  msgid ""
8
  msgstr ""
9
  "Project-Id-Version: WP Job Manager\n"
3
  # Translators:
4
  # Zé Fontainhas <jfontainhas@gmail.com>, 2014
5
  # Mike Jolley <mike.jolley@me.com>, 2014
6
+ # Nuno Alves <inactive+nalvesrpd@transifex.com>, 2014
7
  msgid ""
8
  msgstr ""
9
  "Project-Id-Version: WP Job Manager\n"
languages/wp-job-manager.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the same license as the WP Job Manager package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: WP Job Manager 1.17.0\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
7
- "POT-Creation-Date: 2014-11-11 17:39:51+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -115,7 +115,7 @@ msgid "Posted"
115
  msgstr ""
116
 
117
  #: includes/admin/class-wp-job-manager-cpt.php:257
118
- #: includes/admin/class-wp-job-manager-writepanels.php:77
119
  msgid "Expires"
120
  msgstr ""
121
 
@@ -128,7 +128,7 @@ msgid "Featured?"
128
  msgstr ""
129
 
130
  #: includes/admin/class-wp-job-manager-cpt.php:261
131
- #: includes/class-wp-job-manager-shortcodes.php:163
132
  msgid "Filled?"
133
  msgstr ""
134
 
@@ -161,24 +161,24 @@ msgstr ""
161
  msgid "Approve"
162
  msgstr ""
163
 
164
- #: includes/admin/class-wp-job-manager-cpt.php:337
165
  msgid "View"
166
  msgstr ""
167
 
168
- #: includes/admin/class-wp-job-manager-cpt.php:342
169
- #: includes/class-wp-job-manager-post-types.php:169
170
  #: templates/job-dashboard.php:33 templates/job-dashboard.php:49
171
  msgid "Edit"
172
  msgstr ""
173
 
174
- #: includes/admin/class-wp-job-manager-cpt.php:347
175
  #: templates/job-dashboard.php:54
176
  msgid "Delete"
177
  msgstr ""
178
 
179
  #: includes/admin/class-wp-job-manager-settings.php:42
180
- #: includes/class-wp-job-manager-post-types.php:165
181
- #: includes/class-wp-job-manager-post-types.php:235
182
  msgid "Job Listings"
183
  msgstr ""
184
 
@@ -236,7 +236,7 @@ msgid "Category Filter Type"
236
  msgstr ""
237
 
238
  #: includes/admin/class-wp-job-manager-settings.php:86
239
- msgid "Jobs wil be shown if within ANY selected category"
240
  msgstr ""
241
 
242
  #: includes/admin/class-wp-job-manager-settings.php:87
@@ -661,204 +661,200 @@ msgstr ""
661
  msgid "Position filled?"
662
  msgstr ""
663
 
664
- #: includes/admin/class-wp-job-manager-writepanels.php:72
665
  msgid "Feature this listing?"
666
  msgstr ""
667
 
668
- #: includes/admin/class-wp-job-manager-writepanels.php:74
669
  msgid ""
670
  "Featured listings will be sticky during searches, and can be styled "
671
  "differently."
672
  msgstr ""
673
 
674
- #: includes/admin/class-wp-job-manager-writepanels.php:78
675
  msgid "yyyy-mm-dd"
676
  msgstr ""
677
 
678
- #: includes/admin/class-wp-job-manager-writepanels.php:81
679
  msgid "Posted by"
680
  msgstr ""
681
 
682
- #: includes/admin/class-wp-job-manager-writepanels.php:96
683
  msgid "%s Data"
684
  msgstr ""
685
 
686
- #: includes/admin/class-wp-job-manager-writepanels.php:122
687
  #: includes/admin/class-wp-job-manager-writepanels.php:128
688
- #: includes/admin/class-wp-job-manager-writepanels.php:137
 
689
  msgid "Use file"
690
  msgstr ""
691
 
692
- #: includes/admin/class-wp-job-manager-writepanels.php:122
693
  #: includes/admin/class-wp-job-manager-writepanels.php:128
694
- #: includes/admin/class-wp-job-manager-writepanels.php:137
 
695
  msgid "Upload"
696
  msgstr ""
697
 
698
- #: includes/admin/class-wp-job-manager-writepanels.php:137
699
  msgid "Add file"
700
  msgstr ""
701
 
702
- #: includes/admin/class-wp-job-manager-writepanels.php:268
703
  msgid "Guest user"
704
  msgstr ""
705
 
706
- #: includes/class-wp-job-manager-ajax.php:114
707
- msgid "Showing %s"
708
- msgstr ""
709
-
710
  #: includes/class-wp-job-manager-ajax.php:116
711
- msgid "Showing all %s"
712
  msgstr ""
713
 
714
- #: includes/class-wp-job-manager-ajax.php:119
715
- msgid "located in &ldquo;%s&rdquo;"
716
  msgstr ""
717
 
718
- #: includes/class-wp-job-manager-geocode.php:139
719
  msgid "No results found"
720
  msgstr ""
721
 
722
- #: includes/class-wp-job-manager-geocode.php:143
723
  msgid "Query limit reached"
724
  msgstr ""
725
 
726
- #: includes/class-wp-job-manager-geocode.php:149
727
- #: includes/class-wp-job-manager-geocode.php:153
728
- #: includes/class-wp-job-manager-geocode.php:157
729
  msgid "Geocoding error"
730
  msgstr ""
731
 
732
- #: includes/class-wp-job-manager-install.php:55
733
  msgid "Employer"
734
  msgstr ""
735
 
736
- #: includes/class-wp-job-manager-post-types.php:49
737
  #: includes/forms/class-wp-job-manager-form-submit-job.php:155
738
  msgid "Job category"
739
  msgstr ""
740
 
741
- #: includes/class-wp-job-manager-post-types.php:50
742
  msgid "Job categories"
743
  msgstr ""
744
 
745
- #: includes/class-wp-job-manager-post-types.php:54
746
  msgctxt "Job category slug - resave permalinks after changing this"
747
  msgid "job-category"
748
  msgstr ""
749
 
750
- #: includes/class-wp-job-manager-post-types.php:74
751
- #: includes/class-wp-job-manager-post-types.php:120
752
- #: includes/class-wp-job-manager-post-types.php:174
753
  msgid "Search %s"
754
  msgstr ""
755
 
756
- #: includes/class-wp-job-manager-post-types.php:75
757
- #: includes/class-wp-job-manager-post-types.php:121
758
- #: includes/class-wp-job-manager-post-types.php:166
759
  msgid "All %s"
760
  msgstr ""
761
 
762
- #: includes/class-wp-job-manager-post-types.php:76
763
- #: includes/class-wp-job-manager-post-types.php:122
764
- #: includes/class-wp-job-manager-post-types.php:177
765
  msgid "Parent %s"
766
  msgstr ""
767
 
768
- #: includes/class-wp-job-manager-post-types.php:77
769
- #: includes/class-wp-job-manager-post-types.php:123
770
  msgid "Parent %s:"
771
  msgstr ""
772
 
773
- #: includes/class-wp-job-manager-post-types.php:78
774
- #: includes/class-wp-job-manager-post-types.php:124
775
- #: includes/class-wp-job-manager-post-types.php:170
776
  msgid "Edit %s"
777
  msgstr ""
778
 
779
- #: includes/class-wp-job-manager-post-types.php:79
780
- #: includes/class-wp-job-manager-post-types.php:125
781
  msgid "Update %s"
782
  msgstr ""
783
 
784
- #: includes/class-wp-job-manager-post-types.php:80
785
- #: includes/class-wp-job-manager-post-types.php:126
786
  msgid "Add New %s"
787
  msgstr ""
788
 
789
- #: includes/class-wp-job-manager-post-types.php:81
790
- #: includes/class-wp-job-manager-post-types.php:127
791
  msgid "New %s Name"
792
  msgstr ""
793
 
794
- #: includes/class-wp-job-manager-post-types.php:96
795
  #: includes/forms/class-wp-job-manager-form-submit-job.php:146
796
  msgid "Job type"
797
  msgstr ""
798
 
799
- #: includes/class-wp-job-manager-post-types.php:97
800
  msgid "Job types"
801
  msgstr ""
802
 
803
- #: includes/class-wp-job-manager-post-types.php:101
804
  msgctxt "Job type slug - resave permalinks after changing this"
805
  msgid "job-type"
806
  msgstr ""
807
 
808
- #: includes/class-wp-job-manager-post-types.php:144
809
  msgid "Job"
810
  msgstr ""
811
 
812
- #: includes/class-wp-job-manager-post-types.php:145
813
  msgid "Jobs"
814
  msgstr ""
815
 
816
- #: includes/class-wp-job-manager-post-types.php:148
817
  msgctxt "Post type archive slug - resave permalinks after changing this"
818
  msgid "jobs"
819
  msgstr ""
820
 
821
- #: includes/class-wp-job-manager-post-types.php:154
822
  msgctxt "Job permalink - resave permalinks after changing this"
823
  msgid "job"
824
  msgstr ""
825
 
826
- #: includes/class-wp-job-manager-post-types.php:167
827
  msgid "Add New"
828
  msgstr ""
829
 
830
- #: includes/class-wp-job-manager-post-types.php:168
831
  msgid "Add %s"
832
  msgstr ""
833
 
834
- #: includes/class-wp-job-manager-post-types.php:171
835
  msgid "New %s"
836
  msgstr ""
837
 
838
- #: includes/class-wp-job-manager-post-types.php:172
839
- #: includes/class-wp-job-manager-post-types.php:173
840
  msgid "View %s"
841
  msgstr ""
842
 
843
- #: includes/class-wp-job-manager-post-types.php:175
844
  msgid "No %s found"
845
  msgstr ""
846
 
847
- #: includes/class-wp-job-manager-post-types.php:176
848
  msgid "No %s found in trash"
849
  msgstr ""
850
 
851
- #: includes/class-wp-job-manager-post-types.php:179
852
  msgid "This is where you can create and manage %s."
853
  msgstr ""
854
 
855
- #: includes/class-wp-job-manager-post-types.php:214
856
  #: wp-job-manager-functions.php:159
857
  msgctxt "post status"
858
  msgid "Expired"
859
  msgstr ""
860
 
861
- #: includes/class-wp-job-manager-post-types.php:219
862
  msgid "Expired <span class=\"count\">(%s)</span>"
863
  msgid_plural "Expired <span class=\"count\">(%s)</span>"
864
  msgstr[0] ""
@@ -888,26 +884,22 @@ msgstr ""
888
  msgid "%s has been deleted"
889
  msgstr ""
890
 
891
- #: includes/class-wp-job-manager-shortcodes.php:122
892
- msgid "You need to be signed in to manage your listings."
893
- msgstr ""
894
-
895
- #: includes/class-wp-job-manager-shortcodes.php:162
896
  #: includes/class-wp-job-manager-widgets.php:148
897
  #: includes/forms/class-wp-job-manager-form-submit-job.php:131
898
  msgid "Title"
899
  msgstr ""
900
 
901
- #: includes/class-wp-job-manager-shortcodes.php:164
902
  msgid "Date Posted"
903
  msgstr ""
904
 
905
- #: includes/class-wp-job-manager-shortcodes.php:165
906
  msgid "Date Expires"
907
  msgstr ""
908
 
909
- #: includes/class-wp-job-manager-shortcodes.php:258
910
- #: includes/class-wp-job-manager-shortcodes.php:291
911
  msgid "Load more listings"
912
  msgstr ""
913
 
@@ -934,15 +926,15 @@ msgstr ""
934
  msgid "Invalid listing"
935
  msgstr ""
936
 
937
- #: includes/forms/class-wp-job-manager-form-edit-job.php:76
938
  msgid "Save changes"
939
  msgstr ""
940
 
941
- #: includes/forms/class-wp-job-manager-form-edit-job.php:103
942
  msgid "Your changes have been saved."
943
  msgstr ""
944
 
945
- #: includes/forms/class-wp-job-manager-form-edit-job.php:103
946
  msgid "View &rarr;"
947
  msgstr ""
948
 
@@ -951,7 +943,7 @@ msgid "Submit Details"
951
  msgstr ""
952
 
953
  #: includes/forms/class-wp-job-manager-form-submit-job.php:28
954
- #: includes/forms/class-wp-job-manager-form-submit-job.php:755
955
  msgid "Preview"
956
  msgstr ""
957
 
@@ -1043,24 +1035,24 @@ msgstr ""
1043
  msgid "Please enter a valid application email address or URL"
1044
  msgstr ""
1045
 
1046
- #: includes/forms/class-wp-job-manager-form-submit-job.php:538
1047
  msgid "Preview &rarr;"
1048
  msgstr ""
1049
 
1050
- #: includes/forms/class-wp-job-manager-form-submit-job.php:576
1051
  msgid "You must be signed in to post a new listing."
1052
  msgstr ""
1053
 
1054
- #: includes/forms/class-wp-job-manager-form-submit-job.php:749
1055
  msgid "Submit Listing &rarr;"
1056
  msgstr ""
1057
 
1058
- #: includes/forms/class-wp-job-manager-form-submit-job.php:750
1059
  msgid "&larr; Edit listing"
1060
  msgstr ""
1061
 
1062
- #: includes/forms/class-wp-job-manager-form-submit-job.php:852
1063
- #: includes/forms/class-wp-job-manager-form-submit-job.php:878
1064
  msgid "\"%s\" (filetype %s) needs to be one of the following file types: %s"
1065
  msgstr ""
1066
 
@@ -1080,7 +1072,7 @@ msgstr ""
1080
  msgid "Have an account?"
1081
  msgstr ""
1082
 
1083
- #: templates/account-signin.php:23
1084
  msgid "Sign in"
1085
  msgstr ""
1086
 
@@ -1161,6 +1153,10 @@ msgstr ""
1161
  msgid "Apply for job"
1162
  msgstr ""
1163
 
 
 
 
 
1164
  #: templates/job-dashboard.php:2
1165
  msgid ""
1166
  "Your listings are shown in the table below. Expired listings will be "
@@ -1239,23 +1235,23 @@ msgctxt "post status"
1239
  msgid "Active"
1240
  msgstr ""
1241
 
1242
- #: wp-job-manager-functions.php:264
1243
  msgid "Reset"
1244
  msgstr ""
1245
 
1246
- #: wp-job-manager-functions.php:268
1247
  msgid "RSS"
1248
  msgstr ""
1249
 
1250
- #: wp-job-manager-functions.php:318
1251
  msgid "Your email address isn&#8217;t correct."
1252
  msgstr ""
1253
 
1254
- #: wp-job-manager-functions.php:321
1255
  msgid "This email is already registered, please choose another one."
1256
  msgstr ""
1257
 
1258
- #: wp-job-manager-functions.php:452
1259
  msgid "Choose a category&hellip;"
1260
  msgstr ""
1261
 
@@ -1271,7 +1267,7 @@ msgstr ""
1271
  msgid "Anywhere"
1272
  msgstr ""
1273
 
1274
- #: wp-job-manager.php:114
1275
  msgid "Are you sure you want to delete this listing?"
1276
  msgstr ""
1277
 
2
  # This file is distributed under the same license as the WP Job Manager package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: WP Job Manager 1.19.0\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-job-manager\n"
7
+ "POT-Creation-Date: 2014-12-18 21:00:48+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
115
  msgstr ""
116
 
117
  #: includes/admin/class-wp-job-manager-cpt.php:257
118
+ #: includes/admin/class-wp-job-manager-writepanels.php:79
119
  msgid "Expires"
120
  msgstr ""
121
 
128
  msgstr ""
129
 
130
  #: includes/admin/class-wp-job-manager-cpt.php:261
131
+ #: includes/class-wp-job-manager-shortcodes.php:164
132
  msgid "Filled?"
133
  msgstr ""
134
 
161
  msgid "Approve"
162
  msgstr ""
163
 
164
+ #: includes/admin/class-wp-job-manager-cpt.php:338
165
  msgid "View"
166
  msgstr ""
167
 
168
+ #: includes/admin/class-wp-job-manager-cpt.php:345
169
+ #: includes/class-wp-job-manager-post-types.php:181
170
  #: templates/job-dashboard.php:33 templates/job-dashboard.php:49
171
  msgid "Edit"
172
  msgstr ""
173
 
174
+ #: includes/admin/class-wp-job-manager-cpt.php:352
175
  #: templates/job-dashboard.php:54
176
  msgid "Delete"
177
  msgstr ""
178
 
179
  #: includes/admin/class-wp-job-manager-settings.php:42
180
+ #: includes/class-wp-job-manager-post-types.php:177
181
+ #: includes/class-wp-job-manager-post-types.php:237
182
  msgid "Job Listings"
183
  msgstr ""
184
 
236
  msgstr ""
237
 
238
  #: includes/admin/class-wp-job-manager-settings.php:86
239
+ msgid "Jobs will be shown if within ANY selected category"
240
  msgstr ""
241
 
242
  #: includes/admin/class-wp-job-manager-settings.php:87
661
  msgid "Position filled?"
662
  msgstr ""
663
 
664
+ #: includes/admin/class-wp-job-manager-writepanels.php:74
665
  msgid "Feature this listing?"
666
  msgstr ""
667
 
668
+ #: includes/admin/class-wp-job-manager-writepanels.php:76
669
  msgid ""
670
  "Featured listings will be sticky during searches, and can be styled "
671
  "differently."
672
  msgstr ""
673
 
674
+ #: includes/admin/class-wp-job-manager-writepanels.php:80
675
  msgid "yyyy-mm-dd"
676
  msgstr ""
677
 
678
+ #: includes/admin/class-wp-job-manager-writepanels.php:85
679
  msgid "Posted by"
680
  msgstr ""
681
 
682
+ #: includes/admin/class-wp-job-manager-writepanels.php:102
683
  msgid "%s Data"
684
  msgstr ""
685
 
 
686
  #: includes/admin/class-wp-job-manager-writepanels.php:128
687
+ #: includes/admin/class-wp-job-manager-writepanels.php:134
688
+ #: includes/admin/class-wp-job-manager-writepanels.php:143
689
  msgid "Use file"
690
  msgstr ""
691
 
 
692
  #: includes/admin/class-wp-job-manager-writepanels.php:128
693
+ #: includes/admin/class-wp-job-manager-writepanels.php:134
694
+ #: includes/admin/class-wp-job-manager-writepanels.php:143
695
  msgid "Upload"
696
  msgstr ""
697
 
698
+ #: includes/admin/class-wp-job-manager-writepanels.php:143
699
  msgid "Add file"
700
  msgstr ""
701
 
702
+ #: includes/admin/class-wp-job-manager-writepanels.php:274
703
  msgid "Guest user"
704
  msgstr ""
705
 
 
 
 
 
706
  #: includes/class-wp-job-manager-ajax.php:116
707
+ msgid "located in &ldquo;%s&rdquo;"
708
  msgstr ""
709
 
710
+ #: includes/class-wp-job-manager-ajax.php:123
711
+ msgid "Showing all %s"
712
  msgstr ""
713
 
714
+ #: includes/class-wp-job-manager-geocode.php:140
715
  msgid "No results found"
716
  msgstr ""
717
 
718
+ #: includes/class-wp-job-manager-geocode.php:144
719
  msgid "Query limit reached"
720
  msgstr ""
721
 
722
+ #: includes/class-wp-job-manager-geocode.php:150
723
+ #: includes/class-wp-job-manager-geocode.php:154
724
+ #: includes/class-wp-job-manager-geocode.php:158
725
  msgid "Geocoding error"
726
  msgstr ""
727
 
728
+ #: includes/class-wp-job-manager-install.php:54
729
  msgid "Employer"
730
  msgstr ""
731
 
732
+ #: includes/class-wp-job-manager-post-types.php:61
733
  #: includes/forms/class-wp-job-manager-form-submit-job.php:155
734
  msgid "Job category"
735
  msgstr ""
736
 
737
+ #: includes/class-wp-job-manager-post-types.php:62
738
  msgid "Job categories"
739
  msgstr ""
740
 
741
+ #: includes/class-wp-job-manager-post-types.php:66
742
  msgctxt "Job category slug - resave permalinks after changing this"
743
  msgid "job-category"
744
  msgstr ""
745
 
746
+ #: includes/class-wp-job-manager-post-types.php:86
747
+ #: includes/class-wp-job-manager-post-types.php:132
748
+ #: includes/class-wp-job-manager-post-types.php:186
749
  msgid "Search %s"
750
  msgstr ""
751
 
752
+ #: includes/class-wp-job-manager-post-types.php:87
753
+ #: includes/class-wp-job-manager-post-types.php:133
754
+ #: includes/class-wp-job-manager-post-types.php:178
755
  msgid "All %s"
756
  msgstr ""
757
 
758
+ #: includes/class-wp-job-manager-post-types.php:88
759
+ #: includes/class-wp-job-manager-post-types.php:134
760
+ #: includes/class-wp-job-manager-post-types.php:189
761
  msgid "Parent %s"
762
  msgstr ""
763
 
764
+ #: includes/class-wp-job-manager-post-types.php:89
765
+ #: includes/class-wp-job-manager-post-types.php:135
766
  msgid "Parent %s:"
767
  msgstr ""
768
 
769
+ #: includes/class-wp-job-manager-post-types.php:90
770
+ #: includes/class-wp-job-manager-post-types.php:136
771
+ #: includes/class-wp-job-manager-post-types.php:182
772
  msgid "Edit %s"
773
  msgstr ""
774
 
775
+ #: includes/class-wp-job-manager-post-types.php:91
776
+ #: includes/class-wp-job-manager-post-types.php:137
777
  msgid "Update %s"
778
  msgstr ""
779
 
780
+ #: includes/class-wp-job-manager-post-types.php:92
781
+ #: includes/class-wp-job-manager-post-types.php:138
782
  msgid "Add New %s"
783
  msgstr ""
784
 
785
+ #: includes/class-wp-job-manager-post-types.php:93
786
+ #: includes/class-wp-job-manager-post-types.php:139
787
  msgid "New %s Name"
788
  msgstr ""
789
 
790
+ #: includes/class-wp-job-manager-post-types.php:108
791
  #: includes/forms/class-wp-job-manager-form-submit-job.php:146
792
  msgid "Job type"
793
  msgstr ""
794
 
795
+ #: includes/class-wp-job-manager-post-types.php:109
796
  msgid "Job types"
797
  msgstr ""
798
 
799
+ #: includes/class-wp-job-manager-post-types.php:113
800
  msgctxt "Job type slug - resave permalinks after changing this"
801
  msgid "job-type"
802
  msgstr ""
803
 
804
+ #: includes/class-wp-job-manager-post-types.php:156
805
  msgid "Job"
806
  msgstr ""
807
 
808
+ #: includes/class-wp-job-manager-post-types.php:157
809
  msgid "Jobs"
810
  msgstr ""
811
 
812
+ #: includes/class-wp-job-manager-post-types.php:160
813
  msgctxt "Post type archive slug - resave permalinks after changing this"
814
  msgid "jobs"
815
  msgstr ""
816
 
817
+ #: includes/class-wp-job-manager-post-types.php:166
818
  msgctxt "Job permalink - resave permalinks after changing this"
819
  msgid "job"
820
  msgstr ""
821
 
822
+ #: includes/class-wp-job-manager-post-types.php:179
823
  msgid "Add New"
824
  msgstr ""
825
 
826
+ #: includes/class-wp-job-manager-post-types.php:180
827
  msgid "Add %s"
828
  msgstr ""
829
 
830
+ #: includes/class-wp-job-manager-post-types.php:183
831
  msgid "New %s"
832
  msgstr ""
833
 
834
+ #: includes/class-wp-job-manager-post-types.php:184
835
+ #: includes/class-wp-job-manager-post-types.php:185
836
  msgid "View %s"
837
  msgstr ""
838
 
839
+ #: includes/class-wp-job-manager-post-types.php:187
840
  msgid "No %s found"
841
  msgstr ""
842
 
843
+ #: includes/class-wp-job-manager-post-types.php:188
844
  msgid "No %s found in trash"
845
  msgstr ""
846
 
847
+ #: includes/class-wp-job-manager-post-types.php:191
848
  msgid "This is where you can create and manage %s."
849
  msgstr ""
850
 
851
+ #: includes/class-wp-job-manager-post-types.php:216
852
  #: wp-job-manager-functions.php:159
853
  msgctxt "post status"
854
  msgid "Expired"
855
  msgstr ""
856
 
857
+ #: includes/class-wp-job-manager-post-types.php:221
858
  msgid "Expired <span class=\"count\">(%s)</span>"
859
  msgid_plural "Expired <span class=\"count\">(%s)</span>"
860
  msgstr[0] ""
884
  msgid "%s has been deleted"
885
  msgstr ""
886
 
887
+ #: includes/class-wp-job-manager-shortcodes.php:163
 
 
 
 
888
  #: includes/class-wp-job-manager-widgets.php:148
889
  #: includes/forms/class-wp-job-manager-form-submit-job.php:131
890
  msgid "Title"
891
  msgstr ""
892
 
893
+ #: includes/class-wp-job-manager-shortcodes.php:165
894
  msgid "Date Posted"
895
  msgstr ""
896
 
897
+ #: includes/class-wp-job-manager-shortcodes.php:166
898
  msgid "Date Expires"
899
  msgstr ""
900
 
901
+ #: includes/class-wp-job-manager-shortcodes.php:260
902
+ #: includes/class-wp-job-manager-shortcodes.php:293
903
  msgid "Load more listings"
904
  msgstr ""
905
 
926
  msgid "Invalid listing"
927
  msgstr ""
928
 
929
+ #: includes/forms/class-wp-job-manager-form-edit-job.php:77
930
  msgid "Save changes"
931
  msgstr ""
932
 
933
+ #: includes/forms/class-wp-job-manager-form-edit-job.php:104
934
  msgid "Your changes have been saved."
935
  msgstr ""
936
 
937
+ #: includes/forms/class-wp-job-manager-form-edit-job.php:104
938
  msgid "View &rarr;"
939
  msgstr ""
940
 
943
  msgstr ""
944
 
945
  #: includes/forms/class-wp-job-manager-form-submit-job.php:28
946
+ #: includes/forms/class-wp-job-manager-form-submit-job.php:763
947
  msgid "Preview"
948
  msgstr ""
949
 
1035
  msgid "Please enter a valid application email address or URL"
1036
  msgstr ""
1037
 
1038
+ #: includes/forms/class-wp-job-manager-form-submit-job.php:539
1039
  msgid "Preview &rarr;"
1040
  msgstr ""
1041
 
1042
+ #: includes/forms/class-wp-job-manager-form-submit-job.php:577
1043
  msgid "You must be signed in to post a new listing."
1044
  msgstr ""
1045
 
1046
+ #: includes/forms/class-wp-job-manager-form-submit-job.php:757
1047
  msgid "Submit Listing &rarr;"
1048
  msgstr ""
1049
 
1050
+ #: includes/forms/class-wp-job-manager-form-submit-job.php:758
1051
  msgid "&larr; Edit listing"
1052
  msgstr ""
1053
 
1054
+ #: includes/forms/class-wp-job-manager-form-submit-job.php:860
1055
+ #: includes/forms/class-wp-job-manager-form-submit-job.php:886
1056
  msgid "\"%s\" (filetype %s) needs to be one of the following file types: %s"
1057
  msgstr ""
1058
 
1072
  msgid "Have an account?"
1073
  msgstr ""
1074
 
1075
+ #: templates/account-signin.php:23 templates/job-dashboard-login.php:3
1076
  msgid "Sign in"
1077
  msgstr ""
1078
 
1153
  msgid "Apply for job"
1154
  msgstr ""
1155
 
1156
+ #: templates/job-dashboard-login.php:3
1157
+ msgid "You need to be signed in to manage your listings."
1158
+ msgstr ""
1159
+
1160
  #: templates/job-dashboard.php:2
1161
  msgid ""
1162
  "Your listings are shown in the table below. Expired listings will be "
1235
  msgid "Active"
1236
  msgstr ""
1237
 
1238
+ #: wp-job-manager-functions.php:265
1239
  msgid "Reset"
1240
  msgstr ""
1241
 
1242
+ #: wp-job-manager-functions.php:269
1243
  msgid "RSS"
1244
  msgstr ""
1245
 
1246
+ #: wp-job-manager-functions.php:323
1247
  msgid "Your email address isn&#8217;t correct."
1248
  msgstr ""
1249
 
1250
+ #: wp-job-manager-functions.php:326
1251
  msgid "This email is already registered, please choose another one."
1252
  msgstr ""
1253
 
1254
+ #: wp-job-manager-functions.php:457
1255
  msgid "Choose a category&hellip;"
1256
  msgstr ""
1257
 
1267
  msgid "Anywhere"
1268
  msgstr ""
1269
 
1270
+ #: wp-job-manager.php:124
1271
  msgid "Are you sure you want to delete this listing?"
1272
  msgstr ""
1273
 
readme.txt CHANGED
@@ -3,8 +3,8 @@ Contributors: mikejolley
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=mike.jolley@me.com&currency_code=&amount=&return=&item_name=Buy+me+a+coffee+for+A+New+Job+Board+Plugin+for+WordPress
4
  Tags: job listing, job board, job, jobs, company, hiring, employment, employees, candidate, freelance, internship
5
  Requires at least: 3.8
6
- Tested up to: 4.0
7
- Stable tag: 1.18.0
8
 
9
  Manage job listings from the WordPress admin panel, and allow users to post jobs directly to your site.
10
 
@@ -119,6 +119,21 @@ You can view (and contribute) translations via the [Transifex project here](http
119
 
120
  == Changelog ==
121
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
122
  = 1.18.0 =
123
  * Fix - Keep post name when pending job is posted by non-admin.
124
  * Fix - Prevent special chars breaking the feeds.
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=mike.jolley@me.com&currency_code=&amount=&return=&item_name=Buy+me+a+coffee+for+A+New+Job+Board+Plugin+for+WordPress
4
  Tags: job listing, job board, job, jobs, company, hiring, employment, employees, candidate, freelance, internship
5
  Requires at least: 3.8
6
+ Tested up to: 4.1
7
+ Stable tag: 1.19.0
8
 
9
  Manage job listings from the WordPress admin panel, and allow users to post jobs directly to your site.
10
 
119
 
120
  == Changelog ==
121
 
122
+ = 1.19.0 =
123
+ * Feature - Added html5 required attribute to required fields.
124
+ * Feature - Added compatibility with RP4WP.
125
+ * Fix - Chosen RTL.
126
+ * Fix - Addded additonal check to check edit capabilities.
127
+ * Fix - Add correct step input to submission form.
128
+ * Tweak - Add CSS class to 'showing' bar when shoing all results (no filters).
129
+ * Tweak - Geocode, use sublocality_level_1 as city.
130
+ * Tweak - Don't update slug when editing via the frontend.
131
+ * Tweak - Set default meta data for new jobs.
132
+ * Tweak - Add geolocation data after import with WP ALL Import.
133
+ * Tweak - Filter to disable chosen: job_manager_chosen_enabled
134
+ * Tweak - Login link on job dashboard. job-dashboard-login.php template file.
135
+ * Tweak - Made backend management honour capabilities of users. Props to minderdl.
136
+
137
  = 1.18.0 =
138
  * Fix - Keep post name when pending job is posted by non-admin.
139
  * Fix - Prevent special chars breaking the feeds.
templates/account-signin.php CHANGED
@@ -35,7 +35,7 @@
35
  </fieldset>
36
  <?php if ( $registration_enabled ) : ?>
37
  <fieldset>
38
- <label><?php _e( 'Your email', 'wp-job-manager' ); ?> <?php if ( ! $account_required ) echo '<small>' . __( '(optional)', 'wp-job-manager' ) . '</small>'; ?></label>
39
  <div class="field">
40
  <input type="email" class="input-text" name="create_account_email" id="account_email" placeholder="<?php esc_attr_e( 'you@yourdomain.com', 'wp-job-manager' ); ?>" value="<?php if ( ! empty( $_POST['create_account_email'] ) ) echo sanitize_text_field( stripslashes( $_POST['create_account_email'] ) ); ?>" />
41
  </div>
35
  </fieldset>
36
  <?php if ( $registration_enabled ) : ?>
37
  <fieldset>
38
+ <label><?php _e( 'Your email', 'wp-job-manager' ); ?> <?php echo apply_filters( 'submit_job_form_required_label', ( ! $account_required ) ? ' <small>' . __( '(optional)', 'wp-job-manager' ) . '</small>' : '' ); ?></label>
39
  <div class="field">
40
  <input type="email" class="input-text" name="create_account_email" id="account_email" placeholder="<?php esc_attr_e( 'you@yourdomain.com', 'wp-job-manager' ); ?>" value="<?php if ( ! empty( $_POST['create_account_email'] ) ) echo sanitize_text_field( stripslashes( $_POST['create_account_email'] ) ); ?>" />
41
  </div>
templates/form-fields/checkbox-field.php CHANGED
@@ -1,2 +1,10 @@
1
- <input type="checkbox" class="input-checkbox" name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>" id="<?php echo esc_attr( $key ); ?>" <?php checked( ! empty( $field['value'] ), true ); ?> value="1" />
 
 
 
 
 
 
 
 
2
  <?php if ( ! empty( $field['description'] ) ) : ?><small class="description"><?php echo $field['description']; ?></small><?php endif; ?>
1
+ <input
2
+ type="checkbox"
3
+ class="input-checkbox"
4
+ name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>"
5
+ id="<?php echo esc_attr( $key ); ?>"
6
+ <?php checked( ! empty( $field['value'] ), true ); ?>
7
+ value="1"
8
+ <?php if ( ! empty( $field['required'] ) ) echo 'required'; ?>
9
+ />
10
  <?php if ( ! empty( $field['description'] ) ) : ?><small class="description"><?php echo $field['description']; ?></small><?php endif; ?>
templates/form-fields/multiselect-field.php CHANGED
@@ -1,4 +1,4 @@
1
- <select multiple="multiple" name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>[]" id="<?php echo esc_attr( $key ); ?>" class="job-manager-multiselect">
2
  <?php foreach ( $field['options'] as $key => $value ) : ?>
3
  <option value="<?php echo esc_attr( $key ); ?>" <?php if ( ! empty( $field['value'] ) && is_array( $field['value'] ) ) selected( in_array( $key, $field['value'] ), true ); ?>><?php echo esc_html( $value ); ?></option>
4
  <?php endforeach; ?>
1
+ <select multiple="multiple" name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>[]" id="<?php echo esc_attr( $key ); ?>" class="job-manager-multiselect" <?php if ( ! empty( $field['required'] ) ) echo 'required'; ?>>
2
  <?php foreach ( $field['options'] as $key => $value ) : ?>
3
  <option value="<?php echo esc_attr( $key ); ?>" <?php if ( ! empty( $field['value'] ) && is_array( $field['value'] ) ) selected( in_array( $key, $field['value'] ), true ); ?>><?php echo esc_html( $value ); ?></option>
4
  <?php endforeach; ?>
templates/form-fields/password-field.php CHANGED
@@ -1,2 +1,11 @@
1
- <input type="password" class="input-text" name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>" id="<?php echo esc_attr( $key ); ?>" placeholder="<?php echo esc_attr( $field['placeholder'] ); ?>" value="<?php echo isset( $field['value'] ) ? esc_attr( $field['value'] ) : ''; ?>" maxlength="<?php echo ! empty( $field['maxlength'] ) ? $field['maxlength'] : ''; ?>" />
 
 
 
 
 
 
 
 
 
2
  <?php if ( ! empty( $field['description'] ) ) : ?><small class="description"><?php echo $field['description']; ?></small><?php endif; ?>
1
+ <input
2
+ type="password"
3
+ class="input-text"
4
+ name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>"
5
+ id="<?php echo esc_attr( $key ); ?>"
6
+ placeholder="<?php echo esc_attr( $field['placeholder'] ); ?>"
7
+ value="<?php echo isset( $field['value'] ) ? esc_attr( $field['value'] ) : ''; ?>"
8
+ maxlength="<?php echo ! empty( $field['maxlength'] ) ? $field['maxlength'] : ''; ?>"
9
+ <?php if ( ! empty( $field['required'] ) ) echo 'required'; ?>
10
+ />
11
  <?php if ( ! empty( $field['description'] ) ) : ?><small class="description"><?php echo $field['description']; ?></small><?php endif; ?>
templates/form-fields/select-field.php CHANGED
@@ -1,4 +1,4 @@
1
- <select name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>" id="<?php echo esc_attr( $key ); ?>">
2
  <?php foreach ( $field['options'] as $key => $value ) : ?>
3
  <option value="<?php echo esc_attr( $key ); ?>" <?php if ( isset( $field['value'] ) || isset( $field['default'] ) ) selected( isset( $field['value'] ) ? $field['value'] : $field['default'], $key ); ?>><?php echo esc_html( $value ); ?></option>
4
  <?php endforeach; ?>
1
+ <select name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>" id="<?php echo esc_attr( $key ); ?>" <?php if ( ! empty( $field['required'] ) ) echo 'required'; ?>>
2
  <?php foreach ( $field['options'] as $key => $value ) : ?>
3
  <option value="<?php echo esc_attr( $key ); ?>" <?php if ( isset( $field['value'] ) || isset( $field['default'] ) ) selected( isset( $field['value'] ) ? $field['value'] : $field['default'], $key ); ?>><?php echo esc_html( $value ); ?></option>
4
  <?php endforeach; ?>
templates/form-fields/text-field.php CHANGED
@@ -1,2 +1,11 @@
1
- <input type="text" class="input-text" name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>" id="<?php echo esc_attr( $key ); ?>" placeholder="<?php echo esc_attr( $field['placeholder'] ); ?>" value="<?php echo isset( $field['value'] ) ? esc_attr( $field['value'] ) : ''; ?>" maxlength="<?php echo ! empty( $field['maxlength'] ) ? $field['maxlength'] : ''; ?>" />
 
 
 
 
 
 
 
 
 
2
  <?php if ( ! empty( $field['description'] ) ) : ?><small class="description"><?php echo $field['description']; ?></small><?php endif; ?>
1
+ <input
2
+ type="text"
3
+ class="input-text"
4
+ name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>"
5
+ id="<?php echo esc_attr( $key ); ?>"
6
+ placeholder="<?php echo esc_attr( $field['placeholder'] ); ?>"
7
+ value="<?php echo isset( $field['value'] ) ? esc_attr( $field['value'] ) : ''; ?>"
8
+ maxlength="<?php echo ! empty( $field['maxlength'] ) ? $field['maxlength'] : ''; ?>"
9
+ <?php if ( ! empty( $field['required'] ) ) echo 'required'; ?>
10
+ />
11
  <?php if ( ! empty( $field['description'] ) ) : ?><small class="description"><?php echo $field['description']; ?></small><?php endif; ?>
templates/form-fields/textarea-field.php CHANGED
@@ -1,2 +1,11 @@
1
- <textarea cols="20" rows="3" class="input-text" name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>" id="<?php echo esc_attr( $key ); ?>" placeholder="<?php echo esc_attr( $field['placeholder'] ); ?>" maxlength="<?php echo ! empty( $field['maxlength'] ) ? $field['maxlength'] : ''; ?>"><?php echo isset( $field['value'] ) ? esc_textarea( $field['value'] ) : ''; ?></textarea>
 
 
 
 
 
 
 
 
 
2
  <?php if ( ! empty( $field['description'] ) ) : ?><small class="description"><?php echo $field['description']; ?></small><?php endif; ?>
1
+ <textarea
2
+ cols="20"
3
+ rows="3"
4
+ class="input-text"
5
+ name="<?php echo esc_attr( isset( $field['name'] ) ? $field['name'] : $key ); ?>"
6
+ id="<?php echo esc_attr( $key ); ?>"
7
+ placeholder="<?php echo esc_attr( $field['placeholder'] ); ?>"
8
+ maxlength="<?php echo ! empty( $field['maxlength'] ) ? $field['maxlength'] : ''; ?>"
9
+ <?php if ( ! empty( $field['required'] ) ) echo 'required'; ?>
10
+ ><?php echo isset( $field['value'] ) ? esc_textarea( $field['value'] ) : ''; ?></textarea>
11
  <?php if ( ! empty( $field['description'] ) ) : ?><small class="description"><?php echo $field['description']; ?></small><?php endif; ?>
templates/job-dashboard-login.php ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ <div id="job-manager-job-dashboard">
2
+
3
+ <p class="account-sign-in"><?php _e( 'You need to be signed in to manage your listings.', 'wp-job-manager' ); ?> <a class="button" href="<?php echo apply_filters( 'job_manager_job_dashboard_login_url', wp_login_url( get_permalink() ) ); ?>"><?php _e( 'Sign in', 'wp-job-manager' ); ?></a></p>
4
+
5
+ </div>
templates/job-submit.php CHANGED
@@ -51,7 +51,7 @@ global $job_manager;
51
  <p>
52
  <input type="hidden" name="job_manager_form" value="<?php echo $form; ?>" />
53
  <input type="hidden" name="job_id" value="<?php echo esc_attr( $job_id ); ?>" />
54
- <input type="hidden" name="step" value="0" />
55
  <input type="submit" name="submit_job" class="button" value="<?php esc_attr_e( $submit_button_text ); ?>" />
56
  </p>
57
 
51
  <p>
52
  <input type="hidden" name="job_manager_form" value="<?php echo $form; ?>" />
53
  <input type="hidden" name="job_id" value="<?php echo esc_attr( $job_id ); ?>" />
54
+ <input type="hidden" name="step" value="<?php echo esc_attr( $step ); ?>" />
55
  <input type="submit" name="submit_job" class="button" value="<?php esc_attr_e( $submit_button_text ); ?>" />
56
  </p>
57
 
wp-job-manager-functions.php CHANGED
@@ -399,7 +399,7 @@ function job_manager_user_can_edit_job( $job_id ) {
399
 
400
  if ( ! is_user_logged_in() ) {
401
  $can_edit = false;
402
- } elseif ( $job->post_author != get_current_user_id() ) {
403
  $can_edit = false;
404
  }
405
 
@@ -450,7 +450,7 @@ function job_manager_dropdown_categories( $args = '' ) {
450
  'hierarchical' => 0,
451
  'name' => 'cat',
452
  'id' => '',
453
- 'class' => 'job-manager-category-dropdown',
454
  'depth' => 0,
455
  'taxonomy' => 'job_listing_category',
456
  'value' => 'id',
399
 
400
  if ( ! is_user_logged_in() ) {
401
  $can_edit = false;
402
+ } elseif ( $job->post_author != get_current_user_id() && ! current_user_can( 'edit_post', $job_id ) ) {
403
  $can_edit = false;
404
  }
405
 
450
  'hierarchical' => 0,
451
  'name' => 'cat',
452
  'id' => '',
453
+ 'class' => 'job-manager-category-dropdown ' . ( is_rtl() ? 'chosen-rtl' : '' ),
454
  'depth' => 0,
455
  'taxonomy' => 'job_listing_category',
456
  'value' => 'id',
wp-job-manager.php CHANGED
@@ -3,11 +3,11 @@
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.18.0
7
  Author: Mike Jolley
8
  Author URI: http://mikejolley.com
9
  Requires at least: 3.8
10
- Tested up to: 4.0
11
  Text Domain: wp-job-manager
12
  Domain Path: /languages
13
 
@@ -31,7 +31,7 @@ class WP_Job_Manager {
31
  */
32
  public function __construct() {
33
  // Define constants
34
- define( 'JOB_MANAGER_VERSION', '1.18.0' );
35
  define( 'JOB_MANAGER_PLUGIN_DIR', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
36
  define( 'JOB_MANAGER_PLUGIN_URL', untrailingslashit( plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) ) );
37
 
@@ -79,6 +79,9 @@ class WP_Job_Manager {
79
  * Localisation
80
  */
81
  public function load_plugin_textdomain() {
 
 
 
82
  load_plugin_textdomain( 'wp-job-manager', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
83
  }
84
 
@@ -94,28 +97,33 @@ class WP_Job_Manager {
94
  * Register and enqueue scripts and css
95
  */
96
  public function frontend_scripts() {
97
- $ajax_url = admin_url( 'admin-ajax.php', 'relative' );
 
98
 
99
  // WPML workaround until this is standardized
100
  if ( defined( 'ICL_LANGUAGE_CODE' ) ) {
101
  $ajax_url = add_query_arg( 'lang', ICL_LANGUAGE_CODE, $ajax_url );
102
  }
103
 
104
- wp_register_script( 'wp-job-manager-ajax-filters', JOB_MANAGER_PLUGIN_URL . '/assets/js/ajax-filters.min.js', array( 'jquery', 'chosen' ), JOB_MANAGER_VERSION, true );
 
 
 
 
 
 
 
105
  wp_register_script( 'wp-job-manager-job-dashboard', JOB_MANAGER_PLUGIN_URL . '/assets/js/job-dashboard.min.js', array( 'jquery' ), JOB_MANAGER_VERSION, true );
106
  wp_register_script( 'wp-job-manager-job-application', JOB_MANAGER_PLUGIN_URL . '/assets/js/job-application.min.js', array( 'jquery' ), JOB_MANAGER_VERSION, true );
107
  wp_register_script( 'wp-job-manager-job-submission', JOB_MANAGER_PLUGIN_URL . '/assets/js/job-submission.min.js', array( 'jquery' ), JOB_MANAGER_VERSION, true );
108
- wp_register_script( 'chosen', JOB_MANAGER_PLUGIN_URL . '/assets/js/jquery-chosen/chosen.jquery.min.js', array( 'jquery' ), '1.1.0', true );
109
- wp_register_script( 'wp-job-manager-term-multiselect', JOB_MANAGER_PLUGIN_URL . '/assets/js/term-multiselect.min.js', array( 'jquery', 'chosen' ), JOB_MANAGER_VERSION, true );
110
-
111
  wp_localize_script( 'wp-job-manager-ajax-filters', 'job_manager_ajax_filters', array(
112
- 'ajax_url' => $ajax_url
 
113
  ) );
114
  wp_localize_script( 'wp-job-manager-job-dashboard', 'job_manager_job_dashboard', array(
115
  'i18n_confirm_delete' => __( 'Are you sure you want to delete this listing?', 'wp-job-manager' )
116
  ) );
117
 
118
- wp_enqueue_style( 'chosen', JOB_MANAGER_PLUGIN_URL . '/assets/css/chosen.css' );
119
  wp_enqueue_style( 'wp-job-manager-frontend', JOB_MANAGER_PLUGIN_URL . '/assets/css/frontend.css' );
120
  }
121
  }
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.19.0
7
  Author: Mike Jolley
8
  Author URI: http://mikejolley.com
9
  Requires at least: 3.8
10
+ Tested up to: 4.1
11
  Text Domain: wp-job-manager
12
  Domain Path: /languages
13
 
31
  */
32
  public function __construct() {
33
  // Define constants
34
+ define( 'JOB_MANAGER_VERSION', '1.19.0' );
35
  define( 'JOB_MANAGER_PLUGIN_DIR', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
36
  define( 'JOB_MANAGER_PLUGIN_URL', untrailingslashit( plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) ) );
37
 
79
  * Localisation
80
  */
81
  public function load_plugin_textdomain() {
82
+ $locale = apply_filters( 'plugin_locale', get_locale(), 'wp-job-manager' );
83
+
84
+ load_textdomain( 'wp-job-manager', WP_LANG_DIR . "/wp-job-manager/wp-job-manager-$locale.mo" );
85
  load_plugin_textdomain( 'wp-job-manager', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
86
  }
87
 
97
  * Register and enqueue scripts and css
98
  */
99
  public function frontend_scripts() {
100
+ $ajax_url = admin_url( 'admin-ajax.php', 'relative' );
101
+ $ajax_filter_deps = array( 'jquery' );
102
 
103
  // WPML workaround until this is standardized
104
  if ( defined( 'ICL_LANGUAGE_CODE' ) ) {
105
  $ajax_url = add_query_arg( 'lang', ICL_LANGUAGE_CODE, $ajax_url );
106
  }
107
 
108
+ if ( apply_filters( 'job_manager_chosen_enabled', true ) ) {
109
+ wp_register_script( 'chosen', JOB_MANAGER_PLUGIN_URL . '/assets/js/jquery-chosen/chosen.jquery.min.js', array( 'jquery' ), '1.1.0', true );
110
+ wp_register_script( 'wp-job-manager-term-multiselect', JOB_MANAGER_PLUGIN_URL . '/assets/js/term-multiselect.min.js', array( 'jquery', 'chosen' ), JOB_MANAGER_VERSION, true );
111
+ wp_enqueue_style( 'chosen', JOB_MANAGER_PLUGIN_URL . '/assets/css/chosen.css' );
112
+ $ajax_filter_deps[] = 'chosen';
113
+ }
114
+
115
+ wp_register_script( 'wp-job-manager-ajax-filters', JOB_MANAGER_PLUGIN_URL . '/assets/js/ajax-filters.min.js', $ajax_filter_deps, JOB_MANAGER_VERSION, true );
116
  wp_register_script( 'wp-job-manager-job-dashboard', JOB_MANAGER_PLUGIN_URL . '/assets/js/job-dashboard.min.js', array( 'jquery' ), JOB_MANAGER_VERSION, true );
117
  wp_register_script( 'wp-job-manager-job-application', JOB_MANAGER_PLUGIN_URL . '/assets/js/job-application.min.js', array( 'jquery' ), JOB_MANAGER_VERSION, true );
118
  wp_register_script( 'wp-job-manager-job-submission', JOB_MANAGER_PLUGIN_URL . '/assets/js/job-submission.min.js', array( 'jquery' ), JOB_MANAGER_VERSION, true );
 
 
 
119
  wp_localize_script( 'wp-job-manager-ajax-filters', 'job_manager_ajax_filters', array(
120
+ 'ajax_url' => $ajax_url,
121
+ 'is_rtl' => is_rtl() ? 1 : 0
122
  ) );
123
  wp_localize_script( 'wp-job-manager-job-dashboard', 'job_manager_job_dashboard', array(
124
  'i18n_confirm_delete' => __( 'Are you sure you want to delete this listing?', 'wp-job-manager' )
125
  ) );
126
 
 
127
  wp_enqueue_style( 'wp-job-manager-frontend', JOB_MANAGER_PLUGIN_URL . '/assets/css/frontend.css' );
128
  }
129
  }