Jump to content

Tokay

uniGUI Subscriber
  • Posts

    839
  • Joined

  • Last visited

  • Days Won

    19

Posts posted by Tokay

  1. 1. Open online examples.

    1. Change theme uni_ubuntu/

    1. Open Grids - Column sort online, open column menu - visble columns - and checkboxes doesn't shows. Look at the screenshot.

    image.png.8fe3878373698d2e6e533ba416c6b2a7.png

     

    Also yosemite theme has such issue. Others it seems looks fine.

  2. I've added custom headers and do testing now. For now all works good:

    procedure TUniServerModule.UniGUIServerModuleHTTPCommand(ARequestInfo: TIdHTTPRequestInfo;
     AResponseInfo: TIdHTTPResponseInfo; var Handled: boolean);
    begin
     AResponseInfo.CustomHeaders.AddValue('strict-transport-security', 'max-age=31536000; includeSubDomains; preload');
     AResponseInfo.CustomHeaders.AddValue('X-Frame-Options', 'DENY');
     AResponseInfo.CustomHeaders.AddValue('X-Xss-Protection', '1;mode=block');
     AResponseInfo.CustomHeaders.AddValue('X-Content-Type-Options', 'nosniff');
     AResponseInfo.CustomHeaders.AddValue('Referrer-Policy', 'strict-origin');
    end;

     

    • Like 1
  3. 1. Go to DBLookupComboBox  demo

    2. Push 'refresh' button on the navigator

    3. See the 'ClientDataSet1: Missing data provider or data packet.' message

  4. Finally I've found solution.

    There is no needed to lock main session. It's already locked. I've added such condition and all's works fine:

          if U[I] <> UniSession then
            U[I].LockSession;

    And same for unlocking.

    Also I've found better code for the server stopping:

    procedure TServerControlPanelForm.ShutdownServerClick(Sender: TObject);
    var
      U : TUniGUIServerModule;
    begin
      Close;
      U := UniServerInstance;
      if Assigned(U) then U.Terminated := True;
    end;

    I've found it in the opened sources. Thank you! Source code is very useful.

    • Like 1
  5. у нас пока 800 пользователей одновременно, до 1000 к концу года. на одном запущенном инстансе, одном компе. работает круглосуточно. сфера ответственная. в целом всё работает вполне прилично. глобально больше проблем было с подключениям к базе чем собственно с вебом-унигуем. минимально к счастью удалось оставить один коннект на юзера, база - FireBird, однако уже и 1000 коннектов это сложно. как дальше пойдет пока не знаю

  6. Наконец появились полные рантайм исходники и я себе поправил как хочется :)

    в конце TUniBaseForm.Create

      with TUniGUIApplication(UniApplication).UniSession do
        if Assigned(UniMainModule) and Assigned(UniMainModule.OnNewComponent) then
          UniMainModule.OnNewComponent(Self);

    в конце TUniFrame.Create

      with UniSession do
        if Assigned(UniMainModule) and Assigned(UniMainModule.OnNewComponent) then
          UniMainModule.OnNewComponent(Self);

    'Обычный' вызов OnNewComponent убрал, дабы не было массовых вызовов.

    Благодаря дописанному удалось выкинуть реально гору лишнего кода и uses'ов. Любые вновь созданные формы и фреймы централизованно приходят в MainModule.

    Фаршад вероятно, сам не догадывается насколько важны полные исходники. Еще не было ни одной компоненты на моей памяти, которые не приходилось бы править под себя. А такие в общем сложные как Унигуй и подавно.

    У нас сейчас уже с десяток правок в Унигуе и, вижу, будет еще больше.

×
×
  • Create New...