<?php
/**
 * EditableCheckboxGroup
 *
 * Represents a set of selectable radio buttons
 * 
 * @package userforms
 */
class EditableCheckboxGroupField extends EditableMultipleOptionField {

	static $singular_name = "Checkbox Group";
	
	static $plural_name = "Checkbox Groups";
	
	function getFormField() {
		$optionSet = $this->Options();
		$options = array();
		
		$optionMap = ($optionSet) ? $optionSet->map('Title', 'Title') : array();
		
		return new CheckboxSetField($this->Name, $this->Title, $optionMap);
	}
	
	function getValueFromData($data) {
		$result = '';
		$entries = (isset($data[$this->Name])) ? $data[$this->Name] : false;
		
		if($entries) {
			if(!is_array($data[$this->Name])) {
				$entries = array($data[$this->Name]);
			}
			foreach($entries as $selected => $value) {
				if(!$result) {
					$result = $value;
				} else {
					$result .= ", " . $value;
				}
			}
		}
		return $result;
	}
}

?>