Jump to content
uniGUI Discussion Forums

mhmda

uniGUI Subscriber
  • Content Count

    916
  • Joined

  • Last visited

  • Days Won

    95

Posts posted by mhmda


  1. VPS mean shared resources with other users.

    We use contabo services for years and recently we purchased a dedicated server with 500 GB SSD and 4 TB secondary H.D we also purchased a RAID hardawre to backup primary SSD at real time in case of failure. We backup our customer data (DB & files) to FTP from contabo and we also backup data to Amazaon s3 account using CloudBerry application.


  2. We already use that but using a client-side code, you may use Gid->ClientEvents->UniEvents->beforeInit:

     

    config.features=[{
            ftype: 'rowbody',
            getAdditionalData: function(data, idx, record, orig) {
                // Usually you would style the my-body-class in a CSS file
                return {
                    rowBody: '<div style="padding: 1em">' + record.get("desc") + '</div>',
                    rowBodyCls: "my-body-class"
                };
            }
        }];

     

    • Upvote 1

  3. function IsValidEmail(const Value: string): Boolean;
    function CheckAllowed(const s: string): Boolean;
      var i: Integer;
      begin
        Result:= false;
        for i:= 1 to Length(s) do
          if not (s[i] in ['a'..'z',
                           'A'..'Z',
                           '0'..'9',
                           '_',
                           '-',
                           '.']) then Exit;
        Result:= true;
      end;
    var
      i: Integer;
      NamePart, ServerPart: string;
    begin
      Result:= False;
      i:=Pos('@', Value);
      if i=0 then Exit;
      NamePart:=Copy(Value, 1, i-1);
      ServerPart:=Copy(Value, i+1, Length(Value));
      if (Length(NamePart)=0) or ((Length(ServerPart)<5)) then Exit;
      i:=Pos('.', ServerPart);
      if (i=0) or (i>(Length(serverPart)-2)) then Exit;
      Result:= CheckAllowed(NamePart) and CheckAllowed(ServerPart);
    end;

     

    • Like 1
    • Upvote 1

  4. Hi there,

    I check the file type and in some cases I need to delete the copied file but it uses by the unigui app.

    mFileUpload.TargetFolder :=  ServerModule.StartPath+'compsdata\';
    .....
    procedure TfrmAttachFiles.mFileUploadCompleted(Sender: TObject;
    ....
    DestName:=ExtractFileName(AStream.FileName);
    CopyFile(PChar(AStream.FileName), PChar(DestName), False);
    ....
    deletefile(ServerModule.StartPath+'compsdata\'+DestName);//file is used by other process (unigui app in this case)

     

    Any idea? 


  5. The Front-End is Extjs, which creating element in DOM, there is no static html,  your page is SAP (single application page), the framework has it's own layout engine to be cross-device, I don't see any need to use bootstrap. 

×