scratch – Blame information for rev 58

Subversion Repositories:
Rev:
Rev Author Line No. Line
58 office 1 /* ===========================================================
2 * trumbowyg.table.js v1.2
3 * Table plugin for Trumbowyg
4 * http://alex-d.github.com/Trumbowyg
5 * ===========================================================
6 * Author : Lawrence Meckan
7 * Twitter : @absalomedia
8 * Website : absalom.biz
9 */
10  
11 (function ($) {
12 'use strict';
13  
14 var defaultOptions = {
15 rows: 0,
16 columns: 0,
17 styler: ''
18 };
19  
20 $.extend(true, $.trumbowyg, {
21 langs: {
22 en: {
23 table: 'Insert table',
24 tableAddRow: 'Add rows',
25 tableAddColumn: 'Add columns',
26 rows: 'Rows',
27 columns: 'Columns',
28 styler: 'Table class',
29 error: 'Error'
30 },
31 sk: {
32 table: 'Vytvoriť tabuľky',
33 tableAddRow: 'Pridať riadok',
34 tableAddColumn: 'Pridať stĺpec',
35 rows: 'Riadky',
36 columns: 'Stĺpce',
37 styler: 'Tabuľku triedy',
38 error: 'Chyba'
39 },
40 fr: {
41 table: 'Insérer un tableau',
42 tableAddRow: 'Ajouter des lignes',
43 tableAddColumn: 'Ajouter des colonnes',
44 rows: 'Lignes',
45 columns: 'Colonnes',
46 styler: 'Classes CSS sur la table',
47 error: 'Erreur'
48 },
49 cs: {
50 table: 'Vytvořit příkaz Table',
51 tableAddRow: 'Přidat řádek',
52 tableAddColumn: 'Přidat sloupec',
53 rows: 'Řádky',
54 columns: 'Sloupce',
55 styler: 'Tabulku třída',
56 error: 'Chyba'
57 }
58 },
59  
60 plugins: {
61 table: {
62 init: function (trumbowyg) {
63 trumbowyg.o.plugins.table = $.extend(true, {}, defaultOptions, trumbowyg.o.plugins.table || {});
64  
65 var tableBuild = {
66 fn: function () {
67 trumbowyg.saveRange();
68 trumbowyg.openModalInsert(
69 // Title
70 trumbowyg.lang.table,
71  
72 // Fields
73 {
74 rows: {
75 type: 'number',
76 required: true
77 },
78 columns: {
79 type: 'number',
80 required: true
81 },
82 styler: {
83 label: trumbowyg.lang.styler,
84 type: 'text'
85 }
86 },
87 function (v) { // v is value
88 var tabler = $('<table></table>');
89 if (v.styler.length !== 0) {
90 tabler.addClass(v.styler);
91 }
92  
93 for (var i = 0; i < v.rows; i += 1) {
94 var row = $('<tr></tr>').appendTo(tabler);
95 for (var j = 0; j < v.columns; j += 1) {
96 $('<td></td>').appendTo(row);
97 }
98 }
99  
100 trumbowyg.range.deleteContents();
101 trumbowyg.range.insertNode(tabler[0]);
102 return true;
103 });
104 }
105 };
106  
107 var addRow = {
108 fn: function () {
109 trumbowyg.saveRange();
110 var rower = $('<tr></tr>');
111 trumbowyg.range.deleteContents();
112 trumbowyg.range.insertNode(rower[0]);
113 return true;
114  
115 }
116 };
117  
118 var addColumn = {
119 fn: function () {
120 trumbowyg.saveRange();
121 var columner = $('<td></td>');
122 trumbowyg.range.deleteContents();
123 trumbowyg.range.insertNode(columner[0]);
124 return true;
125  
126 }
127 };
128  
129 trumbowyg.addBtnDef('table', tableBuild);
130 trumbowyg.addBtnDef('tableAddRow', addRow);
131 trumbowyg.addBtnDef('tableAddColumn', addColumn);
132 }
133 }
134 }
135 });
136 })(jQuery);