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