Plugin Directory

Changeset 2577107


Ignore:
Timestamp:
08/03/2021 11:43:05 AM (5 years ago)
Author:
zartis
Message:

subdomain api and new web component

Location:
zartis-job-plugin
Files:
14 added
1 deleted
4 edited
1 copied

Legend:

Unmodified
Added
Removed
  • zartis-job-plugin/tags/2.9.0/readme.txt

    r2453992 r2577107  
    44Tags: jobs, job, career, manager, vacancy, hiring, hire, listing, recruiting, recruitment, ats, employer, application, board
    55Requires at least: 2.9
    6 Tested up to: 5.6.0
    7 Stable tag: 2.8.0
     6Tested up to: 5.8.0
     7Stable tag: 2.9.0
    88
    99Easily add job listings and secure candidate management to your Wordpress site.
     
    137137= 2.8.0 =
    138138* 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  
    77  <div class="wrap">
    88
    9     <div align="c16">
     9    <div class="c16">
    1010      <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>
    1222      </div>
    1323    </div>
     
    1828      <ul class="tabs">
    1929        <li><a href="#tab1" title="HireHive Plugin Home">Home</a></li>
    20         <li><a href="#tab2" title="HireHive settings">Settings</a></li>
    2130        <li><a href="#tab3" title="HireHive FAQs">FAQs</a></li>
    22         <li><a href="#tab4" title="HireHive advanced options">Extras</a></li>
    2331      </ul>
    2432
     
    3038            <div class="c9">
    3139              <div class="content">
    32                 <h2>You're all set!</h2>
     40                <h2>Add the shortcode anywhere on your site!</h2>
    3341                <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>
    3544
    3645                <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>
    3948                </div>
    40                 <h2>Custom job groups</h2>
     49                <h2>Options</h2>
    4150                <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">
    4351
    44                   <h3>List of available HireHive groups you have</h3>
    45                   <select name="hirehive-categories" id="hirehive-categories">
    46                     <?php
    47 $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>
    4957
    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>
    5167
    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>
    7873                </div>
    7974
     
    8277                  <img src="https://zartis.blob.core.windows.net/public-screens/Plugin-Shortcode.jpg" title="Just insert [hirehive_jobs] into any page you wish" />
    8378                </a>
    84                 <br/>
    85                 <br/>
     79                <br />
     80                <br />
    8681              </div>
    8782            </div>
     
    9489                    <a href="https://my.hirehive.io/#/jobs/create" title="Go to HireHive create job page" target='_blank' class="zar_a">
    9590                      <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>
    9793
    9894                  <li>
    9995                    <a href="https://my.hirehive.io/#/Settings/jobboards" target='_blank' title="" class="zar_a">
    10096                      <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>
    10299
    103100                  <li>
    104101                    <a href="https://my.hirehive.io/#/Settings/team" target='_blank' title="Add teams to HireHice" class="zar_a">
    105102                      <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>
    107105                </ul>
    108106
    109107                <div class="cent">
    110                   <a href="https://my.hirehive.io/#/jobs/create" target="_blank" class="btn btn-sm save buttons">
    111 Add jobs to your website now
    112 </a>
     108                  <a href="https://my.hirehive.io/#/jobs/create" target="_blank" class="btn buttons">
     109                    Add jobs to your website now
     110                  </a>
    113111                  <p>
    114112                    <em><small>You will be brought to my.hirehive.io</small></EM>
     
    124122        <!-- END OF tab1 -->
    125123
    126         <!-- OPTIONS -->
    127         <div id="tab2" class="tab_content">
     124
     125        <!-- FAQs -->
     126        <div id="tab3" class="tab_content">
    128127          <div class="flex">
    129128            <div class="c9">
    130129              <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>
    162131
    163132
    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>
    182147
    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>
    202149
    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
    222151
    223152              </div>
    224 
    225 
    226153            </div>
    227154            <!-- END OF c8 -->
     
    233160                <div class="cent">
    234161                  <a href="https://my.hirehive.io/#/jobs/create" target="_blank" class="btn btn-sm save buttons">
    235 Add jobs to your website now
    236 </a>
     162                    Add jobs to your website now
     163                  </a>
    237164                  <p>
    238165                    <em><small>You will be brought to my.hirehive.io</small></EM>
     
    246173          </div>
    247174        </div>
     175        <!-- END OF tab3 -->
    248176
    249177
    250178      </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 -->
    353180
    354181    </div>
    355     <!-- END OF tab4 -->
    356 
    357 
     182    <!-- END OF main -->
    358183  </div>
    359   <!-- END OF tab Containter -->
    360 
    361 </div>
    362 <!-- END OF main -->
    363 </div>
    364 <!-- END OF wrap -->
     184  <!-- END OF wrap -->
    365185</div>
    366186<!-- END OF zar_body-->
  • zartis-job-plugin/trunk/Zartis_Job_Plugin.php

    r2453992 r2577107  
    44Plugin URI: https://hirehive.com
    55Description: 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.0
     6Version: 2.9.0
    77Author: HireHive
    88Author URI: https://hirehive.com
     
    3434    if (!defined('Zartis_Url'))
    3535        define('Zartis_Url', WP_PLUGIN_URL . '/' . HireHive_Folder);
    36    
     36
    3737    // Add jquery core and our css styles
    3838    if (is_admin()) {
    3939        wp_enqueue_style('zartis_wp', Zartis_Url . '/css/zartis_wp.css');
    4040        wp_enqueue_script('zartis_functions', Zartis_Url . '/js/zartis_functions.js');
    41        
     41
    4242        // The styles for the widget
    4343        wp_enqueue_style('hirehive_wp_widget', Zartis_Url . '/css/hirehive-widget-styles.css');
    4444        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');
    4845    }
    4946}
     
    8178    global $wpdb;
    8279    $zartis_page_ID = get_option('Zartis_Page_ID');
    83    
     80
    8481    // Clean up DB fields
    8582    HireHive_CleanUp_DB();
    86    
     83
    8784    //  the id of our page...
    8885    $page_ID = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE ID = '" . $zartis_page_ID . "'");
     
    112109    add_action('admin_menu', 'Add_HireHive_Admin_Menu');
    113110    $Zartis_Notice = get_option('Zartis_Notice');
    114    
     111
    115112    //checks if this is an activation and then displays the zartis message
    116113    if ($Zartis_Notice == "False") {
     
    129126add_shortcode('hirehive_jobs', 'Display_HireHive_Widget');
    130127
    131 function Display_HireHive_Widget( $atts ) {
     128function 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
     142function IsNullOrEmptyString($str)
     143{
     144    return (!isset($str) || trim($str) === '');
     145}
     146
     147function Display_HireHive_Widget($atts, $content = null)
     148{
     149    $companySubdomain = '';
    132150    $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']) {
    139170        $category = $atts['category'];
    140171    }
    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
    150189    $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';
    207198        }
    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';
    212202        }
    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>';
    239216        }
    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
    259230        return $script;
    260231    }
    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;
    283232}
    284233
     
    311260function no_hirehive_account()
    312261{
    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  
    99
    1010    $hh-yellow:                 rgb(245,196,0);
    11     $hh-green:                  rgb(0,196,131);
     11    $hh-green:                  #356AFD;
    1212    $hh-blue:                   rgb(0,147,196);
    1313    $hh-black:                  rgb(14,14,14);
     
    2020--------------------------------------------------*/
    2121.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 */
    2424    color: rgb(94, 94, 106);
    25     padding: 0;margin: 0;
     25    padding: 0;
     26    margin: 0;
    2627    background: white;
    27     font-size:100%;
    28     font-weight: 300;
     28    font-size: 100%;
     29    font-weight: 300;
    2930}
    3031
    3132.zar_body * {
    32         box-sizing: border-box;
     33    box-sizing: border-box;
    3334}
    3435
     
    4344
    4445.zar_body #main {
    45    
    46     overflow: hidden;/* Clearfix */
     46    overflow: hidden; /* Clearfix */
    4747    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;
    5151    -webkit-border-radius: 3px;
    52     border-radius:3px;
     52    border-radius: 3px;
    5353    background: rgb(251, 251, 251);
    5454}
    5555
    5656.zar_body .content {
    57     position: relative; 
    58     width: 100%;
     57    position: relative;
     58    width: 100%;
    5959}
    6060
     
    6363
    6464.zar_body .branding {
    65     width:160px;
    66 }
    67 
    68 .zar_body .branding img{
    69    
     65    width: 160px;
     66}
     67
     68.zar_body .branding img {
    7069    -moz-border-radius: 5px;
    7170    -webkit-border-radius: 5px;
    7271    border-radius: 5px;
    7372    -webkit-box-shadow: none;
    74     -moz-box-shadow:  none;
     73    -moz-box-shadow: none;
    7574    box-shadow: none;
    7675}
     
    8281.zar_body .c8,
    8382.zar_body .c9,
    84 .zar_body .c16   {
     83.zar_body .c16 {
    8584    margin-left: 1.25%;
    8685    margin-right: 1.25%;
    87    
     86
    8887    display: block;
    8988}
     
    9392.zar_body .c8:first-child,
    9493.zar_body .c9:first-child,
    95 .zar_body .c16:first-child   {
     94.zar_body .c16:first-child {
    9695    margin-left: 0;
    9796}
     
    101100.zar_body .c8:last-child,
    102101.zar_body .c9:last-child,
    103 .zar_body .c16:last-child   {
    104    
     102.zar_body .c16:last-child {
    105103    margin-right: 0;
    106104}
     
    131129    .zar_body .c8,
    132130    .zar_body .c9,
    133     .zar_body .c16   {
     131    .zar_body .c16 {
    134132        width: 100%;
    135133    }
     
    140138
    141139.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;
    151149}
    152150
    153151.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;
    157155}
    158156
     
    162160.zar_body p {
    163161    font-size: 1rem;
    164     margin:.75em 0 1em 0;
     162    margin: 0.75em 0 1em 0;
    165163}
    166164
    167165.zar_body a:link,
    168166.zar_body a:visited {
    169     color: rgb(0,196,131);
     167    color: #356afd;
    170168    text-decoration: none;
    171169    -webkit-transition: all 0.3s ease-out;
     
    176174.zar_body a:focus,
    177175.zar_body a:active {
    178     opacity: .6;
     176    opacity: 0.6;
    179177    text-decoration: none;
    180178}
     
    184182.zar_body h2,
    185183.zar_body h3 {
    186     font-weight:300;
     184    font-weight: 300;
    187185}
    188186
    189187.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;
    195193}
    196194
    197195.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;
    202200}
    203201
     
    206204    padding: 0;
    207205    font-size: 16px;
    208     list-style-type: none;
     206    list-style-type: none;
    209207}
    210208
     
    212210    padding-left: 25px;
    213211    margin-left: 5px;
    214     color: rgb(55,55,65);
    215     margin-bottom: .85em;
     212    color: rgb(55, 55, 65);
     213    margin-bottom: 0.85em;
    216214    line-height: 1.6;
    217215    background: url(../images/check_alt_16x16.png) no-repeat 0 3px;
     
    219217
    220218.zar_body strong {
    221         font-weight:500;
     219    font-weight: 500;
    222220}
    223221/* Code
    224222============================= */
    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;
    231229}
    232230
    233231.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;
    239236}
    240237
    241238.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;
    257252}
    258253
     
    262257/* For show hide dialog  */
    263258.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;
    268263    -webkit-border-radius: 5px;
    269264    border-radius: 5px;
    270     background: rgb(1,160,198);
     265    background: rgb(1, 160, 198);
    271266}
    272267
    273268.zar_body .dialog h2 {
    274     color: rgb(255,255,255);
     269    color: rgb(255, 255, 255);
    275270    margin: inherit;
    276271}
    277272
    278273.zar_body .dialog p {
    279     color: rgb(255,255,255);
     274    color: rgb(255, 255, 255);
    280275}
    281276
    282277.zar_body .info-banner.dialog a {
    283     color: rgb(255,255,255);
     278    color: rgb(255, 255, 255);
    284279}
    285280
    286281/* For nav arrow  */
    287 .zar_info-txt{
     282.zar_info-txt {
    288283    z-index: 100;
    289284    position: fixed;
    290285    background: none repeat scroll 0 0 #111;
    291286    border-radius: 0.3em 0.3em 0.3em 0.3em;
    292     color: #FFFFFF;
    293     font-weight:bold;
     287    color: #ffffff;
     288    font-weight: bold;
    294289    text-align: center;
    295     padding:15px;
     290    padding: 15px;
    296291    width: 250px;
    297292    opacity: 0.1;
    298293    top: 0;
    299     left:0;
     294    left: 0;
    300295}
    301296
     
    304299    border-style: solid;
    305300    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;
    311306}
    312307
     
    319314
    320315.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;
    329322}
    330323
     
    335328.zar_body .hint {
    336329    padding: 5px 0 0;
    337     font-size: .95em;
     330    font-size: 0.95em;
    338331    margin: 0;
    339     width: 60%; 
    340     color: #DC0104;
     332    width: 60%;
     333    color: #dc0104;
    341334}
    342335
     
    345338
    346339.zar_body button {
    347      background: none;
     340    background: none;
    348341}
    349342
    350343.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;
    357350    -moz-background-clip: padding;
    358351    -webkit-border-radius: 2px;
    359352    -moz-border-radius: 2px;
    360     border-radius:  2px;
     353    border-radius: 4px;
    361354    -webkit-transition: all 0.2s ease-out;
    362355    -moz-transition: all 0.2s ease-out;
    363356    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;
    384370}
    385371
    386372.zar_body .btn:hover {
    387373    color: #fff;
    388     background-image: none;
     374    background-image: none;
    389375}
    390376
    391377.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;
    395381    -webkit-transform: translate(0, 2px);
    396382    -moz-transform: translate(0, 2px);
     
    400386
    401387/* No icon */
    402 .zar_body .btn.norm{
     388.zar_body .btn.norm {
    403389    padding: 5px 13px;
    404390}
     
    408394.zar_body .btn.submit {
    409395    background-image: url(../images/check_12x10.png);
    410     background-position:  10px 49% !important;
     396    background-position: 10px 49% !important;
    411397    background-repeat: no-repeat !important;
    412398}
    413399
    414400/* Next (For signup) */
    415 .zar_body .btn.next  {
     401.zar_body .btn.next {
    416402    padding: 8px 3% 8px 1%;
    417403}
    418404
    419 .zar_body .btn.next  {
     405.zar_body .btn.next {
    420406    font-size: 1.4em;
    421407    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;
    423409}
    424410
     
    426412
    427413.zar_body fieldset {
    428     position: relative; 
     414    position: relative;
    429415    width: 100%;
    430416    padding: 0;
     
    432418
    433419.zar_body ol {
    434    
    435420    width: 100%;
    436421    padding: 0;
    437422    margin: 0;
    438423    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);
    442427}
    443428
    444429.zar_body ol li {
    445430    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 {
    451436    width: 100%;
    452437    font-size: 1.1em;
     
    455440}
    456441
    457 .zar_body input  { 
    458     color: rgb(131,131,145);
     442.zar_body input {
     443    color: rgb(131, 131, 145);
    459444    width: 99%;
    460445    padding: 8px 5px;
    461446    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;
    465450    -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 {
    471456    width: 55%;
    472457}
     
    480465/* ---- More Info Tabs for Details Pages. For V1.1  ---- */
    481466.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;
    486471}
    487472.zar_body .tabs:before,
    488473.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;
    510495}
    511496.zar_body .tabs > li {
    512497    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;
    517502}
    518503.zar_body .tabs > li > a {
    519504    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;
    530515}
    531516.zar_body .tabs > li > a:hover,
    532517.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;
    536521}
    537522.zar_body .tabs > li.active > a {
    538523    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;
    559548}
    560549.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 -------- */
    572561.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;
    576565}
    577566
    578567.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;
    585574}
    586575
    587576.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;
    591580}
    592581
    593582.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;
    597586}
    598587
    599588.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;
    603592}
    604593
    605594.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;
    609598}
    610599
    611600.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  
    44Tags: jobs, job, career, manager, vacancy, hiring, hire, listing, recruiting, recruitment, ats, employer, application, board
    55Requires at least: 2.9
    6 Tested up to: 5.6.0
    7 Stable tag: 2.8.0
     6Tested up to: 5.8.0
     7Stable tag: 2.9.0
    88
    99Easily add job listings and secure candidate management to your Wordpress site.
     
    137137= 2.8.0 =
    138138* 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.