Giter VIP home page Giter VIP logo

dirty-on-steroids's Introduction

Модульный сервис-пак, инструкция по применению

Написание плагина

Плагины к сервис-паку - объекты со следующим интерфейсом:

type - тип плагина, используется для определения, в какую вкладку определять конфигурафионные контролы данного плагина
name - название плагина, используется для именования контрола с резервированным именем active, если такой есть
author - строка, определяющая автора, используется для поддержания ЧСВ
config - объект с конфигурационными данными плагина. Интерфейс, позволяющий управлять данными, создается ядром.
run - функция инициализации плагина, пускаемая ядром

Чтобы включить плагин в состав сервис-пака, необходимо вызвать метод d3.addModule(), передав в качестве параметра объект плагина.

Пример смотри в файле extra/browser.js

Описание конфигурационных данных.

Конфигурационные данные представляют собою объект шаблона {название_переменной:{свойства_переменной}}. Свойства переменной:
type - обязательное свойство, означает тип контрола для управления этой переменной. Поддерживаются text, checkbox, radio, select
value - начальное значение переменной по умолчанию
caption - метка контрола переменной. Если caption отсутствует, в качестве метки используется имя переменной
options - массив значений для контролов типа radio и select

Пример смотри в файле extra/test.js

Сервисы, предоставляемые ядром.

d3.user.name - имя пользователя. null, если пользователь не залогинен
d3.user.id - id пользователя. null, если пользователь не залогинен
d3.setStyle(element,style) - установка CSS свойств для элемента
d3.newElement(tagName,parms) - создание нового элемента и опциональня установка атрибутов, элементов стиля и свойства innerHTML
d3.newDiv(parms) - вызов d3.newElement с параметром tagName='div'
d3.get - объект с методами взятия элементов страницы d3. Пока реализованы logoutLink() и leftNavigation(). Будет развиваться.
d3.json.encode(value) - кодирование объекта в json
d3.json.decode(json) - декодирование json
d3.addModule(module) - добавление модуля (плагина) в сервис-пак
d3.window - оригинальный объект window
d3.document - оригинальный объект document
d3.xpath.get(selector,context) - поиск по документу или указанному элементу при помощи XPath. Возвращает XPathResult, тип результата - ORDERED_NODE_SNAPSHOT_TYPE
d3.xpath.each(selector,function(node,nodeIndex){},context) - поиск при помощи XPath и применение к найденным узлам указанной функции. 
 Функция получает в качестве параметров найденный элемент, индекс элемента и может вернуть false, если хочет прервать выполнение цикла для оставшихся результатов.
d3.content.posts - массив постов на странице. Пустой, если постов нет.
d3.content.comments - массив комментариев на странице. Пустой, если комментариев нет.
d3.content.onNewComment(function(comment){}) - добавление обработчика нового комментария.
d3.getLocalStorageItem(name, defaultValue) - достаёт name параметр из LocalStorage, если name==null возвращает defaultValue.

Интерфейсы постов и комментариев
offset - отступ контейнера с начала страницы
height - высота контейнера
getContent() - взять контейнер содержимого
getContentText() - взять содержимое в виде текста
ratingContainer() - взять контейнер рейтинга
ratingValue() - взять значение рейтинга как число

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.