Age | Commit message (Collapse) | Author | Files | Lines |
|
Active issue assignees will now have a button on issues to explicitly
'signoff' their assignment - that is, to affirmatively declare it done.
The use of this new action will allow assignees to signoff without
needing to close the issue as well. This is useful for multiple
assigned users collaborating on an issue.
Note that if an assignee chooses to close a ticket directly, they are
still automatically signed-off, as before.
To aid this feature, the low-level definition of an 'assigned user' is
updated to exclude users occupying an assignment slot, but which have
already signed-off.
Since the icon representing this action is the same as for closing a
ticket, the buttons enabling these two actions are now color-coded
wherever they appear.
Signed-off-by: Malfurious <m@lfurio.us>
|
|
For consistency reasons, I've decided to keep the issue UI open even
after just closing an issue. That is assuming the user used the modal
window to perform the close. If an issue is closed via the quick control
buttons in the pad view page, no window is spawned since none was open
to begin with.
Other edge-cases that would interrupt the return of the issue modal have
also been removed. For example, an informational message is no longer
produced when an attachment is successfully uploaded, and users are no
longer notified that an action resulted in an issue being closed.
Signed-off-by: Malfurious <m@lfurio.us>
|
|
This patch will cause the interface for new issues to be immediately
visible after page load on opening a new issue, as it is likely the user
may wish to perform some action on it.
This patch also fixes a bug which has previously prevented this from
being the default behavior. The pad view's script imports have been
reordered such that all issue state manipulation is done and pushed to
the DB before any of the pad view page content is rendered. This
prevents situations where the page would often load in a broken state
(the reason for the previous 'location()' call - to force a reload), and
enables us to use the new issue as the autoModal window as this patch
does.
Signed-off-by: Malfurious <m@lfurio.us>
|
|
The list of assignees, the owner (opener), and quick controls for
advancing or closing an issue are now available in the issue listing for
pad stages (or the closed issue list, which is missing the new control
buttons).
If using the quick control buttons to manipulate an issue, the issue
modal is not called-up on the page reload.
Signed-off-by: Malfurious <m@lfurio.us>
|
|
Some PHP update has changed the behavior of referencing a missing key in
an array, so the mechanism I was using to specify the default login page
tab was bugged (emitting errors) and did not allow to manually switch to
signup after the app is initialized.
To fix this, simply define the missing values to empty strings.
Signed-off-by: Malfurious <m@lfurio.us>
|
|
It is annoying to have to manually navigate back to the group page that
contains the pad you're currently viewing, since it involves more than a
single click to go up one level in the object hierarchy.
This patch adds the owner name to the display at the top of each pad, as
a hyperlink. If the owner is a group, following the link will take you
to the group page. If the owner is _your own_ user, following the link
will take you to the 'My Pads' page. Otherwise, it leads nowhere.
Signed-off-by: Malfurious <m@lfurio.us>
|
|
... instead of the fullsized image. This guarantees a square aspect
ratio, which is nice for the user interface.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
This is to make the user experience more uniform, but is in-part to
mitigate a bug.
Since the auto issue showing has been added, this will cause the newly
closed issue to try and come up after we advance it past the last stage.
Since we have just closed the issue, its modal is in a weird state.
This informational notice modal prevents that broken issue modal from
displaying.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
When submitting the iss-mesg-add form and reloading the page, this line
will inform the stdpage footer javascript to automatically show the
affected issue modal.
This is _really_ helpful when trying to make multiple POSTs to an issue,
as the user is not taken out of the issue modal between each POST,
requiring them to visually find it again in the list of open tickets.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
For the Scrott alpha, there is no way for assignees to signoff their
work. As a workaround, I am now just always signing off somebody when
they close an issue. This will slightly improve the user experience for
now, but I'm leaving the real fix for the beta.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
|
|
This view is routable from app/<pad_guid>/closed. It is a separate view
for displaying the closed issues of a pad. index.php as well as the pad
model code is also updated to support this view.
This view currently *does not* support paging. This will very likely be
added in the future.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
When closing issues, we were using a malformed format string. The 's'
from the '%s' was missing.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
The 'iss-mesg-add' form now handles when the 'assIssue' submission is
sent. This is the only submission of this form that looks at the
(usually hidden) 'assignee' dropdown field, which has been made a
required field however.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
Handler now includes logic for optionally advancing the issue through
the pipeline. If this happens, 'closeIssue' (for example) will not be
checked, as only one submission can be used.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
I was failing to assert user has modify permissions for the issue.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
The 'iss-mesg-add' form will now allow a mesg to be omitted, since it
will also be handling other events. These events are part of the same
form since the UI allows users to post a message and trigger these other
actions at the same time. We now only create a mesg object if a mesg is
given.
Note that an attachment requires a message. IE: any attachment is
ignored if no message is created.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
Submissions to the iss-mesg-add form are now handled by this function.
User must be logged in and permitted to post to the issue in question.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
Some form handlers use the current logged in user (user::getCurrent()),
however do so without asserting that we are _actually_ logged in. This
is probably due to that fact that index.php (usually) catches all page
requests that are logged out and diverts control before any other handler
can be invoked. But a few handlers sneak through the cracks.
In the future, the app will be better about supportting logged out
browsing, the alpha was not written with this in the forground.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
POSTs to the dm-issue-add form are handled by this new handler. Pad
data is passed via the form, we create the new issue in the pad's first
stage, crediting the current logged in user. New issue is unassigned.
I call `location()` at the bottom, since not doing so leaves the page in
a weird state. The reason being that most of the page rendering logic
operates off of the 'pageObj', which is instanciated and assigned prior
to the invocation of this handler. This is to be fleshed-out during the
v0.2-v0.3 development iteration.
Signed-off-by: Malf Furious <m@lfurio.us>
|
|
This logic instanciates an issue modal view for each issue to be
accessable from a pad view.
|
|
|
|
|
|
|
|
|
|
As a convenience, I'm adding a basic set of stages to new pads. These
stages are "To Do", "In Progress" ('Done' being closed issues). This
implements a very simple workflow for new pads.
|
|
|
|
Similar to objHeadCircle() but for displaying a bg img on page, rather
than as the actual background.
|
|
|
|
UI module to use when listing out groups and pads. These will link to
the group/pad page and display information about the object.
|
|
Now reloading current path after successful login, instead of
redirecting to app-root.
|
|
|
|
|
|
|
|
|
|
|
|
Setup to perform an iteration of development focused on a simpler
implementation and eliminating redundancy in design.
|
|
|
|
Created empty <div> for the group setting tab. Also added code to the
common model for initializing the $mod->group variable and setting a
flag marking what tabs to include in the setting modal (group tab in
this case). Added logic to the main setting modal view file for picking
up these flags and including appropriate additional content.
|
|
Some logic to initialize the current system object, its owner, and
members has been moved into the Common model since this code will be
relevant to other views and to support a new feature being added to
display additional tabs in the setting modal box.
|
|
The setting modal window will need to support showing unknown tabs at
the beginning of the tab list. These functions handle assigning specific
CSS classes to tab-panes ONLY if that tab will appear in the left-most
position in the modal's tab list.
|
|
In the Obj MVC, rename group in the model to obj. This will help with
referencing the active object from template views without knowing what
type of object it is.
|
|
|
|
Finish initializing the Obj MVC by writing an empty view/action for
groups.
|
|
This MVC will be used to browse scrott datastructures.
|
|
Added handler function to common model to create new use groups from the
modal view.
|
|
|