function bbconnect_search_row($args = '') { $defaults = array('skey' => 0, 'sval' => array(), 'meta_key' => false, 'button' => 'add'); // PARSE THE INCOMING ARGS $args = wp_parse_args($args, $defaults); // EXTRACT THE VARIABLES extract($args, EXTR_SKIP); ?> <li id="<?php echo $skey; ?> " class="query-block query_multilist tn-wrapper"> <span class="query-selections"> <span class="handle"></span> <span id="<?php echo $skey; ?> -parent" class="query-parent-holder" title="<?php echo $skey; ?> "> <?php bbconnect_user_data_select(array('class' => 'query-parent', 'meta_key' => $meta_key, 'value' => $sval)); ?> </span> <span id="<?php echo $skey; ?> -child" class="query-child-holder"> <?php bbconnect_search_form(array('fid' => $meta_key, 'key' => $skey, 'query' => $sval)); ?> </span> </span> <span class="query-buttons"> <?php if ('add' != $button) { $a_style = ' style="display:none;"'; } else { $a_style = ''; } ?> <?php if (1 == $skey) { $s_style = ' style="display:none;"'; } else { $s_style = ''; } ?> <a id="<?php echo $skey; ?> -query-loader" class="query-loader" > </a> <a id="<?php echo $skey; ?> -query-sub" class="query-sub" rel="<?php echo $skey; ?> "<?php echo $s_style; ?> > </a> <a id="<?php echo $skey; ?> -query-add" class="query-add" rel="<?php echo $skey; ?> "<?php echo $a_style; ?> > </a> </span> </li> <?php }
function bbconnect_show_form($args = null) { // SET THE DEFAULTS TO BE OVERRIDDEN AS DESIRED $defaults = array('pid' => false, 'show_msg' => true, 'show_notify' => true, 'show_links' => true, 'column_1' => array(), 'column_2' => array()); // PARSE THE INCOMING ARGS $args = wp_parse_args($args, $defaults); // EXTRACT THE VARIABLES extract($args, EXTR_SKIP); $option = ''; $delete = __('Delete this field', 'bbconnect'); $undo = __('Undo', 'bbconnect'); if (false == $pid) { return false; } $option = '_bbconnect_form_' . $pid; $form = get_option($option); $forms = get_option('_bbconnect_user_forms'); $form_name = $forms[$pid]; ?> <div id="form-data"> <?php if (false != $show_msg) { ?> <div class="options-field"> <h3><?php _e('Messages', 'bbconnect'); ?> </h3> <p><?php printf(__('Add a %1$sgreeting%2$s or instructions to the form.', 'bbconnect'), '<strong>', '</strong>'); ?> </p> <textarea style="height: 100px;" name="_bbc_option[<?php echo $option; ?> ][msg]"><?php if (isset($form['msg'])) { echo bbconnect_scrub('bbconnect_esc_html', $form['msg']); } ?> </textarea> <p><?php printf(__('Add a %1$sthank you%2$s or instructions to the form.', 'bbconnect'), '<strong>', '</strong>'); ?> </p> <textarea style="height: 100px;" name="_bbc_option[<?php echo $option; ?> ][confirm]"><?php if (isset($form['confirm'])) { echo bbconnect_scrub('bbconnect_esc_html', $form['confirm']); } ?> </textarea> </div> <?php } ?> <?php if (false != $show_notify) { $fields = bbconnect_form_notify($form_name); echo '<div class="options-field">'; echo '<h3>' . __('Notifications', 'bbconnect') . '</h3>'; echo '<ul>'; foreach ($fields as $field) { $args['meta'] = $field['meta']; $args['type'] = 'option'; $args['action'] = 'edit'; $args['swap_name'] = array($option); if (is_array($form) && isset($form[$field['meta']['meta_key']])) { $args['post_val'] = $form[$field['meta']['meta_key']]; } else { $args['post_val'] = false; } bbconnect_get_field($args); } echo '</ul>'; echo '</div>'; } /* ?> <div class="options-field"> <h3><?php _e( 'Notifications', 'bbconnect' ); ?></h3> <p><?php printf( __( 'Decide which email addresses should be %1$snotified%2$s after the form is submitted. Multiple emails should be separated by commas.', 'bbconnect' ), '<strong>', '</strong>' ); ?></p> <p><input type="text" class="regular-text" name="_bbc_option[<?php echo $option; ?>][notify]" value="<?php if ( isset( $form['notify'] ) ) { echo bbconnect_scrub( 'bbconnect_esc_html', $form['notify'] ); } else { echo get_option( 'admin_email' ); } ?>" /></p> <p><?php printf( __( 'Set the default %1$ssubject%2$s', 'bbconnect' ), '<strong>', '</strong>.' ); ?></p> <p><input type="text" class="regular-text" name="_bbc_option[<?php echo $option; ?>][subject]" value="<?php if ( isset( $form['subject'] ) ) { echo bbconnect_scrub( 'bbconnect_esc_html', $form['subject'] ); } else { printf( __( '%1$s Submission', 'bbconnect' ), $form_name ); } ?>" /></p> </div> <?php } */ ?> <div class="options-field"> <h3><?php _e('Add fields', 'bbconnect'); ?> </h3> <?php bbconnect_user_data_select(array('id' => 'form-field-select', 's_context' => 'form_api', 'address_unlock' => true)); ?> <a class="button" id="add-form-field" rel="form-field-select"><?php _e('+ Add Field', 'bbconnect'); ?> </a> </div> <div class="options-field"> <div class="inside t-panel" style="display: block;"> <?php // IF IT'S A SYSTEM-GENERATED FORM if ('bbconnect' == $form['source'] || false !== strpos($pid, 'default')) { echo '<input type="hidden" name="_bbc_option[' . $option . '][source]" value="bbconnect" />'; } else { echo '<input type="hidden" name="_bbc_option[' . $option . '][source]" value="user" /></div>'; } // PULL THE SPECIAL FORM FIELDS $form_fields = bbconnect_form_api_fields(); ?> <div id="column_1_holder"> <ul id="column_1" title="<?php echo $option; ?> " class="forms-sortable connected-forms-sortable primary-list column"> <?php // LOOP THROUGH ALL OF THE FIELDS REGISTERED WITH THE SYSTEM // RETRIEVE THEIR VALUES FOR DISPLAY // IF IT'S A GROUP, MAKE A SUBLIST // WE'LL USE DRAG & DROP FOR SORTING if (isset($form['column_1']) && !empty($form['column_1'])) { $column_1 = $form['column_1']; } foreach ($column_1 as $key => $value) { if (isset($form_fields[$value])) { $val_title = esc_attr($form_fields[$value]['name']); } else { $val_arr = bbconnect_get_option($value); $val_title = esc_attr($val_arr['name']); } ?> <li> <div class="t-wrapper"> <div class="t-title"> <span><?php echo $val_title; ?> </span> <span class="right"> <a class="delete" rel="<?php echo $key; ?> " title="<?php echo $delete; ?> "> </a> <a class="undo" rel="<?php echo $key; ?> " title="<?php echo $undo; ?> "> </a> </span> <input class="column-input" type="hidden" id="<?php echo $key; ?> " name="_bbc_option[<?php echo $option; ?> ][column_1][]" value="<?php echo $value; ?> " /> </div> </div> </li> <?php } ?> </ul> </div> <div id="column_2_holder"> <ul id="column_2" title="<?php echo $option; ?> " class="forms-sortable connected-forms-sortable primary-list column"> <?php if (isset($form['column_2']) && !empty($form['column_2'])) { $column_2 = $form['column_2']; } foreach ($column_2 as $key => $value) { if (isset($form_fields[$value])) { $val_title = esc_attr($form_fields[$value]['name']); } else { $val_arr = bbconnect_get_option($value); $val_title = esc_attr($val_arr['name']); } ?> <li> <div class="t-wrapper"> <div class="t-title"> <span><?php echo $val_title; ?> </span> <span class="right"> <a class="delete" rel="<?php echo $key; ?> " title="<?php echo $delete; ?> "> </a> <a class="undo" rel="<?php echo $key; ?> " title="<?php echo undo; ?> "> </a> </span> <input class="column-input" type="hidden" id="<?php echo $key; ?> " name="_bbc_option[<?php echo $option; ?> ][column_2][]" value="<?php echo $value; ?> " /> </div> </div> </li> <?php } ?> </ul> </div> </div> </div> <?php if (false != $show_links) { ?> <div class="options-field"> <h3><?php _e('Display this form', 'bbconnect'); ?> </h3> <?php echo '<p>' . sprintf(__('Use the link, shortcode or menu options below to link to this form. You can replace %1$s with your own text.', 'bbconnect'), '<strong>' . $form_name . '</strong>') . '</p>'; echo '<p class="code-help"><strong>' . __('Embed Shortcode (embeds the form. make sure you have turned on form embedding on the panels tab)', 'bbconnect') . '</strong><br /><textarea readonly class="fin-btn">[bbconnectf id="' . $pid . '"]</textarea></p>'; echo '<p class="code-help"><strong>' . __('Link Shortcode (generates a link)', 'bbconnect') . '</strong><br /><textarea readonly class="fin-btn">[ppf_link id="' . $pid . '" text="' . $form_name . '"]</textarea></p>'; echo '<p class="code-help"><strong>' . __('Local Link', 'bbconnect') . '</strong><br /><textarea readonly class="fin-btn">' . htmlentities('<a class="bbconnectpanels-toggle" title="' . $pid . '" href="' . home_url() . '/bbconnect/?rel=contact&bbc_form=' . $pid . '">') . $form_name . htmlentities('</a>') . '</textarea></p>'; $bbconnectref = urlencode(serialize(array('rel' => 'contact', 'bbc_form' => $pid))); echo '<p class="code-help"><strong>' . __('Direct Link', 'bbconnect') . '</strong><br /><textarea readonly class="fin-btn">' . home_url() . '?bbconnectref=' . $bbconnectref . '</textarea></p>'; bbconnect_add_to_nav_menu($form_name, $pid, '/bbconnect/?rel=contact&bbc_form=' . $pid); ?> </div> <?php } ?> <?php // IF IT'S A SYSTEM-GENERATED FORM if (isset($form['source']) && 'bbconnect' != $form['source']) { if (false === strpos($pid, 'default')) { ?> <div class="options-field"> <h3><?php _e('Delete this form', 'bbconnect'); ?> </h3> <div class="tright inside"><a class="button" id="delete-form" rel="<?php echo $pid; ?> "><?php _e('Delete This Form', 'bbconnect'); ?> </a></div> </div> <?php } } ?> <?php do_action('bbconnect_form_ext_msg', $pid); ?> </div> <script type="text/javascript"> jQuery.noConflict(); jQuery(document).ready(function(){ jQuery('#wpfooter').hide(); jQuery('#show-form').on('click', '.delete', function(){ jQuery(this).closest('li').remove(); }); // SORTING FUNCTION FOR LISTS jQuery(function() { jQuery('.forms-sortable').sortable({ connectWith: '.connected-forms-sortable', appendTo: document.body, placeholder: 'pp-ui-highlight', forcePlaceholderSize: true, forceHelperSize: true, update: function(event, ui) { var cid = jQuery(this).attr('id'); var oid = jQuery(this).attr('title'); var fid = ui.item.attr('id'); ui.item.find('.column-input').attr('name','_bbc_option['+oid+']['+cid+'][]'); } }).disableSelection(); }); jQuery('#add-form-field').click(function(){ //var cref = jQuery(this).previous('select'); var fid = jQuery('#show-form select').val(); var fna = jQuery('#show-form select option:selected').text(); jQuery('<li><div class="t-wrapper"><div class="t-title">'+fna+'<span></span><span class="right"><a class="delete" rel="'+fid+'" title="<?php echo $delete; ?> "> </a><a class="undo" rel="'+fid+'" title="<?php echo $undo; ?> "> </a></span><input class="column-input" type="hidden" id="'+fid+'" name="_bbc_option[<?php echo $option; ?> ][column_1][]" value="'+fid+'" /></div></div></li>').appendTo('#column_1'); return false; }); }); </script> <?php }