/* =========================================================== * trumbowyg.noembed.js v1.0 * noEmbed plugin for Trumbowyg * http://alex-d.github.com/Trumbowyg * =========================================================== * Author : Jake Johns (jakejohns) */ (function ($) { 'use strict'; var defaultOptions = { proxy: 'https://noembed.com/embed?nowrap=on', urlFiled: 'url', data: [], success: undefined, error: undefined }; $.extend(true, $.trumbowyg, { langs: { // jshint camelcase:false en: { noembed: 'Noembed', noembedError: 'Error' }, da: { noembedError: 'Fejl' }, sk: { noembedError: 'Chyba' }, fr: { noembedError: 'Erreur' }, cs: { noembedError: 'Chyba' }, ru: { noembedError: 'Ошибка' }, ja: { noembedError: 'エラー' }, tr: { noembedError: 'Hata' }, zh_tw: { noembed: '插入影片', noembedError: '錯誤' }, pt_br: { noembed: 'Incorporar', noembedError: 'Erro' }, ko: { noembed: 'oEmbed 넣기', noembedError: '에러' }, // jshint camelcase:true }, plugins: { noembed: { init: function (trumbowyg) { trumbowyg.o.plugins.noembed = $.extend(true, {}, defaultOptions, trumbowyg.o.plugins.noembed || {}); var btnDef = { fn: function () { var $modal = trumbowyg.openModalInsert( // Title trumbowyg.lang.noembed, // Fields { url: { label: 'URL', required: true } }, // Callback function (data) { $.ajax({ url: trumbowyg.o.plugins.noembed.proxy, type: 'GET', data: data, cache: false, dataType: 'json', success: trumbowyg.o.plugins.noembed.success || function (data) { if (data.html) { trumbowyg.execCmd('insertHTML', data.html); setTimeout(function () { trumbowyg.closeModal(); }, 250); } else { trumbowyg.addErrorOnModalField( $('input[type=text]', $modal), data.error ); } }, error: trumbowyg.o.plugins.noembed.error || function () { trumbowyg.addErrorOnModalField( $('input[type=text]', $modal), trumbowyg.lang.noembedError ); } }); } ); } }; trumbowyg.addBtnDef('noembed', btnDef); } } } }); })(jQuery);