1 //<script type="text/javascript">
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
5 Pman.Tab.CmsTranslateTemplates = new Roo.XComponent({
6 part : ["Cms","TranslateTemplates"],
7 order : '800-Pman.Tab.CmsTranslateTemplates',
9 parent : 'Pman.Tab.Cms',
10 name : "Pman.Tab.CmsTranslateTemplates",
18 xtype: 'NestedLayoutPanel',
21 title : "Translate Templates",
23 xtype: 'BorderLayout',
30 render : function (_self)
32 _this.treepanel = _self;
44 click : function (_self, e)
46 Pman.Dialog.CmsLanguagePick.show( { }, function(lang) {
49 url : baseURL + '/Roo/cms_templatestr',
58 _this.treepanel.tree.getRootNode().reload();
73 click : function (_self, e)
75 var tree = _this.treepanel.tree;
76 var sn = tree.getSelectionModel().getSelectedNode();
77 if (!sn || sn.id.split('/').length > 1) {
78 Roo.MessageBox.alert("Error", "Select a language");
82 Roo.MessageBox.confirm("Confirm", "Are sure you want to delete the language", function (v){
86 Roo.MessageBox.alert("Not yet", "not done yet");
89 url : baseURL + '/Roo/cms_language.php',
92 _delete : _t.selectedNode.id
96 _this.treepanel.tree.getRootNode().reload();
97 //g.getDataSource().reload();
101 Roo.MessageBox.alert("Error",
102 "There was a problem saving the data - try reloading");
120 click : function (_self, e)
122 _this.treepanel.tree.getRootNode().reload();
133 containerScroll : false,
139 beforeload : function (This, node, callback)
143 this.baseParams._tree = 1;
145 //this.baseParams.category = node.attributes.category;
147 loadexception : function (This, node, response)
149 Roo.MessageBox.alert("Error", "Problem loading tree");
152 requestMethod : 'GET',
153 baseParams : { _tree : 1 },
154 dataUrl : baseURL + '/Roo/cms_templatestr'
157 xtype: 'AsyncTreeNode',
160 text : "Translations"
163 xtype: 'DefaultSelectionModel',
166 selectionchange : function (_self, node)
170 //if (node.id.split('/').length < 2) {
174 _this.grid.footer.onClick('first');
186 activate : function() {
189 _this.grid.footer.onClick('first');
206 //_this.dialog = Pman.Dialog.FILL_IN
207 if (_this.panel.active) {
208 this.footer.onClick('first');
209 // this.ds.onc.onClick('first');
212 rowdblclick : function (_self, rowIndex, e)
214 if (!_this.dialog) return;
215 _this.dialog.show( this.getDataSource().getAt(rowIndex).data, function() {
216 _this.grid.footer.onClick('first');
219 beforeedit : function (e)
221 if (e.record.data.src_id_txt.indexOf('<') > -1) {
222 // console.log("HTML EDITOR!!");
223 Pman.Dialog.CmsTranslateEditor.show(e.record);
227 var str=e.record.data.src_id_txt;
232 Pman.Dialog.CmsTranslateTemplates.show(e.record.data, function(v){
235 e.record.set('txt', v.txt);
239 Roo.MessageBox.prompt('WARNING', 'This text is with {TEMPLATE VARIABLE}, PLEASE BE CAREFUL EDITING. What\'s change? '+str, function(btn, text){
242 e.record.set('txt', text);
249 if (e.record.data.txt.replace(/\s+/, '').length) {
253 var tl = _this.treepanel.tree.getSelectionModel().getSelectedNode().parentNode.attributes.id;
256 tl = (tl == 'zh_HK') ? 'zh-TW' : tl;
258 if (tl == 'en' && !e.value.length) {
260 e.value = e.record.data.src_id_txt;
261 e.record.set('txt', e.record.data.src_id_txt);
265 Pman.GoogleTranslate(e.record.data.src_id_txt, "en", tl, function(result) {
267 _this.grid.activeEditor.setValue(result);
268 //console.log(result.translation);
275 afteredit : function (e)
280 autoExpandColumn : 'txt',
284 xtype: 'PagingToolbar',
287 displayMsg : "Displaying petition_entry{0} - {1} of {2}",
288 emptyMsg : "Not Found",
295 update : function (_self, rec, operation)
299 if (operation != 'commit') {
304 _this.grid.getView().el.mask("Saving");
306 url : baseURL + '/Roo/cms_templatestr',
314 _this.grid.getView().el.unmask();
315 //g.getDataSource().reload();
319 _this.grid.getView().el.unmask();
320 Roo.MessageBox.alert("Error", "There was a problem saving the data - try reloading");
326 beforeload : function (_self, o)
329 var sn = _this.treepanel.tree.getSelectionModel().getSelectedNode();
331 if (!sn) { // || (sn.id.split('/').length < 2)) {
333 _this.grid.ds.removeAll();
337 var ar = sn.attributes.id * 1;//.split('/');
340 o.params = o.params || {};
341 o.params.lang = sn.parentNode.attributes.id;
342 o.params.template_id = sn.attributes.id;
343 if(sn.attributes.on_table){
344 o.params.on_table = sn.attributes.on_table;
346 o.params.sort= 'src_id_txt';
347 o.params.dir = 'ASC';
351 sortInfo : { field : 'shortname', direction: 'ASC' },
356 url : baseURL + '/Roo/cms_templatestr.php'
363 totalProperty : 'total',
379 xtype: 'ColumnModel',
381 dataIndex : 'src_id_txt',
384 renderer : function(v,x,r) {
387 if (r.data.updated < r.data.src_id_origupdated) {
391 // return '<div style="color:'+c+'";>' +r.data.tableid + ':' + v + '</div>';
392 return String.format('<div style="color:'+c+'";>{0}</div>', v)
397 xtype: 'ColumnModel',
400 header : 'Translation',
402 renderer : function(v,x,r) {
405 if (r.data.updated < r.data.src_id_updated) {
409 // return '<div style="color:'+c+'";>' +r.data.tableid + ':' + v + '</div>';
410 return String.format('<div style="color:'+c+'";>{0}</div>', v)
428 xtype: 'LayoutRegion',
434 xtype: 'LayoutRegion',