Version Description
- Support for featured job listings
- Support for meta job duration
- set_expirey when publishing jobs from admin manually
- Update handler
Download this release
Release Info
Developer | mikejolley |
Plugin | WP Job Manager |
Version | 1.2.0 |
Comparing to | |
See all releases |
Code changes from version 1.1.3 to 1.2.0
- assets/css/admin.css +1 -1
- assets/css/admin.less +6 -7
- assets/css/frontend.css +1 -1
- assets/css/frontend.less +9 -0
- includes/admin/class-wp-job-manager-cpt.php +8 -3
- includes/admin/class-wp-job-manager-writepanels.php +5 -0
- includes/class-wp-job-manager-install.php +18 -0
- includes/class-wp-job-manager-post-types.php +8 -2
- includes/class-wp-job-manager-shortcodes.php +2 -2
- includes/forms/class-wp-job-manager-form-submit-job.php +10 -2
- readme.txt +7 -1
- wp-job-manager-functions.php +48 -2
- wp-job-manager-template.php +15 -0
- wp-job-manager.php +12 -3
assets/css/admin.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.clearfix{zoom:1}.clearfix:before,.clearfix:after{content:"";display:table}.clearfix:after{clear:both}.clear{clear:both}.nobr{white-space:nowrap}.widefat .column-filled{text-align:center}.widefat .column-company{width:
|
1 |
+
.clearfix{zoom:1}.clearfix:before,.clearfix:after{content:"";display:table}.clearfix:after{clear:both}.clear{clear:both}.nobr{white-space:nowrap}.widefat .column-filled,.widefat .column-featured{text-align:center}.widefat .column-company{width:20%}.widefat td.column-company{padding-left:50px!important;height:40px;position:relative}.widefat td.column-company img{width:32px;height:32px;position:absolute;left:7px;top:4px;-webkit-border-radius:50%;border-radius:50%;box-shadow:0 1px 0 1px rgba(0,0,0,0.1);-webkit-box-shadow:0 1px 0 1px rgba(0,0,0,0.1);-moz-box-shadow:0 1px 0 1px rgba(0,0,0,0.1);border:1px solid #fff}.widefat td.column-company strong{padding-right:.5em}.widefat td.column-company .tagline{display:block;padding-top:2px;color:#bbb}.widefat .column-job_posted strong{display:block;margin-bottom:.2em}.widefat .column-job_posted span{display:block;padding-top:2px}.widefat .column-job_listing_type{text-align:center;width:6em;word-wrap:normal!important}.widefat .column-job_listing_type .job-type{color:#fff;padding:4px 0 3px;line-height:1em;font-size:11px;font-weight:bold;-webkit-border-radius:2px;border-radius:2px;text-shadow:0 1px 0 rgba(0,0,0,0.2);display:block;background-color:#f08d3c;border-bottom:2px solid #e77212}.widefat .column-job_listing_type .full-time{background-color:#90da36;border-bottom:2px solid #76bb22}.widefat .column-job_listing_type .part-time{background-color:#f08d3c;border-bottom:2px solid #e77212}.widefat .column-job_listing_type .temporary{background-color:#d93674;border-bottom:2px solid #b9235c}.widefat .column-job_listing_type .freelance{background-color:#39c;border-bottom:2px solid #297aa3}.widefat .column-job_listing_type .internship{background-color:#6033cc;border-bottom:2px solid #4d29a3}.widefat .column-position{width:20%}.widefat .column-position strong{display:block;margin-bottom:.2em}.widefat .column-position .location{display:block;padding-top:2px;color:#bbb}.widefat .column-job_actions{width:120px;text-align:right}.widefat .column-job_actions a.button{display:inline-block;margin:0 0 2px 4px;cursor:pointer;padding:3px 4px;height:auto}.widefat .column-job_actions a.button img{display:block;width:12px;height:auto}.wp_job_manager_meta_data p{overflow:hidden;margin:0 0 1em;padding:0 0 0 20%;position:relative;line-height:2em}.wp_job_manager_meta_data label{width:20%;position:absolute;left:0;vertical-align:middle}.wp_job_manager_meta_data input{width:50%;margin:1px 0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;vertical-align:middle}.wp_job_manager_meta_data input.checkbox{width:auto;margin:4px 2px}#tiptip_holder{display:none;position:absolute;top:0;left:0;z-index:99999}#tiptip_holder.tip_top{padding-bottom:5px}#tiptip_holder.tip_bottom{padding-top:5px}#tiptip_holder.tip_right{padding-left:5px}#tiptip_holder.tip_left{padding-right:5px}#tiptip_content{font-size:11px;color:#fff;padding:4px 8px;background:#464646;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;box-shadow:1px 1px 3px rgba(0,0,0,0.1);-webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:1px 1px 3px rgba(0,0,0,0.1);text-align:center}#tiptip_content code{background:#999;padding:1px}#tiptip_arrow,#tiptip_arrow_inner{position:absolute;border-color:transparent;border-style:solid;border-width:6px;height:0;width:0}#tiptip_holder.tip_top #tiptip_arrow_inner{margin-top:-7px;margin-left:-6px;border-top-color:#464646}#tiptip_holder.tip_bottom #tiptip_arrow_inner{margin-top:-5px;margin-left:-6px;border-bottom-color:#464646}#tiptip_holder.tip_right #tiptip_arrow_inner{margin-top:-6px;margin-left:-5px;border-right-color:#464646}#tiptip_holder.tip_left #tiptip_arrow_inner{margin-top:-6px;margin-left:-7px;border-left-color:#464646}.wp_job_manager_addons_wrap .items{overflow:hidden}.wp_job_manager_addons_wrap .items li{display:inline-block;margin:0 10px 10px 0!important;padding:0;vertical-align:top;width:250px;border:1px solid #ddd;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),inset 0 -1px 0 rgba(0,0,0,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),inset 0 -1px 0 rgba(0,0,0,0.1);overflow:hidden;position:relative}.wp_job_manager_addons_wrap .items li a{color:inherit;text-decoration:none}.wp_job_manager_addons_wrap .items li img{max-width:100%;height:auto;display:block;margin:0;background:#fff}.wp_job_manager_addons_wrap .items li h2{margin:0!important;padding:10px 20px!important;line-height:1;background:rgba(255,255,255,0.8);color:#000;position:absolute;max-width:280px;top:20px;left:0;font-size:18px;text-shadow:none}.wp_job_manager_addons_wrap .items li .third_party{display:none}.wp_job_manager_addons_wrap .items li p{padding:20px!important;margin:0!important;border-top:1px solid #f1f1f1}.wp_job_manager_addons_wrap .items li .cost{display:none}
|
assets/css/admin.less
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
@import "mixins";
|
2 |
|
3 |
.widefat {
|
4 |
-
.column-filled {
|
5 |
text-align: center;
|
6 |
}
|
7 |
.column-company {
|
8 |
-
width:
|
9 |
}
|
10 |
td.column-company {
|
11 |
padding-left: 50px !important;
|
@@ -22,8 +22,7 @@
|
|
22 |
border: 1px solid #fff;
|
23 |
}
|
24 |
strong {
|
25 |
-
|
26 |
-
margin-bottom: .2em;
|
27 |
}
|
28 |
.tagline {
|
29 |
display: block;
|
@@ -31,8 +30,7 @@
|
|
31 |
color: #bbbbbb;
|
32 |
}
|
33 |
a.company_twitter {
|
34 |
-
|
35 |
-
margin-left: 1em;
|
36 |
}
|
37 |
}
|
38 |
.column-job_posted {
|
@@ -242,7 +240,8 @@
|
|
242 |
margin: 0 !important;
|
243 |
padding: 10px 20px !important;
|
244 |
line-height: 1;
|
245 |
-
background: rgba(255,255,255,0.
|
|
|
246 |
position: absolute;
|
247 |
max-width: 280px;
|
248 |
top: 20px;
|
1 |
@import "mixins";
|
2 |
|
3 |
.widefat {
|
4 |
+
.column-filled, .column-featured {
|
5 |
text-align: center;
|
6 |
}
|
7 |
.column-company {
|
8 |
+
width: 20%;
|
9 |
}
|
10 |
td.column-company {
|
11 |
padding-left: 50px !important;
|
22 |
border: 1px solid #fff;
|
23 |
}
|
24 |
strong {
|
25 |
+
padding-right: .5em;
|
|
|
26 |
}
|
27 |
.tagline {
|
28 |
display: block;
|
30 |
color: #bbbbbb;
|
31 |
}
|
32 |
a.company_twitter {
|
33 |
+
|
|
|
34 |
}
|
35 |
}
|
36 |
.column-job_posted {
|
240 |
margin: 0 !important;
|
241 |
padding: 10px 20px !important;
|
242 |
line-height: 1;
|
243 |
+
background: rgba(255,255,255,0.8);
|
244 |
+
color: #000;
|
245 |
position: absolute;
|
246 |
max-width: 280px;
|
247 |
top: 20px;
|
assets/css/frontend.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.clearfix{zoom:1}.clearfix:before,.clearfix:after{content:"";display:table}.clearfix:after{clear:both}.clear{clear:both}.nobr{white-space:nowrap}@font-face{font-family:'Genericons';src:url('../font/genericons-regular-webfont.eot');src:url('../font/genericons-regular-webfont.eot?#iefix') format('embedded-opentype'),url('../font/genericons-regular-webfont.woff') format('woff'),url('../font/genericons-regular-webfont.ttf') format('truetype'),url('../font/genericons-regular-webfont.svg#genericonsregular') format('svg');font-weight:normal;font-style:normal}.display-icon{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline}.job-manager-message,.job-manager-error,.job-manager-info{padding:1em 1em 1em 3.5em;margin:0 0 2em;position:relative;-webkit-border-radius:4px;border-radius:4px;background:#fff;background:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#fff));background:-webkit-linear-gradient(#fff,#fff);background:-moz-linear-gradient(center top,#fff 0,#fff 100%);background:-moz-gradient(center top,#fff 0,#fff 100%);color:#666;text-shadow:0 1px 0 #fff;list-style:none outside;zoom:1;width:auto;-webkit-box-shadow:inset 0 -2px 6px rgba(0,0,0,0.05),inset 0 -2px 30px rgba(0,0,0,0.015),inset 0 1px 0 #fff,0 1px 2px rgba(0,0,0,0.3);box-shadow:inset 0 -2px 6px rgba(0,0,0,0.05),inset 0 -2px 30px rgba(0,0,0,0.015),inset 0 1px 0 #fff,0 1px 2px rgba(0,0,0,0.3)}.job-manager-message:before,.job-manager-error:before,.job-manager-info:before,.job-manager-message:after,.job-manager-error:after,.job-manager-info:after{content:"";display:table}.job-manager-message:after,.job-manager-error:after,.job-manager-info:after{clear:both}.job-manager-message:before,.job-manager-error:before,.job-manager-info:before{content:"";height:1.5em;width:1.5em;display:block;position:absolute;top:0;left:1em;font-family:sans-serif;font-size:1em;line-height:1.5;text-align:center;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,0.2);padding-top:1em;-webkit-border-bottom-left-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-bottom-right-radius:4px;box-shadow:inset 0 -1px 0 0 rgba(0,0,0,0.1);-webkit-box-shadow:inset 0 -1px 0 0 rgba(0,0,0,0.1);-moz-box-shadow:inset 0 -1px 0 0 rgba(0,0,0,0.1)}.job-manager-message li,.job-manager-error li,.job-manager-info li{list-style:none outside;padding-left:0;margin-left:0}.job-manager-message.job-manager-message,.job-manager-error.job-manager-message,.job-manager-info.job-manager-message{border-top:3px solid #8fae1b}.job-manager-message.job-manager-message:before,.job-manager-error.job-manager-message:before,.job-manager-info.job-manager-message:before{background-color:#8fae1b;content:"\2713"}.job-manager-message.job-manager-info,.job-manager-error.job-manager-info,.job-manager-info.job-manager-info{border-top:3px solid #1e85be}.job-manager-message.job-manager-info:before,.job-manager-error.job-manager-info:before,.job-manager-info.job-manager-info:before{background-color:#1e85be;content:"i";font-family:Times,Georgia,serif;font-style:italic}.job-manager-message.job-manager-error,.job-manager-error.job-manager-error,.job-manager-info.job-manager-error{border-top:3px solid #b81c23}.job-manager-message.job-manager-error:before,.job-manager-error.job-manager-error:before,.job-manager-info.job-manager-error:before{background-color:#b81c23;content:"\00d7";font-weight:700}.job-manager-form fieldset{margin:0 0 1em 0;padding:0 0 1em 0;line-height:2em;border:0;border-bottom:1px solid #eee;zoom:1}.job-manager-form fieldset:before,.job-manager-form fieldset:after{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 .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:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f427'}.job-manager-form fieldset abbr.required{color:red;font-weight:bold;border:0}.job-manager-form fieldset input.input-text,.job-manager-form fieldset textarea,.job-manager-form fieldset select{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 0;display:block;line-height:1.2em}.job-manager-form fieldset .uploaded_image{line-height:64px;font-style:italic;margin:0 0 1em 0}.job-manager-form fieldset .uploaded_image img{height:64px;vertical-align:middle;margin:0 1em 0 0}.job-manager-form .submit-job{padding:1em 0}div.job_listings{margin-bottom:1em}ul.job_listings{padding:0;margin:0!important;border-top:1px solid #eee}ul.job_listings.loading{background:url(../images/ajax-loader.gif) no-repeat center}ul.job_listings li.job_listing,ul.job_listings li.no_job_listings_found{list-style:none outside;padding:0;margin:0;border-bottom:1px solid #eee}ul.job_listings li.job_listing.job_position_filled a,ul.job_listings li.no_job_listings_found.job_position_filled a{opacity:.25}ul.job_listings li.job_listing.no_job_listings_found,ul.job_listings li.no_job_listings_found.no_job_listings_found{padding:1em;border-bottom:1px solid #eee}ul.job_listings li.job_listing a,ul.job_listings li.no_job_listings_found a{display:block;padding:1em 1em 1em 2em;overflow:hidden;zoom:1;position:relative;line-height:3em;font-size:1em;text-decoration:none}ul.job_listings li.job_listing a:hover,ul.job_listings li.no_job_listings_found a:hover,ul.job_listings li.job_listing a:focus,ul.job_listings li.no_job_listings_found a:focus{background-color:#fcfcfc}ul.job_listings li.job_listing a img,ul.job_listings li.no_job_listings_found a img{width:42px;height:42px;position:absolute;left:1em;float:left;margin-right:1em;vertical-align:middle;box-shadow:none}ul.job_listings li.job_listing a div.position,ul.job_listings li.no_job_listings_found a div.position,ul.job_listings li.job_listing a div.location,ul.job_listings li.no_job_listings_found a div.location,ul.job_listings li.job_listing a ul.meta,ul.job_listings li.no_job_listings_found a ul.meta{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}ul.job_listings li.job_listing a div.position,ul.job_listings li.no_job_listings_found a div.position{float:left;width:60%;padding:0 0 0 42px;line-height:1.5em}ul.job_listings li.job_listing a div.position h3,ul.job_listings li.no_job_listings_found a div.position h3{margin:0;padding:0;font-size:1em;line-height:1.5em}ul.job_listings li.job_listing a div.position .company,ul.job_listings li.no_job_listings_found a div.position .company{color:#999;font-size:.75em}ul.job_listings li.job_listing a div.position .company .tagline,ul.job_listings li.no_job_listings_found a div.position .company .tagline{margin-left:.5em}ul.job_listings li.job_listing a div.location,ul.job_listings li.no_job_listings_found a div.location{float:left;text-align:left;width:20%;padding:0 0 0 1em;color:#999;font-size:.75em}ul.job_listings li.job_listing a .meta,ul.job_listings li.no_job_listings_found a .meta{float:right;text-align:right;width:20%;padding:0 0 0 1em;margin:0;line-height:1.5em;color:#999;list-style:none outside}ul.job_listings li.job_listing a .meta li,ul.job_listings li.no_job_listings_found a .meta li{list-style:none outside;display:block;font-size:.75em;margin:0}ul.job_listings li.job_listing a .meta .job-type,ul.job_listings li.no_job_listings_found a .meta .job-type{font-weight:bold}.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:normal}.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_listing .job-type,.job-types .job-type{color:#f08d3c}.job-manager .full-time,.job_listing .full-time,.job-types .full-time{color:#90da36}.job-manager .part-time,.job_listing .part-time,.job-types .part-time{color:#f08d3c}.job-manager .temporary,.job_listing .temporary,.job-types .temporary{color:#d93674}.job-manager .freelance,.job_listing .freelance,.job-types .freelance{color:#39c}.job-manager .internship,.job_listing .internship,.job-types .internship{color:#6033cc}.single_job_listing .company{position:relative;border:1px solid #eee;padding:1em 1em 1em 42px;margin:0 0 2em;display:block;clear:both;min-height:42px}.single_job_listing .company img{width:42px;height:42px;position:absolute;left:1em;float:left;vertical-align:middle;box-shadow:none}.single_job_listing .company .name{margin:0;padding:0 0 0 2em}.single_job_listing .company .name a{float:right;margin-left:1em}.single_job_listing .company .tagline{display:block;margin:0;padding:0 0 0 2em;font-style:italic;color:#999}.single_job_listing .company .website:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f107'}.single_job_listing .company .company_twitter:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f202'}.single_job_listing .meta{list-style:none outside;padding:0;margin:0 0 1.5em;overflow:hidden;zoom:1}.single_job_listing .meta li{margin:0 1em 0 0;padding:.5em;float:left;line-height:1em;color:#999}.single_job_listing .meta .job-type{color:#fff;background-color:#f08d3c}.single_job_listing .meta .full-time{background-color:#90da36}.single_job_listing .meta .part-time{background-color:#f08d3c}.single_job_listing .meta .temporary{background-color:#d93674}.single_job_listing .meta .freelance{background-color:#39c}.single_job_listing .meta .internship{background-color:#6033cc}.single_job_listing .meta .position-filled{color:#b81c23}.single_job_listing .meta .location:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f417'}.single_job_listing .meta .date-posted:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f307'}.single_job_listing .meta .position-filled:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f424'}.single_job_listing .application{overflow:hidden;zoom:1;padding-left:20px;margin:0 0 1em}.single_job_listing .application .application_button,.single_job_listing .application .application_details{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.single_job_listing .application .application_button{text-align:center;font-size:1.2em;line-height:1em;width:33.3%;float:left;margin:0 0 0 -20px;padding:.8333333333333334em}.single_job_listing .application .application_details{float:right;width:66.6%;border:1px solid #eee;padding:.75em 1em 0;margin:0;line-height:1.5em;display:block;position:relative}.single_job_listing .application .application_details p{margin:0 0 .75em}.single_job_listing .application .application_details:before{content:"";position:absolute;margin:0 0 0 -10px;left:0;top:1em;width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent;border-right:10px solid #eee}.single_job_listing .application .application_details:after{content:"";position:absolute;margin:1px 0 0 -9px;top:1em;left:0;width:0;height:0;border-top:9px solid transparent;border-bottom:9px solid transparent;border-right:9px solid #fff}.job_filters{background:#eee;zoom:1}.job_filters:before,.job_filters:after{content:"";display:table}.job_filters:after{clear:both}.job_filters .search_jobs{padding:1em;zoom:1}.job_filters .search_jobs:before,.job_filters .search_jobs:after{content:"";display:table}.job_filters .search_jobs:after{clear:both}.job_filters .search_jobs div{width:50%;-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.search_keywords,.job_filters .search_jobs div.filter_first{float:left;padding-right:.5em}.job_filters .search_jobs div.search_location,.job_filters .search_jobs div.filter_last{float:right;padding-left:.5em}.job_filters .search_jobs div.search_categories,.job_filters .search_jobs div.filter_wide{padding-top:.5em;clear:both;width:100%}.job_filters .search_jobs div a{padding:.25em}.job_filters .search_jobs div 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:before,.job_filters .job_types:after{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}.load_more_jobs{text-align:center;display:block;padding:1em 1em 1em 2em;border-bottom:1px solid #eee;font-weight:bold}.load_more_jobs.loading{background:url(../images/ajax-loader.gif) no-repeat center}.load_more_jobs.loading strong{visibility:hidden}.load_more_jobs:hover,.load_more_jobs:focus{background-color:#fcfcfc}.job_listing_preview{padding:0 1em 1em;border:5px solid #eee}.job_listing_preview_title,.entry-content .job_listing_preview_title{padding:.5em 1em;vertical-align:middle;position:relative;background:#eee}.job_listing_preview_title h2,.entry-content .job_listing_preview_title h2{margin:0;clear:none}.job_listing_preview_title .button,.entry-content .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,0.1),inset 0 1px 0 rgba(255,255,255,0.4);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.job_summary_shortcode.aligncenter{display:block;margin:2em auto 2em}.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,0.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,0.5);box-shadow:0 2px 4px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.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:-0.5em -0.5em 0 0}.job_summary_shortcode .job-type.full-time{background-color:#90da36}.job_summary_shortcode .job-type.part-time{background-color:#f08d3c}.job_summary_shortcode .job-type.temporary{background-color:#d93674}.job_summary_shortcode .job-type.freelance{background-color:#39c}.job_summary_shortcode .job-type.internship{background-color:#6033cc}#job-manager-job-dashboard table ul.job-dashboard-actions{margin:0;padding:0;visibility:hidden;font-size:.92em}#job-manager-job-dashboard table ul.job-dashboard-actions li{float:none;display:inline;padding:0;margin:0 .5em 0 0;font-weight:normal;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:hover ul.job-dashboard-actions,#job-manager-job-dashboard table tr:focus ul.job-dashboard-actions{visibility:visible}#job-manager-job-dashboard table .filled,#job-manager-job-dashboard table .expires{text-align:center}
|
1 |
+
.clearfix{zoom:1}.clearfix:before,.clearfix:after{content:"";display:table}.clearfix:after{clear:both}.clear{clear:both}.nobr{white-space:nowrap}@font-face{font-family:'Genericons';src:url('../font/genericons-regular-webfont.eot');src:url('../font/genericons-regular-webfont.eot?#iefix') format('embedded-opentype'),url('../font/genericons-regular-webfont.woff') format('woff'),url('../font/genericons-regular-webfont.ttf') format('truetype'),url('../font/genericons-regular-webfont.svg#genericonsregular') format('svg');font-weight:normal;font-style:normal}.display-icon{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline}.job-manager-message,.job-manager-error,.job-manager-info{padding:1em 1em 1em 3.5em;margin:0 0 2em;position:relative;-webkit-border-radius:4px;border-radius:4px;background:#fff;background:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#fff));background:-webkit-linear-gradient(#fff,#fff);background:-moz-linear-gradient(center top,#fff 0,#fff 100%);background:-moz-gradient(center top,#fff 0,#fff 100%);color:#666;text-shadow:0 1px 0 #fff;list-style:none outside;zoom:1;width:auto;-webkit-box-shadow:inset 0 -2px 6px rgba(0,0,0,0.05),inset 0 -2px 30px rgba(0,0,0,0.015),inset 0 1px 0 #fff,0 1px 2px rgba(0,0,0,0.3);box-shadow:inset 0 -2px 6px rgba(0,0,0,0.05),inset 0 -2px 30px rgba(0,0,0,0.015),inset 0 1px 0 #fff,0 1px 2px rgba(0,0,0,0.3)}.job-manager-message:before,.job-manager-error:before,.job-manager-info:before,.job-manager-message:after,.job-manager-error:after,.job-manager-info:after{content:"";display:table}.job-manager-message:after,.job-manager-error:after,.job-manager-info:after{clear:both}.job-manager-message:before,.job-manager-error:before,.job-manager-info:before{content:"";height:1.5em;width:1.5em;display:block;position:absolute;top:0;left:1em;font-family:sans-serif;font-size:1em;line-height:1.5;text-align:center;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,0.2);padding-top:1em;-webkit-border-bottom-left-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-bottom-right-radius:4px;box-shadow:inset 0 -1px 0 0 rgba(0,0,0,0.1);-webkit-box-shadow:inset 0 -1px 0 0 rgba(0,0,0,0.1);-moz-box-shadow:inset 0 -1px 0 0 rgba(0,0,0,0.1)}.job-manager-message li,.job-manager-error li,.job-manager-info li{list-style:none outside;padding-left:0;margin-left:0}.job-manager-message.job-manager-message,.job-manager-error.job-manager-message,.job-manager-info.job-manager-message{border-top:3px solid #8fae1b}.job-manager-message.job-manager-message:before,.job-manager-error.job-manager-message:before,.job-manager-info.job-manager-message:before{background-color:#8fae1b;content:"\2713"}.job-manager-message.job-manager-info,.job-manager-error.job-manager-info,.job-manager-info.job-manager-info{border-top:3px solid #1e85be}.job-manager-message.job-manager-info:before,.job-manager-error.job-manager-info:before,.job-manager-info.job-manager-info:before{background-color:#1e85be;content:"i";font-family:Times,Georgia,serif;font-style:italic}.job-manager-message.job-manager-error,.job-manager-error.job-manager-error,.job-manager-info.job-manager-error{border-top:3px solid #b81c23}.job-manager-message.job-manager-error:before,.job-manager-error.job-manager-error:before,.job-manager-info.job-manager-error:before{background-color:#b81c23;content:"\00d7";font-weight:700}.job-manager-form fieldset{margin:0 0 1em 0;padding:0 0 1em 0;line-height:2em;border:0;border-bottom:1px solid #eee;zoom:1}.job-manager-form fieldset:before,.job-manager-form fieldset:after{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 .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:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f427'}.job-manager-form fieldset abbr.required{color:red;font-weight:bold;border:0}.job-manager-form fieldset input.input-text,.job-manager-form fieldset textarea,.job-manager-form fieldset select{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 0;display:block;line-height:1.2em}.job-manager-form fieldset .uploaded_image{line-height:64px;font-style:italic;margin:0 0 1em 0}.job-manager-form fieldset .uploaded_image img{height:64px;vertical-align:middle;margin:0 1em 0 0}.job-manager-form .submit-job{padding:1em 0}div.job_listings{margin-bottom:1em}ul.job_listings{padding:0;margin:0!important;border-top:1px solid #eee}ul.job_listings.loading{background:url(../images/ajax-loader.gif) no-repeat center}ul.job_listings li.job_listing,ul.job_listings li.no_job_listings_found{list-style:none outside;padding:0;margin:0;border-bottom:1px solid #eee}ul.job_listings li.job_listing.job_position_filled a,ul.job_listings li.no_job_listings_found.job_position_filled a{opacity:.25}ul.job_listings li.job_listing.no_job_listings_found,ul.job_listings li.no_job_listings_found.no_job_listings_found{padding:1em;border-bottom:1px solid #eee}ul.job_listings li.job_listing a,ul.job_listings li.no_job_listings_found a{display:block;padding:1em 1em 1em 2em;overflow:hidden;zoom:1;position:relative;line-height:3em;font-size:1em;text-decoration:none}ul.job_listings li.job_listing a:hover,ul.job_listings li.no_job_listings_found a:hover,ul.job_listings li.job_listing a:focus,ul.job_listings li.no_job_listings_found a:focus{background-color:#fcfcfc}ul.job_listings li.job_listing a img,ul.job_listings li.no_job_listings_found a img{width:42px;height:42px;position:absolute;left:1em;float:left;margin-right:1em;vertical-align:middle;box-shadow:none}ul.job_listings li.job_listing a div.position,ul.job_listings li.no_job_listings_found a div.position,ul.job_listings li.job_listing a div.location,ul.job_listings li.no_job_listings_found a div.location,ul.job_listings li.job_listing a ul.meta,ul.job_listings li.no_job_listings_found a ul.meta{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}ul.job_listings li.job_listing a div.position,ul.job_listings li.no_job_listings_found a div.position{float:left;width:60%;padding:0 0 0 42px;line-height:1.5em}ul.job_listings li.job_listing a div.position h3,ul.job_listings li.no_job_listings_found a div.position h3{margin:0;padding:0;font-size:1em;line-height:1.5em}ul.job_listings li.job_listing a div.position .company,ul.job_listings li.no_job_listings_found a div.position .company{color:#999;font-size:.75em}ul.job_listings li.job_listing a div.position .company .tagline,ul.job_listings li.no_job_listings_found a div.position .company .tagline{margin-left:.5em}ul.job_listings li.job_listing a div.location,ul.job_listings li.no_job_listings_found a div.location{float:left;text-align:left;width:20%;padding:0 0 0 1em;color:#999;font-size:.75em}ul.job_listings li.job_listing a .meta,ul.job_listings li.no_job_listings_found a .meta{float:right;text-align:right;width:20%;padding:0 0 0 1em;margin:0;line-height:1.5em;color:#999;list-style:none outside}ul.job_listings li.job_listing a .meta li,ul.job_listings li.no_job_listings_found a .meta li{list-style:none outside;display:block;font-size:.75em;margin:0}ul.job_listings li.job_listing a .meta .job-type,ul.job_listings li.no_job_listings_found a .meta .job-type{font-weight:bold}ul.job_listings li.job_listing.job_position_featured a,ul.job_listings li.no_job_listings_found.job_position_featured a{background:#fefee5}ul.job_listings li.job_listing.job_position_featured a:hover,ul.job_listings 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.no_job_listings_found.job_position_featured a:focus{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:normal}.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_listing .job-type,.job-types .job-type{color:#f08d3c}.job-manager .full-time,.job_listing .full-time,.job-types .full-time{color:#90da36}.job-manager .part-time,.job_listing .part-time,.job-types .part-time{color:#f08d3c}.job-manager .temporary,.job_listing .temporary,.job-types .temporary{color:#d93674}.job-manager .freelance,.job_listing .freelance,.job-types .freelance{color:#39c}.job-manager .internship,.job_listing .internship,.job-types .internship{color:#6033cc}.single_job_listing .company{position:relative;border:1px solid #eee;padding:1em 1em 1em 42px;margin:0 0 2em;display:block;clear:both;min-height:42px}.single_job_listing .company img{width:42px;height:42px;position:absolute;left:1em;float:left;vertical-align:middle;box-shadow:none}.single_job_listing .company .name{margin:0;padding:0 0 0 2em}.single_job_listing .company .name a{float:right;margin-left:1em}.single_job_listing .company .tagline{display:block;margin:0;padding:0 0 0 2em;font-style:italic;color:#999}.single_job_listing .company .website:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f107'}.single_job_listing .company .company_twitter:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f202'}.single_job_listing .meta{list-style:none outside;padding:0;margin:0 0 1.5em;overflow:hidden;zoom:1}.single_job_listing .meta li{margin:0 1em 0 0;padding:.5em;float:left;line-height:1em;color:#999}.single_job_listing .meta .job-type{color:#fff;background-color:#f08d3c}.single_job_listing .meta .full-time{background-color:#90da36}.single_job_listing .meta .part-time{background-color:#f08d3c}.single_job_listing .meta .temporary{background-color:#d93674}.single_job_listing .meta .freelance{background-color:#39c}.single_job_listing .meta .internship{background-color:#6033cc}.single_job_listing .meta .position-filled{color:#b81c23}.single_job_listing .meta .location:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f417'}.single_job_listing .meta .date-posted:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f307'}.single_job_listing .meta .position-filled:before{display:inline-block;width:16px;height:16px;-webkit-font-smoothing:antialiased;font-family:'Genericons';text-decoration:none;font-weight:normal;font-style:normal;vertical-align:top;font-size:16px;margin:0 2px 0 0;*overflow:auto;*zoom:1;*display:inline;content:'\f424'}.single_job_listing .application{overflow:hidden;zoom:1;padding-left:20px;margin:0 0 1em}.single_job_listing .application .application_button,.single_job_listing .application .application_details{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.single_job_listing .application .application_button{text-align:center;font-size:1.2em;line-height:1em;width:33.3%;float:left;margin:0 0 0 -20px;padding:.8333333333333334em}.single_job_listing .application .application_details{float:right;width:66.6%;border:1px solid #eee;padding:.75em 1em 0;margin:0;line-height:1.5em;display:block;position:relative}.single_job_listing .application .application_details p{margin:0 0 .75em}.single_job_listing .application .application_details:before{content:"";position:absolute;margin:0 0 0 -10px;left:0;top:1em;width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent;border-right:10px solid #eee}.single_job_listing .application .application_details:after{content:"";position:absolute;margin:1px 0 0 -9px;top:1em;left:0;width:0;height:0;border-top:9px solid transparent;border-bottom:9px solid transparent;border-right:9px solid #fff}.job_filters{background:#eee;zoom:1}.job_filters:before,.job_filters:after{content:"";display:table}.job_filters:after{clear:both}.job_filters .search_jobs{padding:1em;zoom:1}.job_filters .search_jobs:before,.job_filters .search_jobs:after{content:"";display:table}.job_filters .search_jobs:after{clear:both}.job_filters .search_jobs div{width:50%;-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.search_keywords,.job_filters .search_jobs div.filter_first{float:left;padding-right:.5em}.job_filters .search_jobs div.search_location,.job_filters .search_jobs div.filter_last{float:right;padding-left:.5em}.job_filters .search_jobs div.search_categories,.job_filters .search_jobs div.filter_wide{padding-top:.5em;clear:both;width:100%}.job_filters .search_jobs div a{padding:.25em}.job_filters .search_jobs div 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:before,.job_filters .job_types:after{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}.load_more_jobs{text-align:center;display:block;padding:1em 1em 1em 2em;border-bottom:1px solid #eee;font-weight:bold}.load_more_jobs.loading{background:url(../images/ajax-loader.gif) no-repeat center}.load_more_jobs.loading strong{visibility:hidden}.load_more_jobs:hover,.load_more_jobs:focus{background-color:#fcfcfc}.job_listing_preview{padding:0 1em 1em;border:5px solid #eee}.job_listing_preview_title,.entry-content .job_listing_preview_title{padding:.5em 1em;vertical-align:middle;position:relative;background:#eee}.job_listing_preview_title h2,.entry-content .job_listing_preview_title h2{margin:0;clear:none}.job_listing_preview_title .button,.entry-content .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,0.1),inset 0 1px 0 rgba(255,255,255,0.4);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.job_summary_shortcode.aligncenter{display:block;margin:2em auto 2em}.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,0.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,0.5);box-shadow:0 2px 4px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.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:-0.5em -0.5em 0 0}.job_summary_shortcode .job-type.full-time{background-color:#90da36}.job_summary_shortcode .job-type.part-time{background-color:#f08d3c}.job_summary_shortcode .job-type.temporary{background-color:#d93674}.job_summary_shortcode .job-type.freelance{background-color:#39c}.job_summary_shortcode .job-type.internship{background-color:#6033cc}#job-manager-job-dashboard table ul.job-dashboard-actions{margin:0;padding:0;visibility:hidden;font-size:.92em}#job-manager-job-dashboard table ul.job-dashboard-actions li{float:none;display:inline;padding:0;margin:0 .5em 0 0;font-weight:normal;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:hover ul.job-dashboard-actions,#job-manager-job-dashboard table tr:focus ul.job-dashboard-actions{visibility:visible}#job-manager-job-dashboard table .filled,#job-manager-job-dashboard table .expires{text-align:center}
|
assets/css/frontend.less
CHANGED
@@ -287,6 +287,15 @@ ul.job_listings {
|
|
287 |
}
|
288 |
}
|
289 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
290 |
}
|
291 |
}
|
292 |
.widget {
|
287 |
}
|
288 |
}
|
289 |
}
|
290 |
+
&.job_position_featured {
|
291 |
+
a {
|
292 |
+
background: #fefee5;
|
293 |
+
|
294 |
+
&:hover, &:focus {
|
295 |
+
background-color: #fefed8;
|
296 |
+
}
|
297 |
+
}
|
298 |
+
}
|
299 |
}
|
300 |
}
|
301 |
.widget {
|
includes/admin/class-wp-job-manager-cpt.php
CHANGED
@@ -234,10 +234,11 @@ class WP_Job_Manager_CPT {
|
|
234 |
$columns["position"] = __( "Position", "job_manager" );
|
235 |
$columns["company"] = __( "Company", "job_manager" );
|
236 |
$columns["job_posted"] = __( "Posted", "job_manager" );
|
237 |
-
$columns["job_expires"]
|
238 |
if ( get_option( 'job_manager_enable_categories' ) )
|
239 |
-
|
240 |
$columns['status'] = __( "Job Status", "job_manager" );
|
|
|
241 |
$columns['filled'] = __( "Filled?", "job_manager" );
|
242 |
$columns["job_actions"] = __( "Actions", "job_manager" );
|
243 |
|
@@ -268,13 +269,14 @@ class WP_Job_Manager_CPT {
|
|
268 |
break;
|
269 |
case "company" :
|
270 |
the_company_logo();
|
271 |
-
the_company_twitter();
|
272 |
|
273 |
if ( get_the_company_website() )
|
274 |
the_company_name( '<strong><a href="' . get_the_company_website() . '">', '</a></strong>' );
|
275 |
else
|
276 |
the_company_name( '<strong>', '</strong> ' );
|
277 |
|
|
|
|
|
278 |
the_company_tagline( '<span class="tagline">', '</span>' );
|
279 |
break;
|
280 |
case "job_listing_category" :
|
@@ -286,6 +288,9 @@ class WP_Job_Manager_CPT {
|
|
286 |
case "filled" :
|
287 |
if ( is_position_filled( $post ) ) echo '✔'; else echo '–';
|
288 |
break;
|
|
|
|
|
|
|
289 |
case "job_posted" :
|
290 |
echo '<strong>' . date_i18n( get_option( 'date_format' ), strtotime( $post->post_date ) ) . '</strong><span>';
|
291 |
echo ( empty( $post->post_author ) ? __( 'by a guest', 'job_manager' ) : sprintf( __( 'by %s', 'job_manager' ), '<a href="' . get_edit_user_link( $post->post_author ) . '">' . get_the_author() . '</a>' ) ) . '</span>';
|
234 |
$columns["position"] = __( "Position", "job_manager" );
|
235 |
$columns["company"] = __( "Company", "job_manager" );
|
236 |
$columns["job_posted"] = __( "Posted", "job_manager" );
|
237 |
+
$columns["job_expires"] = __( "Expires", "job_manager" );
|
238 |
if ( get_option( 'job_manager_enable_categories' ) )
|
239 |
+
$columns["job_listing_category"] = __( "Categories", "job_manager" );
|
240 |
$columns['status'] = __( "Job Status", "job_manager" );
|
241 |
+
$columns['featured'] = __( "Featured?", "job_manager" );
|
242 |
$columns['filled'] = __( "Filled?", "job_manager" );
|
243 |
$columns["job_actions"] = __( "Actions", "job_manager" );
|
244 |
|
269 |
break;
|
270 |
case "company" :
|
271 |
the_company_logo();
|
|
|
272 |
|
273 |
if ( get_the_company_website() )
|
274 |
the_company_name( '<strong><a href="' . get_the_company_website() . '">', '</a></strong>' );
|
275 |
else
|
276 |
the_company_name( '<strong>', '</strong> ' );
|
277 |
|
278 |
+
the_company_twitter( '@' );
|
279 |
+
|
280 |
the_company_tagline( '<span class="tagline">', '</span>' );
|
281 |
break;
|
282 |
case "job_listing_category" :
|
288 |
case "filled" :
|
289 |
if ( is_position_filled( $post ) ) echo '✔'; else echo '–';
|
290 |
break;
|
291 |
+
case "featured" :
|
292 |
+
if ( is_position_featured( $post ) ) echo '✔'; else echo '–';
|
293 |
+
break;
|
294 |
case "job_posted" :
|
295 |
echo '<strong>' . date_i18n( get_option( 'date_format' ), strtotime( $post->post_date ) ) . '</strong><span>';
|
296 |
echo ( empty( $post->post_author ) ? __( 'by a guest', 'job_manager' ) : sprintf( __( 'by %s', 'job_manager' ), '<a href="' . get_edit_user_link( $post->post_author ) . '">' . get_the_author() . '</a>' ) ) . '</span>';
|
includes/admin/class-wp-job-manager-writepanels.php
CHANGED
@@ -56,6 +56,11 @@ class WP_Job_Manager_Writepanels {
|
|
56 |
'_filled' => array(
|
57 |
'label' => __( 'Position filled?', 'job_manager' ),
|
58 |
'type' => 'checkbox'
|
|
|
|
|
|
|
|
|
|
|
59 |
)
|
60 |
) );
|
61 |
}
|
56 |
'_filled' => array(
|
57 |
'label' => __( 'Position filled?', 'job_manager' ),
|
58 |
'type' => 'checkbox'
|
59 |
+
),
|
60 |
+
'_featured' => array(
|
61 |
+
'label' => __( 'Feature this job listing?', 'job_manager' ),
|
62 |
+
'type' => 'checkbox',
|
63 |
+
'description' => __( 'Featured listings will be sticky during searches, and can be styled differently.', 'job_manager' )
|
64 |
)
|
65 |
) );
|
66 |
}
|
includes/class-wp-job-manager-install.php
CHANGED
@@ -16,7 +16,10 @@ class WP_Job_Manager_Install {
|
|
16 |
public function __construct() {
|
17 |
$this->init_user_roles();
|
18 |
$this->default_terms();
|
|
|
19 |
$this->cron();
|
|
|
|
|
20 |
}
|
21 |
|
22 |
/**
|
@@ -67,6 +70,21 @@ class WP_Job_Manager_Install {
|
|
67 |
update_option( 'job_manager_installed_terms', 1 );
|
68 |
}
|
69 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
70 |
/**
|
71 |
* Setup cron jobs
|
72 |
*/
|
16 |
public function __construct() {
|
17 |
$this->init_user_roles();
|
18 |
$this->default_terms();
|
19 |
+
$this->default_meta();
|
20 |
$this->cron();
|
21 |
+
delete_transient( 'wp_job_manager_addons_html' );
|
22 |
+
update_option( 'wp_job_manager_version', JOB_MANAGER_VERSION );
|
23 |
}
|
24 |
|
25 |
/**
|
70 |
update_option( 'job_manager_installed_terms', 1 );
|
71 |
}
|
72 |
|
73 |
+
/**
|
74 |
+
* Add default meta values for all posts
|
75 |
+
*/
|
76 |
+
public function default_meta() {
|
77 |
+
$jobs = get_posts( array(
|
78 |
+
'post_type' => 'job_listing',
|
79 |
+
'posts_per_page' => -1,
|
80 |
+
'fields' => 'ids'
|
81 |
+
) );
|
82 |
+
|
83 |
+
foreach ( $jobs as $job ) {
|
84 |
+
add_post_meta( $job, '_featured', 0, true );
|
85 |
+
}
|
86 |
+
}
|
87 |
+
|
88 |
/**
|
89 |
* Setup cron jobs
|
90 |
*/
|
includes/class-wp-job-manager-post-types.php
CHANGED
@@ -13,6 +13,8 @@ class WP_Job_Manager_Post_Types {
|
|
13 |
add_action( 'job_manager_check_for_expired_jobs', array( $this, 'check_for_expired_jobs' ) );
|
14 |
add_action( 'pending_to_publish', array( $this, 'set_expirey' ) );
|
15 |
add_action( 'preview_to_publish', array( $this, 'set_expirey' ) );
|
|
|
|
|
16 |
|
17 |
add_filter( 'the_job_description', 'wptexturize' );
|
18 |
add_filter( 'the_job_description', 'convert_smilies' );
|
@@ -322,8 +324,12 @@ class WP_Job_Manager_Post_Types {
|
|
322 |
if ( $post->post_type !== 'job_listing' )
|
323 |
return;
|
324 |
|
325 |
-
//
|
326 |
-
$duration =
|
|
|
|
|
|
|
|
|
327 |
|
328 |
if ( $duration ) {
|
329 |
$expires = date( 'Y-m-d H:i:s', strtotime( "+{$duration} days", current_time( 'timestamp' ) ) );
|
13 |
add_action( 'job_manager_check_for_expired_jobs', array( $this, 'check_for_expired_jobs' ) );
|
14 |
add_action( 'pending_to_publish', array( $this, 'set_expirey' ) );
|
15 |
add_action( 'preview_to_publish', array( $this, 'set_expirey' ) );
|
16 |
+
add_action( 'draft_to_publish', array( $this, 'set_expirey' ) );
|
17 |
+
add_action( 'auto-draft_to_publish', array( $this, 'set_expirey' ) );
|
18 |
|
19 |
add_filter( 'the_job_description', 'wptexturize' );
|
20 |
add_filter( 'the_job_description', 'convert_smilies' );
|
324 |
if ( $post->post_type !== 'job_listing' )
|
325 |
return;
|
326 |
|
327 |
+
// Get duration from the product if set...
|
328 |
+
$duration = get_post_meta( $post->ID, '_job_duration', true );
|
329 |
+
|
330 |
+
// ...otherwise use the global option
|
331 |
+
if ( ! $duration )
|
332 |
+
$duration = absint( get_option( 'job_manager_submission_duration' ) );
|
333 |
|
334 |
if ( $duration ) {
|
335 |
$expires = date( 'Y-m-d H:i:s', strtotime( "+{$duration} days", current_time( 'timestamp' ) ) );
|
includes/class-wp-job-manager-shortcodes.php
CHANGED
@@ -162,8 +162,8 @@ class WP_Job_Manager_Shortcodes {
|
|
162 |
|
163 |
extract( $atts = shortcode_atts( apply_filters( 'job_manager_output_jobs_defaults', array(
|
164 |
'per_page' => get_option( 'job_manager_per_page' ),
|
165 |
-
'orderby' => '
|
166 |
-
'order' => '
|
167 |
'show_filters' => true,
|
168 |
'show_categories' => get_option( 'job_manager_enable_categories' ),
|
169 |
'categories' => ''
|
162 |
|
163 |
extract( $atts = shortcode_atts( apply_filters( 'job_manager_output_jobs_defaults', array(
|
164 |
'per_page' => get_option( 'job_manager_per_page' ),
|
165 |
+
'orderby' => 'featured',
|
166 |
+
'order' => 'DESC',
|
167 |
'show_filters' => true,
|
168 |
'show_categories' => get_option( 'job_manager_enable_categories' ),
|
169 |
'categories' => ''
|
includes/forms/class-wp-job-manager-form-submit-job.php
CHANGED
@@ -52,17 +52,24 @@ class WP_Job_Manager_Form_Submit_Job extends WP_Job_Manager_Form {
|
|
52 |
}
|
53 |
}
|
54 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
55 |
/**
|
56 |
* Increase step from outside of the class
|
57 |
*/
|
58 |
-
public function next_step() {
|
59 |
self::$step ++;
|
60 |
}
|
61 |
|
62 |
/**
|
63 |
* Decrease step from outside of the class
|
64 |
*/
|
65 |
-
public function previous_step() {
|
66 |
self::$step --;
|
67 |
}
|
68 |
|
@@ -431,6 +438,7 @@ class WP_Job_Manager_Form_Submit_Job extends WP_Job_Manager_Form {
|
|
431 |
update_post_meta( self::$job_id, '_company_twitter', $values['company']['company_twitter'] );
|
432 |
update_post_meta( self::$job_id, '_company_logo', $values['company']['company_logo'] );
|
433 |
update_post_meta( self::$job_id, '_filled', 0 );
|
|
|
434 |
|
435 |
// And user meta to save time in future
|
436 |
if ( is_user_logged_in() ) {
|
52 |
}
|
53 |
}
|
54 |
|
55 |
+
/**
|
56 |
+
* Get step from outside of the class
|
57 |
+
*/
|
58 |
+
public static function get_step() {
|
59 |
+
return self::$step;
|
60 |
+
}
|
61 |
+
|
62 |
/**
|
63 |
* Increase step from outside of the class
|
64 |
*/
|
65 |
+
public static function next_step() {
|
66 |
self::$step ++;
|
67 |
}
|
68 |
|
69 |
/**
|
70 |
* Decrease step from outside of the class
|
71 |
*/
|
72 |
+
public static function previous_step() {
|
73 |
self::$step --;
|
74 |
}
|
75 |
|
438 |
update_post_meta( self::$job_id, '_company_twitter', $values['company']['company_twitter'] );
|
439 |
update_post_meta( self::$job_id, '_company_logo', $values['company']['company_logo'] );
|
440 |
update_post_meta( self::$job_id, '_filled', 0 );
|
441 |
+
update_post_meta( self::$job_id, '_featured', 0 );
|
442 |
|
443 |
// And user meta to save time in future
|
444 |
if ( is_user_logged_in() ) {
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=mike.jol
|
|
4 |
Tags: job listing, job board, job, jobs, company
|
5 |
Requires at least: 3.5
|
6 |
Tested up to: 3.6
|
7 |
-
Stable tag: 1.
|
8 |
|
9 |
Manage job listings from the WordPress admin panel, and allow users to post jobs directly to your site.
|
10 |
|
@@ -72,6 +72,12 @@ The manual installation method involves downloading the plugin and uploading it
|
|
72 |
|
73 |
== Changelog ==
|
74 |
|
|
|
|
|
|
|
|
|
|
|
|
|
75 |
= 1.1.3 =
|
76 |
* Corrected form field label
|
77 |
* Added french translation by Remi Corson
|
4 |
Tags: job listing, job board, job, jobs, company
|
5 |
Requires at least: 3.5
|
6 |
Tested up to: 3.6
|
7 |
+
Stable tag: 1.2.0
|
8 |
|
9 |
Manage job listings from the WordPress admin panel, and allow users to post jobs directly to your site.
|
10 |
|
72 |
|
73 |
== Changelog ==
|
74 |
|
75 |
+
= 1.2.0 =
|
76 |
+
* Support for featured job listings
|
77 |
+
* Support for meta job duration
|
78 |
+
* set_expirey when publishing jobs from admin manually
|
79 |
+
* Update handler
|
80 |
+
|
81 |
= 1.1.3 =
|
82 |
* Corrected form field label
|
83 |
* Added french translation by Remi Corson
|
wp-job-manager-functions.php
CHANGED
@@ -86,7 +86,53 @@ function get_job_listings( $args = array() ) {
|
|
86 |
if ( empty( $query_args['tax_query'] ) )
|
87 |
unset( $query_args['tax_query'] );
|
88 |
|
89 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
}
|
91 |
endif;
|
92 |
|
@@ -95,7 +141,7 @@ if ( ! function_exists( 'get_job_listing_types' ) ) :
|
|
95 |
* Outputs a form to submit a new job to the site from the frontend.
|
96 |
*
|
97 |
* @access public
|
98 |
-
* @return
|
99 |
*/
|
100 |
function get_job_listing_types() {
|
101 |
return get_terms( "job_listing_type", array(
|
86 |
if ( empty( $query_args['tax_query'] ) )
|
87 |
unset( $query_args['tax_query'] );
|
88 |
|
89 |
+
if ( $args['orderby'] == 'featured' ) {
|
90 |
+
$query_args['orderby'] = 'meta_key';
|
91 |
+
$query_args['meta_key'] = '_featured';
|
92 |
+
add_filter( 'posts_clauses', 'order_featured_job_listing' );
|
93 |
+
}
|
94 |
+
|
95 |
+
$result = new WP_Query( $query_args );
|
96 |
+
|
97 |
+
remove_filter( 'posts_clauses', 'order_featured_job_listing' );
|
98 |
+
|
99 |
+
return $result;
|
100 |
+
}
|
101 |
+
endif;
|
102 |
+
|
103 |
+
if ( ! function_exists( 'order_featured_job_listing' ) ) :
|
104 |
+
/**
|
105 |
+
* WP Core doens't let us change the sort direction for invidual orderby params - http://core.trac.wordpress.org/ticket/17065
|
106 |
+
*
|
107 |
+
* @access public
|
108 |
+
* @param array $args
|
109 |
+
* @return array
|
110 |
+
*/
|
111 |
+
function order_featured_job_listing( $args ) {
|
112 |
+
global $wpdb;
|
113 |
+
|
114 |
+
$args['orderby'] = "$wpdb->postmeta.meta_value+0 DESC, $wpdb->posts.post_date DESC";
|
115 |
+
|
116 |
+
return $args;
|
117 |
+
}
|
118 |
+
endif;
|
119 |
+
|
120 |
+
if ( ! function_exists( 'get_featured_job_ids' ) ) :
|
121 |
+
/**
|
122 |
+
* Gets the ids of featured jobs.
|
123 |
+
*
|
124 |
+
* @access public
|
125 |
+
* @return array
|
126 |
+
*/
|
127 |
+
function get_featured_job_ids() {
|
128 |
+
return get_posts( array(
|
129 |
+
'posts_per_page' => -1,
|
130 |
+
'post_type' => 'job_listing',
|
131 |
+
'post_status' => 'publish',
|
132 |
+
'meta_key' => '_featured',
|
133 |
+
'meta_value' => '1',
|
134 |
+
'fields' => 'ids'
|
135 |
+
) );
|
136 |
}
|
137 |
endif;
|
138 |
|
141 |
* Outputs a form to submit a new job to the site from the frontend.
|
142 |
*
|
143 |
* @access public
|
144 |
+
* @return array
|
145 |
*/
|
146 |
function get_job_listing_types() {
|
147 |
return get_terms( "job_listing_type", array(
|
wp-job-manager-template.php
CHANGED
@@ -166,6 +166,18 @@ function is_position_filled( $post = null ) {
|
|
166 |
return $post->_filled ? true : false;
|
167 |
}
|
168 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
169 |
/**
|
170 |
* the_job_permalink function.
|
171 |
*
|
@@ -494,5 +506,8 @@ function get_job_listing_class( $class = '', $post_id = null ) {
|
|
494 |
if ( is_position_filled( $post ) )
|
495 |
$classes[] = 'job_position_filled';
|
496 |
|
|
|
|
|
|
|
497 |
return get_post_class( $classes, $post->ID );
|
498 |
}
|
166 |
return $post->_filled ? true : false;
|
167 |
}
|
168 |
|
169 |
+
/**
|
170 |
+
* Return whether or not the position has been featured
|
171 |
+
*
|
172 |
+
* @param object $post
|
173 |
+
* @return boolean
|
174 |
+
*/
|
175 |
+
function is_position_featured( $post = null ) {
|
176 |
+
$post = get_post( $post );
|
177 |
+
|
178 |
+
return $post->_featured ? true : false;
|
179 |
+
}
|
180 |
+
|
181 |
/**
|
182 |
* the_job_permalink function.
|
183 |
*
|
506 |
if ( is_position_filled( $post ) )
|
507 |
$classes[] = 'job_position_filled';
|
508 |
|
509 |
+
if ( is_position_featured( $post ) )
|
510 |
+
$classes[] = 'job_position_featured';
|
511 |
+
|
512 |
return get_post_class( $classes, $post->ID );
|
513 |
}
|
wp-job-manager.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: WP Job Manager
|
4 |
Plugin URI: http://mikejolley.com/projects/wp-job-manager/
|
5 |
Description: Manage job listings from the WordPress admin panel, and allow users to post jobs directly to your site.
|
6 |
-
Version: 1.
|
7 |
Author: Mike Jolley
|
8 |
Author URI: http://mikejolley.com
|
9 |
Requires at least: 3.5
|
@@ -28,7 +28,7 @@ class WP_Job_Manager {
|
|
28 |
*/
|
29 |
public function __construct() {
|
30 |
// Define constants
|
31 |
-
define( 'JOB_MANAGER_VERSION', '1.
|
32 |
define( 'JOB_MANAGER_PLUGIN_DIR', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
|
33 |
define( 'JOB_MANAGER_PLUGIN_URL', untrailingslashit( plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) ) );
|
34 |
|
@@ -50,7 +50,7 @@ class WP_Job_Manager {
|
|
50 |
|
51 |
// Activation - works with symlinks
|
52 |
register_activation_hook( basename( dirname( __FILE__ ) ) . '/' . basename( __FILE__ ), array( $this->post_types, 'register_post_types' ), 10 );
|
53 |
-
register_activation_hook( basename( dirname( __FILE__ ) ) . '/' . basename( __FILE__ ), create_function( "", "
|
54 |
register_activation_hook( basename( dirname( __FILE__ ) ) . '/' . basename( __FILE__ ), 'flush_rewrite_rules', 15 );
|
55 |
|
56 |
// Actions
|
@@ -59,6 +59,15 @@ class WP_Job_Manager {
|
|
59 |
add_action( 'switch_theme', 'flush_rewrite_rules', 15 );
|
60 |
add_action( 'widgets_init', create_function( "", "include_once( 'includes/class-wp-job-manager-widgets.php' );" ) );
|
61 |
add_action( 'wp_enqueue_scripts', array( $this, 'frontend_scripts' ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
}
|
63 |
|
64 |
/**
|
3 |
Plugin Name: WP Job Manager
|
4 |
Plugin URI: http://mikejolley.com/projects/wp-job-manager/
|
5 |
Description: Manage job listings from the WordPress admin panel, and allow users to post jobs directly to your site.
|
6 |
+
Version: 1.2.0
|
7 |
Author: Mike Jolley
|
8 |
Author URI: http://mikejolley.com
|
9 |
Requires at least: 3.5
|
28 |
*/
|
29 |
public function __construct() {
|
30 |
// Define constants
|
31 |
+
define( 'JOB_MANAGER_VERSION', '1.2.0' );
|
32 |
define( 'JOB_MANAGER_PLUGIN_DIR', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
|
33 |
define( 'JOB_MANAGER_PLUGIN_URL', untrailingslashit( plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) ) );
|
34 |
|
50 |
|
51 |
// Activation - works with symlinks
|
52 |
register_activation_hook( basename( dirname( __FILE__ ) ) . '/' . basename( __FILE__ ), array( $this->post_types, 'register_post_types' ), 10 );
|
53 |
+
register_activation_hook( basename( dirname( __FILE__ ) ) . '/' . basename( __FILE__ ), create_function( "", "include_once( 'includes/class-wp-job-manager-install.php' );" ), 10 );
|
54 |
register_activation_hook( basename( dirname( __FILE__ ) ) . '/' . basename( __FILE__ ), 'flush_rewrite_rules', 15 );
|
55 |
|
56 |
// Actions
|
59 |
add_action( 'switch_theme', 'flush_rewrite_rules', 15 );
|
60 |
add_action( 'widgets_init', create_function( "", "include_once( 'includes/class-wp-job-manager-widgets.php' );" ) );
|
61 |
add_action( 'wp_enqueue_scripts', array( $this, 'frontend_scripts' ) );
|
62 |
+
add_action( 'admin_init', array( $this, 'updater' ) );
|
63 |
+
}
|
64 |
+
|
65 |
+
/**
|
66 |
+
* Handle Updates
|
67 |
+
*/
|
68 |
+
public function updater() {
|
69 |
+
if ( version_compare( JOB_MANAGER_VERSION, get_option( 'wp_job_manager_version' ), '>' ) )
|
70 |
+
include_once( 'includes/class-wp-job-manager-install.php' );
|
71 |
}
|
72 |
|
73 |
/**
|