X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/9c40b4d36daed9e28e48a5fe9205c32557195a4b..5964d2279dc52bdfe105f9bfa17e04337d47a3fa:/wp-includes/js/tinymce/utils/form_utils.js
diff --git a/wp-includes/js/tinymce/utils/form_utils.js b/wp-includes/js/tinymce/utils/form_utils.js
index 1d563069..6f62fe60 100644
--- a/wp-includes/js/tinymce/utils/form_utils.js
+++ b/wp-includes/js/tinymce/utils/form_utils.js
@@ -1,19 +1,24 @@
/**
- * $Id: form_utils.js 996 2009-02-06 17:32:20Z spocke $
+ * form_utils.js
*
- * Various form utilitiy functions.
+ * Copyright 2009, Moxiecode Systems AB
+ * Released under LGPL License.
*
- * @author Moxiecode
- * @copyright Copyright © 2004-2008, Moxiecode Systems AB, All rights reserved.
+ * License: http://tinymce.moxiecode.com/license
+ * Contributing: http://tinymce.moxiecode.com/contributing
*/
var themeBaseURL = tinyMCEPopup.editor.baseURI.toAbsolute('themes/' + tinyMCEPopup.getParam("theme"));
function getColorPickerHTML(id, target_form_element) {
- var h = "";
+ var h = "", dom = tinyMCEPopup.dom;
- h += '';
- h += ' ';
+ if (label = dom.select('label[for=' + target_form_element + ']')[0]) {
+ label.id = label.id || dom.uniqueId();
+ }
+
+ h += '';
+ h += ' ' + tinyMCEPopup.getLang('browse') + '';
return h;
}
@@ -66,6 +71,9 @@ function selectByValue(form_obj, field_name, value, add_custom, ignore_case) {
if (!form_obj || !form_obj.elements[field_name])
return;
+ if (!value)
+ value = "";
+
var sel = form_obj.elements[field_name];
var found = false;
@@ -92,7 +100,7 @@ function selectByValue(form_obj, field_name, value, add_custom, ignore_case) {
function getSelectValue(form_obj, field_name) {
var elm = form_obj.elements[field_name];
- if (elm == null || elm.options == null)
+ if (elm == null || elm.options == null || elm.selectedIndex === -1)
return "";
return elm.options[elm.selectedIndex].value;
@@ -170,7 +178,7 @@ function convertHexToRGB(col) {
}
function trimSize(size) {
- return size.replace(/([0-9\.]+)px|(%|in|cm|mm|em|ex|pt|pc)/, '$1$2');
+ return size.replace(/([0-9\.]+)(px|%|in|cm|mm|em|ex|pt|pc)/i, '$1$2');
}
function getCSSSize(size) {
@@ -182,6 +190,9 @@ function getCSSSize(size) {
// Add px
if (/^[0-9]+$/.test(size))
size += 'px';
+ // Sanity check, IE doesn't like broken values
+ else if (!(/^[0-9\.]+(px|%|in|cm|mm|em|ex|pt|pc)$/i.test(size)))
+ return "";
return size;
}