Joomla! Day Brasil 2007 - Case Hospital das Clínicas de Porto Alegre
-
Upload
marcio-okabe -
Category
Education
-
view
939 -
download
0
Transcript of Joomla! Day Brasil 2007 - Case Hospital das Clínicas de Porto Alegre
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Tecnologia da Informação à Serviço da Tecnologia da Informação à Serviço da SaúdeSaúde
Projeto Internet/Intranet do Hospital de Clínicas de Porto Alegre - HCPA
Belini Fagundes de Mello – Analista Jú[email protected]
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Porte do HCPAPorte do HCPA
Assistência (anual)Assistência (anual)538.520 consultas33.755 cirurgias3.971 partos27.033 internações2.091.441 exames331 transplantesFaturamento (anual)Faturamento (anual)R$ 79.000.000
InstalaçõesInstalações749 leitos144 consultórios62 especialidades
Recursos HumanosRecursos Humanos3983 funcionários272 Prof Medicina20 Prof Enfermagem298 Médicos Residentes300 Médicos Contratados
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Cultura Web HCPACultura Web HCPA• Publicadores de conteúdo em diversas áreasPublicadores de conteúdo em diversas áreas• Notícias do site gerenciadas por jornalistasNotícias do site gerenciadas por jornalistas• Suporte e manutenção feitos pelo Grupo de Suporte e manutenção feitos pelo Grupo de
SistemasSistemas• Uso de Sistema Gerenciador de Conteúdo Uso de Sistema Gerenciador de Conteúdo
(Content Managemant System-CMS)(Content Managemant System-CMS)
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Antiga Antiga Internet/Internet/IntranetIntranet• Servidor IBMServidor IBM• Windows 2000 ServerWindows 2000 Server• SQL Server 2000SQL Server 2000• Internet Information Services - IISInternet Information Services - IIS• ASP 3.0ASP 3.0• Objetos COM+Objetos COM+• CMS proprietárioCMS proprietário
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Administração E-ManagerAdministração E-Manager
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Editando no E-ManagerEditando no E-Manager
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Problemas da Antiga Internet/IntranetProblemas da Antiga Internet/Intranet• CMS ProprietárioCMS Proprietário• Objetos COM+ sem fontesObjetos COM+ sem fontes• Baixa manutenibilidade e portabilidadeBaixa manutenibilidade e portabilidade• Problemas de performanceProblemas de performance• Editores de conteúdo com funcionalidades Editores de conteúdo com funcionalidades
problemáticasproblemáticas• ExpansibilidadeExpansibilidade• Suporte e novos recursos dependente do Suporte e novos recursos dependente do
desenvolvedordesenvolvedor
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Escolha do CMSEscolha do CMS• Contemplar contingência de servidoresContemplar contingência de servidores• Portal Internet/Intranet únicosPortal Internet/Intranet únicos• Curva de aprendizado menor para Curva de aprendizado menor para
publicadorespublicadores• Possibilidade de acrescentar novas Possibilidade de acrescentar novas
funcionalidadesfuncionalidades• Facilidade para alterar o código fonteFacilidade para alterar o código fonte• Domínio da comunidade na linguagem de Domínio da comunidade na linguagem de
programação do CMSprogramação do CMS
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
CMS TestadosCMS Testados• XoopsXoops• PHP NukePHP Nuke• Post NukePost Nuke• XarayaXaraya• Mambo (Joomla)Mambo (Joomla)
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Nova Internet/IntranetNova Internet/Intranet• Servidor DellServidor Dell• Linux Red Hat AS4Linux Red Hat AS4• PHP 4.3.9PHP 4.3.9• Apache 2.0.52Apache 2.0.52• My SQL 4.1.12My SQL 4.1.12• Joomla!Joomla!
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Vantagens da Nova Internet/IntranetVantagens da Nova Internet/Intranet• CMS de código abertoCMS de código aberto• Possibilidade de alterar o fontePossibilidade de alterar o fonte• Manutenibilidade Manutenibilidade • PortabilidadePortabilidade• UsabilidadeUsabilidade• PerformancePerformance
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Requisitos Nova Internet/IntranetRequisitos Nova Internet/Intranet• Templates diferentes para Internet e IntranetTemplates diferentes para Internet e Intranet• Permitir diferenciar conteúdo específico da Permitir diferenciar conteúdo específico da
Internet e IntranetInternet e Intranet• Permitir que o publicador possa alterar Permitir que o publicador possa alterar
somente ao seu próprio conteúdosomente ao seu próprio conteúdo• Permitir acionar aplicativos do micro do Permitir acionar aplicativos do micro do
usuário diretamente do portal Intranetusuário diretamente do portal Intranet• Formulários para comunicação Formulários para comunicação
interna/externa integrados ao corpo do siteinterna/externa integrados ao corpo do site
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Requisitos Nova Internet/IntranetRequisitos Nova Internet/Intranet• Repositório para documentos internosRepositório para documentos internos• Permitir acesso externo à Intranet para Permitir acesso externo à Intranet para
usuários do hospital (https)usuários do hospital (https)• Acesso interno à intranet deve ser Acesso interno à intranet deve ser
transparente com logon automáticotransparente com logon automático• Ter calendário dos eventos com folder e Ter calendário dos eventos com folder e
possibilidade de inscriçãopossibilidade de inscrição• Menu pull-down com scroll internoMenu pull-down com scroll interno
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Componentes, Módulos e Bots de terceirosComponentes, Módulos e Bots de terceiros• JEvents - Agenda de eventos e calendárioJEvents - Agenda de eventos e calendário• JACLPlus – Criação e manutenção de grupos JACLPlus – Criação e manutenção de grupos
de usuários (Access Control List)de usuários (Access Control List)• ExitPull - Criação, manutenção e exibição de ExitPull - Criação, manutenção e exibição de
enquetes e resultadosenquetes e resultados• JCE Editor/TMEdit - Editor WYISWYG JCE Editor/TMEdit - Editor WYISWYG • DOCMAN - Gerenciador de documentosDOCMAN - Gerenciador de documentos• MamVideo – Gerenciador de vídeosMamVideo – Gerenciador de vídeos
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Componentes, Módulos e Bots própriosComponentes, Módulos e Bots próprios• Componente para registro e visualização de Componente para registro e visualização de
download de editaisdownload de editais• Vários módulos com links de destaques para Vários módulos com links de destaques para
diferentes seções do sitediferentes seções do site• Formulários convertidos para componentes Formulários convertidos para componentes
para integração no corpo do Joomlapara integração no corpo do Joomla• Novo componente de LogonNovo componente de Logon• Módulo com links para aplicativos Módulo com links para aplicativos
diferenciado por estações da redediferenciado por estações da rede• Hacks diversosHacks diversos
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Usuários do PortalUsuários do Portal• ExternoExterno
– InternautasInternautas– Usuários do Hospital acessando a IntranetUsuários do Hospital acessando a Intranet
• InternoInterno– Usuários da rede interna do Hospital Usuários da rede interna do Hospital
acessando conteúdo da Internet e Intranetacessando conteúdo da Internet e Intranet
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Formas de Acesso à IntranetFormas de Acesso à Intranet• ExternoExterno
– Através do link do portalAtravés do link do portal• Formulário de logon encriptado (https)Formulário de logon encriptado (https)
• InternoInterno– Acesso direto (sem logon explicito):Acesso direto (sem logon explicito):
• Através do link do portalAtravés do link do portal• URL URL http://intranethttp://intranet
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Esquema de AcessoEsquema de AcessoAcesso Externo/Interno
Link do Portal
IP Externo IP Interno
Script PHP
http://intranet
JoomlaNovo Componente de Logon
Domínio VirtualDomínio Virtual
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Novo Componente de LogonNovo Componente de Logon• Controla e centraliza o acesso tanto interno Controla e centraliza o acesso tanto interno
quanto externoquanto externo• Permite logon no Joomla de forma Permite logon no Joomla de forma
transparentetransparente• Aceita Logon automático através da URL: Aceita Logon automático através da URL:
http://intranethttp://intranet• Protege com https o logon externoProtege com https o logon externo• Verifica no LDAP se usuário válido (acesso Verifica no LDAP se usuário válido (acesso
externo)externo)
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Esquema do Componente de LogonEsquema do Componente de LogonNovo Componente de Logon
Caso Externo Caso Interno
Muda URL/https
Form seguro
Verifica LDAPIntranet
Logon no Joomla com usuário genéricoForm com Autosubmit
Acesso Negado
OKOK
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Controlando Acesso ao ConteúdoControlando Acesso ao Conteúdo• Componente JACLPlusComponente JACLPlus• Criação de novos níveis/grupos de acesso Criação de novos níveis/grupos de acesso
(New Access Control List - ACL)(New Access Control List - ACL)• Acesso ao conteúdo do site depende do ACL Acesso ao conteúdo do site depende do ACL
aplicadoaplicado• Usuários/Conteúdos/Template Intranet Usuários/Conteúdos/Template Intranet
pertencem a um ACL específicopertencem a um ACL específico
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Níveis/Grupos de AcessoNíveis/Grupos de Acesso• Níveis de acesso (ACL):Níveis de acesso (ACL):
– PublicPublic– InternetInternet– IntranetIntranet
• Grupos de Usuário:Grupos de Usuário:– Public FrontEnd (Public, Internet)Public FrontEnd (Public, Internet)– Usuários Intranet (Public, Registered, Usuários Intranet (Public, Registered,
Intranet)Intranet)
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Níveis de Acesso/Grupos de UsuáriosNíveis de Acesso/Grupos de Usuários• Public FrontEnd (Public, Internet)Public FrontEnd (Public, Internet)
– Usuário com acesso ao conteúdo aberto do Usuário com acesso ao conteúdo aberto do portalportal
– Não necessita de logonNão necessita de logon• Usuários Intranet (Public, Registered, Usuários Intranet (Public, Registered,
Intranet)Intranet)– Usuário com acesso para ambos conteúdos Usuário com acesso para ambos conteúdos
aberto e da intranet do portal, exceto aberto e da intranet do portal, exceto material exclusivo da internet.material exclusivo da internet.
– Necessita de logonNecessita de logon
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Níveis de AcessoNíveis de Acesso• Conteúdo exclusivo ou compartilhadoConteúdo exclusivo ou compartilhado
– MenusMenus– Conteúdo EstáticoConteúdo Estático– Seções/CategoriasSeções/Categorias– MódulosMódulos– ComponentesComponentes
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
HacksHacks• index.phpindex.php
– Mudar tema para Intranet caso usuário Mudar tema para Intranet caso usuário tenha ACL “intranet”tenha ACL “intranet”
– Incluir código:Incluir código:// loads template fileif (strstr($my->jaclplus, '6')) $cur_template = "intranet";
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
HacksHacks• includes/joomla.php: includes/joomla.php:
– Permitir logon múltiplos com o mesmo Permitir logon múltiplos com o mesmo usuário, comentar:usuário, comentar:
// check to see if site is a production site// allows multiple logins with same user for a demo site/* * COMENTADO PELO GSIS/SSR/BD PARA PERMITIR * MULTIPLOS LOGONS COM O MESMO USUÁRIO * * if ( $_VERSION->SITE ) {
// delete any old front sessions to stop duplicate sessions$query = "DELETE FROM #__session". "\n WHERE session_id != '$session->session_id'". "\n AND username = '$row->username'". "\n AND userid = $row->id". "\n AND gid = $row->gid". "\n AND guest = 0";$this->_db->setQuery( $query );$this->_db->query();} FIM DO COMENTÁRIO*/
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Módulo: Link para AplicativosMódulo: Link para Aplicativos• Identifica o nome da máquinaIdentifica o nome da máquina• Busca no banco Oracle a relação de Busca no banco Oracle a relação de
aplicativos da referida máquinaaplicativos da referida máquina• Grava Cookie com nome da máquinaGrava Cookie com nome da máquina• Monta lista com links para arquivos .lnk Monta lista com links para arquivos .lnk
contendo a chamada ao aplicativocontendo a chamada ao aplicativo• Atualização feita por aplicativo Oracle Atualização feita por aplicativo Oracle
(Designer)(Designer)
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Adaptações FuturasAdaptações Futuras• Permitir criar usuário automaticamente:Permitir criar usuário automaticamente:• Usuários ExternosUsuários Externos
– Usuário digita informações em form seguroUsuário digita informações em form seguro– Verificar se usuário é válido no LDAPVerificar se usuário é válido no LDAP– Verificar se usuário não existe no JoomlaVerificar se usuário não existe no Joomla
• Caso não existe criarCaso não existe criar• Logar no JoomlaLogar no Joomla
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Adaptações FuturasAdaptações Futuras• Usuários InternosUsuários Internos
– Usuário clica no link ou usa URL diretaUsuário clica no link ou usa URL direta– Script obtém nome do usuário logado no Script obtém nome do usuário logado no
sistemasistema– Verificar se usuário é válido no LDAPVerificar se usuário é válido no LDAP– Verificar se usuário não existe no JoomlaVerificar se usuário não existe no Joomla
• Caso não existe criarCaso não existe criar• Logar no JoomlaLogar no Joomla
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Portal HCPAPortal HCPA
PERGUNTAS?
Hospital de Clínicas de Porto AlegreGrupo de Sistemas
Obrigado!Obrigado!
Belini Fagundes de [email protected]