Музыка
Видео
Программы
8
А еще Tagoo ищет записи подкастов и конференций. Например запрос "open source"
Следующая подсказка Не показывать подсказки
{"8":"\u0410 \u0435\u0449\u0435 Tagoo \u0438\u0449\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u043e\u0434\u043a\u0430\u0441\u0442\u043e\u0432 \u0438 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0439. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430\u043f\u0440\u043e\u0441 <a href=\"\/ru\/search.php?search=open+source\">\"open source\"<\/a>","9":"\u0415\u0441\u043b\u0438 \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u0445 \u0435\u0441\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0449\u0438\u0439 \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c \u0438\u043b\u0438 \u0430\u043b\u044c\u0431\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u043d\u0430 \u043d\u0435\u0433\u043e \u0449\u0435\u043b\u043a\u043d\u0443\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e \u043d\u0435\u043c\u0443.","12":"\u041d\u0435 \u0437\u043d\u0430\u0435\u0448\u044c \u0447\u0442\u043e \u043f\u043e\u0441\u043b\u0443\u0448\u0430\u0442\u044c? \u0412\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0441\u044f \u043d\u0430\u0448\u0438\u043c \u0432\u0438\u0434\u0436\u0435\u0442\u043e\u043c <a href=\"\/ru\/play_moody.php\">TagooMoody - \u0440\u0430\u0434\u0438\u043e \u043f\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044e<\/a>.","13":"\u041c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u043b\u0435\u0439\u043b\u0438\u0441\u0442\u044b, \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043a\u043b\u0438\u043a\u043d\u0438 \u043d\u0430 \"\u043c\u043e\u0438 \u043f\u043b\u0435\u0439\u043b\u0438\u0441\u0442\u044b\" \u0441\u0432\u0435\u0440\u0445\u0443 \u0441\u043f\u0440\u0430\u0432\u0430. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u043b\u0435\u0439\u043b\u0438\u0441\u0442\u044b, \u0442\u044b \u043c\u043e\u0436\u0435\u0448\u044c \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u043e\u043d\u0440\u0430\u0432\u0438\u0432\u0448\u0438\u0435\u0441\u044f \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u043f\u0435\u0441\u043d\u0438 \u0434\u043b\u044f \u0441\u0435\u0431\u044f.","14":"\u0421\u043e\u0437\u0434\u0430\u0432 \u043f\u043b\u0435\u0439\u043b\u0438\u0441\u0442 \u0434\u043e\u043c\u0430, \u0442\u044b \u043c\u043e\u0436\u0435\u0448\u044c \u0441\u043b\u0443\u0448\u0430\u0442\u044c \u0435\u0433\u043e \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0435, \u043d\u0430 \u0432\u0435\u0447\u0435\u0440\u0438\u043d\u043a\u0435 \u0438\u043b\u0438 \u0443 \u0434\u0440\u0443\u0433\u0430. \u0422\u0435\u043f\u0435\u0440\u044c \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 mp3 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u043e\u0434 \u0440\u0443\u043a\u043e\u0439...","15":"\u0412\u0441\u0451 \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u043e\u0435 \u0432\u0438\u0434\u0435\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430 FLV \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u043e \u043e\u043d-\u043b\u0430\u0439\u043d, \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0432\u0430\u0448\u0435\u0433\u043e \u043f\u043b\u0435\u0435\u0440\u0430 QuickTime, Windows Media Player \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u043e\u0433\u043e.","16":"\u0415\u0441\u043b\u0438 \u0432 \u0432\u0438\u0434\u0435\u043e\u043f\u043e\u0438\u0441\u043a\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0431\u043e\u043b\u0435\u0435 30 \u043c\u0438\u043d\u0443\u0442, \u0442\u043e \u0441 \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u0438 \u0442\u044b \u043d\u0430\u0439\u0434\u0435\u0448\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0449\u0438\u0439 \u0442\u0435\u0431\u044f \u0444\u0438\u043b\u044c\u043c, \u0441\u0435\u0440\u0438\u0430\u043b \u0438\u043b\u0438 \u043c\u0443\u043b\u044c\u0442\u0444\u0438\u043b\u044c\u043c.","2":"\u0414\u043b\u044f \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u0435\u0432 \u043f\u043e\u0438\u0441\u043a\u0430 \u043c\u043e\u0436\u043d\u043e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \"\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u043c \u043f\u043e\u0438\u0441\u043a\u043e\u043c\".","3":"\u0415\u0441\u043b\u0438 \u0432\u044b \u043d\u0435\u0443\u0432\u0435\u0440\u0435\u043d\u044b \u0432 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044f, \u043d\u0430\u0431\u0438\u0440\u0430\u0442\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0435\u0440\u0432\u044b\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u044b, \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 (\u043f\u043e\u0434\u0441\u043a\u0430\u0437\u043a\u0430).","4":"\u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044f \u043f\u043e-\u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438 \u0438 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e.<br> \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043d\u0435 \"\u043c\u043e\u0446\u0430\u0440\u0442\", \u0430 <a href=\"\/ru\/search.php?search=mozart\">\"Mozart\"<\/a>","6":"\u041c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0430\u0439\u0442 \u0441 \u043f\u0440\u044f\u043c\u044b\u043c\u0438 \u0441\u0441\u044b\u043b\u043a\u0430\u043c\u0438 \u043d\u0430 mp3 \u0432\u043d\u0438\u0437\u0443 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, \u043d\u0430\u0436\u0430\u0432 \"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0430\u0439\u0442\".","7":"\u0410 \u0442\u044b \u0437\u043d\u0430\u0435\u0448\u044c, \u0447\u0442\u043e Tagoo \u0438\u0449\u0435\u0442 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043c\u0443\u0437\u044b\u043a\u0443, \u043d\u043e \u0438 \u0430\u0443\u0434\u0438\u043e\u043a\u043d\u0438\u0433\u0438? \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430\u043f\u0440\u043e\u0441 <a href=\"\/ru\/search.php?search=%F1%F2%E0%ED%E8%F1%EB%E0%E2+%EB%E5%EC\">\"\u0441\u0442\u0430\u043d\u0438\u0441\u043b\u0430\u0432 \u043b\u0435\u043c\"<\/a>"}

Tagoo AJAX API

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

Условия использования API


Внимание, использование сервиса Tagoo AJAX API возможно при соблюдении следующих условий:

  1. Наличие у партнера аккаунта Tagoo и партнерского ключа.
  2. Наличие у партнера зарегистрированных доменов, с которых будут производиться AJAX запросы.
  3. Произведения запросов к API исключительно как AJAX (для серверных запросов используйте XML API).
  4. Обязательна ссылка на Tagoo.ru с логотипом Tagoo рядом с полем ввода поиска (смотрите пример виджетов). Если API используется без поля ввода поиска, то ссылка и логотип должны находиться внизу страницы.
  5. Не рекомендуется (а в случаях явного злоупотребления запрещено и будет наложен бан) кэширование результатов поиска, т.к. результаты медиа поиска очень динамичны.
  6. Количество запросов в сутки не должно превышать 3000. Если вам необходимо большее количество свяжитесь с нами, для обсуждения условий предоставления сервиса.

Делать автоматические запросы к поисковой системе Tagoo любым­ другим способом запрещено без предварительного согласия Tagoo.

Готовый код


Аудио виджет Видео виджет

Пример виджета Пример виджета

Документация


Поисковое API

// Поиск по аудио
object tagoo_audio_search
// Поиск по видео
object tagoo_video_search
	// Оба класса имеют общие методы, для осуществления поиска
	// Аргументы: key - ключ, query - запрос, on_page - кол-во элементов на страницу, onload - обработчик загрузки, page - страница
	// 	on_page, onload, page - необязательные
	this.search = function(key, query[, on_page, onload, page])
	// Загрузка данных
	// Аргументы: arguments - именованный массив аргументов (объект), onload - callback(data)
	this.load_json = function(arguments[, onload]) 


Пример структуры JSON результатов поиска

В результате запроса вы можете получить что-то вроде этого:

{ "data" : [ {
        "album" : "",
        "artist" : "V/Vm Test Records",
        "bitrate" : "128000",
        "file_link_text" : "Vvm_Chicken_Test-001..>",
        "file_link_title" : "",
        "file_name" : "Vvm_Chicken_Test-001",
        "file_url" : "http://noneinc.com/sound/Test/Test/Vvm_Chicken_Test-001.mp3",
        "fileformat" : "mp3",
        "filesize" : "4068270",
        "genre" : "Easy Listenin",
        "page_description" : "",
        "page_keywords" : "",
        "page_title" : "Index of /sound/Test/Test",
        "page_url" : "http://noneinc.com/sound/Test/Test/",
        "playtime" : "00:04:14",
        "playtime_sec" : "254",
        "title" : "V/Vm Chicken Test 001",
        "year" : "0"
      } ],
  "last_sid" : 145454,
  "on_page" : 1,
  "page" : 2,
  "page_count" : 100,
  "query" : "test",
  "total" : 100
}

Инициализация

function tagoo_init(funcs)
funcs — функция, которая вызывается после полной загрузки страницы
funcs — это массив функций, которые поочередно вызываются
funcs — если это массив массивов, то вызываемым функциям передаются аргументы задаваемые в массиве, следующем за именем функции [[func_name, [args]], ...]

tagoo_init — Служит для добавления события по окончании загрузки страницы (на которой находится партнерский блок).

Примеры
tagoo_init(audio_widget);
tagoo_init([audio_widget, video_widget]);
tagoo_init([
	[audio_widget, some_var], 
	video_widget]);
tagoo_init([
	[audio_widget, [some_var1, some_var2]], 
	video_widget]);

Остальные объекты

// загрузчик
object ajax_loader
	// загрузить с помощью ajax
	this.load = function(url, success, error)
	// загрузить в тег <script> и выполнить
	this.load_script = function(url[, onload, charset]) 

// функции-помощники object tagoo_helpers // переводит из байтов к мегабайты mbytes: function(bytes) // обрезает строку и добавляет в конец add cut_string: function(str[, number=30, add = '...']) // экранирует символы обозначаюзие теги tagfilter: function(str) // обрезает пробельные символы по краям строки trim: function(str) // добавляет событие элементу add_event: function(elem, type, handle) // достает элемент формы get_by_name: function(form, name) // достать тег из ибъекта (первый попавшийся) get_by_tag_name: function(root, tag) // достать объект с классом class get_by_class: function(root, class) // создать css правила. arr = [[selector, declaration], …] create_css: function(arr[, add_sel]) // следующие функции говорят сами за себя create_div, create_span, create_ordered_list, create_list_item, create_form, create_table, create_table_row, create_table_cell, create_input, create_link, create_div_link, create_image // удаляет детеныша элемента remove_child: function(parent, child) // задать класс элемента set_class: function(el, className)
// базовый класс виджетов object tagoo_search_control(root, key, type[, options]) // генерация виджита с возможностью задания запроса render: function([query]) // задать запрос (но не отправлять его) set_query: function([query]) // возвращает текущий запрос get_query: function() // отправить запрос на сервер submit: function([query]) // задание опций set_options: function(options)

Опции

function set_options(options) — функция класса tagoo_search_control и ее наследников (tagoo_audio_search_control, tagoo_video_search_control), где options — объект нужных значений для переопределения.

Язык

lang — допустимые значения: ru, en, de

Загрузка/перезагрузка

function onload — вызывается единожды при первой загрузке

function onload_args — аргументы передаваемые функции onload

function onreload — вызывается каждый раз при загрузке, кроме первой

function onreload_args — аргументы передаваемые функции onreload

Максимальная страница

int max_page — возможность запрета отображать слишком много страниц. Если max_page = 1, то постраничная навигация не отображается вовсе.

Количество элементов на страницу (аудио)

int on_page — количество отображаемых результатов на страницу ( 1<on_page<21 )

Количество строк и столбцов (видео)

int rows — строки
int cols — столбцы.

Подстановка случайного запроса

boolean auto_result — подстановка случайного запроса при попытке отправить пустой запрос. Стандартно — true

Стили

Свойство object styles содержащее объект

Пример
<script>
var audio = new tagoo_audio_search_control('tagoo_audio_block', '<key>');
var options = {
	on_page: 17, 
	onload: fir_load, 
	onreload: myonload, 
	auto_result: false
	};
audio.set_options(options);
audio.render('Prodigy');
var video = new tagoo_video_search_control('tagoo_video_block', '<key>');
var options = {
	cells: 1, 
	rows: 7, 
	max_page: 1,  
	onreload: myonload,
	lang: 'en',
	styles: {'link_color': '#00f'}
	};
video.set_options(options);
video.render('Ubuntu');
var myonload = function(){/*...*/}
</script>
<div id="tagoo_audio_block"></div>
<div id="tagoo_video_block"></div>

Настройка стилей

Стандартные цвета:

	// цвет текста
	text_color: '#6C6C6C',
	// цвет ссылок на mp3
	link_color: '#FD7C11',
	// цвет ссылок на страницы, где было найденно
	page_found_link_color: '#008800',
	// цвет цвет ссылок постраничной навигации
	pages_link_color: '#c1c1c1',
	// цвет текущей страницы
	pages_sel_link_color: '#FF9E00',
	// цвет ссылок постраничной навигации, при наведении
	pages_hover_link_color: '#fff',
	// цвет подсветки постраничной навигации, при наведении
	pages_hover_bg_link_color: '#FF9E00'

Вы можете переопределить любой из них, для этого вызовите метод set_options у объекта виджета и передайте ему параметр options

var options = {
	styles: {
		text_color: '#000',
		link_color: '#900'
		/*...и т.п.*/
	}
};

Дополнительные возожности

Вы вполне можете задавать стили с помощью обявлений тегов <style> или подключения внешних стилей с помощью <link>. Но нужно быть внимательным, так как стили заданные нами в наших виджитах "считаются важнее" ваших, и некоторым свойствам необходимо будет добавлять после определения значения "!important". Мы советуем всегда это делать.


Стиль кода

Соблюдаются следующие правила написания кода

  • стиле кодирования — C: нижний регистр, знак подчёркивания — разделитель в именах переменных, функций и т.д.
  • все объекты, методы и переменные имеют приставку "tagoo_"