On Mon, Nov 27, 2017 at 5:01 PM, Khushboo Vashi <
[email protected]> wrote:
>
>
> On Mon, Nov 27, 2017 at 4:58 PM, Dave Page <[email protected]> wrote:
>
>>
>>
>> On Mon, Nov 27, 2017 at 11:26 AM, Khushboo Vashi <
>> [email protected]> wrote:
>>
>>>
>>>
>>> On Mon, Nov 27, 2017 at 4:47 PM, Dave Page <[email protected]> wrote:
>>>
>>>>
>>>>
>>>> On Mon, Nov 27, 2017 at 11:03 AM, Khushboo Vashi <
>>>> [email protected]> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Mon, Nov 27, 2017 at 4:13 PM, Dave Page <[email protected]> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Mon, Nov 27, 2017 at 10:39 AM, Khushboo Vashi <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Mon, Nov 27, 2017 at 2:59 PM, Dave Page <[email protected]>
>>>>>>> wrote:
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, Nov 27, 2017 at 9:19 AM, Khushboo Vashi <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Mon, Nov 27, 2017 at 2:20 PM, Dave Page <[email protected]>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Mon, Nov 27, 2017 at 5:25 AM, Khushboo Vashi <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi Dave,
>>>>>>>>>>>
>>>>>>>>>>> On Fri, Nov 24, 2017 at 3:21 PM, Dave Page <[email protected]>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Thu, Nov 23, 2017 at 10:43 AM, Khushboo Vashi <
>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Thu, Nov 23, 2017 at 2:58 PM, Dave Page <[email protected]>
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Hi
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Thu, Nov 23, 2017 at 5:03 AM, Khushboo Vashi <
>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Please find the attached patch to fix RM #2859: Can't
>>>>>>>>>>>>>>> create new user.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> The "User Management" dialogue footer was overlapping the
>>>>>>>>>>>>>>> back-grid table which has been fixed.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> If my screen is too small, it now looks like the attached
>>>>>>>>>>>>>> screenshot, which is really quite ugly.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> If we don't leave the bottom blank space then in case of
>>>>>>>>>>>>> error the error-message will shown on the grid itself and user
>>>>>>>>>>>>> can't
>>>>>>>>>>>>> perform any task.
>>>>>>>>>>>>> Please refer the attached screen-shot for the same.
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Right, but we also can't have that space left blank like that.
>>>>>>>>>>>> Can't we extend the scroll range of the grid? In other words,
>>>>>>>>>>>> always
>>>>>>>>>>>> include space for an extra row or so, so it can scroll above the
>>>>>>>>>>>> error
>>>>>>>>>>>> message, when, and only when a message is shown?
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>> Please find the attached screen-shot, If we always include an
>>>>>>>>>>> extra row.
>>>>>>>>>>> Suggestion please.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> I think that's much better, though still not ideal. What if we
>>>>>>>>>> made the error messages closable like other notifications?
>>>>>>>>>>
>>>>>>>>>> The error-messages in pgAdmin 4 are not closable, so it will not
>>>>>>>>> go with the flow.
>>>>>>>>>
>>>>>>>>
>>>>>>>> I meant to do it globally.
>>>>>>>>
>>>>>>>> Should I create the separate case for this?
>>>>>>>
>>>>>>
>>>>>> No, I don't think there's any need for that.
>>>>>>
>>>>>> Does it seem like it would solve the problem appropriately?
>>>>>>
>>>>>>
>>>>> It would lead us to more complexity
>>>>> 1. How can we keep track of the closed error messages for multiple
>>>>> fields?
>>>>>
>>>>
>>>> Do we need to?
>>>>
>>>>
>>>>> 2. We have validated backbone model on focus out/change, so we need to
>>>>> change the basic error model.
>>>>>
>>>>
>>>> I'm not sure why. Can't we just have an X button on the error panel
>>>> that will hide it? If another error occurs (e.g. because the user changes
>>>> focus), just re-display it.
>>>>
>>>>
>>> This means, if the error message is displayed for the field 1 and after
>>> closing if we go ahead without filling up the valid data, on the focus out;
>>> the same error message will be shown.
>>>
>>
>> Yes.
>>
>>
>>>
>>> I was thinking; if we have closed the error message for the field 1,
>>> then it will not display any kind of message for that particular field. So,
>>> I have mentioned about the complexity.
>>>
>>
>> I'm not convinced we need that level of complexity.
>>
>> Can you whip up a PoC so we can see how it behaves?
>>
>> Please find the attached patch.
This patch includes:
- The fix for this RM
- Close button for the error message for the User management module
- Close button for other node modules like server , schema etc....
Thanks,
Khushboo
> Sure.
>
>>
>>
>
>>>>> I have attached the patch for the RM #2859.
>>>>>
>>>>> Thanks,
>>>>> Khushboo
>>>>>
>>>>> --
>>>>>> Dave Page
>>>>>> Blog: http://pgsnake.blogspot.com
>>>>>> Twitter: @pgsnake
>>>>>>
>>>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>>>> The Enterprise PostgreSQL Company
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Dave Page
>>>> Blog: http://pgsnake.blogspot.com
>>>> Twitter: @pgsnake
>>>>
>>>> EnterpriseDB UK: http://www.enterprisedb.com
>>>> The Enterprise PostgreSQL Company
>>>>
>>>
>>>
>>
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>
>
diff --git a/web/pgadmin/browser/static/js/node.js b/web/pgadmin/browser/static/js/node.js
index a9c2b18..5f06ee2 100644
--- a/web/pgadmin/browser/static/js/node.js
+++ b/web/pgadmin/browser/static/js/node.js
@@ -265,10 +265,16 @@ define(
<i class="fa fa-exclamation-triangle" aria-hidden="true"></i>\
</div>\
<div class="alert-text">' + msg + '</div>\
+ <div class="close-error-bar">\
+ <a class="close-error">x</a>\
+ </div>\
</div>\
</div>';
if(!_.isUndefined(that.statusBar)) {
that.statusBar.html(alertMessage).css("visibility", "visible");
+ that.statusBar.find(".close-error-bar").bind("click", function(e) {
+ this.empty().css("visibility", "hidden");
+ }.bind(that.statusBar));
}
callback(true);
diff --git a/web/pgadmin/static/css/bootstrap.overrides.css b/web/pgadmin/static/css/bootstrap.overrides.css
index b894021..b0c531a 100755
--- a/web/pgadmin/static/css/bootstrap.overrides.css
+++ b/web/pgadmin/static/css/bootstrap.overrides.css
@@ -1176,6 +1176,16 @@ form[name="change_password_form"] .help-block {
overflow: hidden;
}
+.close-error-bar {
+ background: #d0021b;
+ padding: 5px;
+}
+
+.close-error-bar a {
+ color: #FFFFFF;
+ cursor: pointer;
+}
+
.user_management .search_users form {
margin: 0;
}
diff --git a/web/pgadmin/static/scss/_alert.scss b/web/pgadmin/static/scss/_alert.scss
index 3f860b8..441c40f 100644
--- a/web/pgadmin/static/scss/_alert.scss
+++ b/web/pgadmin/static/scss/_alert.scss
@@ -104,8 +104,6 @@
.alert-text {
flex-grow: 1;
border: 1px solid $color-red-2;
- border-top-right-radius: 4px;
- border-bottom-right-radius: 4px;
padding: 7px 12px 6px 10px;
border-left: none;
}
diff --git a/web/pgadmin/tools/user_management/static/js/user_management.js b/web/pgadmin/tools/user_management/static/js/user_management.js
index ffdf8b2..f5a5c69 100644
--- a/web/pgadmin/tools/user_management/static/js/user_management.js
+++ b/web/pgadmin/tools/user_management/static/js/user_management.js
@@ -392,8 +392,8 @@ define([
prepare: function() {
var self = this,
footerTpl = _.template([
- '<div class="pg-prop-footer">',
- '<div class="pg-prop-status-bar" style="visibility:hidden">',
+ '<div class="pg-prop-footer" style="visibility:hidden;">',
+ '<div class="pg-prop-status-bar">',
'<div class="media error-in-footer bg-red-1 border-red-2 font-red-3 text-14">',
'<div class="media-body media-middle">',
'<div class="alert-icon error-icon">',
@@ -401,12 +401,12 @@ define([
'</div>',
'<div class="alert-text">',
'</div>',
+ '<div class="close-error-bar"><a class="close-error">x</a></div>',
'</div>',
'</div>',
'</div>',
'</div>'].join("\n")),
- $footer = $(footerTpl()),
- $statusBar = $footer.find('.pg-prop-status-bar'),
+ $statusBar = $(footerTpl()),
UserRow = Backgrid.Row.extend({
userInvalidColor: "lightYellow",
@@ -558,7 +558,7 @@ define([
this.$content = $("<div class='user_management object subnode'></div>").append(
headerTpl(data)).append($gridBody
- ).append($footer);
+ ).append($statusBar);
$(this.elements.body.childNodes[0]).addClass(
'alertify_tools_dialog_backgrid_properties');
@@ -571,6 +571,11 @@ define([
userCollection.fetch();
+ this.$content.find('.close-error').click(function(e) {
+ $statusBar.find('.alert-text').empty();
+ $statusBar.css("visibility", "hidden");
+ });
+
this.$content.find('button.add').first().click(function(e) {
e.preventDefault();
var canAddRow = true;