/* (c) 2010 - Jean Luc BIELLMANN */

var _FormViewAction = {
	postView : function (formId) { // post handles
		// auto detect URL
		$(formId).select('.url').each(function (obj) {
			var value = String(obj.value ? obj.value : obj.innerHTML).stripScripts().stripTags().escapeHTML().replace(/'/g, '\\\'');
			if (_FormViewCtrl.mode=='edit' || (_FormViewCtrl.mode=='ls' && value.length)) {
				var img = E('img',{'src':'/mod/formview/img/icon.url.png','alt':value});
				img.addClassName('middle');
				var a = E('a',{'href':'javascript:_FormViewAction.openURL(\''+obj.id+'\')','target':'_blank'});
				a.appendChild(img);
				if (_FormViewCtrl.mode=='edit') {
					C(a,{'display':'inline'});
					obj.insert({'after':a});
				} else {
					a.appendChild(T(' '+value));
					obj.update('');
					obj.appendChild(a);
				}
			}
		});
		// auto detect EMAIL
		$(formId).select('.email').each(function (obj) {
			var value = String(obj.value ? obj.value : obj.innerHTML).stripScripts().stripTags().escapeHTML().replace(/'/g, '\\\'');
			if (_FormViewCtrl.mode=='edit' || (_FormViewCtrl.mode=='ls' && value.length)) {
				var img = E('img',{'src':'/mod/formview/img/mail_new.gif','alt':value});
				img.addClassName('middle');
				var a = E('a',{'href':'javascript:_FormViewAction.openMail(\''+obj.id+'\')'});
				if (_FormViewCtrl.mode=='edit') {
					a.update(' ').appendChild(img);
					C(a,{'display':'inline'});
					obj.insert({'after':a});
				} else {
					a.appendChild(img);
					a.appendChild(T(' '+value));
					obj.update('');
					obj.appendChild(a);
				}
			}
		});
		// auto detect DATE		
		$(formId).select('.date').each(function (obj) {
			obj.setAttribute('size','10');
			obj.setAttribute('maxlength','10');
			obj.style.width = 'auto';
			var value = obj.value.toString();
			var re = new RegExp('([0-9]{4}).([0-9]{2}).([0-9]{2})','');
			if (m = value.match(re))
				obj.value = m[3]+'/'+m[2]+'/'+m[1];
		});
	},
	openURL : function (id) {
		var obj = $(id);
		var value = String(obj.value ? obj.value : obj.innerHTML);
		if (value.match(/^http.*/)) {
			var regexp = new RegExp('http://+', 'g');
			var url = value.replace(regexp,'');
			if (!url.length)
				return _FormViewCtrl._Status.err('URL vide');
			window.open('http://'+url);
		} else {
			if (value.match(/^index.php.*/)) {
				var win = window.open(value);
			}				
		}
	},
	openMail : function (id) {
		var obj = $(id);
		var value = String(obj.value ? obj.value : obj.innerHTML)
		if (!value.length)
			return _FormViewCtrl._Status.err('Mail vide');
		document.location = 'mailto:'+value;
	}
};


