annotate static/js/tiny_mce/plugins/searchreplace/searchreplace.htm @ 973:6f55c086db1e

Guess file extension based on content-type. When downloading a file, and no path is supplied to store it, guess the file extension using mimetypes and the content-type header. Also supply a unit test for the HotLinkImageForm.
author Brian Neal <bgneal@gmail.com>
date Thu, 01 Oct 2015 19:44:45 -0500
parents 6c182ceb7147
children
rev   line source
bgneal@312 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
bgneal@312 2 <html xmlns="http://www.w3.org/1999/xhtml">
bgneal@312 3 <head>
bgneal@312 4 <title>{#searchreplace_dlg.replace_title}</title>
bgneal@312 5 <script type="text/javascript" src="../../tiny_mce_popup.js"></script>
bgneal@312 6 <script type="text/javascript" src="../../utils/mctabs.js"></script>
bgneal@312 7 <script type="text/javascript" src="../../utils/form_utils.js"></script>
bgneal@312 8 <script type="text/javascript" src="js/searchreplace.js"></script>
bgneal@312 9 <link rel="stylesheet" type="text/css" href="css/searchreplace.css" />
bgneal@312 10 </head>
bgneal@442 11 <body style="display:none;" role="application" aria-labelledby="app_title">
bgneal@442 12 <span id="app_title" style="display:none">{#searchreplace_dlg.replace_title}</span>
bgneal@312 13 <form onsubmit="SearchReplaceDialog.searchNext('none');return false;" action="#">
bgneal@312 14 <div class="tabs">
bgneal@312 15 <ul>
bgneal@442 16 <li id="search_tab" aria-controls="search_panel"><span><a href="javascript:SearchReplaceDialog.switchMode('search');" onmousedown="return false;">{#searchreplace.search_desc}</a></span></li>
bgneal@442 17 <li id="replace_tab" aria-controls="replace_panel"><span><a href="javascript:SearchReplaceDialog.switchMode('replace');" onmousedown="return false;">{#searchreplace_dlg.replace}</a></span></li>
bgneal@312 18 </ul>
bgneal@312 19 </div>
bgneal@312 20
bgneal@312 21 <div class="panel_wrapper">
bgneal@312 22 <div id="search_panel" class="panel">
bgneal@442 23 <table role="presentation" border="0" cellspacing="0" cellpadding="2">
bgneal@312 24 <tr>
bgneal@312 25 <td><label for="search_panel_searchstring">{#searchreplace_dlg.findwhat}</label></td>
bgneal@442 26 <td><input type="text" id="search_panel_searchstring" name="search_panel_searchstring" style="width: 200px" aria-required="true" /></td>
bgneal@312 27 </tr>
bgneal@312 28 <tr>
bgneal@312 29 <td colspan="2">
bgneal@442 30 <table role="presentation" border="0" cellspacing="0" cellpadding="0" class="direction">
bgneal@442 31 <tr role="group" aria-labelledby="search_panel_backwards_label">
bgneal@442 32 <td><label id="search_panel_backwards_label">{#searchreplace_dlg.direction}</label></td>
bgneal@312 33 <td><input id="search_panel_backwardsu" name="search_panel_backwards" class="radio" type="radio" /></td>
bgneal@312 34 <td><label for="search_panel_backwardsu">{#searchreplace_dlg.up}</label></td>
bgneal@312 35 <td><input id="search_panel_backwardsd" name="search_panel_backwards" class="radio" type="radio" checked="checked" /></td>
bgneal@312 36 <td><label for="search_panel_backwardsd">{#searchreplace_dlg.down}</label></td>
bgneal@312 37 </tr>
bgneal@312 38 </table>
bgneal@312 39 </td>
bgneal@312 40 </tr>
bgneal@312 41 <tr>
bgneal@312 42 <td colspan="2">
bgneal@442 43 <table role="presentation" border="0" cellspacing="0" cellpadding="0">
bgneal@312 44 <tr>
bgneal@312 45 <td><input id="search_panel_casesensitivebox" name="search_panel_casesensitivebox" class="checkbox" type="checkbox" /></td>
bgneal@312 46 <td><label for="search_panel_casesensitivebox">{#searchreplace_dlg.mcase}</label></td>
bgneal@312 47 </tr>
bgneal@312 48 </table>
bgneal@312 49 </td>
bgneal@312 50 </tr>
bgneal@312 51 </table>
bgneal@312 52 </div>
bgneal@312 53
bgneal@312 54 <div id="replace_panel" class="panel">
bgneal@442 55 <table role="presentation" border="0" cellspacing="0" cellpadding="2">
bgneal@312 56 <tr>
bgneal@312 57 <td><label for="replace_panel_searchstring">{#searchreplace_dlg.findwhat}</label></td>
bgneal@442 58 <td><input type="text" id="replace_panel_searchstring" name="replace_panel_searchstring" style="width: 200px" aria-required="true" /></td>
bgneal@312 59 </tr>
bgneal@312 60 <tr>
bgneal@312 61 <td><label for="replace_panel_replacestring">{#searchreplace_dlg.replacewith}</label></td>
bgneal@442 62 <td><input type="text" id="replace_panel_replacestring" name="replace_panel_replacestring" style="width: 200px" aria-required="true" /></td>
bgneal@312 63 </tr>
bgneal@312 64 <tr>
bgneal@312 65 <td colspan="2">
bgneal@442 66 <table role="presentation" border="0" cellspacing="0" cellpadding="0" class="direction">
bgneal@442 67 <tr role="group" aria-labelledby="replace_panel_dir_label">
bgneal@442 68 <td><label id="replace_panel_dir_label">{#searchreplace_dlg.direction}</label></td>
bgneal@312 69 <td><input id="replace_panel_backwardsu" name="replace_panel_backwards" class="radio" type="radio" /></td>
bgneal@312 70 <td><label for="replace_panel_backwardsu">{#searchreplace_dlg.up}</label></td>
bgneal@312 71 <td><input id="replace_panel_backwardsd" name="replace_panel_backwards" class="radio" type="radio" checked="checked" /></td>
bgneal@312 72 <td><label for="replace_panel_backwardsd">{#searchreplace_dlg.down}</label></td>
bgneal@312 73 </tr>
bgneal@312 74 </table>
bgneal@312 75 </td>
bgneal@312 76 </tr>
bgneal@312 77 <tr>
bgneal@312 78 <td colspan="2">
bgneal@442 79 <table role="presentation" border="0" cellspacing="0" cellpadding="0">
bgneal@312 80 <tr>
bgneal@312 81 <td><input id="replace_panel_casesensitivebox" name="replace_panel_casesensitivebox" class="checkbox" type="checkbox" /></td>
bgneal@312 82 <td><label for="replace_panel_casesensitivebox">{#searchreplace_dlg.mcase}</label></td>
bgneal@312 83 </tr>
bgneal@312 84 </table>
bgneal@312 85 </td>
bgneal@312 86 </tr>
bgneal@312 87 </table>
bgneal@312 88 </div>
bgneal@312 89
bgneal@312 90 </div>
bgneal@312 91
bgneal@312 92 <div class="mceActionPanel">
bgneal@312 93 <input type="submit" id="insert" name="insert" value="{#searchreplace_dlg.findnext}" />
bgneal@312 94 <input type="button" class="button" id="replaceBtn" name="replaceBtn" value="{#searchreplace_dlg.replace}" onclick="SearchReplaceDialog.searchNext('current');" />
bgneal@312 95 <input type="button" class="button" id="replaceAllBtn" name="replaceAllBtn" value="{#searchreplace_dlg.replaceall}" onclick="SearchReplaceDialog.searchNext('all');" />
bgneal@312 96 <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
bgneal@312 97 </div>
bgneal@312 98 </form>
bgneal@312 99 </body>
bgneal@312 100 </html>