function update_form_field()
 {
     $posts = get_posts(array('post_type' => array('wpuf_forms', 'wpuf_profile'), 'numberposts' => '-1'));
     if ($posts) {
         foreach ($posts as $key => $post) {
             $posts_meta = get_post_meta($post->ID, 'wpuf_form', true);
             $posts_meta = is_array($posts_meta) ? $posts_meta : array();
             foreach ($posts_meta as $key => $post_meta) {
                 $post_meta['wpuf_cond'] = array();
                 // if key empty then replace by its value
                 if (array_key_exists('options', $post_meta)) {
                     foreach ($post_meta['options'] as $key => $value) {
                         $post_meta['options'][$value] = $value;
                         unset($post_meta['options'][$key]);
                     }
                 }
                 WPUF_Admin_Form::insert_form_field($post->ID, $post_meta, null, $key);
                 delete_post_meta($post->ID, 'wpuf_form');
             }
         }
     }
 }
Exemple #2
0
 /**
  * Create a post form
  *
  * @return void
  */
 function create_form()
 {
     $form_id = $this->create_page(__('Sample Form', 'wpuf'), '', 'wpuf_forms');
     if ($form_id) {
         $form_fields = array(array('input_type' => 'text', 'template' => 'post_title', 'required' => 'yes', 'label' => 'Post Title', 'name' => 'post_title', 'is_meta' => 'no', 'help' => '', 'css' => '', 'placeholder' => '', 'default' => '', 'size' => '40', 'wpuf_cond' => array()), array('input_type' => 'textarea', 'template' => 'post_content', 'required' => 'yes', 'label' => 'Post Content', 'name' => 'post_content', 'is_meta' => 'no', 'help' => '', 'css' => '', 'rows' => '5', 'cols' => '25', 'placeholder' => '', 'default' => '', 'rich' => 'teeny', 'insert_image' => 'yes', 'wpuf_cond' => array()));
         foreach ($form_fields as $order => $field) {
             WPUF_Admin_Form::insert_form_field($form_id, $field, false, $order);
         }
         $settings = array('post_type' => 'post', 'post_status' => 'publish', 'post_format' => '0', 'default_cat' => '-1', 'guest_post' => 'false', 'guest_details' => 'true', 'name_label' => 'Name', 'email_label' => 'Email', 'message_restrict' => 'This page is restricted. Please Log in / Register to view this page.', 'redirect_to' => 'post', 'message' => 'Post saved', 'page_id' => '', 'url' => '', 'comment_status' => 'open', 'submit_text' => 'Submit', 'draft_post' => 'false', 'edit_post_status' => 'publish', 'edit_redirect_to' => 'same', 'update_message' => 'Post updated successfully', 'edit_page_id' => '', 'edit_url' => '', 'subscription' => '- Select -', 'update_text' => 'Update', 'notification' => array('new' => 'on', 'new_to' => get_option('admin_email'), 'new_subject' => 'New post created', 'new_body' => "Hi Admin, \r\n\r\nA new post has been created in your site %sitename% (%siteurl%). \r\n\r\nHere is the details: \r\nPost Title: %post_title% \r\nContent: %post_content% \r\nAuthor: %author% \r\nPost URL: %permalink% \r\nEdit URL: %editlink%", 'edit' => 'off', 'edit_to' => get_option('admin_email'), 'edit_subject' => 'A post has been edited', 'edit_body' => "Hi Admin, \r\n\r\nThe post \"%post_title%\" has been updated. \r\n\r\nHere is the details: \r\nPost Title: %post_title% \r\nContent: %post_content% \r\nAuthor: %author% \r\nPost URL: %permalink% \r\nEdit URL: %editlink%"));
         update_post_meta($form_id, 'wpuf_form_settings', $settings);
     }
 }
Exemple #3
0
    /**
     * Render conditional logic
     * @param $field_id
     * @param $con_fields
     * @param $obj
     */
    public static function render_conditional_field($field_id, $con_fields, $obj)
    {
        global $form_inputs;
        $cond_name = 'wpuf_cond';
        $con_fields_value = isset($con_fields['wpuf_cond']) ? $con_fields['wpuf_cond'] : array();
        $tpl = '%s[%d][%s]';
        $enable_name = sprintf($tpl, $cond_name, $field_id, 'condition_status');
        $field_name = sprintf('%s[%d][cond_field][]', $cond_name, $field_id);
        $operator_name = sprintf('%s[%d][cond_operator][]', $cond_name, $field_id);
        $option_name = sprintf('%s[%d][cond_option][]', $cond_name, $field_id);
        $logic_name = sprintf('%s[%d][cond_logic]', $cond_name, $field_id);
        // $enable_value = 'yes';
        $class = '';
        // var_dump($field_id, $con_fields);
        $enable_value = isset($con_fields_value['condition_status']) ? $con_fields_value['condition_status'] : 'no';
        $logic_value = isset($con_fields_value['cond_logic']) ? $con_fields_value['cond_logic'] : 'all';
        $class = $enable_value == 'yes' ? '' : ' wpuf-hide';
        ?>
        <div class="wpuf-form-rows">
            <label><?php 
        _e('Conditional Logic', 'wpuf');
        ?>
</label>

            <div class="wpuf-form-sub-fields">
                <label><input type="radio" name="<?php 
        echo $enable_name;
        ?>
" class="wpuf-conditional-enable" value="yes"<?php 
        checked($enable_value, 'yes');
        ?>
> <?php 
        _e('Yes', 'wpuf');
        ?>
</label>
                <label><input type="radio" name="<?php 
        echo $enable_name;
        ?>
" class="wpuf-conditional-enable" value="no"<?php 
        checked($enable_value, 'no');
        ?>
> <?php 
        _e('No', 'wpuf');
        ?>
</label>

                <div class="conditional-rules-wrap<?php 
        echo $class;
        ?>
">
                    <table class="">
                        <?php 
        if ($enable_value == 'yes') {
            //var_dump( $form_inputs );
            //$form_fields = get_post_meta( $post->ID, 'wpuf_form', true );
            $cond_fields = WPUF_Admin_Form::get_conditional_fields($form_inputs);
            $field_dropdown = WPUF_Admin_Form::get_conditional_fields_dropdown($cond_fields['fields']);
            foreach ($con_fields_value['cond_field'] as $key => $field) {
                $cond_fields['options'][$field] = isset($cond_fields['options'][$field]) ? $cond_fields['options'][$field] : array();
                $option_dropdown = WPUF_Admin_Form::get_conditional_option_dropdown($cond_fields['options'][$field]);
                ?>
                                <tr>
                                    <td>
                                        <select name="<?php 
                echo $field_name;
                ?>
" class="wpuf-conditional-fields">
                                            <?php 
                echo wpuf_dropdown_helper($field_dropdown, $con_fields_value['cond_field'][$key]);
                ?>
                                        </select>
                                    </td>
                                    <td>
                                        <select name="<?php 
                echo $operator_name;
                ?>
" class="">
                                            <option value="=" <?php 
                selected($con_fields_value['cond_operator'][$key], '=');
                ?>
>is equal to</option>
                                            <option value="!=" <?php 
                selected($con_fields_value['cond_operator'][$key], '!=');
                ?>
>is not equal to</option>
                                        </select>
                                    </td>
                                    <td>
                                        <select name="<?php 
                echo $option_name;
                ?>
" class="wpuf-conditional-fields-option">
                                            <?php 
                if (array_key_exists($field, $cond_fields['options'])) {
                    echo wpuf_dropdown_helper($option_dropdown, $con_fields_value['cond_option'][$key]);
                }
                ?>
                                        </select>
                                    </td>
                                    <td>
                                        <a class="button wpuf-conditional-plus" href="#">+</a>
                                        <a class="button wpuf-conditional-minus" href="#">-</a>
                                    </td>
                                </tr>
                            <?php 
            }
            ?>
                        <?php 
        } else {
            ?>
                            <tr>
                                <td>
                                    <select name="<?php 
            echo $field_name;
            ?>
" class="wpuf-conditional-fields">
                                        <option value="">- select -</option>
                                    </select>
                                </td>
                                <td>
                                    <select name="<?php 
            echo $operator_name;
            ?>
" class="">
                                        <option value="=">is equal to</option>
                                        <option value="!=">is not equal to</option>
                                    </select>
                                </td>
                                <td>
                                    <select name="<?php 
            echo $option_name;
            ?>
" class="wpuf-conditional-fields-option">
                                        <option value="">- select -</option>
                                    </select>
                                </td>
                                <td>
                                    <a class="button wpuf-conditional-plus" href="#">+</a>
                                    <a class="button wpuf-conditional-minus" href="#">-</a>
                                </td>
                            </tr>
                        <?php 
        }
        ?>
                    </table>


                    <div class="">
                        Show this field when
                        <select name="<?php 
        echo $logic_name;
        ?>
">
                            <option value="all"<?php 
        selected($logic_value, 'all');
        ?>
>all</option>
                            <option value="any"<?php 
        selected($logic_value, 'any');
        ?>
>any</option>
                        </select>
                        these rules are met
                    </div>
                </div>
            </div>
        </div> <!-- .wpuf-form-rows -->
    <?php 
    }
 /**
  * Import json file into database
  * @param  array $file
  * @return boolean
  */
 function import_json_file($file)
 {
     $encode_data = file_get_contents($file);
     $options = json_decode($encode_data, true);
     foreach ($options as $key => $value) {
         $generate_post = array('post_title' => $value['post_data']['post_title'], 'post_status' => $value['post_data']['post_status'], 'post_type' => $value['post_data']['post_type'], 'ping_status' => $value['post_data']['ping_status'], 'comment_status' => $value['post_data']['comment_status']);
         $post_id = wp_insert_post($generate_post, true);
         if ($post_id && !is_wp_error($post_id)) {
             foreach ($value['meta_data']['fields'] as $order => $field) {
                 WPUF_Admin_Form::insert_form_field($post_id, $field, false, $order);
             }
             update_post_meta($post_id, 'wpuf_form_settings', $value['meta_data']['settings']);
         }
     }
     return true;
 }