Menu do Layout Fluency 3.0

Olá a todos,

Estou recebendo algumas MP, para explicar como eu fiz o menu vertical de uma Administração de Site que desenvolvi.

Modelo:

Vou postar todo o HTML renderizado e o CSS, e também a adaptação que fiz para o Tema, cada usuário do sistema pode escolher seu tema.

[size="5"]HTML[/size]




<!DOCTYPE html>

<html lang="pt-BR">

    <head>

        <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/base/jquery-ui.css" />

		<link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/dot-luv/jquery-ui.css" media="screen" />

		<title>Administra&ccedil;&atilde;o</title>

        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

        <meta name="robots" content="index, follow" />


        <link rel="stylesheet" type="text/css" href="default.css" media="screen, projection" />

        <!--?php $this->widget('application.extensions.jui.EJqueryUiInclude');?-->

		

    </head>


    <body>

	

	<div id="sistema">

	

		<div id="menu" class="ui-widget-header">		

			<ul id="menu">

				<li><a href="admin.html">Principal</a></li>

				<li><a href="admin/escola.html">Escolas (<strong>2</strong>)</a></li>

				<li><a href="admin/imprensa.html">Imprensas (<strong>1</strong>)</a></li>

				<li><a href="admin/pedido.html">Pedidos (<strong>9</strong>)</a></li>

				<li><a href="admin/depoimento.html">Depoimento (<strong>1</strong>)</a></li>

				<li><a href="admin/cliente.html">Clientes (<strong>6</strong>)</a></li>

			</ul>

		</div>  


		<div id="conteudo">

			<div id="boxConteudo">

				<h2>Administracao</h2>

			</div>

		</div>		

	</div>		

</body>

</html>



[size="5"]CSS (default.css)[/size]




html, body, div, span, applet, object, iframe,

h1, h2, h3, h4, h5, h6, p, blockquote, pre,

a, abbr, acronym, address, big, cite, code,

del, dfn, em, font, img, ins, kbd, q, s, samp,

small, strike, strong, sub, sup, tt, var,

b, u, i, center,

dl, dt, dd, ol, ul, li,

fieldset, form, label, legend,

table, caption, tbody, tfoot, thead, tr, th, td, button {

    margin: 0;

    padding: 0;

    border: 0;

    outline: 0;

    /*	font-size: 100%;

	vertical-align: baseline; */

    background: transparent;

    font-family:'Helvetica','Arial';

    font-size:12px;

}


div#sistema {

    background-color: #EEEEEE;

    border-left: 160px solid #222222;

    height: auto;

    margin-bottom: -20px;

    min-height: 100%;

    width: auto;

}


div#conteudo {

    background-color: #EEEEEE;

    color: #222222;

    margin-left: 0;

}


div#boxConteudo {

    background: none repeat scroll 0 0 #FFFFFF;

    height: auto;

    margin: 10px;

    padding: 10px;

    position: relative;

    width: auto;

}

/* index.php [ ul id="menu" #menu ] */


div#menu {

    padding:10px 0 0 0;

    width:160px;

    position:fixed;

    top:0;

    left:0;

    z-index:10;

    height: 100%;

    /*background-image: none;*/

    background-position: top left;

}


ul#menu {

    list-style: none;

}


ul#menu a {

    font-size:12px !important;

    text-decoration:none;

    line-height:20px;

    border: none;

}


ul#menu li {

    margin:0;

    padding:1px 10px;

    background: transparent url('images/arrowmenu.png') no-repeat 151px 2px;

    border: none;

}


ul#menu li:hover {

    background: transparent url('images/arrowmenu.png') no-repeat 151px -25px;

}


ul#menu .atualPainel {

    background: transparent url('images/arrowmenu.png') no-repeat 151px -25px;

}


ul#menu li#imagem {

    margin:1px 0 0 -10px;

    background:none;

}



Fiz algumas adaptações na extensão jui:

http://www.yiiframework.com/extension/jui/

Observando hoje, a extensão tem a opção de enviar o tema como parâmetro da extensão, como nas versões pioneiras não tinha esse parâmetro, eu setei direto no arquivo da extensão.

Observando essa nova versão da extensão, pode enviar o tema pelo parâmetro que é o mais correto

No HTML onde tem




<!--?php $this->widget('application.extensions.jui.EJqueryUiInclude');?-->



Descomenta o código, e adiciona o título do tema do usuário logado.




<?php 

$tema = Tema::model()->findByPk(Yii::app()->user->codtema);


$this->widget('application.extensions.jui.EJqueryUiInclude', array('theme'=>$tema->titulo));

?>



[size="5"]SQL[/size]




--

-- Estrutura da tabela `tema`

--


CREATE TABLE IF NOT EXISTS `tema` (

  `codtema` int(<img src='http://www.yiiframework.com/forum/public/style_emoticons/default/cool.gif' class='bbc_emoticon' alt='8)' /> NOT NULL,

  `titulo` varchar(120) NOT NULL,

  `liberar` int(1) NOT NULL,

  `datacriacao` datetime NOT NULL,

  PRIMARY KEY (`codtema`)

) ENGINE=MyISAM DEFAULT CHARSET=latin1;


--

-- Extraindo dados da tabela `tema`

--


INSERT INTO `tema` (`codtema`, `titulo`, `liberar`, `datacriacao`) VALUES

(1, 'black-tie', 1, '2010-04-27 11:59:06'),

(2, 'blitzer', 1, '2010-04-27 13:17:28'),

(3, 'cupertino', 1, '2010-04-27 13:17:45'),

(4, 'dark-hive', 1, '2010-04-27 13:40:51'),

(5, 'dot-luv', 1, '2010-04-27 13:40:54'),

(6, 'eggplant', 1, '2010-04-27 13:41:58'),

(7, 'excite-bike', 1, '2010-04-27 13:41:58'),

(8, 'flick', 1, '2010-04-27 13:41:58'),

(9, 'hot-sneaks', 1, '2010-04-27 13:41:58'),

(10, 'humanity', 1, '2010-04-27 13:41:58'),

(11, 'le-frog', 1, '2010-05-01 17:45:31'),

(12, 'mint-choc', 1, '2010-05-01 17:45:31'),

(13, 'overcast', 1, '2010-05-01 17:45:31'),

(14, 'pepper-grinder', 1, '2010-05-01 17:45:31'),

(15, 'redmond', 1, '2010-05-01 17:45:31'),

(16, 'smoothness', 1, '2010-05-01 17:45:31'),

(17, 'south-street', 1, '2010-05-01 17:45:31'),

(18, 'start', 1, '2010-05-01 17:45:31'),

(19, 'sunny', 1, '2010-05-01 17:45:31'),

(20, 'swanky-purse', 1, '2010-05-01 17:45:31'),

(21, 'trontastic', 1, '2010-05-01 17:45:31'),

(22, 'ui-darkness', 1, '2010-05-01 17:45:31'),

(23, 'ui-lightness', 1, '2010-05-01 17:45:31'),

(24, 'vader', 1, '2010-05-01 17:45:31');



Verifica atentamente com essas nova versão da extensão, onde está localizada a pasta que vai os css dos temas, abaixo vai o link onde pode-se baixar todos os temas do jqueryui:

Blog jQueryUI

Themes Package: http://jquery-ui.googlecode.com/files/jquery-ui-themes-1.8.16.zip

Se houver algum erro, dúvida, sugestão, pode opinar, estamos aqui para aprender.

Só ensinei a vocês a pescarei, quem pega o peixe e vocês, digo isso, por que o menu pode ser dinâmico, ai vai dá imaginação de vocês.

Estou colocando anexo os arquivos compactado, e contêm a imagem.

1998

fluency.zip

Muito obrigado por compartilhar!

Abraço!

Use firebug for Firefox to detect each CSS parameter.