Jump to content
uniGUI Discussion Forums

sysjames

uniGUI Subscriber
  • Content Count

    19
  • Joined

  • Last visited

  • Days Won

    1

sysjames last won the day on July 6 2017

sysjames had the most liked content!

Community Reputation

4 Neutral

About sysjames

  • Rank
    Newbie

Profile Information

  • Gender
    Male
  • Location
    Texas

Recent Profile Visitors

57 profile views
  1. sysjames

    Still having problems with login form

    EnableAsynchronousOperations was set to false. I don't know how I managed to unset it. That fixed the problem. Thanks to all for your help.
  2. sysjames

    Still having problems with login form

    I'm sorry. I'm not sophisticated enough to understand your post. I'm not using a SQL Database, but rather Amazon S3 for object storage. I do thank you for your reply, however.
  3. I am still having problems with my login form that I hope someone can help me with. The relevant code in the login form follows. The problem is that it will not present the error message at all, but just loops and finally exits without presenting an error message. I hope someone can give me a clue as to why it is behaving this way. Procedure TUniLoginForm1.LoginBtnClick(Sender: TObject); Var Acct: TAccount; Begin Acct := TAccount.Create; Try ModalResult := mrNone; While ModalResult = mrNone Do If LoadAccount(EmailEntry.Text, PassEntry.Text, Acct) Then Begin UniMainModule.SetAcct(Acct.SerialClass); ModalResult := mrOK End Else Begin MessageDlg('Password or Email is in error',mtWarning,[mbOK]); <<<<<<<Does not present this message dialog Inc(ErrorCount); If ErrorCount > 3 Then ModalResult := mrCancel; End; Finally Acct.Free; End; End; The LoadAccount that is called is: Function LoadAccount(Const Email, Pass: String; Var acct: TAccount): Boolean; Var MS: TMemoryStream; Begin MS := TMemoryStream.Create; Result := True; Try Try DoGetObject('acct.' + StringToHex(LowerCase(Email)), MS); acct.SerialClass := MS; Except Result := False; End; If (acct.Pass <> Pass) And (acct.AltPass <> Pass) Then Result := False; Finally MS.Free; End; End;
  4. I want to use FastSpring as my payment service in my web app. What is the best way to do this? I am selling a yearly subscription. All help is appreciated.
  5. sysjames

    AWS Elastic Beanstalk

    Can UniGui applications be deployed in the AWS Elastic Beanstalk service?
  6. sysjames

    How to present error message in login screen

    Thank you so much! The sample has really been helpful. Thanks again!
  7. sysjames

    How to present error message in login screen

    Thank you for your reply. However, my problem remains. In the code shown below, I still get to the MessageDlg line and the main program is invoked (which causes a problem, since the account object is used in the creation of the main form), the message isn't presented until the main form is created. Procedure TUniLoginForm1.LoginBtnClick(Sender: TObject); Begin ModalResult := mrNone; If AccountExtant(EmailEntry.Text, PassEntry.Text) Then Begin UniMainModule.Account := LoadAccount(EmailEntry.Text, PassEntry.Text); ModalResult := mrOK; Close; End Else messagedlg('The account or the password is in error', mtWarning, [mbOK]); End;
  8. sysjames

    How to present error message in login screen

    This was my last attempt: I had a panel called "MessageArea" with a label called "MessageText". I was putting the message text into MessageText and making MessageArea visible (It was not visible at the start). The trouble with this approach was that nothing stopped the loop (as a real dialog would). I also tried MessageDlg and even UniSF's SweetAlert, None of which worked (they did not display). (I am about to conclude that I should bypass the login screen altogether, main my own (Main) and use secondary created screens as to process the application. My current code follows: Procedure TUniLoginForm1.CancelBtnClick(Sender: TObject); Begin ModalResult := mrCancel; Close End; Procedure TUniLoginForm1.CreateBtnClick(Sender: TObject); Var CreateOK: Boolean; Begin CreateOK := False; While Not CreateOK Do Begin If (Email.Text <> '') And (Password.Text <> '') And (FName.Text <> '') And (LName.Text <> '') Then Begin Try UniMainModule.Account := CreateAccount(Email.Text, Password.Text, FName.Text, LName.Text, 0); ModalResult := mrOK; Close; Except On E: PlErrAcctAExist Do Begin MessageText.Text := 'That account already exists'; MessageArea.Visible := True; End; End; End; End; End; Procedure TUniLoginForm1.LoginBtnClick(Sender: TObject); Var LoginOK: Boolean; Begin LoginOK := False; While Not LoginOK Do Begin Try UniMainModule.Account := LoadAccount(EmailEntry.Text, PassEntry.Text); LoginOK := True; Except On E: PlErrAcctNF Do LoginOK := False; On E: PlErrBadPass Do LoginOK := False; End; If LoginOK Then Begin ModalResult := mrOK; Close; End Else Begin MessageText.Text := 'The account or the password is in error'; MessageArea.Visible := True; End; End; End; Procedure TUniLoginForm1.MessageCancelBtnClick(Sender: TObject); Begin ModalResult := mrCancel; Close; End; Procedure TUniLoginForm1.TryAgainBtnClick(Sender: TObject); Begin MessageArea.Visible := False End;
  9. I have a login screen that serves two purposes: To login OR to create a new account. The problem I have is in trying to present messages when the user enters incorrect information or tries to create an already existing account. I've tried several methods of presenting the messages (and perhaps giving them a second chance) without success. How do you do this? A picture of my login screen is attached.
  10. sysjames

    Survey: Features you want to see in version 1.0

    Let me preface my requests with the following comment: uniGui is the best product for Delphi for building web apps that I have seen. Bar none. I'm really excited about this tool and hope it grows and grows. Thank you for a wonderful tool! The two most important features for the future (since you have already released 1.0) is as follows: More documentation on the component interfaces. (I know that is a big ticket item that is labor intensive). The ability to handle the back button on the browser. Case in point: Trello, which is a single page app, nonetheless will honor the back button (and return either to the previous configuration of trello) or the previous web page (whatever it was). But, here is the point: If you use the forward button on the browser, trello appears, having maintained the state the user last left is. Apps like this are my competition and my users will expect to use that button. More ability / information to add third party components. This is one of the hallmarks of Delphi. Many have decreased much development time by using DevExpress or TMS components (among others). I realize, that at the moment, there may only be one (Ext JS) vendor, but I think there may be more once the number of users of uniGui gets large enough (which I expect it will).
  11. sysjames

    Missing some visible components in Delphi IDE

    There doesn't seem to be a visible component for this. If you look at the example in mdemo, you will find that it is a form with AlignmentControl = uniAlignmentClient which has a TUniContainerPanel with the layout set to accordion which contains other UniPanels with their layout set to fit. And, of course, each of the sub-panels contain the tabs and other controls you see in the example. Hope this helps.
  12. sysjames

    Can't install Tokyo

    Thank you! That was the problem. I downloaded the incorrect version. I am installed. Thanks again.
  13. sysjames

    Can't install Tokyo

    It still shows all the versions of Delphi, from 2006 to 10.1 Berlin - 64-bit, none of which I have installed. I ONLY have 10.2 Tokyo installed. It is not shown in the list. I am unable to install. I can re-install the trial version. It shows 10.2 in the list.
  14. sysjames

    Can't install Tokyo

    I selected Tokyo (only) and received an error. Uninstalled and now the installer will not present tokyo as an option for install. This is on Windows 10 and I was trying to install Professional 1.0.
  15. sysjames

    _ffc_ is not defined.

    Thanks. I uninstalled and re-installed and now am fine. I must have looked at the trial some time in the past and had forgotten about it. Thanks for you help. Happily evaluating.
×