Matthias Mullie has uploaded a new change for review.
https://gerrit.wikimedia.org/r/203821
Change subject: Make newTopic use _flowBoardComponentRefreshTopic
......................................................................
Make newTopic use _flowBoardComponentRefreshTopic
Now using _flowBoardComponentRefreshTopic, which fetches render
data from read API & renders the topic. Also removes some
specific rendering code.
Flip side: it needed another hack.
Bug: T95773
Change-Id: I3c349543b526fe3afc515fe13060322b2f5bee94
---
M modules/engine/components/board/base/flow-board-api-events.js
1 file changed, 7 insertions(+), 16 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Flow
refs/changes/21/203821/1
diff --git a/modules/engine/components/board/base/flow-board-api-events.js
b/modules/engine/components/board/base/flow-board-api-events.js
index a07f691..b465352 100644
--- a/modules/engine/components/board/base/flow-board-api-events.js
+++ b/modules/engine/components/board/base/flow-board-api-events.js
@@ -483,10 +483,10 @@
* @returns {$.Promise}
*/
FlowBoardComponentApiEventsMixin.UI.events.apiHandlers.newTopic =
function ( info, data, jqxhr ) {
- var result, fragment,
- schemaName = $( this ).data( 'flow-eventlog-schema' ),
+ var schemaName = $( this ).data( 'flow-eventlog-schema' ),
funnelId = $( this ).data( 'flow-eventlog-funnel-id' ),
- flowBoard = mw.flow.getPrototypeMethod( 'board',
'getInstanceByElement' )( $( this ) );
+ flowBoard = mw.flow.getPrototypeMethod( 'board',
'getInstanceByElement' )( $( this ) ),
+ $stub;
if ( info.status !== 'done' ) {
// Error will be displayed by default, nothing else to
wrap up
@@ -495,26 +495,17 @@
flowBoard.logEvent( schemaName, { action: 'save-success',
funnelId: funnelId } );
- result = data.flow['new-topic'].result.topiclist;
-
- // render only the new topic
- result.roots = [result.roots[0]];
- fragment = mw.flow.TemplateEngine.processTemplateGetFragment(
'flow_topiclist_loop.partial', result );
-
flowBoard.emitWithReturn( 'cancelForm', $( this ).closest(
'form' ) );
-
- // Everything must be reset before re-initializing
- // @todo un-hardcode
- flowBoard.reinitializeContainer(
- flowBoard.$container.find( '.flow-topics' ).prepend(
fragment )
- );
// remove focus - title input field may still have focus
// (submitted via enter key), which it needs to lose:
// the form will only re-activate if re-focused
document.activeElement.blur();
- return $.Deferred().resolve().promise();
+ // _flowBoardComponentRefreshTopic relies on finding a
.flow-topic node
+ // to replace, so let's pretend to have one here!
+ $stub = $( '<div class="flow-topic"><div></div></div>'
).prependTo( flowBoard.$container.find( '.flow-topics' ) );
+ return _flowBoardComponentRefreshTopic( $stub.find( 'div' ),
data.flow['new-topic'].committed.topiclist['topic-id'] );
};
/**
--
To view, visit https://gerrit.wikimedia.org/r/203821
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I3c349543b526fe3afc515fe13060322b2f5bee94
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Flow
Gerrit-Branch: master
Gerrit-Owner: Matthias Mullie <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits