preferred tool updates
Showing
11 changed files
with
85 additions
and
76 deletions
| ... | @@ -28,37 +28,36 @@ if( $is_preview ) { | ... | @@ -28,37 +28,36 @@ if( $is_preview ) { |
| 28 | 28 | ||
| 29 | $postal_lookup = []; | 29 | $postal_lookup = []; |
| 30 | $row = 0; | 30 | $row = 0; |
| 31 | |||
| 31 | if (($handle = fopen(wp_get_upload_dir()['basedir']."/terriroties.csv", "r")) !== FALSE) { | 32 | if (($handle = fopen(wp_get_upload_dir()['basedir']."/terriroties.csv", "r")) !== FALSE) { |
| 32 | while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { | 33 | while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { |
| 33 | |||
| 34 | $row++; | 34 | $row++; |
| 35 | |||
| 36 | if($row == 1) { | 35 | if($row == 1) { |
| 37 | continue; | 36 | continue; |
| 38 | } | 37 | } |
| 39 | 38 | $postal_lookup[] = ['GEOKEY'=>$data[0],'PREFERRED'=>$data[3]]; | |
| 40 | $postal_lookup[] = ['GEOKEY'=>$data[0],'TERRITORY'=>$data[1],'1ST'=>$data[2],'PREFERRED'=>$data[3],'REGION'=>$data[4]]; | ||
| 41 | |||
| 42 | } | 39 | } |
| 43 | fclose($handle); | 40 | fclose($handle); |
| 44 | } | 41 | } |
| 45 | 42 | ||
| 46 | |||
| 47 | ?> | 43 | ?> |
| 48 | <div id="<?php echo esc_attr($id); ?>" class="<?php echo esc_attr($className); ?>"> | 44 | <div id="<?php echo esc_attr($id); ?>" class="<?php echo esc_attr($className); ?>"> |
| 49 | 45 | ||
| 46 | |||
| 47 | <div class='postal-code-inputs'> | ||
| 48 | <label> | ||
| 49 | <span class='label'>Enter Full Postal Code:</span> | ||
| 50 | <input type='text' class='postal-code-search' /> | ||
| 51 | </label> | ||
| 52 | |||
| 53 | <label> | ||
| 54 | <span class='label'>Preferred?</span> | ||
| 55 | <input type='text' class='preferred' /> | ||
| 56 | |||
| 57 | </label> | ||
| 58 | </div> | ||
| 59 | |||
| 50 | <input type='hidden' class='postal-search-data' value='<?= json_encode($postal_lookup) ?>' /> | 60 | <input type='hidden' class='postal-search-data' value='<?= json_encode($postal_lookup) ?>' /> |
| 51 | 61 | ||
| 52 | <table class='postal-search-results'> | ||
| 53 | <thead> | ||
| 54 | <tr class="header"><td>GEOKEY</td><td>TERRITORY</td><td>1ST</td><td>PREFERRED</td><td>REGION</td></tr> | ||
| 55 | </thead> | ||
| 56 | <tbody> | ||
| 57 | <?php foreach($postal_lookup as $pl) { ?> | ||
| 58 | <tr data-preferred="<?= $pl['PREFERRED'] ?>" class="header"><td><?= $pl['GEOKEY'] ?></td><td><?= $pl['TERRITORY'] ?></td><td><?= $pl['1ST'] ?></td><td><?= $pl['PREFERRED'] ?></td><td><?= $pl['REGION'] ?></td></tr> | ||
| 59 | <?php } ?> | ||
| 60 | </tbody> | ||
| 61 | </table> | ||
| 62 | |||
| 63 | </div> | 62 | </div> |
| 64 | 63 | ... | ... |
| ... | @@ -14654,6 +14654,8 @@ table.dataTable + .bottom { | ... | @@ -14654,6 +14654,8 @@ table.dataTable + .bottom { |
| 14654 | 14654 | ||
| 14655 | .postal-code-inputs { | 14655 | .postal-code-inputs { |
| 14656 | display: flex; | 14656 | display: flex; |
| 14657 | align-items: baseline; | ||
| 14658 | gap: 1rem; | ||
| 14657 | } | 14659 | } |
| 14658 | .postal-code-inputs > div { | 14660 | .postal-code-inputs > div { |
| 14659 | padding-right: 3rem; | 14661 | padding-right: 3rem; |
| ... | @@ -14661,6 +14663,13 @@ table.dataTable + .bottom { | ... | @@ -14661,6 +14663,13 @@ table.dataTable + .bottom { |
| 14661 | .postal-code-inputs > input { | 14663 | .postal-code-inputs > input { |
| 14662 | font-size: 1rem; | 14664 | font-size: 1rem; |
| 14663 | } | 14665 | } |
| 14666 | .postal-code-inputs span { | ||
| 14667 | padding-left: 0; | ||
| 14668 | color: #000; | ||
| 14669 | text-align: left; | ||
| 14670 | font-family: Helvetica; | ||
| 14671 | font-size: 20px; | ||
| 14672 | } | ||
| 14664 | 14673 | ||
| 14665 | .strategic-child-page { | 14674 | .strategic-child-page { |
| 14666 | display: flex; | 14675 | display: flex; | ... | ... |
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff is collapsed.
Click to expand it.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
| 1 | // import Fuse from 'fuse.js' | 1 | import Fuse from 'fuse.js' |
| 2 | import DataTable from 'datatables.net-dt'; | 2 | // import DataTable from 'datatables.net-dt'; |
| 3 | 3 | ||
| 4 | (function( $ ) { | 4 | (function( $ ) { |
| 5 | 5 | ||
| 6 | // var list = JSON.parse($('.postal-search-data').val()); | 6 | var list = JSON.parse($('.postal-search-data').val()); |
| 7 | |||
| 8 | // const fuseOptions = { | ||
| 9 | // // isCaseSensitive: false, | ||
| 10 | // // includeScore: false, | ||
| 11 | // // shouldSort: true, | ||
| 12 | // // includeMatches: false, | ||
| 13 | // // findAllMatches: false, | ||
| 14 | // // minMatchCharLength: 1, | ||
| 15 | // // location: 0, | ||
| 16 | // threshold: 0.2, | ||
| 17 | // // distance: 100, | ||
| 18 | // // useExtendedSearch: false, | ||
| 19 | // // ignoreLocation: false, | ||
| 20 | // // ignoreFieldNorm: false, | ||
| 21 | // // fieldNormWeight: 1, | ||
| 22 | // keys: [ | ||
| 23 | // "GEOKEY", | ||
| 24 | // "TERRITORY" | ||
| 25 | // ] | ||
| 26 | // }; | ||
| 27 | 7 | ||
| 28 | // const fuse = new Fuse(list, fuseOptions); | 8 | const fuseOptions = { |
| 9 | // isCaseSensitive: false, | ||
| 10 | // includeScore: false, | ||
| 11 | // shouldSort: true, | ||
| 12 | // includeMatches: false, | ||
| 13 | // findAllMatches: false, | ||
| 14 | // minMatchCharLength: 1, | ||
| 15 | // location: 0, | ||
| 16 | threshold: 0.2, | ||
| 17 | // distance: 100, | ||
| 18 | // useExtendedSearch: false, | ||
| 19 | // ignoreLocation: false, | ||
| 20 | // ignoreFieldNorm: false, | ||
| 21 | // fieldNormWeight: 1, | ||
| 22 | keys: [ | ||
| 23 | "GEOKEY" | ||
| 24 | ] | ||
| 25 | }; | ||
| 29 | 26 | ||
| 30 | var table = new DataTable('.postal-search-results', | 27 | const fuse = new Fuse(list, fuseOptions); |
| 31 | { | ||
| 32 | responsive: true, | ||
| 33 | paging:true, | ||
| 34 | "lengthMenu":-1, | ||
| 35 | "oLanguage": { | ||
| 36 | "sSearch": "Enter Full Postal Code:" | ||
| 37 | } | ||
| 38 | } | ||
| 39 | ); | ||
| 40 | |||
| 41 | // function searchFuse(searchPattern) { | ||
| 42 | // return fuse.search(searchPattern); | ||
| 43 | // } | ||
| 44 | 28 | ||
| 29 | // var table = new DataTable('.postal-search-results', | ||
| 30 | // { | ||
| 31 | // responsive: true, | ||
| 32 | // paging:true, | ||
| 33 | // "lengthMenu":-1, | ||
| 34 | // "oLanguage": { | ||
| 35 | // "sSearch": "Enter Full Postal Code:" | ||
| 36 | // } | ||
| 37 | // } | ||
| 38 | // ); | ||
| 39 | |||
| 45 | // $('.search-postal-preferred').on('change', function() { | 40 | // $('.search-postal-preferred').on('change', function() { |
| 46 | // var preferred = $(this).find('option:selected').val(); | 41 | // var preferred = $(this).find('option:selected').val(); |
| 47 | // $('.postal-search-results tr').removeClass('hidden'); | 42 | // $('.postal-search-results tr').removeClass('hidden'); |
| ... | @@ -49,7 +44,6 @@ import DataTable from 'datatables.net-dt'; | ... | @@ -49,7 +44,6 @@ import DataTable from 'datatables.net-dt'; |
| 49 | // $('.postal-search-results tr').each(function() { | 44 | // $('.postal-search-results tr').each(function() { |
| 50 | // if(!$(this).hasClass('header')) { | 45 | // if(!$(this).hasClass('header')) { |
| 51 | // var _preferred = $(this).data('preferred'); | 46 | // var _preferred = $(this).data('preferred'); |
| 52 | // console.log(_preferred); | ||
| 53 | // if(preferred != _preferred) { | 47 | // if(preferred != _preferred) { |
| 54 | // $(this).addClass('hidden'); | 48 | // $(this).addClass('hidden'); |
| 55 | // } | 49 | // } |
| ... | @@ -58,29 +52,27 @@ import DataTable from 'datatables.net-dt'; | ... | @@ -58,29 +52,27 @@ import DataTable from 'datatables.net-dt'; |
| 58 | // } | 52 | // } |
| 59 | // }); | 53 | // }); |
| 60 | 54 | ||
| 61 | // $('.postal-code-search').on('keyup', function() { | 55 | $('.postal-code-search').on('keyup', function() { |
| 62 | 56 | ||
| 63 | // var results = searchFuse($(this).val()); | 57 | if($(this).val().length < 3) { |
| 58 | $('.preferred').val(''); | ||
| 59 | } else { | ||
| 64 | 60 | ||
| 65 | // $('.postal-search-results tr').remove(); | 61 | var results = fuse.search($(this).val()); |
| 66 | // $('.postal-search-results').append( | ||
| 67 | // '<tr class="header"><td>GEOKEY</td><td>TERRITORY</td><td>1ST</td><td>PREFERRED</td><td>REGION</td></tr>' | ||
| 68 | // ); | ||
| 69 | 62 | ||
| 70 | // if(results.length > 200) { | 63 | for(var i = 0;i < results.length;++i) { |
| 71 | // $('.postal-search-results').append("<tr><td>Result set to large</td><td></td><td></td><td></td><td></td></tr>"); | ||
| 72 | // } else { | ||
| 73 | // if(results.length == 0) { | ||
| 74 | // $('.postal-search-results').append("<tr><td>No Results Found</td><td></td><td></td><td></td><td></td></tr>"); | ||
| 75 | // } else { | ||
| 76 | // for(var i = 0;i < results.length;++i) { | ||
| 77 | // $('.postal-search-results').append( | ||
| 78 | // '<tr data-preferred="'+results[i].item['PREFERRED']+'"><td>'+results[i].item.GEOKEY+'</td><td>'+results[i].item.TERRITORY+'</td><td>'+results[i].item['1ST']+'</td><td>'+results[i].item['PREFERRED']+'</td><td>'+results[i].item['REGION']+'</td></tr>' | ||
| 79 | // ); | ||
| 80 | // } | ||
| 81 | // } | ||
| 82 | // } | ||
| 83 | 64 | ||
| 84 | // }); | 65 | if(results[i].item['PREFERRED'] == 'YES') { |
| 66 | $('.preferred').val('YES'); | ||
| 67 | } else if(results[i].item['PREFERRED'] == 'NO') { | ||
| 68 | $('.preferred').val('NO'); | ||
| 69 | } else { | ||
| 70 | $('.preferred').val('UNKNOWN'); | ||
| 71 | } | ||
| 72 | } | ||
| 73 | |||
| 74 | } | ||
| 75 | |||
| 76 | }); | ||
| 85 | 77 | ||
| 86 | }( jQuery )); | 78 | }( jQuery )); |
| ... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
| ... | @@ -447,12 +447,21 @@ table.dataTable + .bottom { | ... | @@ -447,12 +447,21 @@ table.dataTable + .bottom { |
| 447 | 447 | ||
| 448 | .postal-code-inputs { | 448 | .postal-code-inputs { |
| 449 | display: flex; | 449 | display: flex; |
| 450 | align-items: baseline; | ||
| 451 | gap:1rem; | ||
| 450 | & > div { | 452 | & > div { |
| 451 | padding-right:3rem; | 453 | padding-right:3rem; |
| 452 | } | 454 | } |
| 453 | & > input { | 455 | & > input { |
| 454 | font-size: 1rem; | 456 | font-size: 1rem; |
| 455 | } | 457 | } |
| 458 | span { | ||
| 459 | padding-left:0; | ||
| 460 | color: #000; | ||
| 461 | text-align: left; | ||
| 462 | font-family: Helvetica; | ||
| 463 | font-size: 20px; | ||
| 464 | } | ||
| 456 | } | 465 | } |
| 457 | 466 | ||
| 458 | .strategic-child-page { | 467 | .strategic-child-page { | ... | ... |
-
Please register or sign in to post a comment