Hi
On Thu, Aug 29, 2013 at 6:07 PM, Dinesh Kumar <dinesh.ku...@enterprisedb.com > wrote: > H > i Dave, > > On Thu, Aug 29, 2013 at 8:32 AM, Dave Page <dp...@pgadmin.org> wrote: > >> >> >> >> On Thu, Aug 29, 2013 at 4:28 PM, Dinesh Kumar < >> dinesh.ku...@enterprisedb.com> wrote: >> >>> H >>> i Dave, >>> >>> On Thu, Aug 29, 2013 at 7:29 AM, Dave Page <dp...@pgadmin.org> wrote: >>> >>>> Hi >>>> >>>> >>>> On Thu, Aug 29, 2013 at 1:01 PM, Dinesh Kumar < >>>> dinesh.ku...@enterprisedb.com> wrote: >>>> >>>>> Hi Dave, >>>>> >>>>> Sorry for the delay on this issue. >>>>> >>>>> Yes, i am able to reproduce the problem in Linux but not in windows. I >>>>> am attaching the fix for this issue. After applying this fix, the >>>>> behaviour >>>>> in windows and linux are same. >>>>> >>>>> Kindly let me know if i miss anything here. >>>>> >>>> >>>> Still not quite right I'm afraid. If I open a user account with no >>>> pre-existing expiry, then the dialogue will try to execute: >>>> >>>> ALTER ROLE rolename >>>> VALID UNTIL 'infinity'; >>>> >>>> As I haven't changed anything on the dialogue, it shouldn't try to >>>> make any changes (or, enable the OK button). Also, the dialogue itself >>>> shows the current date - it should be blank. If I choose a date - then it >>>> still tries to set the expiry to infinity! >>>> >>>> Tested on Mac. >>>> >>> >>> Thanks for your inputs. In the current implementation, if the "calender >>> control" doesn't have a proper value, then we do add "infinity" to the sql >>> statement. It's the same case, in the edit/creating a role. >>> >>> I am not sure, whether we need to follow this implementation or not. I >>> mean, adding "infinity" to the end of sql statement if the calender control >>> value is an empty. >>> >>> But, i have removed this "infinity" condition and attaching the patch. >>> >> >> Infinity is correct, but: >> >> - The SQL to set it should only be generated if the user has opened the >> dialogue and removed any existing value. If the role is already set to >> infinite expiration, then it shouldn't be set again. >> >> - Obviously this requires the ability to clear that value, and to display >> is as a blank value in the event that you create a new role (it should >> default to infinity) or if opening an existing role that is already set >> that way. >> >> If the control doesn't allow you to clear the value, then maybe we need >> to add a checkbox for infinite, and when un-checked, the user is able to >> select a date and time, otherwise not. >> >> Thanks. >> >> > Thanks for the suggestions. Please find the attached the patch for the > same. > > Let me know if i miss anything here. > > Thanks in advance. > OK, that seems much better, but unfortunately still not quite perfect. I spot two issues: - Changing the time, but not the date, on an existing expiration datetime, doesn't generate SQL and enable the OK button. Changing just the date does. - If I clear the date and time, SQL is not generated to reset the valid until time to infinity. Thanks. -- Dave Page Blog: http://pgsnake.blogspot.com Twitter: @pgsnake EnterpriseDB UK: http://www.enterprisedb.com The Enterprise PostgreSQL Company