adding restriction by job expiration date, centering front end output
authorAnthony Talarico <talarico@gaslightmedia.com>
Tue, 19 Sep 2017 16:28:05 +0000 (12:28 -0400)
committerAnthony Talarico <talarico@gaslightmedia.com>
Tue, 19 Sep 2017 16:28:05 +0000 (12:28 -0400)
adding styles, centering the front end data output, adding a check to make sure
the job postings aren't older than the expiration date range

classes/data/dataJobs.php
css/front.css
css/front.css.map
models/admin/jobs/index.php
models/front/jobs/detail.php
models/front/jobs/list.php
scss/front.scss
views/admin/jobs/edit.html
views/front/jobs/detail.html
views/front/jobs/list.html

index 2887b3e..1ea8dab 100644 (file)
@@ -155,7 +155,7 @@ class GlmDataJobs extends GlmDataAbstract
                 'use' => 'a'
             ),
             'resume_location' => array (
-                'field' => 'email_location',
+                'field' => 'resume_location',
                 'type' => 'text',
                 'use' => 'a'
             ),
index 8f7f1e4..6d753a7 100644 (file)
@@ -1,3 +1,3 @@
-.no-padding{padding:0}body .front-job-listings-wrapper{margin-top:20px}body .front-job-listings-wrapper .job-detail-wrapper div{float:none !important;line-height:1.1;margin:7px}body .front-job-listings-wrapper span{font-weight:bold}body .front-job-listings-wrapper .front-job-list-row{margin-bottom:20px}body .front-job-listings-wrapper .front-job-list-row .job-title-list span{font-size:20px}body .front-job-listings-wrapper .job-title-search #job_title_dropdown{max-width:450px}body .front-job-listings-wrapper .job-title-search .job-title-button{height:39px}@media screen and (max-width: 641px){body .front-job-listings-wrapper .job-title-button{display:block;max-width:100px;margin:0 auto}body .front-job-listings-wrapper .front-job-search{margin-bottom:20px}}@media (min-width: 639px) and (max-width: 1025px){body .front-job-listings-wrapper .job-title-button{display:inline-block;margin:0 0 0 10px}}@media (min-width: 1023px){body .front-job-listings-wrapper .job-title-button{display:inline-block;margin:0 0 0 10px}}
+.no-padding{padding:0}body .front-job-listings-wrapper{margin-top:20px}body .front-job-listings-wrapper .job-detail-wrapper .front-title{font-weight:bold;font-size:20px}body .front-job-listings-wrapper .job-detail-wrapper div{float:none !important;line-height:1.1;margin:8px 8px 8px 0}body .front-job-listings-wrapper .front-job-search{max-width:530px;margin:0 auto}body .front-job-listings-wrapper span{font-weight:bold}body .front-job-listings-wrapper .front-job-list-row{margin-bottom:20px}body .front-job-listings-wrapper .front-job-list-row .job-title-list span{font-size:20px}body .front-job-listings-wrapper .job-title-search #job_title_dropdown{max-width:450px}body .front-job-listings-wrapper .job-title-search .job-title-button{height:39px}@media screen and (max-width: 641px){body .front-job-listings-wrapper .job-title-button{display:block;max-width:100px;margin:0 auto}body .front-job-listings-wrapper .front-job-search{margin-bottom:20px}}@media (min-width: 639px) and (max-width: 1025px){body .front-job-listings-wrapper .job-title-button{display:inline-block;margin:0 0 0 10px}}@media (min-width: 1023px){body .front-job-listings-wrapper .job-title-button{display:inline-block;margin:0 0 0 10px}}
 
 /*# sourceMappingURL=front.css.map */
index 9858feb..e990a27 100644 (file)
@@ -1 +1 @@
-{"version":3,"file":"front.css","sources":["front.scss"],"sourcesContent":[".no-padding{\n    padding: 0;\n}\n\nbody .front-job-listings-wrapper {\n    .job-detail-wrapper{\n       div{\n           float: none !important;\n           line-height: 1.1;\n           margin: 7px;\n       }\n    }\n\n    margin-top: 20px;\n    span{\n        font-weight: bold;\n    }\n   \n    .front-job-list-row{\n        margin-bottom: 20px;\n        .job-title-list{\n            span{\n                font-size: 20px;\n            }\n        }\n\n    }\n    .job-title-search{\n        #job_title_dropdown{\n            max-width: 450px;\n        }\n        .job-title-button{\n            height: 39px;\n        }\n    }\n    \n    @media screen and (max-width: 641px){\n        .job-title-button{\n            display: block;\n            max-width: 100px;\n            margin: 0 auto;\n        }\n        .front-job-search{\n            margin-bottom: 20px;\n        }\n    }\n    @media (min-width: 639px) and (max-width: 1025px){\n        .job-title-button{\n            display: inline-block;\n            margin: 0 0 0 10px;\n        }\n    }\n    @media (min-width: 1023px){\n        .job-title-button{\n            display: inline-block;\n            margin: 0 0 0 10px;\n        } \n    }\n}"],"names":[],"mappings":"AAAA,AAAA,WAAW,AAAA,CACP,OAAO,CAAE,CAAC,CACb,AAED,AAAK,IAAD,CAAC,2BAA2B,AAAC,CAS7B,UAAU,CAAE,IAAI,CA6CnB,AAtDD,AAEO,IAFH,CAAC,2BAA2B,CAC5B,mBAAmB,CAChB,GAAG,AAAA,CACC,KAAK,CAAE,eAAe,CACtB,WAAW,CAAE,GAAG,CAChB,MAAM,CAAE,GAAG,CACd,AANR,AAUI,IAVA,CAAC,2BAA2B,CAU5B,IAAI,AAAA,CACA,WAAW,CAAE,IAAI,CACpB,AAZL,AAcI,IAdA,CAAC,2BAA2B,CAc5B,mBAAmB,AAAA,CACf,aAAa,CAAE,IAAI,CAOtB,AAtBL,AAiBY,IAjBR,CAAC,2BAA2B,CAc5B,mBAAmB,CAEf,eAAe,CACX,IAAI,AAAA,CACA,SAAS,CAAE,IAAI,CAClB,AAnBb,AAwBQ,IAxBJ,CAAC,2BAA2B,CAuB5B,iBAAiB,CACb,mBAAmB,AAAA,CACf,SAAS,CAAE,KAAK,CACnB,AA1BT,AA2BQ,IA3BJ,CAAC,2BAA2B,CAuB5B,iBAAiB,CAIb,iBAAiB,AAAA,CACb,MAAM,CAAE,IAAI,CACf,AAGL,MAAM,CAAC,MAAM,MAAM,SAAS,EAAE,KAAK,EAhCvC,AAiCQ,IAjCJ,CAAC,2BAA2B,CAiCxB,iBAAiB,AAAA,CACb,OAAO,CAAE,KAAK,CACd,SAAS,CAAE,KAAK,CAChB,MAAM,CAAE,MAAM,CACjB,AArCT,AAsCQ,IAtCJ,CAAC,2BAA2B,CAsCxB,iBAAiB,AAAA,CACb,aAAa,CAAE,IAAI,CACtB,CAEL,MAAM,EAAE,SAAS,EAAE,KAAK,OAAO,SAAS,EAAE,MAAM,EA1CpD,AA2CQ,IA3CJ,CAAC,2BAA2B,CA2CxB,iBAAiB,AAAA,CACb,OAAO,CAAE,YAAY,CACrB,MAAM,CAAE,UAAU,CACrB,CAEL,MAAM,EAAE,SAAS,EAAE,MAAM,EAhD7B,AAiDQ,IAjDJ,CAAC,2BAA2B,CAiDxB,iBAAiB,AAAA,CACb,OAAO,CAAE,YAAY,CACrB,MAAM,CAAE,UAAU,CACrB"}
\ No newline at end of file
+{"version":3,"file":"front.css","sources":["front.scss"],"sourcesContent":[".no-padding{\n    padding: 0;\n}\n\nbody .front-job-listings-wrapper {\n    .job-detail-wrapper{\n        .front-title{\n            font-weight: bold;\n            font-size: 20px;\n        }\n       div{\n           float: none !important;\n           line-height: 1.1;\n           margin: 8px 8px 8px 0;\n       }\n    }\n    .front-job-search{\n        max-width: 530px;\n        margin: 0 auto;\n    }\n    margin-top: 20px;\n    span{\n        font-weight: bold;\n    }\n   \n    .front-job-list-row{\n        margin-bottom: 20px;\n        .job-title-list{\n            span{\n                font-size: 20px;\n            }\n        }\n\n    }\n    .job-title-search{\n        #job_title_dropdown{\n            max-width: 450px;\n        }\n        .job-title-button{\n            height: 39px;\n        }\n    }\n    \n    @media screen and (max-width: 641px){\n        .job-title-button{\n            display: block;\n            max-width: 100px;\n            margin: 0 auto;\n        }\n        .front-job-search{\n            margin-bottom: 20px;\n        }\n    }\n    @media (min-width: 639px) and (max-width: 1025px){\n        .job-title-button{\n            display: inline-block;\n            margin: 0 0 0 10px;\n        }\n    }\n    @media (min-width: 1023px){\n        .job-title-button{\n            display: inline-block;\n            margin: 0 0 0 10px;\n        } \n    }\n}"],"names":[],"mappings":"AAAA,AAAA,WAAW,AAAA,CACP,OAAO,CAAE,CAAC,CACb,AAED,AAAK,IAAD,CAAC,2BAA2B,AAAC,CAgB7B,UAAU,CAAE,IAAI,CA6CnB,AA7DD,AAEQ,IAFJ,CAAC,2BAA2B,CAC5B,mBAAmB,CACf,YAAY,AAAA,CACR,WAAW,CAAE,IAAI,CACjB,SAAS,CAAE,IAAI,CAClB,AALT,AAMO,IANH,CAAC,2BAA2B,CAC5B,mBAAmB,CAKhB,GAAG,AAAA,CACC,KAAK,CAAE,eAAe,CACtB,WAAW,CAAE,GAAG,CAChB,MAAM,CAAE,aAAa,CACxB,AAVR,AAYI,IAZA,CAAC,2BAA2B,CAY5B,iBAAiB,AAAA,CACb,SAAS,CAAE,KAAK,CAChB,MAAM,CAAE,MAAM,CACjB,AAfL,AAiBI,IAjBA,CAAC,2BAA2B,CAiB5B,IAAI,AAAA,CACA,WAAW,CAAE,IAAI,CACpB,AAnBL,AAqBI,IArBA,CAAC,2BAA2B,CAqB5B,mBAAmB,AAAA,CACf,aAAa,CAAE,IAAI,CAOtB,AA7BL,AAwBY,IAxBR,CAAC,2BAA2B,CAqB5B,mBAAmB,CAEf,eAAe,CACX,IAAI,AAAA,CACA,SAAS,CAAE,IAAI,CAClB,AA1Bb,AA+BQ,IA/BJ,CAAC,2BAA2B,CA8B5B,iBAAiB,CACb,mBAAmB,AAAA,CACf,SAAS,CAAE,KAAK,CACnB,AAjCT,AAkCQ,IAlCJ,CAAC,2BAA2B,CA8B5B,iBAAiB,CAIb,iBAAiB,AAAA,CACb,MAAM,CAAE,IAAI,CACf,AAGL,MAAM,CAAC,MAAM,MAAM,SAAS,EAAE,KAAK,EAvCvC,AAwCQ,IAxCJ,CAAC,2BAA2B,CAwCxB,iBAAiB,AAAA,CACb,OAAO,CAAE,KAAK,CACd,SAAS,CAAE,KAAK,CAChB,MAAM,CAAE,MAAM,CACjB,AA5CT,AA6CQ,IA7CJ,CAAC,2BAA2B,CA6CxB,iBAAiB,AAAA,CACb,aAAa,CAAE,IAAI,CACtB,CAEL,MAAM,EAAE,SAAS,EAAE,KAAK,OAAO,SAAS,EAAE,MAAM,EAjDpD,AAkDQ,IAlDJ,CAAC,2BAA2B,CAkDxB,iBAAiB,AAAA,CACb,OAAO,CAAE,YAAY,CACrB,MAAM,CAAE,UAAU,CACrB,CAEL,MAAM,EAAE,SAAS,EAAE,MAAM,EAvD7B,AAwDQ,IAxDJ,CAAC,2BAA2B,CAwDxB,iBAAiB,AAAA,CACb,OAAO,CAAE,YAAY,CACrB,MAAM,CAAE,UAAU,CACrB"}
\ No newline at end of file
index cfcb8a1..709f016 100644 (file)
@@ -191,11 +191,12 @@ class GlmMembersAdmin_jobs_index extends GlmDataJobs
         switch ($option) {
 
             case 'add':
-                $job_titles = $job_titles->getList();
+                
                 $job = $this->newEntry();
                 $view_file = 'edit';
-  
+                $job_titles = $job_titles->getList();
                 $job_data = $this->getList($where);
+                
                 break;
 
             case 'insert':
@@ -269,7 +270,7 @@ class GlmMembersAdmin_jobs_index extends GlmDataJobs
 
             case 'delete':
                 $job = $this->deleteEntry($this->job_id,true);
-
+                echo $this->job_id;
                 if ($job) {
                     $jobDeleted = true;
                 } else {
index 18e1276..63248f4 100644 (file)
@@ -126,6 +126,7 @@ class GlmMembersFront_jobs_detail extends GlmDatajobs
         $where = "id = $this->job_id";
         
         $job = $this->getList($where);
+      
         foreach($job as $j){
             $job = $j;
         }
index ef61095..aad1b76 100644 (file)
@@ -106,20 +106,21 @@ class GlmMembersFront_jobs_list extends GlmDatajobs
     {
         $job_titles = new GlmDataJobTitles($this->wpdb,$this->config);
         $job_titles = $job_titles->getList();
+        $where = "";
 
         $success_message = "";
         $option = false;
         if (isset($_REQUEST['option']) && trim($_REQUEST['option']) != '') {
             $option = $_REQUEST['option'];
         }
-
+        $where .= "CURDATE() <= DATE_ADD(post_date, INTERVAL job_expiration DAY) ";
         if (isset($_REQUEST['job_titles']) && $_REQUEST['job_titles'] !== '') {
             // Make sure it's numeric
             $job_title_id = ($_REQUEST['job_titles'] - 0);
-            $where = "title = $job_title_id";
+            $where .= "AND title = $job_title_id";
             $job_data = $this->getList($where);
         } else {
-            $job_data = $this->getList();
+            $job_data = $this->getList($where);
         }
 
         $view_file = 'list';
index cc49ea9..6d33c73 100644 (file)
@@ -4,13 +4,20 @@
 
 body .front-job-listings-wrapper {
     .job-detail-wrapper{
+        .front-title{
+            font-weight: bold;
+            font-size: 20px;
+        }
        div{
            float: none !important;
            line-height: 1.1;
-           margin: 7px;
+           margin: 8px 8px 8px 0;
        }
     }
-
+    .front-job-search{
+        max-width: 530px;
+        margin: 0 auto;
+    }
     margin-top: 20px;
     span{
         font-weight: bold;
index cc5c7de..c889f0e 100644 (file)
                 {/php}
             </div>
         </div>
-       
+        <!-- SEND RESUME TO  -->
+        <div class="glm-job-row glm-row">
+            <div class="glm-small-12 glm-medium-2 glm-columns admin-job-label">
+                    Send Resume To
+            </div>
+            <div class="glm-small-12 glm-medium-5 glm-columns admin-job-input">
+                {php}
+                wp_editor(
+     
+                    '{$job.fieldData.resume_location|escape:quotes}', 
+  
+                'resume_location', array(
+                    'media_buttons' => false,
+                    'tinymce'      => false,
+                    // 'quicktags' => false,
+                    // 'wpautop' => false,  NOTE: Dont's use. Problem when numerous spaces before text.
+                    'textarea_name' => 'resume_location',
+                    'editor_height' => 200,     // Height in px, overrides editor_rows
+                        // 'textarea_rows' => 8
+                ));
+            {/php}
+            </div>
+        </div>
        <!-- CONTACT NAME -->
         <div class="glm-job-row glm-row">
             <div class="glm-small-12 glm-medium-2 glm-columns admin-job-label">
        <!-- EMAIL TO -->
         <div class="glm-job-row glm-row">
             <div class="glm-small-12 glm-medium-2 glm-columns admin-job-label">
-                    Email To
+                    Contact Email
             </div>
             <div class="glm-small-12 glm-medium-5 glm-columns admin-job-input">
                 <input type="text" name="email_location" {if $job.fieldData.email_location} value='{$job.fieldData.email_location}' {/if}>
             <div class="glm-small-12 glm-medium-5 glm-columns admin-job-input">
                 <select id="job_expiration" data-id="job_expiration" name="job_expiration">
                     <option value="">Number of Days</option>
-                    {foreach $jobData[{$jobID}].job_expiration.list as $exp}
+                    {foreach $job.fieldData.job_expiration.list as $exp}
                         {if 'fieldData'|array_key_exists:$job}
                                 <option value="{$exp.value}" {if $job.fieldData.job_expiration.value == {$exp.value}} selected="selected"{/if}>
                             {else if}
                 $("#deleteJobDialog").dialog("close");
             });
             $('#deletejobsubmit').click( function() {
-                window.location.replace("{$thisUrl}?page={$thisPage}&glm_action=index&option=delete&Job={$job.fieldData.id}");
+                window.location.replace("{$thisUrl}?page={$thisPage}&glm_action=index&option=delete&job={$job.fieldData.id}");
             });
-    {/if}
+        {/if}
             
             // Flash certain elements for a short time after display
             $(".glm-flash-updated").fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500);
index 81977c1..2c85326 100644 (file)
     </div>
     <div class="glm-row job-detail-wrapper">
         {if $jobData.title}
-            <div class="glm-small-12 columns front-title">{$jobData.title}</div>
+            <div class="glm-small-12 columns front-title no-padding">{$jobData.title}</div>
         {/if}
         {if $jobData.job_location}
-            <div class="glm-small-12 columns front-location"><span>Location: </span>{$jobData.job_location}</div>
+            <div class="glm-small-12 columns front-location no-padding"><span>Location: </span>{$jobData.job_location}</div>
         {/if}
         {if $jobData.position_available}
-            <div class="glm-small-12 columns front-position"><span>Position Available: </span>{$jobData.position_available}</div>
+            <div class="glm-small-12 columns front-position no-padding"><span>Position Available: </span>{$jobData.position_available}</div>
         {/if}
         {if $jobData.salary}
-            <div class="glm-small-12 columns front-salary"><span>Salary: </span>{$jobData.salary}</div>
+            <div class="glm-small-12 columns front-salary no-padding"><span>Salary: </span>{$jobData.salary}</div>
         {/if}
         {if $jobData.duration}
-            <div class="glm-small-12 columns front-duration"><span>Position Length: </span>{$jobData.duration}</div>
+            <div class="glm-small-12 columns front-duration no-padding"><span>Position Length: </span>{$jobData.duration}</div>
         {/if}
         {if $jobData.company}
-            <div class="glm-small-12 columns front-company"><span>Company: </span>{$jobData.company}</div>
+            <div class="glm-small-12 columns front-company no-padding"><span>Company: </span>{$jobData.company}</div>
         {/if}
         {if $jobData.facility_operation}
-            <div class="glm-small-12 columns front-facility"><span>Facility Operation: </span>{$jobData.facility_operation}</div>
+            <div class="glm-small-12 columns front-facility no-padding"><span>Facility Operation: </span>{$jobData.facility_operation}</div>
         {/if}
         {if $jobData.descr}
-            <div class="glm-small-12 columns front-description"><span>Job Description: </span>{$jobData.descr}</div>
+            <div class="glm-small-12 columns front-description no-padding"><span>Job Description: </span>{$jobData.descr}</div>
         {/if}
         {if $jobData.requirements}
-            <div class="glm-small-12 columns front-requirements"><span>Requirements: </span>{$jobData.requirements}</div>
+            <div class="glm-small-12 columns front-requirements no-padding"><span>Requirements: </span>{$jobData.requirements}</div>
         {/if}
         {if $jobData.benefits}
-            <div class="glm-small-12 columns front-benefits"><span>Benefits: </span>{$jobData.benefits}</div>
+            <div class="glm-small-12 columns front-benefits no-padding"><span>Benefits: </span>{$jobData.benefits}</div>
         {/if}
-        {if $jobData.email_location}
-            <div class="glm-small-12 columns front-email"><span>Send Resume To:</span> <a href="mailto:{$jobData.email_location}" target="_top">{$jobData.email_location}</a></div>
+        {if $jobData.resume_location}
+            <div class="glm-small-12 columns front-email no-padding"><span>Send Resume To:</span> <a href="mailto:{$jobData.email_location}" target="_top">{$jobData.resume_location}</a></div>
         {/if}
         {if $jobData.email_location}
-            <div class="glm-small-12 columns front-email"><span>Contact Email: </span> {$jobData.email_location}</div>
+            <div class="glm-small-12 columns front-email no-padding"><span>Contact Email: </span> {$jobData.email_location}</div>
         {/if}
         {if $jobData.contactphone}
-            <div class="glm-small-12 columns front-phone"><span>Contact Phone: </span>{$jobData.contactphone}</div>
+            <div class="glm-small-12 columns front-phone no-padding"><span>Contact Phone: </span>{$jobData.contactphone}</div>
         {/if}
     </div>
 </div>
\ No newline at end of file
index 74e78cb..91ca4ac 100644 (file)
@@ -25,7 +25,7 @@
                             <span>Company: </span>{$value.company}
                         </div>
                         <div class="job-date-list glm-small-12 glm-columns no-padding">
-                            <span></span>{$value.post_date.timestamp|date_format:"%Y-%m-%d"}
+                            <span>Posted: </span>{$value.post_date.timestamp|date_format:"%Y-%m-%d"}
                         </div>
                         <a href="{$siteBaseUrl}job-detail/?job={$value.id}">Full Job Description</a>
                     </div>