private static function create() { // Decide slug from Type selected if (self::$_quick_start_options['quick_start_type'] == 'city') { $name = 'Cities'; $slug = 'cities'; } else { if (self::$_quick_start_options['quick_start_type'] == 'zip') { $name = 'Zip Codes'; $slug = 'zip-codes'; } else { if (self::$_quick_start_options['quick_start_type'] == 'subdivision') { $name = 'Subdivisions'; $slug = 'subdivisions'; } else { if (self::$_quick_start_options['quick_start_type'] == 'school_district') { $name = 'School Districts'; $slug = 'school-districts'; } else { if (self::$_quick_start_options['quick_start_type'] == 'school') { $name = 'Schools'; $slug = 'schools'; } } } } } // Create menu if needed if (self::$_quick_start_options['quick_start_parent_menu'] == 'new') { $menu_id = self::register_menu($name); } else { if (!empty(self::$_quick_start_options['quick_start_parent_menu']) && self::$_quick_start_options['quick_start_parent_menu'] != 'none') { $menu_id = self::$_quick_start_options['quick_start_parent_menu']; } else { $menu_id = false; } } // Create parent page if needed if (self::$_quick_start_options['quick_start_parent_page'] == 'new') { $parent_id = self::register_parent_page($name, $slug); } else { if (!empty(self::$_quick_start_options['quick_start_parent_page']) && self::$_quick_start_options['quick_start_parent_page'] != 'none') { $parent_id = self::$_quick_start_options['quick_start_parent_page']; } else { $parent_id = false; } } // Create pages for each $criteria_values = array_map('trim', explode("\n", self::$_quick_start_options['quick_start_criteria'])); if (!empty($criteria_values)) { self::register_pages($criteria_values, self::$_quick_start_options['quick_start_type'], $menu_id, $parent_id); } // Remove Criteria to prevent looping creation self::$_quick_start_options['quick_start_criteria'] = ''; DispletRetsIdxOptionsController::update_option('quick_start', self::$_quick_start_options); }
public static function maybe_update() { $last_version = DispletRetsIdxOptionsController::get_option('version'); // If last version still using old update methodology if (empty($last_version) || version_compare('2.0.26', $last_version, '>')) { $user_role_version = get_option('displet_rets_idx_user_role_version'); if (empty($user_role_version) || $user_role_version < 2) { DispletRetsIdxLeadsModel::add_custom_user_role_for_leads(); if ($user_role_version < 2) { DispletRetsIdxUsersUpdatesController::upgrade_users_to_role_2(); } } $version = get_option('displet_rets_idx_options_version'); if (empty($version) || $version < 1) { if (empty($version) || $version < 1) { DispletRetsIdxSettingsUpdatesController::update_settings_to_version_1(); } update_option('displet_rets_idx_options_version', 1); } } // If last version not current if (version_compare(self::$_version, $last_version, '>')) { if (version_compare('2.0.24', $last_version, '>')) { self::update_to_2_0_24(); } if (version_compare('2.0.25', $last_version, '>')) { self::update_to_2_0_25(); } if (version_compare('2.0.26', $last_version, '>')) { self::update_to_2_0_26(); } if (version_compare('2.0.27', $last_version, '>')) { self::update_to_2_0_27(); } if (version_compare('2.0.30', $last_version, '>')) { self::update_to_2_0_30(); } if (version_compare('2.0.31', $last_version, '>')) { self::update_to_2_0_31(); } if (version_compare('2.0.46', $last_version, '>')) { self::update_to_2_0_46(); } if (version_compare('2.1', $last_version, '>')) { self::update_to_2_1(); } if (version_compare('2.1.4', $last_version, '>')) { self::update_to_2_1_4(); } if (version_compare('2.1.10', $last_version, '>')) { self::update_to_2_1_10(); } if (version_compare('2.1.17', $last_version, '>')) { self::update_to_2_1_17(); } if (version_compare('2.1.18', $last_version, '>')) { self::update_to_2_1_18(); } if (version_compare('2.1.19', $last_version, '>')) { self::update_to_2_1_19(); } DispletRetsIdxOptionsController::update_option('version', self::$_version); } }
public static function update_setting($key, $value) { $options = DispletRetsIdxOptionsController::get_option(); $options[$key] = $value; DispletRetsIdxOptionsController::update_option('settings', $options); }
public static function update_field_options($options, $update_settings_page = false) { if (!empty($options['displet_app_key'])) { $field_options = array('area_mls_defined' => self::get_field_values('area_mls_defined', $options['displet_app_key']), 'city' => self::get_field_values('city', $options['displet_app_key']), 'property_type' => self::get_field_values('property_type', $options['displet_app_key']), 'school_district' => self::get_field_values('school_district', $options['displet_app_key']), 'state' => self::get_field_values('state', $options['displet_app_key']), 'status' => self::get_field_values('status', $options['displet_app_key']), 'zip' => self::get_field_values('zip', $options['displet_app_key'])); foreach ($field_options as $field => $value) { if (is_array($value)) { foreach ($value as $key => $val) { $value[$val] = $val; unset($value[$key]); } } else { $value = array(); } if ($update_settings_page) { self::$_settings_page->update_field($field . '_include_filter', $value); } } DispletRetsIdxOptionsController::update_option('fields', $field_options); do_action('displetretsidx_post_field_options_update', $field_options); } }
public static function set_search_forms($search_forms, $from_update = false) { if (!empty($search_forms)) { if ($from_update && empty(self::$_model)) { self::$_model = array(); } self::_set_defaults(); self::_set_field_options(); foreach ($search_forms as &$form) { if (!empty($form)) { foreach ($form as &$column) { if (!empty($column)) { foreach ($column as &$field) { if (!empty(self::$_model['search_fields'][$field])) { $new_field = array('label' => !empty(self::$_model['search_fields'][$field]['label']) ? self::$_model['search_fields'][$field]['label'] : self::$_model['search_fields'][$field]['title'], 'field' => $field, 'options' => self::$_model['search_fields'][$field]['options'], 'min' => self::$_model['search_fields'][$field]['range']['min'], 'max' => self::$_model['search_fields'][$field]['range']['max'], 'increment' => self::$_model['search_fields'][$field]['range']['increment']); if ($from_update) { if ($field === 'price' || $field === 'price_max' || $field === 'price_min') { if (!empty(self::$_options['search_values_custom_prices'])) { $new_field['range'] = array_map(array('DispletRetsIdxUtilities', 'increase_by_three_orders_of_magnitude'), array_map('trim', explode("\n", self::$_options['search_values_custom_prices']))); } if (!empty(self::$_options['search_values_min_price'])) { $new_field['min'] = intval(self::$_options['search_values_min_price']) * 1000; } if (!empty(self::$_options['search_values_max_price'])) { $new_field['max'] = intval(self::$_options['search_values_max_price']) * 1000; } if (!empty(self::$_options['search_values_price_increment'])) { $new_field['increment'] = intval(self::$_options['search_values_price_increment']) * 1000; } } else { if ($field === 'beds' || $field === 'beds_max' || $field === 'beds_baths') { if (!empty(self::$_options['search_values_beds_min'])) { $new_field['min'] = intval(self::$_options['search_values_beds_min']); } if (!empty(self::$_options['search_values_beds_max'])) { $new_field['max'] = intval(self::$_options['search_values_beds_max']); } } else { if ($field === 'baths' || $field === 'baths_max') { if (!empty(self::$_options['search_values_baths_min'])) { $new_field['min'] = intval(self::$_options['search_values_baths_min']); } if (!empty(self::$_options['search_values_baths_max'])) { $new_field['max'] = intval(self::$_options['search_values_baths_max']); } } else { if ($field === 'square_feet' || $field === 'square_feet_max' || $field === 'square_feet_min') { if (!empty(self::$_options['search_values_min_square_feet'])) { $new_field['min'] = intval(self::$_options['search_values_min_square_feet']); } if (!empty(self::$_options['search_values_max_square_feet'])) { $new_field['max'] = intval(self::$_options['search_values_max_square_feet']); } if (!empty(self::$_options['search_values_square_feet_increment'])) { $new_field['increment'] = intval(self::$_options['search_values_square_feet_increment']); } } else { if ($field === 'acres_min') { if (!empty(self::$_options['search_values_min_acres'])) { $new_field['min'] = floatval(self::$_options['search_values_min_acres']); } if (!empty(self::$_options['search_values_max_acres'])) { $new_field['max'] = floatval(self::$_options['search_values_max_acres']); } if (!empty(self::$_options['search_values_acres_increment'])) { $new_field['increment'] = floatval(self::$_options['search_values_acres_increment']); } } else { if ($field === 'property_type' || $field === 'property_type_select') { if (!empty(self::$_options['search_values_property_types'])) { $property_types = array_filter(self::$_options['search_values_property_types'], array('DispletRetsIdxUtilities', 'remove_false_as_string')); if (!empty($property_types)) { $new_field['options'] = array_keys($property_types); } } } } } } } } } $field = $new_field; } } } } } } DispletRetsIdxOptionsController::update_option('search_forms', $search_forms); } }