Разработка под LS жива? (личный опыт)

Приветствую всех участников сообщества!

Несколько лет участвую в сообществе, периодически используя CMS Livestreet для воплощения идей.
Что-то покупается готовым, допиливается вручную, что-то берется в бесплатном доступе и при необходимости также допиливается, а что-то заказывается с нуля. Наверное как и все))
В этот раз понадобилась разработка с нуля, т.к. ничего готового позволяющего вести видеосвязь через LS не нашлось.
Выбрав из ТОП-20 разработчиков свободных на тот момент, сделал рассылку.
50% ответили что заняты, 30% что не пишут уже под LS, 10% не вписались в бюджет и еще 10% не ответили совсем.
К счастью чуть позже ответил один из ранее занятых разработчиков — Sersar, он и был выбран в качестве разработчика.

Общие трудозатраты:

  • 1 день обсуждение техзадания.
  • 3 дня настройка и компиляция Red5 Media Server (собственными силами).
  • 3 дня выбор и обсуждение пути реализации.
  • 7 дней на разработку плагина.
  • 3 дня на доработку-корректировку.

Таким образом с момента постановки задачи до реализации ушло около 2 недель, за вменяемые деньги.
От себя хочу отметить что с разработчиком было интересно сотрудничать, все вопросы по делу, полное соблюдение сроков и ответы на необходимые вопросы.

Приятно что разработка в сообществе жива, только не совсем понятна насколько.
У кого-то есть опыт разработки под LS в последнее время? Может мне кажется но часть задач всплывает в разделе «Работа» снова и снова, не находя видимо решения.
Кто-то планирует переносить готовые сайты на 2.0. или только для новых проектов?

Адаптация плагинов и шаблонов для LS 2.0: быть или не быть?

Добрый день. Возникло желание узнать, какие плагины и шаблоны разработчики и дизайнеры точно будут адаптировать, какие планируют адаптировать и какие точно не будут адаптировать для LS 2.0, после релиза?

Итак, делимся планами в комментариях.

Можно ли сделать аналог на Livestreet?

Добрый день, Уважаемое сообщество Livestreet!

Возник такой вопрос: можно ли сделать на livestreet что-то вроде аналога пикабу по функционалу?
В частности, интересует следующее:

  1. На главной вывод самых рейтинговых постов за сутки
  2. Свежие посты попадают в общую ленту
  3. Вывод на главной всего поста, без «читать далее». Только если пост большой — он скрывается частично. И его можно раскрыть нажатием кнопки
  4. Автоподгрузка постов при прокрутке вместо пагинации

Есть ли какой-то шаблон+плагины для этого? Интересуют платные решения в том числе.
Спасибо!

Как быть с копирайтом на платном шаблоне?

Купил шаблон и вижу что там стоит копирайт. Вопрос, могу ли я его снять? И без всяких дополнительных донейтов (могу понять донейт за бесплатный шаблон, но не за платный), ведь я уже оплатил шаблон.
Понимаю что разработчики считают по другому. Но и я получается должен оплатить дважды.
Хотелось бы узнать мнение не только участников сообщества, но и Максима (ort ).

Окончание истории: получил разрешение от автора шаблона, на снятие копирайта.

Плагин "Вопросы"

Закончил работу над еще одним плагином. Целью ставил глубже вникнуть в устройство LiveStreet и создание плагинов, а в итоге получился плагин добавляющий новый раздел на сайт — раздел вопросов и ответов.

Итак, возможности плагина (в целом функционал схож с функционалом топиков, но с некоторыми изменениями):

  1. Зарегистрированные пользователи могут задавать вопросы и отвечать на них.
  2. Категоризация вопросов осуществляется при помощи тегов. На отдельной странице имеется список всех тегов с поиском по ним.
  3. За вопросы и ответы можно голосовать. Рейтинг и сила в таком случае начисляются аналогично топикам.
  4. Правильные ответы автор вопроса может отмечать как решение вопроса. В таком случае вопрос считается решенным и у его названия появляется соответствующая отметка.
  5. Решений для одного вопроса может быть несколько.
  6. За правильные ответы автору ответа начисляется сила и рейтинг. Величина — такая же как и при голосовании за топик.
  7. Вопросы и ответы можно добавлять к себе в избранное. Для вопросов можно добавлять свои теги.
  8. На новые ответы к вопросу можно подписываться.
  9. В «Активности» выводятся следующие события: добавления вопроса/ответа, голосование за вопрос/ответ.
  10. В сайдбаре помимо основных блоков «Прямой эфир» и «Теги» присутствует блок «Лучшее» в котором выводятся лучшие вопросы за указанный в конфиге период.

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

Вопрос по записи данных в разные таблицы БД и ORM

Пробую написать плагин вопросов. Делаю по аналогии с топиками. В БД создаю две таблицы для вопросов:

CREATE TABLE IF NOT EXISTS `prefix_question` (
  `question_id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `user_id` int(11) unsigned NOT NULL,
  `question_title` varchar(200) NOT NULL,
  `question_tags` varchar(250) NOT NULL COMMENT 'tags separated by a comma',
  `question_date_add` datetime NOT NULL,
  `question_date_edit` datetime DEFAULT NULL,
  `question_user_ip` varchar(20) NOT NULL,
  `question_publish_index` tinyint(1) NOT NULL DEFAULT '0',
  `question_count_read` int(11) unsigned NOT NULL DEFAULT '0',
  `question_cut_text` varchar(100) DEFAULT NULL,
  `question_text_hash` varchar(32) NOT NULL,
  PRIMARY KEY (`question_id`),
  KEY `user_id` (`user_id`),
  KEY `question_date_add` (`question_date_add`),
  KEY `question_text_hash` (`question_text_hash`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;


CREATE TABLE IF NOT EXISTS `prefix_question_content` (
  `question_id` int(11) unsigned NOT NULL,
  `question_text` longtext NOT NULL,
  `question_text_short` text NOT NULL,
  `question_text_source` longtext NOT NULL,
  `question_extra` text NOT NULL,
  PRIMARY KEY (`question_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


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

Вопрос по пингатору

Всем привет!

Установлен плагин пингатора (исправленный). В файле plugins/empblogping/classes/modules/empping/Emping.class.php есть следующий код:

/**
     * Отдает линк на rss блога в котором опубликован топик
     *
     * @param ModuleTopic_EntityTopic $oTopic
     * @return string
     */
    protected function getRssUrl($oTopic) {
        if ($oTopic->getBlog()->getType() == 'personal') {
            return Router::GetPath('rss') . 'personal_blog/' . $oTopic->getBlog()->getOwner()->getLogin() . '/';
        } else {
            return Router::GetPath('rss') . 'blog/' . $oTopic->getBlog()->getUrl();
        } 
    }


Вопрос вот по этой части:
return Router::GetPath('rss') . 'personal_blog/' . $oTopic->getBlog()->getOwner()->getLogin() . '/';
        } else {
            return Router::GetPath('rss') . 'blog/' . $oTopic->getBlog()->getUrl();

Как я понял, первым условием он отдает пинг персональных блогов и строит структуру адреса сайт/rss/personal_blog/логин/ и пингует ленту топиков пользователя, закрывая адрес слэшем.

А во втором случае плагин пингует статьи коллективных разделов сайт/rss/blog/ но уже без слэша на конце.
Вопрос в следующем что он передаёт во втором случае, если конструкции сайт/rss/blog/ на сайте нет вообще.

Как сделать перенаправление с заголовка поста-ссылки?

Здравствуйте.
Используются шаблоны synio и mobile. Как сделать так, чтобы при нажатии на заголовок поста-ссылки происходило перенаправление на саму ссылку?
Т.е. юзер видит пост-ссылку, нажимает на заголовок — и перемещается по ссылке, а чтобы открыть комментарии, нажимает на дату и время поста.

В topic.entity.class.php вижу следующий код:
/**
	 * Возвращает URL для топика-ссылки
	 *
	 * @param bool $bShort	Укарачивать урл или нет
	 * @return null|string
	 */
public function getLinkUrl($bShort=false) {
		if ($this->getType()!='link') {
			return null;
		}

		if ($this->getExtraValue('url')) {
			if ($bShort) {
				$sUrl=htmlspecialchars($this->getExtraValue('url'));
				if (preg_match("/^https?:\/\/(.*)$/i",$sUrl,$aMatch)) {
					$sUrl=$aMatch[1];
				}
				$sUrlShort=substr($sUrl,0,30);
				if (strlen($sUrlShort)!=strlen($sUrl)) {
					return $sUrlShort.'...';
				}
				return $sUrl;
			}
			$sUrl=$this->getExtraValue('url');
			if (!preg_match("/^https?:\/\/(.*)$/i",$sUrl,$aMatch)) {
				$sUrl='http://'.$sUrl;
			}
			return $sUrl;
		}
		return null;
	}


Как бы его подставить в значение ссылки для заголовка топика?