(function() {
var Event=YAHOO.util.Event,
Dom=YAHOO.util.Dom,
oACDS, oAutoComp,
show = {
'private': false,
'protected': false,
'deprecated': false
},
ITEM_TEMPLATE = '{host} {name}',
// ITEM_TEMPLATE = '{host} {params} {name}',
// ITEM_TEMPLATE = '{host} {params} {name}
{description}
',
yuidoc = YAHOO.namespace('yuidoc'),
propdata,
initialized = false;
yuidoc.init = function(altdata) {
yuidoc.initUI(altdata);
};
yuidoc.initUI = function(altdata) {
if (initialized) {
return;
}
propdata = ALL_YUI_PROPS || altdata;
//Checkboxes are available..
var handleClick = function(e) {
var id, checked = false;
if (YAHOO.lang.isString(e)) {
id = e;
} else {
var tar = Event.getTarget(e);
id = tar.id;
}
var el = Dom.get(id);
checked = el.checked;
var className = id;
if (checked) {
show[id.replace('show_', '')] = true;
Dom.addClass(document.body, className);
YAHOO.util.Cookie.setSub('yuidoc', id, 'checked');
} else {
show[id.replace('show_', '')] = false;
Dom.removeClass(document.body, className);
YAHOO.util.Cookie.setSub('yuidoc', id, '');
}
};
var checkCookie = function(id) {
var value = YAHOO.util.Cookie.getSub('yuidoc', id),
el = Dom.get(id), checked = (value === 'checked');;
el.checked = checked;
return checked;
};
var els = ['show_deprecated', 'show_protected', 'show_private'],
reapplyHash = false;
for (var i = 0; i < els.length; i++) {
Event.on(els[i], 'click', handleClick);
reapplyHash = checkCookie(els[i]) || reapplyHash;
handleClick(els[i]);
}
// If we dynamically show private/protected/etc items during
// load, we need to reapply anchors so that the search feature
// works correctly for items that are initially hidden.
if (reapplyHash) {
var dl = document.location, hash = dl.hash;
if (hash) {
dl.hash = hash;
}
}
};
//Starting the AutoComplete code
var getResults = function(query) {
var results = [];
if (query && query.length > 0) {
var q = query.toLowerCase();
for (var i=0, len=propdata.length; i -1 ) {
results.push([query, prop]);
}
}
}
}
return results;
};
// Define Custom Event handlers
var myOnDataReturn = function(sType, aArgs) {
var oAutoComp = aArgs[0];
var query = aArgs[1];
var aResults = aArgs[2];
if(aResults.length == 0) {
if (query.length > 0) {
oAutoComp.setBody("Not found
");
}
}
};
var myOnItemSelect = function(sType, aArgs) {
var ac = aArgs[0];
var item = aArgs[2];
location.href = item[1].url;
};
Event.onAvailable("searchresults", function() {
// Instantiate JS Function DataSource
oACDS = new YAHOO.widget.DS_JSFunction(getResults);
oACDS.maxCacheEntries = 30;
// Instantiate AutoComplete
oAutoComp = new YAHOO.widget.AutoComplete('searchinput','searchresults', oACDS);
//oAutoComp.alwaysShowContainer = true;
oAutoComp.queryDelay = 0.2;
oAutoComp.maxResultsDisplayed = 200;
oAutoComp.minQueryLength = 0;
oAutoComp.formatResult = function(oResultItem, query) {
// var sMarkup = "" + oResultItem[1].host + ' ' + oResultItem[1].name + '';
// return sMarkup;
// return "" + oResultItem[1].host + ' ' + oResultItem[1].name + '';
return YAHOO.lang.substitute(ITEM_TEMPLATE, oResultItem[1]);
};
// Subscribe to Custom Events
oAutoComp.dataReturnEvent.subscribe(myOnDataReturn);
oAutoComp.itemSelectEvent.subscribe(myOnItemSelect);
// Set initial content in the container
oAutoComp.sendQuery(Dom.get("searchinput").value);
});
var validateForm = function() {
return false;
};
YAHOO.util.Event.onAvailable('classTab', function() {
var tabs = new YAHOO.widget.TabView('classTab');
});
/*
YAHOO.util.Event.onAvailable('codeTree', function() {
var tree1 = new YAHOO.widget.TreeView('codeTree');
tree1.render();
});
*/
YAHOO.util.Event.onDOMReady(function() {
if (typeof ALL_YUI_PROPS != "undefined") {
YAHOO.yuidoc.initUI();
}
});
})();