Ignore:
Timestamp:
Oct 9, 2012, 1:58:45 PM (12 years ago)
Author:
chronos
Message:
  • Přidáno: Hlavní modul Base, který slouží jako základní rozhraní k aplikaci pro ostatní moduly. Modul System zajistí udržování seznamu instalovaných modulů v perzistentním úložišti v databázi.
  • Upraveno: Správce modulů ModuleManager je nyní použit pro každé komunikační spojení zvlášť.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Modules/Portal/UModulePortal.pas

    r104 r105  
    77uses
    88  Classes, SysUtils, UModularSystem, SpecializedDictionary, USqlDatabase,
    9   UUtils, UWebSession, SpecializedList, UUser, UWebPage, UHtmlClasses;
     9  UUtils, UWebSession, SpecializedList, UUser, UWebPage, UHtmlClasses,
     10  UModuleBase, UModuleUser;
    1011
    1112type
     
    1617  private
    1718    Time: TDateTime;
     19    WebPagePortal: TWebPage;
    1820    function ShowFooter(Session: TWebSession): string;
    1921    function ShowHeader(Session: TWebSession): string;
    2022    procedure GeneratePage(ASession: TWebSession; Page: TWebPage);
    2123  public
     24    ModuleBase: TModuleBase;
     25    ModuleUser: TModuleUser;
    2226    constructor Create(Owner: TComponent); override;
    2327    destructor Destroy; override;
     
    4650  Author := 'Chronosoft';
    4751  Dependencies.Add('User');
     52  Dependencies.Add('Finance');
     53  Dependencies.Add('News');
    4854end;
    4955
     
    5561procedure TModulePortal.Start;
    5662begin
    57   Core.GeneratePage := GeneratePage;
    58   Core.Pages.RegisterPage(TWebPagePortal, WebPagePortal, 'portal');
    59   inherited;
     63  BeforeStart;
     64  ModuleBase := TModuleBase(Manager.FindModuleByName('Base'));
     65  ModuleBase.GeneratePage := GeneratePage;
     66  WebPagePortal := TWebPagePortal.Create(nil);
     67  ModuleBase.Pages.RegisterPage(WebPagePortal, '');
     68  TWebPagePortal(WebPagePortal).ModuleUser := TModuleUser(Manager.FindModuleByName('User'));
     69  AfterStart;
    6070end;
    6171
    6272procedure TModulePortal.Stop;
    6373begin
    64   inherited;
    65   Core.Pages.UnregisterPage('portal');
     74  BeforeStop;
     75  ModuleBase.Pages.UnregisterPage(WebPagePortal);
     76  FreeAndNil(WebPagePortal);
     77  ModuleBase := nil;
     78  AfterStop;
    6679end;
    6780
     
    208221    '<div class="Navigation"><span class="MenuItem"><strong>Navigace :: </strong> ';
    209222    Output := Output + Navigation + '</span><div class="MenuItem2">';
    210     if Session.User.Id = UnknownUser then
     223    if ModuleUser.User.Id = UnknownUser then
    211224      Output := Output + '<a href="' + MakeLink('Přihlášení',
    212225        NavigationLink('/?Action=LoginForm')) + ' ' +
    213226        MakeLink('Registrace', NavigationLink('/?Action=UserRegister'))
    214       else Output := Output + Session.User.Name + ' ' + MakeLink('Odhlásit',
     227      else Output := Output + ModuleUser.User.Name + ' ' + MakeLink('Odhlásit',
    215228        NavigationLink('/?Action=Logout'));
    216229// <a href="'.$this->System->Config['Web']['RootFolder'].'/?Action=UserOptions">Nastavení</a>';
Note: See TracChangeset for help on using the changeset viewer.