Merged BRANCHES/DEV/V3.3-BUG-FIX to HEAD:

22910: Fixed ALF-872: TinyMCE Insert/edit Link dialog does not display properly in IE6
   22914: Merged DEV/BELARUS/HEAD-2010_04_28 to V3.3-BUG-FIX
        ALF-2315: WCM Schema: Inconsistent error if not filling in required fields
   22918: Merged DEV/BELARUS/V3.3-BUG-FIX-2010_06_24 to V3.3-BUG-FIX
        ALF-2931: WCM Forms - min/maxLength ignored for xs:string elements
   22940: Merged DEV/BELARUS/V3.3-2010_05_26 to V3.3-BUG-FIX
        ALF-2742: Impossibility to manage site for MS Excel
   22949: (RECORD ONLY) Added "continuous-without-distribute" target

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@22958 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Gavin Cornwell
2010-10-07 13:34:33 +00:00
parent c0fb578036
commit dc916dda18
3 changed files with 57 additions and 10 deletions

View File

@@ -92,6 +92,21 @@ function alfresco_TinyMCE_file_browser_callback(field_name, url, type, win)
cssEl.media = 'screen';
headEl.appendChild(cssEl);
// ALF-872:
// Drop-down and list boxes do not have a z-index property, these are window level controls.
// When you want to show a div in a page that contains these controls, you will face an overlapping problem.
// This is a well-known problem with the IE 6 browser.
// To solve this we just hiding form's divs until FilePickerWidget is undestroyed.
if (window.ie6)
{
var divs = win.document.getElementsByTagName("div");
for (var i = 0; i < divs.length; i++)
{
divs[i].style.visibility = "hidden";
}
}
var div = win.document.createElement("div");
div.style.width = "100%";
div.style.height = "100%";
@@ -117,6 +132,17 @@ function alfresco_TinyMCE_file_browser_callback(field_name, url, type, win)
function()
{
picker.destroy();
// Please see comment above
if (window.ie6)
{
var divs = win.document.getElementsByTagName("div");
for (var i = 0; i < divs.length; i++)
{
divs[i].style.visibility = "visible";
}
}
div.parentNode.removeChild(div);
},
function(picker)

View File

@@ -2655,13 +2655,16 @@ alfresco.xforms.AbstractGroup = alfresco.xforms.Widget.extend({
var result = [];
for (var i = 0; i < this._children.length; i++)
{
if (this._children[i] instanceof alfresco.xforms.AbstractGroup)
if ((this._children[i].domContainer.style.display != "none") || (this._children[i].xformsNode.localName != "case"))
{
result = result.concat(this._children[i].getWidgetsInvalidForSubmit());
}
else if (!this._children[i].isValidForSubmit())
{
result.push(this._children[i]);
if (this._children[i] instanceof alfresco.xforms.AbstractGroup)
{
result = result.concat(this._children[i].getWidgetsInvalidForSubmit());
}
else if (!this._children[i].isValidForSubmit())
{
result.push(this._children[i]);
}
}
}
return result;
@@ -4457,10 +4460,12 @@ alfresco.xforms.XForm = new Class({
case "chiba-state-changed":
{
alfresco.log("handleStateChanged(" + xfe.targetId + ")");
xfe.getTarget().setModified(true);
var isModified = false;
if ("valid" in xfe.properties)
{
xfe.getTarget().setValid(xfe.properties["valid"] == "true");
isModified= true;
}
if ("required" in xfe.properties)
{
@@ -4478,7 +4483,9 @@ alfresco.xforms.XForm = new Class({
{
alfresco.log("setting " + xfe.getTarget().id + " = " + xfe.properties["value"]);
xfe.getTarget().setValue(xfe.properties["value"]);
isModified= true;
}
xfe.getTarget().setModified(isModified);
break;
}
case "chiba-prototype-cloned":