+9.39
Рейтинг
31.72
Сила

Сергей

Настроить прокрутку топиков (решено)

Делаю сайт с топиками в три столбика. Листая топики, приходится нажимать по три раза, чтобы переключиться на следующую строку с тремя топиками. В связи с этим возникла необходимость, сделать прокрутку не к следующему топику, а через два — то есть к следующей строке с тремя топиками. Если кто не понял, речь идет от toolbar.

Пробовал методом тыка поменять некоторые значения с 1 до 3, но не нашел решения.

Вот содержание toolbar.js чтобы было проще помочь:

var ls = ls || {};
ls.toolbar = ls.toolbar || {};

/**
 * Функционал тул-бара (плавающая пимпа) списка топиков
 */
ls.toolbar.topic = (function ($) {

	this.iCurrentTopic=-1;

	this.init = function() {
		var vars = [], hash;
		var hashes = window.location.hash.replace('#','').split('&');
		for(var i = 0; i < hashes.length; i++) {
			hash = hashes[i].split('=');
			vars.push(hash[0]);
			vars[hash[0]] = hash[1];
		}

		if (vars.goTopic!==undefined) {
			if (vars.goTopic=='last') {
				this.iCurrentTopic=$('.js-topic').length-2;
			} else {
				this.iCurrentTopic=parseInt(vars.goTopic)-1;
			}
			this.goNext();
		}
	};

	this.reset = function() {
		this.iCurrentTopic=-1;
	};

	/**
	 * Прокрутка следующему топику
	 */
	this.goNext = function() {
		this.iCurrentTopic++;
		var topic=$('.js-topic:eq('+this.iCurrentTopic+')');
		if (topic.length) {
			$.scrollTo(topic, 500);
		} else {
			this.iCurrentTopic=$('.js-topic').length-1;
			// переход на следующую страницу
			var page=$('.js-paging-next-page');
			if (page.length && page.attr('href')) {
				window.location=page.attr('href')+'#goTopic=0';
			}
		}

		return false;
	};

	/**
	 * Прокрутка предыдущему топику
	 */
	this.goPrev = function() {
		this.iCurrentTopic--;
		if (this.iCurrentTopic<0) {
			this.iCurrentTopic=0;
			// на предыдущую страницу
			var page=$('.js-paging-prev-page');
			if (page.length && page.attr('href')) {
				window.location=page.attr('href')+'#goTopic=last';
			}
		} else {
			var topic=$('.js-topic:eq('+this.iCurrentTopic+')');
			if (topic.length) {
				$.scrollTo(topic, 500);
			}
		}
		return false;
	};

	return this;
}).call(ls.toolbar.topic || {},jQuery);

/**
 * Функционал кнопки "UP"
 */
ls.toolbar.up = (function ($) {

	this.init = function() {
		$(window).scroll(function(){
			if ($(window).scrollTop() > $(window).height() / 2) {
				$('#toolbar_scrollup').fadeIn(500);
			} else {
				$('#toolbar_scrollup').fadeOut(500);
			}
		});
	};

	this.goUp = function() {
		ls.toolbar.topic.reset();
		$.scrollTo(0, 500);
		return false;
	};

	return this;
}).call(ls.toolbar.up || {},jQuery);


Решение от пользователя rsmike

livestreet.ru/blog/11285.html#comment174186

Пример работы можно посмотреть тут: neasa.ru

Скрываем закрытые блоги из общего списка

Итак, у нас на сайте есть открытые и закрытые блоги. Появилось много желающих скрывать их из общего списка.

Сейчас общий список выглядит так: localhost/blogs/

Задача убрать закрытый блог из списка.

Читать дальше →

Плагин "Ленивая загрузка изображений"

Плагин занружает изображения на страницы по мере ее пролистывания, чем позволяет экономить время на загрузке страницы при большом колличестве на ней изображений.


Плагин платный, соимость символическая => 1$.

Закрытый блог [Решено]

Всем привет. Кто-нибудь может сказать есть ли легкий способ для того, чтобы при публикации в закрытым блоге для всех пользователей были видны анонсы постов из этого блога?

Решено. Спасибо AlikMis

если нужно показывать на всем сайте, то

\classes\modules\topic\mapper\Topic.mapper.class.php

строка 415: protected function buildFilter($aFilter) {

после $sWhere=''; добавляем if(!isset($aFilter['blog_type']['close'])) $aFilter['blog_type']['close']=array();

должно получится
protected function buildFilter($aFilter) {
        $sWhere='';
        if(!isset($aFilter['blog_type']['close'])) $aFilter['blog_type']['close']=array();
        if (isset($aFilter['topic_publish'])) {


если только к примеру на главной

\classes\modules\topic\Topic.class.php

строка 497:
public function GetTopicsGood($iPage,$iPerPage,$bAddAccessible=true) {
        $aFilter=array(
                'blog_type' => array(
                        'personal',
                        'open'
                ),

заменить на
public function GetTopicsGood($iPage,$iPerPage,$bAddAccessible=true) {
        $aFilter=array(
                'blog_type' => array(
                        'personal',
                        'open',
                        'close'
                ),


Топик будет отображаться как обычный, но при переходе в него будет ошибка
Ошибка: Нет доступа
Это закрытый блог, у вас нет прав на просмотр контента

Небольшой баг в loader.php

Переехал на другой хостинг и начал появляться один и тот же глюк. Через несколько часов после установки стала вылезать вот такая ошибка:

Notice: Undefined index: extension in /home2/kinorota/public_html/config/loader.php on line 72

За ней отображается памятная многим ошибка сессии, которая на сей раз никак не связана с неправильной кодировкой config.php:


Warning: session_regenerate_id() [function.session-regenerate-id]: Cannot regenerate session id - headers already sent in /home2/kinorota/public_html/engine/modules/session/Session.class.php on line 73
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home2/kinorota/public_html/config/loader.php:71) in /home2/kinorota/public_html/engine/modules/session/Session.class.php on line 76

Попробовал с помощью var_dump отследить это дело, и вот что получилось:

array(4) { ["dirname"]=> string(42) "/home2/kinorota/public_html/engine/include" ["basename"]=> string(12) "function.php" ["extension"]=> string(3) "php" ["filename"]=> string(8) "function" }
array(3) { ["dirname"]=> string(42) "/home2/kinorota/public_html/engine/include" ["basename"]=> string(9) "error_log" ["filename"]=> string(9) "error_log" }
array(4) { ["dirname"]=> string(42) "/home2/kinorota/public_html/engine/include" ["basename"]=> string(8) "json.php" ["extension"]=> string(3) "php" ["filename"]=> string(4) "json" }

Как я понял, на некоторых хостингах файл ошибок генерится автоматически и может в любом каталоге вылезти. В моем случае это файл error_log, у которого нет расширения, что приводит к тому, что в массиве отсутствует ключ extension. Решение этому простое: в файле loader.php строку

if (strtolower($aPathInfo['extension'])=='php') {

нужно поменять на

if (array_key_exists('extension', $aPathInfo) && (strtolower($aPathInfo['extension'])=='php')) {

После этого ошибка исчезает навсегда. На мой взгляд, необходимо данную поправку внести в код.

Собираю людей на плагин Споры/Холивары/Тотализатор

Всех приветствую, наверное некоторые меня уже знают, а некоторые может еще и нет :)

Собираю пользователей, для плагина, который нужен многим :) ну как минимум двум! Описание ТЗ и прочие под катом, но думаю из названия уже ясно что к чему.

Если кому интересно или ест вопросы пишите, если хотите участвовать в коллективной покупке пишите отвечу вличке. Сроки и стоимости оглашу через несколько дней, как будет отклик пользователей.

PS разработчик eXtravert


Читать дальше →

Автоподгрузка новых комментариев прямого эфира

Поискал в поиске и не нашел подобного вопроса.
Насколько реально сделать автоподгрузку новых комментариев и тем в прямом эфире без обновления страницы (по типу ленты новостей в вк) и не умрет ли от этого сервер?

Пагинация

Интересно почему например на сайте порядка несколько тысяч страниц, а на главной внизу навигация по страницам показывает только 7 страниц? От чего это зависит и так ли должно быть? LS-0.5.1 Street-Spirit

Плагин ReGroup / группы пользователей сайта

Плагин ReGroup / группы пользователей сайта
Рад представить вашему вниманию плагин ReGroup.

Возможености плагина
Добавление групп пользователями сайта
На данный момент в группах реализовано.
  1. Стена
  2. Альбомы
  3. Размещение изображений в альбомы
По типу блогов в ls можно делать.
  1. Группы ( Закрытые / Открытые )
  2. Вступление, модерирование, администрирование, ( в закрытую, приглашение ) пользователей в группу.
Добавлено в профиль пользователя.
  1. Группы (создал)
  2. Группы (состоит)
  3. Группы (модерирует)
  4. Группы (администрирует)


Плагин уже полноценно работает и потестировать можно на сайте. Единственная просьба, не увлекайтесь с загрузкой изображений, пока проблема с хостингом..;)

Хочется узнать, какие вы бы хотели видеть дополнения и функции в этом плагине а так же сообщайте о ошибках которые найдёте.

Плагин будет платный и цена будет установлена после, как выложу его в общий каталог.

Прошу помощи с фильтром

Необходимо вывести только топики принудительно выводимые на главную. Нашел фильтр:

$aFilter=array(
			'blog_type' => array(
				'personal',
				'open'
			),
			'topic_publish' => 1,
			'topic_rating'  => array(
				'value' => Config::Get('module.blog.index_good'),
				'type'  => 'top',
				'publish_index'  => 1,
			)
		);


Подскажите, пожалуйста, как его изменить, чтобы выводились только опубликованные топики принудительно выведенные на главную?