/**
  * Get the default date format for a field based on the field ID and the time format setting
  *
  * @since 1.16.4
  * @param string $date_format The Gravity Forms date format for the field. Default: "mdy"
  * @param int $field_id The ID of the field. Used to figure out full date/day/month/year
  *
  * @return string PHP date format for the date
  */
 public static function date_display($value = '', $date_format = 'mdy', $field_id = 0)
 {
     // Let Gravity Forms figure out, based on the date format, what day/month/year values are.
     $parsed_date = GFCommon::parse_date($value, $date_format);
     // Are we displaying an input or the whole field?
     $field_input_id = gravityview_get_input_id_from_id($field_id);
     $date_field_output = '';
     switch ($field_input_id) {
         case 1:
             $date_field_output = rgar($parsed_date, 'day');
             break;
         case 2:
             $date_field_output = rgar($parsed_date, 'month');
             break;
         case 3:
             $date_field_output = rgar($parsed_date, 'year');
             break;
     }
     /**
      * @filter `gravityview_date_format` Whether to override the Gravity Forms date format with a PHP date format
      * @see https://codex.wordpress.org/Formatting_Date_and_Time
      * @param null|string Date Format (default: $field->dateFormat)
      */
     $full_date_format = apply_filters('gravityview_date_format', $date_format);
     $full_date = GFCommon::date_display($value, $full_date_format);
     // If the field output is empty, use the full date.
     // Note: The output might be empty because $parsed_date didn't parse correctly.
     return '' === $date_field_output ? $full_date : $date_field_output;
 }
 /**
  * get HTML for input and label for date field (as date picker)
  * @param array $field
  * @param string $value
  * @param integer $lead_id
  * @param integer $form_id
  * @return string
  */
 protected function fieldDate($field, $value = "", $lead_id = 0, $form_id = 0)
 {
     $id = $field['id'];
     $sub_id = $field['sub_id'];
     $field_id = IS_ADMIN || $form_id == 0 ? "gfeway_{$id}_{$sub_id}" : "gfeway_{$form_id}_{$id}_{$sub_id}";
     $form_id = IS_ADMIN && empty($form_id) ? rgget('id') : $form_id;
     $format = empty($field['dateFormat']) ? 'dmy' : esc_attr($field['dateFormat']);
     $size = rgar($field, 'size');
     $disabled_text = IS_ADMIN && RG_CURRENT_VIEW != 'entry' ? 'disabled="disabled"' : '';
     $class_suffix = RG_CURRENT_VIEW == 'entry' ? '_admin' : '';
     $value = GFCommon::date_display($value, $format);
     $icon_class = $field['calendarIconType'] == 'none' ? 'datepicker_no_icon' : 'datepicker_with_icon';
     $icon_url = empty($field['calendarIconUrl']) ? GFCommon::get_base_url() . '/images/calendar.png' : $field['calendarIconUrl'];
     $tabindex = GFCommon::get_tabindex();
     $inputClass = array($size . $class_suffix, $format, $icon_class);
     $spanClass = array('gfeway_recurring_left', 'gfeway_recurring_date');
     if (empty($field['hidden'])) {
         $inputClass[] = 'datepicker';
     } else {
         $spanClass[] = 'gf_hidden';
     }
     $dataMin = '';
     if (!empty($field['dateMin'])) {
         $dataMin = sprintf('data-gfeway-minDate="%s"', esc_attr($field['dateMin']));
     }
     $dataMax = '';
     if (!empty($field['dateMax'])) {
         $dataMax = sprintf('data-gfeway-maxDate="%s"', esc_attr($field['dateMax']));
     }
     $value = esc_attr($value);
     $spanClass = esc_attr(implode(' ', $spanClass));
     $inputClass = esc_attr(implode(' ', $inputClass));
     $inputName = sprintf('gfeway_%s[%s]', $id, $sub_id);
     $label = esc_html($field['label']);
     ob_start();
     require GFEWAY_PLUGIN_ROOT . 'views/recurring-field-input-date.php';
     $input = ob_get_clean();
     return $input;
 }
 public static function create_post($form, &$lead)
 {
     GFCommon::log_debug('GFFormsModel::create_post(): Starting.');
     $has_post_field = false;
     foreach ($form['fields'] as $field) {
         $is_hidden = self::is_field_hidden($form, $field, array(), $lead);
         if (!$is_hidden && in_array($field->type, array('post_category', 'post_title', 'post_content', 'post_excerpt', 'post_tags', 'post_custom_field', 'post_image'))) {
             $has_post_field = true;
             break;
         }
     }
     //if this form does not have any post fields, don't create a post
     if (!$has_post_field) {
         GFCommon::log_debug("GFFormsModel::create_post(): Stopping. The form doesn't have any post fields.");
         return $lead;
     }
     //processing post fields
     GFCommon::log_debug('GFFormsModel::create_post(): Getting post fields.');
     $post_data = self::get_post_fields($form, $lead);
     //allowing users to change post fields before post gets created
     $post_data = gf_apply_filters('gform_post_data', $form['id'], $post_data, $form, $lead);
     //adding default title if none of the required post fields are in the form (will make sure wp_insert_post() inserts the post)
     if (empty($post_data['post_title']) && empty($post_data['post_content']) && empty($post_data['post_excerpt'])) {
         $post_data['post_title'] = self::get_default_post_title();
     }
     // remove original post status and save it for later
     $post_status = $post_data['post_status'];
     // replace original post status with 'draft' so other plugins know this post is not fully populated yet
     $post_data['post_status'] = 'draft';
     // inserting post
     GFCommon::log_debug('GFFormsModel::create_post(): Inserting post via wp_insert_post().');
     $post_id = wp_insert_post($post_data);
     GFCommon::log_debug("GFFormsModel::create_post(): Result from wp_insert_post(): {$post_id}.");
     //adding form id and entry id hidden custom fields
     add_post_meta($post_id, '_gform-form-id', $form['id']);
     add_post_meta($post_id, '_gform-entry-id', $lead['id']);
     //creating post images
     GFCommon::log_debug('GFFormsModel::create_post(): Creating post images.');
     $post_images = array();
     foreach ($post_data['images'] as $image) {
         $image_meta = array('post_excerpt' => $image['caption'], 'post_content' => $image['description']);
         //adding title only if it is not empty. It will default to the file name if it is not in the array
         if (!empty($image['title'])) {
             $image_meta['post_title'] = $image['title'];
         }
         if (!empty($image['url'])) {
             GFCommon::log_debug('GFFormsModel::create_post(): Adding image: ' . $image['url']);
             $media_id = self::media_handle_upload($image['url'], $post_id, $image_meta);
             if ($media_id) {
                 //save media id for post body/title template variable replacement (below)
                 $post_images[$image['field_id']] = $media_id;
                 $lead[$image['field_id']] .= "|:|{$media_id}";
                 // set featured image
                 $field = RGFormsModel::get_field($form, $image['field_id']);
                 if ($field->postFeaturedImage) {
                     set_post_thumbnail($post_id, $media_id);
                 }
             }
         }
     }
     //adding custom fields
     GFCommon::log_debug('GFFormsModel::create_post(): Adding custom fields.');
     foreach ($post_data['post_custom_fields'] as $meta_name => $meta_value) {
         if (!is_array($meta_value)) {
             $meta_value = array($meta_value);
         }
         $meta_index = 0;
         foreach ($meta_value as $value) {
             GFCommon::log_debug('GFFormsModel::create_post(): Getting custom field: ' . $meta_name);
             $custom_field = self::get_custom_field($form, $meta_name, $meta_index);
             //replacing template variables if template is enabled
             if ($custom_field && rgget('customFieldTemplateEnabled', $custom_field)) {
                 //replacing post image variables
                 GFCommon::log_debug('GFFormsModel::create_post(): Replacing post image variables.');
                 $value = GFCommon::replace_variables_post_image($custom_field['customFieldTemplate'], $post_images, $lead);
                 //replacing all other variables
                 $value = GFCommon::replace_variables($value, $form, $lead, false, false, false);
                 // replace conditional shortcodes
                 $value = do_shortcode($value);
             }
             switch (RGFormsModel::get_input_type($custom_field)) {
                 case 'list':
                     $value = maybe_unserialize($value);
                     if (is_array($value)) {
                         foreach ($value as $item) {
                             if (is_array($item)) {
                                 $item = implode('|', $item);
                             }
                             if (!rgblank($item)) {
                                 add_post_meta($post_id, $meta_name, $item);
                             }
                         }
                     }
                     break;
                 case 'multiselect':
                 case 'checkbox':
                     $value = explode(',', $value);
                     if (is_array($value)) {
                         foreach ($value as $item) {
                             if (!rgblank($item)) {
                                 // add post meta and replace HTML symbol in $item with real comma
                                 add_post_meta($post_id, $meta_name, str_replace(',', ',', $item));
                             }
                         }
                     }
                     break;
                 case 'date':
                     $value = GFCommon::date_display($value, rgar($custom_field, 'dateFormat'));
                     if (!rgblank($value)) {
                         add_post_meta($post_id, $meta_name, $value);
                     }
                     break;
                 default:
                     if (!rgblank($value)) {
                         add_post_meta($post_id, $meta_name, $value);
                     }
                     break;
             }
             $meta_index++;
         }
     }
     $has_content_field = sizeof(self::get_fields_by_type($form, array('post_content'))) > 0;
     $has_title_field = sizeof(self::get_fields_by_type($form, array('post_title'))) > 0;
     $post = false;
     //if a post field was configured with a content or title template, process template
     if (rgar($form, 'postContentTemplateEnabled') && $has_content_field || rgar($form, 'postTitleTemplateEnabled') && $has_title_field) {
         GFCommon::log_debug('GFFormsModel::create_post(): Processing template.');
         $post = get_post($post_id);
         if (rgar($form, 'postContentTemplateEnabled') && $has_content_field) {
             //replacing post image variables
             $post_content = GFCommon::replace_variables_post_image($form['postContentTemplate'], $post_images, $lead);
             //replacing all other variables
             $post_content = GFCommon::replace_variables($post_content, $form, $lead, false, false, false);
             //updating post content
             $post->post_content = $post_content;
         }
         if (rgar($form, 'postTitleTemplateEnabled') && $has_title_field) {
             //replacing post image variables
             $post_title = GFCommon::replace_variables_post_image($form['postTitleTemplate'], $post_images, $lead);
             //replacing all other variables
             $post_title = GFCommon::replace_variables($post_title, $form, $lead, false, false, false);
             // replace conditional shortcodes
             $post_title = do_shortcode($post_title);
             //updating post
             $post->post_title = $post_title;
             $post->post_name = $post_title;
         }
     }
     // update post status back to original status (if not draft)
     if ($post_status != 'draft') {
         $post = is_object($post) ? $post : get_post($post_id);
         $post->post_status = $post_status;
     }
     // if post has been modified since creation, save updates
     if (is_object($post)) {
         GFCommon::log_debug('GFFormsModel::create_post(): Updating post.');
         wp_update_post($post);
     }
     //adding post format
     if (current_theme_supports('post-formats') && rgar($form, 'postFormat')) {
         $formats = get_theme_support('post-formats');
         $post_format = rgar($form, 'postFormat');
         if (is_array($formats)) {
             $formats = $formats[0];
             if (in_array($post_format, $formats)) {
                 set_post_format($post_id, $post_format);
             } else {
                 if ('0' == $post_format) {
                     set_post_format($post_id, false);
                 }
             }
         }
     }
     //update post_id field if a post was created
     $lead['post_id'] = $post_id;
     GFCommon::log_debug('GFFormsModel::create_post(): Updating entry with post id.');
     self::update_lead_property($lead['id'], 'post_id', $post_id);
     do_action('gform_after_create_post', $post_id);
     return $post_id;
 }
Ejemplo n.º 4
0
 public function get_value_merge_tag($value, $input_id, $entry, $form, $modifier, $raw_value, $url_encode, $esc_html, $format, $nl2br)
 {
     $format_modifier = empty($modifier) ? $this->dateFormat : $modifier;
     return GFCommon::date_display($value, $format_modifier);
 }
Ejemplo n.º 5
0
 public static function prepopulate_form($form, $config)
 {
     global $bp;
     $mapped_fields = array();
     $meta = rgar($config, 'meta');
     $user = wp_get_current_user();
     foreach (array('username', 'lastname', 'firstname', 'email') as $meta_key) {
         $field_id = rgar($meta, $meta_key);
         if ($field_id) {
             $mapped_fields[(string) $field_id] = $user->get(self::convert_to_wp_meta_key($meta_key));
         }
     }
     $custom_meta = rgars($config, 'meta/user_meta') ? rgars($config, 'meta/user_meta') : array();
     foreach ($custom_meta as $meta_item) {
         if (rgar($meta_item, 'meta_value')) {
             $field_id = rgar($meta_item, 'meta_value');
             $mapped_fields[(string) $field_id] = $user->get(rgar($meta_item, 'meta_name'));
         }
     }
     if (function_exists("xprofile_get_field_data")) {
         $buddypress_meta = rgars($config, 'meta/buddypress_meta') ? rgars($config, 'meta/buddypress_meta') : array();
         foreach ($buddypress_meta as $meta_item) {
             if (rgar($meta_item, 'meta_value')) {
                 $field_id = rgar($meta_item, 'meta_value');
                 $value = xprofile_get_field_data(rgar($meta_item, 'meta_name'), $user->ID);
                 $mapped_fields[(string) $field_id] = is_array($value) ? array_map('html_entity_decode', $value) : html_entity_decode($value);
             }
         }
     }
     $mapped_fields = apply_filters('gform_user_registration_user_data_pre_populate', $mapped_fields, $form, $config);
     // get all fields for cheap check inside field loop
     $mapped_field_ids = array_map('intval', array_keys($mapped_fields));
     foreach ($form['fields'] as &$field) {
         if (!in_array($field['id'], $mapped_field_ids)) {
             continue;
         }
         $value = false;
         switch (RGFormsModel::get_input_type($field)) {
             case 'fileupload':
                 $value = rgar($mapped_fields, $field['id']);
                 $path_info = pathinfo($value);
                 // check if file has been "deleted" via form UI
                 $upload_files = json_decode(rgpost('gform_uploaded_files'), ARRAY_A);
                 $input_name = "input_{$field['id']}";
                 if (is_array($upload_files) && array_key_exists($input_name, $upload_files) && !$upload_files[$input_name]) {
                     continue;
                 }
                 // if $uploaded_files array is not set for this form at all, init as array
                 if (!isset(RGFormsModel::$uploaded_files[$form['id']])) {
                     RGFormsModel::$uploaded_files[$form['id']] = array();
                 }
                 // check if this field's key has been set in the $uploaded_files array, if not add this file (otherwise, a new image may have been uploaded so don't overwrite)
                 if (!isset(RGFormsModel::$uploaded_files[$form['id']]["input_{$field['id']}"])) {
                     RGFormsModel::$uploaded_files[$form['id']]["input_{$field['id']}"] = $path_info['basename'];
                 }
                 break;
             case 'checkbox':
                 $value = rgar($mapped_fields, $field['id']);
                 $cb_values = array();
                 if (is_array($value)) {
                     $cb_values = $value;
                 } else {
                     $inputs = $field['inputs'];
                     foreach ($inputs as &$input) {
                         $cb_values[] = rgar($mapped_fields, (string) $input['id']);
                     }
                     $field['inputs'] = $inputs;
                 }
                 $value = implode(',', $cb_values);
                 break;
             case 'list':
                 $value = maybe_unserialize(rgar($mapped_fields, $field['id']));
                 $list_values = array();
                 if (is_array($value)) {
                     foreach ($value as $vals) {
                         if (!is_array($vals)) {
                             $vals = array($vals);
                         }
                         $list_values = array_merge($list_values, array_values($vals));
                     }
                     $value = $list_values;
                 }
                 break;
             case 'date':
                 $value = GFCommon::date_display(rgar($mapped_fields, $field['id']), $field['dateFormat'], false);
                 break;
             default:
                 // handle complex fields
                 $inputs = $field instanceof GF_Field ? $field->get_entry_inputs() : rgar($field, 'inputs');
                 if (is_array($inputs)) {
                     foreach ($inputs as &$input) {
                         $filter_name = self::prepopulate_input($input['id'], rgar($mapped_fields, (string) $input['id']));
                         $field['allowsPrepopulate'] = true;
                         $input['name'] = $filter_name;
                     }
                     $field['inputs'] = $inputs;
                 } else {
                     $value = is_array(rgar($mapped_fields, $field['id'])) ? implode(',', rgar($mapped_fields, $field['id'])) : rgar($mapped_fields, $field['id']);
                 }
         }
         if (rgblank($value)) {
             continue;
         }
         $value = self::maybe_get_category_id($field, $value);
         $filter_name = self::prepopulate_input($field['id'], $value);
         $field['allowsPrepopulate'] = true;
         $field['inputName'] = $filter_name;
     }
     return $form;
 }
Ejemplo n.º 6
0
 public static function create_post($form, &$lead)
 {
     $has_post_field = false;
     foreach ($form["fields"] as $field) {
         $is_hidden = self::is_field_hidden($form, $field, array(), $lead);
         if (!$is_hidden && in_array($field["type"], array("post_category", "post_title", "post_content", "post_excerpt", "post_tags", "post_custom_field", "post_image"))) {
             $has_post_field = true;
             break;
         }
     }
     //if this form does not have any post fields, don't create a post
     if (!$has_post_field) {
         return $lead;
     }
     //processing post fields
     $post_data = self::get_post_fields($form, $lead);
     //allowing users to change post fields before post gets created
     $post_data = apply_filters("gform_post_data_{$form["id"]}", apply_filters("gform_post_data", $post_data, $form, $lead), $form, $lead);
     //adding default title if none of the required post fields are in the form (will make sure wp_insert_post() inserts the post)
     if (empty($post_data["post_title"]) && empty($post_data["post_content"]) && empty($post_data["post_excerpt"])) {
         $post_data["post_title"] = self::get_default_post_title();
     }
     //inserting post
     if (GFCommon::is_bp_active()) {
         //disable buddy press action so save_post is not called because the post data is not yet complete at this point
         remove_action("save_post", "bp_blogs_record_post");
     }
     $post_id = wp_insert_post($post_data);
     //adding form id and entry id hidden custom fields
     add_post_meta($post_id, "_gform-form-id", $form["id"]);
     add_post_meta($post_id, "_gform-entry-id", $lead["id"]);
     //creating post images
     $post_images = array();
     foreach ($post_data["images"] as $image) {
         $image_meta = array("post_excerpt" => $image["caption"], "post_content" => $image["description"]);
         //adding title only if it is not empty. It will default to the file name if it is not in the array
         if (!empty($image["title"])) {
             $image_meta["post_title"] = $image["title"];
         }
         if (!empty($image["url"])) {
             $media_id = self::media_handle_upload($image["url"], $post_id, $image_meta);
             if ($media_id) {
                 //save media id for post body/title template variable replacement (below)
                 $post_images[$image["field_id"]] = $media_id;
                 $lead[$image["field_id"]] .= "|:|{$media_id}";
                 // set featured image
                 $field = RGFormsModel::get_field($form, $image["field_id"]);
                 if (rgar($field, 'postFeaturedImage')) {
                     set_post_thumbnail($post_id, $media_id);
                 }
             }
         }
     }
     //adding custom fields
     foreach ($post_data["post_custom_fields"] as $meta_name => $meta_value) {
         if (!is_array($meta_value)) {
             $meta_value = array($meta_value);
         }
         $meta_index = 0;
         foreach ($meta_value as $value) {
             $custom_field = self::get_custom_field($form, $meta_name, $meta_index);
             //replacing template variables if template is enabled
             if ($custom_field && rgget("customFieldTemplateEnabled", $custom_field)) {
                 //replacing post image variables
                 $value = GFCommon::replace_variables_post_image($custom_field["customFieldTemplate"], $post_images, $lead);
                 //replacing all other variables
                 $value = GFCommon::replace_variables($value, $form, $lead, false, false, false);
                 // replace conditional shortcodes
                 $value = do_shortcode($value);
             }
             switch (RGFormsModel::get_input_type($custom_field)) {
                 case "list":
                     $value = maybe_unserialize($value);
                     if (is_array($value)) {
                         foreach ($value as $item) {
                             if (is_array($item)) {
                                 $item = implode("|", $item);
                             }
                             if (!rgblank($item)) {
                                 add_post_meta($post_id, $meta_name, $item);
                             }
                         }
                     }
                     break;
                 case "multiselect":
                 case "checkbox":
                     $value = explode(",", $value);
                     if (is_array($value)) {
                         foreach ($value as $item) {
                             if (!rgblank($item)) {
                                 add_post_meta($post_id, $meta_name, $item);
                             }
                         }
                     }
                     break;
                 case "date":
                     $value = GFCommon::date_display($value, rgar($custom_field, "dateFormat"));
                     if (!rgblank($value)) {
                         add_post_meta($post_id, $meta_name, $value);
                     }
                     break;
                 default:
                     if (!rgblank($value)) {
                         add_post_meta($post_id, $meta_name, $value);
                     }
                     break;
             }
             $meta_index++;
         }
     }
     $has_content_field = sizeof(GFCommon::get_fields_by_type($form, array("post_content"))) > 0;
     $has_title_field = sizeof(GFCommon::get_fields_by_type($form, array("post_title"))) > 0;
     //if a post field was configured with a content or title template, process template
     if (rgar($form, "postContentTemplateEnabled") && $has_content_field || rgar($form, "postTitleTemplateEnabled") && $has_title_field) {
         $post = get_post($post_id);
         if ($form["postContentTemplateEnabled"] && $has_content_field) {
             //replacing post image variables
             $post_content = GFCommon::replace_variables_post_image($form["postContentTemplate"], $post_images, $lead);
             //replacing all other variables
             $post_content = GFCommon::replace_variables($post_content, $form, $lead, false, false, false);
             //updating post content
             $post->post_content = $post_content;
         }
         if ($form["postTitleTemplateEnabled"] && $has_title_field) {
             //replacing post image variables
             $post_title = GFCommon::replace_variables_post_image($form["postTitleTemplate"], $post_images, $lead);
             //replacing all other variables
             $post_title = GFCommon::replace_variables($post_title, $form, $lead, false, false, false);
             // replace conditional shortcodes
             $post_title = do_shortcode($post_title);
             //updating post
             $post->post_title = $post_title;
             $post->post_name = $post_title;
         }
         if (GFCommon::is_bp_active()) {
             //re-enable buddy press action for save_post since the post data is complete at this point
             add_action('save_post', 'bp_blogs_record_post', 10, 2);
         }
         wp_update_post($post);
     }
     //adding post format
     if (current_theme_supports('post-formats') && rgar($form, 'postFormat')) {
         $formats = get_theme_support('post-formats');
         $post_format = rgar($form, 'postFormat');
         if (is_array($formats)) {
             $formats = $formats[0];
             if (in_array($post_format, $formats)) {
                 set_post_format($post_id, $post_format);
             } else {
                 if ('0' == $post_format) {
                     set_post_format($post_id, false);
                 }
             }
         }
     }
     //update post_id field if a post was created
     $lead["post_id"] = $post_id;
     self::update_lead($lead);
     return $post_id;
 }
Ejemplo n.º 7
0
    public static function leads_page($form_id)
    {
        global $wpdb;
        //quit if version of wp is not supported
        if (!GFCommon::ensure_wp_version()) {
            return;
        }
        echo GFCommon::get_remote_message();
        $action = RGForms::post("action");
        $filter = rgget("filter");
        $search = rgget("s");
        $page_index = empty($_GET["paged"]) ? 0 : intval($_GET["paged"]) - 1;
        $star = $filter == "star" ? 1 : null;
        $read = $filter == "unread" ? 0 : null;
        $status = in_array($filter, array("trash", "spam")) ? $filter : "active";
        $search_criteria["status"] = $status;
        if ($star) {
            $search_criteria["field_filters"][] = array("key" => "is_starred", "value" => (bool) $star);
        }
        if (!is_null($read)) {
            $search_criteria["field_filters"][] = array("key" => "is_read", "value" => (bool) $read);
        }
        $search_field_id = rgget("field_id");
        $search_operator = rgget("operator");
        if (isset($_GET["field_id"]) && $_GET["field_id"] !== '') {
            $key = $search_field_id;
            $val = rgget("s");
            $strpos_row_key = strpos($search_field_id, "|");
            if ($strpos_row_key !== false) {
                //multi-row likert
                $key_array = explode("|", $search_field_id);
                $key = $key_array[0];
                $val = $key_array[1] . ":" . $val;
            }
            if ("entry_id" == $key) {
                $key = "id";
            }
            $search_criteria["field_filters"][] = array("key" => $key, "operator" => rgempty("operator", $_GET) ? "is" : rgget("operator"), "value" => $val);
        }
        $update_message = "";
        switch ($action) {
            case "delete":
                check_admin_referer('gforms_entry_list', 'gforms_entry_list');
                $lead_id = $_POST["action_argument"];
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    RGFormsModel::delete_lead($lead_id);
                    $update_message = __("Entry deleted.", "gravityforms");
                } else {
                    $update_message = __("You don't have adequate permissions to delete entries.", "gravityforms");
                }
                break;
            case "bulk":
                check_admin_referer('gforms_entry_list', 'gforms_entry_list');
                $bulk_action = !empty($_POST["bulk_action"]) ? $_POST["bulk_action"] : $_POST["bulk_action2"];
                $select_all = rgpost("all_entries");
                $leads = empty($select_all) ? $_POST["lead"] : GFFormsModel::search_lead_ids($form_id, $search_criteria);
                $entry_count = count($leads) > 1 ? sprintf(__("%d entries", "gravityforms"), count($leads)) : __("1 entry", "gravityforms");
                switch ($bulk_action) {
                    case "delete":
                        if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                            RGFormsModel::delete_leads($leads);
                            $update_message = sprintf(__("%s deleted.", "gravityforms"), $entry_count);
                        } else {
                            $update_message = __("You don't have adequate permissions to delete entries.", "gravityforms");
                        }
                        break;
                    case "trash":
                        RGFormsModel::update_leads_property($leads, "status", "trash");
                        $update_message = sprintf(__("%s moved to Trash.", "gravityforms"), $entry_count);
                        break;
                    case "restore":
                        RGFormsModel::update_leads_property($leads, "status", "active");
                        $update_message = sprintf(__("%s restored from the Trash.", "gravityforms"), $entry_count);
                        break;
                    case "unspam":
                        RGFormsModel::update_leads_property($leads, "status", "active");
                        $update_message = sprintf(__("%s restored from the spam.", "gravityforms"), $entry_count);
                        break;
                    case "spam":
                        RGFormsModel::update_leads_property($leads, "status", "spam");
                        $update_message = sprintf(__("%s marked as spam.", "gravityforms"), $entry_count);
                        break;
                    case "mark_read":
                        RGFormsModel::update_leads_property($leads, "is_read", 1);
                        $update_message = sprintf(__("%s marked as read.", "gravityforms"), $entry_count);
                        break;
                    case "mark_unread":
                        RGFormsModel::update_leads_property($leads, "is_read", 0);
                        $update_message = sprintf(__("%s marked as unread.", "gravityforms"), $entry_count);
                        break;
                    case "add_star":
                        RGFormsModel::update_leads_property($leads, "is_starred", 1);
                        $update_message = sprintf(__("%s starred.", "gravityforms"), $entry_count);
                        break;
                    case "remove_star":
                        RGFormsModel::update_leads_property($leads, "is_starred", 0);
                        $update_message = sprintf(__("%s unstarred.", "gravityforms"), $entry_count);
                        break;
                }
                break;
            case "change_columns":
                check_admin_referer('gforms_entry_list', 'gforms_entry_list');
                $columns = GFCommon::json_decode(stripslashes($_POST["grid_columns"]), true);
                RGFormsModel::update_grid_column_meta($form_id, $columns);
                break;
        }
        if (rgpost("button_delete_permanently")) {
            if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                RGFormsModel::delete_leads_by_form($form_id, $filter);
            }
        }
        $sort_field = empty($_GET["sort"]) ? 0 : $_GET["sort"];
        $sort_direction = empty($_GET["dir"]) ? "DESC" : $_GET["dir"];
        $form = RGFormsModel::get_form_meta($form_id);
        $sort_field_meta = RGFormsModel::get_field($form, $sort_field);
        $is_numeric = $sort_field_meta["type"] == "number";
        $page_size = apply_filters("gform_entry_page_size", apply_filters("gform_entry_page_size_{$form_id}", 20, $form_id), $form_id);
        $first_item_index = $page_index * $page_size;
        if (!empty($sort_field)) {
            $sorting = array('key' => $_GET["sort"], 'direction' => $sort_direction, 'is_numeric' => $is_numeric);
        } else {
            $sorting = array();
        }
        $paging = array('offset' => $first_item_index, 'page_size' => $page_size);
        $total_count = 0;
        $leads = GFAPI::get_entries($form_id, $search_criteria, $sorting, $paging, $total_count);
        $summary = RGFormsModel::get_form_counts($form_id);
        $active_lead_count = $summary["total"];
        $unread_count = $summary["unread"];
        $starred_count = $summary["starred"];
        $spam_count = $summary["spam"];
        $trash_count = $summary["trash"];
        $columns = RGFormsModel::get_grid_columns($form_id, true);
        $search_qs = empty($search) ? "" : "&s=" . urlencode($search);
        $sort_qs = empty($sort_field) ? "" : "&sort={$sort_field}";
        $dir_qs = empty($sort_field) ? "" : "&dir={$sort_direction}";
        $star_qs = $star !== null ? "&star={$star}" : "";
        $read_qs = $read !== null ? "&read={$read}" : "";
        $filter_qs = "&filter=" . $filter;
        $search_field_id_qs = !isset($_GET["field_id"]) ? "" : "&field_id={$search_field_id}";
        $search_operator_urlencoded = urlencode($search_operator);
        $search_operator_qs = empty($search_operator_urlencoded) ? "" : "&operator={$search_operator_urlencoded}";
        $display_total = ceil($total_count / $page_size);
        $page_links = paginate_links(array('base' => admin_url("admin.php") . "?page=gf_entries&view=entries&id={$form_id}&%_%" . $search_qs . $sort_qs . $dir_qs . $star_qs . $read_qs . $filter_qs . $search_field_id_qs . $search_operator_qs, 'format' => 'paged=%#%', 'prev_text' => __('«', 'gravityforms'), 'next_text' => __('»', 'gravityforms'), 'total' => $display_total, 'current' => $page_index + 1, 'show_all' => false));
        wp_print_styles(array("thickbox"));
        $field_filters = GFCommon::get_field_filter_settings($form);
        $init_field_id = empty($search_field_id) ? 0 : $search_field_id;
        $init_field_operator = empty($search_operator) ? "contains" : $search_operator;
        $init_filter_vars = array("mode" => "off", "filters" => array(array("field" => $init_field_id, "operator" => $init_field_operator, "value" => $search)));
        ?>

        <script type="text/javascript">

            var messageTimeout = false,
                gformFieldFilters = <?php 
        echo json_encode($field_filters);
        ?>
,
                gformInitFilter = <?php 
        echo json_encode($init_filter_vars);
        ?>

            function ChangeColumns(columns){
                jQuery("#action").val("change_columns");
                jQuery("#grid_columns").val(jQuery.toJSON(columns));
                tb_remove();
                jQuery("#lead_form")[0].submit();
            }

            function Search(sort_field_id, sort_direction, form_id, search, star, read, filter, field_id, operator){
                var search_qs = search == "" ? "" : "&s=" + search;
                var star_qs = star == "" ? "" : "&star=" + star;
                var read_qs = read == "" ? "" : "&read=" + read;
                var filter_qs = filter == "" ? "" : "&filter=" + filter;
                var field_id_qs = field_id == "" ? "" : "&field_id=" + field_id;
                var operator_qs = operator == "" ? "" : "&operator=" + operator;

                var location = "?page=gf_entries&view=entries&id=" + form_id + "&sort=" + sort_field_id + "&dir=" + sort_direction + search_qs + star_qs + read_qs + filter_qs + field_id_qs + operator_qs;
                document.location = location;
            }

            function ToggleStar(img, lead_id, filter){
                var is_starred = img.src.indexOf("star1.png") >=0
                if(is_starred)
                    img.src = img.src.replace("star1.png", "star0.png");
                else
                    img.src = img.src.replace("star0.png", "star1.png");

                jQuery("#lead_row_" + lead_id).toggleClass("lead_starred");
                //if viewing the starred entries, hide the row and adjust the paging counts
                if (filter == "star")
                {
                	var title = jQuery("#lead_row_" + lead_id);
                	title.css("display", "none");
                	UpdatePagingCounts(1);
				}

                UpdateCount("star_count", is_starred ? -1 : 1);

                UpdateLeadProperty(lead_id, "is_starred", is_starred ? 0 : 1);
            }

            function ToggleRead(lead_id, filter){
                var title = jQuery("#lead_row_" + lead_id);
                marking_read = title.hasClass("lead_unread");

                jQuery("#mark_read_" + lead_id).css("display", marking_read ? "none" : "inline");
                jQuery("#mark_unread_" + lead_id).css("display", marking_read ? "inline" : "none");
                jQuery("#is_unread_" + lead_id).css("display", marking_read ? "inline" : "none");
                title.toggleClass("lead_unread");
                //if viewing the unread entries, hide the row and adjust the paging counts
                if (filter == "unread")
                {
                	title.css("display", "none");
                	UpdatePagingCounts(1);
				}

                UpdateCount("unread_count", marking_read ? -1 : 1);
                UpdateLeadProperty(lead_id, "is_read", marking_read ? 1 : 0);
            }

            function UpdateLeadProperty(lead_id, name, value){
                var mysack = new sack("<?php 
        echo admin_url("admin-ajax.php");
        ?>
" );
                mysack.execute = 1;
                mysack.method = 'POST';
                mysack.setVar( "action", "rg_update_lead_property" );
                mysack.setVar( "rg_update_lead_property", "<?php 
        echo wp_create_nonce("rg_update_lead_property");
        ?>
" );
                mysack.setVar( "lead_id", lead_id);
                mysack.setVar( "name", name);
                mysack.setVar( "value", value);
                mysack.onError = function() { alert('<?php 
        echo esc_js(__("Ajax error while setting lead property", "gravityforms"));
        ?>
' )};
                mysack.runAJAX();

                return true;
            }

            function UpdateCount(element_id, change){
                var element = jQuery("#" + element_id);
                var count = parseInt(element.html()) + change
                element.html(count + "");
            }

            function UpdatePagingCounts(change){
				//update paging header/footer Displaying # - # of #, use counts from header, no need to use footer since they are the same, just update footer paging with header info
                var paging_range_max_header = jQuery("#paging_range_max_header");
                var paging_range_max_footer = jQuery("#paging_range_max_footer");
                var range_change_max = parseInt(paging_range_max_header.html()) - change;
                var paging_total_header = jQuery("#paging_total_header");
                var paging_total_footer = jQuery("#paging_total_footer");
                var total_change = parseInt(paging_total_header.html()) - change;
                var paging_range_min_header = jQuery("#paging_range_min_header");
                var paging_range_min_footer = jQuery("#paging_range_min_footer");
				//if min and max are the same, this is the last entry item on the page, clear out the displaying # - # of # text
                if (parseInt(paging_range_min_header.html()) == parseInt(paging_range_max_header.html()))
                {
					var paging_header = jQuery("#paging_header");
					paging_header.html("");
					var paging_footer = jQuery("#paging_footer");
					paging_footer.html("");
                }
                else
                {
                	paging_range_max_header.html(range_change_max + "");
                	paging_range_max_footer.html(range_change_max + "");
                	paging_total_header.html(total_change + "");
                	paging_total_footer.html(total_change + "");
				}
                gformVars.countAllEntries = gformVars.countAllEntries - change;
                setSelectAllText();
            }

            function DeleteLead(lead_id){
                jQuery("#action").val("delete");
                jQuery("#action_argument").val(lead_id);
                jQuery("#lead_form")[0].submit();
                return true;
            }

            function handleBulkApply(actionElement){

                var action = jQuery("#" + actionElement).val();
                var defaultModalOptions = '';
                var leadIds = getLeadIds();

                if(leadIds.length == 0){
                    alert('<?php 
        _e('Please select at least one entry.', 'gravityforms');
        ?>
');
                    return false;
                }

                switch(action){

                case 'resend_notifications':
                    resetResendNotificationsUI();
                    tb_show('<?php 
        _e("Resend Notifications", "gravityforms");
        ?>
', '#TB_inline?width=350&amp;inlineId=notifications_modal_container', '');
                    return false;
                    break;

                case 'print':
                    resetPrintUI();
                    tb_show('<?php 
        _e("Print Entries", "gravityforms");
        ?>
', '#TB_inline?width=350&amp;height=250&amp;inlineId=print_modal_container', '');
                    return false;
                    break;

                default:
                    jQuery('#action').val('bulk');
                }

            }

            function getLeadIds(){
                var all = jQuery("#all_entries").val();
                //compare string, the boolean isn't correct, even when casting to a boolean the 0 is set to true
                if(all == "1")
                    return 0;

                var leads = jQuery(".check-column input[name='lead[]']:checked");
                var leadIds = new Array();

                jQuery(leads).each(function(i){
                    leadIds[i] = jQuery(leads[i]).val();
                });

                return leadIds;
            }

            function BulkResendNotifications(){


                var selectedNotifications = new Array();
                jQuery(".gform_notifications:checked").each(function(){
                    selectedNotifications.push(jQuery(this).val());
                });
                var leadIds = getLeadIds();

                var sendTo = jQuery('#notification_override_email').val();

                if(selectedNotifications.length <=0) {
                    displayMessage("<?php 
        _e("You must select at least one type of notification to resend.", "gravityforms");
        ?>
", "error", "#notifications_container");
                    return;
                }

                jQuery('#please_wait_container').fadeIn();

                jQuery.post(ajaxurl, {
                    action : "gf_resend_notifications",
                    gf_resend_notifications : '<?php 
        echo wp_create_nonce('gf_resend_notifications');
        ?>
',
                    notifications: jQuery.toJSON(selectedNotifications),
                    sendTo : sendTo,
                    leadIds : leadIds,
                    filter: '<?php 
        echo esc_attr(rgget("filter"));
        ?>
',
                    search: '<?php 
        echo esc_attr(rgget("s"));
        ?>
',
                    operator: '<?php 
        echo esc_attr(rgget("operator"));
        ?>
',
                    fieldId: '<?php 
        echo esc_attr(rgget("field_id"));
        ?>
',
                    formId : '<?php 
        echo $form['id'];
        ?>
'
                    },
                    function(response){

                        jQuery('#please_wait_container').hide();

                        if(response) {
                            displayMessage(response, "error", "#notifications_container");
                        } else {
                            var message = '<?php 
        _e("Notifications for %s were resent successfully.", "gravityforms");
        ?>
';
                            var c = leadIds == 0 ? gformVars.countAllEntries : leadIds.length;
                            displayMessage(message.replace('%s', c + ' ' + getPlural(c, '<?php 
        _e('entry', 'gravityforms');
        ?>
', '<?php 
        _e('entries', 'gravityforms');
        ?>
')), "updated", "#lead_form");
                            closeModal(true);
                        }

                    }
                );

            }

            function resetResendNotificationsUI(){

                jQuery('#notification_admin, #notification_user').attr('checked', false);
                jQuery('#notifications_container .message, #notifications_override_settings').hide();

            }

            function BulkPrint(){

                var leadIds = getLeadIds();
                if(leadIds != 0)
                    leadIds = leadIds.join(',');
                var leadsQS = '&lid=' + leadIds;
                var notesQS = jQuery('#gform_print_notes').is(':checked') ? '&notes=1' : '';
                var pageBreakQS = jQuery('#gform_print_page_break').is(':checked') ? '&page_break=1' : '';
                var filterQS = '&filter=<?php 
        echo esc_attr(rgget("filter"));
        ?>
';
                var searchQS = '&s=<?php 
        echo esc_attr(rgget("s"));
        ?>
';
                var searchFieldIdQS = '&field_id=<?php 
        echo esc_attr(rgget("field_id"));
        ?>
';
                var searchOperatorQS = '&operator=<?php 
        echo esc_attr(rgget("operator"));
        ?>
';

                var url = '<?php 
        echo trailingslashit(site_url());
        ?>
?gf_page=print-entry&fid=<?php 
        echo $form['id'];
        ?>
' + leadsQS + notesQS + pageBreakQS + filterQS + searchQS + searchFieldIdQS + searchOperatorQS;
                window.open (url,'printwindow');

                closeModal(true);
                hideMessage('#lead_form', false);
            }

            function resetPrintUI(){

                jQuery('#print_options input[type="checkbox"]').attr('checked', false);

            }

            function displayMessage(message, messageClass, container){

                hideMessage(container, true);

                var messageBox = jQuery('<div class="message ' + messageClass + '" style="display:none;"><p>' + message + '</p></div>');
                jQuery(messageBox).prependTo(container).slideDown();

                if(messageClass == 'updated')
                    messageTimeout = setTimeout(function(){ hideMessage(container, false); }, 10000);

            }

            function hideMessage(container, messageQueued){

                if(messageTimeout)
                    clearTimeout(messageTimeout);

                var messageBox = jQuery(container).find('.message');

                if(messageQueued)
                    jQuery(messageBox).remove();
                else
                    jQuery(messageBox).slideUp(function(){ jQuery(this).remove(); });

            }

            function closeModal(isSuccess) {

                if(isSuccess)
                    jQuery('.check-column input[type="checkbox"]').attr('checked', false);

                tb_remove();

            }

            function getPlural(count, singular, plural) {
                return count > 1 ? plural : singular;
            }

            function toggleNotificationOverride(isInit) {

                if(isInit)
                    jQuery('#notification_override_email').val('');

                if(jQuery(".gform_notifications:checked").length > 0 ) {
                    jQuery('#notifications_override_settings').slideDown();
                } else {
                    jQuery('#notifications_override_settings').slideUp(function(){
                        jQuery('#notification_override_email').val('');
                    });
                }

            }

            // Select All

            var gformStrings = {
                "allEntriesOnPageAreSelected" : "<?php 
        printf(__("All %s{0}%s entries on this page are selected.", "gravityforms"), "<strong>", "</strong>");
        ?>
",
                "selectAll" : "<?php 
        printf(__("Select all %s{0}%s entries.", "gravityforms"), "<strong>", "</strong>");
        ?>
",
                "allEntriesSelected" : "<?php 
        printf(__("All %s{0}%s entries have been selected.", "gravityforms"), "<strong>", "</strong>");
        ?>
",
                "clearSelection" : "<?php 
        _e("Clear selection", "gravityforms");
        ?>
"
            }

            var gformVars = {
                "countAllEntries" : <?php 
        echo intval($total_count);
        ?>
,
                "perPage" : <?php 
        echo intval($page_size);
        ?>
            }

            function setSelectAllText(){
                var tr = getSelectAllText();
                jQuery("#gform-select-all-message td").html(tr);
            }

            function getSelectAllText(){
                var count;
                count = jQuery("#gf_entry_list tr:visible:not('#gform-select-all-message')").length;
                return gformStrings.allEntriesOnPageAreSelected.format(count) + " <a href='javascript:void(0)' onclick='selectAllEntriesOnAllPages();'>" + gformStrings.selectAll.format(gformVars.countAllEntries) + "</a>";
            }

            function getSelectAllTr(){
                var t = getSelectAllText();
                var colspan = jQuery("#gf_entry_list").find("tr:first td").length + 1;
                return "<tr id='gform-select-all-message' style='display:none;background-color:lightyellow;text-align:center;'><td colspan='{0}'>{1}</td></tr>".format(colspan, t);
            }
            function toggleSelectAll(visible){
                if(gformVars.countAllEntries <= gformVars.perPage){
                    jQuery('#gform-select-all-message').hide();
                    return;
                }

                if(visible)
                    setSelectAllText();
                jQuery('#gform-select-all-message').toggle(visible);
            }


            function clearSelectAllEntries(){
                jQuery(".check-column input[type=checkbox]").prop('checked', false);
                clearSelectAllMessage();
            }

            function clearSelectAllMessage(){
                jQuery("#all_entries").val("0");
                jQuery("#gform-select-all-message").hide();
                jQuery("#gform-select-all-message td").html('');
            }

            function selectAllEntriesOnAllPages (){
                var trHtmlClearSelection;
                trHtmlClearSelection = gformStrings.allEntriesSelected.format(gformVars.countAllEntries) + " <a href='javascript:void(0);' onclick='clearSelectAllEntries();'>" + gformStrings.clearSelection + "</a>";
                jQuery("#all_entries").val("1");
                jQuery("#gform-select-all-message td").html(trHtmlClearSelection);
            }

            function initSelectAllEntries(){

                if(gformVars.countAllEntries > gformVars.perPage){
                    var tr = getSelectAllTr();
                    jQuery("#gf_entry_list").prepend(tr);
                    jQuery(".headercb").click(function(){
                        toggleSelectAll(jQuery(this).prop('checked'));
                    });
                    jQuery("#gf_entry_list .check-column input[type=checkbox]").click(function(){
                        clearSelectAllMessage();
                    })
                }
            }

            String.prototype.format = function() {
                var args = arguments;
                return this.replace(/{(\d+)}/g, function (match, number) {
                    return typeof args[number] != 'undefined' ? args[number] : match;
                });
            };

            // end Select All

            jQuery(document).ready(function(){


                var action = '<?php 
        echo $action;
        ?>
';
                var message = '<?php 
        echo $update_message;
        ?>
';
                if(action && message)
                    displayMessage(message, 'updated', '#lead_form');

                var list = jQuery("#gf_entry_list").wpList( { alt: '<?php 
        echo esc_js(__('Entry List', 'gravityforms'));
        ?>
'} );
                list.bind('wpListDelEnd', function(e, s, list){

                    var currentStatus = "<?php 
        echo $filter == "trash" || $filter == "spam" ? $filter : "active";
        ?>
";
                    var filter = "<?php 
        echo $filter;
        ?>
";
                    var movingTo = "active";
                    if(s.data.status == "trash")
                        movingTo = "trash";
                    else if(s.data.status == "spam")
                        movingTo = "spam";
                    else if(s.data.status == "delete")
                        movingTo = "delete";

                    var id = s.data.entry;
                    var title = jQuery("#lead_row_" + id);
                    var isUnread = title.hasClass("lead_unread");
                    var isStarred = title.hasClass("lead_starred");

                    if(movingTo != "delete"){
                        //Updating All count
                        var allCount = currentStatus == "active" ? -1 : 1;
                        UpdateCount("all_count", allCount);

                        //Updating Unread count
                        if(isUnread){
                            var unreadCount = currentStatus == "active" ? -1 : 1;
                            UpdateCount("unread_count", unreadCount);
                        }

                        //Updating Starred count
                        if(isStarred){
                            var starCount = currentStatus == "active" ? -1 : 1;
                            UpdateCount("star_count", starCount);
                        }
                    }

                    //Updating Spam count
                    if(currentStatus == "spam" || movingTo == "spam"){
                        var spamCount = movingTo == "spam" ? 1 : -1;
                        UpdateCount("spam_count", spamCount);
                        //adjust paging counts
                        if (filter == "spam")
                        {
                        	UpdatePagingCounts(1);
						}
						else
						{
							UpdatePagingCounts(spamCount);
						}
                    }

                    //Updating trash count
                    if(currentStatus == "trash" || movingTo == "trash"){
                        var trashCount = movingTo == "trash" ? 1 : -1;
                        UpdateCount("trash_count", trashCount);
                        //adjust paging counts
                        if (filter == "trash")
                        {
                        	UpdatePagingCounts(1);
						}
						else
						{
							UpdatePagingCounts(trashCount);
						}
                    }

                });

                initSelectAllEntries();

                jQuery('#entry_filters').gfFilterUI(gformFieldFilters, gformInitFilter, false);
                jQuery("#entry_filters").on("keypress", ".gform-filter-value", (function(event){
                    if(event.keyCode == 13){
                        Search('<?php 
        echo $sort_field;
        ?>
', '<?php 
        echo $sort_direction;
        ?>
', <?php 
        echo $form_id;
        ?>
, jQuery('.gform-filter-value').val(), '<?php 
        echo $star;
        ?>
', '<?php 
        echo $read;
        ?>
', '<?php 
        echo $filter;
        ?>
', jQuery('.gform-filter-field').val(), jQuery('.gform-filter-operator').val());
                        event.preventDefault();
                    }
                }));
            });


        </script>
        <link rel="stylesheet" href="<?php 
        echo GFCommon::get_base_url();
        ?>
/css/admin.css" type="text/css" />
        <style>
            /*#TB_window { height: 400px !important; }
            #TB_ajaxContent[style] { height: 370px !important; }*/
            .lead_unread a, .lead_unread td{font-weight: bold;}
            .lead_spam_trash a, .lead_spam_trash td{font-weight:normal;}
            .row-actions a { font-weight:normal;}
            .entry_nowrap{ overflow:hidden; white-space:nowrap; }
            .message { margin: 15px 0 0 !important; }
            .gform-filter-operator{width:100px}
        </style>


        <div class="wrap <?php 
        echo GFCommon::get_browser_class();
        ?>
">
            <h2 class="gf_admin_page_title"><span><?php 
        _e("Entries", "gravityforms");
        ?>
</span><span class="gf_admin_page_subtitle"><span class="gf_admin_page_formid">ID: <?php 
        echo $form['id'];
        ?>
</span><span class="gf_admin_page_formname"><?php 
        _e("Form Name", "gravityforms");
        ?>
: <?php 
        echo $form['title'];
        ?>
</span></span></h2>

            <?php 
        RGForms::top_toolbar();
        ?>

            <form id="lead_form" method="post">
                <?php 
        wp_nonce_field('gforms_entry_list', 'gforms_entry_list');
        ?>

                <input type="hidden" value="" name="grid_columns" id="grid_columns" />
                <input type="hidden" value="" name="action" id="action" />
                <input type="hidden" value="" name="action_argument" id="action_argument" />
                <input type="hidden" value="" name="all_entries" id="all_entries" />

                <ul class="subsubsub">
                    <li><a class="<?php 
        echo empty($filter) ? "current" : "";
        ?>
" href="?page=gf_entries&view=entries&id=<?php 
        echo $form_id;
        ?>
"><?php 
        _e("All", "gravityforms");
        ?>
 <span class="count">(<span id="all_count"><?php 
        echo $active_lead_count;
        ?>
</span>)</span></a> | </li>
                    <li><a class="<?php 
        echo $read !== null ? "current" : "";
        ?>
" href="?page=gf_entries&view=entries&id=<?php 
        echo $form_id;
        ?>
&filter=unread"><?php 
        _e("Unread", "gravityforms");
        ?>
 <span class="count">(<span id="unread_count"><?php 
        echo $unread_count;
        ?>
</span>)</span></a> | </li>
                    <li><a class="<?php 
        echo $star !== null ? "current" : "";
        ?>
" href="?page=gf_entries&view=entries&id=<?php 
        echo $form_id;
        ?>
&filter=star"><?php 
        _e("Starred", "gravityforms");
        ?>
 <span class="count">(<span id="star_count"><?php 
        echo $starred_count;
        ?>
</span>)</span></a> | </li>
                    <?php 
        if (GFCommon::akismet_enabled($form_id)) {
            ?>
                        <li><a class="<?php 
            echo $filter == "spam" ? "current" : "";
            ?>
" href="?page=gf_entries&view=entries&id=<?php 
            echo $form_id;
            ?>
&filter=spam"><?php 
            _e("Spam", "gravityforms");
            ?>
 <span class="count">(<span id="spam_count"><?php 
            echo $spam_count;
            ?>
</span>)</span></a> | </li>
                        <?php 
        }
        ?>
                    <li><a class="<?php 
        echo $filter == "trash" ? "current" : "";
        ?>
" href="?page=gf_entries&view=entries&id=<?php 
        echo $form_id;
        ?>
&filter=trash"><?php 
        _e("Trash", "gravityforms");
        ?>
 <span class="count">(<span id="trash_count"><?php 
        echo $trash_count;
        ?>
</span>)</span></a></li>
                </ul>
                <div style="margin-top:12px;float:right;">
                    <a style="float:right;" class="button" id="lead_search_button" href="javascript:Search('<?php 
        echo $sort_field;
        ?>
', '<?php 
        echo $sort_direction;
        ?>
', <?php 
        echo $form_id;
        ?>
, jQuery('.gform-filter-value').val(), '<?php 
        echo $star;
        ?>
', '<?php 
        echo $read;
        ?>
', '<?php 
        echo $filter;
        ?>
', jQuery('.gform-filter-field').val(), jQuery('.gform-filter-operator').val());"><?php 
        _e("Search", "gravityforms");
        ?>
</a>
                    <div id="entry_filters" style="float:right"></div>
                </div>
                <div class="tablenav">

                    <div class="alignleft actions" style="padding:8px 0 7px 0;">
                        <label class="hidden" for="bulk_action"> <?php 
        _e("Bulk action", "gravityforms");
        ?>
</label>
                        <select name="bulk_action" id="bulk_action">
                            <option value=''><?php 
        _e(" Bulk action ", "gravityforms");
        ?>
</option>
                            <?php 
        switch ($filter) {
            case "trash":
                ?>
                                    <option value='restore'><?php 
                _e("Restore", "gravityforms");
                ?>
</option>
                                    <?php 
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                        <option value='delete'><?php 
                    _e("Delete Permanently", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
                break;
            case "spam":
                ?>
                                    <option value='unspam'><?php 
                _e("Not Spam", "gravityforms");
                ?>
</option>
                                    <?php 
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                        <option value='delete'><?php 
                    _e("Delete Permanently", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
                break;
            default:
                ?>
                                    <option value='mark_read'><?php 
                _e("Mark as Read", "gravityforms");
                ?>
</option>
                                    <option value='mark_unread'><?php 
                _e("Mark as Unread", "gravityforms");
                ?>
</option>
                                    <option value='add_star'><?php 
                _e("Add Star", "gravityforms");
                ?>
</option>
                                    <option value='remove_star'><?php 
                _e("Remove Star", "gravityforms");
                ?>
</option>
                                    <option value='resend_notifications'><?php 
                _e("Resend Notifications", "gravityforms");
                ?>
</option>
                                    <option value='print'><?php 
                _e("Print", "gravityforms");
                ?>
</option>

                                    <?php 
                if (GFCommon::akismet_enabled($form_id)) {
                    ?>
                                        <option value='spam'><?php 
                    _e("Spam", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                        <option value='trash'><?php 
                    _e("Trash", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
        }
        ?>
                        </select>
                        <?php 
        $apply_button = '<input type="submit" class="button" value="' . __("Apply", "gravityforms") . '" onclick="return handleBulkApply(\'bulk_action\');" />';
        echo apply_filters("gform_entry_apply_button", $apply_button);
        if (in_array($filter, array("trash", "spam"))) {
            $message = $filter == "trash" ? __("WARNING! This operation cannot be undone. Empty trash? \\'Ok\\' to empty trash. \\'Cancel\\' to abort.", "gravityforms") : __("WARNING! This operation cannot be undone. Permanently delete all spam? \\'Ok\\' to delete. \\'Cancel\\' to abort.", "gravityforms");
            $button_label = $filter == "trash" ? __("Empty Trash", "gravityforms") : __("Delete All Spam", "gravityforms");
            ?>
                            <input type="submit" class="button" name="button_delete_permanently" value="<?php 
            echo $button_label;
            ?>
" onclick="return confirm('<?php 
            echo esc_attr($message);
            ?>
');" />
                            <?php 
        }
        ?>
                        <div id="notifications_modal_container" style="display:none;">
                            <div id="notifications_container">

                                <div id="post_tag" class="tagsdiv">
                                    <div id="resend_notifications_options">

                                        <?php 
        if (!is_array($form["notifications"]) || count($form["notifications"]) <= 0) {
            ?>
                                            <p class="description"><?php 
            _e("You cannot resend notifications for these entries because this form does not currently have any notifications configured.", "gravityforms");
            ?>
</p>

                                            <a href="<?php 
            echo admin_url("admin.php?page=gf_edit_forms&view=settings&subview=notification&id={$form["id"]}");
            ?>
" class="button"><?php 
            _e("Configure Notifications", "gravityforms");
            ?>
</a>
                                            <?php 
        } else {
            ?>
                                            <p class="description"><?php 
            _e("Specify which notifications you would like to resend for the selected entries.", "gravityforms");
            ?>
</p>
                                            <?php 
            foreach ($form["notifications"] as $notification) {
                ?>
                                                <input type="checkbox" class="gform_notifications" value="<?php 
                echo $notification["id"];
                ?>
" id="notification_<?php 
                echo $notification["id"];
                ?>
" onclick="toggleNotificationOverride();" />
                                                <label for="notification_<?php 
                echo $notification["id"];
                ?>
"><?php 
                echo $notification["name"];
                ?>
</label> <br /><br />
                                                <?php 
            }
            ?>
                                            <div id="notifications_override_settings" style="display:none;">

                                                <p class="description" style="padding-top:0; margin-top:0;">You may override the default notification settings
                                                    by entering a comma delimited list of emails to which the selected notifications should be sent.</p>
                                                <label for="notification_override_email"><?php 
            _e("Send To", "gravityforms");
            ?>
 <?php 
            gform_tooltip("notification_override_email");
            ?>
</label><br />
                                                <input type="text" name="notification_override_email" id="notification_override_email" style="width:99%;" /><br /><br />

                                            </div>

                                            <input type="button" name="notification_resend" id="notification_resend" value="<?php 
            _e("Resend Notifications", "gravityforms");
            ?>
" class="button" style="" onclick="BulkResendNotifications();"/>
                                            <span id="please_wait_container" style="display:none; margin-left: 5px;">
                                                <img src="<?php 
            echo GFCommon::get_base_url();
            ?>
/images/loading.gif"> <?php 
            _e("Resending...", "gravityforms");
            ?>
                                            </span>
                                            <?php 
        }
        ?>

                                    </div>

                                    <div id="resend_notifications_close" style="display:none;margin:10px 0 0;">
                                        <input type="button" name="resend_notifications_close_button" value="<?php 
        _e("Close Window", "gravityforms");
        ?>
" class="button" style="" onclick="closeModal(true);"/>
                                    </div>

                                </div>

                            </div>
                        </div> <!-- / Resend Notifications -->

                        <div id="print_modal_container" style="display:none;">
                            <div id="print_container">

                                <div class="tagsdiv">
                                    <div id="print_options">

                                        <p class="description"><?php 
        _e("Print all of the selected entries at once.", "gravityforms");
        ?>
</p>

                                        <?php 
        if (GFCommon::current_user_can_any("gravityforms_view_entry_notes")) {
            ?>
                                            <input type="checkbox" name="gform_print_notes" value="print_notes" checked="checked" id="gform_print_notes" />
                                            <label for="gform_print_notes"><?php 
            _e("Include notes", "gravityforms");
            ?>
</label>
                                            <br /><br />
                                        <?php 
        }
        ?>

                                        <input type="checkbox" name="gform_print_page_break" value="print_notes" checked="checked" id="gform_print_page_break" />
                                        <label for="gform_print_page_break"><?php 
        _e("Add page break between entries", "gravityforms");
        ?>
</label>
                                        <br /><br />

                                        <input type="button" value="<?php 
        _e("Print", "gravityforms");
        ?>
" class="button" onclick="BulkPrint();" />

                                    </div>
                                </div>

                            </div>
                        </div> <!-- / Print -->

                    </div>

                    <?php 
        echo self::display_paging_links("header", $page_links, $first_item_index, $page_size, $total_count);
        ?>

                    <div class="clear"></div>
                </div>

                <table class="widefat fixed" cellspacing="0">
                <thead>
                    <tr>
                        <th scope="col" id="cb" class="manage-column column-cb check-column"><input type="checkbox" class="headercb" /></th>
                        <?php 
        if (!in_array($filter, array("spam", "trash"))) {
            ?>
                            <th scope="col" id="cb" class="manage-column column-cb check-column" >&nbsp;</th>
                            <?php 
        }
        foreach ($columns as $field_id => $field_info) {
            $dir = $field_id == 0 ? "DESC" : "ASC";
            //default every field so ascending sorting except date_created (id=0)
            if ($field_id == $sort_field) {
                //reverting direction if clicking on the currently sorted field
                $dir = $sort_direction == "ASC" ? "DESC" : "ASC";
            }
            ?>
                            <th scope="col" class="manage-column entry_nowrap" onclick="Search('<?php 
            echo $field_id;
            ?>
', '<?php 
            echo $dir;
            ?>
', <?php 
            echo $form_id;
            ?>
, '<?php 
            echo $search;
            ?>
', '<?php 
            echo $star;
            ?>
', '<?php 
            echo $read;
            ?>
', '<?php 
            echo $filter;
            ?>
', '<?php 
            echo $search_field_id;
            ?>
', '<?php 
            echo $search_operator;
            ?>
');" style="cursor:pointer;"><?php 
            echo esc_html($field_info["label"]);
            ?>
</th>
                            <?php 
        }
        ?>
                        <th scope="col" align="right" width="50">
                            <a title="<?php 
        _e("click to select columns to display", "gravityforms");
        ?>
" href="<?php 
        echo trailingslashit(site_url(null, "admin"));
        ?>
?gf_page=select_columns&id=<?php 
        echo $form_id;
        ?>
&TB_iframe=true&height=365&width=600" class="thickbox entries_edit_icon"><i class="fa fa-cog"></i></a>
                        </th>
                    </tr>
                </thead>
                <tfoot>
                    <tr>
                        <th scope="col" id="cb" class="manage-column column-cb check-column" style=""><input type="checkbox" /></th>
                        <?php 
        if (!in_array($filter, array("spam", "trash"))) {
            ?>
                            <th scope="col" id="cb" class="manage-column column-cb check-column" >&nbsp;</th>
                        <?php 
        }
        foreach ($columns as $field_id => $field_info) {
            $dir = $field_id == 0 ? "DESC" : "ASC";
            //default every field so ascending sorting except date_created (id=0)
            if ($field_id == $sort_field) {
                //reverting direction if clicking on the currently sorted field
                $dir = $sort_direction == "ASC" ? "DESC" : "ASC";
            }
            ?>
                            <th scope="col" class="manage-column entry_nowrap" onclick="Search('<?php 
            echo $field_id;
            ?>
', '<?php 
            echo $dir;
            ?>
', <?php 
            echo $form_id;
            ?>
, '<?php 
            echo $search;
            ?>
', '<?php 
            echo $star;
            ?>
', '<?php 
            echo $read;
            ?>
', '<?php 
            echo $filter;
            ?>
');" style="cursor:pointer;"><?php 
            echo esc_html($field_info["label"]);
            ?>
</th>
                            <?php 
        }
        ?>
                        <th scope="col" style="width:15px;">
                            <a title="<?php 
        _e("click to select columns to display", "gravityforms");
        ?>
" href="<?php 
        echo trailingslashit(site_url());
        ?>
?gf_page=select_columns&id=<?php 
        echo $form_id;
        ?>
&TB_iframe=true&height=365&width=600" class="thickbox entries_edit_icon"><i class=fa-cog"></i></a>
                        </th>
                    </tr>
                </tfoot>

                <tbody data-wp-lists="list:gf_entry" class="user-list" id="gf_entry_list">
                    <?php 
        if (sizeof($leads) > 0) {
            $field_ids = array_keys($columns);
            $gf_entry_locking = new GFEntryLocking();
            $alternate_row = false;
            foreach ($leads as $position => $lead) {
                $position = $page_size * $page_index + $position;
                ?>
                            <tr id="lead_row_<?php 
                echo $lead["id"];
                ?>
" class='author-self status-inherit <?php 
                echo $lead["is_read"] ? "" : "lead_unread";
                ?>
 <?php 
                echo $lead["is_starred"] ? "lead_starred" : "";
                ?>
 <?php 
                echo in_array($filter, array("trash", "spam")) ? "lead_spam_trash" : "";
                ?>
 <?php 
                $gf_entry_locking->list_row_class($lead["id"]);
                ?>
 <?php 
                echo ($alternate_row = !$alternate_row) ? 'alternate' : '';
                ?>
'  valign="top" data-id="<?php 
                echo esc_attr($lead["id"]);
                ?>
">
                                <th scope="row" class="check-column">
                                    <input type="checkbox" name="lead[]" value="<?php 
                echo $lead["id"];
                ?>
" />
                                    <?php 
                $gf_entry_locking->lock_indicator();
                ?>
                                </th>
                                <?php 
                if (!in_array($filter, array("spam", "trash"))) {
                    ?>
                                    <td >
                                        <img id="star_image_<?php 
                    echo $lead["id"];
                    ?>
" src="<?php 
                    echo GFCommon::get_base_url();
                    ?>
/images/star<?php 
                    echo intval($lead["is_starred"]);
                    ?>
.png" onclick="ToggleStar(this, <?php 
                    echo $lead["id"] . ",'" . $filter . "'";
                    ?>
);" />
                                    </td>
                                <?php 
                }
                $is_first_column = true;
                $nowrap_class = "entry_nowrap";
                foreach ($field_ids as $field_id) {
                    /* maybe move to function */
                    $field = RGFormsModel::get_field($form, $field_id);
                    $value = rgar($lead, $field_id);
                    if ($field['type'] == 'post_category') {
                        $value = GFCommon::prepare_post_category_value($value, $field, 'entry_list');
                    }
                    //filtering lead value
                    $value = apply_filters("gform_get_field_value", $value, $lead, $field);
                    $input_type = !empty($columns[$field_id]["inputType"]) ? $columns[$field_id]["inputType"] : $columns[$field_id]["type"];
                    switch ($input_type) {
                        case "checkbox":
                            $value = "";
                            //if this is the main checkbox field (not an input), display a comma separated list of all inputs
                            if (absint($field_id) == $field_id) {
                                $lead_field_keys = array_keys($lead);
                                $items = array();
                                foreach ($lead_field_keys as $input_id) {
                                    if (is_numeric($input_id) && absint($input_id) == $field_id) {
                                        $items[] = GFCommon::selection_display(rgar($lead, $input_id), null, $lead["currency"], false);
                                    }
                                }
                                $value = GFCommon::implode_non_blank(", ", $items);
                                // special case for post category checkbox fields
                                if ($field['type'] == 'post_category') {
                                    $value = GFCommon::prepare_post_category_value($value, $field, 'entry_list');
                                }
                            } else {
                                $value = "";
                                if (GFFormsModel::is_checkbox_checked($field_id, $columns[$field_id]["label"], $lead, $form)) {
                                    $value = "<i class='fa fa-check gf_valid'></i>";
                                }
                            }
                            break;
                        case "post_image":
                            list($url, $title, $caption, $description) = rgexplode("|:|", $value, 4);
                            if (!empty($url)) {
                                //displaying thumbnail (if file is an image) or an icon based on the extension
                                $thumb = self::get_icon_url($url);
                                $value = "<a href='" . esc_attr($url) . "' target='_blank' title='" . __("Click to view", "gravityforms") . "'><img src='{$thumb}'/></a>";
                            }
                            break;
                        case "fileupload":
                            if (rgar($field, "multipleFiles")) {
                                $uploaded_files_arr = empty($value) ? array() : json_decode($value, true);
                                $file_count = count($uploaded_files_arr);
                                if ($file_count > 1) {
                                    $value = empty($uploaded_files_arr) ? "" : sprintf(__("%d files", "gravityforms"), count($uploaded_files_arr));
                                    break;
                                } elseif ($file_count == 1) {
                                    $value = $uploaded_files_arr[0];
                                }
                            }
                            $file_path = $value;
                            if (!empty($file_path)) {
                                //displaying thumbnail (if file is an image) or an icon based on the extension
                                $thumb = self::get_icon_url($file_path);
                                $file_path = esc_attr($file_path);
                                $value = "<a href='{$file_path}' target='_blank' title='" . __("Click to view", "gravityforms") . "'><img src='{$thumb}'/></a>";
                            }
                            break;
                        case "source_url":
                            $value = "<a href='" . esc_attr($lead["source_url"]) . "' target='_blank' alt='" . esc_attr($lead["source_url"]) . "' title='" . esc_attr($lead["source_url"]) . "'>.../" . esc_attr(GFCommon::truncate_url($lead["source_url"])) . "</a>";
                            break;
                        case "textarea":
                        case "post_content":
                        case "post_excerpt":
                            $value = esc_html($value);
                            break;
                        case "date_created":
                        case "payment_date":
                            $value = GFCommon::format_date($value, false);
                            break;
                        case "date":
                            $field = RGFormsModel::get_field($form, $field_id);
                            $value = GFCommon::date_display($value, rgar($field, "dateFormat"));
                            break;
                        case "radio":
                        case "select":
                            $field = RGFormsModel::get_field($form, $field_id);
                            $value = GFCommon::selection_display($value, $field, $lead["currency"]);
                            break;
                        case "number":
                            $field = RGFormsModel::get_field($form, $field_id);
                            $value = GFCommon::format_number($value, rgar($field, "numberFormat"));
                            break;
                        case "total":
                        case "payment_amount":
                            $value = GFCommon::to_money($value, $lead["currency"]);
                            break;
                        case "created_by":
                            if (!empty($value)) {
                                $userdata = get_userdata($value);
                                if (!empty($userdata)) {
                                    $value = $userdata->user_login;
                                }
                            }
                            break;
                        case "multiselect":
                            // add space after comma-delimited values
                            $value = implode(', ', explode(',', $value));
                            break;
                        default:
                            $value = esc_html($value);
                    }
                    $value = apply_filters("gform_entries_field_value", $value, $form_id, $field_id, $lead);
                    /* ^ maybe move to function */
                    $query_string = "gf_entries&view=entry&id={$form_id}&lid={$lead["id"]}{$search_qs}{$sort_qs}{$dir_qs}{$filter_qs}&paged=" . ($page_index + 1);
                    if ($is_first_column) {
                        ?>
                                        <td class="column-title" >
                                            <a href="admin.php?page=gf_entries&view=entry&id=<?php 
                        echo $form_id;
                        ?>
&lid=<?php 
                        echo $lead["id"] . $search_qs . $sort_qs . $dir_qs . $filter_qs;
                        ?>
&paged=<?php 
                        echo $page_index + 1;
                        ?>
&pos=<?php 
                        echo $position;
                        ?>
&field_id=<?php 
                        echo $search_field_id;
                        ?>
&operator=<?php 
                        echo $search_operator;
                        ?>
"><?php 
                        echo $value;
                        ?>
</a>

                                            <?php 
                        $gf_entry_locking->lock_info($lead["id"]);
                        ?>

                                            <div class="row-actions">
                                                <?php 
                        switch ($filter) {
                            case "trash":
                                ?>
                                                        <span class="edit">
                                                            <a title="<?php 
                                _e("View this entry", "gravityforms");
                                ?>
" href="admin.php?page=gf_entries&view=entry&id=<?php 
                                echo $form_id;
                                ?>
&lid=<?php 
                                echo $lead["id"] . $search_qs . $sort_qs . $dir_qs . $filter_qs;
                                ?>
&paged=<?php 
                                echo $page_index + 1;
                                ?>
&pos=<?php 
                                echo $position;
                                ?>
&field_id=<?php 
                                echo $search_field_id;
                                ?>
&operator=<?php 
                                echo $search_operator;
                                ?>
"><?php 
                                _e("View", "gravityforms");
                                ?>
</a>
                                                            |
                                                        </span>

                                                        <span class="edit">
                                                            <a data-wp-lists='delete:gf_entry_list:lead_row_<?php 
                                echo $lead["id"];
                                ?>
::status=active&entry=<?php 
                                echo $lead["id"];
                                ?>
' title="<?php 
                                echo _e("Restore this entry", "gravityforms");
                                ?>
" href="<?php 
                                echo wp_nonce_url("?page=gf_entries", "gf_delete_entry");
                                ?>
"><?php 
                                _e("Restore", "gravityforms");
                                ?>
</a>
                                                            <?php 
                                echo GFCommon::current_user_can_any("gravityforms_delete_entries") ? "|" : "";
                                ?>
                                                        </span>

                                                        <?php 
                                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                                    ?>
                                                            <span class="delete">
                                                                <?php 
                                    $delete_link = '<a data-wp-lists="delete:gf_entry_list:lead_row_' . $lead["id"] . '::status=delete&entry=' . $lead["id"] . '" title="' . __("Delete this entry permanently", "gravityforms") . '"  href="' . wp_nonce_url("?page=gf_entries", "gf_delete_entry") . '">' . __("Delete Permanently", "gravityforms") . '</a>';
                                    echo apply_filters("gform_delete_entry_link", $delete_link);
                                    ?>
                                                            </span>
                                                            <?php 
                                }
                                break;
                            case "spam":
                                ?>
                                                        <span class="edit">
                                                            <a title="<?php 
                                _e("View this entry", "gravityforms");
                                ?>
" href="admin.php?page=gf_entries&view=entry&id=<?php 
                                echo $form_id;
                                ?>
&lid=<?php 
                                echo $lead["id"] . $search_qs . $sort_qs . $dir_qs . $filter_qs;
                                ?>
&paged=<?php 
                                echo $page_index + 1;
                                ?>
&pos=<?php 
                                echo $position;
                                ?>
"><?php 
                                _e("View", "gravityforms");
                                ?>
</a>
                                                            |
                                                        </span>

                                                        <span class="unspam">
                                                            <a data-wp-lists='delete:gf_entry_list:lead_row_<?php 
                                echo $lead["id"];
                                ?>
::status=unspam&entry=<?php 
                                echo $lead["id"];
                                ?>
' title="<?php 
                                echo _e("Mark this entry as not spam", "gravityforms");
                                ?>
" href="<?php 
                                echo wp_nonce_url("?page=gf_entries", "gf_delete_entry");
                                ?>
"><?php 
                                _e("Not Spam", "gravityforms");
                                ?>
</a>
                                                            <?php 
                                echo GFCommon::current_user_can_any("gravityforms_delete_entries") ? "|" : "";
                                ?>
                                                        </span>

                                                        <?php 
                                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                                    ?>
                                                            <span class="delete">
                                                                <?php 
                                    $delete_link = '<a data-wp-lists="delete:gf_entry_list:lead_row_' . $lead["id"] . '::status=delete&entry=' . $lead["id"] . '" title="' . __("Delete this entry permanently", "gravityforms") . '"  href="' . wp_nonce_url("?page=gf_entries", "gf_delete_entry") . '">' . __("Delete Permanently", "gravityforms") . '</a>';
                                    echo apply_filters("gform_delete_entry_link", $delete_link);
                                    ?>
                                                            </span>
                                                            <?php 
                                }
                                break;
                            default:
                                ?>
                                                        <span class="edit">
                                                            <a title="<?php 
                                _e("View this entry", "gravityforms");
                                ?>
" href="admin.php?page=gf_entries&view=entry&id=<?php 
                                echo $form_id;
                                ?>
&lid=<?php 
                                echo $lead["id"] . $search_qs . $sort_qs . $dir_qs . $filter_qs;
                                ?>
&paged=<?php 
                                echo $page_index + 1;
                                ?>
&pos=<?php 
                                echo $position;
                                ?>
&field_id=<?php 
                                echo $search_field_id;
                                ?>
&operator=<?php 
                                echo $search_operator;
                                ?>
"><?php 
                                _e("View", "gravityforms");
                                ?>
</a>
                                                            |
                                                        </span>
                                                        <span class="edit">
                                                            <a id="mark_read_<?php 
                                echo $lead["id"];
                                ?>
" title="Mark this entry as read" href="javascript:ToggleRead(<?php 
                                echo $lead["id"] . ",'" . $filter . "'";
                                ?>
);" style="display:<?php 
                                echo $lead["is_read"] ? "none" : "inline";
                                ?>
;"><?php 
                                _e("Mark read", "gravityforms");
                                ?>
</a><a id="mark_unread_<?php 
                                echo $lead["id"];
                                ?>
" title="<?php 
                                _e("Mark this entry as unread", "gravityforms");
                                ?>
" href="javascript:ToggleRead(<?php 
                                echo $lead["id"] . ",'" . $filter . "'";
                                ?>
);" style="display:<?php 
                                echo $lead["is_read"] ? "inline" : "none";
                                ?>
;"><?php 
                                _e("Mark unread", "gravityforms");
                                ?>
</a>
                                                            <?php 
                                echo GFCommon::current_user_can_any("gravityforms_delete_entries") || GFCommon::akismet_enabled($form_id) ? "|" : "";
                                ?>
                                                        </span>
                                                        <?php 
                                if (GFCommon::akismet_enabled($form_id)) {
                                    ?>
                                                            <span class="spam">
                                                                <a data-wp-lists='delete:gf_entry_list:lead_row_<?php 
                                    echo $lead["id"];
                                    ?>
::status=spam&entry=<?php 
                                    echo $lead["id"];
                                    ?>
' title="<?php 
                                    _e("Mark this entry as spam", "gravityforms");
                                    ?>
" href="<?php 
                                    echo wp_nonce_url("?page=gf_entries", "gf_delete_entry");
                                    ?>
"><?php 
                                    _e("Spam", "gravityforms");
                                    ?>
</a>
                                                                <?php 
                                    echo GFCommon::current_user_can_any("gravityforms_delete_entries") ? "|" : "";
                                    ?>
                                                            </span>

                                                        <?php 
                                }
                                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                                    ?>
                                                            <span class="trash">
                                                                <a data-wp-lists='delete:gf_entry_list:lead_row_<?php 
                                    echo $lead["id"];
                                    ?>
::status=trash&entry=<?php 
                                    echo $lead["id"];
                                    ?>
' title="<?php 
                                    _e("Move this entry to the trash", "gravityforms");
                                    ?>
" href="<?php 
                                    echo wp_nonce_url("?page=gf_entries", "gf_delete_entry");
                                    ?>
"><?php 
                                    _e("Trash", "gravityforms");
                                    ?>
</a>
                                                            </span>
                                                            <?php 
                                }
                                break;
                        }
                        do_action("gform_entries_first_column_actions", $form_id, $field_id, $value, $lead, $query_string);
                        ?>

                                            </div>
                                            <?php 
                        do_action("gform_entries_first_column", $form_id, $field_id, $value, $lead, $query_string);
                        ?>
                                        </td>
                                        <?php 
                    } else {
                        ?>
                                        <td class="<?php 
                        echo $nowrap_class;
                        ?>
">
                                            <?php 
                        echo apply_filters("gform_entries_column_filter", $value, $form_id, $field_id, $lead, $query_string);
                        ?>
&nbsp;
                                            <?php 
                        do_action("gform_entries_column", $form_id, $field_id, $value, $lead, $query_string);
                        ?>
                                        </td>
                                        <?php 
                    }
                    $is_first_column = false;
                }
                ?>
                                <td>&nbsp;</td>
                            </tr>
                            <?php 
            }
        } else {
            $column_count = sizeof($columns) + 3;
            switch ($filter) {
                case "unread":
                    $message = isset($_GET["field_id"]) ? __("This form does not have any unread entries matching the search criteria.", "gravityforms") : __("This form does not have any unread entries.", "gravityforms");
                    break;
                case "star":
                    $message = isset($_GET["field_id"]) ? __("This form does not have any starred entries matching the search criteria.", "gravityforms") : __("This form does not have any starred entries.", "gravityforms");
                    break;
                case "spam":
                    $message = __("This form does not have any spam.", "gravityforms");
                    $column_count = sizeof($columns) + 2;
                    break;
                case "trash":
                    $message = isset($_GET["field_id"]) ? __("This form does not have any entries in the trash matching the search criteria.", "gravityforms") : __("This form does not have any entries in the trash.", "gravityforms");
                    $column_count = sizeof($columns) + 2;
                    break;
                default:
                    $message = isset($_GET["field_id"]) ? __("This form does not have any entries matching the search criteria.", "gravityforms") : __("This form does not have any entries yet.", "gravityforms");
            }
            ?>
                        <tr>
                            <td colspan="<?php 
            echo $column_count;
            ?>
" style="padding:20px;"><?php 
            echo $message;
            ?>
</td>
                        </tr>
                        <?php 
        }
        ?>
                </tbody>
                </table>

                <div class="clear"></div>

                <div class="tablenav">

                    <div class="alignleft actions" style="padding:8px 0 7px 0;">
                        <label class="hidden" for="bulk_action2"> <?php 
        _e("Bulk action", "gravityforms");
        ?>
</label>
                        <select name="bulk_action2" id="bulk_action2">
                            <option value=''><?php 
        _e(" Bulk action ", "gravityforms");
        ?>
</option>
                            <?php 
        switch ($filter) {
            case "trash":
                ?>
                                    <option value='restore'><?php 
                _e("Restore", "gravityforms");
                ?>
</option>
                                    <?php 
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                        <option value='delete'><?php 
                    _e("Delete Permanently", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
                break;
            case "spam":
                ?>
                                    <option value='unspam'><?php 
                _e("Not Spam", "gravityforms");
                ?>
</option>
                                    <?php 
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                        <option value='delete'><?php 
                    _e("Delete Permanently", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
                break;
            default:
                ?>
                                <option value='mark_read'><?php 
                _e("Mark as Read", "gravityforms");
                ?>
</option>
                                <option value='mark_unread'><?php 
                _e("Mark as Unread", "gravityforms");
                ?>
</option>
                                <option value='add_star'><?php 
                _e("Add Star", "gravityforms");
                ?>
</option>
                                <option value='remove_star'><?php 
                _e("Remove Star", "gravityforms");
                ?>
</option>
                                <option value='resend_notifications'><?php 
                _e("Resend Notifications", "gravityforms");
                ?>
</option>
                                <option value='print'><?php 
                _e("Print Entries", "gravityforms");
                ?>
</option>
                                <?php 
                if (GFCommon::akismet_enabled($form_id)) {
                    ?>
                                    <option value='spam'><?php 
                    _e("Spam", "gravityforms");
                    ?>
</option>
                                    <?php 
                }
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                    <option value='trash'><?php 
                    _e("Move to Trash", "gravityforms");
                    ?>
</option>
                                    <?php 
                }
        }
        ?>
                        </select>
                        <?php 
        $apply_button = '<input type="submit" class="button" value="' . __("Apply", "gravityforms") . '" onclick="return handleBulkApply(\'bulk_action2\');" />';
        echo apply_filters("gform_entry_apply_button", $apply_button);
        ?>
                    </div>

                    <?php 
        echo self::display_paging_links("footer", $page_links, $first_item_index, $page_size, $total_count);
        ?>

                    <div class="clear"></div>
                </div>

            </form>
        </div>
        <?php 
    }
Ejemplo n.º 8
0
 public static function get_lead_field_display($field, $value, $currency = "", $use_text = false, $format = "html", $media = "screen")
 {
     if ($field['type'] == 'post_category') {
         $value = self::prepare_post_category_value($value, $field);
     }
     switch (RGFormsModel::get_input_type($field)) {
         case "name":
             if (is_array($value)) {
                 $prefix = trim(rgget($field["id"] . ".2", $value));
                 $first = trim(rgget($field["id"] . ".3", $value));
                 $last = trim(rgget($field["id"] . ".6", $value));
                 $suffix = trim(rgget($field["id"] . ".8", $value));
                 $name = $prefix;
                 $name .= !empty($name) && !empty($first) ? " {$first}" : $first;
                 $name .= !empty($name) && !empty($last) ? " {$last}" : $last;
                 $name .= !empty($name) && !empty($suffix) ? " {$suffix}" : $suffix;
                 return $name;
             } else {
                 return $value;
             }
             break;
         case "creditcard":
             if (is_array($value)) {
                 $card_number = trim(rgget($field["id"] . ".1", $value));
                 $card_type = trim(rgget($field["id"] . ".4", $value));
                 $separator = $format == "html" ? "<br/>" : "\n";
                 return empty($card_number) ? "" : $card_type . $separator . $card_number;
             } else {
                 return "";
             }
             break;
         case "address":
             if (is_array($value)) {
                 $street_value = trim(rgget($field["id"] . ".1", $value));
                 $street2_value = trim(rgget($field["id"] . ".2", $value));
                 $city_value = trim(rgget($field["id"] . ".3", $value));
                 $state_value = trim(rgget($field["id"] . ".4", $value));
                 $zip_value = trim(rgget($field["id"] . ".5", $value));
                 $country_value = trim(rgget($field["id"] . ".6", $value));
                 $line_break = $format == "html" ? "<br />" : "\n";
                 $address_display_format = apply_filters("gform_address_display_format", "default");
                 if ($address_display_format == "zip_before_city") {
                     /*
                     Sample:
                     3333 Some Street
                     suite 16
                     2344 City, State
                     Country
                     */
                     $addr_ary = array();
                     $addr_ary[] = $street_value;
                     if (!empty($street2_value)) {
                         $addr_ary[] = $street2_value;
                     }
                     $zip_line = trim($zip_value . " " . $city_value);
                     $zip_line .= !empty($zip_line) && !empty($state_value) ? ", {$state_value}" : $state_value;
                     $zip_line = trim($zip_line);
                     if (!empty($zip_line)) {
                         $addr_ary[] = $zip_line;
                     }
                     if (!empty($country_value)) {
                         $addr_ary[] = $country_value;
                     }
                     $address = implode("<br />", $addr_ary);
                 } else {
                     $address = $street_value;
                     $address .= !empty($address) && !empty($street2_value) ? $line_break . $street2_value : $street2_value;
                     $address .= !empty($address) && (!empty($city_value) || !empty($state_value)) ? $line_break . $city_value : $city_value;
                     $address .= !empty($address) && !empty($city_value) && !empty($state_value) ? ", {$state_value}" : $state_value;
                     $address .= !empty($address) && !empty($zip_value) ? " {$zip_value}" : $zip_value;
                     $address .= !empty($address) && !empty($country_value) ? $line_break . $country_value : $country_value;
                 }
                 //adding map link
                 if (!empty($address) && $format == "html") {
                     $address_qs = str_replace($line_break, " ", $address);
                     //replacing <br/> and \n with spaces
                     $address_qs = urlencode($address_qs);
                     $address .= "<br/><a href='http://maps.google.com/maps?q={$address_qs}' target='_blank' class='map-it-link'>Map It</a>";
                 }
                 return $address;
             } else {
                 return "";
             }
             break;
         case "email":
             return GFCommon::is_valid_email($value) && $format == "html" ? "<a href='mailto:{$value}'>{$value}</a>" : $value;
             break;
         case "website":
             return GFCommon::is_valid_url($value) && $format == "html" ? "<a href='{$value}' target='_blank'>{$value}</a>" : $value;
             break;
         case "checkbox":
             if (is_array($value)) {
                 $items = '';
                 foreach ($value as $key => $item) {
                     if (!empty($item)) {
                         switch ($format) {
                             case "text":
                                 $items .= GFCommon::selection_display($item, $field, $currency, $use_text) . ", ";
                                 break;
                             default:
                                 $items .= "<li>" . GFCommon::selection_display($item, $field, $currency, $use_text) . "</li>";
                                 break;
                         }
                     }
                 }
                 if (empty($items)) {
                     return "";
                 } else {
                     if ($format == "text") {
                         return substr($items, 0, strlen($items) - 2);
                         //removing last comma
                     } else {
                         return "<ul class='bulleted'>{$items}</ul>";
                     }
                 }
             } else {
                 return $value;
             }
             break;
         case "post_image":
             $ary = explode("|:|", $value);
             $url = count($ary) > 0 ? $ary[0] : "";
             $title = count($ary) > 1 ? $ary[1] : "";
             $caption = count($ary) > 2 ? $ary[2] : "";
             $description = count($ary) > 3 ? $ary[3] : "";
             if (!empty($url)) {
                 $url = str_replace(" ", "%20", $url);
                 switch ($format) {
                     case "text":
                         $value = $url;
                         $value .= !empty($title) ? "\n\n" . $field["label"] . " (" . __("Title", "gravityforms") . "): " . $title : "";
                         $value .= !empty($caption) ? "\n\n" . $field["label"] . " (" . __("Caption", "gravityforms") . "): " . $caption : "";
                         $value .= !empty($description) ? "\n\n" . $field["label"] . " (" . __("Description", "gravityforms") . "): " . $description : "";
                         break;
                     default:
                         $value = "<a href='{$url}' target='_blank' title='" . __("Click to view", "gravityforms") . "'><img src='{$url}' width='100' /></a>";
                         $value .= !empty($title) ? "<div>Title: {$title}</div>" : "";
                         $value .= !empty($caption) ? "<div>Caption: {$caption}</div>" : "";
                         $value .= !empty($description) ? "<div>Description: {$description}</div>" : "";
                         break;
                 }
             }
             return $value;
         case "fileupload":
             $file_path = $value;
             if (!empty($file_path)) {
                 $info = pathinfo($file_path);
                 $file_path = esc_attr(str_replace(" ", "%20", $file_path));
                 $value = $format == "text" ? $file_path : "<a href='{$file_path}' target='_blank' title='" . __("Click to view", "gravityforms") . "'>" . $info["basename"] . "</a>";
             }
             return $value;
             break;
         case "date":
             return GFCommon::date_display($value, rgar($field, "dateFormat"));
             break;
         case "radio":
         case "select":
             return GFCommon::selection_display($value, $field, $currency, $use_text);
             break;
         case "multiselect":
             if (empty($value) || $format == "text") {
                 return $value;
             }
             $value = explode(",", $value);
             $items = '';
             foreach ($value as $item) {
                 $items .= "<li>" . GFCommon::selection_display($item, $field, $currency, $use_text) . "</li>";
             }
             return "<ul class='bulleted'>{$items}</ul>";
             break;
         case "calculation":
         case "singleproduct":
             if (is_array($value)) {
                 $product_name = trim($value[$field["id"] . ".1"]);
                 $price = trim($value[$field["id"] . ".2"]);
                 $quantity = trim($value[$field["id"] . ".3"]);
                 $product = $product_name . ", " . __("Qty: ", "gravityforms") . $quantity . ", " . __("Price: ", "gravityforms") . $price;
                 return $product;
             } else {
                 return "";
             }
             break;
         case "number":
             return GFCommon::format_number($value, rgar($field, "numberFormat"));
             break;
         case "singleshipping":
         case "donation":
         case "total":
         case "price":
             return GFCommon::to_money($value, $currency);
         case "list":
             if (empty($value)) {
                 return "";
             }
             $value = unserialize($value);
             $has_columns = is_array($value[0]);
             if (!$has_columns) {
                 $items = '';
                 foreach ($value as $key => $item) {
                     if (!empty($item)) {
                         switch ($format) {
                             case "text":
                                 $items .= $item . ", ";
                                 break;
                             case "url":
                                 $items .= $item . ",";
                                 break;
                             default:
                                 if ($media == "email") {
                                     $items .= "<li>{$item}</li>";
                                 } else {
                                     $items .= "<li>{$item}</li>";
                                 }
                                 break;
                         }
                     }
                 }
                 if (empty($items)) {
                     return "";
                 } else {
                     if ($format == "text") {
                         return substr($items, 0, strlen($items) - 2);
                         //removing last comma
                     } else {
                         if ($format == "url") {
                             return substr($items, 0, strlen($items) - 1);
                             //removing last comma
                         } else {
                             if ($media == "email") {
                                 return "<ul class='bulleted'>{$items}</ul>";
                             } else {
                                 return "<ul class='bulleted'>{$items}</ul>";
                             }
                         }
                     }
                 }
             } else {
                 if (is_array($value)) {
                     $columns = array_keys($value[0]);
                     $list = "";
                     switch ($format) {
                         case "text":
                             $is_first_row = true;
                             foreach ($value as $item) {
                                 if (!$is_first_row) {
                                     $list .= "\n\n" . $field["label"] . ": ";
                                 }
                                 $list .= implode(",", array_values($item));
                                 $is_first_row = false;
                             }
                             break;
                         case "url":
                             foreach ($value as $item) {
                                 $list .= implode("|", array_values($item)) . ",";
                             }
                             if (!empty($list)) {
                                 $list = substr($list, 0, strlen($list) - 1);
                             }
                             break;
                         default:
                             if ($media == "email") {
                                 $list = "<table class='gfield_list' style='border-top: 1px solid #DFDFDF; border-left: 1px solid #DFDFDF; border-spacing: 0; padding: 0; margin: 2px 0 6px; width: 100%'><thead><tr>";
                                 //reading columns from entry data
                                 foreach ($columns as $column) {
                                     $list .= "<th style='background-image: none; border-right: 1px solid #DFDFDF; border-bottom: 1px solid #DFDFDF; padding: 6px 10px; font-family: sans-serif; font-size: 12px; font-weight: bold; background-color: #F1F1F1; color:#333; text-align:left'>" . esc_html($column) . "</th>";
                                 }
                                 $list .= "</tr></thead>";
                                 $list .= "<tbody style='background-color: #F9F9F9'>";
                                 foreach ($value as $item) {
                                     $list .= "<tr>";
                                     foreach ($columns as $column) {
                                         $val = rgar($item, $column);
                                         $list .= "<td style='padding: 6px 10px; border-right: 1px solid #DFDFDF; border-bottom: 1px solid #DFDFDF; border-top: 1px solid #FFF; font-family: sans-serif; font-size:12px;'>{$val}</td>";
                                     }
                                     $list .= "</tr>";
                                 }
                                 $list .= "<tbody></table>";
                             } else {
                                 $list = "<table class='gfield_list'><thead><tr>";
                                 //reading columns from entry data
                                 foreach ($columns as $column) {
                                     $list .= "<th>" . esc_html($column) . "</th>";
                                 }
                                 $list .= "</tr></thead>";
                                 $list .= "<tbody>";
                                 foreach ($value as $item) {
                                     $list .= "<tr>";
                                     foreach ($columns as $column) {
                                         $val = rgar($item, $column);
                                         $list .= "<td>{$val}</td>";
                                     }
                                     $list .= "</tr>";
                                 }
                                 $list .= "<tbody></table>";
                             }
                             break;
                     }
                     return $list;
                 }
             }
             return "";
             break;
         default:
             if (!is_array($value)) {
                 return nl2br($value);
             }
             break;
     }
 }
Ejemplo n.º 9
0
 public static function get_lead_field_display($field, $value, $currency = "", $use_text = false)
 {
     switch (RGFormsModel::get_input_type($field)) {
         case "name":
             if (is_array($value)) {
                 $prefix = trim($value[$field["id"] . ".2"]);
                 $first = trim($value[$field["id"] . ".3"]);
                 $last = trim($value[$field["id"] . ".6"]);
                 $suffix = trim($value[$field["id"] . ".8"]);
                 $name = $prefix;
                 $name .= !empty($name) && !empty($first) ? " {$first}" : $first;
                 $name .= !empty($name) && !empty($last) ? " {$last}" : $last;
                 $name .= !empty($name) && !empty($suffix) ? " {$suffix}" : $suffix;
                 return $name;
             } else {
                 return $value;
             }
             break;
         case "address":
             if (is_array($value)) {
                 $street_value = trim($value[$field["id"] . ".1"]);
                 $street2_value = trim($value[$field["id"] . ".2"]);
                 $city_value = trim($value[$field["id"] . ".3"]);
                 $state_value = trim($value[$field["id"] . ".4"]);
                 $zip_value = trim($value[$field["id"] . ".5"]);
                 $country_value = trim($value[$field["id"] . ".6"]);
                 $address_display_format = apply_filters("gform_address_display_format", "street,city,state,zip,country");
                 if ($address_display_format == "zip_before_city") {
                     /*
                     Sample:
                     3333 Some Street
                     suite 16
                     2344 City, State
                     Country
                     */
                     $addr_ary = array();
                     $addr_ary[] = $street_value;
                     if (!empty($street2_value)) {
                         $addr_ary[] = $street2_value;
                     }
                     $zip_line = trim($zip_value . " " . $city_value);
                     $zip_line .= !empty($zip_line) && !empty($state_value) ? ", {$state_value}" : $state_value;
                     $zip_line = trim($zip_line);
                     if (!empty($zip_line)) {
                         $addr_ary[] = $zip_line;
                     }
                     if (!empty($country_value)) {
                         $addr_ary[] = $country_value;
                     }
                     $address = implode("<br />", $addr_ary);
                 } else {
                     $address = $street_value;
                     $address .= !empty($address) && !empty($street2_value) ? "<br />{$street2_value}" : $street2_value;
                     $address .= !empty($address) && (!empty($city_value) || !empty($state_value)) ? "<br />{$city_value}" : $city_value;
                     $address .= !empty($address) && !empty($city_value) && !empty($state_value) ? ", {$state_value}" : $state_value;
                     $address .= !empty($address) && !empty($zip_value) ? " {$zip_value}" : $zip_value;
                     $address .= !empty($address) && !empty($country_value) ? "<br />{$country_value}" : $country_value;
                 }
                 //adding map link
                 if (!empty($address)) {
                     $address_qs = str_replace("<br />", " ", $address);
                     //replacing <br/> with spaces
                     $address_qs = urlencode($address_qs);
                     $address .= "<br/><a href='http://maps.google.com/maps?q={$address_qs}' target='_blank' class='map-it-link'>Map It</a>";
                 }
                 return $address;
             } else {
                 return "";
             }
             break;
         case "email":
             return GFCommon::is_valid_email($value) ? "<a href='mailto:{$value}'>{$value}</a>" : $value;
             break;
         case "website":
             return GFCommon::is_valid_url($value) ? "<a href='{$value}' target='_blank'>{$value}</a>" : $value;
             break;
         case "checkbox":
             if (is_array($value)) {
                 foreach ($value as $key => $item) {
                     if (!empty($item)) {
                         $items .= "<li>" . GFCommon::selection_display($item, $field, $currency, $use_text) . "</li>";
                     }
                 }
                 return empty($items) ? "" : "<ul class='bulleted'>{$items}</ul>";
             } else {
                 return $value;
             }
             break;
         case "post_image":
             list($url, $title, $caption, $description) = explode("|:|", $value);
             if (!empty($url)) {
                 $url = str_replace(" ", "%20", $url);
                 $value = "<a href='{$url}' target='_blank' title='" . __("Click to view", "gravityforms") . "'><img src='{$url}' width='100' /></a>";
                 $value .= !empty($title) ? "<div>Title: {$title}</div>" : "";
                 $value .= !empty($caption) ? "<div>Caption: {$caption}</div>" : "";
                 $value .= !empty($description) ? "<div>Description: {$description}</div>" : "";
             }
             return $value;
         case "fileupload":
             $file_path = $value;
             if (!empty($file_path)) {
                 $info = pathinfo($file_path);
                 $file_path = esc_attr(str_replace(" ", "%20", $file_path));
                 $value = "<a href='{$file_path}' target='_blank' title='" . __("Click to view", "gravityforms") . "'>" . $info["basename"] . "</a>";
             }
             return $value;
             break;
         case "date":
             return GFCommon::date_display($value, $field["dateFormat"]);
             break;
         case "radio":
         case "select":
             return GFCommon::selection_display($value, $field, $currency, $use_text);
             break;
         case "singleproduct":
             if (is_array($value)) {
                 $product_name = trim($value[$field["id"] . ".1"]);
                 $price = trim($value[$field["id"] . ".2"]);
                 $quantity = trim($value[$field["id"] . ".3"]);
                 $product = $product_name . ", " . __("Qty: ", "gravityforms") . $quantity . ", " . __("Price: ", "gravityforms") . $price;
                 return $product;
             } else {
                 return "";
             }
             break;
         case "singleshipping":
         case "donation":
         case "total":
         case "price":
             return GFCommon::to_money($value, $currency);
         default:
             return nl2br($value);
             break;
     }
 }
Ejemplo n.º 10
0
<?php

/**
 * Display the time field type
 *
 * @package GravityView
 * @subpackage GravityView/templates/fields
 */
$gravityview_view = GravityView_View::getInstance();
extract($gravityview_view->getCurrentField());
if (!empty($field_settings) && !empty($field_settings['date_display']) && !empty($value)) {
    // If there is a custom PHP date format passed via the date_display setting,
    // use PHP's date format
    $format = $field_settings['date_display'];
    $output = date_i18n($format, strtotime($value));
} else {
    // Otherwise, use Gravity Forms, where you can only choose from
    // yyyy-mm-dd, mm-dd-yyyy, and dd-mm-yyyy
    $format = apply_filters('gravityview_date_format', rgar($field, "dateFormat"));
    $output = GFCommon::date_display($value, $format);
}
echo $output;
Ejemplo n.º 11
0
    public static function leads_page($form_id)
    {
        global $wpdb;
        //quit if version of wp is not supported
        if (!GFCommon::ensure_wp_version()) {
            return;
        }
        echo GFCommon::get_remote_message();
        $action = RGForms::post("action");
        switch ($action) {
            case "delete":
                check_admin_referer('gforms_entry_list', 'gforms_entry_list');
                $lead_id = $_POST["action_argument"];
                RGFormsModel::delete_lead($lead_id);
                break;
            case "bulk":
                check_admin_referer('gforms_entry_list', 'gforms_entry_list');
                $bulk_action = !empty($_POST["bulk_action"]) ? $_POST["bulk_action"] : $_POST["bulk_action2"];
                $leads = $_POST["lead"];
                switch ($bulk_action) {
                    case "delete":
                        RGFormsModel::delete_leads($leads);
                        break;
                    case "mark_read":
                        RGFormsModel::update_leads_property($leads, "is_read", 1);
                        break;
                    case "mark_unread":
                        RGFormsModel::update_leads_property($leads, "is_read", 0);
                        break;
                    case "add_star":
                        RGFormsModel::update_leads_property($leads, "is_starred", 1);
                        break;
                    case "remove_star":
                        RGFormsModel::update_leads_property($leads, "is_starred", 0);
                        break;
                }
                break;
            case "change_columns":
                check_admin_referer('gforms_entry_list', 'gforms_entry_list');
                $columns = GFCommon::json_decode(stripslashes($_POST["grid_columns"]), true);
                RGFormsModel::update_grid_column_meta($form_id, $columns);
                break;
        }
        $sort_field = empty($_GET["sort"]) ? 0 : $_GET["sort"];
        $sort_direction = empty($_GET["dir"]) ? "DESC" : $_GET["dir"];
        $search = RGForms::get("s");
        $page_index = empty($_GET["paged"]) ? 0 : intval($_GET["paged"]) - 1;
        $star = is_numeric(RGForms::get("star")) ? intval(RGForms::get("star")) : null;
        $read = is_numeric(RGForms::get("read")) ? intval(RGForms::get("read")) : null;
        $page_size = 20;
        $first_item_index = $page_index * $page_size;
        $form = RGFormsModel::get_form_meta($form_id);
        $sort_field_meta = RGFormsModel::get_field($form, $sort_field);
        $is_numeric = $sort_field_meta["type"] == "number";
        $leads = RGFormsModel::get_leads($form_id, $sort_field, $sort_direction, $search, $first_item_index, $page_size, $star, $read, $is_numeric);
        $lead_count = RGFormsModel::get_lead_count($form_id, $search, $star, $read);
        $summary = RGFormsModel::get_form_counts($form_id);
        $total_lead_count = $summary["total"];
        $unread_count = $summary["unread"];
        $starred_count = $summary["starred"];
        $columns = RGFormsModel::get_grid_columns($form_id, true);
        $search_qs = empty($search) ? "" : "&s=" . urlencode($search);
        $sort_qs = empty($sort_field) ? "" : "&sort={$sort_field}";
        $dir_qs = empty($sort_field) ? "" : "&dir={$sort_direction}";
        $star_qs = $star !== null ? "&star={$star}" : "";
        $read_qs = $read !== null ? "&read={$read}" : "";
        $page_links = paginate_links(array('base' => admin_url("admin.php") . "?page=gf_entries&view=entries&id={$form_id}&%_%" . $search_qs . $sort_qs . $dir_qs . $star_qs . $read_qs, 'format' => 'paged=%#%', 'prev_text' => __('&laquo;'), 'next_text' => __('&raquo;'), 'total' => ceil($lead_count / $page_size), 'current' => $page_index + 1, 'show_all' => false));
        wp_print_scripts(array("thickbox"));
        wp_print_styles(array("thickbox"));
        ?>

        <script src="<?php 
        echo GFCommon::get_base_url();
        ?>
/js/jquery.json-1.3.js?ver=<?php 
        echo GFCommon::$version;
        ?>
"></script>

        <script>
            function ChangeColumns(columns){
                jQuery("#action").val("change_columns");
                jQuery("#grid_columns").val(jQuery.toJSON(columns));
                tb_remove();
                jQuery("#lead_form")[0].submit();
            }

            function Search(sort_field_id, sort_direction, form_id, search, star, read){
                var search_qs = search == "" ? "" : "&s=" + search;
                var star_qs = star == "" ? "" : "&star=" + star;
                var read_qs = read == "" ? "" : "&read=" + read;

                var location = "?page=gf_entries&view=entries&id=" + form_id + "&sort=" + sort_field_id + "&dir=" + sort_direction + search_qs + star_qs + read_qs;
                document.location = location;
            }

            function ToggleStar(img, lead_id){
                var is_starred = img.src.indexOf("star1.png") >=0
                if(is_starred)
                    img.src = img.src.replace("star1.png", "star0.png");
                else
                    img.src = img.src.replace("star0.png", "star1.png");

                UpdateCount("star_count", is_starred ? -1 : 1);

                UpdateLeadProperty(lead_id, "is_starred", is_starred ? 0 : 1);
            }

            function ToggleRead(lead_id){
                var title = jQuery("#lead_row_" + lead_id);

                marking_read = title.hasClass("lead_unread");

                jQuery("#mark_read_" + lead_id).css("display", marking_read ? "none" : "inline");
                jQuery("#mark_unread_" + lead_id).css("display", marking_read ? "inline" : "none");
                title.toggleClass("lead_unread");

                UpdateCount("unread_count", marking_read ? -1 : 1);

                UpdateLeadProperty(lead_id, "is_read", marking_read ? 1 : 0);
            }

            function UpdateLeadProperty(lead_id, name, value){
                var mysack = new sack("<?php 
        echo admin_url("admin-ajax.php");
        ?>
" );
                mysack.execute = 1;
                mysack.method = 'POST';
                mysack.setVar( "action", "rg_update_lead_property" );
                mysack.setVar( "rg_update_lead_property", "<?php 
        echo wp_create_nonce("rg_update_lead_property");
        ?>
" );
                mysack.setVar( "lead_id", lead_id);
                mysack.setVar( "name", name);
                mysack.setVar( "value", value);
                mysack.encVar( "cookie", document.cookie, false );
                mysack.onError = function() { alert('<?php 
        echo esc_js(__("Ajax error while setting lead property", "gravityforms"));
        ?>
' )};
                mysack.runAJAX();

                return true;
            }

            function UpdateCount(element_id, change){
                var element = jQuery("#" + element_id);
                var count = parseInt(element.html()) + change
                element.html(count + "");
            }

            function DeleteLead(lead_id){
                jQuery("#action").val("delete");
                jQuery("#action_argument").val(lead_id);
                jQuery("#lead_form")[0].submit();
                return true;
            }



            jQuery(document).ready(function(){
                jQuery("#lead_search").keyup(function(event){
                  if(event.keyCode == 13)
                    Search('<?php 
        echo $sort_field;
        ?>
', '<?php 
        echo $sort_direction;
        ?>
', <?php 
        echo $form_id;
        ?>
, this.value, '<?php 
        echo $star;
        ?>
', '<?php 
        echo $read;
        ?>
');
                });

            });

        </script>
        <link rel="stylesheet" href="<?php 
        echo GFCommon::get_base_url();
        ?>
/css/admin.css" type="text/css" />
        <style>
            .lead_unread a, .lead_unread td{font-weight: bold;}
            .row-actions a{ font-weight:normal;}
            .entry_nowrap{
                overflow:hidden; white-space:nowrap;
            }
        </style>


        <div class="wrap">
            <img alt="<?php 
        _e("Gravity Forms", "gravityforms");
        ?>
" src="<?php 
        echo GFCommon::get_base_url();
        ?>
/images/gravity-entry-icon-32.png" style="float:left; margin:15px 7px 0 0;"/>
            <h2><?php 
        _e("Entries", "gravityforms");
        ?>
 : <?php 
        echo $form["title"];
        ?>
 </h2>

            <?php 
        RGForms::top_toolbar();
        ?>

            <form id="lead_form" method="post">
                <?php 
        wp_nonce_field('gforms_entry_list', 'gforms_entry_list');
        ?>

                <input type="hidden" value="" name="grid_columns" id="grid_columns" />
                <input type="hidden" value="" name="action" id="action" />
                <input type="hidden" value="" name="action_argument" id="action_argument" />

                <ul class="subsubsub">
                    <li><a class="<?php 
        echo $star === null && $read === null ? "current" : "";
        ?>
" href="?page=gf_entries&view=entries&id=<?php 
        echo $form_id;
        ?>
"><?php 
        _e("All", "gravityforms");
        ?>
 <span class="count">(<span id="all_count"><?php 
        echo $total_lead_count;
        ?>
</span>)</span></a> | </li>
                    <li><a class="<?php 
        echo $read !== null ? "current" : "";
        ?>
" href="?page=gf_entries&view=entries&id=<?php 
        echo $form_id;
        ?>
&read=0"><?php 
        _e("Unread", "gravityforms");
        ?>
 <span class="count">(<span id="unread_count"><?php 
        echo $unread_count;
        ?>
</span>)</span></a> | </li>
                    <li><a class="<?php 
        echo $star !== null ? "current" : "";
        ?>
" href="?page=gf_entries&view=entries&id=<?php 
        echo $form_id;
        ?>
&star=1"><?php 
        _e("Starred", "gravityforms");
        ?>
 <span class="count">(<span id="star_count"><?php 
        echo $starred_count;
        ?>
</span>)</span></a></li>
                </ul>
                <p class="search-box">
                    <label class="hidden" for="lead_search"><?php 
        _e("Search Entries:", "gravityforms");
        ?>
</label>
                    <input type="text" id="lead_search" value="<?php 
        echo $search;
        ?>
"><a class="button" id="lead_search_button" href="javascript:Search('<?php 
        echo $sort_field;
        ?>
', '<?php 
        echo $sort_direction;
        ?>
', <?php 
        echo $form_id;
        ?>
, jQuery('#lead_search').val(), '<?php 
        echo $star;
        ?>
', '<?php 
        echo $read;
        ?>
');"><?php 
        _e("Search", "gravityforms");
        ?>
</a>
                </p>
                <div class="tablenav">

                    <div class="alignleft actions" style="padding:8px 0 7px 0;">
                        <label class="hidden" for="bulk_action"> <?php 
        _e("Bulk action", "gravityforms");
        ?>
</label>
                        <select name="bulk_action" id="bulk_action">
                            <option value=''><?php 
        _e(" Bulk action ", "gravityforms");
        ?>
</option>

                            <?php 
        if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
            ?>
                            <option value='delete'><?php 
            _e("Delete", "gravityforms");
            ?>
</option>
                            <?php 
        }
        ?>

                            <option value='mark_read'><?php 
        _e("Mark as Read", "gravityforms");
        ?>
</option>
                            <option value='mark_unread'><?php 
        _e("Mark as Unread", "gravityforms");
        ?>
</option>
                            <option value='add_star'><?php 
        _e("Add Star", "gravityforms");
        ?>
</option>
                            <option value='remove_star'><?php 
        _e("Remove Star", "gravityforms");
        ?>
</option>
                        </select>
                        <?php 
        $apply_button = '<input type="submit" class="button" value="' . __("Apply", "gravityforms") . '" onclick="jQuery(\'#action\').val(\'bulk\');" />';
        echo apply_filters("gform_entry_apply_button", $apply_button);
        ?>

                    </div>

                    <?php 
        //Displaying paging links if appropriate
        if ($page_links) {
            ?>
                        <div class="tablenav-pages">
                            <span class="displaying-num"><?php 
            printf(__("Displaying %d - %d of %d", "gravityforms"), $first_item_index + 1, $first_item_index + $page_size > $lead_count ? $lead_count : $first_item_index + $page_size, $lead_count);
            ?>
</span>
                            <?php 
            echo $page_links;
            ?>
                        </div>
                        <?php 
        }
        ?>
                    <div class="clear"></div>
                </div>

                <table class="widefat fixed" cellspacing="0">
                <thead>
                    <tr>
                        <th scope="col" id="cb" class="manage-column column-cb check-column" style="vertical-align:middle;"><input type="checkbox" class="headercb" /></th>
                        <th scope="col" class="manage-column column-cb check-column" >&nbsp;</th>
                        <?php 
        foreach ($columns as $field_id => $field_info) {
            $dir = $field_id == 0 ? "DESC" : "ASC";
            //default every field so ascending sorting except date_created (id=0)
            if ($field_id == $sort_field) {
                //reverting direction if clicking on the currently sorted field
                $dir = $sort_direction == "ASC" ? "DESC" : "ASC";
            }
            ?>
                            <th scope="col" class="manage-column entry_nowrap" onclick="Search('<?php 
            echo $field_id;
            ?>
', '<?php 
            echo $dir;
            ?>
', <?php 
            echo $form_id;
            ?>
, '<?php 
            echo $search;
            ?>
', '<?php 
            echo $star;
            ?>
', '<?php 
            echo $read;
            ?>
');" style="cursor:pointer;"><?php 
            echo esc_html($field_info["label"]);
            ?>
</th>
                            <?php 
        }
        ?>
                        <th scope="col" align="right" width="50">
                            <a title="<?php 
        _e("Select Columns", "gravityforms");
        ?>
" href="<?php 
        echo GFCommon::get_base_url();
        ?>
/select_columns.php?id=<?php 
        echo $form_id;
        ?>
&TB_iframe=true&height=365&width=600" class="thickbox entries_edit_icon">Edit</a>
                        </th>
                    </tr>
                </thead>
                <tfoot>
                    <tr>
                        <th scope="col" id="cb" class="manage-column column-cb check-column" style=""><input type="checkbox" /></th>
                        <th scope="col" id="cb" class="manage-column column-cb check-column" >&nbsp;</th>
                        <?php 
        foreach ($columns as $field_id => $field_info) {
            $dir = $field_id == 0 ? "DESC" : "ASC";
            //default every field so ascending sorting except date_created (id=0)
            if ($field_id == $sort_field) {
                //reverting direction if clicking on the currently sorted field
                $dir = $sort_direction == "ASC" ? "DESC" : "ASC";
            }
            ?>
                            <th scope="col" class="manage-column entry_nowrap" onclick="Search('<?php 
            echo $field_id;
            ?>
', '<?php 
            echo $dir;
            ?>
', <?php 
            echo $form_id;
            ?>
, '<?php 
            echo $search;
            ?>
', '<?php 
            echo $star;
            ?>
', '<?php 
            echo $read;
            ?>
');" style="cursor:pointer;"><?php 
            echo esc_html($field_info["label"]);
            ?>
</th>
                            <?php 
        }
        ?>
                        <th scope="col" style="width:15px;">
                            <a href="<?php 
        echo GFCommon::get_base_url();
        ?>
/select_columns.php?id=<?php 
        echo $form_id;
        ?>
&TB_iframe=true&height=350&width=500" class="thickbox entries_edit_icon">Edit</a>
                        </th>
                    </tr>
                </tfoot>

                <tbody class="list:user user-list">
                    <?php 
        if (sizeof($leads) > 0) {
            $field_ids = array_keys($columns);
            foreach ($leads as $lead) {
                ?>
                            <tr id="lead_row_<?php 
                echo $lead["id"];
                ?>
" class='author-self status-inherit <?php 
                echo $lead["is_read"] ? "" : "lead_unread";
                ?>
' valign="top">
                                <th scope="row" class="check-column">
                                    <input type="checkbox" name="lead[]" value="<?php 
                echo $lead["id"];
                ?>
" />
                                </th>
                                <td >
                                    <img src="<?php 
                echo GFCommon::get_base_url();
                ?>
/images/star<?php 
                echo intval($lead["is_starred"]);
                ?>
.png" onclick="ToggleStar(this, <?php 
                echo $lead["id"];
                ?>
);" />
                                </td>
                                <?php 
                $is_first_column = true;
                $nowrap_class = "entry_nowrap";
                foreach ($field_ids as $field_id) {
                    $value = RGForms::get($field_id, $lead);
                    //filtering lead value
                    $value = apply_filters("gform_get_field_value", $value, $lead, RGFormsModel::get_field($form, $field_id));
                    $input_type = !empty($columns[$field_id]["inputType"]) ? $columns[$field_id]["inputType"] : $columns[$field_id]["type"];
                    switch ($input_type) {
                        case "checkbox":
                            $value = "";
                            //looping through lead detail values trying to find an item identical to the column label. Mark with a tick if found.
                            $lead_field_keys = array_keys($lead);
                            foreach ($lead_field_keys as $input_id) {
                                //mark as a tick if input label (from form meta) is equal to submitted value (from lead)
                                if (is_numeric($input_id) && absint($input_id) == absint($field_id)) {
                                    if ($lead[$input_id] == $columns[$field_id]["label"]) {
                                        $value = "<img src='" . GFCommon::get_base_url() . "/images/tick.png'/>";
                                    } else {
                                        $field = RGFormsModel::get_field($form, $field_id);
                                        if ($field["enableChoiceValue"] || $field["enablePrice"]) {
                                            foreach ($field["choices"] as $choice) {
                                                if ($choice["value"] == $lead[$field_id]) {
                                                    $value = "<img src='" . GFCommon::get_base_url() . "/images/tick.png'/>";
                                                    break;
                                                } else {
                                                    if ($field["enablePrice"]) {
                                                        list($val, $price) = explode("|", $lead[$field_id]);
                                                        if ($val == $choice["value"]) {
                                                            $value = "<img src='" . GFCommon::get_base_url() . "/images/tick.png'/>";
                                                            break;
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            break;
                        case "post_image":
                            list($url, $title, $caption, $description) = explode("|:|", $value);
                            if (!empty($url)) {
                                //displaying thumbnail (if file is an image) or an icon based on the extension
                                $thumb = self::get_icon_url($url);
                                $value = "<a href='" . esc_attr($url) . "' target='_blank' title='" . __("Click to view", "gravityforms") . "'><img src='{$thumb}'/></a>";
                            }
                            break;
                        case "post_category":
                            $ary = explode(":", $value);
                            $cat_name = count($ary) > 0 ? $ary[0] : "";
                            $value = $cat_name;
                            break;
                        case "fileupload":
                            $file_path = $value;
                            if (!empty($file_path)) {
                                //displaying thumbnail (if file is an image) or an icon based on the extension
                                $thumb = self::get_icon_url($file_path);
                                $file_path = esc_attr($file_path);
                                $value = "<a href='{$file_path}' target='_blank' title='" . __("Click to view", "gravityforms") . "'><img src='{$thumb}'/></a>";
                            }
                            break;
                        case "source_url":
                            $value = "<a href='" . esc_attr($lead["source_url"]) . "' target='_blank' alt='" . esc_attr($lead["source_url"]) . "' title='" . esc_attr($lead["source_url"]) . "'>.../" . esc_attr(GFCommon::truncate_url($lead["source_url"])) . "</a>";
                            break;
                        case "textarea":
                        case "post_content":
                        case "post_excerpt":
                            $value = esc_html($value);
                            break;
                        case "date_created":
                        case "payment_date":
                            $value = GFCommon::format_date($value, false);
                            break;
                        case "date":
                            $field = RGFormsModel::get_field($form, $field_id);
                            $value = GFCommon::date_display($value, $field["dateFormat"]);
                            break;
                        case "radio":
                        case "select":
                            $field = RGFormsModel::get_field($form, $field_id);
                            $value = GFCommon::selection_display($value, $field, $lead["currency"]);
                            break;
                        case "total":
                        case "payment_amount":
                            $value = GFCommon::to_money($value, $lead["currency"]);
                            break;
                        case "created_by":
                            if (!empty($value)) {
                                $userdata = get_userdata($value);
                                $value = $userdata->user_login;
                            }
                            break;
                        default:
                            $value = esc_html($value);
                    }
                    $value = apply_filters("gform_entries_field_value", $value, $form_id, $field_id, $lead);
                    $query_string = "gf_entries&view=entry&id={$form_id}&lid={$lead["id"]}{$search_qs}{$sort_qs}{$dir_qs}&paged=" . $page_index + 1;
                    if ($is_first_column) {
                        ?>
                                        <td class="column-title" >
                                            <a href="admin.php?page=gf_entries&view=entry&id=<?php 
                        echo $form_id;
                        ?>
&lid=<?php 
                        echo $lead["id"] . $search_qs . $sort_qs . $dir_qs;
                        ?>
&paged=<?php 
                        echo $page_index + 1;
                        ?>
"><?php 
                        echo $value;
                        ?>
</a>
                                            <div class="row-actions">
                                                <span class="edit">
                                                    <a title="<?php 
                        _e("View this entry", "gravityforms");
                        ?>
" href="admin.php?page=gf_entries&view=entry&id=<?php 
                        echo $form_id;
                        ?>
&lid=<?php 
                        echo $lead["id"] . $search_qs . $sort_qs . $dir_qs;
                        ?>
&paged=<?php 
                        echo $page_index + 1;
                        ?>
"><?php 
                        _e("View", "gravityforms");
                        ?>
</a>
                                                    |
                                                </span>
                                                <span class="edit">
                                                    <a id="mark_read_<?php 
                        echo $lead["id"];
                        ?>
" title="Mark this entry as read" href="javascript:ToggleRead(<?php 
                        echo $lead["id"];
                        ?>
);" style="display:<?php 
                        echo $lead["is_read"] ? "none" : "inline";
                        ?>
;"><?php 
                        _e("Mark read", "gravityforms");
                        ?>
</a><a id="mark_unread_<?php 
                        echo $lead["id"];
                        ?>
" title="<?php 
                        _e("Mark this entry as unread", "gravityforms");
                        ?>
" href="javascript:ToggleRead(<?php 
                        echo $lead["id"];
                        ?>
);" style="display:<?php 
                        echo $lead["is_read"] ? "inline" : "none";
                        ?>
;"><?php 
                        _e("Mark unread", "gravityforms");
                        ?>
</a>
                                                    <?php 
                        echo GFCommon::current_user_can_any("gravityforms_delete_entries") ? "|" : "";
                        ?>
                                                </span>

                                                <?php 
                        if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                            ?>
                                                    <span class="edit">
                                                        <?php 
                            $delete_link = '<a title="' . __("Delete this entry", "gravityforms") . '"  href="javascript:if ( confirm(' . __("'You are about to delete this entry. \\'Cancel\\' to stop, \\'OK\\' to delete.'", "gravityforms") . ') ) { DeleteLead(' . $lead["id"] . ')};">' . __("Delete", "gravityforms") . '</a>';
                            echo apply_filters("gform_delete_entry_link", $delete_link);
                            ?>
                                                    </span>
                                                    <?php 
                        }
                        do_action("gform_entries_first_column_actions", $form_id, $field_id, $value, $lead, $query_string);
                        ?>

                                            </div>
                                            <?php 
                        do_action("gform_entries_first_column", $form_id, $field_id, $value, $lead, $query_string);
                        ?>
                                        </td>
                                        <?php 
                    } else {
                        ?>
                                        <td class="<?php 
                        echo $nowrap_class;
                        ?>
">
                                            <?php 
                        echo $value;
                        ?>
&nbsp;
                                            <?php 
                        do_action("gform_entries_column", $form_id, $field_id, $value, $lead, $query_string);
                        ?>
                                        </td>
                                        <?php 
                    }
                    $is_first_column = false;
                }
                ?>
                                <td>&nbsp;</td>
                            </tr>
                            <?php 
            }
        } else {
            ?>
                        <tr>
                            <td colspan="<?php 
            echo sizeof($columns) + 3;
            ?>
" style="padding:20px;"><?php 
            _e("This form does not have any entries yet.", "gravityforms");
            ?>
</td>
                        </tr>
                        <?php 
        }
        ?>
                </tbody>
                </table>

                <div class="clear"></div>

                <div class="tablenav">

                    <div class="alignleft actions" style="padding:8px 0 7px 0;">
                        <label class="hidden" for="bulk_action2"> <?php 
        _e("Bulk action", "gravityforms");
        ?>
</label>
                        <select name="bulk_action2" id="bulk_action2">
                        <option value=''><?php 
        _e("Bulk action ", "gravityforms");
        ?>
</option>
                            <option value='delete'><?php 
        _e("Delete", "gravityforms");
        ?>
</option>
                            <option value='mark_read'><?php 
        _e("Mark as Read", "gravityforms");
        ?>
</option>
                            <option value='mark_unread'><?php 
        _e("Mark as Unread", "gravityforms");
        ?>
</option>
                            <option value='add_star'><?php 
        _e("Add Star", "gravityforms");
        ?>
</option>
                            <option value='remove_star'><?php 
        _e("Remove Star", "gravityforms");
        ?>
</option>
                        </select>
                        <?php 
        $apply_button = '<input type="submit" class="button" value="' . __("Apply", "gravityforms") . '" onclick="jQuery(\'#action\').val(\'bulk\');" />';
        echo apply_filters("gform_entry_apply_button", $apply_button);
        ?>
                    </div>

                    <?php 
        //Displaying paging links if appropriate
        if ($page_links) {
            ?>
                        <div class="tablenav-pages">
                            <span class="displaying-num"><?php 
            printf(__("Displaying %d - %d of %d", "gravityforms"), $first_item_index + 1, $first_item_index + $page_size > $lead_count ? $lead_count : $first_item_index + $page_size, $lead_count);
            ?>
</span>
                            <?php 
            echo $page_links;
            ?>
                        </div>
                        <?php 
        }
        ?>
                    <div class="clear"></div>
                </div>

            </form>
        </div>
        <?php 
    }
Ejemplo n.º 12
0
 public static function pdf_get_lead_field_display($field, $value, $currency = '', $use_text = false, $format = 'html', $media = 'screen')
 {
     if ($field['type'] == 'post_category') {
         $value = GFCommon::prepare_post_category_value($value, $field);
     }
     switch (RGFormsModel::get_input_type($field)) {
         case 'name':
             if (is_array($value)) {
                 $prefix = trim(rgget($field['id'] . '.2', $value));
                 $first = trim(rgget($field['id'] . '.3', $value));
                 $middle = trim(rgget($field['id'] . '.4', $value));
                 $last = trim(rgget($field['id'] . '.6', $value));
                 $suffix = trim(rgget($field['id'] . '.8', $value));
                 $name = $prefix;
                 $name .= !empty($name) && !empty($first) ? " {$first}" : $first;
                 $name .= !empty($name) && !empty($middle) ? " {$middle}" : $middle;
                 $name .= !empty($name) && !empty($last) ? " {$last}" : $last;
                 $name .= !empty($name) && !empty($suffix) ? " {$suffix}" : $suffix;
                 return $name;
             } else {
                 return $value;
             }
             break;
         case 'creditcard':
             if (is_array($value)) {
                 $card_number = trim(rgget($field['id'] . '.1', $value));
                 $card_type = trim(rgget($field['id'] . '.4', $value));
                 $separator = $format == 'html' ? '<br/>' : '\\n';
                 return empty($card_number) ? '' : $card_type . $separator . $card_number;
             } else {
                 return '';
             }
             break;
         case 'address':
             if (is_array($value)) {
                 $street_value = trim(rgget($field['id'] . '.1', $value));
                 $street2_value = trim(rgget($field['id'] . '.2', $value));
                 $city_value = trim(rgget($field['id'] . '.3', $value));
                 $state_value = trim(rgget($field['id'] . '.4', $value));
                 $zip_value = trim(rgget($field['id'] . '.5', $value));
                 $country_value = trim(rgget($field['id'] . '.6', $value));
                 $line_break = $format == 'html' ? '<br />' : '\\n';
                 $address_display_format = apply_filters('gform_address_display_format', 'default');
                 if ($address_display_format == 'zip_before_city') {
                     /*
                     Sample:
                     3333 Some Street
                     suite 16
                     2344 City, State
                     Country
                     */
                     $addr_ary = array();
                     $addr_ary[] = $street_value;
                     if (!empty($street2_value)) {
                         $addr_ary[] = $street2_value;
                     }
                     $zip_line = trim($zip_value . ' ' . $city_value);
                     $zip_line .= !empty($zip_line) && !empty($state_value) ? ", {$state_value}" : $state_value;
                     $zip_line = trim($zip_line);
                     if (!empty($zip_line)) {
                         $addr_ary[] = $zip_line;
                     }
                     if (!empty($country_value)) {
                         $addr_ary[] = $country_value;
                     }
                     $address = implode('<br />', $addr_ary);
                 } else {
                     $address = $street_value;
                     $address .= !empty($address) && !empty($street2_value) ? $line_break . $street2_value : $street2_value;
                     $address .= !empty($address) && (!empty($city_value) || !empty($state_value)) ? $line_break . $city_value : $city_value;
                     $address .= !empty($address) && !empty($city_value) && !empty($state_value) ? ", {$state_value}" : $state_value;
                     $address .= !empty($address) && !empty($zip_value) ? " {$zip_value}" : $zip_value;
                     $address .= !empty($address) && !empty($country_value) ? $line_break . $country_value : $country_value;
                 }
                 return $address;
             } else {
                 return '';
             }
             break;
         case 'email':
             return GFCommon::is_valid_email($value) && $format == 'html' ? '<a href="mailto:' . $value . '">' . $value . '</a>' : $value;
             break;
         case 'website':
             return GFCommon::is_valid_url($value) && $format == 'html' ? '<a href="' . $value . '" target="_blank">' . $value . '</a>' : $value;
             break;
         case 'checkbox':
             if (is_array($value)) {
                 $items = '';
                 foreach ($value as $key => $item) {
                     if (!empty($item)) {
                         switch ($format) {
                             case 'text':
                                 $items .= GFCommon::selection_display($item, $field, $currency, true) . ', ';
                                 break;
                             default:
                                 $items .= '<li>' . GFCommon::selection_display($item, $field, $currency, true) . '</li>';
                                 break;
                         }
                     }
                 }
                 if (empty($items)) {
                     return '';
                 } else {
                     if ($format == 'text') {
                         return substr($items, 0, strlen($items) - 2);
                         //removing last comma
                     } else {
                         return '<ul class="bulleted">' . $items . '</ul>';
                     }
                 }
             } else {
                 return $value;
             }
             break;
         case 'post_image':
             $ary = explode('|:|', $value);
             $url = count($ary) > 0 ? $ary[0] : '';
             $title = count($ary) > 1 ? $ary[1] : '';
             $caption = count($ary) > 2 ? $ary[2] : '';
             $description = count($ary) > 3 ? $ary[3] : '';
             if (!empty($url)) {
                 $url = str_replace(' ', '%20', $url);
                 switch ($format) {
                     case 'text':
                         $value = $url;
                         $value .= !empty($title) ? '\\n\\n' . $field['label'] . ' (' . __('Title', 'gravityforms') . '): ' . $title : '';
                         $value .= !empty($caption) ? '\\n\\n' . $field['label'] . ' (' . __('Caption', 'gravityforms') . '): ' . $caption : '';
                         $value .= !empty($description) ? '\\n\\n' . $field['label'] . ' (' . __('Description', 'gravityforms') . '): ' . $description : '';
                         break;
                     default:
                         $path = str_replace(site_url() . '/', ABSPATH, $url);
                         $value = "<a href='{$url}' target='_blank' title='" . __("Click to view", "gravityforms") . "'><img src='{$path}' width='100' /></a>";
                         $value .= !empty($title) ? "<div>Title: {$title}</div>" : "";
                         $value .= !empty($caption) ? "<div>Caption: {$caption}</div>" : "";
                         $value .= !empty($description) ? "<div>Description: {$description}</div>" : "";
                         break;
                 }
             }
             return $value;
         case 'fileupload':
             $output = '';
             $output_arr = array();
             if (!empty($value)) {
                 $output .= '<ul>';
                 $file_paths = rgar($field, 'multipleFiles') ? json_decode($value) : array($value);
                 foreach ($file_paths as $file_path) {
                     $info = pathinfo($file_path);
                     $file_path = esc_attr(str_replace(' ', '%20', $file_path));
                     $output_arr[] = '<li><a href="' . $file_path . '" target="_blank" title="' . __('Click to view', 'gravityforms') . '">' . $info['basename'] . '</a></li>';
                 }
                 $output .= join(PHP_EOL, $output_arr);
                 $output .= '</ul>';
             }
             return $output;
             break;
         case 'date':
             return GFCommon::date_display($value, rgar($field, 'dateFormat'));
             break;
         case 'radio':
         case 'select':
             return GFCommon::selection_display($value, $field, $currency, true);
             break;
         case 'multiselect':
             if (empty($value) || $format == 'text') {
                 return $value;
             }
             if (!is_array($value)) {
                 $value = explode(',', $value);
             }
             $items = '';
             foreach ($value as $item) {
                 $items .= '<li>' . GFCommon::selection_display($item, $field, $currency, true) . '</li>';
             }
             return '<ul class="bulleted">' . $items . '</ul>';
             break;
         case 'calculation':
         case 'singleproduct':
             if (is_array($value)) {
                 $product_name = trim($value[$field['id'] . '.1']);
                 $price = trim($value[$field['id'] . '.2']);
                 $quantity = trim($value[$field['id'] . '.3']);
                 $product = $product_name . ', ' . __('Qty: ', 'gravityforms') . $quantity . ', ' . __('Price: ', 'gravityforms') . $price;
                 return $product;
             } else {
                 return '';
             }
             break;
         case 'number':
             return GFCommon::format_number($value, rgar($field, 'numberFormat'));
             break;
         case 'singleshipping':
         case 'donation':
         case 'total':
         case 'price':
             return GFCommon::to_money($value, $currency);
         case 'list':
             if (empty($value)) {
                 return '';
             }
             $value = unserialize($value);
             $has_columns = is_array($value[0]);
             if (!$has_columns) {
                 $items = '';
                 foreach ($value as $key => $item) {
                     if (!empty($item)) {
                         switch ($format) {
                             case 'text':
                                 $items .= $item . ', ';
                                 break;
                             case 'url':
                                 $items .= $item . ',';
                                 break;
                             default:
                                 if ($media == 'email') {
                                     $items .= '<li>' . htmlspecialchars($item) . '</li>';
                                 } else {
                                     $items .= '<li>' . htmlspecialchars($item) . '</li>';
                                 }
                                 break;
                         }
                     }
                 }
                 if (empty($items)) {
                     return '';
                 } else {
                     if ($format == 'text') {
                         return substr($items, 0, strlen($items) - 2);
                         //removing last comma
                     } else {
                         if ($format == 'url') {
                             return substr($items, 0, strlen($items) - 1);
                             //removing last comma
                         } else {
                             return '<ul class="bulleted">' . $items . '</ul>';
                         }
                     }
                 }
             } else {
                 if (is_array($value)) {
                     $columns = array_keys($value[0]);
                     $list = '';
                     switch ($format) {
                         case 'text':
                             $is_first_row = true;
                             foreach ($value as $item) {
                                 if (!$is_first_row) {
                                     $list .= '\\n\\n' . $field['label'] . ': ';
                                 }
                                 $list .= implode(',', array_values($item));
                                 $is_first_row = false;
                             }
                             break;
                         case 'url':
                             foreach ($value as $item) {
                                 $list .= implode('|', array_values($item)) . ',';
                             }
                             if (!empty($list)) {
                                 $list = substr($list, 0, strlen($list) - 1);
                             }
                             break;
                         default:
                             if ($media == 'email') {
                                 $list = '<table autosize="1" class="gfield_list" style="border-top: 1px solid #DFDFDF; border-left: 1px solid #DFDFDF; border-spacing: 0; padding: 0; margin: 2px 0 6px; width: 100%"><thead><tr>';
                                 //reading columns from entry data
                                 foreach ($columns as $column) {
                                     $list .= '<th style="background-image: none; border-right: 1px solid #DFDFDF; border-bottom: 1px solid #DFDFDF; padding: 6px 10px; font-family: sans-serif; font-size: 12px; font-weight: bold; background-color: #F1F1F1; color:#333; text-align:left">' . esc_html($column) . '</th>';
                                 }
                                 $list .= '</tr></thead>';
                                 $list .= '<tbody style="background-color: #F9F9F9">';
                                 foreach ($value as $item) {
                                     $list .= '<tr>';
                                     foreach ($columns as $column) {
                                         $val = rgar($item, $column);
                                         $list .= '<td style="padding: 6px 10px; border-right: 1px solid #DFDFDF; border-bottom: 1px solid #DFDFDF; border-top: 1px solid #FFF; font-family: sans-serif; font-size:12px;">{$val}</td>';
                                     }
                                     $list .= '</tr>';
                                 }
                                 $list .= '</tbody></table>';
                             } else {
                                 $list = '<table autosize="1" class="gfield_list"><thead><tr>';
                                 //reading columns from entry data
                                 foreach ($columns as $column) {
                                     $list .= '<th>' . esc_html($column) . '</th>';
                                 }
                                 $list .= '</tr></thead>';
                                 $list .= '<tbody>';
                                 foreach ($value as $item) {
                                     $list .= '<tr>';
                                     foreach ($columns as $column) {
                                         $val = rgar($item, $column);
                                         $list .= '<td>' . htmlspecialchars($val) . '</td>';
                                     }
                                     $list .= '</tr>';
                                 }
                                 $list .= '</tbody></table>';
                             }
                             break;
                     }
                     return $list;
                 }
             }
             return '';
             break;
         default:
             if (!is_array($value)) {
                 return nl2br($value);
             }
             break;
     }
 }
    public static function leads_page($form_id)
    {
        global $wpdb;
        //quit if version of wp is not supported
        if (!GFCommon::ensure_wp_version()) {
            return;
        }
        echo GFCommon::get_remote_message();
        $action = RGForms::post("action");
        $update_message = "";
        switch ($action) {
            case "delete":
                check_admin_referer('gforms_entry_list', 'gforms_entry_list');
                $lead_id = $_POST["action_argument"];
                RGFormsModel::delete_lead($lead_id);
                $update_message = __("Entry deleted.", "gravityforms");
                break;
            case "bulk":
                check_admin_referer('gforms_entry_list', 'gforms_entry_list');
                $bulk_action = !empty($_POST["bulk_action"]) ? $_POST["bulk_action"] : $_POST["bulk_action2"];
                $leads = $_POST["lead"];
                $entry_count = count($leads) > 1 ? sprintf(__("%d entries", "gravityforms"), count($leads)) : __("1 entry", "gravityforms");
                switch ($bulk_action) {
                    case "delete":
                        RGFormsModel::delete_leads($leads);
                        $update_message = sprintf(__("%s deleted.", "gravityforms"), $entry_count);
                        break;
                    case "trash":
                        RGFormsModel::update_leads_property($leads, "status", "trash");
                        $update_message = sprintf(__("%s moved to Trash.", "gravityforms"), $entry_count);
                        break;
                    case "restore":
                        RGFormsModel::update_leads_property($leads, "status", "active");
                        $update_message = sprintf(__("%s restored from the Trash.", "gravityforms"), $entry_count);
                        break;
                    case "unspam":
                        RGFormsModel::update_leads_property($leads, "status", "active");
                        $update_message = sprintf(__("%s restored from the spam.", "gravityforms"), $entry_count);
                        break;
                    case "spam":
                        RGFormsModel::update_leads_property($leads, "status", "spam");
                        $update_message = sprintf(__("%s marked as spam.", "gravityforms"), $entry_count);
                        break;
                    case "mark_read":
                        RGFormsModel::update_leads_property($leads, "is_read", 1);
                        $update_message = sprintf(__("%s marked as read.", "gravityforms"), $entry_count);
                        break;
                    case "mark_unread":
                        RGFormsModel::update_leads_property($leads, "is_read", 0);
                        $update_message = sprintf(__("%s marked as unread.", "gravityforms"), $entry_count);
                        break;
                    case "add_star":
                        RGFormsModel::update_leads_property($leads, "is_starred", 1);
                        $update_message = sprintf(__("%s starred.", "gravityforms"), $entry_count);
                        break;
                    case "remove_star":
                        RGFormsModel::update_leads_property($leads, "is_starred", 0);
                        $update_message = sprintf(__("%s unstarred.", "gravityforms"), $entry_count);
                        break;
                }
                break;
            case "change_columns":
                check_admin_referer('gforms_entry_list', 'gforms_entry_list');
                $columns = GFCommon::json_decode(stripslashes($_POST["grid_columns"]), true);
                RGFormsModel::update_grid_column_meta($form_id, $columns);
                break;
        }
        $filter = rgget("filter");
        if (rgpost("button_delete_permanently")) {
            RGFormsModel::delete_leads_by_form($form_id, $filter);
        }
        $sort_field = empty($_GET["sort"]) ? 0 : $_GET["sort"];
        $sort_direction = empty($_GET["dir"]) ? "DESC" : $_GET["dir"];
        $search = RGForms::get("s");
        $page_index = empty($_GET["paged"]) ? 0 : intval($_GET["paged"]) - 1;
        $star = $filter == "star" ? 1 : null;
        // is_numeric(RGForms::get("star")) ? intval(RGForms::get("star")) : null;
        $read = $filter == "unread" ? 0 : null;
        //is_numeric(RGForms::get("read")) ? intval(RGForms::get("read")) : null;
        $page_size = 20;
        $first_item_index = $page_index * $page_size;
        $form = RGFormsModel::get_form_meta($form_id);
        $sort_field_meta = RGFormsModel::get_field($form, $sort_field);
        $is_numeric = $sort_field_meta["type"] == "number";
        $status = in_array($filter, array("trash", "spam")) ? $filter : "active";
        $leads = RGFormsModel::get_leads($form_id, $sort_field, $sort_direction, $search, $first_item_index, $page_size, $star, $read, $is_numeric, null, null, $status);
        $lead_count = RGFormsModel::get_lead_count($form_id, $search, $star, $read);
        $summary = RGFormsModel::get_form_counts($form_id);
        $total_lead_count = $summary["total"];
        $unread_count = $summary["unread"];
        $starred_count = $summary["starred"];
        $spam_count = $summary["spam"];
        $trash_count = $summary["trash"];
        $columns = RGFormsModel::get_grid_columns($form_id, true);
        $search_qs = empty($search) ? "" : "&s=" . urlencode($search);
        $sort_qs = empty($sort_field) ? "" : "&sort={$sort_field}";
        $dir_qs = empty($sort_field) ? "" : "&dir={$sort_direction}";
        $star_qs = $star !== null ? "&star={$star}" : "";
        $read_qs = $read !== null ? "&read={$read}" : "";
        $page_links = paginate_links(array('base' => admin_url("admin.php") . "?page=gf_entries&view=entries&id={$form_id}&%_%" . $search_qs . $sort_qs . $dir_qs . $star_qs . $read_qs, 'format' => 'paged=%#%', 'prev_text' => __('&laquo;'), 'next_text' => __('&raquo;'), 'total' => ceil($lead_count / $page_size), 'current' => $page_index + 1, 'show_all' => false));
        wp_print_scripts(array("thickbox"));
        wp_print_styles(array("thickbox"));
        ?>

        <script src="<?php 
        echo GFCommon::get_base_url();
        ?>
/js/jquery.json-1.3.js?ver=<?php 
        echo GFCommon::$version;
        ?>
"></script>
        <script src="<?php 
        echo includes_url();
        ?>
/js/wp-lists.dev.js" type="text/javascript"></script>
        <script src="<?php 
        echo includes_url();
        ?>
/js/wp-ajax-response.dev.js" type="text/javascript"></script>

        <script type="text/javascript">

            var messageTimeout = false;

            function ChangeColumns(columns){
                jQuery("#action").val("change_columns");
                jQuery("#grid_columns").val(jQuery.toJSON(columns));
                tb_remove();
                jQuery("#lead_form")[0].submit();
            }

            function Search(sort_field_id, sort_direction, form_id, search, star, read){
                var search_qs = search == "" ? "" : "&s=" + search;
                var star_qs = star == "" ? "" : "&star=" + star;
                var read_qs = read == "" ? "" : "&read=" + read;

                var location = "?page=gf_entries&view=entries&id=" + form_id + "&sort=" + sort_field_id + "&dir=" + sort_direction + search_qs + star_qs + read_qs;
                document.location = location;
            }

            function ToggleStar(img, lead_id){
                var is_starred = img.src.indexOf("star1.png") >=0
                if(is_starred)
                    img.src = img.src.replace("star1.png", "star0.png");
                else
                    img.src = img.src.replace("star0.png", "star1.png");

                jQuery("#lead_row_" + lead_id).toggleClass("lead_starred");

                UpdateCount("star_count", is_starred ? -1 : 1);

                UpdateLeadProperty(lead_id, "is_starred", is_starred ? 0 : 1);
            }

            function ToggleRead(lead_id){
                var title = jQuery("#lead_row_" + lead_id);
                marking_read = title.hasClass("lead_unread");

                jQuery("#mark_read_" + lead_id).css("display", marking_read ? "none" : "inline");
                jQuery("#mark_unread_" + lead_id).css("display", marking_read ? "inline" : "none");
                jQuery("#is_unread_" + lead_id).css("display", marking_read ? "inline" : "none");
                title.toggleClass("lead_unread");

                UpdateCount("unread_count", marking_read ? -1 : 1);

                UpdateLeadProperty(lead_id, "is_read", marking_read ? 1 : 0);
            }

            function UpdateLeadProperty(lead_id, name, value){
                var mysack = new sack("<?php 
        echo admin_url("admin-ajax.php");
        ?>
" );
                mysack.execute = 1;
                mysack.method = 'POST';
                mysack.setVar( "action", "rg_update_lead_property" );
                mysack.setVar( "rg_update_lead_property", "<?php 
        echo wp_create_nonce("rg_update_lead_property");
        ?>
" );
                mysack.setVar( "lead_id", lead_id);
                mysack.setVar( "name", name);
                mysack.setVar( "value", value);
                mysack.encVar( "cookie", document.cookie, false );
                mysack.onError = function() { alert('<?php 
        echo esc_js(__("Ajax error while setting lead property", "gravityforms"));
        ?>
' )};
                mysack.runAJAX();

                return true;
            }

            function UpdateCount(element_id, change){
                var element = jQuery("#" + element_id);
                var count = parseInt(element.html()) + change
                element.html(count + "");
            }

            function DeleteLead(lead_id){
                jQuery("#action").val("delete");
                jQuery("#action_argument").val(lead_id);
                jQuery("#lead_form")[0].submit();
                return true;
            }

            function handleBulkApply(actionElement){

                var action = jQuery("#" + actionElement).val();
                var defaultModalOptions = '';
                var leadIds = getLeadIds();

                if(leadIds.length == 0){
                    alert('<?php 
        _e('Please select at least one entry.', 'gravityforms');
        ?>
');
                    return false;
                }

                switch(action){

                case 'resend_notifications':
                    resetResendNotificationsUI();
                    tb_show('<?php 
        _e("Resend Notifications", "gravityforms");
        ?>
', '#TB_inline?width=350&amp;inlineId=notifications_modal_container', '');
                    return false;
                    break;

                case 'print':
                    resetPrintUI();
                    tb_show('<?php 
        _e("Print Entries", "gravityforms");
        ?>
', '#TB_inline?width=350&amp;height=250&amp;inlineId=print_modal_container', '');
                    return false;
                    break;

                default:
                    jQuery('#action').val('bulk');
                }

            }

            function getLeadIds(){

                var leads = jQuery(".check-column input[name='lead[]']:checked");
                var leadIds = new Array();

                jQuery(leads).each(function(i){
                    leadIds[i] = jQuery(leads[i]).val();
                });

                return leadIds;
            }

            function BulkResendNotifications(){

                var sendAdmin = jQuery("#notification_admin").is(":checked") ? 1 : 0;
                var sendUser = jQuery("#notification_user").is(":checked") ? 1 : 0;
                var leadIds = getLeadIds();

                var sendTo = jQuery('#notification_override_email').val();

                if(!sendAdmin && !sendUser) {
                    displayMessage("<?php 
        _e("You must select at least one type of notification to resend.", "gravityforms");
        ?>
", "error", "#notifications_container");
                    return;
                }

                jQuery('#please_wait_container').fadeIn();

                jQuery.post(ajaxurl, {
                    action : "gf_resend_notifications",
                    gf_resend_notifications : '<?php 
        echo wp_create_nonce('gf_resend_notifications');
        ?>
',
                    sendAdmin : sendAdmin,
                    sendUser : sendUser,
                    sendTo : sendTo,
                    leadIds : leadIds,
                    formId : '<?php 
        echo $form['id'];
        ?>
'
                    },
                    function(response){

                        jQuery('#please_wait_container').hide();

                        if(response) {
                            displayMessage(response, "error", "#notifications_container");
                        } else {
                            var message = '<?php 
        _e("Notifications for %s were resent successfully.", "gravityforms");
        ?>
';
                            displayMessage(message.replace('%s', leadIds.length + ' ' + getPlural(leadIds.length, '<?php 
        _e('entry', 'gravityforms');
        ?>
', '<?php 
        _e('entries', 'gravityforms');
        ?>
')), "updated", "#lead_form");
                            closeModal(true);
                        }

                    }
                );

            }

            function resetResendNotificationsUI(){

                jQuery('#notification_admin, #notification_user').attr('checked', false);
                jQuery('#notifications_container .message, #notifications_override_settings').hide();

            }

            function BulkPrint(){

                var leadIds = getLeadIds();
                var leadsQS = '&lid=' + leadIds.join(',');
                var notesQS = jQuery('#gform_print_notes').is(':checked') ? '&notes=1' : '';
                var pageBreakQS = jQuery('#gform_print_page_break').is(':checked') ? '&page_break=1' : '';

                var url = '<?php 
        echo site_url();
        ?>
/?gf_page=print-entry&fid=<?php 
        echo $form['id'];
        ?>
' + leadsQS + notesQS + pageBreakQS;
                window.open (url,'printwindow');

                closeModal(true);
                hideMessage('#lead_form', false);
            }

            function resetPrintUI(){

                jQuery('#print_options input[type="checkbox"]').attr('checked', false);

            }

            function displayMessage(message, messageClass, container){

                hideMessage(container, true);

                var messageBox = jQuery('<div class="message ' + messageClass + '" style="display:none;"><p>' + message + '</p></div>');
                jQuery(messageBox).prependTo(container).slideDown();

                if(messageClass == 'updated')
                    messageTimeout = setTimeout(function(){ hideMessage(container, false); }, 10000);

            }

            function hideMessage(container, messageQueued){

                if(messageTimeout)
                    clearTimeout(messageTimeout);

                var messageBox = jQuery(container).find('.message');

                if(messageQueued)
                    jQuery(messageBox).remove();
                else
                    jQuery(messageBox).slideUp(function(){ jQuery(this).remove(); });

            }

            function closeModal(isSuccess) {

                if(isSuccess)
                    jQuery('.check-column input[type="checkbox"]').attr('checked', false);

                tb_remove();

            }

            function getPlural(count, singular, plural) {
                return count > 1 ? plural : singular;
            }

            function toggleNotificationOverride(isInit) {

                if(isInit)
                    jQuery('#notification_override_email').val('');

                if(jQuery('#notification_admin').is(':checked') || jQuery('#notification_user').is(':checked')) {
                    jQuery('#notifications_override_settings').slideDown();
                } else {
                    jQuery('#notifications_override_settings').slideUp(function(){
                        jQuery('#notification_override_email').val('');
                    });
                }

            }

            jQuery(document).ready(function(){
                jQuery("#lead_search").keypress(function(event){
                    if(event.keyCode == 13){
                        Search('<?php 
        echo $sort_field;
        ?>
', '<?php 
        echo $sort_direction;
        ?>
', <?php 
        echo $form_id;
        ?>
, this.value, '<?php 
        echo $star;
        ?>
', '<?php 
        echo $read;
        ?>
');
                        event.preventDefault();
                    }
                });

                var action = '<?php 
        echo $action;
        ?>
';
                var message = '<?php 
        echo $update_message;
        ?>
';
                if(action && message)
                    displayMessage(message, 'updated', '#lead_form');


                var list = jQuery("#gf_entry_list").wpList( { alt: '<?php 
        echo esc_js(__('Entry List', 'gravityforms'));
        ?>
'} );
                list.bind('wpListDelEnd', function(e, s){

                    var currentStatus = "<?php 
        echo $filter == "trash" || $filter == "spam" ? $filter : "active";
        ?>
";
                    var movingTo = "active";
                    if(s.target.className.indexOf(':status=trash') != -1)
                        movingTo = "trash";
                    else if(s.target.className.indexOf(':status=spam') != -1)
                        movingTo = "spam";
                    else if(s.target.className.indexOf(':status=delete') != -1)
                        movingTo = "delete";

                    var id = s.data.entry;

                    var title = jQuery("#lead_row_" + id);
                    var isUnread = title.hasClass("lead_unread");
                    var isStarred = title.hasClass("lead_starred");

                    if(movingTo != "delete"){
                        //Updating All count
                        var allCount = currentStatus == "active" ? -1 : 1;
                        UpdateCount("all_count", allCount);

                        //Updating Unread count
                        if(isUnread){
                            var unreadCount = currentStatus == "active" ? -1 : 1;
                            UpdateCount("unread_count", unreadCount);
                        }

                        //Updating Starred count
                        if(isStarred){
                            var starCount = currentStatus == "active" ? -1 : 1;
                            UpdateCount("star_count", starCount);
                        }
                    }

                    //Updating Spam count
                    if(currentStatus == "spam" || movingTo == "spam"){
                        var spamCount = movingTo == "spam" ? 1 : -1;
                        UpdateCount("spam_count", spamCount);
                    }

                    //Updating trash count
                    if(currentStatus == "trash" || movingTo == "trash"){
                        var spamCount = movingTo == "trash" ? 1 : -1;
                        UpdateCount("trash_count", spamCount);
                    }

                });;
            });

        </script>
        <link rel="stylesheet" href="<?php 
        echo GFCommon::get_base_url();
        ?>
/css/admin.css" type="text/css" />
        <style>
            /*#TB_window { height: 400px !important; }
            #TB_ajaxContent[style] { height: 370px !important; }*/
            .lead_unread a, .lead_unread td{font-weight: bold;}
            .lead_spam_trash a, .lead_spam_trash td{font-weight:normal;}
            .row-actions a { font-weight:normal;}
            .entry_nowrap{ overflow:hidden; white-space:nowrap; }
            .message { margin: 15px 0 0 !important; }
        </style>


        <div class="wrap">

            <div class="icon32" id="gravity-entry-icon"><br></div>
            <h2><?php 
        _e("Entries", "gravityforms");
        ?>
 : <?php 
        echo $form["title"];
        ?>
 </h2>

            <?php 
        RGForms::top_toolbar();
        ?>

            <form id="lead_form" method="post">
                <?php 
        wp_nonce_field('gforms_entry_list', 'gforms_entry_list');
        ?>

                <input type="hidden" value="" name="grid_columns" id="grid_columns" />
                <input type="hidden" value="" name="action" id="action" />
                <input type="hidden" value="" name="action_argument" id="action_argument" />

                <ul class="subsubsub">
                    <li><a class="<?php 
        echo empty($filter) ? "current" : "";
        ?>
" href="?page=gf_entries&view=entries&id=<?php 
        echo $form_id;
        ?>
"><?php 
        _e("All", "gravityforms");
        ?>
 <span class="count">(<span id="all_count"><?php 
        echo $total_lead_count;
        ?>
</span>)</span></a> | </li>
                    <li><a class="<?php 
        echo $read !== null ? "current" : "";
        ?>
" href="?page=gf_entries&view=entries&id=<?php 
        echo $form_id;
        ?>
&filter=unread"><?php 
        _e("Unread", "gravityforms");
        ?>
 <span class="count">(<span id="unread_count"><?php 
        echo $unread_count;
        ?>
</span>)</span></a> | </li>
                    <li><a class="<?php 
        echo $star !== null ? "current" : "";
        ?>
" href="?page=gf_entries&view=entries&id=<?php 
        echo $form_id;
        ?>
&filter=star"><?php 
        _e("Starred", "gravityforms");
        ?>
 <span class="count">(<span id="star_count"><?php 
        echo $starred_count;
        ?>
</span>)</span></a> | </li>
                    <?php 
        if (GFCommon::has_akismet()) {
            ?>
                        <li><a class="<?php 
            echo $filter == "spam" ? "current" : "";
            ?>
" href="?page=gf_entries&view=entries&id=<?php 
            echo $form_id;
            ?>
&filter=spam"><?php 
            _e("Spam", "gravityforms");
            ?>
 <span class="count">(<span id="spam_count"><?php 
            echo $spam_count;
            ?>
</span>)</span></a> | </li>
                        <?php 
        }
        ?>
                    <li><a class="<?php 
        echo $filter == "trash" ? "current" : "";
        ?>
" href="?page=gf_entries&view=entries&id=<?php 
        echo $form_id;
        ?>
&filter=trash"><?php 
        _e("Trash", "gravityforms");
        ?>
 <span class="count">(<span id="trash_count"><?php 
        echo $trash_count;
        ?>
</span>)</span></a></li>
                </ul>
                <p class="search-box">
                    <label class="hidden" for="lead_search"><?php 
        _e("Search Entries:", "gravityforms");
        ?>
</label>
                    <input type="text" id="lead_search" value="<?php 
        echo $search;
        ?>
"><a class="button" id="lead_search_button" href="javascript:Search('<?php 
        echo $sort_field;
        ?>
', '<?php 
        echo $sort_direction;
        ?>
', <?php 
        echo $form_id;
        ?>
, jQuery('#lead_search').val(), '<?php 
        echo $star;
        ?>
', '<?php 
        echo $read;
        ?>
');"><?php 
        _e("Search", "gravityforms");
        ?>
</a>

                </p>
                <div class="tablenav">

                    <div class="alignleft actions" style="padding:8px 0 7px 0;">
                        <label class="hidden" for="bulk_action"> <?php 
        _e("Bulk action", "gravityforms");
        ?>
</label>
                        <select name="bulk_action" id="bulk_action">
                            <option value=''><?php 
        _e(" Bulk action ", "gravityforms");
        ?>
</option>
                            <?php 
        switch ($filter) {
            case "trash":
                ?>
                                    <option value='restore'><?php 
                _e("Restore", "gravityforms");
                ?>
</option>
                                    <?php 
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                        <option value='delete'><?php 
                    _e("Delete Permanently", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
                break;
            case "spam":
                ?>
                                    <option value='unspam'><?php 
                _e("Not Spam", "gravityforms");
                ?>
</option>
                                    <?php 
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                        <option value='delete'><?php 
                    _e("Delete Permanently", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
                break;
            default:
                ?>
                                    <option value='mark_read'><?php 
                _e("Mark as Read", "gravityforms");
                ?>
</option>
                                    <option value='mark_unread'><?php 
                _e("Mark as Unread", "gravityforms");
                ?>
</option>
                                    <option value='add_star'><?php 
                _e("Add Star", "gravityforms");
                ?>
</option>
                                    <option value='remove_star'><?php 
                _e("Remove Star", "gravityforms");
                ?>
</option>
                                    <option value='resend_notifications'><?php 
                _e("Resend Notifications", "gravityforms");
                ?>
</option>
                                    <option value='print'><?php 
                _e("Print", "gravityforms");
                ?>
</option>

                                    <?php 
                if (GFCommon::has_akismet()) {
                    ?>
                                        <option value='spam'><?php 
                    _e("Spam", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                        <option value='trash'><?php 
                    _e("Trash", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
        }
        ?>
                        </select>
                        <?php 
        $apply_button = '<input type="submit" class="button" value="' . __("Apply", "gravityforms") . '" onclick="return handleBulkApply(\'bulk_action\');" />';
        echo apply_filters("gform_entry_apply_button", $apply_button);
        if (in_array($filter, array("trash", "spam"))) {
            $message = $filter == "trash" ? __("WARNING! This operation cannot be undone. Empty trash? \\'Ok\\' to empty trash. \\'Cancel\\' to abort.") : __("WARNING! This operation cannot be undone. Permanently delete all spam? \\'Ok\\' to delete. \\'Cancel\\' to abort.");
            $button_label = $filter == "trash" ? __("Empty Trash", "gravityforms") : __("Delete All Spam", "gravityforms");
            ?>
                            <input type="submit" class="button" name="button_delete_permanently" value="<?php 
            echo $button_label;
            ?>
" onclick="return confirm('<?php 
            echo esc_attr($message);
            ?>
');" />
                            <?php 
        }
        ?>
                        <div id="notifications_modal_container" style="display:none;">
                            <div id="notifications_container">

                                <div id="post_tag" class="tagsdiv">
                                    <div id="resend_notifications_options">

                                        <p class="description"><?php 
        _e("Specify which notifications you would like to resend for the selected entries.", "gravityforms");
        ?>
</p>

                                        <?php 
        if (GFCommon::has_admin_notification($form)) {
            ?>
                                            <input type="checkbox" name="notification_admin" id="notification_admin" onclick="toggleNotificationOverride();" /> <label for="notification_admin"><?php 
            _e("Admin Notification", "gravityforms");
            ?>
</label> <br /><br />
                                        <?php 
        }
        ?>
                                        <?php 
        if (GFCommon::has_user_notification($form)) {
            ?>
                                            <input type="checkbox" name="notification_user" id="notification_user" onclick="toggleNotificationOverride();" /> <label for="notification_user"><?php 
            _e("User Notification", "gravityforms");
            ?>
</label> <br /><br />
                                        <?php 
        }
        ?>

                                        <div id="notifications_override_settings" style="display:none;">

                                            <p class="description" style="padding-top:0; margin-top:0;">You may override the default notification settings
                                             by entering a comma delimited list of emails to which the selected notifications should be sent.</p>
                                            <label for="notification_override_email"><?php 
        _e("Send To", "gravityforms");
        ?>
 <?php 
        gform_tooltip("notification_override_email");
        ?>
</label><br />
                                            <input type="text" name="notification_override_email" id="notification_override_email" style="width:99%;" /><br /><br />

                                        </div>

                                        <input type="button" name="notification_resend" id="notification_resend" value="<?php 
        _e("Resend Notifications", "gravityforms");
        ?>
" class="button" style="" onclick="BulkResendNotifications();"/>
                                        <span id="please_wait_container" style="display:none; margin-left: 5px;">
                                            <img src="<?php 
        echo GFCommon::get_base_url();
        ?>
/images/loading.gif"> <?php 
        _e("Resending...", "gravityforms");
        ?>
                                        </span>

                                    </div>

                                    <div id="resend_notifications_close" style="display:none;margin:10px 0 0;">
                                        <input type="button" name="resend_notifications_close_button" value="<?php 
        _e("Close Window", "gravityforms");
        ?>
" class="button" style="" onclick="closeModal(true);"/>
                                    </div>

                                </div>

                            </div>
                        </div> <!-- / Resend Notifications -->

                        <div id="print_modal_container" style="display:none;">
                            <div id="print_container">

                                <div id="post_tag" class="tagsdiv">
                                    <div id="print_options">

                                        <p class="description"><?php 
        _e("Print all of the selected entries at once.", "gravityforms");
        ?>
</p>

                                        <?php 
        if (GFCommon::current_user_can_any("gravityforms_view_entry_notes")) {
            ?>
                                            <input type="checkbox" name="gform_print_notes" value="print_notes" checked="checked" id="gform_print_notes" />
                                            <label for="gform_print_notes"><?php 
            _e("Include notes", "gravityforms");
            ?>
</label>
                                            <br /><br />
                                        <?php 
        }
        ?>

                                        <input type="checkbox" name="gform_print_page_break" value="print_notes" checked="checked" id="gform_print_page_break" />
                                        <label for="gform_print_page_break"><?php 
        _e("Add page break between entries", "gravityforms");
        ?>
</label>
                                        <br /><br />

                                        <input type="button" value="<?php 
        _e("Print", "gravityforms");
        ?>
" class="button" onclick="BulkPrint();" />

                                    </div>
                                </div>

                            </div>
                        </div> <!-- / Print -->

                    </div>

                    <?php 
        //Displaying paging links if appropriate
        if ($page_links) {
            ?>
                        <div class="tablenav-pages">
                            <span class="displaying-num"><?php 
            printf(__("Displaying %d - %d of %d", "gravityforms"), $first_item_index + 1, $first_item_index + $page_size > $lead_count ? $lead_count : $first_item_index + $page_size, $lead_count);
            ?>
</span>
                            <?php 
            echo $page_links;
            ?>
                        </div>
                        <?php 
        }
        ?>
                    <div class="clear"></div>
                </div>

                <table class="widefat fixed" cellspacing="0">
                <thead>
                    <tr>
                        <th scope="col" id="cb" class="manage-column column-cb check-column"><input type="checkbox" class="headercb" /></th>
                        <?php 
        if (!in_array($filter, array("spam", "trash"))) {
            ?>
                            <th scope="col" id="cb" class="manage-column column-cb check-column" >&nbsp;</th>
                            <?php 
        }
        foreach ($columns as $field_id => $field_info) {
            $dir = $field_id == 0 ? "DESC" : "ASC";
            //default every field so ascending sorting except date_created (id=0)
            if ($field_id == $sort_field) {
                //reverting direction if clicking on the currently sorted field
                $dir = $sort_direction == "ASC" ? "DESC" : "ASC";
            }
            ?>
                            <th scope="col" class="manage-column entry_nowrap" onclick="Search('<?php 
            echo $field_id;
            ?>
', '<?php 
            echo $dir;
            ?>
', <?php 
            echo $form_id;
            ?>
, '<?php 
            echo $search;
            ?>
', '<?php 
            echo $star;
            ?>
', '<?php 
            echo $read;
            ?>
');" style="cursor:pointer;"><?php 
            echo esc_html($field_info["label"]);
            ?>
</th>
                            <?php 
        }
        ?>
                        <th scope="col" align="right" width="50">
                            <a title="<?php 
        _e("Select Columns", "gravityforms");
        ?>
" href="<?php 
        echo site_url();
        ?>
/?gf_page=select_columns&id=<?php 
        echo $form_id;
        ?>
&TB_iframe=true&height=365&width=600" class="thickbox entries_edit_icon"><?php 
        _e("Edit", "gravityforms");
        ?>
</a>
                        </th>
                    </tr>
                </thead>
                <tfoot>
                    <tr>
                        <th scope="col" id="cb" class="manage-column column-cb check-column" style=""><input type="checkbox" /></th>
                        <?php 
        if (!in_array($filter, array("spam", "trash"))) {
            ?>
                            <th scope="col" id="cb" class="manage-column column-cb check-column" >&nbsp;</th>
                        <?php 
        }
        foreach ($columns as $field_id => $field_info) {
            $dir = $field_id == 0 ? "DESC" : "ASC";
            //default every field so ascending sorting except date_created (id=0)
            if ($field_id == $sort_field) {
                //reverting direction if clicking on the currently sorted field
                $dir = $sort_direction == "ASC" ? "DESC" : "ASC";
            }
            ?>
                            <th scope="col" class="manage-column entry_nowrap" onclick="Search('<?php 
            echo $field_id;
            ?>
', '<?php 
            echo $dir;
            ?>
', <?php 
            echo $form_id;
            ?>
, '<?php 
            echo $search;
            ?>
', '<?php 
            echo $star;
            ?>
', '<?php 
            echo $read;
            ?>
');" style="cursor:pointer;"><?php 
            echo esc_html($field_info["label"]);
            ?>
</th>
                            <?php 
        }
        ?>
                        <th scope="col" style="width:15px;">
                            <a href="<?php 
        echo site_url();
        ?>
/?gf_page=select_columns&id=<?php 
        echo $form_id;
        ?>
&TB_iframe=true&height=365&width=600" class="thickbox entries_edit_icon"><?php 
        _e("Edit", "gravityforms");
        ?>
</a>
                        </th>
                    </tr>
                </tfoot>

                <tbody class="list:gf_entry user-list" id="gf_entry_list">
                    <?php 
        if (sizeof($leads) > 0) {
            $field_ids = array_keys($columns);
            foreach ($leads as $lead) {
                ?>
                            <tr id="lead_row_<?php 
                echo $lead["id"];
                ?>
" class='author-self status-inherit <?php 
                echo $lead["is_read"] ? "" : "lead_unread";
                ?>
 <?php 
                echo $lead["is_starred"] ? "lead_starred" : "";
                ?>
 <?php 
                echo in_array($filter, array("trash", "spam")) ? "lead_spam_trash" : "";
                ?>
'  valign="top">
                                <th scope="row" class="check-column">
                                    <input type="checkbox" name="lead[]" value="<?php 
                echo $lead["id"];
                ?>
" />
                                </th>
                                <?php 
                if (!in_array($filter, array("spam", "trash"))) {
                    ?>
                                    <td >
                                        <img id="star_image_<?php 
                    echo $lead["id"];
                    ?>
" src="<?php 
                    echo GFCommon::get_base_url();
                    ?>
/images/star<?php 
                    echo intval($lead["is_starred"]);
                    ?>
.png" onclick="ToggleStar(this, <?php 
                    echo $lead["id"];
                    ?>
);" />
                                    </td>
                                <?php 
                }
                $is_first_column = true;
                $nowrap_class = "entry_nowrap";
                foreach ($field_ids as $field_id) {
                    $value = RGForms::get($field_id, $lead);
                    //filtering lead value
                    $value = apply_filters("gform_get_field_value", $value, $lead, RGFormsModel::get_field($form, $field_id));
                    $input_type = !empty($columns[$field_id]["inputType"]) ? $columns[$field_id]["inputType"] : $columns[$field_id]["type"];
                    switch ($input_type) {
                        case "checkbox":
                            $value = "";
                            //if this is the main checkbox field (not an input), display a comma separated list of all inputs
                            if (absint($field_id) == $field_id) {
                                $lead_field_keys = array_keys($lead);
                                $items = array();
                                foreach ($lead_field_keys as $input_id) {
                                    if (is_numeric($input_id) && absint($input_id) == $field_id) {
                                        $items[] = GFCommon::selection_display(rgar($lead, $input_id), null, $lead["currency"], false);
                                    }
                                }
                                $value = GFCommon::implode_non_blank(", ", $items);
                            } else {
                                $value = "";
                                //looping through lead detail values trying to find an item identical to the column label. Mark with a tick if found.
                                $lead_field_keys = array_keys($lead);
                                foreach ($lead_field_keys as $input_id) {
                                    //mark as a tick if input label (from form meta) is equal to submitted value (from lead)
                                    if (is_numeric($input_id) && absint($input_id) == absint($field_id)) {
                                        if ($lead[$input_id] == $columns[$field_id]["label"]) {
                                            $value = "<img src='" . GFCommon::get_base_url() . "/images/tick.png'/>";
                                        } else {
                                            $field = RGFormsModel::get_field($form, $field_id);
                                            if (rgar($field, "enableChoiceValue") || rgar($field, "enablePrice")) {
                                                foreach ($field["choices"] as $choice) {
                                                    if ($choice["value"] == $lead[$field_id]) {
                                                        $value = "<img src='" . GFCommon::get_base_url() . "/images/tick.png'/>";
                                                        break;
                                                    } else {
                                                        if ($field["enablePrice"]) {
                                                            $ary = explode("|", $lead[$field_id]);
                                                            $val = count($ary) > 0 ? $ary[0] : "";
                                                            $price = count($ary) > 1 ? $ary[1] : "";
                                                            if ($val == $choice["value"]) {
                                                                $value = "<img src='" . GFCommon::get_base_url() . "/images/tick.png'/>";
                                                                break;
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            break;
                        case "post_image":
                            list($url, $title, $caption, $description) = rgexplode("|:|", $value, 4);
                            if (!empty($url)) {
                                //displaying thumbnail (if file is an image) or an icon based on the extension
                                $thumb = self::get_icon_url($url);
                                $value = "<a href='" . esc_attr($url) . "' target='_blank' title='" . __("Click to view", "gravityforms") . "'><img src='{$thumb}'/></a>";
                            }
                            break;
                        case "post_category":
                            $ary = explode(":", $value);
                            $cat_name = count($ary) > 0 ? $ary[0] : "";
                            $value = $cat_name;
                            break;
                        case "fileupload":
                            $file_path = $value;
                            if (!empty($file_path)) {
                                //displaying thumbnail (if file is an image) or an icon based on the extension
                                $thumb = self::get_icon_url($file_path);
                                $file_path = esc_attr($file_path);
                                $value = "<a href='{$file_path}' target='_blank' title='" . __("Click to view", "gravityforms") . "'><img src='{$thumb}'/></a>";
                            }
                            break;
                        case "source_url":
                            $value = "<a href='" . esc_attr($lead["source_url"]) . "' target='_blank' alt='" . esc_attr($lead["source_url"]) . "' title='" . esc_attr($lead["source_url"]) . "'>.../" . esc_attr(GFCommon::truncate_url($lead["source_url"])) . "</a>";
                            break;
                        case "textarea":
                        case "post_content":
                        case "post_excerpt":
                            $value = esc_html($value);
                            break;
                        case "date_created":
                        case "payment_date":
                            $value = GFCommon::format_date($value, false);
                            break;
                        case "date":
                            $field = RGFormsModel::get_field($form, $field_id);
                            $value = GFCommon::date_display($value, $field["dateFormat"]);
                            break;
                        case "radio":
                        case "select":
                            $field = RGFormsModel::get_field($form, $field_id);
                            $value = GFCommon::selection_display($value, $field, $lead["currency"]);
                            break;
                        case "number":
                            $field = RGFormsModel::get_field($form, $field_id);
                            $value = GFCommon::format_number($value, rgar($field, "numberFormat"));
                            break;
                        case "total":
                        case "payment_amount":
                            $value = GFCommon::to_money($value, $lead["currency"]);
                            break;
                        case "created_by":
                            if (!empty($value)) {
                                $userdata = get_userdata($value);
                                $value = $userdata->user_login;
                            }
                            break;
                        default:
                            $value = esc_html($value);
                    }
                    $value = apply_filters("gform_entries_field_value", $value, $form_id, $field_id, $lead);
                    $query_string = "gf_entries&view=entry&id={$form_id}&lid={$lead["id"]}{$search_qs}{$sort_qs}{$dir_qs}&paged=" . ($page_index + 1);
                    if ($is_first_column) {
                        ?>
                                        <td class="column-title" >
                                            <a href="admin.php?page=gf_entries&view=entry&id=<?php 
                        echo $form_id;
                        ?>
&lid=<?php 
                        echo $lead["id"] . $search_qs . $sort_qs . $dir_qs;
                        ?>
&paged=<?php 
                        echo $page_index + 1;
                        ?>
"><?php 
                        echo $value;
                        ?>
</a>
                                            <div class="row-actions">
                                                <?php 
                        switch ($filter) {
                            case "trash":
                                ?>
                                                        <span class="edit">
                                                            <a title="<?php 
                                _e("View this entry", "gravityforms");
                                ?>
" href="admin.php?page=gf_entries&view=entry&id=<?php 
                                echo $form_id;
                                ?>
&lid=<?php 
                                echo $lead["id"] . $search_qs . $sort_qs . $dir_qs;
                                ?>
&paged=<?php 
                                echo $page_index + 1;
                                ?>
"><?php 
                                _e("View", "gravityforms");
                                ?>
</a>
                                                            |
                                                        </span>

                                                        <span class="edit">
                                                            <a class='delete:gf_entry_list:lead_row_<?php 
                                echo $lead["id"];
                                ?>
::status=active&entry=<?php 
                                echo $lead["id"];
                                ?>
' title="<?php 
                                echo _e("Restore this entry", "gravityforms");
                                ?>
" href="<?php 
                                echo wp_nonce_url("?page=gf_entries", "gf_delete_entry");
                                ?>
"><?php 
                                _e("Restore", "gravityforms");
                                ?>
</a>
                                                            <?php 
                                echo GFCommon::current_user_can_any("gravityforms_delete_entries") ? "|" : "";
                                ?>
                                                        </span>

                                                        <?php 
                                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                                    ?>
                                                            <span class="delete">
                                                                <?php 
                                    $delete_link = '<a class="delete:gf_entry_list:lead_row_' . $lead["id"] . '::status=delete&entry=' . $lead["id"] . '" title="' . __("Delete this entry permanently", "gravityforms") . '"  href="' . wp_nonce_url("?page=gf_entries", "gf_delete_entry") . '">' . __("Delete Permanently", "gravityforms") . '</a>';
                                    echo apply_filters("gform_delete_entry_link", $delete_link);
                                    ?>
                                                            </span>
                                                            <?php 
                                }
                                break;
                            case "spam":
                                ?>
                                                        <span class="edit">
                                                            <a title="<?php 
                                _e("View this entry", "gravityforms");
                                ?>
" href="admin.php?page=gf_entries&view=entry&id=<?php 
                                echo $form_id;
                                ?>
&lid=<?php 
                                echo $lead["id"] . $search_qs . $sort_qs . $dir_qs;
                                ?>
&paged=<?php 
                                echo $page_index + 1;
                                ?>
"><?php 
                                _e("View", "gravityforms");
                                ?>
</a>
                                                            |
                                                        </span>

                                                        <span class="unspam">
                                                            <a class='delete:gf_entry_list:lead_row_<?php 
                                echo $lead["id"];
                                ?>
::status=unspam&entry=<?php 
                                echo $lead["id"];
                                ?>
' title="<?php 
                                echo _e("Mark this entry as not spam", "gravityforms");
                                ?>
" href="<?php 
                                echo wp_nonce_url("?page=gf_entries", "gf_delete_entry");
                                ?>
"><?php 
                                _e("Not Spam", "gravityforms");
                                ?>
</a>
                                                            <?php 
                                echo GFCommon::current_user_can_any("gravityforms_delete_entries") ? "|" : "";
                                ?>
                                                        </span>

                                                        <?php 
                                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                                    ?>
                                                            <span class="delete">
                                                                <?php 
                                    $delete_link = '<a class="delete:gf_entry_list:lead_row_' . $lead["id"] . '::status=delete&entry=' . $lead["id"] . '" title="' . __("Delete this entry permanently", "gravityforms") . '"  href="' . wp_nonce_url("?page=gf_entries", "gf_delete_entry") . '">' . __("Delete Permanently", "gravityforms") . '</a>';
                                    echo apply_filters("gform_delete_entry_link", $delete_link);
                                    ?>
                                                            </span>
                                                            <?php 
                                }
                                break;
                            default:
                                ?>
                                                        <span class="edit">
                                                            <a title="<?php 
                                _e("View this entry", "gravityforms");
                                ?>
" href="admin.php?page=gf_entries&view=entry&id=<?php 
                                echo $form_id;
                                ?>
&lid=<?php 
                                echo $lead["id"] . $search_qs . $sort_qs . $dir_qs;
                                ?>
&paged=<?php 
                                echo $page_index + 1;
                                ?>
"><?php 
                                _e("View", "gravityforms");
                                ?>
</a>
                                                            |
                                                        </span>
                                                        <span class="edit">
                                                            <a id="mark_read_<?php 
                                echo $lead["id"];
                                ?>
" title="Mark this entry as read" href="javascript:ToggleRead(<?php 
                                echo $lead["id"];
                                ?>
);" style="display:<?php 
                                echo $lead["is_read"] ? "none" : "inline";
                                ?>
;"><?php 
                                _e("Mark read", "gravityforms");
                                ?>
</a><a id="mark_unread_<?php 
                                echo $lead["id"];
                                ?>
" title="<?php 
                                _e("Mark this entry as unread", "gravityforms");
                                ?>
" href="javascript:ToggleRead(<?php 
                                echo $lead["id"];
                                ?>
);" style="display:<?php 
                                echo $lead["is_read"] ? "inline" : "none";
                                ?>
;"><?php 
                                _e("Mark unread", "gravityforms");
                                ?>
</a>
                                                            <?php 
                                echo GFCommon::current_user_can_any("gravityforms_delete_entries") || GFCommon::has_akismet() ? "|" : "";
                                ?>
                                                        </span>
                                                        <?php 
                                if (GFCommon::has_akismet()) {
                                    ?>
                                                            <span class="spam">
                                                                <a class='delete:gf_entry_list:lead_row_<?php 
                                    echo $lead["id"];
                                    ?>
::status=spam&entry=<?php 
                                    echo $lead["id"];
                                    ?>
' title="<?php 
                                    _e("Mark this entry as spam", "gravityforms");
                                    ?>
" href="<?php 
                                    echo wp_nonce_url("?page=gf_entries", "gf_delete_entry");
                                    ?>
"><?php 
                                    _e("Spam", "gravityforms");
                                    ?>
</a>
                                                                <?php 
                                    echo GFCommon::current_user_can_any("gravityforms_delete_entries") ? "|" : "";
                                    ?>
                                                            </span>

                                                        <?php 
                                }
                                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                                    ?>
                                                            <span class="trash">
                                                                <a class='delete:gf_entry_list:lead_row_<?php 
                                    echo $lead["id"];
                                    ?>
::status=trash&entry=<?php 
                                    echo $lead["id"];
                                    ?>
' title="<?php 
                                    _e("Move this entry to the trash", "gravityforms");
                                    ?>
" href="<?php 
                                    echo wp_nonce_url("?page=gf_entries", "gf_delete_entry");
                                    ?>
"><?php 
                                    _e("Trash", "gravityforms");
                                    ?>
</a>
                                                            </span>
                                                            <?php 
                                }
                                break;
                        }
                        do_action("gform_entries_first_column_actions", $form_id, $field_id, $value, $lead, $query_string);
                        ?>

                                            </div>
                                            <?php 
                        do_action("gform_entries_first_column", $form_id, $field_id, $value, $lead, $query_string);
                        ?>
                                        </td>
                                        <?php 
                    } else {
                        ?>
                                        <td class="<?php 
                        echo $nowrap_class;
                        ?>
">
                                            <?php 
                        echo $value;
                        ?>
&nbsp;
                                            <?php 
                        do_action("gform_entries_column", $form_id, $field_id, $value, $lead, $query_string);
                        ?>
                                        </td>
                                        <?php 
                    }
                    $is_first_column = false;
                }
                ?>
                                <td>&nbsp;</td>
                            </tr>
                            <?php 
            }
        } else {
            $message = "";
            $column_count = sizeof($columns) + 3;
            switch ($filter) {
                case "unread":
                    $message = __("This form does not have any unread entries.", "gravityforms");
                    break;
                case "star":
                    $message = __("This form does not have any starred entries.", "gravityforms");
                    break;
                case "spam":
                    $message = __("This form does not have any spam.", "gravityforms");
                    $column_count = sizeof($columns) + 2;
                    break;
                case "trash":
                    $message = __("This form does not have any entries in the trash.", "gravityforms");
                    $column_count = sizeof($columns) + 2;
                    break;
                default:
                    $message = __("This form does not have any entries yet.", "gravityforms");
            }
            ?>
                        <tr>
                            <td colspan="<?php 
            echo $column_count;
            ?>
" style="padding:20px;"><?php 
            echo $message;
            ?>
</td>
                        </tr>
                        <?php 
        }
        ?>
                </tbody>
                </table>

                <div class="clear"></div>

                <div class="tablenav">

                    <div class="alignleft actions" style="padding:8px 0 7px 0;">
                        <label class="hidden" for="bulk_action2"> <?php 
        _e("Bulk action", "gravityforms");
        ?>
</label>
                        <select name="bulk_action2" id="bulk_action2">
                            <option value=''><?php 
        _e(" Bulk action ", "gravityforms");
        ?>
</option>
                            <?php 
        switch ($filter) {
            case "trash":
                ?>
                                    <option value='restore'><?php 
                _e("Restore", "gravityforms");
                ?>
</option>
                                    <?php 
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                        <option value='delete'><?php 
                    _e("Delete Permanently", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
                break;
            case "spam":
                ?>
                                    <option value='unspam'><?php 
                _e("Not Spam", "gravityforms");
                ?>
</option>
                                    <?php 
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                        <option value='delete'><?php 
                    _e("Delete Permanently", "gravityforms");
                    ?>
</option>
                                        <?php 
                }
                break;
            default:
                ?>
                                <option value='mark_read'><?php 
                _e("Mark as Read", "gravityforms");
                ?>
</option>
                                <option value='mark_unread'><?php 
                _e("Mark as Unread", "gravityforms");
                ?>
</option>
                                <option value='add_star'><?php 
                _e("Add Star", "gravityforms");
                ?>
</option>
                                <option value='remove_star'><?php 
                _e("Remove Star", "gravityforms");
                ?>
</option>
                                <option value='resend_notifications'><?php 
                _e("Resend Notifications", "gravityforms");
                ?>
</option>
                                <option value='print'><?php 
                _e("Print", "gravityforms");
                ?>
</option>
                                <?php 
                if (GFCommon::has_akismet()) {
                    ?>
                                    <option value='spam'><?php 
                    _e("Spam", "gravityforms");
                    ?>
</option>
                                    <?php 
                }
                if (GFCommon::current_user_can_any("gravityforms_delete_entries")) {
                    ?>
                                    <option value='trash'><?php 
                    _e("Trash", "gravityforms");
                    ?>
</option>
                                    <?php 
                }
        }
        ?>
                        </select>
                        <?php 
        $apply_button = '<input type="submit" class="button" value="' . __("Apply", "gravityforms") . '" onclick="return handleBulkApply(\'bulk_action2\');" />';
        echo apply_filters("gform_entry_apply_button", $apply_button);
        ?>
                    </div>

                    <?php 
        //Displaying paging links if appropriate
        if ($page_links) {
            ?>
                        <div class="tablenav-pages">
                            <span class="displaying-num"><?php 
            printf(__("Displaying %d - %d of %d", "gravityforms"), $first_item_index + 1, $first_item_index + $page_size > $lead_count ? $lead_count : $first_item_index + $page_size, $lead_count);
            ?>
</span>
                            <?php 
            echo $page_links;
            ?>
                        </div>
                        <?php 
        }
        ?>
                    <div class="clear"></div>
                </div>

            </form>
        </div>
        <?php 
    }
Ejemplo n.º 14
0
    function make_directory($atts)
    {
        global $wpdb, $wp_rewrite, $post, $wpdb, $directory_shown, $kws_gf_scripts, $kws_gf_styles;
        if (!class_exists('GFEntryDetail')) {
            @(require_once GFCommon::get_base_path() . "/entry_detail.php");
        }
        if (!class_exists('GFCommon')) {
            @(require_once WP_PLUGIN_DIR . "/gravityforms/common.php");
        }
        if (!class_exists('RGFormsModel')) {
            @(require_once WP_PLUGIN_DIR . "/gravityforms/forms_model.php");
        }
        //quit if version of wp is not supported
        if (!class_exists('GFCommon') || !GFCommon::ensure_wp_version()) {
            return;
        }
        ob_start();
        // Using ob_start() allows us to use echo instead of $output .=
        foreach ($atts as $key => $att) {
            if (strtolower($att) == 'false') {
                $atts[$key] = false;
            }
            if (strtolower($att) == 'true') {
                $atts[$key] = true;
            }
        }
        $atts['approved'] = isset($atts['approved']) ? $atts['approved'] : -1;
        if (!empty($atts['lightboxsettings']) && is_string($atts['lightboxsettings'])) {
            $atts['lightboxsettings'] = explode(',', $atts['lightboxsettings']);
        }
        $options = self::directory_defaults($atts);
        // Make sure everything is on the same page.
        if (is_array($options['lightboxsettings'])) {
            foreach ($options['lightboxsettings'] as $key => $value) {
                if (is_numeric($key)) {
                    $options['lightboxsettings']["{$value}"] = $value;
                    unset($options['lightboxsettings']["{$key}"]);
                }
            }
        }
        extract($options);
        $form_id = $form;
        $form = RGFormsModel::get_form_meta($form_id);
        if (empty($form)) {
            return;
        }
        $sort_field = empty($_GET["sort"]) ? $sort : $_GET["sort"];
        $sort_direction = empty($_GET["dir"]) ? $dir : $_GET["dir"];
        $search_query = !empty($_GET["gf_search"]) ? $_GET["gf_search"] : null;
        $start_date = !empty($_GET["start_date"]) ? $_GET["start_date"] : $start_date;
        $end_date = !empty($_GET["end_date"]) ? $_GET["end_date"] : $end_date;
        $page_index = empty($_GET["page"]) ? $startpage - 1 : intval($_GET["page"]) - 1;
        $star = isset($_GET["star"]) && is_numeric($_GET["star"]) ? intval($_GET["star"]) : null;
        $read = isset($_GET["read"]) && is_numeric($_GET["read"]) ? intval($_GET["read"]) : null;
        $first_item_index = $page_index * $page_size;
        $link_params = array();
        if (!empty($page_index)) {
            $link_params['page'] = $page_index;
        }
        $formaction = remove_query_arg(array('gf_search', 'sort', 'dir', 'page', 'edit'), add_query_arg($link_params));
        $tableclass .= !empty($jstable) ? ' tablesorter' : '';
        $title = $form["title"];
        $sort_field_meta = RGFormsModel::get_field($form, $sort_field);
        $is_numeric = $sort_field_meta["type"] == "number";
        $columns = RGFormsModel::get_grid_columns($form_id, true);
        $approvedcolumn = false;
        if ($approved || !empty($smartapproval) && $approved === -1) {
            $approvedcolumn = self::get_approved_column($form);
        }
        if (!empty($smartapproval) && $approved === -1 && !empty($approvedcolumn)) {
            $approved = true;
            // If there is an approved column, turn on approval
        } else {
            $approved = false;
            // Otherwise, show entries as normal.
        }
        $entrylinkcolumns = self::get_entrylink_column($form, $entry);
        $adminonlycolumns = self::get_admin_only($form);
        //
        // Show only a single entry
        //
        if (!empty($entry) && ($detail = self::process_lead_detail(true, $entryback, $showadminonly, $adminonlycolumns, $approvedcolumn, $options, $entryonly))) {
            echo $detail;
            if (!empty($entryonly)) {
                do_action('kws_gf_after_directory', do_action('kws_gf_after_directory_form_' . $form_id, $form, compact($approved, $sort_field, $sort_direction, $search_query, $first_item_index, $page_size, $star, $read, $is_numeric, $start_date, $end_date)));
                $content = ob_get_contents();
                // Get the output
                ob_end_clean();
                // Clear the cache
                // If the form is form #2, two filters are applied: `kws_gf_directory_output_2` and `kws_gf_directory_output`
                $content = apply_filters('kws_gf_directory_output', apply_filters('kws_gf_directory_output_' . $form_id, self::pseudo_filter($content, $directoryview)));
                return $content;
            }
        }
        //
        // Or start to generate the directory
        //
        $leads = GFDirectory::get_leads($form_id, $sort_field, $sort_direction, $search_query, $first_item_index, $page_size, $star, $read, $is_numeric, $start_date, $end_date, 'active', $approvedcolumn, $limituser);
        #			if(!$showadminonly)	 {
        $columns = self::remove_admin_only($columns, $adminonlycolumns, $approvedcolumn, false, false, $form);
        $leads = self::remove_admin_only($leads, $adminonlycolumns, $approvedcolumn, true, false, $form);
        #			}
        // Allow lightbox to determine whether showadminonly is valid without passing a query string in URL
        if ($entry === true && !empty($lightboxsettings['entry'])) {
            if (get_transient('gf_form_' . $form_id . '_post_' . $post->ID . '_showadminonly') != $showadminonly) {
                set_transient('gf_form_' . $form_id . '_post_' . $post->ID . '_showadminonly', $showadminonly, 60 * 60);
            }
        } else {
            delete_transient('gf_form_' . $form_id . '_post_' . $post->ID . '_showadminonly');
        }
        // Get a list of query args for the pagination links
        if (!empty($search_query)) {
            $args["gf_search"] = urlencode($search_query);
        }
        if (!empty($sort_field)) {
            $args["sort"] = $sort_field;
        }
        if (!empty($sort_direction)) {
            $args["dir"] = $sort_direction;
        }
        if (!empty($star)) {
            $args["star"] = $star;
        }
        if ($page_size > 0) {
            $lead_count = self::get_lead_count($form_id, $search_query, $star, $read, $approvedcolumn, $approved, $leads, $start_date, $end_date, $limituser);
            $page_links = array('base' => @add_query_arg('page', '%#%'), 'format' => '&page=%#%', 'add_args' => $args, 'prev_text' => $prev_text, 'next_text' => $next_text, 'total' => ceil($lead_count / $page_size), 'current' => $page_index + 1, 'show_all' => $pagelinksshowall);
            $page_links = apply_filters('kws_gf_results_pagination', $page_links);
            $page_links = paginate_links($page_links);
        } else {
            // Showing all results
            $page_links = false;
            $lead_count = sizeof($leads);
        }
        if (!isset($directory_shown)) {
            $directory_shown = true;
            if (!empty($lightboxsettings['images']) || !empty($lightboxsettings['entry'])) {
                if (!is_array($kws_gf_scripts) || !in_array('colorbox', $kws_gf_scripts)) {
                    wp_print_scripts(array("colorbox"));
                }
                if (!is_array($kws_gf_styles) || !in_array('colorbox', $kws_gf_styles)) {
                    wp_print_styles(array("colorbox"));
                }
            }
            if (!empty($jstable)) {
                ?>
				<?php 
                if (!in_array('tablesorter-blue', $kws_gf_styles)) {
                    ?>
					<link href="<?php 
                    echo WP_PLUGIN_URL . "/" . basename(dirname(__FILE__));
                    ?>
/tablesorter/themes/blue/style.css" rel="stylesheet" />
				<?php 
                }
                if (!in_array('tablesorter-min', $kws_gf_scripts)) {
                    ?>
					<script type="text/javascript" src="<?php 
                    echo WP_PLUGIN_URL . "/" . basename(dirname(__FILE__));
                    ?>
/tablesorter/jquery.tablesorter.min.js"></script>				
				<?php 
                }
            }
            ?>
				
				<script type="text/javascript">
					<?php 
            if (!empty($lightboxsettings['images']) || !empty($lightboxsettings['entry'])) {
                ?>
		
					var tb_pathToImage = "<?php 
                echo site_url('/wp-includes/js/thickbox/loadingAnimation.gif');
                ?>
";
					var tb_closeImage = "<?php 
                echo site_url('/wp-includes/js/thickbox/tb-close.png');
                ?>
";
					var tb_height = 600;
					<?php 
            }
            ?>
					function not_empty(variable) { 
						if(variable == '' || variable == null || variable == 'undefined' || typeof(variable) == 'undefined') {
							return false;
						} else { 
							return true;
						}
					}
				
				<?php 
            if (!empty($jstable)) {
                ?>
					jQuery(document).ready(function($) {
						jQuery('.tablesorter').each(function() { 
							$(this).tablesorter(<?php 
                echo apply_filters('kws_gf_directory_tablesorter_options', '');
                ?>
); 
						});
					});
				<?php 
            } else {
                if (isset($jssearch) && $jssearch) {
                    ?>
					function Search(search, sort_field_id, sort_direction){
						if(not_empty(search)) { var search = "&gf_search=" + encodeURIComponent(search); } else {  var search = ''; }
						if(not_empty(sort_field_id)) { var sort = "&sort=" + sort_field_id; } else {  var sort = ''; }
						if(not_empty(sort_direction)) { var dir = "&dir=" + sort_direction; } else {  var dir = ''; }
						var page = '<?php 
                    if ($wp_rewrite->using_permalinks()) {
                        echo '?';
                    } else {
                        echo '&';
                    }
                    ?>
page='+<?php 
                    echo isset($_GET['page']) ? intval($_GET['page']) : '"1"';
                    ?>
;
						var location = "<?php 
                    echo get_permalink($post->ID);
                    ?>
"+page+search+sort+dir;
						document.location = location;
					}
				<?php 
                }
            }
            ?>
				</script>
				<link rel="stylesheet" href="<?php 
            echo GFCommon::get_base_url();
            ?>
/css/admin.css" type="text/css" />
			<?php 
        }
        ?>
			
			<div class="wrap">
				<?php 
        if ($icon) {
            ?>
<img alt="<?php 
            _e("Gravity Forms", "gravity-forms-addons");
            ?>
" src="<?php 
            echo GFCommon::get_base_url();
            ?>
/images/gravity-title-icon-32.png" style="float:left; margin:15px 7px 0 0;"/><?php 
        }
        ?>
				<?php 
        if ($titleshow) {
            ?>
<h2><?php 
            echo $titleprefix . $title;
            ?>
 </h2><?php 
        }
        ?>
				<?php 
        if ($search && ($lead_count > 0 || !empty($_GET['gf_search']))) {
            ?>
				<form id="lead_form" method="get" action="<?php 
            echo $formaction;
            ?>
">
					<p class="search-box">
						<label class="hidden" for="lead_search"><?php 
            _e("Search Entries:", "gravity-forms-addons");
            ?>
</label>
						<input type="text" name="gf_search" id="lead_search" value="<?php 
            echo $search_query;
            ?>
"<?php 
            if ($searchtabindex) {
                echo ' tabindex="' . intval($searchtabindex) . '"';
            }
            ?>
 />
						<?php 
            if (!empty($_GET['p'])) {
                ?>
							<input name="p" type="hidden" value="<?php 
                echo esc_html($_GET['p']);
                ?>
" />
						<?php 
            }
            ?>
						<input type="submit" class="button" id="lead_search_button" value="<?php 
            _e("Search", "gravity-forms-addons");
            ?>
"<?php 
            if ($searchtabindex) {
                echo ' tabindex="' . intval($searchtabindex++) . '"';
            }
            ?>
 />
					</p>
				</form>
				<?php 
        }
        //Displaying paging links if appropriate
        if ($lead_count > 0 && $showcount || $page_links) {
            if ($lead_count == 0) {
                $first_item_index--;
            }
            ?>
					<div class="tablenav">
						<div class="tablenav-pages">
							<?php 
            if ($showcount) {
                if ($first_item_index + $page_size > $lead_count || $page_size <= 0) {
                    $second_part = $lead_count;
                } else {
                    $second_part = $first_item_index + $page_size;
                }
                ?>
							<span class="displaying-num"><?php 
                printf(__("Displaying %d - %d of %d", "gravity-forms-addons"), $first_item_index + 1, $second_part, $lead_count);
                ?>
</span>
							<?php 
            }
            if ($page_links) {
                echo $page_links;
            }
            ?>
						</div>
						<div class="clear"></div>
					</div>
						<?php 
        }
        do_action('kws_gf_before_directory_after_nav', do_action('kws_gf_before_directory_after_nav_form_' . $form_id, $form, $leads, compact($approved, $sort_field, $sort_direction, $search_query, $first_item_index, $page_size, $star, $read, $is_numeric, $start_date, $end_date)));
        ?>
					
					<table class="<?php 
        echo $tableclass;
        ?>
" cellspacing="0"<?php 
        if (!empty($tablewidth)) {
            echo ' width="' . $tablewidth . '"';
        }
        echo $tablestyle ? ' style="' . $tablestyle . '"' : '';
        ?>
>
					<?php 
        if ($thead) {
            ?>
					<thead>
						<tr>
							<?php 
            $addressesExist = false;
            foreach ($columns as $field_id => $field_info) {
                $dir = $field_id == 0 ? "DESC" : "ASC";
                //default every field so ascending sorting except date_created (id=0)
                if ($field_id == $sort_field) {
                    //reverting direction if clicking on the currently sorted field
                    $dir = $sort_direction == "ASC" ? "DESC" : "ASC";
                }
                if (is_array($adminonlycolumns) && !in_array($field_id, $adminonlycolumns) || is_array($adminonlycolumns) && in_array($field_id, $adminonlycolumns) && $showadminonly || !$showadminonly) {
                    if ($field_info['type'] == 'address' && $appendaddress && $hideaddresspieces) {
                        $addressesExist = true;
                        continue;
                    }
                    ?>
								<?php 
                    if (isset($jssearch) && $jssearch && !isset($jstable)) {
                        ?>
								<th scope="col" class="manage-column" onclick="Search('<?php 
                        echo $search_query;
                        ?>
', '<?php 
                        echo $field_id;
                        ?>
', '<?php 
                        echo $dir;
                        ?>
');" style="cursor:pointer;"><?php 
                    } elseif (isset($jstable) && $jstable) {
                        ?>
									<th scope="col" class="manage-column">
								<?php 
                    } else {
                        ?>
								<th scope="col" class="manage-column">
								<a href="<?php 
                        $searchpage = isset($_GET['page']) ? intval($_GET['page']) : 1;
                        echo add_query_arg(array('gf_search' => $search_query, 'sort' => $field_id, 'dir' => $dir, 'page' => $searchpage), get_permalink($post->ID));
                        ?>
"><?php 
                    }
                    if ($field_info['type'] == 'id' && $entry) {
                        $label = $entryth;
                    } else {
                        $label = $field_info["label"];
                    }
                    $label = apply_filters('kws_gf_directory_th', apply_filters('kws_gf_directory_th_' . $field_id, apply_filters('kws_gf_directory_th_' . sanitize_title($label), $label)));
                    echo esc_html($label);
                    if (!isset($jssearch) || !$jssearch && empty($jstable)) {
                        ?>
							   </a>
							   <?php 
                    }
                    ?>
							   </th>
								<?php 
                }
            }
            if ($appendaddress && $addressesExist) {
                ?>
								<th scope="col" class="manage-column" onclick="Search('<?php 
                echo $search_query;
                ?>
', '<?php 
                echo $field_id;
                ?>
', '<?php 
                echo $dir;
                ?>
');" style="cursor:pointer;"><?php 
                $label = apply_filters('kws_gf_directory_th', apply_filters('kws_gf_directory_th_address', 'Address'));
                echo esc_html($label);
                ?>
</th>
								<?php 
            }
            ?>
						</tr>
					</thead>
					<?php 
        }
        ?>
					<tbody class="list:user user-list">
						<?php 
        if (sizeof($leads) > 0 && $lead_count > 0) {
            $field_ids = array_keys($columns);
            $evenodd = '';
            foreach ($leads as $lead) {
                flush();
                echo "\n\t\t\t\t\t\t";
                $address = array();
                $celltitle = '';
                if ($approved) {
                    $leadapproved = self::check_approval($lead, $approvedcolumn);
                }
                if (isset($leadapproved) && $leadapproved && $approved || !$approved) {
                    $target = '';
                    if ($linknewwindow && empty($lightboxsettings['images'])) {
                        $target = ' target="_blank"';
                    }
                    $valignattr = '';
                    if ($valign && $directoryview == 'table') {
                        $valignattr = ' valign="' . $valign . '"';
                    }
                    $nofollow = '';
                    if ($nofollowlinks) {
                        $nofollow = ' rel="nofollow"';
                    }
                    $evenodd = $evenodd == ' odd' ? ' even' : ' odd';
                    $evenodd = apply_filters('kws_gf_directory_evenodd', $evenodd);
                    ?>
<tr<?php 
                    if ($showrowids) {
                        ?>
 id="lead_row_<?php 
                        echo $lead["id"];
                        ?>
" <?php 
                    }
                    ?>
 class='<?php 
                    echo trim($rowclass . $evenodd);
                    echo $lead["is_starred"] ? " featured" : "";
                    ?>
'<?php 
                    echo $rowstyle ? ' style="' . $rowstyle . '"' : '';
                    echo $valignattr;
                    ?>
><?php 
                    $class = "";
                    $is_first_column = true;
                    $full_address = '';
                    foreach ($field_ids as $field_id) {
                        $lightboxclass = '';
                        if (!empty($lightboxsettings['images'])) {
                            $lightboxclass = ' class="thickbox colorbox lightbox"';
                        }
                        $value = isset($lead[$field_id]) ? $lead[$field_id] : '';
                        $input_type = !empty($columns[$field_id]["inputType"]) ? $columns[$field_id]["inputType"] : $columns[$field_id]["type"];
                        switch ($input_type) {
                            case "address":
                                $address['id'] = floor((int) $field_id);
                                $address[$field_id] = $value;
                                if ($hideaddresspieces) {
                                    $value = NULL;
                                    break;
                                }
                                break;
                            case "checkbox":
                                $value = "";
                                //looping through lead detail values trying to find an item identical to the column label. Mark with a tick if found.
                                $lead_field_keys = array_keys($lead);
                                foreach ($lead_field_keys as $input_id) {
                                    //mark as a tick if input label (from form meta) is equal to submitted value (from lead)
                                    if (is_numeric($input_id) && absint($input_id) == absint($field_id) && $lead[$input_id] == $columns[$field_id]["label"]) {
                                        $value = "<img src='" . GFCommon::get_base_url() . "/images/tick.png'/>";
                                    }
                                }
                                break;
                            case "fileupload":
                            case "post_image":
                                $valueArray = explode("|:|", $value);
                                @(list($url, $title, $caption, $description) = $valueArray);
                                $size = '';
                                if (!empty($url)) {
                                    //displaying thumbnail (if file is an image) or an icon based on the extension
                                    $icon = self::get_icon_url($url);
                                    if (!preg_match('/icon\\_image\\.gif/ism', $icon)) {
                                        $src = $icon;
                                        if (!empty($getimagesize)) {
                                            $size = @getimagesize($src);
                                            $img = "<img src='{$src}' {$size[3]}/>";
                                        } else {
                                            $size = false;
                                            $img = "<img src='{$src}' />";
                                        }
                                    } else {
                                        // No thickbox for non-images please
                                        switch (strtolower(trim($postimage))) {
                                            case 'image':
                                                $src = $url;
                                                break;
                                            case 'icon':
                                            default:
                                                $src = $icon;
                                                break;
                                        }
                                        if (!empty($getimagesize)) {
                                            $size = @getimagesize($src);
                                        } else {
                                            $size = false;
                                        }
                                    }
                                    $img = array('src' => $src, 'size' => $size, 'title' => $title, 'caption' => $caption, 'description' => $description, 'url' => esc_attr($url), 'code' => isset($size[3]) ? "<img src='{$src}' {$size[3]} />" : "<img src='{$src}' />");
                                    $img = apply_filters('kws_gf_directory_lead_image', apply_filters('kws_gf_directory_lead_image_' . $postimage, apply_filters('kws_gf_directory_lead_image_' . $lead['id'], $img)));
                                    if (in_array('images', $lightboxsettings) || !empty($lightboxsettings['images'])) {
                                        $lightboxclass .= ' rel="directory_all directory_images"';
                                    }
                                    $value = "<a href='{$url}'{$target}{$lightboxclass}>{$img['code']}</a>";
                                }
                                break;
                            case "source_url":
                                if (in_array('urls', $lightboxsettings) || !empty($lightboxsettings['urls'])) {
                                    $lightboxclass .= ' rel="directory_all directory_urls"';
                                }
                                if ($linkwebsite) {
                                    $value = "<a href='" . esc_attr($lead["source_url"]) . "'{$target}{$lightboxclass} title='" . esc_attr($lead["source_url"]) . "'{$nofollow}>.../" . esc_attr(GFCommon::truncate_url($lead["source_url"])) . "</a>";
                                } else {
                                    $value = esc_attr(GFCommon::truncate_url($lead["source_url"]));
                                }
                                break;
                            case "textarea":
                            case "post_content":
                            case "post_excerpt":
                                if ($fulltext) {
                                    $long_text = $value = "";
                                    if (isset($lead[$field_id]) && strlen($lead[$field_id]) >= GFORMS_MAX_FIELD_LENGTH) {
                                        $long_text = get_gf_field_value_long($lead["id"], $field_id);
                                    }
                                    if (isset($lead[$field_id])) {
                                        $value = !empty($long_text) ? $long_text : $lead[$field_id];
                                    }
                                    if ($wpautop) {
                                        $value = wpautop($value);
                                    }
                                } else {
                                    $value = esc_html($value);
                                }
                                break;
                            case "date_created":
                                $value = GFCommon::format_date($value, false, $datecreatedformat);
                                break;
                            case "date":
                                $field = RGFormsModel::get_field($form, $field_id);
                                if ($dateformat) {
                                    $value = GFCommon::date_display($value, $dateformat);
                                } else {
                                    $value = GFCommon::date_display($value, $field["dateFormat"]);
                                }
                                break;
                            case "id":
                                $linkClass = '';
                                break;
                            case "list":
                                $field = RGFormsModel::get_field($form, $field_id);
                                $value = GFCommon::get_lead_field_display($field, $value);
                                break;
                            default:
                                $input_type = 'text';
                                if (is_email($value) && $linkemail) {
                                    $value = "<a href='mailto:{$value}'{$nofollow}>{$value}</a>";
                                } elseif (preg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $value) && $linkwebsite) {
                                    $href = $value;
                                    if (!empty($lightboxsettings['images'])) {
                                        if (in_array('urls', $lightboxsettings) || !empty($lightboxsettings['urls'])) {
                                            $lightboxclass .= ' rel="directory_all directory_urls"';
                                        }
                                        $linkClass = $lightboxclass;
                                    } else {
                                        $linkClass = isset($linkClass) ? $linkClass : '';
                                    }
                                    if ($truncatelink) {
                                        $value = apply_filters('kws_gf_directory_anchor_text', $value);
                                    }
                                    $value = "<a href='{$href}'{$nofollow}{$target}{$linkClass}>{$value}</a>";
                                } else {
                                    $value = esc_html($value);
                                }
                        }
                        if ($is_first_column) {
                            echo "\n";
                        }
                        if ($value !== NULL) {
                            if (isset($columns["{$field_id}"]['label']) && $hovertitle || $directoryview !== 'table') {
                                $celltitle = ' title="' . esc_html(apply_filters('kws_gf_directory_th', apply_filters('kws_gf_directory_th_' . $field_id, apply_filters('kws_gf_directory_th_' . sanitize_title($columns["{$field_id}"]['label']), $columns["{$field_id}"]['label'])))) . '"';
                            } else {
                                $celltitle = '';
                            }
                            echo "\t\t\t\t\t\t\t";
                            ?>
<td<?php 
                            echo empty($class) ? ' class="' . $input_type . '"' : ' class="' . $input_type . ' ' . $class . '"';
                            echo $valignattr;
                            echo $celltitle;
                            ?>
><?php 
                            $value = empty($value) ? '&nbsp;' : $value;
                            if (isset($entrylinkcolumns[floor($field_id)])) {
                                $type = $entrylinkcolumns[floor($field_id)];
                                if ($input_type == 'id' && $entry) {
                                    $linkvalue = $entrylink;
                                } elseif ($type === 'label') {
                                    $linkvalue = $columns["{$field_id}"]['label'];
                                } elseif (!empty($type) && $type !== 'on') {
                                    $linkvalue = str_replace('%value%', $value, $type);
                                } else {
                                    $linkvalue = $value;
                                }
                                $value = self::make_entry_link($options, $linkvalue, $lead['id'], $form_id, $field_id);
                            }
                            $value = apply_filters('kws_gf_directory_value', apply_filters('kws_gf_directory_value_' . $input_type, apply_filters('kws_gf_directory_value_' . $field_id, $value)));
                            echo $value;
                            ?>
</td><?php 
                            echo "\n";
                            $is_first_column = false;
                        }
                    }
                    if (is_array($address) && !empty($address) && $appendaddress) {
                        $address = apply_filters('kws_gf_directory_td_address', $address, $linknewwindow);
                        if (!is_array($address)) {
                            echo "\t\t\t\t\t\t\t" . '<td class="address" title="' . esc_html(apply_filters('kws_gf_directory_th', apply_filters('kws_gf_directory_th_address', 'Address'))) . '">' . $address . '</td>';
                        }
                    }
                    ?>
							</tr>
								<?php 
                }
            }
        } else {
            ?>
							<tr>
								<td colspan="<?php 
            echo sizeof($columns);
            ?>
" style="padding:20px;"><?php 
            if ($search_query) {
                _e("This search returned no results.", "gravity-forms-addons");
            } elseif ($limituser) {
                _e("This form does not have any visible entries.", "gravity-forms-addons");
            } else {
                _e("This form does not have any entries yet.", "gravity-forms-addons");
            }
            ?>
</td>
							</tr>
							<?php 
        }
        ?>
					</tbody>
					<?php 
        if ($tfoot) {
            if (isset($jssearch) && $jssearch && !isset($jstable)) {
                $th = '<th scope="col" class="manage-column" onclick="Search(\'' . $search_query . '\', \'' . $field_id . '\', \'' . $dir . '\');" style="cursor:pointer;">';
            } else {
                $th = '<th scope="col" class="manage-column">';
            }
            ?>
					<tfoot>
						<tr>
							<?php 
            $addressesExist = false;
            foreach ($columns as $field_id => $field_info) {
                $dir = $field_id == 0 ? "DESC" : "ASC";
                //default every field so ascending sorting except date_created (id=0)
                if ($field_id == $sort_field) {
                    //reverting direction if clicking on the currently sorted field
                    $dir = $sort_direction == "ASC" ? "DESC" : "ASC";
                }
                if (is_array($adminonlycolumns) && !in_array($field_id, $adminonlycolumns) || is_array($adminonlycolumns) && in_array($field_id, $adminonlycolumns) && $showadminonly || !$showadminonly) {
                    if ($field_info['type'] == 'address' && $appendaddress && $hideaddresspieces) {
                        $addressesExist = true;
                        continue;
                    }
                    echo $th;
                    if ($field_info['type'] == 'id' && $entry) {
                        $label = $entryth;
                    } else {
                        $label = $field_info["label"];
                    }
                    $label = apply_filters('kws_gf_directory_th', apply_filters('kws_gf_directory_th_' . $field_id, apply_filters('kws_gf_directory_th_' . sanitize_title($label), $label)));
                    echo esc_html($label);
                    ?>
</th>
								<?php 
                }
            }
            if ($appendaddress && $addressesExist) {
                ?>
								<th scope="col" class="manage-column" onclick="Search('<?php 
                echo $search_query;
                ?>
', '<?php 
                echo $field_id;
                ?>
', '<?php 
                echo $dir;
                ?>
');" style="cursor:pointer;"><?php 
                $label = apply_filters('kws_gf_directory_th', apply_filters('kws_gf_directory_th_address', 'Address'));
                echo esc_html($label);
                ?>
</th>
								<?php 
            }
            ?>
						</tr>
						<?php 
            if (!empty($credit)) {
                self::get_credit_link(sizeof($columns));
            }
            ?>
					</tfoot>
					<?php 
        }
        ?>
					</table>
					<?php 
        do_action('kws_gf_after_directory_before_nav', do_action('kws_gf_after_directory_before_nav_form_' . $form_id, $form, $leads, compact($approved, $sort_field, $sort_direction, $search_query, $first_item_index, $page_size, $star, $read, $is_numeric, $start_date, $end_date)));
        //Displaying paging links if appropriate
        if ($lead_count > 0 && $showcount || $page_links) {
            if ($lead_count == 0) {
                $first_item_index--;
            }
            ?>
					<div class="tablenav">
						<div class="tablenav-pages">
							<?php 
            if ($showcount) {
                if ($first_item_index + $page_size > $lead_count || $page_size <= 0) {
                    $second_part = $lead_count;
                } else {
                    $second_part = $first_item_index + $page_size;
                }
                ?>
							<span class="displaying-num"><?php 
                printf(__("Displaying %d - %d of %d", "gravity-forms-addons"), $first_item_index + 1, $second_part, $lead_count);
                ?>
</span>
							<?php 
            }
            if ($page_links) {
                echo $page_links;
            }
            ?>
						</div>
						<div class="clear"></div>
					</div>
						<?php 
        }
        ?>
 
			</div>
			<?php 
        if (empty($credit)) {
            echo "\n" . '<!-- Directory generated by Gravity Forms Directory & Addons : http://wordpress.org/extend/plugins/gravity-forms-addons/ -->' . "\n";
        }
        do_action('kws_gf_after_directory', do_action('kws_gf_after_directory_form_' . $form_id, $form, $leads, compact($approved, $sort_field, $sort_direction, $search_query, $first_item_index, $page_size, $star, $read, $is_numeric, $start_date, $end_date)));
        $content = ob_get_contents();
        // Get the output
        ob_end_clean();
        // Clear the cache
        // If the form is form #2, two filters are applied: `kws_gf_directory_output_2` and `kws_gf_directory_output`
        $content = apply_filters('kws_gf_directory_output', apply_filters('kws_gf_directory_output_' . $form_id, self::pseudo_filter($content, $directoryview)));
        return $content;
        // Return it!
    }
Ejemplo n.º 15
0
 public static function get_lead_field_display($field, $value)
 {
     switch (RGFormsModel::get_input_type($field)) {
         case "name":
             if (is_array($value)) {
                 $prefix = trim($value[$field["id"] . ".2"]);
                 $first = trim($value[$field["id"] . ".3"]);
                 $last = trim($value[$field["id"] . ".6"]);
                 $suffix = trim($value[$field["id"] . ".8"]);
                 $name = $prefix;
                 $name .= !empty($name) && !empty($first) ? " {$first}" : $first;
                 $name .= !empty($name) && !empty($last) ? " {$last}" : $last;
                 $name .= !empty($name) && !empty($suffix) ? " {$suffix}" : $suffix;
                 return $name;
             } else {
                 return $value;
             }
             break;
         case "address":
             if (is_array($value)) {
                 $street_value = trim($value[$field["id"] . ".1"]);
                 $street2_value = trim($value[$field["id"] . ".2"]);
                 $city_value = trim($value[$field["id"] . ".3"]);
                 $state_value = trim($value[$field["id"] . ".4"]);
                 $zip_value = trim($value[$field["id"] . ".5"]);
                 $country_value = trim($value[$field["id"] . ".6"]);
                 $address = $street_value;
                 $address .= !empty($address) && !empty($street2_value) ? " {$street2_value}" : $street2_value;
                 $address .= !empty($address) && (!empty($city_value) || !empty($state_value)) ? "<br />{$city_value}" : $city_value;
                 $address .= !empty($address) && !empty($city_value) && !empty($state_value) ? ", {$state_value}" : $state_value;
                 $address .= !empty($address) && !empty($zip_value) ? " {$zip_value}" : $zip_value;
                 $address .= !empty($address) && !empty($country_value) ? "<br />{$country_value}" : $country_value;
                 //adding map link
                 if (!empty($address)) {
                     $address_qs = str_replace("<br />", " ", $address);
                     //replacing <br/> with spaces
                     $address_qs = urlencode($address_qs);
                     $address .= "<br/><a href='http://maps.google.com/maps?q={$address_qs}' target='_blank' class='map-it-link'>Map It</a>";
                 }
                 return $address;
             } else {
                 return "";
             }
             break;
         case "email":
             return GFCommon::is_valid_email($value) ? "<a href='mailto:{$value}'>{$value}</a>" : $value;
             break;
         case "website":
             return GFCommon::is_valid_url($value) ? "<a href='{$value}' target='_blank'>{$value}</a>" : $value;
             break;
         case "checkbox":
             if (is_array($value)) {
                 foreach ($value as $key => $item) {
                     if (!empty($item)) {
                         $items .= "<li>{$item}</li>";
                     }
                 }
                 return empty($items) ? "" : "<ul class='bulleted'>{$items}</ul>";
             } else {
                 return $value;
             }
             break;
         case "post_image":
             list($url, $title, $caption, $description) = explode("|:|", $value);
             if (!empty($url)) {
                 $url = str_replace(" ", "%20", $url);
                 $value = "<a href='{$url}' target='_blank' title='" . __("Click to view", "gravityforms") . "'><img src='{$url}' width='100' /></a>";
                 $value .= !empty($title) ? "<div>Title: {$title}</div>" : "";
                 $value .= !empty($caption) ? "<div>Caption: {$caption}</div>" : "";
                 $value .= !empty($description) ? "<div>Description: {$description}</div>" : "";
             }
             return $value;
         case "fileupload":
             $file_path = $value;
             if (!empty($file_path)) {
                 $info = pathinfo($file_path);
                 $file_path = esc_attr(str_replace(" ", "%20", $file_path));
                 $value = "<a href='{$file_path}' target='_blank' title='" . __("Click to view", "gravityforms") . "'>" . $info["basename"] . "</a>";
             }
             return $value;
             break;
         case "date":
             return GFCommon::date_display($value, $field["dateFormat"]);
             break;
         default:
             return nl2br($value);
             break;
     }
 }
Ejemplo n.º 16
0
 case "textarea":
 case "post_content":
 case "post_excerpt":
     $value = wpautop($value);
     break;
 case "post_category":
     $value = GFCommon::prepare_post_category_value($lead[$field_id], $field);
     break;
 case "date_created":
     $value = GFCommon::format_date($lead['date_created'], true, apply_filters('kws_gf_date_format', ''));
     break;
 case "date":
     if ($dateformat) {
         $value = GFCommon::date_display($value, $dateformat);
     } else {
         $value = GFCommon::date_display($value, $field["dateFormat"]);
     }
     break;
 case "id":
     $linkClass = '';
     break;
 case "list":
     $value = GFCommon::get_lead_field_display($field, $value);
     break;
 default:
     $input_type = 'text';
     if (is_email($value) && $linkemail) {
         $value = "<a href='mailto:{$value}'{$nofollow}>{$value}</a>";
     } elseif (preg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $value) && $linkwebsite) {
         $href = $value;
         if (!empty($lightboxsettings['images'])) {