Example #1
0
 /**
  * Updates property page title
  * @author Howard <*****@*****.**>
  * @static
  * @param array $property_data
  * @param int $property_id
  * @param boolean $force
  * @return string
  */
 public static function update_property_page_title($property_data, $property_id = 0, $force = false)
 {
     /** fetch property data if property id is setted **/
     if ($property_id) {
         $property_data = self::get_property_raw_data($property_id);
     }
     if (!$property_id) {
         $property_id = $property_data['id'];
     }
     $column = 'field_312';
     $field_id = wpl_flex::get_dbst_id($column, $property_data['kind']);
     $field = wpl_flex::get_field($field_id);
     $base_column = NULL;
     if (isset($field->multilingual) and $field->multilingual and wpl_global::check_multilingual_status()) {
         $base_column = wpl_global::get_current_language() == wpl_addon_pro::get_default_language() ? $column : NULL;
         $column = wpl_addon_pro::get_column_lang_name($column, wpl_global::get_current_language(), false);
     }
     /** return current page title if exists **/
     if (isset($property_data[$column]) and trim($property_data[$column]) != '' and !$force) {
         return $property_data[$column];
     }
     /** first validation **/
     if (!$property_data) {
         return '';
     }
     $listing = wpl_global::get_listings($property_data['listing'])->name;
     $property_type = wpl_global::get_property_types($property_data['property_type'])->name;
     $title = array();
     $title['property_type'] = __($property_type, WPL_TEXTDOMAIN);
     $title['listing'] = __($listing, WPL_TEXTDOMAIN);
     if (trim($property_data['rooms'])) {
         $title['rooms'] = $property_data['rooms'] . __('Room' . ($property_data['rooms'] > 1 ? 's' : ''), WPL_TEXTDOMAIN);
     }
     if (trim($property_data['bedrooms'])) {
         $title['bedrooms'] = $property_data['bedrooms'] . __('Bedroom' . ($property_data['bedrooms'] > 1 ? 's' : ''), WPL_TEXTDOMAIN);
     }
     if (trim($property_data['bathrooms'])) {
         $title['bathrooms'] = $property_data['bathrooms'] . __('Bathroom' . ($property_data['bathrooms'] > 1 ? 's' : ''), WPL_TEXTDOMAIN);
     }
     $title['price'] = __('Price', WPL_TEXTDOMAIN) . ' ' . wpl_render::render_price($property_data['price'], $property_data['price_unit']);
     $title['id'] = $property_data['mls_id'];
     $title_str = implode(' - ', $title);
     /** apply filters **/
     _wpl_import('libraries.filters');
     @extract(wpl_filters::apply('generate_property_page_title', array('title' => $title, 'title_str' => $title_str)));
     /** update **/
     if (wpl_db::columns('wpl_properties', $column)) {
         $query = "UPDATE `#__wpl_properties` SET `" . $column . "`='" . $title_str . "' WHERE `id`='" . $property_id . "'";
         wpl_db::q($query, 'update');
     }
     /** update **/
     if ($base_column and wpl_db::columns('wpl_properties', $base_column)) {
         $query = "UPDATE `#__wpl_properties` SET `" . $base_column . "`='" . $title_str . "' WHERE `id`='" . $property_id . "'";
         wpl_db::q($query, 'update');
     }
     return $title_str;
 }
Example #2
0
        }
    }
    if (isset($options['if_zero']) and $options['if_zero'] == 2 and !trim($value)) {
        $return['value'] = __($options['call_text'], WPL_TEXTDOMAIN);
    }
    if (isset($options['if_zero']) and !$options['if_zero'] and !trim($value)) {
        $return = array();
    }
    $done_this = true;
} elseif ($type == 'mmprice' and !$done_this) {
    $return['field_id'] = $field->id;
    $return['type'] = $field->type;
    $return['name'] = __($field->name, WPL_TEXTDOMAIN);
    $rendered_price = wpl_render::render_price($value, $values[$field->table_column . '_unit']);
    if (trim($values[$field->table_column . '_max'])) {
        $rendered_price .= ' - ' . wpl_render::render_price($values[$field->table_column . '_max'], $values[$field->table_column . '_unit']);
    }
    $return['value'] = $rendered_price;
    $return['price_only'] = $rendered_price;
    $price_period = wpl_property::render_field($values['price_period'], wpl_flex::get_dbst_id('price_period', $field->kind));
    if (isset($price_period['value'])) {
        $return['value'] .= ' ' . $price_period['value'];
        $return['price_period'] = $price_period['value'];
    }
    if (isset($options['if_zero']) and $options['if_zero'] == 2 and !trim($value) and !trim($values[$field->table_column . '_max'])) {
        $return['value'] = __($options['call_text'], WPL_TEXTDOMAIN);
    }
    if (isset($options['if_zero']) and !$options['if_zero'] and !trim($value) and !trim($values[$field->table_column . '_max'])) {
        $return = array();
    }
    $done_this = true;