<?php

class Sistema_Form_Acao extends Agro_Form {
	
	public function init() {
		
		$Acoes = new Sistema_Model_Acoes();
		$this->addElement('select', 'id_parent', array(
			'MultiOptions' => $Acoes->fetchPairs('id', 'ds_label', 'id_parent'),	
			'decorators' => $this->elementDecorator,
			'label' => 'Ação Pai'
		));
		
		$this->addElement('text', 'ds_label', array(
			'decorators' => $this->elementDecorator,
			'required' => true,
			'label' => 'Nome',
			'size' => 70
		));
		
		$this->addElement('text', 'ds_descricao', array(
			'decorators' => $this->elementDecorator,
			'label' => 'Descrição',
			'size' => 70
		));
		
		$this->addElement('text', 'ds_module', array(
			'decorators' => $this->elementDecorator,
			'required' => true,
			'label' => 'Module',
			'class' => 'lower',
			'size' => 30
		));
		
		$this->addElement('text', 'ds_controller', array(
			'decorators' => $this->elementDecorator,
			'label' => 'Controller',
			'class' => 'lower',
			'size' => 30
		));
		
		$this->addElement('text', 'ds_action', array(
			'decorators' => $this->elementDecorator,
			'label' => 'Action',
			'class' => 'lower',
			'size' => 30
		));
		
		$this->addElement('select', 'fl_tipo', array(
			'MultiOptions' => array(
				'' => 'Todas',
				'A' => 'Ação',
				'L' => 'Ação de Listagem',
				'M' => 'Ação de Menu',
				'R' => 'Ação de Relatório'
			),
			
			'decorators' => $this->elementDecorator,
			'label' => 'Tipo de Ação',
		));
		
		$this->addElement('text', 'ds_image', array(
			'decorators' => $this->elementDecorator,
			'class' => 'lower',
			'label' => 'Icone',
			'size' => 30
		));
		
		$this->addElement('text', 'ds_param', array(
			'decorators' => $this->elementDecorator,
			'label' => 'Parametro',
			'class' => 'lower',
			'size' => 30
		));
		
		$this->addElement('checkbox', 'defaultActions', array(
			'decorators' => $this->elementDecorator,
			'label' => 'Adicionar ações padrão'
		));		
	}
	
	public function populate(array $values) {
		
		if ($values[fl_listagem]) {
			$values[flags] = 'L';
		} elseif ($values[fl_menu]) {
			$values[flags] = 'M';
		}
		
		parent::populate($values);
	}
}