Полезная информация

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.

№87610-07-2009 16:45:26

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.5
Веб-сайт

Re: Custom Buttons

Najlus пишет

При попытке перехода выдаёт окно менеджера профилей

Это значит что профиль, на который производится переход, ещё не был создан.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№87710-07-2009 19:12:02

Najlus
Рррррррррррь!
 
Группа: Extensions
Откуда: Город N
Зарегистрирован: 11-01-2009
Сообщений: 1988
UA: Firefox 3.5

Re: Custom Buttons

Профили существуют =(


Вы ленивы, следовательно вы изобретательны (Граф Де Гиш)
Список настроек About:config на русском языке с пояснениями и рекомендациями

Отсутствует

 

№87810-07-2009 19:15:40

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.5
Веб-сайт

Re: Custom Buttons

Najlus пишет

Профили существуют =(

Проверь внимательно. Вот в этой строке:

Выделить код

Код:

var _args = [["-no-remote", "-p", "Default"], ["-no-remote", "-p", "experementals"]];

вместо "Default" и "experementals" должны быть названия нужных профилей.
Отсутствие профиля - единственная причина появления менеджера профилей.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№87910-07-2009 19:25:00

Najlus
Рррррррррррь!
 
Группа: Extensions
Откуда: Город N
Зарегистрирован: 11-01-2009
Сообщений: 1988
UA: Firefox 3.5

Re: Custom Buttons

Но у меня эти 2 профиля и стоят =(


Вы ленивы, следовательно вы изобретательны (Граф Де Гиш)
Список настроек About:config на русском языке с пояснениями и рекомендациями

Отсутствует

 

№88010-07-2009 19:36:26

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.5
Веб-сайт

Re: Custom Buttons

Najlus пишет

Но у меня эти 2 профиля и стоят =(

Но отсутствие требуемого профиля или (что то же самое) несовпадение имени необходимого профиля с указанным в строке "var _args = ..." - это единственная причина, по которой появляется окно менеджера профилей.
Проверь внимательно. Регистр символов в названии профиля имеет значение. Может, не Default, а default или не experementals, а experimentals ?

Отредактировано Anton (10-07-2009 19:36:54)


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№88112-07-2009 17:32:16

vurdalak
Участник
 
Группа: Members
Зарегистрирован: 03-06-2005
Сообщений: 174
UA: Firefox 3.5

Re: Custom Buttons

Помогите написать скрипт Custom Button, где бы при нажатии кнопки:
1. Закрывалась текущая вкладка;
2. Курсор располагался бы в фокусе контента (типа content.focus()) той вкладки, которая отображается после закрытия бывшей текущей. В смысле клавиши вверх, вниз бы смогли двигать страницу сразу же. При обычном CTRL-F4 работает не всегда.
3. Если осталась только одна вкладка, то нажатие кнопки предотвращало ее закрывание и
4. (это  наверное неосуществимо да и не так обязательно) выводилось бы всплывающее сообщение на другой (secondary) монитор, где и расположен Firefox ("осталась одна вкладка и т.д.") при двухмониторной конфигурации.

Отредактировано vurdalak (12-07-2009 17:38:54)

Отсутствует

 

№88212-07-2009 18:21:20

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.5
Веб-сайт

Re: Custom Buttons

vurdalak

1. Закрывалась текущая вкладка;
2. Курсор располагался бы в фокусе контента (типа content.focus()) той вкладки, которая отображается после закрытия бывшей текущей. В смысле клавиши вверх, вниз бы смогли двигать страницу сразу же. При обычном CTRL-F4 работает не всегда.
3. Если осталась только одна вкладка, то нажатие кнопки предотвращало ее закрывание

Если я всё правильно понял, то вот:

Выделить код

Код:

var br = getBrowser ();
if (br. tabContainer. childNodes. length > 1)
{
	br. removeCurrentTab ();
	var fe = br. mCurrentBrowser. focusedElement;
	fe && fe. blur ();
	br. contentDocument. documentElement. focus ();
}

выводилось бы всплывающее сообщение на другой (secondary) монитор, где и расположен Firefox ("осталась одна вкладка и т.д.") при двухмониторной конфигурации.

Могу только предложить (последней или предпоследней строкой)

Выделить код

Код:

custombuttons. alertSlide ("Осталось вкладок: ", br. tabContainer. childNodes. length);

Монитор у меня один, проверить и попробовать ничего не могу.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№88312-07-2009 21:08:19

vurdalak
Участник
 
Группа: Members
Зарегистрирован: 03-06-2005
Сообщений: 174
UA: Firefox 3.5

Re: Custom Buttons

Все вроде нормально, спасибо
Но custombuttons. alertSlide вызывает сообщение к сожалению на 1-м мониторе.  И если есть возможность хотелось бы большими буквами и по центру экрана ...

Отсутствует

 

№88412-07-2009 21:16:25

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.5
Веб-сайт

Re: Custom Buttons

vurdalak пишет

Но custombuttons. alertSlide вызывает сообщение к сожалению на 1-м мониторе.  И если есть возможность хотелось бы большими буквами и по центру экрана ...

И рад бы помочь, но моделировать нечем - один монитор у меня.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№88512-07-2009 22:41:31

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.5
Веб-сайт

Re: Custom Buttons

хотя
может быть, так:

Выделить код

Код:

var br = getBrowser ();
if (br. tabContainer. childNodes. length > 1)
{
	br. removeCurrentTab ();
	var fe = br. mCurrentBrowser. focusedElement;
	fe && fe. blur ();
	br. contentDocument. documentElement. focus ();
}
f (this. id);
function f (bid)
{
	var id = "cbpopup" + bid;
	var p = document. getElementById (id);
	if (!p)
	{
		p =	<tooltip xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
				 id={id}
				 onpopupshown="setTimeout((function (arg) { return function () {arg. hidePopup ();}})(this), 2000);"/>
		p = new DOMParser (). parseFromString (p. toXMLString (), "application/xml"). documentElement;
		var ps = document. getElementById ("mainPopupSet");
		ps. appendChild (p);
		p. style. fontSize = "x-large";
		p. onpopupshown = "{let THIS = this; setTimeout (function () { THIS. hidePopup (); }, 2);}";
	}
	p. label = "Осталось вкладок: " + br. tabContainer. childNodes. length;
	var pw = p. boxObject. width;
	var ph = p. boxObject. height;
	var x = (window. screen. width - pw) / 2;
	var y = (window. screen. height - ph) / 2;
	p. openPopupAtScreen (x, y, false);
}

?


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№88613-07-2009 01:11:45

vurdalak
Участник
 
Группа: Members
Зарегистрирован: 03-06-2005
Сообщений: 174
UA: Firefox 3.5

Re: Custom Buttons

Теперь работает по центру экрана на другом мониторе :cool:

Сначала надпись была в центре по игреку, но в левом углу по иксу (это касается второго монитора), так как window. screen. width равняется 1280, такое разрешение у 1-го монитора. Если вкупе сложить 2 монитора по иксу то будет 1280+1920=3200
Тоесть 1280 - это начальная точка а дальше уже по формуле (1920 - pw) / 2.

Следовательно я поменял
var x = (window. screen. width - pw) / 2; на
var x = (1920 - pw) / 2 + window. screen. width;

Для полноты кода, надо было бы еще, чтобы  скрипт "знал" window. screen. width второго монитора (которое у меня 1920), да в принципе ладно и так сойдет

Спасибо

Отсутствует

 

№88714-07-2009 08:44:24

Sloopka
Участник
 
Группа: Members
Зарегистрирован: 17-04-2009
Сообщений: 3
UA: Firefox 3.5

Re: Custom Buttons

Здравствуйте, у меня такой вопрос, а есть ли возможность сделать кнопку, которая будет брать текущий URL и favicon и создавать новую кнопку допустим с названием из <title>? И каким образом можно задать размер иконки?

Отредактировано Sloopka (14-07-2009 08:53:12)

Отсутствует

 

№88814-07-2009 12:41:31

3Jlou
Участник
 
Группа: Members
Зарегистрирован: 14-08-2008
Сообщений: 211
UA: Firefox 3.0

Re: Custom Buttons

Господа, что то у меня перестала работать кнопка Backup Custom Buttons. FF 3.0.10, Custom Buttons 0.0.4.3.

Выделить код

Код:

custombutton://%u0414%u043E%u0431%u0430%u0432%u0438%u0442%u044C%20%u0437%u0430%u043A%u043B%u0430%u0434%u043A%u0443%5D%5B%5D%5Bvar%20docshell%20%3D%20getBrowser%20%28%29.%20webNavigation%3B%0Avar%20doc%20%3D%20docshell.%20document%3B%0Avar%20url%20%3D%20getBrowser%20%28%29.%20currentURI.%20spec%3B%0Avar%20title%2C%20charset%20%3D%20null%3B%0Avar%20description%3B%0Atry%0A%7B%0A%09title%20%3D%20doc.%20title%20%7C%7C%20url%3B%0A%09charset%20%3D%20doc.%20characterSet%3B%0A%09description%20%3D%20BookmarksUtils.%20getDescriptionFromDocument%20%28doc%29%3B%0A%7D%0Acatch%20%28e%29%0A%7B%0A%20%20%20%20title%20%3D%20url%3B%0A%7D%0Avar%20bmroot%20%3D%20RDF.%20GetResource%20%28%22NC%3ABookmarksRoot%22%29%3B%0Avar%20res%20%3D%20BMDS.%20createBookmark%20%28title%2C%20url%2C%20%22%22%2C%20description%2C%20charset%2C%20null%29%3B%0Avar%20sel%20%3D%20BookmarksUtils.%20getSelectionFromResource%20%28res%29%3B%0Avar%20target%20%3D%20BookmarksUtils.%20getTargetFromFolder%20%28bmroot%29%3B%0ABookmarksUtils.%20insertAndCheckSelection%20%28%22newbookmark%22%2C%20sel%2C%20target%29%3B%0Avar%20rds%20%3D%20BMDS.%20QueryInterface%20%28Components.%20interfaces.%20nsIRDFRemoteDataSource%29%3B%0Ards.%20Flush%20%28%29%3B%5D%5Bthis.%20mouseover%20%3D%20function%20%28event%29%0A%7B%0A%09this.%20oldimage%20%3D%20this.%20image%3B%0A%09this.%20image%20%3D%20%22file%3A///H%3A/redicon.png%22%3B%0A%7D%0Athis.%20mouseout%20%3D%20function%20%28event%29%0A%7B%0A%09this.%20image%20%3D%20this.%20oldimage%3B%0A%7D%0Athis.%20setAttribute%20%28%22onmouseover%22%2C%20%22this.%20mouseover%28%29%22%29%3B%0Athis.%20setAttribute%20%28%22onmouseout%22%2C%20%22this.%20mouseout%28%29%22%29%3B

Проверьте плиз

Отсутствует

 

№88914-07-2009 19:01:19

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.5
Веб-сайт

Re: Custom Buttons

Sloopka

есть ли возможность сделать кнопку, которая будет брать текущий URL и favicon и создавать новую кнопку допустим с названием из <title>?

Так пойдёт:

Выделить код

Код:

var doc = getBrowser (). contentDocument;
var title = doc. title;
var pageURI = makeURI (doc. location. href, null, null);
var iconData = getFaviconData (pageURI);
custombuttons. cloneButton (this);
var newButtonLink = custombuttons. makeButtonLink ("update", this. nextSibling. id);
var params = custombuttons. cbService. getButtonParameters (newButtonLink). wrappedJSObject;
params. image = iconData;
params. name = title;
params. code = "loadURI (\"" + doc. location. href + "\");";
params. wrappedJSObject = params;
custombuttons. cbService. installButton (params);
function makeURI (aURL, aOriginCharset, aBaseURI)
{
	var ioService = Components. classes["@mozilla.org/network/io-service;1"].
			getService (Components. interfaces. nsIIOService);
	return ioService. newURI (aURL, aOriginCharset, aBaseURI);
}
function getFaviconData (pageURI)
{
	var fis = Components. classes ["@mozilla.org/browser/favicon-service;1"].
		  getService(Components.interfaces.nsIFaviconService);
	var iconURL = fis. getFaviconForPage (pageURI);
	return fis. getFaviconDataAsDataURL (iconURL);
}

?

И каким образом можно задать размер иконки?

Можно так:

Выделить код

Код:

var elt = document. getAnonymousElementByAttribute (this, "class", "toolbarbutton-icon");
elt. style. height = "100px";
elt. style. width = "100px";

3Jlou

...перестала работать кнопка Backup Custom Buttons

Выделить код

Код:

custombutton://...

...

Это не кнопка "Backup Custom Buttons". Это кнопка "Добавить закладку". Что именно не работает ?

Нашёл у себя какую-то из Backup кнопок, действительно не работает - в 0.0.4.3 отсутствует функция custombuttons. getButtonById.
Пока не выйдет новая версия можно добавить в код кнопки

Выделить код

Код:

custombuttons. getButtonById = function (num)
{
	return document. getElementById ("custombuttons-button" + num);
}

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

Отредактировано Anton (14-07-2009 20:15:58)


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№89014-07-2009 21:01:56

Sloopka
Участник
 
Группа: Members
Зарегистрирован: 17-04-2009
Сообщений: 3
UA: Firefox 3.5

Re: Custom Buttons

Anton

Спасибо огромнейшее=))

Отсутствует

 

№89114-07-2009 21:06:13

Najlus
Рррррррррррь!
 
Группа: Extensions
Откуда: Город N
Зарегистрирован: 11-01-2009
Сообщений: 1988
UA: Firefox 3.5

Re: Custom Buttons

А как сделать кнопки перехода вперёд\назад (только без этой ненужной стрелочки сбоку). А то дефлорные в стиль както не вписываются =)


Вы ленивы, следовательно вы изобретательны (Граф Де Гиш)
Список настроек About:config на русском языке с пояснениями и рекомендациями

Отсутствует

 

№89214-07-2009 21:31:04

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.5
Веб-сайт

Re: Custom Buttons

Najlus пишет

как сделать кнопки перехода вперёд\назад

http://custombuttons.mozdev.org/drupal/ … n-buttons/


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№89314-07-2009 22:09:17

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 3.5

Re: Custom Buttons

При установке в
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.1pre) Gecko/20090714 Shiretoko/3.5.1pre
вместо «Button Help» получается XML-мусор.


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№89414-07-2009 23:08:33

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 3.5

Re: Custom Buttons

Сделал новый профиль. Не воспроизводится. Странно. *ковыряет расширения*


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№89514-07-2009 23:08:33

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.5
Веб-сайт

Re: Custom Buttons

Infocatcher пишет

При установке в
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.1pre) Gecko/20090714 Shiretoko/3.5.1pre
вместо «Button Help» получается XML-мусор.

bug #351043, в 3.6 уже поправили : )

Кстати, это не мусор был - разэскейпленная custombutton:// кнопки 'open google page'. Наверное, тестировал help, забыл и размножил.

Спасибо.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№89614-07-2009 23:12:51

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 3.5

Re: Custom Buttons

Т.е. страничка уже изменилась? (О вреде безлимитных интернетов, ага.)

Добавлено 14-07-2009 23:13:39
Таки информация о странице кажет, что изменилась как раз в районе создания нового профиля.

Добавлено 14-07-2009 23:20:40
Странно.
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11
Код:

Выделить код

Код:

var pId = "browser.tabs.warnOnClose";
var woc = navigator.preference(pId);
navigator.preference(pId, false);
var appStartup = Components.interfaces.nsIAppStartup;
if(canQuitApplication())
	Components.classes["@mozilla.org/toolkit/app-startup;1"]
		.getService(appStartup)
		.quit(appStartup.eForceQuit | appStartup.eRestart);
navigator.preference(pId, woc);

(Это были пляски с бубном в районе Session Manager'а. Оно, вроде, работает, и я не трогаю. =))

Делаем кнопку, копируем ее код в буфер. Открываем полученное из адресной строки (кликаем средней кнопкой мыши по фавиконке). И видим:

Кнопка не может быть создана, потому что содержит ошибки!

Добавлено 14-07-2009 23:22:26
Ага, и
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.1pre) Gecko/20090714 Shiretoko/3.5.1pre
о том же вещает (ну, только на буржуйском).

Добавлено 14-07-2009 23:28:42
Хммм, кажись, не в коде кнопки дело, а в некорректном копировании.

Добавлено 14-07-2009 23:38:27
Почему-то на некоторых профилях (на новом всё Ok) у меня копируется вот в таком виде:

Выделить код

Код:

custombutton://&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;custombutton xmlns:cb=&quot;http://xsms.nm.ru/custombuttons/&quot;&gt;
  &lt;name&gt;alert&lt;/name&gt;
  &lt;image&gt;&lt;![CDATA[custombuttons-stdicon-1]]&gt;&lt;/image&gt;
  &lt;mode&gt;0&lt;/mode&gt;
  &lt;initcode&gt;&lt;![CDATA[/*Initialization Code*/]]&gt;&lt;/initcode&gt;
  &lt;code&gt;&lt;![CDATA[alert(0);]]&gt;&lt;/code&gt;
  &lt;accelkey&gt;&lt;![CDATA[]]&gt;&lt;/accelkey&gt;
  &lt;help&gt;&lt;![CDATA[]]&gt;&lt;/help&gt;
  &lt;attributes/&gt;
&lt;/custombutton&gt;

Отредактировано Infocatcher (14-07-2009 23:42:49)


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№89714-07-2009 23:52:20

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.5
Веб-сайт

Re: Custom Buttons

Infocatcher пишет

на некоторых профилях (на новом всё Ok) у меня копируется вот в таком виде:

Так поделись конфигами.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№89815-07-2009 00:01:10

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 3.5

Re: Custom Buttons

Конфликт с расширением Firediff.

Добавлено 15-07-2009 00:02:27

Anton пишет

Так поделись конфигами.

Пухлые конфиги были. Что для 3.0, что для 3.5.1pre.

Добавлено 15-07-2009 00:07:50
Йомайо...

Выделить код

Код:

function escape(s) {
    var n = s;
    n = n.replace(/&/g, "&amp;");
    n = n.replace(/</g, "&lt;");
    n = n.replace(/>/g, "&gt;");
    n = n.replace(/"/g, "&quot;");

    return n;
}

overlay chrome://firebug/content/firebugOverlay.xul         chrome://firediff/content/firediff.xul
=> firediff@johnjbarton.com\content\firediff\firediff.xul
=> firediff@johnjbarton.com\content\firediff\jsdiff.js

Добавлено 15-07-2009 00:10:06
И

Выделить код

Код:

top.opener.escape

из консоли ошибок это подтверждает.


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№89915-07-2009 00:22:56

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.5
Веб-сайт

Re: Custom Buttons

Ок, завтра буду смотреть. Видимо, придётся escape-ить в сервисе.

Отредактировано Anton (15-07-2009 00:30:44)


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№90015-07-2009 00:35:23

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 3.5

Re: Custom Buttons

Anton пишет

Ок, завтра буду смотреть. Видимо, придётся escape-ить в сервисе.

Нужно стучать по голове автору за кривую подмену стандартной глобальной функции. =/
Потому как js позволяет много чего переназначить.


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]