Eu até que faria algo parecido. Porém, eu procuraria reduzir ao máximo
a granularidade do nível de acesso em campos. Ou seja, eu procuraria,
de acordo com os perfis dos usuários, criar Interfaces distintas para
não ter que ficar ocultando/desabilitando campo a campo. Em outras
palavras, dentro do possível, eu colocaria campos para um perfil numa
tela e restringiria acesso à tela e não aos campos. É claro que nem
sempre isto é possível, mas mesmo nestes casos eu coloraria os campos
dentro de um container para ocultar/desabilitar vários de uma só vez.
Enfim, acredito que um projeto de interfaces cuidadoso facilita muito
a implementação das autorizações no Flex. Se o Designer não levar isto
em consideração o controle pode ser tornar custoso.
[]'s
Beck Novaes
On 10 maio, 09:21, rramires <[EMAIL PROTECTED]> wrote:
> Eu uso a um bom tempo o flash e to comecando a desenvolver em flex
> agora e provavelmente semana q vem depois de terminar de "desenhar" as
> telinhas do sistema no flex vou precisar disso tb...
>
> C/ o amfphp e flash faco algo bem simples, talvez de uma luz... valido
> o usuario e a senha no servidor e o resto faco no cliente mesmo,
> se validar retorno um objeto com as informacoes do banco, como nome,
> id e nivel de acesso ex retorna:
> objCliente.nome = "Ricardo" objCliente.id_cliente = 1,
> objCliente.nivel = "admin"
>
> se eu quero fazer como uma sessao que expira em tanto tempo depois de
> logado eu crio uma variavel qualquer e uso o setInterval pra matar ela
> depois de X tempo
> var logado:Boolean = true
>
> id = setInterval(mataLogado, 20000);
>
> function mataLogado(){
> logado = false;
> clearInterval(id)
>
> }
>
> eu criei uma classe (Comp) pra facilitar a vida ligando e desligando
> campos:
>
> // declaracao da classe
> class Comp {
> // contrutor da classe
> function Comp() {
> }
> // métodos
> static function enable() {
> // percorre todos os argumentos
> for (var i:Number = 0; i<arguments.length; i++) {
> // se encontrar true ou false
> if (arguments[i] == false || arguments[i] == true) {
> // armazena o valor booleano encontrado
> var trueOrFalse = arguments[i];
> // continua no proximo argumento
> continue;
> }
> arguments[i].enabled = trueOrFalse;
> }
> }
>
> }
>
> aii uso if mesmo pra verificar se esta logado e se tal nivel pode ver
> tal painel, component, botao etc, usando o visible ou enable:
>
> aii eu costumava fazer assim
>
> if(logado && objCliente.nivel == "admin"){
> // liga ou desliga os campos
> Comp.enable(true, campo1, campo2, false campo4, campo5)
>
> }
>
> tb fiz metodos parecidos q em vez de usar o enabled usava o visible
>
> to migrando esse tipo de classe em as2 q eu fiz pra agilizar minha
> vida no flash p/ as3 assim q terminar posto aqui, ok
>
> Quem tiver + experiencia em flex conte como costuma fazer, plz: - Se
> isso pode ser adaptado pra projetos em flex, se eh mto bizarro se eh
> legal a ideia, etc...
>
> []'s
>
> Ricardo
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para [EMAIL PROTECTED]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---