rdusnr

Untitled

Dec 20th, 2016
201
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.43 KB | None | 0 0
  1.  
  2. add_action ('kleo_bp_search_form', 'kleo_bp_search_form');
  3.  
  4. /* Render search form */
  5. if (!function_exists('kleo_bp_search_form')):
  6.  
  7. /**
  8. * Renders a members profile search form
  9. * @global array $bp_search_fields Options form Theme options
  10. * @param bool $show_profiles Display members carouses under the form
  11. * @param string $before_form Text to display before the form fields
  12. * @return string
  13. */
  14. function kleo_bp_search_form ($show_profiles = false, $before_form = false)
  15. {
  16. global $bp_search_fields;
  17. if (function_exists('bp_is_active') && bp_is_active( 'xprofile' )) {}
  18. else
  19. {
  20. echo __("Please enable Buddypress and Extended profiles component for the search form!","kleo_framework");
  21. return;
  22. }
  23.  
  24. if (!isset($bp_search_fields['fields']) || count ((array)$bp_search_fields['fields']) == 0)
  25. {
  26. echo "<p>".__("Please configure your form fields under Sweetdate - Buddypress", 'kleo_framework')."</p>";
  27. return;
  28. }
  29.  
  30. ?>
  31. <!--Form wrapper-->
  32. <div class="form-wrapper">
  33. <div class="form-header">
  34. <?php if ($before_form || (isset($bp_search_fields['before_form']) && !empty($bp_search_fields['before_form']) ) ) : ?>
  35. <p class="lead"><?php if($before_form) echo __($before_form, 'kleo_framework'); else echo __($bp_search_fields['before_form'],'kleo_framework');?></p>
  36. <?php endif; ?>
  37. </div>
  38. <!--Search form-->
  39. <form action="<?php echo bp_get_root_domain (). '/'. bp_get_members_root_slug (). '/' ?>" method="get" class="<?php echo apply_filters('bp_search_extra_class','custom');?> form-search">
  40. <?php
  41.  
  42. foreach ($bp_search_fields['fields'] as $sf)
  43. {
  44. $fname = 'field_'. $sf;
  45. $posted = isset($_GET[$fname])?$_GET[$fname]:'';
  46. $posted_to = isset($_GET[$fname. '_to'])?$_GET[$fname. '_to']:'';
  47.  
  48. $field = new BP_XProfile_Field ($sf);
  49. $options = $field->get_children();
  50. if ( isset( $bp_search_fields['agerange'] ) && $sf == $bp_search_fields['agerange'] )
  51. {
  52. $from = ($posted == '')? sq_option('buddypress_age_start'): (int)$posted;
  53. $to = ($posted_to == '')? sq_option('buddypress_age_end'): (int)$posted_to;
  54. if ($to < $from) $to = $from;
  55.  
  56. echo'<div class="row">
  57. <div class="five mobile-one columns">';
  58. echo "<label class='right inline'>".__( (isset($bp_search_fields['agelabel'])?$bp_search_fields['agelabel']:$field->name), 'kleo_framework')."</label>";
  59. echo '</div>';
  60. echo '<div class="three mobile-one columns">
  61. <select name="'.$fname.'" class="expand customDropdown">';
  62. echo apply_filters('kleo_bp_searchform_before_all_li','<option value=""> </option>');
  63. for($i=sq_option('buddypress_age_start');$i <= sq_option('buddypress_age_end');$i++)
  64. {
  65. echo '<option value="'.$i.'" '.get_selected($fname, $i, $from).' >'.$i.'</option>';
  66. }
  67. echo '</select>
  68. </div>
  69. <div class="one mobile-one columns text-center">
  70. <label class="inline"> - </label>
  71. </div>';
  72. echo '<div class="three mobile-one columns">
  73. <select name="'.$fname.'_to" class="expand customDropdown">';
  74. echo apply_filters('kleo_bp_searchform_before_all_li','<option value=""> </option>');
  75. for($i=sq_option('buddypress_age_start');$i <= sq_option('buddypress_age_end');$i++)
  76. {
  77. echo '<option value="'.$i.'" '.get_selected($fname.'_to', $i, $to).' >'.$i.'</option>';
  78. }
  79. echo ' </select>
  80. </div>
  81. </div><!--end row-->';
  82. continue;
  83. }
  84.  
  85. if ($sf == $bp_search_fields['numrange'])
  86. {
  87. $from = ($posted == '' && $posted_to == '')? '': (float)$posted;
  88. $to = ($posted_to == '')? $from: (float)$posted_to;
  89. if ($to < $from) $to = $from;
  90.  
  91. echo'<div class="row">
  92. <div class="five mobile-one columns">';
  93. echo "<label class='right inline'>".__( $field->name, 'kleo_framework')."</label>";
  94. echo '</div>';
  95. echo '<div class="three mobile-one columns">
  96. <input type="text" name="'.$fname.'" value="'.$from.'" >
  97. </div>
  98. <div class="one mobile-one columns text-center">
  99. <label class="inline"> - </label>
  100. </div>';
  101. echo '<div class="three mobile-one columns">
  102. <input type="text" name="'.$fname.'_to" value="'.$to.'" >
  103. </div>
  104. </div><!--end row-->';
  105.  
  106. continue;
  107. }
  108.  
  109. echo '<div class="row">';
  110.  
  111.  
  112. switch ($field->type):
  113.  
  114. case 'textarea':
  115. $value = esc_attr (stripslashes ($posted));
  116. echo "<div class='five mobile-four columns'><label class='right inline' for='$fname'>".__($field->name,'kleo_framework')."</label></div>";
  117. echo "<div class='seven mobile-four columns kleo-textarea'><input type='text' name='$fname' id='$fname' value='$value' /></div>";
  118. break;
  119.  
  120. case 'selectbox':
  121. echo "<div class='five mobile-four columns'><label class='right inline' for='$fname'>".__($field->name,'kleo_framework')."</label></div>";
  122. echo "<div class='seven mobile-four columns kleo-selectbox'><select class='expand' name='$fname' id='$fname'>";
  123. echo "<option value=''> </option>";
  124. foreach ($options as $option)
  125. {
  126. $option->name = trim ($option->name);
  127. $value = esc_attr (stripslashes ($option->name));
  128. $selected = ($option->name == $posted || $option->is_default_option == 1)? "selected='selected'": "";
  129. echo "<option $selected value='$value'>".__($value,'kleo_framework')."</option>";
  130. }
  131. echo "</select></div>";
  132. break;
  133.  
  134. case 'multiselectbox':
  135. echo "<div class='five mobile-four columns'><label class='right inline' for='$fname'>".__($field->name,'kleo_framework')."</label></div>";
  136. echo "<div class='seven mobile-four columns kleo-multiselectbox'><select ".apply_filters('kleo_bp_search_multiselect_attributes',"multiple='multiple' data-customforms='disabled'")." class='expand' name='{$fname}[]' id='$fname'>";
  137. foreach ($options as $option)
  138. {
  139. $option->name = trim ($option->name);
  140. $value = esc_attr (stripslashes ($option->name));
  141. $selected = (in_array ($option->name, (array)$posted) || $option->is_default_option == 1)? "selected='selected'": "";
  142. echo "<option $selected value='$value'>".__($value,'kleo_framework')."</option>";
  143. }
  144. echo "</select></div>";
  145. break;
  146.  
  147. case 'radio':
  148. echo "<div class='five mobile-four columns'><label class='right'>".__($field->name,'kleo_framework')."<br>";
  149. echo "<a class='clear-value-".$fname."' href='#'><small class='kleo-clear-radio'><i class='icon icon-remove'></i> ". __('Clear', 'kleo_framework'). "</small></a>";
  150. ?>
  151. <script type="text/javascript">jQuery('.clear-value-<?php echo $fname;?>').click(function() {jQuery('input[name=<?php echo $fname;?>]').attr('checked', false); jQuery('.field_<?php echo $fname;?> .custom.radio').removeClass('checked');return false; });</script>
  152. <?php
  153. echo "</label></div>";
  154. echo "<div class='seven mobile-four columns kleo-radio field_".$fname."'>";
  155.  
  156. foreach ($options as $option)
  157. {
  158. $option->name = trim ($option->name);
  159. $value = esc_attr (stripslashes ($option->name));
  160. $selected = ($option->name == $posted || $option->is_default_option == 1)? "checked='checked'": "";
  161. echo "<label><input $selected type='radio' name='$fname' value='$value'> ".__($value,'kleo_framework')."</label>";
  162. }
  163. echo '</div>';
  164. break;
  165.  
  166. case 'checkbox':
  167. echo "<div class='five mobile-four columns'><label class='right'>".__($field->name,'kleo_framework')."</label></div>";
  168. echo "<div class='seven mobile-four columns kleo-checkbox'>";
  169.  
  170. foreach ($options as $option)
  171. {
  172. $option->name = trim ($option->name);
  173. $value = esc_attr (stripslashes ($option->name));
  174. $selected = (in_array ($option->name, (array)$posted) || $option->is_default_option == 1)? "checked='checked'": "";
  175. echo "<label><input $selected type='checkbox' name='{$fname}[]' value='$value'> ".__($value,'kleo_framework')."</label>";
  176. }
  177. echo '</div>';
  178. break;
  179.  
  180. case 'textbox':
  181. default:
  182. $value = esc_attr (stripslashes ($posted));
  183. echo "<div class='five mobile-four columns'><label class='right inline' for='$fname'>".__($field->name,'kleo_framework')."</label></div>";
  184. echo "<div class='seven mobile-four columns kleo-text'><input placeholder='Enter Your". $field->name."' type='text' name='$fname' id='$fname' value='$value' /></div>";
  185. break;
  186.  
  187. endswitch;
  188. echo '</div><!--end row-->';
  189. }
  190.  
  191. echo "<input type='hidden' name='bs' value=' ' />";
  192. do_action('kleo_bp_search_add_data');
  193. ?>
  194. <div class="row">
  195. <div class="seven offset-by-five columns"><button class="button radius"><i class="icon-search"></i> &nbsp;<?php _e("SEARCH", 'kleo_framework'); ?></button></div>
  196. </div>
  197. <span class="notch"></span>
  198. </form>
  199. <!--end search form-->
  200.  
  201. <?php if ($show_profiles): ?>
  202. <!--Form footer-->
  203. <div class="form-footer">
  204.  
  205. <?php do_action('kleo_bps_before_carousel');?>
  206.  
  207. <?php echo do_shortcode('[kleo_members_carousel]');?>
  208.  
  209. </div><!--end form-footer-->
  210. <?php else: ?>
  211. <?php $main_color_rgb = hexToRGB(sq_option('button_bg_color_hover')); ?>
  212. <div class="form-footer" style="border-left:none;border-right: none;padding:0;background: <?php echo sq_option('button_bg_color'); ?>; <?php echo 'border-bottom: 10px solid rgba('.$main_color_rgb['r'].', '.$main_color_rgb['g'].', '.$main_color_rgb['b'].', 0.3)'; ?>"></div>
  213.  
  214. <?php endif; ?>
  215.  
  216. </div><!--end form-wrapper-->
  217.  
  218. <?php
  219. }
  220. endif;
Advertisement
Add Comment
Please, Sign In to add comment