CmdUtils.CreateCommand({
	name: "lorem",
	homepage: "http://grantrules.com/ubiquity/lorem.html",
	author: { name: "Grant Harding", email: "gharding@gmail.com"},
	contributors: ["Grant Harding"],
	license: "MIT",
	description: "Insert some lorem ipsum filler text",
	help: "Inserts lorem ipsum filler text",
	takes: {"number of words": noun_arb_text},
	
//	preview: "Generate lorem ipsum filler text",
	preview: function (pb, floop) {
		var res = this._lorem(floop);
		pb.innerHTML = res;
	},


	execute: function(floop) {
		var res = this._lorem(floop);
		CmdUtils.setSelection(res);
	},

	_lorem: function(floop) {
		var _uc = function(str) { return str.substr(0,1).toUpperCase() + str.substr(1,str.length); }
		var num = parseInt(floop.text, 10);
		if (num == 'NaN') { num = 20;}
		var str;
		var words = ['lorem', 'ipsum', 'dolor', 'sit', 'amet', 'consectetuer', 'adipiscing', 'elit', 'sed', 'diam', 'nonummy', 'nibh', 'euismod', 'tincidunt', 'ut', 'laoreet', 'dolore', 'magna', 'aliquam', 'erat', 'volutpat', 'Ut', 'wisi', 'enim', 'ad', 'minim', 'veniam', 'quis', 'nostrud', 'exerci', 'tation', 'ullamcorper', 'suscipit', 'lobortis', 'nisl', 'ut', 'aliquip', 'ex', 'ea', 'commodo', 'consequat', 'duis', 'autem', 'vel', 'eum', 'iriure', 'dolor', 'in', 'hendrerit', 'in', 'vulputate', 'velit', 'esse', 'molestie', 'consequat', 'vel', 'illum', 'dolore', 'eu', 'feugiat', 'nulla', 'facilisis', 'at', 'vero', 'eros', 'et', 'accumsan', 'et', 'iusto', 'odio', 'dignissim', 'qui', 'blandit', 'praesent', 'luptatum', 'zzril', 'delenit', 'augue', 'duis', 'dolore', 'te', 'feugait', 'nulla', 'facilisi'];
		var wrds = ['Lorem', 'ipsum', 'dolor', 'sit', 'amet'];
		if (num < 5) { wrds = wrds.splice(0,num); }
		var uc = false;
		var t = false;
		for (var i = 5; i < num; i++) {
			wrds.push((uc && !(uc = false) ? _uc(words[Math.floor(Math.random()*words.length)]) : words[Math.floor(Math.random()*words.length)]) + (Math.floor(Math.random()*15) == 1 && i+1 != num ? (Math.floor(Math.random()*2) == 1 ? ',' : (uc = true ? '.' : '')) : ''));
		}
		return wrds.join(' ') + '.';
	},
});

