mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
New build scripts
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5282 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
103
source/web/scripts/ajax/dojo/src/a11y.js
Normal file
103
source/web/scripts/ajax/dojo/src/a11y.js
Normal file
@@ -0,0 +1,103 @@
|
||||
/*
|
||||
Copyright (c) 2004-2006, The Dojo Foundation
|
||||
All Rights Reserved.
|
||||
|
||||
Licensed under the Academic Free License version 2.1 or above OR the
|
||||
modified BSD license. For more information on Dojo licensing, see:
|
||||
|
||||
http://dojotoolkit.org/community/licensing.shtml
|
||||
*/
|
||||
|
||||
dojo.provide("dojo.a11y");
|
||||
|
||||
dojo.require("dojo.uri.*");
|
||||
dojo.require("dojo.html.common");
|
||||
|
||||
dojo.a11y = {
|
||||
// imgPath: String path to the test image for determining if images are displayed or not
|
||||
// doAccessibleCheck: Boolean if true will perform check for need to create accessible widgets
|
||||
// accessible: Boolean uninitialized when null (accessible check has not been performed)
|
||||
// if true generate accessible widgets
|
||||
imgPath:dojo.uri.dojoUri("src/widget/templates/images"),
|
||||
doAccessibleCheck: true,
|
||||
accessible: null,
|
||||
|
||||
checkAccessible: function(){
|
||||
// summary:
|
||||
// perform check for accessibility if accessibility checking is turned
|
||||
// on and the accessibility test has not been performed yet
|
||||
if(this.accessible === null){
|
||||
this.accessible = false; //default
|
||||
if(this.doAccessibleCheck == true){
|
||||
this.accessible = this.testAccessible();
|
||||
}
|
||||
}
|
||||
return this.accessible; /* Boolean */
|
||||
},
|
||||
|
||||
testAccessible: function(){
|
||||
// summary:
|
||||
// Always perform the accessibility check to determine if high
|
||||
// contrast mode is on or display of images are turned off. Currently only checks
|
||||
// in IE and Mozilla.
|
||||
this.accessible = false; //default
|
||||
if (dojo.render.html.ie || dojo.render.html.mozilla){
|
||||
var div = document.createElement("div");
|
||||
//div.style.color="rgb(153,204,204)";
|
||||
div.style.backgroundImage = "url(\"" + this.imgPath + "/tab_close.gif\")";
|
||||
// must add to hierarchy before can view currentStyle below
|
||||
dojo.body().appendChild(div);
|
||||
// in FF and IE the value for the current background style of the added div
|
||||
// will be "none" in high contrast mode
|
||||
// in FF the return value will be url(invalid-url:) when running over http
|
||||
var bkImg = null;
|
||||
if (window.getComputedStyle ) {
|
||||
var cStyle = getComputedStyle(div, "");
|
||||
bkImg = cStyle.getPropertyValue("background-image");
|
||||
}else{
|
||||
bkImg = div.currentStyle.backgroundImage;
|
||||
}
|
||||
var bUseImgElem = false;
|
||||
if (bkImg != null && (bkImg == "none" || bkImg == "url(invalid-url:)" )) {
|
||||
this.accessible = true;
|
||||
}
|
||||
/*
|
||||
if(this.accessible == false && document.images){
|
||||
// test if images are off in IE
|
||||
var testImg = new Image();
|
||||
if(testImg.fileSize) {
|
||||
testImg.src = this.imgPath + "/tab_close.gif";
|
||||
if(testImg.fileSize < 0){
|
||||
this.accessible = true;
|
||||
}
|
||||
}
|
||||
}*/
|
||||
dojo.body().removeChild(div);
|
||||
}
|
||||
return this.accessible; /* Boolean */
|
||||
},
|
||||
|
||||
setCheckAccessible: function(/* Boolean */ bTest){
|
||||
// summary:
|
||||
// Set whether or not to check for accessibility mode. Default value
|
||||
// of module is true - perform check for accessibility modes.
|
||||
// bTest: Boolean - true to check; false to turn off checking
|
||||
this.doAccessibleCheck = bTest;
|
||||
},
|
||||
|
||||
setAccessibleMode: function(){
|
||||
// summary:
|
||||
// perform the accessibility check and sets the correct mode to load
|
||||
// a11y widgets. Only runs if test for accessiiblity has not been performed yet.
|
||||
// Call testAccessible() to force the test.
|
||||
if (this.accessible === null){
|
||||
if (this.checkAccessible()){
|
||||
dojo.render.html.prefixes.unshift("a11y");
|
||||
}
|
||||
}
|
||||
return this.accessible; /* Boolean */
|
||||
}
|
||||
};
|
||||
|
||||
//dojo.hostenv.modulesLoadedListeners.unshift(function() { dojo.a11y.setAccessibleMode(); });
|
||||
//dojo.event.connect("before", dojo.hostenv, "makeWidgets", dojo.a11y, "setAccessibleMode");
|
Reference in New Issue
Block a user