class-simple-job-board-typography.php 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. <?php
  2. /**
  3. * Simple_Job_Board_Typography Class
  4. *
  5. * Load user defined styles on front-end.
  6. *
  7. * @link https://wordpress.org/plugins/simple-job-board
  8. * @since 2.2.3
  9. * @since 2.4.0 Revised the Color Options with new HTML Design
  10. * @since 2.4.3 Added fonts enabling/disabling feature according to user defined settings.
  11. *
  12. * @package Simple_Job_Board
  13. * @subpackage Simple_Job_Board/public
  14. * @author PressTigers <support@presstigers.com>
  15. */
  16. class Simple_Job_Board_Typography {
  17. /**
  18. * Initialize the class and set its properties.
  19. *
  20. * @since 2.2.3
  21. */
  22. public function __construct() {
  23. // Hook -> Load user Defined Styles
  24. add_action('wp_head', array($this, 'job_board_typography'));
  25. }
  26. /**
  27. * Load user defined styles.
  28. *
  29. * This function includes the user defined styles ( under Job Board> Settings> Appearance Tab )in head section of job listing and detail page.
  30. *
  31. * @since 2.2.3
  32. */
  33. public function job_board_typography() {
  34. // Load Inline Styles Only for SJB Pages
  35. if (is_sjb()) {
  36. global $post;
  37. if (get_option('job_board_typography')) {
  38. $job_board_typography = get_option('job_board_typography');
  39. }
  40. // Job Listing Page Typography
  41. $filters_bg_color = isset($job_board_typography['filters_background_color']) ? esc_attr($job_board_typography['filters_background_color']) : '#f2f2f2';
  42. $job_title_color = isset($job_board_typography['job_listing_title_color']) ? esc_attr($job_board_typography['job_listing_title_color']) : '#3b3a3c';
  43. $heading_color = isset($job_board_typography['headings_color']) ? esc_attr($job_board_typography['headings_color']) : '#3297fa';
  44. $fontawesome_icon_color = isset($job_board_typography['fontawesome_icon_color']) ? esc_attr($job_board_typography['fontawesome_icon_color']) : '#3b3a3c';
  45. $fontawesome_text_color = isset($job_board_typography['fontawesome_text_color']) ? esc_attr($job_board_typography['fontawesome_text_color']) : '#3297fa';
  46. $btn_bg_color = isset($job_board_typography['job_submit_button_background_color']) ? esc_attr($job_board_typography['job_submit_button_background_color']) : '#3297fa';
  47. $btn_color = isset($job_board_typography['job_submit_button_text_color']) ? esc_attr($job_board_typography['job_submit_button_text_color']) : '#fff';
  48. $pagination_text_color = isset($job_board_typography['pagination_text_color']) ? esc_attr($job_board_typography['pagination_text_color']) : '#fff';
  49. $pagination_bg_color = isset($job_board_typography['pagination_background_color']) ? esc_attr($job_board_typography['pagination_background_color']) : '#3297fa';
  50. $enable_fonts = get_option( 'sjb_fonts' ) ? get_option('sjb_fonts') : 'enable-fonts';
  51. ?>
  52. <style type="text/css">
  53. /* SJB Fonts */
  54. <?php if ('enable-fonts' === $enable_fonts) { ?>
  55. .sjb-page {
  56. font-family: "Roboto", sans-serif;
  57. }
  58. <?php } ?>
  59. /* Job Filters Background Color */
  60. .sjb-page .sjb-filters
  61. {
  62. background-color: <?php echo $filters_bg_color; ?>;
  63. }
  64. /* Listing & Detail Page Title Color */
  65. .sjb-page .list-data .job-info h4 a
  66. {
  67. color: <?php echo $job_title_color; ?>;
  68. }
  69. /* Job Detail Page Headings */
  70. .sjb-page .sjb-detail .list-data h3,
  71. .sjb-page .sjb-detail .list-data ul li::before,
  72. .sjb-page .sjb-detail .list-data .job-detail h3,
  73. .sjb-page .sjb-archive-page .job-title
  74. {
  75. color: <?php echo $heading_color; ?>;
  76. }
  77. /* Fontawesome Icon Color */
  78. .sjb-page .list-data .job-type i,
  79. .sjb-page .list-data .job-location i,
  80. .sjb-page .list-data .job-date i
  81. {
  82. color: <?php echo $fontawesome_icon_color; ?>;
  83. }
  84. /* Fontawesome Text Color */
  85. .sjb-page .list-data .job-type,
  86. .sjb-page .list-data .job-location,
  87. .sjb-page .list-data .job-date
  88. {
  89. color: <?php echo $fontawesome_text_color; ?>;
  90. }
  91. /* Job Filters-> All Buttons Background Color */
  92. .sjb-page .btn-primary,
  93. .sjb-page .btn-primary:hover,
  94. .sjb-page .btn-primary:active:hover,
  95. .sjb-page .btn-primary:active:focus,
  96. .sjb-page .sjb-detail .jobpost-form .file div,
  97. .sjb-page .sjb-detail .jobpost-form .file:hover div
  98. {
  99. background-color: <?php echo $btn_bg_color; ?>;
  100. color: <?php echo $btn_color; ?>;
  101. }
  102. /* Pagination Text Color */
  103. /* Pagination Background Color */
  104. .sjb-page .pagination li.list-item span.current,
  105. .sjb-page .pagination li.list-item a:hover,
  106. .sjb-page .pagination li.list-item span.current:hover
  107. {
  108. background: <?php echo $pagination_bg_color; ?>;
  109. border-color: <?php echo $pagination_bg_color; ?>;
  110. color: <?php echo $pagination_text_color; ?>;
  111. }
  112. </style>
  113. <?php
  114. }
  115. }
  116. }
  117. new Simple_Job_Board_Typography();