Ошибка скрипта при вставке из Твиттера

Уважаемые коллеги,

В файле engine/lib/internal/template/js/main.js происходит переопределение метода .bind():
	Function.prototype.bind = function(context) {
		var fn = this;
		if(jQuery.type(fn) != 'function'){
			throw new TypeError('Function.prototype.bind: call on non-function');
		};
		if(jQuery.type(context) == 'null'){
			throw new TypeError('Function.prototype.bind: cant be bound to null');
		};
		return function() {
			return fn.apply(context, arguments);
		};
	};


Вроде бы невинная проверка, но она падает, если в заметку вставлен эмбед Твиттера, поскольку в подключаемом widgets.js идёт прямой вызов .bind() с нуллом:
e.exports = {tweet: o(r.bind(null, "tweet")),timeline: i,video: o(r.bind(null, "video")),tweetRefresh: r.bind(null, "tweet")}


Это приводит к выбрасыванию исключения «Function.prototype.bind: cant be bound to null» (как есть, без апострофа).

Я эту ситуацию смог воспроизвести: jsfiddle.net/NPC42/z89o15em/ (см. консоль), но только если поставить запуск JQuery на onDomready, иначе всё работает без проблем (каким-то образом).

Вопрос мой состоит из двух частей — во-первых, может я что-то не так понял? :) Проблема происходит при определённых обстоятельствах, и я не до конца понимаю, при каких именно. С полгода назад вставка Twitter работала, а теперь мы видим, что начала падать на этом месте — хотя теоретически должна была падать всегда.

Во-вторых, будет ли безопасно поменять определение в main.js следующим образом?
if (!Function.prototype.bind) {
	Function.prototype.bind = function(context) {
		var fn = this;
		if(jQuery.type(fn) != 'function'){
			throw new TypeError('Function.prototype.bind: call on non-function');
		};
		if(jQuery.type(context) == 'null'){
			throw new TypeError('Function.prototype.bind: cant be bound to null');
		};
		return function() {
			return fn.apply(context, arguments);
		};
	};
}


Проблему вставки Твиттера это решает, но я тревожусь, не поломает ли это что-то ещё, ведь по какой-то причине LS решил определить собственный метод .bind() (для поддержки IE8, возможно?).

Буду благодарен за любые объяснения и подсказки.

Плагин «Лента Твиттера (Twitter Feed)», переход на новое API от твиттера


НОВОЕ


— перевод плагина на работу через новое API твиттера версии 1.1
— авторизация через OAuth
— кеширование полученных твитов

В связи с переходом твиттера на новое API и отказ от предыдущей первой версии, плагин полностью переработан на авторизацию через OAuth. Также добавлено кеширование полученных твитов на нужное время.

После модерации плагина будет доступна версия 2.0.0 плагина.

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

Плагин «Лента Твиттера (Twitter Feed)»


1. Плагин обновлен до версии 1.2.1 для ЛС 1.0.1 (исправлен баг).
2. Выпущена одна версия 1.2.2 для ЛС 1.0 так и для 1.0.1 в которой есть возможность выводить твиты в отдельном блоке в сайдбаре. Выполнено по просьбе пользователя usnet .

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

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

"Компании" и "Работа" 1.0.1 + 2 плагина в подарок

Сегодня выпустил обновления плагинов под 1.0.1 версию, обновления отправлены покупателям и выложены в каталог. Теперь архив с плагином сдержит версии плагинов под 0.4.2, 0.5.1 и 1.0.1 для удобства.


Были переработаны шаблоны, теперь как мне кажется выглядит симпатичнее. Для больших текстовых полей используется уже встроенный в движок jquery плагин для подсчета количества введенных символов.

Может кому пригодится, для использования достаточно объявить:
<script language="javascript" type="text/javascript">
	jQuery(document).ready(function($) {
		$("#идполя").charCount({
			allowed: 255 , // допустимое число символов в поле
			warning: 20 // если осталось меньше 20 символов текст символов будет красный
		});
	} );
</script>

так же у поля настраиваются стили, но это вы уже лучше тут почитайте.
Так же перенесены данные по городам и странам на новое Geo.

Бесплатные печеньки...

Плагин «Лента Твиттера (Twitter Feed)», Версия 1.2.0 для ЛС 1.0+


Позволяет организовать вывод последних твитов вашего сайта, любимого исполнителя (группы), новостей и т.п. в «прямом эфире».

Плагин доступен в каталоге.

P.S. Плагин не будет работать без этого фикса в ЛС 1.0. Впрочем ни один плагин с вкладкой в прямом эфире не будет работать без этого фикса.
Мои контакты.

Плагин «Twitter Feed»

Ваша twitter-лента в блоке «Прямой эфир».

Позволяет организовать вывод последних твитов вашего сайта, любимого исполнителя (группы), новостей и т.п. в «прямом эфире».

Плагин портирован под ЛС 0.5+ (jQuery).

Плагин доступен в каталоге.

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

Плагин SocialVote - голосуем за топики с помощью Vkontakte/Facebook/Twitter


Плагин реализует идею, использовавшуюся, например, в Битве Брендов (если кто не знает, thebattleofbrands.com/ru, вот история успеха)

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

Демо-сайт плагина

Совместим с 0.42 и 0.5 версиями Livestreet. Для работы с шаблонами на jQuery (по умолчанию в 0.5) переименуйте папку templates/skin/new-jquery в default, а предыдущую default удалите.



Цена плагина $9.99.

Купить плагин

Social Stream Chat Widget

Кто-нибудь может сделать такое? Или может, где видел реализацию.


Посмотреть, как работает можно тут справа.

Это чат.

Функционал:
— регистрация через соц сети (для русской версии достаточно Fb, Vk, Tw)
— после написание чего-либо — это отправляется в профиль соц сети с ссылкой на страницу, на которой находится виджет

Раздел "Твиттер" в "Прямом эфире"

В блоке «Прямой эфир» появляется новая вкладка «Твиттер», куда выводятся последние твиты из аккаунта, который задан в конфиге. Позволяет организовать вывод последних твитов вашего сайта, любимого исполнителя (группы), новостей и проч.

Параметры конфига:

— Имя пользователя, чьи твиты показывать
— Количество твитов для показа
— Превращать ли текстовые линки в ссылки.

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