SOURCE CODE: UizeSite.Build.Util
/*______________
| ______ | U I Z E J A V A S C R I P T F R A M E W O R K
| / / | ---------------------------------------------------
| / O / | MODULE : UizeSite.Build.Util
| / / / |
| / / / /| | ONLINE : http://www.uize.com
| /____/ /__/_| | COPYRIGHT : (c)2011-2012 UIZE
| /___ | LICENSE : Available under MIT License or GNU General Public License
|_______________| http://www.uize.com/license.html
*/
/*?
Introduction
*DEVELOPERS:* `Chris van Rensburg`
*/
Uize.module ({
name:'UizeSite.Build.Util',
required:'Uize.Build.Util',
builder:function () {
/*** Variables for Scruncher Optimization ***/
var _package = function () {};
/*** Public Static Methods ***/
_package.getFirstTitleSegment = function (_title) {return _title.match (/^\s*(.*?)\s*\|/) [1]};
_package.getExamplesByKeyword = function () {
var _examplesByKeyword = {};
for (
var
_exampleNo = -1,
_examples = Uize.Build.Util.getHtmlFilesInfo ('examples',_package.getFirstTitleSegment),
_examplesLength = _examples.length,
_example,
_keywordsStr
;
++_exampleNo < _examplesLength;
) {
if (_keywordsStr = (_example = _examples [_exampleNo]).keywords) {
var _keywords = _keywordsStr.split (' ');
for (
var _keywordNo = -1, _keywordsLength = _keywords.length, _keyword;
++_keywordNo < _keywordsLength;
)
(
_examplesByKeyword [_keyword = _keywords [_keywordNo]] ||
(_examplesByKeyword [_keyword] = [])
).push ({
title:_example.title,
url:'../' + _example.path,
description:_example.description
})
;
}
}
return _examplesByKeyword;
};
return _package;
}
});