Changeset 158
- Timestamp:
- 04/19/2009 10:49:55 PM (3 years ago)
- File:
-
- 1 edited
-
trunk/WordPress/plugin/transposh/js/transposh.js (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/WordPress/plugin/transposh/js/transposh.js
r157 r158 51 51 function getgt() 52 52 { 53 jQuery(":button:contains('Suggest - Google')").attr("disabled","disabled").addClass("ui-state-disabled"); 53 54 google.language.translate(jQuery("#tr_original").val(), "", transposh_params['lang'], function(result) { 54 if (!result.error) { 55 jQuery("#tr_translation").val(jQuery("<div>"+result.translation+"</div>").text()); 56 } 57 }); 55 if (!result.error) { 56 jQuery("#tr_translation").val(jQuery("<div>"+result.translation+"</div>").text()) 57 .keyup(); 58 } 59 }); 58 60 } 59 61 … … 181 183 }*/ 182 184 185 function confirm_close() { 186 jQuery('<div id="dial" title="Close without saving?"><p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span>You have made a change to the translation. Are you sure you want to discard it?</p></div>').appendTo("body").dialog({ 187 bgiframe: true, 188 resizable: false, 189 height:140, 190 modal: true, 191 overlay: { 192 backgroundColor: '#000', 193 opacity: 0.5 194 }, 195 buttons: { 196 'Discard': function() { 197 jQuery("#tr_translation").data("edit", { changed: false}); 198 jQuery(this).dialog('close'); 199 jQuery("#tabs").dialog('close'); 200 }, 201 Cancel: function() { 202 jQuery(this).dialog('close'); 203 } 204 } 205 }); 206 } 207 183 208 function translate_dialog(segment_id) { 184 209 jQuery("#tabs").remove(); … … 188 213 jQuery("#tabs").tabs('add',transposh_params['post_url']+'?tr_token_hist='+jQuery("#tr_" + segment_id).attr('token')+'&lang='+transposh_params['lang'],'History'); 189 214 jQuery("#tabs-1").append( 190 '<form >' +215 '<form id="tr_form">' + 191 216 '<fieldset>' + 192 217 '<label for="original">Original Text</label>' + 193 '< input type="text" name="original" id="tr_original" class="text ui-widget-content ui-corner-all" readonly="y"/>' +218 '<textarea cols="80" row="3" name="original" id="tr_original" class="text ui-widget-content ui-corner-all" readonly="y"/>' + 194 219 '<label for="translation">Translate To</label>' + 195 '< input type="text" name="translation" id="tr_translation" value="" class="text ui-widget-content ui-corner-all"/>' +220 '<textarea cols="80" row="3" name="translation" id="tr_translation" value="" class="text ui-widget-content ui-corner-all"/>' + 196 221 '</fieldset>' + 197 222 '</form>'); 198 223 jQuery("#tr_original").val(jQuery("#tr_img_" + segment_id).attr('title')); 199 224 jQuery("#tr_translation").val(jQuery("#tr_" + segment_id).html()); 225 jQuery("#tr_translation").data("edit", { changed: false}); 226 jQuery("#tr_translation").keyup(function(e){ 227 //alert(jQuery(this).val()); 228 //alert(jQuery("#tr_" + segment_id).text()); 229 if (jQuery("#tr_" + segment_id).text() != jQuery(this).val()) { 230 //if (e.which != 0) { 231 jQuery(this).css("background","yellow"); 232 jQuery(this).data("edit", { changed: true}); 233 } else { 234 jQuery(this).css("background",""); 235 jQuery(this).data("edit", { changed: false}); 236 } 237 }); 238 /*jQuery("#tr_translation").change(function(e){ 239 //alert(jQuery(this).val()); 240 //alert(jQuery("#tr_" + segment_id).text()); 241 //if (jQuery("#tr_" + segment_id).text() != jQuery(this).val()) { 242 jQuery(this).css("background","yellow"); 243 jQuery(this).data("edit", { changed: true}); 244 });*/ 200 245 jQuery("#tabs").css("text-align","left"); 201 246 jQuery("#tabs-1 label").css("display","block"); 202 jQuery("#tabs-1 input.text").css({'margin-bottom':'12px', 'width' : '95%', 'padding' : '.4em'});247 jQuery("#tabs-1 textarea.text").css({'margin-bottom':'12px', 'width' : '95%', 'padding' : '.4em'}); 203 248 jQuery("#tabs").bind('tabsload', function(event, ui) { 204 249 //TODO, formatting here, not server side … … 206 251 jQuery("table thead tr",ui.panel).addClass("ui-widget-header"); 207 252 }); 208 jQuery("#tabs").tabs().dialog({ 209 bgiframe: true, 210 modal: true, 211 width: 460, 212 buttons: { 213 Suggest: function() { 253 jQuery("#tabs").bind('tabsselect', function(event, ui) { 254 // Change buttons 255 if (jQuery(ui.tab).text() == 'Translate') { 256 jQuery("#tabs").dialog('option', 'buttons', tButtons); 257 } else { 258 jQuery("#tabs").dialog('option', 'buttons', hButtons); 259 } 260 }); 261 jQuery("#tabs").bind('dialogbeforeclose', function(event, ui) { 262 //alert(jQuery('#tr_translation').data("edit").changed); 263 if(jQuery('#tr_translation').data("edit").changed) { 264 confirm_close(); 265 return false; 266 } 267 }); 268 var tButtons = { 269 'Suggest - Google': function() { 214 270 getgt(); 215 271 }, 216 272 Ok: function() { 217 273 var translation = jQuery('#tr_translation').val(); 218 ajax_translate(original,translation,0,segment_id); 274 if(jQuery('#tr_translation').data("edit").changed) { 275 ajax_translate(jQuery("#tr_img_" + segment_id).attr('title'),translation,0,segment_id); 276 jQuery("#tr_translation").data("edit", { changed: false}); 277 } 219 278 jQuery(this).dialog('close'); 220 279 } 221 } 222 }).css("padding",0).dialog('open'); 280 }; 281 var hButtons = { 282 Close: function() { 283 jQuery(this).dialog('close'); 284 } 285 }; 286 jQuery("#tabs").tabs().dialog({ 287 bgiframe: true, 288 modal: true, 289 //width: 'auto', 290 width: 500, 291 buttons: tButtons 292 }).css("padding",0); 293 //if (!jQuery.support.boxModel) 294 // jQuery("#tabs").dialog('option', 'width', jQuery("#tabs fieldset").width()+50); 295 //alert(jQuery("#tabs fieldset").width()+50); 296 //alert(jQuery("#tabs").dialog('option', 'width')); 223 297 } 224 298
Note: See TracChangeset
for help on using the changeset viewer.
