Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
Это косяк самого движка. После обновления у меня тоже перестала работать эта фича. Нужно заменить функцию getSearches в файле oc-includes/osclass/model/LatestSearches.phpПодскажите пжл как реализовать отображение последних запросов как здесь:
Посмотреть вложение 118590
покапавшись в настройках никак не смог реализовать
Работает на osclass v8.2.1, используя Epsilon тему 1.2.4 (на 1.4.2 тоже не смог настроить)
public function getSearches($limit = 20, $sort = 'd_date') {
$this->dao->select('s_search, MAX(d_date) as d_date, COUNT(s_search) as i_total');
$this->dao->from($this->getTableName());
$this->dao->groupBy('s_search');
$this->dao->orderBy($sort, 'DESC');
$this->dao->limit($limit);
$result = $this->dao->get();
if($result == false) {
return false;
}
$data = $result->result();
$output = array();
if(is_array($data) && count($data) > 0 && osc_latest_searches_restriction() <> 0 && osc_latest_searches_words() <> '') {
foreach($data as $row) {
$word = osc_latest_search_filter($row['s_search']);
if($word <> '') {
$output[] = $row;
}
}
return $output;
}
return $data;
}
<div class="row">
<label for="expired_days"><?php _e('Listing duration', 'epsilon'); ?> <span class="req">*</span></label>
<div class="input-box">
<select name="expired_days" id="expired_days" required>
<?php
$durations = array(
3 => sprintf(__('%d days', 'epsilon'), 3),
7 => sprintf(__('%d days', 'epsilon'), 7),
30 => sprintf(__('%d days', 'epsilon'), 30),
60 => sprintf(__('%d days', 'epsilon'), 60),
90 => sprintf(__('%d days', 'epsilon'), 90)
);
foreach($durations as $days => $label) {
$selected = (@$prepare['expired_days'] == $days || (!isset($prepare['expired_days']) && $days == 30)) ? 'selected="selected"' : '';
echo '<option value="' . osc_esc_html($days) . '" ' . $selected . '>' . $label . '</option>';
}
?>
</select>
</div>
function eps_item_post_form($item) {
if(Params::getParam('expired_days')) {
$expired_days = (int)Params::getParam('expired_days');
// Проверяем допустимые значения
$allowed_days = array(3, 7, 30, 60, 90);
if(in_array($expired_days, $allowed_days)) {
$dt_expiration = date('Y-m-d H:i:s', strtotime('+' . $expired_days . ' days'));
// Обновляем дату истечения в базе данных
$mItems = Item::newInstance();
$mItems->dao->update(
DB_TABLE_PREFIX.'t_item',
array('dt_expiration' => $dt_expiration),
array('pk_i_id' => $item['pk_i_id'])
);
}
}
}
// Добавляем хуки для новых и редактируемых объявлений
osc_add_hook('posted_item', 'eps_item_post_form');
osc_add_hook('edited_item', 'eps_item_post_form');
// Загружаем файл с AJAX обработчиками
require_once 'ajax.php';