Version Description
- Fix - Transient clear query.
- Tweak - New user notification pluggable function.
- Tweak - Use subquery in keyword search to avoid long queries.
- Tweak - Only search for keywords of 2 or more characters.
- Tweak - job_manager_get_listings_keyword_length_threshold filter.
- Tweak - PolyLang compatibility functions.
- Tweak - Unattach company logo when a new attachment is uploaded.
Download this release
Release Info
Developer | mikejolley |
Plugin | WP Job Manager |
Version | 1.23.12 |
Comparing to | |
See all releases |
Code changes from version 1.23.11 to 1.23.12
- assets/css/frontend.css +1 -1
- assets/css/frontend.less +3 -0
- includes/admin/class-wp-job-manager-cpt.php +2 -2
- includes/admin/class-wp-job-manager-settings.php +7 -2
- includes/class-wp-job-manager-cache-helper.php +4 -10
- includes/class-wp-job-manager-post-types.php +84 -32
- includes/class-wp-job-manager-shortcodes.php +15 -9
- includes/forms/class-wp-job-manager-form-submit-job.php +3 -1
- languages/wp-job-manager.pot +65 -65
- readme.txt +11 -2
- templates/content-single-job_listing-meta.php +2 -2
- templates/content-single-job_listing.php +1 -3
- wp-job-manager-functions.php +45 -19
- wp-job-manager-template.php +2 -2
- wp-job-manager.php +3 -3
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}@font-face{font-family:jm-logo;src:url(../font/jm-logo/jm.eot?ycsbky);src:url(../font/jm-logo/jm.eot?#iefixycsbky) format('embedded-opentype'),url(../font/jm-logo/jm.woff?ycsbky) format('woff'),url(../font/jm-logo/jm.ttf?ycsbky) format('truetype'),url(../font/jm-logo/jm.svg?ycsbky#icomoon) 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 2em 1em 3.5em!important;margin:0 0 2em!important;position:relative;background-color:#fff;color:#666;border-top:3px solid #999;list-style:none outside!important;width:auto;zoom:1;box-shadow:0 1px 1px rgba(0,0,0,.2)}.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:"";font-family:sans-serif;display:inline-block;position:absolute;top:1em;left:1.5em}.job-manager-error li,.job-manager-info li,.job-manager-message li{list-style:none outside!important;padding-left:0!important;margin-left:0!important}.job-manager-error.job-manager-message,.job-manager-info.job-manager-message,.job-manager-message.job-manager-message{border-top-color:#8fae1b}.job-manager-error.job-manager-message:before,.job-manager-info.job-manager-message:before,.job-manager-message.job-manager-message:before{color:#8fae1b;content:"\2713"}.job-manager-error.job-manager-info,.job-manager-info.job-manager-info,.job-manager-message.job-manager-info{border-top-color:#1e85be}.job-manager-error.job-manager-info:before,.job-manager-info.job-manager-info:before,.job-manager-message.job-manager-info:before{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-color:#b81c23}.job-manager-error.job-manager-error:before,.job-manager-info.job-manager-error:before,.job-manager-message.job-manager-error:before{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:2em;font-style:italic;margin-bottom:1em;display:block}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-preview img{height:64px;margin:0;vertical-align:top}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-preview a{line-height:64px;display:inline-block;padding:0 0 0 1em}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-name{display:block}.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: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;position:relative;padding-bottom:56.25%;padding-top:30px;height:0;overflow:hidden}.single_job_listing .company .company_video embed,.single_job_listing .company .company_video iframe,.single_job_listing .company .company_video object{position:absolute;top:0;left:0;width:100%;height:100%;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 .listing-expired,.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 .listing-expired:before,.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'}.job-manager-application-wrapper{clear:both;border:1px solid #eee;padding:.75em 1em 0;margin:1em 0;line-height:1.5em;display:block;position:relative;box-shadow:0 1px 1px rgba(0,0,0,.1)}.job-manager-application-wrapper .application,.single_job_listing .application{padding:0;margin:0 0 1em;overflow:hidden}.job-manager-application-wrapper .application .application_button,.job-manager-application-wrapper .application .application_details,.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}.job-manager-application-wrapper .application .application_button,.single_job_listing .application .application_button{text-align:center;font-size:1.1em;line-height:1em;display:inline-block;margin:0 .5em 0 0;padding:.90909091em 2em;outline:0}.job-manager-application-wrapper .application .application_details,.single_job_listing .application .application_details{clear:both;border:1px solid #eee;padding:.75em 1em 0;margin:1em 0;line-height:1.5em;display:block;position:relative;box-shadow:0 1px 1px rgba(0,0,0,.1)}.job-manager-application-wrapper .application .application_details p,.single_job_listing .application .application_details p{margin:0 0 .75em}.job-manager-application-wrapper .application .application_details:before,.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}.job-manager-application-wrapper .application .application_details:after,.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_previous{border-top:1px solid #eee}div.job_listings .load_more_jobs+ul.job_listings{border-top:0}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}}.chosen-container{width:100%!important}.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}.rtl .job-manager-form label{float:right}.rtl .entry-content .job_listing_preview_title .button,.rtl .job-manager-form div.field,.rtl .job_listing_preview_title .button{float:left}.rtl .single_job_listing .meta li{float:right;margin:0 0 0 1em}
|
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}@font-face{font-family:jm-logo;src:url(../font/jm-logo/jm.eot?ycsbky);src:url(../font/jm-logo/jm.eot?#iefixycsbky) format('embedded-opentype'),url(../font/jm-logo/jm.woff?ycsbky) format('woff'),url(../font/jm-logo/jm.ttf?ycsbky) format('truetype'),url(../font/jm-logo/jm.svg?ycsbky#icomoon) 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 2em 1em 3.5em!important;margin:0 0 2em!important;position:relative;background-color:#fff;color:#666;border-top:3px solid #999;list-style:none outside!important;width:auto;zoom:1;box-shadow:0 1px 1px rgba(0,0,0,.2)}.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:"";font-family:sans-serif;display:inline-block;position:absolute;top:1em;left:1.5em}.job-manager-error li,.job-manager-info li,.job-manager-message li{list-style:none outside!important;padding-left:0!important;margin-left:0!important}.job-manager-error.job-manager-message,.job-manager-info.job-manager-message,.job-manager-message.job-manager-message{border-top-color:#8fae1b}.job-manager-error.job-manager-message:before,.job-manager-info.job-manager-message:before,.job-manager-message.job-manager-message:before{color:#8fae1b;content:"\2713"}.job-manager-error.job-manager-info,.job-manager-info.job-manager-info,.job-manager-message.job-manager-info{border-top-color:#1e85be}.job-manager-error.job-manager-info:before,.job-manager-info.job-manager-info:before,.job-manager-message.job-manager-info:before{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-color:#b81c23}.job-manager-error.job-manager-error:before,.job-manager-info.job-manager-error:before,.job-manager-message.job-manager-error:before{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:2em;font-style:italic;margin-bottom:1em;display:block}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-preview img{height:64px;margin:0;vertical-align:top}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-preview a{line-height:64px;display:inline-block;padding:0 0 0 1em}.job-manager-form fieldset .job-manager-uploaded-files .job-manager-uploaded-file .job-manager-uploaded-file-name{display:block}.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: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;position:relative;padding-bottom:56.25%;padding-top:30px;height:0;overflow:hidden}.single_job_listing .company .company_video embed,.single_job_listing .company .company_video iframe,.single_job_listing .company .company_video object{position:absolute;top:0;left:0;width:100%;height:100%;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 .listing-expired,.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 .listing-expired:before,.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 .job_description{margin:0 0 1.5em}.job-manager-application-wrapper{clear:both;border:1px solid #eee;padding:.75em 1em 0;margin:1em 0;line-height:1.5em;display:block;position:relative;box-shadow:0 1px 1px rgba(0,0,0,.1)}.job-manager-application-wrapper .application,.single_job_listing .application{padding:0;margin:0 0 1em;overflow:hidden}.job-manager-application-wrapper .application .application_button,.job-manager-application-wrapper .application .application_details,.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}.job-manager-application-wrapper .application .application_button,.single_job_listing .application .application_button{text-align:center;font-size:1.1em;line-height:1em;display:inline-block;margin:0 .5em 0 0;padding:.90909091em 2em;outline:0}.job-manager-application-wrapper .application .application_details,.single_job_listing .application .application_details{clear:both;border:1px solid #eee;padding:.75em 1em 0;margin:1em 0;line-height:1.5em;display:block;position:relative;box-shadow:0 1px 1px rgba(0,0,0,.1)}.job-manager-application-wrapper .application .application_details p,.single_job_listing .application .application_details p{margin:0 0 .75em}.job-manager-application-wrapper .application .application_details:before,.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}.job-manager-application-wrapper .application .application_details:after,.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_previous{border-top:1px solid #eee}div.job_listings .load_more_jobs+ul.job_listings{border-top:0}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}}.chosen-container{width:100%!important}.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}.rtl .job-manager-form label{float:right}.rtl .entry-content .job_listing_preview_title .button,.rtl .job-manager-form div.field,.rtl .job_listing_preview_title .button{float:left}.rtl .single_job_listing .meta li{float:right;margin:0 0 0 1em}
|
assets/css/frontend.less
CHANGED
@@ -479,6 +479,9 @@ ul.job_listings {
|
|
479 |
content: '\e80e';
|
480 |
}
|
481 |
}
|
|
|
|
|
|
|
482 |
}
|
483 |
.job-manager-application-wrapper {
|
484 |
clear: both;
|
479 |
content: '\e80e';
|
480 |
}
|
481 |
}
|
482 |
+
.job_description {
|
483 |
+
margin: 0 0 1.5em;
|
484 |
+
}
|
485 |
}
|
486 |
.job-manager-application-wrapper {
|
487 |
clear: both;
|
includes/admin/class-wp-job-manager-cpt.php
CHANGED
@@ -292,7 +292,7 @@ class WP_Job_Manager_CPT {
|
|
292 |
echo '<div class="company">';
|
293 |
|
294 |
if ( get_the_company_website() ) {
|
295 |
-
the_company_name( '<span class="tips" data-tip="' . esc_attr( get_the_company_tagline() ) . '"><a href="' . get_the_company_website() . '">', '</a></span>' );
|
296 |
} else {
|
297 |
the_company_name( '<span class="tips" data-tip="' . esc_attr( get_the_company_tagline() ) . '">', '</span>' );
|
298 |
}
|
@@ -458,4 +458,4 @@ class WP_Job_Manager_CPT {
|
|
458 |
}
|
459 |
}
|
460 |
|
461 |
-
new WP_Job_Manager_CPT();
|
292 |
echo '<div class="company">';
|
293 |
|
294 |
if ( get_the_company_website() ) {
|
295 |
+
the_company_name( '<span class="tips" data-tip="' . esc_attr( get_the_company_tagline() ) . '"><a href="' . esc_url( get_the_company_website() ) . '">', '</a></span>' );
|
296 |
} else {
|
297 |
the_company_name( '<span class="tips" data-tip="' . esc_attr( get_the_company_tagline() ) . '">', '</span>' );
|
298 |
}
|
458 |
}
|
459 |
}
|
460 |
|
461 |
+
new WP_Job_Manager_CPT();
|
includes/admin/class-wp-job-manager-settings.php
CHANGED
@@ -329,16 +329,21 @@ class WP_Job_Manager_Settings {
|
|
329 |
}
|
330 |
|
331 |
break;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
332 |
case "" :
|
333 |
case "input" :
|
334 |
case "text" :
|
335 |
-
|
336 |
?><input id="setting-<?php echo $option['name']; ?>" class="regular-text" type="text" name="<?php echo $option['name']; ?>" value="<?php esc_attr_e( $value ); ?>" <?php echo implode( ' ', $attributes ); ?> <?php echo $placeholder; ?> /><?php
|
337 |
|
338 |
if ( $option['desc'] ) {
|
339 |
echo ' <p class="description">' . $option['desc'] . '</p>';
|
340 |
}
|
341 |
-
|
342 |
break;
|
343 |
default :
|
344 |
do_action( 'wp_job_manager_admin_field_' . $option['type'], $option, $attributes, $value, $placeholder );
|
329 |
}
|
330 |
|
331 |
break;
|
332 |
+
case "number" :
|
333 |
+
?><input id="setting-<?php echo $option['name']; ?>" class="regular-text" type="number" name="<?php echo $option['name']; ?>" value="<?php esc_attr_e( $value ); ?>" <?php echo implode( ' ', $attributes ); ?> <?php echo $placeholder; ?> /><?php
|
334 |
+
|
335 |
+
if ( $option['desc'] ) {
|
336 |
+
echo ' <p class="description">' . $option['desc'] . '</p>';
|
337 |
+
}
|
338 |
+
break;
|
339 |
case "" :
|
340 |
case "input" :
|
341 |
case "text" :
|
|
|
342 |
?><input id="setting-<?php echo $option['name']; ?>" class="regular-text" type="text" name="<?php echo $option['name']; ?>" value="<?php esc_attr_e( $value ); ?>" <?php echo implode( ' ', $attributes ); ?> <?php echo $placeholder; ?> /><?php
|
343 |
|
344 |
if ( $option['desc'] ) {
|
345 |
echo ' <p class="description">' . $option['desc'] . '</p>';
|
346 |
}
|
|
|
347 |
break;
|
348 |
default :
|
349 |
do_action( 'wp_job_manager_admin_field_' . $option['type'], $option, $attributes, $value, $placeholder );
|
includes/class-wp-job-manager-cache-helper.php
CHANGED
@@ -98,19 +98,13 @@ class WP_Job_Manager_Cache_Helper {
|
|
98 |
global $wpdb;
|
99 |
|
100 |
if ( ! wp_using_ext_object_cache() && ! defined( 'WP_SETUP_CONFIG' ) && ! defined( 'WP_INSTALLING' ) ) {
|
101 |
-
$
|
102 |
-
|
103 |
WHERE a.option_name LIKE %s
|
104 |
AND a.option_name NOT LIKE %s
|
105 |
AND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )
|
106 |
-
AND b.option_value < %
|
107 |
-
|
108 |
-
$affected = $wpdb->query( $wpdb->prepare( $sql, $wpdb->esc_like( '_transient_jm_' ) . '%', $wpdb->esc_like( '_transient_timeout_jm_' ) . '%', time(), $limit ) );
|
109 |
-
|
110 |
-
// If affected rows is equal to limit, there are more rows to delete. Delete in 10 secs.
|
111 |
-
if ( $affected === $limit ) {
|
112 |
-
wp_schedule_single_event( time() + 10, 'job_manager_clear_expired_transients' );
|
113 |
-
}
|
114 |
}
|
115 |
}
|
116 |
}
|
98 |
global $wpdb;
|
99 |
|
100 |
if ( ! wp_using_ext_object_cache() && ! defined( 'WP_SETUP_CONFIG' ) && ! defined( 'WP_INSTALLING' ) ) {
|
101 |
+
$sql = "
|
102 |
+
DELETE a, b FROM $wpdb->options a, $wpdb->options b
|
103 |
WHERE a.option_name LIKE %s
|
104 |
AND a.option_name NOT LIKE %s
|
105 |
AND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )
|
106 |
+
AND b.option_value < %s;";
|
107 |
+
$wpdb->query( $wpdb->prepare( $sql, $wpdb->esc_like( '_transient_jm_' ) . '%', $wpdb->esc_like( '_transient_timeout_jm_' ) . '%', time() ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
108 |
}
|
109 |
}
|
110 |
}
|
includes/class-wp-job-manager-post-types.php
CHANGED
@@ -10,7 +10,6 @@ class WP_Job_Manager_Post_Types {
|
|
10 |
public function __construct() {
|
11 |
add_action( 'init', array( $this, 'register_post_types' ), 0 );
|
12 |
add_filter( 'admin_head', array( $this, 'admin_head' ) );
|
13 |
-
add_filter( 'the_content', array( $this, 'job_content' ) );
|
14 |
add_action( 'job_manager_check_for_expired_jobs', array( $this, 'check_for_expired_jobs' ) );
|
15 |
add_action( 'job_manager_delete_old_previews', array( $this, 'delete_old_previews' ) );
|
16 |
|
@@ -32,8 +31,7 @@ class WP_Job_Manager_Post_Types {
|
|
32 |
|
33 |
add_filter( 'wp_insert_post_data', array( $this, 'fix_post_name' ), 10, 2 );
|
34 |
add_action( 'add_post_meta', array( $this, 'maybe_add_geolocation_data' ), 10, 3 );
|
35 |
-
add_action( 'update_post_meta', array( $this, '
|
36 |
-
add_action( 'update_post_meta', array( $this, 'maybe_update_menu_order' ), 10, 4 );
|
37 |
add_action( 'wp_insert_post', array( $this, 'maybe_add_default_meta_data' ), 10, 2 );
|
38 |
|
39 |
add_action( 'before_delete_post', array( $this, 'before_delete_job' ) );
|
@@ -45,6 +43,9 @@ class WP_Job_Manager_Post_Types {
|
|
45 |
add_filter( 'rp4wp_get_template', array( $this, 'rp4wp_template' ), 10, 3 );
|
46 |
add_filter( 'rp4wp_related_meta_fields', array( $this, 'rp4wp_related_meta_fields' ), 10, 3 );
|
47 |
add_filter( 'rp4wp_related_meta_fields_weight', array( $this, 'rp4wp_related_meta_fields_weight' ), 10, 3 );
|
|
|
|
|
|
|
48 |
}
|
49 |
|
50 |
/**
|
@@ -219,8 +220,9 @@ class WP_Job_Manager_Post_Types {
|
|
219 |
*/
|
220 |
register_post_status( 'expired', array(
|
221 |
'label' => _x( 'Expired', 'post status', 'wp-job-manager' ),
|
222 |
-
'public' =>
|
223 |
-
'
|
|
|
224 |
'show_in_admin_all_list' => true,
|
225 |
'show_in_admin_status_list' => true,
|
226 |
'label_count' => _n_noop( 'Expired <span class="count">(%s)</span>', 'Expired <span class="count">(%s)</span>', 'wp-job-manager' ),
|
@@ -257,32 +259,39 @@ class WP_Job_Manager_Post_Types {
|
|
257 |
}
|
258 |
|
259 |
/**
|
260 |
-
*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
261 |
*/
|
262 |
public function job_content( $content ) {
|
263 |
global $post;
|
264 |
|
265 |
-
if ( ! is_singular( 'job_listing' ) || ! in_the_loop() ) {
|
266 |
return $content;
|
267 |
}
|
268 |
|
269 |
-
|
270 |
|
271 |
-
|
272 |
-
ob_start();
|
273 |
-
|
274 |
-
do_action( 'job_content_start' );
|
275 |
|
276 |
-
|
277 |
|
278 |
-
|
279 |
|
280 |
-
|
281 |
-
}
|
282 |
|
283 |
-
|
284 |
|
285 |
-
return apply_filters( 'job_manager_single_job_content',
|
286 |
}
|
287 |
|
288 |
/**
|
@@ -515,33 +524,46 @@ class WP_Job_Manager_Post_Types {
|
|
515 |
* @param int $post_id
|
516 |
* @param array $post
|
517 |
*/
|
518 |
-
public function maybe_add_geolocation_data( $object_id, $meta_key, $
|
519 |
if ( '_job_location' !== $meta_key || 'job_listing' !== get_post_type( $object_id ) ) {
|
520 |
return;
|
521 |
}
|
522 |
-
do_action( 'job_manager_job_location_edited', $object_id, $
|
523 |
}
|
524 |
|
525 |
/**
|
526 |
-
*
|
527 |
*/
|
528 |
-
public function
|
529 |
-
if ( '
|
530 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
531 |
}
|
532 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
533 |
}
|
534 |
|
535 |
/**
|
536 |
* Maybe set menu_order if the featured status of a job is changed
|
537 |
*/
|
538 |
-
public function maybe_update_menu_order( $meta_id, $object_id, $meta_key, $
|
539 |
-
if ( '_featured' !== $meta_key || 'job_listing' !== get_post_type( $object_id ) ) {
|
540 |
-
return;
|
541 |
-
}
|
542 |
global $wpdb;
|
543 |
|
544 |
-
if ( '1' == $
|
545 |
$wpdb->update( $wpdb->posts, array( 'menu_order' => -1 ), array( 'ID' => $object_id ) );
|
546 |
} else {
|
547 |
$wpdb->update( $wpdb->posts, array( 'menu_order' => 0 ), array( 'ID' => $object_id, 'menu_order' => -1 ) );
|
@@ -550,12 +572,42 @@ class WP_Job_Manager_Post_Types {
|
|
550 |
clean_post_cache( $object_id );
|
551 |
}
|
552 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
553 |
/**
|
554 |
* Legacy
|
555 |
* @deprecated 1.19.1
|
556 |
*/
|
557 |
-
public function maybe_generate_geolocation_data( $meta_id, $object_id, $meta_key, $
|
558 |
-
$this->maybe_update_geolocation_data( $meta_id, $object_id, $meta_key, $
|
559 |
}
|
560 |
|
561 |
/**
|
10 |
public function __construct() {
|
11 |
add_action( 'init', array( $this, 'register_post_types' ), 0 );
|
12 |
add_filter( 'admin_head', array( $this, 'admin_head' ) );
|
|
|
13 |
add_action( 'job_manager_check_for_expired_jobs', array( $this, 'check_for_expired_jobs' ) );
|
14 |
add_action( 'job_manager_delete_old_previews', array( $this, 'delete_old_previews' ) );
|
15 |
|
31 |
|
32 |
add_filter( 'wp_insert_post_data', array( $this, 'fix_post_name' ), 10, 2 );
|
33 |
add_action( 'add_post_meta', array( $this, 'maybe_add_geolocation_data' ), 10, 3 );
|
34 |
+
add_action( 'update_post_meta', array( $this, 'update_post_meta' ), 10, 4 );
|
|
|
35 |
add_action( 'wp_insert_post', array( $this, 'maybe_add_default_meta_data' ), 10, 2 );
|
36 |
|
37 |
add_action( 'before_delete_post', array( $this, 'before_delete_job' ) );
|
43 |
add_filter( 'rp4wp_get_template', array( $this, 'rp4wp_template' ), 10, 3 );
|
44 |
add_filter( 'rp4wp_related_meta_fields', array( $this, 'rp4wp_related_meta_fields' ), 10, 3 );
|
45 |
add_filter( 'rp4wp_related_meta_fields_weight', array( $this, 'rp4wp_related_meta_fields_weight' ), 10, 3 );
|
46 |
+
|
47 |
+
// Single job content
|
48 |
+
$this->job_content_filter( true );
|
49 |
}
|
50 |
|
51 |
/**
|
220 |
*/
|
221 |
register_post_status( 'expired', array(
|
222 |
'label' => _x( 'Expired', 'post status', 'wp-job-manager' ),
|
223 |
+
'public' => false,
|
224 |
+
'protected' => true,
|
225 |
+
'exclude_from_search' => true,
|
226 |
'show_in_admin_all_list' => true,
|
227 |
'show_in_admin_status_list' => true,
|
228 |
'label_count' => _n_noop( 'Expired <span class="count">(%s)</span>', 'Expired <span class="count">(%s)</span>', 'wp-job-manager' ),
|
259 |
}
|
260 |
|
261 |
/**
|
262 |
+
* Toggle filter on and off
|
263 |
+
*/
|
264 |
+
private function job_content_filter( $enable ) {
|
265 |
+
if ( ! $enable ) {
|
266 |
+
remove_filter( 'the_content', array( $this, 'job_content' ) );
|
267 |
+
} else {
|
268 |
+
add_filter( 'the_content', array( $this, 'job_content' ) );
|
269 |
+
}
|
270 |
+
}
|
271 |
+
|
272 |
+
/**
|
273 |
+
* Add extra content before/after the post for single job listings.
|
274 |
*/
|
275 |
public function job_content( $content ) {
|
276 |
global $post;
|
277 |
|
278 |
+
if ( ! is_singular( 'job_listing' ) || ! in_the_loop() || 'job_listing' !== $post->post_type ) {
|
279 |
return $content;
|
280 |
}
|
281 |
|
282 |
+
ob_start();
|
283 |
|
284 |
+
$this->job_content_filter( false );
|
|
|
|
|
|
|
285 |
|
286 |
+
do_action( 'job_content_start' );
|
287 |
|
288 |
+
get_job_manager_template_part( 'content-single', 'job_listing' );
|
289 |
|
290 |
+
do_action( 'job_content_end' );
|
|
|
291 |
|
292 |
+
$this->job_content_filter( true );
|
293 |
|
294 |
+
return apply_filters( 'job_manager_single_job_content', ob_get_clean(), $post );
|
295 |
}
|
296 |
|
297 |
/**
|
524 |
* @param int $post_id
|
525 |
* @param array $post
|
526 |
*/
|
527 |
+
public function maybe_add_geolocation_data( $object_id, $meta_key, $meta_value ) {
|
528 |
if ( '_job_location' !== $meta_key || 'job_listing' !== get_post_type( $object_id ) ) {
|
529 |
return;
|
530 |
}
|
531 |
+
do_action( 'job_manager_job_location_edited', $object_id, $meta_value );
|
532 |
}
|
533 |
|
534 |
/**
|
535 |
+
* Triggered when updating meta on a job listing
|
536 |
*/
|
537 |
+
public function update_post_meta( $meta_id, $object_id, $meta_key, $meta_value ) {
|
538 |
+
if ( 'job_listing' === get_post_type( $object_id ) ) {
|
539 |
+
switch ( $meta_key ) {
|
540 |
+
case '_job_location' :
|
541 |
+
$this->maybe_update_geolocation_data( $meta_id, $object_id, $meta_key, $meta_value );
|
542 |
+
break;
|
543 |
+
case '_featured' :
|
544 |
+
$this->maybe_update_menu_order( $meta_id, $object_id, $meta_key, $meta_value );
|
545 |
+
break;
|
546 |
+
case '_company_logo' :
|
547 |
+
$this->maybe_unattach_attachment( $meta_id, $object_id, $meta_key, $meta_value );
|
548 |
+
break;
|
549 |
+
}
|
550 |
}
|
551 |
+
}
|
552 |
+
|
553 |
+
/**
|
554 |
+
* Generate location data if a post is updated
|
555 |
+
*/
|
556 |
+
public function maybe_update_geolocation_data( $meta_id, $object_id, $meta_key, $meta_value ) {
|
557 |
+
do_action( 'job_manager_job_location_edited', $object_id, $meta_value );
|
558 |
}
|
559 |
|
560 |
/**
|
561 |
* Maybe set menu_order if the featured status of a job is changed
|
562 |
*/
|
563 |
+
public function maybe_update_menu_order( $meta_id, $object_id, $meta_key, $meta_value ) {
|
|
|
|
|
|
|
564 |
global $wpdb;
|
565 |
|
566 |
+
if ( '1' == $meta_value ) {
|
567 |
$wpdb->update( $wpdb->posts, array( 'menu_order' => -1 ), array( 'ID' => $object_id ) );
|
568 |
} else {
|
569 |
$wpdb->update( $wpdb->posts, array( 'menu_order' => 0 ), array( 'ID' => $object_id, 'menu_order' => -1 ) );
|
572 |
clean_post_cache( $object_id );
|
573 |
}
|
574 |
|
575 |
+
/**
|
576 |
+
* Remove old attachment from listing
|
577 |
+
*/
|
578 |
+
public function maybe_unattach_attachment( $meta_id, $object_id, $meta_key, $meta_value ) {
|
579 |
+
global $wpdb;
|
580 |
+
|
581 |
+
$dir = wp_upload_dir();
|
582 |
+
$old_attachment_url = get_post_meta( $object_id, '_company_logo', true );
|
583 |
+
$path = $old_attachment_url;
|
584 |
+
|
585 |
+
if ( 0 === strpos( $path, $dir['baseurl'] . '/' ) ) {
|
586 |
+
$path = substr( $path, strlen( $dir['baseurl'] . '/' ) );
|
587 |
+
}
|
588 |
+
|
589 |
+
$sql = $wpdb->prepare( "SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_wp_attached_file' AND meta_value = %s", $path );
|
590 |
+
$attachment_ids = $wpdb->get_col( $sql );
|
591 |
+
|
592 |
+
if ( $attachment_ids ) {
|
593 |
+
foreach ( $attachment_ids as $attachment_id ) {
|
594 |
+
if ( $object_id === wp_get_post_parent_id( $attachment_id ) ) {
|
595 |
+
wp_update_post( array(
|
596 |
+
'ID' => $attachment_id,
|
597 |
+
'post_parent' => 0
|
598 |
+
) );
|
599 |
+
break;
|
600 |
+
}
|
601 |
+
}
|
602 |
+
}
|
603 |
+
}
|
604 |
+
|
605 |
/**
|
606 |
* Legacy
|
607 |
* @deprecated 1.19.1
|
608 |
*/
|
609 |
+
public function maybe_generate_geolocation_data( $meta_id, $object_id, $meta_key, $meta_value ) {
|
610 |
+
$this->maybe_update_geolocation_data( $meta_id, $object_id, $meta_key, $meta_value );
|
611 |
}
|
612 |
|
613 |
/**
|
includes/class-wp-job-manager-shortcodes.php
CHANGED
@@ -162,7 +162,7 @@ class WP_Job_Manager_Shortcodes {
|
|
162 |
'job_title' => __( 'Title', 'wp-job-manager' ),
|
163 |
'filled' => __( 'Filled?', 'wp-job-manager' ),
|
164 |
'date' => __( 'Date Posted', 'wp-job-manager' ),
|
165 |
-
'expires' => __( '
|
166 |
) );
|
167 |
|
168 |
get_job_manager_template( 'job-dashboard.php', array( 'jobs' => $jobs->query( $args ), 'max_num_pages' => $jobs->max_num_pages, 'job_dashboard_columns' => $job_dashboard_columns ) );
|
@@ -490,14 +490,20 @@ class WP_Job_Manager_Shortcodes {
|
|
490 |
|
491 |
if ( $jobs->have_posts() ) : ?>
|
492 |
|
493 |
-
<?php while ( $jobs->have_posts() ) :
|
|
|
|
|
|
|
494 |
|
495 |
-
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
|
|
|
|
|
|
501 |
|
502 |
<?php endwhile; ?>
|
503 |
|
@@ -509,4 +515,4 @@ class WP_Job_Manager_Shortcodes {
|
|
509 |
}
|
510 |
}
|
511 |
|
512 |
-
new WP_Job_Manager_Shortcodes();
|
162 |
'job_title' => __( 'Title', 'wp-job-manager' ),
|
163 |
'filled' => __( 'Filled?', 'wp-job-manager' ),
|
164 |
'date' => __( 'Date Posted', 'wp-job-manager' ),
|
165 |
+
'expires' => __( 'Listing Expires', 'wp-job-manager' )
|
166 |
) );
|
167 |
|
168 |
get_job_manager_template( 'job-dashboard.php', array( 'jobs' => $jobs->query( $args ), 'max_num_pages' => $jobs->max_num_pages, 'job_dashboard_columns' => $job_dashboard_columns ) );
|
490 |
|
491 |
if ( $jobs->have_posts() ) : ?>
|
492 |
|
493 |
+
<?php while ( $jobs->have_posts() ) :
|
494 |
+
$jobs->the_post();
|
495 |
+
$apply = get_the_job_application_method();
|
496 |
+
?>
|
497 |
|
498 |
+
<?php do_action( 'job_manager_before_job_apply_' . absint( $id ) ); ?>
|
499 |
+
|
500 |
+
<?php if ( apply_filters( 'job_manager_show_job_apply_' . absint( $id ), true ) ) : ?>
|
501 |
+
<div class="job-manager-application-wrapper">
|
502 |
+
<?php do_action( 'job_manager_application_details_' . $apply->type, $apply ); ?>
|
503 |
+
</div>
|
504 |
+
<?php endif; ?>
|
505 |
+
|
506 |
+
<?php do_action( 'job_manager_after_job_apply_' . absint( $id ) ); ?>
|
507 |
|
508 |
<?php endwhile; ?>
|
509 |
|
515 |
}
|
516 |
}
|
517 |
|
518 |
+
new WP_Job_Manager_Shortcodes();
|
includes/forms/class-wp-job-manager-form-submit-job.php
CHANGED
@@ -241,7 +241,7 @@ class WP_Job_Manager_Form_Submit_Job extends WP_Job_Manager_Form {
|
|
241 |
if ( is_array( $values[ $group_key ][ $key ] ) ) {
|
242 |
$check_value = $values[ $group_key ][ $key ];
|
243 |
} else {
|
244 |
-
$check_value = array( $values[ $group_key ][ $key ] );
|
245 |
}
|
246 |
foreach ( $check_value as $term ) {
|
247 |
if ( ! term_exists( $term, $field['taxonomy'] ) ) {
|
@@ -661,6 +661,8 @@ class WP_Job_Manager_Form_Submit_Job extends WP_Job_Manager_Form {
|
|
661 |
$update_job['post_status'] = get_option( 'job_manager_submission_requires_approval' ) ? 'pending' : 'publish';
|
662 |
$update_job['post_date'] = current_time( 'mysql' );
|
663 |
$update_job['post_date_gmt'] = current_time( 'mysql', 1 );
|
|
|
|
|
664 |
wp_update_post( $update_job );
|
665 |
}
|
666 |
|
241 |
if ( is_array( $values[ $group_key ][ $key ] ) ) {
|
242 |
$check_value = $values[ $group_key ][ $key ];
|
243 |
} else {
|
244 |
+
$check_value = empty( $values[ $group_key ][ $key ] ) ? array() : array( $values[ $group_key ][ $key ] );
|
245 |
}
|
246 |
foreach ( $check_value as $term ) {
|
247 |
if ( ! term_exists( $term, $field['taxonomy'] ) ) {
|
661 |
$update_job['post_status'] = get_option( 'job_manager_submission_requires_approval' ) ? 'pending' : 'publish';
|
662 |
$update_job['post_date'] = current_time( 'mysql' );
|
663 |
$update_job['post_date_gmt'] = current_time( 'mysql', 1 );
|
664 |
+
$update_job['post_author'] = get_current_user_id();
|
665 |
+
|
666 |
wp_update_post( $update_job );
|
667 |
}
|
668 |
|
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.23.
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/WP-Job-Manager\n"
|
7 |
-
"POT-Creation-Date: 2015-11-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -176,7 +176,7 @@ msgid "View"
|
|
176 |
msgstr ""
|
177 |
|
178 |
#: includes/admin/class-wp-job-manager-cpt.php:352
|
179 |
-
#: includes/class-wp-job-manager-post-types.php:
|
180 |
#: templates/job-dashboard.php:33 templates/job-dashboard.php:49
|
181 |
msgid "Edit"
|
182 |
msgstr ""
|
@@ -187,8 +187,8 @@ msgid "Delete"
|
|
187 |
msgstr ""
|
188 |
|
189 |
#: includes/admin/class-wp-job-manager-settings.php:42
|
190 |
-
#: includes/class-wp-job-manager-post-types.php:
|
191 |
-
#: includes/class-wp-job-manager-post-types.php:
|
192 |
msgid "Job Listings"
|
193 |
msgstr ""
|
194 |
|
@@ -420,7 +420,7 @@ msgstr ""
|
|
420 |
msgid "Select a page…"
|
421 |
msgstr ""
|
422 |
|
423 |
-
#: includes/admin/class-wp-job-manager-settings.php:
|
424 |
msgid "Save Changes"
|
425 |
msgstr ""
|
426 |
|
@@ -769,144 +769,144 @@ msgstr ""
|
|
769 |
msgid "Employer"
|
770 |
msgstr ""
|
771 |
|
772 |
-
#: includes/class-wp-job-manager-post-types.php:
|
773 |
#: includes/forms/class-wp-job-manager-form-submit-job.php:146
|
774 |
msgid "Job category"
|
775 |
msgstr ""
|
776 |
|
777 |
-
#: includes/class-wp-job-manager-post-types.php:
|
778 |
msgid "Job categories"
|
779 |
msgstr ""
|
780 |
|
781 |
-
#: includes/class-wp-job-manager-post-types.php:
|
782 |
msgctxt "Job category slug - resave permalinks after changing this"
|
783 |
msgid "job-category"
|
784 |
msgstr ""
|
785 |
|
786 |
-
#: includes/class-wp-job-manager-post-types.php:
|
787 |
-
#: includes/class-wp-job-manager-post-types.php:
|
788 |
-
#: includes/class-wp-job-manager-post-types.php:
|
789 |
msgid "Search %s"
|
790 |
msgstr ""
|
791 |
|
792 |
-
#: includes/class-wp-job-manager-post-types.php:
|
793 |
-
#: includes/class-wp-job-manager-post-types.php:
|
794 |
-
#: includes/class-wp-job-manager-post-types.php:
|
795 |
msgid "All %s"
|
796 |
msgstr ""
|
797 |
|
798 |
-
#: includes/class-wp-job-manager-post-types.php:
|
799 |
-
#: includes/class-wp-job-manager-post-types.php:
|
800 |
-
#: includes/class-wp-job-manager-post-types.php:
|
801 |
msgid "Parent %s"
|
802 |
msgstr ""
|
803 |
|
804 |
-
#: includes/class-wp-job-manager-post-types.php:
|
805 |
-
#: includes/class-wp-job-manager-post-types.php:
|
806 |
msgid "Parent %s:"
|
807 |
msgstr ""
|
808 |
|
809 |
-
#: includes/class-wp-job-manager-post-types.php:
|
810 |
-
#: includes/class-wp-job-manager-post-types.php:
|
811 |
-
#: includes/class-wp-job-manager-post-types.php:
|
812 |
msgid "Edit %s"
|
813 |
msgstr ""
|
814 |
|
815 |
-
#: includes/class-wp-job-manager-post-types.php:
|
816 |
-
#: includes/class-wp-job-manager-post-types.php:
|
817 |
msgid "Update %s"
|
818 |
msgstr ""
|
819 |
|
820 |
-
#: includes/class-wp-job-manager-post-types.php:
|
821 |
-
#: includes/class-wp-job-manager-post-types.php:
|
822 |
msgid "Add New %s"
|
823 |
msgstr ""
|
824 |
|
825 |
-
#: includes/class-wp-job-manager-post-types.php:
|
826 |
-
#: includes/class-wp-job-manager-post-types.php:
|
827 |
msgid "New %s Name"
|
828 |
msgstr ""
|
829 |
|
830 |
-
#: includes/class-wp-job-manager-post-types.php:
|
831 |
#: includes/forms/class-wp-job-manager-form-submit-job.php:137
|
832 |
msgid "Job type"
|
833 |
msgstr ""
|
834 |
|
835 |
-
#: includes/class-wp-job-manager-post-types.php:
|
836 |
msgid "Job types"
|
837 |
msgstr ""
|
838 |
|
839 |
-
#: includes/class-wp-job-manager-post-types.php:
|
840 |
msgctxt "Job type slug - resave permalinks after changing this"
|
841 |
msgid "job-type"
|
842 |
msgstr ""
|
843 |
|
844 |
-
#: includes/class-wp-job-manager-post-types.php:
|
845 |
msgid "Job"
|
846 |
msgstr ""
|
847 |
|
848 |
-
#: includes/class-wp-job-manager-post-types.php:
|
849 |
msgid "Jobs"
|
850 |
msgstr ""
|
851 |
|
852 |
-
#: includes/class-wp-job-manager-post-types.php:
|
853 |
msgctxt "Post type archive slug - resave permalinks after changing this"
|
854 |
msgid "jobs"
|
855 |
msgstr ""
|
856 |
|
857 |
-
#: includes/class-wp-job-manager-post-types.php:
|
858 |
msgctxt "Job permalink - resave permalinks after changing this"
|
859 |
msgid "job"
|
860 |
msgstr ""
|
861 |
|
862 |
-
#: includes/class-wp-job-manager-post-types.php:
|
863 |
msgid "Add New"
|
864 |
msgstr ""
|
865 |
|
866 |
-
#: includes/class-wp-job-manager-post-types.php:
|
867 |
msgid "Add %s"
|
868 |
msgstr ""
|
869 |
|
870 |
-
#: includes/class-wp-job-manager-post-types.php:
|
871 |
msgid "New %s"
|
872 |
msgstr ""
|
873 |
|
874 |
-
#: includes/class-wp-job-manager-post-types.php:
|
875 |
-
#: includes/class-wp-job-manager-post-types.php:
|
876 |
msgid "View %s"
|
877 |
msgstr ""
|
878 |
|
879 |
-
#: includes/class-wp-job-manager-post-types.php:
|
880 |
msgid "No %s found"
|
881 |
msgstr ""
|
882 |
|
883 |
-
#: includes/class-wp-job-manager-post-types.php:
|
884 |
msgid "No %s found in trash"
|
885 |
msgstr ""
|
886 |
|
887 |
-
#: includes/class-wp-job-manager-post-types.php:
|
888 |
msgid "This is where you can create and manage %s."
|
889 |
msgstr ""
|
890 |
|
891 |
-
#: includes/class-wp-job-manager-post-types.php:
|
892 |
-
#: wp-job-manager-functions.php:
|
893 |
msgctxt "post status"
|
894 |
msgid "Expired"
|
895 |
msgstr ""
|
896 |
|
897 |
-
#: includes/class-wp-job-manager-post-types.php:
|
898 |
msgid "Expired <span class=\"count\">(%s)</span>"
|
899 |
msgid_plural "Expired <span class=\"count\">(%s)</span>"
|
900 |
msgstr[0] ""
|
901 |
msgstr[1] ""
|
902 |
|
903 |
-
#: includes/class-wp-job-manager-post-types.php:
|
904 |
-
#: wp-job-manager-functions.php:
|
905 |
msgctxt "post status"
|
906 |
msgid "Preview"
|
907 |
msgstr ""
|
908 |
|
909 |
-
#: includes/class-wp-job-manager-post-types.php:
|
910 |
msgid "Preview <span class=\"count\">(%s)</span>"
|
911 |
msgid_plural "Preview <span class=\"count\">(%s)</span>"
|
912 |
msgstr[0] ""
|
@@ -947,7 +947,7 @@ msgid "Date Posted"
|
|
947 |
msgstr ""
|
948 |
|
949 |
#: includes/class-wp-job-manager-shortcodes.php:165
|
950 |
-
msgid "
|
951 |
msgstr ""
|
952 |
|
953 |
#: includes/class-wp-job-manager-shortcodes.php:260
|
@@ -1103,7 +1103,7 @@ msgid "%s is invalid"
|
|
1103 |
msgstr ""
|
1104 |
|
1105 |
#: includes/forms/class-wp-job-manager-form-submit-job.php:263
|
1106 |
-
#: wp-job-manager-functions.php:
|
1107 |
msgid "\"%s\" (filetype %s) needs to be one of the following file types: %s"
|
1108 |
msgstr ""
|
1109 |
|
@@ -1221,12 +1221,12 @@ msgid "Maximum file size: %s."
|
|
1221 |
msgstr ""
|
1222 |
|
1223 |
#: templates/form-fields/multiselect-field.php:3
|
1224 |
-
#: wp-job-manager-functions.php:
|
1225 |
msgid "No results match"
|
1226 |
msgstr ""
|
1227 |
|
1228 |
#: templates/form-fields/multiselect-field.php:3
|
1229 |
-
#: wp-job-manager-functions.php:
|
1230 |
msgid "Select Some Options"
|
1231 |
msgstr ""
|
1232 |
|
@@ -1308,51 +1308,51 @@ msgstr ""
|
|
1308 |
msgid "%s submitted successfully. Your listing will be visible once approved."
|
1309 |
msgstr ""
|
1310 |
|
1311 |
-
#: wp-job-manager-functions.php:
|
1312 |
msgctxt "post status"
|
1313 |
msgid "Draft"
|
1314 |
msgstr ""
|
1315 |
|
1316 |
-
#: wp-job-manager-functions.php:
|
1317 |
msgctxt "post status"
|
1318 |
msgid "Pending approval"
|
1319 |
msgstr ""
|
1320 |
|
1321 |
-
#: wp-job-manager-functions.php:
|
1322 |
msgctxt "post status"
|
1323 |
msgid "Pending payment"
|
1324 |
msgstr ""
|
1325 |
|
1326 |
-
#: wp-job-manager-functions.php:
|
1327 |
msgctxt "post status"
|
1328 |
msgid "Active"
|
1329 |
msgstr ""
|
1330 |
|
1331 |
-
#: wp-job-manager-functions.php:
|
1332 |
msgid "Reset"
|
1333 |
msgstr ""
|
1334 |
|
1335 |
-
#: wp-job-manager-functions.php:
|
1336 |
msgid "RSS"
|
1337 |
msgstr ""
|
1338 |
|
1339 |
-
#: wp-job-manager-functions.php:
|
1340 |
msgid "Invalid email address."
|
1341 |
msgstr ""
|
1342 |
|
1343 |
-
#: wp-job-manager-functions.php:
|
1344 |
msgid "Your email address isn’t correct."
|
1345 |
msgstr ""
|
1346 |
|
1347 |
-
#: wp-job-manager-functions.php:
|
1348 |
msgid "This email is already registered, please choose another one."
|
1349 |
msgstr ""
|
1350 |
|
1351 |
-
#: wp-job-manager-functions.php:
|
1352 |
msgid "Choose a category…"
|
1353 |
msgstr ""
|
1354 |
|
1355 |
-
#: wp-job-manager-functions.php:
|
1356 |
msgid "Uploaded files need to be one of the following file types: %s"
|
1357 |
msgstr ""
|
1358 |
|
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.23.12\n"
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/WP-Job-Manager\n"
|
7 |
+
"POT-Creation-Date: 2015-11-26 12:58:52+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
176 |
msgstr ""
|
177 |
|
178 |
#: includes/admin/class-wp-job-manager-cpt.php:352
|
179 |
+
#: includes/class-wp-job-manager-post-types.php:180
|
180 |
#: templates/job-dashboard.php:33 templates/job-dashboard.php:49
|
181 |
msgid "Edit"
|
182 |
msgstr ""
|
187 |
msgstr ""
|
188 |
|
189 |
#: includes/admin/class-wp-job-manager-settings.php:42
|
190 |
+
#: includes/class-wp-job-manager-post-types.php:176
|
191 |
+
#: includes/class-wp-job-manager-post-types.php:239
|
192 |
msgid "Job Listings"
|
193 |
msgstr ""
|
194 |
|
420 |
msgid "Select a page…"
|
421 |
msgstr ""
|
422 |
|
423 |
+
#: includes/admin/class-wp-job-manager-settings.php:362
|
424 |
msgid "Save Changes"
|
425 |
msgstr ""
|
426 |
|
769 |
msgid "Employer"
|
770 |
msgstr ""
|
771 |
|
772 |
+
#: includes/class-wp-job-manager-post-types.php:60
|
773 |
#: includes/forms/class-wp-job-manager-form-submit-job.php:146
|
774 |
msgid "Job category"
|
775 |
msgstr ""
|
776 |
|
777 |
+
#: includes/class-wp-job-manager-post-types.php:61
|
778 |
msgid "Job categories"
|
779 |
msgstr ""
|
780 |
|
781 |
+
#: includes/class-wp-job-manager-post-types.php:65
|
782 |
msgctxt "Job category slug - resave permalinks after changing this"
|
783 |
msgid "job-category"
|
784 |
msgstr ""
|
785 |
|
786 |
+
#: includes/class-wp-job-manager-post-types.php:85
|
787 |
+
#: includes/class-wp-job-manager-post-types.php:131
|
788 |
+
#: includes/class-wp-job-manager-post-types.php:185
|
789 |
msgid "Search %s"
|
790 |
msgstr ""
|
791 |
|
792 |
+
#: includes/class-wp-job-manager-post-types.php:86
|
793 |
+
#: includes/class-wp-job-manager-post-types.php:132
|
794 |
+
#: includes/class-wp-job-manager-post-types.php:177
|
795 |
msgid "All %s"
|
796 |
msgstr ""
|
797 |
|
798 |
+
#: includes/class-wp-job-manager-post-types.php:87
|
799 |
+
#: includes/class-wp-job-manager-post-types.php:133
|
800 |
+
#: includes/class-wp-job-manager-post-types.php:188
|
801 |
msgid "Parent %s"
|
802 |
msgstr ""
|
803 |
|
804 |
+
#: includes/class-wp-job-manager-post-types.php:88
|
805 |
+
#: includes/class-wp-job-manager-post-types.php:134
|
806 |
msgid "Parent %s:"
|
807 |
msgstr ""
|
808 |
|
809 |
+
#: includes/class-wp-job-manager-post-types.php:89
|
810 |
+
#: includes/class-wp-job-manager-post-types.php:135
|
811 |
+
#: includes/class-wp-job-manager-post-types.php:181
|
812 |
msgid "Edit %s"
|
813 |
msgstr ""
|
814 |
|
815 |
+
#: includes/class-wp-job-manager-post-types.php:90
|
816 |
+
#: includes/class-wp-job-manager-post-types.php:136
|
817 |
msgid "Update %s"
|
818 |
msgstr ""
|
819 |
|
820 |
+
#: includes/class-wp-job-manager-post-types.php:91
|
821 |
+
#: includes/class-wp-job-manager-post-types.php:137
|
822 |
msgid "Add New %s"
|
823 |
msgstr ""
|
824 |
|
825 |
+
#: includes/class-wp-job-manager-post-types.php:92
|
826 |
+
#: includes/class-wp-job-manager-post-types.php:138
|
827 |
msgid "New %s Name"
|
828 |
msgstr ""
|
829 |
|
830 |
+
#: includes/class-wp-job-manager-post-types.php:107
|
831 |
#: includes/forms/class-wp-job-manager-form-submit-job.php:137
|
832 |
msgid "Job type"
|
833 |
msgstr ""
|
834 |
|
835 |
+
#: includes/class-wp-job-manager-post-types.php:108
|
836 |
msgid "Job types"
|
837 |
msgstr ""
|
838 |
|
839 |
+
#: includes/class-wp-job-manager-post-types.php:112
|
840 |
msgctxt "Job type slug - resave permalinks after changing this"
|
841 |
msgid "job-type"
|
842 |
msgstr ""
|
843 |
|
844 |
+
#: includes/class-wp-job-manager-post-types.php:155
|
845 |
msgid "Job"
|
846 |
msgstr ""
|
847 |
|
848 |
+
#: includes/class-wp-job-manager-post-types.php:156
|
849 |
msgid "Jobs"
|
850 |
msgstr ""
|
851 |
|
852 |
+
#: includes/class-wp-job-manager-post-types.php:159
|
853 |
msgctxt "Post type archive slug - resave permalinks after changing this"
|
854 |
msgid "jobs"
|
855 |
msgstr ""
|
856 |
|
857 |
+
#: includes/class-wp-job-manager-post-types.php:165
|
858 |
msgctxt "Job permalink - resave permalinks after changing this"
|
859 |
msgid "job"
|
860 |
msgstr ""
|
861 |
|
862 |
+
#: includes/class-wp-job-manager-post-types.php:178
|
863 |
msgid "Add New"
|
864 |
msgstr ""
|
865 |
|
866 |
+
#: includes/class-wp-job-manager-post-types.php:179
|
867 |
msgid "Add %s"
|
868 |
msgstr ""
|
869 |
|
870 |
+
#: includes/class-wp-job-manager-post-types.php:182
|
871 |
msgid "New %s"
|
872 |
msgstr ""
|
873 |
|
874 |
+
#: includes/class-wp-job-manager-post-types.php:183
|
875 |
+
#: includes/class-wp-job-manager-post-types.php:184
|
876 |
msgid "View %s"
|
877 |
msgstr ""
|
878 |
|
879 |
+
#: includes/class-wp-job-manager-post-types.php:186
|
880 |
msgid "No %s found"
|
881 |
msgstr ""
|
882 |
|
883 |
+
#: includes/class-wp-job-manager-post-types.php:187
|
884 |
msgid "No %s found in trash"
|
885 |
msgstr ""
|
886 |
|
887 |
+
#: includes/class-wp-job-manager-post-types.php:190
|
888 |
msgid "This is where you can create and manage %s."
|
889 |
msgstr ""
|
890 |
|
891 |
+
#: includes/class-wp-job-manager-post-types.php:215
|
892 |
+
#: wp-job-manager-functions.php:197
|
893 |
msgctxt "post status"
|
894 |
msgid "Expired"
|
895 |
msgstr ""
|
896 |
|
897 |
+
#: includes/class-wp-job-manager-post-types.php:221
|
898 |
msgid "Expired <span class=\"count\">(%s)</span>"
|
899 |
msgid_plural "Expired <span class=\"count\">(%s)</span>"
|
900 |
msgstr[0] ""
|
901 |
msgstr[1] ""
|
902 |
|
903 |
+
#: includes/class-wp-job-manager-post-types.php:224
|
904 |
+
#: wp-job-manager-functions.php:198
|
905 |
msgctxt "post status"
|
906 |
msgid "Preview"
|
907 |
msgstr ""
|
908 |
|
909 |
+
#: includes/class-wp-job-manager-post-types.php:229
|
910 |
msgid "Preview <span class=\"count\">(%s)</span>"
|
911 |
msgid_plural "Preview <span class=\"count\">(%s)</span>"
|
912 |
msgstr[0] ""
|
947 |
msgstr ""
|
948 |
|
949 |
#: includes/class-wp-job-manager-shortcodes.php:165
|
950 |
+
msgid "Listing Expires"
|
951 |
msgstr ""
|
952 |
|
953 |
#: includes/class-wp-job-manager-shortcodes.php:260
|
1103 |
msgstr ""
|
1104 |
|
1105 |
#: includes/forms/class-wp-job-manager-form-submit-job.php:263
|
1106 |
+
#: wp-job-manager-functions.php:702
|
1107 |
msgid "\"%s\" (filetype %s) needs to be one of the following file types: %s"
|
1108 |
msgstr ""
|
1109 |
|
1221 |
msgstr ""
|
1222 |
|
1223 |
#: templates/form-fields/multiselect-field.php:3
|
1224 |
+
#: wp-job-manager-functions.php:533
|
1225 |
msgid "No results match"
|
1226 |
msgstr ""
|
1227 |
|
1228 |
#: templates/form-fields/multiselect-field.php:3
|
1229 |
+
#: wp-job-manager-functions.php:534
|
1230 |
msgid "Select Some Options"
|
1231 |
msgstr ""
|
1232 |
|
1308 |
msgid "%s submitted successfully. Your listing will be visible once approved."
|
1309 |
msgstr ""
|
1310 |
|
1311 |
+
#: wp-job-manager-functions.php:196
|
1312 |
msgctxt "post status"
|
1313 |
msgid "Draft"
|
1314 |
msgstr ""
|
1315 |
|
1316 |
+
#: wp-job-manager-functions.php:199
|
1317 |
msgctxt "post status"
|
1318 |
msgid "Pending approval"
|
1319 |
msgstr ""
|
1320 |
|
1321 |
+
#: wp-job-manager-functions.php:200
|
1322 |
msgctxt "post status"
|
1323 |
msgid "Pending payment"
|
1324 |
msgstr ""
|
1325 |
|
1326 |
+
#: wp-job-manager-functions.php:201
|
1327 |
msgctxt "post status"
|
1328 |
msgid "Active"
|
1329 |
msgstr ""
|
1330 |
|
1331 |
+
#: wp-job-manager-functions.php:286
|
1332 |
msgid "Reset"
|
1333 |
msgstr ""
|
1334 |
|
1335 |
+
#: wp-job-manager-functions.php:290
|
1336 |
msgid "RSS"
|
1337 |
msgstr ""
|
1338 |
|
1339 |
+
#: wp-job-manager-functions.php:377
|
1340 |
msgid "Invalid email address."
|
1341 |
msgstr ""
|
1342 |
|
1343 |
+
#: wp-job-manager-functions.php:385
|
1344 |
msgid "Your email address isn’t correct."
|
1345 |
msgstr ""
|
1346 |
|
1347 |
+
#: wp-job-manager-functions.php:389
|
1348 |
msgid "This email is already registered, please choose another one."
|
1349 |
msgstr ""
|
1350 |
|
1351 |
+
#: wp-job-manager-functions.php:532
|
1352 |
msgid "Choose a category…"
|
1353 |
msgstr ""
|
1354 |
|
1355 |
+
#: wp-job-manager-functions.php:704
|
1356 |
msgid "Uploaded files need to be one of the following file types: %s"
|
1357 |
msgstr ""
|
1358 |
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: mikejolley, automattic
|
|
3 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=mike.jolley@me.com¤cy_code=&amount=&return=&item_name=Buy+me+a+coffee+for+A+New+Job+Board+Plugin+for+WordPress
|
4 |
Tags: job manager, job listing, job board, job management, job lists, job list, job, jobs, company, hiring, employment, employer, employees, candidate, freelance, internship, job listings, positions, board, application, hiring, listing, manager, recruiting, recruitment, talent
|
5 |
Requires at least: 4.1
|
6 |
-
Tested up to: 4.
|
7 |
-
Stable tag: 1.23.
|
8 |
License: GPLv3
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
@@ -142,6 +142,15 @@ You can view (and contribute) translations via the [translate.wordpress.org](htt
|
|
142 |
|
143 |
== Changelog ==
|
144 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
145 |
= 1.23.11 =
|
146 |
* Fix - Author check in job_manager_user_can_edit_job().
|
147 |
* Tweak - Before deleting a job, delete its attachments.
|
3 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=mike.jolley@me.com¤cy_code=&amount=&return=&item_name=Buy+me+a+coffee+for+A+New+Job+Board+Plugin+for+WordPress
|
4 |
Tags: job manager, job listing, job board, job management, job lists, job list, job, jobs, company, hiring, employment, employer, employees, candidate, freelance, internship, job listings, positions, board, application, hiring, listing, manager, recruiting, recruitment, talent
|
5 |
Requires at least: 4.1
|
6 |
+
Tested up to: 4.4
|
7 |
+
Stable tag: 1.23.12
|
8 |
License: GPLv3
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
142 |
|
143 |
== Changelog ==
|
144 |
|
145 |
+
= 1.23.12 =
|
146 |
+
* Fix - Transient clear query.
|
147 |
+
* Tweak - New user notification pluggable function.
|
148 |
+
* Tweak - Use subquery in keyword search to avoid long queries.
|
149 |
+
* Tweak - Only search for keywords of 2 or more characters.
|
150 |
+
* Tweak - job_manager_get_listings_keyword_length_threshold filter.
|
151 |
+
* Tweak - PolyLang compatibility functions.
|
152 |
+
* Tweak - Unattach company logo when a new attachment is uploaded.
|
153 |
+
|
154 |
= 1.23.11 =
|
155 |
* Fix - Author check in job_manager_user_can_edit_job().
|
156 |
* Tweak - Before deleting a job, delete its attachments.
|
templates/content-single-job_listing-meta.php
CHANGED
@@ -10,7 +10,7 @@ global $post;
|
|
10 |
|
11 |
do_action( 'single_job_listing_meta_before' ); ?>
|
12 |
|
13 |
-
<ul class="meta">
|
14 |
<?php do_action( 'single_job_listing_meta_start' ); ?>
|
15 |
|
16 |
<li class="job-type <?php echo get_the_job_type() ? sanitize_title( get_the_job_type()->slug ) : ''; ?>" itemprop="employmentType"><?php the_job_type(); ?></li>
|
@@ -28,4 +28,4 @@ do_action( 'single_job_listing_meta_before' ); ?>
|
|
28 |
<?php do_action( 'single_job_listing_meta_end' ); ?>
|
29 |
</ul>
|
30 |
|
31 |
-
<?php do_action( 'single_job_listing_meta_after' ); ?>
|
10 |
|
11 |
do_action( 'single_job_listing_meta_before' ); ?>
|
12 |
|
13 |
+
<ul class="job-listing-meta meta">
|
14 |
<?php do_action( 'single_job_listing_meta_start' ); ?>
|
15 |
|
16 |
<li class="job-type <?php echo get_the_job_type() ? sanitize_title( get_the_job_type()->slug ) : ''; ?>" itemprop="employmentType"><?php the_job_type(); ?></li>
|
28 |
<?php do_action( 'single_job_listing_meta_end' ); ?>
|
29 |
</ul>
|
30 |
|
31 |
+
<?php do_action( 'single_job_listing_meta_after' ); ?>
|
templates/content-single-job_listing.php
CHANGED
@@ -5,7 +5,6 @@
|
|
5 |
<?php if ( get_option( 'job_manager_hide_expired_content', 1 ) && 'expired' === $post->post_status ) : ?>
|
6 |
<div class="job-manager-info"><?php _e( 'This listing has expired.', 'wp-job-manager' ); ?></div>
|
7 |
<?php else : ?>
|
8 |
-
|
9 |
<?php
|
10 |
/**
|
11 |
* single_job_listing_start hook
|
@@ -30,6 +29,5 @@
|
|
30 |
*/
|
31 |
do_action( 'single_job_listing_end' );
|
32 |
?>
|
33 |
-
|
34 |
<?php endif; ?>
|
35 |
-
</div>
|
5 |
<?php if ( get_option( 'job_manager_hide_expired_content', 1 ) && 'expired' === $post->post_status ) : ?>
|
6 |
<div class="job-manager-info"><?php _e( 'This listing has expired.', 'wp-job-manager' ); ?></div>
|
7 |
<?php else : ?>
|
|
|
8 |
<?php
|
9 |
/**
|
10 |
* single_job_listing_start hook
|
29 |
*/
|
30 |
do_action( 'single_job_listing_end' );
|
31 |
?>
|
|
|
32 |
<?php endif; ?>
|
33 |
+
</div>
|
wp-job-manager-functions.php
CHANGED
@@ -99,7 +99,9 @@ function get_job_listings( $args = array() ) {
|
|
99 |
);
|
100 |
}
|
101 |
|
102 |
-
|
|
|
|
|
103 |
$query_args['_keyword'] = $job_manager_keyword; // Does nothing but needed for unique hash
|
104 |
add_filter( 'posts_clauses', 'get_job_listings_keyword_search' );
|
105 |
}
|
@@ -114,6 +116,11 @@ function get_job_listings( $args = array() ) {
|
|
114 |
unset( $query_args['tax_query'] );
|
115 |
}
|
116 |
|
|
|
|
|
|
|
|
|
|
|
117 |
// Filter args
|
118 |
$query_args = apply_filters( 'get_job_listings_query_args', $query_args, $args );
|
119 |
|
@@ -146,11 +153,9 @@ if ( ! function_exists( 'get_job_listings_keyword_search' ) ) :
|
|
146 |
function get_job_listings_keyword_search( $args ) {
|
147 |
global $wpdb, $job_manager_keyword;
|
148 |
|
149 |
-
|
150 |
-
$post_ids = $wpdb->get_col( "SELECT post_id FROM {$wpdb->postmeta} WHERE meta_value LIKE '%" . esc_sql( $job_manager_keyword ) . "%'" );
|
151 |
-
$conditions = array();
|
152 |
-
|
153 |
$conditions[] = "{$wpdb->posts}.post_title LIKE '%" . esc_sql( $job_manager_keyword ) . "%'";
|
|
|
154 |
|
155 |
if ( ctype_alnum( $job_manager_keyword ) ) {
|
156 |
$conditions[] = "{$wpdb->posts}.post_content RLIKE '[[:<:]]" . esc_sql( $job_manager_keyword ) . "[[:>:]]'";
|
@@ -158,10 +163,6 @@ if ( ! function_exists( 'get_job_listings_keyword_search' ) ) :
|
|
158 |
$conditions[] = "{$wpdb->posts}.post_content LIKE '%" . esc_sql( $job_manager_keyword ) . "%'";
|
159 |
}
|
160 |
|
161 |
-
if ( $post_ids ) {
|
162 |
-
$conditions[] = "{$wpdb->posts}.ID IN (" . esc_sql( implode( ',', $post_ids ) ) . ")";
|
163 |
-
}
|
164 |
-
|
165 |
$args['where'] .= " AND ( " . implode( ' OR ', $conditions ) . " ) ";
|
166 |
|
167 |
return $args;
|
@@ -322,6 +323,24 @@ function get_job_listing_rss_link( $args = array() ) {
|
|
322 |
}
|
323 |
endif;
|
324 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
325 |
if ( ! function_exists( 'job_manager_create_account' ) ) :
|
326 |
/**
|
327 |
* Handle account creation.
|
@@ -332,7 +351,6 @@ if ( ! function_exists( 'job_manager_create_account' ) ) :
|
|
332 |
*/
|
333 |
function wp_job_manager_create_account( $args, $deprecated = '' ) {
|
334 |
global $current_user;
|
335 |
-
global $wp_version;
|
336 |
|
337 |
// Soft Deprecated in 1.20.0
|
338 |
if ( ! is_array( $args ) ) {
|
@@ -405,13 +423,8 @@ function wp_job_manager_create_account( $args, $deprecated = '' ) {
|
|
405 |
}
|
406 |
|
407 |
// Notify
|
408 |
-
|
409 |
-
|
410 |
-
} else {
|
411 |
-
wp_new_user_notification( $user_id, null, 'both' );
|
412 |
-
}
|
413 |
-
|
414 |
-
// Login
|
415 |
wp_set_auth_cookie( $user_id, true, is_ssl() );
|
416 |
$current_user = get_user_by( 'id', $user_id );
|
417 |
|
@@ -578,14 +591,27 @@ function job_manager_dropdown_categories( $args = '' ) {
|
|
578 |
return $output;
|
579 |
}
|
580 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
581 |
/**
|
582 |
* Get the permalink of a page if set
|
583 |
* @param string $page e.g. job_dashboard, submit_job_form, jobs
|
584 |
* @return string|bool
|
585 |
*/
|
586 |
function job_manager_get_permalink( $page ) {
|
587 |
-
$page_id =
|
588 |
-
if ( $page_id ) {
|
589 |
return get_permalink( $page_id );
|
590 |
} else {
|
591 |
return false;
|
99 |
);
|
100 |
}
|
101 |
|
102 |
+
$job_manager_keyword = sanitize_text_field( $args['search_keywords'] );
|
103 |
+
|
104 |
+
if ( ! empty( $job_manager_keyword ) && strlen( $job_manager_keyword ) >= apply_filters( 'job_manager_get_listings_keyword_length_threshold', 2 ) ) {
|
105 |
$query_args['_keyword'] = $job_manager_keyword; // Does nothing but needed for unique hash
|
106 |
add_filter( 'posts_clauses', 'get_job_listings_keyword_search' );
|
107 |
}
|
116 |
unset( $query_args['tax_query'] );
|
117 |
}
|
118 |
|
119 |
+
// Polylang LANG arg
|
120 |
+
if ( function_exists( 'pll_current_language' ) ) {
|
121 |
+
$query_args['lang'] = pll_current_language();
|
122 |
+
}
|
123 |
+
|
124 |
// Filter args
|
125 |
$query_args = apply_filters( 'get_job_listings_query_args', $query_args, $args );
|
126 |
|
153 |
function get_job_listings_keyword_search( $args ) {
|
154 |
global $wpdb, $job_manager_keyword;
|
155 |
|
156 |
+
$conditions = array();
|
|
|
|
|
|
|
157 |
$conditions[] = "{$wpdb->posts}.post_title LIKE '%" . esc_sql( $job_manager_keyword ) . "%'";
|
158 |
+
$conditions[] = "{$wpdb->posts}.ID IN ( SELECT post_id FROM {$wpdb->postmeta} WHERE meta_value LIKE '%" . esc_sql( $job_manager_keyword ) . "%' )";
|
159 |
|
160 |
if ( ctype_alnum( $job_manager_keyword ) ) {
|
161 |
$conditions[] = "{$wpdb->posts}.post_content RLIKE '[[:<:]]" . esc_sql( $job_manager_keyword ) . "[[:>:]]'";
|
163 |
$conditions[] = "{$wpdb->posts}.post_content LIKE '%" . esc_sql( $job_manager_keyword ) . "%'";
|
164 |
}
|
165 |
|
|
|
|
|
|
|
|
|
166 |
$args['where'] .= " AND ( " . implode( ' OR ', $conditions ) . " ) ";
|
167 |
|
168 |
return $args;
|
323 |
}
|
324 |
endif;
|
325 |
|
326 |
+
if ( ! function_exists( 'wp_job_manager_notify_new_user' ) ) :
|
327 |
+
/**
|
328 |
+
* Handle account creation.
|
329 |
+
*
|
330 |
+
* @param int $user_id
|
331 |
+
* @param string $password
|
332 |
+
*/
|
333 |
+
function wp_job_manager_notify_new_user( $user_id, $password ) {
|
334 |
+
global $wp_version;
|
335 |
+
|
336 |
+
if ( version_compare( $wp_version, '4.3.1', '<' ) ) {
|
337 |
+
wp_new_user_notification( $user_id, $password );
|
338 |
+
} else {
|
339 |
+
wp_new_user_notification( $user_id, null, 'both' );
|
340 |
+
}
|
341 |
+
}
|
342 |
+
endif;
|
343 |
+
|
344 |
if ( ! function_exists( 'job_manager_create_account' ) ) :
|
345 |
/**
|
346 |
* Handle account creation.
|
351 |
*/
|
352 |
function wp_job_manager_create_account( $args, $deprecated = '' ) {
|
353 |
global $current_user;
|
|
|
354 |
|
355 |
// Soft Deprecated in 1.20.0
|
356 |
if ( ! is_array( $args ) ) {
|
423 |
}
|
424 |
|
425 |
// Notify
|
426 |
+
wp_job_manager_notify_new_user( $user_id, $password, $new_user );
|
427 |
+
// Login
|
|
|
|
|
|
|
|
|
|
|
428 |
wp_set_auth_cookie( $user_id, true, is_ssl() );
|
429 |
$current_user = get_user_by( 'id', $user_id );
|
430 |
|
591 |
return $output;
|
592 |
}
|
593 |
|
594 |
+
/**
|
595 |
+
* Get the page ID of a page if set, with PolyLang compat.
|
596 |
+
* @param string $page e.g. job_dashboard, submit_job_form, jobs
|
597 |
+
* @return int
|
598 |
+
*/
|
599 |
+
function job_manager_get_page_id( $page ) {
|
600 |
+
$page_id = get_option( 'job_manager_' . $page . '_page_id', false );
|
601 |
+
if ( $page_id ) {
|
602 |
+
return absint( function_exists( 'pll_get_post' ) ? pll_get_post( $page_id ) : $page_id );
|
603 |
+
} else {
|
604 |
+
return 0;
|
605 |
+
}
|
606 |
+
}
|
607 |
+
|
608 |
/**
|
609 |
* Get the permalink of a page if set
|
610 |
* @param string $page e.g. job_dashboard, submit_job_form, jobs
|
611 |
* @return string|bool
|
612 |
*/
|
613 |
function job_manager_get_permalink( $page ) {
|
614 |
+
if ( $page_id = job_manager_get_page_id( $page ) ) {
|
|
|
615 |
return get_permalink( $page_id );
|
616 |
} else {
|
617 |
return false;
|
wp-job-manager-template.php
CHANGED
@@ -276,9 +276,9 @@ function the_job_location( $map_link = true, $post = null ) {
|
|
276 |
|
277 |
if ( $location ) {
|
278 |
if ( $map_link )
|
279 |
-
echo apply_filters( 'the_job_location_map_link', '<a class="google_map_link" href="http://maps.google.com/maps?q=' . urlencode( $location ) . '&zoom=14&size=512x512&maptype=roadmap&sensor=false" target="_blank">' . $location . '</a>', $location, $post );
|
280 |
else
|
281 |
-
echo $location;
|
282 |
} else {
|
283 |
echo apply_filters( 'the_job_location_anywhere_text', __( 'Anywhere', 'wp-job-manager' ) );
|
284 |
}
|
276 |
|
277 |
if ( $location ) {
|
278 |
if ( $map_link )
|
279 |
+
echo apply_filters( 'the_job_location_map_link', '<a class="google_map_link" href="http://maps.google.com/maps?q=' . urlencode( $location ) . '&zoom=14&size=512x512&maptype=roadmap&sensor=false" target="_blank">' . esc_html( $location ) . '</a>', $location, $post );
|
280 |
else
|
281 |
+
echo esc_html( $location );
|
282 |
} else {
|
283 |
echo apply_filters( 'the_job_location_anywhere_text', __( 'Anywhere', 'wp-job-manager' ) );
|
284 |
}
|
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.23.
|
7 |
Author: Mike Jolley
|
8 |
Author URI: http://mikejolley.com
|
9 |
Requires at least: 4.1
|
10 |
-
Tested up to: 4.
|
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.23.
|
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 |
|
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.23.12
|
7 |
Author: Mike Jolley
|
8 |
Author URI: http://mikejolley.com
|
9 |
Requires at least: 4.1
|
10 |
+
Tested up to: 4.4
|
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.23.12' );
|
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 |
|