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

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

№1087626-10-2016 19:39:13

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4780
UA: Firefox 24.0

Re: Custom Buttons

mssign пишет:

Select Search Engine кнопка не работает.. Firefox 49.02. Искал что то подобное, не нашел.

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3E%u041F%u0435%u0440%u0435%u043A%u043B%u044E%u0447%u0438%u0442%u044C%20%u0442%u0435%u043A%u0443%u0449%u0438%u0439%20%u043F%u043E%u0438%u0441%u043A%u043E%u0432%u0438%u043A%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bhttps%3A//www.google.lv/images/branding/product/ico/googleg_lodp.ico%23-moz-resolution%3D20%2C20%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5B//%20%u041E%u0442%u043A%u0440%u044B%u0442%u044C%20%u043C%u0435%u043D%u044E%20%u043A%u043D%u043E%u043F%u043A%u0438%20%u043F%u043E%20%u043B%u0435%u0432%u043E%u043C%u0443%20%u043A%u043B%u0438%u043A%u0443%20.............%0Athis._handleClick%20%3D%28%29%3D%3E%20menuPopup.showPopup%28this%2C%20-1%2C%20-1%2C%20%22popup%22%2C%20%22bottomleft%22%2C%20%22topleft%22%29%3B%0A%0A%0A//%20%u0421%u043E%u0437%u0434%u0430%u0442%u044C%20%u043F%u043E%u0434%u043C%u0435%u043D%u044E%20%u0441%20%u043F%u043E%u0438%u0441%u043A%u043E%u0432%u0438%u043A%u0430%u043C%u0438%20%u0443%20%u043A%u043D%u043E%u043F%u043A%u0438%20.............%20%0Avar%20menuPopup%20%3D%20self.appendChild%28document.createElement%28%22menupopup%22%29%29%3B%0AmenuPopup.setAttribute%28%27style%27%2C%20%27overflow%3A%20scroll%27%29%3B%20%0A%0Afunction%20setItemsToMenuPopup%28%29%20%7B%0A%20%20%20menuPopup.textContent%20%3D%20%22%22%3B%20%20%20%20%20%20%0A%0A%20%20%20var%20engines%20%3D%20Services.search.getVisibleEngines%28%7B%7D%29%3B%0A%20%20%20engines.forEach%28engine%3D%3E%20%7B%20%0A%20%20%20%20%20%20var%20mItem%20%3D%20document.createElement%28%22menuitem%22%29%3B%0A%20%20%20%20%20%20mItem.setAttribute%28%22label%22%2C%20engine.name%29%3B%0A%20%20%20%20%20%20mItem.setAttribute%28%22class%22%2C%20%22menuitem-iconic%22%29%3B%0A%20%20%20%20%20%20mItem.setAttribute%28%22src%22%2C%20engine.iconURI.spec%29%3B%0A%20%20%20%20%20%20mItem.onmousedown%20%3D%28%29%3D%3E%20Services.search.currentEngine%20%3D%20engine%3B%0A%20%20%20%20%20%20menuPopup.appendChild%28mItem%29%3B%0A%20%20%20%7D%29%0A%7D%3B%20%20%0AsetItemsToMenuPopup%28%29%3B%0A%0A%0A//%20%u0423%u0441%u0442%u0430%u043D%u043E%u0432%u0438%u0442%u044C%20%u043D%u0443%u0436%u043D%u0443%u044E%20%u0438%u043A%u043E%u043D%u043A%u0443%20%u043A%u043D%u043E%u043F%u043A%u0438%20%u043F%u0440%u0438%20%u0441%u0442%u0430%u0440%u0442%u0435%20%u0438%u043B%u0438%20%u043F%u0440%u0438%20%u0438%u0437%u043C%u0435%u043D%u0435%u043D%u0438%u044F%u0445%20%u043F%u043E%u0438%u0441%u043A%u043E%u0432%u0438%u043A%u0430%u0445%20.............%0Afunction%20toggleImage%28%29%20%7B%0A%20%20%20self.ownerDocument.getAnonymousElementByAttribute%28self%2C%20%22class%22%2C%20%22toolbarbutton-icon%22%29.%0A%20%20%20src%20%3D%20Services.search.currentEngine.iconURI.spec%3B%0A%7D%3B%0AtoggleImage%28%29%3B%0A%20%20%20%0A%20%20%20%0A//%20%u041D%u0430%u0431%u043B%u044E%u0434%u0430%u0442%u0435%u043B%u044C%20%u0437%u0430%20%u0438%u0437%u043C%u0435%u043D%u0435%u043D%u0438%u044F%u043C%u0438%20%u0432%20%u043F%u043E%u0438%u0441%u043A%u043E%u0432%u0438%u043A%u0430%u0445%20%u043F%u043E%u0434%u043C%u0435%u043D%u044E%20.............%20%0Avar%20getEngineModified%20%3D%20%7B%0A%20%20%20observe%3A%28subject%2C%20topic%2C%20data%29%3D%3E%20%7B%0A%20%20%20%20%20%20if%20%28%20/changed%7Cremoved%7Ccurrent/.test%28data%29%20%29%20%7B%20toggleImage%28%29%3B%20setItemsToMenuPopup%28%29%3B%20%7D%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%7D%0A%7D%3B%0AServices.obs.addObserver%28getEngineModified%2C%20%22browser-search-engine-modified%22%2C%20false%29%3B%20%20%20%0AaddDestructor%28%28%29%3D%3E%20Services.obs.removeObserver%28getEngineModified%2C%20%22browser-search-engine-modified%22%29%29%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

Отсутствует

 

№1087726-10-2016 21:01:38

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4780
UA: Firefox 24.0

Re: Custom Buttons

_zt пишет:

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

Выделить код

Код:

// Открыть страницу в другой программе из контекстного меню, от 26.10.2016. .............
(()=> {
   var array = [
      ["Internet explorer", "C:\\Program Files\\Internet Explorer\\iexplore.exe", ""],
      ["Opera", "C:\\Program Files\\Opera\\Opera.exe", ""],
      ["PotPlayer", "C:\\Program Files\\DAUM\\PotPlayer\\PotPlayerMini.exe", ""],
      ["PotPlayer Add", "C:\\Program Files\\DAUM\\PotPlayer\\PotPlayerMini.exe", "/add"],
      ["Win player", "C:\\Program Files\\Windows Media Player\\wmplayer.exe", ""],
      ["Maxthon", "C:\\Program Files\\Maxthon\\Bin\\Maxthon.exe", ""]
   ]
  
   var tabContextMenu = document.getElementById("tabContextMenu");
   var menu1 = tabContextMenu.appendChild(document.createElement("menu"));
   menu1.setAttribute("label", "Открыть страницу в другой программе: ");
   menu1.setAttribute("class", "menu-iconic");
   menu1.setAttribute("image", "https://forum.mozilla-russia.org/favicon.ico#-moz-resolution=20,20");
   addEventListener("popupshowing", e=> {  
      menu1.hidden = !e.target.triggerNode.linkedBrowser.currentURI.scheme.startsWith("http");             
   }, false, tabContextMenu);
   addDestructor(()=> menu1.remove());
   setMenupopup(menu1);
   
   var contextMenu = document.getElementById("contentAreaContextMenu");
   var menu2 = contextMenu.appendChild(document.createElement("menu"));
   menu2.setAttribute("label", "Открыть ссылку в другой программе: ");
   menu2.setAttribute("class", "menu-iconic");
   menu2.setAttribute("image", "https://s.ytimg.com/yts/img/favicon_144-vflWmzoXw.png#-moz-resolution=20,20");
   addEventListener("popupshowing", ()=> menu2.hidden = !gContextMenu.onLink, false, contextMenu); 
   addDestructor(()=> menu2.remove());
   setMenupopup(menu2);
   
   function setMenupopup(menu) {
      var menuPopup = menu.appendChild(document.createElement("menupopup"));              
      array.forEach(m=> {
         var mItem = document.createElement("menuitem");
         mItem.setAttribute("label", m[0]);
         mItem.setAttribute("class", "menuitem-iconic");
         mItem.setAttribute("image", "moz-icon://file://" + m[1]); 
         mItem.onclick =()=> openWith(m[1], m[2]);
         menuPopup.appendChild(mItem);
      })
   };

   function openWith(path, arg) { 
      try { var url = gContextMenu.getLinkURL() } 
      catch(e) {  
         var loc = content.document.location;
         var url = (loc.host.slice(-3) == '.рф') ? Services.io.newURI(loc.href, null, null).asciiSpec : loc; 
      };
     
      var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);    
      file.initWithPath(path);
      var process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
      process.init(file);
      process.run(false, [url, arg], 2);
   };

})();

Отсутствует

 

№1087826-10-2016 21:06:36

LittleMontana
Участник
 
Группа: Members
Зарегистрирован: 16-11-2013
Сообщений: 195
UA: Firefox 49.0

Re: Custom Buttons

подскажите кнопку, которая делает все вкладки якобы активными (фейково). То есть открыто 10 вкладок, и якобы фокус на всех. И если можно для каждого окна мозиллы, спасибо!

Отредактировано LittleMontana (26-10-2016 21:08:07)

Отсутствует

 

№1087926-10-2016 21:14:03

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4780
UA: Firefox 24.0

Re: Custom Buttons

LittleMontana пишет:

То есть открыто 10 вкладок, и якобы фокус на всех.

:/ это как понять?

Отсутствует

 

№1088026-10-2016 21:17:07

LittleMontana
Участник
 
Группа: Members
Зарегистрирован: 16-11-2013
Сообщений: 195
UA: Firefox 49.0

Re: Custom Buttons

ну как то же браузер определяет для себя на какой странице фокус? можно ли так сделать сразу для нескольких вкладок, либо окон фаерфокса?)

Отсутствует

 

№1088126-10-2016 22:19:50

villa7
Участник
 
Группа: Members
Зарегистрирован: 21-07-2012
Сообщений: 2235
UA: Firefox 42.0

Re: Custom Buttons

bunda1
Блин, пришлось обновить кнопку, старая перестала сохранять некоторые страницы. Хочется как на старой было у меня, привык, ЛКМ и СКМ -сохранить без запроса, а длинным кликом с выбором папки, то есть наоборот сделать. Сам попытался, никак.
http://forum.mozilla-russia.org/viewtop … 91#p588991

Отредактировано villa7 (26-10-2016 22:20:30)


Лучше спросить у знающих - чем лезть не зная.

Отсутствует

 

№1088226-10-2016 23:35:21

fokanik
Участник
 
Группа: Members
Зарегистрирован: 05-02-2014
Сообщений: 267
UA: unknown 0.0

Re: Custom Buttons

bunda1, а как в тексте начало срезать?
Получить из xxxxxxxxx+www.youtube.com/watch?v=+xxxxxxxxxxx
---> ссылку вида www.youtube.com/watch?v=+xxxxxxxxxxx

О, получилось вроде:

Выделить код

Код:

   if(!/www.youtube.com\/watch[?]v=/.test(url)) return;
   url = "www.youtube.com"+url.split("www.youtube.com")[1];
   url = "https://"+url.split("&")[0];

Отредактировано fokanik (26-10-2016 23:50:31)

Отсутствует

 

№1088326-10-2016 23:54:55

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4780
UA: Firefox 24.0

Re: Custom Buttons

fokanik пишет:

bunda1, а как в тексте начало срезать?
Получить из xxxxxxxxx+www.youtube.com/watch?v=+xxxxxxxxxxx
---> ссылку вида www.youtube.com/watch?v=+xxxxxxxxxxx

текст.replace("xxxxxxxxx+", "");

Отсутствует

 

№1088427-10-2016 04:47:05

yup
Участник
 
Группа: Members
Зарегистрирован: 15-04-2016
Сообщений: 1086
UA: Seamonkey 2.40

Re: Custom Buttons

fokanik пишет:

О, получилось вроде:

Выделить код

Код:

if(!/www.youtube.com\/watch[?]v=/.test(url)) return;
url = "www.youtube.com"+url.split("www.youtube.com")[1];
url = "https://"+url.split("&")[0];

Если это пишется не для конкретного сайта, на котором адреса выглядят именно так, то надёжнее использовать вариант:

Выделить код

Код:

if(!/youtube.com\/watch[?]v=/.test(url)) return;
url = "www.youtube.com"+url.split("youtube.com")[1];
url = "https://"+url.split("&")[0];

Отсутствует

 

№1088527-10-2016 08:17:01

_zt
Участник
 
Группа: Members
Зарегистрирован: 10-11-2014
Сообщений: 172
UA: Chrome 50.0

Re: Custom Buttons

bunda1
Спасибо. http://www.kolobok.us/smiles/icq/yahoo.gif То что нужно. Получившаяся кнопка полноценно заменяет некоторые расширения, так что не лишним будет ее добавить в топик готовых.

Отсутствует

 

№1088627-10-2016 13:51:11

intersk
Участник
 
Группа: Members
Зарегистрирован: 20-06-2013
Сообщений: 90
UA: Firefox 49.0

Re: Custom Buttons

_zt пишет:

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

выложите полностью рабочий код

Отсутствует

 

№1088727-10-2016 13:55:38

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4780
UA: Firefox 24.0

Re: Custom Buttons

intersk пишет:

выложите полностью рабочий код

Ну вот же: Вчера 21:01:38

Отсутствует

 

№1088827-10-2016 20:07:11

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4780
UA: Firefox 24.0

Re: Custom Buttons

villa7 пишет:

bunda1
Блин, пришлось обновить кнопку, старая перестала сохранять некоторые страницы. Хочется как на старой было у меня, привык, ЛКМ и СКМ -сохранить без запроса, а длинным кликом с выбором папки, то есть наоборот сделать. Сам попытался, никак.
http://forum.mozilla-russia.org/viewtop … 91#p588991

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3E%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u043D%u0430%20...%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEhIAAAEAIACABQAAFgAAACgAAAASAAAAJAAAAAEAIAAAAAAAWAUAAAAAAAAAAAAAAAAAAAAAAAD+/vL/5vP//9v2///p+Pb/+PTv//nx+P/19PX/+Pbv//z08f/4+O7/+fb0//v29f/1+O7/5Pr0/976///i7///9/b/////8//i7Ov/h5zF/2GEs/+LpLH/0dHW/9fO3v/O0dj/1NTQ/9zR0v/O1Mz/0tHS/9TO1P/N1tb/nrzE/22PtP9xiL7/s7nX//n59P/T5vb/V3i+/zNhrv9tkbb/4en9/+rn///j6/X/5+3t/+7r7//i7+j/5unv/+ji8//i7P7/mbvc/z9rsP8+YrP/jaLO//L8///K4v3/UnrU/zFqyv9kkMT/3er+/+vn///m7PP/5u7r/+rq7f/h8OX/6Ors/+rg9P/f5f//lLbn/zpsyP88ac3/iKXa/+z+///N4///Unvb/yxo0v9hkcz/4Oz///Ps/P/w8O3/7fLn//Dv7//r9+f/8Ozo//Xk8f/o6f//l7fr/zZr0v86adb/iKXc/+/+/v/R4/7/VHvb/ytq1f9hks7/4er///zu9//++uz/+Pno//Lv7v/t9eT/+vHo///r7v/x7Pz/mbrr/zZu1P82Z9X/jKXb//f++//W5v3/VX/a/yls2f9dk9D/4ez////z9v/69eb/9Pfo/+/x9f/r9O3//fLs///o5v/18fn/msDq/zJx1f81a9n/jqbd//z++v/U6P3/UoPc/yRw3/9Vldb/2uv////0/P/69+v/8vry/+Pt/f/g7/f/+vL1///w7f/2+vz/kMDp/yx11/8wbuD/jKbk//z6/f/T6/z/UYXc/yNx4v9Wldj/2+7///Xy+//X3+D/1ufu/+Tz///g9P//29vs/+re4f/y/P3/jsPq/yl32/8wcOP/jabl//n5///S6Pf/V4rZ/zFz3/91mtn/6fD6/+v7//+RvN//bpLH/9Pg/v/F3Pj/c4e2/8PF3f/1/P//lsPq/zV64P9Ec9r/marZ//H8///L5vz/Tork/yhy7f9smeP/4fD8/+H7//+Bue//N2/D/2eO3f9Zi9f/Pmi1/7fF7f/y/f//kMLw/yt58P88c+j/kKvh/+X8///O5/z/To3o/yF29f9imuv/3e/9/+X4//+Lv/P/LXPY/ylx4v8ict//M23N/7fI8v/2/v//kcTy/yd89/81dfP/ja3p/+f8///h6vf/YpTd/zF97P9rnub/6vP6//v9+f+jxOv/M3nb/xt19f8YePP/NXPV/8HK6f////f/pcro/zaB7v9Be+3/nbLg//j++v/n6vb/cJjW/z6D4f91peX/7PP5////+v+zx+f/PH/e/xZ5/f8Wevn/NnfY/8bO6f///+//sM3j/0OG6P9NgOj/orPb//r98//S4Pr/bZnf/0SM5f9qpOf/2O3///r///+txu//PIPm/xZ+//8Yffz/NXvm/7fL8/////z/q9Ht/0OJ7v9QhvH/mLLl/+T4/v/E3P//apjg/0yO3P9tquf/zfD//+T1//+ow/T/Robh/yuI+v8yiPL/OX3j/6bH9v/r////oM7x/0iK6v9Thej/krHm/9P4///U4///kqzZ/3qhxf+Qttf/1e39/+jw/f/AyOv/e5vQ/2WY1f9smMv/aZLU/7bN9f/x/v3/tNPm/3Kc2/+Emtz/s8De/+D9///z8f//6ev3/+Xu7v/g7O3/7fH5//Lr9v/x6fL/5ebx/9zr9f/i6uz/2OP3/+Tp+f/08+n/5/Ls/9jm/P/r5vz/9u/0//f/+f8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5B//%20%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u043D%u0430%2C%20%u043E%u0442%2013.09.2016.%0A%0A//%20%u041D%u0430%u0441%u0442%u0440%u043E%u0439%u043A%u0430%20%u0444%u0443%u043D%u043A%u0446%u0438%u0439%20%u043A%u043B%u0438%u043A%u043E%u0432%20%u0438%20%u0434%u043B%u0438%u043D%u043D%u044B%u0445%20%u043A%u043B%u0438%u043A%u043E%u0432%20%u043C%u044B%u0448%u0438%20%u0434%u043B%u044F%20%u043A%u043D%u043E%u043F%u043A%u0438%20..............%0Athis.onmousedown%20%3De%3D%3E%20%7B%0A%20%20%20%20if%20%28%20e.button%20%3D%3D%202%20%29%20return%3B%20//%20%u0441%u0442%u043E%u043F%20%u0435%u0441%u043B%u0438%20%u041F%u041A%u041C%0A%0A%20%20%20%20self.onclick%20%3De%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20self.onclick%20%3D%20%22%22%2C%20clearTimeout%28self.timer%29%3B%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20e.button%20%3D%3D%200%20%3F%20saveShortcuts%28false%29%20%3A%20saveShortcuts%28false%2C%20getSelect%28%29%29%3B%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%7D%3B%0A%20%20%20%20%20%0A%20%20%20%20self.timer%20%3D%20setTimeout%28%28%29%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20self.onclick%20%3D%20%22%22%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20e.button%20%3D%3D%200%20%3F%20saveShortcuts%28true%29%20%3A%20saveShortcuts%28true%2C%20getSelect%28%29%29%3B%0A%20%20%20%20%7D%2C%20500%20%29%3B%0A%7D%3B%0A%0A%0A//%20%u041E%u0431%u044A%u044F%u0432%u043B%u044F%u0435%u043C%20%u043D%u0430%u0441%u0442%u0440%u043E%u0439%u043A%u0438%20%u0438%20%u043F%u0435%u0440%u0435%u043C%u0435%u043D%u043D%u044B%u0435%20%u0434%u043B%u044F%20%u044D%u0442%u043E%u0439%20%u0432%u043A%u043B%u0430%u0434%u043A%u0438%20.............%0Avar%20disk%20%3D%20%27C%27%3B%20//%20%u0434%u0438%u0441%u043A%20%u0434%u043B%u044F%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%20%u0438%u043A%u043E%u043D%u043E%u043A%20%u0434%u043B%u044F%20%u044F%u0440%u043B%u044B%u043A%u043E%u0432%20%u0438%20%u044F%u0440%u043B%u044B%u043A%u043E%u0432%20%u0441%u0430%u0439%u0442%u043E%u0432%0Avar%20pref%20%3D%20%22CB.Shortcuts.pathToSaveShortcuts%22%3B%0Avar%20alertsService%20%3D%20Cc%5B%22@mozilla.org/alerts-service%3B1%22%5D.getService%28Ci.nsIAlertsService%29%3B%0A%0A%0A//%20%u041F%u043E%u0434%u0441%u043A%u0430%u0437%u043A%u0430%20%u043A%u043D%u043E%u043F%u043A%u0438%20..............%0Athis.onmouseover%20%3D%28%29%3D%3E%20%7B%20%0A%20%20%20var%20folder%20%3D%20gPrefService.getComplexValue%28pref%2C%20Ci.nsISupportsString%29.data%3B%0A%20%20%20this.tooltipText%20%3D%20%22%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%5Cn%u0414%u041B%20%20%20%20%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u043A%u0430%u043A...%20%5Cn%u041B%3A%20%20%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0431%u0435%u0437%20%u0437%u0430%u043F%u0440%u043E%u0441%u0430%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5Cn%u0414%u0421%3A%20%20%20%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0441%20%u0432%u044B%u0434%u0435%u043B%u0435%u043D%u043D%u044B%u043C%20%u0442%u0435%u043A%u0441%u0442%u043E%u043C%20%u0438%u043B%u0438%20%u0438%u0437%20%u0431%u0443%u0444%u0435%u0440%u0430%20%u043A%u0430%u043A...%20%5Cn%u0421%3A%20%20%20%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0441%20%u0432%u044B%u0434%u0435%u043B%u0435%u043D%u043D%u044B%u043C%20%u0442%u0435%u043A%u0441%u0442%u043E%u043C%20%u0438%u043B%u0438%20%u0438%u0437%20%u0431%u0443%u0444%u0435%u0440%u0430%20%u0431%u0435%u0437%20%u0437%u0430%u043F%u0440%u043E%u0441%u0430%5C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5Cn%5Cn%u041F%u0430%u043F%u043A%u0430%20%u0434%u043B%u044F%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%20%u0431%u0435%u0437%20%u0437%u0430%u043F%u0440%u043E%u0441%u0430%3A%20%22%20+%20folder%3B%0A%7D%3B%0A%0A%0A//%20%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u0432%20%u0443%u043A%u0430%u0437%u0430%u043D%u043D%u0443%u044E%20%u043F%u0430%u043F%u043A%u0443%20%u0438%u043B%u0438%20%u0432%20%u043F%u043E%u0441%u043B%u0435%u0434%u043D%u044E%u044E%20%u043F%u0430%u043F%u043A%u0443%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%20..............%0Afunction%20saveShortcuts%28saveAs%2C%20shortcutName%29%20%7B%0A%20%20%20var%20url%20%3D%20content.document.location%3B%0A%20%20%20cbu.isPref%28pref%2C%20disk%20+%20%22%3A%5C%5C%22%29%3B%0A%0A%20%20%20//%20%u0431%u043B%u043E%u043A%u0438%u0440%u0443%u0435%u043C%20%u0441%u043E%u0437%u0434%u0430%u043D%u0438%u0435%20%u044F%u0440%u043B%u044B%u043A%u043E%u0432%20%u0434%u043B%u044F%20%u0432%u043D%u0443%u0442%u0440%u0435%u043D%u043D%u0438%u0445%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%20FF%0A%20%20%20if%20%28%20%5B%22about%3A%22%2C%20%22chrome%3A%22%2C%20%22jar%3A%22%2C%20%22data%3A%22%5D.indexOf%28url.protocol%29%20%21%3D%3D%20-1%20%29%20%7B%20%20%20%0A%20%20%20%20%20%20%20%20%20alertsService.showAlertNotification%28%22chrome%3A//global/skin/icons/error-16.png%22%2C%20self.label%2C%20%22%u041D%u0435%20%u043F%u043E%u0434%u0434%u0435%u0440%u0436%u0438%u0432%u0430%u0435%u0442%u0441%u044F%22%29%3B%0A%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%20%7D%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%0A%20%20%20//%20%u043F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%20%u044F%u0440%u043B%u044B%u043A%u0430%20%0A%20%20%20if%20%28%20saveAs%20%29%20shortcutName%20%3D%20setPathToShortcut%28shortcutName%29%0A%20%20%20else%20%0A%20%20%20%20%20%20%20%20shortcutName%20%3D%20shortcutName%20%3F%20shortcutName%20%3A%20getSiteName%28%29%20+%20getTabLabel%28%29%20+%20%22%20%22%20+%20Date.now%28%29%3B%0A%20%20%20if%20%28%20saveAs%20%26%26%20shortcutName%20%3D%3D%20false%20%29%20return%3B%0A%20%20%20%0A%20%20%20//%20%u0441%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u0438%u043A%u043E%u043D%u043A%u0443%20%u0442%u0430%u0431%u0430%20%u0432%20%u0443%u0441%u0442%u0430%u043D%u043E%u0432%u043B%u0435%u043D%u043D%u0443%u044E%20%u043F%u0430%u043F%u043A%u0443%0A%20%20%20var%20faviconName%20%3D%20%22favicon%22%20+%20Date.now%28%29%3B%0A%20%20%20var%20favicon%20%3D%20saveFaviconToFolder%28faviconName%29%3B%0A%20%0A%20%20%20//%20%u043F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u043F%u0443%u0442%u044C%20%u0434%u043B%u044F%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%20%u044F%u0440%u043B%u044B%u043A%u0430%20%u0438%u0437%20%27about%3Aconfig%27%20%0A%20%20%20var%20pathToFolder%20%3D%20gPrefService.getComplexValue%28pref%2C%20Ci.nsISupportsString%29.data%3B%0A%20%20%20var%20pathToShortcut%20%3D%20pathToFolder%20+%20shortcutName%20+%20%22.url%22%3B%0A%20%20%20%20%20%20%20%0A%20%20%20//%20%u0430%u0434%u0440%u0435%u0441%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u0432%20UTF-8%20%u0435%u0441%u043B%u0438%20%u044D%u0442%u043E%20%u043F%u0440%u043E%u0442%u043E%u043A%u043E%u043B%20%27file%27%20%u0438%u043B%u0438%20%u0432%20%27Punycode%27%20%u0435%u0441%u043B%u0438%20%u044D%u0442%u043E%20.%u0440%u0444%20%u0434%u043E%u043C%u0435%u043D%0A%20%20%20if%20%28%20url.protocol%20%3D%3D%20%27file%3A%27%20%29%20url%20%3D%20convertFromUnicode%28%22UTF-8%22%2C%20url%29%3B%20%20%20%0A%20%20%20if%20%28%20url.host.slice%28-3%29%20%3D%3D%20%27.%u0440%u0444%27%29%20url%20%3D%20Services.io.newURI%28url%2C%20null%2C%20null%29.asciiSpec%3B%0A%20%20%20%20%20%0A%20%20%20//%20%u0442%u0435%u043A%u0441%u0442%20%u044F%u0440%u043B%u044B%u043A%u0430%20%u0438%u0437%20%u0430%u0434%u0440%u0435%u0441%u0430%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u0438%20%u043F%u0443%u0442%u0438%20%u043A%20%u0438%u043A%u043E%u043D%u043A%u0435%20%u0442%u0430%u0431%u0430%20%20%20%20%0A%20%20%20var%20text%20%3D%20%22%5BInternetShortcut%5D%22%20+%20%22%5Cr%5Cn%22%20+%20%22URL%3D%22%20+%20url%3B%0A%20%20%20var%20pathToFavicon%20%3D%20%22IconFile%3D%22%20+%20disk%20+%20%22%3A%5C%5CDocuments%20and%20Settings%5C%5CFavicon%5C%5C%22%20+%20faviconName%20+%20%22.ico%22%20+%20%22%5Cr%5Cn%22%3B%0A%20%20%20if%20%28%20favicon%20%3D%3D%20false%20%29%20var%20pathToFavicon%20%3D%20%22%22%3B%0A%20%20%20var%20data%20%3D%20text%20+%20%22%5Cr%5Cn%22%20+%20pathToFavicon%20+%20%22IconIndex%3D0%22%3B%20%20%20%20%20%20%0A%0A%20%20%20//%20%u0437%u0430%u043F%u0438%u0441%u0430%u0442%u044C%20%u0442%u0435%u043A%u0441%u0442%20%u0432%20%u044F%u0440%u043B%u044B%u043A%0A%20%20%20custombuttonsUtils.writeFile%28pathToShortcut%2C%20data%29%3B%0A%0A%20%20%20//%20%u043F%u043E%u0434%u0441%u043A%u0430%u0437%u043A%u0430%20....%0A%20%20%20var%20notification%20%3D%20%27%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u043B%20%u0432%3A%20%27%20+%20pathToFolder%3B%0A%20%20%20var%20image%20%3D%20%28favicon%20%3D%3D%20false%29%20%3F%20self.image%20%3A%20gBrowser.selectedBrowser.mIconURL%3B%0A%20%20%20alertsService.showAlertNotification%28image%2C%20shortcutName%2C%20notification%29%3B%0A%7D%3B%0A%0A%0A//%20%u0423%u0441%u0442%u0430%u043D%u043E%u0432%u043A%u0430%20%u043F%u0443%u0442%u0438%20%u0438%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u044F%20%u0434%u043B%u044F%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%20%u044F%u0440%u043B%u044B%u043A%u0430%20%u0447%u0435%u0440%u0435%u0437%20%u0434%u0438%u0430%u043B%u043E%u0433%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%2C%20%u043E%u0442%u043C%u0435%u043D%u0430%20%u043E%u0442%u0434%u0430%u0441%u0442%20%27false%27%20..............%0Afunction%20setPathToShortcut%28shortcutName%29%20%7B%20%20%20%20%20%0A%20%20%20//%20%u043F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u043F%u0440%u0435%u0434%u044B%u0434%u0443%u0449%u0438%u0439%20%u043F%u0443%u0442%u044C%20%u0434%u043B%u044F%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%20%u0438%u0437%20%27about%3Aconfig%27%0A%20%20%20var%20pathToFile%20%3D%20gPrefService.getComplexValue%28pref%2C%20Ci.nsISupportsString%29.data%3B%0A%20%20%20%0A%20%20%20//%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%20%u0434%u043B%u044F%20%u044F%u0440%u043B%u044B%u043A%u0430%0A%20%20%20var%20shortcutName%20%3D%20shortcutName%20%3F%20shortcutName%20%3A%20getSiteName%28%29%20+%20getTabLabel%28%29%20+%20%22%20%22%20+%20Date.now%28%29%3B%0A%0A%20%20%20//%20%u0434%u0438%u0430%u043B%u043E%u0433%20%u0441%u043E%u0437%u0434%u0430%u043D%u0438%u044F%20%u0438%20%u0443%u0441%u0442%u0430%u043D%u043E%u0432%u043A%u0438%20%u043F%u0443%u0442%u0438%20%20%20%20%0A%20%20%20var%20fp%20%3D%20window.makeFilePicker%28%29%3B%0A%20%20%20fp.init%28window%2C%20%22%u0423%u043A%u0430%u0436%u0438%u0442%u0435%20%u0433%u0434%u0435%20%u0441%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u044F%u0440%u043B%u044B%u043A%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%21%22%2C%20fp.modeSave%29%3B%0A%20%20%20fp.appendFilters%28fp.filterAll%29%3B%0A%20%20%20fp.defaultString%20%3D%20shortcutName%3B%0A%20%20%20%20%20%0A%20%20%20if%20%28%20fp.show%28%29%20%3D%3D%20fp.returnCancel%20%29%20return%20false%3B%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%0A%20%20%20//%20%u0443%u0431%u0440%u0430%u0442%u044C%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%20%u0444%u0430%u0439%u043B%u0430%20%u0438%u0437%20%u043F%u0443%u0442%u0438%20%u043A%20%u0444%u0430%u0439%u043B%u0443%20%u0438%20%u0437%u0430%u043F%u0438%u0441%u0430%u0442%u044C%20%u043F%u0443%u0442%u044C%20%u0432%20%27about%3Aconfig%27%0A%20%20%20var%20filePath%20%3D%20fp.file.path.toString%28%29%3B%0A%20%20%20var%20fileName%20%3D%20fp.file.leafName.toString%28%29%3B%0A%20%20%20cbu.setPrefs%28pref%2C%20convertFromUnicode%28%22UTF-8%22%2C%20filePath.replace%28fileName%2C%20%22%22%29%29%20%29%3B%20%20%20%20%20%20%0A%20%20%20return%20fileName%3B%0A%7D%3B%0A%0A%0A//%20%u0421%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u0432%20%u0443%u043A%u0430%u0437%u0430%u043D%u043D%u0443%u044E%20%u043F%u0430%u043F%u043A%u0443%20%u0438%u043A%u043E%u043D%u043A%u0443%20%u0442%u0430%u0431%u0430%20%u043A%u0430%u043A%20.ico%20%u0438%20%u0431%u0435%u0437%20%u0434%u0438%u0430%u043B%u043E%u0433%u0430%20%u0441%u043E%u0445%u0440%u0430%u043D%u0435%u043D%u0438%u044F%20..............%0Afunction%20saveFaviconToFolder%28faviconName%29%20%7B%0A%20%20%20var%20url%20%3D%20gBrowser.mCurrentTab.image.replace%28%22%23-moz-resolution%3D16%2C16%22%2C%22%22%29%3B%0A%20%20%20if%20%28%20%21url%20%7C%7C%20content.document.mozSyntheticDocument%20%29%20return%20false%3B%0A%20%20%20if%20%28%20url.startsWith%28%22http%22%29%20%29%20url%20%3D%20%22moz-anno%3Afavicon%3A%22%20+%20url%3B%0A%0A%20%20%20var%20img%20%3D%20new%20Image%28%29%3B%0A%20%20%20img.onload%20%3D%20function%28%29%20%7B%0A%20%20%20%20%20%20%20var%20tools%20%3D%20Cc%5B%22@mozilla.org/image/tools%3B1%22%5D.getService%28Ci.imgITools%29%3B%0A%20%20%20%20%20%20%20var%20stream%20%3D%20Cc%5B%22@mozilla.org/scriptableinputstream%3B1%22%5D.createInstance%28Ci.nsIScriptableInputStream%29%3B%0A%20%20%20%20%20%20%20var%20file%20%3D%20Cc%5B%22@mozilla.org/file/local%3B1%22%5D.createInstance%28Ci.nsILocalFile%29%3B%0A%0A%20%20%20%20%20%20%20var%20request%20%3D%20img.QueryInterface%28Ci.nsIImageLoadingContent%29.getRequest%28img.CURRENT_REQUEST%29%3B%0A%20%20%20%20%20%20%20var%20istrm%20%3D%20tools.encodeImage%28request.image%2C%20%22image/vnd.microsoft.icon%22%2C%20%22format%3Dbmp%3Bbpp%3D32%22%29%3B%0A%20%20%20%20%20%20%20stream.init%28istrm%29%3B%0A%20%20%20%20%20%20%20var%20data%20%3D%20stream.readBytes%28stream.available%28%29%29%3B%0A%20%20%20%20%20%20%20istrm.close%28%29%3B%20stream.close%28%29%3B%0A%0A%20%20%20%20%20%20%20var%20path%20%3D%20disk%20+%20%22%3A%5C%5CDocuments%20and%20Settings%5C%5CFavicon%5C%5C%22%20+%20faviconName%20+%20%22.ico%22%3B%0A%20%20%20%20%20%20%20file.initWithPath%28path%29%3B%0A%20%20%20%20%20%20%20file.exists%28%29%20%26%26%20file.remove%28false%29%3B%0A%20%20%20%20%20%20%20try%20%7B%20file.create%28file.NORMAL_FILE_TYPE%2C%20448%29%20%7D%20%0A%20%20%20%20%20%20%20catch%28e%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20setTimeout%28%28%29%3D%3E%20%7B%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20alertsService.showAlertNotification%28%22chrome%3A//global/skin/icons/error-16.png%22%2C%20self.label%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%22%u041D%u0435%20%u043C%u043E%u0433%u0443%20%u0441%u043E%u0445%u0440%u0430%u043D%u0438%u0442%u044C%20%u0438%u043A%u043E%u043D%u043A%u0443%20%u0432%u043A%u043B%u0430%u0434%u043A%u0438%20%u043D%u0430%20%u0434%u0438%u0441%u043A%u0435%3A%20%22%20+%20disk%20+%20%22%5Cn%22%20+%20%22%u0423%u043A%u0430%u0436%u0438%u0442%u0435%20%u0432%20%u043D%u0430%u0447%u0430%u043B%u0435%20%u043A%u043E%u0434%u0430%20%u043A%u043D%u043E%u043F%u043A%u0438%20%u0434%u0440%u0443%u0433%u043E%u0439%20%u0434%u0438%u0441%u043A%21%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20%7D%2C%202500%29%3B%0A%20%20%20%20%20%20%20%7D%3B%0A%20%20%20%20%20%20%20cbu.writeFile%28path%2C%20data%29%3B%0A%20%20%20%7D%0A%20%20%20img.setAttribute%28%22src%22%2C%20url%29%3B%0A%7D%3B%0A%0A%0A//%20%u041F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%20%u0434%u043E%u043C%u0435%u043D%u0430%20%u0441%20%u0437%u0430%u0433%u043B%u0430%u0432%u043D%u044B%u043C%20%u043F%u0435%u0440%u0432%u044B%u043C%20%u0441%u0438%u043C%u0432%u043E%u043B%u043E%u043C%20%u0438%20%u0431%u0435%u0437%20%u043F%u0440%u0438%u0441%u0442%u0430%u0432%u043E%u043A%28%20%u0442%u0438%u043F%u0430%20.ru%20%u0438%20.com%20%29%20..............%0Afunction%20getSiteName%28%29%20%7B%0A%20%20%20try%20%7B%20var%20domain%20%3D%20content.document.domain.split%28%27.%27%29%20%7D%20catch%28e%29%20%7B%20return%20%22%22%20%7D%3B%0A%20%20%20domain%20%3D%20%28domain.length%20%3D%3D%202%29%20%3F%20domain%5B0%5D%20%3A%20domain%5B1%5D%0A%20%20%20return%20domain.charAt%280%29.toUpperCase%28%29%20+%20domain.slice%281%29.split%28%27.%27%29%5B0%5D%20+%20%22%20%22%3B%20%20%0A%7D%3B%0A%0A%0A//%20%u041F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u043D%u0430%u0437%u0432%u0430%u043D%u0438%u0435%20%u0432%u043A%u043B%u0430%u0434%u043A%u0438%20%u0431%u0435%u0437%20%u043D%u0435%20%u0441%u043E%u0445%u0440%u0430%u043D%u044F%u0435%u043C%u044B%u0445%20%u0441%u0438%u043C%u0432%u043E%u043B%u043E%u0432%20%u0438%20%u043B%u0438%u0448%u043D%u0438%u0445%20%u043F%u0440%u043E%u0431%u0435%u043B%u043E%u0432%20..............%0Afunction%20getTabLabel%28%29%20%7B%20%0A%20%20%20var%20label%20%3D%20gBrowser.mCurrentTab.label%3B%20%20%20%20%20%20%0A%20%20%20var%20label%20%3D%20label.replace%28/%5B%3A.%5C%5C%5C/%3C%3E%3F*%7C%22%5D+/g%2C%20%22%20%22%29.replace%28/%5Cs%5Cs+/g%2C%20%22%20%22%29%3B%0A%20%20%20return%20label.substring%280%2C%2050%29%3B%0A%7D%3B%0A%0A%0A//%20%u041F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u0432%u044B%u0434%u0435%u043B%u0435%u043D%u043D%u044B%u0439%20%u0442%u0435%u043A%u0441%u0442%20%u0438%u0437%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%20%u0438%u043B%u0438%20%u0438%u0437%20%u0431%u0443%u0444%u0435%u0440%u0430%20%u043E%u0431%u043C%u0435%u043D%u0430%2C%20%u0435%u0441%u043B%u0438%20%u043D%u0435%u0442%20%u0442%u0435%u043A%u0441%u0442%u0430%20%u043F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%27false%27%20..............%0Afunction%20getSelect%28%29%20%7B%0A%20%20%20var%20sel%20%3D%20document.commandDispatcher.focusedWindow.getSelection%28%29.toString%28%29%3B%20//%20%u0438%u0437%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u044B%0A%20%20%20if%20%28%20sel%20%3D%3D%20%27%27%20%29%20%7B%20%20%20%20%0A%20%20%20%20%20%20%20var%20el%20%3D%20document.commandDispatcher.focusedElement%3B%20//%20%u0438%u0437%20%u0442%u0435%u043A%u0441%u0442%u043E%u0432%u043E%u0433%u043E%20%u043F%u043E%u043B%u044F%0A%20%20%20%20%20%20%20if%20%28%20el%20%26%26%20el.textLength%20%29%20%0A%20%20%20%20%20%20%20%20%20%20%20%20sel%20%3D%20el.value.substring%28el.selectionStart%2C%20el.selectionEnd%29%3B%20%20%0A%20%20%20%20%20%20%20%7D%0A%20%20%20if%20%28%20sel%20%3D%3D%20%27%27%20%29%20sel%20%3D%20gClipboard.read%28%29%3B%20//%20%u0438%u0437%20%u0431%u0443%u0444%u0435%u0440%u0430%20%u043E%u0431%u043C%u0435%u043D%u0430%0A%20%20%20if%20%28%20sel%20%3D%3D%20%27%27%20%29%20alertsService.showAlertNotification%28%22chrome%3A//global/skin/icons/error-16.png%22%2C%20self.label%2C%20%22%u0412%u044B%u0434%u0435%u043B%u0438%u0442%u0435%20%u0438%u043B%u0438%20%u0441%u043A%u043E%u043F%u0438%u0440%u0443%u0439%u0442%u0435%20%u0442%u0435%u043A%u0441%u0442%21%22%29%3B%0A%20%20%0A%20%20%20return%20%28%20sel%20%3D%3D%20%27%27%20%29%20%3F%20false%20%3A%20sel.replace%28/%5B%3A.%5C%5C%5C/%3C%3E%3F*%7C%22%5D+/g%2C%20%22%20%22%29.toString%28%29.replace%28/%5E%5Cs+%7C%5Cs+%24/g%2C%22%22%29%3B%20//%20%u0437%u0430%u043C%u0435%u043D%u0438%u0442%u044C%20%u043D%u0435%u0434%u043E%u043F%u0443%u0441%u0442%u0438%u043C%u044B%u0435%20%u0441%u0438%u043C%u0432%u043E%u043B%u044B%20%u0438%20%u0443%u0434%u0430%u043B%u0438%u0442%u044C%20%u043B%u0438%u0448%u043D%u0438%u0435%20%u043F%u0440%u043E%u0431%u0435%u043B%u044B%20%0A%7D%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*Code*/%0A%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

Отсутствует

 

№1088927-10-2016 20:42:03

villa7
Участник
 
Группа: Members
Зарегистрирован: 21-07-2012
Сообщений: 2235
UA: Firefox 42.0

Re: Custom Buttons

bunda1
Мне так удобнее. Спасибо.


Лучше спросить у знающих - чем лезть не зная.

Отсутствует

 

№1089027-10-2016 23:40:41

fokanik
Участник
 
Группа: Members
Зарегистрирован: 05-02-2014
Сообщений: 267
UA: unknown 0.0

Re: Custom Buttons

yup пишет:

Если это пишется не для конкретного сайта, на котором адреса выглядят именно так, то надёжнее использовать вариант:

А постоянно https подставлять это нормально? А то смотрел - хром ссылки в potplayer передает по http:
http://i066.radikal.ru/1610/b9/6c187e3adb4c.jpg

Выделить код

Код:

  if(!/youtube.com\/watch[?]v=/.test(url)) return;
  url = "https://www.youtube.com"+url.split("youtube.com")[1];
  url = url.split("&")[0];

Отсутствует

 

№1089128-10-2016 00:24:33

villa7
Участник
 
Группа: Members
Зарегистрирован: 21-07-2012
Сообщений: 2235
UA: Firefox 42.0

Re: Custom Buttons

fokanik
Может это расширение поковырять, глянуть как сделано. У него даже на EX.UA проигрывает через PotPlayer.
https://addons.mozilla.org/ru/firefox/a … -shortcut/
http://www.ex.ua/93359258


Лучше спросить у знающих - чем лезть не зная.

Отсутствует

 

№1089228-10-2016 01:18:01

Stkvsky
Участник
 
Группа: Members
Зарегистрирован: 26-06-2012
Сообщений: 1121
UA: Firefox 38.0

Re: Custom Buttons

Здравствуйте, помогите пожалуйста, если возможно, добавить в кнопку Открыть видео в PotPlayerMini такую функцию.
Сейчас ПКМ по кнопке открывает вкладку в плеере. ЛКМ добавляет в список воспроизведения.
А можно ли сделать СКМ добавить в список воспроизведения все вкладки которые открыты справа?

Отредактировано Stakhovsky (28-10-2016 01:19:08)

Отсутствует

 

№1089328-10-2016 01:30:38

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 2447
UA: Firefox 52.0

Re: Custom Buttons

bunda1 пишет:

Переключить текущий поисковик( Firefox24+ ) от 27.10.2016.

А вариант для [nightly] будет?:) А то сейчас по ЛКМ срабатывает выбор поисковика и то только из первых 11 установленных. А на СКМ вообще нет никакой реакции.

Отсутствует

 

№1089428-10-2016 04:51:23

yup
Участник
 
Группа: Members
Зарегистрирован: 15-04-2016
Сообщений: 1086
UA: Seamonkey 2.40

Re: Custom Buttons

fokanik пишет:

А постоянно https подставлять это нормально? А то смотрел - хром ссылки в potplayer передает по http

Если на Youtube зайти по http, то первым делом происходит редирект на https:

скрытый текст
--2016-10-28 08:47:30--  http://www.youtube.com/watch?v=VaPw7CVdqnE
Resolving www.youtube.com... 216.58.221.46
Connecting to www.youtube.com|216.58.221.46|:80... connected.

HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://www.youtube.com/watch?v=VaPw7CVdqnE [following]

--2016-10-28 08:47:31--  https://www.youtube.com/watch?v=VaPw7CVdqnE
Connecting to www.youtube.com|216.58.221.46|:443... connected.

Отсутствует

 

№1089528-10-2016 08:56:36

intersk
Участник
 
Группа: Members
Зарегистрирован: 20-06-2013
Сообщений: 90
UA: Firefox 49.0

Re: Custom Buttons

по кнопке время:

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

1. Можно сделать чтобы время бралось из интернета? 2. Как редактировать размер шрифта и сам шрифт цифр?

Отредактировано intersk (28-10-2016 09:36:07)

Отсутствует

 

№1089628-10-2016 09:46:47

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4780
UA: Firefox 24.0

Re: Custom Buttons

intersk пишет:

1. Можно сделать чтобы время бралось из интернета? 2. Как редактировать размер шрифта и сам шрифт цифр?

Что за кнопка время?

Отсутствует

 

№1089728-10-2016 10:31:58

intersk
Участник
 
Группа: Members
Зарегистрирован: 20-06-2013
Сообщений: 90
UA: Firefox 49.0

Re: Custom Buttons

bunda1 пишет:

intersk пишет: 1. Можно сделать чтобы время бралось из интернета? 2. Как редактировать размер шрифта и сам шрифт цифр?  Что за кнопка время?

так назвал "часы"
https://forum.mozilla-russia.org/viewto … 08#p724808
со вторым вопросом разобрался - добавил:
   font-size: 11pt !important;
   font-family: Arial;
1 вопрос актуален

Отредактировано intersk (28-10-2016 13:09:43)

Отсутствует

 

№1089828-10-2016 17:19:45

Stkvsky
Участник
 
Группа: Members
Зарегистрирован: 26-06-2012
Сообщений: 1121
UA: Firefox 38.0

Re: Custom Buttons

Все, с кнопкой не нужно, разобрался другим способом.:)

Отсутствует

 

№1089928-10-2016 18:20:33

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4780
UA: Firefox 24.0

Re: Custom Buttons

intersk пишет:

1. Можно сделать чтобы время бралось из интернета?

Кнопка берёт время от браузера а тот из интернета или ты что имел в виду.

Добавлено 28-10-2016 18:23:05

voqabuhe пишет:

А вариант для [nightly] будет?:)

А у меня Custom Buttons на [nightly] не работает :/

Отредактировано bunda1 (28-10-2016 18:23:05)

Отсутствует

 

№1090028-10-2016 21:30:34

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 2447
UA: Firefox 52.0

Re: Custom Buttons

bunda1 пишет:

А у меня Custom Buttons на [nightly] не работает :/

Шо опять? :) №10462

Отсутствует

 

Board footer

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