<?php

class Zend_View_Helper_GetMenuUsuario extends Zend_View_Helper_Abstract {
	
	public function getMenuUsuario($idUsuario) {
		if ($idUsuario) {
			$Usuarios = new Sistema_Model_Usuarios();
			$Usuario = $Usuarios->fetchAuth($idUsuario);
			ob_start();
			
			?>
			<link rel="stylesheet" href="/resources/css/checktree.css" type="text/css" media="screen" />
			<script type="text/javascript" src="/resources/jquery/jquery.checkboxtree.js"></script>
			<script type="text/javascript" src="/resources/javascript/checktree.js"></script>
			<br />
			<ul class="unorderedlisttree">
				<?=$this->getMenusContent($Usuario->ds_chave, '', $idUsuario);?>
			</ul>
			<?
			
			$html = ob_get_contents();
			ob_end_clean();
			
			return $html;
		}
	}
	
	public function getMenusContent($role, $parent=0, $idUsuario=false) {
		$Acoes = new Sistema_Model_Acoes();
		$Rs = $Acoes->carregaAcoes($parent);
		
		ob_start();
		$html = '';
		if ($Rs) {

			foreach ($Rs as $Row) {
				if (Agro_Util::checkPermission($Row)) {
				    $checked = (Agro_Util::checkPermission($Row, $role) ? 'checked' : '');
        			
				    if(!$checked){
        			    $checked = ($Acoes->checkUserAllowed($idUsuario, $Row->id) ? 'checked' : '');
					}
					?>
					
					<li>
						<input type='checkbox' name='permissoes[<?=$Row->id?>]' value='<?=$Row->id?>' id='permissoes_<?=$Row->id?>' <?=$checked;?> />
						<label><?=$Row->ds_label?></label>
						
						<? if ($Acoes->checkMenuParent($Row->id)): ?>
							<ul><?=$this->getMenusContent($role, $Row->id, $idUsuario); ?></ul>
						<? endif; ?>
					</li>
					<?
				}
			}
		}
		
		$html = ob_get_contents();
		ob_end_clean();
		
		return $html;
	}
}