but1head

but1head

С нами с 01 апреля 2014; Место в рейтинге пользователей: #19
Сергей Скат
24 декабря 2014, 16:26
2
0
Кому интересно и кто айдет вопрос, mFilter2 уже отдает все результаты в json которые можно вертеть как угодно, вот мой код для реализации ленты

<script>
              var xhr_is_sent = false;        //флаг отправки
             $(window).scroll(function() {
                  
                     if  ($(window).scrollTop() == $(document).height() - $(window).height()) 
                     {
                        var url = '/assets/components/msearch2/action.php';
                        if (!xhr_is_sent) {
                            //отправляем запрос только если завершился предыдущий
                            xhr_is_sent = true;
                            $.post(url, {
                              action: 'filter',
                              pageId: '1',
                              'tv|area': '50,310393',
                              'tv|price': '1500,49300',
                              page: '8',
                              key: window.mse2Config.key // в это переменной содержится ключ , я так и не понял зачем он нужен но для каждого генерируется свой собственный 
                              },function(data){
                                $('#mse2_results').append($.parseJSON(data).data.results);
                                xhr_is_sent = false;
                            });
                        }
                    }
                });
        </script>
всем удачи, и всем спасибо кто помог в решении вопроса
Василий Наумкин
20 октября 2014, 12:08
4
0
С версии MODX 2.3 у ресурса есть свой метод clearCache.
if ($resource = $modx->getObject('modResource', 15)) {
	$resource->clearCache();
}
Илья Ершов
28 марта 2014, 13:38
2
0
Для потомков:
Предложенный вариант
$cache = $modx->getCacheManager()->getCacheProvider($modx->getOption('cache_resource_key', null, 'resource'));
$key = $modx->resource->getCacheKey();
$cache->delete($key, array('deleteTop' => true));
$cache->delete($key);
работает, но как-то странно… я наблюдал, что при первом обновлении страницы после выполнения этого кода — страница всё равно загружается из Кэша, очень похоже, что это был кэш браузера.

А вот такой вариант чистит сразу:
$id=79;
$resource=$modx->getObject('modResource',$id);
$cacheKey = $resource->getCacheKey();
$modx->cacheManager->refresh(array(
    'resource' => array('key' => $cacheKey),
));
Изменения видны при первом же обновлении страницы.

Но в обоих вариантах используется объект cacheManager
Дмитрий Чумак
16 июля 2013, 16:19
1
0
С точкой разобрался
$uploadfile = $path.$hash.$ext;
поменять на
$uploadfile = $path.$hash.'.'.$ext;