Changes between Version 2 and Version 3 of phpgwapi/dev


Ignore:
Timestamp:
11/05/09 08:13:11 (14 years ago)
Author:
amuller
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • phpgwapi/dev

    v2 v3  
    77        A API do Expresso é uma custumização da API do eGroupWare que por sua vez era uma custumização da API do phpGroupWare. Este guia explica de forma mais clara possível, com mais informações possíveis como é o funcionamento da API do Expresso. Com todas as melhorias que foram agregadas ao longo destas revisões. 
    88 
    9  == 1.2 Estrutura de diretórios == 
     9 == 1.1.1 O que essa API provê? == 
     10 
     11Manuseio de sessão, usuários e grupos, múltiplas bases de dados, uma interface para sistema de arquivos. 
     12 
     13 == 1.2 Escrevendo seu código php == 
     14 
     15Você pode escrever seu código do início ou portar sua aplicação php para o Expresso. Para isso cada página php deve incluir o cabeçalho padrão da API: 
     16{{{ 
     17<?php 
     18$GLOBALS['phpgw_info']['flags']['currentapp'] = 'appname'; 
     19include('../header.inc.php'); 
     20?> 
     21}}} 
     22 
     23Isso irá trazer como benefício ao seu código: 
     24 
     25 * A API será carregada (com todas as informações necessárias) 
     26 * A barra de aplicações será carregada 
     27 * A sessão será manuseada a protegida 
     28 
     29Para aplicações que utilizam requisições em background (AJAX) e precisam de '''velocidade''' e menos uso de memória cada página php '''pode''' incluir o cabeçalho "''session''" da API: 
     30{{{ 
     31<?php 
     32if(!isset($GLOBALS['phpgw_info'])){ 
     33        $GLOBALS['phpgw_info']['flags'] = array( 
     34                'currentapp' => 'expressoMail1_2', 
     35                'nonavbar'   => true, 
     36                'noheader'   => true 
     37        ); 
     38} 
     39require_once '../header.session.inc.php'; 
     40?> 
     41}}} 
     42 
     43Isso irá trazer como benefício ao seu código: 
     44 
     45 * A API '''não''' será carregada inteira 
     46 * A barra de aplicações '''não''' será carregada 
     47 * A sessão será manuseada a protegida da mesma maneira 
     48 
     49 == 1.3 Estrutura de diretórios == 
    1050        A estrutura de diretórios do Expresso está definida da seguinte forma: o expresso possui em seu diretório (raíz /expresso) diversos subdiretórios, que representam cada módulo do sistema. Por exemplo, o módulo de expressoMail está no diretório '/expresso/expressoMail', e o módulo Agenda está no diretório '/expresso/calendar'. 
    1151        A maioria dos módulos do sistema foi desenvolvida seguindo os padrões de implementação do eGroupware,  e segue desde padrões de codificação da linguagem, até padrões para a estrutura de diretórios e nome dos arquivos. Algumas raras excessões são exemplificadas ao longo deste documento. 
     
    70110    Utilizando este procedimento, a Celepar criou o template personalizado, customizando o eGroupWare e gerando o Expresso Livre. 
    71111 
    72  == 1.3 Criando um módulo == 
     112 == 1.4 Criando um módulo == 
    73113 
    74 Depois de ter criado uma estrutura de diretórios e arquivos como a explicada acima, existe ainda alguns passos adicionais que devem ser demonstrados pois o fato de criar uma aplicação no sistema de arquivos não é suficiente para se usar o novo módulo. O administrador deve entrar em /setup (via navegador) e instalar a aplicação utilizando o "Passo 5 - Gerenciamento avançado da aplicação". E depois disso atualizar todas as permissões em "Admin/'seção ExpressoAdmin'/gerentes" e também no expressoAdmin grupos ou usuários. 
     114A parte de codificação é bem exemplificada pelos módulos existentes. Depois de ter criado uma estrutura de diretórios e arquivos como a explicada acima, existe ainda alguns passos adicionais que devem ser demonstrados pois o fato de criar uma aplicação no sistema de arquivos não é suficiente para se usar o novo módulo. O administrador deve entrar em /setup (via navegador) e instalar a aplicação utilizando o "Passo 5 - Gerenciamento avançado da aplicação". E depois disso atualizar todas as permissões em "Admin/'seção ExpressoAdmin'/gerentes" e também no expressoAdmin grupos ou usuários. 
     115 
     116Para fazer isso manualmente sem utilização do setup do expresso execute a consulta SQL abaixo: 
     117{{{ 
     118INSERT INTO phpgw_applications (app_name, app_order, app_version, app_enabled) 
     119        VALUES('appname', 50, '2.0.1', 1); 
     120}}} 
    75121 
    76122 == 2. Arquitetura Interna do Sistema ==