Beispiel #1
0
/**
 * Function that outputs the HTML of the confirm page.
 *
 * @since 1.0.3
 * @return $output
 */
function ninja_forms_mp_output_confirm_page($form_id)
{
    global $nf_mp_confirm_title, $ninja_forms_processing, $ninja_forms_fields;
    // Get the pages for the current form.
    $pages = $ninja_forms_processing->get_form_setting('mp_pages');
    if (is_array($pages)) {
        if (is_object($ninja_forms_processing)) {
            ?>
			<div id="mp_confirm_msg" class="ninja-forms-mp-confirm-msg"><?php 
            echo $ninja_forms_processing->get_form_setting('mp_confirm_msg');
            ?>
</div>
			<?php 
        } else {
            $html = '';
        }
        $current_page = $ninja_forms_processing->get_extra_value('_current_page');
        foreach ($pages as $num => $vars) {
            if (function_exists('ninja_forms_conditionals_field_filter')) {
                $show = ninja_forms_mp_check_page_conditional($form_id, $num);
            } else {
                $show = true;
            }
            //if ( $show ) {
            $show_title = true;
            if (isset($vars['page_title']) and $vars['page_title'] != '') {
                $first_field = $vars['first_field'];
                $nf_mp_confirm_title[$first_field] = $vars['page_title'];
                add_action('ninja_forms_display_before_field', 'ninja_forms_mp_output_confirm_page_titles', 10.5, 2);
            }
            foreach ($vars['fields'] as $field_id) {
                $field = $ninja_forms_processing->get_field_settings($field_id);
                if ($show) {
                    $ninja_forms_processing->update_extra_value('_current_page', $num);
                } else {
                    $ninja_forms_processing->update_extra_value('_current_page', 0);
                }
                if (isset($ninja_forms_fields[$field['type']])) {
                    $field_type = $field['type'];
                    $type = $ninja_forms_fields[$field['type']];
                    if (isset($field['data']['req'])) {
                        $req = $field['data']['req'];
                    } else {
                        $req = '';
                    }
                    $default_label_pos = $type['default_label_pos'];
                    $display_wrap = $type['display_wrap'];
                    $display_label = $type['display_label'];
                    $sub_edit_function = $type['sub_edit_function'];
                    $display_function = $type['display_function'];
                    //Check to see if we are currently editing a form submission.
                    //If we are, then $display_function should be set to the sub_edit_function instead.
                    if (is_object($ninja_forms_processing)) {
                        $sub_id = $ninja_forms_processing->get_form_setting('sub_id');
                    } else {
                        if (isset($_REQUEST['sub_id'])) {
                            $sub_id = $_REQUEST['sub_id'];
                        } else {
                            $sub_id = '';
                        }
                    }
                    if ($sub_id != '' and $sub_edit_function != '') {
                        //$display_function = $sub_edit_function;
                    }
                    $process_field = $type['process_field'];
                    $data = $field['data'];
                    //These filters can be used to temporarily modify the settings of a field, i.e. default_value.
                    $data = apply_filters('ninja_forms_field', $data, $field_id);
                    //Check the show_field value of our $data array. If it is set to false, don't output the field.
                    if (isset($data['show_field'])) {
                        $show_field = $data['show_field'];
                    } else {
                        $show_field = true;
                    }
                    if (isset($data['display_style'])) {
                        $display_style = $data['display_style'];
                    } else {
                        $display_style = '';
                    }
                    if ($display_function != '' and $show_field) {
                        if (isset($data['label_pos'])) {
                            $label_pos = $data['label_pos'];
                        } else {
                            $label_pos = '';
                        }
                        if ($label_pos == '') {
                            $label_pos = $default_label_pos;
                        }
                        if (isset($data['visible'])) {
                            $visible = $data['visible'];
                        } else {
                            $visible = true;
                        }
                        do_action('ninja_forms_display_before_field', $field_id, $data);
                        //Check to see if display_wrap has been disabled. If it hasn't, show the wrapping DIV.
                        if ($display_wrap) {
                            $field_wrap_class = ninja_forms_get_field_wrap_class($field_id);
                            $field_wrap_class = apply_filters('ninja_forms_field_wrap_class', $field_wrap_class, $field_id);
                            do_action('ninja_forms_display_before_opening_field_wrap', $field_id, $data);
                            ?>
								<div class="<?php 
                            echo $field_wrap_class;
                            ?>
" style="<?php 
                            echo $display_style;
                            ?>
" id="ninja_forms_field_<?php 
                            echo $field_id;
                            ?>
_div_wrap" data-visible="<?php 
                            echo $visible;
                            ?>
">
								<?php 
                            do_action('ninja_forms_display_after_opening_field_wrap', $field_id, $data);
                        }
                        //Check to see if display_label has been disabled. If it hasn't, show the label.
                        if ($display_label) {
                            if ($label_pos == 'left' or $label_pos == 'above') {
                                // Check the label position variable. If it is left or above, show the label.
                                do_action('ninja_forms_display_before_field_label', $field_id, $data);
                                do_action('ninja_forms_display_field_label', $field_id, $data);
                                do_action('ninja_forms_display_after_field_label', $field_id, $data);
                            }
                        }
                        //Check to see if there is a registered display function. If so, call it.
                        if ($display_function != '') {
                            do_action('ninja_forms_display_before_field_function', $field_id, $data);
                            $arguments['field_id'] = $field_id;
                            $arguments['data'] = $data;
                            call_user_func_array($display_function, $arguments);
                            do_action('ninja_forms_display_after_field_function', $field_id, $data);
                            if ($label_pos == 'left' or $label_pos == 'inside') {
                                do_action('ninja_forms_display_field_help', $field_id, $data);
                            }
                        }
                        //Check to see if display_label has been disabled. If it hasn't, show the label.
                        if ($display_label) {
                            if ($label_pos == 'right' or $label_pos == 'below') {
                                // Check the label position variable. If it is right or below, show the label.
                                do_action('ninja_forms_display_before_field_label', $field_id, $data);
                                do_action('ninja_forms_display_field_label', $field_id, $data);
                                do_action('ninja_forms_display_after_field_label', $field_id, $data);
                            }
                        }
                        //Check to see if display_wrap has been disabled. If it hasn't close the wrapping DIV
                        if ($display_wrap) {
                            do_action('ninja_forms_display_before_closing_field_wrap', $field_id, $data);
                            ?>
								</div>
								<?php 
                            do_action('ninja_forms_display_after_closing_field_wrap', $field_id, $data);
                        }
                        do_action('ninja_forms_display_after_field', $field_id, $data);
                    }
                }
            }
            $ninja_forms_processing->update_extra_value('_current_page', $current_page);
        }
        ?>
			<input type="hidden" id="mp_confirm_page" name="_mp_confirm" value="1">
			<?php 
    }
}
Beispiel #2
0
/**
 * Outputs the HTML for the Multi-Part Form Breadcrumb Navigation.
 *
**/
function ninja_forms_mp_display_breadcrumb($form_id)
{
    global $ninja_forms_loading, $ninja_forms_processing;
    if (isset($ninja_forms_loading)) {
        $form_data = $ninja_forms_loading->get_all_form_settings();
        $pages = $ninja_forms_loading->get_form_setting('mp_pages');
    } else {
        $form_data = $ninja_forms_processing->get_all_form_settings();
        $pages = $ninja_forms_processing->get_form_setting('mp_pages');
    }
    if (isset($form_data['multi_part']) and $form_data['multi_part'] == 1) {
        $display = 1;
        $display = apply_filters('ninja_forms_mp_display_breadcrumbs_visbility', $display, $form_id);
        if ($display == 1) {
            $display = '';
        } else {
            $display = 'display:none;';
        }
        $page_count = count($pages);
        if (is_object($ninja_forms_processing)) {
            $current_page = $ninja_forms_processing->get_extra_value('_current_page');
        } else {
            $current_page = 1;
        }
        if (isset($form_data['mp_breadcrumb']) and $form_data['mp_breadcrumb'] == 1) {
            ?>
			<ul id="ninja_forms_form_<?php 
            echo $form_id;
            ?>
_mp_breadcrumbs" class="ninja-forms-mp-breadcrumbs" style="<?php 
            echo $display;
            ?>
">
				<?php 
            if (is_array($pages) and !empty($pages)) {
                foreach ($pages as $number => $page) {
                    $show = ninja_forms_mp_check_page_conditional($form_id, $number);
                    if ($show) {
                        $style = '';
                    } else {
                        $style = 'display:none;';
                    }
                    if ($number == $current_page) {
                        $class = 'ninja-forms-mp-breadcrumb-active ninja-forms-form-' . $form_id . '-mp-breadcrumb-active';
                    } else {
                        $class = 'ninja-forms-mp-breadcrumb-inactive ninja-forms-form-' . $form_id . '-mp-breadcrumb-inactive';
                    }
                    ?>
						<li>
							<input type="submit" id="ninja_forms_field_<?php 
                    echo $page['id'];
                    ?>
_breadcrumb" name="_mp_page_<?php 
                    echo $number;
                    ?>
" value="<?php 
                    echo $page['page_title'];
                    ?>
" class="<?php 
                    echo $class;
                    ?>
 ninja-forms-mp-nav" rel="<?php 
                    echo $number;
                    ?>
" style="<?php 
                    echo $style;
                    ?>
">
						</li>
						<?php 
                }
            }
            ?>
			</ul>
			<?php 
        }
        ?>
		<ul style="display:none;">
		<?php 
        if (is_array($pages) and !empty($pages)) {
            foreach ($pages as $page => $vars) {
                $field_id = $vars['id'];
                //Figure out if this page should be hidden.
                if (function_exists('ninja_forms_mp_check_page_conditional')) {
                    $show = ninja_forms_mp_check_page_conditional($form_id, $page);
                } else {
                    $show = true;
                }
                if ($show) {
                    $show = 1;
                } else {
                    $show = 0;
                }
                if ($page == $current_page) {
                    $class = 'ninja-forms-form-' . $form_id . '-mp-page-list-active';
                } else {
                    $class = 'ninja-forms-form-' . $form_id . '-mp-page-list-inactive';
                }
                ?>
				<li>
					<input type="hidden" id="ninja_forms_field_<?php 
                echo $field_id;
                ?>
" value="<?php 
                echo $show;
                ?>
" rel="<?php 
                echo $page;
                ?>
" class="<?php 
                echo $class;
                ?>
 ninja-forms-form-<?php 
                echo $form_id;
                ?>
-mp-page-show">
					<input type="hidden" id="ninja_forms_field_<?php 
                echo $field_id;
                ?>
_type" value="_page_divider">
				</li>
				<?php 
            }
        }
        ?>
		</ul>
		<?php 
    }
}
Beispiel #3
0
function ninja_forms_mp_nav($form_id)
{
    global $ninja_forms_loading, $ninja_forms_processing;
    if (isset($ninja_forms_loading)) {
        $form_data = $ninja_forms_loading->get_all_form_settings();
        $all_fields = $ninja_forms_loading->get_all_fields();
        $pages = $ninja_forms_loading->get_form_setting('mp_pages');
    } else {
        $form_data = $ninja_forms_processing->get_all_form_settings();
        $all_fields = $ninja_forms_processing->get_all_fields();
        $pages = $ninja_forms_processing->get_form_setting('mp_pages');
    }
    if (isset($form_data['multi_part'])) {
        $multi_part = $form_data['multi_part'];
    } else {
        $multi_part = 0;
    }
    if (isset($form_data['ajax'])) {
        $ajax = 1;
    } else {
        $ajax = 0;
    }
    $ajax = 1;
    if ($multi_part == 1) {
        if (isset($_REQUEST['_current_page'])) {
            $current_page = $_REQUEST['_current_page'];
        } else {
            $current_page = 1;
        }
        if (is_object($ninja_forms_processing) and $ninja_forms_processing->get_extra_value('_current_page') and $form_id == $ninja_forms_processing->get_form_ID()) {
            $current_page = $ninja_forms_processing->get_extra_value('_current_page');
        }
        if (is_object($ninja_forms_processing) and $ninja_forms_processing->get_form_setting('sub_id')) {
            $sub_id = $ninja_forms_processing->get_form_setting('sub_id');
        } else {
            $sub_id = '';
        }
        if (is_object($ninja_forms_processing) and $ninja_forms_processing->get_error('confirm-submit') !== false) {
            $confirm = true;
        } else {
            $confirm = false;
        }
        $page_count = count($pages);
        $x = $current_page + 1;
        $show_next = false;
        while ($x <= $page_count) {
            if (ninja_forms_mp_check_page_conditional($form_id, $x)) {
                $show_next = true;
                break;
            }
            $x++;
        }
        if (!$confirm) {
            $style = '';
        } else {
            $style = 'style="display:none;"';
        }
        if ($sub_id != '') {
            ?>
			<input type="hidden" name="_sub_id" value="<?php 
            echo $sub_id;
            ?>
">
			<?php 
        }
        ?>
		
		<input type="hidden" name="_current_page" value="<?php 
        echo $current_page;
        ?>
">
		<div id="ninja_forms_form_<?php 
        echo $form_id;
        ?>
_mp_nav_wrap" class="ninja-forms-mp-nav-wrap" <?php 
        echo $style;
        ?>
>
			<?php 
        if ($ajax == 1) {
            if ($current_page == 1 and $current_page < $page_count) {
                $prev_style = 'display:none;';
                $next_style = '';
                if (!$show_next) {
                    $next_style = 'display:none;';
                }
            } else {
                if ($current_page > 1 and $current_page < $page_count) {
                    $prev_style = '';
                    $next_style = '';
                    if (!$show_next) {
                        $next_style = 'display:none;';
                    }
                } else {
                    if ($current_page == $page_count) {
                        $prev_style = '';
                        $next_style = 'display:none;';
                    }
                }
            }
            ?>
				<input type="submit" name="_prev" class="ninja-forms-mp-nav ninja-forms-mp-prev" id="ninja_forms_form_<?php 
            echo $form_id;
            ?>
_mp_prev" value="<?php 
            _e('Previous', 'ninja-forms-mp');
            ?>
" style="<?php 
            echo $prev_style;
            ?>
">
				<input type="submit" name="_next" class="ninja-forms-mp-nav ninja-forms-mp-next" id="ninja_forms_form_<?php 
            echo $form_id;
            ?>
_mp_next" value="<?php 
            _e('Next', 'ninja-forms-mp');
            ?>
" style="<?php 
            echo $next_style;
            ?>
">	
				<?php 
        } else {
            if ($current_page != 1 and $next_style) {
                ?>
					<input type="submit" name="_prev" class="ninja-forms-mp-nav ninja-forms-mp-prev" id="ninja_forms_form_<?php 
                echo $form_id;
                ?>
_mp_prev" value="<?php 
                _e('Previous', 'ninja-forms-mp');
                ?>
">
					<?php 
            }
            if ($current_page < $page_count) {
                ?>
					<input type="submit" name="_next" class="ninja-forms-mp-nav ninja-forms-mp-next" id="ninja_forms_form_<?php 
                echo $form_id;
                ?>
_mp_next" value="<?php 
                _e('Next', 'ninja-forms-mp');
                ?>
">
					<?php 
            }
        }
        ?>
		</div>
		<?php 
    }
}
Beispiel #4
0
function ninja_forms_mp_breadcrumb_update_current_page()
{
    global $ninja_forms_processing;
    $form_id = $ninja_forms_processing->get_form_ID();
    $nav = '';
    $all_extras = $ninja_forms_processing->get_all_extras();
    if (is_array($all_extras) and !empty($all_extras)) {
        foreach ($all_extras as $key => $val) {
            if (strpos($key, '_mp_page_') !== false) {
                $nav = str_replace('_mp_page_', '', $key);
                $ninja_forms_processing->update_extra_value('_current_page', $nav);
                $show = ninja_forms_mp_check_page_conditional($form_id, $nav);
                if (!$show) {
                    $ninja_forms_processing->update_extra_value('_prev', 'Previous');
                    ninja_forms_mp_nav_update_current_page();
                }
            }
        }
    }
    return $nav;
}