WordPress.org

Plugin Directory

Changeset 608939


Ignore:
Timestamp:
10/06/12 18:09:21 (19 months ago)
Author:
bainternet
Message:

added toolbar api, added file status notice, fixed file,dir creation, fixed file,plugin and theme download

Location:
advanced-code-editor/trunk
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • advanced-code-editor/trunk/advanced-code-editor.php

    r607876 r608939  
    44Plugin URI: http://en.bainternet.info 
    55Description: Enables syntax highlighting in the integrated themes and plugins source code editors with line numbers, AutoComplete and much more. Supports PHP, HTML, CSS and JS. 
    6 Version: 2.1.6 
     6Version: 2.2.0 
    77Author: BaInternet 
    88Author URI: http://en.bainternet.info 
     
    5757         * @var string 
    5858         */ 
    59         static $version = '2.1.5'; 
     59        static $version = '2.2.0'; 
    6060 
    6161        /** 
     
    6565            if( is_admin()){ 
    6666                $this->tablename = 'filemeta'; 
    67                 $this->version = '2.1.3'; 
     67                $this->version = '2.2.0'; 
    6868                //create new file admin ajax 
    6969                add_action('wp_ajax_create_file', array($this,'ajax_create_file')); 
     
    423423                wp_die('<p>'.__('You do not have sufficient permissions to edit files.').'</p>'); 
    424424            } 
    425             $file = get_query_var('dn_file'); 
     425            $file = get_query_var('dn_file');            
     426            $file = isset($file)? $file : (isset($_REQUEST['dn_file'])? $_REQUEST['dn_file'] : false); 
    426427            if (!isset($file)){ 
    427428                wp_die('<p>'.__('Error Downloading file.').'</p>');  
     
    429430            if ($from == 'plugin'){ 
    430431                $file = WP_PLUGIN_DIR .'/'.$file; 
    431             } 
     432            }else{ 
     433                $t = wp_get_theme($_REQUEST['tmf']); 
     434                if ( $t->exists() ){ 
     435                    $file = $t->get_stylesheet_directory(). '/' . $file;  
     436                }else{ 
     437                    wp_die('<p>'.__('Error Downloading file.').'</p>');  
     438                } 
     439            } 
     440             
    432441            if(file_exists($file)){ 
    433442                $content = file_get_contents($file); 
     
    443452                echo $content; 
    444453                exit; 
    445             } 
    446                 wp_die('<p>'.__('Error Downloading file.').'</p>');  
     454            }else{ 
     455                wp_die('<p>'.__('Error Downloading file.').'</p>'); 
     456            } 
    447457 
    448458        } 
     
    514524 
    515525            if (!$this->is_version('3.4.1')) 
    516                 $themes = wp_get_themes();//wp_get_themes(); 
     526                $themes = wp_get_themes(); 
    517527            else 
    518528                $themes = get_themes(); 
     
    723733            $options =  array_merge((array)$def,(array)$options); 
    724734            wp_localize_script('codemirror-complete', 'ace_user', $options); 
    725              
     735            $strings = array( 
     736                'imgURL' => $url . 'images/', 
     737                'url' => get_bloginfo('url'), 
     738                'unsaved' => __(' The Editor Contains unsaved changes','baace'), 
     739                'search' => __('Search','baace'), 
     740                'replace' => __('Replace','baace'), 
     741                'jump' => __('Jump To Line','baace'), 
     742                'fullscreen' => __('Full Screen Editor','baace'), 
     743                'savechanges' => __('Save Changes','baace'), 
     744                'commentout' => __('Comment Out','baace'), 
     745                'uncomment' => __('UnComment','baace'), 
     746                'autof' => __('Auto Format','baace'), 
     747                'changetheme' => __('Change editor theme:','baace'), 
     748                'newfile' => __('Create New File','baace'), 
     749                'deletefile' => __('Delete Current File','baace'), 
     750                'newdir' => __('Create New Directory','baace'), 
     751                'tooglefiletree' => __('Toggle File Tree','baace'), 
     752                'editorsettings' => __('Editor Settings','baace'), 
     753                'commitv' => __('Commit Version','baace'), 
     754                'restorev' => __('Restore Version','baace'), 
     755                'help' => __('Help','baace'), 
     756                'about' => __('About','baace'), 
     757                'searchboxtitle' => __('Search And Replace Box','baace'), 
     758                'searchbtitle' => __('Search Box','baace'), 
     759                'aboutboxtitle' => __('About WordPress Advanced Code Editor','baace'), 
     760                'jumpbox' => __('Jump to Line','baace'), 
     761                'jump' => __('Jump','baace'), 
     762                'save' => __('save','baace'), 
     763                'settingsbox' => __('Advanced Code Editor Settings','baace'), 
     764                'cancel' => __('Cancel','baace'), 
     765                'dirname' => __('Directory Name:','baace'), 
     766                'createDir' => __('Create Directory','baace'), 
     767                'create' => __('Create','baace'), 
     768                'newfilename' => __('File Name:','baace'), 
     769                'areyousure' => __('are you sure you want to delete this file: ','baace'), 
     770                'no' => __('No','baace'), 
     771                'yesimsure' => __('Yes I am sure!','baace'), 
     772                'close' => __('Close', 'baace'), 
     773                'filerevesiobox' => __('Advanced Code Editor File vesrsions','baace'), 
     774                'commit' => __('Commit','baace'), 
     775                'commitm'=> __('Commit Message','baace'), 
     776                'saveBox' => __('Save Box','baace'), 
     777                'autoclosein' => __('this Box will auto close in','baace'), 
     778                'seconds' => __('seconds','baace'), 
     779                'saving' => __('Saving Changes', 'baace'), 
     780                'creatingfile' => __('Creating New File','baace'), 
     781                'creatingdir' => __('Creating New Directory','baace'), 
     782                'deletingfile' => __('Deleting File','baace'), 
     783                'lastsaved' => __('File last Saved at: ','baace'), 
     784                'noChangesyet' => __('No Changes made yet.', 'baace'), 
     785                'downloadfile' => __('Download file','baace'), 
     786                'downloadtheme' => __('Download theme','baace'), 
     787                'downloadplugin' => __('Download Plugin','baace') 
     788            ); 
     789            wp_localize_script('codemirror-complete', 'ace_strings', $strings); 
     790            //nonces object 
     791            $nonces = array( 
     792                'ace_settings_panel' => wp_create_nonce( 'ace_settings_panel' ), 
     793                'revert_file' => wp_create_nonce('revert_file'), 
     794                'delete_version' => wp_create_nonce('delete_version'), 
     795                'delete_all' => wp_create_nonce('delete_all_versions'), 
     796                'ace_commit_file' => wp_create_nonce('ace_commit_file'), 
     797                'get_file_revisions' => wp_create_nonce('get_file_revisions'), 
     798                'delete_file' => wp_create_nonce( 'delete_file' ), 
     799                'create_directory' => wp_create_nonce('create_directory'), 
     800                'create_new_file' => wp_create_nonce('create_new_file'), 
     801            ); 
     802            wp_localize_script('codemirror-complete', 'ace_nonce', $nonces); 
     803            wp_enqueue_script('codemirror-baace',$url.'js/baace.js',array(),$v,true); 
    726804            //@todo: add tabbed editor 
    727805            //wp_enqueue_script('jquery-ui-tabs'); 
     
    745823             
    746824        } 
    747  
     825     
     826        /** 
     827         * This is the money function that adds the editor and all of the feature to it in the editor page. 
     828         */ 
    748829        function do_edit(){ 
    749830            $url = plugins_url()."/advanced-code-editor/";  
     
    762843            .CodeMirror {border: 1px solid #eee; overflow-y: hidden;overflow-x: auto;} 
    763844            .CodeMirror-scroll {overflow: auto;}  
    764              
     845            .ace_file_status{width: 45%;} 
    765846             <?php if (!is_rtl()){?> 
    766847 
     
    784865              <?php } ?> 
    785866            </style> 
    786             <?php /*scripts todo move to external file*/ ?> 
     867            <?php /* TODO: move scripts to external file*/ ?> 
    787868            <script> 
    788869                var lastPos = null, lastQuery = null, marked = []; 
     
    790871                var templateside = ''; 
    791872                templateside = jQuery("#templateside").html(); 
     873                 
    792874                jQuery(document).ready(function($) { 
    793                     //ajax save 
    794                    // attach handler to form's submit event  
     875                    // ajax save attach handler to form's submit event  
    795876                    $('#template').submit(function(){ 
    796                         // submit the form  
    797                         // prepare Options Object  
    798877                          var options = {  
    799878                              beforeSubmit:  BeforeSave, 
     
    804883                          return false;  
    805884                    }); 
    806  
    807885                    //add toolbar 
    808                        jQuery("#newcontent").after("<div class=\"ace\"><h3><?php _e('Advanced Code Editor','baace');?></h3><div class=\"s_r\"></div></div><div class=\"clean_ace\"></div>"); 
    809                        jQuery('.s_r').append('<ul class=\"ace_tool_bar\"><li><a class=\"tb_se\" id=\"ace_tool_s\" title=\"<?php _e('Search','baace');?>\"><img src=\"<?php echo $url; ?>images/z4Ulb.png\" alt=\"Search\"></a></li></ul>'); 
    810                        var toolbar = jQuery('.ace_tool_bar'); 
    811                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_sr\" title=\"<?php _e('Replace','baace');?>\"><img src=\"<?php echo $url; ?>images/1smMk.png\" alt=\"Replace\"></a><li>'); 
    812                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_jmp\" title=\"<?php _e('Jump To Line','baace');?>\"><img src=\"<?php echo $url; ?>images/rmic5.png\" alt=\"Jump To Line\"></a><li>'); 
    813                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_full\" title=\"<?php _e('Full Screen Editor','baace');?>\"><img src=\"<?php echo $url; ?>images/6NDPx.png\" alt=\"Full Screen Editor\"></a><li>'); 
    814                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_save\" title=\"<?php _e('Save Changes','baace');?>\"><img src=\"<?php echo $url; ?>images/suvnt.png\" alt=\"Save Changes\"></a><li>'); 
    815                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_comment\" title=\"<?php _e('Comment Out','baace');?>\"><img src=\"<?php echo $url; ?>images/94deB.png\" alt=\"Comment Out\"></a><li>'); 
    816                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_uncomment\" title=\"<?php _e('UnComment','baace');?>\"><img src=\"<?php echo $url; ?>images/UtMCm.png\" alt=\"UnComment\"></a><li>'); 
    817                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_af\" title=\"<?php _e('Auto Format','baace');?>\"><img src=\"<?php echo $url; ?>images/qTU1o.png\" alt=\"Auto Format\"></a><li>'); 
    818                         
    819                        toolbar.append('<li><?php _e('Change editor theme:','baace');?><select id=\"editortheme\" onchange=\"selectTheme(this.value)\"></select></li>'); 
    820                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_new_file\" title=\"<?php _e('Create New File','baace');?>\"><img src=\"<?php echo $url; ?>images/ZjkC3.png" alt=\"Create New File\"></a><li>'); 
    821                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_delete\" title=\"<?php _e('Delete Current File','baace');?>\"><img src=\"<?php echo $url; ?>images/3b5nW.png" alt=\"Delete Current File\"></a><li>'); 
    822                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_new_d\" title=\"<?php _e('Create New Directory','baace');?>\"><img src=\"<?php echo $url; ?>images/iAW16.png" alt=\"Create New Directory\"></a><li>'); 
    823                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_ftree\" title=\"<?php _e('Toggle File Tree','baace');?>\"><img src=\"<?php echo $url; ?>images/ADRSB.png" alt=\"Toggle File Tree\"></a><li>'); 
    824                         
    825                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_set_panel\" title=\"<?php _e('Editor Settings','baace');?>\"><img src=\"<?php echo $url; ?>images/zikHH.png" alt=\"Editor Settings\"></a><li>'); 
    826                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_set_commit\" title=\"<?php _e('Commit Version','baace');?>\"><img src=\"<?php echo $url; ?>images/hpJok.png" alt=\"Commit Version\"></a><li>'); 
    827                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_set_restore\" title=\"<?php _e('Restore Version','baace');?>\"><img src=\"<?php echo $url; ?>images/0jpaB.png" alt=\"Restore Version\"></a><li>'); 
    828                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_help\" title=\"<?php _e('Help','baace');?>\"><img src=\"<?php echo $url; ?>images/Y1xXZ.png\" alt=\"Help\"></a><li>'); 
    829                        toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_about\" title=\"<?php _e('About','baace');?>\"><img src=\"<?php echo $url; ?>images/Wwa3Z.png\" alt=\"About\"></a><li>'); 
    830                        toolbar.append('<iframe id="dframe" width="0" height="0" src=""></iframe>'); 
    831  
    832                      //set theme changer 
    833                       
    834                         var theme_coo = readCookie('adce_theme'); 
    835                         var tedi = jQuery('#editortheme'); 
    836                         if (theme_coo) { 
    837                            var theme_names = ["default", "night", "neat", "elegant", "raverStudio", "cobalt", "eclipse", "monokai", "rubyblue","solarizedLight", "solarizedDark"]; 
    838                            for(var i in theme_names){ 
    839                               if (theme_names[i] == theme_coo){ 
    840                              tedi.append('<option selected=\"selected\">'+theme_names[i]+'</option>'); 
    841                               }else{ 
    842                              tedi.append('<option>'+theme_names[i]+'</option>');            
    843                               } 
    844                            } 
    845                         }else{ 
    846                            tedi.append('<option selected=\"selected\">default</option>'); 
    847                            tedi.append('<option>night</option>'); 
    848                            tedi.append('<option>neat</option>'); 
    849                            tedi.append('<option>elegant</option>'); 
    850                            tedi.append('<option>raverStudio</option>'); 
    851                            tedi.append('<option>cobalt</option>'); 
    852                            tedi.append('<option>eclipse</option>'); 
    853                            tedi.append('<option>monokai</option>'); 
    854                            tedi.append('<option>rubyblue</option>'); 
    855                            tedi.append('<option>solarizedDark</option>'); 
    856                            tedi.append('<option>solarizedLight</option>'); 
    857                         } 
    858  
    859                         //tool Bar 
    860                         //Commit version 
    861                         jQuery('#ace_tool_set_commit').bind('click', function() { 
    862                             commit_file_version(); 
    863                         }); 
    864                          
    865                         //Restore version 
    866                         jQuery('#ace_tool_set_restore').bind('click', function() { 
    867                             load_version_list(); 
    868                         }); 
    869                          
    870                          
    871                         //toggle file tree button 
    872                         jQuery('#ace_tool_ftree').bind('click', function() { 
    873                             toggle_file_list_tree(); 
    874                         }); 
    875  
    876                          
    877                         //comment current selection 
    878                         jQuery('#ace_tool_comment').bind('click', function() { 
    879                             commentSelection(true); 
    880                         }); 
    881                          
    882                         //uncomment current selection 
    883                         jQuery('#ace_tool_uncomment').bind('click', function() { 
    884                             commentSelection(false); 
    885                         }); 
    886  
    887                         //auto Format 
    888                         jQuery('#ace_tool_af').bind('click', function() { 
    889                             autoFormatSelection(); 
    890                         }); 
    891  
    892                         //settings panel 
    893                         jQuery('#ace_tool_set_panel').bind('click', function() { 
    894                             var data = { 
    895                                 action: 'ace_settings_panel', 
    896                                 _ajax_nonce: '<?php echo wp_create_nonce( 'ace_settings_panel' ); ?>' 
    897                             }; 
    898                             jQuery.post(ajaxurl, data, function(response) { 
    899                                 jQuery('#update_Box').html('<div>' + response + '</div>'); 
    900                                 jQuery("#update_Box").dialog({ show: 'slide',hide: 'slide', title: '<?php _e('Advanced Code Editor Settings','baace');?>', buttons: [ 
    901                                     { 
    902                                         text: "<?php _e('Save','ace');?>", 
    903                                         click: function() { Save_settings(); } 
    904                                     }, 
    905                                     { 
    906                                         text: "<?php _e('Cancel','ace');?>", 
    907                                         click: function() { jQuery(this).dialog("close"); } 
    908                                     }, 
    909                                 ] });  
    910                             }); 
    911                         }); 
    912                          
    913  
    914                         //jump to lines 
    915                         jQuery('#ace_tool_jmp').bind('click', function() { 
    916                             jQuery("#jump_tbox").dialog({ focus: function(event, ui){jQuery('#jump_line_number').focus(); }, hide: 'slide',title: '<?php _e('Jump to Line','baace');?>', buttons: [ 
     886                    jQuery("#newcontent").after("<div class=\"ace\"><h3><?php _e('Advanced Code Editor','baace');?></h3><div class=\"s_r\"></div></div><div class=\"clean_ace\"></div>"); 
     887                    jQuery('.s_r').append('<ul class=\"ace_tool_bar\"></ul>'); 
     888                    var toolbar = jQuery('.ace_tool_bar'); 
     889                     
     890 
     891                    //Toolbar buttons 
     892                    //search 
     893                    addToolbarButton(null,"tb_se","ace_tool_s",ace_strings.search,"z4Ulb.png","Search",function() { 
     894                        show_dialog("#search",{ focus: function(event, ui){jQuery('#query').focus(); }, title: ace_strings.searchbtitle }); 
     895                    }); 
     896                    //search and replace 
     897                    addToolbarButton(null,"tb_re","ace_tool_sr",ace_strings.replace,"1smMk.png","Replace",function() { 
     898                        show_dialog("#searchR",{ title: ace_strings.searchboxtitle }); 
     899                    }); 
     900                    //jump to line 
     901                    addToolbarButton(null,"tb_re","ace_tool_jmp",ace_strings.jump,"rmic5.png","Jump To Line",function() { 
     902                        show_dialog("#jump_tbox",{ focus: function(event, ui){jQuery('#jump_line_number').focus(); }, title: ace_strings.jumpbox, buttons:  
     903                        [{text: ace_strings.jump,click: function() { jQuery(this).dialog("close"); Jump_to_Line(); },}]}); 
     904                    }); 
     905                    //toggle full screen 
     906                    addToolbarButton(null,"tb_re","ace_tool_full",ace_strings.fullscreen,"6NDPx.png","Full Screen Editor",function() { 
     907                        toggleFullscreenEditing(); 
     908                    }); 
     909                    //save button 
     910                    addToolbarButton(null,"tb_re","ace_tool_save",ace_strings.savechanges,"suvnt.png","Save Changes"); 
     911                    //comment current selection 
     912                    addToolbarButton(null,"tb_re","ace_tool_comment",ace_strings.commentout,"94deB.png","Comment Out",function() { 
     913                        commentSelection(true); 
     914                    }); 
     915                    //uncomment current selection 
     916                    addToolbarButton(null,"tb_re","ace_tool_uncomment",ace_strings.uncomment,"UtMCm.png","UnComment",function() { 
     917                        commentSelection(false); 
     918                    }); 
     919                    //auto Format 
     920                    addToolbarButton(null,"tb_re","ace_tool_af",ace_strings.autof,"qTU1o.png","Auto Format",function() { 
     921                        autoFormatSelection(); 
     922                    }); 
     923                    //change theme 
     924                    addToolbarButton('<li>'+ace_strings.changetheme+'<select id=\"editortheme\" onchange=\"selectTheme(this.value)\"></select></li>'); 
     925                    //new file 
     926                    addToolbarButton(null,"tb_re","ace_tool_new_file",ace_strings.newfile,"ZjkC3.png","Create New File",function(){ 
     927                        showNewFileDialog(); 
     928                    }); 
     929                    //delete file 
     930                    addToolbarButton(null,"tb_re","ace_tool_delete",ace_strings.deletefile,"3b5nW.png","Delete Current File",function(){ 
     931                        showDeleteFileDialog(); 
     932                    }); 
     933                    //new directory 
     934                    addToolbarButton(null,"tb_re","ace_tool_new_d",ace_strings.newdir,"iAW16.png","Create New Directory",function(){ 
     935                        showNewDirDialog(); 
     936                    }); 
     937                    //toggle file tree  
     938                    addToolbarButton(null,"tb_re","ace_tool_ftree",ace_strings.tooglefiletree,"ADRSB.png","Toggle File Tree",function() { 
     939                        toggle_file_list_tree(); 
     940                    }); 
     941                    //settings panel 
     942                    addToolbarButton(null,"tb_re","ace_tool_set_panel",ace_strings.editorsettings,"zikHH.png","Editor Settings",function(){ 
     943                        showSettingsPanel(); 
     944                    }); 
     945                    //Commit version 
     946                    addToolbarButton(null,"tb_re","ace_tool_set_commit",ace_strings.commitv,"hpJok.png","Commit Version",function() { 
     947                        commit_file_version(); 
     948                    }); 
     949                    //Restore version 
     950                    addToolbarButton(null,"tb_re","ace_tool_set_restore",ace_strings.restorev,"0jpaB.png","Restore Version",function() { 
     951                        load_version_list(); 
     952                    }); 
     953                    //help 
     954                    addToolbarButton(null,"tb_re","ace_tool_help",ace_strings.help,"Y1xXZ.png","Help",function() { 
     955                        show_dialog("#ace_help",{title: ace_strings.help }); 
     956                    }); 
     957                    //about 
     958                    addToolbarButton(null,"tb_re","ace_tool_about",ace_strings.about,"Wwa3Z.png","About",function() { 
     959                        show_dialog("#ace_about",{title: ace_strings.aboutboxtitle,width: 380 }); 
     960                    }); 
     961                    //hidden iframe for downloads 
     962                    addToolbarButton('<iframe id="dframe" width="0" height="0" src=""></iframe>'); 
     963 
     964                    //file status container 
     965                    jQuery('.s_r').after('<br /><div class="ace_file_status">'+ace_strings.noChangesyet+'</div>'); 
     966                 
     967                    //set theme changer 
     968                  
     969                    var theme_coo = readCookie('adce_theme'); 
     970                    var tedi = jQuery('#editortheme'); 
     971                    if (theme_coo) { 
     972                       var theme_names = ["default", "night", "neat", "elegant", "raverStudio", "cobalt", "eclipse", "monokai", "rubyblue","solarizedLight", "solarizedDark"]; 
     973                       for(var i in theme_names){ 
     974                          if (theme_names[i] == theme_coo){ 
     975                         tedi.append('<option selected=\"selected\">'+theme_names[i]+'</option>'); 
     976                          }else{ 
     977                         tedi.append('<option>'+theme_names[i]+'</option>');            
     978                          } 
     979                       } 
     980                    }else{ 
     981                       tedi.append('<option selected=\"selected\">default</option>'); 
     982                       tedi.append('<option>night</option>'); 
     983                       tedi.append('<option>neat</option>'); 
     984                       tedi.append('<option>elegant</option>'); 
     985                       tedi.append('<option>raverStudio</option>'); 
     986                       tedi.append('<option>cobalt</option>'); 
     987                       tedi.append('<option>eclipse</option>'); 
     988                       tedi.append('<option>monokai</option>'); 
     989                       tedi.append('<option>rubyblue</option>'); 
     990                       tedi.append('<option>solarizedDark</option>'); 
     991                       tedi.append('<option>solarizedLight</option>'); 
     992                    } 
     993                     
     994 
     995                    //tool Bar others 
     996                    //save toolbar button 
     997                    jQuery('#ace_tool_save').live('click', function() {jQuery('#submit').click();}); 
     998                     
     999                    //settings panel 
     1000                    function showSettingsPanel() { 
     1001                        aceAJAX({action: 'ace_settings_panel',_ajax_nonce: ace_nonce.ace_settings_panel }, function(r) { 
     1002                            jQuery('#update_Box').html('<div>' + r + '</div>'); 
     1003                            show_dialog("#update_Box",{ title: ace_strings.settingsbox, buttons: [ 
    9171004                                { 
    918                                     text: "<?php _e("Jump","baace");?>", 
    919                                     click: function() { jQuery(this).dialog("close"); Jump_to_Line(); }, 
    920                                 }]  
    921                                 }); 
    922                         }); 
    923                      
    924                         // search toolbar 
    925                         jQuery('#ace_tool_s').bind('click', function() { 
    926                            jQuery("#search").dialog({ focus: function(event, ui){jQuery('#query').focus(); }, hide: 'slide',title: '<?php _e('Search Box','baace');?>' }); 
    927                            // document.getElementById("query").focus(); 
    928                             
    929                         }); 
    930                         jQuery( "#search" ).bind( "dialogopen", function(event, ui) { 
    931                              jQuery('#query').focus();  
    932                          }); 
    933                           
    934                          jQuery('#query').live('keydown',function(e) { 
    935                              
    936                             if(e.keyCode == 13) { 
    937                                e.preventDefault(); 
    938                             jQuery("#ace_se").click(); 
    939                             } 
    940                           }); 
    941                         //new directory 
    942                         jQuery('#ace_tool_new_d').bind('click', function() { 
    943                             jQuery("#add_new_file").html('<form action="" method="POST" id="new_d_create"><p>Directory Name: <input type="text" id="di_name" name="di_name" value=""><br /></p></form>'); 
    944                             jQuery("#add_new_file").dialog({ show: 'slide',hide: 'slide',title: '<?php _e('Create Directory','baace');?>', buttons: [ 
    945                                 { 
    946                                     text: "<?php _e("Cancel","baace");?>", 
    947                                     click: function() { jQuery(this).dialog("close"); }, 
     1005                                    text: ace_strings.save, 
     1006                                    click: function() { Save_settings(); } 
    9481007                                }, 
    9491008                                { 
    950                                     text: "<?php _e("Create","baace");?>", 
    951                                     click: function() { ajax_create_directory(jQuery('#di_name').val()); } 
    952                                 } 
    953                                 ] }); 
     1009                                    text: ace_strings.cancel, 
     1010                                    click: function() { jQuery(this).dialog("close"); } 
     1011                                }, 
     1012                            ] });  
    9541013                        }); 
    955                         //new file toolbar 
    956                         jQuery('#ace_tool_new_file').bind('click', function() { 
    957                             jQuery("#add_new_file").html('<form action="" method="POST" id="new_F_create"><p> File Name: <input type="text" id="fi_name" name="fi_name" value=""></p></form>'); 
    958                             jQuery("#add_new_file").dialog({ show: 'slide',hide: 'slide',title: '<?php _e('Create A new File','baace');?>' , buttons: [ 
     1014                    } 
     1015 
     1016                    //new directory 
     1017                    function showNewDirDialog() { 
     1018                        jQuery("#add_new_file").html('<form action="" method="POST" id="new_d_create"><p>'+ace_strings.dirname+' <input type="text" id="di_name" name="di_name" value=""><br /></p></form>'); 
     1019                        show_dialog("#add_new_file",{ title: ace_strings.createDir, buttons: [ 
     1020                            { 
     1021                                text: ace_strings.cancel, 
     1022                                click: function() { jQuery(this).dialog("close"); }, 
     1023                            }, 
     1024                            { 
     1025                                text: ace_strings.create, 
     1026                                click: function() { ajax_create_directory(jQuery('#di_name').val()); } 
     1027                            } 
     1028                            ] }); 
     1029                    } 
     1030 
     1031                    //new file toolbar 
     1032                    function showNewFileDialog() { 
     1033                        jQuery("#add_new_file").html('<form action="" method="POST" id="new_F_create"><p> '+ace_strings.newfilename+' <input type="text" id="fi_name" name="fi_name" value=""></p></form>'); 
     1034                        show_dialog("#add_new_file",{ title: ace_strings.newfile , buttons: [ 
     1035                            { 
     1036                                text: ace_strings.cancel, 
     1037                                click: function() { jQuery(this).dialog("close"); }, 
     1038                            }, 
     1039                            { 
     1040                                text: ace_strings.create, 
     1041                                click: function() { create_new_file_callback(); } 
     1042                            } 
     1043                            ] }); 
     1044                    } 
     1045 
     1046                    //delete file toolbar 
     1047                    function showDeleteFileDialog() { 
     1048                        var f_type1 = ''; 
     1049                        if (jQuery('input[name="plugin"]').length){ 
     1050                            file_to_delete = jQuery('input[name="plugin"]').val(); 
     1051                            f_type1 = 'plugin'; 
     1052                        }else{ 
     1053                        //theme file 
     1054                            file_to_delete = jQuery('input[name="file"]').val(); 
     1055                            f_type1 = 'theme'; 
     1056                        } 
     1057                        jQuery("#add_new_file").html('<p>'+ ace_strings.areyousure+' ' + file_to_delete+'</p>'); 
     1058                        show_dialog("#add_new_file",{title: ace_strings.deletefile, buttons: [ 
     1059                            { 
     1060                                text: ace_strings.no, 
     1061                                click: function() { jQuery(this).dialog("close"); }, 
     1062                            }, 
     1063                            { 
     1064                                text: ace_strings.yesimsure, 
     1065                                click: function() { ajax_delete_file(file_to_delete,f_type1); } 
     1066                            } 
     1067                            ] });  
     1068                    } 
     1069                     
     1070                    //set focus on search 
     1071                    jQuery( "#search" ).bind( "dialogopen", function(event, ui) { 
     1072                         jQuery('#query').focus();  
     1073                    }); 
     1074                    //serch on enter key down  
     1075                    jQuery('#query').live('keydown',function(e) { 
     1076                         
     1077                        if(e.keyCode == 13) { 
     1078                           e.preventDefault(); 
     1079                        jQuery("#ace_se").click(); 
     1080                        } 
     1081                    });  
     1082                }); 
     1083 
     1084            //ajax roll back file 
     1085            jQuery('.rev_restore').live('click', function() { 
     1086                if (jQuery('input[name="theme"]').length) 
     1087                    dir = jQuery('input[name="theme"]').val() + "-" + get_file_name; 
     1088                else 
     1089                    dir = get_file_name; 
     1090                var data = { 
     1091                    action: 'revert_file', 
     1092                    _ajax_nonce: ace_nonce.revert_file, 
     1093                    mid: jQuery(this).attr('data-mid'), 
     1094                    filename: dir, 
     1095                    anti_cache: new Date().getTime() 
     1096                }; 
     1097                jQuery.getJSON(ajaxurl, data, function(res) { 
     1098                    if (res){ 
     1099                        if (res.error){ 
     1100                            jQuery('#update_Box').html('<div>' + res.error + '</div>'); 
     1101                            show_dialog("#update_Box",{ width: 350, title: ace_strings.filerevesiobox, buttons: [ 
    9591102                                { 
    960                                     text: "<?php _e("Cancel","baace");?>", 
    961                                     click: function() { jQuery(this).dialog("close"); }, 
     1103                                    text: ace_strings.close, 
     1104                                    click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
    9621105                                }, 
     1106                            ] });    
     1107                        } 
     1108 
     1109                        if (res.version){ 
     1110                            editor.setValue(res.version); 
     1111                            editor.refresh(); 
     1112                            jQuery('#update_Box').html('<div>' + res.m + '</div>'); 
     1113                            show_dialog("#update_Box",{ show: 'slide',hide: 'slide', width: 350, title: ace_strings.filerevesiobox, buttons: [ 
    9631114                                { 
    964                                     text: "<?php _e("Create","baace");?>", 
    965                                     click: function() { create_new_file_callback(); } 
    966                                 } 
    967                                 ] }); 
    968                         }); 
    969                         //delete file toolbar 
    970                         jQuery('#ace_tool_delete').bind('click', function() { 
    971                             var f_type1 = ''; 
    972                             if (jQuery('input[name="plugin"]').length){ 
    973                                 file_to_delete = jQuery('input[name="plugin"]').val(); 
    974                                 f_type1 = 'plugin'; 
    975                             }else{ 
    976                             //theme file 
    977                                 file_to_delete = jQuery('input[name="file"]').val(); 
    978                                 f_type1 = 'theme'; 
    979                             } 
    980                             jQuery("#add_new_file").html('<p>are you sure you want to delete this file: ' + file_to_delete); 
    981                             jQuery("#add_new_file").dialog({ show: 'slide',hide: 'slide',title: '<?php _e('Delete File','baace');?>', buttons: [ 
    982                                 { 
    983                                     text: "<?php _e("No","baace");?>", 
    984                                     click: function() { jQuery(this).dialog("close"); }, 
     1115                                    text: ace_strings.close, 
     1116                                    click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
    9851117                                }, 
    986                                 { 
    987                                     text: "<?php _e("YES I am Sure","baace");?>", 
    988                                     click: function() { ajax_delete_file(file_to_delete,f_type1); } 
    989                                 } 
    990                                 ] });  
    991                         }); 
    992                         //replace toolbar 
    993                         jQuery('#ace_tool_sr').bind('click', function() { 
    994                            jQuery("#searchR").dialog({ show: 'slide',hide: 'slide',title: '<?php _e('Search And Replace Box','baace');?>' }); 
    995                         }); 
    996                         //fullscreen toolbar button 
    997                         jQuery('#ace_tool_full').bind('click', function() { 
    998                            toggleFullscreenEditing(); 
    999                         }); 
    1000                         //save toolbar button 
    1001                         jQuery('#ace_tool_save').live('click', function() { 
    1002                            jQuery('#submit').click(); 
    1003                         }); 
    1004  
    1005                         //help toolbar 
    1006                         jQuery('#ace_tool_help').bind('click', function() { 
    1007                            jQuery("#ace_help").dialog({show: 'slide',hide: 'slide', title: '<?php _e('Help','baace');?>' }); 
    1008                         }); 
    1009  
    1010                         //about toolbar 
    1011                         jQuery('#ace_tool_about').bind('click', function() { 
    1012                            jQuery("#ace_about").dialog({show: 'slide',hide: 'slide', title: '<?php _e('About WordPress Advanced Code Editor','baace');?>',width: 380 }); 
    1013                         });              
    1014                 }); 
    1015  
    1016                 //ajax roll back file 
    1017                 jQuery('.rev_restore').live('click', function() { 
    1018                     if (jQuery('input[name="theme"]').length) 
    1019                         dir = jQuery('input[name="theme"]').val() + "-" + get_file_name; 
    1020                     else 
    1021                         dir = get_file_name; 
    1022                     var data = { 
    1023                         action: 'revert_file', 
    1024                         _ajax_nonce: '<?php echo wp_create_nonce('revert_file');?>', 
    1025                         mid: jQuery(this).attr('data-mid'), 
    1026                         filename: dir, 
    1027                         anti_cache: new Date().getTime() 
    1028  
    1029                     }; 
    1030                     jQuery.getJSON(ajaxurl, data, function(res) { 
    1031                         if (res){ 
    1032                             if (res.error){ 
    1033                                 jQuery('#update_Box').html('<div>' + res.error + '</div>'); 
    1034                                 jQuery("#update_Box").dialog({ show: 'slide',hide: 'slide', width: 350, title: '<?php _e('Advanced Code Editor File vesrsions','baace');?>', buttons: [ 
    1035                                     { 
    1036                                         text: "<?php _e('Close','ace');?>", 
    1037                                         click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
    1038                                     }, 
    1039                                 ] });    
    1040                             } 
    1041  
    1042                             if (res.version){ 
    1043                                 editor.setValue(res.version); 
    1044                                 editor.refresh(); 
    1045                                 jQuery('#update_Box').html('<div>' + res.m + '</div>'); 
    1046                                 jQuery("#update_Box").dialog({ show: 'slide',hide: 'slide', width: 350, title: '<?php _e('Advanced Code Editor File vesrsions','baace');?>', buttons: [ 
    1047                                     { 
    1048                                         text: "<?php _e('Close','ace');?>", 
    1049                                         click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
    1050                                     }, 
    1051                                 ] });  
    1052                             } 
     1118                            ] });  
    10531119                        } 
    1054                     }); 
    1055                 }); 
    1056                  
    1057                  
    1058                 //delete file version 
    1059                 jQuery('.rev_delete').live('click', function() { 
    1060                     if (jQuery('input[name="theme"]').length) 
    1061                         dir = jQuery('input[name="theme"]').val() + "-" + get_file_name; 
    1062                     else 
    1063                         dir = get_file_name; 
    1064                     var data = { 
    1065                         action: 'delete_version', 
    1066                         _ajax_nonce: '<?php echo wp_create_nonce('delete_version');?>', 
    1067                         mid: jQuery(this).attr('data-mid'), 
    1068                         filename: dir, 
    1069                         anti_cache: new Date().getTime() 
    1070  
    1071                     }; 
    1072                     jQuery.post(ajaxurl, data, function(response) { 
    1073                         jQuery('#update_Box').html('<div>' + response + '</div>'); 
    1074                         jQuery("#update_Box").dialog({ show: 'slide',hide: 'slide', width: 400, title: '<?php _e('Advanced Code Editor File vesrsions','baace');?>', buttons: [ 
    1075                             { 
    1076                                 text: "<?php _e('Close','ace');?>", 
    1077                                 click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
    1078                             }, 
    1079                         ] });  
    1080                     }); 
    1081                 });              
    1082  
    1083                 //delete all file versions 
    1084                 jQuery('.deleta_all_meta').live('click', function() { 
    1085                     if (jQuery('input[name="theme"]').length) 
    1086                         dir = jQuery('input[name="theme"]').val() + "-" + get_file_name; 
    1087                     else 
    1088                         dir = get_file_name; 
    1089                     var data = { 
    1090                         action: 'delete_all_versions', 
    1091                         _ajax_nonce: '<?php echo wp_create_nonce('delete_all_versions');?>', 
    1092                         filename: dir, 
    1093                         anti_cache: new Date().getTime() 
    1094  
    1095                     }; 
    1096                     jQuery.post(ajaxurl, data, function(response) { 
    1097                         jQuery('#update_Box').html('<div>' + response + '</div>'); 
    1098                         jQuery("#update_Box").dialog({ show: 'slide',hide: 'slide', width: 400, title: '<?php _e('Advanced Code Editor File vesrsions','baace');?>', buttons: [ 
    1099                             { 
    1100                                 text: "<?php _e('Close','ace');?>", 
    1101                                 click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
    1102                             }, 
    1103                         ] });  
    1104                     }); 
    1105                 });              
    1106                  
    1107                 //ajax commit version 
    1108                 function commit_file_version(){ 
    1109                     jQuery("#add_new_file").html('<div class="ace_commit_version"><div class="commit_filds"><p><label for="commit_message"><?php _e('Commit message','ace'); ?><br/><textarea id="commit_message" name="commit_message"></textarea></label></p></div></div>'); 
    1110                     jQuery("#add_new_file").dialog({ show: 'slide',hide: 'slide',title: '<?php _e('Commit File Version','baace');?>', buttons: [ 
     1120                    } 
     1121                }); 
     1122            }); 
     1123                             
     1124            //delete file version 
     1125            jQuery('.rev_delete').live('click', function() { 
     1126                if (jQuery('input[name="theme"]').length) 
     1127                    dir = jQuery('input[name="theme"]').val() + "-" + get_file_name; 
     1128                else 
     1129                    dir = get_file_name; 
     1130                var data = { 
     1131                    action: 'delete_version', 
     1132                    _ajax_nonce: ace_nonce.delete_version, 
     1133                    mid: jQuery(this).attr('data-mid'), 
     1134                    filename: dir, 
     1135                    anti_cache: new Date().getTime() 
     1136 
     1137                }; 
     1138                aceAJAX(data, function(response) { 
     1139                    jQuery('#update_Box').html('<div>' + response + '</div>'); 
     1140                    show_dialog("#update_Box",{ width: 400, title: ace_strings.filerevesiobox, buttons: [ 
    11111141                        { 
    1112                             text: "<?php _e("Cancel","baace");?>", 
    1113                             click: function() { jQuery(this).dialog("close"); }, 
     1142                            text: ace_strings.close, 
     1143                            click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
    11141144                        }, 
     1145                    ] });  
     1146                }); 
     1147            });              
     1148 
     1149            //delete all file versions 
     1150            jQuery('.deleta_all_meta').live('click', function() { 
     1151                if (jQuery('input[name="theme"]').length) 
     1152                    dir = jQuery('input[name="theme"]').val() + "-" + get_file_name; 
     1153                else 
     1154                    dir = get_file_name; 
     1155                var data = { 
     1156                    action: 'delete_all_versions', 
     1157                    _ajax_nonce: ace_nonce.delete_all, 
     1158                    filename: dir, 
     1159                    anti_cache: new Date().getTime() 
     1160                }; 
     1161                aceAJAX(data, function(response) { 
     1162                    jQuery('#update_Box').html('<div>' + response + '</div>'); 
     1163                    show_dialog("#update_Box",{ width: 400, title: ace_strings.filerevesiobox, buttons: [ 
    11151164                        { 
    1116                             text: "<?php _e("Commit","baace");?>", 
    1117                             click: function() { jQuery(this).dialog('close'); do_file_commit(); } 
     1165                            text: ace_strings.close, 
     1166                            click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
     1167                        }, 
     1168                    ] });  
     1169                }); 
     1170            });              
     1171             
     1172            //ajax commit version 
     1173            function commit_file_version(){ 
     1174                jQuery("#add_new_file").html('<div class="ace_commit_version"><div class="commit_filds"><p><label for="commit_message">' + ace_strings.commitm + '<br/><textarea id="commit_message" name="commit_message"></textarea></label></p></div></div>'); 
     1175                show_dialog("#add_new_file",{title: ace_strings.commitv, buttons: [ 
     1176                    { 
     1177                        text: ace_strings.cancel, 
     1178                        click: function() { jQuery(this).dialog("close"); }, 
     1179                    }, 
     1180                    { 
     1181                        text: ace_strings.commit, 
     1182                        click: function() { jQuery(this).dialog('close'); do_file_commit(); } 
     1183                    } 
     1184                    ]  
     1185                }); 
     1186            } 
     1187 
     1188            //actuall ajax file commit call 
     1189            function do_file_commit(){ 
     1190                if (jQuery('input[name="theme"]').length) 
     1191                    dir = jQuery('input[name="theme"]').val() + "-" + get_file_name; 
     1192                else 
     1193                    dir = get_file_name; 
     1194                var data = { 
     1195                    action: 'commit_file', 
     1196                    _ajax_nonce: ace_nonce.ace_commit_file, 
     1197                    filename: dir, 
     1198                    message: jQuery("#commit_message").val(), 
     1199                    file_content: editor.getValue(), 
     1200                    anti_cache: new Date().getTime() 
     1201 
     1202                }; 
     1203                aceAJAX(data, function(response) { 
     1204                    jQuery('#update_Box').html('<div>' + response + '</div>'); 
     1205                    show_dialog("#update_Box",{ title: ace_strings.filerevesiobox, buttons: [ 
     1206                        { 
     1207                            text: ace_strings.close, 
     1208                            click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
     1209                        }, 
     1210                    ] });  
     1211                }); 
     1212            } 
     1213 
     1214            //get version list 
     1215            function load_version_list(){ 
     1216                if (jQuery('input[name="theme"]').length) 
     1217                    dir = jQuery('input[name="theme"]').val() + "-" + get_file_name; 
     1218                else 
     1219                    dir = get_file_name; 
     1220                var data = { 
     1221                    action: 'get_file_revisions', 
     1222                    _ajax_nonce: ace_nonce.get_file_revisions, 
     1223                    filename: dir, 
     1224                    anti_cache: new Date().getTime() 
     1225                }; 
     1226                aceAJAX(data, function(response) { 
     1227                    jQuery('#update_Box').html('<div>' + response + '</div>'); 
     1228                    show_dialog("#update_Box",{minWidth: 400,  title: ace_strings.filerevesiobox, buttons: [ 
     1229                        { 
     1230                            text: ace_strings.close, 
     1231                            click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
    11181232                        } 
    1119                         ]  
    1120                     }); 
     1233                    ] });  
     1234                }); 
     1235            } 
     1236 
     1237            //toggle file tree on off 
     1238            function toggle_file_list_tree(){ 
     1239                var temp = jQuery("#templateside").html(); 
     1240                jQuery("#templateside").html(templateside); 
     1241                templateside = temp; 
     1242            } 
     1243 
     1244            //Javascript isset 
     1245            function isset(varname) { 
     1246                if(typeof( window[ varname ] ) != "undefined") return true; 
     1247                else return false; 
     1248            } 
     1249 
     1250            //save settings 
     1251            function Save_settings(){ 
     1252                var data = { 
     1253                    action: 'ace_save_settings', 
     1254                    _ajax_nonce: jQuery("#save_options_nonce").val(), 
     1255                    use_file_tree: jQuery("#use_file_tree").is(":checked")? jQuery("#use_file_tree").val() : 'null', 
     1256                    matchBrackets: jQuery("#matchBrackets").is(":checked")? jQuery("#matchBrackets").val() : 'null', 
     1257                    lineWrapping: jQuery("#lineWrapping").is(":checked")? jQuery("#lineWrapping").val() : 'null', 
     1258                    tabSize: jQuery("#tabSize").val(), 
     1259                    indentUnit: jQuery("#indentUnit").val() 
     1260                }; 
     1261                aceAJAX(data, function(response) { 
     1262                    jQuery('#update_Box').html('<div>' + response + '</div>'); 
     1263                    show_dialog("#update_Box",{ title: ace_strings.settingsbox, buttons: [ 
     1264                        { 
     1265                            text: ace_strings.close, 
     1266                            click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
     1267                        }, 
     1268                    ] });  
     1269                }); 
     1270            } 
     1271 
     1272            //delete file 
     1273            function ajax_delete_file(file_to_delete,f_type1){ 
     1274                jQuery('#add_new_file').html('<p style="text-align:center;">'+ ace_strings.deletingfile +' ...<br/><img src="'+ace_strings.imgURL+'GRZ9W.gif"></p>'); 
     1275                var data = { 
     1276                    action: 'delete_file', 
     1277                    f_type: f_type1, 
     1278                    F_T_D: file_to_delete, 
     1279                    _ajax_nonce: ace_nonce.delete_file 
     1280                }; 
     1281                aceAJAX(data, function(response) { 
     1282                    jQuery(".ui-dialog-content").dialog("close"); 
     1283                    jQuery('#add_new_file').dialog( "destroy" ); 
     1284                    jQuery('#update_Box').html('<div>' + response + '</div>'); 
     1285                    show_dialog("#update_Box",{title: ace_strings.deletefile, buttons: [ 
     1286                        { 
     1287                            text: ace_strings.close, 
     1288                            click: function() { jQuery(this).dialog("close"); } 
     1289                        } 
     1290                    ] });  
     1291                }); 
     1292            } 
     1293 
     1294            //create new directory 
     1295            function ajax_create_directory(di_name){ 
     1296                jQuery('#add_new_file').html('<p style="text-align:center;">'+ ace_strings.creatingdir +' ...<br/><img src="'+ace_strings.imgURL+'GRZ9W.gif"></p>'); 
     1297                var plugin_meta = new Array(); 
     1298                var f_type2 = ''; 
     1299                //plugin file 
     1300                if (jQuery('input[name="plugin"]').length){ 
     1301                    plugin_meta = jQuery('input[name="plugin"]').val().split('/'); 
     1302                    var plugin_dir = plugin_meta[0]; 
     1303                    var dirs = plugin_meta.length - 1; 
     1304                    for(i=1; i < dirs; i++) {  
     1305                        plugin_dir = plugin_dir + '/' + plugin_meta[i]; 
     1306                    } 
     1307                    f_type2 = 'plugin'; 
     1308                }else{ 
     1309                    //theme file 
     1310                    plugin_dir = theme_to_download; 
     1311                    f_type2 = 'theme'; 
    11211312                } 
    11221313 
    1123                 //actuall ajax file commit call 
    1124                 function do_file_commit(){ 
    1125                     if (jQuery('input[name="theme"]').length) 
    1126                         dir = jQuery('input[name="theme"]').val() + "-" + get_file_name; 
    1127                     else 
    1128                         dir = get_file_name; 
    1129                     var data = { 
    1130                         action: 'commit_file', 
    1131                         _ajax_nonce: '<?php echo wp_create_nonce('ace_commit_file');?>', 
    1132                         filename: dir, 
    1133                         message: jQuery("#commit_message").val(), 
    1134                         file_content: editor.getValue(), 
    1135                         anti_cache: new Date().getTime() 
    1136  
    1137                     }; 
    1138                     jQuery.post(ajaxurl, data, function(response) { 
    1139                         jQuery('#update_Box').html('<div>' + response + '</div>'); 
    1140                         jQuery("#update_Box").dialog({ show: 'slide',hide: 'slide', title: '<?php _e('Advanced Code Editor File vesrsions','baace');?>', buttons: [ 
    1141                             { 
    1142                                 text: "<?php _e('Close','ace');?>", 
    1143                                 click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
    1144                             }, 
    1145                         ] });  
    1146                     }); 
    1147                 } 
    1148  
    1149                 //get version list 
    1150                 function load_version_list(){ 
    1151                     if (jQuery('input[name="theme"]').length) 
    1152                         dir = jQuery('input[name="theme"]').val() + "-" + get_file_name; 
    1153                     else 
    1154                         dir = get_file_name; 
    1155                     var data = { 
    1156                         action: 'get_file_revisions', 
    1157                         _ajax_nonce: '<?php echo wp_create_nonce('get_file_revisions');?>', 
    1158                         filename: dir, 
    1159                         anti_cache: new Date().getTime() 
    1160                     }; 
    1161                     jQuery.post(ajaxurl, data, function(response) { 
    1162                         jQuery('#update_Box').html('<div>' + response + '</div>'); 
    1163                         jQuery("#update_Box").dialog({ show: 'slide',minWidth: 400, hide: 'slide', title: '<?php _e('Advanced Code Editor File vesrsions','baace');?>', buttons: [ 
    1164                             { 
    1165                                 text: "<?php _e('Close','ace');?>", 
    1166                                 click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
    1167                             } 
    1168                         ] });  
    1169                     }); 
    1170                 } 
    1171  
    1172                 //toggle file tree on off 
    1173                 function toggle_file_list_tree(){ 
    1174                     var temp = jQuery("#templateside").html(); 
    1175                     jQuery("#templateside").html(templateside); 
    1176                     templateside = temp; 
    1177                 } 
    1178  
    1179                 //Javascript isset 
    1180                 function isset(varname) { 
    1181                     if(typeof( window[ varname ] ) != "undefined") return true; 
    1182                     else return false; 
    1183                 } 
    1184  
    1185                 //save settings 
    1186                 function Save_settings(){ 
    1187                     var data = { 
    1188                         action: 'ace_save_settings', 
    1189                         _ajax_nonce: jQuery("#save_options_nonce").val(), 
    1190                         use_file_tree: jQuery("#use_file_tree").is(":checked")? jQuery("#use_file_tree").val() : 'null', 
    1191                         matchBrackets: jQuery("#matchBrackets").is(":checked")? jQuery("#matchBrackets").val() : 'null', 
    1192                         lineWrapping: jQuery("#lineWrapping").is(":checked")? jQuery("#lineWrapping").val() : 'null', 
    1193                         tabSize: jQuery("#tabSize").val(), 
    1194                         indentUnit: jQuery("#indentUnit").val() 
    1195  
    1196                     }; 
    1197                     jQuery.post(ajaxurl, data, function(response) { 
    1198                         jQuery('#update_Box').html('<div>' + response + '</div>'); 
    1199                         jQuery("#update_Box").dialog({ show: 'slide',hide: 'slide', title: '<?php _e('Advanced Code Editor Settings','baace');?>', buttons: [ 
    1200                             { 
    1201                                 text: "<?php _e('Close','ace');?>", 
    1202                                 click: function() { jQuery('#update_Box').html(''); jQuery('#update_Box').dialog("close");} 
    1203                             }, 
    1204                         ] });  
    1205                     }); 
    1206                 } 
    1207                 //action buttons 
    1208                 //delete file 
    1209                 function ajax_delete_file(file_to_delete,f_type1){ 
    1210                     jQuery('#add_new_file').html('<p style="text-align:center;">Deleting File ...<br/><img src="<?php echo $url; ?>images/GRZ9W.gif"></p>'); 
    1211                     var data = { 
    1212                         action: 'delete_file', 
    1213                         f_type: f_type1, 
    1214                         F_T_D: file_to_delete, 
    1215                         _ajax_nonce: '<?php echo wp_create_nonce( 'delete_file' ); ?>' 
    1216                     }; 
    1217                     jQuery.post(ajaxurl, data, function(response) { 
    1218                         //alert('Got this from the server: ' + response); 
    1219                         jQuery(".ui-dialog-content").dialog("close"); 
    1220                         jQuery('#add_new_file').dialog( "destroy" ); 
    1221                         jQuery('#update_Box').html('<div>' + response + '</div>'); 
    1222                         jQuery("#update_Box").dialog({ show: 'slide',hide: 'slide', title: '<?php _e('Create A new File','baace');?>', buttons: [ 
    1223                             { 
    1224                                 text: "Ok", 
    1225                                 click: function() { jQuery(this).dialog("close"); } 
    1226                             } 
    1227                         ] });  
    1228                     }); 
    1229                 } 
    1230                 //create new directory 
    1231                 function ajax_create_directory(di_name){ 
    1232                     jQuery('#add_new_file').html('<p style="text-align:center;">Creating New Directory ...<br/><img src="<?php echo $url; ?>images/GRZ9W.gif"></p>'); 
    1233                     var plugin_meta = new Array(); 
    1234                     var f_type2 = ''; 
    1235                     //plugin file 
    1236                     if (jQuery('input[name="plugin"]').length){ 
    1237                         plugin_meta = jQuery('input[name="plugin"]').val().split('/'); 
    1238                         var plugin_dir = plugin_meta[0]; 
    1239                         var dirs = plugin_meta.length - 1; 
    1240                         for(i=1; i < dirs; i++) {  
    1241                             plugin_dir = plugin_dir + '/' + plugin_meta[i]; 
     1314                var data = { 
     1315                    action: 'create_directory', 
     1316                    dir: plugin_dir, 
     1317                    f_type: f_type2, 
     1318                    di_name: di_name, 
     1319                    _ajax_nonce: ace_nonce.create_directory 
     1320                }; 
     1321                aceAJAX(data, function(response) { 
     1322                    jQuery(".ui-dialog-content").dialog("close"); 
     1323                    jQuery('#add_new_file').dialog( "destroy" ); 
     1324                    jQuery('#update_Box').html('<div>' + response + '</div>'); 
     1325                    show_dialog("#update_Box",{title: ace_strings.newdir, buttons: [ 
     1326                        { 
     1327                            text: ace_strings.close, 
     1328                            click: function() { jQuery(this).dialog("close"); } 
    12421329                        } 
    1243                         f_type2 = 'plugin'; 
    1244                     }else{ 
    1245                         //theme file 
    1246                         plugin_dir = theme_to_download; 
    1247                         f_type2 = 'theme'; 
    1248                     } 
    1249  
    1250                     var data = { 
    1251                         action: 'create_directory', 
    1252                         dir: plugin_dir, 
    1253                         f_type: f_type2, 
    1254                         di_name: di_name, 
    1255                         _ajax_nonce: '<?php echo wp_create_nonce( 'create_directory' ); ?>' 
    1256                     }; 
    1257                     jQuery.post(ajaxurl, data, function(response) { 
    1258                         //alert('Got this from the server: ' + response); 
    1259                         jQuery(".ui-dialog-content").dialog("close"); 
    1260                         jQuery('#add_new_file').dialog( "destroy" ); 
    1261                         jQuery('#update_Box').html('<div>' + response + '</div>'); 
    1262                         jQuery("#update_Box").dialog({ show: 'slide',hide: 'slide', title: '<?php _e('Create A new Directory','baace');?>', buttons: [ 
    1263                             { 
    1264                                 text: "Ok", 
    1265                                 click: function() { jQuery(this).dialog("close"); } 
    1266                             } 
    1267                         ] });  
    1268                     }); 
    1269                 } 
    1270                  
    1271                 //create new file 
     1330                    ] });  
     1331                }); 
     1332            } 
     1333            //create new file 
    12721334            function create_new_file_callback(){ 
    12731335                var file_name = jQuery("#fi_name").val(); 
    1274                 jQuery('#add_new_file').html('<p style="text-align:center;">Creating New File ...<br/><img src="<?php echo $url; ?>images/GRZ9W.gif"></p>'); 
     1336                jQuery('#add_new_file').html('<p style="text-align:center;">'+ ace_strings.creatingfile +' ...<br/><img src="'+ace_strings.imgURL+'GRZ9W.gif"></p>'); 
    12751337                var plugin_meta = new Array(); 
    12761338                //plugin file 
     
    12851347                    f_type = 'plugin'; 
    12861348                }else{ 
    1287                 //theme file 
     1349                    //theme file 
    12881350                    plugin_dir = theme_to_download; 
    12891351                    f_type = 'theme'; 
     
    12951357                    f_type: f_type, 
    12961358                    file_name: file_name, 
    1297                     _ajax_nonce: '<?php echo wp_create_nonce( 'create_new_file' ); ?>' 
     1359                    _ajax_nonce: ace_nonce.create_new_file 
    12981360                }; 
    1299                 jQuery.post(ajaxurl, data, function(response) { 
    1300                     //alert('Got this from the server: ' + response); 
     1361                aceAJAX(data, function(response) { 
    13011362                    jQuery(".ui-dialog-content").dialog("close"); 
    13021363                    jQuery('#add_new_file').dialog( "destroy" ); 
    13031364                    jQuery('#update_Box').html('<div>' + response + '</div>'); 
    1304                     jQuery("#update_Box").dialog({ show: 'slide',hide: 'slide', title: '<?php _e('Create A new File','baace');?>', buttons: [ 
     1365                    show_dialog("#update_Box",{  title: ace_strings.newfile, buttons: [ 
    13051366                        { 
    1306                             text: "Ok", 
     1367                            text: ace_strings.close, 
    13071368                            click: function() { jQuery(this).dialog("close"); } 
    13081369                        } 
     
    13501411                editor.autoFormatRange(range.from, range.to); 
    13511412            } 
    1352  
    13531413            //comment selection 
    13541414            function commentSelection(isComment) { 
     
    13561416                editor.commentRange(isComment, range.from, range.to); 
    13571417            }  
    1358  
    13591418            //jump to line 
    13601419            function Jump_to_Line(){ 
     
    13721431                marked.length = 0; 
    13731432            } 
    1374            //change theme 
     1433            //change theme 
    13751434            function selectTheme(theme) { 
    13761435                var editorDiv = jQuery('.CodeMirror-scroll'); 
     
    14011460                lastQuery = text; lastPos = cursor.to(); 
    14021461            } 
    1403  
    14041462            //replace 
    14051463            function replace() { 
     
    14111469                cursor.findNext(); 
    14121470                if (!cursor) return; 
    1413                 editor.replaceRange(replace, cursor.from(), cursor.to()); 
    1414                  
     1471                editor.replaceRange(replace, cursor.from(), cursor.to());                
    14151472            } 
    14161473            //replaceall 
     
    14261483            //before save 
    14271484            function BeforeSave() { 
    1428                   jQuery("#SaveBox").html('<p style="text-align:center;">saving changes ...<br/><img src="<?php echo $url; ?>images/GRZ9W.gif"></p>'); 
    1429                   jQuery("#SaveBox").dialog({ show: 'slide',hide: 'slide',title: '<?php _e('Save Box','baace');?>' });  
     1485                  jQuery("#SaveBox").html('<p style="text-align:center;">'+ ace_strings.saving +' ...<br/><img src="'+ace_strings.imgURL+'GRZ9W.gif"></p>'); 
     1486                  show_dialog("#SaveBox",{title: ace_strings.saveBox });  
    14301487                  return true;  
    14311488            } 
     
    14361493                jQuery(".ui-dialog-content").dialog("close"); 
    14371494                jQuery('#saveBox').dialog( "destroy" ); 
    1438                 jQuery('#update_Box').html('<div>' + htmlCode + '</div><div><small>this Box will auto close in <span class="closein">5</span> seconds</small></div>'); 
    1439                 jQuery("#update_Box").dialog({ show: 'slide',hide: 'slide', title: '<?php _e('Save Box','baace');?>', buttons: [ 
     1495                jQuery(".ace_file_status").html(ace_strings.lastsaved + ' ' + getTimeStamp() + ' ').addClass('updated'); 
     1496                jQuery('#update_Box').html('<div>' + htmlCode + '</div><div><small>'+ ace_strings.autoclosein +'  <span class="closein">5</span> '+ace_strings.seconds+'</small></div>'); 
     1497                show_dialog("#update_Box",{ title: ace_strings.saveBox, buttons: [ 
    14401498                    { 
    1441                         text: "Ok", 
     1499                        text: ace_strings.close, 
    14421500                        click: function() { jQuery(this).dialog("close"); } 
    14431501                    }] 
     
    14451503                setTimeout("autoclose_dialog(5)",1000); 
    14461504            } 
    1447              
     1505            //time stamp function 
     1506            function getTimeStamp(){ 
     1507                var cT = new Date(); 
     1508                var s = cT.getSeconds(); 
     1509                var M = cT.getMinutes(); 
     1510                var h = cT.getHours(); 
     1511                var y = cT.getFullYear(); 
     1512                var d = cT.getDate(); 
     1513                var m = cT.getMonth() + 1; 
     1514                var n = m + '/' + d + '/' + y + ' ' + h + ':' + M + ':' + s; 
     1515                return n; 
     1516            } 
    14481517            //autoclose save dialog 
    14491518            function autoclose_dialog(t){ 
     
    14561525                } 
    14571526            } 
    1458  
    14591527            //fullscreen edit 
    14601528            function toggleFullscreenEditing(){ 
     
    14631531                if (!editorDiv.hasClass('fullscreen')) { 
    14641532                    var bgcolor = editorDiv.css("background-color"); 
     1533                    if (bgcolor == "transparent" || bgcolor == "rgba(0, 0, 0, 0)") bgcolor = "#FFF"; 
    14651534                    toggleFullscreenEditing.beforeFullscreen = { height: editorDiv.height(), width: editorDiv.width(),bg: editorDiv.css("background-color") } 
    14661535                    editorDiv.addClass('fullscreen'); 
     
    14891558            <div id="jump_tbox" style="display:none;"><?php _e('Jump to Line: ','baace');?><input type="text" value="" id="jump_line_number" style="width: 5em"></div>  
    14901559            <div id="searchR" style="display:none;"><?php _e('Search For: ','baace');?><input type="text" value="" id="query1" style="width: 5em"><br/><?php _e('And Replace with:','baace');?><input type="text" id="replace" value="" style="width: 5em"><br /><button class="button"  id="ace_re" type="button"><?php _e('Replace','baace');?></button><?php _e('OR','baace');?> <button class="button"  id="ace_res" type="button"><?php _e('Replace all','baace');?></button> </div>  
    1491             <div id="ace_help" style="display:none;"><h4><?php _e('Hot Keys:','baace');?></h4> 
    1492                <ul> 
     1560            <div id="ace_help" style="display:none;"> 
     1561                <h4><?php _e('Hot Keys:','baace');?></h4> 
     1562                <ul> 
    14931563                  <li><strong>CRTL + Space</strong> -  <?php _e('Triggers AutoComplete.','baace');?></li> 
    14941564                  <li><strong>CRTL + Z</strong> -  <?php _e('Undo (remembers all changes, so you can use more then one)','baace');?></li> 
     
    15031573                  <li><strong>F11</strong> -  <?php _e('FullScreen Editor (When cruser is inside editor)','baace');?></li> 
    15041574 
    1505                </ul> 
    1506                <h4></h4> 
     1575                </ul> 
    15071576            </div> 
    15081577            <div id="ace_about" style="display:none;text-align:center;"> 
     
    15161585                 or at least <a href="http://wordpress.org/extend/plugins/bainternet-user-ranks/">rank the plugin</a></li> 
    15171586               </ul> 
    1518                <p><?php _e('WordPress Advanced Code Editor was uses:','baace');?> </p> 
     1587               <p><?php _e('WordPress Advanced Code Editor uses:','baace');?> </p> 
    15191588                  <ul> 
    15201589                 <li><a href="http://codemirror.net" traget="_blank">CodeMirror2</a> by Marijn Haverbeke.</li> 
     
    15421611                var toolbar = jQuery('.ace_tool_bar'); 
    15431612                //current file 
    1544                 toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_download_file\" title=\"<?php _e('Download file','baace');?>\"><img src=\"<?php echo $url; ?>images/download_file.png\" alt=\"Download File\"></a><li>'); 
    15451613                get_file_name = jQuery('input[name="plugin"]').val(); 
     1614                //download file 
     1615                addToolbarButton(null,"tb_re","ace_tool_download_file",ace_strings.downloadfile,"download_file.png","Download File",function(){ 
     1616                    get_file_name = jQuery('input[name="plugin"]').val(); 
     1617                    jQuery("#dframe").attr("src",ace_strings.url+'?dn_file=' + get_file_name + '&dnf=plugin'); 
     1618                }); 
     1619                 
    15461620                download_from = 'plugin'; 
    1547                 jQuery("#ace_tool_download_file").live('click',function(){ 
    1548                     jQuery("#dframe").attr("src",'<?php bloginfo('url'); ?>?dn_file=' + get_file_name + '&dnf=plugin'); 
    1549                 });          
    15501621                //zip plugin 
    1551                 plugin_to_d = get_file_name.split("/")[0];  
    1552                 toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_download_zip\" title=\"<?php _e('Download Plugin','baace');?>\"><img src=\"<?php echo $url; ?>images/download_zip.png\" alt=\"Download Plugin\"></a><li>'); 
    1553                 jQuery("#ace_tool_download_zip").live('click',function(){ 
    1554                     jQuery("#dframe").attr("src",'<?php bloginfo('url'); ?>?plugin_download=' + plugin_to_d); 
     1622                addToolbarButton(null,"tb_re","ace_tool_download_zip",ace_strings.downloadplugin,"download_zip.png","Download Plugin",function(){ 
     1623                    plugin_to_d = get_file_name.split("/")[0];  
     1624                    jQuery("#dframe").attr("src",ace_strings.url+'?plugin_download=' + plugin_to_d); 
    15551625                }); 
    15561626 
     
    16191689                var fol = jQuery('.folder'); 
    16201690                fol.css('padding-left','26px'); 
    1621                 fol.css('background-image','url(<?php echo $url; ?>images/wPPkk.png)'); 
     1691                fol.css('background-image','url('+ace_strings.imgURL+'wPPkk.png)'); 
    16221692                fol.css('background-repeat','no-repeat'); 
    16231693                fol.css('cursor','pointer'); 
    16241694                var jroot = jQuery(".root"); 
    16251695                jroot.css('padding-left','26px'); 
    1626                 jroot.css('background-image','url(<?php echo $url; ?>images/wPPkk.png)'); 
     1696                jroot.css('background-image','url('+ace_strings.imgURL+'wPPkk.png)'); 
    16271697                jroot.css('background-repeat','no-repeat'); 
    16281698                jroot.find('li').css("min-height","26px"); 
     
    16511721        } 
    16521722 
    1653         //theme tree 
     1723        //theme file tree 
    16541724        public function theme_file_tree(){ 
    16551725            $url = plugins_url()."/advanced-code-editor/"; 
     
    16591729            jQuery(document).ready(function(){ 
    16601730                //add downloads 
    1661                 var toolbar = jQuery('.ace_tool_bar'); 
    1662                 //current file 
    1663                 // 
    1664                 toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_download_file\" title=\"<?php _e('Download file','baace');?>\"><img src=\"<?php echo $url; ?>images/download_file.png\" alt=\"Download File\"></a><li>'); 
     1731                theme_to_download = jQuery('input[name="theme"]').val(); 
    16651732                get_file_name = jQuery('input[name="file"]').val(); 
    16661733                download_from = 'theme'; 
    1667                 jQuery("#ace_tool_download_file").live('click',function(){ 
    1668                     jQuery("#dframe").attr("src",'<?php bloginfo('url'); ?>?dn_file=' + get_file_name + '&dnf=theme'); 
    1669                 });          
     1734                //download file 
     1735                addToolbarButton(null,'tb_re','ace_tool_download_file',ace_strings.downloadfile,'download_file.png','Download File',function(){ 
     1736                    get_file_name = jQuery('input[name="file"]').val(); 
     1737                    theme_to_download = jQuery('input[name="theme"]').val(); 
     1738                    jQuery("#dframe").attr("src",ace_strings.url+'?dn_file=' + get_file_name + '&dnf=theme&tmf='+theme_to_download); 
     1739                }); 
    16701740                //zip theme 
    1671                 theme_to_download = jQuery('input[name="theme"]').val(); 
    1672                 toolbar.append('<li><a class=\"tb_re\"  id=\"ace_tool_download_zip\" title=\"<?php _e('Download theme','baace');?>\"><img src=\"<?php echo $url; ?>images/download_zip.png\" alt=\"Download theme\"></a><li>'); 
    1673                 jQuery("#ace_tool_download_zip").live('click',function(){ 
    1674                     jQuery("#dframe").attr("src",'<?php bloginfo('url'); ?>?theme_download=theme_download&ttd='+theme_to_download); 
     1741                addToolbarButton(null,"tb_re","ace_tool_download_zip",ace_strings.downloadtheme,"download_zip.png","Download theme",function(){ 
     1742                    theme_to_download = jQuery('input[name="theme"]').val(); 
     1743                    jQuery("#dframe").attr("src",ace_strings.url+'?theme_download=theme_download&ttd='+theme_to_download); 
    16751744                }); 
    16761745                 
     
    17521821                var fol = jQuery('.folder'); 
    17531822                fol.css('padding-left','26px'); 
    1754                 fol.css('background-image','url(<?php echo $url; ?>images/wPPkk.png)'); 
     1823                fol.css('background-image','url('+ace_strings.imgURL+'wPPkk.png)'); 
    17551824                fol.css('background-repeat','no-repeat'); 
    17561825                fol.css('cursor','pointer'); 
    17571826                var jroot = jQuery(".root"); 
    17581827                jroot.css('padding-left','26px'); 
    1759                 jroot.css('background-image','url(<?php echo $url; ?>images/wPPkk.png)'); 
     1828                jroot.css('background-image','url('+ace_strings.imgURL+'wPPkk.png)'); 
    17601829                jroot.css('background-repeat','no-repeat'); 
    17611830                jroot.find('li').css("min-height","26px"); 
  • advanced-code-editor/trunk/js/complete.js

    r607254 r608939  
    22function createCookie(name,value,days) { 
    33    if (days) { 
    4         var date = new Date(); 
     4        var date = new Date();  
    55        date.setTime(date.getTime()+(days*24*60*60*1000)); 
    66        var expires = "; expires="+date.toGMTString(); 
     
    88    else var expires = ""; 
    99    document.cookie = name+"="+value+expires+"; path=/"; 
    10 } 
    11  
     10}  
     11  
    1212function readCookie(name) { 
    1313    var nameEQ = name + "="; 
     14     
    1415    var ca = document.cookie.split(';'); 
    1516    for(var i=0;i < ca.length;i++) { 
    16         var c = ca[i]; 
     17        var c = ca[i];  
    1718        while (c.charAt(0)==' ') c = c.substring(1,c.length); 
    1819        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 
     
    2122} 
    2223 
    23 function eraseCookie(name) { 
    24     createCookie(name,"",-1); 
    25 } 
     24function eraseCookie(name) {createCookie(name,"",-1);} 
    2625 
    2726var theme_coo = readCookie('adce_theme') 
     
    3130   createCookie('adce_theme','default',365); 
    3231   var theme = 'default'; 
    33 } 
     32}  
    3433 
    3534// Minimal event-handling wrapper. 
     
    7978    tabMode: "shift", 
    8079    onGutterClick: foldFunc, 
     80    onChange: function(cm) {  
     81        if (jQuery('.ace_unsaved_changes').length){ 
     82            jQuery('.ace_file_status').removeClass('updated'); 
     83            jQuery('.ace_file_status').addClass('error'); 
     84        }else{ 
     85            jQuery('.ace_file_status').removeClass('updated'); 
     86            jQuery('.ace_file_status').addClass('error'); 
     87            if (jQuery('.ace_file_status').html() == ace_strings.noChangesyet) 
     88                jQuery('.ace_file_status').html('<span class="ace_unsaved_changes"><small><strong>'+ace_strings.unsaved+'</strong></small></span>'); 
     89            else 
     90                jQuery('.ace_file_status').append('<span class="ace_unsaved_changes"><small><strong>'+ace_strings.unsaved+'</strong></small></span>'); 
     91        } 
     92    }, 
    8193   extraKeys: {"Ctrl-Q": function(cm){foldFunc(cm, cm.getCursor().line);}}, 
    8294   onKeyEvent: function(i, e) { 
  • advanced-code-editor/trunk/readme.txt

    r607876 r608939  
    11=== Advanced Code Editor === 
    22Contributors: bainternet  
    3 Donate link:http://en.bainternet.info/donations 
     3Donate link:  http://en.bainternet.info/donations 
    44Tags: code, theme editor, plugin editor, code editor, WordPress IDE 
    55Requires at least: 3.0 
    6 Tested up to: 3.5 
    7 Stable tag: 2.1.6 
     6Tested up to: 3.5 beta 1 
     7Stable tag: 2.2.0 
    88 
    99Enables syntax highlighting in the integrated themes and plugins source code editors with line numbers, AutoComplete and much more. Supports PHP, HTML, CSS and JS. 
     
    8484 
    8585== Changelog == 
     862.2.0 
     87Added New File status notice. (no changes, last saved, has unsaved changes) 
     88Fixed theme file and directory creation. 
     89Fixed file ,theme and plugin download. 
     90Major code rewrite for toolbar. 
     91Added toolbar api (allows easy way of adding your own buttons and action). 
     92Moved MOST of the strings into wp_localized_script() for easy translation. 
     93Moved most of nonces creations to wp_localize_script(). 
     94 
    86952.1.6 
    8796Fixed Scroll issues. 
Note: See TracChangeset for help on using the changeset viewer.