Upgraded phpmyadmin to 4.0.4 (All Languages) - No modifications yet
[openemr.git] / phpmyadmin / js / rte.js
blobbd4a0e1948dd43880f02f22b7722168c422d389d
1 var RTE={object:function(a){$.extend(this,RTE.COMMON);switch(a){case"routine":$.extend(this,RTE.ROUTINE);break;case"trigger":break;case"event":$.extend(this,RTE.EVENT);break;default:break}},param_template:""};RTE.COMMON={$ajaxDialog:null,syntaxHiglighter:null,buttonOptions:{},validate:function(){var a=null;a=$("table.rte_table").last().find("input[name=item_name]");if(a.val()===""){a.focus();alert(PMA_messages.strFormEmpty);return false}a=$("table.rte_table").find("textarea[name=item_definition]");if(a.val()===""){if(this.syntaxHiglighter!==null){this.syntaxHiglighter.focus()}else{$("textarea[name=item_definition]").last().focus()}alert(PMA_messages.strFormEmpty);return false}return this.validateCustom()},validateCustom:function(){return true},postDialogShow:function(){},exportDialog:function(b){var a=PMA_ajaxShowMessage();$.get(b.attr("href"),{ajax_request:true},function(g){if(g.success===true){PMA_ajaxRemoveMessage(a);var e={};e[PMA_messages.strClose]=function(){$(this).dialog("close").remove()};var d=$("<div>"+g.message+"</div>").dialog({width:500,buttons:e,title:g.title});var c=d.find("textarea");var f={lineNumbers:true,matchBrackets:true,indentUnit:4,mode:"text/x-mysql"};CodeMirror.fromTextArea(c[0],f)}else{PMA_ajaxShowMessage(g.error,false)}})},editorDialog:function(e,c){var b=this;var d=null;if(c.hasClass("edit_anchor")){d=c.parents("tr")}var a=PMA_ajaxShowMessage();$.get(c.attr("href"),{ajax_request:true},function(h){if(h.success===true){PMA_ajaxRemoveMessage(a);b.buttonOptions[PMA_messages.strGo]=function(){if(typeof CodeMirror!="undefined"){b.syntaxHiglighter.save()}if(b.validate()){var k=$("form.rte_form").last().serialize();a=PMA_ajaxShowMessage(PMA_messages.strProcessingRequest);var j=$("form.rte_form").last().attr("action");$.post(j,k,function(n){if(n.success===true){PMA_ajaxRemoveMessage(a);PMA_slidingMessage(n.message);b.$ajaxDialog.dialog("close");if(i==="edit"){d.remove()}if(n.insert){var p="";var m=false;$("table.data").find("tr").each(function(){p=$(this).children("td").eq(0).find("strong").text().toUpperCase();p=$.trim(p);if(p!==""&&p>n.name){$(this).before(n.new_row);m=true;return false}});if(!m){$("table.data").append(n.new_row)}$("tr.ajaxInsert").show("slow").removeClass("ajaxInsert")}else{if($("table.data").find("tr").has("td").length===0){$("table.data").hide("slow",function(){$("#nothing2display").show("slow")})}}var l=0;var o="";$("table.data").find("tr").has("td").each(function(){o=(l%2===0)?"odd":"even";$(this).removeClass().addClass(o);l++});if($("table.data").find("tr").has("td").length>0&&$("#nothing2display").is(":visible")){$("#nothing2display").hide("slow",function(){$("table.data").show("slow")})}PMA_reloadNavigation()}else{PMA_ajaxShowMessage(n.error,false)}})}};b.buttonOptions[PMA_messages.strClose]=function(){$(this).dialog("close")};b.$ajaxDialog=$("<div>"+h.message+"</div>").dialog({width:700,minWidth:500,buttons:b.buttonOptions,title:h.title,modal:true,close:function(){$(this).remove()}});b.$ajaxDialog.find("input[name=item_name]").focus();b.$ajaxDialog.find("input.datefield, input.datetimefield").each(function(){PMA_addDatepicker($(this).css("width","95%"))});var i="add";if($("input[name=editor_process_edit]").length>0){i="edit"}var f=$("textarea[name=item_definition]").last();var g={lineNumbers:true,matchBrackets:true,indentUnit:4,mode:"text/x-mysql"};if(typeof CodeMirror!="undefined"){b.syntaxHiglighter=CodeMirror.fromTextArea(f[0],g)}b.postDialogShow(h)}else{PMA_ajaxShowMessage(h.error,false)}})},dropDialog:function(c){var b=c.parents("tr");var a=$("<div/>").text(b.children("td").children(".drop_sql").html());c.PMA_confirm(a,c.attr("href"),function(e){var d=PMA_ajaxShowMessage(PMA_messages.strProcessingRequest);$.get(e,{is_js_confirmed:1,ajax_request:true},function(g){if(g.success===true){var f=b.parent();if(f.find("tr").length===3){f.hide("slow",function(){$(this).find("tr.even, tr.odd").remove();$("#nothing2display").show("slow")})}else{b.hide("slow",function(){$(this).remove();var h=0;var i="";f.find("tr").has("td").each(function(){i=(h%2===0)?"odd":"even";$(this).removeClass().addClass(i);h++})})}PMA_ajaxRemoveMessage(d);PMA_slidingMessage(g.sql_query);PMA_reloadNavigation()}else{PMA_ajaxShowMessage(g.error,false)}})})}};RTE.EVENT={validateCustom:function(){var a=null;if(this.$ajaxDialog.find("select[name=item_type]").find(":selected").val()==="RECURRING"){a=this.$ajaxDialog.find("input[name=item_interval_value]");if(a.val()===""){a.focus();alert(PMA_messages.strFormEmpty);return false}}else{a=this.$ajaxDialog.find("input[name=item_execute_at]");if(a.val()===""){a.focus();alert(PMA_messages.strFormEmpty);return false}}return true}};RTE.ROUTINE={postDialogShow:function(b){RTE.param_template=b.param_template;var a=this;$("td.routine_param_remove").show();$("input[name=routine_removeparameter]").remove();$("input[name=routine_addparameter]").css("width","100%");$("table.routine_params_table").last().find("th[colspan=2]").attr("colspan","1");$("table.routine_params_table").last().find("tr").has("td").each(function(){a.setOptionsForParameter($(this).find("select[name^=item_param_type]"),$(this).find("input[name^=item_param_length]"),$(this).find("select[name^=item_param_opts_text]"),$(this).find("select[name^=item_param_opts_num]"))});this.setOptionsForParameter($("table.rte_table").last().find("select[name=item_returntype]"),$("table.rte_table").last().find("input[name=item_returnlength]"),$("table.rte_table").last().find("select[name=item_returnopts_text]"),$("table.rte_table").last().find("select[name=item_returnopts_num]"))},validateCustom:function(){var a=true;var c="";this.$ajaxDialog.find("table.routine_params_table").last().find("tr").each(function(){if(a){$(this).find(":input").each(function(){c=$(this).attr("name");if(c.substr(0,14)==="item_param_dir"||c.substr(0,15)==="item_param_name"||c.substr(0,15)==="item_param_type"){if($(this).val()===""){$(this).focus();a=false;return false}}})}else{return false}});if(!a){alert(PMA_messages.strFormEmpty);return false}this.$ajaxDialog.find("table.routine_params_table").last().find("tr").each(function(){var e=$(this).find("select[name^=item_param_type]");var f=$(this).find("input[name^=item_param_length]");if(e.length&&f.length){if((e.val()==="ENUM"||e.val()==="SET"||e.val().substr(0,3)==="VAR")&&f.val()===""){f.focus();a=false;return false}}});if(!a){alert(PMA_messages.strFormEmpty);return false}if(this.$ajaxDialog.find("select[name=item_type]").find(":selected").val()==="FUNCTION"){var b=this.$ajaxDialog.find("select[name=item_returntype]");var d=this.$ajaxDialog.find("input[name=item_returnlength]");if((b.val()==="ENUM"||b.val()==="SET"||b.val().substr(0,3)==="VAR")&&d.val()===""){d.focus();alert(PMA_messages.strFormEmpty);return false}}if($("select[name=item_type]").find(":selected").val()==="FUNCTION"){if(this.$ajaxDialog.find("table.rte_table").find("textarea[name=item_definition]").val().toUpperCase().indexOf("RETURN")<0){this.syntaxHiglighter.focus();alert(PMA_messages.MissingReturn);return false}}return true},setOptionsForParameter:function(b,c,e,d){var f=e.parent().parent().find(".no_opts");var a=c.parent().parent().find(".no_len");switch(b.val()){case"TINYINT":case"SMALLINT":case"MEDIUMINT":case"INT":case"BIGINT":case"DECIMAL":case"FLOAT":case"DOUBLE":case"REAL":e.parent().hide();d.parent().show();f.hide();break;case"TINYTEXT":case"TEXT":case"MEDIUMTEXT":case"LONGTEXT":case"CHAR":case"VARCHAR":case"SET":case"ENUM":e.parent().show();d.parent().hide();f.hide();break;default:e.parent().hide();d.parent().hide();f.show();break}switch(b.val()){case"DATE":case"DATETIME":case"TIME":case"TINYBLOB":case"TINYTEXT":case"BLOB":case"TEXT":case"MEDIUMBLOB":case"MEDIUMTEXT":case"LONGBLOB":case"LONGTEXT":e.closest("tr").find("a:first").hide();c.parent().hide();a.show();break;default:if(b.val()=="ENUM"||b.val()=="SET"){e.closest("tr").find("a:first").show()}else{e.closest("tr").find("a:first").hide()}c.parent().show();a.hide();break}},executeDialog:function(c){var b=this;var a=PMA_ajaxShowMessage();$.get(c.attr("href"),{ajax_request:true},function(d){if(d.success===true){PMA_ajaxRemoveMessage(a);if(d.dialog){b.buttonOptions[PMA_messages.strGo]=function(){var e=$("form.rte_form").last().serialize();a=PMA_ajaxShowMessage(PMA_messages.strProcessingRequest);$.post("db_routines.php",e,function(f){if(f.success===true){PMA_ajaxRemoveMessage(a);PMA_slidingMessage(f.message);$ajaxDialog.dialog("close")}else{PMA_ajaxShowMessage(f.error,false)}})};b.buttonOptions[PMA_messages.strClose]=function(){$(this).dialog("close")};$ajaxDialog=$("<div>"+d.message+"</div>").dialog({width:650,buttons:b.buttonOptions,title:d.title,modal:true,close:function(){$(this).remove()}});$ajaxDialog.find("input[name^=params]").first().focus();$ajaxDialog.find("input.datefield, input.datetimefield").each(function(){PMA_addDatepicker($(this).css("width","95%"))})}else{PMA_slidingMessage(d.message)}}else{PMA_ajaxShowMessage(d.error,false)}})}};$(function(){$("a.ajax.add_anchor, a.ajax.edit_anchor").live("click",function(c){c.preventDefault();var b=$(this).attr("href").substr(0,$(this).attr("href").indexOf("?"));if(b.indexOf("routine")!=-1){b="routine"}else{if(b.indexOf("trigger")!=-1){b="trigger"}else{if(b.indexOf("event")!=-1){b="event"}else{b=""}}}var a=new RTE.object(b);a.editorDialog($(this).hasClass("add_anchor"),$(this))});$("a.ajax.exec_anchor").live("click",function(b){b.preventDefault();var a=new RTE.object("routine");a.executeDialog($(this))});$("a.ajax.export_anchor").live("click",function(b){b.preventDefault();var a=new RTE.object();a.exportDialog($(this))});$("a.ajax.drop_anchor").live("click",function(b){b.preventDefault();var a=new RTE.object();a.dropDialog($(this))});$("select[name=item_type]").live("change",function(){$(this).closest("table").find("tr.recurring_event_row, tr.onetime_event_row, tr.routine_return_row, td.routine_direction_cell").toggle()});$("select[name^=item_param_type]").live("change",function(){var a=$(this).parents("tr").first();var b=new RTE.object("routine");b.setOptionsForParameter(a.find("select[name^=item_param_type]"),a.find("input[name^=item_param_length]"),a.find("select[name^=item_param_opts_text]"),a.find("select[name^=item_param_opts_num]"))});$("select[name=item_returntype]").live("change",function(){var b=new RTE.object("routine");var a=$(this).closest("table.rte_table");b.setOptionsForParameter(a.find("select[name=item_returntype]"),a.find("input[name=item_returnlength]"),a.find("select[name=item_returnopts_text]"),a.find("select[name=item_returnopts_num]"))});$("input[name=routine_addparameter]").live("click",function(b){b.preventDefault();var c=$(this).closest("div.ui-dialog").find(".routine_params_table");var d=RTE.param_template.replace(/%s/g,c.find("tr").length-1);c.append(d);if($(this).closest("div.ui-dialog").find("table.rte_table select[name=item_type]").val()==="FUNCTION"){$("tr.routine_return_row").show();$("td.routine_direction_cell").hide()}var e=$(this).closest("div.ui-dialog").find("table.routine_params_table").find("tr").has("td").last();var a=new RTE.object("routine");a.setOptionsForParameter(e.find("select[name^=item_param_type]"),e.find("input[name^=item_param_length]"),e.find("select[name^=item_param_opts_text]"),e.find("select[name^=item_param_opts_num]"))});$("a.routine_param_remove_anchor").live("click",function(b){b.preventDefault();$(this).parent().parent().remove();var a=0;$(this).closest("div.ui-dialog").find("table.routine_params_table").find("tr").has("td").each(function(){$(this).find(":input").each(function(){var c=$(this).attr("name");if(c.substr(0,14)==="item_param_dir"){$(this).attr("name",c.substr(0,14)+"["+a+"]")}else{if(c.substr(0,15)==="item_param_name"){$(this).attr("name",c.substr(0,15)+"["+a+"]")}else{if(c.substr(0,15)==="item_param_type"){$(this).attr("name",c.substr(0,15)+"["+a+"]")}else{if(c.substr(0,17)==="item_param_length"){$(this).attr("name",c.substr(0,17)+"["+a+"]");$(this).attr("id","item_param_length_"+a)}else{if(c.substr(0,20)==="item_param_opts_text"){$(this).attr("name",c.substr(0,20)+"["+a+"]")}else{if(c.substr(0,19)==="item_param_opts_num"){$(this).attr("name",c.substr(0,19)+"["+a+"]")}}}}}}});a++})})});