Changeset 200
- Timestamp:
- 05/27/05 06:50:03 (8 years ago)
- Location:
- trunk/plugins/Forms
- Files:
-
- 4 modified
-
forms.js (modified) (6 diffs)
-
popups/form.html (modified) (3 diffs)
-
popups/input.html (modified) (3 diffs)
-
popups/textarea.html (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/plugins/Forms/forms.js
r199 r200 139 139 var sel = editor._getSelection(); 140 140 var range = editor._createRange(sel); 141 //see if selection is an form element 141 var tagName = ""; 142 // see if selection is an form element 142 143 if (typeof node == "undefined") { 143 144 node = editor.getParentElement(); … … 150 151 type = node.tagName.toLowerCase(); 151 152 outparam.f_name = node.name; 152 outparam.f_tagName = node.tagName;153 tagName = node.tagName; 153 154 if (type == "input") { 154 155 outparam.f_type = node.type; … … 160 161 outparam.f_rows = node.rows; 161 162 outparam.f_value = node.innerHTML; 163 outparam.f_wrap = node.getAttribute("wrap"); 164 outparam.f_readonly = node.getAttribute("readonly"); 165 outparam.f_disabled = node.getAttribute("disabled"); 166 outparam.f_tabindex = node.getAttribute("tabindex"); 167 outparam.f_accesskey = node.getAttribute("accesskey"); 162 168 break; 163 169 case "select": … … 197 203 } else { 198 204 outparam.f_name = ""; 199 outparam.f_tagName = "";200 205 switch (button_id) { 201 206 case "textarea": 202 207 case "select": 203 outparam.f_tagName = button_id208 tagName = button_id 204 209 break; 205 210 default: 206 outparam.f_tagName = "input";211 tagName = "input"; 207 212 outparam.f_type = button_id; 208 213 break; … … 218 223 outparam.f_src = ""; 219 224 outparam.f_onclick = ""; 225 outparam.f_wrap = ""; 226 outparam.f_readonly = "false"; 227 outparam.f_disabled = "false"; 228 outparam.f_tabindex = ""; 229 outparam.f_accesskey = ""; 220 230 }; 221 editor._popupDialog("plugin://Forms/" + outparam.f_tagName + ".html", function(param) {231 editor._popupDialog("plugin://Forms/" + tagName + ".html", function(param) { 222 232 if (param) { 223 233 if(node) { 224 234 node.name = param["f_name"]; 225 235 if (type == "textarea") { 226 if (isNaN(parseInt(param["f_cols"],10)) || parseInt(param["f_cols"],10) <= 0) 227 node.removeAttribute("cols"); 228 else 229 node.setAttribute("cols", param["f_cols"]); 230 if(isNaN(parseInt(param["f_rows"],10)) || parseInt(param["f_rows"],10) <= 0) 231 node.removeAttribute("rows"); 232 else 233 node.setAttribute("rows", param["f_rows"]); 234 node.value = param["f_value"]; //for ta in editor 235 node.innerHTML = param["f_value"]; //for ta on web page 236 if (isNaN(parseInt(param["f_cols"],10)) || parseInt(param["f_cols"],10) <= 0) 237 param["f_cols"] = ""; 238 setAttr(node, "cols", param["f_cols"]); 239 if(isNaN(parseInt(param["f_rows"],10)) || parseInt(param["f_rows"],10) <= 0) 240 param["f_rows"] = ""; 241 setAttr(node, "rows", param["f_rows"]); 242 setAttr(node, "value", param["f_value"]); //for ta in editor 243 setAttr(node, "wrap", param["f_wrap"]); 244 setAttr(node, "tabindex", param["f_tabindex"]); 245 setAttr(node, "accesskey", param["f_accesskey"]); 246 setAttr(node, "readonly", param["f_readonly"]); 247 setAttr(node, "disabled", param["f_disabled"]); 248 node.innerHTML = param["f_value"]; //for ta on web page 236 249 } else if(type == "select") { 237 250 node.requiredfield = param["f_requiredfield"]; … … 280 293 } else { 281 294 if(type == "textarea") { 282 text = '<textarea name="' + param["f_name"] + '" ' +295 text = '<textarea name="' + param["f_name"] + '"' + 283 296 ' cols="' + param["f_cols"] + '"' + 284 ' rows="' + param["f_rows"] +'">' + 285 param["f_value"] + 286 '</textarea>'; 297 ' rows="' + param["f_rows"] + '"'; 298 if (param["f_wrap"] != "") text += ' wrap="' + param["f_wrap"] + '"'; 299 if (param["f_tabindex"] != "") text += ' tabindex="' + param["f_tabindex"] + '"'; 300 if (param["f_accesskey"] != "") text += ' accesskey="' + param["f_accesskey"] + '"'; 301 if (param["f_readonly"] == true) text += ' readonly'; 302 if (param["disabled"] == true) text += ' disabled'; 303 text += '>' + param["f_value"] + '</textarea>'; 287 304 } else if(type == "select") { 288 305 text = '<select name="'+param["f_name"]+'"'; -
trunk/plugins/Forms/popups/form.html
r199 r200 7 7 8 8 <script type="text/javascript"> 9 10 var fields = ["f_name", "f_action", "f_method", "f_enctype", "f_target"]; 11 9 12 function Init() { 10 13 window.resizeTo(400, 170); … … 12 15 __dlg_init(); 13 16 var param = window.dialogArguments; 14 document.getElementById("f_name").value = param.f_name; 15 document.getElementById("f_action").value = param.f_action; 16 document.getElementById("f_method").value = param.f_method; 17 document.getElementById("f_enctype").value = param.f_enctype; 18 document.getElementById("f_target").value = param.f_target; 17 for (var i in fields) { 18 document.getElementById(fields[i]).value = param[fields[i]]; 19 } 19 20 document.getElementById("f_name").focus(); 20 21 }; … … 33 34 } 34 35 // pass data back to the calling window 35 var fields = ["f_name", "f_action", "f_method", "f_enctype", "f_target"];36 36 var param = new Object(); 37 37 for (var i in fields) { 38 var id = fields[i]; 39 var el = document.getElementById(id); 40 param[id] = el.value; 38 param[fields[i]] = document.getElementById(fields[i]).value; 41 39 } 42 40 __dlg_close(param); -
trunk/plugins/Forms/popups/input.html
r191 r200 8 8 <script type="text/javascript"> 9 9 var type; 10 var tagName;11 10 function Init() { 12 11 __dlg_translate("Forms"); … … 14 13 var param = window.dialogArguments; 15 14 type = param.f_type; 16 tagName = param.f_tagName;17 15 height = 230; 18 16 var d = document; … … 34 32 case "checkbox": 35 33 case "radio": 36 d.getElementById("f_checked").checked = param.f_checked;34 d.getElementById("f_checked").checked = param.f_checked; 37 35 d.getElementById("chk").style.display = "block"; 38 36 break; -
trunk/plugins/Forms/popups/textarea.html
r191 r200 7 7 8 8 <script type="text/javascript"> 9 var type; 9 10 var fields = ["f_name", "f_value", "f_cols", "f_rows", "f_wrap", "f_tabindex", "f_accesskey", "f_readonly", "f_disabled"]; 11 10 12 function Init() { 13 window.resizeTo(480,260); 11 14 __dlg_translate("Forms"); 12 15 __dlg_init(); 13 16 var param = window.dialogArguments; 14 type = param.f_type; 15 var d = document; 16 d.getElementById("f_name").value = param.f_name; 17 d.getElementById("f_value").value = param.f_value; 18 d.getElementById("f_cols").value = param.f_cols; 19 d.getElementById("f_rows").value = param.f_rows; 20 window.resizeTo(280,260); 21 d.getElementById("f_name").focus(); 17 for (var i in fields) { 18 switch (fields[i]) { 19 case "f_readonly": 20 case "f_disabled": 21 document.getElementById(fields[i]).checked = param[fields[i]]; break; 22 default: 23 document.getElementById(fields[i]).value = param[fields[i]]; break; 24 } 25 } 26 document.getElementById("f_name").focus(); 22 27 }; 23 28 … … 30 35 return false; 31 36 } 32 var param = new Object(); 33 param["f_type"] = type; 34 param["f_name"] = d.getElementById("f_name").value; 35 param["f_cols"] = d.getElementById("f_cols").value; 36 param["f_rows"] = d.getElementById("f_rows").value; 37 param["f_value"] = d.getElementById("f_value").value; 37 // pass data back to the calling window 38 var param = new Object(); 39 for (var i in fields) { 40 switch (fields[i]) { 41 case "f_readonly": 42 case "f_disabled": 43 param[fields[i]] = document.getElementById(fields[i]).checked; break; 44 default: 45 param[fields[i]] = document.getElementById(fields[i]).value; break; 46 } 47 } 38 48 __dlg_close(param); 39 49 return false; … … 45 55 }; 46 56 </script> 47 <style rel="stylesheet" type="text/css">48 DIV.line { clear: both; }49 50 LABEL {51 padding-top: 3px;52 padding-left: 3px;53 padding-right: 3px;54 }55 56 LABEL.label {57 float: left;58 width: 8em;59 text-align: right;60 }61 </style>62 57 </head> 63 58 … … 65 60 <div id="f_type" class="title">Form Element: TEXTAREA</div> 66 61 <form action="" method="get"> 67 <div class=" line"><label class="label" for="name">Name/ID:</label>68 <input type="text" name="name" id="f_name" title="name of the textarea" /> </div>69 < div class="space"></div>62 <div class="fr">Name/ID:</div> 63 <input type="text" name="name" id="f_name" title="name of the textarea" /> 64 <p /> 70 65 <fieldset> 71 66 <legend>Dimensions</legend> 72 <div class="line"><label class="label" for="cols">Columns:</label> 73 <input type="text" name="cols" id="f_cols" size="5" title="Width in number of characters" /></div> 74 <div class="line"><label class="label" for="rows">Rows:</label> 75 <input type="text" name="rows" id="f_rows" size="5" title="Height in number of rows" /></div> 67 <div class="fr">Columns:</div> 68 <input type="text" name="cols" id="f_cols" size="5" title="Width in number of characters" /> 69 <p /> 70 <div class="fr">Rows:</div> 71 <input type="text" name="rows" id="f_rows" size="5" title="Height in number of rows" /> 72 <p /> 76 73 </fieldset> 77 74 <div class="space"></div> 78 <div class="line"><label class="label" for="name">Default contents:</label> 79 <input type="text" name="value" id="f_value" title="Default text (optional)" /></div> 75 <div class="fr">Wrap Mode:</div> 76 <select name="wrap" id="f_wrap"> 77 <option value=""></option> 78 <option value="off">Off</option> 79 <option value="soft">Soft</option> 80 <option value="hard">Hard</option> 81 <option value="physical">Physical</option> 82 <option value="virtual">Virtual</option> 83 <option value="normal">normal</option> 84 <option value="nowrap">nowrap</option> 85 <option value="pre">pre</option> 86 </select> 87 <p /> 88 <div class="fr">Read Only</div> 89 <input type="checkbox" name="readonly" id="f_readonly" value="readonly" /> 90 <p /> 91 <div class="fr">Disabled</div> 92 <input type="checkbox" name="disabled" id="f_disabled" value="disabled" /> 93 <p /> 94 <div class="fr">Tab Index:</div> 95 <input type="text" name="tabindex" id="f_tabindex" /> 96 <p /> 97 <div class="fr">Access Key:</div> 98 <input type="text" name="accesskey" id="f_accesskey" /> 99 <p /> 100 101 <div class="fr">Initial Text:</div> 102 <input type="text" name="value" id="f_value" title="Default text (optional)" /> 80 103 <div id="buttons"> 81 104 <button type="button" name="ok" onclick="return onOK();">OK</button>
