Changeset 2577107
- Timestamp:
- 08/03/2021 11:43:05 AM (5 years ago)
- Location:
- zartis-job-plugin
- Files:
-
- 14 added
- 1 deleted
- 4 edited
- 1 copied
-
tags/2.9.0 (added)
-
tags/2.9.0/Zartis_Job_Landing.php (added)
-
tags/2.9.0/Zartis_Job_Plugin.php (added)
-
tags/2.9.0/css (added)
-
tags/2.9.0/css/hirehive-widget-styles.css (added)
-
tags/2.9.0/css/zartis_wp.css (added)
-
tags/2.9.0/images (added)
-
tags/2.9.0/images/arrow_right_alt1_24x24.png (added)
-
tags/2.9.0/images/check_12x10.png (added)
-
tags/2.9.0/images/check_alt_16x16.png (added)
-
tags/2.9.0/js (added)
-
tags/2.9.0/js/zartis_functions.js (added)
-
tags/2.9.0/js/zartis_functions.min.js (added)
-
tags/2.9.0/readme.txt (copied) (copied from zartis-job-plugin/trunk/readme.txt) (2 diffs)
-
tags/2.9.0/screenshot-1.png (added)
-
trunk/Zartis_Job_Landing.php (modified) (8 diffs)
-
trunk/Zartis_Job_Plugin.php (modified) (6 diffs)
-
trunk/Zartis_Job_Token.php (deleted)
-
trunk/css/zartis_wp.css (modified) (26 diffs)
-
trunk/readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
zartis-job-plugin/tags/2.9.0/readme.txt
r2453992 r2577107 4 4 Tags: jobs, job, career, manager, vacancy, hiring, hire, listing, recruiting, recruitment, ats, employer, application, board 5 5 Requires at least: 2.9 6 Tested up to: 5. 6.07 Stable tag: 2. 8.06 Tested up to: 5.8.0 7 Stable tag: 2.9.0 8 8 9 9 Easily add job listings and secure candidate management to your Wordpress site. … … 137 137 = 2.8.0 = 138 138 * Use wp_remote_get function to get list of jobs and better handling of query parameters 139 140 = 2.9.0 = 141 * Update domain for api endpoint and use a web component to list jobs -
zartis-job-plugin/trunk/Zartis_Job_Landing.php
r1591705 r2577107 7 7 <div class="wrap"> 8 8 9 <div align="c16">9 <div class="c16"> 10 10 <div class="branding"> 11 <img src="https://zartis.blob.core.windows.net/public/Hire-Hive-Logo.png" style="border:none;" /> 11 <svg version="1.1" id="Logos" xmlns="http://www.w3.org/2000/svg" x="0" y="0" xml:space="preserve" viewBox="0 0 294 81.1"> 12 <style> 13 .st2 { 14 fill: #1d2f3c 15 } 16 </style> 17 <g id="Logo_-_On_Light_1_"> 18 <path class="st2" d="M116.2 45.3v15.5h-6.8V45.3c0-3.9-2.5-6.2-6-6.2-3 0-6.8 1.8-6.8 6.8v14.9h-6.9V19.4h6.9v18.1c1.3-3.6 5.2-5.1 9-5.1 6.6 0 10.6 4.9 10.6 12.9zM122.2 23.7c0-2.4 1.4-3.7 3.8-3.7 2.5 0 3.9 1.3 3.9 3.7s-1.4 3.8-3.9 3.8c-2.4-.1-3.8-1.4-3.8-3.8zm.4 9.3h6.9v27.9h-6.9V33zM154.4 32.4v6.5h-3.3c-7.7 0-8 7.8-8 7.8v14.1h-6.9V33h6.9v6.2s1.6-6.8 8-6.8h3.3zM184.7 49H163c.7 4.5 3.9 6.7 8 6.7 2.8 0 5.4-1 7.2-3.5l5 3.3c-2.5 3.9-7.5 6-12.3 6-8.2 0-14.7-5.8-14.7-14.6 0-8.7 6.5-14.4 14.5-14.4 7.8 0 14.2 5.6 14.2 14.3l-.2 2.2zm-6.5-4.1c0-4.3-3.6-6.6-7.4-6.6-3.6 0-7 2-7.8 6.6h15.2zM216.9 45.3v15.5H210V45.3c0-3.9-2.5-6.2-6-6.2-3 0-6.8 1.8-6.8 6.8v14.9h-6.9V19.4h6.9v18.1c1.3-3.6 5.2-5.1 9-5.1 6.7 0 10.7 4.9 10.7 12.9zM222.9 23.7c0-2.4 1.4-3.7 3.8-3.7 2.5 0 3.9 1.3 3.9 3.7s-1.4 3.8-3.9 3.8c-2.4-.1-3.8-1.4-3.8-3.8zm.4 9.3h6.9v27.9h-6.9V33zM263.5 33l-11.9 27.9h-6.2L233.7 33h7.3l7.6 19.4 7.5-19.4h7.4zM293.9 49h-21.7c.7 4.5 3.9 6.7 8 6.7 2.8 0 5.4-1 7.2-3.5l5 3.3c-2.5 3.9-7.5 6-12.3 6-8.2 0-14.7-5.8-14.7-14.6 0-8.7 6.5-14.4 14.5-14.4 7.8 0 14.2 5.6 14.2 14.3l-.2 2.2zm-6.5-4.1c0-4.3-3.6-6.6-7.4-6.6-3.6 0-7 2-7.8 6.6h15.2z" /> 19 <path id="Symbol_-_On_Light_2_" d="M14 15.1c0-1.9-1.3-2.6-3-1.7l-8 4.7c-1.6.9-3 3.2-3 5.1v34.7c0 1.9 1.3 4.2 3 5.1l30 17.4c1.6.9 4.3.9 5.9 0L69 63.1c1.6-.9 3-3.2 3-5.1V23.2c0-1.9-1.3-4.2-3-5.1L39 .7c-1.6-.9-4.3-.9-5.9 0L25 5.4c-1.6.9-3 3.2-3 5.1v38.7c0 1 .7 2.1 1.5 2.6l3.5 2c1.6.9 3 .2 3-1.7V38.3c0-.6.5-1.4 1-1.7l4-2.3c.6-.3 1.5-.3 2 0l4 2.3c.5.3 1 1.1 1 1.7v13.9c0 1.9 1.3 2.6 3 1.7l3.5-2c.8-.5 1.5-1.7 1.5-2.6v-15c0-1-.7-2.1-1.5-2.6l-11-6.3c-.8-.5-2.2-.5-3 0L30 27.9v-15c0-.6.5-1.4 1-1.7l4-2.3c.6-.3 1.5-.3 2 0l26 15c.5.3 1 1.1 1 1.7v30c0 .6-.5 1.4-1 1.7l-26 15c-.5.3-1.5.3-2 0l-26-15c-.6-.3-1-1.1-1-1.7v-30c0-.6.4-1.4 1-1.7l3.5-2c.8-.5 1.5-1.7 1.5-2.6v-4.2z" fill="#fec32d" /> 20 </g> 21 </svg> 12 22 </div> 13 23 </div> … … 18 28 <ul class="tabs"> 19 29 <li><a href="#tab1" title="HireHive Plugin Home">Home</a></li> 20 <li><a href="#tab2" title="HireHive settings">Settings</a></li>21 30 <li><a href="#tab3" title="HireHive FAQs">FAQs</a></li> 22 <li><a href="#tab4" title="HireHive advanced options">Extras</a></li>23 31 </ul> 24 32 … … 30 38 <div class="c9"> 31 39 <div class="content"> 32 <h2> You're all set!</h2>40 <h2>Add the shortcode anywhere on your site!</h2> 33 41 <p>Now all you need to do is create a new page and insert the 34 <strong>shortcode</strong> below. This will add a fully functioning jobs listing to your site.</p> 42 <strong>shortcode</strong> below. This will add a fully functioning jobs listing to your site. 43 </p> 35 44 36 45 <div class="callout code"> 37 <code>[hirehive_jobs ]</code>38 <small> This will display all your published jobs</small>46 <code>[hirehive_jobs <strong style="font-weight:bold;">company="<span style="color:red;">company name goes here</span>"</strong>]</code> 47 <small>You can find your company name in <a href="https://my.hirehive.io/#/Settings/Company" target="_blank">company settings</a> of your HireHive account.</small> 39 48 </div> 40 <h2> Custom job groups</h2>49 <h2>Options</h2> 41 50 <p>Create custom groups of your jobs if you wish to display jobs for different locations/categories on multiple pages</p> 42 <div class="callout">43 51 44 <h3>List of available HireHive groups you have</h3>45 <select name="hirehive-categories" id="hirehive-categories">46 <?php47 $Company_Zartis_ID = get_option('Zartis_Unique_ID'); 48 $url = 'https://my.hirehive.io/api/v2/public/search?cname=' .$Company_Zartis_ID; 52 <h3>Display jobs in a group, either by country or category</h3> 53 <div class="callout code"> 54 <code id="hh-code">[hirehive_jobs company="netflix" <strong style="font-weight:bold;">group="<span style="color:red;">category</span>"</strong>]</code> 55 <code id="hh-code">[hirehive_jobs company="netflix" <strong style="font-weight:bold;">group="<span style="color:red;">country</span>"</strong>]</code> 56 </div> 49 57 50 $jsondata = file_get_contents($url); 58 <h3>Display jobs for a specific country or category</h3> 59 <div class="callout code"> 60 <code id="hh-code">[hirehive_jobs company="netflix" <strong style="font-weight:bold;">country="<span style="color:red;">US</span>"</strong>]</code> 61 <small>This will display all your published jobs in the US</small> 62 </div> 63 <div class="callout code"> 64 <code id="hh-code">[hirehive_jobs company="netflix" <strong style="font-weight:bold;">category="<span style="color:red;">Sales & Marketing</span>"</strong>]</code> 65 <small>This will display all your published jobs in the Sales & Marketing category</small> 66 </div> 51 67 52 $obj = json_decode(preg_replace('/[\x00-\x1F\x80-\xFF]/', '', $jsondata), true); 53 54 $groups = $obj; 55 56 $categories = array(); 57 foreach ($groups as $group) { 58 foreach ($group["jobs"] as $job) { 59 $jobCategory = $job["category"]; 60 if ($jobCategory != null){ 61 if(!in_array($jobCategory, $categories)){ 62 $categories[] = $jobCategory; 63 } 64 } 65 } 66 } 67 68 foreach( $categories as $category ) { 69 echo '<option value="'.$category.'">'.$category.'</option>'; 70 } 71 72 ?> 73 74 </select> 75 <div class="callout code"> 76 <code id="hh-code">[hirehive_jobs]</code> 77 </div> 68 <h3>Display a custom message when no jobs are open</h3> 69 <div class="callout code"> 70 <code id="hh-code">[hirehive_jobs company="netflix"] <br> 71 We are not hiring at the moment, please check again in Spring.<br> 72 [/hirehive_jobs]</code> 78 73 </div> 79 74 … … 82 77 <img src="https://zartis.blob.core.windows.net/public-screens/Plugin-Shortcode.jpg" title="Just insert [hirehive_jobs] into any page you wish" /> 83 78 </a> 84 <br />85 <br />79 <br /> 80 <br /> 86 81 </div> 87 82 </div> … … 94 89 <a href="https://my.hirehive.io/#/jobs/create" title="Go to HireHive create job page" target='_blank' class="zar_a"> 95 90 <strong>Add a job</strong> 96 </a>: This is the best way to get started. It's simple.</li> 91 </a>: This is the best way to get started. It's simple. 92 </li> 97 93 98 94 <li> 99 95 <a href="https://my.hirehive.io/#/Settings/jobboards" target='_blank' title="" class="zar_a"> 100 96 <strong>Share your job</strong> 101 </a>: Push your jobs out on major job boards.</li> 97 </a>: Push your jobs out on major job boards. 98 </li> 102 99 103 100 <li> 104 101 <a href="https://my.hirehive.io/#/Settings/team" target='_blank' title="Add teams to HireHice" class="zar_a"> 105 102 <strong>Add your team</strong> 106 </a>: Invite members of your team to be part of the hiring process.</li> 103 </a>: Invite members of your team to be part of the hiring process. 104 </li> 107 105 </ul> 108 106 109 107 <div class="cent"> 110 <a href="https://my.hirehive.io/#/jobs/create" target="_blank" class="btn b tn-sm save buttons">111 Add jobs to your website now112 </a>108 <a href="https://my.hirehive.io/#/jobs/create" target="_blank" class="btn buttons"> 109 Add jobs to your website now 110 </a> 113 111 <p> 114 112 <em><small>You will be brought to my.hirehive.io</small></EM> … … 124 122 <!-- END OF tab1 --> 125 123 126 <!-- OPTIONS --> 127 <div id="tab2" class="tab_content"> 124 125 <!-- FAQs --> 126 <div id="tab3" class="tab_content"> 128 127 <div class="flex"> 129 128 <div class="c9"> 130 129 <div class="content"> 131 <h2>Job settings</h2> 132 133 <form method="post" action="options.php"> 134 <?php 135 wp_nonce_field('update-options'); 136 $ZarisGroup = get_option('Zartis_Group'); 137 ?> 138 <fieldset class="sm"> 139 <ol> 140 <!-- Width --> 141 <li> 142 <h3>Change how the jobs are displayed</h3> 143 <select name="Zartis_Group" id="hirehive-group"> 144 <option value="1" <?php if($ZarisGroup=="1" ) echo "selected"; ?>>No grouping</option> 145 <option value="2" <?php if($ZarisGroup=="2" ) echo "selected"; ?>>Location</option> 146 <option value="3" <?php if($ZarisGroup=="3" ) echo "selected"; ?>>Category</option> 147 </select> 148 </li> 149 </ol> 150 <input type="hidden" name="action" value="update" /> 151 <input type="hidden" name="page_options" value="Zartis_Group" /> 152 <div class="cent"> 153 <button type="submit" class="btn save buttons"> 154 Save settings 155 </button> 156 </div> 157 158 </fieldset> 159 </form> 160 </div> 161 <div class="content"> 130 <h2>Frequently asked questions</h2> 162 131 163 132 164 <h3>Jobs preview</h3> 165 <div id="jobs-1" class="hh-list" style="display:none;"> 166 <a class="hh-list-row" href="#"> 167 <span class="hh-list-title">My Job 1</span> 168 <span class="hh-list-location">Dublin, Ireland</span> 169 <span class="hh-list-type">Full Time</span> 170 </a> 171 <a class="hh-list-row" href="#"> 172 <span class="hh-list-title">My Job 2</span> 173 <span class="hh-list-location">Dublin, Ireland</span> 174 <span class="hh-list-type">Full Time</span> 175 </a> 176 <a class="hh-list-row" href="#"> 177 <span class="hh-list-title">My Job 3</span> 178 <span class="hh-list-location">Dublin, Ireland</span> 179 <span class="hh-list-type">Full Time</span> 180 </a> 181 </div> 133 <h3>How much does HireHive cost?</h3> 134 <p>You can choose a pricing plan that suits you. Whether you have three, five or fifty open positions we have the right plan for you.</p> 135 <h3>Are there any additional fees?</h3> 136 <p>There are no additional fees, we do not charge a ‘setup fee’ or have any hidden extras – you only pay the monthly subscription fee that you signed up for. And you can cancel at any time during the billing cycle.</p> 137 <h3>Can I try it out for free?</h3> 138 <p>Sure! We know decisions like this take time so we offer a 14 free trial. During this trial you can use all features of the software, get support and have as many users signed up from your company as you like.</p> 139 <h3>We’re doing a lot of hiring and need extra jobs, is this possible?</h3> 140 <p>Absolutely. If you think you need more job slots you can contact us at <a href="https://help.hirehive.com">help.hirehive.com</a>.</p> 141 <h3>What does ‘active jobs’ really mean?</h3> 142 <p>Active jobs are the number of jobs that you can accept applications for at any one time. Once you have finished hiring for one job you can close/archive this job and open a new one. All information relating to a closed/archived job is stored 143 within the system so you don’t lose any information.</p> 144 <h3>Can I switch plans?</h3> 145 <p>Things change – we get that. So you can easily change plans when and if you need to. You next invoice will then be prorated depending on the number of days you were on each plan.</p> 146 <h3>I’d like to speak to someone about HireHive</h3> 182 147 183 <div id="jobs-2" class="hh-list" style="display:none;"> 184 <h3 class="hh-list-cat">Ireland</h3> 185 <a class="hh-list-row" href="#"> 186 <span class="hh-list-title">My Job 1</span> 187 <span class="hh-list-location">Dublin, Ireland</span> 188 <span class="hh-list-type">Full Time</span> 189 </a> 190 <a class="hh-list-row" href="#"> 191 <span class="hh-list-title">My Job 2</span> 192 <span class="hh-list-location">Dublin, Ireland</span> 193 <span class="hh-list-type">Full Time</span> 194 </a> 195 <h3 class="hh-list-cat">France</h3> 196 <a class="hh-list-row" href="#"> 197 <span class="hh-list-title">My Job 3</span> 198 <span class="hh-list-location">Paris, France</span> 199 <span class="hh-list-type">Full Time</span> 200 </a> 201 </div> 148 <p>You can set up a talk to us by mailing us at <a href="https://help.hirehive.com">help.hirehive.com</a>.</p> 202 149 203 <div id="jobs-3" class="hh-list" style="display:none;"> 204 <h3 class="hh-list-cat">Sales</h3> 205 <a class="hh-list-row" href="#"> 206 <span class="hh-list-title">My Job 1</span> 207 <span class="hh-list-location">Dublin, Ireland</span> 208 <span class="hh-list-type">Full Time</span> 209 </a> 210 <a class="hh-list-row" href="#"> 211 <span class="hh-list-title">My Job 2</span> 212 <span class="hh-list-location">Dublin, Ireland</span> 213 <span class="hh-list-type">Full Time</span> 214 </a> 215 <h3 class="hh-list-cat">Marketing</h3> 216 <a class="hh-list-row" href="#"> 217 <span class="hh-list-title">My Job 3</span> 218 <span class="hh-list-location">Paris, France</span> 219 <span class="hh-list-type">Full Time</span> 220 </a> 221 </div> 150 222 151 223 152 </div> 224 225 226 153 </div> 227 154 <!-- END OF c8 --> … … 233 160 <div class="cent"> 234 161 <a href="https://my.hirehive.io/#/jobs/create" target="_blank" class="btn btn-sm save buttons"> 235 Add jobs to your website now236 </a>162 Add jobs to your website now 163 </a> 237 164 <p> 238 165 <em><small>You will be brought to my.hirehive.io</small></EM> … … 246 173 </div> 247 174 </div> 175 <!-- END OF tab3 --> 248 176 249 177 250 178 </div> 251 <!-- END OF tab2 --> 252 253 254 <!-- FAQs --> 255 <div id="tab3" class="tab_content"> 256 <div class="flex"> 257 <div class="c9"> 258 <div class="content"> 259 <h2>Frequently asked questions</h2> 260 261 262 <h3>How much does HireHive cost?</h3> 263 <p>You can choose a pricing plan that suits you. Whether you have three, five or fifty open positions we have the right plan for you.</p> 264 <h3>Are there any additional fees?</h3> 265 <p>There are no additional fees, we do not charge a ‘setup fee’ or have any hidden extras – you only pay the monthly subscription fee that you signed up for. And you can cancel at any time during the billing cycle.</p> 266 <h3>Can I try it out for free?</h3> 267 <p>Sure! We know decisions like this take time so we offer a 14 free trial. During this trial you can use all features of the software, get support and have as many users signed up from your company as you like.</p> 268 <h3>We’re doing a lot of hiring and need extra jobs, is this possible?</h3> 269 <p>Absolutely. If you think you need more job slots you can contact us on <a href="mailto:[email protected]">[email protected]</a>.</p> 270 <h3>What does ‘active jobs’ really mean?</h3> 271 <p>Active jobs are the number of jobs that you can accept applications for at any one time. Once you have finished hiring for one job you can close/archive this job and open a new one. All information relating to a closed/archived job is stored 272 within the system so you don’t lose any information.</p> 273 <h3>Can I switch plans?</h3> 274 <p>Things change – we get that. So you can easily change plans when and if you need to. You next invoice will then be prorated depending on the number of days you were on each plan.</p> 275 <h3>I’d like to speak to someone about HireHive</h3> 276 277 <p>You can set up a talk to us by mailing us at <a href="mailto:[email protected]">[email protected]</a>.</p> 278 279 280 281 </div> 282 </div> 283 <!-- END OF c8 --> 284 <div class="c6"> 285 <div class="callout"> 286 <h3>Add a job</h3> 287 <p> 288 Once you have added your shortcode to your page, you should add a job. Log in to HireHive, and create your new job. Your jobs will then appear on your WordPress site.</p> 289 <div class="cent"> 290 <a href="https://my.hirehive.io/#/jobs/create" target="_blank" class="btn btn-sm save buttons"> 291 Add jobs to your website now 292 </a> 293 <p> 294 <em><small>You will be brought to my.hirehive.io</small></EM> 295 </p> 296 297 </div> 298 <!-- END OF cent --> 299 </div> 300 <!-- END OF c8 --> 301 </div> 302 </div> 303 </div> 304 <!-- END OF tab3 --> 305 306 <!-- ADVANCED --> 307 <div id="tab4" class="tab_content"> 308 <div class="flex"> 309 <div class="c9"> 310 <div class="content"> 311 <h2>Public jobs board</h2> 312 <p>HireHive creates your very own public jobs board. You can share this link or embed it in your navigation. </p> 313 <div class="callout code"> 314 <a href="https://my.hirehive.io/<?php echo get_option('Zartis_Unique_ID'); ?>/" target="_blank">my.hirehive.io/<?php echo get_option('Zartis_Unique_ID'); ?></a> 315 </div> 316 317 <p>You can also customise this page by visiting <a href="https://my.hirehive.io/#/Settings/Careerpage" target="_blank">Customise settings</a> in HireHive. Easily add your company logo, upload images and change colours.</p> 318 <div class="cent"> 319 <a href="https://my.hirehive.io/#/Settings/Careerpage" target="_blank" class="btn save buttons"> 320 Customise your careers site 321 </a> 322 <p> 323 <em><small>You will be brought to my.hirehive.io</small></EM> 324 </p> 325 </div> 326 327 <br/> 328 <br/> 329 330 331 </div> 332 </div> 333 <!-- END OF c8 --> 334 <div class="c6"> 335 <div class="callout"> 336 <h3>Add a job</h3> 337 <p> 338 Once you have added your shortcode to your page, you should add a job. Log in to HireHive, and create your new job. Your jobs will then appear on your WordPress site.</p> 339 <div class="cent"> 340 <a href="https://my.hirehive.io/#/jobs/create" target="_blank" class="btn btn-sm save buttons"> 341 Add jobs to your website now 342 </a> 343 <p> 344 <em><small>You will be brought to my.hirehive.io</small></EM> 345 </p> 346 </div> 347 <!-- END OF cent --> 348 </div> 349 <!-- END OF c8 --> 350 </div> 351 </div> 352 </div> 179 <!-- END OF tab Containter --> 353 180 354 181 </div> 355 <!-- END OF tab4 --> 356 357 182 <!-- END OF main --> 358 183 </div> 359 <!-- END OF tab Containter --> 360 361 </div> 362 <!-- END OF main --> 363 </div> 364 <!-- END OF wrap --> 184 <!-- END OF wrap --> 365 185 </div> 366 186 <!-- END OF zar_body--> -
zartis-job-plugin/trunk/Zartis_Job_Plugin.php
r2453992 r2577107 4 4 Plugin URI: https://hirehive.com 5 5 Description: Easily add your own secure jobs and careers page to your WordPress site. Includes full access to professional candidate management and posting to twitter, facebook and free job aggregation sites. 6 Version: 2. 8.06 Version: 2.9.0 7 7 Author: HireHive 8 8 Author URI: https://hirehive.com … … 34 34 if (!defined('Zartis_Url')) 35 35 define('Zartis_Url', WP_PLUGIN_URL . '/' . HireHive_Folder); 36 36 37 37 // Add jquery core and our css styles 38 38 if (is_admin()) { 39 39 wp_enqueue_style('zartis_wp', Zartis_Url . '/css/zartis_wp.css'); 40 40 wp_enqueue_script('zartis_functions', Zartis_Url . '/js/zartis_functions.js'); 41 41 42 42 // The styles for the widget 43 43 wp_enqueue_style('hirehive_wp_widget', Zartis_Url . '/css/hirehive-widget-styles.css'); 44 44 wp_enqueue_style('hirehive_wp_fonts', 'https://fonts.googleapis.com/css?family=Roboto:700,500,400italic,300,400'); 45 }46 else{47 wp_enqueue_style('hirehive_wp_widget', Zartis_Url . '/css/hirehive-widget-styles.css');48 45 } 49 46 } … … 81 78 global $wpdb; 82 79 $zartis_page_ID = get_option('Zartis_Page_ID'); 83 80 84 81 // Clean up DB fields 85 82 HireHive_CleanUp_DB(); 86 83 87 84 // the id of our page... 88 85 $page_ID = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE ID = '" . $zartis_page_ID . "'"); … … 112 109 add_action('admin_menu', 'Add_HireHive_Admin_Menu'); 113 110 $Zartis_Notice = get_option('Zartis_Notice'); 114 111 115 112 //checks if this is an activation and then displays the zartis message 116 113 if ($Zartis_Notice == "False") { … … 129 126 add_shortcode('hirehive_jobs', 'Display_HireHive_Widget'); 130 127 131 function Display_HireHive_Widget( $atts ) { 128 function add_hirehive_webcomponent_script($tag, $handle, $src) 129 { 130 if ('hirehive-wc-module' === $handle) { 131 $tag = '<script src="' . esc_url($src) . '" type="module"></script>'; 132 } 133 134 if ('hirehive-wc-nomodule' === $handle) { 135 $tag = '<script type="text/javascript" src="' . esc_url($src) . '" nomodule></script>'; 136 } 137 138 return $tag; 139 } 140 141 // Function for basic field validation (present and neither empty nor only white space 142 function IsNullOrEmptyString($str) 143 { 144 return (!isset($str) || trim($str) === ''); 145 } 146 147 function Display_HireHive_Widget($atts, $content = null) 148 { 149 $companySubdomain = ''; 132 150 $category = ''; 133 $Company_Zartis_ID = ''; 134 $request_url = ''; 135 $decodeError = ''; 136 $response_status_code = ''; 137 138 if( isset( $atts['category'] ) && $atts['category']) { 151 $countryCode = ''; 152 $group = ''; 153 154 $skip = 0; 155 $take = 500; 156 157 if (isset($atts['company']) && $atts['company']) { 158 $companySubdomain = $atts['company']; 159 } 160 161 if (IsNullOrEmptyString($companySubdomain)) { 162 $companySubdomain = get_option('Zartis_Unique_ID'); 163 } 164 165 if ($companySubdomain == "False" || IsNullOrEmptyString($companySubdomain)) { 166 return false; 167 } 168 169 if (isset($atts['category']) && $atts['category']) { 139 170 $category = $atts['category']; 140 171 } 141 142 if( isset( $atts['company'] ) && $atts['company']) { 143 $Company_Zartis_ID = $atts['company']; 144 } 145 146 if ($Company_Zartis_ID == ''){ 147 $Company_Zartis_ID = get_option('Zartis_Unique_ID'); 148 } 149 172 173 if (isset($atts['skip']) && $atts['skip']) { 174 $skip = $atts['skip']; 175 } 176 177 if (isset($atts['take']) && $atts['take']) { 178 $take = $atts['take']; 179 } 180 181 if (isset($atts['country']) && $atts['country']) { 182 $countryCode = $atts['country']; 183 } 184 185 if (isset($atts['group']) && $atts['group']) { 186 $group = $atts['group']; 187 } 188 150 189 $Zartis_Group = get_option('Zartis_Group'); 151 152 if ($Zartis_Group == null){ 153 $Zartis_Group = 1; 154 } 155 156 if ($Company_Zartis_ID != "False") { 157 try { 158 159 $base_url = 'https://my.hirehive.io/api/v2/public/search'; 160 161 $request_params = array( 162 'cname' => $Company_Zartis_ID, 163 'groupBy' => $Zartis_Group, 164 'category' => rawurlencode($category), 165 ); 166 167 $request_url = add_query_arg( $request_params, $base_url ); 168 169 $response = wp_remote_get( $request_url, array( 170 'timeout' => 10, 171 'headers' => array( 172 'Accept' => 'application/json' 173 ) 174 ) ); 175 176 if(is_wp_error($response)) { 177 $response_status_code = wp_remote_retrieve_response_code($response); 178 throw new Exception('Request returned an error, fallback to JS version'); 179 } 180 181 $body = wp_remote_retrieve_body( $response ); 182 183 $groups = json_decode($body, true); 184 185 switch (json_last_error()) { 186 187 case JSON_ERROR_NONE: 188 break; 189 case JSON_ERROR_DEPTH: 190 $decodeError = 'Maximum stack depth exceeded'; 191 break; 192 case JSON_ERROR_STATE_MISMATCH: 193 $decodeError = 'Underflow or the modes mismatch'; 194 break; 195 case JSON_ERROR_CTRL_CHAR: 196 $decodeError = 'Unexpected control character found'; 197 break; 198 case JSON_ERROR_SYNTAX: 199 $decodeError = 'Syntax error, malformed JSON'; 200 break; 201 case JSON_ERROR_UTF8: 202 $decodeError = 'Malformed UTF-8 characters, possibly incorrectly encoded'; 203 break; 204 default: 205 $decodeError = 'Unknown error'; 206 break; 190 191 if (IsNullOrEmptyString($group)) { 192 // None = 1, 193 // Location = 2, 194 // Category = 3 195 196 if ($Zartis_Group == 2) { 197 $group = 'country'; 207 198 } 208 209 210 if (strlen($decodeError) > 0) { 211 throw new Exception('Error decoding JSON, fallback to JS version'); 199 200 if ($Zartis_Group == 2) { 201 $group = 'category'; 212 202 } 213 214 $jobTemplate = '<a class="hh-list-row" href="{{Link}}"><span class="hh-list-title">{{Title}}</span> <span class="hh-list-location">{{Location}}, {{StateCode}}{{Country}}</span> <span class="hh-list-type">{{Type}}</span></a>'; 215 216 $jobsHTML = "<div id='jobs_iframe' class='hh-list'>"; 217 $jobsHTML .= '<!-- Jobs for - ' .$Company_Zartis_ID. ' -->'; 218 $jobsHTML .= '<!-- Chosen group - ' .$Zartis_Group. ' -->'; 219 $jobsHTML .= '<!-- Category - ' .$category. ' -->'; 220 $jobsHTML .= '<!-- Version - 2.7.0 -->'; 221 $jobsHTML .= '<!-- Styles inlined -->'; 222 $jobsHTML .= '<link rel="stylesheet" href="' . plugins_url('/css/hirehive-widget-styles.css', __FILE__). '" type="text/css" />'; 223 224 foreach ($groups as $group) { 225 if ($Zartis_Group > 1){ 226 if (strlen($group["name"]) > 0){ 227 $jobsHTML .= '<h3 class="hh-list-cat">'.$group["name"].'</h3>'; 228 } 229 } 230 231 if ($category !=null){ 232 $jobsHTML .= Compile_Job_Template($jobTemplate, $group); 233 } 234 else{ 235 foreach ($group["jobs"] as $job) { 236 $jobsHTML .= Compile_Job_Template($jobTemplate, $job); 237 } 238 } 203 } 204 205 try { 206 // Listen for scripts loading so we can add the module/nomodule type 207 add_filter('script_loader_tag', 'add_hirehive_webcomponent_script', 10, 3); 208 209 wp_enqueue_script('hirehive-wc-module', 'https://cdn1.hirehive.com/web-components/wp/job-listings/@latest/dist/hirehive-job-listing/hirehive-job-listing.esm.js', null, false, false); 210 wp_enqueue_script('hirehive-wc-nomodule', 'https://cdn1.hirehive.com/web-components/wp/job-listings/@latest/dist/hirehive-job-listing/hirehive-job-listing.js', null, false, false); 211 212 // group-by="category" category="Marketing" country-code="GB" 213 $customElement = '<hirehive-job-listing subdomain="' . $companySubdomain . '" group-by="' . $group . '" take="' . $take . '" skip="' . $skip . '" country-code="' . $countryCode . '" category="' . $category . '">'; 214 if (!IsNullOrEmptyString($content)) { 215 $customElement .= '<div slot="no-results">' . $content . '</div>'; 239 216 } 240 241 $jobsHTML .= "</div>"; 242 243 return $jobsHTML; 244 } 245 catch (Exception $e) { 246 // If we have an exception using the API to get the jobs then we fallback to the old JS Version 247 $script = '<script type="text/javascript"src="https://my.hirehive.io/' . $Company_Zartis_ID . '/getwidget"></script><script type="text/javascript"charset="utf-8">function getParam(name){name=name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");var regexS="[\\?&]"+name+"=([^&#]*)";var regex=new RegExp(regexS);var results=regex.exec(window.location.href);if(results==null)return"";else return results[1];}function updateIFrame(height){var iframe=document.getElementById("jobs_iframe");iframe.setAttribute("height",height);}var height=getParam("height");if(height==""){var zartis_options={};zartis_options.display="iframe";zartis_options.company="' . $Company_Zartis_ID . '";zartis_options.placement="left";zartis_options.type="widget";zartis_options.color="#222";zartis_options.width="' . $Zartis_Width . '%";zartis_options.style="idea";zartis_options.url=document.URL;var zartis_widget=new ZARTIS.jobs_widget(zartis_options);}else{window.top.updateIFrame(height);}</script>'; 248 249 $script .= '<!-- Jobs for - ' .$Company_Zartis_ID. ' -->'; 250 $script .= '<!-- Chosen group - ' .$Zartis_Group. ' -->'; 251 $script .= '<!-- Category - ' .$category. ' -->'; 252 $script .= '<!-- Version - 2.7.0 -->'; 253 $script .= '<!-- Url - ' .$request_url. ' -->'; 254 $script .= '<!-- decodeError - ' .$decodeError. ' -->'; 255 $script .= '<!-- response_status_code - ' .$response_status_code. ' -->'; 256 257 $script .= '<!--' .$e.message. '-->'; 258 217 $customElement .= '</hirehive-job-listing>'; 218 219 return $customElement; 220 221 } catch (Exception $e) { 222 223 $script = '<!-- Jobs for - ' . $companySubdomain . ' -->'; 224 $script .= '<!-- Chosen group - ' . $Zartis_Group . ' -->'; 225 $script .= '<!-- Category - ' . $category . ' -->'; 226 $script .= '<!-- Version - 2.9.0 -->'; 227 228 $script .= '<!--' . $e . message . '-->'; 229 259 230 return $script; 260 231 } 261 262 } else {263 return false;264 }265 }266 267 function Compile_Job_Template($template, &$job){268 269 $template = str_replace("{{Title}}",$job["title"],$template);270 $template = str_replace("{{Link}}",$job["jobUrl"],$template);271 $template = str_replace("{{Location}}",$job["location"],$template);272 $template = str_replace("{{Country}}",$job["countryName"],$template);273 $template = str_replace("{{Type}}",$job["type"],$template);274 275 if (strlen($job["stateCode"]) > 0){276 $template = str_replace("{{StateCode}}", $job["stateCode"].", " ,$template);277 }278 else {279 $template = str_replace("{{StateCode}}", "" ,$template);280 }281 282 return $template;283 232 } 284 233 … … 311 260 function no_hirehive_account() 312 261 { 313 //User login/Register Form 314 include("Zartis_Job_Token.php"); 315 } 262 include("Zartis_Job_Landing.php"); 263 } -
zartis-job-plugin/trunk/css/zartis_wp.css
r1591862 r2577107 9 9 10 10 $hh-yellow: rgb(245,196,0); 11 $hh-green: rgb(0,196,131);11 $hh-green: #356AFD; 12 12 $hh-blue: rgb(0,147,196); 13 13 $hh-black: rgb(14,14,14); … … 20 20 --------------------------------------------------*/ 21 21 .zar_body { 22 font: 100% 'Roboto', Tahoma, Geneva, "Helvetica Neue", Helvetica, Arial, sans-serif; /* 14px */23 line-height: 1.5; /* 21px */22 font: 100% "Roboto", Tahoma, Geneva, "Helvetica Neue", Helvetica, Arial, sans-serif; /* 14px */ 23 line-height: 1.5; /* 21px */ 24 24 color: rgb(94, 94, 106); 25 padding: 0;margin: 0; 25 padding: 0; 26 margin: 0; 26 27 background: white; 27 font-size:100%;28 font-weight: 300;28 font-size: 100%; 29 font-weight: 300; 29 30 } 30 31 31 32 .zar_body * { 32 box-sizing: border-box;33 box-sizing: border-box; 33 34 } 34 35 … … 43 44 44 45 .zar_body #main { 45 46 overflow: hidden;/* Clearfix */ 46 overflow: hidden; /* Clearfix */ 47 47 width: 100%; 48 padding: 2rem; 49 border: 1px solid rgb(233, 233,238);50 -moz-border-radius: 3px;48 padding: 2rem; 49 border: 1px solid rgb(233, 233, 238); 50 -moz-border-radius: 3px; 51 51 -webkit-border-radius: 3px; 52 border-radius: 3px;52 border-radius: 3px; 53 53 background: rgb(251, 251, 251); 54 54 } 55 55 56 56 .zar_body .content { 57 position: relative; 58 width: 100%;57 position: relative; 58 width: 100%; 59 59 } 60 60 … … 63 63 64 64 .zar_body .branding { 65 width:160px; 66 } 67 68 .zar_body .branding img{ 69 65 width: 160px; 66 } 67 68 .zar_body .branding img { 70 69 -moz-border-radius: 5px; 71 70 -webkit-border-radius: 5px; 72 71 border-radius: 5px; 73 72 -webkit-box-shadow: none; 74 -moz-box-shadow: none;73 -moz-box-shadow: none; 75 74 box-shadow: none; 76 75 } … … 82 81 .zar_body .c8, 83 82 .zar_body .c9, 84 .zar_body .c16 {83 .zar_body .c16 { 85 84 margin-left: 1.25%; 86 85 margin-right: 1.25%; 87 86 88 87 display: block; 89 88 } … … 93 92 .zar_body .c8:first-child, 94 93 .zar_body .c9:first-child, 95 .zar_body .c16:first-child {94 .zar_body .c16:first-child { 96 95 margin-left: 0; 97 96 } … … 101 100 .zar_body .c8:last-child, 102 101 .zar_body .c9:last-child, 103 .zar_body .c16:last-child { 104 102 .zar_body .c16:last-child { 105 103 margin-right: 0; 106 104 } … … 131 129 .zar_body .c8, 132 130 .zar_body .c9, 133 .zar_body .c16 {131 .zar_body .c16 { 134 132 width: 100%; 135 133 } … … 140 138 141 139 .zar_body .callout { 142 display: inline-block;143 padding: 10px 20px;144 margin: 0 0 18px;145 border: 1px solid #ccc;146 border: 1px solid rgba(0, 0, 0, 0.15);147 -webkit-border-radius: 3px;148 -moz-border-radius: 3px;149 border-radius: 3px;150 background-color: #fcfcfc;140 display: inline-block; 141 padding: 10px 20px; 142 margin: 0 0 18px; 143 border: 1px solid #ccc; 144 border: 1px solid rgba(0, 0, 0, 0.15); 145 -webkit-border-radius: 3px; 146 -moz-border-radius: 3px; 147 border-radius: 3px; 148 background-color: #fcfcfc; 151 149 } 152 150 153 151 .zar_body .callout.code { 154 width: 100%;155 padding-left:20px;156 background-color: #fcfcfc;152 width: 100%; 153 background-color: #fcfcfc; 154 display: block; 157 155 } 158 156 … … 162 160 .zar_body p { 163 161 font-size: 1rem; 164 margin:.75em 0 1em 0;162 margin: 0.75em 0 1em 0; 165 163 } 166 164 167 165 .zar_body a:link, 168 166 .zar_body a:visited { 169 color: rgb(0,196,131);167 color: #356afd; 170 168 text-decoration: none; 171 169 -webkit-transition: all 0.3s ease-out; … … 176 174 .zar_body a:focus, 177 175 .zar_body a:active { 178 opacity: .6;176 opacity: 0.6; 179 177 text-decoration: none; 180 178 } … … 184 182 .zar_body h2, 185 183 .zar_body h3 { 186 font-weight: 300;184 font-weight: 300; 187 185 } 188 186 189 187 .zar_body h2 { 190 font-weight:500;191 color: rgb(55, 55,65);192 font-size: 24px;193 line-height: 1.2em;194 margin-bottom:.5rem;188 font-weight: 500; 189 color: rgb(55, 55, 65); 190 font-size: 24px; 191 line-height: 1.2em; 192 margin-bottom: 0.5rem; 195 193 } 196 194 197 195 .zar_body h3 { 198 font-weight:500;199 color: rgb(55, 55,65);200 font-size: 18px;201 line-height: 1.0909em;196 font-weight: 500; 197 color: rgb(55, 55, 65); 198 font-size: 18px; 199 line-height: 1.0909em; 202 200 } 203 201 … … 206 204 padding: 0; 207 205 font-size: 16px; 208 list-style-type: none;206 list-style-type: none; 209 207 } 210 208 … … 212 210 padding-left: 25px; 213 211 margin-left: 5px; 214 color: rgb(55, 55,65);215 margin-bottom: .85em;212 color: rgb(55, 55, 65); 213 margin-bottom: 0.85em; 216 214 line-height: 1.6; 217 215 background: url(../images/check_alt_16x16.png) no-repeat 0 3px; … … 219 217 220 218 .zar_body strong { 221 font-weight:500;219 font-weight: 500; 222 220 } 223 221 /* Code 224 222 ============================= */ 225 .zar_body code, .zar_body pre {226 font-family: "Andale Mono","Courier New", Courier, "Lucida Console", monospace; 227 font-size: 12px;228 -webkit-border-radius: 3px; 229 -moz-border-radius: 3px;230 border-radius: 3px;223 .zar_body code, 224 .zar_body pre { 225 font-family: "Andale Mono", "Courier New", Courier, "Lucida Console", monospace; 226 font-size: 12px; 227 border-radius: 3px; 228 display: block; 231 229 } 232 230 233 231 .zar_body code { 234 font-size: 14px; 235 color: rgba(0, 0, 0, 0.75); 236 padding: 5px 8px; 237 /*background-color: rgb(247, 247, 234);*/ 238 background: none; 232 font-size: 14px; 233 color: rgba(0, 0, 0, 0.75); 234 padding: 5px 0; 235 background: none; 239 236 } 240 237 241 238 .zar_body pre { 242 243 display: block; 244 padding: 8.5px; 245 margin: 0 0 18px; 246 line-height: 18px; 247 font-size: 12px; 248 border: 1px solid #ccc; 249 border: 1px solid rgba(0, 0, 0, 0.15); 250 -webkit-border-radius: 3px; 251 -moz-border-radius: 3px; 252 border-radius: 3px; 253 white-space: pre; 254 white-space: pre-wrap; 255 word-wrap: break-word; 256 239 display: block; 240 padding: 8.5px; 241 margin: 0 0 18px; 242 line-height: 18px; 243 font-size: 12px; 244 border: 1px solid #ccc; 245 border: 1px solid rgba(0, 0, 0, 0.15); 246 -webkit-border-radius: 3px; 247 -moz-border-radius: 3px; 248 border-radius: 3px; 249 white-space: pre; 250 white-space: pre-wrap; 251 word-wrap: break-word; 257 252 } 258 253 … … 262 257 /* For show hide dialog */ 263 258 .zar_body .dialog { 264 width: 94%;265 padding: 5px 3%;266 margin: 10px 0;267 -moz-border-radius: 5px;259 width: 94%; 260 padding: 5px 3%; 261 margin: 10px 0; 262 -moz-border-radius: 5px; 268 263 -webkit-border-radius: 5px; 269 264 border-radius: 5px; 270 background: rgb(1, 160,198);265 background: rgb(1, 160, 198); 271 266 } 272 267 273 268 .zar_body .dialog h2 { 274 color: rgb(255, 255,255);269 color: rgb(255, 255, 255); 275 270 margin: inherit; 276 271 } 277 272 278 273 .zar_body .dialog p { 279 color: rgb(255, 255,255);274 color: rgb(255, 255, 255); 280 275 } 281 276 282 277 .zar_body .info-banner.dialog a { 283 color: rgb(255, 255,255);278 color: rgb(255, 255, 255); 284 279 } 285 280 286 281 /* For nav arrow */ 287 .zar_info-txt {282 .zar_info-txt { 288 283 z-index: 100; 289 284 position: fixed; 290 285 background: none repeat scroll 0 0 #111; 291 286 border-radius: 0.3em 0.3em 0.3em 0.3em; 292 color: # FFFFFF;293 font-weight: bold;287 color: #ffffff; 288 font-weight: bold; 294 289 text-align: center; 295 padding: 15px;290 padding: 15px; 296 291 width: 250px; 297 292 opacity: 0.1; 298 293 top: 0; 299 left: 0;294 left: 0; 300 295 } 301 296 … … 304 299 border-style: solid; 305 300 border-width: 10px; 306 height: 0;307 width: 0;308 position: absolute;309 left: -20px;310 top: 8px;301 height: 0; 302 width: 0; 303 position: absolute; 304 left: -20px; 305 top: 8px; 311 306 } 312 307 … … 319 314 320 315 .zar_body img { 321 max-width:100%; 322 border: 1px solid rgb(225,225,225); 323 padding:2px; 324 -webkit-border-radius: .3em; 325 -moz-border-radius: .3em; 326 border-radius: .3em; 327 328 316 max-width: 100%; 317 border: 1px solid rgb(225, 225, 225); 318 padding: 2px; 319 -webkit-border-radius: 0.3em; 320 -moz-border-radius: 0.3em; 321 border-radius: 0.3em; 329 322 } 330 323 … … 335 328 .zar_body .hint { 336 329 padding: 5px 0 0; 337 font-size: .95em;330 font-size: 0.95em; 338 331 margin: 0; 339 width: 60%; 340 color: #DC0104;332 width: 60%; 333 color: #dc0104; 341 334 } 342 335 … … 345 338 346 339 .zar_body button { 347 background: none;340 background: none; 348 341 } 349 342 350 343 .zar_body .btn { 351 color: rgb(55, 55,65);352 display: inline-block;353 width: auto !important;354 margin: 13px 0 0 0;355 border: 0;356 -webkit-background-clip: padding;344 color: rgb(55, 55, 65); 345 display: inline-block; 346 width: auto !important; 347 margin: 13px 0 0 0; 348 border: 0; 349 -webkit-background-clip: padding; 357 350 -moz-background-clip: padding; 358 351 -webkit-border-radius: 2px; 359 352 -moz-border-radius: 2px; 360 border-radius: 2px;353 border-radius: 4px; 361 354 -webkit-transition: all 0.2s ease-out; 362 355 -moz-transition: all 0.2s ease-out; 363 356 transition: all 0.2s ease-out; 364 position: relative; 365 cursor: pointer; 366 background: rgb(0,196,131); 367 zoom: 1; 368 color: rgb(255,255,255) !important; 369 font-size: 1.25rem; 370 text-decoration: none; 371 padding: .7rem 1rem .7rem 2rem; 372 373 } 374 375 .zar_body .btn-sm { 376 font-size: 1rem; 377 padding: .35rem .5rem .35rem 2rem; 378 } 379 380 .zar_body .btn:hover{ 381 opacity: .6; 382 filter:Alpha(Opacity=60); 383 background-image:none; 357 position: relative; 358 cursor: pointer; 359 background: #356afd; 360 color: rgb(255, 255, 255) !important; 361 font-size: 1.25rem; 362 text-decoration: none; 363 padding: 0.7rem 1rem; 364 } 365 366 .zar_body .btn:hover { 367 opacity: 0.6; 368 filter: Alpha(Opacity=60); 369 background-image: none; 384 370 } 385 371 386 372 .zar_body .btn:hover { 387 373 color: #fff; 388 background-image: none;374 background-image: none; 389 375 } 390 376 391 377 .zar_body .btn:active { 392 -moz-box-shadow: none;393 -webkit-box-shadow: none;394 box-shadow: none;378 -moz-box-shadow: none; 379 -webkit-box-shadow: none; 380 box-shadow: none; 395 381 -webkit-transform: translate(0, 2px); 396 382 -moz-transform: translate(0, 2px); … … 400 386 401 387 /* No icon */ 402 .zar_body .btn.norm {388 .zar_body .btn.norm { 403 389 padding: 5px 13px; 404 390 } … … 408 394 .zar_body .btn.submit { 409 395 background-image: url(../images/check_12x10.png); 410 background-position: 10px 49% !important;396 background-position: 10px 49% !important; 411 397 background-repeat: no-repeat !important; 412 398 } 413 399 414 400 /* Next (For signup) */ 415 .zar_body .btn.next {401 .zar_body .btn.next { 416 402 padding: 8px 3% 8px 1%; 417 403 } 418 404 419 .zar_body .btn.next {405 .zar_body .btn.next { 420 406 font-size: 1.4em; 421 407 padding: 0 35px 0 18px; 422 background: url(../images/arrow_right_alt1_24x24.png) no-repeat 100% 50%!important;408 background: url(../images/arrow_right_alt1_24x24.png) no-repeat 100% 50% !important; 423 409 } 424 410 … … 426 412 427 413 .zar_body fieldset { 428 position: relative; 414 position: relative; 429 415 width: 100%; 430 416 padding: 0; … … 432 418 433 419 .zar_body ol { 434 435 420 width: 100%; 436 421 padding: 0; 437 422 margin: 0; 438 423 list-style: none; 439 background-color: white;440 padding:.5rem;441 border: 1px solid rgb(235,235,235);424 background-color: white; 425 padding: 0.5rem; 426 border: 1px solid rgb(235, 235, 235); 442 427 } 443 428 444 429 .zar_body ol li { 445 430 position: relative; 446 width: 99%; 447 margin-left: 0;448 } 449 450 .zar_body label { 431 width: 99%; 432 margin-left: 0; 433 } 434 435 .zar_body label { 451 436 width: 100%; 452 437 font-size: 1.1em; … … 455 440 } 456 441 457 .zar_body input {458 color: rgb(131, 131,145);442 .zar_body input { 443 color: rgb(131, 131, 145); 459 444 width: 99%; 460 445 padding: 8px 5px; 461 446 margin-top: 6px; 462 font-size: 1.2em;463 border: 1px solid rgb(205, 205,206);464 -moz-border-radius: 3px;447 font-size: 1.2em; 448 border: 1px solid rgb(205, 205, 206); 449 -moz-border-radius: 3px; 465 450 -webkit-border-radius: 3px; 466 border-radius: 3px;467 background-color: rgb(255, 255,255);468 } 469 470 .zar_body .sm input {451 border-radius: 3px; 452 background-color: rgb(255, 255, 255); 453 } 454 455 .zar_body .sm input { 471 456 width: 55%; 472 457 } … … 480 465 /* ---- More Info Tabs for Details Pages. For V1.1 ---- */ 481 466 .zar_body .tabs { 482 list-style: none;483 zoom: 1;484 margin-top: 0;485 margin-bottom: 2rem;467 list-style: none; 468 zoom: 1; 469 margin-top: 0; 470 margin-bottom: 2rem; 486 471 } 487 472 .zar_body .tabs:before, 488 473 .zar_body .tabs:after { 489 display: table;490 content: "";491 zoom: 1;492 *display: inline;493 } 494 .zar_body .tabs:after {495 clear: both;496 } 497 .zar_body .tabs > li {498 outline: none; 499 cursor: pointer;500 } 501 .zar_body .tabs > li > a {502 display: block;503 outline: none;504 } 505 .zar_body .tabs { 506 width: 100%;507 -webkit-box-sizing: border-box;508 box-sizing: border-box;509 border-bottom: 1px solid #ddd;474 display: table; 475 content: ""; 476 zoom: 1; 477 *display: inline; 478 } 479 .zar_body .tabs:after { 480 clear: both; 481 } 482 .zar_body .tabs > li { 483 outline: none; 484 cursor: pointer; 485 } 486 .zar_body .tabs > li > a { 487 display: block; 488 outline: none; 489 } 490 .zar_body .tabs { 491 width: 100%; 492 -webkit-box-sizing: border-box; 493 box-sizing: border-box; 494 border-bottom: 1px solid #ddd; 510 495 } 511 496 .zar_body .tabs > li { 512 497 display: inline-block; 513 position: relative;514 top: 1px;515 margin-bottom: 0;516 z-index: 0;498 position: relative; 499 top: 1px; 500 margin-bottom: 0; 501 z-index: 0; 517 502 } 518 503 .zar_body .tabs > li > a { 519 504 display: inline-block; 520 padding: 0 15px;521 margin-right: 1rem;522 line-height: 36px;523 border: 1px solid transparent;524 -webkit-border-radius: 3px 3px 0 0;525 -moz-border-radius: 3px 3px 0 0;526 border-radius: 3px 3px 0 0;527 font-size: 1.1rem;528 outline: none;529 cursor: pointer;505 padding: 0 15px; 506 margin-right: 1rem; 507 line-height: 36px; 508 border: 1px solid transparent; 509 -webkit-border-radius: 3px 3px 0 0; 510 -moz-border-radius: 3px 3px 0 0; 511 border-radius: 3px 3px 0 0; 512 font-size: 1.1rem; 513 outline: none; 514 cursor: pointer; 530 515 } 531 516 .zar_body .tabs > li > a:hover, 532 517 .zar_body .tabs > li > a:focus { 533 text-decoration: none;534 background-color: #eee;535 border-color: #eee #eee #ddd;518 text-decoration: none; 519 background-color: #eee; 520 border-color: #eee #eee #ddd; 536 521 } 537 522 .zar_body .tabs > li.active > a { 538 523 background: rgb(251, 251, 251); 539 border: 1px solid #ddd; 540 border-bottom-color: transparent; 541 } 542 .zar_body .tabs .menu-dropdown, .zar_body .tabs .dropdown-menu { 543 top: 35px; 544 border-width: 1px; 545 -webkit-border-radius: 0 6px 6px 6px; 546 -moz-border-radius: 0 6px 6px 6px; 547 border-radius: 0 6px 6px 6px; 548 } 549 .zar_body .tabs a.menu:after, .zar_body .tabs .dropdown-toggle:after { 550 border-top-color: #999; 551 margin-top: 15px; 552 margin-left: 5px; 553 } 554 .zar_body .tabs li.open.menu .menu, .zar_body .tabs .open.dropdown .dropdown-toggle { 555 border-color: #999; 556 } 557 .zar_body .tabs li.open a.menu:after, .zar_body .tabs .dropdown.open .dropdown-toggle:after { 558 border-top-color: #555; 524 border: 1px solid #ddd; 525 border-bottom-color: transparent; 526 } 527 .zar_body .tabs .menu-dropdown, 528 .zar_body .tabs .dropdown-menu { 529 top: 35px; 530 border-width: 1px; 531 -webkit-border-radius: 0 6px 6px 6px; 532 -moz-border-radius: 0 6px 6px 6px; 533 border-radius: 0 6px 6px 6px; 534 } 535 .zar_body .tabs a.menu:after, 536 .zar_body .tabs .dropdown-toggle:after { 537 border-top-color: #999; 538 margin-top: 15px; 539 margin-left: 5px; 540 } 541 .zar_body .tabs li.open.menu .menu, 542 .zar_body .tabs .open.dropdown .dropdown-toggle { 543 border-color: #999; 544 } 545 .zar_body .tabs li.open a.menu:after, 546 .zar_body .tabs .dropdown.open .dropdown-toggle:after { 547 border-top-color: #555; 559 548 } 560 549 .zar_body .tab-content { 561 clear: both;562 } 563 564 .zar_body .tab-content > * {565 display: none;566 } 567 .zar_body .tab-content > .active {568 display: block;569 } 570 571 /* -------- Flexbox styles -------- */ 550 clear: both; 551 } 552 553 .zar_body .tab-content > * { 554 display: none; 555 } 556 .zar_body .tab-content > .active { 557 display: block; 558 } 559 560 /* -------- Flexbox styles -------- */ 572 561 .zar_body .flex { 573 display: -webkit-flex;574 display: -ms-flexbox;575 display: flex 562 display: -webkit-flex; 563 display: -ms-flexbox; 564 display: flex; 576 565 } 577 566 578 567 .zar_body .flex-col { 579 display: -webkit-flex;580 display: -ms-flexbox;581 display: flex;582 -webkit-flex-direction: column;583 -ms-flex-direction: column;584 flex-direction: column 568 display: -webkit-flex; 569 display: -ms-flexbox; 570 display: flex; 571 -webkit-flex-direction: column; 572 -ms-flex-direction: column; 573 flex-direction: column; 585 574 } 586 575 587 576 .zar_body .flex-1 { 588 -webkit-flex: 1;589 -ms-flex: 1;590 flex: 1 577 -webkit-flex: 1; 578 -ms-flex: 1; 579 flex: 1; 591 580 } 592 581 593 582 .zar_body .flex-v-center { 594 -webkit-align-items: center;595 -ms-flex-align: center;596 align-items: center 583 -webkit-align-items: center; 584 -ms-flex-align: center; 585 align-items: center; 597 586 } 598 587 599 588 .zar_body .flex-h-center { 600 -webkit-justify-content: center;601 -ms-flex-pack: center;602 justify-content: center 589 -webkit-justify-content: center; 590 -ms-flex-pack: center; 591 justify-content: center; 603 592 } 604 593 605 594 .zar_body .flex-end { 606 -webkit-justify-content: flex-end;607 -ms-flex-pack: end;608 justify-content: flex-end 595 -webkit-justify-content: flex-end; 596 -ms-flex-pack: end; 597 justify-content: flex-end; 609 598 } 610 599 611 600 .zar_body .flex-start { 612 -webkit-justify-content: flex-start;613 -ms-flex-pack: start;614 justify-content: flex-start 615 } 601 -webkit-justify-content: flex-start; 602 -ms-flex-pack: start; 603 justify-content: flex-start; 604 } -
zartis-job-plugin/trunk/readme.txt
r2453992 r2577107 4 4 Tags: jobs, job, career, manager, vacancy, hiring, hire, listing, recruiting, recruitment, ats, employer, application, board 5 5 Requires at least: 2.9 6 Tested up to: 5. 6.07 Stable tag: 2. 8.06 Tested up to: 5.8.0 7 Stable tag: 2.9.0 8 8 9 9 Easily add job listings and secure candidate management to your Wordpress site. … … 137 137 = 2.8.0 = 138 138 * Use wp_remote_get function to get list of jobs and better handling of query parameters 139 140 = 2.9.0 = 141 * Update domain for api endpoint and use a web component to list jobs
Note: See TracChangeset
for help on using the changeset viewer.