scratch – Blame information for rev 125
?pathlinks?
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' |
||
125 | office | 57 | }, |
58 | ja: { |
||
59 | table: '表の挿入', |
||
60 | tableAddRow: '行の追加', |
||
61 | tableAddColumn: '列の追加', |
||
62 | rows: '行', |
||
63 | columns: '列', |
||
64 | styler: '表のクラス', |
||
65 | error: 'エラー' |
||
58 | office | 66 | } |
67 | }, |
||
68 | |||
69 | plugins: { |
||
70 | table: { |
||
71 | init: function (trumbowyg) { |
||
72 | trumbowyg.o.plugins.table = $.extend(true, {}, defaultOptions, trumbowyg.o.plugins.table || {}); |
||
73 | |||
74 | var tableBuild = { |
||
75 | fn: function () { |
||
76 | trumbowyg.saveRange(); |
||
77 | trumbowyg.openModalInsert( |
||
78 | // Title |
||
79 | trumbowyg.lang.table, |
||
80 | |||
81 | // Fields |
||
82 | { |
||
83 | rows: { |
||
84 | type: 'number', |
||
85 | required: true |
||
86 | }, |
||
87 | columns: { |
||
88 | type: 'number', |
||
89 | required: true |
||
90 | }, |
||
91 | styler: { |
||
92 | label: trumbowyg.lang.styler, |
||
93 | type: 'text' |
||
94 | } |
||
95 | }, |
||
96 | function (v) { // v is value |
||
97 | var tabler = $('<table></table>'); |
||
98 | if (v.styler.length !== 0) { |
||
99 | tabler.addClass(v.styler); |
||
100 | } |
||
101 | |||
102 | for (var i = 0; i < v.rows; i += 1) { |
||
103 | var row = $('<tr></tr>').appendTo(tabler); |
||
104 | for (var j = 0; j < v.columns; j += 1) { |
||
105 | $('<td></td>').appendTo(row); |
||
106 | } |
||
107 | } |
||
108 | |||
109 | trumbowyg.range.deleteContents(); |
||
110 | trumbowyg.range.insertNode(tabler[0]); |
||
111 | return true; |
||
112 | }); |
||
113 | } |
||
114 | }; |
||
115 | |||
116 | var addRow = { |
||
117 | fn: function () { |
||
118 | trumbowyg.saveRange(); |
||
119 | var rower = $('<tr></tr>'); |
||
120 | trumbowyg.range.deleteContents(); |
||
121 | trumbowyg.range.insertNode(rower[0]); |
||
122 | return true; |
||
123 | |||
124 | } |
||
125 | }; |
||
126 | |||
127 | var addColumn = { |
||
128 | fn: function () { |
||
129 | trumbowyg.saveRange(); |
||
130 | var columner = $('<td></td>'); |
||
131 | trumbowyg.range.deleteContents(); |
||
132 | trumbowyg.range.insertNode(columner[0]); |
||
133 | return true; |
||
134 | |||
135 | } |
||
136 | }; |
||
137 | |||
138 | trumbowyg.addBtnDef('table', tableBuild); |
||
139 | trumbowyg.addBtnDef('tableAddRow', addRow); |
||
140 | trumbowyg.addBtnDef('tableAddColumn', addColumn); |
||
141 | } |
||
142 | } |
||
143 | } |
||
144 | }); |
||
145 | })(jQuery); |