/************************************************

	Form Validation

	/includes/js/discussions/validation.js

	Copyright © DailyStrength, 2008.

***/

groups_validation_rules = {
	join_group_reg : {
		rules: {
			jg_email: {
				required: true,
				email: true,
				dsremote: "email_available"
			},
			jg_email2: {
				equalTo: "#jg_email"
			},
			jg_password: {
				required: true,
				minLength: 6
			},
			jg_password2: {
				equalTo: "#jg_password"
			}, 
			jg_username: {
				required: true,
				minLength: 3,
				dsremote: "username_available"
			},
			jg_terms: {
				required: true
			}
		},
		messages: {
			jg_email: {
				required: "You must enter an email address.",
				email: "Please enter a valid email address.",
				dsremote: "Sorry, that email address is already associated with another member."	
			},
			jg_email2: {
				equalTo: "The email addresses entered must match."
			},
			jg_password: {
				required: "You must enter a password.",
				minLength: "Your password must be at least 6 characters long."
			},
			jg_password2: {
				equalTo: "The passwords entered must match."
			},
			jg_username: {
				required: "Please enter a Username.",
				minLength: "Your Username must be at least 3 characters long.",
				dsremote: "Sorry, that username is not available."	
			},
			jg_terms: {
				required: "You must accept the Terms of Service"
			}
		}
	},
	create_group : {
		/* Why not define forms themselves in json...
		fieldsets: {
			group_basics: {
				title: "Basics",
				fields: {
					g_name: {
						type: "text",
						label: "Group Name"
					},
					g_url: {
						type: "text",
						label: "Group Url"
					},
					g_desc: {
						type: "textarea",
						label: "Group Description"
					}
				}
			}
		}, */
		rules: {
			g_name: {
				required: true,
				minLength: 6,
				maxLength: 50
			},
			g_url: {
				required: true,
				minLength: 3,
				maxLength: 50,
				dsremote: "groupurl_available"
			},
			g_desc: {
				required: true,
				maxLength: 500
			}
		},
		messages: {
			g_name: {
				required: "Please enter a Group Name",
				minLength: "Your Group Name must consist of at least 6 characters",
				maxLength: "Your Group Name must contain fewer than 50 characters"
			},
			g_url: {
				required: "Please enter a Group Url",
				minLength: "Your Group Url must consist of at least 3 characters",
				maxLength: "Your Group Url must contain fewer than 50 characters",
				dsremote: "Sorry, that url is not available. Please choose another."	
			},
			g_desc: {
				required: "Please enter a Group Description"
			}
		}
	},
	edit_group_main : {
		rules: {
 			g_name: {
				required: true,
				minLength: 3,
				maxLength: 50
			},
			g_desc: {
				required: true,
				maxLength: 500
			} 
		},
		messages: {
 			g_name: {
				required: "Please enter a Group name.",
				minLength: "Your Group Name must be at least 3 characters long.",
				maxLength: "Your Group Name must be fewer than 50 characters."
			},
			g_desc: {
				required: "You must enter a description for your Group."
			} 
		}
	},
	inline_login : {
		rules: {
			username: {
				required: true,
				email: true
			},
			passwd: {
				required: true,
				minLength: 6
			}
		},
		messages: {
			username: {
				required: "Please enter your email address.",
				email: "Please enter a valid email address."
			},
			passwd: {
				required: "Please enter your password."
			}
		}
	},
	invite_to_group : {
		rules: {
			gi_intro: {
				required: true
			}
		},
		messages: {
			gi_intro: {
				required: 'Please enter an invitation message.'
			}
		}
	}
};