/** * Cache the form meta. * * @param int $form_id The form ID. * * @return mixed */ public function get_form_meta($form_id) { if (!isset($this->_form_meta_by_id[$form_id])) { $forms = GFFormsModel::get_form_meta_by_id($form_id); $this->_form_meta_by_id[$form_id] = array_shift($forms); } return $this->_form_meta_by_id[$form_id]; }
function check_force($id) { if (get_option('gform_force_ssl_all') == '1') { return true; } $form_meta = GFFormsModel::get_form_meta_by_id($id); if (!empty($form_meta[0]['force_ssl'])) { return $form_meta[0]['force_ssl']; } return false; }
/** * Removes all settings and deactivates the Add-On. * * Not intended to be overridden or called directly by Add-Ons. * * @ignore */ public function uninstall_addon() { if (!$this->current_user_can_any($this->_capabilities_uninstall)) { die(__("You don't have adequate permission to uninstall this addon: " . $this->_title, "gravityforms")); } $continue = $this->uninstall(); if (false === $continue) { return false; } global $wpdb; $lead_meta_table = GFFormsModel::get_lead_meta_table_name(); $forms = GFFormsModel::get_forms(); $all_form_ids = array(); // remove entry meta foreach ($forms as $form) { $all_form_ids[] = $form->id; $entry_meta = $this->get_entry_meta(array(), $form->id); if (is_array($entry_meta)) { foreach (array_keys($entry_meta) as $meta_key) { $sql = $wpdb->prepare("DELETE from {$lead_meta_table} WHERE meta_key=%s", $meta_key); $wpdb->query($sql); } } } //remove form settings $form_metas = GFFormsModel::get_form_meta_by_id($all_form_ids); require_once GFCommon::get_base_path() . '/form_detail.php'; foreach ($form_metas as $form_meta) { if (isset($form_meta[$this->_slug])) { unset($form_meta[$this->_slug]); $form_json = json_encode($form_meta); GFFormDetail::save_form_info($form_meta["id"], addslashes($form_json)); } } //removing options delete_option("gravityformsaddon_" . $this->_slug . "_settings"); delete_option("gravityformsaddon_" . $this->_slug . "_version"); //Deactivating plugin deactivate_plugins($this->_path); update_option('recently_activated', array($this->_path => time()) + (array) get_option('recently_activated')); return true; }
public static function get_form_metas() { $form_ids = array(); $forms = RGFormsModel::get_forms(true); foreach ($forms as $form) { $form_ids[] = $form->id; } $form_metas = GFFormsModel::get_form_meta_by_id($form_ids); return $form_metas; }
/** * Modifies the top WordPress toolbar to add Gravity Forms menu items. * * Called from the wp_before_admin_bar_render action. * * @access public * @static * @global $wp_admin_bar * @see Action: wp_before_admin_bar_render * */ public static function admin_bar() { /** * @var WP_Admin_Bar $wp_admin_bar */ global $wp_admin_bar; if (GFCommon::current_user_can_any('gravityforms_create_form')) { $wp_admin_bar->add_node(array('id' => 'gravityforms-new-form', 'parent' => 'new-content', 'title' => esc_attr__('Form', 'gravityforms'), 'href' => admin_url('admin.php?page="gf_new_form'))); } if (!get_option('gform_enable_toolbar_menu')) { return; } if (!GFCommon::current_user_can_any(array('gravityforms_edit_forms', 'gravityforms_create_form', 'gravityforms_preview_forms', 'gravityforms_view_entries'))) { // The current user can't use anything on the menu so bail. return; } $args = array('id' => 'gform-forms', 'title' => '<div class="ab-item gforms-menu-icon svg" style="background-image: url(\'' . self::get_admin_icon_b64('#888888') . '\');"></div><span class="ab-label">' . esc_html__('Forms', 'gravityforms') . '</span></a>', 'href' => admin_url('admin.php?page=gf_edit_forms')); $wp_admin_bar->add_node($args); $current_user_id = get_current_user_id(); $recent_form_ids = get_user_meta($current_user_id, 'gform_recent_forms', true); if (empty($recent_form_ids)) { $all_form_ids = GFFormsModel::get_form_ids(); $all_form_ids = array_reverse($all_form_ids); $recent_form_ids = array_slice($all_form_ids, 0, 10); if ($recent_form_ids) { update_user_meta($current_user_id, 'gform_recent_forms', $recent_form_ids); } } if ($recent_form_ids) { $forms = GFFormsModel::get_form_meta_by_id($recent_form_ids); $wp_admin_bar->add_node(array('id' => 'gform-form-recent-forms', 'parent' => 'gform-forms', 'title' => esc_html__('Recent', 'gravityforms'), 'group' => true)); foreach ($recent_form_ids as $recent_form_id) { foreach ($forms as $form) { if ($form['id'] == $recent_form_id) { $wp_admin_bar->add_node(array('id' => 'gform-form-' . $recent_form_id, 'parent' => 'gform-form-recent-forms', 'title' => $form['title'], 'href' => GFCommon::current_user_can_any('gravityforms_edit_forms') ? admin_url('admin.php?page=gf_edit_forms&id=' . $recent_form_id) : '')); if (GFCommon::current_user_can_any('gravityforms_edit_forms')) { $wp_admin_bar->add_node(array('id' => 'gform-form-' . $recent_form_id . '-edit', 'parent' => 'gform-form-' . $recent_form_id, 'title' => esc_html__('Edit', 'gravityforms'), 'href' => admin_url('admin.php?page=gf_edit_forms&id=' . $recent_form_id))); } if (GFCommon::current_user_can_any('gravityforms_view_entries')) { $wp_admin_bar->add_node(array('id' => 'gform-form-' . $recent_form_id . '-entries', 'parent' => 'gform-form-' . $recent_form_id, 'title' => esc_html__('Entries', 'gravityforms'), 'href' => admin_url('admin.php?page=gf_entries&id=' . $recent_form_id))); } if (GFCommon::current_user_can_any('gravityforms_edit_forms')) { $wp_admin_bar->add_node(array('id' => 'gform-form-' . $recent_form_id . '-settings', 'parent' => 'gform-form-' . $recent_form_id, 'title' => esc_html__('Settings', 'gravityforms'), 'href' => admin_url('admin.php?page=gf_edit_forms&view=settings&subview=settings&id=' . $recent_form_id))); } if (GFCommon::current_user_can_any(array('gravityforms_edit_forms', 'gravityforms_create_form', 'gravityforms_preview_forms'))) { $wp_admin_bar->add_node(array('id' => 'gform-form-' . $recent_form_id . '-preview', 'parent' => 'gform-form-' . $recent_form_id, 'title' => esc_html__('Preview', 'gravityforms'), 'href' => trailingslashit(site_url()) . '?gf_page=preview&id=' . $recent_form_id)); } } } } } if (GFCommon::current_user_can_any('gravityforms_edit_forms')) { $wp_admin_bar->add_node(array('id' => 'gform-forms-view-all', 'parent' => 'gform-forms', 'title' => esc_attr__('All Forms', 'gravityforms'), 'href' => admin_url('admin.php?page=gf_edit_forms'))); } if (GFCommon::current_user_can_any('gravityforms_create_form')) { $wp_admin_bar->add_node(array('id' => 'gform-forms-new-form', 'parent' => 'gform-forms', 'title' => esc_attr__('New Form', 'gravityforms'), 'href' => admin_url('admin.php?page=gf_new_form'))); } }
/** * Cache the form meta. * * @param int $form_id The form ID. * * @return mixed */ public function get_form_meta($form_id) { $form_metas = $this->_form_meta_by_id; if (empty($form_metas)) { $form_ids = array(); $forms = RGFormsModel::get_forms(); foreach ($forms as $form) { $form_ids[] = $form->id; } if (method_exists('GFFormsModel', 'get_form_meta_by_id')) { $form_metas = GFFormsModel::get_form_meta_by_id($form_ids); } else { $form_metas = GFFormsModel::get_forms_by_id($form_ids); } //backwards compatiblity with <1.7 $this->_form_meta_by_id = $form_metas; } foreach ($form_metas as $form_meta) { if ($form_meta['id'] == $form_id) { return $form_meta; } } }
public static function set_counter_script($script, $form_id, $field_id, $max_length) { $get_form = GFFormsModel::get_form_meta_by_id($form_id); $form = reset($get_form); $field_id_num = GF_Field_Repeater::get_field_id_number($field_id); if (GF_Field_Repeater::field_is_repeater_child($form, $field_id_num)) { $script = ''; } return $script; }
public static function gform_disable_ajax($args) { $get_form = GFFormsModel::get_form_meta_by_id($args['form_id']); $form = reset($get_form); if (GF_Field_Repeater::get_field_index($form) !== false) { $args['ajax'] = false; } return $args; }
public function get_form_meta($form_id) { $form_metas = $this->_form_meta_by_id; if (empty($form_metas)) { $form_ids = array(); $forms = RGFormsModel::get_forms(); foreach ($forms as $form) { $form_ids[] = $form->id; } $form_metas = GFFormsModel::get_form_meta_by_id($form_ids); $this->_form_meta_by_id = $form_metas; } foreach ($form_metas as $form_meta) { if ($form_meta['id'] == $form_id) { return $form_meta; } } }