Skip to content

Latest commit

 

History

History
50 lines (36 loc) · 4.14 KB

File metadata and controls

50 lines (36 loc) · 4.14 KB

Регулярные выражения не должны иметь вид:

var regex= /test/;

Все регулярные выражения для переносимости между браузерами должны быть созданы как новый объект:

var regex= new RegExp("test");

Все глобальные функции и переменные должны начинаться с двух знаков подчеркивания:

function __example()

Комментарии к коду на русском языке.

После внесения правок необходимо запустить deploy.py для сборки релизов.

Для вынесения изображений (которые хранятся в data-url) за пределы кода необходимо скрывать их data-url за псевдотэгом:

<img src='[DEPLOY:image64]images/path.png[/DEPLOY]'>

Если функция не сможет работать или бесполезна на каком-то из проектов Сети Знаний", то она должна проверять location, дабы не быть задействованной где не надо.

Каждый аддон представляет собой один файл в папке addons, они должны быть написаны с учетом того, что их код будет объединяться с кодом userjsloader путем помещения кода аддонов в конец. Функция с аддоном должна иметь то же имя, что и файл, только с двумя знаками подчеркивания в начале.
Файл: test.js Функция: function __test() Желательно использовать следующий механизм для хранения данных аддона:

function __test() {
    var settings= __addonsSettings.get(arguments.callee.name);
    if (settings == null) settings= {
        title: 'Ваш город', // title отвечает за заголовок, которым будет представлен аддон
        description: 'Показывает город участника.' // description содержит описание
    };
    __addonsSettings.set(arguments.callee.name);
};

Если в настройках будет присутствовать элемент exports, то эти настройки будут отображаться в настройках аддона. order в свою очередь будет отвечать за порядок в котором настройки будут выведены на экран, если настройки нет в order, то на экран она выведена не будет. value это значение по умолчанию, оно может быть определено пользователем и его надо считывать, чтобы узнать значение настройки. Настройка checkbox переключает значения 0 и 1.
Возможны следующие типы настроек:

var defaultSettings= {
    exports: {
        bgcolor: {type: 'text', value:'bebebe', title:'Цвет фона:'},
        usebgcolor: {type: 'checkbox', value='1', title:'Использовать цвет фона'},
        country: {type: 'select', value='1', title:'Ваш город:', options:{'1':'Даллас', '2':'Вегас'} },
        hideCountry: {type: 'radio', value='1', title:'Скрывать Ваш город:', options:{'1':'Нет', '2':'Да'} }
    },
    order: ['bgcolor', 'country', 'hideCountry', 'usebgcolor'],
    title: 'Ваш город'
};
var settings= __addonsSettings.getUpdatedSettings( arguments.callee.name, defaultSettings );

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