-
Notifications
You must be signed in to change notification settings - Fork 183
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bug 1549621 - Redevelop Enter Bug page #2132
Conversation
Thanks Kohei! I am going to start looking at this today. |
Thanks! I’ll try to solve test failures today but it should work with a BMO database dump. |
Yeah the test failures were to be expected as the tests heavily rely on the layout of the old enter bug form. Most of the changes will be in |
Finally, all the tests have passed! |
I just wanted to stop by and say this is great work and it looks fantastic. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also found the following items of interest:
- Do we need the 'File a New Bug' header at all? Seems redundant. I would say maybe 'File New Bug in " but the product name is already displayed below the header. Not sure.
- Save changes button needs to be more to the left in line with the other fields
- Collapsed modals not remembered for each page load (do we need?)
- Maybe a quick link button to the comment field for advanced view? (Similar to Top button at bottom?)
- Use Guided Form as whitespace in the link which shows up as blue line outside of the button box
- When filing a new bug with description and then filing another bug (separate product) the old description is enterered again
- Clicking Etiquette above description opens a new tab where clicking on the writing guidelines loads in the same tab. Should be consistent.
- Substitute 'All' for 'All Platforms'
- Regressions field should be hidden from new bugs similar to current form
- When adding
&component=General
or other valid component name to the URL, the component is not automatically selected. - Also when passing in
&component=General
and maybe others, switching to Legacy form ignores everything exceptproduct=Firefox
andformat=legacy
. - Some fields are not auto-filled such as summary, component, etc. when using a bookmarked template from the enter bug form.
I will also be looking at the JS changes now in more detail. The above comments are from using the UI with some looks at the templates, etc. |
Hmm, the bookmarkable template button seems working for me. Not sure why it doesn’t work because it’s also submitting form data to I can sign in to https://bugzilla-dev.allizom.org now 👍🏼 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After some recent discussion, we decided have a user setting for the old form is the wrong option as we want to remove the ability to use the old form completely. By having a user setting, users will be able to still set their preferences back to the old form if desired. This would be best as a config parameter instead that just picks one form or the other with no option for the user to change. I can do this change myself after this lands unless you want to make it. I am not fussed either way.
I am working on today verifying the issue with bookmarked templates not working with the latest changes pushed to bugzilla-dev. If it turns out to be a non-issue for me then this should be ready to go.
I can do it now 🙂 There is no User Interface parameter section so I’ll simply add it to Advanced. |
Param added. Wasn’t sure if there’s a standard way to add a new one. If it doesn’t exist in the database, the code dies here and the value cannot be changed through the admin panel. I just added it manually and rebooted the servers. INSERT INTO params (name, value) VALUES ('use_modal_create', '1'); |
That works but the way I designed it was that when you run ./checksetup.pl, it will create any missing params that have been added. I will need to do that as soon as the new code hits the production servers which is not a problem. |
I am still seeing the issue with fields not being pre-populated based on query parameters passed in. Try the following simple tests. (assignee and qa contact have [email protected]) New form: (assignee and qa contact are empty) Does this still work for you? |
Problem solved 🙇🏼 Assignee and QA Contact are the only fields with |
# use the placeholder bug | ||
bug = default; | ||
|
||
# reset variables to avoid unexpected inheritance | ||
default = undef; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the fix for assignee and qa_contact. Those and other user fields now pre-fill properly. Other fields form my earlier comment still do not fill but I think I see the issue. For the security groups being not being automatically checked if for example if we pass groups=core-security-release&groups=mozilla-employee-confidential
it is related to bug_modal/create.html.tmpl setting default = undef in the top of this file. Then bug/create/security.html.tmpl is looking for default.groups.contains(group.name)
to see if the checkbox should be checked which of course is empty. This same file on the legacy form does work properly. I would imagine that any form fields in the new modal form that look for default.* would not see any values because of the undef. Converting to bug.groups.contains(group.name)
will work for modal form but will break the checkboxes for the legacy form. A hack would be to not undef default and allow using either bug.* or default.* but maybe you have a better idea?
This might also fix the other fields that are not being pre-filled:
- status whiteboard
- qa whiteboard (cf_qa_whiteboard)
- user story
- crash signature
- time tracking original estimate and hours left (deadline is pre-filled correctly)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I realized that the default
variable conflicted with the default
argument of bug_modal/field.html.tmpl
so I decided to reset it. It should be called default_bug
but I wasn’t sure about the side effect. Checking how to work around default.groups
and solve the rest of the prefill issues...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
QA whiteboard (cf_qa_whiteboard
) not being prefilled is an administration issue. Go to /editfields.cgi?action=edit&name=cf_qa_whiteboard
, tick “Can be set on bug creation”, submit, and I see the field prefilled. It’s fillered here. The old form didn’t have the field, actually.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Status Whiteboard: Fixed!
- QA whiteboard: See above. Most of the custom fields, including Rank and flags are actually not prefilled due to the same admin issue. Open
/editfields.cgi
to see that almost all fields come with0
on the “Editable on Bug Creation“ column. - User Story: Fixed!
- Crash Signature: It was prefilled but wasn’t visible at first glance. The field now behaves like the old form: it shows a textbox with a value prefilled or hides the textbox if no prefill value is set.
- Time Tracking: Fixed! I have removed the Hours Worked and Hours Left fields which seem unnecessary and aren’t on the old form.
So we can keep using the `default` var defined in `enter_bug.cgi`
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. r=dkl
Bug 1549621 - Redevelop Enter Bug page
I’m so sorry to take this long 🙇🏻 🙇🏻 🙇🏻 Here’s the new, modal version of the Enter Bug page! For now, I’ll keep the legacy form, meaning some hooks/templates are moved to new files so they can be included in both the modal and legacy forms. Otherwise, the change could be simpler. I’ve added the Use Legacy Form button at the top of the modal form; we could remove it once satisfied with the new form.
As discussed before, searchable component selector, mobile optimization, multiple attachment support, and changing the product will be done in the following phases. I’ll start working on these things right away on top of this work.
Screenshots