function parse(text){
var reg = /^ ([^:\s]+)\s*: *'?((?:'|[^'])*?)'? *,? *$/
var reg_title1 = /^-\s*\[\[([^:]+):([^\]]+)\]\]/
var reg_title2 = /^-\s*(.+)/
var info = creat_info();
var dealing = false;
var memo = [];
text.split(/\r\n|\r|\n/).forEach(function(line){
if(line.indexOf('//') === 0){
} else if(!(line.indexOf(' ') === 0)){
if(!dealing){
if(reg_title1.test(line)){
dealing = true;
info['name'] = RegExp.$1;
info['data']['exampleUrl'] = RegExp.$2;
} else if(reg_title2.test(line)){
dealing = true;
info['name'] = RegExp.$1;
}
} else {
dealing = false;
memo.push(info);
info = create_info();
}
} else if(reg.test(line)){
if(dealing){
var key = RegExp.$1;
var val = RegExp.$2;
info['data'][key] = val.toLowerCase() === 'true' ? true :
val.toLowerCase() === 'false' ? false : val.replace(/\\\\/g, '\\');
}
}
});
memo.push(info);
return memo;
}
var create_info = (function(){
var url = 'http://white.s151.xrea.com/wiki/index.php?cmd=ldrize';
var time = (function(){
var trim = function(num, l){
if(num<0) num = -(num);
if(typeof(num) != 'string') num = ''+num;
var s = l - num.length;
while(s>0){
num = '0'+num;
--s;
}
return num;
}
var d = new Date;
var YYYY = trim(d.getFullYear(), 4);
var MM_1 = trim(d.getMonth()+1, 2);
var DD = trim(d.getDate(), 2);
var T = 'T';
var HH = trim(d.getHours(), 2);
var MM_2 = trim(d.getMinutes(), 2);
var SS = trim(d.getSeconds(), 2);
var offset = d.getTimezoneOffset();
var plus = '-';
if(offset<=0){
plus = '+';
offset = -(offset);
}
var ZZ_1 = trim(offset/60, 2);
var ZZ_2 = trim(offset%60, 2);
return YYYY+'-'+MM_1+'-'+DD+T+HH+':'+MM_2+':'+SS+plus+ZZ_1+':'+ZZ_2;
})();
return function(){
return {
'name' : 'none',
'database_resource_url' : url,
'updated_at' : time,
'created_at' : time,
'resource_url' : url,
'data' : {},
}
}
})();