Page MenuHomePhabricator

Wikimania Program Submission Form
Closed, ResolvedPublic4 Estimated Story Points

Description

The plan is to open program submissions for the specific spaces in mid-April. We want to reuse the form that has been used, for example, at the Glam Conference Tel Aviv and at Wikimania 2017 in Montreal.

At our end, we will however have to adapt it, as we are going to have a set of spaces to which the submission should go. Ideally, we would have one central page, linking to all the different spaces, at which there are specific submission forms. The submission forms at each space create a submission categorized accordingly.

Event Timeline

Sebastian_Berlin-WMSE set the point value for this task to 4.

I'll look into how the input boxes work. Are the pages mentioned in the description on the wiki already?

Hi @Sebastian_Berlin-WMSE; @Eric_Luth_WMSE has asked me to describe in greater detail what this task means...

For the open call for submissions this year we will NOT have one, single, submission form. We will have one-per "space". It will work the same way as in the past - just like here https://meta.wikimedia.org/w/index.php?title=GLAMTLV2018/Program/Submit&oldid=17844691

  • Each 'space' (e.g. for GLAM, for education, for diversity, for languages...) will have its own "homepage" on the wiki (e.g. [[2019:GLAM]]. This will have all the information about their plans, contact details etc. A specific subsection of each of these pages we would like the "make a submission" box - as seen in the link above.
  • When a user inserts a title, and presses the blue button, it takes them to a sub-page of that space's homepage (e.g. [[2019:GLAM/My cool idea]]). The user will be presented with wikitext instructions for how to fill in their proposal. Like this: https://meta.wikimedia.org/w/index.php?action=edit&preload=Template%3AGLAMTLV2018+submission+form&title=GLAMTLV2018%2FSubmissions%2TestTestTest&create=Add+a+submission
  • The default requested will be fairly common. It should request things like the proposed title, the contact name/username, the format (presentation, panel, workshop, discussion), a description of what will happen, and an explanation of the link to the conference theme.
  • Each Space will potentially have different options/information they wish to request from a proposal, so each space's leaders needs to be able to modify their submission form independently (withouth interfering with each other).
  • Thus, we need a generic template form (like the test one above), which I can then modify, and when ready, I can copy it out to as many Spaces as needed - and from that point each Space's leaders can amend the generic form for their specific needs, on their specific page.
  • All the submissions made in each Space should automatically be categorised according to their Space. (e.g. category:2019 GLAM submissions") and all of those categories will be sub-categories of category:2019 submissions. This is so we can find all the submissions, grouped.
  • Separately, I will also need to have a submission form for Posters, but this uses the exact same code/submission form, it will behave as a "space" in its own right.

Make sense?

Adding the actual text field and button was quite straight forward. You can see a test on https://wikimania.wikimedia.org/wiki/User:Sebastian_Berlin_(WMSE)/Submission. This can be copied to each space page. For the sake of modularity and ease of editing, I wrapped the controls in a template.

If I understand correctly, the preloaded page should have one general part, that is the same regardless of space, followed by an optional, space specific part. This should be doable by making a template for the general part that is transcluded in the space specific templates. These in turn can then be substituted on the preload page.

I think this could be a good place to use FormWizard. If you don't mind I could try to make a quick example tomorrow.

I think this could be a good place to use FormWizard. If you don't mind I could try to make a quick example tomorrow.

I have never seen that, and I don't know what it can do, but if you think it matches the needs described above - then be my guest! Anything that improves usability and consistency (and the ability of the different 'leaders' to personalise their requirements, is good. Please work with/contact @Sebastian_Berlin-WMSE to ensure that you're not duplicating/wasting efforts.

@Sebastian_Berlin-WMSE @Wittylama I made a quick example on Wikidata, here: https://www.wikidata.org/wiki/User:Jon_Harald_S%C3%B8by_(WMNO)/Wikimania_test
(I made it on Wikidata because they already have the FormWizard gadget set up in the correct way – doing that on the Wikimania wiki before we decide to use it would be a waste of time.)

The gadget has a multitude of configuration options, which could be changed for each space as needed.

looks very user friendly on the user-side.

  • How hard is it to set this tool up on the Wikimania wiki?
  • How hard is it to adjust the text that appears in the form (for the leaders of the spaces to adjust to their needs)?
  • How hard is it to set this tool up on the Wikimania wiki?

Basically just copy over the gadget files and make some local changes, quite simple.

  • How hard is it to adjust the text that appears in the form (for the leaders of the spaces to adjust to their needs)?

I'd say medium difficulty. The syntax for the config is JavaScript-based, and it's not super-intuitive what should be called what, but I could help people set that up.

One issue is that it might not work for everyone – ironically it doesn't work on my main volunteer account, at least not on Meta, for unknown reason. I'm the only person known to have this specific problem, lol. But we can have a backup link using preload like what InputBox from Sebastian's example produces just in case someone else has similar problems.

That certainly doesn't look user-friendly for the person setting up the form...
But are you (or @Sebastian_Berlin-WMSE ) able to bring this across today(?)

when it publishes, can the resulting page be pre-set with a relevant template (something like a 'this is a submission for wikimania - GLAM space') and associated category?

can each space modify their own separately? @Sebastian_Berlin-WMSE above described how the traditional form can be wrapped in two templates - one for the specific space, and one that's general purposes (which would allow me to update the general one if required).

Sorry if this is a lot of questions - I'm trying to ensure that no one's time or work is wasted. If you two can work together on this, and that would be effecient and effective, that would be great.

While I like the added functionality, like dropdown menus for choosing between fixed options, the config looks a bit complex; I don't know who will be editing the forms for the different spaces, but even as someone who is familiar with the JSON-format, the configs for FormWizard look fairly complex.

I'm also imagining that there will be cases of people wanting to change things after creating the page. It sounds like FormWizard can add sections, but not editing existing ones. In that case, you'd have different procedures for adding and editing, which may be confusing.

One issue is that it might not work for everyone – ironically it doesn't work on my main volunteer account, at least not on Meta, for unknown reason. I'm the only person known to have this specific problem, lol. But we can have a backup link using preload like what InputBox from Sebastian's example produces just in case someone else has similar problems.

If it's unstable enough that we need to implement the other solution too (as a backup) maybe it's best to just use that one?

With @Sebastian_Berlin-WMSE 's comment here, I'm thinking I have to agree with him...
While I vastly prefer the improved user interface of the formWizard, I think we should also not introduce more technical complexity for the 'leaders' . At least the preload system is something that Wikimedians are familiar with even if it is ugly. It is less ugly than it used to be, i see, because the test module you created loads directly into Visual Editor (I'd not seen that before, which is a nice touch).

With regards to your earlier question about a 'general' and 'space-specific' information, built as substitution-templates. I don't think we need to make the dual-layer system. Just make a single template, which we can put the general information into, but the space-leaders can adjust theirs as necessary. Things like 'title', 'name/username', 'description', 'session type', 'relationship to the SDGs' are standard + a 'this is a submission' template at the top, + categorisation at the bottom.

Does that make sense?

It is less ugly than it used to be, i see, because the test module you created loads directly into Visual Editor (I'd not seen that before, which is a nice touch).

Yes, there is a parameter to use Visual Editor as default. You mentioned wikitext earlier, so I thought you wanted that.

I think I get what you're talking about with the templates and preload pages. I'll try to set that up and get back to you.

That's fine with me. There's an effort going to rewrite FormWizard as a MediaWiki extension (see FormWizard), so if that's finished by then it could be considered for next Wikimania.

I've set up 2019:GLAM with the submission controls. Adding a submission creates a subpage to 2019:GLAM, preloading 2019:GLAM/Submission Form. The preload page was created by substituting Template:Submission Form. This means that this template should be finalized before creating the space specific preload pages, or they need to be updated manually.

Have a look if this is what you want it to look like and let me know if there are any technical bits you want to change. I have noticed one issue with the title including the superpage which I'll look into.

requested small adjustments to the Template:Submission Form:

  • I think you can force no table of contents
  • each 'space's submission form should categorise the submission to that space specifically e.g. "glam submissions". So the leaders of that space can find theirs, and only theirs.
  • The top of each submission should also include some Wikimania equivalent of this template https://meta.wikimedia.org/wiki/Template:GLAMTLV2018_open_submission
  • Each subheading should have some visible explanatory text. e.g. the 'type' should give a list of the allowed options. the 'relationship to theme' should have a short sentence that links to the [[theme]] page...

I'm not sure if these count as "technical bits" in the sense you meant :-)

I would like if you could also tell me the instructions for what to copy or what new pages to create in order to put the button on each page, and the locally-adjustable version of the prefill template behind it.

I have greatly updated the generic submission form with many of the elements I mentioned in my comment on Friday: https://wikimania.wikimedia.org/wiki/Template:Submission_Form

Please note the extensive hidden instructions in the submission form.

I believe the things that are remaining, which I require technical advice/assistance for, are:

  • What is needed in order to make a different form, with matching 'button' for each 'space' (e.g. GLAM, Health...)? I need a workflow for setting this up.
  • Both the template at the top, and the category at the bottom, should specify WHICH space this proposal is for.

Once these elements are solved, then I can set up the button and submission form for each Space, and then tell all the Leaders to adapt their Space's submission form to their specific needs.

I have updated your test page to see if the preload works, and it seems to look pretty good: https://wikimania.wikimedia.org/wiki/User:Sebastian_Berlin_(WMSE)/Submission

If there's no wikitext preload button anyone is working on, it's pretty easy to get one in, I asked Liam about it but he's not sure if anyone's doing it yet - but if no one is, it's shouldn't be an issue for me to make one in a few days (or hours?)

  • What is needed in order to make a different form, with matching 'button' for each 'space' (e.g. GLAM, Health...)? I need a workflow for setting this up.

For each space you need the submission form as a subpage, named "Submission Form" (e.g. "2019:GLAM/Submission Form"). This can be created by substituting "Template:Submission Form" and modifying to fit that particular space. Then you need to transclude "Template:Submission Controls" on the space's main page (e.g. "2019:GLAM"). This will add the textbox and the button for making a submission, which will be added as a subpage to the space page. (e.g. "2019:GLAM/Neat Idea").

  • Both the template at the top, and the category at the bottom, should specify WHICH space this proposal is for.

I think this should be fairly straight forward once the page name magic words behaves as expected (such as the title being incorrect that I mentioned earlier). I haven't figured out why it's doing this.

In T220180#5110070, @Ankit-Maity wrote:

If there's no wikitext preload button anyone is working on, it's pretty easy to get one in, I asked Liam about it but he's not sure if anyone's doing it yet - but if no one is, it's shouldn't be an issue for me to make one in a few days (or hours?)

I'm not sure what you're referring to. What is a "wikitext preload button"?

I'm not sure what you're referring to. What is a "wikitext preload button"?

I believe he means to create a second button that would load the form in code-editor rather than visual editor, as an option for people who don't like VE. The trick would be to make it not look cluttered. Alternatively, to be able click on the single button that loads VE, but once that page is loaded to have the option to 'swap' to code.

You could add another set of text field and button, though I'm afraid that may cause confusion. There's is a "Switch editor" button in the toolbar, to the top right (looks like a pen).

I have now subst'ed the button and the form to the Poster session page, and then created a test page within it:

https://wikimania.wikimedia.org/wiki/2019:Poster_session/test

From that test I identify a couple of bugs that need fixing before we can go live:

  • the "insert Signature button" in the Visual Editor toobar (under the "insert" dropdown menu) is unavailable. This makes it impossible to sign a submission without swapping to the code editor. Equally, typing ~~~~ doesn't convert either. Is it possible to re-enable the signature button/four-tilde conversion?
  • there is no way to get "back" from the submission page to the parent page (in this case [[2019:Poster session]]. Whenever I've seen sub-pages before, there's a small-font "< [[<parent article>]]" link right underneath the pagename. Can that be added to the wiki? Or, somehow added to the purple box header template?
  • The category is [[Category: 2019:Submissions]], it should be specific to the Space. In this case [[Category: 2019:Submissions/Poster session]] (or equivalent).

Can these be achieved?

  • the "insert Signature button" in the Visual Editor toobar (under the "insert" dropdown menu) is unavailable. This makes it impossible to sign a submission without swapping to the code editor. Equally, typing ~~~~ doesn't convert either. Is it possible to re-enable the signature button/four-tilde conversion?

This is apparently default for namespaces "where signatures should not be inserted" (ref). I created a task for this: T221062.

  • there is no way to get "back" from the submission page to the parent page (in this case [[2019:Poster session]]. Whenever I've seen sub-pages before, there's a small-font "< [[<parent article>]]" link right underneath the pagename. Can that be added to the wiki? Or, somehow added to the purple box header template?

I believe that will be fixed by T220950. Since the page isn't technically a subpage currently, there's no superpage to link to.

  • The category is [[Category: 2019:Submissions]], it should be specific to the Space. In this case [[Category: 2019:Submissions/Poster session]] (or equivalent).

Previously you talked about having space categories (e.g. "2019:Poster session submissions") that themselves would be categorized as "2019:Submissions" or at least that's how I read it. Which one should it be?

I confirm that the signature issue is resolve! It now works in VE by automatically converting ~~~~ AND also the button for 'insert signature' is enabled. Thank you for such quick action @Sebastian_Berlin-WMSE :-)

Regarding the categories for the submissions: yes, you're right. I was confusing myself by describing a Category hierarchy as a subpage! Each submission should be categorised to its appropriate space. GLAM submissions; Education submissions; Poster session submissions etc.... All of THOSE categories should be categorised under Category:2019:Submissions

Make sense?

I confirm that the signature issue is resolve! It now works in VE by automatically converting ~~~~ AND also the button for 'insert signature' is enabled. Thank you for such quick action @Sebastian_Berlin-WMSE :-)

Thank @Urbanecm, who did all the work.

Regarding the categories for the submissions: yes, you're right. I was confusing myself by describing a Category hierarchy as a subpage! Each submission should be categorised to its appropriate space. GLAM submissions; Education submissions; Poster session submissions etc.... All of THOSE categories should be categorised under Category:2019:Submissions

Make sense?

Yes, that makes sense. I'll set that up once T220950 is done, since that should allow auto generating the category names.

FTR, T220950 will be hopefully resolved tomorrow. There is default section in the configuration, which autoenables subpages for extra namespaces, because they usually wants them. Because wikimaniawiki has a lot of extra namespaces, the configuration doesn't know 2019 is an extra namespaces and uses the "default default", which is subpages disabled. I'm not sure if my attempt to modify the extra namespaces detection logic isn't going to break something, so I'm waiting on review.

@Urbanecm I'm sorry if the "2019" namespace is confusing the system... this was the method that @Eric_Luth_WMSE and I came up with to make the wiki "future proof" for being able to handle future wikimanias. Previously every wikimania gets its own wiki, which is an unnecessary duplication in the opinion of many, but which does create the problem of how to deal with previous wikimania's content without merely overwriting it. We assumed a namespace which indicates the year is the best way to do that. e.g. 2019:Schedule, 2020:Schedule, 2021:Schedule...
If however there's a better solution that would mean some other bugs would become redundant and save time yourself and others - please say so. We are not ideologically-wedded to the 2019 namespace, it's just a solution to a problem we know will arise in the future. :-)

There's absolutely no problem with the 2019 namespace itself. No one just previously expected that many extra namespaces :). That just caused a little discussion about the most correct technical implementation. Just a fact that most correct implementation was discussed doesn't necessarily mean something's wrong with "the input data", just that multiple people has multiple ideas about adding the subpages. For the record here, we agreed which way to go with. Because it's Thursday evening, and there are no deployment windows on Friday and weekend, this _might_ be deployed next week. I'll try to schedule it for the evening window, we'll see what happens.

You could add another set of text field and button, though I'm afraid that may cause confusion. There's is a "Switch editor" button in the toolbar, to the top right (looks like a pen).

When you click on this switch icon it takes you to the code editor, however, it also strips all the prefilled content. Swapping back to VE does not restore it.

For example,
-go here and scroll down to the "make a submission" subheading: https://wikimania.wikimedia.org/wiki/2019:Draft/Community_Growth

  • type some dummy text "testtesttest" and click begin.
  • this will preload the form, in VE, with all the content and hidden instructions.
  • click the VE/Code-editor switch 'pencil' icon in the top right.
  • it will load the code-editor but with a blank/empty text box.
  • clicking to swap back again to VE will not restore the content.

[Ping @Ankit-Maity, the person who was particularly interested in this]

You could add another set of text field and button, though I'm afraid that may cause confusion. There's is a "Switch editor" button in the toolbar, to the top right (looks like a pen).

When you click on this switch icon it takes you to the code editor, however, it also strips all the prefilled content. Swapping back to VE does not restore it.

For example,
-go here and scroll down to the "make a submission" subheading: https://wikimania.wikimedia.org/wiki/2019:Draft/Community_Growth

  • type some dummy text "testtesttest" and click begin.
  • this will preload the form, in VE, with all the content and hidden instructions.
  • click the VE/Code-editor switch 'pencil' icon in the top right.
  • it will load the code-editor but with a blank/empty text box.
  • clicking to swap back again to VE will not restore the content.

[Ping @Ankit-Maity, the person who was particularly interested in this]

Given that the current implementation is using inputbox, all that needs to be done for a wikicode-editor button is to flip the useve parameter. As Wittylama said, VE doesn't preserve the preload (or changed text, common complaint) and is generally buggy, is why I was suggesting an alternative - the implementation of which will just require another button (as it appears on the Poster session page now).

The poster session page - for ease of reference - is this: https://wikimania.wikimedia.org/wiki/2019:Poster_session

@Ankit-Maity, with the exception of the Poster session [in order that I could make its default text say "proposed poster title" rather than "proposed session title"] ALL of the other Spaces use the code {{Submission Controls}} in order to invoke that box. https://wikimania.wikimedia.org/wiki/Template:Submission_Controls

I appreciate what you've done with that Poster session extra box as a demonstration (how, by the way?? I can't see what's different in the code!). But I don't like having two separate boxes displayed to the used that do the same thing. It makes it look like the user has to do two separate things in order to make a submission.

Could you adjust the {{Submission Controls}} template, in oder to have one single freetext field, but two buttons - one saying 'visual form' and the other saying 'code editor'? That would make it a bit easier to understand that there's two options but they will achieve the same eventual outcome.

The poster session page - for ease of reference - is this: https://wikimania.wikimedia.org/wiki/2019:Poster_session

@Ankit-Maity, with the exception of the Poster session [in order that I could make its default text say "proposed poster title" rather than "proposed session title"] ALL of the other Spaces use the code {{Submission Controls}} in order to invoke that box. https://wikimania.wikimedia.org/wiki/Template:Submission_Controls

I appreciate what you've done with that Poster session extra box as a demonstration (how, by the way?? I can't see what's different in the code!). But I don't like having two separate boxes displayed to the used that do the same thing. It makes it look like the user has to do two separate things in order to make a submission.

Could you adjust the {{Submission Controls}} template, in oder to have one single freetext field, but two buttons - one saying 'visual form' and the other saying 'code editor'? That would make it a bit easier to understand that there's two options but they will achieve the same eventual outcome.

Unfortunately, each inputbox is a separate entity, multiple buttons are desirable but the module is not built in a way to switch between parameters (other than the listed choices). We can probably make it more compact by removing the line break but that's where our leeway ends.

(+on a side note: I added a default edit summary since the template didn't provide for one)

I've now adjusted the submission controls to have two boxes - one for VE, one for code. This has propagated to all the Spaces. Not the prettiest, but it gets the job done! Thank you all. https://wikimania.wikimedia.org/wiki/Template:Submission_Controls